<?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>147603</bug_id>
          
          <creation_ts>2015-08-03 16:55:19 -0700</creation_ts>
          <short_desc>[INTL] Implement Intl.DateTimeFormat.prototype.resolvedOptions ()</short_desc>
          <delta_ts>2015-12-24 14:29:59 -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>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>90906</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Andy VanWagoner">andy</reporter>
          <assigned_to name="Andy VanWagoner">andy</assigned_to>
          <cc>achristensen</cc>
    
    <cc>ap</cc>
    
    <cc>benjamin</cc>
    
    <cc>buildbot</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>mrobinson</cc>
    
    <cc>msaboff</cc>
    
    <cc>ossy</cc>
    
    <cc>peavo</cc>
    
    <cc>rniwa</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>saam</cc>
    
    <cc>sukolsak</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1114443</commentid>
    <comment_count>0</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-08-03 16:55:19 -0700</bug_when>
    <thetext>Implement ECMA-402 2.0 12.3.5 Intl.DateTimeFormat.prototype.resolvedOptions ()
http://ecma-international.org/publications/standards/Ecma-402.htm

This function provides access to the locale and formatting options computed during initialization of the object.

The function returns a new object whose properties and attributes are set as if constructed by an object literal assigning to each of the following properties the value of the corresponding internal slot of this DateTimeFormat object (see 12.4): locale, calendar, numberingSystem, timeZone, hour12, weekday, era, year, month, day, hour, minute, second, and timeZoneName. Properties whose corresponding internal slots are not present are not assigned.

NOTE In this version of the ECMAScript 2015 Internationalization API, the timeZone property will be the name of the default time zone if no timeZone property was provided in the options object provided to the Intl.DateTimeFormat constructor. The previous version left the timeZone property undefined in this case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148611</commentid>
    <comment_count>1</comment_count>
      <attachid>267202</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-11 16:56:24 -0800</bug_when>
    <thetext>Created attachment 267202
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148612</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-11 16:58:09 -0800</bug_when>
    <thetext>Attachment 267202 did not pass style-queue:


ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:17:  #ifndef header guard has wrong style, please use: udatpg_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:20:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:21:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:152:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:182:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:209:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:210:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:208:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:211:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:245:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:247:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:244:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:248:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:272:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:273:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:271:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:274:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:301:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:302:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:300:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:303:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:331:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:332:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:333:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:330:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:334:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:357:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:359:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:372:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:374:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:390:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:392:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:405:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:407:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:431:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:432:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:442:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:443:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:459:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:460:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:471:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:472:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:501:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:502:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:503:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:500:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:504:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:538:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:537:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:540:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:556:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:569:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:583:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:582:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:584:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 65 in 11 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>1148722</commentid>
    <comment_count>3</comment_count>
      <attachid>267238</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-12 11:47:25 -0800</bug_when>
    <thetext>Created attachment 267238
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148723</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-12 11:49:20 -0800</bug_when>
    <thetext>Attachment 267238 did not pass style-queue:


ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:17:  #ifndef header guard has wrong style, please use: udatpg_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:20:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:21:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:152:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:182:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:209:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:210:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:208:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:211:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:245:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:247:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:244:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:248:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:272:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:273:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:271:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:274:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:301:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:302:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:300:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:303:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:331:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:332:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:333:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:330:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:334:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:357:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:359:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:372:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:374:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:390:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:392:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:405:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:407:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:431:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:432:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:442:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:443:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:459:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:460:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:471:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:472:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:501:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:502:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:503:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:500:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:504:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:538:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:537:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:540:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:556:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:569:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:583:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:582:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:584:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 65 in 11 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>1148823</commentid>
    <comment_count>5</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-13 11:18:17 -0800</bug_when>
    <thetext>Incorrectly defaults locale &quot;ar&quot; to numberingSystem &quot;latn&quot; in resolvedOptions, but will still end up formatting with &quot;arab&quot; numberingSystem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148825</commentid>
    <comment_count>6</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-13 11:31:24 -0800</bug_when>
    <thetext>ICU provides unumsys, which can be used to determine the default numbering system for a locale, and enumerate available numbering systems. However, it is only available in ICU 52+. 4.6.1 I think is the version for most headers included. What is the actual minimum version we need to interop with?

http://icu-project.org/apiref/icu4c/unumsys_8h.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149141</commentid>
    <comment_count>7</comment_count>
      <attachid>267326</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-14 16:13:22 -0800</bug_when>
    <thetext>Created attachment 267326
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149143</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-14 16:15:14 -0800</bug_when>
    <thetext>Attachment 267326 did not pass style-queue:


ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:8:  #ifndef header guard has wrong style, please use: unumsys_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:15:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:168:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:17:  #ifndef header guard has wrong style, please use: udatpg_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:20:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:21:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:152:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:182:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:209:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:210:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:208:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:211:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:245:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:247:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:244:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:248:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:272:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:273:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:271:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:274:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:301:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:302:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:300:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:303:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:331:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:332:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:333:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:330:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:334:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:357:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:359:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:372:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:374:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:390:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:392:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:405:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:407:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:431:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:432:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:442:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:443:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:459:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:460:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:471:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:472:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:501:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:502:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:503:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:500:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:504:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:538:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:537:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:540:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:556:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:569:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:583:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:582:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:584:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 68 in 15 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>1149153</commentid>
    <comment_count>9</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-14 17:02:33 -0800</bug_when>
    <thetext>The only failure that appears related is that the Windows build cannot find unicode/unumsys.h I assume that means that it is using ICU &lt;52.

I don&apos;t know how we go about linking to ICU on any platform. Does this mean that we simply cannot use unumsys?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149304</commentid>
    <comment_count>10</comment_count>
      <attachid>267326</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-12-15 09:08:30 -0800</bug_when>
    <thetext>Comment on attachment 267326
Patch

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

review- because of the lifetime mistake for the StringView named skeleton.

I’m concerned that there is not enough caching here. Looks like some of these operations will be really expensive.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:97
&gt; +String defaultTimeZone()

Can we do any caching here? The user can change the default time zone, but I am worried about doing this work every time this function is called.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:102
&gt; +    UErrorCode status(U_ZERO_ERROR);

We normally use &quot;=&quot; for lines like this, not the style that looks like a function call.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:103
&gt; +    int32_t bufferLength = ucal_getDefaultTimeZone(nullptr, 0, &amp;status);

I suggest using auto for the type here rather than explicitly stating the type.

Is ucal_getDefaultTimeZone implemented properly on the OS X and iOS platforms? I am not sure it is. There is no guarantee we can use ICU for everything on all platforms. Some functions of ICU are not implemented properly on all platforms it exists on.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:106
&gt; +        Vector&lt;UChar&gt; buffer(bufferLength);

This would be more efficient with inline capacity:

    Vector&lt;UChar, 16&gt; buffer(bufferLength);

That’s what Vector is designed for. Doing it that ways means no heap memory allocation at all in the normal case.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:109
&gt; +            return String(buffer.data(), bufferLength);

Is the time zone string guaranteed to be an ASCII or Latin-1 string? If it can be UTF-8 then this code is not quite right.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:122
&gt; +    const String timeZoneNameUpper = timeZoneName.upper();

Seems unfortunate to literally call upper just to compare time zones in a case folding way. We have functions that can do that comparison without allocating a string object.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:125
&gt; +        UErrorCode status(U_ZERO_ERROR);

We normally use &quot;=&quot; for lines like this, not the style that looks like a function call.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:134
&gt; +        String resultString(ianaTimeZone, ianaTimeZoneLength);

Since all we want to do here is compare two time zone strings, this should use StringView, not String, to avoid memory allocation.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:135
&gt; +        if (resultString.upper() != timeZoneNameUpper)

This should use equalIgnoringCase or equalIgnoringASCIICase.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:144
&gt; +        UBool isSystemID(FALSE);

We normally use &quot;=&quot; for lines like this, not the style that looks like a function call.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:148
&gt; +            Vector&lt;UChar&gt; buffer(ianaTimeZoneLength);

This would be more efficient with inline capacity:

    Vector&lt;UChar, 16&gt; buffer(ianaTimeZoneLength);

That’s what Vector is designed for. Doing it that ways means no heap memory allocation at all in the normal case.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:149
&gt; +            UBool isSystemID(FALSE);

Seems unusual to define another isSystemID instead of reusing the one we already have.

We normally use &quot;=&quot; for lines like this, not the style that looks like a function call.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:150
&gt; +            UErrorCode status(U_ZERO_ERROR);

Seems unusual to define another status instead of reusing the one we already have.

We normally use &quot;=&quot; for lines like this, not the style that looks like a function call.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:157
&gt; +            ASSERT(U_SUCCESS(status));
&gt; +            canonical = String(buffer.data(), canonicalLength);
&gt; +        } else {
&gt; +            ASSERT(U_SUCCESS(status));
&gt; +            canonical = String(buffer.data(), canonicalLength);
&gt; +        }

Is the time zone string guaranteed to be an ASCII or Latin-1 string? If it can be UTF-8 then this code is not quite right.

Can we refactor this so we share this code rather than repeating it?

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:179
&gt; +        while (const char* availableName = uenum_next(calendars, &amp;nameLength, &amp;status)) {

Not sure why we are using uenum_next here rather than uenum_unext above. It seems arbitrarily different.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:182
&gt; +            String calendar = String(availableName, nameLength);

Is the time zone string guaranteed to be an ASCII or Latin-1 string? If it can be UTF-8 then this code is not quite right.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:219
&gt; +    bool needDefaults(true);

We normally use &quot;=&quot; for lines like this, not the style that looks like a function call.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:319
&gt; +static void setFormatsFromPattern(IntlDateTimeFormat* dateTimeFormat, const String&amp; pattern)

Would be nice to take a StringView here instead of a String.

A parser like this is a tricky thing. We need to test the parser extensively.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:323
&gt; +        UChar ch = pattern[i];

I suggest omitting the local variable here and just doing this inside the switch.

Further, the name &quot;ch&quot; is not right for WebKit coding style so if you kept this I would suggest changing it.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:562
&gt; +            formatOpt.append(&quot;EEEEE&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:564
&gt; +            formatOpt.append(&quot;EEE&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:566
&gt; +            formatOpt.append(&quot;EEEE&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:574
&gt; +            formatOpt.append(&quot;GGGGG&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:576
&gt; +            formatOpt.append(&quot;GGG&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:578
&gt; +            formatOpt.append(&quot;GGGG&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:586
&gt; +            formatOpt.append(&quot;yy&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:596
&gt; +            formatOpt.append(&quot;MM&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:600
&gt; +            formatOpt.append(&quot;MMMMM&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:602
&gt; +            formatOpt.append(&quot;MMM&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:604
&gt; +            formatOpt.append(&quot;MMMM&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:612
&gt; +            formatOpt.append(&quot;dd&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:632
&gt; +                formatOpt.append(&quot;jj&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:637
&gt; +                formatOpt.append(&quot;hh&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:642
&gt; +                formatOpt.append(&quot;HH&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:653
&gt; +            formatOpt.append(&quot;mm&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:663
&gt; +            formatOpt.append(&quot;ss&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:675
&gt; +            formatOpt.append(&quot;zzzz&quot;);

appendLiteral

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:693
&gt; +    UErrorCode status(U_ZERO_ERROR);

We normally use &quot;=&quot; for lines like this, not the style that looks like a function call.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:694
&gt; +    UDateTimePatternGenerator* pg = udatpg_open(dataLocale.utf8().data(), &amp;status);

I suggest generator as the name for this local variable.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:696
&gt; +        return throwTypeError(&amp;state, String::format(&quot;failed to initialize DateTimeFormat with ICU error %s&quot;, u_errorName(status)));

It seems questionable to expose ICU error strings directly to web content. Also, we are trying to deprecate String::format so it would be better not to use that just to concatenate strings.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:698
&gt; +    StringView skeleton(formatOpt.toString());

The object lifetime here is incorrect. The result of toString will be deallocated but the StringView will be left pointing to it. We need to store the result of toString in a local variable.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:703
&gt; +        return throwTypeError(&amp;state, String::format(&quot;failed to initialize DateTimeFormat with ICU error %s&quot;, u_errorName(status)));

It seems questionable to expose ICU error strings directly to web content. Also, we are trying to deprecate String::format so it would be better not to use that just to concatenate strings.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:707
&gt; +    Vector&lt;UChar&gt; patternBuffer(patternLength);

Need inline capacity here for better efficiency:

    Vector&lt;UChar, 16&gt; patternBuffer(patternLength);

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:711
&gt; +        return throwTypeError(&amp;state, String::format(&quot;failed to initialize DateTimeFormat with ICU error %s&quot;, u_errorName(status)));

It seems questionable to expose ICU error strings directly to web content. Also, we are trying to deprecate String::format so it would be better not to use that just to concatenate strings.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:713
&gt; +    String pattern(patternBuffer.data(), patternLength);

Is the patternBuffer string guaranteed to be ASCII or Latin-1? This is incorrect if it’s possibly UTF-8.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:732
&gt; +    // 34. If dateTimeFormat has an internal slot [[hour]], then
&gt; +    // a. If hr12 is undefined, then i. Let hr12 be Get(dataLocaleData, &quot;hour12&quot;).
&gt; +    // b. Set dateTimeFormat.[[hour12]] to hr12.
&gt; +    // c. If hr12 is true, then
&gt; +    // i. Let hourNo0 be Get(dataLocaleData, &quot;hourNo0&quot;).
&gt; +    // ii. Set dateTimeFormat.[[hourNo0]] to hourNo0.
&gt; +    // iii. Let pattern be Get(bestFormat, &quot;pattern12&quot;).
&gt; +    // d. Else
&gt; +    // i. Let pattern be Get(bestFormat, &quot;pattern&quot;).
&gt; +    // 35. Else
&gt; +    // a. Let pattern be Get(bestFormat, &quot;pattern&quot;).
&gt; +    // 36. Set dateTimeFormat.[[pattern]] to pattern.

I don’t understand why these comments are here but there is no code.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormatPrototype.cpp:304
&gt; +    options-&gt;putDirect(vm, vm.propertyNames-&gt;locale, jsString(state, dtf-&gt;locale()));
&gt; +    options-&gt;putDirect(vm, Identifier::fromString(&amp;vm, &quot;calendar&quot;), jsString(state, dtf-&gt;calendar()));
&gt; +    options-&gt;putDirect(vm, Identifier::fromString(&amp;vm, &quot;numberingSystem&quot;), jsString(state, dtf-&gt;numberingSystem()));
&gt; +    options-&gt;putDirect(vm, vm.propertyNames-&gt;timeZone, jsString(state, dtf-&gt;timeZone()));
&gt; +
&gt; +    if (dtf-&gt;weekday() != IntlDateTimeFormat::WeekdayStyle::None)
&gt; +        options-&gt;putDirect(vm, vm.propertyNames-&gt;weekday, jsString(state, weekdayStyleToString(dtf-&gt;weekday())));
&gt; +
&gt; +    if (dtf-&gt;era() != IntlDateTimeFormat::EraStyle::None)
&gt; +        options-&gt;putDirect(vm, vm.propertyNames-&gt;era, jsString(state, eraStyleToString(dtf-&gt;era())));
&gt; +
&gt; +    if (dtf-&gt;year() != IntlDateTimeFormat::YearStyle::None)
&gt; +        options-&gt;putDirect(vm, vm.propertyNames-&gt;year, jsString(state, yearStyleToString(dtf-&gt;year())));
&gt; +
&gt; +    if (dtf-&gt;month() != IntlDateTimeFormat::MonthStyle::None)
&gt; +        options-&gt;putDirect(vm, vm.propertyNames-&gt;month, jsString(state, monthStyleToString(dtf-&gt;month())));
&gt; +
&gt; +    if (dtf-&gt;day() != IntlDateTimeFormat::DayStyle::None)
&gt; +        options-&gt;putDirect(vm, vm.propertyNames-&gt;day, jsString(state, dayStyleToString(dtf-&gt;day())));
&gt; +
&gt; +    if (dtf-&gt;hour() != IntlDateTimeFormat::HourStyle::None) {
&gt; +        options-&gt;putDirect(vm, vm.propertyNames-&gt;hour, jsString(state, hourStyleToString(dtf-&gt;hour())));
&gt; +        options-&gt;putDirect(vm, vm.propertyNames-&gt;hour12, jsBoolean(dtf-&gt;hour12()));
&gt; +    }
&gt; +
&gt; +    if (dtf-&gt;minute() != IntlDateTimeFormat::MinuteStyle::None)
&gt; +        options-&gt;putDirect(vm, vm.propertyNames-&gt;minute, jsString(state, minuteStyleToString(dtf-&gt;minute())));
&gt; +
&gt; +    if (dtf-&gt;second() != IntlDateTimeFormat::SecondStyle::None)
&gt; +        options-&gt;putDirect(vm, vm.propertyNames-&gt;second, jsString(state, secondStyleToString(dtf-&gt;second())));
&gt;  
&gt; -    // FIXME: Populate object from internal slots.
&gt; +    if (dtf-&gt;timeZoneName() != IntlDateTimeFormat::TimeZoneNameStyle::None)
&gt; +        options-&gt;putDirect(vm, vm.propertyNames-&gt;timeZoneName, jsString(state, timeZoneNameStyleToString(dtf-&gt;timeZoneName())));

I believe all these call sites can use jsNontrivialString instead of jsString, it’s a slight optimization that can be done as long as we have a guarantee that none of these strings can be one character long.

&gt; Source/JavaScriptCore/runtime/IntlObject.cpp:925
&gt; +    // unumsys_openAvailableNames appears to only be able usable once per process, so use static list instead.

I’d like to understand more. It seems like a problem to try to be in sync other systems.

&gt; Source/JavaScriptCore/runtime/IntlObject.h:68
&gt;  String removeUnicodeLocaleExtension(const String&amp;);
&gt;  String bestAvailableLocale(const HashSet&lt;String&gt;&amp;, const String&amp;);
&gt; +Vector&lt;String&gt; getNumberingSystemsForLocale(const String&amp;);

I think these arguments need names. I think the strings are all locales, and the HashSet is availableLocales, but it’s not 100% clear from the types alone.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149320</commentid>
    <comment_count>11</comment_count>
      <attachid>267326</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-15 09:54:13 -0800</bug_when>
    <thetext>Comment on attachment 267326
Patch

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

Thank you for the detailed review. It is super helpful to quickly get this kind of feedback.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:97
&gt;&gt; +String defaultTimeZone()
&gt; 
&gt; Can we do any caching here? The user can change the default time zone, but I am worried about doing this work every time this function is called.

I don&apos;t mind caching this, but where?

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:102
&gt;&gt; +    UErrorCode status(U_ZERO_ERROR);
&gt; 
&gt; We normally use &quot;=&quot; for lines like this, not the style that looks like a function call.

I will fix all of these.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:103
&gt;&gt; +    int32_t bufferLength = ucal_getDefaultTimeZone(nullptr, 0, &amp;status);
&gt; 
&gt; I suggest using auto for the type here rather than explicitly stating the type.
&gt; 
&gt; Is ucal_getDefaultTimeZone implemented properly on the OS X and iOS platforms? I am not sure it is. There is no guarantee we can use ICU for everything on all platforms. Some functions of ICU are not implemented properly on all platforms it exists on.

If there is a more reliable alternative, let me know and I will switch.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:106
&gt;&gt; +        Vector&lt;UChar&gt; buffer(bufferLength);
&gt; 
&gt; This would be more efficient with inline capacity:
&gt; 
&gt;     Vector&lt;UChar, 16&gt; buffer(bufferLength);
&gt; 
&gt; That’s what Vector is designed for. Doing it that ways means no heap memory allocation at all in the normal case.

Should the inline capacity be the expected size? 32 characters would cover most if not all time zone names.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:109
&gt;&gt; +            return String(buffer.data(), bufferLength);
&gt; 
&gt; Is the time zone string guaranteed to be an ASCII or Latin-1 string? If it can be UTF-8 then this code is not quite right.

Time zone names are always ASCII.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:135
&gt;&gt; +        if (resultString.upper() != timeZoneNameUpper)
&gt; 
&gt; This should use equalIgnoringCase or equalIgnoringASCIICase.

I will change this.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:157
&gt;&gt; +        }
&gt; 
&gt; Is the time zone string guaranteed to be an ASCII or Latin-1 string? If it can be UTF-8 then this code is not quite right.
&gt; 
&gt; Can we refactor this so we share this code rather than repeating it?

Time zone strings are always ASCII. I can rework this to share more code.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:179
&gt;&gt; +        while (const char* availableName = uenum_next(calendars, &amp;nameLength, &amp;status)) {
&gt; 
&gt; Not sure why we are using uenum_next here rather than uenum_unext above. It seems arbitrarily different.

_unext() returns UChar, _next() returns char. For ASCII text _next() avoids upconversion, but can fail on non-ASCII. The time zone one above should be changed to _next() as the values are always ASCII.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:182
&gt;&gt; +            String calendar = String(availableName, nameLength);
&gt; 
&gt; Is the time zone string guaranteed to be an ASCII or Latin-1 string? If it can be UTF-8 then this code is not quite right.

Calendar names are always ASCII.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:319
&gt;&gt; +static void setFormatsFromPattern(IntlDateTimeFormat* dateTimeFormat, const String&amp; pattern)
&gt; 
&gt; Would be nice to take a StringView here instead of a String.
&gt; 
&gt; A parser like this is a tricky thing. We need to test the parser extensively.

I thought it more straightforward and faster than the regular expressions v8 uses. ;)
The tricky part of testing is that the generated pattern is not guaranteed to have the same tokens as were passed in, this is only testable indirectly through the style options in the constructor through to resolvedOptions. I&apos;ve currently tested all of the style options, but could do so in more locales if that will increase our confidence.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:323
&gt;&gt; +        UChar ch = pattern[i];
&gt; 
&gt; I suggest omitting the local variable here and just doing this inside the switch.
&gt; 
&gt; Further, the name &quot;ch&quot; is not right for WebKit coding style so if you kept this I would suggest changing it.

I will move pattern[i] into the switch(), since we don&apos;t ever reference it otherwise.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:562
&gt;&gt; +            formatOpt.append(&quot;EEEEE&quot;);
&gt; 
&gt; appendLiteral

I will change.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:694
&gt;&gt; +    UDateTimePatternGenerator* pg = udatpg_open(dataLocale.utf8().data(), &amp;status);
&gt; 
&gt; I suggest generator as the name for this local variable.

Will do.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:696
&gt;&gt; +        return throwTypeError(&amp;state, String::format(&quot;failed to initialize DateTimeFormat with ICU error %s&quot;, u_errorName(status)));
&gt; 
&gt; It seems questionable to expose ICU error strings directly to web content. Also, we are trying to deprecate String::format so it would be better not to use that just to concatenate strings.

I can avoid exposing the ICU error name to end users. Is there a way to save it though for internal review? Knowing what error happened makes troubleshooting much easier.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:698
&gt;&gt; +    StringView skeleton(formatOpt.toString());
&gt; 
&gt; The object lifetime here is incorrect. The result of toString will be deallocated but the StringView will be left pointing to it. We need to store the result of toString in a local variable.

k, I will fix this.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:713
&gt;&gt; +    String pattern(patternBuffer.data(), patternLength);
&gt; 
&gt; Is the patternBuffer string guaranteed to be ASCII or Latin-1? This is incorrect if it’s possibly UTF-8.

Here the pattern can be utf8. What is the correct way to initialize this string?

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:732
&gt;&gt; +    // 36. Set dateTimeFormat.[[pattern]] to pattern.
&gt; 
&gt; I don’t understand why these comments are here but there is no code.

These steps are delegated to icu. I can remove the comments if you like.

&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormatPrototype.cpp:304
&gt;&gt; +        options-&gt;putDirect(vm, vm.propertyNames-&gt;timeZoneName, jsString(state, timeZoneNameStyleToString(dtf-&gt;timeZoneName())));
&gt; 
&gt; I believe all these call sites can use jsNontrivialString instead of jsString, it’s a slight optimization that can be done as long as we have a guarantee that none of these strings can be one character long.

None of these can be one character long. I will make the change.

&gt;&gt; Source/JavaScriptCore/runtime/IntlObject.cpp:925
&gt;&gt; +    // unumsys_openAvailableNames appears to only be able usable once per process, so use static list instead.
&gt; 
&gt; I’d like to understand more. It seems like a problem to try to be in sync other systems.

I had opened the enumeration here, and closed it at the end of the loop as done with calendars and timezones above, but every second run resulted in an invalid memory access. Trying to move it to the JSGlobalObject and caching it didn&apos;t fix the issue because opening a new tab or the dev tools would create a new global, and crash when repopulating. My best guess is that ICU doesn&apos;t internally handle this enumeration correctly.

&gt;&gt; Source/JavaScriptCore/runtime/IntlObject.h:68
&gt;&gt; +Vector&lt;String&gt; getNumberingSystemsForLocale(const String&amp;);
&gt; 
&gt; I think these arguments need names. I think the strings are all locales, and the HashSet is availableLocales, but it’s not 100% clear from the types alone.

I will add the names.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149363</commentid>
    <comment_count>12</comment_count>
      <attachid>267326</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-15 13:07:59 -0800</bug_when>
    <thetext>Comment on attachment 267326
Patch

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

&gt;&gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:713
&gt;&gt;&gt; +    String pattern(patternBuffer.data(), patternLength);
&gt;&gt; 
&gt;&gt; Is the patternBuffer string guaranteed to be ASCII or Latin-1? This is incorrect if it’s possibly UTF-8.
&gt; 
&gt; Here the pattern can be utf8. What is the correct way to initialize this string?

On further investigation, this hits the String(UChar* characters, unsigned length) constructor that is commented to take UTF-16, which I think UChar always represents.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149424</commentid>
    <comment_count>13</comment_count>
      <attachid>267406</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-15 15:54:11 -0800</bug_when>
    <thetext>Created attachment 267406
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149427</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-15 15:56:00 -0800</bug_when>
    <thetext>Attachment 267406 did not pass style-queue:


ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:8:  #ifndef header guard has wrong style, please use: unumsys_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:15:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:168:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:17:  #ifndef header guard has wrong style, please use: udatpg_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:20:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:21:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:152:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:182:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:209:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:210:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:208:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:211:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:245:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:247:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:244:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:248:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:272:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:273:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:271:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:274:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:301:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:302:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:300:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:303:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:331:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:332:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:333:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:330:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:334:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:357:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:359:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:372:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:374:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:390:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:392:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:405:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:407:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:431:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:432:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:442:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:443:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:459:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:460:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:471:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:472:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:501:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:502:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:503:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:500:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:504:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:538:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:537:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:540:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:556:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:569:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:583:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:582:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:584:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 68 in 15 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>1149430</commentid>
    <comment_count>15</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-15 16:00:24 -0800</bug_when>
    <thetext>I just realized that timeZone is poorly tested. I will add more tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149519</commentid>
    <comment_count>16</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2015-12-15 22:09:44 -0800</bug_when>
    <thetext>The Windows ICU dependency needs updating, but it will probably take a while to do the update and get the update everywhere it is needed internally.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149662</commentid>
    <comment_count>17</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-16 10:16:18 -0800</bug_when>
    <thetext>(In reply to comment #16)
&gt; The Windows ICU dependency needs updating, but it will probably take a while
&gt; to do the update and get the update everywhere it is needed internally.

Could I disable the INTL flag for Windows in the interim, or will the update be finished in a matter of only a few days?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149689</commentid>
    <comment_count>18</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2015-12-16 11:05:31 -0800</bug_when>
    <thetext>The update will not be finished in a matter of a few days.(In reply to comment #17)
&gt; (In reply to comment #16)
&gt; &gt; The Windows ICU dependency needs updating, but it will probably take a while
&gt; &gt; to do the update and get the update everywhere it is needed internally.
&gt; 
&gt; Could I disable the INTL flag for Windows in the interim, or will the update
&gt; be finished in a matter of only a few days?

Updating ICU will take more than a few days.  It&apos;s easy to update, but it takes a while to push the update everywhere.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149773</commentid>
    <comment_count>19</comment_count>
      <attachid>267497</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-16 15:16:46 -0800</bug_when>
    <thetext>Created attachment 267497
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149774</commentid>
    <comment_count>20</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-16 15:18:56 -0800</bug_when>
    <thetext>Attachment 267497 did not pass style-queue:


ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:8:  #ifndef header guard has wrong style, please use: unumsys_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:15:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:168:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:17:  #ifndef header guard has wrong style, please use: udatpg_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:20:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:21:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:152:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:182:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:209:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:210:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:208:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:211:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:245:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:247:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:244:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:248:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:272:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:273:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:271:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:274:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:301:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:302:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:300:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:303:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:331:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:332:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:333:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:330:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:334:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:357:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:359:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:372:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:374:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:390:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:392:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:405:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:407:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:431:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:432:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:442:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:443:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:459:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:460:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:471:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:472:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:501:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:502:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:503:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:500:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:504:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:538:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:537:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:540:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:556:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:569:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:583:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:582:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:584:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 68 in 16 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>1149828</commentid>
    <comment_count>21</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-16 18:01:19 -0800</bug_when>
    <thetext>FeatureList.pm change did not disable INTL on Windows EWS. Reverting change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149830</commentid>
    <comment_count>22</comment_count>
      <attachid>267517</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-16 18:05:25 -0800</bug_when>
    <thetext>Created attachment 267517
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149831</commentid>
    <comment_count>23</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-16 18:06:23 -0800</bug_when>
    <thetext>Attachment 267517 did not pass style-queue:


ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:8:  #ifndef header guard has wrong style, please use: unumsys_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:15:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:168:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:17:  #ifndef header guard has wrong style, please use: udatpg_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:20:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:21:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:152:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:182:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:209:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:210:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:208:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:211:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:245:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:247:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:244:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:248:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:272:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:273:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:271:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:274:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:301:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:302:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:300:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:303:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:331:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:332:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:333:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:330:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:334:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:357:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:359:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:372:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:374:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:390:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:392:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:405:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:407:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:431:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:432:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:442:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:443:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:459:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:460:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:471:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:472:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:501:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:502:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:503:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:500:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:504:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:538:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:537:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:540:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:556:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:569:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:583:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:582:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:584:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 68 in 15 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>1149839</commentid>
    <comment_count>24</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2015-12-16 18:34:44 -0800</bug_when>
    <thetext>The FeatureList.pm change is not necessary, but ENABLE_INTL has two lines in OptionsWin.cmake, the second one is enabling the feature.  Removing the second one disables intl on windows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149841</commentid>
    <comment_count>25</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2015-12-16 18:35:11 -0800</bug_when>
    <thetext>And it might not show on EWS because changing feature enable flags sometimes requires a clean build.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149848</commentid>
    <comment_count>26</comment_count>
      <attachid>267522</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-16 18:58:03 -0800</bug_when>
    <thetext>Created attachment 267522
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149850</commentid>
    <comment_count>27</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-16 18:59:21 -0800</bug_when>
    <thetext>Thanks Alex!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149851</commentid>
    <comment_count>28</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-16 19:00:11 -0800</bug_when>
    <thetext>Attachment 267522 did not pass style-queue:


ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:8:  #ifndef header guard has wrong style, please use: unumsys_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:15:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:168:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:17:  #ifndef header guard has wrong style, please use: udatpg_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:20:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:21:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:152:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:182:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:209:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:210:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:208:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:211:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:245:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:247:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:244:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:248:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:272:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:273:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:271:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:274:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:301:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:302:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:300:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:303:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:331:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:332:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:333:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:330:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:334:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:357:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:359:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:372:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:374:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:390:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:392:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:405:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:407:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:431:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:432:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:442:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:443:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:459:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:460:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:471:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:472:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:501:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:502:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:503:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:500:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:504:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:538:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:537:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:540:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:556:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:569:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:583:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:582:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:584:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 68 in 16 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>1149879</commentid>
    <comment_count>29</comment_count>
      <attachid>267522</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-12-16 21:25:40 -0800</bug_when>
    <thetext>Comment on attachment 267522
Patch

Windows build failure with unumsys.h include is still happening:

C:\cygwin\home\buildbot\WebKit\Source\JavaScriptCore\runtime\IntlObject.cpp(48): fatal error C1083: Cannot open include file: &apos;unicode/unumsys.h&apos;: No such file or directory</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149926</commentid>
    <comment_count>30</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2015-12-16 23:33:13 -0800</bug_when>
    <thetext>(In reply to comment #29)
&gt; Comment on attachment 267522 [details]
&gt; Patch
&gt; 
&gt; Windows build failure with unumsys.h include is still happening:
&gt; 
&gt; C:\cygwin\home\buildbot\WebKit\Source\JavaScriptCore\runtime\IntlObject.
&gt; cpp(48): fatal error C1083: Cannot open include file: &apos;unicode/unumsys.h&apos;:
&gt; No such file or directory

That is an incremental build failure from disabling a feature (INTL).  I verified that this patch compiles and links successfully in a clean build on Windows.  I haven&apos;t been following the INTL development closely enough to r+ this patch, but let me know when it is ready to land and I&apos;ll fix any Windows problems that arise.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149932</commentid>
    <comment_count>31</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2015-12-17 00:13:29 -0800</bug_when>
    <thetext>I got a WinCairo build to compile and link with an updated ICU.  It crashes when I run jsc because I missed something, but it won&apos;t be long before we can re-enable INTL on the WinCairo bot so we can catch any compile errors on INTL development on Windows.  AppleWin will take longer to update the ICU libraries, so INTL will need to stay disabled on that port for a while.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150108</commentid>
    <comment_count>32</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2015-12-17 15:39:29 -0800</bug_when>
    <thetext>I also think that some of Darin&apos;s comments have not been resolved, so this is not ready for committing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150262</commentid>
    <comment_count>33</comment_count>
      <attachid>267627</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-18 07:18:09 -0800</bug_when>
    <thetext>Created attachment 267627
Patch reworked to align with Collator</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150263</commentid>
    <comment_count>34</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-18 07:21:10 -0800</bug_when>
    <thetext>Attachment 267627 did not pass style-queue:


ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:8:  #ifndef header guard has wrong style, please use: unumsys_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:15:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:168:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:17:  #ifndef header guard has wrong style, please use: udatpg_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:20:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:21:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:152:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:182:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:209:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:210:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:208:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:211:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:245:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:247:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:244:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:248:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:272:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:273:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:271:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:274:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:301:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:302:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:300:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:303:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:331:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:332:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:333:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:330:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:334:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:357:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:359:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:372:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:374:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:390:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:392:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:405:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:407:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:431:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:432:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:442:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:443:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:459:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:460:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:471:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:472:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:501:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:502:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:503:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:500:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:504:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:538:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:537:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:540:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:556:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:569:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:583:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:582:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:584:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 68 in 15 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>1150275</commentid>
    <comment_count>35</comment_count>
      <attachid>267627</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2015-12-18 08:24:04 -0800</bug_when>
    <thetext>Comment on attachment 267627
Patch reworked to align with Collator

Attachment 267627 did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.webkit.org/results/576031

New failing tests:
js/intl-datetimeformat.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150276</commentid>
    <comment_count>36</comment_count>
      <attachid>267629</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2015-12-18 08:24:09 -0800</bug_when>
    <thetext>Created attachment 267629
Archive of layout-test-results from ews104 for mac-yosemite-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews104  Port: mac-yosemite-wk2  Platform: Mac OS X 10.10.5</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150283</commentid>
    <comment_count>37</comment_count>
      <attachid>267631</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-18 08:42:49 -0800</bug_when>
    <thetext>Created attachment 267631
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150284</commentid>
    <comment_count>38</comment_count>
      <attachid>267631</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-18 08:43:28 -0800</bug_when>
    <thetext>Comment on attachment 267631
Patch

Cacnonicalized the default time zone. Other minor fixups.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150285</commentid>
    <comment_count>39</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-18 08:44:17 -0800</bug_when>
    <thetext>Attachment 267631 did not pass style-queue:


ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:8:  #ifndef header guard has wrong style, please use: unumsys_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:15:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:168:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:17:  #ifndef header guard has wrong style, please use: udatpg_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:20:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:21:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:152:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:182:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:209:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:210:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:208:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:211:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:245:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:247:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:244:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:248:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:272:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:273:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:271:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:274:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:301:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:302:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:300:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:303:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:331:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:332:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:333:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:330:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:334:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:357:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:359:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:372:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:374:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:390:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:392:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:405:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:407:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:431:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:432:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:442:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:443:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:459:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:460:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:471:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:472:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:501:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:502:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:503:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:500:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:504:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:538:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:537:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:540:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:556:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:569:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:583:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:582:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:584:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 68 in 15 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>1150336</commentid>
    <comment_count>40</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-18 10:52:23 -0800</bug_when>
    <thetext>Darin, are these still more changes you&apos;d like to see for this patch?

The only thing I know I didn&apos;t do is caching. If you could point out the proper mechanism to do it, I can make the change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150406</commentid>
    <comment_count>41</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2015-12-18 15:34:08 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; &gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:97
&gt; &gt;&gt; +String defaultTimeZone()
&gt; &gt; 
&gt; &gt; Can we do any caching here? The user can change the default time zone, but I am worried about doing this work every time this function is called.
&gt; 
&gt; I don&apos;t mind caching this, but where?
Something like this:
static const String&amp; defaultTimeZone()
{
    static NeverDestroyed&lt;String&gt; defaultTimeZone;
    if (!defaultTimeZone.get().isEmpty())
        return defaultTimeZone;
...
    defaultTimeZone.get() = String(canonicalBuffer.data(), canonicalLength);
    return defaultTimeZone;
}
&gt; &gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:103
&gt; &gt;&gt; +    int32_t bufferLength = ucal_getDefaultTimeZone(nullptr, 0, &amp;status);
&gt; &gt; 
&gt; &gt; I suggest using auto for the type here rather than explicitly stating the type.
&gt; &gt; 
&gt; &gt; Is ucal_getDefaultTimeZone implemented properly on the OS X and iOS platforms? I am not sure it is. There is no guarantee we can use ICU for everything on all platforms. Some functions of ICU are not implemented properly on all platforms it exists on.
&gt; 
&gt; If there is a more reliable alternative, let me know and I will switch.
I don&apos;t think this is a problem.  According to http://opensource.apple.com/release/os-x-10105/ OS X 10.10.5 uses ICU-531.48 which is sufficient, isn&apos;t it? http://opensource.apple.com/source/ICU/ICU-531.48/icuSources/i18n/ucal.cpp looks like it is implemented just as correctly as it is in the latest from http://site.icu-project.org/download/56
&gt; &gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:319
&gt; &gt;&gt; +static void setFormatsFromPattern(IntlDateTimeFormat* dateTimeFormat, const String&amp; pattern)
&gt; &gt; 
&gt; &gt; Would be nice to take a StringView here instead of a String.
&gt; &gt; 
&gt; &gt; A parser like this is a tricky thing. We need to test the parser extensively.
&gt; 
&gt; I thought it more straightforward and faster than the regular expressions v8
&gt; uses. ;)
&gt; The tricky part of testing is that the generated pattern is not guaranteed
&gt; to have the same tokens as were passed in, this is only testable indirectly
&gt; through the style options in the constructor through to resolvedOptions.
&gt; I&apos;ve currently tested all of the style options, but could do so in more
&gt; locales if that will increase our confidence.
I&apos;m not terribly familiar with what is going on here, but is it possible to test this function with invalid input?
Also, I think it&apos;s strange to have special cases for {H, h, K, k} and also have them in the switch.
&gt; &gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:696
&gt; &gt;&gt; +        return throwTypeError(&amp;state, String::format(&quot;failed to initialize DateTimeFormat with ICU error %s&quot;, u_errorName(status)));
&gt; &gt; 
&gt; &gt; It seems questionable to expose ICU error strings directly to web content. Also, we are trying to deprecate String::format so it would be better not to use that just to concatenate strings.
&gt; 
&gt; I can avoid exposing the ICU error name to end users. Is there a way to save
&gt; it though for internal review? Knowing what error happened makes
&gt; troubleshooting much easier.
You could use dataLogF.
&gt; &gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:713
&gt; &gt;&gt; +    String pattern(patternBuffer.data(), patternLength);
&gt; &gt; 
&gt; &gt; Is the patternBuffer string guaranteed to be ASCII or Latin-1? This is incorrect if it’s possibly UTF-8.
&gt; 
&gt; Here the pattern can be utf8. What is the correct way to initialize this
&gt; string?
Your approach in a later patch of initializing it from a UChar* and a length works.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150443</commentid>
    <comment_count>42</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-18 16:31:59 -0800</bug_when>
    <thetext>(In reply to comment #41)
&gt; (In reply to comment #11)
&gt; &gt; &gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:97
&gt; &gt; &gt;&gt; +String defaultTimeZone()
&gt; &gt; &gt; 
&gt; &gt; &gt; Can we do any caching here? The user can change the default time zone, but I am worried about doing this work every time this function is called.
&gt; &gt; 
&gt; &gt; I don&apos;t mind caching this, but where?
&gt; Something like this:
&gt; static const String&amp; defaultTimeZone()
&gt; {
&gt;     static NeverDestroyed&lt;String&gt; defaultTimeZone;
&gt;     if (!defaultTimeZone.get().isEmpty())
&gt;         return defaultTimeZone;
&gt; ...
&gt;     defaultTimeZone.get() = String(canonicalBuffer.data(), canonicalLength);
&gt;     return defaultTimeZone;
&gt; }

Thanks! This is very helpful. I will do this.

&gt; &gt; &gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:103
&gt; &gt; &gt;&gt; +    int32_t bufferLength = ucal_getDefaultTimeZone(nullptr, 0, &amp;status);
&gt; &gt; &gt; 
&gt; &gt; &gt; I suggest using auto for the type here rather than explicitly stating the type.
&gt; &gt; &gt; 
&gt; &gt; &gt; Is ucal_getDefaultTimeZone implemented properly on the OS X and iOS platforms? I am not sure it is. There is no guarantee we can use ICU for everything on all platforms. Some functions of ICU are not implemented properly on all platforms it exists on.
&gt; &gt; 
&gt; &gt; If there is a more reliable alternative, let me know and I will switch.
&gt; I don&apos;t think this is a problem.  According to
&gt; http://opensource.apple.com/release/os-x-10105/ OS X 10.10.5 uses ICU-531.48
&gt; which is sufficient, isn&apos;t it?
&gt; http://opensource.apple.com/source/ICU/ICU-531.48/icuSources/i18n/ucal.cpp
&gt; looks like it is implemented just as correctly as it is in the latest from
&gt; http://site.icu-project.org/download/56

Yeah, at least my simple testing with switching the time zone in System Settings it worked correctly.

&gt; &gt; &gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:319
&gt; &gt; &gt;&gt; +static void setFormatsFromPattern(IntlDateTimeFormat* dateTimeFormat, const String&amp; pattern)
&gt; &gt; &gt; 
&gt; &gt; &gt; Would be nice to take a StringView here instead of a String.
&gt; &gt; &gt; 
&gt; &gt; &gt; A parser like this is a tricky thing. We need to test the parser extensively.
&gt; &gt; 
&gt; &gt; I thought it more straightforward and faster than the regular expressions v8
&gt; &gt; uses. ;)
&gt; &gt; The tricky part of testing is that the generated pattern is not guaranteed
&gt; &gt; to have the same tokens as were passed in, this is only testable indirectly
&gt; &gt; through the style options in the constructor through to resolvedOptions.
&gt; &gt; I&apos;ve currently tested all of the style options, but could do so in more
&gt; &gt; locales if that will increase our confidence.
&gt; I&apos;m not terribly familiar with what is going on here, but is it possible to
&gt; test this function with invalid input?
&gt; Also, I think it&apos;s strange to have special cases for {H, h, K, k} and also
&gt; have them in the switch.

The input to this function will always be the output of udatpg_getBestPattern(), so I don&apos;t know of any way to test invalid input. The tests that I added ensuring many locales support the required set of inputs did catch a bug where some Russian patterns used &apos;c&apos; (standalone weekday) instead of &apos;E&apos; (weekday), which I later accounted for.

&gt; &gt; &gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:696
&gt; &gt; &gt;&gt; +        return throwTypeError(&amp;state, String::format(&quot;failed to initialize DateTimeFormat with ICU error %s&quot;, u_errorName(status)));
&gt; &gt; &gt; 
&gt; &gt; &gt; It seems questionable to expose ICU error strings directly to web content. Also, we are trying to deprecate String::format so it would be better not to use that just to concatenate strings.
&gt; &gt; 
&gt; &gt; I can avoid exposing the ICU error name to end users. Is there a way to save
&gt; &gt; it though for internal review? Knowing what error happened makes
&gt; &gt; troubleshooting much easier.
&gt; You could use dataLogF.
&gt; &gt; &gt;&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:713
&gt; &gt; &gt;&gt; +    String pattern(patternBuffer.data(), patternLength);
&gt; &gt; &gt; 
&gt; &gt; &gt; Is the patternBuffer string guaranteed to be ASCII or Latin-1? This is incorrect if it’s possibly UTF-8.
&gt; &gt; 
&gt; &gt; Here the pattern can be utf8. What is the correct way to initialize this
&gt; &gt; string?
&gt; Your approach in a later patch of initializing it from a UChar* and a length
&gt; works.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150448</commentid>
    <comment_count>43</comment_count>
      <attachid>267662</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-18 17:14:24 -0800</bug_when>
    <thetext>Created attachment 267662
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150449</commentid>
    <comment_count>44</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-18 17:15:33 -0800</bug_when>
    <thetext>Attachment 267662 did not pass style-queue:


ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:8:  #ifndef header guard has wrong style, please use: unumsys_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:15:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:168:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:17:  #ifndef header guard has wrong style, please use: udatpg_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:20:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:21:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:152:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:182:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:209:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:210:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:208:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:211:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:245:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:247:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:244:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:248:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:272:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:273:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:271:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:274:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:301:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:302:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:300:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:303:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:331:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:332:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:333:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:330:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:334:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:357:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:359:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:372:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:374:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:390:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:392:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:405:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:407:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:431:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:432:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:442:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:443:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:459:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:460:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:471:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:472:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:501:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:502:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:503:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:500:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:504:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:538:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:537:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:540:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:556:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:569:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:583:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:582:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:584:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 68 in 15 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>1150715</commentid>
    <comment_count>45</comment_count>
      <attachid>267662</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2015-12-21 03:42:31 -0800</bug_when>
    <thetext>Comment on attachment 267662
Patch

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

Quick review. Some comments/questions.
Everything looks good otherwise, very clean code.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:105
&gt; +    static NeverDestroyed&lt;String&gt; cachedDefaultTimeZone;
&gt; +    if (!cachedDefaultTimeZone.get().isEmpty())
&gt; +        return cachedDefaultTimeZone;

I disagree with Darin here. IMHO, we should only add caching if we add cache invalidation.

Let&apos;s this for now, it is not a major bug.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:146
&gt; +    while (canonical.isNull()) {

This should be a do { } while().

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:225
&gt; +static JSObject* toDateTimeOptions(ExecState&amp; state, JSValue originalOptions, const DateTimeOptionRequired required, const DateTimeOptionDefaults defaults)

state-&gt;exec for consistency with the existing codebase.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:235
&gt; +        options = constructEmptyObject(&amp;state, state.lexicalGlobalObject()-&gt;nullPrototypeObjectStructure());

Shouldn&apos;t you use constructEmptyObject(&amp;state/&amp;exec)?
That would use the Structure of a regular object.

&gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:517
&gt; +    } else
&gt; +    // 20. Else,
&gt; +        // a. Let tz be DefaultTimeZone().
&gt; +        tz = defaultTimeZone();

Let&apos;s use brackets here. It is a one-statement clause but the comments make it multi-line. It will be clearer with brackets.

&gt; Source/JavaScriptCore/runtime/IntlObject.cpp:928
&gt; +    // unumsys_openAvailableNames appears to only be able usable once per process, so use static list instead.

wow, that&apos;s crazy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150743</commentid>
    <comment_count>46</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-21 08:28:10 -0800</bug_when>
    <thetext>(In reply to comment #45)
&gt; Comment on attachment 267662 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=267662&amp;action=review
&gt; 
&gt; Quick review. Some comments/questions.
&gt; Everything looks good otherwise, very clean code.
&gt; 
&gt; &gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:105
&gt; &gt; +    static NeverDestroyed&lt;String&gt; cachedDefaultTimeZone;
&gt; &gt; +    if (!cachedDefaultTimeZone.get().isEmpty())
&gt; &gt; +        return cachedDefaultTimeZone;
&gt; 
&gt; I disagree with Darin here. IMHO, we should only add caching if we add cache
&gt; invalidation.
&gt; 
&gt; Let&apos;s this for now, it is not a major bug.
&gt; 

My (admittedly not very rigorous) performance testing didn&apos;t show this being a noticeable win. I agree that caching default time zone would require a mechanism to invalidate when the time zone changes, which should be better than &quot;restart the browser&quot;.

&gt; &gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:146
&gt; &gt; +    while (canonical.isNull()) {
&gt; 
&gt; This should be a do { } while().
&gt; 

Will do.

&gt; &gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:225
&gt; &gt; +static JSObject* toDateTimeOptions(ExecState&amp; state, JSValue originalOptions, const DateTimeOptionRequired required, const DateTimeOptionDefaults defaults)
&gt; 
&gt; state-&gt;exec for consistency with the existing codebase.
&gt; 
&gt; &gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:235
&gt; &gt; +        options = constructEmptyObject(&amp;state, state.lexicalGlobalObject()-&gt;nullPrototypeObjectStructure());
&gt; 
&gt; Shouldn&apos;t you use constructEmptyObject(&amp;state/&amp;exec)?
&gt; That would use the Structure of a regular object.
&gt; 

Considering this object is never exposed outside of initialization, the difference between an Object with the default Object.prototype vs a null prototype is negligible. I can use whichever is faster.

&gt; &gt; Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:517
&gt; &gt; +    } else
&gt; &gt; +    // 20. Else,
&gt; &gt; +        // a. Let tz be DefaultTimeZone().
&gt; &gt; +        tz = defaultTimeZone();
&gt; 
&gt; Let&apos;s use brackets here. It is a one-statement clause but the comments make
&gt; it multi-line. It will be clearer with brackets.
&gt; 

Will do. I think the style checker will still yell though.

&gt; &gt; Source/JavaScriptCore/runtime/IntlObject.cpp:928
&gt; &gt; +    // unumsys_openAvailableNames appears to only be able usable once per process, so use static list instead.
&gt; 
&gt; wow, that&apos;s crazy.

I know, right? Considering I learned how to use NeverDestroyed&lt;&gt; working on this patch set, I can probably make it work now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150817</commentid>
    <comment_count>47</comment_count>
      <attachid>267764</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-21 15:38:13 -0800</bug_when>
    <thetext>Created attachment 267764
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1150818</commentid>
    <comment_count>48</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-21 15:39:30 -0800</bug_when>
    <thetext>Attachment 267764 did not pass style-queue:


ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:8:  #ifndef header guard has wrong style, please use: unumsys_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:15:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/unumsys.h:168:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:17:  #ifndef header guard has wrong style, please use: udatpg_h  [build/header_guard] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:20:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:21:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:152:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:182:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:209:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:210:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:208:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:211:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:245:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:247:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:244:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:246:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:248:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:272:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:273:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:271:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:274:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:301:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:302:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:300:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:303:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:331:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:332:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:333:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:330:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:334:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:357:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:358:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:359:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:372:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:373:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:374:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:390:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:391:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:392:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:405:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:406:  The parameter name &quot;field&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:407:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:431:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:432:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:442:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:443:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:459:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:460:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:471:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:472:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:501:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:502:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:503:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:500:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:504:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:538:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:537:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:540:  The parameter name &quot;options&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:556:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:569:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:583:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:582:  The parameter name &quot;dtpg&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/icu/unicode/udatpg.h:584:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 68 in 16 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>1151050</commentid>
    <comment_count>49</comment_count>
      <attachid>267764</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2015-12-23 02:07:00 -0800</bug_when>
    <thetext>Comment on attachment 267764
Patch

Quick second round, I did not find any issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151051</commentid>
    <comment_count>50</comment_count>
      <attachid>267764</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-23 02:48:52 -0800</bug_when>
    <thetext>Comment on attachment 267764
Patch

Clearing flags on attachment: 267764

Committed r194387: &lt;http://trac.webkit.org/changeset/194387&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151052</commentid>
    <comment_count>51</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-23 02:48:59 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151055</commentid>
    <comment_count>52</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-12-23 04:32:06 -0800</bug_when>
    <thetext>(In reply to comment #50)
&gt; Comment on attachment 267764 [details]
&gt; Patch
&gt; 
&gt; Clearing flags on attachment: 267764
&gt; 
&gt; Committed r194387: &lt;http://trac.webkit.org/changeset/194387&gt;

It broke the WinCairo build:

https://build.webkit.org/builders/WinCairo%2064-Bit%20Release/builds/52346

..\..\Source\JavaScriptCore\runtime\IntlObject.cpp(48): fatal error C1083: Cannot open include file: &apos;unicode/unumsys.h&apos;: No such file or directory</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151064</commentid>
    <comment_count>53</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-12-23 06:36:32 -0800</bug_when>
    <thetext>And it bróker the Apple Windows build too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151068</commentid>
    <comment_count>54</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-23 07:02:52 -0800</bug_when>
    <thetext>Windows should have the INTL flag disabled. Also Alex Christensen was working on updating the ICU version on Windows to fix that problem. Is there more to do to temporarily disable INTL on those bots until the ICU bump happens?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151134</commentid>
    <comment_count>55</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2015-12-23 12:59:52 -0800</bug_when>
    <thetext>Looks like some LayoutTests are failing on Windows as a result of this change. Not sure if they depend upon the work you mentioned above.

js/intl-collator.html
js/intl-datetimeformat.html
js/intl-numberformat.html
js/intl.html
js/number-toLocaleString.html
js/string-toLocaleLowerCase.html
js/string-toLocaleUpperCase.html

&lt;https://build.webkit.org/results/Apple%20Win%207%20Release%20(Tests)/r194389%20(55698)/results.html&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151136</commentid>
    <comment_count>56</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-23 13:04:48 -0800</bug_when>
    <thetext>Those all fail now because the INTL flag is disabled. Is there a way to make the tests depend on the state of that flag?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151200</commentid>
    <comment_count>57</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-12-23 15:50:46 -0800</bug_when>
    <thetext>We normally try to isolate tests from the environment, not massage the bots until the environment is right. Otherwise, the tests will fail when developers run them manually.

We are just using ICU here, why do the tests depend on anything Windows specific? Can code be added to DumpRenderTree to configure ICU the way we need it to be?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151203</commentid>
    <comment_count>58</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-23 16:03:18 -0800</bug_when>
    <thetext>The problem is the version of ICU in current use on Windows does not include unumsys. All other platforms are current enough. Alex Christensen has been working to update it. In the mean time, I disabled INTL on Windows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151259</commentid>
    <comment_count>59</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2015-12-24 00:14:33 -0800</bug_when>
    <thetext>Windows bots just needed a clean build.  Everything is fine.
(In reply to comment #58)
&gt; The problem is the version of ICU in current use on Windows does not include
&gt; unumsys. All other platforms are current enough. Alex Christensen has been
&gt; working to update it. In the mean time, I disabled INTL on Windows.
Let&apos;s disable all INTL tests on Windows until icu is updated</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151268</commentid>
    <comment_count>60</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-12-24 07:56:53 -0800</bug_when>
    <thetext>(In reply to comment #58)
&gt; The problem is the version of ICU in current use on Windows does not include
&gt; unumsys. All other platforms are current enough. Alex Christensen has been
&gt; working to update it. In the mean time, I disabled INTL on Windows.

No, this patch introduced seven JSC test failures for both EFL and GTK as well.

It&apos;s not hard to update the version of ICU we depend on for tests, if that&apos;s all that needs done...? We will need to add it to the EFL and GTK jhbuild modulesets, but if it affects tests results it ought to go there anyway.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151270</commentid>
    <comment_count>61</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-12-24 08:00:02 -0800</bug_when>
    <thetext>It looks like our set of failing tests is different than the ones that are failing on Windows, though:

** The following JSC stress test failures have been introduced:
	jsc-layout-tests.yaml/js/script-tests/intl-datetimeformat.js.layout
	jsc-layout-tests.yaml/js/script-tests/intl-datetimeformat.js.layout-dfg-eager-no-cjit
	jsc-layout-tests.yaml/js/script-tests/intl-datetimeformat.js.layout-ftl
	jsc-layout-tests.yaml/js/script-tests/intl-datetimeformat.js.layout-ftl-eager-no-cjit
	jsc-layout-tests.yaml/js/script-tests/intl-datetimeformat.js.layout-ftl-no-cjit
	jsc-layout-tests.yaml/js/script-tests/intl-datetimeformat.js.layout-no-cjit
	jsc-layout-tests.yaml/js/script-tests/intl-datetimeformat.js.layout-no-llint

See: https://build.webkit.org/builders/GTK Linux 64-bit Release (Tests)/builds/12812/steps/jscore-test/logs/stdio</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151276</commentid>
    <comment_count>62</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-24 09:35:19 -0800</bug_when>
    <thetext>It&apos;s possible that the GTK failed tests are also due to ICU differences. It&apos;s sad that EWS didn&apos;t catch any of these problems.

I don&apos;t see a way to get the actual text diff from the bots. I don&apos;t have a GTK setup. Can someone get the full results containing which assertions are failing, I can make the tests more resilient.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151282</commentid>
    <comment_count>63</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-12-24 12:28:15 -0800</bug_when>
    <thetext>Andy, if you start from &lt;https://build.webkit.org/builders/GTK%20Linux%2064-bit%20Release%20(Tests)/builds/12812&gt; and click on &quot;view results&quot; in step 15, all the Gtk results will be visible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151284</commentid>
    <comment_count>64</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-24 12:42:41 -0800</bug_when>
    <thetext>Thanks Alexey!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151287</commentid>
    <comment_count>65</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-24 12:48:58 -0800</bug_when>
    <thetext>It looks like some time zone backward links are different, hanidays numbering system isn&apos;t supported, and islamic-umalqura calendar isn&apos;t supported on that bot, so I shouldn&apos;t make them required in the tests. I&apos;ll link the new issue with a patch soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151292</commentid>
    <comment_count>66</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-12-24 13:08:57 -0800</bug_when>
    <thetext>Ugh, the tzdata package is constantly changing timezones. I suspect this test will be the source of much future breakage. :(

What about the numbering systems; any chance you know what system package is responsible for that?

Ideally we would put all packages that influence test results into our jhbuild environment, so we can try to get consistent results regardless of the system packages on the computer running the test. But I&apos;m not sure if it&apos;s possible for timezones and locales....</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151294</commentid>
    <comment_count>67</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-24 13:20:01 -0800</bug_when>
    <thetext>I&apos;m getting all of the information through ICU APIs. To get unumsys, it must be at least version 52.

For timezones, I can reduce the tests to just check a few obsolete timezones to make sure backlinks are resolved.

For numbering systems and calendars, I can reduce the set I check to those available on all of our supported configurations. It might be a bit of trial and error though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1151297</commentid>
    <comment_count>68</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-24 14:29:59 -0800</bug_when>
    <thetext>https://bugs.webkit.org/show_bug.cgi?id=152550</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>267202</attachid>
            <date>2015-12-11 16:56:24 -0800</date>
            <delta_ts>2015-12-12 11:47:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147603-20151211175550.patch</filename>
            <type>text/plain</type>
            <size>113051</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkzOTk0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
YjhkYjA0MGI4NGUzM2VmMzdjNjEyYjk2ZTg5NDZlZWRjMDEwMzI2Li45NThiNjdmNzIxYWFjNWUz
NjRlMDEwNmJlN2JkMmQ5NGJlYWQ2YmM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw3OCBAQAorMjAxNS0xMi0xMSAgQW5keSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVy
ZS5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQgYW5k
IHJlbGF0ZWQgYWJzdHJhY3Qgb3BlcmF0aW9ucy4KKyAgICAgICAgU3RvcmUgcmVzb2x2ZWQgb3B0
aW9ucyBhcyBlbnVtIHR5cGVzLCB3aGVyZSBwb3NzaWJsZS4KKyAgICAgICAgVXNlIElDVSBkYXRl
IHBhdHRlcm4gZ2VuZXJhdG9yIHRvIHJlc29sdmUgZm9ybWF0dGluZyBzdHlsZXMuCisKKyAgICAg
ICAgKiBpY3UvdW5pY29kZS91ZGF0cGcuaDogQWRkZWQuCisgICAgICAgICogcnVudGltZS9Db21t
b25JZGVudGlmaWVycy5oOgorICAgICAgICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNw
cDoKKyAgICAgICAgKEpTQzo6ZGVmYXVsdFRpbWVab25lKToKKyAgICAgICAgKEpTQzo6Y2Fub25p
Y2FsaXplVGltZVpvbmVOYW1lKToKKyAgICAgICAgKEpTQzo6bG9jYWxlRGF0YSk6CisgICAgICAg
IChKU0M6OnN0cmluZ1RvQ2FsZW5kYXJUeXBlKToKKyAgICAgICAgKEpTQzo6dG9EYXRlVGltZU9w
dGlvbnMpOgorICAgICAgICAoSlNDOjpzZXRGb3JtYXRzRnJvbVBhdHRlcm4pOgorICAgICAgICAo
SlNDOjppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRp
bWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUpOgorICAgICAgICAqIHJ1bnRpbWUvSW50bERhdGVU
aW1lRm9ybWF0Lmg6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6aW5pdGlhbGl6
ZWRJbnRsT2JqZWN0KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRJbml0
aWFsaXplZEludGxPYmplY3QpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6Omlu
aXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3Jt
YXQ6OnNldEluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQpOgorICAgICAgICAoSlNDOjpJbnRsRGF0
ZVRpbWVGb3JtYXQ6OmxvY2FsZSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6
c2V0TG9jYWxlKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpjYWxlbmRhcik6
CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0Q2FsZW5kYXIpOgorICAgICAg
ICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6Om51bWJlcmluZ1N5c3RlbSk6CisgICAgICAgIChK
U0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0TnVtYmVyaW5nU3lzdGVtKToKKyAgICAgICAgKEpT
Qzo6SW50bERhdGVUaW1lRm9ybWF0Ojp0aW1lWm9uZSk6CisgICAgICAgIChKU0M6OkludGxEYXRl
VGltZUZvcm1hdDo6c2V0VGltZVpvbmUpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3Jt
YXQ6OmhvdXIxMik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0SG91cjEy
KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojp3ZWVrZGF5KToKKyAgICAgICAg
KEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRXZWVrZGF5KToKKyAgICAgICAgKEpTQzo6SW50
bERhdGVUaW1lRm9ybWF0OjplcmEpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6
OnNldEVyYSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6eWVhcik6CisgICAg
ICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0WWVhcik6CisgICAgICAgIChKU0M6Oklu
dGxEYXRlVGltZUZvcm1hdDo6bW9udGgpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3Jt
YXQ6OnNldE1vbnRoKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpkYXkpOgor
ICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldERheSk6CisgICAgICAgIChKU0M6
OkludGxEYXRlVGltZUZvcm1hdDo6aG91cik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZv
cm1hdDo6c2V0SG91cik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6bWludXRl
KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRNaW51dGUpOgorICAgICAg
ICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNlY29uZCk6CisgICAgICAgIChKU0M6OkludGxE
YXRlVGltZUZvcm1hdDo6c2V0U2Vjb25kKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9y
bWF0Ojp0aW1lWm9uZU5hbWUpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNl
dFRpbWVab25lTmFtZSk6CisgICAgICAgICogcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25z
dHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdEludGxEYXRlVGltZUZvcm1hdCk6
CisgICAgICAgIChKU0M6OmNhbGxJbnRsRGF0ZVRpbWVGb3JtYXQpOgorICAgICAgICAqIHJ1bnRp
bWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SW50bERh
dGVUaW1lRm9ybWF0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbik6CisgICAgICAgIChKU0M6OmNh
bGVuZGFyVHlwZVRvU3RyaW5nKToKKyAgICAgICAgKEpTQzo6d2Vla2RheVN0eWxlVG9TdHJpbmcp
OgorICAgICAgICAoSlNDOjplcmFTdHlsZVRvU3RyaW5nKToKKyAgICAgICAgKEpTQzo6eWVhclN0
eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjptb250aFN0eWxlVG9TdHJpbmcpOgorICAgICAg
ICAoSlNDOjpkYXlTdHlsZVRvU3RyaW5nKToKKyAgICAgICAgKEpTQzo6aG91clN0eWxlVG9TdHJp
bmcpOgorICAgICAgICAoSlNDOjptaW51dGVTdHlsZVRvU3RyaW5nKToKKyAgICAgICAgKEpTQzo6
c2Vjb25kU3R5bGVUb1N0cmluZyk6CisgICAgICAgIChKU0M6OnRpbWVab25lTmFtZVN0eWxlVG9T
dHJpbmcpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJG
b3JtYXQpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jUmVz
b2x2ZWRPcHRpb25zKToKKyAgICAgICAgKiBydW50aW1lL0ludGxPYmplY3QuY3BwOgorICAgICAg
ICAoSlNDOjpyZXNvbHZlTG9jYWxlKToKKwogMjAxNS0xMi0xMSAgRmlsaXAgUGl6bG8gIDxmcGl6
bG9AYXBwbGUuY29tPgogCiAgICAgICAgIEIzOjpyZWR1Y2VTdHJlbmd0aCBzaG91bGQgcmVtb3Zl
IHJlZHVuZGFudCBQaGkncwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ljdS91
bmljb2RlL3VkYXRwZy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ljdS91bmljb2RlL3VkYXRw
Zy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjNkYzdlODlmMmRmYjY0MDIyMGYzNTcwODgzNThiNmQ5YzU3OGViMGUK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRh
dHBnLmgKQEAgLTAsMCArMSw1ODYgQEAKKy8qCisqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisqCisq
ICAgQ29weXJpZ2h0IChDKSAyMDA3LTIwMTAsIEludGVybmF0aW9uYWwgQnVzaW5lc3MgTWFjaGlu
ZXMKKyogICBDb3Jwb3JhdGlvbiBhbmQgb3RoZXJzLiAgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyoK
KyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioKKyogICBmaWxlIG5hbWU6ICB1ZGF0cGcuaAorKiAgIGVu
Y29kaW5nOiAgIFVTLUFTQ0lJCisqICAgdGFiIHNpemU6ICAgOCAobm90IHVzZWQpCisqICAgaW5k
ZW50YXRpb246NAorKgorKiAgIGNyZWF0ZWQgb246IDIwMDdqdWwzMAorKiAgIGNyZWF0ZWQgYnk6
IE1hcmt1cyBXLiBTY2hlcmVyCisqLworCisjaWZuZGVmIF9fVURBVFBHX0hfXworI2RlZmluZSBf
X1VEQVRQR19IX18KKworI2luY2x1ZGUgInVuaWNvZGUvdXR5cGVzLmgiCisjaW5jbHVkZSAidW5p
Y29kZS91ZW51bS5oIgorI2luY2x1ZGUgInVuaWNvZGUvbG9jYWxwb2ludGVyLmgiCisKKy8qKgor
ICogXGZpbGUKKyAqIFxicmllZiBDIEFQSTogV3JhcHBlciBmb3IgRGF0ZVRpbWVQYXR0ZXJuR2Vu
ZXJhdG9yICh1bmljb2RlL2R0cHRuZ2VuLmgpLgorICoKKyAqIFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IgcHJvdmlkZXMgZmxleGlibGUgZ2VuZXJhdGlvbiBvZiBkYXRlIGZvcm1hdCBwYXR0ZXJu
cywgCisgKiBsaWtlICJ5eS1NTS1kZCIuIFRoZSB1c2VyIGNhbiBidWlsZCB1cCB0aGUgZ2VuZXJh
dG9yIGJ5IGFkZGluZyBzdWNjZXNzaXZlIAorICogcGF0dGVybnMuIE9uY2UgdGhhdCBpcyBkb25l
LCBhIHF1ZXJ5IGNhbiBiZSBtYWRlIHVzaW5nIGEgInNrZWxldG9uIiwgd2hpY2ggaXMgCisgKiBh
IHBhdHRlcm4gd2hpY2gganVzdCBpbmNsdWRlcyB0aGUgZGVzaXJlZCBmaWVsZHMgYW5kIGxlbmd0
aHMuIFRoZSBnZW5lcmF0b3IgCisgKiB3aWxsIHJldHVybiB0aGUgImJlc3QgZml0IiBwYXR0ZXJu
IGNvcnJlc3BvbmRpbmcgdG8gdGhhdCBza2VsZXRvbi4KKyAqIDxwPlRoZSBtYWluIG1ldGhvZCBw
ZW9wbGUgd2lsbCB1c2UgaXMgdWRhdHBnX2dldEJlc3RQYXR0ZXJuLCBzaW5jZSBub3JtYWxseQor
ICogVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciBpcyBwcmUtYnVpbHQgd2l0aCBkYXRhIGZyb20g
YSBwYXJ0aWN1bGFyIGxvY2FsZS4gCisgKiBIb3dldmVyLCBnZW5lcmF0b3JzIGNhbiBiZSBidWls
dCBkaXJlY3RseSBmcm9tIG90aGVyIGRhdGEgYXMgd2VsbC4KKyAqIDxwPjxpPklzc3VlOiBtYXkg
YmUgdXNlZnVsIHRvIGFsc28gaGF2ZSBhIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyB0aGUgbGlzdCBv
ZiAKKyAqIGZpZWxkcyBpbiBhIHBhdHRlcm4sIGluIG9yZGVyLCBzaW5jZSB3ZSBoYXZlIHRoYXQg
aW50ZXJuYWxseS4KKyAqIFRoYXQgd291bGQgYmUgdXNlZnVsIGZvciBnZXR0aW5nIHRoZSBVSSBv
cmRlciBvZiBmaWVsZCBlbGVtZW50cy48L2k+CisgKi8KKworLyoqCisgKiBPcGFxdWUgdHlwZSBm
b3IgYSBkYXRlL3RpbWUgcGF0dGVybiBnZW5lcmF0b3Igb2JqZWN0LgorICogQHN0YWJsZSBJQ1Ug
My44CisgKi8KK3R5cGVkZWYgdm9pZCAqVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvcjsKKworLyoq
CisgKiBGaWVsZCBudW1iZXIgY29uc3RhbnRzIGZvciB1ZGF0cGdfZ2V0QXBwZW5kSXRlbUZvcm1h
dHMoKSBhbmQgc2ltaWxhciBmdW5jdGlvbnMuCisgKiBUaGVzZSBjb25zdGFudHMgYXJlIHNlcGFy
YXRlIGZyb20gVURhdGVGb3JtYXRGaWVsZCBkZXNwaXRlIHNlbWFudGljIG92ZXJsYXAKKyAqIGJl
Y2F1c2Ugc29tZSBmaWVsZHMgYXJlIG1lcmdlZCBmb3IgdGhlIGRhdGUvdGltZSBwYXR0ZXJuIGdl
bmVyYXRvci4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCit0eXBlZGVmIGVudW0gVURhdGVUaW1l
UGF0dGVybkZpZWxkIHsKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0VS
QV9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX1lFQVJfRklF
TEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19RVUFSVEVSX0ZJRUxE
LAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfTU9OVEhfRklFTEQsCisg
ICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19XRUVLX09GX1lFQVJfRklFTEQs
CisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19XRUVLX09GX01PTlRIX0ZJ
RUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfV0VFS0RBWV9GSUVM
RCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0RBWV9PRl9ZRUFSX0ZJ
RUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfREFZX09GX1dFRUtf
SU5fTU9OVEhfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19E
QVlfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19EQVlQRVJJ
T0RfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19IT1VSX0ZJ
RUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfTUlOVVRFX0ZJRUxE
LAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfU0VDT05EX0ZJRUxELAor
ICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfRlJBQ1RJT05BTF9TRUNPTkRf
RklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19aT05FX0ZJRUxE
LAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfRklFTERfQ09VTlQKK30g
VURhdGVUaW1lUGF0dGVybkZpZWxkOworCisvKioKKyAqIE1hc2tzIHRvIGNvbnRyb2wgZm9yY2lu
ZyB0aGUgbGVuZ3RoIG9mIHNwZWNpZmllZCBmaWVsZHMgaW4gdGhlIHJldHVybmVkCisgKiBwYXR0
ZXJuIHRvIG1hdGNoIHRob3NlIGluIHRoZSBza2VsZXRvbiAod2hlbiB0aGlzIHdvdWxkIG5vdCBo
YXBwZW4KKyAqIG90aGVyd2lzZSkuIFRoZXNlIG1heSBiZSBjb21iaW5lZCB0byBmb3JjZSB0aGUg
bGVuZ3RoIG9mIG11bHRpcGxlIGZpZWxkcy4KKyAqIFVzZWQgd2l0aCB1ZGF0cGdfZ2V0QmVzdFBh
dHRlcm5XaXRoT3B0aW9ucywgdWRhdHBnX3JlcGxhY2VGaWVsZFR5cGVzV2l0aE9wdGlvbnMuCisg
KiBAc3RhYmxlIElDVSA0LjQKKyAqLwordHlwZWRlZiBlbnVtIFVEYXRlVGltZVBhdHRlcm5NYXRj
aE9wdGlvbnMgeworICAgIC8qKiBAc3RhYmxlIElDVSA0LjQgKi8KKyAgICBVREFUUEdfTUFUQ0hf
Tk9fT1BUSU9OUyA9IDAsCisgICAgLyoqIEBzdGFibGUgSUNVIDQuNCAqLworICAgIFVEQVRQR19N
QVRDSF9IT1VSX0ZJRUxEX0xFTkdUSCA9IDEgPDwgVURBVFBHX0hPVVJfRklFTEQsCisgICAgLyoq
IEBpbnRlcm5hbCBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX01JTlVURV9GSUVMRF9MRU5H
VEggPSAxIDw8IFVEQVRQR19NSU5VVEVfRklFTEQsCisgICAgLyoqIEBpbnRlcm5hbCBJQ1UgNC40
ICovCisgICAgVURBVFBHX01BVENIX1NFQ09ORF9GSUVMRF9MRU5HVEggPSAxIDw8IFVEQVRQR19T
RUNPTkRfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDQuNCAqLworICAgIFVEQVRQR19NQVRD
SF9BTExfRklFTERTX0xFTkdUSCA9ICgxIDw8IFVEQVRQR19GSUVMRF9DT1VOVCkgLSAxCit9IFVE
YXRlVGltZVBhdHRlcm5NYXRjaE9wdGlvbnM7CisKKy8qKgorICogU3RhdHVzIHJldHVybiB2YWx1
ZXMgZnJvbSB1ZGF0cGdfYWRkUGF0dGVybigpLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK3R5
cGVkZWYgZW51bSBVRGF0ZVRpbWVQYXR0ZXJuQ29uZmxpY3QgeworICAgIC8qKiBAc3RhYmxlIElD
VSAzLjggKi8KKyAgICBVREFUUEdfTk9fQ09ORkxJQ1QsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19CQVNFX0NPTkZMSUNULAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjgg
Ki8KKyAgICBVREFUUEdfQ09ORkxJQ1QsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAg
IFVEQVRQR19DT05GTElDVF9DT1VOVAorfSBVRGF0ZVRpbWVQYXR0ZXJuQ29uZmxpY3Q7CisKKy8q
KgorICAqIE9wZW4gYSBnZW5lcmF0b3IgYWNjb3JkaW5nIHRvIGEgZ2l2ZW4gbG9jYWxlLgorICAq
IEBwYXJhbSBsb2NhbGUKKyAgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVF
cnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICAqICAgICAgICAgICAgICAgICAg
IGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICAqIEByZXR1cm4gYSBwb2ludGVy
IHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgICogQHN0YWJsZSBJQ1UgMy44CisgICov
CitVX1NUQUJMRSBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICogVV9FWFBPUlQyCit1ZGF0cGdf
b3Blbihjb25zdCBjaGFyICpsb2NhbGUsIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioK
KyAgKiBPcGVuIGFuIGVtcHR5IGdlbmVyYXRvciwgdG8gYmUgY29uc3RydWN0ZWQgd2l0aCB1ZGF0
cGdfYWRkUGF0dGVybiguLi4pIGV0Yy4KKyAgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIg
dG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICAqICAgICAgICAg
ICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICAqIEByZXR1cm4g
YSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgICogQHN0YWJsZSBJQ1Ug
My44CisgICovCitVX1NUQUJMRSBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICogVV9FWFBPUlQy
Cit1ZGF0cGdfb3BlbkVtcHR5KFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAgKiBD
bG9zZSBhIGdlbmVyYXRvci4KKyAgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1l
UGF0dGVybkdlbmVyYXRvci4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIHZv
aWQgVV9FWFBPUlQyCit1ZGF0cGdfY2xvc2UoVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRw
Zyk7CisKKyNpZiBVX1NIT1dfQ1BMVVNQTFVTX0FQSQorCitVX05BTUVTUEFDRV9CRUdJTgorCisv
KioKKyAqIFxjbGFzcyBMb2NhbFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3JQb2ludGVyCisgKiAi
U21hcnQgcG9pbnRlciIgY2xhc3MsIGNsb3NlcyBhIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3Ig
dmlhIHVkYXRwZ19jbG9zZSgpLgorICogRm9yIG1vc3QgbWV0aG9kcyBzZWUgdGhlIExvY2FsUG9p
bnRlckJhc2UgYmFzZSBjbGFzcy4KKyAqCisgKiBAc2VlIExvY2FsUG9pbnRlckJhc2UKKyAqIEBz
ZWUgTG9jYWxQb2ludGVyCisgKiBAc3RhYmxlIElDVSA0LjQKKyAqLworVV9ERUZJTkVfTE9DQUxf
T1BFTl9QT0lOVEVSKExvY2FsVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvclBvaW50ZXIsIFVEYXRl
VGltZVBhdHRlcm5HZW5lcmF0b3IsIHVkYXRwZ19jbG9zZSk7CisKK1VfTkFNRVNQQUNFX0VORAor
CisjZW5kaWYKKworLyoqCisgICogQ3JlYXRlIGEgY29weSBwZiBhIGdlbmVyYXRvci4KKyAgKiBA
cGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciB0byBiZSBj
b3BpZWQuCisgICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2Rl
IHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAgKiAgICAgICAgICAgICAgICAgICBmYWlsdXJl
IGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAgKiBAcmV0dXJuIGEgcG9pbnRlciB0byBhIG5l
dyBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBzdGFibGUgSUNVIDMuOAorICovCitV
X1NUQUJMRSBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICogVV9FWFBPUlQyCit1ZGF0cGdfY2xv
bmUoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywgVUVycm9yQ29kZSAqcEVy
cm9yQ29kZSk7CisKKy8qKgorICogR2V0IHRoZSBiZXN0IHBhdHRlcm4gbWF0Y2hpbmcgdGhlIGlu
cHV0IHNrZWxldG9uLiBJdCBpcyBndWFyYW50ZWVkIHRvCisgKiBoYXZlIGFsbCBvZiB0aGUgZmll
bGRzIGluIHRoZSBza2VsZXRvbi4KKyAqIAorICogTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gdXNl
cyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOgorICogSXQgdXNlcyBhIHN0
YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdoaWNoIGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Ig
b2JqZWN0LAorICogcmF0aGVyIHRoYW4gY3JlYXRpbmcgb25lIGZvciBlYWNoIGZ1bmN0aW9uIGNh
bGwuCisgKiBDb25zZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1bmN0aW9uIGRvIG5vdCBhZmZlY3Qg
ZWFjaCBvdGhlciwKKyAqIGJ1dCB0aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJl
bnRseSBvbiBhIHNpbmdsZSBnZW5lcmF0b3Igb2JqZWN0LgorICogCisgKiBAcGFyYW0gZHRwZyBh
IHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBza2VsZXRv
bgorICogICAgICAgICAgICBUaGUgc2tlbGV0b24gaXMgYSBwYXR0ZXJuIGNvbnRhaW5pbmcgb25s
eSB0aGUgdmFyaWFibGUgZmllbGRzLgorICogICAgICAgICAgICBGb3IgZXhhbXBsZSwgIk1NTWRk
IiBhbmQgIm1taGgiIGFyZSBza2VsZXRvbnMuCisgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGgg
b2Ygc2tlbGV0b24KKyAqIEBwYXJhbSBiZXN0UGF0dGVybgorICogICAgICAgICAgICBUaGUgYmVz
dCBwYXR0ZXJuIGZvdW5kIGZyb20gdGhlIGdpdmVuIHNrZWxldG9uLgorICogQHBhcmFtIGNhcGFj
aXR5IHRoZSBjYXBhY2l0eSBvZiBiZXN0UGF0dGVybi4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEg
cG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAg
ICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAqIEBy
ZXR1cm4gdGhlIGxlbmd0aCBvZiBiZXN0UGF0dGVybi4KKyAqIEBzdGFibGUgSUNVIDMuOAorICov
CitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRhdHBnX2dldEJlc3RQYXR0ZXJuKFVEYXRl
VGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
VUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IGxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICBV
Q2hhciAqYmVzdFBhdHRlcm4sIGludDMyX3QgY2FwYWNpdHksCisgICAgICAgICAgICAgICAgICAg
ICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICogR2V0IHRoZSBiZXN0IHBhdHRl
cm4gbWF0Y2hpbmcgdGhlIGlucHV0IHNrZWxldG9uLiBJdCBpcyBndWFyYW50ZWVkIHRvCisgKiBo
YXZlIGFsbCBvZiB0aGUgZmllbGRzIGluIHRoZSBza2VsZXRvbi4KKyAqIAorICogTm90ZSB0aGF0
IHRoaXMgZnVuY3Rpb24gdXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9y
OgorICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdoaWNoIGlzIHNldCB1cCBm
b3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICogcmF0aGVyIHRoYW4gY3JlYXRpbmcgb25lIGZv
ciBlYWNoIGZ1bmN0aW9uIGNhbGwuCisgKiBDb25zZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1bmN0
aW9uIGRvIG5vdCBhZmZlY3QgZWFjaCBvdGhlciwKKyAqIGJ1dCB0aGlzIGZ1bmN0aW9uIGNhbm5v
dCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmdsZSBnZW5lcmF0b3Igb2JqZWN0LgorICog
CisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4K
KyAqIEBwYXJhbSBza2VsZXRvbgorICogICAgICAgICAgICBUaGUgc2tlbGV0b24gaXMgYSBwYXR0
ZXJuIGNvbnRhaW5pbmcgb25seSB0aGUgdmFyaWFibGUgZmllbGRzLgorICogICAgICAgICAgICBG
b3IgZXhhbXBsZSwgIk1NTWRkIiBhbmQgIm1taGgiIGFyZSBza2VsZXRvbnMuCisgKiBAcGFyYW0g
bGVuZ3RoIHRoZSBsZW5ndGggb2Ygc2tlbGV0b24KKyAqIEBwYXJhbSBvcHRpb25zCisgKiAgICAg
ICAgICAgIE9wdGlvbnMgZm9yIGZvcmNpbmcgdGhlIGxlbmd0aCBvZiBzcGVjaWZpZWQgZmllbGRz
IGluIHRoZQorICogICAgICAgICAgICByZXR1cm5lZCBwYXR0ZXJuIHRvIG1hdGNoIHRob3NlIGlu
IHRoZSBza2VsZXRvbiAod2hlbiB0aGlzCisgKiAgICAgICAgICAgIHdvdWxkIG5vdCBoYXBwZW4g
b3RoZXJ3aXNlKS4gRm9yIGRlZmF1bHQgYmVoYXZpb3IsIHVzZQorICogICAgICAgICAgICBVREFU
UEdfTUFUQ0hfTk9fT1BUSU9OUy4KKyAqIEBwYXJhbSBiZXN0UGF0dGVybgorICogICAgICAgICAg
ICBUaGUgYmVzdCBwYXR0ZXJuIGZvdW5kIGZyb20gdGhlIGdpdmVuIHNrZWxldG9uLgorICogQHBh
cmFtIGNhcGFjaXR5CisgKiAgICAgICAgICAgIHRoZSBjYXBhY2l0eSBvZiBiZXN0UGF0dGVybi4K
KyAqIEBwYXJhbSBwRXJyb3JDb2RlCisgKiAgICAgICAgICAgIGEgcG9pbnRlciB0byB0aGUgVUVy
cm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAgICAgIGZhaWx1cmUg
YmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGJlc3RQ
YXR0ZXJuLgorICogQHN0YWJsZSBJQ1UgNC40CisgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBP
UlQyCit1ZGF0cGdfZ2V0QmVzdFBhdHRlcm5XaXRoT3B0aW9ucyhVRGF0ZVRpbWVQYXR0ZXJuR2Vu
ZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNo
YXIgKnNrZWxldG9uLCBpbnQzMl90IGxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFVEYXRlVGltZVBhdHRlcm5NYXRjaE9wdGlvbnMgb3B0aW9ucywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFVDaGFyICpiZXN0UGF0dGVybiwgaW50MzJfdCBjYXBhY2l0
eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNv
ZGUpOworCisvKioKKyAgKiBHZXQgYSB1bmlxdWUgc2tlbGV0b24gZnJvbSBhIGdpdmVuIHBhdHRl
cm4uIEZvciBleGFtcGxlLAorICAqIGJvdGggIk1NTS1kZCIgYW5kICJkZC9NTU0iIHByb2R1Y2Ug
dGhlIHNrZWxldG9uICJNTU1kZCIuCisgICogCisgICogTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24g
dXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOgorICAqIEl0IHVzZXMg
YSBzdGF0ZWZ1bCBwYXR0ZXJuIHBhcnNlciB3aGljaCBpcyBzZXQgdXAgZm9yIGVhY2ggZ2VuZXJh
dG9yIG9iamVjdCwKKyAgKiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rp
b24gY2FsbC4KKyAgKiBDb25zZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1bmN0aW9uIGRvIG5vdCBh
ZmZlY3QgZWFjaCBvdGhlciwKKyAgKiBidXQgdGhpcyBmdW5jdGlvbiBjYW5ub3QgYmUgdXNlZCBj
b25jdXJyZW50bHkgb24gYSBzaW5nbGUgZ2VuZXJhdG9yIG9iamVjdC4KKyAgKgorICAqIEBwYXJh
bSBkdHBnICAgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAgKiBA
cGFyYW0gcGF0dGVybiAgaW5wdXQgcGF0dGVybiwgc3VjaCBhcyAiZGQvTU1NIi4KKyAgKiBAcGFy
YW0gbGVuZ3RoICAgdGhlIGxlbmd0aCBvZiBwYXR0ZXJuLgorICAqIEBwYXJhbSBza2VsZXRvbiBz
dWNoIGFzICJNTU1kZCIKKyAgKiBAcGFyYW0gY2FwYWNpdHkgdGhlIGNhcGFjaXR5IG9mIHNrZWxl
dG9uLgorICAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3
aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJl
Zm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAgKiBAcmV0dXJuIHRoZSBsZW5ndGggb2Ygc2tlbGV0
b24uCisgICogQHN0YWJsZSBJQ1UgMy44CisgICovCitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JU
MgordWRhdHBnX2dldFNrZWxldG9uKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisg
ICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMyX3QgbGVuZ3RoLAor
ICAgICAgICAgICAgICAgICAgIFVDaGFyICpza2VsZXRvbiwgaW50MzJfdCBjYXBhY2l0eSwKKyAg
ICAgICAgICAgICAgICAgICBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBHZXQg
YSB1bmlxdWUgYmFzZSBza2VsZXRvbiBmcm9tIGEgZ2l2ZW4gcGF0dGVybi4gVGhpcyBpcyB0aGUg
c2FtZQorICogYXMgdGhlIHNrZWxldG9uLCBleGNlcHQgdGhhdCBkaWZmZXJlbmNlcyBpbiBsZW5n
dGggYXJlIG1pbmltaXplZCBzbworICogYXMgdG8gb25seSBwcmVzZXJ2ZSB0aGUgZGlmZmVyZW5j
ZSBiZXR3ZWVuIHN0cmluZyBhbmQgbnVtZXJpYyBmb3JtLiBTbworICogZm9yIGV4YW1wbGUsIGJv
dGggIk1NTS1kZCIgYW5kICJkL01NTSIgcHJvZHVjZSB0aGUgc2tlbGV0b24gIk1NTWQiCisgKiAo
bm90aWNlIHRoZSBzaW5nbGUgZCkuCisgKgorICogTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gdXNl
cyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOgorICogSXQgdXNlcyBhIHN0
YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdoaWNoIGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Ig
b2JqZWN0LAorICogcmF0aGVyIHRoYW4gY3JlYXRpbmcgb25lIGZvciBlYWNoIGZ1bmN0aW9uIGNh
bGwuCisgKiBDb25zZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1bmN0aW9uIGRvIG5vdCBhZmZlY3Qg
ZWFjaCBvdGhlciwKKyAqIGJ1dCB0aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJl
bnRseSBvbiBhIHNpbmdsZSBnZW5lcmF0b3Igb2JqZWN0LgorICoKKyAqIEBwYXJhbSBkdHBnICAg
ICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwYXR0
ZXJuICBpbnB1dCBwYXR0ZXJuLCBzdWNoIGFzICJkZC9NTU0iLgorICogQHBhcmFtIGxlbmd0aCAg
IHRoZSBsZW5ndGggb2YgcGF0dGVybi4KKyAqIEBwYXJhbSBiYXNlU2tlbGV0b24gc3VjaCBhcyAi
TWQiCisgKiBAcGFyYW0gY2FwYWNpdHkgdGhlIGNhcGFjaXR5IG9mIGJhc2Ugc2tlbGV0b24uCisg
KiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVz
dCBub3QgaW5kaWNhdGUgYQorICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUg
ZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1cm4gdGhlIGxlbmd0aCBvZiBiYXNlU2tlbGV0b24uCisg
KiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3VkYXRw
Z19nZXRCYXNlU2tlbGV0b24oVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMyX3QgbGVuZ3RoLAor
ICAgICAgICAgICAgICAgICAgICAgICBVQ2hhciAqYmFzZVNrZWxldG9uLCBpbnQzMl90IGNhcGFj
aXR5LAorICAgICAgICAgICAgICAgICAgICAgICBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKwor
LyoqCisgKiBBZGRzIGEgcGF0dGVybiB0byB0aGUgZ2VuZXJhdG9yLiBJZiB0aGUgcGF0dGVybiBo
YXMgdGhlIHNhbWUgc2tlbGV0b24gYXMKKyAqIGFuIGV4aXN0aW5nIHBhdHRlcm4sIGFuZCB0aGUg
b3ZlcnJpZGUgcGFyYW1ldGVyIGlzIHNldCwgdGhlbiB0aGUgcHJldmlvdXMKKyAqIHZhbHVlIGlz
IG92ZXJyaWRlbi4gT3RoZXJ3aXNlLCB0aGUgcHJldmlvdXMgdmFsdWUgaXMgcmV0YWluZWQuIElu
IGVpdGhlcgorICogY2FzZSwgdGhlIGNvbmZsaWN0aW5nIHN0YXR1cyBpcyBzZXQgYW5kIHByZXZp
b3VzIHZhbGUgaXMgc3RvcmVkIGluIAorICogY29uZmxpY3RpbmcgcGF0dGVybi4KKyAqIDxwPgor
ICogTm90ZSB0aGF0IHNpbmdsZS1maWVsZCBwYXR0ZXJucyAobGlrZSAiTU1NIikgYXJlIGF1dG9t
YXRpY2FsbHkgYWRkZWQsIGFuZAorICogZG9uJ3QgbmVlZCB0byBiZSBhZGRlZCBleHBsaWNpdGx5
IQorICoKKyAqIEBwYXJhbSBkdHBnICAgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvci4KKyAqIEBwYXJhbSBwYXR0ZXJuICBpbnB1dCBwYXR0ZXJuLCBzdWNoIGFzICJkZC9N
TU0iCisgKiBAcGFyYW0gcGF0dGVybkxlbmd0aCB0aGUgbGVuZ3RoIG9mIHBhdHRlcm4uCisgKiBA
cGFyYW0gb3ZlcnJpZGUgIFdoZW4gZXhpc3RpbmcgdmFsdWVzIGFyZSB0byBiZSBvdmVycmlkZGVu
IHVzZSB0cnVlLCAKKyAqICAgICAgICAgICAgICAgICAgb3RoZXJ3aXNlIHVzZSBmYWxzZS4KKyAq
IEBwYXJhbSBjb25mbGljdGluZ1BhdHRlcm4gIFByZXZpb3VzIHBhdHRlcm4gd2l0aCB0aGUgc2Ft
ZSBza2VsZXRvbi4KKyAqIEBwYXJhbSBjYXBhY2l0eSB0aGUgY2FwYWNpdHkgb2YgY29uZmxpY3Rp
bmdQYXR0ZXJuLgorICogQHBhcmFtIHBMZW5ndGggYSBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2Yg
Y29uZmxpY3RpbmdQYXR0ZXJuLgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRo
ZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAg
ICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0dXJuIGNvbmZsaWN0
aW5nIHN0YXR1cy4gVGhlIHZhbHVlIGNvdWxkIGJlIFVEQVRQR19OT19DT05GTElDVCwgCisgKiAg
ICAgICAgICAgICAgICAgIFVEQVRQR19CQVNFX0NPTkZMSUNUIG9yIFVEQVRQR19DT05GTElDVC4K
KyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBVRGF0ZVRpbWVQYXR0ZXJuQ29uZmxp
Y3QgVV9FWFBPUlQyCit1ZGF0cGdfYWRkUGF0dGVybihVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9y
ICpkdHBnLAorICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMyX3Qg
cGF0dGVybkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgIFVCb29sIG92ZXJyaWRlLAorICAgICAg
ICAgICAgICAgICAgVUNoYXIgKmNvbmZsaWN0aW5nUGF0dGVybiwgaW50MzJfdCBjYXBhY2l0eSwg
aW50MzJfdCAqcExlbmd0aCwKKyAgICAgICAgICAgICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNv
ZGUpOworCisvKioKKyAgKiBBbiBBcHBlbmRJdGVtIGZvcm1hdCBpcyBhIHBhdHRlcm4gdXNlZCB0
byBhcHBlbmQgYSBmaWVsZCBpZiB0aGVyZSBpcyBubworICAqIGdvb2QgbWF0Y2guIEZvciBleGFt
cGxlLCBzdXBwb3NlIHRoYXQgdGhlIGlucHV0IHNrZWxldG9uIGlzICJHeXl5eU1NTWQiLAorICAq
IGFuZCB0aGVyZSBpcyBubyBtYXRjaGluZyBwYXR0ZXJuIGludGVybmFsbHksIGJ1dCB0aGVyZSBp
cyBhIHBhdHRlcm4KKyAgKiBtYXRjaGluZyAieXl5eU1NTWQiLCBzYXkgImQtTU0teXl5eSIuIFRo
ZW4gdGhhdCBwYXR0ZXJuIGlzIHVzZWQsIHBsdXMgdGhlCisgICogRy4gVGhlIHdheSB0aGVzZSB0
d28gYXJlIGNvbmpvaW5lZCBpcyBieSB1c2luZyB0aGUgQXBwZW5kSXRlbUZvcm1hdCBmb3IgRwor
ICAqIChlcmEpLiBTbyBpZiB0aGF0IHZhbHVlIGlzLCBzYXkgInswfSwgezF9IiB0aGVuIHRoZSBm
aW5hbCByZXN1bHRpbmcKKyAgKiBwYXR0ZXJuIGlzICJkLU1NLXl5eXksIEciLgorICAqIDxwPgor
ICAqIFRoZXJlIGFyZSBhY3R1YWxseSB0aHJlZSBhdmFpbGFibGUgdmFyaWFibGVzOiB7MH0gaXMg
dGhlIHBhdHRlcm4gc28gZmFyLAorICAqIHsxfSBpcyB0aGUgZWxlbWVudCB3ZSBhcmUgYWRkaW5n
LCBhbmQgezJ9IGlzIHRoZSBuYW1lIG9mIHRoZSBlbGVtZW50LgorICAqIDxwPgorICAqIFRoaXMg
cmVmbGVjdHMgdGhlIHdheSB0aGF0IHRoZSBDTERSIGRhdGEgaXMgb3JnYW5pemVkLgorICAqCisg
ICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4K
KyAgKiBAcGFyYW0gZmllbGQgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCwgc3VjaCBhcyBVREFUUEdf
RVJBX0ZJRUxECisgICogQHBhcmFtIHZhbHVlICBwYXR0ZXJuLCBzdWNoIGFzICJ7MH0sIHsxfSIK
KyAgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGggb2YgdmFsdWUuCisgICogQHN0YWJsZSBJQ1Ug
My44CisgICovCitVX1NUQUJMRSB2b2lkIFVfRVhQT1JUMgordWRhdHBnX3NldEFwcGVuZEl0ZW1G
b3JtYXQoVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCBmaWVsZCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IFVDaGFyICp2YWx1ZSwgaW50MzJfdCBsZW5ndGgpOworCisvKioKKyAq
IEdldHRlciBjb3JyZXNwb25kaW5nIHRvIHNldEFwcGVuZEl0ZW1Gb3JtYXQuIFZhbHVlcyBiZWxv
dyAwIG9yIGF0IG9yCisgKiBhYm92ZSBVREFUUEdfRklFTERfQ09VTlQgYXJlIGlsbGVnYWwgYXJn
dW1lbnRzLgorICoKKyAqIEBwYXJhbSBkdHBnICAgQSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gZmllbGQgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCwgc3Vj
aCBhcyBVREFUUEdfRVJBX0ZJRUxECisgKiBAcGFyYW0gcExlbmd0aCBBIHBvaW50ZXIgdGhhdCB3
aWxsIHJlY2VpdmUgdGhlIGxlbmd0aCBvZiBhcHBlbmRJdGVtRm9ybWF0LgorICogQHJldHVybiBh
cHBlbmRJdGVtRm9ybWF0IGZvciBmaWVsZC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NU
QUJMRSBjb25zdCBVQ2hhciAqIFVfRVhQT1JUMgordWRhdHBnX2dldEFwcGVuZEl0ZW1Gb3JtYXQo
Y29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCBmaWVsZCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludDMyX3QgKnBMZW5ndGgpOworCisvKioKKyAgICogU2V0IHRoZSBuYW1lIG9m
IGZpZWxkLCBlZyAiZXJhIiBpbiBFbmdsaXNoIGZvciBFUkEuIFRoZXNlIGFyZSBvbmx5CisgICAq
IHVzZWQgaWYgdGhlIGNvcnJlc3BvbmRpbmcgQXBwZW5kSXRlbUZvcm1hdCBpcyB1c2VkLCBhbmQg
aWYgaXQgY29udGFpbnMgYQorICAgKiB7Mn0gdmFyaWFibGUuCisgICAqIDxwPgorICAgKiBUaGlz
IHJlZmxlY3RzIHRoZSB3YXkgdGhhdCB0aGUgQ0xEUiBkYXRhIGlzIG9yZ2FuaXplZC4KKyAgICoK
KyAgICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ci4KKyAgICogQHBhcmFtIGZpZWxkICBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQKKyAgICogQHBhcmFt
IHZhbHVlICBuYW1lIGZvciB0aGUgZmllbGQuCisgICAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0
aCBvZiB2YWx1ZS4KKyAgICogQHN0YWJsZSBJQ1UgMy44CisgICAqLworVV9TVEFCTEUgdm9pZCBV
X0VYUE9SVDIKK3VkYXRwZ19zZXRBcHBlbmRJdGVtTmFtZShVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5GaWVs
ZCBmaWVsZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqdmFsdWUsIGlu
dDMyX3QgbGVuZ3RoKTsKKworLyoqCisgKiBHZXR0ZXIgY29ycmVzcG9uZGluZyB0byBzZXRBcHBl
bmRJdGVtTmFtZXMuIFZhbHVlcyBiZWxvdyAwIG9yIGF0IG9yIGFib3ZlCisgKiBVREFUUEdfRklF
TERfQ09VTlQgYXJlIGlsbGVnYWwgYXJndW1lbnRzLgorICoKKyAqIEBwYXJhbSBkdHBnICAgYSBw
b2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gZmllbGQgIFVE
YXRlVGltZVBhdHRlcm5GaWVsZCwgc3VjaCBhcyBVREFUUEdfRVJBX0ZJRUxECisgKiBAcGFyYW0g
cExlbmd0aCBBIHBvaW50ZXIgdGhhdCB3aWxsIHJlY2VpdmUgdGhlIGxlbmd0aCBvZiB0aGUgbmFt
ZSBmb3IgZmllbGQuCisgKiBAcmV0dXJuIG5hbWUgZm9yIGZpZWxkCisgKiBAc3RhYmxlIElDVSAz
LjgKKyAqLworVV9TVEFCTEUgY29uc3QgVUNoYXIgKiBVX0VYUE9SVDIKK3VkYXRwZ19nZXRBcHBl
bmRJdGVtTmFtZShjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAg
ICAgICAgICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCBmaWVsZCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICBpbnQzMl90ICpwTGVuZ3RoKTsKKworLyoqCisgKiBUaGUgZGF0ZSB0
aW1lIGZvcm1hdCBpcyBhIG1lc3NhZ2UgZm9ybWF0IHBhdHRlcm4gdXNlZCB0byBjb21wb3NlIGRh
dGUgYW5kCisgKiB0aW1lIHBhdHRlcm5zLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyAiezB9IHsxfSIs
IHdoZXJlIHswfSB3aWxsIGJlIHJlcGxhY2VkCisgKiBieSB0aGUgZGF0ZSBwYXR0ZXJuIGFuZCB7
MX0gd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgdGltZSBwYXR0ZXJuLgorICogPHA+CisgKiBUaGlz
IGlzIHVzZWQgd2hlbiB0aGUgaW5wdXQgc2tlbGV0b24gY29udGFpbnMgYm90aCBkYXRlIGFuZCB0
aW1lIGZpZWxkcywKKyAqIGJ1dCB0aGVyZSBpcyBub3QgYSBjbG9zZSBtYXRjaCBhbW9uZyB0aGUg
YWRkZWQgcGF0dGVybnMuIEZvciBleGFtcGxlLAorICogc3VwcG9zZSB0aGF0IHRoaXMgb2JqZWN0
IHdhcyBjcmVhdGVkIGJ5IGFkZGluZyAiZGQtTU1NIiBhbmQgImhoOm1tIiwgYW5kCisgKiBpdHMg
ZGF0ZXRpbWVGb3JtYXQgaXMgdGhlIGRlZmF1bHQgInswfSB7MX0iLiBUaGVuIGlmIHRoZSBpbnB1
dCBza2VsZXRvbgorICogaXMgIk1NTWRobW0iLCB0aGVyZSBpcyBub3QgYW4gZXhhY3QgbWF0Y2gs
IHNvIHRoZSBpbnB1dCBza2VsZXRvbiBpcworICogYnJva2VuIHVwIGludG8gdHdvIGNvbXBvbmVu
dHMgIk1NTWQiIGFuZCAiaG1tIi4gVGhlcmUgYXJlIGNsb3NlIG1hdGNoZXMKKyAqIGZvciB0aG9z
ZSB0d28gc2tlbGV0b25zLCBzbyB0aGUgcmVzdWx0IGlzIHB1dCB0b2dldGhlciB3aXRoIHRoaXMg
cGF0dGVybiwKKyAqIHJlc3VsdGluZyBpbiAiZC1NTU0gaDptbSIuCisgKgorICogQHBhcmFtIGR0
cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gZHRG
b3JtYXQKKyAqICAgICAgICAgICAgbWVzc2FnZSBmb3JtYXQgcGF0dGVybiwgaGVyZSB7MH0gd2ls
bCBiZSByZXBsYWNlZCBieSB0aGUgZGF0ZQorICogICAgICAgICAgICBwYXR0ZXJuIGFuZCB7MX0g
d2lsbCBiZSByZXBsYWNlZCBieSB0aGUgdGltZSBwYXR0ZXJuLgorICogQHBhcmFtIGxlbmd0aCB0
aGUgbGVuZ3RoIG9mIGR0Rm9ybWF0LgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxF
IHZvaWQgVV9FWFBPUlQyCit1ZGF0cGdfc2V0RGF0ZVRpbWVGb3JtYXQoY29uc3QgVURhdGVUaW1l
UGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBV
Q2hhciAqZHRGb3JtYXQsIGludDMyX3QgbGVuZ3RoKTsKKworLyoqCisgKiBHZXR0ZXIgY29ycmVz
cG9uZGluZyB0byBzZXREYXRlVGltZUZvcm1hdC4KKyAqIEBwYXJhbSBkdHBnICAgYSBwb2ludGVy
IHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gcExlbmd0aCBBIHBvaW50
ZXIgdGhhdCB3aWxsIHJlY2VpdmUgdGhlIGxlbmd0aCBvZiB0aGUgZm9ybWF0CisgKiBAcmV0dXJu
IGRhdGVUaW1lRm9ybWF0LgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0
IFVDaGFyICogVV9FWFBPUlQyCit1ZGF0cGdfZ2V0RGF0ZVRpbWVGb3JtYXQoY29uc3QgVURhdGVU
aW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICAgICBpbnQz
Ml90ICpwTGVuZ3RoKTsKKworLyoqCisgKiBUaGUgZGVjaW1hbCB2YWx1ZSBpcyB1c2VkIGluIGZv
cm1hdHRpbmcgZnJhY3Rpb25zIG9mIHNlY29uZHMuIElmIHRoZQorICogc2tlbGV0b24gY29udGFp
bnMgZnJhY3Rpb25hbCBzZWNvbmRzLCB0aGVuIHRoaXMgaXMgdXNlZCB3aXRoIHRoZQorICogZnJh
Y3Rpb25hbCBzZWNvbmRzLiBGb3IgZXhhbXBsZSwgc3VwcG9zZSB0aGF0IHRoZSBpbnB1dCBwYXR0
ZXJuIGlzCisgKiAiaGhtbXNzU1NTUyIsIGFuZCB0aGUgYmVzdCBtYXRjaGluZyBwYXR0ZXJuIGlu
dGVybmFsbHkgaXMgIkg6bW06c3MiLCBhbmQKKyAqIHRoZSBkZWNpbWFsIHN0cmluZyBpcyAiLCIu
IFRoZW4gdGhlIHJlc3VsdGluZyBwYXR0ZXJuIGlzIG1vZGlmaWVkIHRvIGJlCisgKiAiSDptbTpz
cyxTU1NTIgorICoKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yLgorICogQHBhcmFtIGRlY2ltYWwKKyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0
aCBvZiBkZWNpbWFsLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIHZvaWQgVV9F
WFBPUlQyCit1ZGF0cGdfc2V0RGVjaW1hbChVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBn
LAorICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKmRlY2ltYWwsIGludDMyX3QgbGVuZ3Ro
KTsKKworLyoqCisgKiBHZXR0ZXIgY29ycmVzcG9uZGluZyB0byBzZXREZWNpbWFsLgorICogCisg
KiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAq
IEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwgcmVjZWl2ZSB0aGUgbGVuZ3RoIG9m
IHRoZSBkZWNpbWFsIHN0cmluZy4KKyAqIEByZXR1cm4gY29ycmVzcG9uZGluZyB0byB0aGUgZGVj
aW1hbCBwb2ludC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBjb25zdCBVQ2hh
ciAqIFVfRVhQT1JUMgordWRhdHBnX2dldERlY2ltYWwoY29uc3QgVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBMZW5ndGgpOworCisv
KioKKyAqIEFkanVzdHMgdGhlIGZpZWxkIHR5cGVzICh3aWR0aCBhbmQgc3VidHlwZSkgb2YgYSBw
YXR0ZXJuIHRvIG1hdGNoIHdoYXQgaXMKKyAqIGluIGEgc2tlbGV0b24uIFRoYXQgaXMsIGlmIHlv
dSBzdXBwbHkgYSBwYXR0ZXJuIGxpa2UgImQtTSBIOm0iLCBhbmQgYQorICogc2tlbGV0b24gb2Yg
Ik1NTU1kZGhobW0iLCB0aGVuIHRoZSBpbnB1dCBwYXR0ZXJuIGlzIGFkanVzdGVkIHRvIGJlCisg
KiAiZGQtTU1NTSBoaDptbSIuIFRoaXMgaXMgdXNlZCBpbnRlcm5hbGx5IHRvIGdldCB0aGUgYmVz
dCBtYXRjaCBmb3IgdGhlCisgKiBpbnB1dCBza2VsZXRvbiwgYnV0IGNhbiBhbHNvIGJlIHVzZWQg
ZXh0ZXJuYWxseS4KKyAqCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNv
bnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0
dGVybiBwYXJzZXIgd2hpY2ggaXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisg
KiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENv
bnNlY3V0aXZlIGNhbGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVy
LAorICogYnV0IHRoaXMgZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEg
c2luZ2xlIGdlbmVyYXRvciBvYmplY3QuCisgKgorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRv
IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gcGF0dGVybiBJbnB1dCBwYXR0
ZXJuCisgKiBAcGFyYW0gcGF0dGVybkxlbmd0aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHBhdHRlcm4u
CisgKiBAcGFyYW0gc2tlbGV0b24KKyAqIEBwYXJhbSBza2VsZXRvbkxlbmd0aCB0aGUgbGVuZ3Ro
IG9mIGlucHV0IHNrZWxldG9uLgorICogQHBhcmFtIGRlc3QgIHBhdHRlcm4gYWRqdXN0ZWQgdG8g
bWF0Y2ggdGhlIHNrZWxldG9uIGZpZWxkcyB3aWR0aHMgYW5kIHN1YnR5cGVzLgorICogQHBhcmFt
IGRlc3RDYXBhY2l0eSB0aGUgY2FwYWNpdHkgb2YgZGVzdC4KKyAqIEBwYXJhbSBwRXJyb3JDb2Rl
IGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisg
KiAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICog
QHJldHVybiB0aGUgbGVuZ3RoIG9mIGRlc3QuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9T
VEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3VkYXRwZ19yZXBsYWNlRmllbGRUeXBlcyhVRGF0ZVRp
bWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IFVDaGFyICpwYXR0ZXJuLCBpbnQzMl90IHBhdHRlcm5MZW5ndGgsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IHNrZWxldG9uTGVuZ3RoLAor
ICAgICAgICAgICAgICAgICAgICAgICAgIFVDaGFyICpkZXN0LCBpbnQzMl90IGRlc3RDYXBhY2l0
eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKwor
LyoqCisgKiBBZGp1c3RzIHRoZSBmaWVsZCB0eXBlcyAod2lkdGggYW5kIHN1YnR5cGUpIG9mIGEg
cGF0dGVybiB0byBtYXRjaCB3aGF0IGlzCisgKiBpbiBhIHNrZWxldG9uLiBUaGF0IGlzLCBpZiB5
b3Ugc3VwcGx5IGEgcGF0dGVybiBsaWtlICJkLU0gSDptIiwgYW5kIGEKKyAqIHNrZWxldG9uIG9m
ICJNTU1NZGRoaG1tIiwgdGhlbiB0aGUgaW5wdXQgcGF0dGVybiBpcyBhZGp1c3RlZCB0byBiZQor
ICogImRkLU1NTU0gaGg6bW0iLiBUaGlzIGlzIHVzZWQgaW50ZXJuYWxseSB0byBnZXQgdGhlIGJl
c3QgbWF0Y2ggZm9yIHRoZQorICogaW5wdXQgc2tlbGV0b24sIGJ1dCBjYW4gYWxzbyBiZSB1c2Vk
IGV4dGVybmFsbHkuCisgKgorICogTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gdXNlcyBhIG5vbi1j
b25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOgorICogSXQgdXNlcyBhIHN0YXRlZnVsIHBh
dHRlcm4gcGFyc2VyIHdoaWNoIGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAor
ICogcmF0aGVyIHRoYW4gY3JlYXRpbmcgb25lIGZvciBlYWNoIGZ1bmN0aW9uIGNhbGwuCisgKiBD
b25zZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1bmN0aW9uIGRvIG5vdCBhZmZlY3QgZWFjaCBvdGhl
ciwKKyAqIGJ1dCB0aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBh
IHNpbmdsZSBnZW5lcmF0b3Igb2JqZWN0LgorICoKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0
byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBhdHRlcm4gSW5wdXQgcGF0
dGVybgorICogQHBhcmFtIHBhdHRlcm5MZW5ndGggdGhlIGxlbmd0aCBvZiBpbnB1dCBwYXR0ZXJu
LgorICogQHBhcmFtIHNrZWxldG9uCisgKiBAcGFyYW0gc2tlbGV0b25MZW5ndGggdGhlIGxlbmd0
aCBvZiBpbnB1dCBza2VsZXRvbi4KKyAqIEBwYXJhbSBvcHRpb25zCisgKiAgICAgICAgICAgIE9w
dGlvbnMgY29udHJvbGxpbmcgd2hldGhlciB0aGUgbGVuZ3RoIG9mIHNwZWNpZmllZCBmaWVsZHMg
aW4gdGhlCisgKiAgICAgICAgICAgIHBhdHRlcm4gYXJlIGFkanVzdGVkIHRvIG1hdGNoIHRob3Nl
IGluIHRoZSBza2VsZXRvbiAod2hlbiB0aGlzCisgKiAgICAgICAgICAgIHdvdWxkIG5vdCBoYXBw
ZW4gb3RoZXJ3aXNlKS4gRm9yIGRlZmF1bHQgYmVoYXZpb3IsIHVzZQorICogICAgICAgICAgICBV
REFUUEdfTUFUQ0hfTk9fT1BUSU9OUy4KKyAqIEBwYXJhbSBkZXN0ICBwYXR0ZXJuIGFkanVzdGVk
IHRvIG1hdGNoIHRoZSBza2VsZXRvbiBmaWVsZHMgd2lkdGhzIGFuZCBzdWJ0eXBlcy4KKyAqIEBw
YXJhbSBkZXN0Q2FwYWNpdHkgdGhlIGNhcGFjaXR5IG9mIGRlc3QuCisgKiBAcGFyYW0gcEVycm9y
Q29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUg
YQorICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4K
KyAqIEByZXR1cm4gdGhlIGxlbmd0aCBvZiBkZXN0LgorICogQHN0YWJsZSBJQ1UgNC40CisgKi8K
K1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQyCit1ZGF0cGdfcmVwbGFjZUZpZWxkVHlwZXNXaXRo
T3B0aW9ucyhVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMyX3QgcGF0dGVy
bkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFy
ICpza2VsZXRvbiwgaW50MzJfdCBza2VsZXRvbkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5NYXRjaE9wdGlvbnMgb3B0aW9ucywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVDaGFyICpkZXN0LCBpbnQzMl90IGRl
c3RDYXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVFcnJvckNv
ZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIFJldHVybiBhIFVFbnVtZXJhdGlvbiBsaXN0IG9m
IGFsbCB0aGUgc2tlbGV0b25zIGluIGNhbm9uaWNhbCBmb3JtLgorICogQ2FsbCB1ZGF0cGdfZ2V0
UGF0dGVybkZvclNrZWxldG9uKCkgdG8gZ2V0IHRoZSBjb3JyZXNwb25kaW5nIHBhdHRlcm4uCisg
KiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9y
LgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNo
IG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUg
dGhlIGZ1bmN0aW9uIGNhbGwKKyAqIEByZXR1cm4gYSBVRW51bWVyYXRpb24gbGlzdCBvZiBhbGwg
dGhlIHNrZWxldG9ucworICogICAgICAgICBUaGUgY2FsbGVyIG11c3QgY2xvc2UgdGhlIG9iamVj
dC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBVRW51bWVyYXRpb24gKiBVX0VY
UE9SVDIKK3VkYXRwZ19vcGVuU2tlbGV0b25zKGNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0
b3IgKmR0cGcsIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIFJldHVybiBhIFVF
bnVtZXJhdGlvbiBsaXN0IG9mIGFsbCB0aGUgYmFzZSBza2VsZXRvbnMgaW4gY2Fub25pY2FsIGZv
cm0uCisgKgorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IuCisgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUg
d2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICogICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUg
dGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxs
IHRoZSBiYXNlIHNrZWxldG9ucworICogICAgICAgICAgICAgVGhlIGNhbGxlciBtdXN0IGNsb3Nl
IHRoZSBvYmplY3QuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgVUVudW1lcmF0
aW9uICogVV9FWFBPUlQyCit1ZGF0cGdfb3BlbkJhc2VTa2VsZXRvbnMoY29uc3QgVURhdGVUaW1l
UGF0dGVybkdlbmVyYXRvciAqZHRwZywgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgor
ICogR2V0IHRoZSBwYXR0ZXJuIGNvcnJlc3BvbmRpbmcgdG8gYSBnaXZlbiBza2VsZXRvbi4KKyAq
IAorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3Iu
CisgKiBAcGFyYW0gc2tlbGV0b24gCisgKiBAcGFyYW0gc2tlbGV0b25MZW5ndGggcG9pbnRlciB0
byB0aGUgbGVuZ3RoIG9mIHNrZWxldG9uLgorICogQHBhcmFtIHBMZW5ndGggcG9pbnRlciB0byB0
aGUgbGVuZ3RoIG9mIHJldHVybiBwYXR0ZXJuLgorICogQHJldHVybiBwYXR0ZXJuIGNvcnJlc3Bv
bmRpbmcgdG8gYSBnaXZlbiBza2VsZXRvbi4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NU
QUJMRSBjb25zdCBVQ2hhciAqIFVfRVhQT1JUMgordWRhdHBnX2dldFBhdHRlcm5Gb3JTa2VsZXRv
bihjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMyX3Qgc2tlbGV0b25MZW5n
dGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBMZW5ndGgpOworCisj
ZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklk
ZW50aWZpZXJzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlm
aWVycy5oCmluZGV4IDNiZTg5YjgzNTdjNmE4NzE3MDQwNTJhOGMxMjNlZWZlNjcxODVkY2UuLjU4
YjdkMWY0YjNiODU2NWYxNThmMWM1YTU4NWEzMTNiZDRmMjdjY2QgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaApAQCAtMTAxLDYgKzEw
MSw3IEBACiAgICAgbWFjcm8oY29uc3RydWN0b3IpIFwKICAgICBtYWNybyhjb3VudCkgXAogICAg
IG1hY3JvKGNvdW50ZXJzKSBcCisgICAgbWFjcm8oZGF5KSBcCiAgICAgbWFjcm8oZGVmaW5lUHJv
cGVydHkpIFwKICAgICBtYWNybyhkZXNjcmlwdGlvbikgXAogICAgIG1hY3JvKGRlc2NyaXB0aW9u
cykgXApAQCAtMTA5LDYgKzExMCw3IEBACiAgICAgbWFjcm8oZG9uZSkgXAogICAgIG1hY3JvKGVu
dHJpZXMpIFwKICAgICBtYWNybyhlbnVtZXJhYmxlKSBcCisgICAgbWFjcm8oZXJhKSBcCiAgICAg
bWFjcm8oZXZhbCkgXAogICAgIG1hY3JvKGV4ZWMpIFwKICAgICBtYWNybyhleGVjdXRpb25Db3Vu
dCkgXApAQCAtMTE2LDYgKzExOCw3IEBACiAgICAgbWFjcm8oZmxhZ3MpIFwKICAgICBtYWNybyhm
b2N1cykgXAogICAgIG1hY3JvKGZvckVhY2gpIFwKKyAgICBtYWNybyhmb3JtYXRNYXRjaGVyKSBc
CiAgICAgbWFjcm8oZm9yd2FyZCkgXAogICAgIG1hY3JvKGZyb20pIFwKICAgICBtYWNybyhmcm9t
Q2hhckNvZGUpIFwKQEAgLTEyNiw2ICsxMjksOCBAQAogICAgIG1hY3JvKGhhc093blByb3BlcnR5
KSBcCiAgICAgbWFjcm8oaGFzaCkgXAogICAgIG1hY3JvKGhlYWRlcikgXAorICAgIG1hY3JvKGhv
dXIpIFwKKyAgICBtYWNybyhob3VyMTIpIFwKICAgICBtYWNybyhocmVmKSBcCiAgICAgbWFjcm8o
aWQpIFwKICAgICBtYWNybyhpZ25vcmVDYXNlKSBcCkBAIC0xNDksNiArMTU0LDggQEAKICAgICBt
YWNybyhsb2NhbGUpIFwKICAgICBtYWNybyhsb2NhbGVNYXRjaGVyKSBcCiAgICAgbWFjcm8obWVz
c2FnZSkgXAorICAgIG1hY3JvKG1pbnV0ZSkgXAorICAgIG1hY3JvKG1vbnRoKSBcCiAgICAgbWFj
cm8obXVsdGlsaW5lKSBcCiAgICAgbWFjcm8obmFtZSkgXAogICAgIG1hY3JvKG5leHQpIFwKQEAg
LTE3Miw2ICsxNzksNyBAQAogICAgIG1hY3JvKHJlbG9hZCkgXAogICAgIG1hY3JvKHJlcGxhY2Up
IFwKICAgICBtYWNybyhyZXNvbHZlKSBcCisgICAgbWFjcm8oc2Vjb25kKSBcCiAgICAgbWFjcm8o
c2Vuc2l0aXZpdHkpIFwKICAgICBtYWNybyhzZXQpIFwKICAgICBtYWNybyhzaG93TW9kYWxEaWFs
b2cpIFwKQEAgLTE4NSw2ICsxOTMsOCBAQAogICAgIG1hY3JvKHRhcmdldCkgXAogICAgIG1hY3Jv
KHRlc3QpIFwKICAgICBtYWNybyh0aGVuKSBcCisgICAgbWFjcm8odGltZVpvbmUpIFwKKyAgICBt
YWNybyh0aW1lWm9uZU5hbWUpIFwKICAgICBtYWNybyh0b0V4cG9uZW50aWFsKSBcCiAgICAgbWFj
cm8odG9GaXhlZCkgXAogICAgIG1hY3JvKHRvSVNPU3RyaW5nKSBcCkBAIC0xOTgsOCArMjA4LDEw
IEBACiAgICAgbWFjcm8odmFsdWVzKSBcCiAgICAgbWFjcm8od2Via2l0KSBcCiAgICAgbWFjcm8o
d2Via2l0SW5kZXhlZERCKSBcCisgICAgbWFjcm8od2Vla2RheSkgXAogICAgIG1hY3JvKHdpbmRv
dykgXAotICAgIG1hY3JvKHdyaXRhYmxlKQorICAgIG1hY3JvKHdyaXRhYmxlKSBcCisgICAgbWFj
cm8oeWVhcikKIAogI2RlZmluZSBKU0NfQ09NTU9OX0lERU5USUZJRVJTX0VBQ0hfS0VZV09SRCht
YWNybykgXAogICAgIG1hY3JvKGJyZWFrKSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcAppbmRleCBkYzViMmFjZTMyNWIwOGI2
ZjJmMzdiMjMxMDc2OTIwZTg4ZmNmMDI4Li45MGNjM2I2YWM4NTQ5NzVhMWZiMTYyZGZiMzEzYjMw
M2E5MmQ0YTE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
RGF0ZVRpbWVGb3JtYXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxEYXRlVGltZUZvcm1hdC5jcHAKQEAgLTM2LDggKzM2LDEyIEBACiAjaW5jbHVkZSAiSlNCb3Vu
ZEZ1bmN0aW9uLmgiCiAjaW5jbHVkZSAiSlNDSlNWYWx1ZUlubGluZXMuaCIKICNpbmNsdWRlICJK
U0NlbGxJbmxpbmVzLmgiCisjaW5jbHVkZSAiT2JqZWN0Q29uc3RydWN0b3IuaCIKICNpbmNsdWRl
ICJTbG90VmlzaXRvcklubGluZXMuaCIKICNpbmNsdWRlICJTdHJ1Y3R1cmVJbmxpbmVzLmgiCisj
aW5jbHVkZSA8dW5pY29kZS91Y2FsLmg+CisjaW5jbHVkZSA8dW5pY29kZS91ZGF0cGcuaD4KKyNp
bmNsdWRlIDx1bmljb2RlL3VlbnVtLmg+CiAKIG5hbWVzcGFjZSBKU0MgewogCkBAIC04NiwxNCAr
OTAsNzI1IEBAIHZvaWQgSW50bERhdGVUaW1lRm9ybWF0OjpzZXRCb3VuZEZvcm1hdChWTSYgdm0s
IEpTQm91bmRGdW5jdGlvbiogZm9ybWF0KQogICAgIG1fYm91bmRGb3JtYXQuc2V0KHZtLCB0aGlz
LCBmb3JtYXQpOwogfQogCitlbnVtIGNsYXNzIERhdGVUaW1lT3B0aW9uUmVxdWlyZWQgeyBEYXRl
LCBUaW1lLCBBbnkgfTsKK2VudW0gY2xhc3MgRGF0ZVRpbWVPcHRpb25EZWZhdWx0cyB7IERhdGUs
IFRpbWUsIEFsbCB9OworCitTdHJpbmcgZGVmYXVsdFRpbWVab25lKCkKK3sKKyAgICAvLyA2LjQu
MyBEZWZhdWx0VGltZVpvbmUgKCkgKEVDTUEtNDAyIDIuMCkKKyAgICAvLyBUaGUgRGVmYXVsdFRp
bWVab25lIGFic3RyYWN0IG9wZXJhdGlvbiByZXR1cm5zIGEgU3RyaW5nIHZhbHVlIHJlcHJlc2Vu
dGluZyB0aGUgdmFsaWQgKDYuNC4xKSBhbmQgY2Fub25pY2FsaXplZCAoNi40LjIpIHRpbWUgem9u
ZSBuYW1lIGZvciB0aGUgaG9zdCBlbnZpcm9ubWVudOKAmXMgY3VycmVudCB0aW1lIHpvbmUuCisK
KyAgICBVRXJyb3JDb2RlIHN0YXR1cyhVX1pFUk9fRVJST1IpOworICAgIGludDMyX3QgYnVmZmVy
TGVuZ3RoID0gdWNhbF9nZXREZWZhdWx0VGltZVpvbmUobnVsbHB0ciwgMCwgJnN0YXR1cyk7Cisg
ICAgaWYgKHN0YXR1cyA9PSBVX0JVRkZFUl9PVkVSRkxPV19FUlJPUikgeworICAgICAgICBVRXJy
b3JDb2RlIHN0YXR1cyhVX1pFUk9fRVJST1IpOworICAgICAgICBWZWN0b3I8VUNoYXI+IGJ1ZmZl
cihidWZmZXJMZW5ndGgpOworICAgICAgICB1Y2FsX2dldERlZmF1bHRUaW1lWm9uZShidWZmZXIu
ZGF0YSgpLCBidWZmZXJMZW5ndGgsICZzdGF0dXMpOworICAgICAgICBpZiAoVV9TVUNDRVNTKHN0
YXR1cykpCisgICAgICAgICAgICByZXR1cm4gU3RyaW5nKGJ1ZmZlci5kYXRhKCksIGJ1ZmZlckxl
bmd0aCk7CisgICAgfQorICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIlVUQyIpOworfQorCitzdGF0
aWMgU3RyaW5nIGNhbm9uaWNhbGl6ZVRpbWVab25lTmFtZShjb25zdCBTdHJpbmcmIHRpbWVab25l
TmFtZSkKK3sKKyAgICAvLyA2LjQuMSBJc1ZhbGlkVGltZVpvbmVOYW1lICh0aW1lWm9uZSkKKyAg
ICAvLyBUaGUgYWJzdHJhY3Qgb3BlcmF0aW9uIHJldHVybnMgdHJ1ZSBpZiB0aW1lWm9uZSwgY29u
dmVydGVkIHRvIHVwcGVyIGNhc2UgYXMgZGVzY3JpYmVkIGluIDYuMSwgaXMgZXF1YWwgdG8gb25l
IG9mIHRoZSBab25lIG9yIExpbmsgbmFtZXMgb2YgdGhlIElBTkEgVGltZSBab25lIERhdGFiYXNl
LCBjb252ZXJ0ZWQgdG8gdXBwZXIgY2FzZSBhcyBkZXNjcmliZWQgaW4gNi4xLiBJdCByZXR1cm5z
IGZhbHNlIG90aGVyd2lzZS4KKyAgICBVRXJyb3JDb2RlIHN0YXR1cyhVX1pFUk9fRVJST1IpOwor
ICAgIFVFbnVtZXJhdGlvbiogdGltZVpvbmVzID0gdWNhbF9vcGVuVGltZVpvbmVzKCZzdGF0dXMp
OworICAgIEFTU0VSVChVX1NVQ0NFU1Moc3RhdHVzKSk7CisKKyAgICBjb25zdCBTdHJpbmcgdGlt
ZVpvbmVOYW1lVXBwZXIgPSB0aW1lWm9uZU5hbWUudXBwZXIoKTsKKyAgICBTdHJpbmcgY2Fub25p
Y2FsOworICAgIHdoaWxlIChjYW5vbmljYWwuaXNOdWxsKCkpIHsKKyAgICAgICAgVUVycm9yQ29k
ZSBzdGF0dXMoVV9aRVJPX0VSUk9SKTsKKyAgICAgICAgaW50MzJfdCBpYW5hVGltZVpvbmVMZW5n
dGg7CisgICAgICAgIGNvbnN0IFVDaGFyKiBpYW5hVGltZVpvbmUgPSB1ZW51bV91bmV4dCh0aW1l
Wm9uZXMsICZpYW5hVGltZVpvbmVMZW5ndGgsICZzdGF0dXMpOworICAgICAgICBBU1NFUlQoVV9T
VUNDRVNTKHN0YXR1cykpOworCisgICAgICAgIC8vIEVuZCBvZiBlbnVtZXJhdGlvbi4KKyAgICAg
ICAgaWYgKCFpYW5hVGltZVpvbmUpCisgICAgICAgICAgICBicmVhazsKKworICAgICAgICBTdHJp
bmcgcmVzdWx0U3RyaW5nKGlhbmFUaW1lWm9uZSwgaWFuYVRpbWVab25lTGVuZ3RoKTsKKyAgICAg
ICAgaWYgKHJlc3VsdFN0cmluZy51cHBlcigpICE9IHRpbWVab25lTmFtZVVwcGVyKQorICAgICAg
ICAgICAgY29udGludWU7CisKKyAgICAgICAgLy8gRm91bmQgYSBtYXRjaCwgbm93IGNhbm9uaWNh
bGl6ZS4KKyAgICAgICAgLy8gNi40LjIgQ2Fub25pY2FsaXplVGltZVpvbmVOYW1lICh0aW1lWm9u
ZSkgKEVDTUEtNDAyIDIuMCkKKyAgICAgICAgLy8gMS4gTGV0IGlhbmFUaW1lWm9uZSBiZSB0aGUg
Wm9uZSBvciBMaW5rIG5hbWUgb2YgdGhlIElBTkEgVGltZSBab25lIERhdGFiYXNlIHN1Y2ggdGhh
dCB0aW1lWm9uZSwgY29udmVydGVkIHRvIHVwcGVyIGNhc2UgYXMgZGVzY3JpYmVkIGluIDYuMSwg
aXMgZXF1YWwgdG8gaWFuYVRpbWVab25lLCBjb252ZXJ0ZWQgdG8gdXBwZXIgY2FzZSBhcyBkZXNj
cmliZWQgaW4gNi4xLgorICAgICAgICAvLyAyLiBJZiBpYW5hVGltZVpvbmUgaXMgYSBMaW5rIG5h
bWUsIHRoZW4gbGV0IGlhbmFUaW1lWm9uZSBiZSB0aGUgY29ycmVzcG9uZGluZyBab25lIG5hbWUg
YXMgc3BlY2lmaWVkIGluIHRoZSDigJxiYWNrd2FyZOKAnSBmaWxlIG9mIHRoZSBJQU5BIFRpbWUg
Wm9uZSBEYXRhYmFzZS4KKworICAgICAgICBWZWN0b3I8VUNoYXI+IGJ1ZmZlcihpYW5hVGltZVpv
bmVMZW5ndGgpOworICAgICAgICBVQm9vbCBpc1N5c3RlbUlEKEZBTFNFKTsKKyAgICAgICAgc3Rh
dHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICBpbnQzMl90IGNhbm9uaWNhbExlbmd0aCA9IHVj
YWxfZ2V0Q2Fub25pY2FsVGltZVpvbmVJRChpYW5hVGltZVpvbmUsIGlhbmFUaW1lWm9uZUxlbmd0
aCwgYnVmZmVyLmRhdGEoKSwgaWFuYVRpbWVab25lTGVuZ3RoLCAmaXNTeXN0ZW1JRCwgJnN0YXR1
cyk7CisgICAgICAgIGlmIChzdGF0dXMgPT0gVV9CVUZGRVJfT1ZFUkZMT1dfRVJST1IpIHsKKyAg
ICAgICAgICAgIFZlY3RvcjxVQ2hhcj4gYnVmZmVyKGlhbmFUaW1lWm9uZUxlbmd0aCk7CisgICAg
ICAgICAgICBVQm9vbCBpc1N5c3RlbUlEKEZBTFNFKTsKKyAgICAgICAgICAgIFVFcnJvckNvZGUg
c3RhdHVzKFVfWkVST19FUlJPUik7CisgICAgICAgICAgICB1Y2FsX2dldENhbm9uaWNhbFRpbWVa
b25lSUQoaWFuYVRpbWVab25lLCBpYW5hVGltZVpvbmVMZW5ndGgsIGJ1ZmZlci5kYXRhKCksIGNh
bm9uaWNhbExlbmd0aCwgJmlzU3lzdGVtSUQsICZzdGF0dXMpOworICAgICAgICAgICAgQVNTRVJU
KFVfU1VDQ0VTUyhzdGF0dXMpKTsKKyAgICAgICAgICAgIGNhbm9uaWNhbCA9IFN0cmluZyhidWZm
ZXIuZGF0YSgpLCBjYW5vbmljYWxMZW5ndGgpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgQVNTRVJUKFVfU1VDQ0VTUyhzdGF0dXMpKTsKKyAgICAgICAgICAgIGNhbm9uaWNhbCA9IFN0
cmluZyhidWZmZXIuZGF0YSgpLCBjYW5vbmljYWxMZW5ndGgpOworICAgICAgICB9CisgICAgfQor
ICAgIHVlbnVtX2Nsb3NlKHRpbWVab25lcyk7CisKKyAgICAvLyAzLiBJZiBpYW5hVGltZVpvbmUg
aXMgIkV0Yy9VVEMiIG9yICJFdGMvR01UIiwgdGhlbiByZXR1cm4gIlVUQyIuCisgICAgaWYgKGNh
bm9uaWNhbCA9PSAiRXRjL1VUQyIgfHwgY2Fub25pY2FsID09ICJFdGMvR01UIikKKyAgICAgICAg
Y2Fub25pY2FsID0gQVNDSUlMaXRlcmFsKCJVVEMiKTsKKworICAgIC8vIDQuIFJldHVybiBpYW5h
VGltZVpvbmUuCisgICAgcmV0dXJuIGNhbm9uaWNhbDsKK30KKworc3RhdGljIFZlY3RvcjxTdHJp
bmc+IGxvY2FsZURhdGEoY29uc3QgU3RyaW5nJiAvKmxvY2FsZSovLCBjb25zdCBTdHJpbmcmIGtl
eSkKK3sKKyAgICBpZiAoa2V5ID09ICJjYSIpIHsKKyAgICAgICAgVmVjdG9yPFN0cmluZz4gY2FE
YXRhKHsKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgiZ3JlZ29yeSIpLAorICAgICAgICAgICAg
QVNDSUlMaXRlcmFsKCJidWRkaGlzdCIpLAorICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJjaGlu
ZXNlIiksCisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoImNvcHRpYyIpLAorICAgICAgICAgICAg
QVNDSUlMaXRlcmFsKCJkYW5naSIpLAorICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJldGhpb2Fh
IiksCisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoImV0aGlvcGljLWFtZXRlLWFsZW0iKSwKKyAg
ICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgiZXRoaW9waWMiKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0
ZXJhbCgiaGVicmV3IiksCisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoImluZGlhbiIpLAorICAg
ICAgICAgICAgQVNDSUlMaXRlcmFsKCJpc2xhbWljIiksCisgICAgICAgICAgICBBU0NJSUxpdGVy
YWwoImlzbGFtaWMtdW1hbHF1cmEiKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaXNsYW1p
Yy10YmxhIiksCisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoImlzbGFtaWMtY2l2aWwiKSwKKyAg
ICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaXNsYW1pY2MiKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0
ZXJhbCgiaXNsYW1pYy1yZ3NhIiksCisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoImlzbzg2MDEi
KSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgiamFwYW5lc2UiKSwKKyAgICAgICAgICAgIEFT
Q0lJTGl0ZXJhbCgicGVyc2lhbiIpLAorICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJyb2MiKQor
ICAgICAgICB9KTsKKyAgICAgICAgcmV0dXJuIGNhRGF0YTsKKyAgICB9CisgICAgaWYgKGtleSA9
PSAibnUiKSB7CisgICAgICAgIFZlY3RvcjxTdHJpbmc+IG51RGF0YSh7CisgICAgICAgICAgICBB
U0NJSUxpdGVyYWwoImxhdG4iKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgiYXJhYiIpLAor
ICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJhcmFiZXh0IiksCisgICAgICAgICAgICBBU0NJSUxp
dGVyYWwoImJhbGkiKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgiYmVuZyIpLAorICAgICAg
ICAgICAgQVNDSUlMaXRlcmFsKCJkZXZhIiksCisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoImZ1
bGx3aWRlIiksCisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoImd1anIiKSwKKyAgICAgICAgICAg
IEFTQ0lJTGl0ZXJhbCgiZ3VydSIpLAorICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJoYW5pZGVj
IiksCisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoImtobXIiKSwKKyAgICAgICAgICAgIEFTQ0lJ
TGl0ZXJhbCgia25kYSIpLAorICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJsYW9vIiksCisgICAg
ICAgICAgICBBU0NJSUxpdGVyYWwoImxpbWIiKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgi
bWx5bSIpLAorICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJtb25nIiksCisgICAgICAgICAgICBB
U0NJSUxpdGVyYWwoIm15bXIiKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgib3J5YSIpLAor
ICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJ0YW1sZGVjIiksCisgICAgICAgICAgICBBU0NJSUxp
dGVyYWwoInRlbHUiKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgidGhhaSIpLAorICAgICAg
ICAgICAgQVNDSUlMaXRlcmFsKCJ0aWJ0IikKKyAgICAgICAgfSk7CisgICAgICAgIHJldHVybiBu
dURhdGE7CisgICAgfQorICAgIHJldHVybiBWZWN0b3I8U3RyaW5nPigpOworfQorCitzdGF0aWMg
SW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRhclR5cGUgc3RyaW5nVG9DYWxlbmRhclR5cGUoY29u
c3QgU3RyaW5nJiBjYSkKK3sKKyAgICBpZiAoY2EgPT0gImJ1ZGRoaXN0IikKKyAgICAgICAgcmV0
dXJuIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpCdWRkaGlzdDsKKyAgICBpZiAo
Y2EgPT0gImNoaW5lc2UiKQorICAgICAgICByZXR1cm4gSW50bERhdGVUaW1lRm9ybWF0OjpDYWxl
bmRhclR5cGU6OkNoaW5lc2U7CisgICAgaWYgKGNhID09ICJjb3B0aWMiKQorICAgICAgICByZXR1
cm4gSW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRhclR5cGU6OkNvcHRpYzsKKyAgICBpZiAoY2Eg
PT0gImRhbmdpIikKKyAgICAgICAgcmV0dXJuIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJU
eXBlOjpEYW5naTsKKyAgICBpZiAoY2EgPT0gImV0aGlvYWEiIHx8IGNhID09ICJldGhpb3BpYy1h
bWV0ZS1hbGVtIikKKyAgICAgICAgcmV0dXJuIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJU
eXBlOjpFdGhpb2FhOworICAgIGlmIChjYSA9PSAiZXRoaW9waWMiKQorICAgICAgICByZXR1cm4g
SW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRhclR5cGU6OkV0aGlvcGljOworICAgIGlmIChjYSA9
PSAiZ3JlZ29yeSIpCisgICAgICAgIHJldHVybiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFy
VHlwZTo6R3JlZ29yeTsKKyAgICBpZiAoY2EgPT0gImhlYnJldyIpCisgICAgICAgIHJldHVybiBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6SGVicmV3OworICAgIGlmIChjYSA9PSAi
aW5kaWFuIikKKyAgICAgICAgcmV0dXJuIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBl
OjpJbmRpYW47CisgICAgaWYgKGNhID09ICJpc2xhbWljIikKKyAgICAgICAgcmV0dXJuIEludGxE
YXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpJc2xhbWljOworICAgIGlmIChjYSA9PSAiaXNs
YW1pYy11bWFscXVyYSIpCisgICAgICAgIHJldHVybiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVu
ZGFyVHlwZTo6SXNsYW1pY1VtYWxxdXJhOworICAgIGlmIChjYSA9PSAiaXNsYW1pYy10YmxhIikK
KyAgICAgICAgcmV0dXJuIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpJc2xhbWlj
VGJsYTsKKyAgICBpZiAoY2EgPT0gImlzbGFtaWNjIiB8fCBjYSA9PSAiaXNsYW1pYy1jaXZpbCIp
CisgICAgICAgIHJldHVybiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6SXNsYW1p
Y0NpdmlsOworICAgIGlmIChjYSA9PSAiaXNsYW1pYy1yZ3NhIikKKyAgICAgICAgcmV0dXJuIElu
dGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpJc2xhbWljUmdzYTsKKyAgICBpZiAoY2Eg
PT0gImlzbzg2MDEiKQorICAgICAgICByZXR1cm4gSW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRh
clR5cGU6Oklzbzg2MDE7CisgICAgaWYgKGNhID09ICJqYXBhbmVzZSIpCisgICAgICAgIHJldHVy
biBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6SmFwYW5lc2U7CisgICAgaWYgKGNh
ID09ICJwZXJzaWFuIikKKyAgICAgICAgcmV0dXJuIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5k
YXJUeXBlOjpQZXJzaWFuOworICAgIGlmIChjYSA9PSAicm9jIikKKyAgICAgICAgcmV0dXJuIElu
dGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpSb2M7CisKKyAgICByZXR1cm4gSW50bERh
dGVUaW1lRm9ybWF0OjpDYWxlbmRhclR5cGU6OkdyZWdvcnk7Cit9CisKK3N0YXRpYyBKU09iamVj
dCogdG9EYXRlVGltZU9wdGlvbnMoRXhlY1N0YXRlKiBzdGF0ZSwgSlNWYWx1ZSBvcmlnaW5hbE9w
dGlvbnMsIGNvbnN0IERhdGVUaW1lT3B0aW9uUmVxdWlyZWQgcmVxdWlyZWQsIGNvbnN0IERhdGVU
aW1lT3B0aW9uRGVmYXVsdHMgZGVmYXVsdHMpCit7CisgICAgLy8gMTIuMS4xIFRvRGF0ZVRpbWVP
cHRpb25zIGFic3RyYWN0IG9wZXJhdGlvbiAoRUNNQS00MDIgMi4wKQorICAgIFZNJiB2bSA9IHN0
YXRlLT52bSgpOworCisgICAgLy8gMS4gSWYgb3B0aW9ucyBpcyB1bmRlZmluZWQsIHRoZW4gbGV0
IG9wdGlvbnMgYmUgbnVsbCwgZWxzZSBsZXQgb3B0aW9ucyBiZSBUb09iamVjdChvcHRpb25zKS4K
KyAgICAvLyAyLiBSZXR1cm5JZkFicnVwdChvcHRpb25zKS4KKyAgICAvLyAzLiBMZXQgb3B0aW9u
cyBiZSBPYmplY3RDcmVhdGUob3B0aW9ucykuCisgICAgSlNPYmplY3QqIG9wdGlvbnM7CisgICAg
aWYgKG9yaWdpbmFsT3B0aW9ucy5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAgICAgICBvcHRpb25z
ID0gY29uc3RydWN0RW1wdHlPYmplY3Qoc3RhdGUsIHN0YXRlLT5sZXhpY2FsR2xvYmFsT2JqZWN0
KCktPm51bGxQcm90b3R5cGVPYmplY3RTdHJ1Y3R1cmUoKSk7CisgICAgZWxzZSB7CisgICAgICAg
IEpTT2JqZWN0KiBvcmlnaW5hbFRvT2JqZWN0ID0gb3JpZ2luYWxPcHRpb25zLnRvT2JqZWN0KHN0
YXRlKTsKKyAgICAgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJl
dHVybiBudWxscHRyOworICAgICAgICBvcHRpb25zID0gY29uc3RydWN0RW1wdHlPYmplY3Qoc3Rh
dGUsIG9yaWdpbmFsVG9PYmplY3QpOworICAgIH0KKworICAgIC8vIDQuIExldCBuZWVkRGVmYXVs
dHMgYmUgdHJ1ZS4KKyAgICBib29sIG5lZWREZWZhdWx0cyh0cnVlKTsKKworICAgIC8vIDUuIElm
IHJlcXVpcmVkIGlzICJkYXRlIiBvciAiYW55IiwKKyAgICBpZiAocmVxdWlyZWQgPT0gRGF0ZVRp
bWVPcHRpb25SZXF1aXJlZDo6RGF0ZSB8fCByZXF1aXJlZCA9PSBEYXRlVGltZU9wdGlvblJlcXVp
cmVkOjpBbnkpIHsKKyAgICAgICAgLy8gYS4gRm9yIGVhY2ggb2YgdGhlIHByb3BlcnR5IG5hbWVz
ICJ3ZWVrZGF5IiwgInllYXIiLCAibW9udGgiLCAiZGF5IjoKKyAgICAgICAgLy8gaS4gTGV0IHBy
b3AgYmUgdGhlIHByb3BlcnR5IG5hbWUuCisgICAgICAgIC8vIGlpLiBMZXQgdmFsdWUgYmUgR2V0
KG9wdGlvbnMsIHByb3ApLgorICAgICAgICAvLyBpaWkuIFJldHVybklmQWJydXB0KHZhbHVlKS4K
KyAgICAgICAgLy8gaXYuIElmIHZhbHVlIGlzIG5vdCB1bmRlZmluZWQsIHRoZW4gbGV0IG5lZWRE
ZWZhdWx0cyBiZSBmYWxzZS4KKyAgICAgICAgSlNWYWx1ZSB3ZWVrZGF5ID0gb3B0aW9ucy0+Z2V0
KHN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT53ZWVrZGF5KTsKKyAgICAgICAgaWYgKHN0YXRlLT5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBpZiAo
IXdlZWtkYXkuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZhdWx0cyA9IGZhbHNl
OworCisgICAgICAgIEpTVmFsdWUgeWVhciA9IG9wdGlvbnMtPmdldChzdGF0ZSwgdm0ucHJvcGVy
dHlOYW1lcy0+eWVhcik7CisgICAgICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAg
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCF5ZWFyLmlzVW5kZWZpbmVkKCkp
CisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKworICAgICAgICBKU1ZhbHVlIG1v
bnRoID0gb3B0aW9ucy0+Z2V0KHN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT5tb250aCk7CisgICAg
ICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0
cjsKKyAgICAgICAgaWYgKCFtb250aC5pc1VuZGVmaW5lZCgpKQorICAgICAgICAgICAgbmVlZERl
ZmF1bHRzID0gZmFsc2U7CisKKyAgICAgICAgSlNWYWx1ZSBkYXkgPSBvcHRpb25zLT5nZXQoc3Rh
dGUsIHZtLnByb3BlcnR5TmFtZXMtPmRheSk7CisgICAgICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0
aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCFkYXkuaXNV
bmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZhdWx0cyA9IGZhbHNlOworICAgIH0KKwor
ICAgIC8vIDYuIElmIHJlcXVpcmVkIGlzICJ0aW1lIiBvciAiYW55IiwKKyAgICBpZiAocmVxdWly
ZWQgPT0gRGF0ZVRpbWVPcHRpb25SZXF1aXJlZDo6VGltZSB8fCByZXF1aXJlZCA9PSBEYXRlVGlt
ZU9wdGlvblJlcXVpcmVkOjpBbnkpIHsKKyAgICAgICAgLy8gYS4gRm9yIGVhY2ggb2YgdGhlIHBy
b3BlcnR5IG5hbWVzICJob3VyIiwgIm1pbnV0ZSIsICJzZWNvbmQiOgorICAgICAgICAvLyBpLiBM
ZXQgcHJvcCBiZSB0aGUgcHJvcGVydHkgbmFtZS4KKyAgICAgICAgLy8gaWkuIExldCB2YWx1ZSBi
ZSBHZXQob3B0aW9ucywgcHJvcCkuCisgICAgICAgIC8vIGlpaS4gUmV0dXJuSWZBYnJ1cHQodmFs
dWUpLgorICAgICAgICAvLyBpdi4gSWYgdmFsdWUgaXMgbm90IHVuZGVmaW5lZCwgdGhlbiBsZXQg
bmVlZERlZmF1bHRzIGJlIGZhbHNlLgorICAgICAgICBKU1ZhbHVlIGhvdXIgPSBvcHRpb25zLT5n
ZXQoc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPmhvdXIpOworICAgICAgICBpZiAoc3RhdGUtPmhh
ZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICgh
aG91ci5pc1VuZGVmaW5lZCgpKQorICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisK
KyAgICAgICAgSlNWYWx1ZSBtaW51dGUgPSBvcHRpb25zLT5nZXQoc3RhdGUsIHZtLnByb3BlcnR5
TmFtZXMtPm1pbnV0ZSk7CisgICAgICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAg
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCFtaW51dGUuaXNVbmRlZmluZWQo
KSkKKyAgICAgICAgICAgIG5lZWREZWZhdWx0cyA9IGZhbHNlOworCisgICAgICAgIEpTVmFsdWUg
c2Vjb25kID0gb3B0aW9ucy0+Z2V0KHN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT5zZWNvbmQpOwor
ICAgICAgICBpZiAoc3RhdGUtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CisgICAgICAgIGlmICghc2Vjb25kLmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBu
ZWVkRGVmYXVsdHMgPSBmYWxzZTsKKyAgICB9CisKKyAgICAvLyA3LiBJZiBuZWVkRGVmYXVsdHMg
aXMgdHJ1ZSBhbmQgZGVmYXVsdHMgaXMgZWl0aGVyICJkYXRlIiBvciAiYWxsIiwgdGhlbgorICAg
IGlmIChuZWVkRGVmYXVsdHMgJiYgKGRlZmF1bHRzID09IERhdGVUaW1lT3B0aW9uRGVmYXVsdHM6
OkRhdGUgfHwgZGVmYXVsdHMgPT0gRGF0ZVRpbWVPcHRpb25EZWZhdWx0czo6QWxsKSkgeworICAg
ICAgICAvLyBhLiBGb3IgZWFjaCBvZiB0aGUgcHJvcGVydHkgbmFtZXMgInllYXIiLCAibW9udGgi
LCAiZGF5IjoKKyAgICAgICAgLy8gaS4gTGV0IHN0YXR1cyBiZSBDcmVhdGVEYXRlUHJvcGVydHlP
clRocm93KG9wdGlvbnMsIHByb3AsICJudW1lcmljIikuCisgICAgICAgIC8vIGlpLiBSZXR1cm5J
ZkFicnVwdChzdGF0dXMpLgorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3Bl
cnR5TmFtZXMtPnllYXIsIGpzU3RyaW5nKHN0YXRlLCAibnVtZXJpYyIpKTsKKyAgICAgICAgaWYg
KHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworCisg
ICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bW9udGgsIGpz
U3RyaW5nKHN0YXRlLCAibnVtZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRp
b24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgICAgIG9wdGlvbnMtPnB1
dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+ZGF5LCBqc1N0cmluZyhzdGF0ZSwgIm51bWVy
aWMiKSk7CisgICAgICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKKyAgICAvLyA4LiBJZiBuZWVkRGVmYXVsdHMgaXMgdHJ1
ZSBhbmQgZGVmYXVsdHMgaXMgZWl0aGVyICJ0aW1lIiBvciAiYWxsIiwgdGhlbgorICAgIGlmIChu
ZWVkRGVmYXVsdHMgJiYgKGRlZmF1bHRzID09IERhdGVUaW1lT3B0aW9uRGVmYXVsdHM6OlRpbWUg
fHwgZGVmYXVsdHMgPT0gRGF0ZVRpbWVPcHRpb25EZWZhdWx0czo6QWxsKSkgeworICAgICAgICAv
LyBhLiBGb3IgZWFjaCBvZiB0aGUgcHJvcGVydHkgbmFtZXMgImhvdXIiLCAibWludXRlIiwgInNl
Y29uZCI6CisgICAgICAgIC8vIGkuIExldCBzdGF0dXMgYmUgQ3JlYXRlRGF0ZVByb3BlcnR5T3JU
aHJvdyhvcHRpb25zLCBwcm9wLCAibnVtZXJpYyIpLgorICAgICAgICAvLyBpaS4gUmV0dXJuSWZB
YnJ1cHQoc3RhdHVzKS4KKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0
eU5hbWVzLT5ob3VyLCBqc1N0cmluZyhzdGF0ZSwgIm51bWVyaWMiKSk7CisgICAgICAgIGlmIChz
dGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAg
ICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPm1pbnV0ZSwganNT
dHJpbmcoc3RhdGUsICJudW1lcmljIikpOworICAgICAgICBpZiAoc3RhdGUtPmhhZEV4Y2VwdGlv
bigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICAgICAgb3B0aW9ucy0+cHV0
RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5zZWNvbmQsIGpzU3RyaW5nKHN0YXRlLCAibnVt
ZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
IHJldHVybiBudWxscHRyOworICAgIH0KKworICAgIC8vIDkuIFJldHVybiBvcHRpb25zLgorICAg
IHJldHVybiBvcHRpb25zOworfQorCitzdGF0aWMgdm9pZCBzZXRGb3JtYXRzRnJvbVBhdHRlcm4o
SW50bERhdGVUaW1lRm9ybWF0KiBkYXRlVGltZUZvcm1hdCwgY29uc3QgU3RyaW5nJiBwYXR0ZXJu
KQoreworICAgIHVuc2lnbmVkIGxlbmd0aCA9IHBhdHRlcm4ubGVuZ3RoKCk7CisgICAgZm9yICh1
bnNpZ25lZCBpID0gMDsgaSA8IGxlbmd0aDsgKytpKSB7CisgICAgICAgIFVDaGFyIGNoID0gcGF0
dGVybltpXTsKKyAgICAgICAgdW5zaWduZWQgY291bnQgPSAxOworICAgICAgICBzd2l0Y2ggKGNo
KSB7CisgICAgICAgIGNhc2UgJ0UnOgorICAgICAgICAgICAgd2hpbGUgKGkgKyAxIDwgbGVuZ3Ro
ICYmIHBhdHRlcm5baSArIDFdID09ICdFJykgeworICAgICAgICAgICAgICAgICsrY291bnQ7Cisg
ICAgICAgICAgICAgICAgKytpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGNvdW50
ID09IDMpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldFdlZWtkYXkoSW50bERh
dGVUaW1lRm9ybWF0OjpXZWVrZGF5U3R5bGU6OlNob3J0KTsKKyAgICAgICAgICAgIGVsc2UgaWYg
KGNvdW50ID09IDQpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldFdlZWtkYXko
SW50bERhdGVUaW1lRm9ybWF0OjpXZWVrZGF5U3R5bGU6OkxvbmcpOworICAgICAgICAgICAgZWxz
ZSBpZiAoY291bnQgPT0gNSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0V2Vl
a2RheShJbnRsRGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHlsZTo6TmFycm93KTsKKyAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICBjYXNlICdHJzoKKyAgICAgICAgICAgIHdoaWxlIChpICsgMSA8
IGxlbmd0aCAmJiBwYXR0ZXJuW2kgKyAxXSA9PSAnRycpIHsKKyAgICAgICAgICAgICAgICArK2Nv
dW50OworICAgICAgICAgICAgICAgICsraTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlm
IChjb3VudCA9PSAzKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRFcmEoSW50
bERhdGVUaW1lRm9ybWF0OjpFcmFTdHlsZTo6U2hvcnQpOworICAgICAgICAgICAgZWxzZSBpZiAo
Y291bnQgPT0gNCkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0RXJhKEludGxE
YXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6OkxvbmcpOworICAgICAgICAgICAgZWxzZSBpZiAoY291
bnQgPT0gNSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0RXJhKEludGxEYXRl
VGltZUZvcm1hdDo6RXJhU3R5bGU6Ok5hcnJvdyk7CisgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgY2FzZSAneSc6CisgICAgICAgICAgICB3aGlsZSAoaSArIDEgPCBsZW5ndGggJiYgcGF0dGVy
bltpICsgMV0gPT0gJ3knKSB7CisgICAgICAgICAgICAgICAgKytjb3VudDsKKyAgICAgICAgICAg
ICAgICArK2k7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoY291bnQgPT0gMSkKKyAg
ICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0WWVhcihJbnRsRGF0ZVRpbWVGb3JtYXQ6
OlllYXJTdHlsZTo6TnVtZXJpYyk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSAyKQor
ICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRZZWFyKEludGxEYXRlVGltZUZvcm1h
dDo6WWVhclN0eWxlOjpUd29EaWdpdCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2Fz
ZSAnTSc6CisgICAgICAgICAgICB3aGlsZSAoaSArIDEgPCBsZW5ndGggJiYgcGF0dGVybltpICsg
MV0gPT0gJ00nKSB7CisgICAgICAgICAgICAgICAgKytjb3VudDsKKyAgICAgICAgICAgICAgICAr
K2k7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoY291bnQgPT0gMSkKKyAgICAgICAg
ICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0TW9udGgoSW50bERhdGVUaW1lRm9ybWF0OjpNb250
aFN0eWxlOjpOdW1lcmljKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAg
ICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldE1vbnRoKEludGxEYXRlVGltZUZvcm1hdDo6
TW9udGhTdHlsZTo6VHdvRGlnaXQpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMykK
KyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0TW9udGgoSW50bERhdGVUaW1lRm9y
bWF0OjpNb250aFN0eWxlOjpTaG9ydCk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA0
KQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRNb250aChJbnRsRGF0ZVRpbWVG
b3JtYXQ6Ok1vbnRoU3R5bGU6OkxvbmcpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0g
NSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0TW9udGgoSW50bERhdGVUaW1l
Rm9ybWF0OjpNb250aFN0eWxlOjpOYXJyb3cpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGNhc2UgJ0wnOgorICAgICAgICAgICAgd2hpbGUgKGkgKyAxIDwgbGVuZ3RoICYmIHBhdHRlcm5b
aSArIDFdID09ICdMJykgeworICAgICAgICAgICAgICAgICsrY291bnQ7CisgICAgICAgICAgICAg
ICAgKytpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisgICAg
ICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldE1vbnRoKEludGxEYXRlVGltZUZvcm1hdDo6
TW9udGhTdHlsZTo6TnVtZXJpYyk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSAyKQor
ICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRNb250aChJbnRsRGF0ZVRpbWVGb3Jt
YXQ6Ok1vbnRoU3R5bGU6OlR3b0RpZ2l0KTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09
IDMpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldE1vbnRoKEludGxEYXRlVGlt
ZUZvcm1hdDo6TW9udGhTdHlsZTo6U2hvcnQpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQg
PT0gNCkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0TW9udGgoSW50bERhdGVU
aW1lRm9ybWF0OjpNb250aFN0eWxlOjpMb25nKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50
ID09IDUpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldE1vbnRoKEludGxEYXRl
VGltZUZvcm1hdDo6TW9udGhTdHlsZTo6TmFycm93KTsKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBjYXNlICdkJzoKKyAgICAgICAgICAgIHdoaWxlIChpICsgMSA8IGxlbmd0aCAmJiBwYXR0
ZXJuW2kgKyAxXSA9PSAnZCcpIHsKKyAgICAgICAgICAgICAgICArK2NvdW50OworICAgICAgICAg
ICAgICAgICsraTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQor
ICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXREYXkoSW50bERhdGVUaW1lRm9ybWF0
OjpEYXlTdHlsZTo6TnVtZXJpYyk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSAyKQor
ICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXREYXkoSW50bERhdGVUaW1lRm9ybWF0
OjpEYXlTdHlsZTo6VHdvRGlnaXQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ug
J2gnOgorICAgICAgICAgICAgd2hpbGUgKGkgKyAxIDwgbGVuZ3RoICYmIHBhdHRlcm5baSArIDFd
ID09ICdoJykgeworICAgICAgICAgICAgICAgICsrY291bnQ7CisgICAgICAgICAgICAgICAgKytp
OworICAgICAgICAgICAgfQorICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldEhvdXIxMih0
cnVlKTsKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAgIGRhdGVU
aW1lRm9ybWF0LT5zZXRIb3VyKEludGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlOjpOdW1lcmlj
KTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAgICAgICAgICAgICAgZGF0
ZVRpbWVGb3JtYXQtPnNldEhvdXIoSW50bERhdGVUaW1lRm9ybWF0OjpIb3VyU3R5bGU6OlR3b0Rp
Z2l0KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdIJzoKKyAgICAgICAgICAg
IHdoaWxlIChpICsgMSA8IGxlbmd0aCAmJiBwYXR0ZXJuW2kgKyAxXSA9PSAnSCcpIHsKKyAgICAg
ICAgICAgICAgICArK2NvdW50OworICAgICAgICAgICAgICAgICsraTsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRIb3VyMTIoZmFsc2UpOworICAgICAgICAg
ICAgaWYgKGNvdW50ID09IDEpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldEhv
dXIoSW50bERhdGVUaW1lRm9ybWF0OjpIb3VyU3R5bGU6Ok51bWVyaWMpOworICAgICAgICAgICAg
ZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0
SG91cihJbnRsRGF0ZVRpbWVGb3JtYXQ6OkhvdXJTdHlsZTo6VHdvRGlnaXQpOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ20nOgorICAgICAgICAgICAgd2hpbGUgKGkgKyAxIDwg
bGVuZ3RoICYmIHBhdHRlcm5baSArIDFdID09ICdtJykgeworICAgICAgICAgICAgICAgICsrY291
bnQ7CisgICAgICAgICAgICAgICAgKytpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYg
KGNvdW50ID09IDEpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldE1pbnV0ZShJ
bnRsRGF0ZVRpbWVGb3JtYXQ6Ok1pbnV0ZVN0eWxlOjpOdW1lcmljKTsKKyAgICAgICAgICAgIGVs
c2UgaWYgKGNvdW50ID09IDIpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldE1p
bnV0ZShJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1pbnV0ZVN0eWxlOjpUd29EaWdpdCk7CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgY2FzZSAncyc6CisgICAgICAgICAgICB3aGlsZSAoaSArIDEg
PCBsZW5ndGggJiYgcGF0dGVybltpICsgMV0gPT0gJ3MnKSB7CisgICAgICAgICAgICAgICAgKytj
b3VudDsKKyAgICAgICAgICAgICAgICArK2k7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBp
ZiAoY291bnQgPT0gMSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0U2Vjb25k
KEludGxEYXRlVGltZUZvcm1hdDo6U2Vjb25kU3R5bGU6Ok51bWVyaWMpOworICAgICAgICAgICAg
ZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0
U2Vjb25kKEludGxEYXRlVGltZUZvcm1hdDo6U2Vjb25kU3R5bGU6OlR3b0RpZ2l0KTsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICd6JzoKKyAgICAgICAgICAgIHdoaWxlIChpICsg
MSA8IGxlbmd0aCAmJiBwYXR0ZXJuW2kgKyAxXSA9PSAneicpIHsKKyAgICAgICAgICAgICAgICAr
K2NvdW50OworICAgICAgICAgICAgICAgICsraTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRUaW1l
Wm9uZU5hbWUoSW50bERhdGVUaW1lRm9ybWF0OjpUaW1lWm9uZU5hbWVTdHlsZTo6U2hvcnQpOwor
ICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNCkKKyAgICAgICAgICAgICAgICBkYXRlVGlt
ZUZvcm1hdC0+c2V0VGltZVpvbmVOYW1lKEludGxEYXRlVGltZUZvcm1hdDo6VGltZVpvbmVOYW1l
U3R5bGU6OkxvbmcpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9Cit9CisK
K0pTVmFsdWUgaW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSogc3RhdGUsIEludGxE
YXRlVGltZUZvcm1hdCogZGF0ZVRpbWVGb3JtYXQsIEpTVmFsdWUgbG9jYWxlcywgSlNWYWx1ZSBv
cmlnaW5hbE9wdGlvbnMpCit7CisgICAgLy8gMTIuMS4xIEluaXRpYWxpemVEYXRlVGltZUZvcm1h
dCAoZGF0ZVRpbWVGb3JtYXQsIGxvY2FsZXMsIG9wdGlvbnMpIChFQ01BLTQwMiAyLjApCisgICAg
Ly8gMS4gSWYgZGF0ZVRpbWVGb3JtYXQuW1tpbml0aWFsaXplZEludGxPYmplY3RdXSBpcyB0cnVl
LCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisgICAgaWYgKGRhdGVUaW1lRm9ybWF0LT5p
bml0aWFsaXplZEludGxPYmplY3QoKSkKKyAgICAgICAgdGhyb3dUeXBlRXJyb3Ioc3RhdGUsIEFT
Q0lJTGl0ZXJhbCgiT2JqZWN0IGFscmVhZHkgaW5pdGlhbGl6ZWQiKSk7CisKKyAgICAvLyAyLiBT
ZXQgZGF0ZVRpbWVGb3JtYXQuW1tpbml0aWFsaXplZEludGxPYmplY3RdXSB0byB0cnVlLgorICAg
IGRhdGVUaW1lRm9ybWF0LT5zZXRJbml0aWFsaXplZEludGxPYmplY3QoKTsKKworICAgIC8vIDMu
IExldCByZXF1ZXN0ZWRMb2NhbGVzIGJlIENhbm9uaWNhbGl6ZUxvY2FsZUxpc3QobG9jYWxlcyku
CisgICAgVmVjdG9yPFN0cmluZz4gcmVxdWVzdGVkTG9jYWxlcyA9IGNhbm9uaWNhbGl6ZUxvY2Fs
ZUxpc3QoKnN0YXRlLCBsb2NhbGVzKTsKKyAgICAvLyA0LiBSZXR1cm5JZkFicnVwdChyZXF1ZXN0
ZWRMb2NhbGVzKSwKKyAgICBpZiAoc3RhdGUtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1
cm4ganNVbmRlZmluZWQoKTsKKworICAgIC8vIDUuIExldCBvcHRpb25zIGJlIFRvRGF0ZVRpbWVP
cHRpb25zKG9wdGlvbnMsICJhbnkiLCAiZGF0ZSIpLgorICAgIEpTT2JqZWN0KiBvcHRpb25zID0g
dG9EYXRlVGltZU9wdGlvbnMoc3RhdGUsIG9yaWdpbmFsT3B0aW9ucywgRGF0ZVRpbWVPcHRpb25S
ZXF1aXJlZDo6QW55LCBEYXRlVGltZU9wdGlvbkRlZmF1bHRzOjpEYXRlKTsKKyAgICAvLyA2LiBS
ZXR1cm5JZkFicnVwdChvcHRpb25zKS4KKyAgICBpZiAoc3RhdGUtPmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAgIC8vIDcuIExldCBvcHQgYmUgYSBu
ZXcgUmVjb3JkLgorICAgIEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+IGxvY2FsZU9wdDsKKworICAg
IC8vIDguIExldCBtYXRjaGVyIGJlIEdldE9wdGlvbihvcHRpb25zLCAibG9jYWxlTWF0Y2hlciIs
ICJzdHJpbmciLCDCqyJsb29rdXAiLCAiYmVzdCBmaXQiwrssICJiZXN0IGZpdCIpLgorICAgIFZN
JiB2bSA9IHN0YXRlLT52bSgpOworICAgIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiBsb2NhbGVNYXRj
aGVycyh7IEFTQ0lJTGl0ZXJhbCgibG9va3VwIiksIEFTQ0lJTGl0ZXJhbCgiYmVzdCBmaXQiKSB9
KTsKKyAgICBTdHJpbmcgbG9jYWxlTWF0Y2hlciA9IGludGxTdHJpbmdPcHRpb24oKnN0YXRlLCBv
cHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5sb2NhbGVNYXRjaGVyLCBsb2NhbGVNYXRjaGVycywg
ImxvY2FsZU1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgXCJsb29rdXBcIiBvciBcImJlc3QgZml0XCIi
LCBBU0NJSUxpdGVyYWwoImJlc3QgZml0IikpOworICAgIC8vIDkuIFJldHVybklmQWJydXB0KG1h
dGNoZXIpLgorICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBq
c1VuZGVmaW5lZCgpOworICAgIC8vIDEwLiBTZXQgb3B0LltbbG9jYWxlTWF0Y2hlcl1dIHRvIG1h
dGNoZXIuCisgICAgbG9jYWxlT3B0LnNldCh2bS5wcm9wZXJ0eU5hbWVzLT5sb2NhbGVNYXRjaGVy
LnN0cmluZygpLCBsb2NhbGVNYXRjaGVyKTsKKworICAgIC8vIDExLiBMZXQgbG9jYWxlRGF0YSBi
ZSB0aGUgdmFsdWUgb2YgJURhdGVUaW1lRm9ybWF0JS5bW2xvY2FsZURhdGFdXS4KKyAgICAvLyAx
Mi4gTGV0IHIgYmUgUmVzb2x2ZUxvY2FsZSggJURhdGVUaW1lRm9ybWF0JS5bW2F2YWlsYWJsZUxv
Y2FsZXNdXSwgcmVxdWVzdGVkTG9jYWxlcywgb3B0LCAlRGF0ZVRpbWVGb3JtYXQlLltbcmVsZXZh
bnRFeHRlbnNpb25LZXlzXV0sIGxvY2FsZURhdGEpLgorICAgIGNvbnN0IEhhc2hTZXQ8U3RyaW5n
PiBhdmFpbGFibGVMb2NhbGVzID0gc3RhdGUtPmxleGljYWxHbG9iYWxPYmplY3QoKS0+aW50bERh
dGVUaW1lRm9ybWF0QXZhaWxhYmxlTG9jYWxlcygpOworICAgIGNvbnN0IFZlY3RvcjxTdHJpbmc+
IHJlbGV2YW50RXh0ZW5zaW9uS2V5cyA9IHsgQVNDSUlMaXRlcmFsKCJjYSIpLCBBU0NJSUxpdGVy
YWwoIm51IikgfTsKKyAgICBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiByZXNvbHZlZCA9IHJlc29s
dmVMb2NhbGUoYXZhaWxhYmxlTG9jYWxlcywgcmVxdWVzdGVkTG9jYWxlcywgbG9jYWxlT3B0LCBy
ZWxldmFudEV4dGVuc2lvbktleXMsIGxvY2FsZURhdGEpOworCisgICAgLy8gMTMuIFNldCBkYXRl
VGltZUZvcm1hdC5bW2xvY2FsZV1dIHRvIHRoZSB2YWx1ZSBvZiByLltbbG9jYWxlXV0uCisgICAg
ZGF0ZVRpbWVGb3JtYXQtPnNldExvY2FsZShyZXNvbHZlZC5nZXQodm0ucHJvcGVydHlOYW1lcy0+
bG9jYWxlLnN0cmluZygpKSk7CisgICAgLy8gMTQuIFNldCBkYXRlVGltZUZvcm1hdC5bW2NhbGVu
ZGFyXV0gdG8gdGhlIHZhbHVlIG9mIHIuW1tjYV1dLgorICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRD
YWxlbmRhcihzdHJpbmdUb0NhbGVuZGFyVHlwZShyZXNvbHZlZC5nZXQoQVNDSUlMaXRlcmFsKCJj
YSIpKSkpOworICAgIC8vIDE1LiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tudW1iZXJpbmdTeXN0ZW1d
XSB0byB0aGUgdmFsdWUgb2Ygci5bW251XV0uCisgICAgZGF0ZVRpbWVGb3JtYXQtPnNldE51bWJl
cmluZ1N5c3RlbShyZXNvbHZlZC5nZXQoQVNDSUlMaXRlcmFsKCJudSIpKSk7CisgICAgLy8gMTYu
IExldCBkYXRhTG9jYWxlIGJlIHRoZSB2YWx1ZSBvZiByLltbZGF0YUxvY2FsZV1dLgorICAgIFN0
cmluZyBkYXRhTG9jYWxlID0gcmVzb2x2ZWQuZ2V0KEFTQ0lJTGl0ZXJhbCgiZGF0YUxvY2FsZSIp
KTsKKworICAgIC8vIDE3LiBMZXQgdHogYmUgR2V0KG9wdGlvbnMsICJ0aW1lWm9uZSIpLgorICAg
IEpTVmFsdWUgdHpWYWx1ZSA9IG9wdGlvbnMtPmdldChzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+
dGltZVpvbmUpOworICAgIC8vIDE4LiBSZXR1cm5JZkFicnVwdCh0eikuCisgICAgaWYgKHN0YXRl
LT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisKKyAgICAv
LyAxOS4gSWYgdHogaXMgbm90IHVuZGVmaW5lZCwgdGhlbgorICAgIFN0cmluZyB0ejsKKyAgICBp
ZiAoIXR6VmFsdWUuaXNVbmRlZmluZWQoKSkgeworICAgICAgICAvLyBhLiBMZXQgdHogYmUgVG9T
dHJpbmcodHopLgorICAgICAgICBTdHJpbmcgb3JpZ2luYWxUeiA9IHR6VmFsdWUudG9XVEZTdHJp
bmcoc3RhdGUpOworICAgICAgICAvLyBiLiBSZXR1cm5JZkFicnVwdCh0eikuCisgICAgICAgIGlm
IChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4ganNVbmRlZmluZWQo
KTsKKyAgICAgICAgLy8gYy4gSWYgdGhlIHJlc3VsdCBvZiBJc1ZhbGlkVGltZVpvbmVOYW1lKHR6
KSBpcyBmYWxzZSwgdGhlbiBpLiBUaHJvdyBhIFJhbmdlRXJyb3IgZXhjZXB0aW9uLgorICAgICAg
ICAvLyBkLiBMZXQgdHogYmUgQ2Fub25pY2FsaXplVGltZVpvbmVOYW1lKHR6KS4KKyAgICAgICAg
dHogPSBjYW5vbmljYWxpemVUaW1lWm9uZU5hbWUob3JpZ2luYWxUeik7CisgICAgICAgIGlmICh0
ei5pc051bGwoKSkKKyAgICAgICAgICAgIHJldHVybiB0aHJvd1JhbmdlRXJyb3Ioc3RhdGUsIFN0
cmluZzo6Zm9ybWF0KCJpbnZhbGlkIHRpbWUgem9uZTogJXMiLCBvcmlnaW5hbFR6LnV0ZjgoKS5k
YXRhKCkpKTsKKyAgICB9IGVsc2UKKyAgICAvLyAyMC4gRWxzZSwKKyAgICAgICAgLy8gYS4gTGV0
IHR6IGJlIERlZmF1bHRUaW1lWm9uZSgpLgorICAgICAgICB0eiA9IGRlZmF1bHRUaW1lWm9uZSgp
OworCisgICAgLy8gMjEuIFNldCBkYXRlVGltZUZvcm1hdC5bW3RpbWVab25lXV0gdG8gdHouCisg
ICAgZGF0ZVRpbWVGb3JtYXQtPnNldFRpbWVab25lKHR6KTsKKworICAgIC8vIDIyLiBMZXQgb3B0
IGJlIGEgbmV3IFJlY29yZC4KKyAgICAvLyBSYXRoZXIgdGhhbiBidWlsZGluZyBhIHJlY29yZCwg
YnVpbGQgdGhlIHNrZWxldG9uIHBhdHRlcm4uCisgICAgU3RyaW5nQnVpbGRlciBmb3JtYXRPcHQ7
CisKKyAgICAvLyAyMy4gRm9yIGVhY2ggcm93IG9mIFRhYmxlIDMsIGV4Y2VwdCB0aGUgaGVhZGVy
IHJvdywgZG86CisgICAgLy8gYS4gTGV0IHByb3AgYmUgdGhlIG5hbWUgZ2l2ZW4gaW4gdGhlIFBy
b3BlcnR5IGNvbHVtbiBvZiB0aGUgcm93LgorICAgIC8vIGIuIExldCB2YWx1ZSBiZSBHZXRPcHRp
b24ob3B0aW9ucywgcHJvcCwgInN0cmluZyIsIMKrdGhlIHN0cmluZ3MgZ2l2ZW4gaW4gdGhlIFZh
bHVlcyBjb2x1bW4gb2YgdGhlIHJvd8K7LCB1bmRlZmluZWQpLgorICAgIC8vIGMuIFJldHVybklm
QWJydXB0KHZhbHVlKS4KKyAgICAvLyBkLiBTZXQgb3B0LltbPHByb3A+XV0gdG8gdmFsdWUuCisg
ICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IG5hcnJvd1Nob3J0TG9uZyh7IEFTQ0lJTGl0ZXJhbCgi
bmFycm93IiksIEFTQ0lJTGl0ZXJhbCgic2hvcnQiKSwgQVNDSUlMaXRlcmFsKCJsb25nIikgfSk7
CisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IHR3b0RpZ2l0TnVtZXJpYyh7IEFTQ0lJTGl0ZXJh
bCgiMi1kaWdpdCIpLCBBU0NJSUxpdGVyYWwoIm51bWVyaWMiKSB9KTsKKyAgICBjb25zdCBIYXNo
U2V0PFN0cmluZz4gdHdvRGlnaXROdW1lcmljTmFycm93U2hvcnRMb25nKHsgQVNDSUlMaXRlcmFs
KCIyLWRpZ2l0IiksIEFTQ0lJTGl0ZXJhbCgibnVtZXJpYyIpLCBBU0NJSUxpdGVyYWwoIm5hcnJv
dyIpLCBBU0NJSUxpdGVyYWwoInNob3J0IiksIEFTQ0lJTGl0ZXJhbCgibG9uZyIpIH0pOworICAg
IGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiBzaG9ydExvbmcoeyBBU0NJSUxpdGVyYWwoInNob3J0Iiks
IEFTQ0lJTGl0ZXJhbCgibG9uZyIpIH0pOworCisgICAgU3RyaW5nIHdlZWtkYXkgPSBpbnRsU3Ry
aW5nT3B0aW9uKCpzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+d2Vla2RheSwgbmFy
cm93U2hvcnRMb25nLCAid2Vla2RheSBtdXN0IGJlIFwibmFycm93XCIsIFwic2hvcnRcIiwgb3Ig
XCJsb25nXCIiLCBTdHJpbmcoKSk7CisgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAg
ICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCF3ZWVrZGF5LmlzTnVsbCgpKSB7
CisgICAgICAgIGlmICh3ZWVrZGF5ID09ICJuYXJyb3ciKQorICAgICAgICAgICAgZm9ybWF0T3B0
LmFwcGVuZCgiRUVFRUUiKTsKKyAgICAgICAgZWxzZSBpZiAod2Vla2RheSA9PSAic2hvcnQiKQor
ICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgiRUVFIik7CisgICAgICAgIGVsc2UgaWYgKHdl
ZWtkYXkgPT0gImxvbmciKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgiRUVFRSIpOwor
ICAgIH0KKworICAgIFN0cmluZyBlcmEgPSBpbnRsU3RyaW5nT3B0aW9uKCpzdGF0ZSwgb3B0aW9u
cywgdm0ucHJvcGVydHlOYW1lcy0+ZXJhLCBuYXJyb3dTaG9ydExvbmcsICJlcmEgbXVzdCBiZSBc
Im5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwibG9uZ1wiIiwgU3RyaW5nKCkpOworICAgIGlmIChz
dGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAg
IGlmICghZXJhLmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChlcmEgPT0gIm5hcnJvdyIpCisgICAg
ICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCJHR0dHRyIpOworICAgICAgICBlbHNlIGlmIChlcmEg
PT0gInNob3J0IikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoIkdHRyIpOworICAgICAg
ICBlbHNlIGlmIChlcmEgPT0gImxvbmciKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgi
R0dHRyIpOworICAgIH0KKworICAgIFN0cmluZyB5ZWFyID0gaW50bFN0cmluZ09wdGlvbigqc3Rh
dGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnllYXIsIHR3b0RpZ2l0TnVtZXJpYywgInll
YXIgbXVzdCBiZSBcIjItZGlnaXRcIiBvciBcIm51bWVyaWNcIiIsIFN0cmluZygpKTsKKyAgICBp
ZiAoc3RhdGUtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsK
KyAgICBpZiAoIXllYXIuaXNOdWxsKCkpIHsKKyAgICAgICAgaWYgKHllYXIgPT0gIjItZGlnaXQi
KQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgieXkiKTsKKyAgICAgICAgZWxzZSBpZiAo
eWVhciA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCd5Jyk7Cisg
ICAgfQorCisgICAgU3RyaW5nIG1vbnRoID0gaW50bFN0cmluZ09wdGlvbigqc3RhdGUsIG9wdGlv
bnMsIHZtLnByb3BlcnR5TmFtZXMtPm1vbnRoLCB0d29EaWdpdE51bWVyaWNOYXJyb3dTaG9ydExv
bmcsICJtb250aCBtdXN0IGJlIFwiMi1kaWdpdFwiLCBcIm51bWVyaWNcIiwgXCJuYXJyb3dcIiwg
XCJzaG9ydFwiLCBvciBcImxvbmdcIiIsIFN0cmluZygpKTsKKyAgICBpZiAoc3RhdGUtPmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBpZiAoIW1vbnRo
LmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChtb250aCA9PSAiMi1kaWdpdCIpCisgICAgICAgICAg
ICBmb3JtYXRPcHQuYXBwZW5kKCJNTSIpOworICAgICAgICBlbHNlIGlmIChtb250aCA9PSAibnVt
ZXJpYyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCdNJyk7CisgICAgICAgIGVsc2Ug
aWYgKG1vbnRoID09ICJuYXJyb3ciKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgiTU1N
TU0iKTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gInNob3J0IikKKyAgICAgICAgICAgIGZv
cm1hdE9wdC5hcHBlbmQoIk1NTSIpOworICAgICAgICBlbHNlIGlmIChtb250aCA9PSAibG9uZyIp
CisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCJNTU1NIik7CisgICAgfQorCisgICAgU3Ry
aW5nIGRheSA9IGludGxTdHJpbmdPcHRpb24oKnN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5h
bWVzLT5kYXksIHR3b0RpZ2l0TnVtZXJpYywgImRheSBtdXN0IGJlIFwiMi1kaWdpdFwiIG9yIFwi
bnVtZXJpY1wiIiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisg
ICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIGlmICghZGF5LmlzTnVsbCgpKSB7Cisg
ICAgICAgIGlmIChkYXkgPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVu
ZCgiZGQiKTsKKyAgICAgICAgZWxzZSBpZiAoZGF5ID09ICJudW1lcmljIikKKyAgICAgICAgICAg
IGZvcm1hdE9wdC5hcHBlbmQoJ2QnKTsKKyAgICB9CisKKyAgICBTdHJpbmcgaG91ciA9IGludGxT
dHJpbmdPcHRpb24oKnN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyLCB0d29E
aWdpdE51bWVyaWMsICJob3VyIG11c3QgYmUgXCIyLWRpZ2l0XCIgb3IgXCJudW1lcmljXCIiLCBT
dHJpbmcoKSk7CisgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJu
IGpzVW5kZWZpbmVkKCk7CisKKyAgICAvLyBXZSBuZWVkIGhvdXIxMiB0byBtYWtlIHRoZSBob3Vy
IHNrZWxldG9uIHBhdHRlcm4gZGVjaXNpb24sIHNvIGRvIHRoaXMgZWFybHkuCisgICAgLy8gMzIu
IExldCBocjEyIGJlIEdldE9wdGlvbihvcHRpb25zLCAiaG91cjEyIiwgImJvb2xlYW4iLCB1bmRl
ZmluZWQsIHVuZGVmaW5lZCkuCisgICAgYm9vbCBpc0hvdXIxMlVuZGVmaW5lZCA9IHRydWU7Cisg
ICAgYm9vbCBocjEyID0gaW50bEJvb2xlYW5PcHRpb24oKnN0YXRlLCBvcHRpb25zLCB2bS5wcm9w
ZXJ0eU5hbWVzLT5ob3VyMTIsIGlzSG91cjEyVW5kZWZpbmVkKTsKKyAgICAvLyAzMy4gUmV0dXJu
SWZBYnJ1cHQoaHIxMikuCisgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAg
cmV0dXJuIGpzVW5kZWZpbmVkKCk7CisKKyAgICBpZiAoIWhvdXIuaXNOdWxsKCkpIHsKKyAgICAg
ICAgaWYgKGlzSG91cjEyVW5kZWZpbmVkKSB7CisgICAgICAgICAgICBpZiAoaG91ciA9PSAiMi1k
aWdpdCIpCisgICAgICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgiamoiKTsKKyAgICAgICAg
ICAgIGVsc2UgaWYgKGhvdXIgPT0gIm51bWVyaWMiKQorICAgICAgICAgICAgICAgIGZvcm1hdE9w
dC5hcHBlbmQoJ2onKTsKKyAgICAgICAgfSBlbHNlIGlmIChocjEyKSB7CisgICAgICAgICAgICBp
ZiAoaG91ciA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgi
aGgiKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGhvdXIgPT0gIm51bWVyaWMiKQorICAgICAgICAg
ICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoJ2gnKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgIGlmIChob3VyID09ICIyLWRpZ2l0IikKKyAgICAgICAgICAgICAgICBmb3JtYXRPcHQuYXBw
ZW5kKCJISCIpOworICAgICAgICAgICAgZWxzZSBpZiAoaG91ciA9PSAibnVtZXJpYyIpCisgICAg
ICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgnSCcpOworICAgICAgICB9CisgICAgfQorCisg
ICAgU3RyaW5nIG1pbnV0ZSA9IGludGxTdHJpbmdPcHRpb24oKnN0YXRlLCBvcHRpb25zLCB2bS5w
cm9wZXJ0eU5hbWVzLT5taW51dGUsIHR3b0RpZ2l0TnVtZXJpYywgIm1pbnV0ZSBtdXN0IGJlIFwi
Mi1kaWdpdFwiIG9yIFwibnVtZXJpY1wiIiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS0+aGFk
RXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIGlmICghbWlu
dXRlLmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChtaW51dGUgPT0gIjItZGlnaXQiKQorICAgICAg
ICAgICAgZm9ybWF0T3B0LmFwcGVuZCgibW0iKTsKKyAgICAgICAgZWxzZSBpZiAobWludXRlID09
ICJudW1lcmljIikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoJ20nKTsKKyAgICB9CisK
KyAgICBTdHJpbmcgc2Vjb25kID0gaW50bFN0cmluZ09wdGlvbigqc3RhdGUsIG9wdGlvbnMsIHZt
LnByb3BlcnR5TmFtZXMtPnNlY29uZCwgdHdvRGlnaXROdW1lcmljLCAic2Vjb25kIG11c3QgYmUg
XCIyLWRpZ2l0XCIgb3IgXCJudW1lcmljXCIiLCBTdHJpbmcoKSk7CisgICAgaWYgKHN0YXRlLT5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCFz
ZWNvbmQuaXNOdWxsKCkpIHsKKyAgICAgICAgaWYgKHNlY29uZCA9PSAiMi1kaWdpdCIpCisgICAg
ICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCJzcyIpOworICAgICAgICBlbHNlIGlmIChzZWNvbmQg
PT0gIm51bWVyaWMiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgncycpOworICAgIH0K
KworICAgIFN0cmluZyB0aW1lWm9uZU5hbWUgPSBpbnRsU3RyaW5nT3B0aW9uKCpzdGF0ZSwgb3B0
aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+dGltZVpvbmVOYW1lLCBzaG9ydExvbmcsICJ0aW1lWm9u
ZU5hbWUgbXVzdCBiZSBcInNob3J0XCIgb3IgXCJsb25nXCIiLCBTdHJpbmcoKSk7CisgICAgaWYg
KHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Cisg
ICAgaWYgKCF0aW1lWm9uZU5hbWUuaXNOdWxsKCkpIHsKKyAgICAgICAgaWYgKHRpbWVab25lTmFt
ZSA9PSAic2hvcnQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgneicpOworICAgICAg
ICBlbHNlIGlmICh0aW1lWm9uZU5hbWUgPT0gImxvbmciKQorICAgICAgICAgICAgZm9ybWF0T3B0
LmFwcGVuZCgienp6eiIpOworICAgIH0KKworICAgIC8vIDI0LiBMZXQgZGF0YUxvY2FsZURhdGEg
YmUgR2V0KGxvY2FsZURhdGEsIGRhdGFMb2NhbGUpLgorICAgIC8vIDI1LiBMZXQgZm9ybWF0cyBi
ZSBHZXQoZGF0YUxvY2FsZURhdGEsICJmb3JtYXRzIikuCisgICAgLy8gMjYuIExldCBtYXRjaGVy
IGJlIEdldE9wdGlvbihvcHRpb25zLCAiZm9ybWF0TWF0Y2hlciIsICJzdHJpbmciLCDCqyJiYXNp
YyIsICJiZXN0IGZpdCLCuywgImJlc3QgZml0IikuCisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+
IGZvcm1hdE1hdGNoZXJzKHsgQVNDSUlMaXRlcmFsKCJiYXNpYyIpLCBBU0NJSUxpdGVyYWwoImJl
c3QgZml0IikgfSk7CisgICAgaW50bFN0cmluZ09wdGlvbigqc3RhdGUsIG9wdGlvbnMsIHZtLnBy
b3BlcnR5TmFtZXMtPmZvcm1hdE1hdGNoZXIsIGZvcm1hdE1hdGNoZXJzLCAiZm9ybWF0TWF0Y2hl
ciBtdXN0IGJlIGVpdGhlciBcImJhc2ljXCIgb3IgXCJiZXN0IGZpdFwiIiwgQVNDSUlMaXRlcmFs
KCJiZXN0IGZpdCIpKTsKKyAgICAvLyAyNy4gUmV0dXJuSWZBYnJ1cHQobWF0Y2hlcikuCisgICAg
aWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7
CisKKyAgICAvLyBBbHdheXMgdXNlIElDVSBkYXRlIGZvcm1hdCBnZW5lcmF0b3IsIHJhdGhlciB0
aGFuIG91ciBvd24gcGF0dGVybiBsaXN0IGFuZCBtYXRjaGVyLgorICAgIC8vIDI4LiBJZiBtYXRj
aGVyIGlzICJiYXNpYyIsIHRoZW4KKyAgICAvLyBhLiBMZXQgRm9ybWF0TWF0Y2hlciBiZSB0aGUg
YWJzdHJhY3Qgb3BlcmF0aW9uIEJhc2ljRm9ybWF0TWF0Y2hlci4KKyAgICAvLyAyOS4gRWxzZQor
ICAgIC8vIGEuIExldCBGb3JtYXRNYXRjaGVyIGJlIHRoZSBhYnN0cmFjdCBvcGVyYXRpb24gQmVz
dEZpdEZvcm1hdE1hdGNoZXIuCisgICAgLy8gMzAuIExldCBiZXN0Rm9ybWF0IGJlIEZvcm1hdE1h
dGNoZXIob3B0LCBmb3JtYXRzKS4KKyAgICAKKyAgICBVRXJyb3JDb2RlIHN0YXR1cyhVX1pFUk9f
RVJST1IpOworICAgIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IqIHBnID0gdWRhdHBnX29wZW4o
ZGF0YUxvY2FsZS51dGY4KCkuZGF0YSgpLCAmc3RhdHVzKTsKKyAgICBpZiAoVV9GQUlMVVJFKHN0
YXR1cykpCisgICAgICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcihzdGF0ZSwgdV9lcnJvck5hbWUo
c3RhdHVzKSk7CisKKyAgICBTdHJpbmdWaWV3IHNrZWxldG9uKGZvcm1hdE9wdC50b1N0cmluZygp
KTsKKyAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgaW50MzJfdCBwYXR0ZXJuTGVuZ3Ro
ID0gdWRhdHBnX2dldEJlc3RQYXR0ZXJuKHBnLCBza2VsZXRvbi51cGNvbnZlcnRlZENoYXJhY3Rl
cnMoKSwgc2tlbGV0b24ubGVuZ3RoKCksIG51bGxwdHIsIDAsICZzdGF0dXMpOworICAgIGlmIChV
X0ZBSUxVUkUoc3RhdHVzKSAmJiBzdGF0dXMgIT0gVV9CVUZGRVJfT1ZFUkZMT1dfRVJST1IpIHsK
KyAgICAgICAgdWRhdHBnX2Nsb3NlKHBnKTsKKyAgICAgICAgcmV0dXJuIHRocm93VHlwZUVycm9y
KHN0YXRlLCB1X2Vycm9yTmFtZShzdGF0dXMpKTsKKyAgICB9CisKKyAgICBzdGF0dXMgPSBVX1pF
Uk9fRVJST1I7CisgICAgVmVjdG9yPFVDaGFyPiBwYXR0ZXJuQnVmZmVyKHBhdHRlcm5MZW5ndGgp
OworICAgIHVkYXRwZ19nZXRCZXN0UGF0dGVybihwZywgc2tlbGV0b24udXBjb252ZXJ0ZWRDaGFy
YWN0ZXJzKCksIHNrZWxldG9uLmxlbmd0aCgpLCBwYXR0ZXJuQnVmZmVyLmRhdGEoKSwgcGF0dGVy
bkxlbmd0aCwgJnN0YXR1cyk7CisgICAgdWRhdHBnX2Nsb3NlKHBnKTsKKyAgICBpZiAoVV9GQUlM
VVJFKHN0YXR1cykpCisgICAgICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcihzdGF0ZSwgdV9lcnJv
ck5hbWUoc3RhdHVzKSk7CisKKyAgICBTdHJpbmcgcGF0dGVybihwYXR0ZXJuQnVmZmVyLmRhdGEo
KSwgcGF0dGVybkxlbmd0aCk7CisKKyAgICAvLyAzMS4gRm9yIGVhY2ggcm93IGluIFRhYmxlIDMs
IGV4Y2VwdCB0aGUgaGVhZGVyIHJvdywgZG8KKyAgICAvLyBhLiBMZXQgcHJvcCBiZSB0aGUgbmFt
ZSBnaXZlbiBpbiB0aGUgUHJvcGVydHkgY29sdW1uIG9mIHRoZSByb3cuCisgICAgLy8gYi4gTGV0
IHAgYmUgR2V0KGJlc3RGb3JtYXQsIHByb3ApLgorICAgIC8vIGMuIElmIHAgbm90IHVuZGVmaW5l
ZCwgdGhlbiBpLiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1s8cHJvcD5dXSB0byBwLgorCisgICAgLy8g
MzQuIElmIGRhdGVUaW1lRm9ybWF0IGhhcyBhbiBpbnRlcm5hbCBzbG90IFtbaG91cl1dLCB0aGVu
CisgICAgLy8gYS4gSWYgaHIxMiBpcyB1bmRlZmluZWQsIHRoZW4gaS4gTGV0IGhyMTIgYmUgR2V0
KGRhdGFMb2NhbGVEYXRhLCAiaG91cjEyIikuCisgICAgLy8gYi4gU2V0IGRhdGVUaW1lRm9ybWF0
LltbaG91cjEyXV0gdG8gaHIxMi4KKyAgICAvLyBjLiBJZiBocjEyIGlzIHRydWUsIHRoZW4KKyAg
ICAvLyBpLiBMZXQgaG91ck5vMCBiZSBHZXQoZGF0YUxvY2FsZURhdGEsICJob3VyTm8wIikuCisg
ICAgLy8gaWkuIFNldCBkYXRlVGltZUZvcm1hdC5bW2hvdXJObzBdXSB0byBob3VyTm8wLgorICAg
IC8vIGlpaS4gTGV0IHBhdHRlcm4gYmUgR2V0KGJlc3RGb3JtYXQsICJwYXR0ZXJuMTIiKS4KKyAg
ICAvLyBkLiBFbHNlCisgICAgLy8gaS4gTGV0IHBhdHRlcm4gYmUgR2V0KGJlc3RGb3JtYXQsICJw
YXR0ZXJuIikuCisgICAgLy8gMzUuIEVsc2UKKyAgICAvLyBhLiBMZXQgcGF0dGVybiBiZSBHZXQo
YmVzdEZvcm1hdCwgInBhdHRlcm4iKS4KKyAgICAvLyAzNi4gU2V0IGRhdGVUaW1lRm9ybWF0Lltb
cGF0dGVybl1dIHRvIHBhdHRlcm4uCisgICAgc2V0Rm9ybWF0c0Zyb21QYXR0ZXJuKGRhdGVUaW1l
Rm9ybWF0LCBwYXR0ZXJuKTsKKworICAgIC8vIDM3LiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tib3Vu
ZEZvcm1hdF1dIHRvIHVuZGVmaW5lZC4KKyAgICAvLyBBbHJlYWR5IHVuZGVmaW5lZC4KKworICAg
IC8vIDM4LiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tpbml0aWFsaXplZERhdGVUaW1lRm9ybWF0XV0g
dG8gdHJ1ZS4KKyAgICBkYXRlVGltZUZvcm1hdC0+c2V0SW5pdGlhbGl6ZWREYXRlVGltZUZvcm1h
dCgpOworCisgICAgLy8gMzkuIFJldHVybmRhdGVUaW1lRm9ybWF0LgorICAgIHJldHVybiBkYXRl
VGltZUZvcm1hdDsKK30KKwogRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRp
bWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUoRXhlY1N0YXRlKiBzdGF0ZSkKIHsKICAgICAvLyAx
Mi4zLjQgRGF0ZVRpbWUgRm9ybWF0IEZ1bmN0aW9ucyAoRUNNQS00MDIgMi4wKQogICAgIC8vIDEu
IExldCBkdGYgYmUgdGhlIHRoaXMgdmFsdWUuCiAgICAgSW50bERhdGVUaW1lRm9ybWF0KiBmb3Jt
YXQgPSBqc0R5bmFtaWNDYXN0PEludGxEYXRlVGltZUZvcm1hdCo+KHN0YXRlLT50aGlzVmFsdWUo
KSk7CiAgICAgLy8gMi4gQXNzZXJ0OiBUeXBlKGR0ZikgaXMgT2JqZWN0IGFuZCBkdGYgaGFzIGFu
IFtbaW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdF1dIGludGVybmFsIHNsb3Qgd2hvc2UgdmFsdWUg
aXMgdHJ1ZS4KLSAgICBpZiAoIWZvcm1hdCkKLSAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZSh0aHJvd1R5cGVFcnJvcihzdGF0ZSkpOworICAgIGlmICghZm9ybWF0IHx8ICFmb3JtYXQtPmlu
aXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQoKSkKKyAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZSh0aHJvd1R5cGVFcnJvcihzdGF0ZSwgQVNDSUlMaXRlcmFsKCJEYXRlVGltZUZvcm1hdCBmb3Jt
YXQoKSBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMg
YSBEYXRlVGltZUZvcm1hdCIpKSk7CiAKICAgICBKU1ZhbHVlIGRhdGUgPSBzdGF0ZS0+YXJndW1l
bnQoMCk7CiAgICAgZG91YmxlIHZhbHVlOwpAQCAtMTE3LDcgKzgzMiw3IEBAIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVUaW1lRm9ybWF0RnVuY0Zvcm1hdERhdGVUaW1lKEV4
ZWNTdGF0ZSogc3RhCiAKICAgICAvLyAxLiBJZiB4IGlzIG5vdCBhIGZpbml0ZSBOdW1iZXIsIHRo
ZW4gdGhyb3cgYSBSYW5nZUVycm9yIGV4Y2VwdGlvbi4KICAgICBpZiAoIXN0ZDo6aXNmaW5pdGUo
dmFsdWUpKQotICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93UmFuZ2VFcnJvcihz
dGF0ZSwgQVNDSUlMaXRlcmFsKCJkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVG
b3JtYXQuZm9ybWF0KCkiKSkpOworICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93
UmFuZ2VFcnJvcihzdGF0ZSwgQVNDSUlMaXRlcmFsKCJkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUg
aW4gRGF0ZVRpbWVGb3JtYXQgZm9ybWF0KCkiKSkpOwogCiAgICAgLy8gRklYTUU6IGltcGxlbWVu
dCAyIC0gOQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
RGF0ZVRpbWVGb3JtYXQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRl
VGltZUZvcm1hdC5oCmluZGV4IDdkYWVkMTM4ZmIwOGRjZmEzYmU2N2QzN2M4M2E0N2RiNGFhYmNi
ZDcuLjk2NjcwYmY4OTAwMzhhZGZhMGRlMGZhNjVjYjVmMWNkNjRiYmU2OTYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oCkBAIC0z
OSw2ICszOSwzNyBAQCBjbGFzcyBJbnRsRGF0ZVRpbWVGb3JtYXQgOiBwdWJsaWMgSlNEZXN0cnVj
dGlibGVPYmplY3QgewogcHVibGljOgogICAgIHR5cGVkZWYgSlNEZXN0cnVjdGlibGVPYmplY3Qg
QmFzZTsKIAorICAgIGVudW0gY2xhc3MgQ2FsZW5kYXJUeXBlIHsKKyAgICAgICAgQnVkZGhpc3Qs
CisgICAgICAgIENoaW5lc2UsCisgICAgICAgIENvcHRpYywKKyAgICAgICAgRGFuZ2ksCisgICAg
ICAgIEV0aGlvYWEsCisgICAgICAgIEV0aGlvcGljLAorICAgICAgICBHcmVnb3J5LAorICAgICAg
ICBIZWJyZXcsCisgICAgICAgIEluZGlhbiwKKyAgICAgICAgSXNsYW1pYywKKyAgICAgICAgSXNs
YW1pY1VtYWxxdXJhLAorICAgICAgICBJc2xhbWljVGJsYSwKKyAgICAgICAgSXNsYW1pY0Npdmls
LAorICAgICAgICBJc2xhbWljUmdzYSwKKyAgICAgICAgSXNvODYwMSwKKyAgICAgICAgSmFwYW5l
c2UsCisgICAgICAgIFBlcnNpYW4sCisgICAgICAgIFJvYworICAgIH07CisKKyAgICBlbnVtIGNs
YXNzIFdlZWtkYXlTdHlsZSB7IE5vbmUsIE5hcnJvdywgU2hvcnQsIExvbmcgfTsKKyAgICBlbnVt
IGNsYXNzIEVyYVN0eWxlIHsgTm9uZSwgTmFycm93LCBTaG9ydCwgTG9uZyB9OworICAgIGVudW0g
Y2xhc3MgWWVhclN0eWxlIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMgfTsKKyAgICBlbnVtIGNs
YXNzIE1vbnRoU3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJpYywgTmFycm93LCBTaG9ydCwg
TG9uZyB9OworICAgIGVudW0gY2xhc3MgRGF5U3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJp
YyB9OworICAgIGVudW0gY2xhc3MgSG91clN0eWxlIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMg
fTsKKyAgICBlbnVtIGNsYXNzIE1pbnV0ZVN0eWxlIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMg
fTsKKyAgICBlbnVtIGNsYXNzIFNlY29uZFN0eWxlIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMg
fTsKKyAgICBlbnVtIGNsYXNzIFRpbWVab25lTmFtZVN0eWxlIHsgTm9uZSwgU2hvcnQsIExvbmcg
fTsKKwogICAgIHN0YXRpYyBJbnRsRGF0ZVRpbWVGb3JtYXQqIGNyZWF0ZShWTSYsIEludGxEYXRl
VGltZUZvcm1hdENvbnN0cnVjdG9yKik7CiAgICAgc3RhdGljIFN0cnVjdHVyZSogY3JlYXRlU3Ry
dWN0dXJlKFZNJiwgSlNHbG9iYWxPYmplY3QqLCBKU1ZhbHVlKTsKIApAQCAtNDYsNiArNzcsNDAg
QEAgcHVibGljOgogCiAgICAgSlNCb3VuZEZ1bmN0aW9uKiBib3VuZEZvcm1hdCgpIGNvbnN0IHsg
cmV0dXJuIG1fYm91bmRGb3JtYXQuZ2V0KCk7IH0KICAgICB2b2lkIHNldEJvdW5kRm9ybWF0KFZN
JiwgSlNCb3VuZEZ1bmN0aW9uKik7CisgICAgCisgICAgYm9vbCBpbml0aWFsaXplZEludGxPYmpl
Y3QoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYWxpemVkSW50bE9iamVjdDsgfQorICAgIHZvaWQg
c2V0SW5pdGlhbGl6ZWRJbnRsT2JqZWN0KCkgeyBtX2luaXRpYWxpemVkSW50bE9iamVjdCA9IHRy
dWU7IH0KKyAgICBib29sIGluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQoKSBjb25zdCB7IHJldHVy
biBtX2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQ7IH0KKyAgICB2b2lkIHNldEluaXRpYWxpemVk
RGF0ZVRpbWVGb3JtYXQoKSB7IG1faW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdCA9IHRydWU7IH0K
KworICAgIFN0cmluZyBsb2NhbGUoKSBjb25zdCB7IHJldHVybiBtX2xvY2FsZTsgfQorICAgIHZv
aWQgc2V0TG9jYWxlKGNvbnN0IFN0cmluZyYgbG9jYWxlKSB7IG1fbG9jYWxlID0gbG9jYWxlOyB9
CisgICAgQ2FsZW5kYXJUeXBlIGNhbGVuZGFyKCkgY29uc3QgeyByZXR1cm4gbV9jYWxlbmRhcjsg
fQorICAgIHZvaWQgc2V0Q2FsZW5kYXIoY29uc3QgQ2FsZW5kYXJUeXBlJiBjYWxlbmRhcikgeyBt
X2NhbGVuZGFyID0gY2FsZW5kYXI7IH0KKyAgICBTdHJpbmcgbnVtYmVyaW5nU3lzdGVtKCkgY29u
c3QgeyByZXR1cm4gbV9udW1iZXJpbmdTeXN0ZW07IH0KKyAgICB2b2lkIHNldE51bWJlcmluZ1N5
c3RlbShjb25zdCBTdHJpbmcmIG51bWJlcmluZ1N5c3RlbSkgeyBtX251bWJlcmluZ1N5c3RlbSA9
IG51bWJlcmluZ1N5c3RlbTsgfQorICAgIFN0cmluZyB0aW1lWm9uZSgpIGNvbnN0IHsgcmV0dXJu
IG1fdGltZVpvbmU7IH0KKyAgICB2b2lkIHNldFRpbWVab25lKGNvbnN0IFN0cmluZyYgdGltZVpv
bmUpIHsgbV90aW1lWm9uZSA9IHRpbWVab25lOyB9CisgICAgYm9vbCBob3VyMTIoKSBjb25zdCB7
IHJldHVybiBtX2hvdXIxMjsgfQorICAgIHZvaWQgc2V0SG91cjEyKGNvbnN0IGJvb2wmIGhvdXIx
MikgeyBtX2hvdXIxMiA9IGhvdXIxMjsgfQorICAgIFdlZWtkYXlTdHlsZSB3ZWVrZGF5KCkgY29u
c3QgeyByZXR1cm4gbV93ZWVrZGF5OyB9CisgICAgdm9pZCBzZXRXZWVrZGF5KGNvbnN0IFdlZWtk
YXlTdHlsZSYgd2Vla2RheSkgeyBtX3dlZWtkYXkgPSB3ZWVrZGF5OyB9CisgICAgRXJhU3R5bGUg
ZXJhKCkgY29uc3QgeyByZXR1cm4gbV9lcmE7IH0KKyAgICB2b2lkIHNldEVyYShjb25zdCBFcmFT
dHlsZSYgZXJhKSB7IG1fZXJhID0gZXJhOyB9CisgICAgWWVhclN0eWxlIHllYXIoKSBjb25zdCB7
IHJldHVybiBtX3llYXI7IH0KKyAgICB2b2lkIHNldFllYXIoY29uc3QgWWVhclN0eWxlJiB5ZWFy
KSB7IG1feWVhciA9IHllYXI7IH0KKyAgICBNb250aFN0eWxlIG1vbnRoKCkgY29uc3QgeyByZXR1
cm4gbV9tb250aDsgfQorICAgIHZvaWQgc2V0TW9udGgoY29uc3QgTW9udGhTdHlsZSYgbW9udGgp
IHsgbV9tb250aCA9IG1vbnRoOyB9CisgICAgRGF5U3R5bGUgZGF5KCkgY29uc3QgeyByZXR1cm4g
bV9kYXk7IH0KKyAgICB2b2lkIHNldERheShjb25zdCBEYXlTdHlsZSYgZGF5KSB7IG1fZGF5ID0g
ZGF5OyB9CisgICAgSG91clN0eWxlIGhvdXIoKSBjb25zdCB7IHJldHVybiBtX2hvdXI7IH0KKyAg
ICB2b2lkIHNldEhvdXIoY29uc3QgSG91clN0eWxlJiBob3VyKSB7IG1faG91ciA9IGhvdXI7IH0K
KyAgICBNaW51dGVTdHlsZSBtaW51dGUoKSBjb25zdCB7IHJldHVybiBtX21pbnV0ZTsgfQorICAg
IHZvaWQgc2V0TWludXRlKGNvbnN0IE1pbnV0ZVN0eWxlJiBtaW51dGUpIHsgbV9taW51dGUgPSBt
aW51dGU7IH0KKyAgICBTZWNvbmRTdHlsZSBzZWNvbmQoKSBjb25zdCB7IHJldHVybiBtX3NlY29u
ZDsgfQorICAgIHZvaWQgc2V0U2Vjb25kKGNvbnN0IFNlY29uZFN0eWxlJiBzZWNvbmQpIHsgbV9z
ZWNvbmQgPSBzZWNvbmQ7IH0KKyAgICBUaW1lWm9uZU5hbWVTdHlsZSB0aW1lWm9uZU5hbWUoKSBj
b25zdCB7IHJldHVybiBtX3RpbWVab25lTmFtZTsgfQorICAgIHZvaWQgc2V0VGltZVpvbmVOYW1l
KGNvbnN0IFRpbWVab25lTmFtZVN0eWxlJiB0aW1lWm9uZU5hbWUpIHsgbV90aW1lWm9uZU5hbWUg
PSB0aW1lWm9uZU5hbWU7IH0KIAogcHJvdGVjdGVkOgogICAgIEludGxEYXRlVGltZUZvcm1hdChW
TSYsIFN0cnVjdHVyZSopOwpAQCAtNTQsOCArMTE5LDI5IEBAIHByb3RlY3RlZDoKICAgICBzdGF0
aWMgdm9pZCB2aXNpdENoaWxkcmVuKEpTQ2VsbCosIFNsb3RWaXNpdG9yJik7CiAKICAgICBXcml0
ZUJhcnJpZXI8SlNCb3VuZEZ1bmN0aW9uPiBtX2JvdW5kRm9ybWF0OworCitwcml2YXRlOgorICAg
IGJvb2wgbV9pbml0aWFsaXplZEludGxPYmplY3QgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pbml0
aWFsaXplZERhdGVUaW1lRm9ybWF0IHsgZmFsc2UgfTsKKworICAgIFN0cmluZyBtX2xvY2FsZSB7
IEFTQ0lJTGl0ZXJhbCgiZW4iKSB9OworICAgIENhbGVuZGFyVHlwZSBtX2NhbGVuZGFyIHsgQ2Fs
ZW5kYXJUeXBlOjpHcmVnb3J5IH07CisgICAgU3RyaW5nIG1fbnVtYmVyaW5nU3lzdGVtIHsgQVND
SUlMaXRlcmFsKCJsYXRuIikgfTsKKyAgICBTdHJpbmcgbV90aW1lWm9uZSB7IEFTQ0lJTGl0ZXJh
bCgiVVRDIikgfTsKKyAgICBib29sIG1faG91cjEyIHsgdHJ1ZSB9OworICAgIFdlZWtkYXlTdHls
ZSBtX3dlZWtkYXkgeyBXZWVrZGF5U3R5bGU6Ok5vbmUgfTsKKyAgICBFcmFTdHlsZSBtX2VyYSB7
IEVyYVN0eWxlOjpOb25lIH07CisgICAgWWVhclN0eWxlIG1feWVhciB7IFllYXJTdHlsZTo6Tm9u
ZSB9OworICAgIE1vbnRoU3R5bGUgbV9tb250aCB7IE1vbnRoU3R5bGU6Ok5vbmUgfTsKKyAgICBE
YXlTdHlsZSBtX2RheSB7IERheVN0eWxlOjpOb25lIH07CisgICAgSG91clN0eWxlIG1faG91ciB7
IEhvdXJTdHlsZTo6Tm9uZSB9OworICAgIE1pbnV0ZVN0eWxlIG1fbWludXRlIHsgTWludXRlU3R5
bGU6Ok5vbmUgfTsKKyAgICBTZWNvbmRTdHlsZSBtX3NlY29uZCB7IFNlY29uZFN0eWxlOjpOb25l
IH07CisgICAgVGltZVpvbmVOYW1lU3R5bGUgbV90aW1lWm9uZU5hbWUgeyBUaW1lWm9uZU5hbWVT
dHlsZTo6Tm9uZSB9OwogfTsKLSAgICAKKworU3RyaW5nIGRlZmF1bHRUaW1lWm9uZSgpOworSlNW
YWx1ZSBpbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoRXhlY1N0YXRlKiwgSW50bERhdGVUaW1lRm9y
bWF0KiwgSlNWYWx1ZSBsb2NhbGVzLCBKU1ZhbHVlIG9wdGlvbnMpOwogRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUoRXhlY1N0
YXRlKik7CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3Bw
CmluZGV4IDFlODlmYWFhYjdlYjg4YzdmODY0ZTBmNTNmMjU1Y2I4YTJjNWVlY2MuLmFkODE3MTIx
MDVlZWY5ZGM2MTBmY2RjM2YzM2NlYzc5NDNlZjc4OWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1
Y3Rvci5jcHAKQEAgLTEwNCw5ICsxMDQsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hP
U1RfQ0FMTCBjb25zdHJ1Y3RJbnRsRGF0ZVRpbWVGb3JtYXQoRXhlY1N0YXRlKiBzdGF0ZQogICAg
IEFTU0VSVChkYXRlVGltZUZvcm1hdCk7CiAKICAgICAvLyA0LiBSZXR1cm4gSW5pdGlhbGl6ZURh
dGVUaW1lRm9ybWF0KGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKS4KLSAgICAvLyBG
SVhNRTogcmV0dXJuIEpTVmFsdWU6OmVuY29kZShJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoZGF0
ZVRpbWVGb3JtYXQsIGxvY2FsZXMsIG9wdGlvbnMpKTsKLQotICAgIHJldHVybiBKU1ZhbHVlOjpl
bmNvZGUoZGF0ZVRpbWVGb3JtYXQpOworICAgIEpTVmFsdWUgbG9jYWxlcyA9IHN0YXRlLT5hcmd1
bWVudCgwKTsKKyAgICBKU1ZhbHVlIG9wdGlvbnMgPSBzdGF0ZS0+YXJndW1lbnQoMSk7CisgICAg
cmV0dXJuIEpTVmFsdWU6OmVuY29kZShpbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoc3RhdGUsIGRh
dGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKSk7CiB9CiAKIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGxJbnRsRGF0ZVRpbWVGb3JtYXQoRXhlY1N0YXRlKiBzdGF0
ZSkKQEAgLTEyMyw5ICsxMjMsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBjYWxsSW50bERhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSogc3RhdGUpCiAgICAgQVNTRVJUKGRh
dGVUaW1lRm9ybWF0KTsKIAogICAgIC8vIDQuIFJldHVybiBJbml0aWFsaXplRGF0ZVRpbWVGb3Jt
YXQoZGF0ZVRpbWVGb3JtYXQsIGxvY2FsZXMsIG9wdGlvbnMpLgotICAgIC8vIEZJWE1FOiByZXR1
cm4gSlNWYWx1ZTo6ZW5jb2RlKEluaXRpYWxpemVEYXRlVGltZUZvcm1hdChkYXRlVGltZUZvcm1h
dCwgbG9jYWxlcywgb3B0aW9ucykpOwotCi0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShkYXRl
VGltZUZvcm1hdCk7CisgICAgSlNWYWx1ZSBsb2NhbGVzID0gc3RhdGUtPmFyZ3VtZW50KDApOwor
ICAgIEpTVmFsdWUgb3B0aW9ucyA9IHN0YXRlLT5hcmd1bWVudCgxKTsKKyAgICByZXR1cm4gSlNW
YWx1ZTo6ZW5jb2RlKGluaXRpYWxpemVEYXRlVGltZUZvcm1hdChzdGF0ZSwgZGF0ZVRpbWVGb3Jt
YXQsIGxvY2FsZXMsIG9wdGlvbnMpKTsKIH0KIAogQ29uc3RydWN0VHlwZSBJbnRsRGF0ZVRpbWVG
b3JtYXRDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YShKU0NlbGwqLCBDb25zdHJ1Y3REYXRh
JiBjb25zdHJ1Y3REYXRhKQpAQCAtMTYxLDcgKzE2MSw3IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTEwgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3JGdW5jU3VwcG9ydGVkTG9jYWxl
c09mCiAgICAgLy8gMy4gUmV0dXJuIFN1cHBvcnRlZExvY2FsZXMoYXZhaWxhYmxlTG9jYWxlcywg
cmVxdWVzdGVkTG9jYWxlcywgb3B0aW9ucykuCiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShz
dXBwb3J0ZWRMb2NhbGVzKCpzdGF0ZSwgYXZhaWxhYmxlTG9jYWxlcywgcmVxdWVzdGVkTG9jYWxl
cywgc3RhdGUtPmFyZ3VtZW50KDEpKSk7CiB9Ci0gICAgCisKIHZvaWQgSW50bERhdGVUaW1lRm9y
bWF0Q29uc3RydWN0b3I6OnZpc2l0Q2hpbGRyZW4oSlNDZWxsKiBjZWxsLCBTbG90VmlzaXRvciYg
dmlzaXRvcikKIHsKICAgICBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvciogdGhpc09iamVj
dCA9IGpzQ2FzdDxJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcio+KGNlbGwpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJv
dG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZv
cm1hdFByb3RvdHlwZS5jcHAKaW5kZXggZDVlNTI1OTgyNDgwYjFlZDQ5MWU2YjdiOGZiMTJiYjhh
ZjFhZWU3ZC4uYzdjYjVhMmJkNjc0ZTZiZGMwZTMzNzU5M2Q3NzdhZTNlOWM0OWI4MSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJv
dG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGUuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAKICNpbmNsdWRlICJFcnJv
ci5oIgogI2luY2x1ZGUgIkludGxEYXRlVGltZUZvcm1hdC5oIgorI2luY2x1ZGUgIkludGxPYmpl
Y3QuaCIKICNpbmNsdWRlICJKU0JvdW5kRnVuY3Rpb24uaCIKICNpbmNsdWRlICJKU0NKU1ZhbHVl
SW5saW5lcy5oIgogI2luY2x1ZGUgIkpTQ2VsbElubGluZXMuaCIKQEAgLTM5LDggKzQwLDYgQEAK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLVNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNU
SUJMRShJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUpOwotCiBzdGF0aWMgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQo
RXhlY1N0YXRlKik7CiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0
ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKEV4ZWNTdGF0ZSopOwogCkBA
IC03OSw2ICs3OCwxNSBAQCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OkludGxEYXRlVGlt
ZUZvcm1hdFByb3RvdHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydQogdm9pZCBJbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgU3RydWN0dXJlKikKIHsK
ICAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbih2bSk7CisKKyAgICAvLyBUaGUgSW50bC5EYXRlVGlt
ZUZvcm1hdCBwcm90b3R5cGUgb2JqZWN0IGlzIGl0c2VsZiBhbiAlRGF0ZVRpbWVGb3JtYXQlIGlu
c3RhbmNlLCB3aG9zZSBpbnRlcm5hbCBzbG90cyBhcmUgc2V0IGFzIGlmIGl0IGhhZCBiZWVuIGNv
bnN0cnVjdGVkIGJ5IHRoZSBleHByZXNzaW9uIENvbnN0cnVjdCglRGF0ZVRpbWVGb3JtYXQlKS4K
KyAgICBzZXRJbml0aWFsaXplZEludGxPYmplY3QoKTsKKyAgICBzZXRMb2NhbGUoZGVmYXVsdExv
Y2FsZSgpKTsKKyAgICBzZXRUaW1lWm9uZShkZWZhdWx0VGltZVpvbmUoKSk7CisgICAgc2V0WWVh
cihZZWFyU3R5bGU6Ok51bWVyaWMpOworICAgIHNldE1vbnRoKE1vbnRoU3R5bGU6Ok51bWVyaWMp
OworICAgIHNldERheShEYXlTdHlsZTo6TnVtZXJpYyk7CisgICAgc2V0SW5pdGlhbGl6ZWREYXRl
VGltZUZvcm1hdCgpOwogfQogCiBib29sIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6Z2V0
T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSogc3RhdGUsIFByb3Bl
cnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKQEAgLTg2LDE1ICs5NCwx
NzUgQEAgYm9vbCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xv
dChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUKICAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rp
b25TbG90PEpTT2JqZWN0PihzdGF0ZSwgZGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVUYWJsZSwganND
YXN0PEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwg
c2xvdCk7CiB9CiAKK3N0YXRpYyBTdHJpbmcgY2FsZW5kYXJUeXBlVG9TdHJpbmcoY29uc3QgSW50
bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRhclR5cGUgdHlwZSkKK3sKKyAgICBzd2l0Y2ggKHR5cGUp
IHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpCdWRkaGlzdDoK
KyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiYnVkZGhpc3QiKTsKKyAgICBjYXNlIEludGxE
YXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpDaGluZXNlOgorICAgICAgICByZXR1cm4gQVND
SUlMaXRlcmFsKCJjaGluZXNlIik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVu
ZGFyVHlwZTo6Q29wdGljOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJjb3B0aWMiKTsK
KyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpEYW5naToKKyAgICAg
ICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiZGFuZ2kiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZv
cm1hdDo6Q2FsZW5kYXJUeXBlOjpFdGhpb2FhOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFs
KCJldGhpb2FhIik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6
RXRoaW9waWM6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoImV0aGlvcGljIik7CisgICAg
Y2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6R3JlZ29yeToKKyAgICAgICAg
cmV0dXJuIEFTQ0lJTGl0ZXJhbCgiZ3JlZ29yeSIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9y
bWF0OjpDYWxlbmRhclR5cGU6OkhlYnJldzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgi
aGVicmV3Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6SW5k
aWFuOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJpbmRpYW4iKTsKKyAgICBjYXNlIElu
dGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpJc2xhbWljOgorICAgICAgICByZXR1cm4g
QVNDSUlMaXRlcmFsKCJpc2xhbWljIik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNh
bGVuZGFyVHlwZTo6SXNsYW1pY1VtYWxxdXJhOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFs
KCJpc2xhbWljLXVtYWxxdXJhIik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVu
ZGFyVHlwZTo6SXNsYW1pY1RibGE6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoImlzbGFt
aWMtdGJsYSIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRhclR5cGU6Oklz
bGFtaWNDaXZpbDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiaXNsYW1pYy1jaXZpbCIp
OworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRhclR5cGU6OklzbGFtaWNSZ3Nh
OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJpc2xhbWljLXJnc2EiKTsKKyAgICBjYXNl
IEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpJc284NjAxOgorICAgICAgICByZXR1
cm4gQVNDSUlMaXRlcmFsKCJpc284NjAxIik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6
OkNhbGVuZGFyVHlwZTo6SmFwYW5lc2U6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoImph
cGFuZXNlIik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6UGVy
c2lhbjoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgicGVyc2lhbiIpOworICAgIGNhc2Ug
SW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRhclR5cGU6OlJvYzoKKyAgICAgICAgcmV0dXJuIEFT
Q0lJTGl0ZXJhbCgicm9jIik7CisgICAgfQorfQorCitzdGF0aWMgU3RyaW5nIHdlZWtkYXlTdHls
ZVRvU3RyaW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6V2Vla2RheVN0eWxlIHN0eWxlKQor
eworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6V2Vl
a2RheVN0eWxlOjpOb25lOgorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRs
RGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHlsZTo6TmFycm93OgorICAgICAgICByZXR1cm4gQVND
SUlMaXRlcmFsKCJuYXJyb3ciKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6V2Vla2Rh
eVN0eWxlOjpTaG9ydDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgic2hvcnQiKTsKKyAg
ICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6V2Vla2RheVN0eWxlOjpMb25nOgorICAgICAgICBy
ZXR1cm4gQVNDSUlMaXRlcmFsKCJsb25nIik7CisgICAgfQorfQorCitzdGF0aWMgU3RyaW5nIGVy
YVN0eWxlVG9TdHJpbmcoY29uc3QgSW50bERhdGVUaW1lRm9ybWF0OjpFcmFTdHlsZSBzdHlsZSkK
K3sKKyAgICBzd2l0Y2ggKHN0eWxlKSB7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkVy
YVN0eWxlOjpOb25lOgorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0
ZVRpbWVGb3JtYXQ6OkVyYVN0eWxlOjpOYXJyb3c6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVy
YWwoIm5hcnJvdyIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpFcmFTdHlsZTo6U2hv
cnQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoInNob3J0Iik7CisgICAgY2FzZSBJbnRs
RGF0ZVRpbWVGb3JtYXQ6OkVyYVN0eWxlOjpMb25nOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRl
cmFsKCJsb25nIik7CisgICAgfQorfQorCitzdGF0aWMgU3RyaW5nIHllYXJTdHlsZVRvU3RyaW5n
KGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlIHN0eWxlKQoreworICAgIHN3aXRj
aCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlOjpOb25l
OgorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6
OlllYXJTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIjItZGln
aXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlOjpOdW1lcmljOgor
ICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJudW1lcmljIik7CisgICAgfQorfQorCitzdGF0
aWMgU3RyaW5nIG1vbnRoU3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1v
bnRoU3R5bGUgc3R5bGUpCit7CisgICAgc3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERh
dGVUaW1lRm9ybWF0OjpNb250aFN0eWxlOjpOb25lOgorICAgICAgICByZXR1cm4gU3RyaW5nKCk7
CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6OlR3b0RpZ2l0OgorICAg
ICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCIyLWRpZ2l0Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRp
bWVGb3JtYXQ6Ok1vbnRoU3R5bGU6Ok51bWVyaWM6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVy
YWwoIm51bWVyaWMiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZTo6
TmFycm93OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJuYXJyb3ciKTsKKyAgICBjYXNl
IEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZTo6U2hvcnQ6CisgICAgICAgIHJldHVybiBB
U0NJSUxpdGVyYWwoInNob3J0Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRo
U3R5bGU6Okxvbmc6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoImxvbmciKTsKKyAgICB9
Cit9CisKK3N0YXRpYyBTdHJpbmcgZGF5U3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVG
b3JtYXQ6OkRheVN0eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNl
IEludGxEYXRlVGltZUZvcm1hdDo6RGF5U3R5bGU6Ok5vbmU6CisgICAgICAgIHJldHVybiBTdHJp
bmcoKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6RGF5U3R5bGU6OlR3b0RpZ2l0Ogor
ICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCIyLWRpZ2l0Iik7CisgICAgY2FzZSBJbnRsRGF0
ZVRpbWVGb3JtYXQ6OkRheVN0eWxlOjpOdW1lcmljOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRl
cmFsKCJudW1lcmljIik7CisgICAgfQorfQorCitzdGF0aWMgU3RyaW5nIGhvdXJTdHlsZVRvU3Ry
aW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlIHN0eWxlKQoreworICAgIHN3
aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlOjpO
b25lOgorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3Jt
YXQ6OkhvdXJTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIjIt
ZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlOjpOdW1lcmlj
OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJudW1lcmljIik7CisgICAgfQorfQorCitz
dGF0aWMgU3RyaW5nIG1pbnV0ZVN0eWxlVG9TdHJpbmcoY29uc3QgSW50bERhdGVUaW1lRm9ybWF0
OjpNaW51dGVTdHlsZSBzdHlsZSkKK3sKKyAgICBzd2l0Y2ggKHN0eWxlKSB7CisgICAgY2FzZSBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6Ok1pbnV0ZVN0eWxlOjpOb25lOgorICAgICAgICByZXR1cm4gU3Ry
aW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1pbnV0ZVN0eWxlOjpUd29EaWdp
dDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiMi1kaWdpdCIpOworICAgIGNhc2UgSW50
bERhdGVUaW1lRm9ybWF0OjpNaW51dGVTdHlsZTo6TnVtZXJpYzoKKyAgICAgICAgcmV0dXJuIEFT
Q0lJTGl0ZXJhbCgibnVtZXJpYyIpOworICAgIH0KK30KKworc3RhdGljIFN0cmluZyBzZWNvbmRT
dHlsZVRvU3RyaW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6U2Vjb25kU3R5bGUgc3R5bGUp
Cit7CisgICAgc3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpT
ZWNvbmRTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgIGNhc2UgSW50
bERhdGVUaW1lRm9ybWF0OjpTZWNvbmRTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiBB
U0NJSUxpdGVyYWwoIjItZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6U2Vj
b25kU3R5bGU6Ok51bWVyaWM6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIm51bWVyaWMi
KTsKKyAgICB9Cit9CisKK3N0YXRpYyBTdHJpbmcgdGltZVpvbmVOYW1lU3R5bGVUb1N0cmluZyhj
b25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlRpbWVab25lTmFtZVN0eWxlIHN0eWxlKQoreworICAg
IHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6VGltZVpvbmVO
YW1lU3R5bGU6Ok5vbmU6CisgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICBjYXNlIEludGxE
YXRlVGltZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6OlNob3J0OgorICAgICAgICByZXR1cm4g
QVNDSUlMaXRlcmFsKCJzaG9ydCIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpUaW1l
Wm9uZU5hbWVTdHlsZTo6TG9uZzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibG9uZyIp
OworICAgIH0KK30KKwogRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVG
b3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0YXRlKiBzdGF0ZSkKIHsKICAgICAvLyAx
Mi4zLjMgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0IChFQ01BLTQwMiAyLjAp
CiAgICAgLy8gMS4gTGV0IGR0ZiBiZSB0aGlzIERhdGVUaW1lRm9ybWF0IG9iamVjdC4KICAgICBJ
bnRsRGF0ZVRpbWVGb3JtYXQqIGR0ZiA9IGpzRHluYW1pY0Nhc3Q8SW50bERhdGVUaW1lRm9ybWF0
Kj4oc3RhdGUtPnRoaXNWYWx1ZSgpKTsKICAgICAvLyAyLiBSZXR1cm5JZkFicnVwdChkdGYpLgot
ICAgIGlmICghZHRmKQorICAgIGlmICghZHRmIHx8ICFkdGYtPmluaXRpYWxpemVkRGF0ZVRpbWVG
b3JtYXQoKSkKICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihz
dGF0ZSwgQVNDSUlMaXRlcmFsKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQg
Y2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0
ZVRpbWVGb3JtYXQiKSkpOwotICAgIAorCiAgICAgSlNCb3VuZEZ1bmN0aW9uKiBib3VuZEZvcm1h
dCA9IGR0Zi0+Ym91bmRGb3JtYXQoKTsKICAgICAvLyAzLiBJZiB0aGUgW1tib3VuZEZvcm1hdF1d
IGludGVybmFsIHNsb3Qgb2YgdGhpcyBEYXRlVGltZUZvcm1hdCBvYmplY3QgaXMgdW5kZWZpbmVk
LAogICAgIGlmICghYm91bmRGb3JtYXQpIHsKQEAgLTEwNiw3ICsyNzQsNyBAQCBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUdldHRlckZvcm1h
dChFeGVjU3RhdGUqCiAgICAgICAgIEpTQXJyYXkqIGJvdW5kQXJncyA9IEpTQXJyYXk6OnRyeUNy
ZWF0ZVVuaW5pdGlhbGl6ZWQodm0sIGdsb2JhbE9iamVjdC0+YXJyYXlTdHJ1Y3R1cmVGb3JJbmRl
eGluZ1R5cGVEdXJpbmdBbGxvY2F0aW9uKEFycmF5V2l0aFVuZGVjaWRlZCksIDApOwogICAgICAg
ICBpZiAoIWJvdW5kQXJncykKICAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhy
b3dPdXRPZk1lbW9yeUVycm9yKHN0YXRlKSk7Ci0gICAgICAgIAorCiAgICAgICAgIC8vIGMuIExl
dCBiZiBiZSBCb3VuZEZ1bmN0aW9uQ3JlYXRlKEYsIMKrdGhpcyB2YWx1ZcK7KS4KICAgICAgICAg
Ym91bmRGb3JtYXQgPSBKU0JvdW5kRnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCB0
YXJnZXRPYmplY3QsIGR0ZiwgYm91bmRBcmdzLCAxLCBBU0NJSUxpdGVyYWwoImZvcm1hdCIpKTsK
ICAgICAgICAgLy8gZC4gU2V0IGR0Zi5bW2JvdW5kRm9ybWF0XV0gdG8gYmYuCkBAIC0xMjAsMTUg
KzI4OCw0OCBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1h
dFByb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGlvbnMoRXhlYwogewogICAgIC8vIDEyLjMuNSBJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSAoRUNNQS00MDIgMi4w
KQogICAgIEludGxEYXRlVGltZUZvcm1hdCogZHRmID0ganNEeW5hbWljQ2FzdDxJbnRsRGF0ZVRp
bWVGb3JtYXQqPihzdGF0ZS0+dGhpc1ZhbHVlKCkpOwotICAgIGlmICghZHRmKQorICAgIGlmICgh
ZHRmIHx8ICFkdGYtPmluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQoKSkKICAgICAgICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihzdGF0ZSwgQVNDSUlMaXRlcmFsKCJJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgY2FsbGVkIG9uIHZhbHVl
IHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0ZVRpbWVGb3JtYXQiKSkp
OwogCiAgICAgLy8gVGhlIGZ1bmN0aW9uIHJldHVybnMgYSBuZXcgb2JqZWN0IHdob3NlIHByb3Bl
cnRpZXMgYW5kIGF0dHJpYnV0ZXMgYXJlIHNldCBhcyBpZiBjb25zdHJ1Y3RlZCBieSBhbiBvYmpl
Y3QgbGl0ZXJhbCBhc3NpZ25pbmcgdG8gZWFjaCBvZiB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXMg
dGhlIHZhbHVlIG9mIHRoZSBjb3JyZXNwb25kaW5nIGludGVybmFsIHNsb3Qgb2YgdGhpcyBEYXRl
VGltZUZvcm1hdCBvYmplY3QgKHNlZSAxMi40KTogbG9jYWxlLCBjYWxlbmRhciwgbnVtYmVyaW5n
U3lzdGVtLCB0aW1lWm9uZSwgaG91cjEyLCB3ZWVrZGF5LCBlcmEsIHllYXIsIG1vbnRoLCBkYXks
IGhvdXIsIG1pbnV0ZSwgc2Vjb25kLCBhbmQgdGltZVpvbmVOYW1lLiBQcm9wZXJ0aWVzIHdob3Nl
IGNvcnJlc3BvbmRpbmcgaW50ZXJuYWwgc2xvdHMgYXJlIG5vdCBwcmVzZW50IGFyZSBub3QgYXNz
aWduZWQuCiAgICAgLy8gTm90ZTogSW4gdGhpcyB2ZXJzaW9uIG9mIHRoZSBFQ01BU2NyaXB0IDIw
MTUgSW50ZXJuYXRpb25hbGl6YXRpb24gQVBJLCB0aGUgdGltZVpvbmUgcHJvcGVydHkgd2lsbCBi
ZSB0aGUgbmFtZSBvZiB0aGUgZGVmYXVsdCB0aW1lIHpvbmUgaWYgbm8gdGltZVpvbmUgcHJvcGVy
dHkgd2FzIHByb3ZpZGVkIGluIHRoZSBvcHRpb25zIG9iamVjdCBwcm92aWRlZCB0byB0aGUgSW50
bC5EYXRlVGltZUZvcm1hdCBjb25zdHJ1Y3Rvci4gVGhlIHByZXZpb3VzIHZlcnNpb24gbGVmdCB0
aGUgdGltZVpvbmUgcHJvcGVydHkgdW5kZWZpbmVkIGluIHRoaXMgY2FzZS4KIAorICAgIFZNJiB2
bSA9IHN0YXRlLT52bSgpOworCiAgICAgSlNPYmplY3QqIG9wdGlvbnMgPSBjb25zdHJ1Y3RFbXB0
eU9iamVjdChzdGF0ZSk7CisgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5h
bWVzLT5sb2NhbGUsIGpzU3RyaW5nKHN0YXRlLCBkdGYtPmxvY2FsZSgpKSk7CisgICAgb3B0aW9u
cy0+cHV0RGlyZWN0KHZtLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKCZ2bSwgImNhbGVuZGFyIiks
IGpzU3RyaW5nKHN0YXRlLCBjYWxlbmRhclR5cGVUb1N0cmluZyhkdGYtPmNhbGVuZGFyKCkpKSk7
CisgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKCZ2bSwg
Im51bWJlcmluZ1N5c3RlbSIpLCBqc1N0cmluZyhzdGF0ZSwgZHRmLT5udW1iZXJpbmdTeXN0ZW0o
KSkpOworICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+dGltZVpv
bmUsIGpzU3RyaW5nKHN0YXRlLCBkdGYtPnRpbWVab25lKCkpKTsKKworICAgIGlmIChkdGYtPndl
ZWtkYXkoKSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHlsZTo6Tm9uZSkKKyAgICAg
ICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT53ZWVrZGF5LCBqc1N0
cmluZyhzdGF0ZSwgd2Vla2RheVN0eWxlVG9TdHJpbmcoZHRmLT53ZWVrZGF5KCkpKSk7CisKKyAg
ICBpZiAoZHRmLT5lcmEoKSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkVyYVN0eWxlOjpOb25lKQor
ICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmVyYSwganNT
dHJpbmcoc3RhdGUsIGVyYVN0eWxlVG9TdHJpbmcoZHRmLT5lcmEoKSkpKTsKKworICAgIGlmIChk
dGYtPnllYXIoKSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlllYXJTdHlsZTo6Tm9uZSkKKyAgICAg
ICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT55ZWFyLCBqc1N0cmlu
ZyhzdGF0ZSwgeWVhclN0eWxlVG9TdHJpbmcoZHRmLT55ZWFyKCkpKSk7CisKKyAgICBpZiAoZHRm
LT5tb250aCgpICE9IEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZTo6Tm9uZSkKKyAgICAg
ICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5tb250aCwganNTdHJp
bmcoc3RhdGUsIG1vbnRoU3R5bGVUb1N0cmluZyhkdGYtPm1vbnRoKCkpKSk7CisKKyAgICBpZiAo
ZHRmLT5kYXkoKSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkRheVN0eWxlOjpOb25lKQorICAgICAg
ICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmRheSwganNTdHJpbmco
c3RhdGUsIGRheVN0eWxlVG9TdHJpbmcoZHRmLT5kYXkoKSkpKTsKKworICAgIGlmIChkdGYtPmhv
dXIoKSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkhvdXJTdHlsZTo6Tm9uZSkgeworICAgICAgICBv
cHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmhvdXIsIGpzU3RyaW5nKHN0
YXRlLCBob3VyU3R5bGVUb1N0cmluZyhkdGYtPmhvdXIoKSkpKTsKKyAgICAgICAgb3B0aW9ucy0+
cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyMTIsIGpzQm9vbGVhbihkdGYtPmhv
dXIxMigpKSk7CisgICAgfQorCisgICAgaWYgKGR0Zi0+bWludXRlKCkgIT0gSW50bERhdGVUaW1l
Rm9ybWF0OjpNaW51dGVTdHlsZTo6Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZt
LCB2bS5wcm9wZXJ0eU5hbWVzLT5taW51dGUsIGpzU3RyaW5nKHN0YXRlLCBtaW51dGVTdHlsZVRv
U3RyaW5nKGR0Zi0+bWludXRlKCkpKSk7CisKKyAgICBpZiAoZHRmLT5zZWNvbmQoKSAhPSBJbnRs
RGF0ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpOb25lKQorICAgICAgICBvcHRpb25zLT5wdXRE
aXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPnNlY29uZCwganNTdHJpbmcoc3RhdGUsIHNlY29u
ZFN0eWxlVG9TdHJpbmcoZHRmLT5zZWNvbmQoKSkpKTsKIAotICAgIC8vIEZJWE1FOiBQb3B1bGF0
ZSBvYmplY3QgZnJvbSBpbnRlcm5hbCBzbG90cy4KKyAgICBpZiAoZHRmLT50aW1lWm9uZU5hbWUo
KSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlRpbWVab25lTmFtZVN0eWxlOjpOb25lKQorICAgICAg
ICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPnRpbWVab25lTmFtZSwg
anNTdHJpbmcoc3RhdGUsIHRpbWVab25lTmFtZVN0eWxlVG9TdHJpbmcoZHRmLT50aW1lWm9uZU5h
bWUoKSkpKTsKIAogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUob3B0aW9ucyk7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuY3BwCmluZGV4IDkyMjY5YmQ4
MDdmZWM5M2JjZGRlNmZiYzAyMjJmNThlYzZlNThmYmMuLjg2MmUxZWMxZDQ0NWIxYTU2YWZlOWI2
NjdhNmFiNjU2MTFjNmU4ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxPYmplY3QuY3BwCkBAIC03NDUsNiArNzQ1LDcgQEAgSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4g
cmVzb2x2ZUxvY2FsZShjb25zdCBIYXNoU2V0PFN0cmluZz4mIGF2YWlsYWJsZUxvY2FsZXMsIGMK
ICAgICAgICAgICAgIHNpemVfdCBrZXlQb3MgPSBleHRlbnNpb25TdWJ0YWdzLmZpbmQoa2V5KTsK
ICAgICAgICAgICAgIC8vIGlpLiBJZiBrZXlQb3MgIT0gLTEsIHRoZW4KICAgICAgICAgICAgIGlm
IChrZXlQb3MgIT0gbm90Rm91bmQpIHsKKyAgICAgICAgICAgICAgICAvLyBGSVhNRTogaHR0cHM6
Ly9naXRodWIuY29tL3RjMzkvZWNtYTQwMi9pc3N1ZXMvNTkKICAgICAgICAgICAgICAgICAvLyAx
LiBJZiBrZXlQb3MgKyAxIDwgZXh0ZW5zaW9uU3VidGFnc0xlbmd0aCBhbmQgdGhlIGxlbmd0aCBv
ZiB0aGUgcmVzdWx0IG9mIEdldChleHRlbnNpb25TdWJ0YWdzLCBUb1N0cmluZyhrZXlQb3MgKzEp
KSBpcyBncmVhdGVyIHRoYW4gMiwgdGhlbgogICAgICAgICAgICAgICAgIGlmIChrZXlQb3MgKyAx
IDwgZXh0ZW5zaW9uU3VidGFncy5zaXplKCkgJiYgZXh0ZW5zaW9uU3VidGFnc1trZXlQb3MgKyAx
XS5sZW5ndGgoKSA+IDIpIHsKICAgICAgICAgICAgICAgICAgICAgY29uc3QgU3RyaW5nJiByZXF1
ZXN0ZWRWYWx1ZSA9IGV4dGVuc2lvblN1YnRhZ3Nba2V5UG9zICsgMV07CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNmNjMDRj
NTViMDEyZjQyMWY1ZTg1YzEyOWY2NjY3ZTBjN2U5ZjVmOC4uYTBkNTA2MmVhNGJhOWNjZjEyNjY1
MmJmYmI4NGRiMjkxMzU1NThjZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisr
KyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDE1LTEyLTExICBB
bmR5IFZhbldhZ29uZXIgIDxhbmR5QGluc3RydWN0dXJlLmNvbT4KKworICAgICAgICBbSU5UTF0g
SW1wbGVtZW50IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyAo
KQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3NjAz
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBqcy9p
bnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dDogQWRkZWQgcmVzb2x2ZWRPcHRpb25zIHRl
c3RzLgorICAgICAgICAqIGpzL3NjcmlwdC10ZXN0cy9pbnRsLWRhdGV0aW1lZm9ybWF0LmpzOiBB
ZGRlZCByZXNvbHZlZE9wdGlvbnMgdGVzdHMuCisKIDIwMTUtMTItMTEgIEJyYWR5IEVpZHNvbiAg
PGJlaWRzb25AYXBwbGUuY29tPgogCiAgICAgICAgIE1vZGVybiBJREI6IHN0b3JhZ2UvaW5kZXhl
ZGRiL29wdGlvbmFsLWFyZ3VtZW50cy5odG1sIGZhaWxzLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvanMvaW50bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9qcy9p
bnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dAppbmRleCBkMDE2YzgwMDQ3ZDY0ZDAyMzhi
NWM5NmQ3YjkwYjZjNGFlMWM5ZWE0Li41YWRiMjIwOGM5OGY5Y2M0YTk5MmIzZDE2YTFiODVlYTNi
ZWIwZDQxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVj
dGVkLnR4dApAQCAtNTQsNyArNTQsNyBAQCBQQVNTIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwg
J2Zvcm1hdCcsIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5EYQogUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgIT09IEludGwuRGF0ZVRpbWVGb3Jt
YXQoKS5mb3JtYXQgaXMgdHJ1ZQogUEFTUyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1h
dCAhPT0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQgaXMgdHJ1ZQogUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoeyB2YWx1ZU9mKCkgeyB0aHJvdyBFcnJv
cignNGInKSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogNGIuCi1QQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdChJbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdl
RXJyb3I6IGRhdGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRlVGltZUZvcm1hdC5mb3JtYXQo
KS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KEluZmluaXR5KSB0
aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZGF0ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGluIERh
dGVUaW1lRm9ybWF0IGZvcm1hdCgpLgogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlw
ZS5mb3JtYXQuY2FsbChudWxsLCAwKSBpcyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDAp
CiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdC5jYWxsKEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2FyJyksIDApIGlzIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkK
IFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0LmNhbGwoNSwgMCkgaXMg
SW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKQpAQCAtNjMsOCArNjMsMTMwIEBAIFBBU1Mg
bmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQuY2FsbChJbnRsLkRhdGVUaW1lRm9ybWF0
KCdhcicpLCAwKSBpcyBJbnRsCiBQQVNTIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0
LmNhbGwoNSwgMCkgaXMgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKQogUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMubGVuZ3RoIGlzIDAKIFBB
U1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgaXMgYW4g
aW5zdGFuY2Ugb2YgT2JqZWN0CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJl
c29sdmVkT3B0aW9ucygpLmxvY2FsZSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29s
dmVkT3B0aW9ucygpLmxvY2FsZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90
eXBlLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCkucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5w
cm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzIG5ldyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkgaXMg
bmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5CitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyBu
ZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmVyYQorUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIGlzIG5ldyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkueWVhcgorUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyBuZXcgSW50
bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmRheSBpcyBuZXcgSW50bC5E
YXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmRheQorUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIGlzIG5ldyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuaG91cgorUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIgaXMgbmV3IEludGwuRGF0ZVRp
bWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIGlzIG5ldyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubWludXRlCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCBpcyBuZXcgSW50bC5EYXRl
VGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZAorUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUgaXMgbmV3IElu
dGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUKIFBBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgPT09IEludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIGlzIGZhbHNlCiBQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucy5jYWxsKDUpIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJl
c29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlh
bGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdC4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnJCcp
IHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBpbnZhbGlkIGxhbmd1YWdlIHRhZzogJC4KK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlv
bi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVr
ZGF5IGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVk
T3B0aW9ucygpLmVyYSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMgJ251bWVyaWMnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyAnbnVtZXJp
YycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3Vy
IGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0
aW9ucygpLmhvdXIxMiBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
KS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIGlzIHVuZGVmaW5lZAorUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFt
ZSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgncHQtYnInKS5yZXNvbHZl
ZE9wdGlvbnMoKS5sb2NhbGUgaXMgJ3B0LUJSJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgbG9jYWxlTWF0Y2hlcjonYmFkJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjog
bG9jYWxlTWF0Y2hlciBtdXN0IGJlIGVpdGhlciAibG9va3VwIiBvciAiYmVzdCBmaXQiLgorUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjonbG9va3VwJyB9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IGxvY2FsZU1hdGNoZXI6J2Jlc3QgZml0JyB9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2JhZCcgfSkgdGhy
ZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGZvcm1hdE1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgImJh
c2ljIiBvciAiYmVzdCBmaXQiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9y
bWF0TWF0Y2hlcjonYmFzaWMnIH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjonYmVzdCBmaXQnIH0pIGRpZCBu
b3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgY2Fs
ZW5kYXI6J2RhbmdpJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnZ3JlZ29yeScK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9u
cygpLmxvY2FsZSBpcyAnZW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYm9n
dXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnZ3JlZ29yeScKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4tdS1jYS1idWRkaGlzdCcpLnJlc29sdmVkT3B0aW9ucygpLmxvY2Fs
ZSBpcyAnZW4tdS1jYS1idWRkaGlzdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1j
YS1idWRkaGlzdCcpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdidWRkaGlzdCcKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1jaGluZXNlJykucmVzb2x2ZWRPcHRpb25z
KCkuY2FsZW5kYXIgaXMgJ2NoaW5lc2UnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtY29wdGljJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2NvcHRpYycKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1kYW5naScpLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyIGlzICdkYW5naScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ldGhp
b2FhJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2V0aGlvYWEnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9waWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxl
bmRhciBpcyAnZXRoaW9waWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZ3Jl
Z29yeScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdncmVnb3J5JworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWhlYnJldycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVu
ZGFyIGlzICdoZWJyZXcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaW5kaWFu
JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2luZGlhbicKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIg
aXMgJ2lzbGFtaWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pY2Mn
KS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaXNsYW1pYy1jaXZpbCcKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1JU084NjAxJykucmVzb2x2ZWRPcHRpb25zKCkuY2Fs
ZW5kYXIgaXMgJ2lzbzg2MDEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtamFw
YW5lc2UnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnamFwYW5lc2UnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtcGVyc2lhbicpLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyIGlzICdwZXJzaWFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLXJv
YycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdyb2MnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBudW1iZXJpbmdTeXN0ZW06J2d1anInIH0pLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGF0bicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSBpcyAnZW4nCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYm9ndXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1i
ZXJpbmdTeXN0ZW0gaXMgJ2xhdG4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
bGF0bicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGF0bicKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1hcmFiJykucmVzb2x2ZWRPcHRpb25zKCkubG9j
YWxlIGlzICdlbi11LW51LWFyYWInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
YXJhYicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnYXJhYicKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1hcmFiZXh0JykucmVzb2x2ZWRPcHRpb25zKCku
bnVtYmVyaW5nU3lzdGVtIGlzICdhcmFiZXh0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LWJhbGknKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2JhbGkn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYmVuZycpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyAnYmVuZycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1udS1kZXZhJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdkZXZh
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWZ1bGx3aWRlJykucmVzb2x2ZWRP
cHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdmdWxsd2lkZScKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1udS1ndWpyJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVt
IGlzICdndWpyJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWd1cnUnKS5yZXNv
bHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2d1cnUnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtbnUtaGFuaWRlYycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5
c3RlbSBpcyAnaGFuaWRlYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1raG1y
JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdraG1yJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWtuZGEnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJp
bmdTeXN0ZW0gaXMgJ2tuZGEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGFv
bycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGFvbycKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1saW1iJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVy
aW5nU3lzdGVtIGlzICdsaW1iJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LW1s
eW0nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ21seW0nCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbW9uZycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSBpcyAnbW9uZycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1t
eW1yJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdteW1yJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LW9yeWEnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1i
ZXJpbmdTeXN0ZW0gaXMgJ29yeWEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
dGFtbGRlYycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAndGFtbGRlYycK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10ZWx1JykucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIGlzICd0ZWx1JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LXRoYWknKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3RoYWkn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGlidCcpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyAndGlidCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHdlZWtkYXk6J2ludmFsaWQnIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiB3
ZWVrZGF5IG11c3QgYmUgIm5hcnJvdyIsICJzaG9ydCIsIG9yICJsb25nIi4KK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5OiduYXJyb3cnLCBtb250aDonbnVtZXJpYycsIGRheTon
bnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSBpcyAnbmFycm93JworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonc2hvcnQnLCBtb250aDonbnVtZXJp
YycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSBpcyAnc2hvcnQn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5Oidsb25nJywgbW9udGg6
J251bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkgaXMg
J2xvbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25ldmVyJyB9KSB0
aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZXJhIG11c3QgYmUgIm5hcnJvdyIsICJzaG9ydCIs
IG9yICJsb25nIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1k
aWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSBpcyB1bmRlZmlu
ZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjon
bnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIGlzICduYXJyb3cnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkuZXJhIGlzICdzaG9ydCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IGVyYTonbG9uZycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmVy
YSBpcyAnbG9uZycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHllYXI6J25vcGUn
IH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiB5ZWFyIG11c3QgYmUgIjItZGlnaXQiIG9y
ICJudW1lcmljIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1k
aWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnllYXIgaXMgdW5kZWZp
bmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25hcnJvdycsIHllYXI6
JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnllYXIgaXMgJzItZGlnaXQnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25hcnJvdycsIHllYXI6J251bWVyaWMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLnllYXIgaXMgJ251bWVyaWMnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyBtb250aDoyIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBtb250
aCBtdXN0IGJlICIyLWRpZ2l0IiwgIm51bWVyaWMiLCAibmFycm93IiwgInNob3J0Iiwgb3IgImxv
bmciLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0Jywg
aG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMgdW5kZWZpbmVkCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonMi1kaWdpdCcsIHllYXI6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlzICcyLWRpZ2l0JworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J251bWVyaWMnLCB5ZWFyOidudW1lcmljJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IG1vbnRoOiduYXJyb3cnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS5tb250aCBpcyAnbmFycm93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgbW9udGg6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCku
bW9udGggaXMgJ3Nob3J0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6
J2xvbmcnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbG9u
ZycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGRheTonJyB9KSB0aHJldyBleGNl
cHRpb24gUmFuZ2VFcnJvcjogZGF5IG11c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmljIi4KK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgZGF5OicyLWRpZ2l0JyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS5kYXkgaXMgJzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBtb250aDonbG9uZycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCku
ZGF5IGlzICdudW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgaG91cjpb
XSB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogaG91ciBtdXN0IGJlICIyLWRpZ2l0IiBv
ciAibnVtZXJpYyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRp
b25zKCkuaG91ciBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9ucygpLmhv
dXIgaXMgJ251bWVyaWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6
JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIGlzICdu
dW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygp
LmhvdXIxMiBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1p
bnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmhvdXIx
MiBpcyB0cnVlCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ3B0LUJSJywgeyBtaW51dGU6JzIt
ZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIgaXMgZmFs
c2UKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTpudWxsIH0pIHRocmV3
IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBtaW51dGUgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVy
aWMiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1p
bnV0ZSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0
ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBp
cyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonbnVt
ZXJpYycsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBpcyAnMi1k
aWdpdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHNlY29uZDonYmFkdmFsdWUn
IH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBzZWNvbmQgbXVzdCBiZSAiMi1kaWdpdCIg
b3IgIm51bWVyaWMiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0
aW9ucygpLnNlY29uZCBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IG1pbnV0ZTonbnVtZXJpYycsIGhvdXI6J251bWVyaWMnLCBzZWNvbmQ6JzItZGlnaXQnIH0p
LnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCBpcyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonbnVtZXJpYycsIGhvdXI6J251bWVyaWMnLCBzZWNvbmQ6
J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCBpcyAnMi1kaWdpdCcKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lTmFtZTonbmFtZScgfSkgdGhyZXcg
ZXhjZXB0aW9uIFJhbmdlRXJyb3I6IHRpbWVab25lTmFtZSBtdXN0IGJlICJzaG9ydCIgb3IgImxv
bmciLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lTmFtZSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnLCB0aW1lWm9uZU5hbWU6J3Nob3J0JyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUgaXMgJ3Nob3J0JworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdwdC1CUicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycs
IHRpbWVab25lTmFtZTonbG9uZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIGlz
ICdsb25nJwogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRF
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZv
cm1hdC5qcyBiL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9pbnRsLWRhdGV0aW1lZm9ybWF0
LmpzCmluZGV4IGVkZTFiNWNlMzQ2ZmQyOTA1MzBiMzczNzdmMDBjYWU1MDM3ZTYwN2YuLmEzOGZh
OGY0MjA2ZTFhNTg3ZDg3MzdmMWFkNzM5OGQwOTdmNDc4YTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2pzL3NjcmlwdC10ZXN0cy9pbnRsLWRhdGV0aW1lZm9ybWF0LmpzCisrKyBiL0xheW91dFRl
c3RzL2pzL3NjcmlwdC10ZXN0cy9pbnRsLWRhdGV0aW1lZm9ybWF0LmpzCkBAIC0xMTksNyArMTE5
LDcgQEAgc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCh7
IHZhbHVlT2YoKSB7IHRocm93IEVycm9yKCc0YicKIC8vIDEyLjMuNCBGb3JtYXREYXRlVGltZSBh
YnN0cmFjdCBvcGVyYXRpb24KIAogLy8gMS4gSWYgeCBpcyBub3QgYSBmaW5pdGUgTnVtYmVyLCB0
aGVuIHRocm93IGEgUmFuZ2VFcnJvciBleGNlcHRpb24uCi1zaG91bGRUaHJvdygiSW50bC5EYXRl
VGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KEluZmluaXR5KSIsICInUmFuZ2VFcnJvcjogZGF0
ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1lRm9ybWF0LmZvcm1hdCgpJyIpOworc2hv
dWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdChJbmZpbml0eSki
LCAiJ1JhbmdlRXJyb3I6IGRhdGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRlVGltZUZvcm1h
dCBmb3JtYXQoKSciKTsKIAogLy8gRm9ybWF0IGlzIGJvdW5kLCBzbyBjYWxsaW5nIHdpdGggYWx0
ZXJuYXRlICJ0aGlzIiBoYXMgbm8gZWZmZWN0Lgogc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQucHJvdG90eXBlLmZvcm1hdC5jYWxsKG51bGwsIDApIiwgIkludGwuRGF0ZVRpbWVGb3JtYXQo
KS5mb3JtYXQoMCkiKTsKQEAgLTEzNiw5ICsxMzYsMTU3IEBAIHNob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMubGVuZ3RoIiwgIjAiKTsKIC8vIFJl
dHVybnMgYSBuZXcgb2JqZWN0IHdob3NlIHByb3BlcnRpZXMgYW5kIGF0dHJpYnV0ZXMgYXJlIHNl
dCBhcyBpZiBjb25zdHJ1Y3RlZCBieSBhbiBvYmplY3QgbGl0ZXJhbC4KIHNob3VsZEJlVHlwZSgi
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkiLCAiT2JqZWN0
Iik7CiAKKy8vIFRoZSBJbnRsLkRhdGVUaW1lRm9ybWF0IHByb3RvdHlwZSBvYmplY3QgaXMgaXRz
ZWxmIGFuICVEYXRlVGltZUZvcm1hdCUgaW5zdGFuY2UsIHdob3NlIGludGVybmFsIHNsb3RzIGFy
ZSBzZXQgYXMgaWYgaXQgaGFkIGJlZW4gY29uc3RydWN0ZWQgYnkgdGhlIGV4cHJlc3Npb24gQ29u
c3RydWN0KCVEYXRlVGltZUZvcm1hdCUpLgorc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQu
cHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICJuZXcgSW50bC5EYXRlVGltZUZv
cm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIm5ldyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRh
ciIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFy
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRp
b25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2
ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSIsICJuZXcgSW50bC5EYXRl
VGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEiLCAibmV3IElu
dGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEiKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIiwgIm5l
dyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkueWVhciIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLm1vbnRo
IiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMo
KS5kYXkiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5kYXki
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlv
bnMoKS5ob3VyIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCku
aG91ciIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucygpLmhvdXIxMiIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0
aW9ucygpLmhvdXIxMiIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJl
c29sdmVkT3B0aW9ucygpLm1pbnV0ZSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQu
cHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCIsICJuZXcgSW50bC5EYXRlVGltZUZv
cm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIsICJuZXcg
SW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIpOwor
CiAvLyBSZXR1cm5zIGEgbmV3IG9iamVjdCBlYWNoIHRpbWUuCiBzaG91bGRCZUZhbHNlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSA9PT0gSW50bC5EYXRl
VGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkiKTsKIAogLy8gVGhyb3dzIG9u
IG5vbi1EYXRlVGltZUZvcm1hdCB0aGlzLgogc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3Jt
YXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucy5jYWxsKDUpIiwgIidUeXBlRXJyb3I6IEludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUg
dGhhdFxcJ3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1lRm9ybWF0JyIp
OwogCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnJCcpIiwgIidSYW5nZUVycm9y
OiBpbnZhbGlkIGxhbmd1YWdlIHRhZzogJCciKTsKK3Nob3VsZE5vdFRocm93KCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIG51bGwpIik7CisKKy8vIERlZmF1bHRzIHRvIG1vbnRoLCBkYXksIHll
YXIuCitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMo
KS53ZWVrZGF5IiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJykucmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAiJ251bWVy
aWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlv
bnMoKS5kYXkiLCAiJ251bWVyaWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIiwgIidudW1lcmljJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuaG91ciIsICJ1bmRlZmlu
ZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIxMiIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCIsICJ1
bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lTmFtZSIsICJ1bmRlZmluZWQiKTsKKworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ3B0LWJyJykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIiwgIidwdC1C
UiciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBsb2NhbGVN
YXRjaGVyOidiYWQnIH0pIiwgJ1wnUmFuZ2VFcnJvcjogbG9jYWxlTWF0Y2hlciBtdXN0IGJlIGVp
dGhlciAibG9va3VwIiBvciAiYmVzdCBmaXQiXCcnKTsKK3Nob3VsZE5vdFRocm93KCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjonbG9va3VwJyB9KSIpOworc2hvdWxk
Tm90VGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBsb2NhbGVNYXRjaGVyOidiZXN0
IGZpdCcgfSkiKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBm
b3JtYXRNYXRjaGVyOidiYWQnIH0pIiwgJ1wnUmFuZ2VFcnJvcjogZm9ybWF0TWF0Y2hlciBtdXN0
IGJlIGVpdGhlciAiYmFzaWMiIG9yICJiZXN0IGZpdCJcJycpOworc2hvdWxkTm90VGhyb3coIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBmb3JtYXRNYXRjaGVyOidiYXNpYycgfSkiKTsKK3No
b3VsZE5vdFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjon
YmVzdCBmaXQnIH0pIik7CisKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
Y2FsZW5kYXI6J2RhbmdpJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInZ3JlZ29y
eSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJvZ3VzJykucmVz
b2x2ZWRPcHRpb25zKCkubG9jYWxlIiwgIidlbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LWNhLWJvZ3VzJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2dy
ZWdvcnknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1idWRkaGlz
dCcpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4tdS1jYS1idWRkaGlzdCciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJ1ZGRoaXN0JykucmVzb2x2ZWRP
cHRpb25zKCkuY2FsZW5kYXIiLCAiJ2J1ZGRoaXN0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtY2EtY2hpbmVzZScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwg
IidjaGluZXNlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtY29w
dGljJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2NvcHRpYyciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWRhbmdpJykucmVzb2x2ZWRPcHRpb25zKCku
Y2FsZW5kYXIiLCAiJ2RhbmdpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
LXUtY2EtZXRoaW9hYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidldGhpb2FhJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9waWMnKS5yZXNv
bHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInZXRoaW9waWMnIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ncmVnb3J5JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5k
YXIiLCAiJ2dyZWdvcnknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1j
YS1oZWJyZXcnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaGVicmV3JyIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaW5kaWFuJykucmVzb2x2ZWRPcHRp
b25zKCkuY2FsZW5kYXIiLCAiJ2luZGlhbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LWNhLWlzbGFtaWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNs
YW1pYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWNj
JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMtY2l2aWwnIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1JU084NjAxJykucmVzb2x2ZWRPcHRp
b25zKCkuY2FsZW5kYXIiLCAiJ2lzbzg2MDEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1jYS1qYXBhbmVzZScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidq
YXBhbmVzZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLXBlcnNp
YW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICIncGVyc2lhbiciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLXJvYycpLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyIiwgIidyb2MnIik7CisvLyBGSVhNRTogaHR0cHM6Ly9naXRodWIuY29tL3RjMzkvZWNt
YTQwMi9pc3N1ZXMvNTkKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNh
LWV0aGlvcGljLWFtZXRlLWFsZW0nKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInZXRo
aW9hYSciKTsKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFt
aWMtdW1hbHF1cmEnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy11bWFs
cXVyYSciKTsKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFt
aWMtdGJsYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljLXRibGEnIik7
CisvLyBzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljLWNpdmls
JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMtY2l2aWwnIik7CisvLyBz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljLXJnc2EnKS5yZXNv
bHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy1yZ3NhJyIpOworCitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG51bWJlcmluZ1N5c3RlbTonZ3VqcicgfSkucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidsYXRuJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYm9ndXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2Nh
bGUiLCAiJ2VuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYm9n
dXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xhdG4nIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1sYXRuJykucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIiwgIidsYXRuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtbnUtYXJhYicpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4tdS1u
dS1hcmFiJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYXJhYicp
LnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInYXJhYiciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWFyYWJleHQnKS5yZXNvbHZlZE9wdGlvbnMo
KS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2FyYWJleHQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1udS1iYWxpJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVt
IiwgIidiYWxpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYmVu
ZycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInYmVuZyciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWRldmEnKS5yZXNvbHZlZE9wdGlvbnMo
KS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2RldmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1udS1mdWxsd2lkZScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3Rl
bSIsICInZnVsbHdpZGUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1u
dS1ndWpyJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidndWpyJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZ3VydScpLnJlc29sdmVkT3B0
aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInZ3VydSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LW51LWhhbmlkZWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdT
eXN0ZW0iLCAiJ2hhbmlkZWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1raG1yJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidraG1yJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUta25kYScpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICIna25kYSciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LW51LWxhb28nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdT
eXN0ZW0iLCAiJ2xhb28nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1u
dS1saW1iJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidsaW1iJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbWx5bScpLnJlc29sdmVkT3B0
aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInbWx5bSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LW51LW1vbmcnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0iLCAiJ21vbmcnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1t
eW1yJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidteW1yJyIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtb3J5YScpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSIsICInb3J5YSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LW51LXRhbWxkZWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0iLCAiJ3RhbWxkZWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1u
dS10ZWx1JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIid0ZWx1JyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGhhaScpLnJlc29sdmVkT3B0
aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICIndGhhaSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LW51LXRpYnQnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0iLCAiJ3RpYnQnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgd2Vla2RheTonaW52YWxpZCcgfSkiLCAnXCdSYW5nZUVycm9yOiB3ZWVrZGF5IG11c3QgYmUg
Im5hcnJvdyIsICJzaG9ydCIsIG9yICJsb25nIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29s
dmVkT3B0aW9ucygpLndlZWtkYXkiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J25hcnJvdycsIG1vbnRoOidudW1lcmljJywgZGF5
OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IiwgIiduYXJyb3cnIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J3Nob3J0JywgbW9u
dGg6J251bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXki
LCAiJ3Nob3J0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVr
ZGF5Oidsb25nJywgbW9udGg6J251bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0
aW9ucygpLndlZWtkYXkiLCAiJ2xvbmcnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgZXJhOiduZXZlcicgfSkiLCAnXCdSYW5nZUVycm9yOiBlcmEgbXVzdCBi
ZSAibmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkuZGF5IiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBlcmE6J25hcnJvdycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLmVyYSIsICInbmFycm93JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyBlcmE6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25z
KCkuZXJhIiwgIidzaG9ydCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgZXJhOidsb25nJywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwg
Iidsb25nJyIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHll
YXI6J25vcGUnIH0pIiwgJ1wnUmFuZ2VFcnJvcjogeWVhciBtdXN0IGJlICIyLWRpZ2l0IiBvciAi
bnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51
dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIiwg
InVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6
J25hcnJvdycsIHllYXI6JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnllYXIiLCAiJzIt
ZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFy
cm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciIsICInbnVtZXJp
YyciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDoy
IH0pIiwgJ1wnUmFuZ2VFcnJvcjogbW9udGggbXVzdCBiZSAiMi1kaWdpdCIsICJudW1lcmljIiwg
Im5hcnJvdyIsICJzaG9ydCIsIG9yICJsb25nIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29s
dmVkT3B0aW9ucygpLm1vbnRoIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBtb250aDonMi1kaWdpdCcsIHllYXI6J251bWVyaWMnIH0pLnJlc29s
dmVkT3B0aW9ucygpLm1vbnRoIiwgIicyLWRpZ2l0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBtb250aDonbnVtZXJpYycsIHllYXI6J251bWVyaWMnIH0pLnJlc29s
dmVkT3B0aW9ucygpLm1vbnRoIiwgIidudW1lcmljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBtb250aDonbmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2
ZWRPcHRpb25zKCkubW9udGgiLCAiJ25hcnJvdyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgbW9udGg6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRP
cHRpb25zKCkubW9udGgiLCAiJ3Nob3J0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyBtb250aDonbG9uZycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLm1vbnRoIiwgIidsb25nJyIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IGRheTonJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGRheSBtdXN0IGJlICIyLWRpZ2l0
IiBvciAibnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5k
YXkiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IG1vbnRoOidsb25nJywgZGF5OicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAi
JzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRo
Oidsb25nJywgZGF5OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAiJ251bWVy
aWMnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgaG91cjpb
XSB9KSIsICdcJ1JhbmdlRXJyb3I6IGhvdXIgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMi
XCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIiLCAiJ251bWVyaWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIiLCAiJ251bWVyaWMnIik7CisKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgInRydWUiKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdwdC1CUicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgImZhbHNlIik7CisKK3Nob3VsZFRo
cm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOm51bGwgfSkiLCAnXCdSYW5n
ZUVycm9yOiBtaW51dGUgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiXCcnKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSIs
ICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWlu
dXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubWludXRl
IiwgIicyLWRpZ2l0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
aW51dGU6J251bWVyaWMnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5taW51
dGUiLCAiJzItZGlnaXQnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgc2Vjb25kOidiYWR2YWx1ZScgfSkiLCAnXCdSYW5nZUVycm9yOiBzZWNvbmQgbXVzdCBi
ZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCIsICJ1bmRlZmluZWQiKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOidudW1lcmljJywgaG91cjon
bnVtZXJpYycsIHNlY29uZDonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIiwg
IicyLWRpZ2l0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51
dGU6J251bWVyaWMnLCBob3VyOidudW1lcmljJywgc2Vjb25kOidudW1lcmljJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS5zZWNvbmQiLCAiJzItZGlnaXQnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmVOYW1lOiduYW1lJyB9KSIsICdcJ1JhbmdlRXJy
b3I6IHRpbWVab25lTmFtZSBtdXN0IGJlICJzaG9ydCIgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFt
ZSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
bWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycsIHRpbWVab25lTmFtZTonc2hvcnQnIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIsICInc2hvcnQnIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgncHQtQlInLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251
bWVyaWMnLCB0aW1lWm9uZU5hbWU6J2xvbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
TmFtZSIsICInbG9uZyciKTsKKwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>267238</attachid>
            <date>2015-12-12 11:47:25 -0800</date>
            <delta_ts>2015-12-14 16:13:17 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147603-20151212124655.patch</filename>
            <type>text/plain</type>
            <size>113572</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk0MDA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
MTAyYmM2NzgwZGM1MmU3ZTZkZDFkNjNjNjA0Njk2OGRiNTQ0NWY3Li4wNzY5NzZiODAwMDUyNWZl
MDE4ZDkyODM2OThjYjMyYTYyNWI3ZmUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw3OCBAQAorMjAxNS0xMy0xMSAgQW5keSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVy
ZS5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQgYW5k
IHJlbGF0ZWQgYWJzdHJhY3Qgb3BlcmF0aW9ucy4KKyAgICAgICAgU3RvcmUgcmVzb2x2ZWQgb3B0
aW9ucyBhcyBlbnVtIHR5cGVzIHdoZXJlIHBvc3NpYmxlLgorICAgICAgICBVc2UgSUNVIGRhdGUg
cGF0dGVybiBnZW5lcmF0b3IgdG8gcmVzb2x2ZSBmb3JtYXR0aW5nIHN0eWxlcy4KKworICAgICAg
ICAqIGljdS91bmljb2RlL3VkYXRwZy5oOiBBZGRlZC4KKyAgICAgICAgKiBydW50aW1lL0NvbW1v
bklkZW50aWZpZXJzLmg6CisgICAgICAgICogcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3Bw
OgorICAgICAgICAoSlNDOjpkZWZhdWx0VGltZVpvbmUpOgorICAgICAgICAoSlNDOjpjYW5vbmlj
YWxpemVUaW1lWm9uZU5hbWUpOgorICAgICAgICAoSlNDOjpsb2NhbGVEYXRhKToKKyAgICAgICAg
KEpTQzo6c3RyaW5nVG9DYWxlbmRhclR5cGUpOgorICAgICAgICAoSlNDOjp0b0RhdGVUaW1lT3B0
aW9ucyk6CisgICAgICAgIChKU0M6OnNldEZvcm1hdHNGcm9tUGF0dGVybik6CisgICAgICAgIChK
U0M6OmluaXRpYWxpemVEYXRlVGltZUZvcm1hdCk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGlt
ZUZvcm1hdEZ1bmNGb3JtYXREYXRlVGltZSk6CisgICAgICAgICogcnVudGltZS9JbnRsRGF0ZVRp
bWVGb3JtYXQuaDoKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojppbml0aWFsaXpl
ZEludGxPYmplY3QpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEluaXRp
YWxpemVkSW50bE9iamVjdCk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6aW5p
dGlhbGl6ZWREYXRlVGltZUZvcm1hdCk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1h
dDo6c2V0SW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdCk6CisgICAgICAgIChKU0M6OkludGxEYXRl
VGltZUZvcm1hdDo6bG9jYWxlKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojpz
ZXRMb2NhbGUpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmNhbGVuZGFyKToK
KyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRDYWxlbmRhcik6CisgICAgICAg
IChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6bnVtYmVyaW5nU3lzdGVtKToKKyAgICAgICAgKEpT
Qzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXROdW1iZXJpbmdTeXN0ZW0pOgorICAgICAgICAoSlND
OjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnRpbWVab25lKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVU
aW1lRm9ybWF0OjpzZXRUaW1lWm9uZSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1h
dDo6aG91cjEyKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRIb3VyMTIp
OgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OndlZWtkYXkpOgorICAgICAgICAo
SlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldFdlZWtkYXkpOgorICAgICAgICAoSlNDOjpJbnRs
RGF0ZVRpbWVGb3JtYXQ6OmVyYSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6
c2V0RXJhKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojp5ZWFyKToKKyAgICAg
ICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRZZWFyKToKKyAgICAgICAgKEpTQzo6SW50
bERhdGVUaW1lRm9ybWF0Ojptb250aCk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1h
dDo6c2V0TW9udGgpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmRheSk6Cisg
ICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0RGF5KToKKyAgICAgICAgKEpTQzo6
SW50bERhdGVUaW1lRm9ybWF0Ojpob3VyKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9y
bWF0OjpzZXRIb3VyKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjptaW51dGUp
OgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldE1pbnV0ZSk6CisgICAgICAg
IChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2Vjb25kKToKKyAgICAgICAgKEpTQzo6SW50bERh
dGVUaW1lRm9ybWF0OjpzZXRTZWNvbmQpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3Jt
YXQ6OnRpbWVab25lTmFtZSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0
VGltZVpvbmVOYW1lKToKKyAgICAgICAgKiBydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SW50bERhdGVUaW1lRm9ybWF0KToK
KyAgICAgICAgKEpTQzo6Y2FsbEludGxEYXRlVGltZUZvcm1hdCk6CisgICAgICAgICogcnVudGlt
ZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpJbnRsRGF0
ZVRpbWVGb3JtYXRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKToKKyAgICAgICAgKEpTQzo6Y2Fs
ZW5kYXJUeXBlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjp3ZWVrZGF5U3R5bGVUb1N0cmluZyk6
CisgICAgICAgIChKU0M6OmVyYVN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjp5ZWFyU3R5
bGVUb1N0cmluZyk6CisgICAgICAgIChKU0M6Om1vbnRoU3R5bGVUb1N0cmluZyk6CisgICAgICAg
IChKU0M6OmRheVN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjpob3VyU3R5bGVUb1N0cmlu
Zyk6CisgICAgICAgIChKU0M6Om1pbnV0ZVN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjpz
ZWNvbmRTdHlsZVRvU3RyaW5nKToKKyAgICAgICAgKEpTQzo6dGltZVpvbmVOYW1lU3R5bGVUb1N0
cmluZyk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUdldHRlckZv
cm1hdCk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUZ1bmNSZXNv
bHZlZE9wdGlvbnMpOgorICAgICAgICAqIHJ1bnRpbWUvSW50bE9iamVjdC5jcHA6CisgICAgICAg
IChKU0M6OnJlc29sdmVMb2NhbGUpOgorCiAyMDE1LTEyLTEyICBDc2FiYSBPc3p0cm9nb27DoWMg
IDxvc3N5QHdlYmtpdC5vcmc+CiAKICAgICAgICAgW0FSTV0gQWRkIHRoZSBtaXNzaW5nIHNldHVw
QXJndW1lbnRzV2l0aEV4ZWNTdGF0ZSBmdW5jdGlvbnMgYWZ0ZXIgcjE5Mzk3NApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ljdS91bmljb2RlL3VkYXRwZy5oIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2ljdS91bmljb2RlL3VkYXRwZy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNkYzdlODlmMmRm
YjY0MDIyMGYzNTcwODgzNThiNmQ5YzU3OGViMGUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRhdHBnLmgKQEAgLTAsMCArMSw1ODYgQEAKKy8q
CisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqCisqCisqICAgQ29weXJpZ2h0IChDKSAyMDA3LTIwMTAs
IEludGVybmF0aW9uYWwgQnVzaW5lc3MgTWFjaGluZXMKKyogICBDb3Jwb3JhdGlvbiBhbmQgb3Ro
ZXJzLiAgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyoKKyoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyog
ICBmaWxlIG5hbWU6ICB1ZGF0cGcuaAorKiAgIGVuY29kaW5nOiAgIFVTLUFTQ0lJCisqICAgdGFi
IHNpemU6ICAgOCAobm90IHVzZWQpCisqICAgaW5kZW50YXRpb246NAorKgorKiAgIGNyZWF0ZWQg
b246IDIwMDdqdWwzMAorKiAgIGNyZWF0ZWQgYnk6IE1hcmt1cyBXLiBTY2hlcmVyCisqLworCisj
aWZuZGVmIF9fVURBVFBHX0hfXworI2RlZmluZSBfX1VEQVRQR19IX18KKworI2luY2x1ZGUgInVu
aWNvZGUvdXR5cGVzLmgiCisjaW5jbHVkZSAidW5pY29kZS91ZW51bS5oIgorI2luY2x1ZGUgInVu
aWNvZGUvbG9jYWxwb2ludGVyLmgiCisKKy8qKgorICogXGZpbGUKKyAqIFxicmllZiBDIEFQSTog
V3JhcHBlciBmb3IgRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICh1bmljb2RlL2R0cHRuZ2VuLmgp
LgorICoKKyAqIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgcHJvdmlkZXMgZmxleGlibGUgZ2Vu
ZXJhdGlvbiBvZiBkYXRlIGZvcm1hdCBwYXR0ZXJucywgCisgKiBsaWtlICJ5eS1NTS1kZCIuIFRo
ZSB1c2VyIGNhbiBidWlsZCB1cCB0aGUgZ2VuZXJhdG9yIGJ5IGFkZGluZyBzdWNjZXNzaXZlIAor
ICogcGF0dGVybnMuIE9uY2UgdGhhdCBpcyBkb25lLCBhIHF1ZXJ5IGNhbiBiZSBtYWRlIHVzaW5n
IGEgInNrZWxldG9uIiwgd2hpY2ggaXMgCisgKiBhIHBhdHRlcm4gd2hpY2gganVzdCBpbmNsdWRl
cyB0aGUgZGVzaXJlZCBmaWVsZHMgYW5kIGxlbmd0aHMuIFRoZSBnZW5lcmF0b3IgCisgKiB3aWxs
IHJldHVybiB0aGUgImJlc3QgZml0IiBwYXR0ZXJuIGNvcnJlc3BvbmRpbmcgdG8gdGhhdCBza2Vs
ZXRvbi4KKyAqIDxwPlRoZSBtYWluIG1ldGhvZCBwZW9wbGUgd2lsbCB1c2UgaXMgdWRhdHBnX2dl
dEJlc3RQYXR0ZXJuLCBzaW5jZSBub3JtYWxseQorICogVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ciBpcyBwcmUtYnVpbHQgd2l0aCBkYXRhIGZyb20gYSBwYXJ0aWN1bGFyIGxvY2FsZS4gCisgKiBI
b3dldmVyLCBnZW5lcmF0b3JzIGNhbiBiZSBidWlsdCBkaXJlY3RseSBmcm9tIG90aGVyIGRhdGEg
YXMgd2VsbC4KKyAqIDxwPjxpPklzc3VlOiBtYXkgYmUgdXNlZnVsIHRvIGFsc28gaGF2ZSBhIGZ1
bmN0aW9uIHRoYXQgcmV0dXJucyB0aGUgbGlzdCBvZiAKKyAqIGZpZWxkcyBpbiBhIHBhdHRlcm4s
IGluIG9yZGVyLCBzaW5jZSB3ZSBoYXZlIHRoYXQgaW50ZXJuYWxseS4KKyAqIFRoYXQgd291bGQg
YmUgdXNlZnVsIGZvciBnZXR0aW5nIHRoZSBVSSBvcmRlciBvZiBmaWVsZCBlbGVtZW50cy48L2k+
CisgKi8KKworLyoqCisgKiBPcGFxdWUgdHlwZSBmb3IgYSBkYXRlL3RpbWUgcGF0dGVybiBnZW5l
cmF0b3Igb2JqZWN0LgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK3R5cGVkZWYgdm9pZCAqVURh
dGVUaW1lUGF0dGVybkdlbmVyYXRvcjsKKworLyoqCisgKiBGaWVsZCBudW1iZXIgY29uc3RhbnRz
IGZvciB1ZGF0cGdfZ2V0QXBwZW5kSXRlbUZvcm1hdHMoKSBhbmQgc2ltaWxhciBmdW5jdGlvbnMu
CisgKiBUaGVzZSBjb25zdGFudHMgYXJlIHNlcGFyYXRlIGZyb20gVURhdGVGb3JtYXRGaWVsZCBk
ZXNwaXRlIHNlbWFudGljIG92ZXJsYXAKKyAqIGJlY2F1c2Ugc29tZSBmaWVsZHMgYXJlIG1lcmdl
ZCBmb3IgdGhlIGRhdGUvdGltZSBwYXR0ZXJuIGdlbmVyYXRvci4KKyAqIEBzdGFibGUgSUNVIDMu
OAorICovCit0eXBlZGVmIGVudW0gVURhdGVUaW1lUGF0dGVybkZpZWxkIHsKKyAgICAvKiogQHN0
YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0VSQV9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJ
Q1UgMy44ICovCisgICAgVURBVFBHX1lFQVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19RVUFSVEVSX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjgg
Ki8KKyAgICBVREFUUEdfTU9OVEhfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLwor
ICAgIFVEQVRQR19XRUVLX09GX1lFQVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAq
LworICAgIFVEQVRQR19XRUVLX09GX01PTlRIX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAz
LjggKi8KKyAgICBVREFUUEdfV0VFS0RBWV9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44
ICovCisgICAgVURBVFBHX0RBWV9PRl9ZRUFSX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAz
LjggKi8KKyAgICBVREFUUEdfREFZX09GX1dFRUtfSU5fTU9OVEhfRklFTEQsCisgICAgLyoqIEBz
dGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19EQVlfRklFTEQsCisgICAgLyoqIEBzdGFibGUg
SUNVIDMuOCAqLworICAgIFVEQVRQR19EQVlQRVJJT0RfRklFTEQsCisgICAgLyoqIEBzdGFibGUg
SUNVIDMuOCAqLworICAgIFVEQVRQR19IT1VSX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAz
LjggKi8KKyAgICBVREFUUEdfTUlOVVRFX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjgg
Ki8KKyAgICBVREFUUEdfU0VDT05EX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8K
KyAgICBVREFUUEdfRlJBQ1RJT05BTF9TRUNPTkRfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNV
IDMuOCAqLworICAgIFVEQVRQR19aT05FX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjgg
Ki8KKyAgICBVREFUUEdfRklFTERfQ09VTlQKK30gVURhdGVUaW1lUGF0dGVybkZpZWxkOworCisv
KioKKyAqIE1hc2tzIHRvIGNvbnRyb2wgZm9yY2luZyB0aGUgbGVuZ3RoIG9mIHNwZWNpZmllZCBm
aWVsZHMgaW4gdGhlIHJldHVybmVkCisgKiBwYXR0ZXJuIHRvIG1hdGNoIHRob3NlIGluIHRoZSBz
a2VsZXRvbiAod2hlbiB0aGlzIHdvdWxkIG5vdCBoYXBwZW4KKyAqIG90aGVyd2lzZSkuIFRoZXNl
IG1heSBiZSBjb21iaW5lZCB0byBmb3JjZSB0aGUgbGVuZ3RoIG9mIG11bHRpcGxlIGZpZWxkcy4K
KyAqIFVzZWQgd2l0aCB1ZGF0cGdfZ2V0QmVzdFBhdHRlcm5XaXRoT3B0aW9ucywgdWRhdHBnX3Jl
cGxhY2VGaWVsZFR5cGVzV2l0aE9wdGlvbnMuCisgKiBAc3RhYmxlIElDVSA0LjQKKyAqLwordHlw
ZWRlZiBlbnVtIFVEYXRlVGltZVBhdHRlcm5NYXRjaE9wdGlvbnMgeworICAgIC8qKiBAc3RhYmxl
IElDVSA0LjQgKi8KKyAgICBVREFUUEdfTUFUQ0hfTk9fT1BUSU9OUyA9IDAsCisgICAgLyoqIEBz
dGFibGUgSUNVIDQuNCAqLworICAgIFVEQVRQR19NQVRDSF9IT1VSX0ZJRUxEX0xFTkdUSCA9IDEg
PDwgVURBVFBHX0hPVVJfRklFTEQsCisgICAgLyoqIEBpbnRlcm5hbCBJQ1UgNC40ICovCisgICAg
VURBVFBHX01BVENIX01JTlVURV9GSUVMRF9MRU5HVEggPSAxIDw8IFVEQVRQR19NSU5VVEVfRklF
TEQsCisgICAgLyoqIEBpbnRlcm5hbCBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX1NFQ09O
RF9GSUVMRF9MRU5HVEggPSAxIDw8IFVEQVRQR19TRUNPTkRfRklFTEQsCisgICAgLyoqIEBzdGFi
bGUgSUNVIDQuNCAqLworICAgIFVEQVRQR19NQVRDSF9BTExfRklFTERTX0xFTkdUSCA9ICgxIDw8
IFVEQVRQR19GSUVMRF9DT1VOVCkgLSAxCit9IFVEYXRlVGltZVBhdHRlcm5NYXRjaE9wdGlvbnM7
CisKKy8qKgorICogU3RhdHVzIHJldHVybiB2YWx1ZXMgZnJvbSB1ZGF0cGdfYWRkUGF0dGVybigp
LgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK3R5cGVkZWYgZW51bSBVRGF0ZVRpbWVQYXR0ZXJu
Q29uZmxpY3QgeworICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfTk9fQ09O
RkxJQ1QsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19CQVNFX0NPTkZM
SUNULAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfQ09ORkxJQ1QsCisg
ICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19DT05GTElDVF9DT1VOVAorfSBV
RGF0ZVRpbWVQYXR0ZXJuQ29uZmxpY3Q7CisKKy8qKgorICAqIE9wZW4gYSBnZW5lcmF0b3IgYWNj
b3JkaW5nIHRvIGEgZ2l2ZW4gbG9jYWxlLgorICAqIEBwYXJhbSBsb2NhbGUKKyAgKiBAcGFyYW0g
cEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5k
aWNhdGUgYQorICAqICAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlv
biBjYWxsLgorICAqIEByZXR1cm4gYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0
b3IuCisgICogQHN0YWJsZSBJQ1UgMy44CisgICovCitVX1NUQUJMRSBVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yICogVV9FWFBPUlQyCit1ZGF0cGdfb3Blbihjb25zdCBjaGFyICpsb2NhbGUsIFVF
cnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAgKiBPcGVuIGFuIGVtcHR5IGdlbmVyYXRv
ciwgdG8gYmUgY29uc3RydWN0ZWQgd2l0aCB1ZGF0cGdfYWRkUGF0dGVybiguLi4pIGV0Yy4KKyAg
KiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVz
dCBub3QgaW5kaWNhdGUgYQorICAqICAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRo
ZSBmdW5jdGlvbiBjYWxsLgorICAqIEByZXR1cm4gYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3IuCisgICogQHN0YWJsZSBJQ1UgMy44CisgICovCitVX1NUQUJMRSBVRGF0ZVRp
bWVQYXR0ZXJuR2VuZXJhdG9yICogVV9FWFBPUlQyCit1ZGF0cGdfb3BlbkVtcHR5KFVFcnJvckNv
ZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAgKiBDbG9zZSBhIGdlbmVyYXRvci4KKyAgKiBAcGFy
YW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAgKiBAc3Rh
YmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIHZvaWQgVV9FWFBPUlQyCit1ZGF0cGdfY2xvc2Uo
VURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZyk7CisKKyNpZiBVX1NIT1dfQ1BMVVNQTFVT
X0FQSQorCitVX05BTUVTUEFDRV9CRUdJTgorCisvKioKKyAqIFxjbGFzcyBMb2NhbFVEYXRlVGlt
ZVBhdHRlcm5HZW5lcmF0b3JQb2ludGVyCisgKiAiU21hcnQgcG9pbnRlciIgY2xhc3MsIGNsb3Nl
cyBhIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgdmlhIHVkYXRwZ19jbG9zZSgpLgorICogRm9y
IG1vc3QgbWV0aG9kcyBzZWUgdGhlIExvY2FsUG9pbnRlckJhc2UgYmFzZSBjbGFzcy4KKyAqCisg
KiBAc2VlIExvY2FsUG9pbnRlckJhc2UKKyAqIEBzZWUgTG9jYWxQb2ludGVyCisgKiBAc3RhYmxl
IElDVSA0LjQKKyAqLworVV9ERUZJTkVfTE9DQUxfT1BFTl9QT0lOVEVSKExvY2FsVURhdGVUaW1l
UGF0dGVybkdlbmVyYXRvclBvaW50ZXIsIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IsIHVkYXRw
Z19jbG9zZSk7CisKK1VfTkFNRVNQQUNFX0VORAorCisjZW5kaWYKKworLyoqCisgICogQ3JlYXRl
IGEgY29weSBwZiBhIGdlbmVyYXRvci4KKyAgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURh
dGVUaW1lUGF0dGVybkdlbmVyYXRvciB0byBiZSBjb3BpZWQuCisgICogQHBhcmFtIHBFcnJvckNv
ZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEK
KyAgKiAgICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4K
KyAgKiBAcmV0dXJuIGEgcG9pbnRlciB0byBhIG5ldyBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9y
LgorICAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBVRGF0ZVRpbWVQYXR0ZXJuR2Vu
ZXJhdG9yICogVV9FWFBPUlQyCit1ZGF0cGdfY2xvbmUoY29uc3QgVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvciAqZHRwZywgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICogR2V0IHRo
ZSBiZXN0IHBhdHRlcm4gbWF0Y2hpbmcgdGhlIGlucHV0IHNrZWxldG9uLiBJdCBpcyBndWFyYW50
ZWVkIHRvCisgKiBoYXZlIGFsbCBvZiB0aGUgZmllbGRzIGluIHRoZSBza2VsZXRvbi4KKyAqIAor
ICogTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gdXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0
ZXJuR2VuZXJhdG9yOgorICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdoaWNo
IGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICogcmF0aGVyIHRoYW4gY3Jl
YXRpbmcgb25lIGZvciBlYWNoIGZ1bmN0aW9uIGNhbGwuCisgKiBDb25zZWN1dGl2ZSBjYWxscyB0
byB0aGlzIGZ1bmN0aW9uIGRvIG5vdCBhZmZlY3QgZWFjaCBvdGhlciwKKyAqIGJ1dCB0aGlzIGZ1
bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmdsZSBnZW5lcmF0b3Ig
b2JqZWN0LgorICogCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVy
bkdlbmVyYXRvci4KKyAqIEBwYXJhbSBza2VsZXRvbgorICogICAgICAgICAgICBUaGUgc2tlbGV0
b24gaXMgYSBwYXR0ZXJuIGNvbnRhaW5pbmcgb25seSB0aGUgdmFyaWFibGUgZmllbGRzLgorICog
ICAgICAgICAgICBGb3IgZXhhbXBsZSwgIk1NTWRkIiBhbmQgIm1taGgiIGFyZSBza2VsZXRvbnMu
CisgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGggb2Ygc2tlbGV0b24KKyAqIEBwYXJhbSBiZXN0
UGF0dGVybgorICogICAgICAgICAgICBUaGUgYmVzdCBwYXR0ZXJuIGZvdW5kIGZyb20gdGhlIGdp
dmVuIHNrZWxldG9uLgorICogQHBhcmFtIGNhcGFjaXR5IHRoZSBjYXBhY2l0eSBvZiBiZXN0UGF0
dGVybi4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3
aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAgICAgICAgICAgICBmYWlsdXJlIGJl
Zm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1cm4gdGhlIGxlbmd0aCBvZiBiZXN0UGF0
dGVybi4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JU
MgordWRhdHBnX2dldEJlc3RQYXR0ZXJuKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcs
CisgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IGxl
bmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICBVQ2hhciAqYmVzdFBhdHRlcm4sIGludDMyX3Qg
Y2FwYWNpdHksCisgICAgICAgICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7
CisKKy8qKgorICogR2V0IHRoZSBiZXN0IHBhdHRlcm4gbWF0Y2hpbmcgdGhlIGlucHV0IHNrZWxl
dG9uLiBJdCBpcyBndWFyYW50ZWVkIHRvCisgKiBoYXZlIGFsbCBvZiB0aGUgZmllbGRzIGluIHRo
ZSBza2VsZXRvbi4KKyAqIAorICogTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gdXNlcyBhIG5vbi1j
b25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOgorICogSXQgdXNlcyBhIHN0YXRlZnVsIHBh
dHRlcm4gcGFyc2VyIHdoaWNoIGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAor
ICogcmF0aGVyIHRoYW4gY3JlYXRpbmcgb25lIGZvciBlYWNoIGZ1bmN0aW9uIGNhbGwuCisgKiBD
b25zZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1bmN0aW9uIGRvIG5vdCBhZmZlY3QgZWFjaCBvdGhl
ciwKKyAqIGJ1dCB0aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBh
IHNpbmdsZSBnZW5lcmF0b3Igb2JqZWN0LgorICogCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIg
dG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBza2VsZXRvbgorICogICAg
ICAgICAgICBUaGUgc2tlbGV0b24gaXMgYSBwYXR0ZXJuIGNvbnRhaW5pbmcgb25seSB0aGUgdmFy
aWFibGUgZmllbGRzLgorICogICAgICAgICAgICBGb3IgZXhhbXBsZSwgIk1NTWRkIiBhbmQgIm1t
aGgiIGFyZSBza2VsZXRvbnMuCisgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGggb2Ygc2tlbGV0
b24KKyAqIEBwYXJhbSBvcHRpb25zCisgKiAgICAgICAgICAgIE9wdGlvbnMgZm9yIGZvcmNpbmcg
dGhlIGxlbmd0aCBvZiBzcGVjaWZpZWQgZmllbGRzIGluIHRoZQorICogICAgICAgICAgICByZXR1
cm5lZCBwYXR0ZXJuIHRvIG1hdGNoIHRob3NlIGluIHRoZSBza2VsZXRvbiAod2hlbiB0aGlzCisg
KiAgICAgICAgICAgIHdvdWxkIG5vdCBoYXBwZW4gb3RoZXJ3aXNlKS4gRm9yIGRlZmF1bHQgYmVo
YXZpb3IsIHVzZQorICogICAgICAgICAgICBVREFUUEdfTUFUQ0hfTk9fT1BUSU9OUy4KKyAqIEBw
YXJhbSBiZXN0UGF0dGVybgorICogICAgICAgICAgICBUaGUgYmVzdCBwYXR0ZXJuIGZvdW5kIGZy
b20gdGhlIGdpdmVuIHNrZWxldG9uLgorICogQHBhcmFtIGNhcGFjaXR5CisgKiAgICAgICAgICAg
IHRoZSBjYXBhY2l0eSBvZiBiZXN0UGF0dGVybi4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlCisgKiAg
ICAgICAgICAgIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRp
Y2F0ZSBhCisgKiAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgor
ICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGJlc3RQYXR0ZXJuLgorICogQHN0YWJsZSBJQ1UgNC40
CisgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQyCit1ZGF0cGdfZ2V0QmVzdFBhdHRlcm5X
aXRoT3B0aW9ucyhVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IGxlbmd0
aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5NYXRj
aE9wdGlvbnMgb3B0aW9ucywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVDaGFy
ICpiZXN0UGF0dGVybiwgaW50MzJfdCBjYXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAgKiBHZXQgYSB1bmlx
dWUgc2tlbGV0b24gZnJvbSBhIGdpdmVuIHBhdHRlcm4uIEZvciBleGFtcGxlLAorICAqIGJvdGgg
Ik1NTS1kZCIgYW5kICJkZC9NTU0iIHByb2R1Y2UgdGhlIHNrZWxldG9uICJNTU1kZCIuCisgICog
CisgICogTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gdXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQ
YXR0ZXJuR2VuZXJhdG9yOgorICAqIEl0IHVzZXMgYSBzdGF0ZWZ1bCBwYXR0ZXJuIHBhcnNlciB3
aGljaCBpcyBzZXQgdXAgZm9yIGVhY2ggZ2VuZXJhdG9yIG9iamVjdCwKKyAgKiByYXRoZXIgdGhh
biBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAgKiBDb25zZWN1dGl2ZSBj
YWxscyB0byB0aGlzIGZ1bmN0aW9uIGRvIG5vdCBhZmZlY3QgZWFjaCBvdGhlciwKKyAgKiBidXQg
dGhpcyBmdW5jdGlvbiBjYW5ub3QgYmUgdXNlZCBjb25jdXJyZW50bHkgb24gYSBzaW5nbGUgZ2Vu
ZXJhdG9yIG9iamVjdC4KKyAgKgorICAqIEBwYXJhbSBkdHBnICAgICBhIHBvaW50ZXIgdG8gVURh
dGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAgKiBAcGFyYW0gcGF0dGVybiAgaW5wdXQgcGF0dGVy
biwgc3VjaCBhcyAiZGQvTU1NIi4KKyAgKiBAcGFyYW0gbGVuZ3RoICAgdGhlIGxlbmd0aCBvZiBw
YXR0ZXJuLgorICAqIEBwYXJhbSBza2VsZXRvbiBzdWNoIGFzICJNTU1kZCIKKyAgKiBAcGFyYW0g
Y2FwYWNpdHkgdGhlIGNhcGFjaXR5IG9mIHNrZWxldG9uLgorICAqIEBwYXJhbSBwRXJyb3JDb2Rl
IGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisg
ICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAg
KiBAcmV0dXJuIHRoZSBsZW5ndGggb2Ygc2tlbGV0b24uCisgICogQHN0YWJsZSBJQ1UgMy44Cisg
ICovCitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRhdHBnX2dldFNrZWxldG9uKFVEYXRl
VGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgY29uc3QgVUNo
YXIgKnBhdHRlcm4sIGludDMyX3QgbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgIFVDaGFyICpz
a2VsZXRvbiwgaW50MzJfdCBjYXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICBVRXJyb3JDb2Rl
ICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBHZXQgYSB1bmlxdWUgYmFzZSBza2VsZXRvbiBmcm9t
IGEgZ2l2ZW4gcGF0dGVybi4gVGhpcyBpcyB0aGUgc2FtZQorICogYXMgdGhlIHNrZWxldG9uLCBl
eGNlcHQgdGhhdCBkaWZmZXJlbmNlcyBpbiBsZW5ndGggYXJlIG1pbmltaXplZCBzbworICogYXMg
dG8gb25seSBwcmVzZXJ2ZSB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHN0cmluZyBhbmQgbnVtZXJp
YyBmb3JtLiBTbworICogZm9yIGV4YW1wbGUsIGJvdGggIk1NTS1kZCIgYW5kICJkL01NTSIgcHJv
ZHVjZSB0aGUgc2tlbGV0b24gIk1NTWQiCisgKiAobm90aWNlIHRoZSBzaW5nbGUgZCkuCisgKgor
ICogTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gdXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0
ZXJuR2VuZXJhdG9yOgorICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdoaWNo
IGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICogcmF0aGVyIHRoYW4gY3Jl
YXRpbmcgb25lIGZvciBlYWNoIGZ1bmN0aW9uIGNhbGwuCisgKiBDb25zZWN1dGl2ZSBjYWxscyB0
byB0aGlzIGZ1bmN0aW9uIGRvIG5vdCBhZmZlY3QgZWFjaCBvdGhlciwKKyAqIGJ1dCB0aGlzIGZ1
bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmdsZSBnZW5lcmF0b3Ig
b2JqZWN0LgorICoKKyAqIEBwYXJhbSBkdHBnICAgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0
dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwYXR0ZXJuICBpbnB1dCBwYXR0ZXJuLCBzdWNoIGFz
ICJkZC9NTU0iLgorICogQHBhcmFtIGxlbmd0aCAgIHRoZSBsZW5ndGggb2YgcGF0dGVybi4KKyAq
IEBwYXJhbSBiYXNlU2tlbGV0b24gc3VjaCBhcyAiTWQiCisgKiBAcGFyYW0gY2FwYWNpdHkgdGhl
IGNhcGFjaXR5IG9mIGJhc2Ugc2tlbGV0b24uCisgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50
ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICogICAgICAg
ICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1cm4g
dGhlIGxlbmd0aCBvZiBiYXNlU2tlbGV0b24uCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9T
VEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3VkYXRwZ19nZXRCYXNlU2tlbGV0b24oVURhdGVUaW1l
UGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNo
YXIgKnBhdHRlcm4sIGludDMyX3QgbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICBVQ2hh
ciAqYmFzZVNrZWxldG9uLCBpbnQzMl90IGNhcGFjaXR5LAorICAgICAgICAgICAgICAgICAgICAg
ICBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBBZGRzIGEgcGF0dGVybiB0byB0
aGUgZ2VuZXJhdG9yLiBJZiB0aGUgcGF0dGVybiBoYXMgdGhlIHNhbWUgc2tlbGV0b24gYXMKKyAq
IGFuIGV4aXN0aW5nIHBhdHRlcm4sIGFuZCB0aGUgb3ZlcnJpZGUgcGFyYW1ldGVyIGlzIHNldCwg
dGhlbiB0aGUgcHJldmlvdXMKKyAqIHZhbHVlIGlzIG92ZXJyaWRlbi4gT3RoZXJ3aXNlLCB0aGUg
cHJldmlvdXMgdmFsdWUgaXMgcmV0YWluZWQuIEluIGVpdGhlcgorICogY2FzZSwgdGhlIGNvbmZs
aWN0aW5nIHN0YXR1cyBpcyBzZXQgYW5kIHByZXZpb3VzIHZhbGUgaXMgc3RvcmVkIGluIAorICog
Y29uZmxpY3RpbmcgcGF0dGVybi4KKyAqIDxwPgorICogTm90ZSB0aGF0IHNpbmdsZS1maWVsZCBw
YXR0ZXJucyAobGlrZSAiTU1NIikgYXJlIGF1dG9tYXRpY2FsbHkgYWRkZWQsIGFuZAorICogZG9u
J3QgbmVlZCB0byBiZSBhZGRlZCBleHBsaWNpdGx5IQorICoKKyAqIEBwYXJhbSBkdHBnICAgICBh
IHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwYXR0ZXJu
ICBpbnB1dCBwYXR0ZXJuLCBzdWNoIGFzICJkZC9NTU0iCisgKiBAcGFyYW0gcGF0dGVybkxlbmd0
aCB0aGUgbGVuZ3RoIG9mIHBhdHRlcm4uCisgKiBAcGFyYW0gb3ZlcnJpZGUgIFdoZW4gZXhpc3Rp
bmcgdmFsdWVzIGFyZSB0byBiZSBvdmVycmlkZGVuIHVzZSB0cnVlLCAKKyAqICAgICAgICAgICAg
ICAgICAgb3RoZXJ3aXNlIHVzZSBmYWxzZS4KKyAqIEBwYXJhbSBjb25mbGljdGluZ1BhdHRlcm4g
IFByZXZpb3VzIHBhdHRlcm4gd2l0aCB0aGUgc2FtZSBza2VsZXRvbi4KKyAqIEBwYXJhbSBjYXBh
Y2l0eSB0aGUgY2FwYWNpdHkgb2YgY29uZmxpY3RpbmdQYXR0ZXJuLgorICogQHBhcmFtIHBMZW5n
dGggYSBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2YgY29uZmxpY3RpbmdQYXR0ZXJuLgorICogQHBh
cmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90
IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0
aW9uIGNhbGwuCisgKiBAcmV0dXJuIGNvbmZsaWN0aW5nIHN0YXR1cy4gVGhlIHZhbHVlIGNvdWxk
IGJlIFVEQVRQR19OT19DT05GTElDVCwgCisgKiAgICAgICAgICAgICAgICAgIFVEQVRQR19CQVNF
X0NPTkZMSUNUIG9yIFVEQVRQR19DT05GTElDVC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitV
X1NUQUJMRSBVRGF0ZVRpbWVQYXR0ZXJuQ29uZmxpY3QgVV9FWFBPUlQyCit1ZGF0cGdfYWRkUGF0
dGVybihVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAg
Y29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMyX3QgcGF0dGVybkxlbmd0aCwKKyAgICAgICAgICAg
ICAgICAgIFVCb29sIG92ZXJyaWRlLAorICAgICAgICAgICAgICAgICAgVUNoYXIgKmNvbmZsaWN0
aW5nUGF0dGVybiwgaW50MzJfdCBjYXBhY2l0eSwgaW50MzJfdCAqcExlbmd0aCwKKyAgICAgICAg
ICAgICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAgKiBBbiBBcHBlbmRJ
dGVtIGZvcm1hdCBpcyBhIHBhdHRlcm4gdXNlZCB0byBhcHBlbmQgYSBmaWVsZCBpZiB0aGVyZSBp
cyBubworICAqIGdvb2QgbWF0Y2guIEZvciBleGFtcGxlLCBzdXBwb3NlIHRoYXQgdGhlIGlucHV0
IHNrZWxldG9uIGlzICJHeXl5eU1NTWQiLAorICAqIGFuZCB0aGVyZSBpcyBubyBtYXRjaGluZyBw
YXR0ZXJuIGludGVybmFsbHksIGJ1dCB0aGVyZSBpcyBhIHBhdHRlcm4KKyAgKiBtYXRjaGluZyAi
eXl5eU1NTWQiLCBzYXkgImQtTU0teXl5eSIuIFRoZW4gdGhhdCBwYXR0ZXJuIGlzIHVzZWQsIHBs
dXMgdGhlCisgICogRy4gVGhlIHdheSB0aGVzZSB0d28gYXJlIGNvbmpvaW5lZCBpcyBieSB1c2lu
ZyB0aGUgQXBwZW5kSXRlbUZvcm1hdCBmb3IgRworICAqIChlcmEpLiBTbyBpZiB0aGF0IHZhbHVl
IGlzLCBzYXkgInswfSwgezF9IiB0aGVuIHRoZSBmaW5hbCByZXN1bHRpbmcKKyAgKiBwYXR0ZXJu
IGlzICJkLU1NLXl5eXksIEciLgorICAqIDxwPgorICAqIFRoZXJlIGFyZSBhY3R1YWxseSB0aHJl
ZSBhdmFpbGFibGUgdmFyaWFibGVzOiB7MH0gaXMgdGhlIHBhdHRlcm4gc28gZmFyLAorICAqIHsx
fSBpcyB0aGUgZWxlbWVudCB3ZSBhcmUgYWRkaW5nLCBhbmQgezJ9IGlzIHRoZSBuYW1lIG9mIHRo
ZSBlbGVtZW50LgorICAqIDxwPgorICAqIFRoaXMgcmVmbGVjdHMgdGhlIHdheSB0aGF0IHRoZSBD
TERSIGRhdGEgaXMgb3JnYW5pemVkLgorICAqCisgICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIg
dG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAgKiBAcGFyYW0gZmllbGQgIFVEYXRlVGlt
ZVBhdHRlcm5GaWVsZCwgc3VjaCBhcyBVREFUUEdfRVJBX0ZJRUxECisgICogQHBhcmFtIHZhbHVl
ICBwYXR0ZXJuLCBzdWNoIGFzICJ7MH0sIHsxfSIKKyAgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5n
dGggb2YgdmFsdWUuCisgICogQHN0YWJsZSBJQ1UgMy44CisgICovCitVX1NUQUJMRSB2b2lkIFVf
RVhQT1JUMgordWRhdHBnX3NldEFwcGVuZEl0ZW1Gb3JtYXQoVURhdGVUaW1lUGF0dGVybkdlbmVy
YXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5G
aWVsZCBmaWVsZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICp2YWx1
ZSwgaW50MzJfdCBsZW5ndGgpOworCisvKioKKyAqIEdldHRlciBjb3JyZXNwb25kaW5nIHRvIHNl
dEFwcGVuZEl0ZW1Gb3JtYXQuIFZhbHVlcyBiZWxvdyAwIG9yIGF0IG9yCisgKiBhYm92ZSBVREFU
UEdfRklFTERfQ09VTlQgYXJlIGlsbGVnYWwgYXJndW1lbnRzLgorICoKKyAqIEBwYXJhbSBkdHBn
ICAgQSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gZmll
bGQgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCwgc3VjaCBhcyBVREFUUEdfRVJBX0ZJRUxECisgKiBA
cGFyYW0gcExlbmd0aCBBIHBvaW50ZXIgdGhhdCB3aWxsIHJlY2VpdmUgdGhlIGxlbmd0aCBvZiBh
cHBlbmRJdGVtRm9ybWF0LgorICogQHJldHVybiBhcHBlbmRJdGVtRm9ybWF0IGZvciBmaWVsZC4K
KyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBjb25zdCBVQ2hhciAqIFVfRVhQT1JU
MgordWRhdHBnX2dldEFwcGVuZEl0ZW1Gb3JtYXQoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVy
YXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5G
aWVsZCBmaWVsZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBMZW5ndGgp
OworCisvKioKKyAgICogU2V0IHRoZSBuYW1lIG9mIGZpZWxkLCBlZyAiZXJhIiBpbiBFbmdsaXNo
IGZvciBFUkEuIFRoZXNlIGFyZSBvbmx5CisgICAqIHVzZWQgaWYgdGhlIGNvcnJlc3BvbmRpbmcg
QXBwZW5kSXRlbUZvcm1hdCBpcyB1c2VkLCBhbmQgaWYgaXQgY29udGFpbnMgYQorICAgKiB7Mn0g
dmFyaWFibGUuCisgICAqIDxwPgorICAgKiBUaGlzIHJlZmxlY3RzIHRoZSB3YXkgdGhhdCB0aGUg
Q0xEUiBkYXRhIGlzIG9yZ2FuaXplZC4KKyAgICoKKyAgICogQHBhcmFtIGR0cGcgICBhIHBvaW50
ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAgICogQHBhcmFtIGZpZWxkICBVRGF0
ZVRpbWVQYXR0ZXJuRmllbGQKKyAgICogQHBhcmFtIHZhbHVlICBuYW1lIGZvciB0aGUgZmllbGQu
CisgICAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiB2YWx1ZS4KKyAgICogQHN0YWJsZSBJ
Q1UgMy44CisgICAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19zZXRBcHBlbmRJ
dGVtTmFtZShVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAg
ICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCBmaWVsZCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBVQ2hhciAqdmFsdWUsIGludDMyX3QgbGVuZ3RoKTsKKworLyoqCisgKiBH
ZXR0ZXIgY29ycmVzcG9uZGluZyB0byBzZXRBcHBlbmRJdGVtTmFtZXMuIFZhbHVlcyBiZWxvdyAw
IG9yIGF0IG9yIGFib3ZlCisgKiBVREFUUEdfRklFTERfQ09VTlQgYXJlIGlsbGVnYWwgYXJndW1l
bnRzLgorICoKKyAqIEBwYXJhbSBkdHBnICAgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5H
ZW5lcmF0b3IuCisgKiBAcGFyYW0gZmllbGQgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCwgc3VjaCBh
cyBVREFUUEdfRVJBX0ZJRUxECisgKiBAcGFyYW0gcExlbmd0aCBBIHBvaW50ZXIgdGhhdCB3aWxs
IHJlY2VpdmUgdGhlIGxlbmd0aCBvZiB0aGUgbmFtZSBmb3IgZmllbGQuCisgKiBAcmV0dXJuIG5h
bWUgZm9yIGZpZWxkCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgY29uc3QgVUNo
YXIgKiBVX0VYUE9SVDIKK3VkYXRwZ19nZXRBcHBlbmRJdGVtTmFtZShjb25zdCBVRGF0ZVRpbWVQ
YXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgIFVEYXRlVGlt
ZVBhdHRlcm5GaWVsZCBmaWVsZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBpbnQzMl90ICpw
TGVuZ3RoKTsKKworLyoqCisgKiBUaGUgZGF0ZSB0aW1lIGZvcm1hdCBpcyBhIG1lc3NhZ2UgZm9y
bWF0IHBhdHRlcm4gdXNlZCB0byBjb21wb3NlIGRhdGUgYW5kCisgKiB0aW1lIHBhdHRlcm5zLiBU
aGUgZGVmYXVsdCB2YWx1ZSBpcyAiezB9IHsxfSIsIHdoZXJlIHswfSB3aWxsIGJlIHJlcGxhY2Vk
CisgKiBieSB0aGUgZGF0ZSBwYXR0ZXJuIGFuZCB7MX0gd2lsbCBiZSByZXBsYWNlZCBieSB0aGUg
dGltZSBwYXR0ZXJuLgorICogPHA+CisgKiBUaGlzIGlzIHVzZWQgd2hlbiB0aGUgaW5wdXQgc2tl
bGV0b24gY29udGFpbnMgYm90aCBkYXRlIGFuZCB0aW1lIGZpZWxkcywKKyAqIGJ1dCB0aGVyZSBp
cyBub3QgYSBjbG9zZSBtYXRjaCBhbW9uZyB0aGUgYWRkZWQgcGF0dGVybnMuIEZvciBleGFtcGxl
LAorICogc3VwcG9zZSB0aGF0IHRoaXMgb2JqZWN0IHdhcyBjcmVhdGVkIGJ5IGFkZGluZyAiZGQt
TU1NIiBhbmQgImhoOm1tIiwgYW5kCisgKiBpdHMgZGF0ZXRpbWVGb3JtYXQgaXMgdGhlIGRlZmF1
bHQgInswfSB7MX0iLiBUaGVuIGlmIHRoZSBpbnB1dCBza2VsZXRvbgorICogaXMgIk1NTWRobW0i
LCB0aGVyZSBpcyBub3QgYW4gZXhhY3QgbWF0Y2gsIHNvIHRoZSBpbnB1dCBza2VsZXRvbiBpcwor
ICogYnJva2VuIHVwIGludG8gdHdvIGNvbXBvbmVudHMgIk1NTWQiIGFuZCAiaG1tIi4gVGhlcmUg
YXJlIGNsb3NlIG1hdGNoZXMKKyAqIGZvciB0aG9zZSB0d28gc2tlbGV0b25zLCBzbyB0aGUgcmVz
dWx0IGlzIHB1dCB0b2dldGhlciB3aXRoIHRoaXMgcGF0dGVybiwKKyAqIHJlc3VsdGluZyBpbiAi
ZC1NTU0gaDptbSIuCisgKgorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBh
dHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gZHRGb3JtYXQKKyAqICAgICAgICAgICAgbWVzc2Fn
ZSBmb3JtYXQgcGF0dGVybiwgaGVyZSB7MH0gd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgZGF0ZQor
ICogICAgICAgICAgICBwYXR0ZXJuIGFuZCB7MX0gd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgdGlt
ZSBwYXR0ZXJuLgorICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIGR0Rm9ybWF0LgorICog
QHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIHZvaWQgVV9FWFBPUlQyCit1ZGF0cGdfc2V0
RGF0ZVRpbWVGb3JtYXQoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqZHRGb3JtYXQsIGludDMyX3QgbGVu
Z3RoKTsKKworLyoqCisgKiBHZXR0ZXIgY29ycmVzcG9uZGluZyB0byBzZXREYXRlVGltZUZvcm1h
dC4KKyAqIEBwYXJhbSBkdHBnICAgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0
b3IuCisgKiBAcGFyYW0gcExlbmd0aCBBIHBvaW50ZXIgdGhhdCB3aWxsIHJlY2VpdmUgdGhlIGxl
bmd0aCBvZiB0aGUgZm9ybWF0CisgKiBAcmV0dXJuIGRhdGVUaW1lRm9ybWF0LgorICogQHN0YWJs
ZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9FWFBPUlQyCit1ZGF0cGdf
Z2V0RGF0ZVRpbWVGb3JtYXQoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywK
KyAgICAgICAgICAgICAgICAgICAgICAgICBpbnQzMl90ICpwTGVuZ3RoKTsKKworLyoqCisgKiBU
aGUgZGVjaW1hbCB2YWx1ZSBpcyB1c2VkIGluIGZvcm1hdHRpbmcgZnJhY3Rpb25zIG9mIHNlY29u
ZHMuIElmIHRoZQorICogc2tlbGV0b24gY29udGFpbnMgZnJhY3Rpb25hbCBzZWNvbmRzLCB0aGVu
IHRoaXMgaXMgdXNlZCB3aXRoIHRoZQorICogZnJhY3Rpb25hbCBzZWNvbmRzLiBGb3IgZXhhbXBs
ZSwgc3VwcG9zZSB0aGF0IHRoZSBpbnB1dCBwYXR0ZXJuIGlzCisgKiAiaGhtbXNzU1NTUyIsIGFu
ZCB0aGUgYmVzdCBtYXRjaGluZyBwYXR0ZXJuIGludGVybmFsbHkgaXMgIkg6bW06c3MiLCBhbmQK
KyAqIHRoZSBkZWNpbWFsIHN0cmluZyBpcyAiLCIuIFRoZW4gdGhlIHJlc3VsdGluZyBwYXR0ZXJu
IGlzIG1vZGlmaWVkIHRvIGJlCisgKiAiSDptbTpzcyxTU1NTIgorICoKKyAqIEBwYXJhbSBkdHBn
IGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIGRlY2lt
YWwKKyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBkZWNpbWFsLgorICogQHN0YWJsZSBJ
Q1UgMy44CisgKi8KK1VfU1RBQkxFIHZvaWQgVV9FWFBPUlQyCit1ZGF0cGdfc2V0RGVjaW1hbChV
RGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgY29uc3Qg
VUNoYXIgKmRlY2ltYWwsIGludDMyX3QgbGVuZ3RoKTsKKworLyoqCisgKiBHZXR0ZXIgY29ycmVz
cG9uZGluZyB0byBzZXREZWNpbWFsLgorICogCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8g
VURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0
aGF0IHdpbGwgcmVjZWl2ZSB0aGUgbGVuZ3RoIG9mIHRoZSBkZWNpbWFsIHN0cmluZy4KKyAqIEBy
ZXR1cm4gY29ycmVzcG9uZGluZyB0byB0aGUgZGVjaW1hbCBwb2ludC4KKyAqIEBzdGFibGUgSUNV
IDMuOAorICovCitVX1NUQUJMRSBjb25zdCBVQ2hhciAqIFVfRVhQT1JUMgordWRhdHBnX2dldERl
Y2ltYWwoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAg
ICAgICAgIGludDMyX3QgKnBMZW5ndGgpOworCisvKioKKyAqIEFkanVzdHMgdGhlIGZpZWxkIHR5
cGVzICh3aWR0aCBhbmQgc3VidHlwZSkgb2YgYSBwYXR0ZXJuIHRvIG1hdGNoIHdoYXQgaXMKKyAq
IGluIGEgc2tlbGV0b24uIFRoYXQgaXMsIGlmIHlvdSBzdXBwbHkgYSBwYXR0ZXJuIGxpa2UgImQt
TSBIOm0iLCBhbmQgYQorICogc2tlbGV0b24gb2YgIk1NTU1kZGhobW0iLCB0aGVuIHRoZSBpbnB1
dCBwYXR0ZXJuIGlzIGFkanVzdGVkIHRvIGJlCisgKiAiZGQtTU1NTSBoaDptbSIuIFRoaXMgaXMg
dXNlZCBpbnRlcm5hbGx5IHRvIGdldCB0aGUgYmVzdCBtYXRjaCBmb3IgdGhlCisgKiBpbnB1dCBz
a2VsZXRvbiwgYnV0IGNhbiBhbHNvIGJlIHVzZWQgZXh0ZXJuYWxseS4KKyAqCisgKiBOb3RlIHRo
YXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0
b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2ggaXMgc2V0IHVw
IGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUg
Zm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNhbGxzIHRvIHRoaXMgZnVu
Y3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRoaXMgZnVuY3Rpb24gY2Fu
bm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBvYmplY3QuCisg
KgorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3Iu
CisgKiBAcGFyYW0gcGF0dGVybiBJbnB1dCBwYXR0ZXJuCisgKiBAcGFyYW0gcGF0dGVybkxlbmd0
aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHBhdHRlcm4uCisgKiBAcGFyYW0gc2tlbGV0b24KKyAqIEBw
YXJhbSBza2VsZXRvbkxlbmd0aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHNrZWxldG9uLgorICogQHBh
cmFtIGRlc3QgIHBhdHRlcm4gYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHNrZWxldG9uIGZpZWxkcyB3
aWR0aHMgYW5kIHN1YnR5cGVzLgorICogQHBhcmFtIGRlc3RDYXBhY2l0eSB0aGUgY2FwYWNpdHkg
b2YgZGVzdC4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29k
ZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAgICAgICAgICAgIGZhaWx1cmUg
YmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGRlc3Qu
CisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3Vk
YXRwZ19yZXBsYWNlRmllbGRUeXBlcyhVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAor
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpwYXR0ZXJuLCBpbnQzMl90IHBh
dHRlcm5MZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxl
dG9uLCBpbnQzMl90IHNrZWxldG9uTGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgIFVD
aGFyICpkZXN0LCBpbnQzMl90IGRlc3RDYXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBBZGp1c3RzIHRoZSBmaWVsZCB0
eXBlcyAod2lkdGggYW5kIHN1YnR5cGUpIG9mIGEgcGF0dGVybiB0byBtYXRjaCB3aGF0IGlzCisg
KiBpbiBhIHNrZWxldG9uLiBUaGF0IGlzLCBpZiB5b3Ugc3VwcGx5IGEgcGF0dGVybiBsaWtlICJk
LU0gSDptIiwgYW5kIGEKKyAqIHNrZWxldG9uIG9mICJNTU1NZGRoaG1tIiwgdGhlbiB0aGUgaW5w
dXQgcGF0dGVybiBpcyBhZGp1c3RlZCB0byBiZQorICogImRkLU1NTU0gaGg6bW0iLiBUaGlzIGlz
IHVzZWQgaW50ZXJuYWxseSB0byBnZXQgdGhlIGJlc3QgbWF0Y2ggZm9yIHRoZQorICogaW5wdXQg
c2tlbGV0b24sIGJ1dCBjYW4gYWxzbyBiZSB1c2VkIGV4dGVybmFsbHkuCisgKgorICogTm90ZSB0
aGF0IHRoaXMgZnVuY3Rpb24gdXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yOgorICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdoaWNoIGlzIHNldCB1
cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICogcmF0aGVyIHRoYW4gY3JlYXRpbmcgb25l
IGZvciBlYWNoIGZ1bmN0aW9uIGNhbGwuCisgKiBDb25zZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1
bmN0aW9uIGRvIG5vdCBhZmZlY3QgZWFjaCBvdGhlciwKKyAqIGJ1dCB0aGlzIGZ1bmN0aW9uIGNh
bm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmdsZSBnZW5lcmF0b3Igb2JqZWN0Lgor
ICoKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9y
LgorICogQHBhcmFtIHBhdHRlcm4gSW5wdXQgcGF0dGVybgorICogQHBhcmFtIHBhdHRlcm5MZW5n
dGggdGhlIGxlbmd0aCBvZiBpbnB1dCBwYXR0ZXJuLgorICogQHBhcmFtIHNrZWxldG9uCisgKiBA
cGFyYW0gc2tlbGV0b25MZW5ndGggdGhlIGxlbmd0aCBvZiBpbnB1dCBza2VsZXRvbi4KKyAqIEBw
YXJhbSBvcHRpb25zCisgKiAgICAgICAgICAgIE9wdGlvbnMgY29udHJvbGxpbmcgd2hldGhlciB0
aGUgbGVuZ3RoIG9mIHNwZWNpZmllZCBmaWVsZHMgaW4gdGhlCisgKiAgICAgICAgICAgIHBhdHRl
cm4gYXJlIGFkanVzdGVkIHRvIG1hdGNoIHRob3NlIGluIHRoZSBza2VsZXRvbiAod2hlbiB0aGlz
CisgKiAgICAgICAgICAgIHdvdWxkIG5vdCBoYXBwZW4gb3RoZXJ3aXNlKS4gRm9yIGRlZmF1bHQg
YmVoYXZpb3IsIHVzZQorICogICAgICAgICAgICBVREFUUEdfTUFUQ0hfTk9fT1BUSU9OUy4KKyAq
IEBwYXJhbSBkZXN0ICBwYXR0ZXJuIGFkanVzdGVkIHRvIG1hdGNoIHRoZSBza2VsZXRvbiBmaWVs
ZHMgd2lkdGhzIGFuZCBzdWJ0eXBlcy4KKyAqIEBwYXJhbSBkZXN0Q2FwYWNpdHkgdGhlIGNhcGFj
aXR5IG9mIGRlc3QuCisgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJv
ckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICogICAgICAgICAgICAgICAgICBmYWls
dXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1cm4gdGhlIGxlbmd0aCBvZiBk
ZXN0LgorICogQHN0YWJsZSBJQ1UgNC40CisgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQy
Cit1ZGF0cGdfcmVwbGFjZUZpZWxkVHlwZXNXaXRoT3B0aW9ucyhVRGF0ZVRpbWVQYXR0ZXJuR2Vu
ZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
VUNoYXIgKnBhdHRlcm4sIGludDMyX3QgcGF0dGVybkxlbmd0aCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpza2VsZXRvbiwgaW50MzJfdCBza2VsZXRv
bkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVEYXRlVGltZVBh
dHRlcm5NYXRjaE9wdGlvbnMgb3B0aW9ucywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFVDaGFyICpkZXN0LCBpbnQzMl90IGRlc3RDYXBhY2l0eSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAq
IFJldHVybiBhIFVFbnVtZXJhdGlvbiBsaXN0IG9mIGFsbCB0aGUgc2tlbGV0b25zIGluIGNhbm9u
aWNhbCBmb3JtLgorICogQ2FsbCB1ZGF0cGdfZ2V0UGF0dGVybkZvclNrZWxldG9uKCkgdG8gZ2V0
IHRoZSBjb3JyZXNwb25kaW5nIHBhdHRlcm4uCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRl
ciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBw
b2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAg
ICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwKKyAqIEByZXR1
cm4gYSBVRW51bWVyYXRpb24gbGlzdCBvZiBhbGwgdGhlIHNrZWxldG9ucworICogICAgICAgICBU
aGUgY2FsbGVyIG11c3QgY2xvc2UgdGhlIG9iamVjdC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICov
CitVX1NUQUJMRSBVRW51bWVyYXRpb24gKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVuU2tlbGV0b25z
KGNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsIFVFcnJvckNvZGUgKnBFcnJv
ckNvZGUpOworCisvKioKKyAqIFJldHVybiBhIFVFbnVtZXJhdGlvbiBsaXN0IG9mIGFsbCB0aGUg
YmFzZSBza2VsZXRvbnMgaW4gY2Fub25pY2FsIGZvcm0uCisgKgorICogQHBhcmFtIGR0cGcgYSBw
b2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gcEVycm9yQ29k
ZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQor
ICogICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0
dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxsIHRoZSBiYXNlIHNrZWxldG9ucworICogICAg
ICAgICAgICAgVGhlIGNhbGxlciBtdXN0IGNsb3NlIHRoZSBvYmplY3QuCisgKiBAc3RhYmxlIElD
VSAzLjgKKyAqLworVV9TVEFCTEUgVUVudW1lcmF0aW9uICogVV9FWFBPUlQyCit1ZGF0cGdfb3Bl
bkJhc2VTa2VsZXRvbnMoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywgVUVy
cm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICogR2V0IHRoZSBwYXR0ZXJuIGNvcnJlc3Bv
bmRpbmcgdG8gYSBnaXZlbiBza2VsZXRvbi4KKyAqIAorICogQHBhcmFtIGR0cGcgYSBwb2ludGVy
IHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gc2tlbGV0b24gCisgKiBA
cGFyYW0gc2tlbGV0b25MZW5ndGggcG9pbnRlciB0byB0aGUgbGVuZ3RoIG9mIHNrZWxldG9uLgor
ICogQHBhcmFtIHBMZW5ndGggcG9pbnRlciB0byB0aGUgbGVuZ3RoIG9mIHJldHVybiBwYXR0ZXJu
LgorICogQHJldHVybiBwYXR0ZXJuIGNvcnJlc3BvbmRpbmcgdG8gYSBnaXZlbiBza2VsZXRvbi4K
KyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBjb25zdCBVQ2hhciAqIFVfRVhQT1JU
MgordWRhdHBnX2dldFBhdHRlcm5Gb3JTa2VsZXRvbihjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2Vu
ZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAq
c2tlbGV0b24sIGludDMyX3Qgc2tlbGV0b25MZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGludDMyX3QgKnBMZW5ndGgpOworCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmggYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCmluZGV4IDNiZTg5YjgzNTdjNmE4
NzE3MDQwNTJhOGMxMjNlZWZlNjcxODVkY2UuLjU4YjdkMWY0YjNiODU2NWYxNThmMWM1YTU4NWEz
MTNiZDRmMjdjY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Nv
bW1vbklkZW50aWZpZXJzLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29t
bW9uSWRlbnRpZmllcnMuaApAQCAtMTAxLDYgKzEwMSw3IEBACiAgICAgbWFjcm8oY29uc3RydWN0
b3IpIFwKICAgICBtYWNybyhjb3VudCkgXAogICAgIG1hY3JvKGNvdW50ZXJzKSBcCisgICAgbWFj
cm8oZGF5KSBcCiAgICAgbWFjcm8oZGVmaW5lUHJvcGVydHkpIFwKICAgICBtYWNybyhkZXNjcmlw
dGlvbikgXAogICAgIG1hY3JvKGRlc2NyaXB0aW9ucykgXApAQCAtMTA5LDYgKzExMCw3IEBACiAg
ICAgbWFjcm8oZG9uZSkgXAogICAgIG1hY3JvKGVudHJpZXMpIFwKICAgICBtYWNybyhlbnVtZXJh
YmxlKSBcCisgICAgbWFjcm8oZXJhKSBcCiAgICAgbWFjcm8oZXZhbCkgXAogICAgIG1hY3JvKGV4
ZWMpIFwKICAgICBtYWNybyhleGVjdXRpb25Db3VudCkgXApAQCAtMTE2LDYgKzExOCw3IEBACiAg
ICAgbWFjcm8oZmxhZ3MpIFwKICAgICBtYWNybyhmb2N1cykgXAogICAgIG1hY3JvKGZvckVhY2gp
IFwKKyAgICBtYWNybyhmb3JtYXRNYXRjaGVyKSBcCiAgICAgbWFjcm8oZm9yd2FyZCkgXAogICAg
IG1hY3JvKGZyb20pIFwKICAgICBtYWNybyhmcm9tQ2hhckNvZGUpIFwKQEAgLTEyNiw2ICsxMjks
OCBAQAogICAgIG1hY3JvKGhhc093blByb3BlcnR5KSBcCiAgICAgbWFjcm8oaGFzaCkgXAogICAg
IG1hY3JvKGhlYWRlcikgXAorICAgIG1hY3JvKGhvdXIpIFwKKyAgICBtYWNybyhob3VyMTIpIFwK
ICAgICBtYWNybyhocmVmKSBcCiAgICAgbWFjcm8oaWQpIFwKICAgICBtYWNybyhpZ25vcmVDYXNl
KSBcCkBAIC0xNDksNiArMTU0LDggQEAKICAgICBtYWNybyhsb2NhbGUpIFwKICAgICBtYWNybyhs
b2NhbGVNYXRjaGVyKSBcCiAgICAgbWFjcm8obWVzc2FnZSkgXAorICAgIG1hY3JvKG1pbnV0ZSkg
XAorICAgIG1hY3JvKG1vbnRoKSBcCiAgICAgbWFjcm8obXVsdGlsaW5lKSBcCiAgICAgbWFjcm8o
bmFtZSkgXAogICAgIG1hY3JvKG5leHQpIFwKQEAgLTE3Miw2ICsxNzksNyBAQAogICAgIG1hY3Jv
KHJlbG9hZCkgXAogICAgIG1hY3JvKHJlcGxhY2UpIFwKICAgICBtYWNybyhyZXNvbHZlKSBcCisg
ICAgbWFjcm8oc2Vjb25kKSBcCiAgICAgbWFjcm8oc2Vuc2l0aXZpdHkpIFwKICAgICBtYWNybyhz
ZXQpIFwKICAgICBtYWNybyhzaG93TW9kYWxEaWFsb2cpIFwKQEAgLTE4NSw2ICsxOTMsOCBAQAog
ICAgIG1hY3JvKHRhcmdldCkgXAogICAgIG1hY3JvKHRlc3QpIFwKICAgICBtYWNybyh0aGVuKSBc
CisgICAgbWFjcm8odGltZVpvbmUpIFwKKyAgICBtYWNybyh0aW1lWm9uZU5hbWUpIFwKICAgICBt
YWNybyh0b0V4cG9uZW50aWFsKSBcCiAgICAgbWFjcm8odG9GaXhlZCkgXAogICAgIG1hY3JvKHRv
SVNPU3RyaW5nKSBcCkBAIC0xOTgsOCArMjA4LDEwIEBACiAgICAgbWFjcm8odmFsdWVzKSBcCiAg
ICAgbWFjcm8od2Via2l0KSBcCiAgICAgbWFjcm8od2Via2l0SW5kZXhlZERCKSBcCisgICAgbWFj
cm8od2Vla2RheSkgXAogICAgIG1hY3JvKHdpbmRvdykgXAotICAgIG1hY3JvKHdyaXRhYmxlKQor
ICAgIG1hY3JvKHdyaXRhYmxlKSBcCisgICAgbWFjcm8oeWVhcikKIAogI2RlZmluZSBKU0NfQ09N
TU9OX0lERU5USUZJRVJTX0VBQ0hfS0VZV09SRChtYWNybykgXAogICAgIG1hY3JvKGJyZWFrKSBc
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVG
b3JtYXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9y
bWF0LmNwcAppbmRleCBkYzViMmFjZTMyNWIwOGI2ZjJmMzdiMjMxMDc2OTIwZTg4ZmNmMDI4Li45
MGNjM2I2YWM4NTQ5NzVhMWZiMTYyZGZiMzEzYjMwM2E5MmQ0YTE0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5jcHAKQEAgLTM2
LDggKzM2LDEyIEBACiAjaW5jbHVkZSAiSlNCb3VuZEZ1bmN0aW9uLmgiCiAjaW5jbHVkZSAiSlND
SlNWYWx1ZUlubGluZXMuaCIKICNpbmNsdWRlICJKU0NlbGxJbmxpbmVzLmgiCisjaW5jbHVkZSAi
T2JqZWN0Q29uc3RydWN0b3IuaCIKICNpbmNsdWRlICJTbG90VmlzaXRvcklubGluZXMuaCIKICNp
bmNsdWRlICJTdHJ1Y3R1cmVJbmxpbmVzLmgiCisjaW5jbHVkZSA8dW5pY29kZS91Y2FsLmg+Cisj
aW5jbHVkZSA8dW5pY29kZS91ZGF0cGcuaD4KKyNpbmNsdWRlIDx1bmljb2RlL3VlbnVtLmg+CiAK
IG5hbWVzcGFjZSBKU0MgewogCkBAIC04NiwxNCArOTAsNzI1IEBAIHZvaWQgSW50bERhdGVUaW1l
Rm9ybWF0OjpzZXRCb3VuZEZvcm1hdChWTSYgdm0sIEpTQm91bmRGdW5jdGlvbiogZm9ybWF0KQog
ICAgIG1fYm91bmRGb3JtYXQuc2V0KHZtLCB0aGlzLCBmb3JtYXQpOwogfQogCitlbnVtIGNsYXNz
IERhdGVUaW1lT3B0aW9uUmVxdWlyZWQgeyBEYXRlLCBUaW1lLCBBbnkgfTsKK2VudW0gY2xhc3Mg
RGF0ZVRpbWVPcHRpb25EZWZhdWx0cyB7IERhdGUsIFRpbWUsIEFsbCB9OworCitTdHJpbmcgZGVm
YXVsdFRpbWVab25lKCkKK3sKKyAgICAvLyA2LjQuMyBEZWZhdWx0VGltZVpvbmUgKCkgKEVDTUEt
NDAyIDIuMCkKKyAgICAvLyBUaGUgRGVmYXVsdFRpbWVab25lIGFic3RyYWN0IG9wZXJhdGlvbiBy
ZXR1cm5zIGEgU3RyaW5nIHZhbHVlIHJlcHJlc2VudGluZyB0aGUgdmFsaWQgKDYuNC4xKSBhbmQg
Y2Fub25pY2FsaXplZCAoNi40LjIpIHRpbWUgem9uZSBuYW1lIGZvciB0aGUgaG9zdCBlbnZpcm9u
bWVudOKAmXMgY3VycmVudCB0aW1lIHpvbmUuCisKKyAgICBVRXJyb3JDb2RlIHN0YXR1cyhVX1pF
Uk9fRVJST1IpOworICAgIGludDMyX3QgYnVmZmVyTGVuZ3RoID0gdWNhbF9nZXREZWZhdWx0VGlt
ZVpvbmUobnVsbHB0ciwgMCwgJnN0YXR1cyk7CisgICAgaWYgKHN0YXR1cyA9PSBVX0JVRkZFUl9P
VkVSRkxPV19FUlJPUikgeworICAgICAgICBVRXJyb3JDb2RlIHN0YXR1cyhVX1pFUk9fRVJST1Ip
OworICAgICAgICBWZWN0b3I8VUNoYXI+IGJ1ZmZlcihidWZmZXJMZW5ndGgpOworICAgICAgICB1
Y2FsX2dldERlZmF1bHRUaW1lWm9uZShidWZmZXIuZGF0YSgpLCBidWZmZXJMZW5ndGgsICZzdGF0
dXMpOworICAgICAgICBpZiAoVV9TVUNDRVNTKHN0YXR1cykpCisgICAgICAgICAgICByZXR1cm4g
U3RyaW5nKGJ1ZmZlci5kYXRhKCksIGJ1ZmZlckxlbmd0aCk7CisgICAgfQorICAgIHJldHVybiBB
U0NJSUxpdGVyYWwoIlVUQyIpOworfQorCitzdGF0aWMgU3RyaW5nIGNhbm9uaWNhbGl6ZVRpbWVa
b25lTmFtZShjb25zdCBTdHJpbmcmIHRpbWVab25lTmFtZSkKK3sKKyAgICAvLyA2LjQuMSBJc1Zh
bGlkVGltZVpvbmVOYW1lICh0aW1lWm9uZSkKKyAgICAvLyBUaGUgYWJzdHJhY3Qgb3BlcmF0aW9u
IHJldHVybnMgdHJ1ZSBpZiB0aW1lWm9uZSwgY29udmVydGVkIHRvIHVwcGVyIGNhc2UgYXMgZGVz
Y3JpYmVkIGluIDYuMSwgaXMgZXF1YWwgdG8gb25lIG9mIHRoZSBab25lIG9yIExpbmsgbmFtZXMg
b2YgdGhlIElBTkEgVGltZSBab25lIERhdGFiYXNlLCBjb252ZXJ0ZWQgdG8gdXBwZXIgY2FzZSBh
cyBkZXNjcmliZWQgaW4gNi4xLiBJdCByZXR1cm5zIGZhbHNlIG90aGVyd2lzZS4KKyAgICBVRXJy
b3JDb2RlIHN0YXR1cyhVX1pFUk9fRVJST1IpOworICAgIFVFbnVtZXJhdGlvbiogdGltZVpvbmVz
ID0gdWNhbF9vcGVuVGltZVpvbmVzKCZzdGF0dXMpOworICAgIEFTU0VSVChVX1NVQ0NFU1Moc3Rh
dHVzKSk7CisKKyAgICBjb25zdCBTdHJpbmcgdGltZVpvbmVOYW1lVXBwZXIgPSB0aW1lWm9uZU5h
bWUudXBwZXIoKTsKKyAgICBTdHJpbmcgY2Fub25pY2FsOworICAgIHdoaWxlIChjYW5vbmljYWwu
aXNOdWxsKCkpIHsKKyAgICAgICAgVUVycm9yQ29kZSBzdGF0dXMoVV9aRVJPX0VSUk9SKTsKKyAg
ICAgICAgaW50MzJfdCBpYW5hVGltZVpvbmVMZW5ndGg7CisgICAgICAgIGNvbnN0IFVDaGFyKiBp
YW5hVGltZVpvbmUgPSB1ZW51bV91bmV4dCh0aW1lWm9uZXMsICZpYW5hVGltZVpvbmVMZW5ndGgs
ICZzdGF0dXMpOworICAgICAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworCisgICAgICAg
IC8vIEVuZCBvZiBlbnVtZXJhdGlvbi4KKyAgICAgICAgaWYgKCFpYW5hVGltZVpvbmUpCisgICAg
ICAgICAgICBicmVhazsKKworICAgICAgICBTdHJpbmcgcmVzdWx0U3RyaW5nKGlhbmFUaW1lWm9u
ZSwgaWFuYVRpbWVab25lTGVuZ3RoKTsKKyAgICAgICAgaWYgKHJlc3VsdFN0cmluZy51cHBlcigp
ICE9IHRpbWVab25lTmFtZVVwcGVyKQorICAgICAgICAgICAgY29udGludWU7CisKKyAgICAgICAg
Ly8gRm91bmQgYSBtYXRjaCwgbm93IGNhbm9uaWNhbGl6ZS4KKyAgICAgICAgLy8gNi40LjIgQ2Fu
b25pY2FsaXplVGltZVpvbmVOYW1lICh0aW1lWm9uZSkgKEVDTUEtNDAyIDIuMCkKKyAgICAgICAg
Ly8gMS4gTGV0IGlhbmFUaW1lWm9uZSBiZSB0aGUgWm9uZSBvciBMaW5rIG5hbWUgb2YgdGhlIElB
TkEgVGltZSBab25lIERhdGFiYXNlIHN1Y2ggdGhhdCB0aW1lWm9uZSwgY29udmVydGVkIHRvIHVw
cGVyIGNhc2UgYXMgZGVzY3JpYmVkIGluIDYuMSwgaXMgZXF1YWwgdG8gaWFuYVRpbWVab25lLCBj
b252ZXJ0ZWQgdG8gdXBwZXIgY2FzZSBhcyBkZXNjcmliZWQgaW4gNi4xLgorICAgICAgICAvLyAy
LiBJZiBpYW5hVGltZVpvbmUgaXMgYSBMaW5rIG5hbWUsIHRoZW4gbGV0IGlhbmFUaW1lWm9uZSBi
ZSB0aGUgY29ycmVzcG9uZGluZyBab25lIG5hbWUgYXMgc3BlY2lmaWVkIGluIHRoZSDigJxiYWNr
d2FyZOKAnSBmaWxlIG9mIHRoZSBJQU5BIFRpbWUgWm9uZSBEYXRhYmFzZS4KKworICAgICAgICBW
ZWN0b3I8VUNoYXI+IGJ1ZmZlcihpYW5hVGltZVpvbmVMZW5ndGgpOworICAgICAgICBVQm9vbCBp
c1N5c3RlbUlEKEZBTFNFKTsKKyAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAg
ICBpbnQzMl90IGNhbm9uaWNhbExlbmd0aCA9IHVjYWxfZ2V0Q2Fub25pY2FsVGltZVpvbmVJRChp
YW5hVGltZVpvbmUsIGlhbmFUaW1lWm9uZUxlbmd0aCwgYnVmZmVyLmRhdGEoKSwgaWFuYVRpbWVa
b25lTGVuZ3RoLCAmaXNTeXN0ZW1JRCwgJnN0YXR1cyk7CisgICAgICAgIGlmIChzdGF0dXMgPT0g
VV9CVUZGRVJfT1ZFUkZMT1dfRVJST1IpIHsKKyAgICAgICAgICAgIFZlY3RvcjxVQ2hhcj4gYnVm
ZmVyKGlhbmFUaW1lWm9uZUxlbmd0aCk7CisgICAgICAgICAgICBVQm9vbCBpc1N5c3RlbUlEKEZB
TFNFKTsKKyAgICAgICAgICAgIFVFcnJvckNvZGUgc3RhdHVzKFVfWkVST19FUlJPUik7CisgICAg
ICAgICAgICB1Y2FsX2dldENhbm9uaWNhbFRpbWVab25lSUQoaWFuYVRpbWVab25lLCBpYW5hVGlt
ZVpvbmVMZW5ndGgsIGJ1ZmZlci5kYXRhKCksIGNhbm9uaWNhbExlbmd0aCwgJmlzU3lzdGVtSUQs
ICZzdGF0dXMpOworICAgICAgICAgICAgQVNTRVJUKFVfU1VDQ0VTUyhzdGF0dXMpKTsKKyAgICAg
ICAgICAgIGNhbm9uaWNhbCA9IFN0cmluZyhidWZmZXIuZGF0YSgpLCBjYW5vbmljYWxMZW5ndGgp
OworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgQVNTRVJUKFVfU1VDQ0VTUyhzdGF0dXMp
KTsKKyAgICAgICAgICAgIGNhbm9uaWNhbCA9IFN0cmluZyhidWZmZXIuZGF0YSgpLCBjYW5vbmlj
YWxMZW5ndGgpOworICAgICAgICB9CisgICAgfQorICAgIHVlbnVtX2Nsb3NlKHRpbWVab25lcyk7
CisKKyAgICAvLyAzLiBJZiBpYW5hVGltZVpvbmUgaXMgIkV0Yy9VVEMiIG9yICJFdGMvR01UIiwg
dGhlbiByZXR1cm4gIlVUQyIuCisgICAgaWYgKGNhbm9uaWNhbCA9PSAiRXRjL1VUQyIgfHwgY2Fu
b25pY2FsID09ICJFdGMvR01UIikKKyAgICAgICAgY2Fub25pY2FsID0gQVNDSUlMaXRlcmFsKCJV
VEMiKTsKKworICAgIC8vIDQuIFJldHVybiBpYW5hVGltZVpvbmUuCisgICAgcmV0dXJuIGNhbm9u
aWNhbDsKK30KKworc3RhdGljIFZlY3RvcjxTdHJpbmc+IGxvY2FsZURhdGEoY29uc3QgU3RyaW5n
JiAvKmxvY2FsZSovLCBjb25zdCBTdHJpbmcmIGtleSkKK3sKKyAgICBpZiAoa2V5ID09ICJjYSIp
IHsKKyAgICAgICAgVmVjdG9yPFN0cmluZz4gY2FEYXRhKHsKKyAgICAgICAgICAgIEFTQ0lJTGl0
ZXJhbCgiZ3JlZ29yeSIpLAorICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJidWRkaGlzdCIpLAor
ICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJjaGluZXNlIiksCisgICAgICAgICAgICBBU0NJSUxp
dGVyYWwoImNvcHRpYyIpLAorICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJkYW5naSIpLAorICAg
ICAgICAgICAgQVNDSUlMaXRlcmFsKCJldGhpb2FhIiksCisgICAgICAgICAgICBBU0NJSUxpdGVy
YWwoImV0aGlvcGljLWFtZXRlLWFsZW0iKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgiZXRo
aW9waWMiKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaGVicmV3IiksCisgICAgICAgICAg
ICBBU0NJSUxpdGVyYWwoImluZGlhbiIpLAorICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJpc2xh
bWljIiksCisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoImlzbGFtaWMtdW1hbHF1cmEiKSwKKyAg
ICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaXNsYW1pYy10YmxhIiksCisgICAgICAgICAgICBBU0NJ
SUxpdGVyYWwoImlzbGFtaWMtY2l2aWwiKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaXNs
YW1pY2MiKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaXNsYW1pYy1yZ3NhIiksCisgICAg
ICAgICAgICBBU0NJSUxpdGVyYWwoImlzbzg2MDEiKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJh
bCgiamFwYW5lc2UiKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgicGVyc2lhbiIpLAorICAg
ICAgICAgICAgQVNDSUlMaXRlcmFsKCJyb2MiKQorICAgICAgICB9KTsKKyAgICAgICAgcmV0dXJu
IGNhRGF0YTsKKyAgICB9CisgICAgaWYgKGtleSA9PSAibnUiKSB7CisgICAgICAgIFZlY3RvcjxT
dHJpbmc+IG51RGF0YSh7CisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoImxhdG4iKSwKKyAgICAg
ICAgICAgIEFTQ0lJTGl0ZXJhbCgiYXJhYiIpLAorICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJh
cmFiZXh0IiksCisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoImJhbGkiKSwKKyAgICAgICAgICAg
IEFTQ0lJTGl0ZXJhbCgiYmVuZyIpLAorICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJkZXZhIiks
CisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoImZ1bGx3aWRlIiksCisgICAgICAgICAgICBBU0NJ
SUxpdGVyYWwoImd1anIiKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgiZ3VydSIpLAorICAg
ICAgICAgICAgQVNDSUlMaXRlcmFsKCJoYW5pZGVjIiksCisgICAgICAgICAgICBBU0NJSUxpdGVy
YWwoImtobXIiKSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgia25kYSIpLAorICAgICAgICAg
ICAgQVNDSUlMaXRlcmFsKCJsYW9vIiksCisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoImxpbWIi
KSwKKyAgICAgICAgICAgIEFTQ0lJTGl0ZXJhbCgibWx5bSIpLAorICAgICAgICAgICAgQVNDSUlM
aXRlcmFsKCJtb25nIiksCisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoIm15bXIiKSwKKyAgICAg
ICAgICAgIEFTQ0lJTGl0ZXJhbCgib3J5YSIpLAorICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJ0
YW1sZGVjIiksCisgICAgICAgICAgICBBU0NJSUxpdGVyYWwoInRlbHUiKSwKKyAgICAgICAgICAg
IEFTQ0lJTGl0ZXJhbCgidGhhaSIpLAorICAgICAgICAgICAgQVNDSUlMaXRlcmFsKCJ0aWJ0IikK
KyAgICAgICAgfSk7CisgICAgICAgIHJldHVybiBudURhdGE7CisgICAgfQorICAgIHJldHVybiBW
ZWN0b3I8U3RyaW5nPigpOworfQorCitzdGF0aWMgSW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRh
clR5cGUgc3RyaW5nVG9DYWxlbmRhclR5cGUoY29uc3QgU3RyaW5nJiBjYSkKK3sKKyAgICBpZiAo
Y2EgPT0gImJ1ZGRoaXN0IikKKyAgICAgICAgcmV0dXJuIEludGxEYXRlVGltZUZvcm1hdDo6Q2Fs
ZW5kYXJUeXBlOjpCdWRkaGlzdDsKKyAgICBpZiAoY2EgPT0gImNoaW5lc2UiKQorICAgICAgICBy
ZXR1cm4gSW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRhclR5cGU6OkNoaW5lc2U7CisgICAgaWYg
KGNhID09ICJjb3B0aWMiKQorICAgICAgICByZXR1cm4gSW50bERhdGVUaW1lRm9ybWF0OjpDYWxl
bmRhclR5cGU6OkNvcHRpYzsKKyAgICBpZiAoY2EgPT0gImRhbmdpIikKKyAgICAgICAgcmV0dXJu
IEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpEYW5naTsKKyAgICBpZiAoY2EgPT0g
ImV0aGlvYWEiIHx8IGNhID09ICJldGhpb3BpYy1hbWV0ZS1hbGVtIikKKyAgICAgICAgcmV0dXJu
IEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpFdGhpb2FhOworICAgIGlmIChjYSA9
PSAiZXRoaW9waWMiKQorICAgICAgICByZXR1cm4gSW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRh
clR5cGU6OkV0aGlvcGljOworICAgIGlmIChjYSA9PSAiZ3JlZ29yeSIpCisgICAgICAgIHJldHVy
biBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6R3JlZ29yeTsKKyAgICBpZiAoY2Eg
PT0gImhlYnJldyIpCisgICAgICAgIHJldHVybiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFy
VHlwZTo6SGVicmV3OworICAgIGlmIChjYSA9PSAiaW5kaWFuIikKKyAgICAgICAgcmV0dXJuIElu
dGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpJbmRpYW47CisgICAgaWYgKGNhID09ICJp
c2xhbWljIikKKyAgICAgICAgcmV0dXJuIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBl
OjpJc2xhbWljOworICAgIGlmIChjYSA9PSAiaXNsYW1pYy11bWFscXVyYSIpCisgICAgICAgIHJl
dHVybiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6SXNsYW1pY1VtYWxxdXJhOwor
ICAgIGlmIChjYSA9PSAiaXNsYW1pYy10YmxhIikKKyAgICAgICAgcmV0dXJuIEludGxEYXRlVGlt
ZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpJc2xhbWljVGJsYTsKKyAgICBpZiAoY2EgPT0gImlzbGFt
aWNjIiB8fCBjYSA9PSAiaXNsYW1pYy1jaXZpbCIpCisgICAgICAgIHJldHVybiBJbnRsRGF0ZVRp
bWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6SXNsYW1pY0NpdmlsOworICAgIGlmIChjYSA9PSAiaXNs
YW1pYy1yZ3NhIikKKyAgICAgICAgcmV0dXJuIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJU
eXBlOjpJc2xhbWljUmdzYTsKKyAgICBpZiAoY2EgPT0gImlzbzg2MDEiKQorICAgICAgICByZXR1
cm4gSW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRhclR5cGU6Oklzbzg2MDE7CisgICAgaWYgKGNh
ID09ICJqYXBhbmVzZSIpCisgICAgICAgIHJldHVybiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVu
ZGFyVHlwZTo6SmFwYW5lc2U7CisgICAgaWYgKGNhID09ICJwZXJzaWFuIikKKyAgICAgICAgcmV0
dXJuIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpQZXJzaWFuOworICAgIGlmIChj
YSA9PSAicm9jIikKKyAgICAgICAgcmV0dXJuIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJU
eXBlOjpSb2M7CisKKyAgICByZXR1cm4gSW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRhclR5cGU6
OkdyZWdvcnk7Cit9CisKK3N0YXRpYyBKU09iamVjdCogdG9EYXRlVGltZU9wdGlvbnMoRXhlY1N0
YXRlKiBzdGF0ZSwgSlNWYWx1ZSBvcmlnaW5hbE9wdGlvbnMsIGNvbnN0IERhdGVUaW1lT3B0aW9u
UmVxdWlyZWQgcmVxdWlyZWQsIGNvbnN0IERhdGVUaW1lT3B0aW9uRGVmYXVsdHMgZGVmYXVsdHMp
Cit7CisgICAgLy8gMTIuMS4xIFRvRGF0ZVRpbWVPcHRpb25zIGFic3RyYWN0IG9wZXJhdGlvbiAo
RUNNQS00MDIgMi4wKQorICAgIFZNJiB2bSA9IHN0YXRlLT52bSgpOworCisgICAgLy8gMS4gSWYg
b3B0aW9ucyBpcyB1bmRlZmluZWQsIHRoZW4gbGV0IG9wdGlvbnMgYmUgbnVsbCwgZWxzZSBsZXQg
b3B0aW9ucyBiZSBUb09iamVjdChvcHRpb25zKS4KKyAgICAvLyAyLiBSZXR1cm5JZkFicnVwdChv
cHRpb25zKS4KKyAgICAvLyAzLiBMZXQgb3B0aW9ucyBiZSBPYmplY3RDcmVhdGUob3B0aW9ucyku
CisgICAgSlNPYmplY3QqIG9wdGlvbnM7CisgICAgaWYgKG9yaWdpbmFsT3B0aW9ucy5pc1VuZGVm
aW5lZE9yTnVsbCgpKQorICAgICAgICBvcHRpb25zID0gY29uc3RydWN0RW1wdHlPYmplY3Qoc3Rh
dGUsIHN0YXRlLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCktPm51bGxQcm90b3R5cGVPYmplY3RTdHJ1
Y3R1cmUoKSk7CisgICAgZWxzZSB7CisgICAgICAgIEpTT2JqZWN0KiBvcmlnaW5hbFRvT2JqZWN0
ID0gb3JpZ2luYWxPcHRpb25zLnRvT2JqZWN0KHN0YXRlKTsKKyAgICAgICAgaWYgKHN0YXRlLT5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBvcHRp
b25zID0gY29uc3RydWN0RW1wdHlPYmplY3Qoc3RhdGUsIG9yaWdpbmFsVG9PYmplY3QpOworICAg
IH0KKworICAgIC8vIDQuIExldCBuZWVkRGVmYXVsdHMgYmUgdHJ1ZS4KKyAgICBib29sIG5lZWRE
ZWZhdWx0cyh0cnVlKTsKKworICAgIC8vIDUuIElmIHJlcXVpcmVkIGlzICJkYXRlIiBvciAiYW55
IiwKKyAgICBpZiAocmVxdWlyZWQgPT0gRGF0ZVRpbWVPcHRpb25SZXF1aXJlZDo6RGF0ZSB8fCBy
ZXF1aXJlZCA9PSBEYXRlVGltZU9wdGlvblJlcXVpcmVkOjpBbnkpIHsKKyAgICAgICAgLy8gYS4g
Rm9yIGVhY2ggb2YgdGhlIHByb3BlcnR5IG5hbWVzICJ3ZWVrZGF5IiwgInllYXIiLCAibW9udGgi
LCAiZGF5IjoKKyAgICAgICAgLy8gaS4gTGV0IHByb3AgYmUgdGhlIHByb3BlcnR5IG5hbWUuCisg
ICAgICAgIC8vIGlpLiBMZXQgdmFsdWUgYmUgR2V0KG9wdGlvbnMsIHByb3ApLgorICAgICAgICAv
LyBpaWkuIFJldHVybklmQWJydXB0KHZhbHVlKS4KKyAgICAgICAgLy8gaXYuIElmIHZhbHVlIGlz
IG5vdCB1bmRlZmluZWQsIHRoZW4gbGV0IG5lZWREZWZhdWx0cyBiZSBmYWxzZS4KKyAgICAgICAg
SlNWYWx1ZSB3ZWVrZGF5ID0gb3B0aW9ucy0+Z2V0KHN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT53
ZWVrZGF5KTsKKyAgICAgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
IHJldHVybiBudWxscHRyOworICAgICAgICBpZiAoIXdlZWtkYXkuaXNVbmRlZmluZWQoKSkKKyAg
ICAgICAgICAgIG5lZWREZWZhdWx0cyA9IGZhbHNlOworCisgICAgICAgIEpTVmFsdWUgeWVhciA9
IG9wdGlvbnMtPmdldChzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+eWVhcik7CisgICAgICAgIGlm
IChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAg
ICAgICAgaWYgKCF5ZWFyLmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMg
PSBmYWxzZTsKKworICAgICAgICBKU1ZhbHVlIG1vbnRoID0gb3B0aW9ucy0+Z2V0KHN0YXRlLCB2
bS5wcm9wZXJ0eU5hbWVzLT5tb250aCk7CisgICAgICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9u
KCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCFtb250aC5pc1Vu
ZGVmaW5lZCgpKQorICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisKKyAgICAgICAg
SlNWYWx1ZSBkYXkgPSBvcHRpb25zLT5nZXQoc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPmRheSk7
CisgICAgICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4g
bnVsbHB0cjsKKyAgICAgICAgaWYgKCFkYXkuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5l
ZWREZWZhdWx0cyA9IGZhbHNlOworICAgIH0KKworICAgIC8vIDYuIElmIHJlcXVpcmVkIGlzICJ0
aW1lIiBvciAiYW55IiwKKyAgICBpZiAocmVxdWlyZWQgPT0gRGF0ZVRpbWVPcHRpb25SZXF1aXJl
ZDo6VGltZSB8fCByZXF1aXJlZCA9PSBEYXRlVGltZU9wdGlvblJlcXVpcmVkOjpBbnkpIHsKKyAg
ICAgICAgLy8gYS4gRm9yIGVhY2ggb2YgdGhlIHByb3BlcnR5IG5hbWVzICJob3VyIiwgIm1pbnV0
ZSIsICJzZWNvbmQiOgorICAgICAgICAvLyBpLiBMZXQgcHJvcCBiZSB0aGUgcHJvcGVydHkgbmFt
ZS4KKyAgICAgICAgLy8gaWkuIExldCB2YWx1ZSBiZSBHZXQob3B0aW9ucywgcHJvcCkuCisgICAg
ICAgIC8vIGlpaS4gUmV0dXJuSWZBYnJ1cHQodmFsdWUpLgorICAgICAgICAvLyBpdi4gSWYgdmFs
dWUgaXMgbm90IHVuZGVmaW5lZCwgdGhlbiBsZXQgbmVlZERlZmF1bHRzIGJlIGZhbHNlLgorICAg
ICAgICBKU1ZhbHVlIGhvdXIgPSBvcHRpb25zLT5nZXQoc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMt
PmhvdXIpOworICAgICAgICBpZiAoc3RhdGUtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICghaG91ci5pc1VuZGVmaW5lZCgpKQorICAgICAg
ICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisKKyAgICAgICAgSlNWYWx1ZSBtaW51dGUgPSBv
cHRpb25zLT5nZXQoc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPm1pbnV0ZSk7CisgICAgICAgIGlm
IChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAg
ICAgICAgaWYgKCFtaW51dGUuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZhdWx0
cyA9IGZhbHNlOworCisgICAgICAgIEpTVmFsdWUgc2Vjb25kID0gb3B0aW9ucy0+Z2V0KHN0YXRl
LCB2bS5wcm9wZXJ0eU5hbWVzLT5zZWNvbmQpOworICAgICAgICBpZiAoc3RhdGUtPmhhZEV4Y2Vw
dGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICghc2Vjb25k
LmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKyAgICB9
CisKKyAgICAvLyA3LiBJZiBuZWVkRGVmYXVsdHMgaXMgdHJ1ZSBhbmQgZGVmYXVsdHMgaXMgZWl0
aGVyICJkYXRlIiBvciAiYWxsIiwgdGhlbgorICAgIGlmIChuZWVkRGVmYXVsdHMgJiYgKGRlZmF1
bHRzID09IERhdGVUaW1lT3B0aW9uRGVmYXVsdHM6OkRhdGUgfHwgZGVmYXVsdHMgPT0gRGF0ZVRp
bWVPcHRpb25EZWZhdWx0czo6QWxsKSkgeworICAgICAgICAvLyBhLiBGb3IgZWFjaCBvZiB0aGUg
cHJvcGVydHkgbmFtZXMgInllYXIiLCAibW9udGgiLCAiZGF5IjoKKyAgICAgICAgLy8gaS4gTGV0
IHN0YXR1cyBiZSBDcmVhdGVEYXRlUHJvcGVydHlPclRocm93KG9wdGlvbnMsIHByb3AsICJudW1l
cmljIikuCisgICAgICAgIC8vIGlpLiBSZXR1cm5JZkFicnVwdChzdGF0dXMpLgorICAgICAgICBv
cHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPnllYXIsIGpzU3RyaW5nKHN0
YXRlLCAibnVtZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAg
ICAgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2
bSwgdm0ucHJvcGVydHlOYW1lcy0+bW9udGgsIGpzU3RyaW5nKHN0YXRlLCAibnVtZXJpYyIpKTsK
KyAgICAgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBu
dWxscHRyOworCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1l
cy0+ZGF5LCBqc1N0cmluZyhzdGF0ZSwgIm51bWVyaWMiKSk7CisgICAgICAgIGlmIChzdGF0ZS0+
aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKKyAg
ICAvLyA4LiBJZiBuZWVkRGVmYXVsdHMgaXMgdHJ1ZSBhbmQgZGVmYXVsdHMgaXMgZWl0aGVyICJ0
aW1lIiBvciAiYWxsIiwgdGhlbgorICAgIGlmIChuZWVkRGVmYXVsdHMgJiYgKGRlZmF1bHRzID09
IERhdGVUaW1lT3B0aW9uRGVmYXVsdHM6OlRpbWUgfHwgZGVmYXVsdHMgPT0gRGF0ZVRpbWVPcHRp
b25EZWZhdWx0czo6QWxsKSkgeworICAgICAgICAvLyBhLiBGb3IgZWFjaCBvZiB0aGUgcHJvcGVy
dHkgbmFtZXMgImhvdXIiLCAibWludXRlIiwgInNlY29uZCI6CisgICAgICAgIC8vIGkuIExldCBz
dGF0dXMgYmUgQ3JlYXRlRGF0ZVByb3BlcnR5T3JUaHJvdyhvcHRpb25zLCBwcm9wLCAibnVtZXJp
YyIpLgorICAgICAgICAvLyBpaS4gUmV0dXJuSWZBYnJ1cHQoc3RhdHVzKS4KKyAgICAgICAgb3B0
aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyLCBqc1N0cmluZyhzdGF0
ZSwgIm51bWVyaWMiKSk7CisgICAgICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAg
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0s
IHZtLnByb3BlcnR5TmFtZXMtPm1pbnV0ZSwganNTdHJpbmcoc3RhdGUsICJudW1lcmljIikpOwor
ICAgICAgICBpZiAoc3RhdGUtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CisKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVz
LT5zZWNvbmQsIGpzU3RyaW5nKHN0YXRlLCAibnVtZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRl
LT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKwor
ICAgIC8vIDkuIFJldHVybiBvcHRpb25zLgorICAgIHJldHVybiBvcHRpb25zOworfQorCitzdGF0
aWMgdm9pZCBzZXRGb3JtYXRzRnJvbVBhdHRlcm4oSW50bERhdGVUaW1lRm9ybWF0KiBkYXRlVGlt
ZUZvcm1hdCwgY29uc3QgU3RyaW5nJiBwYXR0ZXJuKQoreworICAgIHVuc2lnbmVkIGxlbmd0aCA9
IHBhdHRlcm4ubGVuZ3RoKCk7CisgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IGxlbmd0aDsg
KytpKSB7CisgICAgICAgIFVDaGFyIGNoID0gcGF0dGVybltpXTsKKyAgICAgICAgdW5zaWduZWQg
Y291bnQgPSAxOworICAgICAgICBzd2l0Y2ggKGNoKSB7CisgICAgICAgIGNhc2UgJ0UnOgorICAg
ICAgICAgICAgd2hpbGUgKGkgKyAxIDwgbGVuZ3RoICYmIHBhdHRlcm5baSArIDFdID09ICdFJykg
eworICAgICAgICAgICAgICAgICsrY291bnQ7CisgICAgICAgICAgICAgICAgKytpOworICAgICAg
ICAgICAgfQorICAgICAgICAgICAgaWYgKGNvdW50ID09IDMpCisgICAgICAgICAgICAgICAgZGF0
ZVRpbWVGb3JtYXQtPnNldFdlZWtkYXkoSW50bERhdGVUaW1lRm9ybWF0OjpXZWVrZGF5U3R5bGU6
OlNob3J0KTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDQpCisgICAgICAgICAgICAg
ICAgZGF0ZVRpbWVGb3JtYXQtPnNldFdlZWtkYXkoSW50bERhdGVUaW1lRm9ybWF0OjpXZWVrZGF5
U3R5bGU6OkxvbmcpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNSkKKyAgICAgICAg
ICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0V2Vla2RheShJbnRsRGF0ZVRpbWVGb3JtYXQ6Oldl
ZWtkYXlTdHlsZTo6TmFycm93KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdH
JzoKKyAgICAgICAgICAgIHdoaWxlIChpICsgMSA8IGxlbmd0aCAmJiBwYXR0ZXJuW2kgKyAxXSA9
PSAnRycpIHsKKyAgICAgICAgICAgICAgICArK2NvdW50OworICAgICAgICAgICAgICAgICsraTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAzKQorICAgICAgICAgICAg
ICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRFcmEoSW50bERhdGVUaW1lRm9ybWF0OjpFcmFTdHlsZTo6
U2hvcnQpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNCkKKyAgICAgICAgICAgICAg
ICBkYXRlVGltZUZvcm1hdC0+c2V0RXJhKEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6Okxv
bmcpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNSkKKyAgICAgICAgICAgICAgICBk
YXRlVGltZUZvcm1hdC0+c2V0RXJhKEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6Ok5hcnJv
dyk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAneSc6CisgICAgICAgICAgICB3
aGlsZSAoaSArIDEgPCBsZW5ndGggJiYgcGF0dGVybltpICsgMV0gPT0gJ3knKSB7CisgICAgICAg
ICAgICAgICAgKytjb3VudDsKKyAgICAgICAgICAgICAgICArK2k7CisgICAgICAgICAgICB9Cisg
ICAgICAgICAgICBpZiAoY291bnQgPT0gMSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1h
dC0+c2V0WWVhcihJbnRsRGF0ZVRpbWVGb3JtYXQ6OlllYXJTdHlsZTo6TnVtZXJpYyk7CisgICAg
ICAgICAgICBlbHNlIGlmIChjb3VudCA9PSAyKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9y
bWF0LT5zZXRZZWFyKEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlOjpUd29EaWdpdCk7Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAnTSc6CisgICAgICAgICAgICB3aGlsZSAo
aSArIDEgPCBsZW5ndGggJiYgcGF0dGVybltpICsgMV0gPT0gJ00nKSB7CisgICAgICAgICAgICAg
ICAgKytjb3VudDsKKyAgICAgICAgICAgICAgICArK2k7CisgICAgICAgICAgICB9CisgICAgICAg
ICAgICBpZiAoY291bnQgPT0gMSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0
TW9udGgoSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0eWxlOjpOdW1lcmljKTsKKyAgICAgICAg
ICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQt
PnNldE1vbnRoKEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZTo6VHdvRGlnaXQpOworICAg
ICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMykKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZv
cm1hdC0+c2V0TW9udGgoSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0eWxlOjpTaG9ydCk7Cisg
ICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA0KQorICAgICAgICAgICAgICAgIGRhdGVUaW1l
Rm9ybWF0LT5zZXRNb250aChJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6OkxvbmcpOwor
ICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNSkKKyAgICAgICAgICAgICAgICBkYXRlVGlt
ZUZvcm1hdC0+c2V0TW9udGgoSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0eWxlOjpOYXJyb3cp
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ0wnOgorICAgICAgICAgICAgd2hp
bGUgKGkgKyAxIDwgbGVuZ3RoICYmIHBhdHRlcm5baSArIDFdID09ICdMJykgeworICAgICAgICAg
ICAgICAgICsrY291bnQ7CisgICAgICAgICAgICAgICAgKytpOworICAgICAgICAgICAgfQorICAg
ICAgICAgICAgaWYgKGNvdW50ID09IDEpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQt
PnNldE1vbnRoKEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZTo6TnVtZXJpYyk7CisgICAg
ICAgICAgICBlbHNlIGlmIChjb3VudCA9PSAyKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9y
bWF0LT5zZXRNb250aChJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6OlR3b0RpZ2l0KTsK
KyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDMpCisgICAgICAgICAgICAgICAgZGF0ZVRp
bWVGb3JtYXQtPnNldE1vbnRoKEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZTo6U2hvcnQp
OworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNCkKKyAgICAgICAgICAgICAgICBkYXRl
VGltZUZvcm1hdC0+c2V0TW9udGgoSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0eWxlOjpMb25n
KTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDUpCisgICAgICAgICAgICAgICAgZGF0
ZVRpbWVGb3JtYXQtPnNldE1vbnRoKEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZTo6TmFy
cm93KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdkJzoKKyAgICAgICAgICAg
IHdoaWxlIChpICsgMSA8IGxlbmd0aCAmJiBwYXR0ZXJuW2kgKyAxXSA9PSAnZCcpIHsKKyAgICAg
ICAgICAgICAgICArK2NvdW50OworICAgICAgICAgICAgICAgICsraTsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9y
bWF0LT5zZXREYXkoSW50bERhdGVUaW1lRm9ybWF0OjpEYXlTdHlsZTo6TnVtZXJpYyk7CisgICAg
ICAgICAgICBlbHNlIGlmIChjb3VudCA9PSAyKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9y
bWF0LT5zZXREYXkoSW50bERhdGVUaW1lRm9ybWF0OjpEYXlTdHlsZTo6VHdvRGlnaXQpOworICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ2gnOgorICAgICAgICAgICAgd2hpbGUgKGkg
KyAxIDwgbGVuZ3RoICYmIHBhdHRlcm5baSArIDFdID09ICdoJykgeworICAgICAgICAgICAgICAg
ICsrY291bnQ7CisgICAgICAgICAgICAgICAgKytpOworICAgICAgICAgICAgfQorICAgICAgICAg
ICAgZGF0ZVRpbWVGb3JtYXQtPnNldEhvdXIxMih0cnVlKTsKKyAgICAgICAgICAgIGlmIChjb3Vu
dCA9PSAxKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRIb3VyKEludGxEYXRl
VGltZUZvcm1hdDo6SG91clN0eWxlOjpOdW1lcmljKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNv
dW50ID09IDIpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldEhvdXIoSW50bERh
dGVUaW1lRm9ybWF0OjpIb3VyU3R5bGU6OlR3b0RpZ2l0KTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlICdIJzoKKyAgICAgICAgICAgIHdoaWxlIChpICsgMSA8IGxlbmd0aCAmJiBw
YXR0ZXJuW2kgKyAxXSA9PSAnSCcpIHsKKyAgICAgICAgICAgICAgICArK2NvdW50OworICAgICAg
ICAgICAgICAgICsraTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0
LT5zZXRIb3VyMTIoZmFsc2UpOworICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisgICAgICAg
ICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldEhvdXIoSW50bERhdGVUaW1lRm9ybWF0OjpIb3Vy
U3R5bGU6Ok51bWVyaWMpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAg
ICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0SG91cihJbnRsRGF0ZVRpbWVGb3JtYXQ6Okhv
dXJTdHlsZTo6VHdvRGlnaXQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ20n
OgorICAgICAgICAgICAgd2hpbGUgKGkgKyAxIDwgbGVuZ3RoICYmIHBhdHRlcm5baSArIDFdID09
ICdtJykgeworICAgICAgICAgICAgICAgICsrY291bnQ7CisgICAgICAgICAgICAgICAgKytpOwor
ICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisgICAgICAgICAgICAg
ICAgZGF0ZVRpbWVGb3JtYXQtPnNldE1pbnV0ZShJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1pbnV0ZVN0
eWxlOjpOdW1lcmljKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAgICAg
ICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldE1pbnV0ZShJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1p
bnV0ZVN0eWxlOjpUd29EaWdpdCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAn
cyc6CisgICAgICAgICAgICB3aGlsZSAoaSArIDEgPCBsZW5ndGggJiYgcGF0dGVybltpICsgMV0g
PT0gJ3MnKSB7CisgICAgICAgICAgICAgICAgKytjb3VudDsKKyAgICAgICAgICAgICAgICArK2k7
CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoY291bnQgPT0gMSkKKyAgICAgICAgICAg
ICAgICBkYXRlVGltZUZvcm1hdC0+c2V0U2Vjb25kKEludGxEYXRlVGltZUZvcm1hdDo6U2Vjb25k
U3R5bGU6Ok51bWVyaWMpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAg
ICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0U2Vjb25kKEludGxEYXRlVGltZUZvcm1hdDo6
U2Vjb25kU3R5bGU6OlR3b0RpZ2l0KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNl
ICd6JzoKKyAgICAgICAgICAgIHdoaWxlIChpICsgMSA8IGxlbmd0aCAmJiBwYXR0ZXJuW2kgKyAx
XSA9PSAneicpIHsKKyAgICAgICAgICAgICAgICArK2NvdW50OworICAgICAgICAgICAgICAgICsr
aTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAg
ICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRUaW1lWm9uZU5hbWUoSW50bERhdGVUaW1lRm9ybWF0
OjpUaW1lWm9uZU5hbWVTdHlsZTo6U2hvcnQpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQg
PT0gNCkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0VGltZVpvbmVOYW1lKElu
dGxEYXRlVGltZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6OkxvbmcpOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIH0KKyAgICB9Cit9CisKK0pTVmFsdWUgaW5pdGlhbGl6ZURhdGVUaW1l
Rm9ybWF0KEV4ZWNTdGF0ZSogc3RhdGUsIEludGxEYXRlVGltZUZvcm1hdCogZGF0ZVRpbWVGb3Jt
YXQsIEpTVmFsdWUgbG9jYWxlcywgSlNWYWx1ZSBvcmlnaW5hbE9wdGlvbnMpCit7CisgICAgLy8g
MTIuMS4xIEluaXRpYWxpemVEYXRlVGltZUZvcm1hdCAoZGF0ZVRpbWVGb3JtYXQsIGxvY2FsZXMs
IG9wdGlvbnMpIChFQ01BLTQwMiAyLjApCisgICAgLy8gMS4gSWYgZGF0ZVRpbWVGb3JtYXQuW1tp
bml0aWFsaXplZEludGxPYmplY3RdXSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRp
b24uCisgICAgaWYgKGRhdGVUaW1lRm9ybWF0LT5pbml0aWFsaXplZEludGxPYmplY3QoKSkKKyAg
ICAgICAgdGhyb3dUeXBlRXJyb3Ioc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiT2JqZWN0IGFscmVhZHkg
aW5pdGlhbGl6ZWQiKSk7CisKKyAgICAvLyAyLiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tpbml0aWFs
aXplZEludGxPYmplY3RdXSB0byB0cnVlLgorICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRJbml0aWFs
aXplZEludGxPYmplY3QoKTsKKworICAgIC8vIDMuIExldCByZXF1ZXN0ZWRMb2NhbGVzIGJlIENh
bm9uaWNhbGl6ZUxvY2FsZUxpc3QobG9jYWxlcykuCisgICAgVmVjdG9yPFN0cmluZz4gcmVxdWVz
dGVkTG9jYWxlcyA9IGNhbm9uaWNhbGl6ZUxvY2FsZUxpc3QoKnN0YXRlLCBsb2NhbGVzKTsKKyAg
ICAvLyA0LiBSZXR1cm5JZkFicnVwdChyZXF1ZXN0ZWRMb2NhbGVzKSwKKyAgICBpZiAoc3RhdGUt
PmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAgIC8v
IDUuIExldCBvcHRpb25zIGJlIFRvRGF0ZVRpbWVPcHRpb25zKG9wdGlvbnMsICJhbnkiLCAiZGF0
ZSIpLgorICAgIEpTT2JqZWN0KiBvcHRpb25zID0gdG9EYXRlVGltZU9wdGlvbnMoc3RhdGUsIG9y
aWdpbmFsT3B0aW9ucywgRGF0ZVRpbWVPcHRpb25SZXF1aXJlZDo6QW55LCBEYXRlVGltZU9wdGlv
bkRlZmF1bHRzOjpEYXRlKTsKKyAgICAvLyA2LiBSZXR1cm5JZkFicnVwdChvcHRpb25zKS4KKyAg
ICBpZiAoc3RhdGUtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQo
KTsKKworICAgIC8vIDcuIExldCBvcHQgYmUgYSBuZXcgUmVjb3JkLgorICAgIEhhc2hNYXA8U3Ry
aW5nLCBTdHJpbmc+IGxvY2FsZU9wdDsKKworICAgIC8vIDguIExldCBtYXRjaGVyIGJlIEdldE9w
dGlvbihvcHRpb25zLCAibG9jYWxlTWF0Y2hlciIsICJzdHJpbmciLCDCqyJsb29rdXAiLCAiYmVz
dCBmaXQiwrssICJiZXN0IGZpdCIpLgorICAgIFZNJiB2bSA9IHN0YXRlLT52bSgpOworICAgIGNv
bnN0IEhhc2hTZXQ8U3RyaW5nPiBsb2NhbGVNYXRjaGVycyh7IEFTQ0lJTGl0ZXJhbCgibG9va3Vw
IiksIEFTQ0lJTGl0ZXJhbCgiYmVzdCBmaXQiKSB9KTsKKyAgICBTdHJpbmcgbG9jYWxlTWF0Y2hl
ciA9IGludGxTdHJpbmdPcHRpb24oKnN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5s
b2NhbGVNYXRjaGVyLCBsb2NhbGVNYXRjaGVycywgImxvY2FsZU1hdGNoZXIgbXVzdCBiZSBlaXRo
ZXIgXCJsb29rdXBcIiBvciBcImJlc3QgZml0XCIiLCBBU0NJSUxpdGVyYWwoImJlc3QgZml0Iikp
OworICAgIC8vIDkuIFJldHVybklmQWJydXB0KG1hdGNoZXIpLgorICAgIGlmIChzdGF0ZS0+aGFk
RXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIC8vIDEwLiBT
ZXQgb3B0LltbbG9jYWxlTWF0Y2hlcl1dIHRvIG1hdGNoZXIuCisgICAgbG9jYWxlT3B0LnNldCh2
bS5wcm9wZXJ0eU5hbWVzLT5sb2NhbGVNYXRjaGVyLnN0cmluZygpLCBsb2NhbGVNYXRjaGVyKTsK
KworICAgIC8vIDExLiBMZXQgbG9jYWxlRGF0YSBiZSB0aGUgdmFsdWUgb2YgJURhdGVUaW1lRm9y
bWF0JS5bW2xvY2FsZURhdGFdXS4KKyAgICAvLyAxMi4gTGV0IHIgYmUgUmVzb2x2ZUxvY2FsZSgg
JURhdGVUaW1lRm9ybWF0JS5bW2F2YWlsYWJsZUxvY2FsZXNdXSwgcmVxdWVzdGVkTG9jYWxlcywg
b3B0LCAlRGF0ZVRpbWVGb3JtYXQlLltbcmVsZXZhbnRFeHRlbnNpb25LZXlzXV0sIGxvY2FsZURh
dGEpLgorICAgIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiBhdmFpbGFibGVMb2NhbGVzID0gc3RhdGUt
PmxleGljYWxHbG9iYWxPYmplY3QoKS0+aW50bERhdGVUaW1lRm9ybWF0QXZhaWxhYmxlTG9jYWxl
cygpOworICAgIGNvbnN0IFZlY3RvcjxTdHJpbmc+IHJlbGV2YW50RXh0ZW5zaW9uS2V5cyA9IHsg
QVNDSUlMaXRlcmFsKCJjYSIpLCBBU0NJSUxpdGVyYWwoIm51IikgfTsKKyAgICBIYXNoTWFwPFN0
cmluZywgU3RyaW5nPiByZXNvbHZlZCA9IHJlc29sdmVMb2NhbGUoYXZhaWxhYmxlTG9jYWxlcywg
cmVxdWVzdGVkTG9jYWxlcywgbG9jYWxlT3B0LCByZWxldmFudEV4dGVuc2lvbktleXMsIGxvY2Fs
ZURhdGEpOworCisgICAgLy8gMTMuIFNldCBkYXRlVGltZUZvcm1hdC5bW2xvY2FsZV1dIHRvIHRo
ZSB2YWx1ZSBvZiByLltbbG9jYWxlXV0uCisgICAgZGF0ZVRpbWVGb3JtYXQtPnNldExvY2FsZShy
ZXNvbHZlZC5nZXQodm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlLnN0cmluZygpKSk7CisgICAgLy8g
MTQuIFNldCBkYXRlVGltZUZvcm1hdC5bW2NhbGVuZGFyXV0gdG8gdGhlIHZhbHVlIG9mIHIuW1tj
YV1dLgorICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRDYWxlbmRhcihzdHJpbmdUb0NhbGVuZGFyVHlw
ZShyZXNvbHZlZC5nZXQoQVNDSUlMaXRlcmFsKCJjYSIpKSkpOworICAgIC8vIDE1LiBTZXQgZGF0
ZVRpbWVGb3JtYXQuW1tudW1iZXJpbmdTeXN0ZW1dXSB0byB0aGUgdmFsdWUgb2Ygci5bW251XV0u
CisgICAgZGF0ZVRpbWVGb3JtYXQtPnNldE51bWJlcmluZ1N5c3RlbShyZXNvbHZlZC5nZXQoQVND
SUlMaXRlcmFsKCJudSIpKSk7CisgICAgLy8gMTYuIExldCBkYXRhTG9jYWxlIGJlIHRoZSB2YWx1
ZSBvZiByLltbZGF0YUxvY2FsZV1dLgorICAgIFN0cmluZyBkYXRhTG9jYWxlID0gcmVzb2x2ZWQu
Z2V0KEFTQ0lJTGl0ZXJhbCgiZGF0YUxvY2FsZSIpKTsKKworICAgIC8vIDE3LiBMZXQgdHogYmUg
R2V0KG9wdGlvbnMsICJ0aW1lWm9uZSIpLgorICAgIEpTVmFsdWUgdHpWYWx1ZSA9IG9wdGlvbnMt
PmdldChzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+dGltZVpvbmUpOworICAgIC8vIDE4LiBSZXR1
cm5JZkFicnVwdCh0eikuCisgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAg
cmV0dXJuIGpzVW5kZWZpbmVkKCk7CisKKyAgICAvLyAxOS4gSWYgdHogaXMgbm90IHVuZGVmaW5l
ZCwgdGhlbgorICAgIFN0cmluZyB0ejsKKyAgICBpZiAoIXR6VmFsdWUuaXNVbmRlZmluZWQoKSkg
eworICAgICAgICAvLyBhLiBMZXQgdHogYmUgVG9TdHJpbmcodHopLgorICAgICAgICBTdHJpbmcg
b3JpZ2luYWxUeiA9IHR6VmFsdWUudG9XVEZTdHJpbmcoc3RhdGUpOworICAgICAgICAvLyBiLiBS
ZXR1cm5JZkFicnVwdCh0eikuCisgICAgICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisg
ICAgICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICAgICAgLy8gYy4gSWYgdGhlIHJl
c3VsdCBvZiBJc1ZhbGlkVGltZVpvbmVOYW1lKHR6KSBpcyBmYWxzZSwgdGhlbiBpLiBUaHJvdyBh
IFJhbmdlRXJyb3IgZXhjZXB0aW9uLgorICAgICAgICAvLyBkLiBMZXQgdHogYmUgQ2Fub25pY2Fs
aXplVGltZVpvbmVOYW1lKHR6KS4KKyAgICAgICAgdHogPSBjYW5vbmljYWxpemVUaW1lWm9uZU5h
bWUob3JpZ2luYWxUeik7CisgICAgICAgIGlmICh0ei5pc051bGwoKSkKKyAgICAgICAgICAgIHJl
dHVybiB0aHJvd1JhbmdlRXJyb3Ioc3RhdGUsIFN0cmluZzo6Zm9ybWF0KCJpbnZhbGlkIHRpbWUg
em9uZTogJXMiLCBvcmlnaW5hbFR6LnV0ZjgoKS5kYXRhKCkpKTsKKyAgICB9IGVsc2UKKyAgICAv
LyAyMC4gRWxzZSwKKyAgICAgICAgLy8gYS4gTGV0IHR6IGJlIERlZmF1bHRUaW1lWm9uZSgpLgor
ICAgICAgICB0eiA9IGRlZmF1bHRUaW1lWm9uZSgpOworCisgICAgLy8gMjEuIFNldCBkYXRlVGlt
ZUZvcm1hdC5bW3RpbWVab25lXV0gdG8gdHouCisgICAgZGF0ZVRpbWVGb3JtYXQtPnNldFRpbWVa
b25lKHR6KTsKKworICAgIC8vIDIyLiBMZXQgb3B0IGJlIGEgbmV3IFJlY29yZC4KKyAgICAvLyBS
YXRoZXIgdGhhbiBidWlsZGluZyBhIHJlY29yZCwgYnVpbGQgdGhlIHNrZWxldG9uIHBhdHRlcm4u
CisgICAgU3RyaW5nQnVpbGRlciBmb3JtYXRPcHQ7CisKKyAgICAvLyAyMy4gRm9yIGVhY2ggcm93
IG9mIFRhYmxlIDMsIGV4Y2VwdCB0aGUgaGVhZGVyIHJvdywgZG86CisgICAgLy8gYS4gTGV0IHBy
b3AgYmUgdGhlIG5hbWUgZ2l2ZW4gaW4gdGhlIFByb3BlcnR5IGNvbHVtbiBvZiB0aGUgcm93Lgor
ICAgIC8vIGIuIExldCB2YWx1ZSBiZSBHZXRPcHRpb24ob3B0aW9ucywgcHJvcCwgInN0cmluZyIs
IMKrdGhlIHN0cmluZ3MgZ2l2ZW4gaW4gdGhlIFZhbHVlcyBjb2x1bW4gb2YgdGhlIHJvd8K7LCB1
bmRlZmluZWQpLgorICAgIC8vIGMuIFJldHVybklmQWJydXB0KHZhbHVlKS4KKyAgICAvLyBkLiBT
ZXQgb3B0LltbPHByb3A+XV0gdG8gdmFsdWUuCisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IG5h
cnJvd1Nob3J0TG9uZyh7IEFTQ0lJTGl0ZXJhbCgibmFycm93IiksIEFTQ0lJTGl0ZXJhbCgic2hv
cnQiKSwgQVNDSUlMaXRlcmFsKCJsb25nIikgfSk7CisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+
IHR3b0RpZ2l0TnVtZXJpYyh7IEFTQ0lJTGl0ZXJhbCgiMi1kaWdpdCIpLCBBU0NJSUxpdGVyYWwo
Im51bWVyaWMiKSB9KTsKKyAgICBjb25zdCBIYXNoU2V0PFN0cmluZz4gdHdvRGlnaXROdW1lcmlj
TmFycm93U2hvcnRMb25nKHsgQVNDSUlMaXRlcmFsKCIyLWRpZ2l0IiksIEFTQ0lJTGl0ZXJhbCgi
bnVtZXJpYyIpLCBBU0NJSUxpdGVyYWwoIm5hcnJvdyIpLCBBU0NJSUxpdGVyYWwoInNob3J0Iiks
IEFTQ0lJTGl0ZXJhbCgibG9uZyIpIH0pOworICAgIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiBzaG9y
dExvbmcoeyBBU0NJSUxpdGVyYWwoInNob3J0IiksIEFTQ0lJTGl0ZXJhbCgibG9uZyIpIH0pOwor
CisgICAgU3RyaW5nIHdlZWtkYXkgPSBpbnRsU3RyaW5nT3B0aW9uKCpzdGF0ZSwgb3B0aW9ucywg
dm0ucHJvcGVydHlOYW1lcy0+d2Vla2RheSwgbmFycm93U2hvcnRMb25nLCAid2Vla2RheSBtdXN0
IGJlIFwibmFycm93XCIsIFwic2hvcnRcIiwgb3IgXCJsb25nXCIiLCBTdHJpbmcoKSk7CisgICAg
aWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7
CisgICAgaWYgKCF3ZWVrZGF5LmlzTnVsbCgpKSB7CisgICAgICAgIGlmICh3ZWVrZGF5ID09ICJu
YXJyb3ciKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgiRUVFRUUiKTsKKyAgICAgICAg
ZWxzZSBpZiAod2Vla2RheSA9PSAic2hvcnQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVu
ZCgiRUVFIik7CisgICAgICAgIGVsc2UgaWYgKHdlZWtkYXkgPT0gImxvbmciKQorICAgICAgICAg
ICAgZm9ybWF0T3B0LmFwcGVuZCgiRUVFRSIpOworICAgIH0KKworICAgIFN0cmluZyBlcmEgPSBp
bnRsU3RyaW5nT3B0aW9uKCpzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+ZXJhLCBu
YXJyb3dTaG9ydExvbmcsICJlcmEgbXVzdCBiZSBcIm5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwi
bG9uZ1wiIiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAg
ICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIGlmICghZXJhLmlzTnVsbCgpKSB7CisgICAg
ICAgIGlmIChlcmEgPT0gIm5hcnJvdyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCJH
R0dHRyIpOworICAgICAgICBlbHNlIGlmIChlcmEgPT0gInNob3J0IikKKyAgICAgICAgICAgIGZv
cm1hdE9wdC5hcHBlbmQoIkdHRyIpOworICAgICAgICBlbHNlIGlmIChlcmEgPT0gImxvbmciKQor
ICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgiR0dHRyIpOworICAgIH0KKworICAgIFN0cmlu
ZyB5ZWFyID0gaW50bFN0cmluZ09wdGlvbigqc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFt
ZXMtPnllYXIsIHR3b0RpZ2l0TnVtZXJpYywgInllYXIgbXVzdCBiZSBcIjItZGlnaXRcIiBvciBc
Im51bWVyaWNcIiIsIFN0cmluZygpKTsKKyAgICBpZiAoc3RhdGUtPmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBpZiAoIXllYXIuaXNOdWxsKCkpIHsK
KyAgICAgICAgaWYgKHllYXIgPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFw
cGVuZCgieXkiKTsKKyAgICAgICAgZWxzZSBpZiAoeWVhciA9PSAibnVtZXJpYyIpCisgICAgICAg
ICAgICBmb3JtYXRPcHQuYXBwZW5kKCd5Jyk7CisgICAgfQorCisgICAgU3RyaW5nIG1vbnRoID0g
aW50bFN0cmluZ09wdGlvbigqc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPm1vbnRo
LCB0d29EaWdpdE51bWVyaWNOYXJyb3dTaG9ydExvbmcsICJtb250aCBtdXN0IGJlIFwiMi1kaWdp
dFwiLCBcIm51bWVyaWNcIiwgXCJuYXJyb3dcIiwgXCJzaG9ydFwiLCBvciBcImxvbmdcIiIsIFN0
cmluZygpKTsKKyAgICBpZiAoc3RhdGUtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4g
anNVbmRlZmluZWQoKTsKKyAgICBpZiAoIW1vbnRoLmlzTnVsbCgpKSB7CisgICAgICAgIGlmICht
b250aCA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCJNTSIpOwor
ICAgICAgICBlbHNlIGlmIChtb250aCA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICBmb3JtYXRP
cHQuYXBwZW5kKCdNJyk7CisgICAgICAgIGVsc2UgaWYgKG1vbnRoID09ICJuYXJyb3ciKQorICAg
ICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgiTU1NTU0iKTsKKyAgICAgICAgZWxzZSBpZiAobW9u
dGggPT0gInNob3J0IikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoIk1NTSIpOworICAg
ICAgICBlbHNlIGlmIChtb250aCA9PSAibG9uZyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBw
ZW5kKCJNTU1NIik7CisgICAgfQorCisgICAgU3RyaW5nIGRheSA9IGludGxTdHJpbmdPcHRpb24o
KnN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5kYXksIHR3b0RpZ2l0TnVtZXJpYywg
ImRheSBtdXN0IGJlIFwiMi1kaWdpdFwiIG9yIFwibnVtZXJpY1wiIiwgU3RyaW5nKCkpOworICAg
IGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgp
OworICAgIGlmICghZGF5LmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChkYXkgPT0gIjItZGlnaXQi
KQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgiZGQiKTsKKyAgICAgICAgZWxzZSBpZiAo
ZGF5ID09ICJudW1lcmljIikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoJ2QnKTsKKyAg
ICB9CisKKyAgICBTdHJpbmcgaG91ciA9IGludGxTdHJpbmdPcHRpb24oKnN0YXRlLCBvcHRpb25z
LCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyLCB0d29EaWdpdE51bWVyaWMsICJob3VyIG11c3QgYmUg
XCIyLWRpZ2l0XCIgb3IgXCJudW1lcmljXCIiLCBTdHJpbmcoKSk7CisgICAgaWYgKHN0YXRlLT5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisKKyAgICAvLyBX
ZSBuZWVkIGhvdXIxMiB0byBtYWtlIHRoZSBob3VyIHNrZWxldG9uIHBhdHRlcm4gZGVjaXNpb24s
IHNvIGRvIHRoaXMgZWFybHkuCisgICAgLy8gMzIuIExldCBocjEyIGJlIEdldE9wdGlvbihvcHRp
b25zLCAiaG91cjEyIiwgImJvb2xlYW4iLCB1bmRlZmluZWQsIHVuZGVmaW5lZCkuCisgICAgYm9v
bCBpc0hvdXIxMlVuZGVmaW5lZCA9IHRydWU7CisgICAgYm9vbCBocjEyID0gaW50bEJvb2xlYW5P
cHRpb24oKnN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyMTIsIGlzSG91cjEy
VW5kZWZpbmVkKTsKKyAgICAvLyAzMy4gUmV0dXJuSWZBYnJ1cHQoaHIxMikuCisgICAgaWYgKHN0
YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisKKyAg
ICBpZiAoIWhvdXIuaXNOdWxsKCkpIHsKKyAgICAgICAgaWYgKGlzSG91cjEyVW5kZWZpbmVkKSB7
CisgICAgICAgICAgICBpZiAoaG91ciA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICAgICAgZm9y
bWF0T3B0LmFwcGVuZCgiamoiKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGhvdXIgPT0gIm51bWVy
aWMiKQorICAgICAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoJ2onKTsKKyAgICAgICAgfSBl
bHNlIGlmIChocjEyKSB7CisgICAgICAgICAgICBpZiAoaG91ciA9PSAiMi1kaWdpdCIpCisgICAg
ICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgiaGgiKTsKKyAgICAgICAgICAgIGVsc2UgaWYg
KGhvdXIgPT0gIm51bWVyaWMiKQorICAgICAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoJ2gn
KTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGlmIChob3VyID09ICIyLWRpZ2l0IikK
KyAgICAgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCJISCIpOworICAgICAgICAgICAgZWxz
ZSBpZiAoaG91ciA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVu
ZCgnSCcpOworICAgICAgICB9CisgICAgfQorCisgICAgU3RyaW5nIG1pbnV0ZSA9IGludGxTdHJp
bmdPcHRpb24oKnN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5taW51dGUsIHR3b0Rp
Z2l0TnVtZXJpYywgIm1pbnV0ZSBtdXN0IGJlIFwiMi1kaWdpdFwiIG9yIFwibnVtZXJpY1wiIiwg
U3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVy
biBqc1VuZGVmaW5lZCgpOworICAgIGlmICghbWludXRlLmlzTnVsbCgpKSB7CisgICAgICAgIGlm
IChtaW51dGUgPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgibW0i
KTsKKyAgICAgICAgZWxzZSBpZiAobWludXRlID09ICJudW1lcmljIikKKyAgICAgICAgICAgIGZv
cm1hdE9wdC5hcHBlbmQoJ20nKTsKKyAgICB9CisKKyAgICBTdHJpbmcgc2Vjb25kID0gaW50bFN0
cmluZ09wdGlvbigqc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnNlY29uZCwgdHdv
RGlnaXROdW1lcmljLCAic2Vjb25kIG11c3QgYmUgXCIyLWRpZ2l0XCIgb3IgXCJudW1lcmljXCIi
LCBTdHJpbmcoKSk7CisgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCFzZWNvbmQuaXNOdWxsKCkpIHsKKyAgICAgICAg
aWYgKHNlY29uZCA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCJz
cyIpOworICAgICAgICBlbHNlIGlmIChzZWNvbmQgPT0gIm51bWVyaWMiKQorICAgICAgICAgICAg
Zm9ybWF0T3B0LmFwcGVuZCgncycpOworICAgIH0KKworICAgIFN0cmluZyB0aW1lWm9uZU5hbWUg
PSBpbnRsU3RyaW5nT3B0aW9uKCpzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+dGlt
ZVpvbmVOYW1lLCBzaG9ydExvbmcsICJ0aW1lWm9uZU5hbWUgbXVzdCBiZSBcInNob3J0XCIgb3Ig
XCJsb25nXCIiLCBTdHJpbmcoKSk7CisgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAg
ICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCF0aW1lWm9uZU5hbWUuaXNOdWxs
KCkpIHsKKyAgICAgICAgaWYgKHRpbWVab25lTmFtZSA9PSAic2hvcnQiKQorICAgICAgICAgICAg
Zm9ybWF0T3B0LmFwcGVuZCgneicpOworICAgICAgICBlbHNlIGlmICh0aW1lWm9uZU5hbWUgPT0g
ImxvbmciKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgienp6eiIpOworICAgIH0KKwor
ICAgIC8vIDI0LiBMZXQgZGF0YUxvY2FsZURhdGEgYmUgR2V0KGxvY2FsZURhdGEsIGRhdGFMb2Nh
bGUpLgorICAgIC8vIDI1LiBMZXQgZm9ybWF0cyBiZSBHZXQoZGF0YUxvY2FsZURhdGEsICJmb3Jt
YXRzIikuCisgICAgLy8gMjYuIExldCBtYXRjaGVyIGJlIEdldE9wdGlvbihvcHRpb25zLCAiZm9y
bWF0TWF0Y2hlciIsICJzdHJpbmciLCDCqyJiYXNpYyIsICJiZXN0IGZpdCLCuywgImJlc3QgZml0
IikuCisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IGZvcm1hdE1hdGNoZXJzKHsgQVNDSUlMaXRl
cmFsKCJiYXNpYyIpLCBBU0NJSUxpdGVyYWwoImJlc3QgZml0IikgfSk7CisgICAgaW50bFN0cmlu
Z09wdGlvbigqc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmZvcm1hdE1hdGNoZXIs
IGZvcm1hdE1hdGNoZXJzLCAiZm9ybWF0TWF0Y2hlciBtdXN0IGJlIGVpdGhlciBcImJhc2ljXCIg
b3IgXCJiZXN0IGZpdFwiIiwgQVNDSUlMaXRlcmFsKCJiZXN0IGZpdCIpKTsKKyAgICAvLyAyNy4g
UmV0dXJuSWZBYnJ1cHQobWF0Y2hlcikuCisgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkK
KyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisKKyAgICAvLyBBbHdheXMgdXNlIElDVSBk
YXRlIGZvcm1hdCBnZW5lcmF0b3IsIHJhdGhlciB0aGFuIG91ciBvd24gcGF0dGVybiBsaXN0IGFu
ZCBtYXRjaGVyLgorICAgIC8vIDI4LiBJZiBtYXRjaGVyIGlzICJiYXNpYyIsIHRoZW4KKyAgICAv
LyBhLiBMZXQgRm9ybWF0TWF0Y2hlciBiZSB0aGUgYWJzdHJhY3Qgb3BlcmF0aW9uIEJhc2ljRm9y
bWF0TWF0Y2hlci4KKyAgICAvLyAyOS4gRWxzZQorICAgIC8vIGEuIExldCBGb3JtYXRNYXRjaGVy
IGJlIHRoZSBhYnN0cmFjdCBvcGVyYXRpb24gQmVzdEZpdEZvcm1hdE1hdGNoZXIuCisgICAgLy8g
MzAuIExldCBiZXN0Rm9ybWF0IGJlIEZvcm1hdE1hdGNoZXIob3B0LCBmb3JtYXRzKS4KKyAgICAK
KyAgICBVRXJyb3JDb2RlIHN0YXR1cyhVX1pFUk9fRVJST1IpOworICAgIFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3IqIHBnID0gdWRhdHBnX29wZW4oZGF0YUxvY2FsZS51dGY4KCkuZGF0YSgpLCAm
c3RhdHVzKTsKKyAgICBpZiAoVV9GQUlMVVJFKHN0YXR1cykpCisgICAgICAgIHJldHVybiB0aHJv
d1R5cGVFcnJvcihzdGF0ZSwgdV9lcnJvck5hbWUoc3RhdHVzKSk7CisKKyAgICBTdHJpbmdWaWV3
IHNrZWxldG9uKGZvcm1hdE9wdC50b1N0cmluZygpKTsKKyAgICBzdGF0dXMgPSBVX1pFUk9fRVJS
T1I7CisgICAgaW50MzJfdCBwYXR0ZXJuTGVuZ3RoID0gdWRhdHBnX2dldEJlc3RQYXR0ZXJuKHBn
LCBza2VsZXRvbi51cGNvbnZlcnRlZENoYXJhY3RlcnMoKSwgc2tlbGV0b24ubGVuZ3RoKCksIG51
bGxwdHIsIDAsICZzdGF0dXMpOworICAgIGlmIChVX0ZBSUxVUkUoc3RhdHVzKSAmJiBzdGF0dXMg
IT0gVV9CVUZGRVJfT1ZFUkZMT1dfRVJST1IpIHsKKyAgICAgICAgdWRhdHBnX2Nsb3NlKHBnKTsK
KyAgICAgICAgcmV0dXJuIHRocm93VHlwZUVycm9yKHN0YXRlLCB1X2Vycm9yTmFtZShzdGF0dXMp
KTsKKyAgICB9CisKKyAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgVmVjdG9yPFVDaGFy
PiBwYXR0ZXJuQnVmZmVyKHBhdHRlcm5MZW5ndGgpOworICAgIHVkYXRwZ19nZXRCZXN0UGF0dGVy
bihwZywgc2tlbGV0b24udXBjb252ZXJ0ZWRDaGFyYWN0ZXJzKCksIHNrZWxldG9uLmxlbmd0aCgp
LCBwYXR0ZXJuQnVmZmVyLmRhdGEoKSwgcGF0dGVybkxlbmd0aCwgJnN0YXR1cyk7CisgICAgdWRh
dHBnX2Nsb3NlKHBnKTsKKyAgICBpZiAoVV9GQUlMVVJFKHN0YXR1cykpCisgICAgICAgIHJldHVy
biB0aHJvd1R5cGVFcnJvcihzdGF0ZSwgdV9lcnJvck5hbWUoc3RhdHVzKSk7CisKKyAgICBTdHJp
bmcgcGF0dGVybihwYXR0ZXJuQnVmZmVyLmRhdGEoKSwgcGF0dGVybkxlbmd0aCk7CisKKyAgICAv
LyAzMS4gRm9yIGVhY2ggcm93IGluIFRhYmxlIDMsIGV4Y2VwdCB0aGUgaGVhZGVyIHJvdywgZG8K
KyAgICAvLyBhLiBMZXQgcHJvcCBiZSB0aGUgbmFtZSBnaXZlbiBpbiB0aGUgUHJvcGVydHkgY29s
dW1uIG9mIHRoZSByb3cuCisgICAgLy8gYi4gTGV0IHAgYmUgR2V0KGJlc3RGb3JtYXQsIHByb3Ap
LgorICAgIC8vIGMuIElmIHAgbm90IHVuZGVmaW5lZCwgdGhlbiBpLiBTZXQgZGF0ZVRpbWVGb3Jt
YXQuW1s8cHJvcD5dXSB0byBwLgorCisgICAgLy8gMzQuIElmIGRhdGVUaW1lRm9ybWF0IGhhcyBh
biBpbnRlcm5hbCBzbG90IFtbaG91cl1dLCB0aGVuCisgICAgLy8gYS4gSWYgaHIxMiBpcyB1bmRl
ZmluZWQsIHRoZW4gaS4gTGV0IGhyMTIgYmUgR2V0KGRhdGFMb2NhbGVEYXRhLCAiaG91cjEyIiku
CisgICAgLy8gYi4gU2V0IGRhdGVUaW1lRm9ybWF0LltbaG91cjEyXV0gdG8gaHIxMi4KKyAgICAv
LyBjLiBJZiBocjEyIGlzIHRydWUsIHRoZW4KKyAgICAvLyBpLiBMZXQgaG91ck5vMCBiZSBHZXQo
ZGF0YUxvY2FsZURhdGEsICJob3VyTm8wIikuCisgICAgLy8gaWkuIFNldCBkYXRlVGltZUZvcm1h
dC5bW2hvdXJObzBdXSB0byBob3VyTm8wLgorICAgIC8vIGlpaS4gTGV0IHBhdHRlcm4gYmUgR2V0
KGJlc3RGb3JtYXQsICJwYXR0ZXJuMTIiKS4KKyAgICAvLyBkLiBFbHNlCisgICAgLy8gaS4gTGV0
IHBhdHRlcm4gYmUgR2V0KGJlc3RGb3JtYXQsICJwYXR0ZXJuIikuCisgICAgLy8gMzUuIEVsc2UK
KyAgICAvLyBhLiBMZXQgcGF0dGVybiBiZSBHZXQoYmVzdEZvcm1hdCwgInBhdHRlcm4iKS4KKyAg
ICAvLyAzNi4gU2V0IGRhdGVUaW1lRm9ybWF0LltbcGF0dGVybl1dIHRvIHBhdHRlcm4uCisgICAg
c2V0Rm9ybWF0c0Zyb21QYXR0ZXJuKGRhdGVUaW1lRm9ybWF0LCBwYXR0ZXJuKTsKKworICAgIC8v
IDM3LiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tib3VuZEZvcm1hdF1dIHRvIHVuZGVmaW5lZC4KKyAg
ICAvLyBBbHJlYWR5IHVuZGVmaW5lZC4KKworICAgIC8vIDM4LiBTZXQgZGF0ZVRpbWVGb3JtYXQu
W1tpbml0aWFsaXplZERhdGVUaW1lRm9ybWF0XV0gdG8gdHJ1ZS4KKyAgICBkYXRlVGltZUZvcm1h
dC0+c2V0SW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdCgpOworCisgICAgLy8gMzkuIFJldHVybmRh
dGVUaW1lRm9ybWF0LgorICAgIHJldHVybiBkYXRlVGltZUZvcm1hdDsKK30KKwogRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUo
RXhlY1N0YXRlKiBzdGF0ZSkKIHsKICAgICAvLyAxMi4zLjQgRGF0ZVRpbWUgRm9ybWF0IEZ1bmN0
aW9ucyAoRUNNQS00MDIgMi4wKQogICAgIC8vIDEuIExldCBkdGYgYmUgdGhlIHRoaXMgdmFsdWUu
CiAgICAgSW50bERhdGVUaW1lRm9ybWF0KiBmb3JtYXQgPSBqc0R5bmFtaWNDYXN0PEludGxEYXRl
VGltZUZvcm1hdCo+KHN0YXRlLT50aGlzVmFsdWUoKSk7CiAgICAgLy8gMi4gQXNzZXJ0OiBUeXBl
KGR0ZikgaXMgT2JqZWN0IGFuZCBkdGYgaGFzIGFuIFtbaW5pdGlhbGl6ZWREYXRlVGltZUZvcm1h
dF1dIGludGVybmFsIHNsb3Qgd2hvc2UgdmFsdWUgaXMgdHJ1ZS4KLSAgICBpZiAoIWZvcm1hdCkK
LSAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihzdGF0ZSkpOwor
ICAgIGlmICghZm9ybWF0IHx8ICFmb3JtYXQtPmluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQoKSkK
KyAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihzdGF0ZSwgQVND
SUlMaXRlcmFsKCJEYXRlVGltZUZvcm1hdCBmb3JtYXQoKSBjYWxsZWQgb24gdmFsdWUgdGhhdCdz
IG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdCIpKSk7CiAKICAg
ICBKU1ZhbHVlIGRhdGUgPSBzdGF0ZS0+YXJndW1lbnQoMCk7CiAgICAgZG91YmxlIHZhbHVlOwpA
QCAtMTE3LDcgKzgzMiw3IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVU
aW1lRm9ybWF0RnVuY0Zvcm1hdERhdGVUaW1lKEV4ZWNTdGF0ZSogc3RhCiAKICAgICAvLyAxLiBJ
ZiB4IGlzIG5vdCBhIGZpbml0ZSBOdW1iZXIsIHRoZW4gdGhyb3cgYSBSYW5nZUVycm9yIGV4Y2Vw
dGlvbi4KICAgICBpZiAoIXN0ZDo6aXNmaW5pdGUodmFsdWUpKQotICAgICAgICByZXR1cm4gSlNW
YWx1ZTo6ZW5jb2RlKHRocm93UmFuZ2VFcnJvcihzdGF0ZSwgQVNDSUlMaXRlcmFsKCJkYXRlIHZh
bHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQuZm9ybWF0KCkiKSkpOworICAgICAg
ICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93UmFuZ2VFcnJvcihzdGF0ZSwgQVNDSUlMaXRl
cmFsKCJkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQgZm9ybWF0KCki
KSkpOwogCiAgICAgLy8gRklYTUU6IGltcGxlbWVudCAyIC0gOQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oCmluZGV4IDdkYWVkMTM4
ZmIwOGRjZmEzYmU2N2QzN2M4M2E0N2RiNGFhYmNiZDcuLjk2NjcwYmY4OTAwMzhhZGZhMGRlMGZh
NjVjYjVmMWNkNjRiYmU2OTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oCkBAIC0zOSw2ICszOSwzNyBAQCBjbGFzcyBJbnRsRGF0
ZVRpbWVGb3JtYXQgOiBwdWJsaWMgSlNEZXN0cnVjdGlibGVPYmplY3QgewogcHVibGljOgogICAg
IHR5cGVkZWYgSlNEZXN0cnVjdGlibGVPYmplY3QgQmFzZTsKIAorICAgIGVudW0gY2xhc3MgQ2Fs
ZW5kYXJUeXBlIHsKKyAgICAgICAgQnVkZGhpc3QsCisgICAgICAgIENoaW5lc2UsCisgICAgICAg
IENvcHRpYywKKyAgICAgICAgRGFuZ2ksCisgICAgICAgIEV0aGlvYWEsCisgICAgICAgIEV0aGlv
cGljLAorICAgICAgICBHcmVnb3J5LAorICAgICAgICBIZWJyZXcsCisgICAgICAgIEluZGlhbiwK
KyAgICAgICAgSXNsYW1pYywKKyAgICAgICAgSXNsYW1pY1VtYWxxdXJhLAorICAgICAgICBJc2xh
bWljVGJsYSwKKyAgICAgICAgSXNsYW1pY0NpdmlsLAorICAgICAgICBJc2xhbWljUmdzYSwKKyAg
ICAgICAgSXNvODYwMSwKKyAgICAgICAgSmFwYW5lc2UsCisgICAgICAgIFBlcnNpYW4sCisgICAg
ICAgIFJvYworICAgIH07CisKKyAgICBlbnVtIGNsYXNzIFdlZWtkYXlTdHlsZSB7IE5vbmUsIE5h
cnJvdywgU2hvcnQsIExvbmcgfTsKKyAgICBlbnVtIGNsYXNzIEVyYVN0eWxlIHsgTm9uZSwgTmFy
cm93LCBTaG9ydCwgTG9uZyB9OworICAgIGVudW0gY2xhc3MgWWVhclN0eWxlIHsgTm9uZSwgVHdv
RGlnaXQsIE51bWVyaWMgfTsKKyAgICBlbnVtIGNsYXNzIE1vbnRoU3R5bGUgeyBOb25lLCBUd29E
aWdpdCwgTnVtZXJpYywgTmFycm93LCBTaG9ydCwgTG9uZyB9OworICAgIGVudW0gY2xhc3MgRGF5
U3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJpYyB9OworICAgIGVudW0gY2xhc3MgSG91clN0
eWxlIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMgfTsKKyAgICBlbnVtIGNsYXNzIE1pbnV0ZVN0
eWxlIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMgfTsKKyAgICBlbnVtIGNsYXNzIFNlY29uZFN0
eWxlIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMgfTsKKyAgICBlbnVtIGNsYXNzIFRpbWVab25l
TmFtZVN0eWxlIHsgTm9uZSwgU2hvcnQsIExvbmcgfTsKKwogICAgIHN0YXRpYyBJbnRsRGF0ZVRp
bWVGb3JtYXQqIGNyZWF0ZShWTSYsIEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yKik7CiAg
ICAgc3RhdGljIFN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKFZNJiwgSlNHbG9iYWxPYmplY3Qq
LCBKU1ZhbHVlKTsKIApAQCAtNDYsNiArNzcsNDAgQEAgcHVibGljOgogCiAgICAgSlNCb3VuZEZ1
bmN0aW9uKiBib3VuZEZvcm1hdCgpIGNvbnN0IHsgcmV0dXJuIG1fYm91bmRGb3JtYXQuZ2V0KCk7
IH0KICAgICB2b2lkIHNldEJvdW5kRm9ybWF0KFZNJiwgSlNCb3VuZEZ1bmN0aW9uKik7CisgICAg
CisgICAgYm9vbCBpbml0aWFsaXplZEludGxPYmplY3QoKSBjb25zdCB7IHJldHVybiBtX2luaXRp
YWxpemVkSW50bE9iamVjdDsgfQorICAgIHZvaWQgc2V0SW5pdGlhbGl6ZWRJbnRsT2JqZWN0KCkg
eyBtX2luaXRpYWxpemVkSW50bE9iamVjdCA9IHRydWU7IH0KKyAgICBib29sIGluaXRpYWxpemVk
RGF0ZVRpbWVGb3JtYXQoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYWxpemVkRGF0ZVRpbWVGb3Jt
YXQ7IH0KKyAgICB2b2lkIHNldEluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQoKSB7IG1faW5pdGlh
bGl6ZWREYXRlVGltZUZvcm1hdCA9IHRydWU7IH0KKworICAgIFN0cmluZyBsb2NhbGUoKSBjb25z
dCB7IHJldHVybiBtX2xvY2FsZTsgfQorICAgIHZvaWQgc2V0TG9jYWxlKGNvbnN0IFN0cmluZyYg
bG9jYWxlKSB7IG1fbG9jYWxlID0gbG9jYWxlOyB9CisgICAgQ2FsZW5kYXJUeXBlIGNhbGVuZGFy
KCkgY29uc3QgeyByZXR1cm4gbV9jYWxlbmRhcjsgfQorICAgIHZvaWQgc2V0Q2FsZW5kYXIoY29u
c3QgQ2FsZW5kYXJUeXBlJiBjYWxlbmRhcikgeyBtX2NhbGVuZGFyID0gY2FsZW5kYXI7IH0KKyAg
ICBTdHJpbmcgbnVtYmVyaW5nU3lzdGVtKCkgY29uc3QgeyByZXR1cm4gbV9udW1iZXJpbmdTeXN0
ZW07IH0KKyAgICB2b2lkIHNldE51bWJlcmluZ1N5c3RlbShjb25zdCBTdHJpbmcmIG51bWJlcmlu
Z1N5c3RlbSkgeyBtX251bWJlcmluZ1N5c3RlbSA9IG51bWJlcmluZ1N5c3RlbTsgfQorICAgIFN0
cmluZyB0aW1lWm9uZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGltZVpvbmU7IH0KKyAgICB2b2lkIHNl
dFRpbWVab25lKGNvbnN0IFN0cmluZyYgdGltZVpvbmUpIHsgbV90aW1lWm9uZSA9IHRpbWVab25l
OyB9CisgICAgYm9vbCBob3VyMTIoKSBjb25zdCB7IHJldHVybiBtX2hvdXIxMjsgfQorICAgIHZv
aWQgc2V0SG91cjEyKGNvbnN0IGJvb2wmIGhvdXIxMikgeyBtX2hvdXIxMiA9IGhvdXIxMjsgfQor
ICAgIFdlZWtkYXlTdHlsZSB3ZWVrZGF5KCkgY29uc3QgeyByZXR1cm4gbV93ZWVrZGF5OyB9Cisg
ICAgdm9pZCBzZXRXZWVrZGF5KGNvbnN0IFdlZWtkYXlTdHlsZSYgd2Vla2RheSkgeyBtX3dlZWtk
YXkgPSB3ZWVrZGF5OyB9CisgICAgRXJhU3R5bGUgZXJhKCkgY29uc3QgeyByZXR1cm4gbV9lcmE7
IH0KKyAgICB2b2lkIHNldEVyYShjb25zdCBFcmFTdHlsZSYgZXJhKSB7IG1fZXJhID0gZXJhOyB9
CisgICAgWWVhclN0eWxlIHllYXIoKSBjb25zdCB7IHJldHVybiBtX3llYXI7IH0KKyAgICB2b2lk
IHNldFllYXIoY29uc3QgWWVhclN0eWxlJiB5ZWFyKSB7IG1feWVhciA9IHllYXI7IH0KKyAgICBN
b250aFN0eWxlIG1vbnRoKCkgY29uc3QgeyByZXR1cm4gbV9tb250aDsgfQorICAgIHZvaWQgc2V0
TW9udGgoY29uc3QgTW9udGhTdHlsZSYgbW9udGgpIHsgbV9tb250aCA9IG1vbnRoOyB9CisgICAg
RGF5U3R5bGUgZGF5KCkgY29uc3QgeyByZXR1cm4gbV9kYXk7IH0KKyAgICB2b2lkIHNldERheShj
b25zdCBEYXlTdHlsZSYgZGF5KSB7IG1fZGF5ID0gZGF5OyB9CisgICAgSG91clN0eWxlIGhvdXIo
KSBjb25zdCB7IHJldHVybiBtX2hvdXI7IH0KKyAgICB2b2lkIHNldEhvdXIoY29uc3QgSG91clN0
eWxlJiBob3VyKSB7IG1faG91ciA9IGhvdXI7IH0KKyAgICBNaW51dGVTdHlsZSBtaW51dGUoKSBj
b25zdCB7IHJldHVybiBtX21pbnV0ZTsgfQorICAgIHZvaWQgc2V0TWludXRlKGNvbnN0IE1pbnV0
ZVN0eWxlJiBtaW51dGUpIHsgbV9taW51dGUgPSBtaW51dGU7IH0KKyAgICBTZWNvbmRTdHlsZSBz
ZWNvbmQoKSBjb25zdCB7IHJldHVybiBtX3NlY29uZDsgfQorICAgIHZvaWQgc2V0U2Vjb25kKGNv
bnN0IFNlY29uZFN0eWxlJiBzZWNvbmQpIHsgbV9zZWNvbmQgPSBzZWNvbmQ7IH0KKyAgICBUaW1l
Wm9uZU5hbWVTdHlsZSB0aW1lWm9uZU5hbWUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVab25lTmFt
ZTsgfQorICAgIHZvaWQgc2V0VGltZVpvbmVOYW1lKGNvbnN0IFRpbWVab25lTmFtZVN0eWxlJiB0
aW1lWm9uZU5hbWUpIHsgbV90aW1lWm9uZU5hbWUgPSB0aW1lWm9uZU5hbWU7IH0KIAogcHJvdGVj
dGVkOgogICAgIEludGxEYXRlVGltZUZvcm1hdChWTSYsIFN0cnVjdHVyZSopOwpAQCAtNTQsOCAr
MTE5LDI5IEBAIHByb3RlY3RlZDoKICAgICBzdGF0aWMgdm9pZCB2aXNpdENoaWxkcmVuKEpTQ2Vs
bCosIFNsb3RWaXNpdG9yJik7CiAKICAgICBXcml0ZUJhcnJpZXI8SlNCb3VuZEZ1bmN0aW9uPiBt
X2JvdW5kRm9ybWF0OworCitwcml2YXRlOgorICAgIGJvb2wgbV9pbml0aWFsaXplZEludGxPYmpl
Y3QgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pbml0aWFsaXplZERhdGVUaW1lRm9ybWF0IHsgZmFs
c2UgfTsKKworICAgIFN0cmluZyBtX2xvY2FsZSB7IEFTQ0lJTGl0ZXJhbCgiZW4iKSB9OworICAg
IENhbGVuZGFyVHlwZSBtX2NhbGVuZGFyIHsgQ2FsZW5kYXJUeXBlOjpHcmVnb3J5IH07CisgICAg
U3RyaW5nIG1fbnVtYmVyaW5nU3lzdGVtIHsgQVNDSUlMaXRlcmFsKCJsYXRuIikgfTsKKyAgICBT
dHJpbmcgbV90aW1lWm9uZSB7IEFTQ0lJTGl0ZXJhbCgiVVRDIikgfTsKKyAgICBib29sIG1faG91
cjEyIHsgdHJ1ZSB9OworICAgIFdlZWtkYXlTdHlsZSBtX3dlZWtkYXkgeyBXZWVrZGF5U3R5bGU6
Ok5vbmUgfTsKKyAgICBFcmFTdHlsZSBtX2VyYSB7IEVyYVN0eWxlOjpOb25lIH07CisgICAgWWVh
clN0eWxlIG1feWVhciB7IFllYXJTdHlsZTo6Tm9uZSB9OworICAgIE1vbnRoU3R5bGUgbV9tb250
aCB7IE1vbnRoU3R5bGU6Ok5vbmUgfTsKKyAgICBEYXlTdHlsZSBtX2RheSB7IERheVN0eWxlOjpO
b25lIH07CisgICAgSG91clN0eWxlIG1faG91ciB7IEhvdXJTdHlsZTo6Tm9uZSB9OworICAgIE1p
bnV0ZVN0eWxlIG1fbWludXRlIHsgTWludXRlU3R5bGU6Ok5vbmUgfTsKKyAgICBTZWNvbmRTdHls
ZSBtX3NlY29uZCB7IFNlY29uZFN0eWxlOjpOb25lIH07CisgICAgVGltZVpvbmVOYW1lU3R5bGUg
bV90aW1lWm9uZU5hbWUgeyBUaW1lWm9uZU5hbWVTdHlsZTo6Tm9uZSB9OwogfTsKLSAgICAKKwor
U3RyaW5nIGRlZmF1bHRUaW1lWm9uZSgpOworSlNWYWx1ZSBpbml0aWFsaXplRGF0ZVRpbWVGb3Jt
YXQoRXhlY1N0YXRlKiwgSW50bERhdGVUaW1lRm9ybWF0KiwgSlNWYWx1ZSBsb2NhbGVzLCBKU1Zh
bHVlIG9wdGlvbnMpOwogRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVG
b3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUoRXhlY1N0YXRlKik7CiAKIH0gLy8gbmFtZXNwYWNlIEpT
QwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1l
Rm9ybWF0Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCmluZGV4IDFlODlmYWFhYjdlYjg4YzdmODY0
ZTBmNTNmMjU1Y2I4YTJjNWVlY2MuLmFkODE3MTIxMDVlZWY5ZGM2MTBmY2RjM2YzM2NlYzc5NDNl
Zjc4OWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRl
VGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKQEAgLTEwNCw5ICsxMDQsOSBA
QCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RJbnRsRGF0ZVRp
bWVGb3JtYXQoRXhlY1N0YXRlKiBzdGF0ZQogICAgIEFTU0VSVChkYXRlVGltZUZvcm1hdCk7CiAK
ICAgICAvLyA0LiBSZXR1cm4gSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KGRhdGVUaW1lRm9ybWF0
LCBsb2NhbGVzLCBvcHRpb25zKS4KLSAgICAvLyBGSVhNRTogcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZShJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoZGF0ZVRpbWVGb3JtYXQsIGxvY2FsZXMsIG9wdGlv
bnMpKTsKLQotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoZGF0ZVRpbWVGb3JtYXQpOworICAg
IEpTVmFsdWUgbG9jYWxlcyA9IHN0YXRlLT5hcmd1bWVudCgwKTsKKyAgICBKU1ZhbHVlIG9wdGlv
bnMgPSBzdGF0ZS0+YXJndW1lbnQoMSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShpbml0
aWFsaXplRGF0ZVRpbWVGb3JtYXQoc3RhdGUsIGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRp
b25zKSk7CiB9CiAKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGxJbnRs
RGF0ZVRpbWVGb3JtYXQoRXhlY1N0YXRlKiBzdGF0ZSkKQEAgLTEyMyw5ICsxMjMsOSBAQCBzdGF0
aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxsSW50bERhdGVUaW1lRm9ybWF0KEV4
ZWNTdGF0ZSogc3RhdGUpCiAgICAgQVNTRVJUKGRhdGVUaW1lRm9ybWF0KTsKIAogICAgIC8vIDQu
IFJldHVybiBJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoZGF0ZVRpbWVGb3JtYXQsIGxvY2FsZXMs
IG9wdGlvbnMpLgotICAgIC8vIEZJWE1FOiByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKEluaXRpYWxp
emVEYXRlVGltZUZvcm1hdChkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykpOwotCi0g
ICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShkYXRlVGltZUZvcm1hdCk7CisgICAgSlNWYWx1ZSBs
b2NhbGVzID0gc3RhdGUtPmFyZ3VtZW50KDApOworICAgIEpTVmFsdWUgb3B0aW9ucyA9IHN0YXRl
LT5hcmd1bWVudCgxKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGluaXRpYWxpemVEYXRl
VGltZUZvcm1hdChzdGF0ZSwgZGF0ZVRpbWVGb3JtYXQsIGxvY2FsZXMsIG9wdGlvbnMpKTsKIH0K
IAogQ29uc3RydWN0VHlwZSBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3Ry
dWN0RGF0YShKU0NlbGwqLCBDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQpAQCAtMTYxLDcg
KzE2MSw3IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVUaW1lRm9ybWF0
Q29uc3RydWN0b3JGdW5jU3VwcG9ydGVkTG9jYWxlc09mCiAgICAgLy8gMy4gUmV0dXJuIFN1cHBv
cnRlZExvY2FsZXMoYXZhaWxhYmxlTG9jYWxlcywgcmVxdWVzdGVkTG9jYWxlcywgb3B0aW9ucyku
CiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShzdXBwb3J0ZWRMb2NhbGVzKCpzdGF0ZSwgYXZh
aWxhYmxlTG9jYWxlcywgcmVxdWVzdGVkTG9jYWxlcywgc3RhdGUtPmFyZ3VtZW50KDEpKSk7CiB9
Ci0gICAgCisKIHZvaWQgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3I6OnZpc2l0Q2hpbGRy
ZW4oSlNDZWxsKiBjZWxsLCBTbG90VmlzaXRvciYgdmlzaXRvcikKIHsKICAgICBJbnRsRGF0ZVRp
bWVGb3JtYXRDb25zdHJ1Y3RvciogdGhpc09iamVjdCA9IGpzQ2FzdDxJbnRsRGF0ZVRpbWVGb3Jt
YXRDb25zdHJ1Y3Rvcio+KGNlbGwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKaW5kZXggZDVl
NTI1OTgyNDgwYjFlZDQ5MWU2YjdiOGZiMTJiYjhhZjFhZWU3ZC4uYWU4Nzg3YzUzNjU3YjQ1ZTYz
YmMyMzRjNzM1YzM3MTAyMjg5NWVhZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCkBAIC0z
MCw2ICszMCw3IEBACiAKICNpbmNsdWRlICJFcnJvci5oIgogI2luY2x1ZGUgIkludGxEYXRlVGlt
ZUZvcm1hdC5oIgorI2luY2x1ZGUgIkludGxPYmplY3QuaCIKICNpbmNsdWRlICJKU0JvdW5kRnVu
Y3Rpb24uaCIKICNpbmNsdWRlICJKU0NKU1ZhbHVlSW5saW5lcy5oIgogI2luY2x1ZGUgIkpTQ2Vs
bElubGluZXMuaCIKQEAgLTM5LDggKzQwLDYgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLVNUQVRJ
Q19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShJbnRsRGF0ZVRpbWVGb3JtYXRQcm90
b3R5cGUpOwotCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0YXRlKik7CiBzdGF0aWMgRW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jUmVz
b2x2ZWRPcHRpb25zKEV4ZWNTdGF0ZSopOwogCkBAIC03OSw2ICs3OCwxNSBAQCBJbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGU6OkludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZShWTSYgdm0sIFN0
cnVjdHVyZSogc3RydQogdm9pZCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSwgU3RydWN0dXJlKikKIHsKICAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbih2
bSk7CisKKyAgICAvLyBUaGUgSW50bC5EYXRlVGltZUZvcm1hdCBwcm90b3R5cGUgb2JqZWN0IGlz
IGl0c2VsZiBhbiAlRGF0ZVRpbWVGb3JtYXQlIGluc3RhbmNlLCB3aG9zZSBpbnRlcm5hbCBzbG90
cyBhcmUgc2V0IGFzIGlmIGl0IGhhZCBiZWVuIGNvbnN0cnVjdGVkIGJ5IHRoZSBleHByZXNzaW9u
IENvbnN0cnVjdCglRGF0ZVRpbWVGb3JtYXQlKS4KKyAgICBzZXRJbml0aWFsaXplZEludGxPYmpl
Y3QoKTsKKyAgICBzZXRMb2NhbGUoZGVmYXVsdExvY2FsZSgpKTsKKyAgICBzZXRUaW1lWm9uZShk
ZWZhdWx0VGltZVpvbmUoKSk7CisgICAgc2V0WWVhcihZZWFyU3R5bGU6Ok51bWVyaWMpOworICAg
IHNldE1vbnRoKE1vbnRoU3R5bGU6Ok51bWVyaWMpOworICAgIHNldERheShEYXlTdHlsZTo6TnVt
ZXJpYyk7CisgICAgc2V0SW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdCgpOwogfQogCiBib29sIElu
dGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBv
YmplY3QsIEV4ZWNTdGF0ZSogc3RhdGUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3Bl
cnR5U2xvdCYgc2xvdCkKQEAgLTg2LDE1ICs5NCwxOTUgQEAgYm9vbCBJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3Rh
dGUKICAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEpTT2JqZWN0PihzdGF0ZSwgZGF0
ZVRpbWVGb3JtYXRQcm90b3R5cGVUYWJsZSwganNDYXN0PEludGxEYXRlVGltZUZvcm1hdFByb3Rv
dHlwZSo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKK3N0YXRpYyBTdHJpbmcg
Y2FsZW5kYXJUeXBlVG9TdHJpbmcoY29uc3QgSW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRhclR5
cGUgdHlwZSkKK3sKKyAgICBzd2l0Y2ggKHR5cGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZv
cm1hdDo6Q2FsZW5kYXJUeXBlOjpCdWRkaGlzdDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJh
bCgiYnVkZGhpc3QiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBl
OjpDaGluZXNlOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJjaGluZXNlIik7CisgICAg
Y2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6Q29wdGljOgorICAgICAgICBy
ZXR1cm4gQVNDSUlMaXRlcmFsKCJjb3B0aWMiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1h
dDo6Q2FsZW5kYXJUeXBlOjpEYW5naToKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiZGFu
Z2kiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJUeXBlOjpFdGhpb2Fh
OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJldGhpb2FhIik7CisgICAgY2FzZSBJbnRs
RGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6RXRoaW9waWM6CisgICAgICAgIHJldHVybiBB
U0NJSUxpdGVyYWwoImV0aGlvcGljIik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNh
bGVuZGFyVHlwZTo6R3JlZ29yeToKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiZ3JlZ29y
eSIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRhclR5cGU6OkhlYnJldzoK
KyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiaGVicmV3Iik7CisgICAgY2FzZSBJbnRsRGF0
ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6SW5kaWFuOgorICAgICAgICByZXR1cm4gQVNDSUlM
aXRlcmFsKCJpbmRpYW4iKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5kYXJU
eXBlOjpJc2xhbWljOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJpc2xhbWljIik7Cisg
ICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6SXNsYW1pY1VtYWxxdXJh
OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJpc2xhbWljLXVtYWxxdXJhIik7CisgICAg
Y2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6SXNsYW1pY1RibGE6CisgICAg
ICAgIHJldHVybiBBU0NJSUxpdGVyYWwoImlzbGFtaWMtdGJsYSIpOworICAgIGNhc2UgSW50bERh
dGVUaW1lRm9ybWF0OjpDYWxlbmRhclR5cGU6OklzbGFtaWNDaXZpbDoKKyAgICAgICAgcmV0dXJu
IEFTQ0lJTGl0ZXJhbCgiaXNsYW1pYy1jaXZpbCIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9y
bWF0OjpDYWxlbmRhclR5cGU6OklzbGFtaWNSZ3NhOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRl
cmFsKCJpc2xhbWljLXJnc2EiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6Q2FsZW5k
YXJUeXBlOjpJc284NjAxOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJpc284NjAxIik7
CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6SmFwYW5lc2U6Cisg
ICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoImphcGFuZXNlIik7CisgICAgY2FzZSBJbnRsRGF0
ZVRpbWVGb3JtYXQ6OkNhbGVuZGFyVHlwZTo6UGVyc2lhbjoKKyAgICAgICAgcmV0dXJuIEFTQ0lJ
TGl0ZXJhbCgicGVyc2lhbiIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpDYWxlbmRh
clR5cGU6OlJvYzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgicm9jIik7CisgICAgfQor
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3Rh
dGljIFN0cmluZyB3ZWVrZGF5U3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6
OldlZWtkYXlTdHlsZSBzdHlsZSkKK3sKKyAgICBzd2l0Y2ggKHN0eWxlKSB7CisgICAgY2FzZSBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0
cmluZygpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpXZWVrZGF5U3R5bGU6Ok5hcnJv
dzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibmFycm93Iik7CisgICAgY2FzZSBJbnRs
RGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHlsZTo6U2hvcnQ6CisgICAgICAgIHJldHVybiBBU0NJ
SUxpdGVyYWwoInNob3J0Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlT
dHlsZTo6TG9uZzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibG9uZyIpOworICAgIH0K
KyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gU3RyaW5nKCk7Cit9CisKK3N0
YXRpYyBTdHJpbmcgZXJhU3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkVy
YVN0eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRl
VGltZUZvcm1hdDo6RXJhU3R5bGU6Ok5vbmU6CisgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAg
ICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6Ok5hcnJvdzoKKyAgICAgICAgcmV0
dXJuIEFTQ0lJTGl0ZXJhbCgibmFycm93Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6
OkVyYVN0eWxlOjpTaG9ydDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgic2hvcnQiKTsK
KyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6Okxvbmc6CisgICAgICAgIHJl
dHVybiBBU0NJSUxpdGVyYWwoImxvbmciKTsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVE
KCk7CisgICAgcmV0dXJuIFN0cmluZygpOworfQorCitzdGF0aWMgU3RyaW5nIHllYXJTdHlsZVRv
U3RyaW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlIHN0eWxlKQoreworICAg
IHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxl
OjpOb25lOgorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVG
b3JtYXQ6OlllYXJTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwo
IjItZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlOjpOdW1l
cmljOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJudW1lcmljIik7CisgICAgfQorICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3RhdGlj
IFN0cmluZyBtb250aFN0eWxlVG9TdHJpbmcoY29uc3QgSW50bERhdGVUaW1lRm9ybWF0OjpNb250
aFN0eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRl
VGltZUZvcm1hdDo6TW9udGhTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOwor
ICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0eWxlOjpUd29EaWdpdDoKKyAgICAg
ICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiMi1kaWdpdCIpOworICAgIGNhc2UgSW50bERhdGVUaW1l
Rm9ybWF0OjpNb250aFN0eWxlOjpOdW1lcmljOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFs
KCJudW1lcmljIik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6Ok5h
cnJvdzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibmFycm93Iik7CisgICAgY2FzZSBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6OlNob3J0OgorICAgICAgICByZXR1cm4gQVND
SUlMaXRlcmFsKCJzaG9ydCIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0
eWxlOjpMb25nOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJsb25nIik7CisgICAgfQor
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3Rh
dGljIFN0cmluZyBkYXlTdHlsZVRvU3RyaW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6RGF5
U3R5bGUgc3R5bGUpCit7CisgICAgc3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERhdGVU
aW1lRm9ybWF0OjpEYXlTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAg
IGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpEYXlTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJl
dHVybiBBU0NJSUxpdGVyYWwoIjItZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1h
dDo6RGF5U3R5bGU6Ok51bWVyaWM6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIm51bWVy
aWMiKTsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIFN0cmlu
ZygpOworfQorCitzdGF0aWMgU3RyaW5nIGhvdXJTdHlsZVRvU3RyaW5nKGNvbnN0IEludGxEYXRl
VGltZUZvcm1hdDo6SG91clN0eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAg
ICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlOjpOb25lOgorICAgICAgICByZXR1
cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkhvdXJTdHlsZTo6VHdv
RGlnaXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIjItZGlnaXQiKTsKKyAgICBjYXNl
IEludGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlOjpOdW1lcmljOgorICAgICAgICByZXR1cm4g
QVNDSUlMaXRlcmFsKCJudW1lcmljIik7CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3RhdGljIFN0cmluZyBtaW51dGVTdHlsZVRv
U3RyaW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6TWludXRlU3R5bGUgc3R5bGUpCit7Cisg
ICAgc3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpNaW51dGVT
dHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgIGNhc2UgSW50bERhdGVU
aW1lRm9ybWF0OjpNaW51dGVTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxp
dGVyYWwoIjItZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6TWludXRlU3R5
bGU6Ok51bWVyaWM6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIm51bWVyaWMiKTsKKyAg
ICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIFN0cmluZygpOworfQor
CitzdGF0aWMgU3RyaW5nIHNlY29uZFN0eWxlVG9TdHJpbmcoY29uc3QgSW50bERhdGVUaW1lRm9y
bWF0OjpTZWNvbmRTdHlsZSBzdHlsZSkKK3sKKyAgICBzd2l0Y2ggKHN0eWxlKSB7CisgICAgY2Fz
ZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpOb25lOgorICAgICAgICByZXR1cm4g
U3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpUd29E
aWdpdDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiMi1kaWdpdCIpOworICAgIGNhc2Ug
SW50bERhdGVUaW1lRm9ybWF0OjpTZWNvbmRTdHlsZTo6TnVtZXJpYzoKKyAgICAgICAgcmV0dXJu
IEFTQ0lJTGl0ZXJhbCgibnVtZXJpYyIpOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKKyAgICByZXR1cm4gU3RyaW5nKCk7Cit9CisKK3N0YXRpYyBTdHJpbmcgdGltZVpvbmVOYW1l
U3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlRpbWVab25lTmFtZVN0eWxl
IHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZv
cm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6Ok5vbmU6CisgICAgICAgIHJldHVybiBTdHJpbmcoKTsK
KyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6OlNob3J0Ogor
ICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJzaG9ydCIpOworICAgIGNhc2UgSW50bERhdGVU
aW1lRm9ybWF0OjpUaW1lWm9uZU5hbWVTdHlsZTo6TG9uZzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJ
TGl0ZXJhbCgibG9uZyIpOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICBy
ZXR1cm4gU3RyaW5nKCk7Cit9CisKIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERh
dGVUaW1lRm9ybWF0UHJvdG90eXBlR2V0dGVyRm9ybWF0KEV4ZWNTdGF0ZSogc3RhdGUpCiB7CiAg
ICAgLy8gMTIuMy4zIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCAoRUNNQS00
MDIgMi4wKQogICAgIC8vIDEuIExldCBkdGYgYmUgdGhpcyBEYXRlVGltZUZvcm1hdCBvYmplY3Qu
CiAgICAgSW50bERhdGVUaW1lRm9ybWF0KiBkdGYgPSBqc0R5bmFtaWNDYXN0PEludGxEYXRlVGlt
ZUZvcm1hdCo+KHN0YXRlLT50aGlzVmFsdWUoKSk7CiAgICAgLy8gMi4gUmV0dXJuSWZBYnJ1cHQo
ZHRmKS4KLSAgICBpZiAoIWR0ZikKKyAgICBpZiAoIWR0ZiB8fCAhZHRmLT5pbml0aWFsaXplZERh
dGVUaW1lRm9ybWF0KCkpCiAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBl
RXJyb3Ioc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
Zm9ybWF0IGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBh
cyBhIERhdGVUaW1lRm9ybWF0IikpKTsKLSAgICAKKwogICAgIEpTQm91bmRGdW5jdGlvbiogYm91
bmRGb3JtYXQgPSBkdGYtPmJvdW5kRm9ybWF0KCk7CiAgICAgLy8gMy4gSWYgdGhlIFtbYm91bmRG
b3JtYXRdXSBpbnRlcm5hbCBzbG90IG9mIHRoaXMgRGF0ZVRpbWVGb3JtYXQgb2JqZWN0IGlzIHVu
ZGVmaW5lZCwKICAgICBpZiAoIWJvdW5kRm9ybWF0KSB7CkBAIC0xMDYsNyArMjk0LDcgQEAgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0
ZXJGb3JtYXQoRXhlY1N0YXRlKgogICAgICAgICBKU0FycmF5KiBib3VuZEFyZ3MgPSBKU0FycmF5
Ojp0cnlDcmVhdGVVbmluaXRpYWxpemVkKHZtLCBnbG9iYWxPYmplY3QtPmFycmF5U3RydWN0dXJl
Rm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbihBcnJheVdpdGhVbmRlY2lkZWQpLCAwKTsK
ICAgICAgICAgaWYgKCFib3VuZEFyZ3MpCiAgICAgICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5j
b2RlKHRocm93T3V0T2ZNZW1vcnlFcnJvcihzdGF0ZSkpOwotICAgICAgICAKKwogICAgICAgICAv
LyBjLiBMZXQgYmYgYmUgQm91bmRGdW5jdGlvbkNyZWF0ZShGLCDCq3RoaXMgdmFsdWXCuykuCiAg
ICAgICAgIGJvdW5kRm9ybWF0ID0gSlNCb3VuZEZ1bmN0aW9uOjpjcmVhdGUodm0sIGdsb2JhbE9i
amVjdCwgdGFyZ2V0T2JqZWN0LCBkdGYsIGJvdW5kQXJncywgMSwgQVNDSUlMaXRlcmFsKCJmb3Jt
YXQiKSk7CiAgICAgICAgIC8vIGQuIFNldCBkdGYuW1tib3VuZEZvcm1hdF1dIHRvIGJmLgpAQCAt
MTIwLDE1ICszMDgsNDggQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKEV4ZWMKIHsKICAgICAvLyAxMi4z
LjUgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgKEVDTUEt
NDAyIDIuMCkKICAgICBJbnRsRGF0ZVRpbWVGb3JtYXQqIGR0ZiA9IGpzRHluYW1pY0Nhc3Q8SW50
bERhdGVUaW1lRm9ybWF0Kj4oc3RhdGUtPnRoaXNWYWx1ZSgpKTsKLSAgICBpZiAoIWR0ZikKKyAg
ICBpZiAoIWR0ZiB8fCAhZHRmLT5pbml0aWFsaXplZERhdGVUaW1lRm9ybWF0KCkpCiAgICAgICAg
IHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3Ioc3RhdGUsIEFTQ0lJTGl0ZXJh
bCgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNhbGxlZCBv
biB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1lRm9y
bWF0IikpKTsKIAogICAgIC8vIFRoZSBmdW5jdGlvbiByZXR1cm5zIGEgbmV3IG9iamVjdCB3aG9z
ZSBwcm9wZXJ0aWVzIGFuZCBhdHRyaWJ1dGVzIGFyZSBzZXQgYXMgaWYgY29uc3RydWN0ZWQgYnkg
YW4gb2JqZWN0IGxpdGVyYWwgYXNzaWduaW5nIHRvIGVhY2ggb2YgdGhlIGZvbGxvd2luZyBwcm9w
ZXJ0aWVzIHRoZSB2YWx1ZSBvZiB0aGUgY29ycmVzcG9uZGluZyBpbnRlcm5hbCBzbG90IG9mIHRo
aXMgRGF0ZVRpbWVGb3JtYXQgb2JqZWN0IChzZWUgMTIuNCk6IGxvY2FsZSwgY2FsZW5kYXIsIG51
bWJlcmluZ1N5c3RlbSwgdGltZVpvbmUsIGhvdXIxMiwgd2Vla2RheSwgZXJhLCB5ZWFyLCBtb250
aCwgZGF5LCBob3VyLCBtaW51dGUsIHNlY29uZCwgYW5kIHRpbWVab25lTmFtZS4gUHJvcGVydGll
cyB3aG9zZSBjb3JyZXNwb25kaW5nIGludGVybmFsIHNsb3RzIGFyZSBub3QgcHJlc2VudCBhcmUg
bm90IGFzc2lnbmVkLgogICAgIC8vIE5vdGU6IEluIHRoaXMgdmVyc2lvbiBvZiB0aGUgRUNNQVNj
cmlwdCAyMDE1IEludGVybmF0aW9uYWxpemF0aW9uIEFQSSwgdGhlIHRpbWVab25lIHByb3BlcnR5
IHdpbGwgYmUgdGhlIG5hbWUgb2YgdGhlIGRlZmF1bHQgdGltZSB6b25lIGlmIG5vIHRpbWVab25l
IHByb3BlcnR5IHdhcyBwcm92aWRlZCBpbiB0aGUgb3B0aW9ucyBvYmplY3QgcHJvdmlkZWQgdG8g
dGhlIEludGwuRGF0ZVRpbWVGb3JtYXQgY29uc3RydWN0b3IuIFRoZSBwcmV2aW91cyB2ZXJzaW9u
IGxlZnQgdGhlIHRpbWVab25lIHByb3BlcnR5IHVuZGVmaW5lZCBpbiB0aGlzIGNhc2UuCiAKKyAg
ICBWTSYgdm0gPSBzdGF0ZS0+dm0oKTsKKwogICAgIEpTT2JqZWN0KiBvcHRpb25zID0gY29uc3Ry
dWN0RW1wdHlPYmplY3Qoc3RhdGUpOworICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJv
cGVydHlOYW1lcy0+bG9jYWxlLCBqc1N0cmluZyhzdGF0ZSwgZHRmLT5sb2NhbGUoKSkpOworICAg
IG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgSWRlbnRpZmllcjo6ZnJvbVN0cmluZygmdm0sICJjYWxl
bmRhciIpLCBqc1N0cmluZyhzdGF0ZSwgY2FsZW5kYXJUeXBlVG9TdHJpbmcoZHRmLT5jYWxlbmRh
cigpKSkpOworICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgSWRlbnRpZmllcjo6ZnJvbVN0cmlu
Zygmdm0sICJudW1iZXJpbmdTeXN0ZW0iKSwganNTdHJpbmcoc3RhdGUsIGR0Zi0+bnVtYmVyaW5n
U3lzdGVtKCkpKTsKKyAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMt
PnRpbWVab25lLCBqc1N0cmluZyhzdGF0ZSwgZHRmLT50aW1lWm9uZSgpKSk7CisKKyAgICBpZiAo
ZHRmLT53ZWVrZGF5KCkgIT0gSW50bERhdGVUaW1lRm9ybWF0OjpXZWVrZGF5U3R5bGU6Ok5vbmUp
CisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+d2Vla2Rh
eSwganNTdHJpbmcoc3RhdGUsIHdlZWtkYXlTdHlsZVRvU3RyaW5nKGR0Zi0+d2Vla2RheSgpKSkp
OworCisgICAgaWYgKGR0Zi0+ZXJhKCkgIT0gSW50bERhdGVUaW1lRm9ybWF0OjpFcmFTdHlsZTo6
Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5l
cmEsIGpzU3RyaW5nKHN0YXRlLCBlcmFTdHlsZVRvU3RyaW5nKGR0Zi0+ZXJhKCkpKSk7CisKKyAg
ICBpZiAoZHRmLT55ZWFyKCkgIT0gSW50bERhdGVUaW1lRm9ybWF0OjpZZWFyU3R5bGU6Ok5vbmUp
CisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+eWVhciwg
anNTdHJpbmcoc3RhdGUsIHllYXJTdHlsZVRvU3RyaW5nKGR0Zi0+eWVhcigpKSkpOworCisgICAg
aWYgKGR0Zi0+bW9udGgoKSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6Ok5vbmUp
CisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bW9udGgs
IGpzU3RyaW5nKHN0YXRlLCBtb250aFN0eWxlVG9TdHJpbmcoZHRmLT5tb250aCgpKSkpOworCisg
ICAgaWYgKGR0Zi0+ZGF5KCkgIT0gSW50bERhdGVUaW1lRm9ybWF0OjpEYXlTdHlsZTo6Tm9uZSkK
KyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5kYXksIGpz
U3RyaW5nKHN0YXRlLCBkYXlTdHlsZVRvU3RyaW5nKGR0Zi0+ZGF5KCkpKSk7CisKKyAgICBpZiAo
ZHRmLT5ob3VyKCkgIT0gSW50bERhdGVUaW1lRm9ybWF0OjpIb3VyU3R5bGU6Ok5vbmUpIHsKKyAg
ICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyLCBqc1N0
cmluZyhzdGF0ZSwgaG91clN0eWxlVG9TdHJpbmcoZHRmLT5ob3VyKCkpKSk7CisgICAgICAgIG9w
dGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+aG91cjEyLCBqc0Jvb2xlYW4o
ZHRmLT5ob3VyMTIoKSkpOworICAgIH0KKworICAgIGlmIChkdGYtPm1pbnV0ZSgpICE9IEludGxE
YXRlVGltZUZvcm1hdDo6TWludXRlU3R5bGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERp
cmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bWludXRlLCBqc1N0cmluZyhzdGF0ZSwgbWludXRl
U3R5bGVUb1N0cmluZyhkdGYtPm1pbnV0ZSgpKSkpOworCisgICAgaWYgKGR0Zi0+c2Vjb25kKCkg
IT0gSW50bERhdGVUaW1lRm9ybWF0OjpTZWNvbmRTdHlsZTo6Tm9uZSkKKyAgICAgICAgb3B0aW9u
cy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5zZWNvbmQsIGpzU3RyaW5nKHN0YXRl
LCBzZWNvbmRTdHlsZVRvU3RyaW5nKGR0Zi0+c2Vjb25kKCkpKSk7CiAKLSAgICAvLyBGSVhNRTog
UG9wdWxhdGUgb2JqZWN0IGZyb20gaW50ZXJuYWwgc2xvdHMuCisgICAgaWYgKGR0Zi0+dGltZVpv
bmVOYW1lKCkgIT0gSW50bERhdGVUaW1lRm9ybWF0OjpUaW1lWm9uZU5hbWVTdHlsZTo6Tm9uZSkK
KyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT50aW1lWm9u
ZU5hbWUsIGpzU3RyaW5nKHN0YXRlLCB0aW1lWm9uZU5hbWVTdHlsZVRvU3RyaW5nKGR0Zi0+dGlt
ZVpvbmVOYW1lKCkpKSk7CiAKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKG9wdGlvbnMpOwog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmNwcAppbmRleCA5
MjI2OWJkODA3ZmVjOTNiY2RkZTZmYmMwMjIyZjU4ZWM2ZTU4ZmJjLi44NjJlMWVjMWQ0NDViMWE1
NmFmZTliNjY3YTZhYjY1NjExYzZlOGYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JbnRsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9JbnRsT2JqZWN0LmNwcApAQCAtNzQ1LDYgKzc0NSw3IEBAIEhhc2hNYXA8U3RyaW5nLCBT
dHJpbmc+IHJlc29sdmVMb2NhbGUoY29uc3QgSGFzaFNldDxTdHJpbmc+JiBhdmFpbGFibGVMb2Nh
bGVzLCBjCiAgICAgICAgICAgICBzaXplX3Qga2V5UG9zID0gZXh0ZW5zaW9uU3VidGFncy5maW5k
KGtleSk7CiAgICAgICAgICAgICAvLyBpaS4gSWYga2V5UG9zICE9IC0xLCB0aGVuCiAgICAgICAg
ICAgICBpZiAoa2V5UG9zICE9IG5vdEZvdW5kKSB7CisgICAgICAgICAgICAgICAgLy8gRklYTUU6
IGh0dHBzOi8vZ2l0aHViLmNvbS90YzM5L2VjbWE0MDIvaXNzdWVzLzU5CiAgICAgICAgICAgICAg
ICAgLy8gMS4gSWYga2V5UG9zICsgMSA8IGV4dGVuc2lvblN1YnRhZ3NMZW5ndGggYW5kIHRoZSBs
ZW5ndGggb2YgdGhlIHJlc3VsdCBvZiBHZXQoZXh0ZW5zaW9uU3VidGFncywgVG9TdHJpbmcoa2V5
UG9zICsxKSkgaXMgZ3JlYXRlciB0aGFuIDIsIHRoZW4KICAgICAgICAgICAgICAgICBpZiAoa2V5
UG9zICsgMSA8IGV4dGVuc2lvblN1YnRhZ3Muc2l6ZSgpICYmIGV4dGVuc2lvblN1YnRhZ3Nba2V5
UG9zICsgMV0ubGVuZ3RoKCkgPiAyKSB7CiAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFN0cmlu
ZyYgcmVxdWVzdGVkVmFsdWUgPSBleHRlbnNpb25TdWJ0YWdzW2tleVBvcyArIDFdOwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4
IDVhZDY4ZWM0M2QwMjIxMWU4OGNkOTIxMTE2Y2JjYjBhZGVlMmMzNTYuLjAwZjExOTQ2OGQ2Zjgy
OGU1ODFmOGIwYTRjNDc5OTM0MDU2MDQ1MzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxNS0x
My0xMSAgQW5keSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVyZS5jb20+CisKKyAgICAgICAg
W0lOVExdIEltcGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMgKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE0NzYwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICoganMvaW50bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQ6IEFkZGVkIHJlc29sdmVkT3B0
aW9ucyB0ZXN0cy4KKyAgICAgICAgKiBqcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1h
dC5qczogQWRkZWQgcmVzb2x2ZWRPcHRpb25zIHRlc3RzLgorCiAyMDE1LTEyLTExICBTaW1vbiBG
cmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIE1vdXNld2hlZWwgZXZl
bnRzIGRvbid0IHdvcmsgaW4gaWZyYW1lcyBpbiBSVEwgZG9jdW1lbnRzCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2pzL2ludGwtZGF0ZXRpbWVmb3JtYXQtZXhwZWN0ZWQudHh0CmluZGV4IGQwMTZjODAwNDdk
NjRkMDIzOGI1Yzk2ZDdiOTBiNmM0YWUxYzllYTQuLjVhZGIyMjA4Yzk4ZjljYzRhOTkyYjNkMTZh
MWI4NWVhM2JlYjBkNDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pzL2ludGwtZGF0ZXRpbWVm
b3JtYXQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2pzL2ludGwtZGF0ZXRpbWVmb3Jt
YXQtZXhwZWN0ZWQudHh0CkBAIC01NCw3ICs1NCw3IEBAIFBBU1MgT2JqZWN0LmRlZmluZVByb3Bl
cnR5KHt9LCAnZm9ybWF0JywgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLkRh
CiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCAhPT0gSW50bC5EYXRl
VGltZUZvcm1hdCgpLmZvcm1hdCBpcyB0cnVlCiBQQVNTIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCkuZm9ybWF0ICE9PSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCBpcyB0cnVlCiBQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCh7IHZhbHVlT2YoKSB7IHRo
cm93IEVycm9yKCc0YicpIH0gfSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiA0Yi4KLVBBU1MgSW50
bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KEluZmluaXR5KSB0aHJldyBleGNlcHRp
b24gUmFuZ2VFcnJvcjogZGF0ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1lRm9ybWF0
LmZvcm1hdCgpLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoSW5m
aW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBkYXRlIHZhbHVlIGlzIG5vdCBmaW5p
dGUgaW4gRGF0ZVRpbWVGb3JtYXQgZm9ybWF0KCkuCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQu
cHJvdG90eXBlLmZvcm1hdC5jYWxsKG51bGwsIDApIGlzIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5m
b3JtYXQoMCkKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0LmNhbGwo
SW50bC5EYXRlVGltZUZvcm1hdCgnYXInKSwgMCkgaXMgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZv
cm1hdCgwKQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2FsbCg1
LCAwKSBpcyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApCkBAIC02Myw4ICs2MywxMzAg
QEAgUEFTUyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdC5jYWxsKEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2FyJyksIDApIGlzIEludGwKIFBBU1MgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQo
KS5mb3JtYXQuY2FsbCg1LCAwKSBpcyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApCiBQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucy5sZW5ndGgg
aXMgMAogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMo
KSBpcyBhbiBpbnN0YW5jZSBvZiBPYmplY3QKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90
b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCkucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgbmV3IEludGwuRGF0ZVRp
bWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhcgorUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgbmV3
IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0K
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkud2Vl
a2RheSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLndlZWtk
YXkKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCku
ZXJhIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuZXJhCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnllYXIg
aXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlz
IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuZGF5IGlzIG5l
dyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuZGF5CitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmhvdXIgaXMgbmV3IElu
dGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiBpcyBuZXcgSW50
bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMgorUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUgaXMgbmV3IElu
dGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIGlzIG5ldyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSBp
cyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFt
ZQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSA9
PT0gSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgaXMgZmFs
c2UKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zLmNh
bGwoNSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogSW50bC5EYXRlVGltZUZvcm1hdC5wcm90
b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVj
dCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1lRm9ybWF0LgorUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCckJykgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGludmFsaWQgbGFuZ3VhZ2UgdGFn
OiAkLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIG51bGwpIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLndlZWtkYXkgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJyku
cmVzb2x2ZWRPcHRpb25zKCkuZXJhIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlzICdudW1lcmljJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmRheSBpcyAnbnVtZXJpYycK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIGlz
ICdudW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVz
b2x2ZWRPcHRpb25zKCkuaG91cjEyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBpcyB1bmRlZmluZWQKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQgaXMgdW5kZWZp
bmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmVOYW1lIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdwdC1icicp
LnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSBpcyAncHQtQlInCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyBsb2NhbGVNYXRjaGVyOidiYWQnIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5n
ZUVycm9yOiBsb2NhbGVNYXRjaGVyIG11c3QgYmUgZWl0aGVyICJsb29rdXAiIG9yICJiZXN0IGZp
dCIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBsb2NhbGVNYXRjaGVyOidsb29r
dXAnIH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjonYmVzdCBmaXQnIH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjonYmFk
JyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZm9ybWF0TWF0Y2hlciBtdXN0IGJlIGVp
dGhlciAiYmFzaWMiIG9yICJiZXN0IGZpdCIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBmb3JtYXRNYXRjaGVyOidiYXNpYycgfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBmb3JtYXRNYXRjaGVyOidiZXN0IGZpdCcg
fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBjYWxlbmRhcjonZGFuZ2knIH0pLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdn
cmVnb3J5JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJvZ3VzJykucmVzb2x2
ZWRPcHRpb25zKCkubG9jYWxlIGlzICdlbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdncmVnb3J5JworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJ1ZGRoaXN0JykucmVzb2x2ZWRPcHRpb25z
KCkubG9jYWxlIGlzICdlbi11LWNhLWJ1ZGRoaXN0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LWNhLWJ1ZGRoaXN0JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2J1ZGRo
aXN0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWNoaW5lc2UnKS5yZXNvbHZl
ZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnY2hpbmVzZScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4tdS1jYS1jb3B0aWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnY29wdGlj
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWRhbmdpJykucmVzb2x2ZWRPcHRp
b25zKCkuY2FsZW5kYXIgaXMgJ2RhbmdpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LWNhLWV0aGlvYWEnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnZXRoaW9hYScKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ldGhpb3BpYycpLnJlc29sdmVkT3B0aW9u
cygpLmNhbGVuZGFyIGlzICdldGhpb3BpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1jYS1ncmVnb3J5JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2dyZWdvcnknCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaGVicmV3JykucmVzb2x2ZWRPcHRpb25z
KCkuY2FsZW5kYXIgaXMgJ2hlYnJldycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1j
YS1pbmRpYW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaW5kaWFuJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5j
YWxlbmRhciBpcyAnaXNsYW1pYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1p
c2xhbWljYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdpc2xhbWljLWNpdmlsJwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLUlTTzg2MDEnKS5yZXNvbHZlZE9wdGlv
bnMoKS5jYWxlbmRhciBpcyAnaXNvODYwMScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1jYS1qYXBhbmVzZScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdqYXBhbmVzZScK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1wZXJzaWFuJykucmVzb2x2ZWRPcHRp
b25zKCkuY2FsZW5kYXIgaXMgJ3BlcnNpYW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
LXUtY2Etcm9jJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ3JvYycKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG51bWJlcmluZ1N5c3RlbTonZ3VqcicgfSkucmVzb2x2
ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdsYXRuJworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LW51LWJvZ3VzJykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIGlzICdlbicK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGF0bicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1udS1sYXRuJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdsYXRu
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWFyYWInKS5yZXNvbHZlZE9wdGlv
bnMoKS5sb2NhbGUgaXMgJ2VuLXUtbnUtYXJhYicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1udS1hcmFiJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdhcmFi
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWFyYWJleHQnKS5yZXNvbHZlZE9w
dGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2FyYWJleHQnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtbnUtYmFsaScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBp
cyAnYmFsaScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1iZW5nJykucmVzb2x2
ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdiZW5nJworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LW51LWRldmEnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0g
aXMgJ2RldmEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZnVsbHdpZGUnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2Z1bGx3aWRlJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWd1anInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJp
bmdTeXN0ZW0gaXMgJ2d1anInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZ3Vy
dScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnZ3VydScKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1oYW5pZGVjJykucmVzb2x2ZWRPcHRpb25zKCkubnVt
YmVyaW5nU3lzdGVtIGlzICdoYW5pZGVjJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LWtobXInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2tobXInCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUta25kYScpLnJlc29sdmVkT3B0aW9ucygp
Lm51bWJlcmluZ1N5c3RlbSBpcyAna25kYScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1sYW9vJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdsYW9vJwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxpbWInKS5yZXNvbHZlZE9wdGlvbnMo
KS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2xpbWInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
LXUtbnUtbWx5bScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbWx5bScK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1tb25nJykucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIGlzICdtb25nJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LW15bXInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ215bXIn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtb3J5YScpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyAnb3J5YScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1udS10YW1sZGVjJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICd0
YW1sZGVjJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LXRlbHUnKS5yZXNvbHZl
ZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3RlbHUnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtbnUtdGhhaScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBp
cyAndGhhaScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10aWJ0JykucmVzb2x2
ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICd0aWJ0JworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgd2Vla2RheTonaW52YWxpZCcgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdl
RXJyb3I6IHdlZWtkYXkgbXVzdCBiZSAibmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciLgorUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSBpcyB1bmRlZmluZWQKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J25hcnJvdycsIG1vbnRoOidudW1lcmlj
JywgZGF5OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IGlzICduYXJyb3cn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5OidzaG9ydCcsIG1vbnRo
OidudW1lcmljJywgZGF5OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IGlz
ICdzaG9ydCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J2xvbmcn
LCBtb250aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vl
a2RheSBpcyAnbG9uZycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmV2
ZXInIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBlcmEgbXVzdCBiZSAibmFycm93Iiwg
InNob3J0Iiwgb3IgImxvbmciLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWlu
dXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZGF5IGlz
IHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduYXJyb3cn
LCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEgaXMgJ25hcnJvdycKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonc2hvcnQnLCB5ZWFyOidudW1lcmlj
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEgaXMgJ3Nob3J0JworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgZXJhOidsb25nJywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRp
b25zKCkuZXJhIGlzICdsb25nJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgeWVh
cjonbm9wZScgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IHllYXIgbXVzdCBiZSAiMi1k
aWdpdCIgb3IgIm51bWVyaWMiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWlu
dXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciBp
cyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93
JywgeWVhcjonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyAnMi1kaWdpdCcK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOjIgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJy
b3I6IG1vbnRoIG11c3QgYmUgIjItZGlnaXQiLCAibnVtZXJpYyIsICJuYXJyb3ciLCAic2hvcnQi
LCBvciAibG9uZyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzIt
ZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyB1bmRl
ZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOicyLWRpZ2l0Jywg
eWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMgJzItZGlnaXQnCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonbnVtZXJpYycsIHllYXI6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlzICdudW1lcmljJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J25hcnJvdycsIHllYXI6J251bWVyaWMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlzICduYXJyb3cnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyBtb250aDonc2hvcnQnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS5tb250aCBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBtb250aDonbG9uZycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRo
IGlzICdsb25nJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZGF5OicnIH0pIHRo
cmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBkYXkgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVy
aWMiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0Jywg
aG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZGF5IGlzIHVuZGVmaW5lZAorUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCBkYXk6JzItZGlnaXQn
IH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSBpcyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgZGF5OidudW1lcmljJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS5kYXkgaXMgJ251bWVyaWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBob3VyOltdIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBob3VyIG11c3QgYmUgIjIt
ZGlnaXQiIG9yICJudW1lcmljIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNv
bHZlZE9wdGlvbnMoKS5ob3VyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRp
b25zKCkuaG91ciBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmhv
dXIgaXMgJ251bWVyaWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRP
cHRpb25zKCkuaG91cjEyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25z
KCkuaG91cjEyIGlzIHRydWUKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgncHQtQlInLCB7IG1p
bnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmhvdXIx
MiBpcyBmYWxzZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOm51bGwg
fSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IG1pbnV0ZSBtdXN0IGJlICIyLWRpZ2l0IiBv
ciAibnVtZXJpYyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRp
b25zKCkubWludXRlIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCku
bWludXRlIGlzICcyLWRpZ2l0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWlu
dXRlOidudW1lcmljJywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubWludXRl
IGlzICcyLWRpZ2l0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgc2Vjb25kOidi
YWR2YWx1ZScgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IHNlY29uZCBtdXN0IGJlICIy
LWRpZ2l0IiBvciAibnVtZXJpYyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVz
b2x2ZWRPcHRpb25zKCkuc2Vjb25kIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgbWludXRlOidudW1lcmljJywgaG91cjonbnVtZXJpYycsIHNlY29uZDonMi1k
aWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIGlzICcyLWRpZ2l0JworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOidudW1lcmljJywgaG91cjonbnVtZXJpYycs
IHNlY29uZDonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIGlzICcyLWRpZ2l0
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmVOYW1lOiduYW1lJyB9
KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogdGltZVpvbmVOYW1lIG11c3QgYmUgInNob3J0
IiBvciAibG9uZyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmVOYW1lIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycsIHRpbWVab25lTmFtZTon
c2hvcnQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSBpcyAnc2hvcnQnCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ3B0LUJSJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidu
dW1lcmljJywgdGltZVpvbmVOYW1lOidsb25nJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZU5hbWUgaXMgJ2xvbmcnCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1Qg
Q09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9pbnRsLWRh
dGV0aW1lZm9ybWF0LmpzIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwtZGF0ZXRp
bWVmb3JtYXQuanMKaW5kZXggZWRlMWI1Y2UzNDZmZDI5MDUzMGIzNzM3N2YwMGNhZTUwMzdlNjA3
Zi4uYTM4ZmE4ZjQyMDZlMWE1ODdkODczN2YxYWQ3Mzk4ZDA5N2Y0NzhhOSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwtZGF0ZXRpbWVmb3JtYXQuanMKKysrIGIv
TGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwtZGF0ZXRpbWVmb3JtYXQuanMKQEAgLTEx
OSw3ICsxMTksNyBAQCBzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
Zm9ybWF0KHsgdmFsdWVPZigpIHsgdGhyb3cgRXJyb3IoJzRiJwogLy8gMTIuMy40IEZvcm1hdERh
dGVUaW1lIGFic3RyYWN0IG9wZXJhdGlvbgogCiAvLyAxLiBJZiB4IGlzIG5vdCBhIGZpbml0ZSBO
dW1iZXIsIHRoZW4gdGhyb3cgYSBSYW5nZUVycm9yIGV4Y2VwdGlvbi4KLXNob3VsZFRocm93KCJJ
bnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoSW5maW5pdHkpIiwgIidSYW5nZUVy
cm9yOiBkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQuZm9ybWF0KCkn
Iik7CitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KElu
ZmluaXR5KSIsICInUmFuZ2VFcnJvcjogZGF0ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVU
aW1lRm9ybWF0IGZvcm1hdCgpJyIpOwogCiAvLyBGb3JtYXQgaXMgYm91bmQsIHNvIGNhbGxpbmcg
d2l0aCBhbHRlcm5hdGUgInRoaXMiIGhhcyBubyBlZmZlY3QuCiBzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0LmNhbGwobnVsbCwgMCkiLCAiSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLmZvcm1hdCgwKSIpOwpAQCAtMTM2LDkgKzEzNiwxNTcgQEAgc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucy5sZW5ndGgiLCAiMCIp
OwogLy8gUmV0dXJucyBhIG5ldyBvYmplY3Qgd2hvc2UgcHJvcGVydGllcyBhbmQgYXR0cmlidXRl
cyBhcmUgc2V0IGFzIGlmIGNvbnN0cnVjdGVkIGJ5IGFuIG9iamVjdCBsaXRlcmFsLgogc2hvdWxk
QmVUeXBlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSIs
ICJPYmplY3QiKTsKIAorLy8gVGhlIEludGwuRGF0ZVRpbWVGb3JtYXQgcHJvdG90eXBlIG9iamVj
dCBpcyBpdHNlbGYgYW4gJURhdGVUaW1lRm9ybWF0JSBpbnN0YW5jZSwgd2hvc2UgaW50ZXJuYWwg
c2xvdHMgYXJlIHNldCBhcyBpZiBpdCBoYWQgYmVlbiBjb25zdHJ1Y3RlZCBieSB0aGUgZXhwcmVz
c2lvbiBDb25zdHJ1Y3QoJURhdGVUaW1lRm9ybWF0JSkuCitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIiwgIm5ldyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAi
bmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygp
LmNhbGVuZGFyIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCku
Y2FsZW5kYXIiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNv
bHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQo
KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IiwgIm5ldyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmVyYSIs
ICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmVyYSIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnll
YXIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
KCkubW9udGgiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5t
b250aCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucygpLmRheSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9u
cygpLmRheSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29s
dmVkT3B0aW9ucygpLmhvdXIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9w
dGlvbnMoKS5ob3VyIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVz
b2x2ZWRPcHRpb25zKCkuaG91cjEyIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5w
cm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIiwgIm5ldyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1l
IiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVO
YW1lIik7CisKIC8vIFJldHVybnMgYSBuZXcgb2JqZWN0IGVhY2ggdGltZS4KIHNob3VsZEJlRmFs
c2UoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpID09PSBJ
bnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSIpOwogCiAvLyBU
aHJvd3Mgb24gbm9uLURhdGVUaW1lRm9ybWF0IHRoaXMuCiBzaG91bGRUaHJvdygiSW50bC5EYXRl
VGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zLmNhbGwoNSkiLCAiJ1R5cGVFcnJv
cjogSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNhbGxlZCBv
biB2YWx1ZSB0aGF0XFwncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0ZVRpbWVG
b3JtYXQnIik7CiAKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCckJykiLCAiJ1Jh
bmdlRXJyb3I6IGludmFsaWQgbGFuZ3VhZ2UgdGFnOiAkJyIpOworc2hvdWxkTm90VGhyb3coIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgbnVsbCkiKTsKKworLy8gRGVmYXVsdHMgdG8gbW9udGgs
IGRheSwgeWVhci4KK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVk
T3B0aW9ucygpLndlZWtkYXkiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEiLCAidW5kZWZpbmVkIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCIs
ICInbnVtZXJpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29s
dmVkT3B0aW9ucygpLmRheSIsICInbnVtZXJpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnllYXIiLCAiJ251bWVyaWMnIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIiwg
InVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2
ZWRPcHRpb25zKCkuaG91cjEyIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIiwgInVuZGVmaW5lZCIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuc2Vj
b25kIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJyku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIiwgInVuZGVmaW5lZCIpOworCitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgncHQtYnInKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUi
LCAiJ3B0LUJSJyIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IGxvY2FsZU1hdGNoZXI6J2JhZCcgfSkiLCAnXCdSYW5nZUVycm9yOiBsb2NhbGVNYXRjaGVyIG11
c3QgYmUgZWl0aGVyICJsb29rdXAiIG9yICJiZXN0IGZpdCJcJycpOworc2hvdWxkTm90VGhyb3co
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBsb2NhbGVNYXRjaGVyOidsb29rdXAnIH0pIik7
CitzaG91bGROb3RUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxvY2FsZU1hdGNo
ZXI6J2Jlc3QgZml0JyB9KSIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2JhZCcgfSkiLCAnXCdSYW5nZUVycm9yOiBmb3JtYXRNYXRj
aGVyIG11c3QgYmUgZWl0aGVyICJiYXNpYyIgb3IgImJlc3QgZml0IlwnJyk7CitzaG91bGROb3RU
aHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2Jhc2ljJyB9
KSIpOworc2hvdWxkTm90VGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBmb3JtYXRN
YXRjaGVyOidiZXN0IGZpdCcgfSkiKTsKKworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBjYWxlbmRhcjonZGFuZ2knIH0pLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwg
IidncmVnb3J5JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYm9n
dXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUiLCAiJ2VuJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYm9ndXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRh
ciIsICInZ3JlZ29yeSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNh
LWJ1ZGRoaXN0JykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIiwgIidlbi11LWNhLWJ1ZGRoaXN0
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYnVkZGhpc3QnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInYnVkZGhpc3QnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1jaGluZXNlJykucmVzb2x2ZWRPcHRpb25zKCkuY2Fs
ZW5kYXIiLCAiJ2NoaW5lc2UnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1jYS1jb3B0aWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInY29wdGljJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZGFuZ2knKS5yZXNvbHZlZE9w
dGlvbnMoKS5jYWxlbmRhciIsICInZGFuZ2knIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1jYS1ldGhpb2FhJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2V0
aGlvYWEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ldGhpb3Bp
YycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidldGhpb3BpYyciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWdyZWdvcnknKS5yZXNvbHZlZE9wdGlvbnMo
KS5jYWxlbmRhciIsICInZ3JlZ29yeSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LWNhLWhlYnJldycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidoZWJyZXcn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pbmRpYW4nKS5yZXNv
bHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaW5kaWFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFy
IiwgIidpc2xhbWljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2Et
aXNsYW1pY2MnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy1jaXZpbCci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLUlTTzg2MDEnKS5yZXNv
bHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNvODYwMSciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LWNhLWphcGFuZXNlJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5k
YXIiLCAiJ2phcGFuZXNlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtcGVyc2lhbicpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidwZXJzaWFuJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2Etcm9jJykucmVzb2x2ZWRPcHRp
b25zKCkuY2FsZW5kYXIiLCAiJ3JvYyciKTsKKy8vIEZJWE1FOiBodHRwczovL2dpdGh1Yi5jb20v
dGMzOS9lY21hNDAyL2lzc3Vlcy81OQorLy8gc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtY2EtZXRoaW9waWMtYW1ldGUtYWxlbScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFy
IiwgIidldGhpb2FhJyIpOworLy8gc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtaXNsYW1pYy11bWFscXVyYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xh
bWljLXVtYWxxdXJhJyIpOworLy8gc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtaXNsYW1pYy10YmxhJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMt
dGJsYSciKTsKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFt
aWMtY2l2aWwnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy1jaXZpbCci
KTsKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWMtcmdz
YScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljLXJnc2EnIik7CisKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbnVtYmVyaW5nU3lzdGVtOidndWpy
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xhdG4nIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9u
cygpLmxvY2FsZSIsICInZW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInbGF0bici
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxhdG4nKS5yZXNvbHZl
ZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xhdG4nIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4tdS1udS1hcmFiJykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIiwg
Iidlbi11LW51LWFyYWInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1u
dS1hcmFiJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidhcmFiJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYXJhYmV4dCcpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInYXJhYmV4dCciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWJhbGknKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJp
bmdTeXN0ZW0iLCAiJ2JhbGknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1iZW5nJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidiZW5nJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZGV2YScpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInZGV2YSciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LW51LWZ1bGx3aWRlJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVy
aW5nU3lzdGVtIiwgIidmdWxsd2lkZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LW51LWd1anInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2d1
anInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ndXJ1JykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidndXJ1JyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtaGFuaWRlYycpLnJlc29sdmVkT3B0aW9ucygpLm51
bWJlcmluZ1N5c3RlbSIsICInaGFuaWRlYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LW51LWtobXInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAi
J2tobXInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1rbmRhJyku
cmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidrbmRhJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGFvbycpLnJlc29sdmVkT3B0aW9ucygpLm51
bWJlcmluZ1N5c3RlbSIsICInbGFvbyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LW51LWxpbWInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xp
bWInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1tbHltJykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidtbHltJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbW9uZycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSIsICInbW9uZyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LW15bXInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ215bXIn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1vcnlhJykucmVzb2x2
ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidvcnlhJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGFtbGRlYycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSIsICIndGFtbGRlYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LW51LXRlbHUnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ3Rl
bHUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10aGFpJykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIid0aGFpJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGlidCcpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSIsICIndGlidCciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB3ZWVrZGF5OidpbnZhbGlkJyB9KSIsICdcJ1JhbmdlRXJyb3I6IHdlZWtkYXkg
bXVzdCBiZSAibmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycg
fSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonbmFycm93JywgbW9udGg6J251bWVy
aWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAiJ25hcnJv
dyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonc2hv
cnQnLCBtb250aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCku
d2Vla2RheSIsICInc2hvcnQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHdlZWtkYXk6J2xvbmcnLCBtb250aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkud2Vla2RheSIsICInbG9uZyciKTsKKworc2hvdWxkVGhyb3coIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25ldmVyJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGVy
YSBtdXN0IGJlICJuYXJyb3ciLCAic2hvcnQiLCBvciAibG9uZyJcJycpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmlj
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjonbnVtZXJpYycgfSku
cmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgIiduYXJyb3cnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IGVyYTonc2hvcnQnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS5lcmEiLCAiJ3Nob3J0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyBlcmE6J2xvbmcnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS5lcmEiLCAiJ2xvbmcnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgeWVhcjonbm9wZScgfSkiLCAnXCdSYW5nZUVycm9yOiB5ZWFyIG11c3QgYmUgIjItZGln
aXQiIG9yICJudW1lcmljIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnllYXIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IGVyYTonbmFycm93JywgeWVhcjonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVh
ciIsICInMi1kaWdpdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
ZXJhOiduYXJyb3cnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIiwg
IidudW1lcmljJyIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IG1vbnRoOjIgfSkiLCAnXCdSYW5nZUVycm9yOiBtb250aCBtdXN0IGJlICIyLWRpZ2l0IiwgIm51
bWVyaWMiLCAibmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycg
fSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOicyLWRpZ2l0JywgeWVhcjonbnVtZXJpYycg
fSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidudW1lcmljJywgeWVhcjonbnVtZXJpYycg
fSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAiJ251bWVyaWMnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOiduYXJyb3cnLCB5ZWFyOidudW1lcmljJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCIsICInbmFycm93JyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonc2hvcnQnLCB5ZWFyOidudW1lcmljJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS5tb250aCIsICInc2hvcnQnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2
ZWRPcHRpb25zKCkubW9udGgiLCAiJ2xvbmcnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgZGF5OicnIH0pIiwgJ1wnUmFuZ2VFcnJvcjogZGF5IG11c3QgYmUg
IjItZGlnaXQiIG9yICJudW1lcmljIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0
aW9ucygpLmRheSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbW9udGg6J2xvbmcnLCBkYXk6JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9ucygp
LmRheSIsICInMi1kaWdpdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgbW9udGg6J2xvbmcnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSIs
ICInbnVtZXJpYyciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBob3VyOltdIH0pIiwgJ1wnUmFuZ2VFcnJvcjogaG91ciBtdXN0IGJlICIyLWRpZ2l0IiBvciAi
bnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2
ZWRPcHRpb25zKCkuaG91ciIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonMi1kaWdpdCcgfSkucmVzb2x2
ZWRPcHRpb25zKCkuaG91ciIsICInbnVtZXJpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2
ZWRPcHRpb25zKCkuaG91ciIsICInbnVtZXJpYyciKTsKKworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgInVuZGVmaW5lZCIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBo
b3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAidHJ1ZSIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ3B0LUJSJywgeyBtaW51dGU6JzItZGlnaXQnLCBo
b3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAiZmFsc2UiKTsKKwor
c2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6bnVsbCB9KSIs
ICdcJ1JhbmdlRXJyb3I6IG1pbnV0ZSBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyJcJycp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCku
bWludXRlIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS5taW51dGUiLCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1pbnV0ZTonbnVtZXJpYycsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLm1pbnV0ZSIsICInMi1kaWdpdCciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyBzZWNvbmQ6J2JhZHZhbHVlJyB9KSIsICdcJ1JhbmdlRXJyb3I6IHNlY29u
ZCBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIiwgInVuZGVmaW5lZCIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMn
LCBob3VyOidudW1lcmljJywgc2Vjb25kOicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5z
ZWNvbmQiLCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IG1pbnV0ZTonbnVtZXJpYycsIGhvdXI6J251bWVyaWMnLCBzZWNvbmQ6J251bWVyaWMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCIsICInMi1kaWdpdCciKTsKKworc2hvdWxkVGhyb3co
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZU5hbWU6J25hbWUnIH0pIiwgJ1wn
UmFuZ2VFcnJvcjogdGltZVpvbmVOYW1lIG11c3QgYmUgInNob3J0IiBvciAibG9uZyJcJycpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmVOYW1lIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJywgdGltZVpvbmVOYW1lOidz
aG9ydCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIiwgIidzaG9ydCciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdwdC1CUicsIHsgbWludXRlOicyLWRpZ2l0Jywg
aG91cjonbnVtZXJpYycsIHRpbWVab25lTmFtZTonbG9uZycgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmVOYW1lIiwgIidsb25nJyIpOworCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>267326</attachid>
            <date>2015-12-14 16:13:22 -0800</date>
            <delta_ts>2015-12-15 15:54:06 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147603-20151214171245.patch</filename>
            <type>text/plain</type>
            <size>125878</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk0MDYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA0
YWQ3MzE3ZTI0ODM5MTdjMDhkYmY5YmFkZWU2YmU4NDRlYTZkODQ3Li5hMDk0ZjUxNTNkNDNlMTE3
ZjE4ZjFlYTFkMDAyZDU1YmYyMTNhNzdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw3OSBAQAorMjAxNS0xNC0xMSAgQW5keSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVy
ZS5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQgYW5k
IHJlbGF0ZWQgYWJzdHJhY3Qgb3BlcmF0aW9ucy4KKyAgICAgICAgU3RvcmUgcmVzb2x2ZWQgb3B0
aW9ucyBhcyBlbnVtIHR5cGVzIHdoZXJlIHBvc3NpYmxlLgorICAgICAgICBVc2UgSUNVIGRhdGUg
cGF0dGVybiBnZW5lcmF0b3IgdG8gcmVzb2x2ZSBmb3JtYXR0aW5nIHN0eWxlcy4KKyAgICAgICAg
RGVmZXIgcGFydHMgb2YgSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0IHRoYXQgb25seSBhZmZlY3Qg
Zm9ybWF0KCkuCisKKyAgICAgICAgKiBpY3UvdW5pY29kZS91ZGF0cGcuaDogQWRkZWQuCisgICAg
ICAgICogcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oOgorICAgICAgICAqIHJ1bnRpbWUvSW50
bERhdGVUaW1lRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6ZGVmYXVsdFRpbWVab25lKToKKyAg
ICAgICAgKEpTQzo6Y2Fub25pY2FsaXplVGltZVpvbmVOYW1lKToKKyAgICAgICAgKEpTQzo6bG9j
YWxlRGF0YSk6CisgICAgICAgIChKU0M6OnN0cmluZ1RvQ2FsZW5kYXJUeXBlKToKKyAgICAgICAg
KEpTQzo6dG9EYXRlVGltZU9wdGlvbnMpOgorICAgICAgICAoSlNDOjpzZXRGb3JtYXRzRnJvbVBh
dHRlcm4pOgorICAgICAgICAoSlNDOjppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQpOgorICAgICAg
ICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUpOgorICAgICAgICAq
IHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Lmg6CisgICAgICAgIChKU0M6OkludGxEYXRlVGlt
ZUZvcm1hdDo6aW5pdGlhbGl6ZWRJbnRsT2JqZWN0KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVU
aW1lRm9ybWF0OjpzZXRJbml0aWFsaXplZEludGxPYmplY3QpOgorICAgICAgICAoSlNDOjpJbnRs
RGF0ZVRpbWVGb3JtYXQ6OmluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQpOgorICAgICAgICAoSlND
OjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQpOgorICAg
ICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmxvY2FsZSk6CisgICAgICAgIChKU0M6Oklu
dGxEYXRlVGltZUZvcm1hdDo6c2V0TG9jYWxlKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1l
Rm9ybWF0OjpjYWxlbmRhcik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0
Q2FsZW5kYXIpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6Om51bWJlcmluZ1N5
c3RlbSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0TnVtYmVyaW5nU3lz
dGVtKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojp0aW1lWm9uZSk6CisgICAg
ICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0VGltZVpvbmUpOgorICAgICAgICAoSlND
OjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmhvdXIxMik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGlt
ZUZvcm1hdDo6c2V0SG91cjEyKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojp3
ZWVrZGF5KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRXZWVrZGF5KToK
KyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjplcmEpOgorICAgICAgICAoSlNDOjpJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEVyYSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZv
cm1hdDo6eWVhcik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0WWVhcik6
CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6bW9udGgpOgorICAgICAgICAoSlND
OjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldE1vbnRoKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVU
aW1lRm9ybWF0OjpkYXkpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldERh
eSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6aG91cik6CisgICAgICAgIChK
U0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0SG91cik6CisgICAgICAgIChKU0M6OkludGxEYXRl
VGltZUZvcm1hdDo6bWludXRlKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojpz
ZXRNaW51dGUpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNlY29uZCk6Cisg
ICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0U2Vjb25kKToKKyAgICAgICAgKEpT
Qzo6SW50bERhdGVUaW1lRm9ybWF0Ojp0aW1lWm9uZU5hbWUpOgorICAgICAgICAoSlNDOjpJbnRs
RGF0ZVRpbWVGb3JtYXQ6OnNldFRpbWVab25lTmFtZSk6CisgICAgICAgICogcnVudGltZS9JbnRs
RGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdElu
dGxEYXRlVGltZUZvcm1hdCk6CisgICAgICAgIChKU0M6OmNhbGxJbnRsRGF0ZVRpbWVGb3JtYXQp
OgorICAgICAgICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbik6
CisgICAgICAgIChKU0M6OmNhbGVuZGFyVHlwZVRvU3RyaW5nKToKKyAgICAgICAgKEpTQzo6d2Vl
a2RheVN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjplcmFTdHlsZVRvU3RyaW5nKToKKyAg
ICAgICAgKEpTQzo6eWVhclN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjptb250aFN0eWxl
VG9TdHJpbmcpOgorICAgICAgICAoSlNDOjpkYXlTdHlsZVRvU3RyaW5nKToKKyAgICAgICAgKEpT
Qzo6aG91clN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjptaW51dGVTdHlsZVRvU3RyaW5n
KToKKyAgICAgICAgKEpTQzo6c2Vjb25kU3R5bGVUb1N0cmluZyk6CisgICAgICAgIChKU0M6OnRp
bWVab25lTmFtZVN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKToKKyAgICAgICAgKiBydW50aW1lL0ludGxP
YmplY3QuY3BwOgorICAgICAgICAoSlNDOjpyZXNvbHZlTG9jYWxlKToKKwogMjAxNS0xMi0xNCAg
QmVuamFtaW4gUG91bGFpbiAgPGJwb3VsYWluQGFwcGxlLmNvbT4KIAogICAgICAgICBbSlNDXSBB
ZGQgY2VpbCgpIHN1cHBvcnQgZm9yIHg4NiBhbmQgZXhwb3NlIGl0IHRvIEIzCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRhdHBnLmggYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRhdHBnLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2RjN2U4OWYyZGZi
NjQwMjIwZjM1NzA4ODM1OGI2ZDljNTc4ZWIwZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9pY3UvdW5pY29kZS91ZGF0cGcuaApAQCAtMCwwICsxLDU4NiBAQAorLyoK
KyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioKKyoKKyogICBDb3B5cmlnaHQgKEMpIDIwMDctMjAxMCwg
SW50ZXJuYXRpb25hbCBCdXNpbmVzcyBNYWNoaW5lcworKiAgIENvcnBvcmF0aW9uIGFuZCBvdGhl
cnMuICBBbGwgUmlnaHRzIFJlc2VydmVkLgorKgorKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorKiAg
IGZpbGUgbmFtZTogIHVkYXRwZy5oCisqICAgZW5jb2Rpbmc6ICAgVVMtQVNDSUkKKyogICB0YWIg
c2l6ZTogICA4IChub3QgdXNlZCkKKyogICBpbmRlbnRhdGlvbjo0CisqCisqICAgY3JlYXRlZCBv
bjogMjAwN2p1bDMwCisqICAgY3JlYXRlZCBieTogTWFya3VzIFcuIFNjaGVyZXIKKyovCisKKyNp
Zm5kZWYgX19VREFUUEdfSF9fCisjZGVmaW5lIF9fVURBVFBHX0hfXworCisjaW5jbHVkZSAidW5p
Y29kZS91dHlwZXMuaCIKKyNpbmNsdWRlICJ1bmljb2RlL3VlbnVtLmgiCisjaW5jbHVkZSAidW5p
Y29kZS9sb2NhbHBvaW50ZXIuaCIKKworLyoqCisgKiBcZmlsZQorICogXGJyaWVmIEMgQVBJOiBX
cmFwcGVyIGZvciBEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKHVuaWNvZGUvZHRwdG5nZW4uaCku
CisgKgorICogVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciBwcm92aWRlcyBmbGV4aWJsZSBnZW5l
cmF0aW9uIG9mIGRhdGUgZm9ybWF0IHBhdHRlcm5zLCAKKyAqIGxpa2UgInl5LU1NLWRkIi4gVGhl
IHVzZXIgY2FuIGJ1aWxkIHVwIHRoZSBnZW5lcmF0b3IgYnkgYWRkaW5nIHN1Y2Nlc3NpdmUgCisg
KiBwYXR0ZXJucy4gT25jZSB0aGF0IGlzIGRvbmUsIGEgcXVlcnkgY2FuIGJlIG1hZGUgdXNpbmcg
YSAic2tlbGV0b24iLCB3aGljaCBpcyAKKyAqIGEgcGF0dGVybiB3aGljaCBqdXN0IGluY2x1ZGVz
IHRoZSBkZXNpcmVkIGZpZWxkcyBhbmQgbGVuZ3Rocy4gVGhlIGdlbmVyYXRvciAKKyAqIHdpbGwg
cmV0dXJuIHRoZSAiYmVzdCBmaXQiIHBhdHRlcm4gY29ycmVzcG9uZGluZyB0byB0aGF0IHNrZWxl
dG9uLgorICogPHA+VGhlIG1haW4gbWV0aG9kIHBlb3BsZSB3aWxsIHVzZSBpcyB1ZGF0cGdfZ2V0
QmVzdFBhdHRlcm4sIHNpbmNlIG5vcm1hbGx5CisgKiBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9y
IGlzIHByZS1idWlsdCB3aXRoIGRhdGEgZnJvbSBhIHBhcnRpY3VsYXIgbG9jYWxlLiAKKyAqIEhv
d2V2ZXIsIGdlbmVyYXRvcnMgY2FuIGJlIGJ1aWx0IGRpcmVjdGx5IGZyb20gb3RoZXIgZGF0YSBh
cyB3ZWxsLgorICogPHA+PGk+SXNzdWU6IG1heSBiZSB1c2VmdWwgdG8gYWxzbyBoYXZlIGEgZnVu
Y3Rpb24gdGhhdCByZXR1cm5zIHRoZSBsaXN0IG9mIAorICogZmllbGRzIGluIGEgcGF0dGVybiwg
aW4gb3JkZXIsIHNpbmNlIHdlIGhhdmUgdGhhdCBpbnRlcm5hbGx5LgorICogVGhhdCB3b3VsZCBi
ZSB1c2VmdWwgZm9yIGdldHRpbmcgdGhlIFVJIG9yZGVyIG9mIGZpZWxkIGVsZW1lbnRzLjwvaT4K
KyAqLworCisvKioKKyAqIE9wYXF1ZSB0eXBlIGZvciBhIGRhdGUvdGltZSBwYXR0ZXJuIGdlbmVy
YXRvciBvYmplY3QuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLwordHlwZWRlZiB2b2lkICpVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOworCisvKioKKyAqIEZpZWxkIG51bWJlciBjb25zdGFudHMg
Zm9yIHVkYXRwZ19nZXRBcHBlbmRJdGVtRm9ybWF0cygpIGFuZCBzaW1pbGFyIGZ1bmN0aW9ucy4K
KyAqIFRoZXNlIGNvbnN0YW50cyBhcmUgc2VwYXJhdGUgZnJvbSBVRGF0ZUZvcm1hdEZpZWxkIGRl
c3BpdGUgc2VtYW50aWMgb3ZlcmxhcAorICogYmVjYXVzZSBzb21lIGZpZWxkcyBhcmUgbWVyZ2Vk
IGZvciB0aGUgZGF0ZS90aW1lIHBhdHRlcm4gZ2VuZXJhdG9yLgorICogQHN0YWJsZSBJQ1UgMy44
CisgKi8KK3R5cGVkZWYgZW51bSBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQgeworICAgIC8qKiBAc3Rh
YmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfRVJBX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElD
VSAzLjggKi8KKyAgICBVREFUUEdfWUVBUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44
ICovCisgICAgVURBVFBHX1FVQVJURVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAq
LworICAgIFVEQVRQR19NT05USF9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisg
ICAgVURBVFBHX1dFRUtfT0ZfWUVBUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICov
CisgICAgVURBVFBHX1dFRUtfT0ZfTU9OVEhfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19XRUVLREFZX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjgg
Ki8KKyAgICBVREFUUEdfREFZX09GX1lFQVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19EQVlfT0ZfV0VFS19JTl9NT05USF9GSUVMRCwKKyAgICAvKiogQHN0
YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0RBWV9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJ
Q1UgMy44ICovCisgICAgVURBVFBHX0RBWVBFUklPRF9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJ
Q1UgMy44ICovCisgICAgVURBVFBHX0hPVVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19NSU5VVEVfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAq
LworICAgIFVEQVRQR19TRUNPTkRfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLwor
ICAgIFVEQVRQR19GUkFDVElPTkFMX1NFQ09ORF9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1Ug
My44ICovCisgICAgVURBVFBHX1pPTkVfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAq
LworICAgIFVEQVRQR19GSUVMRF9DT1VOVAorfSBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQ7CisKKy8q
KgorICogTWFza3MgdG8gY29udHJvbCBmb3JjaW5nIHRoZSBsZW5ndGggb2Ygc3BlY2lmaWVkIGZp
ZWxkcyBpbiB0aGUgcmV0dXJuZWQKKyAqIHBhdHRlcm4gdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNr
ZWxldG9uICh3aGVuIHRoaXMgd291bGQgbm90IGhhcHBlbgorICogb3RoZXJ3aXNlKS4gVGhlc2Ug
bWF5IGJlIGNvbWJpbmVkIHRvIGZvcmNlIHRoZSBsZW5ndGggb2YgbXVsdGlwbGUgZmllbGRzLgor
ICogVXNlZCB3aXRoIHVkYXRwZ19nZXRCZXN0UGF0dGVybldpdGhPcHRpb25zLCB1ZGF0cGdfcmVw
bGFjZUZpZWxkVHlwZXNXaXRoT3B0aW9ucy4KKyAqIEBzdGFibGUgSUNVIDQuNAorICovCit0eXBl
ZGVmIGVudW0gVURhdGVUaW1lUGF0dGVybk1hdGNoT3B0aW9ucyB7CisgICAgLyoqIEBzdGFibGUg
SUNVIDQuNCAqLworICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TID0gMCwKKyAgICAvKiogQHN0
YWJsZSBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX0hPVVJfRklFTERfTEVOR1RIID0gMSA8
PCBVREFUUEdfSE9VUl9GSUVMRCwKKyAgICAvKiogQGludGVybmFsIElDVSA0LjQgKi8KKyAgICBV
REFUUEdfTUFUQ0hfTUlOVVRFX0ZJRUxEX0xFTkdUSCA9IDEgPDwgVURBVFBHX01JTlVURV9GSUVM
RCwKKyAgICAvKiogQGludGVybmFsIElDVSA0LjQgKi8KKyAgICBVREFUUEdfTUFUQ0hfU0VDT05E
X0ZJRUxEX0xFTkdUSCA9IDEgPDwgVURBVFBHX1NFQ09ORF9GSUVMRCwKKyAgICAvKiogQHN0YWJs
ZSBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX0FMTF9GSUVMRFNfTEVOR1RIID0gKDEgPDwg
VURBVFBHX0ZJRUxEX0NPVU5UKSAtIDEKK30gVURhdGVUaW1lUGF0dGVybk1hdGNoT3B0aW9uczsK
KworLyoqCisgKiBTdGF0dXMgcmV0dXJuIHZhbHVlcyBmcm9tIHVkYXRwZ19hZGRQYXR0ZXJuKCku
CisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLwordHlwZWRlZiBlbnVtIFVEYXRlVGltZVBhdHRlcm5D
b25mbGljdCB7CisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19OT19DT05G
TElDVCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0JBU0VfQ09ORkxJ
Q1QsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19DT05GTElDVCwKKyAg
ICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0NPTkZMSUNUX0NPVU5UCit9IFVE
YXRlVGltZVBhdHRlcm5Db25mbGljdDsKKworLyoqCisgICogT3BlbiBhIGdlbmVyYXRvciBhY2Nv
cmRpbmcgdG8gYSBnaXZlbiBsb2NhbGUuCisgICogQHBhcmFtIGxvY2FsZQorICAqIEBwYXJhbSBw
RXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRp
Y2F0ZSBhCisgICogICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9u
IGNhbGwuCisgICogQHJldHVybiBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ci4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIFVEYXRlVGltZVBhdHRlcm5H
ZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVuKGNvbnN0IGNoYXIgKmxvY2FsZSwgVUVy
cm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIE9wZW4gYW4gZW1wdHkgZ2VuZXJhdG9y
LCB0byBiZSBjb25zdHJ1Y3RlZCB3aXRoIHVkYXRwZ19hZGRQYXR0ZXJuKC4uLikgZXRjLgorICAq
IEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0
IG5vdCBpbmRpY2F0ZSBhCisgICogICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhl
IGZ1bmN0aW9uIGNhbGwuCisgICogQHJldHVybiBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVy
bkdlbmVyYXRvci4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIFVEYXRlVGlt
ZVBhdHRlcm5HZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVuRW1wdHkoVUVycm9yQ29k
ZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIENsb3NlIGEgZ2VuZXJhdG9yLgorICAqIEBwYXJh
bSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBzdGFi
bGUgSUNVIDMuOAorICAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19jbG9zZShV
RGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnKTsKKworI2lmIFVfU0hPV19DUExVU1BMVVNf
QVBJCisKK1VfTkFNRVNQQUNFX0JFR0lOCisKKy8qKgorICogXGNsYXNzIExvY2FsVURhdGVUaW1l
UGF0dGVybkdlbmVyYXRvclBvaW50ZXIKKyAqICJTbWFydCBwb2ludGVyIiBjbGFzcywgY2xvc2Vz
IGEgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciB2aWEgdWRhdHBnX2Nsb3NlKCkuCisgKiBGb3Ig
bW9zdCBtZXRob2RzIHNlZSB0aGUgTG9jYWxQb2ludGVyQmFzZSBiYXNlIGNsYXNzLgorICoKKyAq
IEBzZWUgTG9jYWxQb2ludGVyQmFzZQorICogQHNlZSBMb2NhbFBvaW50ZXIKKyAqIEBzdGFibGUg
SUNVIDQuNAorICovCitVX0RFRklORV9MT0NBTF9PUEVOX1BPSU5URVIoTG9jYWxVRGF0ZVRpbWVQ
YXR0ZXJuR2VuZXJhdG9yUG9pbnRlciwgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciwgdWRhdHBn
X2Nsb3NlKTsKKworVV9OQU1FU1BBQ0VfRU5ECisKKyNlbmRpZgorCisvKioKKyAgKiBDcmVhdGUg
YSBjb3B5IHBmIGEgZ2VuZXJhdG9yLgorICAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yIHRvIGJlIGNvcGllZC4KKyAgKiBAcGFyYW0gcEVycm9yQ29k
ZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQor
ICAqICAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgor
ICAqIEByZXR1cm4gYSBwb2ludGVyIHRvIGEgbmV3IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3Iu
CisgICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19jbG9uZShjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2Vu
ZXJhdG9yICpkdHBnLCBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBHZXQgdGhl
IGJlc3QgcGF0dGVybiBtYXRjaGluZyB0aGUgaW5wdXQgc2tlbGV0b24uIEl0IGlzIGd1YXJhbnRl
ZWQgdG8KKyAqIGhhdmUgYWxsIG9mIHRoZSBmaWVsZHMgaW4gdGhlIHNrZWxldG9uLgorICogCisg
KiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2gg
aXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhhbiBjcmVh
dGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNhbGxzIHRv
IHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRoaXMgZnVu
Y3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBv
YmplY3QuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yLgorICogQHBhcmFtIHNrZWxldG9uCisgKiAgICAgICAgICAgIFRoZSBza2VsZXRv
biBpcyBhIHBhdHRlcm4gY29udGFpbmluZyBvbmx5IHRoZSB2YXJpYWJsZSBmaWVsZHMuCisgKiAg
ICAgICAgICAgIEZvciBleGFtcGxlLCAiTU1NZGQiIGFuZCAibW1oaCIgYXJlIHNrZWxldG9ucy4K
KyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBza2VsZXRvbgorICogQHBhcmFtIGJlc3RQ
YXR0ZXJuCisgKiAgICAgICAgICAgIFRoZSBiZXN0IHBhdHRlcm4gZm91bmQgZnJvbSB0aGUgZ2l2
ZW4gc2tlbGV0b24uCisgKiBAcGFyYW0gY2FwYWNpdHkgdGhlIGNhcGFjaXR5IG9mIGJlc3RQYXR0
ZXJuLgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdo
aWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVm
b3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGJlc3RQYXR0
ZXJuLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQy
Cit1ZGF0cGdfZ2V0QmVzdFBhdHRlcm4oVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywK
KyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMyX3QgbGVu
Z3RoLAorICAgICAgICAgICAgICAgICAgICAgIFVDaGFyICpiZXN0UGF0dGVybiwgaW50MzJfdCBj
YXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsK
KworLyoqCisgKiBHZXQgdGhlIGJlc3QgcGF0dGVybiBtYXRjaGluZyB0aGUgaW5wdXQgc2tlbGV0
b24uIEl0IGlzIGd1YXJhbnRlZWQgdG8KKyAqIGhhdmUgYWxsIG9mIHRoZSBmaWVsZHMgaW4gdGhl
IHNrZWxldG9uLgorICogCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNv
bnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0
dGVybiBwYXJzZXIgd2hpY2ggaXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisg
KiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENv
bnNlY3V0aXZlIGNhbGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVy
LAorICogYnV0IHRoaXMgZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEg
c2luZ2xlIGdlbmVyYXRvciBvYmplY3QuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0
byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHNrZWxldG9uCisgKiAgICAg
ICAgICAgIFRoZSBza2VsZXRvbiBpcyBhIHBhdHRlcm4gY29udGFpbmluZyBvbmx5IHRoZSB2YXJp
YWJsZSBmaWVsZHMuCisgKiAgICAgICAgICAgIEZvciBleGFtcGxlLCAiTU1NZGQiIGFuZCAibW1o
aCIgYXJlIHNrZWxldG9ucy4KKyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBza2VsZXRv
bgorICogQHBhcmFtIG9wdGlvbnMKKyAqICAgICAgICAgICAgT3B0aW9ucyBmb3IgZm9yY2luZyB0
aGUgbGVuZ3RoIG9mIHNwZWNpZmllZCBmaWVsZHMgaW4gdGhlCisgKiAgICAgICAgICAgIHJldHVy
bmVkIHBhdHRlcm4gdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNrZWxldG9uICh3aGVuIHRoaXMKKyAq
ICAgICAgICAgICAgd291bGQgbm90IGhhcHBlbiBvdGhlcndpc2UpLiBGb3IgZGVmYXVsdCBiZWhh
dmlvciwgdXNlCisgKiAgICAgICAgICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TLgorICogQHBh
cmFtIGJlc3RQYXR0ZXJuCisgKiAgICAgICAgICAgIFRoZSBiZXN0IHBhdHRlcm4gZm91bmQgZnJv
bSB0aGUgZ2l2ZW4gc2tlbGV0b24uCisgKiBAcGFyYW0gY2FwYWNpdHkKKyAqICAgICAgICAgICAg
dGhlIGNhcGFjaXR5IG9mIGJlc3RQYXR0ZXJuLgorICogQHBhcmFtIHBFcnJvckNvZGUKKyAqICAg
ICAgICAgICAgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGlj
YXRlIGEKKyAqICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisg
KiBAcmV0dXJuIHRoZSBsZW5ndGggb2YgYmVzdFBhdHRlcm4uCisgKiBAc3RhYmxlIElDVSA0LjQK
KyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3VkYXRwZ19nZXRCZXN0UGF0dGVybldp
dGhPcHRpb25zKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMyX3QgbGVuZ3Ro
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVybk1hdGNo
T3B0aW9ucyBvcHRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVUNoYXIg
KmJlc3RQYXR0ZXJuLCBpbnQzMl90IGNhcGFjaXR5LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIEdldCBhIHVuaXF1
ZSBza2VsZXRvbiBmcm9tIGEgZ2l2ZW4gcGF0dGVybi4gRm9yIGV4YW1wbGUsCisgICogYm90aCAi
TU1NLWRkIiBhbmQgImRkL01NTSIgcHJvZHVjZSB0aGUgc2tlbGV0b24gIk1NTWRkIi4KKyAgKiAK
KyAgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBh
dHRlcm5HZW5lcmF0b3I6CisgICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdo
aWNoIGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICAqIHJhdGhlciB0aGFu
IGNyZWF0aW5nIG9uZSBmb3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICAqIENvbnNlY3V0aXZlIGNh
bGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICAqIGJ1dCB0
aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmdsZSBnZW5l
cmF0b3Igb2JqZWN0LgorICAqCisgICogQHBhcmFtIGR0cGcgICAgIGEgcG9pbnRlciB0byBVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBwYXJhbSBwYXR0ZXJuICBpbnB1dCBwYXR0ZXJu
LCBzdWNoIGFzICJkZC9NTU0iLgorICAqIEBwYXJhbSBsZW5ndGggICB0aGUgbGVuZ3RoIG9mIHBh
dHRlcm4uCisgICogQHBhcmFtIHNrZWxldG9uIHN1Y2ggYXMgIk1NTWRkIgorICAqIEBwYXJhbSBj
YXBhY2l0eSB0aGUgY2FwYWNpdHkgb2Ygc2tlbGV0b24uCisgICogQHBhcmFtIHBFcnJvckNvZGUg
YSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAg
KiAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICAq
IEByZXR1cm4gdGhlIGxlbmd0aCBvZiBza2VsZXRvbi4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAg
Ki8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQyCit1ZGF0cGdfZ2V0U2tlbGV0b24oVURhdGVU
aW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hh
ciAqcGF0dGVybiwgaW50MzJfdCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgVUNoYXIgKnNr
ZWxldG9uLCBpbnQzMl90IGNhcGFjaXR5LAorICAgICAgICAgICAgICAgICAgIFVFcnJvckNvZGUg
KnBFcnJvckNvZGUpOworCisvKioKKyAqIEdldCBhIHVuaXF1ZSBiYXNlIHNrZWxldG9uIGZyb20g
YSBnaXZlbiBwYXR0ZXJuLiBUaGlzIGlzIHRoZSBzYW1lCisgKiBhcyB0aGUgc2tlbGV0b24sIGV4
Y2VwdCB0aGF0IGRpZmZlcmVuY2VzIGluIGxlbmd0aCBhcmUgbWluaW1pemVkIHNvCisgKiBhcyB0
byBvbmx5IHByZXNlcnZlIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gc3RyaW5nIGFuZCBudW1lcmlj
IGZvcm0uIFNvCisgKiBmb3IgZXhhbXBsZSwgYm90aCAiTU1NLWRkIiBhbmQgImQvTU1NIiBwcm9k
dWNlIHRoZSBza2VsZXRvbiAiTU1NZCIKKyAqIChub3RpY2UgdGhlIHNpbmdsZSBkKS4KKyAqCisg
KiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2gg
aXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhhbiBjcmVh
dGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNhbGxzIHRv
IHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRoaXMgZnVu
Y3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBv
YmplY3QuCisgKgorICogQHBhcmFtIGR0cGcgICAgIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0
ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBhdHRlcm4gIGlucHV0IHBhdHRlcm4sIHN1Y2ggYXMg
ImRkL01NTSIuCisgKiBAcGFyYW0gbGVuZ3RoICAgdGhlIGxlbmd0aCBvZiBwYXR0ZXJuLgorICog
QHBhcmFtIGJhc2VTa2VsZXRvbiBzdWNoIGFzICJNZCIKKyAqIEBwYXJhbSBjYXBhY2l0eSB0aGUg
Y2FwYWNpdHkgb2YgYmFzZSBza2VsZXRvbi4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRl
ciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAg
ICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0
aGUgbGVuZ3RoIG9mIGJhc2VTa2VsZXRvbi4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NU
QUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRhdHBnX2dldEJhc2VTa2VsZXRvbihVRGF0ZVRpbWVQ
YXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hh
ciAqcGF0dGVybiwgaW50MzJfdCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgIFVDaGFy
ICpiYXNlU2tlbGV0b24sIGludDMyX3QgY2FwYWNpdHksCisgICAgICAgICAgICAgICAgICAgICAg
IFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEFkZHMgYSBwYXR0ZXJuIHRvIHRo
ZSBnZW5lcmF0b3IuIElmIHRoZSBwYXR0ZXJuIGhhcyB0aGUgc2FtZSBza2VsZXRvbiBhcworICog
YW4gZXhpc3RpbmcgcGF0dGVybiwgYW5kIHRoZSBvdmVycmlkZSBwYXJhbWV0ZXIgaXMgc2V0LCB0
aGVuIHRoZSBwcmV2aW91cworICogdmFsdWUgaXMgb3ZlcnJpZGVuLiBPdGhlcndpc2UsIHRoZSBw
cmV2aW91cyB2YWx1ZSBpcyByZXRhaW5lZC4gSW4gZWl0aGVyCisgKiBjYXNlLCB0aGUgY29uZmxp
Y3Rpbmcgc3RhdHVzIGlzIHNldCBhbmQgcHJldmlvdXMgdmFsZSBpcyBzdG9yZWQgaW4gCisgKiBj
b25mbGljdGluZyBwYXR0ZXJuLgorICogPHA+CisgKiBOb3RlIHRoYXQgc2luZ2xlLWZpZWxkIHBh
dHRlcm5zIChsaWtlICJNTU0iKSBhcmUgYXV0b21hdGljYWxseSBhZGRlZCwgYW5kCisgKiBkb24n
dCBuZWVkIHRvIGJlIGFkZGVkIGV4cGxpY2l0bHkhCisgKgorICogQHBhcmFtIGR0cGcgICAgIGEg
cG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBhdHRlcm4g
IGlucHV0IHBhdHRlcm4sIHN1Y2ggYXMgImRkL01NTSIKKyAqIEBwYXJhbSBwYXR0ZXJuTGVuZ3Ro
IHRoZSBsZW5ndGggb2YgcGF0dGVybi4KKyAqIEBwYXJhbSBvdmVycmlkZSAgV2hlbiBleGlzdGlu
ZyB2YWx1ZXMgYXJlIHRvIGJlIG92ZXJyaWRkZW4gdXNlIHRydWUsIAorICogICAgICAgICAgICAg
ICAgICBvdGhlcndpc2UgdXNlIGZhbHNlLgorICogQHBhcmFtIGNvbmZsaWN0aW5nUGF0dGVybiAg
UHJldmlvdXMgcGF0dGVybiB3aXRoIHRoZSBzYW1lIHNrZWxldG9uLgorICogQHBhcmFtIGNhcGFj
aXR5IHRoZSBjYXBhY2l0eSBvZiBjb25mbGljdGluZ1BhdHRlcm4uCisgKiBAcGFyYW0gcExlbmd0
aCBhIHBvaW50ZXIgdG8gdGhlIGxlbmd0aCBvZiBjb25mbGljdGluZ1BhdHRlcm4uCisgKiBAcGFy
YW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3Qg
aW5kaWNhdGUgYQorICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rp
b24gY2FsbC4KKyAqIEByZXR1cm4gY29uZmxpY3Rpbmcgc3RhdHVzLiBUaGUgdmFsdWUgY291bGQg
YmUgVURBVFBHX05PX0NPTkZMSUNULCAKKyAqICAgICAgICAgICAgICAgICAgVURBVFBHX0JBU0Vf
Q09ORkxJQ1Qgb3IgVURBVFBHX0NPTkZMSUNULgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1Vf
U1RBQkxFIFVEYXRlVGltZVBhdHRlcm5Db25mbGljdCBVX0VYUE9SVDIKK3VkYXRwZ19hZGRQYXR0
ZXJuKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICBj
b25zdCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBwYXR0ZXJuTGVuZ3RoLAorICAgICAgICAgICAg
ICAgICAgVUJvb2wgb3ZlcnJpZGUsCisgICAgICAgICAgICAgICAgICBVQ2hhciAqY29uZmxpY3Rp
bmdQYXR0ZXJuLCBpbnQzMl90IGNhcGFjaXR5LCBpbnQzMl90ICpwTGVuZ3RoLAorICAgICAgICAg
ICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIEFuIEFwcGVuZEl0
ZW0gZm9ybWF0IGlzIGEgcGF0dGVybiB1c2VkIHRvIGFwcGVuZCBhIGZpZWxkIGlmIHRoZXJlIGlz
IG5vCisgICogZ29vZCBtYXRjaC4gRm9yIGV4YW1wbGUsIHN1cHBvc2UgdGhhdCB0aGUgaW5wdXQg
c2tlbGV0b24gaXMgIkd5eXl5TU1NZCIsCisgICogYW5kIHRoZXJlIGlzIG5vIG1hdGNoaW5nIHBh
dHRlcm4gaW50ZXJuYWxseSwgYnV0IHRoZXJlIGlzIGEgcGF0dGVybgorICAqIG1hdGNoaW5nICJ5
eXl5TU1NZCIsIHNheSAiZC1NTS15eXl5Ii4gVGhlbiB0aGF0IHBhdHRlcm4gaXMgdXNlZCwgcGx1
cyB0aGUKKyAgKiBHLiBUaGUgd2F5IHRoZXNlIHR3byBhcmUgY29uam9pbmVkIGlzIGJ5IHVzaW5n
IHRoZSBBcHBlbmRJdGVtRm9ybWF0IGZvciBHCisgICogKGVyYSkuIFNvIGlmIHRoYXQgdmFsdWUg
aXMsIHNheSAiezB9LCB7MX0iIHRoZW4gdGhlIGZpbmFsIHJlc3VsdGluZworICAqIHBhdHRlcm4g
aXMgImQtTU0teXl5eSwgRyIuCisgICogPHA+CisgICogVGhlcmUgYXJlIGFjdHVhbGx5IHRocmVl
IGF2YWlsYWJsZSB2YXJpYWJsZXM6IHswfSBpcyB0aGUgcGF0dGVybiBzbyBmYXIsCisgICogezF9
IGlzIHRoZSBlbGVtZW50IHdlIGFyZSBhZGRpbmcsIGFuZCB7Mn0gaXMgdGhlIG5hbWUgb2YgdGhl
IGVsZW1lbnQuCisgICogPHA+CisgICogVGhpcyByZWZsZWN0cyB0aGUgd2F5IHRoYXQgdGhlIENM
RFIgZGF0YSBpcyBvcmdhbml6ZWQuCisgICoKKyAgKiBAcGFyYW0gZHRwZyAgIGEgcG9pbnRlciB0
byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBwYXJhbSBmaWVsZCAgVURhdGVUaW1l
UGF0dGVybkZpZWxkLCBzdWNoIGFzIFVEQVRQR19FUkFfRklFTEQKKyAgKiBAcGFyYW0gdmFsdWUg
IHBhdHRlcm4sIHN1Y2ggYXMgInswfSwgezF9IgorICAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0
aCBvZiB2YWx1ZS4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIHZvaWQgVV9F
WFBPUlQyCit1ZGF0cGdfc2V0QXBwZW5kSXRlbUZvcm1hdChVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVybkZp
ZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnZhbHVl
LCBpbnQzMl90IGxlbmd0aCk7CisKKy8qKgorICogR2V0dGVyIGNvcnJlc3BvbmRpbmcgdG8gc2V0
QXBwZW5kSXRlbUZvcm1hdC4gVmFsdWVzIGJlbG93IDAgb3IgYXQgb3IKKyAqIGFib3ZlIFVEQVRQ
R19GSUVMRF9DT1VOVCBhcmUgaWxsZWdhbCBhcmd1bWVudHMuCisgKgorICogQHBhcmFtIGR0cGcg
ICBBIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBmaWVs
ZCAgVURhdGVUaW1lUGF0dGVybkZpZWxkLCBzdWNoIGFzIFVEQVRQR19FUkFfRklFTEQKKyAqIEBw
YXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwgcmVjZWl2ZSB0aGUgbGVuZ3RoIG9mIGFw
cGVuZEl0ZW1Gb3JtYXQuCisgKiBAcmV0dXJuIGFwcGVuZEl0ZW1Gb3JtYXQgZm9yIGZpZWxkLgor
ICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9FWFBPUlQy
Cit1ZGF0cGdfZ2V0QXBwZW5kSXRlbUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVybkZp
ZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MzJfdCAqcExlbmd0aCk7
CisKKy8qKgorICAgKiBTZXQgdGhlIG5hbWUgb2YgZmllbGQsIGVnICJlcmEiIGluIEVuZ2xpc2gg
Zm9yIEVSQS4gVGhlc2UgYXJlIG9ubHkKKyAgICogdXNlZCBpZiB0aGUgY29ycmVzcG9uZGluZyBB
cHBlbmRJdGVtRm9ybWF0IGlzIHVzZWQsIGFuZCBpZiBpdCBjb250YWlucyBhCisgICAqIHsyfSB2
YXJpYWJsZS4KKyAgICogPHA+CisgICAqIFRoaXMgcmVmbGVjdHMgdGhlIHdheSB0aGF0IHRoZSBD
TERSIGRhdGEgaXMgb3JnYW5pemVkLgorICAgKgorICAgKiBAcGFyYW0gZHRwZyAgIGEgcG9pbnRl
ciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAgKiBAcGFyYW0gZmllbGQgIFVEYXRl
VGltZVBhdHRlcm5GaWVsZAorICAgKiBAcGFyYW0gdmFsdWUgIG5hbWUgZm9yIHRoZSBmaWVsZC4K
KyAgICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIHZhbHVlLgorICAgKiBAc3RhYmxlIElD
VSAzLjgKKyAgICovCitVX1NUQUJMRSB2b2lkIFVfRVhQT1JUMgordWRhdHBnX3NldEFwcGVuZEl0
ZW1OYW1lKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgVURhdGVUaW1lUGF0dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IFVDaGFyICp2YWx1ZSwgaW50MzJfdCBsZW5ndGgpOworCisvKioKKyAqIEdl
dHRlciBjb3JyZXNwb25kaW5nIHRvIHNldEFwcGVuZEl0ZW1OYW1lcy4gVmFsdWVzIGJlbG93IDAg
b3IgYXQgb3IgYWJvdmUKKyAqIFVEQVRQR19GSUVMRF9DT1VOVCBhcmUgaWxsZWdhbCBhcmd1bWVu
dHMuCisgKgorICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvci4KKyAqIEBwYXJhbSBmaWVsZCAgVURhdGVUaW1lUGF0dGVybkZpZWxkLCBzdWNoIGFz
IFVEQVRQR19FUkFfRklFTEQKKyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwg
cmVjZWl2ZSB0aGUgbGVuZ3RoIG9mIHRoZSBuYW1lIGZvciBmaWVsZC4KKyAqIEByZXR1cm4gbmFt
ZSBmb3IgZmllbGQKKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBjb25zdCBVQ2hh
ciAqIFVfRVhQT1JUMgordWRhdHBnX2dldEFwcGVuZEl0ZW1OYW1lKGNvbnN0IFVEYXRlVGltZVBh
dHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1l
UGF0dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBM
ZW5ndGgpOworCisvKioKKyAqIFRoZSBkYXRlIHRpbWUgZm9ybWF0IGlzIGEgbWVzc2FnZSBmb3Jt
YXQgcGF0dGVybiB1c2VkIHRvIGNvbXBvc2UgZGF0ZSBhbmQKKyAqIHRpbWUgcGF0dGVybnMuIFRo
ZSBkZWZhdWx0IHZhbHVlIGlzICJ7MH0gezF9Iiwgd2hlcmUgezB9IHdpbGwgYmUgcmVwbGFjZWQK
KyAqIGJ5IHRoZSBkYXRlIHBhdHRlcm4gYW5kIHsxfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSB0
aW1lIHBhdHRlcm4uCisgKiA8cD4KKyAqIFRoaXMgaXMgdXNlZCB3aGVuIHRoZSBpbnB1dCBza2Vs
ZXRvbiBjb250YWlucyBib3RoIGRhdGUgYW5kIHRpbWUgZmllbGRzLAorICogYnV0IHRoZXJlIGlz
IG5vdCBhIGNsb3NlIG1hdGNoIGFtb25nIHRoZSBhZGRlZCBwYXR0ZXJucy4gRm9yIGV4YW1wbGUs
CisgKiBzdXBwb3NlIHRoYXQgdGhpcyBvYmplY3Qgd2FzIGNyZWF0ZWQgYnkgYWRkaW5nICJkZC1N
TU0iIGFuZCAiaGg6bW0iLCBhbmQKKyAqIGl0cyBkYXRldGltZUZvcm1hdCBpcyB0aGUgZGVmYXVs
dCAiezB9IHsxfSIuIFRoZW4gaWYgdGhlIGlucHV0IHNrZWxldG9uCisgKiBpcyAiTU1NZGhtbSIs
IHRoZXJlIGlzIG5vdCBhbiBleGFjdCBtYXRjaCwgc28gdGhlIGlucHV0IHNrZWxldG9uIGlzCisg
KiBicm9rZW4gdXAgaW50byB0d28gY29tcG9uZW50cyAiTU1NZCIgYW5kICJobW0iLiBUaGVyZSBh
cmUgY2xvc2UgbWF0Y2hlcworICogZm9yIHRob3NlIHR3byBza2VsZXRvbnMsIHNvIHRoZSByZXN1
bHQgaXMgcHV0IHRvZ2V0aGVyIHdpdGggdGhpcyBwYXR0ZXJuLAorICogcmVzdWx0aW5nIGluICJk
LU1NTSBoOm1tIi4KKyAqCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0
dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBkdEZvcm1hdAorICogICAgICAgICAgICBtZXNzYWdl
IGZvcm1hdCBwYXR0ZXJuLCBoZXJlIHswfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSBkYXRlCisg
KiAgICAgICAgICAgIHBhdHRlcm4gYW5kIHsxfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSB0aW1l
IHBhdHRlcm4uCisgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGggb2YgZHRGb3JtYXQuCisgKiBA
c3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19zZXRE
YXRlVGltZUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpkdEZvcm1hdCwgaW50MzJfdCBsZW5n
dGgpOworCisvKioKKyAqIEdldHRlciBjb3JyZXNwb25kaW5nIHRvIHNldERhdGVUaW1lRm9ybWF0
LgorICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ci4KKyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwgcmVjZWl2ZSB0aGUgbGVu
Z3RoIG9mIHRoZSBmb3JtYXQKKyAqIEByZXR1cm4gZGF0ZVRpbWVGb3JtYXQuCisgKiBAc3RhYmxl
IElDVSAzLjgKKyAqLworVV9TVEFCTEUgY29uc3QgVUNoYXIgKiBVX0VYUE9SVDIKK3VkYXRwZ19n
ZXREYXRlVGltZUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAor
ICAgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBMZW5ndGgpOworCisvKioKKyAqIFRo
ZSBkZWNpbWFsIHZhbHVlIGlzIHVzZWQgaW4gZm9ybWF0dGluZyBmcmFjdGlvbnMgb2Ygc2Vjb25k
cy4gSWYgdGhlCisgKiBza2VsZXRvbiBjb250YWlucyBmcmFjdGlvbmFsIHNlY29uZHMsIHRoZW4g
dGhpcyBpcyB1c2VkIHdpdGggdGhlCisgKiBmcmFjdGlvbmFsIHNlY29uZHMuIEZvciBleGFtcGxl
LCBzdXBwb3NlIHRoYXQgdGhlIGlucHV0IHBhdHRlcm4gaXMKKyAqICJoaG1tc3NTU1NTIiwgYW5k
IHRoZSBiZXN0IG1hdGNoaW5nIHBhdHRlcm4gaW50ZXJuYWxseSBpcyAiSDptbTpzcyIsIGFuZAor
ICogdGhlIGRlY2ltYWwgc3RyaW5nIGlzICIsIi4gVGhlbiB0aGUgcmVzdWx0aW5nIHBhdHRlcm4g
aXMgbW9kaWZpZWQgdG8gYmUKKyAqICJIOm1tOnNzLFNTU1MiCisgKgorICogQHBhcmFtIGR0cGcg
YSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gZGVjaW1h
bAorICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIGRlY2ltYWwuCisgKiBAc3RhYmxlIElD
VSAzLjgKKyAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19zZXREZWNpbWFsKFVE
YXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICBjb25zdCBV
Q2hhciAqZGVjaW1hbCwgaW50MzJfdCBsZW5ndGgpOworCisvKioKKyAqIEdldHRlciBjb3JyZXNw
b25kaW5nIHRvIHNldERlY2ltYWwuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBV
RGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBMZW5ndGggQSBwb2ludGVyIHRo
YXQgd2lsbCByZWNlaXZlIHRoZSBsZW5ndGggb2YgdGhlIGRlY2ltYWwgc3RyaW5nLgorICogQHJl
dHVybiBjb3JyZXNwb25kaW5nIHRvIHRoZSBkZWNpbWFsIHBvaW50LgorICogQHN0YWJsZSBJQ1Ug
My44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9FWFBPUlQyCit1ZGF0cGdfZ2V0RGVj
aW1hbChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAg
ICAgICAgaW50MzJfdCAqcExlbmd0aCk7CisKKy8qKgorICogQWRqdXN0cyB0aGUgZmllbGQgdHlw
ZXMgKHdpZHRoIGFuZCBzdWJ0eXBlKSBvZiBhIHBhdHRlcm4gdG8gbWF0Y2ggd2hhdCBpcworICog
aW4gYSBza2VsZXRvbi4gVGhhdCBpcywgaWYgeW91IHN1cHBseSBhIHBhdHRlcm4gbGlrZSAiZC1N
IEg6bSIsIGFuZCBhCisgKiBza2VsZXRvbiBvZiAiTU1NTWRkaGhtbSIsIHRoZW4gdGhlIGlucHV0
IHBhdHRlcm4gaXMgYWRqdXN0ZWQgdG8gYmUKKyAqICJkZC1NTU1NIGhoOm1tIi4gVGhpcyBpcyB1
c2VkIGludGVybmFsbHkgdG8gZ2V0IHRoZSBiZXN0IG1hdGNoIGZvciB0aGUKKyAqIGlucHV0IHNr
ZWxldG9uLCBidXQgY2FuIGFsc28gYmUgdXNlZCBleHRlcm5hbGx5LgorICoKKyAqIE5vdGUgdGhh
dCB0aGlzIGZ1bmN0aW9uIHVzZXMgYSBub24tY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
cjoKKyAqIEl0IHVzZXMgYSBzdGF0ZWZ1bCBwYXR0ZXJuIHBhcnNlciB3aGljaCBpcyBzZXQgdXAg
Zm9yIGVhY2ggZ2VuZXJhdG9yIG9iamVjdCwKKyAqIHJhdGhlciB0aGFuIGNyZWF0aW5nIG9uZSBm
b3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICogQ29uc2VjdXRpdmUgY2FsbHMgdG8gdGhpcyBmdW5j
dGlvbiBkbyBub3QgYWZmZWN0IGVhY2ggb3RoZXIsCisgKiBidXQgdGhpcyBmdW5jdGlvbiBjYW5u
b3QgYmUgdXNlZCBjb25jdXJyZW50bHkgb24gYSBzaW5nbGUgZ2VuZXJhdG9yIG9iamVjdC4KKyAq
CisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4K
KyAqIEBwYXJhbSBwYXR0ZXJuIElucHV0IHBhdHRlcm4KKyAqIEBwYXJhbSBwYXR0ZXJuTGVuZ3Ro
IHRoZSBsZW5ndGggb2YgaW5wdXQgcGF0dGVybi4KKyAqIEBwYXJhbSBza2VsZXRvbgorICogQHBh
cmFtIHNrZWxldG9uTGVuZ3RoIHRoZSBsZW5ndGggb2YgaW5wdXQgc2tlbGV0b24uCisgKiBAcGFy
YW0gZGVzdCAgcGF0dGVybiBhZGp1c3RlZCB0byBtYXRjaCB0aGUgc2tlbGV0b24gZmllbGRzIHdp
ZHRocyBhbmQgc3VidHlwZXMuCisgKiBAcGFyYW0gZGVzdENhcGFjaXR5IHRoZSBjYXBhY2l0eSBv
ZiBkZXN0LgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2Rl
IHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgZmFpbHVyZSBi
ZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0dXJuIHRoZSBsZW5ndGggb2YgZGVzdC4K
KyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRh
dHBnX3JlcGxhY2VGaWVsZFR5cGVzKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMyX3QgcGF0
dGVybkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0
b24sIGludDMyX3Qgc2tlbGV0b25MZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgVUNo
YXIgKmRlc3QsIGludDMyX3QgZGVzdENhcGFjaXR5LAorICAgICAgICAgICAgICAgICAgICAgICAg
IFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEFkanVzdHMgdGhlIGZpZWxkIHR5
cGVzICh3aWR0aCBhbmQgc3VidHlwZSkgb2YgYSBwYXR0ZXJuIHRvIG1hdGNoIHdoYXQgaXMKKyAq
IGluIGEgc2tlbGV0b24uIFRoYXQgaXMsIGlmIHlvdSBzdXBwbHkgYSBwYXR0ZXJuIGxpa2UgImQt
TSBIOm0iLCBhbmQgYQorICogc2tlbGV0b24gb2YgIk1NTU1kZGhobW0iLCB0aGVuIHRoZSBpbnB1
dCBwYXR0ZXJuIGlzIGFkanVzdGVkIHRvIGJlCisgKiAiZGQtTU1NTSBoaDptbSIuIFRoaXMgaXMg
dXNlZCBpbnRlcm5hbGx5IHRvIGdldCB0aGUgYmVzdCBtYXRjaCBmb3IgdGhlCisgKiBpbnB1dCBz
a2VsZXRvbiwgYnV0IGNhbiBhbHNvIGJlIHVzZWQgZXh0ZXJuYWxseS4KKyAqCisgKiBOb3RlIHRo
YXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0
b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2ggaXMgc2V0IHVw
IGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUg
Zm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNhbGxzIHRvIHRoaXMgZnVu
Y3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRoaXMgZnVuY3Rpb24gY2Fu
bm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBvYmplY3QuCisg
KgorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3Iu
CisgKiBAcGFyYW0gcGF0dGVybiBJbnB1dCBwYXR0ZXJuCisgKiBAcGFyYW0gcGF0dGVybkxlbmd0
aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHBhdHRlcm4uCisgKiBAcGFyYW0gc2tlbGV0b24KKyAqIEBw
YXJhbSBza2VsZXRvbkxlbmd0aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHNrZWxldG9uLgorICogQHBh
cmFtIG9wdGlvbnMKKyAqICAgICAgICAgICAgT3B0aW9ucyBjb250cm9sbGluZyB3aGV0aGVyIHRo
ZSBsZW5ndGggb2Ygc3BlY2lmaWVkIGZpZWxkcyBpbiB0aGUKKyAqICAgICAgICAgICAgcGF0dGVy
biBhcmUgYWRqdXN0ZWQgdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNrZWxldG9uICh3aGVuIHRoaXMK
KyAqICAgICAgICAgICAgd291bGQgbm90IGhhcHBlbiBvdGhlcndpc2UpLiBGb3IgZGVmYXVsdCBi
ZWhhdmlvciwgdXNlCisgKiAgICAgICAgICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TLgorICog
QHBhcmFtIGRlc3QgIHBhdHRlcm4gYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHNrZWxldG9uIGZpZWxk
cyB3aWR0aHMgYW5kIHN1YnR5cGVzLgorICogQHBhcmFtIGRlc3RDYXBhY2l0eSB0aGUgY2FwYWNp
dHkgb2YgZGVzdC4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9y
Q29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAgICAgICAgICAgIGZhaWx1
cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGRl
c3QuCisgKiBAc3RhYmxlIElDVSA0LjQKKyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIK
K3VkYXRwZ19yZXBsYWNlRmllbGRUeXBlc1dpdGhPcHRpb25zKFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBV
Q2hhciAqcGF0dGVybiwgaW50MzJfdCBwYXR0ZXJuTGVuZ3RoLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IHNrZWxldG9u
TGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0
dGVybk1hdGNoT3B0aW9ucyBvcHRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgVUNoYXIgKmRlc3QsIGludDMyX3QgZGVzdENhcGFjaXR5LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICog
UmV0dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxsIHRoZSBza2VsZXRvbnMgaW4gY2Fub25p
Y2FsIGZvcm0uCisgKiBDYWxsIHVkYXRwZ19nZXRQYXR0ZXJuRm9yU2tlbGV0b24oKSB0byBnZXQg
dGhlIGNvcnJlc3BvbmRpbmcgcGF0dGVybi4KKyAqIAorICogQHBhcmFtIGR0cGcgYSBwb2ludGVy
IHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBv
aW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICogICAg
ICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbAorICogQHJldHVy
biBhIFVFbnVtZXJhdGlvbiBsaXN0IG9mIGFsbCB0aGUgc2tlbGV0b25zCisgKiAgICAgICAgIFRo
ZSBjYWxsZXIgbXVzdCBjbG9zZSB0aGUgb2JqZWN0LgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8K
K1VfU1RBQkxFIFVFbnVtZXJhdGlvbiAqIFVfRVhQT1JUMgordWRhdHBnX29wZW5Ta2VsZXRvbnMo
Y29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywgVUVycm9yQ29kZSAqcEVycm9y
Q29kZSk7CisKKy8qKgorICogUmV0dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxsIHRoZSBi
YXNlIHNrZWxldG9ucyBpbiBjYW5vbmljYWwgZm9ybS4KKyAqCisgKiBAcGFyYW0gZHRwZyBhIHBv
aW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwRXJyb3JDb2Rl
IGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisg
KiAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1
cm4gYSBVRW51bWVyYXRpb24gbGlzdCBvZiBhbGwgdGhlIGJhc2Ugc2tlbGV0b25zCisgKiAgICAg
ICAgICAgICBUaGUgY2FsbGVyIG11c3QgY2xvc2UgdGhlIG9iamVjdC4KKyAqIEBzdGFibGUgSUNV
IDMuOAorICovCitVX1NUQUJMRSBVRW51bWVyYXRpb24gKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVu
QmFzZVNrZWxldG9ucyhjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLCBVRXJy
b3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBHZXQgdGhlIHBhdHRlcm4gY29ycmVzcG9u
ZGluZyB0byBhIGdpdmVuIHNrZWxldG9uLgorICogCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIg
dG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBza2VsZXRvbiAKKyAqIEBw
YXJhbSBza2VsZXRvbkxlbmd0aCBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2Ygc2tlbGV0b24uCisg
KiBAcGFyYW0gcExlbmd0aCBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2YgcmV0dXJuIHBhdHRlcm4u
CisgKiBAcmV0dXJuIHBhdHRlcm4gY29ycmVzcG9uZGluZyB0byBhIGdpdmVuIHNrZWxldG9uLgor
ICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9FWFBPUlQy
Cit1ZGF0cGdfZ2V0UGF0dGVybkZvclNrZWxldG9uKGNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpz
a2VsZXRvbiwgaW50MzJfdCBza2VsZXRvbkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50MzJfdCAqcExlbmd0aCk7CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2ljdS91bmljb2RlL3VudW1zeXMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pY3UvdW5pY29kZS91bnVtc3lzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDI2NDYzZTgxYTVkZmZiOWYzNzk5
Nzc5NWIwNzVkNzUzOGM2NjYyMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pY3UvdW5pY29kZS91bnVtc3lzLmgKQEAgLTAsMCArMSwxNzQgQEAKKy8qCisqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKgorKiBDb3B5cmlnaHQgKEMpIDIwMTMsIEludGVybmF0
aW9uYWwgQnVzaW5lc3MgTWFjaGluZXMKKyogQ29ycG9yYXRpb24gYW5kIG90aGVycy4gQWxsIFJp
Z2h0cyBSZXNlcnZlZC4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisqLworCisj
aWZuZGVmIFVOVU1TWVNfSAorI2RlZmluZSBVTlVNU1lTX0gKKworI2luY2x1ZGUgInVuaWNvZGUv
dXR5cGVzLmgiCisKKyNpZiAhVUNPTkZJR19OT19GT1JNQVRUSU5HCisKKyNpbmNsdWRlICJ1bmlj
b2RlL3VlbnVtLmgiCisjaW5jbHVkZSAidW5pY29kZS9sb2NhbHBvaW50ZXIuaCIKKworLyoqCisg
KiBcZmlsZQorICogXGJyaWVmIEMgQVBJOiBVTnVtYmVyaW5nU3lzdGVtLCBpbmZvcm1hdGlvbiBh
Ym91dCBudW1iZXJpbmcgc3lzdGVtcworICoKKyAqIERlZmluZXMgbnVtYmVyaW5nIHN5c3RlbXMu
IEEgbnVtYmVyaW5nIHN5c3RlbSBkZXNjcmliZXMgdGhlIHNjaGVtZSBieSB3aGljaCAKKyAqIG51
bWJlcnMgYXJlIHRvIGJlIHByZXNlbnRlZCB0byB0aGUgZW5kIHVzZXIuIEluIGl0cyBzaW1wbGVz
dCBmb3JtLCBhIG51bWJlcmluZworICogc3lzdGVtIGRlc2NyaWJlcyB0aGUgc2V0IG9mIGRpZ2l0
IGNoYXJhY3RlcnMgdGhhdCBhcmUgdG8gYmUgdXNlZCB0byBkaXNwbGF5CisgKiBudW1iZXJzLCBz
dWNoIGFzIFdlc3Rlcm4gZGlnaXRzLCBUaGFpIGRpZ2l0cywgQXJhYmljLUluZGljIGRpZ2l0cywg
ZXRjLiwgaW4gYQorICogcG9zaXRpb25hbCBudW1iZXJpbmcgc3lzdGVtIHdpdGggYSBzcGVjaWZp
ZWQgcmFkaXggKHR5cGljYWxseSAxMCkuCisgKiBNb3JlIGNvbXBsaWNhdGVkIG51bWJlcmluZyBz
eXN0ZW1zIGFyZSBhbGdvcml0aG1pYyBpbiBuYXR1cmUsIGFuZCByZXF1aXJlIHVzZQorICogb2Yg
YW4gUkJORiBmb3JtYXR0ZXIgKHJ1bGUgYmFzZWQgbnVtYmVyIGZvcm1hdHRlciksIGluIG9yZGVy
IHRvIGNhbGN1bGF0ZQorICogdGhlIGNoYXJhY3RlcnMgdG8gYmUgZGlzcGxheWVkIGZvciBhIGdp
dmVuIG51bWJlci4gRXhhbXBsZXMgb2YgYWxnb3JpdGhtaWMKKyAqIG51bWJlcmluZyBzeXN0ZW1z
IGluY2x1ZGUgUm9tYW4gbnVtZXJhbHMsIENoaW5lc2UgbnVtZXJhbHMsIGFuZCBIZWJyZXcgbnVt
ZXJhbHMuCisgKiBGb3JtYXR0aW5nIHJ1bGVzIGZvciBtYW55IGNvbW1vbmx5IHVzZWQgbnVtYmVy
aW5nIHN5c3RlbXMgYXJlIGluY2x1ZGVkIGluCisgKiB0aGUgSUNVIHBhY2thZ2UsIGJhc2VkIG9u
IHRoZSBudW1iZXJpbmcgc3lzdGVtIHJ1bGVzIGRlZmluZWQgaW4gQ0xEUi4KKyAqIEFsdGVybmF0
ZSBudW1iZXJpbmcgc3lzdGVtcyBjYW4gYmUgc3BlY2lmaWVkIHRvIGEgbG9jYWxlIGJ5IHVzaW5n
IHRoZQorICogbnVtYmVycyBsb2NhbGUga2V5d29yZC4KKyAqLworCisjaWZuZGVmIFVfSElERV9E
UkFGVF9BUEkKKworLyoqCisgKiBPcGFxdWUgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgZm9yIHVz
ZSBpbiBDIHByb2dyYW1zLgorICogQGRyYWZ0IElDVSA1MgorICovCitzdHJ1Y3QgVU51bWJlcmlu
Z1N5c3RlbTsKK3R5cGVkZWYgc3RydWN0IFVOdW1iZXJpbmdTeXN0ZW0gVU51bWJlcmluZ1N5c3Rl
bTsgIC8qKjwgQyB0eXBlZGVmIGZvciBzdHJ1Y3QgVU51bWJlcmluZ1N5c3RlbS4gQGRyYWZ0IElD
VSA1MiAqLworCisvKioKKyAqIE9wZW5zIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgdXNpbmcg
dGhlIGRlZmF1bHQgbnVtYmVyaW5nIHN5c3RlbSBmb3IgdGhlIHNwZWNpZmllZAorICogbG9jYWxl
LgorICogQHBhcmFtIGxvY2FsZSAgICBUaGUgbG9jYWxlIGZvciB3aGljaCB0aGUgZGVmYXVsdCBu
dW1iZXJpbmcgc3lzdGVtIHNob3VsZCBiZSBvcGVuZWQuCisgKiBAcGFyYW0gc3RhdHVzICAgIEEg
cG9pbnRlciB0byBhIFVFcnJvckNvZGUgdG8gcmVjZWl2ZSBhbnkgZXJyb3JzLiBGb3IgZXhhbXBs
ZSwgdGhpcworICogICAgICAgICAgICAgICAgICBtYXkgYmUgVV9VTlNVUFBPUlRFRF9FUlJPUiBm
b3IgYSBsb2NhbGUgc3VjaCBhcyAiZW5AbnVtYmVycz14eXoiIHRoYXQKKyAqICAgICAgICAgICAg
ICAgICAgc3BlY2lmaWVzIGEgbnVtYmVyaW5nIHN5c3RlbSB1bmtub3duIHRvIElDVS4KKyAqIEBy
ZXR1cm4gICAgICAgICAgQSBVTnVtYmVyaW5nU3lzdGVtIGZvciB0aGUgc3BlY2lmaWVkIGxvY2Fs
ZSwgb3IgTlVMTCBpZiBhbiBlcnJvcgorICogICAgICAgICAgICAgICAgICBvY2N1cnJlZC4KKyAq
IEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVTnVtYmVyaW5nU3lzdGVtICogVV9FWFBPUlQy
Cit1bnVtc3lzX29wZW4oY29uc3QgY2hhciAqbG9jYWxlLCBVRXJyb3JDb2RlICpzdGF0dXMpOwor
CisvKioKKyAqIE9wZW5zIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgdXNpbmcgdGhlIG5hbWUg
b2Ygb25lIG9mIHRoZSBwcmVkZWZpbmVkIG51bWJlcmluZworICogc3lzdGVtcyBzcGVjaWZpZWQg
YnkgQ0xEUiBhbmQga25vd24gdG8gSUNVLCBzdWNoIGFzICJsYXRuIiwgImFyYWJleHQiLCBvciAi
aGFuaWRlYyI7CisgKiB0aGUgZnVsbCBsaXN0IGlzIHJldHVybmVkIGJ5IHVudW1zeXNfb3BlbkF2
YWlsYWJsZU5hbWVzLiBOb3RlIHRoYXQgc29tZSBvZiB0aGUgbmFtZXMKKyAqIGxpc3RlZCBhdCBo
dHRwOi8vdW5pY29kZS5vcmcvcmVwb3MvY2xkci90YWdzL2xhdGVzdC9jb21tb24vYmNwNDcvbnVt
YmVyLnhtbCAtIGUuZy4KKyAqIGRlZmF1bHQsIG5hdGl2ZSwgdHJhZGl0aW9uYWwsIGZpbmFuY2Ug
LSBkbyBub3QgaWRlbnRpZnkgc3BlY2lmaWMgbnVtYmVyaW5nIHN5c3RlbXMsCisgKiBidXQgcmF0
aGVyIGtleSB2YWx1ZXMgdGhhdCBtYXkgb25seSBiZSB1c2VkIGFzIHBhcnQgb2YgYSBsb2NhbGUs
IHdoaWNoIGluIHR1cm4KKyAqIGRlZmluZXMgaG93IHRoZXkgYXJlIG1hcHBlZCB0byBhIHNwZWNp
ZmljIG51bWJlcmluZyBzeXN0ZW0gc3VjaCBhcyAibGF0biIgb3IgImhhbnQiLgorICoKKyAqIEBw
YXJhbSBuYW1lICAgICAgVGhlIG5hbWUgb2YgdGhlIG51bWJlcmluZyBzeXN0ZW0gZm9yIHdoaWNo
IGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QKKyAqICAgICAgICAgICAgICAgICAgc2hvdWxkIGJl
IG9wZW5lZC4KKyAqIEBwYXJhbSBzdGF0dXMgICAgQSBwb2ludGVyIHRvIGEgVUVycm9yQ29kZSB0
byByZWNlaXZlIGFueSBlcnJvcnMuIEZvciBleGFtcGxlLCB0aGlzCisgKiAgICAgICAgICAgICAg
ICAgIG1heSBiZSBVX1VOU1VQUE9SVEVEX0VSUk9SIGZvciBhIG51bWJlcmluZyBzeXN0ZW0gc3Vj
aCBhcyAieHl6IiB0aGF0CisgKiAgICAgICAgICAgICAgICAgIGlzIHVua25vd24gdG8gSUNVLgor
ICogQHJldHVybiAgICAgICAgICBBIFVOdW1iZXJpbmdTeXN0ZW0gZm9yIHRoZSBzcGVjaWZpZWQg
bmFtZSwgb3IgTlVMTCBpZiBhbiBlcnJvcgorICogICAgICAgICAgICAgICAgICBvY2N1cnJlZC4K
KyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVTnVtYmVyaW5nU3lzdGVtICogVV9FWFBP
UlQyCit1bnVtc3lzX29wZW5CeU5hbWUoY29uc3QgY2hhciAqbmFtZSwgVUVycm9yQ29kZSAqc3Rh
dHVzKTsKKworLyoqCisgKiBDbG9zZSBhIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0LiBPbmNlIGNs
b3NlZCBpdCBtYXkgbm8gbG9uZ2VyIGJlIHVzZWQuCisgKiBAcGFyYW0gdW51bXN5cyAgIFRoZSBV
TnVtYmVyaW5nU3lzdGVtIG9iamVjdCB0byBjbG9zZS4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAqLwor
VV9EUkFGVCB2b2lkIFVfRVhQT1JUMgordW51bXN5c19jbG9zZShVTnVtYmVyaW5nU3lzdGVtICp1
bnVtc3lzKTsKKworI2lmIFVfU0hPV19DUExVU1BMVVNfQVBJCitVX05BTUVTUEFDRV9CRUdJTgor
CisvKioKKyAqIFxjbGFzcyBMb2NhbFVOdW1iZXJpbmdTeXN0ZW1Qb2ludGVyCisgKiAiU21hcnQg
cG9pbnRlciIgY2xhc3MsIGNsb3NlcyBhIFVOdW1iZXJpbmdTeXN0ZW0gdmlhIHVudW1zeXNfY2xv
c2UoKS4KKyAqIEZvciBtb3N0IG1ldGhvZHMgc2VlIHRoZSBMb2NhbFBvaW50ZXJCYXNlIGJhc2Ug
Y2xhc3MuCisgKiBAc2VlIExvY2FsUG9pbnRlckJhc2UKKyAqIEBzZWUgTG9jYWxQb2ludGVyCisg
KiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfREVGSU5FX0xPQ0FMX09QRU5fUE9JTlRFUihMb2NhbFVO
dW1iZXJpbmdTeXN0ZW1Qb2ludGVyLCBVTnVtYmVyaW5nU3lzdGVtLCB1bnVtc3lzX2Nsb3NlKTsK
KworVV9OQU1FU1BBQ0VfRU5ECisjZW5kaWYKKworLyoqCisgKiBSZXR1cm5zIGFuIGVudW1lcmF0
aW9uIG92ZXIgdGhlIG5hbWVzIG9mIGFsbCBvZiB0aGUgcHJlZGVmaW5lZCBudW1iZXJpbmcgc3lz
dGVtcyBrbm93bgorICogdG8gSUNVLgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBvaW50ZXIgdG8g
YSBVRXJyb3JDb2RlIHRvIHJlY2VpdmUgYW55IGVycm9ycy4KKyAqIEByZXR1cm4gICAgICAgICAg
QSBwb2ludGVyIHRvIGEgVUVudW1lcmF0aW9uIHRoYXQgbXVzdCBiZSBjbG9zZWQgd2l0aCB1ZW51
bV9jbG9zZSgpLAorICogICAgICAgICAgICAgICAgICBvciBOVUxMIGlmIGFuIGVycm9yIG9jY3Vy
cmVkLgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIFVFbnVtZXJhdGlvbiAqIFVfRVhQ
T1JUMgordW51bXN5c19vcGVuQXZhaWxhYmxlTmFtZXMoVUVycm9yQ29kZSAqc3RhdHVzKTsKKwor
LyoqCisgKiBSZXR1cm5zIHRoZSBuYW1lIG9mIHRoZSBzcGVjaWZpZWQgVU51bWJlcmluZ1N5c3Rl
bSBvYmplY3QgKGlmIGl0IGlzIG9uZSBvZiB0aGUKKyAqIHByZWRlZmluZWQgbmFtZXMga25vd24g
dG8gSUNVKS4KKyAqIEBwYXJhbSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2Ug
bmFtZSBpcyBkZXNpcmVkLgorICogQHJldHVybiAgICAgICAgICBBIHBvaW50ZXIgdG8gdGhlIG5h
bWUgb2YgdGhlIHNwZWNpZmllZCBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCwgb3IKKyAqICAgICAg
ICAgICAgICAgICAgTlVMTCBpZiB0aGUgbmFtZSBpcyBub3Qgb25lIG9mIHRoZSBJQ1UgcHJlZGVm
aW5lZCBuYW1lcy4gVGhlIHBvaW50ZXIKKyAqICAgICAgICAgICAgICAgICAgaXMgb25seSB2YWxp
ZCBmb3IgdGhlIGxpZmV0aW1lIG9mIHRoZSBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdC4KKyAqIEBk
cmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBjb25zdCBjaGFyICogVV9FWFBPUlQyCit1bnVtc3lz
X2dldE5hbWUoY29uc3QgVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5cyk7CisKKy8qKgorICogUmV0
dXJucyB3aGV0aGVyIHRoZSBnaXZlbiBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCBpcyBmb3IgYW4g
YWxnb3JpdGhtaWMgKG5vdCBwdXJlbHkKKyAqIHBvc2l0aW9uYWwpIHN5c3RlbS4KKyAqIEBwYXJh
bSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2UgYWxnb3JpdGhtaWMgc3RhdHVz
IGlzIGRlc2lyZWQuCisgKiBAcmV0dXJuICAgICAgICAgIFRSVUUgaWYgdGhlIHNwZWNpZmllZCBV
TnVtYmVyaW5nU3lzdGVtIG9iamVjdCBpcyBmb3IgYW4gYWxnb3JpdGhtaWMKKyAqICAgICAgICAg
ICAgICAgICAgc3lzdGVtLgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIFVCb29sIFVf
RVhQT1JUMgordW51bXN5c19pc0FsZ29yaXRobWljKGNvbnN0IFVOdW1iZXJpbmdTeXN0ZW0gKnVu
dW1zeXMpOworCisvKioKKyAqIFJldHVybnMgdGhlIHJhZGl4IG9mIHRoZSBzcGVjaWZpZWQgVU51
bWJlcmluZ1N5c3RlbSBvYmplY3QuIFNpbXBsZSBwb3NpdGlvbmFsCisgKiBudW1iZXJpbmcgc3lz
dGVtcyB0eXBpY2FsbHkgaGF2ZSByYWRpeCAxMCwgYnV0IG1pZ2h0IGhhdmUgYSByYWRpeCBvZiBl
LmcuIDE2IGZvcgorICogaGV4YWRlY2ltYWwuIFRoZSByYWRpeCBpcyBsZXNzIHdlbGwtZGVmaW5l
ZCBmb3Igbm9uLXBvc2l0aW9uYWwgYWxnb3JpdGhtaWMgc3lzdGVtcy4KKyAqIEBwYXJhbSB1bnVt
c3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2UgcmFkaXggaXMgZGVzaXJlZC4KKyAqIEBy
ZXR1cm4gICAgICAgICAgVGhlIHJhZGl4IG9mIHRoZSBzcGVjaWZpZWQgVU51bWJlcmluZ1N5c3Rl
bSBvYmplY3QuCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfRFJBRlQgaW50MzJfdCBVX0VYUE9S
VDIKK3VudW1zeXNfZ2V0UmFkaXgoY29uc3QgVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5cyk7CisK
Ky8qKgorICogR2V0IHRoZSBkZXNjcmlwdGlvbiBzdHJpbmcgb2YgdGhlIHNwZWNpZmllZCBVTnVt
YmVyaW5nU3lzdGVtIG9iamVjdC4gRm9yIHNpbXBsZQorICogcG9zaXRpb25hbCBzeXN0ZW1zIHRo
aXMgaXMgdGhlIG9yZGVyZWQgc3RyaW5nIG9mIGRpZ2l0cyAod2l0aCBsZW5ndGggbWF0Y2hpbmcK
KyAqIHRoZSByYWRpeCksIGUuZy4gIlx1MzAwN1x1NEUwMFx1NEU4Q1x1NEUwOVx1NTZEQlx1NEU5
NFx1NTE2RFx1NEUwM1x1NTE2Qlx1NEU1RCIKKyAqIGZvciAiaGFuaWRlYyI7IGl0IHdvdWxkIGJl
ICIwMTIzNDU2Nzg5QUJDREVGIiBmb3IgaGV4YWRlY2ltYWwuIEZvcgorICogYWxnb3JpdGhtaWMg
c3lzdGVtcyB0aGlzIGlzIHRoZSBuYW1lIG9mIHRoZSBSQk5GIHJ1bGVzZXQgdXNlZCBmb3IgZm9y
bWF0dGluZywKKyAqIGUuZy4gInpoL1NwZWxsb3V0UnVsZXMvJXNwZWxsb3V0LWNhcmRpbmFsIiBm
b3IgImhhbnMiIG9yICIlZ3JlZWstdXBwZXIiIGZvcgorICogImdyZWsiLgorICogQHBhcmFtIHVu
dW1zeXMgICBUaGUgVU51bWJlcmluZ1N5c3RlbSB3aG9zZSBkZXNjcmlwdGlvbiBzdHJpbmcgaXMg
ZGVzaXJlZC4KKyAqIEBwYXJhbSByZXN1bHQgICAgQSBwb2ludGVyIHRvIGEgYnVmZmVyIHRvIHJl
Y2VpdmUgdGhlIGRlc2NyaXB0aW9uIHN0cmluZy4KKyAqIEBwYXJhbSByZXN1bHRMZW5ndGggIFRo
ZSBtYXhpbXVtIHNpemUgb2YgcmVzdWx0LgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBvaW50ZXIg
dG8gYSBVRXJyb3JDb2RlIHRvIHJlY2VpdmUgYW55IGVycm9ycy4KKyAqIEByZXR1cm4gICAgICAg
ICAgVGhlIHRvdGFsIGJ1ZmZlciBzaXplIG5lZWRlZDsgaWYgZ3JlYXRlciB0aGFuIHJlc3VsdExl
bmd0aCwgdGhlCisgKiAgICAgICAgICAgICAgICAgIG91dHB1dCB3YXMgdHJ1bmNhdGVkLgorICog
QGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIGludDMyX3QgVV9FWFBPUlQyCit1bnVtc3lzX2dl
dERlc2NyaXB0aW9uKGNvbnN0IFVOdW1iZXJpbmdTeXN0ZW0gKnVudW1zeXMsIFVDaGFyICpyZXN1
bHQsCisgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgcmVzdWx0TGVuZ3RoLCBVRXJyb3JD
b2RlICpzdGF0dXMpOworCisjZW5kaWYgIC8qIFVfSElERV9EUkFGVF9BUEkgKi8KKworI2VuZGlm
IC8qICNpZiAhVUNPTkZJR19OT19GT1JNQVRUSU5HICovCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKaW5kZXggOGNkN2Jj
YThiYWIzNTEwZTNiODc1Y2QwMDE4NGM3YjAwNDIwMzg4ZC4uZWI0N2QwMjQzOTU5MTM2ODU3MDBh
NjJlNTUwZTYyYWZjZjdiNDI3YiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Db21tb25JZGVudGlmaWVycy5oCkBAIC0xMDEsNiArMTAxLDcgQEAKICAgICBtYWNybyhj
b25zdHJ1Y3RvcikgXAogICAgIG1hY3JvKGNvdW50KSBcCiAgICAgbWFjcm8oY291bnRlcnMpIFwK
KyAgICBtYWNybyhkYXkpIFwKICAgICBtYWNybyhkZWZpbmVQcm9wZXJ0eSkgXAogICAgIG1hY3Jv
KGRlc2NyaXB0aW9uKSBcCiAgICAgbWFjcm8oZGVzY3JpcHRpb25zKSBcCkBAIC0xMDksNiArMTEw
LDcgQEAKICAgICBtYWNybyhkb25lKSBcCiAgICAgbWFjcm8oZW50cmllcykgXAogICAgIG1hY3Jv
KGVudW1lcmFibGUpIFwKKyAgICBtYWNybyhlcmEpIFwKICAgICBtYWNybyhldmFsKSBcCiAgICAg
bWFjcm8oZXhlYykgXAogICAgIG1hY3JvKGV4ZWN1dGlvbkNvdW50KSBcCkBAIC0xMTYsNiArMTE4
LDcgQEAKICAgICBtYWNybyhmbGFncykgXAogICAgIG1hY3JvKGZvY3VzKSBcCiAgICAgbWFjcm8o
Zm9yRWFjaCkgXAorICAgIG1hY3JvKGZvcm1hdE1hdGNoZXIpIFwKICAgICBtYWNybyhmb3J3YXJk
KSBcCiAgICAgbWFjcm8oZnJvbSkgXAogICAgIG1hY3JvKGZyb21DaGFyQ29kZSkgXApAQCAtMTI2
LDYgKzEyOSw4IEBACiAgICAgbWFjcm8oaGFzT3duUHJvcGVydHkpIFwKICAgICBtYWNybyhoYXNo
KSBcCiAgICAgbWFjcm8oaGVhZGVyKSBcCisgICAgbWFjcm8oaG91cikgXAorICAgIG1hY3JvKGhv
dXIxMikgXAogICAgIG1hY3JvKGhyZWYpIFwKICAgICBtYWNybyhpZCkgXAogICAgIG1hY3JvKGln
bm9yZUNhc2UpIFwKQEAgLTE0OSw2ICsxNTQsOCBAQAogICAgIG1hY3JvKGxvY2FsZSkgXAogICAg
IG1hY3JvKGxvY2FsZU1hdGNoZXIpIFwKICAgICBtYWNybyhtZXNzYWdlKSBcCisgICAgbWFjcm8o
bWludXRlKSBcCisgICAgbWFjcm8obW9udGgpIFwKICAgICBtYWNybyhtdWx0aWxpbmUpIFwKICAg
ICBtYWNybyhuYW1lKSBcCiAgICAgbWFjcm8obmV4dCkgXApAQCAtMTcyLDYgKzE3OSw3IEBACiAg
ICAgbWFjcm8ocmVsb2FkKSBcCiAgICAgbWFjcm8ocmVwbGFjZSkgXAogICAgIG1hY3JvKHJlc29s
dmUpIFwKKyAgICBtYWNybyhzZWNvbmQpIFwKICAgICBtYWNybyhzZW5zaXRpdml0eSkgXAogICAg
IG1hY3JvKHNldCkgXAogICAgIG1hY3JvKHNob3dNb2RhbERpYWxvZykgXApAQCAtMTg1LDYgKzE5
Myw4IEBACiAgICAgbWFjcm8odGFyZ2V0KSBcCiAgICAgbWFjcm8odGVzdCkgXAogICAgIG1hY3Jv
KHRoZW4pIFwKKyAgICBtYWNybyh0aW1lWm9uZSkgXAorICAgIG1hY3JvKHRpbWVab25lTmFtZSkg
XAogICAgIG1hY3JvKHRvRXhwb25lbnRpYWwpIFwKICAgICBtYWNybyh0b0ZpeGVkKSBcCiAgICAg
bWFjcm8odG9JU09TdHJpbmcpIFwKQEAgLTE5OCw4ICsyMDgsMTAgQEAKICAgICBtYWNybyh2YWx1
ZXMpIFwKICAgICBtYWNybyh3ZWJraXQpIFwKICAgICBtYWNybyh3ZWJraXRJbmRleGVkREIpIFwK
KyAgICBtYWNybyh3ZWVrZGF5KSBcCiAgICAgbWFjcm8od2luZG93KSBcCi0gICAgbWFjcm8od3Jp
dGFibGUpCisgICAgbWFjcm8od3JpdGFibGUpIFwKKyAgICBtYWNybyh5ZWFyKQogCiAjZGVmaW5l
IEpTQ19DT01NT05fSURFTlRJRklFUlNfRUFDSF9LRVlXT1JEKG1hY3JvKSBcCiAgICAgbWFjcm8o
YnJlYWspIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxE
YXRlVGltZUZvcm1hdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0
ZVRpbWVGb3JtYXQuY3BwCmluZGV4IGRjNWIyYWNlMzI1YjA4YjZmMmYzN2IyMzEwNzY5MjBlODhm
Y2YwMjguLjE5MWU0M2QzMDNiY2I5M2Y3MzE3YzUwNTgxOGEwODI2MDA2MTljNzQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNw
cApAQCAtMzYsOCArMzYsMTMgQEAKICNpbmNsdWRlICJKU0JvdW5kRnVuY3Rpb24uaCIKICNpbmNs
dWRlICJKU0NKU1ZhbHVlSW5saW5lcy5oIgogI2luY2x1ZGUgIkpTQ2VsbElubGluZXMuaCIKKyNp
bmNsdWRlICJPYmplY3RDb25zdHJ1Y3Rvci5oIgogI2luY2x1ZGUgIlNsb3RWaXNpdG9ySW5saW5l
cy5oIgogI2luY2x1ZGUgIlN0cnVjdHVyZUlubGluZXMuaCIKKyNpbmNsdWRlIDx1bmljb2RlL3Vj
YWwuaD4KKyNpbmNsdWRlIDx1bmljb2RlL3VkYXQuaD4KKyNpbmNsdWRlIDx1bmljb2RlL3VkYXRw
Zy5oPgorI2luY2x1ZGUgPHVuaWNvZGUvdWVudW0uaD4KIAogbmFtZXNwYWNlIEpTQyB7CiAKQEAg
LTg2LDE0ICs5MSw2NjQgQEAgdm9pZCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEJvdW5kRm9ybWF0
KFZNJiB2bSwgSlNCb3VuZEZ1bmN0aW9uKiBmb3JtYXQpCiAgICAgbV9ib3VuZEZvcm1hdC5zZXQo
dm0sIHRoaXMsIGZvcm1hdCk7CiB9CiAKK2VudW0gY2xhc3MgRGF0ZVRpbWVPcHRpb25SZXF1aXJl
ZCB7IERhdGUsIFRpbWUsIEFueSB9OworZW51bSBjbGFzcyBEYXRlVGltZU9wdGlvbkRlZmF1bHRz
IHsgRGF0ZSwgVGltZSwgQWxsIH07CisKK1N0cmluZyBkZWZhdWx0VGltZVpvbmUoKQoreworICAg
IC8vIDYuNC4zIERlZmF1bHRUaW1lWm9uZSAoKSAoRUNNQS00MDIgMi4wKQorICAgIC8vIFRoZSBE
ZWZhdWx0VGltZVpvbmUgYWJzdHJhY3Qgb3BlcmF0aW9uIHJldHVybnMgYSBTdHJpbmcgdmFsdWUg
cmVwcmVzZW50aW5nIHRoZSB2YWxpZCAoNi40LjEpIGFuZCBjYW5vbmljYWxpemVkICg2LjQuMikg
dGltZSB6b25lIG5hbWUgZm9yIHRoZSBob3N0IGVudmlyb25tZW504oCZcyBjdXJyZW50IHRpbWUg
em9uZS4KKworICAgIFVFcnJvckNvZGUgc3RhdHVzKFVfWkVST19FUlJPUik7CisgICAgaW50MzJf
dCBidWZmZXJMZW5ndGggPSB1Y2FsX2dldERlZmF1bHRUaW1lWm9uZShudWxscHRyLCAwLCAmc3Rh
dHVzKTsKKyAgICBpZiAoc3RhdHVzID09IFVfQlVGRkVSX09WRVJGTE9XX0VSUk9SKSB7CisgICAg
ICAgIFVFcnJvckNvZGUgc3RhdHVzKFVfWkVST19FUlJPUik7CisgICAgICAgIFZlY3RvcjxVQ2hh
cj4gYnVmZmVyKGJ1ZmZlckxlbmd0aCk7CisgICAgICAgIHVjYWxfZ2V0RGVmYXVsdFRpbWVab25l
KGJ1ZmZlci5kYXRhKCksIGJ1ZmZlckxlbmd0aCwgJnN0YXR1cyk7CisgICAgICAgIGlmIChVX1NV
Q0NFU1Moc3RhdHVzKSkKKyAgICAgICAgICAgIHJldHVybiBTdHJpbmcoYnVmZmVyLmRhdGEoKSwg
YnVmZmVyTGVuZ3RoKTsKKyAgICB9CisgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiVVRDIik7Cit9
CisKK3N0YXRpYyBTdHJpbmcgY2Fub25pY2FsaXplVGltZVpvbmVOYW1lKGNvbnN0IFN0cmluZyYg
dGltZVpvbmVOYW1lKQoreworICAgIC8vIDYuNC4xIElzVmFsaWRUaW1lWm9uZU5hbWUgKHRpbWVa
b25lKQorICAgIC8vIFRoZSBhYnN0cmFjdCBvcGVyYXRpb24gcmV0dXJucyB0cnVlIGlmIHRpbWVa
b25lLCBjb252ZXJ0ZWQgdG8gdXBwZXIgY2FzZSBhcyBkZXNjcmliZWQgaW4gNi4xLCBpcyBlcXVh
bCB0byBvbmUgb2YgdGhlIFpvbmUgb3IgTGluayBuYW1lcyBvZiB0aGUgSUFOQSBUaW1lIFpvbmUg
RGF0YWJhc2UsIGNvbnZlcnRlZCB0byB1cHBlciBjYXNlIGFzIGRlc2NyaWJlZCBpbiA2LjEuIEl0
IHJldHVybnMgZmFsc2Ugb3RoZXJ3aXNlLgorICAgIFVFcnJvckNvZGUgc3RhdHVzKFVfWkVST19F
UlJPUik7CisgICAgVUVudW1lcmF0aW9uKiB0aW1lWm9uZXMgPSB1Y2FsX29wZW5UaW1lWm9uZXMo
JnN0YXR1cyk7CisgICAgQVNTRVJUKFVfU1VDQ0VTUyhzdGF0dXMpKTsKKworICAgIGNvbnN0IFN0
cmluZyB0aW1lWm9uZU5hbWVVcHBlciA9IHRpbWVab25lTmFtZS51cHBlcigpOworICAgIFN0cmlu
ZyBjYW5vbmljYWw7CisgICAgd2hpbGUgKGNhbm9uaWNhbC5pc051bGwoKSkgeworICAgICAgICBV
RXJyb3JDb2RlIHN0YXR1cyhVX1pFUk9fRVJST1IpOworICAgICAgICBpbnQzMl90IGlhbmFUaW1l
Wm9uZUxlbmd0aDsKKyAgICAgICAgY29uc3QgVUNoYXIqIGlhbmFUaW1lWm9uZSA9IHVlbnVtX3Vu
ZXh0KHRpbWVab25lcywgJmlhbmFUaW1lWm9uZUxlbmd0aCwgJnN0YXR1cyk7CisgICAgICAgIEFT
U0VSVChVX1NVQ0NFU1Moc3RhdHVzKSk7CisKKyAgICAgICAgLy8gRW5kIG9mIGVudW1lcmF0aW9u
LgorICAgICAgICBpZiAoIWlhbmFUaW1lWm9uZSkKKyAgICAgICAgICAgIGJyZWFrOworCisgICAg
ICAgIFN0cmluZyByZXN1bHRTdHJpbmcoaWFuYVRpbWVab25lLCBpYW5hVGltZVpvbmVMZW5ndGgp
OworICAgICAgICBpZiAocmVzdWx0U3RyaW5nLnVwcGVyKCkgIT0gdGltZVpvbmVOYW1lVXBwZXIp
CisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICAvLyBGb3VuZCBhIG1hdGNoLCBub3cg
Y2Fub25pY2FsaXplLgorICAgICAgICAvLyA2LjQuMiBDYW5vbmljYWxpemVUaW1lWm9uZU5hbWUg
KHRpbWVab25lKSAoRUNNQS00MDIgMi4wKQorICAgICAgICAvLyAxLiBMZXQgaWFuYVRpbWVab25l
IGJlIHRoZSBab25lIG9yIExpbmsgbmFtZSBvZiB0aGUgSUFOQSBUaW1lIFpvbmUgRGF0YWJhc2Ug
c3VjaCB0aGF0IHRpbWVab25lLCBjb252ZXJ0ZWQgdG8gdXBwZXIgY2FzZSBhcyBkZXNjcmliZWQg
aW4gNi4xLCBpcyBlcXVhbCB0byBpYW5hVGltZVpvbmUsIGNvbnZlcnRlZCB0byB1cHBlciBjYXNl
IGFzIGRlc2NyaWJlZCBpbiA2LjEuCisgICAgICAgIC8vIDIuIElmIGlhbmFUaW1lWm9uZSBpcyBh
IExpbmsgbmFtZSwgdGhlbiBsZXQgaWFuYVRpbWVab25lIGJlIHRoZSBjb3JyZXNwb25kaW5nIFpv
bmUgbmFtZSBhcyBzcGVjaWZpZWQgaW4gdGhlIOKAnGJhY2t3YXJk4oCdIGZpbGUgb2YgdGhlIElB
TkEgVGltZSBab25lIERhdGFiYXNlLgorCisgICAgICAgIFZlY3RvcjxVQ2hhcj4gYnVmZmVyKGlh
bmFUaW1lWm9uZUxlbmd0aCk7CisgICAgICAgIFVCb29sIGlzU3lzdGVtSUQoRkFMU0UpOworICAg
ICAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgIGludDMyX3QgY2Fub25pY2FsTGVu
Z3RoID0gdWNhbF9nZXRDYW5vbmljYWxUaW1lWm9uZUlEKGlhbmFUaW1lWm9uZSwgaWFuYVRpbWVa
b25lTGVuZ3RoLCBidWZmZXIuZGF0YSgpLCBpYW5hVGltZVpvbmVMZW5ndGgsICZpc1N5c3RlbUlE
LCAmc3RhdHVzKTsKKyAgICAgICAgaWYgKHN0YXR1cyA9PSBVX0JVRkZFUl9PVkVSRkxPV19FUlJP
UikgeworICAgICAgICAgICAgVmVjdG9yPFVDaGFyPiBidWZmZXIoaWFuYVRpbWVab25lTGVuZ3Ro
KTsKKyAgICAgICAgICAgIFVCb29sIGlzU3lzdGVtSUQoRkFMU0UpOworICAgICAgICAgICAgVUVy
cm9yQ29kZSBzdGF0dXMoVV9aRVJPX0VSUk9SKTsKKyAgICAgICAgICAgIHVjYWxfZ2V0Q2Fub25p
Y2FsVGltZVpvbmVJRChpYW5hVGltZVpvbmUsIGlhbmFUaW1lWm9uZUxlbmd0aCwgYnVmZmVyLmRh
dGEoKSwgY2Fub25pY2FsTGVuZ3RoLCAmaXNTeXN0ZW1JRCwgJnN0YXR1cyk7CisgICAgICAgICAg
ICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworICAgICAgICAgICAgY2Fub25pY2FsID0gU3Ry
aW5nKGJ1ZmZlci5kYXRhKCksIGNhbm9uaWNhbExlbmd0aCk7CisgICAgICAgIH0gZWxzZSB7Cisg
ICAgICAgICAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworICAgICAgICAgICAgY2Fub25p
Y2FsID0gU3RyaW5nKGJ1ZmZlci5kYXRhKCksIGNhbm9uaWNhbExlbmd0aCk7CisgICAgICAgIH0K
KyAgICB9CisgICAgdWVudW1fY2xvc2UodGltZVpvbmVzKTsKKworICAgIC8vIDMuIElmIGlhbmFU
aW1lWm9uZSBpcyAiRXRjL1VUQyIgb3IgIkV0Yy9HTVQiLCB0aGVuIHJldHVybiAiVVRDIi4KKyAg
ICBpZiAoY2Fub25pY2FsID09ICJFdGMvVVRDIiB8fCBjYW5vbmljYWwgPT0gIkV0Yy9HTVQiKQor
ICAgICAgICBjYW5vbmljYWwgPSBBU0NJSUxpdGVyYWwoIlVUQyIpOworCisgICAgLy8gNC4gUmV0
dXJuIGlhbmFUaW1lWm9uZS4KKyAgICByZXR1cm4gY2Fub25pY2FsOworfQorCitzdGF0aWMgVmVj
dG9yPFN0cmluZz4gbG9jYWxlRGF0YShjb25zdCBTdHJpbmcmIGxvY2FsZSwgY29uc3QgU3RyaW5n
JiBrZXkpCit7CisgICAgaWYgKGtleSA9PSAiY2EiKSB7CisgICAgICAgIFVFcnJvckNvZGUgc3Rh
dHVzKFVfWkVST19FUlJPUik7CisgICAgICAgIFVFbnVtZXJhdGlvbiogY2FsZW5kYXJzID0gdWNh
bF9nZXRLZXl3b3JkVmFsdWVzRm9yTG9jYWxlKCJjYWxlbmRhciIsIGxvY2FsZS51dGY4KCkuZGF0
YSgpLCBmYWxzZSwgJnN0YXR1cyk7CisgICAgICAgIEFTU0VSVChVX1NVQ0NFU1Moc3RhdHVzKSk7
CisKKyAgICAgICAgVmVjdG9yPFN0cmluZz4gY2FEYXRhOworICAgICAgICBzdGF0dXMgPSBVX1pF
Uk9fRVJST1I7CisgICAgICAgIGludDMyX3QgbmFtZUxlbmd0aDsKKyAgICAgICAgd2hpbGUgKGNv
bnN0IGNoYXIqIGF2YWlsYWJsZU5hbWUgPSB1ZW51bV9uZXh0KGNhbGVuZGFycywgJm5hbWVMZW5n
dGgsICZzdGF0dXMpKSB7CisgICAgICAgICAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOwor
ICAgICAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICAgICAgU3RyaW5nIGNh
bGVuZGFyID0gU3RyaW5nKGF2YWlsYWJsZU5hbWUsIG5hbWVMZW5ndGgpOworICAgICAgICAgICAg
Y2FEYXRhLmFwcGVuZChjYWxlbmRhcik7CisgICAgICAgICAgICAvLyBFbnN1cmUgYWxpYXNlcyB1
c2VkIGluIGxhbmd1YWdlIHRhZyBhcmUgYWxsb3dlZC4KKyAgICAgICAgICAgIGlmIChjYWxlbmRh
ciA9PSAiZ3JlZ29yaWFuIikKKyAgICAgICAgICAgICAgICBjYURhdGEuYXBwZW5kKEFTQ0lJTGl0
ZXJhbCgiZ3JlZ29yeSIpKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNhbGVuZGFyID09ICJpc2xh
bWljLWNpdmlsIikKKyAgICAgICAgICAgICAgICBjYURhdGEuYXBwZW5kKEFTQ0lJTGl0ZXJhbCgi
aXNsYW1pY2MiKSk7CisgICAgICAgICAgICBlbHNlIGlmIChjYWxlbmRhciA9PSAiZXRoaW9waWMt
YW1ldGUtYWxlbSIpCisgICAgICAgICAgICAgICAgY2FEYXRhLmFwcGVuZChBU0NJSUxpdGVyYWwo
ImV0aGlvYWEiKSk7CisgICAgICAgIH0KKyAgICAgICAgdWVudW1fY2xvc2UoY2FsZW5kYXJzKTsK
KyAgICAgICAgcmV0dXJuIGNhRGF0YTsKKyAgICB9CisgICAgaWYgKGtleSA9PSAibnUiKQorICAg
ICAgICByZXR1cm4gZ2V0TnVtYmVyaW5nU3lzdGVtc0ZvckxvY2FsZShsb2NhbGUpOworICAgIHJl
dHVybiBWZWN0b3I8U3RyaW5nPigpOworfQorCitzdGF0aWMgSlNPYmplY3QqIHRvRGF0ZVRpbWVP
cHRpb25zKEV4ZWNTdGF0ZSYgc3RhdGUsIEpTVmFsdWUgb3JpZ2luYWxPcHRpb25zLCBjb25zdCBE
YXRlVGltZU9wdGlvblJlcXVpcmVkIHJlcXVpcmVkLCBjb25zdCBEYXRlVGltZU9wdGlvbkRlZmF1
bHRzIGRlZmF1bHRzKQoreworICAgIC8vIDEyLjEuMSBUb0RhdGVUaW1lT3B0aW9ucyBhYnN0cmFj
dCBvcGVyYXRpb24gKEVDTUEtNDAyIDIuMCkKKyAgICBWTSYgdm0gPSBzdGF0ZS52bSgpOworCisg
ICAgLy8gMS4gSWYgb3B0aW9ucyBpcyB1bmRlZmluZWQsIHRoZW4gbGV0IG9wdGlvbnMgYmUgbnVs
bCwgZWxzZSBsZXQgb3B0aW9ucyBiZSBUb09iamVjdChvcHRpb25zKS4KKyAgICAvLyAyLiBSZXR1
cm5JZkFicnVwdChvcHRpb25zKS4KKyAgICAvLyAzLiBMZXQgb3B0aW9ucyBiZSBPYmplY3RDcmVh
dGUob3B0aW9ucykuCisgICAgSlNPYmplY3QqIG9wdGlvbnM7CisgICAgaWYgKG9yaWdpbmFsT3B0
aW9ucy5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAgICAgICBvcHRpb25zID0gY29uc3RydWN0RW1w
dHlPYmplY3QoJnN0YXRlLCBzdGF0ZS5sZXhpY2FsR2xvYmFsT2JqZWN0KCktPm51bGxQcm90b3R5
cGVPYmplY3RTdHJ1Y3R1cmUoKSk7CisgICAgZWxzZSB7CisgICAgICAgIEpTT2JqZWN0KiBvcmln
aW5hbFRvT2JqZWN0ID0gb3JpZ2luYWxPcHRpb25zLnRvT2JqZWN0KCZzdGF0ZSk7CisgICAgICAg
IGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOwor
ICAgICAgICBvcHRpb25zID0gY29uc3RydWN0RW1wdHlPYmplY3QoJnN0YXRlLCBvcmlnaW5hbFRv
T2JqZWN0KTsKKyAgICB9CisKKyAgICAvLyA0LiBMZXQgbmVlZERlZmF1bHRzIGJlIHRydWUuCisg
ICAgYm9vbCBuZWVkRGVmYXVsdHModHJ1ZSk7CisKKyAgICAvLyA1LiBJZiByZXF1aXJlZCBpcyAi
ZGF0ZSIgb3IgImFueSIsCisgICAgaWYgKHJlcXVpcmVkID09IERhdGVUaW1lT3B0aW9uUmVxdWly
ZWQ6OkRhdGUgfHwgcmVxdWlyZWQgPT0gRGF0ZVRpbWVPcHRpb25SZXF1aXJlZDo6QW55KSB7Cisg
ICAgICAgIC8vIGEuIEZvciBlYWNoIG9mIHRoZSBwcm9wZXJ0eSBuYW1lcyAid2Vla2RheSIsICJ5
ZWFyIiwgIm1vbnRoIiwgImRheSI6CisgICAgICAgIC8vIGkuIExldCBwcm9wIGJlIHRoZSBwcm9w
ZXJ0eSBuYW1lLgorICAgICAgICAvLyBpaS4gTGV0IHZhbHVlIGJlIEdldChvcHRpb25zLCBwcm9w
KS4KKyAgICAgICAgLy8gaWlpLiBSZXR1cm5JZkFicnVwdCh2YWx1ZSkuCisgICAgICAgIC8vIGl2
LiBJZiB2YWx1ZSBpcyBub3QgdW5kZWZpbmVkLCB0aGVuIGxldCBuZWVkRGVmYXVsdHMgYmUgZmFs
c2UuCisgICAgICAgIEpTVmFsdWUgd2Vla2RheSA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZtLnBy
b3BlcnR5TmFtZXMtPndlZWtkYXkpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkp
CisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCF3ZWVrZGF5LmlzVW5k
ZWZpbmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKworICAgICAgICBK
U1ZhbHVlIHllYXIgPSBvcHRpb25zLT5nZXQoJnN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT55ZWFy
KTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CisgICAgICAgIGlmICgheWVhci5pc1VuZGVmaW5lZCgpKQorICAgICAgICAgICAg
bmVlZERlZmF1bHRzID0gZmFsc2U7CisKKyAgICAgICAgSlNWYWx1ZSBtb250aCA9IG9wdGlvbnMt
PmdldCgmc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPm1vbnRoKTsKKyAgICAgICAgaWYgKHN0YXRl
LmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlm
ICghbW9udGguaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZhdWx0cyA9IGZhbHNl
OworCisgICAgICAgIEpTVmFsdWUgZGF5ID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVy
dHlOYW1lcy0+ZGF5KTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICghZGF5LmlzVW5kZWZpbmVkKCkpCisg
ICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKyAgICB9CisKKyAgICAvLyA2LiBJZiBy
ZXF1aXJlZCBpcyAidGltZSIgb3IgImFueSIsCisgICAgaWYgKHJlcXVpcmVkID09IERhdGVUaW1l
T3B0aW9uUmVxdWlyZWQ6OlRpbWUgfHwgcmVxdWlyZWQgPT0gRGF0ZVRpbWVPcHRpb25SZXF1aXJl
ZDo6QW55KSB7CisgICAgICAgIC8vIGEuIEZvciBlYWNoIG9mIHRoZSBwcm9wZXJ0eSBuYW1lcyAi
aG91ciIsICJtaW51dGUiLCAic2Vjb25kIjoKKyAgICAgICAgLy8gaS4gTGV0IHByb3AgYmUgdGhl
IHByb3BlcnR5IG5hbWUuCisgICAgICAgIC8vIGlpLiBMZXQgdmFsdWUgYmUgR2V0KG9wdGlvbnMs
IHByb3ApLgorICAgICAgICAvLyBpaWkuIFJldHVybklmQWJydXB0KHZhbHVlKS4KKyAgICAgICAg
Ly8gaXYuIElmIHZhbHVlIGlzIG5vdCB1bmRlZmluZWQsIHRoZW4gbGV0IG5lZWREZWZhdWx0cyBi
ZSBmYWxzZS4KKyAgICAgICAgSlNWYWx1ZSBob3VyID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0u
cHJvcGVydHlOYW1lcy0+aG91cik7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkK
KyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBpZiAoIWhvdXIuaXNVbmRlZmlu
ZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZhdWx0cyA9IGZhbHNlOworCisgICAgICAgIEpTVmFs
dWUgbWludXRlID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+bWludXRl
KTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CisgICAgICAgIGlmICghbWludXRlLmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAg
ICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKworICAgICAgICBKU1ZhbHVlIHNlY29uZCA9IG9wdGlv
bnMtPmdldCgmc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPnNlY29uZCk7CisgICAgICAgIGlmIChz
dGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAg
ICBpZiAoIXNlY29uZC5pc1VuZGVmaW5lZCgpKQorICAgICAgICAgICAgbmVlZERlZmF1bHRzID0g
ZmFsc2U7CisgICAgfQorCisgICAgLy8gNy4gSWYgbmVlZERlZmF1bHRzIGlzIHRydWUgYW5kIGRl
ZmF1bHRzIGlzIGVpdGhlciAiZGF0ZSIgb3IgImFsbCIsIHRoZW4KKyAgICBpZiAobmVlZERlZmF1
bHRzICYmIChkZWZhdWx0cyA9PSBEYXRlVGltZU9wdGlvbkRlZmF1bHRzOjpEYXRlIHx8IGRlZmF1
bHRzID09IERhdGVUaW1lT3B0aW9uRGVmYXVsdHM6OkFsbCkpIHsKKyAgICAgICAgLy8gYS4gRm9y
IGVhY2ggb2YgdGhlIHByb3BlcnR5IG5hbWVzICJ5ZWFyIiwgIm1vbnRoIiwgImRheSI6CisgICAg
ICAgIC8vIGkuIExldCBzdGF0dXMgYmUgQ3JlYXRlRGF0ZVByb3BlcnR5T3JUaHJvdyhvcHRpb25z
LCBwcm9wLCAibnVtZXJpYyIpLgorICAgICAgICAvLyBpaS4gUmV0dXJuSWZBYnJ1cHQoc3RhdHVz
KS4KKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT55ZWFy
LCBqc1N0cmluZygmc3RhdGUsICJudW1lcmljIikpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgICAgICBvcHRpb25z
LT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPm1vbnRoLCBqc1N0cmluZygmc3RhdGUs
ICJudW1lcmljIikpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZt
LnByb3BlcnR5TmFtZXMtPmRheSwganNTdHJpbmcoJnN0YXRlLCAibnVtZXJpYyIpKTsKKyAgICAg
ICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7
CisgICAgfQorCisgICAgLy8gOC4gSWYgbmVlZERlZmF1bHRzIGlzIHRydWUgYW5kIGRlZmF1bHRz
IGlzIGVpdGhlciAidGltZSIgb3IgImFsbCIsIHRoZW4KKyAgICBpZiAobmVlZERlZmF1bHRzICYm
IChkZWZhdWx0cyA9PSBEYXRlVGltZU9wdGlvbkRlZmF1bHRzOjpUaW1lIHx8IGRlZmF1bHRzID09
IERhdGVUaW1lT3B0aW9uRGVmYXVsdHM6OkFsbCkpIHsKKyAgICAgICAgLy8gYS4gRm9yIGVhY2gg
b2YgdGhlIHByb3BlcnR5IG5hbWVzICJob3VyIiwgIm1pbnV0ZSIsICJzZWNvbmQiOgorICAgICAg
ICAvLyBpLiBMZXQgc3RhdHVzIGJlIENyZWF0ZURhdGVQcm9wZXJ0eU9yVGhyb3cob3B0aW9ucywg
cHJvcCwgIm51bWVyaWMiKS4KKyAgICAgICAgLy8gaWkuIFJldHVybklmQWJydXB0KHN0YXR1cyku
CisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+aG91ciwg
anNTdHJpbmcoJnN0YXRlLCAibnVtZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2Vw
dGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICAgICAgb3B0aW9ucy0+
cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5taW51dGUsIGpzU3RyaW5nKCZzdGF0ZSwg
Im51bWVyaWMiKSk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAg
ICAgIHJldHVybiBudWxscHRyOworCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0u
cHJvcGVydHlOYW1lcy0+c2Vjb25kLCBqc1N0cmluZygmc3RhdGUsICJudW1lcmljIikpOworICAg
ICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0
cjsKKyAgICB9CisKKyAgICAvLyA5LiBSZXR1cm4gb3B0aW9ucy4KKyAgICByZXR1cm4gb3B0aW9u
czsKK30KKworc3RhdGljIHZvaWQgc2V0Rm9ybWF0c0Zyb21QYXR0ZXJuKEludGxEYXRlVGltZUZv
cm1hdCogZGF0ZVRpbWVGb3JtYXQsIGNvbnN0IFN0cmluZyYgcGF0dGVybikKK3sKKyAgICB1bnNp
Z25lZCBsZW5ndGggPSBwYXR0ZXJuLmxlbmd0aCgpOworICAgIGZvciAodW5zaWduZWQgaSA9IDA7
IGkgPCBsZW5ndGg7ICsraSkgeworICAgICAgICBVQ2hhciBjaCA9IHBhdHRlcm5baV07CisgICAg
ICAgIHVuc2lnbmVkIGNvdW50ID0gMTsKKyAgICAgICAgc3dpdGNoIChjaCkgeworICAgICAgICBj
YXNlICdFJzoKKyAgICAgICAgICAgIHdoaWxlIChpICsgMSA8IGxlbmd0aCAmJiBwYXR0ZXJuW2kg
KyAxXSA9PSAnRScpIHsKKyAgICAgICAgICAgICAgICArK2NvdW50OworICAgICAgICAgICAgICAg
ICsraTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAzKQorICAgICAg
ICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRXZWVrZGF5KEludGxEYXRlVGltZUZvcm1hdDo6
V2Vla2RheVN0eWxlOjpTaG9ydCk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA0KQor
ICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRXZWVrZGF5KEludGxEYXRlVGltZUZv
cm1hdDo6V2Vla2RheVN0eWxlOjpMb25nKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09
IDUpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldFdlZWtkYXkoSW50bERhdGVU
aW1lRm9ybWF0OjpXZWVrZGF5U3R5bGU6Ok5hcnJvdyk7CisgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgY2FzZSAnRyc6CisgICAgICAgICAgICB3aGlsZSAoaSArIDEgPCBsZW5ndGggJiYgcGF0
dGVybltpICsgMV0gPT0gJ0cnKSB7CisgICAgICAgICAgICAgICAgKytjb3VudDsKKyAgICAgICAg
ICAgICAgICArK2k7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoY291bnQgPT0gMykK
KyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0RXJhKEludGxEYXRlVGltZUZvcm1h
dDo6RXJhU3R5bGU6OlNob3J0KTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDQpCisg
ICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldEVyYShJbnRsRGF0ZVRpbWVGb3JtYXQ6
OkVyYVN0eWxlOjpMb25nKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDUpCisgICAg
ICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldEVyYShJbnRsRGF0ZVRpbWVGb3JtYXQ6OkVy
YVN0eWxlOjpOYXJyb3cpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ3knOgor
ICAgICAgICAgICAgd2hpbGUgKGkgKyAxIDwgbGVuZ3RoICYmIHBhdHRlcm5baSArIDFdID09ICd5
JykgeworICAgICAgICAgICAgICAgICsrY291bnQ7CisgICAgICAgICAgICAgICAgKytpOworICAg
ICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisgICAgICAgICAgICAgICAg
ZGF0ZVRpbWVGb3JtYXQtPnNldFllYXIoSW50bERhdGVUaW1lRm9ybWF0OjpZZWFyU3R5bGU6Ok51
bWVyaWMpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAgICAgICAgICAg
ICBkYXRlVGltZUZvcm1hdC0+c2V0WWVhcihJbnRsRGF0ZVRpbWVGb3JtYXQ6OlllYXJTdHlsZTo6
VHdvRGlnaXQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ00nOgorICAgICAg
ICAgICAgd2hpbGUgKGkgKyAxIDwgbGVuZ3RoICYmIHBhdHRlcm5baSArIDFdID09ICdNJykgewor
ICAgICAgICAgICAgICAgICsrY291bnQ7CisgICAgICAgICAgICAgICAgKytpOworICAgICAgICAg
ICAgfQorICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisgICAgICAgICAgICAgICAgZGF0ZVRp
bWVGb3JtYXQtPnNldE1vbnRoKEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZTo6TnVtZXJp
Yyk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSAyKQorICAgICAgICAgICAgICAgIGRh
dGVUaW1lRm9ybWF0LT5zZXRNb250aChJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6OlR3
b0RpZ2l0KTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDMpCisgICAgICAgICAgICAg
ICAgZGF0ZVRpbWVGb3JtYXQtPnNldE1vbnRoKEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHls
ZTo6U2hvcnQpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNCkKKyAgICAgICAgICAg
ICAgICBkYXRlVGltZUZvcm1hdC0+c2V0TW9udGgoSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0
eWxlOjpMb25nKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDUpCisgICAgICAgICAg
ICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldE1vbnRoKEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhT
dHlsZTo6TmFycm93KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdMJzoKKyAg
ICAgICAgICAgIHdoaWxlIChpICsgMSA8IGxlbmd0aCAmJiBwYXR0ZXJuW2kgKyAxXSA9PSAnTCcp
IHsKKyAgICAgICAgICAgICAgICArK2NvdW50OworICAgICAgICAgICAgICAgICsraTsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAgIGRh
dGVUaW1lRm9ybWF0LT5zZXRNb250aChJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6Ok51
bWVyaWMpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAgICAgICAgICAg
ICBkYXRlVGltZUZvcm1hdC0+c2V0TW9udGgoSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0eWxl
OjpUd29EaWdpdCk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSAzKQorICAgICAgICAg
ICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRNb250aChJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRo
U3R5bGU6OlNob3J0KTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDQpCisgICAgICAg
ICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldE1vbnRoKEludGxEYXRlVGltZUZvcm1hdDo6TW9u
dGhTdHlsZTo6TG9uZyk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA1KQorICAgICAg
ICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRNb250aChJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1v
bnRoU3R5bGU6Ok5hcnJvdyk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAnZCc6
CisgICAgICAgICAgICB3aGlsZSAoaSArIDEgPCBsZW5ndGggJiYgcGF0dGVybltpICsgMV0gPT0g
J2QnKSB7CisgICAgICAgICAgICAgICAgKytjb3VudDsKKyAgICAgICAgICAgICAgICArK2k7Cisg
ICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoY291bnQgPT0gMSkKKyAgICAgICAgICAgICAg
ICBkYXRlVGltZUZvcm1hdC0+c2V0RGF5KEludGxEYXRlVGltZUZvcm1hdDo6RGF5U3R5bGU6Ok51
bWVyaWMpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAgICAgICAgICAg
ICBkYXRlVGltZUZvcm1hdC0+c2V0RGF5KEludGxEYXRlVGltZUZvcm1hdDo6RGF5U3R5bGU6OlR3
b0RpZ2l0KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdoJzoKKyAgICAgICAg
ICAgIHdoaWxlIChpICsgMSA8IGxlbmd0aCAmJiBwYXR0ZXJuW2kgKyAxXSA9PSAnaCcpIHsKKyAg
ICAgICAgICAgICAgICArK2NvdW50OworICAgICAgICAgICAgICAgICsraTsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRIb3VyMTIodHJ1ZSk7CisgICAgICAg
ICAgICBpZiAoY291bnQgPT0gMSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0
SG91cihJbnRsRGF0ZVRpbWVGb3JtYXQ6OkhvdXJTdHlsZTo6TnVtZXJpYyk7CisgICAgICAgICAg
ICBlbHNlIGlmIChjb3VudCA9PSAyKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5z
ZXRIb3VyKEludGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlOjpUd29EaWdpdCk7CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgY2FzZSAnSCc6CisgICAgICAgICAgICB3aGlsZSAoaSArIDEg
PCBsZW5ndGggJiYgcGF0dGVybltpICsgMV0gPT0gJ0gnKSB7CisgICAgICAgICAgICAgICAgKytj
b3VudDsKKyAgICAgICAgICAgICAgICArK2k7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBk
YXRlVGltZUZvcm1hdC0+c2V0SG91cjEyKGZhbHNlKTsKKyAgICAgICAgICAgIGlmIChjb3VudCA9
PSAxKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRIb3VyKEludGxEYXRlVGlt
ZUZvcm1hdDo6SG91clN0eWxlOjpOdW1lcmljKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50
ID09IDIpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldEhvdXIoSW50bERhdGVU
aW1lRm9ybWF0OjpIb3VyU3R5bGU6OlR3b0RpZ2l0KTsKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBjYXNlICdtJzoKKyAgICAgICAgICAgIHdoaWxlIChpICsgMSA8IGxlbmd0aCAmJiBwYXR0
ZXJuW2kgKyAxXSA9PSAnbScpIHsKKyAgICAgICAgICAgICAgICArK2NvdW50OworICAgICAgICAg
ICAgICAgICsraTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQor
ICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRNaW51dGUoSW50bERhdGVUaW1lRm9y
bWF0OjpNaW51dGVTdHlsZTo6TnVtZXJpYyk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9
PSAyKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRNaW51dGUoSW50bERhdGVU
aW1lRm9ybWF0OjpNaW51dGVTdHlsZTo6VHdvRGlnaXQpOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGNhc2UgJ3MnOgorICAgICAgICAgICAgd2hpbGUgKGkgKyAxIDwgbGVuZ3RoICYmIHBh
dHRlcm5baSArIDFdID09ICdzJykgeworICAgICAgICAgICAgICAgICsrY291bnQ7CisgICAgICAg
ICAgICAgICAgKytpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGNvdW50ID09IDEp
CisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldFNlY29uZChJbnRsRGF0ZVRpbWVG
b3JtYXQ6OlNlY29uZFN0eWxlOjpOdW1lcmljKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50
ID09IDIpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldFNlY29uZChJbnRsRGF0
ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpUd29EaWdpdCk7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgY2FzZSAneic6CisgICAgICAgICAgICB3aGlsZSAoaSArIDEgPCBsZW5ndGggJiYg
cGF0dGVybltpICsgMV0gPT0gJ3onKSB7CisgICAgICAgICAgICAgICAgKytjb3VudDsKKyAgICAg
ICAgICAgICAgICArK2k7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoY291bnQgPT0g
MSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC0+c2V0VGltZVpvbmVOYW1lKEludGxE
YXRlVGltZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6OlNob3J0KTsKKyAgICAgICAgICAgIGVs
c2UgaWYgKGNvdW50ID09IDQpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQtPnNldFRp
bWVab25lTmFtZShJbnRsRGF0ZVRpbWVGb3JtYXQ6OlRpbWVab25lTmFtZVN0eWxlOjpMb25nKTsK
KyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgfQorfQorCitKU1ZhbHVlIGluaXRp
YWxpemVEYXRlVGltZUZvcm1hdChFeGVjU3RhdGUmIHN0YXRlLCBJbnRsRGF0ZVRpbWVGb3JtYXQq
IGRhdGVUaW1lRm9ybWF0LCBKU1ZhbHVlIGxvY2FsZXMsIEpTVmFsdWUgb3JpZ2luYWxPcHRpb25z
KQoreworICAgIC8vIDEyLjEuMSBJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQgKGRhdGVUaW1lRm9y
bWF0LCBsb2NhbGVzLCBvcHRpb25zKSAoRUNNQS00MDIgMi4wKQorICAgIC8vIDEuIElmIGRhdGVU
aW1lRm9ybWF0LltbaW5pdGlhbGl6ZWRJbnRsT2JqZWN0XV0gaXMgdHJ1ZSwgdGhyb3cgYSBUeXBl
RXJyb3IgZXhjZXB0aW9uLgorICAgIGlmIChkYXRlVGltZUZvcm1hdC0+aW5pdGlhbGl6ZWRJbnRs
T2JqZWN0KCkpCisgICAgICAgIHRocm93VHlwZUVycm9yKCZzdGF0ZSwgQVNDSUlMaXRlcmFsKCJP
YmplY3QgYWxyZWFkeSBpbml0aWFsaXplZCIpKTsKKworICAgIC8vIDIuIFNldCBkYXRlVGltZUZv
cm1hdC5bW2luaXRpYWxpemVkSW50bE9iamVjdF1dIHRvIHRydWUuCisgICAgZGF0ZVRpbWVGb3Jt
YXQtPnNldEluaXRpYWxpemVkSW50bE9iamVjdCgpOworCisgICAgLy8gMy4gTGV0IHJlcXVlc3Rl
ZExvY2FsZXMgYmUgQ2Fub25pY2FsaXplTG9jYWxlTGlzdChsb2NhbGVzKS4KKyAgICBWZWN0b3I8
U3RyaW5nPiByZXF1ZXN0ZWRMb2NhbGVzID0gY2Fub25pY2FsaXplTG9jYWxlTGlzdChzdGF0ZSwg
bG9jYWxlcyk7CisgICAgLy8gNC4gUmV0dXJuSWZBYnJ1cHQocmVxdWVzdGVkTG9jYWxlcyksCisg
ICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQo
KTsKKworICAgIC8vIDUuIExldCBvcHRpb25zIGJlIFRvRGF0ZVRpbWVPcHRpb25zKG9wdGlvbnMs
ICJhbnkiLCAiZGF0ZSIpLgorICAgIEpTT2JqZWN0KiBvcHRpb25zID0gdG9EYXRlVGltZU9wdGlv
bnMoc3RhdGUsIG9yaWdpbmFsT3B0aW9ucywgRGF0ZVRpbWVPcHRpb25SZXF1aXJlZDo6QW55LCBE
YXRlVGltZU9wdGlvbkRlZmF1bHRzOjpEYXRlKTsKKyAgICAvLyA2LiBSZXR1cm5JZkFicnVwdChv
cHRpb25zKS4KKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBq
c1VuZGVmaW5lZCgpOworCisgICAgLy8gNy4gTGV0IG9wdCBiZSBhIG5ldyBSZWNvcmQuCisgICAg
SGFzaE1hcDxTdHJpbmcsIFN0cmluZz4gbG9jYWxlT3B0OworCisgICAgLy8gOC4gTGV0IG1hdGNo
ZXIgYmUgR2V0T3B0aW9uKG9wdGlvbnMsICJsb2NhbGVNYXRjaGVyIiwgInN0cmluZyIsIMKrImxv
b2t1cCIsICJiZXN0IGZpdCLCuywgImJlc3QgZml0IikuCisgICAgVk0mIHZtID0gc3RhdGUudm0o
KTsKKyAgICBjb25zdCBIYXNoU2V0PFN0cmluZz4gbG9jYWxlTWF0Y2hlcnMoeyBBU0NJSUxpdGVy
YWwoImxvb2t1cCIpLCBBU0NJSUxpdGVyYWwoImJlc3QgZml0IikgfSk7CisgICAgU3RyaW5nIGxv
Y2FsZU1hdGNoZXIgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0
eU5hbWVzLT5sb2NhbGVNYXRjaGVyLCBsb2NhbGVNYXRjaGVycywgImxvY2FsZU1hdGNoZXIgbXVz
dCBiZSBlaXRoZXIgXCJsb29rdXBcIiBvciBcImJlc3QgZml0XCIiLCBBU0NJSUxpdGVyYWwoImJl
c3QgZml0IikpOworICAgIC8vIDkuIFJldHVybklmQWJydXB0KG1hdGNoZXIpLgorICAgIGlmIChz
dGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAg
Ly8gMTAuIFNldCBvcHQuW1tsb2NhbGVNYXRjaGVyXV0gdG8gbWF0Y2hlci4KKyAgICBsb2NhbGVP
cHQuc2V0KHZtLnByb3BlcnR5TmFtZXMtPmxvY2FsZU1hdGNoZXIuc3RyaW5nKCksIGxvY2FsZU1h
dGNoZXIpOworCisgICAgLy8gMTEuIExldCBsb2NhbGVEYXRhIGJlIHRoZSB2YWx1ZSBvZiAlRGF0
ZVRpbWVGb3JtYXQlLltbbG9jYWxlRGF0YV1dLgorICAgIC8vIDEyLiBMZXQgciBiZSBSZXNvbHZl
TG9jYWxlKCAlRGF0ZVRpbWVGb3JtYXQlLltbYXZhaWxhYmxlTG9jYWxlc11dLCByZXF1ZXN0ZWRM
b2NhbGVzLCBvcHQsICVEYXRlVGltZUZvcm1hdCUuW1tyZWxldmFudEV4dGVuc2lvbktleXNdXSwg
bG9jYWxlRGF0YSkuCisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IGF2YWlsYWJsZUxvY2FsZXMg
PSBzdGF0ZS5sZXhpY2FsR2xvYmFsT2JqZWN0KCktPmludGxEYXRlVGltZUZvcm1hdEF2YWlsYWJs
ZUxvY2FsZXMoKTsKKyAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiByZWxldmFudEV4dGVuc2lvbktl
eXMgPSB7IEFTQ0lJTGl0ZXJhbCgiY2EiKSwgQVNDSUlMaXRlcmFsKCJudSIpIH07CisgICAgSGFz
aE1hcDxTdHJpbmcsIFN0cmluZz4gcmVzb2x2ZWQgPSByZXNvbHZlTG9jYWxlKGF2YWlsYWJsZUxv
Y2FsZXMsIHJlcXVlc3RlZExvY2FsZXMsIGxvY2FsZU9wdCwgcmVsZXZhbnRFeHRlbnNpb25LZXlz
LCBsb2NhbGVEYXRhKTsKKworICAgIC8vIDEzLiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tsb2NhbGVd
XSB0byB0aGUgdmFsdWUgb2Ygci5bW2xvY2FsZV1dLgorICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRM
b2NhbGUocmVzb2x2ZWQuZ2V0KHZtLnByb3BlcnR5TmFtZXMtPmxvY2FsZS5zdHJpbmcoKSkpOwor
ICAgIC8vIDE0LiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tjYWxlbmRhcl1dIHRvIHRoZSB2YWx1ZSBv
ZiByLltbY2FdXS4KKyAgICBTdHJpbmcgY2FsZW5kYXIgPSByZXNvbHZlZC5nZXQoQVNDSUlMaXRl
cmFsKCJjYSIpKTsKKyAgICAvLyBTd2l0Y2ggdG8gcHJlZmVycmVkIGFsaWFzZXMuCisgICAgaWYg
KGNhbGVuZGFyID09ICJncmVnb3J5IikKKyAgICAgICAgY2FsZW5kYXIgPSBBU0NJSUxpdGVyYWwo
ImdyZWdvcmlhbiIpOworICAgIGVsc2UgaWYgKGNhbGVuZGFyID09ICJpc2xhbWljYyIpCisgICAg
ICAgIGNhbGVuZGFyID0gQVNDSUlMaXRlcmFsKCJpc2xhbWljLWNpdmlsIik7CisgICAgZWxzZSBp
ZiAoY2FsZW5kYXIgPT0gImV0aGlvYWEiKQorICAgICAgICBjYWxlbmRhciA9IEFTQ0lJTGl0ZXJh
bCgiZXRoaW9waWMtYW1ldGUtYWxlbSIpOworICAgIGRhdGVUaW1lRm9ybWF0LT5zZXRDYWxlbmRh
cihjYWxlbmRhcik7CisgICAgLy8gMTUuIFNldCBkYXRlVGltZUZvcm1hdC5bW251bWJlcmluZ1N5
c3RlbV1dIHRvIHRoZSB2YWx1ZSBvZiByLltbbnVdXS4KKyAgICBkYXRlVGltZUZvcm1hdC0+c2V0
TnVtYmVyaW5nU3lzdGVtKHJlc29sdmVkLmdldChBU0NJSUxpdGVyYWwoIm51IikpKTsKKyAgICAv
LyAxNi4gTGV0IGRhdGFMb2NhbGUgYmUgdGhlIHZhbHVlIG9mIHIuW1tkYXRhTG9jYWxlXV0uCisg
ICAgU3RyaW5nIGRhdGFMb2NhbGUgPSByZXNvbHZlZC5nZXQoQVNDSUlMaXRlcmFsKCJkYXRhTG9j
YWxlIikpOworCisgICAgLy8gMTcuIExldCB0eiBiZSBHZXQob3B0aW9ucywgInRpbWVab25lIiku
CisgICAgSlNWYWx1ZSB0elZhbHVlID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlO
YW1lcy0+dGltZVpvbmUpOworICAgIC8vIDE4LiBSZXR1cm5JZkFicnVwdCh0eikuCisgICAgaWYg
KHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKwor
ICAgIC8vIDE5LiBJZiB0eiBpcyBub3QgdW5kZWZpbmVkLCB0aGVuCisgICAgU3RyaW5nIHR6Owor
ICAgIGlmICghdHpWYWx1ZS5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIC8vIGEuIExldCB0eiBi
ZSBUb1N0cmluZyh0eikuCisgICAgICAgIFN0cmluZyBvcmlnaW5hbFR6ID0gdHpWYWx1ZS50b1dU
RlN0cmluZygmc3RhdGUpOworICAgICAgICAvLyBiLiBSZXR1cm5JZkFicnVwdCh0eikuCisgICAg
ICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBqc1VuZGVm
aW5lZCgpOworICAgICAgICAvLyBjLiBJZiB0aGUgcmVzdWx0IG9mIElzVmFsaWRUaW1lWm9uZU5h
bWUodHopIGlzIGZhbHNlLCB0aGVuIGkuIFRocm93IGEgUmFuZ2VFcnJvciBleGNlcHRpb24uCisg
ICAgICAgIC8vIGQuIExldCB0eiBiZSBDYW5vbmljYWxpemVUaW1lWm9uZU5hbWUodHopLgorICAg
ICAgICB0eiA9IGNhbm9uaWNhbGl6ZVRpbWVab25lTmFtZShvcmlnaW5hbFR6KTsKKyAgICAgICAg
aWYgKHR6LmlzTnVsbCgpKQorICAgICAgICAgICAgcmV0dXJuIHRocm93UmFuZ2VFcnJvcigmc3Rh
dGUsIFN0cmluZzo6Zm9ybWF0KCJpbnZhbGlkIHRpbWUgem9uZTogJXMiLCBvcmlnaW5hbFR6LnV0
ZjgoKS5kYXRhKCkpKTsKKyAgICB9IGVsc2UKKyAgICAvLyAyMC4gRWxzZSwKKyAgICAgICAgLy8g
YS4gTGV0IHR6IGJlIERlZmF1bHRUaW1lWm9uZSgpLgorICAgICAgICB0eiA9IGRlZmF1bHRUaW1l
Wm9uZSgpOworCisgICAgLy8gMjEuIFNldCBkYXRlVGltZUZvcm1hdC5bW3RpbWVab25lXV0gdG8g
dHouCisgICAgZGF0ZVRpbWVGb3JtYXQtPnNldFRpbWVab25lKHR6KTsKKworICAgIC8vIDIyLiBM
ZXQgb3B0IGJlIGEgbmV3IFJlY29yZC4KKyAgICAvLyBSYXRoZXIgdGhhbiBidWlsZGluZyBhIHJl
Y29yZCwgYnVpbGQgdGhlIHNrZWxldG9uIHBhdHRlcm4uCisgICAgU3RyaW5nQnVpbGRlciBmb3Jt
YXRPcHQ7CisKKyAgICAvLyAyMy4gRm9yIGVhY2ggcm93IG9mIFRhYmxlIDMsIGV4Y2VwdCB0aGUg
aGVhZGVyIHJvdywgZG86CisgICAgLy8gYS4gTGV0IHByb3AgYmUgdGhlIG5hbWUgZ2l2ZW4gaW4g
dGhlIFByb3BlcnR5IGNvbHVtbiBvZiB0aGUgcm93LgorICAgIC8vIGIuIExldCB2YWx1ZSBiZSBH
ZXRPcHRpb24ob3B0aW9ucywgcHJvcCwgInN0cmluZyIsIMKrdGhlIHN0cmluZ3MgZ2l2ZW4gaW4g
dGhlIFZhbHVlcyBjb2x1bW4gb2YgdGhlIHJvd8K7LCB1bmRlZmluZWQpLgorICAgIC8vIGMuIFJl
dHVybklmQWJydXB0KHZhbHVlKS4KKyAgICAvLyBkLiBTZXQgb3B0LltbPHByb3A+XV0gdG8gdmFs
dWUuCisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IG5hcnJvd1Nob3J0TG9uZyh7IEFTQ0lJTGl0
ZXJhbCgibmFycm93IiksIEFTQ0lJTGl0ZXJhbCgic2hvcnQiKSwgQVNDSUlMaXRlcmFsKCJsb25n
IikgfSk7CisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IHR3b0RpZ2l0TnVtZXJpYyh7IEFTQ0lJ
TGl0ZXJhbCgiMi1kaWdpdCIpLCBBU0NJSUxpdGVyYWwoIm51bWVyaWMiKSB9KTsKKyAgICBjb25z
dCBIYXNoU2V0PFN0cmluZz4gdHdvRGlnaXROdW1lcmljTmFycm93U2hvcnRMb25nKHsgQVNDSUlM
aXRlcmFsKCIyLWRpZ2l0IiksIEFTQ0lJTGl0ZXJhbCgibnVtZXJpYyIpLCBBU0NJSUxpdGVyYWwo
Im5hcnJvdyIpLCBBU0NJSUxpdGVyYWwoInNob3J0IiksIEFTQ0lJTGl0ZXJhbCgibG9uZyIpIH0p
OworICAgIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiBzaG9ydExvbmcoeyBBU0NJSUxpdGVyYWwoInNo
b3J0IiksIEFTQ0lJTGl0ZXJhbCgibG9uZyIpIH0pOworCisgICAgU3RyaW5nIHdlZWtkYXkgPSBp
bnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT53ZWVrZGF5
LCBuYXJyb3dTaG9ydExvbmcsICJ3ZWVrZGF5IG11c3QgYmUgXCJuYXJyb3dcIiwgXCJzaG9ydFwi
LCBvciBcImxvbmdcIiIsIFN0cmluZygpKTsKKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkp
CisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIGlmICghd2Vla2RheS5pc051bGwo
KSkgeworICAgICAgICBpZiAod2Vla2RheSA9PSAibmFycm93IikKKyAgICAgICAgICAgIGZvcm1h
dE9wdC5hcHBlbmQoIkVFRUVFIik7CisgICAgICAgIGVsc2UgaWYgKHdlZWtkYXkgPT0gInNob3J0
IikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoIkVFRSIpOworICAgICAgICBlbHNlIGlm
ICh3ZWVrZGF5ID09ICJsb25nIikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoIkVFRUUi
KTsKKyAgICB9CisKKyAgICBTdHJpbmcgZXJhID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0
aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+ZXJhLCBuYXJyb3dTaG9ydExvbmcsICJlcmEgbXVzdCBi
ZSBcIm5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwibG9uZ1wiIiwgU3RyaW5nKCkpOworICAgIGlm
IChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Cisg
ICAgaWYgKCFlcmEuaXNOdWxsKCkpIHsKKyAgICAgICAgaWYgKGVyYSA9PSAibmFycm93IikKKyAg
ICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoIkdHR0dHIik7CisgICAgICAgIGVsc2UgaWYgKGVy
YSA9PSAic2hvcnQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgiR0dHIik7CisgICAg
ICAgIGVsc2UgaWYgKGVyYSA9PSAibG9uZyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5k
KCJHR0dHIik7CisgICAgfQorCisgICAgU3RyaW5nIHllYXIgPSBpbnRsU3RyaW5nT3B0aW9uKHN0
YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT55ZWFyLCB0d29EaWdpdE51bWVyaWMsICJ5
ZWFyIG11c3QgYmUgXCIyLWRpZ2l0XCIgb3IgXCJudW1lcmljXCIiLCBTdHJpbmcoKSk7CisgICAg
aWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsK
KyAgICBpZiAoIXllYXIuaXNOdWxsKCkpIHsKKyAgICAgICAgaWYgKHllYXIgPT0gIjItZGlnaXQi
KQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgieXkiKTsKKyAgICAgICAgZWxzZSBpZiAo
eWVhciA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCd5Jyk7Cisg
ICAgfQorCisgICAgU3RyaW5nIG1vbnRoID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9u
cywgdm0ucHJvcGVydHlOYW1lcy0+bW9udGgsIHR3b0RpZ2l0TnVtZXJpY05hcnJvd1Nob3J0TG9u
ZywgIm1vbnRoIG11c3QgYmUgXCIyLWRpZ2l0XCIsIFwibnVtZXJpY1wiLCBcIm5hcnJvd1wiLCBc
InNob3J0XCIsIG9yIFwibG9uZ1wiIiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNl
cHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCFtb250aC5p
c051bGwoKSkgeworICAgICAgICBpZiAobW9udGggPT0gIjItZGlnaXQiKQorICAgICAgICAgICAg
Zm9ybWF0T3B0LmFwcGVuZCgiTU0iKTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gIm51bWVy
aWMiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgnTScpOworICAgICAgICBlbHNlIGlm
IChtb250aCA9PSAibmFycm93IikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoIk1NTU1N
Iik7CisgICAgICAgIGVsc2UgaWYgKG1vbnRoID09ICJzaG9ydCIpCisgICAgICAgICAgICBmb3Jt
YXRPcHQuYXBwZW5kKCJNTU0iKTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gImxvbmciKQor
ICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgiTU1NTSIpOworICAgIH0KKworICAgIFN0cmlu
ZyBkYXkgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVz
LT5kYXksIHR3b0RpZ2l0TnVtZXJpYywgImRheSBtdXN0IGJlIFwiMi1kaWdpdFwiIG9yIFwibnVt
ZXJpY1wiIiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAg
ICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCFkYXkuaXNOdWxsKCkpIHsKKyAgICAg
ICAgaWYgKGRheSA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCJk
ZCIpOworICAgICAgICBlbHNlIGlmIChkYXkgPT0gIm51bWVyaWMiKQorICAgICAgICAgICAgZm9y
bWF0T3B0LmFwcGVuZCgnZCcpOworICAgIH0KKworICAgIFN0cmluZyBob3VyID0gaW50bFN0cmlu
Z09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+aG91ciwgdHdvRGlnaXRO
dW1lcmljLCAiaG91ciBtdXN0IGJlIFwiMi1kaWdpdFwiIG9yIFwibnVtZXJpY1wiIiwgU3RyaW5n
KCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5k
ZWZpbmVkKCk7CisKKyAgICAvLyBXZSBuZWVkIGhvdXIxMiB0byBtYWtlIHRoZSBob3VyIHNrZWxl
dG9uIHBhdHRlcm4gZGVjaXNpb24sIHNvIGRvIHRoaXMgZWFybHkuCisgICAgLy8gMzIuIExldCBo
cjEyIGJlIEdldE9wdGlvbihvcHRpb25zLCAiaG91cjEyIiwgImJvb2xlYW4iLCB1bmRlZmluZWQs
IHVuZGVmaW5lZCkuCisgICAgYm9vbCBpc0hvdXIxMlVuZGVmaW5lZCA9IHRydWU7CisgICAgYm9v
bCBocjEyID0gaW50bEJvb2xlYW5PcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFt
ZXMtPmhvdXIxMiwgaXNIb3VyMTJVbmRlZmluZWQpOworICAgIC8vIDMzLiBSZXR1cm5JZkFicnVw
dChocjEyKS4KKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBq
c1VuZGVmaW5lZCgpOworCisgICAgaWYgKCFob3VyLmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChp
c0hvdXIxMlVuZGVmaW5lZCkgeworICAgICAgICAgICAgaWYgKGhvdXIgPT0gIjItZGlnaXQiKQor
ICAgICAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoImpqIik7CisgICAgICAgICAgICBlbHNl
IGlmIChob3VyID09ICJudW1lcmljIikKKyAgICAgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5k
KCdqJyk7CisgICAgICAgIH0gZWxzZSBpZiAoaHIxMikgeworICAgICAgICAgICAgaWYgKGhvdXIg
PT0gIjItZGlnaXQiKQorICAgICAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoImhoIik7Cisg
ICAgICAgICAgICBlbHNlIGlmIChob3VyID09ICJudW1lcmljIikKKyAgICAgICAgICAgICAgICBm
b3JtYXRPcHQuYXBwZW5kKCdoJyk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBpZiAo
aG91ciA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgiSEgi
KTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGhvdXIgPT0gIm51bWVyaWMiKQorICAgICAgICAgICAg
ICAgIGZvcm1hdE9wdC5hcHBlbmQoJ0gnKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIFN0cmlu
ZyBtaW51dGUgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5h
bWVzLT5taW51dGUsIHR3b0RpZ2l0TnVtZXJpYywgIm1pbnV0ZSBtdXN0IGJlIFwiMi1kaWdpdFwi
IG9yIFwibnVtZXJpY1wiIiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24o
KSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCFtaW51dGUuaXNOdWxs
KCkpIHsKKyAgICAgICAgaWYgKG1pbnV0ZSA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBmb3Jt
YXRPcHQuYXBwZW5kKCJtbSIpOworICAgICAgICBlbHNlIGlmIChtaW51dGUgPT0gIm51bWVyaWMi
KQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgnbScpOworICAgIH0KKworICAgIFN0cmlu
ZyBzZWNvbmQgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5h
bWVzLT5zZWNvbmQsIHR3b0RpZ2l0TnVtZXJpYywgInNlY29uZCBtdXN0IGJlIFwiMi1kaWdpdFwi
IG9yIFwibnVtZXJpY1wiIiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24o
KSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCFzZWNvbmQuaXNOdWxs
KCkpIHsKKyAgICAgICAgaWYgKHNlY29uZCA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBmb3Jt
YXRPcHQuYXBwZW5kKCJzcyIpOworICAgICAgICBlbHNlIGlmIChzZWNvbmQgPT0gIm51bWVyaWMi
KQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgncycpOworICAgIH0KKworICAgIFN0cmlu
ZyB0aW1lWm9uZU5hbWUgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9w
ZXJ0eU5hbWVzLT50aW1lWm9uZU5hbWUsIHNob3J0TG9uZywgInRpbWVab25lTmFtZSBtdXN0IGJl
IFwic2hvcnRcIiBvciBcImxvbmdcIiIsIFN0cmluZygpKTsKKyAgICBpZiAoc3RhdGUuaGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIGlmICghdGltZVpv
bmVOYW1lLmlzTnVsbCgpKSB7CisgICAgICAgIGlmICh0aW1lWm9uZU5hbWUgPT0gInNob3J0IikK
KyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoJ3onKTsKKyAgICAgICAgZWxzZSBpZiAodGlt
ZVpvbmVOYW1lID09ICJsb25nIikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoInp6enoi
KTsKKyAgICB9CisKKyAgICAvLyAyNC4gTGV0IGRhdGFMb2NhbGVEYXRhIGJlIEdldChsb2NhbGVE
YXRhLCBkYXRhTG9jYWxlKS4KKyAgICAvLyAyNS4gTGV0IGZvcm1hdHMgYmUgR2V0KGRhdGFMb2Nh
bGVEYXRhLCAiZm9ybWF0cyIpLgorICAgIC8vIDI2LiBMZXQgbWF0Y2hlciBiZSBHZXRPcHRpb24o
b3B0aW9ucywgImZvcm1hdE1hdGNoZXIiLCAic3RyaW5nIiwgwqsiYmFzaWMiLCAiYmVzdCBmaXQi
wrssICJiZXN0IGZpdCIpLgorICAgIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiBmb3JtYXRNYXRjaGVy
cyh7IEFTQ0lJTGl0ZXJhbCgiYmFzaWMiKSwgQVNDSUlMaXRlcmFsKCJiZXN0IGZpdCIpIH0pOwor
ICAgIGludGxTdHJpbmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmZv
cm1hdE1hdGNoZXIsIGZvcm1hdE1hdGNoZXJzLCAiZm9ybWF0TWF0Y2hlciBtdXN0IGJlIGVpdGhl
ciBcImJhc2ljXCIgb3IgXCJiZXN0IGZpdFwiIiwgQVNDSUlMaXRlcmFsKCJiZXN0IGZpdCIpKTsK
KyAgICAvLyAyNy4gUmV0dXJuSWZBYnJ1cHQobWF0Y2hlcikuCisgICAgaWYgKHN0YXRlLmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAgIC8vIEFsd2F5
cyB1c2UgSUNVIGRhdGUgZm9ybWF0IGdlbmVyYXRvciwgcmF0aGVyIHRoYW4gb3VyIG93biBwYXR0
ZXJuIGxpc3QgYW5kIG1hdGNoZXIuCisgICAgLy8gMjguIElmIG1hdGNoZXIgaXMgImJhc2ljIiwg
dGhlbgorICAgIC8vIGEuIExldCBGb3JtYXRNYXRjaGVyIGJlIHRoZSBhYnN0cmFjdCBvcGVyYXRp
b24gQmFzaWNGb3JtYXRNYXRjaGVyLgorICAgIC8vIDI5LiBFbHNlCisgICAgLy8gYS4gTGV0IEZv
cm1hdE1hdGNoZXIgYmUgdGhlIGFic3RyYWN0IG9wZXJhdGlvbiBCZXN0Rml0Rm9ybWF0TWF0Y2hl
ci4KKyAgICAvLyAzMC4gTGV0IGJlc3RGb3JtYXQgYmUgRm9ybWF0TWF0Y2hlcihvcHQsIGZvcm1h
dHMpLgorICAgIFVFcnJvckNvZGUgc3RhdHVzKFVfWkVST19FUlJPUik7CisgICAgVURhdGVUaW1l
UGF0dGVybkdlbmVyYXRvciogcGcgPSB1ZGF0cGdfb3BlbihkYXRhTG9jYWxlLnV0ZjgoKS5kYXRh
KCksICZzdGF0dXMpOworICAgIGlmIChVX0ZBSUxVUkUoc3RhdHVzKSkKKyAgICAgICAgcmV0dXJu
IHRocm93VHlwZUVycm9yKCZzdGF0ZSwgU3RyaW5nOjpmb3JtYXQoImZhaWxlZCB0byBpbml0aWFs
aXplIERhdGVUaW1lRm9ybWF0IHdpdGggSUNVIGVycm9yICVzIiwgdV9lcnJvck5hbWUoc3RhdHVz
KSkpOworCisgICAgU3RyaW5nVmlldyBza2VsZXRvbihmb3JtYXRPcHQudG9TdHJpbmcoKSk7Cisg
ICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgIGludDMyX3QgcGF0dGVybkxlbmd0aCA9IHVk
YXRwZ19nZXRCZXN0UGF0dGVybihwZywgc2tlbGV0b24udXBjb252ZXJ0ZWRDaGFyYWN0ZXJzKCks
IHNrZWxldG9uLmxlbmd0aCgpLCBudWxscHRyLCAwLCAmc3RhdHVzKTsKKyAgICBpZiAoVV9GQUlM
VVJFKHN0YXR1cykgJiYgc3RhdHVzICE9IFVfQlVGRkVSX09WRVJGTE9XX0VSUk9SKSB7CisgICAg
ICAgIHVkYXRwZ19jbG9zZShwZyk7CisgICAgICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcigmc3Rh
dGUsIFN0cmluZzo6Zm9ybWF0KCJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBEYXRlVGltZUZvcm1hdCB3
aXRoIElDVSBlcnJvciAlcyIsIHVfZXJyb3JOYW1lKHN0YXR1cykpKTsKKyAgICB9CisKKyAgICBz
dGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgVmVjdG9yPFVDaGFyPiBwYXR0ZXJuQnVmZmVyKHBh
dHRlcm5MZW5ndGgpOworICAgIHVkYXRwZ19nZXRCZXN0UGF0dGVybihwZywgc2tlbGV0b24udXBj
b252ZXJ0ZWRDaGFyYWN0ZXJzKCksIHNrZWxldG9uLmxlbmd0aCgpLCBwYXR0ZXJuQnVmZmVyLmRh
dGEoKSwgcGF0dGVybkxlbmd0aCwgJnN0YXR1cyk7CisgICAgdWRhdHBnX2Nsb3NlKHBnKTsKKyAg
ICBpZiAoVV9GQUlMVVJFKHN0YXR1cykpCisgICAgICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcigm
c3RhdGUsIFN0cmluZzo6Zm9ybWF0KCJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBEYXRlVGltZUZvcm1h
dCB3aXRoIElDVSBlcnJvciAlcyIsIHVfZXJyb3JOYW1lKHN0YXR1cykpKTsKKworICAgIFN0cmlu
ZyBwYXR0ZXJuKHBhdHRlcm5CdWZmZXIuZGF0YSgpLCBwYXR0ZXJuTGVuZ3RoKTsKKworICAgIC8v
IDMxLiBGb3IgZWFjaCByb3cgaW4gVGFibGUgMywgZXhjZXB0IHRoZSBoZWFkZXIgcm93LCBkbwor
ICAgIC8vIGEuIExldCBwcm9wIGJlIHRoZSBuYW1lIGdpdmVuIGluIHRoZSBQcm9wZXJ0eSBjb2x1
bW4gb2YgdGhlIHJvdy4KKyAgICAvLyBiLiBMZXQgcCBiZSBHZXQoYmVzdEZvcm1hdCwgcHJvcCku
CisgICAgLy8gYy4gSWYgcCBub3QgdW5kZWZpbmVkLCB0aGVuIGkuIFNldCBkYXRlVGltZUZvcm1h
dC5bWzxwcm9wPl1dIHRvIHAuCisgICAgc2V0Rm9ybWF0c0Zyb21QYXR0ZXJuKGRhdGVUaW1lRm9y
bWF0LCBwYXR0ZXJuKTsKKworICAgIC8vIDM0LiBJZiBkYXRlVGltZUZvcm1hdCBoYXMgYW4gaW50
ZXJuYWwgc2xvdCBbW2hvdXJdXSwgdGhlbgorICAgIC8vIGEuIElmIGhyMTIgaXMgdW5kZWZpbmVk
LCB0aGVuIGkuIExldCBocjEyIGJlIEdldChkYXRhTG9jYWxlRGF0YSwgImhvdXIxMiIpLgorICAg
IC8vIGIuIFNldCBkYXRlVGltZUZvcm1hdC5bW2hvdXIxMl1dIHRvIGhyMTIuCisgICAgLy8gYy4g
SWYgaHIxMiBpcyB0cnVlLCB0aGVuCisgICAgLy8gaS4gTGV0IGhvdXJObzAgYmUgR2V0KGRhdGFM
b2NhbGVEYXRhLCAiaG91ck5vMCIpLgorICAgIC8vIGlpLiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1to
b3VyTm8wXV0gdG8gaG91ck5vMC4KKyAgICAvLyBpaWkuIExldCBwYXR0ZXJuIGJlIEdldChiZXN0
Rm9ybWF0LCAicGF0dGVybjEyIikuCisgICAgLy8gZC4gRWxzZQorICAgIC8vIGkuIExldCBwYXR0
ZXJuIGJlIEdldChiZXN0Rm9ybWF0LCAicGF0dGVybiIpLgorICAgIC8vIDM1LiBFbHNlCisgICAg
Ly8gYS4gTGV0IHBhdHRlcm4gYmUgR2V0KGJlc3RGb3JtYXQsICJwYXR0ZXJuIikuCisgICAgLy8g
MzYuIFNldCBkYXRlVGltZUZvcm1hdC5bW3BhdHRlcm5dXSB0byBwYXR0ZXJuLgorCisgICAgLy8g
MzcuIFNldCBkYXRlVGltZUZvcm1hdC5bW2JvdW5kRm9ybWF0XV0gdG8gdW5kZWZpbmVkLgorICAg
IC8vIEFscmVhZHkgdW5kZWZpbmVkLgorCisgICAgLy8gMzguIFNldCBkYXRlVGltZUZvcm1hdC5b
W2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXRdXSB0byB0cnVlLgorICAgIGRhdGVUaW1lRm9ybWF0
LT5zZXRJbml0aWFsaXplZERhdGVUaW1lRm9ybWF0KCk7CisKKyAgICAvLyAzOS4gUmV0dXJuZGF0
ZVRpbWVGb3JtYXQuCisgICAgcmV0dXJuIGRhdGVUaW1lRm9ybWF0OworfQorCiBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdEZ1bmNGb3JtYXREYXRlVGltZShF
eGVjU3RhdGUqIHN0YXRlKQogewogICAgIC8vIDEyLjMuNCBEYXRlVGltZSBGb3JtYXQgRnVuY3Rp
b25zIChFQ01BLTQwMiAyLjApCiAgICAgLy8gMS4gTGV0IGR0ZiBiZSB0aGUgdGhpcyB2YWx1ZS4K
ICAgICBJbnRsRGF0ZVRpbWVGb3JtYXQqIGZvcm1hdCA9IGpzRHluYW1pY0Nhc3Q8SW50bERhdGVU
aW1lRm9ybWF0Kj4oc3RhdGUtPnRoaXNWYWx1ZSgpKTsKICAgICAvLyAyLiBBc3NlcnQ6IFR5cGUo
ZHRmKSBpcyBPYmplY3QgYW5kIGR0ZiBoYXMgYW4gW1tpbml0aWFsaXplZERhdGVUaW1lRm9ybWF0
XV0gaW50ZXJuYWwgc2xvdCB3aG9zZSB2YWx1ZSBpcyB0cnVlLgotICAgIGlmICghZm9ybWF0KQot
ICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93VHlwZUVycm9yKHN0YXRlKSk7Cisg
ICAgaWYgKCFmb3JtYXQgfHwgIWZvcm1hdC0+aW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdCgpKQor
ICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93VHlwZUVycm9yKHN0YXRlLCBBU0NJ
SUxpdGVyYWwoIkRhdGVUaW1lRm9ybWF0IGZvcm1hdCgpIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mg
bm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1lRm9ybWF0IikpKTsKIAogICAg
IEpTVmFsdWUgZGF0ZSA9IHN0YXRlLT5hcmd1bWVudCgwKTsKICAgICBkb3VibGUgdmFsdWU7CkBA
IC0xMTcsNyArNzcyLDcgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRp
bWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUoRXhlY1N0YXRlKiBzdGEKIAogICAgIC8vIDEuIElm
IHggaXMgbm90IGEgZmluaXRlIE51bWJlciwgdGhlbiB0aHJvdyBhIFJhbmdlRXJyb3IgZXhjZXB0
aW9uLgogICAgIGlmICghc3RkOjppc2Zpbml0ZSh2YWx1ZSkpCi0gICAgICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUodGhyb3dSYW5nZUVycm9yKHN0YXRlLCBBU0NJSUxpdGVyYWwoImRhdGUgdmFs
dWUgaXMgbm90IGZpbml0ZSBpbiBEYXRlVGltZUZvcm1hdC5mb3JtYXQoKSIpKSk7CisgICAgICAg
IHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dSYW5nZUVycm9yKHN0YXRlLCBBU0NJSUxpdGVy
YWwoImRhdGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRlVGltZUZvcm1hdCBmb3JtYXQoKSIp
KSk7CiAKICAgICAvLyBGSVhNRTogaW1wbGVtZW50IDIgLSA5CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmgKaW5kZXggN2RhZWQxMzhm
YjA4ZGNmYTNiZTY3ZDM3YzgzYTQ3ZGI0YWFiY2JkNy4uNjVjNjU3MzMzMDZhNDhlMzI1M2MxMWI2
OGViYzhiNDEyNmI3NmFjNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bERhdGVUaW1lRm9ybWF0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bERhdGVUaW1lRm9ybWF0LmgKQEAgLTM5LDYgKzM5LDE2IEBAIGNsYXNzIEludGxEYXRl
VGltZUZvcm1hdCA6IHB1YmxpYyBKU0Rlc3RydWN0aWJsZU9iamVjdCB7CiBwdWJsaWM6CiAgICAg
dHlwZWRlZiBKU0Rlc3RydWN0aWJsZU9iamVjdCBCYXNlOwogCisgICAgZW51bSBjbGFzcyBXZWVr
ZGF5U3R5bGUgeyBOb25lLCBOYXJyb3csIFNob3J0LCBMb25nIH07CisgICAgZW51bSBjbGFzcyBF
cmFTdHlsZSB7IE5vbmUsIE5hcnJvdywgU2hvcnQsIExvbmcgfTsKKyAgICBlbnVtIGNsYXNzIFll
YXJTdHlsZSB7IE5vbmUsIFR3b0RpZ2l0LCBOdW1lcmljIH07CisgICAgZW51bSBjbGFzcyBNb250
aFN0eWxlIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMsIE5hcnJvdywgU2hvcnQsIExvbmcgfTsK
KyAgICBlbnVtIGNsYXNzIERheVN0eWxlIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMgfTsKKyAg
ICBlbnVtIGNsYXNzIEhvdXJTdHlsZSB7IE5vbmUsIFR3b0RpZ2l0LCBOdW1lcmljIH07CisgICAg
ZW51bSBjbGFzcyBNaW51dGVTdHlsZSB7IE5vbmUsIFR3b0RpZ2l0LCBOdW1lcmljIH07CisgICAg
ZW51bSBjbGFzcyBTZWNvbmRTdHlsZSB7IE5vbmUsIFR3b0RpZ2l0LCBOdW1lcmljIH07CisgICAg
ZW51bSBjbGFzcyBUaW1lWm9uZU5hbWVTdHlsZSB7IE5vbmUsIFNob3J0LCBMb25nIH07CisKICAg
ICBzdGF0aWMgSW50bERhdGVUaW1lRm9ybWF0KiBjcmVhdGUoVk0mLCBJbnRsRGF0ZVRpbWVGb3Jt
YXRDb25zdHJ1Y3RvciopOwogICAgIHN0YXRpYyBTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShW
TSYsIEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSk7CiAKQEAgLTQ3LDYgKzU3LDQwIEBAIHB1Ymxp
YzoKICAgICBKU0JvdW5kRnVuY3Rpb24qIGJvdW5kRm9ybWF0KCkgY29uc3QgeyByZXR1cm4gbV9i
b3VuZEZvcm1hdC5nZXQoKTsgfQogICAgIHZvaWQgc2V0Qm91bmRGb3JtYXQoVk0mLCBKU0JvdW5k
RnVuY3Rpb24qKTsKIAorICAgIGJvb2wgaW5pdGlhbGl6ZWRJbnRsT2JqZWN0KCkgY29uc3QgeyBy
ZXR1cm4gbV9pbml0aWFsaXplZEludGxPYmplY3Q7IH0KKyAgICB2b2lkIHNldEluaXRpYWxpemVk
SW50bE9iamVjdCgpIHsgbV9pbml0aWFsaXplZEludGxPYmplY3QgPSB0cnVlOyB9CisgICAgYm9v
bCBpbml0aWFsaXplZERhdGVUaW1lRm9ybWF0KCkgY29uc3QgeyByZXR1cm4gbV9pbml0aWFsaXpl
ZERhdGVUaW1lRm9ybWF0OyB9CisgICAgdm9pZCBzZXRJbml0aWFsaXplZERhdGVUaW1lRm9ybWF0
KCkgeyBtX2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQgPSB0cnVlOyB9CisKKyAgICBTdHJpbmcg
bG9jYWxlKCkgY29uc3QgeyByZXR1cm4gbV9sb2NhbGU7IH0KKyAgICB2b2lkIHNldExvY2FsZShj
b25zdCBTdHJpbmcmIGxvY2FsZSkgeyBtX2xvY2FsZSA9IGxvY2FsZTsgfQorICAgIFN0cmluZyBj
YWxlbmRhcigpIGNvbnN0IHsgcmV0dXJuIG1fY2FsZW5kYXI7IH0KKyAgICB2b2lkIHNldENhbGVu
ZGFyKGNvbnN0IFN0cmluZyYgY2FsZW5kYXIpIHsgbV9jYWxlbmRhciA9IGNhbGVuZGFyOyB9Cisg
ICAgU3RyaW5nIG51bWJlcmluZ1N5c3RlbSgpIGNvbnN0IHsgcmV0dXJuIG1fbnVtYmVyaW5nU3lz
dGVtOyB9CisgICAgdm9pZCBzZXROdW1iZXJpbmdTeXN0ZW0oY29uc3QgU3RyaW5nJiBudW1iZXJp
bmdTeXN0ZW0pIHsgbV9udW1iZXJpbmdTeXN0ZW0gPSBudW1iZXJpbmdTeXN0ZW07IH0KKyAgICBT
dHJpbmcgdGltZVpvbmUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVab25lOyB9CisgICAgdm9pZCBz
ZXRUaW1lWm9uZShjb25zdCBTdHJpbmcmIHRpbWVab25lKSB7IG1fdGltZVpvbmUgPSB0aW1lWm9u
ZTsgfQorICAgIGJvb2wgaG91cjEyKCkgY29uc3QgeyByZXR1cm4gbV9ob3VyMTI7IH0KKyAgICB2
b2lkIHNldEhvdXIxMihjb25zdCBib29sJiBob3VyMTIpIHsgbV9ob3VyMTIgPSBob3VyMTI7IH0K
KyAgICBXZWVrZGF5U3R5bGUgd2Vla2RheSgpIGNvbnN0IHsgcmV0dXJuIG1fd2Vla2RheTsgfQor
ICAgIHZvaWQgc2V0V2Vla2RheShjb25zdCBXZWVrZGF5U3R5bGUmIHdlZWtkYXkpIHsgbV93ZWVr
ZGF5ID0gd2Vla2RheTsgfQorICAgIEVyYVN0eWxlIGVyYSgpIGNvbnN0IHsgcmV0dXJuIG1fZXJh
OyB9CisgICAgdm9pZCBzZXRFcmEoY29uc3QgRXJhU3R5bGUmIGVyYSkgeyBtX2VyYSA9IGVyYTsg
fQorICAgIFllYXJTdHlsZSB5ZWFyKCkgY29uc3QgeyByZXR1cm4gbV95ZWFyOyB9CisgICAgdm9p
ZCBzZXRZZWFyKGNvbnN0IFllYXJTdHlsZSYgeWVhcikgeyBtX3llYXIgPSB5ZWFyOyB9CisgICAg
TW9udGhTdHlsZSBtb250aCgpIGNvbnN0IHsgcmV0dXJuIG1fbW9udGg7IH0KKyAgICB2b2lkIHNl
dE1vbnRoKGNvbnN0IE1vbnRoU3R5bGUmIG1vbnRoKSB7IG1fbW9udGggPSBtb250aDsgfQorICAg
IERheVN0eWxlIGRheSgpIGNvbnN0IHsgcmV0dXJuIG1fZGF5OyB9CisgICAgdm9pZCBzZXREYXko
Y29uc3QgRGF5U3R5bGUmIGRheSkgeyBtX2RheSA9IGRheTsgfQorICAgIEhvdXJTdHlsZSBob3Vy
KCkgY29uc3QgeyByZXR1cm4gbV9ob3VyOyB9CisgICAgdm9pZCBzZXRIb3VyKGNvbnN0IEhvdXJT
dHlsZSYgaG91cikgeyBtX2hvdXIgPSBob3VyOyB9CisgICAgTWludXRlU3R5bGUgbWludXRlKCkg
Y29uc3QgeyByZXR1cm4gbV9taW51dGU7IH0KKyAgICB2b2lkIHNldE1pbnV0ZShjb25zdCBNaW51
dGVTdHlsZSYgbWludXRlKSB7IG1fbWludXRlID0gbWludXRlOyB9CisgICAgU2Vjb25kU3R5bGUg
c2Vjb25kKCkgY29uc3QgeyByZXR1cm4gbV9zZWNvbmQ7IH0KKyAgICB2b2lkIHNldFNlY29uZChj
b25zdCBTZWNvbmRTdHlsZSYgc2Vjb25kKSB7IG1fc2Vjb25kID0gc2Vjb25kOyB9CisgICAgVGlt
ZVpvbmVOYW1lU3R5bGUgdGltZVpvbmVOYW1lKCkgY29uc3QgeyByZXR1cm4gbV90aW1lWm9uZU5h
bWU7IH0KKyAgICB2b2lkIHNldFRpbWVab25lTmFtZShjb25zdCBUaW1lWm9uZU5hbWVTdHlsZSYg
dGltZVpvbmVOYW1lKSB7IG1fdGltZVpvbmVOYW1lID0gdGltZVpvbmVOYW1lOyB9CisKIHByb3Rl
Y3RlZDoKICAgICBJbnRsRGF0ZVRpbWVGb3JtYXQoVk0mLCBTdHJ1Y3R1cmUqKTsKICAgICB2b2lk
IGZpbmlzaENyZWF0aW9uKFZNJik7CkBAIC01NCw4ICs5OCwyOSBAQCBwcm90ZWN0ZWQ6CiAgICAg
c3RhdGljIHZvaWQgdmlzaXRDaGlsZHJlbihKU0NlbGwqLCBTbG90VmlzaXRvciYpOwogCiAgICAg
V3JpdGVCYXJyaWVyPEpTQm91bmRGdW5jdGlvbj4gbV9ib3VuZEZvcm1hdDsKKworcHJpdmF0ZToK
KyAgICBib29sIG1faW5pdGlhbGl6ZWRJbnRsT2JqZWN0IHsgZmFsc2UgfTsKKyAgICBib29sIG1f
aW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdCB7IGZhbHNlIH07CisKKyAgICBTdHJpbmcgbV9sb2Nh
bGUgeyBBU0NJSUxpdGVyYWwoImVuIikgfTsKKyAgICBTdHJpbmcgbV9jYWxlbmRhciB7IEFTQ0lJ
TGl0ZXJhbCgiZ3JlZ29yeSIpIH07CisgICAgU3RyaW5nIG1fbnVtYmVyaW5nU3lzdGVtIHsgQVND
SUlMaXRlcmFsKCJsYXRuIikgfTsKKyAgICBTdHJpbmcgbV90aW1lWm9uZSB7IEFTQ0lJTGl0ZXJh
bCgiVVRDIikgfTsKKyAgICBib29sIG1faG91cjEyIHsgdHJ1ZSB9OworICAgIFdlZWtkYXlTdHls
ZSBtX3dlZWtkYXkgeyBXZWVrZGF5U3R5bGU6Ok5vbmUgfTsKKyAgICBFcmFTdHlsZSBtX2VyYSB7
IEVyYVN0eWxlOjpOb25lIH07CisgICAgWWVhclN0eWxlIG1feWVhciB7IFllYXJTdHlsZTo6Tm9u
ZSB9OworICAgIE1vbnRoU3R5bGUgbV9tb250aCB7IE1vbnRoU3R5bGU6Ok5vbmUgfTsKKyAgICBE
YXlTdHlsZSBtX2RheSB7IERheVN0eWxlOjpOb25lIH07CisgICAgSG91clN0eWxlIG1faG91ciB7
IEhvdXJTdHlsZTo6Tm9uZSB9OworICAgIE1pbnV0ZVN0eWxlIG1fbWludXRlIHsgTWludXRlU3R5
bGU6Ok5vbmUgfTsKKyAgICBTZWNvbmRTdHlsZSBtX3NlY29uZCB7IFNlY29uZFN0eWxlOjpOb25l
IH07CisgICAgVGltZVpvbmVOYW1lU3R5bGUgbV90aW1lWm9uZU5hbWUgeyBUaW1lWm9uZU5hbWVT
dHlsZTo6Tm9uZSB9OwogfTsKLSAgICAKKworU3RyaW5nIGRlZmF1bHRUaW1lWm9uZSgpOworSlNW
YWx1ZSBpbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoRXhlY1N0YXRlJiwgSW50bERhdGVUaW1lRm9y
bWF0KiwgSlNWYWx1ZSBsb2NhbGVzLCBKU1ZhbHVlIG9wdGlvbnMpOwogRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUoRXhlY1N0
YXRlKik7CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3Bw
CmluZGV4IDFlODlmYWFhYjdlYjg4YzdmODY0ZTBmNTNmMjU1Y2I4YTJjNWVlY2MuLjhlOTZmOTQx
OTY4Mzc5MDZjZmM2OTg3MTBiYWU1OGJlM2M4ZDE2NjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1
Y3Rvci5jcHAKQEAgLTEwNCw5ICsxMDQsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hP
U1RfQ0FMTCBjb25zdHJ1Y3RJbnRsRGF0ZVRpbWVGb3JtYXQoRXhlY1N0YXRlKiBzdGF0ZQogICAg
IEFTU0VSVChkYXRlVGltZUZvcm1hdCk7CiAKICAgICAvLyA0LiBSZXR1cm4gSW5pdGlhbGl6ZURh
dGVUaW1lRm9ybWF0KGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKS4KLSAgICAvLyBG
SVhNRTogcmV0dXJuIEpTVmFsdWU6OmVuY29kZShJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoZGF0
ZVRpbWVGb3JtYXQsIGxvY2FsZXMsIG9wdGlvbnMpKTsKLQotICAgIHJldHVybiBKU1ZhbHVlOjpl
bmNvZGUoZGF0ZVRpbWVGb3JtYXQpOworICAgIEpTVmFsdWUgbG9jYWxlcyA9IHN0YXRlLT5hcmd1
bWVudCgwKTsKKyAgICBKU1ZhbHVlIG9wdGlvbnMgPSBzdGF0ZS0+YXJndW1lbnQoMSk7CisgICAg
cmV0dXJuIEpTVmFsdWU6OmVuY29kZShpbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoKnN0YXRlLCBk
YXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykpOwogfQogCiBzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxsSW50bERhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSogc3Rh
dGUpCkBAIC0xMjMsOSArMTIzLDkgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgY2FsbEludGxEYXRlVGltZUZvcm1hdChFeGVjU3RhdGUqIHN0YXRlKQogICAgIEFTU0VSVChk
YXRlVGltZUZvcm1hdCk7CiAKICAgICAvLyA0LiBSZXR1cm4gSW5pdGlhbGl6ZURhdGVUaW1lRm9y
bWF0KGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKS4KLSAgICAvLyBGSVhNRTogcmV0
dXJuIEpTVmFsdWU6OmVuY29kZShJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoZGF0ZVRpbWVGb3Jt
YXQsIGxvY2FsZXMsIG9wdGlvbnMpKTsKLQotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoZGF0
ZVRpbWVGb3JtYXQpOworICAgIEpTVmFsdWUgbG9jYWxlcyA9IHN0YXRlLT5hcmd1bWVudCgwKTsK
KyAgICBKU1ZhbHVlIG9wdGlvbnMgPSBzdGF0ZS0+YXJndW1lbnQoMSk7CisgICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZShpbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoKnN0YXRlLCBkYXRlVGltZUZv
cm1hdCwgbG9jYWxlcywgb3B0aW9ucykpOwogfQogCiBDb25zdHJ1Y3RUeXBlIEludGxEYXRlVGlt
ZUZvcm1hdENvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENvbnN0cnVjdERh
dGEmIGNvbnN0cnVjdERhdGEpCkBAIC0xNjEsNyArMTYxLDcgQEAgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvckZ1bmNTdXBwb3J0ZWRMb2Nh
bGVzT2YKICAgICAvLyAzLiBSZXR1cm4gU3VwcG9ydGVkTG9jYWxlcyhhdmFpbGFibGVMb2NhbGVz
LCByZXF1ZXN0ZWRMb2NhbGVzLCBvcHRpb25zKS4KICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2Rl
KHN1cHBvcnRlZExvY2FsZXMoKnN0YXRlLCBhdmFpbGFibGVMb2NhbGVzLCByZXF1ZXN0ZWRMb2Nh
bGVzLCBzdGF0ZS0+YXJndW1lbnQoMSkpKTsKIH0KLSAgICAKKwogdm9pZCBJbnRsRGF0ZVRpbWVG
b3JtYXRDb25zdHJ1Y3Rvcjo6dmlzaXRDaGlsZHJlbihKU0NlbGwqIGNlbGwsIFNsb3RWaXNpdG9y
JiB2aXNpdG9yKQogewogICAgIEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yKiB0aGlzT2Jq
ZWN0ID0ganNDYXN0PEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yKj4oY2VsbCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQ
cm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1l
Rm9ybWF0UHJvdG90eXBlLmNwcAppbmRleCBkNWU1MjU5ODI0ODBiMWVkNDkxZTZiN2I4ZmIxMmJi
OGFmMWFlZTdkLi4yM2UwYTYwOWM0NzNhMmI4NTY1MTI0NTRmYjhjMGE5ODFlMTdkNzk4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQ
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRl
VGltZUZvcm1hdFByb3RvdHlwZS5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKIAogI2luY2x1ZGUgIkVy
cm9yLmgiCiAjaW5jbHVkZSAiSW50bERhdGVUaW1lRm9ybWF0LmgiCisjaW5jbHVkZSAiSW50bE9i
amVjdC5oIgogI2luY2x1ZGUgIkpTQm91bmRGdW5jdGlvbi5oIgogI2luY2x1ZGUgIkpTQ0pTVmFs
dWVJbmxpbmVzLmgiCiAjaW5jbHVkZSAiSlNDZWxsSW5saW5lcy5oIgpAQCAtMzksOCArNDAsNiBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSk7Ci0KIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUdldHRlckZvcm1h
dChFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxE
YXRlVGltZUZvcm1hdFByb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGlvbnMoRXhlY1N0YXRlKik7CiAK
QEAgLTU5LDEwICs1OCwxMSBAQCBjb25zdCBDbGFzc0luZm8gSW50bERhdGVUaW1lRm9ybWF0UHJv
dG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmSW50bERhdGVUaW1lRgogQGVuZAogKi8KIAot
SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKiBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6
OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCitJ
bnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUqIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6
Y3JlYXRlKEV4ZWNTdGF0ZSogc3RhdGUsIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUpCiB7CisgICAgVk0mIHZtID0gc3RhdGUtPnZtKCk7CiAgICAgSW50bERhdGVUaW1lRm9y
bWF0UHJvdG90eXBlKiBvYmplY3QgPSBuZXcgKE5vdE51bGwsIGFsbG9jYXRlQ2VsbDxJbnRsRGF0
ZVRpbWVGb3JtYXRQcm90b3R5cGU+KHZtLmhlYXApKSBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5
cGUodm0sIHN0cnVjdHVyZSk7Ci0gICAgb2JqZWN0LT5maW5pc2hDcmVhdGlvbih2bSwgc3RydWN0
dXJlKTsKKyAgICBvYmplY3QtPmZpbmlzaENyZWF0aW9uKHN0YXRlLCBzdHJ1Y3R1cmUpOwogICAg
IHJldHVybiBvYmplY3Q7CiB9CiAKQEAgLTc2LDkgKzc2LDEzIEBAIEludGxEYXRlVGltZUZvcm1h
dFByb3RvdHlwZTo6SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJl
KiBzdHJ1CiB7CiB9CiAKLXZvaWQgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0sIFN0cnVjdHVyZSopCit2b2lkIEludGxEYXRlVGltZUZvcm1hdFByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiBzdGF0ZSwgU3RydWN0dXJlKikKIHsKKyAg
ICBWTSYgdm0gPSBzdGF0ZS0+dm0oKTsKICAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbih2bSk7CisK
KyAgICAvLyBUaGUgSW50bC5EYXRlVGltZUZvcm1hdCBwcm90b3R5cGUgb2JqZWN0IGlzIGl0c2Vs
ZiBhbiAlRGF0ZVRpbWVGb3JtYXQlIGluc3RhbmNlLCB3aG9zZSBpbnRlcm5hbCBzbG90cyBhcmUg
c2V0IGFzIGlmIGl0IGhhZCBiZWVuIGNvbnN0cnVjdGVkIGJ5IHRoZSBleHByZXNzaW9uIENvbnN0
cnVjdCglRGF0ZVRpbWVGb3JtYXQlKS4KKyAgICBpbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoKnN0
YXRlLCB0aGlzLCBqc1VuZGVmaW5lZCgpLCBqc1VuZGVmaW5lZCgpKTsKIH0KIAogYm9vbCBJbnRs
RGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCogb2Jq
ZWN0LCBFeGVjU3RhdGUqIHN0YXRlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBQcm9wZXJ0
eVNsb3QmIHNsb3QpCkBAIC04NiwxNSArOTAsMTUxIEBAIGJvb2wgSW50bERhdGVUaW1lRm9ybWF0
UHJvdG90eXBlOjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRl
CiAgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxKU09iamVjdD4oc3RhdGUsIGRhdGVU
aW1lRm9ybWF0UHJvdG90eXBlVGFibGUsIGpzQ2FzdDxJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5
cGUqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCitzdGF0aWMgU3RyaW5nIHdl
ZWtkYXlTdHlsZVRvU3RyaW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6V2Vla2RheVN0eWxl
IHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZv
cm1hdDo6V2Vla2RheVN0eWxlOjpOb25lOgorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAg
Y2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHlsZTo6TmFycm93OgorICAgICAgICBy
ZXR1cm4gQVNDSUlMaXRlcmFsKCJuYXJyb3ciKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1h
dDo6V2Vla2RheVN0eWxlOjpTaG9ydDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgic2hv
cnQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6V2Vla2RheVN0eWxlOjpMb25nOgor
ICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJsb25nIik7CisgICAgfQorICAgIEFTU0VSVF9O
T1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3RhdGljIFN0cmluZyBl
cmFTdHlsZVRvU3RyaW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGUgc3R5bGUp
Cit7CisgICAgc3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpF
cmFTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgIGNhc2UgSW50bERh
dGVUaW1lRm9ybWF0OjpFcmFTdHlsZTo6TmFycm93OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRl
cmFsKCJuYXJyb3ciKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6OlNo
b3J0OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJzaG9ydCIpOworICAgIGNhc2UgSW50
bERhdGVUaW1lRm9ybWF0OjpFcmFTdHlsZTo6TG9uZzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0
ZXJhbCgibG9uZyIpOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1
cm4gU3RyaW5nKCk7Cit9CisKK3N0YXRpYyBTdHJpbmcgeWVhclN0eWxlVG9TdHJpbmcoY29uc3Qg
SW50bERhdGVUaW1lRm9ybWF0OjpZZWFyU3R5bGUgc3R5bGUpCit7CisgICAgc3dpdGNoIChzdHls
ZSkgeworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpZZWFyU3R5bGU6Ok5vbmU6CisgICAg
ICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0
eWxlOjpUd29EaWdpdDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiMi1kaWdpdCIpOwor
ICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpZZWFyU3R5bGU6Ok51bWVyaWM6CisgICAgICAg
IHJldHVybiBBU0NJSUxpdGVyYWwoIm51bWVyaWMiKTsKKyAgICB9CisgICAgQVNTRVJUX05PVF9S
RUFDSEVEKCk7CisgICAgcmV0dXJuIFN0cmluZygpOworfQorCitzdGF0aWMgU3RyaW5nIG1vbnRo
U3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGUgc3R5bGUp
Cit7CisgICAgc3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpN
b250aFN0eWxlOjpOb25lOgorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRs
RGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6OlR3b0RpZ2l0OgorICAgICAgICByZXR1cm4gQVND
SUlMaXRlcmFsKCIyLWRpZ2l0Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRo
U3R5bGU6Ok51bWVyaWM6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIm51bWVyaWMiKTsK
KyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZTo6TmFycm93OgorICAgICAg
ICByZXR1cm4gQVNDSUlMaXRlcmFsKCJuYXJyb3ciKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZv
cm1hdDo6TW9udGhTdHlsZTo6U2hvcnQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoInNo
b3J0Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6Okxvbmc6Cisg
ICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoImxvbmciKTsKKyAgICB9CisgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIFN0cmluZygpOworfQorCitzdGF0aWMgU3RyaW5nIGRh
eVN0eWxlVG9TdHJpbmcoY29uc3QgSW50bERhdGVUaW1lRm9ybWF0OjpEYXlTdHlsZSBzdHlsZSkK
K3sKKyAgICBzd2l0Y2ggKHN0eWxlKSB7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkRh
eVN0eWxlOjpOb25lOgorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0
ZVRpbWVGb3JtYXQ6OkRheVN0eWxlOjpUd29EaWdpdDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0
ZXJhbCgiMi1kaWdpdCIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpEYXlTdHlsZTo6
TnVtZXJpYzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibnVtZXJpYyIpOworICAgIH0K
KyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gU3RyaW5nKCk7Cit9CisKK3N0
YXRpYyBTdHJpbmcgaG91clN0eWxlVG9TdHJpbmcoY29uc3QgSW50bERhdGVUaW1lRm9ybWF0OjpI
b3VyU3R5bGUgc3R5bGUpCit7CisgICAgc3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERh
dGVUaW1lRm9ybWF0OjpIb3VyU3R5bGU6Ok5vbmU6CisgICAgICAgIHJldHVybiBTdHJpbmcoKTsK
KyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlOjpUd29EaWdpdDoKKyAgICAg
ICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiMi1kaWdpdCIpOworICAgIGNhc2UgSW50bERhdGVUaW1l
Rm9ybWF0OjpIb3VyU3R5bGU6Ok51bWVyaWM6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwo
Im51bWVyaWMiKTsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJu
IFN0cmluZygpOworfQorCitzdGF0aWMgU3RyaW5nIG1pbnV0ZVN0eWxlVG9TdHJpbmcoY29uc3Qg
SW50bERhdGVUaW1lRm9ybWF0OjpNaW51dGVTdHlsZSBzdHlsZSkKK3sKKyAgICBzd2l0Y2ggKHN0
eWxlKSB7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1pbnV0ZVN0eWxlOjpOb25lOgor
ICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1p
bnV0ZVN0eWxlOjpUd29EaWdpdDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiMi1kaWdp
dCIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpNaW51dGVTdHlsZTo6TnVtZXJpYzoK
KyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibnVtZXJpYyIpOworICAgIH0KKyAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gU3RyaW5nKCk7Cit9CisKK3N0YXRpYyBTdHJp
bmcgc2Vjb25kU3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlNlY29uZFN0
eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGlt
ZUZvcm1hdDo6U2Vjb25kU3R5bGU6Ok5vbmU6CisgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAg
ICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6U2Vjb25kU3R5bGU6OlR3b0RpZ2l0OgorICAgICAg
ICByZXR1cm4gQVNDSUlMaXRlcmFsKCIyLWRpZ2l0Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVG
b3JtYXQ6OlNlY29uZFN0eWxlOjpOdW1lcmljOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFs
KCJudW1lcmljIik7CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVy
biBTdHJpbmcoKTsKK30KKworc3RhdGljIFN0cmluZyB0aW1lWm9uZU5hbWVTdHlsZVRvU3RyaW5n
KGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGUgc3R5bGUpCit7Cisg
ICAgc3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpUaW1lWm9u
ZU5hbWVTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgIGNhc2UgSW50
bERhdGVUaW1lRm9ybWF0OjpUaW1lWm9uZU5hbWVTdHlsZTo6U2hvcnQ6CisgICAgICAgIHJldHVy
biBBU0NJSUxpdGVyYWwoInNob3J0Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlRp
bWVab25lTmFtZVN0eWxlOjpMb25nOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJsb25n
Iik7CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBTdHJpbmco
KTsKK30KKwogRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQ
cm90b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0YXRlKiBzdGF0ZSkKIHsKICAgICAvLyAxMi4zLjMg
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0IChFQ01BLTQwMiAyLjApCiAgICAg
Ly8gMS4gTGV0IGR0ZiBiZSB0aGlzIERhdGVUaW1lRm9ybWF0IG9iamVjdC4KICAgICBJbnRsRGF0
ZVRpbWVGb3JtYXQqIGR0ZiA9IGpzRHluYW1pY0Nhc3Q8SW50bERhdGVUaW1lRm9ybWF0Kj4oc3Rh
dGUtPnRoaXNWYWx1ZSgpKTsKICAgICAvLyAyLiBSZXR1cm5JZkFicnVwdChkdGYpLgotICAgIGlm
ICghZHRmKQorICAgIGlmICghZHRmIHx8ICFkdGYtPmluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQo
KSkKICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihzdGF0ZSwg
QVNDSUlMaXRlcmFsKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgY2FsbGVk
IG9uIHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0ZVRpbWVG
b3JtYXQiKSkpOwotICAgIAorCiAgICAgSlNCb3VuZEZ1bmN0aW9uKiBib3VuZEZvcm1hdCA9IGR0
Zi0+Ym91bmRGb3JtYXQoKTsKICAgICAvLyAzLiBJZiB0aGUgW1tib3VuZEZvcm1hdF1dIGludGVy
bmFsIHNsb3Qgb2YgdGhpcyBEYXRlVGltZUZvcm1hdCBvYmplY3QgaXMgdW5kZWZpbmVkLAogICAg
IGlmICghYm91bmRGb3JtYXQpIHsKQEAgLTEwNiw3ICsyNDYsNyBAQCBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUdldHRlckZvcm1hdChFeGVj
U3RhdGUqCiAgICAgICAgIEpTQXJyYXkqIGJvdW5kQXJncyA9IEpTQXJyYXk6OnRyeUNyZWF0ZVVu
aW5pdGlhbGl6ZWQodm0sIGdsb2JhbE9iamVjdC0+YXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5
cGVEdXJpbmdBbGxvY2F0aW9uKEFycmF5V2l0aFVuZGVjaWRlZCksIDApOwogICAgICAgICBpZiAo
IWJvdW5kQXJncykKICAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dPdXRP
Zk1lbW9yeUVycm9yKHN0YXRlKSk7Ci0gICAgICAgIAorCiAgICAgICAgIC8vIGMuIExldCBiZiBi
ZSBCb3VuZEZ1bmN0aW9uQ3JlYXRlKEYsIMKrdGhpcyB2YWx1ZcK7KS4KICAgICAgICAgYm91bmRG
b3JtYXQgPSBKU0JvdW5kRnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCB0YXJnZXRP
YmplY3QsIGR0ZiwgYm91bmRBcmdzLCAxLCBBU0NJSUxpdGVyYWwoImZvcm1hdCIpKTsKICAgICAg
ICAgLy8gZC4gU2V0IGR0Zi5bW2JvdW5kRm9ybWF0XV0gdG8gYmYuCkBAIC0xMjAsMTUgKzI2MCw0
OCBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdFByb3Rv
dHlwZUZ1bmNSZXNvbHZlZE9wdGlvbnMoRXhlYwogewogICAgIC8vIDEyLjMuNSBJbnRsLkRhdGVU
aW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSAoRUNNQS00MDIgMi4wKQogICAg
IEludGxEYXRlVGltZUZvcm1hdCogZHRmID0ganNEeW5hbWljQ2FzdDxJbnRsRGF0ZVRpbWVGb3Jt
YXQqPihzdGF0ZS0+dGhpc1ZhbHVlKCkpOwotICAgIGlmICghZHRmKQorICAgIGlmICghZHRmIHx8
ICFkdGYtPmluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQoKSkKICAgICAgICAgcmV0dXJuIEpTVmFs
dWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihzdGF0ZSwgQVNDSUlMaXRlcmFsKCJJbnRsLkRhdGVU
aW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgY2FsbGVkIG9uIHZhbHVlIHRoYXQn
cyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0ZVRpbWVGb3JtYXQiKSkpOwogCiAg
ICAgLy8gVGhlIGZ1bmN0aW9uIHJldHVybnMgYSBuZXcgb2JqZWN0IHdob3NlIHByb3BlcnRpZXMg
YW5kIGF0dHJpYnV0ZXMgYXJlIHNldCBhcyBpZiBjb25zdHJ1Y3RlZCBieSBhbiBvYmplY3QgbGl0
ZXJhbCBhc3NpZ25pbmcgdG8gZWFjaCBvZiB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXMgdGhlIHZh
bHVlIG9mIHRoZSBjb3JyZXNwb25kaW5nIGludGVybmFsIHNsb3Qgb2YgdGhpcyBEYXRlVGltZUZv
cm1hdCBvYmplY3QgKHNlZSAxMi40KTogbG9jYWxlLCBjYWxlbmRhciwgbnVtYmVyaW5nU3lzdGVt
LCB0aW1lWm9uZSwgaG91cjEyLCB3ZWVrZGF5LCBlcmEsIHllYXIsIG1vbnRoLCBkYXksIGhvdXIs
IG1pbnV0ZSwgc2Vjb25kLCBhbmQgdGltZVpvbmVOYW1lLiBQcm9wZXJ0aWVzIHdob3NlIGNvcnJl
c3BvbmRpbmcgaW50ZXJuYWwgc2xvdHMgYXJlIG5vdCBwcmVzZW50IGFyZSBub3QgYXNzaWduZWQu
CiAgICAgLy8gTm90ZTogSW4gdGhpcyB2ZXJzaW9uIG9mIHRoZSBFQ01BU2NyaXB0IDIwMTUgSW50
ZXJuYXRpb25hbGl6YXRpb24gQVBJLCB0aGUgdGltZVpvbmUgcHJvcGVydHkgd2lsbCBiZSB0aGUg
bmFtZSBvZiB0aGUgZGVmYXVsdCB0aW1lIHpvbmUgaWYgbm8gdGltZVpvbmUgcHJvcGVydHkgd2Fz
IHByb3ZpZGVkIGluIHRoZSBvcHRpb25zIG9iamVjdCBwcm92aWRlZCB0byB0aGUgSW50bC5EYXRl
VGltZUZvcm1hdCBjb25zdHJ1Y3Rvci4gVGhlIHByZXZpb3VzIHZlcnNpb24gbGVmdCB0aGUgdGlt
ZVpvbmUgcHJvcGVydHkgdW5kZWZpbmVkIGluIHRoaXMgY2FzZS4KIAorICAgIFZNJiB2bSA9IHN0
YXRlLT52bSgpOworCiAgICAgSlNPYmplY3QqIG9wdGlvbnMgPSBjb25zdHJ1Y3RFbXB0eU9iamVj
dChzdGF0ZSk7CisgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5s
b2NhbGUsIGpzU3RyaW5nKHN0YXRlLCBkdGYtPmxvY2FsZSgpKSk7CisgICAgb3B0aW9ucy0+cHV0
RGlyZWN0KHZtLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKCZ2bSwgImNhbGVuZGFyIiksIGpzU3Ry
aW5nKHN0YXRlLCBkdGYtPmNhbGVuZGFyKCkpKTsKKyAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0s
IElkZW50aWZpZXI6OmZyb21TdHJpbmcoJnZtLCAibnVtYmVyaW5nU3lzdGVtIiksIGpzU3RyaW5n
KHN0YXRlLCBkdGYtPm51bWJlcmluZ1N5c3RlbSgpKSk7CisgICAgb3B0aW9ucy0+cHV0RGlyZWN0
KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT50aW1lWm9uZSwganNTdHJpbmcoc3RhdGUsIGR0Zi0+dGlt
ZVpvbmUoKSkpOworCisgICAgaWYgKGR0Zi0+d2Vla2RheSgpICE9IEludGxEYXRlVGltZUZvcm1h
dDo6V2Vla2RheVN0eWxlOjpOb25lKQorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZt
LnByb3BlcnR5TmFtZXMtPndlZWtkYXksIGpzU3RyaW5nKHN0YXRlLCB3ZWVrZGF5U3R5bGVUb1N0
cmluZyhkdGYtPndlZWtkYXkoKSkpKTsKKworICAgIGlmIChkdGYtPmVyYSgpICE9IEludGxEYXRl
VGltZUZvcm1hdDo6RXJhU3R5bGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2
bSwgdm0ucHJvcGVydHlOYW1lcy0+ZXJhLCBqc1N0cmluZyhzdGF0ZSwgZXJhU3R5bGVUb1N0cmlu
ZyhkdGYtPmVyYSgpKSkpOworCisgICAgaWYgKGR0Zi0+eWVhcigpICE9IEludGxEYXRlVGltZUZv
cm1hdDo6WWVhclN0eWxlOjpOb25lKQorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZt
LnByb3BlcnR5TmFtZXMtPnllYXIsIGpzU3RyaW5nKHN0YXRlLCB5ZWFyU3R5bGVUb1N0cmluZyhk
dGYtPnllYXIoKSkpKTsKKworICAgIGlmIChkdGYtPm1vbnRoKCkgIT0gSW50bERhdGVUaW1lRm9y
bWF0OjpNb250aFN0eWxlOjpOb25lKQorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZt
LnByb3BlcnR5TmFtZXMtPm1vbnRoLCBqc1N0cmluZyhzdGF0ZSwgbW9udGhTdHlsZVRvU3RyaW5n
KGR0Zi0+bW9udGgoKSkpKTsKKworICAgIGlmIChkdGYtPmRheSgpICE9IEludGxEYXRlVGltZUZv
cm1hdDo6RGF5U3R5bGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0u
cHJvcGVydHlOYW1lcy0+ZGF5LCBqc1N0cmluZyhzdGF0ZSwgZGF5U3R5bGVUb1N0cmluZyhkdGYt
PmRheSgpKSkpOworCisgICAgaWYgKGR0Zi0+aG91cigpICE9IEludGxEYXRlVGltZUZvcm1hdDo6
SG91clN0eWxlOjpOb25lKSB7CisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJv
cGVydHlOYW1lcy0+aG91ciwganNTdHJpbmcoc3RhdGUsIGhvdXJTdHlsZVRvU3RyaW5nKGR0Zi0+
aG91cigpKSkpOworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFt
ZXMtPmhvdXIxMiwganNCb29sZWFuKGR0Zi0+aG91cjEyKCkpKTsKKyAgICB9CisKKyAgICBpZiAo
ZHRmLT5taW51dGUoKSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1pbnV0ZVN0eWxlOjpOb25lKQor
ICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPm1pbnV0ZSwg
anNTdHJpbmcoc3RhdGUsIG1pbnV0ZVN0eWxlVG9TdHJpbmcoZHRmLT5taW51dGUoKSkpKTsKKwor
ICAgIGlmIChkdGYtPnNlY29uZCgpICE9IEludGxEYXRlVGltZUZvcm1hdDo6U2Vjb25kU3R5bGU6
Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+
c2Vjb25kLCBqc1N0cmluZyhzdGF0ZSwgc2Vjb25kU3R5bGVUb1N0cmluZyhkdGYtPnNlY29uZCgp
KSkpOwogCi0gICAgLy8gRklYTUU6IFBvcHVsYXRlIG9iamVjdCBmcm9tIGludGVybmFsIHNsb3Rz
LgorICAgIGlmIChkdGYtPnRpbWVab25lTmFtZSgpICE9IEludGxEYXRlVGltZUZvcm1hdDo6VGlt
ZVpvbmVOYW1lU3R5bGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0u
cHJvcGVydHlOYW1lcy0+dGltZVpvbmVOYW1lLCBqc1N0cmluZyhzdGF0ZSwgdGltZVpvbmVOYW1l
U3R5bGVUb1N0cmluZyhkdGYtPnRpbWVab25lTmFtZSgpKSkpOwogCiAgICAgcmV0dXJuIEpTVmFs
dWU6OmVuY29kZShvcHRpb25zKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmgKaW5kZXggYTJmZDVl
MzRlYTc5NTg2ZTQ3ODk2ZmFmZmM0NGU1ZTZmYTYxNTljYi4uMTY1MGYxOTkwZjU3YmU0NTIxODRi
N2I2ZjAwZDY2YTMzOGQyN2I0NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmgKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmgKQEAgLTM4LDEzICsz
OCwxMyBAQCBwdWJsaWM6CiAgICAgdHlwZWRlZiBJbnRsRGF0ZVRpbWVGb3JtYXQgQmFzZTsKICAg
ICBzdGF0aWMgY29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBCYXNlOjpTdHJ1Y3R1cmVG
bGFncyB8IE92ZXJyaWRlc0dldE93blByb3BlcnR5U2xvdDsKIAotICAgIHN0YXRpYyBJbnRsRGF0
ZVRpbWVGb3JtYXRQcm90b3R5cGUqIGNyZWF0ZShWTSYsIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0
dXJlKik7CisgICAgc3RhdGljIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSogY3JlYXRlKEV4
ZWNTdGF0ZSosIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0dXJlKik7CiAgICAgc3RhdGljIFN0cnVj
dHVyZSogY3JlYXRlU3RydWN0dXJlKFZNJiwgSlNHbG9iYWxPYmplY3QqLCBKU1ZhbHVlKTsKIAog
ICAgIERFQ0xBUkVfSU5GTzsKIAogcHJvdGVjdGVkOgotICAgIHZvaWQgZmluaXNoQ3JlYXRpb24o
Vk0mLCBTdHJ1Y3R1cmUqKTsKKyAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSosIFN0
cnVjdHVyZSopOwogCiBwcml2YXRlOgogICAgIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZShW
TSYsIFN0cnVjdHVyZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2Jq
ZWN0LmNwcAppbmRleCA5MjI2OWJkODA3ZmVjOTNiY2RkZTZmYmMwMjIyZjU4ZWM2ZTU4ZmJjLi43
ZmFhZGViOWM1YmM1MDhmYTRhZmFlNjdhYmY0NDA2YTFjMjc4NTdmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmNwcApAQCAtNDUsNiArNDUsNyBAQAogI2lu
Y2x1ZGUgIkxvb2t1cC5oIgogI2luY2x1ZGUgIk9iamVjdFByb3RvdHlwZS5oIgogI2luY2x1ZGUg
PHVuaWNvZGUvdWxvYy5oPgorI2luY2x1ZGUgPHVuaWNvZGUvdW51bXN5cy5oPgogI2luY2x1ZGUg
PHd0Zi9Bc3NlcnRpb25zLmg+CiAKIG5hbWVzcGFjZSBKU0MgewpAQCAtNjgsMTUgKzY5LDE3IEBA
IEludGxPYmplY3Q6OkludGxPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsK
IH0KIAotSW50bE9iamVjdCogSW50bE9iamVjdDo6Y3JlYXRlKFZNJiB2bSwgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCitJbnRsT2JqZWN0KiBJbnRs
T2JqZWN0OjpjcmVhdGUoRXhlY1N0YXRlKiBzdGF0ZSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CisgICAgVk0mIHZtID0gc3RhdGUtPnZtKCk7
CiAgICAgSW50bE9iamVjdCogb2JqZWN0ID0gbmV3IChOb3ROdWxsLCBhbGxvY2F0ZUNlbGw8SW50
bE9iamVjdD4odm0uaGVhcCkpIEludGxPYmplY3Qodm0sIHN0cnVjdHVyZSk7Ci0gICAgb2JqZWN0
LT5maW5pc2hDcmVhdGlvbih2bSwgZ2xvYmFsT2JqZWN0KTsKKyAgICBvYmplY3QtPmZpbmlzaENy
ZWF0aW9uKHN0YXRlLCBnbG9iYWxPYmplY3QpOwogICAgIHJldHVybiBvYmplY3Q7CiB9CiAKLXZv
aWQgSW50bE9iamVjdDo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0KQordm9pZCBJbnRsT2JqZWN0OjpmaW5pc2hDcmVhdGlvbihFeGVjU3RhdGUqIHN0
YXRlLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogeworICAgIFZNJiB2bSA9IHN0YXRl
LT52bSgpOwogICAgIEJhc2U6OmZpbmlzaENyZWF0aW9uKHZtKTsKICAgICBBU1NFUlQoaW5oZXJp
dHMoaW5mbygpKSk7CiAKQEAgLTk1LDcgKzk4LDcgQEAgdm9pZCBJbnRsT2JqZWN0OjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiAgICAgbnVtYmVy
Rm9ybWF0UHJvdG90eXBlLT5wdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVy
dHlOYW1lcy0+Y29uc3RydWN0b3IsIG51bWJlckZvcm1hdENvbnN0cnVjdG9yLCBEb250RW51bSk7
CiAKICAgICAvLyBTZXQgdXAgRGF0ZVRpbWVGb3JtYXQuCi0gICAgSW50bERhdGVUaW1lRm9ybWF0
UHJvdG90eXBlKiBkYXRlVGltZUZvcm1hdFByb3RvdHlwZSA9IEludGxEYXRlVGltZUZvcm1hdFBy
b3RvdHlwZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIEludGxEYXRlVGltZUZvcm1hdFByb3Rv
dHlwZTo6Y3JlYXRlU3RydWN0dXJlKHZtLCBnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+b2Jq
ZWN0UHJvdG90eXBlKCkpKTsKKyAgICBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUqIGRhdGVU
aW1lRm9ybWF0UHJvdG90eXBlID0gSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpjcmVhdGUo
c3RhdGUsIGdsb2JhbE9iamVjdCwgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpjcmVhdGVT
dHJ1Y3R1cmUodm0sIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5vYmplY3RQcm90b3R5cGUo
KSkpOwogICAgIFN0cnVjdHVyZSogZGF0ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUgPSBJbnRsRGF0ZVRp
bWVGb3JtYXQ6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgZ2xvYmFsT2JqZWN0LCBkYXRlVGltZUZvcm1h
dFByb3RvdHlwZSk7CiAgICAgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IqIGRhdGVUaW1l
Rm9ybWF0Q29uc3RydWN0b3IgPSBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcjo6Y3JlYXRl
KHZtLCBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcjo6Y3JlYXRlU3RydWN0dXJlKHZtLCBn
bG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+ZnVuY3Rpb25Qcm90b3R5cGUoKSksIGRhdGVUaW1l
Rm9ybWF0UHJvdG90eXBlLCBkYXRlVGltZUZvcm1hdFN0cnVjdHVyZSk7CiAKQEAgLTc0NSw2ICs3
NDgsNyBAQCBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiByZXNvbHZlTG9jYWxlKGNvbnN0IEhhc2hT
ZXQ8U3RyaW5nPiYgYXZhaWxhYmxlTG9jYWxlcywgYwogICAgICAgICAgICAgc2l6ZV90IGtleVBv
cyA9IGV4dGVuc2lvblN1YnRhZ3MuZmluZChrZXkpOwogICAgICAgICAgICAgLy8gaWkuIElmIGtl
eVBvcyAhPSAtMSwgdGhlbgogICAgICAgICAgICAgaWYgKGtleVBvcyAhPSBub3RGb3VuZCkgewor
ICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBodHRwczovL2dpdGh1Yi5jb20vdGMzOS9lY21hNDAy
L2lzc3Vlcy81OQogICAgICAgICAgICAgICAgIC8vIDEuIElmIGtleVBvcyArIDEgPCBleHRlbnNp
b25TdWJ0YWdzTGVuZ3RoIGFuZCB0aGUgbGVuZ3RoIG9mIHRoZSByZXN1bHQgb2YgR2V0KGV4dGVu
c2lvblN1YnRhZ3MsIFRvU3RyaW5nKGtleVBvcyArMSkpIGlzIGdyZWF0ZXIgdGhhbiAyLCB0aGVu
CiAgICAgICAgICAgICAgICAgaWYgKGtleVBvcyArIDEgPCBleHRlbnNpb25TdWJ0YWdzLnNpemUo
KSAmJiBleHRlbnNpb25TdWJ0YWdzW2tleVBvcyArIDFdLmxlbmd0aCgpID4gMikgewogICAgICAg
ICAgICAgICAgICAgICBjb25zdCBTdHJpbmcmIHJlcXVlc3RlZFZhbHVlID0gZXh0ZW5zaW9uU3Vi
dGFnc1trZXlQb3MgKyAxXTsKQEAgLTkxNiw2ICs5MjAsNzIgQEAgSlNWYWx1ZSBzdXBwb3J0ZWRM
b2NhbGVzKEV4ZWNTdGF0ZSYgc3RhdGUsIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiYgYXZhaWxhYmxl
TG9jYWwKICAgICByZXR1cm4gc3VwcG9ydGVkTG9jYWxlczsKIH0KIAorVmVjdG9yPFN0cmluZz4g
Z2V0TnVtYmVyaW5nU3lzdGVtc0ZvckxvY2FsZShjb25zdCBTdHJpbmcmIGxvY2FsZSkKK3sKKyAg
ICAvLyB1bnVtc3lzX29wZW5BdmFpbGFibGVOYW1lcyBhcHBlYXJzIHRvIG9ubHkgYmUgYWJsZSB1
c2FibGUgb25jZSBwZXIgcHJvY2Vzcywgc28gdXNlIHN0YXRpYyBsaXN0IGluc3RlYWQuCisgICAg
VUVycm9yQ29kZSBzdGF0dXMoVV9aRVJPX0VSUk9SKTsKKyAgICBVTnVtYmVyaW5nU3lzdGVtKiBk
ZWZhdWx0U3lzdGVtID0gdW51bXN5c19vcGVuKGxvY2FsZS51dGY4KCkuZGF0YSgpLCAmc3RhdHVz
KTsKKyAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworCisgICAgVmVjdG9yPFN0cmluZz4g
bnVtYmVyaW5nU3lzdGVtcyh7CisgICAgICAgIEFTQ0lJTGl0ZXJhbCh1bnVtc3lzX2dldE5hbWUo
ZGVmYXVsdFN5c3RlbSkpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImFyYWIiKSwKKyAgICAgICAg
QVNDSUlMaXRlcmFsKCJhcmFiZXh0IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiYXJtbiIpLAor
ICAgICAgICBBU0NJSUxpdGVyYWwoImFybW5sb3ciKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJi
YWxpIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiYmVuZyIpLAorICAgICAgICBBU0NJSUxpdGVy
YWwoImNoYW0iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJkZXZhIiksCisgICAgICAgIEFTQ0lJ
TGl0ZXJhbCgiZXRoaSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImZ1bGx3aWRlIiksCisgICAg
ICAgIEFTQ0lJTGl0ZXJhbCgiZ2VvciIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImdyZWsiKSwK
KyAgICAgICAgQVNDSUlMaXRlcmFsKCJncmVrbG93IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgi
Z3VqciIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImd1cnUiKSwKKyAgICAgICAgQVNDSUlMaXRl
cmFsKCJoYW5pZGF5cyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbmlkZWMiKSwKKyAgICAg
ICAgQVNDSUlMaXRlcmFsKCJoYW5zIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaGFuc2ZpbiIp
LAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbnQiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJo
YW50ZmluIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaGViciIpLAorICAgICAgICBBU0NJSUxp
dGVyYWwoImphdmEiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJqcGFuIiksCisgICAgICAgIEFT
Q0lJTGl0ZXJhbCgianBhbmZpbiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImthbGkiKSwKKyAg
ICAgICAgQVNDSUlMaXRlcmFsKCJraG1yIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgia25kYSIp
LAorICAgICAgICBBU0NJSUxpdGVyYWwoImxhbmEiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJs
YW5hdGhhbSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImxhb28iKSwKKyAgICAgICAgQVNDSUlM
aXRlcmFsKCJsYXRuIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibGVwYyIpLAorICAgICAgICBB
U0NJSUxpdGVyYWwoImxpbWIiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJtbHltIiksCisgICAg
ICAgIEFTQ0lJTGl0ZXJhbCgibW9uZyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoIm10ZWkiKSwK
KyAgICAgICAgQVNDSUlMaXRlcmFsKCJteW1yIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibXlt
cnNoYW4iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJua29vIiksCisgICAgICAgIEFTQ0lJTGl0
ZXJhbCgib2xjayIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoIm9yeWEiKSwKKyAgICAgICAgQVND
SUlMaXRlcmFsKCJyb21hbiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInJvbWFubG93IiksCisg
ICAgICAgIEFTQ0lJTGl0ZXJhbCgic2F1ciIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInN1bmQi
KSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJ0YWx1IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgi
dGFtbCIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInRhbWxkZWMiKSwKKyAgICAgICAgQVNDSUlM
aXRlcmFsKCJ0ZWx1IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgidGhhaSIpLAorICAgICAgICBB
U0NJSUxpdGVyYWwoInRpYnQiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJ2YWlpIiksCisgICAg
fSk7CisgICAgcmV0dXJuIG51bWJlcmluZ1N5c3RlbXM7Cit9CisKIH0gLy8gbmFtZXNwYWNlIEpT
QwogCiAjZW5kaWYgLy8gRU5BQkxFKElOVEwpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsT2JqZWN0LmgKaW5kZXggZjJkYzNlZWE2NDNkOGQ1YTc1Y2NiNWE3YmVmOTQ0MGRlMTg3
MDlkOC4uMWE1NmM2ODMwNDNmMGRmNDJhYzk1YjIyZDM0NDcxZDJmYTZlYTI5YSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaApAQCAtNDUsMTMgKzQ1LDEzIEBA
IHB1YmxpYzoKICAgICB0eXBlZGVmIEpTTm9uRmluYWxPYmplY3QgQmFzZTsKICAgICBzdGF0aWMg
Y29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBCYXNlOjpTdHJ1Y3R1cmVGbGFncyB8IE92
ZXJyaWRlc0dldE93blByb3BlcnR5U2xvdDsKIAotICAgIHN0YXRpYyBJbnRsT2JqZWN0KiBjcmVh
dGUoVk0mLCBKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSopOworICAgIHN0YXRpYyBJbnRsT2Jq
ZWN0KiBjcmVhdGUoRXhlY1N0YXRlKiwgSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqKTsKICAg
ICBzdGF0aWMgU3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoVk0mLCBKU0dsb2JhbE9iamVjdCos
IEpTVmFsdWUpOwogCiAgICAgREVDTEFSRV9JTkZPOwogCiBwcm90ZWN0ZWQ6Ci0gICAgdm9pZCBm
aW5pc2hDcmVhdGlvbihWTSYsIEpTR2xvYmFsT2JqZWN0Kik7CisgICAgdm9pZCBmaW5pc2hDcmVh
dGlvbihFeGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCopOwogCiBwcml2YXRlOgogICAgIEludGxP
YmplY3QoVk0mLCBTdHJ1Y3R1cmUqKTsKQEAgLTY1LDYgKzY1LDcgQEAgSGFzaE1hcDxTdHJpbmcs
IFN0cmluZz4gcmVzb2x2ZUxvY2FsZShjb25zdCBIYXNoU2V0PFN0cmluZz4mIGF2YWlsYWJsZUxv
Y2FsZXMsIGMKIEpTVmFsdWUgc3VwcG9ydGVkTG9jYWxlcyhFeGVjU3RhdGUmLCBjb25zdCBIYXNo
U2V0PFN0cmluZz4mIGF2YWlsYWJsZUxvY2FsZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiByZXF1
ZXN0ZWRMb2NhbGVzLCBKU1ZhbHVlIG9wdGlvbnMpOwogU3RyaW5nIHJlbW92ZVVuaWNvZGVMb2Nh
bGVFeHRlbnNpb24oY29uc3QgU3RyaW5nJik7CiBTdHJpbmcgYmVzdEF2YWlsYWJsZUxvY2FsZShj
b25zdCBIYXNoU2V0PFN0cmluZz4mLCBjb25zdCBTdHJpbmcmKTsKK1ZlY3RvcjxTdHJpbmc+IGdl
dE51bWJlcmluZ1N5c3RlbXNGb3JMb2NhbGUoY29uc3QgU3RyaW5nJik7CiAKIH0gLy8gbmFtZXNw
YWNlIEpTQwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ds
b2JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9i
amVjdC5jcHAKaW5kZXggZWNjODJiYTYyOGJmMTZmMjExNzlhMmM0OGRiYTczYWY3ZWU3MmE4MS4u
Y2I2NmIxMDhmMDYyYWE3ZWVkNDQ0NWY0NDQ2NWRjY2U3ZDRmMmY2ZSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcApAQCAtNDY4LDcgKzQ2
OCw3IEBAIHB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT4g
anNOYW1lLCBsb3dlck5hbWUgIyMgQ29uc3RydWN0CiAgICAgcHV0RGlyZWN0V2l0aG91dFRyYW5z
aXRpb24odm0sIHZtLnByb3BlcnR5TmFtZXMtPmV2YWwsIG1fZXZhbEZ1bmN0aW9uLmdldCgpLCBE
b250RW51bSk7CiAgICAgCiAjaWYgRU5BQkxFKElOVEwpCi0gICAgSW50bE9iamVjdCogaW50bCA9
IEludGxPYmplY3Q6OmNyZWF0ZSh2bSwgdGhpcywgSW50bE9iamVjdDo6Y3JlYXRlU3RydWN0dXJl
KHZtLCB0aGlzLCBtX29iamVjdFByb3RvdHlwZS5nZXQoKSkpOworICAgIEludGxPYmplY3QqIGlu
dGwgPSBJbnRsT2JqZWN0OjpjcmVhdGUoZXhlYywgdGhpcywgSW50bE9iamVjdDo6Y3JlYXRlU3Ry
dWN0dXJlKHZtLCB0aGlzLCBtX29iamVjdFByb3RvdHlwZS5nZXQoKSkpOwogICAgIHB1dERpcmVj
dFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5JbnRsLCBpbnRsLCBEb250
RW51bSk7CiAjZW5kaWYgLy8gRU5BQkxFKElOVEwpCiAgICAgcHV0RGlyZWN0V2l0aG91dFRyYW5z
aXRpb24odm0sIHZtLnByb3BlcnR5TmFtZXMtPkpTT04sIEpTT05PYmplY3Q6OmNyZWF0ZSh2bSwg
SlNPTk9iamVjdDo6Y3JlYXRlU3RydWN0dXJlKHZtLCB0aGlzLCBtX29iamVjdFByb3RvdHlwZS5n
ZXQoKSkpLCBEb250RW51bSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggODliYjE1NDYwZTU5ZjEyN2NlYzIyMzNjMTU1MjQz
MTdmODdkYzg3Mi4uYjEzMzE3YmRjMDcxYTAxMjg5MmJjMzAxNThjNWMzZWMxNTVhNzYwOCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDEzIEBACisyMDE1LTE0LTExICBBbmR5IFZhbldhZ29uZXIgIDxhbmR5QGlu
c3RydWN0dXJlLmNvbT4KKworICAgICAgICBbSU5UTF0gSW1wbGVtZW50IEludGwuRGF0ZVRpbWVG
b3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyAoKQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3NjAzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBqcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVj
dGVkLnR4dDogQWRkZWQgcmVzb2x2ZWRPcHRpb25zIHRlc3RzLgorICAgICAgICAqIGpzL3Njcmlw
dC10ZXN0cy9pbnRsLWRhdGV0aW1lZm9ybWF0LmpzOiBBZGRlZCByZXNvbHZlZE9wdGlvbnMgdGVz
dHMuCisKIDIwMTUtMTItMTQgIFJ5YW4gSGFkZGFkICA8cnlhbmhhZGRhZEBhcHBsZS5jb20+CiAK
ICAgICAgICAgQWRkaW5nIGEgc2Vjb25kIG5ld2xpbmUgdG8gdGhlIGV4cGVjdGVkIHJlc3VsdCBm
b3IgY29tcG9zaXRpbmcvaWZyYW1lcy9wYWdlLWNhY2hlLWxheWVyLXRyZWUuaHRtbApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvanMvaW50bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dAppbmRleCBkMDE2
YzgwMDQ3ZDY0ZDAyMzhiNWM5NmQ3YjkwYjZjNGFlMWM5ZWE0Li4wZDIwMmZlN2FhZTU4MTA3Yjc4
YjM2M2NmYmJkNmZlMzY4NTVhMTcwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9pbnRsLWRh
dGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0
aW1lZm9ybWF0LWV4cGVjdGVkLnR4dApAQCAtNTQsNyArNTQsNyBAQCBQQVNTIE9iamVjdC5kZWZp
bmVQcm9wZXJ0eSh7fSwgJ2Zvcm1hdCcsIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
SW50bC5EYQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgIT09IElu
dGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQgaXMgdHJ1ZQogUEFTUyBuZXcgSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLmZvcm1hdCAhPT0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQgaXMg
dHJ1ZQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoeyB2YWx1ZU9m
KCkgeyB0aHJvdyBFcnJvcignNGInKSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogNGIuCi1Q
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdChJbmZpbml0eSkgdGhyZXcg
ZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGRhdGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRlVGlt
ZUZvcm1hdC5mb3JtYXQoKS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9y
bWF0KEluZmluaXR5KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZGF0ZSB2YWx1ZSBpcyBu
b3QgZmluaXRlIGluIERhdGVUaW1lRm9ybWF0IGZvcm1hdCgpLgogUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2FsbChudWxsLCAwKSBpcyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCkuZm9ybWF0KDApCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1h
dC5jYWxsKEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyJyksIDApIGlzIEludGwuRGF0ZVRpbWVGb3Jt
YXQoKS5mb3JtYXQoMCkKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0
LmNhbGwoNSwgMCkgaXMgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKQpAQCAtNjMsOCAr
NjMsMTMyIEBAIFBBU1MgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQuY2FsbChJbnRs
LkRhdGVUaW1lRm9ybWF0KCdhcicpLCAwKSBpcyBJbnRsCiBQQVNTIG5ldyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCkuZm9ybWF0LmNhbGwoNSwgMCkgaXMgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1h
dCgwKQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMu
bGVuZ3RoIGlzIDAKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRP
cHRpb25zKCkgaXMgYW4gaW5zdGFuY2Ugb2YgT2JqZWN0CitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSBpcyBuZXcgSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyBuZXcgSW50bC5EYXRl
VGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzIG5ldyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVt
IGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5n
U3lzdGVtCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9u
cygpLndlZWtkYXkgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMo
KS53ZWVrZGF5CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucygpLmVyYSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygp
LmVyYQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMo
KS55ZWFyIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkueWVh
cgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5t
b250aCBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm1vbnRo
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmRh
eSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmRheQorUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIGlz
IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuaG91cgorUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIgaXMg
bmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIGlz
IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubWludXRlCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCBp
cyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZAorUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZU5hbWUgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZU5hbWUKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRp
b25zKCkgPT09IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygp
IGlzIGZhbHNlCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucy5jYWxsKDUpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEludGwuRGF0ZVRpbWVGb3Jt
YXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBh
biBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdC4KK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnJCcpIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBpbnZhbGlkIGxhbmd1
YWdlIHRhZzogJC4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCBudWxsKSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZl
ZE9wdGlvbnMoKS53ZWVrZGF5IGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbnVtZXJpYycKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMgJ251
bWVyaWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCku
eWVhciBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZl
ZE9wdGlvbnMoKS5ob3VyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUgaXMgdW5kZWZpbmVkCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIGlz
IHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lTmFtZSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IGxvY2FsZU1hdGNoZXI6J2JhZCcgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6
IGxvY2FsZU1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgImxvb2t1cCIgb3IgImJlc3QgZml0Ii4KK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxvY2FsZU1hdGNoZXI6J2xvb2t1cCcgfSkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBsb2NhbGVNYXRjaGVyOidiZXN0IGZpdCcgfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBmb3JtYXRNYXRjaGVyOidiYWQnIH0pIHRo
cmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0aGVyICJi
YXNpYyIgb3IgImJlc3QgZml0Ii4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZv
cm1hdE1hdGNoZXI6J2Jhc2ljJyB9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2Jlc3QgZml0JyB9KSBkaWQg
bm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnYXItc2EnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUgaXMgJ2FyLVNBJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdpc2xhbWljLXVtYWxx
dXJhJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9ucygp
Lm51bWJlcmluZ1N5c3RlbSBpcyAnYXJhYicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IGNhbGVuZGFyOidkYW5naScgfSkucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2dy
ZWdvcmlhbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ib2d1cycpLnJlc29s
dmVkT3B0aW9ucygpLmxvY2FsZSBpcyAnZW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
LXUtY2EtYm9ndXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnZ3JlZ29yaWFuJwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJ1ZGRoaXN0JykucmVzb2x2ZWRPcHRp
b25zKCkubG9jYWxlIGlzICdlbi11LWNhLWJ1ZGRoaXN0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LWNhLWJ1ZGRoaXN0JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2J1
ZGRoaXN0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWNoaW5lc2UnKS5yZXNv
bHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnY2hpbmVzZScKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1jYS1jb3B0aWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnY29w
dGljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWRhbmdpJykucmVzb2x2ZWRP
cHRpb25zKCkuY2FsZW5kYXIgaXMgJ2RhbmdpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LWNhLWV0aGlvYWEnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnZXRoaW9waWMt
YW1ldGUtYWxlbScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ldGhpb3BpYycp
LnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdldGhpb3BpYycKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnYXItU0EtdS1jYS1ncmVnb3J5JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5k
YXIgaXMgJ2dyZWdvcmlhbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1oZWJy
ZXcnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaGVicmV3JworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LWNhLWluZGlhbicpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFy
IGlzICdpbmRpYW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pYycp
LnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdpc2xhbWljJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWNjJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIg
aXMgJ2lzbGFtaWMtY2l2aWwnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtSVNP
ODYwMScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdpc284NjAxJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWphcGFuZXNlJykucmVzb2x2ZWRPcHRpb25zKCkuY2Fs
ZW5kYXIgaXMgJ2phcGFuZXNlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLXBl
cnNpYW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAncGVyc2lhbicKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1yb2MnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRh
ciBpcyAncm9jJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbnVtYmVyaW5nU3lz
dGVtOidndWpyJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2xhdG4n
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYm9ndXMnKS5yZXNvbHZlZE9wdGlv
bnMoKS5sb2NhbGUgaXMgJ2VuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWJv
Z3VzJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdsYXRuJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxhdG4nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1i
ZXJpbmdTeXN0ZW0gaXMgJ2xhdG4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
YXJhYicpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSBpcyAnZW4tdS1udS1hcmFiJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWFyYWInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1i
ZXJpbmdTeXN0ZW0gaXMgJ2FyYWInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
YXJhYmV4dCcpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnYXJhYmV4dCcK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1iYWxpJykucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIGlzICdiYWxpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LWJlbmcnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2Jlbmcn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZGV2YScpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyAnZGV2YScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1udS1mdWxsd2lkZScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAn
ZnVsbHdpZGUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZ3VqcicpLnJlc29s
dmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnZ3VqcicKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1udS1ndXJ1JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVt
IGlzICdndXJ1JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWhhbmlkZWMnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2hhbmlkZWMnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUta2htcicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSBpcyAna2htcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1rbmRh
JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdrbmRhJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxhb28nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJp
bmdTeXN0ZW0gaXMgJ2xhb28nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGlt
YicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGltYicKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1tbHltJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVy
aW5nU3lzdGVtIGlzICdtbHltJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LW1v
bmcnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ21vbmcnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbXltcicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSBpcyAnbXltcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1v
cnlhJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdvcnlhJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LXRhbWxkZWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5u
dW1iZXJpbmdTeXN0ZW0gaXMgJ3RhbWxkZWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
LXUtbnUtdGVsdScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAndGVsdScK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10aGFpJykucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIGlzICd0aGFpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LXRpYnQnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3RpYnQn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5OidpbnZhbGlkJyB9KSB0
aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogd2Vla2RheSBtdXN0IGJlICJuYXJyb3ciLCAic2hv
cnQiLCBvciAibG9uZyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6
JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IGlz
IHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonbmFy
cm93JywgbW9udGg6J251bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygp
LndlZWtkYXkgaXMgJ25hcnJvdycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdl
ZWtkYXk6J3Nob3J0JywgbW9udGg6J251bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLndlZWtkYXkgaXMgJ3Nob3J0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgd2Vla2RheTonbG9uZycsIG1vbnRoOidudW1lcmljJywgZGF5OidudW1lcmljJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IGlzICdsb25nJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgZXJhOiduZXZlcicgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGVy
YSBtdXN0IGJlICJuYXJyb3ciLCAic2hvcnQiLCBvciAibG9uZyIuCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS5kYXkgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBlcmE6J25hcnJvdycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygp
LmVyYSBpcyAnbmFycm93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOidz
aG9ydCcsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyAnc2hvcnQn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J2xvbmcnLCB5ZWFyOidudW1l
cmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEgaXMgJ2xvbmcnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB5ZWFyOidub3BlJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJv
cjogeWVhciBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyIuCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS55ZWFyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgZXJhOiduYXJyb3cnLCB5ZWFyOicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS55ZWFyIGlzICcyLWRpZ2l0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJh
OiduYXJyb3cnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIGlzICdu
dW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6MiB9KSB0aHJl
dyBleGNlcHRpb24gUmFuZ2VFcnJvcjogbW9udGggbXVzdCBiZSAiMi1kaWdpdCIsICJudW1lcmlj
IiwgIm5hcnJvdyIsICJzaG9ydCIsIG9yICJsb25nIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0
aW9ucygpLm1vbnRoIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgbW9udGg6JzItZGlnaXQnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5t
b250aCBpcyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRo
OidudW1lcmljJywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMg
J251bWVyaWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonbmFycm93
JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMgJ25hcnJvdycK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidzaG9ydCcsIHllYXI6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlzICdzaG9ydCcKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgeWVhcjonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkubW9udGggaXMgJ2xvbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBkYXk6JycgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGRheSBtdXN0IGJl
ICIyLWRpZ2l0IiBvciAibnVtZXJpYyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5k
YXkgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDon
bG9uZycsIGRheTonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuZGF5IGlzICcyLWRpZ2l0
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCBkYXk6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IGhvdXI6W10gfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJy
b3I6IGhvdXIgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiLgorUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIgaXMgdW5kZWZpbmVkCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOicyLWRp
Z2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIGlzICdudW1lcmljJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSku
cmVzb2x2ZWRPcHRpb25zKCkuaG91ciBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIgaXMgdW5kZWZpbmVkCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmlj
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIgaXMgdHJ1ZQorUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdwdC1CUicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkuaG91cjEyIGlzIGZhbHNlCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBtaW51dGU6bnVsbCB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogbWludXRl
IG11c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmljIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUgaXMgdW5kZWZpbmVkCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUgaXMgJzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1lcmljJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS5taW51dGUgaXMgJzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyBzZWNvbmQ6J2JhZHZhbHVlJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJv
cjogc2Vjb25kIG11c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmljIi4KK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQgaXMgdW5kZWZpbmVkCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidu
dW1lcmljJywgc2Vjb25kOicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQgaXMg
JzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVy
aWMnLCBob3VyOidudW1lcmljJywgc2Vjb25kOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS5zZWNvbmQgaXMgJzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZU5hbWU6J25hbWUnIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiB0aW1lWm9u
ZU5hbWUgbXVzdCBiZSAic2hvcnQiIG9yICJsb25nIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUgaXMgdW5kZWZpbmVkCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1l
cmljJywgdGltZVpvbmVOYW1lOidzaG9ydCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVO
YW1lIGlzICdzaG9ydCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgncHQtQlInLCB7IG1pbnV0
ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnLCB0aW1lWm9uZU5hbWU6J2xvbmcnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSBpcyAnbG9uZycKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMv
c2NyaXB0LXRlc3RzL2ludGwtZGF0ZXRpbWVmb3JtYXQuanMgYi9MYXlvdXRUZXN0cy9qcy9zY3Jp
cHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5qcwppbmRleCBlZGUxYjVjZTM0NmZkMjkwNTMw
YjM3Mzc3ZjAwY2FlNTAzN2U2MDdmLi41MjFiNDI0OGNlZTFjZTRjMjQzY2RmZTdhOTE3MTFkZjhj
MDkyMDk4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRl
dGltZWZvcm1hdC5qcworKysgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRl
dGltZWZvcm1hdC5qcwpAQCAtMTE5LDcgKzExOSw3IEBAIHNob3VsZFRocm93KCJJbnRsLkRhdGVU
aW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoeyB2YWx1ZU9mKCkgeyB0aHJvdyBFcnJvcignNGIn
CiAvLyAxMi4zLjQgRm9ybWF0RGF0ZVRpbWUgYWJzdHJhY3Qgb3BlcmF0aW9uCiAKIC8vIDEuIElm
IHggaXMgbm90IGEgZmluaXRlIE51bWJlciwgdGhlbiB0aHJvdyBhIFJhbmdlRXJyb3IgZXhjZXB0
aW9uLgotc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdChJ
bmZpbml0eSkiLCAiJ1JhbmdlRXJyb3I6IGRhdGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRl
VGltZUZvcm1hdC5mb3JtYXQoKSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0
LnByb3RvdHlwZS5mb3JtYXQoSW5maW5pdHkpIiwgIidSYW5nZUVycm9yOiBkYXRlIHZhbHVlIGlz
IG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQgZm9ybWF0KCknIik7CiAKIC8vIEZvcm1hdCBp
cyBib3VuZCwgc28gY2FsbGluZyB3aXRoIGFsdGVybmF0ZSAidGhpcyIgaGFzIG5vIGVmZmVjdC4K
IHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2FsbChudWxs
LCAwKSIsICJJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApIik7CkBAIC0xMzYsOSArMTM2
LDE2MCBAQCBzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRP
cHRpb25zLmxlbmd0aCIsICIwIik7CiAvLyBSZXR1cm5zIGEgbmV3IG9iamVjdCB3aG9zZSBwcm9w
ZXJ0aWVzIGFuZCBhdHRyaWJ1dGVzIGFyZSBzZXQgYXMgaWYgY29uc3RydWN0ZWQgYnkgYW4gb2Jq
ZWN0IGxpdGVyYWwuCiBzaG91bGRCZVR5cGUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LnJlc29sdmVkT3B0aW9ucygpIiwgIk9iamVjdCIpOwogCisvLyBUaGUgSW50bC5EYXRlVGltZUZv
cm1hdCBwcm90b3R5cGUgb2JqZWN0IGlzIGl0c2VsZiBhbiAlRGF0ZVRpbWVGb3JtYXQlIGluc3Rh
bmNlLCB3aG9zZSBpbnRlcm5hbCBzbG90cyBhcmUgc2V0IGFzIGlmIGl0IGhhZCBiZWVuIGNvbnN0
cnVjdGVkIGJ5IHRoZSBleHByZXNzaW9uIENvbnN0cnVjdCglRGF0ZVRpbWVGb3JtYXQlKS4KK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5s
b2NhbGUiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2Nh
bGUiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5
cGUucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQo
KS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICJuZXcg
SW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9u
cygpLndlZWtkYXkiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMo
KS53ZWVrZGF5Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVz
b2x2ZWRPcHRpb25zKCkuZXJhIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRP
cHRpb25zKCkuZXJhIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zKCkueWVhciIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29s
dmVkT3B0aW9ucygpLnllYXIiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgp
LnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuZGF5IiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuZGF5Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuaG91ciIsICJuZXcgSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAibmV3IEludGwu
RGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiLCAi
bmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5z
ZWNvbmQiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNv
bmQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZU5hbWUiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUiKTsKKwogLy8gUmV0dXJucyBhIG5ldyBvYmplY3QgZWFj
aCB0aW1lLgogc2hvdWxkQmVGYWxzZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVz
b2x2ZWRPcHRpb25zKCkgPT09IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucygpIik7CiAKIC8vIFRocm93cyBvbiBub24tRGF0ZVRpbWVGb3JtYXQgdGhpcy4KIHNo
b3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMu
Y2FsbCg1KSIsICInVHlwZUVycm9yOiBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNv
bHZlZE9wdGlvbnMgY2FsbGVkIG9uIHZhbHVlIHRoYXRcXCdzIG5vdCBhbiBvYmplY3QgaW5pdGlh
bGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdCciKTsKIAorc2hvdWxkVGhyb3coIkludGwuRGF0ZVRp
bWVGb3JtYXQoJyQnKSIsICInUmFuZ2VFcnJvcjogaW52YWxpZCBsYW5ndWFnZSB0YWc6ICQnIik7
CitzaG91bGROb3RUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCBudWxsKSIpOworCisv
LyBEZWZhdWx0cyB0byBtb250aCwgZGF5LCB5ZWFyLgorc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSIsICJ1bmRlZmluZWQiKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmVyYSIs
ICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29s
dmVkT3B0aW9ucygpLm1vbnRoIiwgIidudW1lcmljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuZGF5IiwgIidudW1lcmljJyIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkueWVhciIs
ICInbnVtZXJpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29s
dmVkT3B0aW9ucygpLmhvdXIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAidW5kZWZpbmVkIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5taW51
dGUiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5y
ZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUiLCAidW5k
ZWZpbmVkIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbG9j
YWxlTWF0Y2hlcjonYmFkJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGxvY2FsZU1hdGNoZXIgbXVzdCBi
ZSBlaXRoZXIgImxvb2t1cCIgb3IgImJlc3QgZml0IlwnJyk7CitzaG91bGROb3RUaHJvdygiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxvY2FsZU1hdGNoZXI6J2xvb2t1cCcgfSkiKTsKK3No
b3VsZE5vdFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjon
YmVzdCBmaXQnIH0pIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgZm9ybWF0TWF0Y2hlcjonYmFkJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGZvcm1hdE1hdGNoZXIg
bXVzdCBiZSBlaXRoZXIgImJhc2ljIiBvciAiYmVzdCBmaXQiXCcnKTsKK3Nob3VsZE5vdFRocm93
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjonYmFzaWMnIH0pIik7
CitzaG91bGROb3RUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNo
ZXI6J2Jlc3QgZml0JyB9KSIpOworCisvLyBHZXRzIGRlZmF1bHQgY2FsZW5kYXIgYW5kIG51bWJl
cmluZ1N5c3RlbSBmcm9tIGxvY2FsZS4KK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdh
ci1zYScpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInYXItU0EnIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnYXItc2EnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIs
ICInaXNsYW1pYy11bWFscXVyYSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdh
ci1zYScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInYXJhYiciKTsKKwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBjYWxlbmRhcjonZGFuZ2knIH0p
LnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidncmVnb3JpYW4nIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmxv
Y2FsZSIsICInZW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1i
b2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidncmVnb3JpYW4nIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1idWRkaGlzdCcpLnJlc29sdmVkT3B0
aW9ucygpLmxvY2FsZSIsICInZW4tdS1jYS1idWRkaGlzdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LWNhLWJ1ZGRoaXN0JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5k
YXIiLCAiJ2J1ZGRoaXN0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtY2hpbmVzZScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidjaGluZXNlJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtY29wdGljJykucmVzb2x2ZWRP
cHRpb25zKCkuY2FsZW5kYXIiLCAiJ2NvcHRpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LWNhLWRhbmdpJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2Rh
bmdpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9hYScp
LnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidldGhpb3BpYy1hbWV0ZS1hbGVtJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9waWMnKS5yZXNvbHZl
ZE9wdGlvbnMoKS5jYWxlbmRhciIsICInZXRoaW9waWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnYXItU0EtdS1jYS1ncmVnb3J5JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5k
YXIiLCAiJ2dyZWdvcmlhbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LWNhLWhlYnJldycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidoZWJyZXcnIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pbmRpYW4nKS5yZXNvbHZlZE9w
dGlvbnMoKS5jYWxlbmRhciIsICInaW5kaWFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtY2EtaXNsYW1pYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidp
c2xhbWljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1p
Y2MnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy1jaXZpbCciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLUlTTzg2MDEnKS5yZXNvbHZlZE9w
dGlvbnMoKS5jYWxlbmRhciIsICInaXNvODYwMSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LWNhLWphcGFuZXNlJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAi
J2phcGFuZXNlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtcGVy
c2lhbicpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidwZXJzaWFuJyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2Etcm9jJykucmVzb2x2ZWRPcHRpb25zKCku
Y2FsZW5kYXIiLCAiJ3JvYyciKTsKKy8vIEZJWE1FOiBodHRwczovL2dpdGh1Yi5jb20vdGMzOS9l
Y21hNDAyL2lzc3Vlcy81OQorLy8gc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtZXRoaW9waWMtYW1ldGUtYWxlbScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidl
dGhpb2FhJyIpOworLy8gc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNs
YW1pYy11bWFscXVyYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljLXVt
YWxxdXJhJyIpOworLy8gc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNs
YW1pYy10YmxhJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMtdGJsYSci
KTsKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWMtY2l2
aWwnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy1jaXZpbCciKTsKKy8v
IHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWMtcmdzYScpLnJl
c29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljLXJnc2EnIik7CisKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbnVtYmVyaW5nU3lzdGVtOidndWpyJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xhdG4nIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmxv
Y2FsZSIsICInZW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1i
b2d1cycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInbGF0biciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxhdG4nKS5yZXNvbHZlZE9wdGlv
bnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xhdG4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1udS1hcmFiJykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIiwgIidlbi11
LW51LWFyYWInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1hcmFi
JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidhcmFiJyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYXJhYmV4dCcpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSIsICInYXJhYmV4dCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LW51LWJhbGknKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0iLCAiJ2JhbGknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1i
ZW5nJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidiZW5nJyIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZGV2YScpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSIsICInZGV2YSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LW51LWZ1bGx3aWRlJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lz
dGVtIiwgIidmdWxsd2lkZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LWd1anInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2d1anInIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ndXJ1JykucmVzb2x2ZWRP
cHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidndXJ1JyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtaGFuaWRlYycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSIsICInaGFuaWRlYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LWtobXInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2tobXIn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1rbmRhJykucmVzb2x2
ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidrbmRhJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGFvbycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSIsICInbGFvbyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LWxpbWInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xpbWInIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1tbHltJykucmVzb2x2ZWRP
cHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidtbHltJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbW9uZycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5
c3RlbSIsICInbW9uZyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51
LW15bXInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ215bXInIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1vcnlhJykucmVzb2x2ZWRPcHRp
b25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidvcnlhJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtbnUtdGFtbGRlYycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5
c3RlbSIsICIndGFtbGRlYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LXRlbHUnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ3RlbHUnIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10aGFpJykucmVzb2x2ZWRP
cHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIid0aGFpJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGlidCcpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5
c3RlbSIsICIndGlidCciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB3ZWVrZGF5OidpbnZhbGlkJyB9KSIsICdcJ1JhbmdlRXJyb3I6IHdlZWtkYXkgbXVzdCBi
ZSAibmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkud2Vla2RheSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonbmFycm93JywgbW9udGg6J251bWVyaWMnLCBk
YXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAiJ25hcnJvdyciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonc2hvcnQnLCBt
b250aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2Rh
eSIsICInc2hvcnQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdl
ZWtkYXk6J2xvbmcnLCBtb250aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRP
cHRpb25zKCkud2Vla2RheSIsICInbG9uZyciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBlcmE6J25ldmVyJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGVyYSBtdXN0
IGJlICJuYXJyb3ciLCAic2hvcnQiLCBvciAibG9uZyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2
ZWRPcHRpb25zKCkuZXJhIiwgIiduYXJyb3cnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IGVyYTonc2hvcnQnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS5lcmEiLCAiJ3Nob3J0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBlcmE6J2xvbmcnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEi
LCAiJ2xvbmcnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
eWVhcjonbm9wZScgfSkiLCAnXCdSYW5nZUVycm9yOiB5ZWFyIG11c3QgYmUgIjItZGlnaXQiIG9y
ICJudW1lcmljIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1p
bnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnllYXIi
LCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVy
YTonbmFycm93JywgeWVhcjonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciIsICIn
Mi1kaWdpdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOidu
YXJyb3cnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIiwgIidudW1l
cmljJyIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRo
OjIgfSkiLCAnXCdSYW5nZUVycm9yOiBtb250aCBtdXN0IGJlICIyLWRpZ2l0IiwgIm51bWVyaWMi
LCAibmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkubW9udGgiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOicyLWRpZ2l0JywgeWVhcjonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkubW9udGgiLCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidudW1lcmljJywgeWVhcjonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkubW9udGgiLCAiJ251bWVyaWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOiduYXJyb3cnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS5tb250aCIsICInbmFycm93JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBtb250aDonc2hvcnQnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS5tb250aCIsICInc2hvcnQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRp
b25zKCkubW9udGgiLCAiJ2xvbmcnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgZGF5OicnIH0pIiwgJ1wnUmFuZ2VFcnJvcjogZGF5IG11c3QgYmUgIjItZGln
aXQiIG9yICJudW1lcmljIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygp
LmRheSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgbW9udGg6J2xvbmcnLCBkYXk6JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSIs
ICInMi1kaWdpdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9u
dGg6J2xvbmcnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSIsICInbnVt
ZXJpYyciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBob3Vy
OltdIH0pIiwgJ1wnUmFuZ2VFcnJvcjogaG91ciBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJp
YyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRp
b25zKCkuaG91ciIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRp
b25zKCkuaG91ciIsICInbnVtZXJpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRp
b25zKCkuaG91ciIsICInbnVtZXJpYyciKTsKKworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgInVuZGVmaW5lZCIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidu
dW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAidHJ1ZSIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ3B0LUJSJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidu
dW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAiZmFsc2UiKTsKKworc2hvdWxk
VGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6bnVsbCB9KSIsICdcJ1Jh
bmdlRXJyb3I6IG1pbnV0ZSBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyJcJycpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkubWludXRl
IiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
aW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5taW51
dGUiLCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IG1pbnV0ZTonbnVtZXJpYycsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1p
bnV0ZSIsICInMi1kaWdpdCciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBzZWNvbmQ6J2JhZHZhbHVlJyB9KSIsICdcJ1JhbmdlRXJyb3I6IHNlY29uZCBtdXN0
IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIiwgInVuZGVmaW5lZCIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3Vy
OidudW1lcmljJywgc2Vjb25kOicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQi
LCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1p
bnV0ZTonbnVtZXJpYycsIGhvdXI6J251bWVyaWMnLCBzZWNvbmQ6J251bWVyaWMnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnNlY29uZCIsICInMi1kaWdpdCciKTsKKworc2hvdWxkVGhyb3coIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZU5hbWU6J25hbWUnIH0pIiwgJ1wnUmFuZ2VF
cnJvcjogdGltZVpvbmVOYW1lIG11c3QgYmUgInNob3J0IiBvciAibG9uZyJcJycpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVO
YW1lIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJywgdGltZVpvbmVOYW1lOidzaG9ydCcg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIiwgIidzaG9ydCciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdwdC1CUicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjon
bnVtZXJpYycsIHRpbWVab25lTmFtZTonbG9uZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmVOYW1lIiwgIidsb25nJyIpOworCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>267406</attachid>
            <date>2015-12-15 15:54:11 -0800</date>
            <delta_ts>2015-12-16 15:16:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147603-20151215165333.patch</filename>
            <type>text/plain</type>
            <size>123574</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk0MTEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
NDkyYmZhNTM4MmM1OWRhNTYwMjA4ZDA2MGM0OWNkM2QzNDk3NmNiLi5jZmQzNjgzZjU3NTZiMjEw
YWVjZjg3MDc5NzIxMWQ5YWRmYTEzNjdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw3OSBAQAorMjAxNS0xNS0xMSAgQW5keSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVy
ZS5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQgYW5k
IHJlbGF0ZWQgYWJzdHJhY3Qgb3BlcmF0aW9ucy4KKyAgICAgICAgU3RvcmUgcmVzb2x2ZWQgb3B0
aW9ucyBhcyBlbnVtIHR5cGVzIHdoZXJlIHBvc3NpYmxlLgorICAgICAgICBVc2UgSUNVIGRhdGUg
cGF0dGVybiBnZW5lcmF0b3IgdG8gcmVzb2x2ZSBmb3JtYXR0aW5nIHN0eWxlcy4KKyAgICAgICAg
RGVmZXIgcGFydHMgb2YgSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0IHRoYXQgb25seSBhZmZlY3Qg
Zm9ybWF0KCkuCisKKyAgICAgICAgKiBpY3UvdW5pY29kZS91ZGF0cGcuaDogQWRkZWQuCisgICAg
ICAgICogcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oOgorICAgICAgICAqIHJ1bnRpbWUvSW50
bERhdGVUaW1lRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6ZGVmYXVsdFRpbWVab25lKToKKyAg
ICAgICAgKEpTQzo6Y2Fub25pY2FsaXplVGltZVpvbmVOYW1lKToKKyAgICAgICAgKEpTQzo6bG9j
YWxlRGF0YSk6CisgICAgICAgIChKU0M6OnN0cmluZ1RvQ2FsZW5kYXJUeXBlKToKKyAgICAgICAg
KEpTQzo6dG9EYXRlVGltZU9wdGlvbnMpOgorICAgICAgICAoSlNDOjpzZXRGb3JtYXRzRnJvbVBh
dHRlcm4pOgorICAgICAgICAoSlNDOjppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQpOgorICAgICAg
ICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUpOgorICAgICAgICAq
IHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Lmg6CisgICAgICAgIChKU0M6OkludGxEYXRlVGlt
ZUZvcm1hdDo6aW5pdGlhbGl6ZWRJbnRsT2JqZWN0KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVU
aW1lRm9ybWF0OjpzZXRJbml0aWFsaXplZEludGxPYmplY3QpOgorICAgICAgICAoSlNDOjpJbnRs
RGF0ZVRpbWVGb3JtYXQ6OmluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQpOgorICAgICAgICAoSlND
OjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQpOgorICAg
ICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmxvY2FsZSk6CisgICAgICAgIChKU0M6Oklu
dGxEYXRlVGltZUZvcm1hdDo6c2V0TG9jYWxlKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1l
Rm9ybWF0OjpjYWxlbmRhcik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0
Q2FsZW5kYXIpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6Om51bWJlcmluZ1N5
c3RlbSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0TnVtYmVyaW5nU3lz
dGVtKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojp0aW1lWm9uZSk6CisgICAg
ICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0VGltZVpvbmUpOgorICAgICAgICAoSlND
OjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmhvdXIxMik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGlt
ZUZvcm1hdDo6c2V0SG91cjEyKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojp3
ZWVrZGF5KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRXZWVrZGF5KToK
KyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjplcmEpOgorICAgICAgICAoSlNDOjpJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEVyYSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZv
cm1hdDo6eWVhcik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0WWVhcik6
CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6bW9udGgpOgorICAgICAgICAoSlND
OjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldE1vbnRoKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVU
aW1lRm9ybWF0OjpkYXkpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldERh
eSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6aG91cik6CisgICAgICAgIChK
U0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0SG91cik6CisgICAgICAgIChKU0M6OkludGxEYXRl
VGltZUZvcm1hdDo6bWludXRlKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojpz
ZXRNaW51dGUpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNlY29uZCk6Cisg
ICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0U2Vjb25kKToKKyAgICAgICAgKEpT
Qzo6SW50bERhdGVUaW1lRm9ybWF0Ojp0aW1lWm9uZU5hbWUpOgorICAgICAgICAoSlNDOjpJbnRs
RGF0ZVRpbWVGb3JtYXQ6OnNldFRpbWVab25lTmFtZSk6CisgICAgICAgICogcnVudGltZS9JbnRs
RGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdElu
dGxEYXRlVGltZUZvcm1hdCk6CisgICAgICAgIChKU0M6OmNhbGxJbnRsRGF0ZVRpbWVGb3JtYXQp
OgorICAgICAgICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbik6
CisgICAgICAgIChKU0M6OmNhbGVuZGFyVHlwZVRvU3RyaW5nKToKKyAgICAgICAgKEpTQzo6d2Vl
a2RheVN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjplcmFTdHlsZVRvU3RyaW5nKToKKyAg
ICAgICAgKEpTQzo6eWVhclN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjptb250aFN0eWxl
VG9TdHJpbmcpOgorICAgICAgICAoSlNDOjpkYXlTdHlsZVRvU3RyaW5nKToKKyAgICAgICAgKEpT
Qzo6aG91clN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjptaW51dGVTdHlsZVRvU3RyaW5n
KToKKyAgICAgICAgKEpTQzo6c2Vjb25kU3R5bGVUb1N0cmluZyk6CisgICAgICAgIChKU0M6OnRp
bWVab25lTmFtZVN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKToKKyAgICAgICAgKiBydW50aW1lL0ludGxP
YmplY3QuY3BwOgorICAgICAgICAoSlNDOjpyZXNvbHZlTG9jYWxlKToKKwogMjAxNS0xMi0xNSAg
TWFyayBMYW0gIDxtYXJrLmxhbUBhcHBsZS5jb20+CiAKICAgICAgICAgUG9seW1vcnBoaWMgb3Bl
cmFuZCB0eXBlcyBmb3IgREZHIGFuZCBGVEwgYml0IG9wZXJhdG9ycy4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9pY3UvdW5pY29kZS91ZGF0cGcuaCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pY3UvdW5pY29kZS91ZGF0cGcuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zZGM3ZTg5ZjJkZmI2NDAy
MjBmMzU3MDg4MzU4YjZkOWM1NzhlYjBlCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2ljdS91bmljb2RlL3VkYXRwZy5oCkBAIC0wLDAgKzEsNTg2IEBACisvKgorKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKgorKgorKiAgIENvcHlyaWdodCAoQykgMjAwNy0yMDEwLCBJbnRl
cm5hdGlvbmFsIEJ1c2luZXNzIE1hY2hpbmVzCisqICAgQ29ycG9yYXRpb24gYW5kIG90aGVycy4g
IEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisqCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisqICAgZmls
ZSBuYW1lOiAgdWRhdHBnLmgKKyogICBlbmNvZGluZzogICBVUy1BU0NJSQorKiAgIHRhYiBzaXpl
OiAgIDggKG5vdCB1c2VkKQorKiAgIGluZGVudGF0aW9uOjQKKyoKKyogICBjcmVhdGVkIG9uOiAy
MDA3anVsMzAKKyogICBjcmVhdGVkIGJ5OiBNYXJrdXMgVy4gU2NoZXJlcgorKi8KKworI2lmbmRl
ZiBfX1VEQVRQR19IX18KKyNkZWZpbmUgX19VREFUUEdfSF9fCisKKyNpbmNsdWRlICJ1bmljb2Rl
L3V0eXBlcy5oIgorI2luY2x1ZGUgInVuaWNvZGUvdWVudW0uaCIKKyNpbmNsdWRlICJ1bmljb2Rl
L2xvY2FscG9pbnRlci5oIgorCisvKioKKyAqIFxmaWxlCisgKiBcYnJpZWYgQyBBUEk6IFdyYXBw
ZXIgZm9yIERhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAodW5pY29kZS9kdHB0bmdlbi5oKS4KKyAq
CisgKiBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yIHByb3ZpZGVzIGZsZXhpYmxlIGdlbmVyYXRp
b24gb2YgZGF0ZSBmb3JtYXQgcGF0dGVybnMsIAorICogbGlrZSAieXktTU0tZGQiLiBUaGUgdXNl
ciBjYW4gYnVpbGQgdXAgdGhlIGdlbmVyYXRvciBieSBhZGRpbmcgc3VjY2Vzc2l2ZSAKKyAqIHBh
dHRlcm5zLiBPbmNlIHRoYXQgaXMgZG9uZSwgYSBxdWVyeSBjYW4gYmUgbWFkZSB1c2luZyBhICJz
a2VsZXRvbiIsIHdoaWNoIGlzIAorICogYSBwYXR0ZXJuIHdoaWNoIGp1c3QgaW5jbHVkZXMgdGhl
IGRlc2lyZWQgZmllbGRzIGFuZCBsZW5ndGhzLiBUaGUgZ2VuZXJhdG9yIAorICogd2lsbCByZXR1
cm4gdGhlICJiZXN0IGZpdCIgcGF0dGVybiBjb3JyZXNwb25kaW5nIHRvIHRoYXQgc2tlbGV0b24u
CisgKiA8cD5UaGUgbWFpbiBtZXRob2QgcGVvcGxlIHdpbGwgdXNlIGlzIHVkYXRwZ19nZXRCZXN0
UGF0dGVybiwgc2luY2Ugbm9ybWFsbHkKKyAqIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgaXMg
cHJlLWJ1aWx0IHdpdGggZGF0YSBmcm9tIGEgcGFydGljdWxhciBsb2NhbGUuIAorICogSG93ZXZl
ciwgZ2VuZXJhdG9ycyBjYW4gYmUgYnVpbHQgZGlyZWN0bHkgZnJvbSBvdGhlciBkYXRhIGFzIHdl
bGwuCisgKiA8cD48aT5Jc3N1ZTogbWF5IGJlIHVzZWZ1bCB0byBhbHNvIGhhdmUgYSBmdW5jdGlv
biB0aGF0IHJldHVybnMgdGhlIGxpc3Qgb2YgCisgKiBmaWVsZHMgaW4gYSBwYXR0ZXJuLCBpbiBv
cmRlciwgc2luY2Ugd2UgaGF2ZSB0aGF0IGludGVybmFsbHkuCisgKiBUaGF0IHdvdWxkIGJlIHVz
ZWZ1bCBmb3IgZ2V0dGluZyB0aGUgVUkgb3JkZXIgb2YgZmllbGQgZWxlbWVudHMuPC9pPgorICov
CisKKy8qKgorICogT3BhcXVlIHR5cGUgZm9yIGEgZGF0ZS90aW1lIHBhdHRlcm4gZ2VuZXJhdG9y
IG9iamVjdC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCit0eXBlZGVmIHZvaWQgKlVEYXRlVGlt
ZVBhdHRlcm5HZW5lcmF0b3I7CisKKy8qKgorICogRmllbGQgbnVtYmVyIGNvbnN0YW50cyBmb3Ig
dWRhdHBnX2dldEFwcGVuZEl0ZW1Gb3JtYXRzKCkgYW5kIHNpbWlsYXIgZnVuY3Rpb25zLgorICog
VGhlc2UgY29uc3RhbnRzIGFyZSBzZXBhcmF0ZSBmcm9tIFVEYXRlRm9ybWF0RmllbGQgZGVzcGl0
ZSBzZW1hbnRpYyBvdmVybGFwCisgKiBiZWNhdXNlIHNvbWUgZmllbGRzIGFyZSBtZXJnZWQgZm9y
IHRoZSBkYXRlL3RpbWUgcGF0dGVybiBnZW5lcmF0b3IuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAq
LwordHlwZWRlZiBlbnVtIFVEYXRlVGltZVBhdHRlcm5GaWVsZCB7CisgICAgLyoqIEBzdGFibGUg
SUNVIDMuOCAqLworICAgIFVEQVRQR19FUkFfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19ZRUFSX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8K
KyAgICBVREFUUEdfUVVBUlRFUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisg
ICAgVURBVFBHX01PTlRIX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBV
REFUUEdfV0VFS19PRl9ZRUFSX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAg
ICBVREFUUEdfV0VFS19PRl9NT05USF9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICov
CisgICAgVURBVFBHX1dFRUtEQVlfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLwor
ICAgIFVEQVRQR19EQVlfT0ZfWUVBUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICov
CisgICAgVURBVFBHX0RBWV9PRl9XRUVLX0lOX01PTlRIX0ZJRUxELAorICAgIC8qKiBAc3RhYmxl
IElDVSAzLjggKi8KKyAgICBVREFUUEdfREFZX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAz
LjggKi8KKyAgICBVREFUUEdfREFZUEVSSU9EX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAz
LjggKi8KKyAgICBVREFUUEdfSE9VUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICov
CisgICAgVURBVFBHX01JTlVURV9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisg
ICAgVURBVFBHX1NFQ09ORF9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAg
VURBVFBHX0ZSQUNUSU9OQUxfU0VDT05EX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjgg
Ki8KKyAgICBVREFUUEdfWk9ORV9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisg
ICAgVURBVFBHX0ZJRUxEX0NPVU5UCit9IFVEYXRlVGltZVBhdHRlcm5GaWVsZDsKKworLyoqCisg
KiBNYXNrcyB0byBjb250cm9sIGZvcmNpbmcgdGhlIGxlbmd0aCBvZiBzcGVjaWZpZWQgZmllbGRz
IGluIHRoZSByZXR1cm5lZAorICogcGF0dGVybiB0byBtYXRjaCB0aG9zZSBpbiB0aGUgc2tlbGV0
b24gKHdoZW4gdGhpcyB3b3VsZCBub3QgaGFwcGVuCisgKiBvdGhlcndpc2UpLiBUaGVzZSBtYXkg
YmUgY29tYmluZWQgdG8gZm9yY2UgdGhlIGxlbmd0aCBvZiBtdWx0aXBsZSBmaWVsZHMuCisgKiBV
c2VkIHdpdGggdWRhdHBnX2dldEJlc3RQYXR0ZXJuV2l0aE9wdGlvbnMsIHVkYXRwZ19yZXBsYWNl
RmllbGRUeXBlc1dpdGhPcHRpb25zLgorICogQHN0YWJsZSBJQ1UgNC40CisgKi8KK3R5cGVkZWYg
ZW51bSBVRGF0ZVRpbWVQYXR0ZXJuTWF0Y2hPcHRpb25zIHsKKyAgICAvKiogQHN0YWJsZSBJQ1Ug
NC40ICovCisgICAgVURBVFBHX01BVENIX05PX09QVElPTlMgPSAwLAorICAgIC8qKiBAc3RhYmxl
IElDVSA0LjQgKi8KKyAgICBVREFUUEdfTUFUQ0hfSE9VUl9GSUVMRF9MRU5HVEggPSAxIDw8IFVE
QVRQR19IT1VSX0ZJRUxELAorICAgIC8qKiBAaW50ZXJuYWwgSUNVIDQuNCAqLworICAgIFVEQVRQ
R19NQVRDSF9NSU5VVEVfRklFTERfTEVOR1RIID0gMSA8PCBVREFUUEdfTUlOVVRFX0ZJRUxELAor
ICAgIC8qKiBAaW50ZXJuYWwgSUNVIDQuNCAqLworICAgIFVEQVRQR19NQVRDSF9TRUNPTkRfRklF
TERfTEVOR1RIID0gMSA8PCBVREFUUEdfU0VDT05EX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElD
VSA0LjQgKi8KKyAgICBVREFUUEdfTUFUQ0hfQUxMX0ZJRUxEU19MRU5HVEggPSAoMSA8PCBVREFU
UEdfRklFTERfQ09VTlQpIC0gMQorfSBVRGF0ZVRpbWVQYXR0ZXJuTWF0Y2hPcHRpb25zOworCisv
KioKKyAqIFN0YXR1cyByZXR1cm4gdmFsdWVzIGZyb20gdWRhdHBnX2FkZFBhdHRlcm4oKS4KKyAq
IEBzdGFibGUgSUNVIDMuOAorICovCit0eXBlZGVmIGVudW0gVURhdGVUaW1lUGF0dGVybkNvbmZs
aWN0IHsKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX05PX0NPTkZMSUNU
LAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfQkFTRV9DT05GTElDVCwK
KyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0NPTkZMSUNULAorICAgIC8q
KiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfQ09ORkxJQ1RfQ09VTlQKK30gVURhdGVU
aW1lUGF0dGVybkNvbmZsaWN0OworCisvKioKKyAgKiBPcGVuIGEgZ2VuZXJhdG9yIGFjY29yZGlu
ZyB0byBhIGdpdmVuIGxvY2FsZS4KKyAgKiBAcGFyYW0gbG9jYWxlCisgICogQHBhcmFtIHBFcnJv
ckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRl
IGEKKyAgKiAgICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2Fs
bC4KKyAgKiBAcmV0dXJuIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgor
ICAqIEBzdGFibGUgSUNVIDMuOAorICAqLworVV9TVEFCTEUgVURhdGVUaW1lUGF0dGVybkdlbmVy
YXRvciAqIFVfRVhQT1JUMgordWRhdHBnX29wZW4oY29uc3QgY2hhciAqbG9jYWxlLCBVRXJyb3JD
b2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgICogT3BlbiBhbiBlbXB0eSBnZW5lcmF0b3IsIHRv
IGJlIGNvbnN0cnVjdGVkIHdpdGggdWRhdHBnX2FkZFBhdHRlcm4oLi4uKSBldGMuCisgICogQHBh
cmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90
IGluZGljYXRlIGEKKyAgKiAgICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVu
Y3Rpb24gY2FsbC4KKyAgKiBAcmV0dXJuIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2Vu
ZXJhdG9yLgorICAqIEBzdGFibGUgSUNVIDMuOAorICAqLworVV9TVEFCTEUgVURhdGVUaW1lUGF0
dGVybkdlbmVyYXRvciAqIFVfRVhQT1JUMgordWRhdHBnX29wZW5FbXB0eShVRXJyb3JDb2RlICpw
RXJyb3JDb2RlKTsKKworLyoqCisgICogQ2xvc2UgYSBnZW5lcmF0b3IuCisgICogQHBhcmFtIGR0
cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgICogQHN0YWJsZSBJ
Q1UgMy44CisgICovCitVX1NUQUJMRSB2b2lkIFVfRVhQT1JUMgordWRhdHBnX2Nsb3NlKFVEYXRl
VGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcpOworCisjaWYgVV9TSE9XX0NQTFVTUExVU19BUEkK
KworVV9OQU1FU1BBQ0VfQkVHSU4KKworLyoqCisgKiBcY2xhc3MgTG9jYWxVRGF0ZVRpbWVQYXR0
ZXJuR2VuZXJhdG9yUG9pbnRlcgorICogIlNtYXJ0IHBvaW50ZXIiIGNsYXNzLCBjbG9zZXMgYSBV
RGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yIHZpYSB1ZGF0cGdfY2xvc2UoKS4KKyAqIEZvciBtb3N0
IG1ldGhvZHMgc2VlIHRoZSBMb2NhbFBvaW50ZXJCYXNlIGJhc2UgY2xhc3MuCisgKgorICogQHNl
ZSBMb2NhbFBvaW50ZXJCYXNlCisgKiBAc2VlIExvY2FsUG9pbnRlcgorICogQHN0YWJsZSBJQ1Ug
NC40CisgKi8KK1VfREVGSU5FX0xPQ0FMX09QRU5fUE9JTlRFUihMb2NhbFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3JQb2ludGVyLCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLCB1ZGF0cGdfY2xv
c2UpOworCitVX05BTUVTUEFDRV9FTkQKKworI2VuZGlmCisKKy8qKgorICAqIENyZWF0ZSBhIGNv
cHkgcGYgYSBnZW5lcmF0b3IuCisgICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGlt
ZVBhdHRlcm5HZW5lcmF0b3IgdG8gYmUgY29waWVkLgorICAqIEBwYXJhbSBwRXJyb3JDb2RlIGEg
cG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgICog
ICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgICog
QHJldHVybiBhIHBvaW50ZXIgdG8gYSBuZXcgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAg
KiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ciAqIFVfRVhQT1JUMgordWRhdHBnX2Nsb25lKGNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0
b3IgKmR0cGcsIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEdldCB0aGUgYmVz
dCBwYXR0ZXJuIG1hdGNoaW5nIHRoZSBpbnB1dCBza2VsZXRvbi4gSXQgaXMgZ3VhcmFudGVlZCB0
bworICogaGF2ZSBhbGwgb2YgdGhlIGZpZWxkcyBpbiB0aGUgc2tlbGV0b24uCisgKiAKKyAqIE5v
dGUgdGhhdCB0aGlzIGZ1bmN0aW9uIHVzZXMgYSBub24tY29uc3QgVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvcjoKKyAqIEl0IHVzZXMgYSBzdGF0ZWZ1bCBwYXR0ZXJuIHBhcnNlciB3aGljaCBpcyBz
ZXQgdXAgZm9yIGVhY2ggZ2VuZXJhdG9yIG9iamVjdCwKKyAqIHJhdGhlciB0aGFuIGNyZWF0aW5n
IG9uZSBmb3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICogQ29uc2VjdXRpdmUgY2FsbHMgdG8gdGhp
cyBmdW5jdGlvbiBkbyBub3QgYWZmZWN0IGVhY2ggb3RoZXIsCisgKiBidXQgdGhpcyBmdW5jdGlv
biBjYW5ub3QgYmUgdXNlZCBjb25jdXJyZW50bHkgb24gYSBzaW5nbGUgZ2VuZXJhdG9yIG9iamVj
dC4KKyAqIAorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IuCisgKiBAcGFyYW0gc2tlbGV0b24KKyAqICAgICAgICAgICAgVGhlIHNrZWxldG9uIGlz
IGEgcGF0dGVybiBjb250YWluaW5nIG9ubHkgdGhlIHZhcmlhYmxlIGZpZWxkcy4KKyAqICAgICAg
ICAgICAgRm9yIGV4YW1wbGUsICJNTU1kZCIgYW5kICJtbWhoIiBhcmUgc2tlbGV0b25zLgorICog
QHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIHNrZWxldG9uCisgKiBAcGFyYW0gYmVzdFBhdHRl
cm4KKyAqICAgICAgICAgICAgVGhlIGJlc3QgcGF0dGVybiBmb3VuZCBmcm9tIHRoZSBnaXZlbiBz
a2VsZXRvbi4KKyAqIEBwYXJhbSBjYXBhY2l0eSB0aGUgY2FwYWNpdHkgb2YgYmVzdFBhdHRlcm4u
CisgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2gg
bXVzdCBub3QgaW5kaWNhdGUgYQorICogICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUg
dGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0dXJuIHRoZSBsZW5ndGggb2YgYmVzdFBhdHRlcm4u
CisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3Vk
YXRwZ19nZXRCZXN0UGF0dGVybihVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpza2VsZXRvbiwgaW50MzJfdCBsZW5ndGgs
CisgICAgICAgICAgICAgICAgICAgICAgVUNoYXIgKmJlc3RQYXR0ZXJuLCBpbnQzMl90IGNhcGFj
aXR5LAorICAgICAgICAgICAgICAgICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisv
KioKKyAqIEdldCB0aGUgYmVzdCBwYXR0ZXJuIG1hdGNoaW5nIHRoZSBpbnB1dCBza2VsZXRvbi4g
SXQgaXMgZ3VhcmFudGVlZCB0bworICogaGF2ZSBhbGwgb2YgdGhlIGZpZWxkcyBpbiB0aGUgc2tl
bGV0b24uCisgKiAKKyAqIE5vdGUgdGhhdCB0aGlzIGZ1bmN0aW9uIHVzZXMgYSBub24tY29uc3Qg
VURhdGVUaW1lUGF0dGVybkdlbmVyYXRvcjoKKyAqIEl0IHVzZXMgYSBzdGF0ZWZ1bCBwYXR0ZXJu
IHBhcnNlciB3aGljaCBpcyBzZXQgdXAgZm9yIGVhY2ggZ2VuZXJhdG9yIG9iamVjdCwKKyAqIHJh
dGhlciB0aGFuIGNyZWF0aW5nIG9uZSBmb3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICogQ29uc2Vj
dXRpdmUgY2FsbHMgdG8gdGhpcyBmdW5jdGlvbiBkbyBub3QgYWZmZWN0IGVhY2ggb3RoZXIsCisg
KiBidXQgdGhpcyBmdW5jdGlvbiBjYW5ub3QgYmUgdXNlZCBjb25jdXJyZW50bHkgb24gYSBzaW5n
bGUgZ2VuZXJhdG9yIG9iamVjdC4KKyAqIAorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVE
YXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gc2tlbGV0b24KKyAqICAgICAgICAg
ICAgVGhlIHNrZWxldG9uIGlzIGEgcGF0dGVybiBjb250YWluaW5nIG9ubHkgdGhlIHZhcmlhYmxl
IGZpZWxkcy4KKyAqICAgICAgICAgICAgRm9yIGV4YW1wbGUsICJNTU1kZCIgYW5kICJtbWhoIiBh
cmUgc2tlbGV0b25zLgorICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIHNrZWxldG9uCisg
KiBAcGFyYW0gb3B0aW9ucworICogICAgICAgICAgICBPcHRpb25zIGZvciBmb3JjaW5nIHRoZSBs
ZW5ndGggb2Ygc3BlY2lmaWVkIGZpZWxkcyBpbiB0aGUKKyAqICAgICAgICAgICAgcmV0dXJuZWQg
cGF0dGVybiB0byBtYXRjaCB0aG9zZSBpbiB0aGUgc2tlbGV0b24gKHdoZW4gdGhpcworICogICAg
ICAgICAgICB3b3VsZCBub3QgaGFwcGVuIG90aGVyd2lzZSkuIEZvciBkZWZhdWx0IGJlaGF2aW9y
LCB1c2UKKyAqICAgICAgICAgICAgVURBVFBHX01BVENIX05PX09QVElPTlMuCisgKiBAcGFyYW0g
YmVzdFBhdHRlcm4KKyAqICAgICAgICAgICAgVGhlIGJlc3QgcGF0dGVybiBmb3VuZCBmcm9tIHRo
ZSBnaXZlbiBza2VsZXRvbi4KKyAqIEBwYXJhbSBjYXBhY2l0eQorICogICAgICAgICAgICB0aGUg
Y2FwYWNpdHkgb2YgYmVzdFBhdHRlcm4uCisgKiBAcGFyYW0gcEVycm9yQ29kZQorICogICAgICAg
ICAgICBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUg
YQorICogICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAqIEBy
ZXR1cm4gdGhlIGxlbmd0aCBvZiBiZXN0UGF0dGVybi4KKyAqIEBzdGFibGUgSUNVIDQuNAorICov
CitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRhdHBnX2dldEJlc3RQYXR0ZXJuV2l0aE9w
dGlvbnMoVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpza2VsZXRvbiwgaW50MzJfdCBsZW5ndGgsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVRGF0ZVRpbWVQYXR0ZXJuTWF0Y2hPcHRp
b25zIG9wdGlvbnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVQ2hhciAqYmVz
dFBhdHRlcm4sIGludDMyX3QgY2FwYWNpdHksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgICogR2V0IGEgdW5pcXVlIHNr
ZWxldG9uIGZyb20gYSBnaXZlbiBwYXR0ZXJuLiBGb3IgZXhhbXBsZSwKKyAgKiBib3RoICJNTU0t
ZGQiIGFuZCAiZGQvTU1NIiBwcm9kdWNlIHRoZSBza2VsZXRvbiAiTU1NZGQiLgorICAqIAorICAq
IE5vdGUgdGhhdCB0aGlzIGZ1bmN0aW9uIHVzZXMgYSBub24tY29uc3QgVURhdGVUaW1lUGF0dGVy
bkdlbmVyYXRvcjoKKyAgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2gg
aXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgICogcmF0aGVyIHRoYW4gY3Jl
YXRpbmcgb25lIGZvciBlYWNoIGZ1bmN0aW9uIGNhbGwuCisgICogQ29uc2VjdXRpdmUgY2FsbHMg
dG8gdGhpcyBmdW5jdGlvbiBkbyBub3QgYWZmZWN0IGVhY2ggb3RoZXIsCisgICogYnV0IHRoaXMg
ZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRv
ciBvYmplY3QuCisgICoKKyAgKiBAcGFyYW0gZHRwZyAgICAgYSBwb2ludGVyIHRvIFVEYXRlVGlt
ZVBhdHRlcm5HZW5lcmF0b3IuCisgICogQHBhcmFtIHBhdHRlcm4gIGlucHV0IHBhdHRlcm4sIHN1
Y2ggYXMgImRkL01NTSIuCisgICogQHBhcmFtIGxlbmd0aCAgIHRoZSBsZW5ndGggb2YgcGF0dGVy
bi4KKyAgKiBAcGFyYW0gc2tlbGV0b24gc3VjaCBhcyAiTU1NZGQiCisgICogQHBhcmFtIGNhcGFj
aXR5IHRoZSBjYXBhY2l0eSBvZiBza2VsZXRvbi4KKyAgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBv
aW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICAqICAg
ICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgICogQHJl
dHVybiB0aGUgbGVuZ3RoIG9mIHNrZWxldG9uLgorICAqIEBzdGFibGUgSUNVIDMuOAorICAqLwor
VV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3VkYXRwZ19nZXRTa2VsZXRvbihVRGF0ZVRpbWVQ
YXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpw
YXR0ZXJuLCBpbnQzMl90IGxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICBVQ2hhciAqc2tlbGV0
b24sIGludDMyX3QgY2FwYWNpdHksCisgICAgICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVy
cm9yQ29kZSk7CisKKy8qKgorICogR2V0IGEgdW5pcXVlIGJhc2Ugc2tlbGV0b24gZnJvbSBhIGdp
dmVuIHBhdHRlcm4uIFRoaXMgaXMgdGhlIHNhbWUKKyAqIGFzIHRoZSBza2VsZXRvbiwgZXhjZXB0
IHRoYXQgZGlmZmVyZW5jZXMgaW4gbGVuZ3RoIGFyZSBtaW5pbWl6ZWQgc28KKyAqIGFzIHRvIG9u
bHkgcHJlc2VydmUgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiBzdHJpbmcgYW5kIG51bWVyaWMgZm9y
bS4gU28KKyAqIGZvciBleGFtcGxlLCBib3RoICJNTU0tZGQiIGFuZCAiZC9NTU0iIHByb2R1Y2Ug
dGhlIHNrZWxldG9uICJNTU1kIgorICogKG5vdGljZSB0aGUgc2luZ2xlIGQpLgorICoKKyAqIE5v
dGUgdGhhdCB0aGlzIGZ1bmN0aW9uIHVzZXMgYSBub24tY29uc3QgVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvcjoKKyAqIEl0IHVzZXMgYSBzdGF0ZWZ1bCBwYXR0ZXJuIHBhcnNlciB3aGljaCBpcyBz
ZXQgdXAgZm9yIGVhY2ggZ2VuZXJhdG9yIG9iamVjdCwKKyAqIHJhdGhlciB0aGFuIGNyZWF0aW5n
IG9uZSBmb3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICogQ29uc2VjdXRpdmUgY2FsbHMgdG8gdGhp
cyBmdW5jdGlvbiBkbyBub3QgYWZmZWN0IGVhY2ggb3RoZXIsCisgKiBidXQgdGhpcyBmdW5jdGlv
biBjYW5ub3QgYmUgdXNlZCBjb25jdXJyZW50bHkgb24gYSBzaW5nbGUgZ2VuZXJhdG9yIG9iamVj
dC4KKyAqCisgKiBAcGFyYW0gZHRwZyAgICAgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5H
ZW5lcmF0b3IuCisgKiBAcGFyYW0gcGF0dGVybiAgaW5wdXQgcGF0dGVybiwgc3VjaCBhcyAiZGQv
TU1NIi4KKyAqIEBwYXJhbSBsZW5ndGggICB0aGUgbGVuZ3RoIG9mIHBhdHRlcm4uCisgKiBAcGFy
YW0gYmFzZVNrZWxldG9uIHN1Y2ggYXMgIk1kIgorICogQHBhcmFtIGNhcGFjaXR5IHRoZSBjYXBh
Y2l0eSBvZiBiYXNlIHNrZWxldG9uLgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRv
IHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAg
ICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0dXJuIHRoZSBs
ZW5ndGggb2YgYmFzZVNrZWxldG9uLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxF
IGludDMyX3QgVV9FWFBPUlQyCit1ZGF0cGdfZ2V0QmFzZVNrZWxldG9uKFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpw
YXR0ZXJuLCBpbnQzMl90IGxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgVUNoYXIgKmJh
c2VTa2VsZXRvbiwgaW50MzJfdCBjYXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICAgVUVy
cm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICogQWRkcyBhIHBhdHRlcm4gdG8gdGhlIGdl
bmVyYXRvci4gSWYgdGhlIHBhdHRlcm4gaGFzIHRoZSBzYW1lIHNrZWxldG9uIGFzCisgKiBhbiBl
eGlzdGluZyBwYXR0ZXJuLCBhbmQgdGhlIG92ZXJyaWRlIHBhcmFtZXRlciBpcyBzZXQsIHRoZW4g
dGhlIHByZXZpb3VzCisgKiB2YWx1ZSBpcyBvdmVycmlkZW4uIE90aGVyd2lzZSwgdGhlIHByZXZp
b3VzIHZhbHVlIGlzIHJldGFpbmVkLiBJbiBlaXRoZXIKKyAqIGNhc2UsIHRoZSBjb25mbGljdGlu
ZyBzdGF0dXMgaXMgc2V0IGFuZCBwcmV2aW91cyB2YWxlIGlzIHN0b3JlZCBpbiAKKyAqIGNvbmZs
aWN0aW5nIHBhdHRlcm4uCisgKiA8cD4KKyAqIE5vdGUgdGhhdCBzaW5nbGUtZmllbGQgcGF0dGVy
bnMgKGxpa2UgIk1NTSIpIGFyZSBhdXRvbWF0aWNhbGx5IGFkZGVkLCBhbmQKKyAqIGRvbid0IG5l
ZWQgdG8gYmUgYWRkZWQgZXhwbGljaXRseSEKKyAqCisgKiBAcGFyYW0gZHRwZyAgICAgYSBwb2lu
dGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gcGF0dGVybiAgaW5w
dXQgcGF0dGVybiwgc3VjaCBhcyAiZGQvTU1NIgorICogQHBhcmFtIHBhdHRlcm5MZW5ndGggdGhl
IGxlbmd0aCBvZiBwYXR0ZXJuLgorICogQHBhcmFtIG92ZXJyaWRlICBXaGVuIGV4aXN0aW5nIHZh
bHVlcyBhcmUgdG8gYmUgb3ZlcnJpZGRlbiB1c2UgdHJ1ZSwgCisgKiAgICAgICAgICAgICAgICAg
IG90aGVyd2lzZSB1c2UgZmFsc2UuCisgKiBAcGFyYW0gY29uZmxpY3RpbmdQYXR0ZXJuICBQcmV2
aW91cyBwYXR0ZXJuIHdpdGggdGhlIHNhbWUgc2tlbGV0b24uCisgKiBAcGFyYW0gY2FwYWNpdHkg
dGhlIGNhcGFjaXR5IG9mIGNvbmZsaWN0aW5nUGF0dGVybi4KKyAqIEBwYXJhbSBwTGVuZ3RoIGEg
cG9pbnRlciB0byB0aGUgbGVuZ3RoIG9mIGNvbmZsaWN0aW5nUGF0dGVybi4KKyAqIEBwYXJhbSBw
RXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRp
Y2F0ZSBhCisgKiAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBj
YWxsLgorICogQHJldHVybiBjb25mbGljdGluZyBzdGF0dXMuIFRoZSB2YWx1ZSBjb3VsZCBiZSBV
REFUUEdfTk9fQ09ORkxJQ1QsIAorICogICAgICAgICAgICAgICAgICBVREFUUEdfQkFTRV9DT05G
TElDVCBvciBVREFUUEdfQ09ORkxJQ1QuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFC
TEUgVURhdGVUaW1lUGF0dGVybkNvbmZsaWN0IFVfRVhQT1JUMgordWRhdHBnX2FkZFBhdHRlcm4o
VURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgIGNvbnN0
IFVDaGFyICpwYXR0ZXJuLCBpbnQzMl90IHBhdHRlcm5MZW5ndGgsCisgICAgICAgICAgICAgICAg
ICBVQm9vbCBvdmVycmlkZSwKKyAgICAgICAgICAgICAgICAgIFVDaGFyICpjb25mbGljdGluZ1Bh
dHRlcm4sIGludDMyX3QgY2FwYWNpdHksIGludDMyX3QgKnBMZW5ndGgsCisgICAgICAgICAgICAg
ICAgICBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgICogQW4gQXBwZW5kSXRlbSBm
b3JtYXQgaXMgYSBwYXR0ZXJuIHVzZWQgdG8gYXBwZW5kIGEgZmllbGQgaWYgdGhlcmUgaXMgbm8K
KyAgKiBnb29kIG1hdGNoLiBGb3IgZXhhbXBsZSwgc3VwcG9zZSB0aGF0IHRoZSBpbnB1dCBza2Vs
ZXRvbiBpcyAiR3l5eXlNTU1kIiwKKyAgKiBhbmQgdGhlcmUgaXMgbm8gbWF0Y2hpbmcgcGF0dGVy
biBpbnRlcm5hbGx5LCBidXQgdGhlcmUgaXMgYSBwYXR0ZXJuCisgICogbWF0Y2hpbmcgInl5eXlN
TU1kIiwgc2F5ICJkLU1NLXl5eXkiLiBUaGVuIHRoYXQgcGF0dGVybiBpcyB1c2VkLCBwbHVzIHRo
ZQorICAqIEcuIFRoZSB3YXkgdGhlc2UgdHdvIGFyZSBjb25qb2luZWQgaXMgYnkgdXNpbmcgdGhl
IEFwcGVuZEl0ZW1Gb3JtYXQgZm9yIEcKKyAgKiAoZXJhKS4gU28gaWYgdGhhdCB2YWx1ZSBpcywg
c2F5ICJ7MH0sIHsxfSIgdGhlbiB0aGUgZmluYWwgcmVzdWx0aW5nCisgICogcGF0dGVybiBpcyAi
ZC1NTS15eXl5LCBHIi4KKyAgKiA8cD4KKyAgKiBUaGVyZSBhcmUgYWN0dWFsbHkgdGhyZWUgYXZh
aWxhYmxlIHZhcmlhYmxlczogezB9IGlzIHRoZSBwYXR0ZXJuIHNvIGZhciwKKyAgKiB7MX0gaXMg
dGhlIGVsZW1lbnQgd2UgYXJlIGFkZGluZywgYW5kIHsyfSBpcyB0aGUgbmFtZSBvZiB0aGUgZWxl
bWVudC4KKyAgKiA8cD4KKyAgKiBUaGlzIHJlZmxlY3RzIHRoZSB3YXkgdGhhdCB0aGUgQ0xEUiBk
YXRhIGlzIG9yZ2FuaXplZC4KKyAgKgorICAqIEBwYXJhbSBkdHBnICAgYSBwb2ludGVyIHRvIFVE
YXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgICogQHBhcmFtIGZpZWxkICBVRGF0ZVRpbWVQYXR0
ZXJuRmllbGQsIHN1Y2ggYXMgVURBVFBHX0VSQV9GSUVMRAorICAqIEBwYXJhbSB2YWx1ZSAgcGF0
dGVybiwgc3VjaCBhcyAiezB9LCB7MX0iCisgICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9m
IHZhbHVlLgorICAqIEBzdGFibGUgSUNVIDMuOAorICAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9S
VDIKK3VkYXRwZ19zZXRBcHBlbmRJdGVtRm9ybWF0KFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3Ig
KmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQg
ZmllbGQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqdmFsdWUsIGlu
dDMyX3QgbGVuZ3RoKTsKKworLyoqCisgKiBHZXR0ZXIgY29ycmVzcG9uZGluZyB0byBzZXRBcHBl
bmRJdGVtRm9ybWF0LiBWYWx1ZXMgYmVsb3cgMCBvciBhdCBvcgorICogYWJvdmUgVURBVFBHX0ZJ
RUxEX0NPVU5UIGFyZSBpbGxlZ2FsIGFyZ3VtZW50cy4KKyAqCisgKiBAcGFyYW0gZHRwZyAgIEEg
cG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIGZpZWxkICBV
RGF0ZVRpbWVQYXR0ZXJuRmllbGQsIHN1Y2ggYXMgVURBVFBHX0VSQV9GSUVMRAorICogQHBhcmFt
IHBMZW5ndGggQSBwb2ludGVyIHRoYXQgd2lsbCByZWNlaXZlIHRoZSBsZW5ndGggb2YgYXBwZW5k
SXRlbUZvcm1hdC4KKyAqIEByZXR1cm4gYXBwZW5kSXRlbUZvcm1hdCBmb3IgZmllbGQuCisgKiBA
c3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgY29uc3QgVUNoYXIgKiBVX0VYUE9SVDIKK3Vk
YXRwZ19nZXRBcHBlbmRJdGVtRm9ybWF0KGNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3Ig
KmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQg
ZmllbGQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQzMl90ICpwTGVuZ3RoKTsKKwor
LyoqCisgICAqIFNldCB0aGUgbmFtZSBvZiBmaWVsZCwgZWcgImVyYSIgaW4gRW5nbGlzaCBmb3Ig
RVJBLiBUaGVzZSBhcmUgb25seQorICAgKiB1c2VkIGlmIHRoZSBjb3JyZXNwb25kaW5nIEFwcGVu
ZEl0ZW1Gb3JtYXQgaXMgdXNlZCwgYW5kIGlmIGl0IGNvbnRhaW5zIGEKKyAgICogezJ9IHZhcmlh
YmxlLgorICAgKiA8cD4KKyAgICogVGhpcyByZWZsZWN0cyB0aGUgd2F5IHRoYXQgdGhlIENMRFIg
ZGF0YSBpcyBvcmdhbml6ZWQuCisgICAqCisgICAqIEBwYXJhbSBkdHBnICAgYSBwb2ludGVyIHRv
IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgICAqIEBwYXJhbSBmaWVsZCAgVURhdGVUaW1l
UGF0dGVybkZpZWxkCisgICAqIEBwYXJhbSB2YWx1ZSAgbmFtZSBmb3IgdGhlIGZpZWxkLgorICAg
KiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGggb2YgdmFsdWUuCisgICAqIEBzdGFibGUgSUNVIDMu
OAorICAgKi8KK1VfU1RBQkxFIHZvaWQgVV9FWFBPUlQyCit1ZGF0cGdfc2V0QXBwZW5kSXRlbU5h
bWUoVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQgZmllbGQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgVUNoYXIgKnZhbHVlLCBpbnQzMl90IGxlbmd0aCk7CisKKy8qKgorICogR2V0dGVy
IGNvcnJlc3BvbmRpbmcgdG8gc2V0QXBwZW5kSXRlbU5hbWVzLiBWYWx1ZXMgYmVsb3cgMCBvciBh
dCBvciBhYm92ZQorICogVURBVFBHX0ZJRUxEX0NPVU5UIGFyZSBpbGxlZ2FsIGFyZ3VtZW50cy4K
KyAqCisgKiBAcGFyYW0gZHRwZyAgIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yLgorICogQHBhcmFtIGZpZWxkICBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQsIHN1Y2ggYXMgVURB
VFBHX0VSQV9GSUVMRAorICogQHBhcmFtIHBMZW5ndGggQSBwb2ludGVyIHRoYXQgd2lsbCByZWNl
aXZlIHRoZSBsZW5ndGggb2YgdGhlIG5hbWUgZm9yIGZpZWxkLgorICogQHJldHVybiBuYW1lIGZv
ciBmaWVsZAorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICog
VV9FWFBPUlQyCit1ZGF0cGdfZ2V0QXBwZW5kSXRlbU5hbWUoY29uc3QgVURhdGVUaW1lUGF0dGVy
bkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICAgICBVRGF0ZVRpbWVQYXR0
ZXJuRmllbGQgZmllbGQsCisgICAgICAgICAgICAgICAgICAgICAgICAgaW50MzJfdCAqcExlbmd0
aCk7CisKKy8qKgorICogVGhlIGRhdGUgdGltZSBmb3JtYXQgaXMgYSBtZXNzYWdlIGZvcm1hdCBw
YXR0ZXJuIHVzZWQgdG8gY29tcG9zZSBkYXRlIGFuZAorICogdGltZSBwYXR0ZXJucy4gVGhlIGRl
ZmF1bHQgdmFsdWUgaXMgInswfSB7MX0iLCB3aGVyZSB7MH0gd2lsbCBiZSByZXBsYWNlZAorICog
YnkgdGhlIGRhdGUgcGF0dGVybiBhbmQgezF9IHdpbGwgYmUgcmVwbGFjZWQgYnkgdGhlIHRpbWUg
cGF0dGVybi4KKyAqIDxwPgorICogVGhpcyBpcyB1c2VkIHdoZW4gdGhlIGlucHV0IHNrZWxldG9u
IGNvbnRhaW5zIGJvdGggZGF0ZSBhbmQgdGltZSBmaWVsZHMsCisgKiBidXQgdGhlcmUgaXMgbm90
IGEgY2xvc2UgbWF0Y2ggYW1vbmcgdGhlIGFkZGVkIHBhdHRlcm5zLiBGb3IgZXhhbXBsZSwKKyAq
IHN1cHBvc2UgdGhhdCB0aGlzIG9iamVjdCB3YXMgY3JlYXRlZCBieSBhZGRpbmcgImRkLU1NTSIg
YW5kICJoaDptbSIsIGFuZAorICogaXRzIGRhdGV0aW1lRm9ybWF0IGlzIHRoZSBkZWZhdWx0ICJ7
MH0gezF9Ii4gVGhlbiBpZiB0aGUgaW5wdXQgc2tlbGV0b24KKyAqIGlzICJNTU1kaG1tIiwgdGhl
cmUgaXMgbm90IGFuIGV4YWN0IG1hdGNoLCBzbyB0aGUgaW5wdXQgc2tlbGV0b24gaXMKKyAqIGJy
b2tlbiB1cCBpbnRvIHR3byBjb21wb25lbnRzICJNTU1kIiBhbmQgImhtbSIuIFRoZXJlIGFyZSBj
bG9zZSBtYXRjaGVzCisgKiBmb3IgdGhvc2UgdHdvIHNrZWxldG9ucywgc28gdGhlIHJlc3VsdCBp
cyBwdXQgdG9nZXRoZXIgd2l0aCB0aGlzIHBhdHRlcm4sCisgKiByZXN1bHRpbmcgaW4gImQtTU1N
IGg6bW0iLgorICoKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yLgorICogQHBhcmFtIGR0Rm9ybWF0CisgKiAgICAgICAgICAgIG1lc3NhZ2UgZm9y
bWF0IHBhdHRlcm4sIGhlcmUgezB9IHdpbGwgYmUgcmVwbGFjZWQgYnkgdGhlIGRhdGUKKyAqICAg
ICAgICAgICAgcGF0dGVybiBhbmQgezF9IHdpbGwgYmUgcmVwbGFjZWQgYnkgdGhlIHRpbWUgcGF0
dGVybi4KKyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBkdEZvcm1hdC4KKyAqIEBzdGFi
bGUgSUNVIDMuOAorICovCitVX1NUQUJMRSB2b2lkIFVfRVhQT1JUMgordWRhdHBnX3NldERhdGVU
aW1lRm9ybWF0KGNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKmR0Rm9ybWF0LCBpbnQzMl90IGxlbmd0aCk7
CisKKy8qKgorICogR2V0dGVyIGNvcnJlc3BvbmRpbmcgdG8gc2V0RGF0ZVRpbWVGb3JtYXQuCisg
KiBAcGFyYW0gZHRwZyAgIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgor
ICogQHBhcmFtIHBMZW5ndGggQSBwb2ludGVyIHRoYXQgd2lsbCByZWNlaXZlIHRoZSBsZW5ndGgg
b2YgdGhlIGZvcm1hdAorICogQHJldHVybiBkYXRlVGltZUZvcm1hdC4KKyAqIEBzdGFibGUgSUNV
IDMuOAorICovCitVX1NUQUJMRSBjb25zdCBVQ2hhciAqIFVfRVhQT1JUMgordWRhdHBnX2dldERh
dGVUaW1lRm9ybWF0KGNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgaW50MzJfdCAqcExlbmd0aCk7CisKKy8qKgorICogVGhlIGRl
Y2ltYWwgdmFsdWUgaXMgdXNlZCBpbiBmb3JtYXR0aW5nIGZyYWN0aW9ucyBvZiBzZWNvbmRzLiBJ
ZiB0aGUKKyAqIHNrZWxldG9uIGNvbnRhaW5zIGZyYWN0aW9uYWwgc2Vjb25kcywgdGhlbiB0aGlz
IGlzIHVzZWQgd2l0aCB0aGUKKyAqIGZyYWN0aW9uYWwgc2Vjb25kcy4gRm9yIGV4YW1wbGUsIHN1
cHBvc2UgdGhhdCB0aGUgaW5wdXQgcGF0dGVybiBpcworICogImhobW1zc1NTU1MiLCBhbmQgdGhl
IGJlc3QgbWF0Y2hpbmcgcGF0dGVybiBpbnRlcm5hbGx5IGlzICJIOm1tOnNzIiwgYW5kCisgKiB0
aGUgZGVjaW1hbCBzdHJpbmcgaXMgIiwiLiBUaGVuIHRoZSByZXN1bHRpbmcgcGF0dGVybiBpcyBt
b2RpZmllZCB0byBiZQorICogIkg6bW06c3MsU1NTUyIKKyAqCisgKiBAcGFyYW0gZHRwZyBhIHBv
aW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBkZWNpbWFsCisg
KiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGggb2YgZGVjaW1hbC4KKyAqIEBzdGFibGUgSUNVIDMu
OAorICovCitVX1NUQUJMRSB2b2lkIFVfRVhQT1JUMgordWRhdHBnX3NldERlY2ltYWwoVURhdGVU
aW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFy
ICpkZWNpbWFsLCBpbnQzMl90IGxlbmd0aCk7CisKKy8qKgorICogR2V0dGVyIGNvcnJlc3BvbmRp
bmcgdG8gc2V0RGVjaW1hbC4KKyAqIAorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRl
VGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gcExlbmd0aCBBIHBvaW50ZXIgdGhhdCB3
aWxsIHJlY2VpdmUgdGhlIGxlbmd0aCBvZiB0aGUgZGVjaW1hbCBzdHJpbmcuCisgKiBAcmV0dXJu
IGNvcnJlc3BvbmRpbmcgdG8gdGhlIGRlY2ltYWwgcG9pbnQuCisgKiBAc3RhYmxlIElDVSAzLjgK
KyAqLworVV9TVEFCTEUgY29uc3QgVUNoYXIgKiBVX0VYUE9SVDIKK3VkYXRwZ19nZXREZWNpbWFs
KGNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAg
ICBpbnQzMl90ICpwTGVuZ3RoKTsKKworLyoqCisgKiBBZGp1c3RzIHRoZSBmaWVsZCB0eXBlcyAo
d2lkdGggYW5kIHN1YnR5cGUpIG9mIGEgcGF0dGVybiB0byBtYXRjaCB3aGF0IGlzCisgKiBpbiBh
IHNrZWxldG9uLiBUaGF0IGlzLCBpZiB5b3Ugc3VwcGx5IGEgcGF0dGVybiBsaWtlICJkLU0gSDpt
IiwgYW5kIGEKKyAqIHNrZWxldG9uIG9mICJNTU1NZGRoaG1tIiwgdGhlbiB0aGUgaW5wdXQgcGF0
dGVybiBpcyBhZGp1c3RlZCB0byBiZQorICogImRkLU1NTU0gaGg6bW0iLiBUaGlzIGlzIHVzZWQg
aW50ZXJuYWxseSB0byBnZXQgdGhlIGJlc3QgbWF0Y2ggZm9yIHRoZQorICogaW5wdXQgc2tlbGV0
b24sIGJ1dCBjYW4gYWxzbyBiZSB1c2VkIGV4dGVybmFsbHkuCisgKgorICogTm90ZSB0aGF0IHRo
aXMgZnVuY3Rpb24gdXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOgor
ICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdoaWNoIGlzIHNldCB1cCBmb3Ig
ZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICogcmF0aGVyIHRoYW4gY3JlYXRpbmcgb25lIGZvciBl
YWNoIGZ1bmN0aW9uIGNhbGwuCisgKiBDb25zZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1bmN0aW9u
IGRvIG5vdCBhZmZlY3QgZWFjaCBvdGhlciwKKyAqIGJ1dCB0aGlzIGZ1bmN0aW9uIGNhbm5vdCBi
ZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmdsZSBnZW5lcmF0b3Igb2JqZWN0LgorICoKKyAq
IEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICog
QHBhcmFtIHBhdHRlcm4gSW5wdXQgcGF0dGVybgorICogQHBhcmFtIHBhdHRlcm5MZW5ndGggdGhl
IGxlbmd0aCBvZiBpbnB1dCBwYXR0ZXJuLgorICogQHBhcmFtIHNrZWxldG9uCisgKiBAcGFyYW0g
c2tlbGV0b25MZW5ndGggdGhlIGxlbmd0aCBvZiBpbnB1dCBza2VsZXRvbi4KKyAqIEBwYXJhbSBk
ZXN0ICBwYXR0ZXJuIGFkanVzdGVkIHRvIG1hdGNoIHRoZSBza2VsZXRvbiBmaWVsZHMgd2lkdGhz
IGFuZCBzdWJ0eXBlcy4KKyAqIEBwYXJhbSBkZXN0Q2FwYWNpdHkgdGhlIGNhcGFjaXR5IG9mIGRl
c3QuCisgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hp
Y2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9y
ZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1cm4gdGhlIGxlbmd0aCBvZiBkZXN0LgorICog
QHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQyCit1ZGF0cGdf
cmVwbGFjZUZpZWxkVHlwZXMoVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBwYXR0ZXJu
TGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpza2VsZXRvbiwg
aW50MzJfdCBza2VsZXRvbkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBVQ2hhciAq
ZGVzdCwgaW50MzJfdCBkZXN0Q2FwYWNpdHksCisgICAgICAgICAgICAgICAgICAgICAgICAgVUVy
cm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICogQWRqdXN0cyB0aGUgZmllbGQgdHlwZXMg
KHdpZHRoIGFuZCBzdWJ0eXBlKSBvZiBhIHBhdHRlcm4gdG8gbWF0Y2ggd2hhdCBpcworICogaW4g
YSBza2VsZXRvbi4gVGhhdCBpcywgaWYgeW91IHN1cHBseSBhIHBhdHRlcm4gbGlrZSAiZC1NIEg6
bSIsIGFuZCBhCisgKiBza2VsZXRvbiBvZiAiTU1NTWRkaGhtbSIsIHRoZW4gdGhlIGlucHV0IHBh
dHRlcm4gaXMgYWRqdXN0ZWQgdG8gYmUKKyAqICJkZC1NTU1NIGhoOm1tIi4gVGhpcyBpcyB1c2Vk
IGludGVybmFsbHkgdG8gZ2V0IHRoZSBiZXN0IG1hdGNoIGZvciB0aGUKKyAqIGlucHV0IHNrZWxl
dG9uLCBidXQgY2FuIGFsc28gYmUgdXNlZCBleHRlcm5hbGx5LgorICoKKyAqIE5vdGUgdGhhdCB0
aGlzIGZ1bmN0aW9uIHVzZXMgYSBub24tY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvcjoK
KyAqIEl0IHVzZXMgYSBzdGF0ZWZ1bCBwYXR0ZXJuIHBhcnNlciB3aGljaCBpcyBzZXQgdXAgZm9y
IGVhY2ggZ2VuZXJhdG9yIG9iamVjdCwKKyAqIHJhdGhlciB0aGFuIGNyZWF0aW5nIG9uZSBmb3Ig
ZWFjaCBmdW5jdGlvbiBjYWxsLgorICogQ29uc2VjdXRpdmUgY2FsbHMgdG8gdGhpcyBmdW5jdGlv
biBkbyBub3QgYWZmZWN0IGVhY2ggb3RoZXIsCisgKiBidXQgdGhpcyBmdW5jdGlvbiBjYW5ub3Qg
YmUgdXNlZCBjb25jdXJyZW50bHkgb24gYSBzaW5nbGUgZ2VuZXJhdG9yIG9iamVjdC4KKyAqCisg
KiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAq
IEBwYXJhbSBwYXR0ZXJuIElucHV0IHBhdHRlcm4KKyAqIEBwYXJhbSBwYXR0ZXJuTGVuZ3RoIHRo
ZSBsZW5ndGggb2YgaW5wdXQgcGF0dGVybi4KKyAqIEBwYXJhbSBza2VsZXRvbgorICogQHBhcmFt
IHNrZWxldG9uTGVuZ3RoIHRoZSBsZW5ndGggb2YgaW5wdXQgc2tlbGV0b24uCisgKiBAcGFyYW0g
b3B0aW9ucworICogICAgICAgICAgICBPcHRpb25zIGNvbnRyb2xsaW5nIHdoZXRoZXIgdGhlIGxl
bmd0aCBvZiBzcGVjaWZpZWQgZmllbGRzIGluIHRoZQorICogICAgICAgICAgICBwYXR0ZXJuIGFy
ZSBhZGp1c3RlZCB0byBtYXRjaCB0aG9zZSBpbiB0aGUgc2tlbGV0b24gKHdoZW4gdGhpcworICog
ICAgICAgICAgICB3b3VsZCBub3QgaGFwcGVuIG90aGVyd2lzZSkuIEZvciBkZWZhdWx0IGJlaGF2
aW9yLCB1c2UKKyAqICAgICAgICAgICAgVURBVFBHX01BVENIX05PX09QVElPTlMuCisgKiBAcGFy
YW0gZGVzdCAgcGF0dGVybiBhZGp1c3RlZCB0byBtYXRjaCB0aGUgc2tlbGV0b24gZmllbGRzIHdp
ZHRocyBhbmQgc3VidHlwZXMuCisgKiBAcGFyYW0gZGVzdENhcGFjaXR5IHRoZSBjYXBhY2l0eSBv
ZiBkZXN0LgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2Rl
IHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgZmFpbHVyZSBi
ZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0dXJuIHRoZSBsZW5ndGggb2YgZGVzdC4K
KyAqIEBzdGFibGUgSUNVIDQuNAorICovCitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRh
dHBnX3JlcGxhY2VGaWVsZFR5cGVzV2l0aE9wdGlvbnMoVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFy
ICpwYXR0ZXJuLCBpbnQzMl90IHBhdHRlcm5MZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMyX3Qgc2tlbGV0b25MZW5n
dGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVRGF0ZVRpbWVQYXR0ZXJu
TWF0Y2hPcHRpb25zIG9wdGlvbnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBVQ2hhciAqZGVzdCwgaW50MzJfdCBkZXN0Q2FwYWNpdHksCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBSZXR1
cm4gYSBVRW51bWVyYXRpb24gbGlzdCBvZiBhbGwgdGhlIHNrZWxldG9ucyBpbiBjYW5vbmljYWwg
Zm9ybS4KKyAqIENhbGwgdWRhdHBnX2dldFBhdHRlcm5Gb3JTa2VsZXRvbigpIHRvIGdldCB0aGUg
Y29ycmVzcG9uZGluZyBwYXR0ZXJuLgorICogCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8g
VURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRl
ciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAg
ICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsCisgKiBAcmV0dXJuIGEg
VUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxsIHRoZSBza2VsZXRvbnMKKyAqICAgICAgICAgVGhlIGNh
bGxlciBtdXN0IGNsb3NlIHRoZSBvYmplY3QuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9T
VEFCTEUgVUVudW1lcmF0aW9uICogVV9FWFBPUlQyCit1ZGF0cGdfb3BlblNrZWxldG9ucyhjb25z
dCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLCBVRXJyb3JDb2RlICpwRXJyb3JDb2Rl
KTsKKworLyoqCisgKiBSZXR1cm4gYSBVRW51bWVyYXRpb24gbGlzdCBvZiBhbGwgdGhlIGJhc2Ug
c2tlbGV0b25zIGluIGNhbm9uaWNhbCBmb3JtLgorICoKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRl
ciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBw
b2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAg
ICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiBh
IFVFbnVtZXJhdGlvbiBsaXN0IG9mIGFsbCB0aGUgYmFzZSBza2VsZXRvbnMKKyAqICAgICAgICAg
ICAgIFRoZSBjYWxsZXIgbXVzdCBjbG9zZSB0aGUgb2JqZWN0LgorICogQHN0YWJsZSBJQ1UgMy44
CisgKi8KK1VfU1RBQkxFIFVFbnVtZXJhdGlvbiAqIFVfRVhQT1JUMgordWRhdHBnX29wZW5CYXNl
U2tlbGV0b25zKGNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsIFVFcnJvckNv
ZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEdldCB0aGUgcGF0dGVybiBjb3JyZXNwb25kaW5n
IHRvIGEgZ2l2ZW4gc2tlbGV0b24uCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBV
RGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHNrZWxldG9uIAorICogQHBhcmFt
IHNrZWxldG9uTGVuZ3RoIHBvaW50ZXIgdG8gdGhlIGxlbmd0aCBvZiBza2VsZXRvbi4KKyAqIEBw
YXJhbSBwTGVuZ3RoIHBvaW50ZXIgdG8gdGhlIGxlbmd0aCBvZiByZXR1cm4gcGF0dGVybi4KKyAq
IEByZXR1cm4gcGF0dGVybiBjb3JyZXNwb25kaW5nIHRvIGEgZ2l2ZW4gc2tlbGV0b24uCisgKiBA
c3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgY29uc3QgVUNoYXIgKiBVX0VYUE9SVDIKK3Vk
YXRwZ19nZXRQYXR0ZXJuRm9yU2tlbGV0b24oY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxl
dG9uLCBpbnQzMl90IHNrZWxldG9uTGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpbnQzMl90ICpwTGVuZ3RoKTsKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaWN1L3VuaWNvZGUvdW51bXN5cy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2lj
dS91bmljb2RlL3VudW1zeXMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMjY0NjNlODFhNWRmZmI5ZjM3OTk3Nzk1
YjA3NWQ3NTM4YzY2NjIxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2ljdS91bmljb2RlL3VudW1zeXMuaApAQCAtMCwwICsxLDE3NCBAQAorLyoKKyoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqCisqIENvcHlyaWdodCAoQykgMjAxMywgSW50ZXJuYXRpb25h
bCBCdXNpbmVzcyBNYWNoaW5lcworKiBDb3Jwb3JhdGlvbiBhbmQgb3RoZXJzLiBBbGwgUmlnaHRz
IFJlc2VydmVkLgorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyovCisKKyNpZm5k
ZWYgVU5VTVNZU19ICisjZGVmaW5lIFVOVU1TWVNfSAorCisjaW5jbHVkZSAidW5pY29kZS91dHlw
ZXMuaCIKKworI2lmICFVQ09ORklHX05PX0ZPUk1BVFRJTkcKKworI2luY2x1ZGUgInVuaWNvZGUv
dWVudW0uaCIKKyNpbmNsdWRlICJ1bmljb2RlL2xvY2FscG9pbnRlci5oIgorCisvKioKKyAqIFxm
aWxlCisgKiBcYnJpZWYgQyBBUEk6IFVOdW1iZXJpbmdTeXN0ZW0sIGluZm9ybWF0aW9uIGFib3V0
IG51bWJlcmluZyBzeXN0ZW1zCisgKgorICogRGVmaW5lcyBudW1iZXJpbmcgc3lzdGVtcy4gQSBu
dW1iZXJpbmcgc3lzdGVtIGRlc2NyaWJlcyB0aGUgc2NoZW1lIGJ5IHdoaWNoIAorICogbnVtYmVy
cyBhcmUgdG8gYmUgcHJlc2VudGVkIHRvIHRoZSBlbmQgdXNlci4gSW4gaXRzIHNpbXBsZXN0IGZv
cm0sIGEgbnVtYmVyaW5nCisgKiBzeXN0ZW0gZGVzY3JpYmVzIHRoZSBzZXQgb2YgZGlnaXQgY2hh
cmFjdGVycyB0aGF0IGFyZSB0byBiZSB1c2VkIHRvIGRpc3BsYXkKKyAqIG51bWJlcnMsIHN1Y2gg
YXMgV2VzdGVybiBkaWdpdHMsIFRoYWkgZGlnaXRzLCBBcmFiaWMtSW5kaWMgZGlnaXRzLCBldGMu
LCBpbiBhCisgKiBwb3NpdGlvbmFsIG51bWJlcmluZyBzeXN0ZW0gd2l0aCBhIHNwZWNpZmllZCBy
YWRpeCAodHlwaWNhbGx5IDEwKS4KKyAqIE1vcmUgY29tcGxpY2F0ZWQgbnVtYmVyaW5nIHN5c3Rl
bXMgYXJlIGFsZ29yaXRobWljIGluIG5hdHVyZSwgYW5kIHJlcXVpcmUgdXNlCisgKiBvZiBhbiBS
Qk5GIGZvcm1hdHRlciAocnVsZSBiYXNlZCBudW1iZXIgZm9ybWF0dGVyKSwgaW4gb3JkZXIgdG8g
Y2FsY3VsYXRlCisgKiB0aGUgY2hhcmFjdGVycyB0byBiZSBkaXNwbGF5ZWQgZm9yIGEgZ2l2ZW4g
bnVtYmVyLiBFeGFtcGxlcyBvZiBhbGdvcml0aG1pYworICogbnVtYmVyaW5nIHN5c3RlbXMgaW5j
bHVkZSBSb21hbiBudW1lcmFscywgQ2hpbmVzZSBudW1lcmFscywgYW5kIEhlYnJldyBudW1lcmFs
cy4KKyAqIEZvcm1hdHRpbmcgcnVsZXMgZm9yIG1hbnkgY29tbW9ubHkgdXNlZCBudW1iZXJpbmcg
c3lzdGVtcyBhcmUgaW5jbHVkZWQgaW4KKyAqIHRoZSBJQ1UgcGFja2FnZSwgYmFzZWQgb24gdGhl
IG51bWJlcmluZyBzeXN0ZW0gcnVsZXMgZGVmaW5lZCBpbiBDTERSLgorICogQWx0ZXJuYXRlIG51
bWJlcmluZyBzeXN0ZW1zIGNhbiBiZSBzcGVjaWZpZWQgdG8gYSBsb2NhbGUgYnkgdXNpbmcgdGhl
CisgKiBudW1iZXJzIGxvY2FsZSBrZXl3b3JkLgorICovCisKKyNpZm5kZWYgVV9ISURFX0RSQUZU
X0FQSQorCisvKioKKyAqIE9wYXF1ZSBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCBmb3IgdXNlIGlu
IEMgcHJvZ3JhbXMuCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK3N0cnVjdCBVTnVtYmVyaW5nU3lz
dGVtOwordHlwZWRlZiBzdHJ1Y3QgVU51bWJlcmluZ1N5c3RlbSBVTnVtYmVyaW5nU3lzdGVtOyAg
LyoqPCBDIHR5cGVkZWYgZm9yIHN0cnVjdCBVTnVtYmVyaW5nU3lzdGVtLiBAZHJhZnQgSUNVIDUy
ICovCisKKy8qKgorICogT3BlbnMgYSBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCB1c2luZyB0aGUg
ZGVmYXVsdCBudW1iZXJpbmcgc3lzdGVtIGZvciB0aGUgc3BlY2lmaWVkCisgKiBsb2NhbGUuCisg
KiBAcGFyYW0gbG9jYWxlICAgIFRoZSBsb2NhbGUgZm9yIHdoaWNoIHRoZSBkZWZhdWx0IG51bWJl
cmluZyBzeXN0ZW0gc2hvdWxkIGJlIG9wZW5lZC4KKyAqIEBwYXJhbSBzdGF0dXMgICAgQSBwb2lu
dGVyIHRvIGEgVUVycm9yQ29kZSB0byByZWNlaXZlIGFueSBlcnJvcnMuIEZvciBleGFtcGxlLCB0
aGlzCisgKiAgICAgICAgICAgICAgICAgIG1heSBiZSBVX1VOU1VQUE9SVEVEX0VSUk9SIGZvciBh
IGxvY2FsZSBzdWNoIGFzICJlbkBudW1iZXJzPXh5eiIgdGhhdAorICogICAgICAgICAgICAgICAg
ICBzcGVjaWZpZXMgYSBudW1iZXJpbmcgc3lzdGVtIHVua25vd24gdG8gSUNVLgorICogQHJldHVy
biAgICAgICAgICBBIFVOdW1iZXJpbmdTeXN0ZW0gZm9yIHRoZSBzcGVjaWZpZWQgbG9jYWxlLCBv
ciBOVUxMIGlmIGFuIGVycm9yCisgKiAgICAgICAgICAgICAgICAgIG9jY3VycmVkLgorICogQGRy
YWZ0IElDVSA1MgorICovCitVX0RSQUZUIFVOdW1iZXJpbmdTeXN0ZW0gKiBVX0VYUE9SVDIKK3Vu
dW1zeXNfb3Blbihjb25zdCBjaGFyICpsb2NhbGUsIFVFcnJvckNvZGUgKnN0YXR1cyk7CisKKy8q
KgorICogT3BlbnMgYSBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCB1c2luZyB0aGUgbmFtZSBvZiBv
bmUgb2YgdGhlIHByZWRlZmluZWQgbnVtYmVyaW5nCisgKiBzeXN0ZW1zIHNwZWNpZmllZCBieSBD
TERSIGFuZCBrbm93biB0byBJQ1UsIHN1Y2ggYXMgImxhdG4iLCAiYXJhYmV4dCIsIG9yICJoYW5p
ZGVjIjsKKyAqIHRoZSBmdWxsIGxpc3QgaXMgcmV0dXJuZWQgYnkgdW51bXN5c19vcGVuQXZhaWxh
YmxlTmFtZXMuIE5vdGUgdGhhdCBzb21lIG9mIHRoZSBuYW1lcworICogbGlzdGVkIGF0IGh0dHA6
Ly91bmljb2RlLm9yZy9yZXBvcy9jbGRyL3RhZ3MvbGF0ZXN0L2NvbW1vbi9iY3A0Ny9udW1iZXIu
eG1sIC0gZS5nLgorICogZGVmYXVsdCwgbmF0aXZlLCB0cmFkaXRpb25hbCwgZmluYW5jZSAtIGRv
IG5vdCBpZGVudGlmeSBzcGVjaWZpYyBudW1iZXJpbmcgc3lzdGVtcywKKyAqIGJ1dCByYXRoZXIg
a2V5IHZhbHVlcyB0aGF0IG1heSBvbmx5IGJlIHVzZWQgYXMgcGFydCBvZiBhIGxvY2FsZSwgd2hp
Y2ggaW4gdHVybgorICogZGVmaW5lcyBob3cgdGhleSBhcmUgbWFwcGVkIHRvIGEgc3BlY2lmaWMg
bnVtYmVyaW5nIHN5c3RlbSBzdWNoIGFzICJsYXRuIiBvciAiaGFudCIuCisgKgorICogQHBhcmFt
IG5hbWUgICAgICBUaGUgbmFtZSBvZiB0aGUgbnVtYmVyaW5nIHN5c3RlbSBmb3Igd2hpY2ggYSBV
TnVtYmVyaW5nU3lzdGVtIG9iamVjdAorICogICAgICAgICAgICAgICAgICBzaG91bGQgYmUgb3Bl
bmVkLgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBvaW50ZXIgdG8gYSBVRXJyb3JDb2RlIHRvIHJl
Y2VpdmUgYW55IGVycm9ycy4gRm9yIGV4YW1wbGUsIHRoaXMKKyAqICAgICAgICAgICAgICAgICAg
bWF5IGJlIFVfVU5TVVBQT1JURURfRVJST1IgZm9yIGEgbnVtYmVyaW5nIHN5c3RlbSBzdWNoIGFz
ICJ4eXoiIHRoYXQKKyAqICAgICAgICAgICAgICAgICAgaXMgdW5rbm93biB0byBJQ1UuCisgKiBA
cmV0dXJuICAgICAgICAgIEEgVU51bWJlcmluZ1N5c3RlbSBmb3IgdGhlIHNwZWNpZmllZCBuYW1l
LCBvciBOVUxMIGlmIGFuIGVycm9yCisgKiAgICAgICAgICAgICAgICAgIG9jY3VycmVkLgorICog
QGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIFVOdW1iZXJpbmdTeXN0ZW0gKiBVX0VYUE9SVDIK
K3VudW1zeXNfb3BlbkJ5TmFtZShjb25zdCBjaGFyICpuYW1lLCBVRXJyb3JDb2RlICpzdGF0dXMp
OworCisvKioKKyAqIENsb3NlIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QuIE9uY2UgY2xvc2Vk
IGl0IG1heSBubyBsb25nZXIgYmUgdXNlZC4KKyAqIEBwYXJhbSB1bnVtc3lzICAgVGhlIFVOdW1i
ZXJpbmdTeXN0ZW0gb2JqZWN0IHRvIGNsb3NlLgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RS
QUZUIHZvaWQgVV9FWFBPUlQyCit1bnVtc3lzX2Nsb3NlKFVOdW1iZXJpbmdTeXN0ZW0gKnVudW1z
eXMpOworCisjaWYgVV9TSE9XX0NQTFVTUExVU19BUEkKK1VfTkFNRVNQQUNFX0JFR0lOCisKKy8q
KgorICogXGNsYXNzIExvY2FsVU51bWJlcmluZ1N5c3RlbVBvaW50ZXIKKyAqICJTbWFydCBwb2lu
dGVyIiBjbGFzcywgY2xvc2VzIGEgVU51bWJlcmluZ1N5c3RlbSB2aWEgdW51bXN5c19jbG9zZSgp
LgorICogRm9yIG1vc3QgbWV0aG9kcyBzZWUgdGhlIExvY2FsUG9pbnRlckJhc2UgYmFzZSBjbGFz
cy4KKyAqIEBzZWUgTG9jYWxQb2ludGVyQmFzZQorICogQHNlZSBMb2NhbFBvaW50ZXIKKyAqIEBk
cmFmdCBJQ1UgNTIKKyAqLworVV9ERUZJTkVfTE9DQUxfT1BFTl9QT0lOVEVSKExvY2FsVU51bWJl
cmluZ1N5c3RlbVBvaW50ZXIsIFVOdW1iZXJpbmdTeXN0ZW0sIHVudW1zeXNfY2xvc2UpOworCitV
X05BTUVTUEFDRV9FTkQKKyNlbmRpZgorCisvKioKKyAqIFJldHVybnMgYW4gZW51bWVyYXRpb24g
b3ZlciB0aGUgbmFtZXMgb2YgYWxsIG9mIHRoZSBwcmVkZWZpbmVkIG51bWJlcmluZyBzeXN0ZW1z
IGtub3duCisgKiB0byBJQ1UuCisgKiBAcGFyYW0gc3RhdHVzICAgIEEgcG9pbnRlciB0byBhIFVF
cnJvckNvZGUgdG8gcmVjZWl2ZSBhbnkgZXJyb3JzLgorICogQHJldHVybiAgICAgICAgICBBIHBv
aW50ZXIgdG8gYSBVRW51bWVyYXRpb24gdGhhdCBtdXN0IGJlIGNsb3NlZCB3aXRoIHVlbnVtX2Ns
b3NlKCksCisgKiAgICAgICAgICAgICAgICAgIG9yIE5VTEwgaWYgYW4gZXJyb3Igb2NjdXJyZWQu
CisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfRFJBRlQgVUVudW1lcmF0aW9uICogVV9FWFBPUlQy
Cit1bnVtc3lzX29wZW5BdmFpbGFibGVOYW1lcyhVRXJyb3JDb2RlICpzdGF0dXMpOworCisvKioK
KyAqIFJldHVybnMgdGhlIG5hbWUgb2YgdGhlIHNwZWNpZmllZCBVTnVtYmVyaW5nU3lzdGVtIG9i
amVjdCAoaWYgaXQgaXMgb25lIG9mIHRoZQorICogcHJlZGVmaW5lZCBuYW1lcyBrbm93biB0byBJ
Q1UpLgorICogQHBhcmFtIHVudW1zeXMgICBUaGUgVU51bWJlcmluZ1N5c3RlbSB3aG9zZSBuYW1l
IGlzIGRlc2lyZWQuCisgKiBAcmV0dXJuICAgICAgICAgIEEgcG9pbnRlciB0byB0aGUgbmFtZSBv
ZiB0aGUgc3BlY2lmaWVkIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0LCBvcgorICogICAgICAgICAg
ICAgICAgICBOVUxMIGlmIHRoZSBuYW1lIGlzIG5vdCBvbmUgb2YgdGhlIElDVSBwcmVkZWZpbmVk
IG5hbWVzLiBUaGUgcG9pbnRlcgorICogICAgICAgICAgICAgICAgICBpcyBvbmx5IHZhbGlkIGZv
ciB0aGUgbGlmZXRpbWUgb2YgdGhlIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0LgorICogQGRyYWZ0
IElDVSA1MgorICovCitVX0RSQUZUIGNvbnN0IGNoYXIgKiBVX0VYUE9SVDIKK3VudW1zeXNfZ2V0
TmFtZShjb25zdCBVTnVtYmVyaW5nU3lzdGVtICp1bnVtc3lzKTsKKworLyoqCisgKiBSZXR1cm5z
IHdoZXRoZXIgdGhlIGdpdmVuIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0IGlzIGZvciBhbiBhbGdv
cml0aG1pYyAobm90IHB1cmVseQorICogcG9zaXRpb25hbCkgc3lzdGVtLgorICogQHBhcmFtIHVu
dW1zeXMgICBUaGUgVU51bWJlcmluZ1N5c3RlbSB3aG9zZSBhbGdvcml0aG1pYyBzdGF0dXMgaXMg
ZGVzaXJlZC4KKyAqIEByZXR1cm4gICAgICAgICAgVFJVRSBpZiB0aGUgc3BlY2lmaWVkIFVOdW1i
ZXJpbmdTeXN0ZW0gb2JqZWN0IGlzIGZvciBhbiBhbGdvcml0aG1pYworICogICAgICAgICAgICAg
ICAgICBzeXN0ZW0uCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfRFJBRlQgVUJvb2wgVV9FWFBP
UlQyCit1bnVtc3lzX2lzQWxnb3JpdGhtaWMoY29uc3QgVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5
cyk7CisKKy8qKgorICogUmV0dXJucyB0aGUgcmFkaXggb2YgdGhlIHNwZWNpZmllZCBVTnVtYmVy
aW5nU3lzdGVtIG9iamVjdC4gU2ltcGxlIHBvc2l0aW9uYWwKKyAqIG51bWJlcmluZyBzeXN0ZW1z
IHR5cGljYWxseSBoYXZlIHJhZGl4IDEwLCBidXQgbWlnaHQgaGF2ZSBhIHJhZGl4IG9mIGUuZy4g
MTYgZm9yCisgKiBoZXhhZGVjaW1hbC4gVGhlIHJhZGl4IGlzIGxlc3Mgd2VsbC1kZWZpbmVkIGZv
ciBub24tcG9zaXRpb25hbCBhbGdvcml0aG1pYyBzeXN0ZW1zLgorICogQHBhcmFtIHVudW1zeXMg
ICBUaGUgVU51bWJlcmluZ1N5c3RlbSB3aG9zZSByYWRpeCBpcyBkZXNpcmVkLgorICogQHJldHVy
biAgICAgICAgICBUaGUgcmFkaXggb2YgdGhlIHNwZWNpZmllZCBVTnVtYmVyaW5nU3lzdGVtIG9i
amVjdC4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBpbnQzMl90IFVfRVhQT1JUMgor
dW51bXN5c19nZXRSYWRpeChjb25zdCBVTnVtYmVyaW5nU3lzdGVtICp1bnVtc3lzKTsKKworLyoq
CisgKiBHZXQgdGhlIGRlc2NyaXB0aW9uIHN0cmluZyBvZiB0aGUgc3BlY2lmaWVkIFVOdW1iZXJp
bmdTeXN0ZW0gb2JqZWN0LiBGb3Igc2ltcGxlCisgKiBwb3NpdGlvbmFsIHN5c3RlbXMgdGhpcyBp
cyB0aGUgb3JkZXJlZCBzdHJpbmcgb2YgZGlnaXRzICh3aXRoIGxlbmd0aCBtYXRjaGluZworICog
dGhlIHJhZGl4KSwgZS5nLiAiXHUzMDA3XHU0RTAwXHU0RThDXHU0RTA5XHU1NkRCXHU0RTk0XHU1
MTZEXHU0RTAzXHU1MTZCXHU0RTVEIgorICogZm9yICJoYW5pZGVjIjsgaXQgd291bGQgYmUgIjAx
MjM0NTY3ODlBQkNERUYiIGZvciBoZXhhZGVjaW1hbC4gRm9yCisgKiBhbGdvcml0aG1pYyBzeXN0
ZW1zIHRoaXMgaXMgdGhlIG5hbWUgb2YgdGhlIFJCTkYgcnVsZXNldCB1c2VkIGZvciBmb3JtYXR0
aW5nLAorICogZS5nLiAiemgvU3BlbGxvdXRSdWxlcy8lc3BlbGxvdXQtY2FyZGluYWwiIGZvciAi
aGFucyIgb3IgIiVncmVlay11cHBlciIgZm9yCisgKiAiZ3JlayIuCisgKiBAcGFyYW0gdW51bXN5
cyAgIFRoZSBVTnVtYmVyaW5nU3lzdGVtIHdob3NlIGRlc2NyaXB0aW9uIHN0cmluZyBpcyBkZXNp
cmVkLgorICogQHBhcmFtIHJlc3VsdCAgICBBIHBvaW50ZXIgdG8gYSBidWZmZXIgdG8gcmVjZWl2
ZSB0aGUgZGVzY3JpcHRpb24gc3RyaW5nLgorICogQHBhcmFtIHJlc3VsdExlbmd0aCAgVGhlIG1h
eGltdW0gc2l6ZSBvZiByZXN1bHQuCisgKiBAcGFyYW0gc3RhdHVzICAgIEEgcG9pbnRlciB0byBh
IFVFcnJvckNvZGUgdG8gcmVjZWl2ZSBhbnkgZXJyb3JzLgorICogQHJldHVybiAgICAgICAgICBU
aGUgdG90YWwgYnVmZmVyIHNpemUgbmVlZGVkOyBpZiBncmVhdGVyIHRoYW4gcmVzdWx0TGVuZ3Ro
LCB0aGUKKyAqICAgICAgICAgICAgICAgICAgb3V0cHV0IHdhcyB0cnVuY2F0ZWQuCisgKiBAZHJh
ZnQgSUNVIDUyCisgKi8KK1VfRFJBRlQgaW50MzJfdCBVX0VYUE9SVDIKK3VudW1zeXNfZ2V0RGVz
Y3JpcHRpb24oY29uc3QgVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5cywgVUNoYXIgKnJlc3VsdCwK
KyAgICAgICAgICAgICAgICAgICAgICAgaW50MzJfdCByZXN1bHRMZW5ndGgsIFVFcnJvckNvZGUg
KnN0YXR1cyk7CisKKyNlbmRpZiAgLyogVV9ISURFX0RSQUZUX0FQSSAqLworCisjZW5kaWYgLyog
I2lmICFVQ09ORklHX05PX0ZPUk1BVFRJTkcgKi8KKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAppbmRleCA4Y2Q3YmNhOGJh
YjM1MTBlM2I4NzVjZDAwMTg0YzdiMDA0MjAzODhkLi5lYjQ3ZDAyNDM5NTkxMzY4NTcwMGE2MmU1
NTBlNjJhZmNmN2I0MjdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Db21tb25JZGVudGlmaWVycy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0NvbW1vbklkZW50aWZpZXJzLmgKQEAgLTEwMSw2ICsxMDEsNyBAQAogICAgIG1hY3JvKGNvbnN0
cnVjdG9yKSBcCiAgICAgbWFjcm8oY291bnQpIFwKICAgICBtYWNybyhjb3VudGVycykgXAorICAg
IG1hY3JvKGRheSkgXAogICAgIG1hY3JvKGRlZmluZVByb3BlcnR5KSBcCiAgICAgbWFjcm8oZGVz
Y3JpcHRpb24pIFwKICAgICBtYWNybyhkZXNjcmlwdGlvbnMpIFwKQEAgLTEwOSw2ICsxMTAsNyBA
QAogICAgIG1hY3JvKGRvbmUpIFwKICAgICBtYWNybyhlbnRyaWVzKSBcCiAgICAgbWFjcm8oZW51
bWVyYWJsZSkgXAorICAgIG1hY3JvKGVyYSkgXAogICAgIG1hY3JvKGV2YWwpIFwKICAgICBtYWNy
byhleGVjKSBcCiAgICAgbWFjcm8oZXhlY3V0aW9uQ291bnQpIFwKQEAgLTExNiw2ICsxMTgsNyBA
QAogICAgIG1hY3JvKGZsYWdzKSBcCiAgICAgbWFjcm8oZm9jdXMpIFwKICAgICBtYWNybyhmb3JF
YWNoKSBcCisgICAgbWFjcm8oZm9ybWF0TWF0Y2hlcikgXAogICAgIG1hY3JvKGZvcndhcmQpIFwK
ICAgICBtYWNybyhmcm9tKSBcCiAgICAgbWFjcm8oZnJvbUNoYXJDb2RlKSBcCkBAIC0xMjYsNiAr
MTI5LDggQEAKICAgICBtYWNybyhoYXNPd25Qcm9wZXJ0eSkgXAogICAgIG1hY3JvKGhhc2gpIFwK
ICAgICBtYWNybyhoZWFkZXIpIFwKKyAgICBtYWNybyhob3VyKSBcCisgICAgbWFjcm8oaG91cjEy
KSBcCiAgICAgbWFjcm8oaHJlZikgXAogICAgIG1hY3JvKGlkKSBcCiAgICAgbWFjcm8oaWdub3Jl
Q2FzZSkgXApAQCAtMTQ5LDYgKzE1NCw4IEBACiAgICAgbWFjcm8obG9jYWxlKSBcCiAgICAgbWFj
cm8obG9jYWxlTWF0Y2hlcikgXAogICAgIG1hY3JvKG1lc3NhZ2UpIFwKKyAgICBtYWNybyhtaW51
dGUpIFwKKyAgICBtYWNybyhtb250aCkgXAogICAgIG1hY3JvKG11bHRpbGluZSkgXAogICAgIG1h
Y3JvKG5hbWUpIFwKICAgICBtYWNybyhuZXh0KSBcCkBAIC0xNzIsNiArMTc5LDcgQEAKICAgICBt
YWNybyhyZWxvYWQpIFwKICAgICBtYWNybyhyZXBsYWNlKSBcCiAgICAgbWFjcm8ocmVzb2x2ZSkg
XAorICAgIG1hY3JvKHNlY29uZCkgXAogICAgIG1hY3JvKHNlbnNpdGl2aXR5KSBcCiAgICAgbWFj
cm8oc2V0KSBcCiAgICAgbWFjcm8oc2hvd01vZGFsRGlhbG9nKSBcCkBAIC0xODUsNiArMTkzLDgg
QEAKICAgICBtYWNybyh0YXJnZXQpIFwKICAgICBtYWNybyh0ZXN0KSBcCiAgICAgbWFjcm8odGhl
bikgXAorICAgIG1hY3JvKHRpbWVab25lKSBcCisgICAgbWFjcm8odGltZVpvbmVOYW1lKSBcCiAg
ICAgbWFjcm8odG9FeHBvbmVudGlhbCkgXAogICAgIG1hY3JvKHRvRml4ZWQpIFwKICAgICBtYWNy
byh0b0lTT1N0cmluZykgXApAQCAtMTk4LDggKzIwOCwxMCBAQAogICAgIG1hY3JvKHZhbHVlcykg
XAogICAgIG1hY3JvKHdlYmtpdCkgXAogICAgIG1hY3JvKHdlYmtpdEluZGV4ZWREQikgXAorICAg
IG1hY3JvKHdlZWtkYXkpIFwKICAgICBtYWNybyh3aW5kb3cpIFwKLSAgICBtYWNybyh3cml0YWJs
ZSkKKyAgICBtYWNybyh3cml0YWJsZSkgXAorICAgIG1hY3JvKHllYXIpCiAKICNkZWZpbmUgSlND
X0NPTU1PTl9JREVOVElGSUVSU19FQUNIX0tFWVdPUkQobWFjcm8pIFwKICAgICBtYWNybyhicmVh
aykgXApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVU
aW1lRm9ybWF0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGlt
ZUZvcm1hdC5jcHAKaW5kZXggZGM1YjJhY2UzMjViMDhiNmYyZjM3YjIzMTA3NjkyMGU4OGZjZjAy
OC4uMDk5MGU2MWY2NzMwZGQwZWY4NTMwOTgwZmIzZmMzMjljNDBhYzU0YiAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3BwCkBA
IC0zNiw4ICszNiwxMyBAQAogI2luY2x1ZGUgIkpTQm91bmRGdW5jdGlvbi5oIgogI2luY2x1ZGUg
IkpTQ0pTVmFsdWVJbmxpbmVzLmgiCiAjaW5jbHVkZSAiSlNDZWxsSW5saW5lcy5oIgorI2luY2x1
ZGUgIk9iamVjdENvbnN0cnVjdG9yLmgiCiAjaW5jbHVkZSAiU2xvdFZpc2l0b3JJbmxpbmVzLmgi
CiAjaW5jbHVkZSAiU3RydWN0dXJlSW5saW5lcy5oIgorI2luY2x1ZGUgPHVuaWNvZGUvdWNhbC5o
PgorI2luY2x1ZGUgPHVuaWNvZGUvdWRhdC5oPgorI2luY2x1ZGUgPHVuaWNvZGUvdWRhdHBnLmg+
CisjaW5jbHVkZSA8dW5pY29kZS91ZW51bS5oPgogCiBuYW1lc3BhY2UgSlNDIHsKIApAQCAtODYs
MTQgKzkxLDU5NSBAQCB2b2lkIEludGxEYXRlVGltZUZvcm1hdDo6c2V0Qm91bmRGb3JtYXQoVk0m
IHZtLCBKU0JvdW5kRnVuY3Rpb24qIGZvcm1hdCkKICAgICBtX2JvdW5kRm9ybWF0LnNldCh2bSwg
dGhpcywgZm9ybWF0KTsKIH0KIAorZW51bSBjbGFzcyBEYXRlVGltZU9wdGlvblJlcXVpcmVkIHsg
RGF0ZSwgVGltZSwgQW55IH07CitlbnVtIGNsYXNzIERhdGVUaW1lT3B0aW9uRGVmYXVsdHMgeyBE
YXRlLCBUaW1lLCBBbGwgfTsKKworU3RyaW5nIGRlZmF1bHRUaW1lWm9uZSgpCit7CisgICAgLy8g
Ni40LjMgRGVmYXVsdFRpbWVab25lICgpIChFQ01BLTQwMiAyLjApCisgICAgLy8gVGhlIERlZmF1
bHRUaW1lWm9uZSBhYnN0cmFjdCBvcGVyYXRpb24gcmV0dXJucyBhIFN0cmluZyB2YWx1ZSByZXBy
ZXNlbnRpbmcgdGhlIHZhbGlkICg2LjQuMSkgYW5kIGNhbm9uaWNhbGl6ZWQgKDYuNC4yKSB0aW1l
IHpvbmUgbmFtZSBmb3IgdGhlIGhvc3QgZW52aXJvbm1lbnTigJlzIGN1cnJlbnQgdGltZSB6b25l
LgorCisgICAgVUVycm9yQ29kZSBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgYXV0byBidWZm
ZXJMZW5ndGggPSB1Y2FsX2dldERlZmF1bHRUaW1lWm9uZShudWxscHRyLCAwLCAmc3RhdHVzKTsK
KyAgICBpZiAoc3RhdHVzID09IFVfQlVGRkVSX09WRVJGTE9XX0VSUk9SKSB7CisgICAgICAgIHN0
YXR1cyA9IFVfWkVST19FUlJPUjsKKyAgICAgICAgVmVjdG9yPFVDaGFyLCAzMj4gYnVmZmVyKGJ1
ZmZlckxlbmd0aCk7CisgICAgICAgIHVjYWxfZ2V0RGVmYXVsdFRpbWVab25lKGJ1ZmZlci5kYXRh
KCksIGJ1ZmZlckxlbmd0aCwgJnN0YXR1cyk7CisgICAgICAgIGlmIChVX1NVQ0NFU1Moc3RhdHVz
KSkKKyAgICAgICAgICAgIHJldHVybiBTdHJpbmcoYnVmZmVyLmRhdGEoKSwgYnVmZmVyTGVuZ3Ro
KTsKKyAgICB9CisgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiVVRDIik7Cit9CisKK3N0YXRpYyBT
dHJpbmcgY2Fub25pY2FsaXplVGltZVpvbmVOYW1lKGNvbnN0IFN0cmluZyYgdGltZVpvbmVOYW1l
KQoreworICAgIC8vIDYuNC4xIElzVmFsaWRUaW1lWm9uZU5hbWUgKHRpbWVab25lKQorICAgIC8v
IFRoZSBhYnN0cmFjdCBvcGVyYXRpb24gcmV0dXJucyB0cnVlIGlmIHRpbWVab25lLCBjb252ZXJ0
ZWQgdG8gdXBwZXIgY2FzZSBhcyBkZXNjcmliZWQgaW4gNi4xLCBpcyBlcXVhbCB0byBvbmUgb2Yg
dGhlIFpvbmUgb3IgTGluayBuYW1lcyBvZiB0aGUgSUFOQSBUaW1lIFpvbmUgRGF0YWJhc2UsIGNv
bnZlcnRlZCB0byB1cHBlciBjYXNlIGFzIGRlc2NyaWJlZCBpbiA2LjEuIEl0IHJldHVybnMgZmFs
c2Ugb3RoZXJ3aXNlLgorICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAg
IFVFbnVtZXJhdGlvbiogdGltZVpvbmVzID0gdWNhbF9vcGVuVGltZVpvbmVzKCZzdGF0dXMpOwor
ICAgIEFTU0VSVChVX1NVQ0NFU1Moc3RhdHVzKSk7CisKKyAgICBTdHJpbmcgY2Fub25pY2FsOwor
ICAgIHdoaWxlIChjYW5vbmljYWwuaXNOdWxsKCkpIHsKKyAgICAgICAgVUVycm9yQ29kZSBzdGF0
dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgIGludDMyX3QgaWFuYVRpbWVab25lTGVuZ3RoOwor
ICAgICAgICAvLyBUaW1lIHpvbmUgbmFtZXMgYXJlIHJlc3ByZXNlbnRlZCBhcyBVQ2hhcltdIGlu
IGFsbCByZWxhdGVkIElDVSBhcGlzLgorICAgICAgICBjb25zdCBVQ2hhciogaWFuYVRpbWVab25l
ID0gdWVudW1fdW5leHQodGltZVpvbmVzLCAmaWFuYVRpbWVab25lTGVuZ3RoLCAmc3RhdHVzKTsK
KyAgICAgICAgQVNTRVJUKFVfU1VDQ0VTUyhzdGF0dXMpKTsKKworICAgICAgICAvLyBFbmQgb2Yg
ZW51bWVyYXRpb24uCisgICAgICAgIGlmICghaWFuYVRpbWVab25lKQorICAgICAgICAgICAgYnJl
YWs7CisKKyAgICAgICAgU3RyaW5nVmlldyBpYW5hVGltZVpvbmVWaWV3KGlhbmFUaW1lWm9uZSwg
aWFuYVRpbWVab25lTGVuZ3RoKTsKKyAgICAgICAgaWYgKGVxdWFsSWdub3JpbmdBU0NJSUNhc2Uo
dGltZVpvbmVOYW1lLCBpYW5hVGltZVpvbmVWaWV3KSkKKyAgICAgICAgICAgIGNvbnRpbnVlOwor
CisgICAgICAgIC8vIEZvdW5kIGEgbWF0Y2gsIG5vdyBjYW5vbmljYWxpemUuCisgICAgICAgIC8v
IDYuNC4yIENhbm9uaWNhbGl6ZVRpbWVab25lTmFtZSAodGltZVpvbmUpIChFQ01BLTQwMiAyLjAp
CisgICAgICAgIC8vIDEuIExldCBpYW5hVGltZVpvbmUgYmUgdGhlIFpvbmUgb3IgTGluayBuYW1l
IG9mIHRoZSBJQU5BIFRpbWUgWm9uZSBEYXRhYmFzZSBzdWNoIHRoYXQgdGltZVpvbmUsIGNvbnZl
cnRlZCB0byB1cHBlciBjYXNlIGFzIGRlc2NyaWJlZCBpbiA2LjEsIGlzIGVxdWFsIHRvIGlhbmFU
aW1lWm9uZSwgY29udmVydGVkIHRvIHVwcGVyIGNhc2UgYXMgZGVzY3JpYmVkIGluIDYuMS4KKyAg
ICAgICAgLy8gMi4gSWYgaWFuYVRpbWVab25lIGlzIGEgTGluayBuYW1lLCB0aGVuIGxldCBpYW5h
VGltZVpvbmUgYmUgdGhlIGNvcnJlc3BvbmRpbmcgWm9uZSBuYW1lIGFzIHNwZWNpZmllZCBpbiB0
aGUg4oCcYmFja3dhcmTigJ0gZmlsZSBvZiB0aGUgSUFOQSBUaW1lIFpvbmUgRGF0YWJhc2UuCisK
KyAgICAgICAgVmVjdG9yPFVDaGFyLCAzMj4gYnVmZmVyKGlhbmFUaW1lWm9uZUxlbmd0aCk7Cisg
ICAgICAgIFVCb29sIGlzU3lzdGVtSUQgPSBmYWxzZTsKKyAgICAgICAgc3RhdHVzID0gVV9aRVJP
X0VSUk9SOworICAgICAgICBhdXRvIGNhbm9uaWNhbExlbmd0aCA9IHVjYWxfZ2V0Q2Fub25pY2Fs
VGltZVpvbmVJRChpYW5hVGltZVpvbmUsIGlhbmFUaW1lWm9uZUxlbmd0aCwgYnVmZmVyLmRhdGEo
KSwgaWFuYVRpbWVab25lTGVuZ3RoLCAmaXNTeXN0ZW1JRCwgJnN0YXR1cyk7CisgICAgICAgIGlm
IChzdGF0dXMgPT0gVV9CVUZGRVJfT1ZFUkZMT1dfRVJST1IpIHsKKyAgICAgICAgICAgIGJ1ZmZl
ciA9IFZlY3RvcjxVQ2hhciwgMzI+KGNhbm9uaWNhbExlbmd0aCk7CisgICAgICAgICAgICBpc1N5
c3RlbUlEID0gZmFsc2U7CisgICAgICAgICAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAg
ICAgICAgICB1Y2FsX2dldENhbm9uaWNhbFRpbWVab25lSUQoaWFuYVRpbWVab25lLCBpYW5hVGlt
ZVpvbmVMZW5ndGgsIGJ1ZmZlci5kYXRhKCksIGNhbm9uaWNhbExlbmd0aCwgJmlzU3lzdGVtSUQs
ICZzdGF0dXMpOworICAgICAgICB9CisgICAgICAgIEFTU0VSVChVX1NVQ0NFU1Moc3RhdHVzKSk7
CisgICAgICAgIGNhbm9uaWNhbCA9IFN0cmluZyhidWZmZXIuZGF0YSgpLCBjYW5vbmljYWxMZW5n
dGgpOworICAgIH0KKyAgICB1ZW51bV9jbG9zZSh0aW1lWm9uZXMpOworCisgICAgLy8gMy4gSWYg
aWFuYVRpbWVab25lIGlzICJFdGMvVVRDIiBvciAiRXRjL0dNVCIsIHRoZW4gcmV0dXJuICJVVEMi
LgorICAgIGlmIChjYW5vbmljYWwgPT0gIkV0Yy9VVEMiIHx8IGNhbm9uaWNhbCA9PSAiRXRjL0dN
VCIpCisgICAgICAgIGNhbm9uaWNhbCA9IEFTQ0lJTGl0ZXJhbCgiVVRDIik7CisKKyAgICAvLyA0
LiBSZXR1cm4gaWFuYVRpbWVab25lLgorICAgIHJldHVybiBjYW5vbmljYWw7Cit9CisKK3N0YXRp
YyBWZWN0b3I8U3RyaW5nPiBsb2NhbGVEYXRhKGNvbnN0IFN0cmluZyYgbG9jYWxlLCBjb25zdCBT
dHJpbmcmIGtleSkKK3sKKyAgICBpZiAoa2V5ID09ICJjYSIpIHsKKyAgICAgICAgVUVycm9yQ29k
ZSBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgIFVFbnVtZXJhdGlvbiogY2FsZW5kYXJz
ID0gdWNhbF9nZXRLZXl3b3JkVmFsdWVzRm9yTG9jYWxlKCJjYWxlbmRhciIsIGxvY2FsZS51dGY4
KCkuZGF0YSgpLCBmYWxzZSwgJnN0YXR1cyk7CisgICAgICAgIEFTU0VSVChVX1NVQ0NFU1Moc3Rh
dHVzKSk7CisKKyAgICAgICAgVmVjdG9yPFN0cmluZz4gY2FEYXRhOworICAgICAgICBzdGF0dXMg
PSBVX1pFUk9fRVJST1I7CisgICAgICAgIGludDMyX3QgbmFtZUxlbmd0aDsKKyAgICAgICAgd2hp
bGUgKGNvbnN0IGNoYXIqIGF2YWlsYWJsZU5hbWUgPSB1ZW51bV9uZXh0KGNhbGVuZGFycywgJm5h
bWVMZW5ndGgsICZzdGF0dXMpKSB7CisgICAgICAgICAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1
cykpOworICAgICAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICAgICAgU3Ry
aW5nIGNhbGVuZGFyID0gU3RyaW5nKGF2YWlsYWJsZU5hbWUsIG5hbWVMZW5ndGgpOworICAgICAg
ICAgICAgY2FEYXRhLmFwcGVuZChjYWxlbmRhcik7CisgICAgICAgICAgICAvLyBFbnN1cmUgYWxp
YXNlcyB1c2VkIGluIGxhbmd1YWdlIHRhZyBhcmUgYWxsb3dlZC4KKyAgICAgICAgICAgIGlmIChj
YWxlbmRhciA9PSAiZ3JlZ29yaWFuIikKKyAgICAgICAgICAgICAgICBjYURhdGEuYXBwZW5kKEFT
Q0lJTGl0ZXJhbCgiZ3JlZ29yeSIpKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNhbGVuZGFyID09
ICJpc2xhbWljLWNpdmlsIikKKyAgICAgICAgICAgICAgICBjYURhdGEuYXBwZW5kKEFTQ0lJTGl0
ZXJhbCgiaXNsYW1pY2MiKSk7CisgICAgICAgICAgICBlbHNlIGlmIChjYWxlbmRhciA9PSAiZXRo
aW9waWMtYW1ldGUtYWxlbSIpCisgICAgICAgICAgICAgICAgY2FEYXRhLmFwcGVuZChBU0NJSUxp
dGVyYWwoImV0aGlvYWEiKSk7CisgICAgICAgIH0KKyAgICAgICAgdWVudW1fY2xvc2UoY2FsZW5k
YXJzKTsKKyAgICAgICAgcmV0dXJuIGNhRGF0YTsKKyAgICB9CisgICAgaWYgKGtleSA9PSAibnUi
KQorICAgICAgICByZXR1cm4gZ2V0TnVtYmVyaW5nU3lzdGVtc0ZvckxvY2FsZShsb2NhbGUpOwor
ICAgIHJldHVybiBWZWN0b3I8U3RyaW5nPigpOworfQorCitzdGF0aWMgSlNPYmplY3QqIHRvRGF0
ZVRpbWVPcHRpb25zKEV4ZWNTdGF0ZSYgc3RhdGUsIEpTVmFsdWUgb3JpZ2luYWxPcHRpb25zLCBj
b25zdCBEYXRlVGltZU9wdGlvblJlcXVpcmVkIHJlcXVpcmVkLCBjb25zdCBEYXRlVGltZU9wdGlv
bkRlZmF1bHRzIGRlZmF1bHRzKQoreworICAgIC8vIDEyLjEuMSBUb0RhdGVUaW1lT3B0aW9ucyBh
YnN0cmFjdCBvcGVyYXRpb24gKEVDTUEtNDAyIDIuMCkKKyAgICBWTSYgdm0gPSBzdGF0ZS52bSgp
OworCisgICAgLy8gMS4gSWYgb3B0aW9ucyBpcyB1bmRlZmluZWQsIHRoZW4gbGV0IG9wdGlvbnMg
YmUgbnVsbCwgZWxzZSBsZXQgb3B0aW9ucyBiZSBUb09iamVjdChvcHRpb25zKS4KKyAgICAvLyAy
LiBSZXR1cm5JZkFicnVwdChvcHRpb25zKS4KKyAgICAvLyAzLiBMZXQgb3B0aW9ucyBiZSBPYmpl
Y3RDcmVhdGUob3B0aW9ucykuCisgICAgSlNPYmplY3QqIG9wdGlvbnM7CisgICAgaWYgKG9yaWdp
bmFsT3B0aW9ucy5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAgICAgICBvcHRpb25zID0gY29uc3Ry
dWN0RW1wdHlPYmplY3QoJnN0YXRlLCBzdGF0ZS5sZXhpY2FsR2xvYmFsT2JqZWN0KCktPm51bGxQ
cm90b3R5cGVPYmplY3RTdHJ1Y3R1cmUoKSk7CisgICAgZWxzZSB7CisgICAgICAgIEpTT2JqZWN0
KiBvcmlnaW5hbFRvT2JqZWN0ID0gb3JpZ2luYWxPcHRpb25zLnRvT2JqZWN0KCZzdGF0ZSk7Cisg
ICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxs
cHRyOworICAgICAgICBvcHRpb25zID0gY29uc3RydWN0RW1wdHlPYmplY3QoJnN0YXRlLCBvcmln
aW5hbFRvT2JqZWN0KTsKKyAgICB9CisKKyAgICAvLyA0LiBMZXQgbmVlZERlZmF1bHRzIGJlIHRy
dWUuCisgICAgYm9vbCBuZWVkRGVmYXVsdHMgPSB0cnVlOworCisgICAgLy8gNS4gSWYgcmVxdWly
ZWQgaXMgImRhdGUiIG9yICJhbnkiLAorICAgIGlmIChyZXF1aXJlZCA9PSBEYXRlVGltZU9wdGlv
blJlcXVpcmVkOjpEYXRlIHx8IHJlcXVpcmVkID09IERhdGVUaW1lT3B0aW9uUmVxdWlyZWQ6OkFu
eSkgeworICAgICAgICAvLyBhLiBGb3IgZWFjaCBvZiB0aGUgcHJvcGVydHkgbmFtZXMgIndlZWtk
YXkiLCAieWVhciIsICJtb250aCIsICJkYXkiOgorICAgICAgICAvLyBpLiBMZXQgcHJvcCBiZSB0
aGUgcHJvcGVydHkgbmFtZS4KKyAgICAgICAgLy8gaWkuIExldCB2YWx1ZSBiZSBHZXQob3B0aW9u
cywgcHJvcCkuCisgICAgICAgIC8vIGlpaS4gUmV0dXJuSWZBYnJ1cHQodmFsdWUpLgorICAgICAg
ICAvLyBpdi4gSWYgdmFsdWUgaXMgbm90IHVuZGVmaW5lZCwgdGhlbiBsZXQgbmVlZERlZmF1bHRz
IGJlIGZhbHNlLgorICAgICAgICBKU1ZhbHVlIHdlZWtkYXkgPSBvcHRpb25zLT5nZXQoJnN0YXRl
LCB2bS5wcm9wZXJ0eU5hbWVzLT53ZWVrZGF5KTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2Vw
dGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICghd2Vla2Rh
eS5pc1VuZGVmaW5lZCgpKQorICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisKKyAg
ICAgICAgSlNWYWx1ZSB5ZWFyID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlOYW1l
cy0+eWVhcik7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
IHJldHVybiBudWxscHRyOworICAgICAgICBpZiAoIXllYXIuaXNVbmRlZmluZWQoKSkKKyAgICAg
ICAgICAgIG5lZWREZWZhdWx0cyA9IGZhbHNlOworCisgICAgICAgIEpTVmFsdWUgbW9udGggPSBv
cHRpb25zLT5nZXQoJnN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT5tb250aCk7CisgICAgICAgIGlm
IChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAg
ICAgICBpZiAoIW1vbnRoLmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMg
PSBmYWxzZTsKKworICAgICAgICBKU1ZhbHVlIGRheSA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZt
LnByb3BlcnR5TmFtZXMtPmRheSk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkK
KyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBpZiAoIWRheS5pc1VuZGVmaW5l
ZCgpKQorICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisgICAgfQorCisgICAgLy8g
Ni4gSWYgcmVxdWlyZWQgaXMgInRpbWUiIG9yICJhbnkiLAorICAgIGlmIChyZXF1aXJlZCA9PSBE
YXRlVGltZU9wdGlvblJlcXVpcmVkOjpUaW1lIHx8IHJlcXVpcmVkID09IERhdGVUaW1lT3B0aW9u
UmVxdWlyZWQ6OkFueSkgeworICAgICAgICAvLyBhLiBGb3IgZWFjaCBvZiB0aGUgcHJvcGVydHkg
bmFtZXMgImhvdXIiLCAibWludXRlIiwgInNlY29uZCI6CisgICAgICAgIC8vIGkuIExldCBwcm9w
IGJlIHRoZSBwcm9wZXJ0eSBuYW1lLgorICAgICAgICAvLyBpaS4gTGV0IHZhbHVlIGJlIEdldChv
cHRpb25zLCBwcm9wKS4KKyAgICAgICAgLy8gaWlpLiBSZXR1cm5JZkFicnVwdCh2YWx1ZSkuCisg
ICAgICAgIC8vIGl2LiBJZiB2YWx1ZSBpcyBub3QgdW5kZWZpbmVkLCB0aGVuIGxldCBuZWVkRGVm
YXVsdHMgYmUgZmFsc2UuCisgICAgICAgIEpTVmFsdWUgaG91ciA9IG9wdGlvbnMtPmdldCgmc3Rh
dGUsIHZtLnByb3BlcnR5TmFtZXMtPmhvdXIpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0
aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCFob3VyLmlz
VW5kZWZpbmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKworICAgICAg
ICBKU1ZhbHVlIG1pbnV0ZSA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMt
Pm1pbnV0ZSk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
IHJldHVybiBudWxscHRyOworICAgICAgICBpZiAoIW1pbnV0ZS5pc1VuZGVmaW5lZCgpKQorICAg
ICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisKKyAgICAgICAgSlNWYWx1ZSBzZWNvbmQg
PSBvcHRpb25zLT5nZXQoJnN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT5zZWNvbmQpOworICAgICAg
ICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsK
KyAgICAgICAgaWYgKCFzZWNvbmQuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZh
dWx0cyA9IGZhbHNlOworICAgIH0KKworICAgIC8vIDcuIElmIG5lZWREZWZhdWx0cyBpcyB0cnVl
IGFuZCBkZWZhdWx0cyBpcyBlaXRoZXIgImRhdGUiIG9yICJhbGwiLCB0aGVuCisgICAgaWYgKG5l
ZWREZWZhdWx0cyAmJiAoZGVmYXVsdHMgPT0gRGF0ZVRpbWVPcHRpb25EZWZhdWx0czo6RGF0ZSB8
fCBkZWZhdWx0cyA9PSBEYXRlVGltZU9wdGlvbkRlZmF1bHRzOjpBbGwpKSB7CisgICAgICAgIC8v
IGEuIEZvciBlYWNoIG9mIHRoZSBwcm9wZXJ0eSBuYW1lcyAieWVhciIsICJtb250aCIsICJkYXki
OgorICAgICAgICAvLyBpLiBMZXQgc3RhdHVzIGJlIENyZWF0ZURhdGVQcm9wZXJ0eU9yVGhyb3co
b3B0aW9ucywgcHJvcCwgIm51bWVyaWMiKS4KKyAgICAgICAgLy8gaWkuIFJldHVybklmQWJydXB0
KHN0YXR1cykuCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1l
cy0+eWVhciwganNTdHJpbmcoJnN0YXRlLCAibnVtZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRl
LmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICAgICAg
b3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5tb250aCwganNTdHJpbmco
JnN0YXRlLCAibnVtZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0
KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5kYXksIGpzU3RyaW5nKCZzdGF0ZSwgIm51bWVyaWMiKSk7
CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBu
dWxscHRyOworICAgIH0KKworICAgIC8vIDguIElmIG5lZWREZWZhdWx0cyBpcyB0cnVlIGFuZCBk
ZWZhdWx0cyBpcyBlaXRoZXIgInRpbWUiIG9yICJhbGwiLCB0aGVuCisgICAgaWYgKG5lZWREZWZh
dWx0cyAmJiAoZGVmYXVsdHMgPT0gRGF0ZVRpbWVPcHRpb25EZWZhdWx0czo6VGltZSB8fCBkZWZh
dWx0cyA9PSBEYXRlVGltZU9wdGlvbkRlZmF1bHRzOjpBbGwpKSB7CisgICAgICAgIC8vIGEuIEZv
ciBlYWNoIG9mIHRoZSBwcm9wZXJ0eSBuYW1lcyAiaG91ciIsICJtaW51dGUiLCAic2Vjb25kIjoK
KyAgICAgICAgLy8gaS4gTGV0IHN0YXR1cyBiZSBDcmVhdGVEYXRlUHJvcGVydHlPclRocm93KG9w
dGlvbnMsIHByb3AsICJudW1lcmljIikuCisgICAgICAgIC8vIGlpLiBSZXR1cm5JZkFicnVwdChz
dGF0dXMpLgorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMt
PmhvdXIsIGpzU3RyaW5nKCZzdGF0ZSwgIm51bWVyaWMiKSk7CisgICAgICAgIGlmIChzdGF0ZS5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgICAgIG9w
dGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bWludXRlLCBqc1N0cmluZygm
c3RhdGUsICJudW1lcmljIikpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisg
ICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qo
dm0sIHZtLnByb3BlcnR5TmFtZXMtPnNlY29uZCwganNTdHJpbmcoJnN0YXRlLCAibnVtZXJpYyIp
KTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CisgICAgfQorCisgICAgLy8gOS4gUmV0dXJuIG9wdGlvbnMuCisgICAgcmV0dXJu
IG9wdGlvbnM7Cit9CisKK3N0YXRpYyB2b2lkIHNldEZvcm1hdHNGcm9tUGF0dGVybihJbnRsRGF0
ZVRpbWVGb3JtYXQmIGRhdGVUaW1lRm9ybWF0LCBjb25zdCBTdHJpbmdWaWV3JiBwYXR0ZXJuKQor
eworICAgIC8vIEdldCBhbGwgc3ltYm9scyBmcm9tIHRoZSBwYXR0ZXJuLCBhbmQgc2V0IGZvcm1h
dCBmaWVsZHMgYWNjb3JkaW5nbHkuCisgICAgLy8gaHR0cDovL3VuaWNvZGUub3JnL3JlcG9ydHMv
dHIzNS90cjM1LWRhdGVzLmh0bWwjRGF0ZV9GaWVsZF9TeW1ib2xfVGFibGUKKyAgICB1bnNpZ25l
ZCBsZW5ndGggPSBwYXR0ZXJuLmxlbmd0aCgpOworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkg
PCBsZW5ndGg7ICsraSkgeworICAgICAgICBVQ2hhciBjdXJyZW50Q2hhcmFjdGVyID0gcGF0dGVy
bltpXTsKKyAgICAgICAgaWYgKCFpc0FTQ0lJQWxwaGEoY3VycmVudENoYXJhY3RlcikpCisgICAg
ICAgICAgICBjb250aW51ZTsKKworICAgICAgICB1bnNpZ25lZCBjb3VudCA9IDE7CisgICAgICAg
IHdoaWxlIChpICsgMSA8IGxlbmd0aCAmJiBwYXR0ZXJuW2kgKyAxXSA9PSBjdXJyZW50Q2hhcmFj
dGVyKSB7CisgICAgICAgICAgICArK2NvdW50OworICAgICAgICAgICAgKytpOworICAgICAgICB9
CisKKyAgICAgICAgaWYgKGN1cnJlbnRDaGFyYWN0ZXIgPT0gJ2gnIHx8IGN1cnJlbnRDaGFyYWN0
ZXIgPT0gJ0snKQorICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0SG91cjEyKHRydWUpOwor
ICAgICAgICBlbHNlIGlmIChjdXJyZW50Q2hhcmFjdGVyID09ICdIJyB8fCBjdXJyZW50Q2hhcmFj
dGVyID09ICdrJykKKyAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldEhvdXIxMihmYWxzZSk7
CisKKyAgICAgICAgc3dpdGNoIChjdXJyZW50Q2hhcmFjdGVyKSB7CisgICAgICAgIGNhc2UgJ0cn
OgorICAgICAgICAgICAgaWYgKGNvdW50ID09IDMpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVG
b3JtYXQuc2V0RXJhKEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6OlNob3J0KTsKKyAgICAg
ICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDQpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3Jt
YXQuc2V0RXJhKEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6OkxvbmcpOworICAgICAgICAg
ICAgZWxzZSBpZiAoY291bnQgPT0gNSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5z
ZXRFcmEoSW50bERhdGVUaW1lRm9ybWF0OjpFcmFTdHlsZTo6TmFycm93KTsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlICd5JzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQor
ICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldFllYXIoSW50bERhdGVUaW1lRm9ybWF0
OjpZZWFyU3R5bGU6Ok51bWVyaWMpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikK
KyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRZZWFyKEludGxEYXRlVGltZUZvcm1h
dDo6WWVhclN0eWxlOjpUd29EaWdpdCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2Fz
ZSAnTSc6CisgICAgICAgIGNhc2UgJ0wnOgorICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisg
ICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0TW9udGgoSW50bERhdGVUaW1lRm9ybWF0
OjpNb250aFN0eWxlOjpOdW1lcmljKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIp
CisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0TW9udGgoSW50bERhdGVUaW1lRm9y
bWF0OjpNb250aFN0eWxlOjpUd29EaWdpdCk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9
PSAzKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldE1vbnRoKEludGxEYXRlVGlt
ZUZvcm1hdDo6TW9udGhTdHlsZTo6U2hvcnQpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQg
PT0gNCkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRNb250aChJbnRsRGF0ZVRp
bWVGb3JtYXQ6Ok1vbnRoU3R5bGU6OkxvbmcpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQg
PT0gNSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRNb250aChJbnRsRGF0ZVRp
bWVGb3JtYXQ6Ok1vbnRoU3R5bGU6Ok5hcnJvdyk7CisgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgY2FzZSAnRSc6CisgICAgICAgICAgICBpZiAoY291bnQgPT0gMykKKyAgICAgICAgICAgICAg
ICBkYXRlVGltZUZvcm1hdC5zZXRXZWVrZGF5KEludGxEYXRlVGltZUZvcm1hdDo6V2Vla2RheVN0
eWxlOjpTaG9ydCk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA0KQorICAgICAgICAg
ICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldFdlZWtkYXkoSW50bERhdGVUaW1lRm9ybWF0OjpXZWVr
ZGF5U3R5bGU6OkxvbmcpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNSkKKyAgICAg
ICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRXZWVrZGF5KEludGxEYXRlVGltZUZvcm1hdDo6
V2Vla2RheVN0eWxlOjpOYXJyb3cpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ug
J2QnOgorICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisgICAgICAgICAgICAgICAgZGF0ZVRp
bWVGb3JtYXQuc2V0RGF5KEludGxEYXRlVGltZUZvcm1hdDo6RGF5U3R5bGU6Ok51bWVyaWMpOwor
ICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAgICAgICAgICAgICBkYXRlVGlt
ZUZvcm1hdC5zZXREYXkoSW50bERhdGVUaW1lRm9ybWF0OjpEYXlTdHlsZTo6VHdvRGlnaXQpOwor
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ2gnOgorICAgICAgICBjYXNlICdIJzoK
KyAgICAgICAgY2FzZSAnayc6CisgICAgICAgIGNhc2UgJ0snOgorICAgICAgICAgICAgaWYgKGNv
dW50ID09IDEpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0SG91cihJbnRsRGF0
ZVRpbWVGb3JtYXQ6OkhvdXJTdHlsZTo6TnVtZXJpYyk7CisgICAgICAgICAgICBlbHNlIGlmIChj
b3VudCA9PSAyKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldEhvdXIoSW50bERh
dGVUaW1lRm9ybWF0OjpIb3VyU3R5bGU6OlR3b0RpZ2l0KTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlICdtJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAg
ICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldE1pbnV0ZShJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1pbnV0
ZVN0eWxlOjpOdW1lcmljKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAg
ICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0TWludXRlKEludGxEYXRlVGltZUZvcm1hdDo6
TWludXRlU3R5bGU6OlR3b0RpZ2l0KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNl
ICdzJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAgIGRhdGVU
aW1lRm9ybWF0LnNldFNlY29uZChJbnRsRGF0ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpOdW1l
cmljKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAgICAgICAgICAgICAg
ZGF0ZVRpbWVGb3JtYXQuc2V0U2Vjb25kKEludGxEYXRlVGltZUZvcm1hdDo6U2Vjb25kU3R5bGU6
OlR3b0RpZ2l0KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICd6JzoKKyAgICAg
ICAgY2FzZSAndic6CisgICAgICAgIGNhc2UgJ1YnOgorICAgICAgICAgICAgaWYgKGNvdW50ID09
IDEpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0VGltZVpvbmVOYW1lKEludGxE
YXRlVGltZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6OlNob3J0KTsKKyAgICAgICAgICAgIGVs
c2UgaWYgKGNvdW50ID09IDQpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0VGlt
ZVpvbmVOYW1lKEludGxEYXRlVGltZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6OkxvbmcpOwor
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9Cit9CisKK0pTVmFsdWUgaW5pdGlh
bGl6ZURhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSYgc3RhdGUsIEludGxEYXRlVGltZUZvcm1hdCYg
ZGF0ZVRpbWVGb3JtYXQsIEpTVmFsdWUgbG9jYWxlcywgSlNWYWx1ZSBvcmlnaW5hbE9wdGlvbnMp
Cit7CisgICAgLy8gMTIuMS4xIEluaXRpYWxpemVEYXRlVGltZUZvcm1hdCAoZGF0ZVRpbWVGb3Jt
YXQsIGxvY2FsZXMsIG9wdGlvbnMpIChFQ01BLTQwMiAyLjApCisgICAgLy8gMS4gSWYgZGF0ZVRp
bWVGb3JtYXQuW1tpbml0aWFsaXplZEludGxPYmplY3RdXSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVF
cnJvciBleGNlcHRpb24uCisgICAgaWYgKGRhdGVUaW1lRm9ybWF0LmluaXRpYWxpemVkSW50bE9i
amVjdCgpKQorICAgICAgICB0aHJvd1R5cGVFcnJvcigmc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiT2Jq
ZWN0IGFscmVhZHkgaW5pdGlhbGl6ZWQiKSk7CisKKyAgICAvLyAyLiBTZXQgZGF0ZVRpbWVGb3Jt
YXQuW1tpbml0aWFsaXplZEludGxPYmplY3RdXSB0byB0cnVlLgorICAgIGRhdGVUaW1lRm9ybWF0
LnNldEluaXRpYWxpemVkSW50bE9iamVjdCgpOworCisgICAgLy8gMy4gTGV0IHJlcXVlc3RlZExv
Y2FsZXMgYmUgQ2Fub25pY2FsaXplTG9jYWxlTGlzdChsb2NhbGVzKS4KKyAgICBWZWN0b3I8U3Ry
aW5nPiByZXF1ZXN0ZWRMb2NhbGVzID0gY2Fub25pY2FsaXplTG9jYWxlTGlzdChzdGF0ZSwgbG9j
YWxlcyk7CisgICAgLy8gNC4gUmV0dXJuSWZBYnJ1cHQocmVxdWVzdGVkTG9jYWxlcyksCisgICAg
aWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsK
KworICAgIC8vIDUuIExldCBvcHRpb25zIGJlIFRvRGF0ZVRpbWVPcHRpb25zKG9wdGlvbnMsICJh
bnkiLCAiZGF0ZSIpLgorICAgIEpTT2JqZWN0KiBvcHRpb25zID0gdG9EYXRlVGltZU9wdGlvbnMo
c3RhdGUsIG9yaWdpbmFsT3B0aW9ucywgRGF0ZVRpbWVPcHRpb25SZXF1aXJlZDo6QW55LCBEYXRl
VGltZU9wdGlvbkRlZmF1bHRzOjpEYXRlKTsKKyAgICAvLyA2LiBSZXR1cm5JZkFicnVwdChvcHRp
b25zKS4KKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1Vu
ZGVmaW5lZCgpOworCisgICAgLy8gNy4gTGV0IG9wdCBiZSBhIG5ldyBSZWNvcmQuCisgICAgSGFz
aE1hcDxTdHJpbmcsIFN0cmluZz4gbG9jYWxlT3B0OworCisgICAgLy8gOC4gTGV0IG1hdGNoZXIg
YmUgR2V0T3B0aW9uKG9wdGlvbnMsICJsb2NhbGVNYXRjaGVyIiwgInN0cmluZyIsIMKrImxvb2t1
cCIsICJiZXN0IGZpdCLCuywgImJlc3QgZml0IikuCisgICAgVk0mIHZtID0gc3RhdGUudm0oKTsK
KyAgICBjb25zdCBIYXNoU2V0PFN0cmluZz4gbG9jYWxlTWF0Y2hlcnMoeyBBU0NJSUxpdGVyYWwo
Imxvb2t1cCIpLCBBU0NJSUxpdGVyYWwoImJlc3QgZml0IikgfSk7CisgICAgU3RyaW5nIGxvY2Fs
ZU1hdGNoZXIgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5h
bWVzLT5sb2NhbGVNYXRjaGVyLCBsb2NhbGVNYXRjaGVycywgImxvY2FsZU1hdGNoZXIgbXVzdCBi
ZSBlaXRoZXIgXCJsb29rdXBcIiBvciBcImJlc3QgZml0XCIiLCBBU0NJSUxpdGVyYWwoImJlc3Qg
Zml0IikpOworICAgIC8vIDkuIFJldHVybklmQWJydXB0KG1hdGNoZXIpLgorICAgIGlmIChzdGF0
ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgLy8g
MTAuIFNldCBvcHQuW1tsb2NhbGVNYXRjaGVyXV0gdG8gbWF0Y2hlci4KKyAgICBsb2NhbGVPcHQu
c2V0KHZtLnByb3BlcnR5TmFtZXMtPmxvY2FsZU1hdGNoZXIuc3RyaW5nKCksIGxvY2FsZU1hdGNo
ZXIpOworCisgICAgLy8gMTEuIExldCBsb2NhbGVEYXRhIGJlIHRoZSB2YWx1ZSBvZiAlRGF0ZVRp
bWVGb3JtYXQlLltbbG9jYWxlRGF0YV1dLgorICAgIC8vIDEyLiBMZXQgciBiZSBSZXNvbHZlTG9j
YWxlKCAlRGF0ZVRpbWVGb3JtYXQlLltbYXZhaWxhYmxlTG9jYWxlc11dLCByZXF1ZXN0ZWRMb2Nh
bGVzLCBvcHQsICVEYXRlVGltZUZvcm1hdCUuW1tyZWxldmFudEV4dGVuc2lvbktleXNdXSwgbG9j
YWxlRGF0YSkuCisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IGF2YWlsYWJsZUxvY2FsZXMgPSBz
dGF0ZS5sZXhpY2FsR2xvYmFsT2JqZWN0KCktPmludGxEYXRlVGltZUZvcm1hdEF2YWlsYWJsZUxv
Y2FsZXMoKTsKKyAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiByZWxldmFudEV4dGVuc2lvbktleXMg
PSB7IEFTQ0lJTGl0ZXJhbCgiY2EiKSwgQVNDSUlMaXRlcmFsKCJudSIpIH07CisgICAgSGFzaE1h
cDxTdHJpbmcsIFN0cmluZz4gcmVzb2x2ZWQgPSByZXNvbHZlTG9jYWxlKGF2YWlsYWJsZUxvY2Fs
ZXMsIHJlcXVlc3RlZExvY2FsZXMsIGxvY2FsZU9wdCwgcmVsZXZhbnRFeHRlbnNpb25LZXlzLCBs
b2NhbGVEYXRhKTsKKworICAgIC8vIDEzLiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tsb2NhbGVdXSB0
byB0aGUgdmFsdWUgb2Ygci5bW2xvY2FsZV1dLgorICAgIGRhdGVUaW1lRm9ybWF0LnNldExvY2Fs
ZShyZXNvbHZlZC5nZXQodm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlLnN0cmluZygpKSk7CisgICAg
Ly8gMTQuIFNldCBkYXRlVGltZUZvcm1hdC5bW2NhbGVuZGFyXV0gdG8gdGhlIHZhbHVlIG9mIHIu
W1tjYV1dLgorICAgIFN0cmluZyBjYWxlbmRhciA9IHJlc29sdmVkLmdldChBU0NJSUxpdGVyYWwo
ImNhIikpOworICAgIC8vIFN3aXRjaCB0byBwcmVmZXJyZWQgYWxpYXNlcy4KKyAgICBpZiAoY2Fs
ZW5kYXIgPT0gImdyZWdvcnkiKQorICAgICAgICBjYWxlbmRhciA9IEFTQ0lJTGl0ZXJhbCgiZ3Jl
Z29yaWFuIik7CisgICAgZWxzZSBpZiAoY2FsZW5kYXIgPT0gImlzbGFtaWNjIikKKyAgICAgICAg
Y2FsZW5kYXIgPSBBU0NJSUxpdGVyYWwoImlzbGFtaWMtY2l2aWwiKTsKKyAgICBlbHNlIGlmIChj
YWxlbmRhciA9PSAiZXRoaW9hYSIpCisgICAgICAgIGNhbGVuZGFyID0gQVNDSUlMaXRlcmFsKCJl
dGhpb3BpYy1hbWV0ZS1hbGVtIik7CisgICAgZGF0ZVRpbWVGb3JtYXQuc2V0Q2FsZW5kYXIoY2Fs
ZW5kYXIpOworICAgIC8vIDE1LiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tudW1iZXJpbmdTeXN0ZW1d
XSB0byB0aGUgdmFsdWUgb2Ygci5bW251XV0uCisgICAgZGF0ZVRpbWVGb3JtYXQuc2V0TnVtYmVy
aW5nU3lzdGVtKHJlc29sdmVkLmdldChBU0NJSUxpdGVyYWwoIm51IikpKTsKKyAgICAvLyAxNi4g
TGV0IGRhdGFMb2NhbGUgYmUgdGhlIHZhbHVlIG9mIHIuW1tkYXRhTG9jYWxlXV0uCisgICAgU3Ry
aW5nIGRhdGFMb2NhbGUgPSByZXNvbHZlZC5nZXQoQVNDSUlMaXRlcmFsKCJkYXRhTG9jYWxlIikp
OworCisgICAgLy8gMTcuIExldCB0eiBiZSBHZXQob3B0aW9ucywgInRpbWVab25lIikuCisgICAg
SlNWYWx1ZSB0elZhbHVlID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+
dGltZVpvbmUpOworICAgIC8vIDE4LiBSZXR1cm5JZkFicnVwdCh0eikuCisgICAgaWYgKHN0YXRl
LmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAgIC8v
IDE5LiBJZiB0eiBpcyBub3QgdW5kZWZpbmVkLCB0aGVuCisgICAgU3RyaW5nIHR6OworICAgIGlm
ICghdHpWYWx1ZS5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIC8vIGEuIExldCB0eiBiZSBUb1N0
cmluZyh0eikuCisgICAgICAgIFN0cmluZyBvcmlnaW5hbFR6ID0gdHpWYWx1ZS50b1dURlN0cmlu
Zygmc3RhdGUpOworICAgICAgICAvLyBiLiBSZXR1cm5JZkFicnVwdCh0eikuCisgICAgICAgIGlm
IChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgp
OworICAgICAgICAvLyBjLiBJZiB0aGUgcmVzdWx0IG9mIElzVmFsaWRUaW1lWm9uZU5hbWUodHop
IGlzIGZhbHNlLCB0aGVuIGkuIFRocm93IGEgUmFuZ2VFcnJvciBleGNlcHRpb24uCisgICAgICAg
IC8vIGQuIExldCB0eiBiZSBDYW5vbmljYWxpemVUaW1lWm9uZU5hbWUodHopLgorICAgICAgICB0
eiA9IGNhbm9uaWNhbGl6ZVRpbWVab25lTmFtZShvcmlnaW5hbFR6KTsKKyAgICAgICAgaWYgKHR6
LmlzTnVsbCgpKQorICAgICAgICAgICAgcmV0dXJuIHRocm93UmFuZ2VFcnJvcigmc3RhdGUsIFN0
cmluZzo6Zm9ybWF0KCJpbnZhbGlkIHRpbWUgem9uZTogJXMiLCBvcmlnaW5hbFR6LnV0ZjgoKS5k
YXRhKCkpKTsKKyAgICB9IGVsc2UKKyAgICAvLyAyMC4gRWxzZSwKKyAgICAgICAgLy8gYS4gTGV0
IHR6IGJlIERlZmF1bHRUaW1lWm9uZSgpLgorICAgICAgICB0eiA9IGRlZmF1bHRUaW1lWm9uZSgp
OworCisgICAgLy8gMjEuIFNldCBkYXRlVGltZUZvcm1hdC5bW3RpbWVab25lXV0gdG8gdHouCisg
ICAgZGF0ZVRpbWVGb3JtYXQuc2V0VGltZVpvbmUodHopOworCisgICAgLy8gMjIuIExldCBvcHQg
YmUgYSBuZXcgUmVjb3JkLgorICAgIC8vIFJhdGhlciB0aGFuIGJ1aWxkaW5nIGEgcmVjb3JkLCBi
dWlsZCB0aGUgc2tlbGV0b24gcGF0dGVybi4KKyAgICBTdHJpbmdCdWlsZGVyIGZvcm1hdE9wdDsK
KworICAgIC8vIDIzLiBGb3IgZWFjaCByb3cgb2YgVGFibGUgMywgZXhjZXB0IHRoZSBoZWFkZXIg
cm93LCBkbzoKKyAgICAvLyBhLiBMZXQgcHJvcCBiZSB0aGUgbmFtZSBnaXZlbiBpbiB0aGUgUHJv
cGVydHkgY29sdW1uIG9mIHRoZSByb3cuCisgICAgLy8gYi4gTGV0IHZhbHVlIGJlIEdldE9wdGlv
bihvcHRpb25zLCBwcm9wLCAic3RyaW5nIiwgwqt0aGUgc3RyaW5ncyBnaXZlbiBpbiB0aGUgVmFs
dWVzIGNvbHVtbiBvZiB0aGUgcm93wrssIHVuZGVmaW5lZCkuCisgICAgLy8gYy4gUmV0dXJuSWZB
YnJ1cHQodmFsdWUpLgorICAgIC8vIGQuIFNldCBvcHQuW1s8cHJvcD5dXSB0byB2YWx1ZS4KKyAg
ICBjb25zdCBIYXNoU2V0PFN0cmluZz4gbmFycm93U2hvcnRMb25nKHsgQVNDSUlMaXRlcmFsKCJu
YXJyb3ciKSwgQVNDSUlMaXRlcmFsKCJzaG9ydCIpLCBBU0NJSUxpdGVyYWwoImxvbmciKSB9KTsK
KyAgICBjb25zdCBIYXNoU2V0PFN0cmluZz4gdHdvRGlnaXROdW1lcmljKHsgQVNDSUlMaXRlcmFs
KCIyLWRpZ2l0IiksIEFTQ0lJTGl0ZXJhbCgibnVtZXJpYyIpIH0pOworICAgIGNvbnN0IEhhc2hT
ZXQ8U3RyaW5nPiB0d29EaWdpdE51bWVyaWNOYXJyb3dTaG9ydExvbmcoeyBBU0NJSUxpdGVyYWwo
IjItZGlnaXQiKSwgQVNDSUlMaXRlcmFsKCJudW1lcmljIiksIEFTQ0lJTGl0ZXJhbCgibmFycm93
IiksIEFTQ0lJTGl0ZXJhbCgic2hvcnQiKSwgQVNDSUlMaXRlcmFsKCJsb25nIikgfSk7CisgICAg
Y29uc3QgSGFzaFNldDxTdHJpbmc+IHNob3J0TG9uZyh7IEFTQ0lJTGl0ZXJhbCgic2hvcnQiKSwg
QVNDSUlMaXRlcmFsKCJsb25nIikgfSk7CisKKyAgICBTdHJpbmcgd2Vla2RheSA9IGludGxTdHJp
bmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPndlZWtkYXksIG5hcnJv
d1Nob3J0TG9uZywgIndlZWtkYXkgbXVzdCBiZSBcIm5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwi
bG9uZ1wiIiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAg
ICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCF3ZWVrZGF5LmlzTnVsbCgpKSB7Cisg
ICAgICAgIGlmICh3ZWVrZGF5ID09ICJuYXJyb3ciKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFw
cGVuZExpdGVyYWwoIkVFRUVFIik7CisgICAgICAgIGVsc2UgaWYgKHdlZWtkYXkgPT0gInNob3J0
IikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRlcmFsKCJFRUUiKTsKKyAgICAgICAg
ZWxzZSBpZiAod2Vla2RheSA9PSAibG9uZyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5k
TGl0ZXJhbCgiRUVFRSIpOworICAgIH0KKworICAgIFN0cmluZyBlcmEgPSBpbnRsU3RyaW5nT3B0
aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5lcmEsIG5hcnJvd1Nob3J0TG9u
ZywgImVyYSBtdXN0IGJlIFwibmFycm93XCIsIFwic2hvcnRcIiwgb3IgXCJsb25nXCIiLCBTdHJp
bmcoKSk7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNV
bmRlZmluZWQoKTsKKyAgICBpZiAoIWVyYS5pc051bGwoKSkgeworICAgICAgICBpZiAoZXJhID09
ICJuYXJyb3ciKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoIkdHR0dHIik7
CisgICAgICAgIGVsc2UgaWYgKGVyYSA9PSAic2hvcnQiKQorICAgICAgICAgICAgZm9ybWF0T3B0
LmFwcGVuZExpdGVyYWwoIkdHRyIpOworICAgICAgICBlbHNlIGlmIChlcmEgPT0gImxvbmciKQor
ICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoIkdHR0ciKTsKKyAgICB9CisKKyAg
ICBTdHJpbmcgeWVhciA9IGludGxTdHJpbmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3Bl
cnR5TmFtZXMtPnllYXIsIHR3b0RpZ2l0TnVtZXJpYywgInllYXIgbXVzdCBiZSBcIjItZGlnaXRc
IiBvciBcIm51bWVyaWNcIiIsIFN0cmluZygpKTsKKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9u
KCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIGlmICgheWVhci5pc051bGwo
KSkgeworICAgICAgICBpZiAoeWVhciA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBmb3JtYXRP
cHQuYXBwZW5kTGl0ZXJhbCgieXkiKTsKKyAgICAgICAgZWxzZSBpZiAoeWVhciA9PSAibnVtZXJp
YyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCd5Jyk7CisgICAgfQorCisgICAgU3Ry
aW5nIG1vbnRoID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlO
YW1lcy0+bW9udGgsIHR3b0RpZ2l0TnVtZXJpY05hcnJvd1Nob3J0TG9uZywgIm1vbnRoIG11c3Qg
YmUgXCIyLWRpZ2l0XCIsIFwibnVtZXJpY1wiLCBcIm5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwi
bG9uZ1wiIiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAg
ICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCFtb250aC5pc051bGwoKSkgeworICAg
ICAgICBpZiAobW9udGggPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVu
ZExpdGVyYWwoIk1NIik7CisgICAgICAgIGVsc2UgaWYgKG1vbnRoID09ICJudW1lcmljIikKKyAg
ICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoJ00nKTsKKyAgICAgICAgZWxzZSBpZiAobW9udGgg
PT0gIm5hcnJvdyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kTGl0ZXJhbCgiTU1NTU0i
KTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gInNob3J0IikKKyAgICAgICAgICAgIGZvcm1h
dE9wdC5hcHBlbmRMaXRlcmFsKCJNTU0iKTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gImxv
bmciKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoIk1NTU0iKTsKKyAgICB9
CisKKyAgICBTdHJpbmcgZGF5ID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0u
cHJvcGVydHlOYW1lcy0+ZGF5LCB0d29EaWdpdE51bWVyaWMsICJkYXkgbXVzdCBiZSBcIjItZGln
aXRcIiBvciBcIm51bWVyaWNcIiIsIFN0cmluZygpKTsKKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0
aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIGlmICghZGF5LmlzTnVs
bCgpKSB7CisgICAgICAgIGlmIChkYXkgPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgZm9ybWF0
T3B0LmFwcGVuZExpdGVyYWwoImRkIik7CisgICAgICAgIGVsc2UgaWYgKGRheSA9PSAibnVtZXJp
YyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCdkJyk7CisgICAgfQorCisgICAgU3Ry
aW5nIGhvdXIgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5h
bWVzLT5ob3VyLCB0d29EaWdpdE51bWVyaWMsICJob3VyIG11c3QgYmUgXCIyLWRpZ2l0XCIgb3Ig
XCJudW1lcmljXCIiLCBTdHJpbmcoKSk7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAgIC8vIFdlIG5lZWQgaG91cjEyIHRv
IG1ha2UgdGhlIGhvdXIgc2tlbGV0b24gcGF0dGVybiBkZWNpc2lvbiwgc28gZG8gdGhpcyBlYXJs
eS4KKyAgICAvLyAzMi4gTGV0IGhyMTIgYmUgR2V0T3B0aW9uKG9wdGlvbnMsICJob3VyMTIiLCAi
Ym9vbGVhbiIsIHVuZGVmaW5lZCwgdW5kZWZpbmVkKS4KKyAgICBib29sIGlzSG91cjEyVW5kZWZp
bmVkID0gdHJ1ZTsKKyAgICBib29sIGhyMTIgPSBpbnRsQm9vbGVhbk9wdGlvbihzdGF0ZSwgb3B0
aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+aG91cjEyLCBpc0hvdXIxMlVuZGVmaW5lZCk7CisgICAg
Ly8gMzMuIFJldHVybklmQWJydXB0KGhyMTIpLgorICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24o
KSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisKKyAgICBpZiAoIWhvdXIuaXNOdWxs
KCkpIHsKKyAgICAgICAgaWYgKGlzSG91cjEyVW5kZWZpbmVkKSB7CisgICAgICAgICAgICBpZiAo
aG91ciA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVy
YWwoImpqIik7CisgICAgICAgICAgICBlbHNlIGlmIChob3VyID09ICJudW1lcmljIikKKyAgICAg
ICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCdqJyk7CisgICAgICAgIH0gZWxzZSBpZiAoaHIx
MikgeworICAgICAgICAgICAgaWYgKGhvdXIgPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgICAg
IGZvcm1hdE9wdC5hcHBlbmRMaXRlcmFsKCJoaCIpOworICAgICAgICAgICAgZWxzZSBpZiAoaG91
ciA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgnaCcpOwor
ICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaWYgKGhvdXIgPT0gIjItZGlnaXQiKQorICAg
ICAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRlcmFsKCJISCIpOworICAgICAgICAgICAg
ZWxzZSBpZiAoaG91ciA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICAgICAgZm9ybWF0T3B0LmFw
cGVuZCgnSCcpOworICAgICAgICB9CisgICAgfQorCisgICAgU3RyaW5nIG1pbnV0ZSA9IGludGxT
dHJpbmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPm1pbnV0ZSwgdHdv
RGlnaXROdW1lcmljLCAibWludXRlIG11c3QgYmUgXCIyLWRpZ2l0XCIgb3IgXCJudW1lcmljXCIi
LCBTdHJpbmcoKSk7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1
cm4ganNVbmRlZmluZWQoKTsKKyAgICBpZiAoIW1pbnV0ZS5pc051bGwoKSkgeworICAgICAgICBp
ZiAobWludXRlID09ICIyLWRpZ2l0IikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRl
cmFsKCJtbSIpOworICAgICAgICBlbHNlIGlmIChtaW51dGUgPT0gIm51bWVyaWMiKQorICAgICAg
ICAgICAgZm9ybWF0T3B0LmFwcGVuZCgnbScpOworICAgIH0KKworICAgIFN0cmluZyBzZWNvbmQg
PSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5zZWNv
bmQsIHR3b0RpZ2l0TnVtZXJpYywgInNlY29uZCBtdXN0IGJlIFwiMi1kaWdpdFwiIG9yIFwibnVt
ZXJpY1wiIiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAg
ICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCFzZWNvbmQuaXNOdWxsKCkpIHsKKyAg
ICAgICAgaWYgKHNlY29uZCA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBw
ZW5kTGl0ZXJhbCgic3MiKTsKKyAgICAgICAgZWxzZSBpZiAoc2Vjb25kID09ICJudW1lcmljIikK
KyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoJ3MnKTsKKyAgICB9CisKKyAgICBTdHJpbmcg
dGltZVpvbmVOYW1lID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVy
dHlOYW1lcy0+dGltZVpvbmVOYW1lLCBzaG9ydExvbmcsICJ0aW1lWm9uZU5hbWUgbXVzdCBiZSBc
InNob3J0XCIgb3IgXCJsb25nXCIiLCBTdHJpbmcoKSk7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2Vw
dGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBpZiAoIXRpbWVab25l
TmFtZS5pc051bGwoKSkgeworICAgICAgICBpZiAodGltZVpvbmVOYW1lID09ICJzaG9ydCIpCisg
ICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCd6Jyk7CisgICAgICAgIGVsc2UgaWYgKHRpbWVa
b25lTmFtZSA9PSAibG9uZyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kTGl0ZXJhbCgi
enp6eiIpOworICAgIH0KKworICAgIC8vIDI0LiBMZXQgZGF0YUxvY2FsZURhdGEgYmUgR2V0KGxv
Y2FsZURhdGEsIGRhdGFMb2NhbGUpLgorICAgIC8vIDI1LiBMZXQgZm9ybWF0cyBiZSBHZXQoZGF0
YUxvY2FsZURhdGEsICJmb3JtYXRzIikuCisgICAgLy8gMjYuIExldCBtYXRjaGVyIGJlIEdldE9w
dGlvbihvcHRpb25zLCAiZm9ybWF0TWF0Y2hlciIsICJzdHJpbmciLCDCqyJiYXNpYyIsICJiZXN0
IGZpdCLCuywgImJlc3QgZml0IikuCisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IGZvcm1hdE1h
dGNoZXJzKHsgQVNDSUlMaXRlcmFsKCJiYXNpYyIpLCBBU0NJSUxpdGVyYWwoImJlc3QgZml0Iikg
fSk7CisgICAgaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1l
cy0+Zm9ybWF0TWF0Y2hlciwgZm9ybWF0TWF0Y2hlcnMsICJmb3JtYXRNYXRjaGVyIG11c3QgYmUg
ZWl0aGVyIFwiYmFzaWNcIiBvciBcImJlc3QgZml0XCIiLCBBU0NJSUxpdGVyYWwoImJlc3QgZml0
IikpOworICAgIC8vIDI3LiBSZXR1cm5JZkFicnVwdChtYXRjaGVyKS4KKyAgICBpZiAoc3RhdGUu
aGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworCisgICAgLy8g
QWx3YXlzIHVzZSBJQ1UgZGF0ZSBmb3JtYXQgZ2VuZXJhdG9yLCByYXRoZXIgdGhhbiBvdXIgb3du
IHBhdHRlcm4gbGlzdCBhbmQgbWF0Y2hlci4KKyAgICAvLyBDb3ZlcnMgc3RlcHMgMjgtMzYuCisg
ICAgVUVycm9yQ29kZSBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgVURhdGVUaW1lUGF0dGVy
bkdlbmVyYXRvciogZ2VuZXJhdG9yID0gdWRhdHBnX29wZW4oZGF0YUxvY2FsZS51dGY4KCkuZGF0
YSgpLCAmc3RhdHVzKTsKKyAgICBpZiAoVV9GQUlMVVJFKHN0YXR1cykpCisgICAgICAgIHJldHVy
biB0aHJvd1R5cGVFcnJvcigmc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiZmFpbGVkIHRvIGluaXRpYWxp
emUgRGF0ZVRpbWVGb3JtYXQiKSk7CisKKyAgICBTdHJpbmcgcGF0dGVybiA9IGZvcm1hdE9wdC50
b1N0cmluZygpOworICAgIFN0cmluZ1ZpZXcgc2tlbGV0b24ocGF0dGVybik7CisgICAgc3RhdHVz
ID0gVV9aRVJPX0VSUk9SOworICAgIGludDMyX3QgcGF0dGVybkxlbmd0aCA9IHVkYXRwZ19nZXRC
ZXN0UGF0dGVybihnZW5lcmF0b3IsIHNrZWxldG9uLnVwY29udmVydGVkQ2hhcmFjdGVycygpLCBz
a2VsZXRvbi5sZW5ndGgoKSwgbnVsbHB0ciwgMCwgJnN0YXR1cyk7CisgICAgaWYgKHN0YXR1cyA9
PSBVX0JVRkZFUl9PVkVSRkxPV19FUlJPUikgeworICAgICAgICBzdGF0dXMgPSBVX1pFUk9fRVJS
T1I7CisgICAgICAgIFZlY3RvcjxVQ2hhciwgMzI+IHBhdHRlcm5CdWZmZXIocGF0dGVybkxlbmd0
aCk7CisgICAgICAgIHVkYXRwZ19nZXRCZXN0UGF0dGVybihnZW5lcmF0b3IsIHNrZWxldG9uLnVw
Y29udmVydGVkQ2hhcmFjdGVycygpLCBza2VsZXRvbi5sZW5ndGgoKSwgcGF0dGVybkJ1ZmZlci5k
YXRhKCksIHBhdHRlcm5MZW5ndGgsICZzdGF0dXMpOworICAgICAgICBpZiAoVV9TVUNDRVNTKHN0
YXR1cykpCisgICAgICAgICAgICBwYXR0ZXJuID0gU3RyaW5nKHBhdHRlcm5CdWZmZXIuZGF0YSgp
LCBwYXR0ZXJuTGVuZ3RoKTsKKyAgICB9CisgICAgdWRhdHBnX2Nsb3NlKGdlbmVyYXRvcik7Cisg
ICAgaWYgKFVfRkFJTFVSRShzdGF0dXMpKQorICAgICAgICByZXR1cm4gdGhyb3dUeXBlRXJyb3Io
JnN0YXRlLCBBU0NJSUxpdGVyYWwoImZhaWxlZCB0byBpbml0aWFsaXplIERhdGVUaW1lRm9ybWF0
IikpOworCisgICAgc2V0Rm9ybWF0c0Zyb21QYXR0ZXJuKGRhdGVUaW1lRm9ybWF0LCBwYXR0ZXJu
KTsKKworICAgIC8vIDM3LiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tib3VuZEZvcm1hdF1dIHRvIHVu
ZGVmaW5lZC4KKyAgICAvLyBBbHJlYWR5IHVuZGVmaW5lZC4KKworICAgIC8vIDM4LiBTZXQgZGF0
ZVRpbWVGb3JtYXQuW1tpbml0aWFsaXplZERhdGVUaW1lRm9ybWF0XV0gdG8gdHJ1ZS4KKyAgICBk
YXRlVGltZUZvcm1hdC5zZXRJbml0aWFsaXplZERhdGVUaW1lRm9ybWF0KCk7CisKKyAgICAvLyAz
OS4gUmV0dXJuZGF0ZVRpbWVGb3JtYXQuCisgICAgcmV0dXJuICZkYXRlVGltZUZvcm1hdDsKK30K
KwogRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9y
bWF0RGF0ZVRpbWUoRXhlY1N0YXRlKiBzdGF0ZSkKIHsKICAgICAvLyAxMi4zLjQgRGF0ZVRpbWUg
Rm9ybWF0IEZ1bmN0aW9ucyAoRUNNQS00MDIgMi4wKQogICAgIC8vIDEuIExldCBkdGYgYmUgdGhl
IHRoaXMgdmFsdWUuCiAgICAgSW50bERhdGVUaW1lRm9ybWF0KiBmb3JtYXQgPSBqc0R5bmFtaWND
YXN0PEludGxEYXRlVGltZUZvcm1hdCo+KHN0YXRlLT50aGlzVmFsdWUoKSk7CiAgICAgLy8gMi4g
QXNzZXJ0OiBUeXBlKGR0ZikgaXMgT2JqZWN0IGFuZCBkdGYgaGFzIGFuIFtbaW5pdGlhbGl6ZWRE
YXRlVGltZUZvcm1hdF1dIGludGVybmFsIHNsb3Qgd2hvc2UgdmFsdWUgaXMgdHJ1ZS4KLSAgICBp
ZiAoIWZvcm1hdCkKLSAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJv
cihzdGF0ZSkpOworICAgIGlmICghZm9ybWF0IHx8ICFmb3JtYXQtPmluaXRpYWxpemVkRGF0ZVRp
bWVGb3JtYXQoKSkKKyAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJv
cihzdGF0ZSwgQVNDSUlMaXRlcmFsKCJEYXRlVGltZUZvcm1hdCBmb3JtYXQoKSBjYWxsZWQgb24g
dmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1h
dCIpKSk7CiAKICAgICBKU1ZhbHVlIGRhdGUgPSBzdGF0ZS0+YXJndW1lbnQoMCk7CiAgICAgZG91
YmxlIHZhbHVlOwpAQCAtMTE3LDcgKzcwMyw3IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgSW50bERhdGVUaW1lRm9ybWF0RnVuY0Zvcm1hdERhdGVUaW1lKEV4ZWNTdGF0ZSogc3RhCiAK
ICAgICAvLyAxLiBJZiB4IGlzIG5vdCBhIGZpbml0ZSBOdW1iZXIsIHRoZW4gdGhyb3cgYSBSYW5n
ZUVycm9yIGV4Y2VwdGlvbi4KICAgICBpZiAoIXN0ZDo6aXNmaW5pdGUodmFsdWUpKQotICAgICAg
ICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93UmFuZ2VFcnJvcihzdGF0ZSwgQVNDSUlMaXRl
cmFsKCJkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQuZm9ybWF0KCki
KSkpOworICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93UmFuZ2VFcnJvcihzdGF0
ZSwgQVNDSUlMaXRlcmFsKCJkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3Jt
YXQgZm9ybWF0KCkiKSkpOwogCiAgICAgLy8gRklYTUU6IGltcGxlbWVudCAyIC0gOQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQu
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oCmlu
ZGV4IDdkYWVkMTM4ZmIwOGRjZmEzYmU2N2QzN2M4M2E0N2RiNGFhYmNiZDcuLjc1YmZlOWI2MTJl
MTFkNzAyYTYxZWY2NzU1ZTQxODI1NmRkOWExMDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oCkBAIC0zOSw2ICszOSwxNiBAQCBj
bGFzcyBJbnRsRGF0ZVRpbWVGb3JtYXQgOiBwdWJsaWMgSlNEZXN0cnVjdGlibGVPYmplY3Qgewog
cHVibGljOgogICAgIHR5cGVkZWYgSlNEZXN0cnVjdGlibGVPYmplY3QgQmFzZTsKIAorICAgIGVu
dW0gY2xhc3MgV2Vla2RheVN0eWxlIHsgTm9uZSwgTmFycm93LCBTaG9ydCwgTG9uZyB9OworICAg
IGVudW0gY2xhc3MgRXJhU3R5bGUgeyBOb25lLCBOYXJyb3csIFNob3J0LCBMb25nIH07CisgICAg
ZW51bSBjbGFzcyBZZWFyU3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJpYyB9OworICAgIGVu
dW0gY2xhc3MgTW9udGhTdHlsZSB7IE5vbmUsIFR3b0RpZ2l0LCBOdW1lcmljLCBOYXJyb3csIFNo
b3J0LCBMb25nIH07CisgICAgZW51bSBjbGFzcyBEYXlTdHlsZSB7IE5vbmUsIFR3b0RpZ2l0LCBO
dW1lcmljIH07CisgICAgZW51bSBjbGFzcyBIb3VyU3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVt
ZXJpYyB9OworICAgIGVudW0gY2xhc3MgTWludXRlU3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVt
ZXJpYyB9OworICAgIGVudW0gY2xhc3MgU2Vjb25kU3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVt
ZXJpYyB9OworICAgIGVudW0gY2xhc3MgVGltZVpvbmVOYW1lU3R5bGUgeyBOb25lLCBTaG9ydCwg
TG9uZyB9OworCiAgICAgc3RhdGljIEludGxEYXRlVGltZUZvcm1hdCogY3JlYXRlKFZNJiwgSW50
bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IqKTsKICAgICBzdGF0aWMgU3RydWN0dXJlKiBjcmVh
dGVTdHJ1Y3R1cmUoVk0mLCBKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUpOwogCkBAIC00Nyw2ICs1
Nyw0MCBAQCBwdWJsaWM6CiAgICAgSlNCb3VuZEZ1bmN0aW9uKiBib3VuZEZvcm1hdCgpIGNvbnN0
IHsgcmV0dXJuIG1fYm91bmRGb3JtYXQuZ2V0KCk7IH0KICAgICB2b2lkIHNldEJvdW5kRm9ybWF0
KFZNJiwgSlNCb3VuZEZ1bmN0aW9uKik7CiAKKyAgICBib29sIGluaXRpYWxpemVkSW50bE9iamVj
dCgpIGNvbnN0IHsgcmV0dXJuIG1faW5pdGlhbGl6ZWRJbnRsT2JqZWN0OyB9CisgICAgdm9pZCBz
ZXRJbml0aWFsaXplZEludGxPYmplY3QoKSB7IG1faW5pdGlhbGl6ZWRJbnRsT2JqZWN0ID0gdHJ1
ZTsgfQorICAgIGJvb2wgaW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdCgpIGNvbnN0IHsgcmV0dXJu
IG1faW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdDsgfQorICAgIHZvaWQgc2V0SW5pdGlhbGl6ZWRE
YXRlVGltZUZvcm1hdCgpIHsgbV9pbml0aWFsaXplZERhdGVUaW1lRm9ybWF0ID0gdHJ1ZTsgfQor
CisgICAgU3RyaW5nIGxvY2FsZSgpIGNvbnN0IHsgcmV0dXJuIG1fbG9jYWxlOyB9CisgICAgdm9p
ZCBzZXRMb2NhbGUoY29uc3QgU3RyaW5nJiBsb2NhbGUpIHsgbV9sb2NhbGUgPSBsb2NhbGU7IH0K
KyAgICBTdHJpbmcgY2FsZW5kYXIoKSBjb25zdCB7IHJldHVybiBtX2NhbGVuZGFyOyB9CisgICAg
dm9pZCBzZXRDYWxlbmRhcihjb25zdCBTdHJpbmcmIGNhbGVuZGFyKSB7IG1fY2FsZW5kYXIgPSBj
YWxlbmRhcjsgfQorICAgIFN0cmluZyBudW1iZXJpbmdTeXN0ZW0oKSBjb25zdCB7IHJldHVybiBt
X251bWJlcmluZ1N5c3RlbTsgfQorICAgIHZvaWQgc2V0TnVtYmVyaW5nU3lzdGVtKGNvbnN0IFN0
cmluZyYgbnVtYmVyaW5nU3lzdGVtKSB7IG1fbnVtYmVyaW5nU3lzdGVtID0gbnVtYmVyaW5nU3lz
dGVtOyB9CisgICAgU3RyaW5nIHRpbWVab25lKCkgY29uc3QgeyByZXR1cm4gbV90aW1lWm9uZTsg
fQorICAgIHZvaWQgc2V0VGltZVpvbmUoY29uc3QgU3RyaW5nJiB0aW1lWm9uZSkgeyBtX3RpbWVa
b25lID0gdGltZVpvbmU7IH0KKyAgICBib29sIGhvdXIxMigpIGNvbnN0IHsgcmV0dXJuIG1faG91
cjEyOyB9CisgICAgdm9pZCBzZXRIb3VyMTIoY29uc3QgYm9vbCYgaG91cjEyKSB7IG1faG91cjEy
ID0gaG91cjEyOyB9CisgICAgV2Vla2RheVN0eWxlIHdlZWtkYXkoKSBjb25zdCB7IHJldHVybiBt
X3dlZWtkYXk7IH0KKyAgICB2b2lkIHNldFdlZWtkYXkoY29uc3QgV2Vla2RheVN0eWxlJiB3ZWVr
ZGF5KSB7IG1fd2Vla2RheSA9IHdlZWtkYXk7IH0KKyAgICBFcmFTdHlsZSBlcmEoKSBjb25zdCB7
IHJldHVybiBtX2VyYTsgfQorICAgIHZvaWQgc2V0RXJhKGNvbnN0IEVyYVN0eWxlJiBlcmEpIHsg
bV9lcmEgPSBlcmE7IH0KKyAgICBZZWFyU3R5bGUgeWVhcigpIGNvbnN0IHsgcmV0dXJuIG1feWVh
cjsgfQorICAgIHZvaWQgc2V0WWVhcihjb25zdCBZZWFyU3R5bGUmIHllYXIpIHsgbV95ZWFyID0g
eWVhcjsgfQorICAgIE1vbnRoU3R5bGUgbW9udGgoKSBjb25zdCB7IHJldHVybiBtX21vbnRoOyB9
CisgICAgdm9pZCBzZXRNb250aChjb25zdCBNb250aFN0eWxlJiBtb250aCkgeyBtX21vbnRoID0g
bW9udGg7IH0KKyAgICBEYXlTdHlsZSBkYXkoKSBjb25zdCB7IHJldHVybiBtX2RheTsgfQorICAg
IHZvaWQgc2V0RGF5KGNvbnN0IERheVN0eWxlJiBkYXkpIHsgbV9kYXkgPSBkYXk7IH0KKyAgICBI
b3VyU3R5bGUgaG91cigpIGNvbnN0IHsgcmV0dXJuIG1faG91cjsgfQorICAgIHZvaWQgc2V0SG91
cihjb25zdCBIb3VyU3R5bGUmIGhvdXIpIHsgbV9ob3VyID0gaG91cjsgfQorICAgIE1pbnV0ZVN0
eWxlIG1pbnV0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWludXRlOyB9CisgICAgdm9pZCBzZXRNaW51
dGUoY29uc3QgTWludXRlU3R5bGUmIG1pbnV0ZSkgeyBtX21pbnV0ZSA9IG1pbnV0ZTsgfQorICAg
IFNlY29uZFN0eWxlIHNlY29uZCgpIGNvbnN0IHsgcmV0dXJuIG1fc2Vjb25kOyB9CisgICAgdm9p
ZCBzZXRTZWNvbmQoY29uc3QgU2Vjb25kU3R5bGUmIHNlY29uZCkgeyBtX3NlY29uZCA9IHNlY29u
ZDsgfQorICAgIFRpbWVab25lTmFtZVN0eWxlIHRpbWVab25lTmFtZSgpIGNvbnN0IHsgcmV0dXJu
IG1fdGltZVpvbmVOYW1lOyB9CisgICAgdm9pZCBzZXRUaW1lWm9uZU5hbWUoY29uc3QgVGltZVpv
bmVOYW1lU3R5bGUmIHRpbWVab25lTmFtZSkgeyBtX3RpbWVab25lTmFtZSA9IHRpbWVab25lTmFt
ZTsgfQorCiBwcm90ZWN0ZWQ6CiAgICAgSW50bERhdGVUaW1lRm9ybWF0KFZNJiwgU3RydWN0dXJl
Kik7CiAgICAgdm9pZCBmaW5pc2hDcmVhdGlvbihWTSYpOwpAQCAtNTQsOCArOTgsMjkgQEAgcHJv
dGVjdGVkOgogICAgIHN0YXRpYyB2b2lkIHZpc2l0Q2hpbGRyZW4oSlNDZWxsKiwgU2xvdFZpc2l0
b3ImKTsKIAogICAgIFdyaXRlQmFycmllcjxKU0JvdW5kRnVuY3Rpb24+IG1fYm91bmRGb3JtYXQ7
CisKK3ByaXZhdGU6CisgICAgYm9vbCBtX2luaXRpYWxpemVkSW50bE9iamVjdCB7IGZhbHNlIH07
CisgICAgYm9vbCBtX2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQgeyBmYWxzZSB9OworCisgICAg
U3RyaW5nIG1fbG9jYWxlIHsgQVNDSUlMaXRlcmFsKCJlbiIpIH07CisgICAgU3RyaW5nIG1fY2Fs
ZW5kYXIgeyBBU0NJSUxpdGVyYWwoImdyZWdvcnkiKSB9OworICAgIFN0cmluZyBtX251bWJlcmlu
Z1N5c3RlbSB7IEFTQ0lJTGl0ZXJhbCgibGF0biIpIH07CisgICAgU3RyaW5nIG1fdGltZVpvbmUg
eyBBU0NJSUxpdGVyYWwoIlVUQyIpIH07CisgICAgYm9vbCBtX2hvdXIxMiB7IHRydWUgfTsKKyAg
ICBXZWVrZGF5U3R5bGUgbV93ZWVrZGF5IHsgV2Vla2RheVN0eWxlOjpOb25lIH07CisgICAgRXJh
U3R5bGUgbV9lcmEgeyBFcmFTdHlsZTo6Tm9uZSB9OworICAgIFllYXJTdHlsZSBtX3llYXIgeyBZ
ZWFyU3R5bGU6Ok5vbmUgfTsKKyAgICBNb250aFN0eWxlIG1fbW9udGggeyBNb250aFN0eWxlOjpO
b25lIH07CisgICAgRGF5U3R5bGUgbV9kYXkgeyBEYXlTdHlsZTo6Tm9uZSB9OworICAgIEhvdXJT
dHlsZSBtX2hvdXIgeyBIb3VyU3R5bGU6Ok5vbmUgfTsKKyAgICBNaW51dGVTdHlsZSBtX21pbnV0
ZSB7IE1pbnV0ZVN0eWxlOjpOb25lIH07CisgICAgU2Vjb25kU3R5bGUgbV9zZWNvbmQgeyBTZWNv
bmRTdHlsZTo6Tm9uZSB9OworICAgIFRpbWVab25lTmFtZVN0eWxlIG1fdGltZVpvbmVOYW1lIHsg
VGltZVpvbmVOYW1lU3R5bGU6Ok5vbmUgfTsKIH07Ci0gICAgCisKK1N0cmluZyBkZWZhdWx0VGlt
ZVpvbmUoKTsKK0pTVmFsdWUgaW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSYsIElu
dGxEYXRlVGltZUZvcm1hdCYsIEpTVmFsdWUgbG9jYWxlcywgSlNWYWx1ZSBvcHRpb25zKTsKIEVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVUaW1lRm9ybWF0RnVuY0Zvcm1hdERh
dGVUaW1lKEV4ZWNTdGF0ZSopOwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9y
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENv
bnN0cnVjdG9yLmNwcAppbmRleCAxZTg5ZmFhYWI3ZWI4OGM3Zjg2NGUwZjUzZjI1NWNiOGEyYzVl
ZWNjLi5mN2ZhZWMwOWRhOTE4ZDc0YzJhMjdmODI5NWUwZDgyOGI1ZGY0ZjQ4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1
Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1l
Rm9ybWF0Q29uc3RydWN0b3IuY3BwCkBAIC0xMDQsOSArMTA0LDkgQEAgc3RhdGljIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0SW50bERhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0
ZSogc3RhdGUKICAgICBBU1NFUlQoZGF0ZVRpbWVGb3JtYXQpOwogCiAgICAgLy8gNC4gUmV0dXJu
IEluaXRpYWxpemVEYXRlVGltZUZvcm1hdChkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9u
cykuCi0gICAgLy8gRklYTUU6IHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSW5pdGlhbGl6ZURhdGVU
aW1lRm9ybWF0KGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKSk7Ci0KLSAgICByZXR1
cm4gSlNWYWx1ZTo6ZW5jb2RlKGRhdGVUaW1lRm9ybWF0KTsKKyAgICBKU1ZhbHVlIGxvY2FsZXMg
PSBzdGF0ZS0+YXJndW1lbnQoMCk7CisgICAgSlNWYWx1ZSBvcHRpb25zID0gc3RhdGUtPmFyZ3Vt
ZW50KDEpOworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoaW5pdGlhbGl6ZURhdGVUaW1lRm9y
bWF0KCpzdGF0ZSwgKmRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKSk7CiB9CiAKIHN0
YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGxJbnRsRGF0ZVRpbWVGb3JtYXQo
RXhlY1N0YXRlKiBzdGF0ZSkKQEAgLTEyMyw5ICsxMjMsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBjYWxsSW50bERhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSogc3RhdGUp
CiAgICAgQVNTRVJUKGRhdGVUaW1lRm9ybWF0KTsKIAogICAgIC8vIDQuIFJldHVybiBJbml0aWFs
aXplRGF0ZVRpbWVGb3JtYXQoZGF0ZVRpbWVGb3JtYXQsIGxvY2FsZXMsIG9wdGlvbnMpLgotICAg
IC8vIEZJWE1FOiByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKEluaXRpYWxpemVEYXRlVGltZUZvcm1h
dChkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykpOwotCi0gICAgcmV0dXJuIEpTVmFs
dWU6OmVuY29kZShkYXRlVGltZUZvcm1hdCk7CisgICAgSlNWYWx1ZSBsb2NhbGVzID0gc3RhdGUt
PmFyZ3VtZW50KDApOworICAgIEpTVmFsdWUgb3B0aW9ucyA9IHN0YXRlLT5hcmd1bWVudCgxKTsK
KyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGluaXRpYWxpemVEYXRlVGltZUZvcm1hdCgqc3Rh
dGUsICpkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykpOwogfQogCiBDb25zdHJ1Y3RU
eXBlIEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKEpTQ2Vs
bCosIENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCkBAIC0xNjEsNyArMTYxLDcgQEAgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvckZ1
bmNTdXBwb3J0ZWRMb2NhbGVzT2YKICAgICAvLyAzLiBSZXR1cm4gU3VwcG9ydGVkTG9jYWxlcyhh
dmFpbGFibGVMb2NhbGVzLCByZXF1ZXN0ZWRMb2NhbGVzLCBvcHRpb25zKS4KICAgICByZXR1cm4g
SlNWYWx1ZTo6ZW5jb2RlKHN1cHBvcnRlZExvY2FsZXMoKnN0YXRlLCBhdmFpbGFibGVMb2NhbGVz
LCByZXF1ZXN0ZWRMb2NhbGVzLCBzdGF0ZS0+YXJndW1lbnQoMSkpKTsKIH0KLSAgICAKKwogdm9p
ZCBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcjo6dmlzaXRDaGlsZHJlbihKU0NlbGwqIGNl
bGwsIFNsb3RWaXNpdG9yJiB2aXNpdG9yKQogewogICAgIEludGxEYXRlVGltZUZvcm1hdENvbnN0
cnVjdG9yKiB0aGlzT2JqZWN0ID0ganNDYXN0PEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9y
Kj4oY2VsbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
RGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcAppbmRleCBkNWU1MjU5ODI0ODBiMWVk
NDkxZTZiN2I4ZmIxMmJiOGFmMWFlZTdkLi44M2ViZTZjMTk4MmI3N2E3OGZlZGNhZGQ1ZGE5ZjY5
YzdhZmEyM2Y1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
RGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKQEAgLTMwLDYgKzMwLDcgQEAK
IAogI2luY2x1ZGUgIkVycm9yLmgiCiAjaW5jbHVkZSAiSW50bERhdGVUaW1lRm9ybWF0LmgiCisj
aW5jbHVkZSAiSW50bE9iamVjdC5oIgogI2luY2x1ZGUgIkpTQm91bmRGdW5jdGlvbi5oIgogI2lu
Y2x1ZGUgIkpTQ0pTVmFsdWVJbmxpbmVzLmgiCiAjaW5jbHVkZSAiSlNDZWxsSW5saW5lcy5oIgpA
QCAtMzksOCArNDAsNiBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotU1RBVElDX0FTU0VSVF9JU19U
UklWSUFMTFlfREVTVFJVQ1RJQkxFKEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSk7Ci0KIHN0
YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdFByb3Rv
dHlwZUdldHRlckZvcm1hdChFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGlvbnMo
RXhlY1N0YXRlKik7CiAKQEAgLTU5LDEwICs1OCwxMSBAQCBjb25zdCBDbGFzc0luZm8gSW50bERh
dGVUaW1lRm9ybWF0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmSW50bERhdGVUaW1l
RgogQGVuZAogKi8KIAotSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKiBJbnRsRGF0ZVRpbWVG
b3JtYXRQcm90b3R5cGU6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUpCitJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUqIEludGxEYXRlVGltZUZv
cm1hdFByb3RvdHlwZTo6Y3JlYXRlKEV4ZWNTdGF0ZSogc3RhdGUsIEpTR2xvYmFsT2JqZWN0Kiwg
U3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CisgICAgVk0mIHZtID0gc3RhdGUtPnZtKCk7CiAgICAg
SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKiBvYmplY3QgPSBuZXcgKE5vdE51bGwsIGFsbG9j
YXRlQ2VsbDxJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU+KHZtLmhlYXApKSBJbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGUodm0sIHN0cnVjdHVyZSk7Ci0gICAgb2JqZWN0LT5maW5pc2hDcmVh
dGlvbih2bSwgc3RydWN0dXJlKTsKKyAgICBvYmplY3QtPmZpbmlzaENyZWF0aW9uKHN0YXRlLCBz
dHJ1Y3R1cmUpOwogICAgIHJldHVybiBvYmplY3Q7CiB9CiAKQEAgLTc2LDkgKzc2LDEzIEBAIElu
dGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1CiB7CiB9CiAKLXZvaWQgSW50bERhdGVUaW1lRm9ybWF0UHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIFN0cnVjdHVyZSopCit2b2lkIEludGxEYXRl
VGltZUZvcm1hdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiBzdGF0ZSwgU3Ry
dWN0dXJlKikKIHsKKyAgICBWTSYgdm0gPSBzdGF0ZS0+dm0oKTsKICAgICBCYXNlOjpmaW5pc2hD
cmVhdGlvbih2bSk7CisKKyAgICAvLyBUaGUgSW50bC5EYXRlVGltZUZvcm1hdCBwcm90b3R5cGUg
b2JqZWN0IGlzIGl0c2VsZiBhbiAlRGF0ZVRpbWVGb3JtYXQlIGluc3RhbmNlLCB3aG9zZSBpbnRl
cm5hbCBzbG90cyBhcmUgc2V0IGFzIGlmIGl0IGhhZCBiZWVuIGNvbnN0cnVjdGVkIGJ5IHRoZSBl
eHByZXNzaW9uIENvbnN0cnVjdCglRGF0ZVRpbWVGb3JtYXQlKS4KKyAgICBpbml0aWFsaXplRGF0
ZVRpbWVGb3JtYXQoKnN0YXRlLCAqdGhpcywganNVbmRlZmluZWQoKSwganNVbmRlZmluZWQoKSk7
CiB9CiAKIGJvb2wgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpnZXRPd25Qcm9wZXJ0eVNs
b3QoSlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBzdGF0ZSwgUHJvcGVydHlOYW1lIHByb3Bl
cnR5TmFtZSwgUHJvcGVydHlTbG90JiBzbG90KQpAQCAtODYsMTUgKzkwLDE1MSBAQCBib29sIElu
dGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBv
YmplY3QsIEV4ZWNTdGF0ZQogICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmpl
Y3Q+KHN0YXRlLCBkYXRlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxlLCBqc0Nhc3Q8SW50bERhdGVU
aW1lRm9ybWF0UHJvdG90eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KIAor
c3RhdGljIFN0cmluZyB3ZWVrZGF5U3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3Jt
YXQ6OldlZWtkYXlTdHlsZSBzdHlsZSkKK3sKKyAgICBzd2l0Y2ggKHN0eWxlKSB7CisgICAgY2Fz
ZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJu
IFN0cmluZygpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpXZWVrZGF5U3R5bGU6Ok5h
cnJvdzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibmFycm93Iik7CisgICAgY2FzZSBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHlsZTo6U2hvcnQ6CisgICAgICAgIHJldHVybiBB
U0NJSUxpdGVyYWwoInNob3J0Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OldlZWtk
YXlTdHlsZTo6TG9uZzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibG9uZyIpOworICAg
IH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gU3RyaW5nKCk7Cit9CisK
K3N0YXRpYyBTdHJpbmcgZXJhU3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6
OkVyYVN0eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxE
YXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6Ok5vbmU6CisgICAgICAgIHJldHVybiBTdHJpbmcoKTsK
KyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6Ok5hcnJvdzoKKyAgICAgICAg
cmV0dXJuIEFTQ0lJTGl0ZXJhbCgibmFycm93Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3Jt
YXQ6OkVyYVN0eWxlOjpTaG9ydDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgic2hvcnQi
KTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6Okxvbmc6CisgICAgICAg
IHJldHVybiBBU0NJSUxpdGVyYWwoImxvbmciKTsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFD
SEVEKCk7CisgICAgcmV0dXJuIFN0cmluZygpOworfQorCitzdGF0aWMgU3RyaW5nIHllYXJTdHls
ZVRvU3RyaW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlIHN0eWxlKQorewor
ICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0
eWxlOjpOb25lOgorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRp
bWVGb3JtYXQ6OlllYXJTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVy
YWwoIjItZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlOjpO
dW1lcmljOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJudW1lcmljIik7CisgICAgfQor
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3Rh
dGljIFN0cmluZyBtb250aFN0eWxlVG9TdHJpbmcoY29uc3QgSW50bERhdGVUaW1lRm9ybWF0OjpN
b250aFN0eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxE
YXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygp
OworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0eWxlOjpUd29EaWdpdDoKKyAg
ICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiMi1kaWdpdCIpOworICAgIGNhc2UgSW50bERhdGVU
aW1lRm9ybWF0OjpNb250aFN0eWxlOjpOdW1lcmljOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRl
cmFsKCJudW1lcmljIik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6
Ok5hcnJvdzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibmFycm93Iik7CisgICAgY2Fz
ZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6OlNob3J0OgorICAgICAgICByZXR1cm4g
QVNDSUlMaXRlcmFsKCJzaG9ydCIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpNb250
aFN0eWxlOjpMb25nOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJsb25nIik7CisgICAg
fQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKwor
c3RhdGljIFN0cmluZyBkYXlTdHlsZVRvU3RyaW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6
RGF5U3R5bGUgc3R5bGUpCit7CisgICAgc3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERh
dGVUaW1lRm9ybWF0OjpEYXlTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOwor
ICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpEYXlTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAg
IHJldHVybiBBU0NJSUxpdGVyYWwoIjItZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZv
cm1hdDo6RGF5U3R5bGU6Ok51bWVyaWM6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIm51
bWVyaWMiKTsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIFN0
cmluZygpOworfQorCitzdGF0aWMgU3RyaW5nIGhvdXJTdHlsZVRvU3RyaW5nKGNvbnN0IEludGxE
YXRlVGltZUZvcm1hdDo6SG91clN0eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsK
KyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlOjpOb25lOgorICAgICAgICBy
ZXR1cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkhvdXJTdHlsZTo6
VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIjItZGlnaXQiKTsKKyAgICBj
YXNlIEludGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlOjpOdW1lcmljOgorICAgICAgICByZXR1
cm4gQVNDSUlMaXRlcmFsKCJudW1lcmljIik7CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hF
RCgpOworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3RhdGljIFN0cmluZyBtaW51dGVTdHls
ZVRvU3RyaW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6TWludXRlU3R5bGUgc3R5bGUpCit7
CisgICAgc3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpNaW51
dGVTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgIGNhc2UgSW50bERh
dGVUaW1lRm9ybWF0OjpNaW51dGVTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiBBU0NJ
SUxpdGVyYWwoIjItZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6TWludXRl
U3R5bGU6Ok51bWVyaWM6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIm51bWVyaWMiKTsK
KyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIFN0cmluZygpOwor
fQorCitzdGF0aWMgU3RyaW5nIHNlY29uZFN0eWxlVG9TdHJpbmcoY29uc3QgSW50bERhdGVUaW1l
Rm9ybWF0OjpTZWNvbmRTdHlsZSBzdHlsZSkKK3sKKyAgICBzd2l0Y2ggKHN0eWxlKSB7CisgICAg
Y2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpOb25lOgorICAgICAgICByZXR1
cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpU
d29EaWdpdDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiMi1kaWdpdCIpOworICAgIGNh
c2UgSW50bERhdGVUaW1lRm9ybWF0OjpTZWNvbmRTdHlsZTo6TnVtZXJpYzoKKyAgICAgICAgcmV0
dXJuIEFTQ0lJTGl0ZXJhbCgibnVtZXJpYyIpOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNI
RUQoKTsKKyAgICByZXR1cm4gU3RyaW5nKCk7Cit9CisKK3N0YXRpYyBTdHJpbmcgdGltZVpvbmVO
YW1lU3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlRpbWVab25lTmFtZVN0
eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGlt
ZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6Ok5vbmU6CisgICAgICAgIHJldHVybiBTdHJpbmco
KTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6OlNob3J0
OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJzaG9ydCIpOworICAgIGNhc2UgSW50bERh
dGVUaW1lRm9ybWF0OjpUaW1lWm9uZU5hbWVTdHlsZTo6TG9uZzoKKyAgICAgICAgcmV0dXJuIEFT
Q0lJTGl0ZXJhbCgibG9uZyIpOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAg
ICByZXR1cm4gU3RyaW5nKCk7Cit9CisKIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50
bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlR2V0dGVyRm9ybWF0KEV4ZWNTdGF0ZSogc3RhdGUpCiB7
CiAgICAgLy8gMTIuMy4zIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCAoRUNN
QS00MDIgMi4wKQogICAgIC8vIDEuIExldCBkdGYgYmUgdGhpcyBEYXRlVGltZUZvcm1hdCBvYmpl
Y3QuCiAgICAgSW50bERhdGVUaW1lRm9ybWF0KiBkdGYgPSBqc0R5bmFtaWNDYXN0PEludGxEYXRl
VGltZUZvcm1hdCo+KHN0YXRlLT50aGlzVmFsdWUoKSk7CiAgICAgLy8gMi4gUmV0dXJuSWZBYnJ1
cHQoZHRmKS4KLSAgICBpZiAoIWR0ZikKKyAgICBpZiAoIWR0ZiB8fCAhZHRmLT5pbml0aWFsaXpl
ZERhdGVUaW1lRm9ybWF0KCkpCiAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dU
eXBlRXJyb3Ioc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5
cGUuZm9ybWF0IGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXpl
ZCBhcyBhIERhdGVUaW1lRm9ybWF0IikpKTsKLSAgICAKKwogICAgIEpTQm91bmRGdW5jdGlvbiog
Ym91bmRGb3JtYXQgPSBkdGYtPmJvdW5kRm9ybWF0KCk7CiAgICAgLy8gMy4gSWYgdGhlIFtbYm91
bmRGb3JtYXRdXSBpbnRlcm5hbCBzbG90IG9mIHRoaXMgRGF0ZVRpbWVGb3JtYXQgb2JqZWN0IGlz
IHVuZGVmaW5lZCwKICAgICBpZiAoIWJvdW5kRm9ybWF0KSB7CkBAIC0xMDYsNyArMjQ2LDcgQEAg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVH
ZXR0ZXJGb3JtYXQoRXhlY1N0YXRlKgogICAgICAgICBKU0FycmF5KiBib3VuZEFyZ3MgPSBKU0Fy
cmF5Ojp0cnlDcmVhdGVVbmluaXRpYWxpemVkKHZtLCBnbG9iYWxPYmplY3QtPmFycmF5U3RydWN0
dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbihBcnJheVdpdGhVbmRlY2lkZWQpLCAw
KTsKICAgICAgICAgaWYgKCFib3VuZEFyZ3MpCiAgICAgICAgICAgICByZXR1cm4gSlNWYWx1ZTo6
ZW5jb2RlKHRocm93T3V0T2ZNZW1vcnlFcnJvcihzdGF0ZSkpOwotICAgICAgICAKKwogICAgICAg
ICAvLyBjLiBMZXQgYmYgYmUgQm91bmRGdW5jdGlvbkNyZWF0ZShGLCDCq3RoaXMgdmFsdWXCuyku
CiAgICAgICAgIGJvdW5kRm9ybWF0ID0gSlNCb3VuZEZ1bmN0aW9uOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgdGFyZ2V0T2JqZWN0LCBkdGYsIGJvdW5kQXJncywgMSwgQVNDSUlMaXRlcmFsKCJm
b3JtYXQiKSk7CiAgICAgICAgIC8vIGQuIFNldCBkdGYuW1tib3VuZEZvcm1hdF1dIHRvIGJmLgpA
QCAtMTIwLDE1ICsyNjAsNDggQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0
ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKEV4ZWMKIHsKICAgICAvLyAx
Mi4zLjUgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgKEVD
TUEtNDAyIDIuMCkKICAgICBJbnRsRGF0ZVRpbWVGb3JtYXQqIGR0ZiA9IGpzRHluYW1pY0Nhc3Q8
SW50bERhdGVUaW1lRm9ybWF0Kj4oc3RhdGUtPnRoaXNWYWx1ZSgpKTsKLSAgICBpZiAoIWR0ZikK
KyAgICBpZiAoIWR0ZiB8fCAhZHRmLT5pbml0aWFsaXplZERhdGVUaW1lRm9ybWF0KCkpCiAgICAg
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3Ioc3RhdGUsIEFTQ0lJTGl0
ZXJhbCgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNhbGxl
ZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1l
Rm9ybWF0IikpKTsKIAogICAgIC8vIFRoZSBmdW5jdGlvbiByZXR1cm5zIGEgbmV3IG9iamVjdCB3
aG9zZSBwcm9wZXJ0aWVzIGFuZCBhdHRyaWJ1dGVzIGFyZSBzZXQgYXMgaWYgY29uc3RydWN0ZWQg
YnkgYW4gb2JqZWN0IGxpdGVyYWwgYXNzaWduaW5nIHRvIGVhY2ggb2YgdGhlIGZvbGxvd2luZyBw
cm9wZXJ0aWVzIHRoZSB2YWx1ZSBvZiB0aGUgY29ycmVzcG9uZGluZyBpbnRlcm5hbCBzbG90IG9m
IHRoaXMgRGF0ZVRpbWVGb3JtYXQgb2JqZWN0IChzZWUgMTIuNCk6IGxvY2FsZSwgY2FsZW5kYXIs
IG51bWJlcmluZ1N5c3RlbSwgdGltZVpvbmUsIGhvdXIxMiwgd2Vla2RheSwgZXJhLCB5ZWFyLCBt
b250aCwgZGF5LCBob3VyLCBtaW51dGUsIHNlY29uZCwgYW5kIHRpbWVab25lTmFtZS4gUHJvcGVy
dGllcyB3aG9zZSBjb3JyZXNwb25kaW5nIGludGVybmFsIHNsb3RzIGFyZSBub3QgcHJlc2VudCBh
cmUgbm90IGFzc2lnbmVkLgogICAgIC8vIE5vdGU6IEluIHRoaXMgdmVyc2lvbiBvZiB0aGUgRUNN
QVNjcmlwdCAyMDE1IEludGVybmF0aW9uYWxpemF0aW9uIEFQSSwgdGhlIHRpbWVab25lIHByb3Bl
cnR5IHdpbGwgYmUgdGhlIG5hbWUgb2YgdGhlIGRlZmF1bHQgdGltZSB6b25lIGlmIG5vIHRpbWVa
b25lIHByb3BlcnR5IHdhcyBwcm92aWRlZCBpbiB0aGUgb3B0aW9ucyBvYmplY3QgcHJvdmlkZWQg
dG8gdGhlIEludGwuRGF0ZVRpbWVGb3JtYXQgY29uc3RydWN0b3IuIFRoZSBwcmV2aW91cyB2ZXJz
aW9uIGxlZnQgdGhlIHRpbWVab25lIHByb3BlcnR5IHVuZGVmaW5lZCBpbiB0aGlzIGNhc2UuCiAK
KyAgICBWTSYgdm0gPSBzdGF0ZS0+dm0oKTsKKwogICAgIEpTT2JqZWN0KiBvcHRpb25zID0gY29u
c3RydWN0RW1wdHlPYmplY3Qoc3RhdGUpOworICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0u
cHJvcGVydHlOYW1lcy0+bG9jYWxlLCBqc05vbnRyaXZpYWxTdHJpbmcoc3RhdGUsIGR0Zi0+bG9j
YWxlKCkpKTsKKyAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIElkZW50aWZpZXI6OmZyb21TdHJp
bmcoJnZtLCAiY2FsZW5kYXIiKSwganNOb250cml2aWFsU3RyaW5nKHN0YXRlLCBkdGYtPmNhbGVu
ZGFyKCkpKTsKKyAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIElkZW50aWZpZXI6OmZyb21TdHJp
bmcoJnZtLCAibnVtYmVyaW5nU3lzdGVtIiksIGpzTm9udHJpdmlhbFN0cmluZyhzdGF0ZSwgZHRm
LT5udW1iZXJpbmdTeXN0ZW0oKSkpOworICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJv
cGVydHlOYW1lcy0+dGltZVpvbmUsIGpzTm9udHJpdmlhbFN0cmluZyhzdGF0ZSwgZHRmLT50aW1l
Wm9uZSgpKSk7CisKKyAgICBpZiAoZHRmLT53ZWVrZGF5KCkgIT0gSW50bERhdGVUaW1lRm9ybWF0
OjpXZWVrZGF5U3R5bGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0u
cHJvcGVydHlOYW1lcy0+d2Vla2RheSwganNOb250cml2aWFsU3RyaW5nKHN0YXRlLCB3ZWVrZGF5
U3R5bGVUb1N0cmluZyhkdGYtPndlZWtkYXkoKSkpKTsKKworICAgIGlmIChkdGYtPmVyYSgpICE9
IEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1
dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+ZXJhLCBqc05vbnRyaXZpYWxTdHJpbmcoc3Rh
dGUsIGVyYVN0eWxlVG9TdHJpbmcoZHRmLT5lcmEoKSkpKTsKKworICAgIGlmIChkdGYtPnllYXIo
KSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlllYXJTdHlsZTo6Tm9uZSkKKyAgICAgICAgb3B0aW9u
cy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT55ZWFyLCBqc05vbnRyaXZpYWxTdHJp
bmcoc3RhdGUsIHllYXJTdHlsZVRvU3RyaW5nKGR0Zi0+eWVhcigpKSkpOworCisgICAgaWYgKGR0
Zi0+bW9udGgoKSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6Ok5vbmUpCisgICAg
ICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bW9udGgsIGpzTm9u
dHJpdmlhbFN0cmluZyhzdGF0ZSwgbW9udGhTdHlsZVRvU3RyaW5nKGR0Zi0+bW9udGgoKSkpKTsK
KworICAgIGlmIChkdGYtPmRheSgpICE9IEludGxEYXRlVGltZUZvcm1hdDo6RGF5U3R5bGU6Ok5v
bmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+ZGF5
LCBqc05vbnRyaXZpYWxTdHJpbmcoc3RhdGUsIGRheVN0eWxlVG9TdHJpbmcoZHRmLT5kYXkoKSkp
KTsKKworICAgIGlmIChkdGYtPmhvdXIoKSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkhvdXJTdHls
ZTo6Tm9uZSkgeworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFt
ZXMtPmhvdXIsIGpzTm9udHJpdmlhbFN0cmluZyhzdGF0ZSwgaG91clN0eWxlVG9TdHJpbmcoZHRm
LT5ob3VyKCkpKSk7CisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlO
YW1lcy0+aG91cjEyLCBqc0Jvb2xlYW4oZHRmLT5ob3VyMTIoKSkpOworICAgIH0KKworICAgIGlm
IChkdGYtPm1pbnV0ZSgpICE9IEludGxEYXRlVGltZUZvcm1hdDo6TWludXRlU3R5bGU6Ok5vbmUp
CisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bWludXRl
LCBqc05vbnRyaXZpYWxTdHJpbmcoc3RhdGUsIG1pbnV0ZVN0eWxlVG9TdHJpbmcoZHRmLT5taW51
dGUoKSkpKTsKKworICAgIGlmIChkdGYtPnNlY29uZCgpICE9IEludGxEYXRlVGltZUZvcm1hdDo6
U2Vjb25kU3R5bGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJv
cGVydHlOYW1lcy0+c2Vjb25kLCBqc05vbnRyaXZpYWxTdHJpbmcoc3RhdGUsIHNlY29uZFN0eWxl
VG9TdHJpbmcoZHRmLT5zZWNvbmQoKSkpKTsKIAotICAgIC8vIEZJWE1FOiBQb3B1bGF0ZSBvYmpl
Y3QgZnJvbSBpbnRlcm5hbCBzbG90cy4KKyAgICBpZiAoZHRmLT50aW1lWm9uZU5hbWUoKSAhPSBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OlRpbWVab25lTmFtZVN0eWxlOjpOb25lKQorICAgICAgICBvcHRp
b25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPnRpbWVab25lTmFtZSwganNOb250
cml2aWFsU3RyaW5nKHN0YXRlLCB0aW1lWm9uZU5hbWVTdHlsZVRvU3RyaW5nKGR0Zi0+dGltZVpv
bmVOYW1lKCkpKSk7CiAKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKG9wdGlvbnMpOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9y
bWF0UHJvdG90eXBlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGUuaAppbmRleCBhMmZkNWUzNGVhNzk1ODZlNDc4OTZmYWZmYzQ0ZTVl
NmZhNjE1OWNiLi4xNjUwZjE5OTBmNTdiZTQ1MjE4NGI3YjZmMDBkNjZhMzM4ZDI3YjQ2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQ
cm90b3R5cGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGUuaApAQCAtMzgsMTMgKzM4LDEzIEBAIHB1YmxpYzoKICAgICB0eXBl
ZGVmIEludGxEYXRlVGltZUZvcm1hdCBCYXNlOwogICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBT
dHJ1Y3R1cmVGbGFncyA9IEJhc2U6OlN0cnVjdHVyZUZsYWdzIHwgT3ZlcnJpZGVzR2V0T3duUHJv
cGVydHlTbG90OwogCi0gICAgc3RhdGljIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSogY3Jl
YXRlKFZNJiwgSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqKTsKKyAgICBzdGF0aWMgSW50bERh
dGVUaW1lRm9ybWF0UHJvdG90eXBlKiBjcmVhdGUoRXhlY1N0YXRlKiwgSlNHbG9iYWxPYmplY3Qq
LCBTdHJ1Y3R1cmUqKTsKICAgICBzdGF0aWMgU3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoVk0m
LCBKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUpOwogCiAgICAgREVDTEFSRV9JTkZPOwogCiBwcm90
ZWN0ZWQ6Ci0gICAgdm9pZCBmaW5pc2hDcmVhdGlvbihWTSYsIFN0cnVjdHVyZSopOworICAgIHZv
aWQgZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiwgU3RydWN0dXJlKik7CiAKIHByaXZhdGU6CiAg
ICAgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKFZNJiwgU3RydWN0dXJlKik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuY3BwCmluZGV4IDkyMjY5YmQ4MDdm
ZWM5M2JjZGRlNmZiYzAyMjJmNThlYzZlNThmYmMuLjdmYWFkZWI5YzViYzUwOGZhNGFmYWU2N2Fi
ZjQ0MDZhMWMyNzg1N2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxP
YmplY3QuY3BwCkBAIC00NSw2ICs0NSw3IEBACiAjaW5jbHVkZSAiTG9va3VwLmgiCiAjaW5jbHVk
ZSAiT2JqZWN0UHJvdG90eXBlLmgiCiAjaW5jbHVkZSA8dW5pY29kZS91bG9jLmg+CisjaW5jbHVk
ZSA8dW5pY29kZS91bnVtc3lzLmg+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIAogbmFt
ZXNwYWNlIEpTQyB7CkBAIC02OCwxNSArNjksMTcgQEAgSW50bE9iamVjdDo6SW50bE9iamVjdChW
TSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewogfQogCi1JbnRsT2JqZWN0KiBJbnRsT2Jq
ZWN0OjpjcmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSkKK0ludGxPYmplY3QqIEludGxPYmplY3Q6OmNyZWF0ZShFeGVjU3RhdGUq
IHN0YXRlLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSkKIHsKKyAgICBWTSYgdm0gPSBzdGF0ZS0+dm0oKTsKICAgICBJbnRsT2JqZWN0KiBvYmplY3Qg
PSBuZXcgKE5vdE51bGwsIGFsbG9jYXRlQ2VsbDxJbnRsT2JqZWN0Pih2bS5oZWFwKSkgSW50bE9i
amVjdCh2bSwgc3RydWN0dXJlKTsKLSAgICBvYmplY3QtPmZpbmlzaENyZWF0aW9uKHZtLCBnbG9i
YWxPYmplY3QpOworICAgIG9iamVjdC0+ZmluaXNoQ3JlYXRpb24oc3RhdGUsIGdsb2JhbE9iamVj
dCk7CiAgICAgcmV0dXJuIG9iamVjdDsKIH0KIAotdm9pZCBJbnRsT2JqZWN0OjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCit2b2lkIEludGxPYmpl
Y3Q6OmZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSogc3RhdGUsIEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QpCiB7CisgICAgVk0mIHZtID0gc3RhdGUtPnZtKCk7CiAgICAgQmFzZTo6ZmluaXNo
Q3JlYXRpb24odm0pOwogICAgIEFTU0VSVChpbmhlcml0cyhpbmZvKCkpKTsKIApAQCAtOTUsNyAr
OTgsNyBAQCB2b2lkIEludGxPYmplY3Q6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCkKICAgICBudW1iZXJGb3JtYXRQcm90b3R5cGUtPnB1dERpcmVj
dFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5jb25zdHJ1Y3RvciwgbnVt
YmVyRm9ybWF0Q29uc3RydWN0b3IsIERvbnRFbnVtKTsKIAogICAgIC8vIFNldCB1cCBEYXRlVGlt
ZUZvcm1hdC4KLSAgICBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUqIGRhdGVUaW1lRm9ybWF0
UHJvdG90eXBlID0gSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpjcmVhdGVTdHJ1Y3R1cmUodm0s
IGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5vYmplY3RQcm90b3R5cGUoKSkpOworICAgIElu
dGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSogZGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUgPSBJbnRs
RGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OmNyZWF0ZShzdGF0ZSwgZ2xvYmFsT2JqZWN0LCBJbnRs
RGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgZ2xvYmFsT2JqZWN0
LCBnbG9iYWxPYmplY3QtPm9iamVjdFByb3RvdHlwZSgpKSk7CiAgICAgU3RydWN0dXJlKiBkYXRl
VGltZUZvcm1hdFN0cnVjdHVyZSA9IEludGxEYXRlVGltZUZvcm1hdDo6Y3JlYXRlU3RydWN0dXJl
KHZtLCBnbG9iYWxPYmplY3QsIGRhdGVUaW1lRm9ybWF0UHJvdG90eXBlKTsKICAgICBJbnRsRGF0
ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvciogZGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvciA9IEludGxE
YXRlVGltZUZvcm1hdENvbnN0cnVjdG9yOjpjcmVhdGUodm0sIEludGxEYXRlVGltZUZvcm1hdENv
bnN0cnVjdG9yOjpjcmVhdGVTdHJ1Y3R1cmUodm0sIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0
LT5mdW5jdGlvblByb3RvdHlwZSgpKSwgZGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUsIGRhdGVUaW1l
Rm9ybWF0U3RydWN0dXJlKTsKIApAQCAtNzQ1LDYgKzc0OCw3IEBAIEhhc2hNYXA8U3RyaW5nLCBT
dHJpbmc+IHJlc29sdmVMb2NhbGUoY29uc3QgSGFzaFNldDxTdHJpbmc+JiBhdmFpbGFibGVMb2Nh
bGVzLCBjCiAgICAgICAgICAgICBzaXplX3Qga2V5UG9zID0gZXh0ZW5zaW9uU3VidGFncy5maW5k
KGtleSk7CiAgICAgICAgICAgICAvLyBpaS4gSWYga2V5UG9zICE9IC0xLCB0aGVuCiAgICAgICAg
ICAgICBpZiAoa2V5UG9zICE9IG5vdEZvdW5kKSB7CisgICAgICAgICAgICAgICAgLy8gRklYTUU6
IGh0dHBzOi8vZ2l0aHViLmNvbS90YzM5L2VjbWE0MDIvaXNzdWVzLzU5CiAgICAgICAgICAgICAg
ICAgLy8gMS4gSWYga2V5UG9zICsgMSA8IGV4dGVuc2lvblN1YnRhZ3NMZW5ndGggYW5kIHRoZSBs
ZW5ndGggb2YgdGhlIHJlc3VsdCBvZiBHZXQoZXh0ZW5zaW9uU3VidGFncywgVG9TdHJpbmcoa2V5
UG9zICsxKSkgaXMgZ3JlYXRlciB0aGFuIDIsIHRoZW4KICAgICAgICAgICAgICAgICBpZiAoa2V5
UG9zICsgMSA8IGV4dGVuc2lvblN1YnRhZ3Muc2l6ZSgpICYmIGV4dGVuc2lvblN1YnRhZ3Nba2V5
UG9zICsgMV0ubGVuZ3RoKCkgPiAyKSB7CiAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFN0cmlu
ZyYgcmVxdWVzdGVkVmFsdWUgPSBleHRlbnNpb25TdWJ0YWdzW2tleVBvcyArIDFdOwpAQCAtOTE2
LDYgKzkyMCw3MiBAQCBKU1ZhbHVlIHN1cHBvcnRlZExvY2FsZXMoRXhlY1N0YXRlJiBzdGF0ZSwg
Y29uc3QgSGFzaFNldDxTdHJpbmc+JiBhdmFpbGFibGVMb2NhbAogICAgIHJldHVybiBzdXBwb3J0
ZWRMb2NhbGVzOwogfQogCitWZWN0b3I8U3RyaW5nPiBnZXROdW1iZXJpbmdTeXN0ZW1zRm9yTG9j
YWxlKGNvbnN0IFN0cmluZyYgbG9jYWxlKQoreworICAgIC8vIHVudW1zeXNfb3BlbkF2YWlsYWJs
ZU5hbWVzIGFwcGVhcnMgdG8gb25seSBiZSBhYmxlIHVzYWJsZSBvbmNlIHBlciBwcm9jZXNzLCBz
byB1c2Ugc3RhdGljIGxpc3QgaW5zdGVhZC4KKyAgICBVRXJyb3JDb2RlIHN0YXR1cyhVX1pFUk9f
RVJST1IpOworICAgIFVOdW1iZXJpbmdTeXN0ZW0qIGRlZmF1bHRTeXN0ZW0gPSB1bnVtc3lzX29w
ZW4obG9jYWxlLnV0ZjgoKS5kYXRhKCksICZzdGF0dXMpOworICAgIEFTU0VSVChVX1NVQ0NFU1Mo
c3RhdHVzKSk7CisKKyAgICBWZWN0b3I8U3RyaW5nPiBudW1iZXJpbmdTeXN0ZW1zKHsKKyAgICAg
ICAgQVNDSUlMaXRlcmFsKHVudW1zeXNfZ2V0TmFtZShkZWZhdWx0U3lzdGVtKSksCisgICAgICAg
IEFTQ0lJTGl0ZXJhbCgiYXJhYiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImFyYWJleHQiKSwK
KyAgICAgICAgQVNDSUlMaXRlcmFsKCJhcm1uIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiYXJt
bmxvdyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImJhbGkiKSwKKyAgICAgICAgQVNDSUlMaXRl
cmFsKCJiZW5nIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiY2hhbSIpLAorICAgICAgICBBU0NJ
SUxpdGVyYWwoImRldmEiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJldGhpIiksCisgICAgICAg
IEFTQ0lJTGl0ZXJhbCgiZnVsbHdpZGUiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJnZW9yIiks
CisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiZ3JlayIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImdy
ZWtsb3ciKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJndWpyIiksCisgICAgICAgIEFTQ0lJTGl0
ZXJhbCgiZ3VydSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbmlkYXlzIiksCisgICAgICAg
IEFTQ0lJTGl0ZXJhbCgiaGFuaWRlYyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbnMiKSwK
KyAgICAgICAgQVNDSUlMaXRlcmFsKCJoYW5zZmluIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgi
aGFudCIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbnRmaW4iKSwKKyAgICAgICAgQVNDSUlM
aXRlcmFsKCJoZWJyIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiamF2YSIpLAorICAgICAgICBB
U0NJSUxpdGVyYWwoImpwYW4iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJqcGFuZmluIiksCisg
ICAgICAgIEFTQ0lJTGl0ZXJhbCgia2FsaSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImtobXIi
KSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJrbmRhIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgi
bGFuYSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImxhbmF0aGFtIiksCisgICAgICAgIEFTQ0lJ
TGl0ZXJhbCgibGFvbyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImxhdG4iKSwKKyAgICAgICAg
QVNDSUlMaXRlcmFsKCJsZXBjIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibGltYiIpLAorICAg
ICAgICBBU0NJSUxpdGVyYWwoIm1seW0iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJtb25nIiks
CisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibXRlaSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoIm15
bXIiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJteW1yc2hhbiIpLAorICAgICAgICBBU0NJSUxp
dGVyYWwoIm5rb28iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJvbGNrIiksCisgICAgICAgIEFT
Q0lJTGl0ZXJhbCgib3J5YSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInJvbWFuIiksCisgICAg
ICAgIEFTQ0lJTGl0ZXJhbCgicm9tYW5sb3ciKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJzYXVy
IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgic3VuZCIpLAorICAgICAgICBBU0NJSUxpdGVyYWwo
InRhbHUiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJ0YW1sIiksCisgICAgICAgIEFTQ0lJTGl0
ZXJhbCgidGFtbGRlYyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInRlbHUiKSwKKyAgICAgICAg
QVNDSUlMaXRlcmFsKCJ0aGFpIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgidGlidCIpLAorICAg
ICAgICBBU0NJSUxpdGVyYWwoInZhaWkiKSwKKyAgICB9KTsKKyAgICByZXR1cm4gbnVtYmVyaW5n
U3lzdGVtczsKK30KKwogfSAvLyBuYW1lc3BhY2UgSlNDCiAKICNlbmRpZiAvLyBFTkFCTEUoSU5U
TCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3Qu
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaAppbmRleCBmMmRj
M2VlYTY0M2Q4ZDVhNzVjY2I1YTdiZWY5NDQwZGUxODcwOWQ4Li4yOTZiZjhhZjY4ZWU3YmFmNDFm
YjI5YzBjNTU2MzE3NDA0MGZlZmI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsT2JqZWN0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bE9iamVjdC5oCkBAIC00NSwxMyArNDUsMTMgQEAgcHVibGljOgogICAgIHR5cGVkZWYgSlNO
b25GaW5hbE9iamVjdCBCYXNlOwogICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBTdHJ1Y3R1cmVG
bGFncyA9IEJhc2U6OlN0cnVjdHVyZUZsYWdzIHwgT3ZlcnJpZGVzR2V0T3duUHJvcGVydHlTbG90
OwogCi0gICAgc3RhdGljIEludGxPYmplY3QqIGNyZWF0ZShWTSYsIEpTR2xvYmFsT2JqZWN0Kiwg
U3RydWN0dXJlKik7CisgICAgc3RhdGljIEludGxPYmplY3QqIGNyZWF0ZShFeGVjU3RhdGUqLCBK
U0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSopOwogICAgIHN0YXRpYyBTdHJ1Y3R1cmUqIGNyZWF0
ZVN0cnVjdHVyZShWTSYsIEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSk7CiAKICAgICBERUNMQVJF
X0lORk87CiAKIHByb3RlY3RlZDoKLSAgICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJiwgSlNHbG9i
YWxPYmplY3QqKTsKKyAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSosIEpTR2xvYmFs
T2JqZWN0Kik7CiAKIHByaXZhdGU6CiAgICAgSW50bE9iamVjdChWTSYsIFN0cnVjdHVyZSopOwpA
QCAtNjMsOCArNjMsOSBAQCBTdHJpbmcgaW50bFN0cmluZ09wdGlvbihFeGVjU3RhdGUmLCBKU1Zh
bHVlIG9wdGlvbnMsIFByb3BlcnR5TmFtZSwgY29uc3QgSGFzaFNldAogVmVjdG9yPFN0cmluZz4g
Y2Fub25pY2FsaXplTG9jYWxlTGlzdChFeGVjU3RhdGUmLCBKU1ZhbHVlIGxvY2FsZXMpOwogSGFz
aE1hcDxTdHJpbmcsIFN0cmluZz4gcmVzb2x2ZUxvY2FsZShjb25zdCBIYXNoU2V0PFN0cmluZz4m
IGF2YWlsYWJsZUxvY2FsZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiByZXF1ZXN0ZWRMb2NhbGVz
LCBjb25zdCBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiYgb3B0aW9ucywgY29uc3QgVmVjdG9yPFN0
cmluZz4mIHJlbGV2YW50RXh0ZW5zaW9uS2V5cywgVmVjdG9yPFN0cmluZz4gKCpsb2NhbGVEYXRh
KShjb25zdCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmKSk7CiBKU1ZhbHVlIHN1cHBvcnRlZExvY2Fs
ZXMoRXhlY1N0YXRlJiwgY29uc3QgSGFzaFNldDxTdHJpbmc+JiBhdmFpbGFibGVMb2NhbGVzLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYgcmVxdWVzdGVkTG9jYWxlcywgSlNWYWx1ZSBvcHRpb25zKTsK
LVN0cmluZyByZW1vdmVVbmljb2RlTG9jYWxlRXh0ZW5zaW9uKGNvbnN0IFN0cmluZyYpOwotU3Ry
aW5nIGJlc3RBdmFpbGFibGVMb2NhbGUoY29uc3QgSGFzaFNldDxTdHJpbmc+JiwgY29uc3QgU3Ry
aW5nJik7CitTdHJpbmcgcmVtb3ZlVW5pY29kZUxvY2FsZUV4dGVuc2lvbihjb25zdCBTdHJpbmcm
IGxvY2FsZSk7CitTdHJpbmcgYmVzdEF2YWlsYWJsZUxvY2FsZShjb25zdCBIYXNoU2V0PFN0cmlu
Zz4mIGF2YWlsYWJsZUxvY2FsZXMsIGNvbnN0IFN0cmluZyYgcmVxdWVzdGVkTG9jYWxlKTsKK1Zl
Y3RvcjxTdHJpbmc+IGdldE51bWJlcmluZ1N5c3RlbXNGb3JMb2NhbGUoY29uc3QgU3RyaW5nJiBs
b2NhbGUpOwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCmluZGV4IGVjYzgyYmE2MjhiZjE2ZjIxMTc5
YTJjNDhkYmE3M2FmN2VlNzJhODEuLmNiNjZiMTA4ZjA2MmFhN2VlZDQ0NDVmNDQ0NjVkY2NlN2Q0
ZjJmNmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFs
T2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9i
amVjdC5jcHAKQEAgLTQ2OCw3ICs0NjgsNyBAQCBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2
bSwgdm0ucHJvcGVydHlOYW1lcy0+IGpzTmFtZSwgbG93ZXJOYW1lICMjIENvbnN0cnVjdAogICAg
IHB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5ldmFsLCBt
X2V2YWxGdW5jdGlvbi5nZXQoKSwgRG9udEVudW0pOwogICAgIAogI2lmIEVOQUJMRShJTlRMKQot
ICAgIEludGxPYmplY3QqIGludGwgPSBJbnRsT2JqZWN0OjpjcmVhdGUodm0sIHRoaXMsIEludGxP
YmplY3Q6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgdGhpcywgbV9vYmplY3RQcm90b3R5cGUuZ2V0KCkp
KTsKKyAgICBJbnRsT2JqZWN0KiBpbnRsID0gSW50bE9iamVjdDo6Y3JlYXRlKGV4ZWMsIHRoaXMs
IEludGxPYmplY3Q6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgdGhpcywgbV9vYmplY3RQcm90b3R5cGUu
Z2V0KCkpKTsKICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlO
YW1lcy0+SW50bCwgaW50bCwgRG9udEVudW0pOwogI2VuZGlmIC8vIEVOQUJMRShJTlRMKQogICAg
IHB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5KU09OLCBK
U09OT2JqZWN0OjpjcmVhdGUodm0sIEpTT05PYmplY3Q6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgdGhp
cywgbV9vYmplY3RQcm90b3R5cGUuZ2V0KCkpKSwgRG9udEVudW0pOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDE0ZGI1YTUz
Y2Q2NTFkNTIwMDM1OTdlYTM4ZTcyYmYyZDcyMDhhMjkuLjc1NTI0OGZlYjNiNzYyNjFiNWVhODI5
OTA4NWQ3NmYzNTJkOWE1MzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxNS0xNS0xMSAgQW5k
eSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVyZS5jb20+CisKKyAgICAgICAgW0lOVExdIElt
cGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICoganMvaW50
bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQ6IEFkZGVkIHJlc29sdmVkT3B0aW9ucyB0ZXN0
cy4KKyAgICAgICAgKiBqcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5qczogQWRk
ZWQgcmVzb2x2ZWRPcHRpb25zIHRlc3RzLgorCiAyMDE1LTEyLTE1ICBNYXJrIExhbSAgPG1hcmsu
bGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBQb2x5bW9ycGhpYyBvcGVyYW5kIHR5cGVzIGZvciBE
RkcgYW5kIEZUTCBiaXQgb3BlcmF0b3JzLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvaW50
bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0
aW1lZm9ybWF0LWV4cGVjdGVkLnR4dAppbmRleCBkMDE2YzgwMDQ3ZDY0ZDAyMzhiNWM5NmQ3Yjkw
YjZjNGFlMWM5ZWE0Li4wZDIwMmZlN2FhZTU4MTA3Yjc4YjM2M2NmYmJkNmZlMzY4NTVhMTcwIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dApA
QCAtNTQsNyArNTQsNyBAQCBQQVNTIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwgJ2Zvcm1hdCcs
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5EYQogUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgIT09IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3Jt
YXQgaXMgdHJ1ZQogUEFTUyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCAhPT0gbmV3
IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQgaXMgdHJ1ZQogUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoeyB2YWx1ZU9mKCkgeyB0aHJvdyBFcnJvcignNGInKSB9
IH0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogNGIuCi1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQu
cHJvdG90eXBlLmZvcm1hdChJbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGRh
dGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRlVGltZUZvcm1hdC5mb3JtYXQoKS4KK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KEluZmluaXR5KSB0aHJldyBleGNl
cHRpb24gUmFuZ2VFcnJvcjogZGF0ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1lRm9y
bWF0IGZvcm1hdCgpLgogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQu
Y2FsbChudWxsLCAwKSBpcyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApCiBQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdC5jYWxsKEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2FyJyksIDApIGlzIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkKIFBBU1MgSW50
bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0LmNhbGwoNSwgMCkgaXMgSW50bC5EYXRl
VGltZUZvcm1hdCgpLmZvcm1hdCgwKQpAQCAtNjMsOCArNjMsMTMyIEBAIFBBU1MgbmV3IEludGwu
RGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQuY2FsbChJbnRsLkRhdGVUaW1lRm9ybWF0KCdhcicpLCAw
KSBpcyBJbnRsCiBQQVNTIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0LmNhbGwoNSwg
MCkgaXMgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKQogUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMubGVuZ3RoIGlzIDAKIFBBU1MgSW50bC5E
YXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgaXMgYW4gaW5zdGFuY2Ug
b2YgT2JqZWN0CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucygpLmxvY2FsZSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9u
cygpLmxvY2FsZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29s
dmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2
ZWRPcHRpb25zKCkuY2FsZW5kYXIKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkgaXMgbmV3IEludGwu
RGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5CitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyBuZXcgSW50bC5E
YXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmVyYQorUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIGlzIG5ldyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkueWVhcgorUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyBuZXcgSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmRheSBpcyBuZXcgSW50bC5EYXRlVGltZUZv
cm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmRheQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCkucmVzb2x2ZWRPcHRpb25zKCkuaG91cgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQo
KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90
b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCkucmVzb2x2ZWRPcHRpb25zKCkubWludXRlCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1h
dCgpLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUgaXMgbmV3IEludGwuRGF0ZVRp
bWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUKIFBBU1MgSW50bC5EYXRl
VGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgPT09IEludGwuRGF0ZVRpbWVG
b3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIGlzIGZhbHNlCiBQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucy5jYWxsKDUpIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMg
YSBEYXRlVGltZUZvcm1hdC4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnJCcpIHRocmV3IGV4
Y2VwdGlvbiBSYW5nZUVycm9yOiBpbnZhbGlkIGxhbmd1YWdlIHRhZzogJC4KK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCBudWxsKSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IGlzIHVu
ZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygp
LmVyYSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZl
ZE9wdGlvbnMoKS5tb250aCBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMgJ251bWVyaWMnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyAnbnVtZXJpYycKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIGlzIHVuZGVm
aW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhv
dXIxMiBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZl
ZE9wdGlvbnMoKS5taW51dGUgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJykucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSBpcyB1bmRl
ZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxvY2FsZU1hdGNoZXI6J2Jh
ZCcgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGxvY2FsZU1hdGNoZXIgbXVzdCBiZSBl
aXRoZXIgImxvb2t1cCIgb3IgImJlc3QgZml0Ii4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IGxvY2FsZU1hdGNoZXI6J2xvb2t1cCcgfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24u
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBsb2NhbGVNYXRjaGVyOidiZXN0IGZp
dCcgfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBmb3JtYXRNYXRjaGVyOidiYWQnIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9y
OiBmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0aGVyICJiYXNpYyIgb3IgImJlc3QgZml0Ii4KK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2Jhc2ljJyB9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IGZvcm1hdE1hdGNoZXI6J2Jlc3QgZml0JyB9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnYXItc2EnKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUg
aXMgJ2FyLVNBJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdhci1zYScpLnJlc29sdmVkT3B0
aW9ucygpLmNhbGVuZGFyIGlzICdpc2xhbWljLXVtYWxxdXJhJworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnYXJh
YicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGNhbGVuZGFyOidkYW5naScgfSku
cmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2dyZWdvcmlhbicKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSBpcyAn
ZW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYm9ndXMnKS5yZXNvbHZlZE9w
dGlvbnMoKS5jYWxlbmRhciBpcyAnZ3JlZ29yaWFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LWNhLWJ1ZGRoaXN0JykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIGlzICdlbi11LWNh
LWJ1ZGRoaXN0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJ1ZGRoaXN0Jyku
cmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2J1ZGRoaXN0JworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LWNhLWNoaW5lc2UnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBp
cyAnY2hpbmVzZScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1jb3B0aWMnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnY29wdGljJworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LWNhLWRhbmdpJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2Rh
bmdpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWV0aGlvYWEnKS5yZXNvbHZl
ZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnZXRoaW9waWMtYW1ldGUtYWxlbScKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ldGhpb3BpYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVu
ZGFyIGlzICdldGhpb3BpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnYXItU0EtdS1jYS1n
cmVnb3J5JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2dyZWdvcmlhbicKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1oZWJyZXcnKS5yZXNvbHZlZE9wdGlvbnMoKS5j
YWxlbmRhciBpcyAnaGVicmV3JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlu
ZGlhbicpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdpbmRpYW4nCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVu
ZGFyIGlzICdpc2xhbWljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFt
aWNjJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2lzbGFtaWMtY2l2aWwnCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtSVNPODYwMScpLnJlc29sdmVkT3B0aW9ucygp
LmNhbGVuZGFyIGlzICdpc284NjAxJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNh
LWphcGFuZXNlJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2phcGFuZXNlJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLXBlcnNpYW4nKS5yZXNvbHZlZE9wdGlvbnMo
KS5jYWxlbmRhciBpcyAncGVyc2lhbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1j
YS1yb2MnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAncm9jJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgbnVtYmVyaW5nU3lzdGVtOidndWpyJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2xhdG4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtbnUtYm9ndXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUgaXMgJ2VuJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWJvZ3VzJykucmVzb2x2ZWRPcHRpb25zKCku
bnVtYmVyaW5nU3lzdGVtIGlzICdsYXRuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LWxhdG4nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2xhdG4nCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYXJhYicpLnJlc29sdmVkT3B0aW9ucygp
LmxvY2FsZSBpcyAnZW4tdS1udS1hcmFiJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LWFyYWInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2FyYWInCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYXJhYmV4dCcpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyAnYXJhYmV4dCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4tdS1udS1iYWxpJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdi
YWxpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWJlbmcnKS5yZXNvbHZlZE9w
dGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2JlbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtbnUtZGV2YScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAn
ZGV2YScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1mdWxsd2lkZScpLnJlc29s
dmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnZnVsbHdpZGUnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZ3VqcicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5
c3RlbSBpcyAnZ3VqcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ndXJ1Jyku
cmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdndXJ1JworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LW51LWhhbmlkZWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJp
bmdTeXN0ZW0gaXMgJ2hhbmlkZWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
a2htcicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAna2htcicKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1rbmRhJykucmVzb2x2ZWRPcHRpb25zKCkubnVt
YmVyaW5nU3lzdGVtIGlzICdrbmRhJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51
LWxhb28nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2xhb28nCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGltYicpLnJlc29sdmVkT3B0aW9ucygpLm51
bWJlcmluZ1N5c3RlbSBpcyAnbGltYicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1u
dS1tbHltJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdtbHltJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LW1vbmcnKS5yZXNvbHZlZE9wdGlvbnMoKS5u
dW1iZXJpbmdTeXN0ZW0gaXMgJ21vbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
bnUtbXltcicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbXltcicKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1vcnlhJykucmVzb2x2ZWRPcHRpb25zKCku
bnVtYmVyaW5nU3lzdGVtIGlzICdvcnlhJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LXRhbWxkZWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3RhbWxk
ZWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGVsdScpLnJlc29sdmVkT3B0
aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAndGVsdScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4tdS1udS10aGFpJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICd0
aGFpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LXRpYnQnKS5yZXNvbHZlZE9w
dGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3RpYnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB3ZWVrZGF5OidpbnZhbGlkJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJv
cjogd2Vla2RheSBtdXN0IGJlICJuYXJyb3ciLCAic2hvcnQiLCBvciAibG9uZyIuCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmlj
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonbmFycm93JywgbW9udGg6J251bWVyaWMnLCBk
YXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkgaXMgJ25hcnJvdycKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J3Nob3J0JywgbW9udGg6J251
bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkgaXMgJ3No
b3J0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonbG9uZycsIG1v
bnRoOidudW1lcmljJywgZGF5OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5
IGlzICdsb25nJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduZXZlcicg
fSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGVyYSBtdXN0IGJlICJuYXJyb3ciLCAic2hv
cnQiLCBvciAibG9uZyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6
JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMgdW5k
ZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25hcnJvdycsIHll
YXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyAnbmFycm93JworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOidzaG9ydCcsIHllYXI6J251bWVyaWMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyBlcmE6J2xvbmcnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS5lcmEgaXMgJ2xvbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB5ZWFyOidu
b3BlJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogeWVhciBtdXN0IGJlICIyLWRpZ2l0
IiBvciAibnVtZXJpYyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6
JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIGlzIHVu
ZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduYXJyb3cnLCB5
ZWFyOicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIGlzICcyLWRpZ2l0JworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduYXJyb3cnLCB5ZWFyOidudW1lcmlj
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIGlzICdudW1lcmljJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgbW9udGg6MiB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjog
bW9udGggbXVzdCBiZSAiMi1kaWdpdCIsICJudW1lcmljIiwgIm5hcnJvdyIsICJzaG9ydCIsIG9y
ICJsb25nIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdp
dCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlzIHVuZGVmaW5l
ZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6JzItZGlnaXQnLCB5ZWFy
OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnMi1kaWdpdCcKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidudW1lcmljJywgeWVhcjonbnVtZXJp
YycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMgJ251bWVyaWMnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonbmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkubW9udGggaXMgJ25hcnJvdycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IG1vbnRoOidzaG9ydCcsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLm1vbnRoIGlzICdzaG9ydCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1v
bnRoOidsb25nJywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMg
J2xvbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBkYXk6JycgfSkgdGhyZXcg
ZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGRheSBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyIu
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3Vy
OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMgdW5kZWZpbmVkCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonbG9uZycsIGRheTonMi1kaWdpdCcgfSku
cmVzb2x2ZWRPcHRpb25zKCkuZGF5IGlzICcyLWRpZ2l0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLmRheSBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGhv
dXI6W10gfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGhvdXIgbXVzdCBiZSAiMi1kaWdp
dCIgb3IgIm51bWVyaWMiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVk
T3B0aW9ucygpLmhvdXIgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS5ob3VyIGlzICdudW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWlu
dXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91ciBp
cyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlv
bnMoKS5ob3VyMTIgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5o
b3VyMTIgaXMgdHJ1ZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdwdC1CUicsIHsgbWludXRl
OicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIGlz
IGZhbHNlCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6bnVsbCB9KSB0
aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogbWludXRlIG11c3QgYmUgIjItZGlnaXQiIG9yICJu
dW1lcmljIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMo
KS5taW51dGUgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
aW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5taW51
dGUgaXMgJzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6
J251bWVyaWMnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUgaXMg
JzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBzZWNvbmQ6J2JhZHZh
bHVlJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogc2Vjb25kIG11c3QgYmUgIjItZGln
aXQiIG9yICJudW1lcmljIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZl
ZE9wdGlvbnMoKS5zZWNvbmQgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1lcmljJywgc2Vjb25kOicyLWRpZ2l0
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQgaXMgJzItZGlnaXQnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1lcmljJywgc2Vj
b25kOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQgaXMgJzItZGlnaXQnCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZU5hbWU6J25hbWUnIH0pIHRo
cmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiB0aW1lWm9uZU5hbWUgbXVzdCBiZSAic2hvcnQiIG9y
ICJsb25nIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZU5hbWUgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJywgdGltZVpvbmVOYW1lOidzaG9y
dCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIGlzICdzaG9ydCcKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgncHQtQlInLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVy
aWMnLCB0aW1lWm9uZU5hbWU6J2xvbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFt
ZSBpcyAnbG9uZycKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01Q
TEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwtZGF0ZXRp
bWVmb3JtYXQuanMgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZv
cm1hdC5qcwppbmRleCBlZGUxYjVjZTM0NmZkMjkwNTMwYjM3Mzc3ZjAwY2FlNTAzN2U2MDdmLi41
MjFiNDI0OGNlZTFjZTRjMjQzY2RmZTdhOTE3MTFkZjhjMDkyMDk4IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5qcworKysgYi9MYXlv
dXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5qcwpAQCAtMTE5LDcg
KzExOSw3IEBAIHNob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3Jt
YXQoeyB2YWx1ZU9mKCkgeyB0aHJvdyBFcnJvcignNGInCiAvLyAxMi4zLjQgRm9ybWF0RGF0ZVRp
bWUgYWJzdHJhY3Qgb3BlcmF0aW9uCiAKIC8vIDEuIElmIHggaXMgbm90IGEgZmluaXRlIE51bWJl
ciwgdGhlbiB0aHJvdyBhIFJhbmdlRXJyb3IgZXhjZXB0aW9uLgotc2hvdWxkVGhyb3coIkludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdChJbmZpbml0eSkiLCAiJ1JhbmdlRXJyb3I6
IGRhdGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRlVGltZUZvcm1hdC5mb3JtYXQoKSciKTsK
K3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoSW5maW5p
dHkpIiwgIidSYW5nZUVycm9yOiBkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVG
b3JtYXQgZm9ybWF0KCknIik7CiAKIC8vIEZvcm1hdCBpcyBib3VuZCwgc28gY2FsbGluZyB3aXRo
IGFsdGVybmF0ZSAidGhpcyIgaGFzIG5vIGVmZmVjdC4KIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2FsbChudWxsLCAwKSIsICJJbnRsLkRhdGVUaW1lRm9y
bWF0KCkuZm9ybWF0KDApIik7CkBAIC0xMzYsOSArMTM2LDE2MCBAQCBzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zLmxlbmd0aCIsICIwIik7CiAv
LyBSZXR1cm5zIGEgbmV3IG9iamVjdCB3aG9zZSBwcm9wZXJ0aWVzIGFuZCBhdHRyaWJ1dGVzIGFy
ZSBzZXQgYXMgaWYgY29uc3RydWN0ZWQgYnkgYW4gb2JqZWN0IGxpdGVyYWwuCiBzaG91bGRCZVR5
cGUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIiwgIk9i
amVjdCIpOwogCisvLyBUaGUgSW50bC5EYXRlVGltZUZvcm1hdCBwcm90b3R5cGUgb2JqZWN0IGlz
IGl0c2VsZiBhbiAlRGF0ZVRpbWVGb3JtYXQlIGluc3RhbmNlLCB3aG9zZSBpbnRlcm5hbCBzbG90
cyBhcmUgc2V0IGFzIGlmIGl0IGhhZCBiZWVuIGNvbnN0cnVjdGVkIGJ5IHRoZSBleHByZXNzaW9u
IENvbnN0cnVjdCglRGF0ZVRpbWVGb3JtYXQlKS4KK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUiLCAibmV3IEludGwuRGF0ZVRp
bWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUiKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICJuZXcg
SW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuY2Fs
ZW5kYXIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxl
bmRhciIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJl
c29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAibmV3IEludGwu
RGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5Iik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgIm5l
dyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkueWVhciIs
ICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnllYXIiKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5t
b250aCIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm1vbnRo
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRp
b25zKCkuZGF5IiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCku
ZGF5Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRP
cHRpb25zKCkuaG91ciIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNv
bHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZl
ZE9wdGlvbnMoKS5ob3VyMTIiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQo
KS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAibmV3IEludGwuRGF0ZVRp
bWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUiLCAi
bmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUi
KTsKKwogLy8gUmV0dXJucyBhIG5ldyBvYmplY3QgZWFjaCB0aW1lLgogc2hvdWxkQmVGYWxzZSgi
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgPT09IEludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIik7CiAKIC8vIFRocm93
cyBvbiBub24tRGF0ZVRpbWVGb3JtYXQgdGhpcy4KIHNob3VsZFRocm93KCJJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMuY2FsbCg1KSIsICInVHlwZUVycm9yOiBJ
bnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgY2FsbGVkIG9uIHZh
bHVlIHRoYXRcXCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1h
dCciKTsKIAorc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJyQnKSIsICInUmFuZ2VF
cnJvcjogaW52YWxpZCBsYW5ndWFnZSB0YWc6ICQnIik7CitzaG91bGROb3RUaHJvdygiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCBudWxsKSIpOworCisvLyBEZWZhdWx0cyB0byBtb250aCwgZGF5
LCB5ZWFyLgorc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRp
b25zKCkud2Vla2RheSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmVyYSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIiwgIidu
dW1lcmljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRP
cHRpb25zKCkuZGF5IiwgIidudW1lcmljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkueWVhciIsICInbnVtZXJpYyciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIiLCAidW5k
ZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9w
dGlvbnMoKS5ob3VyMTIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiLCAidW5kZWZpbmVkIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQi
LCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUiLCAidW5kZWZpbmVkIik7CisKK3Nob3VsZFRocm93
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjonYmFkJyB9KSIsICdc
J1JhbmdlRXJyb3I6IGxvY2FsZU1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgImxvb2t1cCIgb3IgImJl
c3QgZml0IlwnJyk7CitzaG91bGROb3RUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IGxvY2FsZU1hdGNoZXI6J2xvb2t1cCcgfSkiKTsKK3Nob3VsZE5vdFRocm93KCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjonYmVzdCBmaXQnIH0pIik7CisKK3Nob3Vs
ZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjonYmFkJyB9
KSIsICdcJ1JhbmdlRXJyb3I6IGZvcm1hdE1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgImJhc2ljIiBv
ciAiYmVzdCBmaXQiXCcnKTsKK3Nob3VsZE5vdFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgZm9ybWF0TWF0Y2hlcjonYmFzaWMnIH0pIik7CitzaG91bGROb3RUaHJvdygiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2Jlc3QgZml0JyB9KSIpOworCisv
LyBHZXRzIGRlZmF1bHQgY2FsZW5kYXIgYW5kIG51bWJlcmluZ1N5c3RlbSBmcm9tIGxvY2FsZS4K
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9ucygp
LmxvY2FsZSIsICInYXItU0EnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnYXIt
c2EnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy11bWFscXVyYSciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9ucygp
Lm51bWJlcmluZ1N5c3RlbSIsICInYXJhYiciKTsKKworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyBjYWxlbmRhcjonZGFuZ2knIH0pLnJlc29sdmVkT3B0aW9ucygpLmNhbGVu
ZGFyIiwgIidncmVnb3JpYW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4nIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygp
LmNhbGVuZGFyIiwgIidncmVnb3JpYW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4tdS1jYS1idWRkaGlzdCcpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4tdS1j
YS1idWRkaGlzdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJ1
ZGRoaXN0JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2J1ZGRoaXN0JyIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtY2hpbmVzZScpLnJlc29sdmVkT3B0
aW9ucygpLmNhbGVuZGFyIiwgIidjaGluZXNlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtY2EtY29wdGljJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2Nv
cHRpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWRhbmdpJyku
cmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2RhbmdpJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9hYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVu
ZGFyIiwgIidldGhpb3BpYy1hbWV0ZS1hbGVtJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtY2EtZXRoaW9waWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICIn
ZXRoaW9waWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnYXItU0EtdS1jYS1n
cmVnb3J5JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2dyZWdvcmlhbiciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWhlYnJldycpLnJlc29sdmVkT3B0
aW9ucygpLmNhbGVuZGFyIiwgIidoZWJyZXcnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1jYS1pbmRpYW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaW5k
aWFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pYycp
LnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pY2MnKS5yZXNvbHZlZE9wdGlvbnMoKS5j
YWxlbmRhciIsICInaXNsYW1pYy1jaXZpbCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LWNhLUlTTzg2MDEnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNv
ODYwMSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWphcGFuZXNl
JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2phcGFuZXNlJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtcGVyc2lhbicpLnJlc29sdmVkT3B0aW9ucygp
LmNhbGVuZGFyIiwgIidwZXJzaWFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtY2Etcm9jJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ3JvYyciKTsKKy8v
IEZJWE1FOiBodHRwczovL2dpdGh1Yi5jb20vdGMzOS9lY21hNDAyL2lzc3Vlcy81OQorLy8gc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9waWMtYW1ldGUtYWxlbScp
LnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidldGhpb2FhJyIpOworLy8gc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pYy11bWFscXVyYScpLnJlc29sdmVk
T3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljLXVtYWxxdXJhJyIpOworLy8gc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pYy10YmxhJykucmVzb2x2ZWRPcHRp
b25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMtdGJsYSciKTsKKy8vIHNob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWMtY2l2aWwnKS5yZXNvbHZlZE9wdGlvbnMoKS5j
YWxlbmRhciIsICInaXNsYW1pYy1jaXZpbCciKTsKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LWNhLWlzbGFtaWMtcmdzYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFy
IiwgIidpc2xhbWljLXJnc2EnIik7CisKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgbnVtYmVyaW5nU3lzdGVtOidndWpyJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJp
bmdTeXN0ZW0iLCAiJ2xhdG4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4nIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygp
Lm51bWJlcmluZ1N5c3RlbSIsICInbGF0biciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LW51LWxhdG4nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAi
J2xhdG4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1hcmFiJyku
cmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIiwgIidlbi11LW51LWFyYWInIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1hcmFiJykucmVzb2x2ZWRPcHRpb25zKCkubnVt
YmVyaW5nU3lzdGVtIiwgIidhcmFiJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtbnUtYXJhYmV4dCcpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICIn
YXJhYmV4dCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWJhbGkn
KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2JhbGknIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1iZW5nJykucmVzb2x2ZWRPcHRpb25zKCku
bnVtYmVyaW5nU3lzdGVtIiwgIidiZW5nJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtbnUtZGV2YScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICIn
ZGV2YSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWZ1bGx3aWRl
JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidmdWxsd2lkZSciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWd1anInKS5yZXNvbHZlZE9wdGlv
bnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2d1anInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1udS1ndXJ1JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVt
IiwgIidndXJ1JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtaGFu
aWRlYycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInaGFuaWRlYyciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWtobXInKS5yZXNvbHZlZE9w
dGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2tobXInIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1udS1rbmRhJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lz
dGVtIiwgIidrbmRhJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
bGFvbycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInbGFvbyciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxpbWInKS5yZXNvbHZlZE9wdGlv
bnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xpbWInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1udS1tbHltJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVt
IiwgIidtbHltJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbW9u
ZycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInbW9uZyciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LW15bXInKS5yZXNvbHZlZE9wdGlvbnMo
KS5udW1iZXJpbmdTeXN0ZW0iLCAiJ215bXInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1udS1vcnlhJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwg
IidvcnlhJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGFtbGRl
YycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICIndGFtbGRlYyciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LXRlbHUnKS5yZXNvbHZlZE9wdGlv
bnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ3RlbHUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1udS10aGFpJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVt
IiwgIid0aGFpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGli
dCcpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICIndGlidCciKTsKKworc2hv
dWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5OidpbnZhbGlkJyB9
KSIsICdcJ1JhbmdlRXJyb3I6IHdlZWtkYXkgbXVzdCBiZSAibmFycm93IiwgInNob3J0Iiwgb3Ig
ImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRl
OicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSIs
ICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vl
a2RheTonbmFycm93JywgbW9udGg6J251bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLndlZWtkYXkiLCAiJ25hcnJvdyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgd2Vla2RheTonc2hvcnQnLCBtb250aDonbnVtZXJpYycsIGRheTonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSIsICInc2hvcnQnIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J2xvbmcnLCBtb250aDonbnVt
ZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSIsICInbG9u
ZyciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25l
dmVyJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGVyYSBtdXN0IGJlICJuYXJyb3ciLCAic2hvcnQiLCBv
ciAibG9uZyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51
dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAi
dW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTon
bmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgIiduYXJy
b3cnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonc2hvcnQn
LCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEiLCAiJ3Nob3J0JyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J2xvbmcnLCB5ZWFyOidu
dW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEiLCAiJ2xvbmcnIik7CisKK3Nob3VsZFRo
cm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgeWVhcjonbm9wZScgfSkiLCAnXCdSYW5n
ZUVycm9yOiB5ZWFyIG11c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmljIlwnJyk7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnllYXIiLCAidW5kZWZpbmVkIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjonMi1kaWdp
dCcgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciIsICInMi1kaWdpdCciKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduYXJyb3cnLCB5ZWFyOidudW1lcmljJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIiwgIidudW1lcmljJyIpOworCitzaG91bGRUaHJvdygi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOjIgfSkiLCAnXCdSYW5nZUVycm9yOiBt
b250aCBtdXN0IGJlICIyLWRpZ2l0IiwgIm51bWVyaWMiLCAibmFycm93IiwgInNob3J0Iiwgb3Ig
ImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRl
OicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAi
dW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRo
OicyLWRpZ2l0JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAi
JzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRo
OidudW1lcmljJywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAi
J251bWVyaWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRo
OiduYXJyb3cnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCIsICIn
bmFycm93JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDon
c2hvcnQnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCIsICInc2hv
cnQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidsb25n
JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAiJ2xvbmcnIik7
CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZGF5OicnIH0pIiwg
J1wnUmFuZ2VFcnJvcjogZGF5IG11c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmljIlwnJyk7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhv
dXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSIsICJ1bmRlZmluZWQiKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCBkYXk6JzIt
ZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSIsICInMi1kaWdpdCciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCBkYXk6J251bWVyaWMn
IH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSIsICInbnVtZXJpYyciKTsKKworc2hvdWxkVGhyb3co
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBob3VyOltdIH0pIiwgJ1wnUmFuZ2VFcnJvcjog
aG91ciBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuaG91ciIsICJ1bmRlZmluZWQi
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0
JywgaG91cjonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91ciIsICInbnVtZXJpYyci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0
JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91ciIsICInbnVtZXJpYyci
KTsKKworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25z
KCkuaG91cjEyIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS5ob3VyMTIiLCAidHJ1ZSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ3B0
LUJSJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS5ob3VyMTIiLCAiZmFsc2UiKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyBtaW51dGU6bnVsbCB9KSIsICdcJ1JhbmdlRXJyb3I6IG1pbnV0ZSBtdXN0IGJl
ICIyLWRpZ2l0IiBvciAibnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIiwgInVuZGVmaW5lZCIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidu
dW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiLCAiJzItZGlnaXQnIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonbnVtZXJpYycsIGhvdXI6
J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSIsICInMi1kaWdpdCciKTsKKwor
c2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBzZWNvbmQ6J2JhZHZhbHVl
JyB9KSIsICdcJ1JhbmdlRXJyb3I6IHNlY29uZCBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJp
YyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRp
b25zKCkuc2Vjb25kIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1lcmljJywgc2Vjb25kOicyLWRp
Z2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAiJzItZGlnaXQnIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonbnVtZXJpYycsIGhvdXI6J251
bWVyaWMnLCBzZWNvbmQ6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCIsICIn
Mi1kaWdpdCciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZU5hbWU6J25hbWUnIH0pIiwgJ1wnUmFuZ2VFcnJvcjogdGltZVpvbmVOYW1lIG11c3Qg
YmUgInNob3J0IiBvciAibG9uZyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJykucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIiwgInVuZGVmaW5lZCIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3Vy
OidudW1lcmljJywgdGltZVpvbmVOYW1lOidzaG9ydCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmVOYW1lIiwgIidzaG9ydCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdw
dC1CUicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycsIHRpbWVab25lTmFtZTon
bG9uZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIiwgIidsb25nJyIpOworCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>267497</attachid>
            <date>2015-12-16 15:16:46 -0800</date>
            <delta_ts>2015-12-16 18:05:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147603-20151216161607.patch</filename>
            <type>text/plain</type>
            <size>147992</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk0MTY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
ODFhNDVjNWNiYmNkMmJjZjc2MGQ5YmY3MGRhZTIzZmY2NGYzM2JmLi5kMDg1NTNiODM3MDhkY2U2
ZGRkNDVmMmI5ZDBmZGNjZDA0NzQxOGNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw3OSBAQAorMjAxNS0xNi0xMSAgQW5keSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVy
ZS5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQgYW5k
IHJlbGF0ZWQgYWJzdHJhY3Qgb3BlcmF0aW9ucy4KKyAgICAgICAgU3RvcmUgcmVzb2x2ZWQgb3B0
aW9ucyBhcyBlbnVtIHR5cGVzIHdoZXJlIHBvc3NpYmxlLgorICAgICAgICBVc2UgSUNVIGRhdGUg
cGF0dGVybiBnZW5lcmF0b3IgdG8gcmVzb2x2ZSBmb3JtYXR0aW5nIHN0eWxlcy4KKyAgICAgICAg
RGVmZXIgcGFydHMgb2YgSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0IHRoYXQgb25seSBhZmZlY3Qg
Zm9ybWF0KCkuCisKKyAgICAgICAgKiBpY3UvdW5pY29kZS91ZGF0cGcuaDogQWRkZWQuCisgICAg
ICAgICogcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oOgorICAgICAgICAqIHJ1bnRpbWUvSW50
bERhdGVUaW1lRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6ZGVmYXVsdFRpbWVab25lKToKKyAg
ICAgICAgKEpTQzo6Y2Fub25pY2FsaXplVGltZVpvbmVOYW1lKToKKyAgICAgICAgKEpTQzo6bG9j
YWxlRGF0YSk6CisgICAgICAgIChKU0M6OnN0cmluZ1RvQ2FsZW5kYXJUeXBlKToKKyAgICAgICAg
KEpTQzo6dG9EYXRlVGltZU9wdGlvbnMpOgorICAgICAgICAoSlNDOjpzZXRGb3JtYXRzRnJvbVBh
dHRlcm4pOgorICAgICAgICAoSlNDOjppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQpOgorICAgICAg
ICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUpOgorICAgICAgICAq
IHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Lmg6CisgICAgICAgIChKU0M6OkludGxEYXRlVGlt
ZUZvcm1hdDo6aW5pdGlhbGl6ZWRJbnRsT2JqZWN0KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVU
aW1lRm9ybWF0OjpzZXRJbml0aWFsaXplZEludGxPYmplY3QpOgorICAgICAgICAoSlNDOjpJbnRs
RGF0ZVRpbWVGb3JtYXQ6OmluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQpOgorICAgICAgICAoSlND
OjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQpOgorICAg
ICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmxvY2FsZSk6CisgICAgICAgIChKU0M6Oklu
dGxEYXRlVGltZUZvcm1hdDo6c2V0TG9jYWxlKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1l
Rm9ybWF0OjpjYWxlbmRhcik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0
Q2FsZW5kYXIpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6Om51bWJlcmluZ1N5
c3RlbSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0TnVtYmVyaW5nU3lz
dGVtKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojp0aW1lWm9uZSk6CisgICAg
ICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0VGltZVpvbmUpOgorICAgICAgICAoSlND
OjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmhvdXIxMik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGlt
ZUZvcm1hdDo6c2V0SG91cjEyKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojp3
ZWVrZGF5KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRXZWVrZGF5KToK
KyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjplcmEpOgorICAgICAgICAoSlNDOjpJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEVyYSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZv
cm1hdDo6eWVhcik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0WWVhcik6
CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6bW9udGgpOgorICAgICAgICAoSlND
OjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldE1vbnRoKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVU
aW1lRm9ybWF0OjpkYXkpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldERh
eSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6aG91cik6CisgICAgICAgIChK
U0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0SG91cik6CisgICAgICAgIChKU0M6OkludGxEYXRl
VGltZUZvcm1hdDo6bWludXRlKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojpz
ZXRNaW51dGUpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNlY29uZCk6Cisg
ICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0U2Vjb25kKToKKyAgICAgICAgKEpT
Qzo6SW50bERhdGVUaW1lRm9ybWF0Ojp0aW1lWm9uZU5hbWUpOgorICAgICAgICAoSlNDOjpJbnRs
RGF0ZVRpbWVGb3JtYXQ6OnNldFRpbWVab25lTmFtZSk6CisgICAgICAgICogcnVudGltZS9JbnRs
RGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdElu
dGxEYXRlVGltZUZvcm1hdCk6CisgICAgICAgIChKU0M6OmNhbGxJbnRsRGF0ZVRpbWVGb3JtYXQp
OgorICAgICAgICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbik6
CisgICAgICAgIChKU0M6OmNhbGVuZGFyVHlwZVRvU3RyaW5nKToKKyAgICAgICAgKEpTQzo6d2Vl
a2RheVN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjplcmFTdHlsZVRvU3RyaW5nKToKKyAg
ICAgICAgKEpTQzo6eWVhclN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjptb250aFN0eWxl
VG9TdHJpbmcpOgorICAgICAgICAoSlNDOjpkYXlTdHlsZVRvU3RyaW5nKToKKyAgICAgICAgKEpT
Qzo6aG91clN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjptaW51dGVTdHlsZVRvU3RyaW5n
KToKKyAgICAgICAgKEpTQzo6c2Vjb25kU3R5bGVUb1N0cmluZyk6CisgICAgICAgIChKU0M6OnRp
bWVab25lTmFtZVN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKToKKyAgICAgICAgKiBydW50aW1lL0ludGxP
YmplY3QuY3BwOgorICAgICAgICAoSlNDOjpyZXNvbHZlTG9jYWxlKToKKwogMjAxNS0xMi0xNiAg
RmlsaXAgUGl6bG8gIDxmcGl6bG9AYXBwbGUuY29tPgogCiAgICAgICAgIFdvcmsgYXJvdW5kIGEg
YnVnIGluIExMVk0gYnkgZmxpcHBpbmcgdGhlIHVuaWZpY2F0aW9uIG9yZGVyCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRhdHBnLmggYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRhdHBnLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2RjN2U4OWYyZGZi
NjQwMjIwZjM1NzA4ODM1OGI2ZDljNTc4ZWIwZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9pY3UvdW5pY29kZS91ZGF0cGcuaApAQCAtMCwwICsxLDU4NiBAQAorLyoK
KyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioKKyoKKyogICBDb3B5cmlnaHQgKEMpIDIwMDctMjAxMCwg
SW50ZXJuYXRpb25hbCBCdXNpbmVzcyBNYWNoaW5lcworKiAgIENvcnBvcmF0aW9uIGFuZCBvdGhl
cnMuICBBbGwgUmlnaHRzIFJlc2VydmVkLgorKgorKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorKiAg
IGZpbGUgbmFtZTogIHVkYXRwZy5oCisqICAgZW5jb2Rpbmc6ICAgVVMtQVNDSUkKKyogICB0YWIg
c2l6ZTogICA4IChub3QgdXNlZCkKKyogICBpbmRlbnRhdGlvbjo0CisqCisqICAgY3JlYXRlZCBv
bjogMjAwN2p1bDMwCisqICAgY3JlYXRlZCBieTogTWFya3VzIFcuIFNjaGVyZXIKKyovCisKKyNp
Zm5kZWYgX19VREFUUEdfSF9fCisjZGVmaW5lIF9fVURBVFBHX0hfXworCisjaW5jbHVkZSAidW5p
Y29kZS91dHlwZXMuaCIKKyNpbmNsdWRlICJ1bmljb2RlL3VlbnVtLmgiCisjaW5jbHVkZSAidW5p
Y29kZS9sb2NhbHBvaW50ZXIuaCIKKworLyoqCisgKiBcZmlsZQorICogXGJyaWVmIEMgQVBJOiBX
cmFwcGVyIGZvciBEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKHVuaWNvZGUvZHRwdG5nZW4uaCku
CisgKgorICogVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciBwcm92aWRlcyBmbGV4aWJsZSBnZW5l
cmF0aW9uIG9mIGRhdGUgZm9ybWF0IHBhdHRlcm5zLCAKKyAqIGxpa2UgInl5LU1NLWRkIi4gVGhl
IHVzZXIgY2FuIGJ1aWxkIHVwIHRoZSBnZW5lcmF0b3IgYnkgYWRkaW5nIHN1Y2Nlc3NpdmUgCisg
KiBwYXR0ZXJucy4gT25jZSB0aGF0IGlzIGRvbmUsIGEgcXVlcnkgY2FuIGJlIG1hZGUgdXNpbmcg
YSAic2tlbGV0b24iLCB3aGljaCBpcyAKKyAqIGEgcGF0dGVybiB3aGljaCBqdXN0IGluY2x1ZGVz
IHRoZSBkZXNpcmVkIGZpZWxkcyBhbmQgbGVuZ3Rocy4gVGhlIGdlbmVyYXRvciAKKyAqIHdpbGwg
cmV0dXJuIHRoZSAiYmVzdCBmaXQiIHBhdHRlcm4gY29ycmVzcG9uZGluZyB0byB0aGF0IHNrZWxl
dG9uLgorICogPHA+VGhlIG1haW4gbWV0aG9kIHBlb3BsZSB3aWxsIHVzZSBpcyB1ZGF0cGdfZ2V0
QmVzdFBhdHRlcm4sIHNpbmNlIG5vcm1hbGx5CisgKiBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9y
IGlzIHByZS1idWlsdCB3aXRoIGRhdGEgZnJvbSBhIHBhcnRpY3VsYXIgbG9jYWxlLiAKKyAqIEhv
d2V2ZXIsIGdlbmVyYXRvcnMgY2FuIGJlIGJ1aWx0IGRpcmVjdGx5IGZyb20gb3RoZXIgZGF0YSBh
cyB3ZWxsLgorICogPHA+PGk+SXNzdWU6IG1heSBiZSB1c2VmdWwgdG8gYWxzbyBoYXZlIGEgZnVu
Y3Rpb24gdGhhdCByZXR1cm5zIHRoZSBsaXN0IG9mIAorICogZmllbGRzIGluIGEgcGF0dGVybiwg
aW4gb3JkZXIsIHNpbmNlIHdlIGhhdmUgdGhhdCBpbnRlcm5hbGx5LgorICogVGhhdCB3b3VsZCBi
ZSB1c2VmdWwgZm9yIGdldHRpbmcgdGhlIFVJIG9yZGVyIG9mIGZpZWxkIGVsZW1lbnRzLjwvaT4K
KyAqLworCisvKioKKyAqIE9wYXF1ZSB0eXBlIGZvciBhIGRhdGUvdGltZSBwYXR0ZXJuIGdlbmVy
YXRvciBvYmplY3QuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLwordHlwZWRlZiB2b2lkICpVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOworCisvKioKKyAqIEZpZWxkIG51bWJlciBjb25zdGFudHMg
Zm9yIHVkYXRwZ19nZXRBcHBlbmRJdGVtRm9ybWF0cygpIGFuZCBzaW1pbGFyIGZ1bmN0aW9ucy4K
KyAqIFRoZXNlIGNvbnN0YW50cyBhcmUgc2VwYXJhdGUgZnJvbSBVRGF0ZUZvcm1hdEZpZWxkIGRl
c3BpdGUgc2VtYW50aWMgb3ZlcmxhcAorICogYmVjYXVzZSBzb21lIGZpZWxkcyBhcmUgbWVyZ2Vk
IGZvciB0aGUgZGF0ZS90aW1lIHBhdHRlcm4gZ2VuZXJhdG9yLgorICogQHN0YWJsZSBJQ1UgMy44
CisgKi8KK3R5cGVkZWYgZW51bSBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQgeworICAgIC8qKiBAc3Rh
YmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfRVJBX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElD
VSAzLjggKi8KKyAgICBVREFUUEdfWUVBUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44
ICovCisgICAgVURBVFBHX1FVQVJURVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAq
LworICAgIFVEQVRQR19NT05USF9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisg
ICAgVURBVFBHX1dFRUtfT0ZfWUVBUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICov
CisgICAgVURBVFBHX1dFRUtfT0ZfTU9OVEhfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19XRUVLREFZX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjgg
Ki8KKyAgICBVREFUUEdfREFZX09GX1lFQVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19EQVlfT0ZfV0VFS19JTl9NT05USF9GSUVMRCwKKyAgICAvKiogQHN0
YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0RBWV9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJ
Q1UgMy44ICovCisgICAgVURBVFBHX0RBWVBFUklPRF9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJ
Q1UgMy44ICovCisgICAgVURBVFBHX0hPVVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19NSU5VVEVfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAq
LworICAgIFVEQVRQR19TRUNPTkRfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLwor
ICAgIFVEQVRQR19GUkFDVElPTkFMX1NFQ09ORF9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1Ug
My44ICovCisgICAgVURBVFBHX1pPTkVfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAq
LworICAgIFVEQVRQR19GSUVMRF9DT1VOVAorfSBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQ7CisKKy8q
KgorICogTWFza3MgdG8gY29udHJvbCBmb3JjaW5nIHRoZSBsZW5ndGggb2Ygc3BlY2lmaWVkIGZp
ZWxkcyBpbiB0aGUgcmV0dXJuZWQKKyAqIHBhdHRlcm4gdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNr
ZWxldG9uICh3aGVuIHRoaXMgd291bGQgbm90IGhhcHBlbgorICogb3RoZXJ3aXNlKS4gVGhlc2Ug
bWF5IGJlIGNvbWJpbmVkIHRvIGZvcmNlIHRoZSBsZW5ndGggb2YgbXVsdGlwbGUgZmllbGRzLgor
ICogVXNlZCB3aXRoIHVkYXRwZ19nZXRCZXN0UGF0dGVybldpdGhPcHRpb25zLCB1ZGF0cGdfcmVw
bGFjZUZpZWxkVHlwZXNXaXRoT3B0aW9ucy4KKyAqIEBzdGFibGUgSUNVIDQuNAorICovCit0eXBl
ZGVmIGVudW0gVURhdGVUaW1lUGF0dGVybk1hdGNoT3B0aW9ucyB7CisgICAgLyoqIEBzdGFibGUg
SUNVIDQuNCAqLworICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TID0gMCwKKyAgICAvKiogQHN0
YWJsZSBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX0hPVVJfRklFTERfTEVOR1RIID0gMSA8
PCBVREFUUEdfSE9VUl9GSUVMRCwKKyAgICAvKiogQGludGVybmFsIElDVSA0LjQgKi8KKyAgICBV
REFUUEdfTUFUQ0hfTUlOVVRFX0ZJRUxEX0xFTkdUSCA9IDEgPDwgVURBVFBHX01JTlVURV9GSUVM
RCwKKyAgICAvKiogQGludGVybmFsIElDVSA0LjQgKi8KKyAgICBVREFUUEdfTUFUQ0hfU0VDT05E
X0ZJRUxEX0xFTkdUSCA9IDEgPDwgVURBVFBHX1NFQ09ORF9GSUVMRCwKKyAgICAvKiogQHN0YWJs
ZSBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX0FMTF9GSUVMRFNfTEVOR1RIID0gKDEgPDwg
VURBVFBHX0ZJRUxEX0NPVU5UKSAtIDEKK30gVURhdGVUaW1lUGF0dGVybk1hdGNoT3B0aW9uczsK
KworLyoqCisgKiBTdGF0dXMgcmV0dXJuIHZhbHVlcyBmcm9tIHVkYXRwZ19hZGRQYXR0ZXJuKCku
CisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLwordHlwZWRlZiBlbnVtIFVEYXRlVGltZVBhdHRlcm5D
b25mbGljdCB7CisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19OT19DT05G
TElDVCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0JBU0VfQ09ORkxJ
Q1QsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19DT05GTElDVCwKKyAg
ICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0NPTkZMSUNUX0NPVU5UCit9IFVE
YXRlVGltZVBhdHRlcm5Db25mbGljdDsKKworLyoqCisgICogT3BlbiBhIGdlbmVyYXRvciBhY2Nv
cmRpbmcgdG8gYSBnaXZlbiBsb2NhbGUuCisgICogQHBhcmFtIGxvY2FsZQorICAqIEBwYXJhbSBw
RXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRp
Y2F0ZSBhCisgICogICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9u
IGNhbGwuCisgICogQHJldHVybiBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ci4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIFVEYXRlVGltZVBhdHRlcm5H
ZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVuKGNvbnN0IGNoYXIgKmxvY2FsZSwgVUVy
cm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIE9wZW4gYW4gZW1wdHkgZ2VuZXJhdG9y
LCB0byBiZSBjb25zdHJ1Y3RlZCB3aXRoIHVkYXRwZ19hZGRQYXR0ZXJuKC4uLikgZXRjLgorICAq
IEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0
IG5vdCBpbmRpY2F0ZSBhCisgICogICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhl
IGZ1bmN0aW9uIGNhbGwuCisgICogQHJldHVybiBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVy
bkdlbmVyYXRvci4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIFVEYXRlVGlt
ZVBhdHRlcm5HZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVuRW1wdHkoVUVycm9yQ29k
ZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIENsb3NlIGEgZ2VuZXJhdG9yLgorICAqIEBwYXJh
bSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBzdGFi
bGUgSUNVIDMuOAorICAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19jbG9zZShV
RGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnKTsKKworI2lmIFVfU0hPV19DUExVU1BMVVNf
QVBJCisKK1VfTkFNRVNQQUNFX0JFR0lOCisKKy8qKgorICogXGNsYXNzIExvY2FsVURhdGVUaW1l
UGF0dGVybkdlbmVyYXRvclBvaW50ZXIKKyAqICJTbWFydCBwb2ludGVyIiBjbGFzcywgY2xvc2Vz
IGEgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciB2aWEgdWRhdHBnX2Nsb3NlKCkuCisgKiBGb3Ig
bW9zdCBtZXRob2RzIHNlZSB0aGUgTG9jYWxQb2ludGVyQmFzZSBiYXNlIGNsYXNzLgorICoKKyAq
IEBzZWUgTG9jYWxQb2ludGVyQmFzZQorICogQHNlZSBMb2NhbFBvaW50ZXIKKyAqIEBzdGFibGUg
SUNVIDQuNAorICovCitVX0RFRklORV9MT0NBTF9PUEVOX1BPSU5URVIoTG9jYWxVRGF0ZVRpbWVQ
YXR0ZXJuR2VuZXJhdG9yUG9pbnRlciwgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciwgdWRhdHBn
X2Nsb3NlKTsKKworVV9OQU1FU1BBQ0VfRU5ECisKKyNlbmRpZgorCisvKioKKyAgKiBDcmVhdGUg
YSBjb3B5IHBmIGEgZ2VuZXJhdG9yLgorICAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yIHRvIGJlIGNvcGllZC4KKyAgKiBAcGFyYW0gcEVycm9yQ29k
ZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQor
ICAqICAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgor
ICAqIEByZXR1cm4gYSBwb2ludGVyIHRvIGEgbmV3IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3Iu
CisgICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19jbG9uZShjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2Vu
ZXJhdG9yICpkdHBnLCBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBHZXQgdGhl
IGJlc3QgcGF0dGVybiBtYXRjaGluZyB0aGUgaW5wdXQgc2tlbGV0b24uIEl0IGlzIGd1YXJhbnRl
ZWQgdG8KKyAqIGhhdmUgYWxsIG9mIHRoZSBmaWVsZHMgaW4gdGhlIHNrZWxldG9uLgorICogCisg
KiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2gg
aXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhhbiBjcmVh
dGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNhbGxzIHRv
IHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRoaXMgZnVu
Y3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBv
YmplY3QuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yLgorICogQHBhcmFtIHNrZWxldG9uCisgKiAgICAgICAgICAgIFRoZSBza2VsZXRv
biBpcyBhIHBhdHRlcm4gY29udGFpbmluZyBvbmx5IHRoZSB2YXJpYWJsZSBmaWVsZHMuCisgKiAg
ICAgICAgICAgIEZvciBleGFtcGxlLCAiTU1NZGQiIGFuZCAibW1oaCIgYXJlIHNrZWxldG9ucy4K
KyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBza2VsZXRvbgorICogQHBhcmFtIGJlc3RQ
YXR0ZXJuCisgKiAgICAgICAgICAgIFRoZSBiZXN0IHBhdHRlcm4gZm91bmQgZnJvbSB0aGUgZ2l2
ZW4gc2tlbGV0b24uCisgKiBAcGFyYW0gY2FwYWNpdHkgdGhlIGNhcGFjaXR5IG9mIGJlc3RQYXR0
ZXJuLgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdo
aWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVm
b3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGJlc3RQYXR0
ZXJuLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQy
Cit1ZGF0cGdfZ2V0QmVzdFBhdHRlcm4oVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywK
KyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMyX3QgbGVu
Z3RoLAorICAgICAgICAgICAgICAgICAgICAgIFVDaGFyICpiZXN0UGF0dGVybiwgaW50MzJfdCBj
YXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsK
KworLyoqCisgKiBHZXQgdGhlIGJlc3QgcGF0dGVybiBtYXRjaGluZyB0aGUgaW5wdXQgc2tlbGV0
b24uIEl0IGlzIGd1YXJhbnRlZWQgdG8KKyAqIGhhdmUgYWxsIG9mIHRoZSBmaWVsZHMgaW4gdGhl
IHNrZWxldG9uLgorICogCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNv
bnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0
dGVybiBwYXJzZXIgd2hpY2ggaXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisg
KiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENv
bnNlY3V0aXZlIGNhbGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVy
LAorICogYnV0IHRoaXMgZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEg
c2luZ2xlIGdlbmVyYXRvciBvYmplY3QuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0
byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHNrZWxldG9uCisgKiAgICAg
ICAgICAgIFRoZSBza2VsZXRvbiBpcyBhIHBhdHRlcm4gY29udGFpbmluZyBvbmx5IHRoZSB2YXJp
YWJsZSBmaWVsZHMuCisgKiAgICAgICAgICAgIEZvciBleGFtcGxlLCAiTU1NZGQiIGFuZCAibW1o
aCIgYXJlIHNrZWxldG9ucy4KKyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBza2VsZXRv
bgorICogQHBhcmFtIG9wdGlvbnMKKyAqICAgICAgICAgICAgT3B0aW9ucyBmb3IgZm9yY2luZyB0
aGUgbGVuZ3RoIG9mIHNwZWNpZmllZCBmaWVsZHMgaW4gdGhlCisgKiAgICAgICAgICAgIHJldHVy
bmVkIHBhdHRlcm4gdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNrZWxldG9uICh3aGVuIHRoaXMKKyAq
ICAgICAgICAgICAgd291bGQgbm90IGhhcHBlbiBvdGhlcndpc2UpLiBGb3IgZGVmYXVsdCBiZWhh
dmlvciwgdXNlCisgKiAgICAgICAgICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TLgorICogQHBh
cmFtIGJlc3RQYXR0ZXJuCisgKiAgICAgICAgICAgIFRoZSBiZXN0IHBhdHRlcm4gZm91bmQgZnJv
bSB0aGUgZ2l2ZW4gc2tlbGV0b24uCisgKiBAcGFyYW0gY2FwYWNpdHkKKyAqICAgICAgICAgICAg
dGhlIGNhcGFjaXR5IG9mIGJlc3RQYXR0ZXJuLgorICogQHBhcmFtIHBFcnJvckNvZGUKKyAqICAg
ICAgICAgICAgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGlj
YXRlIGEKKyAqICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisg
KiBAcmV0dXJuIHRoZSBsZW5ndGggb2YgYmVzdFBhdHRlcm4uCisgKiBAc3RhYmxlIElDVSA0LjQK
KyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3VkYXRwZ19nZXRCZXN0UGF0dGVybldp
dGhPcHRpb25zKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMyX3QgbGVuZ3Ro
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVybk1hdGNo
T3B0aW9ucyBvcHRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVUNoYXIg
KmJlc3RQYXR0ZXJuLCBpbnQzMl90IGNhcGFjaXR5LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIEdldCBhIHVuaXF1
ZSBza2VsZXRvbiBmcm9tIGEgZ2l2ZW4gcGF0dGVybi4gRm9yIGV4YW1wbGUsCisgICogYm90aCAi
TU1NLWRkIiBhbmQgImRkL01NTSIgcHJvZHVjZSB0aGUgc2tlbGV0b24gIk1NTWRkIi4KKyAgKiAK
KyAgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBh
dHRlcm5HZW5lcmF0b3I6CisgICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdo
aWNoIGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICAqIHJhdGhlciB0aGFu
IGNyZWF0aW5nIG9uZSBmb3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICAqIENvbnNlY3V0aXZlIGNh
bGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICAqIGJ1dCB0
aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmdsZSBnZW5l
cmF0b3Igb2JqZWN0LgorICAqCisgICogQHBhcmFtIGR0cGcgICAgIGEgcG9pbnRlciB0byBVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBwYXJhbSBwYXR0ZXJuICBpbnB1dCBwYXR0ZXJu
LCBzdWNoIGFzICJkZC9NTU0iLgorICAqIEBwYXJhbSBsZW5ndGggICB0aGUgbGVuZ3RoIG9mIHBh
dHRlcm4uCisgICogQHBhcmFtIHNrZWxldG9uIHN1Y2ggYXMgIk1NTWRkIgorICAqIEBwYXJhbSBj
YXBhY2l0eSB0aGUgY2FwYWNpdHkgb2Ygc2tlbGV0b24uCisgICogQHBhcmFtIHBFcnJvckNvZGUg
YSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAg
KiAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICAq
IEByZXR1cm4gdGhlIGxlbmd0aCBvZiBza2VsZXRvbi4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAg
Ki8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQyCit1ZGF0cGdfZ2V0U2tlbGV0b24oVURhdGVU
aW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hh
ciAqcGF0dGVybiwgaW50MzJfdCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgVUNoYXIgKnNr
ZWxldG9uLCBpbnQzMl90IGNhcGFjaXR5LAorICAgICAgICAgICAgICAgICAgIFVFcnJvckNvZGUg
KnBFcnJvckNvZGUpOworCisvKioKKyAqIEdldCBhIHVuaXF1ZSBiYXNlIHNrZWxldG9uIGZyb20g
YSBnaXZlbiBwYXR0ZXJuLiBUaGlzIGlzIHRoZSBzYW1lCisgKiBhcyB0aGUgc2tlbGV0b24sIGV4
Y2VwdCB0aGF0IGRpZmZlcmVuY2VzIGluIGxlbmd0aCBhcmUgbWluaW1pemVkIHNvCisgKiBhcyB0
byBvbmx5IHByZXNlcnZlIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gc3RyaW5nIGFuZCBudW1lcmlj
IGZvcm0uIFNvCisgKiBmb3IgZXhhbXBsZSwgYm90aCAiTU1NLWRkIiBhbmQgImQvTU1NIiBwcm9k
dWNlIHRoZSBza2VsZXRvbiAiTU1NZCIKKyAqIChub3RpY2UgdGhlIHNpbmdsZSBkKS4KKyAqCisg
KiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2gg
aXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhhbiBjcmVh
dGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNhbGxzIHRv
IHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRoaXMgZnVu
Y3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBv
YmplY3QuCisgKgorICogQHBhcmFtIGR0cGcgICAgIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0
ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBhdHRlcm4gIGlucHV0IHBhdHRlcm4sIHN1Y2ggYXMg
ImRkL01NTSIuCisgKiBAcGFyYW0gbGVuZ3RoICAgdGhlIGxlbmd0aCBvZiBwYXR0ZXJuLgorICog
QHBhcmFtIGJhc2VTa2VsZXRvbiBzdWNoIGFzICJNZCIKKyAqIEBwYXJhbSBjYXBhY2l0eSB0aGUg
Y2FwYWNpdHkgb2YgYmFzZSBza2VsZXRvbi4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRl
ciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAg
ICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0
aGUgbGVuZ3RoIG9mIGJhc2VTa2VsZXRvbi4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NU
QUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRhdHBnX2dldEJhc2VTa2VsZXRvbihVRGF0ZVRpbWVQ
YXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hh
ciAqcGF0dGVybiwgaW50MzJfdCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgIFVDaGFy
ICpiYXNlU2tlbGV0b24sIGludDMyX3QgY2FwYWNpdHksCisgICAgICAgICAgICAgICAgICAgICAg
IFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEFkZHMgYSBwYXR0ZXJuIHRvIHRo
ZSBnZW5lcmF0b3IuIElmIHRoZSBwYXR0ZXJuIGhhcyB0aGUgc2FtZSBza2VsZXRvbiBhcworICog
YW4gZXhpc3RpbmcgcGF0dGVybiwgYW5kIHRoZSBvdmVycmlkZSBwYXJhbWV0ZXIgaXMgc2V0LCB0
aGVuIHRoZSBwcmV2aW91cworICogdmFsdWUgaXMgb3ZlcnJpZGVuLiBPdGhlcndpc2UsIHRoZSBw
cmV2aW91cyB2YWx1ZSBpcyByZXRhaW5lZC4gSW4gZWl0aGVyCisgKiBjYXNlLCB0aGUgY29uZmxp
Y3Rpbmcgc3RhdHVzIGlzIHNldCBhbmQgcHJldmlvdXMgdmFsZSBpcyBzdG9yZWQgaW4gCisgKiBj
b25mbGljdGluZyBwYXR0ZXJuLgorICogPHA+CisgKiBOb3RlIHRoYXQgc2luZ2xlLWZpZWxkIHBh
dHRlcm5zIChsaWtlICJNTU0iKSBhcmUgYXV0b21hdGljYWxseSBhZGRlZCwgYW5kCisgKiBkb24n
dCBuZWVkIHRvIGJlIGFkZGVkIGV4cGxpY2l0bHkhCisgKgorICogQHBhcmFtIGR0cGcgICAgIGEg
cG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBhdHRlcm4g
IGlucHV0IHBhdHRlcm4sIHN1Y2ggYXMgImRkL01NTSIKKyAqIEBwYXJhbSBwYXR0ZXJuTGVuZ3Ro
IHRoZSBsZW5ndGggb2YgcGF0dGVybi4KKyAqIEBwYXJhbSBvdmVycmlkZSAgV2hlbiBleGlzdGlu
ZyB2YWx1ZXMgYXJlIHRvIGJlIG92ZXJyaWRkZW4gdXNlIHRydWUsIAorICogICAgICAgICAgICAg
ICAgICBvdGhlcndpc2UgdXNlIGZhbHNlLgorICogQHBhcmFtIGNvbmZsaWN0aW5nUGF0dGVybiAg
UHJldmlvdXMgcGF0dGVybiB3aXRoIHRoZSBzYW1lIHNrZWxldG9uLgorICogQHBhcmFtIGNhcGFj
aXR5IHRoZSBjYXBhY2l0eSBvZiBjb25mbGljdGluZ1BhdHRlcm4uCisgKiBAcGFyYW0gcExlbmd0
aCBhIHBvaW50ZXIgdG8gdGhlIGxlbmd0aCBvZiBjb25mbGljdGluZ1BhdHRlcm4uCisgKiBAcGFy
YW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3Qg
aW5kaWNhdGUgYQorICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rp
b24gY2FsbC4KKyAqIEByZXR1cm4gY29uZmxpY3Rpbmcgc3RhdHVzLiBUaGUgdmFsdWUgY291bGQg
YmUgVURBVFBHX05PX0NPTkZMSUNULCAKKyAqICAgICAgICAgICAgICAgICAgVURBVFBHX0JBU0Vf
Q09ORkxJQ1Qgb3IgVURBVFBHX0NPTkZMSUNULgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1Vf
U1RBQkxFIFVEYXRlVGltZVBhdHRlcm5Db25mbGljdCBVX0VYUE9SVDIKK3VkYXRwZ19hZGRQYXR0
ZXJuKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICBj
b25zdCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBwYXR0ZXJuTGVuZ3RoLAorICAgICAgICAgICAg
ICAgICAgVUJvb2wgb3ZlcnJpZGUsCisgICAgICAgICAgICAgICAgICBVQ2hhciAqY29uZmxpY3Rp
bmdQYXR0ZXJuLCBpbnQzMl90IGNhcGFjaXR5LCBpbnQzMl90ICpwTGVuZ3RoLAorICAgICAgICAg
ICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIEFuIEFwcGVuZEl0
ZW0gZm9ybWF0IGlzIGEgcGF0dGVybiB1c2VkIHRvIGFwcGVuZCBhIGZpZWxkIGlmIHRoZXJlIGlz
IG5vCisgICogZ29vZCBtYXRjaC4gRm9yIGV4YW1wbGUsIHN1cHBvc2UgdGhhdCB0aGUgaW5wdXQg
c2tlbGV0b24gaXMgIkd5eXl5TU1NZCIsCisgICogYW5kIHRoZXJlIGlzIG5vIG1hdGNoaW5nIHBh
dHRlcm4gaW50ZXJuYWxseSwgYnV0IHRoZXJlIGlzIGEgcGF0dGVybgorICAqIG1hdGNoaW5nICJ5
eXl5TU1NZCIsIHNheSAiZC1NTS15eXl5Ii4gVGhlbiB0aGF0IHBhdHRlcm4gaXMgdXNlZCwgcGx1
cyB0aGUKKyAgKiBHLiBUaGUgd2F5IHRoZXNlIHR3byBhcmUgY29uam9pbmVkIGlzIGJ5IHVzaW5n
IHRoZSBBcHBlbmRJdGVtRm9ybWF0IGZvciBHCisgICogKGVyYSkuIFNvIGlmIHRoYXQgdmFsdWUg
aXMsIHNheSAiezB9LCB7MX0iIHRoZW4gdGhlIGZpbmFsIHJlc3VsdGluZworICAqIHBhdHRlcm4g
aXMgImQtTU0teXl5eSwgRyIuCisgICogPHA+CisgICogVGhlcmUgYXJlIGFjdHVhbGx5IHRocmVl
IGF2YWlsYWJsZSB2YXJpYWJsZXM6IHswfSBpcyB0aGUgcGF0dGVybiBzbyBmYXIsCisgICogezF9
IGlzIHRoZSBlbGVtZW50IHdlIGFyZSBhZGRpbmcsIGFuZCB7Mn0gaXMgdGhlIG5hbWUgb2YgdGhl
IGVsZW1lbnQuCisgICogPHA+CisgICogVGhpcyByZWZsZWN0cyB0aGUgd2F5IHRoYXQgdGhlIENM
RFIgZGF0YSBpcyBvcmdhbml6ZWQuCisgICoKKyAgKiBAcGFyYW0gZHRwZyAgIGEgcG9pbnRlciB0
byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBwYXJhbSBmaWVsZCAgVURhdGVUaW1l
UGF0dGVybkZpZWxkLCBzdWNoIGFzIFVEQVRQR19FUkFfRklFTEQKKyAgKiBAcGFyYW0gdmFsdWUg
IHBhdHRlcm4sIHN1Y2ggYXMgInswfSwgezF9IgorICAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0
aCBvZiB2YWx1ZS4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIHZvaWQgVV9F
WFBPUlQyCit1ZGF0cGdfc2V0QXBwZW5kSXRlbUZvcm1hdChVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVybkZp
ZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnZhbHVl
LCBpbnQzMl90IGxlbmd0aCk7CisKKy8qKgorICogR2V0dGVyIGNvcnJlc3BvbmRpbmcgdG8gc2V0
QXBwZW5kSXRlbUZvcm1hdC4gVmFsdWVzIGJlbG93IDAgb3IgYXQgb3IKKyAqIGFib3ZlIFVEQVRQ
R19GSUVMRF9DT1VOVCBhcmUgaWxsZWdhbCBhcmd1bWVudHMuCisgKgorICogQHBhcmFtIGR0cGcg
ICBBIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBmaWVs
ZCAgVURhdGVUaW1lUGF0dGVybkZpZWxkLCBzdWNoIGFzIFVEQVRQR19FUkFfRklFTEQKKyAqIEBw
YXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwgcmVjZWl2ZSB0aGUgbGVuZ3RoIG9mIGFw
cGVuZEl0ZW1Gb3JtYXQuCisgKiBAcmV0dXJuIGFwcGVuZEl0ZW1Gb3JtYXQgZm9yIGZpZWxkLgor
ICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9FWFBPUlQy
Cit1ZGF0cGdfZ2V0QXBwZW5kSXRlbUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVybkZp
ZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MzJfdCAqcExlbmd0aCk7
CisKKy8qKgorICAgKiBTZXQgdGhlIG5hbWUgb2YgZmllbGQsIGVnICJlcmEiIGluIEVuZ2xpc2gg
Zm9yIEVSQS4gVGhlc2UgYXJlIG9ubHkKKyAgICogdXNlZCBpZiB0aGUgY29ycmVzcG9uZGluZyBB
cHBlbmRJdGVtRm9ybWF0IGlzIHVzZWQsIGFuZCBpZiBpdCBjb250YWlucyBhCisgICAqIHsyfSB2
YXJpYWJsZS4KKyAgICogPHA+CisgICAqIFRoaXMgcmVmbGVjdHMgdGhlIHdheSB0aGF0IHRoZSBD
TERSIGRhdGEgaXMgb3JnYW5pemVkLgorICAgKgorICAgKiBAcGFyYW0gZHRwZyAgIGEgcG9pbnRl
ciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAgKiBAcGFyYW0gZmllbGQgIFVEYXRl
VGltZVBhdHRlcm5GaWVsZAorICAgKiBAcGFyYW0gdmFsdWUgIG5hbWUgZm9yIHRoZSBmaWVsZC4K
KyAgICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIHZhbHVlLgorICAgKiBAc3RhYmxlIElD
VSAzLjgKKyAgICovCitVX1NUQUJMRSB2b2lkIFVfRVhQT1JUMgordWRhdHBnX3NldEFwcGVuZEl0
ZW1OYW1lKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgVURhdGVUaW1lUGF0dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IFVDaGFyICp2YWx1ZSwgaW50MzJfdCBsZW5ndGgpOworCisvKioKKyAqIEdl
dHRlciBjb3JyZXNwb25kaW5nIHRvIHNldEFwcGVuZEl0ZW1OYW1lcy4gVmFsdWVzIGJlbG93IDAg
b3IgYXQgb3IgYWJvdmUKKyAqIFVEQVRQR19GSUVMRF9DT1VOVCBhcmUgaWxsZWdhbCBhcmd1bWVu
dHMuCisgKgorICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvci4KKyAqIEBwYXJhbSBmaWVsZCAgVURhdGVUaW1lUGF0dGVybkZpZWxkLCBzdWNoIGFz
IFVEQVRQR19FUkFfRklFTEQKKyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwg
cmVjZWl2ZSB0aGUgbGVuZ3RoIG9mIHRoZSBuYW1lIGZvciBmaWVsZC4KKyAqIEByZXR1cm4gbmFt
ZSBmb3IgZmllbGQKKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBjb25zdCBVQ2hh
ciAqIFVfRVhQT1JUMgordWRhdHBnX2dldEFwcGVuZEl0ZW1OYW1lKGNvbnN0IFVEYXRlVGltZVBh
dHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1l
UGF0dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBM
ZW5ndGgpOworCisvKioKKyAqIFRoZSBkYXRlIHRpbWUgZm9ybWF0IGlzIGEgbWVzc2FnZSBmb3Jt
YXQgcGF0dGVybiB1c2VkIHRvIGNvbXBvc2UgZGF0ZSBhbmQKKyAqIHRpbWUgcGF0dGVybnMuIFRo
ZSBkZWZhdWx0IHZhbHVlIGlzICJ7MH0gezF9Iiwgd2hlcmUgezB9IHdpbGwgYmUgcmVwbGFjZWQK
KyAqIGJ5IHRoZSBkYXRlIHBhdHRlcm4gYW5kIHsxfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSB0
aW1lIHBhdHRlcm4uCisgKiA8cD4KKyAqIFRoaXMgaXMgdXNlZCB3aGVuIHRoZSBpbnB1dCBza2Vs
ZXRvbiBjb250YWlucyBib3RoIGRhdGUgYW5kIHRpbWUgZmllbGRzLAorICogYnV0IHRoZXJlIGlz
IG5vdCBhIGNsb3NlIG1hdGNoIGFtb25nIHRoZSBhZGRlZCBwYXR0ZXJucy4gRm9yIGV4YW1wbGUs
CisgKiBzdXBwb3NlIHRoYXQgdGhpcyBvYmplY3Qgd2FzIGNyZWF0ZWQgYnkgYWRkaW5nICJkZC1N
TU0iIGFuZCAiaGg6bW0iLCBhbmQKKyAqIGl0cyBkYXRldGltZUZvcm1hdCBpcyB0aGUgZGVmYXVs
dCAiezB9IHsxfSIuIFRoZW4gaWYgdGhlIGlucHV0IHNrZWxldG9uCisgKiBpcyAiTU1NZGhtbSIs
IHRoZXJlIGlzIG5vdCBhbiBleGFjdCBtYXRjaCwgc28gdGhlIGlucHV0IHNrZWxldG9uIGlzCisg
KiBicm9rZW4gdXAgaW50byB0d28gY29tcG9uZW50cyAiTU1NZCIgYW5kICJobW0iLiBUaGVyZSBh
cmUgY2xvc2UgbWF0Y2hlcworICogZm9yIHRob3NlIHR3byBza2VsZXRvbnMsIHNvIHRoZSByZXN1
bHQgaXMgcHV0IHRvZ2V0aGVyIHdpdGggdGhpcyBwYXR0ZXJuLAorICogcmVzdWx0aW5nIGluICJk
LU1NTSBoOm1tIi4KKyAqCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0
dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBkdEZvcm1hdAorICogICAgICAgICAgICBtZXNzYWdl
IGZvcm1hdCBwYXR0ZXJuLCBoZXJlIHswfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSBkYXRlCisg
KiAgICAgICAgICAgIHBhdHRlcm4gYW5kIHsxfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSB0aW1l
IHBhdHRlcm4uCisgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGggb2YgZHRGb3JtYXQuCisgKiBA
c3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19zZXRE
YXRlVGltZUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpkdEZvcm1hdCwgaW50MzJfdCBsZW5n
dGgpOworCisvKioKKyAqIEdldHRlciBjb3JyZXNwb25kaW5nIHRvIHNldERhdGVUaW1lRm9ybWF0
LgorICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ci4KKyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwgcmVjZWl2ZSB0aGUgbGVu
Z3RoIG9mIHRoZSBmb3JtYXQKKyAqIEByZXR1cm4gZGF0ZVRpbWVGb3JtYXQuCisgKiBAc3RhYmxl
IElDVSAzLjgKKyAqLworVV9TVEFCTEUgY29uc3QgVUNoYXIgKiBVX0VYUE9SVDIKK3VkYXRwZ19n
ZXREYXRlVGltZUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAor
ICAgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBMZW5ndGgpOworCisvKioKKyAqIFRo
ZSBkZWNpbWFsIHZhbHVlIGlzIHVzZWQgaW4gZm9ybWF0dGluZyBmcmFjdGlvbnMgb2Ygc2Vjb25k
cy4gSWYgdGhlCisgKiBza2VsZXRvbiBjb250YWlucyBmcmFjdGlvbmFsIHNlY29uZHMsIHRoZW4g
dGhpcyBpcyB1c2VkIHdpdGggdGhlCisgKiBmcmFjdGlvbmFsIHNlY29uZHMuIEZvciBleGFtcGxl
LCBzdXBwb3NlIHRoYXQgdGhlIGlucHV0IHBhdHRlcm4gaXMKKyAqICJoaG1tc3NTU1NTIiwgYW5k
IHRoZSBiZXN0IG1hdGNoaW5nIHBhdHRlcm4gaW50ZXJuYWxseSBpcyAiSDptbTpzcyIsIGFuZAor
ICogdGhlIGRlY2ltYWwgc3RyaW5nIGlzICIsIi4gVGhlbiB0aGUgcmVzdWx0aW5nIHBhdHRlcm4g
aXMgbW9kaWZpZWQgdG8gYmUKKyAqICJIOm1tOnNzLFNTU1MiCisgKgorICogQHBhcmFtIGR0cGcg
YSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gZGVjaW1h
bAorICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIGRlY2ltYWwuCisgKiBAc3RhYmxlIElD
VSAzLjgKKyAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19zZXREZWNpbWFsKFVE
YXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICBjb25zdCBV
Q2hhciAqZGVjaW1hbCwgaW50MzJfdCBsZW5ndGgpOworCisvKioKKyAqIEdldHRlciBjb3JyZXNw
b25kaW5nIHRvIHNldERlY2ltYWwuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBV
RGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBMZW5ndGggQSBwb2ludGVyIHRo
YXQgd2lsbCByZWNlaXZlIHRoZSBsZW5ndGggb2YgdGhlIGRlY2ltYWwgc3RyaW5nLgorICogQHJl
dHVybiBjb3JyZXNwb25kaW5nIHRvIHRoZSBkZWNpbWFsIHBvaW50LgorICogQHN0YWJsZSBJQ1Ug
My44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9FWFBPUlQyCit1ZGF0cGdfZ2V0RGVj
aW1hbChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAg
ICAgICAgaW50MzJfdCAqcExlbmd0aCk7CisKKy8qKgorICogQWRqdXN0cyB0aGUgZmllbGQgdHlw
ZXMgKHdpZHRoIGFuZCBzdWJ0eXBlKSBvZiBhIHBhdHRlcm4gdG8gbWF0Y2ggd2hhdCBpcworICog
aW4gYSBza2VsZXRvbi4gVGhhdCBpcywgaWYgeW91IHN1cHBseSBhIHBhdHRlcm4gbGlrZSAiZC1N
IEg6bSIsIGFuZCBhCisgKiBza2VsZXRvbiBvZiAiTU1NTWRkaGhtbSIsIHRoZW4gdGhlIGlucHV0
IHBhdHRlcm4gaXMgYWRqdXN0ZWQgdG8gYmUKKyAqICJkZC1NTU1NIGhoOm1tIi4gVGhpcyBpcyB1
c2VkIGludGVybmFsbHkgdG8gZ2V0IHRoZSBiZXN0IG1hdGNoIGZvciB0aGUKKyAqIGlucHV0IHNr
ZWxldG9uLCBidXQgY2FuIGFsc28gYmUgdXNlZCBleHRlcm5hbGx5LgorICoKKyAqIE5vdGUgdGhh
dCB0aGlzIGZ1bmN0aW9uIHVzZXMgYSBub24tY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
cjoKKyAqIEl0IHVzZXMgYSBzdGF0ZWZ1bCBwYXR0ZXJuIHBhcnNlciB3aGljaCBpcyBzZXQgdXAg
Zm9yIGVhY2ggZ2VuZXJhdG9yIG9iamVjdCwKKyAqIHJhdGhlciB0aGFuIGNyZWF0aW5nIG9uZSBm
b3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICogQ29uc2VjdXRpdmUgY2FsbHMgdG8gdGhpcyBmdW5j
dGlvbiBkbyBub3QgYWZmZWN0IGVhY2ggb3RoZXIsCisgKiBidXQgdGhpcyBmdW5jdGlvbiBjYW5u
b3QgYmUgdXNlZCBjb25jdXJyZW50bHkgb24gYSBzaW5nbGUgZ2VuZXJhdG9yIG9iamVjdC4KKyAq
CisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4K
KyAqIEBwYXJhbSBwYXR0ZXJuIElucHV0IHBhdHRlcm4KKyAqIEBwYXJhbSBwYXR0ZXJuTGVuZ3Ro
IHRoZSBsZW5ndGggb2YgaW5wdXQgcGF0dGVybi4KKyAqIEBwYXJhbSBza2VsZXRvbgorICogQHBh
cmFtIHNrZWxldG9uTGVuZ3RoIHRoZSBsZW5ndGggb2YgaW5wdXQgc2tlbGV0b24uCisgKiBAcGFy
YW0gZGVzdCAgcGF0dGVybiBhZGp1c3RlZCB0byBtYXRjaCB0aGUgc2tlbGV0b24gZmllbGRzIHdp
ZHRocyBhbmQgc3VidHlwZXMuCisgKiBAcGFyYW0gZGVzdENhcGFjaXR5IHRoZSBjYXBhY2l0eSBv
ZiBkZXN0LgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2Rl
IHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgZmFpbHVyZSBi
ZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0dXJuIHRoZSBsZW5ndGggb2YgZGVzdC4K
KyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRh
dHBnX3JlcGxhY2VGaWVsZFR5cGVzKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMyX3QgcGF0
dGVybkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0
b24sIGludDMyX3Qgc2tlbGV0b25MZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgVUNo
YXIgKmRlc3QsIGludDMyX3QgZGVzdENhcGFjaXR5LAorICAgICAgICAgICAgICAgICAgICAgICAg
IFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEFkanVzdHMgdGhlIGZpZWxkIHR5
cGVzICh3aWR0aCBhbmQgc3VidHlwZSkgb2YgYSBwYXR0ZXJuIHRvIG1hdGNoIHdoYXQgaXMKKyAq
IGluIGEgc2tlbGV0b24uIFRoYXQgaXMsIGlmIHlvdSBzdXBwbHkgYSBwYXR0ZXJuIGxpa2UgImQt
TSBIOm0iLCBhbmQgYQorICogc2tlbGV0b24gb2YgIk1NTU1kZGhobW0iLCB0aGVuIHRoZSBpbnB1
dCBwYXR0ZXJuIGlzIGFkanVzdGVkIHRvIGJlCisgKiAiZGQtTU1NTSBoaDptbSIuIFRoaXMgaXMg
dXNlZCBpbnRlcm5hbGx5IHRvIGdldCB0aGUgYmVzdCBtYXRjaCBmb3IgdGhlCisgKiBpbnB1dCBz
a2VsZXRvbiwgYnV0IGNhbiBhbHNvIGJlIHVzZWQgZXh0ZXJuYWxseS4KKyAqCisgKiBOb3RlIHRo
YXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0
b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2ggaXMgc2V0IHVw
IGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUg
Zm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNhbGxzIHRvIHRoaXMgZnVu
Y3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRoaXMgZnVuY3Rpb24gY2Fu
bm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBvYmplY3QuCisg
KgorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3Iu
CisgKiBAcGFyYW0gcGF0dGVybiBJbnB1dCBwYXR0ZXJuCisgKiBAcGFyYW0gcGF0dGVybkxlbmd0
aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHBhdHRlcm4uCisgKiBAcGFyYW0gc2tlbGV0b24KKyAqIEBw
YXJhbSBza2VsZXRvbkxlbmd0aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHNrZWxldG9uLgorICogQHBh
cmFtIG9wdGlvbnMKKyAqICAgICAgICAgICAgT3B0aW9ucyBjb250cm9sbGluZyB3aGV0aGVyIHRo
ZSBsZW5ndGggb2Ygc3BlY2lmaWVkIGZpZWxkcyBpbiB0aGUKKyAqICAgICAgICAgICAgcGF0dGVy
biBhcmUgYWRqdXN0ZWQgdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNrZWxldG9uICh3aGVuIHRoaXMK
KyAqICAgICAgICAgICAgd291bGQgbm90IGhhcHBlbiBvdGhlcndpc2UpLiBGb3IgZGVmYXVsdCBi
ZWhhdmlvciwgdXNlCisgKiAgICAgICAgICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TLgorICog
QHBhcmFtIGRlc3QgIHBhdHRlcm4gYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHNrZWxldG9uIGZpZWxk
cyB3aWR0aHMgYW5kIHN1YnR5cGVzLgorICogQHBhcmFtIGRlc3RDYXBhY2l0eSB0aGUgY2FwYWNp
dHkgb2YgZGVzdC4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9y
Q29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAgICAgICAgICAgIGZhaWx1
cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGRl
c3QuCisgKiBAc3RhYmxlIElDVSA0LjQKKyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIK
K3VkYXRwZ19yZXBsYWNlRmllbGRUeXBlc1dpdGhPcHRpb25zKFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBV
Q2hhciAqcGF0dGVybiwgaW50MzJfdCBwYXR0ZXJuTGVuZ3RoLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IHNrZWxldG9u
TGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0
dGVybk1hdGNoT3B0aW9ucyBvcHRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgVUNoYXIgKmRlc3QsIGludDMyX3QgZGVzdENhcGFjaXR5LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICog
UmV0dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxsIHRoZSBza2VsZXRvbnMgaW4gY2Fub25p
Y2FsIGZvcm0uCisgKiBDYWxsIHVkYXRwZ19nZXRQYXR0ZXJuRm9yU2tlbGV0b24oKSB0byBnZXQg
dGhlIGNvcnJlc3BvbmRpbmcgcGF0dGVybi4KKyAqIAorICogQHBhcmFtIGR0cGcgYSBwb2ludGVy
IHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBv
aW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICogICAg
ICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbAorICogQHJldHVy
biBhIFVFbnVtZXJhdGlvbiBsaXN0IG9mIGFsbCB0aGUgc2tlbGV0b25zCisgKiAgICAgICAgIFRo
ZSBjYWxsZXIgbXVzdCBjbG9zZSB0aGUgb2JqZWN0LgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8K
K1VfU1RBQkxFIFVFbnVtZXJhdGlvbiAqIFVfRVhQT1JUMgordWRhdHBnX29wZW5Ta2VsZXRvbnMo
Y29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywgVUVycm9yQ29kZSAqcEVycm9y
Q29kZSk7CisKKy8qKgorICogUmV0dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxsIHRoZSBi
YXNlIHNrZWxldG9ucyBpbiBjYW5vbmljYWwgZm9ybS4KKyAqCisgKiBAcGFyYW0gZHRwZyBhIHBv
aW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwRXJyb3JDb2Rl
IGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisg
KiAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1
cm4gYSBVRW51bWVyYXRpb24gbGlzdCBvZiBhbGwgdGhlIGJhc2Ugc2tlbGV0b25zCisgKiAgICAg
ICAgICAgICBUaGUgY2FsbGVyIG11c3QgY2xvc2UgdGhlIG9iamVjdC4KKyAqIEBzdGFibGUgSUNV
IDMuOAorICovCitVX1NUQUJMRSBVRW51bWVyYXRpb24gKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVu
QmFzZVNrZWxldG9ucyhjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLCBVRXJy
b3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBHZXQgdGhlIHBhdHRlcm4gY29ycmVzcG9u
ZGluZyB0byBhIGdpdmVuIHNrZWxldG9uLgorICogCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIg
dG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBza2VsZXRvbiAKKyAqIEBw
YXJhbSBza2VsZXRvbkxlbmd0aCBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2Ygc2tlbGV0b24uCisg
KiBAcGFyYW0gcExlbmd0aCBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2YgcmV0dXJuIHBhdHRlcm4u
CisgKiBAcmV0dXJuIHBhdHRlcm4gY29ycmVzcG9uZGluZyB0byBhIGdpdmVuIHNrZWxldG9uLgor
ICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9FWFBPUlQy
Cit1ZGF0cGdfZ2V0UGF0dGVybkZvclNrZWxldG9uKGNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpz
a2VsZXRvbiwgaW50MzJfdCBza2VsZXRvbkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50MzJfdCAqcExlbmd0aCk7CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2ljdS91bmljb2RlL3VudW1zeXMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pY3UvdW5pY29kZS91bnVtc3lzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDI2NDYzZTgxYTVkZmZiOWYzNzk5
Nzc5NWIwNzVkNzUzOGM2NjYyMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pY3UvdW5pY29kZS91bnVtc3lzLmgKQEAgLTAsMCArMSwxNzQgQEAKKy8qCisqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKgorKiBDb3B5cmlnaHQgKEMpIDIwMTMsIEludGVybmF0
aW9uYWwgQnVzaW5lc3MgTWFjaGluZXMKKyogQ29ycG9yYXRpb24gYW5kIG90aGVycy4gQWxsIFJp
Z2h0cyBSZXNlcnZlZC4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisqLworCisj
aWZuZGVmIFVOVU1TWVNfSAorI2RlZmluZSBVTlVNU1lTX0gKKworI2luY2x1ZGUgInVuaWNvZGUv
dXR5cGVzLmgiCisKKyNpZiAhVUNPTkZJR19OT19GT1JNQVRUSU5HCisKKyNpbmNsdWRlICJ1bmlj
b2RlL3VlbnVtLmgiCisjaW5jbHVkZSAidW5pY29kZS9sb2NhbHBvaW50ZXIuaCIKKworLyoqCisg
KiBcZmlsZQorICogXGJyaWVmIEMgQVBJOiBVTnVtYmVyaW5nU3lzdGVtLCBpbmZvcm1hdGlvbiBh
Ym91dCBudW1iZXJpbmcgc3lzdGVtcworICoKKyAqIERlZmluZXMgbnVtYmVyaW5nIHN5c3RlbXMu
IEEgbnVtYmVyaW5nIHN5c3RlbSBkZXNjcmliZXMgdGhlIHNjaGVtZSBieSB3aGljaCAKKyAqIG51
bWJlcnMgYXJlIHRvIGJlIHByZXNlbnRlZCB0byB0aGUgZW5kIHVzZXIuIEluIGl0cyBzaW1wbGVz
dCBmb3JtLCBhIG51bWJlcmluZworICogc3lzdGVtIGRlc2NyaWJlcyB0aGUgc2V0IG9mIGRpZ2l0
IGNoYXJhY3RlcnMgdGhhdCBhcmUgdG8gYmUgdXNlZCB0byBkaXNwbGF5CisgKiBudW1iZXJzLCBz
dWNoIGFzIFdlc3Rlcm4gZGlnaXRzLCBUaGFpIGRpZ2l0cywgQXJhYmljLUluZGljIGRpZ2l0cywg
ZXRjLiwgaW4gYQorICogcG9zaXRpb25hbCBudW1iZXJpbmcgc3lzdGVtIHdpdGggYSBzcGVjaWZp
ZWQgcmFkaXggKHR5cGljYWxseSAxMCkuCisgKiBNb3JlIGNvbXBsaWNhdGVkIG51bWJlcmluZyBz
eXN0ZW1zIGFyZSBhbGdvcml0aG1pYyBpbiBuYXR1cmUsIGFuZCByZXF1aXJlIHVzZQorICogb2Yg
YW4gUkJORiBmb3JtYXR0ZXIgKHJ1bGUgYmFzZWQgbnVtYmVyIGZvcm1hdHRlciksIGluIG9yZGVy
IHRvIGNhbGN1bGF0ZQorICogdGhlIGNoYXJhY3RlcnMgdG8gYmUgZGlzcGxheWVkIGZvciBhIGdp
dmVuIG51bWJlci4gRXhhbXBsZXMgb2YgYWxnb3JpdGhtaWMKKyAqIG51bWJlcmluZyBzeXN0ZW1z
IGluY2x1ZGUgUm9tYW4gbnVtZXJhbHMsIENoaW5lc2UgbnVtZXJhbHMsIGFuZCBIZWJyZXcgbnVt
ZXJhbHMuCisgKiBGb3JtYXR0aW5nIHJ1bGVzIGZvciBtYW55IGNvbW1vbmx5IHVzZWQgbnVtYmVy
aW5nIHN5c3RlbXMgYXJlIGluY2x1ZGVkIGluCisgKiB0aGUgSUNVIHBhY2thZ2UsIGJhc2VkIG9u
IHRoZSBudW1iZXJpbmcgc3lzdGVtIHJ1bGVzIGRlZmluZWQgaW4gQ0xEUi4KKyAqIEFsdGVybmF0
ZSBudW1iZXJpbmcgc3lzdGVtcyBjYW4gYmUgc3BlY2lmaWVkIHRvIGEgbG9jYWxlIGJ5IHVzaW5n
IHRoZQorICogbnVtYmVycyBsb2NhbGUga2V5d29yZC4KKyAqLworCisjaWZuZGVmIFVfSElERV9E
UkFGVF9BUEkKKworLyoqCisgKiBPcGFxdWUgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgZm9yIHVz
ZSBpbiBDIHByb2dyYW1zLgorICogQGRyYWZ0IElDVSA1MgorICovCitzdHJ1Y3QgVU51bWJlcmlu
Z1N5c3RlbTsKK3R5cGVkZWYgc3RydWN0IFVOdW1iZXJpbmdTeXN0ZW0gVU51bWJlcmluZ1N5c3Rl
bTsgIC8qKjwgQyB0eXBlZGVmIGZvciBzdHJ1Y3QgVU51bWJlcmluZ1N5c3RlbS4gQGRyYWZ0IElD
VSA1MiAqLworCisvKioKKyAqIE9wZW5zIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgdXNpbmcg
dGhlIGRlZmF1bHQgbnVtYmVyaW5nIHN5c3RlbSBmb3IgdGhlIHNwZWNpZmllZAorICogbG9jYWxl
LgorICogQHBhcmFtIGxvY2FsZSAgICBUaGUgbG9jYWxlIGZvciB3aGljaCB0aGUgZGVmYXVsdCBu
dW1iZXJpbmcgc3lzdGVtIHNob3VsZCBiZSBvcGVuZWQuCisgKiBAcGFyYW0gc3RhdHVzICAgIEEg
cG9pbnRlciB0byBhIFVFcnJvckNvZGUgdG8gcmVjZWl2ZSBhbnkgZXJyb3JzLiBGb3IgZXhhbXBs
ZSwgdGhpcworICogICAgICAgICAgICAgICAgICBtYXkgYmUgVV9VTlNVUFBPUlRFRF9FUlJPUiBm
b3IgYSBsb2NhbGUgc3VjaCBhcyAiZW5AbnVtYmVycz14eXoiIHRoYXQKKyAqICAgICAgICAgICAg
ICAgICAgc3BlY2lmaWVzIGEgbnVtYmVyaW5nIHN5c3RlbSB1bmtub3duIHRvIElDVS4KKyAqIEBy
ZXR1cm4gICAgICAgICAgQSBVTnVtYmVyaW5nU3lzdGVtIGZvciB0aGUgc3BlY2lmaWVkIGxvY2Fs
ZSwgb3IgTlVMTCBpZiBhbiBlcnJvcgorICogICAgICAgICAgICAgICAgICBvY2N1cnJlZC4KKyAq
IEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVTnVtYmVyaW5nU3lzdGVtICogVV9FWFBPUlQy
Cit1bnVtc3lzX29wZW4oY29uc3QgY2hhciAqbG9jYWxlLCBVRXJyb3JDb2RlICpzdGF0dXMpOwor
CisvKioKKyAqIE9wZW5zIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgdXNpbmcgdGhlIG5hbWUg
b2Ygb25lIG9mIHRoZSBwcmVkZWZpbmVkIG51bWJlcmluZworICogc3lzdGVtcyBzcGVjaWZpZWQg
YnkgQ0xEUiBhbmQga25vd24gdG8gSUNVLCBzdWNoIGFzICJsYXRuIiwgImFyYWJleHQiLCBvciAi
aGFuaWRlYyI7CisgKiB0aGUgZnVsbCBsaXN0IGlzIHJldHVybmVkIGJ5IHVudW1zeXNfb3BlbkF2
YWlsYWJsZU5hbWVzLiBOb3RlIHRoYXQgc29tZSBvZiB0aGUgbmFtZXMKKyAqIGxpc3RlZCBhdCBo
dHRwOi8vdW5pY29kZS5vcmcvcmVwb3MvY2xkci90YWdzL2xhdGVzdC9jb21tb24vYmNwNDcvbnVt
YmVyLnhtbCAtIGUuZy4KKyAqIGRlZmF1bHQsIG5hdGl2ZSwgdHJhZGl0aW9uYWwsIGZpbmFuY2Ug
LSBkbyBub3QgaWRlbnRpZnkgc3BlY2lmaWMgbnVtYmVyaW5nIHN5c3RlbXMsCisgKiBidXQgcmF0
aGVyIGtleSB2YWx1ZXMgdGhhdCBtYXkgb25seSBiZSB1c2VkIGFzIHBhcnQgb2YgYSBsb2NhbGUs
IHdoaWNoIGluIHR1cm4KKyAqIGRlZmluZXMgaG93IHRoZXkgYXJlIG1hcHBlZCB0byBhIHNwZWNp
ZmljIG51bWJlcmluZyBzeXN0ZW0gc3VjaCBhcyAibGF0biIgb3IgImhhbnQiLgorICoKKyAqIEBw
YXJhbSBuYW1lICAgICAgVGhlIG5hbWUgb2YgdGhlIG51bWJlcmluZyBzeXN0ZW0gZm9yIHdoaWNo
IGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QKKyAqICAgICAgICAgICAgICAgICAgc2hvdWxkIGJl
IG9wZW5lZC4KKyAqIEBwYXJhbSBzdGF0dXMgICAgQSBwb2ludGVyIHRvIGEgVUVycm9yQ29kZSB0
byByZWNlaXZlIGFueSBlcnJvcnMuIEZvciBleGFtcGxlLCB0aGlzCisgKiAgICAgICAgICAgICAg
ICAgIG1heSBiZSBVX1VOU1VQUE9SVEVEX0VSUk9SIGZvciBhIG51bWJlcmluZyBzeXN0ZW0gc3Vj
aCBhcyAieHl6IiB0aGF0CisgKiAgICAgICAgICAgICAgICAgIGlzIHVua25vd24gdG8gSUNVLgor
ICogQHJldHVybiAgICAgICAgICBBIFVOdW1iZXJpbmdTeXN0ZW0gZm9yIHRoZSBzcGVjaWZpZWQg
bmFtZSwgb3IgTlVMTCBpZiBhbiBlcnJvcgorICogICAgICAgICAgICAgICAgICBvY2N1cnJlZC4K
KyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVTnVtYmVyaW5nU3lzdGVtICogVV9FWFBP
UlQyCit1bnVtc3lzX29wZW5CeU5hbWUoY29uc3QgY2hhciAqbmFtZSwgVUVycm9yQ29kZSAqc3Rh
dHVzKTsKKworLyoqCisgKiBDbG9zZSBhIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0LiBPbmNlIGNs
b3NlZCBpdCBtYXkgbm8gbG9uZ2VyIGJlIHVzZWQuCisgKiBAcGFyYW0gdW51bXN5cyAgIFRoZSBV
TnVtYmVyaW5nU3lzdGVtIG9iamVjdCB0byBjbG9zZS4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAqLwor
VV9EUkFGVCB2b2lkIFVfRVhQT1JUMgordW51bXN5c19jbG9zZShVTnVtYmVyaW5nU3lzdGVtICp1
bnVtc3lzKTsKKworI2lmIFVfU0hPV19DUExVU1BMVVNfQVBJCitVX05BTUVTUEFDRV9CRUdJTgor
CisvKioKKyAqIFxjbGFzcyBMb2NhbFVOdW1iZXJpbmdTeXN0ZW1Qb2ludGVyCisgKiAiU21hcnQg
cG9pbnRlciIgY2xhc3MsIGNsb3NlcyBhIFVOdW1iZXJpbmdTeXN0ZW0gdmlhIHVudW1zeXNfY2xv
c2UoKS4KKyAqIEZvciBtb3N0IG1ldGhvZHMgc2VlIHRoZSBMb2NhbFBvaW50ZXJCYXNlIGJhc2Ug
Y2xhc3MuCisgKiBAc2VlIExvY2FsUG9pbnRlckJhc2UKKyAqIEBzZWUgTG9jYWxQb2ludGVyCisg
KiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfREVGSU5FX0xPQ0FMX09QRU5fUE9JTlRFUihMb2NhbFVO
dW1iZXJpbmdTeXN0ZW1Qb2ludGVyLCBVTnVtYmVyaW5nU3lzdGVtLCB1bnVtc3lzX2Nsb3NlKTsK
KworVV9OQU1FU1BBQ0VfRU5ECisjZW5kaWYKKworLyoqCisgKiBSZXR1cm5zIGFuIGVudW1lcmF0
aW9uIG92ZXIgdGhlIG5hbWVzIG9mIGFsbCBvZiB0aGUgcHJlZGVmaW5lZCBudW1iZXJpbmcgc3lz
dGVtcyBrbm93bgorICogdG8gSUNVLgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBvaW50ZXIgdG8g
YSBVRXJyb3JDb2RlIHRvIHJlY2VpdmUgYW55IGVycm9ycy4KKyAqIEByZXR1cm4gICAgICAgICAg
QSBwb2ludGVyIHRvIGEgVUVudW1lcmF0aW9uIHRoYXQgbXVzdCBiZSBjbG9zZWQgd2l0aCB1ZW51
bV9jbG9zZSgpLAorICogICAgICAgICAgICAgICAgICBvciBOVUxMIGlmIGFuIGVycm9yIG9jY3Vy
cmVkLgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIFVFbnVtZXJhdGlvbiAqIFVfRVhQ
T1JUMgordW51bXN5c19vcGVuQXZhaWxhYmxlTmFtZXMoVUVycm9yQ29kZSAqc3RhdHVzKTsKKwor
LyoqCisgKiBSZXR1cm5zIHRoZSBuYW1lIG9mIHRoZSBzcGVjaWZpZWQgVU51bWJlcmluZ1N5c3Rl
bSBvYmplY3QgKGlmIGl0IGlzIG9uZSBvZiB0aGUKKyAqIHByZWRlZmluZWQgbmFtZXMga25vd24g
dG8gSUNVKS4KKyAqIEBwYXJhbSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2Ug
bmFtZSBpcyBkZXNpcmVkLgorICogQHJldHVybiAgICAgICAgICBBIHBvaW50ZXIgdG8gdGhlIG5h
bWUgb2YgdGhlIHNwZWNpZmllZCBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCwgb3IKKyAqICAgICAg
ICAgICAgICAgICAgTlVMTCBpZiB0aGUgbmFtZSBpcyBub3Qgb25lIG9mIHRoZSBJQ1UgcHJlZGVm
aW5lZCBuYW1lcy4gVGhlIHBvaW50ZXIKKyAqICAgICAgICAgICAgICAgICAgaXMgb25seSB2YWxp
ZCBmb3IgdGhlIGxpZmV0aW1lIG9mIHRoZSBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdC4KKyAqIEBk
cmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBjb25zdCBjaGFyICogVV9FWFBPUlQyCit1bnVtc3lz
X2dldE5hbWUoY29uc3QgVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5cyk7CisKKy8qKgorICogUmV0
dXJucyB3aGV0aGVyIHRoZSBnaXZlbiBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCBpcyBmb3IgYW4g
YWxnb3JpdGhtaWMgKG5vdCBwdXJlbHkKKyAqIHBvc2l0aW9uYWwpIHN5c3RlbS4KKyAqIEBwYXJh
bSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2UgYWxnb3JpdGhtaWMgc3RhdHVz
IGlzIGRlc2lyZWQuCisgKiBAcmV0dXJuICAgICAgICAgIFRSVUUgaWYgdGhlIHNwZWNpZmllZCBV
TnVtYmVyaW5nU3lzdGVtIG9iamVjdCBpcyBmb3IgYW4gYWxnb3JpdGhtaWMKKyAqICAgICAgICAg
ICAgICAgICAgc3lzdGVtLgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIFVCb29sIFVf
RVhQT1JUMgordW51bXN5c19pc0FsZ29yaXRobWljKGNvbnN0IFVOdW1iZXJpbmdTeXN0ZW0gKnVu
dW1zeXMpOworCisvKioKKyAqIFJldHVybnMgdGhlIHJhZGl4IG9mIHRoZSBzcGVjaWZpZWQgVU51
bWJlcmluZ1N5c3RlbSBvYmplY3QuIFNpbXBsZSBwb3NpdGlvbmFsCisgKiBudW1iZXJpbmcgc3lz
dGVtcyB0eXBpY2FsbHkgaGF2ZSByYWRpeCAxMCwgYnV0IG1pZ2h0IGhhdmUgYSByYWRpeCBvZiBl
LmcuIDE2IGZvcgorICogaGV4YWRlY2ltYWwuIFRoZSByYWRpeCBpcyBsZXNzIHdlbGwtZGVmaW5l
ZCBmb3Igbm9uLXBvc2l0aW9uYWwgYWxnb3JpdGhtaWMgc3lzdGVtcy4KKyAqIEBwYXJhbSB1bnVt
c3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2UgcmFkaXggaXMgZGVzaXJlZC4KKyAqIEBy
ZXR1cm4gICAgICAgICAgVGhlIHJhZGl4IG9mIHRoZSBzcGVjaWZpZWQgVU51bWJlcmluZ1N5c3Rl
bSBvYmplY3QuCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfRFJBRlQgaW50MzJfdCBVX0VYUE9S
VDIKK3VudW1zeXNfZ2V0UmFkaXgoY29uc3QgVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5cyk7CisK
Ky8qKgorICogR2V0IHRoZSBkZXNjcmlwdGlvbiBzdHJpbmcgb2YgdGhlIHNwZWNpZmllZCBVTnVt
YmVyaW5nU3lzdGVtIG9iamVjdC4gRm9yIHNpbXBsZQorICogcG9zaXRpb25hbCBzeXN0ZW1zIHRo
aXMgaXMgdGhlIG9yZGVyZWQgc3RyaW5nIG9mIGRpZ2l0cyAod2l0aCBsZW5ndGggbWF0Y2hpbmcK
KyAqIHRoZSByYWRpeCksIGUuZy4gIlx1MzAwN1x1NEUwMFx1NEU4Q1x1NEUwOVx1NTZEQlx1NEU5
NFx1NTE2RFx1NEUwM1x1NTE2Qlx1NEU1RCIKKyAqIGZvciAiaGFuaWRlYyI7IGl0IHdvdWxkIGJl
ICIwMTIzNDU2Nzg5QUJDREVGIiBmb3IgaGV4YWRlY2ltYWwuIEZvcgorICogYWxnb3JpdGhtaWMg
c3lzdGVtcyB0aGlzIGlzIHRoZSBuYW1lIG9mIHRoZSBSQk5GIHJ1bGVzZXQgdXNlZCBmb3IgZm9y
bWF0dGluZywKKyAqIGUuZy4gInpoL1NwZWxsb3V0UnVsZXMvJXNwZWxsb3V0LWNhcmRpbmFsIiBm
b3IgImhhbnMiIG9yICIlZ3JlZWstdXBwZXIiIGZvcgorICogImdyZWsiLgorICogQHBhcmFtIHVu
dW1zeXMgICBUaGUgVU51bWJlcmluZ1N5c3RlbSB3aG9zZSBkZXNjcmlwdGlvbiBzdHJpbmcgaXMg
ZGVzaXJlZC4KKyAqIEBwYXJhbSByZXN1bHQgICAgQSBwb2ludGVyIHRvIGEgYnVmZmVyIHRvIHJl
Y2VpdmUgdGhlIGRlc2NyaXB0aW9uIHN0cmluZy4KKyAqIEBwYXJhbSByZXN1bHRMZW5ndGggIFRo
ZSBtYXhpbXVtIHNpemUgb2YgcmVzdWx0LgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBvaW50ZXIg
dG8gYSBVRXJyb3JDb2RlIHRvIHJlY2VpdmUgYW55IGVycm9ycy4KKyAqIEByZXR1cm4gICAgICAg
ICAgVGhlIHRvdGFsIGJ1ZmZlciBzaXplIG5lZWRlZDsgaWYgZ3JlYXRlciB0aGFuIHJlc3VsdExl
bmd0aCwgdGhlCisgKiAgICAgICAgICAgICAgICAgIG91dHB1dCB3YXMgdHJ1bmNhdGVkLgorICog
QGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIGludDMyX3QgVV9FWFBPUlQyCit1bnVtc3lzX2dl
dERlc2NyaXB0aW9uKGNvbnN0IFVOdW1iZXJpbmdTeXN0ZW0gKnVudW1zeXMsIFVDaGFyICpyZXN1
bHQsCisgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgcmVzdWx0TGVuZ3RoLCBVRXJyb3JD
b2RlICpzdGF0dXMpOworCisjZW5kaWYgIC8qIFVfSElERV9EUkFGVF9BUEkgKi8KKworI2VuZGlm
IC8qICNpZiAhVUNPTkZJR19OT19GT1JNQVRUSU5HICovCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKaW5kZXggOGNkN2Jj
YThiYWIzNTEwZTNiODc1Y2QwMDE4NGM3YjAwNDIwMzg4ZC4uZWI0N2QwMjQzOTU5MTM2ODU3MDBh
NjJlNTUwZTYyYWZjZjdiNDI3YiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Db21tb25JZGVudGlmaWVycy5oCkBAIC0xMDEsNiArMTAxLDcgQEAKICAgICBtYWNybyhj
b25zdHJ1Y3RvcikgXAogICAgIG1hY3JvKGNvdW50KSBcCiAgICAgbWFjcm8oY291bnRlcnMpIFwK
KyAgICBtYWNybyhkYXkpIFwKICAgICBtYWNybyhkZWZpbmVQcm9wZXJ0eSkgXAogICAgIG1hY3Jv
KGRlc2NyaXB0aW9uKSBcCiAgICAgbWFjcm8oZGVzY3JpcHRpb25zKSBcCkBAIC0xMDksNiArMTEw
LDcgQEAKICAgICBtYWNybyhkb25lKSBcCiAgICAgbWFjcm8oZW50cmllcykgXAogICAgIG1hY3Jv
KGVudW1lcmFibGUpIFwKKyAgICBtYWNybyhlcmEpIFwKICAgICBtYWNybyhldmFsKSBcCiAgICAg
bWFjcm8oZXhlYykgXAogICAgIG1hY3JvKGV4ZWN1dGlvbkNvdW50KSBcCkBAIC0xMTYsNiArMTE4
LDcgQEAKICAgICBtYWNybyhmbGFncykgXAogICAgIG1hY3JvKGZvY3VzKSBcCiAgICAgbWFjcm8o
Zm9yRWFjaCkgXAorICAgIG1hY3JvKGZvcm1hdE1hdGNoZXIpIFwKICAgICBtYWNybyhmb3J3YXJk
KSBcCiAgICAgbWFjcm8oZnJvbSkgXAogICAgIG1hY3JvKGZyb21DaGFyQ29kZSkgXApAQCAtMTI2
LDYgKzEyOSw4IEBACiAgICAgbWFjcm8oaGFzT3duUHJvcGVydHkpIFwKICAgICBtYWNybyhoYXNo
KSBcCiAgICAgbWFjcm8oaGVhZGVyKSBcCisgICAgbWFjcm8oaG91cikgXAorICAgIG1hY3JvKGhv
dXIxMikgXAogICAgIG1hY3JvKGhyZWYpIFwKICAgICBtYWNybyhpZCkgXAogICAgIG1hY3JvKGln
bm9yZUNhc2UpIFwKQEAgLTE0OSw2ICsxNTQsOCBAQAogICAgIG1hY3JvKGxvY2FsZSkgXAogICAg
IG1hY3JvKGxvY2FsZU1hdGNoZXIpIFwKICAgICBtYWNybyhtZXNzYWdlKSBcCisgICAgbWFjcm8o
bWludXRlKSBcCisgICAgbWFjcm8obW9udGgpIFwKICAgICBtYWNybyhtdWx0aWxpbmUpIFwKICAg
ICBtYWNybyhuYW1lKSBcCiAgICAgbWFjcm8obmV4dCkgXApAQCAtMTcyLDYgKzE3OSw3IEBACiAg
ICAgbWFjcm8ocmVsb2FkKSBcCiAgICAgbWFjcm8ocmVwbGFjZSkgXAogICAgIG1hY3JvKHJlc29s
dmUpIFwKKyAgICBtYWNybyhzZWNvbmQpIFwKICAgICBtYWNybyhzZW5zaXRpdml0eSkgXAogICAg
IG1hY3JvKHNldCkgXAogICAgIG1hY3JvKHNob3dNb2RhbERpYWxvZykgXApAQCAtMTg1LDYgKzE5
Myw4IEBACiAgICAgbWFjcm8odGFyZ2V0KSBcCiAgICAgbWFjcm8odGVzdCkgXAogICAgIG1hY3Jv
KHRoZW4pIFwKKyAgICBtYWNybyh0aW1lWm9uZSkgXAorICAgIG1hY3JvKHRpbWVab25lTmFtZSkg
XAogICAgIG1hY3JvKHRvRXhwb25lbnRpYWwpIFwKICAgICBtYWNybyh0b0ZpeGVkKSBcCiAgICAg
bWFjcm8odG9JU09TdHJpbmcpIFwKQEAgLTE5OCw4ICsyMDgsMTAgQEAKICAgICBtYWNybyh2YWx1
ZXMpIFwKICAgICBtYWNybyh3ZWJraXQpIFwKICAgICBtYWNybyh3ZWJraXRJbmRleGVkREIpIFwK
KyAgICBtYWNybyh3ZWVrZGF5KSBcCiAgICAgbWFjcm8od2luZG93KSBcCi0gICAgbWFjcm8od3Jp
dGFibGUpCisgICAgbWFjcm8od3JpdGFibGUpIFwKKyAgICBtYWNybyh5ZWFyKQogCiAjZGVmaW5l
IEpTQ19DT01NT05fSURFTlRJRklFUlNfRUFDSF9LRVlXT1JEKG1hY3JvKSBcCiAgICAgbWFjcm8o
YnJlYWspIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxE
YXRlVGltZUZvcm1hdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0
ZVRpbWVGb3JtYXQuY3BwCmluZGV4IGRjNWIyYWNlMzI1YjA4YjZmMmYzN2IyMzEwNzY5MjBlODhm
Y2YwMjguLjY3M2VmYmI3YjNhY2NlNzQ5NTZhNGFjMTg4ZmZlNTA4YmFhMWUyN2UgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNw
cApAQCAtMzYsOCArMzYsMTMgQEAKICNpbmNsdWRlICJKU0JvdW5kRnVuY3Rpb24uaCIKICNpbmNs
dWRlICJKU0NKU1ZhbHVlSW5saW5lcy5oIgogI2luY2x1ZGUgIkpTQ2VsbElubGluZXMuaCIKKyNp
bmNsdWRlICJPYmplY3RDb25zdHJ1Y3Rvci5oIgogI2luY2x1ZGUgIlNsb3RWaXNpdG9ySW5saW5l
cy5oIgogI2luY2x1ZGUgIlN0cnVjdHVyZUlubGluZXMuaCIKKyNpbmNsdWRlIDx1bmljb2RlL3Vj
YWwuaD4KKyNpbmNsdWRlIDx1bmljb2RlL3VkYXQuaD4KKyNpbmNsdWRlIDx1bmljb2RlL3VkYXRw
Zy5oPgorI2luY2x1ZGUgPHVuaWNvZGUvdWVudW0uaD4KIAogbmFtZXNwYWNlIEpTQyB7CiAKQEAg
LTg2LDE0ICs5MSw1OTUgQEAgdm9pZCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEJvdW5kRm9ybWF0
KFZNJiB2bSwgSlNCb3VuZEZ1bmN0aW9uKiBmb3JtYXQpCiAgICAgbV9ib3VuZEZvcm1hdC5zZXQo
dm0sIHRoaXMsIGZvcm1hdCk7CiB9CiAKK2VudW0gY2xhc3MgRGF0ZVRpbWVPcHRpb25SZXF1aXJl
ZCB7IERhdGUsIFRpbWUsIEFueSB9OworZW51bSBjbGFzcyBEYXRlVGltZU9wdGlvbkRlZmF1bHRz
IHsgRGF0ZSwgVGltZSwgQWxsIH07CisKK1N0cmluZyBkZWZhdWx0VGltZVpvbmUoKQoreworICAg
IC8vIDYuNC4zIERlZmF1bHRUaW1lWm9uZSAoKSAoRUNNQS00MDIgMi4wKQorICAgIC8vIFRoZSBE
ZWZhdWx0VGltZVpvbmUgYWJzdHJhY3Qgb3BlcmF0aW9uIHJldHVybnMgYSBTdHJpbmcgdmFsdWUg
cmVwcmVzZW50aW5nIHRoZSB2YWxpZCAoNi40LjEpIGFuZCBjYW5vbmljYWxpemVkICg2LjQuMikg
dGltZSB6b25lIG5hbWUgZm9yIHRoZSBob3N0IGVudmlyb25tZW504oCZcyBjdXJyZW50IHRpbWUg
em9uZS4KKworICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgIGF1dG8g
YnVmZmVyTGVuZ3RoID0gdWNhbF9nZXREZWZhdWx0VGltZVpvbmUobnVsbHB0ciwgMCwgJnN0YXR1
cyk7CisgICAgaWYgKHN0YXR1cyA9PSBVX0JVRkZFUl9PVkVSRkxPV19FUlJPUikgeworICAgICAg
ICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgIFZlY3RvcjxVQ2hhciwgMzI+IGJ1ZmZl
cihidWZmZXJMZW5ndGgpOworICAgICAgICB1Y2FsX2dldERlZmF1bHRUaW1lWm9uZShidWZmZXIu
ZGF0YSgpLCBidWZmZXJMZW5ndGgsICZzdGF0dXMpOworICAgICAgICBpZiAoVV9TVUNDRVNTKHN0
YXR1cykpCisgICAgICAgICAgICByZXR1cm4gU3RyaW5nKGJ1ZmZlci5kYXRhKCksIGJ1ZmZlckxl
bmd0aCk7CisgICAgfQorICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIlVUQyIpOworfQorCitzdGF0
aWMgU3RyaW5nIGNhbm9uaWNhbGl6ZVRpbWVab25lTmFtZShjb25zdCBTdHJpbmcmIHRpbWVab25l
TmFtZSkKK3sKKyAgICAvLyA2LjQuMSBJc1ZhbGlkVGltZVpvbmVOYW1lICh0aW1lWm9uZSkKKyAg
ICAvLyBUaGUgYWJzdHJhY3Qgb3BlcmF0aW9uIHJldHVybnMgdHJ1ZSBpZiB0aW1lWm9uZSwgY29u
dmVydGVkIHRvIHVwcGVyIGNhc2UgYXMgZGVzY3JpYmVkIGluIDYuMSwgaXMgZXF1YWwgdG8gb25l
IG9mIHRoZSBab25lIG9yIExpbmsgbmFtZXMgb2YgdGhlIElBTkEgVGltZSBab25lIERhdGFiYXNl
LCBjb252ZXJ0ZWQgdG8gdXBwZXIgY2FzZSBhcyBkZXNjcmliZWQgaW4gNi4xLiBJdCByZXR1cm5z
IGZhbHNlIG90aGVyd2lzZS4KKyAgICBVRXJyb3JDb2RlIHN0YXR1cyA9IFVfWkVST19FUlJPUjsK
KyAgICBVRW51bWVyYXRpb24qIHRpbWVab25lcyA9IHVjYWxfb3BlblRpbWVab25lcygmc3RhdHVz
KTsKKyAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworCisgICAgU3RyaW5nIGNhbm9uaWNh
bDsKKyAgICB3aGlsZSAoY2Fub25pY2FsLmlzTnVsbCgpKSB7CisgICAgICAgIHN0YXR1cyA9IFVf
WkVST19FUlJPUjsKKyAgICAgICAgaW50MzJfdCBpYW5hVGltZVpvbmVMZW5ndGg7CisgICAgICAg
IC8vIFRpbWUgem9uZSBuYW1lcyBhcmUgcmVzcHJlc2VudGVkIGFzIFVDaGFyW10gaW4gYWxsIHJl
bGF0ZWQgSUNVIGFwaXMuCisgICAgICAgIGNvbnN0IFVDaGFyKiBpYW5hVGltZVpvbmUgPSB1ZW51
bV91bmV4dCh0aW1lWm9uZXMsICZpYW5hVGltZVpvbmVMZW5ndGgsICZzdGF0dXMpOworICAgICAg
ICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworCisgICAgICAgIC8vIEVuZCBvZiBlbnVtZXJh
dGlvbi4KKyAgICAgICAgaWYgKCFpYW5hVGltZVpvbmUpCisgICAgICAgICAgICBicmVhazsKKwor
ICAgICAgICBTdHJpbmdWaWV3IGlhbmFUaW1lWm9uZVZpZXcoaWFuYVRpbWVab25lLCBpYW5hVGlt
ZVpvbmVMZW5ndGgpOworICAgICAgICBpZiAoIWVxdWFsSWdub3JpbmdBU0NJSUNhc2UodGltZVpv
bmVOYW1lLCBpYW5hVGltZVpvbmVWaWV3KSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAg
ICAgIC8vIEZvdW5kIGEgbWF0Y2gsIG5vdyBjYW5vbmljYWxpemUuCisgICAgICAgIC8vIDYuNC4y
IENhbm9uaWNhbGl6ZVRpbWVab25lTmFtZSAodGltZVpvbmUpIChFQ01BLTQwMiAyLjApCisgICAg
ICAgIC8vIDEuIExldCBpYW5hVGltZVpvbmUgYmUgdGhlIFpvbmUgb3IgTGluayBuYW1lIG9mIHRo
ZSBJQU5BIFRpbWUgWm9uZSBEYXRhYmFzZSBzdWNoIHRoYXQgdGltZVpvbmUsIGNvbnZlcnRlZCB0
byB1cHBlciBjYXNlIGFzIGRlc2NyaWJlZCBpbiA2LjEsIGlzIGVxdWFsIHRvIGlhbmFUaW1lWm9u
ZSwgY29udmVydGVkIHRvIHVwcGVyIGNhc2UgYXMgZGVzY3JpYmVkIGluIDYuMS4KKyAgICAgICAg
Ly8gMi4gSWYgaWFuYVRpbWVab25lIGlzIGEgTGluayBuYW1lLCB0aGVuIGxldCBpYW5hVGltZVpv
bmUgYmUgdGhlIGNvcnJlc3BvbmRpbmcgWm9uZSBuYW1lIGFzIHNwZWNpZmllZCBpbiB0aGUg4oCc
YmFja3dhcmTigJ0gZmlsZSBvZiB0aGUgSUFOQSBUaW1lIFpvbmUgRGF0YWJhc2UuCisKKyAgICAg
ICAgVmVjdG9yPFVDaGFyLCAzMj4gYnVmZmVyKGlhbmFUaW1lWm9uZUxlbmd0aCk7CisgICAgICAg
IFVCb29sIGlzU3lzdGVtSUQgPSBmYWxzZTsKKyAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9S
OworICAgICAgICBhdXRvIGNhbm9uaWNhbExlbmd0aCA9IHVjYWxfZ2V0Q2Fub25pY2FsVGltZVpv
bmVJRChpYW5hVGltZVpvbmUsIGlhbmFUaW1lWm9uZUxlbmd0aCwgYnVmZmVyLmRhdGEoKSwgaWFu
YVRpbWVab25lTGVuZ3RoLCAmaXNTeXN0ZW1JRCwgJnN0YXR1cyk7CisgICAgICAgIGlmIChzdGF0
dXMgPT0gVV9CVUZGRVJfT1ZFUkZMT1dfRVJST1IpIHsKKyAgICAgICAgICAgIGJ1ZmZlciA9IFZl
Y3RvcjxVQ2hhciwgMzI+KGNhbm9uaWNhbExlbmd0aCk7CisgICAgICAgICAgICBpc1N5c3RlbUlE
ID0gZmFsc2U7CisgICAgICAgICAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgICAg
ICB1Y2FsX2dldENhbm9uaWNhbFRpbWVab25lSUQoaWFuYVRpbWVab25lLCBpYW5hVGltZVpvbmVM
ZW5ndGgsIGJ1ZmZlci5kYXRhKCksIGNhbm9uaWNhbExlbmd0aCwgJmlzU3lzdGVtSUQsICZzdGF0
dXMpOworICAgICAgICB9CisgICAgICAgIEFTU0VSVChVX1NVQ0NFU1Moc3RhdHVzKSk7CisgICAg
ICAgIGNhbm9uaWNhbCA9IFN0cmluZyhidWZmZXIuZGF0YSgpLCBjYW5vbmljYWxMZW5ndGgpOwor
ICAgIH0KKyAgICB1ZW51bV9jbG9zZSh0aW1lWm9uZXMpOworCisgICAgLy8gMy4gSWYgaWFuYVRp
bWVab25lIGlzICJFdGMvVVRDIiBvciAiRXRjL0dNVCIsIHRoZW4gcmV0dXJuICJVVEMiLgorICAg
IGlmIChjYW5vbmljYWwgPT0gIkV0Yy9VVEMiIHx8IGNhbm9uaWNhbCA9PSAiRXRjL0dNVCIpCisg
ICAgICAgIGNhbm9uaWNhbCA9IEFTQ0lJTGl0ZXJhbCgiVVRDIik7CisKKyAgICAvLyA0LiBSZXR1
cm4gaWFuYVRpbWVab25lLgorICAgIHJldHVybiBjYW5vbmljYWw7Cit9CisKK3N0YXRpYyBWZWN0
b3I8U3RyaW5nPiBsb2NhbGVEYXRhKGNvbnN0IFN0cmluZyYgbG9jYWxlLCBjb25zdCBTdHJpbmcm
IGtleSkKK3sKKyAgICBpZiAoa2V5ID09ICJjYSIpIHsKKyAgICAgICAgVUVycm9yQ29kZSBzdGF0
dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgIFVFbnVtZXJhdGlvbiogY2FsZW5kYXJzID0gdWNh
bF9nZXRLZXl3b3JkVmFsdWVzRm9yTG9jYWxlKCJjYWxlbmRhciIsIGxvY2FsZS51dGY4KCkuZGF0
YSgpLCBmYWxzZSwgJnN0YXR1cyk7CisgICAgICAgIEFTU0VSVChVX1NVQ0NFU1Moc3RhdHVzKSk7
CisKKyAgICAgICAgVmVjdG9yPFN0cmluZz4gY2FEYXRhOworICAgICAgICBzdGF0dXMgPSBVX1pF
Uk9fRVJST1I7CisgICAgICAgIGludDMyX3QgbmFtZUxlbmd0aDsKKyAgICAgICAgd2hpbGUgKGNv
bnN0IGNoYXIqIGF2YWlsYWJsZU5hbWUgPSB1ZW51bV9uZXh0KGNhbGVuZGFycywgJm5hbWVMZW5n
dGgsICZzdGF0dXMpKSB7CisgICAgICAgICAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOwor
ICAgICAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICAgICAgU3RyaW5nIGNh
bGVuZGFyID0gU3RyaW5nKGF2YWlsYWJsZU5hbWUsIG5hbWVMZW5ndGgpOworICAgICAgICAgICAg
Y2FEYXRhLmFwcGVuZChjYWxlbmRhcik7CisgICAgICAgICAgICAvLyBFbnN1cmUgYWxpYXNlcyB1
c2VkIGluIGxhbmd1YWdlIHRhZyBhcmUgYWxsb3dlZC4KKyAgICAgICAgICAgIGlmIChjYWxlbmRh
ciA9PSAiZ3JlZ29yaWFuIikKKyAgICAgICAgICAgICAgICBjYURhdGEuYXBwZW5kKEFTQ0lJTGl0
ZXJhbCgiZ3JlZ29yeSIpKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNhbGVuZGFyID09ICJpc2xh
bWljLWNpdmlsIikKKyAgICAgICAgICAgICAgICBjYURhdGEuYXBwZW5kKEFTQ0lJTGl0ZXJhbCgi
aXNsYW1pY2MiKSk7CisgICAgICAgICAgICBlbHNlIGlmIChjYWxlbmRhciA9PSAiZXRoaW9waWMt
YW1ldGUtYWxlbSIpCisgICAgICAgICAgICAgICAgY2FEYXRhLmFwcGVuZChBU0NJSUxpdGVyYWwo
ImV0aGlvYWEiKSk7CisgICAgICAgIH0KKyAgICAgICAgdWVudW1fY2xvc2UoY2FsZW5kYXJzKTsK
KyAgICAgICAgcmV0dXJuIGNhRGF0YTsKKyAgICB9CisgICAgaWYgKGtleSA9PSAibnUiKQorICAg
ICAgICByZXR1cm4gZ2V0TnVtYmVyaW5nU3lzdGVtc0ZvckxvY2FsZShsb2NhbGUpOworICAgIHJl
dHVybiBWZWN0b3I8U3RyaW5nPigpOworfQorCitzdGF0aWMgSlNPYmplY3QqIHRvRGF0ZVRpbWVP
cHRpb25zKEV4ZWNTdGF0ZSYgc3RhdGUsIEpTVmFsdWUgb3JpZ2luYWxPcHRpb25zLCBjb25zdCBE
YXRlVGltZU9wdGlvblJlcXVpcmVkIHJlcXVpcmVkLCBjb25zdCBEYXRlVGltZU9wdGlvbkRlZmF1
bHRzIGRlZmF1bHRzKQoreworICAgIC8vIDEyLjEuMSBUb0RhdGVUaW1lT3B0aW9ucyBhYnN0cmFj
dCBvcGVyYXRpb24gKEVDTUEtNDAyIDIuMCkKKyAgICBWTSYgdm0gPSBzdGF0ZS52bSgpOworCisg
ICAgLy8gMS4gSWYgb3B0aW9ucyBpcyB1bmRlZmluZWQsIHRoZW4gbGV0IG9wdGlvbnMgYmUgbnVs
bCwgZWxzZSBsZXQgb3B0aW9ucyBiZSBUb09iamVjdChvcHRpb25zKS4KKyAgICAvLyAyLiBSZXR1
cm5JZkFicnVwdChvcHRpb25zKS4KKyAgICAvLyAzLiBMZXQgb3B0aW9ucyBiZSBPYmplY3RDcmVh
dGUob3B0aW9ucykuCisgICAgSlNPYmplY3QqIG9wdGlvbnM7CisgICAgaWYgKG9yaWdpbmFsT3B0
aW9ucy5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAgICAgICBvcHRpb25zID0gY29uc3RydWN0RW1w
dHlPYmplY3QoJnN0YXRlLCBzdGF0ZS5sZXhpY2FsR2xvYmFsT2JqZWN0KCktPm51bGxQcm90b3R5
cGVPYmplY3RTdHJ1Y3R1cmUoKSk7CisgICAgZWxzZSB7CisgICAgICAgIEpTT2JqZWN0KiBvcmln
aW5hbFRvT2JqZWN0ID0gb3JpZ2luYWxPcHRpb25zLnRvT2JqZWN0KCZzdGF0ZSk7CisgICAgICAg
IGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOwor
ICAgICAgICBvcHRpb25zID0gY29uc3RydWN0RW1wdHlPYmplY3QoJnN0YXRlLCBvcmlnaW5hbFRv
T2JqZWN0KTsKKyAgICB9CisKKyAgICAvLyA0LiBMZXQgbmVlZERlZmF1bHRzIGJlIHRydWUuCisg
ICAgYm9vbCBuZWVkRGVmYXVsdHMgPSB0cnVlOworCisgICAgLy8gNS4gSWYgcmVxdWlyZWQgaXMg
ImRhdGUiIG9yICJhbnkiLAorICAgIGlmIChyZXF1aXJlZCA9PSBEYXRlVGltZU9wdGlvblJlcXVp
cmVkOjpEYXRlIHx8IHJlcXVpcmVkID09IERhdGVUaW1lT3B0aW9uUmVxdWlyZWQ6OkFueSkgewor
ICAgICAgICAvLyBhLiBGb3IgZWFjaCBvZiB0aGUgcHJvcGVydHkgbmFtZXMgIndlZWtkYXkiLCAi
eWVhciIsICJtb250aCIsICJkYXkiOgorICAgICAgICAvLyBpLiBMZXQgcHJvcCBiZSB0aGUgcHJv
cGVydHkgbmFtZS4KKyAgICAgICAgLy8gaWkuIExldCB2YWx1ZSBiZSBHZXQob3B0aW9ucywgcHJv
cCkuCisgICAgICAgIC8vIGlpaS4gUmV0dXJuSWZBYnJ1cHQodmFsdWUpLgorICAgICAgICAvLyBp
di4gSWYgdmFsdWUgaXMgbm90IHVuZGVmaW5lZCwgdGhlbiBsZXQgbmVlZERlZmF1bHRzIGJlIGZh
bHNlLgorICAgICAgICBKU1ZhbHVlIHdlZWtkYXkgPSBvcHRpb25zLT5nZXQoJnN0YXRlLCB2bS5w
cm9wZXJ0eU5hbWVzLT53ZWVrZGF5KTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICghd2Vla2RheS5pc1Vu
ZGVmaW5lZCgpKQorICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisKKyAgICAgICAg
SlNWYWx1ZSB5ZWFyID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+eWVh
cik7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVy
biBudWxscHRyOworICAgICAgICBpZiAoIXllYXIuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAg
IG5lZWREZWZhdWx0cyA9IGZhbHNlOworCisgICAgICAgIEpTVmFsdWUgbW9udGggPSBvcHRpb25z
LT5nZXQoJnN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT5tb250aCk7CisgICAgICAgIGlmIChzdGF0
ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBp
ZiAoIW1vbnRoLmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxz
ZTsKKworICAgICAgICBKU1ZhbHVlIGRheSA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZtLnByb3Bl
cnR5TmFtZXMtPmRheSk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAg
ICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBpZiAoIWRheS5pc1VuZGVmaW5lZCgpKQor
ICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisgICAgfQorCisgICAgLy8gNi4gSWYg
cmVxdWlyZWQgaXMgInRpbWUiIG9yICJhbnkiLAorICAgIGlmIChyZXF1aXJlZCA9PSBEYXRlVGlt
ZU9wdGlvblJlcXVpcmVkOjpUaW1lIHx8IHJlcXVpcmVkID09IERhdGVUaW1lT3B0aW9uUmVxdWly
ZWQ6OkFueSkgeworICAgICAgICAvLyBhLiBGb3IgZWFjaCBvZiB0aGUgcHJvcGVydHkgbmFtZXMg
ImhvdXIiLCAibWludXRlIiwgInNlY29uZCI6CisgICAgICAgIC8vIGkuIExldCBwcm9wIGJlIHRo
ZSBwcm9wZXJ0eSBuYW1lLgorICAgICAgICAvLyBpaS4gTGV0IHZhbHVlIGJlIEdldChvcHRpb25z
LCBwcm9wKS4KKyAgICAgICAgLy8gaWlpLiBSZXR1cm5JZkFicnVwdCh2YWx1ZSkuCisgICAgICAg
IC8vIGl2LiBJZiB2YWx1ZSBpcyBub3QgdW5kZWZpbmVkLCB0aGVuIGxldCBuZWVkRGVmYXVsdHMg
YmUgZmFsc2UuCisgICAgICAgIEpTVmFsdWUgaG91ciA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZt
LnByb3BlcnR5TmFtZXMtPmhvdXIpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkp
CisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCFob3VyLmlzVW5kZWZp
bmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKworICAgICAgICBKU1Zh
bHVlIG1pbnV0ZSA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPm1pbnV0
ZSk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVy
biBudWxscHRyOworICAgICAgICBpZiAoIW1pbnV0ZS5pc1VuZGVmaW5lZCgpKQorICAgICAgICAg
ICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisKKyAgICAgICAgSlNWYWx1ZSBzZWNvbmQgPSBvcHRp
b25zLT5nZXQoJnN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT5zZWNvbmQpOworICAgICAgICBpZiAo
c3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAg
ICAgaWYgKCFzZWNvbmQuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZhdWx0cyA9
IGZhbHNlOworICAgIH0KKworICAgIC8vIDcuIElmIG5lZWREZWZhdWx0cyBpcyB0cnVlIGFuZCBk
ZWZhdWx0cyBpcyBlaXRoZXIgImRhdGUiIG9yICJhbGwiLCB0aGVuCisgICAgaWYgKG5lZWREZWZh
dWx0cyAmJiAoZGVmYXVsdHMgPT0gRGF0ZVRpbWVPcHRpb25EZWZhdWx0czo6RGF0ZSB8fCBkZWZh
dWx0cyA9PSBEYXRlVGltZU9wdGlvbkRlZmF1bHRzOjpBbGwpKSB7CisgICAgICAgIC8vIGEuIEZv
ciBlYWNoIG9mIHRoZSBwcm9wZXJ0eSBuYW1lcyAieWVhciIsICJtb250aCIsICJkYXkiOgorICAg
ICAgICAvLyBpLiBMZXQgc3RhdHVzIGJlIENyZWF0ZURhdGVQcm9wZXJ0eU9yVGhyb3cob3B0aW9u
cywgcHJvcCwgIm51bWVyaWMiKS4KKyAgICAgICAgLy8gaWkuIFJldHVybklmQWJydXB0KHN0YXR1
cykuCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+eWVh
ciwganNTdHJpbmcoJnN0YXRlLCAibnVtZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICAgICAgb3B0aW9u
cy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5tb250aCwganNTdHJpbmcoJnN0YXRl
LCAibnVtZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2
bS5wcm9wZXJ0eU5hbWVzLT5kYXksIGpzU3RyaW5nKCZzdGF0ZSwgIm51bWVyaWMiKSk7CisgICAg
ICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRy
OworICAgIH0KKworICAgIC8vIDguIElmIG5lZWREZWZhdWx0cyBpcyB0cnVlIGFuZCBkZWZhdWx0
cyBpcyBlaXRoZXIgInRpbWUiIG9yICJhbGwiLCB0aGVuCisgICAgaWYgKG5lZWREZWZhdWx0cyAm
JiAoZGVmYXVsdHMgPT0gRGF0ZVRpbWVPcHRpb25EZWZhdWx0czo6VGltZSB8fCBkZWZhdWx0cyA9
PSBEYXRlVGltZU9wdGlvbkRlZmF1bHRzOjpBbGwpKSB7CisgICAgICAgIC8vIGEuIEZvciBlYWNo
IG9mIHRoZSBwcm9wZXJ0eSBuYW1lcyAiaG91ciIsICJtaW51dGUiLCAic2Vjb25kIjoKKyAgICAg
ICAgLy8gaS4gTGV0IHN0YXR1cyBiZSBDcmVhdGVEYXRlUHJvcGVydHlPclRocm93KG9wdGlvbnMs
IHByb3AsICJudW1lcmljIikuCisgICAgICAgIC8vIGlpLiBSZXR1cm5JZkFicnVwdChzdGF0dXMp
LgorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmhvdXIs
IGpzU3RyaW5nKCZzdGF0ZSwgIm51bWVyaWMiKSk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNl
cHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgICAgIG9wdGlvbnMt
PnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bWludXRlLCBqc1N0cmluZygmc3RhdGUs
ICJudW1lcmljIikpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZt
LnByb3BlcnR5TmFtZXMtPnNlY29uZCwganNTdHJpbmcoJnN0YXRlLCAibnVtZXJpYyIpKTsKKyAg
ICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CisgICAgfQorCisgICAgLy8gOS4gUmV0dXJuIG9wdGlvbnMuCisgICAgcmV0dXJuIG9wdGlv
bnM7Cit9CisKK3N0YXRpYyB2b2lkIHNldEZvcm1hdHNGcm9tUGF0dGVybihJbnRsRGF0ZVRpbWVG
b3JtYXQmIGRhdGVUaW1lRm9ybWF0LCBjb25zdCBTdHJpbmdWaWV3JiBwYXR0ZXJuKQoreworICAg
IC8vIEdldCBhbGwgc3ltYm9scyBmcm9tIHRoZSBwYXR0ZXJuLCBhbmQgc2V0IGZvcm1hdCBmaWVs
ZHMgYWNjb3JkaW5nbHkuCisgICAgLy8gaHR0cDovL3VuaWNvZGUub3JnL3JlcG9ydHMvdHIzNS90
cjM1LWRhdGVzLmh0bWwjRGF0ZV9GaWVsZF9TeW1ib2xfVGFibGUKKyAgICB1bnNpZ25lZCBsZW5n
dGggPSBwYXR0ZXJuLmxlbmd0aCgpOworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBsZW5n
dGg7ICsraSkgeworICAgICAgICBVQ2hhciBjdXJyZW50Q2hhcmFjdGVyID0gcGF0dGVybltpXTsK
KyAgICAgICAgaWYgKCFpc0FTQ0lJQWxwaGEoY3VycmVudENoYXJhY3RlcikpCisgICAgICAgICAg
ICBjb250aW51ZTsKKworICAgICAgICB1bnNpZ25lZCBjb3VudCA9IDE7CisgICAgICAgIHdoaWxl
IChpICsgMSA8IGxlbmd0aCAmJiBwYXR0ZXJuW2kgKyAxXSA9PSBjdXJyZW50Q2hhcmFjdGVyKSB7
CisgICAgICAgICAgICArK2NvdW50OworICAgICAgICAgICAgKytpOworICAgICAgICB9CisKKyAg
ICAgICAgaWYgKGN1cnJlbnRDaGFyYWN0ZXIgPT0gJ2gnIHx8IGN1cnJlbnRDaGFyYWN0ZXIgPT0g
J0snKQorICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0SG91cjEyKHRydWUpOworICAgICAg
ICBlbHNlIGlmIChjdXJyZW50Q2hhcmFjdGVyID09ICdIJyB8fCBjdXJyZW50Q2hhcmFjdGVyID09
ICdrJykKKyAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldEhvdXIxMihmYWxzZSk7CisKKyAg
ICAgICAgc3dpdGNoIChjdXJyZW50Q2hhcmFjdGVyKSB7CisgICAgICAgIGNhc2UgJ0cnOgorICAg
ICAgICAgICAgaWYgKGNvdW50ID09IDMpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQu
c2V0RXJhKEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6OlNob3J0KTsKKyAgICAgICAgICAg
IGVsc2UgaWYgKGNvdW50ID09IDQpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0
RXJhKEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6OkxvbmcpOworICAgICAgICAgICAgZWxz
ZSBpZiAoY291bnQgPT0gNSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRFcmEo
SW50bERhdGVUaW1lRm9ybWF0OjpFcmFTdHlsZTo6TmFycm93KTsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBjYXNlICd5JzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAg
ICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldFllYXIoSW50bERhdGVUaW1lRm9ybWF0OjpZZWFy
U3R5bGU6Ok51bWVyaWMpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAg
ICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRZZWFyKEludGxEYXRlVGltZUZvcm1hdDo6WWVh
clN0eWxlOjpUd29EaWdpdCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAnTSc6
CisgICAgICAgIGNhc2UgJ0wnOgorICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisgICAgICAg
ICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0TW9udGgoSW50bERhdGVUaW1lRm9ybWF0OjpNb250
aFN0eWxlOjpOdW1lcmljKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAg
ICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0TW9udGgoSW50bERhdGVUaW1lRm9ybWF0OjpN
b250aFN0eWxlOjpUd29EaWdpdCk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSAzKQor
ICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldE1vbnRoKEludGxEYXRlVGltZUZvcm1h
dDo6TW9udGhTdHlsZTo6U2hvcnQpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNCkK
KyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRNb250aChJbnRsRGF0ZVRpbWVGb3Jt
YXQ6Ok1vbnRoU3R5bGU6OkxvbmcpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNSkK
KyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRNb250aChJbnRsRGF0ZVRpbWVGb3Jt
YXQ6Ok1vbnRoU3R5bGU6Ok5hcnJvdyk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2Fz
ZSAnRSc6CisgICAgICAgICAgICBpZiAoY291bnQgPT0gMykKKyAgICAgICAgICAgICAgICBkYXRl
VGltZUZvcm1hdC5zZXRXZWVrZGF5KEludGxEYXRlVGltZUZvcm1hdDo6V2Vla2RheVN0eWxlOjpT
aG9ydCk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA0KQorICAgICAgICAgICAgICAg
IGRhdGVUaW1lRm9ybWF0LnNldFdlZWtkYXkoSW50bERhdGVUaW1lRm9ybWF0OjpXZWVrZGF5U3R5
bGU6OkxvbmcpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNSkKKyAgICAgICAgICAg
ICAgICBkYXRlVGltZUZvcm1hdC5zZXRXZWVrZGF5KEludGxEYXRlVGltZUZvcm1hdDo6V2Vla2Rh
eVN0eWxlOjpOYXJyb3cpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ2QnOgor
ICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3Jt
YXQuc2V0RGF5KEludGxEYXRlVGltZUZvcm1hdDo6RGF5U3R5bGU6Ok51bWVyaWMpOworICAgICAg
ICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1h
dC5zZXREYXkoSW50bERhdGVUaW1lRm9ybWF0OjpEYXlTdHlsZTo6VHdvRGlnaXQpOworICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ2gnOgorICAgICAgICBjYXNlICdIJzoKKyAgICAg
ICAgY2FzZSAnayc6CisgICAgICAgIGNhc2UgJ0snOgorICAgICAgICAgICAgaWYgKGNvdW50ID09
IDEpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0SG91cihJbnRsRGF0ZVRpbWVG
b3JtYXQ6OkhvdXJTdHlsZTo6TnVtZXJpYyk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9
PSAyKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldEhvdXIoSW50bERhdGVUaW1l
Rm9ybWF0OjpIb3VyU3R5bGU6OlR3b0RpZ2l0KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICBjYXNlICdtJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAg
IGRhdGVUaW1lRm9ybWF0LnNldE1pbnV0ZShJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1pbnV0ZVN0eWxl
OjpOdW1lcmljKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAgICAgICAg
ICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0TWludXRlKEludGxEYXRlVGltZUZvcm1hdDo6TWludXRl
U3R5bGU6OlR3b0RpZ2l0KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdzJzoK
KyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9y
bWF0LnNldFNlY29uZChJbnRsRGF0ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpOdW1lcmljKTsK
KyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAgICAgICAgICAgICAgZGF0ZVRp
bWVGb3JtYXQuc2V0U2Vjb25kKEludGxEYXRlVGltZUZvcm1hdDo6U2Vjb25kU3R5bGU6OlR3b0Rp
Z2l0KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICd6JzoKKyAgICAgICAgY2Fz
ZSAndic6CisgICAgICAgIGNhc2UgJ1YnOgorICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisg
ICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0VGltZVpvbmVOYW1lKEludGxEYXRlVGlt
ZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6OlNob3J0KTsKKyAgICAgICAgICAgIGVsc2UgaWYg
KGNvdW50ID09IDQpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0VGltZVpvbmVO
YW1lKEludGxEYXRlVGltZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6OkxvbmcpOworICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9Cit9CisKK0pTVmFsdWUgaW5pdGlhbGl6ZURh
dGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSYgc3RhdGUsIEludGxEYXRlVGltZUZvcm1hdCYgZGF0ZVRp
bWVGb3JtYXQsIEpTVmFsdWUgbG9jYWxlcywgSlNWYWx1ZSBvcmlnaW5hbE9wdGlvbnMpCit7Cisg
ICAgLy8gMTIuMS4xIEluaXRpYWxpemVEYXRlVGltZUZvcm1hdCAoZGF0ZVRpbWVGb3JtYXQsIGxv
Y2FsZXMsIG9wdGlvbnMpIChFQ01BLTQwMiAyLjApCisgICAgLy8gMS4gSWYgZGF0ZVRpbWVGb3Jt
YXQuW1tpbml0aWFsaXplZEludGxPYmplY3RdXSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBl
eGNlcHRpb24uCisgICAgaWYgKGRhdGVUaW1lRm9ybWF0LmluaXRpYWxpemVkSW50bE9iamVjdCgp
KQorICAgICAgICB0aHJvd1R5cGVFcnJvcigmc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiT2JqZWN0IGFs
cmVhZHkgaW5pdGlhbGl6ZWQiKSk7CisKKyAgICAvLyAyLiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tp
bml0aWFsaXplZEludGxPYmplY3RdXSB0byB0cnVlLgorICAgIGRhdGVUaW1lRm9ybWF0LnNldElu
aXRpYWxpemVkSW50bE9iamVjdCgpOworCisgICAgLy8gMy4gTGV0IHJlcXVlc3RlZExvY2FsZXMg
YmUgQ2Fub25pY2FsaXplTG9jYWxlTGlzdChsb2NhbGVzKS4KKyAgICBWZWN0b3I8U3RyaW5nPiBy
ZXF1ZXN0ZWRMb2NhbGVzID0gY2Fub25pY2FsaXplTG9jYWxlTGlzdChzdGF0ZSwgbG9jYWxlcyk7
CisgICAgLy8gNC4gUmV0dXJuSWZBYnJ1cHQocmVxdWVzdGVkTG9jYWxlcyksCisgICAgaWYgKHN0
YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAg
IC8vIDUuIExldCBvcHRpb25zIGJlIFRvRGF0ZVRpbWVPcHRpb25zKG9wdGlvbnMsICJhbnkiLCAi
ZGF0ZSIpLgorICAgIEpTT2JqZWN0KiBvcHRpb25zID0gdG9EYXRlVGltZU9wdGlvbnMoc3RhdGUs
IG9yaWdpbmFsT3B0aW9ucywgRGF0ZVRpbWVPcHRpb25SZXF1aXJlZDo6QW55LCBEYXRlVGltZU9w
dGlvbkRlZmF1bHRzOjpEYXRlKTsKKyAgICAvLyA2LiBSZXR1cm5JZkFicnVwdChvcHRpb25zKS4K
KyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5l
ZCgpOworCisgICAgLy8gNy4gTGV0IG9wdCBiZSBhIG5ldyBSZWNvcmQuCisgICAgSGFzaE1hcDxT
dHJpbmcsIFN0cmluZz4gbG9jYWxlT3B0OworCisgICAgLy8gOC4gTGV0IG1hdGNoZXIgYmUgR2V0
T3B0aW9uKG9wdGlvbnMsICJsb2NhbGVNYXRjaGVyIiwgInN0cmluZyIsIMKrImxvb2t1cCIsICJi
ZXN0IGZpdCLCuywgImJlc3QgZml0IikuCisgICAgVk0mIHZtID0gc3RhdGUudm0oKTsKKyAgICBj
b25zdCBIYXNoU2V0PFN0cmluZz4gbG9jYWxlTWF0Y2hlcnMoeyBBU0NJSUxpdGVyYWwoImxvb2t1
cCIpLCBBU0NJSUxpdGVyYWwoImJlc3QgZml0IikgfSk7CisgICAgU3RyaW5nIGxvY2FsZU1hdGNo
ZXIgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5s
b2NhbGVNYXRjaGVyLCBsb2NhbGVNYXRjaGVycywgImxvY2FsZU1hdGNoZXIgbXVzdCBiZSBlaXRo
ZXIgXCJsb29rdXBcIiBvciBcImJlc3QgZml0XCIiLCBBU0NJSUxpdGVyYWwoImJlc3QgZml0Iikp
OworICAgIC8vIDkuIFJldHVybklmQWJydXB0KG1hdGNoZXIpLgorICAgIGlmIChzdGF0ZS5oYWRF
eGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgLy8gMTAuIFNl
dCBvcHQuW1tsb2NhbGVNYXRjaGVyXV0gdG8gbWF0Y2hlci4KKyAgICBsb2NhbGVPcHQuc2V0KHZt
LnByb3BlcnR5TmFtZXMtPmxvY2FsZU1hdGNoZXIuc3RyaW5nKCksIGxvY2FsZU1hdGNoZXIpOwor
CisgICAgLy8gMTEuIExldCBsb2NhbGVEYXRhIGJlIHRoZSB2YWx1ZSBvZiAlRGF0ZVRpbWVGb3Jt
YXQlLltbbG9jYWxlRGF0YV1dLgorICAgIC8vIDEyLiBMZXQgciBiZSBSZXNvbHZlTG9jYWxlKCAl
RGF0ZVRpbWVGb3JtYXQlLltbYXZhaWxhYmxlTG9jYWxlc11dLCByZXF1ZXN0ZWRMb2NhbGVzLCBv
cHQsICVEYXRlVGltZUZvcm1hdCUuW1tyZWxldmFudEV4dGVuc2lvbktleXNdXSwgbG9jYWxlRGF0
YSkuCisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IGF2YWlsYWJsZUxvY2FsZXMgPSBzdGF0ZS5s
ZXhpY2FsR2xvYmFsT2JqZWN0KCktPmludGxEYXRlVGltZUZvcm1hdEF2YWlsYWJsZUxvY2FsZXMo
KTsKKyAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiByZWxldmFudEV4dGVuc2lvbktleXMgPSB7IEFT
Q0lJTGl0ZXJhbCgiY2EiKSwgQVNDSUlMaXRlcmFsKCJudSIpIH07CisgICAgSGFzaE1hcDxTdHJp
bmcsIFN0cmluZz4gcmVzb2x2ZWQgPSByZXNvbHZlTG9jYWxlKGF2YWlsYWJsZUxvY2FsZXMsIHJl
cXVlc3RlZExvY2FsZXMsIGxvY2FsZU9wdCwgcmVsZXZhbnRFeHRlbnNpb25LZXlzLCBsb2NhbGVE
YXRhKTsKKworICAgIC8vIDEzLiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tsb2NhbGVdXSB0byB0aGUg
dmFsdWUgb2Ygci5bW2xvY2FsZV1dLgorICAgIGRhdGVUaW1lRm9ybWF0LnNldExvY2FsZShyZXNv
bHZlZC5nZXQodm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlLnN0cmluZygpKSk7CisgICAgLy8gMTQu
IFNldCBkYXRlVGltZUZvcm1hdC5bW2NhbGVuZGFyXV0gdG8gdGhlIHZhbHVlIG9mIHIuW1tjYV1d
LgorICAgIFN0cmluZyBjYWxlbmRhciA9IHJlc29sdmVkLmdldChBU0NJSUxpdGVyYWwoImNhIikp
OworICAgIC8vIFN3aXRjaCB0byBwcmVmZXJyZWQgYWxpYXNlcy4KKyAgICBpZiAoY2FsZW5kYXIg
PT0gImdyZWdvcnkiKQorICAgICAgICBjYWxlbmRhciA9IEFTQ0lJTGl0ZXJhbCgiZ3JlZ29yaWFu
Iik7CisgICAgZWxzZSBpZiAoY2FsZW5kYXIgPT0gImlzbGFtaWNjIikKKyAgICAgICAgY2FsZW5k
YXIgPSBBU0NJSUxpdGVyYWwoImlzbGFtaWMtY2l2aWwiKTsKKyAgICBlbHNlIGlmIChjYWxlbmRh
ciA9PSAiZXRoaW9hYSIpCisgICAgICAgIGNhbGVuZGFyID0gQVNDSUlMaXRlcmFsKCJldGhpb3Bp
Yy1hbWV0ZS1hbGVtIik7CisgICAgZGF0ZVRpbWVGb3JtYXQuc2V0Q2FsZW5kYXIoY2FsZW5kYXIp
OworICAgIC8vIDE1LiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tudW1iZXJpbmdTeXN0ZW1dXSB0byB0
aGUgdmFsdWUgb2Ygci5bW251XV0uCisgICAgZGF0ZVRpbWVGb3JtYXQuc2V0TnVtYmVyaW5nU3lz
dGVtKHJlc29sdmVkLmdldChBU0NJSUxpdGVyYWwoIm51IikpKTsKKyAgICAvLyAxNi4gTGV0IGRh
dGFMb2NhbGUgYmUgdGhlIHZhbHVlIG9mIHIuW1tkYXRhTG9jYWxlXV0uCisgICAgU3RyaW5nIGRh
dGFMb2NhbGUgPSByZXNvbHZlZC5nZXQoQVNDSUlMaXRlcmFsKCJkYXRhTG9jYWxlIikpOworCisg
ICAgLy8gMTcuIExldCB0eiBiZSBHZXQob3B0aW9ucywgInRpbWVab25lIikuCisgICAgSlNWYWx1
ZSB0elZhbHVlID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+dGltZVpv
bmUpOworICAgIC8vIDE4LiBSZXR1cm5JZkFicnVwdCh0eikuCisgICAgaWYgKHN0YXRlLmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAgIC8vIDE5LiBJ
ZiB0eiBpcyBub3QgdW5kZWZpbmVkLCB0aGVuCisgICAgU3RyaW5nIHR6OworICAgIGlmICghdHpW
YWx1ZS5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIC8vIGEuIExldCB0eiBiZSBUb1N0cmluZyh0
eikuCisgICAgICAgIFN0cmluZyBvcmlnaW5hbFR6ID0gdHpWYWx1ZS50b1dURlN0cmluZygmc3Rh
dGUpOworICAgICAgICAvLyBiLiBSZXR1cm5JZkFicnVwdCh0eikuCisgICAgICAgIGlmIChzdGF0
ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAg
ICAgICAvLyBjLiBJZiB0aGUgcmVzdWx0IG9mIElzVmFsaWRUaW1lWm9uZU5hbWUodHopIGlzIGZh
bHNlLCB0aGVuIGkuIFRocm93IGEgUmFuZ2VFcnJvciBleGNlcHRpb24uCisgICAgICAgIC8vIGQu
IExldCB0eiBiZSBDYW5vbmljYWxpemVUaW1lWm9uZU5hbWUodHopLgorICAgICAgICB0eiA9IGNh
bm9uaWNhbGl6ZVRpbWVab25lTmFtZShvcmlnaW5hbFR6KTsKKyAgICAgICAgaWYgKHR6LmlzTnVs
bCgpKQorICAgICAgICAgICAgcmV0dXJuIHRocm93UmFuZ2VFcnJvcigmc3RhdGUsIFN0cmluZzo6
Zm9ybWF0KCJpbnZhbGlkIHRpbWUgem9uZTogJXMiLCBvcmlnaW5hbFR6LnV0ZjgoKS5kYXRhKCkp
KTsKKyAgICB9IGVsc2UKKyAgICAvLyAyMC4gRWxzZSwKKyAgICAgICAgLy8gYS4gTGV0IHR6IGJl
IERlZmF1bHRUaW1lWm9uZSgpLgorICAgICAgICB0eiA9IGRlZmF1bHRUaW1lWm9uZSgpOworCisg
ICAgLy8gMjEuIFNldCBkYXRlVGltZUZvcm1hdC5bW3RpbWVab25lXV0gdG8gdHouCisgICAgZGF0
ZVRpbWVGb3JtYXQuc2V0VGltZVpvbmUodHopOworCisgICAgLy8gMjIuIExldCBvcHQgYmUgYSBu
ZXcgUmVjb3JkLgorICAgIC8vIFJhdGhlciB0aGFuIGJ1aWxkaW5nIGEgcmVjb3JkLCBidWlsZCB0
aGUgc2tlbGV0b24gcGF0dGVybi4KKyAgICBTdHJpbmdCdWlsZGVyIGZvcm1hdE9wdDsKKworICAg
IC8vIDIzLiBGb3IgZWFjaCByb3cgb2YgVGFibGUgMywgZXhjZXB0IHRoZSBoZWFkZXIgcm93LCBk
bzoKKyAgICAvLyBhLiBMZXQgcHJvcCBiZSB0aGUgbmFtZSBnaXZlbiBpbiB0aGUgUHJvcGVydHkg
Y29sdW1uIG9mIHRoZSByb3cuCisgICAgLy8gYi4gTGV0IHZhbHVlIGJlIEdldE9wdGlvbihvcHRp
b25zLCBwcm9wLCAic3RyaW5nIiwgwqt0aGUgc3RyaW5ncyBnaXZlbiBpbiB0aGUgVmFsdWVzIGNv
bHVtbiBvZiB0aGUgcm93wrssIHVuZGVmaW5lZCkuCisgICAgLy8gYy4gUmV0dXJuSWZBYnJ1cHQo
dmFsdWUpLgorICAgIC8vIGQuIFNldCBvcHQuW1s8cHJvcD5dXSB0byB2YWx1ZS4KKyAgICBjb25z
dCBIYXNoU2V0PFN0cmluZz4gbmFycm93U2hvcnRMb25nKHsgQVNDSUlMaXRlcmFsKCJuYXJyb3ci
KSwgQVNDSUlMaXRlcmFsKCJzaG9ydCIpLCBBU0NJSUxpdGVyYWwoImxvbmciKSB9KTsKKyAgICBj
b25zdCBIYXNoU2V0PFN0cmluZz4gdHdvRGlnaXROdW1lcmljKHsgQVNDSUlMaXRlcmFsKCIyLWRp
Z2l0IiksIEFTQ0lJTGl0ZXJhbCgibnVtZXJpYyIpIH0pOworICAgIGNvbnN0IEhhc2hTZXQ8U3Ry
aW5nPiB0d29EaWdpdE51bWVyaWNOYXJyb3dTaG9ydExvbmcoeyBBU0NJSUxpdGVyYWwoIjItZGln
aXQiKSwgQVNDSUlMaXRlcmFsKCJudW1lcmljIiksIEFTQ0lJTGl0ZXJhbCgibmFycm93IiksIEFT
Q0lJTGl0ZXJhbCgic2hvcnQiKSwgQVNDSUlMaXRlcmFsKCJsb25nIikgfSk7CisgICAgY29uc3Qg
SGFzaFNldDxTdHJpbmc+IHNob3J0TG9uZyh7IEFTQ0lJTGl0ZXJhbCgic2hvcnQiKSwgQVNDSUlM
aXRlcmFsKCJsb25nIikgfSk7CisKKyAgICBTdHJpbmcgd2Vla2RheSA9IGludGxTdHJpbmdPcHRp
b24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPndlZWtkYXksIG5hcnJvd1Nob3J0
TG9uZywgIndlZWtkYXkgbXVzdCBiZSBcIm5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwibG9uZ1wi
IiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCF3ZWVrZGF5LmlzTnVsbCgpKSB7CisgICAgICAg
IGlmICh3ZWVrZGF5ID09ICJuYXJyb3ciKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExp
dGVyYWwoIkVFRUVFIik7CisgICAgICAgIGVsc2UgaWYgKHdlZWtkYXkgPT0gInNob3J0IikKKyAg
ICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRlcmFsKCJFRUUiKTsKKyAgICAgICAgZWxzZSBp
ZiAod2Vla2RheSA9PSAibG9uZyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kTGl0ZXJh
bCgiRUVFRSIpOworICAgIH0KKworICAgIFN0cmluZyBlcmEgPSBpbnRsU3RyaW5nT3B0aW9uKHN0
YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5lcmEsIG5hcnJvd1Nob3J0TG9uZywgImVy
YSBtdXN0IGJlIFwibmFycm93XCIsIFwic2hvcnRcIiwgb3IgXCJsb25nXCIiLCBTdHJpbmcoKSk7
CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmlu
ZWQoKTsKKyAgICBpZiAoIWVyYS5pc051bGwoKSkgeworICAgICAgICBpZiAoZXJhID09ICJuYXJy
b3ciKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoIkdHR0dHIik7CisgICAg
ICAgIGVsc2UgaWYgKGVyYSA9PSAic2hvcnQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVu
ZExpdGVyYWwoIkdHRyIpOworICAgICAgICBlbHNlIGlmIChlcmEgPT0gImxvbmciKQorICAgICAg
ICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoIkdHR0ciKTsKKyAgICB9CisKKyAgICBTdHJp
bmcgeWVhciA9IGludGxTdHJpbmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFt
ZXMtPnllYXIsIHR3b0RpZ2l0TnVtZXJpYywgInllYXIgbXVzdCBiZSBcIjItZGlnaXRcIiBvciBc
Im51bWVyaWNcIiIsIFN0cmluZygpKTsKKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisg
ICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIGlmICgheWVhci5pc051bGwoKSkgewor
ICAgICAgICBpZiAoeWVhciA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBw
ZW5kTGl0ZXJhbCgieXkiKTsKKyAgICAgICAgZWxzZSBpZiAoeWVhciA9PSAibnVtZXJpYyIpCisg
ICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCd5Jyk7CisgICAgfQorCisgICAgU3RyaW5nIG1v
bnRoID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+
bW9udGgsIHR3b0RpZ2l0TnVtZXJpY05hcnJvd1Nob3J0TG9uZywgIm1vbnRoIG11c3QgYmUgXCIy
LWRpZ2l0XCIsIFwibnVtZXJpY1wiLCBcIm5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwibG9uZ1wi
IiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCFtb250aC5pc051bGwoKSkgeworICAgICAgICBp
ZiAobW9udGggPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVy
YWwoIk1NIik7CisgICAgICAgIGVsc2UgaWYgKG1vbnRoID09ICJudW1lcmljIikKKyAgICAgICAg
ICAgIGZvcm1hdE9wdC5hcHBlbmQoJ00nKTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gIm5h
cnJvdyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kTGl0ZXJhbCgiTU1NTU0iKTsKKyAg
ICAgICAgZWxzZSBpZiAobW9udGggPT0gInNob3J0IikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5h
cHBlbmRMaXRlcmFsKCJNTU0iKTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gImxvbmciKQor
ICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoIk1NTU0iKTsKKyAgICB9CisKKyAg
ICBTdHJpbmcgZGF5ID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVy
dHlOYW1lcy0+ZGF5LCB0d29EaWdpdE51bWVyaWMsICJkYXkgbXVzdCBiZSBcIjItZGlnaXRcIiBv
ciBcIm51bWVyaWNcIiIsIFN0cmluZygpKTsKKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkp
CisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIGlmICghZGF5LmlzTnVsbCgpKSB7
CisgICAgICAgIGlmIChkYXkgPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFw
cGVuZExpdGVyYWwoImRkIik7CisgICAgICAgIGVsc2UgaWYgKGRheSA9PSAibnVtZXJpYyIpCisg
ICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCdkJyk7CisgICAgfQorCisgICAgU3RyaW5nIGhv
dXIgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5o
b3VyLCB0d29EaWdpdE51bWVyaWMsICJob3VyIG11c3QgYmUgXCIyLWRpZ2l0XCIgb3IgXCJudW1l
cmljXCIiLCBTdHJpbmcoKSk7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAg
ICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAgIC8vIFdlIG5lZWQgaG91cjEyIHRvIG1ha2Ug
dGhlIGhvdXIgc2tlbGV0b24gcGF0dGVybiBkZWNpc2lvbiwgc28gZG8gdGhpcyBlYXJseS4KKyAg
ICAvLyAzMi4gTGV0IGhyMTIgYmUgR2V0T3B0aW9uKG9wdGlvbnMsICJob3VyMTIiLCAiYm9vbGVh
biIsIHVuZGVmaW5lZCwgdW5kZWZpbmVkKS4KKyAgICBib29sIGlzSG91cjEyVW5kZWZpbmVkID0g
dHJ1ZTsKKyAgICBib29sIGhyMTIgPSBpbnRsQm9vbGVhbk9wdGlvbihzdGF0ZSwgb3B0aW9ucywg
dm0ucHJvcGVydHlOYW1lcy0+aG91cjEyLCBpc0hvdXIxMlVuZGVmaW5lZCk7CisgICAgLy8gMzMu
IFJldHVybklmQWJydXB0KGhyMTIpLgorICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAg
ICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisKKyAgICBpZiAoIWhvdXIuaXNOdWxsKCkpIHsK
KyAgICAgICAgaWYgKGlzSG91cjEyVW5kZWZpbmVkKSB7CisgICAgICAgICAgICBpZiAoaG91ciA9
PSAiMi1kaWdpdCIpCisgICAgICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoImpq
Iik7CisgICAgICAgICAgICBlbHNlIGlmIChob3VyID09ICJudW1lcmljIikKKyAgICAgICAgICAg
ICAgICBmb3JtYXRPcHQuYXBwZW5kKCdqJyk7CisgICAgICAgIH0gZWxzZSBpZiAoaHIxMikgewor
ICAgICAgICAgICAgaWYgKGhvdXIgPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgICAgIGZvcm1h
dE9wdC5hcHBlbmRMaXRlcmFsKCJoaCIpOworICAgICAgICAgICAgZWxzZSBpZiAoaG91ciA9PSAi
bnVtZXJpYyIpCisgICAgICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgnaCcpOworICAgICAg
ICB9IGVsc2UgeworICAgICAgICAgICAgaWYgKGhvdXIgPT0gIjItZGlnaXQiKQorICAgICAgICAg
ICAgICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRlcmFsKCJISCIpOworICAgICAgICAgICAgZWxzZSBp
ZiAoaG91ciA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgn
SCcpOworICAgICAgICB9CisgICAgfQorCisgICAgU3RyaW5nIG1pbnV0ZSA9IGludGxTdHJpbmdP
cHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPm1pbnV0ZSwgdHdvRGlnaXRO
dW1lcmljLCAibWludXRlIG11c3QgYmUgXCIyLWRpZ2l0XCIgb3IgXCJudW1lcmljXCIiLCBTdHJp
bmcoKSk7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNV
bmRlZmluZWQoKTsKKyAgICBpZiAoIW1pbnV0ZS5pc051bGwoKSkgeworICAgICAgICBpZiAobWlu
dXRlID09ICIyLWRpZ2l0IikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRlcmFsKCJt
bSIpOworICAgICAgICBlbHNlIGlmIChtaW51dGUgPT0gIm51bWVyaWMiKQorICAgICAgICAgICAg
Zm9ybWF0T3B0LmFwcGVuZCgnbScpOworICAgIH0KKworICAgIFN0cmluZyBzZWNvbmQgPSBpbnRs
U3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5zZWNvbmQsIHR3
b0RpZ2l0TnVtZXJpYywgInNlY29uZCBtdXN0IGJlIFwiMi1kaWdpdFwiIG9yIFwibnVtZXJpY1wi
IiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCFzZWNvbmQuaXNOdWxsKCkpIHsKKyAgICAgICAg
aWYgKHNlY29uZCA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kTGl0
ZXJhbCgic3MiKTsKKyAgICAgICAgZWxzZSBpZiAoc2Vjb25kID09ICJudW1lcmljIikKKyAgICAg
ICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoJ3MnKTsKKyAgICB9CisKKyAgICBTdHJpbmcgdGltZVpv
bmVOYW1lID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1l
cy0+dGltZVpvbmVOYW1lLCBzaG9ydExvbmcsICJ0aW1lWm9uZU5hbWUgbXVzdCBiZSBcInNob3J0
XCIgb3IgXCJsb25nXCIiLCBTdHJpbmcoKSk7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBpZiAoIXRpbWVab25lTmFtZS5p
c051bGwoKSkgeworICAgICAgICBpZiAodGltZVpvbmVOYW1lID09ICJzaG9ydCIpCisgICAgICAg
ICAgICBmb3JtYXRPcHQuYXBwZW5kKCd6Jyk7CisgICAgICAgIGVsc2UgaWYgKHRpbWVab25lTmFt
ZSA9PSAibG9uZyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kTGl0ZXJhbCgienp6eiIp
OworICAgIH0KKworICAgIC8vIDI0LiBMZXQgZGF0YUxvY2FsZURhdGEgYmUgR2V0KGxvY2FsZURh
dGEsIGRhdGFMb2NhbGUpLgorICAgIC8vIDI1LiBMZXQgZm9ybWF0cyBiZSBHZXQoZGF0YUxvY2Fs
ZURhdGEsICJmb3JtYXRzIikuCisgICAgLy8gMjYuIExldCBtYXRjaGVyIGJlIEdldE9wdGlvbihv
cHRpb25zLCAiZm9ybWF0TWF0Y2hlciIsICJzdHJpbmciLCDCqyJiYXNpYyIsICJiZXN0IGZpdCLC
uywgImJlc3QgZml0IikuCisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IGZvcm1hdE1hdGNoZXJz
KHsgQVNDSUlMaXRlcmFsKCJiYXNpYyIpLCBBU0NJSUxpdGVyYWwoImJlc3QgZml0IikgfSk7Cisg
ICAgaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Zm9y
bWF0TWF0Y2hlciwgZm9ybWF0TWF0Y2hlcnMsICJmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0aGVy
IFwiYmFzaWNcIiBvciBcImJlc3QgZml0XCIiLCBBU0NJSUxpdGVyYWwoImJlc3QgZml0IikpOwor
ICAgIC8vIDI3LiBSZXR1cm5JZkFicnVwdChtYXRjaGVyKS4KKyAgICBpZiAoc3RhdGUuaGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworCisgICAgLy8gQWx3YXlz
IHVzZSBJQ1UgZGF0ZSBmb3JtYXQgZ2VuZXJhdG9yLCByYXRoZXIgdGhhbiBvdXIgb3duIHBhdHRl
cm4gbGlzdCBhbmQgbWF0Y2hlci4KKyAgICAvLyBDb3ZlcnMgc3RlcHMgMjgtMzYuCisgICAgVUVy
cm9yQ29kZSBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgVURhdGVUaW1lUGF0dGVybkdlbmVy
YXRvciogZ2VuZXJhdG9yID0gdWRhdHBnX29wZW4oZGF0YUxvY2FsZS51dGY4KCkuZGF0YSgpLCAm
c3RhdHVzKTsKKyAgICBpZiAoVV9GQUlMVVJFKHN0YXR1cykpCisgICAgICAgIHJldHVybiB0aHJv
d1R5cGVFcnJvcigmc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiZmFpbGVkIHRvIGluaXRpYWxpemUgRGF0
ZVRpbWVGb3JtYXQiKSk7CisKKyAgICBTdHJpbmcgcGF0dGVybiA9IGZvcm1hdE9wdC50b1N0cmlu
ZygpOworICAgIFN0cmluZ1ZpZXcgc2tlbGV0b24ocGF0dGVybik7CisgICAgc3RhdHVzID0gVV9a
RVJPX0VSUk9SOworICAgIGludDMyX3QgcGF0dGVybkxlbmd0aCA9IHVkYXRwZ19nZXRCZXN0UGF0
dGVybihnZW5lcmF0b3IsIHNrZWxldG9uLnVwY29udmVydGVkQ2hhcmFjdGVycygpLCBza2VsZXRv
bi5sZW5ndGgoKSwgbnVsbHB0ciwgMCwgJnN0YXR1cyk7CisgICAgaWYgKHN0YXR1cyA9PSBVX0JV
RkZFUl9PVkVSRkxPV19FUlJPUikgeworICAgICAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7Cisg
ICAgICAgIFZlY3RvcjxVQ2hhciwgMzI+IHBhdHRlcm5CdWZmZXIocGF0dGVybkxlbmd0aCk7Cisg
ICAgICAgIHVkYXRwZ19nZXRCZXN0UGF0dGVybihnZW5lcmF0b3IsIHNrZWxldG9uLnVwY29udmVy
dGVkQ2hhcmFjdGVycygpLCBza2VsZXRvbi5sZW5ndGgoKSwgcGF0dGVybkJ1ZmZlci5kYXRhKCks
IHBhdHRlcm5MZW5ndGgsICZzdGF0dXMpOworICAgICAgICBpZiAoVV9TVUNDRVNTKHN0YXR1cykp
CisgICAgICAgICAgICBwYXR0ZXJuID0gU3RyaW5nKHBhdHRlcm5CdWZmZXIuZGF0YSgpLCBwYXR0
ZXJuTGVuZ3RoKTsKKyAgICB9CisgICAgdWRhdHBnX2Nsb3NlKGdlbmVyYXRvcik7CisgICAgaWYg
KFVfRkFJTFVSRShzdGF0dXMpKQorICAgICAgICByZXR1cm4gdGhyb3dUeXBlRXJyb3IoJnN0YXRl
LCBBU0NJSUxpdGVyYWwoImZhaWxlZCB0byBpbml0aWFsaXplIERhdGVUaW1lRm9ybWF0IikpOwor
CisgICAgc2V0Rm9ybWF0c0Zyb21QYXR0ZXJuKGRhdGVUaW1lRm9ybWF0LCBwYXR0ZXJuKTsKKwor
ICAgIC8vIDM3LiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tib3VuZEZvcm1hdF1dIHRvIHVuZGVmaW5l
ZC4KKyAgICAvLyBBbHJlYWR5IHVuZGVmaW5lZC4KKworICAgIC8vIDM4LiBTZXQgZGF0ZVRpbWVG
b3JtYXQuW1tpbml0aWFsaXplZERhdGVUaW1lRm9ybWF0XV0gdG8gdHJ1ZS4KKyAgICBkYXRlVGlt
ZUZvcm1hdC5zZXRJbml0aWFsaXplZERhdGVUaW1lRm9ybWF0KCk7CisKKyAgICAvLyAzOS4gUmV0
dXJuZGF0ZVRpbWVGb3JtYXQuCisgICAgcmV0dXJuICZkYXRlVGltZUZvcm1hdDsKK30KKwogRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0
ZVRpbWUoRXhlY1N0YXRlKiBzdGF0ZSkKIHsKICAgICAvLyAxMi4zLjQgRGF0ZVRpbWUgRm9ybWF0
IEZ1bmN0aW9ucyAoRUNNQS00MDIgMi4wKQogICAgIC8vIDEuIExldCBkdGYgYmUgdGhlIHRoaXMg
dmFsdWUuCiAgICAgSW50bERhdGVUaW1lRm9ybWF0KiBmb3JtYXQgPSBqc0R5bmFtaWNDYXN0PElu
dGxEYXRlVGltZUZvcm1hdCo+KHN0YXRlLT50aGlzVmFsdWUoKSk7CiAgICAgLy8gMi4gQXNzZXJ0
OiBUeXBlKGR0ZikgaXMgT2JqZWN0IGFuZCBkdGYgaGFzIGFuIFtbaW5pdGlhbGl6ZWREYXRlVGlt
ZUZvcm1hdF1dIGludGVybmFsIHNsb3Qgd2hvc2UgdmFsdWUgaXMgdHJ1ZS4KLSAgICBpZiAoIWZv
cm1hdCkKLSAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihzdGF0
ZSkpOworICAgIGlmICghZm9ybWF0IHx8ICFmb3JtYXQtPmluaXRpYWxpemVkRGF0ZVRpbWVGb3Jt
YXQoKSkKKyAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihzdGF0
ZSwgQVNDSUlMaXRlcmFsKCJEYXRlVGltZUZvcm1hdCBmb3JtYXQoKSBjYWxsZWQgb24gdmFsdWUg
dGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdCIpKSk7
CiAKICAgICBKU1ZhbHVlIGRhdGUgPSBzdGF0ZS0+YXJndW1lbnQoMCk7CiAgICAgZG91YmxlIHZh
bHVlOwpAQCAtMTE3LDcgKzcwMyw3IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50
bERhdGVUaW1lRm9ybWF0RnVuY0Zvcm1hdERhdGVUaW1lKEV4ZWNTdGF0ZSogc3RhCiAKICAgICAv
LyAxLiBJZiB4IGlzIG5vdCBhIGZpbml0ZSBOdW1iZXIsIHRoZW4gdGhyb3cgYSBSYW5nZUVycm9y
IGV4Y2VwdGlvbi4KICAgICBpZiAoIXN0ZDo6aXNmaW5pdGUodmFsdWUpKQotICAgICAgICByZXR1
cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93UmFuZ2VFcnJvcihzdGF0ZSwgQVNDSUlMaXRlcmFsKCJk
YXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQuZm9ybWF0KCkiKSkpOwor
ICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93UmFuZ2VFcnJvcihzdGF0ZSwgQVND
SUlMaXRlcmFsKCJkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQgZm9y
bWF0KCkiKSkpOwogCiAgICAgLy8gRklYTUU6IGltcGxlbWVudCAyIC0gOQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuaCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oCmluZGV4IDdk
YWVkMTM4ZmIwOGRjZmEzYmU2N2QzN2M4M2E0N2RiNGFhYmNiZDcuLjc1YmZlOWI2MTJlMTFkNzAy
YTYxZWY2NzU1ZTQxODI1NmRkOWExMDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oCkBAIC0zOSw2ICszOSwxNiBAQCBjbGFzcyBJ
bnRsRGF0ZVRpbWVGb3JtYXQgOiBwdWJsaWMgSlNEZXN0cnVjdGlibGVPYmplY3QgewogcHVibGlj
OgogICAgIHR5cGVkZWYgSlNEZXN0cnVjdGlibGVPYmplY3QgQmFzZTsKIAorICAgIGVudW0gY2xh
c3MgV2Vla2RheVN0eWxlIHsgTm9uZSwgTmFycm93LCBTaG9ydCwgTG9uZyB9OworICAgIGVudW0g
Y2xhc3MgRXJhU3R5bGUgeyBOb25lLCBOYXJyb3csIFNob3J0LCBMb25nIH07CisgICAgZW51bSBj
bGFzcyBZZWFyU3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJpYyB9OworICAgIGVudW0gY2xh
c3MgTW9udGhTdHlsZSB7IE5vbmUsIFR3b0RpZ2l0LCBOdW1lcmljLCBOYXJyb3csIFNob3J0LCBM
b25nIH07CisgICAgZW51bSBjbGFzcyBEYXlTdHlsZSB7IE5vbmUsIFR3b0RpZ2l0LCBOdW1lcmlj
IH07CisgICAgZW51bSBjbGFzcyBIb3VyU3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJpYyB9
OworICAgIGVudW0gY2xhc3MgTWludXRlU3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJpYyB9
OworICAgIGVudW0gY2xhc3MgU2Vjb25kU3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJpYyB9
OworICAgIGVudW0gY2xhc3MgVGltZVpvbmVOYW1lU3R5bGUgeyBOb25lLCBTaG9ydCwgTG9uZyB9
OworCiAgICAgc3RhdGljIEludGxEYXRlVGltZUZvcm1hdCogY3JlYXRlKFZNJiwgSW50bERhdGVU
aW1lRm9ybWF0Q29uc3RydWN0b3IqKTsKICAgICBzdGF0aWMgU3RydWN0dXJlKiBjcmVhdGVTdHJ1
Y3R1cmUoVk0mLCBKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUpOwogCkBAIC00Nyw2ICs1Nyw0MCBA
QCBwdWJsaWM6CiAgICAgSlNCb3VuZEZ1bmN0aW9uKiBib3VuZEZvcm1hdCgpIGNvbnN0IHsgcmV0
dXJuIG1fYm91bmRGb3JtYXQuZ2V0KCk7IH0KICAgICB2b2lkIHNldEJvdW5kRm9ybWF0KFZNJiwg
SlNCb3VuZEZ1bmN0aW9uKik7CiAKKyAgICBib29sIGluaXRpYWxpemVkSW50bE9iamVjdCgpIGNv
bnN0IHsgcmV0dXJuIG1faW5pdGlhbGl6ZWRJbnRsT2JqZWN0OyB9CisgICAgdm9pZCBzZXRJbml0
aWFsaXplZEludGxPYmplY3QoKSB7IG1faW5pdGlhbGl6ZWRJbnRsT2JqZWN0ID0gdHJ1ZTsgfQor
ICAgIGJvb2wgaW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdCgpIGNvbnN0IHsgcmV0dXJuIG1faW5p
dGlhbGl6ZWREYXRlVGltZUZvcm1hdDsgfQorICAgIHZvaWQgc2V0SW5pdGlhbGl6ZWREYXRlVGlt
ZUZvcm1hdCgpIHsgbV9pbml0aWFsaXplZERhdGVUaW1lRm9ybWF0ID0gdHJ1ZTsgfQorCisgICAg
U3RyaW5nIGxvY2FsZSgpIGNvbnN0IHsgcmV0dXJuIG1fbG9jYWxlOyB9CisgICAgdm9pZCBzZXRM
b2NhbGUoY29uc3QgU3RyaW5nJiBsb2NhbGUpIHsgbV9sb2NhbGUgPSBsb2NhbGU7IH0KKyAgICBT
dHJpbmcgY2FsZW5kYXIoKSBjb25zdCB7IHJldHVybiBtX2NhbGVuZGFyOyB9CisgICAgdm9pZCBz
ZXRDYWxlbmRhcihjb25zdCBTdHJpbmcmIGNhbGVuZGFyKSB7IG1fY2FsZW5kYXIgPSBjYWxlbmRh
cjsgfQorICAgIFN0cmluZyBudW1iZXJpbmdTeXN0ZW0oKSBjb25zdCB7IHJldHVybiBtX251bWJl
cmluZ1N5c3RlbTsgfQorICAgIHZvaWQgc2V0TnVtYmVyaW5nU3lzdGVtKGNvbnN0IFN0cmluZyYg
bnVtYmVyaW5nU3lzdGVtKSB7IG1fbnVtYmVyaW5nU3lzdGVtID0gbnVtYmVyaW5nU3lzdGVtOyB9
CisgICAgU3RyaW5nIHRpbWVab25lKCkgY29uc3QgeyByZXR1cm4gbV90aW1lWm9uZTsgfQorICAg
IHZvaWQgc2V0VGltZVpvbmUoY29uc3QgU3RyaW5nJiB0aW1lWm9uZSkgeyBtX3RpbWVab25lID0g
dGltZVpvbmU7IH0KKyAgICBib29sIGhvdXIxMigpIGNvbnN0IHsgcmV0dXJuIG1faG91cjEyOyB9
CisgICAgdm9pZCBzZXRIb3VyMTIoY29uc3QgYm9vbCYgaG91cjEyKSB7IG1faG91cjEyID0gaG91
cjEyOyB9CisgICAgV2Vla2RheVN0eWxlIHdlZWtkYXkoKSBjb25zdCB7IHJldHVybiBtX3dlZWtk
YXk7IH0KKyAgICB2b2lkIHNldFdlZWtkYXkoY29uc3QgV2Vla2RheVN0eWxlJiB3ZWVrZGF5KSB7
IG1fd2Vla2RheSA9IHdlZWtkYXk7IH0KKyAgICBFcmFTdHlsZSBlcmEoKSBjb25zdCB7IHJldHVy
biBtX2VyYTsgfQorICAgIHZvaWQgc2V0RXJhKGNvbnN0IEVyYVN0eWxlJiBlcmEpIHsgbV9lcmEg
PSBlcmE7IH0KKyAgICBZZWFyU3R5bGUgeWVhcigpIGNvbnN0IHsgcmV0dXJuIG1feWVhcjsgfQor
ICAgIHZvaWQgc2V0WWVhcihjb25zdCBZZWFyU3R5bGUmIHllYXIpIHsgbV95ZWFyID0geWVhcjsg
fQorICAgIE1vbnRoU3R5bGUgbW9udGgoKSBjb25zdCB7IHJldHVybiBtX21vbnRoOyB9CisgICAg
dm9pZCBzZXRNb250aChjb25zdCBNb250aFN0eWxlJiBtb250aCkgeyBtX21vbnRoID0gbW9udGg7
IH0KKyAgICBEYXlTdHlsZSBkYXkoKSBjb25zdCB7IHJldHVybiBtX2RheTsgfQorICAgIHZvaWQg
c2V0RGF5KGNvbnN0IERheVN0eWxlJiBkYXkpIHsgbV9kYXkgPSBkYXk7IH0KKyAgICBIb3VyU3R5
bGUgaG91cigpIGNvbnN0IHsgcmV0dXJuIG1faG91cjsgfQorICAgIHZvaWQgc2V0SG91cihjb25z
dCBIb3VyU3R5bGUmIGhvdXIpIHsgbV9ob3VyID0gaG91cjsgfQorICAgIE1pbnV0ZVN0eWxlIG1p
bnV0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWludXRlOyB9CisgICAgdm9pZCBzZXRNaW51dGUoY29u
c3QgTWludXRlU3R5bGUmIG1pbnV0ZSkgeyBtX21pbnV0ZSA9IG1pbnV0ZTsgfQorICAgIFNlY29u
ZFN0eWxlIHNlY29uZCgpIGNvbnN0IHsgcmV0dXJuIG1fc2Vjb25kOyB9CisgICAgdm9pZCBzZXRT
ZWNvbmQoY29uc3QgU2Vjb25kU3R5bGUmIHNlY29uZCkgeyBtX3NlY29uZCA9IHNlY29uZDsgfQor
ICAgIFRpbWVab25lTmFtZVN0eWxlIHRpbWVab25lTmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGlt
ZVpvbmVOYW1lOyB9CisgICAgdm9pZCBzZXRUaW1lWm9uZU5hbWUoY29uc3QgVGltZVpvbmVOYW1l
U3R5bGUmIHRpbWVab25lTmFtZSkgeyBtX3RpbWVab25lTmFtZSA9IHRpbWVab25lTmFtZTsgfQor
CiBwcm90ZWN0ZWQ6CiAgICAgSW50bERhdGVUaW1lRm9ybWF0KFZNJiwgU3RydWN0dXJlKik7CiAg
ICAgdm9pZCBmaW5pc2hDcmVhdGlvbihWTSYpOwpAQCAtNTQsOCArOTgsMjkgQEAgcHJvdGVjdGVk
OgogICAgIHN0YXRpYyB2b2lkIHZpc2l0Q2hpbGRyZW4oSlNDZWxsKiwgU2xvdFZpc2l0b3ImKTsK
IAogICAgIFdyaXRlQmFycmllcjxKU0JvdW5kRnVuY3Rpb24+IG1fYm91bmRGb3JtYXQ7CisKK3By
aXZhdGU6CisgICAgYm9vbCBtX2luaXRpYWxpemVkSW50bE9iamVjdCB7IGZhbHNlIH07CisgICAg
Ym9vbCBtX2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQgeyBmYWxzZSB9OworCisgICAgU3RyaW5n
IG1fbG9jYWxlIHsgQVNDSUlMaXRlcmFsKCJlbiIpIH07CisgICAgU3RyaW5nIG1fY2FsZW5kYXIg
eyBBU0NJSUxpdGVyYWwoImdyZWdvcnkiKSB9OworICAgIFN0cmluZyBtX251bWJlcmluZ1N5c3Rl
bSB7IEFTQ0lJTGl0ZXJhbCgibGF0biIpIH07CisgICAgU3RyaW5nIG1fdGltZVpvbmUgeyBBU0NJ
SUxpdGVyYWwoIlVUQyIpIH07CisgICAgYm9vbCBtX2hvdXIxMiB7IHRydWUgfTsKKyAgICBXZWVr
ZGF5U3R5bGUgbV93ZWVrZGF5IHsgV2Vla2RheVN0eWxlOjpOb25lIH07CisgICAgRXJhU3R5bGUg
bV9lcmEgeyBFcmFTdHlsZTo6Tm9uZSB9OworICAgIFllYXJTdHlsZSBtX3llYXIgeyBZZWFyU3R5
bGU6Ok5vbmUgfTsKKyAgICBNb250aFN0eWxlIG1fbW9udGggeyBNb250aFN0eWxlOjpOb25lIH07
CisgICAgRGF5U3R5bGUgbV9kYXkgeyBEYXlTdHlsZTo6Tm9uZSB9OworICAgIEhvdXJTdHlsZSBt
X2hvdXIgeyBIb3VyU3R5bGU6Ok5vbmUgfTsKKyAgICBNaW51dGVTdHlsZSBtX21pbnV0ZSB7IE1p
bnV0ZVN0eWxlOjpOb25lIH07CisgICAgU2Vjb25kU3R5bGUgbV9zZWNvbmQgeyBTZWNvbmRTdHls
ZTo6Tm9uZSB9OworICAgIFRpbWVab25lTmFtZVN0eWxlIG1fdGltZVpvbmVOYW1lIHsgVGltZVpv
bmVOYW1lU3R5bGU6Ok5vbmUgfTsKIH07Ci0gICAgCisKK1N0cmluZyBkZWZhdWx0VGltZVpvbmUo
KTsKK0pTVmFsdWUgaW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSYsIEludGxEYXRl
VGltZUZvcm1hdCYsIEpTVmFsdWUgbG9jYWxlcywgSlNWYWx1ZSBvcHRpb25zKTsKIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVUaW1lRm9ybWF0RnVuY0Zvcm1hdERhdGVUaW1l
KEV4ZWNTdGF0ZSopOwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVj
dG9yLmNwcAppbmRleCAxZTg5ZmFhYWI3ZWI4OGM3Zjg2NGUwZjUzZjI1NWNiOGEyYzVlZWNjLi5m
N2ZhZWMwOWRhOTE4ZDc0YzJhMjdmODI5NWUwZDgyOGI1ZGY0ZjQ4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0
Q29uc3RydWN0b3IuY3BwCkBAIC0xMDQsOSArMTA0LDkgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVl
IEpTQ19IT1NUX0NBTEwgY29uc3RydWN0SW50bERhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSogc3Rh
dGUKICAgICBBU1NFUlQoZGF0ZVRpbWVGb3JtYXQpOwogCiAgICAgLy8gNC4gUmV0dXJuIEluaXRp
YWxpemVEYXRlVGltZUZvcm1hdChkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykuCi0g
ICAgLy8gRklYTUU6IHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSW5pdGlhbGl6ZURhdGVUaW1lRm9y
bWF0KGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKSk7Ci0KLSAgICByZXR1cm4gSlNW
YWx1ZTo6ZW5jb2RlKGRhdGVUaW1lRm9ybWF0KTsKKyAgICBKU1ZhbHVlIGxvY2FsZXMgPSBzdGF0
ZS0+YXJndW1lbnQoMCk7CisgICAgSlNWYWx1ZSBvcHRpb25zID0gc3RhdGUtPmFyZ3VtZW50KDEp
OworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoaW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KCpz
dGF0ZSwgKmRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKSk7CiB9CiAKIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGxJbnRsRGF0ZVRpbWVGb3JtYXQoRXhlY1N0
YXRlKiBzdGF0ZSkKQEAgLTEyMyw5ICsxMjMsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjYWxsSW50bERhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSogc3RhdGUpCiAgICAg
QVNTRVJUKGRhdGVUaW1lRm9ybWF0KTsKIAogICAgIC8vIDQuIFJldHVybiBJbml0aWFsaXplRGF0
ZVRpbWVGb3JtYXQoZGF0ZVRpbWVGb3JtYXQsIGxvY2FsZXMsIG9wdGlvbnMpLgotICAgIC8vIEZJ
WE1FOiByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKEluaXRpYWxpemVEYXRlVGltZUZvcm1hdChkYXRl
VGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykpOwotCi0gICAgcmV0dXJuIEpTVmFsdWU6OmVu
Y29kZShkYXRlVGltZUZvcm1hdCk7CisgICAgSlNWYWx1ZSBsb2NhbGVzID0gc3RhdGUtPmFyZ3Vt
ZW50KDApOworICAgIEpTVmFsdWUgb3B0aW9ucyA9IHN0YXRlLT5hcmd1bWVudCgxKTsKKyAgICBy
ZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGluaXRpYWxpemVEYXRlVGltZUZvcm1hdCgqc3RhdGUsICpk
YXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykpOwogfQogCiBDb25zdHJ1Y3RUeXBlIElu
dGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENv
bnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCkBAIC0xNjEsNyArMTYxLDcgQEAgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvckZ1bmNTdXBw
b3J0ZWRMb2NhbGVzT2YKICAgICAvLyAzLiBSZXR1cm4gU3VwcG9ydGVkTG9jYWxlcyhhdmFpbGFi
bGVMb2NhbGVzLCByZXF1ZXN0ZWRMb2NhbGVzLCBvcHRpb25zKS4KICAgICByZXR1cm4gSlNWYWx1
ZTo6ZW5jb2RlKHN1cHBvcnRlZExvY2FsZXMoKnN0YXRlLCBhdmFpbGFibGVMb2NhbGVzLCByZXF1
ZXN0ZWRMb2NhbGVzLCBzdGF0ZS0+YXJndW1lbnQoMSkpKTsKIH0KLSAgICAKKwogdm9pZCBJbnRs
RGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcjo6dmlzaXRDaGlsZHJlbihKU0NlbGwqIGNlbGwsIFNs
b3RWaXNpdG9yJiB2aXNpdG9yKQogewogICAgIEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9y
KiB0aGlzT2JqZWN0ID0ganNDYXN0PEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yKj4oY2Vs
bCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcAppbmRleCBkNWU1MjU5ODI0ODBiMWVkNDkxZTZi
N2I4ZmIxMmJiOGFmMWFlZTdkLi44M2ViZTZjMTk4MmI3N2E3OGZlZGNhZGQ1ZGE5ZjY5YzdhZmEy
M2Y1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKIAogI2lu
Y2x1ZGUgIkVycm9yLmgiCiAjaW5jbHVkZSAiSW50bERhdGVUaW1lRm9ybWF0LmgiCisjaW5jbHVk
ZSAiSW50bE9iamVjdC5oIgogI2luY2x1ZGUgIkpTQm91bmRGdW5jdGlvbi5oIgogI2luY2x1ZGUg
IkpTQ0pTVmFsdWVJbmxpbmVzLmgiCiAjaW5jbHVkZSAiSlNDZWxsSW5saW5lcy5oIgpAQCAtMzks
OCArNDAsNiBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotU1RBVElDX0FTU0VSVF9JU19UUklWSUFM
TFlfREVTVFJVQ1RJQkxFKEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSk7Ci0KIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUdl
dHRlckZvcm1hdChFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGlvbnMoRXhlY1N0
YXRlKik7CiAKQEAgLTU5LDEwICs1OCwxMSBAQCBjb25zdCBDbGFzc0luZm8gSW50bERhdGVUaW1l
Rm9ybWF0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmSW50bERhdGVUaW1lRgogQGVu
ZAogKi8KIAotSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKiBJbnRsRGF0ZVRpbWVGb3JtYXRQ
cm90b3R5cGU6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUpCitJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUqIEludGxEYXRlVGltZUZvcm1hdFBy
b3RvdHlwZTo6Y3JlYXRlKEV4ZWNTdGF0ZSogc3RhdGUsIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0
dXJlKiBzdHJ1Y3R1cmUpCiB7CisgICAgVk0mIHZtID0gc3RhdGUtPnZtKCk7CiAgICAgSW50bERh
dGVUaW1lRm9ybWF0UHJvdG90eXBlKiBvYmplY3QgPSBuZXcgKE5vdE51bGwsIGFsbG9jYXRlQ2Vs
bDxJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU+KHZtLmhlYXApKSBJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGUodm0sIHN0cnVjdHVyZSk7Ci0gICAgb2JqZWN0LT5maW5pc2hDcmVhdGlvbih2
bSwgc3RydWN0dXJlKTsKKyAgICBvYmplY3QtPmZpbmlzaENyZWF0aW9uKHN0YXRlLCBzdHJ1Y3R1
cmUpOwogICAgIHJldHVybiBvYmplY3Q7CiB9CiAKQEAgLTc2LDkgKzc2LDEzIEBAIEludGxEYXRl
VGltZUZvcm1hdFByb3RvdHlwZTo6SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKFZNJiB2bSwg
U3RydWN0dXJlKiBzdHJ1CiB7CiB9CiAKLXZvaWQgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIFN0cnVjdHVyZSopCit2b2lkIEludGxEYXRlVGltZUZv
cm1hdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiBzdGF0ZSwgU3RydWN0dXJl
KikKIHsKKyAgICBWTSYgdm0gPSBzdGF0ZS0+dm0oKTsKICAgICBCYXNlOjpmaW5pc2hDcmVhdGlv
bih2bSk7CisKKyAgICAvLyBUaGUgSW50bC5EYXRlVGltZUZvcm1hdCBwcm90b3R5cGUgb2JqZWN0
IGlzIGl0c2VsZiBhbiAlRGF0ZVRpbWVGb3JtYXQlIGluc3RhbmNlLCB3aG9zZSBpbnRlcm5hbCBz
bG90cyBhcmUgc2V0IGFzIGlmIGl0IGhhZCBiZWVuIGNvbnN0cnVjdGVkIGJ5IHRoZSBleHByZXNz
aW9uIENvbnN0cnVjdCglRGF0ZVRpbWVGb3JtYXQlKS4KKyAgICBpbml0aWFsaXplRGF0ZVRpbWVG
b3JtYXQoKnN0YXRlLCAqdGhpcywganNVbmRlZmluZWQoKSwganNVbmRlZmluZWQoKSk7CiB9CiAK
IGJvb2wgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNP
YmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBzdGF0ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFt
ZSwgUHJvcGVydHlTbG90JiBzbG90KQpAQCAtODYsMTUgKzkwLDE1MSBAQCBib29sIEludGxEYXRl
VGltZUZvcm1hdFByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3Qs
IEV4ZWNTdGF0ZQogICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KHN0
YXRlLCBkYXRlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxlLCBqc0Nhc3Q8SW50bERhdGVUaW1lRm9y
bWF0UHJvdG90eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KIAorc3RhdGlj
IFN0cmluZyB3ZWVrZGF5U3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6Oldl
ZWtkYXlTdHlsZSBzdHlsZSkKK3sKKyAgICBzd2l0Y2ggKHN0eWxlKSB7CisgICAgY2FzZSBJbnRs
RGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmlu
ZygpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpXZWVrZGF5U3R5bGU6Ok5hcnJvdzoK
KyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibmFycm93Iik7CisgICAgY2FzZSBJbnRsRGF0
ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHlsZTo6U2hvcnQ6CisgICAgICAgIHJldHVybiBBU0NJSUxp
dGVyYWwoInNob3J0Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHls
ZTo6TG9uZzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibG9uZyIpOworICAgIH0KKyAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gU3RyaW5nKCk7Cit9CisKK3N0YXRp
YyBTdHJpbmcgZXJhU3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkVyYVN0
eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGlt
ZUZvcm1hdDo6RXJhU3R5bGU6Ok5vbmU6CisgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICBj
YXNlIEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6Ok5hcnJvdzoKKyAgICAgICAgcmV0dXJu
IEFTQ0lJTGl0ZXJhbCgibmFycm93Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkVy
YVN0eWxlOjpTaG9ydDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgic2hvcnQiKTsKKyAg
ICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6Okxvbmc6CisgICAgICAgIHJldHVy
biBBU0NJSUxpdGVyYWwoImxvbmciKTsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CisgICAgcmV0dXJuIFN0cmluZygpOworfQorCitzdGF0aWMgU3RyaW5nIHllYXJTdHlsZVRvU3Ry
aW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlIHN0eWxlKQoreworICAgIHN3
aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlOjpO
b25lOgorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3Jt
YXQ6OlllYXJTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIjIt
ZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlOjpOdW1lcmlj
OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJudW1lcmljIik7CisgICAgfQorICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3RhdGljIFN0
cmluZyBtb250aFN0eWxlVG9TdHJpbmcoY29uc3QgSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0
eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGlt
ZUZvcm1hdDo6TW9udGhTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAg
IGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0eWxlOjpUd29EaWdpdDoKKyAgICAgICAg
cmV0dXJuIEFTQ0lJTGl0ZXJhbCgiMi1kaWdpdCIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9y
bWF0OjpNb250aFN0eWxlOjpOdW1lcmljOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJu
dW1lcmljIik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6Ok5hcnJv
dzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibmFycm93Iik7CisgICAgY2FzZSBJbnRs
RGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6OlNob3J0OgorICAgICAgICByZXR1cm4gQVNDSUlM
aXRlcmFsKCJzaG9ydCIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0eWxl
OjpMb25nOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJsb25nIik7CisgICAgfQorICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3RhdGlj
IFN0cmluZyBkYXlTdHlsZVRvU3RyaW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6RGF5U3R5
bGUgc3R5bGUpCit7CisgICAgc3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERhdGVUaW1l
Rm9ybWF0OjpEYXlTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgIGNh
c2UgSW50bERhdGVUaW1lRm9ybWF0OjpEYXlTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVy
biBBU0NJSUxpdGVyYWwoIjItZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6
RGF5U3R5bGU6Ok51bWVyaWM6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIm51bWVyaWMi
KTsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIFN0cmluZygp
OworfQorCitzdGF0aWMgU3RyaW5nIGhvdXJTdHlsZVRvU3RyaW5nKGNvbnN0IEludGxEYXRlVGlt
ZUZvcm1hdDo6SG91clN0eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBj
YXNlIEludGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlOjpOb25lOgorICAgICAgICByZXR1cm4g
U3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkhvdXJTdHlsZTo6VHdvRGln
aXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIjItZGlnaXQiKTsKKyAgICBjYXNlIElu
dGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlOjpOdW1lcmljOgorICAgICAgICByZXR1cm4gQVND
SUlMaXRlcmFsKCJudW1lcmljIik7CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwor
ICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3RhdGljIFN0cmluZyBtaW51dGVTdHlsZVRvU3Ry
aW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6TWludXRlU3R5bGUgc3R5bGUpCit7CisgICAg
c3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpNaW51dGVTdHls
ZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgIGNhc2UgSW50bERhdGVUaW1l
Rm9ybWF0OjpNaW51dGVTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVy
YWwoIjItZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6TWludXRlU3R5bGU6
Ok51bWVyaWM6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIm51bWVyaWMiKTsKKyAgICB9
CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIFN0cmluZygpOworfQorCitz
dGF0aWMgU3RyaW5nIHNlY29uZFN0eWxlVG9TdHJpbmcoY29uc3QgSW50bERhdGVUaW1lRm9ybWF0
OjpTZWNvbmRTdHlsZSBzdHlsZSkKK3sKKyAgICBzd2l0Y2ggKHN0eWxlKSB7CisgICAgY2FzZSBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpOb25lOgorICAgICAgICByZXR1cm4gU3Ry
aW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpUd29EaWdp
dDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiMi1kaWdpdCIpOworICAgIGNhc2UgSW50
bERhdGVUaW1lRm9ybWF0OjpTZWNvbmRTdHlsZTo6TnVtZXJpYzoKKyAgICAgICAgcmV0dXJuIEFT
Q0lJTGl0ZXJhbCgibnVtZXJpYyIpOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsK
KyAgICByZXR1cm4gU3RyaW5nKCk7Cit9CisKK3N0YXRpYyBTdHJpbmcgdGltZVpvbmVOYW1lU3R5
bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlRpbWVab25lTmFtZVN0eWxlIHN0
eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1h
dDo6VGltZVpvbmVOYW1lU3R5bGU6Ok5vbmU6CisgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAg
ICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6OlNob3J0OgorICAg
ICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJzaG9ydCIpOworICAgIGNhc2UgSW50bERhdGVUaW1l
Rm9ybWF0OjpUaW1lWm9uZU5hbWVTdHlsZTo6TG9uZzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0
ZXJhbCgibG9uZyIpOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1
cm4gU3RyaW5nKCk7Cit9CisKIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVU
aW1lRm9ybWF0UHJvdG90eXBlR2V0dGVyRm9ybWF0KEV4ZWNTdGF0ZSogc3RhdGUpCiB7CiAgICAg
Ly8gMTIuMy4zIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCAoRUNNQS00MDIg
Mi4wKQogICAgIC8vIDEuIExldCBkdGYgYmUgdGhpcyBEYXRlVGltZUZvcm1hdCBvYmplY3QuCiAg
ICAgSW50bERhdGVUaW1lRm9ybWF0KiBkdGYgPSBqc0R5bmFtaWNDYXN0PEludGxEYXRlVGltZUZv
cm1hdCo+KHN0YXRlLT50aGlzVmFsdWUoKSk7CiAgICAgLy8gMi4gUmV0dXJuSWZBYnJ1cHQoZHRm
KS4KLSAgICBpZiAoIWR0ZikKKyAgICBpZiAoIWR0ZiB8fCAhZHRmLT5pbml0aWFsaXplZERhdGVU
aW1lRm9ybWF0KCkpCiAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJy
b3Ioc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9y
bWF0IGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBh
IERhdGVUaW1lRm9ybWF0IikpKTsKLSAgICAKKwogICAgIEpTQm91bmRGdW5jdGlvbiogYm91bmRG
b3JtYXQgPSBkdGYtPmJvdW5kRm9ybWF0KCk7CiAgICAgLy8gMy4gSWYgdGhlIFtbYm91bmRGb3Jt
YXRdXSBpbnRlcm5hbCBzbG90IG9mIHRoaXMgRGF0ZVRpbWVGb3JtYXQgb2JqZWN0IGlzIHVuZGVm
aW5lZCwKICAgICBpZiAoIWJvdW5kRm9ybWF0KSB7CkBAIC0xMDYsNyArMjQ2LDcgQEAgRW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJG
b3JtYXQoRXhlY1N0YXRlKgogICAgICAgICBKU0FycmF5KiBib3VuZEFyZ3MgPSBKU0FycmF5Ojp0
cnlDcmVhdGVVbmluaXRpYWxpemVkKHZtLCBnbG9iYWxPYmplY3QtPmFycmF5U3RydWN0dXJlRm9y
SW5kZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbihBcnJheVdpdGhVbmRlY2lkZWQpLCAwKTsKICAg
ICAgICAgaWYgKCFib3VuZEFyZ3MpCiAgICAgICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2Rl
KHRocm93T3V0T2ZNZW1vcnlFcnJvcihzdGF0ZSkpOwotICAgICAgICAKKwogICAgICAgICAvLyBj
LiBMZXQgYmYgYmUgQm91bmRGdW5jdGlvbkNyZWF0ZShGLCDCq3RoaXMgdmFsdWXCuykuCiAgICAg
ICAgIGJvdW5kRm9ybWF0ID0gSlNCb3VuZEZ1bmN0aW9uOjpjcmVhdGUodm0sIGdsb2JhbE9iamVj
dCwgdGFyZ2V0T2JqZWN0LCBkdGYsIGJvdW5kQXJncywgMSwgQVNDSUlMaXRlcmFsKCJmb3JtYXQi
KSk7CiAgICAgICAgIC8vIGQuIFNldCBkdGYuW1tib3VuZEZvcm1hdF1dIHRvIGJmLgpAQCAtMTIw
LDE1ICsyNjAsNDggQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVG
b3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKEV4ZWMKIHsKICAgICAvLyAxMi4zLjUg
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgKEVDTUEtNDAy
IDIuMCkKICAgICBJbnRsRGF0ZVRpbWVGb3JtYXQqIGR0ZiA9IGpzRHluYW1pY0Nhc3Q8SW50bERh
dGVUaW1lRm9ybWF0Kj4oc3RhdGUtPnRoaXNWYWx1ZSgpKTsKLSAgICBpZiAoIWR0ZikKKyAgICBp
ZiAoIWR0ZiB8fCAhZHRmLT5pbml0aWFsaXplZERhdGVUaW1lRm9ybWF0KCkpCiAgICAgICAgIHJl
dHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3Ioc3RhdGUsIEFTQ0lJTGl0ZXJhbCgi
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNhbGxlZCBvbiB2
YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1lRm9ybWF0
IikpKTsKIAogICAgIC8vIFRoZSBmdW5jdGlvbiByZXR1cm5zIGEgbmV3IG9iamVjdCB3aG9zZSBw
cm9wZXJ0aWVzIGFuZCBhdHRyaWJ1dGVzIGFyZSBzZXQgYXMgaWYgY29uc3RydWN0ZWQgYnkgYW4g
b2JqZWN0IGxpdGVyYWwgYXNzaWduaW5nIHRvIGVhY2ggb2YgdGhlIGZvbGxvd2luZyBwcm9wZXJ0
aWVzIHRoZSB2YWx1ZSBvZiB0aGUgY29ycmVzcG9uZGluZyBpbnRlcm5hbCBzbG90IG9mIHRoaXMg
RGF0ZVRpbWVGb3JtYXQgb2JqZWN0IChzZWUgMTIuNCk6IGxvY2FsZSwgY2FsZW5kYXIsIG51bWJl
cmluZ1N5c3RlbSwgdGltZVpvbmUsIGhvdXIxMiwgd2Vla2RheSwgZXJhLCB5ZWFyLCBtb250aCwg
ZGF5LCBob3VyLCBtaW51dGUsIHNlY29uZCwgYW5kIHRpbWVab25lTmFtZS4gUHJvcGVydGllcyB3
aG9zZSBjb3JyZXNwb25kaW5nIGludGVybmFsIHNsb3RzIGFyZSBub3QgcHJlc2VudCBhcmUgbm90
IGFzc2lnbmVkLgogICAgIC8vIE5vdGU6IEluIHRoaXMgdmVyc2lvbiBvZiB0aGUgRUNNQVNjcmlw
dCAyMDE1IEludGVybmF0aW9uYWxpemF0aW9uIEFQSSwgdGhlIHRpbWVab25lIHByb3BlcnR5IHdp
bGwgYmUgdGhlIG5hbWUgb2YgdGhlIGRlZmF1bHQgdGltZSB6b25lIGlmIG5vIHRpbWVab25lIHBy
b3BlcnR5IHdhcyBwcm92aWRlZCBpbiB0aGUgb3B0aW9ucyBvYmplY3QgcHJvdmlkZWQgdG8gdGhl
IEludGwuRGF0ZVRpbWVGb3JtYXQgY29uc3RydWN0b3IuIFRoZSBwcmV2aW91cyB2ZXJzaW9uIGxl
ZnQgdGhlIHRpbWVab25lIHByb3BlcnR5IHVuZGVmaW5lZCBpbiB0aGlzIGNhc2UuCiAKKyAgICBW
TSYgdm0gPSBzdGF0ZS0+dm0oKTsKKwogICAgIEpTT2JqZWN0KiBvcHRpb25zID0gY29uc3RydWN0
RW1wdHlPYmplY3Qoc3RhdGUpOworICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVy
dHlOYW1lcy0+bG9jYWxlLCBqc05vbnRyaXZpYWxTdHJpbmcoc3RhdGUsIGR0Zi0+bG9jYWxlKCkp
KTsKKyAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIElkZW50aWZpZXI6OmZyb21TdHJpbmcoJnZt
LCAiY2FsZW5kYXIiKSwganNOb250cml2aWFsU3RyaW5nKHN0YXRlLCBkdGYtPmNhbGVuZGFyKCkp
KTsKKyAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIElkZW50aWZpZXI6OmZyb21TdHJpbmcoJnZt
LCAibnVtYmVyaW5nU3lzdGVtIiksIGpzTm9udHJpdmlhbFN0cmluZyhzdGF0ZSwgZHRmLT5udW1i
ZXJpbmdTeXN0ZW0oKSkpOworICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlO
YW1lcy0+dGltZVpvbmUsIGpzTm9udHJpdmlhbFN0cmluZyhzdGF0ZSwgZHRmLT50aW1lWm9uZSgp
KSk7CisKKyAgICBpZiAoZHRmLT53ZWVrZGF5KCkgIT0gSW50bERhdGVUaW1lRm9ybWF0OjpXZWVr
ZGF5U3R5bGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVy
dHlOYW1lcy0+d2Vla2RheSwganNOb250cml2aWFsU3RyaW5nKHN0YXRlLCB3ZWVrZGF5U3R5bGVU
b1N0cmluZyhkdGYtPndlZWtkYXkoKSkpKTsKKworICAgIGlmIChkdGYtPmVyYSgpICE9IEludGxE
YXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVj
dCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+ZXJhLCBqc05vbnRyaXZpYWxTdHJpbmcoc3RhdGUsIGVy
YVN0eWxlVG9TdHJpbmcoZHRmLT5lcmEoKSkpKTsKKworICAgIGlmIChkdGYtPnllYXIoKSAhPSBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OlllYXJTdHlsZTo6Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0
RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT55ZWFyLCBqc05vbnRyaXZpYWxTdHJpbmcoc3Rh
dGUsIHllYXJTdHlsZVRvU3RyaW5nKGR0Zi0+eWVhcigpKSkpOworCisgICAgaWYgKGR0Zi0+bW9u
dGgoKSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6Ok5vbmUpCisgICAgICAgIG9w
dGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bW9udGgsIGpzTm9udHJpdmlh
bFN0cmluZyhzdGF0ZSwgbW9udGhTdHlsZVRvU3RyaW5nKGR0Zi0+bW9udGgoKSkpKTsKKworICAg
IGlmIChkdGYtPmRheSgpICE9IEludGxEYXRlVGltZUZvcm1hdDo6RGF5U3R5bGU6Ok5vbmUpCisg
ICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+ZGF5LCBqc05v
bnRyaXZpYWxTdHJpbmcoc3RhdGUsIGRheVN0eWxlVG9TdHJpbmcoZHRmLT5kYXkoKSkpKTsKKwor
ICAgIGlmIChkdGYtPmhvdXIoKSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkhvdXJTdHlsZTo6Tm9u
ZSkgeworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmhv
dXIsIGpzTm9udHJpdmlhbFN0cmluZyhzdGF0ZSwgaG91clN0eWxlVG9TdHJpbmcoZHRmLT5ob3Vy
KCkpKSk7CisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+
aG91cjEyLCBqc0Jvb2xlYW4oZHRmLT5ob3VyMTIoKSkpOworICAgIH0KKworICAgIGlmIChkdGYt
Pm1pbnV0ZSgpICE9IEludGxEYXRlVGltZUZvcm1hdDo6TWludXRlU3R5bGU6Ok5vbmUpCisgICAg
ICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bWludXRlLCBqc05v
bnRyaXZpYWxTdHJpbmcoc3RhdGUsIG1pbnV0ZVN0eWxlVG9TdHJpbmcoZHRmLT5taW51dGUoKSkp
KTsKKworICAgIGlmIChkdGYtPnNlY29uZCgpICE9IEludGxEYXRlVGltZUZvcm1hdDo6U2Vjb25k
U3R5bGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlO
YW1lcy0+c2Vjb25kLCBqc05vbnRyaXZpYWxTdHJpbmcoc3RhdGUsIHNlY29uZFN0eWxlVG9TdHJp
bmcoZHRmLT5zZWNvbmQoKSkpKTsKIAotICAgIC8vIEZJWE1FOiBQb3B1bGF0ZSBvYmplY3QgZnJv
bSBpbnRlcm5hbCBzbG90cy4KKyAgICBpZiAoZHRmLT50aW1lWm9uZU5hbWUoKSAhPSBJbnRsRGF0
ZVRpbWVGb3JtYXQ6OlRpbWVab25lTmFtZVN0eWxlOjpOb25lKQorICAgICAgICBvcHRpb25zLT5w
dXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPnRpbWVab25lTmFtZSwganNOb250cml2aWFs
U3RyaW5nKHN0YXRlLCB0aW1lWm9uZU5hbWVTdHlsZVRvU3RyaW5nKGR0Zi0+dGltZVpvbmVOYW1l
KCkpKSk7CiAKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKG9wdGlvbnMpOwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJv
dG90eXBlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGUuaAppbmRleCBhMmZkNWUzNGVhNzk1ODZlNDc4OTZmYWZmYzQ0ZTVlNmZhNjE1
OWNiLi4xNjUwZjE5OTBmNTdiZTQ1MjE4NGI3YjZmMDBkNjZhMzM4ZDI3YjQ2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5
cGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGUuaApAQCAtMzgsMTMgKzM4LDEzIEBAIHB1YmxpYzoKICAgICB0eXBlZGVmIElu
dGxEYXRlVGltZUZvcm1hdCBCYXNlOwogICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBTdHJ1Y3R1
cmVGbGFncyA9IEJhc2U6OlN0cnVjdHVyZUZsYWdzIHwgT3ZlcnJpZGVzR2V0T3duUHJvcGVydHlT
bG90OwogCi0gICAgc3RhdGljIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSogY3JlYXRlKFZN
JiwgSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqKTsKKyAgICBzdGF0aWMgSW50bERhdGVUaW1l
Rm9ybWF0UHJvdG90eXBlKiBjcmVhdGUoRXhlY1N0YXRlKiwgSlNHbG9iYWxPYmplY3QqLCBTdHJ1
Y3R1cmUqKTsKICAgICBzdGF0aWMgU3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoVk0mLCBKU0ds
b2JhbE9iamVjdCosIEpTVmFsdWUpOwogCiAgICAgREVDTEFSRV9JTkZPOwogCiBwcm90ZWN0ZWQ6
Ci0gICAgdm9pZCBmaW5pc2hDcmVhdGlvbihWTSYsIFN0cnVjdHVyZSopOworICAgIHZvaWQgZmlu
aXNoQ3JlYXRpb24oRXhlY1N0YXRlKiwgU3RydWN0dXJlKik7CiAKIHByaXZhdGU6CiAgICAgSW50
bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKFZNJiwgU3RydWN0dXJlKik7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuY3BwCmluZGV4IDkyMjY5YmQ4MDdmZWM5M2Jj
ZGRlNmZiYzAyMjJmNThlYzZlNThmYmMuLjdmYWFkZWI5YzViYzUwOGZhNGFmYWU2N2FiZjQ0MDZh
MWMyNzg1N2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxP
YmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3Qu
Y3BwCkBAIC00NSw2ICs0NSw3IEBACiAjaW5jbHVkZSAiTG9va3VwLmgiCiAjaW5jbHVkZSAiT2Jq
ZWN0UHJvdG90eXBlLmgiCiAjaW5jbHVkZSA8dW5pY29kZS91bG9jLmg+CisjaW5jbHVkZSA8dW5p
Y29kZS91bnVtc3lzLmg+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIAogbmFtZXNwYWNl
IEpTQyB7CkBAIC02OCwxNSArNjksMTcgQEAgSW50bE9iamVjdDo6SW50bE9iamVjdChWTSYgdm0s
IFN0cnVjdHVyZSogc3RydWN0dXJlKQogewogfQogCi1JbnRsT2JqZWN0KiBJbnRsT2JqZWN0Ojpj
cmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSkKK0ludGxPYmplY3QqIEludGxPYmplY3Q6OmNyZWF0ZShFeGVjU3RhdGUqIHN0YXRl
LCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsK
KyAgICBWTSYgdm0gPSBzdGF0ZS0+dm0oKTsKICAgICBJbnRsT2JqZWN0KiBvYmplY3QgPSBuZXcg
KE5vdE51bGwsIGFsbG9jYXRlQ2VsbDxJbnRsT2JqZWN0Pih2bS5oZWFwKSkgSW50bE9iamVjdCh2
bSwgc3RydWN0dXJlKTsKLSAgICBvYmplY3QtPmZpbmlzaENyZWF0aW9uKHZtLCBnbG9iYWxPYmpl
Y3QpOworICAgIG9iamVjdC0+ZmluaXNoQ3JlYXRpb24oc3RhdGUsIGdsb2JhbE9iamVjdCk7CiAg
ICAgcmV0dXJuIG9iamVjdDsKIH0KIAotdm9pZCBJbnRsT2JqZWN0OjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCit2b2lkIEludGxPYmplY3Q6OmZp
bmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSogc3RhdGUsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QpCiB7CisgICAgVk0mIHZtID0gc3RhdGUtPnZtKCk7CiAgICAgQmFzZTo6ZmluaXNoQ3JlYXRp
b24odm0pOwogICAgIEFTU0VSVChpbmhlcml0cyhpbmZvKCkpKTsKIApAQCAtOTUsNyArOTgsNyBA
QCB2b2lkIEludGxPYmplY3Q6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCkKICAgICBudW1iZXJGb3JtYXRQcm90b3R5cGUtPnB1dERpcmVjdFdpdGhv
dXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5jb25zdHJ1Y3RvciwgbnVtYmVyRm9y
bWF0Q29uc3RydWN0b3IsIERvbnRFbnVtKTsKIAogICAgIC8vIFNldCB1cCBEYXRlVGltZUZvcm1h
dC4KLSAgICBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUqIGRhdGVUaW1lRm9ybWF0UHJvdG90
eXBlID0gSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVj
dCwgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpjcmVhdGVTdHJ1Y3R1cmUodm0sIGdsb2Jh
bE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5vYmplY3RQcm90b3R5cGUoKSkpOworICAgIEludGxEYXRl
VGltZUZvcm1hdFByb3RvdHlwZSogZGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUgPSBJbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGU6OmNyZWF0ZShzdGF0ZSwgZ2xvYmFsT2JqZWN0LCBJbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGU6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9i
YWxPYmplY3QtPm9iamVjdFByb3RvdHlwZSgpKSk7CiAgICAgU3RydWN0dXJlKiBkYXRlVGltZUZv
cm1hdFN0cnVjdHVyZSA9IEludGxEYXRlVGltZUZvcm1hdDo6Y3JlYXRlU3RydWN0dXJlKHZtLCBn
bG9iYWxPYmplY3QsIGRhdGVUaW1lRm9ybWF0UHJvdG90eXBlKTsKICAgICBJbnRsRGF0ZVRpbWVG
b3JtYXRDb25zdHJ1Y3RvciogZGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvciA9IEludGxEYXRlVGlt
ZUZvcm1hdENvbnN0cnVjdG9yOjpjcmVhdGUodm0sIEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVj
dG9yOjpjcmVhdGVTdHJ1Y3R1cmUodm0sIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5mdW5j
dGlvblByb3RvdHlwZSgpKSwgZGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUsIGRhdGVUaW1lRm9ybWF0
U3RydWN0dXJlKTsKIApAQCAtNzQ1LDYgKzc0OCw3IEBAIEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+
IHJlc29sdmVMb2NhbGUoY29uc3QgSGFzaFNldDxTdHJpbmc+JiBhdmFpbGFibGVMb2NhbGVzLCBj
CiAgICAgICAgICAgICBzaXplX3Qga2V5UG9zID0gZXh0ZW5zaW9uU3VidGFncy5maW5kKGtleSk7
CiAgICAgICAgICAgICAvLyBpaS4gSWYga2V5UG9zICE9IC0xLCB0aGVuCiAgICAgICAgICAgICBp
ZiAoa2V5UG9zICE9IG5vdEZvdW5kKSB7CisgICAgICAgICAgICAgICAgLy8gRklYTUU6IGh0dHBz
Oi8vZ2l0aHViLmNvbS90YzM5L2VjbWE0MDIvaXNzdWVzLzU5CiAgICAgICAgICAgICAgICAgLy8g
MS4gSWYga2V5UG9zICsgMSA8IGV4dGVuc2lvblN1YnRhZ3NMZW5ndGggYW5kIHRoZSBsZW5ndGgg
b2YgdGhlIHJlc3VsdCBvZiBHZXQoZXh0ZW5zaW9uU3VidGFncywgVG9TdHJpbmcoa2V5UG9zICsx
KSkgaXMgZ3JlYXRlciB0aGFuIDIsIHRoZW4KICAgICAgICAgICAgICAgICBpZiAoa2V5UG9zICsg
MSA8IGV4dGVuc2lvblN1YnRhZ3Muc2l6ZSgpICYmIGV4dGVuc2lvblN1YnRhZ3Nba2V5UG9zICsg
MV0ubGVuZ3RoKCkgPiAyKSB7CiAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFN0cmluZyYgcmVx
dWVzdGVkVmFsdWUgPSBleHRlbnNpb25TdWJ0YWdzW2tleVBvcyArIDFdOwpAQCAtOTE2LDYgKzky
MCw3MiBAQCBKU1ZhbHVlIHN1cHBvcnRlZExvY2FsZXMoRXhlY1N0YXRlJiBzdGF0ZSwgY29uc3Qg
SGFzaFNldDxTdHJpbmc+JiBhdmFpbGFibGVMb2NhbAogICAgIHJldHVybiBzdXBwb3J0ZWRMb2Nh
bGVzOwogfQogCitWZWN0b3I8U3RyaW5nPiBnZXROdW1iZXJpbmdTeXN0ZW1zRm9yTG9jYWxlKGNv
bnN0IFN0cmluZyYgbG9jYWxlKQoreworICAgIC8vIHVudW1zeXNfb3BlbkF2YWlsYWJsZU5hbWVz
IGFwcGVhcnMgdG8gb25seSBiZSBhYmxlIHVzYWJsZSBvbmNlIHBlciBwcm9jZXNzLCBzbyB1c2Ug
c3RhdGljIGxpc3QgaW5zdGVhZC4KKyAgICBVRXJyb3JDb2RlIHN0YXR1cyhVX1pFUk9fRVJST1Ip
OworICAgIFVOdW1iZXJpbmdTeXN0ZW0qIGRlZmF1bHRTeXN0ZW0gPSB1bnVtc3lzX29wZW4obG9j
YWxlLnV0ZjgoKS5kYXRhKCksICZzdGF0dXMpOworICAgIEFTU0VSVChVX1NVQ0NFU1Moc3RhdHVz
KSk7CisKKyAgICBWZWN0b3I8U3RyaW5nPiBudW1iZXJpbmdTeXN0ZW1zKHsKKyAgICAgICAgQVND
SUlMaXRlcmFsKHVudW1zeXNfZ2V0TmFtZShkZWZhdWx0U3lzdGVtKSksCisgICAgICAgIEFTQ0lJ
TGl0ZXJhbCgiYXJhYiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImFyYWJleHQiKSwKKyAgICAg
ICAgQVNDSUlMaXRlcmFsKCJhcm1uIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiYXJtbmxvdyIp
LAorICAgICAgICBBU0NJSUxpdGVyYWwoImJhbGkiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJi
ZW5nIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiY2hhbSIpLAorICAgICAgICBBU0NJSUxpdGVy
YWwoImRldmEiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJldGhpIiksCisgICAgICAgIEFTQ0lJ
TGl0ZXJhbCgiZnVsbHdpZGUiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJnZW9yIiksCisgICAg
ICAgIEFTQ0lJTGl0ZXJhbCgiZ3JlayIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImdyZWtsb3ci
KSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJndWpyIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgi
Z3VydSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbmlkYXlzIiksCisgICAgICAgIEFTQ0lJ
TGl0ZXJhbCgiaGFuaWRlYyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbnMiKSwKKyAgICAg
ICAgQVNDSUlMaXRlcmFsKCJoYW5zZmluIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaGFudCIp
LAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbnRmaW4iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFs
KCJoZWJyIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiamF2YSIpLAorICAgICAgICBBU0NJSUxp
dGVyYWwoImpwYW4iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJqcGFuZmluIiksCisgICAgICAg
IEFTQ0lJTGl0ZXJhbCgia2FsaSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImtobXIiKSwKKyAg
ICAgICAgQVNDSUlMaXRlcmFsKCJrbmRhIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibGFuYSIp
LAorICAgICAgICBBU0NJSUxpdGVyYWwoImxhbmF0aGFtIiksCisgICAgICAgIEFTQ0lJTGl0ZXJh
bCgibGFvbyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImxhdG4iKSwKKyAgICAgICAgQVNDSUlM
aXRlcmFsKCJsZXBjIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibGltYiIpLAorICAgICAgICBB
U0NJSUxpdGVyYWwoIm1seW0iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJtb25nIiksCisgICAg
ICAgIEFTQ0lJTGl0ZXJhbCgibXRlaSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoIm15bXIiKSwK
KyAgICAgICAgQVNDSUlMaXRlcmFsKCJteW1yc2hhbiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwo
Im5rb28iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJvbGNrIiksCisgICAgICAgIEFTQ0lJTGl0
ZXJhbCgib3J5YSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInJvbWFuIiksCisgICAgICAgIEFT
Q0lJTGl0ZXJhbCgicm9tYW5sb3ciKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJzYXVyIiksCisg
ICAgICAgIEFTQ0lJTGl0ZXJhbCgic3VuZCIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInRhbHUi
KSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJ0YW1sIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgi
dGFtbGRlYyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInRlbHUiKSwKKyAgICAgICAgQVNDSUlM
aXRlcmFsKCJ0aGFpIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgidGlidCIpLAorICAgICAgICBB
U0NJSUxpdGVyYWwoInZhaWkiKSwKKyAgICB9KTsKKyAgICByZXR1cm4gbnVtYmVyaW5nU3lzdGVt
czsKK30KKwogfSAvLyBuYW1lc3BhY2UgSlNDCiAKICNlbmRpZiAvLyBFTkFCTEUoSU5UTCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaAppbmRleCBmMmRjM2VlYTY0
M2Q4ZDVhNzVjY2I1YTdiZWY5NDQwZGUxODcwOWQ4Li4yOTZiZjhhZjY4ZWU3YmFmNDFmYjI5YzBj
NTU2MzE3NDA0MGZlZmI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsT2JqZWN0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9i
amVjdC5oCkBAIC00NSwxMyArNDUsMTMgQEAgcHVibGljOgogICAgIHR5cGVkZWYgSlNOb25GaW5h
bE9iamVjdCBCYXNlOwogICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBTdHJ1Y3R1cmVGbGFncyA9
IEJhc2U6OlN0cnVjdHVyZUZsYWdzIHwgT3ZlcnJpZGVzR2V0T3duUHJvcGVydHlTbG90OwogCi0g
ICAgc3RhdGljIEludGxPYmplY3QqIGNyZWF0ZShWTSYsIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0
dXJlKik7CisgICAgc3RhdGljIEludGxPYmplY3QqIGNyZWF0ZShFeGVjU3RhdGUqLCBKU0dsb2Jh
bE9iamVjdCosIFN0cnVjdHVyZSopOwogICAgIHN0YXRpYyBTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVj
dHVyZShWTSYsIEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSk7CiAKICAgICBERUNMQVJFX0lORk87
CiAKIHByb3RlY3RlZDoKLSAgICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJiwgSlNHbG9iYWxPYmpl
Y3QqKTsKKyAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSosIEpTR2xvYmFsT2JqZWN0
Kik7CiAKIHByaXZhdGU6CiAgICAgSW50bE9iamVjdChWTSYsIFN0cnVjdHVyZSopOwpAQCAtNjMs
OCArNjMsOSBAQCBTdHJpbmcgaW50bFN0cmluZ09wdGlvbihFeGVjU3RhdGUmLCBKU1ZhbHVlIG9w
dGlvbnMsIFByb3BlcnR5TmFtZSwgY29uc3QgSGFzaFNldAogVmVjdG9yPFN0cmluZz4gY2Fub25p
Y2FsaXplTG9jYWxlTGlzdChFeGVjU3RhdGUmLCBKU1ZhbHVlIGxvY2FsZXMpOwogSGFzaE1hcDxT
dHJpbmcsIFN0cmluZz4gcmVzb2x2ZUxvY2FsZShjb25zdCBIYXNoU2V0PFN0cmluZz4mIGF2YWls
YWJsZUxvY2FsZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiByZXF1ZXN0ZWRMb2NhbGVzLCBjb25z
dCBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiYgb3B0aW9ucywgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHJlbGV2YW50RXh0ZW5zaW9uS2V5cywgVmVjdG9yPFN0cmluZz4gKCpsb2NhbGVEYXRhKShjb25z
dCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmKSk7CiBKU1ZhbHVlIHN1cHBvcnRlZExvY2FsZXMoRXhl
Y1N0YXRlJiwgY29uc3QgSGFzaFNldDxTdHJpbmc+JiBhdmFpbGFibGVMb2NhbGVzLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgcmVxdWVzdGVkTG9jYWxlcywgSlNWYWx1ZSBvcHRpb25zKTsKLVN0cmlu
ZyByZW1vdmVVbmljb2RlTG9jYWxlRXh0ZW5zaW9uKGNvbnN0IFN0cmluZyYpOwotU3RyaW5nIGJl
c3RBdmFpbGFibGVMb2NhbGUoY29uc3QgSGFzaFNldDxTdHJpbmc+JiwgY29uc3QgU3RyaW5nJik7
CitTdHJpbmcgcmVtb3ZlVW5pY29kZUxvY2FsZUV4dGVuc2lvbihjb25zdCBTdHJpbmcmIGxvY2Fs
ZSk7CitTdHJpbmcgYmVzdEF2YWlsYWJsZUxvY2FsZShjb25zdCBIYXNoU2V0PFN0cmluZz4mIGF2
YWlsYWJsZUxvY2FsZXMsIGNvbnN0IFN0cmluZyYgcmVxdWVzdGVkTG9jYWxlKTsKK1ZlY3RvcjxT
dHJpbmc+IGdldE51bWJlcmluZ1N5c3RlbXNGb3JMb2NhbGUoY29uc3QgU3RyaW5nJiBsb2NhbGUp
OwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCmluZGV4IGVjYzgyYmE2MjhiZjE2ZjIxMTc5YTJjNDhk
YmE3M2FmN2VlNzJhODEuLmNiNjZiMTA4ZjA2MmFhN2VlZDQ0NDVmNDQ0NjVkY2NlN2Q0ZjJmNmUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5j
cHAKQEAgLTQ2OCw3ICs0NjgsNyBAQCBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0u
cHJvcGVydHlOYW1lcy0+IGpzTmFtZSwgbG93ZXJOYW1lICMjIENvbnN0cnVjdAogICAgIHB1dERp
cmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5ldmFsLCBtX2V2YWxG
dW5jdGlvbi5nZXQoKSwgRG9udEVudW0pOwogICAgIAogI2lmIEVOQUJMRShJTlRMKQotICAgIElu
dGxPYmplY3QqIGludGwgPSBJbnRsT2JqZWN0OjpjcmVhdGUodm0sIHRoaXMsIEludGxPYmplY3Q6
OmNyZWF0ZVN0cnVjdHVyZSh2bSwgdGhpcywgbV9vYmplY3RQcm90b3R5cGUuZ2V0KCkpKTsKKyAg
ICBJbnRsT2JqZWN0KiBpbnRsID0gSW50bE9iamVjdDo6Y3JlYXRlKGV4ZWMsIHRoaXMsIEludGxP
YmplY3Q6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgdGhpcywgbV9vYmplY3RQcm90b3R5cGUuZ2V0KCkp
KTsKICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlOYW1lcy0+
SW50bCwgaW50bCwgRG9udEVudW0pOwogI2VuZGlmIC8vIEVOQUJMRShJTlRMKQogICAgIHB1dERp
cmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5KU09OLCBKU09OT2Jq
ZWN0OjpjcmVhdGUodm0sIEpTT05PYmplY3Q6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgdGhpcywgbV9v
YmplY3RQcm90b3R5cGUuZ2V0KCkpKSwgRG9udEVudW0pOwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2Ny
aXB0cy93ZWJraXRwZXJsL0ZlYXR1cmVMaXN0LnBtIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRwZXJs
L0ZlYXR1cmVMaXN0LnBtCmluZGV4IDU3YzRiOWI0ZDgzNThiM2NkYTQzZjZiNjVmNmMwODBlMmE5
ZjdkOTAuLmYxMDhjMjdiY2FjMTgyYzY1M2YzMGQzNjA5OWRmYWQwZTVjMjJlYzkgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cGVybC9GZWF0dXJlTGlzdC5wbQorKysgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHBlcmwvRmVhdHVyZUxpc3QucG0KQEAgLTMwNiw3ICszMDYsNyBAQCBteSBA
ZmVhdHVyZXMgPSAoCiAgICAgICBkZWZpbmUgPT4gIkVOQUJMRV9JTlBVVF9UWVBFX1dFRUsiLCBk
ZWZhdWx0ID0+IDAsIHZhbHVlID0+IFwkaW5wdXRUeXBlV2Vla1N1cHBvcnQgfSwKIAogICAgIHsg
b3B0aW9uID0+ICJpbnRsIiwgZGVzYyA9PiAiVG9nZ2xlIEludGwgc3VwcG9ydCIsCi0gICAgICBk
ZWZpbmUgPT4gIkVOQUJMRV9JTlRMIiwgZGVmYXVsdCA9PiAxLCB2YWx1ZSA9PiBcJGludGxTdXBw
b3J0IH0sCisgICAgICBkZWZpbmUgPT4gIkVOQUJMRV9JTlRMIiwgZGVmYXVsdCA9PiAhaXNXaW5k
b3dzKCksIHZhbHVlID0+IFwkaW50bFN1cHBvcnQgfSwKIAogICAgIHsgb3B0aW9uID0+ICJsZWdh
Y3ktbm90aWZpY2F0aW9ucyIsIGRlc2MgPT4gIlRvZ2dsZSBMZWdhY3kgTm90aWZpY2F0aW9ucyBz
dXBwb3J0IiwKICAgICAgIGRlZmluZSA9PiAiRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TIiwg
ZGVmYXVsdCA9PiAwLCB2YWx1ZSA9PiBcJGxlZ2FjeU5vdGlmaWNhdGlvbnNTdXBwb3J0IH0sCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggNTU0ZGFiZTAwYzdlYjE3NDE5NzcyOTBkY2NiYTA3NDgzMWY0YzIzNS4uMTczMDY3ZmNm
NTJhNzgzYmQwYjAzMDYyYmM1ZGE4NDJlNzM5NGE2MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisy
MDE1LTE2LTExICBBbmR5IFZhbldhZ29uZXIgIDxhbmR5QGluc3RydWN0dXJlLmNvbT4KKworICAg
ICAgICBbSU5UTF0gSW1wbGVtZW50IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29s
dmVkT3B0aW9ucyAoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTQ3NjAzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBqcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dDogQWRkZWQgcmVzb2x2
ZWRPcHRpb25zIHRlc3RzLgorICAgICAgICAqIGpzL3NjcmlwdC10ZXN0cy9pbnRsLWRhdGV0aW1l
Zm9ybWF0LmpzOiBBZGRlZCByZXNvbHZlZE9wdGlvbnMgdGVzdHMuCisKIDIwMTUtMTItMTYgIFJ5
YW4gSGFkZGFkICA8cnlhbmhhZGRhZEBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkaW5nIHRpbWVv
dXQgdG8gd3B0IFRlc3RFeHBlY3RhdGlvbnMgZHVlIHRvIFdLL1dQVCB0ZXN0aGFybmVzcy5qcyBp
c3N1ZXMuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2pzL2ludGwtZGF0ZXRpbWVmb3JtYXQtZXhwZWN0ZWQu
dHh0CmluZGV4IGQwMTZjODAwNDdkNjRkMDIzOGI1Yzk2ZDdiOTBiNmM0YWUxYzllYTQuLjhhNWZk
ZWZjMDA4ZjcyY2Q1Nzg1MWZiMzc3YWY1NWRlMWZmMmRlMmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2pzL2ludGwtZGF0ZXRpbWVmb3JtYXQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2pzL2ludGwtZGF0ZXRpbWVmb3JtYXQtZXhwZWN0ZWQudHh0CkBAIC01NCw3ICs1NCw3IEBAIFBB
U1MgT2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCAnZm9ybWF0JywgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihJbnRsLkRhCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LmZvcm1hdCAhPT0gSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCBpcyB0cnVlCiBQQVNTIG5l
dyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0ICE9PSBuZXcgSW50bC5EYXRlVGltZUZvcm1h
dCgpLmZvcm1hdCBpcyB0cnVlCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZv
cm1hdCh7IHZhbHVlT2YoKSB7IHRocm93IEVycm9yKCc0YicpIH0gfSkgdGhyZXcgZXhjZXB0aW9u
IEVycm9yOiA0Yi4KLVBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KElu
ZmluaXR5KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZGF0ZSB2YWx1ZSBpcyBub3QgZmlu
aXRlIGluIERhdGVUaW1lRm9ybWF0LmZvcm1hdCgpLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
LnByb3RvdHlwZS5mb3JtYXQoSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBk
YXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQgZm9ybWF0KCkuCiBQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdC5jYWxsKG51bGwsIDApIGlzIElu
dGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5w
cm90b3R5cGUuZm9ybWF0LmNhbGwoSW50bC5EYXRlVGltZUZvcm1hdCgnYXInKSwgMCkgaXMgSW50
bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5mb3JtYXQuY2FsbCg1LCAwKSBpcyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0
KDApCkBAIC02Myw4ICs2MywyMzcgQEAgUEFTUyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZv
cm1hdC5jYWxsKEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyJyksIDApIGlzIEludGwKIFBBU1MgbmV3
IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQuY2FsbCg1LCAwKSBpcyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCkuZm9ybWF0KDApCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJl
c29sdmVkT3B0aW9ucy5sZW5ndGggaXMgMAogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZS5yZXNvbHZlZE9wdGlvbnMoKSBpcyBhbiBpbnN0YW5jZSBvZiBPYmplY3QKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIGlzIG5l
dyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlz
IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5k
YXIgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRh
cgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5u
dW1iZXJpbmdTeXN0ZW0gaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlv
bnMoKS5udW1iZXJpbmdTeXN0ZW0KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJl
c29sdmVkT3B0aW9ucygpLndlZWtkYXkKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5
cGUucmVzb2x2ZWRPcHRpb25zKCkuZXJhIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVz
b2x2ZWRPcHRpb25zKCkuZXJhCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJl
c29sdmVkT3B0aW9ucygpLnllYXIgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZl
ZE9wdGlvbnMoKS55ZWFyCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29s
dmVkT3B0aW9ucygpLm1vbnRoIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRP
cHRpb25zKCkubW9udGgKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2
ZWRPcHRpb25zKCkuZGF5IGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRp
b25zKCkuZGF5CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucygpLmhvdXIgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMo
KS5ob3VyCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIxMiBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygp
LmhvdXIxMgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlv
bnMoKS5taW51dGUgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMo
KS5taW51dGUKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRp
b25zKCkuc2Vjb25kIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25z
KCkuc2Vjb25kCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lTmFtZSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lTmFtZQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlw
ZS5yZXNvbHZlZE9wdGlvbnMoKSA9PT0gSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVz
b2x2ZWRPcHRpb25zKCkgaXMgZmFsc2UKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5
cGUucmVzb2x2ZWRPcHRpb25zLmNhbGwoNSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogSW50
bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNhbGxlZCBvbiB2YWx1
ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1lRm9ybWF0Lgor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCckJykgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6
IGludmFsaWQgbGFuZ3VhZ2UgdGFnOiAkLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IG51bGwpIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkgaXMgdW5kZWZpbmVkCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuZXJhIGlzIHVuZGVmaW5lZAor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlz
ICdudW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLmRheSBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNv
bHZlZE9wdGlvbnMoKS55ZWFyIGlzICdudW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIGlzIHVuZGVmaW5lZAor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBp
cyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlv
bnMoKS5zZWNvbmQgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJyku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjogeyB0b1N0cmluZygpIHsgdGhyb3cg
J25vcGUnIH0gfSB9KSB0aHJldyBleGNlcHRpb24gbm9wZS4KK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IGxvY2FsZU1hdGNoZXI6J2JhZCcgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdl
RXJyb3I6IGxvY2FsZU1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgImxvb2t1cCIgb3IgImJlc3QgZml0
Ii4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxvY2FsZU1hdGNoZXI6J2xvb2t1
cCcgfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBsb2NhbGVNYXRjaGVyOidiZXN0IGZpdCcgfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBmb3JtYXRNYXRjaGVyOiB7IHRv
U3RyaW5nKCkgeyB0aHJvdyAnbm9wZScgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBub3BlLgorUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjonYmFkJyB9KSB0aHJl
dyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZm9ybWF0TWF0Y2hlciBtdXN0IGJlIGVpdGhlciAiYmFz
aWMiIG9yICJiZXN0IGZpdCIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBmb3Jt
YXRNYXRjaGVyOidiYXNpYycgfSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBmb3JtYXRNYXRjaGVyOidiZXN0IGZpdCcgfSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ25vd2hlcmUvYm9ndXMnIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBpbnZh
bGlkIHRpbWUgem9uZTogbm93aGVyZS9ib2d1cy4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbm9wZScgfSB9IH0pIHRocmV3
IGV4Y2VwdGlvbiBub3BlLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdhbWVyaWNhL2RlbnZlcicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0Ft
ZXJpY2EvRGVudmVyJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdBTUVSSUNBL0xPU19BTkdFTEVTJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAn
QW1lcmljYS9Mb3NfQW5nZWxlcycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0FtZXJpY2EvQXRrYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
aXMgJ0FtZXJpY2EvQWRhaycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnQW1lcmljYS9FbnNlbmFkYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0FtZXJpY2EvVGlqdWFuYScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnQW1lcmljYS9Qb3J0b19BY3JlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBp
cyAnQW1lcmljYS9SaW9fQnJhbmNvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdBbWVyaWNhL1NoaXByb2NrJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSBpcyAnQW1lcmljYS9EZW52ZXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0FudGFyY3RpY2EvU291dGhfUG9sZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ1BhY2lmaWMvQXVja2xhbmQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0FzaWEvQXNoa2hhYmFkJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSBpcyAnQXNpYS9Bc2hnYWJhdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnQXNpYS9DaG9uZ3FpbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IGlzICdBc2lhL1NoYW5naGFpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBc2lhL0NodW5na2luZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0FzaWEvU2hhbmdoYWknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ0FzaWEvRGFjY2EnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL0Ro
YWthJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL0hh
cmJpbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvU2hhbmdoYWknCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvS2FzaGdhcicg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvVXJ1bXFpJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL01hY2FvJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9NYWNhdScKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9UZWxfQXZpdicgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUgaXMgJ0FzaWEvSmVydXNhbGVtJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL1RoaW1idScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0FzaWEvVGhpbXBodScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnQXNpYS9VanVuZ19QYW5kYW5nJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSBpcyAnQXNpYS9NYWthc3NhcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnQXNpYS9VbGFuX0JhdG9yJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSBpcyAnQXNpYS9VbGFhbmJhYXRhcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnQXVzdHJhbGlhL0FDVCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
aXMgJ0F1c3RyYWxpYS9TeWRuZXknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0F1c3RyYWxpYS9DYW5iZXJyYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUgaXMgJ0F1c3RyYWxpYS9TeWRuZXknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9MSEknIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IGlzICdBdXN0cmFsaWEvTG9yZF9Ib3dlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvTlNXJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSBpcyAnQXVzdHJhbGlhL1N5ZG5leScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnQXVzdHJhbGlhL05vcnRoJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSBpcyAnQXVzdHJhbGlhL0RhcndpbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnQXVzdHJhbGlhL1F1ZWVuc2xhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdBdXN0cmFsaWEvQnJpc2JhbmUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9Tb3V0aCcgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUgaXMgJ0F1c3RyYWxpYS9BZGVsYWlkZScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1Rhc21hbmlhJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSBpcyAnQXVzdHJhbGlhL0hvYmFydCcKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1ZpY3RvcmlhJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnQXVzdHJhbGlhL01lbGJvdXJuZScKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1dlc3QnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIGlzICdBdXN0cmFsaWEvUGVydGgnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9ZYW5jb3dpbm5hJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXVzdHJhbGlhL0Jyb2tlbl9IaWxsJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6aWwvQWNyZScgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvUmlvX0JyYW5jbycKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQnJhemlsL0RlTm9yb25oYScgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvTm9yb25oYScKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQnJhemlsL0Vhc3QnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1Nhb19QYXVsbycKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQnJhemlsL1dlc3QnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL01hbmF1cycKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL0F0bGFudGljJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9IYWxpZmF4JworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvQ2VudHJhbCcgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvV2lubmlwZWcnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9FYXN0LVNhc2thdGNoZXdhbicgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvUmVnaW5hJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvRWFzdGVybicgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvVG9yb250bycKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL01vdW50YWluJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9FZG1vbnRvbicKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL05ld2ZvdW5kbGFuZCcgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvU3RfSm9obnMnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9QYWNpZmljJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9WYW5jb3V2ZXInCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9TYXNrYXRjaGV3YW4nIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1JlZ2luYScKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL1l1a29uJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9XaGl0ZWhvcnNlJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDaGlsZS9Db250aW5lbnRhbCcgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvU2FudGlhZ28nCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NoaWxlL0Vhc3RlcklzbGFuZCcg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1BhY2lmaWMvRWFzdGVyJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDdWJhJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9IYXZhbmEnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0VneXB0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSBpcyAnQWZyaWNhL0NhaXJvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdFaXJlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnRXVyb3Bl
L0R1YmxpbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnRXVy
b3BlL0JlbGZhc3QnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdFdXJvcGUvTG9u
ZG9uJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdFdXJvcGUv
VGlyYXNwb2wnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdFdXJvcGUvQ2hpc2lu
YXUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dCJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnRXVyb3BlL0xvbmRvbicKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR0ItRWlyZScgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9Mb25kb24nCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dNVCswJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSBpcyAnVVRDJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdH
TVQtMCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1VUQycKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR01UMCcgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUgaXMgJ1VUQycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnR3JlZW53aWNoJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnVVRD
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdIb25na29uZycg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvSG9uZ19Lb25nJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdJY2VsYW5kJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXRsYW50aWMvUmV5a2phdmlrJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdJcmFuJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnQXNpYS9UZWhyYW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0lzcmFlbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0FzaWEvSmVydXNhbGVtJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdKYW1haWNhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9K
YW1haWNhJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdKYXBh
bicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvVG9reW8nCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0t3YWphbGVpbicgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1BhY2lmaWMvS3dhamFsZWluJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdMaWJ5YScgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUgaXMgJ0FmcmljYS9Ucmlwb2xpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdNZXhpY28vQmFqYU5vcnRlJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnQW1lcmljYS9UaWp1YW5hJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdNZXhpY28vQmFqYVN1cicgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUgaXMgJ0FtZXJpY2EvTWF6YXRsYW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ01leGljby9HZW5lcmFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSBpcyAnQW1lcmljYS9NZXhpY29fQ2l0eScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnTlonIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlz
ICdQYWNpZmljL0F1Y2tsYW5kJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdOWi1DSEFUJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnUGFjaWZp
Yy9DaGF0aGFtJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdO
YXZham8nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0RlbnZlcicK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnUFJDJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9TaGFuZ2hhaScKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnUG9sYW5kJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnRXVyb3BlL1dhcnNhdycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnUG9ydHVnYWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IGlzICdFdXJvcGUvTGlzYm9uJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdST0MnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1RhaXBl
aScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnUk9LJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9TZW91bCcKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnU2luZ2Fwb3JlJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSBpcyAnQXNpYS9TaW5nYXBvcmUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ1R1cmtleScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUgaXMgJ0V1cm9wZS9Jc3RhbmJ1bCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnVUNUJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnVVRDJwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9BbGFza2EnIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0FuY2hvcmFnZScKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvQWxldXRpYW4nIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0FkYWsnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0FyaXpvbmEnIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1Bob2VuaXgnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0NlbnRyYWwnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdBbWVyaWNhL0NoaWNhZ28nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ1VTL0Vhc3Rlcm4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdBbWVyaWNhL05ld19Zb3JrJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdVUy9IYXdhaWknIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlz
ICdQYWNpZmljL0hvbm9sdWx1JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdVUy9NaWNoaWdhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0Ft
ZXJpY2EvRGV0cm9pdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnVVMvTW91bnRhaW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNh
L0RlbnZlcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMv
UGFjaWZpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvTG9zX0Fu
Z2VsZXMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL1Nh
bW9hJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnUGFjaWZpYy9QYWdvX1BhZ28n
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VUQycgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1VUQycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnVW5pdmVyc2FsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSBpcyAnVVRDJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdXLVNVJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnRXVyb3BlL01vc2NvdycK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnWnVsdScgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1VUQycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnYXItc2EnKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUgaXMgJ2FyLVNBJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdp
c2xhbWljLXVtYWxxdXJhJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdhci1zYScpLnJlc29s
dmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnYXJhYicKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IGNhbGVuZGFyOidkYW5naScgfSkucmVzb2x2ZWRPcHRpb25zKCkuY2Fs
ZW5kYXIgaXMgJ2dyZWdvcmlhbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1i
b2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSBpcyAnZW4nCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtY2EtYm9ndXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAn
Z3JlZ29yaWFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJ1ZGRoaXN0Jyku
cmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIGlzICdlbi11LWNhLWJ1ZGRoaXN0JworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJ1ZGRoaXN0JykucmVzb2x2ZWRPcHRpb25zKCkuY2Fs
ZW5kYXIgaXMgJ2J1ZGRoaXN0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWNo
aW5lc2UnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnY2hpbmVzZScKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1jb3B0aWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxl
bmRhciBpcyAnY29wdGljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWRhbmdp
JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2RhbmdpJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LWNhLWV0aGlvYWEnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBp
cyAnZXRoaW9waWMtYW1ldGUtYWxlbScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1j
YS1ldGhpb3BpYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdldGhpb3BpYycKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnYXItU0EtdS1jYS1ncmVnb3J5JykucmVzb2x2ZWRPcHRp
b25zKCkuY2FsZW5kYXIgaXMgJ2dyZWdvcmlhbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1jYS1oZWJyZXcnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaGVicmV3Jwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWluZGlhbicpLnJlc29sdmVkT3B0aW9u
cygpLmNhbGVuZGFyIGlzICdpbmRpYW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtaXNsYW1pYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdpc2xhbWljJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWNjJykucmVzb2x2ZWRPcHRpb25z
KCkuY2FsZW5kYXIgaXMgJ2lzbGFtaWMtY2l2aWwnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtY2EtSVNPODYwMScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdpc284NjAx
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWphcGFuZXNlJykucmVzb2x2ZWRP
cHRpb25zKCkuY2FsZW5kYXIgaXMgJ2phcGFuZXNlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LWNhLXBlcnNpYW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAncGVyc2lh
bicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1yb2MnKS5yZXNvbHZlZE9wdGlv
bnMoKS5jYWxlbmRhciBpcyAncm9jJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
bnVtYmVyaW5nU3lzdGVtOidndWpyJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0gaXMgJ2xhdG4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYm9ndXMnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUgaXMgJ2VuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LW51LWJvZ3VzJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICds
YXRuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxhdG4nKS5yZXNvbHZlZE9w
dGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2xhdG4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtbnUtYXJhYicpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSBpcyAnZW4tdS1udS1h
cmFiJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWFyYWInKS5yZXNvbHZlZE9w
dGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2FyYWInCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtbnUtYXJhYmV4dCcpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBp
cyAnYXJhYmV4dCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1iYWxpJykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdiYWxpJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LW51LWJlbmcnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0gaXMgJ2JlbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZGV2YScpLnJl
c29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnZGV2YScKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1udS1mdWxsd2lkZScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSBpcyAnZnVsbHdpZGUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
Z3VqcicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnZ3VqcicKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ndXJ1JykucmVzb2x2ZWRPcHRpb25zKCkubnVt
YmVyaW5nU3lzdGVtIGlzICdndXJ1JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51
LWhhbmlkZWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2hhbmlkZWMn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUta2htcicpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyAna2htcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1udS1rbmRhJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdrbmRh
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxhb28nKS5yZXNvbHZlZE9wdGlv
bnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2xhb28nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtbnUtbGltYicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGlt
YicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1tbHltJykucmVzb2x2ZWRPcHRp
b25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdtbHltJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LW51LW1vbmcnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ21v
bmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbXltcicpLnJlc29sdmVkT3B0
aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbXltcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4tdS1udS1vcnlhJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdv
cnlhJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LXRhbWxkZWMnKS5yZXNvbHZl
ZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3RhbWxkZWMnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtbnUtdGVsdScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3Rl
bSBpcyAndGVsdScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10aGFpJykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICd0aGFpJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LW51LXRpYnQnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0gaXMgJ3RpYnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5OiB7
IHRvU3RyaW5nKCkgeyB0aHJvdyAnd2Vla2RheScgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiB3ZWVr
ZGF5LgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonaW52YWxpZCcg
fSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IHdlZWtkYXkgbXVzdCBiZSAibmFycm93Iiwg
InNob3J0Iiwgb3IgImxvbmciLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWlu
dXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2Rh
eSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6
J25hcnJvdycsIG1vbnRoOidudW1lcmljJywgZGF5OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS53ZWVrZGF5IGlzICduYXJyb3cnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB3ZWVrZGF5OidzaG9ydCcsIG1vbnRoOidudW1lcmljJywgZGF5OidudW1lcmljJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS53ZWVrZGF5IGlzICdzaG9ydCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHdlZWtkYXk6J2xvbmcnLCBtb250aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycg
fSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSBpcyAnbG9uZycKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IGVyYTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ2VyYScgfSB9IH0pIHRo
cmV3IGV4Y2VwdGlvbiBlcmEuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6
J25ldmVyJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZXJhIG11c3QgYmUgIm5hcnJv
dyIsICJzaG9ydCIsIG9yICJsb25nIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRh
eSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFy
cm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIGlzICduYXJyb3cn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J3Nob3J0JywgeWVhcjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIGlzICdzaG9ydCcKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbG9uZycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLmVyYSBpcyAnbG9uZycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHllYXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICd5ZWFyJyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9u
IHllYXIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB5ZWFyOidub3BlJyB9KSB0
aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogeWVhciBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVt
ZXJpYyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQn
LCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIGlzIHVuZGVmaW5lZAor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduYXJyb3cnLCB5ZWFyOicyLWRp
Z2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIGlzICcyLWRpZ2l0JworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduYXJyb3cnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS55ZWFyIGlzICdudW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbW9udGg6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdtb250aCcgfSB9IH0pIHRocmV3
IGV4Y2VwdGlvbiBtb250aC4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRo
OjIgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IG1vbnRoIG11c3QgYmUgIjItZGlnaXQi
LCAibnVtZXJpYyIsICJuYXJyb3ciLCAic2hvcnQiLCBvciAibG9uZyIuCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IG1vbnRoOicyLWRpZ2l0JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRP
cHRpb25zKCkubW9udGggaXMgJzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBtb250aDonbnVtZXJpYycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygp
Lm1vbnRoIGlzICdudW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9u
dGg6J25hcnJvdycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlz
ICduYXJyb3cnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonc2hvcnQn
LCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnc2hvcnQnCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonbG9uZycsIHllYXI6J251bWVy
aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlzICdsb25nJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgZGF5OiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnZGF5JyB9IH0gfSkg
dGhyZXcgZXhjZXB0aW9uIGRheS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGRh
eTonJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZGF5IG11c3QgYmUgIjItZGlnaXQi
IG9yICJudW1lcmljIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTon
Mi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSBpcyB1bmRl
ZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgZGF5
OicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMgJzItZGlnaXQnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonbG9uZycsIGRheTonbnVtZXJpYycgfSku
cmVzb2x2ZWRPcHRpb25zKCkuZGF5IGlzICdudW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgaG91cjogeyB0b1N0cmluZygpIHsgdGhyb3cgJ2hvdXInIH0gfSB9KSB0aHJl
dyBleGNlcHRpb24gaG91ci4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGhvdXI6
W10gfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGhvdXIgbXVzdCBiZSAiMi1kaWdpdCIg
b3IgIm51bWVyaWMiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0
aW9ucygpLmhvdXIgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBtaW51dGU6JzItZGlnaXQnLCBob3VyOicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5o
b3VyIGlzICdudW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRl
OicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91ciBpcyAn
bnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMo
KS5ob3VyMTIgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
aW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3Vy
MTIgaXMgdHJ1ZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdwdC1CUicsIHsgbWludXRlOicy
LWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIGlzIGZh
bHNlCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6IHsgdG9TdHJpbmco
KSB7IHRocm93ICdtaW51dGUnIH0gfSB9KSB0aHJldyBleGNlcHRpb24gbWludXRlLgorUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOm51bGwgfSkgdGhyZXcgZXhjZXB0aW9u
IFJhbmdlRXJyb3I6IG1pbnV0ZSBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyIuCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIGlzIHVu
ZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0
JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIGlzICcyLWRpZ2l0
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOidudW1lcmljJywgaG91
cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIGlzICcyLWRpZ2l0JworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgc2Vjb25kOiB7IHRvU3RyaW5nKCkgeyB0aHJv
dyAnc2Vjb25kJyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIHNlY29uZC4KK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHNlY29uZDonYmFkdmFsdWUnIH0pIHRocmV3IGV4Y2VwdGlvbiBS
YW5nZUVycm9yOiBzZWNvbmQgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiLgorUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCBpcyB1bmRl
ZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonbnVtZXJpYycs
IGhvdXI6J251bWVyaWMnLCBzZWNvbmQ6JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnNl
Y29uZCBpcyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0
ZTonbnVtZXJpYycsIGhvdXI6J251bWVyaWMnLCBzZWNvbmQ6J251bWVyaWMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnNlY29uZCBpcyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lTmFtZTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ3RpbWVab25lTmFtZScg
fSB9IH0pIHRocmV3IGV4Y2VwdGlvbiB0aW1lWm9uZU5hbWUuCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZU5hbWU6J25hbWUnIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5n
ZUVycm9yOiB0aW1lWm9uZU5hbWUgbXVzdCBiZSAic2hvcnQiIG9yICJsb25nIi4KK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUgaXMg
dW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGln
aXQnLCBob3VyOidudW1lcmljJywgdGltZVpvbmVOYW1lOidzaG9ydCcgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmVOYW1lIGlzICdzaG9ydCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
cHQtQlInLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnLCB0aW1lWm9uZU5hbWU6
J2xvbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSBpcyAnbG9uZycKIFBBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwtZGF0ZXRpbWVmb3JtYXQuanMgYi9MYXlv
dXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5qcwppbmRleCBlZGUx
YjVjZTM0NmZkMjkwNTMwYjM3Mzc3ZjAwY2FlNTAzN2U2MDdmLi4zYTc2YzAwOGIxN2E2MDhiNTAy
NDhjNWYzMTc1NzY5ODQyZmJhMTg4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9zY3JpcHQt
dGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5qcworKysgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQt
dGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5qcwpAQCAtMTE5LDcgKzExOSw3IEBAIHNob3VsZFRo
cm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoeyB2YWx1ZU9mKCkgeyB0
aHJvdyBFcnJvcignNGInCiAvLyAxMi4zLjQgRm9ybWF0RGF0ZVRpbWUgYWJzdHJhY3Qgb3BlcmF0
aW9uCiAKIC8vIDEuIElmIHggaXMgbm90IGEgZmluaXRlIE51bWJlciwgdGhlbiB0aHJvdyBhIFJh
bmdlRXJyb3IgZXhjZXB0aW9uLgotc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLmZvcm1hdChJbmZpbml0eSkiLCAiJ1JhbmdlRXJyb3I6IGRhdGUgdmFsdWUgaXMgbm90
IGZpbml0ZSBpbiBEYXRlVGltZUZvcm1hdC5mb3JtYXQoKSciKTsKK3Nob3VsZFRocm93KCJJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoSW5maW5pdHkpIiwgIidSYW5nZUVycm9y
OiBkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQgZm9ybWF0KCknIik7
CiAKIC8vIEZvcm1hdCBpcyBib3VuZCwgc28gY2FsbGluZyB3aXRoIGFsdGVybmF0ZSAidGhpcyIg
aGFzIG5vIGVmZmVjdC4KIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5m
b3JtYXQuY2FsbChudWxsLCAwKSIsICJJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApIik7
CkBAIC0xMzYsOSArMTM2LDI3MSBAQCBzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90
b3R5cGUucmVzb2x2ZWRPcHRpb25zLmxlbmd0aCIsICIwIik7CiAvLyBSZXR1cm5zIGEgbmV3IG9i
amVjdCB3aG9zZSBwcm9wZXJ0aWVzIGFuZCBhdHRyaWJ1dGVzIGFyZSBzZXQgYXMgaWYgY29uc3Ry
dWN0ZWQgYnkgYW4gb2JqZWN0IGxpdGVyYWwuCiBzaG91bGRCZVR5cGUoIkludGwuRGF0ZVRpbWVG
b3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIiwgIk9iamVjdCIpOwogCisvLyBUaGUg
SW50bC5EYXRlVGltZUZvcm1hdCBwcm90b3R5cGUgb2JqZWN0IGlzIGl0c2VsZiBhbiAlRGF0ZVRp
bWVGb3JtYXQlIGluc3RhbmNlLCB3aG9zZSBpbnRlcm5hbCBzbG90cyBhcmUgc2V0IGFzIGlmIGl0
IGhhZCBiZWVuIGNvbnN0cnVjdGVkIGJ5IHRoZSBleHByZXNzaW9uIENvbnN0cnVjdCglRGF0ZVRp
bWVGb3JtYXQlKS4KK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNv
bHZlZE9wdGlvbnMoKS5sb2NhbGUiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZl
ZE9wdGlvbnMoKS5sb2NhbGUiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1h
dCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAibmV3IEludGwu
RGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm51
bWJlcmluZ1N5c3RlbSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5y
ZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkueWVhciIsICJuZXcgSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnllYXIiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCIsICJuZXcgSW50bC5E
YXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuZGF5IiwgIm5ldyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuZGF5Iik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuaG91ciIsICJu
ZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIiKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5ob3Vy
MTIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIi
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlv
bnMoKS5taW51dGUiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMo
KS5taW51dGUiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNv
bHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZl
ZE9wdGlvbnMoKS5zZWNvbmQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUiLCAibmV3IEludGwuRGF0ZVRpbWVG
b3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUiKTsKKwogLy8gUmV0dXJucyBh
IG5ldyBvYmplY3QgZWFjaCB0aW1lLgogc2hvdWxkQmVGYWxzZSgiSW50bC5EYXRlVGltZUZvcm1h
dC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgPT09IEludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLnJlc29sdmVkT3B0aW9ucygpIik7CiAKIC8vIFRocm93cyBvbiBub24tRGF0ZVRpbWVG
b3JtYXQgdGhpcy4KIHNob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5y
ZXNvbHZlZE9wdGlvbnMuY2FsbCg1KSIsICInVHlwZUVycm9yOiBJbnRsLkRhdGVUaW1lRm9ybWF0
LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgY2FsbGVkIG9uIHZhbHVlIHRoYXRcXCdzIG5vdCBh
biBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdCciKTsKIAorc2hvdWxkVGhy
b3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJyQnKSIsICInUmFuZ2VFcnJvcjogaW52YWxpZCBsYW5n
dWFnZSB0YWc6ICQnIik7CitzaG91bGROb3RUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCBudWxsKSIpOworCisvLyBEZWZhdWx0cyB0byBtb250aCwgZGF5LCB5ZWFyLgorc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSIsICJ1
bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVk
T3B0aW9ucygpLmVyYSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIiwgIidudW1lcmljJyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuZGF5IiwgIidu
dW1lcmljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRP
cHRpb25zKCkueWVhciIsICInbnVtZXJpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIiLCAidW5kZWZpbmVkIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAi
dW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZl
ZE9wdGlvbnMoKS5taW51dGUiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAidW5kZWZpbmVkIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZU5hbWUiLCAidW5kZWZpbmVkIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjogeyB0b1N0cmluZygpIHsgdGhyb3cgJ25vcGUnIH0g
fSB9KSIsICInbm9wZSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgbG9jYWxlTWF0Y2hlcjonYmFkJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGxvY2FsZU1hdGNoZXIg
bXVzdCBiZSBlaXRoZXIgImxvb2t1cCIgb3IgImJlc3QgZml0IlwnJyk7CitzaG91bGROb3RUaHJv
dygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxvY2FsZU1hdGNoZXI6J2xvb2t1cCcgfSki
KTsKK3Nob3VsZE5vdFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0
Y2hlcjonYmVzdCBmaXQnIH0pIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjogeyB0b1N0cmluZygpIHsgdGhyb3cgJ25vcGUnIH0gfSB9
KSIsICInbm9wZSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
Zm9ybWF0TWF0Y2hlcjonYmFkJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGZvcm1hdE1hdGNoZXIgbXVz
dCBiZSBlaXRoZXIgImJhc2ljIiBvciAiYmVzdCBmaXQiXCcnKTsKK3Nob3VsZE5vdFRocm93KCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjonYmFzaWMnIH0pIik7Citz
aG91bGROb3RUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6
J2Jlc3QgZml0JyB9KSIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnbm93aGVyZS9ib2d1cycgfSkiLCAiJ1JhbmdlRXJyb3I6IGludmFsaWQg
dGltZSB6b25lOiBub3doZXJlL2JvZ3VzJyIpOworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ25vcGUnIH0gfSB9
KSIsICInbm9wZSciKTsKKworLy8gVGltZSB6b25lIGlzIGNhc2UgaW5zZW5zaXRpdmUuCitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnYW1lcmljYS9kZW52
ZXInIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0RlbnZlciciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBTUVSSUNB
L0xPU19BTkdFTEVTJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9M
b3NfQW5nZWxlcyciKTsKKworLy8gRGVmYXVsdCB0aW1lIHpvbmUgaXMgYSB2YWxpZCBjYW5vbmlj
YWwgdGltZSB6b25lLgorc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIkludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIpOworCisvLyBUaW1lIHpvbmUgaXMgY2Fub25pY2FsaXpl
ZCBmb3Igb2Jzb2xldGUgbGlua3MgaW4gSUFOQSB0eiBiYWNrd2FyZCBmaWxlLgorc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FtZXJpY2EvQXRrYScgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvQWRhayciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNhL0Vuc2VuYWRh
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9UaWp1YW5hJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FtZXJpY2Ev
UG9ydG9fQWNyZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvUmlv
X0JyYW5jbyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdBbWVyaWNhL1NoaXByb2NrJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QW1lcmljYS9EZW52ZXInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnQW50YXJjdGljYS9Tb3V0aF9Qb2xlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSIsICInUGFjaWZpYy9BdWNrbGFuZCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL0FzaGtoYWJhZCcgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUiLCAiJ0FzaWEvQXNoZ2FiYXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9DaG9uZ3FpbmcnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL1NoYW5naGFpJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvQ2h1bmdraW5nJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9TaGFuZ2hhaSciKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL0RhY2NhJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9EaGFrYSciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL0hhcmJpbicgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvU2hhbmdoYWknIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9LYXNoZ2FyJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9VcnVtcWknIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9NYWNhbycgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvTWFjYXUnIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9UZWxfQXZpdicgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvSmVydXNhbGVtJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvVGhpbWJ1JyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9UaGltcGh1JyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvVWp1bmdfUGFuZGFuZycg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvTWFrYXNzYXInIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9VbGFuX0Jh
dG9yJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9VbGFhbmJhYXRhcici
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0
cmFsaWEvQUNUJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXVzdHJhbGlhL1N5
ZG5leSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdBdXN0cmFsaWEvQ2FuYmVycmEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidB
dXN0cmFsaWEvU3lkbmV5JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9MSEknIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IiwgIidBdXN0cmFsaWEvTG9yZF9Ib3dlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9OU1cnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIiwgIidBdXN0cmFsaWEvU3lkbmV5JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9Ob3J0aCcgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9EYXJ3aW4nIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1F1ZWVuc2xhbmQn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvQnJpc2JhbmUnIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJh
bGlhL1NvdXRoJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXVzdHJhbGlhL0Fk
ZWxhaWRlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ0F1c3RyYWxpYS9UYXNtYW5pYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAi
J0F1c3RyYWxpYS9Ib2JhcnQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1ZpY3RvcmlhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSIsICInQXVzdHJhbGlhL01lbGJvdXJuZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvV2VzdCcgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9QZXJ0aCciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvWWFuY293aW5uYScg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9Ccm9rZW5fSGlsbCci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6
aWwvQWNyZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvUmlvX0Jy
YW5jbyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdCcmF6aWwvRGVOb3JvbmhhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1l
cmljYS9Ob3JvbmhhJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0JyYXppbC9FYXN0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QW1lcmljYS9TYW9fUGF1bG8nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnQnJhemlsL1dlc3QnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IiwgIidBbWVyaWNhL01hbmF1cyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdDYW5hZGEvQXRsYW50aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidBbWVyaWNhL0hhbGlmYXgnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL0NlbnRyYWwnIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIiwgIidBbWVyaWNhL1dpbm5pcGVnJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9FYXN0LVNhc2thdGNoZXdhbicg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvUmVnaW5hJyIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9FYXN0
ZXJuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9Ub3JvbnRvJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFk
YS9Nb3VudGFpbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvRWRt
b250b24nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnQ2FuYWRhL05ld2ZvdW5kbGFuZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAi
J0FtZXJpY2EvU3RfSm9obnMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnQ2FuYWRhL1BhY2lmaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIiwgIidBbWVyaWNhL1ZhbmNvdXZlciciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvU2Fza2F0Y2hld2FuJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9SZWdpbmEnIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL1l1a29uJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9XaGl0ZWhvcnNlJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NoaWxlL0NvbnRpbmVudGFs
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9TYW50aWFnbyciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDaGlsZS9F
YXN0ZXJJc2xhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidQYWNpZmljL0Vh
c3RlciciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdDdWJhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9IYXZhbmEn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnRWd5
cHQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBZnJpY2EvQ2Fpcm8nIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnRWlyZScgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0V1cm9wZS9EdWJsaW4nIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnRXVyb3BlL0JlbGZhc3Qn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidFdXJvcGUvTG9uZG9uJyIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0V1cm9wZS9UaXJh
c3BvbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0V1cm9wZS9DaGlzaW5hdSci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHQicg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0V1cm9wZS9Mb25kb24nIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR0ItRWlyZScgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0V1cm9wZS9Mb25kb24nIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR01UKzAnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidVVEMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR01ULTAnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidVVEMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnR01UMCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1VUQyci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHcmVl
bndpY2gnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidVVEMnIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSG9uZ2tvbmcnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL0hvbmdfS29uZyciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdJY2VsYW5kJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXRsYW50aWMvUmV5a2phdmlrJyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0lyYW4nIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL1RlaHJhbiciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdJc3JhZWwnIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIiwgIidBc2lhL0plcnVzYWxlbSciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdKYW1haWNhJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9KYW1haWNhJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0phcGFuJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSIsICInQXNpYS9Ub2t5byciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdLd2FqYWxlaW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidQYWNpZmljL0t3YWphbGVpbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdMaWJ5YScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUiLCAiJ0FmcmljYS9Ucmlwb2xpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ01leGljby9CYWphTm9ydGUnIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIiwgIidBbWVyaWNhL1RpanVhbmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnTWV4aWNvL0JhamFTdXInIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL01hemF0bGFuJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ01leGljby9HZW5lcmFsJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9NZXhpY29fQ2l0eSciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdOWicgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1BhY2lmaWMvQXVja2xhbmQnIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnTlotQ0hBVCcgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1BhY2lmaWMvQ2hhdGhhbSciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdOYXZham8nIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0RlbnZlciciKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdQUkMnIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIiwgIidBc2lhL1NoYW5naGFpJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1BvbGFuZCcgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUiLCAiJ0V1cm9wZS9XYXJzYXcnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnUG9ydHVnYWwnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIiwgIidFdXJvcGUvTGlzYm9uJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1JPQycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0FzaWEvVGFpcGVpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ1JPSycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0Fz
aWEvU2VvdWwnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnU2luZ2Fwb3JlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9T
aW5nYXBvcmUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnVHVya2V5JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInRXVyb3BlL0lz
dGFuYnVsJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ1VDVCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1VUQyciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9BbGFza2EnIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0FuY2hvcmFnZSciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9BbGV1dGlh
bicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvQWRhayciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9Bcml6b25h
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9QaG9lbml4JyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0NlbnRy
YWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0NoaWNhZ28nIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvRWFz
dGVybicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvTmV3X1lvcmsn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMv
SGF3YWlpJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInUGFjaWZpYy9Ib25vbHVs
dSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdV
Uy9NaWNoaWdhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvRGV0
cm9pdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdVUy9Nb3VudGFpbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2Ev
RGVudmVyJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ1VTL1BhY2lmaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNh
L0xvc19BbmdlbGVzJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ1VTL1NhbW9hJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInUGFj
aWZpYy9QYWdvX1BhZ28nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnVVRDJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInVVRDJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VuaXZl
cnNhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1VUQyciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdXLVNVJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSIsICInRXVyb3BlL01vc2NvdyciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdadWx1JyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSIsICInVVRDJyIpOworCisvLyBHZXRzIGRlZmF1bHQgY2FsZW5kYXIgYW5k
IG51bWJlcmluZ1N5c3RlbSBmcm9tIGxvY2FsZS4KK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInYXItU0EnIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnYXItc2EnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxl
bmRhciIsICInaXNsYW1pYy11bWFscXVyYSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInYXJhYici
KTsKKworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBjYWxlbmRhcjonZGFu
Z2knIH0pLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidncmVnb3JpYW4nIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9u
cygpLmxvY2FsZSIsICInZW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidncmVnb3JpYW4nIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1idWRkaGlzdCcpLnJlc29s
dmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4tdS1jYS1idWRkaGlzdCciKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJ1ZGRoaXN0JykucmVzb2x2ZWRPcHRpb25zKCku
Y2FsZW5kYXIiLCAiJ2J1ZGRoaXN0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtY2EtY2hpbmVzZScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidjaGluZXNl
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtY29wdGljJykucmVz
b2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2NvcHRpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LWNhLWRhbmdpJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIi
LCAiJ2RhbmdpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRo
aW9hYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidldGhpb3BpYy1hbWV0ZS1hbGVt
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9waWMnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInZXRoaW9waWMnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnYXItU0EtdS1jYS1ncmVnb3J5JykucmVzb2x2ZWRPcHRpb25zKCku
Y2FsZW5kYXIiLCAiJ2dyZWdvcmlhbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LWNhLWhlYnJldycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidoZWJyZXcn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pbmRpYW4nKS5yZXNv
bHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaW5kaWFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFy
IiwgIidpc2xhbWljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2Et
aXNsYW1pY2MnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy1jaXZpbCci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLUlTTzg2MDEnKS5yZXNv
bHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNvODYwMSciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LWNhLWphcGFuZXNlJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5k
YXIiLCAiJ2phcGFuZXNlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtcGVyc2lhbicpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidwZXJzaWFuJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2Etcm9jJykucmVzb2x2ZWRPcHRp
b25zKCkuY2FsZW5kYXIiLCAiJ3JvYyciKTsKKy8vIEZJWE1FOiBodHRwczovL2dpdGh1Yi5jb20v
dGMzOS9lY21hNDAyL2lzc3Vlcy81OQorLy8gc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtY2EtZXRoaW9waWMtYW1ldGUtYWxlbScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFy
IiwgIidldGhpb2FhJyIpOworLy8gc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtaXNsYW1pYy11bWFscXVyYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xh
bWljLXVtYWxxdXJhJyIpOworLy8gc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtaXNsYW1pYy10YmxhJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMt
dGJsYSciKTsKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFt
aWMtY2l2aWwnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy1jaXZpbCci
KTsKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWMtcmdz
YScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljLXJnc2EnIik7CisKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbnVtYmVyaW5nU3lzdGVtOidndWpy
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xhdG4nIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9u
cygpLmxvY2FsZSIsICInZW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInbGF0bici
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxhdG4nKS5yZXNvbHZl
ZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xhdG4nIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4tdS1udS1hcmFiJykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIiwg
Iidlbi11LW51LWFyYWInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1u
dS1hcmFiJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidhcmFiJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYXJhYmV4dCcpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInYXJhYmV4dCciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWJhbGknKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJp
bmdTeXN0ZW0iLCAiJ2JhbGknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1iZW5nJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidiZW5nJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZGV2YScpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInZGV2YSciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LW51LWZ1bGx3aWRlJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVy
aW5nU3lzdGVtIiwgIidmdWxsd2lkZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LW51LWd1anInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2d1
anInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ndXJ1JykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidndXJ1JyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtaGFuaWRlYycpLnJlc29sdmVkT3B0aW9ucygpLm51
bWJlcmluZ1N5c3RlbSIsICInaGFuaWRlYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LW51LWtobXInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAi
J2tobXInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1rbmRhJyku
cmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidrbmRhJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGFvbycpLnJlc29sdmVkT3B0aW9ucygpLm51
bWJlcmluZ1N5c3RlbSIsICInbGFvbyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LW51LWxpbWInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xp
bWInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1tbHltJykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidtbHltJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbW9uZycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSIsICInbW9uZyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LW15bXInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ215bXIn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1vcnlhJykucmVzb2x2
ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidvcnlhJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGFtbGRlYycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSIsICIndGFtbGRlYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LW51LXRlbHUnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ3Rl
bHUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10aGFpJykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIid0aGFpJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGlidCcpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSIsICIndGlidCciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB3ZWVrZGF5OiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnd2Vla2RheScgfSB9IH0p
IiwgIid3ZWVrZGF5JyIpOworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB3ZWVrZGF5OidpbnZhbGlkJyB9KSIsICdcJ1JhbmdlRXJyb3I6IHdlZWtkYXkgbXVzdCBiZSAi
bmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2
ZWRPcHRpb25zKCkud2Vla2RheSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonbmFycm93JywgbW9udGg6J251bWVyaWMnLCBkYXk6
J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAiJ25hcnJvdyciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonc2hvcnQnLCBtb250
aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSIs
ICInc2hvcnQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtk
YXk6J2xvbmcnLCBtb250aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRp
b25zKCkud2Vla2RheSIsICInbG9uZyciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyBlcmE6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdlcmEnIH0gfSB9KSIsICIn
ZXJhJyIpOworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25l
dmVyJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGVyYSBtdXN0IGJlICJuYXJyb3ciLCAic2hvcnQiLCBv
ciAibG9uZyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51
dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAi
dW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTon
bmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgIiduYXJy
b3cnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonc2hvcnQn
LCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEiLCAiJ3Nob3J0JyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J2xvbmcnLCB5ZWFyOidu
dW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEiLCAiJ2xvbmcnIik7CisKK3Nob3VsZFRo
cm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgeWVhcjogeyB0b1N0cmluZygpIHsgdGhy
b3cgJ3llYXInIH0gfSB9KSIsICIneWVhciciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgeWVhcjonbm9wZScgfSkiLCAnXCdSYW5nZUVycm9yOiB5ZWFyIG11c3Qg
YmUgIjItZGlnaXQiIG9yICJudW1lcmljIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnllYXIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRp
b25zKCkueWVhciIsICInMi1kaWdpdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgZXJhOiduYXJyb3cnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS55ZWFyIiwgIidudW1lcmljJyIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IG1vbnRoOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbW9udGgnIH0gfSB9KSIsICIn
bW9udGgnIik7CitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRo
OjIgfSkiLCAnXCdSYW5nZUVycm9yOiBtb250aCBtdXN0IGJlICIyLWRpZ2l0IiwgIm51bWVyaWMi
LCAibmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkubW9udGgiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOicyLWRpZ2l0JywgeWVhcjonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkubW9udGgiLCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidudW1lcmljJywgeWVhcjonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkubW9udGgiLCAiJ251bWVyaWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOiduYXJyb3cnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS5tb250aCIsICInbmFycm93JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBtb250aDonc2hvcnQnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS5tb250aCIsICInc2hvcnQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRp
b25zKCkubW9udGgiLCAiJ2xvbmcnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgZGF5OiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnZGF5JyB9IH0gfSkiLCAiJ2Rh
eSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZGF5OicnIH0p
IiwgJ1wnUmFuZ2VFcnJvcjogZGF5IG11c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmljIlwnJyk7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcs
IGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSIsICJ1bmRlZmluZWQiKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCBkYXk6
JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSIsICInMi1kaWdpdCciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCBkYXk6J251bWVy
aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSIsICInbnVtZXJpYyciKTsKKworc2hvdWxkVGhy
b3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBob3VyOiB7IHRvU3RyaW5nKCkgeyB0aHJv
dyAnaG91cicgfSB9IH0pIiwgIidob3VyJyIpOworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyBob3VyOltdIH0pIiwgJ1wnUmFuZ2VFcnJvcjogaG91ciBtdXN0IGJlICIy
LWRpZ2l0IiBvciAibnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJykucmVzb2x2ZWRPcHRpb25zKCkuaG91ciIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonMi1kaWdp
dCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91ciIsICInbnVtZXJpYyciKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJp
YycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91ciIsICInbnVtZXJpYyciKTsKKworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgInVu
ZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6
JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAi
dHJ1ZSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ3B0LUJSJywgeyBtaW51dGU6
JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAi
ZmFsc2UiKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51
dGU6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdtaW51dGUnIH0gfSB9KSIsICInbWludXRlJyIpOwor
c2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6bnVsbCB9KSIs
ICdcJ1JhbmdlRXJyb3I6IG1pbnV0ZSBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyJcJycp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCku
bWludXRlIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS5taW51dGUiLCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1pbnV0ZTonbnVtZXJpYycsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLm1pbnV0ZSIsICInMi1kaWdpdCciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyBzZWNvbmQ6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdzZWNvbmQnIH0gfSB9
KSIsICInc2Vjb25kJyIpOworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBzZWNvbmQ6J2JhZHZhbHVlJyB9KSIsICdcJ1JhbmdlRXJyb3I6IHNlY29uZCBtdXN0IGJlICIy
LWRpZ2l0IiBvciAibnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJykucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1l
cmljJywgc2Vjb25kOicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAiJzIt
ZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTon
bnVtZXJpYycsIGhvdXI6J251bWVyaWMnLCBzZWNvbmQ6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0
aW9ucygpLnNlY29uZCIsICInMi1kaWdpdCciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZU5hbWU6IHsgdG9TdHJpbmcoKSB7IHRocm93ICd0aW1l
Wm9uZU5hbWUnIH0gfSB9KSIsICIndGltZVpvbmVOYW1lJyIpOworc2hvdWxkVGhyb3coIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZU5hbWU6J25hbWUnIH0pIiwgJ1wnUmFuZ2VF
cnJvcjogdGltZVpvbmVOYW1lIG11c3QgYmUgInNob3J0IiBvciAibG9uZyJcJycpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVO
YW1lIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJywgdGltZVpvbmVOYW1lOidzaG9ydCcg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIiwgIidzaG9ydCciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdwdC1CUicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjon
bnVtZXJpYycsIHRpbWVab25lTmFtZTonbG9uZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmVOYW1lIiwgIidsb25nJyIpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>267517</attachid>
            <date>2015-12-16 18:05:25 -0800</date>
            <delta_ts>2015-12-16 18:57:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147603-20151216190446.patch</filename>
            <type>text/plain</type>
            <size>147174</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk0MTY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
ODFhNDVjNWNiYmNkMmJjZjc2MGQ5YmY3MGRhZTIzZmY2NGYzM2JmLi5kMDg1NTNiODM3MDhkY2U2
ZGRkNDVmMmI5ZDBmZGNjZDA0NzQxOGNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw3OSBAQAorMjAxNS0xNi0xMSAgQW5keSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVy
ZS5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQgYW5k
IHJlbGF0ZWQgYWJzdHJhY3Qgb3BlcmF0aW9ucy4KKyAgICAgICAgU3RvcmUgcmVzb2x2ZWQgb3B0
aW9ucyBhcyBlbnVtIHR5cGVzIHdoZXJlIHBvc3NpYmxlLgorICAgICAgICBVc2UgSUNVIGRhdGUg
cGF0dGVybiBnZW5lcmF0b3IgdG8gcmVzb2x2ZSBmb3JtYXR0aW5nIHN0eWxlcy4KKyAgICAgICAg
RGVmZXIgcGFydHMgb2YgSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0IHRoYXQgb25seSBhZmZlY3Qg
Zm9ybWF0KCkuCisKKyAgICAgICAgKiBpY3UvdW5pY29kZS91ZGF0cGcuaDogQWRkZWQuCisgICAg
ICAgICogcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oOgorICAgICAgICAqIHJ1bnRpbWUvSW50
bERhdGVUaW1lRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6ZGVmYXVsdFRpbWVab25lKToKKyAg
ICAgICAgKEpTQzo6Y2Fub25pY2FsaXplVGltZVpvbmVOYW1lKToKKyAgICAgICAgKEpTQzo6bG9j
YWxlRGF0YSk6CisgICAgICAgIChKU0M6OnN0cmluZ1RvQ2FsZW5kYXJUeXBlKToKKyAgICAgICAg
KEpTQzo6dG9EYXRlVGltZU9wdGlvbnMpOgorICAgICAgICAoSlNDOjpzZXRGb3JtYXRzRnJvbVBh
dHRlcm4pOgorICAgICAgICAoSlNDOjppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQpOgorICAgICAg
ICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUpOgorICAgICAgICAq
IHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Lmg6CisgICAgICAgIChKU0M6OkludGxEYXRlVGlt
ZUZvcm1hdDo6aW5pdGlhbGl6ZWRJbnRsT2JqZWN0KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVU
aW1lRm9ybWF0OjpzZXRJbml0aWFsaXplZEludGxPYmplY3QpOgorICAgICAgICAoSlNDOjpJbnRs
RGF0ZVRpbWVGb3JtYXQ6OmluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQpOgorICAgICAgICAoSlND
OjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQpOgorICAg
ICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmxvY2FsZSk6CisgICAgICAgIChKU0M6Oklu
dGxEYXRlVGltZUZvcm1hdDo6c2V0TG9jYWxlKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1l
Rm9ybWF0OjpjYWxlbmRhcik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0
Q2FsZW5kYXIpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6Om51bWJlcmluZ1N5
c3RlbSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0TnVtYmVyaW5nU3lz
dGVtKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojp0aW1lWm9uZSk6CisgICAg
ICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0VGltZVpvbmUpOgorICAgICAgICAoSlND
OjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmhvdXIxMik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGlt
ZUZvcm1hdDo6c2V0SG91cjEyKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojp3
ZWVrZGF5KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRXZWVrZGF5KToK
KyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjplcmEpOgorICAgICAgICAoSlNDOjpJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEVyYSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZv
cm1hdDo6eWVhcik6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0WWVhcik6
CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6bW9udGgpOgorICAgICAgICAoSlND
OjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldE1vbnRoKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVU
aW1lRm9ybWF0OjpkYXkpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldERh
eSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6aG91cik6CisgICAgICAgIChK
U0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0SG91cik6CisgICAgICAgIChKU0M6OkludGxEYXRl
VGltZUZvcm1hdDo6bWludXRlKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojpz
ZXRNaW51dGUpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNlY29uZCk6Cisg
ICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0U2Vjb25kKToKKyAgICAgICAgKEpT
Qzo6SW50bERhdGVUaW1lRm9ybWF0Ojp0aW1lWm9uZU5hbWUpOgorICAgICAgICAoSlNDOjpJbnRs
RGF0ZVRpbWVGb3JtYXQ6OnNldFRpbWVab25lTmFtZSk6CisgICAgICAgICogcnVudGltZS9JbnRs
RGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdElu
dGxEYXRlVGltZUZvcm1hdCk6CisgICAgICAgIChKU0M6OmNhbGxJbnRsRGF0ZVRpbWVGb3JtYXQp
OgorICAgICAgICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbik6
CisgICAgICAgIChKU0M6OmNhbGVuZGFyVHlwZVRvU3RyaW5nKToKKyAgICAgICAgKEpTQzo6d2Vl
a2RheVN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjplcmFTdHlsZVRvU3RyaW5nKToKKyAg
ICAgICAgKEpTQzo6eWVhclN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjptb250aFN0eWxl
VG9TdHJpbmcpOgorICAgICAgICAoSlNDOjpkYXlTdHlsZVRvU3RyaW5nKToKKyAgICAgICAgKEpT
Qzo6aG91clN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjptaW51dGVTdHlsZVRvU3RyaW5n
KToKKyAgICAgICAgKEpTQzo6c2Vjb25kU3R5bGVUb1N0cmluZyk6CisgICAgICAgIChKU0M6OnRp
bWVab25lTmFtZVN0eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKToKKyAgICAgICAgKiBydW50aW1lL0ludGxP
YmplY3QuY3BwOgorICAgICAgICAoSlNDOjpyZXNvbHZlTG9jYWxlKToKKwogMjAxNS0xMi0xNiAg
RmlsaXAgUGl6bG8gIDxmcGl6bG9AYXBwbGUuY29tPgogCiAgICAgICAgIFdvcmsgYXJvdW5kIGEg
YnVnIGluIExMVk0gYnkgZmxpcHBpbmcgdGhlIHVuaWZpY2F0aW9uIG9yZGVyCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRhdHBnLmggYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRhdHBnLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2RjN2U4OWYyZGZi
NjQwMjIwZjM1NzA4ODM1OGI2ZDljNTc4ZWIwZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9pY3UvdW5pY29kZS91ZGF0cGcuaApAQCAtMCwwICsxLDU4NiBAQAorLyoK
KyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioKKyoKKyogICBDb3B5cmlnaHQgKEMpIDIwMDctMjAxMCwg
SW50ZXJuYXRpb25hbCBCdXNpbmVzcyBNYWNoaW5lcworKiAgIENvcnBvcmF0aW9uIGFuZCBvdGhl
cnMuICBBbGwgUmlnaHRzIFJlc2VydmVkLgorKgorKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorKiAg
IGZpbGUgbmFtZTogIHVkYXRwZy5oCisqICAgZW5jb2Rpbmc6ICAgVVMtQVNDSUkKKyogICB0YWIg
c2l6ZTogICA4IChub3QgdXNlZCkKKyogICBpbmRlbnRhdGlvbjo0CisqCisqICAgY3JlYXRlZCBv
bjogMjAwN2p1bDMwCisqICAgY3JlYXRlZCBieTogTWFya3VzIFcuIFNjaGVyZXIKKyovCisKKyNp
Zm5kZWYgX19VREFUUEdfSF9fCisjZGVmaW5lIF9fVURBVFBHX0hfXworCisjaW5jbHVkZSAidW5p
Y29kZS91dHlwZXMuaCIKKyNpbmNsdWRlICJ1bmljb2RlL3VlbnVtLmgiCisjaW5jbHVkZSAidW5p
Y29kZS9sb2NhbHBvaW50ZXIuaCIKKworLyoqCisgKiBcZmlsZQorICogXGJyaWVmIEMgQVBJOiBX
cmFwcGVyIGZvciBEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKHVuaWNvZGUvZHRwdG5nZW4uaCku
CisgKgorICogVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciBwcm92aWRlcyBmbGV4aWJsZSBnZW5l
cmF0aW9uIG9mIGRhdGUgZm9ybWF0IHBhdHRlcm5zLCAKKyAqIGxpa2UgInl5LU1NLWRkIi4gVGhl
IHVzZXIgY2FuIGJ1aWxkIHVwIHRoZSBnZW5lcmF0b3IgYnkgYWRkaW5nIHN1Y2Nlc3NpdmUgCisg
KiBwYXR0ZXJucy4gT25jZSB0aGF0IGlzIGRvbmUsIGEgcXVlcnkgY2FuIGJlIG1hZGUgdXNpbmcg
YSAic2tlbGV0b24iLCB3aGljaCBpcyAKKyAqIGEgcGF0dGVybiB3aGljaCBqdXN0IGluY2x1ZGVz
IHRoZSBkZXNpcmVkIGZpZWxkcyBhbmQgbGVuZ3Rocy4gVGhlIGdlbmVyYXRvciAKKyAqIHdpbGwg
cmV0dXJuIHRoZSAiYmVzdCBmaXQiIHBhdHRlcm4gY29ycmVzcG9uZGluZyB0byB0aGF0IHNrZWxl
dG9uLgorICogPHA+VGhlIG1haW4gbWV0aG9kIHBlb3BsZSB3aWxsIHVzZSBpcyB1ZGF0cGdfZ2V0
QmVzdFBhdHRlcm4sIHNpbmNlIG5vcm1hbGx5CisgKiBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9y
IGlzIHByZS1idWlsdCB3aXRoIGRhdGEgZnJvbSBhIHBhcnRpY3VsYXIgbG9jYWxlLiAKKyAqIEhv
d2V2ZXIsIGdlbmVyYXRvcnMgY2FuIGJlIGJ1aWx0IGRpcmVjdGx5IGZyb20gb3RoZXIgZGF0YSBh
cyB3ZWxsLgorICogPHA+PGk+SXNzdWU6IG1heSBiZSB1c2VmdWwgdG8gYWxzbyBoYXZlIGEgZnVu
Y3Rpb24gdGhhdCByZXR1cm5zIHRoZSBsaXN0IG9mIAorICogZmllbGRzIGluIGEgcGF0dGVybiwg
aW4gb3JkZXIsIHNpbmNlIHdlIGhhdmUgdGhhdCBpbnRlcm5hbGx5LgorICogVGhhdCB3b3VsZCBi
ZSB1c2VmdWwgZm9yIGdldHRpbmcgdGhlIFVJIG9yZGVyIG9mIGZpZWxkIGVsZW1lbnRzLjwvaT4K
KyAqLworCisvKioKKyAqIE9wYXF1ZSB0eXBlIGZvciBhIGRhdGUvdGltZSBwYXR0ZXJuIGdlbmVy
YXRvciBvYmplY3QuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLwordHlwZWRlZiB2b2lkICpVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOworCisvKioKKyAqIEZpZWxkIG51bWJlciBjb25zdGFudHMg
Zm9yIHVkYXRwZ19nZXRBcHBlbmRJdGVtRm9ybWF0cygpIGFuZCBzaW1pbGFyIGZ1bmN0aW9ucy4K
KyAqIFRoZXNlIGNvbnN0YW50cyBhcmUgc2VwYXJhdGUgZnJvbSBVRGF0ZUZvcm1hdEZpZWxkIGRl
c3BpdGUgc2VtYW50aWMgb3ZlcmxhcAorICogYmVjYXVzZSBzb21lIGZpZWxkcyBhcmUgbWVyZ2Vk
IGZvciB0aGUgZGF0ZS90aW1lIHBhdHRlcm4gZ2VuZXJhdG9yLgorICogQHN0YWJsZSBJQ1UgMy44
CisgKi8KK3R5cGVkZWYgZW51bSBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQgeworICAgIC8qKiBAc3Rh
YmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfRVJBX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElD
VSAzLjggKi8KKyAgICBVREFUUEdfWUVBUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44
ICovCisgICAgVURBVFBHX1FVQVJURVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAq
LworICAgIFVEQVRQR19NT05USF9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisg
ICAgVURBVFBHX1dFRUtfT0ZfWUVBUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICov
CisgICAgVURBVFBHX1dFRUtfT0ZfTU9OVEhfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19XRUVLREFZX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjgg
Ki8KKyAgICBVREFUUEdfREFZX09GX1lFQVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19EQVlfT0ZfV0VFS19JTl9NT05USF9GSUVMRCwKKyAgICAvKiogQHN0
YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0RBWV9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJ
Q1UgMy44ICovCisgICAgVURBVFBHX0RBWVBFUklPRF9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJ
Q1UgMy44ICovCisgICAgVURBVFBHX0hPVVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19NSU5VVEVfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAq
LworICAgIFVEQVRQR19TRUNPTkRfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLwor
ICAgIFVEQVRQR19GUkFDVElPTkFMX1NFQ09ORF9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1Ug
My44ICovCisgICAgVURBVFBHX1pPTkVfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAq
LworICAgIFVEQVRQR19GSUVMRF9DT1VOVAorfSBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQ7CisKKy8q
KgorICogTWFza3MgdG8gY29udHJvbCBmb3JjaW5nIHRoZSBsZW5ndGggb2Ygc3BlY2lmaWVkIGZp
ZWxkcyBpbiB0aGUgcmV0dXJuZWQKKyAqIHBhdHRlcm4gdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNr
ZWxldG9uICh3aGVuIHRoaXMgd291bGQgbm90IGhhcHBlbgorICogb3RoZXJ3aXNlKS4gVGhlc2Ug
bWF5IGJlIGNvbWJpbmVkIHRvIGZvcmNlIHRoZSBsZW5ndGggb2YgbXVsdGlwbGUgZmllbGRzLgor
ICogVXNlZCB3aXRoIHVkYXRwZ19nZXRCZXN0UGF0dGVybldpdGhPcHRpb25zLCB1ZGF0cGdfcmVw
bGFjZUZpZWxkVHlwZXNXaXRoT3B0aW9ucy4KKyAqIEBzdGFibGUgSUNVIDQuNAorICovCit0eXBl
ZGVmIGVudW0gVURhdGVUaW1lUGF0dGVybk1hdGNoT3B0aW9ucyB7CisgICAgLyoqIEBzdGFibGUg
SUNVIDQuNCAqLworICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TID0gMCwKKyAgICAvKiogQHN0
YWJsZSBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX0hPVVJfRklFTERfTEVOR1RIID0gMSA8
PCBVREFUUEdfSE9VUl9GSUVMRCwKKyAgICAvKiogQGludGVybmFsIElDVSA0LjQgKi8KKyAgICBV
REFUUEdfTUFUQ0hfTUlOVVRFX0ZJRUxEX0xFTkdUSCA9IDEgPDwgVURBVFBHX01JTlVURV9GSUVM
RCwKKyAgICAvKiogQGludGVybmFsIElDVSA0LjQgKi8KKyAgICBVREFUUEdfTUFUQ0hfU0VDT05E
X0ZJRUxEX0xFTkdUSCA9IDEgPDwgVURBVFBHX1NFQ09ORF9GSUVMRCwKKyAgICAvKiogQHN0YWJs
ZSBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX0FMTF9GSUVMRFNfTEVOR1RIID0gKDEgPDwg
VURBVFBHX0ZJRUxEX0NPVU5UKSAtIDEKK30gVURhdGVUaW1lUGF0dGVybk1hdGNoT3B0aW9uczsK
KworLyoqCisgKiBTdGF0dXMgcmV0dXJuIHZhbHVlcyBmcm9tIHVkYXRwZ19hZGRQYXR0ZXJuKCku
CisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLwordHlwZWRlZiBlbnVtIFVEYXRlVGltZVBhdHRlcm5D
b25mbGljdCB7CisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19OT19DT05G
TElDVCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0JBU0VfQ09ORkxJ
Q1QsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19DT05GTElDVCwKKyAg
ICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0NPTkZMSUNUX0NPVU5UCit9IFVE
YXRlVGltZVBhdHRlcm5Db25mbGljdDsKKworLyoqCisgICogT3BlbiBhIGdlbmVyYXRvciBhY2Nv
cmRpbmcgdG8gYSBnaXZlbiBsb2NhbGUuCisgICogQHBhcmFtIGxvY2FsZQorICAqIEBwYXJhbSBw
RXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRp
Y2F0ZSBhCisgICogICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9u
IGNhbGwuCisgICogQHJldHVybiBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ci4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIFVEYXRlVGltZVBhdHRlcm5H
ZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVuKGNvbnN0IGNoYXIgKmxvY2FsZSwgVUVy
cm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIE9wZW4gYW4gZW1wdHkgZ2VuZXJhdG9y
LCB0byBiZSBjb25zdHJ1Y3RlZCB3aXRoIHVkYXRwZ19hZGRQYXR0ZXJuKC4uLikgZXRjLgorICAq
IEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0
IG5vdCBpbmRpY2F0ZSBhCisgICogICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhl
IGZ1bmN0aW9uIGNhbGwuCisgICogQHJldHVybiBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVy
bkdlbmVyYXRvci4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIFVEYXRlVGlt
ZVBhdHRlcm5HZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVuRW1wdHkoVUVycm9yQ29k
ZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIENsb3NlIGEgZ2VuZXJhdG9yLgorICAqIEBwYXJh
bSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBzdGFi
bGUgSUNVIDMuOAorICAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19jbG9zZShV
RGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnKTsKKworI2lmIFVfU0hPV19DUExVU1BMVVNf
QVBJCisKK1VfTkFNRVNQQUNFX0JFR0lOCisKKy8qKgorICogXGNsYXNzIExvY2FsVURhdGVUaW1l
UGF0dGVybkdlbmVyYXRvclBvaW50ZXIKKyAqICJTbWFydCBwb2ludGVyIiBjbGFzcywgY2xvc2Vz
IGEgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciB2aWEgdWRhdHBnX2Nsb3NlKCkuCisgKiBGb3Ig
bW9zdCBtZXRob2RzIHNlZSB0aGUgTG9jYWxQb2ludGVyQmFzZSBiYXNlIGNsYXNzLgorICoKKyAq
IEBzZWUgTG9jYWxQb2ludGVyQmFzZQorICogQHNlZSBMb2NhbFBvaW50ZXIKKyAqIEBzdGFibGUg
SUNVIDQuNAorICovCitVX0RFRklORV9MT0NBTF9PUEVOX1BPSU5URVIoTG9jYWxVRGF0ZVRpbWVQ
YXR0ZXJuR2VuZXJhdG9yUG9pbnRlciwgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciwgdWRhdHBn
X2Nsb3NlKTsKKworVV9OQU1FU1BBQ0VfRU5ECisKKyNlbmRpZgorCisvKioKKyAgKiBDcmVhdGUg
YSBjb3B5IHBmIGEgZ2VuZXJhdG9yLgorICAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yIHRvIGJlIGNvcGllZC4KKyAgKiBAcGFyYW0gcEVycm9yQ29k
ZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQor
ICAqICAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgor
ICAqIEByZXR1cm4gYSBwb2ludGVyIHRvIGEgbmV3IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3Iu
CisgICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19jbG9uZShjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2Vu
ZXJhdG9yICpkdHBnLCBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBHZXQgdGhl
IGJlc3QgcGF0dGVybiBtYXRjaGluZyB0aGUgaW5wdXQgc2tlbGV0b24uIEl0IGlzIGd1YXJhbnRl
ZWQgdG8KKyAqIGhhdmUgYWxsIG9mIHRoZSBmaWVsZHMgaW4gdGhlIHNrZWxldG9uLgorICogCisg
KiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2gg
aXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhhbiBjcmVh
dGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNhbGxzIHRv
IHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRoaXMgZnVu
Y3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBv
YmplY3QuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yLgorICogQHBhcmFtIHNrZWxldG9uCisgKiAgICAgICAgICAgIFRoZSBza2VsZXRv
biBpcyBhIHBhdHRlcm4gY29udGFpbmluZyBvbmx5IHRoZSB2YXJpYWJsZSBmaWVsZHMuCisgKiAg
ICAgICAgICAgIEZvciBleGFtcGxlLCAiTU1NZGQiIGFuZCAibW1oaCIgYXJlIHNrZWxldG9ucy4K
KyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBza2VsZXRvbgorICogQHBhcmFtIGJlc3RQ
YXR0ZXJuCisgKiAgICAgICAgICAgIFRoZSBiZXN0IHBhdHRlcm4gZm91bmQgZnJvbSB0aGUgZ2l2
ZW4gc2tlbGV0b24uCisgKiBAcGFyYW0gY2FwYWNpdHkgdGhlIGNhcGFjaXR5IG9mIGJlc3RQYXR0
ZXJuLgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdo
aWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVm
b3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGJlc3RQYXR0
ZXJuLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQy
Cit1ZGF0cGdfZ2V0QmVzdFBhdHRlcm4oVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywK
KyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMyX3QgbGVu
Z3RoLAorICAgICAgICAgICAgICAgICAgICAgIFVDaGFyICpiZXN0UGF0dGVybiwgaW50MzJfdCBj
YXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsK
KworLyoqCisgKiBHZXQgdGhlIGJlc3QgcGF0dGVybiBtYXRjaGluZyB0aGUgaW5wdXQgc2tlbGV0
b24uIEl0IGlzIGd1YXJhbnRlZWQgdG8KKyAqIGhhdmUgYWxsIG9mIHRoZSBmaWVsZHMgaW4gdGhl
IHNrZWxldG9uLgorICogCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNv
bnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0
dGVybiBwYXJzZXIgd2hpY2ggaXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisg
KiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENv
bnNlY3V0aXZlIGNhbGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVy
LAorICogYnV0IHRoaXMgZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEg
c2luZ2xlIGdlbmVyYXRvciBvYmplY3QuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0
byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHNrZWxldG9uCisgKiAgICAg
ICAgICAgIFRoZSBza2VsZXRvbiBpcyBhIHBhdHRlcm4gY29udGFpbmluZyBvbmx5IHRoZSB2YXJp
YWJsZSBmaWVsZHMuCisgKiAgICAgICAgICAgIEZvciBleGFtcGxlLCAiTU1NZGQiIGFuZCAibW1o
aCIgYXJlIHNrZWxldG9ucy4KKyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBza2VsZXRv
bgorICogQHBhcmFtIG9wdGlvbnMKKyAqICAgICAgICAgICAgT3B0aW9ucyBmb3IgZm9yY2luZyB0
aGUgbGVuZ3RoIG9mIHNwZWNpZmllZCBmaWVsZHMgaW4gdGhlCisgKiAgICAgICAgICAgIHJldHVy
bmVkIHBhdHRlcm4gdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNrZWxldG9uICh3aGVuIHRoaXMKKyAq
ICAgICAgICAgICAgd291bGQgbm90IGhhcHBlbiBvdGhlcndpc2UpLiBGb3IgZGVmYXVsdCBiZWhh
dmlvciwgdXNlCisgKiAgICAgICAgICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TLgorICogQHBh
cmFtIGJlc3RQYXR0ZXJuCisgKiAgICAgICAgICAgIFRoZSBiZXN0IHBhdHRlcm4gZm91bmQgZnJv
bSB0aGUgZ2l2ZW4gc2tlbGV0b24uCisgKiBAcGFyYW0gY2FwYWNpdHkKKyAqICAgICAgICAgICAg
dGhlIGNhcGFjaXR5IG9mIGJlc3RQYXR0ZXJuLgorICogQHBhcmFtIHBFcnJvckNvZGUKKyAqICAg
ICAgICAgICAgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGlj
YXRlIGEKKyAqICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisg
KiBAcmV0dXJuIHRoZSBsZW5ndGggb2YgYmVzdFBhdHRlcm4uCisgKiBAc3RhYmxlIElDVSA0LjQK
KyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3VkYXRwZ19nZXRCZXN0UGF0dGVybldp
dGhPcHRpb25zKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMyX3QgbGVuZ3Ro
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVybk1hdGNo
T3B0aW9ucyBvcHRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVUNoYXIg
KmJlc3RQYXR0ZXJuLCBpbnQzMl90IGNhcGFjaXR5LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIEdldCBhIHVuaXF1
ZSBza2VsZXRvbiBmcm9tIGEgZ2l2ZW4gcGF0dGVybi4gRm9yIGV4YW1wbGUsCisgICogYm90aCAi
TU1NLWRkIiBhbmQgImRkL01NTSIgcHJvZHVjZSB0aGUgc2tlbGV0b24gIk1NTWRkIi4KKyAgKiAK
KyAgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBh
dHRlcm5HZW5lcmF0b3I6CisgICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdo
aWNoIGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICAqIHJhdGhlciB0aGFu
IGNyZWF0aW5nIG9uZSBmb3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICAqIENvbnNlY3V0aXZlIGNh
bGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICAqIGJ1dCB0
aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmdsZSBnZW5l
cmF0b3Igb2JqZWN0LgorICAqCisgICogQHBhcmFtIGR0cGcgICAgIGEgcG9pbnRlciB0byBVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBwYXJhbSBwYXR0ZXJuICBpbnB1dCBwYXR0ZXJu
LCBzdWNoIGFzICJkZC9NTU0iLgorICAqIEBwYXJhbSBsZW5ndGggICB0aGUgbGVuZ3RoIG9mIHBh
dHRlcm4uCisgICogQHBhcmFtIHNrZWxldG9uIHN1Y2ggYXMgIk1NTWRkIgorICAqIEBwYXJhbSBj
YXBhY2l0eSB0aGUgY2FwYWNpdHkgb2Ygc2tlbGV0b24uCisgICogQHBhcmFtIHBFcnJvckNvZGUg
YSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAg
KiAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICAq
IEByZXR1cm4gdGhlIGxlbmd0aCBvZiBza2VsZXRvbi4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAg
Ki8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQyCit1ZGF0cGdfZ2V0U2tlbGV0b24oVURhdGVU
aW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hh
ciAqcGF0dGVybiwgaW50MzJfdCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgVUNoYXIgKnNr
ZWxldG9uLCBpbnQzMl90IGNhcGFjaXR5LAorICAgICAgICAgICAgICAgICAgIFVFcnJvckNvZGUg
KnBFcnJvckNvZGUpOworCisvKioKKyAqIEdldCBhIHVuaXF1ZSBiYXNlIHNrZWxldG9uIGZyb20g
YSBnaXZlbiBwYXR0ZXJuLiBUaGlzIGlzIHRoZSBzYW1lCisgKiBhcyB0aGUgc2tlbGV0b24sIGV4
Y2VwdCB0aGF0IGRpZmZlcmVuY2VzIGluIGxlbmd0aCBhcmUgbWluaW1pemVkIHNvCisgKiBhcyB0
byBvbmx5IHByZXNlcnZlIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gc3RyaW5nIGFuZCBudW1lcmlj
IGZvcm0uIFNvCisgKiBmb3IgZXhhbXBsZSwgYm90aCAiTU1NLWRkIiBhbmQgImQvTU1NIiBwcm9k
dWNlIHRoZSBza2VsZXRvbiAiTU1NZCIKKyAqIChub3RpY2UgdGhlIHNpbmdsZSBkKS4KKyAqCisg
KiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2gg
aXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhhbiBjcmVh
dGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNhbGxzIHRv
IHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRoaXMgZnVu
Y3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBv
YmplY3QuCisgKgorICogQHBhcmFtIGR0cGcgICAgIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0
ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBhdHRlcm4gIGlucHV0IHBhdHRlcm4sIHN1Y2ggYXMg
ImRkL01NTSIuCisgKiBAcGFyYW0gbGVuZ3RoICAgdGhlIGxlbmd0aCBvZiBwYXR0ZXJuLgorICog
QHBhcmFtIGJhc2VTa2VsZXRvbiBzdWNoIGFzICJNZCIKKyAqIEBwYXJhbSBjYXBhY2l0eSB0aGUg
Y2FwYWNpdHkgb2YgYmFzZSBza2VsZXRvbi4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRl
ciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAg
ICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0
aGUgbGVuZ3RoIG9mIGJhc2VTa2VsZXRvbi4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NU
QUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRhdHBnX2dldEJhc2VTa2VsZXRvbihVRGF0ZVRpbWVQ
YXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hh
ciAqcGF0dGVybiwgaW50MzJfdCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgIFVDaGFy
ICpiYXNlU2tlbGV0b24sIGludDMyX3QgY2FwYWNpdHksCisgICAgICAgICAgICAgICAgICAgICAg
IFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEFkZHMgYSBwYXR0ZXJuIHRvIHRo
ZSBnZW5lcmF0b3IuIElmIHRoZSBwYXR0ZXJuIGhhcyB0aGUgc2FtZSBza2VsZXRvbiBhcworICog
YW4gZXhpc3RpbmcgcGF0dGVybiwgYW5kIHRoZSBvdmVycmlkZSBwYXJhbWV0ZXIgaXMgc2V0LCB0
aGVuIHRoZSBwcmV2aW91cworICogdmFsdWUgaXMgb3ZlcnJpZGVuLiBPdGhlcndpc2UsIHRoZSBw
cmV2aW91cyB2YWx1ZSBpcyByZXRhaW5lZC4gSW4gZWl0aGVyCisgKiBjYXNlLCB0aGUgY29uZmxp
Y3Rpbmcgc3RhdHVzIGlzIHNldCBhbmQgcHJldmlvdXMgdmFsZSBpcyBzdG9yZWQgaW4gCisgKiBj
b25mbGljdGluZyBwYXR0ZXJuLgorICogPHA+CisgKiBOb3RlIHRoYXQgc2luZ2xlLWZpZWxkIHBh
dHRlcm5zIChsaWtlICJNTU0iKSBhcmUgYXV0b21hdGljYWxseSBhZGRlZCwgYW5kCisgKiBkb24n
dCBuZWVkIHRvIGJlIGFkZGVkIGV4cGxpY2l0bHkhCisgKgorICogQHBhcmFtIGR0cGcgICAgIGEg
cG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBhdHRlcm4g
IGlucHV0IHBhdHRlcm4sIHN1Y2ggYXMgImRkL01NTSIKKyAqIEBwYXJhbSBwYXR0ZXJuTGVuZ3Ro
IHRoZSBsZW5ndGggb2YgcGF0dGVybi4KKyAqIEBwYXJhbSBvdmVycmlkZSAgV2hlbiBleGlzdGlu
ZyB2YWx1ZXMgYXJlIHRvIGJlIG92ZXJyaWRkZW4gdXNlIHRydWUsIAorICogICAgICAgICAgICAg
ICAgICBvdGhlcndpc2UgdXNlIGZhbHNlLgorICogQHBhcmFtIGNvbmZsaWN0aW5nUGF0dGVybiAg
UHJldmlvdXMgcGF0dGVybiB3aXRoIHRoZSBzYW1lIHNrZWxldG9uLgorICogQHBhcmFtIGNhcGFj
aXR5IHRoZSBjYXBhY2l0eSBvZiBjb25mbGljdGluZ1BhdHRlcm4uCisgKiBAcGFyYW0gcExlbmd0
aCBhIHBvaW50ZXIgdG8gdGhlIGxlbmd0aCBvZiBjb25mbGljdGluZ1BhdHRlcm4uCisgKiBAcGFy
YW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3Qg
aW5kaWNhdGUgYQorICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rp
b24gY2FsbC4KKyAqIEByZXR1cm4gY29uZmxpY3Rpbmcgc3RhdHVzLiBUaGUgdmFsdWUgY291bGQg
YmUgVURBVFBHX05PX0NPTkZMSUNULCAKKyAqICAgICAgICAgICAgICAgICAgVURBVFBHX0JBU0Vf
Q09ORkxJQ1Qgb3IgVURBVFBHX0NPTkZMSUNULgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1Vf
U1RBQkxFIFVEYXRlVGltZVBhdHRlcm5Db25mbGljdCBVX0VYUE9SVDIKK3VkYXRwZ19hZGRQYXR0
ZXJuKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICBj
b25zdCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBwYXR0ZXJuTGVuZ3RoLAorICAgICAgICAgICAg
ICAgICAgVUJvb2wgb3ZlcnJpZGUsCisgICAgICAgICAgICAgICAgICBVQ2hhciAqY29uZmxpY3Rp
bmdQYXR0ZXJuLCBpbnQzMl90IGNhcGFjaXR5LCBpbnQzMl90ICpwTGVuZ3RoLAorICAgICAgICAg
ICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIEFuIEFwcGVuZEl0
ZW0gZm9ybWF0IGlzIGEgcGF0dGVybiB1c2VkIHRvIGFwcGVuZCBhIGZpZWxkIGlmIHRoZXJlIGlz
IG5vCisgICogZ29vZCBtYXRjaC4gRm9yIGV4YW1wbGUsIHN1cHBvc2UgdGhhdCB0aGUgaW5wdXQg
c2tlbGV0b24gaXMgIkd5eXl5TU1NZCIsCisgICogYW5kIHRoZXJlIGlzIG5vIG1hdGNoaW5nIHBh
dHRlcm4gaW50ZXJuYWxseSwgYnV0IHRoZXJlIGlzIGEgcGF0dGVybgorICAqIG1hdGNoaW5nICJ5
eXl5TU1NZCIsIHNheSAiZC1NTS15eXl5Ii4gVGhlbiB0aGF0IHBhdHRlcm4gaXMgdXNlZCwgcGx1
cyB0aGUKKyAgKiBHLiBUaGUgd2F5IHRoZXNlIHR3byBhcmUgY29uam9pbmVkIGlzIGJ5IHVzaW5n
IHRoZSBBcHBlbmRJdGVtRm9ybWF0IGZvciBHCisgICogKGVyYSkuIFNvIGlmIHRoYXQgdmFsdWUg
aXMsIHNheSAiezB9LCB7MX0iIHRoZW4gdGhlIGZpbmFsIHJlc3VsdGluZworICAqIHBhdHRlcm4g
aXMgImQtTU0teXl5eSwgRyIuCisgICogPHA+CisgICogVGhlcmUgYXJlIGFjdHVhbGx5IHRocmVl
IGF2YWlsYWJsZSB2YXJpYWJsZXM6IHswfSBpcyB0aGUgcGF0dGVybiBzbyBmYXIsCisgICogezF9
IGlzIHRoZSBlbGVtZW50IHdlIGFyZSBhZGRpbmcsIGFuZCB7Mn0gaXMgdGhlIG5hbWUgb2YgdGhl
IGVsZW1lbnQuCisgICogPHA+CisgICogVGhpcyByZWZsZWN0cyB0aGUgd2F5IHRoYXQgdGhlIENM
RFIgZGF0YSBpcyBvcmdhbml6ZWQuCisgICoKKyAgKiBAcGFyYW0gZHRwZyAgIGEgcG9pbnRlciB0
byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBwYXJhbSBmaWVsZCAgVURhdGVUaW1l
UGF0dGVybkZpZWxkLCBzdWNoIGFzIFVEQVRQR19FUkFfRklFTEQKKyAgKiBAcGFyYW0gdmFsdWUg
IHBhdHRlcm4sIHN1Y2ggYXMgInswfSwgezF9IgorICAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0
aCBvZiB2YWx1ZS4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIHZvaWQgVV9F
WFBPUlQyCit1ZGF0cGdfc2V0QXBwZW5kSXRlbUZvcm1hdChVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVybkZp
ZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnZhbHVl
LCBpbnQzMl90IGxlbmd0aCk7CisKKy8qKgorICogR2V0dGVyIGNvcnJlc3BvbmRpbmcgdG8gc2V0
QXBwZW5kSXRlbUZvcm1hdC4gVmFsdWVzIGJlbG93IDAgb3IgYXQgb3IKKyAqIGFib3ZlIFVEQVRQ
R19GSUVMRF9DT1VOVCBhcmUgaWxsZWdhbCBhcmd1bWVudHMuCisgKgorICogQHBhcmFtIGR0cGcg
ICBBIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBmaWVs
ZCAgVURhdGVUaW1lUGF0dGVybkZpZWxkLCBzdWNoIGFzIFVEQVRQR19FUkFfRklFTEQKKyAqIEBw
YXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwgcmVjZWl2ZSB0aGUgbGVuZ3RoIG9mIGFw
cGVuZEl0ZW1Gb3JtYXQuCisgKiBAcmV0dXJuIGFwcGVuZEl0ZW1Gb3JtYXQgZm9yIGZpZWxkLgor
ICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9FWFBPUlQy
Cit1ZGF0cGdfZ2V0QXBwZW5kSXRlbUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVybkZp
ZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MzJfdCAqcExlbmd0aCk7
CisKKy8qKgorICAgKiBTZXQgdGhlIG5hbWUgb2YgZmllbGQsIGVnICJlcmEiIGluIEVuZ2xpc2gg
Zm9yIEVSQS4gVGhlc2UgYXJlIG9ubHkKKyAgICogdXNlZCBpZiB0aGUgY29ycmVzcG9uZGluZyBB
cHBlbmRJdGVtRm9ybWF0IGlzIHVzZWQsIGFuZCBpZiBpdCBjb250YWlucyBhCisgICAqIHsyfSB2
YXJpYWJsZS4KKyAgICogPHA+CisgICAqIFRoaXMgcmVmbGVjdHMgdGhlIHdheSB0aGF0IHRoZSBD
TERSIGRhdGEgaXMgb3JnYW5pemVkLgorICAgKgorICAgKiBAcGFyYW0gZHRwZyAgIGEgcG9pbnRl
ciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAgKiBAcGFyYW0gZmllbGQgIFVEYXRl
VGltZVBhdHRlcm5GaWVsZAorICAgKiBAcGFyYW0gdmFsdWUgIG5hbWUgZm9yIHRoZSBmaWVsZC4K
KyAgICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIHZhbHVlLgorICAgKiBAc3RhYmxlIElD
VSAzLjgKKyAgICovCitVX1NUQUJMRSB2b2lkIFVfRVhQT1JUMgordWRhdHBnX3NldEFwcGVuZEl0
ZW1OYW1lKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgVURhdGVUaW1lUGF0dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IFVDaGFyICp2YWx1ZSwgaW50MzJfdCBsZW5ndGgpOworCisvKioKKyAqIEdl
dHRlciBjb3JyZXNwb25kaW5nIHRvIHNldEFwcGVuZEl0ZW1OYW1lcy4gVmFsdWVzIGJlbG93IDAg
b3IgYXQgb3IgYWJvdmUKKyAqIFVEQVRQR19GSUVMRF9DT1VOVCBhcmUgaWxsZWdhbCBhcmd1bWVu
dHMuCisgKgorICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvci4KKyAqIEBwYXJhbSBmaWVsZCAgVURhdGVUaW1lUGF0dGVybkZpZWxkLCBzdWNoIGFz
IFVEQVRQR19FUkFfRklFTEQKKyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwg
cmVjZWl2ZSB0aGUgbGVuZ3RoIG9mIHRoZSBuYW1lIGZvciBmaWVsZC4KKyAqIEByZXR1cm4gbmFt
ZSBmb3IgZmllbGQKKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBjb25zdCBVQ2hh
ciAqIFVfRVhQT1JUMgordWRhdHBnX2dldEFwcGVuZEl0ZW1OYW1lKGNvbnN0IFVEYXRlVGltZVBh
dHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1l
UGF0dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBM
ZW5ndGgpOworCisvKioKKyAqIFRoZSBkYXRlIHRpbWUgZm9ybWF0IGlzIGEgbWVzc2FnZSBmb3Jt
YXQgcGF0dGVybiB1c2VkIHRvIGNvbXBvc2UgZGF0ZSBhbmQKKyAqIHRpbWUgcGF0dGVybnMuIFRo
ZSBkZWZhdWx0IHZhbHVlIGlzICJ7MH0gezF9Iiwgd2hlcmUgezB9IHdpbGwgYmUgcmVwbGFjZWQK
KyAqIGJ5IHRoZSBkYXRlIHBhdHRlcm4gYW5kIHsxfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSB0
aW1lIHBhdHRlcm4uCisgKiA8cD4KKyAqIFRoaXMgaXMgdXNlZCB3aGVuIHRoZSBpbnB1dCBza2Vs
ZXRvbiBjb250YWlucyBib3RoIGRhdGUgYW5kIHRpbWUgZmllbGRzLAorICogYnV0IHRoZXJlIGlz
IG5vdCBhIGNsb3NlIG1hdGNoIGFtb25nIHRoZSBhZGRlZCBwYXR0ZXJucy4gRm9yIGV4YW1wbGUs
CisgKiBzdXBwb3NlIHRoYXQgdGhpcyBvYmplY3Qgd2FzIGNyZWF0ZWQgYnkgYWRkaW5nICJkZC1N
TU0iIGFuZCAiaGg6bW0iLCBhbmQKKyAqIGl0cyBkYXRldGltZUZvcm1hdCBpcyB0aGUgZGVmYXVs
dCAiezB9IHsxfSIuIFRoZW4gaWYgdGhlIGlucHV0IHNrZWxldG9uCisgKiBpcyAiTU1NZGhtbSIs
IHRoZXJlIGlzIG5vdCBhbiBleGFjdCBtYXRjaCwgc28gdGhlIGlucHV0IHNrZWxldG9uIGlzCisg
KiBicm9rZW4gdXAgaW50byB0d28gY29tcG9uZW50cyAiTU1NZCIgYW5kICJobW0iLiBUaGVyZSBh
cmUgY2xvc2UgbWF0Y2hlcworICogZm9yIHRob3NlIHR3byBza2VsZXRvbnMsIHNvIHRoZSByZXN1
bHQgaXMgcHV0IHRvZ2V0aGVyIHdpdGggdGhpcyBwYXR0ZXJuLAorICogcmVzdWx0aW5nIGluICJk
LU1NTSBoOm1tIi4KKyAqCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0
dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBkdEZvcm1hdAorICogICAgICAgICAgICBtZXNzYWdl
IGZvcm1hdCBwYXR0ZXJuLCBoZXJlIHswfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSBkYXRlCisg
KiAgICAgICAgICAgIHBhdHRlcm4gYW5kIHsxfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSB0aW1l
IHBhdHRlcm4uCisgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGggb2YgZHRGb3JtYXQuCisgKiBA
c3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19zZXRE
YXRlVGltZUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpkdEZvcm1hdCwgaW50MzJfdCBsZW5n
dGgpOworCisvKioKKyAqIEdldHRlciBjb3JyZXNwb25kaW5nIHRvIHNldERhdGVUaW1lRm9ybWF0
LgorICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ci4KKyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwgcmVjZWl2ZSB0aGUgbGVu
Z3RoIG9mIHRoZSBmb3JtYXQKKyAqIEByZXR1cm4gZGF0ZVRpbWVGb3JtYXQuCisgKiBAc3RhYmxl
IElDVSAzLjgKKyAqLworVV9TVEFCTEUgY29uc3QgVUNoYXIgKiBVX0VYUE9SVDIKK3VkYXRwZ19n
ZXREYXRlVGltZUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAor
ICAgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBMZW5ndGgpOworCisvKioKKyAqIFRo
ZSBkZWNpbWFsIHZhbHVlIGlzIHVzZWQgaW4gZm9ybWF0dGluZyBmcmFjdGlvbnMgb2Ygc2Vjb25k
cy4gSWYgdGhlCisgKiBza2VsZXRvbiBjb250YWlucyBmcmFjdGlvbmFsIHNlY29uZHMsIHRoZW4g
dGhpcyBpcyB1c2VkIHdpdGggdGhlCisgKiBmcmFjdGlvbmFsIHNlY29uZHMuIEZvciBleGFtcGxl
LCBzdXBwb3NlIHRoYXQgdGhlIGlucHV0IHBhdHRlcm4gaXMKKyAqICJoaG1tc3NTU1NTIiwgYW5k
IHRoZSBiZXN0IG1hdGNoaW5nIHBhdHRlcm4gaW50ZXJuYWxseSBpcyAiSDptbTpzcyIsIGFuZAor
ICogdGhlIGRlY2ltYWwgc3RyaW5nIGlzICIsIi4gVGhlbiB0aGUgcmVzdWx0aW5nIHBhdHRlcm4g
aXMgbW9kaWZpZWQgdG8gYmUKKyAqICJIOm1tOnNzLFNTU1MiCisgKgorICogQHBhcmFtIGR0cGcg
YSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gZGVjaW1h
bAorICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIGRlY2ltYWwuCisgKiBAc3RhYmxlIElD
VSAzLjgKKyAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19zZXREZWNpbWFsKFVE
YXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICBjb25zdCBV
Q2hhciAqZGVjaW1hbCwgaW50MzJfdCBsZW5ndGgpOworCisvKioKKyAqIEdldHRlciBjb3JyZXNw
b25kaW5nIHRvIHNldERlY2ltYWwuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBV
RGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBMZW5ndGggQSBwb2ludGVyIHRo
YXQgd2lsbCByZWNlaXZlIHRoZSBsZW5ndGggb2YgdGhlIGRlY2ltYWwgc3RyaW5nLgorICogQHJl
dHVybiBjb3JyZXNwb25kaW5nIHRvIHRoZSBkZWNpbWFsIHBvaW50LgorICogQHN0YWJsZSBJQ1Ug
My44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9FWFBPUlQyCit1ZGF0cGdfZ2V0RGVj
aW1hbChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAg
ICAgICAgaW50MzJfdCAqcExlbmd0aCk7CisKKy8qKgorICogQWRqdXN0cyB0aGUgZmllbGQgdHlw
ZXMgKHdpZHRoIGFuZCBzdWJ0eXBlKSBvZiBhIHBhdHRlcm4gdG8gbWF0Y2ggd2hhdCBpcworICog
aW4gYSBza2VsZXRvbi4gVGhhdCBpcywgaWYgeW91IHN1cHBseSBhIHBhdHRlcm4gbGlrZSAiZC1N
IEg6bSIsIGFuZCBhCisgKiBza2VsZXRvbiBvZiAiTU1NTWRkaGhtbSIsIHRoZW4gdGhlIGlucHV0
IHBhdHRlcm4gaXMgYWRqdXN0ZWQgdG8gYmUKKyAqICJkZC1NTU1NIGhoOm1tIi4gVGhpcyBpcyB1
c2VkIGludGVybmFsbHkgdG8gZ2V0IHRoZSBiZXN0IG1hdGNoIGZvciB0aGUKKyAqIGlucHV0IHNr
ZWxldG9uLCBidXQgY2FuIGFsc28gYmUgdXNlZCBleHRlcm5hbGx5LgorICoKKyAqIE5vdGUgdGhh
dCB0aGlzIGZ1bmN0aW9uIHVzZXMgYSBub24tY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
cjoKKyAqIEl0IHVzZXMgYSBzdGF0ZWZ1bCBwYXR0ZXJuIHBhcnNlciB3aGljaCBpcyBzZXQgdXAg
Zm9yIGVhY2ggZ2VuZXJhdG9yIG9iamVjdCwKKyAqIHJhdGhlciB0aGFuIGNyZWF0aW5nIG9uZSBm
b3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICogQ29uc2VjdXRpdmUgY2FsbHMgdG8gdGhpcyBmdW5j
dGlvbiBkbyBub3QgYWZmZWN0IGVhY2ggb3RoZXIsCisgKiBidXQgdGhpcyBmdW5jdGlvbiBjYW5u
b3QgYmUgdXNlZCBjb25jdXJyZW50bHkgb24gYSBzaW5nbGUgZ2VuZXJhdG9yIG9iamVjdC4KKyAq
CisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4K
KyAqIEBwYXJhbSBwYXR0ZXJuIElucHV0IHBhdHRlcm4KKyAqIEBwYXJhbSBwYXR0ZXJuTGVuZ3Ro
IHRoZSBsZW5ndGggb2YgaW5wdXQgcGF0dGVybi4KKyAqIEBwYXJhbSBza2VsZXRvbgorICogQHBh
cmFtIHNrZWxldG9uTGVuZ3RoIHRoZSBsZW5ndGggb2YgaW5wdXQgc2tlbGV0b24uCisgKiBAcGFy
YW0gZGVzdCAgcGF0dGVybiBhZGp1c3RlZCB0byBtYXRjaCB0aGUgc2tlbGV0b24gZmllbGRzIHdp
ZHRocyBhbmQgc3VidHlwZXMuCisgKiBAcGFyYW0gZGVzdENhcGFjaXR5IHRoZSBjYXBhY2l0eSBv
ZiBkZXN0LgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2Rl
IHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgZmFpbHVyZSBi
ZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0dXJuIHRoZSBsZW5ndGggb2YgZGVzdC4K
KyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRh
dHBnX3JlcGxhY2VGaWVsZFR5cGVzKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMyX3QgcGF0
dGVybkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0
b24sIGludDMyX3Qgc2tlbGV0b25MZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgVUNo
YXIgKmRlc3QsIGludDMyX3QgZGVzdENhcGFjaXR5LAorICAgICAgICAgICAgICAgICAgICAgICAg
IFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEFkanVzdHMgdGhlIGZpZWxkIHR5
cGVzICh3aWR0aCBhbmQgc3VidHlwZSkgb2YgYSBwYXR0ZXJuIHRvIG1hdGNoIHdoYXQgaXMKKyAq
IGluIGEgc2tlbGV0b24uIFRoYXQgaXMsIGlmIHlvdSBzdXBwbHkgYSBwYXR0ZXJuIGxpa2UgImQt
TSBIOm0iLCBhbmQgYQorICogc2tlbGV0b24gb2YgIk1NTU1kZGhobW0iLCB0aGVuIHRoZSBpbnB1
dCBwYXR0ZXJuIGlzIGFkanVzdGVkIHRvIGJlCisgKiAiZGQtTU1NTSBoaDptbSIuIFRoaXMgaXMg
dXNlZCBpbnRlcm5hbGx5IHRvIGdldCB0aGUgYmVzdCBtYXRjaCBmb3IgdGhlCisgKiBpbnB1dCBz
a2VsZXRvbiwgYnV0IGNhbiBhbHNvIGJlIHVzZWQgZXh0ZXJuYWxseS4KKyAqCisgKiBOb3RlIHRo
YXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0
b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2ggaXMgc2V0IHVw
IGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUg
Zm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNhbGxzIHRvIHRoaXMgZnVu
Y3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRoaXMgZnVuY3Rpb24gY2Fu
bm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBvYmplY3QuCisg
KgorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3Iu
CisgKiBAcGFyYW0gcGF0dGVybiBJbnB1dCBwYXR0ZXJuCisgKiBAcGFyYW0gcGF0dGVybkxlbmd0
aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHBhdHRlcm4uCisgKiBAcGFyYW0gc2tlbGV0b24KKyAqIEBw
YXJhbSBza2VsZXRvbkxlbmd0aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHNrZWxldG9uLgorICogQHBh
cmFtIG9wdGlvbnMKKyAqICAgICAgICAgICAgT3B0aW9ucyBjb250cm9sbGluZyB3aGV0aGVyIHRo
ZSBsZW5ndGggb2Ygc3BlY2lmaWVkIGZpZWxkcyBpbiB0aGUKKyAqICAgICAgICAgICAgcGF0dGVy
biBhcmUgYWRqdXN0ZWQgdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNrZWxldG9uICh3aGVuIHRoaXMK
KyAqICAgICAgICAgICAgd291bGQgbm90IGhhcHBlbiBvdGhlcndpc2UpLiBGb3IgZGVmYXVsdCBi
ZWhhdmlvciwgdXNlCisgKiAgICAgICAgICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TLgorICog
QHBhcmFtIGRlc3QgIHBhdHRlcm4gYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHNrZWxldG9uIGZpZWxk
cyB3aWR0aHMgYW5kIHN1YnR5cGVzLgorICogQHBhcmFtIGRlc3RDYXBhY2l0eSB0aGUgY2FwYWNp
dHkgb2YgZGVzdC4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9y
Q29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAgICAgICAgICAgIGZhaWx1
cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGRl
c3QuCisgKiBAc3RhYmxlIElDVSA0LjQKKyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIK
K3VkYXRwZ19yZXBsYWNlRmllbGRUeXBlc1dpdGhPcHRpb25zKFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBV
Q2hhciAqcGF0dGVybiwgaW50MzJfdCBwYXR0ZXJuTGVuZ3RoLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IHNrZWxldG9u
TGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0
dGVybk1hdGNoT3B0aW9ucyBvcHRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgVUNoYXIgKmRlc3QsIGludDMyX3QgZGVzdENhcGFjaXR5LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICog
UmV0dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxsIHRoZSBza2VsZXRvbnMgaW4gY2Fub25p
Y2FsIGZvcm0uCisgKiBDYWxsIHVkYXRwZ19nZXRQYXR0ZXJuRm9yU2tlbGV0b24oKSB0byBnZXQg
dGhlIGNvcnJlc3BvbmRpbmcgcGF0dGVybi4KKyAqIAorICogQHBhcmFtIGR0cGcgYSBwb2ludGVy
IHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBv
aW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICogICAg
ICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbAorICogQHJldHVy
biBhIFVFbnVtZXJhdGlvbiBsaXN0IG9mIGFsbCB0aGUgc2tlbGV0b25zCisgKiAgICAgICAgIFRo
ZSBjYWxsZXIgbXVzdCBjbG9zZSB0aGUgb2JqZWN0LgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8K
K1VfU1RBQkxFIFVFbnVtZXJhdGlvbiAqIFVfRVhQT1JUMgordWRhdHBnX29wZW5Ta2VsZXRvbnMo
Y29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywgVUVycm9yQ29kZSAqcEVycm9y
Q29kZSk7CisKKy8qKgorICogUmV0dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxsIHRoZSBi
YXNlIHNrZWxldG9ucyBpbiBjYW5vbmljYWwgZm9ybS4KKyAqCisgKiBAcGFyYW0gZHRwZyBhIHBv
aW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwRXJyb3JDb2Rl
IGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisg
KiAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1
cm4gYSBVRW51bWVyYXRpb24gbGlzdCBvZiBhbGwgdGhlIGJhc2Ugc2tlbGV0b25zCisgKiAgICAg
ICAgICAgICBUaGUgY2FsbGVyIG11c3QgY2xvc2UgdGhlIG9iamVjdC4KKyAqIEBzdGFibGUgSUNV
IDMuOAorICovCitVX1NUQUJMRSBVRW51bWVyYXRpb24gKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVu
QmFzZVNrZWxldG9ucyhjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLCBVRXJy
b3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBHZXQgdGhlIHBhdHRlcm4gY29ycmVzcG9u
ZGluZyB0byBhIGdpdmVuIHNrZWxldG9uLgorICogCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIg
dG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBza2VsZXRvbiAKKyAqIEBw
YXJhbSBza2VsZXRvbkxlbmd0aCBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2Ygc2tlbGV0b24uCisg
KiBAcGFyYW0gcExlbmd0aCBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2YgcmV0dXJuIHBhdHRlcm4u
CisgKiBAcmV0dXJuIHBhdHRlcm4gY29ycmVzcG9uZGluZyB0byBhIGdpdmVuIHNrZWxldG9uLgor
ICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9FWFBPUlQy
Cit1ZGF0cGdfZ2V0UGF0dGVybkZvclNrZWxldG9uKGNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpz
a2VsZXRvbiwgaW50MzJfdCBza2VsZXRvbkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50MzJfdCAqcExlbmd0aCk7CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2ljdS91bmljb2RlL3VudW1zeXMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pY3UvdW5pY29kZS91bnVtc3lzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDI2NDYzZTgxYTVkZmZiOWYzNzk5
Nzc5NWIwNzVkNzUzOGM2NjYyMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pY3UvdW5pY29kZS91bnVtc3lzLmgKQEAgLTAsMCArMSwxNzQgQEAKKy8qCisqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKgorKiBDb3B5cmlnaHQgKEMpIDIwMTMsIEludGVybmF0
aW9uYWwgQnVzaW5lc3MgTWFjaGluZXMKKyogQ29ycG9yYXRpb24gYW5kIG90aGVycy4gQWxsIFJp
Z2h0cyBSZXNlcnZlZC4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisqLworCisj
aWZuZGVmIFVOVU1TWVNfSAorI2RlZmluZSBVTlVNU1lTX0gKKworI2luY2x1ZGUgInVuaWNvZGUv
dXR5cGVzLmgiCisKKyNpZiAhVUNPTkZJR19OT19GT1JNQVRUSU5HCisKKyNpbmNsdWRlICJ1bmlj
b2RlL3VlbnVtLmgiCisjaW5jbHVkZSAidW5pY29kZS9sb2NhbHBvaW50ZXIuaCIKKworLyoqCisg
KiBcZmlsZQorICogXGJyaWVmIEMgQVBJOiBVTnVtYmVyaW5nU3lzdGVtLCBpbmZvcm1hdGlvbiBh
Ym91dCBudW1iZXJpbmcgc3lzdGVtcworICoKKyAqIERlZmluZXMgbnVtYmVyaW5nIHN5c3RlbXMu
IEEgbnVtYmVyaW5nIHN5c3RlbSBkZXNjcmliZXMgdGhlIHNjaGVtZSBieSB3aGljaCAKKyAqIG51
bWJlcnMgYXJlIHRvIGJlIHByZXNlbnRlZCB0byB0aGUgZW5kIHVzZXIuIEluIGl0cyBzaW1wbGVz
dCBmb3JtLCBhIG51bWJlcmluZworICogc3lzdGVtIGRlc2NyaWJlcyB0aGUgc2V0IG9mIGRpZ2l0
IGNoYXJhY3RlcnMgdGhhdCBhcmUgdG8gYmUgdXNlZCB0byBkaXNwbGF5CisgKiBudW1iZXJzLCBz
dWNoIGFzIFdlc3Rlcm4gZGlnaXRzLCBUaGFpIGRpZ2l0cywgQXJhYmljLUluZGljIGRpZ2l0cywg
ZXRjLiwgaW4gYQorICogcG9zaXRpb25hbCBudW1iZXJpbmcgc3lzdGVtIHdpdGggYSBzcGVjaWZp
ZWQgcmFkaXggKHR5cGljYWxseSAxMCkuCisgKiBNb3JlIGNvbXBsaWNhdGVkIG51bWJlcmluZyBz
eXN0ZW1zIGFyZSBhbGdvcml0aG1pYyBpbiBuYXR1cmUsIGFuZCByZXF1aXJlIHVzZQorICogb2Yg
YW4gUkJORiBmb3JtYXR0ZXIgKHJ1bGUgYmFzZWQgbnVtYmVyIGZvcm1hdHRlciksIGluIG9yZGVy
IHRvIGNhbGN1bGF0ZQorICogdGhlIGNoYXJhY3RlcnMgdG8gYmUgZGlzcGxheWVkIGZvciBhIGdp
dmVuIG51bWJlci4gRXhhbXBsZXMgb2YgYWxnb3JpdGhtaWMKKyAqIG51bWJlcmluZyBzeXN0ZW1z
IGluY2x1ZGUgUm9tYW4gbnVtZXJhbHMsIENoaW5lc2UgbnVtZXJhbHMsIGFuZCBIZWJyZXcgbnVt
ZXJhbHMuCisgKiBGb3JtYXR0aW5nIHJ1bGVzIGZvciBtYW55IGNvbW1vbmx5IHVzZWQgbnVtYmVy
aW5nIHN5c3RlbXMgYXJlIGluY2x1ZGVkIGluCisgKiB0aGUgSUNVIHBhY2thZ2UsIGJhc2VkIG9u
IHRoZSBudW1iZXJpbmcgc3lzdGVtIHJ1bGVzIGRlZmluZWQgaW4gQ0xEUi4KKyAqIEFsdGVybmF0
ZSBudW1iZXJpbmcgc3lzdGVtcyBjYW4gYmUgc3BlY2lmaWVkIHRvIGEgbG9jYWxlIGJ5IHVzaW5n
IHRoZQorICogbnVtYmVycyBsb2NhbGUga2V5d29yZC4KKyAqLworCisjaWZuZGVmIFVfSElERV9E
UkFGVF9BUEkKKworLyoqCisgKiBPcGFxdWUgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgZm9yIHVz
ZSBpbiBDIHByb2dyYW1zLgorICogQGRyYWZ0IElDVSA1MgorICovCitzdHJ1Y3QgVU51bWJlcmlu
Z1N5c3RlbTsKK3R5cGVkZWYgc3RydWN0IFVOdW1iZXJpbmdTeXN0ZW0gVU51bWJlcmluZ1N5c3Rl
bTsgIC8qKjwgQyB0eXBlZGVmIGZvciBzdHJ1Y3QgVU51bWJlcmluZ1N5c3RlbS4gQGRyYWZ0IElD
VSA1MiAqLworCisvKioKKyAqIE9wZW5zIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgdXNpbmcg
dGhlIGRlZmF1bHQgbnVtYmVyaW5nIHN5c3RlbSBmb3IgdGhlIHNwZWNpZmllZAorICogbG9jYWxl
LgorICogQHBhcmFtIGxvY2FsZSAgICBUaGUgbG9jYWxlIGZvciB3aGljaCB0aGUgZGVmYXVsdCBu
dW1iZXJpbmcgc3lzdGVtIHNob3VsZCBiZSBvcGVuZWQuCisgKiBAcGFyYW0gc3RhdHVzICAgIEEg
cG9pbnRlciB0byBhIFVFcnJvckNvZGUgdG8gcmVjZWl2ZSBhbnkgZXJyb3JzLiBGb3IgZXhhbXBs
ZSwgdGhpcworICogICAgICAgICAgICAgICAgICBtYXkgYmUgVV9VTlNVUFBPUlRFRF9FUlJPUiBm
b3IgYSBsb2NhbGUgc3VjaCBhcyAiZW5AbnVtYmVycz14eXoiIHRoYXQKKyAqICAgICAgICAgICAg
ICAgICAgc3BlY2lmaWVzIGEgbnVtYmVyaW5nIHN5c3RlbSB1bmtub3duIHRvIElDVS4KKyAqIEBy
ZXR1cm4gICAgICAgICAgQSBVTnVtYmVyaW5nU3lzdGVtIGZvciB0aGUgc3BlY2lmaWVkIGxvY2Fs
ZSwgb3IgTlVMTCBpZiBhbiBlcnJvcgorICogICAgICAgICAgICAgICAgICBvY2N1cnJlZC4KKyAq
IEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVTnVtYmVyaW5nU3lzdGVtICogVV9FWFBPUlQy
Cit1bnVtc3lzX29wZW4oY29uc3QgY2hhciAqbG9jYWxlLCBVRXJyb3JDb2RlICpzdGF0dXMpOwor
CisvKioKKyAqIE9wZW5zIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgdXNpbmcgdGhlIG5hbWUg
b2Ygb25lIG9mIHRoZSBwcmVkZWZpbmVkIG51bWJlcmluZworICogc3lzdGVtcyBzcGVjaWZpZWQg
YnkgQ0xEUiBhbmQga25vd24gdG8gSUNVLCBzdWNoIGFzICJsYXRuIiwgImFyYWJleHQiLCBvciAi
aGFuaWRlYyI7CisgKiB0aGUgZnVsbCBsaXN0IGlzIHJldHVybmVkIGJ5IHVudW1zeXNfb3BlbkF2
YWlsYWJsZU5hbWVzLiBOb3RlIHRoYXQgc29tZSBvZiB0aGUgbmFtZXMKKyAqIGxpc3RlZCBhdCBo
dHRwOi8vdW5pY29kZS5vcmcvcmVwb3MvY2xkci90YWdzL2xhdGVzdC9jb21tb24vYmNwNDcvbnVt
YmVyLnhtbCAtIGUuZy4KKyAqIGRlZmF1bHQsIG5hdGl2ZSwgdHJhZGl0aW9uYWwsIGZpbmFuY2Ug
LSBkbyBub3QgaWRlbnRpZnkgc3BlY2lmaWMgbnVtYmVyaW5nIHN5c3RlbXMsCisgKiBidXQgcmF0
aGVyIGtleSB2YWx1ZXMgdGhhdCBtYXkgb25seSBiZSB1c2VkIGFzIHBhcnQgb2YgYSBsb2NhbGUs
IHdoaWNoIGluIHR1cm4KKyAqIGRlZmluZXMgaG93IHRoZXkgYXJlIG1hcHBlZCB0byBhIHNwZWNp
ZmljIG51bWJlcmluZyBzeXN0ZW0gc3VjaCBhcyAibGF0biIgb3IgImhhbnQiLgorICoKKyAqIEBw
YXJhbSBuYW1lICAgICAgVGhlIG5hbWUgb2YgdGhlIG51bWJlcmluZyBzeXN0ZW0gZm9yIHdoaWNo
IGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QKKyAqICAgICAgICAgICAgICAgICAgc2hvdWxkIGJl
IG9wZW5lZC4KKyAqIEBwYXJhbSBzdGF0dXMgICAgQSBwb2ludGVyIHRvIGEgVUVycm9yQ29kZSB0
byByZWNlaXZlIGFueSBlcnJvcnMuIEZvciBleGFtcGxlLCB0aGlzCisgKiAgICAgICAgICAgICAg
ICAgIG1heSBiZSBVX1VOU1VQUE9SVEVEX0VSUk9SIGZvciBhIG51bWJlcmluZyBzeXN0ZW0gc3Vj
aCBhcyAieHl6IiB0aGF0CisgKiAgICAgICAgICAgICAgICAgIGlzIHVua25vd24gdG8gSUNVLgor
ICogQHJldHVybiAgICAgICAgICBBIFVOdW1iZXJpbmdTeXN0ZW0gZm9yIHRoZSBzcGVjaWZpZWQg
bmFtZSwgb3IgTlVMTCBpZiBhbiBlcnJvcgorICogICAgICAgICAgICAgICAgICBvY2N1cnJlZC4K
KyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVTnVtYmVyaW5nU3lzdGVtICogVV9FWFBP
UlQyCit1bnVtc3lzX29wZW5CeU5hbWUoY29uc3QgY2hhciAqbmFtZSwgVUVycm9yQ29kZSAqc3Rh
dHVzKTsKKworLyoqCisgKiBDbG9zZSBhIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0LiBPbmNlIGNs
b3NlZCBpdCBtYXkgbm8gbG9uZ2VyIGJlIHVzZWQuCisgKiBAcGFyYW0gdW51bXN5cyAgIFRoZSBV
TnVtYmVyaW5nU3lzdGVtIG9iamVjdCB0byBjbG9zZS4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAqLwor
VV9EUkFGVCB2b2lkIFVfRVhQT1JUMgordW51bXN5c19jbG9zZShVTnVtYmVyaW5nU3lzdGVtICp1
bnVtc3lzKTsKKworI2lmIFVfU0hPV19DUExVU1BMVVNfQVBJCitVX05BTUVTUEFDRV9CRUdJTgor
CisvKioKKyAqIFxjbGFzcyBMb2NhbFVOdW1iZXJpbmdTeXN0ZW1Qb2ludGVyCisgKiAiU21hcnQg
cG9pbnRlciIgY2xhc3MsIGNsb3NlcyBhIFVOdW1iZXJpbmdTeXN0ZW0gdmlhIHVudW1zeXNfY2xv
c2UoKS4KKyAqIEZvciBtb3N0IG1ldGhvZHMgc2VlIHRoZSBMb2NhbFBvaW50ZXJCYXNlIGJhc2Ug
Y2xhc3MuCisgKiBAc2VlIExvY2FsUG9pbnRlckJhc2UKKyAqIEBzZWUgTG9jYWxQb2ludGVyCisg
KiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfREVGSU5FX0xPQ0FMX09QRU5fUE9JTlRFUihMb2NhbFVO
dW1iZXJpbmdTeXN0ZW1Qb2ludGVyLCBVTnVtYmVyaW5nU3lzdGVtLCB1bnVtc3lzX2Nsb3NlKTsK
KworVV9OQU1FU1BBQ0VfRU5ECisjZW5kaWYKKworLyoqCisgKiBSZXR1cm5zIGFuIGVudW1lcmF0
aW9uIG92ZXIgdGhlIG5hbWVzIG9mIGFsbCBvZiB0aGUgcHJlZGVmaW5lZCBudW1iZXJpbmcgc3lz
dGVtcyBrbm93bgorICogdG8gSUNVLgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBvaW50ZXIgdG8g
YSBVRXJyb3JDb2RlIHRvIHJlY2VpdmUgYW55IGVycm9ycy4KKyAqIEByZXR1cm4gICAgICAgICAg
QSBwb2ludGVyIHRvIGEgVUVudW1lcmF0aW9uIHRoYXQgbXVzdCBiZSBjbG9zZWQgd2l0aCB1ZW51
bV9jbG9zZSgpLAorICogICAgICAgICAgICAgICAgICBvciBOVUxMIGlmIGFuIGVycm9yIG9jY3Vy
cmVkLgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIFVFbnVtZXJhdGlvbiAqIFVfRVhQ
T1JUMgordW51bXN5c19vcGVuQXZhaWxhYmxlTmFtZXMoVUVycm9yQ29kZSAqc3RhdHVzKTsKKwor
LyoqCisgKiBSZXR1cm5zIHRoZSBuYW1lIG9mIHRoZSBzcGVjaWZpZWQgVU51bWJlcmluZ1N5c3Rl
bSBvYmplY3QgKGlmIGl0IGlzIG9uZSBvZiB0aGUKKyAqIHByZWRlZmluZWQgbmFtZXMga25vd24g
dG8gSUNVKS4KKyAqIEBwYXJhbSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2Ug
bmFtZSBpcyBkZXNpcmVkLgorICogQHJldHVybiAgICAgICAgICBBIHBvaW50ZXIgdG8gdGhlIG5h
bWUgb2YgdGhlIHNwZWNpZmllZCBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCwgb3IKKyAqICAgICAg
ICAgICAgICAgICAgTlVMTCBpZiB0aGUgbmFtZSBpcyBub3Qgb25lIG9mIHRoZSBJQ1UgcHJlZGVm
aW5lZCBuYW1lcy4gVGhlIHBvaW50ZXIKKyAqICAgICAgICAgICAgICAgICAgaXMgb25seSB2YWxp
ZCBmb3IgdGhlIGxpZmV0aW1lIG9mIHRoZSBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdC4KKyAqIEBk
cmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBjb25zdCBjaGFyICogVV9FWFBPUlQyCit1bnVtc3lz
X2dldE5hbWUoY29uc3QgVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5cyk7CisKKy8qKgorICogUmV0
dXJucyB3aGV0aGVyIHRoZSBnaXZlbiBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCBpcyBmb3IgYW4g
YWxnb3JpdGhtaWMgKG5vdCBwdXJlbHkKKyAqIHBvc2l0aW9uYWwpIHN5c3RlbS4KKyAqIEBwYXJh
bSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2UgYWxnb3JpdGhtaWMgc3RhdHVz
IGlzIGRlc2lyZWQuCisgKiBAcmV0dXJuICAgICAgICAgIFRSVUUgaWYgdGhlIHNwZWNpZmllZCBV
TnVtYmVyaW5nU3lzdGVtIG9iamVjdCBpcyBmb3IgYW4gYWxnb3JpdGhtaWMKKyAqICAgICAgICAg
ICAgICAgICAgc3lzdGVtLgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIFVCb29sIFVf
RVhQT1JUMgordW51bXN5c19pc0FsZ29yaXRobWljKGNvbnN0IFVOdW1iZXJpbmdTeXN0ZW0gKnVu
dW1zeXMpOworCisvKioKKyAqIFJldHVybnMgdGhlIHJhZGl4IG9mIHRoZSBzcGVjaWZpZWQgVU51
bWJlcmluZ1N5c3RlbSBvYmplY3QuIFNpbXBsZSBwb3NpdGlvbmFsCisgKiBudW1iZXJpbmcgc3lz
dGVtcyB0eXBpY2FsbHkgaGF2ZSByYWRpeCAxMCwgYnV0IG1pZ2h0IGhhdmUgYSByYWRpeCBvZiBl
LmcuIDE2IGZvcgorICogaGV4YWRlY2ltYWwuIFRoZSByYWRpeCBpcyBsZXNzIHdlbGwtZGVmaW5l
ZCBmb3Igbm9uLXBvc2l0aW9uYWwgYWxnb3JpdGhtaWMgc3lzdGVtcy4KKyAqIEBwYXJhbSB1bnVt
c3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2UgcmFkaXggaXMgZGVzaXJlZC4KKyAqIEBy
ZXR1cm4gICAgICAgICAgVGhlIHJhZGl4IG9mIHRoZSBzcGVjaWZpZWQgVU51bWJlcmluZ1N5c3Rl
bSBvYmplY3QuCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfRFJBRlQgaW50MzJfdCBVX0VYUE9S
VDIKK3VudW1zeXNfZ2V0UmFkaXgoY29uc3QgVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5cyk7CisK
Ky8qKgorICogR2V0IHRoZSBkZXNjcmlwdGlvbiBzdHJpbmcgb2YgdGhlIHNwZWNpZmllZCBVTnVt
YmVyaW5nU3lzdGVtIG9iamVjdC4gRm9yIHNpbXBsZQorICogcG9zaXRpb25hbCBzeXN0ZW1zIHRo
aXMgaXMgdGhlIG9yZGVyZWQgc3RyaW5nIG9mIGRpZ2l0cyAod2l0aCBsZW5ndGggbWF0Y2hpbmcK
KyAqIHRoZSByYWRpeCksIGUuZy4gIlx1MzAwN1x1NEUwMFx1NEU4Q1x1NEUwOVx1NTZEQlx1NEU5
NFx1NTE2RFx1NEUwM1x1NTE2Qlx1NEU1RCIKKyAqIGZvciAiaGFuaWRlYyI7IGl0IHdvdWxkIGJl
ICIwMTIzNDU2Nzg5QUJDREVGIiBmb3IgaGV4YWRlY2ltYWwuIEZvcgorICogYWxnb3JpdGhtaWMg
c3lzdGVtcyB0aGlzIGlzIHRoZSBuYW1lIG9mIHRoZSBSQk5GIHJ1bGVzZXQgdXNlZCBmb3IgZm9y
bWF0dGluZywKKyAqIGUuZy4gInpoL1NwZWxsb3V0UnVsZXMvJXNwZWxsb3V0LWNhcmRpbmFsIiBm
b3IgImhhbnMiIG9yICIlZ3JlZWstdXBwZXIiIGZvcgorICogImdyZWsiLgorICogQHBhcmFtIHVu
dW1zeXMgICBUaGUgVU51bWJlcmluZ1N5c3RlbSB3aG9zZSBkZXNjcmlwdGlvbiBzdHJpbmcgaXMg
ZGVzaXJlZC4KKyAqIEBwYXJhbSByZXN1bHQgICAgQSBwb2ludGVyIHRvIGEgYnVmZmVyIHRvIHJl
Y2VpdmUgdGhlIGRlc2NyaXB0aW9uIHN0cmluZy4KKyAqIEBwYXJhbSByZXN1bHRMZW5ndGggIFRo
ZSBtYXhpbXVtIHNpemUgb2YgcmVzdWx0LgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBvaW50ZXIg
dG8gYSBVRXJyb3JDb2RlIHRvIHJlY2VpdmUgYW55IGVycm9ycy4KKyAqIEByZXR1cm4gICAgICAg
ICAgVGhlIHRvdGFsIGJ1ZmZlciBzaXplIG5lZWRlZDsgaWYgZ3JlYXRlciB0aGFuIHJlc3VsdExl
bmd0aCwgdGhlCisgKiAgICAgICAgICAgICAgICAgIG91dHB1dCB3YXMgdHJ1bmNhdGVkLgorICog
QGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIGludDMyX3QgVV9FWFBPUlQyCit1bnVtc3lzX2dl
dERlc2NyaXB0aW9uKGNvbnN0IFVOdW1iZXJpbmdTeXN0ZW0gKnVudW1zeXMsIFVDaGFyICpyZXN1
bHQsCisgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgcmVzdWx0TGVuZ3RoLCBVRXJyb3JD
b2RlICpzdGF0dXMpOworCisjZW5kaWYgIC8qIFVfSElERV9EUkFGVF9BUEkgKi8KKworI2VuZGlm
IC8qICNpZiAhVUNPTkZJR19OT19GT1JNQVRUSU5HICovCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKaW5kZXggOGNkN2Jj
YThiYWIzNTEwZTNiODc1Y2QwMDE4NGM3YjAwNDIwMzg4ZC4uZWI0N2QwMjQzOTU5MTM2ODU3MDBh
NjJlNTUwZTYyYWZjZjdiNDI3YiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Db21tb25JZGVudGlmaWVycy5oCkBAIC0xMDEsNiArMTAxLDcgQEAKICAgICBtYWNybyhj
b25zdHJ1Y3RvcikgXAogICAgIG1hY3JvKGNvdW50KSBcCiAgICAgbWFjcm8oY291bnRlcnMpIFwK
KyAgICBtYWNybyhkYXkpIFwKICAgICBtYWNybyhkZWZpbmVQcm9wZXJ0eSkgXAogICAgIG1hY3Jv
KGRlc2NyaXB0aW9uKSBcCiAgICAgbWFjcm8oZGVzY3JpcHRpb25zKSBcCkBAIC0xMDksNiArMTEw
LDcgQEAKICAgICBtYWNybyhkb25lKSBcCiAgICAgbWFjcm8oZW50cmllcykgXAogICAgIG1hY3Jv
KGVudW1lcmFibGUpIFwKKyAgICBtYWNybyhlcmEpIFwKICAgICBtYWNybyhldmFsKSBcCiAgICAg
bWFjcm8oZXhlYykgXAogICAgIG1hY3JvKGV4ZWN1dGlvbkNvdW50KSBcCkBAIC0xMTYsNiArMTE4
LDcgQEAKICAgICBtYWNybyhmbGFncykgXAogICAgIG1hY3JvKGZvY3VzKSBcCiAgICAgbWFjcm8o
Zm9yRWFjaCkgXAorICAgIG1hY3JvKGZvcm1hdE1hdGNoZXIpIFwKICAgICBtYWNybyhmb3J3YXJk
KSBcCiAgICAgbWFjcm8oZnJvbSkgXAogICAgIG1hY3JvKGZyb21DaGFyQ29kZSkgXApAQCAtMTI2
LDYgKzEyOSw4IEBACiAgICAgbWFjcm8oaGFzT3duUHJvcGVydHkpIFwKICAgICBtYWNybyhoYXNo
KSBcCiAgICAgbWFjcm8oaGVhZGVyKSBcCisgICAgbWFjcm8oaG91cikgXAorICAgIG1hY3JvKGhv
dXIxMikgXAogICAgIG1hY3JvKGhyZWYpIFwKICAgICBtYWNybyhpZCkgXAogICAgIG1hY3JvKGln
bm9yZUNhc2UpIFwKQEAgLTE0OSw2ICsxNTQsOCBAQAogICAgIG1hY3JvKGxvY2FsZSkgXAogICAg
IG1hY3JvKGxvY2FsZU1hdGNoZXIpIFwKICAgICBtYWNybyhtZXNzYWdlKSBcCisgICAgbWFjcm8o
bWludXRlKSBcCisgICAgbWFjcm8obW9udGgpIFwKICAgICBtYWNybyhtdWx0aWxpbmUpIFwKICAg
ICBtYWNybyhuYW1lKSBcCiAgICAgbWFjcm8obmV4dCkgXApAQCAtMTcyLDYgKzE3OSw3IEBACiAg
ICAgbWFjcm8ocmVsb2FkKSBcCiAgICAgbWFjcm8ocmVwbGFjZSkgXAogICAgIG1hY3JvKHJlc29s
dmUpIFwKKyAgICBtYWNybyhzZWNvbmQpIFwKICAgICBtYWNybyhzZW5zaXRpdml0eSkgXAogICAg
IG1hY3JvKHNldCkgXAogICAgIG1hY3JvKHNob3dNb2RhbERpYWxvZykgXApAQCAtMTg1LDYgKzE5
Myw4IEBACiAgICAgbWFjcm8odGFyZ2V0KSBcCiAgICAgbWFjcm8odGVzdCkgXAogICAgIG1hY3Jv
KHRoZW4pIFwKKyAgICBtYWNybyh0aW1lWm9uZSkgXAorICAgIG1hY3JvKHRpbWVab25lTmFtZSkg
XAogICAgIG1hY3JvKHRvRXhwb25lbnRpYWwpIFwKICAgICBtYWNybyh0b0ZpeGVkKSBcCiAgICAg
bWFjcm8odG9JU09TdHJpbmcpIFwKQEAgLTE5OCw4ICsyMDgsMTAgQEAKICAgICBtYWNybyh2YWx1
ZXMpIFwKICAgICBtYWNybyh3ZWJraXQpIFwKICAgICBtYWNybyh3ZWJraXRJbmRleGVkREIpIFwK
KyAgICBtYWNybyh3ZWVrZGF5KSBcCiAgICAgbWFjcm8od2luZG93KSBcCi0gICAgbWFjcm8od3Jp
dGFibGUpCisgICAgbWFjcm8od3JpdGFibGUpIFwKKyAgICBtYWNybyh5ZWFyKQogCiAjZGVmaW5l
IEpTQ19DT01NT05fSURFTlRJRklFUlNfRUFDSF9LRVlXT1JEKG1hY3JvKSBcCiAgICAgbWFjcm8o
YnJlYWspIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxE
YXRlVGltZUZvcm1hdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0
ZVRpbWVGb3JtYXQuY3BwCmluZGV4IGRjNWIyYWNlMzI1YjA4YjZmMmYzN2IyMzEwNzY5MjBlODhm
Y2YwMjguLjY3M2VmYmI3YjNhY2NlNzQ5NTZhNGFjMTg4ZmZlNTA4YmFhMWUyN2UgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNw
cApAQCAtMzYsOCArMzYsMTMgQEAKICNpbmNsdWRlICJKU0JvdW5kRnVuY3Rpb24uaCIKICNpbmNs
dWRlICJKU0NKU1ZhbHVlSW5saW5lcy5oIgogI2luY2x1ZGUgIkpTQ2VsbElubGluZXMuaCIKKyNp
bmNsdWRlICJPYmplY3RDb25zdHJ1Y3Rvci5oIgogI2luY2x1ZGUgIlNsb3RWaXNpdG9ySW5saW5l
cy5oIgogI2luY2x1ZGUgIlN0cnVjdHVyZUlubGluZXMuaCIKKyNpbmNsdWRlIDx1bmljb2RlL3Vj
YWwuaD4KKyNpbmNsdWRlIDx1bmljb2RlL3VkYXQuaD4KKyNpbmNsdWRlIDx1bmljb2RlL3VkYXRw
Zy5oPgorI2luY2x1ZGUgPHVuaWNvZGUvdWVudW0uaD4KIAogbmFtZXNwYWNlIEpTQyB7CiAKQEAg
LTg2LDE0ICs5MSw1OTUgQEAgdm9pZCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEJvdW5kRm9ybWF0
KFZNJiB2bSwgSlNCb3VuZEZ1bmN0aW9uKiBmb3JtYXQpCiAgICAgbV9ib3VuZEZvcm1hdC5zZXQo
dm0sIHRoaXMsIGZvcm1hdCk7CiB9CiAKK2VudW0gY2xhc3MgRGF0ZVRpbWVPcHRpb25SZXF1aXJl
ZCB7IERhdGUsIFRpbWUsIEFueSB9OworZW51bSBjbGFzcyBEYXRlVGltZU9wdGlvbkRlZmF1bHRz
IHsgRGF0ZSwgVGltZSwgQWxsIH07CisKK1N0cmluZyBkZWZhdWx0VGltZVpvbmUoKQoreworICAg
IC8vIDYuNC4zIERlZmF1bHRUaW1lWm9uZSAoKSAoRUNNQS00MDIgMi4wKQorICAgIC8vIFRoZSBE
ZWZhdWx0VGltZVpvbmUgYWJzdHJhY3Qgb3BlcmF0aW9uIHJldHVybnMgYSBTdHJpbmcgdmFsdWUg
cmVwcmVzZW50aW5nIHRoZSB2YWxpZCAoNi40LjEpIGFuZCBjYW5vbmljYWxpemVkICg2LjQuMikg
dGltZSB6b25lIG5hbWUgZm9yIHRoZSBob3N0IGVudmlyb25tZW504oCZcyBjdXJyZW50IHRpbWUg
em9uZS4KKworICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgIGF1dG8g
YnVmZmVyTGVuZ3RoID0gdWNhbF9nZXREZWZhdWx0VGltZVpvbmUobnVsbHB0ciwgMCwgJnN0YXR1
cyk7CisgICAgaWYgKHN0YXR1cyA9PSBVX0JVRkZFUl9PVkVSRkxPV19FUlJPUikgeworICAgICAg
ICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgIFZlY3RvcjxVQ2hhciwgMzI+IGJ1ZmZl
cihidWZmZXJMZW5ndGgpOworICAgICAgICB1Y2FsX2dldERlZmF1bHRUaW1lWm9uZShidWZmZXIu
ZGF0YSgpLCBidWZmZXJMZW5ndGgsICZzdGF0dXMpOworICAgICAgICBpZiAoVV9TVUNDRVNTKHN0
YXR1cykpCisgICAgICAgICAgICByZXR1cm4gU3RyaW5nKGJ1ZmZlci5kYXRhKCksIGJ1ZmZlckxl
bmd0aCk7CisgICAgfQorICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIlVUQyIpOworfQorCitzdGF0
aWMgU3RyaW5nIGNhbm9uaWNhbGl6ZVRpbWVab25lTmFtZShjb25zdCBTdHJpbmcmIHRpbWVab25l
TmFtZSkKK3sKKyAgICAvLyA2LjQuMSBJc1ZhbGlkVGltZVpvbmVOYW1lICh0aW1lWm9uZSkKKyAg
ICAvLyBUaGUgYWJzdHJhY3Qgb3BlcmF0aW9uIHJldHVybnMgdHJ1ZSBpZiB0aW1lWm9uZSwgY29u
dmVydGVkIHRvIHVwcGVyIGNhc2UgYXMgZGVzY3JpYmVkIGluIDYuMSwgaXMgZXF1YWwgdG8gb25l
IG9mIHRoZSBab25lIG9yIExpbmsgbmFtZXMgb2YgdGhlIElBTkEgVGltZSBab25lIERhdGFiYXNl
LCBjb252ZXJ0ZWQgdG8gdXBwZXIgY2FzZSBhcyBkZXNjcmliZWQgaW4gNi4xLiBJdCByZXR1cm5z
IGZhbHNlIG90aGVyd2lzZS4KKyAgICBVRXJyb3JDb2RlIHN0YXR1cyA9IFVfWkVST19FUlJPUjsK
KyAgICBVRW51bWVyYXRpb24qIHRpbWVab25lcyA9IHVjYWxfb3BlblRpbWVab25lcygmc3RhdHVz
KTsKKyAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworCisgICAgU3RyaW5nIGNhbm9uaWNh
bDsKKyAgICB3aGlsZSAoY2Fub25pY2FsLmlzTnVsbCgpKSB7CisgICAgICAgIHN0YXR1cyA9IFVf
WkVST19FUlJPUjsKKyAgICAgICAgaW50MzJfdCBpYW5hVGltZVpvbmVMZW5ndGg7CisgICAgICAg
IC8vIFRpbWUgem9uZSBuYW1lcyBhcmUgcmVzcHJlc2VudGVkIGFzIFVDaGFyW10gaW4gYWxsIHJl
bGF0ZWQgSUNVIGFwaXMuCisgICAgICAgIGNvbnN0IFVDaGFyKiBpYW5hVGltZVpvbmUgPSB1ZW51
bV91bmV4dCh0aW1lWm9uZXMsICZpYW5hVGltZVpvbmVMZW5ndGgsICZzdGF0dXMpOworICAgICAg
ICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworCisgICAgICAgIC8vIEVuZCBvZiBlbnVtZXJh
dGlvbi4KKyAgICAgICAgaWYgKCFpYW5hVGltZVpvbmUpCisgICAgICAgICAgICBicmVhazsKKwor
ICAgICAgICBTdHJpbmdWaWV3IGlhbmFUaW1lWm9uZVZpZXcoaWFuYVRpbWVab25lLCBpYW5hVGlt
ZVpvbmVMZW5ndGgpOworICAgICAgICBpZiAoIWVxdWFsSWdub3JpbmdBU0NJSUNhc2UodGltZVpv
bmVOYW1lLCBpYW5hVGltZVpvbmVWaWV3KSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAg
ICAgIC8vIEZvdW5kIGEgbWF0Y2gsIG5vdyBjYW5vbmljYWxpemUuCisgICAgICAgIC8vIDYuNC4y
IENhbm9uaWNhbGl6ZVRpbWVab25lTmFtZSAodGltZVpvbmUpIChFQ01BLTQwMiAyLjApCisgICAg
ICAgIC8vIDEuIExldCBpYW5hVGltZVpvbmUgYmUgdGhlIFpvbmUgb3IgTGluayBuYW1lIG9mIHRo
ZSBJQU5BIFRpbWUgWm9uZSBEYXRhYmFzZSBzdWNoIHRoYXQgdGltZVpvbmUsIGNvbnZlcnRlZCB0
byB1cHBlciBjYXNlIGFzIGRlc2NyaWJlZCBpbiA2LjEsIGlzIGVxdWFsIHRvIGlhbmFUaW1lWm9u
ZSwgY29udmVydGVkIHRvIHVwcGVyIGNhc2UgYXMgZGVzY3JpYmVkIGluIDYuMS4KKyAgICAgICAg
Ly8gMi4gSWYgaWFuYVRpbWVab25lIGlzIGEgTGluayBuYW1lLCB0aGVuIGxldCBpYW5hVGltZVpv
bmUgYmUgdGhlIGNvcnJlc3BvbmRpbmcgWm9uZSBuYW1lIGFzIHNwZWNpZmllZCBpbiB0aGUg4oCc
YmFja3dhcmTigJ0gZmlsZSBvZiB0aGUgSUFOQSBUaW1lIFpvbmUgRGF0YWJhc2UuCisKKyAgICAg
ICAgVmVjdG9yPFVDaGFyLCAzMj4gYnVmZmVyKGlhbmFUaW1lWm9uZUxlbmd0aCk7CisgICAgICAg
IFVCb29sIGlzU3lzdGVtSUQgPSBmYWxzZTsKKyAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9S
OworICAgICAgICBhdXRvIGNhbm9uaWNhbExlbmd0aCA9IHVjYWxfZ2V0Q2Fub25pY2FsVGltZVpv
bmVJRChpYW5hVGltZVpvbmUsIGlhbmFUaW1lWm9uZUxlbmd0aCwgYnVmZmVyLmRhdGEoKSwgaWFu
YVRpbWVab25lTGVuZ3RoLCAmaXNTeXN0ZW1JRCwgJnN0YXR1cyk7CisgICAgICAgIGlmIChzdGF0
dXMgPT0gVV9CVUZGRVJfT1ZFUkZMT1dfRVJST1IpIHsKKyAgICAgICAgICAgIGJ1ZmZlciA9IFZl
Y3RvcjxVQ2hhciwgMzI+KGNhbm9uaWNhbExlbmd0aCk7CisgICAgICAgICAgICBpc1N5c3RlbUlE
ID0gZmFsc2U7CisgICAgICAgICAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgICAg
ICB1Y2FsX2dldENhbm9uaWNhbFRpbWVab25lSUQoaWFuYVRpbWVab25lLCBpYW5hVGltZVpvbmVM
ZW5ndGgsIGJ1ZmZlci5kYXRhKCksIGNhbm9uaWNhbExlbmd0aCwgJmlzU3lzdGVtSUQsICZzdGF0
dXMpOworICAgICAgICB9CisgICAgICAgIEFTU0VSVChVX1NVQ0NFU1Moc3RhdHVzKSk7CisgICAg
ICAgIGNhbm9uaWNhbCA9IFN0cmluZyhidWZmZXIuZGF0YSgpLCBjYW5vbmljYWxMZW5ndGgpOwor
ICAgIH0KKyAgICB1ZW51bV9jbG9zZSh0aW1lWm9uZXMpOworCisgICAgLy8gMy4gSWYgaWFuYVRp
bWVab25lIGlzICJFdGMvVVRDIiBvciAiRXRjL0dNVCIsIHRoZW4gcmV0dXJuICJVVEMiLgorICAg
IGlmIChjYW5vbmljYWwgPT0gIkV0Yy9VVEMiIHx8IGNhbm9uaWNhbCA9PSAiRXRjL0dNVCIpCisg
ICAgICAgIGNhbm9uaWNhbCA9IEFTQ0lJTGl0ZXJhbCgiVVRDIik7CisKKyAgICAvLyA0LiBSZXR1
cm4gaWFuYVRpbWVab25lLgorICAgIHJldHVybiBjYW5vbmljYWw7Cit9CisKK3N0YXRpYyBWZWN0
b3I8U3RyaW5nPiBsb2NhbGVEYXRhKGNvbnN0IFN0cmluZyYgbG9jYWxlLCBjb25zdCBTdHJpbmcm
IGtleSkKK3sKKyAgICBpZiAoa2V5ID09ICJjYSIpIHsKKyAgICAgICAgVUVycm9yQ29kZSBzdGF0
dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgIFVFbnVtZXJhdGlvbiogY2FsZW5kYXJzID0gdWNh
bF9nZXRLZXl3b3JkVmFsdWVzRm9yTG9jYWxlKCJjYWxlbmRhciIsIGxvY2FsZS51dGY4KCkuZGF0
YSgpLCBmYWxzZSwgJnN0YXR1cyk7CisgICAgICAgIEFTU0VSVChVX1NVQ0NFU1Moc3RhdHVzKSk7
CisKKyAgICAgICAgVmVjdG9yPFN0cmluZz4gY2FEYXRhOworICAgICAgICBzdGF0dXMgPSBVX1pF
Uk9fRVJST1I7CisgICAgICAgIGludDMyX3QgbmFtZUxlbmd0aDsKKyAgICAgICAgd2hpbGUgKGNv
bnN0IGNoYXIqIGF2YWlsYWJsZU5hbWUgPSB1ZW51bV9uZXh0KGNhbGVuZGFycywgJm5hbWVMZW5n
dGgsICZzdGF0dXMpKSB7CisgICAgICAgICAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOwor
ICAgICAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICAgICAgU3RyaW5nIGNh
bGVuZGFyID0gU3RyaW5nKGF2YWlsYWJsZU5hbWUsIG5hbWVMZW5ndGgpOworICAgICAgICAgICAg
Y2FEYXRhLmFwcGVuZChjYWxlbmRhcik7CisgICAgICAgICAgICAvLyBFbnN1cmUgYWxpYXNlcyB1
c2VkIGluIGxhbmd1YWdlIHRhZyBhcmUgYWxsb3dlZC4KKyAgICAgICAgICAgIGlmIChjYWxlbmRh
ciA9PSAiZ3JlZ29yaWFuIikKKyAgICAgICAgICAgICAgICBjYURhdGEuYXBwZW5kKEFTQ0lJTGl0
ZXJhbCgiZ3JlZ29yeSIpKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNhbGVuZGFyID09ICJpc2xh
bWljLWNpdmlsIikKKyAgICAgICAgICAgICAgICBjYURhdGEuYXBwZW5kKEFTQ0lJTGl0ZXJhbCgi
aXNsYW1pY2MiKSk7CisgICAgICAgICAgICBlbHNlIGlmIChjYWxlbmRhciA9PSAiZXRoaW9waWMt
YW1ldGUtYWxlbSIpCisgICAgICAgICAgICAgICAgY2FEYXRhLmFwcGVuZChBU0NJSUxpdGVyYWwo
ImV0aGlvYWEiKSk7CisgICAgICAgIH0KKyAgICAgICAgdWVudW1fY2xvc2UoY2FsZW5kYXJzKTsK
KyAgICAgICAgcmV0dXJuIGNhRGF0YTsKKyAgICB9CisgICAgaWYgKGtleSA9PSAibnUiKQorICAg
ICAgICByZXR1cm4gZ2V0TnVtYmVyaW5nU3lzdGVtc0ZvckxvY2FsZShsb2NhbGUpOworICAgIHJl
dHVybiBWZWN0b3I8U3RyaW5nPigpOworfQorCitzdGF0aWMgSlNPYmplY3QqIHRvRGF0ZVRpbWVP
cHRpb25zKEV4ZWNTdGF0ZSYgc3RhdGUsIEpTVmFsdWUgb3JpZ2luYWxPcHRpb25zLCBjb25zdCBE
YXRlVGltZU9wdGlvblJlcXVpcmVkIHJlcXVpcmVkLCBjb25zdCBEYXRlVGltZU9wdGlvbkRlZmF1
bHRzIGRlZmF1bHRzKQoreworICAgIC8vIDEyLjEuMSBUb0RhdGVUaW1lT3B0aW9ucyBhYnN0cmFj
dCBvcGVyYXRpb24gKEVDTUEtNDAyIDIuMCkKKyAgICBWTSYgdm0gPSBzdGF0ZS52bSgpOworCisg
ICAgLy8gMS4gSWYgb3B0aW9ucyBpcyB1bmRlZmluZWQsIHRoZW4gbGV0IG9wdGlvbnMgYmUgbnVs
bCwgZWxzZSBsZXQgb3B0aW9ucyBiZSBUb09iamVjdChvcHRpb25zKS4KKyAgICAvLyAyLiBSZXR1
cm5JZkFicnVwdChvcHRpb25zKS4KKyAgICAvLyAzLiBMZXQgb3B0aW9ucyBiZSBPYmplY3RDcmVh
dGUob3B0aW9ucykuCisgICAgSlNPYmplY3QqIG9wdGlvbnM7CisgICAgaWYgKG9yaWdpbmFsT3B0
aW9ucy5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAgICAgICBvcHRpb25zID0gY29uc3RydWN0RW1w
dHlPYmplY3QoJnN0YXRlLCBzdGF0ZS5sZXhpY2FsR2xvYmFsT2JqZWN0KCktPm51bGxQcm90b3R5
cGVPYmplY3RTdHJ1Y3R1cmUoKSk7CisgICAgZWxzZSB7CisgICAgICAgIEpTT2JqZWN0KiBvcmln
aW5hbFRvT2JqZWN0ID0gb3JpZ2luYWxPcHRpb25zLnRvT2JqZWN0KCZzdGF0ZSk7CisgICAgICAg
IGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOwor
ICAgICAgICBvcHRpb25zID0gY29uc3RydWN0RW1wdHlPYmplY3QoJnN0YXRlLCBvcmlnaW5hbFRv
T2JqZWN0KTsKKyAgICB9CisKKyAgICAvLyA0LiBMZXQgbmVlZERlZmF1bHRzIGJlIHRydWUuCisg
ICAgYm9vbCBuZWVkRGVmYXVsdHMgPSB0cnVlOworCisgICAgLy8gNS4gSWYgcmVxdWlyZWQgaXMg
ImRhdGUiIG9yICJhbnkiLAorICAgIGlmIChyZXF1aXJlZCA9PSBEYXRlVGltZU9wdGlvblJlcXVp
cmVkOjpEYXRlIHx8IHJlcXVpcmVkID09IERhdGVUaW1lT3B0aW9uUmVxdWlyZWQ6OkFueSkgewor
ICAgICAgICAvLyBhLiBGb3IgZWFjaCBvZiB0aGUgcHJvcGVydHkgbmFtZXMgIndlZWtkYXkiLCAi
eWVhciIsICJtb250aCIsICJkYXkiOgorICAgICAgICAvLyBpLiBMZXQgcHJvcCBiZSB0aGUgcHJv
cGVydHkgbmFtZS4KKyAgICAgICAgLy8gaWkuIExldCB2YWx1ZSBiZSBHZXQob3B0aW9ucywgcHJv
cCkuCisgICAgICAgIC8vIGlpaS4gUmV0dXJuSWZBYnJ1cHQodmFsdWUpLgorICAgICAgICAvLyBp
di4gSWYgdmFsdWUgaXMgbm90IHVuZGVmaW5lZCwgdGhlbiBsZXQgbmVlZERlZmF1bHRzIGJlIGZh
bHNlLgorICAgICAgICBKU1ZhbHVlIHdlZWtkYXkgPSBvcHRpb25zLT5nZXQoJnN0YXRlLCB2bS5w
cm9wZXJ0eU5hbWVzLT53ZWVrZGF5KTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICghd2Vla2RheS5pc1Vu
ZGVmaW5lZCgpKQorICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisKKyAgICAgICAg
SlNWYWx1ZSB5ZWFyID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+eWVh
cik7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVy
biBudWxscHRyOworICAgICAgICBpZiAoIXllYXIuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAg
IG5lZWREZWZhdWx0cyA9IGZhbHNlOworCisgICAgICAgIEpTVmFsdWUgbW9udGggPSBvcHRpb25z
LT5nZXQoJnN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT5tb250aCk7CisgICAgICAgIGlmIChzdGF0
ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBp
ZiAoIW1vbnRoLmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxz
ZTsKKworICAgICAgICBKU1ZhbHVlIGRheSA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZtLnByb3Bl
cnR5TmFtZXMtPmRheSk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAg
ICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBpZiAoIWRheS5pc1VuZGVmaW5lZCgpKQor
ICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisgICAgfQorCisgICAgLy8gNi4gSWYg
cmVxdWlyZWQgaXMgInRpbWUiIG9yICJhbnkiLAorICAgIGlmIChyZXF1aXJlZCA9PSBEYXRlVGlt
ZU9wdGlvblJlcXVpcmVkOjpUaW1lIHx8IHJlcXVpcmVkID09IERhdGVUaW1lT3B0aW9uUmVxdWly
ZWQ6OkFueSkgeworICAgICAgICAvLyBhLiBGb3IgZWFjaCBvZiB0aGUgcHJvcGVydHkgbmFtZXMg
ImhvdXIiLCAibWludXRlIiwgInNlY29uZCI6CisgICAgICAgIC8vIGkuIExldCBwcm9wIGJlIHRo
ZSBwcm9wZXJ0eSBuYW1lLgorICAgICAgICAvLyBpaS4gTGV0IHZhbHVlIGJlIEdldChvcHRpb25z
LCBwcm9wKS4KKyAgICAgICAgLy8gaWlpLiBSZXR1cm5JZkFicnVwdCh2YWx1ZSkuCisgICAgICAg
IC8vIGl2LiBJZiB2YWx1ZSBpcyBub3QgdW5kZWZpbmVkLCB0aGVuIGxldCBuZWVkRGVmYXVsdHMg
YmUgZmFsc2UuCisgICAgICAgIEpTVmFsdWUgaG91ciA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZt
LnByb3BlcnR5TmFtZXMtPmhvdXIpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkp
CisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCFob3VyLmlzVW5kZWZp
bmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKworICAgICAgICBKU1Zh
bHVlIG1pbnV0ZSA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPm1pbnV0
ZSk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVy
biBudWxscHRyOworICAgICAgICBpZiAoIW1pbnV0ZS5pc1VuZGVmaW5lZCgpKQorICAgICAgICAg
ICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisKKyAgICAgICAgSlNWYWx1ZSBzZWNvbmQgPSBvcHRp
b25zLT5nZXQoJnN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT5zZWNvbmQpOworICAgICAgICBpZiAo
c3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAg
ICAgaWYgKCFzZWNvbmQuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZhdWx0cyA9
IGZhbHNlOworICAgIH0KKworICAgIC8vIDcuIElmIG5lZWREZWZhdWx0cyBpcyB0cnVlIGFuZCBk
ZWZhdWx0cyBpcyBlaXRoZXIgImRhdGUiIG9yICJhbGwiLCB0aGVuCisgICAgaWYgKG5lZWREZWZh
dWx0cyAmJiAoZGVmYXVsdHMgPT0gRGF0ZVRpbWVPcHRpb25EZWZhdWx0czo6RGF0ZSB8fCBkZWZh
dWx0cyA9PSBEYXRlVGltZU9wdGlvbkRlZmF1bHRzOjpBbGwpKSB7CisgICAgICAgIC8vIGEuIEZv
ciBlYWNoIG9mIHRoZSBwcm9wZXJ0eSBuYW1lcyAieWVhciIsICJtb250aCIsICJkYXkiOgorICAg
ICAgICAvLyBpLiBMZXQgc3RhdHVzIGJlIENyZWF0ZURhdGVQcm9wZXJ0eU9yVGhyb3cob3B0aW9u
cywgcHJvcCwgIm51bWVyaWMiKS4KKyAgICAgICAgLy8gaWkuIFJldHVybklmQWJydXB0KHN0YXR1
cykuCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+eWVh
ciwganNTdHJpbmcoJnN0YXRlLCAibnVtZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICAgICAgb3B0aW9u
cy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5tb250aCwganNTdHJpbmcoJnN0YXRl
LCAibnVtZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2
bS5wcm9wZXJ0eU5hbWVzLT5kYXksIGpzU3RyaW5nKCZzdGF0ZSwgIm51bWVyaWMiKSk7CisgICAg
ICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRy
OworICAgIH0KKworICAgIC8vIDguIElmIG5lZWREZWZhdWx0cyBpcyB0cnVlIGFuZCBkZWZhdWx0
cyBpcyBlaXRoZXIgInRpbWUiIG9yICJhbGwiLCB0aGVuCisgICAgaWYgKG5lZWREZWZhdWx0cyAm
JiAoZGVmYXVsdHMgPT0gRGF0ZVRpbWVPcHRpb25EZWZhdWx0czo6VGltZSB8fCBkZWZhdWx0cyA9
PSBEYXRlVGltZU9wdGlvbkRlZmF1bHRzOjpBbGwpKSB7CisgICAgICAgIC8vIGEuIEZvciBlYWNo
IG9mIHRoZSBwcm9wZXJ0eSBuYW1lcyAiaG91ciIsICJtaW51dGUiLCAic2Vjb25kIjoKKyAgICAg
ICAgLy8gaS4gTGV0IHN0YXR1cyBiZSBDcmVhdGVEYXRlUHJvcGVydHlPclRocm93KG9wdGlvbnMs
IHByb3AsICJudW1lcmljIikuCisgICAgICAgIC8vIGlpLiBSZXR1cm5JZkFicnVwdChzdGF0dXMp
LgorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmhvdXIs
IGpzU3RyaW5nKCZzdGF0ZSwgIm51bWVyaWMiKSk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNl
cHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgICAgIG9wdGlvbnMt
PnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bWludXRlLCBqc1N0cmluZygmc3RhdGUs
ICJudW1lcmljIikpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZt
LnByb3BlcnR5TmFtZXMtPnNlY29uZCwganNTdHJpbmcoJnN0YXRlLCAibnVtZXJpYyIpKTsKKyAg
ICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CisgICAgfQorCisgICAgLy8gOS4gUmV0dXJuIG9wdGlvbnMuCisgICAgcmV0dXJuIG9wdGlv
bnM7Cit9CisKK3N0YXRpYyB2b2lkIHNldEZvcm1hdHNGcm9tUGF0dGVybihJbnRsRGF0ZVRpbWVG
b3JtYXQmIGRhdGVUaW1lRm9ybWF0LCBjb25zdCBTdHJpbmdWaWV3JiBwYXR0ZXJuKQoreworICAg
IC8vIEdldCBhbGwgc3ltYm9scyBmcm9tIHRoZSBwYXR0ZXJuLCBhbmQgc2V0IGZvcm1hdCBmaWVs
ZHMgYWNjb3JkaW5nbHkuCisgICAgLy8gaHR0cDovL3VuaWNvZGUub3JnL3JlcG9ydHMvdHIzNS90
cjM1LWRhdGVzLmh0bWwjRGF0ZV9GaWVsZF9TeW1ib2xfVGFibGUKKyAgICB1bnNpZ25lZCBsZW5n
dGggPSBwYXR0ZXJuLmxlbmd0aCgpOworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBsZW5n
dGg7ICsraSkgeworICAgICAgICBVQ2hhciBjdXJyZW50Q2hhcmFjdGVyID0gcGF0dGVybltpXTsK
KyAgICAgICAgaWYgKCFpc0FTQ0lJQWxwaGEoY3VycmVudENoYXJhY3RlcikpCisgICAgICAgICAg
ICBjb250aW51ZTsKKworICAgICAgICB1bnNpZ25lZCBjb3VudCA9IDE7CisgICAgICAgIHdoaWxl
IChpICsgMSA8IGxlbmd0aCAmJiBwYXR0ZXJuW2kgKyAxXSA9PSBjdXJyZW50Q2hhcmFjdGVyKSB7
CisgICAgICAgICAgICArK2NvdW50OworICAgICAgICAgICAgKytpOworICAgICAgICB9CisKKyAg
ICAgICAgaWYgKGN1cnJlbnRDaGFyYWN0ZXIgPT0gJ2gnIHx8IGN1cnJlbnRDaGFyYWN0ZXIgPT0g
J0snKQorICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0SG91cjEyKHRydWUpOworICAgICAg
ICBlbHNlIGlmIChjdXJyZW50Q2hhcmFjdGVyID09ICdIJyB8fCBjdXJyZW50Q2hhcmFjdGVyID09
ICdrJykKKyAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldEhvdXIxMihmYWxzZSk7CisKKyAg
ICAgICAgc3dpdGNoIChjdXJyZW50Q2hhcmFjdGVyKSB7CisgICAgICAgIGNhc2UgJ0cnOgorICAg
ICAgICAgICAgaWYgKGNvdW50ID09IDMpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQu
c2V0RXJhKEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6OlNob3J0KTsKKyAgICAgICAgICAg
IGVsc2UgaWYgKGNvdW50ID09IDQpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0
RXJhKEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6OkxvbmcpOworICAgICAgICAgICAgZWxz
ZSBpZiAoY291bnQgPT0gNSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRFcmEo
SW50bERhdGVUaW1lRm9ybWF0OjpFcmFTdHlsZTo6TmFycm93KTsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBjYXNlICd5JzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAg
ICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldFllYXIoSW50bERhdGVUaW1lRm9ybWF0OjpZZWFy
U3R5bGU6Ok51bWVyaWMpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAg
ICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRZZWFyKEludGxEYXRlVGltZUZvcm1hdDo6WWVh
clN0eWxlOjpUd29EaWdpdCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAnTSc6
CisgICAgICAgIGNhc2UgJ0wnOgorICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisgICAgICAg
ICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0TW9udGgoSW50bERhdGVUaW1lRm9ybWF0OjpNb250
aFN0eWxlOjpOdW1lcmljKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAg
ICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0TW9udGgoSW50bERhdGVUaW1lRm9ybWF0OjpN
b250aFN0eWxlOjpUd29EaWdpdCk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSAzKQor
ICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldE1vbnRoKEludGxEYXRlVGltZUZvcm1h
dDo6TW9udGhTdHlsZTo6U2hvcnQpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNCkK
KyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRNb250aChJbnRsRGF0ZVRpbWVGb3Jt
YXQ6Ok1vbnRoU3R5bGU6OkxvbmcpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNSkK
KyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRNb250aChJbnRsRGF0ZVRpbWVGb3Jt
YXQ6Ok1vbnRoU3R5bGU6Ok5hcnJvdyk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2Fz
ZSAnRSc6CisgICAgICAgICAgICBpZiAoY291bnQgPT0gMykKKyAgICAgICAgICAgICAgICBkYXRl
VGltZUZvcm1hdC5zZXRXZWVrZGF5KEludGxEYXRlVGltZUZvcm1hdDo6V2Vla2RheVN0eWxlOjpT
aG9ydCk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA0KQorICAgICAgICAgICAgICAg
IGRhdGVUaW1lRm9ybWF0LnNldFdlZWtkYXkoSW50bERhdGVUaW1lRm9ybWF0OjpXZWVrZGF5U3R5
bGU6OkxvbmcpOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNSkKKyAgICAgICAgICAg
ICAgICBkYXRlVGltZUZvcm1hdC5zZXRXZWVrZGF5KEludGxEYXRlVGltZUZvcm1hdDo6V2Vla2Rh
eVN0eWxlOjpOYXJyb3cpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ2QnOgor
ICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3Jt
YXQuc2V0RGF5KEludGxEYXRlVGltZUZvcm1hdDo6RGF5U3R5bGU6Ok51bWVyaWMpOworICAgICAg
ICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1h
dC5zZXREYXkoSW50bERhdGVUaW1lRm9ybWF0OjpEYXlTdHlsZTo6VHdvRGlnaXQpOworICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ2gnOgorICAgICAgICBjYXNlICdIJzoKKyAgICAg
ICAgY2FzZSAnayc6CisgICAgICAgIGNhc2UgJ0snOgorICAgICAgICAgICAgaWYgKGNvdW50ID09
IDEpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0SG91cihJbnRsRGF0ZVRpbWVG
b3JtYXQ6OkhvdXJTdHlsZTo6TnVtZXJpYyk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9
PSAyKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldEhvdXIoSW50bERhdGVUaW1l
Rm9ybWF0OjpIb3VyU3R5bGU6OlR3b0RpZ2l0KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICBjYXNlICdtJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAg
IGRhdGVUaW1lRm9ybWF0LnNldE1pbnV0ZShJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1pbnV0ZVN0eWxl
OjpOdW1lcmljKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAgICAgICAg
ICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0TWludXRlKEludGxEYXRlVGltZUZvcm1hdDo6TWludXRl
U3R5bGU6OlR3b0RpZ2l0KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdzJzoK
KyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9y
bWF0LnNldFNlY29uZChJbnRsRGF0ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpOdW1lcmljKTsK
KyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAgICAgICAgICAgICAgZGF0ZVRp
bWVGb3JtYXQuc2V0U2Vjb25kKEludGxEYXRlVGltZUZvcm1hdDo6U2Vjb25kU3R5bGU6OlR3b0Rp
Z2l0KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICd6JzoKKyAgICAgICAgY2Fz
ZSAndic6CisgICAgICAgIGNhc2UgJ1YnOgorICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisg
ICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0VGltZVpvbmVOYW1lKEludGxEYXRlVGlt
ZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6OlNob3J0KTsKKyAgICAgICAgICAgIGVsc2UgaWYg
KGNvdW50ID09IDQpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0VGltZVpvbmVO
YW1lKEludGxEYXRlVGltZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6OkxvbmcpOworICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9Cit9CisKK0pTVmFsdWUgaW5pdGlhbGl6ZURh
dGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSYgc3RhdGUsIEludGxEYXRlVGltZUZvcm1hdCYgZGF0ZVRp
bWVGb3JtYXQsIEpTVmFsdWUgbG9jYWxlcywgSlNWYWx1ZSBvcmlnaW5hbE9wdGlvbnMpCit7Cisg
ICAgLy8gMTIuMS4xIEluaXRpYWxpemVEYXRlVGltZUZvcm1hdCAoZGF0ZVRpbWVGb3JtYXQsIGxv
Y2FsZXMsIG9wdGlvbnMpIChFQ01BLTQwMiAyLjApCisgICAgLy8gMS4gSWYgZGF0ZVRpbWVGb3Jt
YXQuW1tpbml0aWFsaXplZEludGxPYmplY3RdXSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBl
eGNlcHRpb24uCisgICAgaWYgKGRhdGVUaW1lRm9ybWF0LmluaXRpYWxpemVkSW50bE9iamVjdCgp
KQorICAgICAgICB0aHJvd1R5cGVFcnJvcigmc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiT2JqZWN0IGFs
cmVhZHkgaW5pdGlhbGl6ZWQiKSk7CisKKyAgICAvLyAyLiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tp
bml0aWFsaXplZEludGxPYmplY3RdXSB0byB0cnVlLgorICAgIGRhdGVUaW1lRm9ybWF0LnNldElu
aXRpYWxpemVkSW50bE9iamVjdCgpOworCisgICAgLy8gMy4gTGV0IHJlcXVlc3RlZExvY2FsZXMg
YmUgQ2Fub25pY2FsaXplTG9jYWxlTGlzdChsb2NhbGVzKS4KKyAgICBWZWN0b3I8U3RyaW5nPiBy
ZXF1ZXN0ZWRMb2NhbGVzID0gY2Fub25pY2FsaXplTG9jYWxlTGlzdChzdGF0ZSwgbG9jYWxlcyk7
CisgICAgLy8gNC4gUmV0dXJuSWZBYnJ1cHQocmVxdWVzdGVkTG9jYWxlcyksCisgICAgaWYgKHN0
YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAg
IC8vIDUuIExldCBvcHRpb25zIGJlIFRvRGF0ZVRpbWVPcHRpb25zKG9wdGlvbnMsICJhbnkiLCAi
ZGF0ZSIpLgorICAgIEpTT2JqZWN0KiBvcHRpb25zID0gdG9EYXRlVGltZU9wdGlvbnMoc3RhdGUs
IG9yaWdpbmFsT3B0aW9ucywgRGF0ZVRpbWVPcHRpb25SZXF1aXJlZDo6QW55LCBEYXRlVGltZU9w
dGlvbkRlZmF1bHRzOjpEYXRlKTsKKyAgICAvLyA2LiBSZXR1cm5JZkFicnVwdChvcHRpb25zKS4K
KyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5l
ZCgpOworCisgICAgLy8gNy4gTGV0IG9wdCBiZSBhIG5ldyBSZWNvcmQuCisgICAgSGFzaE1hcDxT
dHJpbmcsIFN0cmluZz4gbG9jYWxlT3B0OworCisgICAgLy8gOC4gTGV0IG1hdGNoZXIgYmUgR2V0
T3B0aW9uKG9wdGlvbnMsICJsb2NhbGVNYXRjaGVyIiwgInN0cmluZyIsIMKrImxvb2t1cCIsICJi
ZXN0IGZpdCLCuywgImJlc3QgZml0IikuCisgICAgVk0mIHZtID0gc3RhdGUudm0oKTsKKyAgICBj
b25zdCBIYXNoU2V0PFN0cmluZz4gbG9jYWxlTWF0Y2hlcnMoeyBBU0NJSUxpdGVyYWwoImxvb2t1
cCIpLCBBU0NJSUxpdGVyYWwoImJlc3QgZml0IikgfSk7CisgICAgU3RyaW5nIGxvY2FsZU1hdGNo
ZXIgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5s
b2NhbGVNYXRjaGVyLCBsb2NhbGVNYXRjaGVycywgImxvY2FsZU1hdGNoZXIgbXVzdCBiZSBlaXRo
ZXIgXCJsb29rdXBcIiBvciBcImJlc3QgZml0XCIiLCBBU0NJSUxpdGVyYWwoImJlc3QgZml0Iikp
OworICAgIC8vIDkuIFJldHVybklmQWJydXB0KG1hdGNoZXIpLgorICAgIGlmIChzdGF0ZS5oYWRF
eGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgLy8gMTAuIFNl
dCBvcHQuW1tsb2NhbGVNYXRjaGVyXV0gdG8gbWF0Y2hlci4KKyAgICBsb2NhbGVPcHQuc2V0KHZt
LnByb3BlcnR5TmFtZXMtPmxvY2FsZU1hdGNoZXIuc3RyaW5nKCksIGxvY2FsZU1hdGNoZXIpOwor
CisgICAgLy8gMTEuIExldCBsb2NhbGVEYXRhIGJlIHRoZSB2YWx1ZSBvZiAlRGF0ZVRpbWVGb3Jt
YXQlLltbbG9jYWxlRGF0YV1dLgorICAgIC8vIDEyLiBMZXQgciBiZSBSZXNvbHZlTG9jYWxlKCAl
RGF0ZVRpbWVGb3JtYXQlLltbYXZhaWxhYmxlTG9jYWxlc11dLCByZXF1ZXN0ZWRMb2NhbGVzLCBv
cHQsICVEYXRlVGltZUZvcm1hdCUuW1tyZWxldmFudEV4dGVuc2lvbktleXNdXSwgbG9jYWxlRGF0
YSkuCisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IGF2YWlsYWJsZUxvY2FsZXMgPSBzdGF0ZS5s
ZXhpY2FsR2xvYmFsT2JqZWN0KCktPmludGxEYXRlVGltZUZvcm1hdEF2YWlsYWJsZUxvY2FsZXMo
KTsKKyAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiByZWxldmFudEV4dGVuc2lvbktleXMgPSB7IEFT
Q0lJTGl0ZXJhbCgiY2EiKSwgQVNDSUlMaXRlcmFsKCJudSIpIH07CisgICAgSGFzaE1hcDxTdHJp
bmcsIFN0cmluZz4gcmVzb2x2ZWQgPSByZXNvbHZlTG9jYWxlKGF2YWlsYWJsZUxvY2FsZXMsIHJl
cXVlc3RlZExvY2FsZXMsIGxvY2FsZU9wdCwgcmVsZXZhbnRFeHRlbnNpb25LZXlzLCBsb2NhbGVE
YXRhKTsKKworICAgIC8vIDEzLiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tsb2NhbGVdXSB0byB0aGUg
dmFsdWUgb2Ygci5bW2xvY2FsZV1dLgorICAgIGRhdGVUaW1lRm9ybWF0LnNldExvY2FsZShyZXNv
bHZlZC5nZXQodm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlLnN0cmluZygpKSk7CisgICAgLy8gMTQu
IFNldCBkYXRlVGltZUZvcm1hdC5bW2NhbGVuZGFyXV0gdG8gdGhlIHZhbHVlIG9mIHIuW1tjYV1d
LgorICAgIFN0cmluZyBjYWxlbmRhciA9IHJlc29sdmVkLmdldChBU0NJSUxpdGVyYWwoImNhIikp
OworICAgIC8vIFN3aXRjaCB0byBwcmVmZXJyZWQgYWxpYXNlcy4KKyAgICBpZiAoY2FsZW5kYXIg
PT0gImdyZWdvcnkiKQorICAgICAgICBjYWxlbmRhciA9IEFTQ0lJTGl0ZXJhbCgiZ3JlZ29yaWFu
Iik7CisgICAgZWxzZSBpZiAoY2FsZW5kYXIgPT0gImlzbGFtaWNjIikKKyAgICAgICAgY2FsZW5k
YXIgPSBBU0NJSUxpdGVyYWwoImlzbGFtaWMtY2l2aWwiKTsKKyAgICBlbHNlIGlmIChjYWxlbmRh
ciA9PSAiZXRoaW9hYSIpCisgICAgICAgIGNhbGVuZGFyID0gQVNDSUlMaXRlcmFsKCJldGhpb3Bp
Yy1hbWV0ZS1hbGVtIik7CisgICAgZGF0ZVRpbWVGb3JtYXQuc2V0Q2FsZW5kYXIoY2FsZW5kYXIp
OworICAgIC8vIDE1LiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tudW1iZXJpbmdTeXN0ZW1dXSB0byB0
aGUgdmFsdWUgb2Ygci5bW251XV0uCisgICAgZGF0ZVRpbWVGb3JtYXQuc2V0TnVtYmVyaW5nU3lz
dGVtKHJlc29sdmVkLmdldChBU0NJSUxpdGVyYWwoIm51IikpKTsKKyAgICAvLyAxNi4gTGV0IGRh
dGFMb2NhbGUgYmUgdGhlIHZhbHVlIG9mIHIuW1tkYXRhTG9jYWxlXV0uCisgICAgU3RyaW5nIGRh
dGFMb2NhbGUgPSByZXNvbHZlZC5nZXQoQVNDSUlMaXRlcmFsKCJkYXRhTG9jYWxlIikpOworCisg
ICAgLy8gMTcuIExldCB0eiBiZSBHZXQob3B0aW9ucywgInRpbWVab25lIikuCisgICAgSlNWYWx1
ZSB0elZhbHVlID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+dGltZVpv
bmUpOworICAgIC8vIDE4LiBSZXR1cm5JZkFicnVwdCh0eikuCisgICAgaWYgKHN0YXRlLmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAgIC8vIDE5LiBJ
ZiB0eiBpcyBub3QgdW5kZWZpbmVkLCB0aGVuCisgICAgU3RyaW5nIHR6OworICAgIGlmICghdHpW
YWx1ZS5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIC8vIGEuIExldCB0eiBiZSBUb1N0cmluZyh0
eikuCisgICAgICAgIFN0cmluZyBvcmlnaW5hbFR6ID0gdHpWYWx1ZS50b1dURlN0cmluZygmc3Rh
dGUpOworICAgICAgICAvLyBiLiBSZXR1cm5JZkFicnVwdCh0eikuCisgICAgICAgIGlmIChzdGF0
ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAg
ICAgICAvLyBjLiBJZiB0aGUgcmVzdWx0IG9mIElzVmFsaWRUaW1lWm9uZU5hbWUodHopIGlzIGZh
bHNlLCB0aGVuIGkuIFRocm93IGEgUmFuZ2VFcnJvciBleGNlcHRpb24uCisgICAgICAgIC8vIGQu
IExldCB0eiBiZSBDYW5vbmljYWxpemVUaW1lWm9uZU5hbWUodHopLgorICAgICAgICB0eiA9IGNh
bm9uaWNhbGl6ZVRpbWVab25lTmFtZShvcmlnaW5hbFR6KTsKKyAgICAgICAgaWYgKHR6LmlzTnVs
bCgpKQorICAgICAgICAgICAgcmV0dXJuIHRocm93UmFuZ2VFcnJvcigmc3RhdGUsIFN0cmluZzo6
Zm9ybWF0KCJpbnZhbGlkIHRpbWUgem9uZTogJXMiLCBvcmlnaW5hbFR6LnV0ZjgoKS5kYXRhKCkp
KTsKKyAgICB9IGVsc2UKKyAgICAvLyAyMC4gRWxzZSwKKyAgICAgICAgLy8gYS4gTGV0IHR6IGJl
IERlZmF1bHRUaW1lWm9uZSgpLgorICAgICAgICB0eiA9IGRlZmF1bHRUaW1lWm9uZSgpOworCisg
ICAgLy8gMjEuIFNldCBkYXRlVGltZUZvcm1hdC5bW3RpbWVab25lXV0gdG8gdHouCisgICAgZGF0
ZVRpbWVGb3JtYXQuc2V0VGltZVpvbmUodHopOworCisgICAgLy8gMjIuIExldCBvcHQgYmUgYSBu
ZXcgUmVjb3JkLgorICAgIC8vIFJhdGhlciB0aGFuIGJ1aWxkaW5nIGEgcmVjb3JkLCBidWlsZCB0
aGUgc2tlbGV0b24gcGF0dGVybi4KKyAgICBTdHJpbmdCdWlsZGVyIGZvcm1hdE9wdDsKKworICAg
IC8vIDIzLiBGb3IgZWFjaCByb3cgb2YgVGFibGUgMywgZXhjZXB0IHRoZSBoZWFkZXIgcm93LCBk
bzoKKyAgICAvLyBhLiBMZXQgcHJvcCBiZSB0aGUgbmFtZSBnaXZlbiBpbiB0aGUgUHJvcGVydHkg
Y29sdW1uIG9mIHRoZSByb3cuCisgICAgLy8gYi4gTGV0IHZhbHVlIGJlIEdldE9wdGlvbihvcHRp
b25zLCBwcm9wLCAic3RyaW5nIiwgwqt0aGUgc3RyaW5ncyBnaXZlbiBpbiB0aGUgVmFsdWVzIGNv
bHVtbiBvZiB0aGUgcm93wrssIHVuZGVmaW5lZCkuCisgICAgLy8gYy4gUmV0dXJuSWZBYnJ1cHQo
dmFsdWUpLgorICAgIC8vIGQuIFNldCBvcHQuW1s8cHJvcD5dXSB0byB2YWx1ZS4KKyAgICBjb25z
dCBIYXNoU2V0PFN0cmluZz4gbmFycm93U2hvcnRMb25nKHsgQVNDSUlMaXRlcmFsKCJuYXJyb3ci
KSwgQVNDSUlMaXRlcmFsKCJzaG9ydCIpLCBBU0NJSUxpdGVyYWwoImxvbmciKSB9KTsKKyAgICBj
b25zdCBIYXNoU2V0PFN0cmluZz4gdHdvRGlnaXROdW1lcmljKHsgQVNDSUlMaXRlcmFsKCIyLWRp
Z2l0IiksIEFTQ0lJTGl0ZXJhbCgibnVtZXJpYyIpIH0pOworICAgIGNvbnN0IEhhc2hTZXQ8U3Ry
aW5nPiB0d29EaWdpdE51bWVyaWNOYXJyb3dTaG9ydExvbmcoeyBBU0NJSUxpdGVyYWwoIjItZGln
aXQiKSwgQVNDSUlMaXRlcmFsKCJudW1lcmljIiksIEFTQ0lJTGl0ZXJhbCgibmFycm93IiksIEFT
Q0lJTGl0ZXJhbCgic2hvcnQiKSwgQVNDSUlMaXRlcmFsKCJsb25nIikgfSk7CisgICAgY29uc3Qg
SGFzaFNldDxTdHJpbmc+IHNob3J0TG9uZyh7IEFTQ0lJTGl0ZXJhbCgic2hvcnQiKSwgQVNDSUlM
aXRlcmFsKCJsb25nIikgfSk7CisKKyAgICBTdHJpbmcgd2Vla2RheSA9IGludGxTdHJpbmdPcHRp
b24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPndlZWtkYXksIG5hcnJvd1Nob3J0
TG9uZywgIndlZWtkYXkgbXVzdCBiZSBcIm5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwibG9uZ1wi
IiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCF3ZWVrZGF5LmlzTnVsbCgpKSB7CisgICAgICAg
IGlmICh3ZWVrZGF5ID09ICJuYXJyb3ciKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExp
dGVyYWwoIkVFRUVFIik7CisgICAgICAgIGVsc2UgaWYgKHdlZWtkYXkgPT0gInNob3J0IikKKyAg
ICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRlcmFsKCJFRUUiKTsKKyAgICAgICAgZWxzZSBp
ZiAod2Vla2RheSA9PSAibG9uZyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kTGl0ZXJh
bCgiRUVFRSIpOworICAgIH0KKworICAgIFN0cmluZyBlcmEgPSBpbnRsU3RyaW5nT3B0aW9uKHN0
YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5lcmEsIG5hcnJvd1Nob3J0TG9uZywgImVy
YSBtdXN0IGJlIFwibmFycm93XCIsIFwic2hvcnRcIiwgb3IgXCJsb25nXCIiLCBTdHJpbmcoKSk7
CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmlu
ZWQoKTsKKyAgICBpZiAoIWVyYS5pc051bGwoKSkgeworICAgICAgICBpZiAoZXJhID09ICJuYXJy
b3ciKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoIkdHR0dHIik7CisgICAg
ICAgIGVsc2UgaWYgKGVyYSA9PSAic2hvcnQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVu
ZExpdGVyYWwoIkdHRyIpOworICAgICAgICBlbHNlIGlmIChlcmEgPT0gImxvbmciKQorICAgICAg
ICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoIkdHR0ciKTsKKyAgICB9CisKKyAgICBTdHJp
bmcgeWVhciA9IGludGxTdHJpbmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFt
ZXMtPnllYXIsIHR3b0RpZ2l0TnVtZXJpYywgInllYXIgbXVzdCBiZSBcIjItZGlnaXRcIiBvciBc
Im51bWVyaWNcIiIsIFN0cmluZygpKTsKKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisg
ICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIGlmICgheWVhci5pc051bGwoKSkgewor
ICAgICAgICBpZiAoeWVhciA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBw
ZW5kTGl0ZXJhbCgieXkiKTsKKyAgICAgICAgZWxzZSBpZiAoeWVhciA9PSAibnVtZXJpYyIpCisg
ICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCd5Jyk7CisgICAgfQorCisgICAgU3RyaW5nIG1v
bnRoID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+
bW9udGgsIHR3b0RpZ2l0TnVtZXJpY05hcnJvd1Nob3J0TG9uZywgIm1vbnRoIG11c3QgYmUgXCIy
LWRpZ2l0XCIsIFwibnVtZXJpY1wiLCBcIm5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwibG9uZ1wi
IiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCFtb250aC5pc051bGwoKSkgeworICAgICAgICBp
ZiAobW9udGggPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVy
YWwoIk1NIik7CisgICAgICAgIGVsc2UgaWYgKG1vbnRoID09ICJudW1lcmljIikKKyAgICAgICAg
ICAgIGZvcm1hdE9wdC5hcHBlbmQoJ00nKTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gIm5h
cnJvdyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kTGl0ZXJhbCgiTU1NTU0iKTsKKyAg
ICAgICAgZWxzZSBpZiAobW9udGggPT0gInNob3J0IikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5h
cHBlbmRMaXRlcmFsKCJNTU0iKTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gImxvbmciKQor
ICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoIk1NTU0iKTsKKyAgICB9CisKKyAg
ICBTdHJpbmcgZGF5ID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVy
dHlOYW1lcy0+ZGF5LCB0d29EaWdpdE51bWVyaWMsICJkYXkgbXVzdCBiZSBcIjItZGlnaXRcIiBv
ciBcIm51bWVyaWNcIiIsIFN0cmluZygpKTsKKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkp
CisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIGlmICghZGF5LmlzTnVsbCgpKSB7
CisgICAgICAgIGlmIChkYXkgPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFw
cGVuZExpdGVyYWwoImRkIik7CisgICAgICAgIGVsc2UgaWYgKGRheSA9PSAibnVtZXJpYyIpCisg
ICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCdkJyk7CisgICAgfQorCisgICAgU3RyaW5nIGhv
dXIgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5o
b3VyLCB0d29EaWdpdE51bWVyaWMsICJob3VyIG11c3QgYmUgXCIyLWRpZ2l0XCIgb3IgXCJudW1l
cmljXCIiLCBTdHJpbmcoKSk7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAg
ICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAgIC8vIFdlIG5lZWQgaG91cjEyIHRvIG1ha2Ug
dGhlIGhvdXIgc2tlbGV0b24gcGF0dGVybiBkZWNpc2lvbiwgc28gZG8gdGhpcyBlYXJseS4KKyAg
ICAvLyAzMi4gTGV0IGhyMTIgYmUgR2V0T3B0aW9uKG9wdGlvbnMsICJob3VyMTIiLCAiYm9vbGVh
biIsIHVuZGVmaW5lZCwgdW5kZWZpbmVkKS4KKyAgICBib29sIGlzSG91cjEyVW5kZWZpbmVkID0g
dHJ1ZTsKKyAgICBib29sIGhyMTIgPSBpbnRsQm9vbGVhbk9wdGlvbihzdGF0ZSwgb3B0aW9ucywg
dm0ucHJvcGVydHlOYW1lcy0+aG91cjEyLCBpc0hvdXIxMlVuZGVmaW5lZCk7CisgICAgLy8gMzMu
IFJldHVybklmQWJydXB0KGhyMTIpLgorICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAg
ICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisKKyAgICBpZiAoIWhvdXIuaXNOdWxsKCkpIHsK
KyAgICAgICAgaWYgKGlzSG91cjEyVW5kZWZpbmVkKSB7CisgICAgICAgICAgICBpZiAoaG91ciA9
PSAiMi1kaWdpdCIpCisgICAgICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoImpq
Iik7CisgICAgICAgICAgICBlbHNlIGlmIChob3VyID09ICJudW1lcmljIikKKyAgICAgICAgICAg
ICAgICBmb3JtYXRPcHQuYXBwZW5kKCdqJyk7CisgICAgICAgIH0gZWxzZSBpZiAoaHIxMikgewor
ICAgICAgICAgICAgaWYgKGhvdXIgPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgICAgIGZvcm1h
dE9wdC5hcHBlbmRMaXRlcmFsKCJoaCIpOworICAgICAgICAgICAgZWxzZSBpZiAoaG91ciA9PSAi
bnVtZXJpYyIpCisgICAgICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgnaCcpOworICAgICAg
ICB9IGVsc2UgeworICAgICAgICAgICAgaWYgKGhvdXIgPT0gIjItZGlnaXQiKQorICAgICAgICAg
ICAgICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRlcmFsKCJISCIpOworICAgICAgICAgICAgZWxzZSBp
ZiAoaG91ciA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgn
SCcpOworICAgICAgICB9CisgICAgfQorCisgICAgU3RyaW5nIG1pbnV0ZSA9IGludGxTdHJpbmdP
cHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPm1pbnV0ZSwgdHdvRGlnaXRO
dW1lcmljLCAibWludXRlIG11c3QgYmUgXCIyLWRpZ2l0XCIgb3IgXCJudW1lcmljXCIiLCBTdHJp
bmcoKSk7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNV
bmRlZmluZWQoKTsKKyAgICBpZiAoIW1pbnV0ZS5pc051bGwoKSkgeworICAgICAgICBpZiAobWlu
dXRlID09ICIyLWRpZ2l0IikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRlcmFsKCJt
bSIpOworICAgICAgICBlbHNlIGlmIChtaW51dGUgPT0gIm51bWVyaWMiKQorICAgICAgICAgICAg
Zm9ybWF0T3B0LmFwcGVuZCgnbScpOworICAgIH0KKworICAgIFN0cmluZyBzZWNvbmQgPSBpbnRs
U3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5zZWNvbmQsIHR3
b0RpZ2l0TnVtZXJpYywgInNlY29uZCBtdXN0IGJlIFwiMi1kaWdpdFwiIG9yIFwibnVtZXJpY1wi
IiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCFzZWNvbmQuaXNOdWxsKCkpIHsKKyAgICAgICAg
aWYgKHNlY29uZCA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kTGl0
ZXJhbCgic3MiKTsKKyAgICAgICAgZWxzZSBpZiAoc2Vjb25kID09ICJudW1lcmljIikKKyAgICAg
ICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoJ3MnKTsKKyAgICB9CisKKyAgICBTdHJpbmcgdGltZVpv
bmVOYW1lID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1l
cy0+dGltZVpvbmVOYW1lLCBzaG9ydExvbmcsICJ0aW1lWm9uZU5hbWUgbXVzdCBiZSBcInNob3J0
XCIgb3IgXCJsb25nXCIiLCBTdHJpbmcoKSk7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICBpZiAoIXRpbWVab25lTmFtZS5p
c051bGwoKSkgeworICAgICAgICBpZiAodGltZVpvbmVOYW1lID09ICJzaG9ydCIpCisgICAgICAg
ICAgICBmb3JtYXRPcHQuYXBwZW5kKCd6Jyk7CisgICAgICAgIGVsc2UgaWYgKHRpbWVab25lTmFt
ZSA9PSAibG9uZyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kTGl0ZXJhbCgienp6eiIp
OworICAgIH0KKworICAgIC8vIDI0LiBMZXQgZGF0YUxvY2FsZURhdGEgYmUgR2V0KGxvY2FsZURh
dGEsIGRhdGFMb2NhbGUpLgorICAgIC8vIDI1LiBMZXQgZm9ybWF0cyBiZSBHZXQoZGF0YUxvY2Fs
ZURhdGEsICJmb3JtYXRzIikuCisgICAgLy8gMjYuIExldCBtYXRjaGVyIGJlIEdldE9wdGlvbihv
cHRpb25zLCAiZm9ybWF0TWF0Y2hlciIsICJzdHJpbmciLCDCqyJiYXNpYyIsICJiZXN0IGZpdCLC
uywgImJlc3QgZml0IikuCisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IGZvcm1hdE1hdGNoZXJz
KHsgQVNDSUlMaXRlcmFsKCJiYXNpYyIpLCBBU0NJSUxpdGVyYWwoImJlc3QgZml0IikgfSk7Cisg
ICAgaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Zm9y
bWF0TWF0Y2hlciwgZm9ybWF0TWF0Y2hlcnMsICJmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0aGVy
IFwiYmFzaWNcIiBvciBcImJlc3QgZml0XCIiLCBBU0NJSUxpdGVyYWwoImJlc3QgZml0IikpOwor
ICAgIC8vIDI3LiBSZXR1cm5JZkFicnVwdChtYXRjaGVyKS4KKyAgICBpZiAoc3RhdGUuaGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworCisgICAgLy8gQWx3YXlz
IHVzZSBJQ1UgZGF0ZSBmb3JtYXQgZ2VuZXJhdG9yLCByYXRoZXIgdGhhbiBvdXIgb3duIHBhdHRl
cm4gbGlzdCBhbmQgbWF0Y2hlci4KKyAgICAvLyBDb3ZlcnMgc3RlcHMgMjgtMzYuCisgICAgVUVy
cm9yQ29kZSBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgVURhdGVUaW1lUGF0dGVybkdlbmVy
YXRvciogZ2VuZXJhdG9yID0gdWRhdHBnX29wZW4oZGF0YUxvY2FsZS51dGY4KCkuZGF0YSgpLCAm
c3RhdHVzKTsKKyAgICBpZiAoVV9GQUlMVVJFKHN0YXR1cykpCisgICAgICAgIHJldHVybiB0aHJv
d1R5cGVFcnJvcigmc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiZmFpbGVkIHRvIGluaXRpYWxpemUgRGF0
ZVRpbWVGb3JtYXQiKSk7CisKKyAgICBTdHJpbmcgcGF0dGVybiA9IGZvcm1hdE9wdC50b1N0cmlu
ZygpOworICAgIFN0cmluZ1ZpZXcgc2tlbGV0b24ocGF0dGVybik7CisgICAgc3RhdHVzID0gVV9a
RVJPX0VSUk9SOworICAgIGludDMyX3QgcGF0dGVybkxlbmd0aCA9IHVkYXRwZ19nZXRCZXN0UGF0
dGVybihnZW5lcmF0b3IsIHNrZWxldG9uLnVwY29udmVydGVkQ2hhcmFjdGVycygpLCBza2VsZXRv
bi5sZW5ndGgoKSwgbnVsbHB0ciwgMCwgJnN0YXR1cyk7CisgICAgaWYgKHN0YXR1cyA9PSBVX0JV
RkZFUl9PVkVSRkxPV19FUlJPUikgeworICAgICAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7Cisg
ICAgICAgIFZlY3RvcjxVQ2hhciwgMzI+IHBhdHRlcm5CdWZmZXIocGF0dGVybkxlbmd0aCk7Cisg
ICAgICAgIHVkYXRwZ19nZXRCZXN0UGF0dGVybihnZW5lcmF0b3IsIHNrZWxldG9uLnVwY29udmVy
dGVkQ2hhcmFjdGVycygpLCBza2VsZXRvbi5sZW5ndGgoKSwgcGF0dGVybkJ1ZmZlci5kYXRhKCks
IHBhdHRlcm5MZW5ndGgsICZzdGF0dXMpOworICAgICAgICBpZiAoVV9TVUNDRVNTKHN0YXR1cykp
CisgICAgICAgICAgICBwYXR0ZXJuID0gU3RyaW5nKHBhdHRlcm5CdWZmZXIuZGF0YSgpLCBwYXR0
ZXJuTGVuZ3RoKTsKKyAgICB9CisgICAgdWRhdHBnX2Nsb3NlKGdlbmVyYXRvcik7CisgICAgaWYg
KFVfRkFJTFVSRShzdGF0dXMpKQorICAgICAgICByZXR1cm4gdGhyb3dUeXBlRXJyb3IoJnN0YXRl
LCBBU0NJSUxpdGVyYWwoImZhaWxlZCB0byBpbml0aWFsaXplIERhdGVUaW1lRm9ybWF0IikpOwor
CisgICAgc2V0Rm9ybWF0c0Zyb21QYXR0ZXJuKGRhdGVUaW1lRm9ybWF0LCBwYXR0ZXJuKTsKKwor
ICAgIC8vIDM3LiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tib3VuZEZvcm1hdF1dIHRvIHVuZGVmaW5l
ZC4KKyAgICAvLyBBbHJlYWR5IHVuZGVmaW5lZC4KKworICAgIC8vIDM4LiBTZXQgZGF0ZVRpbWVG
b3JtYXQuW1tpbml0aWFsaXplZERhdGVUaW1lRm9ybWF0XV0gdG8gdHJ1ZS4KKyAgICBkYXRlVGlt
ZUZvcm1hdC5zZXRJbml0aWFsaXplZERhdGVUaW1lRm9ybWF0KCk7CisKKyAgICAvLyAzOS4gUmV0
dXJuZGF0ZVRpbWVGb3JtYXQuCisgICAgcmV0dXJuICZkYXRlVGltZUZvcm1hdDsKK30KKwogRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0
ZVRpbWUoRXhlY1N0YXRlKiBzdGF0ZSkKIHsKICAgICAvLyAxMi4zLjQgRGF0ZVRpbWUgRm9ybWF0
IEZ1bmN0aW9ucyAoRUNNQS00MDIgMi4wKQogICAgIC8vIDEuIExldCBkdGYgYmUgdGhlIHRoaXMg
dmFsdWUuCiAgICAgSW50bERhdGVUaW1lRm9ybWF0KiBmb3JtYXQgPSBqc0R5bmFtaWNDYXN0PElu
dGxEYXRlVGltZUZvcm1hdCo+KHN0YXRlLT50aGlzVmFsdWUoKSk7CiAgICAgLy8gMi4gQXNzZXJ0
OiBUeXBlKGR0ZikgaXMgT2JqZWN0IGFuZCBkdGYgaGFzIGFuIFtbaW5pdGlhbGl6ZWREYXRlVGlt
ZUZvcm1hdF1dIGludGVybmFsIHNsb3Qgd2hvc2UgdmFsdWUgaXMgdHJ1ZS4KLSAgICBpZiAoIWZv
cm1hdCkKLSAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihzdGF0
ZSkpOworICAgIGlmICghZm9ybWF0IHx8ICFmb3JtYXQtPmluaXRpYWxpemVkRGF0ZVRpbWVGb3Jt
YXQoKSkKKyAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihzdGF0
ZSwgQVNDSUlMaXRlcmFsKCJEYXRlVGltZUZvcm1hdCBmb3JtYXQoKSBjYWxsZWQgb24gdmFsdWUg
dGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdCIpKSk7
CiAKICAgICBKU1ZhbHVlIGRhdGUgPSBzdGF0ZS0+YXJndW1lbnQoMCk7CiAgICAgZG91YmxlIHZh
bHVlOwpAQCAtMTE3LDcgKzcwMyw3IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50
bERhdGVUaW1lRm9ybWF0RnVuY0Zvcm1hdERhdGVUaW1lKEV4ZWNTdGF0ZSogc3RhCiAKICAgICAv
LyAxLiBJZiB4IGlzIG5vdCBhIGZpbml0ZSBOdW1iZXIsIHRoZW4gdGhyb3cgYSBSYW5nZUVycm9y
IGV4Y2VwdGlvbi4KICAgICBpZiAoIXN0ZDo6aXNmaW5pdGUodmFsdWUpKQotICAgICAgICByZXR1
cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93UmFuZ2VFcnJvcihzdGF0ZSwgQVNDSUlMaXRlcmFsKCJk
YXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQuZm9ybWF0KCkiKSkpOwor
ICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93UmFuZ2VFcnJvcihzdGF0ZSwgQVND
SUlMaXRlcmFsKCJkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQgZm9y
bWF0KCkiKSkpOwogCiAgICAgLy8gRklYTUU6IGltcGxlbWVudCAyIC0gOQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuaCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oCmluZGV4IDdk
YWVkMTM4ZmIwOGRjZmEzYmU2N2QzN2M4M2E0N2RiNGFhYmNiZDcuLjc1YmZlOWI2MTJlMTFkNzAy
YTYxZWY2NzU1ZTQxODI1NmRkOWExMDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oCkBAIC0zOSw2ICszOSwxNiBAQCBjbGFzcyBJ
bnRsRGF0ZVRpbWVGb3JtYXQgOiBwdWJsaWMgSlNEZXN0cnVjdGlibGVPYmplY3QgewogcHVibGlj
OgogICAgIHR5cGVkZWYgSlNEZXN0cnVjdGlibGVPYmplY3QgQmFzZTsKIAorICAgIGVudW0gY2xh
c3MgV2Vla2RheVN0eWxlIHsgTm9uZSwgTmFycm93LCBTaG9ydCwgTG9uZyB9OworICAgIGVudW0g
Y2xhc3MgRXJhU3R5bGUgeyBOb25lLCBOYXJyb3csIFNob3J0LCBMb25nIH07CisgICAgZW51bSBj
bGFzcyBZZWFyU3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJpYyB9OworICAgIGVudW0gY2xh
c3MgTW9udGhTdHlsZSB7IE5vbmUsIFR3b0RpZ2l0LCBOdW1lcmljLCBOYXJyb3csIFNob3J0LCBM
b25nIH07CisgICAgZW51bSBjbGFzcyBEYXlTdHlsZSB7IE5vbmUsIFR3b0RpZ2l0LCBOdW1lcmlj
IH07CisgICAgZW51bSBjbGFzcyBIb3VyU3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJpYyB9
OworICAgIGVudW0gY2xhc3MgTWludXRlU3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJpYyB9
OworICAgIGVudW0gY2xhc3MgU2Vjb25kU3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJpYyB9
OworICAgIGVudW0gY2xhc3MgVGltZVpvbmVOYW1lU3R5bGUgeyBOb25lLCBTaG9ydCwgTG9uZyB9
OworCiAgICAgc3RhdGljIEludGxEYXRlVGltZUZvcm1hdCogY3JlYXRlKFZNJiwgSW50bERhdGVU
aW1lRm9ybWF0Q29uc3RydWN0b3IqKTsKICAgICBzdGF0aWMgU3RydWN0dXJlKiBjcmVhdGVTdHJ1
Y3R1cmUoVk0mLCBKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUpOwogCkBAIC00Nyw2ICs1Nyw0MCBA
QCBwdWJsaWM6CiAgICAgSlNCb3VuZEZ1bmN0aW9uKiBib3VuZEZvcm1hdCgpIGNvbnN0IHsgcmV0
dXJuIG1fYm91bmRGb3JtYXQuZ2V0KCk7IH0KICAgICB2b2lkIHNldEJvdW5kRm9ybWF0KFZNJiwg
SlNCb3VuZEZ1bmN0aW9uKik7CiAKKyAgICBib29sIGluaXRpYWxpemVkSW50bE9iamVjdCgpIGNv
bnN0IHsgcmV0dXJuIG1faW5pdGlhbGl6ZWRJbnRsT2JqZWN0OyB9CisgICAgdm9pZCBzZXRJbml0
aWFsaXplZEludGxPYmplY3QoKSB7IG1faW5pdGlhbGl6ZWRJbnRsT2JqZWN0ID0gdHJ1ZTsgfQor
ICAgIGJvb2wgaW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdCgpIGNvbnN0IHsgcmV0dXJuIG1faW5p
dGlhbGl6ZWREYXRlVGltZUZvcm1hdDsgfQorICAgIHZvaWQgc2V0SW5pdGlhbGl6ZWREYXRlVGlt
ZUZvcm1hdCgpIHsgbV9pbml0aWFsaXplZERhdGVUaW1lRm9ybWF0ID0gdHJ1ZTsgfQorCisgICAg
U3RyaW5nIGxvY2FsZSgpIGNvbnN0IHsgcmV0dXJuIG1fbG9jYWxlOyB9CisgICAgdm9pZCBzZXRM
b2NhbGUoY29uc3QgU3RyaW5nJiBsb2NhbGUpIHsgbV9sb2NhbGUgPSBsb2NhbGU7IH0KKyAgICBT
dHJpbmcgY2FsZW5kYXIoKSBjb25zdCB7IHJldHVybiBtX2NhbGVuZGFyOyB9CisgICAgdm9pZCBz
ZXRDYWxlbmRhcihjb25zdCBTdHJpbmcmIGNhbGVuZGFyKSB7IG1fY2FsZW5kYXIgPSBjYWxlbmRh
cjsgfQorICAgIFN0cmluZyBudW1iZXJpbmdTeXN0ZW0oKSBjb25zdCB7IHJldHVybiBtX251bWJl
cmluZ1N5c3RlbTsgfQorICAgIHZvaWQgc2V0TnVtYmVyaW5nU3lzdGVtKGNvbnN0IFN0cmluZyYg
bnVtYmVyaW5nU3lzdGVtKSB7IG1fbnVtYmVyaW5nU3lzdGVtID0gbnVtYmVyaW5nU3lzdGVtOyB9
CisgICAgU3RyaW5nIHRpbWVab25lKCkgY29uc3QgeyByZXR1cm4gbV90aW1lWm9uZTsgfQorICAg
IHZvaWQgc2V0VGltZVpvbmUoY29uc3QgU3RyaW5nJiB0aW1lWm9uZSkgeyBtX3RpbWVab25lID0g
dGltZVpvbmU7IH0KKyAgICBib29sIGhvdXIxMigpIGNvbnN0IHsgcmV0dXJuIG1faG91cjEyOyB9
CisgICAgdm9pZCBzZXRIb3VyMTIoY29uc3QgYm9vbCYgaG91cjEyKSB7IG1faG91cjEyID0gaG91
cjEyOyB9CisgICAgV2Vla2RheVN0eWxlIHdlZWtkYXkoKSBjb25zdCB7IHJldHVybiBtX3dlZWtk
YXk7IH0KKyAgICB2b2lkIHNldFdlZWtkYXkoY29uc3QgV2Vla2RheVN0eWxlJiB3ZWVrZGF5KSB7
IG1fd2Vla2RheSA9IHdlZWtkYXk7IH0KKyAgICBFcmFTdHlsZSBlcmEoKSBjb25zdCB7IHJldHVy
biBtX2VyYTsgfQorICAgIHZvaWQgc2V0RXJhKGNvbnN0IEVyYVN0eWxlJiBlcmEpIHsgbV9lcmEg
PSBlcmE7IH0KKyAgICBZZWFyU3R5bGUgeWVhcigpIGNvbnN0IHsgcmV0dXJuIG1feWVhcjsgfQor
ICAgIHZvaWQgc2V0WWVhcihjb25zdCBZZWFyU3R5bGUmIHllYXIpIHsgbV95ZWFyID0geWVhcjsg
fQorICAgIE1vbnRoU3R5bGUgbW9udGgoKSBjb25zdCB7IHJldHVybiBtX21vbnRoOyB9CisgICAg
dm9pZCBzZXRNb250aChjb25zdCBNb250aFN0eWxlJiBtb250aCkgeyBtX21vbnRoID0gbW9udGg7
IH0KKyAgICBEYXlTdHlsZSBkYXkoKSBjb25zdCB7IHJldHVybiBtX2RheTsgfQorICAgIHZvaWQg
c2V0RGF5KGNvbnN0IERheVN0eWxlJiBkYXkpIHsgbV9kYXkgPSBkYXk7IH0KKyAgICBIb3VyU3R5
bGUgaG91cigpIGNvbnN0IHsgcmV0dXJuIG1faG91cjsgfQorICAgIHZvaWQgc2V0SG91cihjb25z
dCBIb3VyU3R5bGUmIGhvdXIpIHsgbV9ob3VyID0gaG91cjsgfQorICAgIE1pbnV0ZVN0eWxlIG1p
bnV0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWludXRlOyB9CisgICAgdm9pZCBzZXRNaW51dGUoY29u
c3QgTWludXRlU3R5bGUmIG1pbnV0ZSkgeyBtX21pbnV0ZSA9IG1pbnV0ZTsgfQorICAgIFNlY29u
ZFN0eWxlIHNlY29uZCgpIGNvbnN0IHsgcmV0dXJuIG1fc2Vjb25kOyB9CisgICAgdm9pZCBzZXRT
ZWNvbmQoY29uc3QgU2Vjb25kU3R5bGUmIHNlY29uZCkgeyBtX3NlY29uZCA9IHNlY29uZDsgfQor
ICAgIFRpbWVab25lTmFtZVN0eWxlIHRpbWVab25lTmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGlt
ZVpvbmVOYW1lOyB9CisgICAgdm9pZCBzZXRUaW1lWm9uZU5hbWUoY29uc3QgVGltZVpvbmVOYW1l
U3R5bGUmIHRpbWVab25lTmFtZSkgeyBtX3RpbWVab25lTmFtZSA9IHRpbWVab25lTmFtZTsgfQor
CiBwcm90ZWN0ZWQ6CiAgICAgSW50bERhdGVUaW1lRm9ybWF0KFZNJiwgU3RydWN0dXJlKik7CiAg
ICAgdm9pZCBmaW5pc2hDcmVhdGlvbihWTSYpOwpAQCAtNTQsOCArOTgsMjkgQEAgcHJvdGVjdGVk
OgogICAgIHN0YXRpYyB2b2lkIHZpc2l0Q2hpbGRyZW4oSlNDZWxsKiwgU2xvdFZpc2l0b3ImKTsK
IAogICAgIFdyaXRlQmFycmllcjxKU0JvdW5kRnVuY3Rpb24+IG1fYm91bmRGb3JtYXQ7CisKK3By
aXZhdGU6CisgICAgYm9vbCBtX2luaXRpYWxpemVkSW50bE9iamVjdCB7IGZhbHNlIH07CisgICAg
Ym9vbCBtX2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQgeyBmYWxzZSB9OworCisgICAgU3RyaW5n
IG1fbG9jYWxlIHsgQVNDSUlMaXRlcmFsKCJlbiIpIH07CisgICAgU3RyaW5nIG1fY2FsZW5kYXIg
eyBBU0NJSUxpdGVyYWwoImdyZWdvcnkiKSB9OworICAgIFN0cmluZyBtX251bWJlcmluZ1N5c3Rl
bSB7IEFTQ0lJTGl0ZXJhbCgibGF0biIpIH07CisgICAgU3RyaW5nIG1fdGltZVpvbmUgeyBBU0NJ
SUxpdGVyYWwoIlVUQyIpIH07CisgICAgYm9vbCBtX2hvdXIxMiB7IHRydWUgfTsKKyAgICBXZWVr
ZGF5U3R5bGUgbV93ZWVrZGF5IHsgV2Vla2RheVN0eWxlOjpOb25lIH07CisgICAgRXJhU3R5bGUg
bV9lcmEgeyBFcmFTdHlsZTo6Tm9uZSB9OworICAgIFllYXJTdHlsZSBtX3llYXIgeyBZZWFyU3R5
bGU6Ok5vbmUgfTsKKyAgICBNb250aFN0eWxlIG1fbW9udGggeyBNb250aFN0eWxlOjpOb25lIH07
CisgICAgRGF5U3R5bGUgbV9kYXkgeyBEYXlTdHlsZTo6Tm9uZSB9OworICAgIEhvdXJTdHlsZSBt
X2hvdXIgeyBIb3VyU3R5bGU6Ok5vbmUgfTsKKyAgICBNaW51dGVTdHlsZSBtX21pbnV0ZSB7IE1p
bnV0ZVN0eWxlOjpOb25lIH07CisgICAgU2Vjb25kU3R5bGUgbV9zZWNvbmQgeyBTZWNvbmRTdHls
ZTo6Tm9uZSB9OworICAgIFRpbWVab25lTmFtZVN0eWxlIG1fdGltZVpvbmVOYW1lIHsgVGltZVpv
bmVOYW1lU3R5bGU6Ok5vbmUgfTsKIH07Ci0gICAgCisKK1N0cmluZyBkZWZhdWx0VGltZVpvbmUo
KTsKK0pTVmFsdWUgaW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSYsIEludGxEYXRl
VGltZUZvcm1hdCYsIEpTVmFsdWUgbG9jYWxlcywgSlNWYWx1ZSBvcHRpb25zKTsKIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVUaW1lRm9ybWF0RnVuY0Zvcm1hdERhdGVUaW1l
KEV4ZWNTdGF0ZSopOwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVj
dG9yLmNwcAppbmRleCAxZTg5ZmFhYWI3ZWI4OGM3Zjg2NGUwZjUzZjI1NWNiOGEyYzVlZWNjLi5m
N2ZhZWMwOWRhOTE4ZDc0YzJhMjdmODI5NWUwZDgyOGI1ZGY0ZjQ4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0
Q29uc3RydWN0b3IuY3BwCkBAIC0xMDQsOSArMTA0LDkgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVl
IEpTQ19IT1NUX0NBTEwgY29uc3RydWN0SW50bERhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSogc3Rh
dGUKICAgICBBU1NFUlQoZGF0ZVRpbWVGb3JtYXQpOwogCiAgICAgLy8gNC4gUmV0dXJuIEluaXRp
YWxpemVEYXRlVGltZUZvcm1hdChkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykuCi0g
ICAgLy8gRklYTUU6IHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSW5pdGlhbGl6ZURhdGVUaW1lRm9y
bWF0KGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKSk7Ci0KLSAgICByZXR1cm4gSlNW
YWx1ZTo6ZW5jb2RlKGRhdGVUaW1lRm9ybWF0KTsKKyAgICBKU1ZhbHVlIGxvY2FsZXMgPSBzdGF0
ZS0+YXJndW1lbnQoMCk7CisgICAgSlNWYWx1ZSBvcHRpb25zID0gc3RhdGUtPmFyZ3VtZW50KDEp
OworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoaW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KCpz
dGF0ZSwgKmRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKSk7CiB9CiAKIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGxJbnRsRGF0ZVRpbWVGb3JtYXQoRXhlY1N0
YXRlKiBzdGF0ZSkKQEAgLTEyMyw5ICsxMjMsOSBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjYWxsSW50bERhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSogc3RhdGUpCiAgICAg
QVNTRVJUKGRhdGVUaW1lRm9ybWF0KTsKIAogICAgIC8vIDQuIFJldHVybiBJbml0aWFsaXplRGF0
ZVRpbWVGb3JtYXQoZGF0ZVRpbWVGb3JtYXQsIGxvY2FsZXMsIG9wdGlvbnMpLgotICAgIC8vIEZJ
WE1FOiByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKEluaXRpYWxpemVEYXRlVGltZUZvcm1hdChkYXRl
VGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykpOwotCi0gICAgcmV0dXJuIEpTVmFsdWU6OmVu
Y29kZShkYXRlVGltZUZvcm1hdCk7CisgICAgSlNWYWx1ZSBsb2NhbGVzID0gc3RhdGUtPmFyZ3Vt
ZW50KDApOworICAgIEpTVmFsdWUgb3B0aW9ucyA9IHN0YXRlLT5hcmd1bWVudCgxKTsKKyAgICBy
ZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGluaXRpYWxpemVEYXRlVGltZUZvcm1hdCgqc3RhdGUsICpk
YXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykpOwogfQogCiBDb25zdHJ1Y3RUeXBlIElu
dGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENv
bnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCkBAIC0xNjEsNyArMTYxLDcgQEAgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvckZ1bmNTdXBw
b3J0ZWRMb2NhbGVzT2YKICAgICAvLyAzLiBSZXR1cm4gU3VwcG9ydGVkTG9jYWxlcyhhdmFpbGFi
bGVMb2NhbGVzLCByZXF1ZXN0ZWRMb2NhbGVzLCBvcHRpb25zKS4KICAgICByZXR1cm4gSlNWYWx1
ZTo6ZW5jb2RlKHN1cHBvcnRlZExvY2FsZXMoKnN0YXRlLCBhdmFpbGFibGVMb2NhbGVzLCByZXF1
ZXN0ZWRMb2NhbGVzLCBzdGF0ZS0+YXJndW1lbnQoMSkpKTsKIH0KLSAgICAKKwogdm9pZCBJbnRs
RGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcjo6dmlzaXRDaGlsZHJlbihKU0NlbGwqIGNlbGwsIFNs
b3RWaXNpdG9yJiB2aXNpdG9yKQogewogICAgIEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9y
KiB0aGlzT2JqZWN0ID0ganNDYXN0PEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yKj4oY2Vs
bCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcAppbmRleCBkNWU1MjU5ODI0ODBiMWVkNDkxZTZi
N2I4ZmIxMmJiOGFmMWFlZTdkLi44M2ViZTZjMTk4MmI3N2E3OGZlZGNhZGQ1ZGE5ZjY5YzdhZmEy
M2Y1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKIAogI2lu
Y2x1ZGUgIkVycm9yLmgiCiAjaW5jbHVkZSAiSW50bERhdGVUaW1lRm9ybWF0LmgiCisjaW5jbHVk
ZSAiSW50bE9iamVjdC5oIgogI2luY2x1ZGUgIkpTQm91bmRGdW5jdGlvbi5oIgogI2luY2x1ZGUg
IkpTQ0pTVmFsdWVJbmxpbmVzLmgiCiAjaW5jbHVkZSAiSlNDZWxsSW5saW5lcy5oIgpAQCAtMzks
OCArNDAsNiBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotU1RBVElDX0FTU0VSVF9JU19UUklWSUFM
TFlfREVTVFJVQ1RJQkxFKEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSk7Ci0KIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUdl
dHRlckZvcm1hdChFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGlvbnMoRXhlY1N0
YXRlKik7CiAKQEAgLTU5LDEwICs1OCwxMSBAQCBjb25zdCBDbGFzc0luZm8gSW50bERhdGVUaW1l
Rm9ybWF0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmSW50bERhdGVUaW1lRgogQGVu
ZAogKi8KIAotSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKiBJbnRsRGF0ZVRpbWVGb3JtYXRQ
cm90b3R5cGU6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUpCitJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUqIEludGxEYXRlVGltZUZvcm1hdFBy
b3RvdHlwZTo6Y3JlYXRlKEV4ZWNTdGF0ZSogc3RhdGUsIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0
dXJlKiBzdHJ1Y3R1cmUpCiB7CisgICAgVk0mIHZtID0gc3RhdGUtPnZtKCk7CiAgICAgSW50bERh
dGVUaW1lRm9ybWF0UHJvdG90eXBlKiBvYmplY3QgPSBuZXcgKE5vdE51bGwsIGFsbG9jYXRlQ2Vs
bDxJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU+KHZtLmhlYXApKSBJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGUodm0sIHN0cnVjdHVyZSk7Ci0gICAgb2JqZWN0LT5maW5pc2hDcmVhdGlvbih2
bSwgc3RydWN0dXJlKTsKKyAgICBvYmplY3QtPmZpbmlzaENyZWF0aW9uKHN0YXRlLCBzdHJ1Y3R1
cmUpOwogICAgIHJldHVybiBvYmplY3Q7CiB9CiAKQEAgLTc2LDkgKzc2LDEzIEBAIEludGxEYXRl
VGltZUZvcm1hdFByb3RvdHlwZTo6SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKFZNJiB2bSwg
U3RydWN0dXJlKiBzdHJ1CiB7CiB9CiAKLXZvaWQgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIFN0cnVjdHVyZSopCit2b2lkIEludGxEYXRlVGltZUZv
cm1hdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiBzdGF0ZSwgU3RydWN0dXJl
KikKIHsKKyAgICBWTSYgdm0gPSBzdGF0ZS0+dm0oKTsKICAgICBCYXNlOjpmaW5pc2hDcmVhdGlv
bih2bSk7CisKKyAgICAvLyBUaGUgSW50bC5EYXRlVGltZUZvcm1hdCBwcm90b3R5cGUgb2JqZWN0
IGlzIGl0c2VsZiBhbiAlRGF0ZVRpbWVGb3JtYXQlIGluc3RhbmNlLCB3aG9zZSBpbnRlcm5hbCBz
bG90cyBhcmUgc2V0IGFzIGlmIGl0IGhhZCBiZWVuIGNvbnN0cnVjdGVkIGJ5IHRoZSBleHByZXNz
aW9uIENvbnN0cnVjdCglRGF0ZVRpbWVGb3JtYXQlKS4KKyAgICBpbml0aWFsaXplRGF0ZVRpbWVG
b3JtYXQoKnN0YXRlLCAqdGhpcywganNVbmRlZmluZWQoKSwganNVbmRlZmluZWQoKSk7CiB9CiAK
IGJvb2wgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNP
YmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBzdGF0ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFt
ZSwgUHJvcGVydHlTbG90JiBzbG90KQpAQCAtODYsMTUgKzkwLDE1MSBAQCBib29sIEludGxEYXRl
VGltZUZvcm1hdFByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3Qs
IEV4ZWNTdGF0ZQogICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KHN0
YXRlLCBkYXRlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxlLCBqc0Nhc3Q8SW50bERhdGVUaW1lRm9y
bWF0UHJvdG90eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KIAorc3RhdGlj
IFN0cmluZyB3ZWVrZGF5U3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6Oldl
ZWtkYXlTdHlsZSBzdHlsZSkKK3sKKyAgICBzd2l0Y2ggKHN0eWxlKSB7CisgICAgY2FzZSBJbnRs
RGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmlu
ZygpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpXZWVrZGF5U3R5bGU6Ok5hcnJvdzoK
KyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibmFycm93Iik7CisgICAgY2FzZSBJbnRsRGF0
ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHlsZTo6U2hvcnQ6CisgICAgICAgIHJldHVybiBBU0NJSUxp
dGVyYWwoInNob3J0Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHls
ZTo6TG9uZzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibG9uZyIpOworICAgIH0KKyAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gU3RyaW5nKCk7Cit9CisKK3N0YXRp
YyBTdHJpbmcgZXJhU3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkVyYVN0
eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGlt
ZUZvcm1hdDo6RXJhU3R5bGU6Ok5vbmU6CisgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICBj
YXNlIEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6Ok5hcnJvdzoKKyAgICAgICAgcmV0dXJu
IEFTQ0lJTGl0ZXJhbCgibmFycm93Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkVy
YVN0eWxlOjpTaG9ydDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgic2hvcnQiKTsKKyAg
ICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6Okxvbmc6CisgICAgICAgIHJldHVy
biBBU0NJSUxpdGVyYWwoImxvbmciKTsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CisgICAgcmV0dXJuIFN0cmluZygpOworfQorCitzdGF0aWMgU3RyaW5nIHllYXJTdHlsZVRvU3Ry
aW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlIHN0eWxlKQoreworICAgIHN3
aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlOjpO
b25lOgorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3Jt
YXQ6OlllYXJTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIjIt
ZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlOjpOdW1lcmlj
OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJudW1lcmljIik7CisgICAgfQorICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3RhdGljIFN0
cmluZyBtb250aFN0eWxlVG9TdHJpbmcoY29uc3QgSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0
eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGlt
ZUZvcm1hdDo6TW9udGhTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAg
IGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0eWxlOjpUd29EaWdpdDoKKyAgICAgICAg
cmV0dXJuIEFTQ0lJTGl0ZXJhbCgiMi1kaWdpdCIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9y
bWF0OjpNb250aFN0eWxlOjpOdW1lcmljOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJu
dW1lcmljIik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6Ok5hcnJv
dzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibmFycm93Iik7CisgICAgY2FzZSBJbnRs
RGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6OlNob3J0OgorICAgICAgICByZXR1cm4gQVNDSUlM
aXRlcmFsKCJzaG9ydCIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0eWxl
OjpMb25nOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJsb25nIik7CisgICAgfQorICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3RhdGlj
IFN0cmluZyBkYXlTdHlsZVRvU3RyaW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6RGF5U3R5
bGUgc3R5bGUpCit7CisgICAgc3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERhdGVUaW1l
Rm9ybWF0OjpEYXlTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgIGNh
c2UgSW50bERhdGVUaW1lRm9ybWF0OjpEYXlTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVy
biBBU0NJSUxpdGVyYWwoIjItZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6
RGF5U3R5bGU6Ok51bWVyaWM6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIm51bWVyaWMi
KTsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIFN0cmluZygp
OworfQorCitzdGF0aWMgU3RyaW5nIGhvdXJTdHlsZVRvU3RyaW5nKGNvbnN0IEludGxEYXRlVGlt
ZUZvcm1hdDo6SG91clN0eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBj
YXNlIEludGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlOjpOb25lOgorICAgICAgICByZXR1cm4g
U3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkhvdXJTdHlsZTo6VHdvRGln
aXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIjItZGlnaXQiKTsKKyAgICBjYXNlIElu
dGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlOjpOdW1lcmljOgorICAgICAgICByZXR1cm4gQVND
SUlMaXRlcmFsKCJudW1lcmljIik7CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwor
ICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3RhdGljIFN0cmluZyBtaW51dGVTdHlsZVRvU3Ry
aW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6TWludXRlU3R5bGUgc3R5bGUpCit7CisgICAg
c3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpNaW51dGVTdHls
ZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgIGNhc2UgSW50bERhdGVUaW1l
Rm9ybWF0OjpNaW51dGVTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVy
YWwoIjItZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6TWludXRlU3R5bGU6
Ok51bWVyaWM6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIm51bWVyaWMiKTsKKyAgICB9
CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIFN0cmluZygpOworfQorCitz
dGF0aWMgU3RyaW5nIHNlY29uZFN0eWxlVG9TdHJpbmcoY29uc3QgSW50bERhdGVUaW1lRm9ybWF0
OjpTZWNvbmRTdHlsZSBzdHlsZSkKK3sKKyAgICBzd2l0Y2ggKHN0eWxlKSB7CisgICAgY2FzZSBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpOb25lOgorICAgICAgICByZXR1cm4gU3Ry
aW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpUd29EaWdp
dDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiMi1kaWdpdCIpOworICAgIGNhc2UgSW50
bERhdGVUaW1lRm9ybWF0OjpTZWNvbmRTdHlsZTo6TnVtZXJpYzoKKyAgICAgICAgcmV0dXJuIEFT
Q0lJTGl0ZXJhbCgibnVtZXJpYyIpOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsK
KyAgICByZXR1cm4gU3RyaW5nKCk7Cit9CisKK3N0YXRpYyBTdHJpbmcgdGltZVpvbmVOYW1lU3R5
bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlRpbWVab25lTmFtZVN0eWxlIHN0
eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1h
dDo6VGltZVpvbmVOYW1lU3R5bGU6Ok5vbmU6CisgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAg
ICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6OlNob3J0OgorICAg
ICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJzaG9ydCIpOworICAgIGNhc2UgSW50bERhdGVUaW1l
Rm9ybWF0OjpUaW1lWm9uZU5hbWVTdHlsZTo6TG9uZzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0
ZXJhbCgibG9uZyIpOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1
cm4gU3RyaW5nKCk7Cit9CisKIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVU
aW1lRm9ybWF0UHJvdG90eXBlR2V0dGVyRm9ybWF0KEV4ZWNTdGF0ZSogc3RhdGUpCiB7CiAgICAg
Ly8gMTIuMy4zIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCAoRUNNQS00MDIg
Mi4wKQogICAgIC8vIDEuIExldCBkdGYgYmUgdGhpcyBEYXRlVGltZUZvcm1hdCBvYmplY3QuCiAg
ICAgSW50bERhdGVUaW1lRm9ybWF0KiBkdGYgPSBqc0R5bmFtaWNDYXN0PEludGxEYXRlVGltZUZv
cm1hdCo+KHN0YXRlLT50aGlzVmFsdWUoKSk7CiAgICAgLy8gMi4gUmV0dXJuSWZBYnJ1cHQoZHRm
KS4KLSAgICBpZiAoIWR0ZikKKyAgICBpZiAoIWR0ZiB8fCAhZHRmLT5pbml0aWFsaXplZERhdGVU
aW1lRm9ybWF0KCkpCiAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJy
b3Ioc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9y
bWF0IGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBh
IERhdGVUaW1lRm9ybWF0IikpKTsKLSAgICAKKwogICAgIEpTQm91bmRGdW5jdGlvbiogYm91bmRG
b3JtYXQgPSBkdGYtPmJvdW5kRm9ybWF0KCk7CiAgICAgLy8gMy4gSWYgdGhlIFtbYm91bmRGb3Jt
YXRdXSBpbnRlcm5hbCBzbG90IG9mIHRoaXMgRGF0ZVRpbWVGb3JtYXQgb2JqZWN0IGlzIHVuZGVm
aW5lZCwKICAgICBpZiAoIWJvdW5kRm9ybWF0KSB7CkBAIC0xMDYsNyArMjQ2LDcgQEAgRW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJG
b3JtYXQoRXhlY1N0YXRlKgogICAgICAgICBKU0FycmF5KiBib3VuZEFyZ3MgPSBKU0FycmF5Ojp0
cnlDcmVhdGVVbmluaXRpYWxpemVkKHZtLCBnbG9iYWxPYmplY3QtPmFycmF5U3RydWN0dXJlRm9y
SW5kZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbihBcnJheVdpdGhVbmRlY2lkZWQpLCAwKTsKICAg
ICAgICAgaWYgKCFib3VuZEFyZ3MpCiAgICAgICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2Rl
KHRocm93T3V0T2ZNZW1vcnlFcnJvcihzdGF0ZSkpOwotICAgICAgICAKKwogICAgICAgICAvLyBj
LiBMZXQgYmYgYmUgQm91bmRGdW5jdGlvbkNyZWF0ZShGLCDCq3RoaXMgdmFsdWXCuykuCiAgICAg
ICAgIGJvdW5kRm9ybWF0ID0gSlNCb3VuZEZ1bmN0aW9uOjpjcmVhdGUodm0sIGdsb2JhbE9iamVj
dCwgdGFyZ2V0T2JqZWN0LCBkdGYsIGJvdW5kQXJncywgMSwgQVNDSUlMaXRlcmFsKCJmb3JtYXQi
KSk7CiAgICAgICAgIC8vIGQuIFNldCBkdGYuW1tib3VuZEZvcm1hdF1dIHRvIGJmLgpAQCAtMTIw
LDE1ICsyNjAsNDggQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVG
b3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKEV4ZWMKIHsKICAgICAvLyAxMi4zLjUg
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgKEVDTUEtNDAy
IDIuMCkKICAgICBJbnRsRGF0ZVRpbWVGb3JtYXQqIGR0ZiA9IGpzRHluYW1pY0Nhc3Q8SW50bERh
dGVUaW1lRm9ybWF0Kj4oc3RhdGUtPnRoaXNWYWx1ZSgpKTsKLSAgICBpZiAoIWR0ZikKKyAgICBp
ZiAoIWR0ZiB8fCAhZHRmLT5pbml0aWFsaXplZERhdGVUaW1lRm9ybWF0KCkpCiAgICAgICAgIHJl
dHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3Ioc3RhdGUsIEFTQ0lJTGl0ZXJhbCgi
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNhbGxlZCBvbiB2
YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1lRm9ybWF0
IikpKTsKIAogICAgIC8vIFRoZSBmdW5jdGlvbiByZXR1cm5zIGEgbmV3IG9iamVjdCB3aG9zZSBw
cm9wZXJ0aWVzIGFuZCBhdHRyaWJ1dGVzIGFyZSBzZXQgYXMgaWYgY29uc3RydWN0ZWQgYnkgYW4g
b2JqZWN0IGxpdGVyYWwgYXNzaWduaW5nIHRvIGVhY2ggb2YgdGhlIGZvbGxvd2luZyBwcm9wZXJ0
aWVzIHRoZSB2YWx1ZSBvZiB0aGUgY29ycmVzcG9uZGluZyBpbnRlcm5hbCBzbG90IG9mIHRoaXMg
RGF0ZVRpbWVGb3JtYXQgb2JqZWN0IChzZWUgMTIuNCk6IGxvY2FsZSwgY2FsZW5kYXIsIG51bWJl
cmluZ1N5c3RlbSwgdGltZVpvbmUsIGhvdXIxMiwgd2Vla2RheSwgZXJhLCB5ZWFyLCBtb250aCwg
ZGF5LCBob3VyLCBtaW51dGUsIHNlY29uZCwgYW5kIHRpbWVab25lTmFtZS4gUHJvcGVydGllcyB3
aG9zZSBjb3JyZXNwb25kaW5nIGludGVybmFsIHNsb3RzIGFyZSBub3QgcHJlc2VudCBhcmUgbm90
IGFzc2lnbmVkLgogICAgIC8vIE5vdGU6IEluIHRoaXMgdmVyc2lvbiBvZiB0aGUgRUNNQVNjcmlw
dCAyMDE1IEludGVybmF0aW9uYWxpemF0aW9uIEFQSSwgdGhlIHRpbWVab25lIHByb3BlcnR5IHdp
bGwgYmUgdGhlIG5hbWUgb2YgdGhlIGRlZmF1bHQgdGltZSB6b25lIGlmIG5vIHRpbWVab25lIHBy
b3BlcnR5IHdhcyBwcm92aWRlZCBpbiB0aGUgb3B0aW9ucyBvYmplY3QgcHJvdmlkZWQgdG8gdGhl
IEludGwuRGF0ZVRpbWVGb3JtYXQgY29uc3RydWN0b3IuIFRoZSBwcmV2aW91cyB2ZXJzaW9uIGxl
ZnQgdGhlIHRpbWVab25lIHByb3BlcnR5IHVuZGVmaW5lZCBpbiB0aGlzIGNhc2UuCiAKKyAgICBW
TSYgdm0gPSBzdGF0ZS0+dm0oKTsKKwogICAgIEpTT2JqZWN0KiBvcHRpb25zID0gY29uc3RydWN0
RW1wdHlPYmplY3Qoc3RhdGUpOworICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVy
dHlOYW1lcy0+bG9jYWxlLCBqc05vbnRyaXZpYWxTdHJpbmcoc3RhdGUsIGR0Zi0+bG9jYWxlKCkp
KTsKKyAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIElkZW50aWZpZXI6OmZyb21TdHJpbmcoJnZt
LCAiY2FsZW5kYXIiKSwganNOb250cml2aWFsU3RyaW5nKHN0YXRlLCBkdGYtPmNhbGVuZGFyKCkp
KTsKKyAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIElkZW50aWZpZXI6OmZyb21TdHJpbmcoJnZt
LCAibnVtYmVyaW5nU3lzdGVtIiksIGpzTm9udHJpdmlhbFN0cmluZyhzdGF0ZSwgZHRmLT5udW1i
ZXJpbmdTeXN0ZW0oKSkpOworICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlO
YW1lcy0+dGltZVpvbmUsIGpzTm9udHJpdmlhbFN0cmluZyhzdGF0ZSwgZHRmLT50aW1lWm9uZSgp
KSk7CisKKyAgICBpZiAoZHRmLT53ZWVrZGF5KCkgIT0gSW50bERhdGVUaW1lRm9ybWF0OjpXZWVr
ZGF5U3R5bGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVy
dHlOYW1lcy0+d2Vla2RheSwganNOb250cml2aWFsU3RyaW5nKHN0YXRlLCB3ZWVrZGF5U3R5bGVU
b1N0cmluZyhkdGYtPndlZWtkYXkoKSkpKTsKKworICAgIGlmIChkdGYtPmVyYSgpICE9IEludGxE
YXRlVGltZUZvcm1hdDo6RXJhU3R5bGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVj
dCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+ZXJhLCBqc05vbnRyaXZpYWxTdHJpbmcoc3RhdGUsIGVy
YVN0eWxlVG9TdHJpbmcoZHRmLT5lcmEoKSkpKTsKKworICAgIGlmIChkdGYtPnllYXIoKSAhPSBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OlllYXJTdHlsZTo6Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0
RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT55ZWFyLCBqc05vbnRyaXZpYWxTdHJpbmcoc3Rh
dGUsIHllYXJTdHlsZVRvU3RyaW5nKGR0Zi0+eWVhcigpKSkpOworCisgICAgaWYgKGR0Zi0+bW9u
dGgoKSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6Ok5vbmUpCisgICAgICAgIG9w
dGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bW9udGgsIGpzTm9udHJpdmlh
bFN0cmluZyhzdGF0ZSwgbW9udGhTdHlsZVRvU3RyaW5nKGR0Zi0+bW9udGgoKSkpKTsKKworICAg
IGlmIChkdGYtPmRheSgpICE9IEludGxEYXRlVGltZUZvcm1hdDo6RGF5U3R5bGU6Ok5vbmUpCisg
ICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+ZGF5LCBqc05v
bnRyaXZpYWxTdHJpbmcoc3RhdGUsIGRheVN0eWxlVG9TdHJpbmcoZHRmLT5kYXkoKSkpKTsKKwor
ICAgIGlmIChkdGYtPmhvdXIoKSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkhvdXJTdHlsZTo6Tm9u
ZSkgeworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmhv
dXIsIGpzTm9udHJpdmlhbFN0cmluZyhzdGF0ZSwgaG91clN0eWxlVG9TdHJpbmcoZHRmLT5ob3Vy
KCkpKSk7CisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+
aG91cjEyLCBqc0Jvb2xlYW4oZHRmLT5ob3VyMTIoKSkpOworICAgIH0KKworICAgIGlmIChkdGYt
Pm1pbnV0ZSgpICE9IEludGxEYXRlVGltZUZvcm1hdDo6TWludXRlU3R5bGU6Ok5vbmUpCisgICAg
ICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bWludXRlLCBqc05v
bnRyaXZpYWxTdHJpbmcoc3RhdGUsIG1pbnV0ZVN0eWxlVG9TdHJpbmcoZHRmLT5taW51dGUoKSkp
KTsKKworICAgIGlmIChkdGYtPnNlY29uZCgpICE9IEludGxEYXRlVGltZUZvcm1hdDo6U2Vjb25k
U3R5bGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlO
YW1lcy0+c2Vjb25kLCBqc05vbnRyaXZpYWxTdHJpbmcoc3RhdGUsIHNlY29uZFN0eWxlVG9TdHJp
bmcoZHRmLT5zZWNvbmQoKSkpKTsKIAotICAgIC8vIEZJWE1FOiBQb3B1bGF0ZSBvYmplY3QgZnJv
bSBpbnRlcm5hbCBzbG90cy4KKyAgICBpZiAoZHRmLT50aW1lWm9uZU5hbWUoKSAhPSBJbnRsRGF0
ZVRpbWVGb3JtYXQ6OlRpbWVab25lTmFtZVN0eWxlOjpOb25lKQorICAgICAgICBvcHRpb25zLT5w
dXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPnRpbWVab25lTmFtZSwganNOb250cml2aWFs
U3RyaW5nKHN0YXRlLCB0aW1lWm9uZU5hbWVTdHlsZVRvU3RyaW5nKGR0Zi0+dGltZVpvbmVOYW1l
KCkpKSk7CiAKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKG9wdGlvbnMpOwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJv
dG90eXBlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGUuaAppbmRleCBhMmZkNWUzNGVhNzk1ODZlNDc4OTZmYWZmYzQ0ZTVlNmZhNjE1
OWNiLi4xNjUwZjE5OTBmNTdiZTQ1MjE4NGI3YjZmMDBkNjZhMzM4ZDI3YjQ2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5
cGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGUuaApAQCAtMzgsMTMgKzM4LDEzIEBAIHB1YmxpYzoKICAgICB0eXBlZGVmIElu
dGxEYXRlVGltZUZvcm1hdCBCYXNlOwogICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBTdHJ1Y3R1
cmVGbGFncyA9IEJhc2U6OlN0cnVjdHVyZUZsYWdzIHwgT3ZlcnJpZGVzR2V0T3duUHJvcGVydHlT
bG90OwogCi0gICAgc3RhdGljIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSogY3JlYXRlKFZN
JiwgSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqKTsKKyAgICBzdGF0aWMgSW50bERhdGVUaW1l
Rm9ybWF0UHJvdG90eXBlKiBjcmVhdGUoRXhlY1N0YXRlKiwgSlNHbG9iYWxPYmplY3QqLCBTdHJ1
Y3R1cmUqKTsKICAgICBzdGF0aWMgU3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoVk0mLCBKU0ds
b2JhbE9iamVjdCosIEpTVmFsdWUpOwogCiAgICAgREVDTEFSRV9JTkZPOwogCiBwcm90ZWN0ZWQ6
Ci0gICAgdm9pZCBmaW5pc2hDcmVhdGlvbihWTSYsIFN0cnVjdHVyZSopOworICAgIHZvaWQgZmlu
aXNoQ3JlYXRpb24oRXhlY1N0YXRlKiwgU3RydWN0dXJlKik7CiAKIHByaXZhdGU6CiAgICAgSW50
bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKFZNJiwgU3RydWN0dXJlKik7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuY3BwCmluZGV4IDkyMjY5YmQ4MDdmZWM5M2Jj
ZGRlNmZiYzAyMjJmNThlYzZlNThmYmMuLjdmYWFkZWI5YzViYzUwOGZhNGFmYWU2N2FiZjQ0MDZh
MWMyNzg1N2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxP
YmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3Qu
Y3BwCkBAIC00NSw2ICs0NSw3IEBACiAjaW5jbHVkZSAiTG9va3VwLmgiCiAjaW5jbHVkZSAiT2Jq
ZWN0UHJvdG90eXBlLmgiCiAjaW5jbHVkZSA8dW5pY29kZS91bG9jLmg+CisjaW5jbHVkZSA8dW5p
Y29kZS91bnVtc3lzLmg+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIAogbmFtZXNwYWNl
IEpTQyB7CkBAIC02OCwxNSArNjksMTcgQEAgSW50bE9iamVjdDo6SW50bE9iamVjdChWTSYgdm0s
IFN0cnVjdHVyZSogc3RydWN0dXJlKQogewogfQogCi1JbnRsT2JqZWN0KiBJbnRsT2JqZWN0Ojpj
cmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSkKK0ludGxPYmplY3QqIEludGxPYmplY3Q6OmNyZWF0ZShFeGVjU3RhdGUqIHN0YXRl
LCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsK
KyAgICBWTSYgdm0gPSBzdGF0ZS0+dm0oKTsKICAgICBJbnRsT2JqZWN0KiBvYmplY3QgPSBuZXcg
KE5vdE51bGwsIGFsbG9jYXRlQ2VsbDxJbnRsT2JqZWN0Pih2bS5oZWFwKSkgSW50bE9iamVjdCh2
bSwgc3RydWN0dXJlKTsKLSAgICBvYmplY3QtPmZpbmlzaENyZWF0aW9uKHZtLCBnbG9iYWxPYmpl
Y3QpOworICAgIG9iamVjdC0+ZmluaXNoQ3JlYXRpb24oc3RhdGUsIGdsb2JhbE9iamVjdCk7CiAg
ICAgcmV0dXJuIG9iamVjdDsKIH0KIAotdm9pZCBJbnRsT2JqZWN0OjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCit2b2lkIEludGxPYmplY3Q6OmZp
bmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSogc3RhdGUsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QpCiB7CisgICAgVk0mIHZtID0gc3RhdGUtPnZtKCk7CiAgICAgQmFzZTo6ZmluaXNoQ3JlYXRp
b24odm0pOwogICAgIEFTU0VSVChpbmhlcml0cyhpbmZvKCkpKTsKIApAQCAtOTUsNyArOTgsNyBA
QCB2b2lkIEludGxPYmplY3Q6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCkKICAgICBudW1iZXJGb3JtYXRQcm90b3R5cGUtPnB1dERpcmVjdFdpdGhv
dXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5jb25zdHJ1Y3RvciwgbnVtYmVyRm9y
bWF0Q29uc3RydWN0b3IsIERvbnRFbnVtKTsKIAogICAgIC8vIFNldCB1cCBEYXRlVGltZUZvcm1h
dC4KLSAgICBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUqIGRhdGVUaW1lRm9ybWF0UHJvdG90
eXBlID0gSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVj
dCwgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpjcmVhdGVTdHJ1Y3R1cmUodm0sIGdsb2Jh
bE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5vYmplY3RQcm90b3R5cGUoKSkpOworICAgIEludGxEYXRl
VGltZUZvcm1hdFByb3RvdHlwZSogZGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUgPSBJbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGU6OmNyZWF0ZShzdGF0ZSwgZ2xvYmFsT2JqZWN0LCBJbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGU6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9i
YWxPYmplY3QtPm9iamVjdFByb3RvdHlwZSgpKSk7CiAgICAgU3RydWN0dXJlKiBkYXRlVGltZUZv
cm1hdFN0cnVjdHVyZSA9IEludGxEYXRlVGltZUZvcm1hdDo6Y3JlYXRlU3RydWN0dXJlKHZtLCBn
bG9iYWxPYmplY3QsIGRhdGVUaW1lRm9ybWF0UHJvdG90eXBlKTsKICAgICBJbnRsRGF0ZVRpbWVG
b3JtYXRDb25zdHJ1Y3RvciogZGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvciA9IEludGxEYXRlVGlt
ZUZvcm1hdENvbnN0cnVjdG9yOjpjcmVhdGUodm0sIEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVj
dG9yOjpjcmVhdGVTdHJ1Y3R1cmUodm0sIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5mdW5j
dGlvblByb3RvdHlwZSgpKSwgZGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUsIGRhdGVUaW1lRm9ybWF0
U3RydWN0dXJlKTsKIApAQCAtNzQ1LDYgKzc0OCw3IEBAIEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+
IHJlc29sdmVMb2NhbGUoY29uc3QgSGFzaFNldDxTdHJpbmc+JiBhdmFpbGFibGVMb2NhbGVzLCBj
CiAgICAgICAgICAgICBzaXplX3Qga2V5UG9zID0gZXh0ZW5zaW9uU3VidGFncy5maW5kKGtleSk7
CiAgICAgICAgICAgICAvLyBpaS4gSWYga2V5UG9zICE9IC0xLCB0aGVuCiAgICAgICAgICAgICBp
ZiAoa2V5UG9zICE9IG5vdEZvdW5kKSB7CisgICAgICAgICAgICAgICAgLy8gRklYTUU6IGh0dHBz
Oi8vZ2l0aHViLmNvbS90YzM5L2VjbWE0MDIvaXNzdWVzLzU5CiAgICAgICAgICAgICAgICAgLy8g
MS4gSWYga2V5UG9zICsgMSA8IGV4dGVuc2lvblN1YnRhZ3NMZW5ndGggYW5kIHRoZSBsZW5ndGgg
b2YgdGhlIHJlc3VsdCBvZiBHZXQoZXh0ZW5zaW9uU3VidGFncywgVG9TdHJpbmcoa2V5UG9zICsx
KSkgaXMgZ3JlYXRlciB0aGFuIDIsIHRoZW4KICAgICAgICAgICAgICAgICBpZiAoa2V5UG9zICsg
MSA8IGV4dGVuc2lvblN1YnRhZ3Muc2l6ZSgpICYmIGV4dGVuc2lvblN1YnRhZ3Nba2V5UG9zICsg
MV0ubGVuZ3RoKCkgPiAyKSB7CiAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFN0cmluZyYgcmVx
dWVzdGVkVmFsdWUgPSBleHRlbnNpb25TdWJ0YWdzW2tleVBvcyArIDFdOwpAQCAtOTE2LDYgKzky
MCw3MiBAQCBKU1ZhbHVlIHN1cHBvcnRlZExvY2FsZXMoRXhlY1N0YXRlJiBzdGF0ZSwgY29uc3Qg
SGFzaFNldDxTdHJpbmc+JiBhdmFpbGFibGVMb2NhbAogICAgIHJldHVybiBzdXBwb3J0ZWRMb2Nh
bGVzOwogfQogCitWZWN0b3I8U3RyaW5nPiBnZXROdW1iZXJpbmdTeXN0ZW1zRm9yTG9jYWxlKGNv
bnN0IFN0cmluZyYgbG9jYWxlKQoreworICAgIC8vIHVudW1zeXNfb3BlbkF2YWlsYWJsZU5hbWVz
IGFwcGVhcnMgdG8gb25seSBiZSBhYmxlIHVzYWJsZSBvbmNlIHBlciBwcm9jZXNzLCBzbyB1c2Ug
c3RhdGljIGxpc3QgaW5zdGVhZC4KKyAgICBVRXJyb3JDb2RlIHN0YXR1cyhVX1pFUk9fRVJST1Ip
OworICAgIFVOdW1iZXJpbmdTeXN0ZW0qIGRlZmF1bHRTeXN0ZW0gPSB1bnVtc3lzX29wZW4obG9j
YWxlLnV0ZjgoKS5kYXRhKCksICZzdGF0dXMpOworICAgIEFTU0VSVChVX1NVQ0NFU1Moc3RhdHVz
KSk7CisKKyAgICBWZWN0b3I8U3RyaW5nPiBudW1iZXJpbmdTeXN0ZW1zKHsKKyAgICAgICAgQVND
SUlMaXRlcmFsKHVudW1zeXNfZ2V0TmFtZShkZWZhdWx0U3lzdGVtKSksCisgICAgICAgIEFTQ0lJ
TGl0ZXJhbCgiYXJhYiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImFyYWJleHQiKSwKKyAgICAg
ICAgQVNDSUlMaXRlcmFsKCJhcm1uIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiYXJtbmxvdyIp
LAorICAgICAgICBBU0NJSUxpdGVyYWwoImJhbGkiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJi
ZW5nIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiY2hhbSIpLAorICAgICAgICBBU0NJSUxpdGVy
YWwoImRldmEiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJldGhpIiksCisgICAgICAgIEFTQ0lJ
TGl0ZXJhbCgiZnVsbHdpZGUiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJnZW9yIiksCisgICAg
ICAgIEFTQ0lJTGl0ZXJhbCgiZ3JlayIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImdyZWtsb3ci
KSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJndWpyIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgi
Z3VydSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbmlkYXlzIiksCisgICAgICAgIEFTQ0lJ
TGl0ZXJhbCgiaGFuaWRlYyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbnMiKSwKKyAgICAg
ICAgQVNDSUlMaXRlcmFsKCJoYW5zZmluIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaGFudCIp
LAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbnRmaW4iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFs
KCJoZWJyIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiamF2YSIpLAorICAgICAgICBBU0NJSUxp
dGVyYWwoImpwYW4iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJqcGFuZmluIiksCisgICAgICAg
IEFTQ0lJTGl0ZXJhbCgia2FsaSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImtobXIiKSwKKyAg
ICAgICAgQVNDSUlMaXRlcmFsKCJrbmRhIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibGFuYSIp
LAorICAgICAgICBBU0NJSUxpdGVyYWwoImxhbmF0aGFtIiksCisgICAgICAgIEFTQ0lJTGl0ZXJh
bCgibGFvbyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImxhdG4iKSwKKyAgICAgICAgQVNDSUlM
aXRlcmFsKCJsZXBjIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibGltYiIpLAorICAgICAgICBB
U0NJSUxpdGVyYWwoIm1seW0iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJtb25nIiksCisgICAg
ICAgIEFTQ0lJTGl0ZXJhbCgibXRlaSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoIm15bXIiKSwK
KyAgICAgICAgQVNDSUlMaXRlcmFsKCJteW1yc2hhbiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwo
Im5rb28iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJvbGNrIiksCisgICAgICAgIEFTQ0lJTGl0
ZXJhbCgib3J5YSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInJvbWFuIiksCisgICAgICAgIEFT
Q0lJTGl0ZXJhbCgicm9tYW5sb3ciKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJzYXVyIiksCisg
ICAgICAgIEFTQ0lJTGl0ZXJhbCgic3VuZCIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInRhbHUi
KSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJ0YW1sIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgi
dGFtbGRlYyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInRlbHUiKSwKKyAgICAgICAgQVNDSUlM
aXRlcmFsKCJ0aGFpIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgidGlidCIpLAorICAgICAgICBB
U0NJSUxpdGVyYWwoInZhaWkiKSwKKyAgICB9KTsKKyAgICByZXR1cm4gbnVtYmVyaW5nU3lzdGVt
czsKK30KKwogfSAvLyBuYW1lc3BhY2UgSlNDCiAKICNlbmRpZiAvLyBFTkFCTEUoSU5UTCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaAppbmRleCBmMmRjM2VlYTY0
M2Q4ZDVhNzVjY2I1YTdiZWY5NDQwZGUxODcwOWQ4Li4yOTZiZjhhZjY4ZWU3YmFmNDFmYjI5YzBj
NTU2MzE3NDA0MGZlZmI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsT2JqZWN0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9i
amVjdC5oCkBAIC00NSwxMyArNDUsMTMgQEAgcHVibGljOgogICAgIHR5cGVkZWYgSlNOb25GaW5h
bE9iamVjdCBCYXNlOwogICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBTdHJ1Y3R1cmVGbGFncyA9
IEJhc2U6OlN0cnVjdHVyZUZsYWdzIHwgT3ZlcnJpZGVzR2V0T3duUHJvcGVydHlTbG90OwogCi0g
ICAgc3RhdGljIEludGxPYmplY3QqIGNyZWF0ZShWTSYsIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0
dXJlKik7CisgICAgc3RhdGljIEludGxPYmplY3QqIGNyZWF0ZShFeGVjU3RhdGUqLCBKU0dsb2Jh
bE9iamVjdCosIFN0cnVjdHVyZSopOwogICAgIHN0YXRpYyBTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVj
dHVyZShWTSYsIEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSk7CiAKICAgICBERUNMQVJFX0lORk87
CiAKIHByb3RlY3RlZDoKLSAgICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJiwgSlNHbG9iYWxPYmpl
Y3QqKTsKKyAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSosIEpTR2xvYmFsT2JqZWN0
Kik7CiAKIHByaXZhdGU6CiAgICAgSW50bE9iamVjdChWTSYsIFN0cnVjdHVyZSopOwpAQCAtNjMs
OCArNjMsOSBAQCBTdHJpbmcgaW50bFN0cmluZ09wdGlvbihFeGVjU3RhdGUmLCBKU1ZhbHVlIG9w
dGlvbnMsIFByb3BlcnR5TmFtZSwgY29uc3QgSGFzaFNldAogVmVjdG9yPFN0cmluZz4gY2Fub25p
Y2FsaXplTG9jYWxlTGlzdChFeGVjU3RhdGUmLCBKU1ZhbHVlIGxvY2FsZXMpOwogSGFzaE1hcDxT
dHJpbmcsIFN0cmluZz4gcmVzb2x2ZUxvY2FsZShjb25zdCBIYXNoU2V0PFN0cmluZz4mIGF2YWls
YWJsZUxvY2FsZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiByZXF1ZXN0ZWRMb2NhbGVzLCBjb25z
dCBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiYgb3B0aW9ucywgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHJlbGV2YW50RXh0ZW5zaW9uS2V5cywgVmVjdG9yPFN0cmluZz4gKCpsb2NhbGVEYXRhKShjb25z
dCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmKSk7CiBKU1ZhbHVlIHN1cHBvcnRlZExvY2FsZXMoRXhl
Y1N0YXRlJiwgY29uc3QgSGFzaFNldDxTdHJpbmc+JiBhdmFpbGFibGVMb2NhbGVzLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgcmVxdWVzdGVkTG9jYWxlcywgSlNWYWx1ZSBvcHRpb25zKTsKLVN0cmlu
ZyByZW1vdmVVbmljb2RlTG9jYWxlRXh0ZW5zaW9uKGNvbnN0IFN0cmluZyYpOwotU3RyaW5nIGJl
c3RBdmFpbGFibGVMb2NhbGUoY29uc3QgSGFzaFNldDxTdHJpbmc+JiwgY29uc3QgU3RyaW5nJik7
CitTdHJpbmcgcmVtb3ZlVW5pY29kZUxvY2FsZUV4dGVuc2lvbihjb25zdCBTdHJpbmcmIGxvY2Fs
ZSk7CitTdHJpbmcgYmVzdEF2YWlsYWJsZUxvY2FsZShjb25zdCBIYXNoU2V0PFN0cmluZz4mIGF2
YWlsYWJsZUxvY2FsZXMsIGNvbnN0IFN0cmluZyYgcmVxdWVzdGVkTG9jYWxlKTsKK1ZlY3RvcjxT
dHJpbmc+IGdldE51bWJlcmluZ1N5c3RlbXNGb3JMb2NhbGUoY29uc3QgU3RyaW5nJiBsb2NhbGUp
OwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCmluZGV4IGVjYzgyYmE2MjhiZjE2ZjIxMTc5YTJjNDhk
YmE3M2FmN2VlNzJhODEuLmNiNjZiMTA4ZjA2MmFhN2VlZDQ0NDVmNDQ0NjVkY2NlN2Q0ZjJmNmUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5j
cHAKQEAgLTQ2OCw3ICs0NjgsNyBAQCBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0u
cHJvcGVydHlOYW1lcy0+IGpzTmFtZSwgbG93ZXJOYW1lICMjIENvbnN0cnVjdAogICAgIHB1dERp
cmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5ldmFsLCBtX2V2YWxG
dW5jdGlvbi5nZXQoKSwgRG9udEVudW0pOwogICAgIAogI2lmIEVOQUJMRShJTlRMKQotICAgIElu
dGxPYmplY3QqIGludGwgPSBJbnRsT2JqZWN0OjpjcmVhdGUodm0sIHRoaXMsIEludGxPYmplY3Q6
OmNyZWF0ZVN0cnVjdHVyZSh2bSwgdGhpcywgbV9vYmplY3RQcm90b3R5cGUuZ2V0KCkpKTsKKyAg
ICBJbnRsT2JqZWN0KiBpbnRsID0gSW50bE9iamVjdDo6Y3JlYXRlKGV4ZWMsIHRoaXMsIEludGxP
YmplY3Q6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgdGhpcywgbV9vYmplY3RQcm90b3R5cGUuZ2V0KCkp
KTsKICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlOYW1lcy0+
SW50bCwgaW50bCwgRG9udEVudW0pOwogI2VuZGlmIC8vIEVOQUJMRShJTlRMKQogICAgIHB1dERp
cmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5KU09OLCBKU09OT2Jq
ZWN0OjpjcmVhdGUodm0sIEpTT05PYmplY3Q6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgdGhpcywgbV9v
YmplY3RQcm90b3R5cGUuZ2V0KCkpKSwgRG9udEVudW0pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU1NGRhYmUwMGM3ZWIx
NzQxOTc3MjkwZGNjYmEwNzQ4MzFmNGMyMzUuLjE3MzA2N2ZjZjUyYTc4M2JkMGIwMzA2MmJjNWRh
ODQyZTczOTRhNjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxNS0xNi0xMSAgQW5keSBWYW5X
YWdvbmVyICA8YW5keUBpbnN0cnVjdHVyZS5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVu
dCBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICoganMvaW50bC1kYXRl
dGltZWZvcm1hdC1leHBlY3RlZC50eHQ6IEFkZGVkIHJlc29sdmVkT3B0aW9ucyB0ZXN0cy4KKyAg
ICAgICAgKiBqcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5qczogQWRkZWQgcmVz
b2x2ZWRPcHRpb25zIHRlc3RzLgorCiAyMDE1LTEyLTE2ICBSeWFuIEhhZGRhZCAgPHJ5YW5oYWRk
YWRAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZGluZyB0aW1lb3V0IHRvIHdwdCBUZXN0RXhwZWN0
YXRpb25zIGR1ZSB0byBXSy9XUFQgdGVzdGhhcm5lc3MuanMgaXNzdWVzLgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvanMvaW50bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dAppbmRleCBkMDE2YzgwMDQ3
ZDY0ZDAyMzhiNWM5NmQ3YjkwYjZjNGFlMWM5ZWE0Li44YTVmZGVmYzAwOGY3MmNkNTc4NTFmYjM3
N2FmNTVkZTFmZjJkZTJmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1l
Zm9ybWF0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9y
bWF0LWV4cGVjdGVkLnR4dApAQCAtNTQsNyArNTQsNyBAQCBQQVNTIE9iamVjdC5kZWZpbmVQcm9w
ZXJ0eSh7fSwgJ2Zvcm1hdCcsIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5E
YQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgIT09IEludGwuRGF0
ZVRpbWVGb3JtYXQoKS5mb3JtYXQgaXMgdHJ1ZQogUEFTUyBuZXcgSW50bC5EYXRlVGltZUZvcm1h
dCgpLmZvcm1hdCAhPT0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQgaXMgdHJ1ZQog
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoeyB2YWx1ZU9mKCkgeyB0
aHJvdyBFcnJvcignNGInKSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogNGIuCi1QQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdChJbmZpbml0eSkgdGhyZXcgZXhjZXB0
aW9uIFJhbmdlRXJyb3I6IGRhdGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRlVGltZUZvcm1h
dC5mb3JtYXQoKS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KElu
ZmluaXR5KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZGF0ZSB2YWx1ZSBpcyBub3QgZmlu
aXRlIGluIERhdGVUaW1lRm9ybWF0IGZvcm1hdCgpLgogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
LnByb3RvdHlwZS5mb3JtYXQuY2FsbChudWxsLCAwKSBpcyBJbnRsLkRhdGVUaW1lRm9ybWF0KCku
Zm9ybWF0KDApCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdC5jYWxs
KEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyJyksIDApIGlzIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5m
b3JtYXQoMCkKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0LmNhbGwo
NSwgMCkgaXMgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKQpAQCAtNjMsOCArNjMsMjM3
IEBAIFBBU1MgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQuY2FsbChJbnRsLkRhdGVU
aW1lRm9ybWF0KCdhcicpLCAwKSBpcyBJbnRsCiBQQVNTIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCkuZm9ybWF0LmNhbGwoNSwgMCkgaXMgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKQog
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMubGVuZ3Ro
IGlzIDAKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
KCkgaXMgYW4gaW5zdGFuY2Ugb2YgT2JqZWN0CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1h
dCgpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyBuZXcgSW50bC5EYXRlVGltZUZv
cm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzIG5ldyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzIG5l
dyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVt
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLndl
ZWtkYXkgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVr
ZGF5CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygp
LmVyYSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmVyYQor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFy
IGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkueWVhcgorUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBp
cyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmRheSBpcyBu
ZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmRheQorUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIGlzIG5ldyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuaG91cgorUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIgaXMgbmV3IElu
dGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIGlzIG5ldyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubWludXRlCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCBpcyBuZXcg
SW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZAorUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUg
aXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5h
bWUKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkg
PT09IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIGlzIGZh
bHNlCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucy5j
YWxsKDUpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmpl
Y3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdC4KK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnJCcpIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBpbnZhbGlkIGxhbmd1YWdlIHRh
ZzogJC4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCBudWxsKSBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlv
bnMoKS53ZWVrZGF5IGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicp
LnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbnVtZXJpYycKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMgJ251bWVyaWMn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkueWVhciBp
cyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlv
bnMoKS5ob3VyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJl
c29sdmVkT3B0aW9ucygpLmhvdXIxMiBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUgaXMgdW5kZWZpbmVkCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIGlzIHVuZGVm
aW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lTmFtZSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IGxvY2FsZU1hdGNoZXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdub3BlJyB9IH0gfSkgdGhyZXcg
ZXhjZXB0aW9uIG5vcGUuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBsb2NhbGVN
YXRjaGVyOidiYWQnIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBsb2NhbGVNYXRjaGVy
IG11c3QgYmUgZWl0aGVyICJsb29rdXAiIG9yICJiZXN0IGZpdCIuCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBsb2NhbGVNYXRjaGVyOidsb29rdXAnIH0pIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hl
cjonYmVzdCBmaXQnIH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjogeyB0b1N0cmluZygpIHsgdGhyb3cgJ25v
cGUnIH0gfSB9KSB0aHJldyBleGNlcHRpb24gbm9wZS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2JhZCcgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJy
b3I6IGZvcm1hdE1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgImJhc2ljIiBvciAiYmVzdCBmaXQiLgor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjonYmFzaWMnIH0p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgZm9ybWF0TWF0Y2hlcjonYmVzdCBmaXQnIH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdub3doZXJlL2JvZ3Vz
JyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogaW52YWxpZCB0aW1lIHpvbmU6IG5vd2hl
cmUvYm9ndXMuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogeyB0
b1N0cmluZygpIHsgdGhyb3cgJ25vcGUnIH0gfSB9KSB0aHJldyBleGNlcHRpb24gbm9wZS4KK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnYW1lcmljYS9kZW52ZXIn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0RlbnZlcicKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQU1FUklDQS9MT1NfQU5HRUxF
UycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvTG9zX0FuZ2VsZXMn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNh
L0F0a2EnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0FkYWsnCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FtZXJpY2EvRW5zZW5h
ZGEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1RpanVhbmEnCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FtZXJpY2EvUG9ydG9f
QWNyZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvUmlvX0JyYW5j
bycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQW1lcmljYS9T
aGlwcm9jaycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvRGVudmVy
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbnRhcmN0aWNh
L1NvdXRoX1BvbGUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdQYWNpZmljL0F1
Y2tsYW5kJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lh
L0FzaGtoYWJhZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvQXNoZ2Fi
YXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvQ2hv
bmdxaW5nJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9TaGFuZ2hhaScK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9DaHVuZ2tp
bmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1NoYW5naGFpJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL0RhY2NhJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9EaGFrYScKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9IYXJiaW4nIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1NoYW5naGFpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL0thc2hnYXInIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdBc2lhL1VydW1xaScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnQXNpYS9NYWNhbycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
aXMgJ0FzaWEvTWFjYXUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ0FzaWEvVGVsX0F2aXYnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lh
L0plcnVzYWxlbScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
QXNpYS9UaGltYnUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1RoaW1w
aHUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvVWp1
bmdfUGFuZGFuZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvTWFrYXNz
YXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvVWxh
bl9CYXRvcicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvVWxhYW5iYWF0
YXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxp
YS9BQ1QnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBdXN0cmFsaWEvU3lkbmV5
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEv
Q2FuYmVycmEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBdXN0cmFsaWEvU3lk
bmV5JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFs
aWEvTEhJJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXVzdHJhbGlhL0xvcmRf
SG93ZScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJh
bGlhL05TVycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0F1c3RyYWxpYS9TeWRu
ZXknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxp
YS9Ob3J0aCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0F1c3RyYWxpYS9EYXJ3
aW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxp
YS9RdWVlbnNsYW5kJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXVzdHJhbGlh
L0JyaXNiYW5lJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
dXN0cmFsaWEvU291dGgnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBdXN0cmFs
aWEvQWRlbGFpZGUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J0F1c3RyYWxpYS9UYXNtYW5pYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0F1
c3RyYWxpYS9Ib2JhcnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ0F1c3RyYWxpYS9WaWN0b3JpYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0F1c3RyYWxpYS9NZWxib3VybmUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0F1c3RyYWxpYS9XZXN0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBp
cyAnQXVzdHJhbGlhL1BlcnRoJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBdXN0cmFsaWEvWWFuY293aW5uYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUgaXMgJ0F1c3RyYWxpYS9Ccm9rZW5fSGlsbCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnQnJhemlsL0FjcmUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdBbWVyaWNhL1Jpb19CcmFuY28nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0JyYXppbC9EZU5vcm9uaGEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdBbWVyaWNhL05vcm9uaGEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0JyYXppbC9FYXN0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSBpcyAnQW1lcmljYS9TYW9fUGF1bG8nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0JyYXppbC9XZXN0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBp
cyAnQW1lcmljYS9NYW5hdXMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0NhbmFkYS9BdGxhbnRpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0FtZXJpY2EvSGFsaWZheCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnQ2FuYWRhL0NlbnRyYWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdB
bWVyaWNhL1dpbm5pcGVnJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdDYW5hZGEvRWFzdC1TYXNrYXRjaGV3YW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdBbWVyaWNhL1JlZ2luYScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnQ2FuYWRhL0Vhc3Rlcm4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IGlzICdBbWVyaWNhL1Rvcm9udG8nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0NhbmFkYS9Nb3VudGFpbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
aXMgJ0FtZXJpY2EvRWRtb250b24nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0NhbmFkYS9OZXdmb3VuZGxhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdBbWVyaWNhL1N0X0pvaG5zJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdDYW5hZGEvUGFjaWZpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUgaXMgJ0FtZXJpY2EvVmFuY291dmVyJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdDYW5hZGEvU2Fza2F0Y2hld2FuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSBpcyAnQW1lcmljYS9SZWdpbmEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0NhbmFkYS9ZdWtvbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUgaXMgJ0FtZXJpY2EvV2hpdGVob3JzZScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnQ2hpbGUvQ29udGluZW50YWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdBbWVyaWNhL1NhbnRpYWdvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdDaGlsZS9FYXN0ZXJJc2xhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdQYWNpZmljL0Vhc3RlcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnQ3ViYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0FtZXJpY2EvSGF2YW5hJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdFZ3lwdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FmcmljYS9DYWly
bycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnRWlyZScgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9EdWJsaW4nCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0V1cm9wZS9CZWxmYXN0JyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnRXVyb3BlL0xvbmRvbicKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnRXVyb3BlL1RpcmFzcG9sJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnRXVyb3BlL0NoaXNpbmF1JworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHQicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0V1cm9wZS9Mb25kb24nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0dCLUVpcmUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdF
dXJvcGUvTG9uZG9uJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdHTVQrMCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1VUQycKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR01ULTAnIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0dNVDAnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dyZWVud2ljaCcg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1VUQycKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSG9uZ2tvbmcnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdBc2lhL0hvbmdfS29uZycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnSWNlbGFuZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
aXMgJ0F0bGFudGljL1JleWtqYXZpaycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnSXJhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEv
VGVocmFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdJc3Jh
ZWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL0plcnVzYWxlbScKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSmFtYWljYScgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvSmFtYWljYScKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSmFwYW4nIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIGlzICdBc2lhL1Rva3lvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdLd2FqYWxlaW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IGlzICdQYWNpZmljL0t3YWphbGVpbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnTGlieWEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBZnJp
Y2EvVHJpcG9saScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
TWV4aWNvL0JhamFOb3J0ZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJp
Y2EvVGlqdWFuYScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
TWV4aWNvL0JhamFTdXInIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNh
L01hemF0bGFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdN
ZXhpY28vR2VuZXJhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2Ev
TWV4aWNvX0NpdHknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J05aJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnUGFjaWZpYy9BdWNrbGFuZCcK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnTlotQ0hBVCcgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1BhY2lmaWMvQ2hhdGhhbScKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnTmF2YWpvJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9EZW52ZXInCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1BSQycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUgaXMgJ0FzaWEvU2hhbmdoYWknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ1BvbGFuZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9w
ZS9XYXJzYXcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1Bv
cnR1Z2FsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnRXVyb3BlL0xpc2JvbicK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnUk9DJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9UYWlwZWknCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1JPSycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0FzaWEvU2VvdWwnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ1NpbmdhcG9yZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0Fz
aWEvU2luZ2Fwb3JlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdUdXJrZXknIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdFdXJvcGUvSXN0YW5i
dWwnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VDVCcgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1VUQycKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvQWxhc2thJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSBpcyAnQW1lcmljYS9BbmNob3JhZ2UnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ1VTL0FsZXV0aWFuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSBpcyAnQW1lcmljYS9BZGFrJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdVUy9Bcml6b25hJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAn
QW1lcmljYS9QaG9lbml4JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdVUy9DZW50cmFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmlj
YS9DaGljYWdvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdV
Uy9FYXN0ZXJuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9OZXdf
WW9yaycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvSGF3
YWlpJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnUGFjaWZpYy9Ib25vbHVsdScK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvTWljaGlnYW4n
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0RldHJvaXQnCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL01vdW50YWluJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9EZW52ZXInCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL1BhY2lmaWMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0xvc19BbmdlbGVzJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9TYW1vYScgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUgaXMgJ1BhY2lmaWMvUGFnb19QYWdvJworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVVEMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J1VuaXZlcnNhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1VUQycKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVy1TVScgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9Nb3Njb3cnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1p1bHUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyLXNhJykucmVzb2x2ZWRP
cHRpb25zKCkubG9jYWxlIGlzICdhci1TQScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnYXIt
c2EnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaXNsYW1pYy11bWFscXVyYScKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnYXItc2EnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJp
bmdTeXN0ZW0gaXMgJ2FyYWInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBjYWxl
bmRhcjonZGFuZ2knIH0pLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdncmVnb3JpYW4n
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYm9ndXMnKS5yZXNvbHZlZE9wdGlv
bnMoKS5sb2NhbGUgaXMgJ2VuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJv
Z3VzJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2dyZWdvcmlhbicKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1idWRkaGlzdCcpLnJlc29sdmVkT3B0aW9ucygpLmxv
Y2FsZSBpcyAnZW4tdS1jYS1idWRkaGlzdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1jYS1idWRkaGlzdCcpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdidWRkaGlzdCcK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1jaGluZXNlJykucmVzb2x2ZWRPcHRp
b25zKCkuY2FsZW5kYXIgaXMgJ2NoaW5lc2UnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
LXUtY2EtY29wdGljJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2NvcHRpYycKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1kYW5naScpLnJlc29sdmVkT3B0aW9ucygp
LmNhbGVuZGFyIGlzICdkYW5naScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1l
dGhpb2FhJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2V0aGlvcGljLWFtZXRlLWFs
ZW0nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9waWMnKS5yZXNvbHZl
ZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnZXRoaW9waWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2FyLVNBLXUtY2EtZ3JlZ29yeScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdn
cmVnb3JpYW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaGVicmV3JykucmVz
b2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2hlYnJldycKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1jYS1pbmRpYW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaW5k
aWFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWMnKS5yZXNvbHZl
ZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaXNsYW1pYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4tdS1jYS1pc2xhbWljYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdpc2xh
bWljLWNpdmlsJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLUlTTzg2MDEnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaXNvODYwMScKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1jYS1qYXBhbmVzZScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlz
ICdqYXBhbmVzZScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1wZXJzaWFuJyku
cmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ3BlcnNpYW4nCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtY2Etcm9jJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ3Jv
YycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG51bWJlcmluZ1N5c3RlbTonZ3Vq
cicgfSkucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdsYXRuJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWJvZ3VzJykucmVzb2x2ZWRPcHRpb25zKCkubG9j
YWxlIGlzICdlbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ib2d1cycpLnJl
c29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGF0bicKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1udS1sYXRuJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lz
dGVtIGlzICdsYXRuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWFyYWInKS5y
ZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUgaXMgJ2VuLXUtbnUtYXJhYicKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1udS1hcmFiJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lz
dGVtIGlzICdhcmFiJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWFyYWJleHQn
KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2FyYWJleHQnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYmFsaScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSBpcyAnYmFsaScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1i
ZW5nJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdiZW5nJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWRldmEnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1i
ZXJpbmdTeXN0ZW0gaXMgJ2RldmEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
ZnVsbHdpZGUnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2Z1bGx3aWRl
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWd1anInKS5yZXNvbHZlZE9wdGlv
bnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2d1anInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtbnUtZ3VydScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnZ3Vy
dScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1oYW5pZGVjJykucmVzb2x2ZWRP
cHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdoYW5pZGVjJworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LW51LWtobXInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0g
aXMgJ2tobXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUta25kYScpLnJlc29s
dmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAna25kYScKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1udS1sYW9vJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVt
IGlzICdsYW9vJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxpbWInKS5yZXNv
bHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2xpbWInCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtbnUtbWx5bScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3Rl
bSBpcyAnbWx5bScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1tb25nJykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdtb25nJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LW51LW15bXInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0gaXMgJ215bXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtb3J5YScpLnJl
c29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnb3J5YScKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1udS10YW1sZGVjJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5n
U3lzdGVtIGlzICd0YW1sZGVjJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LXRl
bHUnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3RlbHUnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGhhaScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSBpcyAndGhhaScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10
aWJ0JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICd0aWJ0JworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTogeyB0b1N0cmluZygpIHsgdGhyb3cg
J3dlZWtkYXknIH0gfSB9KSB0aHJldyBleGNlcHRpb24gd2Vla2RheS4KK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J2ludmFsaWQnIH0pIHRocmV3IGV4Y2VwdGlvbiBS
YW5nZUVycm9yOiB3ZWVrZGF5IG11c3QgYmUgIm5hcnJvdyIsICJzaG9ydCIsIG9yICJsb25nIi4K
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6
J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkgaXMgdW5kZWZpbmVkCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5OiduYXJyb3cnLCBtb250aDonbnVt
ZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSBpcyAnbmFy
cm93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonc2hvcnQnLCBt
b250aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2Rh
eSBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5Oids
b25nJywgbW9udGg6J251bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygp
LndlZWtkYXkgaXMgJ2xvbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6
IHsgdG9TdHJpbmcoKSB7IHRocm93ICdlcmEnIH0gfSB9KSB0aHJldyBleGNlcHRpb24gZXJhLgor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduZXZlcicgfSkgdGhyZXcgZXhj
ZXB0aW9uIFJhbmdlRXJyb3I6IGVyYSBtdXN0IGJlICJuYXJyb3ciLCAic2hvcnQiLCBvciAibG9u
ZyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBo
b3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMgdW5kZWZpbmVkCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25hcnJvdycsIHllYXI6J251bWVyaWMn
IH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyAnbmFycm93JworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgZXJhOidzaG9ydCcsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0
aW9ucygpLmVyYSBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBl
cmE6J2xvbmcnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEgaXMgJ2xv
bmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB5ZWFyOiB7IHRvU3RyaW5nKCkg
eyB0aHJvdyAneWVhcicgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiB5ZWFyLgorUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgeWVhcjonbm9wZScgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdl
RXJyb3I6IHllYXIgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiLgorUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSku
cmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRp
b25zKCkueWVhciBpcyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IGVyYTonbmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciBp
cyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOiB7IHRv
U3RyaW5nKCkgeyB0aHJvdyAnbW9udGgnIH0gfSB9KSB0aHJldyBleGNlcHRpb24gbW9udGguCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDoyIH0pIHRocmV3IGV4Y2VwdGlv
biBSYW5nZUVycm9yOiBtb250aCBtdXN0IGJlICIyLWRpZ2l0IiwgIm51bWVyaWMiLCAibmFycm93
IiwgInNob3J0Iiwgb3IgImxvbmciLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
bWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9u
dGggaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDon
Mi1kaWdpdCcsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlzICcy
LWRpZ2l0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J251bWVyaWMn
LCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbnVtZXJpYycK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOiduYXJyb3cnLCB5ZWFyOidu
dW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbmFycm93JworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSku
cmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMgJ3Nob3J0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS5tb250aCBpcyAnbG9uZycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGRh
eTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ2RheScgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBkYXku
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBkYXk6JycgfSkgdGhyZXcgZXhjZXB0
aW9uIFJhbmdlRXJyb3I6IGRheSBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyIuCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1l
cmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonbG9uZycsIGRheTonMi1kaWdpdCcgfSkucmVzb2x2
ZWRPcHRpb25zKCkuZGF5IGlzICcyLWRpZ2l0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgbW9udGg6J2xvbmcnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRh
eSBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGhvdXI6IHsg
dG9TdHJpbmcoKSB7IHRocm93ICdob3VyJyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIGhvdXIuCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBob3VyOltdIH0pIHRocmV3IGV4Y2VwdGlv
biBSYW5nZUVycm9yOiBob3VyIG11c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmljIi4KK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIGlzIHVuZGVm
aW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0Jywg
aG91cjonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91ciBpcyAnbnVtZXJpYycKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmhvdXIgaXMgJ251bWVyaWMnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIGlzIHVuZGVmaW5l
ZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91
cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIGlzIHRydWUKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgncHQtQlInLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVy
aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiBpcyBmYWxzZQorUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgbWludXRlOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbWludXRlJyB9
IH0gfSkgdGhyZXcgZXhjZXB0aW9uIG1pbnV0ZS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1pbnV0ZTpudWxsIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBtaW51dGUg
bXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBpcyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonbnVtZXJpYycsIGhvdXI6J251bWVyaWMnIH0pLnJlc29s
dmVkT3B0aW9ucygpLm1pbnV0ZSBpcyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHNlY29uZDogeyB0b1N0cmluZygpIHsgdGhyb3cgJ3NlY29uZCcgfSB9IH0pIHRo
cmV3IGV4Y2VwdGlvbiBzZWNvbmQuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBz
ZWNvbmQ6J2JhZHZhbHVlJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogc2Vjb25kIG11
c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmljIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1lcmljJywgc2Vj
b25kOicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQgaXMgJzItZGlnaXQnCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidu
dW1lcmljJywgc2Vjb25kOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQgaXMg
JzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZU5hbWU6
IHsgdG9TdHJpbmcoKSB7IHRocm93ICd0aW1lWm9uZU5hbWUnIH0gfSB9KSB0aHJldyBleGNlcHRp
b24gdGltZVpvbmVOYW1lLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmVOYW1lOiduYW1lJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogdGltZVpvbmVOYW1l
IG11c3QgYmUgInNob3J0IiBvciAibG9uZyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JykucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycs
IHRpbWVab25lTmFtZTonc2hvcnQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSBp
cyAnc2hvcnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ3B0LUJSJywgeyBtaW51dGU6JzIt
ZGlnaXQnLCBob3VyOidudW1lcmljJywgdGltZVpvbmVOYW1lOidsb25nJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZU5hbWUgaXMgJ2xvbmcnCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2pzL3Njcmlw
dC10ZXN0cy9pbnRsLWRhdGV0aW1lZm9ybWF0LmpzIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRl
c3RzL2ludGwtZGF0ZXRpbWVmb3JtYXQuanMKaW5kZXggZWRlMWI1Y2UzNDZmZDI5MDUzMGIzNzM3
N2YwMGNhZTUwMzdlNjA3Zi4uM2E3NmMwMDhiMTdhNjA4YjUwMjQ4YzVmMzE3NTc2OTg0MmZiYTE4
OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwtZGF0ZXRpbWVm
b3JtYXQuanMKKysrIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwtZGF0ZXRpbWVm
b3JtYXQuanMKQEAgLTExOSw3ICsxMTksNyBAQCBzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZv
cm1hdC5wcm90b3R5cGUuZm9ybWF0KHsgdmFsdWVPZigpIHsgdGhyb3cgRXJyb3IoJzRiJwogLy8g
MTIuMy40IEZvcm1hdERhdGVUaW1lIGFic3RyYWN0IG9wZXJhdGlvbgogCiAvLyAxLiBJZiB4IGlz
IG5vdCBhIGZpbml0ZSBOdW1iZXIsIHRoZW4gdGhyb3cgYSBSYW5nZUVycm9yIGV4Y2VwdGlvbi4K
LXNob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoSW5maW5p
dHkpIiwgIidSYW5nZUVycm9yOiBkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVG
b3JtYXQuZm9ybWF0KCknIik7CitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90
b3R5cGUuZm9ybWF0KEluZmluaXR5KSIsICInUmFuZ2VFcnJvcjogZGF0ZSB2YWx1ZSBpcyBub3Qg
ZmluaXRlIGluIERhdGVUaW1lRm9ybWF0IGZvcm1hdCgpJyIpOwogCiAvLyBGb3JtYXQgaXMgYm91
bmQsIHNvIGNhbGxpbmcgd2l0aCBhbHRlcm5hdGUgInRoaXMiIGhhcyBubyBlZmZlY3QuCiBzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0LmNhbGwobnVsbCwgMCki
LCAiSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKSIpOwpAQCAtMTM2LDkgKzEzNiwyNzEg
QEAgc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9u
cy5sZW5ndGgiLCAiMCIpOwogLy8gUmV0dXJucyBhIG5ldyBvYmplY3Qgd2hvc2UgcHJvcGVydGll
cyBhbmQgYXR0cmlidXRlcyBhcmUgc2V0IGFzIGlmIGNvbnN0cnVjdGVkIGJ5IGFuIG9iamVjdCBs
aXRlcmFsLgogc2hvdWxkQmVUeXBlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNv
bHZlZE9wdGlvbnMoKSIsICJPYmplY3QiKTsKIAorLy8gVGhlIEludGwuRGF0ZVRpbWVGb3JtYXQg
cHJvdG90eXBlIG9iamVjdCBpcyBpdHNlbGYgYW4gJURhdGVUaW1lRm9ybWF0JSBpbnN0YW5jZSwg
d2hvc2UgaW50ZXJuYWwgc2xvdHMgYXJlIHNldCBhcyBpZiBpdCBoYWQgYmVlbiBjb25zdHJ1Y3Rl
ZCBieSB0aGUgZXhwcmVzc2lvbiBDb25zdHJ1Y3QoJURhdGVUaW1lRm9ybWF0JSkuCitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxl
IiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJl
c29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVz
b2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAibmV3IEludGwu
RGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS53
ZWVrZGF5IiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkud2Vl
a2RheSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucygpLmVyYSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9u
cygpLmVyYSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29s
dmVkT3B0aW9ucygpLnllYXIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9w
dGlvbnMoKS55ZWFyIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNv
bHZlZE9wdGlvbnMoKS5tb250aCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmRheSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgp
LnJlc29sdmVkT3B0aW9ucygpLmRheSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQu
cHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmhvdXIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3Jt
YXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgIm5ldyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIiwgIm5ldyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25k
IiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmVOYW1lIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmVOYW1lIik7CisKIC8vIFJldHVybnMgYSBuZXcgb2JqZWN0IGVhY2ggdGlt
ZS4KIHNob3VsZEJlRmFsc2UoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucygpID09PSBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlv
bnMoKSIpOwogCiAvLyBUaHJvd3Mgb24gbm9uLURhdGVUaW1lRm9ybWF0IHRoaXMuCiBzaG91bGRU
aHJvdygiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zLmNhbGwo
NSkiLCAiJ1R5cGVFcnJvcjogSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRP
cHRpb25zIGNhbGxlZCBvbiB2YWx1ZSB0aGF0XFwncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVk
IGFzIGEgRGF0ZVRpbWVGb3JtYXQnIik7CiAKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCckJykiLCAiJ1JhbmdlRXJyb3I6IGludmFsaWQgbGFuZ3VhZ2UgdGFnOiAkJyIpOworc2hv
dWxkTm90VGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgbnVsbCkiKTsKKworLy8gRGVm
YXVsdHMgdG8gbW9udGgsIGRheSwgeWVhci4KK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAidW5kZWZpbmVkIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEiLCAidW5k
ZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9w
dGlvbnMoKS5tb250aCIsICInbnVtZXJpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmRheSIsICInbnVtZXJpYyciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnllYXIiLCAiJ251
bWVyaWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9w
dGlvbnMoKS5ob3VyIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgInVuZGVmaW5lZCIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIiwg
InVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2
ZWRPcHRpb25zKCkuc2Vjb25kIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIiwgInVuZGVmaW5l
ZCIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxvY2FsZU1h
dGNoZXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdub3BlJyB9IH0gfSkiLCAiJ25vcGUnIik7Citz
aG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxvY2FsZU1hdGNoZXI6J2Jh
ZCcgfSkiLCAnXCdSYW5nZUVycm9yOiBsb2NhbGVNYXRjaGVyIG11c3QgYmUgZWl0aGVyICJsb29r
dXAiIG9yICJiZXN0IGZpdCJcJycpOworc2hvdWxkTm90VGhyb3coIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyBsb2NhbGVNYXRjaGVyOidsb29rdXAnIH0pIik7CitzaG91bGROb3RUaHJvdygi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxvY2FsZU1hdGNoZXI6J2Jlc3QgZml0JyB9KSIp
OworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNo
ZXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdub3BlJyB9IH0gfSkiLCAiJ25vcGUnIik7CitzaG91
bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2JhZCcg
fSkiLCAnXCdSYW5nZUVycm9yOiBmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0aGVyICJiYXNpYyIg
b3IgImJlc3QgZml0IlwnJyk7CitzaG91bGROb3RUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2Jhc2ljJyB9KSIpOworc2hvdWxkTm90VGhyb3coIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBmb3JtYXRNYXRjaGVyOidiZXN0IGZpdCcgfSkiKTsKKwor
c2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ25vd2hl
cmUvYm9ndXMnIH0pIiwgIidSYW5nZUVycm9yOiBpbnZhbGlkIHRpbWUgem9uZTogbm93aGVyZS9i
b2d1cyciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdub3BlJyB9IH0gfSkiLCAiJ25vcGUnIik7CisKKy8v
IFRpbWUgem9uZSBpcyBjYXNlIGluc2Vuc2l0aXZlLgorc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ2FtZXJpY2EvZGVudmVyJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9EZW52ZXInIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQU1FUklDQS9MT1NfQU5HRUxFUycgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvTG9zX0FuZ2VsZXMnIik7CisKKy8v
IERlZmF1bHQgdGltZSB6b25lIGlzIGEgdmFsaWQgY2Fub25pY2FsIHRpbWUgem9uZS4KK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6IEludGwuRGF0ZVRpbWVG
b3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSIsICJJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiKTsKKworLy8gVGltZSB6b25lIGlzIGNhbm9uaWNhbGl6ZWQgZm9yIG9ic29sZXRlIGxpbmtz
IGluIElBTkEgdHogYmFja3dhcmQgZmlsZS4KK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNhL0F0a2EnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidBbWVyaWNhL0FkYWsnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnQW1lcmljYS9FbnNlbmFkYScgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvVGlqdWFuYSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNhL1BvcnRvX0FjcmUnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1Jpb19CcmFuY28nIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQW1lcmljYS9TaGlwcm9j
aycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvRGVudmVyJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FudGFyY3Rp
Y2EvU291dGhfUG9sZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1BhY2lmaWMv
QXVja2xhbmQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnQXNpYS9Bc2hraGFiYWQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidB
c2lhL0FzaGdhYmF0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0FzaWEvQ2hvbmdxaW5nJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIs
ICInQXNpYS9TaGFuZ2hhaSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdBc2lhL0NodW5na2luZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0FzaWEvU2hhbmdoYWknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnQXNpYS9EYWNjYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0FzaWEvRGhha2EnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnQXNpYS9IYXJiaW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IiwgIidBc2lhL1NoYW5naGFpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0FzaWEvS2FzaGdhcicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0FzaWEvVXJ1bXFpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0FzaWEvTWFjYW8nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IiwgIidBc2lhL01hY2F1JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0FzaWEvVGVsX0F2aXYnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IiwgIidBc2lhL0plcnVzYWxlbSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdBc2lhL1RoaW1idScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0FzaWEvVGhpbXBodSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdBc2lhL1VqdW5nX1BhbmRhbmcnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIiwgIidBc2lhL01ha2Fzc2FyJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvVWxhbl9CYXRvcicgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUiLCAiJ0FzaWEvVWxhYW5iYWF0YXInIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL0FDVCcgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9TeWRuZXknIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL0NhbmJlcnJh
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXVzdHJhbGlhL1N5ZG5leSciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFs
aWEvTEhJJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXVzdHJhbGlhL0xvcmRf
SG93ZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdBdXN0cmFsaWEvTlNXJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXVzdHJh
bGlhL1N5ZG5leSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBdXN0cmFsaWEvTm9ydGgnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwg
IidBdXN0cmFsaWEvRGFyd2luJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9RdWVlbnNsYW5kJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSIsICInQXVzdHJhbGlhL0JyaXNiYW5lJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9Tb3V0aCcgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9BZGVsYWlkZSciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvVGFzbWFu
aWEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvSG9iYXJ0JyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3Ry
YWxpYS9WaWN0b3JpYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxp
YS9NZWxib3VybmUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnQXVzdHJhbGlhL1dlc3QnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwg
IidBdXN0cmFsaWEvUGVydGgnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1lhbmNvd2lubmEnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIiwgIidBdXN0cmFsaWEvQnJva2VuX0hpbGwnIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQnJhemlsL0FjcmUnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1Jpb19CcmFuY28nIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQnJhemlsL0RlTm9yb25oYScg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvTm9yb25oYSciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6aWwvRWFz
dCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvU2FvX1BhdWxvJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0JyYXpp
bC9XZXN0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9NYW5hdXMn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2Fu
YWRhL0F0bGFudGljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9I
YWxpZmF4JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ0NhbmFkYS9DZW50cmFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1l
cmljYS9XaW5uaXBlZyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdDYW5hZGEvRWFzdC1TYXNrYXRjaGV3YW4nIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIiwgIidBbWVyaWNhL1JlZ2luYSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvRWFzdGVybicgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvVG9yb250byciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvTW91bnRhaW4nIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0VkbW9udG9uJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9OZXdmb3VuZGxh
bmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1N0X0pvaG5zJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFk
YS9QYWNpZmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9WYW5j
b3V2ZXInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnQ2FuYWRhL1Nhc2thdGNoZXdhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAi
J0FtZXJpY2EvUmVnaW5hJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0NhbmFkYS9ZdWtvbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUi
LCAiJ0FtZXJpY2EvV2hpdGVob3JzZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdDaGlsZS9Db250aW5lbnRhbCcgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvU2FudGlhZ28nIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2hpbGUvRWFzdGVySXNsYW5kJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInUGFjaWZpYy9FYXN0ZXInIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ3ViYScgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvSGF2YW5hJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0VneXB0JyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSIsICInQWZyaWNhL0NhaXJvJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0VpcmUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidFdXJvcGUvRHVibGluJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0V1cm9wZS9CZWxmYXN0JyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSIsICInRXVyb3BlL0xvbmRvbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdFdXJvcGUvVGlyYXNwb2wnIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIiwgIidFdXJvcGUvQ2hpc2luYXUnIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR0InIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIiwgIidFdXJvcGUvTG9uZG9uJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dCLUVpcmUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidFdXJvcGUvTG9uZG9uJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dNVCswJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSIsICInVVRDJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0dNVC0wJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInVVRDJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dNVDAnIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidVVEMnIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR3JlZW53aWNoJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSIsICInVVRDJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0hvbmdrb25nJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSIsICInQXNpYS9Ib25nX0tvbmcnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnSWNlbGFuZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0F0bGFudGljL1JleWtqYXZpayciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdJcmFuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSIsICInQXNpYS9UZWhyYW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnSXNyYWVsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXNpYS9KZXJ1c2FsZW0nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnSmFtYWljYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0Ft
ZXJpY2EvSmFtYWljYSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdKYXBhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEv
VG9reW8nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnS3dhamFsZWluJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInUGFjaWZpYy9L
d2FqYWxlaW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnTGlieWEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBZnJpY2EvVHJp
cG9saSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdNZXhpY28vQmFqYU5vcnRlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1l
cmljYS9UaWp1YW5hJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ01leGljby9CYWphU3VyJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIs
ICInQW1lcmljYS9NYXphdGxhbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdNZXhpY28vR2VuZXJhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUiLCAiJ0FtZXJpY2EvTWV4aWNvX0NpdHknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnTlonIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIiwgIidQYWNpZmljL0F1Y2tsYW5kJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ05aLUNIQVQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIiwgIidQYWNpZmljL0NoYXRoYW0nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnTmF2YWpvJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSIsICInQW1lcmljYS9EZW52ZXInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnUFJDJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXNpYS9TaGFuZ2hhaSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdQb2xhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidFdXJv
cGUvV2Fyc2F3JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ1BvcnR1Z2FsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInRXVyb3Bl
L0xpc2JvbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdST0MnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL1RhaXBlaSci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdST0sn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL1Nlb3VsJyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1NpbmdhcG9yZScgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvU2luZ2Fwb3JlJyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1R1cmtleScgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0V1cm9wZS9Jc3RhbmJ1bCciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVQ1QnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIiwgIidVVEMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvQWxhc2thJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSIsICInQW1lcmljYS9BbmNob3JhZ2UnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvQWxldXRpYW4nIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIiwgIidBbWVyaWNhL0FkYWsnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvQXJpem9uYScgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvUGhvZW5peCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9DZW50cmFsJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9DaGljYWdvJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0Vhc3Rlcm4nIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL05ld19Zb3JrJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0hhd2FpaScgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUiLCAiJ1BhY2lmaWMvSG9ub2x1bHUnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvTWljaGlnYW4nIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0RldHJvaXQnIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvTW91bnRhaW4nIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0RlbnZlciciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9QYWNpZmljJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9Mb3NfQW5nZWxlcyciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9TYW1vYScg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1BhY2lmaWMvUGFnb19QYWdvJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VUQycgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1VUQyciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVbml2ZXJzYWwnIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIiwgIidVVEMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnVy1TVScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUi
LCAiJ0V1cm9wZS9Nb3Njb3cnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnWnVsdScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1VU
QyciKTsKKworLy8gR2V0cyBkZWZhdWx0IGNhbGVuZGFyIGFuZCBudW1iZXJpbmdTeXN0ZW0gZnJv
bSBsb2NhbGUuCitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnYXItc2EnKS5yZXNvbHZl
ZE9wdGlvbnMoKS5sb2NhbGUiLCAiJ2FyLVNBJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2FyLXNhJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMtdW1h
bHF1cmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnYXItc2EnKS5yZXNvbHZl
ZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2FyYWInIik7CisKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgY2FsZW5kYXI6J2RhbmdpJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS5jYWxlbmRhciIsICInZ3JlZ29yaWFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtY2EtYm9ndXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUiLCAiJ2VuJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYm9ndXMnKS5yZXNvbHZl
ZE9wdGlvbnMoKS5jYWxlbmRhciIsICInZ3JlZ29yaWFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYnVkZGhpc3QnKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUi
LCAiJ2VuLXUtY2EtYnVkZGhpc3QnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1jYS1idWRkaGlzdCcpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIididWRkaGlz
dCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWNoaW5lc2UnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInY2hpbmVzZSciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWNvcHRpYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVu
ZGFyIiwgIidjb3B0aWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1j
YS1kYW5naScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidkYW5naSciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWV0aGlvYWEnKS5yZXNvbHZlZE9wdGlv
bnMoKS5jYWxlbmRhciIsICInZXRoaW9waWMtYW1ldGUtYWxlbSciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWV0aGlvcGljJykucmVzb2x2ZWRPcHRpb25zKCkuY2Fs
ZW5kYXIiLCAiJ2V0aGlvcGljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Fy
LVNBLXUtY2EtZ3JlZ29yeScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidncmVnb3Jp
YW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1oZWJyZXcnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaGVicmV3JyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaW5kaWFuJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5k
YXIiLCAiJ2luZGlhbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNh
LWlzbGFtaWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYyciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWNjJykucmVzb2x2ZWRP
cHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMtY2l2aWwnIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4tdS1jYS1JU084NjAxJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5k
YXIiLCAiJ2lzbzg2MDEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1j
YS1qYXBhbmVzZScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidqYXBhbmVzZSciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLXBlcnNpYW4nKS5yZXNvbHZl
ZE9wdGlvbnMoKS5jYWxlbmRhciIsICIncGVyc2lhbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LWNhLXJvYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidy
b2MnIik7CisvLyBGSVhNRTogaHR0cHM6Ly9naXRodWIuY29tL3RjMzkvZWNtYTQwMi9pc3N1ZXMv
NTkKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWV0aGlvcGljLWFt
ZXRlLWFsZW0nKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInZXRoaW9hYSciKTsKKy8v
IHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWMtdW1hbHF1cmEn
KS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy11bWFscXVyYSciKTsKKy8v
IHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWMtdGJsYScpLnJl
c29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljLXRibGEnIik7CisvLyBzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljLWNpdmlsJykucmVzb2x2ZWRP
cHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMtY2l2aWwnIik7CisvLyBzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljLXJnc2EnKS5yZXNvbHZlZE9wdGlvbnMo
KS5jYWxlbmRhciIsICInaXNsYW1pYy1yZ3NhJyIpOworCitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IG51bWJlcmluZ1N5c3RlbTonZ3VqcicgfSkucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIiwgIidsYXRuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtbnUtYm9ndXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUiLCAiJ2VuJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYm9ndXMnKS5yZXNvbHZl
ZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xhdG4nIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4tdS1udS1sYXRuJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5n
U3lzdGVtIiwgIidsYXRuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
bnUtYXJhYicpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4tdS1udS1hcmFiJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYXJhYicpLnJlc29sdmVkT3B0
aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInYXJhYiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LW51LWFyYWJleHQnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdT
eXN0ZW0iLCAiJ2FyYWJleHQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1iYWxpJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidiYWxpJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYmVuZycpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInYmVuZyciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LW51LWRldmEnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdT
eXN0ZW0iLCAiJ2RldmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1u
dS1mdWxsd2lkZScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInZnVsbHdp
ZGUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ndWpyJykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidndWpyJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZ3VydScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSIsICInZ3VydSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LWhhbmlkZWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2hh
bmlkZWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1raG1yJyku
cmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidraG1yJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUta25kYScpLnJlc29sdmVkT3B0aW9ucygpLm51
bWJlcmluZ1N5c3RlbSIsICIna25kYSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LW51LWxhb28nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xh
b28nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1saW1iJykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidsaW1iJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbWx5bScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSIsICInbWx5bSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LW1vbmcnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ21vbmcn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1teW1yJykucmVzb2x2
ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidteW1yJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtb3J5YScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSIsICInb3J5YSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LXRhbWxkZWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ3RhbWxk
ZWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10ZWx1JykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIid0ZWx1JyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGhhaScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSIsICIndGhhaSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LXRpYnQnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ3RpYnQn
Iik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTog
eyB0b1N0cmluZygpIHsgdGhyb3cgJ3dlZWtkYXknIH0gfSB9KSIsICInd2Vla2RheSciKTsKK3No
b3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonaW52YWxpZCcg
fSkiLCAnXCdSYW5nZUVycm9yOiB3ZWVrZGF5IG11c3QgYmUgIm5hcnJvdyIsICJzaG9ydCIsIG9y
ICJsb25nIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0
ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXki
LCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdl
ZWtkYXk6J25hcnJvdycsIG1vbnRoOidudW1lcmljJywgZGF5OidudW1lcmljJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS53ZWVrZGF5IiwgIiduYXJyb3cnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J3Nob3J0JywgbW9udGg6J251bWVyaWMnLCBkYXk6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAiJ3Nob3J0JyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5Oidsb25nJywgbW9udGg6J251
bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAiJ2xv
bmcnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiB7
IHRvU3RyaW5nKCkgeyB0aHJvdyAnZXJhJyB9IH0gfSkiLCAiJ2VyYSciKTsKK3Nob3VsZFRocm93
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduZXZlcicgfSkiLCAnXCdSYW5nZUVy
cm9yOiBlcmEgbXVzdCBiZSAibmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciXCcnKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjon
bnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZGF5IiwgInVuZGVmaW5lZCIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25hcnJvdycsIHllYXI6J251bWVy
aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSIsICInbmFycm93JyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSku
cmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgIidzaG9ydCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgZXJhOidsb25nJywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRP
cHRpb25zKCkuZXJhIiwgIidsb25nJyIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHllYXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICd5ZWFyJyB9IH0gfSkiLCAi
J3llYXInIik7CitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHllYXI6
J25vcGUnIH0pIiwgJ1wnUmFuZ2VFcnJvcjogeWVhciBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVt
ZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6
JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIiwgInVu
ZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25h
cnJvdycsIHllYXI6JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnllYXIiLCAiJzItZGln
aXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93
JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciIsICInbnVtZXJpYyci
KTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDogeyB0
b1N0cmluZygpIHsgdGhyb3cgJ21vbnRoJyB9IH0gfSkiLCAiJ21vbnRoJyIpOworc2hvdWxkVGhy
b3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDoyIH0pIiwgJ1wnUmFuZ2VFcnJv
cjogbW9udGggbXVzdCBiZSAiMi1kaWdpdCIsICJudW1lcmljIiwgIm5hcnJvdyIsICJzaG9ydCIs
IG9yICJsb25nIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1p
bnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRo
IiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
b250aDonMi1kaWdpdCcsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRo
IiwgIicyLWRpZ2l0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
b250aDonbnVtZXJpYycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRo
IiwgIidudW1lcmljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
b250aDonbmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgi
LCAiJ25hcnJvdyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9u
dGg6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAi
J3Nob3J0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDon
bG9uZycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIiwgIidsb25n
JyIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGRheTogeyB0
b1N0cmluZygpIHsgdGhyb3cgJ2RheScgfSB9IH0pIiwgIidkYXknIik7CitzaG91bGRUaHJvdygi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGRheTonJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGRh
eSBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgZGF5OicyLWRpZ2l0JyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS5kYXkiLCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgZGF5OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS5kYXkiLCAiJ251bWVyaWMnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgaG91cjogeyB0b1N0cmluZygpIHsgdGhyb3cgJ2hvdXInIH0gfSB9KSIsICIn
aG91ciciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgaG91cjpb
XSB9KSIsICdcJ1JhbmdlRXJyb3I6IGhvdXIgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMi
XCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIiLCAiJ251bWVyaWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIiLCAiJ251bWVyaWMnIik7CisKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgInRydWUiKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdwdC1CUicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgImZhbHNlIik7CisKK3Nob3VsZFRo
cm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOiB7IHRvU3RyaW5nKCkgeyB0
aHJvdyAnbWludXRlJyB9IH0gfSkiLCAiJ21pbnV0ZSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOm51bGwgfSkiLCAnXCdSYW5nZUVycm9yOiBtaW51
dGUgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSIsICJ1bmRlZmluZWQi
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0
JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIiwgIicyLWRpZ2l0
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVy
aWMnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiLCAiJzItZGln
aXQnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgc2Vjb25k
OiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnc2Vjb25kJyB9IH0gfSkiLCAiJ3NlY29uZCciKTsKK3No
b3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgc2Vjb25kOidiYWR2YWx1ZScg
fSkiLCAnXCdSYW5nZUVycm9yOiBzZWNvbmQgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMi
XCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLnNlY29uZCIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbWludXRlOidudW1lcmljJywgaG91cjonbnVtZXJpYycsIHNlY29uZDonMi1kaWdp
dCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIiwgIicyLWRpZ2l0JyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1l
cmljJywgc2Vjb25kOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAiJzIt
ZGlnaXQnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmVOYW1lOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAndGltZVpvbmVOYW1lJyB9IH0gfSkiLCAi
J3RpbWVab25lTmFtZSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmVOYW1lOiduYW1lJyB9KSIsICdcJ1JhbmdlRXJyb3I6IHRpbWVab25lTmFtZSBt
dXN0IGJlICJzaG9ydCIgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIsICJ1bmRlZmluZWQiKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0Jywg
aG91cjonbnVtZXJpYycsIHRpbWVab25lTmFtZTonc2hvcnQnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lTmFtZSIsICInc2hvcnQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgncHQtQlInLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnLCB0aW1lWm9uZU5h
bWU6J2xvbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIsICInbG9uZyciKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>267522</attachid>
            <date>2015-12-16 18:58:03 -0800</date>
            <delta_ts>2015-12-18 07:18:05 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147603-20151216195724.patch</filename>
            <type>text/plain</type>
            <size>148671</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk0MTY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
ODFhNDVjNWNiYmNkMmJjZjc2MGQ5YmY3MGRhZTIzZmY2NGYzM2JmLi5lNGNkYjBlNjI0ZGU3YWE5
MTIxMjIyYmYxNGRhNjUyY2M3OGFiZDI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw4MCBAQAorMjAxNS0xNi0xMSAgQW5keSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVy
ZS5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQgYW5k
IHJlbGF0ZWQgYWJzdHJhY3Qgb3BlcmF0aW9ucy4KKyAgICAgICAgU3RvcmUgcmVzb2x2ZWQgb3B0
aW9ucyBhcyBlbnVtIHR5cGVzIHdoZXJlIHBvc3NpYmxlLgorICAgICAgICBVc2UgSUNVIGRhdGUg
cGF0dGVybiBnZW5lcmF0b3IgdG8gcmVzb2x2ZSBmb3JtYXR0aW5nIHN0eWxlcy4KKyAgICAgICAg
RGVmZXIgcGFydHMgb2YgSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0IHRoYXQgb25seSBhZmZlY3Qg
Zm9ybWF0KCkuCisgICAgICAgIFRlbXBvcmFyaWx5IGRpc2FibGUgSU5UTCBvbiBXaW5kb3dzLCB1
bnRpbCBJQ1UgaXMgdXBkYXRlZCB0byBpbmNsdWRlZCB1bnVtc3lzLgorCisgICAgICAgICogaWN1
L3VuaWNvZGUvdWRhdHBnLmg6IEFkZGVkLgorICAgICAgICAqIHJ1bnRpbWUvQ29tbW9uSWRlbnRp
ZmllcnMuaDoKKyAgICAgICAgKiBydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5jcHA6CisgICAg
ICAgIChKU0M6OmRlZmF1bHRUaW1lWm9uZSk6CisgICAgICAgIChKU0M6OmNhbm9uaWNhbGl6ZVRp
bWVab25lTmFtZSk6CisgICAgICAgIChKU0M6OmxvY2FsZURhdGEpOgorICAgICAgICAoSlNDOjpz
dHJpbmdUb0NhbGVuZGFyVHlwZSk6CisgICAgICAgIChKU0M6OnRvRGF0ZVRpbWVPcHRpb25zKToK
KyAgICAgICAgKEpTQzo6c2V0Rm9ybWF0c0Zyb21QYXR0ZXJuKToKKyAgICAgICAgKEpTQzo6aW5p
dGlhbGl6ZURhdGVUaW1lRm9ybWF0KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0
RnVuY0Zvcm1hdERhdGVUaW1lKToKKyAgICAgICAgKiBydW50aW1lL0ludGxEYXRlVGltZUZvcm1h
dC5oOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmluaXRpYWxpemVkSW50bE9i
amVjdCk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0SW5pdGlhbGl6ZWRJ
bnRsT2JqZWN0KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojppbml0aWFsaXpl
ZERhdGVUaW1lRm9ybWF0KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRJ
bml0aWFsaXplZERhdGVUaW1lRm9ybWF0KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9y
bWF0Ojpsb2NhbGUpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldExvY2Fs
ZSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6Y2FsZW5kYXIpOgorICAgICAg
ICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldENhbGVuZGFyKToKKyAgICAgICAgKEpTQzo6
SW50bERhdGVUaW1lRm9ybWF0OjpudW1iZXJpbmdTeXN0ZW0pOgorICAgICAgICAoSlNDOjpJbnRs
RGF0ZVRpbWVGb3JtYXQ6OnNldE51bWJlcmluZ1N5c3RlbSk6CisgICAgICAgIChKU0M6OkludGxE
YXRlVGltZUZvcm1hdDo6dGltZVpvbmUpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3Jt
YXQ6OnNldFRpbWVab25lKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojpob3Vy
MTIpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEhvdXIxMik6CisgICAg
ICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6d2Vla2RheSk6CisgICAgICAgIChKU0M6Oklu
dGxEYXRlVGltZUZvcm1hdDo6c2V0V2Vla2RheSk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGlt
ZUZvcm1hdDo6ZXJhKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRFcmEp
OgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnllYXIpOgorICAgICAgICAoSlND
OjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldFllYXIpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRp
bWVGb3JtYXQ6Om1vbnRoKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRN
b250aCk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6ZGF5KToKKyAgICAgICAg
KEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXREYXkpOgorICAgICAgICAoSlNDOjpJbnRsRGF0
ZVRpbWVGb3JtYXQ6OmhvdXIpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNl
dEhvdXIpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6Om1pbnV0ZSk6CisgICAg
ICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6c2V0TWludXRlKToKKyAgICAgICAgKEpTQzo6
SW50bERhdGVUaW1lRm9ybWF0OjpzZWNvbmQpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVG
b3JtYXQ6OnNldFNlY29uZCk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6dGlt
ZVpvbmVOYW1lKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRUaW1lWm9u
ZU5hbWUpOgorICAgICAgICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3Iu
Y3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RJbnRsRGF0ZVRpbWVGb3JtYXQpOgorICAgICAg
ICAoSlNDOjpjYWxsSW50bERhdGVUaW1lRm9ybWF0KToKKyAgICAgICAgKiBydW50aW1lL0ludGxE
YXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZv
cm1hdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24pOgorICAgICAgICAoSlNDOjpjYWxlbmRhclR5
cGVUb1N0cmluZyk6CisgICAgICAgIChKU0M6OndlZWtkYXlTdHlsZVRvU3RyaW5nKToKKyAgICAg
ICAgKEpTQzo6ZXJhU3R5bGVUb1N0cmluZyk6CisgICAgICAgIChKU0M6OnllYXJTdHlsZVRvU3Ry
aW5nKToKKyAgICAgICAgKEpTQzo6bW9udGhTdHlsZVRvU3RyaW5nKToKKyAgICAgICAgKEpTQzo6
ZGF5U3R5bGVUb1N0cmluZyk6CisgICAgICAgIChKU0M6OmhvdXJTdHlsZVRvU3RyaW5nKToKKyAg
ICAgICAgKEpTQzo6bWludXRlU3R5bGVUb1N0cmluZyk6CisgICAgICAgIChKU0M6OnNlY29uZFN0
eWxlVG9TdHJpbmcpOgorICAgICAgICAoSlNDOjp0aW1lWm9uZU5hbWVTdHlsZVRvU3RyaW5nKToK
KyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlR2V0dGVyRm9ybWF0KToK
KyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlRnVuY1Jlc29sdmVkT3B0
aW9ucyk6CisgICAgICAgICogcnVudGltZS9JbnRsT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6
cmVzb2x2ZUxvY2FsZSk6CisKIDIwMTUtMTItMTYgIEZpbGlwIFBpemxvICA8ZnBpemxvQGFwcGxl
LmNvbT4KIAogICAgICAgICBXb3JrIGFyb3VuZCBhIGJ1ZyBpbiBMTFZNIGJ5IGZsaXBwaW5nIHRo
ZSB1bmlmaWNhdGlvbiBvcmRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2lj
dS91bmljb2RlL3VkYXRwZy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ljdS91bmljb2RlL3Vk
YXRwZy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjNkYzdlODlmMmRmYjY0MDIyMGYzNTcwODgzNThiNmQ5YzU3OGVi
MGUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUv
dWRhdHBnLmgKQEAgLTAsMCArMSw1ODYgQEAKKy8qCisqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisq
CisqICAgQ29weXJpZ2h0IChDKSAyMDA3LTIwMTAsIEludGVybmF0aW9uYWwgQnVzaW5lc3MgTWFj
aGluZXMKKyogICBDb3Jwb3JhdGlvbiBhbmQgb3RoZXJzLiAgQWxsIFJpZ2h0cyBSZXNlcnZlZC4K
KyoKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioKKyogICBmaWxlIG5hbWU6ICB1ZGF0cGcuaAorKiAg
IGVuY29kaW5nOiAgIFVTLUFTQ0lJCisqICAgdGFiIHNpemU6ICAgOCAobm90IHVzZWQpCisqICAg
aW5kZW50YXRpb246NAorKgorKiAgIGNyZWF0ZWQgb246IDIwMDdqdWwzMAorKiAgIGNyZWF0ZWQg
Ynk6IE1hcmt1cyBXLiBTY2hlcmVyCisqLworCisjaWZuZGVmIF9fVURBVFBHX0hfXworI2RlZmlu
ZSBfX1VEQVRQR19IX18KKworI2luY2x1ZGUgInVuaWNvZGUvdXR5cGVzLmgiCisjaW5jbHVkZSAi
dW5pY29kZS91ZW51bS5oIgorI2luY2x1ZGUgInVuaWNvZGUvbG9jYWxwb2ludGVyLmgiCisKKy8q
KgorICogXGZpbGUKKyAqIFxicmllZiBDIEFQSTogV3JhcHBlciBmb3IgRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yICh1bmljb2RlL2R0cHRuZ2VuLmgpLgorICoKKyAqIFVEYXRlVGltZVBhdHRlcm5H
ZW5lcmF0b3IgcHJvdmlkZXMgZmxleGlibGUgZ2VuZXJhdGlvbiBvZiBkYXRlIGZvcm1hdCBwYXR0
ZXJucywgCisgKiBsaWtlICJ5eS1NTS1kZCIuIFRoZSB1c2VyIGNhbiBidWlsZCB1cCB0aGUgZ2Vu
ZXJhdG9yIGJ5IGFkZGluZyBzdWNjZXNzaXZlIAorICogcGF0dGVybnMuIE9uY2UgdGhhdCBpcyBk
b25lLCBhIHF1ZXJ5IGNhbiBiZSBtYWRlIHVzaW5nIGEgInNrZWxldG9uIiwgd2hpY2ggaXMgCisg
KiBhIHBhdHRlcm4gd2hpY2gganVzdCBpbmNsdWRlcyB0aGUgZGVzaXJlZCBmaWVsZHMgYW5kIGxl
bmd0aHMuIFRoZSBnZW5lcmF0b3IgCisgKiB3aWxsIHJldHVybiB0aGUgImJlc3QgZml0IiBwYXR0
ZXJuIGNvcnJlc3BvbmRpbmcgdG8gdGhhdCBza2VsZXRvbi4KKyAqIDxwPlRoZSBtYWluIG1ldGhv
ZCBwZW9wbGUgd2lsbCB1c2UgaXMgdWRhdHBnX2dldEJlc3RQYXR0ZXJuLCBzaW5jZSBub3JtYWxs
eQorICogVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciBpcyBwcmUtYnVpbHQgd2l0aCBkYXRhIGZy
b20gYSBwYXJ0aWN1bGFyIGxvY2FsZS4gCisgKiBIb3dldmVyLCBnZW5lcmF0b3JzIGNhbiBiZSBi
dWlsdCBkaXJlY3RseSBmcm9tIG90aGVyIGRhdGEgYXMgd2VsbC4KKyAqIDxwPjxpPklzc3VlOiBt
YXkgYmUgdXNlZnVsIHRvIGFsc28gaGF2ZSBhIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyB0aGUgbGlz
dCBvZiAKKyAqIGZpZWxkcyBpbiBhIHBhdHRlcm4sIGluIG9yZGVyLCBzaW5jZSB3ZSBoYXZlIHRo
YXQgaW50ZXJuYWxseS4KKyAqIFRoYXQgd291bGQgYmUgdXNlZnVsIGZvciBnZXR0aW5nIHRoZSBV
SSBvcmRlciBvZiBmaWVsZCBlbGVtZW50cy48L2k+CisgKi8KKworLyoqCisgKiBPcGFxdWUgdHlw
ZSBmb3IgYSBkYXRlL3RpbWUgcGF0dGVybiBnZW5lcmF0b3Igb2JqZWN0LgorICogQHN0YWJsZSBJ
Q1UgMy44CisgKi8KK3R5cGVkZWYgdm9pZCAqVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvcjsKKwor
LyoqCisgKiBGaWVsZCBudW1iZXIgY29uc3RhbnRzIGZvciB1ZGF0cGdfZ2V0QXBwZW5kSXRlbUZv
cm1hdHMoKSBhbmQgc2ltaWxhciBmdW5jdGlvbnMuCisgKiBUaGVzZSBjb25zdGFudHMgYXJlIHNl
cGFyYXRlIGZyb20gVURhdGVGb3JtYXRGaWVsZCBkZXNwaXRlIHNlbWFudGljIG92ZXJsYXAKKyAq
IGJlY2F1c2Ugc29tZSBmaWVsZHMgYXJlIG1lcmdlZCBmb3IgdGhlIGRhdGUvdGltZSBwYXR0ZXJu
IGdlbmVyYXRvci4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCit0eXBlZGVmIGVudW0gVURhdGVU
aW1lUGF0dGVybkZpZWxkIHsKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBH
X0VSQV9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX1lFQVJf
RklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19RVUFSVEVSX0ZJ
RUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfTU9OVEhfRklFTEQs
CisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19XRUVLX09GX1lFQVJfRklF
TEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19XRUVLX09GX01PTlRI
X0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfV0VFS0RBWV9G
SUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0RBWV9PRl9ZRUFS
X0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfREFZX09GX1dF
RUtfSU5fTU9OVEhfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQ
R19EQVlfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19EQVlQ
RVJJT0RfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19IT1VS
X0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfTUlOVVRFX0ZJ
RUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfU0VDT05EX0ZJRUxE
LAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfRlJBQ1RJT05BTF9TRUNP
TkRfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19aT05FX0ZJ
RUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfRklFTERfQ09VTlQK
K30gVURhdGVUaW1lUGF0dGVybkZpZWxkOworCisvKioKKyAqIE1hc2tzIHRvIGNvbnRyb2wgZm9y
Y2luZyB0aGUgbGVuZ3RoIG9mIHNwZWNpZmllZCBmaWVsZHMgaW4gdGhlIHJldHVybmVkCisgKiBw
YXR0ZXJuIHRvIG1hdGNoIHRob3NlIGluIHRoZSBza2VsZXRvbiAod2hlbiB0aGlzIHdvdWxkIG5v
dCBoYXBwZW4KKyAqIG90aGVyd2lzZSkuIFRoZXNlIG1heSBiZSBjb21iaW5lZCB0byBmb3JjZSB0
aGUgbGVuZ3RoIG9mIG11bHRpcGxlIGZpZWxkcy4KKyAqIFVzZWQgd2l0aCB1ZGF0cGdfZ2V0QmVz
dFBhdHRlcm5XaXRoT3B0aW9ucywgdWRhdHBnX3JlcGxhY2VGaWVsZFR5cGVzV2l0aE9wdGlvbnMu
CisgKiBAc3RhYmxlIElDVSA0LjQKKyAqLwordHlwZWRlZiBlbnVtIFVEYXRlVGltZVBhdHRlcm5N
YXRjaE9wdGlvbnMgeworICAgIC8qKiBAc3RhYmxlIElDVSA0LjQgKi8KKyAgICBVREFUUEdfTUFU
Q0hfTk9fT1BUSU9OUyA9IDAsCisgICAgLyoqIEBzdGFibGUgSUNVIDQuNCAqLworICAgIFVEQVRQ
R19NQVRDSF9IT1VSX0ZJRUxEX0xFTkdUSCA9IDEgPDwgVURBVFBHX0hPVVJfRklFTEQsCisgICAg
LyoqIEBpbnRlcm5hbCBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX01JTlVURV9GSUVMRF9M
RU5HVEggPSAxIDw8IFVEQVRQR19NSU5VVEVfRklFTEQsCisgICAgLyoqIEBpbnRlcm5hbCBJQ1Ug
NC40ICovCisgICAgVURBVFBHX01BVENIX1NFQ09ORF9GSUVMRF9MRU5HVEggPSAxIDw8IFVEQVRQ
R19TRUNPTkRfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDQuNCAqLworICAgIFVEQVRQR19N
QVRDSF9BTExfRklFTERTX0xFTkdUSCA9ICgxIDw8IFVEQVRQR19GSUVMRF9DT1VOVCkgLSAxCit9
IFVEYXRlVGltZVBhdHRlcm5NYXRjaE9wdGlvbnM7CisKKy8qKgorICogU3RhdHVzIHJldHVybiB2
YWx1ZXMgZnJvbSB1ZGF0cGdfYWRkUGF0dGVybigpLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8K
K3R5cGVkZWYgZW51bSBVRGF0ZVRpbWVQYXR0ZXJuQ29uZmxpY3QgeworICAgIC8qKiBAc3RhYmxl
IElDVSAzLjggKi8KKyAgICBVREFUUEdfTk9fQ09ORkxJQ1QsCisgICAgLyoqIEBzdGFibGUgSUNV
IDMuOCAqLworICAgIFVEQVRQR19CQVNFX0NPTkZMSUNULAorICAgIC8qKiBAc3RhYmxlIElDVSAz
LjggKi8KKyAgICBVREFUUEdfQ09ORkxJQ1QsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLwor
ICAgIFVEQVRQR19DT05GTElDVF9DT1VOVAorfSBVRGF0ZVRpbWVQYXR0ZXJuQ29uZmxpY3Q7CisK
Ky8qKgorICAqIE9wZW4gYSBnZW5lcmF0b3IgYWNjb3JkaW5nIHRvIGEgZ2l2ZW4gbG9jYWxlLgor
ICAqIEBwYXJhbSBsb2NhbGUKKyAgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhl
IFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICAqICAgICAgICAgICAgICAg
ICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICAqIEByZXR1cm4gYSBwb2lu
dGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgICogQHN0YWJsZSBJQ1UgMy44Cisg
ICovCitVX1NUQUJMRSBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICogVV9FWFBPUlQyCit1ZGF0
cGdfb3Blbihjb25zdCBjaGFyICpsb2NhbGUsIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisv
KioKKyAgKiBPcGVuIGFuIGVtcHR5IGdlbmVyYXRvciwgdG8gYmUgY29uc3RydWN0ZWQgd2l0aCB1
ZGF0cGdfYWRkUGF0dGVybiguLi4pIGV0Yy4KKyAgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50
ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICAqICAgICAg
ICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICAqIEByZXR1
cm4gYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgICogQHN0YWJsZSBJ
Q1UgMy44CisgICovCitVX1NUQUJMRSBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICogVV9FWFBP
UlQyCit1ZGF0cGdfb3BlbkVtcHR5KFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAg
KiBDbG9zZSBhIGdlbmVyYXRvci4KKyAgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVU
aW1lUGF0dGVybkdlbmVyYXRvci4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxF
IHZvaWQgVV9FWFBPUlQyCit1ZGF0cGdfY2xvc2UoVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAq
ZHRwZyk7CisKKyNpZiBVX1NIT1dfQ1BMVVNQTFVTX0FQSQorCitVX05BTUVTUEFDRV9CRUdJTgor
CisvKioKKyAqIFxjbGFzcyBMb2NhbFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3JQb2ludGVyCisg
KiAiU21hcnQgcG9pbnRlciIgY2xhc3MsIGNsb3NlcyBhIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0
b3IgdmlhIHVkYXRwZ19jbG9zZSgpLgorICogRm9yIG1vc3QgbWV0aG9kcyBzZWUgdGhlIExvY2Fs
UG9pbnRlckJhc2UgYmFzZSBjbGFzcy4KKyAqCisgKiBAc2VlIExvY2FsUG9pbnRlckJhc2UKKyAq
IEBzZWUgTG9jYWxQb2ludGVyCisgKiBAc3RhYmxlIElDVSA0LjQKKyAqLworVV9ERUZJTkVfTE9D
QUxfT1BFTl9QT0lOVEVSKExvY2FsVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvclBvaW50ZXIsIFVE
YXRlVGltZVBhdHRlcm5HZW5lcmF0b3IsIHVkYXRwZ19jbG9zZSk7CisKK1VfTkFNRVNQQUNFX0VO
RAorCisjZW5kaWYKKworLyoqCisgICogQ3JlYXRlIGEgY29weSBwZiBhIGdlbmVyYXRvci4KKyAg
KiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciB0byBi
ZSBjb3BpZWQuCisgICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JD
b2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAgKiAgICAgICAgICAgICAgICAgICBmYWls
dXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAgKiBAcmV0dXJuIGEgcG9pbnRlciB0byBh
IG5ldyBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBzdGFibGUgSUNVIDMuOAorICov
CitVX1NUQUJMRSBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICogVV9FWFBPUlQyCit1ZGF0cGdf
Y2xvbmUoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywgVUVycm9yQ29kZSAq
cEVycm9yQ29kZSk7CisKKy8qKgorICogR2V0IHRoZSBiZXN0IHBhdHRlcm4gbWF0Y2hpbmcgdGhl
IGlucHV0IHNrZWxldG9uLiBJdCBpcyBndWFyYW50ZWVkIHRvCisgKiBoYXZlIGFsbCBvZiB0aGUg
ZmllbGRzIGluIHRoZSBza2VsZXRvbi4KKyAqIAorICogTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24g
dXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOgorICogSXQgdXNlcyBh
IHN0YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdoaWNoIGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0
b3Igb2JqZWN0LAorICogcmF0aGVyIHRoYW4gY3JlYXRpbmcgb25lIGZvciBlYWNoIGZ1bmN0aW9u
IGNhbGwuCisgKiBDb25zZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1bmN0aW9uIGRvIG5vdCBhZmZl
Y3QgZWFjaCBvdGhlciwKKyAqIGJ1dCB0aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1
cnJlbnRseSBvbiBhIHNpbmdsZSBnZW5lcmF0b3Igb2JqZWN0LgorICogCisgKiBAcGFyYW0gZHRw
ZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBza2Vs
ZXRvbgorICogICAgICAgICAgICBUaGUgc2tlbGV0b24gaXMgYSBwYXR0ZXJuIGNvbnRhaW5pbmcg
b25seSB0aGUgdmFyaWFibGUgZmllbGRzLgorICogICAgICAgICAgICBGb3IgZXhhbXBsZSwgIk1N
TWRkIiBhbmQgIm1taGgiIGFyZSBza2VsZXRvbnMuCisgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5n
dGggb2Ygc2tlbGV0b24KKyAqIEBwYXJhbSBiZXN0UGF0dGVybgorICogICAgICAgICAgICBUaGUg
YmVzdCBwYXR0ZXJuIGZvdW5kIGZyb20gdGhlIGdpdmVuIHNrZWxldG9uLgorICogQHBhcmFtIGNh
cGFjaXR5IHRoZSBjYXBhY2l0eSBvZiBiZXN0UGF0dGVybi4KKyAqIEBwYXJhbSBwRXJyb3JDb2Rl
IGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisg
KiAgICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAq
IEByZXR1cm4gdGhlIGxlbmd0aCBvZiBiZXN0UGF0dGVybi4KKyAqIEBzdGFibGUgSUNVIDMuOAor
ICovCitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRhdHBnX2dldEJlc3RQYXR0ZXJuKFVE
YXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgY29u
c3QgVUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IGxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAg
ICBVQ2hhciAqYmVzdFBhdHRlcm4sIGludDMyX3QgY2FwYWNpdHksCisgICAgICAgICAgICAgICAg
ICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICogR2V0IHRoZSBiZXN0IHBh
dHRlcm4gbWF0Y2hpbmcgdGhlIGlucHV0IHNrZWxldG9uLiBJdCBpcyBndWFyYW50ZWVkIHRvCisg
KiBoYXZlIGFsbCBvZiB0aGUgZmllbGRzIGluIHRoZSBza2VsZXRvbi4KKyAqIAorICogTm90ZSB0
aGF0IHRoaXMgZnVuY3Rpb24gdXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yOgorICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdoaWNoIGlzIHNldCB1
cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICogcmF0aGVyIHRoYW4gY3JlYXRpbmcgb25l
IGZvciBlYWNoIGZ1bmN0aW9uIGNhbGwuCisgKiBDb25zZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1
bmN0aW9uIGRvIG5vdCBhZmZlY3QgZWFjaCBvdGhlciwKKyAqIGJ1dCB0aGlzIGZ1bmN0aW9uIGNh
bm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmdsZSBnZW5lcmF0b3Igb2JqZWN0Lgor
ICogCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ci4KKyAqIEBwYXJhbSBza2VsZXRvbgorICogICAgICAgICAgICBUaGUgc2tlbGV0b24gaXMgYSBw
YXR0ZXJuIGNvbnRhaW5pbmcgb25seSB0aGUgdmFyaWFibGUgZmllbGRzLgorICogICAgICAgICAg
ICBGb3IgZXhhbXBsZSwgIk1NTWRkIiBhbmQgIm1taGgiIGFyZSBza2VsZXRvbnMuCisgKiBAcGFy
YW0gbGVuZ3RoIHRoZSBsZW5ndGggb2Ygc2tlbGV0b24KKyAqIEBwYXJhbSBvcHRpb25zCisgKiAg
ICAgICAgICAgIE9wdGlvbnMgZm9yIGZvcmNpbmcgdGhlIGxlbmd0aCBvZiBzcGVjaWZpZWQgZmll
bGRzIGluIHRoZQorICogICAgICAgICAgICByZXR1cm5lZCBwYXR0ZXJuIHRvIG1hdGNoIHRob3Nl
IGluIHRoZSBza2VsZXRvbiAod2hlbiB0aGlzCisgKiAgICAgICAgICAgIHdvdWxkIG5vdCBoYXBw
ZW4gb3RoZXJ3aXNlKS4gRm9yIGRlZmF1bHQgYmVoYXZpb3IsIHVzZQorICogICAgICAgICAgICBV
REFUUEdfTUFUQ0hfTk9fT1BUSU9OUy4KKyAqIEBwYXJhbSBiZXN0UGF0dGVybgorICogICAgICAg
ICAgICBUaGUgYmVzdCBwYXR0ZXJuIGZvdW5kIGZyb20gdGhlIGdpdmVuIHNrZWxldG9uLgorICog
QHBhcmFtIGNhcGFjaXR5CisgKiAgICAgICAgICAgIHRoZSBjYXBhY2l0eSBvZiBiZXN0UGF0dGVy
bi4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlCisgKiAgICAgICAgICAgIGEgcG9pbnRlciB0byB0aGUg
VUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAgICAgIGZhaWx1
cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGJl
c3RQYXR0ZXJuLgorICogQHN0YWJsZSBJQ1UgNC40CisgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9F
WFBPUlQyCit1ZGF0cGdfZ2V0QmVzdFBhdHRlcm5XaXRoT3B0aW9ucyhVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
VUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IGxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5NYXRjaE9wdGlvbnMgb3B0aW9ucywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFVDaGFyICpiZXN0UGF0dGVybiwgaW50MzJfdCBjYXBh
Y2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVFcnJvckNvZGUgKnBFcnJv
ckNvZGUpOworCisvKioKKyAgKiBHZXQgYSB1bmlxdWUgc2tlbGV0b24gZnJvbSBhIGdpdmVuIHBh
dHRlcm4uIEZvciBleGFtcGxlLAorICAqIGJvdGggIk1NTS1kZCIgYW5kICJkZC9NTU0iIHByb2R1
Y2UgdGhlIHNrZWxldG9uICJNTU1kZCIuCisgICogCisgICogTm90ZSB0aGF0IHRoaXMgZnVuY3Rp
b24gdXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOgorICAqIEl0IHVz
ZXMgYSBzdGF0ZWZ1bCBwYXR0ZXJuIHBhcnNlciB3aGljaCBpcyBzZXQgdXAgZm9yIGVhY2ggZ2Vu
ZXJhdG9yIG9iamVjdCwKKyAgKiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVu
Y3Rpb24gY2FsbC4KKyAgKiBDb25zZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1bmN0aW9uIGRvIG5v
dCBhZmZlY3QgZWFjaCBvdGhlciwKKyAgKiBidXQgdGhpcyBmdW5jdGlvbiBjYW5ub3QgYmUgdXNl
ZCBjb25jdXJyZW50bHkgb24gYSBzaW5nbGUgZ2VuZXJhdG9yIG9iamVjdC4KKyAgKgorICAqIEBw
YXJhbSBkdHBnICAgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAg
KiBAcGFyYW0gcGF0dGVybiAgaW5wdXQgcGF0dGVybiwgc3VjaCBhcyAiZGQvTU1NIi4KKyAgKiBA
cGFyYW0gbGVuZ3RoICAgdGhlIGxlbmd0aCBvZiBwYXR0ZXJuLgorICAqIEBwYXJhbSBza2VsZXRv
biBzdWNoIGFzICJNTU1kZCIKKyAgKiBAcGFyYW0gY2FwYWNpdHkgdGhlIGNhcGFjaXR5IG9mIHNr
ZWxldG9uLgorICAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29k
ZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgICogICAgICAgICAgICAgICAgICBmYWlsdXJl
IGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAgKiBAcmV0dXJuIHRoZSBsZW5ndGggb2Ygc2tl
bGV0b24uCisgICogQHN0YWJsZSBJQ1UgMy44CisgICovCitVX1NUQUJMRSBpbnQzMl90IFVfRVhQ
T1JUMgordWRhdHBnX2dldFNrZWxldG9uKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcs
CisgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMyX3QgbGVuZ3Ro
LAorICAgICAgICAgICAgICAgICAgIFVDaGFyICpza2VsZXRvbiwgaW50MzJfdCBjYXBhY2l0eSwK
KyAgICAgICAgICAgICAgICAgICBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBH
ZXQgYSB1bmlxdWUgYmFzZSBza2VsZXRvbiBmcm9tIGEgZ2l2ZW4gcGF0dGVybi4gVGhpcyBpcyB0
aGUgc2FtZQorICogYXMgdGhlIHNrZWxldG9uLCBleGNlcHQgdGhhdCBkaWZmZXJlbmNlcyBpbiBs
ZW5ndGggYXJlIG1pbmltaXplZCBzbworICogYXMgdG8gb25seSBwcmVzZXJ2ZSB0aGUgZGlmZmVy
ZW5jZSBiZXR3ZWVuIHN0cmluZyBhbmQgbnVtZXJpYyBmb3JtLiBTbworICogZm9yIGV4YW1wbGUs
IGJvdGggIk1NTS1kZCIgYW5kICJkL01NTSIgcHJvZHVjZSB0aGUgc2tlbGV0b24gIk1NTWQiCisg
KiAobm90aWNlIHRoZSBzaW5nbGUgZCkuCisgKgorICogTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24g
dXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOgorICogSXQgdXNlcyBh
IHN0YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdoaWNoIGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0
b3Igb2JqZWN0LAorICogcmF0aGVyIHRoYW4gY3JlYXRpbmcgb25lIGZvciBlYWNoIGZ1bmN0aW9u
IGNhbGwuCisgKiBDb25zZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1bmN0aW9uIGRvIG5vdCBhZmZl
Y3QgZWFjaCBvdGhlciwKKyAqIGJ1dCB0aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1
cnJlbnRseSBvbiBhIHNpbmdsZSBnZW5lcmF0b3Igb2JqZWN0LgorICoKKyAqIEBwYXJhbSBkdHBn
ICAgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBw
YXR0ZXJuICBpbnB1dCBwYXR0ZXJuLCBzdWNoIGFzICJkZC9NTU0iLgorICogQHBhcmFtIGxlbmd0
aCAgIHRoZSBsZW5ndGggb2YgcGF0dGVybi4KKyAqIEBwYXJhbSBiYXNlU2tlbGV0b24gc3VjaCBh
cyAiTWQiCisgKiBAcGFyYW0gY2FwYWNpdHkgdGhlIGNhcGFjaXR5IG9mIGJhc2Ugc2tlbGV0b24u
CisgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2gg
bXVzdCBub3QgaW5kaWNhdGUgYQorICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0
aGUgZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1cm4gdGhlIGxlbmd0aCBvZiBiYXNlU2tlbGV0b24u
CisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3Vk
YXRwZ19nZXRCYXNlU2tlbGV0b24oVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMyX3QgbGVuZ3Ro
LAorICAgICAgICAgICAgICAgICAgICAgICBVQ2hhciAqYmFzZVNrZWxldG9uLCBpbnQzMl90IGNh
cGFjaXR5LAorICAgICAgICAgICAgICAgICAgICAgICBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsK
KworLyoqCisgKiBBZGRzIGEgcGF0dGVybiB0byB0aGUgZ2VuZXJhdG9yLiBJZiB0aGUgcGF0dGVy
biBoYXMgdGhlIHNhbWUgc2tlbGV0b24gYXMKKyAqIGFuIGV4aXN0aW5nIHBhdHRlcm4sIGFuZCB0
aGUgb3ZlcnJpZGUgcGFyYW1ldGVyIGlzIHNldCwgdGhlbiB0aGUgcHJldmlvdXMKKyAqIHZhbHVl
IGlzIG92ZXJyaWRlbi4gT3RoZXJ3aXNlLCB0aGUgcHJldmlvdXMgdmFsdWUgaXMgcmV0YWluZWQu
IEluIGVpdGhlcgorICogY2FzZSwgdGhlIGNvbmZsaWN0aW5nIHN0YXR1cyBpcyBzZXQgYW5kIHBy
ZXZpb3VzIHZhbGUgaXMgc3RvcmVkIGluIAorICogY29uZmxpY3RpbmcgcGF0dGVybi4KKyAqIDxw
PgorICogTm90ZSB0aGF0IHNpbmdsZS1maWVsZCBwYXR0ZXJucyAobGlrZSAiTU1NIikgYXJlIGF1
dG9tYXRpY2FsbHkgYWRkZWQsIGFuZAorICogZG9uJ3QgbmVlZCB0byBiZSBhZGRlZCBleHBsaWNp
dGx5IQorICoKKyAqIEBwYXJhbSBkdHBnICAgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVy
bkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwYXR0ZXJuICBpbnB1dCBwYXR0ZXJuLCBzdWNoIGFzICJk
ZC9NTU0iCisgKiBAcGFyYW0gcGF0dGVybkxlbmd0aCB0aGUgbGVuZ3RoIG9mIHBhdHRlcm4uCisg
KiBAcGFyYW0gb3ZlcnJpZGUgIFdoZW4gZXhpc3RpbmcgdmFsdWVzIGFyZSB0byBiZSBvdmVycmlk
ZGVuIHVzZSB0cnVlLCAKKyAqICAgICAgICAgICAgICAgICAgb3RoZXJ3aXNlIHVzZSBmYWxzZS4K
KyAqIEBwYXJhbSBjb25mbGljdGluZ1BhdHRlcm4gIFByZXZpb3VzIHBhdHRlcm4gd2l0aCB0aGUg
c2FtZSBza2VsZXRvbi4KKyAqIEBwYXJhbSBjYXBhY2l0eSB0aGUgY2FwYWNpdHkgb2YgY29uZmxp
Y3RpbmdQYXR0ZXJuLgorICogQHBhcmFtIHBMZW5ndGggYSBwb2ludGVyIHRvIHRoZSBsZW5ndGgg
b2YgY29uZmxpY3RpbmdQYXR0ZXJuLgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRv
IHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAg
ICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0dXJuIGNvbmZs
aWN0aW5nIHN0YXR1cy4gVGhlIHZhbHVlIGNvdWxkIGJlIFVEQVRQR19OT19DT05GTElDVCwgCisg
KiAgICAgICAgICAgICAgICAgIFVEQVRQR19CQVNFX0NPTkZMSUNUIG9yIFVEQVRQR19DT05GTElD
VC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBVRGF0ZVRpbWVQYXR0ZXJuQ29u
ZmxpY3QgVV9FWFBPUlQyCit1ZGF0cGdfYWRkUGF0dGVybihVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMy
X3QgcGF0dGVybkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgIFVCb29sIG92ZXJyaWRlLAorICAg
ICAgICAgICAgICAgICAgVUNoYXIgKmNvbmZsaWN0aW5nUGF0dGVybiwgaW50MzJfdCBjYXBhY2l0
eSwgaW50MzJfdCAqcExlbmd0aCwKKyAgICAgICAgICAgICAgICAgIFVFcnJvckNvZGUgKnBFcnJv
ckNvZGUpOworCisvKioKKyAgKiBBbiBBcHBlbmRJdGVtIGZvcm1hdCBpcyBhIHBhdHRlcm4gdXNl
ZCB0byBhcHBlbmQgYSBmaWVsZCBpZiB0aGVyZSBpcyBubworICAqIGdvb2QgbWF0Y2guIEZvciBl
eGFtcGxlLCBzdXBwb3NlIHRoYXQgdGhlIGlucHV0IHNrZWxldG9uIGlzICJHeXl5eU1NTWQiLAor
ICAqIGFuZCB0aGVyZSBpcyBubyBtYXRjaGluZyBwYXR0ZXJuIGludGVybmFsbHksIGJ1dCB0aGVy
ZSBpcyBhIHBhdHRlcm4KKyAgKiBtYXRjaGluZyAieXl5eU1NTWQiLCBzYXkgImQtTU0teXl5eSIu
IFRoZW4gdGhhdCBwYXR0ZXJuIGlzIHVzZWQsIHBsdXMgdGhlCisgICogRy4gVGhlIHdheSB0aGVz
ZSB0d28gYXJlIGNvbmpvaW5lZCBpcyBieSB1c2luZyB0aGUgQXBwZW5kSXRlbUZvcm1hdCBmb3Ig
RworICAqIChlcmEpLiBTbyBpZiB0aGF0IHZhbHVlIGlzLCBzYXkgInswfSwgezF9IiB0aGVuIHRo
ZSBmaW5hbCByZXN1bHRpbmcKKyAgKiBwYXR0ZXJuIGlzICJkLU1NLXl5eXksIEciLgorICAqIDxw
PgorICAqIFRoZXJlIGFyZSBhY3R1YWxseSB0aHJlZSBhdmFpbGFibGUgdmFyaWFibGVzOiB7MH0g
aXMgdGhlIHBhdHRlcm4gc28gZmFyLAorICAqIHsxfSBpcyB0aGUgZWxlbWVudCB3ZSBhcmUgYWRk
aW5nLCBhbmQgezJ9IGlzIHRoZSBuYW1lIG9mIHRoZSBlbGVtZW50LgorICAqIDxwPgorICAqIFRo
aXMgcmVmbGVjdHMgdGhlIHdheSB0aGF0IHRoZSBDTERSIGRhdGEgaXMgb3JnYW5pemVkLgorICAq
CisgICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ci4KKyAgKiBAcGFyYW0gZmllbGQgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCwgc3VjaCBhcyBVREFU
UEdfRVJBX0ZJRUxECisgICogQHBhcmFtIHZhbHVlICBwYXR0ZXJuLCBzdWNoIGFzICJ7MH0sIHsx
fSIKKyAgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGggb2YgdmFsdWUuCisgICogQHN0YWJsZSBJ
Q1UgMy44CisgICovCitVX1NUQUJMRSB2b2lkIFVfRVhQT1JUMgordWRhdHBnX3NldEFwcGVuZEl0
ZW1Gb3JtYXQoVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCBmaWVsZCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IFVDaGFyICp2YWx1ZSwgaW50MzJfdCBsZW5ndGgpOworCisvKioK
KyAqIEdldHRlciBjb3JyZXNwb25kaW5nIHRvIHNldEFwcGVuZEl0ZW1Gb3JtYXQuIFZhbHVlcyBi
ZWxvdyAwIG9yIGF0IG9yCisgKiBhYm92ZSBVREFUUEdfRklFTERfQ09VTlQgYXJlIGlsbGVnYWwg
YXJndW1lbnRzLgorICoKKyAqIEBwYXJhbSBkdHBnICAgQSBwb2ludGVyIHRvIFVEYXRlVGltZVBh
dHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gZmllbGQgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCwg
c3VjaCBhcyBVREFUUEdfRVJBX0ZJRUxECisgKiBAcGFyYW0gcExlbmd0aCBBIHBvaW50ZXIgdGhh
dCB3aWxsIHJlY2VpdmUgdGhlIGxlbmd0aCBvZiBhcHBlbmRJdGVtRm9ybWF0LgorICogQHJldHVy
biBhcHBlbmRJdGVtRm9ybWF0IGZvciBmaWVsZC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitV
X1NUQUJMRSBjb25zdCBVQ2hhciAqIFVfRVhQT1JUMgordWRhdHBnX2dldEFwcGVuZEl0ZW1Gb3Jt
YXQoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCBmaWVsZCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludDMyX3QgKnBMZW5ndGgpOworCisvKioKKyAgICogU2V0IHRoZSBuYW1l
IG9mIGZpZWxkLCBlZyAiZXJhIiBpbiBFbmdsaXNoIGZvciBFUkEuIFRoZXNlIGFyZSBvbmx5Cisg
ICAqIHVzZWQgaWYgdGhlIGNvcnJlc3BvbmRpbmcgQXBwZW5kSXRlbUZvcm1hdCBpcyB1c2VkLCBh
bmQgaWYgaXQgY29udGFpbnMgYQorICAgKiB7Mn0gdmFyaWFibGUuCisgICAqIDxwPgorICAgKiBU
aGlzIHJlZmxlY3RzIHRoZSB3YXkgdGhhdCB0aGUgQ0xEUiBkYXRhIGlzIG9yZ2FuaXplZC4KKyAg
ICoKKyAgICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVy
YXRvci4KKyAgICogQHBhcmFtIGZpZWxkICBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQKKyAgICogQHBh
cmFtIHZhbHVlICBuYW1lIGZvciB0aGUgZmllbGQuCisgICAqIEBwYXJhbSBsZW5ndGggdGhlIGxl
bmd0aCBvZiB2YWx1ZS4KKyAgICogQHN0YWJsZSBJQ1UgMy44CisgICAqLworVV9TVEFCTEUgdm9p
ZCBVX0VYUE9SVDIKK3VkYXRwZ19zZXRBcHBlbmRJdGVtTmFtZShVRGF0ZVRpbWVQYXR0ZXJuR2Vu
ZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5G
aWVsZCBmaWVsZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqdmFsdWUs
IGludDMyX3QgbGVuZ3RoKTsKKworLyoqCisgKiBHZXR0ZXIgY29ycmVzcG9uZGluZyB0byBzZXRB
cHBlbmRJdGVtTmFtZXMuIFZhbHVlcyBiZWxvdyAwIG9yIGF0IG9yIGFib3ZlCisgKiBVREFUUEdf
RklFTERfQ09VTlQgYXJlIGlsbGVnYWwgYXJndW1lbnRzLgorICoKKyAqIEBwYXJhbSBkdHBnICAg
YSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gZmllbGQg
IFVEYXRlVGltZVBhdHRlcm5GaWVsZCwgc3VjaCBhcyBVREFUUEdfRVJBX0ZJRUxECisgKiBAcGFy
YW0gcExlbmd0aCBBIHBvaW50ZXIgdGhhdCB3aWxsIHJlY2VpdmUgdGhlIGxlbmd0aCBvZiB0aGUg
bmFtZSBmb3IgZmllbGQuCisgKiBAcmV0dXJuIG5hbWUgZm9yIGZpZWxkCisgKiBAc3RhYmxlIElD
VSAzLjgKKyAqLworVV9TVEFCTEUgY29uc3QgVUNoYXIgKiBVX0VYUE9SVDIKK3VkYXRwZ19nZXRB
cHBlbmRJdGVtTmFtZShjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAg
ICAgICAgICAgICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCBmaWVsZCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICBpbnQzMl90ICpwTGVuZ3RoKTsKKworLyoqCisgKiBUaGUgZGF0
ZSB0aW1lIGZvcm1hdCBpcyBhIG1lc3NhZ2UgZm9ybWF0IHBhdHRlcm4gdXNlZCB0byBjb21wb3Nl
IGRhdGUgYW5kCisgKiB0aW1lIHBhdHRlcm5zLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyAiezB9IHsx
fSIsIHdoZXJlIHswfSB3aWxsIGJlIHJlcGxhY2VkCisgKiBieSB0aGUgZGF0ZSBwYXR0ZXJuIGFu
ZCB7MX0gd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgdGltZSBwYXR0ZXJuLgorICogPHA+CisgKiBU
aGlzIGlzIHVzZWQgd2hlbiB0aGUgaW5wdXQgc2tlbGV0b24gY29udGFpbnMgYm90aCBkYXRlIGFu
ZCB0aW1lIGZpZWxkcywKKyAqIGJ1dCB0aGVyZSBpcyBub3QgYSBjbG9zZSBtYXRjaCBhbW9uZyB0
aGUgYWRkZWQgcGF0dGVybnMuIEZvciBleGFtcGxlLAorICogc3VwcG9zZSB0aGF0IHRoaXMgb2Jq
ZWN0IHdhcyBjcmVhdGVkIGJ5IGFkZGluZyAiZGQtTU1NIiBhbmQgImhoOm1tIiwgYW5kCisgKiBp
dHMgZGF0ZXRpbWVGb3JtYXQgaXMgdGhlIGRlZmF1bHQgInswfSB7MX0iLiBUaGVuIGlmIHRoZSBp
bnB1dCBza2VsZXRvbgorICogaXMgIk1NTWRobW0iLCB0aGVyZSBpcyBub3QgYW4gZXhhY3QgbWF0
Y2gsIHNvIHRoZSBpbnB1dCBza2VsZXRvbiBpcworICogYnJva2VuIHVwIGludG8gdHdvIGNvbXBv
bmVudHMgIk1NTWQiIGFuZCAiaG1tIi4gVGhlcmUgYXJlIGNsb3NlIG1hdGNoZXMKKyAqIGZvciB0
aG9zZSB0d28gc2tlbGV0b25zLCBzbyB0aGUgcmVzdWx0IGlzIHB1dCB0b2dldGhlciB3aXRoIHRo
aXMgcGF0dGVybiwKKyAqIHJlc3VsdGluZyBpbiAiZC1NTU0gaDptbSIuCisgKgorICogQHBhcmFt
IGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0g
ZHRGb3JtYXQKKyAqICAgICAgICAgICAgbWVzc2FnZSBmb3JtYXQgcGF0dGVybiwgaGVyZSB7MH0g
d2lsbCBiZSByZXBsYWNlZCBieSB0aGUgZGF0ZQorICogICAgICAgICAgICBwYXR0ZXJuIGFuZCB7
MX0gd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgdGltZSBwYXR0ZXJuLgorICogQHBhcmFtIGxlbmd0
aCB0aGUgbGVuZ3RoIG9mIGR0Rm9ybWF0LgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RB
QkxFIHZvaWQgVV9FWFBPUlQyCit1ZGF0cGdfc2V0RGF0ZVRpbWVGb3JtYXQoY29uc3QgVURhdGVU
aW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBVQ2hhciAqZHRGb3JtYXQsIGludDMyX3QgbGVuZ3RoKTsKKworLyoqCisgKiBHZXR0ZXIgY29y
cmVzcG9uZGluZyB0byBzZXREYXRlVGltZUZvcm1hdC4KKyAqIEBwYXJhbSBkdHBnICAgYSBwb2lu
dGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gcExlbmd0aCBBIHBv
aW50ZXIgdGhhdCB3aWxsIHJlY2VpdmUgdGhlIGxlbmd0aCBvZiB0aGUgZm9ybWF0CisgKiBAcmV0
dXJuIGRhdGVUaW1lRm9ybWF0LgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNv
bnN0IFVDaGFyICogVV9FWFBPUlQyCit1ZGF0cGdfZ2V0RGF0ZVRpbWVGb3JtYXQoY29uc3QgVURh
dGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICAgICBp
bnQzMl90ICpwTGVuZ3RoKTsKKworLyoqCisgKiBUaGUgZGVjaW1hbCB2YWx1ZSBpcyB1c2VkIGlu
IGZvcm1hdHRpbmcgZnJhY3Rpb25zIG9mIHNlY29uZHMuIElmIHRoZQorICogc2tlbGV0b24gY29u
dGFpbnMgZnJhY3Rpb25hbCBzZWNvbmRzLCB0aGVuIHRoaXMgaXMgdXNlZCB3aXRoIHRoZQorICog
ZnJhY3Rpb25hbCBzZWNvbmRzLiBGb3IgZXhhbXBsZSwgc3VwcG9zZSB0aGF0IHRoZSBpbnB1dCBw
YXR0ZXJuIGlzCisgKiAiaGhtbXNzU1NTUyIsIGFuZCB0aGUgYmVzdCBtYXRjaGluZyBwYXR0ZXJu
IGludGVybmFsbHkgaXMgIkg6bW06c3MiLCBhbmQKKyAqIHRoZSBkZWNpbWFsIHN0cmluZyBpcyAi
LCIuIFRoZW4gdGhlIHJlc3VsdGluZyBwYXR0ZXJuIGlzIG1vZGlmaWVkIHRvIGJlCisgKiAiSDpt
bTpzcyxTU1NTIgorICoKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0
ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIGRlY2ltYWwKKyAqIEBwYXJhbSBsZW5ndGggdGhlIGxl
bmd0aCBvZiBkZWNpbWFsLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIHZvaWQg
VV9FWFBPUlQyCit1ZGF0cGdfc2V0RGVjaW1hbChVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpk
dHBnLAorICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKmRlY2ltYWwsIGludDMyX3QgbGVu
Z3RoKTsKKworLyoqCisgKiBHZXR0ZXIgY29ycmVzcG9uZGluZyB0byBzZXREZWNpbWFsLgorICog
CisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4K
KyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwgcmVjZWl2ZSB0aGUgbGVuZ3Ro
IG9mIHRoZSBkZWNpbWFsIHN0cmluZy4KKyAqIEByZXR1cm4gY29ycmVzcG9uZGluZyB0byB0aGUg
ZGVjaW1hbCBwb2ludC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBjb25zdCBV
Q2hhciAqIFVfRVhQT1JUMgordWRhdHBnX2dldERlY2ltYWwoY29uc3QgVURhdGVUaW1lUGF0dGVy
bkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBMZW5ndGgpOwor
CisvKioKKyAqIEFkanVzdHMgdGhlIGZpZWxkIHR5cGVzICh3aWR0aCBhbmQgc3VidHlwZSkgb2Yg
YSBwYXR0ZXJuIHRvIG1hdGNoIHdoYXQgaXMKKyAqIGluIGEgc2tlbGV0b24uIFRoYXQgaXMsIGlm
IHlvdSBzdXBwbHkgYSBwYXR0ZXJuIGxpa2UgImQtTSBIOm0iLCBhbmQgYQorICogc2tlbGV0b24g
b2YgIk1NTU1kZGhobW0iLCB0aGVuIHRoZSBpbnB1dCBwYXR0ZXJuIGlzIGFkanVzdGVkIHRvIGJl
CisgKiAiZGQtTU1NTSBoaDptbSIuIFRoaXMgaXMgdXNlZCBpbnRlcm5hbGx5IHRvIGdldCB0aGUg
YmVzdCBtYXRjaCBmb3IgdGhlCisgKiBpbnB1dCBza2VsZXRvbiwgYnV0IGNhbiBhbHNvIGJlIHVz
ZWQgZXh0ZXJuYWxseS4KKyAqCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9u
LWNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwg
cGF0dGVybiBwYXJzZXIgd2hpY2ggaXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3Qs
CisgKiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAq
IENvbnNlY3V0aXZlIGNhbGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90
aGVyLAorICogYnV0IHRoaXMgZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9u
IGEgc2luZ2xlIGdlbmVyYXRvciBvYmplY3QuCisgKgorICogQHBhcmFtIGR0cGcgYSBwb2ludGVy
IHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gcGF0dGVybiBJbnB1dCBw
YXR0ZXJuCisgKiBAcGFyYW0gcGF0dGVybkxlbmd0aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHBhdHRl
cm4uCisgKiBAcGFyYW0gc2tlbGV0b24KKyAqIEBwYXJhbSBza2VsZXRvbkxlbmd0aCB0aGUgbGVu
Z3RoIG9mIGlucHV0IHNrZWxldG9uLgorICogQHBhcmFtIGRlc3QgIHBhdHRlcm4gYWRqdXN0ZWQg
dG8gbWF0Y2ggdGhlIHNrZWxldG9uIGZpZWxkcyB3aWR0aHMgYW5kIHN1YnR5cGVzLgorICogQHBh
cmFtIGRlc3RDYXBhY2l0eSB0aGUgY2FwYWNpdHkgb2YgZGVzdC4KKyAqIEBwYXJhbSBwRXJyb3JD
b2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBh
CisgKiAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgor
ICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGRlc3QuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLwor
VV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3VkYXRwZ19yZXBsYWNlRmllbGRUeXBlcyhVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IFVDaGFyICpwYXR0ZXJuLCBpbnQzMl90IHBhdHRlcm5MZW5ndGgsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IHNrZWxldG9uTGVuZ3Ro
LAorICAgICAgICAgICAgICAgICAgICAgICAgIFVDaGFyICpkZXN0LCBpbnQzMl90IGRlc3RDYXBh
Y2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsK
KworLyoqCisgKiBBZGp1c3RzIHRoZSBmaWVsZCB0eXBlcyAod2lkdGggYW5kIHN1YnR5cGUpIG9m
IGEgcGF0dGVybiB0byBtYXRjaCB3aGF0IGlzCisgKiBpbiBhIHNrZWxldG9uLiBUaGF0IGlzLCBp
ZiB5b3Ugc3VwcGx5IGEgcGF0dGVybiBsaWtlICJkLU0gSDptIiwgYW5kIGEKKyAqIHNrZWxldG9u
IG9mICJNTU1NZGRoaG1tIiwgdGhlbiB0aGUgaW5wdXQgcGF0dGVybiBpcyBhZGp1c3RlZCB0byBi
ZQorICogImRkLU1NTU0gaGg6bW0iLiBUaGlzIGlzIHVzZWQgaW50ZXJuYWxseSB0byBnZXQgdGhl
IGJlc3QgbWF0Y2ggZm9yIHRoZQorICogaW5wdXQgc2tlbGV0b24sIGJ1dCBjYW4gYWxzbyBiZSB1
c2VkIGV4dGVybmFsbHkuCisgKgorICogTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gdXNlcyBhIG5v
bi1jb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOgorICogSXQgdXNlcyBhIHN0YXRlZnVs
IHBhdHRlcm4gcGFyc2VyIHdoaWNoIGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0
LAorICogcmF0aGVyIHRoYW4gY3JlYXRpbmcgb25lIGZvciBlYWNoIGZ1bmN0aW9uIGNhbGwuCisg
KiBDb25zZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1bmN0aW9uIGRvIG5vdCBhZmZlY3QgZWFjaCBv
dGhlciwKKyAqIGJ1dCB0aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBv
biBhIHNpbmdsZSBnZW5lcmF0b3Igb2JqZWN0LgorICoKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRl
ciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBhdHRlcm4gSW5wdXQg
cGF0dGVybgorICogQHBhcmFtIHBhdHRlcm5MZW5ndGggdGhlIGxlbmd0aCBvZiBpbnB1dCBwYXR0
ZXJuLgorICogQHBhcmFtIHNrZWxldG9uCisgKiBAcGFyYW0gc2tlbGV0b25MZW5ndGggdGhlIGxl
bmd0aCBvZiBpbnB1dCBza2VsZXRvbi4KKyAqIEBwYXJhbSBvcHRpb25zCisgKiAgICAgICAgICAg
IE9wdGlvbnMgY29udHJvbGxpbmcgd2hldGhlciB0aGUgbGVuZ3RoIG9mIHNwZWNpZmllZCBmaWVs
ZHMgaW4gdGhlCisgKiAgICAgICAgICAgIHBhdHRlcm4gYXJlIGFkanVzdGVkIHRvIG1hdGNoIHRo
b3NlIGluIHRoZSBza2VsZXRvbiAod2hlbiB0aGlzCisgKiAgICAgICAgICAgIHdvdWxkIG5vdCBo
YXBwZW4gb3RoZXJ3aXNlKS4gRm9yIGRlZmF1bHQgYmVoYXZpb3IsIHVzZQorICogICAgICAgICAg
ICBVREFUUEdfTUFUQ0hfTk9fT1BUSU9OUy4KKyAqIEBwYXJhbSBkZXN0ICBwYXR0ZXJuIGFkanVz
dGVkIHRvIG1hdGNoIHRoZSBza2VsZXRvbiBmaWVsZHMgd2lkdGhzIGFuZCBzdWJ0eXBlcy4KKyAq
IEBwYXJhbSBkZXN0Q2FwYWNpdHkgdGhlIGNhcGFjaXR5IG9mIGRlc3QuCisgKiBAcGFyYW0gcEVy
cm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNh
dGUgYQorICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2Fs
bC4KKyAqIEByZXR1cm4gdGhlIGxlbmd0aCBvZiBkZXN0LgorICogQHN0YWJsZSBJQ1UgNC40Cisg
Ki8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQyCit1ZGF0cGdfcmVwbGFjZUZpZWxkVHlwZXNX
aXRoT3B0aW9ucyhVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMyX3QgcGF0
dGVybkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVD
aGFyICpza2VsZXRvbiwgaW50MzJfdCBza2VsZXRvbkxlbmd0aCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5NYXRjaE9wdGlvbnMgb3B0aW9ucywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVDaGFyICpkZXN0LCBpbnQzMl90
IGRlc3RDYXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVFcnJv
ckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIFJldHVybiBhIFVFbnVtZXJhdGlvbiBsaXN0
IG9mIGFsbCB0aGUgc2tlbGV0b25zIGluIGNhbm9uaWNhbCBmb3JtLgorICogQ2FsbCB1ZGF0cGdf
Z2V0UGF0dGVybkZvclNrZWxldG9uKCkgdG8gZ2V0IHRoZSBjb3JyZXNwb25kaW5nIHBhdHRlcm4u
CisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yLgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdo
aWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZv
cmUgdGhlIGZ1bmN0aW9uIGNhbGwKKyAqIEByZXR1cm4gYSBVRW51bWVyYXRpb24gbGlzdCBvZiBh
bGwgdGhlIHNrZWxldG9ucworICogICAgICAgICBUaGUgY2FsbGVyIG11c3QgY2xvc2UgdGhlIG9i
amVjdC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBVRW51bWVyYXRpb24gKiBV
X0VYUE9SVDIKK3VkYXRwZ19vcGVuU2tlbGV0b25zKGNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IgKmR0cGcsIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIFJldHVybiBh
IFVFbnVtZXJhdGlvbiBsaXN0IG9mIGFsbCB0aGUgYmFzZSBza2VsZXRvbnMgaW4gY2Fub25pY2Fs
IGZvcm0uCisgKgorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5H
ZW5lcmF0b3IuCisgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNv
ZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICogICAgICAgICAgICAgZmFpbHVyZSBiZWZv
cmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2Yg
YWxsIHRoZSBiYXNlIHNrZWxldG9ucworICogICAgICAgICAgICAgVGhlIGNhbGxlciBtdXN0IGNs
b3NlIHRoZSBvYmplY3QuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgVUVudW1l
cmF0aW9uICogVV9FWFBPUlQyCit1ZGF0cGdfb3BlbkJhc2VTa2VsZXRvbnMoY29uc3QgVURhdGVU
aW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8q
KgorICogR2V0IHRoZSBwYXR0ZXJuIGNvcnJlc3BvbmRpbmcgdG8gYSBnaXZlbiBza2VsZXRvbi4K
KyAqIAorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0
b3IuCisgKiBAcGFyYW0gc2tlbGV0b24gCisgKiBAcGFyYW0gc2tlbGV0b25MZW5ndGggcG9pbnRl
ciB0byB0aGUgbGVuZ3RoIG9mIHNrZWxldG9uLgorICogQHBhcmFtIHBMZW5ndGggcG9pbnRlciB0
byB0aGUgbGVuZ3RoIG9mIHJldHVybiBwYXR0ZXJuLgorICogQHJldHVybiBwYXR0ZXJuIGNvcnJl
c3BvbmRpbmcgdG8gYSBnaXZlbiBza2VsZXRvbi4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitV
X1NUQUJMRSBjb25zdCBVQ2hhciAqIFVfRVhQT1JUMgordWRhdHBnX2dldFBhdHRlcm5Gb3JTa2Vs
ZXRvbihjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMyX3Qgc2tlbGV0b25M
ZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBMZW5ndGgpOwor
CisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pY3UvdW5pY29kZS91
bnVtc3lzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdW51bXN5cy5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjAyNjQ2M2U4MWE1ZGZmYjlmMzc5OTc3OTViMDc1ZDc1MzhjNjY2MjEKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdW51bXN5cy5o
CkBAIC0wLDAgKzEsMTc0IEBACisvKgorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioK
KyogQ29weXJpZ2h0IChDKSAyMDEzLCBJbnRlcm5hdGlvbmFsIEJ1c2luZXNzIE1hY2hpbmVzCisq
IENvcnBvcmF0aW9uIGFuZCBvdGhlcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKgorKi8KKworI2lmbmRlZiBVTlVNU1lTX0gKKyNkZWZpbmUg
VU5VTVNZU19ICisKKyNpbmNsdWRlICJ1bmljb2RlL3V0eXBlcy5oIgorCisjaWYgIVVDT05GSUdf
Tk9fRk9STUFUVElORworCisjaW5jbHVkZSAidW5pY29kZS91ZW51bS5oIgorI2luY2x1ZGUgInVu
aWNvZGUvbG9jYWxwb2ludGVyLmgiCisKKy8qKgorICogXGZpbGUKKyAqIFxicmllZiBDIEFQSTog
VU51bWJlcmluZ1N5c3RlbSwgaW5mb3JtYXRpb24gYWJvdXQgbnVtYmVyaW5nIHN5c3RlbXMKKyAq
CisgKiBEZWZpbmVzIG51bWJlcmluZyBzeXN0ZW1zLiBBIG51bWJlcmluZyBzeXN0ZW0gZGVzY3Jp
YmVzIHRoZSBzY2hlbWUgYnkgd2hpY2ggCisgKiBudW1iZXJzIGFyZSB0byBiZSBwcmVzZW50ZWQg
dG8gdGhlIGVuZCB1c2VyLiBJbiBpdHMgc2ltcGxlc3QgZm9ybSwgYSBudW1iZXJpbmcKKyAqIHN5
c3RlbSBkZXNjcmliZXMgdGhlIHNldCBvZiBkaWdpdCBjaGFyYWN0ZXJzIHRoYXQgYXJlIHRvIGJl
IHVzZWQgdG8gZGlzcGxheQorICogbnVtYmVycywgc3VjaCBhcyBXZXN0ZXJuIGRpZ2l0cywgVGhh
aSBkaWdpdHMsIEFyYWJpYy1JbmRpYyBkaWdpdHMsIGV0Yy4sIGluIGEKKyAqIHBvc2l0aW9uYWwg
bnVtYmVyaW5nIHN5c3RlbSB3aXRoIGEgc3BlY2lmaWVkIHJhZGl4ICh0eXBpY2FsbHkgMTApLgor
ICogTW9yZSBjb21wbGljYXRlZCBudW1iZXJpbmcgc3lzdGVtcyBhcmUgYWxnb3JpdGhtaWMgaW4g
bmF0dXJlLCBhbmQgcmVxdWlyZSB1c2UKKyAqIG9mIGFuIFJCTkYgZm9ybWF0dGVyIChydWxlIGJh
c2VkIG51bWJlciBmb3JtYXR0ZXIpLCBpbiBvcmRlciB0byBjYWxjdWxhdGUKKyAqIHRoZSBjaGFy
YWN0ZXJzIHRvIGJlIGRpc3BsYXllZCBmb3IgYSBnaXZlbiBudW1iZXIuIEV4YW1wbGVzIG9mIGFs
Z29yaXRobWljCisgKiBudW1iZXJpbmcgc3lzdGVtcyBpbmNsdWRlIFJvbWFuIG51bWVyYWxzLCBD
aGluZXNlIG51bWVyYWxzLCBhbmQgSGVicmV3IG51bWVyYWxzLgorICogRm9ybWF0dGluZyBydWxl
cyBmb3IgbWFueSBjb21tb25seSB1c2VkIG51bWJlcmluZyBzeXN0ZW1zIGFyZSBpbmNsdWRlZCBp
bgorICogdGhlIElDVSBwYWNrYWdlLCBiYXNlZCBvbiB0aGUgbnVtYmVyaW5nIHN5c3RlbSBydWxl
cyBkZWZpbmVkIGluIENMRFIuCisgKiBBbHRlcm5hdGUgbnVtYmVyaW5nIHN5c3RlbXMgY2FuIGJl
IHNwZWNpZmllZCB0byBhIGxvY2FsZSBieSB1c2luZyB0aGUKKyAqIG51bWJlcnMgbG9jYWxlIGtl
eXdvcmQuCisgKi8KKworI2lmbmRlZiBVX0hJREVfRFJBRlRfQVBJCisKKy8qKgorICogT3BhcXVl
IFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0IGZvciB1c2UgaW4gQyBwcm9ncmFtcy4KKyAqIEBkcmFm
dCBJQ1UgNTIKKyAqLworc3RydWN0IFVOdW1iZXJpbmdTeXN0ZW07Cit0eXBlZGVmIHN0cnVjdCBV
TnVtYmVyaW5nU3lzdGVtIFVOdW1iZXJpbmdTeXN0ZW07ICAvKio8IEMgdHlwZWRlZiBmb3Igc3Ry
dWN0IFVOdW1iZXJpbmdTeXN0ZW0uIEBkcmFmdCBJQ1UgNTIgKi8KKworLyoqCisgKiBPcGVucyBh
IFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0IHVzaW5nIHRoZSBkZWZhdWx0IG51bWJlcmluZyBzeXN0
ZW0gZm9yIHRoZSBzcGVjaWZpZWQKKyAqIGxvY2FsZS4KKyAqIEBwYXJhbSBsb2NhbGUgICAgVGhl
IGxvY2FsZSBmb3Igd2hpY2ggdGhlIGRlZmF1bHQgbnVtYmVyaW5nIHN5c3RlbSBzaG91bGQgYmUg
b3BlbmVkLgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBvaW50ZXIgdG8gYSBVRXJyb3JDb2RlIHRv
IHJlY2VpdmUgYW55IGVycm9ycy4gRm9yIGV4YW1wbGUsIHRoaXMKKyAqICAgICAgICAgICAgICAg
ICAgbWF5IGJlIFVfVU5TVVBQT1JURURfRVJST1IgZm9yIGEgbG9jYWxlIHN1Y2ggYXMgImVuQG51
bWJlcnM9eHl6IiB0aGF0CisgKiAgICAgICAgICAgICAgICAgIHNwZWNpZmllcyBhIG51bWJlcmlu
ZyBzeXN0ZW0gdW5rbm93biB0byBJQ1UuCisgKiBAcmV0dXJuICAgICAgICAgIEEgVU51bWJlcmlu
Z1N5c3RlbSBmb3IgdGhlIHNwZWNpZmllZCBsb2NhbGUsIG9yIE5VTEwgaWYgYW4gZXJyb3IKKyAq
ICAgICAgICAgICAgICAgICAgb2NjdXJyZWQuCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfRFJB
RlQgVU51bWJlcmluZ1N5c3RlbSAqIFVfRVhQT1JUMgordW51bXN5c19vcGVuKGNvbnN0IGNoYXIg
KmxvY2FsZSwgVUVycm9yQ29kZSAqc3RhdHVzKTsKKworLyoqCisgKiBPcGVucyBhIFVOdW1iZXJp
bmdTeXN0ZW0gb2JqZWN0IHVzaW5nIHRoZSBuYW1lIG9mIG9uZSBvZiB0aGUgcHJlZGVmaW5lZCBu
dW1iZXJpbmcKKyAqIHN5c3RlbXMgc3BlY2lmaWVkIGJ5IENMRFIgYW5kIGtub3duIHRvIElDVSwg
c3VjaCBhcyAibGF0biIsICJhcmFiZXh0Iiwgb3IgImhhbmlkZWMiOworICogdGhlIGZ1bGwgbGlz
dCBpcyByZXR1cm5lZCBieSB1bnVtc3lzX29wZW5BdmFpbGFibGVOYW1lcy4gTm90ZSB0aGF0IHNv
bWUgb2YgdGhlIG5hbWVzCisgKiBsaXN0ZWQgYXQgaHR0cDovL3VuaWNvZGUub3JnL3JlcG9zL2Ns
ZHIvdGFncy9sYXRlc3QvY29tbW9uL2JjcDQ3L251bWJlci54bWwgLSBlLmcuCisgKiBkZWZhdWx0
LCBuYXRpdmUsIHRyYWRpdGlvbmFsLCBmaW5hbmNlIC0gZG8gbm90IGlkZW50aWZ5IHNwZWNpZmlj
IG51bWJlcmluZyBzeXN0ZW1zLAorICogYnV0IHJhdGhlciBrZXkgdmFsdWVzIHRoYXQgbWF5IG9u
bHkgYmUgdXNlZCBhcyBwYXJ0IG9mIGEgbG9jYWxlLCB3aGljaCBpbiB0dXJuCisgKiBkZWZpbmVz
IGhvdyB0aGV5IGFyZSBtYXBwZWQgdG8gYSBzcGVjaWZpYyBudW1iZXJpbmcgc3lzdGVtIHN1Y2gg
YXMgImxhdG4iIG9yICJoYW50Ii4KKyAqCisgKiBAcGFyYW0gbmFtZSAgICAgIFRoZSBuYW1lIG9m
IHRoZSBudW1iZXJpbmcgc3lzdGVtIGZvciB3aGljaCBhIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0
CisgKiAgICAgICAgICAgICAgICAgIHNob3VsZCBiZSBvcGVuZWQuCisgKiBAcGFyYW0gc3RhdHVz
ICAgIEEgcG9pbnRlciB0byBhIFVFcnJvckNvZGUgdG8gcmVjZWl2ZSBhbnkgZXJyb3JzLiBGb3Ig
ZXhhbXBsZSwgdGhpcworICogICAgICAgICAgICAgICAgICBtYXkgYmUgVV9VTlNVUFBPUlRFRF9F
UlJPUiBmb3IgYSBudW1iZXJpbmcgc3lzdGVtIHN1Y2ggYXMgInh5eiIgdGhhdAorICogICAgICAg
ICAgICAgICAgICBpcyB1bmtub3duIHRvIElDVS4KKyAqIEByZXR1cm4gICAgICAgICAgQSBVTnVt
YmVyaW5nU3lzdGVtIGZvciB0aGUgc3BlY2lmaWVkIG5hbWUsIG9yIE5VTEwgaWYgYW4gZXJyb3IK
KyAqICAgICAgICAgICAgICAgICAgb2NjdXJyZWQuCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1Vf
RFJBRlQgVU51bWJlcmluZ1N5c3RlbSAqIFVfRVhQT1JUMgordW51bXN5c19vcGVuQnlOYW1lKGNv
bnN0IGNoYXIgKm5hbWUsIFVFcnJvckNvZGUgKnN0YXR1cyk7CisKKy8qKgorICogQ2xvc2UgYSBV
TnVtYmVyaW5nU3lzdGVtIG9iamVjdC4gT25jZSBjbG9zZWQgaXQgbWF5IG5vIGxvbmdlciBiZSB1
c2VkLgorICogQHBhcmFtIHVudW1zeXMgICBUaGUgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgdG8g
Y2xvc2UuCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfRFJBRlQgdm9pZCBVX0VYUE9SVDIKK3Vu
dW1zeXNfY2xvc2UoVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5cyk7CisKKyNpZiBVX1NIT1dfQ1BM
VVNQTFVTX0FQSQorVV9OQU1FU1BBQ0VfQkVHSU4KKworLyoqCisgKiBcY2xhc3MgTG9jYWxVTnVt
YmVyaW5nU3lzdGVtUG9pbnRlcgorICogIlNtYXJ0IHBvaW50ZXIiIGNsYXNzLCBjbG9zZXMgYSBV
TnVtYmVyaW5nU3lzdGVtIHZpYSB1bnVtc3lzX2Nsb3NlKCkuCisgKiBGb3IgbW9zdCBtZXRob2Rz
IHNlZSB0aGUgTG9jYWxQb2ludGVyQmFzZSBiYXNlIGNsYXNzLgorICogQHNlZSBMb2NhbFBvaW50
ZXJCYXNlCisgKiBAc2VlIExvY2FsUG9pbnRlcgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RF
RklORV9MT0NBTF9PUEVOX1BPSU5URVIoTG9jYWxVTnVtYmVyaW5nU3lzdGVtUG9pbnRlciwgVU51
bWJlcmluZ1N5c3RlbSwgdW51bXN5c19jbG9zZSk7CisKK1VfTkFNRVNQQUNFX0VORAorI2VuZGlm
CisKKy8qKgorICogUmV0dXJucyBhbiBlbnVtZXJhdGlvbiBvdmVyIHRoZSBuYW1lcyBvZiBhbGwg
b2YgdGhlIHByZWRlZmluZWQgbnVtYmVyaW5nIHN5c3RlbXMga25vd24KKyAqIHRvIElDVS4KKyAq
IEBwYXJhbSBzdGF0dXMgICAgQSBwb2ludGVyIHRvIGEgVUVycm9yQ29kZSB0byByZWNlaXZlIGFu
eSBlcnJvcnMuCisgKiBAcmV0dXJuICAgICAgICAgIEEgcG9pbnRlciB0byBhIFVFbnVtZXJhdGlv
biB0aGF0IG11c3QgYmUgY2xvc2VkIHdpdGggdWVudW1fY2xvc2UoKSwKKyAqICAgICAgICAgICAg
ICAgICAgb3IgTlVMTCBpZiBhbiBlcnJvciBvY2N1cnJlZC4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAq
LworVV9EUkFGVCBVRW51bWVyYXRpb24gKiBVX0VYUE9SVDIKK3VudW1zeXNfb3BlbkF2YWlsYWJs
ZU5hbWVzKFVFcnJvckNvZGUgKnN0YXR1cyk7CisKKy8qKgorICogUmV0dXJucyB0aGUgbmFtZSBv
ZiB0aGUgc3BlY2lmaWVkIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0IChpZiBpdCBpcyBvbmUgb2Yg
dGhlCisgKiBwcmVkZWZpbmVkIG5hbWVzIGtub3duIHRvIElDVSkuCisgKiBAcGFyYW0gdW51bXN5
cyAgIFRoZSBVTnVtYmVyaW5nU3lzdGVtIHdob3NlIG5hbWUgaXMgZGVzaXJlZC4KKyAqIEByZXR1
cm4gICAgICAgICAgQSBwb2ludGVyIHRvIHRoZSBuYW1lIG9mIHRoZSBzcGVjaWZpZWQgVU51bWJl
cmluZ1N5c3RlbSBvYmplY3QsIG9yCisgKiAgICAgICAgICAgICAgICAgIE5VTEwgaWYgdGhlIG5h
bWUgaXMgbm90IG9uZSBvZiB0aGUgSUNVIHByZWRlZmluZWQgbmFtZXMuIFRoZSBwb2ludGVyCisg
KiAgICAgICAgICAgICAgICAgIGlzIG9ubHkgdmFsaWQgZm9yIHRoZSBsaWZldGltZSBvZiB0aGUg
VU51bWJlcmluZ1N5c3RlbSBvYmplY3QuCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfRFJBRlQg
Y29uc3QgY2hhciAqIFVfRVhQT1JUMgordW51bXN5c19nZXROYW1lKGNvbnN0IFVOdW1iZXJpbmdT
eXN0ZW0gKnVudW1zeXMpOworCisvKioKKyAqIFJldHVybnMgd2hldGhlciB0aGUgZ2l2ZW4gVU51
bWJlcmluZ1N5c3RlbSBvYmplY3QgaXMgZm9yIGFuIGFsZ29yaXRobWljIChub3QgcHVyZWx5Cisg
KiBwb3NpdGlvbmFsKSBzeXN0ZW0uCisgKiBAcGFyYW0gdW51bXN5cyAgIFRoZSBVTnVtYmVyaW5n
U3lzdGVtIHdob3NlIGFsZ29yaXRobWljIHN0YXR1cyBpcyBkZXNpcmVkLgorICogQHJldHVybiAg
ICAgICAgICBUUlVFIGlmIHRoZSBzcGVjaWZpZWQgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgaXMg
Zm9yIGFuIGFsZ29yaXRobWljCisgKiAgICAgICAgICAgICAgICAgIHN5c3RlbS4KKyAqIEBkcmFm
dCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVQm9vbCBVX0VYUE9SVDIKK3VudW1zeXNfaXNBbGdvcml0
aG1pYyhjb25zdCBVTnVtYmVyaW5nU3lzdGVtICp1bnVtc3lzKTsKKworLyoqCisgKiBSZXR1cm5z
IHRoZSByYWRpeCBvZiB0aGUgc3BlY2lmaWVkIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0LiBTaW1w
bGUgcG9zaXRpb25hbAorICogbnVtYmVyaW5nIHN5c3RlbXMgdHlwaWNhbGx5IGhhdmUgcmFkaXgg
MTAsIGJ1dCBtaWdodCBoYXZlIGEgcmFkaXggb2YgZS5nLiAxNiBmb3IKKyAqIGhleGFkZWNpbWFs
LiBUaGUgcmFkaXggaXMgbGVzcyB3ZWxsLWRlZmluZWQgZm9yIG5vbi1wb3NpdGlvbmFsIGFsZ29y
aXRobWljIHN5c3RlbXMuCisgKiBAcGFyYW0gdW51bXN5cyAgIFRoZSBVTnVtYmVyaW5nU3lzdGVt
IHdob3NlIHJhZGl4IGlzIGRlc2lyZWQuCisgKiBAcmV0dXJuICAgICAgICAgIFRoZSByYWRpeCBv
ZiB0aGUgc3BlY2lmaWVkIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0LgorICogQGRyYWZ0IElDVSA1
MgorICovCitVX0RSQUZUIGludDMyX3QgVV9FWFBPUlQyCit1bnVtc3lzX2dldFJhZGl4KGNvbnN0
IFVOdW1iZXJpbmdTeXN0ZW0gKnVudW1zeXMpOworCisvKioKKyAqIEdldCB0aGUgZGVzY3JpcHRp
b24gc3RyaW5nIG9mIHRoZSBzcGVjaWZpZWQgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QuIEZvciBz
aW1wbGUKKyAqIHBvc2l0aW9uYWwgc3lzdGVtcyB0aGlzIGlzIHRoZSBvcmRlcmVkIHN0cmluZyBv
ZiBkaWdpdHMgKHdpdGggbGVuZ3RoIG1hdGNoaW5nCisgKiB0aGUgcmFkaXgpLCBlLmcuICJcdTMw
MDdcdTRFMDBcdTRFOENcdTRFMDlcdTU2REJcdTRFOTRcdTUxNkRcdTRFMDNcdTUxNkJcdTRFNUQi
CisgKiBmb3IgImhhbmlkZWMiOyBpdCB3b3VsZCBiZSAiMDEyMzQ1Njc4OUFCQ0RFRiIgZm9yIGhl
eGFkZWNpbWFsLiBGb3IKKyAqIGFsZ29yaXRobWljIHN5c3RlbXMgdGhpcyBpcyB0aGUgbmFtZSBv
ZiB0aGUgUkJORiBydWxlc2V0IHVzZWQgZm9yIGZvcm1hdHRpbmcsCisgKiBlLmcuICJ6aC9TcGVs
bG91dFJ1bGVzLyVzcGVsbG91dC1jYXJkaW5hbCIgZm9yICJoYW5zIiBvciAiJWdyZWVrLXVwcGVy
IiBmb3IKKyAqICJncmVrIi4KKyAqIEBwYXJhbSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0
ZW0gd2hvc2UgZGVzY3JpcHRpb24gc3RyaW5nIGlzIGRlc2lyZWQuCisgKiBAcGFyYW0gcmVzdWx0
ICAgIEEgcG9pbnRlciB0byBhIGJ1ZmZlciB0byByZWNlaXZlIHRoZSBkZXNjcmlwdGlvbiBzdHJp
bmcuCisgKiBAcGFyYW0gcmVzdWx0TGVuZ3RoICBUaGUgbWF4aW11bSBzaXplIG9mIHJlc3VsdC4K
KyAqIEBwYXJhbSBzdGF0dXMgICAgQSBwb2ludGVyIHRvIGEgVUVycm9yQ29kZSB0byByZWNlaXZl
IGFueSBlcnJvcnMuCisgKiBAcmV0dXJuICAgICAgICAgIFRoZSB0b3RhbCBidWZmZXIgc2l6ZSBu
ZWVkZWQ7IGlmIGdyZWF0ZXIgdGhhbiByZXN1bHRMZW5ndGgsIHRoZQorICogICAgICAgICAgICAg
ICAgICBvdXRwdXQgd2FzIHRydW5jYXRlZC4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFG
VCBpbnQzMl90IFVfRVhQT1JUMgordW51bXN5c19nZXREZXNjcmlwdGlvbihjb25zdCBVTnVtYmVy
aW5nU3lzdGVtICp1bnVtc3lzLCBVQ2hhciAqcmVzdWx0LAorICAgICAgICAgICAgICAgICAgICAg
ICBpbnQzMl90IHJlc3VsdExlbmd0aCwgVUVycm9yQ29kZSAqc3RhdHVzKTsKKworI2VuZGlmICAv
KiBVX0hJREVfRFJBRlRfQVBJICovCisKKyNlbmRpZiAvKiAjaWYgIVVDT05GSUdfTk9fRk9STUFU
VElORyAqLworCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0NvbW1vbklkZW50aWZpZXJzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9D
b21tb25JZGVudGlmaWVycy5oCmluZGV4IDhjZDdiY2E4YmFiMzUxMGUzYjg3NWNkMDAxODRjN2Iw
MDQyMDM4OGQuLmViNDdkMDI0Mzk1OTEzNjg1NzAwYTYyZTU1MGU2MmFmY2Y3YjQyN2IgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaApA
QCAtMTAxLDYgKzEwMSw3IEBACiAgICAgbWFjcm8oY29uc3RydWN0b3IpIFwKICAgICBtYWNybyhj
b3VudCkgXAogICAgIG1hY3JvKGNvdW50ZXJzKSBcCisgICAgbWFjcm8oZGF5KSBcCiAgICAgbWFj
cm8oZGVmaW5lUHJvcGVydHkpIFwKICAgICBtYWNybyhkZXNjcmlwdGlvbikgXAogICAgIG1hY3Jv
KGRlc2NyaXB0aW9ucykgXApAQCAtMTA5LDYgKzExMCw3IEBACiAgICAgbWFjcm8oZG9uZSkgXAog
ICAgIG1hY3JvKGVudHJpZXMpIFwKICAgICBtYWNybyhlbnVtZXJhYmxlKSBcCisgICAgbWFjcm8o
ZXJhKSBcCiAgICAgbWFjcm8oZXZhbCkgXAogICAgIG1hY3JvKGV4ZWMpIFwKICAgICBtYWNybyhl
eGVjdXRpb25Db3VudCkgXApAQCAtMTE2LDYgKzExOCw3IEBACiAgICAgbWFjcm8oZmxhZ3MpIFwK
ICAgICBtYWNybyhmb2N1cykgXAogICAgIG1hY3JvKGZvckVhY2gpIFwKKyAgICBtYWNybyhmb3Jt
YXRNYXRjaGVyKSBcCiAgICAgbWFjcm8oZm9yd2FyZCkgXAogICAgIG1hY3JvKGZyb20pIFwKICAg
ICBtYWNybyhmcm9tQ2hhckNvZGUpIFwKQEAgLTEyNiw2ICsxMjksOCBAQAogICAgIG1hY3JvKGhh
c093blByb3BlcnR5KSBcCiAgICAgbWFjcm8oaGFzaCkgXAogICAgIG1hY3JvKGhlYWRlcikgXAor
ICAgIG1hY3JvKGhvdXIpIFwKKyAgICBtYWNybyhob3VyMTIpIFwKICAgICBtYWNybyhocmVmKSBc
CiAgICAgbWFjcm8oaWQpIFwKICAgICBtYWNybyhpZ25vcmVDYXNlKSBcCkBAIC0xNDksNiArMTU0
LDggQEAKICAgICBtYWNybyhsb2NhbGUpIFwKICAgICBtYWNybyhsb2NhbGVNYXRjaGVyKSBcCiAg
ICAgbWFjcm8obWVzc2FnZSkgXAorICAgIG1hY3JvKG1pbnV0ZSkgXAorICAgIG1hY3JvKG1vbnRo
KSBcCiAgICAgbWFjcm8obXVsdGlsaW5lKSBcCiAgICAgbWFjcm8obmFtZSkgXAogICAgIG1hY3Jv
KG5leHQpIFwKQEAgLTE3Miw2ICsxNzksNyBAQAogICAgIG1hY3JvKHJlbG9hZCkgXAogICAgIG1h
Y3JvKHJlcGxhY2UpIFwKICAgICBtYWNybyhyZXNvbHZlKSBcCisgICAgbWFjcm8oc2Vjb25kKSBc
CiAgICAgbWFjcm8oc2Vuc2l0aXZpdHkpIFwKICAgICBtYWNybyhzZXQpIFwKICAgICBtYWNybyhz
aG93TW9kYWxEaWFsb2cpIFwKQEAgLTE4NSw2ICsxOTMsOCBAQAogICAgIG1hY3JvKHRhcmdldCkg
XAogICAgIG1hY3JvKHRlc3QpIFwKICAgICBtYWNybyh0aGVuKSBcCisgICAgbWFjcm8odGltZVpv
bmUpIFwKKyAgICBtYWNybyh0aW1lWm9uZU5hbWUpIFwKICAgICBtYWNybyh0b0V4cG9uZW50aWFs
KSBcCiAgICAgbWFjcm8odG9GaXhlZCkgXAogICAgIG1hY3JvKHRvSVNPU3RyaW5nKSBcCkBAIC0x
OTgsOCArMjA4LDEwIEBACiAgICAgbWFjcm8odmFsdWVzKSBcCiAgICAgbWFjcm8od2Via2l0KSBc
CiAgICAgbWFjcm8od2Via2l0SW5kZXhlZERCKSBcCisgICAgbWFjcm8od2Vla2RheSkgXAogICAg
IG1hY3JvKHdpbmRvdykgXAotICAgIG1hY3JvKHdyaXRhYmxlKQorICAgIG1hY3JvKHdyaXRhYmxl
KSBcCisgICAgbWFjcm8oeWVhcikKIAogI2RlZmluZSBKU0NfQ09NTU9OX0lERU5USUZJRVJTX0VB
Q0hfS0VZV09SRChtYWNybykgXAogICAgIG1hY3JvKGJyZWFrKSBcCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcAppbmRleCBkYzVi
MmFjZTMyNWIwOGI2ZjJmMzdiMjMxMDc2OTIwZTg4ZmNmMDI4Li42NzNlZmJiN2IzYWNjZTc0OTU2
YTRhYzE4OGZmZTUwOGJhYTFlMjdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5jcHAKQEAgLTM2LDggKzM2LDEzIEBACiAjaW5j
bHVkZSAiSlNCb3VuZEZ1bmN0aW9uLmgiCiAjaW5jbHVkZSAiSlNDSlNWYWx1ZUlubGluZXMuaCIK
ICNpbmNsdWRlICJKU0NlbGxJbmxpbmVzLmgiCisjaW5jbHVkZSAiT2JqZWN0Q29uc3RydWN0b3Iu
aCIKICNpbmNsdWRlICJTbG90VmlzaXRvcklubGluZXMuaCIKICNpbmNsdWRlICJTdHJ1Y3R1cmVJ
bmxpbmVzLmgiCisjaW5jbHVkZSA8dW5pY29kZS91Y2FsLmg+CisjaW5jbHVkZSA8dW5pY29kZS91
ZGF0Lmg+CisjaW5jbHVkZSA8dW5pY29kZS91ZGF0cGcuaD4KKyNpbmNsdWRlIDx1bmljb2RlL3Vl
bnVtLmg+CiAKIG5hbWVzcGFjZSBKU0MgewogCkBAIC04NiwxNCArOTEsNTk1IEBAIHZvaWQgSW50
bERhdGVUaW1lRm9ybWF0OjpzZXRCb3VuZEZvcm1hdChWTSYgdm0sIEpTQm91bmRGdW5jdGlvbiog
Zm9ybWF0KQogICAgIG1fYm91bmRGb3JtYXQuc2V0KHZtLCB0aGlzLCBmb3JtYXQpOwogfQogCitl
bnVtIGNsYXNzIERhdGVUaW1lT3B0aW9uUmVxdWlyZWQgeyBEYXRlLCBUaW1lLCBBbnkgfTsKK2Vu
dW0gY2xhc3MgRGF0ZVRpbWVPcHRpb25EZWZhdWx0cyB7IERhdGUsIFRpbWUsIEFsbCB9OworCitT
dHJpbmcgZGVmYXVsdFRpbWVab25lKCkKK3sKKyAgICAvLyA2LjQuMyBEZWZhdWx0VGltZVpvbmUg
KCkgKEVDTUEtNDAyIDIuMCkKKyAgICAvLyBUaGUgRGVmYXVsdFRpbWVab25lIGFic3RyYWN0IG9w
ZXJhdGlvbiByZXR1cm5zIGEgU3RyaW5nIHZhbHVlIHJlcHJlc2VudGluZyB0aGUgdmFsaWQgKDYu
NC4xKSBhbmQgY2Fub25pY2FsaXplZCAoNi40LjIpIHRpbWUgem9uZSBuYW1lIGZvciB0aGUgaG9z
dCBlbnZpcm9ubWVudOKAmXMgY3VycmVudCB0aW1lIHpvbmUuCisKKyAgICBVRXJyb3JDb2RlIHN0
YXR1cyA9IFVfWkVST19FUlJPUjsKKyAgICBhdXRvIGJ1ZmZlckxlbmd0aCA9IHVjYWxfZ2V0RGVm
YXVsdFRpbWVab25lKG51bGxwdHIsIDAsICZzdGF0dXMpOworICAgIGlmIChzdGF0dXMgPT0gVV9C
VUZGRVJfT1ZFUkZMT1dfRVJST1IpIHsKKyAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOwor
ICAgICAgICBWZWN0b3I8VUNoYXIsIDMyPiBidWZmZXIoYnVmZmVyTGVuZ3RoKTsKKyAgICAgICAg
dWNhbF9nZXREZWZhdWx0VGltZVpvbmUoYnVmZmVyLmRhdGEoKSwgYnVmZmVyTGVuZ3RoLCAmc3Rh
dHVzKTsKKyAgICAgICAgaWYgKFVfU1VDQ0VTUyhzdGF0dXMpKQorICAgICAgICAgICAgcmV0dXJu
IFN0cmluZyhidWZmZXIuZGF0YSgpLCBidWZmZXJMZW5ndGgpOworICAgIH0KKyAgICByZXR1cm4g
QVNDSUlMaXRlcmFsKCJVVEMiKTsKK30KKworc3RhdGljIFN0cmluZyBjYW5vbmljYWxpemVUaW1l
Wm9uZU5hbWUoY29uc3QgU3RyaW5nJiB0aW1lWm9uZU5hbWUpCit7CisgICAgLy8gNi40LjEgSXNW
YWxpZFRpbWVab25lTmFtZSAodGltZVpvbmUpCisgICAgLy8gVGhlIGFic3RyYWN0IG9wZXJhdGlv
biByZXR1cm5zIHRydWUgaWYgdGltZVpvbmUsIGNvbnZlcnRlZCB0byB1cHBlciBjYXNlIGFzIGRl
c2NyaWJlZCBpbiA2LjEsIGlzIGVxdWFsIHRvIG9uZSBvZiB0aGUgWm9uZSBvciBMaW5rIG5hbWVz
IG9mIHRoZSBJQU5BIFRpbWUgWm9uZSBEYXRhYmFzZSwgY29udmVydGVkIHRvIHVwcGVyIGNhc2Ug
YXMgZGVzY3JpYmVkIGluIDYuMS4gSXQgcmV0dXJucyBmYWxzZSBvdGhlcndpc2UuCisgICAgVUVy
cm9yQ29kZSBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgVUVudW1lcmF0aW9uKiB0aW1lWm9u
ZXMgPSB1Y2FsX29wZW5UaW1lWm9uZXMoJnN0YXR1cyk7CisgICAgQVNTRVJUKFVfU1VDQ0VTUyhz
dGF0dXMpKTsKKworICAgIFN0cmluZyBjYW5vbmljYWw7CisgICAgd2hpbGUgKGNhbm9uaWNhbC5p
c051bGwoKSkgeworICAgICAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgIGludDMy
X3QgaWFuYVRpbWVab25lTGVuZ3RoOworICAgICAgICAvLyBUaW1lIHpvbmUgbmFtZXMgYXJlIHJl
c3ByZXNlbnRlZCBhcyBVQ2hhcltdIGluIGFsbCByZWxhdGVkIElDVSBhcGlzLgorICAgICAgICBj
b25zdCBVQ2hhciogaWFuYVRpbWVab25lID0gdWVudW1fdW5leHQodGltZVpvbmVzLCAmaWFuYVRp
bWVab25lTGVuZ3RoLCAmc3RhdHVzKTsKKyAgICAgICAgQVNTRVJUKFVfU1VDQ0VTUyhzdGF0dXMp
KTsKKworICAgICAgICAvLyBFbmQgb2YgZW51bWVyYXRpb24uCisgICAgICAgIGlmICghaWFuYVRp
bWVab25lKQorICAgICAgICAgICAgYnJlYWs7CisKKyAgICAgICAgU3RyaW5nVmlldyBpYW5hVGlt
ZVpvbmVWaWV3KGlhbmFUaW1lWm9uZSwgaWFuYVRpbWVab25lTGVuZ3RoKTsKKyAgICAgICAgaWYg
KCFlcXVhbElnbm9yaW5nQVNDSUlDYXNlKHRpbWVab25lTmFtZSwgaWFuYVRpbWVab25lVmlldykp
CisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICAvLyBGb3VuZCBhIG1hdGNoLCBub3cg
Y2Fub25pY2FsaXplLgorICAgICAgICAvLyA2LjQuMiBDYW5vbmljYWxpemVUaW1lWm9uZU5hbWUg
KHRpbWVab25lKSAoRUNNQS00MDIgMi4wKQorICAgICAgICAvLyAxLiBMZXQgaWFuYVRpbWVab25l
IGJlIHRoZSBab25lIG9yIExpbmsgbmFtZSBvZiB0aGUgSUFOQSBUaW1lIFpvbmUgRGF0YWJhc2Ug
c3VjaCB0aGF0IHRpbWVab25lLCBjb252ZXJ0ZWQgdG8gdXBwZXIgY2FzZSBhcyBkZXNjcmliZWQg
aW4gNi4xLCBpcyBlcXVhbCB0byBpYW5hVGltZVpvbmUsIGNvbnZlcnRlZCB0byB1cHBlciBjYXNl
IGFzIGRlc2NyaWJlZCBpbiA2LjEuCisgICAgICAgIC8vIDIuIElmIGlhbmFUaW1lWm9uZSBpcyBh
IExpbmsgbmFtZSwgdGhlbiBsZXQgaWFuYVRpbWVab25lIGJlIHRoZSBjb3JyZXNwb25kaW5nIFpv
bmUgbmFtZSBhcyBzcGVjaWZpZWQgaW4gdGhlIOKAnGJhY2t3YXJk4oCdIGZpbGUgb2YgdGhlIElB
TkEgVGltZSBab25lIERhdGFiYXNlLgorCisgICAgICAgIFZlY3RvcjxVQ2hhciwgMzI+IGJ1ZmZl
cihpYW5hVGltZVpvbmVMZW5ndGgpOworICAgICAgICBVQm9vbCBpc1N5c3RlbUlEID0gZmFsc2U7
CisgICAgICAgIHN0YXR1cyA9IFVfWkVST19FUlJPUjsKKyAgICAgICAgYXV0byBjYW5vbmljYWxM
ZW5ndGggPSB1Y2FsX2dldENhbm9uaWNhbFRpbWVab25lSUQoaWFuYVRpbWVab25lLCBpYW5hVGlt
ZVpvbmVMZW5ndGgsIGJ1ZmZlci5kYXRhKCksIGlhbmFUaW1lWm9uZUxlbmd0aCwgJmlzU3lzdGVt
SUQsICZzdGF0dXMpOworICAgICAgICBpZiAoc3RhdHVzID09IFVfQlVGRkVSX09WRVJGTE9XX0VS
Uk9SKSB7CisgICAgICAgICAgICBidWZmZXIgPSBWZWN0b3I8VUNoYXIsIDMyPihjYW5vbmljYWxM
ZW5ndGgpOworICAgICAgICAgICAgaXNTeXN0ZW1JRCA9IGZhbHNlOworICAgICAgICAgICAgc3Rh
dHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICAgICAgdWNhbF9nZXRDYW5vbmljYWxUaW1lWm9u
ZUlEKGlhbmFUaW1lWm9uZSwgaWFuYVRpbWVab25lTGVuZ3RoLCBidWZmZXIuZGF0YSgpLCBjYW5v
bmljYWxMZW5ndGgsICZpc1N5c3RlbUlELCAmc3RhdHVzKTsKKyAgICAgICAgfQorICAgICAgICBB
U1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworICAgICAgICBjYW5vbmljYWwgPSBTdHJpbmcoYnVm
ZmVyLmRhdGEoKSwgY2Fub25pY2FsTGVuZ3RoKTsKKyAgICB9CisgICAgdWVudW1fY2xvc2UodGlt
ZVpvbmVzKTsKKworICAgIC8vIDMuIElmIGlhbmFUaW1lWm9uZSBpcyAiRXRjL1VUQyIgb3IgIkV0
Yy9HTVQiLCB0aGVuIHJldHVybiAiVVRDIi4KKyAgICBpZiAoY2Fub25pY2FsID09ICJFdGMvVVRD
IiB8fCBjYW5vbmljYWwgPT0gIkV0Yy9HTVQiKQorICAgICAgICBjYW5vbmljYWwgPSBBU0NJSUxp
dGVyYWwoIlVUQyIpOworCisgICAgLy8gNC4gUmV0dXJuIGlhbmFUaW1lWm9uZS4KKyAgICByZXR1
cm4gY2Fub25pY2FsOworfQorCitzdGF0aWMgVmVjdG9yPFN0cmluZz4gbG9jYWxlRGF0YShjb25z
dCBTdHJpbmcmIGxvY2FsZSwgY29uc3QgU3RyaW5nJiBrZXkpCit7CisgICAgaWYgKGtleSA9PSAi
Y2EiKSB7CisgICAgICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAg
ICBVRW51bWVyYXRpb24qIGNhbGVuZGFycyA9IHVjYWxfZ2V0S2V5d29yZFZhbHVlc0ZvckxvY2Fs
ZSgiY2FsZW5kYXIiLCBsb2NhbGUudXRmOCgpLmRhdGEoKSwgZmFsc2UsICZzdGF0dXMpOworICAg
ICAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworCisgICAgICAgIFZlY3RvcjxTdHJpbmc+
IGNhRGF0YTsKKyAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICBpbnQzMl90
IG5hbWVMZW5ndGg7CisgICAgICAgIHdoaWxlIChjb25zdCBjaGFyKiBhdmFpbGFibGVOYW1lID0g
dWVudW1fbmV4dChjYWxlbmRhcnMsICZuYW1lTGVuZ3RoLCAmc3RhdHVzKSkgeworICAgICAgICAg
ICAgQVNTRVJUKFVfU1VDQ0VTUyhzdGF0dXMpKTsKKyAgICAgICAgICAgIHN0YXR1cyA9IFVfWkVS
T19FUlJPUjsKKyAgICAgICAgICAgIFN0cmluZyBjYWxlbmRhciA9IFN0cmluZyhhdmFpbGFibGVO
YW1lLCBuYW1lTGVuZ3RoKTsKKyAgICAgICAgICAgIGNhRGF0YS5hcHBlbmQoY2FsZW5kYXIpOwor
ICAgICAgICAgICAgLy8gRW5zdXJlIGFsaWFzZXMgdXNlZCBpbiBsYW5ndWFnZSB0YWcgYXJlIGFs
bG93ZWQuCisgICAgICAgICAgICBpZiAoY2FsZW5kYXIgPT0gImdyZWdvcmlhbiIpCisgICAgICAg
ICAgICAgICAgY2FEYXRhLmFwcGVuZChBU0NJSUxpdGVyYWwoImdyZWdvcnkiKSk7CisgICAgICAg
ICAgICBlbHNlIGlmIChjYWxlbmRhciA9PSAiaXNsYW1pYy1jaXZpbCIpCisgICAgICAgICAgICAg
ICAgY2FEYXRhLmFwcGVuZChBU0NJSUxpdGVyYWwoImlzbGFtaWNjIikpOworICAgICAgICAgICAg
ZWxzZSBpZiAoY2FsZW5kYXIgPT0gImV0aGlvcGljLWFtZXRlLWFsZW0iKQorICAgICAgICAgICAg
ICAgIGNhRGF0YS5hcHBlbmQoQVNDSUlMaXRlcmFsKCJldGhpb2FhIikpOworICAgICAgICB9Cisg
ICAgICAgIHVlbnVtX2Nsb3NlKGNhbGVuZGFycyk7CisgICAgICAgIHJldHVybiBjYURhdGE7Cisg
ICAgfQorICAgIGlmIChrZXkgPT0gIm51IikKKyAgICAgICAgcmV0dXJuIGdldE51bWJlcmluZ1N5
c3RlbXNGb3JMb2NhbGUobG9jYWxlKTsKKyAgICByZXR1cm4gVmVjdG9yPFN0cmluZz4oKTsKK30K
Kworc3RhdGljIEpTT2JqZWN0KiB0b0RhdGVUaW1lT3B0aW9ucyhFeGVjU3RhdGUmIHN0YXRlLCBK
U1ZhbHVlIG9yaWdpbmFsT3B0aW9ucywgY29uc3QgRGF0ZVRpbWVPcHRpb25SZXF1aXJlZCByZXF1
aXJlZCwgY29uc3QgRGF0ZVRpbWVPcHRpb25EZWZhdWx0cyBkZWZhdWx0cykKK3sKKyAgICAvLyAx
Mi4xLjEgVG9EYXRlVGltZU9wdGlvbnMgYWJzdHJhY3Qgb3BlcmF0aW9uIChFQ01BLTQwMiAyLjAp
CisgICAgVk0mIHZtID0gc3RhdGUudm0oKTsKKworICAgIC8vIDEuIElmIG9wdGlvbnMgaXMgdW5k
ZWZpbmVkLCB0aGVuIGxldCBvcHRpb25zIGJlIG51bGwsIGVsc2UgbGV0IG9wdGlvbnMgYmUgVG9P
YmplY3Qob3B0aW9ucykuCisgICAgLy8gMi4gUmV0dXJuSWZBYnJ1cHQob3B0aW9ucykuCisgICAg
Ly8gMy4gTGV0IG9wdGlvbnMgYmUgT2JqZWN0Q3JlYXRlKG9wdGlvbnMpLgorICAgIEpTT2JqZWN0
KiBvcHRpb25zOworICAgIGlmIChvcmlnaW5hbE9wdGlvbnMuaXNVbmRlZmluZWRPck51bGwoKSkK
KyAgICAgICAgb3B0aW9ucyA9IGNvbnN0cnVjdEVtcHR5T2JqZWN0KCZzdGF0ZSwgc3RhdGUubGV4
aWNhbEdsb2JhbE9iamVjdCgpLT5udWxsUHJvdG90eXBlT2JqZWN0U3RydWN0dXJlKCkpOworICAg
IGVsc2UgeworICAgICAgICBKU09iamVjdCogb3JpZ2luYWxUb09iamVjdCA9IG9yaWdpbmFsT3B0
aW9ucy50b09iamVjdCgmc3RhdGUpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkp
CisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgb3B0aW9ucyA9IGNvbnN0cnVj
dEVtcHR5T2JqZWN0KCZzdGF0ZSwgb3JpZ2luYWxUb09iamVjdCk7CisgICAgfQorCisgICAgLy8g
NC4gTGV0IG5lZWREZWZhdWx0cyBiZSB0cnVlLgorICAgIGJvb2wgbmVlZERlZmF1bHRzID0gdHJ1
ZTsKKworICAgIC8vIDUuIElmIHJlcXVpcmVkIGlzICJkYXRlIiBvciAiYW55IiwKKyAgICBpZiAo
cmVxdWlyZWQgPT0gRGF0ZVRpbWVPcHRpb25SZXF1aXJlZDo6RGF0ZSB8fCByZXF1aXJlZCA9PSBE
YXRlVGltZU9wdGlvblJlcXVpcmVkOjpBbnkpIHsKKyAgICAgICAgLy8gYS4gRm9yIGVhY2ggb2Yg
dGhlIHByb3BlcnR5IG5hbWVzICJ3ZWVrZGF5IiwgInllYXIiLCAibW9udGgiLCAiZGF5IjoKKyAg
ICAgICAgLy8gaS4gTGV0IHByb3AgYmUgdGhlIHByb3BlcnR5IG5hbWUuCisgICAgICAgIC8vIGlp
LiBMZXQgdmFsdWUgYmUgR2V0KG9wdGlvbnMsIHByb3ApLgorICAgICAgICAvLyBpaWkuIFJldHVy
bklmQWJydXB0KHZhbHVlKS4KKyAgICAgICAgLy8gaXYuIElmIHZhbHVlIGlzIG5vdCB1bmRlZmlu
ZWQsIHRoZW4gbGV0IG5lZWREZWZhdWx0cyBiZSBmYWxzZS4KKyAgICAgICAgSlNWYWx1ZSB3ZWVr
ZGF5ID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+d2Vla2RheSk7Cisg
ICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxs
cHRyOworICAgICAgICBpZiAoIXdlZWtkYXkuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5l
ZWREZWZhdWx0cyA9IGZhbHNlOworCisgICAgICAgIEpTVmFsdWUgeWVhciA9IG9wdGlvbnMtPmdl
dCgmc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPnllYXIpOworICAgICAgICBpZiAoc3RhdGUuaGFk
RXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCF5
ZWFyLmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKwor
ICAgICAgICBKU1ZhbHVlIG1vbnRoID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlO
YW1lcy0+bW9udGgpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCFtb250aC5pc1VuZGVmaW5lZCgpKQor
ICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisKKyAgICAgICAgSlNWYWx1ZSBkYXkg
PSBvcHRpb25zLT5nZXQoJnN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT5kYXkpOworICAgICAgICBp
ZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAg
ICAgICAgaWYgKCFkYXkuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZhdWx0cyA9
IGZhbHNlOworICAgIH0KKworICAgIC8vIDYuIElmIHJlcXVpcmVkIGlzICJ0aW1lIiBvciAiYW55
IiwKKyAgICBpZiAocmVxdWlyZWQgPT0gRGF0ZVRpbWVPcHRpb25SZXF1aXJlZDo6VGltZSB8fCBy
ZXF1aXJlZCA9PSBEYXRlVGltZU9wdGlvblJlcXVpcmVkOjpBbnkpIHsKKyAgICAgICAgLy8gYS4g
Rm9yIGVhY2ggb2YgdGhlIHByb3BlcnR5IG5hbWVzICJob3VyIiwgIm1pbnV0ZSIsICJzZWNvbmQi
OgorICAgICAgICAvLyBpLiBMZXQgcHJvcCBiZSB0aGUgcHJvcGVydHkgbmFtZS4KKyAgICAgICAg
Ly8gaWkuIExldCB2YWx1ZSBiZSBHZXQob3B0aW9ucywgcHJvcCkuCisgICAgICAgIC8vIGlpaS4g
UmV0dXJuSWZBYnJ1cHQodmFsdWUpLgorICAgICAgICAvLyBpdi4gSWYgdmFsdWUgaXMgbm90IHVu
ZGVmaW5lZCwgdGhlbiBsZXQgbmVlZERlZmF1bHRzIGJlIGZhbHNlLgorICAgICAgICBKU1ZhbHVl
IGhvdXIgPSBvcHRpb25zLT5nZXQoJnN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyKTsKKyAg
ICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CisgICAgICAgIGlmICghaG91ci5pc1VuZGVmaW5lZCgpKQorICAgICAgICAgICAgbmVlZERl
ZmF1bHRzID0gZmFsc2U7CisKKyAgICAgICAgSlNWYWx1ZSBtaW51dGUgPSBvcHRpb25zLT5nZXQo
JnN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT5taW51dGUpOworICAgICAgICBpZiAoc3RhdGUuaGFk
RXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCFt
aW51dGUuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZhdWx0cyA9IGZhbHNlOwor
CisgICAgICAgIEpTVmFsdWUgc2Vjb25kID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVy
dHlOYW1lcy0+c2Vjb25kKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAg
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICghc2Vjb25kLmlzVW5kZWZpbmVk
KCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKyAgICB9CisKKyAgICAvLyA3
LiBJZiBuZWVkRGVmYXVsdHMgaXMgdHJ1ZSBhbmQgZGVmYXVsdHMgaXMgZWl0aGVyICJkYXRlIiBv
ciAiYWxsIiwgdGhlbgorICAgIGlmIChuZWVkRGVmYXVsdHMgJiYgKGRlZmF1bHRzID09IERhdGVU
aW1lT3B0aW9uRGVmYXVsdHM6OkRhdGUgfHwgZGVmYXVsdHMgPT0gRGF0ZVRpbWVPcHRpb25EZWZh
dWx0czo6QWxsKSkgeworICAgICAgICAvLyBhLiBGb3IgZWFjaCBvZiB0aGUgcHJvcGVydHkgbmFt
ZXMgInllYXIiLCAibW9udGgiLCAiZGF5IjoKKyAgICAgICAgLy8gaS4gTGV0IHN0YXR1cyBiZSBD
cmVhdGVEYXRlUHJvcGVydHlPclRocm93KG9wdGlvbnMsIHByb3AsICJudW1lcmljIikuCisgICAg
ICAgIC8vIGlpLiBSZXR1cm5JZkFicnVwdChzdGF0dXMpLgorICAgICAgICBvcHRpb25zLT5wdXRE
aXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPnllYXIsIGpzU3RyaW5nKCZzdGF0ZSwgIm51bWVy
aWMiKSk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJl
dHVybiBudWxscHRyOworCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVy
dHlOYW1lcy0+bW9udGgsIGpzU3RyaW5nKCZzdGF0ZSwgIm51bWVyaWMiKSk7CisgICAgICAgIGlm
IChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworCisg
ICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+ZGF5LCBqc1N0
cmluZygmc3RhdGUsICJudW1lcmljIikpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9u
KCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKKyAgICAvLyA4LiBJZiBu
ZWVkRGVmYXVsdHMgaXMgdHJ1ZSBhbmQgZGVmYXVsdHMgaXMgZWl0aGVyICJ0aW1lIiBvciAiYWxs
IiwgdGhlbgorICAgIGlmIChuZWVkRGVmYXVsdHMgJiYgKGRlZmF1bHRzID09IERhdGVUaW1lT3B0
aW9uRGVmYXVsdHM6OlRpbWUgfHwgZGVmYXVsdHMgPT0gRGF0ZVRpbWVPcHRpb25EZWZhdWx0czo6
QWxsKSkgeworICAgICAgICAvLyBhLiBGb3IgZWFjaCBvZiB0aGUgcHJvcGVydHkgbmFtZXMgImhv
dXIiLCAibWludXRlIiwgInNlY29uZCI6CisgICAgICAgIC8vIGkuIExldCBzdGF0dXMgYmUgQ3Jl
YXRlRGF0ZVByb3BlcnR5T3JUaHJvdyhvcHRpb25zLCBwcm9wLCAibnVtZXJpYyIpLgorICAgICAg
ICAvLyBpaS4gUmV0dXJuSWZBYnJ1cHQoc3RhdHVzKS4KKyAgICAgICAgb3B0aW9ucy0+cHV0RGly
ZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyLCBqc1N0cmluZygmc3RhdGUsICJudW1lcmlj
IikpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1
cm4gbnVsbHB0cjsKKworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5
TmFtZXMtPm1pbnV0ZSwganNTdHJpbmcoJnN0YXRlLCAibnVtZXJpYyIpKTsKKyAgICAgICAgaWYg
KHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAg
ICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5zZWNvbmQsIGpz
U3RyaW5nKCZzdGF0ZSwgIm51bWVyaWMiKSk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRp
b24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKworICAgIC8vIDkuIFJl
dHVybiBvcHRpb25zLgorICAgIHJldHVybiBvcHRpb25zOworfQorCitzdGF0aWMgdm9pZCBzZXRG
b3JtYXRzRnJvbVBhdHRlcm4oSW50bERhdGVUaW1lRm9ybWF0JiBkYXRlVGltZUZvcm1hdCwgY29u
c3QgU3RyaW5nVmlldyYgcGF0dGVybikKK3sKKyAgICAvLyBHZXQgYWxsIHN5bWJvbHMgZnJvbSB0
aGUgcGF0dGVybiwgYW5kIHNldCBmb3JtYXQgZmllbGRzIGFjY29yZGluZ2x5LgorICAgIC8vIGh0
dHA6Ly91bmljb2RlLm9yZy9yZXBvcnRzL3RyMzUvdHIzNS1kYXRlcy5odG1sI0RhdGVfRmllbGRf
U3ltYm9sX1RhYmxlCisgICAgdW5zaWduZWQgbGVuZ3RoID0gcGF0dGVybi5sZW5ndGgoKTsKKyAg
ICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbGVuZ3RoOyArK2kpIHsKKyAgICAgICAgVUNoYXIg
Y3VycmVudENoYXJhY3RlciA9IHBhdHRlcm5baV07CisgICAgICAgIGlmICghaXNBU0NJSUFscGhh
KGN1cnJlbnRDaGFyYWN0ZXIpKQorICAgICAgICAgICAgY29udGludWU7CisKKyAgICAgICAgdW5z
aWduZWQgY291bnQgPSAxOworICAgICAgICB3aGlsZSAoaSArIDEgPCBsZW5ndGggJiYgcGF0dGVy
bltpICsgMV0gPT0gY3VycmVudENoYXJhY3RlcikgeworICAgICAgICAgICAgKytjb3VudDsKKyAg
ICAgICAgICAgICsraTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChjdXJyZW50Q2hhcmFjdGVy
ID09ICdoJyB8fCBjdXJyZW50Q2hhcmFjdGVyID09ICdLJykKKyAgICAgICAgICAgIGRhdGVUaW1l
Rm9ybWF0LnNldEhvdXIxMih0cnVlKTsKKyAgICAgICAgZWxzZSBpZiAoY3VycmVudENoYXJhY3Rl
ciA9PSAnSCcgfHwgY3VycmVudENoYXJhY3RlciA9PSAnaycpCisgICAgICAgICAgICBkYXRlVGlt
ZUZvcm1hdC5zZXRIb3VyMTIoZmFsc2UpOworCisgICAgICAgIHN3aXRjaCAoY3VycmVudENoYXJh
Y3RlcikgeworICAgICAgICBjYXNlICdHJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAzKQor
ICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldEVyYShJbnRsRGF0ZVRpbWVGb3JtYXQ6
OkVyYVN0eWxlOjpTaG9ydCk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA0KQorICAg
ICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldEVyYShJbnRsRGF0ZVRpbWVGb3JtYXQ6OkVy
YVN0eWxlOjpMb25nKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDUpCisgICAgICAg
ICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0RXJhKEludGxEYXRlVGltZUZvcm1hdDo6RXJhU3R5
bGU6Ok5hcnJvdyk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAneSc6CisgICAg
ICAgICAgICBpZiAoY291bnQgPT0gMSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5z
ZXRZZWFyKEludGxEYXRlVGltZUZvcm1hdDo6WWVhclN0eWxlOjpOdW1lcmljKTsKKyAgICAgICAg
ICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQu
c2V0WWVhcihJbnRsRGF0ZVRpbWVGb3JtYXQ6OlllYXJTdHlsZTo6VHdvRGlnaXQpOworICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ00nOgorICAgICAgICBjYXNlICdMJzoKKyAgICAg
ICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNl
dE1vbnRoKEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZTo6TnVtZXJpYyk7CisgICAgICAg
ICAgICBlbHNlIGlmIChjb3VudCA9PSAyKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0
LnNldE1vbnRoKEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZTo6VHdvRGlnaXQpOworICAg
ICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMykKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZv
cm1hdC5zZXRNb250aChJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6OlNob3J0KTsKKyAg
ICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDQpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVG
b3JtYXQuc2V0TW9udGgoSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0eWxlOjpMb25nKTsKKyAg
ICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDUpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVG
b3JtYXQuc2V0TW9udGgoSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0eWxlOjpOYXJyb3cpOwor
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ0UnOgorICAgICAgICAgICAgaWYgKGNv
dW50ID09IDMpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0V2Vla2RheShJbnRs
RGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHlsZTo6U2hvcnQpOworICAgICAgICAgICAgZWxzZSBp
ZiAoY291bnQgPT0gNCkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRXZWVrZGF5
KEludGxEYXRlVGltZUZvcm1hdDo6V2Vla2RheVN0eWxlOjpMb25nKTsKKyAgICAgICAgICAgIGVs
c2UgaWYgKGNvdW50ID09IDUpCisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0V2Vl
a2RheShJbnRsRGF0ZVRpbWVGb3JtYXQ6OldlZWtkYXlTdHlsZTo6TmFycm93KTsKKyAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICBjYXNlICdkJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAx
KQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldERheShJbnRsRGF0ZVRpbWVGb3Jt
YXQ6OkRheVN0eWxlOjpOdW1lcmljKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIp
CisgICAgICAgICAgICAgICAgZGF0ZVRpbWVGb3JtYXQuc2V0RGF5KEludGxEYXRlVGltZUZvcm1h
dDo6RGF5U3R5bGU6OlR3b0RpZ2l0KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNl
ICdoJzoKKyAgICAgICAgY2FzZSAnSCc6CisgICAgICAgIGNhc2UgJ2snOgorICAgICAgICBjYXNl
ICdLJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAgIGRhdGVU
aW1lRm9ybWF0LnNldEhvdXIoSW50bERhdGVUaW1lRm9ybWF0OjpIb3VyU3R5bGU6Ok51bWVyaWMp
OworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAgICAgICAgICAgICBkYXRl
VGltZUZvcm1hdC5zZXRIb3VyKEludGxEYXRlVGltZUZvcm1hdDo6SG91clN0eWxlOjpUd29EaWdp
dCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAnbSc6CisgICAgICAgICAgICBp
ZiAoY291bnQgPT0gMSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRNaW51dGUo
SW50bERhdGVUaW1lRm9ybWF0OjpNaW51dGVTdHlsZTo6TnVtZXJpYyk7CisgICAgICAgICAgICBl
bHNlIGlmIChjb3VudCA9PSAyKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldE1p
bnV0ZShJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1pbnV0ZVN0eWxlOjpUd29EaWdpdCk7CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgY2FzZSAncyc6CisgICAgICAgICAgICBpZiAoY291bnQgPT0g
MSkKKyAgICAgICAgICAgICAgICBkYXRlVGltZUZvcm1hdC5zZXRTZWNvbmQoSW50bERhdGVUaW1l
Rm9ybWF0OjpTZWNvbmRTdHlsZTo6TnVtZXJpYyk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3Vu
dCA9PSAyKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9ybWF0LnNldFNlY29uZChJbnRsRGF0
ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpUd29EaWdpdCk7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgY2FzZSAneic6CisgICAgICAgIGNhc2UgJ3YnOgorICAgICAgICBjYXNlICdWJzoK
KyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAgIGRhdGVUaW1lRm9y
bWF0LnNldFRpbWVab25lTmFtZShJbnRsRGF0ZVRpbWVGb3JtYXQ6OlRpbWVab25lTmFtZVN0eWxl
OjpTaG9ydCk7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA0KQorICAgICAgICAgICAg
ICAgIGRhdGVUaW1lRm9ybWF0LnNldFRpbWVab25lTmFtZShJbnRsRGF0ZVRpbWVGb3JtYXQ6OlRp
bWVab25lTmFtZVN0eWxlOjpMb25nKTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9Cisg
ICAgfQorfQorCitKU1ZhbHVlIGluaXRpYWxpemVEYXRlVGltZUZvcm1hdChFeGVjU3RhdGUmIHN0
YXRlLCBJbnRsRGF0ZVRpbWVGb3JtYXQmIGRhdGVUaW1lRm9ybWF0LCBKU1ZhbHVlIGxvY2FsZXMs
IEpTVmFsdWUgb3JpZ2luYWxPcHRpb25zKQoreworICAgIC8vIDEyLjEuMSBJbml0aWFsaXplRGF0
ZVRpbWVGb3JtYXQgKGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKSAoRUNNQS00MDIg
Mi4wKQorICAgIC8vIDEuIElmIGRhdGVUaW1lRm9ybWF0LltbaW5pdGlhbGl6ZWRJbnRsT2JqZWN0
XV0gaXMgdHJ1ZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICAgIGlmIChkYXRlVGlt
ZUZvcm1hdC5pbml0aWFsaXplZEludGxPYmplY3QoKSkKKyAgICAgICAgdGhyb3dUeXBlRXJyb3Io
JnN0YXRlLCBBU0NJSUxpdGVyYWwoIk9iamVjdCBhbHJlYWR5IGluaXRpYWxpemVkIikpOworCisg
ICAgLy8gMi4gU2V0IGRhdGVUaW1lRm9ybWF0LltbaW5pdGlhbGl6ZWRJbnRsT2JqZWN0XV0gdG8g
dHJ1ZS4KKyAgICBkYXRlVGltZUZvcm1hdC5zZXRJbml0aWFsaXplZEludGxPYmplY3QoKTsKKwor
ICAgIC8vIDMuIExldCByZXF1ZXN0ZWRMb2NhbGVzIGJlIENhbm9uaWNhbGl6ZUxvY2FsZUxpc3Qo
bG9jYWxlcykuCisgICAgVmVjdG9yPFN0cmluZz4gcmVxdWVzdGVkTG9jYWxlcyA9IGNhbm9uaWNh
bGl6ZUxvY2FsZUxpc3Qoc3RhdGUsIGxvY2FsZXMpOworICAgIC8vIDQuIFJldHVybklmQWJydXB0
KHJlcXVlc3RlZExvY2FsZXMpLAorICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAg
ICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisKKyAgICAvLyA1LiBMZXQgb3B0aW9ucyBiZSBUb0Rh
dGVUaW1lT3B0aW9ucyhvcHRpb25zLCAiYW55IiwgImRhdGUiKS4KKyAgICBKU09iamVjdCogb3B0
aW9ucyA9IHRvRGF0ZVRpbWVPcHRpb25zKHN0YXRlLCBvcmlnaW5hbE9wdGlvbnMsIERhdGVUaW1l
T3B0aW9uUmVxdWlyZWQ6OkFueSwgRGF0ZVRpbWVPcHRpb25EZWZhdWx0czo6RGF0ZSk7CisgICAg
Ly8gNi4gUmV0dXJuSWZBYnJ1cHQob3B0aW9ucykuCisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlv
bigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAgIC8vIDcuIExldCBvcHQg
YmUgYSBuZXcgUmVjb3JkLgorICAgIEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+IGxvY2FsZU9wdDsK
KworICAgIC8vIDguIExldCBtYXRjaGVyIGJlIEdldE9wdGlvbihvcHRpb25zLCAibG9jYWxlTWF0
Y2hlciIsICJzdHJpbmciLCDCqyJsb29rdXAiLCAiYmVzdCBmaXQiwrssICJiZXN0IGZpdCIpLgor
ICAgIFZNJiB2bSA9IHN0YXRlLnZtKCk7CisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IGxvY2Fs
ZU1hdGNoZXJzKHsgQVNDSUlMaXRlcmFsKCJsb29rdXAiKSwgQVNDSUlMaXRlcmFsKCJiZXN0IGZp
dCIpIH0pOworICAgIFN0cmluZyBsb2NhbGVNYXRjaGVyID0gaW50bFN0cmluZ09wdGlvbihzdGF0
ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlTWF0Y2hlciwgbG9jYWxlTWF0Y2hl
cnMsICJsb2NhbGVNYXRjaGVyIG11c3QgYmUgZWl0aGVyIFwibG9va3VwXCIgb3IgXCJiZXN0IGZp
dFwiIiwgQVNDSUlMaXRlcmFsKCJiZXN0IGZpdCIpKTsKKyAgICAvLyA5LiBSZXR1cm5JZkFicnVw
dChtYXRjaGVyKS4KKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVy
biBqc1VuZGVmaW5lZCgpOworICAgIC8vIDEwLiBTZXQgb3B0LltbbG9jYWxlTWF0Y2hlcl1dIHRv
IG1hdGNoZXIuCisgICAgbG9jYWxlT3B0LnNldCh2bS5wcm9wZXJ0eU5hbWVzLT5sb2NhbGVNYXRj
aGVyLnN0cmluZygpLCBsb2NhbGVNYXRjaGVyKTsKKworICAgIC8vIDExLiBMZXQgbG9jYWxlRGF0
YSBiZSB0aGUgdmFsdWUgb2YgJURhdGVUaW1lRm9ybWF0JS5bW2xvY2FsZURhdGFdXS4KKyAgICAv
LyAxMi4gTGV0IHIgYmUgUmVzb2x2ZUxvY2FsZSggJURhdGVUaW1lRm9ybWF0JS5bW2F2YWlsYWJs
ZUxvY2FsZXNdXSwgcmVxdWVzdGVkTG9jYWxlcywgb3B0LCAlRGF0ZVRpbWVGb3JtYXQlLltbcmVs
ZXZhbnRFeHRlbnNpb25LZXlzXV0sIGxvY2FsZURhdGEpLgorICAgIGNvbnN0IEhhc2hTZXQ8U3Ry
aW5nPiBhdmFpbGFibGVMb2NhbGVzID0gc3RhdGUubGV4aWNhbEdsb2JhbE9iamVjdCgpLT5pbnRs
RGF0ZVRpbWVGb3JtYXRBdmFpbGFibGVMb2NhbGVzKCk7CisgICAgY29uc3QgVmVjdG9yPFN0cmlu
Zz4gcmVsZXZhbnRFeHRlbnNpb25LZXlzID0geyBBU0NJSUxpdGVyYWwoImNhIiksIEFTQ0lJTGl0
ZXJhbCgibnUiKSB9OworICAgIEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+IHJlc29sdmVkID0gcmVz
b2x2ZUxvY2FsZShhdmFpbGFibGVMb2NhbGVzLCByZXF1ZXN0ZWRMb2NhbGVzLCBsb2NhbGVPcHQs
IHJlbGV2YW50RXh0ZW5zaW9uS2V5cywgbG9jYWxlRGF0YSk7CisKKyAgICAvLyAxMy4gU2V0IGRh
dGVUaW1lRm9ybWF0LltbbG9jYWxlXV0gdG8gdGhlIHZhbHVlIG9mIHIuW1tsb2NhbGVdXS4KKyAg
ICBkYXRlVGltZUZvcm1hdC5zZXRMb2NhbGUocmVzb2x2ZWQuZ2V0KHZtLnByb3BlcnR5TmFtZXMt
PmxvY2FsZS5zdHJpbmcoKSkpOworICAgIC8vIDE0LiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tjYWxl
bmRhcl1dIHRvIHRoZSB2YWx1ZSBvZiByLltbY2FdXS4KKyAgICBTdHJpbmcgY2FsZW5kYXIgPSBy
ZXNvbHZlZC5nZXQoQVNDSUlMaXRlcmFsKCJjYSIpKTsKKyAgICAvLyBTd2l0Y2ggdG8gcHJlZmVy
cmVkIGFsaWFzZXMuCisgICAgaWYgKGNhbGVuZGFyID09ICJncmVnb3J5IikKKyAgICAgICAgY2Fs
ZW5kYXIgPSBBU0NJSUxpdGVyYWwoImdyZWdvcmlhbiIpOworICAgIGVsc2UgaWYgKGNhbGVuZGFy
ID09ICJpc2xhbWljYyIpCisgICAgICAgIGNhbGVuZGFyID0gQVNDSUlMaXRlcmFsKCJpc2xhbWlj
LWNpdmlsIik7CisgICAgZWxzZSBpZiAoY2FsZW5kYXIgPT0gImV0aGlvYWEiKQorICAgICAgICBj
YWxlbmRhciA9IEFTQ0lJTGl0ZXJhbCgiZXRoaW9waWMtYW1ldGUtYWxlbSIpOworICAgIGRhdGVU
aW1lRm9ybWF0LnNldENhbGVuZGFyKGNhbGVuZGFyKTsKKyAgICAvLyAxNS4gU2V0IGRhdGVUaW1l
Rm9ybWF0LltbbnVtYmVyaW5nU3lzdGVtXV0gdG8gdGhlIHZhbHVlIG9mIHIuW1tudV1dLgorICAg
IGRhdGVUaW1lRm9ybWF0LnNldE51bWJlcmluZ1N5c3RlbShyZXNvbHZlZC5nZXQoQVNDSUlMaXRl
cmFsKCJudSIpKSk7CisgICAgLy8gMTYuIExldCBkYXRhTG9jYWxlIGJlIHRoZSB2YWx1ZSBvZiBy
LltbZGF0YUxvY2FsZV1dLgorICAgIFN0cmluZyBkYXRhTG9jYWxlID0gcmVzb2x2ZWQuZ2V0KEFT
Q0lJTGl0ZXJhbCgiZGF0YUxvY2FsZSIpKTsKKworICAgIC8vIDE3LiBMZXQgdHogYmUgR2V0KG9w
dGlvbnMsICJ0aW1lWm9uZSIpLgorICAgIEpTVmFsdWUgdHpWYWx1ZSA9IG9wdGlvbnMtPmdldCgm
c3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPnRpbWVab25lKTsKKyAgICAvLyAxOC4gUmV0dXJuSWZB
YnJ1cHQodHopLgorICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJu
IGpzVW5kZWZpbmVkKCk7CisKKyAgICAvLyAxOS4gSWYgdHogaXMgbm90IHVuZGVmaW5lZCwgdGhl
bgorICAgIFN0cmluZyB0ejsKKyAgICBpZiAoIXR6VmFsdWUuaXNVbmRlZmluZWQoKSkgeworICAg
ICAgICAvLyBhLiBMZXQgdHogYmUgVG9TdHJpbmcodHopLgorICAgICAgICBTdHJpbmcgb3JpZ2lu
YWxUeiA9IHR6VmFsdWUudG9XVEZTdHJpbmcoJnN0YXRlKTsKKyAgICAgICAgLy8gYi4gUmV0dXJu
SWZBYnJ1cHQodHopLgorICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAg
ICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKyAgICAgICAgLy8gYy4gSWYgdGhlIHJlc3VsdCBv
ZiBJc1ZhbGlkVGltZVpvbmVOYW1lKHR6KSBpcyBmYWxzZSwgdGhlbiBpLiBUaHJvdyBhIFJhbmdl
RXJyb3IgZXhjZXB0aW9uLgorICAgICAgICAvLyBkLiBMZXQgdHogYmUgQ2Fub25pY2FsaXplVGlt
ZVpvbmVOYW1lKHR6KS4KKyAgICAgICAgdHogPSBjYW5vbmljYWxpemVUaW1lWm9uZU5hbWUob3Jp
Z2luYWxUeik7CisgICAgICAgIGlmICh0ei5pc051bGwoKSkKKyAgICAgICAgICAgIHJldHVybiB0
aHJvd1JhbmdlRXJyb3IoJnN0YXRlLCBTdHJpbmc6OmZvcm1hdCgiaW52YWxpZCB0aW1lIHpvbmU6
ICVzIiwgb3JpZ2luYWxUei51dGY4KCkuZGF0YSgpKSk7CisgICAgfSBlbHNlCisgICAgLy8gMjAu
IEVsc2UsCisgICAgICAgIC8vIGEuIExldCB0eiBiZSBEZWZhdWx0VGltZVpvbmUoKS4KKyAgICAg
ICAgdHogPSBkZWZhdWx0VGltZVpvbmUoKTsKKworICAgIC8vIDIxLiBTZXQgZGF0ZVRpbWVGb3Jt
YXQuW1t0aW1lWm9uZV1dIHRvIHR6LgorICAgIGRhdGVUaW1lRm9ybWF0LnNldFRpbWVab25lKHR6
KTsKKworICAgIC8vIDIyLiBMZXQgb3B0IGJlIGEgbmV3IFJlY29yZC4KKyAgICAvLyBSYXRoZXIg
dGhhbiBidWlsZGluZyBhIHJlY29yZCwgYnVpbGQgdGhlIHNrZWxldG9uIHBhdHRlcm4uCisgICAg
U3RyaW5nQnVpbGRlciBmb3JtYXRPcHQ7CisKKyAgICAvLyAyMy4gRm9yIGVhY2ggcm93IG9mIFRh
YmxlIDMsIGV4Y2VwdCB0aGUgaGVhZGVyIHJvdywgZG86CisgICAgLy8gYS4gTGV0IHByb3AgYmUg
dGhlIG5hbWUgZ2l2ZW4gaW4gdGhlIFByb3BlcnR5IGNvbHVtbiBvZiB0aGUgcm93LgorICAgIC8v
IGIuIExldCB2YWx1ZSBiZSBHZXRPcHRpb24ob3B0aW9ucywgcHJvcCwgInN0cmluZyIsIMKrdGhl
IHN0cmluZ3MgZ2l2ZW4gaW4gdGhlIFZhbHVlcyBjb2x1bW4gb2YgdGhlIHJvd8K7LCB1bmRlZmlu
ZWQpLgorICAgIC8vIGMuIFJldHVybklmQWJydXB0KHZhbHVlKS4KKyAgICAvLyBkLiBTZXQgb3B0
LltbPHByb3A+XV0gdG8gdmFsdWUuCisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IG5hcnJvd1No
b3J0TG9uZyh7IEFTQ0lJTGl0ZXJhbCgibmFycm93IiksIEFTQ0lJTGl0ZXJhbCgic2hvcnQiKSwg
QVNDSUlMaXRlcmFsKCJsb25nIikgfSk7CisgICAgY29uc3QgSGFzaFNldDxTdHJpbmc+IHR3b0Rp
Z2l0TnVtZXJpYyh7IEFTQ0lJTGl0ZXJhbCgiMi1kaWdpdCIpLCBBU0NJSUxpdGVyYWwoIm51bWVy
aWMiKSB9KTsKKyAgICBjb25zdCBIYXNoU2V0PFN0cmluZz4gdHdvRGlnaXROdW1lcmljTmFycm93
U2hvcnRMb25nKHsgQVNDSUlMaXRlcmFsKCIyLWRpZ2l0IiksIEFTQ0lJTGl0ZXJhbCgibnVtZXJp
YyIpLCBBU0NJSUxpdGVyYWwoIm5hcnJvdyIpLCBBU0NJSUxpdGVyYWwoInNob3J0IiksIEFTQ0lJ
TGl0ZXJhbCgibG9uZyIpIH0pOworICAgIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiBzaG9ydExvbmco
eyBBU0NJSUxpdGVyYWwoInNob3J0IiksIEFTQ0lJTGl0ZXJhbCgibG9uZyIpIH0pOworCisgICAg
U3RyaW5nIHdlZWtkYXkgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9w
ZXJ0eU5hbWVzLT53ZWVrZGF5LCBuYXJyb3dTaG9ydExvbmcsICJ3ZWVrZGF5IG11c3QgYmUgXCJu
YXJyb3dcIiwgXCJzaG9ydFwiLCBvciBcImxvbmdcIiIsIFN0cmluZygpKTsKKyAgICBpZiAoc3Rh
dGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIGlm
ICghd2Vla2RheS5pc051bGwoKSkgeworICAgICAgICBpZiAod2Vla2RheSA9PSAibmFycm93IikK
KyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRlcmFsKCJFRUVFRSIpOworICAgICAgICBl
bHNlIGlmICh3ZWVrZGF5ID09ICJzaG9ydCIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5k
TGl0ZXJhbCgiRUVFIik7CisgICAgICAgIGVsc2UgaWYgKHdlZWtkYXkgPT0gImxvbmciKQorICAg
ICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoIkVFRUUiKTsKKyAgICB9CisKKyAgICBT
dHJpbmcgZXJhID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlO
YW1lcy0+ZXJhLCBuYXJyb3dTaG9ydExvbmcsICJlcmEgbXVzdCBiZSBcIm5hcnJvd1wiLCBcInNo
b3J0XCIsIG9yIFwibG9uZ1wiIiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRp
b24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCFlcmEuaXNOdWxs
KCkpIHsKKyAgICAgICAgaWYgKGVyYSA9PSAibmFycm93IikKKyAgICAgICAgICAgIGZvcm1hdE9w
dC5hcHBlbmRMaXRlcmFsKCJHR0dHRyIpOworICAgICAgICBlbHNlIGlmIChlcmEgPT0gInNob3J0
IikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRlcmFsKCJHR0ciKTsKKyAgICAgICAg
ZWxzZSBpZiAoZXJhID09ICJsb25nIikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRl
cmFsKCJHR0dHIik7CisgICAgfQorCisgICAgU3RyaW5nIHllYXIgPSBpbnRsU3RyaW5nT3B0aW9u
KHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT55ZWFyLCB0d29EaWdpdE51bWVyaWMs
ICJ5ZWFyIG11c3QgYmUgXCIyLWRpZ2l0XCIgb3IgXCJudW1lcmljXCIiLCBTdHJpbmcoKSk7Cisg
ICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQo
KTsKKyAgICBpZiAoIXllYXIuaXNOdWxsKCkpIHsKKyAgICAgICAgaWYgKHllYXIgPT0gIjItZGln
aXQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoInl5Iik7CisgICAgICAg
IGVsc2UgaWYgKHllYXIgPT0gIm51bWVyaWMiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVu
ZCgneScpOworICAgIH0KKworICAgIFN0cmluZyBtb250aCA9IGludGxTdHJpbmdPcHRpb24oc3Rh
dGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPm1vbnRoLCB0d29EaWdpdE51bWVyaWNOYXJy
b3dTaG9ydExvbmcsICJtb250aCBtdXN0IGJlIFwiMi1kaWdpdFwiLCBcIm51bWVyaWNcIiwgXCJu
YXJyb3dcIiwgXCJzaG9ydFwiLCBvciBcImxvbmdcIiIsIFN0cmluZygpKTsKKyAgICBpZiAoc3Rh
dGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIGlm
ICghbW9udGguaXNOdWxsKCkpIHsKKyAgICAgICAgaWYgKG1vbnRoID09ICIyLWRpZ2l0IikKKyAg
ICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRlcmFsKCJNTSIpOworICAgICAgICBlbHNlIGlm
IChtb250aCA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCdNJyk7
CisgICAgICAgIGVsc2UgaWYgKG1vbnRoID09ICJuYXJyb3ciKQorICAgICAgICAgICAgZm9ybWF0
T3B0LmFwcGVuZExpdGVyYWwoIk1NTU1NIik7CisgICAgICAgIGVsc2UgaWYgKG1vbnRoID09ICJz
aG9ydCIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kTGl0ZXJhbCgiTU1NIik7CisgICAg
ICAgIGVsc2UgaWYgKG1vbnRoID09ICJsb25nIikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBl
bmRMaXRlcmFsKCJNTU1NIik7CisgICAgfQorCisgICAgU3RyaW5nIGRheSA9IGludGxTdHJpbmdP
cHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmRheSwgdHdvRGlnaXROdW1l
cmljLCAiZGF5IG11c3QgYmUgXCIyLWRpZ2l0XCIgb3IgXCJudW1lcmljXCIiLCBTdHJpbmcoKSk7
CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4ganNVbmRlZmlu
ZWQoKTsKKyAgICBpZiAoIWRheS5pc051bGwoKSkgeworICAgICAgICBpZiAoZGF5ID09ICIyLWRp
Z2l0IikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRlcmFsKCJkZCIpOworICAgICAg
ICBlbHNlIGlmIChkYXkgPT0gIm51bWVyaWMiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVu
ZCgnZCcpOworICAgIH0KKworICAgIFN0cmluZyBob3VyID0gaW50bFN0cmluZ09wdGlvbihzdGF0
ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+aG91ciwgdHdvRGlnaXROdW1lcmljLCAiaG91
ciBtdXN0IGJlIFwiMi1kaWdpdFwiIG9yIFwibnVtZXJpY1wiIiwgU3RyaW5nKCkpOworICAgIGlm
IChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisK
KyAgICAvLyBXZSBuZWVkIGhvdXIxMiB0byBtYWtlIHRoZSBob3VyIHNrZWxldG9uIHBhdHRlcm4g
ZGVjaXNpb24sIHNvIGRvIHRoaXMgZWFybHkuCisgICAgLy8gMzIuIExldCBocjEyIGJlIEdldE9w
dGlvbihvcHRpb25zLCAiaG91cjEyIiwgImJvb2xlYW4iLCB1bmRlZmluZWQsIHVuZGVmaW5lZCku
CisgICAgYm9vbCBpc0hvdXIxMlVuZGVmaW5lZCA9IHRydWU7CisgICAgYm9vbCBocjEyID0gaW50
bEJvb2xlYW5PcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmhvdXIxMiwg
aXNIb3VyMTJVbmRlZmluZWQpOworICAgIC8vIDMzLiBSZXR1cm5JZkFicnVwdChocjEyKS4KKyAg
ICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgp
OworCisgICAgaWYgKCFob3VyLmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChpc0hvdXIxMlVuZGVm
aW5lZCkgeworICAgICAgICAgICAgaWYgKGhvdXIgPT0gIjItZGlnaXQiKQorICAgICAgICAgICAg
ICAgIGZvcm1hdE9wdC5hcHBlbmRMaXRlcmFsKCJqaiIpOworICAgICAgICAgICAgZWxzZSBpZiAo
aG91ciA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgnaicp
OworICAgICAgICB9IGVsc2UgaWYgKGhyMTIpIHsKKyAgICAgICAgICAgIGlmIChob3VyID09ICIy
LWRpZ2l0IikKKyAgICAgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kTGl0ZXJhbCgiaGgiKTsK
KyAgICAgICAgICAgIGVsc2UgaWYgKGhvdXIgPT0gIm51bWVyaWMiKQorICAgICAgICAgICAgICAg
IGZvcm1hdE9wdC5hcHBlbmQoJ2gnKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGlm
IChob3VyID09ICIyLWRpZ2l0IikKKyAgICAgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kTGl0
ZXJhbCgiSEgiKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGhvdXIgPT0gIm51bWVyaWMiKQorICAg
ICAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoJ0gnKTsKKyAgICAgICAgfQorICAgIH0KKwor
ICAgIFN0cmluZyBtaW51dGUgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5w
cm9wZXJ0eU5hbWVzLT5taW51dGUsIHR3b0RpZ2l0TnVtZXJpYywgIm1pbnV0ZSBtdXN0IGJlIFwi
Mi1kaWdpdFwiIG9yIFwibnVtZXJpY1wiIiwgU3RyaW5nKCkpOworICAgIGlmIChzdGF0ZS5oYWRF
eGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CisgICAgaWYgKCFtaW51
dGUuaXNOdWxsKCkpIHsKKyAgICAgICAgaWYgKG1pbnV0ZSA9PSAiMi1kaWdpdCIpCisgICAgICAg
ICAgICBmb3JtYXRPcHQuYXBwZW5kTGl0ZXJhbCgibW0iKTsKKyAgICAgICAgZWxzZSBpZiAobWlu
dXRlID09ICJudW1lcmljIikKKyAgICAgICAgICAgIGZvcm1hdE9wdC5hcHBlbmQoJ20nKTsKKyAg
ICB9CisKKyAgICBTdHJpbmcgc2Vjb25kID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9u
cywgdm0ucHJvcGVydHlOYW1lcy0+c2Vjb25kLCB0d29EaWdpdE51bWVyaWMsICJzZWNvbmQgbXVz
dCBiZSBcIjItZGlnaXRcIiBvciBcIm51bWVyaWNcIiIsIFN0cmluZygpKTsKKyAgICBpZiAoc3Rh
dGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworICAgIGlm
ICghc2Vjb25kLmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChzZWNvbmQgPT0gIjItZGlnaXQiKQor
ICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoInNzIik7CisgICAgICAgIGVsc2Ug
aWYgKHNlY29uZCA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICBmb3JtYXRPcHQuYXBwZW5kKCdz
Jyk7CisgICAgfQorCisgICAgU3RyaW5nIHRpbWVab25lTmFtZSA9IGludGxTdHJpbmdPcHRpb24o
c3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnRpbWVab25lTmFtZSwgc2hvcnRMb25n
LCAidGltZVpvbmVOYW1lIG11c3QgYmUgXCJzaG9ydFwiIG9yIFwibG9uZ1wiIiwgU3RyaW5nKCkp
OworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZp
bmVkKCk7CisgICAgaWYgKCF0aW1lWm9uZU5hbWUuaXNOdWxsKCkpIHsKKyAgICAgICAgaWYgKHRp
bWVab25lTmFtZSA9PSAic2hvcnQiKQorICAgICAgICAgICAgZm9ybWF0T3B0LmFwcGVuZCgneicp
OworICAgICAgICBlbHNlIGlmICh0aW1lWm9uZU5hbWUgPT0gImxvbmciKQorICAgICAgICAgICAg
Zm9ybWF0T3B0LmFwcGVuZExpdGVyYWwoInp6enoiKTsKKyAgICB9CisKKyAgICAvLyAyNC4gTGV0
IGRhdGFMb2NhbGVEYXRhIGJlIEdldChsb2NhbGVEYXRhLCBkYXRhTG9jYWxlKS4KKyAgICAvLyAy
NS4gTGV0IGZvcm1hdHMgYmUgR2V0KGRhdGFMb2NhbGVEYXRhLCAiZm9ybWF0cyIpLgorICAgIC8v
IDI2LiBMZXQgbWF0Y2hlciBiZSBHZXRPcHRpb24ob3B0aW9ucywgImZvcm1hdE1hdGNoZXIiLCAi
c3RyaW5nIiwgwqsiYmFzaWMiLCAiYmVzdCBmaXQiwrssICJiZXN0IGZpdCIpLgorICAgIGNvbnN0
IEhhc2hTZXQ8U3RyaW5nPiBmb3JtYXRNYXRjaGVycyh7IEFTQ0lJTGl0ZXJhbCgiYmFzaWMiKSwg
QVNDSUlMaXRlcmFsKCJiZXN0IGZpdCIpIH0pOworICAgIGludGxTdHJpbmdPcHRpb24oc3RhdGUs
IG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmZvcm1hdE1hdGNoZXIsIGZvcm1hdE1hdGNoZXJz
LCAiZm9ybWF0TWF0Y2hlciBtdXN0IGJlIGVpdGhlciBcImJhc2ljXCIgb3IgXCJiZXN0IGZpdFwi
IiwgQVNDSUlMaXRlcmFsKCJiZXN0IGZpdCIpKTsKKyAgICAvLyAyNy4gUmV0dXJuSWZBYnJ1cHQo
bWF0Y2hlcikuCisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4g
anNVbmRlZmluZWQoKTsKKworICAgIC8vIEFsd2F5cyB1c2UgSUNVIGRhdGUgZm9ybWF0IGdlbmVy
YXRvciwgcmF0aGVyIHRoYW4gb3VyIG93biBwYXR0ZXJuIGxpc3QgYW5kIG1hdGNoZXIuCisgICAg
Ly8gQ292ZXJzIHN0ZXBzIDI4LTM2LgorICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VS
Uk9SOworICAgIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IqIGdlbmVyYXRvciA9IHVkYXRwZ19v
cGVuKGRhdGFMb2NhbGUudXRmOCgpLmRhdGEoKSwgJnN0YXR1cyk7CisgICAgaWYgKFVfRkFJTFVS
RShzdGF0dXMpKQorICAgICAgICByZXR1cm4gdGhyb3dUeXBlRXJyb3IoJnN0YXRlLCBBU0NJSUxp
dGVyYWwoImZhaWxlZCB0byBpbml0aWFsaXplIERhdGVUaW1lRm9ybWF0IikpOworCisgICAgU3Ry
aW5nIHBhdHRlcm4gPSBmb3JtYXRPcHQudG9TdHJpbmcoKTsKKyAgICBTdHJpbmdWaWV3IHNrZWxl
dG9uKHBhdHRlcm4pOworICAgIHN0YXR1cyA9IFVfWkVST19FUlJPUjsKKyAgICBpbnQzMl90IHBh
dHRlcm5MZW5ndGggPSB1ZGF0cGdfZ2V0QmVzdFBhdHRlcm4oZ2VuZXJhdG9yLCBza2VsZXRvbi51
cGNvbnZlcnRlZENoYXJhY3RlcnMoKSwgc2tlbGV0b24ubGVuZ3RoKCksIG51bGxwdHIsIDAsICZz
dGF0dXMpOworICAgIGlmIChzdGF0dXMgPT0gVV9CVUZGRVJfT1ZFUkZMT1dfRVJST1IpIHsKKyAg
ICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICBWZWN0b3I8VUNoYXIsIDMyPiBw
YXR0ZXJuQnVmZmVyKHBhdHRlcm5MZW5ndGgpOworICAgICAgICB1ZGF0cGdfZ2V0QmVzdFBhdHRl
cm4oZ2VuZXJhdG9yLCBza2VsZXRvbi51cGNvbnZlcnRlZENoYXJhY3RlcnMoKSwgc2tlbGV0b24u
bGVuZ3RoKCksIHBhdHRlcm5CdWZmZXIuZGF0YSgpLCBwYXR0ZXJuTGVuZ3RoLCAmc3RhdHVzKTsK
KyAgICAgICAgaWYgKFVfU1VDQ0VTUyhzdGF0dXMpKQorICAgICAgICAgICAgcGF0dGVybiA9IFN0
cmluZyhwYXR0ZXJuQnVmZmVyLmRhdGEoKSwgcGF0dGVybkxlbmd0aCk7CisgICAgfQorICAgIHVk
YXRwZ19jbG9zZShnZW5lcmF0b3IpOworICAgIGlmIChVX0ZBSUxVUkUoc3RhdHVzKSkKKyAgICAg
ICAgcmV0dXJuIHRocm93VHlwZUVycm9yKCZzdGF0ZSwgQVNDSUlMaXRlcmFsKCJmYWlsZWQgdG8g
aW5pdGlhbGl6ZSBEYXRlVGltZUZvcm1hdCIpKTsKKworICAgIHNldEZvcm1hdHNGcm9tUGF0dGVy
bihkYXRlVGltZUZvcm1hdCwgcGF0dGVybik7CisKKyAgICAvLyAzNy4gU2V0IGRhdGVUaW1lRm9y
bWF0LltbYm91bmRGb3JtYXRdXSB0byB1bmRlZmluZWQuCisgICAgLy8gQWxyZWFkeSB1bmRlZmlu
ZWQuCisKKyAgICAvLyAzOC4gU2V0IGRhdGVUaW1lRm9ybWF0LltbaW5pdGlhbGl6ZWREYXRlVGlt
ZUZvcm1hdF1dIHRvIHRydWUuCisgICAgZGF0ZVRpbWVGb3JtYXQuc2V0SW5pdGlhbGl6ZWREYXRl
VGltZUZvcm1hdCgpOworCisgICAgLy8gMzkuIFJldHVybmRhdGVUaW1lRm9ybWF0LgorICAgIHJl
dHVybiAmZGF0ZVRpbWVGb3JtYXQ7Cit9CisKIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwg
SW50bERhdGVUaW1lRm9ybWF0RnVuY0Zvcm1hdERhdGVUaW1lKEV4ZWNTdGF0ZSogc3RhdGUpCiB7
CiAgICAgLy8gMTIuMy40IERhdGVUaW1lIEZvcm1hdCBGdW5jdGlvbnMgKEVDTUEtNDAyIDIuMCkK
ICAgICAvLyAxLiBMZXQgZHRmIGJlIHRoZSB0aGlzIHZhbHVlLgogICAgIEludGxEYXRlVGltZUZv
cm1hdCogZm9ybWF0ID0ganNEeW5hbWljQ2FzdDxJbnRsRGF0ZVRpbWVGb3JtYXQqPihzdGF0ZS0+
dGhpc1ZhbHVlKCkpOwogICAgIC8vIDIuIEFzc2VydDogVHlwZShkdGYpIGlzIE9iamVjdCBhbmQg
ZHRmIGhhcyBhbiBbW2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXRdXSBpbnRlcm5hbCBzbG90IHdo
b3NlIHZhbHVlIGlzIHRydWUuCi0gICAgaWYgKCFmb3JtYXQpCi0gICAgICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3Ioc3RhdGUpKTsKKyAgICBpZiAoIWZvcm1hdCB8fCAh
Zm9ybWF0LT5pbml0aWFsaXplZERhdGVUaW1lRm9ybWF0KCkpCisgICAgICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3Ioc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiRGF0ZVRpbWVG
b3JtYXQgZm9ybWF0KCkgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRp
YWxpemVkIGFzIGEgRGF0ZVRpbWVGb3JtYXQiKSkpOwogCiAgICAgSlNWYWx1ZSBkYXRlID0gc3Rh
dGUtPmFyZ3VtZW50KDApOwogICAgIGRvdWJsZSB2YWx1ZTsKQEAgLTExNyw3ICs3MDMsNyBAQCBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdEZ1bmNGb3JtYXRE
YXRlVGltZShFeGVjU3RhdGUqIHN0YQogCiAgICAgLy8gMS4gSWYgeCBpcyBub3QgYSBmaW5pdGUg
TnVtYmVyLCB0aGVuIHRocm93IGEgUmFuZ2VFcnJvciBleGNlcHRpb24uCiAgICAgaWYgKCFzdGQ6
OmlzZmluaXRlKHZhbHVlKSkKLSAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1Jh
bmdlRXJyb3Ioc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiZGF0ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGlu
IERhdGVUaW1lRm9ybWF0LmZvcm1hdCgpIikpKTsKKyAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVu
Y29kZSh0aHJvd1JhbmdlRXJyb3Ioc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiZGF0ZSB2YWx1ZSBpcyBu
b3QgZmluaXRlIGluIERhdGVUaW1lRm9ybWF0IGZvcm1hdCgpIikpKTsKIAogICAgIC8vIEZJWE1F
OiBpbXBsZW1lbnQgMiAtIDkKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsRGF0ZVRpbWVGb3JtYXQuaAppbmRleCA3ZGFlZDEzOGZiMDhkY2ZhM2JlNjdkMzdjODNh
NDdkYjRhYWJjYmQ3Li43NWJmZTliNjEyZTExZDcwMmE2MWVmNjc1NWU0MTgyNTZkZDlhMTA5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3Jt
YXQuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3Jt
YXQuaApAQCAtMzksNiArMzksMTYgQEAgY2xhc3MgSW50bERhdGVUaW1lRm9ybWF0IDogcHVibGlj
IEpTRGVzdHJ1Y3RpYmxlT2JqZWN0IHsKIHB1YmxpYzoKICAgICB0eXBlZGVmIEpTRGVzdHJ1Y3Rp
YmxlT2JqZWN0IEJhc2U7CiAKKyAgICBlbnVtIGNsYXNzIFdlZWtkYXlTdHlsZSB7IE5vbmUsIE5h
cnJvdywgU2hvcnQsIExvbmcgfTsKKyAgICBlbnVtIGNsYXNzIEVyYVN0eWxlIHsgTm9uZSwgTmFy
cm93LCBTaG9ydCwgTG9uZyB9OworICAgIGVudW0gY2xhc3MgWWVhclN0eWxlIHsgTm9uZSwgVHdv
RGlnaXQsIE51bWVyaWMgfTsKKyAgICBlbnVtIGNsYXNzIE1vbnRoU3R5bGUgeyBOb25lLCBUd29E
aWdpdCwgTnVtZXJpYywgTmFycm93LCBTaG9ydCwgTG9uZyB9OworICAgIGVudW0gY2xhc3MgRGF5
U3R5bGUgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJpYyB9OworICAgIGVudW0gY2xhc3MgSG91clN0
eWxlIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMgfTsKKyAgICBlbnVtIGNsYXNzIE1pbnV0ZVN0
eWxlIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMgfTsKKyAgICBlbnVtIGNsYXNzIFNlY29uZFN0
eWxlIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMgfTsKKyAgICBlbnVtIGNsYXNzIFRpbWVab25l
TmFtZVN0eWxlIHsgTm9uZSwgU2hvcnQsIExvbmcgfTsKKwogICAgIHN0YXRpYyBJbnRsRGF0ZVRp
bWVGb3JtYXQqIGNyZWF0ZShWTSYsIEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yKik7CiAg
ICAgc3RhdGljIFN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKFZNJiwgSlNHbG9iYWxPYmplY3Qq
LCBKU1ZhbHVlKTsKIApAQCAtNDcsNiArNTcsNDAgQEAgcHVibGljOgogICAgIEpTQm91bmRGdW5j
dGlvbiogYm91bmRGb3JtYXQoKSBjb25zdCB7IHJldHVybiBtX2JvdW5kRm9ybWF0LmdldCgpOyB9
CiAgICAgdm9pZCBzZXRCb3VuZEZvcm1hdChWTSYsIEpTQm91bmRGdW5jdGlvbiopOwogCisgICAg
Ym9vbCBpbml0aWFsaXplZEludGxPYmplY3QoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYWxpemVk
SW50bE9iamVjdDsgfQorICAgIHZvaWQgc2V0SW5pdGlhbGl6ZWRJbnRsT2JqZWN0KCkgeyBtX2lu
aXRpYWxpemVkSW50bE9iamVjdCA9IHRydWU7IH0KKyAgICBib29sIGluaXRpYWxpemVkRGF0ZVRp
bWVGb3JtYXQoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQ7IH0K
KyAgICB2b2lkIHNldEluaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQoKSB7IG1faW5pdGlhbGl6ZWRE
YXRlVGltZUZvcm1hdCA9IHRydWU7IH0KKworICAgIFN0cmluZyBsb2NhbGUoKSBjb25zdCB7IHJl
dHVybiBtX2xvY2FsZTsgfQorICAgIHZvaWQgc2V0TG9jYWxlKGNvbnN0IFN0cmluZyYgbG9jYWxl
KSB7IG1fbG9jYWxlID0gbG9jYWxlOyB9CisgICAgU3RyaW5nIGNhbGVuZGFyKCkgY29uc3QgeyBy
ZXR1cm4gbV9jYWxlbmRhcjsgfQorICAgIHZvaWQgc2V0Q2FsZW5kYXIoY29uc3QgU3RyaW5nJiBj
YWxlbmRhcikgeyBtX2NhbGVuZGFyID0gY2FsZW5kYXI7IH0KKyAgICBTdHJpbmcgbnVtYmVyaW5n
U3lzdGVtKCkgY29uc3QgeyByZXR1cm4gbV9udW1iZXJpbmdTeXN0ZW07IH0KKyAgICB2b2lkIHNl
dE51bWJlcmluZ1N5c3RlbShjb25zdCBTdHJpbmcmIG51bWJlcmluZ1N5c3RlbSkgeyBtX251bWJl
cmluZ1N5c3RlbSA9IG51bWJlcmluZ1N5c3RlbTsgfQorICAgIFN0cmluZyB0aW1lWm9uZSgpIGNv
bnN0IHsgcmV0dXJuIG1fdGltZVpvbmU7IH0KKyAgICB2b2lkIHNldFRpbWVab25lKGNvbnN0IFN0
cmluZyYgdGltZVpvbmUpIHsgbV90aW1lWm9uZSA9IHRpbWVab25lOyB9CisgICAgYm9vbCBob3Vy
MTIoKSBjb25zdCB7IHJldHVybiBtX2hvdXIxMjsgfQorICAgIHZvaWQgc2V0SG91cjEyKGNvbnN0
IGJvb2wmIGhvdXIxMikgeyBtX2hvdXIxMiA9IGhvdXIxMjsgfQorICAgIFdlZWtkYXlTdHlsZSB3
ZWVrZGF5KCkgY29uc3QgeyByZXR1cm4gbV93ZWVrZGF5OyB9CisgICAgdm9pZCBzZXRXZWVrZGF5
KGNvbnN0IFdlZWtkYXlTdHlsZSYgd2Vla2RheSkgeyBtX3dlZWtkYXkgPSB3ZWVrZGF5OyB9Cisg
ICAgRXJhU3R5bGUgZXJhKCkgY29uc3QgeyByZXR1cm4gbV9lcmE7IH0KKyAgICB2b2lkIHNldEVy
YShjb25zdCBFcmFTdHlsZSYgZXJhKSB7IG1fZXJhID0gZXJhOyB9CisgICAgWWVhclN0eWxlIHll
YXIoKSBjb25zdCB7IHJldHVybiBtX3llYXI7IH0KKyAgICB2b2lkIHNldFllYXIoY29uc3QgWWVh
clN0eWxlJiB5ZWFyKSB7IG1feWVhciA9IHllYXI7IH0KKyAgICBNb250aFN0eWxlIG1vbnRoKCkg
Y29uc3QgeyByZXR1cm4gbV9tb250aDsgfQorICAgIHZvaWQgc2V0TW9udGgoY29uc3QgTW9udGhT
dHlsZSYgbW9udGgpIHsgbV9tb250aCA9IG1vbnRoOyB9CisgICAgRGF5U3R5bGUgZGF5KCkgY29u
c3QgeyByZXR1cm4gbV9kYXk7IH0KKyAgICB2b2lkIHNldERheShjb25zdCBEYXlTdHlsZSYgZGF5
KSB7IG1fZGF5ID0gZGF5OyB9CisgICAgSG91clN0eWxlIGhvdXIoKSBjb25zdCB7IHJldHVybiBt
X2hvdXI7IH0KKyAgICB2b2lkIHNldEhvdXIoY29uc3QgSG91clN0eWxlJiBob3VyKSB7IG1faG91
ciA9IGhvdXI7IH0KKyAgICBNaW51dGVTdHlsZSBtaW51dGUoKSBjb25zdCB7IHJldHVybiBtX21p
bnV0ZTsgfQorICAgIHZvaWQgc2V0TWludXRlKGNvbnN0IE1pbnV0ZVN0eWxlJiBtaW51dGUpIHsg
bV9taW51dGUgPSBtaW51dGU7IH0KKyAgICBTZWNvbmRTdHlsZSBzZWNvbmQoKSBjb25zdCB7IHJl
dHVybiBtX3NlY29uZDsgfQorICAgIHZvaWQgc2V0U2Vjb25kKGNvbnN0IFNlY29uZFN0eWxlJiBz
ZWNvbmQpIHsgbV9zZWNvbmQgPSBzZWNvbmQ7IH0KKyAgICBUaW1lWm9uZU5hbWVTdHlsZSB0aW1l
Wm9uZU5hbWUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVab25lTmFtZTsgfQorICAgIHZvaWQgc2V0
VGltZVpvbmVOYW1lKGNvbnN0IFRpbWVab25lTmFtZVN0eWxlJiB0aW1lWm9uZU5hbWUpIHsgbV90
aW1lWm9uZU5hbWUgPSB0aW1lWm9uZU5hbWU7IH0KKwogcHJvdGVjdGVkOgogICAgIEludGxEYXRl
VGltZUZvcm1hdChWTSYsIFN0cnVjdHVyZSopOwogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oVk0m
KTsKQEAgLTU0LDggKzk4LDI5IEBAIHByb3RlY3RlZDoKICAgICBzdGF0aWMgdm9pZCB2aXNpdENo
aWxkcmVuKEpTQ2VsbCosIFNsb3RWaXNpdG9yJik7CiAKICAgICBXcml0ZUJhcnJpZXI8SlNCb3Vu
ZEZ1bmN0aW9uPiBtX2JvdW5kRm9ybWF0OworCitwcml2YXRlOgorICAgIGJvb2wgbV9pbml0aWFs
aXplZEludGxPYmplY3QgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pbml0aWFsaXplZERhdGVUaW1l
Rm9ybWF0IHsgZmFsc2UgfTsKKworICAgIFN0cmluZyBtX2xvY2FsZSB7IEFTQ0lJTGl0ZXJhbCgi
ZW4iKSB9OworICAgIFN0cmluZyBtX2NhbGVuZGFyIHsgQVNDSUlMaXRlcmFsKCJncmVnb3J5Iikg
fTsKKyAgICBTdHJpbmcgbV9udW1iZXJpbmdTeXN0ZW0geyBBU0NJSUxpdGVyYWwoImxhdG4iKSB9
OworICAgIFN0cmluZyBtX3RpbWVab25lIHsgQVNDSUlMaXRlcmFsKCJVVEMiKSB9OworICAgIGJv
b2wgbV9ob3VyMTIgeyB0cnVlIH07CisgICAgV2Vla2RheVN0eWxlIG1fd2Vla2RheSB7IFdlZWtk
YXlTdHlsZTo6Tm9uZSB9OworICAgIEVyYVN0eWxlIG1fZXJhIHsgRXJhU3R5bGU6Ok5vbmUgfTsK
KyAgICBZZWFyU3R5bGUgbV95ZWFyIHsgWWVhclN0eWxlOjpOb25lIH07CisgICAgTW9udGhTdHls
ZSBtX21vbnRoIHsgTW9udGhTdHlsZTo6Tm9uZSB9OworICAgIERheVN0eWxlIG1fZGF5IHsgRGF5
U3R5bGU6Ok5vbmUgfTsKKyAgICBIb3VyU3R5bGUgbV9ob3VyIHsgSG91clN0eWxlOjpOb25lIH07
CisgICAgTWludXRlU3R5bGUgbV9taW51dGUgeyBNaW51dGVTdHlsZTo6Tm9uZSB9OworICAgIFNl
Y29uZFN0eWxlIG1fc2Vjb25kIHsgU2Vjb25kU3R5bGU6Ok5vbmUgfTsKKyAgICBUaW1lWm9uZU5h
bWVTdHlsZSBtX3RpbWVab25lTmFtZSB7IFRpbWVab25lTmFtZVN0eWxlOjpOb25lIH07CiB9Owot
ICAgIAorCitTdHJpbmcgZGVmYXVsdFRpbWVab25lKCk7CitKU1ZhbHVlIGluaXRpYWxpemVEYXRl
VGltZUZvcm1hdChFeGVjU3RhdGUmLCBJbnRsRGF0ZVRpbWVGb3JtYXQmLCBKU1ZhbHVlIGxvY2Fs
ZXMsIEpTVmFsdWUgb3B0aW9ucyk7CiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxE
YXRlVGltZUZvcm1hdEZ1bmNGb3JtYXREYXRlVGltZShFeGVjU3RhdGUqKTsKIAogfSAvLyBuYW1l
c3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
RGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMWU4OWZhYWFiN2Vi
ODhjN2Y4NjRlMGY1M2YyNTVjYjhhMmM1ZWVjYy4uZjdmYWVjMDlkYTkxOGQ3NGMyYTI3ZjgyOTVl
MGQ4MjhiNWRmNGY0OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcApAQCAtMTA0LDkg
KzEwNCw5IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdElu
dGxEYXRlVGltZUZvcm1hdChFeGVjU3RhdGUqIHN0YXRlCiAgICAgQVNTRVJUKGRhdGVUaW1lRm9y
bWF0KTsKIAogICAgIC8vIDQuIFJldHVybiBJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoZGF0ZVRp
bWVGb3JtYXQsIGxvY2FsZXMsIG9wdGlvbnMpLgotICAgIC8vIEZJWE1FOiByZXR1cm4gSlNWYWx1
ZTo6ZW5jb2RlKEluaXRpYWxpemVEYXRlVGltZUZvcm1hdChkYXRlVGltZUZvcm1hdCwgbG9jYWxl
cywgb3B0aW9ucykpOwotCi0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShkYXRlVGltZUZvcm1h
dCk7CisgICAgSlNWYWx1ZSBsb2NhbGVzID0gc3RhdGUtPmFyZ3VtZW50KDApOworICAgIEpTVmFs
dWUgb3B0aW9ucyA9IHN0YXRlLT5hcmd1bWVudCgxKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5j
b2RlKGluaXRpYWxpemVEYXRlVGltZUZvcm1hdCgqc3RhdGUsICpkYXRlVGltZUZvcm1hdCwgbG9j
YWxlcywgb3B0aW9ucykpOwogfQogCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBjYWxsSW50bERhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSogc3RhdGUpCkBAIC0xMjMsOSArMTIz
LDkgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY2FsbEludGxEYXRlVGlt
ZUZvcm1hdChFeGVjU3RhdGUqIHN0YXRlKQogICAgIEFTU0VSVChkYXRlVGltZUZvcm1hdCk7CiAK
ICAgICAvLyA0LiBSZXR1cm4gSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KGRhdGVUaW1lRm9ybWF0
LCBsb2NhbGVzLCBvcHRpb25zKS4KLSAgICAvLyBGSVhNRTogcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZShJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoZGF0ZVRpbWVGb3JtYXQsIGxvY2FsZXMsIG9wdGlv
bnMpKTsKLQotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoZGF0ZVRpbWVGb3JtYXQpOworICAg
IEpTVmFsdWUgbG9jYWxlcyA9IHN0YXRlLT5hcmd1bWVudCgwKTsKKyAgICBKU1ZhbHVlIG9wdGlv
bnMgPSBzdGF0ZS0+YXJndW1lbnQoMSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShpbml0
aWFsaXplRGF0ZVRpbWVGb3JtYXQoKnN0YXRlLCAqZGF0ZVRpbWVGb3JtYXQsIGxvY2FsZXMsIG9w
dGlvbnMpKTsKIH0KIAogQ29uc3RydWN0VHlwZSBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rv
cjo6Z2V0Q29uc3RydWN0RGF0YShKU0NlbGwqLCBDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRh
KQpAQCAtMTYxLDcgKzE2MSw3IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERh
dGVUaW1lRm9ybWF0Q29uc3RydWN0b3JGdW5jU3VwcG9ydGVkTG9jYWxlc09mCiAgICAgLy8gMy4g
UmV0dXJuIFN1cHBvcnRlZExvY2FsZXMoYXZhaWxhYmxlTG9jYWxlcywgcmVxdWVzdGVkTG9jYWxl
cywgb3B0aW9ucykuCiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShzdXBwb3J0ZWRMb2NhbGVz
KCpzdGF0ZSwgYXZhaWxhYmxlTG9jYWxlcywgcmVxdWVzdGVkTG9jYWxlcywgc3RhdGUtPmFyZ3Vt
ZW50KDEpKSk7CiB9Ci0gICAgCisKIHZvaWQgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3I6
OnZpc2l0Q2hpbGRyZW4oSlNDZWxsKiBjZWxsLCBTbG90VmlzaXRvciYgdmlzaXRvcikKIHsKICAg
ICBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvciogdGhpc09iamVjdCA9IGpzQ2FzdDxJbnRs
RGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcio+KGNlbGwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5j
cHAKaW5kZXggZDVlNTI1OTgyNDgwYjFlZDQ5MWU2YjdiOGZiMTJiYjhhZjFhZWU3ZC4uODNlYmU2
YzE5ODJiNzdhNzhmZWRjYWRkNWRhOWY2OWM3YWZhMjNmNSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5
cGUuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAKICNpbmNsdWRlICJFcnJvci5oIgogI2luY2x1ZGUg
IkludGxEYXRlVGltZUZvcm1hdC5oIgorI2luY2x1ZGUgIkludGxPYmplY3QuaCIKICNpbmNsdWRl
ICJKU0JvdW5kRnVuY3Rpb24uaCIKICNpbmNsdWRlICJKU0NKU1ZhbHVlSW5saW5lcy5oIgogI2lu
Y2x1ZGUgIkpTQ2VsbElubGluZXMuaCIKQEAgLTM5LDggKzQwLDYgQEAKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLVNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShJbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGUpOwotCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0YXRlKik7CiBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90
b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKEV4ZWNTdGF0ZSopOwogCkBAIC01OSwxMCArNTgsMTEg
QEAgY29uc3QgQ2xhc3NJbmZvIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6c19pbmZvID0g
eyAiT2JqZWN0IiwgJkludGxEYXRlVGltZUYKIEBlbmQKICovCiAKLUludGxEYXRlVGltZUZvcm1h
dFByb3RvdHlwZSogSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpjcmVhdGUoVk0mIHZtLCBK
U0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSogc3RydWN0dXJlKQorSW50bERhdGVUaW1lRm9ybWF0
UHJvdG90eXBlKiBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OmNyZWF0ZShFeGVjU3RhdGUq
IHN0YXRlLCBKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSogc3RydWN0dXJlKQogeworICAgIFZN
JiB2bSA9IHN0YXRlLT52bSgpOwogICAgIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSogb2Jq
ZWN0ID0gbmV3IChOb3ROdWxsLCBhbGxvY2F0ZUNlbGw8SW50bERhdGVUaW1lRm9ybWF0UHJvdG90
eXBlPih2bS5oZWFwKSkgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKHZtLCBzdHJ1Y3R1cmUp
OwotICAgIG9iamVjdC0+ZmluaXNoQ3JlYXRpb24odm0sIHN0cnVjdHVyZSk7CisgICAgb2JqZWN0
LT5maW5pc2hDcmVhdGlvbihzdGF0ZSwgc3RydWN0dXJlKTsKICAgICByZXR1cm4gb2JqZWN0Owog
fQogCkBAIC03Niw5ICs3NiwxMyBAQCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OkludGxE
YXRlVGltZUZvcm1hdFByb3RvdHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydQogewogfQogCi12
b2lkIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBT
dHJ1Y3R1cmUqKQordm9pZCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKEV4ZWNTdGF0ZSogc3RhdGUsIFN0cnVjdHVyZSopCiB7CisgICAgVk0mIHZtID0gc3RhdGUt
PnZtKCk7CiAgICAgQmFzZTo6ZmluaXNoQ3JlYXRpb24odm0pOworCisgICAgLy8gVGhlIEludGwu
RGF0ZVRpbWVGb3JtYXQgcHJvdG90eXBlIG9iamVjdCBpcyBpdHNlbGYgYW4gJURhdGVUaW1lRm9y
bWF0JSBpbnN0YW5jZSwgd2hvc2UgaW50ZXJuYWwgc2xvdHMgYXJlIHNldCBhcyBpZiBpdCBoYWQg
YmVlbiBjb25zdHJ1Y3RlZCBieSB0aGUgZXhwcmVzc2lvbiBDb25zdHJ1Y3QoJURhdGVUaW1lRm9y
bWF0JSkuCisgICAgaW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KCpzdGF0ZSwgKnRoaXMsIGpzVW5k
ZWZpbmVkKCksIGpzVW5kZWZpbmVkKCkpOwogfQogCiBib29sIEludGxEYXRlVGltZUZvcm1hdFBy
b3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSog
c3RhdGUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKQEAg
LTg2LDE1ICs5MCwxNTEgQEAgYm9vbCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OmdldE93
blByb3BlcnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUKICAgICByZXR1cm4gZ2V0
U3RhdGljRnVuY3Rpb25TbG90PEpTT2JqZWN0PihzdGF0ZSwgZGF0ZVRpbWVGb3JtYXRQcm90b3R5
cGVUYWJsZSwganNDYXN0PEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSo+KG9iamVjdCksIHBy
b3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKK3N0YXRpYyBTdHJpbmcgd2Vla2RheVN0eWxlVG9TdHJp
bmcoY29uc3QgSW50bERhdGVUaW1lRm9ybWF0OjpXZWVrZGF5U3R5bGUgc3R5bGUpCit7CisgICAg
c3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpXZWVrZGF5U3R5
bGU6Ok5vbmU6CisgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICBjYXNlIEludGxEYXRlVGlt
ZUZvcm1hdDo6V2Vla2RheVN0eWxlOjpOYXJyb3c6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVy
YWwoIm5hcnJvdyIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpXZWVrZGF5U3R5bGU6
OlNob3J0OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJzaG9ydCIpOworICAgIGNhc2Ug
SW50bERhdGVUaW1lRm9ybWF0OjpXZWVrZGF5U3R5bGU6Okxvbmc6CisgICAgICAgIHJldHVybiBB
U0NJSUxpdGVyYWwoImxvbmciKTsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Cisg
ICAgcmV0dXJuIFN0cmluZygpOworfQorCitzdGF0aWMgU3RyaW5nIGVyYVN0eWxlVG9TdHJpbmco
Y29uc3QgSW50bERhdGVUaW1lRm9ybWF0OjpFcmFTdHlsZSBzdHlsZSkKK3sKKyAgICBzd2l0Y2gg
KHN0eWxlKSB7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkVyYVN0eWxlOjpOb25lOgor
ICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkVy
YVN0eWxlOjpOYXJyb3c6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIm5hcnJvdyIpOwor
ICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpFcmFTdHlsZTo6U2hvcnQ6CisgICAgICAgIHJl
dHVybiBBU0NJSUxpdGVyYWwoInNob3J0Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6
OkVyYVN0eWxlOjpMb25nOgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJsb25nIik7Cisg
ICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBTdHJpbmcoKTsKK30K
Kworc3RhdGljIFN0cmluZyB5ZWFyU3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3Jt
YXQ6OlllYXJTdHlsZSBzdHlsZSkKK3sKKyAgICBzd2l0Y2ggKHN0eWxlKSB7CisgICAgY2FzZSBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OlllYXJTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmlu
ZygpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpZZWFyU3R5bGU6OlR3b0RpZ2l0Ogor
ICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCIyLWRpZ2l0Iik7CisgICAgY2FzZSBJbnRsRGF0
ZVRpbWVGb3JtYXQ6OlllYXJTdHlsZTo6TnVtZXJpYzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0
ZXJhbCgibnVtZXJpYyIpOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICBy
ZXR1cm4gU3RyaW5nKCk7Cit9CisKK3N0YXRpYyBTdHJpbmcgbW9udGhTdHlsZVRvU3RyaW5nKGNv
bnN0IEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZSBzdHlsZSkKK3sKKyAgICBzd2l0Y2gg
KHN0eWxlKSB7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ok1vbnRoU3R5bGU6Ok5vbmU6
CisgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6
TW9udGhTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIjItZGln
aXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZTo6TnVtZXJpYzoK
KyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibnVtZXJpYyIpOworICAgIGNhc2UgSW50bERh
dGVUaW1lRm9ybWF0OjpNb250aFN0eWxlOjpOYXJyb3c6CisgICAgICAgIHJldHVybiBBU0NJSUxp
dGVyYWwoIm5hcnJvdyIpOworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpNb250aFN0eWxl
OjpTaG9ydDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgic2hvcnQiKTsKKyAgICBjYXNl
IEludGxEYXRlVGltZUZvcm1hdDo6TW9udGhTdHlsZTo6TG9uZzoKKyAgICAgICAgcmV0dXJuIEFT
Q0lJTGl0ZXJhbCgibG9uZyIpOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAg
ICByZXR1cm4gU3RyaW5nKCk7Cit9CisKK3N0YXRpYyBTdHJpbmcgZGF5U3R5bGVUb1N0cmluZyhj
b25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkRheVN0eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAo
c3R5bGUpIHsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6RGF5U3R5bGU6Ok5vbmU6Cisg
ICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6RGF5
U3R5bGU6OlR3b0RpZ2l0OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCIyLWRpZ2l0Iik7
CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkRheVN0eWxlOjpOdW1lcmljOgorICAgICAg
ICByZXR1cm4gQVNDSUlMaXRlcmFsKCJudW1lcmljIik7CisgICAgfQorICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3RhdGljIFN0cmluZyBob3Vy
U3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkhvdXJTdHlsZSBzdHlsZSkK
K3sKKyAgICBzd2l0Y2ggKHN0eWxlKSB7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6Okhv
dXJTdHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgIGNhc2UgSW50bERh
dGVUaW1lRm9ybWF0OjpIb3VyU3R5bGU6OlR3b0RpZ2l0OgorICAgICAgICByZXR1cm4gQVNDSUlM
aXRlcmFsKCIyLWRpZ2l0Iik7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkhvdXJTdHls
ZTo6TnVtZXJpYzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibnVtZXJpYyIpOworICAg
IH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gU3RyaW5nKCk7Cit9CisK
K3N0YXRpYyBTdHJpbmcgbWludXRlU3R5bGVUb1N0cmluZyhjb25zdCBJbnRsRGF0ZVRpbWVGb3Jt
YXQ6Ok1pbnV0ZVN0eWxlIHN0eWxlKQoreworICAgIHN3aXRjaCAoc3R5bGUpIHsKKyAgICBjYXNl
IEludGxEYXRlVGltZUZvcm1hdDo6TWludXRlU3R5bGU6Ok5vbmU6CisgICAgICAgIHJldHVybiBT
dHJpbmcoKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6TWludXRlU3R5bGU6OlR3b0Rp
Z2l0OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCIyLWRpZ2l0Iik7CisgICAgY2FzZSBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6Ok1pbnV0ZVN0eWxlOjpOdW1lcmljOgorICAgICAgICByZXR1cm4g
QVNDSUlMaXRlcmFsKCJudW1lcmljIik7CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworc3RhdGljIFN0cmluZyBzZWNvbmRTdHlsZVRv
U3RyaW5nKGNvbnN0IEludGxEYXRlVGltZUZvcm1hdDo6U2Vjb25kU3R5bGUgc3R5bGUpCit7Cisg
ICAgc3dpdGNoIChzdHlsZSkgeworICAgIGNhc2UgSW50bERhdGVUaW1lRm9ybWF0OjpTZWNvbmRT
dHlsZTo6Tm9uZToKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgIGNhc2UgSW50bERhdGVU
aW1lRm9ybWF0OjpTZWNvbmRTdHlsZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiBBU0NJSUxp
dGVyYWwoIjItZGlnaXQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6U2Vjb25kU3R5
bGU6Ok51bWVyaWM6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoIm51bWVyaWMiKTsKKyAg
ICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIFN0cmluZygpOworfQor
CitzdGF0aWMgU3RyaW5nIHRpbWVab25lTmFtZVN0eWxlVG9TdHJpbmcoY29uc3QgSW50bERhdGVU
aW1lRm9ybWF0OjpUaW1lWm9uZU5hbWVTdHlsZSBzdHlsZSkKK3sKKyAgICBzd2l0Y2ggKHN0eWxl
KSB7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlRpbWVab25lTmFtZVN0eWxlOjpOb25l
OgorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgY2FzZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6
OlRpbWVab25lTmFtZVN0eWxlOjpTaG9ydDoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgi
c2hvcnQiKTsKKyAgICBjYXNlIEludGxEYXRlVGltZUZvcm1hdDo6VGltZVpvbmVOYW1lU3R5bGU6
Okxvbmc6CisgICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoImxvbmciKTsKKyAgICB9CisgICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIFN0cmluZygpOworfQorCiBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUdldHRlckZv
cm1hdChFeGVjU3RhdGUqIHN0YXRlKQogewogICAgIC8vIDEyLjMuMyBJbnRsLkRhdGVUaW1lRm9y
bWF0LnByb3RvdHlwZS5mb3JtYXQgKEVDTUEtNDAyIDIuMCkKICAgICAvLyAxLiBMZXQgZHRmIGJl
IHRoaXMgRGF0ZVRpbWVGb3JtYXQgb2JqZWN0LgogICAgIEludGxEYXRlVGltZUZvcm1hdCogZHRm
ID0ganNEeW5hbWljQ2FzdDxJbnRsRGF0ZVRpbWVGb3JtYXQqPihzdGF0ZS0+dGhpc1ZhbHVlKCkp
OwogICAgIC8vIDIuIFJldHVybklmQWJydXB0KGR0ZikuCi0gICAgaWYgKCFkdGYpCisgICAgaWYg
KCFkdGYgfHwgIWR0Zi0+aW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdCgpKQogICAgICAgICByZXR1
cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93VHlwZUVycm9yKHN0YXRlLCBBU0NJSUxpdGVyYWwoIklu
dGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCBjYWxsZWQgb24gdmFsdWUgdGhhdCdz
IG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdCIpKSk7Ci0gICAg
CisKICAgICBKU0JvdW5kRnVuY3Rpb24qIGJvdW5kRm9ybWF0ID0gZHRmLT5ib3VuZEZvcm1hdCgp
OwogICAgIC8vIDMuIElmIHRoZSBbW2JvdW5kRm9ybWF0XV0gaW50ZXJuYWwgc2xvdCBvZiB0aGlz
IERhdGVUaW1lRm9ybWF0IG9iamVjdCBpcyB1bmRlZmluZWQsCiAgICAgaWYgKCFib3VuZEZvcm1h
dCkgewpAQCAtMTA2LDcgKzI0Niw3IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50
bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlR2V0dGVyRm9ybWF0KEV4ZWNTdGF0ZSoKICAgICAgICAg
SlNBcnJheSogYm91bmRBcmdzID0gSlNBcnJheTo6dHJ5Q3JlYXRlVW5pbml0aWFsaXplZCh2bSwg
Z2xvYmFsT2JqZWN0LT5hcnJheVN0cnVjdHVyZUZvckluZGV4aW5nVHlwZUR1cmluZ0FsbG9jYXRp
b24oQXJyYXlXaXRoVW5kZWNpZGVkKSwgMCk7CiAgICAgICAgIGlmICghYm91bmRBcmdzKQogICAg
ICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd091dE9mTWVtb3J5RXJyb3Ioc3Rh
dGUpKTsKLSAgICAgICAgCisKICAgICAgICAgLy8gYy4gTGV0IGJmIGJlIEJvdW5kRnVuY3Rpb25D
cmVhdGUoRiwgwqt0aGlzIHZhbHVlwrspLgogICAgICAgICBib3VuZEZvcm1hdCA9IEpTQm91bmRG
dW5jdGlvbjo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHRhcmdldE9iamVjdCwgZHRmLCBib3Vu
ZEFyZ3MsIDEsIEFTQ0lJTGl0ZXJhbCgiZm9ybWF0IikpOwogICAgICAgICAvLyBkLiBTZXQgZHRm
LltbYm91bmRGb3JtYXRdXSB0byBiZi4KQEAgLTEyMCwxNSArMjYwLDQ4IEBAIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlRnVuY1Jlc29sdmVk
T3B0aW9ucyhFeGVjCiB7CiAgICAgLy8gMTIuMy41IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90
eXBlLnJlc29sdmVkT3B0aW9ucygpIChFQ01BLTQwMiAyLjApCiAgICAgSW50bERhdGVUaW1lRm9y
bWF0KiBkdGYgPSBqc0R5bmFtaWNDYXN0PEludGxEYXRlVGltZUZvcm1hdCo+KHN0YXRlLT50aGlz
VmFsdWUoKSk7Ci0gICAgaWYgKCFkdGYpCisgICAgaWYgKCFkdGYgfHwgIWR0Zi0+aW5pdGlhbGl6
ZWREYXRlVGltZUZvcm1hdCgpKQogICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93
VHlwZUVycm9yKHN0YXRlLCBBU0NJSUxpdGVyYWwoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90
eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3Qg
aW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdCIpKSk7CiAKICAgICAvLyBUaGUgZnVuY3Rp
b24gcmV0dXJucyBhIG5ldyBvYmplY3Qgd2hvc2UgcHJvcGVydGllcyBhbmQgYXR0cmlidXRlcyBh
cmUgc2V0IGFzIGlmIGNvbnN0cnVjdGVkIGJ5IGFuIG9iamVjdCBsaXRlcmFsIGFzc2lnbmluZyB0
byBlYWNoIG9mIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllcyB0aGUgdmFsdWUgb2YgdGhlIGNvcnJl
c3BvbmRpbmcgaW50ZXJuYWwgc2xvdCBvZiB0aGlzIERhdGVUaW1lRm9ybWF0IG9iamVjdCAoc2Vl
IDEyLjQpOiBsb2NhbGUsIGNhbGVuZGFyLCBudW1iZXJpbmdTeXN0ZW0sIHRpbWVab25lLCBob3Vy
MTIsIHdlZWtkYXksIGVyYSwgeWVhciwgbW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQs
IGFuZCB0aW1lWm9uZU5hbWUuIFByb3BlcnRpZXMgd2hvc2UgY29ycmVzcG9uZGluZyBpbnRlcm5h
bCBzbG90cyBhcmUgbm90IHByZXNlbnQgYXJlIG5vdCBhc3NpZ25lZC4KICAgICAvLyBOb3RlOiBJ
biB0aGlzIHZlcnNpb24gb2YgdGhlIEVDTUFTY3JpcHQgMjAxNSBJbnRlcm5hdGlvbmFsaXphdGlv
biBBUEksIHRoZSB0aW1lWm9uZSBwcm9wZXJ0eSB3aWxsIGJlIHRoZSBuYW1lIG9mIHRoZSBkZWZh
dWx0IHRpbWUgem9uZSBpZiBubyB0aW1lWm9uZSBwcm9wZXJ0eSB3YXMgcHJvdmlkZWQgaW4gdGhl
IG9wdGlvbnMgb2JqZWN0IHByb3ZpZGVkIHRvIHRoZSBJbnRsLkRhdGVUaW1lRm9ybWF0IGNvbnN0
cnVjdG9yLiBUaGUgcHJldmlvdXMgdmVyc2lvbiBsZWZ0IHRoZSB0aW1lWm9uZSBwcm9wZXJ0eSB1
bmRlZmluZWQgaW4gdGhpcyBjYXNlLgogCisgICAgVk0mIHZtID0gc3RhdGUtPnZtKCk7CisKICAg
ICBKU09iamVjdCogb3B0aW9ucyA9IGNvbnN0cnVjdEVtcHR5T2JqZWN0KHN0YXRlKTsKKyAgICBv
cHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmxvY2FsZSwganNOb250cml2
aWFsU3RyaW5nKHN0YXRlLCBkdGYtPmxvY2FsZSgpKSk7CisgICAgb3B0aW9ucy0+cHV0RGlyZWN0
KHZtLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKCZ2bSwgImNhbGVuZGFyIiksIGpzTm9udHJpdmlh
bFN0cmluZyhzdGF0ZSwgZHRmLT5jYWxlbmRhcigpKSk7CisgICAgb3B0aW9ucy0+cHV0RGlyZWN0
KHZtLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKCZ2bSwgIm51bWJlcmluZ1N5c3RlbSIpLCBqc05v
bnRyaXZpYWxTdHJpbmcoc3RhdGUsIGR0Zi0+bnVtYmVyaW5nU3lzdGVtKCkpKTsKKyAgICBvcHRp
b25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPnRpbWVab25lLCBqc05vbnRyaXZp
YWxTdHJpbmcoc3RhdGUsIGR0Zi0+dGltZVpvbmUoKSkpOworCisgICAgaWYgKGR0Zi0+d2Vla2Rh
eSgpICE9IEludGxEYXRlVGltZUZvcm1hdDo6V2Vla2RheVN0eWxlOjpOb25lKQorICAgICAgICBv
cHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPndlZWtkYXksIGpzTm9udHJp
dmlhbFN0cmluZyhzdGF0ZSwgd2Vla2RheVN0eWxlVG9TdHJpbmcoZHRmLT53ZWVrZGF5KCkpKSk7
CisKKyAgICBpZiAoZHRmLT5lcmEoKSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OkVyYVN0eWxlOjpO
b25lKQorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmVy
YSwganNOb250cml2aWFsU3RyaW5nKHN0YXRlLCBlcmFTdHlsZVRvU3RyaW5nKGR0Zi0+ZXJhKCkp
KSk7CisKKyAgICBpZiAoZHRmLT55ZWFyKCkgIT0gSW50bERhdGVUaW1lRm9ybWF0OjpZZWFyU3R5
bGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1l
cy0+eWVhciwganNOb250cml2aWFsU3RyaW5nKHN0YXRlLCB5ZWFyU3R5bGVUb1N0cmluZyhkdGYt
PnllYXIoKSkpKTsKKworICAgIGlmIChkdGYtPm1vbnRoKCkgIT0gSW50bERhdGVUaW1lRm9ybWF0
OjpNb250aFN0eWxlOjpOb25lKQorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnBy
b3BlcnR5TmFtZXMtPm1vbnRoLCBqc05vbnRyaXZpYWxTdHJpbmcoc3RhdGUsIG1vbnRoU3R5bGVU
b1N0cmluZyhkdGYtPm1vbnRoKCkpKSk7CisKKyAgICBpZiAoZHRmLT5kYXkoKSAhPSBJbnRsRGF0
ZVRpbWVGb3JtYXQ6OkRheVN0eWxlOjpOb25lKQorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qo
dm0sIHZtLnByb3BlcnR5TmFtZXMtPmRheSwganNOb250cml2aWFsU3RyaW5nKHN0YXRlLCBkYXlT
dHlsZVRvU3RyaW5nKGR0Zi0+ZGF5KCkpKSk7CisKKyAgICBpZiAoZHRmLT5ob3VyKCkgIT0gSW50
bERhdGVUaW1lRm9ybWF0OjpIb3VyU3R5bGU6Ok5vbmUpIHsKKyAgICAgICAgb3B0aW9ucy0+cHV0
RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyLCBqc05vbnRyaXZpYWxTdHJpbmcoc3Rh
dGUsIGhvdXJTdHlsZVRvU3RyaW5nKGR0Zi0+aG91cigpKSkpOworICAgICAgICBvcHRpb25zLT5w
dXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmhvdXIxMiwganNCb29sZWFuKGR0Zi0+aG91
cjEyKCkpKTsKKyAgICB9CisKKyAgICBpZiAoZHRmLT5taW51dGUoKSAhPSBJbnRsRGF0ZVRpbWVG
b3JtYXQ6Ok1pbnV0ZVN0eWxlOjpOb25lKQorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0s
IHZtLnByb3BlcnR5TmFtZXMtPm1pbnV0ZSwganNOb250cml2aWFsU3RyaW5nKHN0YXRlLCBtaW51
dGVTdHlsZVRvU3RyaW5nKGR0Zi0+bWludXRlKCkpKSk7CisKKyAgICBpZiAoZHRmLT5zZWNvbmQo
KSAhPSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OlNlY29uZFN0eWxlOjpOb25lKQorICAgICAgICBvcHRp
b25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPnNlY29uZCwganNOb250cml2aWFs
U3RyaW5nKHN0YXRlLCBzZWNvbmRTdHlsZVRvU3RyaW5nKGR0Zi0+c2Vjb25kKCkpKSk7CiAKLSAg
ICAvLyBGSVhNRTogUG9wdWxhdGUgb2JqZWN0IGZyb20gaW50ZXJuYWwgc2xvdHMuCisgICAgaWYg
KGR0Zi0+dGltZVpvbmVOYW1lKCkgIT0gSW50bERhdGVUaW1lRm9ybWF0OjpUaW1lWm9uZU5hbWVT
dHlsZTo6Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5h
bWVzLT50aW1lWm9uZU5hbWUsIGpzTm9udHJpdmlhbFN0cmluZyhzdGF0ZSwgdGltZVpvbmVOYW1l
U3R5bGVUb1N0cmluZyhkdGYtPnRpbWVab25lTmFtZSgpKSkpOwogCiAgICAgcmV0dXJuIEpTVmFs
dWU6OmVuY29kZShvcHRpb25zKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmgKaW5kZXggYTJmZDVl
MzRlYTc5NTg2ZTQ3ODk2ZmFmZmM0NGU1ZTZmYTYxNTljYi4uMTY1MGYxOTkwZjU3YmU0NTIxODRi
N2I2ZjAwZDY2YTMzOGQyN2I0NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmgKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmgKQEAgLTM4LDEzICsz
OCwxMyBAQCBwdWJsaWM6CiAgICAgdHlwZWRlZiBJbnRsRGF0ZVRpbWVGb3JtYXQgQmFzZTsKICAg
ICBzdGF0aWMgY29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBCYXNlOjpTdHJ1Y3R1cmVG
bGFncyB8IE92ZXJyaWRlc0dldE93blByb3BlcnR5U2xvdDsKIAotICAgIHN0YXRpYyBJbnRsRGF0
ZVRpbWVGb3JtYXRQcm90b3R5cGUqIGNyZWF0ZShWTSYsIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0
dXJlKik7CisgICAgc3RhdGljIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSogY3JlYXRlKEV4
ZWNTdGF0ZSosIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0dXJlKik7CiAgICAgc3RhdGljIFN0cnVj
dHVyZSogY3JlYXRlU3RydWN0dXJlKFZNJiwgSlNHbG9iYWxPYmplY3QqLCBKU1ZhbHVlKTsKIAog
ICAgIERFQ0xBUkVfSU5GTzsKIAogcHJvdGVjdGVkOgotICAgIHZvaWQgZmluaXNoQ3JlYXRpb24o
Vk0mLCBTdHJ1Y3R1cmUqKTsKKyAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSosIFN0
cnVjdHVyZSopOwogCiBwcml2YXRlOgogICAgIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZShW
TSYsIFN0cnVjdHVyZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2Jq
ZWN0LmNwcAppbmRleCA5MjI2OWJkODA3ZmVjOTNiY2RkZTZmYmMwMjIyZjU4ZWM2ZTU4ZmJjLi43
ZmFhZGViOWM1YmM1MDhmYTRhZmFlNjdhYmY0NDA2YTFjMjc4NTdmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmNwcApAQCAtNDUsNiArNDUsNyBAQAogI2lu
Y2x1ZGUgIkxvb2t1cC5oIgogI2luY2x1ZGUgIk9iamVjdFByb3RvdHlwZS5oIgogI2luY2x1ZGUg
PHVuaWNvZGUvdWxvYy5oPgorI2luY2x1ZGUgPHVuaWNvZGUvdW51bXN5cy5oPgogI2luY2x1ZGUg
PHd0Zi9Bc3NlcnRpb25zLmg+CiAKIG5hbWVzcGFjZSBKU0MgewpAQCAtNjgsMTUgKzY5LDE3IEBA
IEludGxPYmplY3Q6OkludGxPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsK
IH0KIAotSW50bE9iamVjdCogSW50bE9iamVjdDo6Y3JlYXRlKFZNJiB2bSwgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCitJbnRsT2JqZWN0KiBJbnRs
T2JqZWN0OjpjcmVhdGUoRXhlY1N0YXRlKiBzdGF0ZSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CisgICAgVk0mIHZtID0gc3RhdGUtPnZtKCk7
CiAgICAgSW50bE9iamVjdCogb2JqZWN0ID0gbmV3IChOb3ROdWxsLCBhbGxvY2F0ZUNlbGw8SW50
bE9iamVjdD4odm0uaGVhcCkpIEludGxPYmplY3Qodm0sIHN0cnVjdHVyZSk7Ci0gICAgb2JqZWN0
LT5maW5pc2hDcmVhdGlvbih2bSwgZ2xvYmFsT2JqZWN0KTsKKyAgICBvYmplY3QtPmZpbmlzaENy
ZWF0aW9uKHN0YXRlLCBnbG9iYWxPYmplY3QpOwogICAgIHJldHVybiBvYmplY3Q7CiB9CiAKLXZv
aWQgSW50bE9iamVjdDo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0KQordm9pZCBJbnRsT2JqZWN0OjpmaW5pc2hDcmVhdGlvbihFeGVjU3RhdGUqIHN0
YXRlLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogeworICAgIFZNJiB2bSA9IHN0YXRl
LT52bSgpOwogICAgIEJhc2U6OmZpbmlzaENyZWF0aW9uKHZtKTsKICAgICBBU1NFUlQoaW5oZXJp
dHMoaW5mbygpKSk7CiAKQEAgLTk1LDcgKzk4LDcgQEAgdm9pZCBJbnRsT2JqZWN0OjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiAgICAgbnVtYmVy
Rm9ybWF0UHJvdG90eXBlLT5wdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVy
dHlOYW1lcy0+Y29uc3RydWN0b3IsIG51bWJlckZvcm1hdENvbnN0cnVjdG9yLCBEb250RW51bSk7
CiAKICAgICAvLyBTZXQgdXAgRGF0ZVRpbWVGb3JtYXQuCi0gICAgSW50bERhdGVUaW1lRm9ybWF0
UHJvdG90eXBlKiBkYXRlVGltZUZvcm1hdFByb3RvdHlwZSA9IEludGxEYXRlVGltZUZvcm1hdFBy
b3RvdHlwZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIEludGxEYXRlVGltZUZvcm1hdFByb3Rv
dHlwZTo6Y3JlYXRlU3RydWN0dXJlKHZtLCBnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+b2Jq
ZWN0UHJvdG90eXBlKCkpKTsKKyAgICBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUqIGRhdGVU
aW1lRm9ybWF0UHJvdG90eXBlID0gSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpjcmVhdGUo
c3RhdGUsIGdsb2JhbE9iamVjdCwgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpjcmVhdGVT
dHJ1Y3R1cmUodm0sIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5vYmplY3RQcm90b3R5cGUo
KSkpOwogICAgIFN0cnVjdHVyZSogZGF0ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUgPSBJbnRsRGF0ZVRp
bWVGb3JtYXQ6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgZ2xvYmFsT2JqZWN0LCBkYXRlVGltZUZvcm1h
dFByb3RvdHlwZSk7CiAgICAgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IqIGRhdGVUaW1l
Rm9ybWF0Q29uc3RydWN0b3IgPSBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcjo6Y3JlYXRl
KHZtLCBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcjo6Y3JlYXRlU3RydWN0dXJlKHZtLCBn
bG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+ZnVuY3Rpb25Qcm90b3R5cGUoKSksIGRhdGVUaW1l
Rm9ybWF0UHJvdG90eXBlLCBkYXRlVGltZUZvcm1hdFN0cnVjdHVyZSk7CiAKQEAgLTc0NSw2ICs3
NDgsNyBAQCBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiByZXNvbHZlTG9jYWxlKGNvbnN0IEhhc2hT
ZXQ8U3RyaW5nPiYgYXZhaWxhYmxlTG9jYWxlcywgYwogICAgICAgICAgICAgc2l6ZV90IGtleVBv
cyA9IGV4dGVuc2lvblN1YnRhZ3MuZmluZChrZXkpOwogICAgICAgICAgICAgLy8gaWkuIElmIGtl
eVBvcyAhPSAtMSwgdGhlbgogICAgICAgICAgICAgaWYgKGtleVBvcyAhPSBub3RGb3VuZCkgewor
ICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBodHRwczovL2dpdGh1Yi5jb20vdGMzOS9lY21hNDAy
L2lzc3Vlcy81OQogICAgICAgICAgICAgICAgIC8vIDEuIElmIGtleVBvcyArIDEgPCBleHRlbnNp
b25TdWJ0YWdzTGVuZ3RoIGFuZCB0aGUgbGVuZ3RoIG9mIHRoZSByZXN1bHQgb2YgR2V0KGV4dGVu
c2lvblN1YnRhZ3MsIFRvU3RyaW5nKGtleVBvcyArMSkpIGlzIGdyZWF0ZXIgdGhhbiAyLCB0aGVu
CiAgICAgICAgICAgICAgICAgaWYgKGtleVBvcyArIDEgPCBleHRlbnNpb25TdWJ0YWdzLnNpemUo
KSAmJiBleHRlbnNpb25TdWJ0YWdzW2tleVBvcyArIDFdLmxlbmd0aCgpID4gMikgewogICAgICAg
ICAgICAgICAgICAgICBjb25zdCBTdHJpbmcmIHJlcXVlc3RlZFZhbHVlID0gZXh0ZW5zaW9uU3Vi
dGFnc1trZXlQb3MgKyAxXTsKQEAgLTkxNiw2ICs5MjAsNzIgQEAgSlNWYWx1ZSBzdXBwb3J0ZWRM
b2NhbGVzKEV4ZWNTdGF0ZSYgc3RhdGUsIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiYgYXZhaWxhYmxl
TG9jYWwKICAgICByZXR1cm4gc3VwcG9ydGVkTG9jYWxlczsKIH0KIAorVmVjdG9yPFN0cmluZz4g
Z2V0TnVtYmVyaW5nU3lzdGVtc0ZvckxvY2FsZShjb25zdCBTdHJpbmcmIGxvY2FsZSkKK3sKKyAg
ICAvLyB1bnVtc3lzX29wZW5BdmFpbGFibGVOYW1lcyBhcHBlYXJzIHRvIG9ubHkgYmUgYWJsZSB1
c2FibGUgb25jZSBwZXIgcHJvY2Vzcywgc28gdXNlIHN0YXRpYyBsaXN0IGluc3RlYWQuCisgICAg
VUVycm9yQ29kZSBzdGF0dXMoVV9aRVJPX0VSUk9SKTsKKyAgICBVTnVtYmVyaW5nU3lzdGVtKiBk
ZWZhdWx0U3lzdGVtID0gdW51bXN5c19vcGVuKGxvY2FsZS51dGY4KCkuZGF0YSgpLCAmc3RhdHVz
KTsKKyAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworCisgICAgVmVjdG9yPFN0cmluZz4g
bnVtYmVyaW5nU3lzdGVtcyh7CisgICAgICAgIEFTQ0lJTGl0ZXJhbCh1bnVtc3lzX2dldE5hbWUo
ZGVmYXVsdFN5c3RlbSkpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImFyYWIiKSwKKyAgICAgICAg
QVNDSUlMaXRlcmFsKCJhcmFiZXh0IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiYXJtbiIpLAor
ICAgICAgICBBU0NJSUxpdGVyYWwoImFybW5sb3ciKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJi
YWxpIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiYmVuZyIpLAorICAgICAgICBBU0NJSUxpdGVy
YWwoImNoYW0iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJkZXZhIiksCisgICAgICAgIEFTQ0lJ
TGl0ZXJhbCgiZXRoaSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImZ1bGx3aWRlIiksCisgICAg
ICAgIEFTQ0lJTGl0ZXJhbCgiZ2VvciIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImdyZWsiKSwK
KyAgICAgICAgQVNDSUlMaXRlcmFsKCJncmVrbG93IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgi
Z3VqciIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImd1cnUiKSwKKyAgICAgICAgQVNDSUlMaXRl
cmFsKCJoYW5pZGF5cyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbmlkZWMiKSwKKyAgICAg
ICAgQVNDSUlMaXRlcmFsKCJoYW5zIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaGFuc2ZpbiIp
LAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbnQiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJo
YW50ZmluIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaGViciIpLAorICAgICAgICBBU0NJSUxp
dGVyYWwoImphdmEiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJqcGFuIiksCisgICAgICAgIEFT
Q0lJTGl0ZXJhbCgianBhbmZpbiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImthbGkiKSwKKyAg
ICAgICAgQVNDSUlMaXRlcmFsKCJraG1yIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgia25kYSIp
LAorICAgICAgICBBU0NJSUxpdGVyYWwoImxhbmEiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJs
YW5hdGhhbSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImxhb28iKSwKKyAgICAgICAgQVNDSUlM
aXRlcmFsKCJsYXRuIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibGVwYyIpLAorICAgICAgICBB
U0NJSUxpdGVyYWwoImxpbWIiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJtbHltIiksCisgICAg
ICAgIEFTQ0lJTGl0ZXJhbCgibW9uZyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoIm10ZWkiKSwK
KyAgICAgICAgQVNDSUlMaXRlcmFsKCJteW1yIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibXlt
cnNoYW4iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJua29vIiksCisgICAgICAgIEFTQ0lJTGl0
ZXJhbCgib2xjayIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoIm9yeWEiKSwKKyAgICAgICAgQVND
SUlMaXRlcmFsKCJyb21hbiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInJvbWFubG93IiksCisg
ICAgICAgIEFTQ0lJTGl0ZXJhbCgic2F1ciIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInN1bmQi
KSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJ0YWx1IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgi
dGFtbCIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInRhbWxkZWMiKSwKKyAgICAgICAgQVNDSUlM
aXRlcmFsKCJ0ZWx1IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgidGhhaSIpLAorICAgICAgICBB
U0NJSUxpdGVyYWwoInRpYnQiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJ2YWlpIiksCisgICAg
fSk7CisgICAgcmV0dXJuIG51bWJlcmluZ1N5c3RlbXM7Cit9CisKIH0gLy8gbmFtZXNwYWNlIEpT
QwogCiAjZW5kaWYgLy8gRU5BQkxFKElOVEwpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsT2JqZWN0LmgKaW5kZXggZjJkYzNlZWE2NDNkOGQ1YTc1Y2NiNWE3YmVmOTQ0MGRlMTg3
MDlkOC4uMjk2YmY4YWY2OGVlN2JhZjQxZmIyOWMwYzU1NjMxNzQwNDBmZWZiNSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaApAQCAtNDUsMTMgKzQ1LDEzIEBA
IHB1YmxpYzoKICAgICB0eXBlZGVmIEpTTm9uRmluYWxPYmplY3QgQmFzZTsKICAgICBzdGF0aWMg
Y29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBCYXNlOjpTdHJ1Y3R1cmVGbGFncyB8IE92
ZXJyaWRlc0dldE93blByb3BlcnR5U2xvdDsKIAotICAgIHN0YXRpYyBJbnRsT2JqZWN0KiBjcmVh
dGUoVk0mLCBKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSopOworICAgIHN0YXRpYyBJbnRsT2Jq
ZWN0KiBjcmVhdGUoRXhlY1N0YXRlKiwgSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqKTsKICAg
ICBzdGF0aWMgU3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoVk0mLCBKU0dsb2JhbE9iamVjdCos
IEpTVmFsdWUpOwogCiAgICAgREVDTEFSRV9JTkZPOwogCiBwcm90ZWN0ZWQ6Ci0gICAgdm9pZCBm
aW5pc2hDcmVhdGlvbihWTSYsIEpTR2xvYmFsT2JqZWN0Kik7CisgICAgdm9pZCBmaW5pc2hDcmVh
dGlvbihFeGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCopOwogCiBwcml2YXRlOgogICAgIEludGxP
YmplY3QoVk0mLCBTdHJ1Y3R1cmUqKTsKQEAgLTYzLDggKzYzLDkgQEAgU3RyaW5nIGludGxTdHJp
bmdPcHRpb24oRXhlY1N0YXRlJiwgSlNWYWx1ZSBvcHRpb25zLCBQcm9wZXJ0eU5hbWUsIGNvbnN0
IEhhc2hTZXQKIFZlY3RvcjxTdHJpbmc+IGNhbm9uaWNhbGl6ZUxvY2FsZUxpc3QoRXhlY1N0YXRl
JiwgSlNWYWx1ZSBsb2NhbGVzKTsKIEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+IHJlc29sdmVMb2Nh
bGUoY29uc3QgSGFzaFNldDxTdHJpbmc+JiBhdmFpbGFibGVMb2NhbGVzLCBjb25zdCBWZWN0b3I8
U3RyaW5nPiYgcmVxdWVzdGVkTG9jYWxlcywgY29uc3QgSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4m
IG9wdGlvbnMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiByZWxldmFudEV4dGVuc2lvbktleXMsIFZl
Y3RvcjxTdHJpbmc+ICgqbG9jYWxlRGF0YSkoY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJikp
OwogSlNWYWx1ZSBzdXBwb3J0ZWRMb2NhbGVzKEV4ZWNTdGF0ZSYsIGNvbnN0IEhhc2hTZXQ8U3Ry
aW5nPiYgYXZhaWxhYmxlTG9jYWxlcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHJlcXVlc3RlZExv
Y2FsZXMsIEpTVmFsdWUgb3B0aW9ucyk7Ci1TdHJpbmcgcmVtb3ZlVW5pY29kZUxvY2FsZUV4dGVu
c2lvbihjb25zdCBTdHJpbmcmKTsKLVN0cmluZyBiZXN0QXZhaWxhYmxlTG9jYWxlKGNvbnN0IEhh
c2hTZXQ8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYpOworU3RyaW5nIHJlbW92ZVVuaWNvZGVMb2Nh
bGVFeHRlbnNpb24oY29uc3QgU3RyaW5nJiBsb2NhbGUpOworU3RyaW5nIGJlc3RBdmFpbGFibGVM
b2NhbGUoY29uc3QgSGFzaFNldDxTdHJpbmc+JiBhdmFpbGFibGVMb2NhbGVzLCBjb25zdCBTdHJp
bmcmIHJlcXVlc3RlZExvY2FsZSk7CitWZWN0b3I8U3RyaW5nPiBnZXROdW1iZXJpbmdTeXN0ZW1z
Rm9yTG9jYWxlKGNvbnN0IFN0cmluZyYgbG9jYWxlKTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcApp
bmRleCBlY2M4MmJhNjI4YmYxNmYyMTE3OWEyYzQ4ZGJhNzNhZjdlZTcyYTgxLi5jYjY2YjEwOGYw
NjJhYTdlZWQ0NDQ1ZjQ0NDY1ZGNjZTdkNGYyZjZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCkBAIC00NjgsNyArNDY4LDcgQEAgcHV0
RGlyZWN0V2l0aG91dFRyYW5zaXRpb24odm0sIHZtLnByb3BlcnR5TmFtZXMtPiBqc05hbWUsIGxv
d2VyTmFtZSAjIyBDb25zdHJ1Y3QKICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwg
dm0ucHJvcGVydHlOYW1lcy0+ZXZhbCwgbV9ldmFsRnVuY3Rpb24uZ2V0KCksIERvbnRFbnVtKTsK
ICAgICAKICNpZiBFTkFCTEUoSU5UTCkKLSAgICBJbnRsT2JqZWN0KiBpbnRsID0gSW50bE9iamVj
dDo6Y3JlYXRlKHZtLCB0aGlzLCBJbnRsT2JqZWN0OjpjcmVhdGVTdHJ1Y3R1cmUodm0sIHRoaXMs
IG1fb2JqZWN0UHJvdG90eXBlLmdldCgpKSk7CisgICAgSW50bE9iamVjdCogaW50bCA9IEludGxP
YmplY3Q6OmNyZWF0ZShleGVjLCB0aGlzLCBJbnRsT2JqZWN0OjpjcmVhdGVTdHJ1Y3R1cmUodm0s
IHRoaXMsIG1fb2JqZWN0UHJvdG90eXBlLmdldCgpKSk7CiAgICAgcHV0RGlyZWN0V2l0aG91dFRy
YW5zaXRpb24odm0sIHZtLnByb3BlcnR5TmFtZXMtPkludGwsIGludGwsIERvbnRFbnVtKTsKICNl
bmRpZiAvLyBFTkFCTEUoSU5UTCkKICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwg
dm0ucHJvcGVydHlOYW1lcy0+SlNPTiwgSlNPTk9iamVjdDo6Y3JlYXRlKHZtLCBKU09OT2JqZWN0
OjpjcmVhdGVTdHJ1Y3R1cmUodm0sIHRoaXMsIG1fb2JqZWN0UHJvdG90eXBlLmdldCgpKSksIERv
bnRFbnVtKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRpb25zV2luLmNtYWtlIGIvU291
cmNlL2NtYWtlL09wdGlvbnNXaW4uY21ha2UKaW5kZXggMGE4ODYxNzIxNzExNzNmZDVhMDBkMDc4
OTAyYjg3NDMyYjIxZjU5MS4uZTg4ZmM2YzhhZThkMDYxZWRmM2UxNzEzZDhhYTgzOThiYmQ3ZTBi
ZSAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09wdGlvbnNXaW4uY21ha2UKKysrIGIvU291cmNl
L2NtYWtlL09wdGlvbnNXaW4uY21ha2UKQEAgLTU1LDcgKzU1LDYgQEAgV0VCS0lUX09QVElPTl9E
RUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCBQVUJMSUMg
T0ZGKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOUFVUX1RZUEVf
TU9OVEggUFVCTElDIE9GRikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJM
RV9JTlBVVF9UWVBFX1RJTUUgUFVCTElDIE9GRikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JU
X1ZBTFVFKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUsgUFVCTElDIE9GRikKLVdFQktJVF9PUFRJT05f
REVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9JTlRMIFBVQkxJQyBPTikKIFdFQktJVF9PUFRJT05f
REVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUyBQVUJM
SUMgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfTEVHQUNZX05P
VElGSUNBVElPTlMgUFVCTElDIE9GRikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVF
KEVOQUJMRV9MRUdBQ1lfVkVORE9SX1BSRUZJWEVTIFBVQkxJQyBPRkYpCkBAIC0xNjMsMTEgKzE2
MiwxMSBAQCBpZiAoTVNWQykKIAogICAgICMgVHVybiBvZmYgY2VydGFpbiBsaW5rIGZlYXR1cmVz
CiAgICAgYWRkX2NvbXBpbGVfb3B0aW9ucygvR3ktIC9vcGVubXAtIC9HRi0pCi0gICAgCisKICAg
ICBpZiAoJHtDTUFLRV9CVUlMRF9UWVBFfSBNQVRDSEVTICJEZWJ1ZyIpCiAgICAgICAgIHNldChD
TUFLRV9TSEFSRURfTElOS0VSX0ZMQUdTICIke0NNQUtFX1NIQVJFRF9MSU5LRVJfRkxBR1N9IC9P
UFQ6Tk9SRUYgL09QVDpOT0lDRiIpCiAgICAgICAgIHNldChDTUFLRV9FWEVfTElOS0VSX0ZMQUdT
ICIke0NNQUtFX0VYRV9MSU5LRVJfRkxBR1N9IC9PUFQ6Tk9SRUYgL09QVDpOT0lDRiIpCi0gICAg
ICAgIAorCiAgICAgICAgICMgVG8gZGVidWcgbGlua2luZyB0aW1lIGlzc3VlcywgdW5jb21tZW50
IHRoZSBmb2xsb3dpbmcgdGhyZWUgbGluZXM6CiAgICAgICAgICNhZGRfY29tcGlsZV9vcHRpb25z
KC9CdikKICAgICAgICAgI3NldChDTUFLRV9TSEFSRURfTElOS0VSX0ZMQUdTICIke0NNQUtFX1NI
QVJFRF9MSU5LRVJfRkxBR1N9IC9WRVJCT1NFIC9WRVJCT1NFOklOQ1IgL1RJTUUiKQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4
IDU1NGRhYmUwMGM3ZWIxNzQxOTc3MjkwZGNjYmEwNzQ4MzFmNGMyMzUuLjE3MzA2N2ZjZjUyYTc4
M2JkMGIwMzA2MmJjNWRhODQyZTczOTRhNjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxNS0x
Ni0xMSAgQW5keSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVyZS5jb20+CisKKyAgICAgICAg
W0lOVExdIEltcGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMgKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE0NzYwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICoganMvaW50bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQ6IEFkZGVkIHJlc29sdmVkT3B0
aW9ucyB0ZXN0cy4KKyAgICAgICAgKiBqcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1h
dC5qczogQWRkZWQgcmVzb2x2ZWRPcHRpb25zIHRlc3RzLgorCiAyMDE1LTEyLTE2ICBSeWFuIEhh
ZGRhZCAgPHJ5YW5oYWRkYWRAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZGluZyB0aW1lb3V0IHRv
IHdwdCBUZXN0RXhwZWN0YXRpb25zIGR1ZSB0byBXSy9XUFQgdGVzdGhhcm5lc3MuanMgaXNzdWVz
LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvaW50bC1kYXRldGltZWZvcm1hdC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dApp
bmRleCBkMDE2YzgwMDQ3ZDY0ZDAyMzhiNWM5NmQ3YjkwYjZjNGFlMWM5ZWE0Li44YTVmZGVmYzAw
OGY3MmNkNTc4NTFmYjM3N2FmNTVkZTFmZjJkZTJmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9q
cy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9qcy9p
bnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dApAQCAtNTQsNyArNTQsNyBAQCBQQVNTIE9i
amVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwgJ2Zvcm1hdCcsIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURl
c2NyaXB0b3IoSW50bC5EYQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3Jt
YXQgIT09IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQgaXMgdHJ1ZQogUEFTUyBuZXcgSW50
bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCAhPT0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5m
b3JtYXQgaXMgdHJ1ZQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQo
eyB2YWx1ZU9mKCkgeyB0aHJvdyBFcnJvcignNGInKSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBFcnJv
cjogNGIuCi1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdChJbmZpbml0
eSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGRhdGUgdmFsdWUgaXMgbm90IGZpbml0ZSBp
biBEYXRlVGltZUZvcm1hdC5mb3JtYXQoKS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90
b3R5cGUuZm9ybWF0KEluZmluaXR5KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZGF0ZSB2
YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1lRm9ybWF0IGZvcm1hdCgpLgogUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2FsbChudWxsLCAwKSBpcyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90
eXBlLmZvcm1hdC5jYWxsKEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyJyksIDApIGlzIEludGwuRGF0
ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5
cGUuZm9ybWF0LmNhbGwoNSwgMCkgaXMgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKQpA
QCAtNjMsOCArNjMsMjM3IEBAIFBBU1MgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQu
Y2FsbChJbnRsLkRhdGVUaW1lRm9ybWF0KCdhcicpLCAwKSBpcyBJbnRsCiBQQVNTIG5ldyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0LmNhbGwoNSwgMCkgaXMgSW50bC5EYXRlVGltZUZvcm1h
dCgpLmZvcm1hdCgwKQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZl
ZE9wdGlvbnMubGVuZ3RoIGlzIDAKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zKCkgaXMgYW4gaW5zdGFuY2Ugb2YgT2JqZWN0CitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSBpcyBuZXcgSW50
bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZQorUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyBuZXcg
SW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlz
IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVy
aW5nU3lzdGVtIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCku
bnVtYmVyaW5nU3lzdGVtCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29s
dmVkT3B0aW9ucygpLndlZWtkYXkgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZl
ZE9wdGlvbnMoKS53ZWVrZGF5CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJl
c29sdmVkT3B0aW9ucygpLmVyYSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVk
T3B0aW9ucygpLmVyYQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZl
ZE9wdGlvbnMoKS55ZWFyIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRp
b25zKCkueWVhcgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMoKS5tb250aCBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9u
cygpLm1vbnRoCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucygpLmRheSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygp
LmRheQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMo
KS5ob3VyIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuaG91
cgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5o
b3VyMTIgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3Vy
MTIKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCku
bWludXRlIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubWlu
dXRlCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygp
LnNlY29uZCBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnNl
Y29uZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZU5hbWUgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZU5hbWUKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVz
b2x2ZWRPcHRpb25zKCkgPT09IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucygpIGlzIGZhbHNlCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJl
c29sdmVkT3B0aW9ucy5jYWxsKDUpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEludGwuRGF0
ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhh
dCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdC4KK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnJCcpIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBpbnZh
bGlkIGxhbmd1YWdlIHRhZzogJC4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCBudWxs
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
KS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyB1bmRlZmluZWQKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbnVt
ZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5k
YXkgaXMgJ251bWVyaWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRP
cHRpb25zKCkueWVhciBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiBpcyB1bmRlZmluZWQKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUgaXMgdW5k
ZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCku
c2Vjb25kIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IGxvY2FsZU1hdGNoZXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdub3Bl
JyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIG5vcGUuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBsb2NhbGVNYXRjaGVyOidiYWQnIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9y
OiBsb2NhbGVNYXRjaGVyIG11c3QgYmUgZWl0aGVyICJsb29rdXAiIG9yICJiZXN0IGZpdCIuCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBsb2NhbGVNYXRjaGVyOidsb29rdXAnIH0p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgbG9jYWxlTWF0Y2hlcjonYmVzdCBmaXQnIH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjogeyB0b1N0cmlu
ZygpIHsgdGhyb3cgJ25vcGUnIH0gfSB9KSB0aHJldyBleGNlcHRpb24gbm9wZS4KK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2JhZCcgfSkgdGhyZXcgZXhj
ZXB0aW9uIFJhbmdlRXJyb3I6IGZvcm1hdE1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgImJhc2ljIiBv
ciAiYmVzdCBmaXQiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0
Y2hlcjonYmFzaWMnIH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjonYmVzdCBmaXQnIH0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdub3doZXJlL2JvZ3VzJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogaW52YWxpZCB0
aW1lIHpvbmU6IG5vd2hlcmUvYm9ndXMuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ25vcGUnIH0gfSB9KSB0aHJldyBleGNl
cHRpb24gbm9wZS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
YW1lcmljYS9kZW52ZXInIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNh
L0RlbnZlcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQU1F
UklDQS9MT1NfQU5HRUxFUycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJp
Y2EvTG9zX0FuZ2VsZXMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBbWVyaWNhL0F0a2EnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdB
bWVyaWNhL0FkYWsnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J0FtZXJpY2EvRW5zZW5hZGEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVy
aWNhL1RpanVhbmEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J0FtZXJpY2EvUG9ydG9fQWNyZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0Ft
ZXJpY2EvUmlvX0JyYW5jbycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnQW1lcmljYS9TaGlwcm9jaycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0FtZXJpY2EvRGVudmVyJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdBbnRhcmN0aWNhL1NvdXRoX1BvbGUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IGlzICdQYWNpZmljL0F1Y2tsYW5kJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdBc2lhL0FzaGtoYWJhZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
aXMgJ0FzaWEvQXNoZ2FiYXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0FzaWEvQ2hvbmdxaW5nJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAn
QXNpYS9TaGFuZ2hhaScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnQXNpYS9DaHVuZ2tpbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lh
L1NoYW5naGFpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
c2lhL0RhY2NhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9EaGFrYScK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9IYXJiaW4n
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1NoYW5naGFpJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL0thc2hnYXInIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1VydW1xaScKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9NYWNhbycgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUgaXMgJ0FzaWEvTWFjYXUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvVGVsX0F2aXYnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdBc2lhL0plcnVzYWxlbScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnQXNpYS9UaGltYnUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IGlzICdBc2lhL1RoaW1waHUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0FzaWEvVWp1bmdfUGFuZGFuZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
aXMgJ0FzaWEvTWFrYXNzYXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0FzaWEvVWxhbl9CYXRvcicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0FzaWEvVWxhYW5iYWF0YXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0F1c3RyYWxpYS9BQ1QnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdB
dXN0cmFsaWEvU3lkbmV5JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdBdXN0cmFsaWEvQ2FuYmVycmEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlz
ICdBdXN0cmFsaWEvU3lkbmV5JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBdXN0cmFsaWEvTEhJJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAn
QXVzdHJhbGlhL0xvcmRfSG93ZScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnQXVzdHJhbGlhL05TVycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0F1c3RyYWxpYS9TeWRuZXknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0F1c3RyYWxpYS9Ob3J0aCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0F1c3RyYWxpYS9EYXJ3aW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0F1c3RyYWxpYS9RdWVlbnNsYW5kJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSBpcyAnQXVzdHJhbGlhL0JyaXNiYW5lJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvU291dGgnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdBdXN0cmFsaWEvQWRlbGFpZGUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9UYXNtYW5pYScgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUgaXMgJ0F1c3RyYWxpYS9Ib2JhcnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9WaWN0b3JpYScgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUgaXMgJ0F1c3RyYWxpYS9NZWxib3VybmUnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9XZXN0JyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSBpcyAnQXVzdHJhbGlhL1BlcnRoJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvWWFuY293aW5uYScgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUgaXMgJ0F1c3RyYWxpYS9Ccm9rZW5fSGlsbCcKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQnJhemlsL0FjcmUnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1Jpb19CcmFuY28nCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0JyYXppbC9EZU5vcm9uaGEnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL05vcm9uaGEnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0JyYXppbC9FYXN0JyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9TYW9fUGF1bG8nCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0JyYXppbC9XZXN0JyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9NYW5hdXMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9BdGxhbnRpYycgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvSGFsaWZheCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL0NlbnRyYWwnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdBbWVyaWNhL1dpbm5pcGVnJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvRWFzdC1TYXNrYXRjaGV3YW4nIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1JlZ2luYScKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL0Vhc3Rlcm4nIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1Rvcm9udG8nCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9Nb3VudGFpbicgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvRWRtb250b24nCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9OZXdmb3VuZGxhbmQnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1N0X0pvaG5zJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvUGFjaWZpYycgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvVmFuY291dmVyJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvU2Fza2F0Y2hld2FuJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9SZWdpbmEnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9ZdWtvbicgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvV2hpdGVob3JzZScKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2hpbGUvQ29udGluZW50YWwnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1NhbnRpYWdvJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDaGlsZS9FYXN0ZXJJc2xhbmQnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdQYWNpZmljL0Vhc3RlcicKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ3ViYScgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvSGF2YW5hJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdFZ3lwdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
aXMgJ0FmcmljYS9DYWlybycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnRWlyZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9EdWJs
aW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0V1cm9wZS9C
ZWxmYXN0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnRXVyb3BlL0xvbmRvbicK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnRXVyb3BlL1RpcmFz
cG9sJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnRXVyb3BlL0NoaXNpbmF1Jwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHQicgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9Mb25kb24nCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dCLUVpcmUnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdFdXJvcGUvTG9uZG9uJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdHTVQrMCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J1VUQycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR01ULTAn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dNVDAnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ0dyZWVud2ljaCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1VUQycKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSG9uZ2tvbmcnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL0hvbmdfS29uZycKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSWNlbGFuZCcgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUgaXMgJ0F0bGFudGljL1JleWtqYXZpaycKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSXJhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0FzaWEvVGVocmFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdJc3JhZWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lh
L0plcnVzYWxlbScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
SmFtYWljYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvSmFtYWlj
YScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSmFwYW4nIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1Rva3lvJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdLd2FqYWxlaW4nIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIGlzICdQYWNpZmljL0t3YWphbGVpbicKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnTGlieWEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdBZnJpY2EvVHJpcG9saScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnTWV4aWNvL0JhamFOb3J0ZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0FtZXJpY2EvVGlqdWFuYScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnTWV4aWNvL0JhamFTdXInIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdBbWVyaWNhL01hemF0bGFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdNZXhpY28vR2VuZXJhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUgaXMgJ0FtZXJpY2EvTWV4aWNvX0NpdHknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ05aJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnUGFj
aWZpYy9BdWNrbGFuZCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnTlotQ0hBVCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1BhY2lmaWMvQ2hh
dGhhbScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnTmF2YWpv
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9EZW52ZXInCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1BSQycgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvU2hhbmdoYWknCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1BvbGFuZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0V1cm9wZS9XYXJzYXcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ1BvcnR1Z2FsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAn
RXVyb3BlL0xpc2JvbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnUk9DJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9UYWlwZWknCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1JPSycgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvU2VvdWwnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1NpbmdhcG9yZScgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUgaXMgJ0FzaWEvU2luZ2Fwb3JlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdUdXJrZXknIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlz
ICdFdXJvcGUvSXN0YW5idWwnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ1VDVCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1VUQycKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvQWxhc2thJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9BbmNob3JhZ2UnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0FsZXV0aWFuJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9BZGFrJworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9Bcml6b25hJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnQW1lcmljYS9QaG9lbml4JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdVUy9DZW50cmFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSBpcyAnQW1lcmljYS9DaGljYWdvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdVUy9FYXN0ZXJuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBp
cyAnQW1lcmljYS9OZXdfWW9yaycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnVVMvSGF3YWlpJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnUGFj
aWZpYy9Ib25vbHVsdScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnVVMvTWljaGlnYW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNh
L0RldHJvaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VT
L01vdW50YWluJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9EZW52
ZXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL1BhY2lm
aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0xvc19BbmdlbGVz
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9TYW1vYScg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1BhY2lmaWMvUGFnb19QYWdvJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVVEMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ1VuaXZlcnNhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
aXMgJ1VUQycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVy1T
VScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9Nb3Njb3cnCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1p1bHUnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Fy
LXNhJykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIGlzICdhci1TQScKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnYXItc2EnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaXNsYW1p
Yy11bWFscXVyYScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnYXItc2EnKS5yZXNvbHZlZE9w
dGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2FyYWInCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyBjYWxlbmRhcjonZGFuZ2knIH0pLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFy
IGlzICdncmVnb3JpYW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYm9ndXMn
KS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUgaXMgJ2VuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LWNhLWJvZ3VzJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2dyZWdv
cmlhbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1idWRkaGlzdCcpLnJlc29s
dmVkT3B0aW9ucygpLmxvY2FsZSBpcyAnZW4tdS1jYS1idWRkaGlzdCcKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1jYS1idWRkaGlzdCcpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFy
IGlzICdidWRkaGlzdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1jaGluZXNl
JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2NoaW5lc2UnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtY29wdGljJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIg
aXMgJ2NvcHRpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1kYW5naScpLnJl
c29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdkYW5naScKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1jYS1ldGhpb2FhJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2V0
aGlvcGljLWFtZXRlLWFsZW0nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRo
aW9waWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnZXRoaW9waWMnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2FyLVNBLXUtY2EtZ3JlZ29yeScpLnJlc29sdmVkT3B0aW9ucygp
LmNhbGVuZGFyIGlzICdncmVnb3JpYW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtaGVicmV3JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2hlYnJldycKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pbmRpYW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5j
YWxlbmRhciBpcyAnaW5kaWFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlz
bGFtaWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaXNsYW1pYycKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljYycpLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyIGlzICdpc2xhbWljLWNpdmlsJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LWNhLUlTTzg2MDEnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaXNvODYwMScKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1qYXBhbmVzZScpLnJlc29sdmVkT3B0aW9u
cygpLmNhbGVuZGFyIGlzICdqYXBhbmVzZScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1jYS1wZXJzaWFuJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ3BlcnNpYW4nCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2Etcm9jJykucmVzb2x2ZWRPcHRpb25zKCku
Y2FsZW5kYXIgaXMgJ3JvYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG51bWJl
cmluZ1N5c3RlbTonZ3VqcicgfSkucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlz
ICdsYXRuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWJvZ3VzJykucmVzb2x2
ZWRPcHRpb25zKCkubG9jYWxlIGlzICdlbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGF0bicK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1sYXRuJykucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIGlzICdsYXRuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LWFyYWInKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUgaXMgJ2VuLXUtbnUtYXJhYicK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1hcmFiJykucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIGlzICdhcmFiJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LWFyYWJleHQnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2Fy
YWJleHQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYmFsaScpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnYmFsaScKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1udS1iZW5nJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlz
ICdiZW5nJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWRldmEnKS5yZXNvbHZl
ZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2RldmEnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtbnUtZnVsbHdpZGUnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0gaXMgJ2Z1bGx3aWRlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWd1anIn
KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2d1anInCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZ3VydScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSBpcyAnZ3VydScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1oYW5p
ZGVjJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdoYW5pZGVjJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWtobXInKS5yZXNvbHZlZE9wdGlvbnMoKS5u
dW1iZXJpbmdTeXN0ZW0gaXMgJ2tobXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
bnUta25kYScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAna25kYScKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1sYW9vJykucmVzb2x2ZWRPcHRpb25zKCku
bnVtYmVyaW5nU3lzdGVtIGlzICdsYW9vJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LWxpbWInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2xpbWInCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbWx5bScpLnJlc29sdmVkT3B0aW9ucygp
Lm51bWJlcmluZ1N5c3RlbSBpcyAnbWx5bScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1tb25nJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdtb25nJwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LW15bXInKS5yZXNvbHZlZE9wdGlvbnMo
KS5udW1iZXJpbmdTeXN0ZW0gaXMgJ215bXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
LXUtbnUtb3J5YScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnb3J5YScK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10YW1sZGVjJykucmVzb2x2ZWRPcHRp
b25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICd0YW1sZGVjJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LW51LXRlbHUnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMg
J3RlbHUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGhhaScpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAndGhhaScKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1udS10aWJ0JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlz
ICd0aWJ0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTogeyB0b1N0
cmluZygpIHsgdGhyb3cgJ3dlZWtkYXknIH0gfSB9KSB0aHJldyBleGNlcHRpb24gd2Vla2RheS4K
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J2ludmFsaWQnIH0pIHRo
cmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiB3ZWVrZGF5IG11c3QgYmUgIm5hcnJvdyIsICJzaG9y
dCIsIG9yICJsb25nIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTon
Mi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkgaXMg
dW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5OiduYXJy
b3cnLCBtb250aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCku
d2Vla2RheSBpcyAnbmFycm93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vl
a2RheTonc2hvcnQnLCBtb250aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRP
cHRpb25zKCkud2Vla2RheSBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB3ZWVrZGF5Oidsb25nJywgbW9udGg6J251bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJl
c29sdmVkT3B0aW9ucygpLndlZWtkYXkgaXMgJ2xvbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyBlcmE6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdlcmEnIH0gfSB9KSB0aHJldyBl
eGNlcHRpb24gZXJhLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduZXZl
cicgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGVyYSBtdXN0IGJlICJuYXJyb3ciLCAi
c2hvcnQiLCBvciAibG9uZyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51
dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMg
dW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25hcnJvdycs
IHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyAnbmFycm93JworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOidzaG9ydCcsIHllYXI6J251bWVyaWMn
IH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyBlcmE6J2xvbmcnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS5lcmEgaXMgJ2xvbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB5ZWFy
OiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAneWVhcicgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiB5ZWFy
LgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgeWVhcjonbm9wZScgfSkgdGhyZXcg
ZXhjZXB0aW9uIFJhbmdlRXJyb3I6IHllYXIgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMi
LgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91
cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyB1bmRlZmluZWQKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjonMi1kaWdpdCcg
fSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRP
cHRpb25zKCkueWVhciBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IG1vbnRoOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbW9udGgnIH0gfSB9KSB0aHJldyBleGNl
cHRpb24gbW9udGguCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDoyIH0p
IHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBtb250aCBtdXN0IGJlICIyLWRpZ2l0IiwgIm51
bWVyaWMiLCAibmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciLgorUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2
ZWRPcHRpb25zKCkubW9udGggaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBtb250aDonMi1kaWdpdCcsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLm1vbnRoIGlzICcyLWRpZ2l0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
bW9udGg6J251bWVyaWMnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250
aCBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidu
YXJyb3cnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbmFy
cm93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J3Nob3J0JywgeWVh
cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMgJ3Nob3J0JworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCB5ZWFyOidudW1lcmljJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbG9uZycKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IGRheTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ2RheScgfSB9IH0pIHRocmV3
IGV4Y2VwdGlvbiBkYXkuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBkYXk6Jycg
fSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGRheSBtdXN0IGJlICIyLWRpZ2l0IiBvciAi
bnVtZXJpYyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGln
aXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMgdW5kZWZpbmVk
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonbG9uZycsIGRheTonMi1k
aWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuZGF5IGlzICcyLWRpZ2l0JworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCBkYXk6J251bWVyaWMnIH0pLnJlc29s
dmVkT3B0aW9ucygpLmRheSBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IGhvdXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdob3VyJyB9IH0gfSkgdGhyZXcgZXhj
ZXB0aW9uIGhvdXIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBob3VyOltdIH0p
IHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBob3VyIG11c3QgYmUgIjItZGlnaXQiIG9yICJu
dW1lcmljIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMo
KS5ob3VyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWlu
dXRlOicyLWRpZ2l0JywgaG91cjonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91ciBp
cyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1k
aWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmhvdXIgaXMgJ251bWVy
aWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuaG91
cjEyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRl
OicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIGlz
IHRydWUKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgncHQtQlInLCB7IG1pbnV0ZTonMi1kaWdp
dCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiBpcyBmYWxzZQor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOiB7IHRvU3RyaW5nKCkgeyB0
aHJvdyAnbWludXRlJyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIG1pbnV0ZS4KK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTpudWxsIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5n
ZUVycm9yOiBtaW51dGUgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiLgorUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBpcyB1bmRlZmlu
ZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhv
dXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBpcyAnMi1kaWdpdCcKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonbnVtZXJpYycsIGhvdXI6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBpcyAnMi1kaWdpdCcKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHNlY29uZDogeyB0b1N0cmluZygpIHsgdGhyb3cgJ3Nl
Y29uZCcgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBzZWNvbmQuCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyBzZWNvbmQ6J2JhZHZhbHVlJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VF
cnJvcjogc2Vjb25kIG11c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmljIi4KK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQgaXMgdW5kZWZpbmVk
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3Vy
OidudW1lcmljJywgc2Vjb25kOicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQg
aXMgJzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251
bWVyaWMnLCBob3VyOidudW1lcmljJywgc2Vjb25kOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS5zZWNvbmQgaXMgJzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZU5hbWU6IHsgdG9TdHJpbmcoKSB7IHRocm93ICd0aW1lWm9uZU5hbWUnIH0gfSB9
KSB0aHJldyBleGNlcHRpb24gdGltZVpvbmVOYW1lLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmVOYW1lOiduYW1lJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJv
cjogdGltZVpvbmVOYW1lIG11c3QgYmUgInNob3J0IiBvciAibG9uZyIuCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIGlzIHVuZGVm
aW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0Jywg
aG91cjonbnVtZXJpYycsIHRpbWVab25lTmFtZTonc2hvcnQnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lTmFtZSBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ3B0LUJS
JywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJywgdGltZVpvbmVOYW1lOidsb25n
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUgaXMgJ2xvbmcnCiBQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9pbnRsLWRhdGV0aW1lZm9ybWF0LmpzIGIvTGF5b3V0VGVz
dHMvanMvc2NyaXB0LXRlc3RzL2ludGwtZGF0ZXRpbWVmb3JtYXQuanMKaW5kZXggZWRlMWI1Y2Uz
NDZmZDI5MDUzMGIzNzM3N2YwMGNhZTUwMzdlNjA3Zi4uM2E3NmMwMDhiMTdhNjA4YjUwMjQ4YzVm
MzE3NTc2OTg0MmZiYTE4OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3Rz
L2ludGwtZGF0ZXRpbWVmb3JtYXQuanMKKysrIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3Rz
L2ludGwtZGF0ZXRpbWVmb3JtYXQuanMKQEAgLTExOSw3ICsxMTksNyBAQCBzaG91bGRUaHJvdygi
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KHsgdmFsdWVPZigpIHsgdGhyb3cg
RXJyb3IoJzRiJwogLy8gMTIuMy40IEZvcm1hdERhdGVUaW1lIGFic3RyYWN0IG9wZXJhdGlvbgog
CiAvLyAxLiBJZiB4IGlzIG5vdCBhIGZpbml0ZSBOdW1iZXIsIHRoZW4gdGhyb3cgYSBSYW5nZUVy
cm9yIGV4Y2VwdGlvbi4KLXNob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlw
ZS5mb3JtYXQoSW5maW5pdHkpIiwgIidSYW5nZUVycm9yOiBkYXRlIHZhbHVlIGlzIG5vdCBmaW5p
dGUgaW4gRGF0ZVRpbWVGb3JtYXQuZm9ybWF0KCknIik7CitzaG91bGRUaHJvdygiSW50bC5EYXRl
VGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KEluZmluaXR5KSIsICInUmFuZ2VFcnJvcjogZGF0
ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1lRm9ybWF0IGZvcm1hdCgpJyIpOwogCiAv
LyBGb3JtYXQgaXMgYm91bmQsIHNvIGNhbGxpbmcgd2l0aCBhbHRlcm5hdGUgInRoaXMiIGhhcyBu
byBlZmZlY3QuCiBzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0
LmNhbGwobnVsbCwgMCkiLCAiSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKSIpOwpAQCAt
MTM2LDkgKzEzNiwyNzEgQEAgc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LnJlc29sdmVkT3B0aW9ucy5sZW5ndGgiLCAiMCIpOwogLy8gUmV0dXJucyBhIG5ldyBvYmplY3Qg
d2hvc2UgcHJvcGVydGllcyBhbmQgYXR0cmlidXRlcyBhcmUgc2V0IGFzIGlmIGNvbnN0cnVjdGVk
IGJ5IGFuIG9iamVjdCBsaXRlcmFsLgogc2hvdWxkQmVUeXBlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSIsICJPYmplY3QiKTsKIAorLy8gVGhlIEludGwu
RGF0ZVRpbWVGb3JtYXQgcHJvdG90eXBlIG9iamVjdCBpcyBpdHNlbGYgYW4gJURhdGVUaW1lRm9y
bWF0JSBpbnN0YW5jZSwgd2hvc2UgaW50ZXJuYWwgc2xvdHMgYXJlIHNldCBhcyBpZiBpdCBoYWQg
YmVlbiBjb25zdHJ1Y3RlZCBieSB0aGUgZXhwcmVzc2lvbiBDb25zdHJ1Y3QoJURhdGVUaW1lRm9y
bWF0JSkuCitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRP
cHRpb25zKCkubG9jYWxlIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRp
b25zKCkubG9jYWxlIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIm5ldyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0iLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJp
bmdTeXN0ZW0iKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNv
bHZlZE9wdGlvbnMoKS53ZWVrZGF5IiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2
ZWRPcHRpb25zKCkud2Vla2RheSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmVyYSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgp
LnJlc29sdmVkT3B0aW9ucygpLmVyYSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQu
cHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnllYXIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3Jt
YXQoKS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAibmV3IEludGwuRGF0ZVRp
bWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmRheSIsICJuZXcgSW50bC5E
YXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmRheSIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmhvdXIiLCAibmV3IElu
dGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwg
Im5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCku
bWludXRlIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubWlu
dXRlIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRP
cHRpb25zKCkuc2Vjb25kIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRp
b25zKCkuc2Vjb25kIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIik7CisKIC8vIFJldHVybnMgYSBuZXcg
b2JqZWN0IGVhY2ggdGltZS4KIHNob3VsZEJlRmFsc2UoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLnJlc29sdmVkT3B0aW9ucygpID09PSBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlw
ZS5yZXNvbHZlZE9wdGlvbnMoKSIpOwogCiAvLyBUaHJvd3Mgb24gbm9uLURhdGVUaW1lRm9ybWF0
IHRoaXMuCiBzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2
ZWRPcHRpb25zLmNhbGwoNSkiLCAiJ1R5cGVFcnJvcjogSW50bC5EYXRlVGltZUZvcm1hdC5wcm90
b3R5cGUucmVzb2x2ZWRPcHRpb25zIGNhbGxlZCBvbiB2YWx1ZSB0aGF0XFwncyBub3QgYW4gb2Jq
ZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0ZVRpbWVGb3JtYXQnIik7CiAKK3Nob3VsZFRocm93KCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCckJykiLCAiJ1JhbmdlRXJyb3I6IGludmFsaWQgbGFuZ3VhZ2Ug
dGFnOiAkJyIpOworc2hvdWxkTm90VGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgbnVs
bCkiKTsKKworLy8gRGVmYXVsdHMgdG8gbW9udGgsIGRheSwgeWVhci4KK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAidW5kZWZp
bmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlv
bnMoKS5lcmEiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCIsICInbnVtZXJpYyciKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmRheSIsICInbnVtZXJp
YyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLnllYXIiLCAiJ251bWVyaWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgInVuZGVm
aW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRp
b25zKCkubWludXRlIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIiwgInVuZGVmaW5lZCIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVO
YW1lIiwgInVuZGVmaW5lZCIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IGxvY2FsZU1hdGNoZXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdub3BlJyB9IH0gfSki
LCAiJ25vcGUnIik7CitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxv
Y2FsZU1hdGNoZXI6J2JhZCcgfSkiLCAnXCdSYW5nZUVycm9yOiBsb2NhbGVNYXRjaGVyIG11c3Qg
YmUgZWl0aGVyICJsb29rdXAiIG9yICJiZXN0IGZpdCJcJycpOworc2hvdWxkTm90VGhyb3coIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBsb2NhbGVNYXRjaGVyOidsb29rdXAnIH0pIik7Citz
aG91bGROb3RUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxvY2FsZU1hdGNoZXI6
J2Jlc3QgZml0JyB9KSIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IGZvcm1hdE1hdGNoZXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdub3BlJyB9IH0gfSkiLCAi
J25vcGUnIik7CitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1h
dE1hdGNoZXI6J2JhZCcgfSkiLCAnXCdSYW5nZUVycm9yOiBmb3JtYXRNYXRjaGVyIG11c3QgYmUg
ZWl0aGVyICJiYXNpYyIgb3IgImJlc3QgZml0IlwnJyk7CitzaG91bGROb3RUaHJvdygiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2Jhc2ljJyB9KSIpOworc2hvdWxk
Tm90VGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBmb3JtYXRNYXRjaGVyOidiZXN0
IGZpdCcgfSkiKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ25vd2hlcmUvYm9ndXMnIH0pIiwgIidSYW5nZUVycm9yOiBpbnZhbGlkIHRpbWUg
em9uZTogbm93aGVyZS9ib2d1cyciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdub3BlJyB9IH0gfSkiLCAi
J25vcGUnIik7CisKKy8vIFRpbWUgem9uZSBpcyBjYXNlIGluc2Vuc2l0aXZlLgorc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ2FtZXJpY2EvZGVudmVyJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9EZW52ZXInIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQU1FUklDQS9MT1Nf
QU5HRUxFUycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvTG9zX0Fu
Z2VsZXMnIik7CisKKy8vIERlZmF1bHQgdGltZSB6b25lIGlzIGEgdmFsaWQgY2Fub25pY2FsIHRp
bWUgem9uZS4KK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICJJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUiKTsKKworLy8gVGltZSB6b25lIGlzIGNhbm9uaWNhbGl6ZWQgZm9y
IG9ic29sZXRlIGxpbmtzIGluIElBTkEgdHogYmFja3dhcmQgZmlsZS4KK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNhL0F0a2EnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0FkYWsnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQW1lcmljYS9FbnNlbmFkYScgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvVGlqdWFuYSciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNhL1BvcnRv
X0FjcmUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1Jpb19CcmFu
Y28nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
QW1lcmljYS9TaGlwcm9jaycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJp
Y2EvRGVudmVyJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0FudGFyY3RpY2EvU291dGhfUG9sZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ1BhY2lmaWMvQXVja2xhbmQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9Bc2hraGFiYWQnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIiwgIidBc2lhL0FzaGdhYmF0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvQ2hvbmdxaW5nJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSIsICInQXNpYS9TaGFuZ2hhaSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL0NodW5na2luZycgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvU2hhbmdoYWknIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9EYWNjYScgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvRGhha2EnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9IYXJiaW4nIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIiwgIidBc2lhL1NoYW5naGFpJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvS2FzaGdhcicgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvVXJ1bXFpJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvTWFjYW8nIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIiwgIidBc2lhL01hY2F1JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvVGVsX0F2aXYnIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIiwgIidBc2lhL0plcnVzYWxlbSciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL1RoaW1idScgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvVGhpbXBodSciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL1VqdW5nX1BhbmRhbmcnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL01ha2Fzc2FyJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvVWxhbl9CYXRvcicg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvVWxhYW5iYWF0YXInIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlh
L0FDVCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9TeWRuZXkn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVz
dHJhbGlhL0NhbmJlcnJhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXVzdHJh
bGlhL1N5ZG5leSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBdXN0cmFsaWEvTEhJJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXVzdHJhbGlhL0xvcmRfSG93ZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvTlNXJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSIsICInQXVzdHJhbGlhL1N5ZG5leSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvTm9ydGgnIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvRGFyd2luJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9RdWVlbnNsYW5kJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXVzdHJhbGlhL0JyaXNiYW5lJyIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9T
b3V0aCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9BZGVsYWlk
ZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
dXN0cmFsaWEvVGFzbWFuaWEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBdXN0
cmFsaWEvSG9iYXJ0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0F1c3RyYWxpYS9WaWN0b3JpYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0F1c3RyYWxpYS9NZWxib3VybmUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1dlc3QnIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvUGVydGgnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1lhbmNvd2lubmEnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvQnJva2VuX0hpbGwnIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQnJhemlsL0Fj
cmUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1Jpb19CcmFuY28n
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQnJh
emlsL0RlTm9yb25oYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2Ev
Tm9yb25oYSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdCcmF6aWwvRWFzdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJp
Y2EvU2FvX1BhdWxvJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0JyYXppbC9XZXN0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QW1lcmljYS9NYW5hdXMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnQ2FuYWRhL0F0bGFudGljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSIsICInQW1lcmljYS9IYWxpZmF4JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9DZW50cmFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSIsICInQW1lcmljYS9XaW5uaXBlZyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvRWFzdC1TYXNrYXRjaGV3YW4nIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1JlZ2luYSciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvRWFzdGVybicg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvVG9yb250byciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvTW91
bnRhaW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0VkbW9udG9u
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0Nh
bmFkYS9OZXdmb3VuZGxhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVy
aWNhL1N0X0pvaG5zJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0NhbmFkYS9QYWNpZmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIs
ICInQW1lcmljYS9WYW5jb3V2ZXInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL1Nhc2thdGNoZXdhbicgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvUmVnaW5hJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9ZdWtvbicgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvV2hpdGVob3JzZSciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDaGlsZS9Db250aW5lbnRhbCcgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvU2FudGlhZ28nIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2hpbGUvRWFzdGVy
SXNsYW5kJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInUGFjaWZpYy9FYXN0ZXIn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ3Vi
YScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvSGF2YW5hJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0VneXB0JyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQWZyaWNhL0NhaXJvJyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0VpcmUnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidFdXJvcGUvRHVibGluJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0V1cm9wZS9CZWxmYXN0JyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInRXVyb3BlL0xvbmRvbiciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdFdXJvcGUvVGlyYXNwb2wn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidFdXJvcGUvQ2hpc2luYXUnIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR0InIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidFdXJvcGUvTG9uZG9uJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dCLUVpcmUnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidFdXJvcGUvTG9uZG9uJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dNVCswJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSIsICInVVRDJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dNVC0wJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSIsICInVVRDJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0dNVDAnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidVVEMnIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR3JlZW53aWNo
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInVVRDJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0hvbmdrb25nJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9Ib25nX0tvbmcnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSWNlbGFuZCcgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUiLCAiJ0F0bGFudGljL1JleWtqYXZpayciKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdJcmFuJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9UZWhyYW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSXNyYWVsJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSIsICInQXNpYS9KZXJ1c2FsZW0nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSmFtYWljYScgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUiLCAiJ0FtZXJpY2EvSmFtYWljYSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdKYXBhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUiLCAiJ0FzaWEvVG9reW8nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnS3dhamFsZWluJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSIsICInUGFjaWZpYy9Ld2FqYWxlaW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnTGlieWEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IiwgIidBZnJpY2EvVHJpcG9saSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdNZXhpY28vQmFqYU5vcnRlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSIsICInQW1lcmljYS9UaWp1YW5hJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ01leGljby9CYWphU3VyJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9NYXphdGxhbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdNZXhpY28vR2VuZXJhbCcgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvTWV4aWNvX0NpdHknIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnTlonIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIiwgIidQYWNpZmljL0F1Y2tsYW5kJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ05aLUNIQVQnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIiwgIidQYWNpZmljL0NoYXRoYW0nIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnTmF2YWpvJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9EZW52ZXInIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnUFJDJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSIsICInQXNpYS9TaGFuZ2hhaSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdQb2xhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidFdXJvcGUvV2Fyc2F3JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ1BvcnR1Z2FsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSIsICInRXVyb3BlL0xpc2JvbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdST0MnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwg
IidBc2lhL1RhaXBlaSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdST0snIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL1Nl
b3VsJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J1NpbmdhcG9yZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvU2luZ2Fw
b3JlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J1R1cmtleScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0V1cm9wZS9Jc3RhbmJ1
bCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdV
Q1QnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidVVEMnIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvQWxhc2thJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9BbmNob3JhZ2UnIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvQWxldXRpYW4nIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0FkYWsnIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvQXJpem9uYScgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvUGhvZW5peCciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9DZW50cmFsJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9DaGljYWdvJyIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0Vhc3Rlcm4n
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL05ld19Zb3JrJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0hhd2Fp
aScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1BhY2lmaWMvSG9ub2x1bHUnIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvTWlj
aGlnYW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0RldHJvaXQn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMv
TW91bnRhaW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0RlbnZl
ciciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdV
Uy9QYWNpZmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9Mb3Nf
QW5nZWxlcyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdVUy9TYW1vYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1BhY2lmaWMv
UGFnb19QYWdvJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ1VUQycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1VUQyciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVbml2ZXJzYWwn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidVVEMnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVy1TVScgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUiLCAiJ0V1cm9wZS9Nb3Njb3cnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnWnVsdScgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUiLCAiJ1VUQyciKTsKKworLy8gR2V0cyBkZWZhdWx0IGNhbGVuZGFyIGFuZCBudW1i
ZXJpbmdTeXN0ZW0gZnJvbSBsb2NhbGUuCitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
YXItc2EnKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUiLCAiJ2FyLVNBJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyLXNhJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIi
LCAiJ2lzbGFtaWMtdW1hbHF1cmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
YXItc2EnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2FyYWInIik7CisK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgY2FsZW5kYXI6J2RhbmdpJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInZ3JlZ29yaWFuJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYm9ndXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5s
b2NhbGUiLCAiJ2VuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2Et
Ym9ndXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInZ3JlZ29yaWFuJyIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYnVkZGhpc3QnKS5yZXNvbHZlZE9w
dGlvbnMoKS5sb2NhbGUiLCAiJ2VuLXUtY2EtYnVkZGhpc3QnIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4tdS1jYS1idWRkaGlzdCcpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVu
ZGFyIiwgIididWRkaGlzdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LWNhLWNoaW5lc2UnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInY2hpbmVzZSciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWNvcHRpYycpLnJlc29sdmVk
T3B0aW9ucygpLmNhbGVuZGFyIiwgIidjb3B0aWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1jYS1kYW5naScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidk
YW5naSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWV0aGlvYWEn
KS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInZXRoaW9waWMtYW1ldGUtYWxlbSciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWV0aGlvcGljJykucmVzb2x2
ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2V0aGlvcGljJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2FyLVNBLXUtY2EtZ3JlZ29yeScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVu
ZGFyIiwgIidncmVnb3JpYW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1jYS1oZWJyZXcnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaGVicmV3JyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaW5kaWFuJykucmVzb2x2ZWRP
cHRpb25zKCkuY2FsZW5kYXIiLCAiJ2luZGlhbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LWNhLWlzbGFtaWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICIn
aXNsYW1pYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFt
aWNjJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMtY2l2aWwnIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1JU084NjAxJykucmVzb2x2ZWRP
cHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbzg2MDEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1jYS1qYXBhbmVzZScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwg
IidqYXBhbmVzZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLXBl
cnNpYW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICIncGVyc2lhbiciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLXJvYycpLnJlc29sdmVkT3B0aW9ucygp
LmNhbGVuZGFyIiwgIidyb2MnIik7CisvLyBGSVhNRTogaHR0cHM6Ly9naXRodWIuY29tL3RjMzkv
ZWNtYTQwMi9pc3N1ZXMvNTkKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LWNhLWV0aGlvcGljLWFtZXRlLWFsZW0nKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICIn
ZXRoaW9hYSciKTsKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlz
bGFtaWMtdW1hbHF1cmEnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy11
bWFscXVyYSciKTsKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlz
bGFtaWMtdGJsYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljLXRibGEn
Iik7CisvLyBzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljLWNp
dmlsJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMtY2l2aWwnIik7Cisv
LyBzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljLXJnc2EnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy1yZ3NhJyIpOworCitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG51bWJlcmluZ1N5c3RlbTonZ3VqcicgfSku
cmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidsYXRuJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYm9ndXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5s
b2NhbGUiLCAiJ2VuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
Ym9ndXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xhdG4nIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1sYXRuJykucmVzb2x2ZWRPcHRp
b25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidsYXRuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtbnUtYXJhYicpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4t
dS1udS1hcmFiJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYXJh
YicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInYXJhYiciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWFyYWJleHQnKS5yZXNvbHZlZE9wdGlv
bnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2FyYWJleHQnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1udS1iYWxpJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lz
dGVtIiwgIidiYWxpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
YmVuZycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInYmVuZyciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWRldmEnKS5yZXNvbHZlZE9wdGlv
bnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2RldmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1udS1mdWxsd2lkZScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5
c3RlbSIsICInZnVsbHdpZGUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1ndWpyJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidndWpyJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZ3VydScpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInZ3VydSciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LW51LWhhbmlkZWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJp
bmdTeXN0ZW0iLCAiJ2hhbmlkZWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1udS1raG1yJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidraG1y
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUta25kYScpLnJlc29s
dmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICIna25kYSciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxhb28nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJp
bmdTeXN0ZW0iLCAiJ2xhb28nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1saW1iJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidsaW1iJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbWx5bScpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInbWx5bSciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LW51LW1vbmcnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdT
eXN0ZW0iLCAiJ21vbmcnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1u
dS1teW1yJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidteW1yJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtb3J5YScpLnJlc29sdmVkT3B0
aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICInb3J5YSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LW51LXRhbWxkZWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdT
eXN0ZW0iLCAiJ3RhbWxkZWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS10ZWx1JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIid0ZWx1JyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGhhaScpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICIndGhhaSciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LW51LXRpYnQnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdT
eXN0ZW0iLCAiJ3RpYnQnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgd2Vla2RheTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ3dlZWtkYXknIH0gfSB9KSIsICIn
d2Vla2RheSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vl
a2RheTonaW52YWxpZCcgfSkiLCAnXCdSYW5nZUVycm9yOiB3ZWVrZGF5IG11c3QgYmUgIm5hcnJv
dyIsICJzaG9ydCIsIG9yICJsb25nIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0
aW9ucygpLndlZWtkYXkiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHdlZWtkYXk6J25hcnJvdycsIG1vbnRoOidudW1lcmljJywgZGF5OidudW1l
cmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IiwgIiduYXJyb3cnIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J3Nob3J0JywgbW9udGg6J251
bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAiJ3No
b3J0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5Oids
b25nJywgbW9udGg6J251bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygp
LndlZWtkYXkiLCAiJ2xvbmcnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgZXJhOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnZXJhJyB9IH0gfSkiLCAiJ2VyYSci
KTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduZXZlcicg
fSkiLCAnXCdSYW5nZUVycm9yOiBlcmEgbXVzdCBiZSAibmFycm93IiwgInNob3J0Iiwgb3IgImxv
bmciXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicy
LWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZGF5IiwgInVuZGVm
aW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25hcnJv
dycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSIsICInbmFycm93JyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J3Nob3J0JywgeWVh
cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgIidzaG9ydCciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOidsb25nJywgeWVhcjonbnVtZXJp
YycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgIidsb25nJyIpOworCitzaG91bGRUaHJvdygi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHllYXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICd5
ZWFyJyB9IH0gfSkiLCAiJ3llYXInIik7CitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHllYXI6J25vcGUnIH0pIiwgJ1wnUmFuZ2VFcnJvcjogeWVhciBtdXN0IGJlICIy
LWRpZ2l0IiBvciAibnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS55ZWFyIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBlcmE6J25hcnJvdycsIHllYXI6JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnllYXIiLCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IGVyYTonbmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVh
ciIsICInbnVtZXJpYyciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBtb250aDogeyB0b1N0cmluZygpIHsgdGhyb3cgJ21vbnRoJyB9IH0gfSkiLCAiJ21vbnRo
JyIpOworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDoyIH0p
IiwgJ1wnUmFuZ2VFcnJvcjogbW9udGggbXVzdCBiZSAiMi1kaWdpdCIsICJudW1lcmljIiwgIm5h
cnJvdyIsICJzaG9ydCIsIG9yICJsb25nIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLm1vbnRoIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyBtb250aDonMi1kaWdpdCcsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLm1vbnRoIiwgIicyLWRpZ2l0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyBtb250aDonbnVtZXJpYycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLm1vbnRoIiwgIidudW1lcmljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyBtb250aDonbmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRP
cHRpb25zKCkubW9udGgiLCAiJ25hcnJvdyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgbW9udGg6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRp
b25zKCkubW9udGgiLCAiJ3Nob3J0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBtb250aDonbG9uZycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygp
Lm1vbnRoIiwgIidsb25nJyIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IGRheTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ2RheScgfSB9IH0pIiwgIidkYXknIik7
CitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGRheTonJyB9KSIsICdc
J1JhbmdlRXJyb3I6IGRheSBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyJcJycpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3Vy
OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAidW5kZWZpbmVkIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgZGF5OicyLWRp
Z2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgZGF5OidudW1lcmljJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAiJ251bWVyaWMnIik7CisKK3Nob3VsZFRocm93KCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgaG91cjogeyB0b1N0cmluZygpIHsgdGhyb3cgJ2hv
dXInIH0gfSB9KSIsICInaG91ciciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgaG91cjpbXSB9KSIsICdcJ1JhbmdlRXJyb3I6IGhvdXIgbXVzdCBiZSAiMi1kaWdp
dCIgb3IgIm51bWVyaWMiXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicp
LnJlc29sdmVkT3B0aW9ucygpLmhvdXIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6JzItZGlnaXQnIH0p
LnJlc29sdmVkT3B0aW9ucygpLmhvdXIiLCAiJ251bWVyaWMnIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLmhvdXIiLCAiJ251bWVyaWMnIik7CisKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiIsICJ1bmRlZmlu
ZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRp
Z2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgInRydWUi
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdwdC1CUicsIHsgbWludXRlOicyLWRp
Z2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgImZhbHNl
Iik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOiB7
IHRvU3RyaW5nKCkgeyB0aHJvdyAnbWludXRlJyB9IH0gfSkiLCAiJ21pbnV0ZSciKTsKK3Nob3Vs
ZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOm51bGwgfSkiLCAnXCdS
YW5nZUVycm9yOiBtaW51dGUgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiXCcnKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0
ZSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
bWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubWlu
dXRlIiwgIicyLWRpZ2l0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5t
aW51dGUiLCAiJzItZGlnaXQnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgc2Vjb25kOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnc2Vjb25kJyB9IH0gfSkiLCAi
J3NlY29uZCciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgc2Vj
b25kOidiYWR2YWx1ZScgfSkiLCAnXCdSYW5nZUVycm9yOiBzZWNvbmQgbXVzdCBiZSAiMi1kaWdp
dCIgb3IgIm51bWVyaWMiXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicp
LnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOidudW1lcmljJywgaG91cjonbnVtZXJpYycs
IHNlY29uZDonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIiwgIicyLWRpZ2l0
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVy
aWMnLCBob3VyOidudW1lcmljJywgc2Vjb25kOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS5zZWNvbmQiLCAiJzItZGlnaXQnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmVOYW1lOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAndGltZVpvbmVO
YW1lJyB9IH0gfSkiLCAiJ3RpbWVab25lTmFtZSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmVOYW1lOiduYW1lJyB9KSIsICdcJ1JhbmdlRXJyb3I6
IHRpbWVab25lTmFtZSBtdXN0IGJlICJzaG9ydCIgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIs
ICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWlu
dXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycsIHRpbWVab25lTmFtZTonc2hvcnQnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIsICInc2hvcnQnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgncHQtQlInLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVy
aWMnLCB0aW1lWm9uZU5hbWU6J2xvbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFt
ZSIsICInbG9uZyciKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>267627</attachid>
            <date>2015-12-18 07:18:09 -0800</date>
            <delta_ts>2015-12-18 08:42:44 -0800</delta_ts>
            <desc>Patch reworked to align with Collator</desc>
            <filename>bug-147603-20151218081730.patch</filename>
            <type>text/plain</type>
            <size>230068</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk0MjY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAy
MDhiM2ViYjYxYjZlY2YyODcyMDVlNGY4M2JjYzY0NGJlM2E2NjZiLi4wOTU5MzJhZDY4NDI5NTNl
NGViNGMwYmZlYTViZTEyODM4MmU3OGE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0OSBAQAorMjAxNS0xMi0xOCAgQW5keSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVy
ZS5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudHMgSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0IGFu
ZCByZWxhdGVkIGFic3RyYWN0IG9wZXJhdGlvbnMKKyAgICAgICAgdXNpbmcgSUNVLiBMYXp5IGlu
aXRpYWxpemF0aW9uIGlzIHVzZWQgZm9yIERhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS4KKyAgICAg
ICAgUmVmYWN0b3IgdG8gYWxpZ24gd2l0aCBDb2xsYXRvciB3b3JrLgorCisgICAgICAgICogaWN1
L3VuaWNvZGUvdWRhdHBnLmg6IEFkZGVkLgorICAgICAgICAqIGljdS91bmljb2RlL3VudW1zeXMu
aDogQWRkZWQuCisgICAgICAgICogcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6ZGVmYXVs
dFRpbWVab25lKToKKyAgICAgICAgKEpTQzo6Y2Fub25pY2FsaXplVGltZVpvbmVOYW1lKToKKyAg
ICAgICAgKEpTQzo6bG9jYWxlRGF0YSk6CisgICAgICAgIChKU0M6OnRvRGF0ZVRpbWVPcHRpb25z
KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRGb3JtYXRzRnJvbVBhdHRl
cm4pOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmluaXRpYWxpemVEYXRlVGlt
ZUZvcm1hdCk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6d2Vla2RheVN0cmlu
Zyk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6ZXJhU3RyaW5nKToKKyAgICAg
ICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojp5ZWFyU3RyaW5nKToKKyAgICAgICAgKEpTQzo6
SW50bERhdGVUaW1lRm9ybWF0Ojptb250aFN0cmluZyk6CisgICAgICAgIChKU0M6OkludGxEYXRl
VGltZUZvcm1hdDo6ZGF5U3RyaW5nKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0
Ojpob3VyU3RyaW5nKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjptaW51dGVT
dHJpbmcpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNlY29uZFN0cmluZyk6
CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6dGltZVpvbmVOYW1lU3RyaW5nKToK
KyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpyZXNvbHZlZE9wdGlvbnMpOgorICAg
ICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmZvcm1hdCk6CisgICAgICAgIChKU0M6Oklu
dGxEYXRlVGltZUZvcm1hdEZ1bmNGb3JtYXREYXRlVGltZSk6IERlbGV0ZWQuCisgICAgICAgICog
cnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuaDoKKyAgICAgICAgKiBydW50aW1lL0ludGxEYXRl
VGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SW50bERh
dGVUaW1lRm9ybWF0KToKKyAgICAgICAgKEpTQzo6Y2FsbEludGxEYXRlVGltZUZvcm1hdCk6Cisg
ICAgICAgICogcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwOgorICAgICAg
ICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUpOgorICAgICAgICAo
SlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQpOgorICAgICAgICAo
SlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKToKKyAg
ICAgICAgKiBydW50aW1lL0ludGxPYmplY3QuY3BwOgorICAgICAgICAoSlNDOjpyZXNvbHZlTG9j
YWxlKToKKyAgICAgICAgKEpTQzo6Z2V0TnVtYmVyaW5nU3lzdGVtc0ZvckxvY2FsZSk6CisgICAg
ICAgICogcnVudGltZS9JbnRsT2JqZWN0Lmg6CisKIDIwMTUtMTItMTggIENzYWJhIE9zenRyb2dv
bsOhYyAgPG9zc3lAd2Via2l0Lm9yZz4KIAogICAgICAgICBbQVJNXSBBZGQgdGhlIG1pc3Npbmcg
c2V0dXBBcmd1bWVudHNXaXRoRXhlY1N0YXRlIGZ1bmN0aW9ucyBhZnRlciByMTkzOTc0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRhdHBnLmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRhdHBnLmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2RjN2U4
OWYyZGZiNjQwMjIwZjM1NzA4ODM1OGI2ZDljNTc4ZWIwZQotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9pY3UvdW5pY29kZS91ZGF0cGcuaApAQCAtMCwwICsxLDU4NiBA
QAorLyoKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyoKKyogICBDb3B5cmlnaHQgKEMpIDIwMDct
MjAxMCwgSW50ZXJuYXRpb25hbCBCdXNpbmVzcyBNYWNoaW5lcworKiAgIENvcnBvcmF0aW9uIGFu
ZCBvdGhlcnMuICBBbGwgUmlnaHRzIFJlc2VydmVkLgorKgorKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KgorKiAgIGZpbGUgbmFtZTogIHVkYXRwZy5oCisqICAgZW5jb2Rpbmc6ICAgVVMtQVNDSUkKKyog
ICB0YWIgc2l6ZTogICA4IChub3QgdXNlZCkKKyogICBpbmRlbnRhdGlvbjo0CisqCisqICAgY3Jl
YXRlZCBvbjogMjAwN2p1bDMwCisqICAgY3JlYXRlZCBieTogTWFya3VzIFcuIFNjaGVyZXIKKyov
CisKKyNpZm5kZWYgX19VREFUUEdfSF9fCisjZGVmaW5lIF9fVURBVFBHX0hfXworCisjaW5jbHVk
ZSAidW5pY29kZS91dHlwZXMuaCIKKyNpbmNsdWRlICJ1bmljb2RlL3VlbnVtLmgiCisjaW5jbHVk
ZSAidW5pY29kZS9sb2NhbHBvaW50ZXIuaCIKKworLyoqCisgKiBcZmlsZQorICogXGJyaWVmIEMg
QVBJOiBXcmFwcGVyIGZvciBEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKHVuaWNvZGUvZHRwdG5n
ZW4uaCkuCisgKgorICogVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciBwcm92aWRlcyBmbGV4aWJs
ZSBnZW5lcmF0aW9uIG9mIGRhdGUgZm9ybWF0IHBhdHRlcm5zLCAKKyAqIGxpa2UgInl5LU1NLWRk
Ii4gVGhlIHVzZXIgY2FuIGJ1aWxkIHVwIHRoZSBnZW5lcmF0b3IgYnkgYWRkaW5nIHN1Y2Nlc3Np
dmUgCisgKiBwYXR0ZXJucy4gT25jZSB0aGF0IGlzIGRvbmUsIGEgcXVlcnkgY2FuIGJlIG1hZGUg
dXNpbmcgYSAic2tlbGV0b24iLCB3aGljaCBpcyAKKyAqIGEgcGF0dGVybiB3aGljaCBqdXN0IGlu
Y2x1ZGVzIHRoZSBkZXNpcmVkIGZpZWxkcyBhbmQgbGVuZ3Rocy4gVGhlIGdlbmVyYXRvciAKKyAq
IHdpbGwgcmV0dXJuIHRoZSAiYmVzdCBmaXQiIHBhdHRlcm4gY29ycmVzcG9uZGluZyB0byB0aGF0
IHNrZWxldG9uLgorICogPHA+VGhlIG1haW4gbWV0aG9kIHBlb3BsZSB3aWxsIHVzZSBpcyB1ZGF0
cGdfZ2V0QmVzdFBhdHRlcm4sIHNpbmNlIG5vcm1hbGx5CisgKiBVRGF0ZVRpbWVQYXR0ZXJuR2Vu
ZXJhdG9yIGlzIHByZS1idWlsdCB3aXRoIGRhdGEgZnJvbSBhIHBhcnRpY3VsYXIgbG9jYWxlLiAK
KyAqIEhvd2V2ZXIsIGdlbmVyYXRvcnMgY2FuIGJlIGJ1aWx0IGRpcmVjdGx5IGZyb20gb3RoZXIg
ZGF0YSBhcyB3ZWxsLgorICogPHA+PGk+SXNzdWU6IG1heSBiZSB1c2VmdWwgdG8gYWxzbyBoYXZl
IGEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIHRoZSBsaXN0IG9mIAorICogZmllbGRzIGluIGEgcGF0
dGVybiwgaW4gb3JkZXIsIHNpbmNlIHdlIGhhdmUgdGhhdCBpbnRlcm5hbGx5LgorICogVGhhdCB3
b3VsZCBiZSB1c2VmdWwgZm9yIGdldHRpbmcgdGhlIFVJIG9yZGVyIG9mIGZpZWxkIGVsZW1lbnRz
LjwvaT4KKyAqLworCisvKioKKyAqIE9wYXF1ZSB0eXBlIGZvciBhIGRhdGUvdGltZSBwYXR0ZXJu
IGdlbmVyYXRvciBvYmplY3QuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLwordHlwZWRlZiB2b2lk
ICpVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOworCisvKioKKyAqIEZpZWxkIG51bWJlciBjb25z
dGFudHMgZm9yIHVkYXRwZ19nZXRBcHBlbmRJdGVtRm9ybWF0cygpIGFuZCBzaW1pbGFyIGZ1bmN0
aW9ucy4KKyAqIFRoZXNlIGNvbnN0YW50cyBhcmUgc2VwYXJhdGUgZnJvbSBVRGF0ZUZvcm1hdEZp
ZWxkIGRlc3BpdGUgc2VtYW50aWMgb3ZlcmxhcAorICogYmVjYXVzZSBzb21lIGZpZWxkcyBhcmUg
bWVyZ2VkIGZvciB0aGUgZGF0ZS90aW1lIHBhdHRlcm4gZ2VuZXJhdG9yLgorICogQHN0YWJsZSBJ
Q1UgMy44CisgKi8KK3R5cGVkZWYgZW51bSBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQgeworICAgIC8q
KiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfRVJBX0ZJRUxELAorICAgIC8qKiBAc3Rh
YmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfWUVBUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJ
Q1UgMy44ICovCisgICAgVURBVFBHX1FVQVJURVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNV
IDMuOCAqLworICAgIFVEQVRQR19NT05USF9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44
ICovCisgICAgVURBVFBHX1dFRUtfT0ZfWUVBUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1Ug
My44ICovCisgICAgVURBVFBHX1dFRUtfT0ZfTU9OVEhfRklFTEQsCisgICAgLyoqIEBzdGFibGUg
SUNVIDMuOCAqLworICAgIFVEQVRQR19XRUVLREFZX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElD
VSAzLjggKi8KKyAgICBVREFUUEdfREFZX09GX1lFQVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUg
SUNVIDMuOCAqLworICAgIFVEQVRQR19EQVlfT0ZfV0VFS19JTl9NT05USF9GSUVMRCwKKyAgICAv
KiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0RBWV9GSUVMRCwKKyAgICAvKiogQHN0
YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0RBWVBFUklPRF9GSUVMRCwKKyAgICAvKiogQHN0
YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0hPVVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUg
SUNVIDMuOCAqLworICAgIFVEQVRQR19NSU5VVEVfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNV
IDMuOCAqLworICAgIFVEQVRQR19TRUNPTkRfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19GUkFDVElPTkFMX1NFQ09ORF9GSUVMRCwKKyAgICAvKiogQHN0YWJs
ZSBJQ1UgMy44ICovCisgICAgVURBVFBHX1pPTkVfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNV
IDMuOCAqLworICAgIFVEQVRQR19GSUVMRF9DT1VOVAorfSBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQ7
CisKKy8qKgorICogTWFza3MgdG8gY29udHJvbCBmb3JjaW5nIHRoZSBsZW5ndGggb2Ygc3BlY2lm
aWVkIGZpZWxkcyBpbiB0aGUgcmV0dXJuZWQKKyAqIHBhdHRlcm4gdG8gbWF0Y2ggdGhvc2UgaW4g
dGhlIHNrZWxldG9uICh3aGVuIHRoaXMgd291bGQgbm90IGhhcHBlbgorICogb3RoZXJ3aXNlKS4g
VGhlc2UgbWF5IGJlIGNvbWJpbmVkIHRvIGZvcmNlIHRoZSBsZW5ndGggb2YgbXVsdGlwbGUgZmll
bGRzLgorICogVXNlZCB3aXRoIHVkYXRwZ19nZXRCZXN0UGF0dGVybldpdGhPcHRpb25zLCB1ZGF0
cGdfcmVwbGFjZUZpZWxkVHlwZXNXaXRoT3B0aW9ucy4KKyAqIEBzdGFibGUgSUNVIDQuNAorICov
Cit0eXBlZGVmIGVudW0gVURhdGVUaW1lUGF0dGVybk1hdGNoT3B0aW9ucyB7CisgICAgLyoqIEBz
dGFibGUgSUNVIDQuNCAqLworICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TID0gMCwKKyAgICAv
KiogQHN0YWJsZSBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX0hPVVJfRklFTERfTEVOR1RI
ID0gMSA8PCBVREFUUEdfSE9VUl9GSUVMRCwKKyAgICAvKiogQGludGVybmFsIElDVSA0LjQgKi8K
KyAgICBVREFUUEdfTUFUQ0hfTUlOVVRFX0ZJRUxEX0xFTkdUSCA9IDEgPDwgVURBVFBHX01JTlVU
RV9GSUVMRCwKKyAgICAvKiogQGludGVybmFsIElDVSA0LjQgKi8KKyAgICBVREFUUEdfTUFUQ0hf
U0VDT05EX0ZJRUxEX0xFTkdUSCA9IDEgPDwgVURBVFBHX1NFQ09ORF9GSUVMRCwKKyAgICAvKiog
QHN0YWJsZSBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX0FMTF9GSUVMRFNfTEVOR1RIID0g
KDEgPDwgVURBVFBHX0ZJRUxEX0NPVU5UKSAtIDEKK30gVURhdGVUaW1lUGF0dGVybk1hdGNoT3B0
aW9uczsKKworLyoqCisgKiBTdGF0dXMgcmV0dXJuIHZhbHVlcyBmcm9tIHVkYXRwZ19hZGRQYXR0
ZXJuKCkuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLwordHlwZWRlZiBlbnVtIFVEYXRlVGltZVBh
dHRlcm5Db25mbGljdCB7CisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19O
T19DT05GTElDVCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0JBU0Vf
Q09ORkxJQ1QsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19DT05GTElD
VCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0NPTkZMSUNUX0NPVU5U
Cit9IFVEYXRlVGltZVBhdHRlcm5Db25mbGljdDsKKworLyoqCisgICogT3BlbiBhIGdlbmVyYXRv
ciBhY2NvcmRpbmcgdG8gYSBnaXZlbiBsb2NhbGUuCisgICogQHBhcmFtIGxvY2FsZQorICAqIEBw
YXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5v
dCBpbmRpY2F0ZSBhCisgICogICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1
bmN0aW9uIGNhbGwuCisgICogQHJldHVybiBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvci4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIFVEYXRlVGltZVBh
dHRlcm5HZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVuKGNvbnN0IGNoYXIgKmxvY2Fs
ZSwgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIE9wZW4gYW4gZW1wdHkgZ2Vu
ZXJhdG9yLCB0byBiZSBjb25zdHJ1Y3RlZCB3aXRoIHVkYXRwZ19hZGRQYXR0ZXJuKC4uLikgZXRj
LgorICAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGlj
aCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgICogICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZv
cmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgICogQHJldHVybiBhIHBvaW50ZXIgdG8gVURhdGVUaW1l
UGF0dGVybkdlbmVyYXRvci4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIFVE
YXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVuRW1wdHkoVUVy
cm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIENsb3NlIGEgZ2VuZXJhdG9yLgorICAq
IEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAq
IEBzdGFibGUgSUNVIDMuOAorICAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19j
bG9zZShVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnKTsKKworI2lmIFVfU0hPV19DUExV
U1BMVVNfQVBJCisKK1VfTkFNRVNQQUNFX0JFR0lOCisKKy8qKgorICogXGNsYXNzIExvY2FsVURh
dGVUaW1lUGF0dGVybkdlbmVyYXRvclBvaW50ZXIKKyAqICJTbWFydCBwb2ludGVyIiBjbGFzcywg
Y2xvc2VzIGEgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciB2aWEgdWRhdHBnX2Nsb3NlKCkuCisg
KiBGb3IgbW9zdCBtZXRob2RzIHNlZSB0aGUgTG9jYWxQb2ludGVyQmFzZSBiYXNlIGNsYXNzLgor
ICoKKyAqIEBzZWUgTG9jYWxQb2ludGVyQmFzZQorICogQHNlZSBMb2NhbFBvaW50ZXIKKyAqIEBz
dGFibGUgSUNVIDQuNAorICovCitVX0RFRklORV9MT0NBTF9PUEVOX1BPSU5URVIoTG9jYWxVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yUG9pbnRlciwgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciwg
dWRhdHBnX2Nsb3NlKTsKKworVV9OQU1FU1BBQ0VfRU5ECisKKyNlbmRpZgorCisvKioKKyAgKiBD
cmVhdGUgYSBjb3B5IHBmIGEgZ2VuZXJhdG9yLgorICAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0
byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yIHRvIGJlIGNvcGllZC4KKyAgKiBAcGFyYW0gcEVy
cm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNh
dGUgYQorICAqICAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBj
YWxsLgorICAqIEByZXR1cm4gYSBwb2ludGVyIHRvIGEgbmV3IFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IuCisgICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19jbG9uZShjb25zdCBVRGF0ZVRpbWVQYXR0
ZXJuR2VuZXJhdG9yICpkdHBnLCBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBH
ZXQgdGhlIGJlc3QgcGF0dGVybiBtYXRjaGluZyB0aGUgaW5wdXQgc2tlbGV0b24uIEl0IGlzIGd1
YXJhbnRlZWQgdG8KKyAqIGhhdmUgYWxsIG9mIHRoZSBmaWVsZHMgaW4gdGhlIHNrZWxldG9uLgor
ICogCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGlt
ZVBhdHRlcm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIg
d2hpY2ggaXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhh
biBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNh
bGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRo
aXMgZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVy
YXRvciBvYmplY3QuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQ
YXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHNrZWxldG9uCisgKiAgICAgICAgICAgIFRoZSBz
a2VsZXRvbiBpcyBhIHBhdHRlcm4gY29udGFpbmluZyBvbmx5IHRoZSB2YXJpYWJsZSBmaWVsZHMu
CisgKiAgICAgICAgICAgIEZvciBleGFtcGxlLCAiTU1NZGQiIGFuZCAibW1oaCIgYXJlIHNrZWxl
dG9ucy4KKyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBza2VsZXRvbgorICogQHBhcmFt
IGJlc3RQYXR0ZXJuCisgKiAgICAgICAgICAgIFRoZSBiZXN0IHBhdHRlcm4gZm91bmQgZnJvbSB0
aGUgZ2l2ZW4gc2tlbGV0b24uCisgKiBAcGFyYW0gY2FwYWNpdHkgdGhlIGNhcGFjaXR5IG9mIGJl
c3RQYXR0ZXJuLgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JD
b2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgIGZhaWx1
cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGJl
c3RQYXR0ZXJuLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9F
WFBPUlQyCit1ZGF0cGdfZ2V0QmVzdFBhdHRlcm4oVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAq
ZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMy
X3QgbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgIFVDaGFyICpiZXN0UGF0dGVybiwgaW50
MzJfdCBjYXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICBVRXJyb3JDb2RlICpwRXJyb3JD
b2RlKTsKKworLyoqCisgKiBHZXQgdGhlIGJlc3QgcGF0dGVybiBtYXRjaGluZyB0aGUgaW5wdXQg
c2tlbGV0b24uIEl0IGlzIGd1YXJhbnRlZWQgdG8KKyAqIGhhdmUgYWxsIG9mIHRoZSBmaWVsZHMg
aW4gdGhlIHNrZWxldG9uLgorICogCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEg
bm9uLWNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVm
dWwgcGF0dGVybiBwYXJzZXIgd2hpY2ggaXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmpl
Y3QsCisgKiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4K
KyAqIENvbnNlY3V0aXZlIGNhbGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNo
IG90aGVyLAorICogYnV0IHRoaXMgZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5
IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBvYmplY3QuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9p
bnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHNrZWxldG9uCisg
KiAgICAgICAgICAgIFRoZSBza2VsZXRvbiBpcyBhIHBhdHRlcm4gY29udGFpbmluZyBvbmx5IHRo
ZSB2YXJpYWJsZSBmaWVsZHMuCisgKiAgICAgICAgICAgIEZvciBleGFtcGxlLCAiTU1NZGQiIGFu
ZCAibW1oaCIgYXJlIHNrZWxldG9ucy4KKyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBz
a2VsZXRvbgorICogQHBhcmFtIG9wdGlvbnMKKyAqICAgICAgICAgICAgT3B0aW9ucyBmb3IgZm9y
Y2luZyB0aGUgbGVuZ3RoIG9mIHNwZWNpZmllZCBmaWVsZHMgaW4gdGhlCisgKiAgICAgICAgICAg
IHJldHVybmVkIHBhdHRlcm4gdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNrZWxldG9uICh3aGVuIHRo
aXMKKyAqICAgICAgICAgICAgd291bGQgbm90IGhhcHBlbiBvdGhlcndpc2UpLiBGb3IgZGVmYXVs
dCBiZWhhdmlvciwgdXNlCisgKiAgICAgICAgICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TLgor
ICogQHBhcmFtIGJlc3RQYXR0ZXJuCisgKiAgICAgICAgICAgIFRoZSBiZXN0IHBhdHRlcm4gZm91
bmQgZnJvbSB0aGUgZ2l2ZW4gc2tlbGV0b24uCisgKiBAcGFyYW0gY2FwYWNpdHkKKyAqICAgICAg
ICAgICAgdGhlIGNhcGFjaXR5IG9mIGJlc3RQYXR0ZXJuLgorICogQHBhcmFtIHBFcnJvckNvZGUK
KyAqICAgICAgICAgICAgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90
IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNh
bGwuCisgKiBAcmV0dXJuIHRoZSBsZW5ndGggb2YgYmVzdFBhdHRlcm4uCisgKiBAc3RhYmxlIElD
VSA0LjQKKyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3VkYXRwZ19nZXRCZXN0UGF0
dGVybldpdGhPcHRpb25zKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMyX3Qg
bGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVy
bk1hdGNoT3B0aW9ucyBvcHRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
VUNoYXIgKmJlc3RQYXR0ZXJuLCBpbnQzMl90IGNhcGFjaXR5LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIEdldCBh
IHVuaXF1ZSBza2VsZXRvbiBmcm9tIGEgZ2l2ZW4gcGF0dGVybi4gRm9yIGV4YW1wbGUsCisgICog
Ym90aCAiTU1NLWRkIiBhbmQgImRkL01NTSIgcHJvZHVjZSB0aGUgc2tlbGV0b24gIk1NTWRkIi4K
KyAgKiAKKyAgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRl
VGltZVBhdHRlcm5HZW5lcmF0b3I6CisgICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFy
c2VyIHdoaWNoIGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICAqIHJhdGhl
ciB0aGFuIGNyZWF0aW5nIG9uZSBmb3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICAqIENvbnNlY3V0
aXZlIGNhbGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICAq
IGJ1dCB0aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmds
ZSBnZW5lcmF0b3Igb2JqZWN0LgorICAqCisgICogQHBhcmFtIGR0cGcgICAgIGEgcG9pbnRlciB0
byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBwYXJhbSBwYXR0ZXJuICBpbnB1dCBw
YXR0ZXJuLCBzdWNoIGFzICJkZC9NTU0iLgorICAqIEBwYXJhbSBsZW5ndGggICB0aGUgbGVuZ3Ro
IG9mIHBhdHRlcm4uCisgICogQHBhcmFtIHNrZWxldG9uIHN1Y2ggYXMgIk1NTWRkIgorICAqIEBw
YXJhbSBjYXBhY2l0eSB0aGUgY2FwYWNpdHkgb2Ygc2tlbGV0b24uCisgICogQHBhcmFtIHBFcnJv
ckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRl
IGEKKyAgKiAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxs
LgorICAqIEByZXR1cm4gdGhlIGxlbmd0aCBvZiBza2VsZXRvbi4KKyAgKiBAc3RhYmxlIElDVSAz
LjgKKyAgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQyCit1ZGF0cGdfZ2V0U2tlbGV0b24o
VURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICBjb25z
dCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgVUNo
YXIgKnNrZWxldG9uLCBpbnQzMl90IGNhcGFjaXR5LAorICAgICAgICAgICAgICAgICAgIFVFcnJv
ckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEdldCBhIHVuaXF1ZSBiYXNlIHNrZWxldG9u
IGZyb20gYSBnaXZlbiBwYXR0ZXJuLiBUaGlzIGlzIHRoZSBzYW1lCisgKiBhcyB0aGUgc2tlbGV0
b24sIGV4Y2VwdCB0aGF0IGRpZmZlcmVuY2VzIGluIGxlbmd0aCBhcmUgbWluaW1pemVkIHNvCisg
KiBhcyB0byBvbmx5IHByZXNlcnZlIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gc3RyaW5nIGFuZCBu
dW1lcmljIGZvcm0uIFNvCisgKiBmb3IgZXhhbXBsZSwgYm90aCAiTU1NLWRkIiBhbmQgImQvTU1N
IiBwcm9kdWNlIHRoZSBza2VsZXRvbiAiTU1NZCIKKyAqIChub3RpY2UgdGhlIHNpbmdsZSBkKS4K
KyAqCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGlt
ZVBhdHRlcm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIg
d2hpY2ggaXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhh
biBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNh
bGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRo
aXMgZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVy
YXRvciBvYmplY3QuCisgKgorICogQHBhcmFtIGR0cGcgICAgIGEgcG9pbnRlciB0byBVRGF0ZVRp
bWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBhdHRlcm4gIGlucHV0IHBhdHRlcm4sIHN1
Y2ggYXMgImRkL01NTSIuCisgKiBAcGFyYW0gbGVuZ3RoICAgdGhlIGxlbmd0aCBvZiBwYXR0ZXJu
LgorICogQHBhcmFtIGJhc2VTa2VsZXRvbiBzdWNoIGFzICJNZCIKKyAqIEBwYXJhbSBjYXBhY2l0
eSB0aGUgY2FwYWNpdHkgb2YgYmFzZSBza2VsZXRvbi4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEg
cG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAg
ICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJl
dHVybiB0aGUgbGVuZ3RoIG9mIGJhc2VTa2VsZXRvbi4KKyAqIEBzdGFibGUgSUNVIDMuOAorICov
CitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRhdHBnX2dldEJhc2VTa2VsZXRvbihVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAg
IFVDaGFyICpiYXNlU2tlbGV0b24sIGludDMyX3QgY2FwYWNpdHksCisgICAgICAgICAgICAgICAg
ICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEFkZHMgYSBwYXR0ZXJu
IHRvIHRoZSBnZW5lcmF0b3IuIElmIHRoZSBwYXR0ZXJuIGhhcyB0aGUgc2FtZSBza2VsZXRvbiBh
cworICogYW4gZXhpc3RpbmcgcGF0dGVybiwgYW5kIHRoZSBvdmVycmlkZSBwYXJhbWV0ZXIgaXMg
c2V0LCB0aGVuIHRoZSBwcmV2aW91cworICogdmFsdWUgaXMgb3ZlcnJpZGVuLiBPdGhlcndpc2Us
IHRoZSBwcmV2aW91cyB2YWx1ZSBpcyByZXRhaW5lZC4gSW4gZWl0aGVyCisgKiBjYXNlLCB0aGUg
Y29uZmxpY3Rpbmcgc3RhdHVzIGlzIHNldCBhbmQgcHJldmlvdXMgdmFsZSBpcyBzdG9yZWQgaW4g
CisgKiBjb25mbGljdGluZyBwYXR0ZXJuLgorICogPHA+CisgKiBOb3RlIHRoYXQgc2luZ2xlLWZp
ZWxkIHBhdHRlcm5zIChsaWtlICJNTU0iKSBhcmUgYXV0b21hdGljYWxseSBhZGRlZCwgYW5kCisg
KiBkb24ndCBuZWVkIHRvIGJlIGFkZGVkIGV4cGxpY2l0bHkhCisgKgorICogQHBhcmFtIGR0cGcg
ICAgIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBh
dHRlcm4gIGlucHV0IHBhdHRlcm4sIHN1Y2ggYXMgImRkL01NTSIKKyAqIEBwYXJhbSBwYXR0ZXJu
TGVuZ3RoIHRoZSBsZW5ndGggb2YgcGF0dGVybi4KKyAqIEBwYXJhbSBvdmVycmlkZSAgV2hlbiBl
eGlzdGluZyB2YWx1ZXMgYXJlIHRvIGJlIG92ZXJyaWRkZW4gdXNlIHRydWUsIAorICogICAgICAg
ICAgICAgICAgICBvdGhlcndpc2UgdXNlIGZhbHNlLgorICogQHBhcmFtIGNvbmZsaWN0aW5nUGF0
dGVybiAgUHJldmlvdXMgcGF0dGVybiB3aXRoIHRoZSBzYW1lIHNrZWxldG9uLgorICogQHBhcmFt
IGNhcGFjaXR5IHRoZSBjYXBhY2l0eSBvZiBjb25mbGljdGluZ1BhdHRlcm4uCisgKiBAcGFyYW0g
cExlbmd0aCBhIHBvaW50ZXIgdG8gdGhlIGxlbmd0aCBvZiBjb25mbGljdGluZ1BhdHRlcm4uCisg
KiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVz
dCBub3QgaW5kaWNhdGUgYQorICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUg
ZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1cm4gY29uZmxpY3Rpbmcgc3RhdHVzLiBUaGUgdmFsdWUg
Y291bGQgYmUgVURBVFBHX05PX0NPTkZMSUNULCAKKyAqICAgICAgICAgICAgICAgICAgVURBVFBH
X0JBU0VfQ09ORkxJQ1Qgb3IgVURBVFBHX0NPTkZMSUNULgorICogQHN0YWJsZSBJQ1UgMy44Cisg
Ki8KK1VfU1RBQkxFIFVEYXRlVGltZVBhdHRlcm5Db25mbGljdCBVX0VYUE9SVDIKK3VkYXRwZ19h
ZGRQYXR0ZXJuKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAg
ICAgICBjb25zdCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBwYXR0ZXJuTGVuZ3RoLAorICAgICAg
ICAgICAgICAgICAgVUJvb2wgb3ZlcnJpZGUsCisgICAgICAgICAgICAgICAgICBVQ2hhciAqY29u
ZmxpY3RpbmdQYXR0ZXJuLCBpbnQzMl90IGNhcGFjaXR5LCBpbnQzMl90ICpwTGVuZ3RoLAorICAg
ICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIEFuIEFw
cGVuZEl0ZW0gZm9ybWF0IGlzIGEgcGF0dGVybiB1c2VkIHRvIGFwcGVuZCBhIGZpZWxkIGlmIHRo
ZXJlIGlzIG5vCisgICogZ29vZCBtYXRjaC4gRm9yIGV4YW1wbGUsIHN1cHBvc2UgdGhhdCB0aGUg
aW5wdXQgc2tlbGV0b24gaXMgIkd5eXl5TU1NZCIsCisgICogYW5kIHRoZXJlIGlzIG5vIG1hdGNo
aW5nIHBhdHRlcm4gaW50ZXJuYWxseSwgYnV0IHRoZXJlIGlzIGEgcGF0dGVybgorICAqIG1hdGNo
aW5nICJ5eXl5TU1NZCIsIHNheSAiZC1NTS15eXl5Ii4gVGhlbiB0aGF0IHBhdHRlcm4gaXMgdXNl
ZCwgcGx1cyB0aGUKKyAgKiBHLiBUaGUgd2F5IHRoZXNlIHR3byBhcmUgY29uam9pbmVkIGlzIGJ5
IHVzaW5nIHRoZSBBcHBlbmRJdGVtRm9ybWF0IGZvciBHCisgICogKGVyYSkuIFNvIGlmIHRoYXQg
dmFsdWUgaXMsIHNheSAiezB9LCB7MX0iIHRoZW4gdGhlIGZpbmFsIHJlc3VsdGluZworICAqIHBh
dHRlcm4gaXMgImQtTU0teXl5eSwgRyIuCisgICogPHA+CisgICogVGhlcmUgYXJlIGFjdHVhbGx5
IHRocmVlIGF2YWlsYWJsZSB2YXJpYWJsZXM6IHswfSBpcyB0aGUgcGF0dGVybiBzbyBmYXIsCisg
ICogezF9IGlzIHRoZSBlbGVtZW50IHdlIGFyZSBhZGRpbmcsIGFuZCB7Mn0gaXMgdGhlIG5hbWUg
b2YgdGhlIGVsZW1lbnQuCisgICogPHA+CisgICogVGhpcyByZWZsZWN0cyB0aGUgd2F5IHRoYXQg
dGhlIENMRFIgZGF0YSBpcyBvcmdhbml6ZWQuCisgICoKKyAgKiBAcGFyYW0gZHRwZyAgIGEgcG9p
bnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBwYXJhbSBmaWVsZCAgVURh
dGVUaW1lUGF0dGVybkZpZWxkLCBzdWNoIGFzIFVEQVRQR19FUkFfRklFTEQKKyAgKiBAcGFyYW0g
dmFsdWUgIHBhdHRlcm4sIHN1Y2ggYXMgInswfSwgezF9IgorICAqIEBwYXJhbSBsZW5ndGggdGhl
IGxlbmd0aCBvZiB2YWx1ZS4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIHZv
aWQgVV9FWFBPUlQyCit1ZGF0cGdfc2V0QXBwZW5kSXRlbUZvcm1hdChVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0
dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIg
KnZhbHVlLCBpbnQzMl90IGxlbmd0aCk7CisKKy8qKgorICogR2V0dGVyIGNvcnJlc3BvbmRpbmcg
dG8gc2V0QXBwZW5kSXRlbUZvcm1hdC4gVmFsdWVzIGJlbG93IDAgb3IgYXQgb3IKKyAqIGFib3Zl
IFVEQVRQR19GSUVMRF9DT1VOVCBhcmUgaWxsZWdhbCBhcmd1bWVudHMuCisgKgorICogQHBhcmFt
IGR0cGcgICBBIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJh
bSBmaWVsZCAgVURhdGVUaW1lUGF0dGVybkZpZWxkLCBzdWNoIGFzIFVEQVRQR19FUkFfRklFTEQK
KyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwgcmVjZWl2ZSB0aGUgbGVuZ3Ro
IG9mIGFwcGVuZEl0ZW1Gb3JtYXQuCisgKiBAcmV0dXJuIGFwcGVuZEl0ZW1Gb3JtYXQgZm9yIGZp
ZWxkLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9F
WFBPUlQyCit1ZGF0cGdfZ2V0QXBwZW5kSXRlbUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0
dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MzJfdCAqcExl
bmd0aCk7CisKKy8qKgorICAgKiBTZXQgdGhlIG5hbWUgb2YgZmllbGQsIGVnICJlcmEiIGluIEVu
Z2xpc2ggZm9yIEVSQS4gVGhlc2UgYXJlIG9ubHkKKyAgICogdXNlZCBpZiB0aGUgY29ycmVzcG9u
ZGluZyBBcHBlbmRJdGVtRm9ybWF0IGlzIHVzZWQsIGFuZCBpZiBpdCBjb250YWlucyBhCisgICAq
IHsyfSB2YXJpYWJsZS4KKyAgICogPHA+CisgICAqIFRoaXMgcmVmbGVjdHMgdGhlIHdheSB0aGF0
IHRoZSBDTERSIGRhdGEgaXMgb3JnYW5pemVkLgorICAgKgorICAgKiBAcGFyYW0gZHRwZyAgIGEg
cG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAgKiBAcGFyYW0gZmllbGQg
IFVEYXRlVGltZVBhdHRlcm5GaWVsZAorICAgKiBAcGFyYW0gdmFsdWUgIG5hbWUgZm9yIHRoZSBm
aWVsZC4KKyAgICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIHZhbHVlLgorICAgKiBAc3Rh
YmxlIElDVSAzLjgKKyAgICovCitVX1NUQUJMRSB2b2lkIFVfRVhQT1JUMgordWRhdHBnX3NldEFw
cGVuZEl0ZW1OYW1lKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IFVDaGFyICp2YWx1ZSwgaW50MzJfdCBsZW5ndGgpOworCisvKioK
KyAqIEdldHRlciBjb3JyZXNwb25kaW5nIHRvIHNldEFwcGVuZEl0ZW1OYW1lcy4gVmFsdWVzIGJl
bG93IDAgb3IgYXQgb3IgYWJvdmUKKyAqIFVEQVRQR19GSUVMRF9DT1VOVCBhcmUgaWxsZWdhbCBh
cmd1bWVudHMuCisgKgorICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0
dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBmaWVsZCAgVURhdGVUaW1lUGF0dGVybkZpZWxkLCBz
dWNoIGFzIFVEQVRQR19FUkFfRklFTEQKKyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0
IHdpbGwgcmVjZWl2ZSB0aGUgbGVuZ3RoIG9mIHRoZSBuYW1lIGZvciBmaWVsZC4KKyAqIEByZXR1
cm4gbmFtZSBmb3IgZmllbGQKKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBjb25z
dCBVQ2hhciAqIFVfRVhQT1JUMgordWRhdHBnX2dldEFwcGVuZEl0ZW1OYW1lKGNvbnN0IFVEYXRl
VGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgVURh
dGVUaW1lUGF0dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgIGludDMy
X3QgKnBMZW5ndGgpOworCisvKioKKyAqIFRoZSBkYXRlIHRpbWUgZm9ybWF0IGlzIGEgbWVzc2Fn
ZSBmb3JtYXQgcGF0dGVybiB1c2VkIHRvIGNvbXBvc2UgZGF0ZSBhbmQKKyAqIHRpbWUgcGF0dGVy
bnMuIFRoZSBkZWZhdWx0IHZhbHVlIGlzICJ7MH0gezF9Iiwgd2hlcmUgezB9IHdpbGwgYmUgcmVw
bGFjZWQKKyAqIGJ5IHRoZSBkYXRlIHBhdHRlcm4gYW5kIHsxfSB3aWxsIGJlIHJlcGxhY2VkIGJ5
IHRoZSB0aW1lIHBhdHRlcm4uCisgKiA8cD4KKyAqIFRoaXMgaXMgdXNlZCB3aGVuIHRoZSBpbnB1
dCBza2VsZXRvbiBjb250YWlucyBib3RoIGRhdGUgYW5kIHRpbWUgZmllbGRzLAorICogYnV0IHRo
ZXJlIGlzIG5vdCBhIGNsb3NlIG1hdGNoIGFtb25nIHRoZSBhZGRlZCBwYXR0ZXJucy4gRm9yIGV4
YW1wbGUsCisgKiBzdXBwb3NlIHRoYXQgdGhpcyBvYmplY3Qgd2FzIGNyZWF0ZWQgYnkgYWRkaW5n
ICJkZC1NTU0iIGFuZCAiaGg6bW0iLCBhbmQKKyAqIGl0cyBkYXRldGltZUZvcm1hdCBpcyB0aGUg
ZGVmYXVsdCAiezB9IHsxfSIuIFRoZW4gaWYgdGhlIGlucHV0IHNrZWxldG9uCisgKiBpcyAiTU1N
ZGhtbSIsIHRoZXJlIGlzIG5vdCBhbiBleGFjdCBtYXRjaCwgc28gdGhlIGlucHV0IHNrZWxldG9u
IGlzCisgKiBicm9rZW4gdXAgaW50byB0d28gY29tcG9uZW50cyAiTU1NZCIgYW5kICJobW0iLiBU
aGVyZSBhcmUgY2xvc2UgbWF0Y2hlcworICogZm9yIHRob3NlIHR3byBza2VsZXRvbnMsIHNvIHRo
ZSByZXN1bHQgaXMgcHV0IHRvZ2V0aGVyIHdpdGggdGhpcyBwYXR0ZXJuLAorICogcmVzdWx0aW5n
IGluICJkLU1NTSBoOm1tIi4KKyAqCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVU
aW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBkdEZvcm1hdAorICogICAgICAgICAgICBt
ZXNzYWdlIGZvcm1hdCBwYXR0ZXJuLCBoZXJlIHswfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSBk
YXRlCisgKiAgICAgICAgICAgIHBhdHRlcm4gYW5kIHsxfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRo
ZSB0aW1lIHBhdHRlcm4uCisgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGggb2YgZHRGb3JtYXQu
CisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRw
Z19zZXREYXRlVGltZUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBn
LAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpkdEZvcm1hdCwgaW50MzJf
dCBsZW5ndGgpOworCisvKioKKyAqIEdldHRlciBjb3JyZXNwb25kaW5nIHRvIHNldERhdGVUaW1l
Rm9ybWF0LgorICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvci4KKyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwgcmVjZWl2ZSB0
aGUgbGVuZ3RoIG9mIHRoZSBmb3JtYXQKKyAqIEByZXR1cm4gZGF0ZVRpbWVGb3JtYXQuCisgKiBA
c3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgY29uc3QgVUNoYXIgKiBVX0VYUE9SVDIKK3Vk
YXRwZ19nZXREYXRlVGltZUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpk
dHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBMZW5ndGgpOworCisvKioK
KyAqIFRoZSBkZWNpbWFsIHZhbHVlIGlzIHVzZWQgaW4gZm9ybWF0dGluZyBmcmFjdGlvbnMgb2Yg
c2Vjb25kcy4gSWYgdGhlCisgKiBza2VsZXRvbiBjb250YWlucyBmcmFjdGlvbmFsIHNlY29uZHMs
IHRoZW4gdGhpcyBpcyB1c2VkIHdpdGggdGhlCisgKiBmcmFjdGlvbmFsIHNlY29uZHMuIEZvciBl
eGFtcGxlLCBzdXBwb3NlIHRoYXQgdGhlIGlucHV0IHBhdHRlcm4gaXMKKyAqICJoaG1tc3NTU1NT
IiwgYW5kIHRoZSBiZXN0IG1hdGNoaW5nIHBhdHRlcm4gaW50ZXJuYWxseSBpcyAiSDptbTpzcyIs
IGFuZAorICogdGhlIGRlY2ltYWwgc3RyaW5nIGlzICIsIi4gVGhlbiB0aGUgcmVzdWx0aW5nIHBh
dHRlcm4gaXMgbW9kaWZpZWQgdG8gYmUKKyAqICJIOm1tOnNzLFNTU1MiCisgKgorICogQHBhcmFt
IGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0g
ZGVjaW1hbAorICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIGRlY2ltYWwuCisgKiBAc3Rh
YmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19zZXREZWNp
bWFsKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICBj
b25zdCBVQ2hhciAqZGVjaW1hbCwgaW50MzJfdCBsZW5ndGgpOworCisvKioKKyAqIEdldHRlciBj
b3JyZXNwb25kaW5nIHRvIHNldERlY2ltYWwuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRl
ciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBMZW5ndGggQSBwb2lu
dGVyIHRoYXQgd2lsbCByZWNlaXZlIHRoZSBsZW5ndGggb2YgdGhlIGRlY2ltYWwgc3RyaW5nLgor
ICogQHJldHVybiBjb3JyZXNwb25kaW5nIHRvIHRoZSBkZWNpbWFsIHBvaW50LgorICogQHN0YWJs
ZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9FWFBPUlQyCit1ZGF0cGdf
Z2V0RGVjaW1hbChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAg
ICAgICAgICAgICAgaW50MzJfdCAqcExlbmd0aCk7CisKKy8qKgorICogQWRqdXN0cyB0aGUgZmll
bGQgdHlwZXMgKHdpZHRoIGFuZCBzdWJ0eXBlKSBvZiBhIHBhdHRlcm4gdG8gbWF0Y2ggd2hhdCBp
cworICogaW4gYSBza2VsZXRvbi4gVGhhdCBpcywgaWYgeW91IHN1cHBseSBhIHBhdHRlcm4gbGlr
ZSAiZC1NIEg6bSIsIGFuZCBhCisgKiBza2VsZXRvbiBvZiAiTU1NTWRkaGhtbSIsIHRoZW4gdGhl
IGlucHV0IHBhdHRlcm4gaXMgYWRqdXN0ZWQgdG8gYmUKKyAqICJkZC1NTU1NIGhoOm1tIi4gVGhp
cyBpcyB1c2VkIGludGVybmFsbHkgdG8gZ2V0IHRoZSBiZXN0IG1hdGNoIGZvciB0aGUKKyAqIGlu
cHV0IHNrZWxldG9uLCBidXQgY2FuIGFsc28gYmUgdXNlZCBleHRlcm5hbGx5LgorICoKKyAqIE5v
dGUgdGhhdCB0aGlzIGZ1bmN0aW9uIHVzZXMgYSBub24tY29uc3QgVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvcjoKKyAqIEl0IHVzZXMgYSBzdGF0ZWZ1bCBwYXR0ZXJuIHBhcnNlciB3aGljaCBpcyBz
ZXQgdXAgZm9yIGVhY2ggZ2VuZXJhdG9yIG9iamVjdCwKKyAqIHJhdGhlciB0aGFuIGNyZWF0aW5n
IG9uZSBmb3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICogQ29uc2VjdXRpdmUgY2FsbHMgdG8gdGhp
cyBmdW5jdGlvbiBkbyBub3QgYWZmZWN0IGVhY2ggb3RoZXIsCisgKiBidXQgdGhpcyBmdW5jdGlv
biBjYW5ub3QgYmUgdXNlZCBjb25jdXJyZW50bHkgb24gYSBzaW5nbGUgZ2VuZXJhdG9yIG9iamVj
dC4KKyAqCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVy
YXRvci4KKyAqIEBwYXJhbSBwYXR0ZXJuIElucHV0IHBhdHRlcm4KKyAqIEBwYXJhbSBwYXR0ZXJu
TGVuZ3RoIHRoZSBsZW5ndGggb2YgaW5wdXQgcGF0dGVybi4KKyAqIEBwYXJhbSBza2VsZXRvbgor
ICogQHBhcmFtIHNrZWxldG9uTGVuZ3RoIHRoZSBsZW5ndGggb2YgaW5wdXQgc2tlbGV0b24uCisg
KiBAcGFyYW0gZGVzdCAgcGF0dGVybiBhZGp1c3RlZCB0byBtYXRjaCB0aGUgc2tlbGV0b24gZmll
bGRzIHdpZHRocyBhbmQgc3VidHlwZXMuCisgKiBAcGFyYW0gZGVzdENhcGFjaXR5IHRoZSBjYXBh
Y2l0eSBvZiBkZXN0LgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJy
b3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgZmFp
bHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0dXJuIHRoZSBsZW5ndGggb2Yg
ZGVzdC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JU
MgordWRhdHBnX3JlcGxhY2VGaWVsZFR5cGVzKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0
cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMy
X3QgcGF0dGVybkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAq
c2tlbGV0b24sIGludDMyX3Qgc2tlbGV0b25MZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgVUNoYXIgKmRlc3QsIGludDMyX3QgZGVzdENhcGFjaXR5LAorICAgICAgICAgICAgICAgICAg
ICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEFkanVzdHMgdGhlIGZp
ZWxkIHR5cGVzICh3aWR0aCBhbmQgc3VidHlwZSkgb2YgYSBwYXR0ZXJuIHRvIG1hdGNoIHdoYXQg
aXMKKyAqIGluIGEgc2tlbGV0b24uIFRoYXQgaXMsIGlmIHlvdSBzdXBwbHkgYSBwYXR0ZXJuIGxp
a2UgImQtTSBIOm0iLCBhbmQgYQorICogc2tlbGV0b24gb2YgIk1NTU1kZGhobW0iLCB0aGVuIHRo
ZSBpbnB1dCBwYXR0ZXJuIGlzIGFkanVzdGVkIHRvIGJlCisgKiAiZGQtTU1NTSBoaDptbSIuIFRo
aXMgaXMgdXNlZCBpbnRlcm5hbGx5IHRvIGdldCB0aGUgYmVzdCBtYXRjaCBmb3IgdGhlCisgKiBp
bnB1dCBza2VsZXRvbiwgYnV0IGNhbiBhbHNvIGJlIHVzZWQgZXh0ZXJuYWxseS4KKyAqCisgKiBO
b3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBhdHRlcm5H
ZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2ggaXMg
c2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhhbiBjcmVhdGlu
ZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNhbGxzIHRvIHRo
aXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRoaXMgZnVuY3Rp
b24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBvYmpl
Y3QuCisgKgorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IuCisgKiBAcGFyYW0gcGF0dGVybiBJbnB1dCBwYXR0ZXJuCisgKiBAcGFyYW0gcGF0dGVy
bkxlbmd0aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHBhdHRlcm4uCisgKiBAcGFyYW0gc2tlbGV0b24K
KyAqIEBwYXJhbSBza2VsZXRvbkxlbmd0aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHNrZWxldG9uLgor
ICogQHBhcmFtIG9wdGlvbnMKKyAqICAgICAgICAgICAgT3B0aW9ucyBjb250cm9sbGluZyB3aGV0
aGVyIHRoZSBsZW5ndGggb2Ygc3BlY2lmaWVkIGZpZWxkcyBpbiB0aGUKKyAqICAgICAgICAgICAg
cGF0dGVybiBhcmUgYWRqdXN0ZWQgdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNrZWxldG9uICh3aGVu
IHRoaXMKKyAqICAgICAgICAgICAgd291bGQgbm90IGhhcHBlbiBvdGhlcndpc2UpLiBGb3IgZGVm
YXVsdCBiZWhhdmlvciwgdXNlCisgKiAgICAgICAgICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05T
LgorICogQHBhcmFtIGRlc3QgIHBhdHRlcm4gYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHNrZWxldG9u
IGZpZWxkcyB3aWR0aHMgYW5kIHN1YnR5cGVzLgorICogQHBhcmFtIGRlc3RDYXBhY2l0eSB0aGUg
Y2FwYWNpdHkgb2YgZGVzdC4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUg
VUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAgICAgICAgICAg
IGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3Ro
IG9mIGRlc3QuCisgKiBAc3RhYmxlIElDVSA0LjQKKyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VY
UE9SVDIKK3VkYXRwZ19yZXBsYWNlRmllbGRUeXBlc1dpdGhPcHRpb25zKFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBwYXR0ZXJuTGVuZ3RoLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IHNr
ZWxldG9uTGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVU
aW1lUGF0dGVybk1hdGNoT3B0aW9ucyBvcHRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgVUNoYXIgKmRlc3QsIGludDMyX3QgZGVzdENhcGFjaXR5LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8q
KgorICogUmV0dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxsIHRoZSBza2VsZXRvbnMgaW4g
Y2Fub25pY2FsIGZvcm0uCisgKiBDYWxsIHVkYXRwZ19nZXRQYXR0ZXJuRm9yU2tlbGV0b24oKSB0
byBnZXQgdGhlIGNvcnJlc3BvbmRpbmcgcGF0dGVybi4KKyAqIAorICogQHBhcmFtIGR0cGcgYSBw
b2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gcEVycm9yQ29k
ZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQor
ICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbAorICog
QHJldHVybiBhIFVFbnVtZXJhdGlvbiBsaXN0IG9mIGFsbCB0aGUgc2tlbGV0b25zCisgKiAgICAg
ICAgIFRoZSBjYWxsZXIgbXVzdCBjbG9zZSB0aGUgb2JqZWN0LgorICogQHN0YWJsZSBJQ1UgMy44
CisgKi8KK1VfU1RBQkxFIFVFbnVtZXJhdGlvbiAqIFVfRVhQT1JUMgordWRhdHBnX29wZW5Ta2Vs
ZXRvbnMoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywgVUVycm9yQ29kZSAq
cEVycm9yQ29kZSk7CisKKy8qKgorICogUmV0dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxs
IHRoZSBiYXNlIHNrZWxldG9ucyBpbiBjYW5vbmljYWwgZm9ybS4KKyAqCisgKiBAcGFyYW0gZHRw
ZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwRXJy
b3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0
ZSBhCisgKiAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAq
IEByZXR1cm4gYSBVRW51bWVyYXRpb24gbGlzdCBvZiBhbGwgdGhlIGJhc2Ugc2tlbGV0b25zCisg
KiAgICAgICAgICAgICBUaGUgY2FsbGVyIG11c3QgY2xvc2UgdGhlIG9iamVjdC4KKyAqIEBzdGFi
bGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBVRW51bWVyYXRpb24gKiBVX0VYUE9SVDIKK3VkYXRw
Z19vcGVuQmFzZVNrZWxldG9ucyhjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBn
LCBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBHZXQgdGhlIHBhdHRlcm4gY29y
cmVzcG9uZGluZyB0byBhIGdpdmVuIHNrZWxldG9uLgorICogCisgKiBAcGFyYW0gZHRwZyBhIHBv
aW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBza2VsZXRvbiAK
KyAqIEBwYXJhbSBza2VsZXRvbkxlbmd0aCBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2Ygc2tlbGV0
b24uCisgKiBAcGFyYW0gcExlbmd0aCBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2YgcmV0dXJuIHBh
dHRlcm4uCisgKiBAcmV0dXJuIHBhdHRlcm4gY29ycmVzcG9uZGluZyB0byBhIGdpdmVuIHNrZWxl
dG9uLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9F
WFBPUlQyCit1ZGF0cGdfZ2V0UGF0dGVybkZvclNrZWxldG9uKGNvbnN0IFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVD
aGFyICpza2VsZXRvbiwgaW50MzJfdCBza2VsZXRvbkxlbmd0aCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50MzJfdCAqcExlbmd0aCk7CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2ljdS91bmljb2RlL3VudW1zeXMuaCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pY3UvdW5pY29kZS91bnVtc3lzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDI2NDYzZTgxYTVkZmZi
OWYzNzk5Nzc5NWIwNzVkNzUzOGM2NjYyMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9pY3UvdW5pY29kZS91bnVtc3lzLmgKQEAgLTAsMCArMSwxNzQgQEAKKy8qCisq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorKiBDb3B5cmlnaHQgKEMpIDIwMTMsIElu
dGVybmF0aW9uYWwgQnVzaW5lc3MgTWFjaGluZXMKKyogQ29ycG9yYXRpb24gYW5kIG90aGVycy4g
QWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisq
LworCisjaWZuZGVmIFVOVU1TWVNfSAorI2RlZmluZSBVTlVNU1lTX0gKKworI2luY2x1ZGUgInVu
aWNvZGUvdXR5cGVzLmgiCisKKyNpZiAhVUNPTkZJR19OT19GT1JNQVRUSU5HCisKKyNpbmNsdWRl
ICJ1bmljb2RlL3VlbnVtLmgiCisjaW5jbHVkZSAidW5pY29kZS9sb2NhbHBvaW50ZXIuaCIKKwor
LyoqCisgKiBcZmlsZQorICogXGJyaWVmIEMgQVBJOiBVTnVtYmVyaW5nU3lzdGVtLCBpbmZvcm1h
dGlvbiBhYm91dCBudW1iZXJpbmcgc3lzdGVtcworICoKKyAqIERlZmluZXMgbnVtYmVyaW5nIHN5
c3RlbXMuIEEgbnVtYmVyaW5nIHN5c3RlbSBkZXNjcmliZXMgdGhlIHNjaGVtZSBieSB3aGljaCAK
KyAqIG51bWJlcnMgYXJlIHRvIGJlIHByZXNlbnRlZCB0byB0aGUgZW5kIHVzZXIuIEluIGl0cyBz
aW1wbGVzdCBmb3JtLCBhIG51bWJlcmluZworICogc3lzdGVtIGRlc2NyaWJlcyB0aGUgc2V0IG9m
IGRpZ2l0IGNoYXJhY3RlcnMgdGhhdCBhcmUgdG8gYmUgdXNlZCB0byBkaXNwbGF5CisgKiBudW1i
ZXJzLCBzdWNoIGFzIFdlc3Rlcm4gZGlnaXRzLCBUaGFpIGRpZ2l0cywgQXJhYmljLUluZGljIGRp
Z2l0cywgZXRjLiwgaW4gYQorICogcG9zaXRpb25hbCBudW1iZXJpbmcgc3lzdGVtIHdpdGggYSBz
cGVjaWZpZWQgcmFkaXggKHR5cGljYWxseSAxMCkuCisgKiBNb3JlIGNvbXBsaWNhdGVkIG51bWJl
cmluZyBzeXN0ZW1zIGFyZSBhbGdvcml0aG1pYyBpbiBuYXR1cmUsIGFuZCByZXF1aXJlIHVzZQor
ICogb2YgYW4gUkJORiBmb3JtYXR0ZXIgKHJ1bGUgYmFzZWQgbnVtYmVyIGZvcm1hdHRlciksIGlu
IG9yZGVyIHRvIGNhbGN1bGF0ZQorICogdGhlIGNoYXJhY3RlcnMgdG8gYmUgZGlzcGxheWVkIGZv
ciBhIGdpdmVuIG51bWJlci4gRXhhbXBsZXMgb2YgYWxnb3JpdGhtaWMKKyAqIG51bWJlcmluZyBz
eXN0ZW1zIGluY2x1ZGUgUm9tYW4gbnVtZXJhbHMsIENoaW5lc2UgbnVtZXJhbHMsIGFuZCBIZWJy
ZXcgbnVtZXJhbHMuCisgKiBGb3JtYXR0aW5nIHJ1bGVzIGZvciBtYW55IGNvbW1vbmx5IHVzZWQg
bnVtYmVyaW5nIHN5c3RlbXMgYXJlIGluY2x1ZGVkIGluCisgKiB0aGUgSUNVIHBhY2thZ2UsIGJh
c2VkIG9uIHRoZSBudW1iZXJpbmcgc3lzdGVtIHJ1bGVzIGRlZmluZWQgaW4gQ0xEUi4KKyAqIEFs
dGVybmF0ZSBudW1iZXJpbmcgc3lzdGVtcyBjYW4gYmUgc3BlY2lmaWVkIHRvIGEgbG9jYWxlIGJ5
IHVzaW5nIHRoZQorICogbnVtYmVycyBsb2NhbGUga2V5d29yZC4KKyAqLworCisjaWZuZGVmIFVf
SElERV9EUkFGVF9BUEkKKworLyoqCisgKiBPcGFxdWUgVU51bWJlcmluZ1N5c3RlbSBvYmplY3Qg
Zm9yIHVzZSBpbiBDIHByb2dyYW1zLgorICogQGRyYWZ0IElDVSA1MgorICovCitzdHJ1Y3QgVU51
bWJlcmluZ1N5c3RlbTsKK3R5cGVkZWYgc3RydWN0IFVOdW1iZXJpbmdTeXN0ZW0gVU51bWJlcmlu
Z1N5c3RlbTsgIC8qKjwgQyB0eXBlZGVmIGZvciBzdHJ1Y3QgVU51bWJlcmluZ1N5c3RlbS4gQGRy
YWZ0IElDVSA1MiAqLworCisvKioKKyAqIE9wZW5zIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3Qg
dXNpbmcgdGhlIGRlZmF1bHQgbnVtYmVyaW5nIHN5c3RlbSBmb3IgdGhlIHNwZWNpZmllZAorICog
bG9jYWxlLgorICogQHBhcmFtIGxvY2FsZSAgICBUaGUgbG9jYWxlIGZvciB3aGljaCB0aGUgZGVm
YXVsdCBudW1iZXJpbmcgc3lzdGVtIHNob3VsZCBiZSBvcGVuZWQuCisgKiBAcGFyYW0gc3RhdHVz
ICAgIEEgcG9pbnRlciB0byBhIFVFcnJvckNvZGUgdG8gcmVjZWl2ZSBhbnkgZXJyb3JzLiBGb3Ig
ZXhhbXBsZSwgdGhpcworICogICAgICAgICAgICAgICAgICBtYXkgYmUgVV9VTlNVUFBPUlRFRF9F
UlJPUiBmb3IgYSBsb2NhbGUgc3VjaCBhcyAiZW5AbnVtYmVycz14eXoiIHRoYXQKKyAqICAgICAg
ICAgICAgICAgICAgc3BlY2lmaWVzIGEgbnVtYmVyaW5nIHN5c3RlbSB1bmtub3duIHRvIElDVS4K
KyAqIEByZXR1cm4gICAgICAgICAgQSBVTnVtYmVyaW5nU3lzdGVtIGZvciB0aGUgc3BlY2lmaWVk
IGxvY2FsZSwgb3IgTlVMTCBpZiBhbiBlcnJvcgorICogICAgICAgICAgICAgICAgICBvY2N1cnJl
ZC4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVTnVtYmVyaW5nU3lzdGVtICogVV9F
WFBPUlQyCit1bnVtc3lzX29wZW4oY29uc3QgY2hhciAqbG9jYWxlLCBVRXJyb3JDb2RlICpzdGF0
dXMpOworCisvKioKKyAqIE9wZW5zIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgdXNpbmcgdGhl
IG5hbWUgb2Ygb25lIG9mIHRoZSBwcmVkZWZpbmVkIG51bWJlcmluZworICogc3lzdGVtcyBzcGVj
aWZpZWQgYnkgQ0xEUiBhbmQga25vd24gdG8gSUNVLCBzdWNoIGFzICJsYXRuIiwgImFyYWJleHQi
LCBvciAiaGFuaWRlYyI7CisgKiB0aGUgZnVsbCBsaXN0IGlzIHJldHVybmVkIGJ5IHVudW1zeXNf
b3BlbkF2YWlsYWJsZU5hbWVzLiBOb3RlIHRoYXQgc29tZSBvZiB0aGUgbmFtZXMKKyAqIGxpc3Rl
ZCBhdCBodHRwOi8vdW5pY29kZS5vcmcvcmVwb3MvY2xkci90YWdzL2xhdGVzdC9jb21tb24vYmNw
NDcvbnVtYmVyLnhtbCAtIGUuZy4KKyAqIGRlZmF1bHQsIG5hdGl2ZSwgdHJhZGl0aW9uYWwsIGZp
bmFuY2UgLSBkbyBub3QgaWRlbnRpZnkgc3BlY2lmaWMgbnVtYmVyaW5nIHN5c3RlbXMsCisgKiBi
dXQgcmF0aGVyIGtleSB2YWx1ZXMgdGhhdCBtYXkgb25seSBiZSB1c2VkIGFzIHBhcnQgb2YgYSBs
b2NhbGUsIHdoaWNoIGluIHR1cm4KKyAqIGRlZmluZXMgaG93IHRoZXkgYXJlIG1hcHBlZCB0byBh
IHNwZWNpZmljIG51bWJlcmluZyBzeXN0ZW0gc3VjaCBhcyAibGF0biIgb3IgImhhbnQiLgorICoK
KyAqIEBwYXJhbSBuYW1lICAgICAgVGhlIG5hbWUgb2YgdGhlIG51bWJlcmluZyBzeXN0ZW0gZm9y
IHdoaWNoIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QKKyAqICAgICAgICAgICAgICAgICAgc2hv
dWxkIGJlIG9wZW5lZC4KKyAqIEBwYXJhbSBzdGF0dXMgICAgQSBwb2ludGVyIHRvIGEgVUVycm9y
Q29kZSB0byByZWNlaXZlIGFueSBlcnJvcnMuIEZvciBleGFtcGxlLCB0aGlzCisgKiAgICAgICAg
ICAgICAgICAgIG1heSBiZSBVX1VOU1VQUE9SVEVEX0VSUk9SIGZvciBhIG51bWJlcmluZyBzeXN0
ZW0gc3VjaCBhcyAieHl6IiB0aGF0CisgKiAgICAgICAgICAgICAgICAgIGlzIHVua25vd24gdG8g
SUNVLgorICogQHJldHVybiAgICAgICAgICBBIFVOdW1iZXJpbmdTeXN0ZW0gZm9yIHRoZSBzcGVj
aWZpZWQgbmFtZSwgb3IgTlVMTCBpZiBhbiBlcnJvcgorICogICAgICAgICAgICAgICAgICBvY2N1
cnJlZC4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVTnVtYmVyaW5nU3lzdGVtICog
VV9FWFBPUlQyCit1bnVtc3lzX29wZW5CeU5hbWUoY29uc3QgY2hhciAqbmFtZSwgVUVycm9yQ29k
ZSAqc3RhdHVzKTsKKworLyoqCisgKiBDbG9zZSBhIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0LiBP
bmNlIGNsb3NlZCBpdCBtYXkgbm8gbG9uZ2VyIGJlIHVzZWQuCisgKiBAcGFyYW0gdW51bXN5cyAg
IFRoZSBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCB0byBjbG9zZS4KKyAqIEBkcmFmdCBJQ1UgNTIK
KyAqLworVV9EUkFGVCB2b2lkIFVfRVhQT1JUMgordW51bXN5c19jbG9zZShVTnVtYmVyaW5nU3lz
dGVtICp1bnVtc3lzKTsKKworI2lmIFVfU0hPV19DUExVU1BMVVNfQVBJCitVX05BTUVTUEFDRV9C
RUdJTgorCisvKioKKyAqIFxjbGFzcyBMb2NhbFVOdW1iZXJpbmdTeXN0ZW1Qb2ludGVyCisgKiAi
U21hcnQgcG9pbnRlciIgY2xhc3MsIGNsb3NlcyBhIFVOdW1iZXJpbmdTeXN0ZW0gdmlhIHVudW1z
eXNfY2xvc2UoKS4KKyAqIEZvciBtb3N0IG1ldGhvZHMgc2VlIHRoZSBMb2NhbFBvaW50ZXJCYXNl
IGJhc2UgY2xhc3MuCisgKiBAc2VlIExvY2FsUG9pbnRlckJhc2UKKyAqIEBzZWUgTG9jYWxQb2lu
dGVyCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfREVGSU5FX0xPQ0FMX09QRU5fUE9JTlRFUihM
b2NhbFVOdW1iZXJpbmdTeXN0ZW1Qb2ludGVyLCBVTnVtYmVyaW5nU3lzdGVtLCB1bnVtc3lzX2Ns
b3NlKTsKKworVV9OQU1FU1BBQ0VfRU5ECisjZW5kaWYKKworLyoqCisgKiBSZXR1cm5zIGFuIGVu
dW1lcmF0aW9uIG92ZXIgdGhlIG5hbWVzIG9mIGFsbCBvZiB0aGUgcHJlZGVmaW5lZCBudW1iZXJp
bmcgc3lzdGVtcyBrbm93bgorICogdG8gSUNVLgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBvaW50
ZXIgdG8gYSBVRXJyb3JDb2RlIHRvIHJlY2VpdmUgYW55IGVycm9ycy4KKyAqIEByZXR1cm4gICAg
ICAgICAgQSBwb2ludGVyIHRvIGEgVUVudW1lcmF0aW9uIHRoYXQgbXVzdCBiZSBjbG9zZWQgd2l0
aCB1ZW51bV9jbG9zZSgpLAorICogICAgICAgICAgICAgICAgICBvciBOVUxMIGlmIGFuIGVycm9y
IG9jY3VycmVkLgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIFVFbnVtZXJhdGlvbiAq
IFVfRVhQT1JUMgordW51bXN5c19vcGVuQXZhaWxhYmxlTmFtZXMoVUVycm9yQ29kZSAqc3RhdHVz
KTsKKworLyoqCisgKiBSZXR1cm5zIHRoZSBuYW1lIG9mIHRoZSBzcGVjaWZpZWQgVU51bWJlcmlu
Z1N5c3RlbSBvYmplY3QgKGlmIGl0IGlzIG9uZSBvZiB0aGUKKyAqIHByZWRlZmluZWQgbmFtZXMg
a25vd24gdG8gSUNVKS4KKyAqIEBwYXJhbSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0g
d2hvc2UgbmFtZSBpcyBkZXNpcmVkLgorICogQHJldHVybiAgICAgICAgICBBIHBvaW50ZXIgdG8g
dGhlIG5hbWUgb2YgdGhlIHNwZWNpZmllZCBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCwgb3IKKyAq
ICAgICAgICAgICAgICAgICAgTlVMTCBpZiB0aGUgbmFtZSBpcyBub3Qgb25lIG9mIHRoZSBJQ1Ug
cHJlZGVmaW5lZCBuYW1lcy4gVGhlIHBvaW50ZXIKKyAqICAgICAgICAgICAgICAgICAgaXMgb25s
eSB2YWxpZCBmb3IgdGhlIGxpZmV0aW1lIG9mIHRoZSBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdC4K
KyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBjb25zdCBjaGFyICogVV9FWFBPUlQyCit1
bnVtc3lzX2dldE5hbWUoY29uc3QgVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5cyk7CisKKy8qKgor
ICogUmV0dXJucyB3aGV0aGVyIHRoZSBnaXZlbiBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCBpcyBm
b3IgYW4gYWxnb3JpdGhtaWMgKG5vdCBwdXJlbHkKKyAqIHBvc2l0aW9uYWwpIHN5c3RlbS4KKyAq
IEBwYXJhbSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2UgYWxnb3JpdGhtaWMg
c3RhdHVzIGlzIGRlc2lyZWQuCisgKiBAcmV0dXJuICAgICAgICAgIFRSVUUgaWYgdGhlIHNwZWNp
ZmllZCBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCBpcyBmb3IgYW4gYWxnb3JpdGhtaWMKKyAqICAg
ICAgICAgICAgICAgICAgc3lzdGVtLgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIFVC
b29sIFVfRVhQT1JUMgordW51bXN5c19pc0FsZ29yaXRobWljKGNvbnN0IFVOdW1iZXJpbmdTeXN0
ZW0gKnVudW1zeXMpOworCisvKioKKyAqIFJldHVybnMgdGhlIHJhZGl4IG9mIHRoZSBzcGVjaWZp
ZWQgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QuIFNpbXBsZSBwb3NpdGlvbmFsCisgKiBudW1iZXJp
bmcgc3lzdGVtcyB0eXBpY2FsbHkgaGF2ZSByYWRpeCAxMCwgYnV0IG1pZ2h0IGhhdmUgYSByYWRp
eCBvZiBlLmcuIDE2IGZvcgorICogaGV4YWRlY2ltYWwuIFRoZSByYWRpeCBpcyBsZXNzIHdlbGwt
ZGVmaW5lZCBmb3Igbm9uLXBvc2l0aW9uYWwgYWxnb3JpdGhtaWMgc3lzdGVtcy4KKyAqIEBwYXJh
bSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2UgcmFkaXggaXMgZGVzaXJlZC4K
KyAqIEByZXR1cm4gICAgICAgICAgVGhlIHJhZGl4IG9mIHRoZSBzcGVjaWZpZWQgVU51bWJlcmlu
Z1N5c3RlbSBvYmplY3QuCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfRFJBRlQgaW50MzJfdCBV
X0VYUE9SVDIKK3VudW1zeXNfZ2V0UmFkaXgoY29uc3QgVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5
cyk7CisKKy8qKgorICogR2V0IHRoZSBkZXNjcmlwdGlvbiBzdHJpbmcgb2YgdGhlIHNwZWNpZmll
ZCBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdC4gRm9yIHNpbXBsZQorICogcG9zaXRpb25hbCBzeXN0
ZW1zIHRoaXMgaXMgdGhlIG9yZGVyZWQgc3RyaW5nIG9mIGRpZ2l0cyAod2l0aCBsZW5ndGggbWF0
Y2hpbmcKKyAqIHRoZSByYWRpeCksIGUuZy4gIlx1MzAwN1x1NEUwMFx1NEU4Q1x1NEUwOVx1NTZE
Qlx1NEU5NFx1NTE2RFx1NEUwM1x1NTE2Qlx1NEU1RCIKKyAqIGZvciAiaGFuaWRlYyI7IGl0IHdv
dWxkIGJlICIwMTIzNDU2Nzg5QUJDREVGIiBmb3IgaGV4YWRlY2ltYWwuIEZvcgorICogYWxnb3Jp
dGhtaWMgc3lzdGVtcyB0aGlzIGlzIHRoZSBuYW1lIG9mIHRoZSBSQk5GIHJ1bGVzZXQgdXNlZCBm
b3IgZm9ybWF0dGluZywKKyAqIGUuZy4gInpoL1NwZWxsb3V0UnVsZXMvJXNwZWxsb3V0LWNhcmRp
bmFsIiBmb3IgImhhbnMiIG9yICIlZ3JlZWstdXBwZXIiIGZvcgorICogImdyZWsiLgorICogQHBh
cmFtIHVudW1zeXMgICBUaGUgVU51bWJlcmluZ1N5c3RlbSB3aG9zZSBkZXNjcmlwdGlvbiBzdHJp
bmcgaXMgZGVzaXJlZC4KKyAqIEBwYXJhbSByZXN1bHQgICAgQSBwb2ludGVyIHRvIGEgYnVmZmVy
IHRvIHJlY2VpdmUgdGhlIGRlc2NyaXB0aW9uIHN0cmluZy4KKyAqIEBwYXJhbSByZXN1bHRMZW5n
dGggIFRoZSBtYXhpbXVtIHNpemUgb2YgcmVzdWx0LgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBv
aW50ZXIgdG8gYSBVRXJyb3JDb2RlIHRvIHJlY2VpdmUgYW55IGVycm9ycy4KKyAqIEByZXR1cm4g
ICAgICAgICAgVGhlIHRvdGFsIGJ1ZmZlciBzaXplIG5lZWRlZDsgaWYgZ3JlYXRlciB0aGFuIHJl
c3VsdExlbmd0aCwgdGhlCisgKiAgICAgICAgICAgICAgICAgIG91dHB1dCB3YXMgdHJ1bmNhdGVk
LgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIGludDMyX3QgVV9FWFBPUlQyCit1bnVt
c3lzX2dldERlc2NyaXB0aW9uKGNvbnN0IFVOdW1iZXJpbmdTeXN0ZW0gKnVudW1zeXMsIFVDaGFy
ICpyZXN1bHQsCisgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgcmVzdWx0TGVuZ3RoLCBV
RXJyb3JDb2RlICpzdGF0dXMpOworCisjZW5kaWYgIC8qIFVfSElERV9EUkFGVF9BUEkgKi8KKwor
I2VuZGlmIC8qICNpZiAhVUNPTkZJR19OT19GT1JNQVRUSU5HICovCisKKyNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKaW5kZXgg
M2JlODliODM1N2M2YTg3MTcwNDA1MmE4YzEyM2VlZmU2NzE4NWRjZS4uYjUxMDI4ZjQwMTRjNTgz
ZTljYzFiYThhMzg4ZjBiMWZlZDkzMjVhYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCkBAIC04Niw2ICs4Niw3IEBACiAgICAgbWFj
cm8oYnl0ZWNvZGVJbmRleCkgXAogICAgIG1hY3JvKGJ5dGVjb2RlcykgXAogICAgIG1hY3JvKGJ5
dGVjb2Rlc0lEKSBcCisgICAgbWFjcm8oY2FsZW5kYXIpIFwKICAgICBtYWNybyhjYWxsZWUpIFwK
ICAgICBtYWNybyhjYWxsZXIpIFwKICAgICBtYWNybyhjYXNlRmlyc3QpIFwKQEAgLTEwMSw2ICsx
MDIsNyBAQAogICAgIG1hY3JvKGNvbnN0cnVjdG9yKSBcCiAgICAgbWFjcm8oY291bnQpIFwKICAg
ICBtYWNybyhjb3VudGVycykgXAorICAgIG1hY3JvKGRheSkgXAogICAgIG1hY3JvKGRlZmluZVBy
b3BlcnR5KSBcCiAgICAgbWFjcm8oZGVzY3JpcHRpb24pIFwKICAgICBtYWNybyhkZXNjcmlwdGlv
bnMpIFwKQEAgLTEwOSw2ICsxMTEsNyBAQAogICAgIG1hY3JvKGRvbmUpIFwKICAgICBtYWNybyhl
bnRyaWVzKSBcCiAgICAgbWFjcm8oZW51bWVyYWJsZSkgXAorICAgIG1hY3JvKGVyYSkgXAogICAg
IG1hY3JvKGV2YWwpIFwKICAgICBtYWNybyhleGVjKSBcCiAgICAgbWFjcm8oZXhlY3V0aW9uQ291
bnQpIFwKQEAgLTExNiw2ICsxMTksNyBAQAogICAgIG1hY3JvKGZsYWdzKSBcCiAgICAgbWFjcm8o
Zm9jdXMpIFwKICAgICBtYWNybyhmb3JFYWNoKSBcCisgICAgbWFjcm8oZm9ybWF0TWF0Y2hlcikg
XAogICAgIG1hY3JvKGZvcndhcmQpIFwKICAgICBtYWNybyhmcm9tKSBcCiAgICAgbWFjcm8oZnJv
bUNoYXJDb2RlKSBcCkBAIC0xMjYsNiArMTMwLDggQEAKICAgICBtYWNybyhoYXNPd25Qcm9wZXJ0
eSkgXAogICAgIG1hY3JvKGhhc2gpIFwKICAgICBtYWNybyhoZWFkZXIpIFwKKyAgICBtYWNybyho
b3VyKSBcCisgICAgbWFjcm8oaG91cjEyKSBcCiAgICAgbWFjcm8oaHJlZikgXAogICAgIG1hY3Jv
KGlkKSBcCiAgICAgbWFjcm8oaWdub3JlQ2FzZSkgXApAQCAtMTQ5LDEwICsxNTUsMTMgQEAKICAg
ICBtYWNybyhsb2NhbGUpIFwKICAgICBtYWNybyhsb2NhbGVNYXRjaGVyKSBcCiAgICAgbWFjcm8o
bWVzc2FnZSkgXAorICAgIG1hY3JvKG1pbnV0ZSkgXAorICAgIG1hY3JvKG1vbnRoKSBcCiAgICAg
bWFjcm8obXVsdGlsaW5lKSBcCiAgICAgbWFjcm8obmFtZSkgXAogICAgIG1hY3JvKG5leHQpIFwK
ICAgICBtYWNybyhub3cpIFwKKyAgICBtYWNybyhudW1iZXJpbmdTeXN0ZW0pIFwKICAgICBtYWNy
byhudW1JbmxpbmVkQ2FsbHMpIFwKICAgICBtYWNybyhudW1JbmxpbmVkR2V0QnlJZHMpIFwKICAg
ICBtYWNybyhudW1JbmxpbmVkUHV0QnlJZHMpIFwKQEAgLTE3Miw2ICsxODEsNyBAQAogICAgIG1h
Y3JvKHJlbG9hZCkgXAogICAgIG1hY3JvKHJlcGxhY2UpIFwKICAgICBtYWNybyhyZXNvbHZlKSBc
CisgICAgbWFjcm8oc2Vjb25kKSBcCiAgICAgbWFjcm8oc2Vuc2l0aXZpdHkpIFwKICAgICBtYWNy
byhzZXQpIFwKICAgICBtYWNybyhzaG93TW9kYWxEaWFsb2cpIFwKQEAgLTE4NSw2ICsxOTUsOCBA
QAogICAgIG1hY3JvKHRhcmdldCkgXAogICAgIG1hY3JvKHRlc3QpIFwKICAgICBtYWNybyh0aGVu
KSBcCisgICAgbWFjcm8odGltZVpvbmUpIFwKKyAgICBtYWNybyh0aW1lWm9uZU5hbWUpIFwKICAg
ICBtYWNybyh0b0V4cG9uZW50aWFsKSBcCiAgICAgbWFjcm8odG9GaXhlZCkgXAogICAgIG1hY3Jv
KHRvSVNPU3RyaW5nKSBcCkBAIC0xOTgsOCArMjEwLDEwIEBACiAgICAgbWFjcm8odmFsdWVzKSBc
CiAgICAgbWFjcm8od2Via2l0KSBcCiAgICAgbWFjcm8od2Via2l0SW5kZXhlZERCKSBcCisgICAg
bWFjcm8od2Vla2RheSkgXAogICAgIG1hY3JvKHdpbmRvdykgXAotICAgIG1hY3JvKHdyaXRhYmxl
KQorICAgIG1hY3JvKHdyaXRhYmxlKSBcCisgICAgbWFjcm8oeWVhcikKIAogI2RlZmluZSBKU0Nf
Q09NTU9OX0lERU5USUZJRVJTX0VBQ0hfS0VZV09SRChtYWNybykgXAogICAgIG1hY3JvKGJyZWFr
KSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRp
bWVGb3JtYXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1l
Rm9ybWF0LmNwcAppbmRleCBkYzViMmFjZTMyNWIwOGI2ZjJmMzdiMjMxMDc2OTIwZTg4ZmNmMDI4
Li45ZWU5OGYyNGU3YTQ0NGY3NjM0NDczNjY3MGMyZGZlNDdlM2RjN2NiIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5jcHAKQEAg
LTI4LDcgKzI4LDYgQEAKIAogI2lmIEVOQUJMRShJTlRMKQogCi0jaW5jbHVkZSAiRGF0ZUNvbnN0
cnVjdG9yLmgiCiAjaW5jbHVkZSAiRGF0ZUluc3RhbmNlLmgiCiAjaW5jbHVkZSAiRXJyb3IuaCIK
ICNpbmNsdWRlICJJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5oIgpAQCAtMzYsMTMgKzM1
LDI1IEBACiAjaW5jbHVkZSAiSlNCb3VuZEZ1bmN0aW9uLmgiCiAjaW5jbHVkZSAiSlNDSlNWYWx1
ZUlubGluZXMuaCIKICNpbmNsdWRlICJKU0NlbGxJbmxpbmVzLmgiCisjaW5jbHVkZSAiT2JqZWN0
Q29uc3RydWN0b3IuaCIKICNpbmNsdWRlICJTbG90VmlzaXRvcklubGluZXMuaCIKICNpbmNsdWRl
ICJTdHJ1Y3R1cmVJbmxpbmVzLmgiCisjaW5jbHVkZSA8dW5pY29kZS91Y2FsLmg+CisjaW5jbHVk
ZSA8dW5pY29kZS91ZGF0Lmg+CisjaW5jbHVkZSA8dW5pY29kZS91ZGF0cGcuaD4KKyNpbmNsdWRl
IDx1bmljb2RlL3VlbnVtLmg+CiAKIG5hbWVzcGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0luZm8g
SW50bERhdGVUaW1lRm9ybWF0OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAw
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEYXRlVGltZUZvcm1hdCkgfTsKIAorc3RhdGljIGNv
bnN0IGNoYXIqIGNvbnN0IHJlbGV2YW50RXh0ZW5zaW9uS2V5c1syXSA9IHsgImNhIiwgIm51IiB9
Oworc3RhdGljIGNvbnN0IHNpemVfdCBpbmRleE9mRXh0ZW5zaW9uS2V5Q2EgPSAwOworc3RhdGlj
IGNvbnN0IHNpemVfdCBpbmRleE9mRXh0ZW5zaW9uS2V5TnUgPSAxOworCitlbnVtIGNsYXNzIERh
dGVUaW1lT3B0aW9uUmVxdWlyZWQgeyBEYXRlLCBUaW1lLCBBbnkgfTsKK2VudW0gY2xhc3MgRGF0
ZVRpbWVPcHRpb25EZWZhdWx0cyB7IERhdGUsIFRpbWUsIEFsbCB9OworCiBJbnRsRGF0ZVRpbWVG
b3JtYXQqIEludGxEYXRlVGltZUZvcm1hdDo6Y3JlYXRlKFZNJiB2bSwgSW50bERhdGVUaW1lRm9y
bWF0Q29uc3RydWN0b3IqIGNvbnN0cnVjdG9yKQogewogICAgIEludGxEYXRlVGltZUZvcm1hdCog
Zm9ybWF0ID0gbmV3IChOb3ROdWxsLCBhbGxvY2F0ZUNlbGw8SW50bERhdGVUaW1lRm9ybWF0Pih2
bS5oZWFwKSkgSW50bERhdGVUaW1lRm9ybWF0KHZtLCBjb25zdHJ1Y3Rvci0+ZGF0ZVRpbWVGb3Jt
YXRTdHJ1Y3R1cmUoKSk7CkBAIC04Niw0NiArOTcsODA0IEBAIHZvaWQgSW50bERhdGVUaW1lRm9y
bWF0OjpzZXRCb3VuZEZvcm1hdChWTSYgdm0sIEpTQm91bmRGdW5jdGlvbiogZm9ybWF0KQogICAg
IG1fYm91bmRGb3JtYXQuc2V0KHZtLCB0aGlzLCBmb3JtYXQpOwogfQogCi1FbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdEZ1bmNGb3JtYXREYXRlVGltZShFeGVj
U3RhdGUqIHN0YXRlKQorc3RhdGljIFN0cmluZyBkZWZhdWx0VGltZVpvbmUoKQoreworICAgIC8v
IDYuNC4zIERlZmF1bHRUaW1lWm9uZSAoKSAoRUNNQS00MDIgMi4wKQorICAgIC8vIFRoZSBEZWZh
dWx0VGltZVpvbmUgYWJzdHJhY3Qgb3BlcmF0aW9uIHJldHVybnMgYSBTdHJpbmcgdmFsdWUgcmVw
cmVzZW50aW5nIHRoZSB2YWxpZCAoNi40LjEpIGFuZCBjYW5vbmljYWxpemVkICg2LjQuMikgdGlt
ZSB6b25lIG5hbWUgZm9yIHRoZSBob3N0IGVudmlyb25tZW504oCZcyBjdXJyZW50IHRpbWUgem9u
ZS4KKworICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgIFZlY3RvcjxV
Q2hhciwgMzI+IGJ1ZmZlcigzMik7CisgICAgYXV0byBidWZmZXJMZW5ndGggPSB1Y2FsX2dldERl
ZmF1bHRUaW1lWm9uZShidWZmZXIuZGF0YSgpLCBidWZmZXIuc2l6ZSgpLCAmc3RhdHVzKTsKKyAg
ICBpZiAoc3RhdHVzID09IFVfQlVGRkVSX09WRVJGTE9XX0VSUk9SKSB7CisgICAgICAgIHN0YXR1
cyA9IFVfWkVST19FUlJPUjsKKyAgICAgICAgYnVmZmVyID0gVmVjdG9yPFVDaGFyLCAzMj4oYnVm
ZmVyTGVuZ3RoKTsKKyAgICAgICAgdWNhbF9nZXREZWZhdWx0VGltZVpvbmUoYnVmZmVyLmRhdGEo
KSwgYnVmZmVyTGVuZ3RoLCAmc3RhdHVzKTsKKyAgICB9CisgICAgaWYgKFVfU1VDQ0VTUyhzdGF0
dXMpKQorICAgICAgICByZXR1cm4gU3RyaW5nKGJ1ZmZlci5kYXRhKCksIGJ1ZmZlckxlbmd0aCk7
CisKKyAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJVVEMiKTsKK30KKworc3RhdGljIFN0cmluZyBj
YW5vbmljYWxpemVUaW1lWm9uZU5hbWUoY29uc3QgU3RyaW5nJiB0aW1lWm9uZU5hbWUpCit7Cisg
ICAgLy8gNi40LjEgSXNWYWxpZFRpbWVab25lTmFtZSAodGltZVpvbmUpCisgICAgLy8gVGhlIGFi
c3RyYWN0IG9wZXJhdGlvbiByZXR1cm5zIHRydWUgaWYgdGltZVpvbmUsIGNvbnZlcnRlZCB0byB1
cHBlciBjYXNlIGFzIGRlc2NyaWJlZCBpbiA2LjEsIGlzIGVxdWFsIHRvIG9uZSBvZiB0aGUgWm9u
ZSBvciBMaW5rIG5hbWVzIG9mIHRoZSBJQU5BIFRpbWUgWm9uZSBEYXRhYmFzZSwgY29udmVydGVk
IHRvIHVwcGVyIGNhc2UgYXMgZGVzY3JpYmVkIGluIDYuMS4gSXQgcmV0dXJucyBmYWxzZSBvdGhl
cndpc2UuCisgICAgVUVycm9yQ29kZSBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgVUVudW1l
cmF0aW9uKiB0aW1lWm9uZXMgPSB1Y2FsX29wZW5UaW1lWm9uZXMoJnN0YXR1cyk7CisgICAgQVNT
RVJUKFVfU1VDQ0VTUyhzdGF0dXMpKTsKKworICAgIFN0cmluZyBjYW5vbmljYWw7CisgICAgd2hp
bGUgKGNhbm9uaWNhbC5pc051bGwoKSkgeworICAgICAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7
CisgICAgICAgIGludDMyX3QgaWFuYVRpbWVab25lTGVuZ3RoOworICAgICAgICAvLyBUaW1lIHpv
bmUgbmFtZXMgYXJlIHJlc3ByZXNlbnRlZCBhcyBVQ2hhcltdIGluIGFsbCByZWxhdGVkIElDVSBh
cGlzLgorICAgICAgICBjb25zdCBVQ2hhciogaWFuYVRpbWVab25lID0gdWVudW1fdW5leHQodGlt
ZVpvbmVzLCAmaWFuYVRpbWVab25lTGVuZ3RoLCAmc3RhdHVzKTsKKyAgICAgICAgQVNTRVJUKFVf
U1VDQ0VTUyhzdGF0dXMpKTsKKworICAgICAgICAvLyBFbmQgb2YgZW51bWVyYXRpb24uCisgICAg
ICAgIGlmICghaWFuYVRpbWVab25lKQorICAgICAgICAgICAgYnJlYWs7CisKKyAgICAgICAgU3Ry
aW5nVmlldyBpYW5hVGltZVpvbmVWaWV3KGlhbmFUaW1lWm9uZSwgaWFuYVRpbWVab25lTGVuZ3Ro
KTsKKyAgICAgICAgaWYgKCFlcXVhbElnbm9yaW5nQVNDSUlDYXNlKHRpbWVab25lTmFtZSwgaWFu
YVRpbWVab25lVmlldykpCisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICAvLyBGb3Vu
ZCBhIG1hdGNoLCBub3cgY2Fub25pY2FsaXplLgorICAgICAgICAvLyA2LjQuMiBDYW5vbmljYWxp
emVUaW1lWm9uZU5hbWUgKHRpbWVab25lKSAoRUNNQS00MDIgMi4wKQorICAgICAgICAvLyAxLiBM
ZXQgaWFuYVRpbWVab25lIGJlIHRoZSBab25lIG9yIExpbmsgbmFtZSBvZiB0aGUgSUFOQSBUaW1l
IFpvbmUgRGF0YWJhc2Ugc3VjaCB0aGF0IHRpbWVab25lLCBjb252ZXJ0ZWQgdG8gdXBwZXIgY2Fz
ZSBhcyBkZXNjcmliZWQgaW4gNi4xLCBpcyBlcXVhbCB0byBpYW5hVGltZVpvbmUsIGNvbnZlcnRl
ZCB0byB1cHBlciBjYXNlIGFzIGRlc2NyaWJlZCBpbiA2LjEuCisgICAgICAgIC8vIDIuIElmIGlh
bmFUaW1lWm9uZSBpcyBhIExpbmsgbmFtZSwgdGhlbiBsZXQgaWFuYVRpbWVab25lIGJlIHRoZSBj
b3JyZXNwb25kaW5nIFpvbmUgbmFtZSBhcyBzcGVjaWZpZWQgaW4gdGhlIOKAnGJhY2t3YXJk4oCd
IGZpbGUgb2YgdGhlIElBTkEgVGltZSBab25lIERhdGFiYXNlLgorCisgICAgICAgIFZlY3RvcjxV
Q2hhciwgMzI+IGJ1ZmZlcihpYW5hVGltZVpvbmVMZW5ndGgpOworICAgICAgICBVQm9vbCBpc1N5
c3RlbUlEID0gZmFsc2U7CisgICAgICAgIHN0YXR1cyA9IFVfWkVST19FUlJPUjsKKyAgICAgICAg
YXV0byBjYW5vbmljYWxMZW5ndGggPSB1Y2FsX2dldENhbm9uaWNhbFRpbWVab25lSUQoaWFuYVRp
bWVab25lLCBpYW5hVGltZVpvbmVMZW5ndGgsIGJ1ZmZlci5kYXRhKCksIGlhbmFUaW1lWm9uZUxl
bmd0aCwgJmlzU3lzdGVtSUQsICZzdGF0dXMpOworICAgICAgICBpZiAoc3RhdHVzID09IFVfQlVG
RkVSX09WRVJGTE9XX0VSUk9SKSB7CisgICAgICAgICAgICBidWZmZXIgPSBWZWN0b3I8VUNoYXIs
IDMyPihjYW5vbmljYWxMZW5ndGgpOworICAgICAgICAgICAgaXNTeXN0ZW1JRCA9IGZhbHNlOwor
ICAgICAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICAgICAgdWNhbF9nZXRD
YW5vbmljYWxUaW1lWm9uZUlEKGlhbmFUaW1lWm9uZSwgaWFuYVRpbWVab25lTGVuZ3RoLCBidWZm
ZXIuZGF0YSgpLCBjYW5vbmljYWxMZW5ndGgsICZpc1N5c3RlbUlELCAmc3RhdHVzKTsKKyAgICAg
ICAgfQorICAgICAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworICAgICAgICBjYW5vbmlj
YWwgPSBTdHJpbmcoYnVmZmVyLmRhdGEoKSwgY2Fub25pY2FsTGVuZ3RoKTsKKyAgICB9CisgICAg
dWVudW1fY2xvc2UodGltZVpvbmVzKTsKKworICAgIC8vIDMuIElmIGlhbmFUaW1lWm9uZSBpcyAi
RXRjL1VUQyIgb3IgIkV0Yy9HTVQiLCB0aGVuIHJldHVybiAiVVRDIi4KKyAgICBpZiAoY2Fub25p
Y2FsID09ICJFdGMvVVRDIiB8fCBjYW5vbmljYWwgPT0gIkV0Yy9HTVQiKQorICAgICAgICBjYW5v
bmljYWwgPSBBU0NJSUxpdGVyYWwoIlVUQyIpOworCisgICAgLy8gNC4gUmV0dXJuIGlhbmFUaW1l
Wm9uZS4KKyAgICByZXR1cm4gY2Fub25pY2FsOworfQorCitzdGF0aWMgVmVjdG9yPFN0cmluZz4g
bG9jYWxlRGF0YShjb25zdCBTdHJpbmcmIGxvY2FsZSwgc2l6ZV90IGtleUluZGV4KQoreworICAg
IFZlY3RvcjxTdHJpbmc+IGtleUxvY2FsZURhdGE7CisgICAgc3dpdGNoIChrZXlJbmRleCkgewor
ICAgIGNhc2UgaW5kZXhPZkV4dGVuc2lvbktleUNhOiB7CisgICAgICAgIFVFcnJvckNvZGUgc3Rh
dHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICBVRW51bWVyYXRpb24qIGNhbGVuZGFycyA9IHVj
YWxfZ2V0S2V5d29yZFZhbHVlc0ZvckxvY2FsZSgiY2FsZW5kYXIiLCBsb2NhbGUudXRmOCgpLmRh
dGEoKSwgZmFsc2UsICZzdGF0dXMpOworICAgICAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykp
OworCisgICAgICAgIHN0YXR1cyA9IFVfWkVST19FUlJPUjsKKyAgICAgICAgaW50MzJfdCBuYW1l
TGVuZ3RoOworICAgICAgICB3aGlsZSAoY29uc3QgY2hhciogYXZhaWxhYmxlTmFtZSA9IHVlbnVt
X25leHQoY2FsZW5kYXJzLCAmbmFtZUxlbmd0aCwgJnN0YXR1cykpIHsKKyAgICAgICAgICAgIEFT
U0VSVChVX1NVQ0NFU1Moc3RhdHVzKSk7CisgICAgICAgICAgICBzdGF0dXMgPSBVX1pFUk9fRVJS
T1I7CisgICAgICAgICAgICBTdHJpbmcgY2FsZW5kYXIgPSBTdHJpbmcoYXZhaWxhYmxlTmFtZSwg
bmFtZUxlbmd0aCk7CisgICAgICAgICAgICBrZXlMb2NhbGVEYXRhLmFwcGVuZChjYWxlbmRhcik7
CisgICAgICAgICAgICAvLyBFbnN1cmUgYWxpYXNlcyB1c2VkIGluIGxhbmd1YWdlIHRhZyBhcmUg
YWxsb3dlZC4KKyAgICAgICAgICAgIGlmIChjYWxlbmRhciA9PSAiZ3JlZ29yaWFuIikKKyAgICAg
ICAgICAgICAgICBrZXlMb2NhbGVEYXRhLmFwcGVuZChBU0NJSUxpdGVyYWwoImdyZWdvcnkiKSk7
CisgICAgICAgICAgICBlbHNlIGlmIChjYWxlbmRhciA9PSAiaXNsYW1pYy1jaXZpbCIpCisgICAg
ICAgICAgICAgICAga2V5TG9jYWxlRGF0YS5hcHBlbmQoQVNDSUlMaXRlcmFsKCJpc2xhbWljYyIp
KTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNhbGVuZGFyID09ICJldGhpb3BpYy1hbWV0ZS1hbGVt
IikKKyAgICAgICAgICAgICAgICBrZXlMb2NhbGVEYXRhLmFwcGVuZChBU0NJSUxpdGVyYWwoImV0
aGlvYWEiKSk7CisgICAgICAgIH0KKyAgICAgICAgdWVudW1fY2xvc2UoY2FsZW5kYXJzKTsKKyAg
ICAgICAgYnJlYWs7CisgICAgfQorICAgIGNhc2UgaW5kZXhPZkV4dGVuc2lvbktleU51OgorICAg
ICAgICBrZXlMb2NhbGVEYXRhID0gZ2V0TnVtYmVyaW5nU3lzdGVtc0ZvckxvY2FsZShsb2NhbGUp
OworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgICBBU1NFUlRfTk9UX1JFQUNI
RUQoKTsKKyAgICB9CisgICAgcmV0dXJuIGtleUxvY2FsZURhdGE7Cit9CisKK3N0YXRpYyBKU09i
amVjdCogdG9EYXRlVGltZU9wdGlvbnMoRXhlY1N0YXRlJiBzdGF0ZSwgSlNWYWx1ZSBvcmlnaW5h
bE9wdGlvbnMsIGNvbnN0IERhdGVUaW1lT3B0aW9uUmVxdWlyZWQgcmVxdWlyZWQsIGNvbnN0IERh
dGVUaW1lT3B0aW9uRGVmYXVsdHMgZGVmYXVsdHMpCit7CisgICAgLy8gMTIuMS4xIFRvRGF0ZVRp
bWVPcHRpb25zIGFic3RyYWN0IG9wZXJhdGlvbiAoRUNNQS00MDIgMi4wKQorICAgIFZNJiB2bSA9
IHN0YXRlLnZtKCk7CisKKyAgICAvLyAxLiBJZiBvcHRpb25zIGlzIHVuZGVmaW5lZCwgdGhlbiBs
ZXQgb3B0aW9ucyBiZSBudWxsLCBlbHNlIGxldCBvcHRpb25zIGJlIFRvT2JqZWN0KG9wdGlvbnMp
LgorICAgIC8vIDIuIFJldHVybklmQWJydXB0KG9wdGlvbnMpLgorICAgIC8vIDMuIExldCBvcHRp
b25zIGJlIE9iamVjdENyZWF0ZShvcHRpb25zKS4KKyAgICBKU09iamVjdCogb3B0aW9uczsKKyAg
ICBpZiAob3JpZ2luYWxPcHRpb25zLmlzVW5kZWZpbmVkT3JOdWxsKCkpCisgICAgICAgIG9wdGlv
bnMgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdCgmc3RhdGUsIHN0YXRlLmxleGljYWxHbG9iYWxPYmpl
Y3QoKS0+bnVsbFByb3RvdHlwZU9iamVjdFN0cnVjdHVyZSgpKTsKKyAgICBlbHNlIHsKKyAgICAg
ICAgSlNPYmplY3QqIG9yaWdpbmFsVG9PYmplY3QgPSBvcmlnaW5hbE9wdGlvbnMudG9PYmplY3Qo
JnN0YXRlKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CisgICAgICAgIG9wdGlvbnMgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdCgm
c3RhdGUsIG9yaWdpbmFsVG9PYmplY3QpOworICAgIH0KKworICAgIC8vIDQuIExldCBuZWVkRGVm
YXVsdHMgYmUgdHJ1ZS4KKyAgICBib29sIG5lZWREZWZhdWx0cyA9IHRydWU7CisKKyAgICAvLyA1
LiBJZiByZXF1aXJlZCBpcyAiZGF0ZSIgb3IgImFueSIsCisgICAgaWYgKHJlcXVpcmVkID09IERh
dGVUaW1lT3B0aW9uUmVxdWlyZWQ6OkRhdGUgfHwgcmVxdWlyZWQgPT0gRGF0ZVRpbWVPcHRpb25S
ZXF1aXJlZDo6QW55KSB7CisgICAgICAgIC8vIGEuIEZvciBlYWNoIG9mIHRoZSBwcm9wZXJ0eSBu
YW1lcyAid2Vla2RheSIsICJ5ZWFyIiwgIm1vbnRoIiwgImRheSI6CisgICAgICAgIC8vIGkuIExl
dCBwcm9wIGJlIHRoZSBwcm9wZXJ0eSBuYW1lLgorICAgICAgICAvLyBpaS4gTGV0IHZhbHVlIGJl
IEdldChvcHRpb25zLCBwcm9wKS4KKyAgICAgICAgLy8gaWlpLiBSZXR1cm5JZkFicnVwdCh2YWx1
ZSkuCisgICAgICAgIC8vIGl2LiBJZiB2YWx1ZSBpcyBub3QgdW5kZWZpbmVkLCB0aGVuIGxldCBu
ZWVkRGVmYXVsdHMgYmUgZmFsc2UuCisgICAgICAgIEpTVmFsdWUgd2Vla2RheSA9IG9wdGlvbnMt
PmdldCgmc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPndlZWtkYXkpOworICAgICAgICBpZiAoc3Rh
dGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAg
aWYgKCF3ZWVrZGF5LmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBm
YWxzZTsKKworICAgICAgICBKU1ZhbHVlIHllYXIgPSBvcHRpb25zLT5nZXQoJnN0YXRlLCB2bS5w
cm9wZXJ0eU5hbWVzLT55ZWFyKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICgheWVhci5pc1VuZGVmaW5l
ZCgpKQorICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisKKyAgICAgICAgSlNWYWx1
ZSBtb250aCA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPm1vbnRoKTsK
KyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CisgICAgICAgIGlmICghbW9udGguaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5l
ZWREZWZhdWx0cyA9IGZhbHNlOworCisgICAgICAgIEpTVmFsdWUgZGF5ID0gb3B0aW9ucy0+Z2V0
KCZzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+ZGF5KTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICghZGF5
LmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKyAgICB9
CisKKyAgICAvLyA2LiBJZiByZXF1aXJlZCBpcyAidGltZSIgb3IgImFueSIsCisgICAgaWYgKHJl
cXVpcmVkID09IERhdGVUaW1lT3B0aW9uUmVxdWlyZWQ6OlRpbWUgfHwgcmVxdWlyZWQgPT0gRGF0
ZVRpbWVPcHRpb25SZXF1aXJlZDo6QW55KSB7CisgICAgICAgIC8vIGEuIEZvciBlYWNoIG9mIHRo
ZSBwcm9wZXJ0eSBuYW1lcyAiaG91ciIsICJtaW51dGUiLCAic2Vjb25kIjoKKyAgICAgICAgLy8g
aS4gTGV0IHByb3AgYmUgdGhlIHByb3BlcnR5IG5hbWUuCisgICAgICAgIC8vIGlpLiBMZXQgdmFs
dWUgYmUgR2V0KG9wdGlvbnMsIHByb3ApLgorICAgICAgICAvLyBpaWkuIFJldHVybklmQWJydXB0
KHZhbHVlKS4KKyAgICAgICAgLy8gaXYuIElmIHZhbHVlIGlzIG5vdCB1bmRlZmluZWQsIHRoZW4g
bGV0IG5lZWREZWZhdWx0cyBiZSBmYWxzZS4KKyAgICAgICAgSlNWYWx1ZSBob3VyID0gb3B0aW9u
cy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+aG91cik7CisgICAgICAgIGlmIChzdGF0
ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBp
ZiAoIWhvdXIuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZhdWx0cyA9IGZhbHNl
OworCisgICAgICAgIEpTVmFsdWUgbWludXRlID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJv
cGVydHlOYW1lcy0+bWludXRlKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICghbWludXRlLmlzVW5kZWZp
bmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKworICAgICAgICBKU1Zh
bHVlIHNlY29uZCA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPnNlY29u
ZCk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVy
biBudWxscHRyOworICAgICAgICBpZiAoIXNlY29uZC5pc1VuZGVmaW5lZCgpKQorICAgICAgICAg
ICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisgICAgfQorCisgICAgLy8gNy4gSWYgbmVlZERlZmF1
bHRzIGlzIHRydWUgYW5kIGRlZmF1bHRzIGlzIGVpdGhlciAiZGF0ZSIgb3IgImFsbCIsIHRoZW4K
KyAgICBpZiAobmVlZERlZmF1bHRzICYmIChkZWZhdWx0cyA9PSBEYXRlVGltZU9wdGlvbkRlZmF1
bHRzOjpEYXRlIHx8IGRlZmF1bHRzID09IERhdGVUaW1lT3B0aW9uRGVmYXVsdHM6OkFsbCkpIHsK
KyAgICAgICAgLy8gYS4gRm9yIGVhY2ggb2YgdGhlIHByb3BlcnR5IG5hbWVzICJ5ZWFyIiwgIm1v
bnRoIiwgImRheSI6CisgICAgICAgIC8vIGkuIExldCBzdGF0dXMgYmUgQ3JlYXRlRGF0ZVByb3Bl
cnR5T3JUaHJvdyhvcHRpb25zLCBwcm9wLCAibnVtZXJpYyIpLgorICAgICAgICAvLyBpaS4gUmV0
dXJuSWZBYnJ1cHQoc3RhdHVzKS4KKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5w
cm9wZXJ0eU5hbWVzLT55ZWFyLCBqc1N0cmluZygmc3RhdGUsICJudW1lcmljIikpOworICAgICAg
ICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsK
KworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPm1vbnRo
LCBqc1N0cmluZygmc3RhdGUsICJudW1lcmljIikpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgICAgICBvcHRpb25z
LT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmRheSwganNTdHJpbmcoJnN0YXRlLCAi
bnVtZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQorCisgICAgLy8gOC4gSWYgbmVlZERlZmF1bHRzIGlz
IHRydWUgYW5kIGRlZmF1bHRzIGlzIGVpdGhlciAidGltZSIgb3IgImFsbCIsIHRoZW4KKyAgICBp
ZiAobmVlZERlZmF1bHRzICYmIChkZWZhdWx0cyA9PSBEYXRlVGltZU9wdGlvbkRlZmF1bHRzOjpU
aW1lIHx8IGRlZmF1bHRzID09IERhdGVUaW1lT3B0aW9uRGVmYXVsdHM6OkFsbCkpIHsKKyAgICAg
ICAgLy8gYS4gRm9yIGVhY2ggb2YgdGhlIHByb3BlcnR5IG5hbWVzICJob3VyIiwgIm1pbnV0ZSIs
ICJzZWNvbmQiOgorICAgICAgICAvLyBpLiBMZXQgc3RhdHVzIGJlIENyZWF0ZURhdGVQcm9wZXJ0
eU9yVGhyb3cob3B0aW9ucywgcHJvcCwgIm51bWVyaWMiKS4KKyAgICAgICAgLy8gaWkuIFJldHVy
bklmQWJydXB0KHN0YXR1cykuCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJv
cGVydHlOYW1lcy0+aG91ciwganNTdHJpbmcoJnN0YXRlLCAibnVtZXJpYyIpKTsKKyAgICAgICAg
aWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisK
KyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5taW51dGUs
IGpzU3RyaW5nKCZzdGF0ZSwgIm51bWVyaWMiKSk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNl
cHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgICAgIG9wdGlvbnMt
PnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+c2Vjb25kLCBqc1N0cmluZygmc3RhdGUs
ICJudW1lcmljIikpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKKyAgICAvLyA5LiBSZXR1cm4gb3B0aW9ucy4K
KyAgICByZXR1cm4gb3B0aW9uczsKK30KKwordm9pZCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEZv
cm1hdHNGcm9tUGF0dGVybihjb25zdCBTdHJpbmdWaWV3JiBwYXR0ZXJuKQoreworICAgIC8vIEdl
dCBhbGwgc3ltYm9scyBmcm9tIHRoZSBwYXR0ZXJuLCBhbmQgc2V0IGZvcm1hdCBmaWVsZHMgYWNj
b3JkaW5nbHkuCisgICAgLy8gaHR0cDovL3VuaWNvZGUub3JnL3JlcG9ydHMvdHIzNS90cjM1LWRh
dGVzLmh0bWwjRGF0ZV9GaWVsZF9TeW1ib2xfVGFibGUKKyAgICB1bnNpZ25lZCBsZW5ndGggPSBw
YXR0ZXJuLmxlbmd0aCgpOworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBsZW5ndGg7ICsr
aSkgeworICAgICAgICBVQ2hhciBjdXJyZW50Q2hhcmFjdGVyID0gcGF0dGVybltpXTsKKyAgICAg
ICAgaWYgKCFpc0FTQ0lJQWxwaGEoY3VycmVudENoYXJhY3RlcikpCisgICAgICAgICAgICBjb250
aW51ZTsKKworICAgICAgICB1bnNpZ25lZCBjb3VudCA9IDE7CisgICAgICAgIHdoaWxlIChpICsg
MSA8IGxlbmd0aCAmJiBwYXR0ZXJuW2kgKyAxXSA9PSBjdXJyZW50Q2hhcmFjdGVyKSB7CisgICAg
ICAgICAgICArK2NvdW50OworICAgICAgICAgICAgKytpOworICAgICAgICB9CisKKyAgICAgICAg
aWYgKGN1cnJlbnRDaGFyYWN0ZXIgPT0gJ2gnIHx8IGN1cnJlbnRDaGFyYWN0ZXIgPT0gJ0snKQor
ICAgICAgICAgICAgbV9ob3VyMTIgPSB0cnVlOworICAgICAgICBlbHNlIGlmIChjdXJyZW50Q2hh
cmFjdGVyID09ICdIJyB8fCBjdXJyZW50Q2hhcmFjdGVyID09ICdrJykKKyAgICAgICAgICAgIG1f
aG91cjEyID0gZmFsc2U7CisKKyAgICAgICAgc3dpdGNoIChjdXJyZW50Q2hhcmFjdGVyKSB7Cisg
ICAgICAgIGNhc2UgJ0cnOgorICAgICAgICAgICAgaWYgKGNvdW50IDw9IDMpCisgICAgICAgICAg
ICAgICAgbV9lcmEgPSBFcmE6OlNob3J0OworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0g
NCkKKyAgICAgICAgICAgICAgICBtX2VyYSA9IEVyYTo6TG9uZzsKKyAgICAgICAgICAgIGVsc2Ug
aWYgKGNvdW50ID09IDUpCisgICAgICAgICAgICAgICAgbV9lcmEgPSBFcmE6Ok5hcnJvdzsKKyAg
ICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICd5JzoKKyAgICAgICAgICAgIGlmIChjb3Vu
dCA9PSAxKQorICAgICAgICAgICAgICAgIG1feWVhciA9IFllYXI6Ok51bWVyaWM7CisgICAgICAg
ICAgICBlbHNlIGlmIChjb3VudCA9PSAyKQorICAgICAgICAgICAgICAgIG1feWVhciA9IFllYXI6
OlR3b0RpZ2l0OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ00nOgorICAgICAg
ICBjYXNlICdMJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAg
IG1fbW9udGggPSBNb250aDo6TnVtZXJpYzsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09
IDIpCisgICAgICAgICAgICAgICAgbV9tb250aCA9IE1vbnRoOjpUd29EaWdpdDsKKyAgICAgICAg
ICAgIGVsc2UgaWYgKGNvdW50ID09IDMpCisgICAgICAgICAgICAgICAgbV9tb250aCA9IE1vbnRo
OjpTaG9ydDsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDQpCisgICAgICAgICAgICAg
ICAgbV9tb250aCA9IE1vbnRoOjpMb25nOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0g
NSkKKyAgICAgICAgICAgICAgICBtX21vbnRoID0gTW9udGg6Ok5hcnJvdzsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlICdFJzoKKyAgICAgICAgY2FzZSAnZSc6CisgICAgICAgIGNh
c2UgJ2MnOgorICAgICAgICAgICAgaWYgKGNvdW50IDw9IDMpCisgICAgICAgICAgICAgICAgbV93
ZWVrZGF5ID0gV2Vla2RheTo6U2hvcnQ7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA0
KQorICAgICAgICAgICAgICAgIG1fd2Vla2RheSA9IFdlZWtkYXk6Okxvbmc7CisgICAgICAgICAg
ICBlbHNlIGlmIChjb3VudCA9PSA1KQorICAgICAgICAgICAgICAgIG1fd2Vla2RheSA9IFdlZWtk
YXk6Ok5hcnJvdzsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdkJzoKKyAgICAg
ICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAgIG1fZGF5ID0gRGF5OjpOdW1l
cmljOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAgICAgICAgICAgICBt
X2RheSA9IERheTo6VHdvRGlnaXQ7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAn
aCc6CisgICAgICAgIGNhc2UgJ0gnOgorICAgICAgICBjYXNlICdrJzoKKyAgICAgICAgY2FzZSAn
Syc6CisgICAgICAgICAgICBpZiAoY291bnQgPT0gMSkKKyAgICAgICAgICAgICAgICBtX2hvdXIg
PSBIb3VyOjpOdW1lcmljOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAg
ICAgICAgICAgICBtX2hvdXIgPSBIb3VyOjpUd29EaWdpdDsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlICdtJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAg
ICAgICAgIG1fbWludXRlID0gTWludXRlOjpOdW1lcmljOworICAgICAgICAgICAgZWxzZSBpZiAo
Y291bnQgPT0gMikKKyAgICAgICAgICAgICAgICBtX21pbnV0ZSA9IE1pbnV0ZTo6VHdvRGlnaXQ7
CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAncyc6CisgICAgICAgICAgICBpZiAo
Y291bnQgPT0gMSkKKyAgICAgICAgICAgICAgICBtX3NlY29uZCA9IFNlY29uZDo6TnVtZXJpYzsK
KyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAgICAgICAgICAgICAgbV9zZWNv
bmQgPSBTZWNvbmQ6OlR3b0RpZ2l0OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ug
J3onOgorICAgICAgICBjYXNlICd2JzoKKyAgICAgICAgY2FzZSAnVic6CisgICAgICAgICAgICBp
ZiAoY291bnQgPT0gMSkKKyAgICAgICAgICAgICAgICBtX3RpbWVab25lTmFtZSA9IFRpbWVab25l
TmFtZTo6U2hvcnQ7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA0KQorICAgICAgICAg
ICAgICAgIG1fdGltZVpvbmVOYW1lID0gVGltZVpvbmVOYW1lOjpMb25nOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3ZvaWQgSW50bERhdGVUaW1lRm9ybWF0Ojpp
bml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoRXhlY1N0YXRlJiBzdGF0ZSwgSlNWYWx1ZSBsb2NhbGVz
LCBKU1ZhbHVlIG9yaWdpbmFsT3B0aW9ucykKK3sKKyAgICAvLyAxMi4xLjEgSW5pdGlhbGl6ZURh
dGVUaW1lRm9ybWF0IChkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykgKEVDTUEtNDAy
IDIuMCkKKyAgICAvLyAxLiBJZiBkYXRlVGltZUZvcm1hdC5bW2luaXRpYWxpemVkSW50bE9iamVj
dF1dIGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4KKyAgICAvLyAyLiBTZXQg
ZGF0ZVRpbWVGb3JtYXQuW1tpbml0aWFsaXplZEludGxPYmplY3RdXSB0byB0cnVlLgorCisgICAg
Ly8gMy4gTGV0IHJlcXVlc3RlZExvY2FsZXMgYmUgQ2Fub25pY2FsaXplTG9jYWxlTGlzdChsb2Nh
bGVzKS4KKyAgICBWZWN0b3I8U3RyaW5nPiByZXF1ZXN0ZWRMb2NhbGVzID0gY2Fub25pY2FsaXpl
TG9jYWxlTGlzdChzdGF0ZSwgbG9jYWxlcyk7CisgICAgLy8gNC4gUmV0dXJuSWZBYnJ1cHQocmVx
dWVzdGVkTG9jYWxlcyksCisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICBy
ZXR1cm47CisKKyAgICAvLyA1LiBMZXQgb3B0aW9ucyBiZSBUb0RhdGVUaW1lT3B0aW9ucyhvcHRp
b25zLCAiYW55IiwgImRhdGUiKS4KKyAgICBKU09iamVjdCogb3B0aW9ucyA9IHRvRGF0ZVRpbWVP
cHRpb25zKHN0YXRlLCBvcmlnaW5hbE9wdGlvbnMsIERhdGVUaW1lT3B0aW9uUmVxdWlyZWQ6OkFu
eSwgRGF0ZVRpbWVPcHRpb25EZWZhdWx0czo6RGF0ZSk7CisgICAgLy8gNi4gUmV0dXJuSWZBYnJ1
cHQob3B0aW9ucykuCisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1
cm47CisKKyAgICAvLyA3LiBMZXQgb3B0IGJlIGEgbmV3IFJlY29yZC4KKyAgICBIYXNoTWFwPFN0
cmluZywgU3RyaW5nPiBsb2NhbGVPcHQ7CisKKyAgICAvLyA4LiBMZXQgbWF0Y2hlciBiZSBHZXRP
cHRpb24ob3B0aW9ucywgImxvY2FsZU1hdGNoZXIiLCAic3RyaW5nIiwgwqsibG9va3VwIiwgImJl
c3QgZml0IsK7LCAiYmVzdCBmaXQiKS4KKyAgICBWTSYgdm0gPSBzdGF0ZS52bSgpOworICAgIFN0
cmluZyBsb2NhbGVNYXRjaGVyID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0u
cHJvcGVydHlOYW1lcy0+bG9jYWxlTWF0Y2hlciwgeyAibG9va3VwIiwgImJlc3QgZml0IiB9LCAi
bG9jYWxlTWF0Y2hlciBtdXN0IGJlIGVpdGhlciBcImxvb2t1cFwiIG9yIFwiYmVzdCBmaXRcIiIs
ICJiZXN0IGZpdCIpOworICAgIC8vIDkuIFJldHVybklmQWJydXB0KG1hdGNoZXIpLgorICAgIGlm
IChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuOworICAgIC8vIDEwLiBTZXQg
b3B0LltbbG9jYWxlTWF0Y2hlcl1dIHRvIG1hdGNoZXIuCisgICAgbG9jYWxlT3B0LnNldCh2bS5w
cm9wZXJ0eU5hbWVzLT5sb2NhbGVNYXRjaGVyLnN0cmluZygpLCBsb2NhbGVNYXRjaGVyKTsKKwor
ICAgIC8vIDExLiBMZXQgbG9jYWxlRGF0YSBiZSB0aGUgdmFsdWUgb2YgJURhdGVUaW1lRm9ybWF0
JS5bW2xvY2FsZURhdGFdXS4KKyAgICAvLyAxMi4gTGV0IHIgYmUgUmVzb2x2ZUxvY2FsZSggJURh
dGVUaW1lRm9ybWF0JS5bW2F2YWlsYWJsZUxvY2FsZXNdXSwgcmVxdWVzdGVkTG9jYWxlcywgb3B0
LCAlRGF0ZVRpbWVGb3JtYXQlLltbcmVsZXZhbnRFeHRlbnNpb25LZXlzXV0sIGxvY2FsZURhdGEp
LgorICAgIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiBhdmFpbGFibGVMb2NhbGVzID0gc3RhdGUubGV4
aWNhbEdsb2JhbE9iamVjdCgpLT5pbnRsRGF0ZVRpbWVGb3JtYXRBdmFpbGFibGVMb2NhbGVzKCk7
CisgICAgSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4gcmVzb2x2ZWQgPSByZXNvbHZlTG9jYWxlKGF2
YWlsYWJsZUxvY2FsZXMsIHJlcXVlc3RlZExvY2FsZXMsIGxvY2FsZU9wdCwgcmVsZXZhbnRFeHRl
bnNpb25LZXlzLCBXVEZfQVJSQVlfTEVOR1RIKHJlbGV2YW50RXh0ZW5zaW9uS2V5cyksIGxvY2Fs
ZURhdGEpOworCisgICAgLy8gMTMuIFNldCBkYXRlVGltZUZvcm1hdC5bW2xvY2FsZV1dIHRvIHRo
ZSB2YWx1ZSBvZiByLltbbG9jYWxlXV0uCisgICAgbV9sb2NhbGUgPSByZXNvbHZlZC5nZXQodm0u
cHJvcGVydHlOYW1lcy0+bG9jYWxlLnN0cmluZygpKTsKKyAgICAvLyAxNC4gU2V0IGRhdGVUaW1l
Rm9ybWF0LltbY2FsZW5kYXJdXSB0byB0aGUgdmFsdWUgb2Ygci5bW2NhXV0uCisgICAgbV9jYWxl
bmRhciA9IHJlc29sdmVkLmdldChBU0NJSUxpdGVyYWwoImNhIikpOworICAgIC8vIFN3aXRjaCB0
byBwcmVmZXJyZWQgYWxpYXNlcy4KKyAgICBpZiAobV9jYWxlbmRhciA9PSAiZ3JlZ29yeSIpCisg
ICAgICAgIG1fY2FsZW5kYXIgPSBBU0NJSUxpdGVyYWwoImdyZWdvcmlhbiIpOworICAgIGVsc2Ug
aWYgKG1fY2FsZW5kYXIgPT0gImlzbGFtaWNjIikKKyAgICAgICAgbV9jYWxlbmRhciA9IEFTQ0lJ
TGl0ZXJhbCgiaXNsYW1pYy1jaXZpbCIpOworICAgIGVsc2UgaWYgKG1fY2FsZW5kYXIgPT0gImV0
aGlvYWEiKQorICAgICAgICBtX2NhbGVuZGFyID0gQVNDSUlMaXRlcmFsKCJldGhpb3BpYy1hbWV0
ZS1hbGVtIik7CisgICAgLy8gMTUuIFNldCBkYXRlVGltZUZvcm1hdC5bW251bWJlcmluZ1N5c3Rl
bV1dIHRvIHRoZSB2YWx1ZSBvZiByLltbbnVdXS4KKyAgICBtX251bWJlcmluZ1N5c3RlbSA9IHJl
c29sdmVkLmdldChBU0NJSUxpdGVyYWwoIm51IikpOworICAgIC8vIDE2LiBMZXQgZGF0YUxvY2Fs
ZSBiZSB0aGUgdmFsdWUgb2Ygci5bW2RhdGFMb2NhbGVdXS4KKyAgICBTdHJpbmcgZGF0YUxvY2Fs
ZSA9IHJlc29sdmVkLmdldChBU0NJSUxpdGVyYWwoImRhdGFMb2NhbGUiKSk7CisKKyAgICAvLyAx
Ny4gTGV0IHR6IGJlIEdldChvcHRpb25zLCAidGltZVpvbmUiKS4KKyAgICBKU1ZhbHVlIHR6VmFs
dWUgPSBvcHRpb25zLT5nZXQoJnN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT50aW1lWm9uZSk7Cisg
ICAgLy8gMTguIFJldHVybklmQWJydXB0KHR6KS4KKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9u
KCkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIDE5LiBJZiB0eiBpcyBub3QgdW5kZWZpbmVk
LCB0aGVuCisgICAgU3RyaW5nIHR6OworICAgIGlmICghdHpWYWx1ZS5pc1VuZGVmaW5lZCgpKSB7
CisgICAgICAgIC8vIGEuIExldCB0eiBiZSBUb1N0cmluZyh0eikuCisgICAgICAgIFN0cmluZyBv
cmlnaW5hbFR6ID0gdHpWYWx1ZS50b1dURlN0cmluZygmc3RhdGUpOworICAgICAgICAvLyBiLiBS
ZXR1cm5JZkFicnVwdCh0eikuCisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAg
ICAgICAgICAgIHJldHVybjsKKyAgICAgICAgLy8gYy4gSWYgdGhlIHJlc3VsdCBvZiBJc1ZhbGlk
VGltZVpvbmVOYW1lKHR6KSBpcyBmYWxzZSwgdGhlbiBpLiBUaHJvdyBhIFJhbmdlRXJyb3IgZXhj
ZXB0aW9uLgorICAgICAgICAvLyBkLiBMZXQgdHogYmUgQ2Fub25pY2FsaXplVGltZVpvbmVOYW1l
KHR6KS4KKyAgICAgICAgdHogPSBjYW5vbmljYWxpemVUaW1lWm9uZU5hbWUob3JpZ2luYWxUeik7
CisgICAgICAgIGlmICh0ei5pc051bGwoKSkgeworICAgICAgICAgICAgdGhyb3dSYW5nZUVycm9y
KCZzdGF0ZSwgU3RyaW5nOjpmb3JtYXQoImludmFsaWQgdGltZSB6b25lOiAlcyIsIG9yaWdpbmFs
VHoudXRmOCgpLmRhdGEoKSkpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAg
fSBlbHNlCisgICAgLy8gMjAuIEVsc2UsCisgICAgICAgIC8vIGEuIExldCB0eiBiZSBEZWZhdWx0
VGltZVpvbmUoKS4KKyAgICAgICAgdHogPSBkZWZhdWx0VGltZVpvbmUoKTsKKworICAgIC8vIDIx
LiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1t0aW1lWm9uZV1dIHRvIHR6LgorICAgIG1fdGltZVpvbmUg
PSB0ejsKKworICAgIC8vIDIyLiBMZXQgb3B0IGJlIGEgbmV3IFJlY29yZC4KKyAgICAvLyBSYXRo
ZXIgdGhhbiBidWlsZGluZyBhIHJlY29yZCwgYnVpbGQgdGhlIHNrZWxldG9uIHBhdHRlcm4uCisg
ICAgU3RyaW5nQnVpbGRlciBza2VsZXRvbkJ1aWxkZXI7CisKKyAgICAvLyAyMy4gRm9yIGVhY2gg
cm93IG9mIFRhYmxlIDMsIGV4Y2VwdCB0aGUgaGVhZGVyIHJvdywgZG86CisgICAgLy8gYS4gTGV0
IHByb3AgYmUgdGhlIG5hbWUgZ2l2ZW4gaW4gdGhlIFByb3BlcnR5IGNvbHVtbiBvZiB0aGUgcm93
LgorICAgIC8vIGIuIExldCB2YWx1ZSBiZSBHZXRPcHRpb24ob3B0aW9ucywgcHJvcCwgInN0cmlu
ZyIsIMKrdGhlIHN0cmluZ3MgZ2l2ZW4gaW4gdGhlIFZhbHVlcyBjb2x1bW4gb2YgdGhlIHJvd8K7
LCB1bmRlZmluZWQpLgorICAgIC8vIGMuIFJldHVybklmQWJydXB0KHZhbHVlKS4KKyAgICAvLyBk
LiBTZXQgb3B0LltbPHByb3A+XV0gdG8gdmFsdWUuCisgICAgYXV0byBuYXJyb3dTaG9ydExvbmcg
PSB7ICJuYXJyb3ciLCAic2hvcnQiLCAibG9uZyIgfTsKKyAgICBhdXRvIHR3b0RpZ2l0TnVtZXJp
YyA9IHsgIjItZGlnaXQiLCAibnVtZXJpYyIgfTsKKyAgICBhdXRvIHR3b0RpZ2l0TnVtZXJpY05h
cnJvd1Nob3J0TG9uZyA9IHsgIjItZGlnaXQiLCAibnVtZXJpYyIsICJuYXJyb3ciLCAic2hvcnQi
LCAibG9uZyIgfTsKKyAgICBhdXRvIHNob3J0TG9uZyA9IHsgInNob3J0IiwgImxvbmciIH07CisK
KyAgICBTdHJpbmcgd2Vla2RheSA9IGludGxTdHJpbmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZt
LnByb3BlcnR5TmFtZXMtPndlZWtkYXksIG5hcnJvd1Nob3J0TG9uZywgIndlZWtkYXkgbXVzdCBi
ZSBcIm5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwibG9uZ1wiIiwgbnVsbHB0cik7CisgICAgaWYg
KHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm47CisgICAgaWYgKCF3ZWVrZGF5
LmlzTnVsbCgpKSB7CisgICAgICAgIGlmICh3ZWVrZGF5ID09ICJuYXJyb3ciKQorICAgICAgICAg
ICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoIkVFRUVFIik7CisgICAgICAgIGVsc2Ug
aWYgKHdlZWtkYXkgPT0gInNob3J0IikKKyAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBl
bmRMaXRlcmFsKCJFRUUiKTsKKyAgICAgICAgZWxzZSBpZiAod2Vla2RheSA9PSAibG9uZyIpCisg
ICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiRUVFRSIpOworICAgIH0K
KworICAgIFN0cmluZyBlcmEgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5w
cm9wZXJ0eU5hbWVzLT5lcmEsIG5hcnJvd1Nob3J0TG9uZywgImVyYSBtdXN0IGJlIFwibmFycm93
XCIsIFwic2hvcnRcIiwgb3IgXCJsb25nXCIiLCBudWxscHRyKTsKKyAgICBpZiAoc3RhdGUuaGFk
RXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybjsKKyAgICBpZiAoIWVyYS5pc051bGwoKSkgewor
ICAgICAgICBpZiAoZXJhID09ICJuYXJyb3ciKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVy
LmFwcGVuZExpdGVyYWwoIkdHR0dHIik7CisgICAgICAgIGVsc2UgaWYgKGVyYSA9PSAic2hvcnQi
KQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoIkdHRyIpOworICAg
ICAgICBlbHNlIGlmIChlcmEgPT0gImxvbmciKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVy
LmFwcGVuZExpdGVyYWwoIkdHR0ciKTsKKyAgICB9CisKKyAgICBTdHJpbmcgeWVhciA9IGludGxT
dHJpbmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnllYXIsIHR3b0Rp
Z2l0TnVtZXJpYywgInllYXIgbXVzdCBiZSBcIjItZGlnaXRcIiBvciBcIm51bWVyaWNcIiIsIG51
bGxwdHIpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuOwor
ICAgIGlmICgheWVhci5pc051bGwoKSkgeworICAgICAgICBpZiAoeWVhciA9PSAiMi1kaWdpdCIp
CisgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgieXkiKTsKKyAgICAg
ICAgZWxzZSBpZiAoeWVhciA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICBza2VsZXRvbkJ1aWxk
ZXIuYXBwZW5kKCd5Jyk7CisgICAgfQorCisgICAgU3RyaW5nIG1vbnRoID0gaW50bFN0cmluZ09w
dGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bW9udGgsIHR3b0RpZ2l0TnVt
ZXJpY05hcnJvd1Nob3J0TG9uZywgIm1vbnRoIG11c3QgYmUgXCIyLWRpZ2l0XCIsIFwibnVtZXJp
Y1wiLCBcIm5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwibG9uZ1wiIiwgbnVsbHB0cik7CisgICAg
aWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm47CisgICAgaWYgKCFtb250
aC5pc051bGwoKSkgeworICAgICAgICBpZiAobW9udGggPT0gIjItZGlnaXQiKQorICAgICAgICAg
ICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoIk1NIik7CisgICAgICAgIGVsc2UgaWYg
KG1vbnRoID09ICJudW1lcmljIikKKyAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmQo
J00nKTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gIm5hcnJvdyIpCisgICAgICAgICAgICBz
a2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiTU1NTU0iKTsKKyAgICAgICAgZWxzZSBpZiAo
bW9udGggPT0gInNob3J0IikKKyAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmRMaXRl
cmFsKCJNTU0iKTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gImxvbmciKQorICAgICAgICAg
ICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoIk1NTU0iKTsKKyAgICB9CisKKyAgICBT
dHJpbmcgZGF5ID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlO
YW1lcy0+ZGF5LCB0d29EaWdpdE51bWVyaWMsICJkYXkgbXVzdCBiZSBcIjItZGlnaXRcIiBvciBc
Im51bWVyaWNcIiIsIG51bGxwdHIpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAg
ICAgICAgcmV0dXJuOworICAgIGlmICghZGF5LmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChkYXkg
PT0gIjItZGlnaXQiKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwo
ImRkIik7CisgICAgICAgIGVsc2UgaWYgKGRheSA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICBz
a2VsZXRvbkJ1aWxkZXIuYXBwZW5kKCdkJyk7CisgICAgfQorCisgICAgU3RyaW5nIGhvdXIgPSBp
bnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyLCB0
d29EaWdpdE51bWVyaWMsICJob3VyIG11c3QgYmUgXCIyLWRpZ2l0XCIgb3IgXCJudW1lcmljXCIi
LCBudWxscHRyKTsKKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVy
bjsKKworICAgIC8vIFdlIG5lZWQgaG91cjEyIHRvIG1ha2UgdGhlIGhvdXIgc2tlbGV0b24gcGF0
dGVybiBkZWNpc2lvbiwgc28gZG8gdGhpcyBlYXJseS4KKyAgICAvLyAzMi4gTGV0IGhyMTIgYmUg
R2V0T3B0aW9uKG9wdGlvbnMsICJob3VyMTIiLCAiYm9vbGVhbiIsIHVuZGVmaW5lZCwgdW5kZWZp
bmVkKS4KKyAgICBib29sIGlzSG91cjEyVW5kZWZpbmVkID0gdHJ1ZTsKKyAgICBib29sIGhyMTIg
PSBpbnRsQm9vbGVhbk9wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+aG91
cjEyLCBpc0hvdXIxMlVuZGVmaW5lZCk7CisgICAgLy8gMzMuIFJldHVybklmQWJydXB0KGhyMTIp
LgorICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuOworCisgICAg
aWYgKCFob3VyLmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChpc0hvdXIxMlVuZGVmaW5lZCkgewor
ICAgICAgICAgICAgaWYgKGhvdXIgPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgICAgIHNrZWxl
dG9uQnVpbGRlci5hcHBlbmRMaXRlcmFsKCJqaiIpOworICAgICAgICAgICAgZWxzZSBpZiAoaG91
ciA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZCgn
aicpOworICAgICAgICB9IGVsc2UgaWYgKGhyMTIpIHsKKyAgICAgICAgICAgIGlmIChob3VyID09
ICIyLWRpZ2l0IikKKyAgICAgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJh
bCgiaGgiKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGhvdXIgPT0gIm51bWVyaWMiKQorICAgICAg
ICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmQoJ2gnKTsKKyAgICAgICAgfSBlbHNlIHsK
KyAgICAgICAgICAgIGlmIChob3VyID09ICIyLWRpZ2l0IikKKyAgICAgICAgICAgICAgICBza2Vs
ZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiSEgiKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGhv
dXIgPT0gIm51bWVyaWMiKQorICAgICAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmQo
J0gnKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIFN0cmluZyBtaW51dGUgPSBpbnRsU3RyaW5n
T3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5taW51dGUsIHR3b0RpZ2l0
TnVtZXJpYywgIm1pbnV0ZSBtdXN0IGJlIFwiMi1kaWdpdFwiIG9yIFwibnVtZXJpY1wiIiwgbnVs
bHB0cik7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm47Cisg
ICAgaWYgKCFtaW51dGUuaXNOdWxsKCkpIHsKKyAgICAgICAgaWYgKG1pbnV0ZSA9PSAiMi1kaWdp
dCIpCisgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgibW0iKTsKKyAg
ICAgICAgZWxzZSBpZiAobWludXRlID09ICJudW1lcmljIikKKyAgICAgICAgICAgIHNrZWxldG9u
QnVpbGRlci5hcHBlbmQoJ20nKTsKKyAgICB9CisKKyAgICBTdHJpbmcgc2Vjb25kID0gaW50bFN0
cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+c2Vjb25kLCB0d29E
aWdpdE51bWVyaWMsICJzZWNvbmQgbXVzdCBiZSBcIjItZGlnaXRcIiBvciBcIm51bWVyaWNcIiIs
IG51bGxwdHIpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJu
OworICAgIGlmICghc2Vjb25kLmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChzZWNvbmQgPT0gIjIt
ZGlnaXQiKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoInNzIik7
CisgICAgICAgIGVsc2UgaWYgKHNlY29uZCA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICBza2Vs
ZXRvbkJ1aWxkZXIuYXBwZW5kKCdzJyk7CisgICAgfQorCisgICAgU3RyaW5nIHRpbWVab25lTmFt
ZSA9IGludGxTdHJpbmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnRp
bWVab25lTmFtZSwgc2hvcnRMb25nLCAidGltZVpvbmVOYW1lIG11c3QgYmUgXCJzaG9ydFwiIG9y
IFwibG9uZ1wiIiwgbnVsbHB0cik7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAg
ICAgICByZXR1cm47CisgICAgaWYgKCF0aW1lWm9uZU5hbWUuaXNOdWxsKCkpIHsKKyAgICAgICAg
aWYgKHRpbWVab25lTmFtZSA9PSAic2hvcnQiKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVy
LmFwcGVuZCgneicpOworICAgICAgICBlbHNlIGlmICh0aW1lWm9uZU5hbWUgPT0gImxvbmciKQor
ICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoInp6enoiKTsKKyAgICB9
CisKKyAgICAvLyAyNC4gTGV0IGRhdGFMb2NhbGVEYXRhIGJlIEdldChsb2NhbGVEYXRhLCBkYXRh
TG9jYWxlKS4KKyAgICAvLyAyNS4gTGV0IGZvcm1hdHMgYmUgR2V0KGRhdGFMb2NhbGVEYXRhLCAi
Zm9ybWF0cyIpLgorICAgIC8vIDI2LiBMZXQgbWF0Y2hlciBiZSBHZXRPcHRpb24ob3B0aW9ucywg
ImZvcm1hdE1hdGNoZXIiLCAic3RyaW5nIiwgwqsiYmFzaWMiLCAiYmVzdCBmaXQiwrssICJiZXN0
IGZpdCIpLgorICAgIGludGxTdHJpbmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5
TmFtZXMtPmZvcm1hdE1hdGNoZXIsIHsgImJhc2ljIiwgImJlc3QgZml0IiB9LCAiZm9ybWF0TWF0
Y2hlciBtdXN0IGJlIGVpdGhlciBcImJhc2ljXCIgb3IgXCJiZXN0IGZpdFwiIiwgImJlc3QgZml0
Iik7CisgICAgLy8gMjcuIFJldHVybklmQWJydXB0KG1hdGNoZXIpLgorICAgIGlmIChzdGF0ZS5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgLy8gQWx3YXlzIHVzZSBJQ1Ug
ZGF0ZSBmb3JtYXQgZ2VuZXJhdG9yLCByYXRoZXIgdGhhbiBvdXIgb3duIHBhdHRlcm4gbGlzdCBh
bmQgbWF0Y2hlci4KKyAgICAvLyBDb3ZlcnMgc3RlcHMgMjgtMzYuCisgICAgVUVycm9yQ29kZSBz
dGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciogZ2Vu
ZXJhdG9yID0gdWRhdHBnX29wZW4oZGF0YUxvY2FsZS51dGY4KCkuZGF0YSgpLCAmc3RhdHVzKTsK
KyAgICBpZiAoVV9GQUlMVVJFKHN0YXR1cykpIHsKKyAgICAgICAgdGhyb3dUeXBlRXJyb3IoJnN0
YXRlLCBBU0NJSUxpdGVyYWwoImZhaWxlZCB0byBpbml0aWFsaXplIERhdGVUaW1lRm9ybWF0Iikp
OworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgU3RyaW5nIHBhdHRlcm4gPSBza2VsZXRv
bkJ1aWxkZXIudG9TdHJpbmcoKTsKKyAgICBTdHJpbmdWaWV3IHNrZWxldG9uKHBhdHRlcm4pOwor
ICAgIFZlY3RvcjxVQ2hhciwgMzI+IHBhdHRlcm5CdWZmZXIoMzIpOworICAgIHN0YXR1cyA9IFVf
WkVST19FUlJPUjsKKyAgICBhdXRvIHBhdHRlcm5MZW5ndGggPSB1ZGF0cGdfZ2V0QmVzdFBhdHRl
cm4oZ2VuZXJhdG9yLCBza2VsZXRvbi51cGNvbnZlcnRlZENoYXJhY3RlcnMoKSwgc2tlbGV0b24u
bGVuZ3RoKCksIHBhdHRlcm5CdWZmZXIuZGF0YSgpLCBwYXR0ZXJuQnVmZmVyLnNpemUoKSwgJnN0
YXR1cyk7CisgICAgaWYgKHN0YXR1cyA9PSBVX0JVRkZFUl9PVkVSRkxPV19FUlJPUikgeworICAg
ICAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgIHBhdHRlcm5CdWZmZXIgPSBWZWN0
b3I8VUNoYXIsIDMyPihwYXR0ZXJuTGVuZ3RoKTsKKyAgICAgICAgdWRhdHBnX2dldEJlc3RQYXR0
ZXJuKGdlbmVyYXRvciwgc2tlbGV0b24udXBjb252ZXJ0ZWRDaGFyYWN0ZXJzKCksIHNrZWxldG9u
Lmxlbmd0aCgpLCBwYXR0ZXJuQnVmZmVyLmRhdGEoKSwgcGF0dGVybkxlbmd0aCwgJnN0YXR1cyk7
CisgICAgfQorICAgIHVkYXRwZ19jbG9zZShnZW5lcmF0b3IpOworICAgIGlmIChVX0ZBSUxVUkUo
c3RhdHVzKSkgeworICAgICAgICB0aHJvd1R5cGVFcnJvcigmc3RhdGUsIEFTQ0lJTGl0ZXJhbCgi
ZmFpbGVkIHRvIGluaXRpYWxpemUgRGF0ZVRpbWVGb3JtYXQiKSk7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICBwYXR0ZXJuID0gU3RyaW5nKHBhdHRlcm5CdWZmZXIuZGF0YSgpLCBwYXR0
ZXJuTGVuZ3RoKTsKKyAgICBzZXRGb3JtYXRzRnJvbVBhdHRlcm4ocGF0dGVybik7CisKKyAgICAv
LyAzNy4gU2V0IGRhdGVUaW1lRm9ybWF0LltbYm91bmRGb3JtYXRdXSB0byB1bmRlZmluZWQuCisg
ICAgLy8gQWxyZWFkeSB1bmRlZmluZWQuCisKKyAgICAvLyAzOC4gU2V0IGRhdGVUaW1lRm9ybWF0
LltbaW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdF1dIHRvIHRydWUuCisgICAgbV9pbml0aWFsaXpl
ZERhdGVUaW1lRm9ybWF0ID0gdHJ1ZTsKKworICAgIC8vIDM5LiBSZXR1cm4gZGF0ZVRpbWVGb3Jt
YXQuCisgICAgcmV0dXJuOworfQorCitjb25zdCBjaGFyKiBJbnRsRGF0ZVRpbWVGb3JtYXQ6Ondl
ZWtkYXlTdHJpbmcoV2Vla2RheSB3ZWVrZGF5KQoreworICAgIHN3aXRjaCAod2Vla2RheSkgewor
ICAgIGNhc2UgV2Vla2RheTo6TmFycm93OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJu
YXJyb3ciKTsKKyAgICBjYXNlIFdlZWtkYXk6OlNob3J0OgorICAgICAgICByZXR1cm4gQVNDSUlM
aXRlcmFsKCJzaG9ydCIpOworICAgIGNhc2UgV2Vla2RheTo6TG9uZzoKKyAgICAgICAgcmV0dXJu
IEFTQ0lJTGl0ZXJhbCgibG9uZyIpOworICAgIGNhc2UgV2Vla2RheTo6Tm9uZToKKyAgICAgICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKyAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKworY29uc3Qg
Y2hhciogSW50bERhdGVUaW1lRm9ybWF0OjplcmFTdHJpbmcoRXJhIGVyYSkKK3sKKyAgICBzd2l0
Y2ggKGVyYSkgeworICAgIGNhc2UgRXJhOjpOYXJyb3c6CisgICAgICAgIHJldHVybiAibmFycm93
IjsKKyAgICBjYXNlIEVyYTo6U2hvcnQ6CisgICAgICAgIHJldHVybiAic2hvcnQiOworICAgIGNh
c2UgRXJhOjpMb25nOgorICAgICAgICByZXR1cm4gImxvbmciOworICAgIGNhc2UgRXJhOjpOb25l
OgorICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7
CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBudWxscHRyOwor
fQorCitjb25zdCBjaGFyKiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OnllYXJTdHJpbmcoWWVhciB5ZWFy
KQoreworICAgIHN3aXRjaCAoeWVhcikgeworICAgIGNhc2UgWWVhcjo6VHdvRGlnaXQ6CisgICAg
ICAgIHJldHVybiAiMi1kaWdpdCI7CisgICAgY2FzZSBZZWFyOjpOdW1lcmljOgorICAgICAgICBy
ZXR1cm4gIm51bWVyaWMiOworICAgIGNhc2UgWWVhcjo6Tm9uZToKKyAgICAgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7CisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKyAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKworY29uc3QgY2hhciogSW50
bERhdGVUaW1lRm9ybWF0Ojptb250aFN0cmluZyhNb250aCBtb250aCkKIHsKLSAgICAvLyAxMi4z
LjQgRGF0ZVRpbWUgRm9ybWF0IEZ1bmN0aW9ucyAoRUNNQS00MDIgMi4wKQotICAgIC8vIDEuIExl
dCBkdGYgYmUgdGhlIHRoaXMgdmFsdWUuCi0gICAgSW50bERhdGVUaW1lRm9ybWF0KiBmb3JtYXQg
PSBqc0R5bmFtaWNDYXN0PEludGxEYXRlVGltZUZvcm1hdCo+KHN0YXRlLT50aGlzVmFsdWUoKSk7
Ci0gICAgLy8gMi4gQXNzZXJ0OiBUeXBlKGR0ZikgaXMgT2JqZWN0IGFuZCBkdGYgaGFzIGFuIFtb
aW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdF1dIGludGVybmFsIHNsb3Qgd2hvc2UgdmFsdWUgaXMg
dHJ1ZS4KLSAgICBpZiAoIWZvcm1hdCkKLSAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0
aHJvd1R5cGVFcnJvcihzdGF0ZSkpOworICAgIHN3aXRjaCAobW9udGgpIHsKKyAgICBjYXNlIE1v
bnRoOjpUd29EaWdpdDoKKyAgICAgICAgcmV0dXJuICIyLWRpZ2l0IjsKKyAgICBjYXNlIE1vbnRo
OjpOdW1lcmljOgorICAgICAgICByZXR1cm4gIm51bWVyaWMiOworICAgIGNhc2UgTW9udGg6Ok5h
cnJvdzoKKyAgICAgICAgcmV0dXJuICJuYXJyb3ciOworICAgIGNhc2UgTW9udGg6OlNob3J0Ogor
ICAgICAgICByZXR1cm4gInNob3J0IjsKKyAgICBjYXNlIE1vbnRoOjpMb25nOgorICAgICAgICBy
ZXR1cm4gImxvbmciOworICAgIGNhc2UgTW9udGg6Ok5vbmU6CisgICAgICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIG51bGxwdHI7Cit9CiAKLSAgICBKU1ZhbHVlIGRhdGUg
PSBzdGF0ZS0+YXJndW1lbnQoMCk7Ci0gICAgZG91YmxlIHZhbHVlOworY29uc3QgY2hhciogSW50
bERhdGVUaW1lRm9ybWF0OjpkYXlTdHJpbmcoRGF5IGRheSkKK3sKKyAgICBzd2l0Y2ggKGRheSkg
eworICAgIGNhc2UgRGF5OjpUd29EaWdpdDoKKyAgICAgICAgcmV0dXJuICIyLWRpZ2l0IjsKKyAg
ICBjYXNlIERheTo6TnVtZXJpYzoKKyAgICAgICAgcmV0dXJuICJudW1lcmljIjsKKyAgICBjYXNl
IERheTo6Tm9uZToKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIHJldHVy
biBudWxscHRyOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4g
bnVsbHB0cjsKK30KIAotICAgIC8vIDMuIElmIGRhdGUgaXMgbm90IHByb3ZpZGVkIG9yIGlzIHVu
ZGVmaW5lZCwgdGhlbgotICAgIGlmIChkYXRlLmlzVW5kZWZpbmVkKCkpIHsKLSAgICAgICAgLy8g
YS4gTGV0IHggYmUgJURhdGVfbm93JSgpLgotICAgICAgICB2YWx1ZSA9IEpTVmFsdWU6OmRlY29k
ZShkYXRlTm93KHN0YXRlKSkudG9OdW1iZXIoc3RhdGUpOwotICAgIH0gZWxzZSB7Ci0gICAgICAg
IC8vIDQuIEVsc2UKLSAgICAgICAgLy8gYS4gTGV0IHggYmUgVG9OdW1iZXIoZGF0ZSkuCi0gICAg
ICAgIHZhbHVlID0gZGF0ZS50b051bWJlcihzdGF0ZSk7Ci0gICAgICAgIC8vIGIuIFJldHVybklm
QWJydXB0KHgpLgotICAgICAgICBpZiAoc3RhdGUtPmhhZEV4Y2VwdGlvbigpKQotICAgICAgICAg
ICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKTsKK2NvbnN0IGNoYXIqIElu
dGxEYXRlVGltZUZvcm1hdDo6aG91clN0cmluZyhIb3VyIGhvdXIpCit7CisgICAgc3dpdGNoICho
b3VyKSB7CisgICAgY2FzZSBIb3VyOjpUd29EaWdpdDoKKyAgICAgICAgcmV0dXJuICIyLWRpZ2l0
IjsKKyAgICBjYXNlIEhvdXI6Ok51bWVyaWM6CisgICAgICAgIHJldHVybiAibnVtZXJpYyI7Cisg
ICAgY2FzZSBIb3VyOjpOb25lOgorICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAg
IHJldHVybiBudWxscHRyOworfQogCi0gICAgLy8gNS4gUmV0dXJuIEZvcm1hdERhdGVUaW1lKGR0
ZiwgeCkuCitjb25zdCBjaGFyKiBJbnRsRGF0ZVRpbWVGb3JtYXQ6Om1pbnV0ZVN0cmluZyhNaW51
dGUgbWludXRlKQoreworICAgIHN3aXRjaCAobWludXRlKSB7CisgICAgY2FzZSBNaW51dGU6OlR3
b0RpZ2l0OgorICAgICAgICByZXR1cm4gIjItZGlnaXQiOworICAgIGNhc2UgTWludXRlOjpOdW1l
cmljOgorICAgICAgICByZXR1cm4gIm51bWVyaWMiOworICAgIGNhc2UgTWludXRlOjpOb25lOgor
ICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7Cisg
ICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBudWxscHRyOworfQor
Citjb25zdCBjaGFyKiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNlY29uZFN0cmluZyhTZWNvbmQgc2Vj
b25kKQoreworICAgIHN3aXRjaCAoc2Vjb25kKSB7CisgICAgY2FzZSBTZWNvbmQ6OlR3b0RpZ2l0
OgorICAgICAgICByZXR1cm4gIjItZGlnaXQiOworICAgIGNhc2UgU2Vjb25kOjpOdW1lcmljOgor
ICAgICAgICByZXR1cm4gIm51bWVyaWMiOworICAgIGNhc2UgU2Vjb25kOjpOb25lOgorICAgICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQor
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBudWxscHRyOworfQorCitjb25z
dCBjaGFyKiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OnRpbWVab25lTmFtZVN0cmluZyhUaW1lWm9uZU5h
bWUgdGltZVpvbmVOYW1lKQoreworICAgIHN3aXRjaCAodGltZVpvbmVOYW1lKSB7CisgICAgY2Fz
ZSBUaW1lWm9uZU5hbWU6OlNob3J0OgorICAgICAgICByZXR1cm4gInNob3J0IjsKKyAgICBjYXNl
IFRpbWVab25lTmFtZTo6TG9uZzoKKyAgICAgICAgcmV0dXJuICJsb25nIjsKKyAgICBjYXNlIFRp
bWVab25lTmFtZTo6Tm9uZToKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAg
IHJldHVybiBudWxscHRyOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICBy
ZXR1cm4gbnVsbHB0cjsKK30KIAorSlNPYmplY3QqIEludGxEYXRlVGltZUZvcm1hdDo6cmVzb2x2
ZWRPcHRpb25zKEV4ZWNTdGF0ZSYgc3RhdGUpCit7CisgICAgLy8gMTIuMy41IEludGwuRGF0ZVRp
bWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIChFQ01BLTQwMiAyLjApCisgICAg
Ly8gVGhlIGZ1bmN0aW9uIHJldHVybnMgYSBuZXcgb2JqZWN0IHdob3NlIHByb3BlcnRpZXMgYW5k
IGF0dHJpYnV0ZXMgYXJlIHNldCBhcyBpZiBjb25zdHJ1Y3RlZCBieSBhbiBvYmplY3QgbGl0ZXJh
bCBhc3NpZ25pbmcgdG8gZWFjaCBvZiB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXMgdGhlIHZhbHVl
IG9mIHRoZSBjb3JyZXNwb25kaW5nIGludGVybmFsIHNsb3Qgb2YgdGhpcyBEYXRlVGltZUZvcm1h
dCBvYmplY3QgKHNlZSAxMi40KTogbG9jYWxlLCBjYWxlbmRhciwgbnVtYmVyaW5nU3lzdGVtLCB0
aW1lWm9uZSwgaG91cjEyLCB3ZWVrZGF5LCBlcmEsIHllYXIsIG1vbnRoLCBkYXksIGhvdXIsIG1p
bnV0ZSwgc2Vjb25kLCBhbmQgdGltZVpvbmVOYW1lLiBQcm9wZXJ0aWVzIHdob3NlIGNvcnJlc3Bv
bmRpbmcgaW50ZXJuYWwgc2xvdHMgYXJlIG5vdCBwcmVzZW50IGFyZSBub3QgYXNzaWduZWQuCisg
ICAgLy8gTm90ZTogSW4gdGhpcyB2ZXJzaW9uIG9mIHRoZSBFQ01BU2NyaXB0IDIwMTUgSW50ZXJu
YXRpb25hbGl6YXRpb24gQVBJLCB0aGUgdGltZVpvbmUgcHJvcGVydHkgd2lsbCBiZSB0aGUgbmFt
ZSBvZiB0aGUgZGVmYXVsdCB0aW1lIHpvbmUgaWYgbm8gdGltZVpvbmUgcHJvcGVydHkgd2FzIHBy
b3ZpZGVkIGluIHRoZSBvcHRpb25zIG9iamVjdCBwcm92aWRlZCB0byB0aGUgSW50bC5EYXRlVGlt
ZUZvcm1hdCBjb25zdHJ1Y3Rvci4gVGhlIHByZXZpb3VzIHZlcnNpb24gbGVmdCB0aGUgdGltZVpv
bmUgcHJvcGVydHkgdW5kZWZpbmVkIGluIHRoaXMgY2FzZS4KKyAgICBpZiAoIW1faW5pdGlhbGl6
ZWREYXRlVGltZUZvcm1hdCkgeworICAgICAgICBpbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoc3Rh
dGUsIGpzVW5kZWZpbmVkKCksIGpzVW5kZWZpbmVkKCkpOworICAgICAgICBBU1NFUlQoIXN0YXRl
LmhhZEV4Y2VwdGlvbigpKTsKKyAgICB9CisKKyAgICBWTSYgdm0gPSBzdGF0ZS52bSgpOworICAg
IEpTT2JqZWN0KiBvcHRpb25zID0gY29uc3RydWN0RW1wdHlPYmplY3QoJnN0YXRlKTsKKyAgICBv
cHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmxvY2FsZSwganNOb250cml2
aWFsU3RyaW5nKCZzdGF0ZSwgbV9sb2NhbGUpKTsKKyAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0s
IHZtLnByb3BlcnR5TmFtZXMtPmNhbGVuZGFyLCBqc05vbnRyaXZpYWxTdHJpbmcoJnN0YXRlLCBt
X2NhbGVuZGFyKSk7CisgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVz
LT5udW1iZXJpbmdTeXN0ZW0sIGpzTm9udHJpdmlhbFN0cmluZygmc3RhdGUsIG1fbnVtYmVyaW5n
U3lzdGVtKSk7CisgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT50
aW1lWm9uZSwganNOb250cml2aWFsU3RyaW5nKCZzdGF0ZSwgbV90aW1lWm9uZSkpOworCisgICAg
aWYgKG1fd2Vla2RheSAhPSBXZWVrZGF5OjpOb25lKQorICAgICAgICBvcHRpb25zLT5wdXREaXJl
Y3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPndlZWtkYXksIGpzTm9udHJpdmlhbFN0cmluZygmc3Rh
dGUsIEFTQ0lJTGl0ZXJhbCh3ZWVrZGF5U3RyaW5nKG1fd2Vla2RheSkpKSk7CisKKyAgICBpZiAo
bV9lcmEgIT0gRXJhOjpOb25lKQorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnBy
b3BlcnR5TmFtZXMtPmVyYSwganNOb250cml2aWFsU3RyaW5nKCZzdGF0ZSwgQVNDSUlMaXRlcmFs
KGVyYVN0cmluZyhtX2VyYSkpKSk7CisKKyAgICBpZiAobV95ZWFyICE9IFllYXI6Ok5vbmUpCisg
ICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+eWVhciwganNO
b250cml2aWFsU3RyaW5nKCZzdGF0ZSwgQVNDSUlMaXRlcmFsKHllYXJTdHJpbmcobV95ZWFyKSkp
KTsKKworICAgIGlmIChtX21vbnRoICE9IE1vbnRoOjpOb25lKQorICAgICAgICBvcHRpb25zLT5w
dXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPm1vbnRoLCBqc05vbnRyaXZpYWxTdHJpbmco
JnN0YXRlLCBBU0NJSUxpdGVyYWwobW9udGhTdHJpbmcobV9tb250aCkpKSk7CisKKyAgICBpZiAo
bV9kYXkgIT0gRGF5OjpOb25lKQorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnBy
b3BlcnR5TmFtZXMtPmRheSwganNOb250cml2aWFsU3RyaW5nKCZzdGF0ZSwgQVNDSUlMaXRlcmFs
KGRheVN0cmluZyhtX2RheSkpKSk7CisKKyAgICBpZiAobV9ob3VyICE9IEhvdXI6Ok5vbmUpIHsK
KyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyLCBq
c05vbnRyaXZpYWxTdHJpbmcoJnN0YXRlLCBBU0NJSUxpdGVyYWwoaG91clN0cmluZyhtX2hvdXIp
KSkpOworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmhv
dXIxMiwganNCb29sZWFuKG1faG91cjEyKSk7CisgICAgfQorCisgICAgaWYgKG1fbWludXRlICE9
IE1pbnV0ZTo6Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0
eU5hbWVzLT5taW51dGUsIGpzTm9udHJpdmlhbFN0cmluZygmc3RhdGUsIEFTQ0lJTGl0ZXJhbCht
aW51dGVTdHJpbmcobV9taW51dGUpKSkpOworCisgICAgaWYgKG1fc2Vjb25kICE9IFNlY29uZDo6
Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5z
ZWNvbmQsIGpzTm9udHJpdmlhbFN0cmluZygmc3RhdGUsIEFTQ0lJTGl0ZXJhbChzZWNvbmRTdHJp
bmcobV9zZWNvbmQpKSkpOworCisgICAgaWYgKG1fdGltZVpvbmVOYW1lICE9IFRpbWVab25lTmFt
ZTo6Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVz
LT50aW1lWm9uZU5hbWUsIGpzTm9udHJpdmlhbFN0cmluZygmc3RhdGUsIEFTQ0lJTGl0ZXJhbCh0
aW1lWm9uZU5hbWVTdHJpbmcobV90aW1lWm9uZU5hbWUpKSkpOworCisgICAgcmV0dXJuIG9wdGlv
bnM7Cit9CisKK0pTVmFsdWUgSW50bERhdGVUaW1lRm9ybWF0Ojpmb3JtYXQoRXhlY1N0YXRlJiBz
dGF0ZSwgZG91YmxlIHZhbHVlKQorewogICAgIC8vIDEyLjMuNCBGb3JtYXREYXRlVGltZSBhYnN0
cmFjdCBvcGVyYXRpb24gKEVDTUEtNDAyIDIuMCkKKyAgICBpZiAoIW1faW5pdGlhbGl6ZWREYXRl
VGltZUZvcm1hdCkgeworICAgICAgICBpbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoc3RhdGUsIGpz
VW5kZWZpbmVkKCksIGpzVW5kZWZpbmVkKCkpOworICAgICAgICBBU1NFUlQoIXN0YXRlLmhhZEV4
Y2VwdGlvbigpKTsKKyAgICB9CiAKICAgICAvLyAxLiBJZiB4IGlzIG5vdCBhIGZpbml0ZSBOdW1i
ZXIsIHRoZW4gdGhyb3cgYSBSYW5nZUVycm9yIGV4Y2VwdGlvbi4KICAgICBpZiAoIXN0ZDo6aXNm
aW5pdGUodmFsdWUpKQotICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93UmFuZ2VF
cnJvcihzdGF0ZSwgQVNDSUlMaXRlcmFsKCJkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0
ZVRpbWVGb3JtYXQuZm9ybWF0KCkiKSkpOworICAgICAgICByZXR1cm4gdGhyb3dSYW5nZUVycm9y
KCZzdGF0ZSwgQVNDSUlMaXRlcmFsKCJkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRp
bWVGb3JtYXQgZm9ybWF0KCkiKSk7CiAKICAgICAvLyBGSVhNRTogaW1wbGVtZW50IDIgLSA5CiAK
ICAgICAvLyBSZXR1cm4gbmV3IERhdGUodmFsdWUpLnRvU3RyaW5nKCkgdW50aWwgcHJvcGVybHkg
aW1wbGVtZW50ZWQuCi0gICAgVk0mIHZtID0gc3RhdGUtPnZtKCk7Ci0gICAgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCA9IHN0YXRlLT5jYWxsZWUoKS0+Z2xvYmFsT2JqZWN0KCk7CisgICAg
Vk0mIHZtID0gc3RhdGUudm0oKTsKKyAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0g
c3RhdGUuY2FsbGVlKCktPmdsb2JhbE9iamVjdCgpOwogICAgIERhdGVJbnN0YW5jZSogZCA9IERh
dGVJbnN0YW5jZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QtPmRhdGVTdHJ1Y3R1cmUoKSwgdmFs
dWUpOwotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSlNWYWx1ZShkKS50b1N0cmluZyhzdGF0
ZSkpOworICAgIHJldHVybiBKU1ZhbHVlKGQpLnRvU3RyaW5nKCZzdGF0ZSk7CiB9CiAKIH0gLy8g
bmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bERhdGVUaW1lRm9ybWF0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
RGF0ZVRpbWVGb3JtYXQuaAppbmRleCA3ZGFlZDEzOGZiMDhkY2ZhM2JlNjdkMzdjODNhNDdkYjRh
YWJjYmQ3Li5mMDE5OGVmNGNmMDgwN2JjZDI0MmRmMDI0ZDk3MGNiMDQ4M2E5YTU5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuaAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuaApA
QCAtNDQsNiArNDQsMTAgQEAgcHVibGljOgogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgdm9p
ZCBpbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoRXhlY1N0YXRlJiwgSlNWYWx1ZSBsb2NhbGVzLCBK
U1ZhbHVlIG9wdGlvbnMpOworICAgIEpTVmFsdWUgZm9ybWF0KEV4ZWNTdGF0ZSYsIGRvdWJsZSB2
YWx1ZSk7CisgICAgSlNPYmplY3QqIHJlc29sdmVkT3B0aW9ucyhFeGVjU3RhdGUmKTsKKwogICAg
IEpTQm91bmRGdW5jdGlvbiogYm91bmRGb3JtYXQoKSBjb25zdCB7IHJldHVybiBtX2JvdW5kRm9y
bWF0LmdldCgpOyB9CiAgICAgdm9pZCBzZXRCb3VuZEZvcm1hdChWTSYsIEpTQm91bmRGdW5jdGlv
biopOwogCkBAIC01MywxMCArNTcsNDYgQEAgcHJvdGVjdGVkOgogICAgIHN0YXRpYyB2b2lkIGRl
c3Ryb3koSlNDZWxsKik7CiAgICAgc3RhdGljIHZvaWQgdmlzaXRDaGlsZHJlbihKU0NlbGwqLCBT
bG90VmlzaXRvciYpOwogCitwcml2YXRlOgorICAgIGVudW0gY2xhc3MgV2Vla2RheSB7IE5vbmUs
IE5hcnJvdywgU2hvcnQsIExvbmcgfTsKKyAgICBlbnVtIGNsYXNzIEVyYSB7IE5vbmUsIE5hcnJv
dywgU2hvcnQsIExvbmcgfTsKKyAgICBlbnVtIGNsYXNzIFllYXIgeyBOb25lLCBUd29EaWdpdCwg
TnVtZXJpYyB9OworICAgIGVudW0gY2xhc3MgTW9udGggeyBOb25lLCBUd29EaWdpdCwgTnVtZXJp
YywgTmFycm93LCBTaG9ydCwgTG9uZyB9OworICAgIGVudW0gY2xhc3MgRGF5IHsgTm9uZSwgVHdv
RGlnaXQsIE51bWVyaWMgfTsKKyAgICBlbnVtIGNsYXNzIEhvdXIgeyBOb25lLCBUd29EaWdpdCwg
TnVtZXJpYyB9OworICAgIGVudW0gY2xhc3MgTWludXRlIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVy
aWMgfTsKKyAgICBlbnVtIGNsYXNzIFNlY29uZCB7IE5vbmUsIFR3b0RpZ2l0LCBOdW1lcmljIH07
CisgICAgZW51bSBjbGFzcyBUaW1lWm9uZU5hbWUgeyBOb25lLCBTaG9ydCwgTG9uZyB9OworCisg
ICAgc3RhdGljIGNvbnN0IGNoYXIqIHdlZWtkYXlTdHJpbmcoV2Vla2RheSk7CisgICAgc3RhdGlj
IGNvbnN0IGNoYXIqIGVyYVN0cmluZyhFcmEpOworICAgIHN0YXRpYyBjb25zdCBjaGFyKiB5ZWFy
U3RyaW5nKFllYXIpOworICAgIHN0YXRpYyBjb25zdCBjaGFyKiBtb250aFN0cmluZyhNb250aCk7
CisgICAgc3RhdGljIGNvbnN0IGNoYXIqIGRheVN0cmluZyhEYXkpOworICAgIHN0YXRpYyBjb25z
dCBjaGFyKiBob3VyU3RyaW5nKEhvdXIpOworICAgIHN0YXRpYyBjb25zdCBjaGFyKiBtaW51dGVT
dHJpbmcoTWludXRlKTsKKyAgICBzdGF0aWMgY29uc3QgY2hhciogc2Vjb25kU3RyaW5nKFNlY29u
ZCk7CisgICAgc3RhdGljIGNvbnN0IGNoYXIqIHRpbWVab25lTmFtZVN0cmluZyhUaW1lWm9uZU5h
bWUpOworCisgICAgYm9vbCBtX2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQgeyBmYWxzZSB9Owor
ICAgIHZvaWQgc2V0Rm9ybWF0c0Zyb21QYXR0ZXJuKGNvbnN0IFN0cmluZ1ZpZXcmKTsKICAgICBX
cml0ZUJhcnJpZXI8SlNCb3VuZEZ1bmN0aW9uPiBtX2JvdW5kRm9ybWF0OworCisgICAgU3RyaW5n
IG1fbG9jYWxlIHsgQVNDSUlMaXRlcmFsKCJlbiIpIH07CisgICAgU3RyaW5nIG1fY2FsZW5kYXIg
eyBBU0NJSUxpdGVyYWwoImdyZWdvcmlhbiIpIH07CisgICAgU3RyaW5nIG1fbnVtYmVyaW5nU3lz
dGVtIHsgQVNDSUlMaXRlcmFsKCJsYXRuIikgfTsKKyAgICBTdHJpbmcgbV90aW1lWm9uZSB7IEFT
Q0lJTGl0ZXJhbCgiVVRDIikgfTsKKyAgICBib29sIG1faG91cjEyIHsgdHJ1ZSB9OworICAgIFdl
ZWtkYXkgbV93ZWVrZGF5IHsgV2Vla2RheTo6Tm9uZSB9OworICAgIEVyYSBtX2VyYSB7IEVyYTo6
Tm9uZSB9OworICAgIFllYXIgbV95ZWFyIHsgWWVhcjo6Tm9uZSB9OworICAgIE1vbnRoIG1fbW9u
dGggeyBNb250aDo6Tm9uZSB9OworICAgIERheSBtX2RheSB7IERheTo6Tm9uZSB9OworICAgIEhv
dXIgbV9ob3VyIHsgSG91cjo6Tm9uZSB9OworICAgIE1pbnV0ZSBtX21pbnV0ZSB7IE1pbnV0ZTo6
Tm9uZSB9OworICAgIFNlY29uZCBtX3NlY29uZCB7IFNlY29uZDo6Tm9uZSB9OworICAgIFRpbWVa
b25lTmFtZSBtX3RpbWVab25lTmFtZSB7IFRpbWVab25lTmFtZTo6Tm9uZSB9OwogfTsKLSAgICAK
LUVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVUaW1lRm9ybWF0RnVuY0Zvcm1h
dERhdGVUaW1lKEV4ZWNTdGF0ZSopOwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3Ry
dWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9y
bWF0Q29uc3RydWN0b3IuY3BwCmluZGV4IDFlODlmYWFhYjdlYjg4YzdmODY0ZTBmNTNmMjU1Y2I4
YTJjNWVlY2MuLjZhN2MyZTRhZmEzNzRkNzdmZTVmYjBiZTJjN2M3Y2I1NDMwNzc0YWMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENv
bnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0
ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKQEAgLTEwNCw4ICsxMDQsOSBAQCBzdGF0aWMgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RJbnRsRGF0ZVRpbWVGb3JtYXQoRXhl
Y1N0YXRlKiBzdGF0ZQogICAgIEFTU0VSVChkYXRlVGltZUZvcm1hdCk7CiAKICAgICAvLyA0LiBS
ZXR1cm4gSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBv
cHRpb25zKS4KLSAgICAvLyBGSVhNRTogcmV0dXJuIEpTVmFsdWU6OmVuY29kZShJbml0aWFsaXpl
RGF0ZVRpbWVGb3JtYXQoZGF0ZVRpbWVGb3JtYXQsIGxvY2FsZXMsIG9wdGlvbnMpKTsKLQorICAg
IEpTVmFsdWUgbG9jYWxlcyA9IHN0YXRlLT5hcmd1bWVudCgwKTsKKyAgICBKU1ZhbHVlIG9wdGlv
bnMgPSBzdGF0ZS0+YXJndW1lbnQoMSk7CisgICAgZGF0ZVRpbWVGb3JtYXQtPmluaXRpYWxpemVE
YXRlVGltZUZvcm1hdCgqc3RhdGUsIGxvY2FsZXMsIG9wdGlvbnMpOwogICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUoZGF0ZVRpbWVGb3JtYXQpOwogfQogCkBAIC0xMjMsOCArMTI0LDkgQEAgc3Rh
dGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY2FsbEludGxEYXRlVGltZUZvcm1hdChF
eGVjU3RhdGUqIHN0YXRlKQogICAgIEFTU0VSVChkYXRlVGltZUZvcm1hdCk7CiAKICAgICAvLyA0
LiBSZXR1cm4gSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVz
LCBvcHRpb25zKS4KLSAgICAvLyBGSVhNRTogcmV0dXJuIEpTVmFsdWU6OmVuY29kZShJbml0aWFs
aXplRGF0ZVRpbWVGb3JtYXQoZGF0ZVRpbWVGb3JtYXQsIGxvY2FsZXMsIG9wdGlvbnMpKTsKLQor
ICAgIEpTVmFsdWUgbG9jYWxlcyA9IHN0YXRlLT5hcmd1bWVudCgwKTsKKyAgICBKU1ZhbHVlIG9w
dGlvbnMgPSBzdGF0ZS0+YXJndW1lbnQoMSk7CisgICAgZGF0ZVRpbWVGb3JtYXQtPmluaXRpYWxp
emVEYXRlVGltZUZvcm1hdCgqc3RhdGUsIGxvY2FsZXMsIG9wdGlvbnMpOwogICAgIHJldHVybiBK
U1ZhbHVlOjplbmNvZGUoZGF0ZVRpbWVGb3JtYXQpOwogfQogCkBAIC0xNjEsNyArMTYzLDcgQEAg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rv
ckZ1bmNTdXBwb3J0ZWRMb2NhbGVzT2YKICAgICAvLyAzLiBSZXR1cm4gU3VwcG9ydGVkTG9jYWxl
cyhhdmFpbGFibGVMb2NhbGVzLCByZXF1ZXN0ZWRMb2NhbGVzLCBvcHRpb25zKS4KICAgICByZXR1
cm4gSlNWYWx1ZTo6ZW5jb2RlKHN1cHBvcnRlZExvY2FsZXMoKnN0YXRlLCBhdmFpbGFibGVMb2Nh
bGVzLCByZXF1ZXN0ZWRMb2NhbGVzLCBzdGF0ZS0+YXJndW1lbnQoMSkpKTsKIH0KLSAgICAKKwog
dm9pZCBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcjo6dmlzaXRDaGlsZHJlbihKU0NlbGwq
IGNlbGwsIFNsb3RWaXNpdG9yJiB2aXNpdG9yKQogewogICAgIEludGxEYXRlVGltZUZvcm1hdENv
bnN0cnVjdG9yKiB0aGlzT2JqZWN0ID0ganNDYXN0PEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVj
dG9yKj4oY2VsbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcAppbmRleCBkNWU1MjU5ODI0ODBi
MWVkNDkxZTZiN2I4ZmIxMmJiOGFmMWFlZTdkLi5mZjQ4ZWM0NTVkYWQxNDU1MWNiYjFkMjMzZTdl
YjJiODBjMDdlMmFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKQEAgLTI4LDE5ICsyOCwx
OCBAQAogCiAjaWYgRU5BQkxFKElOVEwpCiAKKyNpbmNsdWRlICJEYXRlQ29uc3RydWN0b3IuaCIK
ICNpbmNsdWRlICJFcnJvci5oIgogI2luY2x1ZGUgIkludGxEYXRlVGltZUZvcm1hdC5oIgorI2lu
Y2x1ZGUgIkludGxPYmplY3QuaCIKICNpbmNsdWRlICJKU0JvdW5kRnVuY3Rpb24uaCIKICNpbmNs
dWRlICJKU0NKU1ZhbHVlSW5saW5lcy5oIgogI2luY2x1ZGUgIkpTQ2VsbElubGluZXMuaCIKICNp
bmNsdWRlICJKU09iamVjdC5oIgotI2luY2x1ZGUgIk9iamVjdENvbnN0cnVjdG9yLmgiCiAjaW5j
bHVkZSAiU3RydWN0dXJlSW5saW5lcy5oIgogCiBuYW1lc3BhY2UgSlNDIHsKIAotU1RBVElDX0FT
U0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlw
ZSk7Ci0KIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZv
cm1hdFByb3RvdHlwZUdldHRlckZvcm1hdChFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUZ1bmNSZXNvbHZl
ZE9wdGlvbnMoRXhlY1N0YXRlKik7CiAKQEAgLTg2LDYgKzg1LDMzIEBAIGJvb2wgSW50bERhdGVU
aW1lRm9ybWF0UHJvdG90eXBlOjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwg
RXhlY1N0YXRlCiAgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxKU09iamVjdD4oc3Rh
dGUsIGRhdGVUaW1lRm9ybWF0UHJvdG90eXBlVGFibGUsIGpzQ2FzdDxJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGUqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCitzdGF0aWMg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0
RGF0ZVRpbWUoRXhlY1N0YXRlKiBzdGF0ZSkKK3sKKyAgICAvLyAxMi4zLjQgRGF0ZVRpbWUgRm9y
bWF0IEZ1bmN0aW9ucyAoRUNNQS00MDIgMi4wKQorICAgIC8vIDEuIExldCBkdGYgYmUgdGhlIHRo
aXMgdmFsdWUuCisgICAgLy8gMi4gQXNzZXJ0OiBUeXBlKGR0ZikgaXMgT2JqZWN0IGFuZCBkdGYg
aGFzIGFuIFtbaW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdF1dIGludGVybmFsIHNsb3Qgd2hvc2Ug
dmFsdWUgaXMgdHJ1ZS4KKyAgICBJbnRsRGF0ZVRpbWVGb3JtYXQqIGZvcm1hdCA9IGpzQ2FzdDxJ
bnRsRGF0ZVRpbWVGb3JtYXQqPihzdGF0ZS0+dGhpc1ZhbHVlKCkpOworCisgICAgSlNWYWx1ZSBk
YXRlID0gc3RhdGUtPmFyZ3VtZW50KDApOworICAgIGRvdWJsZSB2YWx1ZTsKKworICAgIC8vIDMu
IElmIGRhdGUgaXMgbm90IHByb3ZpZGVkIG9yIGlzIHVuZGVmaW5lZCwgdGhlbgorICAgIGlmIChk
YXRlLmlzVW5kZWZpbmVkKCkpIHsKKyAgICAgICAgLy8gYS4gTGV0IHggYmUgJURhdGVfbm93JSgp
LgorICAgICAgICB2YWx1ZSA9IEpTVmFsdWU6OmRlY29kZShkYXRlTm93KHN0YXRlKSkudG9OdW1i
ZXIoc3RhdGUpOworICAgIH0gZWxzZSB7CisgICAgICAgIC8vIDQuIEVsc2UKKyAgICAgICAgLy8g
YS4gTGV0IHggYmUgVG9OdW1iZXIoZGF0ZSkuCisgICAgICAgIHZhbHVlID0gZGF0ZS50b051bWJl
cihzdGF0ZSk7CisgICAgICAgIC8vIGIuIFJldHVybklmQWJydXB0KHgpLgorICAgICAgICBpZiAo
c3RhdGUtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZShqc1VuZGVmaW5lZCgpKTsKKyAgICB9CisKKyAgICAvLyA1LiBSZXR1cm4gRm9ybWF0RGF0ZVRp
bWUoZHRmLCB4KS4KKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGZvcm1hdC0+Zm9ybWF0KCpz
dGF0ZSwgdmFsdWUpKTsKK30KKwogRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0
ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0YXRlKiBzdGF0ZSkKIHsKICAg
ICAvLyAxMi4zLjMgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0IChFQ01BLTQw
MiAyLjApCkBAIC05NCw3ICsxMjAsNyBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIElu
dGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUdldHRlckZvcm1hdChFeGVjU3RhdGUqCiAgICAgLy8g
Mi4gUmV0dXJuSWZBYnJ1cHQoZHRmKS4KICAgICBpZiAoIWR0ZikKICAgICAgICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihzdGF0ZSwgQVNDSUlMaXRlcmFsKCJJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3Qg
YW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0ZVRpbWVGb3JtYXQiKSkpOwotICAgIAorCiAg
ICAgSlNCb3VuZEZ1bmN0aW9uKiBib3VuZEZvcm1hdCA9IGR0Zi0+Ym91bmRGb3JtYXQoKTsKICAg
ICAvLyAzLiBJZiB0aGUgW1tib3VuZEZvcm1hdF1dIGludGVybmFsIHNsb3Qgb2YgdGhpcyBEYXRl
VGltZUZvcm1hdCBvYmplY3QgaXMgdW5kZWZpbmVkLAogICAgIGlmICghYm91bmRGb3JtYXQpIHsK
QEAgLTEwNiw3ICsxMzIsNyBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRl
VGltZUZvcm1hdFByb3RvdHlwZUdldHRlckZvcm1hdChFeGVjU3RhdGUqCiAgICAgICAgIEpTQXJy
YXkqIGJvdW5kQXJncyA9IEpTQXJyYXk6OnRyeUNyZWF0ZVVuaW5pdGlhbGl6ZWQodm0sIGdsb2Jh
bE9iamVjdC0+YXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGVEdXJpbmdBbGxvY2F0aW9uKEFy
cmF5V2l0aFVuZGVjaWRlZCksIDApOwogICAgICAgICBpZiAoIWJvdW5kQXJncykKICAgICAgICAg
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dPdXRPZk1lbW9yeUVycm9yKHN0YXRlKSk7
Ci0gICAgICAgIAorCiAgICAgICAgIC8vIGMuIExldCBiZiBiZSBCb3VuZEZ1bmN0aW9uQ3JlYXRl
KEYsIMKrdGhpcyB2YWx1ZcK7KS4KICAgICAgICAgYm91bmRGb3JtYXQgPSBKU0JvdW5kRnVuY3Rp
b246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCB0YXJnZXRPYmplY3QsIGR0ZiwgYm91bmRBcmdz
LCAxLCBBU0NJSUxpdGVyYWwoImZvcm1hdCIpKTsKICAgICAgICAgLy8gZC4gU2V0IGR0Zi5bW2Jv
dW5kRm9ybWF0XV0gdG8gYmYuCkBAIC0xMTksMTggKzE0NSwxMSBAQCBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZUdldHRlckZvcm1hdChFeGVj
U3RhdGUqCiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdFBy
b3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGlvbnMoRXhlY1N0YXRlKiBzdGF0ZSkKIHsKICAgICAvLyAx
Mi4zLjUgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgKEVD
TUEtNDAyIDIuMCkKLSAgICBJbnRsRGF0ZVRpbWVGb3JtYXQqIGR0ZiA9IGpzRHluYW1pY0Nhc3Q8
SW50bERhdGVUaW1lRm9ybWF0Kj4oc3RhdGUtPnRoaXNWYWx1ZSgpKTsKLSAgICBpZiAoIWR0ZikK
KyAgICBJbnRsRGF0ZVRpbWVGb3JtYXQqIGRhdGVUaW1lRm9ybWF0ID0ganNEeW5hbWljQ2FzdDxJ
bnRsRGF0ZVRpbWVGb3JtYXQqPihzdGF0ZS0+dGhpc1ZhbHVlKCkpOworICAgIGlmICghZGF0ZVRp
bWVGb3JtYXQpCiAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3Io
c3RhdGUsIEFTQ0lJTGl0ZXJhbCgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2
ZWRPcHRpb25zIGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXpl
ZCBhcyBhIERhdGVUaW1lRm9ybWF0IikpKTsKIAotICAgIC8vIFRoZSBmdW5jdGlvbiByZXR1cm5z
IGEgbmV3IG9iamVjdCB3aG9zZSBwcm9wZXJ0aWVzIGFuZCBhdHRyaWJ1dGVzIGFyZSBzZXQgYXMg
aWYgY29uc3RydWN0ZWQgYnkgYW4gb2JqZWN0IGxpdGVyYWwgYXNzaWduaW5nIHRvIGVhY2ggb2Yg
dGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzIHRoZSB2YWx1ZSBvZiB0aGUgY29ycmVzcG9uZGluZyBp
bnRlcm5hbCBzbG90IG9mIHRoaXMgRGF0ZVRpbWVGb3JtYXQgb2JqZWN0IChzZWUgMTIuNCk6IGxv
Y2FsZSwgY2FsZW5kYXIsIG51bWJlcmluZ1N5c3RlbSwgdGltZVpvbmUsIGhvdXIxMiwgd2Vla2Rh
eSwgZXJhLCB5ZWFyLCBtb250aCwgZGF5LCBob3VyLCBtaW51dGUsIHNlY29uZCwgYW5kIHRpbWVa
b25lTmFtZS4gUHJvcGVydGllcyB3aG9zZSBjb3JyZXNwb25kaW5nIGludGVybmFsIHNsb3RzIGFy
ZSBub3QgcHJlc2VudCBhcmUgbm90IGFzc2lnbmVkLgotICAgIC8vIE5vdGU6IEluIHRoaXMgdmVy
c2lvbiBvZiB0aGUgRUNNQVNjcmlwdCAyMDE1IEludGVybmF0aW9uYWxpemF0aW9uIEFQSSwgdGhl
IHRpbWVab25lIHByb3BlcnR5IHdpbGwgYmUgdGhlIG5hbWUgb2YgdGhlIGRlZmF1bHQgdGltZSB6
b25lIGlmIG5vIHRpbWVab25lIHByb3BlcnR5IHdhcyBwcm92aWRlZCBpbiB0aGUgb3B0aW9ucyBv
YmplY3QgcHJvdmlkZWQgdG8gdGhlIEludGwuRGF0ZVRpbWVGb3JtYXQgY29uc3RydWN0b3IuIFRo
ZSBwcmV2aW91cyB2ZXJzaW9uIGxlZnQgdGhlIHRpbWVab25lIHByb3BlcnR5IHVuZGVmaW5lZCBp
biB0aGlzIGNhc2UuCi0KLSAgICBKU09iamVjdCogb3B0aW9ucyA9IGNvbnN0cnVjdEVtcHR5T2Jq
ZWN0KHN0YXRlKTsKLQotICAgIC8vIEZJWE1FOiBQb3B1bGF0ZSBvYmplY3QgZnJvbSBpbnRlcm5h
bCBzbG90cy4KLQotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUob3B0aW9ucyk7CisgICAgcmV0
dXJuIEpTVmFsdWU6OmVuY29kZShkYXRlVGltZUZvcm1hdC0+cmVzb2x2ZWRPcHRpb25zKCpzdGF0
ZSkpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bE9iamVjdC5jcHAKaW5kZXggY2Q5MDY4NjNiMTlkZDNjYjc0Mjc5OWY0MmQ4NDJj
NzQxMTQ4NzNiYS4uYzE0N2U5MDg0Y2E0ZGY3NWU4OTEyYjQwY2RiN2JhY2Y3MzlkMWY1MSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5jcHAKQEAgLTQ1LDYg
KzQ1LDcgQEAKICNpbmNsdWRlICJMb29rdXAuaCIKICNpbmNsdWRlICJPYmplY3RQcm90b3R5cGUu
aCIKICNpbmNsdWRlIDx1bmljb2RlL3Vsb2MuaD4KKyNpbmNsdWRlIDx1bmljb2RlL3VudW1zeXMu
aD4KICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogCiBuYW1lc3BhY2UgSlNDIHsKQEAgLTc1
MSw2ICs3NTIsNyBAQCBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiByZXNvbHZlTG9jYWxlKGNvbnN0
IEhhc2hTZXQ8U3RyaW5nPiYgYXZhaWxhYmxlTG9jYWxlcywgYwogICAgICAgICAgICAgc2l6ZV90
IGtleVBvcyA9IGV4dGVuc2lvblN1YnRhZ3MuZmluZChrZXkpOwogICAgICAgICAgICAgLy8gaWku
IElmIGtleVBvcyAhPSAtMSwgdGhlbgogICAgICAgICAgICAgaWYgKGtleVBvcyAhPSBub3RGb3Vu
ZCkgeworICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBodHRwczovL2dpdGh1Yi5jb20vdGMzOS9l
Y21hNDAyL2lzc3Vlcy81OQogICAgICAgICAgICAgICAgIC8vIDEuIElmIGtleVBvcyArIDEgPCBl
eHRlbnNpb25TdWJ0YWdzTGVuZ3RoIGFuZCB0aGUgbGVuZ3RoIG9mIHRoZSByZXN1bHQgb2YgR2V0
KGV4dGVuc2lvblN1YnRhZ3MsIFRvU3RyaW5nKGtleVBvcyArMSkpIGlzIGdyZWF0ZXIgdGhhbiAy
LCB0aGVuCiAgICAgICAgICAgICAgICAgaWYgKGtleVBvcyArIDEgPCBleHRlbnNpb25TdWJ0YWdz
LnNpemUoKSAmJiBleHRlbnNpb25TdWJ0YWdzW2tleVBvcyArIDFdLmxlbmd0aCgpID4gMikgewog
ICAgICAgICAgICAgICAgICAgICBjb25zdCBTdHJpbmcmIHJlcXVlc3RlZFZhbHVlID0gZXh0ZW5z
aW9uU3VidGFnc1trZXlQb3MgKyAxXTsKQEAgLTkyMSw2ICs5MjMsNzQgQEAgSlNWYWx1ZSBzdXBw
b3J0ZWRMb2NhbGVzKEV4ZWNTdGF0ZSYgc3RhdGUsIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiYgYXZh
aWxhYmxlTG9jYWwKICAgICByZXR1cm4gc3VwcG9ydGVkTG9jYWxlczsKIH0KIAorVmVjdG9yPFN0
cmluZz4gZ2V0TnVtYmVyaW5nU3lzdGVtc0ZvckxvY2FsZShjb25zdCBTdHJpbmcmIGxvY2FsZSkK
K3sKKyAgICAvLyB1bnVtc3lzX29wZW5BdmFpbGFibGVOYW1lcyBhcHBlYXJzIHRvIG9ubHkgYmUg
YWJsZSB1c2FibGUgb25jZSBwZXIgcHJvY2Vzcywgc28gdXNlIHN0YXRpYyBsaXN0IGluc3RlYWQu
CisgICAgVUVycm9yQ29kZSBzdGF0dXMoVV9aRVJPX0VSUk9SKTsKKyAgICBVTnVtYmVyaW5nU3lz
dGVtKiBkZWZhdWx0U3lzdGVtID0gdW51bXN5c19vcGVuKGxvY2FsZS51dGY4KCkuZGF0YSgpLCAm
c3RhdHVzKTsKKyAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworICAgIFN0cmluZyBkZWZh
dWx0U3lzdGVtTmFtZSh1bnVtc3lzX2dldE5hbWUoZGVmYXVsdFN5c3RlbSkpOworICAgIHVudW1z
eXNfY2xvc2UoZGVmYXVsdFN5c3RlbSk7CisKKyAgICBWZWN0b3I8U3RyaW5nPiBudW1iZXJpbmdT
eXN0ZW1zKHsKKyAgICAgICAgZGVmYXVsdFN5c3RlbU5hbWUsCisgICAgICAgIEFTQ0lJTGl0ZXJh
bCgiYXJhYiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImFyYWJleHQiKSwKKyAgICAgICAgQVND
SUlMaXRlcmFsKCJhcm1uIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiYXJtbmxvdyIpLAorICAg
ICAgICBBU0NJSUxpdGVyYWwoImJhbGkiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJiZW5nIiks
CisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiY2hhbSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImRl
dmEiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJldGhpIiksCisgICAgICAgIEFTQ0lJTGl0ZXJh
bCgiZnVsbHdpZGUiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJnZW9yIiksCisgICAgICAgIEFT
Q0lJTGl0ZXJhbCgiZ3JlayIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImdyZWtsb3ciKSwKKyAg
ICAgICAgQVNDSUlMaXRlcmFsKCJndWpyIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiZ3VydSIp
LAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbmlkYXlzIiksCisgICAgICAgIEFTQ0lJTGl0ZXJh
bCgiaGFuaWRlYyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbnMiKSwKKyAgICAgICAgQVND
SUlMaXRlcmFsKCJoYW5zZmluIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaGFudCIpLAorICAg
ICAgICBBU0NJSUxpdGVyYWwoImhhbnRmaW4iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJoZWJy
IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiamF2YSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwo
ImpwYW4iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJqcGFuZmluIiksCisgICAgICAgIEFTQ0lJ
TGl0ZXJhbCgia2FsaSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImtobXIiKSwKKyAgICAgICAg
QVNDSUlMaXRlcmFsKCJrbmRhIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibGFuYSIpLAorICAg
ICAgICBBU0NJSUxpdGVyYWwoImxhbmF0aGFtIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibGFv
byIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImxhdG4iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFs
KCJsZXBjIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibGltYiIpLAorICAgICAgICBBU0NJSUxp
dGVyYWwoIm1seW0iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJtb25nIiksCisgICAgICAgIEFT
Q0lJTGl0ZXJhbCgibXRlaSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoIm15bXIiKSwKKyAgICAg
ICAgQVNDSUlMaXRlcmFsKCJteW1yc2hhbiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoIm5rb28i
KSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJvbGNrIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgi
b3J5YSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInJvbWFuIiksCisgICAgICAgIEFTQ0lJTGl0
ZXJhbCgicm9tYW5sb3ciKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJzYXVyIiksCisgICAgICAg
IEFTQ0lJTGl0ZXJhbCgic3VuZCIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInRhbHUiKSwKKyAg
ICAgICAgQVNDSUlMaXRlcmFsKCJ0YW1sIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgidGFtbGRl
YyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInRlbHUiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFs
KCJ0aGFpIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgidGlidCIpLAorICAgICAgICBBU0NJSUxp
dGVyYWwoInZhaWkiKSwKKyAgICB9KTsKKyAgICByZXR1cm4gbnVtYmVyaW5nU3lzdGVtczsKK30K
KwogfSAvLyBuYW1lc3BhY2UgSlNDCiAKICNlbmRpZiAvLyBFTkFCTEUoSU5UTCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaAppbmRleCAzMTg5OTgyNzRmMDBlOTkx
MDg2YWRkZmM2MzEwYzliYzlkMjY0NTFkLi4yOTZhOTBhZjYzOGYwODQ3ZWQyOTliOGU4NGJiMTY2
YTA2OWI4OTlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
T2JqZWN0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5o
CkBAIC02NCw4ICs2NCw5IEBAIFN0cmluZyBpbnRsU3RyaW5nT3B0aW9uKEV4ZWNTdGF0ZSYsIEpT
VmFsdWUgb3B0aW9ucywgUHJvcGVydHlOYW1lLCBzdGQ6OmluaXRpYWxpCiBWZWN0b3I8U3RyaW5n
PiBjYW5vbmljYWxpemVMb2NhbGVMaXN0KEV4ZWNTdGF0ZSYsIEpTVmFsdWUgbG9jYWxlcyk7CiBI
YXNoTWFwPFN0cmluZywgU3RyaW5nPiByZXNvbHZlTG9jYWxlKGNvbnN0IEhhc2hTZXQ8U3RyaW5n
PiYgYXZhaWxhYmxlTG9jYWxlcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHJlcXVlc3RlZExvY2Fs
ZXMsIGNvbnN0IEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+JiBvcHRpb25zLCBjb25zdCBjaGFyKiBj
b25zdCByZWxldmFudEV4dGVuc2lvbktleXNbXSwgc2l6ZV90IHJlbGV2YW50RXh0ZW5zaW9uS2V5
Q291bnQsIFZlY3RvcjxTdHJpbmc+ICgqbG9jYWxlRGF0YSkoY29uc3QgU3RyaW5nJiwgc2l6ZV90
KSk7CiBKU1ZhbHVlIHN1cHBvcnRlZExvY2FsZXMoRXhlY1N0YXRlJiwgY29uc3QgSGFzaFNldDxT
dHJpbmc+JiBhdmFpbGFibGVMb2NhbGVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcmVxdWVzdGVk
TG9jYWxlcywgSlNWYWx1ZSBvcHRpb25zKTsKLVN0cmluZyByZW1vdmVVbmljb2RlTG9jYWxlRXh0
ZW5zaW9uKGNvbnN0IFN0cmluZyYpOwotU3RyaW5nIGJlc3RBdmFpbGFibGVMb2NhbGUoY29uc3Qg
SGFzaFNldDxTdHJpbmc+JiwgY29uc3QgU3RyaW5nJik7CitTdHJpbmcgcmVtb3ZlVW5pY29kZUxv
Y2FsZUV4dGVuc2lvbihjb25zdCBTdHJpbmcmIGxvY2FsZSk7CitTdHJpbmcgYmVzdEF2YWlsYWJs
ZUxvY2FsZShjb25zdCBIYXNoU2V0PFN0cmluZz4mIGF2YWlsYWJsZUxvY2FsZXMsIGNvbnN0IFN0
cmluZyYgcmVxdWVzdGVkTG9jYWxlKTsKK1ZlY3RvcjxTdHJpbmc+IGdldE51bWJlcmluZ1N5c3Rl
bXNGb3JMb2NhbGUoY29uc3QgU3RyaW5nJiBsb2NhbGUpOwogCiB9IC8vIG5hbWVzcGFjZSBKU0MK
IApkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL09wdGlvbnNXaW4uY21ha2UgYi9Tb3VyY2UvY21h
a2UvT3B0aW9uc1dpbi5jbWFrZQppbmRleCAwYTg4NjE3MjE3MTE3M2ZkNWEwMGQwNzg5MDJiODc0
MzJiMjFmNTkxLi5lODhmYzZjOGFlOGQwNjFlZGYzZTE3MTNkOGFhODM5OGJiZDdlMGJlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvY21ha2UvT3B0aW9uc1dpbi5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2Uv
T3B0aW9uc1dpbi5jbWFrZQpAQCAtNTUsNyArNTUsNiBAQCBXRUJLSVRfT1BUSU9OX0RFRkFVTFRf
UE9SVF9WQUxVRShFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMIFBVQkxJQyBPRkYpCiBX
RUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfSU5QVVRfVFlQRV9NT05USCBQ
VUJMSUMgT0ZGKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOUFVU
X1RZUEVfVElNRSBQVUJMSUMgT0ZGKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUo
RU5BQkxFX0lOUFVUX1RZUEVfV0VFSyBQVUJMSUMgT0ZGKQotV0VCS0lUX09QVElPTl9ERUZBVUxU
X1BPUlRfVkFMVUUoRU5BQkxFX0lOVEwgUFVCTElDIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxU
X1BPUlRfVkFMVUUoRU5BQkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTIFBVQkxJQyBPTikK
IFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FU
SU9OUyBQVUJMSUMgT0ZGKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxF
X0xFR0FDWV9WRU5ET1JfUFJFRklYRVMgUFVCTElDIE9GRikKQEAgLTE2MywxMSArMTYyLDExIEBA
IGlmIChNU1ZDKQogCiAgICAgIyBUdXJuIG9mZiBjZXJ0YWluIGxpbmsgZmVhdHVyZXMKICAgICBh
ZGRfY29tcGlsZV9vcHRpb25zKC9HeS0gL29wZW5tcC0gL0dGLSkKLSAgICAKKwogICAgIGlmICgk
e0NNQUtFX0JVSUxEX1RZUEV9IE1BVENIRVMgIkRlYnVnIikKICAgICAgICAgc2V0KENNQUtFX1NI
QVJFRF9MSU5LRVJfRkxBR1MgIiR7Q01BS0VfU0hBUkVEX0xJTktFUl9GTEFHU30gL09QVDpOT1JF
RiAvT1BUOk5PSUNGIikKICAgICAgICAgc2V0KENNQUtFX0VYRV9MSU5LRVJfRkxBR1MgIiR7Q01B
S0VfRVhFX0xJTktFUl9GTEFHU30gL09QVDpOT1JFRiAvT1BUOk5PSUNGIikKLSAgICAgICAgCisK
ICAgICAgICAgIyBUbyBkZWJ1ZyBsaW5raW5nIHRpbWUgaXNzdWVzLCB1bmNvbW1lbnQgdGhlIGZv
bGxvd2luZyB0aHJlZSBsaW5lczoKICAgICAgICAgI2FkZF9jb21waWxlX29wdGlvbnMoL0J2KQog
ICAgICAgICAjc2V0KENNQUtFX1NIQVJFRF9MSU5LRVJfRkxBR1MgIiR7Q01BS0VfU0hBUkVEX0xJ
TktFUl9GTEFHU30gL1ZFUkJPU0UgL1ZFUkJPU0U6SU5DUiAvVElNRSIpCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMzcxMTdk
ZTMwOWI4NjZlYzI2ZDYwNTUwMzkwYmQ3OGMwYzM2NmQ5Ni4uYTQ0YWVmMDdjMjM5ZTAzY2M5NDA2
MTM4YzNlZmFhY2E4YjU5NmI1OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisr
KyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE1LTEyLTE4ICBB
bmR5IFZhbldhZ29uZXIgIDxhbmR5QGluc3RydWN0dXJlLmNvbT4KKworICAgICAgICBbSU5UTF0g
SW1wbGVtZW50IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyAo
KQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3NjAz
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBqcy9p
bnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dDogQWRkZWQgcmVzb2x2ZWRPcHRpb25zIHRl
c3RzLgorICAgICAgICAqIGpzL3NjcmlwdC10ZXN0cy9pbnRsLWRhdGV0aW1lZm9ybWF0LmpzOiBB
ZGRlZCByZXNvbHZlZE9wdGlvbnMgdGVzdHMuCisgICAgICAgIChzdHJpbmdfYXBwZWFyZWRfaGVy
ZSk6CisKIDIwMTUtMTItMTcgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3Jn
PgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxOTQyNDEgYW5kIHIxOTQyNTIu
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2pzL2ludGwtZGF0ZXRpbWVmb3JtYXQtZXhwZWN0ZWQudHh0Cmlu
ZGV4IGQwMTZjODAwNDdkNjRkMDIzOGI1Yzk2ZDdiOTBiNmM0YWUxYzllYTQuLjIzYjBmYzU2MDBi
NGU1N2U1ZGY3NDg2NDhhNjZmZTRiZmFjZjU4YjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pz
L2ludGwtZGF0ZXRpbWVmb3JtYXQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2pzL2lu
dGwtZGF0ZXRpbWVmb3JtYXQtZXhwZWN0ZWQudHh0CkBAIC01NCw3ICs1NCw3IEBAIFBBU1MgT2Jq
ZWN0LmRlZmluZVByb3BlcnR5KHt9LCAnZm9ybWF0JywgT2JqZWN0LmdldE93blByb3BlcnR5RGVz
Y3JpcHRvcihJbnRsLkRhCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1h
dCAhPT0gSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCBpcyB0cnVlCiBQQVNTIG5ldyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0ICE9PSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZv
cm1hdCBpcyB0cnVlCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCh7
IHZhbHVlT2YoKSB7IHRocm93IEVycm9yKCc0YicpIH0gfSkgdGhyZXcgZXhjZXB0aW9uIEVycm9y
OiA0Yi4KLVBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KEluZmluaXR5
KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZGF0ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGlu
IERhdGVUaW1lRm9ybWF0LmZvcm1hdCgpLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZS5mb3JtYXQoSW5maW5pdHkpIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBkYXRlIHZh
bHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQgZm9ybWF0KCkuCiBQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdC5jYWxsKG51bGwsIDApIGlzIEludGwuRGF0
ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5
cGUuZm9ybWF0LmNhbGwoSW50bC5EYXRlVGltZUZvcm1hdCgnYXInKSwgMCkgaXMgSW50bC5EYXRl
VGltZUZvcm1hdCgpLmZvcm1hdCgwKQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlw
ZS5mb3JtYXQuY2FsbCg1LCAwKSBpcyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApCkBA
IC02Myw4ICs2MywxNjk3IEBAIFBBU1MgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQu
Y2FsbChJbnRsLkRhdGVUaW1lRm9ybWF0KCdhcicpLCAwKSBpcyBJbnRsCiBQQVNTIG5ldyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0LmNhbGwoNSwgMCkgaXMgSW50bC5EYXRlVGltZUZvcm1h
dCgpLmZvcm1hdCgwKQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZl
ZE9wdGlvbnMubGVuZ3RoIGlzIDAKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zKCkgaXMgYW4gaW5zdGFuY2Ugb2YgT2JqZWN0CitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSBpcyBuZXcgSW50
bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZQorUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyBuZXcg
SW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlz
IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVy
aW5nU3lzdGVtIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCku
bnVtYmVyaW5nU3lzdGVtCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29s
dmVkT3B0aW9ucygpLndlZWtkYXkgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZl
ZE9wdGlvbnMoKS53ZWVrZGF5CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJl
c29sdmVkT3B0aW9ucygpLmVyYSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVk
T3B0aW9ucygpLmVyYQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZl
ZE9wdGlvbnMoKS55ZWFyIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRp
b25zKCkueWVhcgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMoKS5tb250aCBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9u
cygpLm1vbnRoCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucygpLmRheSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygp
LmRheQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMo
KS5ob3VyIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuaG91
cgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5o
b3VyMTIgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3Vy
MTIKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCku
bWludXRlIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubWlu
dXRlCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygp
LnNlY29uZCBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnNl
Y29uZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZU5hbWUgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZU5hbWUKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVz
b2x2ZWRPcHRpb25zKCkgPT09IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucygpIGlzIGZhbHNlCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJl
c29sdmVkT3B0aW9ucy5jYWxsKDUpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEludGwuRGF0
ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhh
dCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdC4KK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnJCcpIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBpbnZh
bGlkIGxhbmd1YWdlIHRhZzogJC4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCBudWxs
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
KS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyB1bmRlZmluZWQKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbnVt
ZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5k
YXkgaXMgJ251bWVyaWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRP
cHRpb25zKCkueWVhciBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiBpcyB1bmRlZmluZWQKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUgaXMgdW5k
ZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCku
c2Vjb25kIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IGxvY2FsZU1hdGNoZXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdub3Bl
JyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIG5vcGUuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBsb2NhbGVNYXRjaGVyOidiYWQnIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9y
OiBsb2NhbGVNYXRjaGVyIG11c3QgYmUgZWl0aGVyICJsb29rdXAiIG9yICJiZXN0IGZpdCIuCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBsb2NhbGVNYXRjaGVyOidsb29rdXAnIH0p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgbG9jYWxlTWF0Y2hlcjonYmVzdCBmaXQnIH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjogeyB0b1N0cmlu
ZygpIHsgdGhyb3cgJ25vcGUnIH0gfSB9KSB0aHJldyBleGNlcHRpb24gbm9wZS4KK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2JhZCcgfSkgdGhyZXcgZXhj
ZXB0aW9uIFJhbmdlRXJyb3I6IGZvcm1hdE1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgImJhc2ljIiBv
ciAiYmVzdCBmaXQiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0
Y2hlcjonYmFzaWMnIH0pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjonYmVzdCBmaXQnIH0pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdub3doZXJlL2JvZ3VzJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogaW52YWxpZCB0
aW1lIHpvbmU6IG5vd2hlcmUvYm9ndXMuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ25vcGUnIH0gfSB9KSB0aHJldyBleGNl
cHRpb24gbm9wZS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
YW1lcmljYS9kZW52ZXInIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNh
L0RlbnZlcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQU1F
UklDQS9MT1NfQU5HRUxFUycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJp
Y2EvTG9zX0FuZ2VsZXMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBbWVyaWNhL0F0a2EnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdB
bWVyaWNhL0FkYWsnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J0FtZXJpY2EvRW5zZW5hZGEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVy
aWNhL1RpanVhbmEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J0FtZXJpY2EvUG9ydG9fQWNyZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0Ft
ZXJpY2EvUmlvX0JyYW5jbycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnQW1lcmljYS9TaGlwcm9jaycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0FtZXJpY2EvRGVudmVyJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdBbnRhcmN0aWNhL1NvdXRoX1BvbGUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IGlzICdQYWNpZmljL0F1Y2tsYW5kJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdBc2lhL0FzaGtoYWJhZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
aXMgJ0FzaWEvQXNoZ2FiYXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0FzaWEvQ2hvbmdxaW5nJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAn
QXNpYS9TaGFuZ2hhaScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnQXNpYS9DaHVuZ2tpbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lh
L1NoYW5naGFpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
c2lhL0RhY2NhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9EaGFrYScK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9IYXJiaW4n
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1NoYW5naGFpJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL0thc2hnYXInIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1VydW1xaScKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9NYWNhbycgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUgaXMgJ0FzaWEvTWFjYXUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvVGVsX0F2aXYnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdBc2lhL0plcnVzYWxlbScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnQXNpYS9UaGltYnUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IGlzICdBc2lhL1RoaW1waHUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0FzaWEvVWp1bmdfUGFuZGFuZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
aXMgJ0FzaWEvTWFrYXNzYXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0FzaWEvVWxhbl9CYXRvcicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0FzaWEvVWxhYW5iYWF0YXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0F1c3RyYWxpYS9BQ1QnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdB
dXN0cmFsaWEvU3lkbmV5JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdBdXN0cmFsaWEvQ2FuYmVycmEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlz
ICdBdXN0cmFsaWEvU3lkbmV5JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBdXN0cmFsaWEvTEhJJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAn
QXVzdHJhbGlhL0xvcmRfSG93ZScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnQXVzdHJhbGlhL05TVycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0F1c3RyYWxpYS9TeWRuZXknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0F1c3RyYWxpYS9Ob3J0aCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0F1c3RyYWxpYS9EYXJ3aW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0F1c3RyYWxpYS9RdWVlbnNsYW5kJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSBpcyAnQXVzdHJhbGlhL0JyaXNiYW5lJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvU291dGgnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdBdXN0cmFsaWEvQWRlbGFpZGUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9UYXNtYW5pYScgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUgaXMgJ0F1c3RyYWxpYS9Ib2JhcnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9WaWN0b3JpYScgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUgaXMgJ0F1c3RyYWxpYS9NZWxib3VybmUnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9XZXN0JyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSBpcyAnQXVzdHJhbGlhL1BlcnRoJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvWWFuY293aW5uYScgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUgaXMgJ0F1c3RyYWxpYS9Ccm9rZW5fSGlsbCcKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQnJhemlsL0FjcmUnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1Jpb19CcmFuY28nCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0JyYXppbC9EZU5vcm9uaGEnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL05vcm9uaGEnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0JyYXppbC9FYXN0JyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9TYW9fUGF1bG8nCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0JyYXppbC9XZXN0JyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9NYW5hdXMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9BdGxhbnRpYycgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvSGFsaWZheCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL0NlbnRyYWwnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdBbWVyaWNhL1dpbm5pcGVnJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvRWFzdC1TYXNrYXRjaGV3YW4nIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1JlZ2luYScKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL0Vhc3Rlcm4nIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1Rvcm9udG8nCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9Nb3VudGFpbicgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvRWRtb250b24nCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9OZXdmb3VuZGxhbmQnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1N0X0pvaG5zJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvUGFjaWZpYycgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvVmFuY291dmVyJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvU2Fza2F0Y2hld2FuJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9SZWdpbmEnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9ZdWtvbicgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvV2hpdGVob3JzZScKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2hpbGUvQ29udGluZW50YWwnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1NhbnRpYWdvJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDaGlsZS9FYXN0ZXJJc2xhbmQnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdQYWNpZmljL0Vhc3RlcicKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ3ViYScgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvSGF2YW5hJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdFZ3lwdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
aXMgJ0FmcmljYS9DYWlybycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnRWlyZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9EdWJs
aW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0V1cm9wZS9C
ZWxmYXN0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnRXVyb3BlL0xvbmRvbicK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnRXVyb3BlL1RpcmFz
cG9sJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnRXVyb3BlL0NoaXNpbmF1Jwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHQicgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9Mb25kb24nCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dCLUVpcmUnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdFdXJvcGUvTG9uZG9uJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdHTVQrMCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J1VUQycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR01ULTAn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dNVDAnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ0dyZWVud2ljaCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1VUQycKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSG9uZ2tvbmcnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL0hvbmdfS29uZycKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSWNlbGFuZCcgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUgaXMgJ0F0bGFudGljL1JleWtqYXZpaycKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSXJhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0FzaWEvVGVocmFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdJc3JhZWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lh
L0plcnVzYWxlbScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
SmFtYWljYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvSmFtYWlj
YScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSmFwYW4nIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1Rva3lvJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdLd2FqYWxlaW4nIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIGlzICdQYWNpZmljL0t3YWphbGVpbicKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnTGlieWEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdBZnJpY2EvVHJpcG9saScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnTWV4aWNvL0JhamFOb3J0ZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0FtZXJpY2EvVGlqdWFuYScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnTWV4aWNvL0JhamFTdXInIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdBbWVyaWNhL01hemF0bGFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdNZXhpY28vR2VuZXJhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUgaXMgJ0FtZXJpY2EvTWV4aWNvX0NpdHknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ05aJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnUGFj
aWZpYy9BdWNrbGFuZCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnTlotQ0hBVCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1BhY2lmaWMvQ2hh
dGhhbScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnTmF2YWpv
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9EZW52ZXInCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1BSQycgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvU2hhbmdoYWknCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1BvbGFuZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0V1cm9wZS9XYXJzYXcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ1BvcnR1Z2FsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAn
RXVyb3BlL0xpc2JvbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnUk9DJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9UYWlwZWknCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1JPSycgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvU2VvdWwnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1NpbmdhcG9yZScgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUgaXMgJ0FzaWEvU2luZ2Fwb3JlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdUdXJrZXknIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlz
ICdFdXJvcGUvSXN0YW5idWwnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ1VDVCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1VUQycKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvQWxhc2thJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9BbmNob3JhZ2UnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0FsZXV0aWFuJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9BZGFrJworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9Bcml6b25hJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnQW1lcmljYS9QaG9lbml4JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdVUy9DZW50cmFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSBpcyAnQW1lcmljYS9DaGljYWdvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdVUy9FYXN0ZXJuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBp
cyAnQW1lcmljYS9OZXdfWW9yaycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnVVMvSGF3YWlpJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnUGFj
aWZpYy9Ib25vbHVsdScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnVVMvTWljaGlnYW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNh
L0RldHJvaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VT
L01vdW50YWluJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9EZW52
ZXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL1BhY2lm
aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0xvc19BbmdlbGVz
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9TYW1vYScg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1BhY2lmaWMvUGFnb19QYWdvJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVVEMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ1VuaXZlcnNhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
aXMgJ1VUQycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVy1T
VScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9Nb3Njb3cnCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1p1bHUnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Fy
LXNhJykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIGlzICdhci1TQScKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnYXItc2EnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaXNsYW1p
Yy11bWFscXVyYScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnYXItc2EnKS5yZXNvbHZlZE9w
dGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2FyYWInCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyBjYWxlbmRhcjonZGFuZ2knIH0pLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFy
IGlzICdncmVnb3JpYW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYm9ndXMn
KS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUgaXMgJ2VuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LWNhLWJvZ3VzJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2dyZWdv
cmlhbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1idWRkaGlzdCcpLnJlc29s
dmVkT3B0aW9ucygpLmxvY2FsZSBpcyAnZW4tdS1jYS1idWRkaGlzdCcKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1jYS1idWRkaGlzdCcpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFy
IGlzICdidWRkaGlzdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1jaGluZXNl
JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2NoaW5lc2UnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtY29wdGljJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIg
aXMgJ2NvcHRpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1kYW5naScpLnJl
c29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdkYW5naScKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1jYS1ldGhpb2FhJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2V0
aGlvcGljLWFtZXRlLWFsZW0nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRo
aW9waWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnZXRoaW9waWMnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2FyLVNBLXUtY2EtZ3JlZ29yeScpLnJlc29sdmVkT3B0aW9ucygp
LmNhbGVuZGFyIGlzICdncmVnb3JpYW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtaGVicmV3JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2hlYnJldycKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pbmRpYW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5j
YWxlbmRhciBpcyAnaW5kaWFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlz
bGFtaWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaXNsYW1pYycKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljYycpLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyIGlzICdpc2xhbWljLWNpdmlsJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LWNhLUlTTzg2MDEnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaXNvODYwMScKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1qYXBhbmVzZScpLnJlc29sdmVkT3B0aW9u
cygpLmNhbGVuZGFyIGlzICdqYXBhbmVzZScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1jYS1wZXJzaWFuJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ3BlcnNpYW4nCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2Etcm9jJykucmVzb2x2ZWRPcHRpb25zKCku
Y2FsZW5kYXIgaXMgJ3JvYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG51bWJl
cmluZ1N5c3RlbTonZ3VqcicgfSkucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlz
ICdsYXRuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWJvZ3VzJykucmVzb2x2
ZWRPcHRpb25zKCkubG9jYWxlIGlzICdlbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGF0bicK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1sYXRuJykucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIGlzICdsYXRuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LWFyYWInKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUgaXMgJ2VuLXUtbnUtYXJhYicK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1hcmFiJykucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIGlzICdhcmFiJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LWFyYWJleHQnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2Fy
YWJleHQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYXJtbicpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnYXJtbicKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1udS1hcm1ubG93JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVt
IGlzICdhcm1ubG93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWJhbGknKS5y
ZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2JhbGknCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYmVuZycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5
c3RlbSBpcyAnYmVuZycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1jaGFtJyku
cmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdjaGFtJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LW51LWRldmEnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdT
eXN0ZW0gaXMgJ2RldmEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZXRoaScp
LnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnZXRoaScKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4tdS1udS1mdWxsd2lkZScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSBpcyAnZnVsbHdpZGUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
bnUtZ2VvcicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnZ2VvcicKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ncmVrJykucmVzb2x2ZWRPcHRpb25zKCku
bnVtYmVyaW5nU3lzdGVtIGlzICdncmVrJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LWdyZWtsb3cnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2dyZWts
b3cnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZ3VqcicpLnJlc29sdmVkT3B0
aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnZ3VqcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4tdS1udS1ndXJ1JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdn
dXJ1JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWhhbmlkYXlzJykucmVzb2x2
ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdoYW5pZGF5cycKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1udS1oYW5pZGVjJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5n
U3lzdGVtIGlzICdoYW5pZGVjJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWhh
bnMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2hhbnMnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtaGFuc2ZpbicpLnJlc29sdmVkT3B0aW9ucygpLm51
bWJlcmluZ1N5c3RlbSBpcyAnaGFuc2ZpbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1oYW50JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdoYW50Jwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWhhbnRmaW4nKS5yZXNvbHZlZE9wdGlv
bnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2hhbnRmaW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtbnUtaGVicicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAn
aGVicicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1qYXZhJykucmVzb2x2ZWRP
cHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdqYXZhJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LW51LWpwYW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMg
J2pwYW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtanBhbmZpbicpLnJlc29s
dmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnanBhbmZpbicKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1udS1rYWxpJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lz
dGVtIGlzICdrYWxpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWtobXInKS5y
ZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2tobXInCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtbnUta25kYScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5
c3RlbSBpcyAna25kYScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1sYW5hJyku
cmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdsYW5hJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LW51LWxhbmF0aGFtJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVy
aW5nU3lzdGVtIGlzICdsYW5hdGhhbScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1u
dS1sYW9vJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdsYW9vJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxhdG4nKS5yZXNvbHZlZE9wdGlvbnMoKS5u
dW1iZXJpbmdTeXN0ZW0gaXMgJ2xhdG4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
bnUtbGVwYycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGVwYycKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1saW1iJykucmVzb2x2ZWRPcHRpb25zKCku
bnVtYmVyaW5nU3lzdGVtIGlzICdsaW1iJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LW1seW0nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ21seW0nCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbW9uZycpLnJlc29sdmVkT3B0aW9ucygp
Lm51bWJlcmluZ1N5c3RlbSBpcyAnbW9uZycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1tdGVpJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdtdGVpJwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LW15bXInKS5yZXNvbHZlZE9wdGlvbnMo
KS5udW1iZXJpbmdTeXN0ZW0gaXMgJ215bXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
LXUtbnUtbXltcnNoYW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ215
bXJzaGFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LW5rb28nKS5yZXNvbHZl
ZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ25rb28nCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtbnUtb2xjaycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBp
cyAnb2xjaycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1vcnlhJykucmVzb2x2
ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdvcnlhJworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LW51LXJvbWFuJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVt
IGlzICdyb21hbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1yb21hbmxvdycp
LnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAncm9tYW5sb3cnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtc2F1cicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSBpcyAnc2F1cicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1z
dW5kJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdzdW5kJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LXRhbHUnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1i
ZXJpbmdTeXN0ZW0gaXMgJ3RhbHUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
dGFtbCcpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAndGFtbCcKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10YW1sZGVjJykucmVzb2x2ZWRPcHRpb25zKCku
bnVtYmVyaW5nU3lzdGVtIGlzICd0YW1sZGVjJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LXRlbHUnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3RlbHUn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGhhaScpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyAndGhhaScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1udS10aWJ0JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICd0aWJ0
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LXZhaWknKS5yZXNvbHZlZE9wdGlv
bnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3ZhaWknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB3ZWVrZGF5OiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnd2Vla2RheScgfSB9IH0pIHRo
cmV3IGV4Y2VwdGlvbiB3ZWVrZGF5LgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
d2Vla2RheTonaW52YWxpZCcgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IHdlZWtkYXkg
bXVzdCBiZSAibmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciLgorUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2
ZWRPcHRpb25zKCkud2Vla2RheSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHdlZWtkYXk6J25hcnJvdycsIG1vbnRoOidudW1lcmljJywgZGF5OidudW1lcmlj
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IGlzICduYXJyb3cnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5OidzaG9ydCcsIG1vbnRoOidudW1lcmljJywgZGF5
OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IGlzICdzaG9ydCcKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J2xvbmcnLCBtb250aDonbnVtZXJp
YycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSBpcyAnbG9uZycK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTogeyB0b1N0cmluZygpIHsgdGhy
b3cgJ2VyYScgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBlcmEuCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyBlcmE6J25ldmVyJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjog
ZXJhIG11c3QgYmUgIm5hcnJvdyIsICJzaG9ydCIsIG9yICJsb25nIi4KK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJl
c29sdmVkT3B0aW9ucygpLmRheSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25z
KCkuZXJhIGlzICduYXJyb3cnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6
J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIGlzICdzaG9y
dCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbG9uZycsIHllYXI6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyAnbG9uZycKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHllYXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICd5ZWFyJyB9IH0g
fSkgdGhyZXcgZXhjZXB0aW9uIHllYXIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB5ZWFyOidub3BlJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogeWVhciBtdXN0IGJl
ICIyLWRpZ2l0IiBvciAibnVtZXJpYyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55
ZWFyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOidu
YXJyb3cnLCB5ZWFyOicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIGlzICcyLWRp
Z2l0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduYXJyb3cnLCB5ZWFy
OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIGlzICdudW1lcmljJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdt
b250aCcgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBtb250aC4KK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IG1vbnRoOjIgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IG1vbnRo
IG11c3QgYmUgIjItZGlnaXQiLCAibnVtZXJpYyIsICJuYXJyb3ciLCAic2hvcnQiLCBvciAibG9u
ZyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBo
b3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyB1bmRlZmluZWQKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOicyLWRpZ2l0JywgeWVhcjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMgJzItZGlnaXQnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonbnVtZXJpYycsIHllYXI6J251bWVyaWMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlzICdudW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgbW9udGg6J25hcnJvdycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLm1vbnRoIGlzICduYXJyb3cnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBtb250aDonc2hvcnQnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5t
b250aCBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDon
bG9uZycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlzICdsb25n
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZGF5OiB7IHRvU3RyaW5nKCkgeyB0
aHJvdyAnZGF5JyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIGRheS4KK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IGRheTonJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZGF5
IG11c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmljIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0
aW9ucygpLmRheSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IG1vbnRoOidsb25nJywgZGF5OicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMg
JzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonbG9uZycs
IGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZGF5IGlzICdudW1lcmljJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgaG91cjogeyB0b1N0cmluZygpIHsgdGhyb3cg
J2hvdXInIH0gfSB9KSB0aHJldyBleGNlcHRpb24gaG91ci4KK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IGhvdXI6W10gfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGhvdXIg
bXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOicyLWRpZ2l0JyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS5ob3VyIGlzICdudW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRP
cHRpb25zKCkuaG91ciBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS5ob3VyMTIgaXMgdHJ1ZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdw
dC1CUicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRp
b25zKCkuaG91cjEyIGlzIGZhbHNlCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
aW51dGU6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdtaW51dGUnIH0gfSB9KSB0aHJldyBleGNlcHRp
b24gbWludXRlLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOm51bGwg
fSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IG1pbnV0ZSBtdXN0IGJlICIyLWRpZ2l0IiBv
ciAibnVtZXJpYyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRp
b25zKCkubWludXRlIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCku
bWludXRlIGlzICcyLWRpZ2l0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWlu
dXRlOidudW1lcmljJywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubWludXRl
IGlzICcyLWRpZ2l0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgc2Vjb25kOiB7
IHRvU3RyaW5nKCkgeyB0aHJvdyAnc2Vjb25kJyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIHNlY29u
ZC4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHNlY29uZDonYmFkdmFsdWUnIH0p
IHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBzZWNvbmQgbXVzdCBiZSAiMi1kaWdpdCIgb3Ig
Im51bWVyaWMiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLnNlY29uZCBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IG1pbnV0ZTonbnVtZXJpYycsIGhvdXI6J251bWVyaWMnLCBzZWNvbmQ6JzItZGlnaXQnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnNlY29uZCBpcyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IG1pbnV0ZTonbnVtZXJpYycsIGhvdXI6J251bWVyaWMnLCBzZWNvbmQ6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCBpcyAnMi1kaWdpdCcKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lTmFtZTogeyB0b1N0cmluZygpIHsgdGhy
b3cgJ3RpbWVab25lTmFtZScgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiB0aW1lWm9uZU5hbWUuCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZU5hbWU6J25hbWUnIH0pIHRo
cmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiB0aW1lWm9uZU5hbWUgbXVzdCBiZSAic2hvcnQiIG9y
ICJsb25nIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZU5hbWUgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJywgdGltZVpvbmVOYW1lOidzaG9y
dCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIGlzICdzaG9ydCcKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgncHQtQlInLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVy
aWMnLCB0aW1lWm9uZU5hbWU6J2xvbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFt
ZSBpcyAnbG9uZycKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIs
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAi
bnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImFyIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
d2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJhciIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJhciIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImFyIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJhciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYXIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAi
bnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgiYXIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJhci1TQSIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTog
Im51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYXIt
U0EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNT
IAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRh
eTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
YXItU0EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJhci1TQSIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYXItU0EiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBo
b3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImFyLVNBIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImFyLVNBIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
d2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAi
bnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYmUiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImJlIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250
aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImJlIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250
aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYmUi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImJlIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJiZSIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJiZSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdl
ZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51
bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImNhIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDog
InNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJjYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6
ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJjYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6
ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImNhIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJjYSIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiY2EiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiY2EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVr
ZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1l
cmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJjcyIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJz
aG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiY3MiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAi
bG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiY3MiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAi
bG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJjcyIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiY3MiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBo
b3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImNzIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImNzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2Rh
eTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJp
YyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGEiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hv
cnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoImRhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxv
bmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoImRhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxv
bmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGEiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91
cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkYSIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6
ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMi
LCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRlIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJkZSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25n
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJkZSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25n
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRlIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkZSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6
ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGUiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAi
c2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwg
aG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkZS1DSCIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9y
dCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiZGUtQ0giLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAi
bG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiZGUtQ0giLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkZS1D
SCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGUtQ0giLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRlLUNIIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRlLUNIIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0
IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNl
Y29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiZW4iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVy
aWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVy
aWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiZW4iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbiIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbiIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIs
IGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNv
bmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImVuLUFVIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVy
aWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1BVSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJu
dW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1BVSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImVuLUFVIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJl
bi1BVSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJp
YyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiZW4tQVUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
ZW4tQVUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1HQiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJz
aG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tR0IiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tR0IiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1HQiIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgiZW4tR0IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJp
YyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLUdCIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91
cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoImVuLUdCIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNo
b3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tUEgiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQi
LCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoImVuLVBIIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxv
bmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoImVuLVBIIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDog
ImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tUEgi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLVBIIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1QSCIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1QSCIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIs
IGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNv
bmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImVuLVVTIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVy
aWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1VUyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJu
dW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1VUyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImVuLVVTIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJl
bi1VUyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJp
YyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiZW4tVVMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
ZW4tVVMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJlbCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9y
dCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZWwiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZWwiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9u
ZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiZWwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51
bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImVsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImVsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMi
LCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRl
OiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgiZXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQi
LCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgiZXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmci
LCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoImVzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1l
cmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJlcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRl
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJl
cyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwg
bW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTog
Im51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoImVzLU1YIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0
IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcy1NWCIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcy1NWCIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzLU1YIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9u
dGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJlcy1NWCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwg
bWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMtTVgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAi
bnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgiZXMtTVgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQi
LCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjog
Im51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcy1QUiIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRh
eTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
ZXMtUFIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIs
IGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiZXMtUFIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9u
ZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcy1QUiIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMtUFIiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzLVBSIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzLVBSIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5
OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDog
Im51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZnIi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1v
bnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoImZyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBt
b250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoImZyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBt
b250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
ZnIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNT
IAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImZyIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJmciIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJmciIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTog
Im51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImZyLUNB
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBt
b250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJmci1DQSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmlj
IiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJmci1DQSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1l
cmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoImZyLUNBIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJmci1DQSIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNl
Y29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiZnItQ0EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZnItQ0Ei
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1v
bnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJu
dW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJnYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZ2EiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZ2EiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJnYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRh
eTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
Z2EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNT
IAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMi
LCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoImdhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImdhIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250
aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVt
ZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiaGktSU4iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImhpLUlOIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImhpLUlOIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaGktSU4iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDog
ImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoImhpLUlOIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJoaS1JTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJoaS1JTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVt
ZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImlzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vl
a2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpcyIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpcyIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImlzIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
bW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJpcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwg
bWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVt
ZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiaXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFy
OiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVy
aWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtk
YXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXQiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXQiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1v
bnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgiaXQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoIml0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVy
aWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoIml0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjog
Im51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXciLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5
OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIml3Iiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIml3Iiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXciLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250
aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoIml3Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJpdyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJpdyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJu
dW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIs
IG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImphIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTog
InNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJqYSIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJqYSIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImphIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6
ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJqYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRl
OiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgiamEiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIs
IG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiamEiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVt
ZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJrby1LUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6
ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgia28tS1IiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgia28tS1IiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJrby1LUiIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgia28tS1IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVt
ZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImtvLUtSIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
aG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoImtvLUtSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTog
InNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIs
IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibHQiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQi
LCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoImx0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmci
LCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoImx0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmci
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibHQiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImx0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjog
Im51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJsdCIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJsdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJz
aG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBo
b3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImx2Iiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0Iiwg
ZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJsdiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwg
ZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJsdiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImx2Iiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJsdiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJu
dW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibHYiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBo
b3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgibHYiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hv
cnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91
cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtayIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRh
eTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
bWsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNT
IAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRh
eTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
bWsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNT
IAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtayIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgibWsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVt
ZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1rIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91
cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoIm1rIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0
IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6
ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibXMiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1z
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1z
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibXMiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1zIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVy
aWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6
ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJtcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIs
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAi
bnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm10Iiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
d2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtdCIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtdCIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm10Iiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJtdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibXQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAi
bnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgibXQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJuYiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdl
ZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibmIiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibmIiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJuYiIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgibmIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIs
IG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5iIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoIm5iIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVh
cjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibmwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVr
ZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5sIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5sIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibmwiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBt
b250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoIm5sIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJubCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJubCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJp
YyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5vIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2Rh
eTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJubyIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJubyIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5vIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9u
dGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJubyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgibm8iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJp
YyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgibm8iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAi
bnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJwbCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6
ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicGwiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicGwiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJwbCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRo
OiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgicGwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoInBsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoInBsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51
bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwg
bWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgicHQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAi
c2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInB0Iiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInB0Iiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicHQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDog
ImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoInB0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6
ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJwdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwg
bWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJwdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1l
cmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoInB0LUJSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTog
InNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJwdC1CUiIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJwdC1CUiIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInB0LUJSIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJwdC1CUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicHQtQlIiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBo
b3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgicHQtQlIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAi
c2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwg
aG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJybyIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIs
IGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgicm8iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIs
IGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgicm8iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJybyIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicm8iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAi
bnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInJvIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
aG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoInJvIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNo
b3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicnUiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
InJ1Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
InJ1Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicnUiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInJ1Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJydSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJydSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9y
dCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3Vy
OiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNrIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJz
ayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJz
ayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNrIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic2siLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3Vy
OiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgic2siLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQi
LCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjog
Im51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzbCIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTog
Im51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic2wi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTog
Im51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic2wi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzbCIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgic2wiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJp
YyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjog
Im51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoInNsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0Iiwg
eWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJu
dW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic3IiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3
ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNyIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNyIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic3IiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoInNyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJu
dW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJzciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVt
ZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInN2Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vl
a2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzdiIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzdiIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInN2Iiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
bW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJzdiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwg
bWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgic3YiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVt
ZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgic3YiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFy
OiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVy
aWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ0aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtk
YXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidGgiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidGgiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ0aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1v
bnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgidGgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoInRoIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVy
aWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoInRoIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjog
Im51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidHIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5
OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInRyIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInRyIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidHIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250
aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoInRyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJ0ciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJ0ciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJu
dW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIs
IG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInVrIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTog
InNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ1ayIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ1ayIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInVrIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6
ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJ1ayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRl
OiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgidWsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIs
IG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgidWsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVt
ZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ2aSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJz
aG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidmkiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidmkiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ2aSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAi
bG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgidmkiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTog
Im51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoInZpIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoInZpIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVy
aWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgiemgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hv
cnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxv
bmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoInpoIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJu
dW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJ6aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJ6aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmlj
IiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoInpoLUNOIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNo
b3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aC1DTiIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aC1DTiIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoLUNOIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
bW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJ6aC1DTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtQ04iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3Vy
OiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgiemgtQ04iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hv
cnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91
cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aC1IYW50LUhLIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNo
b3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJ6aC1IYW50LUhLIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBt
b250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoInpoLUhhbnQtSEsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVt
ZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJ6aC1IYW50LUhLIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6
aC1IYW50LUhLIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJu
dW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJ6aC1IYW50LUhLIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVy
aWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoInpoLUhhbnQtSEsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQi
LCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjog
Im51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aC1UVyIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRh
eTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
emgtVFciLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIs
IGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiemgtVFciLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9u
ZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aC1UVyIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtVFciLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoLVRXIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoLVRXIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9zY3Jp
cHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5qcyBiL0xheW91dFRlc3RzL2pzL3NjcmlwdC10
ZXN0cy9pbnRsLWRhdGV0aW1lZm9ybWF0LmpzCmluZGV4IGVkZTFiNWNlMzQ2ZmQyOTA1MzBiMzcz
NzdmMDBjYWU1MDM3ZTYwN2YuLmMyYTY3NTgyZmVjMzQ1MjIwOTg3ZGJjN2QzNzgxNzhjNDY0Yzg5
ZDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9pbnRsLWRhdGV0aW1l
Zm9ybWF0LmpzCisrKyBiL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9pbnRsLWRhdGV0aW1l
Zm9ybWF0LmpzCkBAIC0xMTksNyArMTE5LDcgQEAgc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVG
b3JtYXQucHJvdG90eXBlLmZvcm1hdCh7IHZhbHVlT2YoKSB7IHRocm93IEVycm9yKCc0YicKIC8v
IDEyLjMuNCBGb3JtYXREYXRlVGltZSBhYnN0cmFjdCBvcGVyYXRpb24KIAogLy8gMS4gSWYgeCBp
cyBub3QgYSBmaW5pdGUgTnVtYmVyLCB0aGVuIHRocm93IGEgUmFuZ2VFcnJvciBleGNlcHRpb24u
Ci1zaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KEluZmlu
aXR5KSIsICInUmFuZ2VFcnJvcjogZGF0ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1l
Rm9ybWF0LmZvcm1hdCgpJyIpOworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLmZvcm1hdChJbmZpbml0eSkiLCAiJ1JhbmdlRXJyb3I6IGRhdGUgdmFsdWUgaXMgbm90
IGZpbml0ZSBpbiBEYXRlVGltZUZvcm1hdCBmb3JtYXQoKSciKTsKIAogLy8gRm9ybWF0IGlzIGJv
dW5kLCBzbyBjYWxsaW5nIHdpdGggYWx0ZXJuYXRlICJ0aGlzIiBoYXMgbm8gZWZmZWN0Lgogc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdC5jYWxsKG51bGwsIDAp
IiwgIkludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkiKTsKQEAgLTEzNiw5ICsxMzYsMzA5
IEBAIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlv
bnMubGVuZ3RoIiwgIjAiKTsKIC8vIFJldHVybnMgYSBuZXcgb2JqZWN0IHdob3NlIHByb3BlcnRp
ZXMgYW5kIGF0dHJpYnV0ZXMgYXJlIHNldCBhcyBpZiBjb25zdHJ1Y3RlZCBieSBhbiBvYmplY3Qg
bGl0ZXJhbC4KIHNob3VsZEJlVHlwZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVz
b2x2ZWRPcHRpb25zKCkiLCAiT2JqZWN0Iik7CiAKKy8vIFRoZSBJbnRsLkRhdGVUaW1lRm9ybWF0
IHByb3RvdHlwZSBvYmplY3QgaXMgaXRzZWxmIGFuICVEYXRlVGltZUZvcm1hdCUgaW5zdGFuY2Us
IHdob3NlIGludGVybmFsIHNsb3RzIGFyZSBzZXQgYXMgaWYgaXQgaGFkIGJlZW4gY29uc3RydWN0
ZWQgYnkgdGhlIGV4cHJlc3Npb24gQ29uc3RydWN0KCVEYXRlVGltZUZvcm1hdCUpLgorc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmxvY2Fs
ZSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5y
ZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJl
c29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIm5ldyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCku
d2Vla2RheSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLndl
ZWtkYXkiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZl
ZE9wdGlvbnMoKS5lcmEiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlv
bnMoKS5lcmEiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNv
bHZlZE9wdGlvbnMoKS55ZWFyIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRP
cHRpb25zKCkueWVhciIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVz
b2x2ZWRPcHRpb25zKCkubW9udGgiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQo
KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuaG91ciIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiIsICJuZXcgSW50bC5EYXRl
VGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSIsICJuZXcg
SW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLnNlY29u
ZCIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lTmFtZSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lTmFtZSIpOworCiAvLyBSZXR1cm5zIGEgbmV3IG9iamVjdCBlYWNoIHRp
bWUuCiBzaG91bGRCZUZhbHNlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZl
ZE9wdGlvbnMoKSA9PT0gSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRp
b25zKCkiKTsKIAogLy8gVGhyb3dzIG9uIG5vbi1EYXRlVGltZUZvcm1hdCB0aGlzLgogc2hvdWxk
VGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucy5jYWxs
KDUpIiwgIidUeXBlRXJyb3I6IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdFxcJ3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXpl
ZCBhcyBhIERhdGVUaW1lRm9ybWF0JyIpOwogCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZv
cm1hdCgnJCcpIiwgIidSYW5nZUVycm9yOiBpbnZhbGlkIGxhbmd1YWdlIHRhZzogJCciKTsKK3No
b3VsZE5vdFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIG51bGwpIik7CisKKy8vIERl
ZmF1bHRzIHRvIG1vbnRoLCBkYXksIHllYXIuCitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IiwgInVuZGVmaW5lZCIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgInVu
ZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRP
cHRpb25zKCkubW9udGgiLCAiJ251bWVyaWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAiJ251bWVyaWMnIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIiwgIidu
dW1lcmljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRP
cHRpb25zKCkuaG91ciIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiIsICJ1bmRlZmluZWQiKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSIs
ICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29s
dmVkT3B0aW9ucygpLnNlY29uZCIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIsICJ1bmRlZmlu
ZWQiKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBsb2NhbGVN
YXRjaGVyOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbm9wZScgfSB9IH0pIiwgIidub3BlJyIpOwor
c2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBsb2NhbGVNYXRjaGVyOidi
YWQnIH0pIiwgJ1wnUmFuZ2VFcnJvcjogbG9jYWxlTWF0Y2hlciBtdXN0IGJlIGVpdGhlciAibG9v
a3VwIiBvciAiYmVzdCBmaXQiXCcnKTsKK3Nob3VsZE5vdFRocm93KCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjonbG9va3VwJyB9KSIpOworc2hvdWxkTm90VGhyb3co
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBsb2NhbGVNYXRjaGVyOidiZXN0IGZpdCcgfSki
KTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBmb3JtYXRNYXRj
aGVyOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbm9wZScgfSB9IH0pIiwgIidub3BlJyIpOworc2hv
dWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBmb3JtYXRNYXRjaGVyOidiYWQn
IH0pIiwgJ1wnUmFuZ2VFcnJvcjogZm9ybWF0TWF0Y2hlciBtdXN0IGJlIGVpdGhlciAiYmFzaWMi
IG9yICJiZXN0IGZpdCJcJycpOworc2hvdWxkTm90VGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBmb3JtYXRNYXRjaGVyOidiYXNpYycgfSkiKTsKK3Nob3VsZE5vdFRocm93KCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjonYmVzdCBmaXQnIH0pIik7CisK
K3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdub3do
ZXJlL2JvZ3VzJyB9KSIsICInUmFuZ2VFcnJvcjogaW52YWxpZCB0aW1lIHpvbmU6IG5vd2hlcmUv
Ym9ndXMnIik7CitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbm9wZScgfSB9IH0pIiwgIidub3BlJyIpOworCisv
LyBUaW1lIHpvbmUgaXMgY2FzZSBpbnNlbnNpdGl2ZS4KK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdhbWVyaWNhL2RlbnZlcicgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvRGVudmVyJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FNRVJJQ0EvTE9TX0FOR0VMRVMnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0xvc19BbmdlbGVzJyIpOworCisv
LyBEZWZhdWx0IHRpbWUgem9uZSBpcyBhIHZhbGlkIGNhbm9uaWNhbCB0aW1lIHpvbmUuCitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUiLCAiSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIik7CisKKy8vIFRpbWUgem9uZSBpcyBjYW5vbmljYWxpemVkIGZvciBvYnNvbGV0ZSBsaW5r
cyBpbiBJQU5BIHR6IGJhY2t3YXJkIGZpbGUuCitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnQW1lcmljYS9BdGthJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSIsICInQW1lcmljYS9BZGFrJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FtZXJpY2EvRW5zZW5hZGEnIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIiwgIidBbWVyaWNhL1RpanVhbmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQW1lcmljYS9Qb3J0b19BY3JlJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9SaW9fQnJhbmNvJyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FtZXJpY2EvU2hpcHJv
Y2snIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0RlbnZlciciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbnRhcmN0
aWNhL1NvdXRoX1BvbGUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidQYWNpZmlj
L0F1Y2tsYW5kJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0FzaWEvQXNoa2hhYmFkJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXNpYS9Bc2hnYWJhdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdBc2lhL0Nob25ncWluZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUi
LCAiJ0FzaWEvU2hhbmdoYWknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnQXNpYS9DaHVuZ2tpbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIiwgIidBc2lhL1NoYW5naGFpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvRGFjY2EnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIiwgIidBc2lhL0RoYWthJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0FzaWEvSGFyYmluJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSIsICInQXNpYS9TaGFuZ2hhaSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdBc2lhL0thc2hnYXInIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIiwgIidBc2lhL1VydW1xaSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdBc2lhL01hY2FvJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSIsICInQXNpYS9NYWNhdSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdBc2lhL1RlbF9Bdml2JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSIsICInQXNpYS9KZXJ1c2FsZW0nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnQXNpYS9UaGltYnUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIiwgIidBc2lhL1RoaW1waHUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnQXNpYS9VanVuZ19QYW5kYW5nJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSIsICInQXNpYS9NYWthc3NhciciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL1VsYW5fQmF0b3InIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIiwgIidBc2lhL1VsYWFuYmFhdGFyJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9BQ1QnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvU3lkbmV5JyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9DYW5iZXJy
YScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9TeWRuZXknIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJh
bGlhL0xISScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9Mb3Jk
X0hvd2UnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnQXVzdHJhbGlhL05TVycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3Ry
YWxpYS9TeWRuZXknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnQXVzdHJhbGlhL05vcnRoJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIs
ICInQXVzdHJhbGlhL0RhcndpbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvUXVlZW5zbGFuZCcgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9CcmlzYmFuZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvU291dGgnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvQWRlbGFpZGUnIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1Rhc21h
bmlhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXVzdHJhbGlhL0hvYmFydCci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0
cmFsaWEvVmljdG9yaWEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBdXN0cmFs
aWEvTWVsYm91cm5lJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0F1c3RyYWxpYS9XZXN0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIs
ICInQXVzdHJhbGlhL1BlcnRoJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9ZYW5jb3dpbm5hJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSIsICInQXVzdHJhbGlhL0Jyb2tlbl9IaWxsJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0JyYXppbC9BY3JlJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9SaW9fQnJhbmNvJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0JyYXppbC9EZU5vcm9uaGEn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL05vcm9uaGEnIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQnJhemlsL0Vh
c3QnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1Nhb19QYXVsbyci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6
aWwvV2VzdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvTWFuYXVz
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0Nh
bmFkYS9BdGxhbnRpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2Ev
SGFsaWZheCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdDYW5hZGEvQ2VudHJhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0Ft
ZXJpY2EvV2lubmlwZWcnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnQ2FuYWRhL0Vhc3QtU2Fza2F0Y2hld2FuJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSIsICInQW1lcmljYS9SZWdpbmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL0Vhc3Rlcm4nIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1Rvcm9udG8nIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL01vdW50YWluJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9FZG1vbnRvbiciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvTmV3Zm91bmRs
YW5kJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9TdF9Kb2hucyci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5h
ZGEvUGFjaWZpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvVmFu
Y291dmVyJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ0NhbmFkYS9TYXNrYXRjaGV3YW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwg
IidBbWVyaWNhL1JlZ2luYSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdDYW5hZGEvWXVrb24nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IiwgIidBbWVyaWNhL1doaXRlaG9yc2UnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnQ2hpbGUvQ29udGluZW50YWwnIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIiwgIidBbWVyaWNhL1NhbnRpYWdvJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NoaWxlL0Vhc3RlcklzbGFuZCcgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1BhY2lmaWMvRWFzdGVyJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0N1YmEnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0hhdmFuYSciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdFZ3lwdCcgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUiLCAiJ0FmcmljYS9DYWlybyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdFaXJlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSIsICInRXVyb3BlL0R1YmxpbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdFdXJvcGUvQmVsZmFzdCcgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUiLCAiJ0V1cm9wZS9Mb25kb24nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnRXVyb3BlL1RpcmFzcG9sJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSIsICInRXVyb3BlL0NoaXNpbmF1JyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dCJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSIsICInRXVyb3BlL0xvbmRvbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHQi1FaXJlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSIsICInRXVyb3BlL0xvbmRvbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdHTVQrMCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ1VUQyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdHTVQtMCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1VUQyciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHTVQwJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInVVRDJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dyZWVud2ljaCcgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUiLCAiJ1VUQyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdIb25na29uZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUiLCAiJ0FzaWEvSG9uZ19Lb25nJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0ljZWxhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIiwgIidBdGxhbnRpYy9SZXlramF2aWsnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSXJhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0FzaWEvVGVocmFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0lzcmFlbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAi
J0FzaWEvSmVydXNhbGVtJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0phbWFpY2EnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidB
bWVyaWNhL0phbWFpY2EnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnSmFwYW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lh
L1Rva3lvJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ0t3YWphbGVpbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1BhY2lmaWMv
S3dhamFsZWluJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0xpYnlhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQWZyaWNhL1Ry
aXBvbGknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnTWV4aWNvL0JhamFOb3J0ZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0Ft
ZXJpY2EvVGlqdWFuYSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdNZXhpY28vQmFqYVN1cicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUi
LCAiJ0FtZXJpY2EvTWF6YXRsYW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnTWV4aWNvL0dlbmVyYWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidBbWVyaWNhL01leGljb19DaXR5JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ05aJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSIsICInUGFjaWZpYy9BdWNrbGFuZCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdOWi1DSEFUJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSIsICInUGFjaWZpYy9DaGF0aGFtJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ05hdmFqbycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0FtZXJpY2EvRGVudmVyJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ1BSQycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAi
J0FzaWEvU2hhbmdoYWknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnUG9sYW5kJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInRXVy
b3BlL1dhcnNhdyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdQb3J0dWdhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0V1cm9w
ZS9MaXNib24nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnUk9DJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9UYWlwZWkn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnUk9L
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9TZW91bCciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdTaW5nYXBvcmUnIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL1NpbmdhcG9yZSciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdUdXJrZXknIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidFdXJvcGUvSXN0YW5idWwnIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVUNUJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSIsICInVVRDJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0FsYXNrYScgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUiLCAiJ0FtZXJpY2EvQW5jaG9yYWdlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0FsZXV0aWFuJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9BZGFrJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0FyaXpvbmEnIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIiwgIidBbWVyaWNhL1Bob2VuaXgnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvQ2VudHJhbCcgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvQ2hpY2FnbyciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9FYXN0ZXJuJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9OZXdfWW9yayciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9IYXdhaWknIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIiwgIidQYWNpZmljL0hvbm9sdWx1JyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL01pY2hpZ2FuJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9EZXRyb2l0JyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL01vdW50YWluJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9EZW52ZXInIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvUGFjaWZpYycgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvTG9zX0FuZ2VsZXMnIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvU2Ftb2En
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidQYWNpZmljL1BhZ29fUGFnbyciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVVEMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidVVEMnIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVW5pdmVyc2FsJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSIsICInVVRDJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ1ctU1UnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IiwgIidFdXJvcGUvTW9zY293JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ1p1bHUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidV
VEMnIik7CisKKy8vIEdldHMgZGVmYXVsdCBjYWxlbmRhciBhbmQgbnVtYmVyaW5nU3lzdGVtIGZy
b20gbG9jYWxlLgorc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyLXNhJykucmVzb2x2
ZWRPcHRpb25zKCkubG9jYWxlIiwgIidhci1TQSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljLXVt
YWxxdXJhJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyLXNhJykucmVzb2x2
ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidhcmFiJyIpOworCitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGNhbGVuZGFyOidkYW5naScgfSkucmVzb2x2ZWRPcHRp
b25zKCkuY2FsZW5kYXIiLCAiJ2dyZWdvcmlhbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LWNhLWJvZ3VzJykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIiwgIidlbici
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJvZ3VzJykucmVzb2x2
ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2dyZWdvcmlhbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LWNhLWJ1ZGRoaXN0JykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxl
IiwgIidlbi11LWNhLWJ1ZGRoaXN0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtY2EtYnVkZGhpc3QnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInYnVkZGhp
c3QnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1jaGluZXNlJyku
cmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2NoaW5lc2UnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1jb3B0aWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxl
bmRhciIsICInY29wdGljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtZGFuZ2knKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInZGFuZ2knIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ldGhpb2FhJykucmVzb2x2ZWRPcHRp
b25zKCkuY2FsZW5kYXIiLCAiJ2V0aGlvcGljLWFtZXRlLWFsZW0nIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ldGhpb3BpYycpLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyIiwgIidldGhpb3BpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdh
ci1TQS11LWNhLWdyZWdvcnknKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInZ3JlZ29y
aWFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaGVicmV3Jyku
cmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2hlYnJldyciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWluZGlhbicpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVu
ZGFyIiwgIidpbmRpYW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1j
YS1pc2xhbWljJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMnIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljYycpLnJlc29sdmVk
T3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljLWNpdmlsJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtSVNPODYwMScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVu
ZGFyIiwgIidpc284NjAxJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtamFwYW5lc2UnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInamFwYW5lc2UnIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1wZXJzaWFuJykucmVzb2x2
ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ3BlcnNpYW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1jYS1yb2MnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICIn
cm9jJyIpOworLy8gRklYTUU6IGh0dHBzOi8vZ2l0aHViLmNvbS90YzM5L2VjbWE0MDIvaXNzdWVz
LzU5CisvLyBzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ldGhpb3BpYy1h
bWV0ZS1hbGVtJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2V0aGlvYWEnIik7Cisv
LyBzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljLXVtYWxxdXJh
JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMtdW1hbHF1cmEnIik7Cisv
LyBzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljLXRibGEnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy10YmxhJyIpOworLy8gc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pYy1jaXZpbCcpLnJlc29sdmVk
T3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljLWNpdmlsJyIpOworLy8gc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pYy1yZ3NhJykucmVzb2x2ZWRPcHRpb25z
KCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMtcmdzYSciKTsKKworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBudW1iZXJpbmdTeXN0ZW06J2d1anInIH0pLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSIsICInbGF0biciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LW51LWJvZ3VzJykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIiwgIidlbici
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWJvZ3VzJykucmVzb2x2
ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIiwgIidsYXRuJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGF0bicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSIsICInbGF0biciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LWFyYWInKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUiLCAiJ2VuLXUtbnUtYXJhYiciKTsK
KworbGV0IG51bWJlcmluZ1N5c3RlbXMgPSBbCisgICJhcmFiIiwgImFyYWJleHQiLCAiYXJtbiIs
ICJhcm1ubG93IiwgImJhbGkiLCAiYmVuZyIsICJjaGFtIiwgImRldmEiLCAiZXRoaSIsCisgICJm
dWxsd2lkZSIsICJnZW9yIiwgImdyZWsiLCAiZ3Jla2xvdyIsICJndWpyIiwgImd1cnUiLCAiaGFu
aWRheXMiLCAiaGFuaWRlYyIsCisgICJoYW5zIiwgImhhbnNmaW4iLCAiaGFudCIsICJoYW50Zmlu
IiwgImhlYnIiLCAiamF2YSIsICJqcGFuIiwgImpwYW5maW4iLAorICAia2FsaSIsICJraG1yIiwg
ImtuZGEiLCAibGFuYSIsICJsYW5hdGhhbSIsICJsYW9vIiwgImxhdG4iLCAibGVwYyIsICJsaW1i
IiwKKyAgIm1seW0iLCAibW9uZyIsICJtdGVpIiwgIm15bXIiLCAibXltcnNoYW4iLCAibmtvbyIs
ICJvbGNrIiwgIm9yeWEiLCAicm9tYW4iLAorICAicm9tYW5sb3ciLCAic2F1ciIsICJzdW5kIiwg
InRhbHUiLCAidGFtbCIsICJ0YW1sZGVjIiwgInRlbHUiLCAidGhhaSIsICJ0aWJ0IiwKKyAgInZh
aWkiCitdCitmb3IgKGxldCBudW1iZXJpbmdTeXN0ZW0gb2YgbnVtYmVyaW5nU3lzdGVtcykgewor
ICBzaG91bGRCZShgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS0ke251bWJlcmluZ1N5c3Rl
bX0nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW1gLCBgJyR7bnVtYmVyaW5nU3lz
dGVtfSdgKTsKK30KKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3
ZWVrZGF5OiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnd2Vla2RheScgfSB9IH0pIiwgIid3ZWVrZGF5
JyIpOworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5Oidp
bnZhbGlkJyB9KSIsICdcJ1JhbmdlRXJyb3I6IHdlZWtkYXkgbXVzdCBiZSAibmFycm93IiwgInNo
b3J0Iiwgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCku
d2Vla2RheSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgd2Vla2RheTonbmFycm93JywgbW9udGg6J251bWVyaWMnLCBkYXk6J251bWVyaWMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAiJ25hcnJvdyciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonc2hvcnQnLCBtb250aDonbnVtZXJpYycs
IGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSIsICInc2hvcnQnIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J2xvbmcnLCBt
b250aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2Rh
eSIsICInbG9uZyciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBlcmE6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdlcmEnIH0gfSB9KSIsICInZXJhJyIpOworc2hv
dWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25ldmVyJyB9KSIsICdc
J1JhbmdlRXJyb3I6IGVyYSBtdXN0IGJlICJuYXJyb3ciLCAic2hvcnQiLCBvciAibG9uZyJcJycp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQn
LCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAidW5kZWZpbmVkIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVh
cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgIiduYXJyb3cnIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonc2hvcnQnLCB5ZWFyOidudW1l
cmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEiLCAiJ3Nob3J0JyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J2xvbmcnLCB5ZWFyOidudW1lcmljJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS5lcmEiLCAiJ2xvbmcnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgeWVhcjogeyB0b1N0cmluZygpIHsgdGhyb3cgJ3llYXInIH0g
fSB9KSIsICIneWVhciciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgeWVhcjonbm9wZScgfSkiLCAnXCdSYW5nZUVycm9yOiB5ZWFyIG11c3QgYmUgIjItZGlnaXQi
IG9yICJudW1lcmljIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnll
YXIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IGVyYTonbmFycm93JywgeWVhcjonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciIs
ICInMi1kaWdpdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJh
OiduYXJyb3cnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIiwgIidu
dW1lcmljJyIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1v
bnRoOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbW9udGgnIH0gfSB9KSIsICInbW9udGgnIik7Citz
aG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOjIgfSkiLCAnXCdS
YW5nZUVycm9yOiBtb250aCBtdXN0IGJlICIyLWRpZ2l0IiwgIm51bWVyaWMiLCAibmFycm93Iiwg
InNob3J0Iiwgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25z
KCkubW9udGgiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1vbnRoOicyLWRpZ2l0JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25z
KCkubW9udGgiLCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1vbnRoOidudW1lcmljJywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25z
KCkubW9udGgiLCAiJ251bWVyaWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1vbnRoOiduYXJyb3cnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS5tb250aCIsICInbmFycm93JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBtb250aDonc2hvcnQnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5t
b250aCIsICInc2hvcnQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IG1vbnRoOidsb25nJywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgi
LCAiJ2xvbmcnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
ZGF5OiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnZGF5JyB9IH0gfSkiLCAiJ2RheSciKTsKK3Nob3Vs
ZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZGF5OicnIH0pIiwgJ1wnUmFuZ2VF
cnJvcjogZGF5IG11c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmljIlwnJyk7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVy
aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCBkYXk6JzItZGlnaXQnIH0p
LnJlc29sdmVkT3B0aW9ucygpLmRheSIsICInMi1kaWdpdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCBkYXk6J251bWVyaWMnIH0pLnJlc29s
dmVkT3B0aW9ucygpLmRheSIsICInbnVtZXJpYyciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyBob3VyOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnaG91cicgfSB9
IH0pIiwgIidob3VyJyIpOworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBob3VyOltdIH0pIiwgJ1wnUmFuZ2VFcnJvcjogaG91ciBtdXN0IGJlICIyLWRpZ2l0IiBvciAi
bnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2
ZWRPcHRpb25zKCkuaG91ciIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonMi1kaWdpdCcgfSkucmVzb2x2
ZWRPcHRpb25zKCkuaG91ciIsICInbnVtZXJpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2
ZWRPcHRpb25zKCkuaG91ciIsICInbnVtZXJpYyciKTsKKworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgInVuZGVmaW5lZCIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBo
b3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAidHJ1ZSIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ3B0LUJSJywgeyBtaW51dGU6JzItZGlnaXQnLCBo
b3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAiZmFsc2UiKTsKKwor
c2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6IHsgdG9TdHJp
bmcoKSB7IHRocm93ICdtaW51dGUnIH0gfSB9KSIsICInbWludXRlJyIpOworc2hvdWxkVGhyb3co
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6bnVsbCB9KSIsICdcJ1JhbmdlRXJy
b3I6IG1pbnV0ZSBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyJcJycpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIiwgInVu
ZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6
JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiLCAi
JzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0
ZTonbnVtZXJpYycsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSIs
ICInMi1kaWdpdCciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBzZWNvbmQ6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdzZWNvbmQnIH0gfSB9KSIsICInc2Vjb25k
JyIpOworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBzZWNvbmQ6J2Jh
ZHZhbHVlJyB9KSIsICdcJ1JhbmdlRXJyb3I6IHNlY29uZCBtdXN0IGJlICIyLWRpZ2l0IiBvciAi
bnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2
ZWRPcHRpb25zKCkuc2Vjb25kIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1lcmljJywgc2Vjb25k
OicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAiJzItZGlnaXQnIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonbnVtZXJpYycsIGhv
dXI6J251bWVyaWMnLCBzZWNvbmQ6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnNlY29u
ZCIsICInMi1kaWdpdCciKTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZU5hbWU6IHsgdG9TdHJpbmcoKSB7IHRocm93ICd0aW1lWm9uZU5hbWUnIH0g
fSB9KSIsICIndGltZVpvbmVOYW1lJyIpOworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZU5hbWU6J25hbWUnIH0pIiwgJ1wnUmFuZ2VFcnJvcjogdGltZVpv
bmVOYW1lIG11c3QgYmUgInNob3J0IiBvciAibG9uZyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIiwgInVuZGVm
aW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzIt
ZGlnaXQnLCBob3VyOidudW1lcmljJywgdGltZVpvbmVOYW1lOidzaG9ydCcgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmVOYW1lIiwgIidzaG9ydCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdwdC1CUicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycsIHRp
bWVab25lTmFtZTonbG9uZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIiwgIids
b25nJyIpOworCitsZXQgbG9jYWxlc1NhbXBsZSA9IFsKKyAgImFyIiwgImFyLVNBIiwgImJlIiwg
ImNhIiwgImNzIiwgImRhIiwgImRlIiwgImRlLUNIIiwgImVuIiwgImVuLUFVIiwgImVuLUdCIiwK
KyAgImVuLVBIIiwgImVuLVVTIiwgImVsIiwgImVzIiwgImVzLU1YIiwgImVzLVBSIiwgImZyIiwg
ImZyLUNBIiwgImdhIiwgImhpLUlOIiwKKyAgImlzIiwgIml0IiwgIml3IiwgImphIiwgImtvLUtS
IiwgImx0IiwgImx2IiwgIm1rIiwgIm1zIiwgIm10IiwgIm5iIiwgIm5sIiwKKyAgIm5vIiwgInBs
IiwgInB0IiwgInB0LUJSIiwgInJvIiwgInJ1IiwgInNrIiwgInNsIiwgInNyIiwgInN2IiwgInRo
IiwgInRyIiwKKyAgInVrIiwgInZpIiwgInpoIiwgInpoLUNOIiwgInpoLUhhbnQtSEsiLCAiemgt
VFciCitdOworZm9yIChsZXQgbG9jYWxlIG9mIGxvY2FsZXNTYW1wbGUpIHsKKyAgLy8gVGhlIGZv
bGxvd2luZyBzdWJzZXRzIG11c3QgYmUgYXZhaWxhYmxlIGZvciBlYWNoIGxvY2FsZToKKyAgLy8g
d2Vla2RheSwgeWVhciwgbW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQKKyAgc2hvdWxk
QmVUcnVlKGAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51
bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwg
bWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiJHtsb2NhbGV9Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbClgKTsKKyAgLy8gd2Vla2RheSwgeWVhciwgbW9udGgsIGRheQorICBz
aG91bGRCZVRydWUoYAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFy
OiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIiR7bG9jYWxlfSIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpYCk7CisgIC8vIHllYXIsIG1vbnRoLCBkYXkKKyAgc2hv
dWxkQmVUcnVlKGAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDog
ImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoIiR7bG9jYWxlfSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpYCk7CisgIC8vIHllYXIsIG1vbnRoCisgIHNob3VsZEJlVHJ1ZShgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIiR7bG9jYWxlfSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpYCk7CisgIC8vIG1vbnRoLCBkYXkKKyAgc2hvdWxkQmVUcnVlKGAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCIke2xvY2FsZX0iLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKWApOworICAvLyBob3VyLCBtaW51dGUsIHNl
Y29uZAorICBzaG91bGRCZVRydWUoYAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJp
YyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIiR7bG9jYWxlfSIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpYCk7CisgIC8vIGhvdXIsIG1pbnV0ZQorICBzaG91bGRCZVRy
dWUoYAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiJHtsb2NhbGV9
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbClgKTsKK30KZGlmZiAtLWdp
dCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA5NjJlZjgxZDE4NDY0MWMwMmZjODg3ZGJj
OTgzZGQxYTE4NzM5MWJjLi45YzA2MjYwYTg1N2VkMGRkOGExNzExMjlmODRhMDkxMmExNmJhNzFi
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAK
KzIwMTUtMTItMTggIEFuZHkgVmFuV2Fnb25lciAgPGFuZHlAaW5zdHJ1Y3R1cmUuY29tPgorCisg
ICAgICAgIFtJTlRMXSBJbXBsZW1lbnQgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVz
b2x2ZWRPcHRpb25zICgpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xNDc2MDMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFNvdXJjZS9jbWFrZS9PcHRpb25zV2luLmNtYWtlOiBEaXNhYmxlIElOVEwgb24g
V2luZG93cyBmb3Igbm93CisKIDIwMTUtMTItMTYgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm4uZmFi
bGV0QGNyZi5jYW5vbi5mcj4KIAogICAgICAgICBbRmV0Y2ggQVBJXSBBZGQgZmV0Y2ggQVBJIGNv
bXBpbGUgdGltZSBmbGFnCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>267629</attachid>
            <date>2015-12-18 08:24:09 -0800</date>
            <delta_ts>2015-12-18 08:24:09 -0800</delta_ts>
            <desc>Archive of layout-test-results from ews104 for mac-yosemite-wk2</desc>
            <filename>layout-test-results.zip</filename>
            <type>application/zip</type>
            <size>803567</size>
            <attacher name="Build Bot">buildbot</attacher>
            
              <data encoding="base64">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
YkTAwvBgy+oAZIgNYsWpDIfrAgyzVNZR3HA04JU1SiqVMuUNQ6t0GjKDQzlcQoEGyDQMn0wANWI3
5kaFkixoKvkdcgh4cUfRKiiwKCqCzqp7g1Hde5KbOwc2AElAhIjokFRIkKWVkJoNqUAC6BmUxkzl
ueJK/D7N4+pmq2QSc1y5cKXAVQ+VQj6sElQAgqKomkQPTatXovsjepUk+g2jAee8OjWuWRbyrDQb
tx9kggJBLZKYNE1+Ps2REgQM9xLLqP0lHy9oh926H/SHYSv03WFQrdaiMGwOr77vzkXunkLPzfEz
dLtevviYLYq2c1I8t7dvuU2XR/39qd2bNMe9XrPpPWrTt7Cspe3zjLenx3SllLw9vvJOdOrM0m40
HJ2jeaDjN4uuo8tbtTY5RcNA+1ybu7x2z+s9p3keFJGrtP3BR3sQJlqzFyCzkVtz9dBrnly54cnd
IP2e7+RK9zlQt7tl8Kpk5XxovTbsbMySYDHM8jctbUUNf5otQ8NZr2qLMisPobZsND42GxHpgnu+
V6p5Yh05e5xnjeZTK50wozWZlJvltYza+fb0NkiyF+auXXVdm01s3giU7mSb71+Mhn9O48a+TJdp
Wzuf1VdWvu8jvwidcaPbzc5e72nJ7OWSnVPReVik10HNyHu8dzLC5XHsZb24O/Kus5y/tycLvrDb
3bjXfmteGoeAXYdPYRifxdt7+K4pu/X50je782WtsY2Z+cHicdoYLK9s8GAcXqbzxUfh9D2l58/X
m8sle85Lb/La7FrTZLAMzrOXnX+Nphu9a85qUbBvnXuLxHxuLCestX1xsku2GjxtQnt8mY6bmbB7
/GP37OaR57rteT5dnPLp5NR0Ubm+Mqx57gg1CLyHq8u9vDvu9PSglfdGnWysjr3J5tBU2sFLmNr+
7tQPru3+Jj31e5Xx3Gvqp9pr6P5ms5iFcS+LPOXcvrpTGcBzoyhY8+WkYKek3VJq05VzSQZMmb53
lVSv2vj5WyY2OiXy3bx3Ck5VxKXnnk5+PgmfThPPQ5LI/FRr9iaPT5tpODumXbcXPHs9t4mm8txH
/42Pjuxs2/5ibTurYTnoh6+NqbIQnrfdvL8Eb9v+YVjrrBdqfAyKB63TTx8eHl86j+dj27uao1fN
eyza6mG+2nDr+MY6xTUVbxPTzgrVb24OceQOCr+2fvXSqxtM8o/leeLzRjffjzI7mPa2HdbtMCNg
6+nj24s+OY4mDtc7S1OZXRsGe8kMw+k/tmqdwbn5PDrmWWvU3q6m708vR/0QTEKvUzx0/Wm07+TF
KvBaO0/L/NeTMFJhx+pQPVzjxvu54LVF/3idWcWsNR4pq/DazAcZf81FZDbmbM4+NvsJdiXW9lqu
ImupquuMPySd4pjF42HTyNa19LE/XXmbfNjV543X1rOp6x3LWOra0jmKj+HJEvq+2G2ukXo6++vR
39/YKeg2f+WmfwBQSwMEFAACAAgAuj6SR4PMsShHBQAA1wYAABQAHABfd3B0X2NlcnRzL2Nha2V5
LnBlbVVUCQADECx0VhAsdFZ1eAsAAQT1AQAABBQAAABtlbeyg2oCg3ue4vS+Z8hgbgf8JJNz6MjB
Jkfz9Ht261WrGRXSaL7f3z9xgqQYP47L/liOErCe8KMK8X+NX8haxvzX+07lvz/EP4LBO7HlCQAC
gvqrDNX47w8Q3F8BCPgvz/H/cCiLkajAMxSOYCTOQlA7wWknhWRMs23o96TKamYiqrcWPg4FcK2H
V8MmXSGyJWYK45FdY+2Hmy76Kw2oKowQWafms+jyyjRn42mxr7KZt3mV/bi5UvbpHLOInDWRDbpe
K4RtE4rO+weC9x5hFBzWQ1q0wUOmSbW2SMgRc1WzgFe70hY5YlzMo5i0RQluZaLfbB5QhyyQ7BWH
LRhzMnU+dIju/NPQkekbUKzP1B/ACmc1jXlvy4ZZuITKRfGeEU+2drpjZei2promiHHgfsTu8Gio
HjKzKPuyoUsqfveh+AnbyjU4aUM9jhGQR3DZL/WKnz6nOEUa2aAmiXH8IoR+jQP1gOQ3szLO6eIS
z8HeaZcXXAXb9va36NQf2eTiqqHEeJL7/Et5OQoiUvkhOs2Nt2jv3wHkWdU7EDyfuEif8Z/EIH0J
Hdnz9FCZYGdiVOGXo6OkR0F/ntdjdlbM7OwecQV9+qj4EwrHgjl16h7xXsPjWcqPjyG8q5Wx+5Vb
4eWpq4OJ6NpaazEdOZydhvzTKvAWy2yNdwGUq7GQMxhWTICDebrymqw0m8XsOaWgqTnVvvWpBfxu
htcS31Ih03VPAv2iqrdq+l8SMu/Sk8ptdiTGuy01Dgx/LumD2r0MXCP1ZlL3PhEU6cfHkVHOgq1T
+JEuNTpFuasQFHqmWUZHU0VUw73aw+rpEZDe1LVUCLzruDQyy6z75idqU4lF/LLRmlNltKBNrPa9
dRjU2EID9ia7MqXfWIdfRNuwXG9NeyJ71zjQ+PGl0mCrTLYNBn87Vsp9b3Jn4MFWnf4T6k0AsPfq
8Ken9OFJt3ZYCQiIMnt/T5/HmrCgO1rBl5YK7Hhd53uem7gkIC8D1qRHBx3Ebrkaqqu6wlTJAW+m
XXvUB8SpQt9/FWKyPNXq3yuKvV702ypzhFMeha6PqEE3swEJBTAiM1nObSHTaLALojU7n+wUiW+F
e0Sud4NcpZl/5WvOl1mgAtl6g5edkdzXc1saUi6JymedcvlI3u35ip7uSzK/Ikbaf4NMJmzVr49p
bQ5Wwh5tInBwLCh22xNnBW5tvqCXEhB01X2W4xvb7ot1/X2icFnKinTF+u50wm2Nt9m4wp2xI5qk
VLHpKBQFl9tnlPCGQlrs64efmDzc6VbLx8N+N9jKJ+VDDOKseQJlG4BpEt6Isn1kABkbaJ4Z2s9h
dl9HhSYi3AH1UaT+AuAjva5XYnf74NIdc+aPLAFgwistWLQIPEWBqBNQq/Eqmn7/HbPsiKBTSqNI
qa6gkEdBJ5dEN6lnhK0HZskuRXMHQgwYHMXgkXIeb89DpymW+3bRvQTF/Jghwte8IJe2xVaJs5+a
ZLPCD3EU0SMP21dtLHc1sysr9SrL7ecdVee3GlJUe7gmKaEMCrFi3LMA7nqBNua7x3xrUYcZpxmg
OUq0jaKRu/Irb5BSFrOifu5iv+Prm35OYfmXXUL2JmxxPMIhH9RnMztHuW0mZoUL7e5ubenvJ0fP
dsQNa5x5kWiNJdwrZBKD5ONEN19BSgHo/aokVYkTuBEsmk1b7zO894ZTbpBta8e6oZyqzLmwwYvQ
XaDmHikrEvFVaOY2IK5KhGdRJriJXVkZOjadkVGkl96u19yLF83Yfq0U8ccJ7pErm6YpUlhMqN3L
hTy1vAb9D0+CAf4/tv4DUEsDBBQAAgAIALo+kkeURzvlRQAAAF0AAAAUABwAX3dwdF9jZXJ0cy9p
bmRleC50eHRVVAkAAxAsdFYQLHRWdXgLAAEE9QEAAAQUAAAAC+M0NDMwNDQ3NDU1NjWK4uQ0MOQs
zcvOyy/P49R39rMtT03SLchJLEnLL8rVLUktLinmCsPQYoSiJSc/OTEnI7+4hAsAUEsDBAoAAgAA
ALo+kkeYXHl/FQAAABUAAAAZABwAX3dwdF9jZXJ0cy9pbmRleC50eHQuYXR0clVUCQADECx0VhAs
dFZ1eAsAAQT1AQAABBQAAAB1bmlxdWVfc3ViamVjdCA9IHllcwpQSwMECgACAAAAuj6SR5hceX8V
AAAAFQAAAB0AHABfd3B0X2NlcnRzL2luZGV4LnR4dC5hdHRyLm9sZFVUCQADECx0VhAsdFZ1eAsA
AQT1AQAABBQAAAB1bmlxdWVfc3ViamVjdCA9IHllcwpQSwMECgACAAAAuj6SRyEVqOUzAAAAMwAA
ABgAHABfd3B0X2NlcnRzL2luZGV4LnR4dC5vbGRVVAkAAxAsdFYQLHRWdXgLAAEE9QEAAAQUAAAA
VgkxNjAxMTcxNTUzNTJaCQkwMQl1bmtub3duCS9DTj13ZWItcGxhdGZvcm0tdGVzdHMKUEsDBBQA
AgAIALo+kked/VStCwUAAI8GAAAYABwAX3dwdF9jZXJ0cy9sb2NhbGhvc3Qua2V5VVQJAAMQLHRW
ESx0VnV4CwABBPUBAAAEFAAAAG2VtxKrWhJFc77i5dQtvAtegDkY4b3JQCBAQhKeA18/mjvpdNpV
XWvv7tr958+vJKAZzj9BKP7jBUYiRuAfE+T/bfxBbMMAo2hIomjKog/ET2oHKd8e7b73yauMCsqg
HrdgtNNOSzdaq+cQyvPcK1p9qeBzIiNJPw8nWLfQKPORfbyLcvWih5cL9kK30RVUnsA4zZnukfVq
pUeInfOK93Mu2Vw6zy5CGVh7zrcpBKKb2Wy65FeZEW371JgCxT4hs8I5R0P0WMSkiGyNwhIO2AFL
YG3VAa1Gpl0o1LUuBtG7tfnMZ0X0zmoI+jx4PeW+I9CPyYhlaQUPOuQ1o1mmL/Q/nxnFafzoOSQz
4Ttbsfsj3Q8WQOsr/0SzBd+MGQHChlkeopU68it8s1lVxiwIMKkzh88kMgR9Jg6CiheT5Am9h6/W
5YR64H9jQNdTpqBKlXOQ5HnffEMRfVESvz+zQaOt7yijHv7oeNuBjMT15Gk3fMJd0Dmo5PrZ25Wr
TWf4wY5LqkYqJ5UqjNFVt7QyyYEdX1fB6RPxiekSIGU621rHNaHUopqcm04ccQnL8h6aQwJHl+5V
ars9dhvczMM7+O5AmZMNGHDTpdVz3gjVfgX7qXCXlKtM5fhO0vS0YWuhTDkw++xU0r8jNLPphokx
3O0C1setEYWb4sg8/L6R7xDbSYdLox+cojR/sSEhc1+o8aQ83pcOEjfH+TqXxiZdt5R8PTmRNMRz
kKySuSoDIvARMdfzPcqRVoUDn1RqCDYLG6j8kxiX0GyHM8LXNdVZ9UOpc6BedzdSN2+LDo/pICJD
hYMakNsciBfI9cYcX3eTPLx4cjLKDGjF/yRQe/GznU3Acq4YiyJdh/rgm7vVnQiVS+YEWq+wR3Uq
yvS4hw8w4uSLm21/l2r6Oljf9HRGJiRdkl+4UMSaRBtLQm/TYgmIKz0c5U5DMltCJvUPdsOx1fPv
Ndzufq33cXTDTngFL2syme+TUV3MA7b9lxhGZIe8fqqCQzgDr24g+r7U4FNS9b6Qra2ZilXi1ONY
KVHlAuJ72nFMSBDTt4LC1ow4CUlE5vOQ+WJbjuasbr0ZL0NxS5WqlfbPPkU8Kw65hAvtRqn9W9RU
lBQujp9HGVpR4upgR6qlvSQfm2GiSHYXXCGDC7+V35XMNCzJx/N8KgPnf8hTBoYsbcdZz7SnJ/Op
aGQIWK9D8fj5ulPxLrisOuVnkUZpcuxzIbvXD9nAEwMc67HytvSUA2+E5EXIo5b6ZRcjb2eZnuvj
F0PCUliJNEpMSF0F21OZG4k2+XMMsoML7w23oezZKxCXlIilb82ZWesHIOnxlXvIss/lcq5dnh8K
pJ5K/Bd5382irt9fTQUE6YxsXtpUW7cR78lkVcoccVkxcu+Bk58v0+bUHmtmgQusrnhatqfZ7Id8
AJXQ3YiP7oo55HgfLC5m5Dzh8ssrMJhhSpBGHqgHFS/NbZAmVKakrOLT9aZESVM9pSoL5xtDtyyx
8UZ7m1U4uoFGEauTQuElel2K1Dnm3XL8hyzdZLUnveNLNj5x6qmeG6pkZBcgeQ4X0bU2szhen1Hi
+dW7BAsZAN/gERpPIHgN/M3I3F96j5B9pY12VO/TjyujD3N7qHv+XBYTfa6f1ihxLTefVECKZ7Fv
0R3x6d9NYymnrx7fheyWpIP/YS47GNOO3B/ETN2Cd7wG4N7wVexhSUlB2P77L/L3rQBH+f/v5j9Q
SwMEFAACAAgAuj6SRwxl8DfuCQAALhIAABgAHABfd3B0X2NlcnRzL2xvY2FsaG9zdC5wZW1VVAkA
AxAsdFYRLHRWdXgLAAEE9QEAAAQUAAAAnVbZcuLIEn3nK3icCU+3S7uUEfOgDbGJZjWGtyqpBMJs
RgIBXz+Z9Fy33cb3RlyFmwZV5Z55TvryUOZZnvBSQq2OT8BL/vMbPU/yUOS7LdS1+h/srP75djCS
h5yv673jRsgD1NXfj/PFlpfHg6y768XukJfLDdSLJVcNc4o/hiM33CaHy75E5W9CraI4kjK/93cl
xbf9mpfZ7rD5VsqiLH65xNd5mpeXtxf09HZl3ZN4W0I9kEldseuKAYYGhlpXmWLUo3j8ScDNSnmo
Q73Nt3XF+iBgfhAYHcVKJuXNs/Uu4evlrih/P633j2KdJ/WOvNRb22wHH+y9O3yXkUPB7+SBHszQ
Oxmo/6Ey3a6LvPzzwzV64l16XB+Ld1fg0x16GAMnBVMDRQFDQGKDxsBWIRMgVTBM0E1wNDAtsNT7
GjQ8SsDRwXRAU8C0ScTgICUwEywThA5CAcZB8Psa0BBLbibQDR10BzIVuAWmBFWDhEGKylMQDqhf
+KBwMFVwJDgZOA44JvAUNPyzIMkoulQDNaGImH5fQ6aBboDQIEtB6pBaIFSKItMhEeCgIAMjA11A
ltzXwAUIC3Qb8IvJQNFAE6QBo04kpAnYGUgGCSfNdzWYnMR1BkyCkZAUBoKpsxNIOVk3bFAZ/TTl
fQ2GQ4XLHEhVkCYZNQWFjxEJCYlKycSONg3QtC/6AaUyyAywBCjorQ4Wp2xkNigCbKyOQg3DMTPZ
lz4oJongF+wKhhV0wMYoOKXOSOkl+oZf0i8yqetgO2TL1ClYFVOqkELpUPYwFnTS4aCmoFhfVNOm
SiVo1Cb/UYrbkBjAHJAWcCwE9oZNXcHs+xqEoBJwTCC6Kikn6K2VUj4zBhL1J2SCM3LjrgYcJZTi
Jk0H+uAYlFWcMtWiTsayoh4mqKYp+6KjMNucau1Y1P8cq8ZJg5LdQtOBOzQ1GBr7oh8sAyR2vgF6
ShXEKcPeMAywsb42iBRUhzoKG1V8Vc2UrGMrojlsBuxPHDRMBeYQ54XdRsbCCcU2+6KaToLxfjoJ
z/vdVm4RPk3D0CxiCoUxpvxCsmeDOSetLs+l3BLdFB/V/3vs8QLR0Mfj8sDzbVlA/ZMt34WG2x2F
9+T/g9M3gE7RIeQ9optPSjBI1wHdA08Hz6MkagEVw7KgEUAQgKtTTj0VLJ9QBscYm97xQTPv2XWP
5ZIA//K/Lb/IS46tHkDDIDg1dJovHArPJhdwFnBOQxUUHxrYjS594gTpPvg39Lat2j0HyOyk4At5
x2KQL/ISifyNsP9CatzWh3J/THNOtPTXTR5pKt8v5WGD3t+zEVLtUpn+V2Pj7qg+lYKWhxMyLyWG
kpHwT/T3W8ncNTI1+pefZL3HN3cD6Y3gjZv/uv2squr7b6/O22/ftvbKTAtDW1fVy+F1eVJtfu/a
+iS/mWuefv+sVb3zTvn+cTP4vzYgQkFGWJKY1FiS00CbCrGNnRIzECIK0JG7LCJARKnk3Szi7DKF
BldmN5K/YbBxAwCVE1k5CAw40yZRNAIe4oH+jqDSlBgVrSAVI5IhDCc38ENVaBFvIi/hvoCCCdIs
tuSNfN7EEfURLFOFPhHwMATcIxDVyEpKn1wjSEbWSpE3bHKevQPUJKWWV2+siBCIsI0kT8SuEZgh
jSBvKyohq22BZtDSYbyLHU9pleCUEGFTyEh9ghEt0KKBM4zgKugTtwOkZYcRov9yPqOUIrAhQis3
OsV4kQZRBE0rCREUs25R2LQ4IIga72K3FOJ8zICCDuu0HGHsXKV1BmkN6Si7bVWYyUwBLaOpRVr4
ZZ2BMAhoaXlRKXW0ndnEGBlhKliS0oIsgc5jOI5CYPwmjklTb6VHkMZ4kYcRjzAPWESkQeRk3AjQ
bXQGS4Olz0ziijdx3FywSYRJ3YUhYCBINXgB8Qbv42KFEWEjoXJaOm5dZ73jELyJ7YGVsgW1BG1D
eEenHkBB1SQywcUatwz7pyFBtXsTx1rgOolUg3xrm7S4Ya5wKUjlrVETcgCXMiQu3CYwdvypvNsu
M0lqMXbMOdYL1y7kPVwZ0KL8GYukEmS3PymoKO/XW4wIY6H9Qqt9o8cLo1av7ofDcavR8t1xeHtb
i1utYDv2fXc3XbhVy3MX+G/l9rzFy+vyJY+cinnuoGi4gZvGw6KKBrPgaTAIAq+tzaetspZE52Ua
zU/JhpVp9HRNm3HVXCa9eDw5x6tQx/+V+Dq5TG/vZlU8DrW3dyt3UouHrSp0/9Xqrguh9pYiWp4S
bVAtFmEeuyzyR6/RqCW0YBCiNxPX1VteULl03qm5O3R54Kezc0NcAt9/eGhPh/veNlml9jp6OfNw
zq3FXC27Yed4bMVzLZ6Mss5W5H1XiVSj1lru8+3+Yb5+ZU7Pdlbscs29fq9RPGovitXmTnwcuQ2n
+9g5aqNOuQivJT8WVrJ6CDrFZt+qDVwjue75edXbZ1Pfj8V6az2k3Y0WlSuja/mV97SOK5E5z8Xg
3Dw8P3jHcDBXXx+Vl6mibCY11954+emcrn/MUy0ctZfRKO50ms9mcnjx9ruy8bjsVrOleXldNXwp
T9Z4Nfa7ZXKI5lJzzk6NPwa7cXhcdJNVtt+ezXU2Gbatzdl2yxnrDDtin5b78W7YtKPwdSp3wfZ5
1Z5oetBfPy2fc6fWGbnWSVGfr6hmFHWTA5s0Ci0Qon0x3EXsuW60WmSYcckqn3pgyMae26qoL7xF
76nWHOhhYzGYJJ11t+yWT/1hQ3tM1RfZbdte6HvbYFY1q5vgyvMWVWPnTprZk/rkzXbHgEW18Ecr
sf1DNQyv0XCXVP7Py32sbeAuntGHOHKVSdoeDOLY3UW+X0TYCw2vwpOmHtXoMBwMtbiJNZieTzO1
UfDIuaatVi/VUq27+fBuKSO97E51na/mL8l1cq2JZqpxrX3mzdnlRxQeReSsZtPzTmg9tljOdZGz
UjTn6+54Xsymg4/nC0OrpVpy+c3KD7Icj4wPbR0MZu3Obt7CXz13EHa9gRtgK3s1Nxq5mj0Lzfxp
WeoaN9wycAzHuca6N/phD58bypP0Xw8btzv1X6vFoFTnat6zFXsZh5OeX3vWO0XlLAy2O+yYXFXn
bbvTCtli95BZ6nDpBImidkKvtOa6E1fXjX3uKsvr8/G537+8Fhe9JqNplXvDRn9fPHS7ncGu9aiJ
njvVwpbYPMySuZssXvvq42Qb9fMlY/FzJ1da14ajtYb22AlrxcxXDk6cn4uFPu1fjOzFf+l6o2Fx
WRzdwbTl6s04c7ft0+tqYroHVVf2T+Vx1Fmp2co7LrRar8Ea08xxsode0J8VRnh1mB0MNudGz8rX
U8s6tPezzTHST7KtlbO4Z7SstTfQopPZQVgTNb2/4ZOH177YXe3HH8c8Wa8fu8P47584GPaCzyj4
D1BLAwQKAAIAAAC6PpJHrLCUzwMAAAADAAAAEQAcAF93cHRfY2VydHMvc2VyaWFsVVQJAAMQLHRW
ECx0VnV4CwABBPUBAAAEFAAAADAzClBLAwQKAAIAAAC6PpJH7YGP1gMAAAADAAAAFQAcAF93cHRf
Y2VydHMvc2VyaWFsLm9sZFVUCQADECx0VhAsdFZ1eAsAAQT1AQAABBQAAAAwMgpQSwMEFAACAAgA
Nj+SR+nrhX2aNAEA5GMLAA4AHABhY2Nlc3NfbG9nLnR4dFVUCQAD9yx0Vg4sdFZ1eAsAAQT1AQAA
BBQAAADkPWtz08iy38+vUJ0q8ukqmfeDWykKAgnUBpblUQvcukUptpJo15a8kgzJvz89kp041siW
x5JscorCOMZRT/f0u3t6MJGHCP5gz4c//4fV0ctwcEQQ5k+RfMr5U8w8HymE/t/799mrT95RGmbJ
NB2E2VE2Sn762SCNJvnhZPRsGI6C22OMkPf606f3R/gQ/9sj8JPvYSEwlf/C60BR/RBUMJkMgsF1
eMQQ88dBHF2GWX54nY9HSyDgGcgTTOktYAyTMPPjJPfDmwigzMEtQIJVeJQiT1G1Hg5DD+GUQIpX
Pw2HURoO8iiJMxs6FCviYSUcwPyV+Tms2r/fJfPjdZDGYZYd/pUtQdJMEuJJRRtAwjWEW2CIaDwZ
hYf5Tb4EBlMPa0I2BzLbmij7219+6xNgiiwP8mnmD5JhaCOkENzDnDkArtJx/skkDat0JFgq5VHV
ZMfIBjuWhpMkzS3wNJEeJpi2Ae8OsySzgTKb14yGZM3m3YMsd9BArQIUSGhgSSlcIMY/gmz2j58H
UZyHQz+4zMPUH6bBTz8aB1dWTqESnoWJZg5QG/IIZloJj0jtSsll8g2SOE+T0Z06eWbE4JgicjBN
R8fFd4KLEaibIB4mY1jZDejp68lB+fP3aHiMD4pvfZ896XgyvRhFg/95QtA4uPGBVEadL+pzeLjR
5xxh2RIWthU+g6WdfGOISv2KvD/79lazP5eIyaWnCd1fSsYJ6KYkDQ+AkN9rCako65iMZ3981O8+
vDwV5+zN+Tf20UJGhJ0F7X4RgN4N/PVH0djYt0F+mP24qlgBCdoEuwn2Pm0bRqpr9v92/vKEvH79
7eMLSTE5l9V9E62JYDd0LD5YQ0eqUMd0lPQzeo7ff6Jv335+9eXj7xY6cvar01GrrtXI+dnJW/WB
YXr2VlJ6jqtk5GqPyTieFg7Pj2AUDYN8nVIWomNqvkP67Wv28vnz94q9+e3Pz1VqSqEfCTUx4bhj
cr7/8PrL+fmXt+jPU83Jp3c2cvJfyumyaErWNVPiL19O5PnvX8XnL+Tt2SuLiDupGUuYaKL5+U+2
OLvwxxmAU62AWwrsH0anZUzPPUbFv54+rQdDW/J/MG0U1dvBTa6jUTQp4kMItsPBNI3y20MT2Lwp
4prya7bwBkvNzIveHPZGcSJuJOxLEJY2aBJfLW8QFoZw2JlwP8OLq9FRkkZXUewPRmEQGzm+TFLg
voE1HpREm9RBI72xfrOq1AIFD0GuYJsw3SgZBKOF/QguwiViFVtNiAllIUZrZ+mDrBLICoo9rLUT
gCWNNE3TMM79HMTmcHAVLUMywJQi22JShP3Z0UUw+PsqTabx0MZklHrN0hzLoECPAw7DKAPBiExS
L8hzwHMMH2agZy+Sm6Mg96OxSeVAeHE7CrPrMMwzH37FaOOhjQEZE57UopvlLPCQdWGXaQD7AYZh
OV0oPEIF7UjEWZMcsQu6gzTJMn8m/gVu62hP+qC9bVl1lBcgCdhpSfVJuKswDlNw4IwxniRxVkjg
s4tkeHt8MI2jf6bhGwigFGhCJTTmjB+clPj5n24n4bFxHo4moyCKDz4WadhjgtjByaKXdLyQRnqA
EIPFC3io3hlCkjC5BUIWdCSnpH90hMIIM8UYPLQJOucBWPC3yTC6jMLh8WkaGccTK3iBhcKrWeqT
Yr1UP0UU3p69/WRBtlmu20E+YNVhGgejDTQl84SiXUurdV21ihLcVyd/pcGSjNviZ9OLcZRl8IWV
tAGX01hR0oap3mn4w9vCoC78ea3Q6ZuX9PTLB6m/nmBeDX8wUqhrJlve2xWGGGPM9mhXq2kUpjve
MnX27uz89K368ps8f/f11JLbA+7vZseu83zih/9Mox9rVJMEM9c51yyspo5hFPaaVdQcFjIZTcGD
Wa2kcVGh56prUszXUksHkB2XKLiZA6vEPkskpqRrkfx8/pJ9+IO+QuiPk/d/fqCWVJxUj8jnI5Tu
l2ktf8WhrouLOkLX/PHl5ZtXn168eUO+nr/+jTz/aqkjcNmPlgJJngCV7eqKQPRNmPoFtnZesaxs
JkYMPx5JY0LxR4QOl+C+dSxrZ19/+4Y+qY9nv3378AKdvrN1UMiu7PFlmIapD4sbwj9ZnkaTCYjc
zyi/9sdhHvjzbwSjn8GtvQlOME8S/muLoJAdb/KHd3+e8c/fTtj7z/zVtzcWhaoE6drpqtnuatZb
MXC/OGtBjhf6AGEP1/UBckE9QdmO6HDvjD4rvgFfOS75vlJCMXUO3fk6w8F14hdBw2zF9gwGZhr3
kuInXMp9lPOqQBPKOhZo8fENeSGZePc7+XDy/NVLWx5Cd5WB52jnBmEYXgbTUW63CNyTXO+RFM8W
W20GBjeW7IkUC3cb5O43Uc0pYYhopNk6v8nI5nkyCAy+x0cNXKgymhUYK7EzzCjGlLeCGUZW3Fza
BJYkmmjTki5beQ7pLnXTVDPE4Q/gcateoGA2UROBYz0phmKtFbXAQXdT0fUyG+oFKVlXK2m8o4k/
p5j/8zqM/WHyM75KA7sTRxUztg85rPr+7M3QH4OA3rcf2Vo/ODiLiu0TN9XSaZnFKNjwRoU51tRF
ieoyqeANMar3hJlFo6xRDVvEg3DkD6dpFF/5l0E0mqagpdMgu7am9CXxmFZ7JDp2lag9hWg7NLlr
9TQVqWw6GITh0J42U1ICgfj2/HdfY6WI2ZmvWTy3AxFdlkmCPeGia5uVHDjbF3tCnEVwr/1MSSmm
O8OsWz9TMkUd3CabfyhkK8/Bgu1CaRFKd63Ryz6wukyo0KpbrUqLvLSGsHVVRypr0GV5G45GyU9L
Z6rmpudrj5R2SXJLEk40OhPXi2Mj1ZbyMJ6O8mgCnpxp2/ZvrlN7tt2UZolLCNWsNb324C1WTHlK
C2csZ6oxB9XoR1dxksJeW3SAvSkBKY8L9SjtlkCao0dqtwR82I69YUS0Y7e03lZ2Gjep87YdbP8i
GPqLgmTRRfBARtjOreQ0zoLL0J+mI7ulBC3Wve7ewMTcr7cSFoB+787r2NDMKKxbVv0TWFWYxvMz
SZfRaPTR8Jx9fIum4GeTviSIcdErH1tZFcyeRuLRKmgp6eM0q8QxBdlcVoBtkr/DFdLCaMPu2gZx
m2rH/lGEdq51K2cehSdxb2ZZIL4vmRjdht/3oMNCruuwkAKILWhXWS5NuhW5PBpDwGCNEbQgpuyg
W0iqNzjsyDXtzY8UHaUOy5Fwaw7tYOXGL5tJzHwpdTqCaw9j2Zk+T0OwWFauYkh7gnWUDLkZL55S
8idpArTITEQcxaA2p+XkudX7o0yvfI8eWefV24ZEqbUmykioEp2xSpLZT+5rcDsUc7eu4HkDBMDz
KDB5udk0tHl7lHXvifC43IVryhXCQgiIRvR690028tmk8dmoRDtI8gjNGZFYUMTcsVn2rkt8BMU7
2x6lMCMNEKoumxGXsvqiBzhjWhNim3a+Ko8vnAQKqgI1O5nGRV96jWrdguCuRqqICUTDw1UuuqnM
3a6M4LFi0lNuTOlkL4TuFNk1IRgGGQA3m/VnHuUmZZmHo0QPxxP2YP3CA4+WUwd2cZodiom7n2kO
XcfmJGx2FGS38cDUL/wEdFWalH0PADNZruBgTsy/qFX86qe+YsJRq7uDNehJ5nGmOjL6K48+CdNk
LPvSWpSwnVV+KGrbmwOUQ6tLBSzJPclwpyxZlnApxd0KdgmGCN1zFaKEa2b09ma9XUqDjRIadIvQ
d61OrAyEEtiDIHebpBD4drfl8GRTgYHwqVArmT/rqSz/Z5QE9rPfWJtxpU459+TvqBjhNjW9iP9M
EzPPGUR7Gpa1oSwcR8AzI7uUKwxWmrVifS6CLBr4pXKrNTwUGSHfAs+FXFH5SSmDhZhYB3Ep8EJI
6/Csxo5iCtSU7WNndx0wyB+WWnSyectZIG7aodE2oUmTyd8cbwMh+2capCEYLqNSnoGC+V7Mg/t+
nVSGJxodiTwnia+D9/M6ysMRKLTvF+ElWNoSeC1sjZibS1QD1Y6geyF8iyBYccmJUCDruElUv9m8
JVaZt1SGzgo1m4LXMrJYK004x2C2UBNkX91MwMHMVqJZLLMGTamRe//fFqe8NYSv4IkqSlVraMqn
pH43OVetKDaQQsB5pk0LNVdrnArfnqg21Dc4ACflh5YyhpkzornsEr2K+uZmEsf27mjhxmC7CwO2
DzsgNY6ywQPDNy6Cob8mV5XTLaIYgajas6/+NAd31+Q2rifPgNPT28tpXKS5j2EHT5Ok3MRKbsMj
xO1gx/IyrtbwCcGYt88nZsRrZkqkxdUp9UkC4QmK+gBf8QakcDywUt3oURikq2URS95CMF/iuL52
IKRys8ubpJScms1blxKFW+GehUHV4SgESzUxlWizGEOF48ov+CvYbZlW5k4ignBvOXdzesqec9/0
dMj73z+uoVYW/GiTVj5Qy6kukIECSFLTkXIfBdf0EhSesSbtcs2VKWaanNcwyIN2aCHMrHC+hSUq
elTMwmYiZjIGAPAvaxZQmOPyknaiie+3xPyUxNP4LklRZxRUO5p5ne1juqXYdgOUq4khDc6T3gdl
irFCbsK3qKoAIhiOUXJ1ZSSwGocTM7icO/W8daG47VtVSSoZxaHaXfEDrZ4nx0/IaeXr8NndL8D7
ip55Qk8Nok/oS2dUnxARxsPvs8fgSgOf4Qu3A44le4IrYZYdxMNCBRVqKYlHt7OV2T39InVC26W3
m7FqxB/FUVi1jYmPw/xnkv7tZ9F4OgryJF1YZAbLsli3AwhkxkDW4ywP0vuygb8ggpVl8m0O2bVs
+uyUPZgz43GFFY3iUBztisxAzwqRDyZBfn1c/hqxRJQ+RJMEddWRKURL8TapjbfJzrjaMFYDnsam
js5kJ2Z8Mvch6/wUpyJtO+Qpos5mQo8ZwX2knLgQrNt9qF45bO5OJL9gGxZVCD+m5j5F2ONPjQvQ
uPS/pdwhGEeOsXh5qcplMDR41UU+nEhz7L+jvNja9hp3rXEdmUmjt34c/IiuytkGxeSRO028uu2F
YsSL86ObnPFvPbssBNk21Ft19ZXgtJ/UqqJsTwJJ8wuV3J+5zxqrjqXIqdtoFQmAywG3OqsrMWyv
3otMooXm4HEjLNrn7bLziaG9CZ8suIvG82JrJO9uTsXsA/utfNic/e+cpzvbQyI7qDhlELbWhwrm
QKBL5XIzkgnWh5cv3Fo2m9KvMq8GN5xA7sYLSuxD4hUh+oiCAa534SX3HgwA5UjnWlD+grGtZJJ0
JbCU0h4qQwRRp1JIBU5xWnxuTC0HGs3QXCH6UNtSE1cDBLy6tqyKJRXg67JWm44adJAwZW586jIL
V0HfJe+OVTslZythKjTB3JNukxA2raCCkuI7of2KZPzdiQJ7Qh5LpvZsyfMDF7NcvG3VIFl0l3Fu
bXuLlB7GAu8ZRU2/8ipycibZPjMBta8ab5HsuM+XjU1q8PY+VTZXXDUDvRhSEL3sRmYaFoHMBavC
xY623mPFFe3FmnPMfkHPUHMu+jrVSLT4L2jWRwLtRvduUn/kmDye8FZit0lIDzzp4vjc0M+ug4m9
A4YyYja3Dx9OqVbOeyzMqgLuXzerSiAOgSLu/LiX7rYLmrmUkYLJpCSZodOqWzAwUsTjLucA7kDc
I/MAGIhwdBlWznRR5nGpe6rcEBcTZkFsqVcmv8krx4i561zljYeHcafo4g6r4AJc7JkUJXFRhymP
0s/ULKBj7yIFZue6r6KblIr0A0k06wfnG5HTTkFmvFwHYHO0svtW6yReeT6Dm7GjjRqruLsnv36+
BHZYwJJAxMmMuA8v9KkmugQ24+Z2MQubUya1aU9BnK5zA1jt7bEPJ0Cx8uJpRYjeGUIIE0zcEbKh
s914Akd0GISXmFKlpZZN0NmsuYVX/OY5spSq1hSLuQpq5h/7c8taq6op0p5i2F3RPIgSbSrHePBZ
Hk4s188DcLW92M87YEyqzX6axNx8rVd2uGyNHKmeb2pklfhah6Lh5lp8qMLbKG4KYd0iT5fLpKrh
cI/WFLrh4ka5jo1FqOaYDDWJ/q4w9OPZ9a/LdDUuXaNSUJ1XEI0X+imMUYadtF+Bw7mJlGm3LFzn
+cMzm11GyLdNXSmhWWtsM0mTKwBtn9pJOfa4cnZz5lquPKxSDtnJphd3LGMoWnNrumg682bTnbzD
t2YbMRUQ6tAOIfv40BjmZZQp8K9ug33WZSs0kaRL9EgNerrRJUC4QaQ/m5pkRsKt07KYFeyE2XYy
sxZpVoO0aHQukW8f53FNt9nVYGDmCPs/ouCBrazk7gjHoh06WgBaj9CA2VLUYe+GyRj+DqZmjvJ8
IJvxioubWKxVGnMhAVadYVencEyp2UHwnaY8UkFahVSb1qONZmJsbwqdSOeS4XVhjFoWvLm2z7jj
XHmqWXdl0z2ybA+hUnuUE1ezvoeRt0aY9KJnCWpWN7RwwiJXx0N/HI3DuwGRz8YlBazNKCZdyEh3
QG9sMJXQnUAEZTmKyvtq7IA1Rt3S938H10EKiuV4ml/6yoI5QZ3Seh38ZlMk1gdpxvcOV98RjonH
tYt/v/lGr8NausSId5a3uOi6vFV8fqgovvKDn8Gtn5sP6/IsIFggXYS0F5/OlFQduTFxysfXWRL7
WG9z7Fi3kJxOAwh8xxY9qDg4gsQ9MNxDC2Keu60cDKfj8a1lwqk5pkfaeXjFmgtztXMvCUm2veEr
cbAF/BAe7ljtYqz7cFmJWzbMRse8EnAawVfb2+1ieilBhxfjars1MSaDtoNA1f5z3XAgWTMErqLL
ZQCoYWNvMwDVHkNOtMeFaA2C5XyowYGwHn0ExkUfQRbXbSTgVxktzDHvKR9Dlexii8o0u/0yD08p
9XgsssQM4z5yCMB2vEu2Y6anxakCsqJBbBwOI2sWSyJH58+SxXL1qpk0YRztJTFDqHMew5Qfips3
k/GMqvMJCMVIJZNkNkOWyrvU7D1D2M1cudK6JoXIpYcRpTvf82ZtnXz7FjGFVD9aXIht+gzMvXxL
Fz7YL3gwFy7IPnSdW5TjMBPZqcbkZoqKuXsEmfcLvcuIc0kZpVqQ+o6kh/YqmA6j5Gj5JiPkaeME
od3io5TEnCIi4E2dCa2zvlV0KFe7RYdIk+bG2uTvm6GzYnOIcCoCtIcNY4wywQgjohkyP6JhaEdG
USX47jmNaM2plk0lZwWvKUa42ClCglDEsDajznhThFZsECNE9GN8WLPJ7humRKqZD4qJ7Lm6QCTb
JuU6vy9qockrimdDo8LZfU5W55gLT7bU/eDqsM1P4ffSKkSIdtrasttpduVQkA2iyHpGjDNPcLIF
gHtMFkFVuZQYrw/L3py+LZwkCBrSoT8J0nw+oNcEFMFN3QRGwrAnVCv+bHFx3xy1aqbYjJ2ireQ4
105rKY9Gz5ZSmeUDSCu0XXvnCiqvitgolmYg85bA19OZIbaFVABRwcKN/CJTbU2Xm3sY8ZYdsttu
IuVuFZOK6D9E1y78mIrdYqs073gBqyccabZdfTQcgnMTGSrbz6hLUST29Y6pjGkvVH4eD1/MrUBl
HoOnVTtdYOF4Amuo7/vize4J+1WiSq45e0xBP4ew7hFFLmZ/xGOJk6VkSj6eFIakUu1W827tFG09
wU/IXVt4Bwsb/oDtLVew+L64Bfo+HLYlfZEZu28MwG6RVmS3bo3LmYdFoi9GkIskh3Ayq57Nx5ix
bcL/wW0ajUYQqE5Te0RMDRCmGNoHN8YljLVlOhaRrp17IE3usnV4/mWSju3yY6IClzaIOpFdvLTd
nzUL2fdYQSAt2skiRQAT3kzy0jQNif/kJXqiT5+8xE8UMu9fvCpeSfHKFz5/XryiZboIjzYb1dC5
bvkPe1f33LiN5P8VvnieThN8N1BXrlR2snNPV5vaZO91S7ZoW1lZ1JHUzOX++usGJVsyQZkCIdFS
rpLxaGRbTQD9jV93OwMn2aPBW6QzCzzxoz1MFwtK+Q1+OOoGd/Io6D1nQEIqrbz1psLiRU+2A2dt
wgv/QZOqLvPp8438C3pemx+/kT//47evLfCexMhVsBOqnh/nt0NPlW7IBb8eh9UZK68ndLVMiasJ
jXAxkn9Q8f0+p1LqasKF5m0phpjy9LM8dwgzTGrHmsRmZNtN7lh9M/nlp19/fcsKnJqLflRNfiOE
V+b4d3tjDbiPvbGcsTQWZ7/31hDvwbfOUDaLqnQ+yZGjBS3upiWefOCEtR72lHSaeVntufBNLU64
fkFnRgg4S0C0ueLlPM0Kd657m1qj5huhyk6eaQcn9oS+IgOKmy/IpHDzRfvXf7n5wgMej4yJtbvD
s7Ka+FvicFCmDR5wsmTCZqd3uTmUUuASjZY6J1PFXOCmON6JCLm08qisZXirCbDxeraNUlkv29NL
hSP8Irfn3G2tT7c+0V4fWHM1IQJdXlxRiGAkV3AtIYJBxo5wXx7mi3y6mtMMhTvfIXG+pH4+nXAL
4zOuGCueTohkW4ioCuZs9MgAxFRbbLdyJ30d2NRJ59YqoAa9bogPOkMmK4s/fAVEJ15GiYwDk+fq
TyIMT1snU06Xj3lnF0EhFTOJXRQq2crLb3nZAUAS+CKqNmzLMvfojKDWeOEXX79Cw++6oB2cSYjr
MRNRm6H00NxhYEeXfuh9cLoZI9gKg0FyUDdp5W7cmMIYtR8Y94SDC18GiHyi7S/W9T+fK7r/Z6Fq
IG012MTn4LtuvSKJwmMDJIBvepVMA+8SPOgcop3X0R2BWxOC8KHKP6gAjPCEk1lBjca6hyjRogWo
U6864DIaGJKCms0fHnIv0iRg1aQo54+7TR1fVv2WxzCcRtYDNi4+RmmB3gVXynbPiuhylf5OluH2
7g/85Fsx2feRDPpI2umRU9zKCMXBWM65OXZ5bZePCWFPzZ8BbyyuDjTdJjpmmJTGoEYcxiN6sjuO
RXHiEcO1GzdiQycQDRMIKfWxyyPo2HtCYKRQH0IInHIKjl9gWwwUjdo6sRiothhoGJlPLGjmmDPG
DGSToBxo6ix8aFdN+l3F0KtfJxJztMVfLxfUvrGx+rt+YdD4W05Y0fM+yFt7bDjNhjr+GbZBRVNN
tZz5XGATTdC3lhSE5tX9dNVZvkKdgUzE6iPjQzieEm7qdPEDLYzW9bZo7XXBNJipWLZJS24VlVwc
w+AHJ7U/FevFbNI1ttZSNXhEGLxTUEHtC6a4tqqeLhZehOggb5umMijQ1FXmk//mTzWaOf/qa1G2
vGounKKwjgmp0x5xZ+NQB8dx8S9/+xUp/c/zghzYzfSOna1o5rHTlFEiOaFpsoEKE0Wlgb0aJ6Um
LFB99BsHPlR57Lb17VJjQoheUa7pmsxF4Wn1Ok3l/o/78HUcpytUFCtz/i2XjnpwMUi+zHbfN1Qb
QppesB/Te6ri58/HPUgz2cH0mpaTYMHcRexsV9ohLx7CWTTAQ9T9Wp709TyIVptbKJkiQZ1ZPlvH
J0y/lifpZUWKfiPUB26zzWyvRj4Dd/mwEwdnWKjLrOHnP0mtM2NUjLd8IaG4lv0yYeZCs1FaqYjl
hQBHh1N+QY8UBN1ccDbq/iZNh2lj9bjLOW1Erk1UUPbW4jf3S9NH6jscDv8AvSmlWGJSbdeCM8j6
Teod5EodeIrNeGptz2SmWoUduAESzrLRImaRB1IJVJbloYNLfGu6mP+vbwseZChmgdptJfQh/etN
a7/7RVGFA5Kmq6pJ5gDsAsfa5hi0pIbDagSXTtO0hMhgYHPLPJ88T6tgF0BJ/rIxMY7Ux7040VHJ
vUu5wmD9JoFcqN9kKHIaIa+D8anigo9CmUtm5fkpW99aJ4aZIrzUjjJU0ARXcuZ65VWBifJAPqh2
VY6BveKwjfp3pPAX93CCh9JIT/liFcaeSUsgFRMhnw/rxaK6L/N8ufMyX+R+GsmrpDYyGvTquJLo
vMoh3vuq8MU8E1r+3j+aG4WnabmksY7tSwXnpK/FOOL2poPqfImsdbAhNOFd34Gf9iTV4D+7rqQs
xl3SygRe3MEp50IadOcET+HO7YIyt3nkumjAbyFu5UDRZUzE1xUJrKhsab+kI7hmwjYpZmGAIXsr
FC9zj4Nso0CguyAhbUKitcvBxLJg6owxjxGQLnqeP6MS9teohJkuluvly5VqMMVLtXHMscT6ryI5
PaT6qMsKi4m4Bmgh9HrT0XtfFYmoXNrxx9oK2kH3HOfSU0WgvBS4vSg0M1SQaFw3rV1x+dTuNYgN
tqbnyLijNKT3wdGaT2d5WYVHl+ms37DrI5yLpi+EhyW/j0gOH9Rb/rcYkJgYqesqSd2cUCj2MVSx
oNJuyV7WsC5ub8TX1o/jey+/gK9byO4b+dX7nvLn4/byRphXrDf+NqG98b18Ofvn5vNaiA1LM4ej
A/p9DEnf4RgHi4CUoNoDGP5EfQZDOBPhLzwuirvpYjMB7WUSGomCl/ymMzGay4ODipWkuvAEG98M
ktmMSw+s0wGB7LWLpZRk6omMoX8gE78s6vkD7nmxbNHc+Ck6xsTsDlLqJNA040QPLCptgP70A8r0
5GFK9eflvZfhLrAcowJtrU/EovW8DqNthKHid+nGTRswDQYVGJVcDU/KKqbgQyxHOWFT4JJFVJY5
EHBU+M/njlFuiiZmu3HzLeA0/mcscM6G84EYO3uttBEMHPK1cUn4wMboh5T5MMbAKgAnQaVYkIyK
pFMuiFsurQV5dAFBSO84mRqGsRHY7jbR6D5LdRT4uNp1YL/nd95CbWKKZjZHMctvH6mH5LL+tAV6
325+8u/ND34h1H1gyCi1ReA2vRFbraunqsZXYYC7zbSNQW2+ads/qfPnlce2+404eu2cym1G5Wfp
pNbgwBhpkjB0hALdHqLveLgJlQsfskzqcv74iJw9m9x1jxPmzEj0JJkaOfcvUH1LwbkQOomuM3Zc
5Q3WCWa1RGfPDecNI/m4xlU7AqRrK6Q1Kc6HRoWNK7tgjbSSS81EigWhIzUuNkHjeqRBdeR4AobD
k9ZnqiSSMeFQTEELl8YMcuyr6d0i78h/YmDHXZTS2Wrw3f7ZLV1OR4YH2NHLwg/rhhORfp7PZh2t
3GwGcly9JBTZDKW4czqBmtVuEIcU92t/E/G9nOMSaMcm28sJEUxV4cFx/OBxNQdoAYIrkFLxJLrd
spFVoWKoCBnTTCeJBK1zI+POjBHcWG6lEMO53Co9bvkBjXXDCEI4m8JUgZE2eQhU5vgUuLbOKAgg
Q3d1ZOUHjoMC5I40PozlQg6MQOqiMcCB8ZbUj4ZrriFN1N6taw8E8AZi4HhdK/yRh9ZoGT9NimA3
Ij42VcAzpUzStYvg2q09+f5GXar1sdFhF4emABjO4y4kPK7n9Uax4zbCOuZ7yJlB9yqbtsrV/Hm9
mOJ+7lwbV9Wk/SSfCEcwXc5uUcmVr570y433onhs51xg5LCNRkZydPa4loMth5WWm3h9d18W1Q4c
1tuLydaQFHe/+/Lcp/ki3FqAefT/OAeOJ9s67k+raf10S78kPv++ap+8EMKNjA61xqD+dlqkMHZg
dJRQJ8xAkEunOEdndbhTh2LBxnXqcCWcgeIGVIoMnsXdGUk8CDTSQxsSzAGcPMbWt+PtkBKpglrk
UM8ZCVTtP/JtFXDgHEBqm+T8Qdhx5VNoywxdb+vhQYo1io1k3f2U7Z7WParniCdb/fD7Kn/0Y6Bp
tG0XTtAwmR1bBvTiTG2k4WFeU5w2pX658+fHSfXtMdyagkbMW3VSAx+83KehZDFQyP1IYLPEL/Py
vrkheztgglpOKjiD+jnQjVX7xnTxW7yltAF3ehhe5dXvQ16W4WwnOgKZZkylSHei9GLIcZAaozke
PJ7Yqlj5LALyLdJtWreu8iXJ6FYYq462yCoz3A4JdvzY44OId8LMOuXSxOTvTVlWjKeW/INFE1xw
l+EOWjdUGO8bKUSCLSkUmdZyCC9uagPwgYkRkebThKEQoFGZVZ9XLQQZfhB1TeIDTmw7IS8MEpXU
G8XaK4KoORZT0NHWFq91HNPyMTyS0hmdaSvSIFNezqlLpKjKiYk0wruZ2BNIHUlkCn01wCHghOG5
GtwdSCnMNcHUQPKR0+pJYT3IsyOj7hLjIkEpzk8UymzV0mSr+V6jmKbUpBWyOBbzMPPlfelTvtSN
tBnvUdyvq8ld/lCUeWf0QnXfXMPJIrn28n1SLqStaU4duuz+7YDOJkyXssolumrZHYz31gGSPM4/
PmDvujvwAUWpXLHE/pY47G9xBTExa8xWAj/nVlrFrgpVZqzmZ2J5iI4pHha5H/086Xc55BSGgdJe
EbZMKu2uCJuprdJXhIHC0zll3r3h/3kd5P+oK0lr9FUhSZUZGdaeGj5FKxqdo2LuPLntlTeAkz74
EbdRrtcV4Gkf95jrBtcrSw6D8iTN+FDVC8AHSUMWlMWuqEWwXgYdRoshyD2UMhNSiEt4Tq55xHOS
O1Y9TVf5hpV9KVLoehWJgNMXcWBC2cs4sF5Jq4+wnxfxnOgEyauq37LGyctg5F59LsZ/TmUuQ5Nb
CVeETbdyZNRc0soBYNpeVakKMDNycj4lntVYoS5DyA2w64FeGmsvw5mhQduXYavgMpxY5S7E9vOL
CF44KHUZcnQh595vQgZcCiTcqH5DJ7sSRnS3O39cTg7Bn9BPVpnWnI26cSmhx9rxmBj241ZuGFzL
uHydGOpueD9ERY9E6FsO7wCOOZ31u+XpkTE7iMCUUlBjeXeS1R0UZD8w70Tb+uZ6+C15f0dsRBZ1
e5COfL+O3fAWGVPRaRYldWKtikW+gYhv5x43385nSH6WT6b399TpPZQzFdxSckSNKqhJkVzagZaj
LifpNbx2io2sRlO2g2P9Gm3DhXRTZJzBuL5bUgQ2lyDGPZ2kkA8GYIbo1td1vLznmxe1+xYhI8jM
2sMTzzvprPD5d4g1/ZHwvY5mPtxJPuopJc2GcT629UmaZeL9UslwIU1ohI0ypo0DSj0Nq/qPRV49
5Xk9eV7XvnaMuoyR21KX647W4MZQr0N3NcGdEU6MG9ylBZ+hCR3X7KW9/tH9pqxAgi56UamRmC56
UseEFU2N8Gq5XyKMUcRkulg9BecOofdBKR+I0xI7hU2d+qK9QJRJQy1RnU6QZ9qMZOgaI0uglQxl
x5o0KwxMkBWGU3NAkTb+3tQDdw3+Mxj4mlMQ7Jiw4xQ7ATWapPEy47DFJzSNi9k06LVDhXeamWM8
v+g9pJl7SQm9u33qnc4ZCdmRm5EdwbQFf+gh2+sJDXFPnLye0BC4jgG1ftQkEXAl5fWk8EAIeT05
L1CMDTF92+Ybddc0RCcybUyaHPp7xAzTmZYxg0nD08m+T+f1pH7Kl5PdgUPttpTUt5kxDsakX2aH
SVI669chN9GuMnZFeQNrRs5apw14Xb/isUsJeK1y+noyiPhR14MDMNBvVBxcDOoOInTou+NGO6bF
yczGuKlRkzP7Nd+BY2aYfpsu5rMmR7rMv9OV/bzMNzNNw+2tZSZcDGzscIY2nJSl8prEs9lbgz9j
Bqh+eh35ScAN9mk77vOWBzvxGG1ldKR5eBpkR+DOCWIeQbFj4O9qW4PeNbXZxl8QHTc+lDFz5o0U
MSWC725kK4FKDRBlkiOLnBVMP/X2qYDShBBtHTw05KXkUzJ1aK8Zo6hCDGejJu+D1MjKBDSpyyTo
s9ChNZ2HDj+bBf/U2IiK9OHDul6jucBX+HS3/NWiW/T3JMcvTnaHs39tPuj2azn/N/QJuMUv+Mj4
lR76xj+5f2x8+R//+dunv/42fUTDX98/tepmwUkb7ZE9588UKjUqYVXiIsg8NKNudi1ksF23oGHO
gyrSDt7hcHTCTSaZTkKh++6GqwTqu3heTSsCoG3Ax+3SeWkNtUqSVpyc3Ka+O+aK47Xp6K5IFN2j
8qSOY4Ju/gvymlSZg5gEwTG3QjAIwl799xo/HPXe51XLmnC0pOQzqwQEhA0RsMISLw/Bgs9n+fOq
8PpqvZp1DHmhcZ8oNw4i7yC/5WU9v58uJqhbHpc0GzpfzJdbf2TH5xThmWKOZk9IGLSR/vOnS/LG
p4uFdw/82JDPn39o/n+YVvUbzrmb/yuvPt89rz49o4vm9bl/2Bt6y3/OT/Uta159LcpWdCaQu5CJ
4zL7gSxX+7C6e8yC0Oej2SgfqQYZhiZVuFJ7azGZIEHip/lgaeQw2VnW84d5XnbmHS2nHs3uBE/P
nbBKUV76hB+u5J/UzWoYWlvm3DmSHZwGobiB98Bv2BE3eboI0JLKZUJLmZZalyZCfzHKbHTnp2r0
HQjfNq86fFSQ+EeJgeub3uVBmy5UZEHDcYbwcD9vplVm9LCWHGMaROZUKrFqWGHDGJ+n1bwVUgjq
smLVn1qTGWNiAsYOuFoYpUZd+lViJRZufEp1vCfXXhufxg259p0jZ5T1/gBUP/hgSy/s8YJ2mQYm
TqxkZGcOEKISOR9Ctzid+NJg58pgWtf4VueIPKVpYIA5S2KYC62H9XuuFsX3ybp+sBNSOe2Gv9wy
io+Z4kyOXD+ghLWghdBgjy8zffmNn+dIrZrTSd6+nuS/I7mXGZI3QjwQABH/bteJ2X5bfkK8GWgu
0PRrJyBBua22Vo6MmZdaCWEsBo4H8ICpjg9GLv92zAjyH/EYOwETgepEzUaGBXKJPi/+AXU0lCDV
4RmmlPsIhyek5TxBDRPrFRPZWLcinLoXVDxlj6d7nFPRI3LplX23HzKTpyIe/bUOcVY8//DaDpWK
ySd1mW930V8fNqjx15R8sKafWZ31K708+Ci7rViq2t8VE3ExmeX5KtwVhPeE7MXQ5d10JaE8+Yno
EjMHO84DOcKD5BSPtVyviNSB7DqAQnefRxxnQ2bbRwdpFWXfmzwM1ciN7DfQwV6IXlW8l5mwV+HR
GOnAfoTDO86joS7o4z72h/BolOZygGrZrZxvKZmuXCyVpDGXhOomPfpjm/rEBnOmUthTEzZBwqpX
L8gBLk84i8IcAcW4GOLpHGpE79nzXc3//twoDfY8Fk5qiJX69o50LnjSXd4naZjyxXqeqlfy4ZSs
1HTge0b3tY1KITDKJ1xB8d1rZ/zdFjS0wcJIo8wIaq9fl69zCOKBaQi839CrEyhntOCjy6bSfBwD
IRw7NWEX3nV+wSL90qs0Ri8dt3s8vHuCXcHumZMzvezYPXv5u2eFOPXuqeuVXKNOHgrocCig1OXv
njYntxoivHsA15OxAcYU/GkyNsCEgsvL2EDPqTrXnbEBrk/vnkNQ5PtdAX5shSlkjH//4fw1CZd/
EsJcwUn0A9p8dAdWXoMn5CJkogvfW9XTel2hFp81r/NgV22htMicg6uIn68hEHNXIIzA4RrCEjdM
GHdKz15FsfJr2XnjVrQAZVxm7ioiO2D6TFu4n1zwOG19BYKkY25ZXvzkRUF3bpuq/XCymGua4WXt
mY5pP4uhqf465hIjivZ+HCI8i+gPfqdIfWPTXPLs80JXsaOEzLHzHIhk+wxPtBw7PbsLrZKtz7dZ
nfhvootV5tPnYNmMzKRVF5iskEzqK0qQyX7t7lOwtthjbdI1kFDH9mY7BfpPkxG0XBh5HlW5aRAh
+YkBwO/Cf7U10ZhDX4VGm53PNuU53f2cHVeZNTbiimi37K0sHnGTq/m3/GDpG2dR/sjHwJbI/wfk
oUvn4hG4O1XeeITbfluzLXO2S7gIeyuFPtxr/HgJ+BG9tDW6jU5ILjAakzIgE1zrKOT4a+nYarqu
fFVrdV/OV/W2BqFdQ6a0Uei7sJjU7+GaPGogUxT/mofhJIxzmhh0vuPkvm6SDSfYp/TPWjiTRyD3
7IdESlbJERxRLYcx7Gut433HmD4FVHV7pm2FVkmzNTqZSQxPgdSZATNGDHGeKF3tJVOU93WoTcPR
+nWns0BL0/qOimU4SMMglDNnjiF4XE80nTDLvi4XVMxczu/WYcSuViYD4Xqu5pe//bq3nO/lHI1/
nT+v/GRUf1gvRnjT96u1uT7b/4nalN56X/apaM+wsBgcyAgppYObLx9/QGHbOKyozTavfJe4UDtW
EBh9mbQclN8/Fc1KA51ZhM2kMcmSj3vS2aYGWmbg9HCTdbScSHO2AG8nqnMgpKOGPqq7iPy/0K+4
/eL9it6F1BP0/+F8hThvVwTUtdwMLgfHVQh+pJvWiP1WtnYYAiVqUhdexupp+Zi323iQK8F1DPC2
Tc6TIWrQRc03DeEwqBajh4oWfKDs+jHGdIqBG9EmHbsZKnRfTquncL9qkZkYjFFoW8Hrxkmxrlfr
Ory3jUzT+K4jAfapTcYr7ZbJ4NzI82pxdASSeehljtJebUZcv+UNzxRBfw+fwsSUdh7ler3xuohE
VBB9JFHO3hDt149rEFG9FwtN/B2Qihezu+lsUuXlN/Q/qvVdZwpLYGAJ4v/Iu7bexo0l/Vf4knka
jvt+CTAIctnsnsVisdiD8zygJdriRBYVkrKt/PrtapK2TDZlqtmk7Wwy8FiyxsXurq57feWtW+z1
LdJ1VkC3ufv2KoD7E2riqe3yXRxCeomRuJWvXVlYeB2TNJrB7HJ2c+zkub71NseN3as1DX2VBzdr
8DoTQ8DLxnjmtzJbxcmh2oBJke7W8UOR727NUaQWCSvZlu42RgUpiGDCbJ2n5bddXn2zy+84bJSy
iPvAbQWcfwAf7U476DEpgCJp5iNz5kGCIFiHUPiwMeRqX+SVjd8/Adl3hAazSU+MlfZQ+OPkUp18
MlqUBJV8xqDYZeXma1Uc0h52F0AM60kIE+OGmTewcpz+vVwgpadVxoJUqs7af32B/c2aYP3yA+7D
N+19ABkJEnHVQL41IzMaqjBlLC37wtPznzlxeoylIb2ydD0xuCrL2LCLOdgjKJ2nZN3tzjwOeDL3
WW6Uc3HYNmWWznEnSJgH6tQf2JUcjAUD5zOruKmntwHyzkVG/MTjPHVMXv4sxs//3NgW8Pvd0gvG
vC3Ohmeem9Tq344CPF1BLRTdQh51SuGCHfuJPQJvtANb2l9t9HMBz9e+/gTVZw95sW5/0L7uPLJ1
wiXmk9SGRdJqMj4n03tLl/HM7DSEDspD5+Hf2T7V6g6GUqg3kTFdc8rcFkXkgjb/0Pm67X/mE6xs
j7PM/qohiuuJWvbh7HsxeXSac5CxpTREj9iLKRsvuvDrViN7an8MZ4wwIjzi4iWPbKpq/y8Ptn5j
aWbD+QpytD6FDm3krxcLdMyWIVTqiOKJpvEFEkhIi9HKQiyrLFZghG3S7T4tHEFOpACHBM8jNnJz
Y2+2+UMtKqy7FuNho8T4PJqY/fYpjrvc6hw6kCELVBL8PowV2kZvTz5fX5rBi4IhIESYnhpsOKVY
gqdhVpffJbaIbHt0R7sYdPXwRaoohBf+Vl9Pn7LDaOe5O7PnJivKagn6dWITvHdvHdNqs9U2tdMt
myxqUpQQZlklu1W6NW9fH+Pv5cD0KBoJnzCxI9M0br8pXVxodfec4UjTl2ZiCQNB1jMt3BLVkaKT
5GNyXebbQ1UXDJRVke3jh01m1MY+WTnSYJxEXGu1+CopElNAzF6Obbwx4gkmn8U3edFphhgMXFue
xkJoj8cwG3Qosur4YmJZ/vC/6U1apMU/wGZ0OphGfrFgO50bnVB4iBIdYY6lDrLq2yJNd4SjR+6a
pqYljwhjQWqlLzzwgb4TDiVjfDG5Qs4bQxpQ9sKUkpeHlfmrtNXIu7wyflS8Nk/lnFShzB+xWChz
zGgVgRSG+n0hEZs8WkWNmMUplKIBTJY6o/3UlQWLfo7cdkKxu7y2Bj+3wyA/74vs3mza57uDNekb
d8+8HugsIToSWnA984PjOR5cMi8kjlE9cO11iC+TEePg/RDmE61qp/LhApKD+p3tiG0khYQfyJC4
m/B7xqLQb2qIztexPOu+YSrIwprHZdHOBm877+Zx8jEP3QsCv5Uf9XD0dbyxcdKTh7OXCH56C1p3
1TyqexKrFBEX/ENunvqYN50gioPEKXb5Q2wcC0Ptvoz3mXO6IUMMUigc6Y95xBTNslXGfNkfz+yX
RuhjyhP5MZ9bCLaY8qNn3S4pI4JnQ6KadxfJgmX478txa2ZiMkXxx7y3nLy9HUDRx2R7L7iyy/Vp
U+eF9GIaqaZIxMc8FqE/pi5SPpMFJumiriNGZSQ0/6BeLPqQkTNOEf2IkTMhMf2g3psiAY2V+Dpd
5XeG5GFnf5Bcb939F4gTc7kmRTls73kNlPBlv/3JKNjk6KyhNV/1R3W8pqi59G5fHc+2wZjTjyRV
/jdudSgsgsv5kXgCbggVi4lzdta1UCwihC9TDKG8tNjLKreT8nfIWZKOdVJ3eJBpmf8uJUAhqsvq
qEXUxj2CEjrG5yNIXAQVno+gcBCkEs1HULoIshlXqFwE+YwEtYMgmdJC0CXYJirqmsG9YVPUI6mm
zHU40QCNcVBXrJ2IO0fuPpKC6Pm2lTq21asldSxB5rqLdMbLzx0EMafLHWPt8Uk94XLcZEXTd9ig
udTa2CyntVmc0BjMqChOwxXdbIYKa4AUoUovXoTN+MJ2gMOt43rhlEX/UF4He9VivprqJqRBJjhb
TfFsUZdTuTsQuF9S66IK6nYpLEQ8CK6nFQ31bYUYa8eyqxGQiCKzzfkaz0I1pPSrdVjw2eERgUpA
/RcO0RyeFoajQda13GEXBaBDFjywyzOnAHufCnMVmIKpRZQYqcQI6uEBE6lDAAmeeYo++kjkNQvh
kiMZAl/m0aSsdE//NJCCoAGbFEB13LsxqgDkTwSoYHqC3jRvG1e4FRXAFJZ1G/TzuNXKFga9hTlt
P/4VemN+vLp6epofDUU05VjrBiTiBS99SZomzvfA91CVHz9HQ14Go6jGxkalDCnRL4BDjNO/+SkY
awe/G1V8psaMEIKWy43yswEMQYzl5sW9oxReT0S4FSALVBR7iWBscj9LV0d5WW9oQjbMXtnvyX3S
CO0WvGJ3jB83hbvdk6MIuqOWZdGebU2Nbe1hGG0yiMEfn+WH0fhOoSFEJEbhjenXOP+vtMjjbbq7
rTYAXdw7QTrKwLuITK+vw9yjUV6tHtqtntxtLOT99qf+RAUNiSFESVCCDXqZCybcGJbjEAn10C1o
+vWsUGiLUo8rd0qBc/DrRsXL9SjX+cmIdSbqubEgkPRhRc8LJ87rBG1YiY4KWOhXrx4ZunpqlMwf
OE4jbasM0G33RZYXWZX9NZgwMLolEoxMOMoh/fJ0qANmN7UgITrEzS+r4zYtN6m5HeaAeyEtFAnq
IWHC6bF2K8a6kU8MUuMnOZmECLOF42Zvh7wVbjWkFskuYs4w9mAYdxzl/JQHxiLG0GwKozunBBQG
0z63wV9hIOR/9y7Kl/Epqmk4gk0G82VU6/kIOvNlnM5H0JWFGAdh4EmQObd0AsGdkZTp+tt1sv6W
X383rOmCgQA5jamYcV3cuZEzsoor08nQjJfBmekkYj6CyjuX60lQO1c4C0FcyxfkvO/KXw29EsE5
q5dsxRnj5F1YM2OCOZ4mSrf+wxE4c8yFmtOMbUIlTpw0zuQsZpgNF62zG2CPXWWWblizhE9X2X1W
HeOkSG1N011qFP162Guxvvyo3qHlmGYwnON1txyuFR2MajD+Xk6r+3RYj5zLeZGi/an+vrfVXOGl
SElMfKXAMhkAob0ecaS53x1CpG0HUOCA1Hlzn0039x31B04u5paV+aTwUB0ysNFxI0egGzqrynR7
445HiUhyn3jU5be6KrLb27Qox8peIXBEmPQxiZyqaXBfhhA+DHkoAX7rvelFL1TEvWJ6DkkvhyS9
9tLLzZ5bVn+hxFwVaEwB0piYL7TcHbQFokONK0ILFinw8SBeZ5/BO6OZMGuUWoaQIA2Yght1gsMA
SaxFCGO+zy9tSrbPNsYwZuOmYQUlCwhPTEp/PZDvLLn70uiAO8M8tQa+MZQ3jsmJiDIYXyq0DnDN
vxvmyVcHmIYXP6UrUFwjRrn1EMMwOIWp2Zi3N3FMwchGHlbUtww8VL2CiYVlCaNgbG7amaTzknEu
ZCY7d89BAtNIKOp7JQy37Pe2iOKVBonRYzWDuKQ+wZ5FzV4+bkLBK5vh2n14xsPWqVQoVMQiSYPc
zHVeS7+zCPBaQl+M1FNc4PF5CqGZkouxmJxLupLz0pUZT1qzhXII44Z+63A9N3yekP5wz824ti0d
rpPB6zpM6mSQfD6C3Jm0mPEMxXJpmeE2JoZn3FJncJ+Q+Qg6g/t0Ri51B/dZQIr9xinsapxCchZV
2GsTgO4eyfEkNfjnwfj3Ru/ZHSw3+WG7tgOxrtNvdgJVuv6Ge3UzmtkM39yEiZMwudDS6E52tADq
UNdbj2SIN8frIltbMyur0rvyKxRI/PgzJpRxIX+Qv3ajHRHWSpIQ7uyTxibuYimYV43UhQU9k9f7
2b7xi33DuXzBqfQ37dvqnrjcJMWQM88YALqwaXg4TxXcZWVsahvRtkD6X75c1X9ukrKqLZXTW77O
VhY85dNddpdavB/7kR/I7/Cm/V0/V18ZRUjVr37Pi6/dS8KVwDB4EzFM8Ds7PykvLIapH+nxbgvV
7M3UwFPv1laoJUVVz2e100jbqQWlM2BCCeMsrGd9cpdc43apwlwvSlFxuSg9r8Kcvu/3dD2t92Un
jsLLr3BbG4e07NbjKhIRoX2qPSasV/Bl6fGl5XDv4hKMQ6ceXrs1Pjb3lD2mQYLTRvhUkLqwKQ1j
aOyq7CaDN4wTfp3tzmXXERIRkdSnzmHCuplYVhoKHCCicU4iECJhqghZVuRKxpelx8my9OSybKkx
elPT5fPrIpFjQZYTGV1pIQiNFKUhjaknE8oFjcMhFUrZslynybKGjETLrk/5hF0GPFm3q0xoOFc5
uV6ZP2s79mab9TNItY+slrWNJGXhVvjweLxeuZeFdcCNXF0/Htv/B8ihoOe2Tm++/7Hd/1mYFSar
tXmA69Xt5i4v75Nr+zTupxA66FPU/zlJMRGQUc066zW7V8VFOFKGSP2fe1VMhSNlDrD+477pPtFG
m3uvvz7nbc7gg2DJ0MiZjsFV86/NG0oj7NTHmvj0f9aLf366+2yd5gMzLc1JEO3nmXTJ1K/tpMU+
Gamw+WZCgLyNFhu5mkIQapW4YK+Ms6GhqssLtibbrYoU+CXZdnObh+pGxcYw75dyYIKgO8N8IZjO
m9G2/PQCOtuG0q4gkFbDif46Ypi7JF5Rbtf8tpfx+17RgkQjod0WtHlHXjzi1dQTLP6jqZyT+i7f
xWefQEScBEm7bIzoiQ21Vbk3bLzPi2o4WKAx4C3LAPv+2voI4eDr6A/Amp+nO3VGjfKQ+ZWB7ApU
02KG/457+p5+iyMBoQl7b4qnr3Y49eqqDSrUMFJ8RqnWU4AIMuZc0AXuRM0v6GfLWObvvhhQTM0U
7nY6sUR5ldaf2mDPlld91L1KeWZsr0hIJHyt16uukdz2G/ZRqloIqjOexSebD7Xm0N2efQLYoq/2
116Zlz1tZw4EQFpRoPhMUzw6UApLhDErgoT2TjK7dtRIvIes81PHW+8fxP3L0rPZtbkrxt46N1O9
ez/OPViZ3Ad4LGheRIuYr9ax/wH9dnO7yb6bv/t3V3AvEX9mj26NAIUtsgAWk/ZJAFqs4nwJxf/L
r7/9m9kgI99+//f/+Md/1t/2twsJzN+/RhSET0oIPsnhE+g06307y5uMk6+4IIupIv7Lf//XD/y3
Wh81Lz4Z9jL/tPq2Sx+22S4te4UeYK5yH3P1TcW5MM9NJaWLyYpmP2uBccnmYs3wh9vcRlcSLAMn
JLsXZ0h52hZROXsbyYXtR1NkaMMztRS9hIE44zikCb1va9aGQgJMeNmtTX3c88z7+CbJtgDeFFd5
OwvFXSwH+OAS+8HerlqzFZqioEPBkXfkEC7Eggv9psf9+RVh/TkEu2il1Czs0p/ViSOF6ESHY7/N
oMX0MTavsypLHfFeojSmHFpbSSCIMW+LGj7Xj38bW1pNi/c82gZ25zYjISOMNfIpGu55LK9czv7N
kUqBX6l9FG0wh8Gx6zGgHyIRSDk92t0f0kUykihMBUFy7ZwSTIxbHTEs39jfcGyz9TTIhSAgbt6z
VbXt0DUHpzGYJElmtpah3rmovtJPNTLrV0wcURsq2TLrFW8dEB+zHdILlKzPmNnOdmPGpZG4K4Ds
GTJBJKPQoUAmdShARffTMDb3JDoKyQ8s0N8xfN4cLH46WYYcIQ4cxlJwnmwvcCgiiQNVU7483MFW
dA7t6P49zy+UZZHcWofKiMqmss65SuNKm280mdtvYXr29nfK6EwQXc2YzvPb+wTNZTn5FLrLFhzG
27xvEhCBvOMYq22aFH+kx/qb2HwXb7ZlnKQlJsrN0QRHVNHZccxecPuriGWSiTBW0eCMyrpNEAPy
/LtgEMMJPfaosY2vb7+Zv6u02DmKJWA+KEb0/6/0Vz7YKzOcH9ipI643iHMxG9bkZY9cy4hRMsl4
bniRejI8XfSVh73NrPZJYMkjxuXf+LLw9q5Qhw1M2N+zyqJZu2zXrvulDkqRKaXYu+Q+u00qcEOT
h+QYP2yybdrMYgTRbEycODOuZ5Hfmt1y9okzDa20akwQlKNLbdWX+LZdd8SqOo6N5epB3KFTL92N
oWEFNFJjYuPdJ+omFYyB83z5gei3bLdOH7/c0YPqcoK5FnKM1XlC84NpS/XkBUvHNWCMhnAknoZh
ZDtDdrdyQyNgRWEkBVehDxkQGdCXqivfpebCHDBmCHlTBDrWYl4ZqmV2vQWU2XUKEEXXxpK0Gswd
4KRsXIn71NvdXTTMG8GBN3hVHPcV+mK+7bVaRcpnka7ienc5IBLjwM6dFC60NYTHaXXxpGqL68kU
ewkT1qT0V6+k9M3DcD5qItnrzDOAtN2AeYCp6EyYSR2NGpWx1H4woelC+9HHHsdIh7lQyWGd5T3x
4VBMHEq6FAtD9TrbX+f7V1QhFjA/Hfme+GMzR6fGyitjipzjioUxPUZhVV54kMOZX271wHRG7izQ
0TKiOAwypPOszXU/x3i605ZVw99hRlFQThzS1xRjq6+VPxtuinrMsROKFuoDuRQiyBG1TUpVWpxD
LmA8kkRM05D1Fl790/71ywGwoOPkOrcBxGR9/GeVVKk7mMdExDCdziZ2T12QMXgUYozXdnYdJqUj
RaWHrT5yMYb1vGyZB7o6+eVgYWySYmesxaaiu2duEC5UpAQOSKpPRCFqK56EmnKXDjsIDsHQQsNo
A32PWMLwNx6CC/bbw62RfBCkhekORVJuztwsAtO+p/P2cEJCUj3nqnoRAUAt4L6iwraef3EUiFNp
8x56Ch/cJ8XxHA9I49lxgs5VXr+qiV6Sgajl8LRlmN7I6XSlVHsFdeHhoUwLY33uqmdIsotK8JnR
LyE34KlE2NGdiiOzdLEUNZjFK5db2oQo0Ov68i6/H0ANUcbYIQr7XpOT0bgw1tjdyKPA/MUTV1cZ
rX939TwRKl03RlyytfaAkzQRdFw0fQTpU1C+oYeIM/N2gd3SQkRCITYHULQDKRqJcciIQRdOhqx2
MWqsdfdZus3rUBVqhZMz9CTBeST+VE5Mpez2292frs5XQ0HOxcf7tLjLSlCexlfeZUMoPwqq2Nj8
B2sP1GlfYxFxrmhw5wj3nSPBCRXGlX0fSk/YmlwdyC00QnOblZurOjBiPVFniEKSSDM+H80kWXVX
KbWRQYqFsQPz/WE/jJ8P0kEiFZhSr2Yc8j7Tw+E2kFUVyeqPEgaa128449FGoRNBpgdw69dNqNDh
8FCCNJSvzCSU3EqVyWhUHenrR1ZzYZwbUVOcKSPEnIyrOPOi2ItC0kiE4UgYrwJJwbHziQhGkUZ8
btI9v4IYBR3mPKG/3LLv9t72NiW7Wzu9w3ysSHar4/ARKx5J6RVxLsvkFhT4qshhtTVUef12Gqf3
UPcBW5BUq42bn6UCONPl1t8bZ2QMJBzk1J8Fx0N+cxMPjq+vLSaz45oF3/Ey3blzdJIb7RmGzU6y
sL1kxnDoBLrdL/Lonld6kttxrdk8QJrdu2+XNiJFyEWW7Zg1L8JEKt19J4MQBjaBhPxTOVbH1l/j
h/T6vqpi6/s0trobo17bXIRaJmvqhQE1ur+NEEl8dLpR4FcMYeOVQaVkUhmejJvD7JwRdHxJ6Eai
YQTfcbeKbR7itVtoVLlQ5J3Y800QC48CCBif66xNRJc1L4gaBxYeNMVJBJvtkLtSHoKUQi6ZOaNq
rkyT21zAUM8T5NYAk8bfD3f7uALYnfj6WKWrfJ3GDWJCO2rOjQ7OVaR8nFH/5+hl2pRfmrmRhM9g
ROsUYAnhAvcELgfjiIVZ5WNVX80RUopFkk8M9Viju3atjJw67AzBOHObgBhBs4lWMy7TYY2JUS4x
HioHhQQZ7N+jy+pBAkMSZgzacJfCuBly1+lNXqTWInDyptLGZWRhqBtKd5Caucuq85NBoY9kFGT0
MNVzI3R/cszQJaO0CXYYCsmh2kA5/KqdqtgQxN2flHYGc/78idoGzovM2MbuogNMjSFzPlVz2SOd
NN6az8TwsRfm50/ti69GNnfsHKjcJ9xnl+5S+yUGIyIud9nNjVsOYuhnCM9r5DyvMUhDK+a5sJNi
XmNRWzAPKzoaiWLX7MJ9rzucqfQpaPJLZXAjTTxW2Q/sl3fJdjsU2tfcl0X+POQQMTPeflGmlSu9
RyEFgv2X0GZAsrvbuCxWTnaAGcFjRpZ0aZy4tmBM/09Nqq+IGcPjmuedewQV0uukWMd3YFc8NaTZ
VZ0YAs9saLSncbChxBycpSf9NjQembDp96CO3nQeAY7z6ibPHTxjy7YoXnRH3OsHhavnW39/3ZzS
IMuG1Za95TY3aezpQ0bMg/F901FatmB7YDf/y/ieb6jfqNVvRCLkaQVcFC4wFr/23Oj4dPywJXHV
+ui9JBvGnAQ3ajo7bMea9HlbaAhcqZB36UQvDAkSC80xSXaPaT9uLfa6o9bZ1NTa9APdSgwwWQma
122gTM3OYy0omsL0be8ycRTe+5iSoTnhHLwN0X7KNsz1lOodbM85tAWslHhbpqIvmIpCUafg8+tr
p3amgDvD345dOKYzCfO+EId5DW968LI/xRCjt9t7RsliV7Xt538uYuhDxo5rHvG9BTUU5gv3eaC8
gOigzoqDcN9vpzXQcOhgEXk1WFTaTpszsSLIpyG8OKMMcQkmPl70K5s0MXyFMZnu3/wfd9fW3bat
pf+KXpKnYULcgc7y6kqb5Kyzpm3ak3M6M4+0RMtqZFEjSrE9v372BilZFgGJAkHKnqw2sRlHIIB9
v3wbxBHY91X3XXP+NPxXQ0jUllOJU5PH+bv77HuVRLO5rff47ZbU6ibrRfF2Nn602HRXj3nZrJlT
OvREf/rya4LIhivEtavDRS67UWCJMe+RuavQGPii6JNue5O9PM4UTp8KvTJnvZnNmeR1O7THFSaM
kHa56TMjAc6NO1UgocKEmu/P03H2m7rQIJtMqq+ubXbO3Uii0paJThehPe39GcnRJoQpw2ATM6qD
D1Tc3CDma91f77lJhGxmqQy8y81yma/GWZknuwC2k3Fs/ZeIfmGb9WzuKJ5ggmFjc+8G/PMDPi3y
Ne9uJLpOvMkixBZdhKTFOp2A15F5/nP+qk8DIo1ryl/me3vjFeitEkVf6Fs3GERy0JdEsMj2BzvH
SKvE/i7POoafwX+ZzUtvQwJj4jXSMyE6fSnvfSygEJi8PEoQxwzSigI2q/mzyz9ppR562tF8YNox
On5Yzd3fi3lcYQ2uMElfkxAih1OhLnSZzfCoPMDWvsRlMvEiDqcZ5jtsy7rM4YiXcDjNUJg8sF4u
Igb6D3R4bN8jcTEiqU5fj2GHt8kYFraqV/fSRsrXd9CMv0LqYDJ2CpmfZUWD+eTBdtPwfvz1HWga
Ete59EuTVygjCKXmFQq210cd7foUzhMRrU2Uhvskg9KkF6fVGJVXF8pMEJpqJWEbmr0+fktfH7Fo
Q1+hBnmFxEGCqkEvLkrCSmn9yRvmTN4QRtgrPB2pX6H51WpK47CpHkFphFx0k7JAkaCsCK2v+Pjl
13og8i9FNsknFXCBG08JD5eq15eJIUQEcLijw+2+QEQHxN7fzMpb27J4CHSRrDbzvMRReO0gc7EK
RQQ1Mz6dhC3dxzR5uc7mc4cls9/cPs5q0OCqv/3pewsrb090fvMO/uYtphPtkGw8gzf0Mz6zK3xY
XzFaffm5WDUGiBJCsF2dyZB62qdc9cK+y3ZoUQIHnK88c0QZfCCGjkWXAuE9yvIt7RsTxgRwB9HB
DamtRs8qrP8PNHlP4Bq4UQ2wpINHOdDtSSJVlstsvHe2OwZxZKAQvlqynt4AmfWhYubdSzTGdoiR
0L29QCULnx40XseNrUFHMqjUJeyl2hyTwsmj/MUdU1AVaMWRB71p+1VZ216pfOLsGSeUhDRUxFc2
DTgYBszEY7yZxb6dz2o8RCeelAHObSWt6HmLHW4KpX4rBKODdaoRKtlqvRv3MbtDPB102JOqLG/u
Qa1SiEImAxTNdnBPsThsR93d264hlYrDflSpLQQgTQM2i3be1z//9rlARCr8fDDzfP3rWpIRb1Um
RI86RK718tW78vu0YQDRkU5Dt5WNZxOaLGcP+dwzYNzg1DFy/seDZANeWyXlbbGZT56mGL4/lH4U
8Z47vb9HgBmC/kzPb57qDm/O3NC+nGps2ZWdiciuUUOGO1qnNTrVnMVlfx+sYruBNe3302xyAqky
Mq2Kib3bORhwi8+sOzADmbqCnV6lb2d3U3JFH2gyRXQ4fA18RK98jVecUASGMgGvFYhTRELYtRNO
EWmVs6OxgINajaA8QUqI8JfUwQasynYURcPvXKjQnbXvaZSUMD1qV5nspVzrw86zcr1rmKhr6Byl
rKAFNdgXZ5R70MvVqFWlYNwEy9mg12xRNSd0P+cXlouqK+YOOKO/l/KUylCKo7gCtPmedZct4LNX
yXVWzsbuphEFvonptMbzuSSImdX0RpQgetQuLNFmoXJjA23wye7oIKKZik7JobOwWVSqA9REr04w
0ZJFtRHciF1gKKi4togj9oLdgu3GmLRQizerHHjilCJGNCMR4jWGAmqQwwFiW3Gx6V+PnFYZzGgR
9fjxLBqo63juRmBv0WHurt/D8Mhfo8AEJpGI+wbslnfr9U3TptV2Vpi81OW3MiKaJciKBbC9B8oJ
YW7K2f+6Z8cKJUFx0ItaLLRhsWhqYuhla1aWyfT6m7udD9E5xEsRC00iYJSLF8GnUpoXzT8OMAoW
yxaqRpXYt6ipykNORDAODlKwXRCHiliz6OugJOaCJO7oJmDsRVA4M6KDhVlnEY8GsInBwpD0cNLi
S2OlZk+D1vyiFK2aFH25Mzx9XFTplyK0aTwd6nRusb/R0CieWYODPPl3JsVIc96XbPcMl4PD1KKf
fSI92R+aHC6LwdHg6KgL38HtYxJsp+p2oEt0lrP1ejW73qzzLeGMi+LbzJOxtSWxqr8T3Sw8ZypN
iKB3Es8kn+frPMHNu6JLGkdJMhGDBacFBi3c8SWDod/hAvbtoKBjBuypGDJgb1JzAaokoDrSkBQ6
ctizySn5+ufqoaO2CGNpJsQuPnd/Dw8PjS0KytVlVjY6Vvy1AJ28WmZTt1BjrOXUEa8VWXV1VXLF
7WEYMxJCdYtZ21osnKAEVsVNvlr5RjBSYL00zpXtbyyZeQETNLgEsl1guc11NTea3ObzZb5yiGth
NI5yJaS/DXssGikxBsOjrHsMUbNdgV/ncz2cHyAJR1jv7hS7Lqo6Ri/1cAHKQsWKypebJQ6ZT7KD
A8UEAGXAHCoNrmTxrXXtujyJaAl8oJVESCXHoQBDrPpqoORsscknyaS4X9h4ZJUCnufJlhVKt+SB
0xXcRCXXZ9Tjnu1FJWJSEB7H0K8OoT6RVmeROGc6S81BLmp9uZfyyC1ji9l1/3JL8Evt3UkmCgct
pFJf7qU8F0K5wPYQYnq/Eqpof1LCjQDFwHVrV/5JXlDrBDcnWyfCErznk5J7QBMbCWnIIOv7GioM
DokKKsMo1rObOkAGt5tPs/Hj+0mxwerp8ra4d0tTOmKp7J9DdMAaTx/9VzWEPlmuHLUehBstw2Yy
nTMeMuXaROJyj39hp6r0QHyVve1Wp8IOwk1lj6v6CJ1bvSEGoL20t905NaLAIJRopRFZ4Ko+lZdS
ONNWA39ZRyNE9bY75obwViOhW6E1hK7qO1PCWqZ8uh0pbQVByY6Ll03picaA+DLAcjqNQ5X7yx2V
LyA0wSxuVdUcuqo/jgAmRSuZ3ZEXSKcy/N1X1YgWRzGzEBqtPSWY6u0YqbsgBDGI2o1Fflr29y9f
vXWU2fc8+d2dIEhGlBIRy8mtetc8uQgmJCg+RWUAcZwoWfwR/OWUC04EI4Y6Chixm/X8VU8nl/bG
Q4JTX9wBNa2X7hQXkRynSvVIS36WVIz2L0k7rVHtqKyzoPVTtxOWAhmJlEY8yINlj8SGuQZfRTHR
/+L+y5RMDCBe0y7KA/NpK0QlHhcbbARyd20RDsYFZ1H20ljRm7nHALuIY1j4apmTlp7X6RWOTl8y
AbuoogvLyU1ioagmSQYO2OTGLbEI0kHaaSPerk+B1qWMQ8jbQlMv2wqslSeKih6W88GASDtAPe2d
DNrBP7KuLQBCp8McHks5Fp0SFmlX5ffpu4dmyYLGMCVnPOrZPTi6VDS23+lYu7EV5s2eZi5gO1zK
gDs6NZr5xPhxJs0I5Gk3u+auwHmcPpWPE5hxxLqhkShwbzlHDtYGSWScg9wNFzg6TJ3hnFnJ0+jb
86cpbeBLSWIGOlJDVS8r/bhDfbZZ7qYiJjzEDT56l/T4XQInCi1U3wfLrZw0abARENC+FOZFPYuQ
W7SvBEtm8kWOHlRW3ronS3HrBZ+/3v6Q172Vj8SyKVWorAN43hVQsJ39TpsHxRgxaZcttYnJazMM
7XGpYpkedkTuO+a4FxVk3wTSAA/RY47LKeC3rHxcjB13ZAToTN2z/8G0GGQjnEUlANq4FBCmsl3r
cgfdAT+SOwAUmSJRd0cau6Pwp1KkJ73vDi8SIhSmfEOkhDPZuf8wWeX/s7GUk6/gJBBRqepcqENp
TrkowUbmhkTRLGWCFW8zC1GRrR7d9X04DY7H4g+HKEGvjKZd93PqXBcFXHbVSe6uENEt5xGzY6X7
28CKcwnwOlhIJC5+YJWJfu8zaIGQgn2sACUs+NostDiw3KpYr+db1K3xdFYVmTwHcXi3nNy83f7o
lcFfNcr4cjmvCQ9DRYe3bjQfKSpCCv4DoRd0u6neLcxce83fi4mzzp9ZE4D2zLhOTtKYLAwwQLfN
1vuR0CrCYm/4r+X0R9LcZmrH81QDvGMllipQ3aisnWDVfGc5Wt+Au1re1tHqgZxgqkMsmfMzbRSx
NIiWHeip2bzvLnYmoATSnhWAO35MwsohntOGr0KLYH0lCQnib4VOVed3swYfFx7Mi6k7CpMauC0Z
yRLbp8XzzTCKg3i10vEEbTOOQFMqJZbit+txiKBPtUJwdhX9hO1fPybF0oYxJh7sTqnttO64krYh
JTXvyIMt5QqnHNMonEQ7zYpKT1iyhhCwZDu7K/ezxQRtDmB5BLAdg4nzzR2mScOs2oZO2Buc506r
KIHYMIz0IED3JnQ5N4kAkzSW4mtu15d+Ndi/aeLSj5NmBG8JmhtDxmBoNJob3zzM50tWDf5cMD7o
gkypYTc48HrszOxwsLQmlAx8c9EyS+3Wo2bomxt2PUHEsPsjbGB6UUNYE8wOnUrpsMTJNB348kQk
bef1VYQ0IzK0tOT6/zWPMyWHXc8MrBNCKhyW8w0WLL4fr3LwIZPvug7gJcX1X7CUOzxLOVhiITn4
NgHNd+8OgGkRLfoppknS9O1ieXvQ9SZHdCRxgk/4CeyJOM9ZHKlGYzodCRmliPMJEcrtX2Dlc5Ah
5ZRAbT0oA34ikxECd9tDbu26gaNoaCz44f1JGQnBoo/mMDRChC2LYLQnHe31pNSI69T0tKhLZBAm
Se/VjDwkGBuBbJgKIFegiM1qtn58X9XI7RU24lpY53KMPbmxGLgdlt2TQnvLVR0Rm9X8CgPrP7yv
+i1vi3L9A3xI6vrnNs/vjWFhyTmVkUxCBw6Ce6iH5CMtU9FFS2EIuVqiEsrbyX2u4KfQCL3Q4TJ4
SkA5TYvNeu9LVxCNkJEG66ldTNB34UdvDIxqcFK6CKSKRatBxXUBiFO34xQ8Lgzr49x+3MwmVwhX
iJq+ic0L+uWMI3Qp7nPIIxVmJGJlihyn65PyIJxYzLq0JH9YwlZzdy2vTQ7GcW5vsm/bQdeHAzww
1QAGEI0qcG07w+q4wNU8TOC6xt0cbyp9bszviLhXvqikJpgjOkRY71sDeyCjcdRIBSRNsF6wZ7FH
STrU0b+tnl8dTjoh2Nd0UCh7odegPMStPPsFsnJdrvNlA1xEgcwMKWXZvQBmhTC7AZxdbsoEnq48
s4JBnMCfLIoxNVssijGaU9+xjuzOaROZEaOmw2r/9Rml1pcKzuX9w1YP1fAusO3iHuFhnFIMhyJ3
8F2n+drCL1cydFNB/ExA96yKxzKpfspZo2LkqFtn9zO95zUqCEWvVVDaiXAWOIUOfPMJYoxUUyuP
+srUJozUZQQnvOJXHPh5MHOuEpuSkXOk5un32W0x8H0i9eE0qcFvBBFMGnZTHZ49WZZC+1/GccSO
rkIEHcS46rab57LpaVWvlGqC9zADr6EUi8zCbq2v05ZoSix8iuE7Us0xtDMME5KmD/B/Y5YhfsP2
v+GeKYdMETBGeSpAqPZL1yH1POevEgINec4ocsl1f9q2Au111wcSibgV5y+9rShu2bkDzKI1zhcN
bDiwTqSFlZsgGOq2sNZlKGkJN0aj7shfBZ92MT+zazA3f5pni2+7ZxbSLX8AV30+y9w16RL2x0WM
0H5d4uVzNxRm3USnmBHIuO8ZYhasahQInMGNlkLpNjoJArq3WI+f5ue9lcvN9dpTRoO4n7wTjlAd
7HVH+DicoGmVKODHbdldtqu6M2dww2LmGnP+Yv4Qtg+8CoRGKyOJB1D+dAVsPr6dzSfgC/n5gAhs
iyBRt+uGoWiF0tVip3sO2P5EDPyB5Bp/Itnu2gPOOaJMtqql5b6Gl8oWxZNeFfM5yFGgr69rsAY+
empmiQIaFuJ4KPI0N4KRUFlTiArqAgav4kocvmSB+9uT29X3N7O5q4VUYTKEB7Ckx+/ASaE4oebt
1gF5wz68oZ/hv90K8AQdEXg02dzdPTYST8qQF/U6hL+k1yHtUo/DvQ8RAULn8LPshNMU84G0B09m
sbytrb7k4aZoZnXhklM+kASf5w8zMISdWQcl05aVLy2Ps5taCjIfqKYddNC6WCZHgA4JDrgRupMK
Ou4cTPLF43aEQvU3s4UtQklsv6kb3RUOWpBhdEK7GoAWKn5zXc+p9GPHCmz573LUNdlgp9Q6r1z7
SbbOrAlXpaeOxegoIRrnZQ/Clvfwd/kx5mREC0RuiUZ5/kAL0qAryIL1A0TJqPfv4TMlR2BbsXNo
+kggEi/9B3vh75eL6b9fZ2Uu+b/N/vzpyz/u0//427T4AL9++/qv20//muKXn/C3n37+8Hf44+c/
JuT3HB98/DT/9Mef/+D07ncO6kjonz58+Cd88eHG/DX97dPqg/2n88///PZ188fdzz83IplCm37l
xl0OxL3OpigzrovJo7v104DDoPvkKiczoTogkg9Evk9HsSO0I2dCSVW9FkVxuHtvNCI5yjQdTpjM
FyfECdCBInHpYOcXr4vtcy9FmFQDn9NotuRZGZBmmLRiUS4j+Fb+RL1RkZWnv/PJggnrgeTNMsNE
6X4TWGVLuJt4sWJBxNUi1E3jYK9wdjmRc86xEI2gbIrGZsgnJqzWBh/EBjr2p+E6w1eMtpxC2Jle
KwhGztTlqNWaPE7wFoEjZqLZ1gcziJ1SAg5BsCH0hFMVUqVaVi2dVoXMbQlIjmNtZE9brKtwsVPa
PZFawZVK0T+fudmKGIsAMYizJiKL2dI/QAGcNSFpXPXmph/NsNiI6kG2VommdvDKoeRyDebKNxDL
2JaORaL+LmrGqUGQsoGoh9MBj1ikAxyxBaU4wp5EkdSi5g9ywCqVA90kjRMT4x55jvCZ0UUNP2La
GsJ6pJZJMd7coYUwKRCf1FOgzVoWAHZ0GaiOK1O5T6YCkfAhrrAG3OasN/0P1i2GeNDW89wdaVl7
F2mz1PRpbhyLYTKmWUvEqQG9bHGiuq4ry/RmWmJcxU1SKY7h5f3dsgf7GUxZ1iUgv1lOsJ3Ui4VO
iUV67/W6BO/zuuYe+Y0gi53cLJuMsg0Cu6gXS93j9xisJeMYU88urKnvEX5KsTP5vYIWOZ6iJW/P
qzBuHg4YKNO82eqJLyhUHGG8WdgnGQ7D3D51GUV8pBjvSNJtd2hDnWrE+xJKbh/XoC2bxqZu6qVu
1Q917yCTsd/DQepEchOd1GlfpG6r2SUdlvBESDVLkOAxygzFxXXEkIs4PLUXMkrKfH6zXwXmrDOo
Kgl70rvV5giPzr7My748vQT7qnYYWC+Je4kYWG0YPRD3qlgrteZemfbKQJTJ2AykvAx0ZvSqDSGr
vggZq+akaEvI1avGoOTo8kx7r4Px6Neh+7oObSHeuhjAVWeWO4lHsH508LsOLos+p2yYhpSiHa5S
4z3lrpYSkqYYb5dxIpt1/5wvfWIhCjqVYzylFrHWZYWNOe5RmLTOQUWpzHSuWg8CO5ziA3fGrKIJ
0aHxc/G+pC8xiD2cdicu66It1hVSWDH93rh0pZlpObujMx2TA6acF3AG/d+6rTlTYC9zJSKfaLMX
lRiqOW85Tbar/CGdXPpTh+kE/h2pTpnIM4ok3KWDbfHO+uFhJ6/CdfOgUzk2riOxxuV6hiNDHYM7
NA7ZVBdqg9h9hv366VPesM/4OW/YR/ikN1TCZ8HX9tOowM8T+Ili/zPxefWpwtdewSgXcc/WOwrl
Yo0lA59oqlQnS9hKwK/1978X89n48f31vLjGAtwyucvW41sbxXBDJYIiaDdKJ67gYjyk5vjsSQ/d
+gXCtiZFOsDOFHlRbVdSv6jXUZ1I2stT42/J3ewhnyT1TyS3YGaVyX22WiDItMu2xn5GIiK2UOlO
fvMe6lwFN5d8/PLr37G9FiscLFqiewaG6Zi1diPf1ZB3DYMKHGAy0hG7W9wWhUXbmG/hMp2FrwKF
FWVdw3x7e67bi2+KVfPsE18rGwVBLYnh8XrV3ZigBkfWXLSniAiRkrgkPvZgWTGhkanSfi4XD9x3
ncKokUz7td3d8BQUJIkKp6KmyK6mzJVLWLYK8pdAypvS5oiroNCV7Ve0vV3PW/irbC+h3MR4Id8q
1XkDabH4VGXhZPMHnFc429aHJR9++eXLfzpPn+LpB9vPtojBAk1OkgzBTzzZXgIqkEXs9QjiYil6
MGsR8+/DFJ/fZpPiHsTn+6rcMdtMZoW7QxeRqkl3uekWlzhplUfXilsQ57MJDD1RzWVYm+Q1LFcm
xQ1WxWJIDNuLs9lNA7veiP7aiGaL79l85qzF5QyRTYbi4Y+ffvtv51uk2r5FjycsVYroXCRI23ek
LO+2Gc5JDolHny2ngzByjt4xtrcc7tSZxie0Yxy8rdzckrkbuc5QQvu6eVsNe3jrnvGa1AajWRdM
ynPG7CqlQ1K0e3IaxHQNmmUHuy6Wyx2w6HqVZ3fuji7WEs/0PFW1Fzh+5jFWzXbl0nngUoHilOZF
DSvRREmNxTyK9teQt/PEbvNskq8Q2mNxA+foNp65bjkAiJ+eLuuz0MEBFSPdrS/MIYs25bq48wBI
ybA+2D1cmXx9X6y+JeUMzjNbF6unwcj11pPDrb/dluTAp+RP6Hpw/pvFusmkPKRMvjkkOr9brh+f
e/02voGDW1T8yE2NtVPrPjfvEUIlMt/5i4dhLdIhvGw/WzU1D3aaMt0tqtiFAGcLnGVU5gc0+HaZ
rW+vWgwad40ZZzwEYSEEapLQNDiefVxsH8hssJmeZLbBX2/Xj8v8Cr1B0IWgzg/vlYOGA5OS0OGk
N2bVTzW4C1tLoeLK1wopyTMIzHTs0Dql6PdgvVDIOGC90KbvKZRYY0R51RlSgeYxQ11HY7dBbSjd
5dsT4TkknESAkW6F9+F84IvIme4uj1vnFXfXs0X+9E5LfD5zg1hzJVuCKLsDUyv0JRFQByGAbzHr
mK8zBAFyMj4BS4fFjvE+NWl6o9sK+/yo7FECTDZ3y11orskYtCN82JlBMYS1Ri9/ugJFOvFh7tBU
9OVsWrn0/F78Aur/yLvWHsdtLPtX/CUdYACnxTe5QCFIspmdWeQxSM8i+y1Q2XJZiUtyJLu6/O+H
l5JcskXSskSpBrvAYCr1QMsi7/uee66CPV+MTaAIWQYPLotVxZlXRxeesW9GqJnxnxKWdr/ponyC
NNUrPPovy7ywCw4aHannf6QwCliW6VP2JiaOUivRV0KYmMh3WmTUs32FSbFgEaOBVtLds+hRqinS
I4eG1CwJLg0ho7jA/Z70HqYkAsxlSs6rGpt0d0gKWOvoHMeFpSELNq5iXSuJGV+/MYQkEex1wJMz
EBAcCFzXxAg6k8uffkuzdfJqR9dBdkWHgLtb6rbaxtkT5J+VnG3TpIiL1fYEUUtudhBZ4yIutHjR
sJHKJi20eTFgQvvWXP1MNIulb2102eX5+r9guchfjWB/Vb48dTGuCxkNodlpKrRmnUlx3B90guTp
qhHJtPed1sx9Th5LMG4HbxgAQ/xyWL7WaG7LzMPDltXP7b07s/BDDFWuCp9cPa36pgl09vtEh+WP
x83Gjv8HymwBiLzAeg1Y6U/Jn8ckWyW4C2RDRHAEeccsJLZOj9INtkzhCCE2r0fRIvlH2qzJdHRk
FNPnJYJ5FBeuG9q8Es+kgL4ow7BooDAasae+KQFBdViHAxt6+Cap0F1W7wIVKU7nDKKcuCCpHbsY
M9j0eQvkGmkJHa7dehUXazsjO9cebpCV61WNujjzqguYumcFqmZrGG1KV/bl1UqnLXhe3CQhfFLd
fX3eASq3ANNe+j0owyORSEEvW0vecGvSw8kRi5OLmJlAUpSEmae26Jl7DZCK8KRFjPucKhJMzJim
Jc+POtB0LxRVsN2i1zQLC6UqPl+nVaXfSBy7YYyqr4Ax2tRwg9/jl7gCYUCpwx5YMC2j5P6nd3tl
9YF3TBOPtCnko17QYQHsi9iY6ImVdz0O1Pt/fvnh4yuA5L//6e/f/2dlY97I7TOoHiVV+aoC0ngm
03Swu+BIkODytk428XFXyVua7aDo72Ochdpmr4ibuTx9kes8usGzQPPRnsdynbdrVyTD3vhWm768
OC33RX7IXQ8X5iX91cJb195Kji8v+Xz/1SfKC6/XASxshHp1O0Zfu8e8GGjFqGtvuaCuALhZgBFC
Kgr+8m6j/3qAteA7zwpKAz8jN5amsbvikY5Q+kTCdGO5RAN3bV4VjqvVm/Xbdt0uNhUlpIZcfX9L
qO1es+1iuUtekp0dUQWVrV5waTa0/9YU8qv1OfEuKXRgGKc7S6QMdQ/Va9Teubf3/F/a/e138SpZ
Znm2hFdvtMMyIaj9IFR6EIqGWqhbp1C9Niy0NStZ23tEu15ZAL1Br0mUIUb66BhmkoYi+P6HtrbN
1gENkGK+ONiboaTWb0Pqnaa3Gnx5MSwSJVSVHUSPsAubhzQ0raZV64w9TVWhdA6K8HwG2Gf4dApG
CZrHEB1yy0/tW0GU/li9VjGx24bgc5zqMD+BkGH5CG33uDjZCyFYewEiR8dh0D2ND8fCtWgIUVNa
VmO0YEgN4gYrPetdN0+zLF+BTa8asjWAuvozO5BWJ/pySKLRe/UyAiSHoAGDqfYtumIpCCRV4Gga
iKvMBN+NcFpqNYnGaIhlxb1dVwAwCud+hUOHxAVaj3xGS1Yt79hAn9c3NIsIcL9THNDMd6/Fa1fN
bid0z/P7TN73ZfA28/Zcjnx9b8s5UrM4DQdwEplccrqoNVlt8yac0dkcDMqU2/y4W/9WHLOHLP/w
Z8Mzd/4MVzxzt55Qpwe/lx9W5f7BiPcXOPrLF+Rb/eXtyfqbL3UEm3xZ/QL+Z/6jY4n4giM+JKV4
MwgGjnhaarsH6r8q4nJro2aOCAHO2ihYXaxcVha3TuaL5Hct/AmQq5f6s9kYPRjsl1Ech3PVdkcN
lQLMJygQ+S2coyOstY6xqZyNIy0ggsHes/uf2h0ytGANtJ5XEYsNPCMX/ZZsjU4U7JzZkdJyxqcI
KJzhhAD+rqnVysqae2vPzeCUqC1g7pxIKjPL+r4WRRAypUtrZT924gsuTWY6n6mpKpTuqhxQk/Zb
/eDQfcPBuqymQKvTqPZl2Am7JeDK5nj9dlmmexCW5Ak+HQri74oEWOuampgdogj7DNmoyL6EfVCV
/7YaVgwVTxrWk8BgFFz1wQ5o4sDLMETBzua00+gsKmCs+TFQPXW1GsAqiMpZay21LB1OO9fMU9ST
TvSWMJ0rq649ilIYwxbWqLWLOBcGzm7YwYTwMGn5TQFwNd2ZzsVYiBO/DznYj9389ntXk7ldYobl
giDyPpJdbhM7Gk7CtiAZOEjNH8F9g3H5R5N7/7xx0Oz03eA8Xtyc0QxRIHBK/R9KT535aBzH3pSU
qyB54iVmw15xYTDBNiJYyfbxPj3TZjUzQNYLjhAFzsf5dK/WAB9whsC++OlMvRtY8RbiG0C/3RwK
RYbZw/uzOfsKFYRhnG2aHMdqnzzJDuyP5hKHdUgpkBZ+9Wpp7MGOYTkx7qJez9OIgtU1wDShGCOi
5sR/ag2Q1EvkLvLManjNGoIy0JExPvl1W5y14Lw4xV41oQtGFZrED3r7Alhx1XM5eHBLYN/iR3Ra
K6KA196m8Vmvd8myW22wdkwUdPg5CRMc2CTBEX8yuZDkvl7AYORT4utKKKWgbksmtYJv7RE3jQ8F
3K9EfG4Hag8czELGaQS0Itu8KZoYQfWeTiaZS1+jChi5WYj6bkMihy25CocXDBOX156u+wxYFyrQ
/4uo+4tI+ANvSvuR30wiT/12C43y8tsi2dh9vE4AqRouztXXNjw7dnYoSMQHAnd7ePnydrZLEdMS
P2HQ3wtDiBVm4ZJum7RhD5aVR4LNkVVYd7Iz3pfVd7SefW1TNMzVpL68vCOjQRTjYXCHPsgeqSa2
KPaWhDBU5DPo13G/T4pVXFpPQALOJmLzRUvly9Nyk1RgG8+wJMJIx/ZMhLV/9QBTH3JYplUAs+Ao
OncETWC/E5sqh23tuLW+LnC/Ij6zna02dY6cEhogfrlL5qg0yK7hHh52JJruRWpv0UiGejJqjFV7
e5oaTYzI94exp6ScMI6FrTF1KGuLWqWKAqMp93nRy5aYSyfRvO3nb7797q8g511mD4wVWSAuR0Gz
w7JOcxHS7JkPVM+ngsFzdI0R0skxm1AZXE1/bWdg7ckoOE5a5rv4kKx/zYvdGmxbY+H3hX7l4uBA
S0uIKvEYPXjLXsAKXXynr1z/VVWub1zPZRUfPtHaQYjMBMRi4acnXL4WMzWv29G/9EY8kSIjR1h7
ZxzMCsmRahjs+5aNtDOKwSgGfg9IzvVdXFpIQ0wtyYJJPnPwR0ZhxHwGocqyHAYBmP3QfJpgyEPt
uHqI+Ima2TbBPO1TcvjmcCjSx+MhWb7Eu6M9WeRAKDpp7706nJfDoUPYCkFEWM0stfyvXOlpNbwZ
TVO5tjhoj59G2ixJQt9BLLzeSl8J5jPqjXPLO8JYh3OSjXScV72fVsHmLCjOIg3VAQ1To7LlS/P1
mK9PNyIZmHDH7wiEmSCX+Q9LUd6SyTDF0KhxNysvFqx6QnhIH+XmP1yv5RbRMBl1G5Ka8DHxWA/t
yblC7+FUypZTsbsTjIGeI/CZwBy4fRldz+U+b4/8x8+frM04Q3ttdiN0eGvFgnOGx1ftGnahurrk
YzjhZlcpmiFsvuZwtoOB2DBcuzN0rI+iZZD7nAqTTH8WFNwiu9EhhrIZh8nfhr8zZ0NqCY2MH7Zp
sYb7PpxqAK6JlvaHik7/ZHd+vOeiuquHdoFWZinPd/Wss4W7AfXcgzSlKfvpk92YcWC7RyFOoT54
/WF2+kObQdU/j0lx2hwzE4Y8VLsv6nPqUCDo2IyrIPrXVKztAuhChEMwNrp3NvjRjN316K5xv6UC
vslkpNhCiDBNE9+AMI3whOPHgCW9418fosZMvbsa52vHcAHMkAyxoTVByXnCfPl7eY2cXEbAdp9n
a3tET+SCA8v8qMMfaz0oEgG95snQ8piM6jP8BDYFGZ1+3VrDVR06gEcJwsx3e4sVEeLfQAwdHkUy
qBCyqRO8TlDnRl6ZkcOtPs0xWR56aDG5QZqn0+vNl/Ab/Dap3z2LhaSC0mm0Enu1kqIFpzhkXzrN
4iqwbnQScL/7fH/cL88Zndni6iBo0CkwRaFTDDsRCsx9kPc1SIjycIWVlRbNP6qtH/Y99WD81cQx
vPXJQiwoD9+aXh+hC2kGY5t8zt6OED23cYaxhundxWcFW1DV1M5R2+a/5nkli11CIoWnpX1Bs6TN
LvHj4r4ianhVF1JMHjtjIqdLjjyZCcdq8ncjJLwBSbRKNonX0vA9GNhHnu1Oy2dHEA0kSeMm5q6s
dm016u3W9vIe1aEreg8D5muTSMrMarXhHwu4z6G4awBP//3pn2bqAcJGfQWVN4vX6+/Bof1Q/6WD
F28gkPgO8bAnNTqEGNXUPB9Ay85AcPRreth+ezwcHA08A+pjUagwCVaWIMdwLKy14O8heTdL7ApH
PXcwju7SGTLmZbP2GP5gGcNf1Lxy1YZ6/Rqt3zSksfb+qzbVHIeVm2pk6DuQnuGqRDEwdE1laWtO
a7C0rQVonqITLLodFLl9Jqur1tU2LjIrxaWMiE466BD8oPMplR+x5OXA1aOGpHoOkj/g9ruRwLaw
u5W6a23vKHtF5kQwJfNBtGQ4RMw6XX+3S+LiV4OK+dk9s4ehn8TGttM9B1nBy0eC24PYTEflBTZl
YIkmV/Ae5O1Y0JFu+3b8UG61Iq7sHHU6btDSIPiUVagbp9KFj3KdrlAZ0rNjByARiA3wu0upI8rG
QKGIh6CYw1pKbLeUnKFgNsTOIkhH4pc9IAJTjCuSeH2C6YIeVTlBgEWSoID2utzHh9X2e1etSmsm
Htlq72emfBQEBI8d8B4SpvksFtXCh0g0Abi5fS6OlVuq5zKy+yWyPVmQZoAYrBmUrhkj7PvuGYSt
s8UthKOQ1pk48q6xkOFg1tkeR2AEJcshdHShI1n9fx3zzMJFFf/74w9/0x/rl2ZBXp96BIa4YnQb
2/2SjYMYNdx6ZZFvcQISJkYCuK/1P8sPPmQwoCGnCM6Mpat0AXDSh78Du/CNQo/A+kKRmKjQcyli
Dm5PAECJkIaHOmgYyMjM7IbPG6BPRAEuFqP5RMHjCDmMz4upMKf6brLEu3iFQtI0apL4khPvwh7v
d6crJjAzMUPRQoow3Ys3o0YcYS+MSqHwdu0G4FzfKhnFiNFPwv6ZPidQ+PJBXjEZ2cfx+S9/PkzG
1gbuU37fhzFjWorMQvXUXr9XM1i80WN5IKlIjh39vTbKzG6UKfA4TBN7mzzQ6vPodHUii0b41qkq
NEkueAV6jwFS9Wrj8cbD6BPCRrrUXokQKFx3BuzFNz/88POvDQd9i82o/2pAzMgCKRks+rUGKgDp
GGUc3G7Cg4KHsSQ5Zb3QrFE6Zod059jxB/u4EBqEFrP7hzNea7XLS+c+E8EhCgg94XNOAJbbZLd3
dKSYGdcNDxV8y3jbvagGDPB4WtZewbXggHD1Dop3yJ2/s4eLEE1IHtJHcbuPAjIv+m9Qr7XVAzjn
YYMam+a4C6hMiwuTo1mE3W/ZFATosDLYXS/o6ifwBY9GBUMDVcJOysK0sVb376fPbHbK7OY9kx0h
ANR2h+MQ7EeOMOcYv8dj6QSVkpsWslxtEwd7L41GArYu/XPFoG+HMEvgdGAhLZywkuCaIUsVyu82
nF334JzMq1L03ilRHapjZ06EyGxmoPKHbz+wrygGknssp1QQd5ZoNqiOKuXbPABzVE84UQGJRrIT
cJ1dl4OwhLVGkxRDQSesyscWdIrd87ZF23YrsxBCTVcYGWAN9EXr5G9AA7/lbM5pz9sqBvP8Q5WU
28EtbCF6QbJ4X3MrHfTawFMqRjzoPktyg0QRdiLRXmrMB9oQX/cVxgrJgLOwBhadW7etLoOSe6+8
gfcyJU+7/DHeLV/iIo0fd44ibCQWlEYjnunzsN7KJ5WAe0SjDriPMn2NLOpEejG4DxWr83CYR74w
hwZf+E8xLLAgrrWaNBogkMPzy34uYxOnO3tpDjOMQghzL5fhraVzuRC9ppLvlm57BwMQGWNsx3XN
yEMBo5AWiyi8/jTTi/rX5aE4rg4wCeOO8rBEZpowoFvUX/48psUfLmw+ErIn3eywW+3aKn2vpFcU
5HrH5/Q1WX9XHfjHLgQcXtmMU7tJbqnU1y3mtAJ34Kcl88OneQBkMcV0HmH3ugvRczVPv+CgmqIw
a0Cq6ewllIat8/WO/I5P4kSHuS+r98IEgGqBdfU5158wf3FR4EKXZEBV6Dkt22MN62QXn5K1fqrZ
lPq1+f4BfXgunx7IB+hSPHQNBYwoYYpV8Cs5G4oyXScugUACBtPkpKfdtY6o7+bOAR4AO6YZkBZ+
+d7W0IGRHpSw9OddiLP1Y67dyRI6ypYdvghzIIxSwSyyC6dNaGgfnGdgC+04FdQTdXmP5b2BjYl0
nMHwHNbV8GAaUGqR70rv6CWIvmDh7Ys5EN+D4TSQnO7GO4bFvCqPpjEsxBFaCrMLcIjqDIOaEDHG
ffecIKf4/QNHW3tSqihUUN3ifH3D1LcjbU+rmAEXDA4YwVqblESFzAz7cWMKEVhf3UNtFJ43geer
DJMnxCS9SUDvr5d2UQdNBdXfeUEE6cgc4+lOv2MtzfmPKmVd6JM+8Mdme6kblSt0AoIVCyjX7dOv
Fxu9HYlnYTIXRDsLOo2zsEPGEWBnR2WljpjEA8SCLqMYYEeetQ2P6zAjPh62Dir4vnOpoUVoSM7S
y25sjrvdEnyUdgi79Sou1t4YB1d407Duv07dDtv4sNTh5iYvnsuubFuFOmILJniwytPn5LEEO3r4
qPNI+AvtJ5sf+W+JAq6BjYz+Tln8nK6amlfzLZzH8jEGBi8d/p7sqgbdAipnsvF+iE2kZYRMFYD3
F1WkI1VFhlqCN+ls2QSI7/SdJA8N5fkHsEMP5i8+XjKg0wgeKOWomOZCNt/WZfctiQJoX9wnExX5
d+YAZXqXKhKq1RHLaRyMHf6OOB5W6PZIfb1dzdYIvm9PuVBymADe1IOn85xyli+fVstVEZd2hxUR
ptM19t7JjQuhHqlgscE5BLw9znNrAJMHgKD3GwtwHvqZxLWwIb2pgglIPK5onBRFXtCIas9Spit7
54oBw3dgZ98JVte+sWod+yAkCBr0IS6V27n05ErLq0U5eeGlvBZSHw0aVZrwBfZVO1cfTWNg+sX4
iAIFHeGT1gzOfsh5PEAyzMOhUhpJvcS4AuBMqwFilE/UXOUOahjIAeg0IfBwogNytRQHaqgQqswX
8VTLZBhR4v3bDlao/7gWjN0XZ9DoM4QhuzRLmr1BPjgAbExAcoqQpRun3xew4EhC1wgH7Iv0Yid4
H1Gt1xNREbBd3Q5C/MNig1pDN/KC+uL9aSrrO8g7tP1WqYSbxkpAqsBHRX6VgP3NMLfX39Q87oaW
Fg7ETlQhgVls9lAi8RHHoAjIvgWSeB6n7a5PS6mNN57GlQoH05iapH/osMo+3ArlI2vzF1eQPO8P
J3Pc1aaVpS9Np2bjgQoTzJunlPbH6FxZ0QHVALvetforRQr0MOaXX62e0u6Q+gJJMcr7wjKLH7Uq
xU9Jy94l2bpcZlDArB9urUbJsWXvfjJ2OO38a6qI7DkZOlzLr+XOtVgToYioWaJziiZAX3WdDRy+
zdewBY8omc7VmAO3oz/YyMqUx5pKBxPQ2LrrhZYlu/QlKU76E6wdAFsJ5P1yJs3y9TehQRLKgD7l
j45NxViKkX2Y9vm2M57VS1d2iX4aIkiQSQ1Gt8thR2HghUQoWMR6fmp8XKd5teO2RzkbEE5IDgrf
7CcPP10+Vz9e7nwTVWRgB92znslW2cNI6ChM4nDTNdnx+VHbqps9UywmQGT2zYlhBdggHNMQh0Tv
tBRhYiCMFoiLUa6oLcNp9hLv0nXjHg7bIv9cLpNX2Njn2u1NtGiRiE58zU1n4inPNycnVcqQyx6y
6gxFUWjEw+vz7ooJrcISkZHA9xuRxpPdNBuAu5AzXeplemv9PAomQXAgMW89bw82ujykuybud4f8
QuGQydwtTMANrwXBCR2HC9ho22n6/3G22mpZKBI3ChjilCigj2xfQdtdwiU4nGWkdNQtZzI0dn/C
tDKKYE60Hue44URBEVEoA+D2LF9bVr4gwkbhDGzFW+7obI5MqPxX206il5+36c5QzGSwW6W6BHtp
gwPrEkXTWV9oQpSu+Vg6JMUdrN5Ehiqk1K95zOLNpsq4Hk/QDU6Wh/jJXkuBRWJBu21aup9T13o+
ZXaLi1mkzU6koCMmOi4u1dLzGZBKhxx8xJOBq25SrXCeWQ6EIFRD4QzY20iMB2ZooCJjxxTdF+x5
NFeqJ4lGgEy3lXPaV48gWKctyZRKdgYuu3u6wCpBMJtY9s8bKH1aAPzeI2fELxomXn1wDbRh4LlA
wdoTOpz+EfZMaKn59OmX4y6xD3EJYLVBoQxuherwRK4YcaXjp2hMA73pfnY684TjuaTJF5tR2N4y
Jjh8LctvtA4f8uJj7TCh4K01aflZ/z45DwNge/YJfO10kgNGkRTBq4P31agQnuDN6k45j9h0/zgd
cnRtzL6p+sA8U2HPkyMKq35n04A8Mwsy7RPfwgwRBHS0XWvmaTfqWBkJJMJBL1vG3cJ4UpVutdIh
pqY9fZ/VkdquymG145a9uVoi/2ZzjllSruK9GYZfvU0rfN2diNHmnVE+nRuzxtHGq4SPJa7RDj7U
kzJ1iemtftM1MryQVXN4tY2dKy3HZY1XUbb+cLeHpmGRPVSngomi/zicXDxUVIt6VShZTLN1oqPw
9aO3Cw5NSoZCGr/Wru/zR7Av+1Yjy4IBPgCeoGFqLdZBfXa/+7piTfmtOGYPp6T8sCr3D+Z2vsDR
X74g33awAWLBWITFFDrhrp1RAXD2CWpnl4UcE0rpvAOKOfbxPtilQ8m4QAR6MYfDzrgCnd5Dxc6g
Er/6yhIMfWj++gEz/iHbb68YUyCs5FIOaWJM+5kIj94DSoQhylaj/OeNSp/pJTmYjQiNpvahPoya
glIjC5SHX3BIg6Wo2Xv0g66KMxLWPErEA9qEAgq6t8vpdz4zYKcWDao0lLuPe3gzU3A6ZmW8Sc4k
i3Y2IrVQg8C4lVX9uKorx+UyBhJ2/V21u3KVF4bYsV7iZw3JocQ4aHJCv2XrNF3v66GTMCvLkJo7
GLSHgDDMgYffQCsk6HcXy/x42B89x4OJWMhBofLgj7RJi9LziRRkjNGguv/gj6SvOs/WHiGSOmaQ
bNabO2zTwvORJIzLRYNgrhcqddYgo1tNvHJJY1XTiI6kWx4TTWZ5J5jUX+o/L4uV/ubLLM+SL20h
Jo/4gDC4Oo+qhrrOk9JwASavaXno8JAD3bkYehGb5F/kXXlv40aW/yreP9Q9GYRt1kEWKwshSNyd
SXYymcY4uxhgsQhoibIYS5QiSj52sd9936uiLrNIlYpFq4EFum3rLLLq3cfvrcAYYCExRxKEJYy9
nTJcL5YnUba4I7LXK7La3ZcW0jWSwi+Okh4cFGWKnkKyjtEJcEmg62/f36h+jPD0popg1eLEu69S
GdaZqfIIIQ5t58e3nlmhmT+ozs5groB1RmkYka60zppo3WcdBTZ6/QV2bLPKPjWO7SBSoun3lgrQ
sK9SYICEEX9cxxq4jmFrIneKzp1PK4mUjmLxMVsh+gP8GWQFArWPDciKEidyXf7kWMSccCge72Fd
DKYGGmukzP8bVI4ZdwaEVae+Y2sT9kAL//s/fjZH9CUKgUs4hnESsz4SCTVJsTUInxoHgWB5fhyF
wns405ydF6qI9VJhzPDSYUwX2j8gt/uFBjRabxN3WN5pdFOxX9UJtM2zMqCR9BYpV73swTY02hIt
51h64TFDUU0GOAWRgv2QrCfaPrp3cw0EthVJ770mVfl2S2t0QoHUpJveeIWKfaPUyM8YbDU5boIQ
knRd6H6VZcXtHxug5g/wSq2jFaf+cU9KQVVfA7Nu+RbRkcwRLQQhiV1QS+HsrtOyxGbqZbqe6qDS
LEvH6PWVswaEIwomBxNdiVUVHp2kTJUxY8LJQfIsjcBZit6mXG5kxk6lApt6Y25zFaKTmcWtZIE4
R/4dDJfeDjgw4+TbYkkKaxZaZXg1OFF6U8Dfoyma0ubRBdhtyJIuN9+idJ4eiLmSOkLrucOarcLX
Aq/OColZ1EXHQT78QIjM0mLcQFscwUkll3GHm7U14s2FcLFlqZ/w0FOINlSbjBQdil/aS14oAeOJ
dGKiaY5k+6JVT6qpWoFilpu7eQ7HDW7SQT2pue4ggp2I3GjrtVpCwXFSMzFE5GQu8tGzrkjs+tAt
KED1BkxX2WQLxN9YWoM1w4z3I7vMcotj4sSJxD3ZrHZ9paKz6RjGVqhzBjJGIYynZwjciAjUueSs
R02rs77mqWDUEihTdLSHI+pds+3BWJs9CyV8XG7wWLHtzq+OqhUj4B5h3egimDyNDd9NsUg36Wla
EFXTgmgtgI6/KO9K6YEJgQzrpDnxZNUpDbQ+0j7LehMBxTFPncyqI9FUgQq1BQ5wtHAn2/EMF6E5
lS2jK0IkDXuSy80gN5Qxy8Ehva0ekYur/ohzQjybfVgqFewMAYwP/zEcsBt8ZkBDfG74voJs3N3+
DrJxEJKW79996/X7AftUiyzA/YAFF/u7H1Wv0oRTx5jljGHhmApdr9CaVQlRY4Q5wmrV0D8H3y2a
9LBQnYdWveommQuuD5jocFdZGahq+IZlIsQ7C0PfJmlzmRXHoQWUej/LYhEs1V/m3lFpCQghusNc
MOkxRqIGKq6yTWmW6ditY5cUbjVmlDCBp5Qt8Mfwf/63rqVj5uKwWdtrFsEIxrwTTYUlgBKgWJxq
m1BonS4RCtzrbUcKXENuBikjChHTJb5WJ9JKG9bIMw6BD5g/8nwNmWx2KBAF+zz92zL4wNrGY5zR
yyv9sFtMy2BpmodnYalG/ObnaoeIZmCHHPZshfhIugL4eqf4vx3QeEAZEVFS74gAxwqBk+KLWLDd
+KazBUtCdyE/e8xA8IwWKka2AlevCeOBYGseleEbCNqW4jPOUWKwblFKxAhBNlWRfpXhMJfzCYWA
3adZvjWGlHXeaI1bmeIGMzxmknsy30wrtprlhIOMk/6tApWIak8PSwoegaNxvFlPEhU/Nk9tSBAs
VPqRa4OPZJDwwcdw8H2ofkr183sl6X4Qg0/R4JMcDj7dDD59gr9qhS04VYf7Ns5b+zAVwIRw0JxP
2V26Gk1BshyLONUOXE6zbN08Goc5R0j8qutY2CWU7ZKoQfa8VCgj5pQisRxR5iEopK6qoXIfDAfB
ezatixNgzOSKuuQngOQmsPgeswkfVUhVWEXQ4POSkFBLjNrOMe7Ql/FXVR1WoXzYUVWptW1PMG9s
EoIoc5EfPiaAGK7+w/p5bZg/Tn3ac8aVdEn7FYnllxWAC7sE4HhEI9EreTVCKDJ+cVHNJPEbym4j
HEqZbyWMhhU1x3TAy5H+5EamU/I2BY6CKnTMfryrVxdi7jZAuSx6dbMsL4M4ZQxsm7mU7Kg0pBqQ
AoJD+39DfPhNulzCJ6pJZAhw+oAhD4zxFNlaRZK+ni3u8wkquWz8Dv4efv7u9vZfVBcYjiRs6fmi
iAjKsAzhjHM+MO4OC/UqHXBg4xlSfAQ4KIqZP8m7l4w27ISDH5mM474YSjciLtPV+qXNqRUUcfHZ
FyA3ZeJo+ehRd0E+1tblMiuqgEJ1YeaScYLAJn5YejFX0+N/X97XeqNiEl9JEklxWellN0mq/8tw
yVVpAVQeXMUcqHmb3wYZc5+t6jEATmTV4tMDf68yIO6X4GRukESU9heGaM9NxLjfMvElXhDN+o8T
eQhwLGjSh0HCGg2SqLO3BI+CDSw2ziZloFyKus/EEFhSUtITE+u9NYdYEQ0o7JV3T6zOusVctjWn
qnq+VSQTQlR9Wf8KuYGcCM7tdNpsIKg1fnk6XizXvyzGWXNISeKoqSS5fAaIJET0Hl1pMTwilbvg
nYjrGJfIQGaGwi7dCtL3qt+S+rrcRQmfu25sUEMR70MoNzJRpzoDtyIcl1K9uhpAHjZIf8SiiUXs
V5OaETBDt6rDE4c1mmbzrDXBxrhEQAwn8ryfwfeEHyhaRePPYLLMyu/T8Xer+9JcsqTreP8fatK4
8/7uPY4CWxvSYpTZzINXcCdR3JG2LhA8+OG7n35WsYO9XmkOHyRggUpx+YJKHtsBSJ5n9e9nhLaU
kKvQPn+b3E1LXYBC72HhFwVHSGIWJ8mVEFFEvTlFz+Us+P7nv9/89dNH43lgibqL4qhjVh9DGRkN
SzUOgvZp0p0oRGMcHLIk8lQ0b6iUCIihKwUnTMaC8wtkUJzrJYyZE4IeNOmhmAeo1DCMjGGdFOMx
9XReVdd3QwkhziDzbNeYqwSwof0L6KeTMmQXYISok4Y3ax6rifF4wpy+jeZpnk5OCSKPuJRKnOtm
RXUnJIpIjydODSceC3lFIt6t/dtG6LeO6qCW49nPo7rn6ep0jFOhzHQyeGrqfAes2KrXMS4W9SKp
91iwBpEt4quYsPhLKhZw13cxSI2Efgn2esL9R8J008febtOTnQIQMTPzOC9B3SIn1hLEjN4HJjih
jPlSzigo9jc9y9KHVnwDwlT6MfKvOJoFSQs8mJAc/kf9ByW/ZXX9IcF07hYVyYtiMcKJFo/5aJ3P
zVkhkNjRZSqvJovVXT4eZ4e1lx9A5NXb11kfcYp7nIu0Cu5eMFmrUBlUXMzMjAq+LPRQ6l0sVFI0
QxiKXVfRieJv2tWNx3iLUtwa2vpDAz5PEoeWY2fP3evlYgUir8C+Ijj1UTNSkvgCbHUheujhPHKM
EMEONa3eGEN7HgboOPUq/B0IT0jMwrEz4yOvEPVPbUeZPmbbjaibtAFeQP81To3rRxxMaho5Zoiq
EdBwCeV6tRkpp2mcrXUJdrMVG3ft4kV+/3WVFuUkw1oMHX9V6MZNI7hJQhDjmPav6aghAUd9eUo7
ItebWz9Pgkldp3yrJXIS4TLBWU2xlxUam3edghp7ijxKHZxDmzQi4HIIzx6HakfB+cHga+CND92M
yXcaZDiYYOOIeveQvFO+iw4RgNeRzmChP91qWBkEJLyZpqubxTj7U/gcJV/DD6Z+fPXVv8LHrnef
q5/yVUQlE33pysrDDirNnZvtAsSedKCDChprPzQA6G0HHVzhVt1lE+SjpmnDFIg8Ds801D1rBmmH
aNvIBEhpoB1f7vJrRRbIAXoC3BRMlZl5YiaOxXNqlziQV7piS8nGSgdP83HWtqoQEXqEl1ODEbZ4
OaUTjHJ6nM2ydaaGVRhWw0ouymSXWvadJNtPsdZGTzqC9c0loOBrcMr65uhKCxs5Oo6ijvgBJ8Sl
wnlfNVA2xsrJm2ELsi5+Rnv6S4/zQAHlK37SzrEN46cxy0iES+Npq4A+KZlVc6i4rNEeJYT7QsvC
tT6bJQUoAZqcZY00BC7OszqO2OidRdDDzvQxmC8DGrsaME32i46pxAn3pDvvgCmQEcpp+tBS6BiL
0DEV50eFxdg1xEKX/GYrO6qSqrAaNWDGRmfiKhKkb8UCLwWH2QMzjkBoOS+nWfKONohmgol/YwxJ
9awmHmmr3NzpsX8jxA49wBA1x7CIwOFHPTooPp2MVh8jSrB7MCKXFOQ0dCpBOM0xtJVjOJickvdF
RNl8acY24lK4FejYrVso92qU5+Z6HeoWYjaR7+iEG08YR4dCdglSFNn6abF6CMp8vpmlsOpekVZN
7bsIELb64QvvRov5HFTFEKexbb8JeHpTrN8h0MXwuvrk0ehN/R16alatpYpcEeofWKRYTnVYdLxN
f462bJpp7r7+5+3tNQYJRjsGzgyxS+qSjN9uwvbWj6NamIU3Ey9avF1Bh9K77MOyqJc8U06xmtsT
eS4WDzkGoLGqoCEVyDETGCeXc3mlqvSmvoRBXqSrl6BpdK1k6HzyN7ARzGZBrCJJXtONVZVOiwwi
V1EcXVa7JfFFQplGBnino1D6ta1RMc/WKVZd4JS27I9N/jgcUHoL4vNGvQ0ewKvVPuBL+0V+hdX1
m1TdtH7ndd3OwBmOnDnlvMyUvlo8ZEWA6EVNE09pp4TueJXeB+PVYhmM8wnOrduPZja64Qiq2Rku
YLeoGRcIfRvhSTiiB3WMDhMAQVXNzGkTxKYr9KT5DDdqY8ffzVE3B+kEM+Wj2aJUWcO7TWmGL01Y
0nEf9mer8fPVRE6TvKQ4noJ5Kbk6fbSdars0pKaePVHl4bIZKHUQi2bjF9EleCfTTI3jq8oiW4bx
YZyGyZi/YfItklHvJGrOlcTnVwK/0jYHkr7tSA0zNDn2GkkXoffaFNzPSja3XNMru1x10kCs2sLc
ip3HPA12Dr+a22IUPbE1EGJicbCjWY7LNR4lGNXSEgs6Ocn7J++3Fr6OkhijOfL85duMbBWyJjhH
KfZyX+WmMc8REw6+gpVha3dcqBWqoPRimRVmpY8Gpuhwawq/RSFrqIoepYjKrCjzphbGCON9J9Bj
Esty3KpeptGUZaiNEuZ1R0fYNo4lU6ssLRumQVHMF1mBtbiM2WBqzAapj9kA5iOsU3W/0X5+ZeTg
hSwKkAajh6H2uclXr+VdKLFcFOS6A9eoPUjLl2LU0kEgcK503IVwD251W4ZXBhg4MYpSNd8r8kpI
KqXdALAQua1mvLndaK+GicOqM4AwJ4a0mSi2XfbbXoKxJMFqYK8HsyiCyo7KgiJ7ai+MpiS2HEV0
1lmBz56tfvz1b+YZ0RKztXFvJ3a8uD63fH4PbirYN8P36d1is/7mbpYWD+/huQrsD563PtH35oOM
I+npIA8UxfZIN4UOeTYD8XDbMeBnneQuvK5rfJvZnmM5MfexAzr7/ds8XRrgCIlkCv7HG/G0TzxX
ekLTEVARhkzy8YB9HFCqP/dzXjzoEAimH/QrA8r0U5Waqd6P5DWgSTigEl9mn270izfXaZ2esGqZ
EulbMFRUhPpfFUwH9yOzWBARjlV1sAA2s3WOaHCHOFrb55TuVZGsx3Q2DN8BU5IhfaaBgpJF0xWf
oq+eekrz9ZDVNJoy1mnCWUdTbA/jp2t4SjPwJyGYbpVdVDamK5Tht5skmI7LoEQbsCW1Km1jH23L
KvtnkuZYsD5arMpgNM0QMBieKbFsvKnqQ82hjnlPZKjqHbJiVNWMr5oMCq4a65OOBw1OPXzbMwlD
UyYihH0GF5CINxLhtjcvothNrFqK9d/Tx7Ty/hsMLM5sm1SarkDH3G5ub9Wsbrjz+aLB5ccCWKf8
4RYLW4Wo0mk23yFg1+MmYNhjMVPIJPy+pCIZNqgRfH5/Lt+cYWra6RXG+mFos9xMBNgGLr4HODPZ
Cov+n9e7+R0NQCDEsjS+YYn9Iepn9HLZ2NT+ToFCiRVyvcNi36oClGw9fFjkSbB6vTZjWPqX+DUL
dCAAtACqgQbIeILDnyLZWQb8G1D1rZY2J0QBEVgRzUKvt4pzzifB7g1GeYsaL2Kd7zT/QeM1nbhL
rmDF4u7LqUrSU6sxHP4q4r6Uidk9xxELUW/O3vHA7158dIpgc6LzEWmcHey9AZ4/pQi5tnH9nFQ2
vwO7D+NgOvq3hh2526wzc4ExJ6FlwXbSUxr7xPXqDLZ6k0pSj7NhrUR2kqsEeDr7UD5N4F0KT0if
sDbzh+nsKX0p4bjx7PWXGY4eUSe4oP2eg/kUCHbD+BR/Ziwv8OBwpLJf/ux2zk2nrPDd0By4xjcM
2B1CP8T8688//vL7aD57Gn+Mpnd/+Y+X8c39819/fXoc0V9e0n9+H36+Hw5PHXQEkiphXkOk4+Bp
mhU48zBbqbK11q5YIhla+g58Z8yaHiAyTLPZ0tybQWN073qQMvtqWiNtx+DTCjcr5qymUF5vCiUh
dztkAz5iBS6oXtSdKXDDBebH6v2bLFF1X8Lj2vez33DR37CY4Riscb5YZdeTTaFkYGmHmMmThF2J
MH67C9wUuXFgQgwXEgn+xhdSPzKJpdJ2w6GsZMJiDlRalioEoxmkMZibIIe4EOrzfIY1Xavsjw2s
fP3Pv/38Izz8h3746RlnszWlApJQKHSAS2uCV7LjWA8obMb3GhQSo/dY+Dh8fxrz8/02+u+CMDTe
zOcvypAIo/cnFAl2aSdUeAuZnei8AHFmW8/aTimH9ZaTvNCm9WL5ygPWTT4JcaDMV71182VWL1QQ
CBfoWxsdRLgaUApYwty4zXhk42yCs2Sr7D5yfXAH5LgoFpOJOdiOlYQuScBD/E5dzP6Um0FQEkTt
jFgvd5gXj+ksVzNg4OHabGkgOAJ2+V9Yuhho4Vi+KBlRi71ti3c+gN+Z5sVXp4RASBD9PYw9+YxV
Q8MJn5EjKrqTAdm+Z63zMnkcwbEmvRBWK0FRgoX8TLhyjfpZ7ax+sG0bUaa7eZYSASElwwvT8PF5
vJV6bJ/Wt9OQFuqRE3+J8mOCQUiaO1BeqRmLhiJbugQ2TlEM2JP5fVDNh5ovefCIEn+Vmvk0Ytwt
o2fcAUVCKr1XLEC1rrF2zWzgydAWYuIc8dBUL0riuN+NNjhZTDUBcO5n4SXXruVjAMrrIWA0fAbp
GrBwsiwDEj5MVgH4EPlENZCVi6JumVnCqFgds4Ln1jAi6M69BOW6ib5E4hY5ctsExEWvudkaa8oh
bNYI+mAAfADpDxQtQt93SqPY7biJS6DQ7VoMux7xJGIqd3FR/fTFOW0nVVIEKknE3gTyVgab+8gF
92gvgdq7R7sUdr5qBFSK0Lgy+KTSEobRgkYm6ea5qm8l5vC1tMRiOfM+T4dOcIJ7zC/CBLVd0Xww
oLRKLqn8vPYpBlRsOxur+DY805qISsA9FlIw/5vaTDWEJNxfWeHB/tBmqpH+bhCbMLLifj0tG4In
ofIhLkwr9IhWxJZWREdaSZhVXEiedW6sqamahaSP3jJDc1kYwR/to8xl/4fGdoeGTH3zn09TsMce
s9V/vUo/n392qjcgtBrsIG3butA1yu+LxaphSl4YXcXEF7Vg/1ra3IEvIwUJepHze3VpmufwWcwR
q+eHZmMDXp9n6+liPHzW9kReLDfrrTFTbu7m+fr4BWX1PMMfj+lsA/bO51mmoe7xE/DrBS4ffn3+
6ZcPaKK8KxbrfPLycVFgk3Y5XTx9p6+nNuIPzorRWEaOvSmn+nOI6s/BgdrvxupiamhywIIhWEzM
H7norcdKsrvNet1EN6HlJEdpuGtETamKq4J0Bi6lueiIYQ4kdFzjcCbB69UOi7smi8VduqpXoF5J
ynteGjxk+RsxLC2s1G6XpX+6/bt5dQIGuBV4VNcbD0w3zhPR/43/RkNKv1Yx3Wz4e/o16Al0EYZh
DZyJXZHYCg+zyxVt1lgTk9R2A0c1EfYGJzHAWJzhLEL5Bov/2bQ0S2T/m/6bccuppG9w198YN9zF
Qjx7aWK4azv09a5sZ1wd5Y1Vbqbj6kHT6hFjb7J6YBJ54GJxq/xtl/VxBGxhWBuRGsKLWX5GK+PA
BFTmm34JBNT+E7sAVPaczpez7MNoMb8222w/7D9Us9siAnQXOsvXCnxN2/Rm8wU0h2XY9Wy7TFm1
5roh8Nk92C3Ht7cbJ2EuleNghYbO+1g8pmWwTNdAN4XOqubFaJVhMGRbSm2MLCEWTiK/APLdH8Zr
6t06H/6JF8P6JOKeaEsFnNAnbcVqCzW8w0U23HyF7/Lixywdb2G0tu/Sm68ebWPWx8WqX9fr0sPj
IMA2TH3wlYZCdBAiCfF0Bjuk0aB12GWspt/F/k5hs85n+To3ZfCIQguPPUmwkwPoGjFXTUPpzgJh
PjmUjgnCIu8HiQCYWqA1Ck+BTBU7mD/GGOsBQvMU5yFhBnwFzy3mRQNODAlRlFDp/QJUitSY+EY0
j/MIuD76+dWcZ0xwh16/kUiacI5R277l3YD+sP0Y/Ln/IDw4QUq2k1AGNDF03WDz+3OUDOgNNt3s
fkn8h4HvH1ohi6M48U+02AAd3L3sCydKJSUapmVE4ipyCQ5ZXsQ8fdbJCnP1CiKlcv8io2pHPl0l
KRCCm4v+bj8v5+l6NN0DGzcfBSEx8KDoR09YGgg2W9jMMPmhsXCy4NA0KghRvaTk/Z0HIm9hsxTc
T8tJhFjn4hK+O+cyrPhTyXlJ++KQAiljmsEbDW3BQoBsiEPf9HjSVErCfjfehhdDpgZ4fVG8eHBY
ezfplQGusbaPjHB4sIRfP010fgbZM1Mpm2leqgxQWYJziLmiQhW2LODHvqdZ9RniN3+lPpIV+hf+
hEvHXM93t7efPn7AJZcmNceuGLjw/fES7MpJhhY4rZN20TNHpcur0cle1xjMYZpEnu5622ZvDXeX
MHqV9OBUHaiDWV48mMfkJtj312HprmDkBFt+HGSIsedQg8psp29V/NppQBnFvszExVFymh5lhz4o
T+E64CxoeLQEdWXEqxVXCY1Dz/T+GnDmNeXXq2VpIq+YC/W53XHSA5krFPqj2fYg4jTSuRmkNGSW
SCHOAhYutdABozZTBTwapzBHIzftxu9WKENtU/9wwOP/cXetzW0byfav8AuTuxszxrwHqVLl+nnX
u9l1KnY+pyASkrimSC5Bvf797R6AFEk0iAEwIJWtJA4l2QZmpqf79Ot03IukH+cvceH/OJCy8Vr+
kd5nxeRAi2C78J+7dPWUs9PjPrgvL4bvo2H8cfieDW2En99a9yt3vyr3fV6qxBnEWoV4K9iSWjYb
AeBdc9PhZt5OH9PJu/x6Ps/lcXMF1otRPiN6uh0Mjc5MdelmnPf1BBKQrUi47ogDuTjKucWR6k2p
XrVEhVuLBZBtMtGb4y9OfMs2nfuPo81x0Yw30pNopz18z+mvnDnKsw5V0dd0djudXDyTYuXAPfnB
sS4+f/uHgm3xGWMNxZs9hkXxwWFumgVLGD5Q3Iogtg/HL7meVpSmPSvrmloFG0gZhbth+xTjTrYr
rl01r7QCxNsmf3YgZdNbtL9fqhOSErxiv36c2JMra/+RZRZ1pG+KLe/z6t4tr1cJwtYj1t13WF0X
rVr4FnC7q4P9aOR4bM4hfdXk10zYgZZRcIcLvaxRwblKBzCtZ8doO9kAx2KZzsHQuhZNOojrzebY
XDKyzd5721vXLqf6iyA+rBbza5+Ig3L5mRcRPyoJUXUIN3mm+G3KHn2MopFpsBrahovsgUgs5rOn
wi+CnSgH09UgNsIGv5GLS8ydV7WJWlROTPe2zJ/HszRZlUoZuJsR1iamUD9+snaIshpoe0J1/KwT
joABAe8UKubo7hts+33eVeQajOhGOMBFPG5x+BWTlnemJe9W7tuodu8uFyuCWDRnOmlV5H5UTMBG
zJJxWjfaNx5YHvVsJnwAhHQd1TaYdORUIRjOmc7vKkkjY+R24PJlWIQDJVZtD/Lf2KnfNc9AIO/F
9q+5XdxPXSds0UbSphplpxc2n9WHpqd43ZL9wZFWUgsTnUNNHUeNpk37R3CFUbzjnvORqwsVyZ7U
Rc1cYz4wUQuDdsABBTI5AinNXkcRozN92NYf0Fbk2iAPT42O1D6ISAyYCZ+iQTLW+nopJCsUQTc3
ZzQoM5NL5ElqU5Jf/SyOg5SXswr8z3EUeODjvE2yb9ue4nx3s3R1T2N/a4QnZ1HjFY8SanwIyK/s
5WmX5NNYJ7S3VQMuDV815FeCwmY27B7S3XG85VWoGLuxv7TRAmSkchqgq/mOtAm6SurMQB5j3xrv
g0mOXqCDqm0zqk1M4MjCxsTCFMDK0EAuu7vcVohg6icZwzrpsk8lsVylC6ZzNR2TFGzy5LLQK8l8
crl4JDN9XLSLtFTvqqiYC8PbtaUeeVCVfQCHGVzXHkJnhSvgIvUum5rnDUiNjQOYJAuYuqzPWILm
AeFpA67IzNAknaXrdFuoUHLS2SDuhH5BUHeLP7aaLl25Oeb5mNcJPTHdtltnS2FirWooPfKxB+k2
XkG/MVDWBsWtkn4QVjqoYIlFHP/+Ky08I5ydZdRZCmrq7xHnOECkVWixRrhpvkTuOePa/3grhVnD
wmRkz9Mr5KdIfavnu0+sAEwhpajv6Nc/ochWiOHzKbuY+GWSTcdVAUSPoSLlZ7U5ZvSQPJqWyw+r
kN9VegVHflPSzVQNE/OhSDm6pTvFaHubS/NYKawHqPe2m2ysouumQVzYkauz94TPv3799PlfXwav
izKrXcWYrt8VtVfloxs5DnyfgO/BauDVXW/oIVnQ5ktaC4OXHSsdey6qQdJ5NJm6CfHz9eeclbuU
hLYCBKXe2hyR0Vrd4kJoxfKpmIXEMjcV/JZkywRHKxCXQ2Mqh8nmT6yPzh1EOkOcUh6twxbi84gH
QMwmT25+05AKMqTyryaIEy6JFwdVUpXaH5n9lG5hajzPLv8hI5otwCcAw2OCrtOQylhijEV5isdB
AKKuGtwh18pq8BHScmnWQWt0q0bXOPQCPrSwsa0nf6ynM6IyWmgwvlKb+hqpRuedyzXgqIyI+6r6
0aMtdt4VSLu0uAuYFEUYlAK3Aw9KMT+bFRBEHxq6Wgy9zxjbKEv26Ab3bPrwK8E1qAIpTENbF/qi
KmHPdk+VMqCKIxPybtiKfJPFuURdcn5NeCWlklYGXdWRG69sv/e9+Aw/xs7arGJ2qsDaKx3Sx2BR
RZsoXBvVUbWv08dPGPLg7//29Z/ksGIrcU0tsPeGOnNbzZuAN8gOi3k5tpDIPs+NDqREPs3OHWEP
J7qiNPi8sQhlj3fNr0dflttxpUHf8LPqWmFUj75cZSNEm/BNKA0vFMYx49MBsedhdfV3nLFYRO3k
kozFbBh30D64z7//9stFfYAGKQwti4P6BCyq9H3EgKm4TeSL7FjYqLiSgjMAbnQT53TnIv3nLlml
jNsfl/PrEmri4PcKJftTYk/zdfL4wZHAlP03NbCc9aW3M6xqKvoPHWA90oGotNeQpiYyw2jWJmSL
F0Gf42QT/nIa0AhlQ4YcrheXCV3HL5TyaZ5ssjRO9wson2asRs+p2UIedwZIX+4u6zAStqfooKJB
p8YFMn3H9qU5ladPxmjTGfp2RlFCncuc10sk4xrUomkl/Uda0j7PP1RxgtnIq2qjtTVKK+yQwX5L
83LC5Oub1eKBDI4z1UNwnHhcPj9ioIzohue2ZRYJOLvX8L/JJBsVtbWj6Tq9JTGc9KIM8tNQHuR7
SnNQ8uwEC/2ZUUttE9A8vGFF6VcFSxj2lLE22WBqha6nxjEMex2minx6FWpXuL1hFPbg0jH/hdMb
26cRSQeuBiqWJ9nLsrzgbp5XVW0r4tfJCi4XraYCQOni+diomGXbCVOu4CGnQcR+RgwMVZdSc4N0
tayz7OX/y9Xlvxbrrzfpii6HjTAmJE0THR2YK5IkiNzjFD4BMyQyqdo4ksGEoCSE41WKgxbLrebx
QEvRw3N9xbBiLKJlZhB3LP0ptZ94GlMLOqsDhkOWtREiypEbFp7dLO5mk52Z4WVci9HeEImI1odA
aO0oNgOj2CkOgDDyyCsUhcEz2zbyggB7lMxmi4d0QldzSiWxfLXzWTQZRG+k6u/ikzxh0l173cUq
VjMKt8m/+vIKK9tuq+6n6UO6wg7C5ZvsK9KZj+FeZOsn8PtuUjDKj0RJCD41EAT0R3/CtPPomj21
fOXwuTIOtLk7bv7+NsOXpTp1ONTOu/wtnWzXWOm2aOvF8Om5RqfMAQKM1qs0HaUzN3gB7GyS3RDS
JHFanDljDKlGDRJ0vt8nl4u79U+Xs2T+bVNOUPyG8qBGHAqio26h09sUEPIGLB8p1GUnMA70gEgc
tKlDFc/uLpceI2oGWphA4lpd+2axH07a4Fe/aJ0suOvKVyLWA2XicBJzpLrPoFliL/H2icrbV3fl
jCt7iHWgc7tN1je3M8oOYlGsNv3eN7oh1LYr6vBPj9ZdQRbHyGXMQl3C7P6a2mFr2mWCehfPSuGk
p4vWiWzMYa2atxDZA4+Jx7adJa/SHcfSdDiNnvcj/nQtk20XsSIl7hGf4NJFZbnTQvlQJvo+yVUY
ENLNa8YfnVCue5Bno9tgkV05vJutp671HiRwdLVYPSQrZJNYrypy77GIfYjGG0nk/tCHYloBElpU
FdzhkALd6FArHWTvIEW5nMQV+DAZygZuv7mdCTheYkkzIdUMWfiYadptFHoTlLvGDMM1bVLhR+jF
F1RUjjPRLrtf15Gzhrsw9mkt5rFAIhXWT+hCKHHSyI8wbXpOfIMlNkR1ye4cArp+DJWgOu22SR2d
9IHW6h4idDnDPR3/BqWm4ABbBIIat1nBpQ5Q/dco4KnVOeFArbHLEcKnj7+9+eeHDUI4HG405HrI
xSNXQ/GWW/YXYkAewHoleMuSmbqRIFMcoVlMcimiTuSwL+wAOu1lEYKxvm4LnSjSHrRhDTf58JYS
2116FeNIcKK+rGPRtkrOnokxXH3SU45bmkof1OXmD1CYS7cOVLXPzZy1Q4qJmIvztTIanOseOth6
oH7XD9Nx6j7lDHp0Wk5wDMScVo8py0/6QMaUOe0KWxmnLivkqi/ngdaLGkud+iqYx6Y0VzoyvpnO
JtXcxJxFQSBy2TbdpuubxaQC1hkbnRaWGyFP/LzTXhdlTquAZKeSzjrVf53O01UCzx9nyx0TcAif
g9wAYZClSwndFxTOv0GPicKGHdY/PCxegaikMcJ1I/V4lAtkHj6w5b0cJHcHqXUcGvtR4WnrRvoE
NxhVxC86jk8I9Xo5nhFyDMbydICxl1VYHAmrhHhBMQIapBKZhCHnO5EC5Cl/PeQqetOgC4fzmrQD
4/FAC6mi3oHNdD6bznc3gy6ZA2wuzCl9BLo6A2dUdcryg7pYLpZ3yz1aVlCtSzoFInzYGGsRQXKZ
T3+siOBYxLBRFNh+bZNOO9S3lQMumva7hvaBDZeiN/tN7wTRxRApkLDz+eIGG1+EjOLQ8k3LtgKh
C5ZWy2bHSy259mLk7qzOjusx7uZIqR5POM9DjxzfKSFimg800ua+XLMn/MxeLzbPgv/FO7FLFSNQ
ZuB0rRJa3TEmjc/c8F71HRdtOkFu08k0eZ3PK1/OEhzktriGp9JqHataTgkUiSF2sNc8tF8GGu45
TI8TQ5/m4xFtv2MMKcqThjZJ1AJgrlVUrKb6EpQuWWqmB0xo3iWw8PyMgwu1yyBBto1iONm2Itn1
NOZVx18uZBCOx6NPk0P3dgqAy+1qoaq3fXdyOLnv1oIzHapx4vGOEixuscT2vAxHjMszcg0J7P+X
XdyPHJttKoMvn7YeyDTbfEwnmxIhmjBXdawMozdh8x7u1QoKigzvlxt2lbMxHnsvcFUHohdiyGfZ
yLEshiSKzxd7bws4pfj6WUcRJV1xMDqmA3LnDWcf9iMfhrlgb5S0Lznc4R3t6AH3mYGSrYACWED8
bz1ar5J5hsweOa3Rzlon0wzpU8hKMwVPFiIUQCFGzdDFndoAJLDtVrtn/b3WTShyyQAdsrPoELrn
hg0kZ33CtGc5n1T14bTyC0lBmOEw4U2Z55FxbRqccHlOjUloRyXjQOGuoil6jFw7s8pBsxawsWTd
WoSePz4TMWTjm3RyNztSNwWuZruW7Fa3AJRCdcYFi4pahWLaKYSsXHErB5orE7hOFXxcVwAbtfV0
3a8F6Wf+Rf4ZL9fV9BqLiebgBcBTR/f5RcNsJ3nYQoOYBb3gG3V/ZFy49RoXHkbC6Ck6yADNO12u
5fQR1nu9+PF6elXiYEReyegFgZpDNU/gmec/MRRvhtwwwDP4D/zfDMXbDffHZDG+w27fH/OxOI7f
owRcIo6T/lR/aDy9Xa6fjusOCWBCdmsmn6PTc5WuVo7JBhvoSOazKMYEaljrMIHvrBbIAZ0tF/Ms
RfeT7OuOBFbS9wgRyBi5ZZ5sdMxDa2zTEHDm87xZicaHsRhILyeFtReqqiImKVosl9LWS+nWDoqZ
cfttJHj0yGU04vJqmY3st6vV6DaZT6/yyvhFyVGD85ZRlz3w8rRJrR0zz0xFiF0otXa4AJ6JQdpt
bxLQwK3nyBnBm7/JwaVHUqz9QZ8blnLGvUI6LDgGXi+Wo2cl6Bk8MPGpToU8jQj8VR2/gO0itkZz
0VlMDlrk8ifPphkC6HWyclwcBW/x7W1SMUFR+0z+Lr8KGeIpmcYN1wFRYBSBK2Mir5KNtgJShziZ
m3BnTr/42BWNMXYO0cw56KjLyqP24xVAJt2QShfkK75JzWAVNp8ZoRg/CoTZKYFwPfjNO5z+5wDm
/oVsgGZc+jEGNhWqSnHSNsau3xa6lpyOwanpGDzqA1083KRHGS8UxoJFeBW+nXKaTLJcRU5vr0dw
5nTtBzKg8fa7u8k7j7C+ObvBlAWsuYpfAWv0/doQmDd4X+QjZP/v7T9cSxFtLbVrmfK7lY37t3eM
k9NJuVbOLl49wSnMXj2Oliu4wa/g5r169eop/+q7HFhckFwEh5IS2QFDDNxAq7yUd8eMN2Oym87Y
1RQOlT1M55PFA+kyIVMOY6c66qIn4+LVq19///oK3rvR3sRoMGoyxM8vC08414syN/k6aq8mttFY
p5DgPLe0dZVRWVehpVUPxmZHhKoNj1R6UKpZATW0mE+aLfyQWbhqC8gWqqgNkHp+9u3iPi0KsNdw
3Ndws0dLbLusUJPckw7T86oeiVZZLCHQsotZz+7GN8i8esAzuDHrIuYnBSoAM20bx2ezoIIh99im
MRX5UL+XZ8vdTrNxae494llAlOWYA3beguDpyPYI4h2wLbAKghOAtnkk8I/V3fziKc0AtNJEPf5+
Ql79+e/su3G2vCieBWAIjNn3OE/o+1LZrx7oOI7sOeE7BWe+K3qlL+C7B1g+/+0Xw3fmsw+kP5p9
B5RkVKRFMAWQc6CPHKlkxYQ9nPjT4p46gcZd2XI5uKDJdDIB0L3pLL+api6wfJXczchYsjUGjHAH
JeRcQlSo+ALHbq6WqJSa3ae8Yurg6nqtmVBPAkuWmDZ9uRtwhfFtjvCxKt++WFZT6gqeHM6/Sa+Q
ygOJ3UaTZJ3QM+nAxbJRH+4G1hveX1cNw5MGB2ZHvcq1gxFvp9eK3G2uALXxM8obNwPbJkBZEwec
T7aZ/WyUYMknvf8SKQRk/wfw4fd3o7//Sh9BjHR45zyC2LNLu5MNL6482LZABnsbq3Bm2zkyYOj+
OhRvMXa1/S2VVlzGqNS1fgFW/EBLFNMl7q9zS7ydEEEY9NyCRyWbvTe2y33h/rZyG/JAApATfUZh
9w+rhKXUwLRx+5tewE9fPo94xHnVLRR4C8U5Da8cxDHrrAgJR3K8WGU1c2qaURAWeS+AbQckEwWD
CItNUFsKsgMYFXtXwKdaP+Uz7ehoKXhzYFFln/AFlcmmCTa9R9xMVjdjBW/8JzzO71zFbkTGifZj
QfsPPfbnxvDysFHTZJZdrFd3aZk4ip8ABH25mV6t//j7py+0AlCetDAv5MDOd1bynHhRcBAWFiTE
fTYF6RiP/kwraCtnRKBSqP4vOr4nKOviJ+Rtj5kD3b0fwl2WruZgw35aJln2sFhN/vclHotR5ww5
SEA+ogti2DRPYJHHMgFvf5w4+p0snWfT9fS+osDX4oCbHkXgarGArb8MfFbWu2ygPmtVfu/td+B3
X82m1zdrZwSKtz+bdvlreRsiFthx22LN3Ecdcp7jzgvXkHQ4Ozk6Phk5wvGWqueQpVN2GDnNs3ak
omP1zaXBJeYKsMP5RebY79mkrx9HD+nlt+m63G8fRX2phv+2DdvwVLYW9hYm5Oc/im/9cfH7148j
WxrTZgfW9hnVcI7f6CaZT2aY5islpTAkVdTTVAWgsNdC2T6qdv1ec77YzXfVvqjR4lTO0UFcsPIv
KdcIFx6KiHqIP9AchsKTqMF3Y8prcuEEHAXbYU3b7X77y+d3//jwHqkBnXb5/bdf6Hkz6GqdwCfH
WEp+q8nZfHagpeo7mEOiw9h6MkQy7xHRWIQA0v16fbt8/UvytLhbf817PUAQirYPgtjBDY09HBd9
8MYb56phIW/gNILFOpQ4lMys08c1JTH3yeyOzhwanENiOt2SIiG9dHICpu8hecroPnDZ+N6H3W3N
3ZSbcyYvdtRiuXLYAecSan798c2nX17vQ2dEHXUVB3wgTRxFnc72+V7un7LrE8gHoOYHXtLxGrRQ
JM9W5AKGOnCNS/NkmdXYF3oQvJktsOclzCnA30VVS0ksRxBhlAqqD1C6B3eLVP5qILkKhCEABcKO
rlaLVU3xceQ5bDdoLZoRvdrXxT28w3SSZpv6msoKc6nhP3bOyDIbxG1qzhtUItCzkrBNVoS0W0dK
mRyBSad8r5ciLd6A0KSiTe3j9jLjAWbz6RU8GM54kn+uGEfHuMa+TN3pRhUJ+h3CiML4cZpX3HoS
XrW+UMcmkxosZ1U8KGgNmq+i8gHsT/S65gAFnMIA+s63b4s9tk3mhWBXjB5TSoB8hSqzz0s9wc/9
uRR5Q8PbANTWy4JvNKGpLIj4T/Getlmd8tnulo3FeZyZKnxGVFO7mvCc4yxirgjL/TnvsmrCr1Fa
8CjcwlmpwyF28f9w4AIPOzvmGuMQ1ED5bW8R2sx9tTaSfwppj60N717gO4DMTyp9DIEz4ZToBxGt
p7cpuFc0QQlvRwrRxYNOH8HrmeINTGZFhqUm+r09a7zu/OP2b3efn8VjKD6CgAzFe5QExwn0Ef7d
/mH4DooKfGvz9vCRfP+DZ2x99BLLCmAA7jdutJFvspsoOvhRnhPa8H1g4XwV5Q1jBgnJ5NmVd1n6
S1r7nRi+kTt6O1fUyONU/MQQWtpY0GmcB7RO+dMONbWIBrKHxovAd2T7ei/vjkgrhe3Z7hy9J4RR
UsKNazThlT3yFbz58u7TJyfvfBtfOTqh3TG8iz790yydXW0KdEcRqxySEnVPmjUbfcck16onJbW/
+UWTQ656figocUHW+Q9bvMj566GNXm/o48pY0XHglmhgwQxoeTYzQLNx2gHOHwm2rxEBYDVTLyL4
foAFuzWYFtF2vC9UtF3JVsHgQPkOeSBlpwl0GC1715O0QjIDbtnp1CKvVIvcvDADZlAcTRvql+OU
hnWc14wL0bgV1sdzPRIcl4oh7fr5guPcnvraKfAIddSvSanqvrSYi2jzbFKy5otdmaLbyCVDaqHg
IjVP76t4yo3L6Z3bNaJ04Hf9IBQdRbr3PL3bcCq5JMSLy9LbnoGCZoazfvGXOggZnUYtMabs6Uyy
qKI9k/pMsUxjglESVKoCP69RRu0Ylir09DgZ35AVXLGy4J72k7Aln2d5uwRxnT3YKb5w9H6TxcP8
epVUDPuySHbXAmDdTDM43Z3izn9nz2RRq3Q5S8bphv+iapoCt2agutXL+mnsyi2h1LiVZ9A3tk0q
mhbxu9nMXa9kvKaBQWyUK8M4Tzjie7Ds3++YelNl4s3hazOU1jbSUpJVR8hSDN8eRaOcMY30BAQH
b1jzgChq+IEPLR++eVcKwTJ4Uq/6gGYhAVjaJkfnj8G3rSYjp3w3xMC5qrh8OkYQbGKcH8ZPqCBI
jWDOD+yyfWQnpegT2ZmBYdJ2K7hYIn9bceJ5kg62Gd5w5bpC8iv5aZ3e0nkdDTeC8b4hCD1GAQcx
2kDqeLmgcY3FpxyEfU7kcbcppDmuQnmdCtV98Izvo+lK5mATimJxR6CLqlaSPRhgXayCq/HqYZpS
42jsUAgZDjed3qejZLVKni7vsNiRHuQikPmU9a2ZydEGTilHIrB2Wq4W99MMfpZUz/9iynHkRae+
tjEHheyz2by6xATLV0HdLkeOjxQrTfAD8gNcbC30O9yQTzv2+e3T33LrXG4LG+HoXPHCwktEdKkL
4FRx7KW5eIObBV7/JXmlTBSDSTieRObNoObH4Vv49z0FNWP5X0icWpfXMqymc5+3p93OIe8xsBvm
0sEJ2uYiWWNe7v6fvWv9bdvY8v+Kvji5ubdy5v1YwAhukxbdRXt3sckCF1jsB0aiYzWSqIqSY+9f
v+cMKcuWhtSIHFJStm1gPSxryJnzfvzOPE9u06oyGykYgkq1WjVA2G8vwpcVDCodY8dZg6vlZPT1
sTIhdgChgzWDPe+FUJgY6LD8BmtsdcHJlaO+cX6lP8zFLeLrs+Ovw6+rF+m8aK1x6NAu2lb+Auft
uL3zqW1sNtqF2qxW2yxaWhlbnNilCxwV1H5YaXn8nruyftiq3Fs7xTHGe7F8xs2AhvVqh9kIBUlX
zRsA9cUCqwXCltsS9HbhmqA1x3hMkHfT3fJBZYqh2q+kBn9CXoPRYI9fbEPwHhZYpi85oJg5GxaA
b6Vay/v0pf1F32IRgxBhbUUNVYLfc2MU6Sce6abLexymNPF3VlJNcJwujWfNN/SPnpk4uyXJ2EXy
+mU58kf4+PzL9e0ym70Hd+p9Nk7/Qh6k+QF+cPfjjbeXBE7UUs2jmxvHuxQdBUr/6omRSqApHu+A
fe0zUrEO97SqoJmC9Rg25jxUzlZXqUgEs4ho2mMKqn7oolZuEF5807iY9o3zjJ7mLfiLkKUA2cBF
10K/qlIlLG7Husr3VAPGUY1FUvIUCslIEUshPdz5Q6YEp7ozGlsDZQvMs/qVECehEFHBjHxUeYHE
kdTEdk7oRyX4D1Tid6mUPcLp1Wi6XsHf3/zg1PNoq54fnjd5Mvbf//PqD1aqaVqUwI32hkEPhGZ9
q+H6Pp4NIN0LbfqiMefpYsvGHNiH4Oup6cqhSmJXjmbxTvvB1+C6A7nQQ1hBcRw5epJswG+F7PbF
CcDYtZHU+DN8++Evn377dYiY4KuJX8gJHgoXVye9lzmI0jITNH6EfQB1dpstZ0McE4rrLx/9iWqu
4Qr4JcR4as5OK867URL+mhOE2znOjS/gdirghlaT20eQ+X40PcrBwqSkRx3k9bL5uYe4KskDnAHK
LJEnsMqUbBkmKGMD2zGWd8kcDLUkB+Np5a9JZGCa8zbC1YWyEHrJDQHDAtt3bvOvr98W/55hLu4c
dNnGvvP2U3c7OKbuO38Gi4AXT/++uiGvZvD7T4+L9AZxC98upsmLlLl0EyboQDNqyIULKi61PCfr
xtel7KIQfVg3EohVBB7oP3/76dMv//7hzA4Uo+eHRtF3Zo/XWxm+YNnWGldXjFtdPFJiNk9o+YSK
zRNVPBGkfLTlI61AmjSWxszu1pQNaRo4JIjVwmbDd/kzFdi6IbqNjgnduVqvLkDSKpInnyOYXHIL
NDscTbMcB7MN1/PKQDaW7HPee4zE0kC4xoBT3cIVDYEHv77kvicJVFWgKbFk2Tag3KeJqKtkBbv8
+XcsZNxc3zB9wMEtVRlkLm3gbK8z1T1/jal4qFKmzxBiDbwPVcgPNmaM66nIFYnTG0HWxuV2GlNg
gS9dnMFwBZZbERX6PJknS6TEFQ6PqaBEFH5MkajCp77Yk0puB1SrTmTtwc22CvwPagnvKeDxqaQ1
by2EFC3kzjMIQnfQH3AkcD5ZPeyh8VpFBobonktHNlzWcHOEEqI/J7fVxaJLKy3pyO4ENT4ZfXUu
YBGbcLJ8OpuMb5I5fHD5K5B6YV8mf5uMr/iH7dt/u4NbgHcKM/GBuP9UUr5UpYH5oNXeO3zzzuaJ
Zpt37OYdsnlS2qcPfO+b1WjzRO5+z9NfMbP5881fkc2HmQXDFuULYqon+0au0BrUBxesDTe7kebP
wz779gosA+a4MKojOXk/Sb/51ZEIhY44V0OhmMQT01wAe4H0YTmiDPCDqivuSqtbxZKyfDXkhGJd
zyKb5xX9tPJo5VwT2twox6KptlwWJR6asOv8Bi7nVTGV42bz0XTsKu2Gm9hReXTFnJvyRUEiL+qQ
8EJtEyuq9robXYwT0FIPbBflq74cPfOTDGmWo68WH1j5D87dDJQbZourfXMqGKKUiRj0yg7Saxgq
eiR6ZZHo1aH2qpYtMUFYyAE2LN5Aeao7qqi4UGX0OTGWIrwTU756GxxDET3QlsdmqIqUD3Ndzedu
31GidmKJ1Oy+UVpW1u7GFjc2F6VsJ9ooTfMIJcd1Rtni8dnLTcCyzq5TGqs92pZ1FjKLH5ZZnPYn
s3gkmcUd9jI9L1Ggz7xYhNi+ikWktq12I9xM3UB0VEU3ue4inOXlpeCRLMFCOZ0tVv5aCYI9wyKK
hNAHJITAwZGdxqu8/QnETYxStj/ZpBvJJhyr/EI0aRRNQsS+7iYXU8xQxTInch7W3X5CpLDqpJKd
UFh1AkYS1p55XDjND3yBgXQWUxaUOZYVrIt9BSD00pE3yGu4GtBo7qcrxl3dJUXTWUXVGBuoA5Mi
/r9HAAlpEgoMiQAKTZS57CrVIkqG/4iNGy4ThmgaVf9PgQprC/KkGjCuerB9/JEWLLmyUeVOSJBF
ge3TrvXkRQPjgT2WWg6oNMyeooyOs8tltr/G5S5wipsAO3sGPVbOA9w/BPC7KZiGhGghooYUV3fL
zJ+HoARxxaNF9lwtdDkAerGXooW1pBBMRZRa3ybzcfZtmC1SL/e69kou/tTfsTJ4h9U2GwhhedOK
MQwpuZbo6T24wGCQ5xVCmcMytL2Z60r58+GXDAv46XA9d2ljb3bI4kBtbbtRf8kMRGEOlORVvBTc
b6WOoeK6zXy3SPJV6t1Sro9e5Jm0y2bwzfn174sv+z4DxenMJqJQ82dEsOiLqrNXYwX2EDwZgWSe
pdtanic4AKfkyBX/MabJaIlk/STLvFjVwqpmYaSCmh3sw9N0httkNpk+Dm/hmm6TUWWAh8t4NVDL
+03xpVfXOBRSesa6Zit0gLpci+AVM29Bsv/z40d4OCDaEVYDnI4mFFSeX5qs0p+mKXLKP1DsLuDc
6PXDvptPGdAJ7cAo2Qr4PevEOJ+K01g5uC+ZawqrKBMdcBHPlUHIkJqZEhxkL7O0G8X1vAyX+UMo
qDbjdLEXMFJF+11R/rUv6CTF0Lgkl+LKRJXvhvHOHMdDeVvVrPK7Rjaw6wefHUZMM9gJv+1XiQgb
DQUmn8zcOKHVEgnWO0hI4FQBHXXzuF8WGBs4gqSKQHJkvnIkU7JYFGWW5YwKb0TDcjcx4ZxdsI3j
QwvpdkXsrpIEDXlFpFOSbqpMnQuEI5MtYY1dIBBxy9RFxJP5Y1H3DXuNsXFEVM78GAoGkQgFb11u
v51YCNxfUegNS4mYTTt7c6k32/1mt5tHwtaSOBm753RcdnTf4ojWEJI2WK1ILqbNI2b2W9AmFtLB
sZgluTkAtP2VjRYDzbRp3YaWrx6naX6XppjgGg+xI9YxmEehWexnppJ2d7P792nB8NXcdm+pVUYZ
mthNB++3eGcf165IKthmuAzuZMfpNF2lpUU4XrvsIWjD8aNr3irbuF3TzJdR2Tx3Pxmn2IQ/y+4T
r71sEGsymopEaU4r6hwUot73F3rVmrGouXKfWH0o7htue++uyyrHlsiMAQs5+BMM/LLWAiOIwIrf
Hklmylpsf9URynfL6KU/BILx/faCsyjXyb7cv/h+8CtBEZ59q/3Tv207Q+TeBaUEsxcX+Xlm1B6M
/EhlrGitG54VXwArrYYbTbg/Xg43lQjNu9GFtbV1graFQ9tVAMyvAJRtZrJ7vcyN2j08ZNRYCoqH
9qgKmF8VaM0iqwJ/jwY4DsJE3ubnwEIvNnxfPnDElG2C17DpCF3PbyfzCZit4wLL3IFNrbKixXE8
LEEFp1N8vwJmFtQAb5J4Dbay/GWjKnDmTCwl7C9YwzlKKkZDrttpp+ddb2H5ATz+zWe8F6AoiDNl
O1TCphUA7K644tV1ubQ/e9WAh31B2ZQrQgq1SgL0KcX5WkpdoOGEdTcRDSdjqBK9OiXwY08RWUb7
NW1Ms2kAR91aqfpEVxV72TwdLqbrfFiBqCcoxkJVdL0bNHnMgOph1EQLZuxArSGUAEqO4W229pci
MG1A6ct+su3Cb/Zgxl1EMTtw9tVTaUIj+8MgnmNj+2MFK200fyGwP1RQHSN8wJXtzNrz0d/+uBKt
FE7qiuXae81akCAD3iqxuqv3RcUwEUfNHcQFd7hobxsV7CLqyQgG5Kog1UojURBEgrBMdnCb9bJj
7665UANKG5VJHrwU2BcnMfAadnMrgg9UK4G1S07ST04MSVf2qPOF3/vEYdoXFrEJMS0dnDqN7Vh7
RQMHp5KECDneQMFXdW1jcZAI6uvlPlUyzx1GULoa3W0yIt5boxQ1lr4cgBY000HKZTGTfdYG4ajy
VprUHfS+FCQYPAgqNuPH2644QdB77AKstqDae16vcHxkhtLqPpmu05tsvode5vRs5+ve3u4ubAaW
d77ubZZ51jXd7fP+ajoMKIUH6jbl120gDJiuHxzBm1VG7NDtuz/KGQ+vP91NgI+J+5EgCi18BB8K
vn79Zk9ma7CpmuxFi+ivz+fWTUTLUeuUDjBjuhshAnc+TOc4VsVftY9Vnjwafj26A/BqPfWEy3AI
ndbaqogUrr09EJp0oPJD0CUNQ9+uO220dw37GpEyO2BB0DT85IWlW5vgipiIJoFmJMgVDKUy45ej
CK+vdcdkVgXOZ5gJZFwe4rwP3T1XzEwW3DgnPprG6NYRuWKaXjGJ/8OjvuI/Ht1GIIgEP5Py/ljZ
nbNneh2wM2ey1TG/FM97B75viTBFG1p6ARqpKgrL2XHrHdBCIbcJBq0m5JxEpc97ej3P5unrmB6T
0aqBEp6BQZUUP4fFQsWLMt4K9JzdovZPZpvRCm7CgL84VyA+h+ifrMPAvo8W2JVxAEx8NrnPY6SI
3ze13CIYTkQ1CA9/rCdLf/ScC2lwpEl7hfSEoo2tUMU0Zd/kMMkGuomIil0qaI7c4z25FXjTBeaa
MCyyQ1JZmMhon2cpGb0U++LIQCeY5PQczXEEe3H/qrPphxBjim94kXyP2immpIhjg5S54JIS6trY
OcIrc9Wa9J8ovxKjill9tNHTOPkqK4A1bDOZXaueykr6O9jh/C75mmIN43SaYv3TEt7LZvOKFjNM
wIYN9CX1KaX0M7bI5G8J5UWzxsv6BoEmJwJFCxEElRA/jBqGq93MJgjbfk/kAFsrKO0t3ImTBJtY
Y62jumJAueUdaZv6QV01cqjUQG40l/v9zetyQC44rfTNa9Au7/HtClXj5uUqYXo0iCpSlqyRjd1z
+GkHlennqGpLchHZSKvMbLKOhHdpq3lbQjgcMe9ALx/q/eIqFOC9leAsbr1st/TWLIFnFVaEEDsP
hjUXnPSzAZ4GRzZgxvbqcflyMky2ki9HVCXyJoZ7B8R2rJpskKBxcL+CDqTmhJ+CwDgROBPVkPPY
cSJOuAlNpGtROLJMXOmhK/rHIeCzxN/0QKnAngN9Fpsd1sfKu23zYVzp6Kneij4fok4owrk0J0+r
U2p0P3n1sH6ik8b3d03RRbK6i1ofxaKpsQIkpiIbuj/K9WTGmZGn9+72rFmvg3dFJPp45LB/Z+Ak
NTut5DgPc4g3Cdp4sxrjbLRGVoUnrnkgh1PEPgE3udVfMKOZxPjRKW3wJh7AYWPwXb7+PJussHHw
efzy5qN7G6gWfwMPaFzCw21W7BE8/fxYVnVt/uYVzoS9naTTMb35R/rNfXo5w9JPeB9fLTN8tc7T
5faj7ObVMhlPsi/LbL2gN7fpLJmmrxzK/ufsgd1k81d5OoVv33xgkhQLJcs0oTe/ZUusKJvXL3fF
3uOd3E1GeCuFYMY7SN3V4/G7O/p2l87xoXh7tV7iq1WGP4pCNuwmuX61ud9fksUinadj3/gHxCOX
StrzcFtZJNepwLjbByaaZqNkumEjb9CbAgFb2UH0oA6WXXAKj/qUTCvteRCAoafchWiV2kBii2GB
RAsSHFPTrtjARb2nFYhgBvxbps7D52EsDiPuarCjeJEp8PkbZZTjUYSIxRc7DfAFPtrTJytG62El
ynnQg4iYcnyJF17h/xsEvD6lNUnNeViTjF+ih3jFf/5jnS4fr/iHYiBRVPw8pU4pFPi5CGllTqos
aSQ3Z+PW1KBFaga6scNy1+N0Iz+9kcpP6+P1xX+HhCPVJ5YDJ4/jvPArtjEcLAy7eZ18ztarf/k8
TeZfX+9n7j86wXyN/uf7u2T5PhunfyEP0vwAP7j78ebNW6xJT2aLK/6jm1TLfzwUCaICq+WMPQ+H
ghtxQgoR4kz8anFKt6pR1syrKfCS/pjWwgpzBp6U6sCBr4W74zhYjZIzsRhPqRr42YSS9EXazYwX
5b0x7WViT2othAGs9EASNlqdwpMvu8qGmyEli/2srTTanNRCITZSLB7jWTXTWJgSAybPw2MW8qTO
IW3XIj8ff84ewBC8A2HiyGsyB/sOHIKnUFoFEKoJRRjqw9zokewalSt43LHSA0Mk0uXIH6AdKMLV
6U3+l5ZIRd6WBOdthSHGxo7u+dMcpFlXXUhFaHXuX1PZrBX5hDW/RRNL3LJfRjuPn5SHsH8BAp1C
1UG3jB+slgcCx7UQw/7plgiYz9svnG4kbOHq5OWgriG66tg0U7G+xnbOlj2Oz5DlHCM7ZNl37vl/
/eevN/naXQms5m+cxYHj2opLMr1LXotd1wRWN42imFz4xo+vNVCHBvP2oZDq+0NCokwHY0qUgvhQ
nMQUIIt0ng/n6bdy/rG/40sf7TUcYOgnM26UZV8nfhMKZw1yeqE81GXmR+Ak+ShMdehcHDb6cJzO
JxXARFoMjs1Ctah7F5rbqHqlQA7PFl65gkOaJe9mn+sWZmBiS0PJpVJ+B7EboHiq/6ynu6h6Om6s
JTGZtcQrqQIwZjyi+1ZTlcGsdTMLL4878RgnORgWPyKfImUneTqbjLIpkFlEZmWE65gHP8vGk9vH
IQ4691cIKdqsdC9EUh9YnEss+W5Sc13dDu/tI1VaDVQTdVSzjmu7F0RcJ0AXOyDOAsy+Uxbo++zS
V1vA9htamNobvI+fws1stK6f/mwPXl7hpAFOLpS9n8N3Fsp4o8HcJN88IptzrVVU+b6ZBDwe+ycb
4+wjI2MyQBWsuA6cqR7AAaDPUS/DXf7y6bdf/ROiTUvvqkZ6bfd0mK/ShV+hUe06lnU/ICd+vFuq
MVlpo56uD1WkoF7ETToyKdSmXZcS1c/5sooAiWyEvl29taYCqIbiyIEOZIIbfulvaWMG3DQSUf9u
dxvusyChB48RiOMq7WkqnzwyZRN34u8nsy9vQUW8BR2JtfYltjPFEib+fjewA8pOGK0vAofWC3MV
GxWEc8E65dSCkquFMRogIAwV/dPbvShvV2ilVWyTAd4c4jRIWB9OdXiXJuN06Z8BbTUmPWRftOtV
NBY8FE7bXEPJ9K4muFwUE+35cJQt8RSmj95IMY6kpGffIFArxCLnXYRA0OsmyulZZXa2zMub9uG0
UjjsVmZNPDVYxycvfcbt3xQfiuVGwgs425/+9RbO+TFbo+BJ060smaV5DuIEZegchc8c5cy/JffJ
x+IL4H237hv3J04wwYMTbzn+9j/+/vHjTx+uccnFvtPKcDafJsz+qTMuq+OYiljFAId4wSuvjcEy
WdaFvH5Wrtx9kytQ6LBuSjUlBFxsEUc5ur6UjxWiF4QiNVSpi1dFnTauWUVV7FB9xVxDGxEebJVl
QN3zL8NF8liFu2dpQ/i1OpYqXTlQi8jjbgu8aXpNm4G7/J47N3f4bFhQ+Q5utI/K+YBaFte8eHeb
TKY+SSnZQAl6xnYGC7Ez2HdiZ0itTAOjDy4PthKPfzHFODROW3fU5UrH04pyXild6Cokyix2AnXb
BbfF6s+WhsP5lizHZcn6nnGLGMdcBBlUor1y5n7ljEVk/Pgr8Mqu9Xyc3k7mOGK3VlFSE9jyLerF
1zzzSrBCLQ0/gxOZYCXh/1b0uVIM9bPL16JdtLFYHdRIIqoYsBk/6AHGpOokvogp8Y0x0Sh/gnPV
/IljggNOZJvd9Isz/+wNnKzG2vMWOlxD3DvgZrelzhly7+S4fpVtIg3HoqYGwrRR1kORMITlIyU3
7IUr/PUQqWUDqqmIJLU7sRV4iK3AvxNbQVEidUuZ4a7B0bZHHEo4byZEi/M+cfoifoOD1FLL6Oqh
junowJB4wnqW5F8309Vzf5bRyAEPcrEjmGbeUhxjxUDwNleQ3yWLtAD+dSK8At8CURQbHOazSP4f
62SZUkKuF/Mve5lTi/DC1h7Docd8tRCiJfMXG1R2fTzHXseh8zfX12/hX8UVvXLokAV/eq+OhtVc
iD/jpWcTL1WUHWg87IOkPBdXUhRRLJ6/tkhgT8bDHCRvBhSXusluo2mWu6L83B8CslwNwqZTi7N0
nDpqQrLK6jM2CkWIUSi+F6OQUC665ZLyJryRBQUMcmRAqTb6XD2ChUs5YEb0Y6d4KxktfDMzsbRc
wC0zLQeqlYt7NuKn0wSI1ETGYoHldJis4Ao/r1f+NjrLEZfnjMWfDBF/8nvJ01trRMSzn2fD1RK8
YyytzadJfud1WCQicsi+Ij9SGN2T3FNVeW1Bvw8x1EUEmWmmIzqvQ7z10cofyqdUsWaHUUnyZSW5
v3rSmsAcaJjKQ03nI/UiOwXC1QThf55KtKoQ0aq+m9SkbhUWOgum76lHT1pLaESedDmJEZiICMSZ
VCUXNUgC3o9i0F7FoO2AWxb7vtPZYvU4dOai/8aVwfhFb0LJUC2+Bz7osZlNwarR+aGeIsIGu9W4
oev8rojOrxdj5/rilMrl0j9XgTnSb0MWcG7jbDQcJfNN+KwagocpLEWS0YnQ21Cm/cVQZBCGGXAq
3axDdLP+TnSzJpRFID6ESS9BqYAOcYbiYVJEwlexhG+Raq9jNIS85Jw2YW4490ny9n4yTrPh0wQ/
H+oKCHlOeypOMn4PSw1kvBhGniLI+3yF54uN30DcT4PR/YEt0yzMXeywH8B0lK3BdgGBMkoWuAHg
z8yy+xcrqwHCuOoTrEux+VnQllRcLAoUOvyc5JORv0oFtpaZGKzqQOO2Wsmh+iOpebOdimO0lF+O
2RLT+OCKxkocPb05TO+Ro/6PvWt9TtzI9v8K9wMzlU0pVr+7c8u1tZnJ7Gb3VpI7ec83DLJNRiAv
Ao+9f/09pyVjQC0hpG7Aya2aOMB46Fb3efzOezla1OQjwX84wmCbidPsZjrvGFpbX/SdffwIvstG
1io3bQa6C9jaZaKWDAvfqGUAenb3jML5mjr0ke6eKIUTVfKMsY5ug3X0HwXrCCq456ALyOxqZ22q
2IDzToaLc7E9XS2V0i3H3fhgXEZ4DDiHCyW4d9kIGGOCGxgBld4DLbtrlNo2zD0TjbTeqE8/keyE
d7rICFOXBc96Be+3xirhnadZlmOWyf4JQ0riSItjETzRDEPGJDbGG8yrT6NjEucG9fFdV3qGI76r
nPYYgPxNm8OWFuVS5cuo+E+yyKI0md8sbyNMYHI3D7H5Mi8rUhSI06WmZw0hTBsIYf4oSTJccBZE
6N2lq5qaXCXibqGzA4a6FatHo/xx7rQ+qcZsYuYruTdZjsAAuomQfxC3wwZvo9/hokruWi2ckQpu
TLeUifYNxGtxXdE/XA6EopK9WCe+75z2uEtiZTdATTgTtFOSab0EROmEJ2yFE1Ll55Yik3+vpvdD
9nZIaUmc8Orz8qyKz+Mh++pzIFN490y3cMBWwAypXvfhLyYLD6mBf+Roawg2t+S6S6lTZ0tBspBc
/BCVrWksoHIP2sAgRK+IcL0YLUawucUoA2AlvUG4orzdnWAYvxTwkm9JiSF791Qo6VNKaG7o0fBs
AwEQCvsxXBxNYhFFj8jYLTSj+FLsLFYo/s3menmafVp3HKjqQCkNwcYdlAlCji6Od6RLRSxPkvmj
W9DiiIY47lI53itGwPDbWo5kbi3tMMsP7aeW1jJTLSfR+vHrCk1enuh7Akh+0/m6ROL6OOW04d70
G/JfU7ATm3szX0l282zTsizvCk1Tl/+PY0faOBhDNVhiFCEE9a8/tg+7okyYxHA5Of8E/td5mly/
9ood2k0P6HXeLnuXSWx24YWZovHj2D36jXLVzXHvzbnTyHevJtN8dJUmG79S05bvAj0nF40N3LFL
vqEs9iUv5gX37ngNotrBjxRzM3ZAOXxzNp8490C394CZfSAotqipzHla3o6w11WS2x4d0afbaYqt
OKdpGpX/yhEZJBRnscWUKh37LgOy5BaRqhjhaETrXvkpzZKzAXuzuOWU79M3BHADg2Fs/gK/UPzx
WnNEjScJkF39jvefzK7gLtAwL8toa8eCa47zOWgYAqRuAlS7YfhAZgpnzJopPG6V8SX6pztqd6cs
zK2OD99BBx5ft6nm2FOxyTQTgdTJfgp8tUjS0WOZ/RJNJ7m15m1KzOVVAq9tEnWhZIpvw2TjyeXr
4s1r9OqDhL98XVAEvl8+3sH70d0dXE1xYA8oiT7iYEzslTdPljlg5+R1GUAYgYpYfw1A6WmC33I/
SlfwHgXAlxcX6+v6EtOe9xzQZDWbPX6Rf7oexgK/6qJYyJ5CuXv7ut/maQwiyusGy+uq6moRmwHw
TausL1GrKR7TJL9N4JZvF8l1Y96k4BxbQh5CslWesClNAAEuyxOydvFtli93TmjDssrzH3CXX8CL
ymx03SrOIE6qrSaj5aiwWctXG3QEamfTMf3V1ShPJB/SN5PZu8dv/vHPdMx+zidv/ma++fv7+9/Y
z8sPv4j4f2aTdPL1z/mHX0h6NX//Jvkp/fivN5PHD79+S67+8b/zf/24fHq9+jBLH8fs/dvR39P8
wxuxuqLv059n7/LJLz/dfP/DV+vf++3X9/F4lk4nv75Px49i/uHX99/9Bt//4es0/vBLnP2TvU8T
/O4fBP3tlwfy4UdQwG8rozIYUmSr/EexH5HbIeGAfe20v6IvRm33TskROHaTp3tpzbrD0dxQvjVE
bbMx7HbGdR/Ovr8piwyL4qLR+BakPfagX5bVh06sQXXLGSQt7u8OHjhZ3O8preASU1dFj0dtUm3b
Y853n5bpAacdLnUz1Xydfu10+XKCQlOck5ByuwSS1LoE/hQiyrDYO9ZbZs+p2rbMoQqsjQJ6kER7
W7qeqWCdgWR95Mduzx8rRbbEB0iYXVamDKQW68pPz0sWnFVUizzzF0IHi8zsVKHZHX9lcZn95Qt4
W81dlkr4EWV4u6P5JJtZ98V9sshXeTSD01g8FqLV3YKMdFQaQc6DGKoBwlGi9XmYHduy+cXaHMM4
boPqT2dzHL7BZptD01ZzF1rJMMtUT2y2+37HJVdAfuMPhe0sLtxzWgiLz15/13vEkAj+JHpdEMXp
6QhTB1u8hjBVL9P/AJ+ZceN27BVCTnfeisZhjAa3YQRwItjTypoJUYrFpztfKXSgxeMaQUuCifY2
5KTl2buStjJG/7It4f0lRHDKAl2Dqbl4zgwJ6utobLKksFMwp2cBiv/47vfz9r23A8EKsIamJ5TN
qlW+hUdVpONTimajX65o9pzMTxUJZXzpOrXMuVegBQcG0vH3ujATcBfl7ITUFgzH1xywEieUJEIc
G9S2GplI6gKJNigEK0U58GaK4+kLH1jRexz+FL6zkssu1q6xGbDzj1vusVf2G/62vCTFq3fZ4pLv
7DfCeBZpl7C5M0xpNs3HFS8q5kNU0wGYlkRipwVlYtUShnz3/Y/ffPftD5VB7BuzP7a6tBc9SzAm
c51Ob26XBUqKlnAs2Wq57uFuz3L9S2/wd34sf2X5sKycDogk3nLD3//040k3y/SACKJPx2mU6xeq
xrzWmUjaO75Ydwm8RuIIaU7oFhK+LYtnNYqX3NZW6AWLK1nlEi6yXQ9Mn6pDSo9WIoobW2hbFP+5
m/wILBLqAH13BJ1TvNmBGLtCzhnN0zFr2Vaq68NXEx4o6+jfaw4hVlZ2hBHhabWQp2NZnHh8XBGl
ugSkLcKYLEY3UXafLJ4KxadzsNKngI8KT+54UdPVXGHyPDVe7nd0lTjnGFGO3fxOeJNSH9mVpbk6
Ece0S9w+R3Th2UI2MaUnugPG9Qvz12+VSiToUpvdRYitm0C20xQAfUH1UeJRxFldy1HWcOPVU4FZ
CvsbXgicHB4H15TReLoYO3MTqYH/YVy8X/bj/rWpKzESF1c0FBRUdSEDGuujmsoHM4Qh5Hi28YG7
oxxAJVfnuj3O0BvSFRIVwZSCmq27KFst0ynmod6MLXnD+wIX1c3BIDgPgZlTxrblkX2Q8oQ+SE2O
7BHg5oQJTCqY2Vxzt4KKkAZsvqzJrhZmwCk/e1DqyJbyh0Vpax0QJK5cA2A8BJgxoezy9fN3f1nU
GO90VPrs9Z5YKsXBpDzWp4yA6CO7sbhQfTTbG9RcNWMqGB/wkyZnBgtO1tjbSrFD+OswELMh38Y3
00r/KGDxmJ1SkQTzkdWAbmmob/PKWcslsYEH6+oQy5J8ni2TBzAZN76YxxyH+A1MzM49mXdLIXHO
Sud9TX4v/AJqoXJH8NK5R/i8ldLSaiCF6l02kcKL+6SYvdcwLQEQAhO8szDEuVHjLPs4dXrNbalP
F/zRGvq4UQ/QWWyO4giZJLDJ8agmrY1r2S12sXG6aLLZ+ktU985FYomel3CRiebxiBpFxYHqtBjN
uROeL2tr5mifTorHns7H6WqCluT8+QgccpELrOeX5MQ470+VOViLJxkQhCJUKJ8CrKGJpCQt567U
8xiAcmcDTqzXAv4y52hAWfGHdaPzbJ54bSXFpTKBEV0NmFNM+apCvkvmz2Olo6ts8uged9JR/bVR
UJNkPsU2aS2iy7FARXGW2e/rDpLx6+k8nc6T8lteex1eyLpYgAUHLxbZAqDldk4XYk1QvkRI0zf8
aP2X+eqq7Kla1zfL9p/jzLMKulsAJS+Wj2W3T0rhHrI5bumyfWv4i4vq+EYw+ZXwFpndPiSrL1Fn
2Xe7o8+U7W1kwkYOCt6rsxm56ExtD8vFCLS97bdaEn2UjuY3K4RPoxuAS6CQbSNWB1DRXA9MryAx
DoLAeemAlCxEKzrUO+lRCwXyLfYoT4uBXDjYLl0nOziXNohKRZAjXk9McDWLiwlwvb842A7rl3sp
0ODD8vLdaFrB4tgB5TwdruUALvjW3SyA5GE0u8OoZjbDoe329zwKd0WpiPt2hSlauuaFgbLD8cXo
jNwGuGwT2Mu44uLEvg+EHGsXBVdeEsc2tOFh+GKVLqd3RdJAZZIsG4hegqC9Pfw80AQ7h7pdS3ZK
RkjI5cy1MtJKwyNTwH8/jxTPnfSg2HG67s1BajyNYXe7KnjL4SkH06aLJKUZKK1OBT84O1GpYaMW
LXwCxQeeYB5Aa6l75WIVfU/usnyJXXU2p+LY8D11ZuMQsKroQVAYjdh8Nb7dyWEsXMbwjb0qg9df
vt2RpfhyMyCE6iNBhu9H1eQdoMfY+IRpZRYq1njFxO30BWQYx+Fs/Gb0LaTuKGau4cxhpWiU1/dP
45oMeO9Uiu1rbIC6MU6wZOcI+CbJ9QhAwVZ7MSzQ3YxzbEC/E4wDFo3lWuVlfwE/qslB1jfHiK9F
ovs5IJa8di2tmAj+QNpQGlgjTp0q0aCfRMbhtIRzBDrRNln0ACG0GzDIZncgT7/4/e7GWc3H9Ukt
QUI7NZprA3MxsnANa0bY3j2fWhZ2HTGIQqr8txrL70bz9fiZNV7Byv9KMgr5bMi+urhwzJkxYKoL
Qc6/48dacj4XfW3JU+xWWn7otUqPmlb+OenSk7AyEMgYI2hryxDw/w0+OAbX4K/cQ+wVKk95+LKt
wAh1gxEx4Er3WPIQI2gO5DmdOnGDwDhSfPg+/AhgRVtN0ZDBQCiNadyZ3BYzK/ztnNq7tKaUT3HS
shGrbI4Uu9ar2pgMJ4uJPd2yZV9Hs0sUb+NegXzFCOrYWPa8YnhW2MNyhCGtUQ7snabJzcg9SSIm
doxfu6cPKfwrkp8NhJCtmv7WUttTeP2p4A4DU+7kCExlF96lS7gMWPpu+IYNzbspplD9kC2+8lyb
JThjnqmwlgaxGy2jrD/Hl1P9omJ4cjTJ3LcNmEK0ita3E6O7z2nRpivnk9KWLUu6aE3mnvDL4WTp
sbRmzcBzA/ZvZza2T1jK1MlqUUwndfdil4SC5vBItqu7CfyvuSs61bRlYolsNFNK2nXH6AZa91b7
QDVFhlhUPJzNVHSnygA7dtFBGxf25FVI5uNoMr2G40NvZn39PjNYgtCBUNvYQc86t0wUrp3LbajC
8tBDtOEu6Kg8fv0ILcZx+J43OeS+4cjp2yMSUJbkjJyTynP2uw+Qt0SJd7jT2q1fFdmvqhBpSKkb
JQ0TOtTxcKSjCGzlV+N0tYSVLx8eHooprZhwV34T/HWhBt/CAVZiSkTFAyEJJ964PLcf1DM4Ltiq
5qCt8nsmkzr/tQFoy+LekvlAluaChbUlUJwhqq1LkcNmT1R1fe6bZJ4sMFN5HaADMD+dJIClr9z+
I8bogPN+NoulHuzYX1BvjsdtfYQ1bkEuzYAS4Ul2XqWj+Ud3rbxi5y4hd/4UAnPnQ6/yc189t+xT
jryPuIXGFA3JwxqsZa/1Qhp3SYV+QIdz/ldHGR2Y+FzTmPdjlzGcWFpo+dE1etOfJ3sjWoWN3KKU
sp68aGpTC66n8Gu0toqa9nKuNQlnWpf8xWJ29hb3mp22cqECVqJyI2R8HBzsRMBFKP1lsFeFtzCu
SwU5e6pqJKYQqJcrzUkg/mZu/gazuLVXNZCiiBXpYsbavqT2Z9mbq3hTOj2meYQ++ihf3d1li5p6
JxYrM8DRrEH5aF0YZGu8PespinVpXZz9pzAQqy98Qp5Yyj4+tE/J1U361OV+kYx2Ot5bCsZxz7aq
7jkRsAZrywEntBNdbbWBK10hm+s552pzCnxEjxN4uxstb/Maa04raQsnQmtGOI1yUpi7kNH2kKIy
kCzl9Yas9i7J1iHf0XIJD+zu8U1JyyrZftTvJnbCBlQSb8RuGwTUUblW9LTaihnJz13abmKVvxTV
7F5bDmsVn9x5QjHv/GXobYdxKRhAvXDsepVm44+Jnfa7r7KIGQVWJT8O90qlXiDv+A3acsm1CKMg
bRrFTgLD2kGIcNjtV2ACdLYnu6PYwiKbNeTZComOjF7aajqfAK3Z7Hs4hDQZLRq82jiXmAbISgrZ
p6SYdDLP4C/LRb16B3Use3L87QgLZzauwR1MFwMJ9NVWZdt0gcNCOZWQiRzIWBLlmbrQiKyjLX/M
UxYIR4ltAQGsO7OuwZrIicSRvDSsJi4rxiNLiWtb2qWRaSyIeIE89tzqR7ArfEznRrziJ7BUPUOX
zdLyp3ijeHj8z1U6un21U2sOb56ClZV8Lg12hOGxekE5VoWahttTDH5IgT/wlcJXiuJbg684/jB+
dTlTXNLAvO92zOPkadGH3TpIctYFsrbBLZ9up8vE+hjKX1uXX7okLjEDyuMXR6EbLcVaUOCadsWa
sq+3iZpt/m1DBzI24IpI4/28hrANWB9Wh53BvvAtKz65qN0N5cgz3nRzXRKfMgRUIwsoZOtkKv3s
ojIOE6fM7ekmvouBDlPS9fxTVdSAjwjYnjKw1HKHG+yM4/hPrly8sraR1BzT6+vURgbH+hh9BEwz
ZOPJ9H7IkjWocbTRYZ8N2Zv/iqIqtgFtrY+tNLvkxh+qNPM7wOhJk9YkXLIBZSwM22NsAt657RSO
EyglfckKe0gZ3MTiccje5rZ432vcSvWym0oqLDotwsUsM6dGxD6a9CAW7a6DdsjRWTpO7RjI8BKj
0QJq04lhSCVc/wO9Ll5wVfGfaVTwUvm6Q9vb8btrd285WgCbl8xL7F0wXsLB5ySsiKvJk5JwLd6t
o+dugzYXvmSohsY4lNhahxcXoNr0cwYWt5yzPf5I1U0MPl9W2SvyIV9c2/5BNtn8kKt9ZXMGL+0I
qcoIRZxNRFo+wMFOP/8PUXxWGS4FJvyeIOLZXAO2JkiTZVIxZoCevMcg26qw9vorAr3171W2rKgt
blNc24RFVLPayua2b2eUPIwT6y7GSvX68I+RAMRbFRmo7mK6Jt0N4NaeMlq1F/o/PW79ExJ4QhJr
o3o841nI4YCqWgjTCvaqPgpzlixvs0mTwow5AKpeF1UyQUmI02R/PFIwA6ZYXzLE2P4qX2azZ5nh
IkUGolbqTmsdGWijoKoIKRAVXEl5fppii7SaFTZpNzZBnVnag++oM1eKnClwcV1m8VkVuEgjdBjd
lWbu+XmSspbBnkNlVF1UWzA1IEa9DK5rwGeiVemsT1nLWxWZt7+nugiHYDinlIVWoNthf6cCxbYQ
rWZSqxccjmvvzDPEeCE5dDC3ojk1kCoWARV8bfoAIZgzQf//R78fn+2ylNRgpbA9OZknEb82rfBJ
HOwBPYKyMGpynqE5C7JxObqK8nSU30ZjwJRuMYmdkPtuJHr79bfffP0WziCf3sxBTReDe6LbmrJn
KWI7iOQsoc7WFVbRjZLGvAy6a1D7XJOextWeWy9qMT66e80oMSBg3omXrBIPGnrnU38yLnggbs3y
pbvHsBowLgMSDKZENxEM4QoFFQ+kw9cCs1Dmdv7XMDYXB3sSX9l/WnxBJTAFMIS268PQQ+S7s8kV
OpPDIeHn4rv6lkTEoE+HvFgz/1CW91wSYaQ24bh+XuOm5UaADRWH5fy57YzWxP1CDBRhB22jmNKZ
b+xieTtdTDBZZz3DM8Kpew+YutPgqGZEgdaPvZMtUNskG0d2eOwyunpEM3aTeJ0t2vhA7kln33sM
Foy+KT6u0hp2xMXJbL2WKE93tZymUzSQAMJYJ/n1aj7GW7+cJAhLyk1U5ATA0V7n3URuILI2xpO7
h7giQlLH0TSkS7iqmvEwEEZ3NHCf94mHlH5fM2YAu16pw5zkHegCKPNdlhV0UUnlGxjj34dStLNu
qt2VFEjSBNRaV+kq+WJc7VGM/T2pNwupnEa5Wt7uqnH8rJyYjDeymk4ur7Psp7wSko5QfZsw8MUy
RWMVT1uZ1FzU3PMYeAzikQ00DYTAwYoD020+GS0m3ze4tBSBbVATiBvK0lj3VSCSNOHwgOMAGqGB
AZXFyRmRBqGcnlZ7klj4RysreNio7P1/m2ATcOy5b9vauS9GaKtKD9/IZkihsfsxEbTlwMcOjIi5
3E2gmHEdjgmeFt9jEmOxCFHmCIHrujq5pyK5CD7dTSXHhsma+JdRn7LFR+yomM3n5XiKJvUtbRBI
H8X0bbR8mQoZACoPZTb6mEQPt4sqrqexxDRcKoOqb1rbhtnQQHyK2dzjLK01XmVAP+fT4s18CugF
OEGfWCkQSo7Big3YQRK4DiVOakIQWOucwALZM0H72NiF0FBEktyDhGyiDtsPTIWREsWIGPd4VqwW
MCdmTh40FLJxAw7nIlEDdSBbHiYly/k8jfEghbQnTw9lKEIZVYUyWrbrjtKJNZ7I5PlFE58glpBx
OEBTliQ1OPJj5BlxBIqtHIyDfBUHa1jxoLDGnSmt0DGkwwisPBkt3I3sFMhJ7DIQjF2LpZvZFRQp
MSIYtm/2gjNYvt1Qn26Lg3G7nM6SbLVs5kMGhgXvY99aT3y0TGZ30fW0GGX+V3yBpt9lO/60AzJW
ebX3m6GxN9fhc2pfsbbPjTIidHhBsnGnrvAaxWFlfiqewp0Vb9u+tIW4KY/tl6fqbPc4KwE2I1Pi
5EqZWaVs/0I5HA1sIIWS/l1e23dsjT2wchLsI1hW/2PszuZ/1o53IDFOVTJ9Uyem83k2xqYR91PQ
gzOnPMKWLyFdDE/zNKJxfgdHYPOi18lJxzhLTuRAmzCa3t33Ecuh/OcrPOTp2mNV7QLJEdAwGh7f
1cE7DRxGA6jXjQlh6Eb+Ao5hF1YwjfDWU5rDJLmezpOmKAqlnHmoMqpdsxFDUaxT11qL0yGIRgCh
SdCSqD5VUBUZK2wFFD0XwNN0rrTdFMPDJcoTVHVIFEMHgp8FvGlEN52iRf9H3rU3uW0j+a/C2yrZ
F9v04E3AKZcrjpPd3OUuWze5u/2XI1EaJRpR0WM8c5/+0CClkUSQBF+QtlJlSyONNAAa/UKju3+V
un2+hPbEVtdGH94YjQbZifnDrGI3oBdGFPWUbp0hepXdU1FEtH89ZMLddh0vNxlAbQrrtih1BtUX
OOp6W5atVA8FCVzgCZVezmlOitw6Rzff2t0ynk4zx+XuOTxAoYe4ROwEHfDm6bSRWQgOxXocb+wF
5XBa5aRnha7dUj1wjhf4x8euiUxKQON0prxuHSnzwRDpRxtlrvI+pqGJFU53i1xfW7cKcBn6yvCe
Jdvb//nrl3S8ywC0StMcAdyWMA8FGaVcW9wG8EIAN3vQWosG89FMwbumvmhXTRumzePM9vcNdoJk
ffFdC2jPWmZ9pS39nRadl7fzs+BH/OoYEov+0KB9FP3+5vA1/WKln36aaufwOd0BtlYCcKLb+/lG
Pz3oXYxnyTv94zLVD/8WP8a3exSubMhv4JfxcgKPAE2we1iBozk1fwT+VDZh/cNdorf7Xfb+8vBr
oI5++vt3t7c/fHkPk1tZYIUEhGFVwyj4Wffu2oNS/JhUHLU7KJkw4KiNZ+Bqm9x6MUF/M8c2962j
Fim4JkYCckJaUiP0JCQeui7hZR+L+buQZq6uqtdP045LmFE+lL3MocwzMGiryYSccS4GMZkZxEnZ
TZz+29dWw9i4zRTGKKL/FLxXUc9IxcCWmaPoquxyUShema8XPpmb7RcVpC11bsQPr/M/dmuo/Ocy
5IwoLQTKyeGWvRmhpta8VgUSEQXcKcVLXsIbqZ2/8fWH3INBqY8hqkOQU32KdDNBySLJcx8MUtAy
1q8eDTB91gHFGrqH/s0cN59EI7eutmMYlpCj4tS6TLbwB+wZCYAsyPshP/x9Tf6Fsf8GzDI7N5e3
DubQfkhVG1F5ASPapAOXqAF5lfW3lBmVDMU0/YB8VmIxKFfDjoP59ZuadLmKCGF9sXgfLoGLof8z
WXaqvTbG6uCfrkUsq1p0OUGTXMKu2y05wU7tZC7mTVn9J04DyeR1OiD2zBIIW7ideh1sXq67s2qa
ebyxX60Ahi6jXc2EUzILZT35D0d+3Of5jJtGSPY6FSh9dwJh6OI91baLwxKciZpQfDsqvxS+f8j0
8IiQH7/76ecPoIdXq2Q5+f5+vpj86zf69VujhR/Sx+TwHvnm20keFnl/l06e35v7n7/9+h8/m8t8
sAraFMDNysfXpjzwawLr/nCXLibfjtNFuv6wTiavtab+MZ4vduu9JtfWx2kCuZrXY317gsrGtCRw
pl1fyVsRraslLuewV6brVrL9CO9bje/NP25HEt/e3pya2GJ+PKMYX58la9LtDBJK2ks08O7ZnmuK
BJIOqCbC7de5Pvbt1oswWY61XxRicTffhrvlHF7ZUeeEKXu9Rue2rq9ZXcbPtTBYVbd53gJE52G+
GR/7Q3n2uXY8sQU9FUPQl0ZODbFdDO/yURvcSd4LG9huWdKBQ9VjyDuf0ZxHxfooz6MINV+soers
AaCW481G67owhSoDexkW099msoV+WMaP85kpXIB9SxcLwyJhPNWKOwT2DDV7zh+14zXVRLiHjJlZ
dhVuqnanc/0xYg/pAByQZC0XfuSuWkgQWu/hjU6D9sltAmHVToh2KZMYch8A+tqAIL3UL5emLptW
QLgfNn9xPbL4wGYVj0ualUFrSEZa0j3jb01Je3yMBm7Irf1zWQnimAIEtH5dvYzAWfMEexcp030R
iZYkNtAOQOHVOfNKrYER5XgIK5JVuOZBRytcFo6YUp3YJrxLpuk62Zk8pnAyjxfpLHyIt+N76BEW
L/WEtKtwgH9I1/NZCXwB542j8TbdcRxRO56bvR2GZm7WUwg0j1A4BT+1Y6d9HtrowHLGOERJLQfR
QN675hqL8wblJy7e+Q4hwgmvd9Il1gKtVyMuxP5EKtmZ42p6rmiTgLGSyqPPbfWyJQQI0IUILWgk
+9czEBhoo2sEoia9ux+5n+vZbZ8BJehJ/xps3Mbch1jNKQCnqEaH0o76TZCu/u8mWU5eVrkxx5AH
fQhZrRbzrAB2RH78bZMuC9m8UCkfDTP6NnnaQnvReHyfaB5Yzqd68wtXTAEXflZ/cNUKVi0QbFgS
FOQ8UIj7WHS8TR9G5POTBUUiEApTH3NYbzb2KRDANxmW9YrtB7HWLGTQQZPxg53RmAyg2+2QY5cy
OYw9lJYpjK1HPd9rDDnw3oYnluGb2dXmw9vJDg4z8rZuall3NKyILeaPSRnHMTns0leLeF6waBTq
HK4mYG73+9wC6C7eeaQC/Sna8YCYx8tgafYSZUQgljWce2y/uBLtkl/qYkY5SHXmnqWT5/KaYag0
I6wbbaeLeLvVfrd2f+kieUwW4TK7HMonALns8GrPcqW4IiLqfgzSIyeT/dEXXNLMK0+390kVrCWB
8J0bsIWDN26C3/fxJP1qsjigrnFrChvdkpIiEpCIdD2Wc3I1OqJGJRA0kmp20Az7jjZ1h3aOoC3i
QBc2ptD/RYKsVUWCD3Px4jK2W7mdA69mefJVeV8CrsY46103xpOJgThKNvrwPv7d/Gy/mqNaVarh
1aS9RIGalIYLshlGfChzf7QHeXH/kZ1+jNdv79LZbjOiX25G/PubEf1sJHREJBoRpV9WSmgE6YIM
X0pCIiqGZNlJugPdbjqNlXGtW3WSg5Cuk9luAaCWDS2JggQp2dWStEmvaiJ7ydMq1T/nzQasfopS
Buvs4lJASHMpEAj1paw38XJylz4dPBxrqJcyrS6jIXl/CTWKpV4tML7oMr61Rcv50qt791IO4EnD
3GhVMq9NE3EqOb487yLUgnexYIOq0Y32z+vUKCWyJ/HRx6D7dbpMdxtoSfFgvykxDYb6SdeAvhcu
g1KEofF+7xUgRaEBw2nvGYcd2yI2pfPhJKZ59jidYLde2NMXKDbdTy6v66M28oJ49ySQUtVj38+q
9hAKemdHpHcR3s+o1AooElCKfZPCcvOnFQhWyqlzj6pn7RzGWj8mT3kLVnsPOgyZn5c+gRd2qXUh
yc3N/QjhKu7HmnxYSqlwN0rbl/GYLnYliddwqcycEo/c9zdD8QDqlBVtUqT6HzHPV0rtnecgXOgE
EaM62Yg82xO8G+il+3W+mIzjtb2ZLoRNKe6VEOkqObcTdalnJkJBq284lRdpO2bTM1k7pOB/1X8i
gRR++BVk559IlYmHbdZjSM3XwxhASpIVb5WLHoY6QIQQ7swc7vq2hE0qjRH8J7x3/QC5etu5nTeY
ca/U0CxahmFD6RXsid0qEl7X4NaDzJxsXQfrNCIiflhpB22crp5r/DSAThBUiAGYImtyV5YpTWsu
5lWTA3Fx2GrANQM2KT1ZDzusT+TY1rCh9D/pyWlPDGruU3ACN3YvAZtkx643TFSruOyW6yQJqnDJ
VQwEQKkiRogQp3YDDoynd0YvXgvcMl5kgvT8/slGeALOQwvHoZhjOE13y8lpKyaT/U6g8Z5sOcJZ
bUPeWLo0wZ3qARkm/tVqlWWDMJ/sSaFA28O9t6AZajJfQyejYn4RjjQxyMXdnhL5e5V/pPjrknr2
1/+4vX39TSHyC9f/oiNrrZNMQxrI6Ine6MViDjOyN3im3DEXwEVfL8IdxLhsG7opdlhggaSydw05
X27mkwR6JMFLYod9jBw7uqnyptb5wgxe1XrxEYTtw02GTwx44R/015CNStt4PUvOORy64IZ6//0L
eom7pCQiAwj4/gO/ZJnCT7ZgNsTm1KXl3MZFr/ZIEFqcJ/PH7Jwy109P4IDN83NL9ptc6B9n2bvH
bSn+JQxf/UE+hqEpExYjQp9QPKJ3efDNvEGkfqNNz4ubbEhLWjLXVpEPLG3U3ndGmIu5zs7YTjv6
6/n/5SDpWWtv60Wg1Bx06gF8d/Ldv2VN5roI1xGW3cuPB/A663Dns9S8XtOYzzuf0wKfn5ktfMpw
ZVwO/J19AblyKIogdZzLzo5bjRXUxwd7ESnRByW34pTz8bUpiLPH3J3LXuSu3WoRP9shNyMGqOED
i6RVQqAVJYk6S+QL5x8hzG4ytBLQXNZYMQAiU96/bbEZEwGBaXZdMnZ8+C+aBzI1//xYBZL5m306
HdV6EVvgPNFZaAJ7Gt/IPKStRJG39ZPi+hU9tVTE0/CZygPHcyjn3+bzAzrSAD7/MokB+D2232BQ
KQPcxt1vSWZa3GV5VoxHPQ2f77L0uHpWz+PM0/D56gnn/lQcr18+9zR8vnzs1h/B0dyexeCqQzb6
mC2pN9ILK3b1aRRUeBo/p33EaWeH1lTNZJiLT/f2DLAIigoE80bpqEhpcZb+GXkaPguSQt4m6dmO
lXN60a5xvdU15VEeHM0zM9ggKJm1Rjt+GR4ql25vimBmesmCReL6ImikrbzNH/S5cA+JZVoMVvQb
ElFWCXhty49UP0IwWyfJknB9mEDvV8tZAfyHBxQP4MVVZtrCuVHJwQyZ9fgoTZj40lJ9QpbCbcII
IUugpQDIHTCFqOjzyD9JpvFusbUbJKpJJ+SwGtmmiLUl4kI5hBcwqmCTMrBhLBR2a/p5/ucdLN2e
oDdaMeAzs2c7N6NT/QO85HcmWZ4WQMOI5gQpUbqA3ViudwmG3vHDk584kJ+KDkx2muQA7Gbv9kpN
Rw9Ffew0cdjp6oB1g+VabwoUA5QL1omZxvfJ+HeTfB7CBdhqay8bkdqgKD9UHUO/HDtBOXfJVLCu
9ijgXbLu4ohUCiy0FBHR+VACMgpXi8sMAMI2GKAHE9xtN00bN+sOMuWGe11DPIaYGakg5SynlpAu
wYMaJjliDagTKLm3ksItea+CXvPlarfNeiOlu63p5hDOxoccOZNmUhKZx5hDK3rUaXxT+tB4ZBRR
rdZpE9XiIoUZqVfxpuTdEs3+Uo/xl79caCq5elCitfRssqR9qMGZxNvYvuHgFQrecYi8kaMZChqT
JeH9OpnaM8n1eJJ0V3iNR8YAv+2UEOi81JImg9Qt66/ZMJ9+vZ9v3up/8dttselWNipqu7iz7PPN
Nl0ZMS6pTlUMkF9bbOKQ7Umdumm46+h90eN//9fPJZpSBESKwWlgBxHSrotosdm/bUxHmPBFjvJ3
LGCThEZgXtEgjrYtomfCm5ZrE3mqnbKP+ZvGXg+3scql7GW/kScAlKG8EdxO7+js5DwwuW3UFoFU
1CsZiO10d+YHZZ/zN4+c8aKIeSWF5eZSnYG3ZB/zN429CEbIKyUst5jRWcpz9jF/09hTgvoVD8uF
piSoW4DNEuU0pR2HoLgtsZ+KIBJF/cQ9rn8fByGEeN0Dy82mOptC9jF/0ziQgvllx8imrXGRLSKP
8zjoKHVphwlKbq7BYyJSeaaFzYqTsxzHeGgzHlvtOFyFeFTacYklj5iFGtTnRHJqYEylX2rYrPmZ
QxEPbc5jqz2H3oW0UeSr/RVyj3eSRWvdD2pn4UYbt4ogd9kibvP8RJFXuM+J7CUHCc9ncpvncVZY
Gg/tesRW3wOoISO/1LA4HwpZqBH5nMiBGli0upwbVC2cO/Ei4JK3Uf81I6+0uqvt0yO0Z0KF6B7L
mS/j9XP4FEL4Hi775kt7FbiMeMCqi1aPhjqDxO1xX5yogxlcSCLa5/U64eL9XaGrt34XUinEMFxQ
mUYkCAko7uFGb53+rnndVKVDJ/CSqy1oSunUn9BdOWQDHwa1pC3JQFaDO/rjucq9wNBPP3LKEG7B
B/beOdRA8nTdjgwEJW+DmIfv10kpKAxR1CTMXcOW2NO1RCAiQl34FDfaiEpbgMEeqOZjXoUH7MP5
Far6ZICHt+h1xlwwrnrnmk08Tez5UJiYa6neiGId9NMfefHqzcu9K/z2bfbp98V8aAzoAqw5HUq1
/EqzjrbYRs3s7XZe8Vys1w9BgNtsQw9azek6v/nuU/vu84A6hZ5xowrdDMDb6r8xaLdX3dqwE8NR
R4Yb0c+W2tZI1viWzaamRwzz+S1T06R2U7wbpjSQnA2y6cyOG8IhDXKwHWBHMLdZh9T5w+ylK11u
UA7LzQzKNE2z7tjFRguA1iCbk0f/xfP0M32+jFxKLNz+FHO6VW2+aVbVoJjpYN4uIWUB9Q3hbxto
9T7Te2PJjcJESsU53E4ijFD/C1uPD5avdJXakXTDAB5M6yvEWE9aXyvA9XpuB7JUmEJmIuvZF9lD
mK/HWXNiu6g566yiqsIUehQ7QSM05A+ToXWC1FqSvi0NcnJ/HLJOVgtbqYqQWldEAw8EvchCAwPm
ZRwU+SEcVZ52iAkx8EAMw7GBCeRnQZxjLwuiDHtiOT7QeasU3bkG0Fk/cVqD6EwA8LQH999py4ki
gw8kAhUQSj0JJVYezIO9MZa2T5T1uXH0HPA+42vMlfRjHLgvpc0x88QfSvlR2pEnK8RV5GdBg0tw
xnKURRdQ2kY103H2HNHsWeTPEclfq/w1yp9Z/r0k/z3On/O/I/jp9/efJzJ/nmbPPH/N6fEzEQSd
fo6o03nu328+30ISeiA1iZkHzcnskUdinIIrMNavR9mGZNtweNRbsUN8kj1i8yjNY2Qe2ctnEmbe
IeZRmXeyn7n5OQ5HOzlJ9JejGH7Np2iq38E4Hu1ERMb6kdM7/T6e3r2udBQwAdhmhT05hzRCHjwF
sATSAxtyO44QNbUYF47Rl8321T8/v2pBF5GH7Q03u/U6nUExziqel4P8+DsqIg9uIeVIXR/z2vai
FFV790VSzZBfvuAfaqC1JXQOQD6Yyd4EV/Vydhrf75bQK8HERhNTTA81csnTKhlvk8nPyXJmrzDS
A8Pprc+D9H4u23W83EyTtS1Qy/S/HhzB8SI1GISAAmF1CJiqa9Xy53EEfTiAPBCRYHwYaYrH2128
CMfpw0NsR2KKtIbslZWP+CssRT7AigdSoKtQmQUananImzdvbtA7dPPm3Zub0NqLuXDXGXBJictp
lzTf0nG8WBjga3tpD9USzJuPfK4lDv0ossYRBpvReq/LoY0P6zzgUU36cjpfzrfQASFdnSnCPJMZ
Ce51QIIjvysUyu943Kmgv0eCIidL1t+Ayinu3d94EVNex5OeJUKI6jtM4kl3nyrD3pPHsp4q3LSu
IX4ZCAnPOpX6lRDCsWcVQP3qVMnEQA4AOCohwtaeFioK3LJPe1wo9ysaijPPnMrEdSi7440/QIu8
O9F6BD19fI1f5cgh+HUDNagfKK7RhVhC1YlQPTiY6e8l0JuYQWtIQQaVHmLvCCMC5hRsJWc55qXs
NUsAqglKRmC9kHz0abxI4nUBQMHcLTI57NiWMQX1OyZgznKp+DVJFKmSqDoBAjk7kSFSJ0PQRBY3
tA59sZmB/KXRQMI1jZfj56rgHRUUqhWaj95Xvycleh4bCiTMObk8v1tGuPZu1RfHF3fovH+5CaI5
RDn0ooRQEepuCtbpZhOmBscuPIEms8PBYqgEpMMw8B5MFKJY0Ce5BPaJQf48uo4jUNmUX7DHCMrR
9fTT3QvWWJdjUkGnaWZgjKlhdwW66lXVCFKRpQE12JbyOOYxV0LXf61dT3HzSoObVAjoxBldFXsU
aGflAjzC1UJPA4EIQcPs8x7Ct6a8lhFWm7Pgi7xlUz5zyqEG4nVpWvYIkYrZ6Tff/7Z5vccfK73j
VVoEBeeDbg10QAVWInascq0VOepf/JbpmV2wtpslArF9lV9pC+ohxjcyT7RBEGqQ4R3GxhTjS41N
uFDXJIunPHoMwQnG782bNyBGBTt4qFOCr394twfpvLkB/96AulSKnxKB4IwMwwCmI3m4PzJb7oal
dm6ji+0/ahOQabGh1K50lDlRXIjuKroY3SW92NCK4GuUeNqHxGe40hmydL3cGwAnjojq9xiU8Ry0
kF6XgOxSJCPAY/QieXYvF7pF11od2oYFX0IZRuxKYhmAyIdktZvdx/C2Yetlj/aicT5lP3/8338H
yLozvjifGJghcdkNUeIS+6EieZXbgZGglxYQ7EVELXuC0DXaiLLTWdEOEFJAStEnLInJ9bEaBYSL
C3MaOUfmdVIATXYw3d0tktC0U7CHBbBjfJe6G+LC0c8KN8OjABIEGii+wdn9nFh2lm9TKZ7FIxxc
IwKXhcypm0t7rjAAdiU3iYyygCh5TftyMt1GQaLaHfk0IiJ+WI3o53G6etZPtSEjqgLtuuJo0A3S
ElQuspgb+I8r2qCT6Vo2qIPE1ImL0CpMSDHsblS1kTMaFF/XdpRDdtZHVVEvUVWtRSjq36l1C2oC
3tIgdt0tpomJ051Oe35cJws9/CO0HrlP7NcpkNNMBzrXOFIBEo4vxACCsksNrVd/Sd5TaoCV14X0
iKmWu9huq5o+hUMy2oHcF9lswi+z2Zhfld9u04fHVu+ttnkj+uXI3o3od/25IDjgFDBpLmXtkBMG
Ch0gP0eRi8n85dSNuTYc0rxv4ockhPax2bt6yutn+y2OaHpS65fvcDe+O+qjtki/GtRHyMXJ+6lZ
EHEZcWz+6DLmMt3Op8/6zL+0F9vpYzBzStJuFhgZrxMDKBkvoIj2wQ4QLQBSk9Br0rGlTGk7XuRn
64f4+S55OwE89XW627w1X3q7MUlTtYcIxIMIE6dubxWqTTPWQ7KND90UDaKB9WaGQ3dX3iNDH49r
P8eLQErpR5XYe5syOKf1oj+qQSMY5hTbNAhRlxwdiauUsFKxOm03WSdBkgVSSTpsaGQHK36YL7Xv
MCkpr4EmxpRF/WpS/e50MZ/db8NZYmVuZQLb6po22EarviPMn0pu4A/3+3eL+L5g6gw6F5MeOYWU
pClfWyjNNuv+bwVoy13jQjlr0F/+/utPv/znbYPs3SMBsxw/GXSbVh5Zxp7JJLn2gQe4PndYP0jM
1bIq7ZlV6zg0Vz+2BNuIODXLYG35xH42ghZg1QlXzOv+DHB59drhMlFg5tQXoQX1t/frJAm384dk
85Ipr3mvthsRVVHgdohm7h7BwcXXVFql/0/esza3bST5V/BFTp3rIM37kSrVlmPLl911NqnYqbu6
LymIHEpwSIILgJKVX3/TACXxMSAHxHP3KjFFkSK7p7unp7unH8vM/PbrJxdwyHg+OcWjL9HwJ+F+
xRG059007/HproICzhAljUl+evjNnhxXfj6aTKCB1HMRwMZun1vHaa8AsnD9KQ806wP919k98sqB
hFSko82URvEcwh9QXmmWudtAglodr4507ZGBEBcdhFYdYGEXn2bnChSc0/m3/LD0fSx73cnh7cTb
6nKzTUY9ilpqz2EXzQUWbW6oQ/IXEhswr8KnFnYMrRrbbuV1lAJA65UcwvsoKjOta0vD1VUYnrQW
rFBohkU/7HJ31oWWpicGEg/FLubuc3Z1Zf+1tS0JTIhUrCXLKIMWHVOzjK1F8WwVFU3JQuLu0Shg
2FFP/He2tBVUjXa78hr6+ts1fvsv8l/LRwuxDjnX2Ku2owUpCn8jiCh3eJ0ElLA6onRWq1ypRimt
W4Q5sCUuDLlQ6CJSbakt2Lhc9KQ4qpLweAv+wQm96e68A93GBa0P+8RcwPLH7Xo2M2m4qHClJdUa
artHKYP17Jurt6CI2jtLYda34q0bn1UBDUaGPrZ2N3sURSWp4Q+2n6+2n7fY8g9CfcJvPJcPwR/u
wmgZLyJ3ErSC6x2vvBd+5oZ37nUuGNiowzB6jyIbTj/AuEi7qmX2/Te7+f54CSg+Pj5ePtLLJL27
wlrrq+LdTchwIwKTOJ3Mjf18eo0Rsj+vNm+XYOwLUW7F4nadm39EC3NdfMX396mZ2bceorklocXh
h6/RQ/QsFu9eS4HQrbmLl9cos0/NcnptuQRPZ/F8fj1LjfnTvEK8ip69E7seqxrK7IwPydJc4zfT
9WJ1MzegUn54+mzmZmLpcb1Bcl8hEg5F5V736txPDI/v/eI2+cRFI+9QJFz7f1JQ0cCT51Dz/3yK
l38vWHf9XVGzlZtv+RV84j+f2zN/V37kZYeXvxTf5GhdQ7lHz0Ru/9879Nbz3KqgdNu8enktfIzi
PLw1syQ14W2yXk6j9Mlx+WKtjSLTFlGMcDuM3jTfTlZmWRxmyTovIrKZfTafhlYewyjLLKEqhhFj
z5lhx9XR1OTR5B6O0KJRjttP00oERKrGwPZErkg9cOR7qkDTky0aWoKkvCo5atHQeQcAs6O5aEdy
7NPQ6jTIm7x9WlkhCW/jO+52SbT1bnGLjCvXak+tyqUK69OrE3maXamnI5SpGA5zyy74bG8uyxuo
ZMlMfg0f3jkYDixx63oSKVrYhsnkUwKDbz9W9uJnFHnGSs4SoXkCmZClSeYSYM4VPxkp4XudEE/e
KVYjEZYusAsVJAkrk6lalOsdBhR1yO4JtyLQGjdOEXzJPV1Fd2ZzaQsvO1NRS0NQw8qth+3Vy+8s
Eci+xll1Jy/VhpCvi0jBNFlEZdGyu2UF2Dd8JArkhSgVCkTNjiiQ7D6e5b/bbzipRQRB9Qh8otXo
ChJnYeGO5q7WQsJMeI1P9pSjVZrkm0EU1qoqGhxWdL4ubFfZWJTKa+tw82thN7kjzNoKE0WqRa21
L02ONGIuGVHdUtdtpxFVpCC2pxbLCe1l7jW0q/3fi4/v03iynxoGo5H9Bpp0uXGr6bTr3ZWtFstB
89eknXEE9peV/fFX8FOfkjWk2hjwNvP7GFzQhckyq+nBv11O7eMysQ9/s17s52d3qYT7H8VHzLL8
AY92xfbHL+8+f775cAkgV44QOGcBx53vaOd9p2a6CFAMInOqLWesVZmjp2SO/rvIHMVeAzcayBxz
jzNSxRzKIWROYo1GKHPslMyxfxOZEwRTOQTnBfdriV5pTUDimbV+P29+/yWZx5OnnfqwpcnWk3tX
IRrHgfRatqhpNrmDS8UAR9oYXDWVLz6gC/3x4gOGa0H7/Ieb4pEUj3zr9XfFIzpIwg4E8stLGw5D
pv3qFQfEUIFD31ioiomc8ziz0m39prtJRXWjLkot2qZHqd4yh5tjoQUEC6+BQj4rzKO0ovSHwKxR
qpoz23ybmBUodqcfTiiGXEjWIg3/NGkSzsshqoe5dGHgd8d+alF5GsFJFS1MDqxyiYeS0GOI1ALW
wAWWEFCRzSk5i+K5mZbVf073k4H7uUvDCC72ZSO2HS8/nCd38dJRf0jY6fxL/j3bQ8Ie7NbweNov
no4X0PLUNYmJIvtles9KGmzRmHolDreIBHEgwfnuWXUbTZd2OwyBCuLD00MJ0i8O1IGDHh4H7Heb
2CISzFkUTYcQThcqRNDB6UH92pucOBiKawSI8oeTaDkx8+KYuE3c17kEQQxYt3mybyGQJxsc3Plc
MhDMy6iQHiteLwuQxUrDSRplFcPZkYAcpsZAty6Tdt6w3vQGFeea7RmHMceNwcNAr5duEy+mqGvB
QuqAeBlTss3BcdZ5lG2s8t18/usmTenH6lUSTrmngerLVkw4dkuQDDTWbaxtd2HOdWEYSkaaUxIk
5KVusKJPLaFcF1cWdYD9ePPug0e50+/WAr9Ppq8VT0ela/PX8MdvIG5wTRHesfYAM0y9nFxvVHfh
Hki0wHiUhCGHVWCY90kXr1LL/ulCd+hCgS5KtagfjpIFbBs9TnmRO3SRhbyIHuVFo+baLF7Okp+X
v6TJnQWb3TxUpMoXh72fYXcK3lco2byv1NNas4BI3gKg3KTRpOzwl1ckBGNJmWcafl1oh0c5URoj
KgLFsFc6lzoKEewiC8laaGVkC0Yru4N20HPPa2j9HsCvWQgR/fBVHuHX+yhdmqKRwMEloiQkYF71
FHUgpWYFFvcBPKKt+cC8hrsqX3NsE953Re+hdQnyStY8xbe7ZJ1XxM+EZ6af8tSsJbCXFwpNV7hM
rha0ezGWdWbSzoEXjJRgCaLugcfZuzVcWOXxBNqdHKKh9zTBMFhgticD5bf0iMhGJOResutQeGAY
Qdl0U2wOe+tNP5rU+tLuWg0iCSr6fLQEzu3RSVYTglNtHQWhEK2nGT8kf81rroJj2i2dCMG4YzpB
zlPHdGKCi9bo5BqKwhktilY75YXQ53C7RrUiXD5WTD+TAVe44+VJLruFoAU+Qwz2co6h6U/q05dU
BEKIbvcO3MuSRivavY7aWZtbEqywC046VglSda51FPJKxd4C8VtdCPZzHUOQWnQLQaqaED7cfLr5
clP3LFakcyCMUdk5EIFJPQ3tjD6cIhbqGIQQCHcNQtd0sv777x9//vmHd7/WZbrXRJemYBTifaxG
Y68bNf0C5vPNu1/f/1jXpPQKLDYDYm2J7oFQvwoJfdSeeD0qnytKK28fFYxPQqQxyK1UxlfgR7Km
kA6EX5rhiaWax3m8NGHRk/E5szF2hkkQktbc1S0u9WQWGoz35FjKvmFSrlVz0sJgr+db84PegNZQ
ZPXE5kQMrUiErgCHIbqBm7MuWZaX06YqXm0PqoB6Vdn5AVptAuRlrPWlv0FFHhxUWbLj3VV0RW75
VvA/NWYZxjO7H2ZgF6dh/Ny21DnmQgWan7EPs/xpbrJ7Y/f3JMv2vxWTgIkztMrrMuzXuNLMim8n
VgC93G8/Jr103bHKqipJkSjGrcT7DASx2O1S6uFuOy8lTf4A/lSuTUGj7aZQpmYePb0vqrWhtNWZ
qyeRYo0BFdL2+Z/rKDWX9p19qjF2kALpB6QNuRY+BSp1IC+TF+BOkDjgx9t/nrvMGahiyNh3lQcg
u1DWZKuViUL30IsiivMivxxywK4vL6u1NVy0XH7NkuUb+MzHJL3GbxbWEf/ytDLXRbeP1Tw6DNnD
MSwFZ7QffI/u8ErMq7Y/thtGaj0Iqb8dwfebo1E9IIu8AtL7MnlAQiuFSXrkyOQaQol1xL5em+ay
VZLL1OEQf0O44Y6DNsBbxfd/eR2alF3n6docDtJWkrVA10IW6hkIAkNWvofbZpFs1kjX2iKNoZRL
NMvp5qq5HPdW6YpgDZUUFHUEtxBjN1xrXnrNjPGmarycwb065GAmK+fhS7hPCnKLADHhPQNEPnHr
FgFqwftdoFa4X4DSyzBsD6DwcdBbhCdJzyKKfcJGLQJUsmct41U42uYeVLznBYq+tRrpV2Sk1D0v
kPZLUaVxRyd+VQkAFkIFRHdlaBQ9zzd/klUki+jAq/F6q7q159OY9ns4St6v5lEM9QuvZ2NDsn7V
gOY9G1Oo5wVK2e8GVKRfBcNlz8Ziz7abPRh71tgI9Wy79bs+wXumZwsed3nib+XPO+9UlfSshNPe
HSofy3BR0S2yCO6XKbBQPQBXrdfkTfEqdNZGB5V58INq2sbyIdkKuhV73ZlQQQLeClxolFy0EQiT
B5NWGnayGMDUXA8dzwMQSHcMAYuO10BlC+bEZhai+RZN8nAR5UUfZKcgMMsWdnTUrvc+dwIN48qW
xBTBBQk93pSYkFOFJc+vWIwcJSXYHkbQha8lGEnmqlvBNKA+iW37gHyj7cU4xKKXT1naVlL6+u0+
QRWx8uPldreLyAVBb2GsB0EujBhi/WOEtIs6ivZPHPjsBX13QT7a/1/mKdpX1OGBUNDLKy2rfQ7W
xhN5RXX7xbOUwmJEnq4QRyzEEOJYXwyUHFZWHx8fyaUHppINIQeeZNRqAG7X2kUDsHlWd6eT4USx
Hi31gFvGa1P7dJDoBkMvAur+z0cfvLxmqvR5bl/Qj076STUyPIkTTybHRk9SgSrViowNVeokqU+J
Ub94cjemGvGxbSb7w20Jo7HR9D34Ok4VJfvHFdB4wfXTz+/fffrx589fjhhDnA2Lo98R2b+xEbp8
Rd0/Hm9doiUHOJQv0IGUcykg0t7/Affd2+9c7MEDGPaEvLX/nD7QAMJSoYqE6H+Xv91Rm04p5npg
rLwM4AE05Nuzgi+UD4Ho+3NwJYNEXGrhCcpNi/6NYqjkOoekXtMWurSMzLdosZqby6XJXcpZ4kFI
6bJ5SP9cdXKM89G5hrtfb194AWCf177OKSMw/2KrdC4C/39gFUHN9+gGcFnzGpZDtDevQR/c4l7Y
2eDG+nscyzqXcvUqU0oq7721g61r/ADcUxNNuyZLFVUYJwHleoRUoX71iGdTpRgKcURacMCI7xXu
iWLmlglDW3DOThGmWl5gfDEeI10kwmfkgJ1XSHg08eW1NO8SeRQTQl4MRpJgRftB/2jd5gHKlZWb
QutzcuDaLn88QLiiABIIrFreNxk0uvc6fKC5Gu7QG22wd5iGbiaka9pUahTMrXHgYxfQQUgjvTpA
nECumjQnjiHG7D9ZC36/Sld5RfYbUadacoRfk+fhiOOlIL2I83gf5wZMeDCzLUbOjEdOZFEze+x0
pg1rgTlu5/td64pXYTSdQgV0kfvmTKfFNNBelY/1ybrlzLgTSklp/HQBG95313lz6Osgu1nxK8FN
thk+v74th7I7kZHS4qLOwGW7A+X6tpwQAxPv7+OpCe+j5XQOOx8yqbOiUss9w5txaQ9z2Qj8/mCc
Fyy2oEMDqWc0nc4s9DVWqFU8pklliRpBMhBeRn8zCXDPaYf5id2osdQskofIrcpgPjz1Coqw2nCP
yzgWVAfMq2DtBOgHk6ZWssA8za15+tyny657YuIHMy2b/IezpOhiex/P8q9xhQ6QCgoFG6O0OzNo
q1H9X/Jn+/mCfAQMLugPk/sozUx+QT/89uVjqN5s/vz6QtELweGRq+K53ENXQLPt5qwrDv/beXL7
jGhYULHSWCKMSWjo3xXgvCjhPEjFxkRh6DBUC2w9O2QvgLd/JlMBTQ/pcAhgDHlcalgEMB4YAeQV
sOoQAYLlwCzQAyPglwzXIQIUDUgBDnpA4IFlQA68C7g8HuTvUAlrxPoAvX2B8/3V1Qu1v3dc3RZ4
cdXZoVh1GFtVQIv+lcOditw6a3zI3QAei0DDIsApHhoBOSwCkuiBZYAMLAMMqYFlgPABT0UOLCDD
UoBgNrAMWMtoiFPRKmHC+fhORQ5lq6KdU3HnQJwmk/WiagAi5jD8twVRKBt/bwN2zQpkAVdS9gWO
Qk6brOkIexHVGf3Xwm9OYDuk5IGgfq2Y+em1FZHW22S9nEbpk7s9PbMbx6usmrewOujfjvySz/mJ
+FJYDOc7EqRB0A+DtwHqdRRrCdQxJBAfzoFTe2cRjOfDfcAvOwcfthrqCoGpmUXreX6IgfCqxGph
9eSQ+mKvYzIsnvQBf7N2RXkv8Jfm8Qj9VWsbrSKArfxaznS0xfRed7m+t5jea6zZ+w5TaLgdpjUZ
dIcd1DN0hUD1/vLqi3IKeDR9Kq5nJvfR8s6E0fLI3ByOIY1SncH0Rzq58hyNbIUKCb95JN5QKsci
c2FVCFYtSnFxoZ/cPRyMRMaB9EoLrsewivnj2LojbUjHZnbiVnf4l1zA33795A6IaRjoglok6SY9
ZV10ASs2w5XFC2+9fjAiojSB9nq7AWv6RWQzpFjuXWl2hAg5jYjXdaW3UGxl0xL3TaXSVvLPgLmt
FDczLkEXrtP5s9/7kshf+L3HlOpq/nS5myy5acUnVLeIEXLl6KDqY6+IMzhwNIeMaEwD5jOUdgt2
6Wj1wQrsNZG3EWryyjUdgHbIDGdGDYbrAjpaPiivq9W2+YC46ogPRffEabK+nbsnmBNt2SHO2JK1
uXHkA+dwSkrZLdIOPkmfKelns8nNHy4806NE/weI9rLn2uWBRl1tlTyNV4t4WZEICP1iztml28vN
TB7mZrEKZ/G89G3gSVELsYtheBzD38H+XWeOiaiiRcU6SabmmiL55iyZOUrh/Ua9EgwDr8bHwtuV
PIWAXd9iYb2960piIjFudhOkaGv7r3du83Fx2+/qckBuC6/55jU3N+2B3RS0NhbjYrfgeOS6XFDR
9ubujdtsZNzmlI+d217pzPU2N+mB3YVZ7HVd2uvJzcauy1HrJ3df3BZkZNzmnI58c2tSz3H4cPPp
5svNWEw1z8ZsPXKcnaNw+lXnqn11jnvgNy7CwnJk7GZjZ7dipG113he3tdfoXdkft6mX3SuH5Dav
h6GfOu+L4ZiQkXFcajZyjksvc02OMq6mvSqVemS3wHLk7NZeo57kOONqamTqXKixq/OaJ+CY4moY
cToufis8cmVOkJdtLscYWMPIa2xyn9v7HPnrk91S17QuxhRZwwiTsR3eY7fOBW/98O6L3ZqPzDIX
57gKvSpzzGQHvlhvtrkYmW1OmRz76a3bt9Z6c70RHl2wZey+mGzqPwzIbjw2a42zsZ/ehKl/4dia
Pie0sYizydU8sjRbJNN4FptpuIrSrGKqMsc6YAI3YeMOrLLEJsrN9U/JshzCQbB9+EfyAE8RUvYH
whf0HaL2gVL763/99GW/ZoXBUFHRJVY0/ClKwxoICU07wOeLlZJp9NSEUoQq2S3/QotTHVJJRXsS
KC19uUc7Rin8aG5r0YixLhGy8l0TITE235AqNXbjkZwhVHVbmro7mjIe+F1bO08He2QBApuFVjSt
hbOh0fJ8WqY6s9Q5CKRsujhINI8mpuRp2bjTeQJCc1h2vDmxC87W6qJ4vk6did4S+oWcs9N9Uswr
SsRkQGRjyYCSuvBbNre8eppDl1Fj8svDFvkYep569dKWAxSkYXwmGbaHDRwlSHbAcI09Z1ceJX/Z
U3kVTdyRHYVo45VF9iDI1kVrHGfDbBWoc3ylAsoiyv4I40UEBdAWwip3t/TQAT0n/re3kBLO5N5M
/sigKe4zyMOKTaoEFpDvw7oVWEedifC6x1A+tAzNt5UFbypOBh5wr46/6oTCMcs8jaAHTLScmHl1
ETtGVoFSr/Ip5/JMHllVPbP0tRJvQT6F4KvYLfbPdZI7lard155FTOqo4GykP1wmeTx7CqeJu1hH
s4Dqs5cXZ1nRO3pLazi7Elk9is8AEk3N3Fij4dbk92ky+eNykmX7pfJYNRG/9TyPV4D7+nYR51Uj
svzK49VeHG2PIUXJrZncJ0XbhG22OAYlwPgR5hURcS1rmYS7JrSLKTBFw+sCXNU0013eJTp7Jctw
nc/U8xwMsG9d1epWEhRhrSsGt0oQuhgocd6KktuvYOqYxa2ZTovN83AXWjmPnqD3efynCZfmzgpH
eVQWlfIHw5FAJKlqYbUzk5rUvUjCYJZICzBe5L9ouvUM0zlXhmmmVb8gubWQdQsgF8DQNLyNICCV
ZY9JWjG1gGFrwbIWF+mEfTVJ1nbpG+M923FJC9/x8O4XSz4AVo5ePXtx/1mSDIQJ9SsR7R4R64io
cSAiyEgowggbByJyTxEPJ66ScTkOmhA9EkRQqydYE3EdRJMcj0LiAPvdqZ9CK1mZZWiWk2RacQ9T
du5s9dSDUS3WMAyV41i3bjBVWqKWwT3Gy2nymIWYcOyAqgImdSuCX4ZtnwnqbJZErUtS201s1OmV
aeoV+dEtgLMM5EL4mNhYezLQQOg5y+z7DvcBsg0QwszLEmxjgRQHXPs1smkDnHVYOCJeHU51Ldl0
xtZAMr1aumnfHtdbrnN2bNcTTGh7i5ylySJcJav1yq3TFAmI15j1kzJajsvddPK2Xp9J08Ttlinr
TVPUxhpfAozLWbyMc+gmmazcRay6Z3hed3X/19yz7TZuJPt+vkIvk4cDcIZ97w5g5GSTWewCs0mQ
C7BPWdASbTOhSS1JeTz5+tPVlD2yVKRKVIuexSaZcSasS1fXresSEV7KLyKsWMAJQ+9nPj4uSKm3
iAC5mvcAjVPzwhN2VniWp7PCY9boWQE6Na+EGtJAk5gCOvOVl2LeA9TCzSuhqZHzSqicG15ExyIs
qILUMu6umQUtmeKG3gGQKca9h+RDPti+ZtJ4tOT36+5TkjVN9ul6c3ODZ6+50N4ZdDGVyl95Uydl
Xt12d0ilQEIcQe3IAT727C/9V2UcVbJl5pgb71IBI6+jU3W4P5uZhTMsNiCOQLIL2mCwkwAJFJCP
KAlegkhPgSQHIFkZH9KhkCu+sJTNbadB4ggkzYF9IjYogYOyzsWGpJCDMunCUfbOkSGFQDip6mS7
kxh95VX+zKJIR68x/mh9eArv159Hyw/EqelCyJjUBiMD4A9e1GiL4KkUtut8WWRlYGq27PJmYB82
JHYpFoZM4HYRNrYwbMEUiwmqqrska5dFkfSJYQQmlPal559fm8OKCLDWybC51t4ACMoyuh1gp2SM
AqlYFs6Cc6IiUbnKuix5KPKPw3uemHJqwac8BexXhVVdU1Qwvr+BOoGkLeuPb9cHfLUeWso04/JV
eMv5FN6eXiXx9hErToUc6ysJlXLSRhYq9N74LwjNXoVEaUQah0QwKEPld5ZLrxkiAdpUq9zHXV6A
QgHWpkTLe5zjtAzrBKYivIRsi7NsRnCCtPj4KEMbbyThHo6udkwtxGGzMVN4v1FaE4O8Lryt9jb5
ISs3+UA9KiPKJzsKbwUbepp60yZPngBaAc+0d+rOh7hfJPUEE2Nqb7hcDCq3v9xW8/XLSj/eFd65
g3LwpKiSZ2Yf7inisKL0JCyOyVIg/TFUv/coIfS7hdaM0gsaGS6DdzvD0lcBrA0lII8PWEE7xPmC
VtxDUe+LfqdVXkG3aP7gdVU7vv/Gq3/4m5wJj4EdClAnaMYad3aA//jTr//88YdfTswo9QaBVHK5
T+iLPq/wbuk/loSNUig5UNyZslhwQsdV32LVQkEwBhFW5xg3wxGOrCORC27lWUTvdZlBlL8uvwm/
/u3nD1efeYJvVzMLlWojiVJ0ek6yjzIWStrXpVJq0hh17x+QpQsXqhQKKU4HdKpQ4abfQcqBwOl0
D/pd0XZ182m3OQTsbmi7QV8fhFfCXge6szh6vujC/qtYh3pbX2fLP9FDBR+OMvcxDlsl5aGARtOo
/oPlmyIa+5p8qJ9VqJTWDUESlSNSYYylnRUJGHgjMPTi5arP/p2FZjuGoXRZAzWD12VW/ZlAgaR3
d4eMvU7NQrj0Impl3dS3DZQVDSsWoVNBW428A7/393C2DpC+LaDEWhe9pfRxqY7NcbSfSygPT03M
S+1I6sPtQNqNGQnd84q0MJAmqAhHB5nJRUpsGNiHvZt563syQyFa369bV0MaQHpVo8x5l7Ir7j2s
pz7wYT/Sg+KUtjiUtM5r7Lc9fW9XtTfxVd29zR+9Gn97W9wc7OAVC6NlrBPcpQ9lIoepGXouyqxW
0eQDHQ3gwxepVESZGPPKvPqSUegBEU/qTVcWDz6+uF0G0fe/9zo1a++GqtuZgujGXNJbOio/fauq
sSwiy8d8Jukldqq09qrE+xT39UOeFP38jMBhfDOw6QdZTIT2mbOnwhVWLBR3F4GLmyZ49pavQ2c6
QXLafLlpim7XBb6FFlqu0keVvl1Xt4d+lZ16juvcA6i6pC1uK0gU3tTNfXJT5OWq7wpGEzkgpudd
iU2bN141VNjIBebvwMIqN8Fz2m8Ox4gLjz87FB5mzBSIjFXmPDPVuxLBsUiy1apNtpFNUnT5Pb6r
24DbOPVmrOuyWH6C57zcY+BFMytLH/p2H4slfozO28dUXZrGbxhCJbf67Pu4vYFbshkaAmi9MC42
KPzsWLqwexXM/iLX1YoS9IJm8XZwL+gdj3mNkPZyh4eHNJY2J2hAPiE5HCZCJNebrqsrvAXLQZr2
woQdCCWQJjmPoHJOmUfBoOLF2snyufUouhreejfbUAZ/MmReZyt79k0YgomWE2vrRnOknPrO0cfe
LdT27kfenqvfhAev/TduYa3n7cJxSXrsEWMMDqFamC2DFfUwoxaGJLKCxtu2y9ccC+gNNZ4/AZDA
KGKW2G58CiSJQUpD1cP5zBvKbaVuoUjFHGMCMNA/ouLxx/9oU2LOkJT+0BUpY4uDuoHQoxmom6LN
4DlKRA9jhAjm/CmTMt8DRIRRTyO1fBwAaHMxANxJ4iqEUQBhclXQJlX+sRza9O70QpqptLTLplh3
icLvA5hXKcXZZ74D5SWzFPjPIe/IzyMglPv1qYP80UdEXahjqJvVgDAzb031GSL2POMuwO2ReJnC
fmqH5VaMmjURx6wNGDTjxcMS4R9/wD4JBc5h1ekUZb2fUr/3JjtZ3m2qP9vkuUa4yx87fJgaW8gI
JxvekV4cL0Ji8JWsIRVzySPSi9dwS+JkYfTzO633j13eVFk5LKpu4Siz9Y/AIXONp6RRBkINc20F
liTJbjoYZwtwwwi8wQl4VnrNT8rNKYoyW+XXm9vkul59SiBDd9vUm2p1yFevnR035wPdow8pEYNq
cdKQt6M8Ra9VKIgRZxPSH9qIwqRJIYFbLyDhUigZZ+fxq6oTCBbx0bwGpqnxs6lpfGxY338GhfjF
nEHDsJwFFBiXyVLWD9587utI1sWuVD8OZGVoCUsMYIYMUaEMncaxB7HaJl+2jxXwupt1oFtRleMj
I0FZtZsel+cjJQ2kae+Ua7P2tIVXxnX5TZhk/vbtu2xZrMTnqbD+j3wFfwReKq4OciNMQuTJFFek
KkJ9jNEwnhZlrvKGntIkPwxi3ZdUjAyalF76JOn5QRNY+wIcnoSUVi+UJcUm+kictWewAAX28qW8
f4mE2jExlY19hg5exoswJZTpa1wZ+v+ctLznCFlhCnPiHcPmE2wdye7DjK3/Xr15z99Y+eZb/ua9
emO/f2P35dKm4I+m1sWjtBymVOvXpdSSKuQMhU7BrwcK72GCP+lJ0FyQUGviEVoOE0oLgy9IqJuM
wJbQkGs+ckmhvJ8yNkqY8bw2SilCFGmsEZmocpAoRYo1IhHlSDqGRtTw5QPVfeLlO4sq63hEqsoR
qihzU6IJoE6nUvXw5AMOtkSi5t0saC9xeoKrFlylUe/MaLvQEqoNz07L7CCzk6DBWkqgpyS1QpNy
QeODGUO3+zbmr/LuY938OTKpLfSQkHypwfnqT0Da4n5TZj4oCjobqlb3V/wMovbV0wTQlT/Duqq8
E42tHSeJ/UXx9JHM3dW7vaWfXgp4KviXihuj+a6vg1sq7ReLGy3l/jq4GVLk+Dq4afvl4karDnil
e8q+YNzsF3wXKCsBXusu8C/4TJ38cu0pM1/wmX7BuLEv9kwZo+yCex3cnGNfigs86P8aZ6IEB5t2
C394nZiF7V4iArjNeu1h+MjP/4sX47/x3lHHYcSSvChcKHCDX13B8/i7R6QhGkY7k+p43flIhPgY
IuXff//pw2+//P47gpCBzmVStjICQtl6XRbLbWdlna2H8RJyoVMpzk/6HetRY06keh7qb+r63XXW
jByGWminSFcjAjqMi3d/+/bnUXSUMaRsmpuUoRlddCiYWGhSMtSNl16E+VkehscHkQDN1Wyn/x9/
+l4C/hphuVsoK0j2Ig5KCQklp+V8d+QJFQpmWltSanlcPqe3vAnNZ+PLG/OexBKrpii0vofSW62n
XZ14MxF0aLmz7+QLOAeKOZSfCjkfYzmjMZZLNpWx0FSYPLRPr+rog7oxxIbCWGRL0uVXnBRmRkJK
kYRcCTmj3n5j/kZDKp1Rc78x35OkVrl0qtRuqmW2vMuza9gO21cxNPk6zwYsttFsIacoxD3tcAgW
e9VwoeRqKrTb/TKMFErG3VTVdod8zgg18WsF8jXLpp7iNUaqYFM5d4N9jtZ+gn1uiX2Omamf+wP5
HGnDG/q1HPsasxO/9icmJHrqsZbo16Za/nvka1pN9b4r7Gt2qsTVGKVy6pmuscvlpl7V/2ISMtn/
atCLP1XeWgy3yWfaoRpzum3BRMS4Gc3ndxTzaVI92Sg8ICTSZilgX/uI3QJSHQH2tUcMNzn1a5+w
r+mpcvsX9jU39U4xVNCm4sZRXTQ1BBXomU7FTWLaY7J9UZj24FNxM1F1kcZ0keVTlbjFjkFNZZxD
PRo39XMpamGmapEVJiOUGk6ZogECxLO7jjqWKOEwbsylMwa2ihYZaUr5Ok54Ux6p5WTOpbSlUnJ8
yFoYTzChaFUp4LyLQGA5QiCliuVyBNrJccLOzpGsuk2272JQNYjtAfE3JZXny8pQNalwFtquJ8jK
5Btijt4QIRaakxr2Lne+jvEITC9HmP668ss4pRmKped2JylK0RRK5kOxyutQO5w3Z2bLYUIin0/E
dUozAozihZx9BEyoqar4Y37dFffQivViqilMrIHOV4YP//Euc+rOlu0jsJOnkRgMnykj5ehMmUjA
OQ5cqfTS9KPDpZiQGlaozKjNBSk9bZRI48rg+MgVJ+Mf/tj8RyaYgtb2k8D+0SZhI8NnyE8/8edw
2CHNmbHW+wM6Eoy67TAgYiEoa9WjCZCmuQOc6bMFqKq3Z4nHCs6bCUqf+xEodZWPS6eh1OqSZfQF
OPRpRCyckGeTBbDLzVB3i4ZDYvPJzf/SLCxp+2IMlELRFboLd2GYZWYeLPqqq5eDP7dYKKfETMdT
VA9ZWawONAtsTHN2RtVCc8NSLWZESpHec7UUU1yIyUjR3nM5nxKTTT4+SyvDkcrMiJSjPccbOePx
ie8oNlQ6PSUQmIzUewpSyjhGMbksClL/Rys5s5Smt0goveHf0UrztJoRKUHSUpKRJp5HQ+pbkkJg
pNRcLKQU7ficopRXRZMpTrp7jgt2tl/4PLEFndqZahvGqjNDygezcVBtiTvUlKntkXj7jiSD3uk2
E8nFfHwgHCvbg42bKWWj0T6kSaGn5TPeK/F3GqNTxqKSPxgVkxboHRHg7mP9HKu1A8Ni7elQDufE
hkTwpilhhNOgVL3EZk++tugoGVGMRwE+xaraiBml7HuiO2cnH35RlklYgPzUKtXk3aap2rACGdYv
jwXvKmW0CSZHzmB3HDcwKvGygacumbHRKA0DbJdlAcxfNzUk9Fc9eBieiOfRgGB2mqczPl8dGwAI
ZYNper5B3qz7F4kqtJw9T0YNg1GTrOua4nrT4T1hzFoY1H1pSh0MhVbThTcMyF/V0OBXr1EJVbDl
Uk4gY9KOaZiET2oYxOlpYIDtTVPfJzDscLhwQKUw/E3EE5B+PvHDwKZux0EW1FxMlLA6W8em7jTp
Z9BxoGYUG2gmiEsxqLotsUf6TrWwPlia83y1dO6y1A7to/PEQq0hRbnySMQqKU8DdzKxYazx9k/i
Lb4crjApExWLakkLqcjgbvPubffYHQASNjJz2y7zxnJYGUq14JQFefHkJyX5nEQSX85HH5hOBSPc
5Iwk2pRFO0XCUlMmDIzCFDNSaBiPdohPDmy/gLNXBMMbBTiD/RjmdODE6JtJZ707IuJAGA5w+ei6
gp1PX2BdgE6ZPP/0mmLnmRL2OjVZv90pTSX+amlpO72PAN5pIBtDYWT5oNZmYXVMTMJpv0QHUe9m
4bS7KOMV6l9bL29SzcR4NcJ4wzV037GL8kDjRy682khn4oEeEz5/DWhJ8+ksMChgqX0wPpcYmDEx
ELAm4rIqyOKrAmDLISUyERFYYMf2nxqvhxkp/ygm88DhOQToBtAz8cCNiYGGAfaU1qbpPGDp0PR3
QcplR+ABS0d54GiLS45g8njXeG94M7i4XMOpU4bwHoNzXyZ5taxXg/W/lsNIl4isfQHyEXmXAaDu
JIBU5zfJWigtTyy2+sl5uKTtlMdZujvc68MvP22duPfBFX75u/au3pSr5D7rlne4f+wVi7BpbKz6
nGuTZ6tPv4TpYz0i3xftGlB5PxR9cW0V0erEwOeHujuKkpdQs+DKnZ3nH1740N8E/w//CzaB9p38
6ce7ovR/z4pu4MZxZmHsc3QGr1aBgx+KtsurHLTLkyTi914YWCIcG41+wDgsDwhn3U++u/FxovQe
/lNDwtADh2OwGtdE1EXb0XcHwF++7siw/pvRLIw8nR2wERHhB74aJyxXOQmPf7z/9vsDRKq6e//o
ZWEfyJZWRgrsTqO1f0mE58Mkv193+BtW6j/KpT4b+O4gMQ/rxTsmunrSq1rKVJITaW7KG5D2b8vy
5+0Gvn+E9Zc47RbG+MuzkYDo9SfoakHOVsDadyljE+pF9rpYrbx/dJ/7e7Rqk/xxma+HKp69pVXe
rTCx0eg7nbxshww7jK57uMUGyFntwUsTUcpC6qvwUoaAk9bCVMQJ2qPNl94T7T7tZpqbPK+4Sh9V
+vawWNkZRdsEcR5f0TM13mTQHmVPZyq24gzSpEwoMRNbuYmu/u8Lf1tAH94XjzksuGrRoMI6mEcr
IjKWgAe2GRv47Ux8LrSw4C65Ac9oXG1wmRKzxVROrOq89XKdgy08WPGlFsZEt4P3m7Ir1p5UCCfx
ldHg85Pep04CXNXPVrDMq9vu7qgPCFtXKIMopCJyu6q/6zH4EBDYC8NUSKcxbxgoU0OOAB0mPrgA
QysTSed9Mrm/AsisLVpkgwlpisNJtH4+1j5lsQ0y/8qbenvyA/2PPsShzJIh039d3D5vHkYUipHS
KLVQSjk7H1QmNTOwPTtVTtjovAeG9y5n7wmhOTuQNHYZ2D3UJCt9GDtgqGXYe3vaQf/026iPDcmV
ZwXX040YEOgsPg3s8dcyKmhr2CsQbMVp9H7//sP7X99HAKxJPcOTxQtchKTwF6xqi654wCeNcAt7
XE9T5f/+7Yd/fvfjzz9EYIFTbGKq5qScENSSiOi8fsibpljlz57ZrvEKCYOBfdOhMFKejk4/XQy+
iPBSekIhE3xxKsf9YCe9PCmK2tSnYBHSw2EIBprR91ZRuNOAHslHM67YQLLXmwYem74nW/grTG8e
968lcJhUTKCJxniMVkkZ8DmN1t9+/oCnrwVfcFJ1H5XAp+rw/2wTH8/dA02+Lj/tPXD0deKOskji
BAQO4QR31i4UZU/7+ZRCXuCm3lSrvRqJbRuE4BGRGIK1XYG5MMJEhHZSKQ6zC+9YkkIXHaUD4yAB
A52O/GL649//+nBUfXi/VrnYCLR5t/1lb/ggmKuGyjG4RyHC/SKg8JCVm4FHYBsFh50XzKbwEtCD
xkRPaDh+d3x3lzqAuZdtgxE5beejh3C7nzbZ9/+/yTxSIRW4uyfdR5RV9vaP9e1XYMZ/fR6l8Ib/
/Y91fvtV+Nq33RWTQpj+d3+vmyudHqy0cXB+MHSJ1gB+2gFCEbI/NEL9JVca3r7U+SYfw+GhTbLw
i6xt8yZUF9xkRblpcHH23odh6fg4plmw8IdzDhKf5SVbLoH/oNaaukyus7ZY9uEqJthqwZRm6VSH
9r7s6j/zqvjLX9lVHTLYvad34MtLBS8wnEulLkhn8DWB0x6VClaDrcscJ1syl5pL3YKw1wIVfps6
7wGmEXXXqv7Y97iEjrawUyjoFm9Um7BO6Ep9FX56pdKDTiJ/GYWhzF6W5mQ+nH4H5PETUQeYRFKw
sJ/6QMHCD5/0q1LcjelX5gXKKlCwPOWkipKTWBpKZpebtqvvnw0V6venAhzDs8HvOGkvgR6Grwlc
bHMRgkPL5k2Z4cVT0nIQ4NiQN1Wb3YwPrvJ/gRaZcMoj/dCAw9fvvBgvs/LOK7Kvrf8Ph8/l+U0Y
DQvCwLcvFjsnz5eXnXz7sw8dNA86+VFZRQy9T4eKj5qEpqvj2bkLKLRVscyP6zNvkNWYPvOxDrPB
XxS0blN9dvUXp7X0WyogjgFiUGlE6v7B4Dy2Zed9jVXiXYuBjkrBoV+Fn03IHijol0DSEAxKa2ij
yyaAaw8Un+TEVP84tKpuN8s7eJLOQAIPqmhA8iirDfi5A2inb4U7adSwludPXT0OhsvjNVbqa7XP
tPBinjW76vv5Z70vWXln0sfjV+lXxf0tuwrVHAlL00f/V1A1/sf8Krvu9Q6UX175f3MgqqATHfzP
WvY//w9QSwMECgAAAAAAvT6SRwAAAAAAAAAAAAAAAA4AHABhY2Nlc3NpYmlsaXR5L1VUCQADFSx0
Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAuz6SR/bGUqBpAAAAawAAAC4AHABhY2Nlc3Np
YmlsaXR5L2FyaWEtY2hlY2tib3gtY2hlY2tlZC1zdGRlcnIudHh0VVQJAAMSLHRWEix0VnV4CwAB
BPUBAAAEFAAAADMyMDTVNTTSNbRQMDC3MjW2MjXRM7cwUEjOz9VLLCjISdULT03yziwBUc75eSWp
eSV6LqllqTn5BblAdrSFoamlkZWhpbmloXGsgl+wU2lJSX6eY15mbmJJZn5esWteYlJOaoqtnz8X
AFBLAwQKAAAAAAC9PpJHAAAAAAAAAAAAAAAAEgAcAGFjY2Vzc2liaWxpdHkvbWFjL1VUCQADFSx0
Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAvT6SRwqT6M5pAAAAawAAAGEAHABhY2Nlc3Np
YmlsaXR5L21hYy9jaGVja2JveC1wb3N0cy12YWx1ZS1jaGFuZ2Utbm90aWZpY2F0aW9uLWFmdGVy
LWFjdGl2YXRpb24td2l0aC1zcGFjZS1zdGRlcnIudHh0VVQJAAMVLHRWFSx0VnV4CwABBPUBAAAE
FAAAADMyMDTVNTTSNbRQMDC3MjW2MjXXszQ2UEjOz9VLLCjISdULT03yziwBUc75eSWpeSV6Lqll
qTn5BblAdrSFoamliZWhpbmlqUWsgl+wU2lJSX6eY15mbmJJZn5esWteYlJOaoqtnz8XAFBLAwQK
AAAAAADGPpJHAAAAAAAAAAAAAAAADAAcAGNvbXBvc2l0aW5nL1VUCQADIyx0Vt8tdFZ1eAsAAQT1
AQAABBQAAABQSwMECgAAAAAAxD6SRwAAAAAAAAAAAAAAABUAHABjb21wb3NpdGluZy9vdmVyZmxv
dy9VVAkAAyAsdFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAMQ+kkeJKeHRaAAAAGsAAAA9
ABwAY29tcG9zaXRpbmcvb3ZlcmZsb3cvdGhlbWUtYWZmZWN0cy12aXN1YWwtb3ZlcmZsb3ctc3Rk
ZXJyLnR4dFVUCQADICx0ViAsdFZ1eAsAAQT1AQAABBQAAAAzMjA01TU00jW0UDAwtzI1sTKw0DMx
M1BIzs/VSywoyEnVC09N8s4sAVHO+XklqXklei6pZak5+QW5QHa0haG5kYmVkYEBkBGr4BfsVFpS
kp/nmJeZm1iSmZ9X7JqXmJSTmmLr588FAFBLAwQKAAAAAADCPpJHAAAAAAAAAAAAAAAAFAAcAGNv
bXBvc2l0aW5nL3JlZ2lvbnMvVVQJAAMcLHRW3y10VnV4CwABBPUBAAAEFAAAAFBLAwQUAAIACADC
PpJHMQgjKb8AAADyBgAARQAcAGNvbXBvc2l0aW5nL3JlZ2lvbnMvd2Via2l0LWZsb3ctcmVuZGVy
ZXItbGF5ZXItY29tcG9zaXRpbmctc3RkZXJyLnR4dFVUCQADHCx0VhwsdFZ1eAsAAQT1AQAABBQA
AADtzzELwjAUBODdX5FRB5s2bbUKDloUHETBUaQ800eNxqa8RiH/XsVBB1cHIdvddPftwuE4TcZh
EsSjeM+UxQu0rpbFFu2GTINkHWtVVYPWWDIkmvQjMcxS1j0vVDWDFteHE0o7JzJULOsbaFWCxbLH
uuqzgWV8a64kMQd5RJ4bwhWWCt6pH6UDEYgk5I9pa6xrsOUbDQ6JP8ZeqZg+/wWSaVUjE2IUd3Ye
4RG/QSSfiNw07i8UYZZ5hVd4xRfFHVBLAwQUAAIACADGPpJHItWBrL8AAADyBgAAPAAcAGNvbXBv
c2l0aW5nL3Nob3ctY29tcG9zaXRlZC1pZnJhbWUtb24tYmFjay1idXR0b24tc3RkZXJyLnR4dFVU
CQADIyx0ViMsdFZ1eAsAAQT1AQAABBQAAADtzzELwjAUBODdX5FRB5smtloFBy0KDqLgKFKe6UOj
sSmvUci/V3HQwdVByHY33X3beDBKk5EQUT8RO6YdXqDxlSo26NZkayTnWaMPFRiDJUOicVfIQZay
9nmuD1NocLU/oXIzIkvForqB0SU4LDusrT8bOMY39koKc1BH5LklXGKp4Z26Iu3LSCYxf0w763yN
DV8b8Ej8MfZKxeT5L1LM6AqZlMNeaxsQAfEbRO8Tkdva/4UizrKgCIqg+KK4A1BLAwQKAAAAAADB
PpJHAAAAAAAAAAAAAAAAEgAcAGNvbXBvc2l0aW5nL3ZpZGVvL1VUCQADGSx0Vt8tdFZ1eAsAAQT1
AQAABBQAAABQSwMEFAACAAgAwT6SR9FlLEnBAAAA8gYAADIAHABjb21wb3NpdGluZy92aWRlby92
aWRlby1jbGlwLWNoYW5nZS1zcmMtc3RkZXJyLnR4dFVUCQADGSx0VhksdFZ1eAsAAQT1AQAABBQA
AADtzzGrwjAUBeD9/YqMOrSJsTV9goMWBQdRcJRHuS+9aDQ25TYK+fcqDjq4vuFBtnOmc76dUOM8
GwuRKpX/MOPxDF1odLVFvyHXIvnAOrNvwFqsGRJNkoFURc56p4XZz6DD9e8RtZ8TOaqWzRWsqcFj
3Wc9897AM751F9JYgj4gLx3hCmsDr5QM8pFMZSb4fdo7H1rs+MZCQOL3sWeqpo9/qWbWNMik/B5+
7SIiIv4God4RpWvDv1CIooiKqIiKD4obUEsDBAoAAAAAAME+kkcAAAAAAAAAAAAAAAARABwAY29u
dGVudGZpbHRlcmluZy9VVAkAAxosdFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAME+kkei
BHiVvgAAAPIGAAAnABwAY29udGVudGZpbHRlcmluZy9hbGxvdy1uZXZlci1zdGRlcnIudHh0VVQJ
AAMaLHRWGix0VnV4CwABBPUBAAAEFAAAAO3PMQvCMBQE4N1fkVEHmyZarQUHLQoOouAoUp7pQ6Ox
Ka9RyL9XcdDB1UHIdjfdfdt4mCX9LJaREGLHtMMLNL5SxQbdmmyN5Dxr9KECY7BkSDTuCjlME9Y+
z/VhCg2u9idUbkZkqVhUNzC6BIdlh7X1ZwPH+MZeSWEO6og8t4RLLDW8U1ckAxnJfswf0846X2PD
1wY8En+MvVIxef6LFDO6QiblqNfaBkRA/AYhPxG5rf1fKOI0DYqgCIovijtQSwMECgAAAAAAxz6S
RwAAAAAAAAAAAAAAAAUAHABjc3MzL1VUCQADJix0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMECgAA
AAAAwT6SRwAAAAAAAAAAAAAAAA4AHABjc3MzL2JsZW5kaW5nL1VUCQADGix0Vt8tdFZ1eAsAAQT1
AQAABBQAAABQSwMEFAACAAgAwT6SR61Mx0u/AAAA8gYAAEsAHABjc3MzL2JsZW5kaW5nL2JhY2tn
cm91bmQtYmxlbmQtbW9kZS1iYWNrZ3JvdW5kLWF0dGFjaGVtZW50LWZpeGVkLXN0ZGVyci50eHRV
VAkAAxosdFYaLHRWdXgLAAEE9QEAAAQUAAAA7c8xC8IwFATg3V+RUQebGFutBQctCg6i4ChSnulD
o7Epr1HIv1dx0MHVQch2N919WzHMkjgTMhL9wY5phxdofKWKDbo12RrJedboQwXGYMmQaNztyWGa
sPZ5rg9TaHC1P6FyMyJLxaK6gdElOCw7rK0/GzjGN/ZKCnNQR+S5JVxiqeGdur1kICMZC/6Ydtb5
Ghu+NuCR+GPslYrJ81+kmNEVMilH/dY2IALiJ4hYfiJyW/u/UIg0DYqgCIovijtQSwMECgAAAAAA
xj6SRwAAAAAAAAAAAAAAABAAHABjc3MzL3NlbGVjdG9yczMvVVQJAAMjLHRW3y10VnV4CwABBPUB
AAAEFAAAAFBLAwQKAAAAAADFPpJHAAAAAAAAAAAAAAAAFQAcAGNzczMvc2VsZWN0b3JzMy9odG1s
L1VUCQADISx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAxT6SRx0AXc1pAAAAawAAAC4A
HABjc3MzL3NlbGVjdG9yczMvaHRtbC9jc3MzLW1vZHNlbC0yNS1zdGRlcnIudHh0VVQJAAMhLHRW
ISx0VnV4CwABBPUBAAAEFAAAADMyMDTVNTTSNbRQMDC3MjWxMrDUMzI2VUjOz9VLLCjISdULT03y
ziwBUc75eSWpeSV6LqllqTn5BblAdrSFoZmJhZWhpYWZgUGsgl+wU2lJSX6eY15mbmJJZn5esWte
YlJOaoqtnz8XAFBLAwQKAAAAAADGPpJHAAAAAAAAAAAAAAAAFgAcAGNzczMvc2VsZWN0b3JzMy94
aHRtbC9VVAkAAyMsdFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAMY+kkcV2lCMaQAAAGsA
AAAvABwAY3NzMy9zZWxlY3RvcnMzL3hodG1sL2NzczMtbW9kc2VsLTI1LXN0ZGVyci50eHRVVAkA
AyMsdFYjLHRWdXgLAAEE9QEAAAQUAAAAMzIwNNU1NNI1tFAwMLcyNbEyNNQzMjFVSM7P1UssKMhJ
1QtPTfLOLAFRzvl5Jal5JXouqWWpOfkFuUB2tIWhmamRlaGlhZmpaayCX7BTaUlJfp5jXmZuYklm
fl6xa15iUk5qiq2fPxcAUEsDBAoAAAAAAMc+kkcAAAAAAAAAAAAAAAAMABwAY3NzMy9zaGFwZXMv
VVQJAAMmLHRW3y10VnV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAADHPpJHAAAAAAAAAAAAAAAAGgAc
AGNzczMvc2hhcGVzL3NoYXBlLW91dHNpZGUvVVQJAAMmLHRW3y10VnV4CwABBPUBAAAEFAAAAFBL
AwQKAAAAAADHPpJHAAAAAAAAAAAAAAAAKwAcAGNzczMvc2hhcGVzL3NoYXBlLW91dHNpZGUvc3Vw
cG9ydGVkLXNoYXBlcy9VVAkAAyYsdFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAAMc+kkcA
AAAAAAAAAAAAAAAzABwAY3NzMy9zaGFwZXMvc2hhcGUtb3V0c2lkZS9zdXBwb3J0ZWQtc2hhcGVz
L3BvbHlnb24vVVQJAAMmLHRW3y10VnV4CwABBPUBAAAEFAAAAFBLAwQUAAIACADHPpJHdJNofMAA
AADyBgAAVwAcAGNzczMvc2hhcGVzL3NoYXBlLW91dHNpZGUvc3VwcG9ydGVkLXNoYXBlcy9wb2x5
Z29uL3NoYXBlLW91dHNpZGUtcG9seWdvbi0wMDctc3RkZXJyLnR4dFVUCQADJix0ViYsdFZ1eAsA
AQT1AQAABBQAAADtzzELwjAQBeDdX5FRB5s2ttoKDloUHETBUaSc6aHR2JRrFPLvrTjo4OogZHsH
B+99u3A0TuJxFAejNNkzZfEKjatksUW7IVMjWccadaxAaywZEk36kWh/WfeyUMcZNLg+nFHaOZGh
YlndQasSLJY91lWfF1jGt+ZGEnOQJ+S5IVxhqeCd+lEyFIGIQ95WW2NdjQ3faHBIvC17pWL63BdI
plWFTIhs0Nl5hEf8BJGFn4jc1O4vFGGaeoVXeMUXxQNQSwMECgAAAAAA0z6SRwAAAAAAAAAAAAAA
AAQAHABkb20vVVQJAAM9LHRW3y10VnV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAADSPpJHAAAAAAAA
AAAAAAAACQAcAGRvbS9odG1sL1VUCQADPCx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMECgAAAAAA
0j6SRwAAAAAAAAAAAAAAABAAHABkb20vaHRtbC9sZXZlbDIvVVQJAAM8LHRW3y10VnV4CwABBPUB
AAAEFAAAAFBLAwQKAAAAAADSPpJHAAAAAAAAAAAAAAAAFQAcAGRvbS9odG1sL2xldmVsMi9odG1s
L1VUCQADPCx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMEFAACAAgA0j6SR5wIokNpAAAAawAAADIA
HABkb20vaHRtbC9sZXZlbDIvaHRtbC9IVE1MSW5wdXRFbGVtZW50MjAtc3RkZXJyLnR4dFVUCQAD
PCx0VjwsdFZ1eAsAAQT1AQAABBQAAAAzMjA01TU00jW0UDAwtzI1sTI207M0NVZIzs/VSywoyEnV
C09N8s4sAVHO+XklqXklei6pZak5+QW5QHa0haGZoamVoaWFkYFxrIJfsFNpSUl+nmNeZm5iSWZ+
XrFrXmJSTmqKrZ8/FwBQSwMECgAAAAAA0z6SRwAAAAAAAAAAAAAAAAoAHABkb20veGh0bWwvVVQJ
AAM9LHRW3y10VnV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAADTPpJHAAAAAAAAAAAAAAAAEQAcAGRv
bS94aHRtbC9sZXZlbDIvVVQJAAM9LHRW3y10VnV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAADTPpJH
AAAAAAAAAAAAAAAAFgAcAGRvbS94aHRtbC9sZXZlbDIvaHRtbC9VVAkAAz0sdFbfLXRWdXgLAAEE
9QEAAAQUAAAAUEsDBBQAAgAIANM+kkfuO348aQAAAGsAAAAzABwAZG9tL3hodG1sL2xldmVsMi9o
dG1sL0hUTUxJbnB1dEVsZW1lbnQyMC1zdGRlcnIudHh0VVQJAAM9LHRWPSx0VnV4CwABBPUBAAAE
FAAAADMyMDTVNTTSNbRQMDC3MjWxMjbXszQzU0jOz9VLLCjISdULT03yziwBUc75eSWpeSV6Lqll
qTn5BblAdrSFoZmxmZWhpYWJmXmsgl+wU2lJSX6eY15mbmJJZn5esWteYlJOaoqtnz8XAFBLAwQU
AAIACAAsQJJHQ0jr2qoVAAB4UwIADQAcAGVycm9yX2xvZy50eHRVVAkAA9QtdFYOLHRWdXgLAAEE
9QEAAAQUAAAA7J17bxs5ksD/v0/RCHYmMbAt8f0QMFjknOwmt0HGmGR2DhgMgrZEyZ20ujXdLcfe
w373K0qOrdju9iOSTQaFALLsSGSzfqxisUgWf/97nScv3DihJiF6JPlIkgGzUnCeMELlH8nvTVOM
Pmd1CW8X+SQxVGr2R/L8FaGW2FFCmR4Q+EdHQvARSRpXH7s6Gbu6zaf5OGtdMqlck7z9+X2Sl+Ni
OXFJViavXySfj/LxUTLP2vER/H975L58t8zm7r9+v+7JBBFa9D0ZXz+Z0XyUvC7zdpS8c02TV2Wy
n0E1Sd4kZdUm46qc5rNl7SbJ70d56T/27s3ZJ1cf/KOrfkmIvbn+x5CMEkx+ebL5Yv5hUbtpVX8a
QXvzsbvyjIQqkNHzhW/tkA3EgKrk2a9lfrKXHLw6GMqBhH6Q/LxwJYhmSAZ2YP492xRcmia1a5bz
vJyBTOt5ViTVwtVZCzJsuh9SnYtvXNWu8+mIFaNkv5rPs3KSFHnpRsnT4bKph81hXg6P2nYBTzBN
hv+qiuXcNcMXWZsNX/72bvibO/xn3p79+O9lXkyGv7jCZY0bFtlptWzT1jVt6h+9aJt1SQPfrCTd
T15UYyitbH+poJM86Sz8zaqg91DOuoChL7J5kqTj5HmRZ00y/NicV1Mt6zFQvF1p55/fLGzuJnl2
56JW31oV8/504Zr9Fbm7NMoLZTjP527Q+gJWRe0vm7aav6n6Crqt6LMxNKb5UFSzQXvSPoG+NZ+D
okItL+u6qrdTifNFXdQBhR/kk7/nhUuG7XzxpbR1L/BdEDrBr6BsyZNDX/Rh5b+zn7zJm9aVGxpt
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
RGFzaC1zdGRlcnIudHh0VVQJAANOLHRWTix0VnV4CwABBPUBAAAEFAAAANVOSwrCMBTce4q5gKGF
qCWIm0Zc6M6FC3Hx2j4wkOaVNNbP6U29hTAwH4ZhLLcoKxQbs9IZ4OdYFlp5acmjlV7RMHhWF26O
Ls1US0gckrI8sZehz/palWutb9juY5S4M6gPv9YrnTmdXGBL493AhYm869BlB4qR3gaU4JnGBAkM
9jzPoX/koGEECcsPR1EL+xcvv1BLAwQKAAAAAADZPpJHAAAAAAAAAAAAAAAAEgAcAGZhc3QvY2Fu
dmFzL3dlYmdsL1VUCQADSix0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMEFAACAAgA2T6SR3eOH31i
AAAA3gAAAD8AHABmYXN0L2NhbnZhcy93ZWJnbC90ZXgtaW1hZ2UtYW5kLXVuaWZvcm0tYmluZGlu
Zy1idWdzLXN0ZGVyci50eHRVVAkAA0osdFZKLHRWdXgLAAEE9QEAAAQUAAAAizYwtzI1sTKx1DM3
MI5VsAECBc9AXWdHBTsgUCjILExOjE/NKyxNLU31zE1MT/XMc3YEMwJBQlYKyDzPvOLUohIwXyEt
MTMnNUVHIaU0tyAzL10hrSgxN5UrGsk6E9pbBwBQSwMECgAAAAAA2z6SRwAAAAAAAAAAAAAAAAkA
HABmYXN0L2Nzcy9VVAkAA00sdFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIANs+kkfbCNNC
OwAAAD8AAAApABwAZmFzdC9jc3MvY29tcGFyZS1jb250ZW50LXN0eWxlLXN0ZGVyci50eHRVVAkA
A00sdFZNLHRWdXgLAAEE9QEAAAQUAAAAcywpSc0tKFEoyVdIzSssTS1NVUhUKM8vylbIBEoolGdk
5qQqQMQzixWSUjPz0hUKivKTU4uLU1P0uABQSwMECgAAAAAA2j6SRwAAAAAAAAAAAAAAAAkAHABm
YXN0L2RvbS9VVAkAA0ssdFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIANo+kkfak3yaaQAA
AGsAAAA2ABwAZmFzdC9kb20vY2xvbmUtbm9kZS1mb3JtLWVsZW1lbnRzLXdpdGgtYXR0ci1zdGRl
cnIudHh0VVQJAANLLHRWSyx0VnV4CwABBPUBAAAEFAAAADMyMDTVNTTSNbRQMDC3MjWxMjXUMzYw
UEjOz9VLLCjISdULT03yziwBUc75eSWpeSV6LqllqTn5BblAdrSFoZmFhZWhpaW5mWWsgl+wU2lJ
SX6eY15mbmJJZn5esWteYlJOaoqtnz8XAFBLAwQKAAAAAADcPpJHAAAAAAAAAAAAAAAADQAcAGZh
c3QvZHluYW1pYy9VVAkAA08sdFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIANw+kke2sq93
aQAAAGsAAAAwABwAZmFzdC9keW5hbWljL2NoZWNrYm94LXNlbGVjdGlvbi1jcmFzaC1zdGRlcnIu
dHh0VVQJAANPLHRWTyx0VnV4CwABBPUBAAAEFAAAADMyMDTVNTTSNbRQMDC3MjWxMjXVMza1UEjO
z9VLLCjISdULT03yziwBUc75eSWpeSV6LqllqTn5BblAdrSFoZmBmZWhpYWBhWmsgl+wU2lJSX6e
Y15mbmJJZn5esWteYlJOaoqtnz8XAFBLAwQKAAAAAADqPpJHAAAAAAAAAAAAAAAADAAcAGZhc3Qv
ZXZlbnRzL1VUCQADZyx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMEFAACAAgA4z6SR1gqZ3U5AAAA
QwAAADIAHABmYXN0L2V2ZW50cy9kaXNwbGF5LW5vbmUtb24tZm9jdXMtY3Jhc2gtc3RkZXJyLnR4
dFVUCQADWSx0VlksdFZ1eAsAAQT1AQAABBQAAADLzS8tTvXNL0sNyVdIS8zMSU1RKAGyMvNSFBIV
ShKL0lNLFMoyU8sVEksUDA0MDPQMwEDHFM7kAgBQSwMEFAACAAgA6T6SRzC1beM5AAAAQwAAACsA
HABmYXN0L2V2ZW50cy9tb3VzZS1mb2N1cy1pbWFnZW1hcC1zdGRlcnIudHh0VVQJAANmLHRWZix0
VnV4CwABBPUBAAAEFAAAAMvNLy1O9c0vSw3JV0hLzMxJTVEoAbIy81IUEhVKEovSU0sUyjJTyxUS
SxTMDQz0DMBAR9cQzuYCAFBLAwQUAAIACADqPpJH5669XzsAAABDAAAALwAcAGZhc3QvZXZlbnRz
L21vdXNldXAtb3V0c2lkZS1kb2N1bWVudC1zdGRlcnIudHh0VVQJAANnLHRWZyx0VnV4CwABBPUB
AAAEFAAAAMvNLy1O9c0vSw3JV0hLzMxJTVEoAbIy81IUEhVKEovSU0sUyjJTyxUSSxRMDAwM9AzA
QMfYwhTK5AIAUEsDBAoAAAAAAOQ+kkcAAAAAAAAAAAAAAAALABwAZmFzdC9mb3Jtcy9VVAkAA1ws
dFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAOQ+kkfXWI4AqwAAAOkAAAAzABwAZmFzdC9m
b3Jtcy9mb3JtLWFzc29jaWF0ZWQtZWxlbWVudC1jcmFzaC1zdGRlcnIudHh0VVQJAANcLHRWXCx0
VnV4CwABBPUBAAAEFAAAAH2NsQ6CQBBEe79iaxIuHARFOqIWRisKKQjFCQtcArd4t2j8e9FQW81k
MvMmDGTsy9CXCQS7NI7TIBFxGEFNo1DTNKAo8H7R/JUDGUbD4ohPHGgaF18mciuDVO4TGckKPM8D
v8xumXPIOTqabY1XUo02XY6PGR1Dq412/RoWmvuTtWTTCl7KgVuYwATKgDaOlakRqIX/RO4V/9Zq
sKia93qBjYBzZ8guVbH5AFBLAwQKAAAAAADdPpJHAAAAAAAAAAAAAAAAEQAcAGZhc3QvZm9ybXMv
cmFkaW8vVVQJAANSLHRW3y10VnV4CwABBPUBAAAEFAAAAFBLAwQUAAIACADdPpJHVcJrh2kAAABr
AAAAQQAcAGZhc3QvZm9ybXMvcmFkaW8vaW50ZXJhY3RpdmUtdmFsaWRhdGlvbi1yZXF1aXJlZC1y
YWRpby1zdGRlcnIudHh0VVQJAANSLHRWUix0VnV4CwABBPUBAAAEFAAAADMyMDTVNTTSNbRQMDC3
MjWxMrXQMzMwVkjOz9VLLCjISdULT03yziwBUc75eSWpeSV6LqllqTn5BblAdrSFoZmpmZWhpYW5
oXmsgl+wU2lJSX6eY15mbmJJZn5esWteYlJOaoqtnz8XAFBLAwQUAAIACADgPpJHDu26S2kAAABr
AAAANAAcAGZhc3QvZm9ybXMvVmFsaWRpdHlTdGF0ZS12YWx1ZU1pc3NpbmctMDA2LXN0ZGVyci50
eHRVVAkAA1MsdFZTLHRWdXgLAAEE9QEAAAQUAAAAMzIwNNU1NNI1tFAwMLcyNbEytdQzNbVUSM7P
1UssKMhJ1QtPTfLOLAFRzvl5Jal5JXouqWWpOfkFuUB2tIWhmaGBlaGlhaGxYayCX7BTaUlJfp5j
XmZuYklmfl6xa15iUk5qiq2fPxcAUEsDBAoAAAAAAOc+kkcAAAAAAAAAAAAAAAAMABwAZmFzdC9m
cmFtZXMvVVQJAANhLHRW3y10VnV4CwABBPUBAAAEFAAAAFBLAwQUAAIACADjPpJH2wjTQjsAAAA/
AAAALwAcAGZhc3QvZnJhbWVzL2ZyYW1lLWRpc3BsYXktbm9uZS1mb2N1cy1zdGRlcnIudHh0VVQJ
AANaLHRWWix0VnV4CwABBPUBAAAEFAAAAHMsKUnNLShRKMlXSM0rLE0tTVVIVCjPL8pWyARKKJRn
ZOakKkDEM4sVklIz89IVCoryk1OLi1NT9LgAUEsDBBQAAgAIAOc+kkcF6ur/aQAAAGsAAAA8ABwA
ZmFzdC9mcmFtZXMvc2FuZGJveGVkLWlmcmFtZS1hdHRyaWJ1dGUtcGFyc2luZy0wMS1zdGRlcnIu
dHh0VVQJAANhLHRWYSx0VnV4CwABBPUBAAAEFAAAADMyMDTVNTTSNbRQMDC3MjW1MjTWszAwVkjO
z9VLLCjISdULT03yziwBUc75eSWpeSV6LqllqTn5BblAdrSFobmxmZWRgaGFqVGsgl+wU2lJSX6e
Y15mbmJJZn5esWteYlJOaoqtnz8XAFBLAwQKAAAAAADqPpJHAAAAAAAAAAAAAAAADAAcAGZhc3Qv
aW1hZ2VzL1VUCQADZyx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMECgACAAAA6T6SR1GnghgxAAAA
MQAAAC0AHABmYXN0L2ltYWdlcy9sYXJnZS1zaXplLWltYWdlLWNyYXNoLXN0ZGVyci50eHRVVAkA
A2UsdFZlLHRWdXgLAAEE9QEAAAQUAAAAaW5pdEltYWdlQXBwbGVKUEVHOjE0MTY6IGZhbGxpbmcg
YmFjayB0byBsaWJKUEVHClBLAwQUAAIACADqPpJHIY+9ODIAAAAzAAAALAAcAGZhc3QvaW1hZ2Vz
L3BkZi1hcy1pbWFnZS1jcm9wLWJveC1zdGRlcnIudHh0VVQJAANnLHRWZyx0VnV4CwABBPUBAAAE
FAAAAHPLSSxJdUlNzk9JtVJIAdGZeekKqUVF+UVWCpl5yflFRanJJQopiSWJCskZqcnZelwAUEsD
BAoAAAAAAOk+kkcAAAAAAAAAAAAAAAAMABwAZmFzdC9sb2FkZXIvVVQJAANmLHRW3y10VnV4CwAB
BPUBAAAEFAAAAFBLAwQUAAIACADjPpJH2wjTQjsAAAA/AAAAUgAcAGZhc3QvbG9hZGVyL2Rpc3Bs
YXktaW1hZ2UtdW5zZXQtY2FuLWJsb2NrLWltYWdlLWFuZC1jYW4tcmVsb2FkLWluLXBsYWNlLXN0
ZGVyci50eHRVVAkAA1osdFZaLHRWdXgLAAEE9QEAAAQUAAAAcywpSc0tKFEoyVdIzSssTS1NVUhU
KM8vylbIBEoolGdk5qQqQMQzixWSUjPz0hUKivKTU4uLU1P0uABQSwMEFAACAAgA5T6SR9sI00I7
AAAAPwAAAFMAHABmYXN0L2xvYWRlci9pbWFnZXMtZW5hYmxlZC11bnNldC1jYW4tYmxvY2staW1h
Z2UtYW5kLWNhbi1yZWxvYWQtaW4tcGxhY2Utc3RkZXJyLnR4dFVUCQADXSx0Vl0sdFZ1eAsAAQT1
AQAABBQAAABzLClJzS0oUSjJV0jNKyxNLU1VSFQozy/KVsgESiiUZ2TmpCpAxDOLFZJSM/PSFQqK
8pNTi4tTU/S4AFBLAwQUAAIACADpPpJH2wjTQjsAAAA/AAAALQAcAGZhc3QvbG9hZGVyL3JlbG9h
ZC1wb2xpY3ktZGVsZWdhdGUtc3RkZXJyLnR4dFVUCQADZix0VmYsdFZ1eAsAAQT1AQAABBQAAABz
LClJzS0oUSjJV0jNKyxNLU1VSFQozy/KVsgESiiUZ2TmpCpAxDOLFZJSM/PSFQqK8pNTi4tTU/S4
AFBLAwQKAAAAAADuPpJHAAAAAAAAAAAAAAAADQAcAGZhc3QvcmVnaW9ucy9VVAkAA3AsdFbfLXRW
dXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAAO8+kkcAAAAAAAAAAAAAAAAXABwAZmFzdC9yZWdpb25z
L3Njcm9sbGluZy9VVAkAA3EsdFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAO4+kkc5Acvd
QAAAAHoAAAA1ABwAZmFzdC9yZWdpb25zL3Njcm9sbGluZy93aGVlbC1zY3JvbGwtYWJzcG9zLXN0
ZGVyci50eHRVVAkAA3AsdFZwLHRWdXgLAAEE9QEAAAQUAAAAcy1LzSsJTs1LSS0KKMqvqLSySs7P
K8nMK80vLfYF4tTg5KL8nBynSoXMYoW8/BKFzNyCnNRcoKbUFC5XSjQDAFBLAwQUAAIACADvPpJH
OQHL3UAAAAB6AAAALgAcAGZhc3QvcmVnaW9ucy9zY3JvbGxpbmcvd2hlZWwtc2Nyb2xsLXN0ZGVy
ci50eHRVVAkAA3EsdFZxLHRWdXgLAAEE9QEAAAQUAAAAcy1LzSsJTs1LSS0KKMqvqLSySs7PK8nM
K80vLfYF4tTg5KL8nBynSoXMYoW8/BKFzNyCnNRcoKbUFC5XSjQDAFBLAwQUAAIACADvPpJH5IrH
QzwAAAA9AAAAQAAcAGZhc3QvcmVnaW9ucy9zY3JvbGxpbmcvd2hlZWwtc2Nyb2xsYWJsZS1zaW5n
bGUtcmVnaW9uLXN0ZGVyci50eHRVVAkAA3EsdFZxLHRWdXgLAAEE9QEAAAQUAAAAcy1LzSsJTs1L
SS0KKMqvqLSySs7PK8nMK80vLfYF4tTg5KL8nBynSoXMYoW8/BKFzNyCnNRcoKbUFC4AUEsDBAoA
AAAAAPA+kkcAAAAAAAAAAAAAAAAPABwAZmFzdC9zY3JvbGxpbmcvVVQJAAN0LHRW3y10VnV4CwAB
BPUBAAAEFAAAAFBLAwQKAAAAAADxPpJHAAAAAAAAAAAAAAAAGAAcAGZhc3Qvc2Nyb2xsaW5nL2xh
dGNoaW5nL1VUCQADdSx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMEFAACAAgA8D6SR6/PP2/cAAAA
OQEAADkAHABmYXN0L3Njcm9sbGluZy9sYXRjaGluZy9zY3JvbGwtaWZyYW1lLWZyYWdtZW50LWFj
dHVhbC50eHRVVAkAA3QsdFZ0LHRWdXgLAAEE9QEAAAQUAAAAVZDBasNADETv+xWDL20hlBDS0EsP
ITgQSIjB/oGNLdsL61VYrW3891UILeSig/RmmJGpSJIg9TbBtdEOhIZJwlvC3Ypg7ok8aKLwoBiD
dQFPTk8BUkf23oUOanDjlHgw5qr7sa5JZIWFR8zOewgRrM7oSMAtsmJflhkGpWxHSrZqxDM1uC3I
qryscLheinNe5dmnMeaB/9m2o/dLYaMo7TRXHMmYF4k5HZ9lnNy9XdCT6/qEH3yt1+bCoxAGnlSu
nd433ytsd7sPc9yfzvhXNgicEKkmN9HLJzTPL1BLAwQUAAIACADwPpJHFLTisOcAAACnAQAANwAc
AGZhc3Qvc2Nyb2xsaW5nL2xhdGNoaW5nL3Njcm9sbC1pZnJhbWUtZnJhZ21lbnQtZGlmZi50eHRV
VAkAA3QsdFZ1LHRWdXgLAAEE9QEAAAQUAAAAvY5BSwMxEIXv+RVztKRpitiiB2Fb3UKxxeIu9hyT
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
3y10VnV4CwABBPUBAAAEFAAAAFBLAwQUAAIACADzPpJHcv1l8oUAAADpAAAAJQAcAGZhc3QveHNs
L3RyYW5zZm9ybS14aHItZG9jLXN0ZGVyci50eHRVVAkAA3osdFZ6LHRWdXgLAAEE9QEAAAQUAAAA
rU4xDsJADNv7inygZGC7GSbYQHRO21SclLtUuZzU/p6DfoHFsmzL9qRpjUIeNQObqQVYovAPAiK+
VGrighdywuvwwIHHW3S8067Vn1y84ELFcSuCxkWrTS2+va2fdTo1FSRmhjOwcOLsENOq5l1zwkEh
QM00tlFXEKX5T+P9Uc/z90X3AVBLAwQUAAIACADzPpJHzgkoAo0AAADwAAAAJwAcAGZhc3QveHNs
L3hzbHQtYmFkLWltcG9ydC11cmktc3RkZXJyLnR4dFVUCQADeix0VnosdFZ1eAsAAQT1AQAABBQA
AACljjEOwjAMRfeewhcoHtgywwQbiM5O64pITlw5jgS3J9AjsHz5/2dbf9a8JSFPWoDN1AKsSfgn
AREfKi1zxRM54Xm64cTxkhyv9Nbmd65ecaXq+KqCxlWbzX29Ox8jLWPKm5qPzdKhZyCpMByBhTMX
h50OnYR9hACtUOwFXEGUln+LFK1tfn6f9DuR4QNQSwMEFAACAAgA8z6SR8+PZg5QAAAAoAAAACQA
HABmYXN0L3hzbC94c2x0LWNvbnRlbnRUeXBlLXN0ZGVyci50eHRVVAkAA3osdFZ6LHRWdXgLAAEE
9QEAAAQUAAAArcyxDcAgDAXRnin+BlHabIPACEs2RpaJMn7IDmmuu1dMJ0sOtgFyN7/QWAgQHoQT
JKQ0ArZirkg87ixcsbsIzRxK0a3uyyyVv7Cnh8rxkS9QSwMEFAACAAgA9D6SR4FKd61LAAAArAAA
ADQAHABmYXN0L3hzbC94c2x0LXRyYW5zZm9ybS10by1mcmFnbWVudC1jcmFzaC1zdGRlcnIudHh0
VVQJAAN7LHRWeyx0VnV4CwABBPUBAAAEFAAAALXMsQ2AMAxE0T5T3Aq0bOPABVlybGQs5keiYAPq
r/e3mKealIaDmZErhhoBUycW0DjphVtSpRtbcudQ11fEwGHRxb6O4lVt++X6AFBLAwQUAAIACAAx
QJJHfxxYKYYBAADnAgAAEQAcAGZ1bGxfcmVzdWx0cy5qc29uVVQJAAPdLXRW3y10VnV4CwABBPUB
AAAEFAAAAK1STW/bMAz9KwNPLWDX3bp1S3oKEG8rmrVDnX6dDMamYy76MCR6SFDkv0+yi3aHAQWK
HWTRT4/viaRm83l5nRc3i2Vx8AhCXjxMH0FTzRgDcVhtnoOUTbpCU6dedoqOWtEqnjnqrBOYwtfF
7OIBEqBtR5VQHaCfs6IICFbSYyDD8vxHfnWzfDfg+/0+ATY+sq2LUrXVcWu5pu+8blVY8p98GvQS
VXzlrFJs1vFHoVTtUzwepNw41JSG71qTeaN7fv9iHbx/DV1lIyqtUUhYU2Odxn+oX+ffwkCK86vL
1y3GwvyGuy5yTj6cfkrA9Lp0tHbkPVsTjN8nYKUlV1YOfUvxKkPbhZzru0G9QeVpTNUc8mJDjpPQ
nZ3tpRyeRVlzmBBkt1b1mnw2R8EsvyuyO1pdsGSLgbscXlACv8lFd5h+HFU79D46n0w+f5kk0PGW
1JMuGVypvy7Roi87RyK7kBWmA1NxfcAb3kbiUOZkVG0UbnYBSKAP6uXYLZRYdtlw5MbU/eHZH1BL
AwQKAAAAAAD2PpJHAAAAAAAAAAAAAAAABQAcAGh0dHAvVVQJAAOALHRW3y10VnV4CwABBPUBAAAE
FAAAAFBLAwQKAAAAAAABP5JHAAAAAAAAAAAAAAAACwAcAGh0dHAvdGVzdHMvVVQJAAOSLHRW3y10
VnV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAAD4PpJHAAAAAAAAAAAAAAAAEQAcAGh0dHAvdGVzdHMv
Y2FjaGUvVVQJAAODLHRW3y10VnV4CwABBPUBAAAEFAAAAFBLAwQUAAIACAD4PpJHRGQQScQAAAB6
AQAAMAAcAGh0dHAvdGVzdHMvY2FjaGUvbWVtb3J5LWNhY2hlLXBydW5pbmctc3RkZXJyLnR4dFVU
CQADgyx0VoMsdFZ1eAsAAQT1AQAABBQAAAC9jkFqwzAURPc9xRygFRK2Y0eUQJNsugvxIgWThSp/
26JCKtI3KT191UUu0EVnOTDvzSBb3TS6bkVbqSueS3A4v+x77Eow+TUvJwqjC/OZPJlMPbHGIL/a
aTRVR5VttvKKvY/2AxKLyQgxPH1Tikg0wcY1MOqHI1moDncd6JaVrEWZGY/ENtFnTFw0Q6c2265c
eQ1T3Gn4OM+lRmaTOAsh/oA60vs6F5YLji+Ol55ydjH8GjTeTodymUGBHXsaH6H+Q/EDUEsDBAoA
AAAAAPY+kkcAAAAAAAAAAAAAAAASABwAaHR0cC90ZXN0cy9jYW52YXMvVVQJAAOALHRW3y10VnV4
CwABBPUBAAAEFAAAAFBLAwQKAAAAAAD2PpJHAAAAAAAAAAAAAAAAGAAcAGh0dHAvdGVzdHMvY2Fu
dmFzL3dlYmdsL1VUCQADgCx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMEFAACAAgA9j6SR+XHEcB7
AAAArgAAADsAHABodHRwL3Rlc3RzL2NhbnZhcy93ZWJnbC9vcmlnaW4tY2xlYW4tY29uZm9ybWFu
Y2Utc3RkZXJyLnR4dFVUCQADgCx0VoAsdFZ1eAsAAQT1AQAABBQAAACVzTEKAjEQQNF+TzEHkJBI
VpcgNqaxW9hCQSzWOMaBMCPJiNd3PYLtL96PmMANYLeh74P3gJ/mrDdF0lygaqr4kqrE+TK4jV1f
YXfkh+wDFMl5ydB0rtqMMV38m4p4e+fFIiY9kT4nbI2Ef4cA5/EALArISlrwvgLXfQFQSwMECgAA
AAAA+j6SRwAAAAAAAAAAAAAAAB0AHABodHRwL3Rlc3RzL2NvbnRlbnRleHRlbnNpb25zL1VUCQAD
hyx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMEFAACAAgA+j6SR1+pBr7AAAAAFwEAADoAHABodHRw
L3Rlc3RzL2NvbnRlbnRleHRlbnNpb25zL3RleHQtdHJhY2stYmxvY2tlZC1zdGRlcnIudHh0VVQJ
AAOHLHRWhyx0VnV4CwABBPUBAAAEFAAAAJ2OwUoDMRRF937F/QANCZ04JZSCbTfuSmehMHQR0zcz
wfAiyRsUv9648Ae8ywv3nDvq3lnrrFHW2it2LTheng4D9i2Y0lqXM/Et8nyhRL7SQOIw6q9+Cp42
m77vOn3FIeXwDo3FV3Dmh28qGYUmhLyywNydKMBs8acDfVajO9VmPqFIKPSRizTNuDWPphF3zzzl
vUPK89xqVPFFqlLqH6gTva1zY0WO8hJlGajWmPnX4PB6PrbLAmKJkuh2397+AFBLAwQKAAAAAAAD
P5JHAAAAAAAAAAAAAAAAEQAcAGh0dHAvdGVzdHMvbWVkaWEvVVQJAAOVLHRW3y10VnV4CwABBPUB
AAAEFAAAAFBLAwQKAAAAAAD5PpJHAAAAAAAAAAAAAAAAGgAcAGh0dHAvdGVzdHMvbWVkaWEvY2xl
YXJrZXkvVVQJAAOGLHRW3y10VnV4CwABBPUBAAAEFAAAAFBLAwQUAAIACAD5PpJH9SzF2wIBAABQ
AgAAOQAcAGh0dHAvdGVzdHMvbWVkaWEvY2xlYXJrZXkvY2xlYXIta2V5LWhscy1hZXMxMjgtc3Rk
ZXJyLnR4dFVUCQADhix0VoYsdFZ1eAsAAQT1AQAABBQAAAC9kMFKxDAQhu/7FPMAUtLdTbdGWVit
iIeVQhGF4qEm026wTUoycV/fdIvQs6DHmX/m//6Zmu0E54KzhKXbd7itHh7Ll2O5hwMRDiM9I52t
+zxao8m6CimMAowl8EikTQdhBDPPwDAP3UCjlEPvQXvorWz6Vb2g8D+jFCghzeGHBXj2KdsmFxEc
SYejdZNdnafZJos5nkxr9yKud91E8dQ48kmS/MKqwI/QRS8d071qOlUxmrZmIgh4K+8v56AhTT2q
K0iXP1n/y+d5vqR47MowjAX2+gvdQcowhL4hVHehbdEJYALULILSU8tD6+wADhsFDCydoiKtMSgp
1rtrnm3Wq29QSwMECgAAAAAA+z6SRwAAAAAAAAAAAAAAABUAHABodHRwL3Rlc3RzL21lZGlhL2hs
cy9VVAkAA4osdFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAPk+kkffUv8oYgEAAEcDAABA
ABwAaHR0cC90ZXN0cy9tZWRpYS9obHMvaGxzLWFjY2Vzc2libGl0eS1kZXNjcmliZXMtdmlkZW8t
c3RkZXJyLnR4dFVUCQADhix0VoYsdFZ1eAsAAQT1AQAABBQAAAC1UW1rwjAQ/u6vuB8wisXWl24I
rs4xmEOQ4UDGiM3ZBtOkS66T/ftdFMHhN8F8vDz3vN26O8jSNEu7URz3PuFh+fS8eJ8vxjAhwrqh
N6S9dbu5NYqsWyK1TQbGEngkUqaEtgFzxEB9BN2DkNKh96A8aFsI3VmfqSQ3U5liAfEQTlqAex93
k+jwCY4Kh411gW49jAfDlH28mK0dZ7xelkHFk3Dkoyi6gmqKm7ZkLsXuVoqqJVtT1gSFDD4W+SEO
GlKkUd5BfN7JIBDwg5kql+RQ1AstftHBmB9sm63/mmhCZwThq/KUV8KUKDMoKmt9cB5UFVsTJxhP
QDP0QubmBx6MzlXmKJWYKY250EWr2dnjamJkXmGxywVLzVH41qGEjTByryRVgbXkEjgJECcNZyEG
cKIf4ZQwFIJzA8Gdw+9W/V/fOltDv5ckaQxkoZ+MhqP0wuE1deetc3zCs5YbroEnnT9QSwMEFAAC
AAgA+j6SR5FcaN9VAQAA/AIAADoAHABodHRwL3Rlc3RzL21lZGlhL2hscy9obHMtYXVkaW8tdHJh
Y2tzLWhhcy1hdWRpby1zdGRlcnIudHh0VVQJAAOHLHRWhyx0VnV4CwABBPUBAAAEFAAAAL1R3UrD
MBS+9ynOA8hYte26KoPZORGcDIZMGCJZc9qGpUlNTh2+vacbgw7vBM1VOPny/Z3NcJRGURoNB/FV
9Aa3q/uH5ctiOYEpEdYNPSPtrdstrFFk3QqpbVIwlsAjkTIltA2YIwbqI+gGhJQOvQflQdtc6ItN
TyX+M5UZ5hAkcNIC3PtgGA4Oj+Aod9hY19FtkmCUdGlnuG3LSQqKKdeKqhXzKWseTWFTeF1mBw9o
SJFGeQlBL0gShkzAB+aqXJFDUS+1+EIHEz5QNIV/n2pCZwThk/KUVcKUKFPIK2t9F6pTVWxNnGA8
Ac3QM5n/2EoSjvoqC5RKzJXGTOi81ezsbj01Mqsw32WCpRYofOtQwlYYuVeSqo615BI4CRAnBU98
l12iT+GUMNQF5wY6dw4/WnX+vXC2hvg6DKMAyEIcjpNx9MPhb+rOWud4hb2WG66BJxffUEsDBBQA
AgAIAPo+kkf9IVAqWwEAAPwCAABBABwAaHR0cC90ZXN0cy9tZWRpYS9obHMvaGxzLWF1ZGlvLXRy
YWNrcy1sb2NhbGUtc2VsZWN0aW9uLXN0ZGVyci50eHRVVAkAA4gsdFaILHRWdXgLAAEE9QEAAAQU
AAAAtVHdasIwFL73Kc4DDLHaau2G4OocgzkEGQ5kjNgc22BMuuR0srffie7HsbuBuQonX76/s+oM
siTJkqjd7w2f4Wpxczt/nM1HMCbCXU0PSHvrtjNrFFm3QGrqDIwl8EikTAlNDeaIgd0RdAlCSofe
g/KgbSF0a/WjEnfOpjLBAqIUPrW6gHsfdeL24REcFQ5r6wLdKo0GacI+JrhuylEGiimXiqoF8ylr
7szGZvA0zw8e0JAijfICou8g3XZ3EOriA1NVLsih2M21eEcHIz6wqTf+ZawJnRGE98pTXglTosyg
qKz1IVRQVWxNfMF4ApqhpzJp5+xbCSrdU5UZSiWmSmMudNFodna9HBuZV1hsc8FSMxS+cShhLYzc
K0lVYC25BE4CxEnBE99lSPQmnBKGQnBuILhz+Nqo3983zu6g34vjJAKy0I+H6TD54/A/deeNc7zC
k5ZrroEnrQ9QSwMEFAACAAgA+z6SR9zGV71TAQAA/AIAADAAHABodHRwL3Rlc3RzL21lZGlhL2hs
cy9obHMtYXVkaW8tdHJhY2tzLXN0ZGVyci50eHRVVAkAA4ksdFaJLHRWdXgLAAEE9QEAAAQUAAAA
tVHdSsMwFL7fU5wHkLFq221VBrNzIlgpDJkwRLLmtA1Lk5qcOnx7TzcGk90J5iqcfPn+zmY0TqIo
ia6HcRi9w93q4TF/zfIZzImwaekFaW/dLrNGkXUrpK5NwFgCj0TKVNC1YI4YaI6gWxBSOvQelAdt
C6EHmzOV+N9UFlhAMIGTFuDeB6NweHgER4XD1rqebjMJxpM+7QK3XTVLQDHlWlG9Yj5lzZMpbQJv
eXrwgIYUaZRXEJwHiUIm4ANLVa3IoWhyLb7RwYwPlG3pP+aa0BlB+Kw8pbUwFcoEitpa34fqVRVb
EycYT0Az9ELm37cSjc9VMpRKLJXGVOii0+zsfj03Mq2x2KWCpTIUvnMoYSuM3CtJdc9acQmcBIiT
gie+yz7Rl3BKGOqDcwO9O4efnfr9vXS2gfgmDKMAyEIcTifT6MLhX+pOO+d4hWctt1wDTwY/UEsD
BBQAAgAIAPs+kkehvrfBsQAAAJUBAAAsABwAaHR0cC90ZXN0cy9tZWRpYS9obHMvaGxzLXByb2dy
ZXNzLXN0ZGVyci50eHRVVAkAA4ksdFaJLHRWdXgLAAEE9QEAAAQUAAAAtY/RCoJAFETf+4r5gJBM
LdkiiIzooRAkCqSH0pst6a7sXvH3syLwB3ye4ZyZdDIXQSACz5lN/SuWyXYXnw7xCmtmqmo+Erfa
vA5aSdYmIW5qAaUZlpilKtDUUL8Oql9pgVueG7IW0qLU2a0cpT1LMJglogxuiL8L1Fp34jvfEIYz
Q7U2H1wauvPwsyOie1OsBGSHPEt+Jh1ParVXDy1wiTffDaRYckn5GG7/iDcb7MgbUEsDBBQAAgAI
APs+kkfLnmU8uQAAACoDAAA9ABwAaHR0cC90ZXN0cy9tZWRpYS9obHMvdmlkZW8tY29udHJvbGxl
ci1nZXRTdGFydERhdGUtc3RkZXJyLnR4dFVUCQADiix0VoosdFZ1eAsAAQT1AQAABBQAAADdj0EK
wjAURPeeYg4gpRVjaxRBrIgLpVBEobjQ9qvBmpTkF69vVQQvoKDrGebNy/xQCiFF1/N7/S2G6XSW
rBbJCGNmulS8JL4ae14YrdjYlLiuJLRhOGJW+oi6gn52cHmWBtgVhSXnoBxKk+/KVvZtSuj/OCWm
HEGEFwt0dYHf9R4hLOeWKmPvc1kUhJFofsS0r48jCdVMrhWf0mZPGT3XByOxSSaPD6RZcUlFG8Gb
iAg7/yLS+5jIDVBLAwQUAAIACAD5PpJHKAC66XsAAACuAAAAMgAcAGh0dHAvdGVzdHMvbWVkaWEv
bWVkaWEtZG9jdW1lbnQtcmVmZXJlci1zdGRlcnIudHh0VVQJAAOGLHRWhix0VnV4CwABBPUBAAAE
FAAAAJXNsQrCMBCA4b1PcQ8goQetrUFczOImOCiIQ41nehDuJDnx9a2P4PoP3x8oAo7QDr7vfbcB
+lRsO5c1ThmKxUIvLcaSriMOa7zB9iBP3XnImtKSodpUrDrnmvA3Fej+TovFwnZmm09UK6v8Dh4u
xz2IGpAYW6bHCrD5AlBLAwQKAAIAAAD5PpJHsPqWbmMAAABjAAAAKgAcAGh0dHAvdGVzdHMvbWVk
aWEvbWVkaWEtZG9jdW1lbnQtc3RkZXJyLnR4dFVUCQADhix0VoYsdFZ1eAsAAQT1AQAABBQAAABE
ZWMgMTggMDc6NTU6NTAgZXdzMTA0LmxvY2FsIHJ0Y3JlcG9ydGluZ1s4MTc2MV0gPERlYnVnPjog
aW5pdFdpdGhTZXNzaW9uSW5mbzogWFBDIG5vdCBlbnRpdGxlZCwgMQpQSwMECgACAAAA+z6SRzEm
F2VjAAAAYwAAADkAHABodHRwL3Rlc3RzL21lZGlhL21lZGlhLXBsYXktc3RyZWFtLWNodW5rZWQt
aWN5LXN0ZGVyci50eHRVVAkAA4ksdFaJLHRWdXgLAAEE9QEAAAQUAAAARGVjIDE4IDA3OjU1OjUx
IGV3czEwNC5sb2NhbCBydGNyZXBvcnRpbmdbODE3NjFdIDxEZWJ1Zz46IGluaXRXaXRoU2Vzc2lv
bkluZm86IFhQQyBub3QgZW50aXRsZWQsIDEKUEsDBAoAAAAAAAs/kkcAAAAAAAAAAAAAAAAeABwA
aHR0cC90ZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvVVQJAAOlLHRW3y10VnV4CwABBPUBAAAEFAAA
AFBLAwQUAAIACAD9PpJHRlyZrsUAAAD1AAAAQgAcAGh0dHAvdGVzdHMvbWVkaWEvbWVkaWEtc291
cmNlL21lZGlhc291cmNlLWFwcGVuZC1idWZmZXItc3RkZXJyLnR4dFVUCQADjix0Vo4sdFZ1eAsA
AQT1AQAABBQAAABFj0FLw0AQhe/+irm1PTSb1CaK4MVq0EOgUDxJKcPupF3czJTZidh/b3pQ4R0+
Ho/Hex/l3UNdTyqq5n4PveKxQ469pHDYjvn0dDHKkOORMSUKQKqPy6op1w3MP9v4F35RFT28M32f
yRuFN472jIYLmO/ICweY9XY5zwBNBiD2MrKRUlhMDridjOppg/5EbiNKHYWI/7Ss6mZVrNal26qY
TEWUXSs6oL0ih0SaXSdfkdx10hXa6chAbL/7Cg8pMkHV3JY3P1BLAwQUAAIACAD9PpJHpIyqBcYA
AAA4BAAAOwAcAGh0dHAvdGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNsb3Nl
ZC1zdGRlcnIudHh0VVQJAAOOLHRWjix0VnV4CwABBPUBAAAEFAAAANXSvQrCMBAH8N2nuBewNLFJ
Szc/FtFN0UEcru2pgTQpSarUpzfuLjooTnccHPfjz/GUiTHjY1ZAmpdClKJIBEuhtm2CXacp2VO1
UuFZ5tYEMiFZ0JW07drYHwomJ7Lk6UTm4gjLs7FOmXNcN8FZvVUtVegJPAWoBqi1iktQUY19nE53
G2zjjVl/OpFbKN9pHNY4kIMbesCmoQaCBQQ/mPrirFF3ciP+0szfNguW5b81Zx/kLH6cs/xDc/F/
v8HZB+Zcfsv8AFBLAwQUAAIACAAAP5JHK3P8q9IAAADfAgAAUAAcAGh0dHAvdGVzdHMvbWVkaWEv
bWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2UtbXA0LXYtYml0cmF0ZS1zdGRl
cnIudHh0VVQJAAOQLHRWkCx0VnV4CwABBPUBAAAEFAAAAOWPwWrCQBRF9/2Kt1MXZpLUjEHoRtvQ
LgKCdCVFHjMvOjiZJ28mpf5946L1I9xdLpfLOft8uaqqVVVntdZf0AkeWwyuY28P2yGe1tdEEaI7
BvSeLJDIy7zQ+ULD9Ny4//GbCMvhM9DPhUwi+xFcesWEM5juyHCwMOnS9TIBTNwDBcNDSCRkZ2MD
aseDGNqgOZHasFBL1uE9zYtKl1m5yNVWOPF4RFE1LD2mdwzWk0TV8rcjdUO6hWYU6SmkP77MgHeB
oNDP+dP+Lr0sH1G6fhTpX1BLAwQUAAIACAACP5JHZKF8PU0BAACTAwAAUgAcAGh0dHAvdGVzdHMv
bWVkaWEvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2UtbXA0LXYtZnJhbWVy
YXRlLXN0ZGVyci50eHRVVAkAA5MsdFaTLHRWdXgLAAEE9QEAAAQUAAAA5ZDPTuMwEMbvPMXcgEMT
JxBTKnGAdqtFu5WQusABITS1J621jicaOyzh6XElWHgHTvNpNH++31erqplU9aSagjqbNXqmVDE9
12C4K7DvPRX3tPnl0r7MOSQKqVjQM3nuu6wfppU+0bNaneiz5hGut4HFhW1eD0nY/3EdbTASREqw
GcF4l5dgQwaH3L28W2OXf1wNbUuycLH3OP7GkQT+YQS0liwkBoQ4BrMTDu6V5ODh3WlVqKZ+hFZw
u8LgWvb26WaIu6sxUYTotgG9zxdI5GJSaXWq4ejv0v0f/iHC8nQb6KUnk8heB5cWmPAYjtaUCSwc
tmnsDwETd0DB8JADELLHuQPlmgcxNEezo3LOQiuyDj/VpGp0XdSnqrwRTpwPUSyXLB2mnxisJ4nl
ip8dlXtLe7HMIPtQP/wVBrwLBDli9RVaV98RevpdoN8AUEsDBBQAAgAIAAM/kkfib+4pngAAALQA
AABNABwAaHR0cC90ZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtZW5kb2ZzdHJl
YW0taW52YWxpZGVycm9yLXN0ZGVyci50eHRVVAkAA5YsdFaWLHRWdXgLAAEE9QEAAAQUAAAAFY29
DoIwFEZ3n+K+AE0L4Uc2lcXoptHBOFzKBZuUlrRFU5/eOn0nJzn5ci7KTOSZaIDXbVm1vGC82YK0
M8Nl0cTu1J9U+M/BmkAmsI7epO0yJ340oiqqNuelqKsnHCdjnTJTyk1wVl/VTD16Ak8B+ghSqxRB
TxLXZHe3C87pY7+OI7lO+UVjPGMkBx/0gMNAAwQLCD4a+XLWqC+5zQ9QSwMEFAACAAgABz+SR5ov
Pm6dAAAAtAAAADsAHABodHRwL3Rlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1y
ZW1vdmUtc3RkZXJyLnR4dFVUCQADnix0Vp4sdFZ1eAsAAQT1AQAABBQAAAAVjbEOgjAURXe/4v0A
TYuhEDaVxeim0cE4POCBTUrbtEVTv9463ZOTnNySi6oQZSEa4HVbyVYIxqsaBrswdE4Tu1N/UvE/
B2simcg6epO2bsn8aITcyrbkshHiCcfZWK/MnHMTvdVXtVCPgSBQhD7BoFWOoKcB12x3twsu+WO/
ThP5TgWnMZ0xkYcPBsBxpBGiBYSQzPDy1qgv+c0PUEsDBBQAAgAIAAk/kkcFZ5yPwQAAAIQDAABG
ABwAaHR0cC90ZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2Utc291cmNlYnVmZmVy
LW1vZGUtc3RkZXJyLnR4dFVUCQADoix0VqIsdFZ1eAsAAQT1AQAABBQAAADV0j0OwjAMBeCdU/gC
VEnatKUbPwuCDQQDYnBbA5HSpEoCqJyesLMwAZMtS0/vGywYl2MuxrwEVlQyr3iWpJMUGtsl2Pea
kj3VKxVeY25NIBOSBd1I276L+6HkeZpXgqUsK4+wPBvrlDnHuAnO6q3qqEZP4ClAPUCjVQxBTQ1e
43W622AXO2bX04ncQvle47DGgRzc0QO2LbUQLCD4wTQXZ416kBuJN+aMsc/NeSG/ay4+NkueFV81
C/aHZvnTv/EEUEsDBBQAAgAIAAs/kkfumb7psAAAABwCAABFABwAaHR0cC90ZXN0cy9tZWRpYS9t
ZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2Utc291cmNlYnVmZmVybGlzdC1zdGRlcnIudHh0VVQJAAOl
LHRWpSx0VnV4CwABBPUBAAAEFAAAANWOsQ6CMBRFd7/i/YCEVijIprIY3TQ6GIcHPLBJaUlbNPj1
1t3JwcTp3tzk5B4es3TO+JzlEGdFKgqWR4nIoTZ9hMOgKDpTtZP+HRujPWkflXQnZYY+9EvOxEIU
PF5mMb/CttPGSt0FXHtr1FH2VKEjcOShmqBWMkBQUY1jWFenA/bhYz22LdlSukHhtMeJLDzQATYN
NeANILhJ1zdrtHySnfFPzhn7Q2fxjXPyK+cXUEsDBBQAAgAIAPs+kkdCBX7w7gAAAF8BAAAtABwA
aHR0cC90ZXN0cy9tZWRpYS9wZGYtc2VydmVkLWFzLXBkZi1zdGRlcnIudHh0VVQJAAOJLHRWiSx0
VnV4CwABBPUBAAAEFAAAAIWPvW7DMAyE9zwFp2y2HKeuEwFGESQtOnQojHQKOigWYwvQXyWqQN6+
MtpkLbnc4TsS5KlqedPwZl0+1u0nvB6P7z1+JYwEFzXO9pCMf1FW6I/+bWdlj8YR7qQMGCMH8Stg
VbdllXuVx3IWUtAwEXnO2B3xTVVVzKBUgn0ria6gKTgijbLQTshyGNWTFQa7vNKlMGBklC8pvbws
b9FuO9eSrh474b1WgyDlLMuZxenfZ/7sPqAgfA7Bhb0zBi1xQDu4ZAkDShAWcIYczldCCMKOCBrt
SBMYFY2gYYIC4uSSlnC+sxpUvOl2u3lY/ABQSwMECgACAAAA+z6SRzOfFHJjAAAAYwAAAC8AHABo
dHRwL3Rlc3RzL21lZGlhL3JlbG9hZC1hZnRlci1kaWFsb2ctc3RkZXJyLnR4dFVUCQADiix0Voos
dFZ1eAsAAQT1AQAABBQAAABEZWMgMTggMDc6NTU6NTMgZXdzMTA0LmxvY2FsIHJ0Y3JlcG9ydGlu
Z1s4MTc2MV0gPERlYnVnPjogaW5pdFdpdGhTZXNzaW9uSW5mbzogWFBDIG5vdCBlbnRpdGxlZCwg
MQpQSwMEFAACAAgA+z6SR7/da53pAAAAWgEAAC8AHABodHRwL3Rlc3RzL21lZGlhL3RleHQtc2Vy
dmVkLWFzLXRleHQtc3RkZXJyLnR4dFVUCQADiix0VoosdFZ1eAsAAQT1AQAABBQAAACFTz1PwzAQ
3fsrbuqW2C2JCpYiVBUQAwOKylQxuPE1tuSPYJ9R++9xBO3K3fKe3rt3dwe+EW0r2qa+5/wTXvf7
9x6/MiaCkxln+pTd9GK8tB/929arHl0g3CoVMSUB8hfAar2peelVGSteyNGCJpoEYzdJlBWcOVRG
sm+jMFSkYyCyqCobpKqH0Tx66bArkSHHAROjcklNZ1perd3DXEu6TNgRnolNVhq/OPz7xx/dRZSE
zzGGuAvOoScB6IeQPWFEBdIDzqKA44UQovQjgkU/kgZnkpM0aKgg6ZCtguNNW4NJV9w0/G7xA1BL
AwQUAAIACAD8PpJHXsrR9rIAAACVAQAANgAcAGh0dHAvdGVzdHMvbWVkaWEvdHJhY2staW4tYmFu
ZC1obHMtbWV0YWRhdGEtc3RkZXJyLnR4dFVUCQADjCx0VowsdFZ1eAsAAQT1AQAABBQAAAC1j9EK
gkAURN/7ivmAiDa0dAshKqKHQpAokB5Mb7Zku7J7pd/PksAf6HmGc2bS8Uz6vvS9URBOLlgkm218
3McRlsz0rPlA/DL2sTdasbEJcVNLaMNwxKx0iaaG7jp4dqU5sqKw5ByUQ2XyrBqkPYv3N8uacogA
Pxfo5cTYG31DWM4t1cZ+cGkgZlPR7ljTtSkjCdUiT4rvSctTRu/0zUic49V3A2lWXFExhOgdCUX4
tyNvUEsDBBQAAgAIAPw+kkexstU79wAAAPkBAAAmABwAaHR0cC90ZXN0cy9tZWRpYS92aWRlby1h
dXRoLXN0ZGVyci50eHRVVAkAA4wsdFaMLHRWdXgLAAEE9QEAAAQUAAAA1Y/BSsQwEIbvfYo5umDT
JN1u1yCCtAgiyGIPK8ge0jhuo2kS0nRXfHojC+rBF/A0/8A/zPdxyqqc8ZytgdaiqkS1IvyCg3Ij
kd4bJFvs73T8Go2zEW0kLR7QOD+m/LRm9YoJTstlSXdw2qC5ucd4dOENdLoIVhrAEFyAM/quKJOi
6NwcFDZSDVh8t39SXnNKKlIXm+BeUcWH2UY9YtFh0NLoD9kbvA5q0AckyvsETRcZ/1Ol/GcqbFUu
shYV/NIAPE6MLolxKv0PUQX0LkRt9yfoHVy22M/7K5EoddzqOHQ4TdrZW/viBDxuGrAuQrLU0eDz
ObDsE1BLAwQKAAIAAAD9PpJHtjGSV2MAAABjAAAALQAcAGh0dHAvdGVzdHMvbWVkaWEvdmlkZW8t
ZXJyb3ItYWJvcnQtc3RkZXJyLnR4dFVUCQADjSx0Vo0sdFZ1eAsAAQT1AQAABBQAAABEZWMgMTgg
MDc6NTU6NTYgZXdzMTA0LmxvY2FsIHJ0Y3JlcG9ydGluZ1s4MTc2MV0gPERlYnVnPjogaW5pdFdp
dGhTZXNzaW9uSW5mbzogWFBDIG5vdCBlbnRpdGxlZCwgMQpQSwMEFAACAAgA/T6SR/DUBNKzAAAA
IwEAADYAHABodHRwL3Rlc3RzL21lZGlhL3ZpZGVvLWVycm9yLWRvZXMtbm90LWV4aXN0LXN0ZGVy
ci50eHRVVAkAA44sdFaOLHRWdXgLAAEE9QEAAAQUAAAAlY4xC8IwEIV3f8WNOrRNtdWaTRRxcJBQ
J3GozanBtIlJKv58TyqOgtzyHu897juwGc9znhfxdMqOsCnLncB7hz7AWV02IdiPXSkpsEb1QIHe
mtbjstL6VNU3Dq4PJFypT67PIWMZDNE54yBKx/NJMYIz6XeJJ0k6nsWMLuUFYyyRBn3UmhDhU/kQ
NxYvg8NvOLKrrrFr1VZ6L7aLlggbE3AhJTF4DlUv4PuKZtSFzuk/KF5QSwMEFAACAAgAAD+SR06h
Pw9oAAAAxgAAACwAHABodHRwL3Rlc3RzL21lZGlhL3ZpZGVvLWxvYWQtdHdpY2Utc3RkZXJyLnR4
dFVUCQADkCx0VpAsdFZ1eAsAAQT1AQAABBQAAABzSU1WMLRQMDC3MjWzMjBQSC0vNjQw0cvJT07M
USgqSS5KLcgvKsnMS4+2MDQ3M4xVsHFJTSpNt7NSyMzLLAnPLMkITi0uzszP88xLy7dSiAhwVsjL
L1FIzSvJLMlJTdFRMORyob0VAFBLAwQKAAIAAAABP5JHmtMuC2MAAABjAAAALwAcAGh0dHAvdGVz
dHMvbWVkaWEvdmlkZW8tcGxheS1wcm9ncmVzcy1zdGRlcnIudHh0VVQJAAORLHRWkSx0VnV4CwAB
BPUBAAAEFAAAAERlYyAxOCAwNzo1NjowMCBld3MxMDQubG9jYWwgcnRjcmVwb3J0aW5nWzgxNzYx
XSA8RGVidWc+OiBpbml0V2l0aFNlc3Npb25JbmZvOiBYUEMgbm90IGVudGl0bGVkLCAxClBLAwQU
AAIACAACP5JHBkdjeq0AAAAvAQAAKgAcAGh0dHAvdGVzdHMvbWVkaWEvdmlkZW8tcmVkaXJlY3Qt
c3RkZXJyLnR4dFVUCQADlCx0VpQsdFZ1eAsAAQT1AQAABBQAAAC9zs2KwjAUxfG9T3EeQCVB24Yw
CH5s3IldjFBcdNpbGww3ktyi+PRmM6/gf3/4nUZVtiitWi8LU17xk8P+vN3V2OQw+CmNJ+Le8e1M
ntpENYlFo17VYFRbmFVfrdUVOx+6OxTGNoEDL94UAyIN6MLEAj07UAdt8M+BnklnNc9ajyhdpEeI
kpnG6KrU+cqB/qbbxsKxk18nY00pucBHHoLF5bTPjoBYnHjq598hPlBLAwQKAAIAAAADP5JHH32o
LmMAAABjAAAAKwAcAGh0dHAvdGVzdHMvbWVkaWEvdmlkZW8tdXNlcmFnZW50LXN0ZGVyci50eHRV
VAkAA5UsdFaVLHRWdXgLAAEE9QEAAAQUAAAARGVjIDE4IDA3OjU2OjA1IGV3czEwNC5sb2NhbCBy
dGNyZXBvcnRpbmdbODE3NjFdIDxEZWJ1Zz46IGluaXRXaXRoU2Vzc2lvbkluZm86IFhQQyBub3Qg
ZW50aXRsZWQsIDEKUEsDBAoAAAAAABg/kkcAAAAAAAAAAAAAAAAQABwAaHR0cC90ZXN0cy9taXNj
L1VUCQADwCx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAAT+SR7m00grTAAAAFwEAAD8A
HABodHRwL3Rlc3RzL21pc2MvZGVsZXRlLWZyYW1lLWR1cmluZy1yZWFkeXN0YXRlY2hhbmdlLXN0
ZGVyci50eHRVVAkAA5IsdFaSLHRWdXgLAAEE9QEAAAQUAAAATY5BS8NAEIXv/RXvqGDDbmpruoiX
xF4MUhDxUEpZk2kd3OyGzTSiv94NKPSDYWbgwftypZdznc91AXVnliuj8mytFmhCl9m+d5S90fsT
y7TK4IW8ZBWN5ELfpXtX6NW6MLlKLPbYxtBTlG84HgTsR+u4xTHEaTorBlopXPWXsQGN9T5IqvRi
2eP5ta6vZ7sLnds97hPYVOX2UHPHQi0eEtjw6e+vePgsbfNByWHkluLhheTfx+AxxmTxFVnYnxDO
qW4K48iObiDx7BsrBAn4oRhmv1BLAwQUAAIACAABP5JHf83JS9QAAAAXAQAAWwAcAGh0dHAvdGVz
dHMvbWlzYy9kZWxldGUtZnJhbWUtZHVyaW5nLXJlYWR5c3RhdGVjaGFuZ2Utd2l0aC1nYy1hZnRl
ci12aWRlby1yZW1vdmFsLXN0ZGVyci50eHRVVAkAA5IsdFaSLHRWdXgLAAEE9QEAAAQUAAAATY5B
S8NAEIXv/RXvaMGG3WjTNEgvib0YpCDioZSyJtM6mOwum2lEf70bUOgHw8zAg/elSi8XOl3oHGpV
LLNCpUl+n6FxfWK87yh5o/cnlmmVzgpZSSoaqXO+j/c+19k6L1IVuTtgF5ynIN/oeBCwHU3HLU4u
TNMbKaCVwo2/jg1ojLVOYqUVwxbPr3U9n+2vdFYHPESwrcrdseaehVpsItjy+e+vePgsTfNB0WHk
lsLxheTfp8BjCNHiK7CwPcNdYt0Uxok7uoWEi22MEMThh4Kb/QJQSwMEFAACAAgAGD+SRxU1NZJ6
AAAAvAAAACoAHABodHRwL3Rlc3RzL21pc2MveHNsdC1iYWQtaW1wb3J0LXN0ZGVyci50eHRVVAkA
A8AsdFbALHRWdXgLAAEE9QEAAAQUAAAAjY5BDsMgDATveYU/QCDtoRW/IcRVLBmMjJH6/BLlA9Ve
VjuH2SylEScjqYCqohE+xAinWYveb4/XGma2+A4h+EI9e8UuQzN2/+1sbk+Ho9JEzQ2ldW7AVBGe
gIwFq8FNl0niXSHCqGmfGhNgScd/uip95PO6lywxLz9QSwMECgAAAAAA/D6SRwAAAAAAAAAAAAAA
ABYAHABodHRwL3Rlc3RzL25hdmlnYXRpb24vVVQJAAOMLHRW3y10VnV4CwABBPUBAAAEFAAAAFBL
AwQUAAIACAD8PpJH2wjTQjsAAAA/AAAANwAcAGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9mYWxsYmFj
ay1hbmNob3ItcmVsb2FkLXN0ZGVyci50eHRVVAkAA4wsdFaMLHRWdXgLAAEE9QEAAAQUAAAAcywp
Sc0tKFEoyVdIzSssTS1NVUhUKM8vylbIBEoolGdk5qQqQMQzixWSUjPz0hUKivKTU4uLU1P0uABQ
SwMECgAAAAAABT+SRwAAAAAAAAAAAAAAABQAHABodHRwL3Rlc3RzL3NlY3VyaXR5L1VUCQADmSx0
Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMECgAAAAAABD+SRwAAAAAAAAAAAAAAACoAHABodHRwL3Rl
c3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9VVAkAA5csdFbfLXRWdXgLAAEE9QEA
AAQUAAAAUEsDBAoAAAAAAPw+kkcAAAAAAAAAAAAAAAA9ABwAaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvdXNlckFnZW50U2hhZG93RE9NL1VUCQADiyx0Vt8tdFZ1eAsA
AQT1AQAABBQAAABQSwMEFAACAAgA+z6SR0dgZJJ6AAAArgAAAFMAHABodHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS91c2VyQWdlbnRTaGFkb3dET00vYWxsb3ctYXVkaW8t
c3RkZXJyLnR4dFVUCQADiix0VoosdFZ1eAsAAQT1AQAABBQAAACVzTEKAjEQQNF+TzEHkJDARkMQ
G9NsJ1goiMUaxzgQZiQZ8fquR7D9xfsJM7gAdhO9j34E/HRnR1MlzxWa5oYvaUpcLsGtg73CduKH
7CJUKWXJ0HVu2o0xQ/qbSnh7l8UiJj2RPo/YOwn/DhHOhz2wKCAracX7CtzwBVBLAwQKAAIAAAD8
PpJHYO87H2MAAABjAAAAUwAcAGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L3VzZXJBZ2VudFNoYWRvd0RPTS9hbGxvdy12aWRlby1zdGRlcnIudHh0VVQJAAOLLHRWiyx0
VnV4CwABBPUBAAAEFAAAAERlYyAxOCAwNzo1NTo1NSBld3MxMDQubG9jYWwgcnRjcmVwb3J0aW5n
WzgxNjgwXSA8RGVidWc+OiBpbml0V2l0aFNlc3Npb25JbmZvOiBYUEMgbm90IGVudGl0bGVkLCAx
ClBLAwQUAAIACAAEP5JHY6qsbIIAAACoAAAAQAAcAGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVu
dFNlY3VyaXR5UG9saWN5L3hzbC1hbGxvd2VkLXN0ZGVyci50eHRVVAkAA5csdFaXLHRWdXgLAAEE
9QEAAAQUAAAALY1BCsMwDATveYVeEDu9pPgVhb4guBtiUCwjKaX+fU0pe1qG2c1ytsKbF6kEVdFE
e2HQ4d5SCMttnePIku4xxmDIlxbvIUt1VH/++0O45B4UJpdmWDDvjPljTFwqaCUwziHQD9gB+DRo
ekNtXCeSyp2WOdKOza8xRJuC7GpN1PGavlBLAwQUAAIACAAEP5JHY6qsbIIAAACoAAAAUgAcAGh0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3hzbC11bmFmZmVjdGVkLWJ5
LXN0eWxlLXNyYy0yLXN0ZGVyci50eHRVVAkAA5csdFaXLHRWdXgLAAEE9QEAAAQUAAAALY1BCsMw
DATveYVeEDu9pPgVhb4guBtiUCwjKaX+fU0pe1qG2c1ytsKbF6kEVdFEe2HQ4d5SCMttnePIku4x
xmDIlxbvIUt1VH/++0O45B4UJpdmWDDvjPljTFwqaCUwziHQD9gB+DRoekNtXCeSyp2WOdKOza8x
RJuC7GpN1PGavlBLAwQUAAIACAAAP5JH3LivwXsAAACuAAAAPQAcAGh0dHAvdGVzdHMvc2VjdXJp
dHkvbG9jYWwtdmlkZW8tc291cmNlLWZyb20tcmVtb3RlLXN0ZGVyci50eHRVVAkAA48sdFaPLHRW
dXgLAAEE9QEAAAQUAAAAlc2xCsIwEIDhvU9xDyChQWNrEBezdCs4KIhDjWd6EO4kOfH1rY/g+g/f
HzCC7aHtvHPe7QA/1bYbkyVOGYrGgi8pSpyuve3W2xvsB37KwUOWlJYMVaei1RjThL+pgPd3Wixi
0jPpfMJaSfh38HAZj8CigKykGR8rsM0XUEsDBAoAAAAAAPw+kkcAAAAAAAAAAAAAAAAhABwAaHR0
cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQvVVQJAAOMLHRW3y10VnV4CwABBPUBAAAEFAAA
AFBLAwQUAAIACAD8PpJH3Hcfx3wAAAARAQAATgAcAGh0dHAvdGVzdHMvc2VjdXJpdHkvbWl4ZWRD
b250ZW50L2luc2VjdXJlLWF1ZGlvLXZpZGVvLWluLW1haW4tZnJhbWUtc3RkZXJyLnR4dFVUCQAD
jCx0VowsdFZ1eAsAAQT1AQAABBQAAAC9zTEKAjEQQNHeU8wBJOyAWZcgNqbZTrBQEIs1jnEgzEgy
4vVdj2Bj+4v3IyXAAbp18D74HujdsFu5omkqUC1Vemo1lnwesEd/gc0od90GKJrznKHZVK055xbx
ZyrS9ZVni4XtyPY4UGus8j0EOO13IGpAYmyFbkvAfyw+UEsDBBQAAgAIAAU/kkdgS2YQkQAAAPsB
AABFABwAaHR0cC90ZXN0cy9zZWN1cml0eS94c3MtREVOSUVELXhzbC1kb2N1bWVudC1zZWN1cml0
eU9yaWdpbi1zdGRlcnIudHh0VVQJAAOZLHRWmSx0VnV4CwABBPUBAAAEFAAAAO2OMQ6DMAxFd07h
C4QEllaZYejSngEFUyKZJLKdCm5fOvQGHau/vq/3Qt5KpEljToDMmT0skRBW1eKt7fpL6851/uqc
s4KhctTD7iJmGO+3cTC7kJlzqBsmNV/gwfEZU7tvBBQTQg9I+CFA9CCUFVGb8+lfyHK6PeREB3St
gwUnrYwCEyNILSWz4tyEf+iPQ99QSwMEFAACAAgAuT6SRzUTxpqZBQAAERAAAAoAHABodHRwZC5j
b25mVVQJAAMOLHRW1C10VnV4CwABBPUBAAAEFAAAAK1XbW/bNhD+rl9BuDCwFZOcuHHnFUEA13Ga
LEmdWU4DLEkNWqIk1hKpkVRie+t++46U5RfJ0QJsNmCLx+e5Ox6Px5NLxBMRI84VarQyKRqWdZ0p
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
A54sdFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAAAg/kkcAAAAAAAAAAAAAAAAaABwAaW1w
b3J0ZWQvYmxpbmsvZmFzdC9mb3Jtcy9VVAkAA58sdFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBAoA
AAAAAAc/kkcAAAAAAAAAAAAAAAAhABwAaW1wb3J0ZWQvYmxpbmsvZmFzdC9mb3Jtcy9idXR0b24v
VVQJAAOeLHRW3y10VnV4CwABBPUBAAAEFAAAAFBLAwQUAAIACAAHP5JHxyHv2zcAAABAAAAARwAc
AGltcG9ydGVkL2JsaW5rL2Zhc3QvZm9ybXMvYnV0dG9uL2J1dHRvbi1yZXNldC1mb2N1cy1ieS1t
b3VzZS1zdGRlcnIudHh0VVQJAAOeLHRWnix0VnV4CwABBPUBAAAEFAAAAMvNLy1O9c0vSw3JV0hL
zMxJTVEoAbIy81IUEhVKEovSU0sUyjJTyxUSSxQsDAz0DMBAB8bgAgBQSwMECgAAAAAACD+SRwAA
AAAAAAAAAAAAACAAHABpbXBvcnRlZC9ibGluay9mYXN0L2Zvcm1zL3JhbmdlL1VUCQADnyx0Vt8t
dFZ1eAsAAQT1AQAABBQAAABQSwMEFAACAAgACD+SR8ch79s3AAAAQAAAAD8AHABpbXBvcnRlZC9i
bGluay9mYXN0L2Zvcm1zL3JhbmdlL3JhbmdlLWZvY3VzLWJ5LW1vdXNlLXN0ZGVyci50eHRVVAkA
A58sdFafLHRWdXgLAAEE9QEAAAQUAAAAy80vLU71zS9LDclXSEvMzElNUSgBsjLzUhQSFUoSi9JT
SxTKMlPLFRJLFCwMDPQMwEAHxuACAFBLAwQKAAAAAAAIP5JHAAAAAAAAAAAAAAAAIQAcAGltcG9y
dGVkL2JsaW5rL2Zhc3QvZm9ybXMvc3VibWl0L1VUCQADnyx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQ
SwMEFAACAAgACD+SR8ch79s3AAAAQAAAAEEAHABpbXBvcnRlZC9ibGluay9mYXN0L2Zvcm1zL3N1
Ym1pdC9zdWJtaXQtZm9jdXMtYnktbW91c2Utc3RkZXJyLnR4dFVUCQADnyx0Vp8sdFZ1eAsAAQT1
AQAABBQAAADLzS8tTvXNL0sNyVdIS8zMSU1RKAGyMvNSFBIVShKL0lNLFMoyU8sVEksULAwM9AzA
QAfG4AIAUEsDBAoAAAAAABQ/kkcAAAAAAAAAAAAAAAANABwAaW1wb3J0ZWQvdzNjL1VUCQADtyx0
Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMECgAAAAAAFD+SRwAAAAAAAAAAAAAAACAAHABpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1VUCQADtyx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwME
CgAAAAAAFD+SRwAAAAAAAAAAAAAAACUAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvVVQJAAO3LHRW3y10VnV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAAAUP5JHAAAAAAAAAAAA
AAAALwAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvVVQJ
AAO3LHRW3y10VnV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAAAVP5JHAAAAAAAAAAAAAAAAQAAcAGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29u
dGVudC9VVAkAA7ksdFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAABs/kkcAAAAAAAAAAAAA
AABPABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJl
ZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL1VUCQADxSx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQ
SwMEFAACAAgAFD+SR2gVuUdoAAAAxgAAAGcAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvZXZlbnRf
Y2FucGxheS1zdGRlcnIudHh0VVQJAAO3LHRWtyx0VnV4CwABBPUBAAAEFAAAAHNJTVYwtFAwMLcy
NbMytlBILS82NDDRy8lPTsxRKCpJLkotyC8qycxLj7YwNLcwjVWwcUlNKk23s1LIzMssCc8syQhO
LS7OzM/zzEvLt1KICHBWyMsvUUjNK8ksyUlN0VEw5HKhvRUAUEsDBBQAAgAIABQ/kkdsRdy5aAAA
AMYAAAByABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9l
bWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL2V2ZW50X2NhbnBsYXlfbm9hdXRvcGxheS1z
dGRlcnIudHh0VVQJAAO3LHRWtyx0VnV4CwABBPUBAAAEFAAAAHNJTVYwtFAwMLcyNbMytlRILS82
NDDRy8lPTsxRKCpJLkotyC8qycxLj7YwNLcwjVWwcUlNKk23s1LIzMssCc8syQhOLS7OzM/zzEvL
t1KICHBWyMsvUUjNK8ksyUlN0VEw5HKhvRUAUEsDBBQAAgAIABQ/kkdsRdy5aAAAAMYAAABuABwA
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1j
b250ZW50L21lZGlhLWVsZW1lbnRzL2V2ZW50X2NhbnBsYXl0aHJvdWdoLXN0ZGVyci50eHRVVAkA
A7csdFa3LHRWdXgLAAEE9QEAAAQUAAAAc0lNVjC0UDAwtzI1szK2VEgtLzY0MNHLyU9OzFEoKkku
Si3ILyrJzEuPtjA0tzCNVbBxSU0qTbezUsjMyywJzyzJCE4tLs7Mz/PMS8u3UogIcFbIyy9RSM0r
ySzJSU3RUTDkcqG9FQBQSwMEFAACAAgAFD+SR7Pqrc9oAAAAxgAAAHkAHABpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEt
ZWxlbWVudHMvZXZlbnRfY2FucGxheXRocm91Z2hfbm9hdXRvcGxheS1zdGRlcnIudHh0VVQJAAO4
LHRWuCx0VnV4CwABBPUBAAAEFAAAAHNJTVYwtFAwMLcyNbMyMVBILS82NDDRy8lPTsxRKCpJLkot
yC8qycxLj7YwNLcwjVWwcUlNKk23s1LIzMssCc8syQhOLS7OzM/zzEvLt1KICHBWyMsvUUjNK8ks
yUlN0VEw5HKhvRUAUEsDBBQAAgAIABQ/kkez6q3PaAAAAMYAAAB1ABwAaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L21lZGlhLWVs
ZW1lbnRzL2V2ZW50X2xvYWRlZGRhdGFfbm9hdXRvcGxheS1zdGRlcnIudHh0VVQJAAO4LHRWuCx0
VnV4CwABBPUBAAAEFAAAAHNJTVYwtFAwMLcyNbMyMVBILS82NDDRy8lPTsxRKCpJLkotyC8qycxL
j7YwNLcwjVWwcUlNKk23s1LIzMssCc8syQhOLS7OzM/zzEvLt1KICHBWyMsvUUjNK8ksyUlN0VEw
5HKhvRUAUEsDBBQAAgAIABU/kke3usgxaAAAAMYAAABuABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRz
L2V2ZW50X2xvYWRlZG1ldGFkYXRhLXN0ZGVyci50eHRVVAkAA7ksdFa5LHRWdXgLAAEE9QEAAAQU
AAAAc0lNVjC0UDAwtzI1szIxVEgtLzY0MNHLyU9OzFEoKkkuSi3ILyrJzEuPtjA0tzCNVbBxSU0q
TbezUsjMyywJzyzJCE4tLs7Mz/PMS8u3UogIcFbIyy9RSM0rySzJSU3RUTDkcqG9FQBQSwMEFAAC
AAgAFT+SR7e6yDFoAAAAxgAAAHkAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvZXZlbnRfbG9hZGVk
bWV0YWRhdGFfbm9hdXRvcGxheS1zdGRlcnIudHh0VVQJAAO5LHRWuSx0VnV4CwABBPUBAAAEFAAA
AHNJTVYwtFAwMLcyNbMyMVRILS82NDDRy8lPTsxRKCpJLkotyC8qycxLj7YwNLcwjVWwcUlNKk23
s1LIzMssCc8syQhOLS7OzM/zzEvLt1KICHBWyMsvUUjNK8ksyUlN0VEw5HKhvRUAUEsDBBQAAgAI
ABU/kkf6TBboaAAAAMYAAABpABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL2V2ZW50X2xvYWRzdGFy
dC1zdGRlcnIudHh0VVQJAAO6LHRWuix0VnV4CwABBPUBAAAEFAAAAHNJTVYwtFAwMLcyNbMyMVJI
LS82NDDRy8lPTsxRKCpJLkotyC8qycxLj7YwNLcwjVWwcUlNKk23s1LIzMssCc8syQhOLS7OzM/z
zEvLt1KICHBWyMsvUUjNK8ksyUlN0VEw5HKhvRUAUEsDBBQAAgAIABU/kkf6TBboaAAAAMYAAAB0
ABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRl
ZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL2V2ZW50X2xvYWRzdGFydF9ub2F1dG9wbGF5LXN0ZGVy
ci50eHRVVAkAA7osdFa6LHRWdXgLAAEE9QEAAAQUAAAAc0lNVjC0UDAwtzI1szIxUkgtLzY0MNHL
yU9OzFEoKkkuSi3ILyrJzEuPtjA0tzCNVbBxSU0qTbezUsjMyywJzyzJCE4tLs7Mz/PMS8u3UogI
cFbIyy9RSM0rySzJSU3RUTDkcqG9FQBQSwMEFAACAAgAFj+SR/4ccxZoAAAAxgAAAHwAHABpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRl
bnQvbWVkaWEtZWxlbWVudHMvZXZlbnRfb3JkZXJfY2FucGxheV9jYW5wbGF5dGhyb3VnaC1zdGRl
cnIudHh0VVQJAAO7LHRWuyx0VnV4CwABBPUBAAAEFAAAAHNJTVYwtFAwMLcyNbMyMVZILS82NDDR
y8lPTsxRKCpJLkotyC8qycxLj7YwNLcwjVWwcUlNKk23s1LIzMssCc8syQhOLS7OzM/zzEvLt1KI
CHBWyMsvUUjNK8ksyUlN0VEw5HKhvRUAUEsDBBQAAgAIABY/kkf+HHMWaAAAAMYAAAB1ABwAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250
ZW50L21lZGlhLWVsZW1lbnRzL2V2ZW50X29yZGVyX2NhbnBsYXlfcGxheWluZy1zdGRlcnIudHh0
VVQJAAO7LHRWuyx0VnV4CwABBPUBAAAEFAAAAHNJTVYwtFAwMLcyNbMyMVZILS82NDDRy8lPTsxR
KCpJLkotyC8qycxLj7YwNLcwjVWwcUlNKk23s1LIzMssCc8syQhOLS7OzM/zzEvLt1KICHBWyMsv
UUjNK8ksyUlN0VEw5HKhvRUAUEsDBBQAAgAIABY/kkchptqAaAAAAMYAAAB/ABwAaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L21l
ZGlhLWVsZW1lbnRzL2V2ZW50X29yZGVyX2xvYWRlZG1ldGFkYXRhX2xvYWRlZGRhdGEtc3RkZXJy
LnR4dFVUCQADvCx0VrwsdFZ1eAsAAQT1AQAABBQAAABzSU1WMLRQMDC3MjWzMjFRSC0vNjQw0cvJ
T07MUSgqSS5KLcgvKsnMS4+2MDS3MI1VsHFJTSpNt7NSyMzLLAnPLMkITi0uzszP88xLy7dSiAhw
VsjLL1FIzSvJLMlJTdFRMORyob0VAFBLAwQUAAIACAAWP5JHIabagGgAAADGAAAAeAAcAGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVu
dC9tZWRpYS1lbGVtZW50cy9ldmVudF9vcmRlcl9sb2Fkc3RhcnRfcHJvZ3Jlc3Mtc3RkZXJyLnR4
dFVUCQADvCx0VrwsdFZ1eAsAAQT1AQAABBQAAABzSU1WMLRQMDC3MjWzMjFRSC0vNjQw0cvJT07M
USgqSS5KLcgvKsnMS4+2MDS3MI1VsHFJTSpNt7NSyMzLLAnPLMkITi0uzszP88xLy7dSiAhwVsjL
L1FIzSvJLMlJTdFRMORyob0VAFBLAwQUAAIACAAXP5JHIabagGgAAADGAAAAZQAcAGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9t
ZWRpYS1lbGVtZW50cy9ldmVudF9wYXVzZS1zdGRlcnIudHh0VVQJAAO9LHRWvSx0VnV4CwABBPUB
AAAEFAAAAHNJTVYwtFAwMLcyNbMyMVFILS82NDDRy8lPTsxRKCpJLkotyC8qycxLj7YwNLcwjVWw
cUlNKk23s1LIzMssCc8syQhOLS7OzM/zzEvLt1KICHBWyMsvUUjNK8ksyUlN0VEw5HKhvRUAUEsD
BBQAAgAIABc/kkcl9r9+aAAAAMYAAABwABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL2V2ZW50X3Bh
dXNlX25vYXV0b3BsYXktc3RkZXJyLnR4dFVUCQADvSx0Vr0sdFZ1eAsAAQT1AQAABBQAAABzSU1W
MLRQMDC3MjWzMjFVSC0vNjQw0cvJT07MUSgqSS5KLcgvKsnMS4+2MDS3MI1VsHFJTSpNt7NSyMzL
LAnPLMkITi0uzszP88xLy7dSiAhwVsjLL1FIzSvJLMlJTdFRMORyob0VAFBLAwQUAAIACAAXP5JH
Jfa/fmgAAADGAAAAZAAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1h
bnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9ldmVudF9wbGF5LXN0ZGVyci50
eHRVVAkAA70sdFa9LHRWdXgLAAEE9QEAAAQUAAAAc0lNVjC0UDAwtzI1szIxVUgtLzY0MNHLyU9O
zFEoKkkuSi3ILyrJzEuPtjA0tzCNVbBxSU0qTbezUsjMyywJzyzJCE4tLs7Mz/PMS8u3UogIcFbI
yy9RSM0rySzJSU3RUTDkcqG9FQBQSwMEFAACAAgAFz+SR2gAYadoAAAAxgAAAG8AHABpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQv
bWVkaWEtZWxlbWVudHMvZXZlbnRfcGxheV9ub2F1dG9wbGF5LXN0ZGVyci50eHRVVAkAA74sdFa+
LHRWdXgLAAEE9QEAAAQUAAAAc0lNVjC0UDAwtzI1szIxU0gtLzY0MNHLyU9OzFEoKkkuSi3ILyrJ
zEuPtjA0tzCNVbBxSU0qTbezUsjMyywJzyzJCE4tLs7Mz/PMS8u3UogIcFbIyy9RSM0rySzJSU3R
UTDkcqG9FQBQSwMEFAACAAgAFz+SR2gAYadoAAAAxgAAAGcAHABpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVu
dHMvZXZlbnRfcGxheWluZy1zdGRlcnIudHh0VVQJAAO+LHRWvix0VnV4CwABBPUBAAAEFAAAAHNJ
TVYwtFAwMLcyNbMyMVNILS82NDDRy8lPTsxRKCpJLkotyC8qycxLj7YwNLcwjVWwcUlNKk23s1LI
zMssCc8syQhOLS7OzM/zzEvLt1KICHBWyMsvUUjNK8ksyUlN0VEw5HKhvRUAUEsDBBQAAgAIABg/
kkdsUARZaAAAAMYAAAByABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3Nl
bWFudGljcy9lbWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL2V2ZW50X3BsYXlpbmdfbm9h
dXRvcGxheS1zdGRlcnIudHh0VVQJAAO/LHRWvyx0VnV4CwABBPUBAAAEFAAAAHNJTVYwtFAwMLcy
NbMyMVdILS82NDDRy8lPTsxRKCpJLkotyC8qycxLj7YwNLcwjVWwcUlNKk23s1LIzMssCc8syQhO
LS7OzM/zzEvLt1KICHBWyMsvUUjNK8ksyUlN0VEw5HKhvRUAUEsDBBQAAgAIABg/kkdsUARZaAAA
AMYAAABoABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9l
bWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL2V2ZW50X3Byb2dyZXNzLXN0ZGVyci50eHRV
VAkAA78sdFa/LHRWdXgLAAEE9QEAAAQUAAAAc0lNVjC0UDAwtzI1szIxV0gtLzY0MNHLyU9OzFEo
KkkuSi3ILyrJzEuPtjA0tzCNVbBxSU0qTbezUsjMyywJzyzJCE4tLs7Mz/PMS8u3UogIcFbIyy9R
SM0rySzJSU3RUTDkcqG9FQBQSwMEFAACAAgAGD+SR5dzQ1FoAAAAxgAAAHMAHABpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVk
aWEtZWxlbWVudHMvZXZlbnRfcHJvZ3Jlc3Nfbm9hdXRvcGxheS1zdGRlcnIudHh0VVQJAAPALHRW
wCx0VnV4CwABBPUBAAAEFAAAAHNJTVYwtFAwMLcyNbMysVBILS82NDDRy8lPTsxRKCpJLkotyC8q
ycxLj7YwNLcwjVWwcUlNKk23s1LIzMssCc8syQhOLS7OzM/zzEvLt1KICHBWyMsvUUjNK8ksyUlN
0VEw5HKhvRUAUEsDBBQAAgAIABg/kkeXc0NRaAAAAMYAAABqABwAaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1l
bnRzL2V2ZW50X3RpbWV1cGRhdGUtc3RkZXJyLnR4dFVUCQADwCx0VsAsdFZ1eAsAAQT1AQAABBQA
AABzSU1WMLRQMDC3MjWzMrFQSC0vNjQw0cvJT07MUSgqSS5KLcgvKsnMS4+2MDS3MI1VsHFJTSpN
t7NSyMzLLAnPLMkITi0uzszP88xLy7dSiAhwVsjLL1FIzSvJLMlJTdFRMORyob0VAFBLAwQUAAIA
CAAZP5JHkyMmr2gAAADGAAAAdQAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9ldmVudF90aW1ldXBk
YXRlX25vYXV0b3BsYXktc3RkZXJyLnR4dFVUCQADwSx0VsEsdFZ1eAsAAQT1AQAABBQAAABzSU1W
MLRQMDC3MjWzMrFUSC0vNjQw0cvJT07MUSgqSS5KLcgvKsnMS4+2MDS3MI1VsHFJTSpNt7NSyMzL
LAnPLMkITi0uzszP88xLy7dSiAhwVsjLL1FIzSvJLMlJTdFRMORyob0VAFBLAwQKAAAAAAAUP5JH
AAAAAAAAAAAAAAAAWgAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1h
bnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9pbnRlcmZhY2VzL1VUCQADtyx0
Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMECgAAAAAAFD+SRwAAAAAAAAAAAAAAAGQAHABpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQv
bWVkaWEtZWxlbWVudHMvaW50ZXJmYWNlcy9UZXh0VHJhY2svVVQJAAO3LHRW3y10VnV4CwABBPUB
AAAEFAAAAFBLAwQUAAIACAAUP5JHCD2jdnsAAACuAAAAeQAcAGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50
cy9pbnRlcmZhY2VzL1RleHRUcmFjay9hY3RpdmVDdWVzLXN0ZGVyci50eHRVVAkAA7csdFa3LHRW
dXgLAAEE9QEAAAQUAAAAlc0xCgIxEEDRfk8xB5CQoMY1iI1pthMsFMRijWMcCDNLMuL1XY9g+4v3
IyZwPdhNWPuw3AJ+mrMrUySNBaqmipNUJc7X3nnrb7Ab+Cn7AEVynjM0Has2Y0wX/6Yi3t95tohJ
z6SvE7ZGwr9DgMvxACwKyEpa8LEA130BUEsDBBQAAgAIABk/kkf6Sz7IaAAAAMYAAAB3ABwAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250
ZW50L21lZGlhLWVsZW1lbnRzL25ldHdvcmtTdGF0ZV9kdXJpbmdfbG9hZHN0YXJ0LXN0ZGVyci50
eHRVVAkAA8IsdFbCLHRWdXgLAAEE9QEAAAQUAAAAc0lNVjC0UDAwtzI1szI1UEgtLzY0MNHLyU9O
zFEoKkkuSi3ILyrJzEuPtjA0tzCNVbBxSU0qTbezUsjMyywJzyzJCE4tLs7Mz/PMS8u3UogIcFbI
yy9RSM0rySzJSU3RUTDkcqG9FQBQSwMEFAACAAgAGT+SR/pLPshoAAAAxgAAAHIAHABpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQv
bWVkaWEtZWxlbWVudHMvcGF1c2VkX2ZhbHNlX2R1cmluZ19wbGF5LXN0ZGVyci50eHRVVAkAA8Is
dFbCLHRWdXgLAAEE9QEAAAQUAAAAc0lNVjC0UDAwtzI1szI1UEgtLzY0MNHLyU9OzFEoKkkuSi3I
LyrJzEuPtjA0tzCNVbBxSU0qTbezUsjMyywJzyzJCE4tLs7Mz/PMS8u3UogIcFbIyy9RSM0rySzJ
SU3RUTDkcqG9FQBQSwMEFAACAAgAGj+SR/4bWzZoAAAAxgAAAHIAHABpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxl
bWVudHMvcGF1c2VkX3RydWVfZHVyaW5nX3BhdXNlLXN0ZGVyci50eHRVVAkAA8MsdFbDLHRWdXgL
AAEE9QEAAAQUAAAAc0lNVjC0UDAwtzI1szI1VEgtLzY0MNHLyU9OzFEoKkkuSi3ILyrJzEuPtjA0
tzCNVbBxSU0qTbezUsjMyywJzyzJCE4tLs7Mz/PMS8u3UogIcFbIyy9RSM0rySzJSU3RUTDkcqG9
FQBQSwMECgAAAAAAFT+SRwAAAAAAAAAAAAAAAGoAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvcGxh
eWluZy10aGUtbWVkaWEtcmVzb3VyY2UvVVQJAAO5LHRW3y10VnV4CwABBPUBAAAEFAAAAFBLAwQU
AAIACAAUP5JHPi3TtMEAAAAXAQAAkQAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9wbGF5aW5nLXRo
ZS1tZWRpYS1yZXNvdXJjZS9wYXVzZS1tb3ZlLXRvLW90aGVyLWRvY3VtZW50LXN0ZGVyci50eHRV
VAkAA7gsdFa4LHRWdXgLAAEE9QEAAAQUAAAAnY5BbsIwFET3nGIOUCwHEhJZFVKBDTtEFlSKWITw
nVhY38j+UauevmbRC3SWI8170+naVBtTalXr+or3HOzPH7sW2xxYP6fpRHx3PJ7JU5+oJTHo9Hdt
b7ZqaL2qVvqKnQ/DAxpTn8CBlz8UAyJZDGFmwXpxoAFFgz8d6CsVulR51ntEGSI9Q5Ss6ZpiUzb5
ypFt2Br4MI65RpI+SlJK/QN1oNs8ZpZjJxcnU0spucAvg8HnaZ8vC4jFiaf7G4rFL1BLAwQKAAIA
AAAUP5JHRs7aE2MAAABjAAAAjwAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9wbGF5aW5nLXRoZS1t
ZWRpYS1yZXNvdXJjZS9wYXVzZS1tb3ZlLXdpdGhpbi1kb2N1bWVudC1zdGRlcnIudHh0VVQJAAO4
LHRWuCx0VnV4CwABBPUBAAAEFAAAAERlYyAxOCAwNzo1Njo0MCBld3MxMDQubG9jYWwgcnRjcmVw
b3J0aW5nWzgxNjQ4XSA8RGVidWc+OiBpbml0V2l0aFNlc3Npb25JbmZvOiBYUEMgbm90IGVudGl0
bGVkLCAxClBLAwQUAAIACAAVP5JHm/mOpqwAAADMAAAAjwAcAGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50
cy9wbGF5aW5nLXRoZS1tZWRpYS1yZXNvdXJjZS9wYXVzZS1yZW1vdmUtZnJvbS1kb2N1bWVudC1z
dGRlcnIudHh0VVQJAAO5LHRWuSx0VnV4CwABBPUBAAAEFAAAADXOzWoCMRTF8b1PcR5AJcH5MohQ
ddOdOIsWBhdjvHFCw40kd6j49M2m//3hdwbVmroxlV7rrbpiV8Lx8nHosS/BhTlPZ+K758eFAo2Z
ehKDQb1ad3N1s6k725bhIUT7A4VpzODIqzeliEQONs4s0IsTWegO/xzoN2tVrctsDEhiEz1jksIM
nW6qrlw50W1+7A08e/nyMvWUs4/8yS4afJ+PxREQi5dA92Uh/gBQSwMEFAACAAgAGj+SR/4bWzZo
AAAAxgAAAHMAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvcmVhZHlTdGF0ZV9kdXJpbmdfY2FucGxh
eS1zdGRlcnIudHh0VVQJAAPDLHRWwyx0VnV4CwABBPUBAAAEFAAAAHNJTVYwtFAwMLcyNbMyNVRI
LS82NDDRy8lPTsxRKCpJLkotyC8qycxLj7YwNLcwjVWwcUlNKk23s1LIzMssCc8syQhOLS7OzM/z
zEvLt1KICHBWyMsvUUjNK8ksyUlN0VEw5HKhvRUAUEsDBBQAAgAIABo/kkf+G1s2aAAAAMYAAAB6
ABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRl
ZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL3JlYWR5U3RhdGVfZHVyaW5nX2NhbnBsYXl0aHJvdWdo
LXN0ZGVyci50eHRVVAkAA8MsdFbDLHRWdXgLAAEE9QEAAAQUAAAAc0lNVjC0UDAwtzI1szI1VEgt
LzY0MNHLyU9OzFEoKkkuSi3ILyrJzEuPtjA0tzCNVbBxSU0qTbezUsjMyywJzyzJCE4tLs7Mz/PM
S8u3UogIcFbIyy9RSM0rySzJSU3RUTDkcqG9FQBQSwMEFAACAAgAGj+SR7Pthe9oAAAAxgAAAHYA
HABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVk
LWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvcmVhZHlTdGF0ZV9kdXJpbmdfbG9hZGVkZGF0YS1zdGRl
cnIudHh0VVQJAAPELHRWxCx0VnV4CwABBPUBAAAEFAAAAHNJTVYwtFAwMLcyNbMyNVJILS82NDDR
y8lPTsxRKCpJLkotyC8qycxLj7YwNLcwjVWwcUlNKk23s1LIzMssCc8syQhOLS7OzM/zzEvLt1KI
CHBWyMsvUUjNK8ksyUlN0VEw5HKhvRUAUEsDBBQAAgAIABo/kkez7YXvaAAAAMYAAAB6ABwAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250
ZW50L21lZGlhLWVsZW1lbnRzL3JlYWR5U3RhdGVfZHVyaW5nX2xvYWRlZG1ldGFkYXRhLXN0ZGVy
ci50eHRVVAkAA8QsdFbELHRWdXgLAAEE9QEAAAQUAAAAc0lNVjC0UDAwtzI1szI1UkgtLzY0MNHL
yU9OzFEoKkkuSi3ILyrJzEuPtjA0tzCNVbBxSU0qTbezUsjMyywJzyzJCE4tLs7Mz/PMS8u3UogI
cFbIyy9RSM0rySzJSU3RUTDkcqG9FQBQSwMEFAACAAgAGz+SR7e94BFoAAAAxgAAAHMAHABpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRl
bnQvbWVkaWEtZWxlbWVudHMvcmVhZHlTdGF0ZV9kdXJpbmdfcGxheWluZy1zdGRlcnIudHh0VVQJ
AAPFLHRWxSx0VnV4CwABBPUBAAAEFAAAAHNJTVYwtFAwMLcyNbMyNVZILS82NDDRy8lPTsxRKCpJ
LkotyC8qycxLj7YwNLcwjVWwcUlNKk23s1LIzMssCc8syQhOLS7OzM/zzEvLt1KICHBWyMsvUUjN
K8ksyUlN0VEw5HKhvRUAUEsDBBQAAgAIABs/kkdD/Jb71wAAAMICAACEABwAaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L21lZGlh
LWVsZW1lbnRzL3NyY19yZWZsZWN0c19hdHRyaWJ1dGVfbm90X3NvdXJjZV9lbGVtZW50cy1zdGRl
cnIudHh0VVQJAAPFLHRWxSx0VnV4CwABBPUBAAAEFAAAANWQP0/DMBDFdz7FjTCkdpqYpt6qVlUH
BhSVqWJw7Utj4T/Bdvj8HAozGxLolvfTeye9uwvfSPEoRbMS7fYVTufzc4/vM+YCg72dSpm+8WBN
jxrtB/aYpxgy7pVzV6XfJKTFMDBSnmjxoeUt3GNKMUFVr7dN9wAD6a+QZMxFrdwYc5Fdxzkbi3cs
o1ehWJ0Z+isag6bSMRQMhXk0VlXo0BNlNsR4d/m5O+Fh9tPRBuVe+qddoAN8LLgzhipmCWoRUK83
K05T0xplYU7uV0qK5v8+WLR/9cGfUEsDBAoAAAAAABQ/kkcAAAAAAAAAAAAAAABVABwAaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50
L21lZGlhLWVsZW1lbnRzL3RyYWNrL1VUCQADuCx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMECgAA
AAAAFD+SRwAAAAAAAAAAAAAAAGMAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvdHJhY2svdHJhY2st
ZWxlbWVudC9VVAkAA7gsdFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBAoAAgAAABQ/kkeWhtqoYwAA
AGMAAACCABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9l
bWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL3RyYWNrL3RyYWNrLWVsZW1lbnQvdHJhY2st
YXBpLXRleHR0cmFja3Mtc3RkZXJyLnR4dFVUCQADuCx0VrgsdFZ1eAsAAQT1AQAABBQAAABEZWMg
MTggMDc6NTY6NDAgZXdzMTA0LmxvY2FsIHJ0Y3JlcG9ydGluZ1s4MTYwMl0gPERlYnVnPjogaW5p
dFdpdGhTZXNzaW9uSW5mbzogWFBDIG5vdCBlbnRpdGxlZCwgMQpQSwMECgAAAAAAFT+SRwAAAAAA
AAAAAAAAAFIAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L2VtYmVkZGVkLWNvbnRlbnQvdGhlLWF1ZGlvLWVsZW1lbnQvVVQJAAO5LHRW3y10VnV4CwABBPUB
AAAEFAAAAFBLAwQUAAIACAAVP5JH7FT7D94AAADQAgAAbgAcAGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC90aGUtYXVkaW8tZWxl
bWVudC9hdWRpb19jb25zdHJ1Y3Rvci1zdGRlcnIudHh0VVQJAAO5LHRWuSx0VnV4CwABBPUBAAAE
FAAAANWQMU8DMQyFd36FRxiuyfWu9JqtokIdGNCpTBVDmrhchJMciY/fT8oxw4QE8vKe/Sx99lGu
1epWtfWi6Zpn2B8Ojz2+TZgZzu5lzzx+2Z2zPRp079hjHmPIeKeJTtq8KkjzwMJQ8sXNc2hlC9eY
UkxQ1ctN093AuehLSAlB0WgaYmbVdVKKgT2JjF4HdiYL9Ce0Fm1lYmAMLHjASk/WxQoJ/aWTk7k6
fo9f7G7y470Lmp76h20oN/jIuLW2UGYFehZQL9cLWaouayULU6Jf41z9rzeHiegn/j/x50/QD1BL
AwQKAAAAAAA0P5JHAAAAAAAAAAAAAAAACgAcAGluc3BlY3Rvci9VVAkAA/MsdFbfLXRWdXgLAAEE
9QEAAAQUAAAAUEsDBAoAAAAAACM/kkcAAAAAAAAAAAAAAAATABwAaW5zcGVjdG9yL2RlYnVnZ2Vy
L1VUCQAD0Sx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAIz+SR4jwtrCzAwAALxgAACoA
HABpbnNwZWN0b3IvZGVidWdnZXIvc2NyaXB0UGFyc2VkLXN0ZGVyci50eHRVVAkAA9EsdFbRLHRW
dXgLAAEE9QEAAAQUAAAAzZffa9s6FIDf81cIw6CFJY6dX07GHkLbh3B7oTS9dy+DotiniTdbMpac
tYz87zuyFSfKktItSlso9TGWpe/TkY+UxkPOmQQWjchPJwW54JEzcm4LJuMUWrCkSUElOB+djOY0
Fc7opwOPWQ5CxJxhyzsQ8obOoZXw+VnBQIQ0g7Ovzlfn/PyTs/roxNhfe9X4/JlgpyxmcyLxFSKK
WMKIXMKsmM8hb4kwjzPsKRcQtYDRWQKNE6F96FyqP7+tgTBSSHgpoT50xhg+B2a4eatGs2m6hVSg
2lXZdt3PJU9pzMYsulhA+H3CYhnTZFr2LU4l2mzuk1R0lePLCQ1jf7UfuJ6yapa2efWbnVVjRsPv
+kUUKBKpbDaRfMoAuypYBA8xg0iN+YOKu0XOf6DqA00EbBaVvc48m535Rme/z8/2kjKyWj2YqMaB
38NHRZ5gfH//BWYTJjIIJc8n7BteIapSc3+PzYSkubxGKpwVfXfBkyJl5T1yVM86nlfebT1bUDHl
RR7Cf7fXzkjmBayswPdr+Ic4gZHruv+rQUG4l1RS9+rL1EWnf2LpXtMnXki1hIW7kDJzZRnGa10X
U1ASCjfLueQhT5qqSeubeLm55wemuR3LQW2pPtI/IzJ4vOB0qQj+KhWb+Y/0cK5RCRcyTUxbzxvu
+Po9IwWmsm/HbnjgK7ngaUqrscc3k395VCRQTe+ffDGDtpmmk2Wp036lLHV3bIPtFHmD576SuhZu
qvlaUm92EWkSvXEQvXOQWwghXkJ0qk1ujVDvZxFGauPTIBhpFLUZahhjP+uuGjfj6XREpgteJBFZ
0CWQXLckgqdAtieVYFIEgojWqZQUTbVDV0QYKCa8rKnUWQW51GWLDG9rNsOwt2OIG1hErh4l5KzO
1GvaqPFVvjRBnSKTur+PesISXKuamdzR+dvhVyg1PAaIc8Bl8IzLWMo8nhUSyNUSmCTXsUAP/Kje
3qxGU9lScHhd4x0wDfauteWbrrPlwTU23J8XXVWJedaqCv9bpkVzlfHvZAccvfbzkuZW+Z4k95Ed
kvR2JBmX6yJOKHsiOPhjVk6ZruavWr+RZlO+MUIi/L9hqiv5TuX2rPyW6Hj16eLlZx/z6BOow0DI
0ywBCUr87Nza9IUJF7rPjbjV34pdK7PoHz2Lw97KplbPilbnaK2BZ1Wrb0Wre/ya71rVGljR6h2t
5bXbVr0CK179o736A6taQytag/dWM7y2Fa/g3Xl5VryGx1eNoV0vKyeAbvtoL18V+V9QSwMECgAA
AAAAND+SRwAAAAAAAAAAAAAAAA4AHABpbnNwZWN0b3IvZG9tL1VUCQAD9Cx0Vt8tdFZ1eAsAAQT1
AQAABBQAAABQSwMECgACAAAAND+SR/4nOOA1AAAANQAAACYAHABpbnNwZWN0b3IvZG9tL2hpZGVI
aWdobGlnaHQtYWN0dWFsLnR4dFVUCQAD8yx0VvMsdFZ1eAsAAQT1AQAABBQAAABGQUlMOiBUaW1l
ZCBvdXQgd2FpdGluZyBmb3Igbm90aWZ5RG9uZSB0byBiZSBjYWxsZWQKClBLAwQUAAIACAA0P5JH
WiUWXqMBAADiBAAAJAAcAGluc3BlY3Rvci9kb20vaGlkZUhpZ2hsaWdodC1kaWZmLnR4dFVUCQAD
8yx0VvQsdFZ1eAsAAQT1AQAABBQAAADNk8tu2zAQRff6igG3Ms04hTcCAjiNHbRom7Z2kKxpcWwR
4cMQh0jcoP9eUnD8atG0KFJkIUgc3bl3zkDinIO48SZaDGIsSYrJ7Uzc4vyDps3tbdRGiSkalAGF
kWsfiRMG4i2GaCgI7cIKa/KtUN6KRit8p5eNSRdxfMivUPXpgYqyLF82TdYUpemyRiPgg96bAZSD
3imMRgW/Ti4BFr4FahDGnz/1D5qh9tZKp/pFeXn+/mMF19qigpQP91KTdsuu13nSi/XYOwTyMEeo
pTGoCih4wc/OYBqdy9o8M4SoCaufswqe9n6grBNuBRcN1ncTu6L1nvTL+WxWwazx0agcn0MlNNu5
10j9HP5ry63RNC3tyCwZZY6dVZs0yWu3k9xUwSMjv2LVSY+1ucqqwUl6nnsibzcHgwvqFPdaUbMp
NriVf//dhAebOZ7Q+d2Af8L5NUr1b5zd7E+kwz3S0x3p8DWgXnmFz6Bi/mQU7sOm0sSgRUeQ/8EO
Wy6vpEVWsRXrMa1upIn5RLJdIqVS0N/S+fEJeXiMnPblTe5g/4H+r1x+AFBLAwQUAAIACAA0P5JH
mh1DXRsBAACjAwAAKAAcAGluc3BlY3Rvci9kb20vaGlkZUhpZ2hsaWdodC1leHBlY3RlZC50eHRV
VAkAA/MsdFbzLHRWdXgLAAEE9QEAAAQUAAAAxZLLasMwEEX3/opB68QkBW8EWZQm0E3TNi7dK9bE
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
AQAABBQAAABQSwMEFAACAAgAJD+SR5R/AnedAAAAtAAAADUAHABtZWRpYS9tZWRpYS1zb3VyY2Uv
bWVkaWEtc291cmNlLXN0cHAtY3Jhc2gtc3RkZXJyLnR4dFVUCQAD1Cx0VtQsdFZ1eAsAAQT1AQAA
BBQAAAAVjTsOwjAQBXtOsRcgio1MPh2QBkEHggJRrJNNsOSfbAcUTo+p3mik0eMlE2vG16yGsmpF
1ZZ1wUQNvTMFeq+puJM8qfSfg7OJbCo6epN23mR+1HzbiJaXTbPhTzhO1gVlp5zbFJy+KkMSI0Gk
BHKBXqscgaQe52x3twua/LGfx5FCp6LXuJxxoQAfjIDDQAMkBwhxsf0rOKu+FFY/UEsDBBQAAgAI
ACo/kkcPf4yraAAAAMYAAAAoABwAbWVkaWEvc291cmNlcy1mYWxsYmFjay1jb2RlY3Mtc3RkZXJy
LnR4dFVUCQAD4Cx0VuAsdFZ1eAsAAQT1AQAABBQAAABzSU1WMLRQMDC3MjW3MrRUSC0vNjQw0cvJ
T07MUSgqSS5KLcgvKsnMS4+2MDQzNIhVsHFJTSpNt7NSyMzLLAnPLMkITi0uzszP88xLy7dSiAhw
VsjLL1FIzSvJLMlJTdFRMORyob0VAFBLAwQKAAAAAABDP5JHAAAAAAAAAAAAAAAADAAcAG1lZGlh
L3RyYWNrL1VUCQADDi10Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMECgACAAAAQz+SR/4nOOA1AAAA
NQAAACoAHABtZWRpYS90cmFjay90cmFjay1pbi1iYW5kLXN0eWxlLWFjdHVhbC50eHRVVAkAAw4t
dFYOLXRWdXgLAAEE9QEAAAQUAAAARkFJTDogVGltZWQgb3V0IHdhaXRpbmcgZm9yIG5vdGlmeURv
bmUgdG8gYmUgY2FsbGVkCgpQSwMEFAACAAgAQz+SR/1q8zbFAQAAbgMAACgAHABtZWRpYS90cmFj
ay90cmFjay1pbi1iYW5kLXN0eWxlLWRpZmYudHh0VVQJAAMOLXRWDi10VnV4CwABBPUBAAAEFAAA
ALVSTW+bQBC98yvmZgheCJFyaCVLbg2RqlROFdOkUtXDAhNYedlF7NDY/74DdiwnqXqrhHalnTfv
YwYhBMQPVg8tujiVJOPscRM/YnGr6Hh9HpSu4nvUKB3GWu7tQILQkejRDZpc3GKlZEy9LLeHUygj
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
dFYFLXRWdXgLAAEE9QEAAAQUAAAA7c8xC8IwEAXg3V+RUQebmlqtgoMWBQdR6ChSzvSo0diUaxTy
76046ODqIARueDe99+3D8TRubxTEI3FgyuIVGlfJPEO7I1MjWccaVVagNRYMiWb9gRgnMeteVqpc
QIPb4xmlXRIZytfVHbQqwGLRY131+YFlPDM3kpiCPCFPDeEGCwXv1B+0IwIxDHlbbY11NTZ8p8Eh
8bbslfL5c18gmVYVMiEmUWfvER7xG0T0iUhN7f5CESaJV3iFV3xRPABQSwMECgAAAAAAJz+SRwAA
AAAAAAAAAAAAAAgAHABwbHVnaW5zL1VUCQAD2ix0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMEFAAC
AAgAJz+SR+5dckWGAAAA9gAAADsAHABwbHVnaW5zL25wcC1zZXQtd2luZG93LWNhbGxlZC1kdXJp
bmctZGVzdHJ1Y3Rpb24tc3RkZXJyLnR4dFVUCQAD2ix0VtosdFZ1eAsAAQT1AQAABBQAAACdjsEK
wjAQRO9+xXxHP6AiSCkU8SjpZm0jcVeSTfP7pgcv4snrMPPe9C5E9jBFYkuBNwapZI0MnR9Mhrq2
BqIuS5Clw3i+HE9Dh74NOwzjeJvYrkG8VpCLO+ypiWGrE6gQY+b7HrxiaQR4zpYKWVA59P/Kp0LE
OX/7q8sQtc8PX1Jb/RK/AVBLAwQUAAIACAAHP5JH5zH5WJ4CAADLHwAAKwAcAHB5d2Vic29ja2V0
LndzLmxvZy0xOERlYzIwMTUtMDc1MzUxLWVyci50eHRVVAkAA50sdFYPLHRWdXgLAAEE9QEAAAQU
AAAA7Zhbb5swFIDf8yusvTTRKOYSIOVtl3SbNnVTUrUPUWQZODRWHMxspxn79XNIu1K13cuabpEs
kJBvOh/H9ifLs8Dzo2M/OPZHyEvSKEqjxBkl8RzNxpPJ18kcEbKirCLEvYRsKvIl6CnIa5ApGv/I
odZMVIhVqJYiB6VYdYUkfF+D0qiUYpWi/lGa+kcOinw/GTrIM++gdy5pDhnNl6i/EqarhBwqjXLK
OeJU6UHaQ+iUcUCv8LRRGlb4C8sklQ0+lXQFGyGXCn9r9EJUbnlbgy9AKsOjcOAmmLMM122PbamL
7tbNKwdxVgGKTk6cDj65YSd6IYEWBgIhBbx0S1Yxtbht7t98HZRzZsAJLQpphg9eiDoMhy31fao7
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
X8nuzGZsxPITsXbf7V8uv1x/9b03vN3qTTaG/4t4rzWk/9PUUvkKuhUH/Yv77MXK3/0DtKUy7ZLD
PlDRB4RG9+wDHn3Ar3u0sw9Y9IFhYoJbfsAgKpp1g3L2hYRQGJpzL/eA+Gh5o3p6EG6FR9sXEAm8
0GWerR/Q+oHJEbnG3dZH6NPO3ryE+wD3GH0iApa1pD6UAK9OhrcMNVO31SHyZO/0zr/VJ4eHf0GI
0zERtHMGo3tGdM980kUed44JR3t5j+W+OzgE5nM+XJipDsEjNz1pqXbwC3atdgfhIcv9WuFuLIfi
ZtYMZ5gXxDWxjfxBOaRqdEJMYNMQDtQRMO297o6r/wb+l8tPj29ffn36cytc+7i8f3x6evn+4+PT
+9uX9fcC6XG9v1aUmwx8eX//9P3xl8untx/Pl09f3h7ffwXfOMuYeTXT8+vj13OS047O8RefDjzF
dO5EKjNIvHT1jU/vP366Qr/+ePty+fTy4/n507enb5d9kpT89cLrPhrvvj0+vay/BLbfvpdX5Wt/
fvp6eb1y4FNnjPwJUmqwXQ6OnM1/f/zz4/uXt6fvH59+vD1/evr57fGbjk3iOfiNF18ev/x6+XT5
7fvT2+UrJRr40JCQfwzve/z6esXn8ePj7emnHx9XBnz8/nz95E+vX3/XttqE5WzrsJNrf7cPnb1P
337R5NV08O4s7MA7fd4vH0hS++L70z2RrI/Hn66i/tPjl//45e31x8tXhENkOByn1f6Vrz++Pz99
ebwS5qTwO0Kn3D609wAwRNCfXv7j069vl58RHo7p3XH4PP3y8vp2leHXQ3aefv7Uftr05vKybRNt
Lsib26zC07fvr2+QxPkG73vb3R3+t2/PTV7ef71c2fSbuC/yiZ6KJ0jey+vXy32SF7robF74ERE6
Lcnl2/eP35sMffr6+g19x4kU2tXgLhk6m8c4lg/b9vj0cuX+f2WDxJY7UmfV5PvrncLdESPm8aTS
X54+fv304+XysgWav252CeHj+aeIrh6yqeh64IQmovS6z+/49PXx4xF9oCMQjny93Rq+vnxcXj5+
fnr+uNyGDf70/PrlPz49/nz9q+sur/b//fLy9arF//vHdb31Gr4FUkobK7OnR/vYTMrj8/PrXz59
u3x9erxK05cfW18q8SOHG+T39kN7BXyTeIjSp49fLy+f2jo/XvZflbF0HctdKY/SpG+vX59+/v32
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
5/5IXcD75fWV0fV9K9jehCfYjZWHknfu9bV9r+DwPj5vWCRjyoAoqt3kepOj6cv+VVCam6goZLf4
xegllSNyzBuWHNClK51bYrSXhcbcyFfyUgqqxFmRITWozjN7+Dgx96zqcsAf7klwcW+3XVPRba51
M325J03GX9u+HE5P1dkmVqh6s+IwISoPLQ+WJ1Vv29k3TSlj4C+Wcf6bgw3/mJTSn9wgJP+hVeko
KvE+841iiRR1HCi+HnW4Ph4nZH39HtIA2XpiJgYQrbMIzqpmc1diQkb6AKf7ek9GR7cM0NqIdBsc
Pb+x/zbd7u09jVlMEGOdk2Me3o7/bbszPITTdy8yso2Fc44ZxiFTy7kuT5sTqotpVWECbowJxkhJ
kRVwxrpPNOYkYd9Dc4EFKvIkoLAmyHapuzb8jx/zq3/VDpcmD9RXmAlkPIE849dgWvblFLXdapud
Gr28u//+9sU/5Xcav4yn2v3128fh/ub+9n//5/S3n92IvwWB/enud+GXCSSMv/3X3//x85//8vNf
/vzb3//x57/89tOvf/n5D7/+4+fffv1//vMv/2seGqfUxZ5l1urC2yn4W+fP98fx+r8dxhNGmdsg
uJwVu1leFf7pcrZa+TAJwG/H2y9z9vQ04ukkTijoCteyRS8vGiSLd6se/z5+u//209//9x/++tOf
f/vl1z/8+pff/vLzz/IUq7hQJxhx3L//Mo18OU1y9tvpcpkUyN8n0+xU5X/9/NNv1qE4fhPnG1hj
Oy70S3Xj/sUCY3s+v43+b+Nvcy56CDCLowbZbdJca9zQt8Pt30aX+P9bLQ4TuIxmfiC0L03u6Tra
7YybsHSYFWenRaH5yzebTmbTVeOi/6+f//H3f//tz//403/97S9//5Wd0nzV7MguqKUCiBVW7kOf
4uq7dPUDG4oKZRNvCbwjj0I5aabJfeG3ROmtu7bnXv/y9z/85y//8Y9fN+71sHmNSr/1x3/8469/
+cPfN8aG226l39uuX+19tI2ZbvLdNvGuNMvjoDvuoOVYRJFp5QtYEMa9N7CPi7QJhkMt6KHL1Smi
H1e9c19WIg638+Hj9na5T2f0TsWASu/cnHk5rzbcg3e7ARtHFnKgnBzVqRwV1NsP3PQuXk4HXP3q
/zAjbz8te/BnMrl4RlCFtynk//bTz7/8mp4Yl/c6NR2VrEVB4v7+h7/95Zf//MOfnFn6rVLyrYg7
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
MwGtkXu6rLQYywfp61LX7MS00tf0KomIXoA2c6OrSuryuyMfoqsayY1OUiooSFTS46U7qpQ7cAFd
mYPcZYhW1rWiRVqaVNJc5EF6d305QpqYoiSUl/qxLP8SKXN7FEpyymmdhlI0LyOr4aGY0wwb8ZWO
nSvwE04tNYJFZKCz0ludEVjdQo+kpbVQkx6FV/6oAyl3GEpxGlMLQ/8DGYk09U01NR0Kcv0pSmnV
7sayNCPRiNGd3e0eQLgGnTQR2fkOe6vqjaKUgeX79sW3VR4n07PRZb6TPIg0wMb4VyN2cZm9aqax
IXZqs2WGdZYRS7nvgRpx0Vw1rCvBaKZ7W2zU4WMItL5St7toZwq1uh/J8uVtjY1I3v7x510Z92pL
PbJThGyxTD0mTgcN4w9buYyK0TM9nIfrc1RuY84EGTiFzCFeJIkBOCyDa0qppIodQAfNmbLG0ovN
ZueH7xKmvHFJPdP4aiNWoCwYmnbI3go0DwzAd4PUMnrRBwx2YDsBy+hPVkIkyqiN0nrDC2L9sTrg
i7O04lSv0jizEt/FjlQAbeckt31PsotoAuYajtsxxi/Thzf3xfPx9nG4P7395Qsz2HYLQ4TMZJ28
k+8H9n0Xv4+FFcn34na47/vle/Cs0+8V+35YvgdD9zQZ+PvoZ1+Tr0NExaRo5Xg+3v23Rv62ruLO
QR5MunPst0MEwKTEVPxtxX5bb/+2Zr9dxe8j9kx3vWa/D3OP1wB3vWG73qcrN6uv2dz7Zuu3Dfu6
25IXJm2Bas/2LZ4Z3TNT+uX0zHp2Zm1p1+Jvt+y346qBwZwth/v+T4fbxtqjzIGnlM6/ZfM36U3P
56/Z/Ov4bUwNTX+bzn0o3TX33a+H6+u4Y/X1tp5kcjfoVGpzTdOw1Re1VHpb6e5VpRuTzp3d1yFb
+2SynME5TRbnVLtPni7X0f3lfHkej+fbeL0/ji/TvxSjl5X1ivzALnYWE9CfL++3+/V4frXPSRzv
47t4MFW8VrpPy6O/f0zTeLkcb8/j9fhlfH65Xt7FTapiZYHuk+s5enN8G+/H58N9mtXj530839hI
deD83EiR83sOl20aav7r5/UoagzXjzUuDeCO3eHr+H75Mj69HU/PIu9rFxVOvjACnpEYiHFnpJYh
IMo+L2G6OkdL4o3np4vN9mdHNWdsZrMpHpUh+zKXUrhxoltePCrFREcX5zOJ3/H9ww92sPj8Or5O
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
Zy9VVAkAAyctdFbfLXRWdXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAADg/kkcAAAAAAAAAAAAAAAAN
ABwAc3ZnL2FzLWltYWdlL1VUCQAD+yx0Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAOD+S
R9sI00I7AAAAPwAAAD8AHABzdmcvYXMtaW1hZ2Uvc3ZnLWltYWdlLXdpdGgtZGF0YS11cmktaW1h
Z2VzLWRpc2FibGVkLXN0ZGVyci50eHRVVAkAA/ssdFb7LHRWdXgLAAEE9QEAAAQUAAAAcywpSc0t
KFEoyVdIzSssTS1NVUhUKM8vylbIBEoolGdk5qQqQMQzixWSUjPz0hUKivKTU4uLU1P0uABQSwME
CgAAAAAAUj+SRwAAAAAAAAAAAAAAAAsAHABzdmcvY3VzdG9tL1VUCQADLC10Vt8tdFZ1eAsAAQT1
AQAABBQAAABQSwMEFAACAAgAUD+SRyH09vA6AAAAQgAAADAAHABzdmcvY3VzdG9tL3VzZS1pbnZh
bGlkYXRlLWNsaWNrLWNyYXNoLXN0ZGVyci50eHRVVAkAAyctdFYnLXRWdXgLAAEE9QEAAAQUAAAA
y80vLU71zS9LDclXSEvMzElNUSgBsjLzUhQSFUoSi9JTSxTKMlPLFRJLFHQNzfQMwEDHzMAIyuQC
AFBLAwQUAAIACABSP5JHWrFyy5AAAACmAAAAJAAcAHN2Zy9jdXN0b20vemVyby1kYXNoYXJyYXkt
c3RkZXJyLnR4dFVUCQADLC10ViwtdFZ1eAsAAQT1AQAABBQAAAAdjL0OgkAQhHufYl7AC0SRy8XY
gLHQzsLCWCywiZcct+RY8efpRauZb/Jlam6RW2SlK6xbbcDPMc/WJkhLAa30hoYhsLlwc/T6i0qi
clRT88RBhn7uV5uXtrhhu09J0s6hOvytl55ZTz5yTePdwceJgu/QzQRKid4OpAhMo0IigwP/7tA/
5qFhRInLDycxiy9QSwMECgAAAAAAOz+SRwAAAAAAAAAAAAAAAAsAHABzdmcvc3Ryb2tlL1VUCQAD
AS10Vt8tdFZ1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAOz+SR18+3giQAAAApgAAACUAHABzdmcv
c3Ryb2tlL3plcm8td2lkdGgtaGFuZy1zdGRlcnIudHh0VVQJAAMBLXRWAS10VnV4CwABBPUBAAAE
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
d3B0X2NlcnRzL2luZGV4LnR4dC5hdHRyLm9sZFVUBQADECx0VnV4CwABBPUBAAAEFAAAAFBLAQIe
AwoAAgAAALo+kkchFajlMwAAADMAAAAYABgAAAAAAAEAAACkgTIkAABfd3B0X2NlcnRzL2luZGV4
LnR4dC5vbGRVVAUAAxAsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAC6PpJHnf1UrQsFAACP
BgAAGAAYAAAAAAABAAAApIG3JAAAX3dwdF9jZXJ0cy9sb2NhbGhvc3Qua2V5VVQFAAMQLHRWdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAuj6SRwxl8DfuCQAALhIAABgAGAAAAAAAAQAAAKSBFCoA
AF93cHRfY2VydHMvbG9jYWxob3N0LnBlbVVUBQADECx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoA
AgAAALo+kkessJTPAwAAAAMAAAARABgAAAAAAAEAAACkgVQ0AABfd3B0X2NlcnRzL3NlcmlhbFVU
BQADECx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAgAAALo+kkftgY/WAwAAAAMAAAAVABgAAAAA
AAEAAACkgaI0AABfd3B0X2NlcnRzL3NlcmlhbC5vbGRVVAUAAxAsdFZ1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACAA2P5JH6euFfZo0AQDkYwsADgAYAAAAAAABAAAApIH0NAAAYWNjZXNzX2xvZy50
eHRVVAUAA/csdFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAC9PpJHAAAAAAAAAAAAAAAADgAY
AAAAAAAAABAA7UHWaQEAYWNjZXNzaWJpbGl0eS9VVAUAAxUsdFZ1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAC7PpJH9sZSoGkAAABrAAAALgAYAAAAAAABAAAApIEeagEAYWNjZXNzaWJpbGl0eS9h
cmlhLWNoZWNrYm94LWNoZWNrZWQtc3RkZXJyLnR4dFVUBQADEix0VnV4CwABBPUBAAAEFAAAAFBL
AQIeAwoAAAAAAL0+kkcAAAAAAAAAAAAAAAASABgAAAAAAAAAEADtQe9qAQBhY2Nlc3NpYmlsaXR5
L21hYy9VVAUAAxUsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAC9PpJHCpPozmkAAABrAAAA
YQAYAAAAAAABAAAApIE7awEAYWNjZXNzaWJpbGl0eS9tYWMvY2hlY2tib3gtcG9zdHMtdmFsdWUt
Y2hhbmdlLW5vdGlmaWNhdGlvbi1hZnRlci1hY3RpdmF0aW9uLXdpdGgtc3BhY2Utc3RkZXJyLnR4
dFVUBQADFSx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAMY+kkcAAAAAAAAAAAAAAAAMABgA
AAAAAAAAEADtQT9sAQBjb21wb3NpdGluZy9VVAUAAyMsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMK
AAAAAADEPpJHAAAAAAAAAAAAAAAAFQAYAAAAAAAAABAA7UGFbAEAY29tcG9zaXRpbmcvb3ZlcmZs
b3cvVVQFAAMgLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAxD6SR4kp4dFoAAAAawAAAD0A
GAAAAAAAAQAAAKSB1GwBAGNvbXBvc2l0aW5nL292ZXJmbG93L3RoZW1lLWFmZmVjdHMtdmlzdWFs
LW92ZXJmbG93LXN0ZGVyci50eHRVVAUAAyAsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAADC
PpJHAAAAAAAAAAAAAAAAFAAYAAAAAAAAABAA7UGzbQEAY29tcG9zaXRpbmcvcmVnaW9ucy9VVAUA
AxwsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADCPpJHMQgjKb8AAADyBgAARQAYAAAAAAAB
AAAApIEBbgEAY29tcG9zaXRpbmcvcmVnaW9ucy93ZWJraXQtZmxvdy1yZW5kZXJlci1sYXllci1j
b21wb3NpdGluZy1zdGRlcnIudHh0VVQFAAMcLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
xj6SRyLVgay/AAAA8gYAADwAGAAAAAAAAQAAAKSBP28BAGNvbXBvc2l0aW5nL3Nob3ctY29tcG9z
aXRlZC1pZnJhbWUtb24tYmFjay1idXR0b24tc3RkZXJyLnR4dFVUBQADIyx0VnV4CwABBPUBAAAE
FAAAAFBLAQIeAwoAAAAAAME+kkcAAAAAAAAAAAAAAAASABgAAAAAAAAAEADtQXRwAQBjb21wb3Np
dGluZy92aWRlby9VVAUAAxksdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADBPpJH0WUsScEA
AADyBgAAMgAYAAAAAAABAAAApIHAcAEAY29tcG9zaXRpbmcvdmlkZW8vdmlkZW8tY2xpcC1jaGFu
Z2Utc3JjLXN0ZGVyci50eHRVVAUAAxksdFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAADBPpJH
AAAAAAAAAAAAAAAAEQAYAAAAAAAAABAA7UHtcQEAY29udGVudGZpbHRlcmluZy9VVAUAAxosdFZ1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADBPpJHogR4lb4AAADyBgAAJwAYAAAAAAABAAAApIE4
cgEAY29udGVudGZpbHRlcmluZy9hbGxvdy1uZXZlci1zdGRlcnIudHh0VVQFAAMaLHRWdXgLAAEE
9QEAAAQUAAAAUEsBAh4DCgAAAAAAxz6SRwAAAAAAAAAAAAAAAAUAGAAAAAAAAAAQAO1BV3MBAGNz
czMvVVQFAAMmLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAwT6SRwAAAAAAAAAAAAAAAA4A
GAAAAAAAAAAQAO1BlnMBAGNzczMvYmxlbmRpbmcvVVQFAAMaLHRWdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAwT6SR61Mx0u/AAAA8gYAAEsAGAAAAAAAAQAAAKSB3nMBAGNzczMvYmxlbmRpbmcv
YmFja2dyb3VuZC1ibGVuZC1tb2RlLWJhY2tncm91bmQtYXR0YWNoZW1lbnQtZml4ZWQtc3RkZXJy
LnR4dFVUBQADGix0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAMY+kkcAAAAAAAAAAAAAAAAQ
ABgAAAAAAAAAEADtQSJ1AQBjc3MzL3NlbGVjdG9yczMvVVQFAAMjLHRWdXgLAAEE9QEAAAQUAAAA
UEsBAh4DCgAAAAAAxT6SRwAAAAAAAAAAAAAAABUAGAAAAAAAAAAQAO1BbHUBAGNzczMvc2VsZWN0
b3JzMy9odG1sL1VUBQADISx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAMU+kkcdAF3NaQAA
AGsAAAAuABgAAAAAAAEAAACkgbt1AQBjc3MzL3NlbGVjdG9yczMvaHRtbC9jc3MzLW1vZHNlbC0y
NS1zdGRlcnIudHh0VVQFAAMhLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAxj6SRwAAAAAA
AAAAAAAAABYAGAAAAAAAAAAQAO1BjHYBAGNzczMvc2VsZWN0b3JzMy94aHRtbC9VVAUAAyMsdFZ1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADGPpJHFdpQjGkAAABrAAAALwAYAAAAAAABAAAApIHc
dgEAY3NzMy9zZWxlY3RvcnMzL3hodG1sL2NzczMtbW9kc2VsLTI1LXN0ZGVyci50eHRVVAUAAyMs
dFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAADHPpJHAAAAAAAAAAAAAAAADAAYAAAAAAAAABAA
7UGudwEAY3NzMy9zaGFwZXMvVVQFAAMmLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAxz6S
RwAAAAAAAAAAAAAAABoAGAAAAAAAAAAQAO1B9HcBAGNzczMvc2hhcGVzL3NoYXBlLW91dHNpZGUv
VVQFAAMmLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAxz6SRwAAAAAAAAAAAAAAACsAGAAA
AAAAAAAQAO1BSHgBAGNzczMvc2hhcGVzL3NoYXBlLW91dHNpZGUvc3VwcG9ydGVkLXNoYXBlcy9V
VAUAAyYsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAADHPpJHAAAAAAAAAAAAAAAAMwAYAAAA
AAAAABAA7UGteAEAY3NzMy9zaGFwZXMvc2hhcGUtb3V0c2lkZS9zdXBwb3J0ZWQtc2hhcGVzL3Bv
bHlnb24vVVQFAAMmLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAxz6SR3STaHzAAAAA8gYA
AFcAGAAAAAAAAQAAAKSBGnkBAGNzczMvc2hhcGVzL3NoYXBlLW91dHNpZGUvc3VwcG9ydGVkLXNo
YXBlcy9wb2x5Z29uL3NoYXBlLW91dHNpZGUtcG9seWdvbi0wMDctc3RkZXJyLnR4dFVUBQADJix0
VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAANM+kkcAAAAAAAAAAAAAAAAEABgAAAAAAAAAEADt
QWt6AQBkb20vVVQFAAM9LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA0j6SRwAAAAAAAAAA
AAAAAAkAGAAAAAAAAAAQAO1BqXoBAGRvbS9odG1sL1VUBQADPCx0VnV4CwABBPUBAAAEFAAAAFBL
AQIeAwoAAAAAANI+kkcAAAAAAAAAAAAAAAAQABgAAAAAAAAAEADtQex6AQBkb20vaHRtbC9sZXZl
bDIvVVQFAAM8LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA0j6SRwAAAAAAAAAAAAAAABUA
GAAAAAAAAAAQAO1BNnsBAGRvbS9odG1sL2xldmVsMi9odG1sL1VUBQADPCx0VnV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIANI+kkecCKJDaQAAAGsAAAAyABgAAAAAAAEAAACkgYV7AQBkb20vaHRt
bC9sZXZlbDIvaHRtbC9IVE1MSW5wdXRFbGVtZW50MjAtc3RkZXJyLnR4dFVUBQADPCx0VnV4CwAB
BPUBAAAEFAAAAFBLAQIeAwoAAAAAANM+kkcAAAAAAAAAAAAAAAAKABgAAAAAAAAAEADtQVp8AQBk
b20veGh0bWwvVVQFAAM9LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA0z6SRwAAAAAAAAAA
AAAAABEAGAAAAAAAAAAQAO1BnnwBAGRvbS94aHRtbC9sZXZlbDIvVVQFAAM9LHRWdXgLAAEE9QEA
AAQUAAAAUEsBAh4DCgAAAAAA0z6SRwAAAAAAAAAAAAAAABYAGAAAAAAAAAAQAO1B6XwBAGRvbS94
aHRtbC9sZXZlbDIvaHRtbC9VVAUAAz0sdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADTPpJH
7jt+PGkAAABrAAAAMwAYAAAAAAABAAAApIE5fQEAZG9tL3hodG1sL2xldmVsMi9odG1sL0hUTUxJ
bnB1dEVsZW1lbnQyMC1zdGRlcnIudHh0VVQFAAM9LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgALECSR0NI69qqFQAAeFMCAA0AGAAAAAAAAQAAAKSBD34BAGVycm9yX2xvZy50eHRVVAUAA9Qt
dFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAADzPpJHAAAAAAAAAAAAAAAABQAYAAAAAAAAABAA
7UEAlAEAZmFzdC9VVAUAA3osdFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAADRPpJHAAAAAAAA
AAAAAAAACwAYAAAAAAAAABAA7UE/lAEAZmFzdC9ibG9jay9VVAUAAzksdFZ1eAsAAQT1AQAABBQA
AABQSwECHgMKAAAAAADRPpJHAAAAAAAAAAAAAAAAGwAYAAAAAAAAABAA7UGElAEAZmFzdC9ibG9j
ay9tYXJnaW4tY29sbGFwc2UvVVQFAAM5LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA0T6S
RwmOWedpAAAAawAAACkAGAAAAAAAAQAAAKSB2ZQBAGZhc3QvYmxvY2svbWFyZ2luLWNvbGxhcHNl
LzEwMy1zdGRlcnIudHh0VVQFAAM5LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA2z6SRwAA
AAAAAAAAAAAAAAwAGAAAAAAAAAAQAO1BpZUBAGZhc3QvY2FudmFzL1VUBQADTix0VnV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIANs+kke5dLR1kwAAAEwBAAAmABgAAAAAAAEAAACkgeuVAQBmYXN0
L2NhbnZhcy9jYW52YXMtbGluZURhc2gtc3RkZXJyLnR4dFVUBQADTix0VnV4CwABBPUBAAAEFAAA
AFBLAQIeAwoAAAAAANk+kkcAAAAAAAAAAAAAAAASABgAAAAAAAAAEADtQd6WAQBmYXN0L2NhbnZh
cy93ZWJnbC9VVAUAA0osdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADZPpJHd44ffWIAAADe
AAAAPwAYAAAAAAABAAAApIEqlwEAZmFzdC9jYW52YXMvd2ViZ2wvdGV4LWltYWdlLWFuZC11bmlm
b3JtLWJpbmRpbmctYnVncy1zdGRlcnIudHh0VVQFAANKLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4D
CgAAAAAA2z6SRwAAAAAAAAAAAAAAAAkAGAAAAAAAAAAQAO1BBZgBAGZhc3QvY3NzL1VUBQADTSx0
VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIANs+kkfbCNNCOwAAAD8AAAApABgAAAAAAAEAAACk
gUiYAQBmYXN0L2Nzcy9jb21wYXJlLWNvbnRlbnQtc3R5bGUtc3RkZXJyLnR4dFVUBQADTSx0VnV4
CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAANo+kkcAAAAAAAAAAAAAAAAJABgAAAAAAAAAEADtQeaY
AQBmYXN0L2RvbS9VVAUAA0ssdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADaPpJH2pN8mmkA
AABrAAAANgAYAAAAAAABAAAApIEpmQEAZmFzdC9kb20vY2xvbmUtbm9kZS1mb3JtLWVsZW1lbnRz
LXdpdGgtYXR0ci1zdGRlcnIudHh0VVQFAANLLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA
3D6SRwAAAAAAAAAAAAAAAA0AGAAAAAAAAAAQAO1BApoBAGZhc3QvZHluYW1pYy9VVAUAA08sdFZ1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADcPpJHtrKvd2kAAABrAAAAMAAYAAAAAAABAAAApIFJ
mgEAZmFzdC9keW5hbWljL2NoZWNrYm94LXNlbGVjdGlvbi1jcmFzaC1zdGRlcnIudHh0VVQFAANP
LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA6j6SRwAAAAAAAAAAAAAAAAwAGAAAAAAAAAAQ
AO1BHJsBAGZhc3QvZXZlbnRzL1VUBQADZyx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAOM+
kkdYKmd1OQAAAEMAAAAyABgAAAAAAAEAAACkgWKbAQBmYXN0L2V2ZW50cy9kaXNwbGF5LW5vbmUt
b24tZm9jdXMtY3Jhc2gtc3RkZXJyLnR4dFVUBQADWSx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIAOk+kkcwtW3jOQAAAEMAAAArABgAAAAAAAEAAACkgQecAQBmYXN0L2V2ZW50cy9tb3VzZS1m
b2N1cy1pbWFnZW1hcC1zdGRlcnIudHh0VVQFAANmLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgA6j6SR+euvV87AAAAQwAAAC8AGAAAAAAAAQAAAKSBpZwBAGZhc3QvZXZlbnRzL21vdXNldXAt
b3V0c2lkZS1kb2N1bWVudC1zdGRlcnIudHh0VVQFAANnLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4D
CgAAAAAA5D6SRwAAAAAAAAAAAAAAAAsAGAAAAAAAAAAQAO1BSZ0BAGZhc3QvZm9ybXMvVVQFAANc
LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA5D6SR9dYjgCrAAAA6QAAADMAGAAAAAAAAQAA
AKSBjp0BAGZhc3QvZm9ybXMvZm9ybS1hc3NvY2lhdGVkLWVsZW1lbnQtY3Jhc2gtc3RkZXJyLnR4
dFVUBQADXCx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAN0+kkcAAAAAAAAAAAAAAAARABgA
AAAAAAAAEADtQaaeAQBmYXN0L2Zvcm1zL3JhZGlvL1VUBQADUix0VnV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAN0+kkdVwmuHaQAAAGsAAABBABgAAAAAAAEAAACkgfGeAQBmYXN0L2Zvcm1zL3Jh
ZGlvL2ludGVyYWN0aXZlLXZhbGlkYXRpb24tcmVxdWlyZWQtcmFkaW8tc3RkZXJyLnR4dFVUBQAD
Uix0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAOA+kkcO7bpLaQAAAGsAAAA0ABgAAAAAAAEA
AACkgdWfAQBmYXN0L2Zvcm1zL1ZhbGlkaXR5U3RhdGUtdmFsdWVNaXNzaW5nLTAwNi1zdGRlcnIu
dHh0VVQFAANTLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA5z6SRwAAAAAAAAAAAAAAAAwA
GAAAAAAAAAAQAO1BrKABAGZhc3QvZnJhbWVzL1VUBQADYSx0VnV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIAOM+kkfbCNNCOwAAAD8AAAAvABgAAAAAAAEAAACkgfKgAQBmYXN0L2ZyYW1lcy9mcmFt
ZS1kaXNwbGF5LW5vbmUtZm9jdXMtc3RkZXJyLnR4dFVUBQADWix0VnV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAOc+kkcF6ur/aQAAAGsAAAA8ABgAAAAAAAEAAACkgZahAQBmYXN0L2ZyYW1lcy9z
YW5kYm94ZWQtaWZyYW1lLWF0dHJpYnV0ZS1wYXJzaW5nLTAxLXN0ZGVyci50eHRVVAUAA2EsdFZ1
eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAADqPpJHAAAAAAAAAAAAAAAADAAYAAAAAAAAABAA7UF1
ogEAZmFzdC9pbWFnZXMvVVQFAANnLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgACAAAA6T6SR1Gn
ghgxAAAAMQAAAC0AGAAAAAAAAQAAAKSBu6IBAGZhc3QvaW1hZ2VzL2xhcmdlLXNpemUtaW1hZ2Ut
Y3Jhc2gtc3RkZXJyLnR4dFVUBQADZSx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAOo+kkch
j704MgAAADMAAAAsABgAAAAAAAEAAACkgVOjAQBmYXN0L2ltYWdlcy9wZGYtYXMtaW1hZ2UtY3Jv
cC1ib3gtc3RkZXJyLnR4dFVUBQADZyx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAOk+kkcA
AAAAAAAAAAAAAAAMABgAAAAAAAAAEADtQeujAQBmYXN0L2xvYWRlci9VVAUAA2YsdFZ1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACADjPpJH2wjTQjsAAAA/AAAAUgAYAAAAAAABAAAApIExpAEAZmFz
dC9sb2FkZXIvZGlzcGxheS1pbWFnZS11bnNldC1jYW4tYmxvY2staW1hZ2UtYW5kLWNhbi1yZWxv
YWQtaW4tcGxhY2Utc3RkZXJyLnR4dFVUBQADWix0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
AOU+kkfbCNNCOwAAAD8AAABTABgAAAAAAAEAAACkgfikAQBmYXN0L2xvYWRlci9pbWFnZXMtZW5h
YmxlZC11bnNldC1jYW4tYmxvY2staW1hZ2UtYW5kLWNhbi1yZWxvYWQtaW4tcGxhY2Utc3RkZXJy
LnR4dFVUBQADXSx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAOk+kkfbCNNCOwAAAD8AAAAt
ABgAAAAAAAEAAACkgcClAQBmYXN0L2xvYWRlci9yZWxvYWQtcG9saWN5LWRlbGVnYXRlLXN0ZGVy
ci50eHRVVAUAA2YsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAADuPpJHAAAAAAAAAAAAAAAA
DQAYAAAAAAAAABAA7UFipgEAZmFzdC9yZWdpb25zL1VUBQADcCx0VnV4CwABBPUBAAAEFAAAAFBL
AQIeAwoAAAAAAO8+kkcAAAAAAAAAAAAAAAAXABgAAAAAAAAAEADtQammAQBmYXN0L3JlZ2lvbnMv
c2Nyb2xsaW5nL1VUBQADcSx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAO4+kkc5AcvdQAAA
AHoAAAA1ABgAAAAAAAEAAACkgfqmAQBmYXN0L3JlZ2lvbnMvc2Nyb2xsaW5nL3doZWVsLXNjcm9s
bC1hYnNwb3Mtc3RkZXJyLnR4dFVUBQADcCx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAO8+
kkc5AcvdQAAAAHoAAAAuABgAAAAAAAEAAACkgamnAQBmYXN0L3JlZ2lvbnMvc2Nyb2xsaW5nL3do
ZWVsLXNjcm9sbC1zdGRlcnIudHh0VVQFAANxLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
7z6SR+SKx0M8AAAAPQAAAEAAGAAAAAAAAQAAAKSBUagBAGZhc3QvcmVnaW9ucy9zY3JvbGxpbmcv
d2hlZWwtc2Nyb2xsYWJsZS1zaW5nbGUtcmVnaW9uLXN0ZGVyci50eHRVVAUAA3EsdFZ1eAsAAQT1
AQAABBQAAABQSwECHgMKAAAAAADwPpJHAAAAAAAAAAAAAAAADwAYAAAAAAAAABAA7UEHqQEAZmFz
dC9zY3JvbGxpbmcvVVQFAAN0LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA8T6SRwAAAAAA
AAAAAAAAABgAGAAAAAAAAAAQAO1BUKkBAGZhc3Qvc2Nyb2xsaW5nL2xhdGNoaW5nL1VUBQADdSx0
VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAPA+kkevzz9v3AAAADkBAAA5ABgAAAAAAAEAAACk
gaKpAQBmYXN0L3Njcm9sbGluZy9sYXRjaGluZy9zY3JvbGwtaWZyYW1lLWZyYWdtZW50LWFjdHVh
bC50eHRVVAUAA3QsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADwPpJHFLTisOcAAACnAQAA
NwAYAAAAAAABAAAApIHxqgEAZmFzdC9zY3JvbGxpbmcvbGF0Y2hpbmcvc2Nyb2xsLWlmcmFtZS1m
cmFnbWVudC1kaWZmLnR4dFVUBQADdCx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAPA+kker
zm+z1wAAADIBAAA7ABgAAAAAAAEAAACkgUmsAQBmYXN0L3Njcm9sbGluZy9sYXRjaGluZy9zY3Jv
bGwtaWZyYW1lLWZyYWdtZW50LWV4cGVjdGVkLnR4dFVUBQADdCx0VnV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAPE+kke8PLJL8gcAAKMaAAA/ABgAAAAAAAEAAACkgZWtAQBmYXN0L3Njcm9sbGlu
Zy9sYXRjaGluZy9zY3JvbGwtaWZyYW1lLWZyYWdtZW50LXByZXR0eS1kaWZmLmh0bWxVVAUAA3Us
dFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAD0PpJHAAAAAAAAAAAAAAAACQAYAAAAAAAAABAA
7UEAtgEAZmFzdC94c2wvVVQFAAN7LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA8z6SR3L9
ZfKFAAAA6QAAACUAGAAAAAAAAQAAAKSBQ7YBAGZhc3QveHNsL3RyYW5zZm9ybS14aHItZG9jLXN0
ZGVyci50eHRVVAUAA3osdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADzPpJHzgkoAo0AAADw
AAAAJwAYAAAAAAABAAAApIEntwEAZmFzdC94c2wveHNsdC1iYWQtaW1wb3J0LXVyaS1zdGRlcnIu
dHh0VVQFAAN6LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA8z6SR8+PZg5QAAAAoAAAACQA
GAAAAAAAAQAAAKSBFbgBAGZhc3QveHNsL3hzbHQtY29udGVudFR5cGUtc3RkZXJyLnR4dFVUBQAD
eix0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAPQ+kkeBSnetSwAAAKwAAAA0ABgAAAAAAAEA
AACkgcO4AQBmYXN0L3hzbC94c2x0LXRyYW5zZm9ybS10by1mcmFnbWVudC1jcmFzaC1zdGRlcnIu
dHh0VVQFAAN7LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAMUCSR38cWCmGAQAA5wIAABEA
GAAAAAAAAQAAAKSBfLkBAGZ1bGxfcmVzdWx0cy5qc29uVVQFAAPdLXRWdXgLAAEE9QEAAAQUAAAA
UEsBAh4DCgAAAAAA9j6SRwAAAAAAAAAAAAAAAAUAGAAAAAAAAAAQAO1BTbsBAGh0dHAvVVQFAAOA
LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAAT+SRwAAAAAAAAAAAAAAAAsAGAAAAAAAAAAQ
AO1BjLsBAGh0dHAvdGVzdHMvVVQFAAOSLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA+D6S
RwAAAAAAAAAAAAAAABEAGAAAAAAAAAAQAO1B0bsBAGh0dHAvdGVzdHMvY2FjaGUvVVQFAAODLHRW
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA+D6SR0RkEEnEAAAAegEAADAAGAAAAAAAAQAAAKSB
HLwBAGh0dHAvdGVzdHMvY2FjaGUvbWVtb3J5LWNhY2hlLXBydW5pbmctc3RkZXJyLnR4dFVUBQAD
gyx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAPY+kkcAAAAAAAAAAAAAAAASABgAAAAAAAAA
EADtQUq9AQBodHRwL3Rlc3RzL2NhbnZhcy9VVAUAA4AsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMK
AAAAAAD2PpJHAAAAAAAAAAAAAAAAGAAYAAAAAAAAABAA7UGWvQEAaHR0cC90ZXN0cy9jYW52YXMv
d2ViZ2wvVVQFAAOALHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA9j6SR+XHEcB7AAAArgAA
ADsAGAAAAAAAAQAAAKSB6L0BAGh0dHAvdGVzdHMvY2FudmFzL3dlYmdsL29yaWdpbi1jbGVhbi1j
b25mb3JtYW5jZS1zdGRlcnIudHh0VVQFAAOALHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA
+j6SRwAAAAAAAAAAAAAAAB0AGAAAAAAAAAAQAO1B2L4BAGh0dHAvdGVzdHMvY29udGVudGV4dGVu
c2lvbnMvVVQFAAOHLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA+j6SR1+pBr7AAAAAFwEA
ADoAGAAAAAAAAQAAAKSBL78BAGh0dHAvdGVzdHMvY29udGVudGV4dGVuc2lvbnMvdGV4dC10cmFj
ay1ibG9ja2VkLXN0ZGVyci50eHRVVAUAA4csdFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAAD
P5JHAAAAAAAAAAAAAAAAEQAYAAAAAAAAABAA7UFjwAEAaHR0cC90ZXN0cy9tZWRpYS9VVAUAA5Us
dFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAD5PpJHAAAAAAAAAAAAAAAAGgAYAAAAAAAAABAA
7UGuwAEAaHR0cC90ZXN0cy9tZWRpYS9jbGVhcmtleS9VVAUAA4YsdFZ1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACAD5PpJH9SzF2wIBAABQAgAAOQAYAAAAAAABAAAApIECwQEAaHR0cC90ZXN0cy9t
ZWRpYS9jbGVhcmtleS9jbGVhci1rZXktaGxzLWFlczEyOC1zdGRlcnIudHh0VVQFAAOGLHRWdXgL
AAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA+z6SRwAAAAAAAAAAAAAAABUAGAAAAAAAAAAQAO1Bd8IB
AGh0dHAvdGVzdHMvbWVkaWEvaGxzL1VUBQADiix0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
APk+kkffUv8oYgEAAEcDAABAABgAAAAAAAEAAACkgcbCAQBodHRwL3Rlc3RzL21lZGlhL2hscy9o
bHMtYWNjZXNzaWJsaXR5LWRlc2NyaWJlcy12aWRlby1zdGRlcnIudHh0VVQFAAOGLHRWdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgA+j6SR5FcaN9VAQAA/AIAADoAGAAAAAAAAQAAAKSBosQBAGh0
dHAvdGVzdHMvbWVkaWEvaGxzL2hscy1hdWRpby10cmFja3MtaGFzLWF1ZGlvLXN0ZGVyci50eHRV
VAUAA4csdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAD6PpJH/SFQKlsBAAD8AgAAQQAYAAAA
AAABAAAApIFrxgEAaHR0cC90ZXN0cy9tZWRpYS9obHMvaGxzLWF1ZGlvLXRyYWNrcy1sb2NhbGUt
c2VsZWN0aW9uLXN0ZGVyci50eHRVVAUAA4gsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAD7
PpJH3MZXvVMBAAD8AgAAMAAYAAAAAAABAAAApIFByAEAaHR0cC90ZXN0cy9tZWRpYS9obHMvaGxz
LWF1ZGlvLXRyYWNrcy1zdGRlcnIudHh0VVQFAAOJLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgA+z6SR6G+t8GxAAAAlQEAACwAGAAAAAAAAQAAAKSB/skBAGh0dHAvdGVzdHMvbWVkaWEvaGxz
L2hscy1wcm9ncmVzcy1zdGRlcnIudHh0VVQFAAOJLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgA+z6SR8ueZTy5AAAAKgMAAD0AGAAAAAAAAQAAAKSBFcsBAGh0dHAvdGVzdHMvbWVkaWEvaGxz
L3ZpZGVvLWNvbnRyb2xsZXItZ2V0U3RhcnREYXRlLXN0ZGVyci50eHRVVAUAA4osdFZ1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAD5PpJHKAC66XsAAACuAAAAMgAYAAAAAAABAAAApIFFzAEAaHR0
cC90ZXN0cy9tZWRpYS9tZWRpYS1kb2N1bWVudC1yZWZlcmVyLXN0ZGVyci50eHRVVAUAA4YsdFZ1
eAsAAQT1AQAABBQAAABQSwECHgMKAAIAAAD5PpJHsPqWbmMAAABjAAAAKgAYAAAAAAABAAAApIEs
zQEAaHR0cC90ZXN0cy9tZWRpYS9tZWRpYS1kb2N1bWVudC1zdGRlcnIudHh0VVQFAAOGLHRWdXgL
AAEE9QEAAAQUAAAAUEsBAh4DCgACAAAA+z6SRzEmF2VjAAAAYwAAADkAGAAAAAAAAQAAAKSB880B
AGh0dHAvdGVzdHMvbWVkaWEvbWVkaWEtcGxheS1zdHJlYW0tY2h1bmtlZC1pY3ktc3RkZXJyLnR4
dFVUBQADiSx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAAs/kkcAAAAAAAAAAAAAAAAeABgA
AAAAAAAAEADtQcnOAQBodHRwL3Rlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9VVAUAA6UsdFZ1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAD9PpJHRlyZrsUAAAD1AAAAQgAYAAAAAAABAAAApIEhzwEA
aHR0cC90ZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtYXBwZW5kLWJ1ZmZlci1z
dGRlcnIudHh0VVQFAAOOLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA/T6SR6SMqgXGAAAA
OAQAADsAGAAAAAAAAQAAAKSBYtABAGh0dHAvdGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlh
c291cmNlLWNsb3NlZC1zdGRlcnIudHh0VVQFAAOOLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAAD+SRytz/KvSAAAA3wIAAFAAGAAAAAAAAQAAAKSBndEBAGh0dHAvdGVzdHMvbWVkaWEvbWVk
aWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2UtbXA0LXYtYml0cmF0ZS1zdGRlcnIu
dHh0VVQFAAOQLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAAj+SR2ShfD1NAQAAkwMAAFIA
GAAAAAAAAQAAAKSB+dIBAGh0dHAvdGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhc291cmNl
LWNvbmZpZy1jaGFuZ2UtbXA0LXYtZnJhbWVyYXRlLXN0ZGVyci50eHRVVAUAA5MsdFZ1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAADP5JH4m/uKZ4AAAC0AAAATQAYAAAAAAABAAAApIHS1AEAaHR0
cC90ZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtZW5kb2ZzdHJlYW0taW52YWxp
ZGVycm9yLXN0ZGVyci50eHRVVAUAA5YsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAHP5JH
mi8+bp0AAAC0AAAAOwAYAAAAAAABAAAApIH31QEAaHR0cC90ZXN0cy9tZWRpYS9tZWRpYS1zb3Vy
Y2UvbWVkaWFzb3VyY2UtcmVtb3ZlLXN0ZGVyci50eHRVVAUAA54sdFZ1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACAAJP5JHBWecj8EAAACEAwAARgAYAAAAAAABAAAApIEJ1wEAaHR0cC90ZXN0cy9t
ZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2Utc291cmNlYnVmZmVyLW1vZGUtc3RkZXJyLnR4
dFVUBQADoix0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAs/kkfumb7psAAAABwCAABFABgA
AAAAAAEAAACkgUrYAQBodHRwL3Rlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1z
b3VyY2VidWZmZXJsaXN0LXN0ZGVyci50eHRVVAUAA6UsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACAD7PpJHQgV+8O4AAABfAQAALQAYAAAAAAABAAAApIF52QEAaHR0cC90ZXN0cy9tZWRpYS9w
ZGYtc2VydmVkLWFzLXBkZi1zdGRlcnIudHh0VVQFAAOJLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4D
CgACAAAA+z6SRzOfFHJjAAAAYwAAAC8AGAAAAAAAAQAAAKSBztoBAGh0dHAvdGVzdHMvbWVkaWEv
cmVsb2FkLWFmdGVyLWRpYWxvZy1zdGRlcnIudHh0VVQFAAOKLHRWdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgA+z6SR7/da53pAAAAWgEAAC8AGAAAAAAAAQAAAKSBmtsBAGh0dHAvdGVzdHMvbWVk
aWEvdGV4dC1zZXJ2ZWQtYXMtdGV4dC1zdGRlcnIudHh0VVQFAAOKLHRWdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgA/D6SR17K0fayAAAAlQEAADYAGAAAAAAAAQAAAKSB7NwBAGh0dHAvdGVzdHMv
bWVkaWEvdHJhY2staW4tYmFuZC1obHMtbWV0YWRhdGEtc3RkZXJyLnR4dFVUBQADjCx0VnV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAPw+kkexstU79wAAAPkBAAAmABgAAAAAAAEAAACkgQ7eAQBo
dHRwL3Rlc3RzL21lZGlhL3ZpZGVvLWF1dGgtc3RkZXJyLnR4dFVUBQADjCx0VnV4CwABBPUBAAAE
FAAAAFBLAQIeAwoAAgAAAP0+kke2MZJXYwAAAGMAAAAtABgAAAAAAAEAAACkgWXfAQBodHRwL3Rl
c3RzL21lZGlhL3ZpZGVvLWVycm9yLWFib3J0LXN0ZGVyci50eHRVVAUAA40sdFZ1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACAD9PpJH8NQE0rMAAAAjAQAANgAYAAAAAAABAAAApIEv4AEAaHR0cC90
ZXN0cy9tZWRpYS92aWRlby1lcnJvci1kb2VzLW5vdC1leGlzdC1zdGRlcnIudHh0VVQFAAOOLHRW
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAAD+SR06hPw9oAAAAxgAAACwAGAAAAAAAAQAAAKSB
UuEBAGh0dHAvdGVzdHMvbWVkaWEvdmlkZW8tbG9hZC10d2ljZS1zdGRlcnIudHh0VVQFAAOQLHRW
dXgLAAEE9QEAAAQUAAAAUEsBAh4DCgACAAAAAT+SR5rTLgtjAAAAYwAAAC8AGAAAAAAAAQAAAKSB
IOIBAGh0dHAvdGVzdHMvbWVkaWEvdmlkZW8tcGxheS1wcm9ncmVzcy1zdGRlcnIudHh0VVQFAAOR
LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAAj+SRwZHY3qtAAAALwEAACoAGAAAAAAAAQAA
AKSB7OIBAGh0dHAvdGVzdHMvbWVkaWEvdmlkZW8tcmVkaXJlY3Qtc3RkZXJyLnR4dFVUBQADlCx0
VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAgAAAAM/kkcffaguYwAAAGMAAAArABgAAAAAAAEAAACk
gf3jAQBodHRwL3Rlc3RzL21lZGlhL3ZpZGVvLXVzZXJhZ2VudC1zdGRlcnIudHh0VVQFAAOVLHRW
dXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAGD+SRwAAAAAAAAAAAAAAABAAGAAAAAAAAAAQAO1B
xeQBAGh0dHAvdGVzdHMvbWlzYy9VVAUAA8AsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAB
P5JHubTSCtMAAAAXAQAAPwAYAAAAAAABAAAApIEP5QEAaHR0cC90ZXN0cy9taXNjL2RlbGV0ZS1m
cmFtZS1kdXJpbmctcmVhZHlzdGF0ZWNoYW5nZS1zdGRlcnIudHh0VVQFAAOSLHRWdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAAT+SR3/NyUvUAAAAFwEAAFsAGAAAAAAAAQAAAKSBW+YBAGh0dHAv
dGVzdHMvbWlzYy9kZWxldGUtZnJhbWUtZHVyaW5nLXJlYWR5c3RhdGVjaGFuZ2Utd2l0aC1nYy1h
ZnRlci12aWRlby1yZW1vdmFsLXN0ZGVyci50eHRVVAUAA5IsdFZ1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAAYP5JHFTU1knoAAAC8AAAAKgAYAAAAAAABAAAApIHE5wEAaHR0cC90ZXN0cy9taXNj
L3hzbHQtYmFkLWltcG9ydC1zdGRlcnIudHh0VVQFAAPALHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4D
CgAAAAAA/D6SRwAAAAAAAAAAAAAAABYAGAAAAAAAAAAQAO1BougBAGh0dHAvdGVzdHMvbmF2aWdh
dGlvbi9VVAUAA4wsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAD8PpJH2wjTQjsAAAA/AAAA
NwAYAAAAAAABAAAApIHy6AEAaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL2ZhbGxiYWNrLWFuY2hvci1y
ZWxvYWQtc3RkZXJyLnR4dFVUBQADjCx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAAU/kkcA
AAAAAAAAAAAAAAAUABgAAAAAAAAAEADtQZ7pAQBodHRwL3Rlc3RzL3NlY3VyaXR5L1VUBQADmSx0
VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAAQ/kkcAAAAAAAAAAAAAAAAqABgAAAAAAAAAEADt
QezpAQBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9VVAUAA5csdFZ1
eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAD8PpJHAAAAAAAAAAAAAAAAPQAYAAAAAAAAABAA7UFQ
6gEAaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvdXNlckFnZW50U2hh
ZG93RE9NL1VUBQADiyx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAPs+kkdHYGSSegAAAK4A
AABTABgAAAAAAAEAAACkgcfqAQBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBv
bGljeS91c2VyQWdlbnRTaGFkb3dET00vYWxsb3ctYXVkaW8tc3RkZXJyLnR4dFVUBQADiix0VnV4
CwABBPUBAAAEFAAAAFBLAQIeAwoAAgAAAPw+kkdg7zsfYwAAAGMAAABTABgAAAAAAAEAAACkgc7r
AQBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS91c2VyQWdlbnRTaGFk
b3dET00vYWxsb3ctdmlkZW8tc3RkZXJyLnR4dFVUBQADiyx0VnV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIAAQ/kkdjqqxsggAAAKgAAABAABgAAAAAAAEAAACkgb7sAQBodHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS94c2wtYWxsb3dlZC1zdGRlcnIudHh0VVQFAAOXLHRW
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgABD+SR2OqrGyCAAAAqAAAAFIAGAAAAAAAAQAAAKSB
uu0BAGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3hzbC11bmFmZmVj
dGVkLWJ5LXN0eWxlLXNyYy0yLXN0ZGVyci50eHRVVAUAA5csdFZ1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAAAP5JH3LivwXsAAACuAAAAPQAYAAAAAAABAAAApIHI7gEAaHR0cC90ZXN0cy9zZWN1
cml0eS9sb2NhbC12aWRlby1zb3VyY2UtZnJvbS1yZW1vdGUtc3RkZXJyLnR4dFVUBQADjyx0VnV4
CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAPw+kkcAAAAAAAAAAAAAAAAhABgAAAAAAAAAEADtQbrv
AQBodHRwL3Rlc3RzL3NlY3VyaXR5L21peGVkQ29udGVudC9VVAUAA4wsdFZ1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACAD8PpJH3Hcfx3wAAAARAQAATgAYAAAAAAABAAAApIEV8AEAaHR0cC90ZXN0
cy9zZWN1cml0eS9taXhlZENvbnRlbnQvaW5zZWN1cmUtYXVkaW8tdmlkZW8taW4tbWFpbi1mcmFt
ZS1zdGRlcnIudHh0VVQFAAOMLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgABT+SR2BLZhCR
AAAA+wEAAEUAGAAAAAAAAQAAAKSBGfEBAGh0dHAvdGVzdHMvc2VjdXJpdHkveHNzLURFTklFRC14
c2wtZG9jdW1lbnQtc2VjdXJpdHlPcmlnaW4tc3RkZXJyLnR4dFVUBQADmSx0VnV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIALk+kkc1E8aamQUAABEQAAAKABgAAAAAAAEAAACkgSnyAQBodHRwZC5j
b25mVVQFAAMOLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAFD+SRwAAAAAAAAAAAAAAAAkA
GAAAAAAAAAAQAO1BBvgBAGltcG9ydGVkL1VUBQADtyx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoA
AAAAAAc/kkcAAAAAAAAAAAAAAAAPABgAAAAAAAAAEADtQUn4AQBpbXBvcnRlZC9ibGluay9VVAUA
A54sdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAADP5JHn8j5u78AAADyBgAAHwAYAAAAAAAB
AAAApIGS+AEAaW1wb3J0ZWQvYmxpbmsvMDAxLWEtc3RkZXJyLnR4dFVUBQADlSx0VnV4CwABBPUB
AAAEFAAAAFBLAQIeAwoAAAAAAAc/kkcAAAAAAAAAAAAAAAAUABgAAAAAAAAAEADtQar5AQBpbXBv
cnRlZC9ibGluay9mYXN0L1VUBQADnix0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAAg/kkcA
AAAAAAAAAAAAAAAaABgAAAAAAAAAEADtQfj5AQBpbXBvcnRlZC9ibGluay9mYXN0L2Zvcm1zL1VU
BQADnyx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAAc/kkcAAAAAAAAAAAAAAAAhABgAAAAA
AAAAEADtQUz6AQBpbXBvcnRlZC9ibGluay9mYXN0L2Zvcm1zL2J1dHRvbi9VVAUAA54sdFZ1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAAHP5JHxyHv2zcAAABAAAAARwAYAAAAAAABAAAApIGn+gEA
aW1wb3J0ZWQvYmxpbmsvZmFzdC9mb3Jtcy9idXR0b24vYnV0dG9uLXJlc2V0LWZvY3VzLWJ5LW1v
dXNlLXN0ZGVyci50eHRVVAUAA54sdFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAAIP5JHAAAA
AAAAAAAAAAAAIAAYAAAAAAAAABAA7UFf+wEAaW1wb3J0ZWQvYmxpbmsvZmFzdC9mb3Jtcy9yYW5n
ZS9VVAUAA58sdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAIP5JHxyHv2zcAAABAAAAAPwAY
AAAAAAABAAAApIG5+wEAaW1wb3J0ZWQvYmxpbmsvZmFzdC9mb3Jtcy9yYW5nZS9yYW5nZS1mb2N1
cy1ieS1tb3VzZS1zdGRlcnIudHh0VVQFAAOfLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA
CD+SRwAAAAAAAAAAAAAAACEAGAAAAAAAAAAQAO1BafwBAGltcG9ydGVkL2JsaW5rL2Zhc3QvZm9y
bXMvc3VibWl0L1VUBQADnyx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAg/kkfHIe/bNwAA
AEAAAABBABgAAAAAAAEAAACkgcT8AQBpbXBvcnRlZC9ibGluay9mYXN0L2Zvcm1zL3N1Ym1pdC9z
dWJtaXQtZm9jdXMtYnktbW91c2Utc3RkZXJyLnR4dFVUBQADnyx0VnV4CwABBPUBAAAEFAAAAFBL
AQIeAwoAAAAAABQ/kkcAAAAAAAAAAAAAAAANABgAAAAAAAAAEADtQXb9AQBpbXBvcnRlZC93M2Mv
VVQFAAO3LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAFD+SRwAAAAAAAAAAAAAAACAAGAAA
AAAAAAAQAO1Bvf0BAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvVVQFAAO3LHRWdXgL
AAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAFD+SRwAAAAAAAAAAAAAAACUAGAAAAAAAAAAQAO1BF/4B
AGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9VVAUAA7csdFZ1eAsAAQT1AQAA
BBQAAABQSwECHgMKAAAAAAAUP5JHAAAAAAAAAAAAAAAALwAYAAAAAAAAABAA7UF2/gEAaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9VVAUAA7csdFZ1eAsAAQT1
AQAABBQAAABQSwECHgMKAAAAAAAVP5JHAAAAAAAAAAAAAAAAQAAYAAAAAAAAABAA7UHf/gEAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250
ZW50L1VUBQADuSx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAABs/kkcAAAAAAAAAAAAAAABP
ABgAAAAAAAAAEADtQVn/AQBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2Vt
YW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvVVQFAAPFLHRWdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAFD+SR2gVuUdoAAAAxgAAAGcAGAAAAAAAAQAAAKSB4v8BAGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVu
dC9tZWRpYS1lbGVtZW50cy9ldmVudF9jYW5wbGF5LXN0ZGVyci50eHRVVAUAA7csdFZ1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAUP5JHbEXcuWgAAADGAAAAcgAYAAAAAAABAAAApIHrAAIAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250
ZW50L21lZGlhLWVsZW1lbnRzL2V2ZW50X2NhbnBsYXlfbm9hdXRvcGxheS1zdGRlcnIudHh0VVQF
AAO3LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFD+SR2xF3LloAAAAxgAAAG4AGAAAAAAA
AQAAAKSB/wECAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mv
ZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9ldmVudF9jYW5wbGF5dGhyb3VnaC1zdGRl
cnIudHh0VVQFAAO3LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFD+SR7Pqrc9oAAAAxgAA
AHkAGAAAAAAAAQAAAKSBDwMCAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9z
ZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9ldmVudF9jYW5wbGF5dGhy
b3VnaF9ub2F1dG9wbGF5LXN0ZGVyci50eHRVVAUAA7gsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACAAUP5JHs+qtz2gAAADGAAAAdQAYAAAAAAABAAAApIEqBAIAaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1l
bnRzL2V2ZW50X2xvYWRlZGRhdGFfbm9hdXRvcGxheS1zdGRlcnIudHh0VVQFAAO4LHRWdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAFT+SR7e6yDFoAAAAxgAAAG4AGAAAAAAAAQAAAKSBQQUCAGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29u
dGVudC9tZWRpYS1lbGVtZW50cy9ldmVudF9sb2FkZWRtZXRhZGF0YS1zdGRlcnIudHh0VVQFAAO5
LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFT+SR7e6yDFoAAAAxgAAAHkAGAAAAAAAAQAA
AKSBUQYCAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1i
ZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9ldmVudF9sb2FkZWRtZXRhZGF0YV9ub2F1dG9w
bGF5LXN0ZGVyci50eHRVVAUAA7ksdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAVP5JH+kwW
6GgAAADGAAAAaQAYAAAAAAABAAAApIFsBwIAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL2V2ZW50X2xv
YWRzdGFydC1zdGRlcnIudHh0VVQFAAO6LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFT+S
R/pMFuhoAAAAxgAAAHQAGAAAAAAAAQAAAKSBdwgCAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9ldmVu
dF9sb2Fkc3RhcnRfbm9hdXRvcGxheS1zdGRlcnIudHh0VVQFAAO6LHRWdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAFj+SR/4ccxZoAAAAxgAAAHwAGAAAAAAAAQAAAKSBjQkCAGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRp
YS1lbGVtZW50cy9ldmVudF9vcmRlcl9jYW5wbGF5X2NhbnBsYXl0aHJvdWdoLXN0ZGVyci50eHRV
VAUAA7ssdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAWP5JH/hxzFmgAAADGAAAAdQAYAAAA
AAABAAAApIGrCgIAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGlj
cy9lbWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL2V2ZW50X29yZGVyX2NhbnBsYXlfcGxh
eWluZy1zdGRlcnIudHh0VVQFAAO7LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFj+SRyGm
2oBoAAAAxgAAAH8AGAAAAAAAAQAAAKSBwgsCAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9ldmVudF9v
cmRlcl9sb2FkZWRtZXRhZGF0YV9sb2FkZWRkYXRhLXN0ZGVyci50eHRVVAUAA7wsdFZ1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAWP5JHIabagGgAAADGAAAAeAAYAAAAAAABAAAApIHjDAIAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250
ZW50L21lZGlhLWVsZW1lbnRzL2V2ZW50X29yZGVyX2xvYWRzdGFydF9wcm9ncmVzcy1zdGRlcnIu
dHh0VVQFAAO8LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFz+SRyGm2oBoAAAAxgAAAGUA
GAAAAAAAAQAAAKSB/Q0CAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1h
bnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9ldmVudF9wYXVzZS1zdGRlcnIu
dHh0VVQFAAO9LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFz+SRyX2v35oAAAAxgAAAHAA
GAAAAAAAAQAAAKSBBA8CAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1h
bnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9ldmVudF9wYXVzZV9ub2F1dG9w
bGF5LXN0ZGVyci50eHRVVAUAA70sdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAXP5JHJfa/
fmgAAADGAAAAZAAYAAAAAAABAAAApIEWEAIAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL2V2ZW50X3Bs
YXktc3RkZXJyLnR4dFVUBQADvSx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABc/kkdoAGGn
aAAAAMYAAABvABgAAAAAAAEAAACkgRwRAgBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvZXZlbnRfcGxh
eV9ub2F1dG9wbGF5LXN0ZGVyci50eHRVVAUAA74sdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAAXP5JHaABhp2gAAADGAAAAZwAYAAAAAAABAAAApIEtEgIAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRz
L2V2ZW50X3BsYXlpbmctc3RkZXJyLnR4dFVUBQADvix0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIABg/kkdsUARZaAAAAMYAAAByABgAAAAAAAEAAACkgTYTAgBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVu
dHMvZXZlbnRfcGxheWluZ19ub2F1dG9wbGF5LXN0ZGVyci50eHRVVAUAA78sdFZ1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACAAYP5JHbFAEWWgAAADGAAAAaAAYAAAAAAABAAAApIFKFAIAaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50
L21lZGlhLWVsZW1lbnRzL2V2ZW50X3Byb2dyZXNzLXN0ZGVyci50eHRVVAUAA78sdFZ1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAYP5JHl3NDUWgAAADGAAAAcwAYAAAAAAABAAAApIFUFQIAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250
ZW50L21lZGlhLWVsZW1lbnRzL2V2ZW50X3Byb2dyZXNzX25vYXV0b3BsYXktc3RkZXJyLnR4dFVU
BQADwCx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABg/kkeXc0NRaAAAAMYAAABqABgAAAAA
AAEAAACkgWkWAgBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvZXZlbnRfdGltZXVwZGF0ZS1zdGRlcnIu
dHh0VVQFAAPALHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAGT+SR5MjJq9oAAAAxgAAAHUA
GAAAAAAAAQAAAKSBdRcCAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1h
bnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9ldmVudF90aW1ldXBkYXRlX25v
YXV0b3BsYXktc3RkZXJyLnR4dFVUBQADwSx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAABQ/
kkcAAAAAAAAAAAAAAABaABgAAAAAAAAAEADtQYwYAgBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvaW50
ZXJmYWNlcy9VVAUAA7csdFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAAUP5JHAAAAAAAAAAAA
AAAAZAAYAAAAAAAAABAA7UEgGQIAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL2ludGVyZmFjZXMvVGV4
dFRyYWNrL1VUBQADtyx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABQ/kkcIPaN2ewAAAK4A
AAB5ABgAAAAAAAEAAACkgb4ZAgBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
c2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvaW50ZXJmYWNlcy9UZXh0
VHJhY2svYWN0aXZlQ3Vlcy1zdGRlcnIudHh0VVQFAAO3LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAGT+SR/pLPshoAAAAxgAAAHcAGAAAAAAAAQAAAKSB7BoCAGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVt
ZW50cy9uZXR3b3JrU3RhdGVfZHVyaW5nX2xvYWRzdGFydC1zdGRlcnIudHh0VVQFAAPCLHRWdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAGT+SR/pLPshoAAAAxgAAAHIAGAAAAAAAAQAAAKSBBRwC
AGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQt
Y29udGVudC9tZWRpYS1lbGVtZW50cy9wYXVzZWRfZmFsc2VfZHVyaW5nX3BsYXktc3RkZXJyLnR4
dFVUBQADwix0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABo/kkf+G1s2aAAAAMYAAAByABgA
AAAAAAEAAACkgRkdAgBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50
aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvcGF1c2VkX3RydWVfZHVyaW5nX3Bh
dXNlLXN0ZGVyci50eHRVVAUAA8MsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAAVP5JHAAAA
AAAAAAAAAAAAagAYAAAAAAAAABAA7UEtHgIAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL3BsYXlpbmct
dGhlLW1lZGlhLXJlc291cmNlL1VUBQADuSx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABQ/
kkc+LdO0wQAAABcBAACRABgAAAAAAAEAAACkgdEeAgBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvcGxh
eWluZy10aGUtbWVkaWEtcmVzb3VyY2UvcGF1c2UtbW92ZS10by1vdGhlci1kb2N1bWVudC1zdGRl
cnIudHh0VVQFAAO4LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgACAAAAFD+SR0bO2hNjAAAAYwAA
AI8AGAAAAAAAAQAAAKSBXSACAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9z
ZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9wbGF5aW5nLXRoZS1tZWRp
YS1yZXNvdXJjZS9wYXVzZS1tb3ZlLXdpdGhpbi1kb2N1bWVudC1zdGRlcnIudHh0VVQFAAO4LHRW
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFT+SR5v5jqasAAAAzAAAAI8AGAAAAAAAAQAAAKSB
iSECAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRk
ZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9wbGF5aW5nLXRoZS1tZWRpYS1yZXNvdXJjZS9wYXVz
ZS1yZW1vdmUtZnJvbS1kb2N1bWVudC1zdGRlcnIudHh0VVQFAAO5LHRWdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAGj+SR/4bWzZoAAAAxgAAAHMAGAAAAAAAAQAAAKSB/iICAGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRp
YS1lbGVtZW50cy9yZWFkeVN0YXRlX2R1cmluZ19jYW5wbGF5LXN0ZGVyci50eHRVVAUAA8MsdFZ1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAaP5JH/htbNmgAAADGAAAAegAYAAAAAAABAAAApIET
JAIAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRl
ZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL3JlYWR5U3RhdGVfZHVyaW5nX2NhbnBsYXl0aHJvdWdo
LXN0ZGVyci50eHRVVAUAA8MsdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAaP5JHs+2F72gA
AADGAAAAdgAYAAAAAAABAAAApIEvJQIAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L21lZGlhLWVsZW1lbnRzL3JlYWR5U3RhdGVf
ZHVyaW5nX2xvYWRlZGRhdGEtc3RkZXJyLnR4dFVUBQADxCx0VnV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIABo/kkez7YXvaAAAAMYAAAB6ABgAAAAAAAEAAACkgUcmAgBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxl
bWVudHMvcmVhZHlTdGF0ZV9kdXJpbmdfbG9hZGVkbWV0YWRhdGEtc3RkZXJyLnR4dFVUBQADxCx0
VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABs/kke3veARaAAAAMYAAABzABgAAAAAAAEAAACk
gWMnAgBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVk
ZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvcmVhZHlTdGF0ZV9kdXJpbmdfcGxheWluZy1zdGRl
cnIudHh0VVQFAAPFLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAGz+SR0P8lvvXAAAAwgIA
AIQAGAAAAAAAAQAAAKSBeCgCAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9z
ZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy9zcmNfcmVmbGVjdHNfYXR0
cmlidXRlX25vdF9zb3VyY2VfZWxlbWVudHMtc3RkZXJyLnR4dFVUBQADxSx0VnV4CwABBPUBAAAE
FAAAAFBLAQIeAwoAAAAAABQ/kkcAAAAAAAAAAAAAAABVABgAAAAAAAAAEADtQQ0qAgBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQv
bWVkaWEtZWxlbWVudHMvdHJhY2svVVQFAAO4LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA
FD+SRwAAAAAAAAAAAAAAAGMAGAAAAAAAAAAQAO1BnCoCAGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC9tZWRpYS1lbGVtZW50cy90
cmFjay90cmFjay1lbGVtZW50L1VUBQADuCx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAgAAABQ/
kkeWhtqoYwAAAGMAAACCABgAAAAAAAEAAACkgTkrAgBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvbWVkaWEtZWxlbWVudHMvdHJh
Y2svdHJhY2stZWxlbWVudC90cmFjay1hcGktdGV4dHRyYWNrcy1zdGRlcnIudHh0VVQFAAO4LHRW
dXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAFT+SRwAAAAAAAAAAAAAAAFIAGAAAAAAAAAAQAO1B
WCwCAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRk
ZWQtY29udGVudC90aGUtYXVkaW8tZWxlbWVudC9VVAUAA7ksdFZ1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAAVP5JH7FT7D94AAADQAgAAbgAYAAAAAAABAAAApIHkLAIAaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250ZW50L3RoZS1hdWRp
by1lbGVtZW50L2F1ZGlvX2NvbnN0cnVjdG9yLXN0ZGVyci50eHRVVAUAA7ksdFZ1eAsAAQT1AQAA
BBQAAABQSwECHgMKAAAAAAA0P5JHAAAAAAAAAAAAAAAACgAYAAAAAAAAABAA7UFqLgIAaW5zcGVj
dG9yL1VUBQAD8yx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAACM/kkcAAAAAAAAAAAAAAAAT
ABgAAAAAAAAAEADtQa4uAgBpbnNwZWN0b3IvZGVidWdnZXIvVVQFAAPRLHRWdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgAIz+SR4jwtrCzAwAALxgAACoAGAAAAAAAAQAAAKSB+y4CAGluc3BlY3Rv
ci9kZWJ1Z2dlci9zY3JpcHRQYXJzZWQtc3RkZXJyLnR4dFVUBQAD0Sx0VnV4CwABBPUBAAAEFAAA
AFBLAQIeAwoAAAAAADQ/kkcAAAAAAAAAAAAAAAAOABgAAAAAAAAAEADtQRIzAgBpbnNwZWN0b3Iv
ZG9tL1VUBQAD9Cx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAgAAADQ/kkf+JzjgNQAAADUAAAAm
ABgAAAAAAAEAAACkgVozAgBpbnNwZWN0b3IvZG9tL2hpZGVIaWdobGlnaHQtYWN0dWFsLnR4dFVU
BQAD8yx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADQ/kkdaJRZeowEAAOIEAAAkABgAAAAA
AAEAAACkge8zAgBpbnNwZWN0b3IvZG9tL2hpZGVIaWdobGlnaHQtZGlmZi50eHRVVAUAA/MsdFZ1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA0P5JHmh1DXRsBAACjAwAAKAAYAAAAAAABAAAApIHw
NQIAaW5zcGVjdG9yL2RvbS9oaWRlSGlnaGxpZ2h0LWV4cGVjdGVkLnR4dFVUBQAD8yx0VnV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIADQ/kkci/fHPOwkAAOQuAAAsABgAAAAAAAEAAACkgW03AgBp
bnNwZWN0b3IvZG9tL2hpZGVIaWdobGlnaHQtcHJldHR5LWRpZmYuaHRtbFVUBQAD9Cx0VnV4CwAB
BPUBAAAEFAAAAFBLAQIeAwoAAAAAACA/kkcAAAAAAAAAAAAAAAAQABgAAAAAAAAAEADtQQ5BAgBp
bnNwZWN0b3IvbW9kZWwvVVQFAAPLLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAID+SRxMW
KLZ2GwAAStIBACsAGAAAAAAAAQAAAKSBWEECAGluc3BlY3Rvci9tb2RlbC9zY29wZS1jaGFpbi1u
b2RlLXN0ZGVyci50eHRVVAUAA8ssdFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABCP5JHAAAA
AAAAAAAAAAAAAwAYAAAAAAAAABAA7UEzXQIAanMvVVQFAAMLLXRWdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAQj+SR6m0M0M1FgAAQcMBACEAGAAAAAAAAQAAAKSBcF0CAGpzL2ludGwtZGF0ZXRp
bWVmb3JtYXQtYWN0dWFsLnR4dFVUBQADCy10VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEI/
kkdY0YTGawEAAN4EAAAfABgAAAAAAAEAAACkgQB0AgBqcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWRp
ZmYudHh0VVQFAAMLLXRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAQj+SR4Mdj6YgFgAARsMB
ACMAGAAAAAAAAQAAAKSBxHUCAGpzL2ludGwtZGF0ZXRpbWVmb3JtYXQtZXhwZWN0ZWQudHh0VVQF
AAMLLXRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAQj+SR4XA7yW9CAAAKSAAACcAGAAAAAAA
AQAAAKSBQYwCAGpzL2ludGwtZGF0ZXRpbWVmb3JtYXQtcHJldHR5LWRpZmYuaHRtbFVUBQADCy10
VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAEM/kkcAAAAAAAAAAAAAAAAGABgAAAAAAAAAEADt
QV+VAgBtZWRpYS9VVAUAAw4tdFZ1eAsAAQT1AQAABBQAAABQSwECHgMKAAIAAAAdP5JHT2r//GMA
AABjAAAAHwAYAAAAAAABAAAApIGflQIAbWVkaWEvYXVkaW8tZGF0YS11cmwtc3RkZXJyLnR4dFVU
BQADySx0VnV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAACQ/kkcAAAAAAAAAAAAAAAATABgAAAAA
AAAAEADtQVuWAgBtZWRpYS9tZWRpYS1zb3VyY2UvVVQFAAPULHRWdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAJD+SR5R/AnedAAAAtAAAADUAGAAAAAAAAQAAAKSBqJYCAG1lZGlhL21lZGlhLXNv
dXJjZS9tZWRpYS1zb3VyY2Utc3RwcC1jcmFzaC1zdGRlcnIudHh0VVQFAAPULHRWdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAKj+SRw9/jKtoAAAAxgAAACgAGAAAAAAAAQAAAKSBtJcCAG1lZGlh
L3NvdXJjZXMtZmFsbGJhY2stY29kZWNzLXN0ZGVyci50eHRVVAUAA+AsdFZ1eAsAAQT1AQAABBQA
AABQSwECHgMKAAAAAABDP5JHAAAAAAAAAAAAAAAADAAYAAAAAAAAABAA7UF+mAIAbWVkaWEvdHJh
Y2svVVQFAAMOLXRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgACAAAAQz+SR/4nOOA1AAAANQAAACoA
GAAAAAAAAQAAAKSBxJgCAG1lZGlhL3RyYWNrL3RyYWNrLWluLWJhbmQtc3R5bGUtYWN0dWFsLnR4
dFVUBQADDi10VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEM/kkf9avM2xQEAAG4DAAAoABgA
AAAAAAEAAACkgV2ZAgBtZWRpYS90cmFjay90cmFjay1pbi1iYW5kLXN0eWxlLWRpZmYudHh0VVQF
AAMOLXRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAQz+SRwz65Oo2AQAAMwIAACwAGAAAAAAA
AQAAAKSBhJsCAG1lZGlhL3RyYWNrL3RyYWNrLWluLWJhbmQtc3R5bGUtZXhwZWN0ZWQudHh0VVQF
AAMOLXRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAQz+SR9eck3ftCAAApSQAADAAGAAAAAAA
AQAAAKSBIJ0CAG1lZGlhL3RyYWNrL3RyYWNrLWluLWJhbmQtc3R5bGUtcHJldHR5LWRpZmYuaHRt
bFVUBQADDi10VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACo/kkfPTinSkAAAAL0AAAAhABgA
AAAAAAEAAACkgXemAgBtZWRpYS91bnN1cHBvcnRlZC1ydHNwLXN0ZGVyci50eHRVVAUAA+AsdFZ1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA8P5JHmn235GEAAAC8AQAAJgAYAAAAAAABAAAApIFi
pwIAbWVkaWEvdmlkZW8tcGxheWVkLXJhbmdlcy0xLXN0ZGVyci50eHRVVAUAAwQtdFZ1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAA9P5JH20Twdr8AAADyBgAAKAAYAAAAAAABAAAApIEjqAIAbWVk
aWEvdmlkZW8tcG9zdGVyLWJhY2tncm91bmQtc3RkZXJyLnR4dFVUBQADBS10VnV4CwABBPUBAAAE
FAAAAFBLAQIeAwoAAAAAACc/kkcAAAAAAAAAAAAAAAAIABgAAAAAAAAAEADtQUSpAgBwbHVnaW5z
L1VUBQAD2ix0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACc/kkfuXXJFhgAAAPYAAAA7ABgA
AAAAAAEAAACkgYapAgBwbHVnaW5zL25wcC1zZXQtd2luZG93LWNhbGxlZC1kdXJpbmctZGVzdHJ1
Y3Rpb24tc3RkZXJyLnR4dFVUBQAD2ix0VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAc/kkfn
MflYngIAAMsfAAArABgAAAAAAAEAAACkgYGqAgBweXdlYnNvY2tldC53cy5sb2ctMThEZWMyMDE1
LTA3NTM1MS1lcnIudHh0VVQFAAOdLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgABz+SRwCc
6iQIAQAAjwIAACsAGAAAAAAAAQAAAKSBhK0CAHB5d2Vic29ja2V0LndzLmxvZy0xOERlYzIwMTUt
MDc1MzUxLW91dC50eHRVVAUAA50sdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAxQJJH/UFT
hxEnAADKqAAADAAYAAAAAAABAAAApIHxrgIAcmVzdWx0cy5odG1sVVQFAAPeLXRWdXgLAAEE9QEA
AAQUAAAAUEsBAh4DCgAAAAAAMECSRwAAAAAAAAAAAAAAAAgAGAAAAAAAAAAQAO1BSNYCAHJldHJp
ZXMvVVQFAAPbLXRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAMECSRwAAAAAAAAAAAAAAAAsA
GAAAAAAAAAAQAO1BitYCAHJldHJpZXMvanMvVVQFAAPbLXRWdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAMECSR6m0M0M1FgAAQcMBACkAGAAAAAAAAQAAAKSBz9YCAHJldHJpZXMvanMvaW50bC1k
YXRldGltZWZvcm1hdC1hY3R1YWwudHh0VVQFAAPbLXRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAMECSR1TuAK5vAQAA7gQAACcAGAAAAAAAAQAAAKSBZ+0CAHJldHJpZXMvanMvaW50bC1kYXRl
dGltZWZvcm1hdC1kaWZmLnR4dFVUBQAD2y10VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADBA
kkeDHY+mIBYAAEbDAQArABgAAAAAAAEAAACkgTfvAgByZXRyaWVzL2pzL2ludGwtZGF0ZXRpbWVm
b3JtYXQtZXhwZWN0ZWQudHh0VVQFAAPbLXRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAMECS
R8QdFs/DCAAAMSAAAC8AGAAAAAAAAQAAAKSBvAUDAHJldHJpZXMvanMvaW50bC1kYXRldGltZWZv
cm1hdC1wcmV0dHktZGlmZi5odG1sVVQFAAPbLXRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA
KT+SRwAAAAAAAAAAAAAAAAsAGAAAAAAAAAAQAO1B6A4DAHNjcm9sbGJhcnMvVVQFAAPdLHRWdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAKT+SR269I2E5AAAAQgAAADsAGAAAAAAAAQAAAKSBLQ8D
AHNjcm9sbGJhcnMvc2Nyb2xsZXZlbnQtaWZyYW1lLW5vLXNjcm9sbGluZy13aGVlbC1zdGRlcnIu
dHh0VVQFAAPdLHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAMUCSR1oEgh5x4wcAxCsrAAoA
GAAAAAAAAQAAAKSB2w8DAHN0YXRzLmpzb25VVAUAA90tdFZ1eAsAAQT1AQAABBQAAABQSwECHgMK
AAAAAABQP5JHAAAAAAAAAAAAAAAABAAYAAAAAAAAABAA7UGQ8woAc3ZnL1VUBQADJy10VnV4CwAB
BPUBAAAEFAAAAFBLAQIeAwoAAAAAADg/kkcAAAAAAAAAAAAAAAANABgAAAAAAAAAEADtQc7zCgBz
dmcvYXMtaW1hZ2UvVVQFAAP7LHRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAOD+SR9sI00I7
AAAAPwAAAD8AGAAAAAAAAQAAAKSBFfQKAHN2Zy9hcy1pbWFnZS9zdmctaW1hZ2Utd2l0aC1kYXRh
LXVyaS1pbWFnZXMtZGlzYWJsZWQtc3RkZXJyLnR4dFVUBQAD+yx0VnV4CwABBPUBAAAEFAAAAFBL
AQIeAwoAAAAAAFI/kkcAAAAAAAAAAAAAAAALABgAAAAAAAAAEADtQcn0CgBzdmcvY3VzdG9tL1VU
BQADLC10VnV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFA/kkch9PbwOgAAAEIAAAAwABgAAAAA
AAEAAACkgQ71CgBzdmcvY3VzdG9tL3VzZS1pbnZhbGlkYXRlLWNsaWNrLWNyYXNoLXN0ZGVyci50
eHRVVAUAAyctdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABSP5JHWrFyy5AAAACmAAAAJAAY
AAAAAAABAAAApIGy9QoAc3ZnL2N1c3RvbS96ZXJvLWRhc2hhcnJheS1zdGRlcnIudHh0VVQFAAMs
LXRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAOz+SRwAAAAAAAAAAAAAAAAsAGAAAAAAAAAAQ
AO1BoPYKAHN2Zy9zdHJva2UvVVQFAAMBLXRWdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAOz+S
R18+3giQAAAApgAAACUAGAAAAAAAAQAAAKSB5fYKAHN2Zy9zdHJva2UvemVyby13aWR0aC1oYW5n
LXN0ZGVyci50eHRVVAUAAwEtdFZ1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAuQJJH+bS9Yx3L
AABMSBQAGQAYAAAAAAABAAAApIHU9woAd3B0d2tfcHJvY2Vzc19sb2cub3V0LnR4dFVUBQAD1y10
VnV4CwABBPUBAAAEFAAAAFBLBQYAAAAAEQERAZV/AABEwwsAAAA=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>267631</attachid>
            <date>2015-12-18 08:42:49 -0800</date>
            <delta_ts>2015-12-18 17:14:16 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147603-20151218094211.patch</filename>
            <type>text/plain</type>
            <size>230720</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk0MjY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAy
MDhiM2ViYjYxYjZlY2YyODcyMDVlNGY4M2JjYzY0NGJlM2E2NjZiLi4wOTU5MzJhZDY4NDI5NTNl
NGViNGMwYmZlYTViZTEyODM4MmU3OGE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0OSBAQAorMjAxNS0xMi0xOCAgQW5keSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVy
ZS5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudHMgSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0IGFu
ZCByZWxhdGVkIGFic3RyYWN0IG9wZXJhdGlvbnMKKyAgICAgICAgdXNpbmcgSUNVLiBMYXp5IGlu
aXRpYWxpemF0aW9uIGlzIHVzZWQgZm9yIERhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS4KKyAgICAg
ICAgUmVmYWN0b3IgdG8gYWxpZ24gd2l0aCBDb2xsYXRvciB3b3JrLgorCisgICAgICAgICogaWN1
L3VuaWNvZGUvdWRhdHBnLmg6IEFkZGVkLgorICAgICAgICAqIGljdS91bmljb2RlL3VudW1zeXMu
aDogQWRkZWQuCisgICAgICAgICogcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6ZGVmYXVs
dFRpbWVab25lKToKKyAgICAgICAgKEpTQzo6Y2Fub25pY2FsaXplVGltZVpvbmVOYW1lKToKKyAg
ICAgICAgKEpTQzo6bG9jYWxlRGF0YSk6CisgICAgICAgIChKU0M6OnRvRGF0ZVRpbWVPcHRpb25z
KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRGb3JtYXRzRnJvbVBhdHRl
cm4pOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmluaXRpYWxpemVEYXRlVGlt
ZUZvcm1hdCk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6d2Vla2RheVN0cmlu
Zyk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6ZXJhU3RyaW5nKToKKyAgICAg
ICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojp5ZWFyU3RyaW5nKToKKyAgICAgICAgKEpTQzo6
SW50bERhdGVUaW1lRm9ybWF0Ojptb250aFN0cmluZyk6CisgICAgICAgIChKU0M6OkludGxEYXRl
VGltZUZvcm1hdDo6ZGF5U3RyaW5nKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0
Ojpob3VyU3RyaW5nKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjptaW51dGVT
dHJpbmcpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNlY29uZFN0cmluZyk6
CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6dGltZVpvbmVOYW1lU3RyaW5nKToK
KyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpyZXNvbHZlZE9wdGlvbnMpOgorICAg
ICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmZvcm1hdCk6CisgICAgICAgIChKU0M6Oklu
dGxEYXRlVGltZUZvcm1hdEZ1bmNGb3JtYXREYXRlVGltZSk6IERlbGV0ZWQuCisgICAgICAgICog
cnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuaDoKKyAgICAgICAgKiBydW50aW1lL0ludGxEYXRl
VGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SW50bERh
dGVUaW1lRm9ybWF0KToKKyAgICAgICAgKEpTQzo6Y2FsbEludGxEYXRlVGltZUZvcm1hdCk6Cisg
ICAgICAgICogcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwOgorICAgICAg
ICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUpOgorICAgICAgICAo
SlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQpOgorICAgICAgICAo
SlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKToKKyAg
ICAgICAgKiBydW50aW1lL0ludGxPYmplY3QuY3BwOgorICAgICAgICAoSlNDOjpyZXNvbHZlTG9j
YWxlKToKKyAgICAgICAgKEpTQzo6Z2V0TnVtYmVyaW5nU3lzdGVtc0ZvckxvY2FsZSk6CisgICAg
ICAgICogcnVudGltZS9JbnRsT2JqZWN0Lmg6CisKIDIwMTUtMTItMTggIENzYWJhIE9zenRyb2dv
bsOhYyAgPG9zc3lAd2Via2l0Lm9yZz4KIAogICAgICAgICBbQVJNXSBBZGQgdGhlIG1pc3Npbmcg
c2V0dXBBcmd1bWVudHNXaXRoRXhlY1N0YXRlIGZ1bmN0aW9ucyBhZnRlciByMTkzOTc0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRhdHBnLmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRhdHBnLmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2RjN2U4
OWYyZGZiNjQwMjIwZjM1NzA4ODM1OGI2ZDljNTc4ZWIwZQotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9pY3UvdW5pY29kZS91ZGF0cGcuaApAQCAtMCwwICsxLDU4NiBA
QAorLyoKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyoKKyogICBDb3B5cmlnaHQgKEMpIDIwMDct
MjAxMCwgSW50ZXJuYXRpb25hbCBCdXNpbmVzcyBNYWNoaW5lcworKiAgIENvcnBvcmF0aW9uIGFu
ZCBvdGhlcnMuICBBbGwgUmlnaHRzIFJlc2VydmVkLgorKgorKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KgorKiAgIGZpbGUgbmFtZTogIHVkYXRwZy5oCisqICAgZW5jb2Rpbmc6ICAgVVMtQVNDSUkKKyog
ICB0YWIgc2l6ZTogICA4IChub3QgdXNlZCkKKyogICBpbmRlbnRhdGlvbjo0CisqCisqICAgY3Jl
YXRlZCBvbjogMjAwN2p1bDMwCisqICAgY3JlYXRlZCBieTogTWFya3VzIFcuIFNjaGVyZXIKKyov
CisKKyNpZm5kZWYgX19VREFUUEdfSF9fCisjZGVmaW5lIF9fVURBVFBHX0hfXworCisjaW5jbHVk
ZSAidW5pY29kZS91dHlwZXMuaCIKKyNpbmNsdWRlICJ1bmljb2RlL3VlbnVtLmgiCisjaW5jbHVk
ZSAidW5pY29kZS9sb2NhbHBvaW50ZXIuaCIKKworLyoqCisgKiBcZmlsZQorICogXGJyaWVmIEMg
QVBJOiBXcmFwcGVyIGZvciBEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKHVuaWNvZGUvZHRwdG5n
ZW4uaCkuCisgKgorICogVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciBwcm92aWRlcyBmbGV4aWJs
ZSBnZW5lcmF0aW9uIG9mIGRhdGUgZm9ybWF0IHBhdHRlcm5zLCAKKyAqIGxpa2UgInl5LU1NLWRk
Ii4gVGhlIHVzZXIgY2FuIGJ1aWxkIHVwIHRoZSBnZW5lcmF0b3IgYnkgYWRkaW5nIHN1Y2Nlc3Np
dmUgCisgKiBwYXR0ZXJucy4gT25jZSB0aGF0IGlzIGRvbmUsIGEgcXVlcnkgY2FuIGJlIG1hZGUg
dXNpbmcgYSAic2tlbGV0b24iLCB3aGljaCBpcyAKKyAqIGEgcGF0dGVybiB3aGljaCBqdXN0IGlu
Y2x1ZGVzIHRoZSBkZXNpcmVkIGZpZWxkcyBhbmQgbGVuZ3Rocy4gVGhlIGdlbmVyYXRvciAKKyAq
IHdpbGwgcmV0dXJuIHRoZSAiYmVzdCBmaXQiIHBhdHRlcm4gY29ycmVzcG9uZGluZyB0byB0aGF0
IHNrZWxldG9uLgorICogPHA+VGhlIG1haW4gbWV0aG9kIHBlb3BsZSB3aWxsIHVzZSBpcyB1ZGF0
cGdfZ2V0QmVzdFBhdHRlcm4sIHNpbmNlIG5vcm1hbGx5CisgKiBVRGF0ZVRpbWVQYXR0ZXJuR2Vu
ZXJhdG9yIGlzIHByZS1idWlsdCB3aXRoIGRhdGEgZnJvbSBhIHBhcnRpY3VsYXIgbG9jYWxlLiAK
KyAqIEhvd2V2ZXIsIGdlbmVyYXRvcnMgY2FuIGJlIGJ1aWx0IGRpcmVjdGx5IGZyb20gb3RoZXIg
ZGF0YSBhcyB3ZWxsLgorICogPHA+PGk+SXNzdWU6IG1heSBiZSB1c2VmdWwgdG8gYWxzbyBoYXZl
IGEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIHRoZSBsaXN0IG9mIAorICogZmllbGRzIGluIGEgcGF0
dGVybiwgaW4gb3JkZXIsIHNpbmNlIHdlIGhhdmUgdGhhdCBpbnRlcm5hbGx5LgorICogVGhhdCB3
b3VsZCBiZSB1c2VmdWwgZm9yIGdldHRpbmcgdGhlIFVJIG9yZGVyIG9mIGZpZWxkIGVsZW1lbnRz
LjwvaT4KKyAqLworCisvKioKKyAqIE9wYXF1ZSB0eXBlIGZvciBhIGRhdGUvdGltZSBwYXR0ZXJu
IGdlbmVyYXRvciBvYmplY3QuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLwordHlwZWRlZiB2b2lk
ICpVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOworCisvKioKKyAqIEZpZWxkIG51bWJlciBjb25z
dGFudHMgZm9yIHVkYXRwZ19nZXRBcHBlbmRJdGVtRm9ybWF0cygpIGFuZCBzaW1pbGFyIGZ1bmN0
aW9ucy4KKyAqIFRoZXNlIGNvbnN0YW50cyBhcmUgc2VwYXJhdGUgZnJvbSBVRGF0ZUZvcm1hdEZp
ZWxkIGRlc3BpdGUgc2VtYW50aWMgb3ZlcmxhcAorICogYmVjYXVzZSBzb21lIGZpZWxkcyBhcmUg
bWVyZ2VkIGZvciB0aGUgZGF0ZS90aW1lIHBhdHRlcm4gZ2VuZXJhdG9yLgorICogQHN0YWJsZSBJ
Q1UgMy44CisgKi8KK3R5cGVkZWYgZW51bSBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQgeworICAgIC8q
KiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfRVJBX0ZJRUxELAorICAgIC8qKiBAc3Rh
YmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfWUVBUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJ
Q1UgMy44ICovCisgICAgVURBVFBHX1FVQVJURVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNV
IDMuOCAqLworICAgIFVEQVRQR19NT05USF9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44
ICovCisgICAgVURBVFBHX1dFRUtfT0ZfWUVBUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1Ug
My44ICovCisgICAgVURBVFBHX1dFRUtfT0ZfTU9OVEhfRklFTEQsCisgICAgLyoqIEBzdGFibGUg
SUNVIDMuOCAqLworICAgIFVEQVRQR19XRUVLREFZX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElD
VSAzLjggKi8KKyAgICBVREFUUEdfREFZX09GX1lFQVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUg
SUNVIDMuOCAqLworICAgIFVEQVRQR19EQVlfT0ZfV0VFS19JTl9NT05USF9GSUVMRCwKKyAgICAv
KiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0RBWV9GSUVMRCwKKyAgICAvKiogQHN0
YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0RBWVBFUklPRF9GSUVMRCwKKyAgICAvKiogQHN0
YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0hPVVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUg
SUNVIDMuOCAqLworICAgIFVEQVRQR19NSU5VVEVfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNV
IDMuOCAqLworICAgIFVEQVRQR19TRUNPTkRfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19GUkFDVElPTkFMX1NFQ09ORF9GSUVMRCwKKyAgICAvKiogQHN0YWJs
ZSBJQ1UgMy44ICovCisgICAgVURBVFBHX1pPTkVfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNV
IDMuOCAqLworICAgIFVEQVRQR19GSUVMRF9DT1VOVAorfSBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQ7
CisKKy8qKgorICogTWFza3MgdG8gY29udHJvbCBmb3JjaW5nIHRoZSBsZW5ndGggb2Ygc3BlY2lm
aWVkIGZpZWxkcyBpbiB0aGUgcmV0dXJuZWQKKyAqIHBhdHRlcm4gdG8gbWF0Y2ggdGhvc2UgaW4g
dGhlIHNrZWxldG9uICh3aGVuIHRoaXMgd291bGQgbm90IGhhcHBlbgorICogb3RoZXJ3aXNlKS4g
VGhlc2UgbWF5IGJlIGNvbWJpbmVkIHRvIGZvcmNlIHRoZSBsZW5ndGggb2YgbXVsdGlwbGUgZmll
bGRzLgorICogVXNlZCB3aXRoIHVkYXRwZ19nZXRCZXN0UGF0dGVybldpdGhPcHRpb25zLCB1ZGF0
cGdfcmVwbGFjZUZpZWxkVHlwZXNXaXRoT3B0aW9ucy4KKyAqIEBzdGFibGUgSUNVIDQuNAorICov
Cit0eXBlZGVmIGVudW0gVURhdGVUaW1lUGF0dGVybk1hdGNoT3B0aW9ucyB7CisgICAgLyoqIEBz
dGFibGUgSUNVIDQuNCAqLworICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TID0gMCwKKyAgICAv
KiogQHN0YWJsZSBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX0hPVVJfRklFTERfTEVOR1RI
ID0gMSA8PCBVREFUUEdfSE9VUl9GSUVMRCwKKyAgICAvKiogQGludGVybmFsIElDVSA0LjQgKi8K
KyAgICBVREFUUEdfTUFUQ0hfTUlOVVRFX0ZJRUxEX0xFTkdUSCA9IDEgPDwgVURBVFBHX01JTlVU
RV9GSUVMRCwKKyAgICAvKiogQGludGVybmFsIElDVSA0LjQgKi8KKyAgICBVREFUUEdfTUFUQ0hf
U0VDT05EX0ZJRUxEX0xFTkdUSCA9IDEgPDwgVURBVFBHX1NFQ09ORF9GSUVMRCwKKyAgICAvKiog
QHN0YWJsZSBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX0FMTF9GSUVMRFNfTEVOR1RIID0g
KDEgPDwgVURBVFBHX0ZJRUxEX0NPVU5UKSAtIDEKK30gVURhdGVUaW1lUGF0dGVybk1hdGNoT3B0
aW9uczsKKworLyoqCisgKiBTdGF0dXMgcmV0dXJuIHZhbHVlcyBmcm9tIHVkYXRwZ19hZGRQYXR0
ZXJuKCkuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLwordHlwZWRlZiBlbnVtIFVEYXRlVGltZVBh
dHRlcm5Db25mbGljdCB7CisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19O
T19DT05GTElDVCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0JBU0Vf
Q09ORkxJQ1QsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19DT05GTElD
VCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0NPTkZMSUNUX0NPVU5U
Cit9IFVEYXRlVGltZVBhdHRlcm5Db25mbGljdDsKKworLyoqCisgICogT3BlbiBhIGdlbmVyYXRv
ciBhY2NvcmRpbmcgdG8gYSBnaXZlbiBsb2NhbGUuCisgICogQHBhcmFtIGxvY2FsZQorICAqIEBw
YXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5v
dCBpbmRpY2F0ZSBhCisgICogICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1
bmN0aW9uIGNhbGwuCisgICogQHJldHVybiBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvci4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIFVEYXRlVGltZVBh
dHRlcm5HZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVuKGNvbnN0IGNoYXIgKmxvY2Fs
ZSwgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIE9wZW4gYW4gZW1wdHkgZ2Vu
ZXJhdG9yLCB0byBiZSBjb25zdHJ1Y3RlZCB3aXRoIHVkYXRwZ19hZGRQYXR0ZXJuKC4uLikgZXRj
LgorICAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGlj
aCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgICogICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZv
cmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgICogQHJldHVybiBhIHBvaW50ZXIgdG8gVURhdGVUaW1l
UGF0dGVybkdlbmVyYXRvci4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIFVE
YXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVuRW1wdHkoVUVy
cm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIENsb3NlIGEgZ2VuZXJhdG9yLgorICAq
IEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAq
IEBzdGFibGUgSUNVIDMuOAorICAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19j
bG9zZShVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnKTsKKworI2lmIFVfU0hPV19DUExV
U1BMVVNfQVBJCisKK1VfTkFNRVNQQUNFX0JFR0lOCisKKy8qKgorICogXGNsYXNzIExvY2FsVURh
dGVUaW1lUGF0dGVybkdlbmVyYXRvclBvaW50ZXIKKyAqICJTbWFydCBwb2ludGVyIiBjbGFzcywg
Y2xvc2VzIGEgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciB2aWEgdWRhdHBnX2Nsb3NlKCkuCisg
KiBGb3IgbW9zdCBtZXRob2RzIHNlZSB0aGUgTG9jYWxQb2ludGVyQmFzZSBiYXNlIGNsYXNzLgor
ICoKKyAqIEBzZWUgTG9jYWxQb2ludGVyQmFzZQorICogQHNlZSBMb2NhbFBvaW50ZXIKKyAqIEBz
dGFibGUgSUNVIDQuNAorICovCitVX0RFRklORV9MT0NBTF9PUEVOX1BPSU5URVIoTG9jYWxVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yUG9pbnRlciwgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciwg
dWRhdHBnX2Nsb3NlKTsKKworVV9OQU1FU1BBQ0VfRU5ECisKKyNlbmRpZgorCisvKioKKyAgKiBD
cmVhdGUgYSBjb3B5IHBmIGEgZ2VuZXJhdG9yLgorICAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0
byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yIHRvIGJlIGNvcGllZC4KKyAgKiBAcGFyYW0gcEVy
cm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNh
dGUgYQorICAqICAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBj
YWxsLgorICAqIEByZXR1cm4gYSBwb2ludGVyIHRvIGEgbmV3IFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IuCisgICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19jbG9uZShjb25zdCBVRGF0ZVRpbWVQYXR0
ZXJuR2VuZXJhdG9yICpkdHBnLCBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBH
ZXQgdGhlIGJlc3QgcGF0dGVybiBtYXRjaGluZyB0aGUgaW5wdXQgc2tlbGV0b24uIEl0IGlzIGd1
YXJhbnRlZWQgdG8KKyAqIGhhdmUgYWxsIG9mIHRoZSBmaWVsZHMgaW4gdGhlIHNrZWxldG9uLgor
ICogCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGlt
ZVBhdHRlcm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIg
d2hpY2ggaXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhh
biBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNh
bGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRo
aXMgZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVy
YXRvciBvYmplY3QuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQ
YXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHNrZWxldG9uCisgKiAgICAgICAgICAgIFRoZSBz
a2VsZXRvbiBpcyBhIHBhdHRlcm4gY29udGFpbmluZyBvbmx5IHRoZSB2YXJpYWJsZSBmaWVsZHMu
CisgKiAgICAgICAgICAgIEZvciBleGFtcGxlLCAiTU1NZGQiIGFuZCAibW1oaCIgYXJlIHNrZWxl
dG9ucy4KKyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBza2VsZXRvbgorICogQHBhcmFt
IGJlc3RQYXR0ZXJuCisgKiAgICAgICAgICAgIFRoZSBiZXN0IHBhdHRlcm4gZm91bmQgZnJvbSB0
aGUgZ2l2ZW4gc2tlbGV0b24uCisgKiBAcGFyYW0gY2FwYWNpdHkgdGhlIGNhcGFjaXR5IG9mIGJl
c3RQYXR0ZXJuLgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JD
b2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgIGZhaWx1
cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGJl
c3RQYXR0ZXJuLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9F
WFBPUlQyCit1ZGF0cGdfZ2V0QmVzdFBhdHRlcm4oVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAq
ZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMy
X3QgbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgIFVDaGFyICpiZXN0UGF0dGVybiwgaW50
MzJfdCBjYXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICBVRXJyb3JDb2RlICpwRXJyb3JD
b2RlKTsKKworLyoqCisgKiBHZXQgdGhlIGJlc3QgcGF0dGVybiBtYXRjaGluZyB0aGUgaW5wdXQg
c2tlbGV0b24uIEl0IGlzIGd1YXJhbnRlZWQgdG8KKyAqIGhhdmUgYWxsIG9mIHRoZSBmaWVsZHMg
aW4gdGhlIHNrZWxldG9uLgorICogCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEg
bm9uLWNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVm
dWwgcGF0dGVybiBwYXJzZXIgd2hpY2ggaXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmpl
Y3QsCisgKiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4K
KyAqIENvbnNlY3V0aXZlIGNhbGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNo
IG90aGVyLAorICogYnV0IHRoaXMgZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5
IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBvYmplY3QuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9p
bnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHNrZWxldG9uCisg
KiAgICAgICAgICAgIFRoZSBza2VsZXRvbiBpcyBhIHBhdHRlcm4gY29udGFpbmluZyBvbmx5IHRo
ZSB2YXJpYWJsZSBmaWVsZHMuCisgKiAgICAgICAgICAgIEZvciBleGFtcGxlLCAiTU1NZGQiIGFu
ZCAibW1oaCIgYXJlIHNrZWxldG9ucy4KKyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBz
a2VsZXRvbgorICogQHBhcmFtIG9wdGlvbnMKKyAqICAgICAgICAgICAgT3B0aW9ucyBmb3IgZm9y
Y2luZyB0aGUgbGVuZ3RoIG9mIHNwZWNpZmllZCBmaWVsZHMgaW4gdGhlCisgKiAgICAgICAgICAg
IHJldHVybmVkIHBhdHRlcm4gdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNrZWxldG9uICh3aGVuIHRo
aXMKKyAqICAgICAgICAgICAgd291bGQgbm90IGhhcHBlbiBvdGhlcndpc2UpLiBGb3IgZGVmYXVs
dCBiZWhhdmlvciwgdXNlCisgKiAgICAgICAgICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TLgor
ICogQHBhcmFtIGJlc3RQYXR0ZXJuCisgKiAgICAgICAgICAgIFRoZSBiZXN0IHBhdHRlcm4gZm91
bmQgZnJvbSB0aGUgZ2l2ZW4gc2tlbGV0b24uCisgKiBAcGFyYW0gY2FwYWNpdHkKKyAqICAgICAg
ICAgICAgdGhlIGNhcGFjaXR5IG9mIGJlc3RQYXR0ZXJuLgorICogQHBhcmFtIHBFcnJvckNvZGUK
KyAqICAgICAgICAgICAgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90
IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNh
bGwuCisgKiBAcmV0dXJuIHRoZSBsZW5ndGggb2YgYmVzdFBhdHRlcm4uCisgKiBAc3RhYmxlIElD
VSA0LjQKKyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3VkYXRwZ19nZXRCZXN0UGF0
dGVybldpdGhPcHRpb25zKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMyX3Qg
bGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVy
bk1hdGNoT3B0aW9ucyBvcHRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
VUNoYXIgKmJlc3RQYXR0ZXJuLCBpbnQzMl90IGNhcGFjaXR5LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIEdldCBh
IHVuaXF1ZSBza2VsZXRvbiBmcm9tIGEgZ2l2ZW4gcGF0dGVybi4gRm9yIGV4YW1wbGUsCisgICog
Ym90aCAiTU1NLWRkIiBhbmQgImRkL01NTSIgcHJvZHVjZSB0aGUgc2tlbGV0b24gIk1NTWRkIi4K
KyAgKiAKKyAgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRl
VGltZVBhdHRlcm5HZW5lcmF0b3I6CisgICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFy
c2VyIHdoaWNoIGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICAqIHJhdGhl
ciB0aGFuIGNyZWF0aW5nIG9uZSBmb3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICAqIENvbnNlY3V0
aXZlIGNhbGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICAq
IGJ1dCB0aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmds
ZSBnZW5lcmF0b3Igb2JqZWN0LgorICAqCisgICogQHBhcmFtIGR0cGcgICAgIGEgcG9pbnRlciB0
byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBwYXJhbSBwYXR0ZXJuICBpbnB1dCBw
YXR0ZXJuLCBzdWNoIGFzICJkZC9NTU0iLgorICAqIEBwYXJhbSBsZW5ndGggICB0aGUgbGVuZ3Ro
IG9mIHBhdHRlcm4uCisgICogQHBhcmFtIHNrZWxldG9uIHN1Y2ggYXMgIk1NTWRkIgorICAqIEBw
YXJhbSBjYXBhY2l0eSB0aGUgY2FwYWNpdHkgb2Ygc2tlbGV0b24uCisgICogQHBhcmFtIHBFcnJv
ckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRl
IGEKKyAgKiAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxs
LgorICAqIEByZXR1cm4gdGhlIGxlbmd0aCBvZiBza2VsZXRvbi4KKyAgKiBAc3RhYmxlIElDVSAz
LjgKKyAgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQyCit1ZGF0cGdfZ2V0U2tlbGV0b24o
VURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICBjb25z
dCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgVUNo
YXIgKnNrZWxldG9uLCBpbnQzMl90IGNhcGFjaXR5LAorICAgICAgICAgICAgICAgICAgIFVFcnJv
ckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEdldCBhIHVuaXF1ZSBiYXNlIHNrZWxldG9u
IGZyb20gYSBnaXZlbiBwYXR0ZXJuLiBUaGlzIGlzIHRoZSBzYW1lCisgKiBhcyB0aGUgc2tlbGV0
b24sIGV4Y2VwdCB0aGF0IGRpZmZlcmVuY2VzIGluIGxlbmd0aCBhcmUgbWluaW1pemVkIHNvCisg
KiBhcyB0byBvbmx5IHByZXNlcnZlIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gc3RyaW5nIGFuZCBu
dW1lcmljIGZvcm0uIFNvCisgKiBmb3IgZXhhbXBsZSwgYm90aCAiTU1NLWRkIiBhbmQgImQvTU1N
IiBwcm9kdWNlIHRoZSBza2VsZXRvbiAiTU1NZCIKKyAqIChub3RpY2UgdGhlIHNpbmdsZSBkKS4K
KyAqCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGlt
ZVBhdHRlcm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIg
d2hpY2ggaXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhh
biBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNh
bGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRo
aXMgZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVy
YXRvciBvYmplY3QuCisgKgorICogQHBhcmFtIGR0cGcgICAgIGEgcG9pbnRlciB0byBVRGF0ZVRp
bWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBhdHRlcm4gIGlucHV0IHBhdHRlcm4sIHN1
Y2ggYXMgImRkL01NTSIuCisgKiBAcGFyYW0gbGVuZ3RoICAgdGhlIGxlbmd0aCBvZiBwYXR0ZXJu
LgorICogQHBhcmFtIGJhc2VTa2VsZXRvbiBzdWNoIGFzICJNZCIKKyAqIEBwYXJhbSBjYXBhY2l0
eSB0aGUgY2FwYWNpdHkgb2YgYmFzZSBza2VsZXRvbi4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEg
cG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAg
ICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJl
dHVybiB0aGUgbGVuZ3RoIG9mIGJhc2VTa2VsZXRvbi4KKyAqIEBzdGFibGUgSUNVIDMuOAorICov
CitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRhdHBnX2dldEJhc2VTa2VsZXRvbihVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAg
IFVDaGFyICpiYXNlU2tlbGV0b24sIGludDMyX3QgY2FwYWNpdHksCisgICAgICAgICAgICAgICAg
ICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEFkZHMgYSBwYXR0ZXJu
IHRvIHRoZSBnZW5lcmF0b3IuIElmIHRoZSBwYXR0ZXJuIGhhcyB0aGUgc2FtZSBza2VsZXRvbiBh
cworICogYW4gZXhpc3RpbmcgcGF0dGVybiwgYW5kIHRoZSBvdmVycmlkZSBwYXJhbWV0ZXIgaXMg
c2V0LCB0aGVuIHRoZSBwcmV2aW91cworICogdmFsdWUgaXMgb3ZlcnJpZGVuLiBPdGhlcndpc2Us
IHRoZSBwcmV2aW91cyB2YWx1ZSBpcyByZXRhaW5lZC4gSW4gZWl0aGVyCisgKiBjYXNlLCB0aGUg
Y29uZmxpY3Rpbmcgc3RhdHVzIGlzIHNldCBhbmQgcHJldmlvdXMgdmFsZSBpcyBzdG9yZWQgaW4g
CisgKiBjb25mbGljdGluZyBwYXR0ZXJuLgorICogPHA+CisgKiBOb3RlIHRoYXQgc2luZ2xlLWZp
ZWxkIHBhdHRlcm5zIChsaWtlICJNTU0iKSBhcmUgYXV0b21hdGljYWxseSBhZGRlZCwgYW5kCisg
KiBkb24ndCBuZWVkIHRvIGJlIGFkZGVkIGV4cGxpY2l0bHkhCisgKgorICogQHBhcmFtIGR0cGcg
ICAgIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBh
dHRlcm4gIGlucHV0IHBhdHRlcm4sIHN1Y2ggYXMgImRkL01NTSIKKyAqIEBwYXJhbSBwYXR0ZXJu
TGVuZ3RoIHRoZSBsZW5ndGggb2YgcGF0dGVybi4KKyAqIEBwYXJhbSBvdmVycmlkZSAgV2hlbiBl
eGlzdGluZyB2YWx1ZXMgYXJlIHRvIGJlIG92ZXJyaWRkZW4gdXNlIHRydWUsIAorICogICAgICAg
ICAgICAgICAgICBvdGhlcndpc2UgdXNlIGZhbHNlLgorICogQHBhcmFtIGNvbmZsaWN0aW5nUGF0
dGVybiAgUHJldmlvdXMgcGF0dGVybiB3aXRoIHRoZSBzYW1lIHNrZWxldG9uLgorICogQHBhcmFt
IGNhcGFjaXR5IHRoZSBjYXBhY2l0eSBvZiBjb25mbGljdGluZ1BhdHRlcm4uCisgKiBAcGFyYW0g
cExlbmd0aCBhIHBvaW50ZXIgdG8gdGhlIGxlbmd0aCBvZiBjb25mbGljdGluZ1BhdHRlcm4uCisg
KiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVz
dCBub3QgaW5kaWNhdGUgYQorICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUg
ZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1cm4gY29uZmxpY3Rpbmcgc3RhdHVzLiBUaGUgdmFsdWUg
Y291bGQgYmUgVURBVFBHX05PX0NPTkZMSUNULCAKKyAqICAgICAgICAgICAgICAgICAgVURBVFBH
X0JBU0VfQ09ORkxJQ1Qgb3IgVURBVFBHX0NPTkZMSUNULgorICogQHN0YWJsZSBJQ1UgMy44Cisg
Ki8KK1VfU1RBQkxFIFVEYXRlVGltZVBhdHRlcm5Db25mbGljdCBVX0VYUE9SVDIKK3VkYXRwZ19h
ZGRQYXR0ZXJuKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAg
ICAgICBjb25zdCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBwYXR0ZXJuTGVuZ3RoLAorICAgICAg
ICAgICAgICAgICAgVUJvb2wgb3ZlcnJpZGUsCisgICAgICAgICAgICAgICAgICBVQ2hhciAqY29u
ZmxpY3RpbmdQYXR0ZXJuLCBpbnQzMl90IGNhcGFjaXR5LCBpbnQzMl90ICpwTGVuZ3RoLAorICAg
ICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIEFuIEFw
cGVuZEl0ZW0gZm9ybWF0IGlzIGEgcGF0dGVybiB1c2VkIHRvIGFwcGVuZCBhIGZpZWxkIGlmIHRo
ZXJlIGlzIG5vCisgICogZ29vZCBtYXRjaC4gRm9yIGV4YW1wbGUsIHN1cHBvc2UgdGhhdCB0aGUg
aW5wdXQgc2tlbGV0b24gaXMgIkd5eXl5TU1NZCIsCisgICogYW5kIHRoZXJlIGlzIG5vIG1hdGNo
aW5nIHBhdHRlcm4gaW50ZXJuYWxseSwgYnV0IHRoZXJlIGlzIGEgcGF0dGVybgorICAqIG1hdGNo
aW5nICJ5eXl5TU1NZCIsIHNheSAiZC1NTS15eXl5Ii4gVGhlbiB0aGF0IHBhdHRlcm4gaXMgdXNl
ZCwgcGx1cyB0aGUKKyAgKiBHLiBUaGUgd2F5IHRoZXNlIHR3byBhcmUgY29uam9pbmVkIGlzIGJ5
IHVzaW5nIHRoZSBBcHBlbmRJdGVtRm9ybWF0IGZvciBHCisgICogKGVyYSkuIFNvIGlmIHRoYXQg
dmFsdWUgaXMsIHNheSAiezB9LCB7MX0iIHRoZW4gdGhlIGZpbmFsIHJlc3VsdGluZworICAqIHBh
dHRlcm4gaXMgImQtTU0teXl5eSwgRyIuCisgICogPHA+CisgICogVGhlcmUgYXJlIGFjdHVhbGx5
IHRocmVlIGF2YWlsYWJsZSB2YXJpYWJsZXM6IHswfSBpcyB0aGUgcGF0dGVybiBzbyBmYXIsCisg
ICogezF9IGlzIHRoZSBlbGVtZW50IHdlIGFyZSBhZGRpbmcsIGFuZCB7Mn0gaXMgdGhlIG5hbWUg
b2YgdGhlIGVsZW1lbnQuCisgICogPHA+CisgICogVGhpcyByZWZsZWN0cyB0aGUgd2F5IHRoYXQg
dGhlIENMRFIgZGF0YSBpcyBvcmdhbml6ZWQuCisgICoKKyAgKiBAcGFyYW0gZHRwZyAgIGEgcG9p
bnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBwYXJhbSBmaWVsZCAgVURh
dGVUaW1lUGF0dGVybkZpZWxkLCBzdWNoIGFzIFVEQVRQR19FUkFfRklFTEQKKyAgKiBAcGFyYW0g
dmFsdWUgIHBhdHRlcm4sIHN1Y2ggYXMgInswfSwgezF9IgorICAqIEBwYXJhbSBsZW5ndGggdGhl
IGxlbmd0aCBvZiB2YWx1ZS4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIHZv
aWQgVV9FWFBPUlQyCit1ZGF0cGdfc2V0QXBwZW5kSXRlbUZvcm1hdChVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0
dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIg
KnZhbHVlLCBpbnQzMl90IGxlbmd0aCk7CisKKy8qKgorICogR2V0dGVyIGNvcnJlc3BvbmRpbmcg
dG8gc2V0QXBwZW5kSXRlbUZvcm1hdC4gVmFsdWVzIGJlbG93IDAgb3IgYXQgb3IKKyAqIGFib3Zl
IFVEQVRQR19GSUVMRF9DT1VOVCBhcmUgaWxsZWdhbCBhcmd1bWVudHMuCisgKgorICogQHBhcmFt
IGR0cGcgICBBIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJh
bSBmaWVsZCAgVURhdGVUaW1lUGF0dGVybkZpZWxkLCBzdWNoIGFzIFVEQVRQR19FUkFfRklFTEQK
KyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwgcmVjZWl2ZSB0aGUgbGVuZ3Ro
IG9mIGFwcGVuZEl0ZW1Gb3JtYXQuCisgKiBAcmV0dXJuIGFwcGVuZEl0ZW1Gb3JtYXQgZm9yIGZp
ZWxkLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9F
WFBPUlQyCit1ZGF0cGdfZ2V0QXBwZW5kSXRlbUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0
dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MzJfdCAqcExl
bmd0aCk7CisKKy8qKgorICAgKiBTZXQgdGhlIG5hbWUgb2YgZmllbGQsIGVnICJlcmEiIGluIEVu
Z2xpc2ggZm9yIEVSQS4gVGhlc2UgYXJlIG9ubHkKKyAgICogdXNlZCBpZiB0aGUgY29ycmVzcG9u
ZGluZyBBcHBlbmRJdGVtRm9ybWF0IGlzIHVzZWQsIGFuZCBpZiBpdCBjb250YWlucyBhCisgICAq
IHsyfSB2YXJpYWJsZS4KKyAgICogPHA+CisgICAqIFRoaXMgcmVmbGVjdHMgdGhlIHdheSB0aGF0
IHRoZSBDTERSIGRhdGEgaXMgb3JnYW5pemVkLgorICAgKgorICAgKiBAcGFyYW0gZHRwZyAgIGEg
cG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAgKiBAcGFyYW0gZmllbGQg
IFVEYXRlVGltZVBhdHRlcm5GaWVsZAorICAgKiBAcGFyYW0gdmFsdWUgIG5hbWUgZm9yIHRoZSBm
aWVsZC4KKyAgICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIHZhbHVlLgorICAgKiBAc3Rh
YmxlIElDVSAzLjgKKyAgICovCitVX1NUQUJMRSB2b2lkIFVfRVhQT1JUMgordWRhdHBnX3NldEFw
cGVuZEl0ZW1OYW1lKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IFVDaGFyICp2YWx1ZSwgaW50MzJfdCBsZW5ndGgpOworCisvKioK
KyAqIEdldHRlciBjb3JyZXNwb25kaW5nIHRvIHNldEFwcGVuZEl0ZW1OYW1lcy4gVmFsdWVzIGJl
bG93IDAgb3IgYXQgb3IgYWJvdmUKKyAqIFVEQVRQR19GSUVMRF9DT1VOVCBhcmUgaWxsZWdhbCBh
cmd1bWVudHMuCisgKgorICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0
dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBmaWVsZCAgVURhdGVUaW1lUGF0dGVybkZpZWxkLCBz
dWNoIGFzIFVEQVRQR19FUkFfRklFTEQKKyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0
IHdpbGwgcmVjZWl2ZSB0aGUgbGVuZ3RoIG9mIHRoZSBuYW1lIGZvciBmaWVsZC4KKyAqIEByZXR1
cm4gbmFtZSBmb3IgZmllbGQKKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBjb25z
dCBVQ2hhciAqIFVfRVhQT1JUMgordWRhdHBnX2dldEFwcGVuZEl0ZW1OYW1lKGNvbnN0IFVEYXRl
VGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgVURh
dGVUaW1lUGF0dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgIGludDMy
X3QgKnBMZW5ndGgpOworCisvKioKKyAqIFRoZSBkYXRlIHRpbWUgZm9ybWF0IGlzIGEgbWVzc2Fn
ZSBmb3JtYXQgcGF0dGVybiB1c2VkIHRvIGNvbXBvc2UgZGF0ZSBhbmQKKyAqIHRpbWUgcGF0dGVy
bnMuIFRoZSBkZWZhdWx0IHZhbHVlIGlzICJ7MH0gezF9Iiwgd2hlcmUgezB9IHdpbGwgYmUgcmVw
bGFjZWQKKyAqIGJ5IHRoZSBkYXRlIHBhdHRlcm4gYW5kIHsxfSB3aWxsIGJlIHJlcGxhY2VkIGJ5
IHRoZSB0aW1lIHBhdHRlcm4uCisgKiA8cD4KKyAqIFRoaXMgaXMgdXNlZCB3aGVuIHRoZSBpbnB1
dCBza2VsZXRvbiBjb250YWlucyBib3RoIGRhdGUgYW5kIHRpbWUgZmllbGRzLAorICogYnV0IHRo
ZXJlIGlzIG5vdCBhIGNsb3NlIG1hdGNoIGFtb25nIHRoZSBhZGRlZCBwYXR0ZXJucy4gRm9yIGV4
YW1wbGUsCisgKiBzdXBwb3NlIHRoYXQgdGhpcyBvYmplY3Qgd2FzIGNyZWF0ZWQgYnkgYWRkaW5n
ICJkZC1NTU0iIGFuZCAiaGg6bW0iLCBhbmQKKyAqIGl0cyBkYXRldGltZUZvcm1hdCBpcyB0aGUg
ZGVmYXVsdCAiezB9IHsxfSIuIFRoZW4gaWYgdGhlIGlucHV0IHNrZWxldG9uCisgKiBpcyAiTU1N
ZGhtbSIsIHRoZXJlIGlzIG5vdCBhbiBleGFjdCBtYXRjaCwgc28gdGhlIGlucHV0IHNrZWxldG9u
IGlzCisgKiBicm9rZW4gdXAgaW50byB0d28gY29tcG9uZW50cyAiTU1NZCIgYW5kICJobW0iLiBU
aGVyZSBhcmUgY2xvc2UgbWF0Y2hlcworICogZm9yIHRob3NlIHR3byBza2VsZXRvbnMsIHNvIHRo
ZSByZXN1bHQgaXMgcHV0IHRvZ2V0aGVyIHdpdGggdGhpcyBwYXR0ZXJuLAorICogcmVzdWx0aW5n
IGluICJkLU1NTSBoOm1tIi4KKyAqCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVU
aW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBkdEZvcm1hdAorICogICAgICAgICAgICBt
ZXNzYWdlIGZvcm1hdCBwYXR0ZXJuLCBoZXJlIHswfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSBk
YXRlCisgKiAgICAgICAgICAgIHBhdHRlcm4gYW5kIHsxfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRo
ZSB0aW1lIHBhdHRlcm4uCisgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGggb2YgZHRGb3JtYXQu
CisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRw
Z19zZXREYXRlVGltZUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBn
LAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpkdEZvcm1hdCwgaW50MzJf
dCBsZW5ndGgpOworCisvKioKKyAqIEdldHRlciBjb3JyZXNwb25kaW5nIHRvIHNldERhdGVUaW1l
Rm9ybWF0LgorICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvci4KKyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwgcmVjZWl2ZSB0
aGUgbGVuZ3RoIG9mIHRoZSBmb3JtYXQKKyAqIEByZXR1cm4gZGF0ZVRpbWVGb3JtYXQuCisgKiBA
c3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgY29uc3QgVUNoYXIgKiBVX0VYUE9SVDIKK3Vk
YXRwZ19nZXREYXRlVGltZUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpk
dHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBMZW5ndGgpOworCisvKioK
KyAqIFRoZSBkZWNpbWFsIHZhbHVlIGlzIHVzZWQgaW4gZm9ybWF0dGluZyBmcmFjdGlvbnMgb2Yg
c2Vjb25kcy4gSWYgdGhlCisgKiBza2VsZXRvbiBjb250YWlucyBmcmFjdGlvbmFsIHNlY29uZHMs
IHRoZW4gdGhpcyBpcyB1c2VkIHdpdGggdGhlCisgKiBmcmFjdGlvbmFsIHNlY29uZHMuIEZvciBl
eGFtcGxlLCBzdXBwb3NlIHRoYXQgdGhlIGlucHV0IHBhdHRlcm4gaXMKKyAqICJoaG1tc3NTU1NT
IiwgYW5kIHRoZSBiZXN0IG1hdGNoaW5nIHBhdHRlcm4gaW50ZXJuYWxseSBpcyAiSDptbTpzcyIs
IGFuZAorICogdGhlIGRlY2ltYWwgc3RyaW5nIGlzICIsIi4gVGhlbiB0aGUgcmVzdWx0aW5nIHBh
dHRlcm4gaXMgbW9kaWZpZWQgdG8gYmUKKyAqICJIOm1tOnNzLFNTU1MiCisgKgorICogQHBhcmFt
IGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0g
ZGVjaW1hbAorICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIGRlY2ltYWwuCisgKiBAc3Rh
YmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19zZXREZWNp
bWFsKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICBj
b25zdCBVQ2hhciAqZGVjaW1hbCwgaW50MzJfdCBsZW5ndGgpOworCisvKioKKyAqIEdldHRlciBj
b3JyZXNwb25kaW5nIHRvIHNldERlY2ltYWwuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRl
ciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBMZW5ndGggQSBwb2lu
dGVyIHRoYXQgd2lsbCByZWNlaXZlIHRoZSBsZW5ndGggb2YgdGhlIGRlY2ltYWwgc3RyaW5nLgor
ICogQHJldHVybiBjb3JyZXNwb25kaW5nIHRvIHRoZSBkZWNpbWFsIHBvaW50LgorICogQHN0YWJs
ZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9FWFBPUlQyCit1ZGF0cGdf
Z2V0RGVjaW1hbChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAg
ICAgICAgICAgICAgaW50MzJfdCAqcExlbmd0aCk7CisKKy8qKgorICogQWRqdXN0cyB0aGUgZmll
bGQgdHlwZXMgKHdpZHRoIGFuZCBzdWJ0eXBlKSBvZiBhIHBhdHRlcm4gdG8gbWF0Y2ggd2hhdCBp
cworICogaW4gYSBza2VsZXRvbi4gVGhhdCBpcywgaWYgeW91IHN1cHBseSBhIHBhdHRlcm4gbGlr
ZSAiZC1NIEg6bSIsIGFuZCBhCisgKiBza2VsZXRvbiBvZiAiTU1NTWRkaGhtbSIsIHRoZW4gdGhl
IGlucHV0IHBhdHRlcm4gaXMgYWRqdXN0ZWQgdG8gYmUKKyAqICJkZC1NTU1NIGhoOm1tIi4gVGhp
cyBpcyB1c2VkIGludGVybmFsbHkgdG8gZ2V0IHRoZSBiZXN0IG1hdGNoIGZvciB0aGUKKyAqIGlu
cHV0IHNrZWxldG9uLCBidXQgY2FuIGFsc28gYmUgdXNlZCBleHRlcm5hbGx5LgorICoKKyAqIE5v
dGUgdGhhdCB0aGlzIGZ1bmN0aW9uIHVzZXMgYSBub24tY29uc3QgVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvcjoKKyAqIEl0IHVzZXMgYSBzdGF0ZWZ1bCBwYXR0ZXJuIHBhcnNlciB3aGljaCBpcyBz
ZXQgdXAgZm9yIGVhY2ggZ2VuZXJhdG9yIG9iamVjdCwKKyAqIHJhdGhlciB0aGFuIGNyZWF0aW5n
IG9uZSBmb3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICogQ29uc2VjdXRpdmUgY2FsbHMgdG8gdGhp
cyBmdW5jdGlvbiBkbyBub3QgYWZmZWN0IGVhY2ggb3RoZXIsCisgKiBidXQgdGhpcyBmdW5jdGlv
biBjYW5ub3QgYmUgdXNlZCBjb25jdXJyZW50bHkgb24gYSBzaW5nbGUgZ2VuZXJhdG9yIG9iamVj
dC4KKyAqCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVy
YXRvci4KKyAqIEBwYXJhbSBwYXR0ZXJuIElucHV0IHBhdHRlcm4KKyAqIEBwYXJhbSBwYXR0ZXJu
TGVuZ3RoIHRoZSBsZW5ndGggb2YgaW5wdXQgcGF0dGVybi4KKyAqIEBwYXJhbSBza2VsZXRvbgor
ICogQHBhcmFtIHNrZWxldG9uTGVuZ3RoIHRoZSBsZW5ndGggb2YgaW5wdXQgc2tlbGV0b24uCisg
KiBAcGFyYW0gZGVzdCAgcGF0dGVybiBhZGp1c3RlZCB0byBtYXRjaCB0aGUgc2tlbGV0b24gZmll
bGRzIHdpZHRocyBhbmQgc3VidHlwZXMuCisgKiBAcGFyYW0gZGVzdENhcGFjaXR5IHRoZSBjYXBh
Y2l0eSBvZiBkZXN0LgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJy
b3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgZmFp
bHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0dXJuIHRoZSBsZW5ndGggb2Yg
ZGVzdC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JU
MgordWRhdHBnX3JlcGxhY2VGaWVsZFR5cGVzKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0
cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMy
X3QgcGF0dGVybkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAq
c2tlbGV0b24sIGludDMyX3Qgc2tlbGV0b25MZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgVUNoYXIgKmRlc3QsIGludDMyX3QgZGVzdENhcGFjaXR5LAorICAgICAgICAgICAgICAgICAg
ICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEFkanVzdHMgdGhlIGZp
ZWxkIHR5cGVzICh3aWR0aCBhbmQgc3VidHlwZSkgb2YgYSBwYXR0ZXJuIHRvIG1hdGNoIHdoYXQg
aXMKKyAqIGluIGEgc2tlbGV0b24uIFRoYXQgaXMsIGlmIHlvdSBzdXBwbHkgYSBwYXR0ZXJuIGxp
a2UgImQtTSBIOm0iLCBhbmQgYQorICogc2tlbGV0b24gb2YgIk1NTU1kZGhobW0iLCB0aGVuIHRo
ZSBpbnB1dCBwYXR0ZXJuIGlzIGFkanVzdGVkIHRvIGJlCisgKiAiZGQtTU1NTSBoaDptbSIuIFRo
aXMgaXMgdXNlZCBpbnRlcm5hbGx5IHRvIGdldCB0aGUgYmVzdCBtYXRjaCBmb3IgdGhlCisgKiBp
bnB1dCBza2VsZXRvbiwgYnV0IGNhbiBhbHNvIGJlIHVzZWQgZXh0ZXJuYWxseS4KKyAqCisgKiBO
b3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBhdHRlcm5H
ZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2ggaXMg
c2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhhbiBjcmVhdGlu
ZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNhbGxzIHRvIHRo
aXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRoaXMgZnVuY3Rp
b24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBvYmpl
Y3QuCisgKgorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IuCisgKiBAcGFyYW0gcGF0dGVybiBJbnB1dCBwYXR0ZXJuCisgKiBAcGFyYW0gcGF0dGVy
bkxlbmd0aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHBhdHRlcm4uCisgKiBAcGFyYW0gc2tlbGV0b24K
KyAqIEBwYXJhbSBza2VsZXRvbkxlbmd0aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHNrZWxldG9uLgor
ICogQHBhcmFtIG9wdGlvbnMKKyAqICAgICAgICAgICAgT3B0aW9ucyBjb250cm9sbGluZyB3aGV0
aGVyIHRoZSBsZW5ndGggb2Ygc3BlY2lmaWVkIGZpZWxkcyBpbiB0aGUKKyAqICAgICAgICAgICAg
cGF0dGVybiBhcmUgYWRqdXN0ZWQgdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNrZWxldG9uICh3aGVu
IHRoaXMKKyAqICAgICAgICAgICAgd291bGQgbm90IGhhcHBlbiBvdGhlcndpc2UpLiBGb3IgZGVm
YXVsdCBiZWhhdmlvciwgdXNlCisgKiAgICAgICAgICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05T
LgorICogQHBhcmFtIGRlc3QgIHBhdHRlcm4gYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHNrZWxldG9u
IGZpZWxkcyB3aWR0aHMgYW5kIHN1YnR5cGVzLgorICogQHBhcmFtIGRlc3RDYXBhY2l0eSB0aGUg
Y2FwYWNpdHkgb2YgZGVzdC4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUg
VUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAgICAgICAgICAg
IGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3Ro
IG9mIGRlc3QuCisgKiBAc3RhYmxlIElDVSA0LjQKKyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VY
UE9SVDIKK3VkYXRwZ19yZXBsYWNlRmllbGRUeXBlc1dpdGhPcHRpb25zKFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBwYXR0ZXJuTGVuZ3RoLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IHNr
ZWxldG9uTGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVU
aW1lUGF0dGVybk1hdGNoT3B0aW9ucyBvcHRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgVUNoYXIgKmRlc3QsIGludDMyX3QgZGVzdENhcGFjaXR5LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8q
KgorICogUmV0dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxsIHRoZSBza2VsZXRvbnMgaW4g
Y2Fub25pY2FsIGZvcm0uCisgKiBDYWxsIHVkYXRwZ19nZXRQYXR0ZXJuRm9yU2tlbGV0b24oKSB0
byBnZXQgdGhlIGNvcnJlc3BvbmRpbmcgcGF0dGVybi4KKyAqIAorICogQHBhcmFtIGR0cGcgYSBw
b2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gcEVycm9yQ29k
ZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQor
ICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbAorICog
QHJldHVybiBhIFVFbnVtZXJhdGlvbiBsaXN0IG9mIGFsbCB0aGUgc2tlbGV0b25zCisgKiAgICAg
ICAgIFRoZSBjYWxsZXIgbXVzdCBjbG9zZSB0aGUgb2JqZWN0LgorICogQHN0YWJsZSBJQ1UgMy44
CisgKi8KK1VfU1RBQkxFIFVFbnVtZXJhdGlvbiAqIFVfRVhQT1JUMgordWRhdHBnX29wZW5Ta2Vs
ZXRvbnMoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywgVUVycm9yQ29kZSAq
cEVycm9yQ29kZSk7CisKKy8qKgorICogUmV0dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxs
IHRoZSBiYXNlIHNrZWxldG9ucyBpbiBjYW5vbmljYWwgZm9ybS4KKyAqCisgKiBAcGFyYW0gZHRw
ZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwRXJy
b3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0
ZSBhCisgKiAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAq
IEByZXR1cm4gYSBVRW51bWVyYXRpb24gbGlzdCBvZiBhbGwgdGhlIGJhc2Ugc2tlbGV0b25zCisg
KiAgICAgICAgICAgICBUaGUgY2FsbGVyIG11c3QgY2xvc2UgdGhlIG9iamVjdC4KKyAqIEBzdGFi
bGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBVRW51bWVyYXRpb24gKiBVX0VYUE9SVDIKK3VkYXRw
Z19vcGVuQmFzZVNrZWxldG9ucyhjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBn
LCBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBHZXQgdGhlIHBhdHRlcm4gY29y
cmVzcG9uZGluZyB0byBhIGdpdmVuIHNrZWxldG9uLgorICogCisgKiBAcGFyYW0gZHRwZyBhIHBv
aW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBza2VsZXRvbiAK
KyAqIEBwYXJhbSBza2VsZXRvbkxlbmd0aCBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2Ygc2tlbGV0
b24uCisgKiBAcGFyYW0gcExlbmd0aCBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2YgcmV0dXJuIHBh
dHRlcm4uCisgKiBAcmV0dXJuIHBhdHRlcm4gY29ycmVzcG9uZGluZyB0byBhIGdpdmVuIHNrZWxl
dG9uLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9F
WFBPUlQyCit1ZGF0cGdfZ2V0UGF0dGVybkZvclNrZWxldG9uKGNvbnN0IFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVD
aGFyICpza2VsZXRvbiwgaW50MzJfdCBza2VsZXRvbkxlbmd0aCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50MzJfdCAqcExlbmd0aCk7CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2ljdS91bmljb2RlL3VudW1zeXMuaCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pY3UvdW5pY29kZS91bnVtc3lzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDI2NDYzZTgxYTVkZmZi
OWYzNzk5Nzc5NWIwNzVkNzUzOGM2NjYyMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9pY3UvdW5pY29kZS91bnVtc3lzLmgKQEAgLTAsMCArMSwxNzQgQEAKKy8qCisq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorKiBDb3B5cmlnaHQgKEMpIDIwMTMsIElu
dGVybmF0aW9uYWwgQnVzaW5lc3MgTWFjaGluZXMKKyogQ29ycG9yYXRpb24gYW5kIG90aGVycy4g
QWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisq
LworCisjaWZuZGVmIFVOVU1TWVNfSAorI2RlZmluZSBVTlVNU1lTX0gKKworI2luY2x1ZGUgInVu
aWNvZGUvdXR5cGVzLmgiCisKKyNpZiAhVUNPTkZJR19OT19GT1JNQVRUSU5HCisKKyNpbmNsdWRl
ICJ1bmljb2RlL3VlbnVtLmgiCisjaW5jbHVkZSAidW5pY29kZS9sb2NhbHBvaW50ZXIuaCIKKwor
LyoqCisgKiBcZmlsZQorICogXGJyaWVmIEMgQVBJOiBVTnVtYmVyaW5nU3lzdGVtLCBpbmZvcm1h
dGlvbiBhYm91dCBudW1iZXJpbmcgc3lzdGVtcworICoKKyAqIERlZmluZXMgbnVtYmVyaW5nIHN5
c3RlbXMuIEEgbnVtYmVyaW5nIHN5c3RlbSBkZXNjcmliZXMgdGhlIHNjaGVtZSBieSB3aGljaCAK
KyAqIG51bWJlcnMgYXJlIHRvIGJlIHByZXNlbnRlZCB0byB0aGUgZW5kIHVzZXIuIEluIGl0cyBz
aW1wbGVzdCBmb3JtLCBhIG51bWJlcmluZworICogc3lzdGVtIGRlc2NyaWJlcyB0aGUgc2V0IG9m
IGRpZ2l0IGNoYXJhY3RlcnMgdGhhdCBhcmUgdG8gYmUgdXNlZCB0byBkaXNwbGF5CisgKiBudW1i
ZXJzLCBzdWNoIGFzIFdlc3Rlcm4gZGlnaXRzLCBUaGFpIGRpZ2l0cywgQXJhYmljLUluZGljIGRp
Z2l0cywgZXRjLiwgaW4gYQorICogcG9zaXRpb25hbCBudW1iZXJpbmcgc3lzdGVtIHdpdGggYSBz
cGVjaWZpZWQgcmFkaXggKHR5cGljYWxseSAxMCkuCisgKiBNb3JlIGNvbXBsaWNhdGVkIG51bWJl
cmluZyBzeXN0ZW1zIGFyZSBhbGdvcml0aG1pYyBpbiBuYXR1cmUsIGFuZCByZXF1aXJlIHVzZQor
ICogb2YgYW4gUkJORiBmb3JtYXR0ZXIgKHJ1bGUgYmFzZWQgbnVtYmVyIGZvcm1hdHRlciksIGlu
IG9yZGVyIHRvIGNhbGN1bGF0ZQorICogdGhlIGNoYXJhY3RlcnMgdG8gYmUgZGlzcGxheWVkIGZv
ciBhIGdpdmVuIG51bWJlci4gRXhhbXBsZXMgb2YgYWxnb3JpdGhtaWMKKyAqIG51bWJlcmluZyBz
eXN0ZW1zIGluY2x1ZGUgUm9tYW4gbnVtZXJhbHMsIENoaW5lc2UgbnVtZXJhbHMsIGFuZCBIZWJy
ZXcgbnVtZXJhbHMuCisgKiBGb3JtYXR0aW5nIHJ1bGVzIGZvciBtYW55IGNvbW1vbmx5IHVzZWQg
bnVtYmVyaW5nIHN5c3RlbXMgYXJlIGluY2x1ZGVkIGluCisgKiB0aGUgSUNVIHBhY2thZ2UsIGJh
c2VkIG9uIHRoZSBudW1iZXJpbmcgc3lzdGVtIHJ1bGVzIGRlZmluZWQgaW4gQ0xEUi4KKyAqIEFs
dGVybmF0ZSBudW1iZXJpbmcgc3lzdGVtcyBjYW4gYmUgc3BlY2lmaWVkIHRvIGEgbG9jYWxlIGJ5
IHVzaW5nIHRoZQorICogbnVtYmVycyBsb2NhbGUga2V5d29yZC4KKyAqLworCisjaWZuZGVmIFVf
SElERV9EUkFGVF9BUEkKKworLyoqCisgKiBPcGFxdWUgVU51bWJlcmluZ1N5c3RlbSBvYmplY3Qg
Zm9yIHVzZSBpbiBDIHByb2dyYW1zLgorICogQGRyYWZ0IElDVSA1MgorICovCitzdHJ1Y3QgVU51
bWJlcmluZ1N5c3RlbTsKK3R5cGVkZWYgc3RydWN0IFVOdW1iZXJpbmdTeXN0ZW0gVU51bWJlcmlu
Z1N5c3RlbTsgIC8qKjwgQyB0eXBlZGVmIGZvciBzdHJ1Y3QgVU51bWJlcmluZ1N5c3RlbS4gQGRy
YWZ0IElDVSA1MiAqLworCisvKioKKyAqIE9wZW5zIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3Qg
dXNpbmcgdGhlIGRlZmF1bHQgbnVtYmVyaW5nIHN5c3RlbSBmb3IgdGhlIHNwZWNpZmllZAorICog
bG9jYWxlLgorICogQHBhcmFtIGxvY2FsZSAgICBUaGUgbG9jYWxlIGZvciB3aGljaCB0aGUgZGVm
YXVsdCBudW1iZXJpbmcgc3lzdGVtIHNob3VsZCBiZSBvcGVuZWQuCisgKiBAcGFyYW0gc3RhdHVz
ICAgIEEgcG9pbnRlciB0byBhIFVFcnJvckNvZGUgdG8gcmVjZWl2ZSBhbnkgZXJyb3JzLiBGb3Ig
ZXhhbXBsZSwgdGhpcworICogICAgICAgICAgICAgICAgICBtYXkgYmUgVV9VTlNVUFBPUlRFRF9F
UlJPUiBmb3IgYSBsb2NhbGUgc3VjaCBhcyAiZW5AbnVtYmVycz14eXoiIHRoYXQKKyAqICAgICAg
ICAgICAgICAgICAgc3BlY2lmaWVzIGEgbnVtYmVyaW5nIHN5c3RlbSB1bmtub3duIHRvIElDVS4K
KyAqIEByZXR1cm4gICAgICAgICAgQSBVTnVtYmVyaW5nU3lzdGVtIGZvciB0aGUgc3BlY2lmaWVk
IGxvY2FsZSwgb3IgTlVMTCBpZiBhbiBlcnJvcgorICogICAgICAgICAgICAgICAgICBvY2N1cnJl
ZC4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVTnVtYmVyaW5nU3lzdGVtICogVV9F
WFBPUlQyCit1bnVtc3lzX29wZW4oY29uc3QgY2hhciAqbG9jYWxlLCBVRXJyb3JDb2RlICpzdGF0
dXMpOworCisvKioKKyAqIE9wZW5zIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgdXNpbmcgdGhl
IG5hbWUgb2Ygb25lIG9mIHRoZSBwcmVkZWZpbmVkIG51bWJlcmluZworICogc3lzdGVtcyBzcGVj
aWZpZWQgYnkgQ0xEUiBhbmQga25vd24gdG8gSUNVLCBzdWNoIGFzICJsYXRuIiwgImFyYWJleHQi
LCBvciAiaGFuaWRlYyI7CisgKiB0aGUgZnVsbCBsaXN0IGlzIHJldHVybmVkIGJ5IHVudW1zeXNf
b3BlbkF2YWlsYWJsZU5hbWVzLiBOb3RlIHRoYXQgc29tZSBvZiB0aGUgbmFtZXMKKyAqIGxpc3Rl
ZCBhdCBodHRwOi8vdW5pY29kZS5vcmcvcmVwb3MvY2xkci90YWdzL2xhdGVzdC9jb21tb24vYmNw
NDcvbnVtYmVyLnhtbCAtIGUuZy4KKyAqIGRlZmF1bHQsIG5hdGl2ZSwgdHJhZGl0aW9uYWwsIGZp
bmFuY2UgLSBkbyBub3QgaWRlbnRpZnkgc3BlY2lmaWMgbnVtYmVyaW5nIHN5c3RlbXMsCisgKiBi
dXQgcmF0aGVyIGtleSB2YWx1ZXMgdGhhdCBtYXkgb25seSBiZSB1c2VkIGFzIHBhcnQgb2YgYSBs
b2NhbGUsIHdoaWNoIGluIHR1cm4KKyAqIGRlZmluZXMgaG93IHRoZXkgYXJlIG1hcHBlZCB0byBh
IHNwZWNpZmljIG51bWJlcmluZyBzeXN0ZW0gc3VjaCBhcyAibGF0biIgb3IgImhhbnQiLgorICoK
KyAqIEBwYXJhbSBuYW1lICAgICAgVGhlIG5hbWUgb2YgdGhlIG51bWJlcmluZyBzeXN0ZW0gZm9y
IHdoaWNoIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QKKyAqICAgICAgICAgICAgICAgICAgc2hv
dWxkIGJlIG9wZW5lZC4KKyAqIEBwYXJhbSBzdGF0dXMgICAgQSBwb2ludGVyIHRvIGEgVUVycm9y
Q29kZSB0byByZWNlaXZlIGFueSBlcnJvcnMuIEZvciBleGFtcGxlLCB0aGlzCisgKiAgICAgICAg
ICAgICAgICAgIG1heSBiZSBVX1VOU1VQUE9SVEVEX0VSUk9SIGZvciBhIG51bWJlcmluZyBzeXN0
ZW0gc3VjaCBhcyAieHl6IiB0aGF0CisgKiAgICAgICAgICAgICAgICAgIGlzIHVua25vd24gdG8g
SUNVLgorICogQHJldHVybiAgICAgICAgICBBIFVOdW1iZXJpbmdTeXN0ZW0gZm9yIHRoZSBzcGVj
aWZpZWQgbmFtZSwgb3IgTlVMTCBpZiBhbiBlcnJvcgorICogICAgICAgICAgICAgICAgICBvY2N1
cnJlZC4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVTnVtYmVyaW5nU3lzdGVtICog
VV9FWFBPUlQyCit1bnVtc3lzX29wZW5CeU5hbWUoY29uc3QgY2hhciAqbmFtZSwgVUVycm9yQ29k
ZSAqc3RhdHVzKTsKKworLyoqCisgKiBDbG9zZSBhIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0LiBP
bmNlIGNsb3NlZCBpdCBtYXkgbm8gbG9uZ2VyIGJlIHVzZWQuCisgKiBAcGFyYW0gdW51bXN5cyAg
IFRoZSBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCB0byBjbG9zZS4KKyAqIEBkcmFmdCBJQ1UgNTIK
KyAqLworVV9EUkFGVCB2b2lkIFVfRVhQT1JUMgordW51bXN5c19jbG9zZShVTnVtYmVyaW5nU3lz
dGVtICp1bnVtc3lzKTsKKworI2lmIFVfU0hPV19DUExVU1BMVVNfQVBJCitVX05BTUVTUEFDRV9C
RUdJTgorCisvKioKKyAqIFxjbGFzcyBMb2NhbFVOdW1iZXJpbmdTeXN0ZW1Qb2ludGVyCisgKiAi
U21hcnQgcG9pbnRlciIgY2xhc3MsIGNsb3NlcyBhIFVOdW1iZXJpbmdTeXN0ZW0gdmlhIHVudW1z
eXNfY2xvc2UoKS4KKyAqIEZvciBtb3N0IG1ldGhvZHMgc2VlIHRoZSBMb2NhbFBvaW50ZXJCYXNl
IGJhc2UgY2xhc3MuCisgKiBAc2VlIExvY2FsUG9pbnRlckJhc2UKKyAqIEBzZWUgTG9jYWxQb2lu
dGVyCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfREVGSU5FX0xPQ0FMX09QRU5fUE9JTlRFUihM
b2NhbFVOdW1iZXJpbmdTeXN0ZW1Qb2ludGVyLCBVTnVtYmVyaW5nU3lzdGVtLCB1bnVtc3lzX2Ns
b3NlKTsKKworVV9OQU1FU1BBQ0VfRU5ECisjZW5kaWYKKworLyoqCisgKiBSZXR1cm5zIGFuIGVu
dW1lcmF0aW9uIG92ZXIgdGhlIG5hbWVzIG9mIGFsbCBvZiB0aGUgcHJlZGVmaW5lZCBudW1iZXJp
bmcgc3lzdGVtcyBrbm93bgorICogdG8gSUNVLgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBvaW50
ZXIgdG8gYSBVRXJyb3JDb2RlIHRvIHJlY2VpdmUgYW55IGVycm9ycy4KKyAqIEByZXR1cm4gICAg
ICAgICAgQSBwb2ludGVyIHRvIGEgVUVudW1lcmF0aW9uIHRoYXQgbXVzdCBiZSBjbG9zZWQgd2l0
aCB1ZW51bV9jbG9zZSgpLAorICogICAgICAgICAgICAgICAgICBvciBOVUxMIGlmIGFuIGVycm9y
IG9jY3VycmVkLgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIFVFbnVtZXJhdGlvbiAq
IFVfRVhQT1JUMgordW51bXN5c19vcGVuQXZhaWxhYmxlTmFtZXMoVUVycm9yQ29kZSAqc3RhdHVz
KTsKKworLyoqCisgKiBSZXR1cm5zIHRoZSBuYW1lIG9mIHRoZSBzcGVjaWZpZWQgVU51bWJlcmlu
Z1N5c3RlbSBvYmplY3QgKGlmIGl0IGlzIG9uZSBvZiB0aGUKKyAqIHByZWRlZmluZWQgbmFtZXMg
a25vd24gdG8gSUNVKS4KKyAqIEBwYXJhbSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0g
d2hvc2UgbmFtZSBpcyBkZXNpcmVkLgorICogQHJldHVybiAgICAgICAgICBBIHBvaW50ZXIgdG8g
dGhlIG5hbWUgb2YgdGhlIHNwZWNpZmllZCBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCwgb3IKKyAq
ICAgICAgICAgICAgICAgICAgTlVMTCBpZiB0aGUgbmFtZSBpcyBub3Qgb25lIG9mIHRoZSBJQ1Ug
cHJlZGVmaW5lZCBuYW1lcy4gVGhlIHBvaW50ZXIKKyAqICAgICAgICAgICAgICAgICAgaXMgb25s
eSB2YWxpZCBmb3IgdGhlIGxpZmV0aW1lIG9mIHRoZSBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdC4K
KyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBjb25zdCBjaGFyICogVV9FWFBPUlQyCit1
bnVtc3lzX2dldE5hbWUoY29uc3QgVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5cyk7CisKKy8qKgor
ICogUmV0dXJucyB3aGV0aGVyIHRoZSBnaXZlbiBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCBpcyBm
b3IgYW4gYWxnb3JpdGhtaWMgKG5vdCBwdXJlbHkKKyAqIHBvc2l0aW9uYWwpIHN5c3RlbS4KKyAq
IEBwYXJhbSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2UgYWxnb3JpdGhtaWMg
c3RhdHVzIGlzIGRlc2lyZWQuCisgKiBAcmV0dXJuICAgICAgICAgIFRSVUUgaWYgdGhlIHNwZWNp
ZmllZCBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCBpcyBmb3IgYW4gYWxnb3JpdGhtaWMKKyAqICAg
ICAgICAgICAgICAgICAgc3lzdGVtLgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIFVC
b29sIFVfRVhQT1JUMgordW51bXN5c19pc0FsZ29yaXRobWljKGNvbnN0IFVOdW1iZXJpbmdTeXN0
ZW0gKnVudW1zeXMpOworCisvKioKKyAqIFJldHVybnMgdGhlIHJhZGl4IG9mIHRoZSBzcGVjaWZp
ZWQgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QuIFNpbXBsZSBwb3NpdGlvbmFsCisgKiBudW1iZXJp
bmcgc3lzdGVtcyB0eXBpY2FsbHkgaGF2ZSByYWRpeCAxMCwgYnV0IG1pZ2h0IGhhdmUgYSByYWRp
eCBvZiBlLmcuIDE2IGZvcgorICogaGV4YWRlY2ltYWwuIFRoZSByYWRpeCBpcyBsZXNzIHdlbGwt
ZGVmaW5lZCBmb3Igbm9uLXBvc2l0aW9uYWwgYWxnb3JpdGhtaWMgc3lzdGVtcy4KKyAqIEBwYXJh
bSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2UgcmFkaXggaXMgZGVzaXJlZC4K
KyAqIEByZXR1cm4gICAgICAgICAgVGhlIHJhZGl4IG9mIHRoZSBzcGVjaWZpZWQgVU51bWJlcmlu
Z1N5c3RlbSBvYmplY3QuCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfRFJBRlQgaW50MzJfdCBV
X0VYUE9SVDIKK3VudW1zeXNfZ2V0UmFkaXgoY29uc3QgVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5
cyk7CisKKy8qKgorICogR2V0IHRoZSBkZXNjcmlwdGlvbiBzdHJpbmcgb2YgdGhlIHNwZWNpZmll
ZCBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdC4gRm9yIHNpbXBsZQorICogcG9zaXRpb25hbCBzeXN0
ZW1zIHRoaXMgaXMgdGhlIG9yZGVyZWQgc3RyaW5nIG9mIGRpZ2l0cyAod2l0aCBsZW5ndGggbWF0
Y2hpbmcKKyAqIHRoZSByYWRpeCksIGUuZy4gIlx1MzAwN1x1NEUwMFx1NEU4Q1x1NEUwOVx1NTZE
Qlx1NEU5NFx1NTE2RFx1NEUwM1x1NTE2Qlx1NEU1RCIKKyAqIGZvciAiaGFuaWRlYyI7IGl0IHdv
dWxkIGJlICIwMTIzNDU2Nzg5QUJDREVGIiBmb3IgaGV4YWRlY2ltYWwuIEZvcgorICogYWxnb3Jp
dGhtaWMgc3lzdGVtcyB0aGlzIGlzIHRoZSBuYW1lIG9mIHRoZSBSQk5GIHJ1bGVzZXQgdXNlZCBm
b3IgZm9ybWF0dGluZywKKyAqIGUuZy4gInpoL1NwZWxsb3V0UnVsZXMvJXNwZWxsb3V0LWNhcmRp
bmFsIiBmb3IgImhhbnMiIG9yICIlZ3JlZWstdXBwZXIiIGZvcgorICogImdyZWsiLgorICogQHBh
cmFtIHVudW1zeXMgICBUaGUgVU51bWJlcmluZ1N5c3RlbSB3aG9zZSBkZXNjcmlwdGlvbiBzdHJp
bmcgaXMgZGVzaXJlZC4KKyAqIEBwYXJhbSByZXN1bHQgICAgQSBwb2ludGVyIHRvIGEgYnVmZmVy
IHRvIHJlY2VpdmUgdGhlIGRlc2NyaXB0aW9uIHN0cmluZy4KKyAqIEBwYXJhbSByZXN1bHRMZW5n
dGggIFRoZSBtYXhpbXVtIHNpemUgb2YgcmVzdWx0LgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBv
aW50ZXIgdG8gYSBVRXJyb3JDb2RlIHRvIHJlY2VpdmUgYW55IGVycm9ycy4KKyAqIEByZXR1cm4g
ICAgICAgICAgVGhlIHRvdGFsIGJ1ZmZlciBzaXplIG5lZWRlZDsgaWYgZ3JlYXRlciB0aGFuIHJl
c3VsdExlbmd0aCwgdGhlCisgKiAgICAgICAgICAgICAgICAgIG91dHB1dCB3YXMgdHJ1bmNhdGVk
LgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIGludDMyX3QgVV9FWFBPUlQyCit1bnVt
c3lzX2dldERlc2NyaXB0aW9uKGNvbnN0IFVOdW1iZXJpbmdTeXN0ZW0gKnVudW1zeXMsIFVDaGFy
ICpyZXN1bHQsCisgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgcmVzdWx0TGVuZ3RoLCBV
RXJyb3JDb2RlICpzdGF0dXMpOworCisjZW5kaWYgIC8qIFVfSElERV9EUkFGVF9BUEkgKi8KKwor
I2VuZGlmIC8qICNpZiAhVUNPTkZJR19OT19GT1JNQVRUSU5HICovCisKKyNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKaW5kZXgg
M2JlODliODM1N2M2YTg3MTcwNDA1MmE4YzEyM2VlZmU2NzE4NWRjZS4uYjUxMDI4ZjQwMTRjNTgz
ZTljYzFiYThhMzg4ZjBiMWZlZDkzMjVhYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCkBAIC04Niw2ICs4Niw3IEBACiAgICAgbWFj
cm8oYnl0ZWNvZGVJbmRleCkgXAogICAgIG1hY3JvKGJ5dGVjb2RlcykgXAogICAgIG1hY3JvKGJ5
dGVjb2Rlc0lEKSBcCisgICAgbWFjcm8oY2FsZW5kYXIpIFwKICAgICBtYWNybyhjYWxsZWUpIFwK
ICAgICBtYWNybyhjYWxsZXIpIFwKICAgICBtYWNybyhjYXNlRmlyc3QpIFwKQEAgLTEwMSw2ICsx
MDIsNyBAQAogICAgIG1hY3JvKGNvbnN0cnVjdG9yKSBcCiAgICAgbWFjcm8oY291bnQpIFwKICAg
ICBtYWNybyhjb3VudGVycykgXAorICAgIG1hY3JvKGRheSkgXAogICAgIG1hY3JvKGRlZmluZVBy
b3BlcnR5KSBcCiAgICAgbWFjcm8oZGVzY3JpcHRpb24pIFwKICAgICBtYWNybyhkZXNjcmlwdGlv
bnMpIFwKQEAgLTEwOSw2ICsxMTEsNyBAQAogICAgIG1hY3JvKGRvbmUpIFwKICAgICBtYWNybyhl
bnRyaWVzKSBcCiAgICAgbWFjcm8oZW51bWVyYWJsZSkgXAorICAgIG1hY3JvKGVyYSkgXAogICAg
IG1hY3JvKGV2YWwpIFwKICAgICBtYWNybyhleGVjKSBcCiAgICAgbWFjcm8oZXhlY3V0aW9uQ291
bnQpIFwKQEAgLTExNiw2ICsxMTksNyBAQAogICAgIG1hY3JvKGZsYWdzKSBcCiAgICAgbWFjcm8o
Zm9jdXMpIFwKICAgICBtYWNybyhmb3JFYWNoKSBcCisgICAgbWFjcm8oZm9ybWF0TWF0Y2hlcikg
XAogICAgIG1hY3JvKGZvcndhcmQpIFwKICAgICBtYWNybyhmcm9tKSBcCiAgICAgbWFjcm8oZnJv
bUNoYXJDb2RlKSBcCkBAIC0xMjYsNiArMTMwLDggQEAKICAgICBtYWNybyhoYXNPd25Qcm9wZXJ0
eSkgXAogICAgIG1hY3JvKGhhc2gpIFwKICAgICBtYWNybyhoZWFkZXIpIFwKKyAgICBtYWNybyho
b3VyKSBcCisgICAgbWFjcm8oaG91cjEyKSBcCiAgICAgbWFjcm8oaHJlZikgXAogICAgIG1hY3Jv
KGlkKSBcCiAgICAgbWFjcm8oaWdub3JlQ2FzZSkgXApAQCAtMTQ5LDEwICsxNTUsMTMgQEAKICAg
ICBtYWNybyhsb2NhbGUpIFwKICAgICBtYWNybyhsb2NhbGVNYXRjaGVyKSBcCiAgICAgbWFjcm8o
bWVzc2FnZSkgXAorICAgIG1hY3JvKG1pbnV0ZSkgXAorICAgIG1hY3JvKG1vbnRoKSBcCiAgICAg
bWFjcm8obXVsdGlsaW5lKSBcCiAgICAgbWFjcm8obmFtZSkgXAogICAgIG1hY3JvKG5leHQpIFwK
ICAgICBtYWNybyhub3cpIFwKKyAgICBtYWNybyhudW1iZXJpbmdTeXN0ZW0pIFwKICAgICBtYWNy
byhudW1JbmxpbmVkQ2FsbHMpIFwKICAgICBtYWNybyhudW1JbmxpbmVkR2V0QnlJZHMpIFwKICAg
ICBtYWNybyhudW1JbmxpbmVkUHV0QnlJZHMpIFwKQEAgLTE3Miw2ICsxODEsNyBAQAogICAgIG1h
Y3JvKHJlbG9hZCkgXAogICAgIG1hY3JvKHJlcGxhY2UpIFwKICAgICBtYWNybyhyZXNvbHZlKSBc
CisgICAgbWFjcm8oc2Vjb25kKSBcCiAgICAgbWFjcm8oc2Vuc2l0aXZpdHkpIFwKICAgICBtYWNy
byhzZXQpIFwKICAgICBtYWNybyhzaG93TW9kYWxEaWFsb2cpIFwKQEAgLTE4NSw2ICsxOTUsOCBA
QAogICAgIG1hY3JvKHRhcmdldCkgXAogICAgIG1hY3JvKHRlc3QpIFwKICAgICBtYWNybyh0aGVu
KSBcCisgICAgbWFjcm8odGltZVpvbmUpIFwKKyAgICBtYWNybyh0aW1lWm9uZU5hbWUpIFwKICAg
ICBtYWNybyh0b0V4cG9uZW50aWFsKSBcCiAgICAgbWFjcm8odG9GaXhlZCkgXAogICAgIG1hY3Jv
KHRvSVNPU3RyaW5nKSBcCkBAIC0xOTgsOCArMjEwLDEwIEBACiAgICAgbWFjcm8odmFsdWVzKSBc
CiAgICAgbWFjcm8od2Via2l0KSBcCiAgICAgbWFjcm8od2Via2l0SW5kZXhlZERCKSBcCisgICAg
bWFjcm8od2Vla2RheSkgXAogICAgIG1hY3JvKHdpbmRvdykgXAotICAgIG1hY3JvKHdyaXRhYmxl
KQorICAgIG1hY3JvKHdyaXRhYmxlKSBcCisgICAgbWFjcm8oeWVhcikKIAogI2RlZmluZSBKU0Nf
Q09NTU9OX0lERU5USUZJRVJTX0VBQ0hfS0VZV09SRChtYWNybykgXAogICAgIG1hY3JvKGJyZWFr
KSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRp
bWVGb3JtYXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1l
Rm9ybWF0LmNwcAppbmRleCBkYzViMmFjZTMyNWIwOGI2ZjJmMzdiMjMxMDc2OTIwZTg4ZmNmMDI4
Li4yYTQ3ZTYwMTlmOTFhZDUzOGI3ZDczYTU3NDNmNjIxNzczNDNlMGNhIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5jcHAKQEAg
LTI4LDcgKzI4LDYgQEAKIAogI2lmIEVOQUJMRShJTlRMKQogCi0jaW5jbHVkZSAiRGF0ZUNvbnN0
cnVjdG9yLmgiCiAjaW5jbHVkZSAiRGF0ZUluc3RhbmNlLmgiCiAjaW5jbHVkZSAiRXJyb3IuaCIK
ICNpbmNsdWRlICJJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5oIgpAQCAtMzYsMTMgKzM1
LDI1IEBACiAjaW5jbHVkZSAiSlNCb3VuZEZ1bmN0aW9uLmgiCiAjaW5jbHVkZSAiSlNDSlNWYWx1
ZUlubGluZXMuaCIKICNpbmNsdWRlICJKU0NlbGxJbmxpbmVzLmgiCisjaW5jbHVkZSAiT2JqZWN0
Q29uc3RydWN0b3IuaCIKICNpbmNsdWRlICJTbG90VmlzaXRvcklubGluZXMuaCIKICNpbmNsdWRl
ICJTdHJ1Y3R1cmVJbmxpbmVzLmgiCisjaW5jbHVkZSA8dW5pY29kZS91Y2FsLmg+CisjaW5jbHVk
ZSA8dW5pY29kZS91ZGF0Lmg+CisjaW5jbHVkZSA8dW5pY29kZS91ZGF0cGcuaD4KKyNpbmNsdWRl
IDx1bmljb2RlL3VlbnVtLmg+CiAKIG5hbWVzcGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0luZm8g
SW50bERhdGVUaW1lRm9ybWF0OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAw
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEYXRlVGltZUZvcm1hdCkgfTsKIAorc3RhdGljIGNv
bnN0IGNoYXIqIGNvbnN0IHJlbGV2YW50RXh0ZW5zaW9uS2V5c1syXSA9IHsgImNhIiwgIm51IiB9
Oworc3RhdGljIGNvbnN0IHNpemVfdCBpbmRleE9mRXh0ZW5zaW9uS2V5Q2EgPSAwOworc3RhdGlj
IGNvbnN0IHNpemVfdCBpbmRleE9mRXh0ZW5zaW9uS2V5TnUgPSAxOworCitlbnVtIGNsYXNzIERh
dGVUaW1lT3B0aW9uUmVxdWlyZWQgeyBEYXRlLCBUaW1lLCBBbnkgfTsKK2VudW0gY2xhc3MgRGF0
ZVRpbWVPcHRpb25EZWZhdWx0cyB7IERhdGUsIFRpbWUsIEFsbCB9OworCiBJbnRsRGF0ZVRpbWVG
b3JtYXQqIEludGxEYXRlVGltZUZvcm1hdDo6Y3JlYXRlKFZNJiB2bSwgSW50bERhdGVUaW1lRm9y
bWF0Q29uc3RydWN0b3IqIGNvbnN0cnVjdG9yKQogewogICAgIEludGxEYXRlVGltZUZvcm1hdCog
Zm9ybWF0ID0gbmV3IChOb3ROdWxsLCBhbGxvY2F0ZUNlbGw8SW50bERhdGVUaW1lRm9ybWF0Pih2
bS5oZWFwKSkgSW50bERhdGVUaW1lRm9ybWF0KHZtLCBjb25zdHJ1Y3Rvci0+ZGF0ZVRpbWVGb3Jt
YXRTdHJ1Y3R1cmUoKSk7CkBAIC04Niw0NiArOTcsODE2IEBAIHZvaWQgSW50bERhdGVUaW1lRm9y
bWF0OjpzZXRCb3VuZEZvcm1hdChWTSYgdm0sIEpTQm91bmRGdW5jdGlvbiogZm9ybWF0KQogICAg
IG1fYm91bmRGb3JtYXQuc2V0KHZtLCB0aGlzLCBmb3JtYXQpOwogfQogCi1FbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdEZ1bmNGb3JtYXREYXRlVGltZShFeGVj
U3RhdGUqIHN0YXRlKQorc3RhdGljIFN0cmluZyBkZWZhdWx0VGltZVpvbmUoKQoreworICAgIC8v
IDYuNC4zIERlZmF1bHRUaW1lWm9uZSAoKSAoRUNNQS00MDIgMi4wKQorICAgIC8vIFRoZSBEZWZh
dWx0VGltZVpvbmUgYWJzdHJhY3Qgb3BlcmF0aW9uIHJldHVybnMgYSBTdHJpbmcgdmFsdWUgcmVw
cmVzZW50aW5nIHRoZSB2YWxpZCAoNi40LjEpIGFuZCBjYW5vbmljYWxpemVkICg2LjQuMikgdGlt
ZSB6b25lIG5hbWUgZm9yIHRoZSBob3N0IGVudmlyb25tZW504oCZcyBjdXJyZW50IHRpbWUgem9u
ZS4KKworICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgIFZlY3RvcjxV
Q2hhciwgMzI+IGJ1ZmZlcigzMik7CisgICAgYXV0byBidWZmZXJMZW5ndGggPSB1Y2FsX2dldERl
ZmF1bHRUaW1lWm9uZShidWZmZXIuZGF0YSgpLCBidWZmZXIuY2FwYWNpdHkoKSwgJnN0YXR1cyk7
CisgICAgaWYgKHN0YXR1cyA9PSBVX0JVRkZFUl9PVkVSRkxPV19FUlJPUikgeworICAgICAgICBz
dGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgIGJ1ZmZlciA9IFZlY3RvcjxVQ2hhciwgMzI+
KGJ1ZmZlckxlbmd0aCk7CisgICAgICAgIHVjYWxfZ2V0RGVmYXVsdFRpbWVab25lKGJ1ZmZlci5k
YXRhKCksIGJ1ZmZlckxlbmd0aCwgJnN0YXR1cyk7CisgICAgfQorICAgIGlmIChVX0ZBSUxVUkUo
c3RhdHVzKSkKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgiVVRDIik7CisKKyAgICBzdGF0
dXMgPSBVX1pFUk9fRVJST1I7CisgICAgVUJvb2wgaXNTeXN0ZW1JRCA9IGZhbHNlOworICAgIFZl
Y3RvcjxVQ2hhciwgMzI+IGNhbm9uaWNhbEJ1ZmZlcigzMik7CisgICAgYXV0byBjYW5vbmljYWxM
ZW5ndGggPSB1Y2FsX2dldENhbm9uaWNhbFRpbWVab25lSUQoYnVmZmVyLmRhdGEoKSwgYnVmZmVy
TGVuZ3RoLCBjYW5vbmljYWxCdWZmZXIuZGF0YSgpLCBjYW5vbmljYWxCdWZmZXIuY2FwYWNpdHko
KSwgJmlzU3lzdGVtSUQsICZzdGF0dXMpOworICAgIGlmIChzdGF0dXMgPT0gVV9CVUZGRVJfT1ZF
UkZMT1dfRVJST1IpIHsKKyAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICBj
YW5vbmljYWxCdWZmZXIgPSBWZWN0b3I8VUNoYXIsIDMyPihjYW5vbmljYWxMZW5ndGgpOworICAg
ICAgICB1Y2FsX2dldENhbm9uaWNhbFRpbWVab25lSUQoYnVmZmVyLmRhdGEoKSwgYnVmZmVyTGVu
Z3RoLCBjYW5vbmljYWxCdWZmZXIuZGF0YSgpLCBjYW5vbmljYWxMZW5ndGgsICZpc1N5c3RlbUlE
LCAmc3RhdHVzKTsKKyAgICB9CisgICAgaWYgKFVfRkFJTFVSRShzdGF0dXMpKQorICAgICAgICBy
ZXR1cm4gQVNDSUlMaXRlcmFsKCJVVEMiKTsKKworICAgIHJldHVybiBTdHJpbmcoY2Fub25pY2Fs
QnVmZmVyLmRhdGEoKSwgY2Fub25pY2FsTGVuZ3RoKTsKK30KKworc3RhdGljIFN0cmluZyBjYW5v
bmljYWxpemVUaW1lWm9uZU5hbWUoY29uc3QgU3RyaW5nJiB0aW1lWm9uZU5hbWUpCit7CisgICAg
Ly8gNi40LjEgSXNWYWxpZFRpbWVab25lTmFtZSAodGltZVpvbmUpCisgICAgLy8gVGhlIGFic3Ry
YWN0IG9wZXJhdGlvbiByZXR1cm5zIHRydWUgaWYgdGltZVpvbmUsIGNvbnZlcnRlZCB0byB1cHBl
ciBjYXNlIGFzIGRlc2NyaWJlZCBpbiA2LjEsIGlzIGVxdWFsIHRvIG9uZSBvZiB0aGUgWm9uZSBv
ciBMaW5rIG5hbWVzIG9mIHRoZSBJQU5BIFRpbWUgWm9uZSBEYXRhYmFzZSwgY29udmVydGVkIHRv
IHVwcGVyIGNhc2UgYXMgZGVzY3JpYmVkIGluIDYuMS4gSXQgcmV0dXJucyBmYWxzZSBvdGhlcndp
c2UuCisgICAgVUVycm9yQ29kZSBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgVUVudW1lcmF0
aW9uKiB0aW1lWm9uZXMgPSB1Y2FsX29wZW5UaW1lWm9uZXMoJnN0YXR1cyk7CisgICAgQVNTRVJU
KFVfU1VDQ0VTUyhzdGF0dXMpKTsKKworICAgIFN0cmluZyBjYW5vbmljYWw7CisgICAgd2hpbGUg
KGNhbm9uaWNhbC5pc051bGwoKSkgeworICAgICAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7Cisg
ICAgICAgIGludDMyX3QgaWFuYVRpbWVab25lTGVuZ3RoOworICAgICAgICAvLyBUaW1lIHpvbmUg
bmFtZXMgYXJlIHJlc3ByZXNlbnRlZCBhcyBVQ2hhcltdIGluIGFsbCByZWxhdGVkIElDVSBhcGlz
LgorICAgICAgICBjb25zdCBVQ2hhciogaWFuYVRpbWVab25lID0gdWVudW1fdW5leHQodGltZVpv
bmVzLCAmaWFuYVRpbWVab25lTGVuZ3RoLCAmc3RhdHVzKTsKKyAgICAgICAgQVNTRVJUKFVfU1VD
Q0VTUyhzdGF0dXMpKTsKKworICAgICAgICAvLyBFbmQgb2YgZW51bWVyYXRpb24uCisgICAgICAg
IGlmICghaWFuYVRpbWVab25lKQorICAgICAgICAgICAgYnJlYWs7CisKKyAgICAgICAgU3RyaW5n
VmlldyBpYW5hVGltZVpvbmVWaWV3KGlhbmFUaW1lWm9uZSwgaWFuYVRpbWVab25lTGVuZ3RoKTsK
KyAgICAgICAgaWYgKCFlcXVhbElnbm9yaW5nQVNDSUlDYXNlKHRpbWVab25lTmFtZSwgaWFuYVRp
bWVab25lVmlldykpCisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICAvLyBGb3VuZCBh
IG1hdGNoLCBub3cgY2Fub25pY2FsaXplLgorICAgICAgICAvLyA2LjQuMiBDYW5vbmljYWxpemVU
aW1lWm9uZU5hbWUgKHRpbWVab25lKSAoRUNNQS00MDIgMi4wKQorICAgICAgICAvLyAxLiBMZXQg
aWFuYVRpbWVab25lIGJlIHRoZSBab25lIG9yIExpbmsgbmFtZSBvZiB0aGUgSUFOQSBUaW1lIFpv
bmUgRGF0YWJhc2Ugc3VjaCB0aGF0IHRpbWVab25lLCBjb252ZXJ0ZWQgdG8gdXBwZXIgY2FzZSBh
cyBkZXNjcmliZWQgaW4gNi4xLCBpcyBlcXVhbCB0byBpYW5hVGltZVpvbmUsIGNvbnZlcnRlZCB0
byB1cHBlciBjYXNlIGFzIGRlc2NyaWJlZCBpbiA2LjEuCisgICAgICAgIC8vIDIuIElmIGlhbmFU
aW1lWm9uZSBpcyBhIExpbmsgbmFtZSwgdGhlbiBsZXQgaWFuYVRpbWVab25lIGJlIHRoZSBjb3Jy
ZXNwb25kaW5nIFpvbmUgbmFtZSBhcyBzcGVjaWZpZWQgaW4gdGhlIOKAnGJhY2t3YXJk4oCdIGZp
bGUgb2YgdGhlIElBTkEgVGltZSBab25lIERhdGFiYXNlLgorCisgICAgICAgIFZlY3RvcjxVQ2hh
ciwgMzI+IGJ1ZmZlcihpYW5hVGltZVpvbmVMZW5ndGgpOworICAgICAgICBVQm9vbCBpc1N5c3Rl
bUlEID0gZmFsc2U7CisgICAgICAgIHN0YXR1cyA9IFVfWkVST19FUlJPUjsKKyAgICAgICAgYXV0
byBjYW5vbmljYWxMZW5ndGggPSB1Y2FsX2dldENhbm9uaWNhbFRpbWVab25lSUQoaWFuYVRpbWVa
b25lLCBpYW5hVGltZVpvbmVMZW5ndGgsIGJ1ZmZlci5kYXRhKCksIGlhbmFUaW1lWm9uZUxlbmd0
aCwgJmlzU3lzdGVtSUQsICZzdGF0dXMpOworICAgICAgICBpZiAoc3RhdHVzID09IFVfQlVGRkVS
X09WRVJGTE9XX0VSUk9SKSB7CisgICAgICAgICAgICBidWZmZXIgPSBWZWN0b3I8VUNoYXIsIDMy
PihjYW5vbmljYWxMZW5ndGgpOworICAgICAgICAgICAgaXNTeXN0ZW1JRCA9IGZhbHNlOworICAg
ICAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICAgICAgdWNhbF9nZXRDYW5v
bmljYWxUaW1lWm9uZUlEKGlhbmFUaW1lWm9uZSwgaWFuYVRpbWVab25lTGVuZ3RoLCBidWZmZXIu
ZGF0YSgpLCBjYW5vbmljYWxMZW5ndGgsICZpc1N5c3RlbUlELCAmc3RhdHVzKTsKKyAgICAgICAg
fQorICAgICAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworICAgICAgICBjYW5vbmljYWwg
PSBTdHJpbmcoYnVmZmVyLmRhdGEoKSwgY2Fub25pY2FsTGVuZ3RoKTsKKyAgICB9CisgICAgdWVu
dW1fY2xvc2UodGltZVpvbmVzKTsKKworICAgIC8vIDMuIElmIGlhbmFUaW1lWm9uZSBpcyAiRXRj
L1VUQyIgb3IgIkV0Yy9HTVQiLCB0aGVuIHJldHVybiAiVVRDIi4KKyAgICBpZiAoY2Fub25pY2Fs
ID09ICJFdGMvVVRDIiB8fCBjYW5vbmljYWwgPT0gIkV0Yy9HTVQiKQorICAgICAgICBjYW5vbmlj
YWwgPSBBU0NJSUxpdGVyYWwoIlVUQyIpOworCisgICAgLy8gNC4gUmV0dXJuIGlhbmFUaW1lWm9u
ZS4KKyAgICByZXR1cm4gY2Fub25pY2FsOworfQorCitzdGF0aWMgVmVjdG9yPFN0cmluZz4gbG9j
YWxlRGF0YShjb25zdCBTdHJpbmcmIGxvY2FsZSwgc2l6ZV90IGtleUluZGV4KQoreworICAgIFZl
Y3RvcjxTdHJpbmc+IGtleUxvY2FsZURhdGE7CisgICAgc3dpdGNoIChrZXlJbmRleCkgeworICAg
IGNhc2UgaW5kZXhPZkV4dGVuc2lvbktleUNhOiB7CisgICAgICAgIFVFcnJvckNvZGUgc3RhdHVz
ID0gVV9aRVJPX0VSUk9SOworICAgICAgICBVRW51bWVyYXRpb24qIGNhbGVuZGFycyA9IHVjYWxf
Z2V0S2V5d29yZFZhbHVlc0ZvckxvY2FsZSgiY2FsZW5kYXIiLCBsb2NhbGUudXRmOCgpLmRhdGEo
KSwgZmFsc2UsICZzdGF0dXMpOworICAgICAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOwor
CisgICAgICAgIHN0YXR1cyA9IFVfWkVST19FUlJPUjsKKyAgICAgICAgaW50MzJfdCBuYW1lTGVu
Z3RoOworICAgICAgICB3aGlsZSAoY29uc3QgY2hhciogYXZhaWxhYmxlTmFtZSA9IHVlbnVtX25l
eHQoY2FsZW5kYXJzLCAmbmFtZUxlbmd0aCwgJnN0YXR1cykpIHsKKyAgICAgICAgICAgIEFTU0VS
VChVX1NVQ0NFU1Moc3RhdHVzKSk7CisgICAgICAgICAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7
CisgICAgICAgICAgICBTdHJpbmcgY2FsZW5kYXIgPSBTdHJpbmcoYXZhaWxhYmxlTmFtZSwgbmFt
ZUxlbmd0aCk7CisgICAgICAgICAgICBrZXlMb2NhbGVEYXRhLmFwcGVuZChjYWxlbmRhcik7Cisg
ICAgICAgICAgICAvLyBFbnN1cmUgYWxpYXNlcyB1c2VkIGluIGxhbmd1YWdlIHRhZyBhcmUgYWxs
b3dlZC4KKyAgICAgICAgICAgIGlmIChjYWxlbmRhciA9PSAiZ3JlZ29yaWFuIikKKyAgICAgICAg
ICAgICAgICBrZXlMb2NhbGVEYXRhLmFwcGVuZChBU0NJSUxpdGVyYWwoImdyZWdvcnkiKSk7Cisg
ICAgICAgICAgICBlbHNlIGlmIChjYWxlbmRhciA9PSAiaXNsYW1pYy1jaXZpbCIpCisgICAgICAg
ICAgICAgICAga2V5TG9jYWxlRGF0YS5hcHBlbmQoQVNDSUlMaXRlcmFsKCJpc2xhbWljYyIpKTsK
KyAgICAgICAgICAgIGVsc2UgaWYgKGNhbGVuZGFyID09ICJldGhpb3BpYy1hbWV0ZS1hbGVtIikK
KyAgICAgICAgICAgICAgICBrZXlMb2NhbGVEYXRhLmFwcGVuZChBU0NJSUxpdGVyYWwoImV0aGlv
YWEiKSk7CisgICAgICAgIH0KKyAgICAgICAgdWVudW1fY2xvc2UoY2FsZW5kYXJzKTsKKyAgICAg
ICAgYnJlYWs7CisgICAgfQorICAgIGNhc2UgaW5kZXhPZkV4dGVuc2lvbktleU51OgorICAgICAg
ICBrZXlMb2NhbGVEYXRhID0gZ2V0TnVtYmVyaW5nU3lzdGVtc0ZvckxvY2FsZShsb2NhbGUpOwor
ICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKKyAgICB9CisgICAgcmV0dXJuIGtleUxvY2FsZURhdGE7Cit9CisKK3N0YXRpYyBKU09iamVj
dCogdG9EYXRlVGltZU9wdGlvbnMoRXhlY1N0YXRlJiBzdGF0ZSwgSlNWYWx1ZSBvcmlnaW5hbE9w
dGlvbnMsIGNvbnN0IERhdGVUaW1lT3B0aW9uUmVxdWlyZWQgcmVxdWlyZWQsIGNvbnN0IERhdGVU
aW1lT3B0aW9uRGVmYXVsdHMgZGVmYXVsdHMpCit7CisgICAgLy8gMTIuMS4xIFRvRGF0ZVRpbWVP
cHRpb25zIGFic3RyYWN0IG9wZXJhdGlvbiAoRUNNQS00MDIgMi4wKQorICAgIFZNJiB2bSA9IHN0
YXRlLnZtKCk7CisKKyAgICAvLyAxLiBJZiBvcHRpb25zIGlzIHVuZGVmaW5lZCwgdGhlbiBsZXQg
b3B0aW9ucyBiZSBudWxsLCBlbHNlIGxldCBvcHRpb25zIGJlIFRvT2JqZWN0KG9wdGlvbnMpLgor
ICAgIC8vIDIuIFJldHVybklmQWJydXB0KG9wdGlvbnMpLgorICAgIC8vIDMuIExldCBvcHRpb25z
IGJlIE9iamVjdENyZWF0ZShvcHRpb25zKS4KKyAgICBKU09iamVjdCogb3B0aW9uczsKKyAgICBp
ZiAob3JpZ2luYWxPcHRpb25zLmlzVW5kZWZpbmVkT3JOdWxsKCkpCisgICAgICAgIG9wdGlvbnMg
PSBjb25zdHJ1Y3RFbXB0eU9iamVjdCgmc3RhdGUsIHN0YXRlLmxleGljYWxHbG9iYWxPYmplY3Qo
KS0+bnVsbFByb3RvdHlwZU9iamVjdFN0cnVjdHVyZSgpKTsKKyAgICBlbHNlIHsKKyAgICAgICAg
SlNPYmplY3QqIG9yaWdpbmFsVG9PYmplY3QgPSBvcmlnaW5hbE9wdGlvbnMudG9PYmplY3QoJnN0
YXRlKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CisgICAgICAgIG9wdGlvbnMgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdCgmc3Rh
dGUsIG9yaWdpbmFsVG9PYmplY3QpOworICAgIH0KKworICAgIC8vIDQuIExldCBuZWVkRGVmYXVs
dHMgYmUgdHJ1ZS4KKyAgICBib29sIG5lZWREZWZhdWx0cyA9IHRydWU7CisKKyAgICAvLyA1LiBJ
ZiByZXF1aXJlZCBpcyAiZGF0ZSIgb3IgImFueSIsCisgICAgaWYgKHJlcXVpcmVkID09IERhdGVU
aW1lT3B0aW9uUmVxdWlyZWQ6OkRhdGUgfHwgcmVxdWlyZWQgPT0gRGF0ZVRpbWVPcHRpb25SZXF1
aXJlZDo6QW55KSB7CisgICAgICAgIC8vIGEuIEZvciBlYWNoIG9mIHRoZSBwcm9wZXJ0eSBuYW1l
cyAid2Vla2RheSIsICJ5ZWFyIiwgIm1vbnRoIiwgImRheSI6CisgICAgICAgIC8vIGkuIExldCBw
cm9wIGJlIHRoZSBwcm9wZXJ0eSBuYW1lLgorICAgICAgICAvLyBpaS4gTGV0IHZhbHVlIGJlIEdl
dChvcHRpb25zLCBwcm9wKS4KKyAgICAgICAgLy8gaWlpLiBSZXR1cm5JZkFicnVwdCh2YWx1ZSku
CisgICAgICAgIC8vIGl2LiBJZiB2YWx1ZSBpcyBub3QgdW5kZWZpbmVkLCB0aGVuIGxldCBuZWVk
RGVmYXVsdHMgYmUgZmFsc2UuCisgICAgICAgIEpTVmFsdWUgd2Vla2RheSA9IG9wdGlvbnMtPmdl
dCgmc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPndlZWtkYXkpOworICAgICAgICBpZiAoc3RhdGUu
aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYg
KCF3ZWVrZGF5LmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxz
ZTsKKworICAgICAgICBKU1ZhbHVlIHllYXIgPSBvcHRpb25zLT5nZXQoJnN0YXRlLCB2bS5wcm9w
ZXJ0eU5hbWVzLT55ZWFyKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAg
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICgheWVhci5pc1VuZGVmaW5lZCgp
KQorICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisKKyAgICAgICAgSlNWYWx1ZSBt
b250aCA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPm1vbnRoKTsKKyAg
ICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CisgICAgICAgIGlmICghbW9udGguaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5lZWRE
ZWZhdWx0cyA9IGZhbHNlOworCisgICAgICAgIEpTVmFsdWUgZGF5ID0gb3B0aW9ucy0+Z2V0KCZz
dGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+ZGF5KTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2Vw
dGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICghZGF5Lmlz
VW5kZWZpbmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKyAgICB9CisK
KyAgICAvLyA2LiBJZiByZXF1aXJlZCBpcyAidGltZSIgb3IgImFueSIsCisgICAgaWYgKHJlcXVp
cmVkID09IERhdGVUaW1lT3B0aW9uUmVxdWlyZWQ6OlRpbWUgfHwgcmVxdWlyZWQgPT0gRGF0ZVRp
bWVPcHRpb25SZXF1aXJlZDo6QW55KSB7CisgICAgICAgIC8vIGEuIEZvciBlYWNoIG9mIHRoZSBw
cm9wZXJ0eSBuYW1lcyAiaG91ciIsICJtaW51dGUiLCAic2Vjb25kIjoKKyAgICAgICAgLy8gaS4g
TGV0IHByb3AgYmUgdGhlIHByb3BlcnR5IG5hbWUuCisgICAgICAgIC8vIGlpLiBMZXQgdmFsdWUg
YmUgR2V0KG9wdGlvbnMsIHByb3ApLgorICAgICAgICAvLyBpaWkuIFJldHVybklmQWJydXB0KHZh
bHVlKS4KKyAgICAgICAgLy8gaXYuIElmIHZhbHVlIGlzIG5vdCB1bmRlZmluZWQsIHRoZW4gbGV0
IG5lZWREZWZhdWx0cyBiZSBmYWxzZS4KKyAgICAgICAgSlNWYWx1ZSBob3VyID0gb3B0aW9ucy0+
Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+aG91cik7CisgICAgICAgIGlmIChzdGF0ZS5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBpZiAo
IWhvdXIuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZhdWx0cyA9IGZhbHNlOwor
CisgICAgICAgIEpTVmFsdWUgbWludXRlID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVy
dHlOYW1lcy0+bWludXRlKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAg
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICghbWludXRlLmlzVW5kZWZpbmVk
KCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKworICAgICAgICBKU1ZhbHVl
IHNlY29uZCA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPnNlY29uZCk7
CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBu
dWxscHRyOworICAgICAgICBpZiAoIXNlY29uZC5pc1VuZGVmaW5lZCgpKQorICAgICAgICAgICAg
bmVlZERlZmF1bHRzID0gZmFsc2U7CisgICAgfQorCisgICAgLy8gNy4gSWYgbmVlZERlZmF1bHRz
IGlzIHRydWUgYW5kIGRlZmF1bHRzIGlzIGVpdGhlciAiZGF0ZSIgb3IgImFsbCIsIHRoZW4KKyAg
ICBpZiAobmVlZERlZmF1bHRzICYmIChkZWZhdWx0cyA9PSBEYXRlVGltZU9wdGlvbkRlZmF1bHRz
OjpEYXRlIHx8IGRlZmF1bHRzID09IERhdGVUaW1lT3B0aW9uRGVmYXVsdHM6OkFsbCkpIHsKKyAg
ICAgICAgLy8gYS4gRm9yIGVhY2ggb2YgdGhlIHByb3BlcnR5IG5hbWVzICJ5ZWFyIiwgIm1vbnRo
IiwgImRheSI6CisgICAgICAgIC8vIGkuIExldCBzdGF0dXMgYmUgQ3JlYXRlRGF0ZVByb3BlcnR5
T3JUaHJvdyhvcHRpb25zLCBwcm9wLCAibnVtZXJpYyIpLgorICAgICAgICAvLyBpaS4gUmV0dXJu
SWZBYnJ1cHQoc3RhdHVzKS4KKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9w
ZXJ0eU5hbWVzLT55ZWFyLCBqc1N0cmluZygmc3RhdGUsICJudW1lcmljIikpOworICAgICAgICBp
ZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKwor
ICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPm1vbnRoLCBq
c1N0cmluZygmc3RhdGUsICJudW1lcmljIikpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0
aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgICAgICBvcHRpb25zLT5w
dXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmRheSwganNTdHJpbmcoJnN0YXRlLCAibnVt
ZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CisgICAgfQorCisgICAgLy8gOC4gSWYgbmVlZERlZmF1bHRzIGlzIHRy
dWUgYW5kIGRlZmF1bHRzIGlzIGVpdGhlciAidGltZSIgb3IgImFsbCIsIHRoZW4KKyAgICBpZiAo
bmVlZERlZmF1bHRzICYmIChkZWZhdWx0cyA9PSBEYXRlVGltZU9wdGlvbkRlZmF1bHRzOjpUaW1l
IHx8IGRlZmF1bHRzID09IERhdGVUaW1lT3B0aW9uRGVmYXVsdHM6OkFsbCkpIHsKKyAgICAgICAg
Ly8gYS4gRm9yIGVhY2ggb2YgdGhlIHByb3BlcnR5IG5hbWVzICJob3VyIiwgIm1pbnV0ZSIsICJz
ZWNvbmQiOgorICAgICAgICAvLyBpLiBMZXQgc3RhdHVzIGJlIENyZWF0ZURhdGVQcm9wZXJ0eU9y
VGhyb3cob3B0aW9ucywgcHJvcCwgIm51bWVyaWMiKS4KKyAgICAgICAgLy8gaWkuIFJldHVybklm
QWJydXB0KHN0YXR1cykuCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVy
dHlOYW1lcy0+aG91ciwganNTdHJpbmcoJnN0YXRlLCAibnVtZXJpYyIpKTsKKyAgICAgICAgaWYg
KHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAg
ICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5taW51dGUsIGpz
U3RyaW5nKCZzdGF0ZSwgIm51bWVyaWMiKSk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRp
b24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgICAgIG9wdGlvbnMtPnB1
dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+c2Vjb25kLCBqc1N0cmluZygmc3RhdGUsICJu
dW1lcmljIikpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKKyAgICAvLyA5LiBSZXR1cm4gb3B0aW9ucy4KKyAg
ICByZXR1cm4gb3B0aW9uczsKK30KKwordm9pZCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNldEZvcm1h
dHNGcm9tUGF0dGVybihjb25zdCBTdHJpbmdWaWV3JiBwYXR0ZXJuKQoreworICAgIC8vIEdldCBh
bGwgc3ltYm9scyBmcm9tIHRoZSBwYXR0ZXJuLCBhbmQgc2V0IGZvcm1hdCBmaWVsZHMgYWNjb3Jk
aW5nbHkuCisgICAgLy8gaHR0cDovL3VuaWNvZGUub3JnL3JlcG9ydHMvdHIzNS90cjM1LWRhdGVz
Lmh0bWwjRGF0ZV9GaWVsZF9TeW1ib2xfVGFibGUKKyAgICB1bnNpZ25lZCBsZW5ndGggPSBwYXR0
ZXJuLmxlbmd0aCgpOworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBsZW5ndGg7ICsraSkg
eworICAgICAgICBVQ2hhciBjdXJyZW50Q2hhcmFjdGVyID0gcGF0dGVybltpXTsKKyAgICAgICAg
aWYgKCFpc0FTQ0lJQWxwaGEoY3VycmVudENoYXJhY3RlcikpCisgICAgICAgICAgICBjb250aW51
ZTsKKworICAgICAgICB1bnNpZ25lZCBjb3VudCA9IDE7CisgICAgICAgIHdoaWxlIChpICsgMSA8
IGxlbmd0aCAmJiBwYXR0ZXJuW2kgKyAxXSA9PSBjdXJyZW50Q2hhcmFjdGVyKSB7CisgICAgICAg
ICAgICArK2NvdW50OworICAgICAgICAgICAgKytpOworICAgICAgICB9CisKKyAgICAgICAgaWYg
KGN1cnJlbnRDaGFyYWN0ZXIgPT0gJ2gnIHx8IGN1cnJlbnRDaGFyYWN0ZXIgPT0gJ0snKQorICAg
ICAgICAgICAgbV9ob3VyMTIgPSB0cnVlOworICAgICAgICBlbHNlIGlmIChjdXJyZW50Q2hhcmFj
dGVyID09ICdIJyB8fCBjdXJyZW50Q2hhcmFjdGVyID09ICdrJykKKyAgICAgICAgICAgIG1faG91
cjEyID0gZmFsc2U7CisKKyAgICAgICAgc3dpdGNoIChjdXJyZW50Q2hhcmFjdGVyKSB7CisgICAg
ICAgIGNhc2UgJ0cnOgorICAgICAgICAgICAgaWYgKGNvdW50IDw9IDMpCisgICAgICAgICAgICAg
ICAgbV9lcmEgPSBFcmE6OlNob3J0OworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNCkK
KyAgICAgICAgICAgICAgICBtX2VyYSA9IEVyYTo6TG9uZzsKKyAgICAgICAgICAgIGVsc2UgaWYg
KGNvdW50ID09IDUpCisgICAgICAgICAgICAgICAgbV9lcmEgPSBFcmE6Ok5hcnJvdzsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICd5JzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9
PSAxKQorICAgICAgICAgICAgICAgIG1feWVhciA9IFllYXI6Ok51bWVyaWM7CisgICAgICAgICAg
ICBlbHNlIGlmIChjb3VudCA9PSAyKQorICAgICAgICAgICAgICAgIG1feWVhciA9IFllYXI6OlR3
b0RpZ2l0OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ00nOgorICAgICAgICBj
YXNlICdMJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAgIG1f
bW9udGggPSBNb250aDo6TnVtZXJpYzsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIp
CisgICAgICAgICAgICAgICAgbV9tb250aCA9IE1vbnRoOjpUd29EaWdpdDsKKyAgICAgICAgICAg
IGVsc2UgaWYgKGNvdW50ID09IDMpCisgICAgICAgICAgICAgICAgbV9tb250aCA9IE1vbnRoOjpT
aG9ydDsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDQpCisgICAgICAgICAgICAgICAg
bV9tb250aCA9IE1vbnRoOjpMb25nOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNSkK
KyAgICAgICAgICAgICAgICBtX21vbnRoID0gTW9udGg6Ok5hcnJvdzsKKyAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICBjYXNlICdFJzoKKyAgICAgICAgY2FzZSAnZSc6CisgICAgICAgIGNhc2Ug
J2MnOgorICAgICAgICAgICAgaWYgKGNvdW50IDw9IDMpCisgICAgICAgICAgICAgICAgbV93ZWVr
ZGF5ID0gV2Vla2RheTo6U2hvcnQ7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA0KQor
ICAgICAgICAgICAgICAgIG1fd2Vla2RheSA9IFdlZWtkYXk6Okxvbmc7CisgICAgICAgICAgICBl
bHNlIGlmIChjb3VudCA9PSA1KQorICAgICAgICAgICAgICAgIG1fd2Vla2RheSA9IFdlZWtkYXk6
Ok5hcnJvdzsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdkJzoKKyAgICAgICAg
ICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAgIG1fZGF5ID0gRGF5OjpOdW1lcmlj
OworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAgICAgICAgICAgICBtX2Rh
eSA9IERheTo6VHdvRGlnaXQ7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAnaCc6
CisgICAgICAgIGNhc2UgJ0gnOgorICAgICAgICBjYXNlICdrJzoKKyAgICAgICAgY2FzZSAnSyc6
CisgICAgICAgICAgICBpZiAoY291bnQgPT0gMSkKKyAgICAgICAgICAgICAgICBtX2hvdXIgPSBI
b3VyOjpOdW1lcmljOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAgICAg
ICAgICAgICBtX2hvdXIgPSBIb3VyOjpUd29EaWdpdDsKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBjYXNlICdtJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAg
ICAgIG1fbWludXRlID0gTWludXRlOjpOdW1lcmljOworICAgICAgICAgICAgZWxzZSBpZiAoY291
bnQgPT0gMikKKyAgICAgICAgICAgICAgICBtX21pbnV0ZSA9IE1pbnV0ZTo6VHdvRGlnaXQ7Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAncyc6CisgICAgICAgICAgICBpZiAoY291
bnQgPT0gMSkKKyAgICAgICAgICAgICAgICBtX3NlY29uZCA9IFNlY29uZDo6TnVtZXJpYzsKKyAg
ICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAgICAgICAgICAgICAgbV9zZWNvbmQg
PSBTZWNvbmQ6OlR3b0RpZ2l0OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ3on
OgorICAgICAgICBjYXNlICd2JzoKKyAgICAgICAgY2FzZSAnVic6CisgICAgICAgICAgICBpZiAo
Y291bnQgPT0gMSkKKyAgICAgICAgICAgICAgICBtX3RpbWVab25lTmFtZSA9IFRpbWVab25lTmFt
ZTo6U2hvcnQ7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA0KQorICAgICAgICAgICAg
ICAgIG1fdGltZVpvbmVOYW1lID0gVGltZVpvbmVOYW1lOjpMb25nOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3ZvaWQgSW50bERhdGVUaW1lRm9ybWF0Ojppbml0
aWFsaXplRGF0ZVRpbWVGb3JtYXQoRXhlY1N0YXRlJiBzdGF0ZSwgSlNWYWx1ZSBsb2NhbGVzLCBK
U1ZhbHVlIG9yaWdpbmFsT3B0aW9ucykKK3sKKyAgICAvLyAxMi4xLjEgSW5pdGlhbGl6ZURhdGVU
aW1lRm9ybWF0IChkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykgKEVDTUEtNDAyIDIu
MCkKKyAgICAvLyAxLiBJZiBkYXRlVGltZUZvcm1hdC5bW2luaXRpYWxpemVkSW50bE9iamVjdF1d
IGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4KKyAgICAvLyAyLiBTZXQgZGF0
ZVRpbWVGb3JtYXQuW1tpbml0aWFsaXplZEludGxPYmplY3RdXSB0byB0cnVlLgorCisgICAgLy8g
My4gTGV0IHJlcXVlc3RlZExvY2FsZXMgYmUgQ2Fub25pY2FsaXplTG9jYWxlTGlzdChsb2NhbGVz
KS4KKyAgICBWZWN0b3I8U3RyaW5nPiByZXF1ZXN0ZWRMb2NhbGVzID0gY2Fub25pY2FsaXplTG9j
YWxlTGlzdChzdGF0ZSwgbG9jYWxlcyk7CisgICAgLy8gNC4gUmV0dXJuSWZBYnJ1cHQocmVxdWVz
dGVkTG9jYWxlcyksCisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1
cm47CisKKyAgICAvLyA1LiBMZXQgb3B0aW9ucyBiZSBUb0RhdGVUaW1lT3B0aW9ucyhvcHRpb25z
LCAiYW55IiwgImRhdGUiKS4KKyAgICBKU09iamVjdCogb3B0aW9ucyA9IHRvRGF0ZVRpbWVPcHRp
b25zKHN0YXRlLCBvcmlnaW5hbE9wdGlvbnMsIERhdGVUaW1lT3B0aW9uUmVxdWlyZWQ6OkFueSwg
RGF0ZVRpbWVPcHRpb25EZWZhdWx0czo6RGF0ZSk7CisgICAgLy8gNi4gUmV0dXJuSWZBYnJ1cHQo
b3B0aW9ucykuCisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm47
CisKKyAgICAvLyA3LiBMZXQgb3B0IGJlIGEgbmV3IFJlY29yZC4KKyAgICBIYXNoTWFwPFN0cmlu
ZywgU3RyaW5nPiBsb2NhbGVPcHQ7CisKKyAgICAvLyA4LiBMZXQgbWF0Y2hlciBiZSBHZXRPcHRp
b24ob3B0aW9ucywgImxvY2FsZU1hdGNoZXIiLCAic3RyaW5nIiwgwqsibG9va3VwIiwgImJlc3Qg
Zml0IsK7LCAiYmVzdCBmaXQiKS4KKyAgICBWTSYgdm0gPSBzdGF0ZS52bSgpOworICAgIFN0cmlu
ZyBsb2NhbGVNYXRjaGVyID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJv
cGVydHlOYW1lcy0+bG9jYWxlTWF0Y2hlciwgeyAibG9va3VwIiwgImJlc3QgZml0IiB9LCAibG9j
YWxlTWF0Y2hlciBtdXN0IGJlIGVpdGhlciBcImxvb2t1cFwiIG9yIFwiYmVzdCBmaXRcIiIsICJi
ZXN0IGZpdCIpOworICAgIC8vIDkuIFJldHVybklmQWJydXB0KG1hdGNoZXIpLgorICAgIGlmIChz
dGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuOworICAgIC8vIDEwLiBTZXQgb3B0
LltbbG9jYWxlTWF0Y2hlcl1dIHRvIG1hdGNoZXIuCisgICAgbG9jYWxlT3B0LnNldCh2bS5wcm9w
ZXJ0eU5hbWVzLT5sb2NhbGVNYXRjaGVyLnN0cmluZygpLCBsb2NhbGVNYXRjaGVyKTsKKworICAg
IC8vIDExLiBMZXQgbG9jYWxlRGF0YSBiZSB0aGUgdmFsdWUgb2YgJURhdGVUaW1lRm9ybWF0JS5b
W2xvY2FsZURhdGFdXS4KKyAgICAvLyAxMi4gTGV0IHIgYmUgUmVzb2x2ZUxvY2FsZSggJURhdGVU
aW1lRm9ybWF0JS5bW2F2YWlsYWJsZUxvY2FsZXNdXSwgcmVxdWVzdGVkTG9jYWxlcywgb3B0LCAl
RGF0ZVRpbWVGb3JtYXQlLltbcmVsZXZhbnRFeHRlbnNpb25LZXlzXV0sIGxvY2FsZURhdGEpLgor
ICAgIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiBhdmFpbGFibGVMb2NhbGVzID0gc3RhdGUubGV4aWNh
bEdsb2JhbE9iamVjdCgpLT5pbnRsRGF0ZVRpbWVGb3JtYXRBdmFpbGFibGVMb2NhbGVzKCk7Cisg
ICAgSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4gcmVzb2x2ZWQgPSByZXNvbHZlTG9jYWxlKGF2YWls
YWJsZUxvY2FsZXMsIHJlcXVlc3RlZExvY2FsZXMsIGxvY2FsZU9wdCwgcmVsZXZhbnRFeHRlbnNp
b25LZXlzLCBXVEZfQVJSQVlfTEVOR1RIKHJlbGV2YW50RXh0ZW5zaW9uS2V5cyksIGxvY2FsZURh
dGEpOworCisgICAgLy8gMTMuIFNldCBkYXRlVGltZUZvcm1hdC5bW2xvY2FsZV1dIHRvIHRoZSB2
YWx1ZSBvZiByLltbbG9jYWxlXV0uCisgICAgbV9sb2NhbGUgPSByZXNvbHZlZC5nZXQodm0ucHJv
cGVydHlOYW1lcy0+bG9jYWxlLnN0cmluZygpKTsKKyAgICAvLyAxNC4gU2V0IGRhdGVUaW1lRm9y
bWF0LltbY2FsZW5kYXJdXSB0byB0aGUgdmFsdWUgb2Ygci5bW2NhXV0uCisgICAgbV9jYWxlbmRh
ciA9IHJlc29sdmVkLmdldChBU0NJSUxpdGVyYWwoImNhIikpOworICAgIC8vIFN3aXRjaCB0byBw
cmVmZXJyZWQgYWxpYXNlcy4KKyAgICBpZiAobV9jYWxlbmRhciA9PSAiZ3JlZ29yeSIpCisgICAg
ICAgIG1fY2FsZW5kYXIgPSBBU0NJSUxpdGVyYWwoImdyZWdvcmlhbiIpOworICAgIGVsc2UgaWYg
KG1fY2FsZW5kYXIgPT0gImlzbGFtaWNjIikKKyAgICAgICAgbV9jYWxlbmRhciA9IEFTQ0lJTGl0
ZXJhbCgiaXNsYW1pYy1jaXZpbCIpOworICAgIGVsc2UgaWYgKG1fY2FsZW5kYXIgPT0gImV0aGlv
YWEiKQorICAgICAgICBtX2NhbGVuZGFyID0gQVNDSUlMaXRlcmFsKCJldGhpb3BpYy1hbWV0ZS1h
bGVtIik7CisgICAgLy8gMTUuIFNldCBkYXRlVGltZUZvcm1hdC5bW251bWJlcmluZ1N5c3RlbV1d
IHRvIHRoZSB2YWx1ZSBvZiByLltbbnVdXS4KKyAgICBtX251bWJlcmluZ1N5c3RlbSA9IHJlc29s
dmVkLmdldChBU0NJSUxpdGVyYWwoIm51IikpOworICAgIC8vIDE2LiBMZXQgZGF0YUxvY2FsZSBi
ZSB0aGUgdmFsdWUgb2Ygci5bW2RhdGFMb2NhbGVdXS4KKyAgICBTdHJpbmcgZGF0YUxvY2FsZSA9
IHJlc29sdmVkLmdldChBU0NJSUxpdGVyYWwoImRhdGFMb2NhbGUiKSk7CisKKyAgICAvLyAxNy4g
TGV0IHR6IGJlIEdldChvcHRpb25zLCAidGltZVpvbmUiKS4KKyAgICBKU1ZhbHVlIHR6VmFsdWUg
PSBvcHRpb25zLT5nZXQoJnN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT50aW1lWm9uZSk7CisgICAg
Ly8gMTguIFJldHVybklmQWJydXB0KHR6KS4KKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkp
CisgICAgICAgIHJldHVybjsKKworICAgIC8vIDE5LiBJZiB0eiBpcyBub3QgdW5kZWZpbmVkLCB0
aGVuCisgICAgU3RyaW5nIHR6OworICAgIGlmICghdHpWYWx1ZS5pc1VuZGVmaW5lZCgpKSB7Cisg
ICAgICAgIC8vIGEuIExldCB0eiBiZSBUb1N0cmluZyh0eikuCisgICAgICAgIFN0cmluZyBvcmln
aW5hbFR6ID0gdHpWYWx1ZS50b1dURlN0cmluZygmc3RhdGUpOworICAgICAgICAvLyBiLiBSZXR1
cm5JZkFicnVwdCh0eikuCisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAg
ICAgICAgIHJldHVybjsKKyAgICAgICAgLy8gYy4gSWYgdGhlIHJlc3VsdCBvZiBJc1ZhbGlkVGlt
ZVpvbmVOYW1lKHR6KSBpcyBmYWxzZSwgdGhlbiBpLiBUaHJvdyBhIFJhbmdlRXJyb3IgZXhjZXB0
aW9uLgorICAgICAgICAvLyBkLiBMZXQgdHogYmUgQ2Fub25pY2FsaXplVGltZVpvbmVOYW1lKHR6
KS4KKyAgICAgICAgdHogPSBjYW5vbmljYWxpemVUaW1lWm9uZU5hbWUob3JpZ2luYWxUeik7Cisg
ICAgICAgIGlmICh0ei5pc051bGwoKSkgeworICAgICAgICAgICAgdGhyb3dSYW5nZUVycm9yKCZz
dGF0ZSwgU3RyaW5nOjpmb3JtYXQoImludmFsaWQgdGltZSB6b25lOiAlcyIsIG9yaWdpbmFsVHou
dXRmOCgpLmRhdGEoKSkpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgfSBl
bHNlCisgICAgLy8gMjAuIEVsc2UsCisgICAgICAgIC8vIGEuIExldCB0eiBiZSBEZWZhdWx0VGlt
ZVpvbmUoKS4KKyAgICAgICAgdHogPSBkZWZhdWx0VGltZVpvbmUoKTsKKworICAgIC8vIDIxLiBT
ZXQgZGF0ZVRpbWVGb3JtYXQuW1t0aW1lWm9uZV1dIHRvIHR6LgorICAgIG1fdGltZVpvbmUgPSB0
ejsKKworICAgIC8vIDIyLiBMZXQgb3B0IGJlIGEgbmV3IFJlY29yZC4KKyAgICAvLyBSYXRoZXIg
dGhhbiBidWlsZGluZyBhIHJlY29yZCwgYnVpbGQgdGhlIHNrZWxldG9uIHBhdHRlcm4uCisgICAg
U3RyaW5nQnVpbGRlciBza2VsZXRvbkJ1aWxkZXI7CisKKyAgICAvLyAyMy4gRm9yIGVhY2ggcm93
IG9mIFRhYmxlIDMsIGV4Y2VwdCB0aGUgaGVhZGVyIHJvdywgZG86CisgICAgLy8gYS4gTGV0IHBy
b3AgYmUgdGhlIG5hbWUgZ2l2ZW4gaW4gdGhlIFByb3BlcnR5IGNvbHVtbiBvZiB0aGUgcm93Lgor
ICAgIC8vIGIuIExldCB2YWx1ZSBiZSBHZXRPcHRpb24ob3B0aW9ucywgcHJvcCwgInN0cmluZyIs
IMKrdGhlIHN0cmluZ3MgZ2l2ZW4gaW4gdGhlIFZhbHVlcyBjb2x1bW4gb2YgdGhlIHJvd8K7LCB1
bmRlZmluZWQpLgorICAgIC8vIGMuIFJldHVybklmQWJydXB0KHZhbHVlKS4KKyAgICAvLyBkLiBT
ZXQgb3B0LltbPHByb3A+XV0gdG8gdmFsdWUuCisgICAgYXV0byBuYXJyb3dTaG9ydExvbmcgPSB7
ICJuYXJyb3ciLCAic2hvcnQiLCAibG9uZyIgfTsKKyAgICBhdXRvIHR3b0RpZ2l0TnVtZXJpYyA9
IHsgIjItZGlnaXQiLCAibnVtZXJpYyIgfTsKKyAgICBhdXRvIHR3b0RpZ2l0TnVtZXJpY05hcnJv
d1Nob3J0TG9uZyA9IHsgIjItZGlnaXQiLCAibnVtZXJpYyIsICJuYXJyb3ciLCAic2hvcnQiLCAi
bG9uZyIgfTsKKyAgICBhdXRvIHNob3J0TG9uZyA9IHsgInNob3J0IiwgImxvbmciIH07CisKKyAg
ICBTdHJpbmcgd2Vla2RheSA9IGludGxTdHJpbmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnBy
b3BlcnR5TmFtZXMtPndlZWtkYXksIG5hcnJvd1Nob3J0TG9uZywgIndlZWtkYXkgbXVzdCBiZSBc
Im5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwibG9uZ1wiIiwgbnVsbHB0cik7CisgICAgaWYgKHN0
YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm47CisgICAgaWYgKCF3ZWVrZGF5Lmlz
TnVsbCgpKSB7CisgICAgICAgIGlmICh3ZWVrZGF5ID09ICJuYXJyb3ciKQorICAgICAgICAgICAg
c2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoIkVFRUVFIik7CisgICAgICAgIGVsc2UgaWYg
KHdlZWtkYXkgPT0gInNob3J0IikKKyAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmRM
aXRlcmFsKCJFRUUiKTsKKyAgICAgICAgZWxzZSBpZiAod2Vla2RheSA9PSAibG9uZyIpCisgICAg
ICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiRUVFRSIpOworICAgIH0KKwor
ICAgIFN0cmluZyBlcmEgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9w
ZXJ0eU5hbWVzLT5lcmEsIG5hcnJvd1Nob3J0TG9uZywgImVyYSBtdXN0IGJlIFwibmFycm93XCIs
IFwic2hvcnRcIiwgb3IgXCJsb25nXCIiLCBudWxscHRyKTsKKyAgICBpZiAoc3RhdGUuaGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgIHJldHVybjsKKyAgICBpZiAoIWVyYS5pc051bGwoKSkgeworICAg
ICAgICBpZiAoZXJhID09ICJuYXJyb3ciKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFw
cGVuZExpdGVyYWwoIkdHR0dHIik7CisgICAgICAgIGVsc2UgaWYgKGVyYSA9PSAic2hvcnQiKQor
ICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoIkdHRyIpOworICAgICAg
ICBlbHNlIGlmIChlcmEgPT0gImxvbmciKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFw
cGVuZExpdGVyYWwoIkdHR0ciKTsKKyAgICB9CisKKyAgICBTdHJpbmcgeWVhciA9IGludGxTdHJp
bmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnllYXIsIHR3b0RpZ2l0
TnVtZXJpYywgInllYXIgbXVzdCBiZSBcIjItZGlnaXRcIiBvciBcIm51bWVyaWNcIiIsIG51bGxw
dHIpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuOworICAg
IGlmICgheWVhci5pc051bGwoKSkgeworICAgICAgICBpZiAoeWVhciA9PSAiMi1kaWdpdCIpCisg
ICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgieXkiKTsKKyAgICAgICAg
ZWxzZSBpZiAoeWVhciA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIu
YXBwZW5kKCd5Jyk7CisgICAgfQorCisgICAgU3RyaW5nIG1vbnRoID0gaW50bFN0cmluZ09wdGlv
bihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bW9udGgsIHR3b0RpZ2l0TnVtZXJp
Y05hcnJvd1Nob3J0TG9uZywgIm1vbnRoIG11c3QgYmUgXCIyLWRpZ2l0XCIsIFwibnVtZXJpY1wi
LCBcIm5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwibG9uZ1wiIiwgbnVsbHB0cik7CisgICAgaWYg
KHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm47CisgICAgaWYgKCFtb250aC5p
c051bGwoKSkgeworICAgICAgICBpZiAobW9udGggPT0gIjItZGlnaXQiKQorICAgICAgICAgICAg
c2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoIk1NIik7CisgICAgICAgIGVsc2UgaWYgKG1v
bnRoID09ICJudW1lcmljIikKKyAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmQoJ00n
KTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gIm5hcnJvdyIpCisgICAgICAgICAgICBza2Vs
ZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiTU1NTU0iKTsKKyAgICAgICAgZWxzZSBpZiAobW9u
dGggPT0gInNob3J0IikKKyAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmRMaXRlcmFs
KCJNTU0iKTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gImxvbmciKQorICAgICAgICAgICAg
c2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoIk1NTU0iKTsKKyAgICB9CisKKyAgICBTdHJp
bmcgZGF5ID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1l
cy0+ZGF5LCB0d29EaWdpdE51bWVyaWMsICJkYXkgbXVzdCBiZSBcIjItZGlnaXRcIiBvciBcIm51
bWVyaWNcIiIsIG51bGxwdHIpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAg
ICAgcmV0dXJuOworICAgIGlmICghZGF5LmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChkYXkgPT0g
IjItZGlnaXQiKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoImRk
Iik7CisgICAgICAgIGVsc2UgaWYgKGRheSA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICBza2Vs
ZXRvbkJ1aWxkZXIuYXBwZW5kKCdkJyk7CisgICAgfQorCisgICAgU3RyaW5nIGhvdXIgPSBpbnRs
U3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyLCB0d29E
aWdpdE51bWVyaWMsICJob3VyIG11c3QgYmUgXCIyLWRpZ2l0XCIgb3IgXCJudW1lcmljXCIiLCBu
dWxscHRyKTsKKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybjsK
KworICAgIC8vIFdlIG5lZWQgaG91cjEyIHRvIG1ha2UgdGhlIGhvdXIgc2tlbGV0b24gcGF0dGVy
biBkZWNpc2lvbiwgc28gZG8gdGhpcyBlYXJseS4KKyAgICAvLyAzMi4gTGV0IGhyMTIgYmUgR2V0
T3B0aW9uKG9wdGlvbnMsICJob3VyMTIiLCAiYm9vbGVhbiIsIHVuZGVmaW5lZCwgdW5kZWZpbmVk
KS4KKyAgICBib29sIGlzSG91cjEyVW5kZWZpbmVkID0gdHJ1ZTsKKyAgICBib29sIGhyMTIgPSBp
bnRsQm9vbGVhbk9wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+aG91cjEy
LCBpc0hvdXIxMlVuZGVmaW5lZCk7CisgICAgLy8gMzMuIFJldHVybklmQWJydXB0KGhyMTIpLgor
ICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYg
KCFob3VyLmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChpc0hvdXIxMlVuZGVmaW5lZCkgeworICAg
ICAgICAgICAgaWYgKGhvdXIgPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgICAgIHNrZWxldG9u
QnVpbGRlci5hcHBlbmRMaXRlcmFsKCJqaiIpOworICAgICAgICAgICAgZWxzZSBpZiAoaG91ciA9
PSAibnVtZXJpYyIpCisgICAgICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZCgnaicp
OworICAgICAgICB9IGVsc2UgaWYgKGhyMTIpIHsKKyAgICAgICAgICAgIGlmIChob3VyID09ICIy
LWRpZ2l0IikKKyAgICAgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgi
aGgiKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGhvdXIgPT0gIm51bWVyaWMiKQorICAgICAgICAg
ICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmQoJ2gnKTsKKyAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgIGlmIChob3VyID09ICIyLWRpZ2l0IikKKyAgICAgICAgICAgICAgICBza2VsZXRv
bkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiSEgiKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGhvdXIg
PT0gIm51bWVyaWMiKQorICAgICAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmQoJ0gn
KTsKKyAgICAgICAgfQorICAgIH0KKworICAgIFN0cmluZyBtaW51dGUgPSBpbnRsU3RyaW5nT3B0
aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5taW51dGUsIHR3b0RpZ2l0TnVt
ZXJpYywgIm1pbnV0ZSBtdXN0IGJlIFwiMi1kaWdpdFwiIG9yIFwibnVtZXJpY1wiIiwgbnVsbHB0
cik7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm47CisgICAg
aWYgKCFtaW51dGUuaXNOdWxsKCkpIHsKKyAgICAgICAgaWYgKG1pbnV0ZSA9PSAiMi1kaWdpdCIp
CisgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgibW0iKTsKKyAgICAg
ICAgZWxzZSBpZiAobWludXRlID09ICJudW1lcmljIikKKyAgICAgICAgICAgIHNrZWxldG9uQnVp
bGRlci5hcHBlbmQoJ20nKTsKKyAgICB9CisKKyAgICBTdHJpbmcgc2Vjb25kID0gaW50bFN0cmlu
Z09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+c2Vjb25kLCB0d29EaWdp
dE51bWVyaWMsICJzZWNvbmQgbXVzdCBiZSBcIjItZGlnaXRcIiBvciBcIm51bWVyaWNcIiIsIG51
bGxwdHIpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuOwor
ICAgIGlmICghc2Vjb25kLmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChzZWNvbmQgPT0gIjItZGln
aXQiKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoInNzIik7Cisg
ICAgICAgIGVsc2UgaWYgKHNlY29uZCA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICBza2VsZXRv
bkJ1aWxkZXIuYXBwZW5kKCdzJyk7CisgICAgfQorCisgICAgU3RyaW5nIHRpbWVab25lTmFtZSA9
IGludGxTdHJpbmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnRpbWVa
b25lTmFtZSwgc2hvcnRMb25nLCAidGltZVpvbmVOYW1lIG11c3QgYmUgXCJzaG9ydFwiIG9yIFwi
bG9uZ1wiIiwgbnVsbHB0cik7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAg
ICByZXR1cm47CisgICAgaWYgKCF0aW1lWm9uZU5hbWUuaXNOdWxsKCkpIHsKKyAgICAgICAgaWYg
KHRpbWVab25lTmFtZSA9PSAic2hvcnQiKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFw
cGVuZCgneicpOworICAgICAgICBlbHNlIGlmICh0aW1lWm9uZU5hbWUgPT0gImxvbmciKQorICAg
ICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoInp6enoiKTsKKyAgICB9CisK
KyAgICAvLyAyNC4gTGV0IGRhdGFMb2NhbGVEYXRhIGJlIEdldChsb2NhbGVEYXRhLCBkYXRhTG9j
YWxlKS4KKyAgICAvLyAyNS4gTGV0IGZvcm1hdHMgYmUgR2V0KGRhdGFMb2NhbGVEYXRhLCAiZm9y
bWF0cyIpLgorICAgIC8vIDI2LiBMZXQgbWF0Y2hlciBiZSBHZXRPcHRpb24ob3B0aW9ucywgImZv
cm1hdE1hdGNoZXIiLCAic3RyaW5nIiwgwqsiYmFzaWMiLCAiYmVzdCBmaXQiwrssICJiZXN0IGZp
dCIpLgorICAgIGludGxTdHJpbmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFt
ZXMtPmZvcm1hdE1hdGNoZXIsIHsgImJhc2ljIiwgImJlc3QgZml0IiB9LCAiZm9ybWF0TWF0Y2hl
ciBtdXN0IGJlIGVpdGhlciBcImJhc2ljXCIgb3IgXCJiZXN0IGZpdFwiIiwgImJlc3QgZml0Iik7
CisgICAgLy8gMjcuIFJldHVybklmQWJydXB0KG1hdGNoZXIpLgorICAgIGlmIChzdGF0ZS5oYWRF
eGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgLy8gQWx3YXlzIHVzZSBJQ1UgZGF0
ZSBmb3JtYXQgZ2VuZXJhdG9yLCByYXRoZXIgdGhhbiBvdXIgb3duIHBhdHRlcm4gbGlzdCBhbmQg
bWF0Y2hlci4KKyAgICAvLyBDb3ZlcnMgc3RlcHMgMjgtMzYuCisgICAgVUVycm9yQ29kZSBzdGF0
dXMgPSBVX1pFUk9fRVJST1I7CisgICAgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciogZ2VuZXJh
dG9yID0gdWRhdHBnX29wZW4oZGF0YUxvY2FsZS51dGY4KCkuZGF0YSgpLCAmc3RhdHVzKTsKKyAg
ICBpZiAoVV9GQUlMVVJFKHN0YXR1cykpIHsKKyAgICAgICAgdGhyb3dUeXBlRXJyb3IoJnN0YXRl
LCBBU0NJSUxpdGVyYWwoImZhaWxlZCB0byBpbml0aWFsaXplIERhdGVUaW1lRm9ybWF0IikpOwor
ICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgU3RyaW5nIHNrZWxldG9uID0gc2tlbGV0b25C
dWlsZGVyLnRvU3RyaW5nKCk7CisgICAgU3RyaW5nVmlldyBza2VsZXRvblZpZXcoc2tlbGV0b24p
OworICAgIFZlY3RvcjxVQ2hhciwgMzI+IHBhdHRlcm5CdWZmZXIoMzIpOworICAgIHN0YXR1cyA9
IFVfWkVST19FUlJPUjsKKyAgICBhdXRvIHBhdHRlcm5MZW5ndGggPSB1ZGF0cGdfZ2V0QmVzdFBh
dHRlcm4oZ2VuZXJhdG9yLCBza2VsZXRvblZpZXcudXBjb252ZXJ0ZWRDaGFyYWN0ZXJzKCksIHNr
ZWxldG9uVmlldy5sZW5ndGgoKSwgcGF0dGVybkJ1ZmZlci5kYXRhKCksIHBhdHRlcm5CdWZmZXIu
Y2FwYWNpdHkoKSwgJnN0YXR1cyk7CisgICAgaWYgKHN0YXR1cyA9PSBVX0JVRkZFUl9PVkVSRkxP
V19FUlJPUikgeworICAgICAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgIHBhdHRl
cm5CdWZmZXIgPSBWZWN0b3I8VUNoYXIsIDMyPihwYXR0ZXJuTGVuZ3RoKTsKKyAgICAgICAgdWRh
dHBnX2dldEJlc3RQYXR0ZXJuKGdlbmVyYXRvciwgc2tlbGV0b25WaWV3LnVwY29udmVydGVkQ2hh
cmFjdGVycygpLCBza2VsZXRvblZpZXcubGVuZ3RoKCksIHBhdHRlcm5CdWZmZXIuZGF0YSgpLCBw
YXR0ZXJuTGVuZ3RoLCAmc3RhdHVzKTsKKyAgICB9CisgICAgdWRhdHBnX2Nsb3NlKGdlbmVyYXRv
cik7CisgICAgaWYgKFVfRkFJTFVSRShzdGF0dXMpKSB7CisgICAgICAgIHRocm93VHlwZUVycm9y
KCZzdGF0ZSwgQVNDSUlMaXRlcmFsKCJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBEYXRlVGltZUZvcm1h
dCIpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIFN0cmluZ1ZpZXcgcGF0dGVybihw
YXR0ZXJuQnVmZmVyLmRhdGEoKSwgcGF0dGVybkxlbmd0aCk7CisgICAgc2V0Rm9ybWF0c0Zyb21Q
YXR0ZXJuKHBhdHRlcm4pOworCisgICAgLy8gMzcuIFNldCBkYXRlVGltZUZvcm1hdC5bW2JvdW5k
Rm9ybWF0XV0gdG8gdW5kZWZpbmVkLgorICAgIC8vIEFscmVhZHkgdW5kZWZpbmVkLgorCisgICAg
Ly8gMzguIFNldCBkYXRlVGltZUZvcm1hdC5bW2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXRdXSB0
byB0cnVlLgorICAgIG1faW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdCA9IHRydWU7CisKKyAgICAv
LyAzOS4gUmV0dXJuIGRhdGVUaW1lRm9ybWF0LgorICAgIHJldHVybjsKK30KKworY29uc3QgY2hh
ciogSW50bERhdGVUaW1lRm9ybWF0Ojp3ZWVrZGF5U3RyaW5nKFdlZWtkYXkgd2Vla2RheSkKIHsK
LSAgICAvLyAxMi4zLjQgRGF0ZVRpbWUgRm9ybWF0IEZ1bmN0aW9ucyAoRUNNQS00MDIgMi4wKQot
ICAgIC8vIDEuIExldCBkdGYgYmUgdGhlIHRoaXMgdmFsdWUuCi0gICAgSW50bERhdGVUaW1lRm9y
bWF0KiBmb3JtYXQgPSBqc0R5bmFtaWNDYXN0PEludGxEYXRlVGltZUZvcm1hdCo+KHN0YXRlLT50
aGlzVmFsdWUoKSk7Ci0gICAgLy8gMi4gQXNzZXJ0OiBUeXBlKGR0ZikgaXMgT2JqZWN0IGFuZCBk
dGYgaGFzIGFuIFtbaW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdF1dIGludGVybmFsIHNsb3Qgd2hv
c2UgdmFsdWUgaXMgdHJ1ZS4KLSAgICBpZiAoIWZvcm1hdCkKLSAgICAgICAgcmV0dXJuIEpTVmFs
dWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihzdGF0ZSkpOworICAgIHN3aXRjaCAod2Vla2RheSkg
eworICAgIGNhc2UgV2Vla2RheTo6TmFycm93OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFs
KCJuYXJyb3ciKTsKKyAgICBjYXNlIFdlZWtkYXk6OlNob3J0OgorICAgICAgICByZXR1cm4gQVND
SUlMaXRlcmFsKCJzaG9ydCIpOworICAgIGNhc2UgV2Vla2RheTo6TG9uZzoKKyAgICAgICAgcmV0
dXJuIEFTQ0lJTGl0ZXJhbCgibG9uZyIpOworICAgIGNhc2UgV2Vla2RheTo6Tm9uZToKKyAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0K
KyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KIAotICAg
IEpTVmFsdWUgZGF0ZSA9IHN0YXRlLT5hcmd1bWVudCgwKTsKLSAgICBkb3VibGUgdmFsdWU7Citj
b25zdCBjaGFyKiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmVyYVN0cmluZyhFcmEgZXJhKQoreworICAg
IHN3aXRjaCAoZXJhKSB7CisgICAgY2FzZSBFcmE6Ok5hcnJvdzoKKyAgICAgICAgcmV0dXJuICJu
YXJyb3ciOworICAgIGNhc2UgRXJhOjpTaG9ydDoKKyAgICAgICAgcmV0dXJuICJzaG9ydCI7Cisg
ICAgY2FzZSBFcmE6Okxvbmc6CisgICAgICAgIHJldHVybiAibG9uZyI7CisgICAgY2FzZSBFcmE6
Ok5vbmU6CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1cm4gbnVs
bHB0cjsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIG51bGxw
dHI7Cit9CiAKLSAgICAvLyAzLiBJZiBkYXRlIGlzIG5vdCBwcm92aWRlZCBvciBpcyB1bmRlZmlu
ZWQsIHRoZW4KLSAgICBpZiAoZGF0ZS5pc1VuZGVmaW5lZCgpKSB7Ci0gICAgICAgIC8vIGEuIExl
dCB4IGJlICVEYXRlX25vdyUoKS4KLSAgICAgICAgdmFsdWUgPSBKU1ZhbHVlOjpkZWNvZGUoZGF0
ZU5vdyhzdGF0ZSkpLnRvTnVtYmVyKHN0YXRlKTsKLSAgICB9IGVsc2UgewotICAgICAgICAvLyA0
LiBFbHNlCi0gICAgICAgIC8vIGEuIExldCB4IGJlIFRvTnVtYmVyKGRhdGUpLgotICAgICAgICB2
YWx1ZSA9IGRhdGUudG9OdW1iZXIoc3RhdGUpOwotICAgICAgICAvLyBiLiBSZXR1cm5JZkFicnVw
dCh4KS4KLSAgICAgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKLSAgICAgICAgICAgIHJl
dHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRlZmluZWQoKSk7Citjb25zdCBjaGFyKiBJbnRsRGF0
ZVRpbWVGb3JtYXQ6OnllYXJTdHJpbmcoWWVhciB5ZWFyKQoreworICAgIHN3aXRjaCAoeWVhcikg
eworICAgIGNhc2UgWWVhcjo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiAiMi1kaWdpdCI7Cisg
ICAgY2FzZSBZZWFyOjpOdW1lcmljOgorICAgICAgICByZXR1cm4gIm51bWVyaWMiOworICAgIGNh
c2UgWWVhcjo6Tm9uZToKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIHJl
dHVybiBudWxscHRyOwogICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1
cm4gbnVsbHB0cjsKK30KIAotICAgIC8vIDUuIFJldHVybiBGb3JtYXREYXRlVGltZShkdGYsIHgp
LgorY29uc3QgY2hhciogSW50bERhdGVUaW1lRm9ybWF0Ojptb250aFN0cmluZyhNb250aCBtb250
aCkKK3sKKyAgICBzd2l0Y2ggKG1vbnRoKSB7CisgICAgY2FzZSBNb250aDo6VHdvRGlnaXQ6Cisg
ICAgICAgIHJldHVybiAiMi1kaWdpdCI7CisgICAgY2FzZSBNb250aDo6TnVtZXJpYzoKKyAgICAg
ICAgcmV0dXJuICJudW1lcmljIjsKKyAgICBjYXNlIE1vbnRoOjpOYXJyb3c6CisgICAgICAgIHJl
dHVybiAibmFycm93IjsKKyAgICBjYXNlIE1vbnRoOjpTaG9ydDoKKyAgICAgICAgcmV0dXJuICJz
aG9ydCI7CisgICAgY2FzZSBNb250aDo6TG9uZzoKKyAgICAgICAgcmV0dXJuICJsb25nIjsKKyAg
ICBjYXNlIE1vbnRoOjpOb25lOgorICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAg
IHJldHVybiBudWxscHRyOworfQogCitjb25zdCBjaGFyKiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmRh
eVN0cmluZyhEYXkgZGF5KQoreworICAgIHN3aXRjaCAoZGF5KSB7CisgICAgY2FzZSBEYXk6OlR3
b0RpZ2l0OgorICAgICAgICByZXR1cm4gIjItZGlnaXQiOworICAgIGNhc2UgRGF5OjpOdW1lcmlj
OgorICAgICAgICByZXR1cm4gIm51bWVyaWMiOworICAgIGNhc2UgRGF5OjpOb25lOgorICAgICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQor
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBudWxscHRyOworfQorCitjb25z
dCBjaGFyKiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmhvdXJTdHJpbmcoSG91ciBob3VyKQoreworICAg
IHN3aXRjaCAoaG91cikgeworICAgIGNhc2UgSG91cjo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVy
biAiMi1kaWdpdCI7CisgICAgY2FzZSBIb3VyOjpOdW1lcmljOgorICAgICAgICByZXR1cm4gIm51
bWVyaWMiOworICAgIGNhc2UgSG91cjo6Tm9uZToKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVE
KCk7CisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNI
RUQoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKworY29uc3QgY2hhciogSW50bERhdGVUaW1l
Rm9ybWF0OjptaW51dGVTdHJpbmcoTWludXRlIG1pbnV0ZSkKK3sKKyAgICBzd2l0Y2ggKG1pbnV0
ZSkgeworICAgIGNhc2UgTWludXRlOjpUd29EaWdpdDoKKyAgICAgICAgcmV0dXJuICIyLWRpZ2l0
IjsKKyAgICBjYXNlIE1pbnV0ZTo6TnVtZXJpYzoKKyAgICAgICAgcmV0dXJuICJudW1lcmljIjsK
KyAgICBjYXNlIE1pbnV0ZTo6Tm9uZToKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Cisg
ICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsK
KyAgICByZXR1cm4gbnVsbHB0cjsKK30KKworY29uc3QgY2hhciogSW50bERhdGVUaW1lRm9ybWF0
OjpzZWNvbmRTdHJpbmcoU2Vjb25kIHNlY29uZCkKK3sKKyAgICBzd2l0Y2ggKHNlY29uZCkgewor
ICAgIGNhc2UgU2Vjb25kOjpUd29EaWdpdDoKKyAgICAgICAgcmV0dXJuICIyLWRpZ2l0IjsKKyAg
ICBjYXNlIFNlY29uZDo6TnVtZXJpYzoKKyAgICAgICAgcmV0dXJuICJudW1lcmljIjsKKyAgICBj
YXNlIFNlY29uZDo6Tm9uZToKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAg
IHJldHVybiBudWxscHRyOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICBy
ZXR1cm4gbnVsbHB0cjsKK30KKworY29uc3QgY2hhciogSW50bERhdGVUaW1lRm9ybWF0Ojp0aW1l
Wm9uZU5hbWVTdHJpbmcoVGltZVpvbmVOYW1lIHRpbWVab25lTmFtZSkKK3sKKyAgICBzd2l0Y2gg
KHRpbWVab25lTmFtZSkgeworICAgIGNhc2UgVGltZVpvbmVOYW1lOjpTaG9ydDoKKyAgICAgICAg
cmV0dXJuICJzaG9ydCI7CisgICAgY2FzZSBUaW1lWm9uZU5hbWU6Okxvbmc6CisgICAgICAgIHJl
dHVybiAibG9uZyI7CisgICAgY2FzZSBUaW1lWm9uZU5hbWU6Ok5vbmU6CisgICAgICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisgICAgQVNT
RVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK0pTT2JqZWN0KiBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OnJlc29sdmVkT3B0aW9ucyhFeGVjU3RhdGUmIHN0YXRlKQorewor
ICAgIC8vIDEyLjMuNSBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlv
bnMoKSAoRUNNQS00MDIgMi4wKQorICAgIC8vIFRoZSBmdW5jdGlvbiByZXR1cm5zIGEgbmV3IG9i
amVjdCB3aG9zZSBwcm9wZXJ0aWVzIGFuZCBhdHRyaWJ1dGVzIGFyZSBzZXQgYXMgaWYgY29uc3Ry
dWN0ZWQgYnkgYW4gb2JqZWN0IGxpdGVyYWwgYXNzaWduaW5nIHRvIGVhY2ggb2YgdGhlIGZvbGxv
d2luZyBwcm9wZXJ0aWVzIHRoZSB2YWx1ZSBvZiB0aGUgY29ycmVzcG9uZGluZyBpbnRlcm5hbCBz
bG90IG9mIHRoaXMgRGF0ZVRpbWVGb3JtYXQgb2JqZWN0IChzZWUgMTIuNCk6IGxvY2FsZSwgY2Fs
ZW5kYXIsIG51bWJlcmluZ1N5c3RlbSwgdGltZVpvbmUsIGhvdXIxMiwgd2Vla2RheSwgZXJhLCB5
ZWFyLCBtb250aCwgZGF5LCBob3VyLCBtaW51dGUsIHNlY29uZCwgYW5kIHRpbWVab25lTmFtZS4g
UHJvcGVydGllcyB3aG9zZSBjb3JyZXNwb25kaW5nIGludGVybmFsIHNsb3RzIGFyZSBub3QgcHJl
c2VudCBhcmUgbm90IGFzc2lnbmVkLgorICAgIC8vIE5vdGU6IEluIHRoaXMgdmVyc2lvbiBvZiB0
aGUgRUNNQVNjcmlwdCAyMDE1IEludGVybmF0aW9uYWxpemF0aW9uIEFQSSwgdGhlIHRpbWVab25l
IHByb3BlcnR5IHdpbGwgYmUgdGhlIG5hbWUgb2YgdGhlIGRlZmF1bHQgdGltZSB6b25lIGlmIG5v
IHRpbWVab25lIHByb3BlcnR5IHdhcyBwcm92aWRlZCBpbiB0aGUgb3B0aW9ucyBvYmplY3QgcHJv
dmlkZWQgdG8gdGhlIEludGwuRGF0ZVRpbWVGb3JtYXQgY29uc3RydWN0b3IuIFRoZSBwcmV2aW91
cyB2ZXJzaW9uIGxlZnQgdGhlIHRpbWVab25lIHByb3BlcnR5IHVuZGVmaW5lZCBpbiB0aGlzIGNh
c2UuCisgICAgaWYgKCFtX2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQpIHsKKyAgICAgICAgaW5p
dGlhbGl6ZURhdGVUaW1lRm9ybWF0KHN0YXRlLCBqc1VuZGVmaW5lZCgpLCBqc1VuZGVmaW5lZCgp
KTsKKyAgICAgICAgQVNTRVJUKCFzdGF0ZS5oYWRFeGNlcHRpb24oKSk7CisgICAgfQorCisgICAg
Vk0mIHZtID0gc3RhdGUudm0oKTsKKyAgICBKU09iamVjdCogb3B0aW9ucyA9IGNvbnN0cnVjdEVt
cHR5T2JqZWN0KCZzdGF0ZSk7CisgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0
eU5hbWVzLT5sb2NhbGUsIGpzTm9udHJpdmlhbFN0cmluZygmc3RhdGUsIG1fbG9jYWxlKSk7Cisg
ICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5jYWxlbmRhciwganNO
b250cml2aWFsU3RyaW5nKCZzdGF0ZSwgbV9jYWxlbmRhcikpOworICAgIG9wdGlvbnMtPnB1dERp
cmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bnVtYmVyaW5nU3lzdGVtLCBqc05vbnRyaXZpYWxT
dHJpbmcoJnN0YXRlLCBtX251bWJlcmluZ1N5c3RlbSkpOworICAgIG9wdGlvbnMtPnB1dERpcmVj
dCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+dGltZVpvbmUsIGpzTm9udHJpdmlhbFN0cmluZygmc3Rh
dGUsIG1fdGltZVpvbmUpKTsKKworICAgIGlmIChtX3dlZWtkYXkgIT0gV2Vla2RheTo6Tm9uZSkK
KyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT53ZWVrZGF5
LCBqc05vbnRyaXZpYWxTdHJpbmcoJnN0YXRlLCBBU0NJSUxpdGVyYWwod2Vla2RheVN0cmluZyht
X3dlZWtkYXkpKSkpOworCisgICAgaWYgKG1fZXJhICE9IEVyYTo6Tm9uZSkKKyAgICAgICAgb3B0
aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5lcmEsIGpzTm9udHJpdmlhbFN0
cmluZygmc3RhdGUsIEFTQ0lJTGl0ZXJhbChlcmFTdHJpbmcobV9lcmEpKSkpOworCisgICAgaWYg
KG1feWVhciAhPSBZZWFyOjpOb25lKQorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZt
LnByb3BlcnR5TmFtZXMtPnllYXIsIGpzTm9udHJpdmlhbFN0cmluZygmc3RhdGUsIEFTQ0lJTGl0
ZXJhbCh5ZWFyU3RyaW5nKG1feWVhcikpKSk7CisKKyAgICBpZiAobV9tb250aCAhPSBNb250aDo6
Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5t
b250aCwganNOb250cml2aWFsU3RyaW5nKCZzdGF0ZSwgQVNDSUlMaXRlcmFsKG1vbnRoU3RyaW5n
KG1fbW9udGgpKSkpOworCisgICAgaWYgKG1fZGF5ICE9IERheTo6Tm9uZSkKKyAgICAgICAgb3B0
aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5kYXksIGpzTm9udHJpdmlhbFN0
cmluZygmc3RhdGUsIEFTQ0lJTGl0ZXJhbChkYXlTdHJpbmcobV9kYXkpKSkpOworCisgICAgaWYg
KG1faG91ciAhPSBIb3VyOjpOb25lKSB7CisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwg
dm0ucHJvcGVydHlOYW1lcy0+aG91ciwganNOb250cml2aWFsU3RyaW5nKCZzdGF0ZSwgQVNDSUlM
aXRlcmFsKGhvdXJTdHJpbmcobV9ob3VyKSkpKTsKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0
KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyMTIsIGpzQm9vbGVhbihtX2hvdXIxMikpOworICAg
IH0KKworICAgIGlmIChtX21pbnV0ZSAhPSBNaW51dGU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMt
PnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bWludXRlLCBqc05vbnRyaXZpYWxTdHJp
bmcoJnN0YXRlLCBBU0NJSUxpdGVyYWwobWludXRlU3RyaW5nKG1fbWludXRlKSkpKTsKKworICAg
IGlmIChtX3NlY29uZCAhPSBTZWNvbmQ6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVj
dCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+c2Vjb25kLCBqc05vbnRyaXZpYWxTdHJpbmcoJnN0YXRl
LCBBU0NJSUxpdGVyYWwoc2Vjb25kU3RyaW5nKG1fc2Vjb25kKSkpKTsKKworICAgIGlmIChtX3Rp
bWVab25lTmFtZSAhPSBUaW1lWm9uZU5hbWU6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERp
cmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+dGltZVpvbmVOYW1lLCBqc05vbnRyaXZpYWxTdHJp
bmcoJnN0YXRlLCBBU0NJSUxpdGVyYWwodGltZVpvbmVOYW1lU3RyaW5nKG1fdGltZVpvbmVOYW1l
KSkpKTsKKworICAgIHJldHVybiBvcHRpb25zOworfQorCitKU1ZhbHVlIEludGxEYXRlVGltZUZv
cm1hdDo6Zm9ybWF0KEV4ZWNTdGF0ZSYgc3RhdGUsIGRvdWJsZSB2YWx1ZSkKK3sKICAgICAvLyAx
Mi4zLjQgRm9ybWF0RGF0ZVRpbWUgYWJzdHJhY3Qgb3BlcmF0aW9uIChFQ01BLTQwMiAyLjApCisg
ICAgaWYgKCFtX2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQpIHsKKyAgICAgICAgaW5pdGlhbGl6
ZURhdGVUaW1lRm9ybWF0KHN0YXRlLCBqc1VuZGVmaW5lZCgpLCBqc1VuZGVmaW5lZCgpKTsKKyAg
ICAgICAgQVNTRVJUKCFzdGF0ZS5oYWRFeGNlcHRpb24oKSk7CisgICAgfQogCiAgICAgLy8gMS4g
SWYgeCBpcyBub3QgYSBmaW5pdGUgTnVtYmVyLCB0aGVuIHRocm93IGEgUmFuZ2VFcnJvciBleGNl
cHRpb24uCiAgICAgaWYgKCFzdGQ6OmlzZmluaXRlKHZhbHVlKSkKLSAgICAgICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZSh0aHJvd1JhbmdlRXJyb3Ioc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiZGF0ZSB2
YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1lRm9ybWF0LmZvcm1hdCgpIikpKTsKKyAgICAg
ICAgcmV0dXJuIHRocm93UmFuZ2VFcnJvcigmc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiZGF0ZSB2YWx1
ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1lRm9ybWF0IGZvcm1hdCgpIikpOwogCiAgICAgLy8g
RklYTUU6IGltcGxlbWVudCAyIC0gOQogCiAgICAgLy8gUmV0dXJuIG5ldyBEYXRlKHZhbHVlKS50
b1N0cmluZygpIHVudGlsIHByb3Blcmx5IGltcGxlbWVudGVkLgotICAgIFZNJiB2bSA9IHN0YXRl
LT52bSgpOwotICAgIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QgPSBzdGF0ZS0+Y2FsbGVl
KCktPmdsb2JhbE9iamVjdCgpOworICAgIFZNJiB2bSA9IHN0YXRlLnZtKCk7CisgICAgSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IHN0YXRlLmNhbGxlZSgpLT5nbG9iYWxPYmplY3QoKTsK
ICAgICBEYXRlSW5zdGFuY2UqIGQgPSBEYXRlSW5zdGFuY2U6OmNyZWF0ZSh2bSwgZ2xvYmFsT2Jq
ZWN0LT5kYXRlU3RydWN0dXJlKCksIHZhbHVlKTsKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2Rl
KEpTVmFsdWUoZCkudG9TdHJpbmcoc3RhdGUpKTsKKyAgICByZXR1cm4gSlNWYWx1ZShkKS50b1N0
cmluZygmc3RhdGUpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5oIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmgKaW5kZXggN2RhZWQxMzhm
YjA4ZGNmYTNiZTY3ZDM3YzgzYTQ3ZGI0YWFiY2JkNy4uZjAxOThlZjRjZjA4MDdiY2QyNDJkZjAy
NGQ5NzBjYjA0ODNhOWE1OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bERhdGVUaW1lRm9ybWF0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bERhdGVUaW1lRm9ybWF0LmgKQEAgLTQ0LDYgKzQ0LDEwIEBAIHB1YmxpYzoKIAogICAg
IERFQ0xBUkVfSU5GTzsKIAorICAgIHZvaWQgaW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KEV4ZWNT
dGF0ZSYsIEpTVmFsdWUgbG9jYWxlcywgSlNWYWx1ZSBvcHRpb25zKTsKKyAgICBKU1ZhbHVlIGZv
cm1hdChFeGVjU3RhdGUmLCBkb3VibGUgdmFsdWUpOworICAgIEpTT2JqZWN0KiByZXNvbHZlZE9w
dGlvbnMoRXhlY1N0YXRlJik7CisKICAgICBKU0JvdW5kRnVuY3Rpb24qIGJvdW5kRm9ybWF0KCkg
Y29uc3QgeyByZXR1cm4gbV9ib3VuZEZvcm1hdC5nZXQoKTsgfQogICAgIHZvaWQgc2V0Qm91bmRG
b3JtYXQoVk0mLCBKU0JvdW5kRnVuY3Rpb24qKTsKIApAQCAtNTMsMTAgKzU3LDQ2IEBAIHByb3Rl
Y3RlZDoKICAgICBzdGF0aWMgdm9pZCBkZXN0cm95KEpTQ2VsbCopOwogICAgIHN0YXRpYyB2b2lk
IHZpc2l0Q2hpbGRyZW4oSlNDZWxsKiwgU2xvdFZpc2l0b3ImKTsKIAorcHJpdmF0ZToKKyAgICBl
bnVtIGNsYXNzIFdlZWtkYXkgeyBOb25lLCBOYXJyb3csIFNob3J0LCBMb25nIH07CisgICAgZW51
bSBjbGFzcyBFcmEgeyBOb25lLCBOYXJyb3csIFNob3J0LCBMb25nIH07CisgICAgZW51bSBjbGFz
cyBZZWFyIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMgfTsKKyAgICBlbnVtIGNsYXNzIE1vbnRo
IHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMsIE5hcnJvdywgU2hvcnQsIExvbmcgfTsKKyAgICBl
bnVtIGNsYXNzIERheSB7IE5vbmUsIFR3b0RpZ2l0LCBOdW1lcmljIH07CisgICAgZW51bSBjbGFz
cyBIb3VyIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMgfTsKKyAgICBlbnVtIGNsYXNzIE1pbnV0
ZSB7IE5vbmUsIFR3b0RpZ2l0LCBOdW1lcmljIH07CisgICAgZW51bSBjbGFzcyBTZWNvbmQgeyBO
b25lLCBUd29EaWdpdCwgTnVtZXJpYyB9OworICAgIGVudW0gY2xhc3MgVGltZVpvbmVOYW1lIHsg
Tm9uZSwgU2hvcnQsIExvbmcgfTsKKworICAgIHN0YXRpYyBjb25zdCBjaGFyKiB3ZWVrZGF5U3Ry
aW5nKFdlZWtkYXkpOworICAgIHN0YXRpYyBjb25zdCBjaGFyKiBlcmFTdHJpbmcoRXJhKTsKKyAg
ICBzdGF0aWMgY29uc3QgY2hhciogeWVhclN0cmluZyhZZWFyKTsKKyAgICBzdGF0aWMgY29uc3Qg
Y2hhciogbW9udGhTdHJpbmcoTW9udGgpOworICAgIHN0YXRpYyBjb25zdCBjaGFyKiBkYXlTdHJp
bmcoRGF5KTsKKyAgICBzdGF0aWMgY29uc3QgY2hhciogaG91clN0cmluZyhIb3VyKTsKKyAgICBz
dGF0aWMgY29uc3QgY2hhciogbWludXRlU3RyaW5nKE1pbnV0ZSk7CisgICAgc3RhdGljIGNvbnN0
IGNoYXIqIHNlY29uZFN0cmluZyhTZWNvbmQpOworICAgIHN0YXRpYyBjb25zdCBjaGFyKiB0aW1l
Wm9uZU5hbWVTdHJpbmcoVGltZVpvbmVOYW1lKTsKKworICAgIGJvb2wgbV9pbml0aWFsaXplZERh
dGVUaW1lRm9ybWF0IHsgZmFsc2UgfTsKKyAgICB2b2lkIHNldEZvcm1hdHNGcm9tUGF0dGVybihj
b25zdCBTdHJpbmdWaWV3Jik7CiAgICAgV3JpdGVCYXJyaWVyPEpTQm91bmRGdW5jdGlvbj4gbV9i
b3VuZEZvcm1hdDsKKworICAgIFN0cmluZyBtX2xvY2FsZSB7IEFTQ0lJTGl0ZXJhbCgiZW4iKSB9
OworICAgIFN0cmluZyBtX2NhbGVuZGFyIHsgQVNDSUlMaXRlcmFsKCJncmVnb3JpYW4iKSB9Owor
ICAgIFN0cmluZyBtX251bWJlcmluZ1N5c3RlbSB7IEFTQ0lJTGl0ZXJhbCgibGF0biIpIH07Cisg
ICAgU3RyaW5nIG1fdGltZVpvbmUgeyBBU0NJSUxpdGVyYWwoIlVUQyIpIH07CisgICAgYm9vbCBt
X2hvdXIxMiB7IHRydWUgfTsKKyAgICBXZWVrZGF5IG1fd2Vla2RheSB7IFdlZWtkYXk6Ok5vbmUg
fTsKKyAgICBFcmEgbV9lcmEgeyBFcmE6Ok5vbmUgfTsKKyAgICBZZWFyIG1feWVhciB7IFllYXI6
Ok5vbmUgfTsKKyAgICBNb250aCBtX21vbnRoIHsgTW9udGg6Ok5vbmUgfTsKKyAgICBEYXkgbV9k
YXkgeyBEYXk6Ok5vbmUgfTsKKyAgICBIb3VyIG1faG91ciB7IEhvdXI6Ok5vbmUgfTsKKyAgICBN
aW51dGUgbV9taW51dGUgeyBNaW51dGU6Ok5vbmUgfTsKKyAgICBTZWNvbmQgbV9zZWNvbmQgeyBT
ZWNvbmQ6Ok5vbmUgfTsKKyAgICBUaW1lWm9uZU5hbWUgbV90aW1lWm9uZU5hbWUgeyBUaW1lWm9u
ZU5hbWU6Ok5vbmUgfTsKIH07Ci0gICAgCi1FbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIElu
dGxEYXRlVGltZUZvcm1hdEZ1bmNGb3JtYXREYXRlVGltZShFeGVjU3RhdGUqKTsKIAogfSAvLyBu
YW1lc3BhY2UgSlNDCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAppbmRleCAxZTg5ZmFh
YWI3ZWI4OGM3Zjg2NGUwZjUzZjI1NWNiOGEyYzVlZWNjLi42YTdjMmU0YWZhMzc0ZDc3ZmU1ZmIw
YmUyYzdjN2NiNTQzMDc3NGFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCkBAIC0x
MDQsOCArMTA0LDkgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3Ry
dWN0SW50bERhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSogc3RhdGUKICAgICBBU1NFUlQoZGF0ZVRp
bWVGb3JtYXQpOwogCiAgICAgLy8gNC4gUmV0dXJuIEluaXRpYWxpemVEYXRlVGltZUZvcm1hdChk
YXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykuCi0gICAgLy8gRklYTUU6IHJldHVybiBK
U1ZhbHVlOjplbmNvZGUoSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KGRhdGVUaW1lRm9ybWF0LCBs
b2NhbGVzLCBvcHRpb25zKSk7Ci0KKyAgICBKU1ZhbHVlIGxvY2FsZXMgPSBzdGF0ZS0+YXJndW1l
bnQoMCk7CisgICAgSlNWYWx1ZSBvcHRpb25zID0gc3RhdGUtPmFyZ3VtZW50KDEpOworICAgIGRh
dGVUaW1lRm9ybWF0LT5pbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoKnN0YXRlLCBsb2NhbGVzLCBv
cHRpb25zKTsKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGRhdGVUaW1lRm9ybWF0KTsKIH0K
IApAQCAtMTIzLDggKzEyNCw5IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGNhbGxJbnRsRGF0ZVRpbWVGb3JtYXQoRXhlY1N0YXRlKiBzdGF0ZSkKICAgICBBU1NFUlQoZGF0
ZVRpbWVGb3JtYXQpOwogCiAgICAgLy8gNC4gUmV0dXJuIEluaXRpYWxpemVEYXRlVGltZUZvcm1h
dChkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucykuCi0gICAgLy8gRklYTUU6IHJldHVy
biBKU1ZhbHVlOjplbmNvZGUoSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KGRhdGVUaW1lRm9ybWF0
LCBsb2NhbGVzLCBvcHRpb25zKSk7Ci0KKyAgICBKU1ZhbHVlIGxvY2FsZXMgPSBzdGF0ZS0+YXJn
dW1lbnQoMCk7CisgICAgSlNWYWx1ZSBvcHRpb25zID0gc3RhdGUtPmFyZ3VtZW50KDEpOworICAg
IGRhdGVUaW1lRm9ybWF0LT5pbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoKnN0YXRlLCBsb2NhbGVz
LCBvcHRpb25zKTsKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGRhdGVUaW1lRm9ybWF0KTsK
IH0KIApAQCAtMTYxLDcgKzE2Myw3IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50
bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3JGdW5jU3VwcG9ydGVkTG9jYWxlc09mCiAgICAgLy8g
My4gUmV0dXJuIFN1cHBvcnRlZExvY2FsZXMoYXZhaWxhYmxlTG9jYWxlcywgcmVxdWVzdGVkTG9j
YWxlcywgb3B0aW9ucykuCiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShzdXBwb3J0ZWRMb2Nh
bGVzKCpzdGF0ZSwgYXZhaWxhYmxlTG9jYWxlcywgcmVxdWVzdGVkTG9jYWxlcywgc3RhdGUtPmFy
Z3VtZW50KDEpKSk7CiB9Ci0gICAgCisKIHZvaWQgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0
b3I6OnZpc2l0Q2hpbGRyZW4oSlNDZWxsKiBjZWxsLCBTbG90VmlzaXRvciYgdmlzaXRvcikKIHsK
ICAgICBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvciogdGhpc09iamVjdCA9IGpzQ2FzdDxJ
bnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcio+KGNlbGwpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlw
ZS5jcHAKaW5kZXggZDVlNTI1OTgyNDgwYjFlZDQ5MWU2YjdiOGZiMTJiYjhhZjFhZWU3ZC4uZmY0
OGVjNDU1ZGFkMTQ1NTFjYmIxZDIzM2U3ZWIyYjgwYzA3ZTJhYSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90
b3R5cGUuY3BwCkBAIC0yOCwxOSArMjgsMTggQEAKIAogI2lmIEVOQUJMRShJTlRMKQogCisjaW5j
bHVkZSAiRGF0ZUNvbnN0cnVjdG9yLmgiCiAjaW5jbHVkZSAiRXJyb3IuaCIKICNpbmNsdWRlICJJ
bnRsRGF0ZVRpbWVGb3JtYXQuaCIKKyNpbmNsdWRlICJJbnRsT2JqZWN0LmgiCiAjaW5jbHVkZSAi
SlNCb3VuZEZ1bmN0aW9uLmgiCiAjaW5jbHVkZSAiSlNDSlNWYWx1ZUlubGluZXMuaCIKICNpbmNs
dWRlICJKU0NlbGxJbmxpbmVzLmgiCiAjaW5jbHVkZSAiSlNPYmplY3QuaCIKLSNpbmNsdWRlICJP
YmplY3RDb25zdHJ1Y3Rvci5oIgogI2luY2x1ZGUgIlN0cnVjdHVyZUlubGluZXMuaCIKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLVNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShJ
bnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUpOwotCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0
YXRlKik7CiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVG
b3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKEV4ZWNTdGF0ZSopOwogCkBAIC04Niw2
ICs4NSwzMyBAQCBib29sIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6Z2V0T3duUHJvcGVy
dHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZQogICAgIHJldHVybiBnZXRTdGF0aWNG
dW5jdGlvblNsb3Q8SlNPYmplY3Q+KHN0YXRlLCBkYXRlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxl
LCBqc0Nhc3Q8SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlO
YW1lLCBzbG90KTsKIH0KIAorc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50
bERhdGVUaW1lRm9ybWF0RnVuY0Zvcm1hdERhdGVUaW1lKEV4ZWNTdGF0ZSogc3RhdGUpCit7Cisg
ICAgLy8gMTIuMy40IERhdGVUaW1lIEZvcm1hdCBGdW5jdGlvbnMgKEVDTUEtNDAyIDIuMCkKKyAg
ICAvLyAxLiBMZXQgZHRmIGJlIHRoZSB0aGlzIHZhbHVlLgorICAgIC8vIDIuIEFzc2VydDogVHlw
ZShkdGYpIGlzIE9iamVjdCBhbmQgZHRmIGhhcyBhbiBbW2luaXRpYWxpemVkRGF0ZVRpbWVGb3Jt
YXRdXSBpbnRlcm5hbCBzbG90IHdob3NlIHZhbHVlIGlzIHRydWUuCisgICAgSW50bERhdGVUaW1l
Rm9ybWF0KiBmb3JtYXQgPSBqc0Nhc3Q8SW50bERhdGVUaW1lRm9ybWF0Kj4oc3RhdGUtPnRoaXNW
YWx1ZSgpKTsKKworICAgIEpTVmFsdWUgZGF0ZSA9IHN0YXRlLT5hcmd1bWVudCgwKTsKKyAgICBk
b3VibGUgdmFsdWU7CisKKyAgICAvLyAzLiBJZiBkYXRlIGlzIG5vdCBwcm92aWRlZCBvciBpcyB1
bmRlZmluZWQsIHRoZW4KKyAgICBpZiAoZGF0ZS5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIC8v
IGEuIExldCB4IGJlICVEYXRlX25vdyUoKS4KKyAgICAgICAgdmFsdWUgPSBKU1ZhbHVlOjpkZWNv
ZGUoZGF0ZU5vdyhzdGF0ZSkpLnRvTnVtYmVyKHN0YXRlKTsKKyAgICB9IGVsc2UgeworICAgICAg
ICAvLyA0LiBFbHNlCisgICAgICAgIC8vIGEuIExldCB4IGJlIFRvTnVtYmVyKGRhdGUpLgorICAg
ICAgICB2YWx1ZSA9IGRhdGUudG9OdW1iZXIoc3RhdGUpOworICAgICAgICAvLyBiLiBSZXR1cm5J
ZkFicnVwdCh4KS4KKyAgICAgICAgaWYgKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAg
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRlZmluZWQoKSk7CisgICAgfQorCisgICAg
Ly8gNS4gUmV0dXJuIEZvcm1hdERhdGVUaW1lKGR0ZiwgeCkuCisgICAgcmV0dXJuIEpTVmFsdWU6
OmVuY29kZShmb3JtYXQtPmZvcm1hdCgqc3RhdGUsIHZhbHVlKSk7Cit9CisKIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlR2V0dGVyRm9ybWF0
KEV4ZWNTdGF0ZSogc3RhdGUpCiB7CiAgICAgLy8gMTIuMy4zIEludGwuRGF0ZVRpbWVGb3JtYXQu
cHJvdG90eXBlLmZvcm1hdCAoRUNNQS00MDIgMi4wKQpAQCAtOTQsNyArMTIwLDcgQEAgRW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJG
b3JtYXQoRXhlY1N0YXRlKgogICAgIC8vIDIuIFJldHVybklmQWJydXB0KGR0ZikuCiAgICAgaWYg
KCFkdGYpCiAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3Ioc3Rh
dGUsIEFTQ0lJTGl0ZXJhbCgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0IGNh
bGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVU
aW1lRm9ybWF0IikpKTsKLSAgICAKKwogICAgIEpTQm91bmRGdW5jdGlvbiogYm91bmRGb3JtYXQg
PSBkdGYtPmJvdW5kRm9ybWF0KCk7CiAgICAgLy8gMy4gSWYgdGhlIFtbYm91bmRGb3JtYXRdXSBp
bnRlcm5hbCBzbG90IG9mIHRoaXMgRGF0ZVRpbWVGb3JtYXQgb2JqZWN0IGlzIHVuZGVmaW5lZCwK
ICAgICBpZiAoIWJvdW5kRm9ybWF0KSB7CkBAIC0xMDYsNyArMTMyLDcgQEAgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQo
RXhlY1N0YXRlKgogICAgICAgICBKU0FycmF5KiBib3VuZEFyZ3MgPSBKU0FycmF5Ojp0cnlDcmVh
dGVVbmluaXRpYWxpemVkKHZtLCBnbG9iYWxPYmplY3QtPmFycmF5U3RydWN0dXJlRm9ySW5kZXhp
bmdUeXBlRHVyaW5nQWxsb2NhdGlvbihBcnJheVdpdGhVbmRlY2lkZWQpLCAwKTsKICAgICAgICAg
aWYgKCFib3VuZEFyZ3MpCiAgICAgICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93
T3V0T2ZNZW1vcnlFcnJvcihzdGF0ZSkpOwotICAgICAgICAKKwogICAgICAgICAvLyBjLiBMZXQg
YmYgYmUgQm91bmRGdW5jdGlvbkNyZWF0ZShGLCDCq3RoaXMgdmFsdWXCuykuCiAgICAgICAgIGJv
dW5kRm9ybWF0ID0gSlNCb3VuZEZ1bmN0aW9uOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgdGFy
Z2V0T2JqZWN0LCBkdGYsIGJvdW5kQXJncywgMSwgQVNDSUlMaXRlcmFsKCJmb3JtYXQiKSk7CiAg
ICAgICAgIC8vIGQuIFNldCBkdGYuW1tib3VuZEZvcm1hdF1dIHRvIGJmLgpAQCAtMTE5LDE4ICsx
NDUsMTEgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQ
cm90b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0YXRlKgogRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1Rf
Q0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKEV4ZWNT
dGF0ZSogc3RhdGUpCiB7CiAgICAgLy8gMTIuMy41IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90
eXBlLnJlc29sdmVkT3B0aW9ucygpIChFQ01BLTQwMiAyLjApCi0gICAgSW50bERhdGVUaW1lRm9y
bWF0KiBkdGYgPSBqc0R5bmFtaWNDYXN0PEludGxEYXRlVGltZUZvcm1hdCo+KHN0YXRlLT50aGlz
VmFsdWUoKSk7Ci0gICAgaWYgKCFkdGYpCisgICAgSW50bERhdGVUaW1lRm9ybWF0KiBkYXRlVGlt
ZUZvcm1hdCA9IGpzRHluYW1pY0Nhc3Q8SW50bERhdGVUaW1lRm9ybWF0Kj4oc3RhdGUtPnRoaXNW
YWx1ZSgpKTsKKyAgICBpZiAoIWRhdGVUaW1lRm9ybWF0KQogICAgICAgICByZXR1cm4gSlNWYWx1
ZTo6ZW5jb2RlKHRocm93VHlwZUVycm9yKHN0YXRlLCBBU0NJSUxpdGVyYWwoIkludGwuRGF0ZVRp
bWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdCdz
IG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdCIpKSk7CiAKLSAg
ICAvLyBUaGUgZnVuY3Rpb24gcmV0dXJucyBhIG5ldyBvYmplY3Qgd2hvc2UgcHJvcGVydGllcyBh
bmQgYXR0cmlidXRlcyBhcmUgc2V0IGFzIGlmIGNvbnN0cnVjdGVkIGJ5IGFuIG9iamVjdCBsaXRl
cmFsIGFzc2lnbmluZyB0byBlYWNoIG9mIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllcyB0aGUgdmFs
dWUgb2YgdGhlIGNvcnJlc3BvbmRpbmcgaW50ZXJuYWwgc2xvdCBvZiB0aGlzIERhdGVUaW1lRm9y
bWF0IG9iamVjdCAoc2VlIDEyLjQpOiBsb2NhbGUsIGNhbGVuZGFyLCBudW1iZXJpbmdTeXN0ZW0s
IHRpbWVab25lLCBob3VyMTIsIHdlZWtkYXksIGVyYSwgeWVhciwgbW9udGgsIGRheSwgaG91ciwg
bWludXRlLCBzZWNvbmQsIGFuZCB0aW1lWm9uZU5hbWUuIFByb3BlcnRpZXMgd2hvc2UgY29ycmVz
cG9uZGluZyBpbnRlcm5hbCBzbG90cyBhcmUgbm90IHByZXNlbnQgYXJlIG5vdCBhc3NpZ25lZC4K
LSAgICAvLyBOb3RlOiBJbiB0aGlzIHZlcnNpb24gb2YgdGhlIEVDTUFTY3JpcHQgMjAxNSBJbnRl
cm5hdGlvbmFsaXphdGlvbiBBUEksIHRoZSB0aW1lWm9uZSBwcm9wZXJ0eSB3aWxsIGJlIHRoZSBu
YW1lIG9mIHRoZSBkZWZhdWx0IHRpbWUgem9uZSBpZiBubyB0aW1lWm9uZSBwcm9wZXJ0eSB3YXMg
cHJvdmlkZWQgaW4gdGhlIG9wdGlvbnMgb2JqZWN0IHByb3ZpZGVkIHRvIHRoZSBJbnRsLkRhdGVU
aW1lRm9ybWF0IGNvbnN0cnVjdG9yLiBUaGUgcHJldmlvdXMgdmVyc2lvbiBsZWZ0IHRoZSB0aW1l
Wm9uZSBwcm9wZXJ0eSB1bmRlZmluZWQgaW4gdGhpcyBjYXNlLgotCi0gICAgSlNPYmplY3QqIG9w
dGlvbnMgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdChzdGF0ZSk7Ci0KLSAgICAvLyBGSVhNRTogUG9w
dWxhdGUgb2JqZWN0IGZyb20gaW50ZXJuYWwgc2xvdHMuCi0KLSAgICByZXR1cm4gSlNWYWx1ZTo6
ZW5jb2RlKG9wdGlvbnMpOworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoZGF0ZVRpbWVGb3Jt
YXQtPnJlc29sdmVkT3B0aW9ucygqc3RhdGUpKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuY3BwCmluZGV4IGNkOTA2
ODYzYjE5ZGQzY2I3NDI3OTlmNDJkODQyYzc0MTE0ODczYmEuLmMxNDdlOTA4NGNhNGRmNzVlODkx
MmI0MGNkYjdiYWNmNzM5ZDFmNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxPYmplY3QuY3BwCkBAIC00NSw2ICs0NSw3IEBACiAjaW5jbHVkZSAiTG9va3VwLmgiCiAj
aW5jbHVkZSAiT2JqZWN0UHJvdG90eXBlLmgiCiAjaW5jbHVkZSA8dW5pY29kZS91bG9jLmg+Cisj
aW5jbHVkZSA8dW5pY29kZS91bnVtc3lzLmg+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4K
IAogbmFtZXNwYWNlIEpTQyB7CkBAIC03NTEsNiArNzUyLDcgQEAgSGFzaE1hcDxTdHJpbmcsIFN0
cmluZz4gcmVzb2x2ZUxvY2FsZShjb25zdCBIYXNoU2V0PFN0cmluZz4mIGF2YWlsYWJsZUxvY2Fs
ZXMsIGMKICAgICAgICAgICAgIHNpemVfdCBrZXlQb3MgPSBleHRlbnNpb25TdWJ0YWdzLmZpbmQo
a2V5KTsKICAgICAgICAgICAgIC8vIGlpLiBJZiBrZXlQb3MgIT0gLTEsIHRoZW4KICAgICAgICAg
ICAgIGlmIChrZXlQb3MgIT0gbm90Rm91bmQpIHsKKyAgICAgICAgICAgICAgICAvLyBGSVhNRTog
aHR0cHM6Ly9naXRodWIuY29tL3RjMzkvZWNtYTQwMi9pc3N1ZXMvNTkKICAgICAgICAgICAgICAg
ICAvLyAxLiBJZiBrZXlQb3MgKyAxIDwgZXh0ZW5zaW9uU3VidGFnc0xlbmd0aCBhbmQgdGhlIGxl
bmd0aCBvZiB0aGUgcmVzdWx0IG9mIEdldChleHRlbnNpb25TdWJ0YWdzLCBUb1N0cmluZyhrZXlQ
b3MgKzEpKSBpcyBncmVhdGVyIHRoYW4gMiwgdGhlbgogICAgICAgICAgICAgICAgIGlmIChrZXlQ
b3MgKyAxIDwgZXh0ZW5zaW9uU3VidGFncy5zaXplKCkgJiYgZXh0ZW5zaW9uU3VidGFnc1trZXlQ
b3MgKyAxXS5sZW5ndGgoKSA+IDIpIHsKICAgICAgICAgICAgICAgICAgICAgY29uc3QgU3RyaW5n
JiByZXF1ZXN0ZWRWYWx1ZSA9IGV4dGVuc2lvblN1YnRhZ3Nba2V5UG9zICsgMV07CkBAIC05MjEs
NiArOTIzLDc0IEBAIEpTVmFsdWUgc3VwcG9ydGVkTG9jYWxlcyhFeGVjU3RhdGUmIHN0YXRlLCBj
b25zdCBIYXNoU2V0PFN0cmluZz4mIGF2YWlsYWJsZUxvY2FsCiAgICAgcmV0dXJuIHN1cHBvcnRl
ZExvY2FsZXM7CiB9CiAKK1ZlY3RvcjxTdHJpbmc+IGdldE51bWJlcmluZ1N5c3RlbXNGb3JMb2Nh
bGUoY29uc3QgU3RyaW5nJiBsb2NhbGUpCit7CisgICAgLy8gdW51bXN5c19vcGVuQXZhaWxhYmxl
TmFtZXMgYXBwZWFycyB0byBvbmx5IGJlIGFibGUgdXNhYmxlIG9uY2UgcGVyIHByb2Nlc3MsIHNv
IHVzZSBzdGF0aWMgbGlzdCBpbnN0ZWFkLgorICAgIFVFcnJvckNvZGUgc3RhdHVzKFVfWkVST19F
UlJPUik7CisgICAgVU51bWJlcmluZ1N5c3RlbSogZGVmYXVsdFN5c3RlbSA9IHVudW1zeXNfb3Bl
bihsb2NhbGUudXRmOCgpLmRhdGEoKSwgJnN0YXR1cyk7CisgICAgQVNTRVJUKFVfU1VDQ0VTUyhz
dGF0dXMpKTsKKyAgICBTdHJpbmcgZGVmYXVsdFN5c3RlbU5hbWUodW51bXN5c19nZXROYW1lKGRl
ZmF1bHRTeXN0ZW0pKTsKKyAgICB1bnVtc3lzX2Nsb3NlKGRlZmF1bHRTeXN0ZW0pOworCisgICAg
VmVjdG9yPFN0cmluZz4gbnVtYmVyaW5nU3lzdGVtcyh7CisgICAgICAgIGRlZmF1bHRTeXN0ZW1O
YW1lLAorICAgICAgICBBU0NJSUxpdGVyYWwoImFyYWIiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFs
KCJhcmFiZXh0IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiYXJtbiIpLAorICAgICAgICBBU0NJ
SUxpdGVyYWwoImFybW5sb3ciKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJiYWxpIiksCisgICAg
ICAgIEFTQ0lJTGl0ZXJhbCgiYmVuZyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImNoYW0iKSwK
KyAgICAgICAgQVNDSUlMaXRlcmFsKCJkZXZhIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiZXRo
aSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImZ1bGx3aWRlIiksCisgICAgICAgIEFTQ0lJTGl0
ZXJhbCgiZ2VvciIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImdyZWsiKSwKKyAgICAgICAgQVND
SUlMaXRlcmFsKCJncmVrbG93IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiZ3VqciIpLAorICAg
ICAgICBBU0NJSUxpdGVyYWwoImd1cnUiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJoYW5pZGF5
cyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbmlkZWMiKSwKKyAgICAgICAgQVNDSUlMaXRl
cmFsKCJoYW5zIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaGFuc2ZpbiIpLAorICAgICAgICBB
U0NJSUxpdGVyYWwoImhhbnQiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJoYW50ZmluIiksCisg
ICAgICAgIEFTQ0lJTGl0ZXJhbCgiaGViciIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImphdmEi
KSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJqcGFuIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgi
anBhbmZpbiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImthbGkiKSwKKyAgICAgICAgQVNDSUlM
aXRlcmFsKCJraG1yIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgia25kYSIpLAorICAgICAgICBB
U0NJSUxpdGVyYWwoImxhbmEiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJsYW5hdGhhbSIpLAor
ICAgICAgICBBU0NJSUxpdGVyYWwoImxhb28iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJsYXRu
IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibGVwYyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwo
ImxpbWIiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJtbHltIiksCisgICAgICAgIEFTQ0lJTGl0
ZXJhbCgibW9uZyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoIm10ZWkiKSwKKyAgICAgICAgQVND
SUlMaXRlcmFsKCJteW1yIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibXltcnNoYW4iKSwKKyAg
ICAgICAgQVNDSUlMaXRlcmFsKCJua29vIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgib2xjayIp
LAorICAgICAgICBBU0NJSUxpdGVyYWwoIm9yeWEiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJy
b21hbiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInJvbWFubG93IiksCisgICAgICAgIEFTQ0lJ
TGl0ZXJhbCgic2F1ciIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInN1bmQiKSwKKyAgICAgICAg
QVNDSUlMaXRlcmFsKCJ0YWx1IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgidGFtbCIpLAorICAg
ICAgICBBU0NJSUxpdGVyYWwoInRhbWxkZWMiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJ0ZWx1
IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgidGhhaSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwo
InRpYnQiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJ2YWlpIiksCisgICAgfSk7CisgICAgcmV0
dXJuIG51bWJlcmluZ1N5c3RlbXM7Cit9CisKIH0gLy8gbmFtZXNwYWNlIEpTQwogCiAjZW5kaWYg
Ly8gRU5BQkxFKElOVEwpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0
LmgKaW5kZXggMzE4OTk4Mjc0ZjAwZTk5MTA4NmFkZGZjNjMxMGM5YmM5ZDI2NDUxZC4uMjk2YTkw
YWY2MzhmMDg0N2VkMjk5YjhlODRiYjE2NmEwNjliODk5YSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaApAQCAtNjQsOCArNjQsOSBAQCBTdHJpbmcgaW50bFN0
cmluZ09wdGlvbihFeGVjU3RhdGUmLCBKU1ZhbHVlIG9wdGlvbnMsIFByb3BlcnR5TmFtZSwgc3Rk
Ojppbml0aWFsaQogVmVjdG9yPFN0cmluZz4gY2Fub25pY2FsaXplTG9jYWxlTGlzdChFeGVjU3Rh
dGUmLCBKU1ZhbHVlIGxvY2FsZXMpOwogSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4gcmVzb2x2ZUxv
Y2FsZShjb25zdCBIYXNoU2V0PFN0cmluZz4mIGF2YWlsYWJsZUxvY2FsZXMsIGNvbnN0IFZlY3Rv
cjxTdHJpbmc+JiByZXF1ZXN0ZWRMb2NhbGVzLCBjb25zdCBIYXNoTWFwPFN0cmluZywgU3RyaW5n
PiYgb3B0aW9ucywgY29uc3QgY2hhciogY29uc3QgcmVsZXZhbnRFeHRlbnNpb25LZXlzW10sIHNp
emVfdCByZWxldmFudEV4dGVuc2lvbktleUNvdW50LCBWZWN0b3I8U3RyaW5nPiAoKmxvY2FsZURh
dGEpKGNvbnN0IFN0cmluZyYsIHNpemVfdCkpOwogSlNWYWx1ZSBzdXBwb3J0ZWRMb2NhbGVzKEV4
ZWNTdGF0ZSYsIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiYgYXZhaWxhYmxlTG9jYWxlcywgY29uc3Qg
VmVjdG9yPFN0cmluZz4mIHJlcXVlc3RlZExvY2FsZXMsIEpTVmFsdWUgb3B0aW9ucyk7Ci1TdHJp
bmcgcmVtb3ZlVW5pY29kZUxvY2FsZUV4dGVuc2lvbihjb25zdCBTdHJpbmcmKTsKLVN0cmluZyBi
ZXN0QXZhaWxhYmxlTG9jYWxlKGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYp
OworU3RyaW5nIHJlbW92ZVVuaWNvZGVMb2NhbGVFeHRlbnNpb24oY29uc3QgU3RyaW5nJiBsb2Nh
bGUpOworU3RyaW5nIGJlc3RBdmFpbGFibGVMb2NhbGUoY29uc3QgSGFzaFNldDxTdHJpbmc+JiBh
dmFpbGFibGVMb2NhbGVzLCBjb25zdCBTdHJpbmcmIHJlcXVlc3RlZExvY2FsZSk7CitWZWN0b3I8
U3RyaW5nPiBnZXROdW1iZXJpbmdTeXN0ZW1zRm9yTG9jYWxlKGNvbnN0IFN0cmluZyYgbG9jYWxl
KTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRp
b25zV2luLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlvbnNXaW4uY21ha2UKaW5kZXggMGE4ODYx
NzIxNzExNzNmZDVhMDBkMDc4OTAyYjg3NDMyYjIxZjU5MS4uZTg4ZmM2YzhhZThkMDYxZWRmM2Ux
NzEzZDhhYTgzOThiYmQ3ZTBiZSAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09wdGlvbnNXaW4u
Y21ha2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNXaW4uY21ha2UKQEAgLTU1LDcgKzU1LDYg
QEAgV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOUFVUX1RZUEVfREFU
RVRJTUVMT0NBTCBQVUJMSUMgT0ZGKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUo
RU5BQkxFX0lOUFVUX1RZUEVfTU9OVEggUFVCTElDIE9GRikKIFdFQktJVF9PUFRJT05fREVGQVVM
VF9QT1JUX1ZBTFVFKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUgUFVCTElDIE9GRikKIFdFQktJVF9P
UFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUsgUFVCTElDIE9G
RikKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9JTlRMIFBVQkxJQyBP
TikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZF
TkRPUl9QUkVGSVhFUyBQVUJMSUMgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxV
RShFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlMgUFVCTElDIE9GRikKIFdFQktJVF9PUFRJT05f
REVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9MRUdBQ1lfVkVORE9SX1BSRUZJWEVTIFBVQkxJQyBP
RkYpCkBAIC0xNjMsMTEgKzE2MiwxMSBAQCBpZiAoTVNWQykKIAogICAgICMgVHVybiBvZmYgY2Vy
dGFpbiBsaW5rIGZlYXR1cmVzCiAgICAgYWRkX2NvbXBpbGVfb3B0aW9ucygvR3ktIC9vcGVubXAt
IC9HRi0pCi0gICAgCisKICAgICBpZiAoJHtDTUFLRV9CVUlMRF9UWVBFfSBNQVRDSEVTICJEZWJ1
ZyIpCiAgICAgICAgIHNldChDTUFLRV9TSEFSRURfTElOS0VSX0ZMQUdTICIke0NNQUtFX1NIQVJF
RF9MSU5LRVJfRkxBR1N9IC9PUFQ6Tk9SRUYgL09QVDpOT0lDRiIpCiAgICAgICAgIHNldChDTUFL
RV9FWEVfTElOS0VSX0ZMQUdTICIke0NNQUtFX0VYRV9MSU5LRVJfRkxBR1N9IC9PUFQ6Tk9SRUYg
L09QVDpOT0lDRiIpCi0gICAgICAgIAorCiAgICAgICAgICMgVG8gZGVidWcgbGlua2luZyB0aW1l
IGlzc3VlcywgdW5jb21tZW50IHRoZSBmb2xsb3dpbmcgdGhyZWUgbGluZXM6CiAgICAgICAgICNh
ZGRfY29tcGlsZV9vcHRpb25zKC9CdikKICAgICAgICAgI3NldChDTUFLRV9TSEFSRURfTElOS0VS
X0ZMQUdTICIke0NNQUtFX1NIQVJFRF9MSU5LRVJfRkxBR1N9IC9WRVJCT1NFIC9WRVJCT1NFOklO
Q1IgL1RJTUUiKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IDM3MTE3ZGUzMDliODY2ZWMyNmQ2MDU1MDM5MGJkNzhjMGMzNjZk
OTYuLmE0NGFlZjA3YzIzOWUwM2NjOTQwNjEzOGMzZWZhYWNhOGI1OTZiNTkgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNCBAQAorMjAxNS0xMi0xOCAgQW5keSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVy
ZS5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICoganMvaW50bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQ6
IEFkZGVkIHJlc29sdmVkT3B0aW9ucyB0ZXN0cy4KKyAgICAgICAgKiBqcy9zY3JpcHQtdGVzdHMv
aW50bC1kYXRldGltZWZvcm1hdC5qczogQWRkZWQgcmVzb2x2ZWRPcHRpb25zIHRlc3RzLgorICAg
ICAgICAoc3RyaW5nX2FwcGVhcmVkX2hlcmUpOgorCiAyMDE1LTEyLTE3ICBDb21taXQgUXVldWUg
IDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5n
IG91dCByMTk0MjQxIGFuZCByMTk0MjUyLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvaW50
bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0
aW1lZm9ybWF0LWV4cGVjdGVkLnR4dAppbmRleCBkMDE2YzgwMDQ3ZDY0ZDAyMzhiNWM5NmQ3Yjkw
YjZjNGFlMWM5ZWE0Li4yM2IwZmM1NjAwYjRlNTdlNWRmNzQ4NjQ4YTY2ZmU0YmZhY2Y1OGI0IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dApA
QCAtNTQsNyArNTQsNyBAQCBQQVNTIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwgJ2Zvcm1hdCcs
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5EYQogUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgIT09IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3Jt
YXQgaXMgdHJ1ZQogUEFTUyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCAhPT0gbmV3
IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQgaXMgdHJ1ZQogUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoeyB2YWx1ZU9mKCkgeyB0aHJvdyBFcnJvcignNGInKSB9
IH0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogNGIuCi1QQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQu
cHJvdG90eXBlLmZvcm1hdChJbmZpbml0eSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGRh
dGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRlVGltZUZvcm1hdC5mb3JtYXQoKS4KK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0KEluZmluaXR5KSB0aHJldyBleGNl
cHRpb24gUmFuZ2VFcnJvcjogZGF0ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1lRm9y
bWF0IGZvcm1hdCgpLgogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQu
Y2FsbChudWxsLCAwKSBpcyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApCiBQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdC5jYWxsKEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2FyJyksIDApIGlzIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkKIFBBU1MgSW50
bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0LmNhbGwoNSwgMCkgaXMgSW50bC5EYXRl
VGltZUZvcm1hdCgpLmZvcm1hdCgwKQpAQCAtNjMsOCArNjMsMTY5NyBAQCBQQVNTIG5ldyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0LmNhbGwoSW50bC5EYXRlVGltZUZvcm1hdCgnYXInKSwg
MCkgaXMgSW50bAogUEFTUyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdC5jYWxsKDUs
IDApIGlzIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQoMCkKIFBBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zLmxlbmd0aCBpcyAwCiBQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIGlzIGFuIGluc3RhbmNl
IG9mIE9iamVjdAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMoKS5sb2NhbGUgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlv
bnMoKS5sb2NhbGUKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNv
bHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29s
dmVkT3B0aW9ucygpLmNhbGVuZGFyCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBl
LnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyBuZXcgSW50bC5EYXRlVGltZUZv
cm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbQorUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IGlzIG5ldyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheQorUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEgaXMgbmV3IEludGwu
RGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyBuZXcgSW50bC5EYXRl
VGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnllYXIKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMgbmV3IEludGwuRGF0ZVRp
bWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aAorUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMgbmV3IEludGwuRGF0ZVRpbWVG
b3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5w
cm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuaG91ciBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1h
dCgpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90
b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1h
dCgpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3Jt
YXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5w
cm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIGlzIG5ldyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lCiBQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpID09PSBJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSBpcyBmYWxzZQogUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMuY2FsbCg1KSB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3QgYW4gb2JqZWN0IGluaXRpYWxpemVkIGFz
IGEgRGF0ZVRpbWVGb3JtYXQuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJyQnKSB0aHJldyBl
eGNlcHRpb24gUmFuZ2VFcnJvcjogaW52YWxpZCBsYW5ndWFnZSB0YWc6ICQuCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgbnVsbCkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSBpcyB1
bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMo
KS5lcmEgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2
ZWRPcHRpb25zKCkubW9udGggaXMgJ251bWVyaWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJykucmVzb2x2ZWRPcHRpb25zKCkuZGF5IGlzICdudW1lcmljJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnllYXIgaXMgJ251bWVyaWMnCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuaG91ciBpcyB1bmRl
ZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5o
b3VyMTIgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2
ZWRPcHRpb25zKCkubWludXRlIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUgaXMgdW5k
ZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBsb2NhbGVNYXRjaGVyOiB7
IHRvU3RyaW5nKCkgeyB0aHJvdyAnbm9wZScgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBub3BlLgor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjonYmFkJyB9KSB0
aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogbG9jYWxlTWF0Y2hlciBtdXN0IGJlIGVpdGhlciAi
bG9va3VwIiBvciAiYmVzdCBmaXQiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
bG9jYWxlTWF0Y2hlcjonbG9va3VwJyB9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxvY2FsZU1hdGNoZXI6J2Jlc3QgZml0JyB9KSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IGZvcm1hdE1hdGNoZXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdub3BlJyB9IH0gfSkgdGhyZXcg
ZXhjZXB0aW9uIG5vcGUuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBmb3JtYXRN
YXRjaGVyOidiYWQnIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBmb3JtYXRNYXRjaGVy
IG11c3QgYmUgZWl0aGVyICJiYXNpYyIgb3IgImJlc3QgZml0Ii4KK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2Jhc2ljJyB9KSBkaWQgbm90IHRocm93IGV4
Y2VwdGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6
J2Jlc3QgZml0JyB9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnbm93aGVyZS9ib2d1cycgfSkgdGhyZXcgZXhjZXB0
aW9uIFJhbmdlRXJyb3I6IGludmFsaWQgdGltZSB6b25lOiBub3doZXJlL2JvZ3VzLgorUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6IHsgdG9TdHJpbmcoKSB7IHRocm93
ICdub3BlJyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIG5vcGUuCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ2FtZXJpY2EvZGVudmVyJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9EZW52ZXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FNRVJJQ0EvTE9TX0FOR0VMRVMnIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0xvc19BbmdlbGVzJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQW1lcmljYS9BdGthJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9BZGFrJworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNhL0Vuc2VuYWRhJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9UaWp1YW5hJworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNhL1BvcnRvX0FjcmUnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1Jpb19CcmFuY28nCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FtZXJpY2EvU2hpcHJvY2snIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0RlbnZlcicKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQW50YXJjdGljYS9Tb3V0aF9Qb2xlJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnUGFjaWZpYy9BdWNrbGFuZCcKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9Bc2hraGFiYWQnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL0FzaGdhYmF0JworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL0Nob25ncWluZycgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvU2hhbmdoYWknCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvQ2h1bmdraW5nJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9TaGFuZ2hhaScKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9EYWNjYScgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUgaXMgJ0FzaWEvRGhha2EnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0FzaWEvSGFyYmluJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBp
cyAnQXNpYS9TaGFuZ2hhaScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnQXNpYS9LYXNoZ2FyJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNp
YS9VcnVtcWknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0Fz
aWEvTWFjYW8nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL01hY2F1Jwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL1RlbF9Bdml2
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9KZXJ1c2FsZW0nCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvVGhpbWJ1JyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9UaGltcGh1JworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL1VqdW5nX1BhbmRhbmcnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL01ha2Fzc2FyJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL1VsYW5fQmF0b3InIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1VsYWFuYmFhdGFyJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvQUNUJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXVzdHJhbGlhL1N5ZG5leScKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL0NhbmJlcnJhJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXVzdHJhbGlhL1N5ZG5leScKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL0xISScgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0F1c3RyYWxpYS9Mb3JkX0hvd2UnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9OU1cnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBdXN0cmFsaWEvU3lkbmV5JworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvTm9ydGgnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBdXN0cmFsaWEvRGFyd2luJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvUXVlZW5zbGFuZCcgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0F1c3RyYWxpYS9CcmlzYmFuZScKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1NvdXRoJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXVzdHJhbGlhL0FkZWxhaWRlJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvVGFzbWFu
aWEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBdXN0cmFsaWEvSG9iYXJ0Jwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvVmlj
dG9yaWEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBdXN0cmFsaWEvTWVsYm91
cm5lJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFs
aWEvV2VzdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0F1c3RyYWxpYS9QZXJ0
aCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlh
L1lhbmNvd2lubmEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBdXN0cmFsaWEv
QnJva2VuX0hpbGwnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J0JyYXppbC9BY3JlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9S
aW9fQnJhbmNvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdC
cmF6aWwvRGVOb3JvbmhhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmlj
YS9Ob3JvbmhhJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdC
cmF6aWwvRWFzdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvU2Fv
X1BhdWxvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6
aWwvV2VzdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvTWFuYXVz
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvQXRs
YW50aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0hhbGlmYXgn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9DZW50
cmFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9XaW5uaXBlZycK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL0Vhc3Qt
U2Fza2F0Y2hld2FuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9S
ZWdpbmEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFk
YS9FYXN0ZXJuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9Ub3Jv
bnRvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEv
TW91bnRhaW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0VkbW9u
dG9uJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEv
TmV3Zm91bmRsYW5kJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9T
dF9Kb2hucycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2Fu
YWRhL1BhY2lmaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1Zh
bmNvdXZlcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2Fu
YWRhL1Nhc2thdGNoZXdhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJp
Y2EvUmVnaW5hJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdD
YW5hZGEvWXVrb24nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1do
aXRlaG9yc2UnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0No
aWxlL0NvbnRpbmVudGFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmlj
YS9TYW50aWFnbycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
Q2hpbGUvRWFzdGVySXNsYW5kJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnUGFj
aWZpYy9FYXN0ZXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J0N1YmEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0hhdmFuYScK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnRWd5cHQnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBZnJpY2EvQ2Fpcm8nCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0VpcmUnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdFdXJvcGUvRHVibGluJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdFdXJvcGUvQmVsZmFzdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0V1cm9wZS9Mb25kb24nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0V1cm9wZS9UaXJhc3BvbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUgaXMgJ0V1cm9wZS9DaGlzaW5hdScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnR0InIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdFdXJvcGUv
TG9uZG9uJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHQi1F
aXJlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnRXVyb3BlL0xvbmRvbicKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR01UKzAnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0dNVC0wJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBp
cyAnVVRDJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHTVQw
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnVVRDJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHcmVlbndpY2gnIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0hvbmdrb25nJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNp
YS9Ib25nX0tvbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J0ljZWxhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBdGxhbnRpYy9SZXlr
amF2aWsnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0lyYW4n
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1RlaHJhbicKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSXNyYWVsJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9KZXJ1c2FsZW0nCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0phbWFpY2EnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdBbWVyaWNhL0phbWFpY2EnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0phcGFuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAn
QXNpYS9Ub2t5bycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
S3dhamFsZWluJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnUGFjaWZpYy9Ld2Fq
YWxlaW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0xpYnlh
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQWZyaWNhL1RyaXBvbGknCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ01leGljby9CYWphTm9ydGUn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1RpanVhbmEnCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ01leGljby9CYWphU3VyJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9NYXphdGxhbicKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnTWV4aWNvL0dlbmVyYWwnIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL01leGljb19DaXR5JworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdOWicgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUgaXMgJ1BhY2lmaWMvQXVja2xhbmQnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ05aLUNIQVQnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdQYWNpZmljL0NoYXRoYW0nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ05hdmFqbycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUg
aXMgJ0FtZXJpY2EvRGVudmVyJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdQUkMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1NoYW5n
aGFpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdQb2xhbmQn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdFdXJvcGUvV2Fyc2F3JworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdQb3J0dWdhbCcgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9MaXNib24nCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1JPQycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0FzaWEvVGFpcGVpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdST0snIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1Nl
b3VsJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdTaW5nYXBv
cmUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1NpbmdhcG9yZScKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVHVya2V5JyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnRXVyb3BlL0lzdGFuYnVsJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVQ1QnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ1VTL0FsYXNrYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJp
Y2EvQW5jaG9yYWdlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdVUy9BbGV1dGlhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2Ev
QWRhaycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvQXJp
em9uYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvUGhvZW5peCcK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvQ2VudHJhbCcg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvQ2hpY2FnbycKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvRWFzdGVybicgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvTmV3X1lvcmsnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0hhd2FpaScgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUgaXMgJ1BhY2lmaWMvSG9ub2x1bHUnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL01pY2hpZ2FuJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9EZXRyb2l0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9Nb3VudGFpbicgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUgaXMgJ0FtZXJpY2EvRGVudmVyJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdVUy9QYWNpZmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSBpcyAnQW1lcmljYS9Mb3NfQW5nZWxlcycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnVVMvU2Ftb2EnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlz
ICdQYWNpZmljL1BhZ29fUGFnbycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnVVRDJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnVVRDJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVbml2ZXJzYWwnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ1ctU1UnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IGlzICdFdXJvcGUvTW9zY293JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdadWx1JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnVVRDJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSBp
cyAnYXItU0EnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyLXNhJykucmVzb2x2ZWRPcHRp
b25zKCkuY2FsZW5kYXIgaXMgJ2lzbGFtaWMtdW1hbHF1cmEnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2FyLXNhJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdhcmFi
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgY2FsZW5kYXI6J2RhbmdpJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnZ3JlZ29yaWFuJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LWNhLWJvZ3VzJykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIGlzICdl
bicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ib2d1cycpLnJlc29sdmVkT3B0
aW9ucygpLmNhbGVuZGFyIGlzICdncmVnb3JpYW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtY2EtYnVkZGhpc3QnKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUgaXMgJ2VuLXUtY2Et
YnVkZGhpc3QnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYnVkZGhpc3QnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnYnVkZGhpc3QnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtY2EtY2hpbmVzZScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlz
ICdjaGluZXNlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWNvcHRpYycpLnJl
c29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdjb3B0aWMnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtY2EtZGFuZ2knKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnZGFu
Z2knCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9hYScpLnJlc29sdmVk
T3B0aW9ucygpLmNhbGVuZGFyIGlzICdldGhpb3BpYy1hbWV0ZS1hbGVtJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbi11LWNhLWV0aGlvcGljJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5k
YXIgaXMgJ2V0aGlvcGljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdhci1TQS11LWNhLWdy
ZWdvcnknKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnZ3JlZ29yaWFuJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWhlYnJldycpLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyIGlzICdoZWJyZXcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaW5k
aWFuJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2luZGlhbicKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5k
YXIgaXMgJ2lzbGFtaWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1p
Y2MnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnaXNsYW1pYy1jaXZpbCcKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1JU084NjAxJykucmVzb2x2ZWRPcHRpb25zKCku
Y2FsZW5kYXIgaXMgJ2lzbzg2MDEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2Et
amFwYW5lc2UnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnamFwYW5lc2UnCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtcGVyc2lhbicpLnJlc29sdmVkT3B0aW9ucygp
LmNhbGVuZGFyIGlzICdwZXJzaWFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNh
LXJvYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdyb2MnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyBudW1iZXJpbmdTeXN0ZW06J2d1anInIH0pLnJlc29sdmVkT3B0
aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGF0bicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4tdS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSBpcyAnZW4nCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYm9ndXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5u
dW1iZXJpbmdTeXN0ZW0gaXMgJ2xhdG4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
bnUtbGF0bicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGF0bicKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1hcmFiJykucmVzb2x2ZWRPcHRpb25zKCku
bG9jYWxlIGlzICdlbi11LW51LWFyYWInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
bnUtYXJhYicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnYXJhYicKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1hcmFiZXh0JykucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIGlzICdhcmFiZXh0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LW51LWFybW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2Fy
bW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYXJtbmxvdycpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnYXJtbmxvdycKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1udS1iYWxpJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVt
IGlzICdiYWxpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWJlbmcnKS5yZXNv
bHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2JlbmcnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtbnUtY2hhbScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3Rl
bSBpcyAnY2hhbScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1kZXZhJykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdkZXZhJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LW51LWV0aGknKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0gaXMgJ2V0aGknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZnVsbHdpZGUn
KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2Z1bGx3aWRlJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWdlb3InKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1i
ZXJpbmdTeXN0ZW0gaXMgJ2dlb3InCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
Z3JlaycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnZ3JlaycKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ncmVrbG93JykucmVzb2x2ZWRPcHRpb25zKCku
bnVtYmVyaW5nU3lzdGVtIGlzICdncmVrbG93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LWd1anInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2d1anIn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZ3VydScpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyAnZ3VydScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1udS1oYW5pZGF5cycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAn
aGFuaWRheXMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtaGFuaWRlYycpLnJl
c29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnaGFuaWRlYycKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4tdS1udS1oYW5zJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5n
U3lzdGVtIGlzICdoYW5zJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWhhbnNm
aW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2hhbnNmaW4nCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtaGFudCcpLnJlc29sdmVkT3B0aW9ucygpLm51
bWJlcmluZ1N5c3RlbSBpcyAnaGFudCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1u
dS1oYW50ZmluJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdoYW50Zmlu
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWhlYnInKS5yZXNvbHZlZE9wdGlv
bnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2hlYnInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtbnUtamF2YScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnamF2
YScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1qcGFuJykucmVzb2x2ZWRPcHRp
b25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdqcGFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbi11LW51LWpwYW5maW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMg
J2pwYW5maW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUta2FsaScpLnJlc29s
dmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAna2FsaScKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1udS1raG1yJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVt
IGlzICdraG1yJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWtuZGEnKS5yZXNv
bHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2tuZGEnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtbnUtbGFuYScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3Rl
bSBpcyAnbGFuYScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1sYW5hdGhhbScp
LnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGFuYXRoYW0nCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGFvbycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSBpcyAnbGFvbycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1s
YXRuJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdsYXRuJworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxlcGMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1i
ZXJpbmdTeXN0ZW0gaXMgJ2xlcGMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
bGltYicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGltYicKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1tbHltJykucmVzb2x2ZWRPcHRpb25zKCkubnVt
YmVyaW5nU3lzdGVtIGlzICdtbHltJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51
LW1vbmcnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ21vbmcnCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbXRlaScpLnJlc29sdmVkT3B0aW9ucygpLm51
bWJlcmluZ1N5c3RlbSBpcyAnbXRlaScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1u
dS1teW1yJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdteW1yJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LW15bXJzaGFuJykucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIGlzICdteW1yc2hhbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4tdS1udS1ua29vJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdu
a29vJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LW9sY2snKS5yZXNvbHZlZE9w
dGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ29sY2snCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtbnUtb3J5YScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAn
b3J5YScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1yb21hbicpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAncm9tYW4nCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtbnUtcm9tYW5sb3cnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0gaXMgJ3JvbWFubG93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LXNhdXIn
KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3NhdXInCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtc3VuZCcpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSBpcyAnc3VuZCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10YWx1
JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICd0YWx1JworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LXRhbWwnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJp
bmdTeXN0ZW0gaXMgJ3RhbWwnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGFt
bGRlYycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAndGFtbGRlYycKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10ZWx1JykucmVzb2x2ZWRPcHRpb25zKCku
bnVtYmVyaW5nU3lzdGVtIGlzICd0ZWx1JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LXRoYWknKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3RoYWknCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGlidCcpLnJlc29sdmVkT3B0aW9ucygp
Lm51bWJlcmluZ1N5c3RlbSBpcyAndGlidCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS12YWlpJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICd2YWlpJwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTogeyB0b1N0cmluZygpIHsg
dGhyb3cgJ3dlZWtkYXknIH0gfSB9KSB0aHJldyBleGNlcHRpb24gd2Vla2RheS4KK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J2ludmFsaWQnIH0pIHRocmV3IGV4Y2Vw
dGlvbiBSYW5nZUVycm9yOiB3ZWVrZGF5IG11c3QgYmUgIm5hcnJvdyIsICJzaG9ydCIsIG9yICJs
b25nIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcs
IGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkgaXMgdW5kZWZpbmVk
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5OiduYXJyb3cnLCBtb250
aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSBp
cyAnbmFycm93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonc2hv
cnQnLCBtb250aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCku
d2Vla2RheSBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVr
ZGF5Oidsb25nJywgbW9udGg6J251bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0
aW9ucygpLndlZWtkYXkgaXMgJ2xvbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBlcmE6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdlcmEnIH0gfSB9KSB0aHJldyBleGNlcHRpb24g
ZXJhLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduZXZlcicgfSkgdGhy
ZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGVyYSBtdXN0IGJlICJuYXJyb3ciLCAic2hvcnQiLCBv
ciAibG9uZyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGln
aXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMgdW5kZWZpbmVk
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25hcnJvdycsIHllYXI6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyAnbmFycm93JworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOidzaG9ydCcsIHllYXI6J251bWVyaWMnIH0pLnJlc29s
dmVkT3B0aW9ucygpLmVyYSBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBlcmE6J2xvbmcnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEg
aXMgJ2xvbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB5ZWFyOiB7IHRvU3Ry
aW5nKCkgeyB0aHJvdyAneWVhcicgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiB5ZWFyLgorUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgeWVhcjonbm9wZScgfSkgdGhyZXcgZXhjZXB0aW9u
IFJhbmdlRXJyb3I6IHllYXIgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiLgorUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJp
YycgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjonMi1kaWdpdCcgfSkucmVzb2x2
ZWRPcHRpb25zKCkueWVhciBpcyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCku
eWVhciBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRo
OiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbW9udGgnIH0gfSB9KSB0aHJldyBleGNlcHRpb24gbW9u
dGguCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDoyIH0pIHRocmV3IGV4
Y2VwdGlvbiBSYW5nZUVycm9yOiBtb250aCBtdXN0IGJlICIyLWRpZ2l0IiwgIm51bWVyaWMiLCAi
bmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25z
KCkubW9udGggaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
b250aDonMi1kaWdpdCcsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRo
IGlzICcyLWRpZ2l0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J251
bWVyaWMnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbnVt
ZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOiduYXJyb3cnLCB5
ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbmFycm93JworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J3Nob3J0JywgeWVhcjonbnVtZXJp
YycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMgJ3Nob3J0JworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS5tb250aCBpcyAnbG9uZycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IGRheTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ2RheScgfSB9IH0pIHRocmV3IGV4Y2VwdGlv
biBkYXkuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBkYXk6JycgfSkgdGhyZXcg
ZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGRheSBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyIu
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3Vy
OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkgaXMgdW5kZWZpbmVkCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonbG9uZycsIGRheTonMi1kaWdpdCcgfSku
cmVzb2x2ZWRPcHRpb25zKCkuZGF5IGlzICcyLWRpZ2l0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLmRheSBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGhv
dXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdob3VyJyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIGhv
dXIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBob3VyOltdIH0pIHRocmV3IGV4
Y2VwdGlvbiBSYW5nZUVycm9yOiBob3VyIG11c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmljIi4K
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyIGlz
IHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRp
Z2l0JywgaG91cjonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91ciBpcyAnbnVtZXJp
YycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhv
dXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmhvdXIgaXMgJ251bWVyaWMnCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIGlzIHVu
ZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0
JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIGlzIHRydWUKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgncHQtQlInLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6
J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiBpcyBmYWxzZQorUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbWlu
dXRlJyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIG1pbnV0ZS4KK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IG1pbnV0ZTpudWxsIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBt
aW51dGUgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiLgorUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBpcyB1bmRlZmluZWQKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVy
aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBpcyAnMi1kaWdpdCcKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonbnVtZXJpYycsIGhvdXI6J251bWVyaWMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBpcyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHNlY29uZDogeyB0b1N0cmluZygpIHsgdGhyb3cgJ3NlY29uZCcgfSB9
IH0pIHRocmV3IGV4Y2VwdGlvbiBzZWNvbmQuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBzZWNvbmQ6J2JhZHZhbHVlJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogc2Vj
b25kIG11c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmljIi4KK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQgaXMgdW5kZWZpbmVkCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1lcmlj
Jywgc2Vjb25kOicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQgaXMgJzItZGln
aXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBo
b3VyOidudW1lcmljJywgc2Vjb25kOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNv
bmQgaXMgJzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZU5hbWU6IHsgdG9TdHJpbmcoKSB7IHRocm93ICd0aW1lWm9uZU5hbWUnIH0gfSB9KSB0aHJldyBl
eGNlcHRpb24gdGltZVpvbmVOYW1lLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmVOYW1lOiduYW1lJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogdGltZVpv
bmVOYW1lIG11c3QgYmUgInNob3J0IiBvciAibG9uZyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmVOYW1lIGlzIHVuZGVmaW5lZAorUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVt
ZXJpYycsIHRpbWVab25lTmFtZTonc2hvcnQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
TmFtZSBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ3B0LUJSJywgeyBtaW51
dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJywgdGltZVpvbmVOYW1lOidsb25nJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUgaXMgJ2xvbmcnCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQi
LCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vj
b25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJhciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmlj
IiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgiYXIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgiYXIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJhciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYXIiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImFyIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImFyIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0Iiwg
ZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29u
ZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
YXItU0EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoImFyLVNBIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51
bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImFyLVNBIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjog
Im51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiYXItU0EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImFy
LVNBIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmlj
Iiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJhci1TQSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRl
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJh
ci1TQSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmlj
IiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoImJlIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0
IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJiZSIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJiZSIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoImJlIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25n
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJiZSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVt
ZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiYmUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
YmUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNT
IAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6
ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJjYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIs
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiY2EiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiY2EiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJjYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIs
IGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiY2EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVy
aWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoImNhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImNh
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBt
b250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAi
bnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgiY3MiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImNzIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
eWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImNzIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
eWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgiY3MiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImNzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmlj
Iiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJjcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJjcyIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51
bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImRhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVh
cjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoImRhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJk
YSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIs
IHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiZGEiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGEiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1l
cmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJkZSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFy
OiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFy
OiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJkZSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTog
Im51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGUi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBz
ZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoImRlIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRlIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDog
InNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJp
YyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiZGUtQ0giLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFy
OiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRlLUNIIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
eWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRlLUNIIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgiZGUtQ0giLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxv
bmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoImRlLUNIIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6
ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJkZS1DSCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJkZS1DSCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJp
YyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2Rh
eTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbiIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbiIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9u
dGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJlbiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgiZW4iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJp
YyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiZW4iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAi
bnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1BVSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtk
YXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tQVUiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tQVUi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1BVSIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tQVUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAi
bnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLUFVIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLUFVIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2Rh
eTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJp
YyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tR0IiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAi
c2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoImVuLUdCIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250
aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImVuLUdCIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBt
b250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
ZW4tR0IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLUdCIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1H
QiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1HQiIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJz
aG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMi
LCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoImVuLVBIIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjog
Im51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1QSCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1QSCIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoImVuLVBIIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25n
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJlbi1QSCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAi
bnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgiZW4tUEgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIs
IG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiZW4tUEgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAi
bnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1VUyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtk
YXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tVVMiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tVVMi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1VUyIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tVVMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAi
bnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLVVTIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLVVTIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2Rh
eTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJp
YyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZWwiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hv
cnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoImVsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxv
bmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoImVsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxv
bmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZWwiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91
cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbCIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6
ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMi
LCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJlcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25n
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJlcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25n
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6
ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAi
c2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwg
aG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcy1NWCIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9y
dCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiZXMtTVgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAi
bG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiZXMtTVgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcy1N
WCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMtTVgiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzLU1YIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzLU1YIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0
IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNl
Y29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiZXMtUFIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVt
ZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzLVBSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjog
Im51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzLVBSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVh
cjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgiZXMtUFIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImVzLVBSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1l
cmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJlcy1QUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJlcy1QUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1l
cmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoImZyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNo
b3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJmciIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJmciIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImZyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJs
b25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJmciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAi
bnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgiZnIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiZnIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJmci1DQSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJz
aG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZnItQ0EiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZnItQ0EiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJmci1DQSIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgiZnItQ0EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJp
YyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImZyLUNBIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91
cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoImZyLUNBIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNo
b3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZ2EiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImdhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImdhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZ2EiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImdhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJnYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJnYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9y
dCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3Vy
OiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImhpLUlOIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0Iiwg
ZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJoaS1JTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25n
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJoaS1JTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJs
b25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImhpLUlOIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJoaS1JTiIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaGktSU4iLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaGktSU4iLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBk
YXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25k
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJp
cyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwg
bW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgiaXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgiaXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJpcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXMiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImlzIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImlzIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5
OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDog
Im51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXQi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1v
bnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoIml0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBt
b250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoIml0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBt
b250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
aXQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNT
IAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIml0Iiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpdCIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpdCIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTog
Im51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIml3Iiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250
aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJpdyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJpdyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIml3
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpdyIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXciLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXciLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3
ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJu
dW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJqYSIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6
ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiamEiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiamEiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJqYSIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiamEiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImphIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImphIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vl
a2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVt
ZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgia28tS1IiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImtvLUtSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBt
b250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoImtvLUtSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMi
LCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgia28tS1IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImtvLUtSIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25k
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJr
by1LUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJrby1LUiIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6
ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVy
aWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoImx0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjog
Im51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJsdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJsdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImx0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJsdCIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNl
Y29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgibHQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibHQiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAi
c2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmlj
Iiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJsdiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJu
dW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibHYiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAi
bnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibHYiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAi
bnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJsdiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibHYiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNv
bmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
Imx2Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImx2Iiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNo
b3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIs
IHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgibWsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVt
ZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1rIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51
bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1rIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51
bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgibWsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1rIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25k
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJt
ayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtayIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9y
dCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBz
ZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoIm1zIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVy
aWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1l
cmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1l
cmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoIm1zIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtcyIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDog
Im51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibXMi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibXMiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQi
LCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vj
b25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJtdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmlj
IiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgibXQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgibXQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJtdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibXQiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm10Iiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm10Iiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0Iiwg
ZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29u
ZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
bmIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNT
IAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoIm5iIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMi
LCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoIm5iIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMi
LCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgibmIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5iIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJuYiIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJuYiIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRh
eTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5s
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBt
b250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJubCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwg
bW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJubCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwg
bW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
Im5sIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJubCIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibmwiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibmwiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6
ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJubyIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgibm8iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1v
bnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgibm8iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1v
bnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJu
byIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibm8iLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5vIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5vIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
d2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAi
bnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicGwiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoInBsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250
aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoInBsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250
aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicGwi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInBsIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJwbCIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJwbCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdl
ZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51
bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInB0Iiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDog
InNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJwdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6
ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJwdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6
ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInB0Iiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJwdCIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicHQiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicHQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVr
ZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1l
cmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJwdC1CUiIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6
ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgicHQtQlIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1v
bnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgicHQtQlIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJwdC1CUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicHQtQlIiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInB0
LUJSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInB0LUJSIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDog
InNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJp
YyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgicm8iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAi
bnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInJvIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjog
Im51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInJvIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjog
Im51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgicm8iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInJvIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vj
b25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJybyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJybyIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJz
aG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMi
LCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoInJ1Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51
bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJydSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJu
dW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJydSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJu
dW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoInJ1Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJydSIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29u
ZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
cnUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNT
IAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicnUiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hv
cnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwg
c2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJzayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1l
cmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgic2siLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVt
ZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgic2siLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVt
ZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJzayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic2siLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNr
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNrIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0
IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNl
Y29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgic2wiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoInNsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVy
aWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoInNsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVy
aWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgic2wiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNsIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzbCIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzbCIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIs
IGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNv
bmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
InNyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMi
LCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJzciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmlj
IiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJzciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmlj
IiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoInNyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzciIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic3IiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic3IiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBk
YXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25k
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJz
diIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwg
bW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgic3YiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgic3YiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJzdiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic3YiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInN2Iiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInN2Iiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5
OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDog
Im51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidGgi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1v
bnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoInRoIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBt
b250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoInRoIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBt
b250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
dGgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNT
IAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInRoIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ0aCIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ0aCIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTog
Im51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInRyIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250
aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJ0ciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJ0ciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInRy
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ0ciIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidHIiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidHIiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3
ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJu
dW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ1ayIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6
ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgidWsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgidWsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ1ayIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidWsiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInVrIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInVrIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vl
a2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVt
ZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidmkiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAi
c2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoInZpIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDog
ImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoInZpIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDog
ImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidmkiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInZpIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
aG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ2aSIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ2aSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtk
YXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVy
aWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNo
b3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJ6aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJs
b25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJ6aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJs
b25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5
OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmlj
IiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aC1DTiIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJz
aG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiemgtQ04iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiemgtQ04iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1v
bnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6
aC1DTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtQ04iLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoLUNO
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoLUNOIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNo
b3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIs
IHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiemgtSGFudC1ISyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtSGFudC1ISyIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aC1IYW50LUhLIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtSGFudC1ISyIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtSGFudC1ISyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtSGFudC1ISyIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aC1IYW50LUhLIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0
IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNl
Y29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiemgtVFciLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVt
ZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoLVRXIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjog
Im51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoLVRXIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVh
cjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgiemgtVFciLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
InpoLVRXIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1l
cmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJ6aC1UVyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJ6aC1UVyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
IFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2ludGwtZGF0ZXRpbWVmb3JtYXQuanMg
Yi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5qcwppbmRl
eCBlZGUxYjVjZTM0NmZkMjkwNTMwYjM3Mzc3ZjAwY2FlNTAzN2U2MDdmLi5jMmE2NzU4MmZlYzM0
NTIyMDk4N2RiYzdkMzc4MTc4YzQ2NGM4OWQwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9z
Y3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5qcworKysgYi9MYXlvdXRUZXN0cy9qcy9z
Y3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5qcwpAQCAtMTE5LDcgKzExOSw3IEBAIHNo
b3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoeyB2YWx1ZU9m
KCkgeyB0aHJvdyBFcnJvcignNGInCiAvLyAxMi4zLjQgRm9ybWF0RGF0ZVRpbWUgYWJzdHJhY3Qg
b3BlcmF0aW9uCiAKIC8vIDEuIElmIHggaXMgbm90IGEgZmluaXRlIE51bWJlciwgdGhlbiB0aHJv
dyBhIFJhbmdlRXJyb3IgZXhjZXB0aW9uLgotc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3Jt
YXQucHJvdG90eXBlLmZvcm1hdChJbmZpbml0eSkiLCAiJ1JhbmdlRXJyb3I6IGRhdGUgdmFsdWUg
aXMgbm90IGZpbml0ZSBpbiBEYXRlVGltZUZvcm1hdC5mb3JtYXQoKSciKTsKK3Nob3VsZFRocm93
KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoSW5maW5pdHkpIiwgIidSYW5n
ZUVycm9yOiBkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUgaW4gRGF0ZVRpbWVGb3JtYXQgZm9ybWF0
KCknIik7CiAKIC8vIEZvcm1hdCBpcyBib3VuZCwgc28gY2FsbGluZyB3aXRoIGFsdGVybmF0ZSAi
dGhpcyIgaGFzIG5vIGVmZmVjdC4KIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZS5mb3JtYXQuY2FsbChudWxsLCAwKSIsICJJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0
KDApIik7CkBAIC0xMzYsOSArMTM2LDMwOSBAQCBzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zLmxlbmd0aCIsICIwIik7CiAvLyBSZXR1cm5zIGEg
bmV3IG9iamVjdCB3aG9zZSBwcm9wZXJ0aWVzIGFuZCBhdHRyaWJ1dGVzIGFyZSBzZXQgYXMgaWYg
Y29uc3RydWN0ZWQgYnkgYW4gb2JqZWN0IGxpdGVyYWwuCiBzaG91bGRCZVR5cGUoIkludGwuRGF0
ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIiwgIk9iamVjdCIpOwogCisv
LyBUaGUgSW50bC5EYXRlVGltZUZvcm1hdCBwcm90b3R5cGUgb2JqZWN0IGlzIGl0c2VsZiBhbiAl
RGF0ZVRpbWVGb3JtYXQlIGluc3RhbmNlLCB3aG9zZSBpbnRlcm5hbCBzbG90cyBhcmUgc2V0IGFz
IGlmIGl0IGhhZCBiZWVuIGNvbnN0cnVjdGVkIGJ5IHRoZSBleHByZXNzaW9uIENvbnN0cnVjdCgl
RGF0ZVRpbWVGb3JtYXQlKS4KK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlw
ZS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5y
ZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICJuZXcgSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAibmV3
IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLm51
bWJlcmluZ1N5c3RlbSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJv
dG90eXBlLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAibmV3IEludGwuRGF0ZVRpbWVGb3Jt
YXQoKS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgIm5ldyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkueWVhciIsICJuZXcgSW50bC5E
YXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnllYXIiKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCIsICJuZXcg
SW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuZGF5Iiwg
Im5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuZGF5Iik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuaG91
ciIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIiKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMo
KS5ob3VyMTIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5o
b3VyMTIiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZl
ZE9wdGlvbnMoKS5taW51dGUiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9w
dGlvbnMoKS5taW51dGUiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlw
ZS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5y
ZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUiLCAibmV3IEludGwuRGF0
ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUiKTsKKwogLy8gUmV0
dXJucyBhIG5ldyBvYmplY3QgZWFjaCB0aW1lLgogc2hvdWxkQmVGYWxzZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkgPT09IEludGwuRGF0ZVRpbWVGb3Jt
YXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIik7CiAKIC8vIFRocm93cyBvbiBub24tRGF0
ZVRpbWVGb3JtYXQgdGhpcy4KIHNob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3Rv
dHlwZS5yZXNvbHZlZE9wdGlvbnMuY2FsbCg1KSIsICInVHlwZUVycm9yOiBJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgY2FsbGVkIG9uIHZhbHVlIHRoYXRcXCdz
IG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBEYXRlVGltZUZvcm1hdCciKTsKIAorc2hv
dWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJyQnKSIsICInUmFuZ2VFcnJvcjogaW52YWxp
ZCBsYW5ndWFnZSB0YWc6ICQnIik7CitzaG91bGROb3RUaHJvdygiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCBudWxsKSIpOworCisvLyBEZWZhdWx0cyB0byBtb250aCwgZGF5LCB5ZWFyLgorc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkud2Vla2Rh
eSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJl
c29sdmVkT3B0aW9ucygpLmVyYSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIiwgIidudW1lcmljJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuZGF5
IiwgIidudW1lcmljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVz
b2x2ZWRPcHRpb25zKCkueWVhciIsICInbnVtZXJpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIiLCAidW5kZWZpbmVkIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3Vy
MTIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5y
ZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAidW5kZWZpbmVk
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZU5hbWUiLCAidW5kZWZpbmVkIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjogeyB0b1N0cmluZygpIHsgdGhyb3cgJ25v
cGUnIH0gfSB9KSIsICInbm9wZSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjonYmFkJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGxvY2FsZU1h
dGNoZXIgbXVzdCBiZSBlaXRoZXIgImxvb2t1cCIgb3IgImJlc3QgZml0IlwnJyk7CitzaG91bGRO
b3RUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxvY2FsZU1hdGNoZXI6J2xvb2t1
cCcgfSkiKTsKK3Nob3VsZE5vdFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbG9j
YWxlTWF0Y2hlcjonYmVzdCBmaXQnIH0pIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjogeyB0b1N0cmluZygpIHsgdGhyb3cgJ25vcGUn
IH0gfSB9KSIsICInbm9wZSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgZm9ybWF0TWF0Y2hlcjonYmFkJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGZvcm1hdE1hdGNo
ZXIgbXVzdCBiZSBlaXRoZXIgImJhc2ljIiBvciAiYmVzdCBmaXQiXCcnKTsKK3Nob3VsZE5vdFRo
cm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjonYmFzaWMnIH0p
Iik7CitzaG91bGROb3RUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1h
dGNoZXI6J2Jlc3QgZml0JyB9KSIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnbm93aGVyZS9ib2d1cycgfSkiLCAiJ1JhbmdlRXJyb3I6IGlu
dmFsaWQgdGltZSB6b25lOiBub3doZXJlL2JvZ3VzJyIpOworc2hvdWxkVGhyb3coIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ25vcGUn
IH0gfSB9KSIsICInbm9wZSciKTsKKworLy8gVGltZSB6b25lIGlzIGNhc2UgaW5zZW5zaXRpdmUu
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnYW1lcmlj
YS9kZW52ZXInIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0RlbnZl
ciciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
TUVSSUNBL0xPU19BTkdFTEVTJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1l
cmljYS9Mb3NfQW5nZWxlcyciKTsKKworLy8gRGVmYXVsdCB0aW1lIHpvbmUgaXMgYSB2YWxpZCBj
YW5vbmljYWwgdGltZSB6b25lLgorc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIkludGwuRGF0ZVRpbWVGb3JtYXQo
KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIpOworCisvLyBUaW1lIHpvbmUgaXMgY2Fub25p
Y2FsaXplZCBmb3Igb2Jzb2xldGUgbGlua3MgaW4gSUFOQSB0eiBiYWNrd2FyZCBmaWxlLgorc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FtZXJpY2EvQXRr
YScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvQWRhayciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNhL0Vu
c2VuYWRhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9UaWp1YW5h
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0Ft
ZXJpY2EvUG9ydG9fQWNyZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJp
Y2EvUmlvX0JyYW5jbyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdBbWVyaWNhL1NoaXByb2NrJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSIsICInQW1lcmljYS9EZW52ZXInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnQW50YXJjdGljYS9Tb3V0aF9Qb2xlJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSIsICInUGFjaWZpYy9BdWNrbGFuZCciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL0FzaGtoYWJhZCcgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvQXNoZ2FiYXQnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9DaG9uZ3FpbmcnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL1NoYW5naGFpJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvQ2h1bmdraW5nJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9TaGFuZ2hhaSciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL0RhY2NhJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9EaGFrYSciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBc2lhL0hhcmJpbicgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvU2hhbmdoYWknIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9LYXNoZ2FyJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9VcnVtcWknIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9NYWNhbycgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvTWFjYXUnIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9UZWxfQXZpdicgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvSmVydXNhbGVtJyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvVGhpbWJ1JyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9UaGltcGh1JyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvVWp1bmdfUGFu
ZGFuZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvTWFrYXNzYXInIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9V
bGFuX0JhdG9yJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9VbGFhbmJh
YXRhciciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdBdXN0cmFsaWEvQUNUJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXVzdHJh
bGlhL1N5ZG5leSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBdXN0cmFsaWEvQ2FuYmVycmEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IiwgIidBdXN0cmFsaWEvU3lkbmV5JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9MSEknIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidBdXN0cmFsaWEvTG9yZF9Ib3dlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9OU1cnIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvU3lkbmV5JyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9Ob3J0aCcgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9EYXJ3aW4nIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1F1ZWVu
c2xhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvQnJpc2Jh
bmUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
QXVzdHJhbGlhL1NvdXRoJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXVzdHJh
bGlhL0FkZWxhaWRlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0F1c3RyYWxpYS9UYXNtYW5pYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0F1c3RyYWxpYS9Ib2JhcnQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1ZpY3RvcmlhJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSIsICInQXVzdHJhbGlhL01lbGJvdXJuZSciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvV2VzdCcgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9QZXJ0aCciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvWWFuY293
aW5uYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9Ccm9rZW5f
SGlsbCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdCcmF6aWwvQWNyZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2Ev
UmlvX0JyYW5jbyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdCcmF6aWwvRGVOb3JvbmhhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIs
ICInQW1lcmljYS9Ob3JvbmhhJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0JyYXppbC9FYXN0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSIsICInQW1lcmljYS9TYW9fUGF1bG8nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnQnJhemlsL1dlc3QnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidBbWVyaWNhL01hbmF1cyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvQXRsYW50aWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIiwgIidBbWVyaWNhL0hhbGlmYXgnIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL0NlbnRyYWwnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1dpbm5pcGVnJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9FYXN0LVNhc2thdGNo
ZXdhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvUmVnaW5hJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFk
YS9FYXN0ZXJuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9Ub3Jv
bnRvJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J0NhbmFkYS9Nb3VudGFpbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJp
Y2EvRWRtb250b24nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnQ2FuYWRhL05ld2ZvdW5kbGFuZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0FtZXJpY2EvU3RfSm9obnMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL1BhY2lmaWMnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIiwgIidBbWVyaWNhL1ZhbmNvdXZlciciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvU2Fza2F0Y2hld2FuJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9SZWdpbmEnIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL1l1a29uJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9XaGl0ZWhvcnNlJyIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NoaWxlL0NvbnRp
bmVudGFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9TYW50aWFn
byciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdD
aGlsZS9FYXN0ZXJJc2xhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidQYWNp
ZmljL0Vhc3RlciciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdDdWJhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9I
YXZhbmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnRWd5cHQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBZnJpY2EvQ2Fpcm8n
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnRWly
ZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0V1cm9wZS9EdWJsaW4nIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnRXVyb3BlL0Jl
bGZhc3QnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidFdXJvcGUvTG9uZG9uJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0V1cm9w
ZS9UaXJhc3BvbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0V1cm9wZS9DaGlz
aW5hdSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdHQicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0V1cm9wZS9Mb25kb24nIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR0ItRWly
ZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0V1cm9wZS9Mb25kb24nIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR01UKzAnIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidVVEMnIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR01ULTAnIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIiwgIidVVEMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnR01UMCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAi
J1VUQyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdHcmVlbndpY2gnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidVVEMnIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnSG9uZ2tvbmcn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL0hvbmdfS29uZyciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdJY2VsYW5kJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXRsYW50aWMvUmV5a2phdmlrJyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0lyYW4nIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL1RlaHJhbiciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdJc3JhZWwnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL0plcnVzYWxlbSciKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdKYW1haWNhJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9KYW1haWNhJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0phcGFuJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9Ub2t5byciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdLd2FqYWxlaW4nIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIiwgIidQYWNpZmljL0t3YWphbGVpbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdMaWJ5YScgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUiLCAiJ0FmcmljYS9Ucmlwb2xpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ01leGljby9CYWphTm9ydGUnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1RpanVhbmEnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnTWV4aWNvL0JhamFTdXInIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL01hemF0bGFuJyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ01leGljby9HZW5lcmFs
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9NZXhpY29fQ2l0eSci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdOWicg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1BhY2lmaWMvQXVja2xhbmQnIik7Citz
aG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnTlotQ0hBVCcg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1BhY2lmaWMvQ2hhdGhhbSciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdOYXZham8nIH0p
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0RlbnZlciciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdQUkMnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL1NoYW5naGFpJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1BvbGFuZCcgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUiLCAiJ0V1cm9wZS9XYXJzYXcnIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnUG9ydHVnYWwnIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIiwgIidFdXJvcGUvTGlzYm9uJyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1JPQycgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUiLCAiJ0FzaWEvVGFpcGVpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ1JPSycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUi
LCAiJ0FzaWEvU2VvdWwnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnU2luZ2Fwb3JlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXNpYS9TaW5nYXBvcmUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnVHVya2V5JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInRXVy
b3BlL0lzdGFuYnVsJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ1VDVCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1VUQyciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9BbGFz
a2EnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0FuY2hvcmFnZSci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9B
bGV1dGlhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvQWRhayci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9B
cml6b25hJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9QaG9lbml4
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VT
L0NlbnRyYWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0NoaWNh
Z28nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
VVMvRWFzdGVybicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvTmV3
X1lvcmsnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnVVMvSGF3YWlpJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInUGFjaWZpYy9I
b25vbHVsdSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdVUy9NaWNoaWdhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJp
Y2EvRGV0cm9pdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdVUy9Nb3VudGFpbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0Ft
ZXJpY2EvRGVudmVyJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ1VTL1BhY2lmaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidB
bWVyaWNhL0xvc19BbmdlbGVzJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ1VTL1NhbW9hJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIs
ICInUGFjaWZpYy9QYWdvX1BhZ28nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnVVRDJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
VVRDJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J1VuaXZlcnNhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1VUQyciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdXLVNVJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInRXVyb3BlL01vc2NvdyciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdadWx1JyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSIsICInVVRDJyIpOworCisvLyBHZXRzIGRlZmF1bHQgY2FsZW5k
YXIgYW5kIG51bWJlcmluZ1N5c3RlbSBmcm9tIGxvY2FsZS4KK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInYXItU0EnIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnYXItc2EnKS5yZXNvbHZlZE9wdGlvbnMo
KS5jYWxlbmRhciIsICInaXNsYW1pYy11bWFscXVyYSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICIn
YXJhYiciKTsKKworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBjYWxlbmRh
cjonZGFuZ2knIH0pLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidncmVnb3JpYW4nIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ib2d1cycpLnJlc29sdmVk
T3B0aW9ucygpLmxvY2FsZSIsICInZW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4tdS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidncmVnb3Jp
YW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1idWRkaGlzdCcp
LnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4tdS1jYS1idWRkaGlzdCciKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJ1ZGRoaXN0JykucmVzb2x2ZWRPcHRp
b25zKCkuY2FsZW5kYXIiLCAiJ2J1ZGRoaXN0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtY2EtY2hpbmVzZScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidj
aGluZXNlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtY29wdGlj
JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2NvcHRpYyciKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWRhbmdpJykucmVzb2x2ZWRPcHRpb25zKCkuY2Fs
ZW5kYXIiLCAiJ2RhbmdpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
Y2EtZXRoaW9hYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidldGhpb3BpYy1hbWV0
ZS1hbGVtJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9w
aWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInZXRoaW9waWMnIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnYXItU0EtdS1jYS1ncmVnb3J5JykucmVzb2x2ZWRPcHRp
b25zKCkuY2FsZW5kYXIiLCAiJ2dyZWdvcmlhbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LWNhLWhlYnJldycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIido
ZWJyZXcnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pbmRpYW4n
KS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaW5kaWFuJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pYycpLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyIiwgIidpc2xhbWljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
LXUtY2EtaXNsYW1pY2MnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy1j
aXZpbCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLUlTTzg2MDEn
KS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNvODYwMSciKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWphcGFuZXNlJykucmVzb2x2ZWRPcHRpb25zKCku
Y2FsZW5kYXIiLCAiJ2phcGFuZXNlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtY2EtcGVyc2lhbicpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidwZXJzaWFu
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2Etcm9jJykucmVzb2x2
ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ3JvYyciKTsKKy8vIEZJWE1FOiBodHRwczovL2dpdGh1
Yi5jb20vdGMzOS9lY21hNDAyL2lzc3Vlcy81OQorLy8gc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtY2EtZXRoaW9waWMtYW1ldGUtYWxlbScpLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyIiwgIidldGhpb2FhJyIpOworLy8gc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtY2EtaXNsYW1pYy11bWFscXVyYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwg
Iidpc2xhbWljLXVtYWxxdXJhJyIpOworLy8gc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtY2EtaXNsYW1pYy10YmxhJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lz
bGFtaWMtdGJsYSciKTsKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNh
LWlzbGFtaWMtY2l2aWwnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy1j
aXZpbCciKTsKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFt
aWMtcmdzYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljLXJnc2EnIik7
CisKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbnVtYmVyaW5nU3lzdGVt
OidndWpyJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xhdG4nIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ib2d1cycpLnJlc29sdmVk
T3B0aW9ucygpLmxvY2FsZSIsICInZW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4tdS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICIn
bGF0biciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxhdG4nKS5y
ZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0iLCAiJ2xhdG4nIik7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1hcmFiJykucmVzb2x2ZWRPcHRpb25zKCkubG9j
YWxlIiwgIidlbi11LW51LWFyYWInIik7CisKK2xldCBudW1iZXJpbmdTeXN0ZW1zID0gWworICAi
YXJhYiIsICJhcmFiZXh0IiwgImFybW4iLCAiYXJtbmxvdyIsICJiYWxpIiwgImJlbmciLCAiY2hh
bSIsICJkZXZhIiwgImV0aGkiLAorICAiZnVsbHdpZGUiLCAiZ2VvciIsICJncmVrIiwgImdyZWts
b3ciLCAiZ3VqciIsICJndXJ1IiwgImhhbmlkYXlzIiwgImhhbmlkZWMiLAorICAiaGFucyIsICJo
YW5zZmluIiwgImhhbnQiLCAiaGFudGZpbiIsICJoZWJyIiwgImphdmEiLCAianBhbiIsICJqcGFu
ZmluIiwKKyAgImthbGkiLCAia2htciIsICJrbmRhIiwgImxhbmEiLCAibGFuYXRoYW0iLCAibGFv
byIsICJsYXRuIiwgImxlcGMiLCAibGltYiIsCisgICJtbHltIiwgIm1vbmciLCAibXRlaSIsICJt
eW1yIiwgIm15bXJzaGFuIiwgIm5rb28iLCAib2xjayIsICJvcnlhIiwgInJvbWFuIiwKKyAgInJv
bWFubG93IiwgInNhdXIiLCAic3VuZCIsICJ0YWx1IiwgInRhbWwiLCAidGFtbGRlYyIsICJ0ZWx1
IiwgInRoYWkiLCAidGlidCIsCisgICJ2YWlpIgorXQorZm9yIChsZXQgbnVtYmVyaW5nU3lzdGVt
IG9mIG51bWJlcmluZ1N5c3RlbXMpIHsKKyAgc2hvdWxkQmUoYEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuLXUtbnUtJHtudW1iZXJpbmdTeXN0ZW19JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5n
U3lzdGVtYCwgYCcke251bWJlcmluZ1N5c3RlbX0nYCk7Cit9CisKK3Nob3VsZFRocm93KCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ3dl
ZWtkYXknIH0gfSB9KSIsICInd2Vla2RheSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgd2Vla2RheTonaW52YWxpZCcgfSkiLCAnXCdSYW5nZUVycm9yOiB3ZWVr
ZGF5IG11c3QgYmUgIm5hcnJvdyIsICJzaG9ydCIsIG9yICJsb25nIlwnJyk7CitzaG91bGRCZSgi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVy
aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAidW5kZWZpbmVkIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J25hcnJvdycsIG1vbnRoOidu
dW1lcmljJywgZGF5OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5IiwgIidu
YXJyb3cnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6
J3Nob3J0JywgbW9udGg6J251bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLndlZWtkYXkiLCAiJ3Nob3J0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB3ZWVrZGF5Oidsb25nJywgbW9udGg6J251bWVyaWMnLCBkYXk6J251bWVyaWMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAiJ2xvbmcnIik7CisKK3Nob3VsZFRocm93KCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnZXJh
JyB9IH0gfSkiLCAiJ2VyYSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgZXJhOiduZXZlcicgfSkiLCAnXCdSYW5nZUVycm9yOiBlcmEgbXVzdCBiZSAibmFycm93
IiwgInNob3J0Iiwgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRp
b25zKCkuZGF5IiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBlcmE6J25hcnJvdycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygp
LmVyYSIsICInbmFycm93JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBlcmE6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwg
IidzaG9ydCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOids
b25nJywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgIidsb25nJyIp
OworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHllYXI6IHsgdG9T
dHJpbmcoKSB7IHRocm93ICd5ZWFyJyB9IH0gfSkiLCAiJ3llYXInIik7CitzaG91bGRUaHJvdygi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHllYXI6J25vcGUnIH0pIiwgJ1wnUmFuZ2VFcnJv
cjogeWVhciBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyJcJycpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmlj
JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25hcnJvdycsIHllYXI6JzItZGlnaXQnIH0p
LnJlc29sdmVkT3B0aW9ucygpLnllYXIiLCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkueWVhciIsICInbnVtZXJpYyciKTsKKworc2hvdWxkVGhyb3coIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDogeyB0b1N0cmluZygpIHsgdGhyb3cgJ21vbnRo
JyB9IH0gfSkiLCAiJ21vbnRoJyIpOworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBtb250aDoyIH0pIiwgJ1wnUmFuZ2VFcnJvcjogbW9udGggbXVzdCBiZSAiMi1kaWdp
dCIsICJudW1lcmljIiwgIm5hcnJvdyIsICJzaG9ydCIsIG9yICJsb25nIlwnJyk7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIiwgInVuZGVmaW5lZCIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonMi1kaWdpdCcsIHllYXI6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIiwgIicyLWRpZ2l0JyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonbnVtZXJpYycsIHllYXI6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIiwgIidudW1lcmljJyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonbmFycm93JywgeWVhcjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAiJ25hcnJvdyciKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J3Nob3J0JywgeWVhcjonbnVtZXJp
YycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAiJ3Nob3J0JyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonbG9uZycsIHllYXI6J251bWVyaWMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIiwgIidsb25nJyIpOworCitzaG91bGRUaHJvdygiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGRheTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ2RheScg
fSB9IH0pIiwgIidkYXknIik7CitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IGRheTonJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGRheSBtdXN0IGJlICIyLWRpZ2l0IiBvciAi
bnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51
dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAi
dW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRo
Oidsb25nJywgZGF5OicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAiJzItZGln
aXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidsb25n
JywgZGF5OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAiJ251bWVyaWMnIik7
CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgaG91cjogeyB0b1N0
cmluZygpIHsgdGhyb3cgJ2hvdXInIH0gfSB9KSIsICInaG91ciciKTsKK3Nob3VsZFRocm93KCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgaG91cjpbXSB9KSIsICdcJ1JhbmdlRXJyb3I6IGhv
dXIgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIiLCAidW5kZWZpbmVkIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcs
IGhvdXI6JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9ucygpLmhvdXIiLCAiJ251bWVyaWMnIik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcs
IGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmhvdXIiLCAiJ251bWVyaWMnIik7
CisKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygp
LmhvdXIxMiIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25z
KCkuaG91cjEyIiwgInRydWUiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdwdC1C
UicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25z
KCkuaG91cjEyIiwgImZhbHNlIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbWludXRlOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbWludXRlJyB9IH0gfSkiLCAi
J21pbnV0ZSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWlu
dXRlOm51bGwgfSkiLCAnXCdSYW5nZUVycm9yOiBtaW51dGUgbXVzdCBiZSAiMi1kaWdpdCIgb3Ig
Im51bWVyaWMiXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29s
dmVkT3B0aW9ucygpLm1pbnV0ZSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkubWludXRlIiwgIicyLWRpZ2l0JyIpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1lcmljJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiLCAiJzItZGlnaXQnIik7CisKK3Nob3VsZFRocm93KCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgc2Vjb25kOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAn
c2Vjb25kJyB9IH0gfSkiLCAiJ3NlY29uZCciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgc2Vjb25kOidiYWR2YWx1ZScgfSkiLCAnXCdSYW5nZUVycm9yOiBzZWNv
bmQgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCIsICJ1bmRlZmluZWQi
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOidudW1lcmlj
JywgaG91cjonbnVtZXJpYycsIHNlY29uZDonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCku
c2Vjb25kIiwgIicyLWRpZ2l0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1lcmljJywgc2Vjb25kOidudW1lcmljJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAiJzItZGlnaXQnIik7CisKK3Nob3VsZFRocm93
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmVOYW1lOiB7IHRvU3RyaW5nKCkg
eyB0aHJvdyAndGltZVpvbmVOYW1lJyB9IH0gfSkiLCAiJ3RpbWVab25lTmFtZSciKTsKK3Nob3Vs
ZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmVOYW1lOiduYW1lJyB9
KSIsICdcJ1JhbmdlRXJyb3I6IHRpbWVab25lTmFtZSBtdXN0IGJlICJzaG9ydCIgb3IgImxvbmci
XCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lTmFtZSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycsIHRpbWVab25l
TmFtZTonc2hvcnQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIsICInc2hvcnQn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgncHQtQlInLCB7IG1pbnV0ZTonMi1k
aWdpdCcsIGhvdXI6J251bWVyaWMnLCB0aW1lWm9uZU5hbWU6J2xvbmcnIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lTmFtZSIsICInbG9uZyciKTsKKworbGV0IGxvY2FsZXNTYW1wbGUgPSBb
CisgICJhciIsICJhci1TQSIsICJiZSIsICJjYSIsICJjcyIsICJkYSIsICJkZSIsICJkZS1DSCIs
ICJlbiIsICJlbi1BVSIsICJlbi1HQiIsCisgICJlbi1QSCIsICJlbi1VUyIsICJlbCIsICJlcyIs
ICJlcy1NWCIsICJlcy1QUiIsICJmciIsICJmci1DQSIsICJnYSIsICJoaS1JTiIsCisgICJpcyIs
ICJpdCIsICJpdyIsICJqYSIsICJrby1LUiIsICJsdCIsICJsdiIsICJtayIsICJtcyIsICJtdCIs
ICJuYiIsICJubCIsCisgICJubyIsICJwbCIsICJwdCIsICJwdC1CUiIsICJybyIsICJydSIsICJz
ayIsICJzbCIsICJzciIsICJzdiIsICJ0aCIsICJ0ciIsCisgICJ1ayIsICJ2aSIsICJ6aCIsICJ6
aC1DTiIsICJ6aC1IYW50LUhLIiwgInpoLVRXIgorXTsKK2ZvciAobGV0IGxvY2FsZSBvZiBsb2Nh
bGVzU2FtcGxlKSB7CisgIC8vIFRoZSBmb2xsb3dpbmcgc3Vic2V0cyBtdXN0IGJlIGF2YWlsYWJs
ZSBmb3IgZWFjaCBsb2NhbGU6CisgIC8vIHdlZWtkYXksIHllYXIsIG1vbnRoLCBkYXksIGhvdXIs
IG1pbnV0ZSwgc2Vjb25kCisgIHNob3VsZEJlVHJ1ZShgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdl
ZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51
bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIiR7bG9jYWxl
fSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpYCk7CisgIC8vIHdlZWtk
YXksIHllYXIsIG1vbnRoLCBkYXkKKyAgc2hvdWxkQmVUcnVlKGAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCIk
e2xvY2FsZX0iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKWApOworICAv
LyB5ZWFyLCBtb250aCwgZGF5CisgIHNob3VsZEJlVHJ1ZShgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCIke2xvY2FsZX0iLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKWApOworICAvLyB5ZWFyLCBtb250aAorICBzaG91
bGRCZVRydWUoYAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAi
bG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCIke2xvY2Fs
ZX0iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKWApOworICAvLyBtb250
aCwgZGF5CisgIHNob3VsZEJlVHJ1ZShgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9u
ZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiJHtsb2NhbGV9Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbClg
KTsKKyAgLy8gaG91ciwgbWludXRlLCBzZWNvbmQKKyAgc2hvdWxkQmVUcnVlKGAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCIke2xv
Y2FsZX0iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKWApOworICAvLyBo
b3VyLCBtaW51dGUKKyAgc2hvdWxkQmVUcnVlKGAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjog
Im51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoIiR7bG9jYWxlfSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpYCk7Cit9CmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXgg
OTYyZWY4MWQxODQ2NDFjMDJmYzg4N2RiYzk4M2RkMWExODczOTFiYy4uOWMwNjI2MGE4NTdlZDBk
ZDhhMTcxMTI5Zjg0YTA5MTJhMTZiYTcxYiAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0No
YW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE1LTEyLTE4ICBBbmR5IFZhbldhZ29uZXIgIDxh
bmR5QGluc3RydWN0dXJlLmNvbT4KKworICAgICAgICBbSU5UTF0gSW1wbGVtZW50IEludGwuRGF0
ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyAoKQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3NjAzCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvT3B0aW9uc1dp
bi5jbWFrZTogRGlzYWJsZSBJTlRMIG9uIFdpbmRvd3MgZm9yIG5vdworCiAyMDE1LTEyLTE2ICBZ
b3Vlbm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CiAKICAgICAgICAgW0Zl
dGNoIEFQSV0gQWRkIGZldGNoIEFQSSBjb21waWxlIHRpbWUgZmxhZwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>267662</attachid>
            <date>2015-12-18 17:14:24 -0800</date>
            <delta_ts>2015-12-21 15:38:05 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147603-20151218181345.patch</filename>
            <type>text/plain</type>
            <size>231029</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk0MjY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAy
MDhiM2ViYjYxYjZlY2YyODcyMDVlNGY4M2JjYzY0NGJlM2E2NjZiLi4wOTU5MzJhZDY4NDI5NTNl
NGViNGMwYmZlYTViZTEyODM4MmU3OGE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0OSBAQAorMjAxNS0xMi0xOCAgQW5keSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVy
ZS5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudHMgSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0IGFu
ZCByZWxhdGVkIGFic3RyYWN0IG9wZXJhdGlvbnMKKyAgICAgICAgdXNpbmcgSUNVLiBMYXp5IGlu
aXRpYWxpemF0aW9uIGlzIHVzZWQgZm9yIERhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS4KKyAgICAg
ICAgUmVmYWN0b3IgdG8gYWxpZ24gd2l0aCBDb2xsYXRvciB3b3JrLgorCisgICAgICAgICogaWN1
L3VuaWNvZGUvdWRhdHBnLmg6IEFkZGVkLgorICAgICAgICAqIGljdS91bmljb2RlL3VudW1zeXMu
aDogQWRkZWQuCisgICAgICAgICogcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6ZGVmYXVs
dFRpbWVab25lKToKKyAgICAgICAgKEpTQzo6Y2Fub25pY2FsaXplVGltZVpvbmVOYW1lKToKKyAg
ICAgICAgKEpTQzo6bG9jYWxlRGF0YSk6CisgICAgICAgIChKU0M6OnRvRGF0ZVRpbWVPcHRpb25z
KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRGb3JtYXRzRnJvbVBhdHRl
cm4pOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmluaXRpYWxpemVEYXRlVGlt
ZUZvcm1hdCk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6d2Vla2RheVN0cmlu
Zyk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6ZXJhU3RyaW5nKToKKyAgICAg
ICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojp5ZWFyU3RyaW5nKToKKyAgICAgICAgKEpTQzo6
SW50bERhdGVUaW1lRm9ybWF0Ojptb250aFN0cmluZyk6CisgICAgICAgIChKU0M6OkludGxEYXRl
VGltZUZvcm1hdDo6ZGF5U3RyaW5nKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0
Ojpob3VyU3RyaW5nKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjptaW51dGVT
dHJpbmcpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNlY29uZFN0cmluZyk6
CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6dGltZVpvbmVOYW1lU3RyaW5nKToK
KyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpyZXNvbHZlZE9wdGlvbnMpOgorICAg
ICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmZvcm1hdCk6CisgICAgICAgIChKU0M6Oklu
dGxEYXRlVGltZUZvcm1hdEZ1bmNGb3JtYXREYXRlVGltZSk6IERlbGV0ZWQuCisgICAgICAgICog
cnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuaDoKKyAgICAgICAgKiBydW50aW1lL0ludGxEYXRl
VGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SW50bERh
dGVUaW1lRm9ybWF0KToKKyAgICAgICAgKEpTQzo6Y2FsbEludGxEYXRlVGltZUZvcm1hdCk6Cisg
ICAgICAgICogcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwOgorICAgICAg
ICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUpOgorICAgICAgICAo
SlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQpOgorICAgICAgICAo
SlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKToKKyAg
ICAgICAgKiBydW50aW1lL0ludGxPYmplY3QuY3BwOgorICAgICAgICAoSlNDOjpyZXNvbHZlTG9j
YWxlKToKKyAgICAgICAgKEpTQzo6Z2V0TnVtYmVyaW5nU3lzdGVtc0ZvckxvY2FsZSk6CisgICAg
ICAgICogcnVudGltZS9JbnRsT2JqZWN0Lmg6CisKIDIwMTUtMTItMTggIENzYWJhIE9zenRyb2dv
bsOhYyAgPG9zc3lAd2Via2l0Lm9yZz4KIAogICAgICAgICBbQVJNXSBBZGQgdGhlIG1pc3Npbmcg
c2V0dXBBcmd1bWVudHNXaXRoRXhlY1N0YXRlIGZ1bmN0aW9ucyBhZnRlciByMTkzOTc0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRhdHBnLmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRhdHBnLmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2RjN2U4
OWYyZGZiNjQwMjIwZjM1NzA4ODM1OGI2ZDljNTc4ZWIwZQotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9pY3UvdW5pY29kZS91ZGF0cGcuaApAQCAtMCwwICsxLDU4NiBA
QAorLyoKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyoKKyogICBDb3B5cmlnaHQgKEMpIDIwMDct
MjAxMCwgSW50ZXJuYXRpb25hbCBCdXNpbmVzcyBNYWNoaW5lcworKiAgIENvcnBvcmF0aW9uIGFu
ZCBvdGhlcnMuICBBbGwgUmlnaHRzIFJlc2VydmVkLgorKgorKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KgorKiAgIGZpbGUgbmFtZTogIHVkYXRwZy5oCisqICAgZW5jb2Rpbmc6ICAgVVMtQVNDSUkKKyog
ICB0YWIgc2l6ZTogICA4IChub3QgdXNlZCkKKyogICBpbmRlbnRhdGlvbjo0CisqCisqICAgY3Jl
YXRlZCBvbjogMjAwN2p1bDMwCisqICAgY3JlYXRlZCBieTogTWFya3VzIFcuIFNjaGVyZXIKKyov
CisKKyNpZm5kZWYgX19VREFUUEdfSF9fCisjZGVmaW5lIF9fVURBVFBHX0hfXworCisjaW5jbHVk
ZSAidW5pY29kZS91dHlwZXMuaCIKKyNpbmNsdWRlICJ1bmljb2RlL3VlbnVtLmgiCisjaW5jbHVk
ZSAidW5pY29kZS9sb2NhbHBvaW50ZXIuaCIKKworLyoqCisgKiBcZmlsZQorICogXGJyaWVmIEMg
QVBJOiBXcmFwcGVyIGZvciBEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKHVuaWNvZGUvZHRwdG5n
ZW4uaCkuCisgKgorICogVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciBwcm92aWRlcyBmbGV4aWJs
ZSBnZW5lcmF0aW9uIG9mIGRhdGUgZm9ybWF0IHBhdHRlcm5zLCAKKyAqIGxpa2UgInl5LU1NLWRk
Ii4gVGhlIHVzZXIgY2FuIGJ1aWxkIHVwIHRoZSBnZW5lcmF0b3IgYnkgYWRkaW5nIHN1Y2Nlc3Np
dmUgCisgKiBwYXR0ZXJucy4gT25jZSB0aGF0IGlzIGRvbmUsIGEgcXVlcnkgY2FuIGJlIG1hZGUg
dXNpbmcgYSAic2tlbGV0b24iLCB3aGljaCBpcyAKKyAqIGEgcGF0dGVybiB3aGljaCBqdXN0IGlu
Y2x1ZGVzIHRoZSBkZXNpcmVkIGZpZWxkcyBhbmQgbGVuZ3Rocy4gVGhlIGdlbmVyYXRvciAKKyAq
IHdpbGwgcmV0dXJuIHRoZSAiYmVzdCBmaXQiIHBhdHRlcm4gY29ycmVzcG9uZGluZyB0byB0aGF0
IHNrZWxldG9uLgorICogPHA+VGhlIG1haW4gbWV0aG9kIHBlb3BsZSB3aWxsIHVzZSBpcyB1ZGF0
cGdfZ2V0QmVzdFBhdHRlcm4sIHNpbmNlIG5vcm1hbGx5CisgKiBVRGF0ZVRpbWVQYXR0ZXJuR2Vu
ZXJhdG9yIGlzIHByZS1idWlsdCB3aXRoIGRhdGEgZnJvbSBhIHBhcnRpY3VsYXIgbG9jYWxlLiAK
KyAqIEhvd2V2ZXIsIGdlbmVyYXRvcnMgY2FuIGJlIGJ1aWx0IGRpcmVjdGx5IGZyb20gb3RoZXIg
ZGF0YSBhcyB3ZWxsLgorICogPHA+PGk+SXNzdWU6IG1heSBiZSB1c2VmdWwgdG8gYWxzbyBoYXZl
IGEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIHRoZSBsaXN0IG9mIAorICogZmllbGRzIGluIGEgcGF0
dGVybiwgaW4gb3JkZXIsIHNpbmNlIHdlIGhhdmUgdGhhdCBpbnRlcm5hbGx5LgorICogVGhhdCB3
b3VsZCBiZSB1c2VmdWwgZm9yIGdldHRpbmcgdGhlIFVJIG9yZGVyIG9mIGZpZWxkIGVsZW1lbnRz
LjwvaT4KKyAqLworCisvKioKKyAqIE9wYXF1ZSB0eXBlIGZvciBhIGRhdGUvdGltZSBwYXR0ZXJu
IGdlbmVyYXRvciBvYmplY3QuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLwordHlwZWRlZiB2b2lk
ICpVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOworCisvKioKKyAqIEZpZWxkIG51bWJlciBjb25z
dGFudHMgZm9yIHVkYXRwZ19nZXRBcHBlbmRJdGVtRm9ybWF0cygpIGFuZCBzaW1pbGFyIGZ1bmN0
aW9ucy4KKyAqIFRoZXNlIGNvbnN0YW50cyBhcmUgc2VwYXJhdGUgZnJvbSBVRGF0ZUZvcm1hdEZp
ZWxkIGRlc3BpdGUgc2VtYW50aWMgb3ZlcmxhcAorICogYmVjYXVzZSBzb21lIGZpZWxkcyBhcmUg
bWVyZ2VkIGZvciB0aGUgZGF0ZS90aW1lIHBhdHRlcm4gZ2VuZXJhdG9yLgorICogQHN0YWJsZSBJ
Q1UgMy44CisgKi8KK3R5cGVkZWYgZW51bSBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQgeworICAgIC8q
KiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfRVJBX0ZJRUxELAorICAgIC8qKiBAc3Rh
YmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfWUVBUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJ
Q1UgMy44ICovCisgICAgVURBVFBHX1FVQVJURVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNV
IDMuOCAqLworICAgIFVEQVRQR19NT05USF9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44
ICovCisgICAgVURBVFBHX1dFRUtfT0ZfWUVBUl9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1Ug
My44ICovCisgICAgVURBVFBHX1dFRUtfT0ZfTU9OVEhfRklFTEQsCisgICAgLyoqIEBzdGFibGUg
SUNVIDMuOCAqLworICAgIFVEQVRQR19XRUVLREFZX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElD
VSAzLjggKi8KKyAgICBVREFUUEdfREFZX09GX1lFQVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUg
SUNVIDMuOCAqLworICAgIFVEQVRQR19EQVlfT0ZfV0VFS19JTl9NT05USF9GSUVMRCwKKyAgICAv
KiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0RBWV9GSUVMRCwKKyAgICAvKiogQHN0
YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0RBWVBFUklPRF9GSUVMRCwKKyAgICAvKiogQHN0
YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0hPVVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUg
SUNVIDMuOCAqLworICAgIFVEQVRQR19NSU5VVEVfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNV
IDMuOCAqLworICAgIFVEQVRQR19TRUNPTkRfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19GUkFDVElPTkFMX1NFQ09ORF9GSUVMRCwKKyAgICAvKiogQHN0YWJs
ZSBJQ1UgMy44ICovCisgICAgVURBVFBHX1pPTkVfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNV
IDMuOCAqLworICAgIFVEQVRQR19GSUVMRF9DT1VOVAorfSBVRGF0ZVRpbWVQYXR0ZXJuRmllbGQ7
CisKKy8qKgorICogTWFza3MgdG8gY29udHJvbCBmb3JjaW5nIHRoZSBsZW5ndGggb2Ygc3BlY2lm
aWVkIGZpZWxkcyBpbiB0aGUgcmV0dXJuZWQKKyAqIHBhdHRlcm4gdG8gbWF0Y2ggdGhvc2UgaW4g
dGhlIHNrZWxldG9uICh3aGVuIHRoaXMgd291bGQgbm90IGhhcHBlbgorICogb3RoZXJ3aXNlKS4g
VGhlc2UgbWF5IGJlIGNvbWJpbmVkIHRvIGZvcmNlIHRoZSBsZW5ndGggb2YgbXVsdGlwbGUgZmll
bGRzLgorICogVXNlZCB3aXRoIHVkYXRwZ19nZXRCZXN0UGF0dGVybldpdGhPcHRpb25zLCB1ZGF0
cGdfcmVwbGFjZUZpZWxkVHlwZXNXaXRoT3B0aW9ucy4KKyAqIEBzdGFibGUgSUNVIDQuNAorICov
Cit0eXBlZGVmIGVudW0gVURhdGVUaW1lUGF0dGVybk1hdGNoT3B0aW9ucyB7CisgICAgLyoqIEBz
dGFibGUgSUNVIDQuNCAqLworICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TID0gMCwKKyAgICAv
KiogQHN0YWJsZSBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX0hPVVJfRklFTERfTEVOR1RI
ID0gMSA8PCBVREFUUEdfSE9VUl9GSUVMRCwKKyAgICAvKiogQGludGVybmFsIElDVSA0LjQgKi8K
KyAgICBVREFUUEdfTUFUQ0hfTUlOVVRFX0ZJRUxEX0xFTkdUSCA9IDEgPDwgVURBVFBHX01JTlVU
RV9GSUVMRCwKKyAgICAvKiogQGludGVybmFsIElDVSA0LjQgKi8KKyAgICBVREFUUEdfTUFUQ0hf
U0VDT05EX0ZJRUxEX0xFTkdUSCA9IDEgPDwgVURBVFBHX1NFQ09ORF9GSUVMRCwKKyAgICAvKiog
QHN0YWJsZSBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX0FMTF9GSUVMRFNfTEVOR1RIID0g
KDEgPDwgVURBVFBHX0ZJRUxEX0NPVU5UKSAtIDEKK30gVURhdGVUaW1lUGF0dGVybk1hdGNoT3B0
aW9uczsKKworLyoqCisgKiBTdGF0dXMgcmV0dXJuIHZhbHVlcyBmcm9tIHVkYXRwZ19hZGRQYXR0
ZXJuKCkuCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLwordHlwZWRlZiBlbnVtIFVEYXRlVGltZVBh
dHRlcm5Db25mbGljdCB7CisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19O
T19DT05GTElDVCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0JBU0Vf
Q09ORkxJQ1QsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19DT05GTElD
VCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0NPTkZMSUNUX0NPVU5U
Cit9IFVEYXRlVGltZVBhdHRlcm5Db25mbGljdDsKKworLyoqCisgICogT3BlbiBhIGdlbmVyYXRv
ciBhY2NvcmRpbmcgdG8gYSBnaXZlbiBsb2NhbGUuCisgICogQHBhcmFtIGxvY2FsZQorICAqIEBw
YXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5v
dCBpbmRpY2F0ZSBhCisgICogICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1
bmN0aW9uIGNhbGwuCisgICogQHJldHVybiBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvci4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIFVEYXRlVGltZVBh
dHRlcm5HZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVuKGNvbnN0IGNoYXIgKmxvY2Fs
ZSwgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIE9wZW4gYW4gZW1wdHkgZ2Vu
ZXJhdG9yLCB0byBiZSBjb25zdHJ1Y3RlZCB3aXRoIHVkYXRwZ19hZGRQYXR0ZXJuKC4uLikgZXRj
LgorICAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGlj
aCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgICogICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZv
cmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgICogQHJldHVybiBhIHBvaW50ZXIgdG8gVURhdGVUaW1l
UGF0dGVybkdlbmVyYXRvci4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIFVE
YXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVuRW1wdHkoVUVy
cm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIENsb3NlIGEgZ2VuZXJhdG9yLgorICAq
IEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAq
IEBzdGFibGUgSUNVIDMuOAorICAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19j
bG9zZShVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnKTsKKworI2lmIFVfU0hPV19DUExV
U1BMVVNfQVBJCisKK1VfTkFNRVNQQUNFX0JFR0lOCisKKy8qKgorICogXGNsYXNzIExvY2FsVURh
dGVUaW1lUGF0dGVybkdlbmVyYXRvclBvaW50ZXIKKyAqICJTbWFydCBwb2ludGVyIiBjbGFzcywg
Y2xvc2VzIGEgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciB2aWEgdWRhdHBnX2Nsb3NlKCkuCisg
KiBGb3IgbW9zdCBtZXRob2RzIHNlZSB0aGUgTG9jYWxQb2ludGVyQmFzZSBiYXNlIGNsYXNzLgor
ICoKKyAqIEBzZWUgTG9jYWxQb2ludGVyQmFzZQorICogQHNlZSBMb2NhbFBvaW50ZXIKKyAqIEBz
dGFibGUgSUNVIDQuNAorICovCitVX0RFRklORV9MT0NBTF9PUEVOX1BPSU5URVIoTG9jYWxVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yUG9pbnRlciwgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciwg
dWRhdHBnX2Nsb3NlKTsKKworVV9OQU1FU1BBQ0VfRU5ECisKKyNlbmRpZgorCisvKioKKyAgKiBD
cmVhdGUgYSBjb3B5IHBmIGEgZ2VuZXJhdG9yLgorICAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0
byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yIHRvIGJlIGNvcGllZC4KKyAgKiBAcGFyYW0gcEVy
cm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNh
dGUgYQorICAqICAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBj
YWxsLgorICAqIEByZXR1cm4gYSBwb2ludGVyIHRvIGEgbmV3IFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IuCisgICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3IgKiBVX0VYUE9SVDIKK3VkYXRwZ19jbG9uZShjb25zdCBVRGF0ZVRpbWVQYXR0
ZXJuR2VuZXJhdG9yICpkdHBnLCBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBH
ZXQgdGhlIGJlc3QgcGF0dGVybiBtYXRjaGluZyB0aGUgaW5wdXQgc2tlbGV0b24uIEl0IGlzIGd1
YXJhbnRlZWQgdG8KKyAqIGhhdmUgYWxsIG9mIHRoZSBmaWVsZHMgaW4gdGhlIHNrZWxldG9uLgor
ICogCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGlt
ZVBhdHRlcm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIg
d2hpY2ggaXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhh
biBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNh
bGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRo
aXMgZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVy
YXRvciBvYmplY3QuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQ
YXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHNrZWxldG9uCisgKiAgICAgICAgICAgIFRoZSBz
a2VsZXRvbiBpcyBhIHBhdHRlcm4gY29udGFpbmluZyBvbmx5IHRoZSB2YXJpYWJsZSBmaWVsZHMu
CisgKiAgICAgICAgICAgIEZvciBleGFtcGxlLCAiTU1NZGQiIGFuZCAibW1oaCIgYXJlIHNrZWxl
dG9ucy4KKyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBza2VsZXRvbgorICogQHBhcmFt
IGJlc3RQYXR0ZXJuCisgKiAgICAgICAgICAgIFRoZSBiZXN0IHBhdHRlcm4gZm91bmQgZnJvbSB0
aGUgZ2l2ZW4gc2tlbGV0b24uCisgKiBAcGFyYW0gY2FwYWNpdHkgdGhlIGNhcGFjaXR5IG9mIGJl
c3RQYXR0ZXJuLgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JD
b2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgIGZhaWx1
cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGJl
c3RQYXR0ZXJuLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9F
WFBPUlQyCit1ZGF0cGdfZ2V0QmVzdFBhdHRlcm4oVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAq
ZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMy
X3QgbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgIFVDaGFyICpiZXN0UGF0dGVybiwgaW50
MzJfdCBjYXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICBVRXJyb3JDb2RlICpwRXJyb3JD
b2RlKTsKKworLyoqCisgKiBHZXQgdGhlIGJlc3QgcGF0dGVybiBtYXRjaGluZyB0aGUgaW5wdXQg
c2tlbGV0b24uIEl0IGlzIGd1YXJhbnRlZWQgdG8KKyAqIGhhdmUgYWxsIG9mIHRoZSBmaWVsZHMg
aW4gdGhlIHNrZWxldG9uLgorICogCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEg
bm9uLWNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVm
dWwgcGF0dGVybiBwYXJzZXIgd2hpY2ggaXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmpl
Y3QsCisgKiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4K
KyAqIENvbnNlY3V0aXZlIGNhbGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNo
IG90aGVyLAorICogYnV0IHRoaXMgZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5
IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBvYmplY3QuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9p
bnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHNrZWxldG9uCisg
KiAgICAgICAgICAgIFRoZSBza2VsZXRvbiBpcyBhIHBhdHRlcm4gY29udGFpbmluZyBvbmx5IHRo
ZSB2YXJpYWJsZSBmaWVsZHMuCisgKiAgICAgICAgICAgIEZvciBleGFtcGxlLCAiTU1NZGQiIGFu
ZCAibW1oaCIgYXJlIHNrZWxldG9ucy4KKyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBz
a2VsZXRvbgorICogQHBhcmFtIG9wdGlvbnMKKyAqICAgICAgICAgICAgT3B0aW9ucyBmb3IgZm9y
Y2luZyB0aGUgbGVuZ3RoIG9mIHNwZWNpZmllZCBmaWVsZHMgaW4gdGhlCisgKiAgICAgICAgICAg
IHJldHVybmVkIHBhdHRlcm4gdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNrZWxldG9uICh3aGVuIHRo
aXMKKyAqICAgICAgICAgICAgd291bGQgbm90IGhhcHBlbiBvdGhlcndpc2UpLiBGb3IgZGVmYXVs
dCBiZWhhdmlvciwgdXNlCisgKiAgICAgICAgICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05TLgor
ICogQHBhcmFtIGJlc3RQYXR0ZXJuCisgKiAgICAgICAgICAgIFRoZSBiZXN0IHBhdHRlcm4gZm91
bmQgZnJvbSB0aGUgZ2l2ZW4gc2tlbGV0b24uCisgKiBAcGFyYW0gY2FwYWNpdHkKKyAqICAgICAg
ICAgICAgdGhlIGNhcGFjaXR5IG9mIGJlc3RQYXR0ZXJuLgorICogQHBhcmFtIHBFcnJvckNvZGUK
KyAqICAgICAgICAgICAgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90
IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNh
bGwuCisgKiBAcmV0dXJuIHRoZSBsZW5ndGggb2YgYmVzdFBhdHRlcm4uCisgKiBAc3RhYmxlIElD
VSA0LjQKKyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3VkYXRwZ19nZXRCZXN0UGF0
dGVybldpdGhPcHRpb25zKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tlbGV0b24sIGludDMyX3Qg
bGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVy
bk1hdGNoT3B0aW9ucyBvcHRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
VUNoYXIgKmJlc3RQYXR0ZXJuLCBpbnQzMl90IGNhcGFjaXR5LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIEdldCBh
IHVuaXF1ZSBza2VsZXRvbiBmcm9tIGEgZ2l2ZW4gcGF0dGVybi4gRm9yIGV4YW1wbGUsCisgICog
Ym90aCAiTU1NLWRkIiBhbmQgImRkL01NTSIgcHJvZHVjZSB0aGUgc2tlbGV0b24gIk1NTWRkIi4K
KyAgKiAKKyAgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRl
VGltZVBhdHRlcm5HZW5lcmF0b3I6CisgICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFy
c2VyIHdoaWNoIGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICAqIHJhdGhl
ciB0aGFuIGNyZWF0aW5nIG9uZSBmb3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICAqIENvbnNlY3V0
aXZlIGNhbGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICAq
IGJ1dCB0aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmds
ZSBnZW5lcmF0b3Igb2JqZWN0LgorICAqCisgICogQHBhcmFtIGR0cGcgICAgIGEgcG9pbnRlciB0
byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBwYXJhbSBwYXR0ZXJuICBpbnB1dCBw
YXR0ZXJuLCBzdWNoIGFzICJkZC9NTU0iLgorICAqIEBwYXJhbSBsZW5ndGggICB0aGUgbGVuZ3Ro
IG9mIHBhdHRlcm4uCisgICogQHBhcmFtIHNrZWxldG9uIHN1Y2ggYXMgIk1NTWRkIgorICAqIEBw
YXJhbSBjYXBhY2l0eSB0aGUgY2FwYWNpdHkgb2Ygc2tlbGV0b24uCisgICogQHBhcmFtIHBFcnJv
ckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRl
IGEKKyAgKiAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxs
LgorICAqIEByZXR1cm4gdGhlIGxlbmd0aCBvZiBza2VsZXRvbi4KKyAgKiBAc3RhYmxlIElDVSAz
LjgKKyAgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQyCit1ZGF0cGdfZ2V0U2tlbGV0b24o
VURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICBjb25z
dCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgVUNo
YXIgKnNrZWxldG9uLCBpbnQzMl90IGNhcGFjaXR5LAorICAgICAgICAgICAgICAgICAgIFVFcnJv
ckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEdldCBhIHVuaXF1ZSBiYXNlIHNrZWxldG9u
IGZyb20gYSBnaXZlbiBwYXR0ZXJuLiBUaGlzIGlzIHRoZSBzYW1lCisgKiBhcyB0aGUgc2tlbGV0
b24sIGV4Y2VwdCB0aGF0IGRpZmZlcmVuY2VzIGluIGxlbmd0aCBhcmUgbWluaW1pemVkIHNvCisg
KiBhcyB0byBvbmx5IHByZXNlcnZlIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gc3RyaW5nIGFuZCBu
dW1lcmljIGZvcm0uIFNvCisgKiBmb3IgZXhhbXBsZSwgYm90aCAiTU1NLWRkIiBhbmQgImQvTU1N
IiBwcm9kdWNlIHRoZSBza2VsZXRvbiAiTU1NZCIKKyAqIChub3RpY2UgdGhlIHNpbmdsZSBkKS4K
KyAqCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGlt
ZVBhdHRlcm5HZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIg
d2hpY2ggaXMgc2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhh
biBjcmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNh
bGxzIHRvIHRoaXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRo
aXMgZnVuY3Rpb24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVy
YXRvciBvYmplY3QuCisgKgorICogQHBhcmFtIGR0cGcgICAgIGEgcG9pbnRlciB0byBVRGF0ZVRp
bWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBhdHRlcm4gIGlucHV0IHBhdHRlcm4sIHN1
Y2ggYXMgImRkL01NTSIuCisgKiBAcGFyYW0gbGVuZ3RoICAgdGhlIGxlbmd0aCBvZiBwYXR0ZXJu
LgorICogQHBhcmFtIGJhc2VTa2VsZXRvbiBzdWNoIGFzICJNZCIKKyAqIEBwYXJhbSBjYXBhY2l0
eSB0aGUgY2FwYWNpdHkgb2YgYmFzZSBza2VsZXRvbi4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEg
cG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAg
ICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJl
dHVybiB0aGUgbGVuZ3RoIG9mIGJhc2VTa2VsZXRvbi4KKyAqIEBzdGFibGUgSUNVIDMuOAorICov
CitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRhdHBnX2dldEJhc2VTa2VsZXRvbihVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAg
IFVDaGFyICpiYXNlU2tlbGV0b24sIGludDMyX3QgY2FwYWNpdHksCisgICAgICAgICAgICAgICAg
ICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEFkZHMgYSBwYXR0ZXJu
IHRvIHRoZSBnZW5lcmF0b3IuIElmIHRoZSBwYXR0ZXJuIGhhcyB0aGUgc2FtZSBza2VsZXRvbiBh
cworICogYW4gZXhpc3RpbmcgcGF0dGVybiwgYW5kIHRoZSBvdmVycmlkZSBwYXJhbWV0ZXIgaXMg
c2V0LCB0aGVuIHRoZSBwcmV2aW91cworICogdmFsdWUgaXMgb3ZlcnJpZGVuLiBPdGhlcndpc2Us
IHRoZSBwcmV2aW91cyB2YWx1ZSBpcyByZXRhaW5lZC4gSW4gZWl0aGVyCisgKiBjYXNlLCB0aGUg
Y29uZmxpY3Rpbmcgc3RhdHVzIGlzIHNldCBhbmQgcHJldmlvdXMgdmFsZSBpcyBzdG9yZWQgaW4g
CisgKiBjb25mbGljdGluZyBwYXR0ZXJuLgorICogPHA+CisgKiBOb3RlIHRoYXQgc2luZ2xlLWZp
ZWxkIHBhdHRlcm5zIChsaWtlICJNTU0iKSBhcmUgYXV0b21hdGljYWxseSBhZGRlZCwgYW5kCisg
KiBkb24ndCBuZWVkIHRvIGJlIGFkZGVkIGV4cGxpY2l0bHkhCisgKgorICogQHBhcmFtIGR0cGcg
ICAgIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBh
dHRlcm4gIGlucHV0IHBhdHRlcm4sIHN1Y2ggYXMgImRkL01NTSIKKyAqIEBwYXJhbSBwYXR0ZXJu
TGVuZ3RoIHRoZSBsZW5ndGggb2YgcGF0dGVybi4KKyAqIEBwYXJhbSBvdmVycmlkZSAgV2hlbiBl
eGlzdGluZyB2YWx1ZXMgYXJlIHRvIGJlIG92ZXJyaWRkZW4gdXNlIHRydWUsIAorICogICAgICAg
ICAgICAgICAgICBvdGhlcndpc2UgdXNlIGZhbHNlLgorICogQHBhcmFtIGNvbmZsaWN0aW5nUGF0
dGVybiAgUHJldmlvdXMgcGF0dGVybiB3aXRoIHRoZSBzYW1lIHNrZWxldG9uLgorICogQHBhcmFt
IGNhcGFjaXR5IHRoZSBjYXBhY2l0eSBvZiBjb25mbGljdGluZ1BhdHRlcm4uCisgKiBAcGFyYW0g
cExlbmd0aCBhIHBvaW50ZXIgdG8gdGhlIGxlbmd0aCBvZiBjb25mbGljdGluZ1BhdHRlcm4uCisg
KiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVz
dCBub3QgaW5kaWNhdGUgYQorICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUg
ZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1cm4gY29uZmxpY3Rpbmcgc3RhdHVzLiBUaGUgdmFsdWUg
Y291bGQgYmUgVURBVFBHX05PX0NPTkZMSUNULCAKKyAqICAgICAgICAgICAgICAgICAgVURBVFBH
X0JBU0VfQ09ORkxJQ1Qgb3IgVURBVFBHX0NPTkZMSUNULgorICogQHN0YWJsZSBJQ1UgMy44Cisg
Ki8KK1VfU1RBQkxFIFVEYXRlVGltZVBhdHRlcm5Db25mbGljdCBVX0VYUE9SVDIKK3VkYXRwZ19h
ZGRQYXR0ZXJuKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAg
ICAgICBjb25zdCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBwYXR0ZXJuTGVuZ3RoLAorICAgICAg
ICAgICAgICAgICAgVUJvb2wgb3ZlcnJpZGUsCisgICAgICAgICAgICAgICAgICBVQ2hhciAqY29u
ZmxpY3RpbmdQYXR0ZXJuLCBpbnQzMl90IGNhcGFjaXR5LCBpbnQzMl90ICpwTGVuZ3RoLAorICAg
ICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICAqIEFuIEFw
cGVuZEl0ZW0gZm9ybWF0IGlzIGEgcGF0dGVybiB1c2VkIHRvIGFwcGVuZCBhIGZpZWxkIGlmIHRo
ZXJlIGlzIG5vCisgICogZ29vZCBtYXRjaC4gRm9yIGV4YW1wbGUsIHN1cHBvc2UgdGhhdCB0aGUg
aW5wdXQgc2tlbGV0b24gaXMgIkd5eXl5TU1NZCIsCisgICogYW5kIHRoZXJlIGlzIG5vIG1hdGNo
aW5nIHBhdHRlcm4gaW50ZXJuYWxseSwgYnV0IHRoZXJlIGlzIGEgcGF0dGVybgorICAqIG1hdGNo
aW5nICJ5eXl5TU1NZCIsIHNheSAiZC1NTS15eXl5Ii4gVGhlbiB0aGF0IHBhdHRlcm4gaXMgdXNl
ZCwgcGx1cyB0aGUKKyAgKiBHLiBUaGUgd2F5IHRoZXNlIHR3byBhcmUgY29uam9pbmVkIGlzIGJ5
IHVzaW5nIHRoZSBBcHBlbmRJdGVtRm9ybWF0IGZvciBHCisgICogKGVyYSkuIFNvIGlmIHRoYXQg
dmFsdWUgaXMsIHNheSAiezB9LCB7MX0iIHRoZW4gdGhlIGZpbmFsIHJlc3VsdGluZworICAqIHBh
dHRlcm4gaXMgImQtTU0teXl5eSwgRyIuCisgICogPHA+CisgICogVGhlcmUgYXJlIGFjdHVhbGx5
IHRocmVlIGF2YWlsYWJsZSB2YXJpYWJsZXM6IHswfSBpcyB0aGUgcGF0dGVybiBzbyBmYXIsCisg
ICogezF9IGlzIHRoZSBlbGVtZW50IHdlIGFyZSBhZGRpbmcsIGFuZCB7Mn0gaXMgdGhlIG5hbWUg
b2YgdGhlIGVsZW1lbnQuCisgICogPHA+CisgICogVGhpcyByZWZsZWN0cyB0aGUgd2F5IHRoYXQg
dGhlIENMRFIgZGF0YSBpcyBvcmdhbml6ZWQuCisgICoKKyAgKiBAcGFyYW0gZHRwZyAgIGEgcG9p
bnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAqIEBwYXJhbSBmaWVsZCAgVURh
dGVUaW1lUGF0dGVybkZpZWxkLCBzdWNoIGFzIFVEQVRQR19FUkFfRklFTEQKKyAgKiBAcGFyYW0g
dmFsdWUgIHBhdHRlcm4sIHN1Y2ggYXMgInswfSwgezF9IgorICAqIEBwYXJhbSBsZW5ndGggdGhl
IGxlbmd0aCBvZiB2YWx1ZS4KKyAgKiBAc3RhYmxlIElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIHZv
aWQgVV9FWFBPUlQyCit1ZGF0cGdfc2V0QXBwZW5kSXRlbUZvcm1hdChVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0
dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIg
KnZhbHVlLCBpbnQzMl90IGxlbmd0aCk7CisKKy8qKgorICogR2V0dGVyIGNvcnJlc3BvbmRpbmcg
dG8gc2V0QXBwZW5kSXRlbUZvcm1hdC4gVmFsdWVzIGJlbG93IDAgb3IgYXQgb3IKKyAqIGFib3Zl
IFVEQVRQR19GSUVMRF9DT1VOVCBhcmUgaWxsZWdhbCBhcmd1bWVudHMuCisgKgorICogQHBhcmFt
IGR0cGcgICBBIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJh
bSBmaWVsZCAgVURhdGVUaW1lUGF0dGVybkZpZWxkLCBzdWNoIGFzIFVEQVRQR19FUkFfRklFTEQK
KyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwgcmVjZWl2ZSB0aGUgbGVuZ3Ro
IG9mIGFwcGVuZEl0ZW1Gb3JtYXQuCisgKiBAcmV0dXJuIGFwcGVuZEl0ZW1Gb3JtYXQgZm9yIGZp
ZWxkLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9F
WFBPUlQyCit1ZGF0cGdfZ2V0QXBwZW5kSXRlbUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0
dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MzJfdCAqcExl
bmd0aCk7CisKKy8qKgorICAgKiBTZXQgdGhlIG5hbWUgb2YgZmllbGQsIGVnICJlcmEiIGluIEVu
Z2xpc2ggZm9yIEVSQS4gVGhlc2UgYXJlIG9ubHkKKyAgICogdXNlZCBpZiB0aGUgY29ycmVzcG9u
ZGluZyBBcHBlbmRJdGVtRm9ybWF0IGlzIHVzZWQsIGFuZCBpZiBpdCBjb250YWlucyBhCisgICAq
IHsyfSB2YXJpYWJsZS4KKyAgICogPHA+CisgICAqIFRoaXMgcmVmbGVjdHMgdGhlIHdheSB0aGF0
IHRoZSBDTERSIGRhdGEgaXMgb3JnYW5pemVkLgorICAgKgorICAgKiBAcGFyYW0gZHRwZyAgIGEg
cG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICAgKiBAcGFyYW0gZmllbGQg
IFVEYXRlVGltZVBhdHRlcm5GaWVsZAorICAgKiBAcGFyYW0gdmFsdWUgIG5hbWUgZm9yIHRoZSBm
aWVsZC4KKyAgICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIHZhbHVlLgorICAgKiBAc3Rh
YmxlIElDVSAzLjgKKyAgICovCitVX1NUQUJMRSB2b2lkIFVfRVhQT1JUMgordWRhdHBnX3NldEFw
cGVuZEl0ZW1OYW1lKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgVURhdGVUaW1lUGF0dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IFVDaGFyICp2YWx1ZSwgaW50MzJfdCBsZW5ndGgpOworCisvKioK
KyAqIEdldHRlciBjb3JyZXNwb25kaW5nIHRvIHNldEFwcGVuZEl0ZW1OYW1lcy4gVmFsdWVzIGJl
bG93IDAgb3IgYXQgb3IgYWJvdmUKKyAqIFVEQVRQR19GSUVMRF9DT1VOVCBhcmUgaWxsZWdhbCBh
cmd1bWVudHMuCisgKgorICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0
dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBmaWVsZCAgVURhdGVUaW1lUGF0dGVybkZpZWxkLCBz
dWNoIGFzIFVEQVRQR19FUkFfRklFTEQKKyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0
IHdpbGwgcmVjZWl2ZSB0aGUgbGVuZ3RoIG9mIHRoZSBuYW1lIGZvciBmaWVsZC4KKyAqIEByZXR1
cm4gbmFtZSBmb3IgZmllbGQKKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBjb25z
dCBVQ2hhciAqIFVfRVhQT1JUMgordWRhdHBnX2dldEFwcGVuZEl0ZW1OYW1lKGNvbnN0IFVEYXRl
VGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgVURh
dGVUaW1lUGF0dGVybkZpZWxkIGZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgIGludDMy
X3QgKnBMZW5ndGgpOworCisvKioKKyAqIFRoZSBkYXRlIHRpbWUgZm9ybWF0IGlzIGEgbWVzc2Fn
ZSBmb3JtYXQgcGF0dGVybiB1c2VkIHRvIGNvbXBvc2UgZGF0ZSBhbmQKKyAqIHRpbWUgcGF0dGVy
bnMuIFRoZSBkZWZhdWx0IHZhbHVlIGlzICJ7MH0gezF9Iiwgd2hlcmUgezB9IHdpbGwgYmUgcmVw
bGFjZWQKKyAqIGJ5IHRoZSBkYXRlIHBhdHRlcm4gYW5kIHsxfSB3aWxsIGJlIHJlcGxhY2VkIGJ5
IHRoZSB0aW1lIHBhdHRlcm4uCisgKiA8cD4KKyAqIFRoaXMgaXMgdXNlZCB3aGVuIHRoZSBpbnB1
dCBza2VsZXRvbiBjb250YWlucyBib3RoIGRhdGUgYW5kIHRpbWUgZmllbGRzLAorICogYnV0IHRo
ZXJlIGlzIG5vdCBhIGNsb3NlIG1hdGNoIGFtb25nIHRoZSBhZGRlZCBwYXR0ZXJucy4gRm9yIGV4
YW1wbGUsCisgKiBzdXBwb3NlIHRoYXQgdGhpcyBvYmplY3Qgd2FzIGNyZWF0ZWQgYnkgYWRkaW5n
ICJkZC1NTU0iIGFuZCAiaGg6bW0iLCBhbmQKKyAqIGl0cyBkYXRldGltZUZvcm1hdCBpcyB0aGUg
ZGVmYXVsdCAiezB9IHsxfSIuIFRoZW4gaWYgdGhlIGlucHV0IHNrZWxldG9uCisgKiBpcyAiTU1N
ZGhtbSIsIHRoZXJlIGlzIG5vdCBhbiBleGFjdCBtYXRjaCwgc28gdGhlIGlucHV0IHNrZWxldG9u
IGlzCisgKiBicm9rZW4gdXAgaW50byB0d28gY29tcG9uZW50cyAiTU1NZCIgYW5kICJobW0iLiBU
aGVyZSBhcmUgY2xvc2UgbWF0Y2hlcworICogZm9yIHRob3NlIHR3byBza2VsZXRvbnMsIHNvIHRo
ZSByZXN1bHQgaXMgcHV0IHRvZ2V0aGVyIHdpdGggdGhpcyBwYXR0ZXJuLAorICogcmVzdWx0aW5n
IGluICJkLU1NTSBoOm1tIi4KKyAqCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVU
aW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBkdEZvcm1hdAorICogICAgICAgICAgICBt
ZXNzYWdlIGZvcm1hdCBwYXR0ZXJuLCBoZXJlIHswfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSBk
YXRlCisgKiAgICAgICAgICAgIHBhdHRlcm4gYW5kIHsxfSB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRo
ZSB0aW1lIHBhdHRlcm4uCisgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGggb2YgZHRGb3JtYXQu
CisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRw
Z19zZXREYXRlVGltZUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBn
LAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpkdEZvcm1hdCwgaW50MzJf
dCBsZW5ndGgpOworCisvKioKKyAqIEdldHRlciBjb3JyZXNwb25kaW5nIHRvIHNldERhdGVUaW1l
Rm9ybWF0LgorICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvci4KKyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0IHdpbGwgcmVjZWl2ZSB0
aGUgbGVuZ3RoIG9mIHRoZSBmb3JtYXQKKyAqIEByZXR1cm4gZGF0ZVRpbWVGb3JtYXQuCisgKiBA
c3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgY29uc3QgVUNoYXIgKiBVX0VYUE9SVDIKK3Vk
YXRwZ19nZXREYXRlVGltZUZvcm1hdChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpk
dHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBMZW5ndGgpOworCisvKioK
KyAqIFRoZSBkZWNpbWFsIHZhbHVlIGlzIHVzZWQgaW4gZm9ybWF0dGluZyBmcmFjdGlvbnMgb2Yg
c2Vjb25kcy4gSWYgdGhlCisgKiBza2VsZXRvbiBjb250YWlucyBmcmFjdGlvbmFsIHNlY29uZHMs
IHRoZW4gdGhpcyBpcyB1c2VkIHdpdGggdGhlCisgKiBmcmFjdGlvbmFsIHNlY29uZHMuIEZvciBl
eGFtcGxlLCBzdXBwb3NlIHRoYXQgdGhlIGlucHV0IHBhdHRlcm4gaXMKKyAqICJoaG1tc3NTU1NT
IiwgYW5kIHRoZSBiZXN0IG1hdGNoaW5nIHBhdHRlcm4gaW50ZXJuYWxseSBpcyAiSDptbTpzcyIs
IGFuZAorICogdGhlIGRlY2ltYWwgc3RyaW5nIGlzICIsIi4gVGhlbiB0aGUgcmVzdWx0aW5nIHBh
dHRlcm4gaXMgbW9kaWZpZWQgdG8gYmUKKyAqICJIOm1tOnNzLFNTU1MiCisgKgorICogQHBhcmFt
IGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0g
ZGVjaW1hbAorICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIGRlY2ltYWwuCisgKiBAc3Rh
YmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19zZXREZWNp
bWFsKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICBj
b25zdCBVQ2hhciAqZGVjaW1hbCwgaW50MzJfdCBsZW5ndGgpOworCisvKioKKyAqIEdldHRlciBj
b3JyZXNwb25kaW5nIHRvIHNldERlY2ltYWwuCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRl
ciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBMZW5ndGggQSBwb2lu
dGVyIHRoYXQgd2lsbCByZWNlaXZlIHRoZSBsZW5ndGggb2YgdGhlIGRlY2ltYWwgc3RyaW5nLgor
ICogQHJldHVybiBjb3JyZXNwb25kaW5nIHRvIHRoZSBkZWNpbWFsIHBvaW50LgorICogQHN0YWJs
ZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9FWFBPUlQyCit1ZGF0cGdf
Z2V0RGVjaW1hbChjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAg
ICAgICAgICAgICAgaW50MzJfdCAqcExlbmd0aCk7CisKKy8qKgorICogQWRqdXN0cyB0aGUgZmll
bGQgdHlwZXMgKHdpZHRoIGFuZCBzdWJ0eXBlKSBvZiBhIHBhdHRlcm4gdG8gbWF0Y2ggd2hhdCBp
cworICogaW4gYSBza2VsZXRvbi4gVGhhdCBpcywgaWYgeW91IHN1cHBseSBhIHBhdHRlcm4gbGlr
ZSAiZC1NIEg6bSIsIGFuZCBhCisgKiBza2VsZXRvbiBvZiAiTU1NTWRkaGhtbSIsIHRoZW4gdGhl
IGlucHV0IHBhdHRlcm4gaXMgYWRqdXN0ZWQgdG8gYmUKKyAqICJkZC1NTU1NIGhoOm1tIi4gVGhp
cyBpcyB1c2VkIGludGVybmFsbHkgdG8gZ2V0IHRoZSBiZXN0IG1hdGNoIGZvciB0aGUKKyAqIGlu
cHV0IHNrZWxldG9uLCBidXQgY2FuIGFsc28gYmUgdXNlZCBleHRlcm5hbGx5LgorICoKKyAqIE5v
dGUgdGhhdCB0aGlzIGZ1bmN0aW9uIHVzZXMgYSBub24tY29uc3QgVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvcjoKKyAqIEl0IHVzZXMgYSBzdGF0ZWZ1bCBwYXR0ZXJuIHBhcnNlciB3aGljaCBpcyBz
ZXQgdXAgZm9yIGVhY2ggZ2VuZXJhdG9yIG9iamVjdCwKKyAqIHJhdGhlciB0aGFuIGNyZWF0aW5n
IG9uZSBmb3IgZWFjaCBmdW5jdGlvbiBjYWxsLgorICogQ29uc2VjdXRpdmUgY2FsbHMgdG8gdGhp
cyBmdW5jdGlvbiBkbyBub3QgYWZmZWN0IGVhY2ggb3RoZXIsCisgKiBidXQgdGhpcyBmdW5jdGlv
biBjYW5ub3QgYmUgdXNlZCBjb25jdXJyZW50bHkgb24gYSBzaW5nbGUgZ2VuZXJhdG9yIG9iamVj
dC4KKyAqCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVy
YXRvci4KKyAqIEBwYXJhbSBwYXR0ZXJuIElucHV0IHBhdHRlcm4KKyAqIEBwYXJhbSBwYXR0ZXJu
TGVuZ3RoIHRoZSBsZW5ndGggb2YgaW5wdXQgcGF0dGVybi4KKyAqIEBwYXJhbSBza2VsZXRvbgor
ICogQHBhcmFtIHNrZWxldG9uTGVuZ3RoIHRoZSBsZW5ndGggb2YgaW5wdXQgc2tlbGV0b24uCisg
KiBAcGFyYW0gZGVzdCAgcGF0dGVybiBhZGp1c3RlZCB0byBtYXRjaCB0aGUgc2tlbGV0b24gZmll
bGRzIHdpZHRocyBhbmQgc3VidHlwZXMuCisgKiBAcGFyYW0gZGVzdENhcGFjaXR5IHRoZSBjYXBh
Y2l0eSBvZiBkZXN0LgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJy
b3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgZmFp
bHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0dXJuIHRoZSBsZW5ndGggb2Yg
ZGVzdC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JU
MgordWRhdHBnX3JlcGxhY2VGaWVsZFR5cGVzKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0
cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnBhdHRlcm4sIGludDMy
X3QgcGF0dGVybkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAq
c2tlbGV0b24sIGludDMyX3Qgc2tlbGV0b25MZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgVUNoYXIgKmRlc3QsIGludDMyX3QgZGVzdENhcGFjaXR5LAorICAgICAgICAgICAgICAgICAg
ICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIEFkanVzdHMgdGhlIGZp
ZWxkIHR5cGVzICh3aWR0aCBhbmQgc3VidHlwZSkgb2YgYSBwYXR0ZXJuIHRvIG1hdGNoIHdoYXQg
aXMKKyAqIGluIGEgc2tlbGV0b24uIFRoYXQgaXMsIGlmIHlvdSBzdXBwbHkgYSBwYXR0ZXJuIGxp
a2UgImQtTSBIOm0iLCBhbmQgYQorICogc2tlbGV0b24gb2YgIk1NTU1kZGhobW0iLCB0aGVuIHRo
ZSBpbnB1dCBwYXR0ZXJuIGlzIGFkanVzdGVkIHRvIGJlCisgKiAiZGQtTU1NTSBoaDptbSIuIFRo
aXMgaXMgdXNlZCBpbnRlcm5hbGx5IHRvIGdldCB0aGUgYmVzdCBtYXRjaCBmb3IgdGhlCisgKiBp
bnB1dCBza2VsZXRvbiwgYnV0IGNhbiBhbHNvIGJlIHVzZWQgZXh0ZXJuYWxseS4KKyAqCisgKiBO
b3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBhdHRlcm5H
ZW5lcmF0b3I6CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2ggaXMg
c2V0IHVwIGZvciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhhbiBjcmVhdGlu
ZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNhbGxzIHRvIHRo
aXMgZnVuY3Rpb24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRoaXMgZnVuY3Rp
b24gY2Fubm90IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBvYmpl
Y3QuCisgKgorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IuCisgKiBAcGFyYW0gcGF0dGVybiBJbnB1dCBwYXR0ZXJuCisgKiBAcGFyYW0gcGF0dGVy
bkxlbmd0aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHBhdHRlcm4uCisgKiBAcGFyYW0gc2tlbGV0b24K
KyAqIEBwYXJhbSBza2VsZXRvbkxlbmd0aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHNrZWxldG9uLgor
ICogQHBhcmFtIG9wdGlvbnMKKyAqICAgICAgICAgICAgT3B0aW9ucyBjb250cm9sbGluZyB3aGV0
aGVyIHRoZSBsZW5ndGggb2Ygc3BlY2lmaWVkIGZpZWxkcyBpbiB0aGUKKyAqICAgICAgICAgICAg
cGF0dGVybiBhcmUgYWRqdXN0ZWQgdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIHNrZWxldG9uICh3aGVu
IHRoaXMKKyAqICAgICAgICAgICAgd291bGQgbm90IGhhcHBlbiBvdGhlcndpc2UpLiBGb3IgZGVm
YXVsdCBiZWhhdmlvciwgdXNlCisgKiAgICAgICAgICAgIFVEQVRQR19NQVRDSF9OT19PUFRJT05T
LgorICogQHBhcmFtIGRlc3QgIHBhdHRlcm4gYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHNrZWxldG9u
IGZpZWxkcyB3aWR0aHMgYW5kIHN1YnR5cGVzLgorICogQHBhcmFtIGRlc3RDYXBhY2l0eSB0aGUg
Y2FwYWNpdHkgb2YgZGVzdC4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUg
VUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAgICAgICAgICAg
IGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3Ro
IG9mIGRlc3QuCisgKiBAc3RhYmxlIElDVSA0LjQKKyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VY
UE9SVDIKK3VkYXRwZ19yZXBsYWNlRmllbGRUeXBlc1dpdGhPcHRpb25zKFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBVQ2hhciAqcGF0dGVybiwgaW50MzJfdCBwYXR0ZXJuTGVuZ3RoLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IHNr
ZWxldG9uTGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVURhdGVU
aW1lUGF0dGVybk1hdGNoT3B0aW9ucyBvcHRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgVUNoYXIgKmRlc3QsIGludDMyX3QgZGVzdENhcGFjaXR5LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8q
KgorICogUmV0dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxsIHRoZSBza2VsZXRvbnMgaW4g
Y2Fub25pY2FsIGZvcm0uCisgKiBDYWxsIHVkYXRwZ19nZXRQYXR0ZXJuRm9yU2tlbGV0b24oKSB0
byBnZXQgdGhlIGNvcnJlc3BvbmRpbmcgcGF0dGVybi4KKyAqIAorICogQHBhcmFtIGR0cGcgYSBw
b2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gcEVycm9yQ29k
ZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQor
ICogICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbAorICog
QHJldHVybiBhIFVFbnVtZXJhdGlvbiBsaXN0IG9mIGFsbCB0aGUgc2tlbGV0b25zCisgKiAgICAg
ICAgIFRoZSBjYWxsZXIgbXVzdCBjbG9zZSB0aGUgb2JqZWN0LgorICogQHN0YWJsZSBJQ1UgMy44
CisgKi8KK1VfU1RBQkxFIFVFbnVtZXJhdGlvbiAqIFVfRVhQT1JUMgordWRhdHBnX29wZW5Ta2Vs
ZXRvbnMoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywgVUVycm9yQ29kZSAq
cEVycm9yQ29kZSk7CisKKy8qKgorICogUmV0dXJuIGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxs
IHRoZSBiYXNlIHNrZWxldG9ucyBpbiBjYW5vbmljYWwgZm9ybS4KKyAqCisgKiBAcGFyYW0gZHRw
ZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwRXJy
b3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0
ZSBhCisgKiAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAq
IEByZXR1cm4gYSBVRW51bWVyYXRpb24gbGlzdCBvZiBhbGwgdGhlIGJhc2Ugc2tlbGV0b25zCisg
KiAgICAgICAgICAgICBUaGUgY2FsbGVyIG11c3QgY2xvc2UgdGhlIG9iamVjdC4KKyAqIEBzdGFi
bGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBVRW51bWVyYXRpb24gKiBVX0VYUE9SVDIKK3VkYXRw
Z19vcGVuQmFzZVNrZWxldG9ucyhjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBn
LCBVRXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBHZXQgdGhlIHBhdHRlcm4gY29y
cmVzcG9uZGluZyB0byBhIGdpdmVuIHNrZWxldG9uLgorICogCisgKiBAcGFyYW0gZHRwZyBhIHBv
aW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBza2VsZXRvbiAK
KyAqIEBwYXJhbSBza2VsZXRvbkxlbmd0aCBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2Ygc2tlbGV0
b24uCisgKiBAcGFyYW0gcExlbmd0aCBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2YgcmV0dXJuIHBh
dHRlcm4uCisgKiBAcmV0dXJuIHBhdHRlcm4gY29ycmVzcG9uZGluZyB0byBhIGdpdmVuIHNrZWxl
dG9uLgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9F
WFBPUlQyCit1ZGF0cGdfZ2V0UGF0dGVybkZvclNrZWxldG9uKGNvbnN0IFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVD
aGFyICpza2VsZXRvbiwgaW50MzJfdCBza2VsZXRvbkxlbmd0aCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50MzJfdCAqcExlbmd0aCk7CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2ljdS91bmljb2RlL3VudW1zeXMuaCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pY3UvdW5pY29kZS91bnVtc3lzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDI2NDYzZTgxYTVkZmZi
OWYzNzk5Nzc5NWIwNzVkNzUzOGM2NjYyMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9pY3UvdW5pY29kZS91bnVtc3lzLmgKQEAgLTAsMCArMSwxNzQgQEAKKy8qCisq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorKiBDb3B5cmlnaHQgKEMpIDIwMTMsIElu
dGVybmF0aW9uYWwgQnVzaW5lc3MgTWFjaGluZXMKKyogQ29ycG9yYXRpb24gYW5kIG90aGVycy4g
QWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisq
LworCisjaWZuZGVmIFVOVU1TWVNfSAorI2RlZmluZSBVTlVNU1lTX0gKKworI2luY2x1ZGUgInVu
aWNvZGUvdXR5cGVzLmgiCisKKyNpZiAhVUNPTkZJR19OT19GT1JNQVRUSU5HCisKKyNpbmNsdWRl
ICJ1bmljb2RlL3VlbnVtLmgiCisjaW5jbHVkZSAidW5pY29kZS9sb2NhbHBvaW50ZXIuaCIKKwor
LyoqCisgKiBcZmlsZQorICogXGJyaWVmIEMgQVBJOiBVTnVtYmVyaW5nU3lzdGVtLCBpbmZvcm1h
dGlvbiBhYm91dCBudW1iZXJpbmcgc3lzdGVtcworICoKKyAqIERlZmluZXMgbnVtYmVyaW5nIHN5
c3RlbXMuIEEgbnVtYmVyaW5nIHN5c3RlbSBkZXNjcmliZXMgdGhlIHNjaGVtZSBieSB3aGljaCAK
KyAqIG51bWJlcnMgYXJlIHRvIGJlIHByZXNlbnRlZCB0byB0aGUgZW5kIHVzZXIuIEluIGl0cyBz
aW1wbGVzdCBmb3JtLCBhIG51bWJlcmluZworICogc3lzdGVtIGRlc2NyaWJlcyB0aGUgc2V0IG9m
IGRpZ2l0IGNoYXJhY3RlcnMgdGhhdCBhcmUgdG8gYmUgdXNlZCB0byBkaXNwbGF5CisgKiBudW1i
ZXJzLCBzdWNoIGFzIFdlc3Rlcm4gZGlnaXRzLCBUaGFpIGRpZ2l0cywgQXJhYmljLUluZGljIGRp
Z2l0cywgZXRjLiwgaW4gYQorICogcG9zaXRpb25hbCBudW1iZXJpbmcgc3lzdGVtIHdpdGggYSBz
cGVjaWZpZWQgcmFkaXggKHR5cGljYWxseSAxMCkuCisgKiBNb3JlIGNvbXBsaWNhdGVkIG51bWJl
cmluZyBzeXN0ZW1zIGFyZSBhbGdvcml0aG1pYyBpbiBuYXR1cmUsIGFuZCByZXF1aXJlIHVzZQor
ICogb2YgYW4gUkJORiBmb3JtYXR0ZXIgKHJ1bGUgYmFzZWQgbnVtYmVyIGZvcm1hdHRlciksIGlu
IG9yZGVyIHRvIGNhbGN1bGF0ZQorICogdGhlIGNoYXJhY3RlcnMgdG8gYmUgZGlzcGxheWVkIGZv
ciBhIGdpdmVuIG51bWJlci4gRXhhbXBsZXMgb2YgYWxnb3JpdGhtaWMKKyAqIG51bWJlcmluZyBz
eXN0ZW1zIGluY2x1ZGUgUm9tYW4gbnVtZXJhbHMsIENoaW5lc2UgbnVtZXJhbHMsIGFuZCBIZWJy
ZXcgbnVtZXJhbHMuCisgKiBGb3JtYXR0aW5nIHJ1bGVzIGZvciBtYW55IGNvbW1vbmx5IHVzZWQg
bnVtYmVyaW5nIHN5c3RlbXMgYXJlIGluY2x1ZGVkIGluCisgKiB0aGUgSUNVIHBhY2thZ2UsIGJh
c2VkIG9uIHRoZSBudW1iZXJpbmcgc3lzdGVtIHJ1bGVzIGRlZmluZWQgaW4gQ0xEUi4KKyAqIEFs
dGVybmF0ZSBudW1iZXJpbmcgc3lzdGVtcyBjYW4gYmUgc3BlY2lmaWVkIHRvIGEgbG9jYWxlIGJ5
IHVzaW5nIHRoZQorICogbnVtYmVycyBsb2NhbGUga2V5d29yZC4KKyAqLworCisjaWZuZGVmIFVf
SElERV9EUkFGVF9BUEkKKworLyoqCisgKiBPcGFxdWUgVU51bWJlcmluZ1N5c3RlbSBvYmplY3Qg
Zm9yIHVzZSBpbiBDIHByb2dyYW1zLgorICogQGRyYWZ0IElDVSA1MgorICovCitzdHJ1Y3QgVU51
bWJlcmluZ1N5c3RlbTsKK3R5cGVkZWYgc3RydWN0IFVOdW1iZXJpbmdTeXN0ZW0gVU51bWJlcmlu
Z1N5c3RlbTsgIC8qKjwgQyB0eXBlZGVmIGZvciBzdHJ1Y3QgVU51bWJlcmluZ1N5c3RlbS4gQGRy
YWZ0IElDVSA1MiAqLworCisvKioKKyAqIE9wZW5zIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3Qg
dXNpbmcgdGhlIGRlZmF1bHQgbnVtYmVyaW5nIHN5c3RlbSBmb3IgdGhlIHNwZWNpZmllZAorICog
bG9jYWxlLgorICogQHBhcmFtIGxvY2FsZSAgICBUaGUgbG9jYWxlIGZvciB3aGljaCB0aGUgZGVm
YXVsdCBudW1iZXJpbmcgc3lzdGVtIHNob3VsZCBiZSBvcGVuZWQuCisgKiBAcGFyYW0gc3RhdHVz
ICAgIEEgcG9pbnRlciB0byBhIFVFcnJvckNvZGUgdG8gcmVjZWl2ZSBhbnkgZXJyb3JzLiBGb3Ig
ZXhhbXBsZSwgdGhpcworICogICAgICAgICAgICAgICAgICBtYXkgYmUgVV9VTlNVUFBPUlRFRF9F
UlJPUiBmb3IgYSBsb2NhbGUgc3VjaCBhcyAiZW5AbnVtYmVycz14eXoiIHRoYXQKKyAqICAgICAg
ICAgICAgICAgICAgc3BlY2lmaWVzIGEgbnVtYmVyaW5nIHN5c3RlbSB1bmtub3duIHRvIElDVS4K
KyAqIEByZXR1cm4gICAgICAgICAgQSBVTnVtYmVyaW5nU3lzdGVtIGZvciB0aGUgc3BlY2lmaWVk
IGxvY2FsZSwgb3IgTlVMTCBpZiBhbiBlcnJvcgorICogICAgICAgICAgICAgICAgICBvY2N1cnJl
ZC4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVTnVtYmVyaW5nU3lzdGVtICogVV9F
WFBPUlQyCit1bnVtc3lzX29wZW4oY29uc3QgY2hhciAqbG9jYWxlLCBVRXJyb3JDb2RlICpzdGF0
dXMpOworCisvKioKKyAqIE9wZW5zIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgdXNpbmcgdGhl
IG5hbWUgb2Ygb25lIG9mIHRoZSBwcmVkZWZpbmVkIG51bWJlcmluZworICogc3lzdGVtcyBzcGVj
aWZpZWQgYnkgQ0xEUiBhbmQga25vd24gdG8gSUNVLCBzdWNoIGFzICJsYXRuIiwgImFyYWJleHQi
LCBvciAiaGFuaWRlYyI7CisgKiB0aGUgZnVsbCBsaXN0IGlzIHJldHVybmVkIGJ5IHVudW1zeXNf
b3BlbkF2YWlsYWJsZU5hbWVzLiBOb3RlIHRoYXQgc29tZSBvZiB0aGUgbmFtZXMKKyAqIGxpc3Rl
ZCBhdCBodHRwOi8vdW5pY29kZS5vcmcvcmVwb3MvY2xkci90YWdzL2xhdGVzdC9jb21tb24vYmNw
NDcvbnVtYmVyLnhtbCAtIGUuZy4KKyAqIGRlZmF1bHQsIG5hdGl2ZSwgdHJhZGl0aW9uYWwsIGZp
bmFuY2UgLSBkbyBub3QgaWRlbnRpZnkgc3BlY2lmaWMgbnVtYmVyaW5nIHN5c3RlbXMsCisgKiBi
dXQgcmF0aGVyIGtleSB2YWx1ZXMgdGhhdCBtYXkgb25seSBiZSB1c2VkIGFzIHBhcnQgb2YgYSBs
b2NhbGUsIHdoaWNoIGluIHR1cm4KKyAqIGRlZmluZXMgaG93IHRoZXkgYXJlIG1hcHBlZCB0byBh
IHNwZWNpZmljIG51bWJlcmluZyBzeXN0ZW0gc3VjaCBhcyAibGF0biIgb3IgImhhbnQiLgorICoK
KyAqIEBwYXJhbSBuYW1lICAgICAgVGhlIG5hbWUgb2YgdGhlIG51bWJlcmluZyBzeXN0ZW0gZm9y
IHdoaWNoIGEgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QKKyAqICAgICAgICAgICAgICAgICAgc2hv
dWxkIGJlIG9wZW5lZC4KKyAqIEBwYXJhbSBzdGF0dXMgICAgQSBwb2ludGVyIHRvIGEgVUVycm9y
Q29kZSB0byByZWNlaXZlIGFueSBlcnJvcnMuIEZvciBleGFtcGxlLCB0aGlzCisgKiAgICAgICAg
ICAgICAgICAgIG1heSBiZSBVX1VOU1VQUE9SVEVEX0VSUk9SIGZvciBhIG51bWJlcmluZyBzeXN0
ZW0gc3VjaCBhcyAieHl6IiB0aGF0CisgKiAgICAgICAgICAgICAgICAgIGlzIHVua25vd24gdG8g
SUNVLgorICogQHJldHVybiAgICAgICAgICBBIFVOdW1iZXJpbmdTeXN0ZW0gZm9yIHRoZSBzcGVj
aWZpZWQgbmFtZSwgb3IgTlVMTCBpZiBhbiBlcnJvcgorICogICAgICAgICAgICAgICAgICBvY2N1
cnJlZC4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVTnVtYmVyaW5nU3lzdGVtICog
VV9FWFBPUlQyCit1bnVtc3lzX29wZW5CeU5hbWUoY29uc3QgY2hhciAqbmFtZSwgVUVycm9yQ29k
ZSAqc3RhdHVzKTsKKworLyoqCisgKiBDbG9zZSBhIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0LiBP
bmNlIGNsb3NlZCBpdCBtYXkgbm8gbG9uZ2VyIGJlIHVzZWQuCisgKiBAcGFyYW0gdW51bXN5cyAg
IFRoZSBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCB0byBjbG9zZS4KKyAqIEBkcmFmdCBJQ1UgNTIK
KyAqLworVV9EUkFGVCB2b2lkIFVfRVhQT1JUMgordW51bXN5c19jbG9zZShVTnVtYmVyaW5nU3lz
dGVtICp1bnVtc3lzKTsKKworI2lmIFVfU0hPV19DUExVU1BMVVNfQVBJCitVX05BTUVTUEFDRV9C
RUdJTgorCisvKioKKyAqIFxjbGFzcyBMb2NhbFVOdW1iZXJpbmdTeXN0ZW1Qb2ludGVyCisgKiAi
U21hcnQgcG9pbnRlciIgY2xhc3MsIGNsb3NlcyBhIFVOdW1iZXJpbmdTeXN0ZW0gdmlhIHVudW1z
eXNfY2xvc2UoKS4KKyAqIEZvciBtb3N0IG1ldGhvZHMgc2VlIHRoZSBMb2NhbFBvaW50ZXJCYXNl
IGJhc2UgY2xhc3MuCisgKiBAc2VlIExvY2FsUG9pbnRlckJhc2UKKyAqIEBzZWUgTG9jYWxQb2lu
dGVyCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfREVGSU5FX0xPQ0FMX09QRU5fUE9JTlRFUihM
b2NhbFVOdW1iZXJpbmdTeXN0ZW1Qb2ludGVyLCBVTnVtYmVyaW5nU3lzdGVtLCB1bnVtc3lzX2Ns
b3NlKTsKKworVV9OQU1FU1BBQ0VfRU5ECisjZW5kaWYKKworLyoqCisgKiBSZXR1cm5zIGFuIGVu
dW1lcmF0aW9uIG92ZXIgdGhlIG5hbWVzIG9mIGFsbCBvZiB0aGUgcHJlZGVmaW5lZCBudW1iZXJp
bmcgc3lzdGVtcyBrbm93bgorICogdG8gSUNVLgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBvaW50
ZXIgdG8gYSBVRXJyb3JDb2RlIHRvIHJlY2VpdmUgYW55IGVycm9ycy4KKyAqIEByZXR1cm4gICAg
ICAgICAgQSBwb2ludGVyIHRvIGEgVUVudW1lcmF0aW9uIHRoYXQgbXVzdCBiZSBjbG9zZWQgd2l0
aCB1ZW51bV9jbG9zZSgpLAorICogICAgICAgICAgICAgICAgICBvciBOVUxMIGlmIGFuIGVycm9y
IG9jY3VycmVkLgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIFVFbnVtZXJhdGlvbiAq
IFVfRVhQT1JUMgordW51bXN5c19vcGVuQXZhaWxhYmxlTmFtZXMoVUVycm9yQ29kZSAqc3RhdHVz
KTsKKworLyoqCisgKiBSZXR1cm5zIHRoZSBuYW1lIG9mIHRoZSBzcGVjaWZpZWQgVU51bWJlcmlu
Z1N5c3RlbSBvYmplY3QgKGlmIGl0IGlzIG9uZSBvZiB0aGUKKyAqIHByZWRlZmluZWQgbmFtZXMg
a25vd24gdG8gSUNVKS4KKyAqIEBwYXJhbSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0g
d2hvc2UgbmFtZSBpcyBkZXNpcmVkLgorICogQHJldHVybiAgICAgICAgICBBIHBvaW50ZXIgdG8g
dGhlIG5hbWUgb2YgdGhlIHNwZWNpZmllZCBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCwgb3IKKyAq
ICAgICAgICAgICAgICAgICAgTlVMTCBpZiB0aGUgbmFtZSBpcyBub3Qgb25lIG9mIHRoZSBJQ1Ug
cHJlZGVmaW5lZCBuYW1lcy4gVGhlIHBvaW50ZXIKKyAqICAgICAgICAgICAgICAgICAgaXMgb25s
eSB2YWxpZCBmb3IgdGhlIGxpZmV0aW1lIG9mIHRoZSBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdC4K
KyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBjb25zdCBjaGFyICogVV9FWFBPUlQyCit1
bnVtc3lzX2dldE5hbWUoY29uc3QgVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5cyk7CisKKy8qKgor
ICogUmV0dXJucyB3aGV0aGVyIHRoZSBnaXZlbiBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCBpcyBm
b3IgYW4gYWxnb3JpdGhtaWMgKG5vdCBwdXJlbHkKKyAqIHBvc2l0aW9uYWwpIHN5c3RlbS4KKyAq
IEBwYXJhbSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2UgYWxnb3JpdGhtaWMg
c3RhdHVzIGlzIGRlc2lyZWQuCisgKiBAcmV0dXJuICAgICAgICAgIFRSVUUgaWYgdGhlIHNwZWNp
ZmllZCBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdCBpcyBmb3IgYW4gYWxnb3JpdGhtaWMKKyAqICAg
ICAgICAgICAgICAgICAgc3lzdGVtLgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIFVC
b29sIFVfRVhQT1JUMgordW51bXN5c19pc0FsZ29yaXRobWljKGNvbnN0IFVOdW1iZXJpbmdTeXN0
ZW0gKnVudW1zeXMpOworCisvKioKKyAqIFJldHVybnMgdGhlIHJhZGl4IG9mIHRoZSBzcGVjaWZp
ZWQgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QuIFNpbXBsZSBwb3NpdGlvbmFsCisgKiBudW1iZXJp
bmcgc3lzdGVtcyB0eXBpY2FsbHkgaGF2ZSByYWRpeCAxMCwgYnV0IG1pZ2h0IGhhdmUgYSByYWRp
eCBvZiBlLmcuIDE2IGZvcgorICogaGV4YWRlY2ltYWwuIFRoZSByYWRpeCBpcyBsZXNzIHdlbGwt
ZGVmaW5lZCBmb3Igbm9uLXBvc2l0aW9uYWwgYWxnb3JpdGhtaWMgc3lzdGVtcy4KKyAqIEBwYXJh
bSB1bnVtc3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2UgcmFkaXggaXMgZGVzaXJlZC4K
KyAqIEByZXR1cm4gICAgICAgICAgVGhlIHJhZGl4IG9mIHRoZSBzcGVjaWZpZWQgVU51bWJlcmlu
Z1N5c3RlbSBvYmplY3QuCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfRFJBRlQgaW50MzJfdCBV
X0VYUE9SVDIKK3VudW1zeXNfZ2V0UmFkaXgoY29uc3QgVU51bWJlcmluZ1N5c3RlbSAqdW51bXN5
cyk7CisKKy8qKgorICogR2V0IHRoZSBkZXNjcmlwdGlvbiBzdHJpbmcgb2YgdGhlIHNwZWNpZmll
ZCBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdC4gRm9yIHNpbXBsZQorICogcG9zaXRpb25hbCBzeXN0
ZW1zIHRoaXMgaXMgdGhlIG9yZGVyZWQgc3RyaW5nIG9mIGRpZ2l0cyAod2l0aCBsZW5ndGggbWF0
Y2hpbmcKKyAqIHRoZSByYWRpeCksIGUuZy4gIlx1MzAwN1x1NEUwMFx1NEU4Q1x1NEUwOVx1NTZE
Qlx1NEU5NFx1NTE2RFx1NEUwM1x1NTE2Qlx1NEU1RCIKKyAqIGZvciAiaGFuaWRlYyI7IGl0IHdv
dWxkIGJlICIwMTIzNDU2Nzg5QUJDREVGIiBmb3IgaGV4YWRlY2ltYWwuIEZvcgorICogYWxnb3Jp
dGhtaWMgc3lzdGVtcyB0aGlzIGlzIHRoZSBuYW1lIG9mIHRoZSBSQk5GIHJ1bGVzZXQgdXNlZCBm
b3IgZm9ybWF0dGluZywKKyAqIGUuZy4gInpoL1NwZWxsb3V0UnVsZXMvJXNwZWxsb3V0LWNhcmRp
bmFsIiBmb3IgImhhbnMiIG9yICIlZ3JlZWstdXBwZXIiIGZvcgorICogImdyZWsiLgorICogQHBh
cmFtIHVudW1zeXMgICBUaGUgVU51bWJlcmluZ1N5c3RlbSB3aG9zZSBkZXNjcmlwdGlvbiBzdHJp
bmcgaXMgZGVzaXJlZC4KKyAqIEBwYXJhbSByZXN1bHQgICAgQSBwb2ludGVyIHRvIGEgYnVmZmVy
IHRvIHJlY2VpdmUgdGhlIGRlc2NyaXB0aW9uIHN0cmluZy4KKyAqIEBwYXJhbSByZXN1bHRMZW5n
dGggIFRoZSBtYXhpbXVtIHNpemUgb2YgcmVzdWx0LgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBv
aW50ZXIgdG8gYSBVRXJyb3JDb2RlIHRvIHJlY2VpdmUgYW55IGVycm9ycy4KKyAqIEByZXR1cm4g
ICAgICAgICAgVGhlIHRvdGFsIGJ1ZmZlciBzaXplIG5lZWRlZDsgaWYgZ3JlYXRlciB0aGFuIHJl
c3VsdExlbmd0aCwgdGhlCisgKiAgICAgICAgICAgICAgICAgIG91dHB1dCB3YXMgdHJ1bmNhdGVk
LgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIGludDMyX3QgVV9FWFBPUlQyCit1bnVt
c3lzX2dldERlc2NyaXB0aW9uKGNvbnN0IFVOdW1iZXJpbmdTeXN0ZW0gKnVudW1zeXMsIFVDaGFy
ICpyZXN1bHQsCisgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgcmVzdWx0TGVuZ3RoLCBV
RXJyb3JDb2RlICpzdGF0dXMpOworCisjZW5kaWYgIC8qIFVfSElERV9EUkFGVF9BUEkgKi8KKwor
I2VuZGlmIC8qICNpZiAhVUNPTkZJR19OT19GT1JNQVRUSU5HICovCisKKyNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKaW5kZXgg
M2JlODliODM1N2M2YTg3MTcwNDA1MmE4YzEyM2VlZmU2NzE4NWRjZS4uYjUxMDI4ZjQwMTRjNTgz
ZTljYzFiYThhMzg4ZjBiMWZlZDkzMjVhYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCkBAIC04Niw2ICs4Niw3IEBACiAgICAgbWFj
cm8oYnl0ZWNvZGVJbmRleCkgXAogICAgIG1hY3JvKGJ5dGVjb2RlcykgXAogICAgIG1hY3JvKGJ5
dGVjb2Rlc0lEKSBcCisgICAgbWFjcm8oY2FsZW5kYXIpIFwKICAgICBtYWNybyhjYWxsZWUpIFwK
ICAgICBtYWNybyhjYWxsZXIpIFwKICAgICBtYWNybyhjYXNlRmlyc3QpIFwKQEAgLTEwMSw2ICsx
MDIsNyBAQAogICAgIG1hY3JvKGNvbnN0cnVjdG9yKSBcCiAgICAgbWFjcm8oY291bnQpIFwKICAg
ICBtYWNybyhjb3VudGVycykgXAorICAgIG1hY3JvKGRheSkgXAogICAgIG1hY3JvKGRlZmluZVBy
b3BlcnR5KSBcCiAgICAgbWFjcm8oZGVzY3JpcHRpb24pIFwKICAgICBtYWNybyhkZXNjcmlwdGlv
bnMpIFwKQEAgLTEwOSw2ICsxMTEsNyBAQAogICAgIG1hY3JvKGRvbmUpIFwKICAgICBtYWNybyhl
bnRyaWVzKSBcCiAgICAgbWFjcm8oZW51bWVyYWJsZSkgXAorICAgIG1hY3JvKGVyYSkgXAogICAg
IG1hY3JvKGV2YWwpIFwKICAgICBtYWNybyhleGVjKSBcCiAgICAgbWFjcm8oZXhlY3V0aW9uQ291
bnQpIFwKQEAgLTExNiw2ICsxMTksNyBAQAogICAgIG1hY3JvKGZsYWdzKSBcCiAgICAgbWFjcm8o
Zm9jdXMpIFwKICAgICBtYWNybyhmb3JFYWNoKSBcCisgICAgbWFjcm8oZm9ybWF0TWF0Y2hlcikg
XAogICAgIG1hY3JvKGZvcndhcmQpIFwKICAgICBtYWNybyhmcm9tKSBcCiAgICAgbWFjcm8oZnJv
bUNoYXJDb2RlKSBcCkBAIC0xMjYsNiArMTMwLDggQEAKICAgICBtYWNybyhoYXNPd25Qcm9wZXJ0
eSkgXAogICAgIG1hY3JvKGhhc2gpIFwKICAgICBtYWNybyhoZWFkZXIpIFwKKyAgICBtYWNybyho
b3VyKSBcCisgICAgbWFjcm8oaG91cjEyKSBcCiAgICAgbWFjcm8oaHJlZikgXAogICAgIG1hY3Jv
KGlkKSBcCiAgICAgbWFjcm8oaWdub3JlQ2FzZSkgXApAQCAtMTQ5LDEwICsxNTUsMTMgQEAKICAg
ICBtYWNybyhsb2NhbGUpIFwKICAgICBtYWNybyhsb2NhbGVNYXRjaGVyKSBcCiAgICAgbWFjcm8o
bWVzc2FnZSkgXAorICAgIG1hY3JvKG1pbnV0ZSkgXAorICAgIG1hY3JvKG1vbnRoKSBcCiAgICAg
bWFjcm8obXVsdGlsaW5lKSBcCiAgICAgbWFjcm8obmFtZSkgXAogICAgIG1hY3JvKG5leHQpIFwK
ICAgICBtYWNybyhub3cpIFwKKyAgICBtYWNybyhudW1iZXJpbmdTeXN0ZW0pIFwKICAgICBtYWNy
byhudW1JbmxpbmVkQ2FsbHMpIFwKICAgICBtYWNybyhudW1JbmxpbmVkR2V0QnlJZHMpIFwKICAg
ICBtYWNybyhudW1JbmxpbmVkUHV0QnlJZHMpIFwKQEAgLTE3Miw2ICsxODEsNyBAQAogICAgIG1h
Y3JvKHJlbG9hZCkgXAogICAgIG1hY3JvKHJlcGxhY2UpIFwKICAgICBtYWNybyhyZXNvbHZlKSBc
CisgICAgbWFjcm8oc2Vjb25kKSBcCiAgICAgbWFjcm8oc2Vuc2l0aXZpdHkpIFwKICAgICBtYWNy
byhzZXQpIFwKICAgICBtYWNybyhzaG93TW9kYWxEaWFsb2cpIFwKQEAgLTE4NSw2ICsxOTUsOCBA
QAogICAgIG1hY3JvKHRhcmdldCkgXAogICAgIG1hY3JvKHRlc3QpIFwKICAgICBtYWNybyh0aGVu
KSBcCisgICAgbWFjcm8odGltZVpvbmUpIFwKKyAgICBtYWNybyh0aW1lWm9uZU5hbWUpIFwKICAg
ICBtYWNybyh0b0V4cG9uZW50aWFsKSBcCiAgICAgbWFjcm8odG9GaXhlZCkgXAogICAgIG1hY3Jv
KHRvSVNPU3RyaW5nKSBcCkBAIC0xOTgsOCArMjEwLDEwIEBACiAgICAgbWFjcm8odmFsdWVzKSBc
CiAgICAgbWFjcm8od2Via2l0KSBcCiAgICAgbWFjcm8od2Via2l0SW5kZXhlZERCKSBcCisgICAg
bWFjcm8od2Vla2RheSkgXAogICAgIG1hY3JvKHdpbmRvdykgXAotICAgIG1hY3JvKHdyaXRhYmxl
KQorICAgIG1hY3JvKHdyaXRhYmxlKSBcCisgICAgbWFjcm8oeWVhcikKIAogI2RlZmluZSBKU0Nf
Q09NTU9OX0lERU5USUZJRVJTX0VBQ0hfS0VZV09SRChtYWNybykgXAogICAgIG1hY3JvKGJyZWFr
KSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRp
bWVGb3JtYXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1l
Rm9ybWF0LmNwcAppbmRleCBkYzViMmFjZTMyNWIwOGI2ZjJmMzdiMjMxMDc2OTIwZTg4ZmNmMDI4
Li5kNTFjZWRmOTQyZmRkYTYxYTQ5Y2Q1YWNiNGZhNDkzMjJmODBhZWQyIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5jcHAKQEAg
LTI4LDcgKzI4LDYgQEAKIAogI2lmIEVOQUJMRShJTlRMKQogCi0jaW5jbHVkZSAiRGF0ZUNvbnN0
cnVjdG9yLmgiCiAjaW5jbHVkZSAiRGF0ZUluc3RhbmNlLmgiCiAjaW5jbHVkZSAiRXJyb3IuaCIK
ICNpbmNsdWRlICJJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5oIgpAQCAtMzYsMTMgKzM1
LDI2IEBACiAjaW5jbHVkZSAiSlNCb3VuZEZ1bmN0aW9uLmgiCiAjaW5jbHVkZSAiSlNDSlNWYWx1
ZUlubGluZXMuaCIKICNpbmNsdWRlICJKU0NlbGxJbmxpbmVzLmgiCisjaW5jbHVkZSAiT2JqZWN0
Q29uc3RydWN0b3IuaCIKICNpbmNsdWRlICJTbG90VmlzaXRvcklubGluZXMuaCIKICNpbmNsdWRl
ICJTdHJ1Y3R1cmVJbmxpbmVzLmgiCisjaW5jbHVkZSA8dW5pY29kZS91Y2FsLmg+CisjaW5jbHVk
ZSA8dW5pY29kZS91ZGF0Lmg+CisjaW5jbHVkZSA8dW5pY29kZS91ZGF0cGcuaD4KKyNpbmNsdWRl
IDx1bmljb2RlL3VlbnVtLmg+CisjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAKIG5h
bWVzcGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0luZm8gSW50bERhdGVUaW1lRm9ybWF0OjpzX2lu
Zm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKElu
dGxEYXRlVGltZUZvcm1hdCkgfTsKIAorc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IHJlbGV2YW50
RXh0ZW5zaW9uS2V5c1syXSA9IHsgImNhIiwgIm51IiB9Oworc3RhdGljIGNvbnN0IHNpemVfdCBp
bmRleE9mRXh0ZW5zaW9uS2V5Q2EgPSAwOworc3RhdGljIGNvbnN0IHNpemVfdCBpbmRleE9mRXh0
ZW5zaW9uS2V5TnUgPSAxOworCitlbnVtIGNsYXNzIERhdGVUaW1lT3B0aW9uUmVxdWlyZWQgeyBE
YXRlLCBUaW1lLCBBbnkgfTsKK2VudW0gY2xhc3MgRGF0ZVRpbWVPcHRpb25EZWZhdWx0cyB7IERh
dGUsIFRpbWUsIEFsbCB9OworCiBJbnRsRGF0ZVRpbWVGb3JtYXQqIEludGxEYXRlVGltZUZvcm1h
dDo6Y3JlYXRlKFZNJiB2bSwgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IqIGNvbnN0cnVj
dG9yKQogewogICAgIEludGxEYXRlVGltZUZvcm1hdCogZm9ybWF0ID0gbmV3IChOb3ROdWxsLCBh
bGxvY2F0ZUNlbGw8SW50bERhdGVUaW1lRm9ybWF0Pih2bS5oZWFwKSkgSW50bERhdGVUaW1lRm9y
bWF0KHZtLCBjb25zdHJ1Y3Rvci0+ZGF0ZVRpbWVGb3JtYXRTdHJ1Y3R1cmUoKSk7CkBAIC04Niw0
NiArOTgsODIxIEBAIHZvaWQgSW50bERhdGVUaW1lRm9ybWF0OjpzZXRCb3VuZEZvcm1hdChWTSYg
dm0sIEpTQm91bmRGdW5jdGlvbiogZm9ybWF0KQogICAgIG1fYm91bmRGb3JtYXQuc2V0KHZtLCB0
aGlzLCBmb3JtYXQpOwogfQogCi1FbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRl
VGltZUZvcm1hdEZ1bmNGb3JtYXREYXRlVGltZShFeGVjU3RhdGUqIHN0YXRlKQorc3RhdGljIFN0
cmluZyYgZGVmYXVsdFRpbWVab25lKCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8U3Ry
aW5nPiBjYWNoZWREZWZhdWx0VGltZVpvbmU7CisgICAgaWYgKCFjYWNoZWREZWZhdWx0VGltZVpv
bmUuZ2V0KCkuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gY2FjaGVkRGVmYXVsdFRpbWVab25l
OworCisgICAgLy8gNi40LjMgRGVmYXVsdFRpbWVab25lICgpIChFQ01BLTQwMiAyLjApCisgICAg
Ly8gVGhlIERlZmF1bHRUaW1lWm9uZSBhYnN0cmFjdCBvcGVyYXRpb24gcmV0dXJucyBhIFN0cmlu
ZyB2YWx1ZSByZXByZXNlbnRpbmcgdGhlIHZhbGlkICg2LjQuMSkgYW5kIGNhbm9uaWNhbGl6ZWQg
KDYuNC4yKSB0aW1lIHpvbmUgbmFtZSBmb3IgdGhlIGhvc3QgZW52aXJvbm1lbnTigJlzIGN1cnJl
bnQgdGltZSB6b25lLgorCisgICAgVUVycm9yQ29kZSBzdGF0dXMgPSBVX1pFUk9fRVJST1I7Cisg
ICAgVmVjdG9yPFVDaGFyLCAzMj4gYnVmZmVyKDMyKTsKKyAgICBhdXRvIGJ1ZmZlckxlbmd0aCA9
IHVjYWxfZ2V0RGVmYXVsdFRpbWVab25lKGJ1ZmZlci5kYXRhKCksIGJ1ZmZlci5jYXBhY2l0eSgp
LCAmc3RhdHVzKTsKKyAgICBpZiAoc3RhdHVzID09IFVfQlVGRkVSX09WRVJGTE9XX0VSUk9SKSB7
CisgICAgICAgIHN0YXR1cyA9IFVfWkVST19FUlJPUjsKKyAgICAgICAgYnVmZmVyID0gVmVjdG9y
PFVDaGFyLCAzMj4oYnVmZmVyTGVuZ3RoKTsKKyAgICAgICAgdWNhbF9nZXREZWZhdWx0VGltZVpv
bmUoYnVmZmVyLmRhdGEoKSwgYnVmZmVyTGVuZ3RoLCAmc3RhdHVzKTsKKyAgICB9CisgICAgaWYg
KFVfU1VDQ0VTUyhzdGF0dXMpKSB7CisgICAgICAgIHN0YXR1cyA9IFVfWkVST19FUlJPUjsKKyAg
ICAgICAgVUJvb2wgaXNTeXN0ZW1JRCA9IGZhbHNlOworICAgICAgICBWZWN0b3I8VUNoYXIsIDMy
PiBjYW5vbmljYWxCdWZmZXIoMzIpOworICAgICAgICBhdXRvIGNhbm9uaWNhbExlbmd0aCA9IHVj
YWxfZ2V0Q2Fub25pY2FsVGltZVpvbmVJRChidWZmZXIuZGF0YSgpLCBidWZmZXJMZW5ndGgsIGNh
bm9uaWNhbEJ1ZmZlci5kYXRhKCksIGNhbm9uaWNhbEJ1ZmZlci5jYXBhY2l0eSgpLCAmaXNTeXN0
ZW1JRCwgJnN0YXR1cyk7CisgICAgICAgIGlmIChzdGF0dXMgPT0gVV9CVUZGRVJfT1ZFUkZMT1df
RVJST1IpIHsKKyAgICAgICAgICAgIHN0YXR1cyA9IFVfWkVST19FUlJPUjsKKyAgICAgICAgICAg
IGNhbm9uaWNhbEJ1ZmZlciA9IFZlY3RvcjxVQ2hhciwgMzI+KGNhbm9uaWNhbExlbmd0aCk7Cisg
ICAgICAgICAgICB1Y2FsX2dldENhbm9uaWNhbFRpbWVab25lSUQoYnVmZmVyLmRhdGEoKSwgYnVm
ZmVyTGVuZ3RoLCBjYW5vbmljYWxCdWZmZXIuZGF0YSgpLCBjYW5vbmljYWxMZW5ndGgsICZpc1N5
c3RlbUlELCAmc3RhdHVzKTsKKyAgICAgICAgfQorICAgICAgICBpZiAoVV9TVUNDRVNTKHN0YXR1
cykpCisgICAgICAgICAgICBjYWNoZWREZWZhdWx0VGltZVpvbmUuZ2V0KCkgPSBTdHJpbmcoY2Fu
b25pY2FsQnVmZmVyLmRhdGEoKSwgY2Fub25pY2FsTGVuZ3RoKTsKKyAgICB9CisgICAgaWYgKFVf
RkFJTFVSRShzdGF0dXMpKQorICAgICAgICBjYWNoZWREZWZhdWx0VGltZVpvbmUuZ2V0KCkgPSBB
U0NJSUxpdGVyYWwoIlVUQyIpOworCisgICAgcmV0dXJuIGNhY2hlZERlZmF1bHRUaW1lWm9uZTsK
K30KKworc3RhdGljIFN0cmluZyBjYW5vbmljYWxpemVUaW1lWm9uZU5hbWUoY29uc3QgU3RyaW5n
JiB0aW1lWm9uZU5hbWUpCit7CisgICAgLy8gNi40LjEgSXNWYWxpZFRpbWVab25lTmFtZSAodGlt
ZVpvbmUpCisgICAgLy8gVGhlIGFic3RyYWN0IG9wZXJhdGlvbiByZXR1cm5zIHRydWUgaWYgdGlt
ZVpvbmUsIGNvbnZlcnRlZCB0byB1cHBlciBjYXNlIGFzIGRlc2NyaWJlZCBpbiA2LjEsIGlzIGVx
dWFsIHRvIG9uZSBvZiB0aGUgWm9uZSBvciBMaW5rIG5hbWVzIG9mIHRoZSBJQU5BIFRpbWUgWm9u
ZSBEYXRhYmFzZSwgY29udmVydGVkIHRvIHVwcGVyIGNhc2UgYXMgZGVzY3JpYmVkIGluIDYuMS4g
SXQgcmV0dXJucyBmYWxzZSBvdGhlcndpc2UuCisgICAgVUVycm9yQ29kZSBzdGF0dXMgPSBVX1pF
Uk9fRVJST1I7CisgICAgVUVudW1lcmF0aW9uKiB0aW1lWm9uZXMgPSB1Y2FsX29wZW5UaW1lWm9u
ZXMoJnN0YXR1cyk7CisgICAgQVNTRVJUKFVfU1VDQ0VTUyhzdGF0dXMpKTsKKworICAgIFN0cmlu
ZyBjYW5vbmljYWw7CisgICAgd2hpbGUgKGNhbm9uaWNhbC5pc051bGwoKSkgeworICAgICAgICBz
dGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgIGludDMyX3QgaWFuYVRpbWVab25lTGVuZ3Ro
OworICAgICAgICAvLyBUaW1lIHpvbmUgbmFtZXMgYXJlIHJlc3ByZXNlbnRlZCBhcyBVQ2hhcltd
IGluIGFsbCByZWxhdGVkIElDVSBhcGlzLgorICAgICAgICBjb25zdCBVQ2hhciogaWFuYVRpbWVa
b25lID0gdWVudW1fdW5leHQodGltZVpvbmVzLCAmaWFuYVRpbWVab25lTGVuZ3RoLCAmc3RhdHVz
KTsKKyAgICAgICAgQVNTRVJUKFVfU1VDQ0VTUyhzdGF0dXMpKTsKKworICAgICAgICAvLyBFbmQg
b2YgZW51bWVyYXRpb24uCisgICAgICAgIGlmICghaWFuYVRpbWVab25lKQorICAgICAgICAgICAg
YnJlYWs7CisKKyAgICAgICAgU3RyaW5nVmlldyBpYW5hVGltZVpvbmVWaWV3KGlhbmFUaW1lWm9u
ZSwgaWFuYVRpbWVab25lTGVuZ3RoKTsKKyAgICAgICAgaWYgKCFlcXVhbElnbm9yaW5nQVNDSUlD
YXNlKHRpbWVab25lTmFtZSwgaWFuYVRpbWVab25lVmlldykpCisgICAgICAgICAgICBjb250aW51
ZTsKKworICAgICAgICAvLyBGb3VuZCBhIG1hdGNoLCBub3cgY2Fub25pY2FsaXplLgorICAgICAg
ICAvLyA2LjQuMiBDYW5vbmljYWxpemVUaW1lWm9uZU5hbWUgKHRpbWVab25lKSAoRUNNQS00MDIg
Mi4wKQorICAgICAgICAvLyAxLiBMZXQgaWFuYVRpbWVab25lIGJlIHRoZSBab25lIG9yIExpbmsg
bmFtZSBvZiB0aGUgSUFOQSBUaW1lIFpvbmUgRGF0YWJhc2Ugc3VjaCB0aGF0IHRpbWVab25lLCBj
b252ZXJ0ZWQgdG8gdXBwZXIgY2FzZSBhcyBkZXNjcmliZWQgaW4gNi4xLCBpcyBlcXVhbCB0byBp
YW5hVGltZVpvbmUsIGNvbnZlcnRlZCB0byB1cHBlciBjYXNlIGFzIGRlc2NyaWJlZCBpbiA2LjEu
CisgICAgICAgIC8vIDIuIElmIGlhbmFUaW1lWm9uZSBpcyBhIExpbmsgbmFtZSwgdGhlbiBsZXQg
aWFuYVRpbWVab25lIGJlIHRoZSBjb3JyZXNwb25kaW5nIFpvbmUgbmFtZSBhcyBzcGVjaWZpZWQg
aW4gdGhlIOKAnGJhY2t3YXJk4oCdIGZpbGUgb2YgdGhlIElBTkEgVGltZSBab25lIERhdGFiYXNl
LgorCisgICAgICAgIFZlY3RvcjxVQ2hhciwgMzI+IGJ1ZmZlcihpYW5hVGltZVpvbmVMZW5ndGgp
OworICAgICAgICBVQm9vbCBpc1N5c3RlbUlEID0gZmFsc2U7CisgICAgICAgIHN0YXR1cyA9IFVf
WkVST19FUlJPUjsKKyAgICAgICAgYXV0byBjYW5vbmljYWxMZW5ndGggPSB1Y2FsX2dldENhbm9u
aWNhbFRpbWVab25lSUQoaWFuYVRpbWVab25lLCBpYW5hVGltZVpvbmVMZW5ndGgsIGJ1ZmZlci5k
YXRhKCksIGlhbmFUaW1lWm9uZUxlbmd0aCwgJmlzU3lzdGVtSUQsICZzdGF0dXMpOworICAgICAg
ICBpZiAoc3RhdHVzID09IFVfQlVGRkVSX09WRVJGTE9XX0VSUk9SKSB7CisgICAgICAgICAgICBi
dWZmZXIgPSBWZWN0b3I8VUNoYXIsIDMyPihjYW5vbmljYWxMZW5ndGgpOworICAgICAgICAgICAg
aXNTeXN0ZW1JRCA9IGZhbHNlOworICAgICAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOwor
ICAgICAgICAgICAgdWNhbF9nZXRDYW5vbmljYWxUaW1lWm9uZUlEKGlhbmFUaW1lWm9uZSwgaWFu
YVRpbWVab25lTGVuZ3RoLCBidWZmZXIuZGF0YSgpLCBjYW5vbmljYWxMZW5ndGgsICZpc1N5c3Rl
bUlELCAmc3RhdHVzKTsKKyAgICAgICAgfQorICAgICAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1
cykpOworICAgICAgICBjYW5vbmljYWwgPSBTdHJpbmcoYnVmZmVyLmRhdGEoKSwgY2Fub25pY2Fs
TGVuZ3RoKTsKKyAgICB9CisgICAgdWVudW1fY2xvc2UodGltZVpvbmVzKTsKKworICAgIC8vIDMu
IElmIGlhbmFUaW1lWm9uZSBpcyAiRXRjL1VUQyIgb3IgIkV0Yy9HTVQiLCB0aGVuIHJldHVybiAi
VVRDIi4KKyAgICBpZiAoY2Fub25pY2FsID09ICJFdGMvVVRDIiB8fCBjYW5vbmljYWwgPT0gIkV0
Yy9HTVQiKQorICAgICAgICBjYW5vbmljYWwgPSBBU0NJSUxpdGVyYWwoIlVUQyIpOworCisgICAg
Ly8gNC4gUmV0dXJuIGlhbmFUaW1lWm9uZS4KKyAgICByZXR1cm4gY2Fub25pY2FsOworfQorCitz
dGF0aWMgVmVjdG9yPFN0cmluZz4gbG9jYWxlRGF0YShjb25zdCBTdHJpbmcmIGxvY2FsZSwgc2l6
ZV90IGtleUluZGV4KQoreworICAgIFZlY3RvcjxTdHJpbmc+IGtleUxvY2FsZURhdGE7CisgICAg
c3dpdGNoIChrZXlJbmRleCkgeworICAgIGNhc2UgaW5kZXhPZkV4dGVuc2lvbktleUNhOiB7Cisg
ICAgICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICBVRW51bWVy
YXRpb24qIGNhbGVuZGFycyA9IHVjYWxfZ2V0S2V5d29yZFZhbHVlc0ZvckxvY2FsZSgiY2FsZW5k
YXIiLCBsb2NhbGUudXRmOCgpLmRhdGEoKSwgZmFsc2UsICZzdGF0dXMpOworICAgICAgICBBU1NF
UlQoVV9TVUNDRVNTKHN0YXR1cykpOworCisgICAgICAgIHN0YXR1cyA9IFVfWkVST19FUlJPUjsK
KyAgICAgICAgaW50MzJfdCBuYW1lTGVuZ3RoOworICAgICAgICB3aGlsZSAoY29uc3QgY2hhciog
YXZhaWxhYmxlTmFtZSA9IHVlbnVtX25leHQoY2FsZW5kYXJzLCAmbmFtZUxlbmd0aCwgJnN0YXR1
cykpIHsKKyAgICAgICAgICAgIEFTU0VSVChVX1NVQ0NFU1Moc3RhdHVzKSk7CisgICAgICAgICAg
ICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgICAgICBTdHJpbmcgY2FsZW5kYXIgPSBT
dHJpbmcoYXZhaWxhYmxlTmFtZSwgbmFtZUxlbmd0aCk7CisgICAgICAgICAgICBrZXlMb2NhbGVE
YXRhLmFwcGVuZChjYWxlbmRhcik7CisgICAgICAgICAgICAvLyBFbnN1cmUgYWxpYXNlcyB1c2Vk
IGluIGxhbmd1YWdlIHRhZyBhcmUgYWxsb3dlZC4KKyAgICAgICAgICAgIGlmIChjYWxlbmRhciA9
PSAiZ3JlZ29yaWFuIikKKyAgICAgICAgICAgICAgICBrZXlMb2NhbGVEYXRhLmFwcGVuZChBU0NJ
SUxpdGVyYWwoImdyZWdvcnkiKSk7CisgICAgICAgICAgICBlbHNlIGlmIChjYWxlbmRhciA9PSAi
aXNsYW1pYy1jaXZpbCIpCisgICAgICAgICAgICAgICAga2V5TG9jYWxlRGF0YS5hcHBlbmQoQVND
SUlMaXRlcmFsKCJpc2xhbWljYyIpKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNhbGVuZGFyID09
ICJldGhpb3BpYy1hbWV0ZS1hbGVtIikKKyAgICAgICAgICAgICAgICBrZXlMb2NhbGVEYXRhLmFw
cGVuZChBU0NJSUxpdGVyYWwoImV0aGlvYWEiKSk7CisgICAgICAgIH0KKyAgICAgICAgdWVudW1f
Y2xvc2UoY2FsZW5kYXJzKTsKKyAgICAgICAgYnJlYWs7CisgICAgfQorICAgIGNhc2UgaW5kZXhP
ZkV4dGVuc2lvbktleU51OgorICAgICAgICBrZXlMb2NhbGVEYXRhID0gZ2V0TnVtYmVyaW5nU3lz
dGVtc0ZvckxvY2FsZShsb2NhbGUpOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAg
ICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICB9CisgICAgcmV0dXJuIGtleUxvY2FsZURh
dGE7Cit9CisKK3N0YXRpYyBKU09iamVjdCogdG9EYXRlVGltZU9wdGlvbnMoRXhlY1N0YXRlJiBz
dGF0ZSwgSlNWYWx1ZSBvcmlnaW5hbE9wdGlvbnMsIGNvbnN0IERhdGVUaW1lT3B0aW9uUmVxdWly
ZWQgcmVxdWlyZWQsIGNvbnN0IERhdGVUaW1lT3B0aW9uRGVmYXVsdHMgZGVmYXVsdHMpCit7Cisg
ICAgLy8gMTIuMS4xIFRvRGF0ZVRpbWVPcHRpb25zIGFic3RyYWN0IG9wZXJhdGlvbiAoRUNNQS00
MDIgMi4wKQorICAgIFZNJiB2bSA9IHN0YXRlLnZtKCk7CisKKyAgICAvLyAxLiBJZiBvcHRpb25z
IGlzIHVuZGVmaW5lZCwgdGhlbiBsZXQgb3B0aW9ucyBiZSBudWxsLCBlbHNlIGxldCBvcHRpb25z
IGJlIFRvT2JqZWN0KG9wdGlvbnMpLgorICAgIC8vIDIuIFJldHVybklmQWJydXB0KG9wdGlvbnMp
LgorICAgIC8vIDMuIExldCBvcHRpb25zIGJlIE9iamVjdENyZWF0ZShvcHRpb25zKS4KKyAgICBK
U09iamVjdCogb3B0aW9uczsKKyAgICBpZiAob3JpZ2luYWxPcHRpb25zLmlzVW5kZWZpbmVkT3JO
dWxsKCkpCisgICAgICAgIG9wdGlvbnMgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdCgmc3RhdGUsIHN0
YXRlLmxleGljYWxHbG9iYWxPYmplY3QoKS0+bnVsbFByb3RvdHlwZU9iamVjdFN0cnVjdHVyZSgp
KTsKKyAgICBlbHNlIHsKKyAgICAgICAgSlNPYmplY3QqIG9yaWdpbmFsVG9PYmplY3QgPSBvcmln
aW5hbE9wdGlvbnMudG9PYmplY3QoJnN0YXRlKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2Vw
dGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIG9wdGlvbnMgPSBj
b25zdHJ1Y3RFbXB0eU9iamVjdCgmc3RhdGUsIG9yaWdpbmFsVG9PYmplY3QpOworICAgIH0KKwor
ICAgIC8vIDQuIExldCBuZWVkRGVmYXVsdHMgYmUgdHJ1ZS4KKyAgICBib29sIG5lZWREZWZhdWx0
cyA9IHRydWU7CisKKyAgICAvLyA1LiBJZiByZXF1aXJlZCBpcyAiZGF0ZSIgb3IgImFueSIsCisg
ICAgaWYgKHJlcXVpcmVkID09IERhdGVUaW1lT3B0aW9uUmVxdWlyZWQ6OkRhdGUgfHwgcmVxdWly
ZWQgPT0gRGF0ZVRpbWVPcHRpb25SZXF1aXJlZDo6QW55KSB7CisgICAgICAgIC8vIGEuIEZvciBl
YWNoIG9mIHRoZSBwcm9wZXJ0eSBuYW1lcyAid2Vla2RheSIsICJ5ZWFyIiwgIm1vbnRoIiwgImRh
eSI6CisgICAgICAgIC8vIGkuIExldCBwcm9wIGJlIHRoZSBwcm9wZXJ0eSBuYW1lLgorICAgICAg
ICAvLyBpaS4gTGV0IHZhbHVlIGJlIEdldChvcHRpb25zLCBwcm9wKS4KKyAgICAgICAgLy8gaWlp
LiBSZXR1cm5JZkFicnVwdCh2YWx1ZSkuCisgICAgICAgIC8vIGl2LiBJZiB2YWx1ZSBpcyBub3Qg
dW5kZWZpbmVkLCB0aGVuIGxldCBuZWVkRGVmYXVsdHMgYmUgZmFsc2UuCisgICAgICAgIEpTVmFs
dWUgd2Vla2RheSA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZtLnByb3BlcnR5TmFtZXMtPndlZWtk
YXkpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1
cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCF3ZWVrZGF5LmlzVW5kZWZpbmVkKCkpCisgICAgICAg
ICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKworICAgICAgICBKU1ZhbHVlIHllYXIgPSBvcHRp
b25zLT5nZXQoJnN0YXRlLCB2bS5wcm9wZXJ0eU5hbWVzLT55ZWFyKTsKKyAgICAgICAgaWYgKHN0
YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAg
IGlmICgheWVhci5pc1VuZGVmaW5lZCgpKQorICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFs
c2U7CisKKyAgICAgICAgSlNWYWx1ZSBtb250aCA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZtLnBy
b3BlcnR5TmFtZXMtPm1vbnRoKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlmICghbW9udGguaXNVbmRlZmlu
ZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZhdWx0cyA9IGZhbHNlOworCisgICAgICAgIEpTVmFs
dWUgZGF5ID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+ZGF5KTsKKyAg
ICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CisgICAgICAgIGlmICghZGF5LmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBuZWVkRGVm
YXVsdHMgPSBmYWxzZTsKKyAgICB9CisKKyAgICAvLyA2LiBJZiByZXF1aXJlZCBpcyAidGltZSIg
b3IgImFueSIsCisgICAgaWYgKHJlcXVpcmVkID09IERhdGVUaW1lT3B0aW9uUmVxdWlyZWQ6OlRp
bWUgfHwgcmVxdWlyZWQgPT0gRGF0ZVRpbWVPcHRpb25SZXF1aXJlZDo6QW55KSB7CisgICAgICAg
IC8vIGEuIEZvciBlYWNoIG9mIHRoZSBwcm9wZXJ0eSBuYW1lcyAiaG91ciIsICJtaW51dGUiLCAi
c2Vjb25kIjoKKyAgICAgICAgLy8gaS4gTGV0IHByb3AgYmUgdGhlIHByb3BlcnR5IG5hbWUuCisg
ICAgICAgIC8vIGlpLiBMZXQgdmFsdWUgYmUgR2V0KG9wdGlvbnMsIHByb3ApLgorICAgICAgICAv
LyBpaWkuIFJldHVybklmQWJydXB0KHZhbHVlKS4KKyAgICAgICAgLy8gaXYuIElmIHZhbHVlIGlz
IG5vdCB1bmRlZmluZWQsIHRoZW4gbGV0IG5lZWREZWZhdWx0cyBiZSBmYWxzZS4KKyAgICAgICAg
SlNWYWx1ZSBob3VyID0gb3B0aW9ucy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+aG91
cik7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVy
biBudWxscHRyOworICAgICAgICBpZiAoIWhvdXIuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAg
IG5lZWREZWZhdWx0cyA9IGZhbHNlOworCisgICAgICAgIEpTVmFsdWUgbWludXRlID0gb3B0aW9u
cy0+Z2V0KCZzdGF0ZSwgdm0ucHJvcGVydHlOYW1lcy0+bWludXRlKTsKKyAgICAgICAgaWYgKHN0
YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAg
IGlmICghbWludXRlLmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBm
YWxzZTsKKworICAgICAgICBKU1ZhbHVlIHNlY29uZCA9IG9wdGlvbnMtPmdldCgmc3RhdGUsIHZt
LnByb3BlcnR5TmFtZXMtPnNlY29uZCk7CisgICAgICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24o
KSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBpZiAoIXNlY29uZC5pc1Vu
ZGVmaW5lZCgpKQorICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisgICAgfQorCisg
ICAgLy8gNy4gSWYgbmVlZERlZmF1bHRzIGlzIHRydWUgYW5kIGRlZmF1bHRzIGlzIGVpdGhlciAi
ZGF0ZSIgb3IgImFsbCIsIHRoZW4KKyAgICBpZiAobmVlZERlZmF1bHRzICYmIChkZWZhdWx0cyA9
PSBEYXRlVGltZU9wdGlvbkRlZmF1bHRzOjpEYXRlIHx8IGRlZmF1bHRzID09IERhdGVUaW1lT3B0
aW9uRGVmYXVsdHM6OkFsbCkpIHsKKyAgICAgICAgLy8gYS4gRm9yIGVhY2ggb2YgdGhlIHByb3Bl
cnR5IG5hbWVzICJ5ZWFyIiwgIm1vbnRoIiwgImRheSI6CisgICAgICAgIC8vIGkuIExldCBzdGF0
dXMgYmUgQ3JlYXRlRGF0ZVByb3BlcnR5T3JUaHJvdyhvcHRpb25zLCBwcm9wLCAibnVtZXJpYyIp
LgorICAgICAgICAvLyBpaS4gUmV0dXJuSWZBYnJ1cHQoc3RhdHVzKS4KKyAgICAgICAgb3B0aW9u
cy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT55ZWFyLCBqc1N0cmluZygmc3RhdGUs
ICJudW1lcmljIikpOworICAgICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZt
LnByb3BlcnR5TmFtZXMtPm1vbnRoLCBqc1N0cmluZygmc3RhdGUsICJudW1lcmljIikpOworICAg
ICAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0
cjsKKworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmRh
eSwganNTdHJpbmcoJnN0YXRlLCAibnVtZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQorCisgICAgLy8g
OC4gSWYgbmVlZERlZmF1bHRzIGlzIHRydWUgYW5kIGRlZmF1bHRzIGlzIGVpdGhlciAidGltZSIg
b3IgImFsbCIsIHRoZW4KKyAgICBpZiAobmVlZERlZmF1bHRzICYmIChkZWZhdWx0cyA9PSBEYXRl
VGltZU9wdGlvbkRlZmF1bHRzOjpUaW1lIHx8IGRlZmF1bHRzID09IERhdGVUaW1lT3B0aW9uRGVm
YXVsdHM6OkFsbCkpIHsKKyAgICAgICAgLy8gYS4gRm9yIGVhY2ggb2YgdGhlIHByb3BlcnR5IG5h
bWVzICJob3VyIiwgIm1pbnV0ZSIsICJzZWNvbmQiOgorICAgICAgICAvLyBpLiBMZXQgc3RhdHVz
IGJlIENyZWF0ZURhdGVQcm9wZXJ0eU9yVGhyb3cob3B0aW9ucywgcHJvcCwgIm51bWVyaWMiKS4K
KyAgICAgICAgLy8gaWkuIFJldHVybklmQWJydXB0KHN0YXR1cykuCisgICAgICAgIG9wdGlvbnMt
PnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+aG91ciwganNTdHJpbmcoJnN0YXRlLCAi
bnVtZXJpYyIpKTsKKyAgICAgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5w
cm9wZXJ0eU5hbWVzLT5taW51dGUsIGpzU3RyaW5nKCZzdGF0ZSwgIm51bWVyaWMiKSk7CisgICAg
ICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRy
OworCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+c2Vj
b25kLCBqc1N0cmluZygmc3RhdGUsICJudW1lcmljIikpOworICAgICAgICBpZiAoc3RhdGUuaGFk
RXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKKyAgICAv
LyA5LiBSZXR1cm4gb3B0aW9ucy4KKyAgICByZXR1cm4gb3B0aW9uczsKK30KKwordm9pZCBJbnRs
RGF0ZVRpbWVGb3JtYXQ6OnNldEZvcm1hdHNGcm9tUGF0dGVybihjb25zdCBTdHJpbmdWaWV3JiBw
YXR0ZXJuKQoreworICAgIC8vIEdldCBhbGwgc3ltYm9scyBmcm9tIHRoZSBwYXR0ZXJuLCBhbmQg
c2V0IGZvcm1hdCBmaWVsZHMgYWNjb3JkaW5nbHkuCisgICAgLy8gaHR0cDovL3VuaWNvZGUub3Jn
L3JlcG9ydHMvdHIzNS90cjM1LWRhdGVzLmh0bWwjRGF0ZV9GaWVsZF9TeW1ib2xfVGFibGUKKyAg
ICB1bnNpZ25lZCBsZW5ndGggPSBwYXR0ZXJuLmxlbmd0aCgpOworICAgIGZvciAodW5zaWduZWQg
aSA9IDA7IGkgPCBsZW5ndGg7ICsraSkgeworICAgICAgICBVQ2hhciBjdXJyZW50Q2hhcmFjdGVy
ID0gcGF0dGVybltpXTsKKyAgICAgICAgaWYgKCFpc0FTQ0lJQWxwaGEoY3VycmVudENoYXJhY3Rl
cikpCisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICB1bnNpZ25lZCBjb3VudCA9IDE7
CisgICAgICAgIHdoaWxlIChpICsgMSA8IGxlbmd0aCAmJiBwYXR0ZXJuW2kgKyAxXSA9PSBjdXJy
ZW50Q2hhcmFjdGVyKSB7CisgICAgICAgICAgICArK2NvdW50OworICAgICAgICAgICAgKytpOwor
ICAgICAgICB9CisKKyAgICAgICAgaWYgKGN1cnJlbnRDaGFyYWN0ZXIgPT0gJ2gnIHx8IGN1cnJl
bnRDaGFyYWN0ZXIgPT0gJ0snKQorICAgICAgICAgICAgbV9ob3VyMTIgPSB0cnVlOworICAgICAg
ICBlbHNlIGlmIChjdXJyZW50Q2hhcmFjdGVyID09ICdIJyB8fCBjdXJyZW50Q2hhcmFjdGVyID09
ICdrJykKKyAgICAgICAgICAgIG1faG91cjEyID0gZmFsc2U7CisKKyAgICAgICAgc3dpdGNoIChj
dXJyZW50Q2hhcmFjdGVyKSB7CisgICAgICAgIGNhc2UgJ0cnOgorICAgICAgICAgICAgaWYgKGNv
dW50IDw9IDMpCisgICAgICAgICAgICAgICAgbV9lcmEgPSBFcmE6OlNob3J0OworICAgICAgICAg
ICAgZWxzZSBpZiAoY291bnQgPT0gNCkKKyAgICAgICAgICAgICAgICBtX2VyYSA9IEVyYTo6TG9u
ZzsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDUpCisgICAgICAgICAgICAgICAgbV9l
cmEgPSBFcmE6Ok5hcnJvdzsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICd5JzoK
KyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAgICAgIG1feWVhciA9IFll
YXI6Ok51bWVyaWM7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSAyKQorICAgICAgICAg
ICAgICAgIG1feWVhciA9IFllYXI6OlR3b0RpZ2l0OworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGNhc2UgJ00nOgorICAgICAgICBjYXNlICdMJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9
PSAxKQorICAgICAgICAgICAgICAgIG1fbW9udGggPSBNb250aDo6TnVtZXJpYzsKKyAgICAgICAg
ICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisgICAgICAgICAgICAgICAgbV9tb250aCA9IE1vbnRo
OjpUd29EaWdpdDsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDMpCisgICAgICAgICAg
ICAgICAgbV9tb250aCA9IE1vbnRoOjpTaG9ydDsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50
ID09IDQpCisgICAgICAgICAgICAgICAgbV9tb250aCA9IE1vbnRoOjpMb25nOworICAgICAgICAg
ICAgZWxzZSBpZiAoY291bnQgPT0gNSkKKyAgICAgICAgICAgICAgICBtX21vbnRoID0gTW9udGg6
Ok5hcnJvdzsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdFJzoKKyAgICAgICAg
Y2FzZSAnZSc6CisgICAgICAgIGNhc2UgJ2MnOgorICAgICAgICAgICAgaWYgKGNvdW50IDw9IDMp
CisgICAgICAgICAgICAgICAgbV93ZWVrZGF5ID0gV2Vla2RheTo6U2hvcnQ7CisgICAgICAgICAg
ICBlbHNlIGlmIChjb3VudCA9PSA0KQorICAgICAgICAgICAgICAgIG1fd2Vla2RheSA9IFdlZWtk
YXk6Okxvbmc7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA1KQorICAgICAgICAgICAg
ICAgIG1fd2Vla2RheSA9IFdlZWtkYXk6Ok5hcnJvdzsKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBjYXNlICdkJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAg
ICAgIG1fZGF5ID0gRGF5OjpOdW1lcmljOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0g
MikKKyAgICAgICAgICAgICAgICBtX2RheSA9IERheTo6VHdvRGlnaXQ7CisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgY2FzZSAnaCc6CisgICAgICAgIGNhc2UgJ0gnOgorICAgICAgICBjYXNl
ICdrJzoKKyAgICAgICAgY2FzZSAnSyc6CisgICAgICAgICAgICBpZiAoY291bnQgPT0gMSkKKyAg
ICAgICAgICAgICAgICBtX2hvdXIgPSBIb3VyOjpOdW1lcmljOworICAgICAgICAgICAgZWxzZSBp
ZiAoY291bnQgPT0gMikKKyAgICAgICAgICAgICAgICBtX2hvdXIgPSBIb3VyOjpUd29EaWdpdDsK
KyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdtJzoKKyAgICAgICAgICAgIGlmIChj
b3VudCA9PSAxKQorICAgICAgICAgICAgICAgIG1fbWludXRlID0gTWludXRlOjpOdW1lcmljOwor
ICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAgICAgICAgICAgICBtX21pbnV0
ZSA9IE1pbnV0ZTo6VHdvRGlnaXQ7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAn
cyc6CisgICAgICAgICAgICBpZiAoY291bnQgPT0gMSkKKyAgICAgICAgICAgICAgICBtX3NlY29u
ZCA9IFNlY29uZDo6TnVtZXJpYzsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIpCisg
ICAgICAgICAgICAgICAgbV9zZWNvbmQgPSBTZWNvbmQ6OlR3b0RpZ2l0OworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIGNhc2UgJ3onOgorICAgICAgICBjYXNlICd2JzoKKyAgICAgICAgY2Fz
ZSAnVic6CisgICAgICAgICAgICBpZiAoY291bnQgPT0gMSkKKyAgICAgICAgICAgICAgICBtX3Rp
bWVab25lTmFtZSA9IFRpbWVab25lTmFtZTo6U2hvcnQ7CisgICAgICAgICAgICBlbHNlIGlmIChj
b3VudCA9PSA0KQorICAgICAgICAgICAgICAgIG1fdGltZVpvbmVOYW1lID0gVGltZVpvbmVOYW1l
OjpMb25nOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3ZvaWQg
SW50bERhdGVUaW1lRm9ybWF0Ojppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoRXhlY1N0YXRlJiBz
dGF0ZSwgSlNWYWx1ZSBsb2NhbGVzLCBKU1ZhbHVlIG9yaWdpbmFsT3B0aW9ucykKK3sKKyAgICAv
LyAxMi4xLjEgSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0IChkYXRlVGltZUZvcm1hdCwgbG9jYWxl
cywgb3B0aW9ucykgKEVDTUEtNDAyIDIuMCkKKyAgICAvLyAxLiBJZiBkYXRlVGltZUZvcm1hdC5b
W2luaXRpYWxpemVkSW50bE9iamVjdF1dIGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4Y2Vw
dGlvbi4KKyAgICAvLyAyLiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tpbml0aWFsaXplZEludGxPYmpl
Y3RdXSB0byB0cnVlLgorCisgICAgLy8gMy4gTGV0IHJlcXVlc3RlZExvY2FsZXMgYmUgQ2Fub25p
Y2FsaXplTG9jYWxlTGlzdChsb2NhbGVzKS4KKyAgICBWZWN0b3I8U3RyaW5nPiByZXF1ZXN0ZWRM
b2NhbGVzID0gY2Fub25pY2FsaXplTG9jYWxlTGlzdChzdGF0ZSwgbG9jYWxlcyk7CisgICAgLy8g
NC4gUmV0dXJuSWZBYnJ1cHQocmVxdWVzdGVkTG9jYWxlcyksCisgICAgaWYgKHN0YXRlLmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyA1LiBMZXQgb3B0aW9ucyBiZSBU
b0RhdGVUaW1lT3B0aW9ucyhvcHRpb25zLCAiYW55IiwgImRhdGUiKS4KKyAgICBKU09iamVjdCog
b3B0aW9ucyA9IHRvRGF0ZVRpbWVPcHRpb25zKHN0YXRlLCBvcmlnaW5hbE9wdGlvbnMsIERhdGVU
aW1lT3B0aW9uUmVxdWlyZWQ6OkFueSwgRGF0ZVRpbWVPcHRpb25EZWZhdWx0czo6RGF0ZSk7Cisg
ICAgLy8gNi4gUmV0dXJuSWZBYnJ1cHQob3B0aW9ucykuCisgICAgaWYgKHN0YXRlLmhhZEV4Y2Vw
dGlvbigpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyA3LiBMZXQgb3B0IGJlIGEgbmV3IFJl
Y29yZC4KKyAgICBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiBsb2NhbGVPcHQ7CisKKyAgICAvLyA4
LiBMZXQgbWF0Y2hlciBiZSBHZXRPcHRpb24ob3B0aW9ucywgImxvY2FsZU1hdGNoZXIiLCAic3Ry
aW5nIiwgwqsibG9va3VwIiwgImJlc3QgZml0IsK7LCAiYmVzdCBmaXQiKS4KKyAgICBWTSYgdm0g
PSBzdGF0ZS52bSgpOworICAgIFN0cmluZyBsb2NhbGVNYXRjaGVyID0gaW50bFN0cmluZ09wdGlv
bihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlTWF0Y2hlciwgeyAibG9v
a3VwIiwgImJlc3QgZml0IiB9LCAibG9jYWxlTWF0Y2hlciBtdXN0IGJlIGVpdGhlciBcImxvb2t1
cFwiIG9yIFwiYmVzdCBmaXRcIiIsICJiZXN0IGZpdCIpOworICAgIC8vIDkuIFJldHVybklmQWJy
dXB0KG1hdGNoZXIpLgorICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuOworICAgIC8vIDEwLiBTZXQgb3B0LltbbG9jYWxlTWF0Y2hlcl1dIHRvIG1hdGNoZXIuCisg
ICAgbG9jYWxlT3B0LnNldCh2bS5wcm9wZXJ0eU5hbWVzLT5sb2NhbGVNYXRjaGVyLnN0cmluZygp
LCBsb2NhbGVNYXRjaGVyKTsKKworICAgIC8vIDExLiBMZXQgbG9jYWxlRGF0YSBiZSB0aGUgdmFs
dWUgb2YgJURhdGVUaW1lRm9ybWF0JS5bW2xvY2FsZURhdGFdXS4KKyAgICAvLyAxMi4gTGV0IHIg
YmUgUmVzb2x2ZUxvY2FsZSggJURhdGVUaW1lRm9ybWF0JS5bW2F2YWlsYWJsZUxvY2FsZXNdXSwg
cmVxdWVzdGVkTG9jYWxlcywgb3B0LCAlRGF0ZVRpbWVGb3JtYXQlLltbcmVsZXZhbnRFeHRlbnNp
b25LZXlzXV0sIGxvY2FsZURhdGEpLgorICAgIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiBhdmFpbGFi
bGVMb2NhbGVzID0gc3RhdGUubGV4aWNhbEdsb2JhbE9iamVjdCgpLT5pbnRsRGF0ZVRpbWVGb3Jt
YXRBdmFpbGFibGVMb2NhbGVzKCk7CisgICAgSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4gcmVzb2x2
ZWQgPSByZXNvbHZlTG9jYWxlKGF2YWlsYWJsZUxvY2FsZXMsIHJlcXVlc3RlZExvY2FsZXMsIGxv
Y2FsZU9wdCwgcmVsZXZhbnRFeHRlbnNpb25LZXlzLCBXVEZfQVJSQVlfTEVOR1RIKHJlbGV2YW50
RXh0ZW5zaW9uS2V5cyksIGxvY2FsZURhdGEpOworCisgICAgLy8gMTMuIFNldCBkYXRlVGltZUZv
cm1hdC5bW2xvY2FsZV1dIHRvIHRoZSB2YWx1ZSBvZiByLltbbG9jYWxlXV0uCisgICAgbV9sb2Nh
bGUgPSByZXNvbHZlZC5nZXQodm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlLnN0cmluZygpKTsKKyAg
ICAvLyAxNC4gU2V0IGRhdGVUaW1lRm9ybWF0LltbY2FsZW5kYXJdXSB0byB0aGUgdmFsdWUgb2Yg
ci5bW2NhXV0uCisgICAgbV9jYWxlbmRhciA9IHJlc29sdmVkLmdldChBU0NJSUxpdGVyYWwoImNh
IikpOworICAgIC8vIFN3aXRjaCB0byBwcmVmZXJyZWQgYWxpYXNlcy4KKyAgICBpZiAobV9jYWxl
bmRhciA9PSAiZ3JlZ29yeSIpCisgICAgICAgIG1fY2FsZW5kYXIgPSBBU0NJSUxpdGVyYWwoImdy
ZWdvcmlhbiIpOworICAgIGVsc2UgaWYgKG1fY2FsZW5kYXIgPT0gImlzbGFtaWNjIikKKyAgICAg
ICAgbV9jYWxlbmRhciA9IEFTQ0lJTGl0ZXJhbCgiaXNsYW1pYy1jaXZpbCIpOworICAgIGVsc2Ug
aWYgKG1fY2FsZW5kYXIgPT0gImV0aGlvYWEiKQorICAgICAgICBtX2NhbGVuZGFyID0gQVNDSUlM
aXRlcmFsKCJldGhpb3BpYy1hbWV0ZS1hbGVtIik7CisgICAgLy8gMTUuIFNldCBkYXRlVGltZUZv
cm1hdC5bW251bWJlcmluZ1N5c3RlbV1dIHRvIHRoZSB2YWx1ZSBvZiByLltbbnVdXS4KKyAgICBt
X251bWJlcmluZ1N5c3RlbSA9IHJlc29sdmVkLmdldChBU0NJSUxpdGVyYWwoIm51IikpOworICAg
IC8vIDE2LiBMZXQgZGF0YUxvY2FsZSBiZSB0aGUgdmFsdWUgb2Ygci5bW2RhdGFMb2NhbGVdXS4K
KyAgICBTdHJpbmcgZGF0YUxvY2FsZSA9IHJlc29sdmVkLmdldChBU0NJSUxpdGVyYWwoImRhdGFM
b2NhbGUiKSk7CisKKyAgICAvLyAxNy4gTGV0IHR6IGJlIEdldChvcHRpb25zLCAidGltZVpvbmUi
KS4KKyAgICBKU1ZhbHVlIHR6VmFsdWUgPSBvcHRpb25zLT5nZXQoJnN0YXRlLCB2bS5wcm9wZXJ0
eU5hbWVzLT50aW1lWm9uZSk7CisgICAgLy8gMTguIFJldHVybklmQWJydXB0KHR6KS4KKyAgICBp
ZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIDE5LiBJ
ZiB0eiBpcyBub3QgdW5kZWZpbmVkLCB0aGVuCisgICAgU3RyaW5nIHR6OworICAgIGlmICghdHpW
YWx1ZS5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIC8vIGEuIExldCB0eiBiZSBUb1N0cmluZyh0
eikuCisgICAgICAgIFN0cmluZyBvcmlnaW5hbFR6ID0gdHpWYWx1ZS50b1dURlN0cmluZygmc3Rh
dGUpOworICAgICAgICAvLyBiLiBSZXR1cm5JZkFicnVwdCh0eikuCisgICAgICAgIGlmIChzdGF0
ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgLy8gYy4gSWYg
dGhlIHJlc3VsdCBvZiBJc1ZhbGlkVGltZVpvbmVOYW1lKHR6KSBpcyBmYWxzZSwgdGhlbiBpLiBU
aHJvdyBhIFJhbmdlRXJyb3IgZXhjZXB0aW9uLgorICAgICAgICAvLyBkLiBMZXQgdHogYmUgQ2Fu
b25pY2FsaXplVGltZVpvbmVOYW1lKHR6KS4KKyAgICAgICAgdHogPSBjYW5vbmljYWxpemVUaW1l
Wm9uZU5hbWUob3JpZ2luYWxUeik7CisgICAgICAgIGlmICh0ei5pc051bGwoKSkgeworICAgICAg
ICAgICAgdGhyb3dSYW5nZUVycm9yKCZzdGF0ZSwgU3RyaW5nOjpmb3JtYXQoImludmFsaWQgdGlt
ZSB6b25lOiAlcyIsIG9yaWdpbmFsVHoudXRmOCgpLmRhdGEoKSkpOworICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICB9CisgICAgfSBlbHNlCisgICAgLy8gMjAuIEVsc2UsCisgICAgICAgIC8v
IGEuIExldCB0eiBiZSBEZWZhdWx0VGltZVpvbmUoKS4KKyAgICAgICAgdHogPSBkZWZhdWx0VGlt
ZVpvbmUoKTsKKworICAgIC8vIDIxLiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1t0aW1lWm9uZV1dIHRv
IHR6LgorICAgIG1fdGltZVpvbmUgPSB0ejsKKworICAgIC8vIDIyLiBMZXQgb3B0IGJlIGEgbmV3
IFJlY29yZC4KKyAgICAvLyBSYXRoZXIgdGhhbiBidWlsZGluZyBhIHJlY29yZCwgYnVpbGQgdGhl
IHNrZWxldG9uIHBhdHRlcm4uCisgICAgU3RyaW5nQnVpbGRlciBza2VsZXRvbkJ1aWxkZXI7CisK
KyAgICAvLyAyMy4gRm9yIGVhY2ggcm93IG9mIFRhYmxlIDMsIGV4Y2VwdCB0aGUgaGVhZGVyIHJv
dywgZG86CisgICAgLy8gYS4gTGV0IHByb3AgYmUgdGhlIG5hbWUgZ2l2ZW4gaW4gdGhlIFByb3Bl
cnR5IGNvbHVtbiBvZiB0aGUgcm93LgorICAgIC8vIGIuIExldCB2YWx1ZSBiZSBHZXRPcHRpb24o
b3B0aW9ucywgcHJvcCwgInN0cmluZyIsIMKrdGhlIHN0cmluZ3MgZ2l2ZW4gaW4gdGhlIFZhbHVl
cyBjb2x1bW4gb2YgdGhlIHJvd8K7LCB1bmRlZmluZWQpLgorICAgIC8vIGMuIFJldHVybklmQWJy
dXB0KHZhbHVlKS4KKyAgICAvLyBkLiBTZXQgb3B0LltbPHByb3A+XV0gdG8gdmFsdWUuCisgICAg
YXV0byBuYXJyb3dTaG9ydExvbmcgPSB7ICJuYXJyb3ciLCAic2hvcnQiLCAibG9uZyIgfTsKKyAg
ICBhdXRvIHR3b0RpZ2l0TnVtZXJpYyA9IHsgIjItZGlnaXQiLCAibnVtZXJpYyIgfTsKKyAgICBh
dXRvIHR3b0RpZ2l0TnVtZXJpY05hcnJvd1Nob3J0TG9uZyA9IHsgIjItZGlnaXQiLCAibnVtZXJp
YyIsICJuYXJyb3ciLCAic2hvcnQiLCAibG9uZyIgfTsKKyAgICBhdXRvIHNob3J0TG9uZyA9IHsg
InNob3J0IiwgImxvbmciIH07CisKKyAgICBTdHJpbmcgd2Vla2RheSA9IGludGxTdHJpbmdPcHRp
b24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPndlZWtkYXksIG5hcnJvd1Nob3J0
TG9uZywgIndlZWtkYXkgbXVzdCBiZSBcIm5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwibG9uZ1wi
IiwgbnVsbHB0cik7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1
cm47CisgICAgaWYgKCF3ZWVrZGF5LmlzTnVsbCgpKSB7CisgICAgICAgIGlmICh3ZWVrZGF5ID09
ICJuYXJyb3ciKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoIkVF
RUVFIik7CisgICAgICAgIGVsc2UgaWYgKHdlZWtkYXkgPT0gInNob3J0IikKKyAgICAgICAgICAg
IHNrZWxldG9uQnVpbGRlci5hcHBlbmRMaXRlcmFsKCJFRUUiKTsKKyAgICAgICAgZWxzZSBpZiAo
d2Vla2RheSA9PSAibG9uZyIpCisgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0
ZXJhbCgiRUVFRSIpOworICAgIH0KKworICAgIFN0cmluZyBlcmEgPSBpbnRsU3RyaW5nT3B0aW9u
KHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5lcmEsIG5hcnJvd1Nob3J0TG9uZywg
ImVyYSBtdXN0IGJlIFwibmFycm93XCIsIFwic2hvcnRcIiwgb3IgXCJsb25nXCIiLCBudWxscHRy
KTsKKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybjsKKyAgICBp
ZiAoIWVyYS5pc051bGwoKSkgeworICAgICAgICBpZiAoZXJhID09ICJuYXJyb3ciKQorICAgICAg
ICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoIkdHR0dHIik7CisgICAgICAgIGVs
c2UgaWYgKGVyYSA9PSAic2hvcnQiKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVu
ZExpdGVyYWwoIkdHRyIpOworICAgICAgICBlbHNlIGlmIChlcmEgPT0gImxvbmciKQorICAgICAg
ICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoIkdHR0ciKTsKKyAgICB9CisKKyAg
ICBTdHJpbmcgeWVhciA9IGludGxTdHJpbmdPcHRpb24oc3RhdGUsIG9wdGlvbnMsIHZtLnByb3Bl
cnR5TmFtZXMtPnllYXIsIHR3b0RpZ2l0TnVtZXJpYywgInllYXIgbXVzdCBiZSBcIjItZGlnaXRc
IiBvciBcIm51bWVyaWNcIiIsIG51bGxwdHIpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24o
KSkKKyAgICAgICAgcmV0dXJuOworICAgIGlmICgheWVhci5pc051bGwoKSkgeworICAgICAgICBp
ZiAoeWVhciA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5k
TGl0ZXJhbCgieXkiKTsKKyAgICAgICAgZWxzZSBpZiAoeWVhciA9PSAibnVtZXJpYyIpCisgICAg
ICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kKCd5Jyk7CisgICAgfQorCisgICAgU3RyaW5n
IG1vbnRoID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1l
cy0+bW9udGgsIHR3b0RpZ2l0TnVtZXJpY05hcnJvd1Nob3J0TG9uZywgIm1vbnRoIG11c3QgYmUg
XCIyLWRpZ2l0XCIsIFwibnVtZXJpY1wiLCBcIm5hcnJvd1wiLCBcInNob3J0XCIsIG9yIFwibG9u
Z1wiIiwgbnVsbHB0cik7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICBy
ZXR1cm47CisgICAgaWYgKCFtb250aC5pc051bGwoKSkgeworICAgICAgICBpZiAobW9udGggPT0g
IjItZGlnaXQiKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoIk1N
Iik7CisgICAgICAgIGVsc2UgaWYgKG1vbnRoID09ICJudW1lcmljIikKKyAgICAgICAgICAgIHNr
ZWxldG9uQnVpbGRlci5hcHBlbmQoJ00nKTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gIm5h
cnJvdyIpCisgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiTU1NTU0i
KTsKKyAgICAgICAgZWxzZSBpZiAobW9udGggPT0gInNob3J0IikKKyAgICAgICAgICAgIHNrZWxl
dG9uQnVpbGRlci5hcHBlbmRMaXRlcmFsKCJNTU0iKTsKKyAgICAgICAgZWxzZSBpZiAobW9udGgg
PT0gImxvbmciKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoIk1N
TU0iKTsKKyAgICB9CisKKyAgICBTdHJpbmcgZGF5ID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwg
b3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+ZGF5LCB0d29EaWdpdE51bWVyaWMsICJkYXkgbXVz
dCBiZSBcIjItZGlnaXRcIiBvciBcIm51bWVyaWNcIiIsIG51bGxwdHIpOworICAgIGlmIChzdGF0
ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuOworICAgIGlmICghZGF5LmlzTnVsbCgp
KSB7CisgICAgICAgIGlmIChkYXkgPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgc2tlbGV0b25C
dWlsZGVyLmFwcGVuZExpdGVyYWwoImRkIik7CisgICAgICAgIGVsc2UgaWYgKGRheSA9PSAibnVt
ZXJpYyIpCisgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kKCdkJyk7CisgICAgfQor
CisgICAgU3RyaW5nIGhvdXIgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5w
cm9wZXJ0eU5hbWVzLT5ob3VyLCB0d29EaWdpdE51bWVyaWMsICJob3VyIG11c3QgYmUgXCIyLWRp
Z2l0XCIgb3IgXCJudW1lcmljXCIiLCBudWxscHRyKTsKKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0
aW9uKCkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIFdlIG5lZWQgaG91cjEyIHRvIG1ha2Ug
dGhlIGhvdXIgc2tlbGV0b24gcGF0dGVybiBkZWNpc2lvbiwgc28gZG8gdGhpcyBlYXJseS4KKyAg
ICAvLyAzMi4gTGV0IGhyMTIgYmUgR2V0T3B0aW9uKG9wdGlvbnMsICJob3VyMTIiLCAiYm9vbGVh
biIsIHVuZGVmaW5lZCwgdW5kZWZpbmVkKS4KKyAgICBib29sIGlzSG91cjEyVW5kZWZpbmVkID0g
dHJ1ZTsKKyAgICBib29sIGhyMTIgPSBpbnRsQm9vbGVhbk9wdGlvbihzdGF0ZSwgb3B0aW9ucywg
dm0ucHJvcGVydHlOYW1lcy0+aG91cjEyLCBpc0hvdXIxMlVuZGVmaW5lZCk7CisgICAgLy8gMzMu
IFJldHVybklmQWJydXB0KGhyMTIpLgorICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAg
ICAgICAgcmV0dXJuOworCisgICAgaWYgKCFob3VyLmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChp
c0hvdXIxMlVuZGVmaW5lZCkgeworICAgICAgICAgICAgaWYgKGhvdXIgPT0gIjItZGlnaXQiKQor
ICAgICAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmRMaXRlcmFsKCJqaiIpOworICAg
ICAgICAgICAgZWxzZSBpZiAoaG91ciA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICAgICAgc2tl
bGV0b25CdWlsZGVyLmFwcGVuZCgnaicpOworICAgICAgICB9IGVsc2UgaWYgKGhyMTIpIHsKKyAg
ICAgICAgICAgIGlmIChob3VyID09ICIyLWRpZ2l0IikKKyAgICAgICAgICAgICAgICBza2VsZXRv
bkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiaGgiKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGhvdXIg
PT0gIm51bWVyaWMiKQorICAgICAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmQoJ2gn
KTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGlmIChob3VyID09ICIyLWRpZ2l0IikK
KyAgICAgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiSEgiKTsKKyAg
ICAgICAgICAgIGVsc2UgaWYgKGhvdXIgPT0gIm51bWVyaWMiKQorICAgICAgICAgICAgICAgIHNr
ZWxldG9uQnVpbGRlci5hcHBlbmQoJ0gnKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIFN0cmlu
ZyBtaW51dGUgPSBpbnRsU3RyaW5nT3B0aW9uKHN0YXRlLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5h
bWVzLT5taW51dGUsIHR3b0RpZ2l0TnVtZXJpYywgIm1pbnV0ZSBtdXN0IGJlIFwiMi1kaWdpdFwi
IG9yIFwibnVtZXJpY1wiIiwgbnVsbHB0cik7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICByZXR1cm47CisgICAgaWYgKCFtaW51dGUuaXNOdWxsKCkpIHsKKyAgICAgICAg
aWYgKG1pbnV0ZSA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBw
ZW5kTGl0ZXJhbCgibW0iKTsKKyAgICAgICAgZWxzZSBpZiAobWludXRlID09ICJudW1lcmljIikK
KyAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmQoJ20nKTsKKyAgICB9CisKKyAgICBT
dHJpbmcgc2Vjb25kID0gaW50bFN0cmluZ09wdGlvbihzdGF0ZSwgb3B0aW9ucywgdm0ucHJvcGVy
dHlOYW1lcy0+c2Vjb25kLCB0d29EaWdpdE51bWVyaWMsICJzZWNvbmQgbXVzdCBiZSBcIjItZGln
aXRcIiBvciBcIm51bWVyaWNcIiIsIG51bGxwdHIpOworICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRp
b24oKSkKKyAgICAgICAgcmV0dXJuOworICAgIGlmICghc2Vjb25kLmlzTnVsbCgpKSB7CisgICAg
ICAgIGlmIChzZWNvbmQgPT0gIjItZGlnaXQiKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVy
LmFwcGVuZExpdGVyYWwoInNzIik7CisgICAgICAgIGVsc2UgaWYgKHNlY29uZCA9PSAibnVtZXJp
YyIpCisgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kKCdzJyk7CisgICAgfQorCisg
ICAgU3RyaW5nIHRpbWVab25lTmFtZSA9IGludGxTdHJpbmdPcHRpb24oc3RhdGUsIG9wdGlvbnMs
IHZtLnByb3BlcnR5TmFtZXMtPnRpbWVab25lTmFtZSwgc2hvcnRMb25nLCAidGltZVpvbmVOYW1l
IG11c3QgYmUgXCJzaG9ydFwiIG9yIFwibG9uZ1wiIiwgbnVsbHB0cik7CisgICAgaWYgKHN0YXRl
LmhhZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm47CisgICAgaWYgKCF0aW1lWm9uZU5hbWUu
aXNOdWxsKCkpIHsKKyAgICAgICAgaWYgKHRpbWVab25lTmFtZSA9PSAic2hvcnQiKQorICAgICAg
ICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZCgneicpOworICAgICAgICBlbHNlIGlmICh0aW1l
Wm9uZU5hbWUgPT0gImxvbmciKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExp
dGVyYWwoInp6enoiKTsKKyAgICB9CisKKyAgICAvLyAyNC4gTGV0IGRhdGFMb2NhbGVEYXRhIGJl
IEdldChsb2NhbGVEYXRhLCBkYXRhTG9jYWxlKS4KKyAgICAvLyAyNS4gTGV0IGZvcm1hdHMgYmUg
R2V0KGRhdGFMb2NhbGVEYXRhLCAiZm9ybWF0cyIpLgorICAgIC8vIDI2LiBMZXQgbWF0Y2hlciBi
ZSBHZXRPcHRpb24ob3B0aW9ucywgImZvcm1hdE1hdGNoZXIiLCAic3RyaW5nIiwgwqsiYmFzaWMi
LCAiYmVzdCBmaXQiwrssICJiZXN0IGZpdCIpLgorICAgIGludGxTdHJpbmdPcHRpb24oc3RhdGUs
IG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmZvcm1hdE1hdGNoZXIsIHsgImJhc2ljIiwgImJl
c3QgZml0IiB9LCAiZm9ybWF0TWF0Y2hlciBtdXN0IGJlIGVpdGhlciBcImJhc2ljXCIgb3IgXCJi
ZXN0IGZpdFwiIiwgImJlc3QgZml0Iik7CisgICAgLy8gMjcuIFJldHVybklmQWJydXB0KG1hdGNo
ZXIpLgorICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuOworCisg
ICAgLy8gQWx3YXlzIHVzZSBJQ1UgZGF0ZSBmb3JtYXQgZ2VuZXJhdG9yLCByYXRoZXIgdGhhbiBv
dXIgb3duIHBhdHRlcm4gbGlzdCBhbmQgbWF0Y2hlci4KKyAgICAvLyBDb3ZlcnMgc3RlcHMgMjgt
MzYuCisgICAgVUVycm9yQ29kZSBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgVURhdGVUaW1l
UGF0dGVybkdlbmVyYXRvciogZ2VuZXJhdG9yID0gdWRhdHBnX29wZW4oZGF0YUxvY2FsZS51dGY4
KCkuZGF0YSgpLCAmc3RhdHVzKTsKKyAgICBpZiAoVV9GQUlMVVJFKHN0YXR1cykpIHsKKyAgICAg
ICAgdGhyb3dUeXBlRXJyb3IoJnN0YXRlLCBBU0NJSUxpdGVyYWwoImZhaWxlZCB0byBpbml0aWFs
aXplIERhdGVUaW1lRm9ybWF0IikpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgU3Ry
aW5nIHNrZWxldG9uID0gc2tlbGV0b25CdWlsZGVyLnRvU3RyaW5nKCk7CisgICAgU3RyaW5nVmll
dyBza2VsZXRvblZpZXcoc2tlbGV0b24pOworICAgIFZlY3RvcjxVQ2hhciwgMzI+IHBhdHRlcm5C
dWZmZXIoMzIpOworICAgIHN0YXR1cyA9IFVfWkVST19FUlJPUjsKKyAgICBhdXRvIHBhdHRlcm5M
ZW5ndGggPSB1ZGF0cGdfZ2V0QmVzdFBhdHRlcm4oZ2VuZXJhdG9yLCBza2VsZXRvblZpZXcudXBj
b252ZXJ0ZWRDaGFyYWN0ZXJzKCksIHNrZWxldG9uVmlldy5sZW5ndGgoKSwgcGF0dGVybkJ1ZmZl
ci5kYXRhKCksIHBhdHRlcm5CdWZmZXIuY2FwYWNpdHkoKSwgJnN0YXR1cyk7CisgICAgaWYgKHN0
YXR1cyA9PSBVX0JVRkZFUl9PVkVSRkxPV19FUlJPUikgeworICAgICAgICBzdGF0dXMgPSBVX1pF
Uk9fRVJST1I7CisgICAgICAgIHBhdHRlcm5CdWZmZXIgPSBWZWN0b3I8VUNoYXIsIDMyPihwYXR0
ZXJuTGVuZ3RoKTsKKyAgICAgICAgdWRhdHBnX2dldEJlc3RQYXR0ZXJuKGdlbmVyYXRvciwgc2tl
bGV0b25WaWV3LnVwY29udmVydGVkQ2hhcmFjdGVycygpLCBza2VsZXRvblZpZXcubGVuZ3RoKCks
IHBhdHRlcm5CdWZmZXIuZGF0YSgpLCBwYXR0ZXJuTGVuZ3RoLCAmc3RhdHVzKTsKKyAgICB9Cisg
ICAgdWRhdHBnX2Nsb3NlKGdlbmVyYXRvcik7CisgICAgaWYgKFVfRkFJTFVSRShzdGF0dXMpKSB7
CisgICAgICAgIHRocm93VHlwZUVycm9yKCZzdGF0ZSwgQVNDSUlMaXRlcmFsKCJmYWlsZWQgdG8g
aW5pdGlhbGl6ZSBEYXRlVGltZUZvcm1hdCIpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwor
ICAgIFN0cmluZ1ZpZXcgcGF0dGVybihwYXR0ZXJuQnVmZmVyLmRhdGEoKSwgcGF0dGVybkxlbmd0
aCk7CisgICAgc2V0Rm9ybWF0c0Zyb21QYXR0ZXJuKHBhdHRlcm4pOworCisgICAgLy8gMzcuIFNl
dCBkYXRlVGltZUZvcm1hdC5bW2JvdW5kRm9ybWF0XV0gdG8gdW5kZWZpbmVkLgorICAgIC8vIEFs
cmVhZHkgdW5kZWZpbmVkLgorCisgICAgLy8gMzguIFNldCBkYXRlVGltZUZvcm1hdC5bW2luaXRp
YWxpemVkRGF0ZVRpbWVGb3JtYXRdXSB0byB0cnVlLgorICAgIG1faW5pdGlhbGl6ZWREYXRlVGlt
ZUZvcm1hdCA9IHRydWU7CisKKyAgICAvLyAzOS4gUmV0dXJuIGRhdGVUaW1lRm9ybWF0LgorICAg
IHJldHVybjsKK30KKworY29uc3QgY2hhciogSW50bERhdGVUaW1lRm9ybWF0Ojp3ZWVrZGF5U3Ry
aW5nKFdlZWtkYXkgd2Vla2RheSkKIHsKLSAgICAvLyAxMi4zLjQgRGF0ZVRpbWUgRm9ybWF0IEZ1
bmN0aW9ucyAoRUNNQS00MDIgMi4wKQotICAgIC8vIDEuIExldCBkdGYgYmUgdGhlIHRoaXMgdmFs
dWUuCi0gICAgSW50bERhdGVUaW1lRm9ybWF0KiBmb3JtYXQgPSBqc0R5bmFtaWNDYXN0PEludGxE
YXRlVGltZUZvcm1hdCo+KHN0YXRlLT50aGlzVmFsdWUoKSk7Ci0gICAgLy8gMi4gQXNzZXJ0OiBU
eXBlKGR0ZikgaXMgT2JqZWN0IGFuZCBkdGYgaGFzIGFuIFtbaW5pdGlhbGl6ZWREYXRlVGltZUZv
cm1hdF1dIGludGVybmFsIHNsb3Qgd2hvc2UgdmFsdWUgaXMgdHJ1ZS4KLSAgICBpZiAoIWZvcm1h
dCkKLSAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihzdGF0ZSkp
OworICAgIHN3aXRjaCAod2Vla2RheSkgeworICAgIGNhc2UgV2Vla2RheTo6TmFycm93OgorICAg
ICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJuYXJyb3ciKTsKKyAgICBjYXNlIFdlZWtkYXk6OlNo
b3J0OgorICAgICAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJzaG9ydCIpOworICAgIGNhc2UgV2Vl
a2RheTo6TG9uZzoKKyAgICAgICAgcmV0dXJuIEFTQ0lJTGl0ZXJhbCgibG9uZyIpOworICAgIGNh
c2UgV2Vla2RheTo6Tm9uZToKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAg
IHJldHVybiBudWxscHRyOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICBy
ZXR1cm4gbnVsbHB0cjsKK30KIAotICAgIEpTVmFsdWUgZGF0ZSA9IHN0YXRlLT5hcmd1bWVudCgw
KTsKLSAgICBkb3VibGUgdmFsdWU7Citjb25zdCBjaGFyKiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmVy
YVN0cmluZyhFcmEgZXJhKQoreworICAgIHN3aXRjaCAoZXJhKSB7CisgICAgY2FzZSBFcmE6Ok5h
cnJvdzoKKyAgICAgICAgcmV0dXJuICJuYXJyb3ciOworICAgIGNhc2UgRXJhOjpTaG9ydDoKKyAg
ICAgICAgcmV0dXJuICJzaG9ydCI7CisgICAgY2FzZSBFcmE6Okxvbmc6CisgICAgICAgIHJldHVy
biAibG9uZyI7CisgICAgY2FzZSBFcmE6Ok5vbmU6CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hF
RCgpOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFD
SEVEKCk7CisgICAgcmV0dXJuIG51bGxwdHI7Cit9CiAKLSAgICAvLyAzLiBJZiBkYXRlIGlzIG5v
dCBwcm92aWRlZCBvciBpcyB1bmRlZmluZWQsIHRoZW4KLSAgICBpZiAoZGF0ZS5pc1VuZGVmaW5l
ZCgpKSB7Ci0gICAgICAgIC8vIGEuIExldCB4IGJlICVEYXRlX25vdyUoKS4KLSAgICAgICAgdmFs
dWUgPSBKU1ZhbHVlOjpkZWNvZGUoZGF0ZU5vdyhzdGF0ZSkpLnRvTnVtYmVyKHN0YXRlKTsKLSAg
ICB9IGVsc2UgewotICAgICAgICAvLyA0LiBFbHNlCi0gICAgICAgIC8vIGEuIExldCB4IGJlIFRv
TnVtYmVyKGRhdGUpLgotICAgICAgICB2YWx1ZSA9IGRhdGUudG9OdW1iZXIoc3RhdGUpOwotICAg
ICAgICAvLyBiLiBSZXR1cm5JZkFicnVwdCh4KS4KLSAgICAgICAgaWYgKHN0YXRlLT5oYWRFeGNl
cHRpb24oKSkKLSAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRlZmluZWQo
KSk7Citjb25zdCBjaGFyKiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OnllYXJTdHJpbmcoWWVhciB5ZWFy
KQoreworICAgIHN3aXRjaCAoeWVhcikgeworICAgIGNhc2UgWWVhcjo6VHdvRGlnaXQ6CisgICAg
ICAgIHJldHVybiAiMi1kaWdpdCI7CisgICAgY2FzZSBZZWFyOjpOdW1lcmljOgorICAgICAgICBy
ZXR1cm4gIm51bWVyaWMiOworICAgIGNhc2UgWWVhcjo6Tm9uZToKKyAgICAgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7CisgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KKyAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KIAotICAgIC8vIDUuIFJldHVy
biBGb3JtYXREYXRlVGltZShkdGYsIHgpLgorY29uc3QgY2hhciogSW50bERhdGVUaW1lRm9ybWF0
Ojptb250aFN0cmluZyhNb250aCBtb250aCkKK3sKKyAgICBzd2l0Y2ggKG1vbnRoKSB7CisgICAg
Y2FzZSBNb250aDo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiAiMi1kaWdpdCI7CisgICAgY2Fz
ZSBNb250aDo6TnVtZXJpYzoKKyAgICAgICAgcmV0dXJuICJudW1lcmljIjsKKyAgICBjYXNlIE1v
bnRoOjpOYXJyb3c6CisgICAgICAgIHJldHVybiAibmFycm93IjsKKyAgICBjYXNlIE1vbnRoOjpT
aG9ydDoKKyAgICAgICAgcmV0dXJuICJzaG9ydCI7CisgICAgY2FzZSBNb250aDo6TG9uZzoKKyAg
ICAgICAgcmV0dXJuICJsb25nIjsKKyAgICBjYXNlIE1vbnRoOjpOb25lOgorICAgICAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQorICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBudWxscHRyOworfQogCitjb25zdCBjaGFy
KiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmRheVN0cmluZyhEYXkgZGF5KQoreworICAgIHN3aXRjaCAo
ZGF5KSB7CisgICAgY2FzZSBEYXk6OlR3b0RpZ2l0OgorICAgICAgICByZXR1cm4gIjItZGlnaXQi
OworICAgIGNhc2UgRGF5OjpOdW1lcmljOgorICAgICAgICByZXR1cm4gIm51bWVyaWMiOworICAg
IGNhc2UgRGF5OjpOb25lOgorICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAg
cmV0dXJuIG51bGxwdHI7CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJl
dHVybiBudWxscHRyOworfQorCitjb25zdCBjaGFyKiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmhvdXJT
dHJpbmcoSG91ciBob3VyKQoreworICAgIHN3aXRjaCAoaG91cikgeworICAgIGNhc2UgSG91cjo6
VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiAiMi1kaWdpdCI7CisgICAgY2FzZSBIb3VyOjpOdW1l
cmljOgorICAgICAgICByZXR1cm4gIm51bWVyaWMiOworICAgIGNhc2UgSG91cjo6Tm9uZToKKyAg
ICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIHJldHVybiBudWxscHRyOworICAg
IH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKwor
Y29uc3QgY2hhciogSW50bERhdGVUaW1lRm9ybWF0OjptaW51dGVTdHJpbmcoTWludXRlIG1pbnV0
ZSkKK3sKKyAgICBzd2l0Y2ggKG1pbnV0ZSkgeworICAgIGNhc2UgTWludXRlOjpUd29EaWdpdDoK
KyAgICAgICAgcmV0dXJuICIyLWRpZ2l0IjsKKyAgICBjYXNlIE1pbnV0ZTo6TnVtZXJpYzoKKyAg
ICAgICAgcmV0dXJuICJudW1lcmljIjsKKyAgICBjYXNlIE1pbnV0ZTo6Tm9uZToKKyAgICAgICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKyAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKworY29uc3Qg
Y2hhciogSW50bERhdGVUaW1lRm9ybWF0OjpzZWNvbmRTdHJpbmcoU2Vjb25kIHNlY29uZCkKK3sK
KyAgICBzd2l0Y2ggKHNlY29uZCkgeworICAgIGNhc2UgU2Vjb25kOjpUd29EaWdpdDoKKyAgICAg
ICAgcmV0dXJuICIyLWRpZ2l0IjsKKyAgICBjYXNlIFNlY29uZDo6TnVtZXJpYzoKKyAgICAgICAg
cmV0dXJuICJudW1lcmljIjsKKyAgICBjYXNlIFNlY29uZDo6Tm9uZToKKyAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7CisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKyAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKworY29uc3QgY2hhciog
SW50bERhdGVUaW1lRm9ybWF0Ojp0aW1lWm9uZU5hbWVTdHJpbmcoVGltZVpvbmVOYW1lIHRpbWVa
b25lTmFtZSkKK3sKKyAgICBzd2l0Y2ggKHRpbWVab25lTmFtZSkgeworICAgIGNhc2UgVGltZVpv
bmVOYW1lOjpTaG9ydDoKKyAgICAgICAgcmV0dXJuICJzaG9ydCI7CisgICAgY2FzZSBUaW1lWm9u
ZU5hbWU6Okxvbmc6CisgICAgICAgIHJldHVybiAibG9uZyI7CisgICAgY2FzZSBUaW1lWm9uZU5h
bWU6Ok5vbmU6CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1cm4g
bnVsbHB0cjsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIG51
bGxwdHI7Cit9CisKK0pTT2JqZWN0KiBJbnRsRGF0ZVRpbWVGb3JtYXQ6OnJlc29sdmVkT3B0aW9u
cyhFeGVjU3RhdGUmIHN0YXRlKQoreworICAgIC8vIDEyLjMuNSBJbnRsLkRhdGVUaW1lRm9ybWF0
LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSAoRUNNQS00MDIgMi4wKQorICAgIC8vIFRoZSBm
dW5jdGlvbiByZXR1cm5zIGEgbmV3IG9iamVjdCB3aG9zZSBwcm9wZXJ0aWVzIGFuZCBhdHRyaWJ1
dGVzIGFyZSBzZXQgYXMgaWYgY29uc3RydWN0ZWQgYnkgYW4gb2JqZWN0IGxpdGVyYWwgYXNzaWdu
aW5nIHRvIGVhY2ggb2YgdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzIHRoZSB2YWx1ZSBvZiB0aGUg
Y29ycmVzcG9uZGluZyBpbnRlcm5hbCBzbG90IG9mIHRoaXMgRGF0ZVRpbWVGb3JtYXQgb2JqZWN0
IChzZWUgMTIuNCk6IGxvY2FsZSwgY2FsZW5kYXIsIG51bWJlcmluZ1N5c3RlbSwgdGltZVpvbmUs
IGhvdXIxMiwgd2Vla2RheSwgZXJhLCB5ZWFyLCBtb250aCwgZGF5LCBob3VyLCBtaW51dGUsIHNl
Y29uZCwgYW5kIHRpbWVab25lTmFtZS4gUHJvcGVydGllcyB3aG9zZSBjb3JyZXNwb25kaW5nIGlu
dGVybmFsIHNsb3RzIGFyZSBub3QgcHJlc2VudCBhcmUgbm90IGFzc2lnbmVkLgorICAgIC8vIE5v
dGU6IEluIHRoaXMgdmVyc2lvbiBvZiB0aGUgRUNNQVNjcmlwdCAyMDE1IEludGVybmF0aW9uYWxp
emF0aW9uIEFQSSwgdGhlIHRpbWVab25lIHByb3BlcnR5IHdpbGwgYmUgdGhlIG5hbWUgb2YgdGhl
IGRlZmF1bHQgdGltZSB6b25lIGlmIG5vIHRpbWVab25lIHByb3BlcnR5IHdhcyBwcm92aWRlZCBp
biB0aGUgb3B0aW9ucyBvYmplY3QgcHJvdmlkZWQgdG8gdGhlIEludGwuRGF0ZVRpbWVGb3JtYXQg
Y29uc3RydWN0b3IuIFRoZSBwcmV2aW91cyB2ZXJzaW9uIGxlZnQgdGhlIHRpbWVab25lIHByb3Bl
cnR5IHVuZGVmaW5lZCBpbiB0aGlzIGNhc2UuCisgICAgaWYgKCFtX2luaXRpYWxpemVkRGF0ZVRp
bWVGb3JtYXQpIHsKKyAgICAgICAgaW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KHN0YXRlLCBqc1Vu
ZGVmaW5lZCgpLCBqc1VuZGVmaW5lZCgpKTsKKyAgICAgICAgQVNTRVJUKCFzdGF0ZS5oYWRFeGNl
cHRpb24oKSk7CisgICAgfQorCisgICAgVk0mIHZtID0gc3RhdGUudm0oKTsKKyAgICBKU09iamVj
dCogb3B0aW9ucyA9IGNvbnN0cnVjdEVtcHR5T2JqZWN0KCZzdGF0ZSk7CisgICAgb3B0aW9ucy0+
cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5sb2NhbGUsIGpzTm9udHJpdmlhbFN0cmlu
Zygmc3RhdGUsIG1fbG9jYWxlKSk7CisgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9w
ZXJ0eU5hbWVzLT5jYWxlbmRhciwganNOb250cml2aWFsU3RyaW5nKCZzdGF0ZSwgbV9jYWxlbmRh
cikpOworICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bnVtYmVy
aW5nU3lzdGVtLCBqc05vbnRyaXZpYWxTdHJpbmcoJnN0YXRlLCBtX251bWJlcmluZ1N5c3RlbSkp
OworICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+dGltZVpvbmUs
IGpzTm9udHJpdmlhbFN0cmluZygmc3RhdGUsIG1fdGltZVpvbmUpKTsKKworICAgIGlmIChtX3dl
ZWtkYXkgIT0gV2Vla2RheTo6Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2
bS5wcm9wZXJ0eU5hbWVzLT53ZWVrZGF5LCBqc05vbnRyaXZpYWxTdHJpbmcoJnN0YXRlLCBBU0NJ
SUxpdGVyYWwod2Vla2RheVN0cmluZyhtX3dlZWtkYXkpKSkpOworCisgICAgaWYgKG1fZXJhICE9
IEVyYTo6Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5h
bWVzLT5lcmEsIGpzTm9udHJpdmlhbFN0cmluZygmc3RhdGUsIEFTQ0lJTGl0ZXJhbChlcmFTdHJp
bmcobV9lcmEpKSkpOworCisgICAgaWYgKG1feWVhciAhPSBZZWFyOjpOb25lKQorICAgICAgICBv
cHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPnllYXIsIGpzTm9udHJpdmlh
bFN0cmluZygmc3RhdGUsIEFTQ0lJTGl0ZXJhbCh5ZWFyU3RyaW5nKG1feWVhcikpKSk7CisKKyAg
ICBpZiAobV9tb250aCAhPSBNb250aDo6Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0
KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5tb250aCwganNOb250cml2aWFsU3RyaW5nKCZzdGF0ZSwg
QVNDSUlMaXRlcmFsKG1vbnRoU3RyaW5nKG1fbW9udGgpKSkpOworCisgICAgaWYgKG1fZGF5ICE9
IERheTo6Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5h
bWVzLT5kYXksIGpzTm9udHJpdmlhbFN0cmluZygmc3RhdGUsIEFTQ0lJTGl0ZXJhbChkYXlTdHJp
bmcobV9kYXkpKSkpOworCisgICAgaWYgKG1faG91ciAhPSBIb3VyOjpOb25lKSB7CisgICAgICAg
IG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+aG91ciwganNOb250cml2
aWFsU3RyaW5nKCZzdGF0ZSwgQVNDSUlMaXRlcmFsKGhvdXJTdHJpbmcobV9ob3VyKSkpKTsKKyAg
ICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyMTIsIGpz
Qm9vbGVhbihtX2hvdXIxMikpOworICAgIH0KKworICAgIGlmIChtX21pbnV0ZSAhPSBNaW51dGU6
Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+
bWludXRlLCBqc05vbnRyaXZpYWxTdHJpbmcoJnN0YXRlLCBBU0NJSUxpdGVyYWwobWludXRlU3Ry
aW5nKG1fbWludXRlKSkpKTsKKworICAgIGlmIChtX3NlY29uZCAhPSBTZWNvbmQ6Ok5vbmUpCisg
ICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+c2Vjb25kLCBq
c05vbnRyaXZpYWxTdHJpbmcoJnN0YXRlLCBBU0NJSUxpdGVyYWwoc2Vjb25kU3RyaW5nKG1fc2Vj
b25kKSkpKTsKKworICAgIGlmIChtX3RpbWVab25lTmFtZSAhPSBUaW1lWm9uZU5hbWU6Ok5vbmUp
CisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+dGltZVpv
bmVOYW1lLCBqc05vbnRyaXZpYWxTdHJpbmcoJnN0YXRlLCBBU0NJSUxpdGVyYWwodGltZVpvbmVO
YW1lU3RyaW5nKG1fdGltZVpvbmVOYW1lKSkpKTsKKworICAgIHJldHVybiBvcHRpb25zOworfQor
CitKU1ZhbHVlIEludGxEYXRlVGltZUZvcm1hdDo6Zm9ybWF0KEV4ZWNTdGF0ZSYgc3RhdGUsIGRv
dWJsZSB2YWx1ZSkKK3sKICAgICAvLyAxMi4zLjQgRm9ybWF0RGF0ZVRpbWUgYWJzdHJhY3Qgb3Bl
cmF0aW9uIChFQ01BLTQwMiAyLjApCisgICAgaWYgKCFtX2luaXRpYWxpemVkRGF0ZVRpbWVGb3Jt
YXQpIHsKKyAgICAgICAgaW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KHN0YXRlLCBqc1VuZGVmaW5l
ZCgpLCBqc1VuZGVmaW5lZCgpKTsKKyAgICAgICAgQVNTRVJUKCFzdGF0ZS5oYWRFeGNlcHRpb24o
KSk7CisgICAgfQogCiAgICAgLy8gMS4gSWYgeCBpcyBub3QgYSBmaW5pdGUgTnVtYmVyLCB0aGVu
IHRocm93IGEgUmFuZ2VFcnJvciBleGNlcHRpb24uCiAgICAgaWYgKCFzdGQ6OmlzZmluaXRlKHZh
bHVlKSkKLSAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1JhbmdlRXJyb3Ioc3Rh
dGUsIEFTQ0lJTGl0ZXJhbCgiZGF0ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1lRm9y
bWF0LmZvcm1hdCgpIikpKTsKKyAgICAgICAgcmV0dXJuIHRocm93UmFuZ2VFcnJvcigmc3RhdGUs
IEFTQ0lJTGl0ZXJhbCgiZGF0ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1lRm9ybWF0
IGZvcm1hdCgpIikpOwogCiAgICAgLy8gRklYTUU6IGltcGxlbWVudCAyIC0gOQogCiAgICAgLy8g
UmV0dXJuIG5ldyBEYXRlKHZhbHVlKS50b1N0cmluZygpIHVudGlsIHByb3Blcmx5IGltcGxlbWVu
dGVkLgotICAgIFZNJiB2bSA9IHN0YXRlLT52bSgpOwotICAgIEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QgPSBzdGF0ZS0+Y2FsbGVlKCktPmdsb2JhbE9iamVjdCgpOworICAgIFZNJiB2bSA9
IHN0YXRlLnZtKCk7CisgICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IHN0YXRlLmNh
bGxlZSgpLT5nbG9iYWxPYmplY3QoKTsKICAgICBEYXRlSW5zdGFuY2UqIGQgPSBEYXRlSW5zdGFu
Y2U6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LT5kYXRlU3RydWN0dXJlKCksIHZhbHVlKTsKLSAg
ICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKEpTVmFsdWUoZCkudG9TdHJpbmcoc3RhdGUpKTsKKyAg
ICByZXR1cm4gSlNWYWx1ZShkKS50b1N0cmluZygmc3RhdGUpOwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRl
VGltZUZvcm1hdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1l
Rm9ybWF0LmgKaW5kZXggN2RhZWQxMzhmYjA4ZGNmYTNiZTY3ZDM3YzgzYTQ3ZGI0YWFiY2JkNy4u
ZjAxOThlZjRjZjA4MDdiY2QyNDJkZjAyNGQ5NzBjYjA0ODNhOWE1OSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmgKQEAgLTQ0LDYg
KzQ0LDEwIEBAIHB1YmxpYzoKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHZvaWQgaW5pdGlh
bGl6ZURhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSYsIEpTVmFsdWUgbG9jYWxlcywgSlNWYWx1ZSBv
cHRpb25zKTsKKyAgICBKU1ZhbHVlIGZvcm1hdChFeGVjU3RhdGUmLCBkb3VibGUgdmFsdWUpOwor
ICAgIEpTT2JqZWN0KiByZXNvbHZlZE9wdGlvbnMoRXhlY1N0YXRlJik7CisKICAgICBKU0JvdW5k
RnVuY3Rpb24qIGJvdW5kRm9ybWF0KCkgY29uc3QgeyByZXR1cm4gbV9ib3VuZEZvcm1hdC5nZXQo
KTsgfQogICAgIHZvaWQgc2V0Qm91bmRGb3JtYXQoVk0mLCBKU0JvdW5kRnVuY3Rpb24qKTsKIApA
QCAtNTMsMTAgKzU3LDQ2IEBAIHByb3RlY3RlZDoKICAgICBzdGF0aWMgdm9pZCBkZXN0cm95KEpT
Q2VsbCopOwogICAgIHN0YXRpYyB2b2lkIHZpc2l0Q2hpbGRyZW4oSlNDZWxsKiwgU2xvdFZpc2l0
b3ImKTsKIAorcHJpdmF0ZToKKyAgICBlbnVtIGNsYXNzIFdlZWtkYXkgeyBOb25lLCBOYXJyb3cs
IFNob3J0LCBMb25nIH07CisgICAgZW51bSBjbGFzcyBFcmEgeyBOb25lLCBOYXJyb3csIFNob3J0
LCBMb25nIH07CisgICAgZW51bSBjbGFzcyBZZWFyIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMg
fTsKKyAgICBlbnVtIGNsYXNzIE1vbnRoIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMsIE5hcnJv
dywgU2hvcnQsIExvbmcgfTsKKyAgICBlbnVtIGNsYXNzIERheSB7IE5vbmUsIFR3b0RpZ2l0LCBO
dW1lcmljIH07CisgICAgZW51bSBjbGFzcyBIb3VyIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMg
fTsKKyAgICBlbnVtIGNsYXNzIE1pbnV0ZSB7IE5vbmUsIFR3b0RpZ2l0LCBOdW1lcmljIH07Cisg
ICAgZW51bSBjbGFzcyBTZWNvbmQgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJpYyB9OworICAgIGVu
dW0gY2xhc3MgVGltZVpvbmVOYW1lIHsgTm9uZSwgU2hvcnQsIExvbmcgfTsKKworICAgIHN0YXRp
YyBjb25zdCBjaGFyKiB3ZWVrZGF5U3RyaW5nKFdlZWtkYXkpOworICAgIHN0YXRpYyBjb25zdCBj
aGFyKiBlcmFTdHJpbmcoRXJhKTsKKyAgICBzdGF0aWMgY29uc3QgY2hhciogeWVhclN0cmluZyhZ
ZWFyKTsKKyAgICBzdGF0aWMgY29uc3QgY2hhciogbW9udGhTdHJpbmcoTW9udGgpOworICAgIHN0
YXRpYyBjb25zdCBjaGFyKiBkYXlTdHJpbmcoRGF5KTsKKyAgICBzdGF0aWMgY29uc3QgY2hhciog
aG91clN0cmluZyhIb3VyKTsKKyAgICBzdGF0aWMgY29uc3QgY2hhciogbWludXRlU3RyaW5nKE1p
bnV0ZSk7CisgICAgc3RhdGljIGNvbnN0IGNoYXIqIHNlY29uZFN0cmluZyhTZWNvbmQpOworICAg
IHN0YXRpYyBjb25zdCBjaGFyKiB0aW1lWm9uZU5hbWVTdHJpbmcoVGltZVpvbmVOYW1lKTsKKwor
ICAgIGJvb2wgbV9pbml0aWFsaXplZERhdGVUaW1lRm9ybWF0IHsgZmFsc2UgfTsKKyAgICB2b2lk
IHNldEZvcm1hdHNGcm9tUGF0dGVybihjb25zdCBTdHJpbmdWaWV3Jik7CiAgICAgV3JpdGVCYXJy
aWVyPEpTQm91bmRGdW5jdGlvbj4gbV9ib3VuZEZvcm1hdDsKKworICAgIFN0cmluZyBtX2xvY2Fs
ZSB7IEFTQ0lJTGl0ZXJhbCgiZW4iKSB9OworICAgIFN0cmluZyBtX2NhbGVuZGFyIHsgQVNDSUlM
aXRlcmFsKCJncmVnb3JpYW4iKSB9OworICAgIFN0cmluZyBtX251bWJlcmluZ1N5c3RlbSB7IEFT
Q0lJTGl0ZXJhbCgibGF0biIpIH07CisgICAgU3RyaW5nIG1fdGltZVpvbmUgeyBBU0NJSUxpdGVy
YWwoIlVUQyIpIH07CisgICAgYm9vbCBtX2hvdXIxMiB7IHRydWUgfTsKKyAgICBXZWVrZGF5IG1f
d2Vla2RheSB7IFdlZWtkYXk6Ok5vbmUgfTsKKyAgICBFcmEgbV9lcmEgeyBFcmE6Ok5vbmUgfTsK
KyAgICBZZWFyIG1feWVhciB7IFllYXI6Ok5vbmUgfTsKKyAgICBNb250aCBtX21vbnRoIHsgTW9u
dGg6Ok5vbmUgfTsKKyAgICBEYXkgbV9kYXkgeyBEYXk6Ok5vbmUgfTsKKyAgICBIb3VyIG1faG91
ciB7IEhvdXI6Ok5vbmUgfTsKKyAgICBNaW51dGUgbV9taW51dGUgeyBNaW51dGU6Ok5vbmUgfTsK
KyAgICBTZWNvbmQgbV9zZWNvbmQgeyBTZWNvbmQ6Ok5vbmUgfTsKKyAgICBUaW1lWm9uZU5hbWUg
bV90aW1lWm9uZU5hbWUgeyBUaW1lWm9uZU5hbWU6Ok5vbmUgfTsKIH07Ci0gICAgCi1FbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdEZ1bmNGb3JtYXREYXRlVGlt
ZShFeGVjU3RhdGUqKTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0
cnVjdG9yLmNwcAppbmRleCAxZTg5ZmFhYWI3ZWI4OGM3Zjg2NGUwZjUzZjI1NWNiOGEyYzVlZWNj
Li42YTdjMmU0YWZhMzc0ZDc3ZmU1ZmIwYmUyYzdjN2NiNTQzMDc3NGFjIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rv
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9y
bWF0Q29uc3RydWN0b3IuY3BwCkBAIC0xMDQsOCArMTA0LDkgQEAgc3RhdGljIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0SW50bERhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSog
c3RhdGUKICAgICBBU1NFUlQoZGF0ZVRpbWVGb3JtYXQpOwogCiAgICAgLy8gNC4gUmV0dXJuIElu
aXRpYWxpemVEYXRlVGltZUZvcm1hdChkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9ucyku
Ci0gICAgLy8gRklYTUU6IHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSW5pdGlhbGl6ZURhdGVUaW1l
Rm9ybWF0KGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKSk7Ci0KKyAgICBKU1ZhbHVl
IGxvY2FsZXMgPSBzdGF0ZS0+YXJndW1lbnQoMCk7CisgICAgSlNWYWx1ZSBvcHRpb25zID0gc3Rh
dGUtPmFyZ3VtZW50KDEpOworICAgIGRhdGVUaW1lRm9ybWF0LT5pbml0aWFsaXplRGF0ZVRpbWVG
b3JtYXQoKnN0YXRlLCBsb2NhbGVzLCBvcHRpb25zKTsKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5j
b2RlKGRhdGVUaW1lRm9ybWF0KTsKIH0KIApAQCAtMTIzLDggKzEyNCw5IEBAIHN0YXRpYyBFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGxJbnRsRGF0ZVRpbWVGb3JtYXQoRXhlY1N0YXRl
KiBzdGF0ZSkKICAgICBBU1NFUlQoZGF0ZVRpbWVGb3JtYXQpOwogCiAgICAgLy8gNC4gUmV0dXJu
IEluaXRpYWxpemVEYXRlVGltZUZvcm1hdChkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9u
cykuCi0gICAgLy8gRklYTUU6IHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSW5pdGlhbGl6ZURhdGVU
aW1lRm9ybWF0KGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKSk7Ci0KKyAgICBKU1Zh
bHVlIGxvY2FsZXMgPSBzdGF0ZS0+YXJndW1lbnQoMCk7CisgICAgSlNWYWx1ZSBvcHRpb25zID0g
c3RhdGUtPmFyZ3VtZW50KDEpOworICAgIGRhdGVUaW1lRm9ybWF0LT5pbml0aWFsaXplRGF0ZVRp
bWVGb3JtYXQoKnN0YXRlLCBsb2NhbGVzLCBvcHRpb25zKTsKICAgICByZXR1cm4gSlNWYWx1ZTo6
ZW5jb2RlKGRhdGVUaW1lRm9ybWF0KTsKIH0KIApAQCAtMTYxLDcgKzE2Myw3IEBAIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3JGdW5jU3Vw
cG9ydGVkTG9jYWxlc09mCiAgICAgLy8gMy4gUmV0dXJuIFN1cHBvcnRlZExvY2FsZXMoYXZhaWxh
YmxlTG9jYWxlcywgcmVxdWVzdGVkTG9jYWxlcywgb3B0aW9ucykuCiAgICAgcmV0dXJuIEpTVmFs
dWU6OmVuY29kZShzdXBwb3J0ZWRMb2NhbGVzKCpzdGF0ZSwgYXZhaWxhYmxlTG9jYWxlcywgcmVx
dWVzdGVkTG9jYWxlcywgc3RhdGUtPmFyZ3VtZW50KDEpKSk7CiB9Ci0gICAgCisKIHZvaWQgSW50
bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3I6OnZpc2l0Q2hpbGRyZW4oSlNDZWxsKiBjZWxsLCBT
bG90VmlzaXRvciYgdmlzaXRvcikKIHsKICAgICBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rv
ciogdGhpc09iamVjdCA9IGpzQ2FzdDxJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcio+KGNl
bGwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVU
aW1lRm9ybWF0UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKaW5kZXggZDVlNTI1OTgyNDgwYjFlZDQ5MWU2
YjdiOGZiMTJiYjhhZjFhZWU3ZC4uZmY0OGVjNDU1ZGFkMTQ1NTFjYmIxZDIzM2U3ZWIyYjgwYzA3
ZTJhYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVU
aW1lRm9ybWF0UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCkBAIC0yOCwxOSArMjgsMTggQEAKIAog
I2lmIEVOQUJMRShJTlRMKQogCisjaW5jbHVkZSAiRGF0ZUNvbnN0cnVjdG9yLmgiCiAjaW5jbHVk
ZSAiRXJyb3IuaCIKICNpbmNsdWRlICJJbnRsRGF0ZVRpbWVGb3JtYXQuaCIKKyNpbmNsdWRlICJJ
bnRsT2JqZWN0LmgiCiAjaW5jbHVkZSAiSlNCb3VuZEZ1bmN0aW9uLmgiCiAjaW5jbHVkZSAiSlND
SlNWYWx1ZUlubGluZXMuaCIKICNpbmNsdWRlICJKU0NlbGxJbmxpbmVzLmgiCiAjaW5jbHVkZSAi
SlNPYmplY3QuaCIKLSNpbmNsdWRlICJPYmplY3RDb25zdHJ1Y3Rvci5oIgogI2luY2x1ZGUgIlN0
cnVjdHVyZUlubGluZXMuaCIKIAogbmFtZXNwYWNlIEpTQyB7CiAKLVNUQVRJQ19BU1NFUlRfSVNf
VFJJVklBTExZX0RFU1RSVUNUSUJMRShJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUpOwotCiBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90
b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0YXRlKik7CiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25z
KEV4ZWNTdGF0ZSopOwogCkBAIC04Niw2ICs4NSwzMyBAQCBib29sIEludGxEYXRlVGltZUZvcm1h
dFByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0
ZQogICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KHN0YXRlLCBkYXRl
VGltZUZvcm1hdFByb3RvdHlwZVRhYmxlLCBqc0Nhc3Q8SW50bERhdGVUaW1lRm9ybWF0UHJvdG90
eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KIAorc3RhdGljIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVUaW1lRm9ybWF0RnVuY0Zvcm1hdERhdGVUaW1l
KEV4ZWNTdGF0ZSogc3RhdGUpCit7CisgICAgLy8gMTIuMy40IERhdGVUaW1lIEZvcm1hdCBGdW5j
dGlvbnMgKEVDTUEtNDAyIDIuMCkKKyAgICAvLyAxLiBMZXQgZHRmIGJlIHRoZSB0aGlzIHZhbHVl
LgorICAgIC8vIDIuIEFzc2VydDogVHlwZShkdGYpIGlzIE9iamVjdCBhbmQgZHRmIGhhcyBhbiBb
W2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXRdXSBpbnRlcm5hbCBzbG90IHdob3NlIHZhbHVlIGlz
IHRydWUuCisgICAgSW50bERhdGVUaW1lRm9ybWF0KiBmb3JtYXQgPSBqc0Nhc3Q8SW50bERhdGVU
aW1lRm9ybWF0Kj4oc3RhdGUtPnRoaXNWYWx1ZSgpKTsKKworICAgIEpTVmFsdWUgZGF0ZSA9IHN0
YXRlLT5hcmd1bWVudCgwKTsKKyAgICBkb3VibGUgdmFsdWU7CisKKyAgICAvLyAzLiBJZiBkYXRl
IGlzIG5vdCBwcm92aWRlZCBvciBpcyB1bmRlZmluZWQsIHRoZW4KKyAgICBpZiAoZGF0ZS5pc1Vu
ZGVmaW5lZCgpKSB7CisgICAgICAgIC8vIGEuIExldCB4IGJlICVEYXRlX25vdyUoKS4KKyAgICAg
ICAgdmFsdWUgPSBKU1ZhbHVlOjpkZWNvZGUoZGF0ZU5vdyhzdGF0ZSkpLnRvTnVtYmVyKHN0YXRl
KTsKKyAgICB9IGVsc2UgeworICAgICAgICAvLyA0LiBFbHNlCisgICAgICAgIC8vIGEuIExldCB4
IGJlIFRvTnVtYmVyKGRhdGUpLgorICAgICAgICB2YWx1ZSA9IGRhdGUudG9OdW1iZXIoc3RhdGUp
OworICAgICAgICAvLyBiLiBSZXR1cm5JZkFicnVwdCh4KS4KKyAgICAgICAgaWYgKHN0YXRlLT5o
YWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRl
ZmluZWQoKSk7CisgICAgfQorCisgICAgLy8gNS4gUmV0dXJuIEZvcm1hdERhdGVUaW1lKGR0Ziwg
eCkuCisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShmb3JtYXQtPmZvcm1hdCgqc3RhdGUsIHZh
bHVlKSk7Cit9CisKIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVUaW1lRm9y
bWF0UHJvdG90eXBlR2V0dGVyRm9ybWF0KEV4ZWNTdGF0ZSogc3RhdGUpCiB7CiAgICAgLy8gMTIu
My4zIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCAoRUNNQS00MDIgMi4wKQpA
QCAtOTQsNyArMTIwLDcgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0YXRlKgogICAgIC8vIDIuIFJldHVy
bklmQWJydXB0KGR0ZikuCiAgICAgaWYgKCFkdGYpCiAgICAgICAgIHJldHVybiBKU1ZhbHVlOjpl
bmNvZGUodGhyb3dUeXBlRXJyb3Ioc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiSW50bC5EYXRlVGltZUZv
cm1hdC5wcm90b3R5cGUuZm9ybWF0IGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9iamVj
dCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1lRm9ybWF0IikpKTsKLSAgICAKKwogICAgIEpTQm91
bmRGdW5jdGlvbiogYm91bmRGb3JtYXQgPSBkdGYtPmJvdW5kRm9ybWF0KCk7CiAgICAgLy8gMy4g
SWYgdGhlIFtbYm91bmRGb3JtYXRdXSBpbnRlcm5hbCBzbG90IG9mIHRoaXMgRGF0ZVRpbWVGb3Jt
YXQgb2JqZWN0IGlzIHVuZGVmaW5lZCwKICAgICBpZiAoIWJvdW5kRm9ybWF0KSB7CkBAIC0xMDYs
NyArMTMyLDcgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0YXRlKgogICAgICAgICBKU0FycmF5KiBib3Vu
ZEFyZ3MgPSBKU0FycmF5Ojp0cnlDcmVhdGVVbmluaXRpYWxpemVkKHZtLCBnbG9iYWxPYmplY3Qt
PmFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbihBcnJheVdpdGhV
bmRlY2lkZWQpLCAwKTsKICAgICAgICAgaWYgKCFib3VuZEFyZ3MpCiAgICAgICAgICAgICByZXR1
cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93T3V0T2ZNZW1vcnlFcnJvcihzdGF0ZSkpOwotICAgICAg
ICAKKwogICAgICAgICAvLyBjLiBMZXQgYmYgYmUgQm91bmRGdW5jdGlvbkNyZWF0ZShGLCDCq3Ro
aXMgdmFsdWXCuykuCiAgICAgICAgIGJvdW5kRm9ybWF0ID0gSlNCb3VuZEZ1bmN0aW9uOjpjcmVh
dGUodm0sIGdsb2JhbE9iamVjdCwgdGFyZ2V0T2JqZWN0LCBkdGYsIGJvdW5kQXJncywgMSwgQVND
SUlMaXRlcmFsKCJmb3JtYXQiKSk7CiAgICAgICAgIC8vIGQuIFNldCBkdGYuW1tib3VuZEZvcm1h
dF1dIHRvIGJmLgpAQCAtMTE5LDE4ICsxNDUsMTEgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1Rf
Q0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0YXRlKgog
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVG
dW5jUmVzb2x2ZWRPcHRpb25zKEV4ZWNTdGF0ZSogc3RhdGUpCiB7CiAgICAgLy8gMTIuMy41IElu
dGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIChFQ01BLTQwMiAy
LjApCi0gICAgSW50bERhdGVUaW1lRm9ybWF0KiBkdGYgPSBqc0R5bmFtaWNDYXN0PEludGxEYXRl
VGltZUZvcm1hdCo+KHN0YXRlLT50aGlzVmFsdWUoKSk7Ci0gICAgaWYgKCFkdGYpCisgICAgSW50
bERhdGVUaW1lRm9ybWF0KiBkYXRlVGltZUZvcm1hdCA9IGpzRHluYW1pY0Nhc3Q8SW50bERhdGVU
aW1lRm9ybWF0Kj4oc3RhdGUtPnRoaXNWYWx1ZSgpKTsKKyAgICBpZiAoIWRhdGVUaW1lRm9ybWF0
KQogICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93VHlwZUVycm9yKHN0YXRlLCBB
U0NJSUxpdGVyYWwoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9u
cyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBE
YXRlVGltZUZvcm1hdCIpKSk7CiAKLSAgICAvLyBUaGUgZnVuY3Rpb24gcmV0dXJucyBhIG5ldyBv
YmplY3Qgd2hvc2UgcHJvcGVydGllcyBhbmQgYXR0cmlidXRlcyBhcmUgc2V0IGFzIGlmIGNvbnN0
cnVjdGVkIGJ5IGFuIG9iamVjdCBsaXRlcmFsIGFzc2lnbmluZyB0byBlYWNoIG9mIHRoZSBmb2xs
b3dpbmcgcHJvcGVydGllcyB0aGUgdmFsdWUgb2YgdGhlIGNvcnJlc3BvbmRpbmcgaW50ZXJuYWwg
c2xvdCBvZiB0aGlzIERhdGVUaW1lRm9ybWF0IG9iamVjdCAoc2VlIDEyLjQpOiBsb2NhbGUsIGNh
bGVuZGFyLCBudW1iZXJpbmdTeXN0ZW0sIHRpbWVab25lLCBob3VyMTIsIHdlZWtkYXksIGVyYSwg
eWVhciwgbW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQsIGFuZCB0aW1lWm9uZU5hbWUu
IFByb3BlcnRpZXMgd2hvc2UgY29ycmVzcG9uZGluZyBpbnRlcm5hbCBzbG90cyBhcmUgbm90IHBy
ZXNlbnQgYXJlIG5vdCBhc3NpZ25lZC4KLSAgICAvLyBOb3RlOiBJbiB0aGlzIHZlcnNpb24gb2Yg
dGhlIEVDTUFTY3JpcHQgMjAxNSBJbnRlcm5hdGlvbmFsaXphdGlvbiBBUEksIHRoZSB0aW1lWm9u
ZSBwcm9wZXJ0eSB3aWxsIGJlIHRoZSBuYW1lIG9mIHRoZSBkZWZhdWx0IHRpbWUgem9uZSBpZiBu
byB0aW1lWm9uZSBwcm9wZXJ0eSB3YXMgcHJvdmlkZWQgaW4gdGhlIG9wdGlvbnMgb2JqZWN0IHBy
b3ZpZGVkIHRvIHRoZSBJbnRsLkRhdGVUaW1lRm9ybWF0IGNvbnN0cnVjdG9yLiBUaGUgcHJldmlv
dXMgdmVyc2lvbiBsZWZ0IHRoZSB0aW1lWm9uZSBwcm9wZXJ0eSB1bmRlZmluZWQgaW4gdGhpcyBj
YXNlLgotCi0gICAgSlNPYmplY3QqIG9wdGlvbnMgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdChzdGF0
ZSk7Ci0KLSAgICAvLyBGSVhNRTogUG9wdWxhdGUgb2JqZWN0IGZyb20gaW50ZXJuYWwgc2xvdHMu
Ci0KLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKG9wdGlvbnMpOworICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUoZGF0ZVRpbWVGb3JtYXQtPnJlc29sdmVkT3B0aW9ucygqc3RhdGUpKTsKIH0K
IAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxPYmplY3QuY3BwCmluZGV4IGNkOTA2ODYzYjE5ZGQzY2I3NDI3OTlmNDJkODQyYzc0MTE0ODcz
YmEuLmMxNDdlOTA4NGNhNGRmNzVlODkxMmI0MGNkYjdiYWNmNzM5ZDFmNTEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuY3BwCkBAIC00NSw2ICs0NSw3IEBA
CiAjaW5jbHVkZSAiTG9va3VwLmgiCiAjaW5jbHVkZSAiT2JqZWN0UHJvdG90eXBlLmgiCiAjaW5j
bHVkZSA8dW5pY29kZS91bG9jLmg+CisjaW5jbHVkZSA8dW5pY29kZS91bnVtc3lzLmg+CiAjaW5j
bHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIAogbmFtZXNwYWNlIEpTQyB7CkBAIC03NTEsNiArNzUy
LDcgQEAgSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4gcmVzb2x2ZUxvY2FsZShjb25zdCBIYXNoU2V0
PFN0cmluZz4mIGF2YWlsYWJsZUxvY2FsZXMsIGMKICAgICAgICAgICAgIHNpemVfdCBrZXlQb3Mg
PSBleHRlbnNpb25TdWJ0YWdzLmZpbmQoa2V5KTsKICAgICAgICAgICAgIC8vIGlpLiBJZiBrZXlQ
b3MgIT0gLTEsIHRoZW4KICAgICAgICAgICAgIGlmIChrZXlQb3MgIT0gbm90Rm91bmQpIHsKKyAg
ICAgICAgICAgICAgICAvLyBGSVhNRTogaHR0cHM6Ly9naXRodWIuY29tL3RjMzkvZWNtYTQwMi9p
c3N1ZXMvNTkKICAgICAgICAgICAgICAgICAvLyAxLiBJZiBrZXlQb3MgKyAxIDwgZXh0ZW5zaW9u
U3VidGFnc0xlbmd0aCBhbmQgdGhlIGxlbmd0aCBvZiB0aGUgcmVzdWx0IG9mIEdldChleHRlbnNp
b25TdWJ0YWdzLCBUb1N0cmluZyhrZXlQb3MgKzEpKSBpcyBncmVhdGVyIHRoYW4gMiwgdGhlbgog
ICAgICAgICAgICAgICAgIGlmIChrZXlQb3MgKyAxIDwgZXh0ZW5zaW9uU3VidGFncy5zaXplKCkg
JiYgZXh0ZW5zaW9uU3VidGFnc1trZXlQb3MgKyAxXS5sZW5ndGgoKSA+IDIpIHsKICAgICAgICAg
ICAgICAgICAgICAgY29uc3QgU3RyaW5nJiByZXF1ZXN0ZWRWYWx1ZSA9IGV4dGVuc2lvblN1YnRh
Z3Nba2V5UG9zICsgMV07CkBAIC05MjEsNiArOTIzLDc0IEBAIEpTVmFsdWUgc3VwcG9ydGVkTG9j
YWxlcyhFeGVjU3RhdGUmIHN0YXRlLCBjb25zdCBIYXNoU2V0PFN0cmluZz4mIGF2YWlsYWJsZUxv
Y2FsCiAgICAgcmV0dXJuIHN1cHBvcnRlZExvY2FsZXM7CiB9CiAKK1ZlY3RvcjxTdHJpbmc+IGdl
dE51bWJlcmluZ1N5c3RlbXNGb3JMb2NhbGUoY29uc3QgU3RyaW5nJiBsb2NhbGUpCit7CisgICAg
Ly8gdW51bXN5c19vcGVuQXZhaWxhYmxlTmFtZXMgYXBwZWFycyB0byBvbmx5IGJlIGFibGUgdXNh
YmxlIG9uY2UgcGVyIHByb2Nlc3MsIHNvIHVzZSBzdGF0aWMgbGlzdCBpbnN0ZWFkLgorICAgIFVF
cnJvckNvZGUgc3RhdHVzKFVfWkVST19FUlJPUik7CisgICAgVU51bWJlcmluZ1N5c3RlbSogZGVm
YXVsdFN5c3RlbSA9IHVudW1zeXNfb3Blbihsb2NhbGUudXRmOCgpLmRhdGEoKSwgJnN0YXR1cyk7
CisgICAgQVNTRVJUKFVfU1VDQ0VTUyhzdGF0dXMpKTsKKyAgICBTdHJpbmcgZGVmYXVsdFN5c3Rl
bU5hbWUodW51bXN5c19nZXROYW1lKGRlZmF1bHRTeXN0ZW0pKTsKKyAgICB1bnVtc3lzX2Nsb3Nl
KGRlZmF1bHRTeXN0ZW0pOworCisgICAgVmVjdG9yPFN0cmluZz4gbnVtYmVyaW5nU3lzdGVtcyh7
CisgICAgICAgIGRlZmF1bHRTeXN0ZW1OYW1lLAorICAgICAgICBBU0NJSUxpdGVyYWwoImFyYWIi
KSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJhcmFiZXh0IiksCisgICAgICAgIEFTQ0lJTGl0ZXJh
bCgiYXJtbiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImFybW5sb3ciKSwKKyAgICAgICAgQVND
SUlMaXRlcmFsKCJiYWxpIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiYmVuZyIpLAorICAgICAg
ICBBU0NJSUxpdGVyYWwoImNoYW0iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJkZXZhIiksCisg
ICAgICAgIEFTQ0lJTGl0ZXJhbCgiZXRoaSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImZ1bGx3
aWRlIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiZ2VvciIpLAorICAgICAgICBBU0NJSUxpdGVy
YWwoImdyZWsiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJncmVrbG93IiksCisgICAgICAgIEFT
Q0lJTGl0ZXJhbCgiZ3VqciIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImd1cnUiKSwKKyAgICAg
ICAgQVNDSUlMaXRlcmFsKCJoYW5pZGF5cyIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbmlk
ZWMiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJoYW5zIiksCisgICAgICAgIEFTQ0lJTGl0ZXJh
bCgiaGFuc2ZpbiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImhhbnQiKSwKKyAgICAgICAgQVND
SUlMaXRlcmFsKCJoYW50ZmluIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgiaGViciIpLAorICAg
ICAgICBBU0NJSUxpdGVyYWwoImphdmEiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJqcGFuIiks
CisgICAgICAgIEFTQ0lJTGl0ZXJhbCgianBhbmZpbiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwo
ImthbGkiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJraG1yIiksCisgICAgICAgIEFTQ0lJTGl0
ZXJhbCgia25kYSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImxhbmEiKSwKKyAgICAgICAgQVND
SUlMaXRlcmFsKCJsYW5hdGhhbSIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoImxhb28iKSwKKyAg
ICAgICAgQVNDSUlMaXRlcmFsKCJsYXRuIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibGVwYyIp
LAorICAgICAgICBBU0NJSUxpdGVyYWwoImxpbWIiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJt
bHltIiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgibW9uZyIpLAorICAgICAgICBBU0NJSUxpdGVy
YWwoIm10ZWkiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJteW1yIiksCisgICAgICAgIEFTQ0lJ
TGl0ZXJhbCgibXltcnNoYW4iKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJua29vIiksCisgICAg
ICAgIEFTQ0lJTGl0ZXJhbCgib2xjayIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoIm9yeWEiKSwK
KyAgICAgICAgQVNDSUlMaXRlcmFsKCJyb21hbiIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInJv
bWFubG93IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgic2F1ciIpLAorICAgICAgICBBU0NJSUxp
dGVyYWwoInN1bmQiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJ0YWx1IiksCisgICAgICAgIEFT
Q0lJTGl0ZXJhbCgidGFtbCIpLAorICAgICAgICBBU0NJSUxpdGVyYWwoInRhbWxkZWMiKSwKKyAg
ICAgICAgQVNDSUlMaXRlcmFsKCJ0ZWx1IiksCisgICAgICAgIEFTQ0lJTGl0ZXJhbCgidGhhaSIp
LAorICAgICAgICBBU0NJSUxpdGVyYWwoInRpYnQiKSwKKyAgICAgICAgQVNDSUlMaXRlcmFsKCJ2
YWlpIiksCisgICAgfSk7CisgICAgcmV0dXJuIG51bWJlcmluZ1N5c3RlbXM7Cit9CisKIH0gLy8g
bmFtZXNwYWNlIEpTQwogCiAjZW5kaWYgLy8gRU5BQkxFKElOVEwpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmgKaW5kZXggMzE4OTk4Mjc0ZjAwZTk5MTA4NmFkZGZj
NjMxMGM5YmM5ZDI2NDUxZC4uMjk2YTkwYWY2MzhmMDg0N2VkMjk5YjhlODRiYjE2NmEwNjliODk5
YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaApAQCAtNjQs
OCArNjQsOSBAQCBTdHJpbmcgaW50bFN0cmluZ09wdGlvbihFeGVjU3RhdGUmLCBKU1ZhbHVlIG9w
dGlvbnMsIFByb3BlcnR5TmFtZSwgc3RkOjppbml0aWFsaQogVmVjdG9yPFN0cmluZz4gY2Fub25p
Y2FsaXplTG9jYWxlTGlzdChFeGVjU3RhdGUmLCBKU1ZhbHVlIGxvY2FsZXMpOwogSGFzaE1hcDxT
dHJpbmcsIFN0cmluZz4gcmVzb2x2ZUxvY2FsZShjb25zdCBIYXNoU2V0PFN0cmluZz4mIGF2YWls
YWJsZUxvY2FsZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiByZXF1ZXN0ZWRMb2NhbGVzLCBjb25z
dCBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiYgb3B0aW9ucywgY29uc3QgY2hhciogY29uc3QgcmVs
ZXZhbnRFeHRlbnNpb25LZXlzW10sIHNpemVfdCByZWxldmFudEV4dGVuc2lvbktleUNvdW50LCBW
ZWN0b3I8U3RyaW5nPiAoKmxvY2FsZURhdGEpKGNvbnN0IFN0cmluZyYsIHNpemVfdCkpOwogSlNW
YWx1ZSBzdXBwb3J0ZWRMb2NhbGVzKEV4ZWNTdGF0ZSYsIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiYg
YXZhaWxhYmxlTG9jYWxlcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHJlcXVlc3RlZExvY2FsZXMs
IEpTVmFsdWUgb3B0aW9ucyk7Ci1TdHJpbmcgcmVtb3ZlVW5pY29kZUxvY2FsZUV4dGVuc2lvbihj
b25zdCBTdHJpbmcmKTsKLVN0cmluZyBiZXN0QXZhaWxhYmxlTG9jYWxlKGNvbnN0IEhhc2hTZXQ8
U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYpOworU3RyaW5nIHJlbW92ZVVuaWNvZGVMb2NhbGVFeHRl
bnNpb24oY29uc3QgU3RyaW5nJiBsb2NhbGUpOworU3RyaW5nIGJlc3RBdmFpbGFibGVMb2NhbGUo
Y29uc3QgSGFzaFNldDxTdHJpbmc+JiBhdmFpbGFibGVMb2NhbGVzLCBjb25zdCBTdHJpbmcmIHJl
cXVlc3RlZExvY2FsZSk7CitWZWN0b3I8U3RyaW5nPiBnZXROdW1iZXJpbmdTeXN0ZW1zRm9yTG9j
YWxlKGNvbnN0IFN0cmluZyYgbG9jYWxlKTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRpb25zV2luLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlv
bnNXaW4uY21ha2UKaW5kZXggMGE4ODYxNzIxNzExNzNmZDVhMDBkMDc4OTAyYjg3NDMyYjIxZjU5
MS4uZTg4ZmM2YzhhZThkMDYxZWRmM2UxNzEzZDhhYTgzOThiYmQ3ZTBiZSAxMDA2NDQKLS0tIGEv
U291cmNlL2NtYWtlL09wdGlvbnNXaW4uY21ha2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNX
aW4uY21ha2UKQEAgLTU1LDcgKzU1LDYgQEAgV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFM
VUUoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCBQVUJMSUMgT0ZGKQogV0VCS0lUX09Q
VElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEggUFVCTElDIE9G
RikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9JTlBVVF9UWVBFX1RJ
TUUgUFVCTElDIE9GRikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9J
TlBVVF9UWVBFX1dFRUsgUFVCTElDIE9GRikKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZB
TFVFKEVOQUJMRV9JTlRMIFBVQkxJQyBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZB
TFVFKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUyBQVUJMSUMgT04pCiBXRUJLSVRf
T1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlMgUFVC
TElDIE9GRikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9MRUdBQ1lf
VkVORE9SX1BSRUZJWEVTIFBVQkxJQyBPRkYpCkBAIC0xNjMsMTEgKzE2MiwxMSBAQCBpZiAoTVNW
QykKIAogICAgICMgVHVybiBvZmYgY2VydGFpbiBsaW5rIGZlYXR1cmVzCiAgICAgYWRkX2NvbXBp
bGVfb3B0aW9ucygvR3ktIC9vcGVubXAtIC9HRi0pCi0gICAgCisKICAgICBpZiAoJHtDTUFLRV9C
VUlMRF9UWVBFfSBNQVRDSEVTICJEZWJ1ZyIpCiAgICAgICAgIHNldChDTUFLRV9TSEFSRURfTElO
S0VSX0ZMQUdTICIke0NNQUtFX1NIQVJFRF9MSU5LRVJfRkxBR1N9IC9PUFQ6Tk9SRUYgL09QVDpO
T0lDRiIpCiAgICAgICAgIHNldChDTUFLRV9FWEVfTElOS0VSX0ZMQUdTICIke0NNQUtFX0VYRV9M
SU5LRVJfRkxBR1N9IC9PUFQ6Tk9SRUYgL09QVDpOT0lDRiIpCi0gICAgICAgIAorCiAgICAgICAg
ICMgVG8gZGVidWcgbGlua2luZyB0aW1lIGlzc3VlcywgdW5jb21tZW50IHRoZSBmb2xsb3dpbmcg
dGhyZWUgbGluZXM6CiAgICAgICAgICNhZGRfY29tcGlsZV9vcHRpb25zKC9CdikKICAgICAgICAg
I3NldChDTUFLRV9TSEFSRURfTElOS0VSX0ZMQUdTICIke0NNQUtFX1NIQVJFRF9MSU5LRVJfRkxB
R1N9IC9WRVJCT1NFIC9WRVJCT1NFOklOQ1IgL1RJTUUiKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDM3MTE3ZGUzMDliODY2
ZWMyNmQ2MDU1MDM5MGJkNzhjMGMzNjZkOTYuLmE0NGFlZjA3YzIzOWUwM2NjOTQwNjEzOGMzZWZh
YWNhOGI1OTZiNTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxNS0xMi0xOCAgQW5keSBWYW5X
YWdvbmVyICA8YW5keUBpbnN0cnVjdHVyZS5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVu
dCBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICoganMvaW50bC1kYXRl
dGltZWZvcm1hdC1leHBlY3RlZC50eHQ6IEFkZGVkIHJlc29sdmVkT3B0aW9ucyB0ZXN0cy4KKyAg
ICAgICAgKiBqcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5qczogQWRkZWQgcmVz
b2x2ZWRPcHRpb25zIHRlc3RzLgorICAgICAgICAoc3RyaW5nX2FwcGVhcmVkX2hlcmUpOgorCiAy
MDE1LTEyLTE3ICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAg
ICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMTk0MjQxIGFuZCByMTk0MjUyLgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvanMvaW50bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dAppbmRleCBkMDE2
YzgwMDQ3ZDY0ZDAyMzhiNWM5NmQ3YjkwYjZjNGFlMWM5ZWE0Li4yM2IwZmM1NjAwYjRlNTdlNWRm
NzQ4NjQ4YTY2ZmU0YmZhY2Y1OGI0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9pbnRsLWRh
dGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0
aW1lZm9ybWF0LWV4cGVjdGVkLnR4dApAQCAtNTQsNyArNTQsNyBAQCBQQVNTIE9iamVjdC5kZWZp
bmVQcm9wZXJ0eSh7fSwgJ2Zvcm1hdCcsIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
SW50bC5EYQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgIT09IElu
dGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQgaXMgdHJ1ZQogUEFTUyBuZXcgSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLmZvcm1hdCAhPT0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQgaXMg
dHJ1ZQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoeyB2YWx1ZU9m
KCkgeyB0aHJvdyBFcnJvcignNGInKSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogNGIuCi1Q
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdChJbmZpbml0eSkgdGhyZXcg
ZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGRhdGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRlVGlt
ZUZvcm1hdC5mb3JtYXQoKS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9y
bWF0KEluZmluaXR5KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZGF0ZSB2YWx1ZSBpcyBu
b3QgZmluaXRlIGluIERhdGVUaW1lRm9ybWF0IGZvcm1hdCgpLgogUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2FsbChudWxsLCAwKSBpcyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCkuZm9ybWF0KDApCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1h
dC5jYWxsKEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyJyksIDApIGlzIEludGwuRGF0ZVRpbWVGb3Jt
YXQoKS5mb3JtYXQoMCkKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0
LmNhbGwoNSwgMCkgaXMgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKQpAQCAtNjMsOCAr
NjMsMTY5NyBAQCBQQVNTIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0LmNhbGwoSW50
bC5EYXRlVGltZUZvcm1hdCgnYXInKSwgMCkgaXMgSW50bAogUEFTUyBuZXcgSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLmZvcm1hdC5jYWxsKDUsIDApIGlzIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3Jt
YXQoMCkKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
Lmxlbmd0aCBpcyAwCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucygpIGlzIGFuIGluc3RhbmNlIG9mIE9iamVjdAorUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUgaXMgbmV3IEludGwuRGF0ZVRp
bWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgbmV3IEludGwuRGF0
ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZQorUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyBuZXcgSW50
bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3Rl
bSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlv
bnMoKS53ZWVrZGF5IGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25z
KCkud2Vla2RheQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMoKS5lcmEgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMo
KS5lcmEKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
KCkueWVhciBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnll
YXIKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCku
bW9udGggaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5tb250
aAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5k
YXkgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuaG91ciBp
cyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIGlz
IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBp
cyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZQorUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQg
aXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmVOYW1lIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmVOYW1lCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucygpID09PSBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMo
KSBpcyBmYWxzZQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMuY2FsbCg1KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBJbnRsLkRhdGVUaW1lRm9y
bWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3Qg
YW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0ZVRpbWVGb3JtYXQuCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJyQnKSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogaW52YWxpZCBsYW5n
dWFnZSB0YWc6ICQuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgbnVsbCkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2
ZWRPcHRpb25zKCkud2Vla2RheSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMgJ251bWVyaWMnCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuZGF5IGlzICdu
dW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygp
LnllYXIgaXMgJ251bWVyaWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2
ZWRPcHRpb25zKCkuaG91ciBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIGlzIHVuZGVmaW5lZAor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCBp
cyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZU5hbWUgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBsb2NhbGVNYXRjaGVyOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbm9wZScgfSB9IH0p
IHRocmV3IGV4Y2VwdGlvbiBub3BlLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
bG9jYWxlTWF0Y2hlcjonYmFkJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogbG9jYWxl
TWF0Y2hlciBtdXN0IGJlIGVpdGhlciAibG9va3VwIiBvciAiYmVzdCBmaXQiLgorUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjonbG9va3VwJyB9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxvY2Fs
ZU1hdGNoZXI6J2Jlc3QgZml0JyB9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6IHsgdG9TdHJpbmcoKSB7IHRo
cm93ICdub3BlJyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIG5vcGUuCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBmb3JtYXRNYXRjaGVyOidiYWQnIH0pIHRocmV3IGV4Y2VwdGlvbiBS
YW5nZUVycm9yOiBmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0aGVyICJiYXNpYyIgb3IgImJlc3Qg
Zml0Ii4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2Jh
c2ljJyB9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2Jlc3QgZml0JyB9KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnbm93aGVy
ZS9ib2d1cycgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGludmFsaWQgdGltZSB6b25l
OiBub3doZXJlL2JvZ3VzLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdub3BlJyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIG5v
cGUuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ2FtZXJpY2Ev
ZGVudmVyJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9EZW52ZXIn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FNRVJJQ0EvTE9T
X0FOR0VMRVMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0xvc19B
bmdlbGVzJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6IEludGwu
RGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
QW1lcmljYS9BdGthJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9B
ZGFrJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNh
L0Vuc2VuYWRhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9UaWp1
YW5hJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNh
L1BvcnRvX0FjcmUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1Jp
b19CcmFuY28nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0Ft
ZXJpY2EvU2hpcHJvY2snIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNh
L0RlbnZlcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQW50
YXJjdGljYS9Tb3V0aF9Qb2xlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnUGFj
aWZpYy9BdWNrbGFuZCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnQXNpYS9Bc2hraGFiYWQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lh
L0FzaGdhYmF0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
c2lhL0Nob25ncWluZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvU2hh
bmdoYWknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEv
Q2h1bmdraW5nJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9TaGFuZ2hh
aScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9EYWNj
YScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvRGhha2EnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvSGFyYmluJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9TaGFuZ2hhaScKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9LYXNoZ2FyJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9VcnVtcWknCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvTWFjYW8nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdBc2lhL01hY2F1JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdBc2lhL1RlbF9Bdml2JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBp
cyAnQXNpYS9KZXJ1c2FsZW0nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0FzaWEvVGhpbWJ1JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNp
YS9UaGltcGh1JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
c2lhL1VqdW5nX1BhbmRhbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lh
L01ha2Fzc2FyJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
c2lhL1VsYW5fQmF0b3InIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1Vs
YWFuYmFhdGFyJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
dXN0cmFsaWEvQUNUJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXVzdHJhbGlh
L1N5ZG5leScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVz
dHJhbGlhL0NhbmJlcnJhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXVzdHJh
bGlhL1N5ZG5leScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
QXVzdHJhbGlhL0xISScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0F1c3RyYWxp
YS9Mb3JkX0hvd2UnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J0F1c3RyYWxpYS9OU1cnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBdXN0cmFs
aWEvU3lkbmV5JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
dXN0cmFsaWEvTm9ydGgnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBdXN0cmFs
aWEvRGFyd2luJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
dXN0cmFsaWEvUXVlZW5zbGFuZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0F1
c3RyYWxpYS9CcmlzYmFuZScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnQXVzdHJhbGlhL1NvdXRoJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAn
QXVzdHJhbGlhL0FkZWxhaWRlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBdXN0cmFsaWEvVGFzbWFuaWEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IGlzICdBdXN0cmFsaWEvSG9iYXJ0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdBdXN0cmFsaWEvVmljdG9yaWEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdBdXN0cmFsaWEvTWVsYm91cm5lJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvV2VzdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0F1c3RyYWxpYS9QZXJ0aCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1lhbmNvd2lubmEnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdBdXN0cmFsaWEvQnJva2VuX0hpbGwnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0JyYXppbC9BY3JlJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnQW1lcmljYS9SaW9fQnJhbmNvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6aWwvRGVOb3JvbmhhJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9Ob3JvbmhhJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6aWwvRWFzdCcgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUgaXMgJ0FtZXJpY2EvU2FvX1BhdWxvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6aWwvV2VzdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0FtZXJpY2EvTWFuYXVzJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdDYW5hZGEvQXRsYW50aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdBbWVyaWNhL0hhbGlmYXgnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0NhbmFkYS9DZW50cmFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSBpcyAnQW1lcmljYS9XaW5uaXBlZycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnQ2FuYWRhL0Vhc3QtU2Fza2F0Y2hld2FuJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnQW1lcmljYS9SZWdpbmEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9FYXN0ZXJuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSBpcyAnQW1lcmljYS9Ub3JvbnRvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdDYW5hZGEvTW91bnRhaW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdBbWVyaWNhL0VkbW9udG9uJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdDYW5hZGEvTmV3Zm91bmRsYW5kJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnQW1lcmljYS9TdF9Kb2hucycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL1BhY2lmaWMnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdBbWVyaWNhL1ZhbmNvdXZlcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL1Nhc2thdGNoZXdhbicgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvUmVnaW5hJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvWXVrb24nIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdBbWVyaWNhL1doaXRlaG9yc2UnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NoaWxlL0NvbnRpbmVudGFsJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9TYW50aWFnbycKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2hpbGUvRWFzdGVySXNsYW5kJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnUGFjaWZpYy9FYXN0ZXInCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0N1YmEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdBbWVyaWNhL0hhdmFuYScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnRWd5cHQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBZnJp
Y2EvQ2Fpcm8nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0Vp
cmUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdFdXJvcGUvRHVibGluJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdFdXJvcGUvQmVsZmFzdCcg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9Mb25kb24nCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0V1cm9wZS9UaXJhc3BvbCcgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9DaGlzaW5hdScKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR0InIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIGlzICdFdXJvcGUvTG9uZG9uJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdHQi1FaXJlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSBpcyAnRXVyb3BlL0xvbmRvbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnR01UKzAnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dNVC0wJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnVVRDJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdHTVQwJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBp
cyAnVVRDJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHcmVl
bndpY2gnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0hvbmdrb25nJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9Ib25nX0tvbmcnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0ljZWxhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdBdGxhbnRpYy9SZXlramF2aWsnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0lyYW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlz
ICdBc2lhL1RlaHJhbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnSXNyYWVsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9KZXJ1c2Fs
ZW0nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0phbWFpY2En
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0phbWFpY2EnCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0phcGFuJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9Ub2t5bycKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnS3dhamFsZWluJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSBpcyAnUGFjaWZpYy9Ld2FqYWxlaW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0xpYnlhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBp
cyAnQWZyaWNhL1RyaXBvbGknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ01leGljby9CYWphTm9ydGUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlz
ICdBbWVyaWNhL1RpanVhbmEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ01leGljby9CYWphU3VyJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAn
QW1lcmljYS9NYXphdGxhbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnTWV4aWNvL0dlbmVyYWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdB
bWVyaWNhL01leGljb19DaXR5JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdOWicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1BhY2lmaWMvQXVj
a2xhbmQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ05aLUNI
QVQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdQYWNpZmljL0NoYXRoYW0nCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ05hdmFqbycgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvRGVudmVyJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdQUkMnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdBc2lhL1NoYW5naGFpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdQb2xhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlz
ICdFdXJvcGUvV2Fyc2F3JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdQb3J0dWdhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9M
aXNib24nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1JPQycg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvVGFpcGVpJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdST0snIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIGlzICdBc2lhL1Nlb3VsJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdTaW5nYXBvcmUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IGlzICdBc2lhL1NpbmdhcG9yZScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnVHVya2V5JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnRXVyb3Bl
L0lzdGFuYnVsJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdV
Q1QnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0FsYXNrYScgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvQW5jaG9yYWdlJworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9BbGV1dGlhbicgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvQWRhaycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnVVMvQXJpem9uYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUgaXMgJ0FtZXJpY2EvUGhvZW5peCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnVVMvQ2VudHJhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0FtZXJpY2EvQ2hpY2FnbycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnVVMvRWFzdGVybicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJp
Y2EvTmV3X1lvcmsnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J1VTL0hhd2FpaScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1BhY2lmaWMvSG9u
b2x1bHUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL01p
Y2hpZ2FuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9EZXRyb2l0
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9Nb3VudGFp
bicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvRGVudmVyJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9QYWNpZmljJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9Mb3NfQW5nZWxlcycKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvU2Ftb2EnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdQYWNpZmljL1BhZ29fUGFnbycKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVRDJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnVVRDJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdVbml2ZXJzYWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1ctU1UnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdFdXJvcGUvTW9zY293JworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdadWx1JyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnVVRDJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdhci1zYScpLnJl
c29sdmVkT3B0aW9ucygpLmxvY2FsZSBpcyAnYXItU0EnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2FyLXNhJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2lzbGFtaWMtdW1hbHF1
cmEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyLXNhJykucmVzb2x2ZWRPcHRpb25zKCku
bnVtYmVyaW5nU3lzdGVtIGlzICdhcmFiJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgY2FsZW5kYXI6J2RhbmdpJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnZ3Jl
Z29yaWFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJvZ3VzJykucmVzb2x2
ZWRPcHRpb25zKCkubG9jYWxlIGlzICdlbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdncmVnb3JpYW4nCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYnVkZGhpc3QnKS5yZXNvbHZlZE9wdGlv
bnMoKS5sb2NhbGUgaXMgJ2VuLXUtY2EtYnVkZGhpc3QnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtY2EtYnVkZGhpc3QnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnYnVk
ZGhpc3QnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtY2hpbmVzZScpLnJlc29s
dmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdjaGluZXNlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LWNhLWNvcHRpYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdjb3B0
aWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZGFuZ2knKS5yZXNvbHZlZE9w
dGlvbnMoKS5jYWxlbmRhciBpcyAnZGFuZ2knCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
LXUtY2EtZXRoaW9hYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdldGhpb3BpYy1h
bWV0ZS1hbGVtJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWV0aGlvcGljJyku
cmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2V0aGlvcGljJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdhci1TQS11LWNhLWdyZWdvcnknKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRh
ciBpcyAnZ3JlZ29yaWFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWhlYnJl
dycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdoZWJyZXcnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaW5kaWFuJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIg
aXMgJ2luZGlhbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljJyku
cmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2lzbGFtaWMnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pY2MnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBp
cyAnaXNsYW1pYy1jaXZpbCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1JU084
NjAxJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2lzbzg2MDEnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtamFwYW5lc2UnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxl
bmRhciBpcyAnamFwYW5lc2UnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtcGVy
c2lhbicpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdwZXJzaWFuJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLXJvYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFy
IGlzICdyb2MnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBudW1iZXJpbmdTeXN0
ZW06J2d1anInIH0pLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGF0bicK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9u
cygpLmxvY2FsZSBpcyAnZW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYm9n
dXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2xhdG4nCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGF0bicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSBpcyAnbGF0bicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1h
cmFiJykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIGlzICdlbi11LW51LWFyYWInCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYXJhYicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSBpcyAnYXJhYicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1h
cmFiZXh0JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdhcmFiZXh0Jwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWFybW4nKS5yZXNvbHZlZE9wdGlvbnMo
KS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2FybW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
LXUtbnUtYXJtbmxvdycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnYXJt
bmxvdycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1iYWxpJykucmVzb2x2ZWRP
cHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdiYWxpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LW51LWJlbmcnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMg
J2JlbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtY2hhbScpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnY2hhbScKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1udS1kZXZhJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlz
ICdkZXZhJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWV0aGknKS5yZXNvbHZl
ZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2V0aGknCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtbnUtZnVsbHdpZGUnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0gaXMgJ2Z1bGx3aWRlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWdlb3In
KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2dlb3InCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZ3JlaycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSBpcyAnZ3JlaycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ncmVr
bG93JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdncmVrbG93JworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWd1anInKS5yZXNvbHZlZE9wdGlvbnMoKS5u
dW1iZXJpbmdTeXN0ZW0gaXMgJ2d1anInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
bnUtZ3VydScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnZ3VydScKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1oYW5pZGF5cycpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyAnaGFuaWRheXMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtbnUtaGFuaWRlYycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBp
cyAnaGFuaWRlYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1oYW5zJykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdoYW5zJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LW51LWhhbnNmaW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdT
eXN0ZW0gaXMgJ2hhbnNmaW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtaGFu
dCcpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnaGFudCcKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1oYW50ZmluJykucmVzb2x2ZWRPcHRpb25zKCkubnVt
YmVyaW5nU3lzdGVtIGlzICdoYW50ZmluJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LWhlYnInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2hlYnInCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtamF2YScpLnJlc29sdmVkT3B0aW9ucygp
Lm51bWJlcmluZ1N5c3RlbSBpcyAnamF2YScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1qcGFuJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdqcGFuJwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWpwYW5maW4nKS5yZXNvbHZlZE9wdGlv
bnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2pwYW5maW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtbnUta2FsaScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAn
a2FsaScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1raG1yJykucmVzb2x2ZWRP
cHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdraG1yJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LW51LWtuZGEnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMg
J2tuZGEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGFuYScpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGFuYScKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1udS1sYW5hdGhhbScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3Rl
bSBpcyAnbGFuYXRoYW0nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGFvbycp
LnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGFvbycKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4tdS1udS1sYXRuJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5n
U3lzdGVtIGlzICdsYXRuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxlcGMn
KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2xlcGMnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGltYicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSBpcyAnbGltYicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1tbHlt
JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdtbHltJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LW1vbmcnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJp
bmdTeXN0ZW0gaXMgJ21vbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbXRl
aScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbXRlaScKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1teW1yJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVy
aW5nU3lzdGVtIGlzICdteW1yJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LW15
bXJzaGFuJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdteW1yc2hhbicK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ua29vJykucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIGlzICdua29vJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LW9sY2snKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ29sY2sn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtb3J5YScpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyAnb3J5YScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1udS1yb21hbicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAncm9t
YW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtcm9tYW5sb3cnKS5yZXNvbHZl
ZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3JvbWFubG93JworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LW51LXNhdXInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0gaXMgJ3NhdXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtc3VuZCcpLnJl
c29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnc3VuZCcKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1udS10YWx1JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lz
dGVtIGlzICd0YWx1JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LXRhbWwnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3RhbWwnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGFtbGRlYycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSBpcyAndGFtbGRlYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10
ZWx1JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICd0ZWx1JworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LXRoYWknKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1i
ZXJpbmdTeXN0ZW0gaXMgJ3RoYWknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
dGlidCcpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAndGlidCcKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS12YWlpJykucmVzb2x2ZWRPcHRpb25zKCkubnVt
YmVyaW5nU3lzdGVtIGlzICd2YWlpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
d2Vla2RheTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ3dlZWtkYXknIH0gfSB9KSB0aHJldyBleGNl
cHRpb24gd2Vla2RheS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6
J2ludmFsaWQnIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiB3ZWVrZGF5IG11c3QgYmUg
Im5hcnJvdyIsICJzaG9ydCIsIG9yICJsb25nIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLndlZWtkYXkgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB3ZWVrZGF5OiduYXJyb3cnLCBtb250aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkud2Vla2RheSBpcyAnbmFycm93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgd2Vla2RheTonc2hvcnQnLCBtb250aDonbnVtZXJpYycsIGRheTonbnVtZXJp
YycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5Oidsb25nJywgbW9udGg6J251bWVyaWMnLCBkYXk6
J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkgaXMgJ2xvbmcnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdlcmEn
IH0gfSB9KSB0aHJldyBleGNlcHRpb24gZXJhLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgZXJhOiduZXZlcicgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGVyYSBtdXN0
IGJlICJuYXJyb3ciLCAic2hvcnQiLCBvciAibG9uZyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS5kYXkgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBlcmE6J25hcnJvdycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSBp
cyAnbmFycm93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOidzaG9ydCcs
IHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyAnc2hvcnQnCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J2xvbmcnLCB5ZWFyOidudW1lcmljJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEgaXMgJ2xvbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB5ZWFyOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAneWVhcicgfSB9IH0pIHRocmV3
IGV4Y2VwdGlvbiB5ZWFyLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgeWVhcjon
bm9wZScgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IHllYXIgbXVzdCBiZSAiMi1kaWdp
dCIgb3IgIm51bWVyaWMiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRl
OicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyB1
bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93Jywg
eWVhcjonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyAnMi1kaWdpdCcKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjonbnVtZXJp
YycgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbW9udGgnIH0g
fSB9KSB0aHJldyBleGNlcHRpb24gbW9udGguCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBtb250aDoyIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBtb250aCBtdXN0IGJl
ICIyLWRpZ2l0IiwgIm51bWVyaWMiLCAibmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciLgorUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMgdW5kZWZpbmVkCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonMi1kaWdpdCcsIHllYXI6J251bWVyaWMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlzICcyLWRpZ2l0JworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgbW9udGg6J251bWVyaWMnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS5tb250aCBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1vbnRoOiduYXJyb3cnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS5tb250aCBpcyAnbmFycm93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9u
dGg6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMg
J3Nob3J0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCB5
ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbG9uZycKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGRheTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ2Rh
eScgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBkYXkuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBkYXk6JycgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGRheSBtdXN0IGJl
ICIyLWRpZ2l0IiBvciAibnVtZXJpYyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5k
YXkgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDon
bG9uZycsIGRheTonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuZGF5IGlzICcyLWRpZ2l0
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCBkYXk6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IGhvdXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdob3VyJyB9
IH0gfSkgdGhyZXcgZXhjZXB0aW9uIGhvdXIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBob3VyOltdIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBob3VyIG11c3QgYmUg
IjItZGlnaXQiIG9yICJudW1lcmljIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5y
ZXNvbHZlZE9wdGlvbnMoKS5ob3VyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonMi1kaWdpdCcgfSkucmVzb2x2ZWRP
cHRpb25zKCkuaG91ciBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygp
LmhvdXIgaXMgJ251bWVyaWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2
ZWRPcHRpb25zKCkuaG91cjEyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRp
b25zKCkuaG91cjEyIGlzIHRydWUKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgncHQtQlInLCB7
IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmhv
dXIxMiBpcyBmYWxzZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOiB7
IHRvU3RyaW5nKCkgeyB0aHJvdyAnbWludXRlJyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIG1pbnV0
ZS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTpudWxsIH0pIHRocmV3
IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBtaW51dGUgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVy
aWMiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1p
bnV0ZSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0
ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBp
cyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonbnVt
ZXJpYycsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBpcyAnMi1k
aWdpdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHNlY29uZDogeyB0b1N0cmlu
ZygpIHsgdGhyb3cgJ3NlY29uZCcgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBzZWNvbmQuCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBzZWNvbmQ6J2JhZHZhbHVlJyB9KSB0aHJldyBl
eGNlcHRpb24gUmFuZ2VFcnJvcjogc2Vjb25kIG11c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmlj
Ii4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNv
bmQgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6
J251bWVyaWMnLCBob3VyOidudW1lcmljJywgc2Vjb25kOicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS5zZWNvbmQgaXMgJzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1lcmljJywgc2Vjb25kOidudW1lcmljJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQgaXMgJzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZU5hbWU6IHsgdG9TdHJpbmcoKSB7IHRocm93ICd0aW1l
Wm9uZU5hbWUnIH0gfSB9KSB0aHJldyBleGNlcHRpb24gdGltZVpvbmVOYW1lLgorUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmVOYW1lOiduYW1lJyB9KSB0aHJldyBleGNl
cHRpb24gUmFuZ2VFcnJvcjogdGltZVpvbmVOYW1lIG11c3QgYmUgInNob3J0IiBvciAibG9uZyIu
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmVOYW1lIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWlu
dXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycsIHRpbWVab25lTmFtZTonc2hvcnQnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ3B0LUJSJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJywgdGlt
ZVpvbmVOYW1lOidsb25nJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUgaXMgJ2xv
bmcnCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAi
bnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJhciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6
ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYXIiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYXIiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJhciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRo
OiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiYXIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoImFyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoImFyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51
bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwg
bWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYXItU0EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5
OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImFyLVNBIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImFyLVNBIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYXItU0EiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoImFyLVNBIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJhci1TQSIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJhci1TQSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6
ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMi
LCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImJlIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJiZSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25n
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJiZSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25n
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImJlIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJiZSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6
ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYmUiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYmUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAi
c2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwg
aG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJjYSIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIs
IGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiY2EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIs
IGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiY2EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJjYSIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiY2EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAi
bnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImNhIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
aG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoImNhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNo
b3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiY3MiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImNzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImNzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiY3MiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImNzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJjcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJjcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9y
dCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3Vy
OiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRhIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJk
YSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJk
YSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRhIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGEiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3Vy
OiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgiZGEiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQi
LCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjog
Im51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkZSIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTog
Im51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGUi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTog
Im51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGUi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkZSIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgiZGUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJp
YyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRlIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjog
Im51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoImRlIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0Iiwg
eWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJu
dW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGUtQ0giLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRl
LUNIIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImRlLUNIIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmci
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGUtQ0giLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRlLUNIIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
aG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkZS1DSCIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkZS1DSCIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTog
Im51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250
aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJlbiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJlbiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVu
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbiIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4iLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4iLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3
ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJu
dW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1BVSIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgiZW4tQVUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgiZW4tQVUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJlbi1BVSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tQVUiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNv
bmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImVuLUFVIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLUFVIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250
aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVt
ZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiZW4tR0IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLUdCIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLUdCIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tR0IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDog
ImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoImVuLUdCIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1HQiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJlbi1HQiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVt
ZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLVBIIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
d2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1Q
SCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJl
bi1QSCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLVBIIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1QSCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tUEgiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tUEgiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3
ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJu
dW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1VUyIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgiZW4tVVMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgiZW4tVVMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJlbi1VUyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tVVMiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNv
bmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImVuLVVTIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLVVTIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250
aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVt
ZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiZWwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFy
OiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVh
cjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVh
cjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgiZWwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVs
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwg
c2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJlbCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbCIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6
ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVy
aWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoImVzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjog
Im51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImVzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcyIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNl
Y29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiZXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAi
c2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmlj
Iiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJlcy1NWCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMtTVgiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMtTVgiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJlcy1NWCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9u
ZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiZXMtTVgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTog
Im51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoImVzLU1YIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoImVzLU1YIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjog
Im51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMtUFIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVr
ZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzLVBSIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzLVBS
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMtUFIiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzLVBSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjog
Im51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcy1QUiIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcy1QUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtk
YXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVy
aWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImZyIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNo
b3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJmciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJs
b25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJmciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJs
b25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImZyIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJmciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZnIiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZnIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5
OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmlj
IiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJmci1DQSIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJz
aG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiZnItQ0EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiZnItQ0EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1v
bnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJm
ci1DQSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZnItQ0EiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImZyLUNB
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImZyLUNBIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNo
b3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIs
IHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiZ2EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVt
ZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImdhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51
bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImdhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51
bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiZ2EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImdhIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25k
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJn
YSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJnYSIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9y
dCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBz
ZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoImhpLUlOIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51
bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJoaS1JTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJoaS1JTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoImhpLUlOIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwg
ZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJoaS1JTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVt
ZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiaGktSU4iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiaGktSU4iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVt
ZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJz
aG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXMiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXMiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAi
bG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiaXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTog
Im51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoImlzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoImlzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVy
aWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgiaXQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hv
cnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIml0Iiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIml0Iiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxv
bmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoIml0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJu
dW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJpdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJpdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmlj
IiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoIml3Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0
IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpdyIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpdyIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoIml3Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25n
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJpdyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVt
ZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiaXciLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
aXciLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNT
IAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6
ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJqYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIs
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiamEiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiamEiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJqYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIs
IGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiamEiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVy
aWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoImphIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImph
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBt
b250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAi
bnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgia28tS1IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQi
LCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImtvLUtSIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImtvLUtSIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgia28tS1IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250
aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImtvLUtSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJrby1LUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJu
dW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJrby1LUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIs
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAi
bnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImx0Iiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
d2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJsdCIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJsdCIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImx0Iiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJsdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibHQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAi
bnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgibHQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJsdiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdl
ZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibHYiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibHYiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJsdiIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgibHYiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIs
IG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImx2Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImx2Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVh
cjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibWsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVr
ZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1rIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1rIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibWsiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBt
b250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoIm1rIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJtayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJp
YyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1zIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2Rh
eTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtcyIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtcyIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1zIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9u
dGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJtcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgibXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJp
YyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgibXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAi
bnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6
ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibXQiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibXQiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRo
OiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgibXQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoIm10Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoIm10Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51
bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwg
bWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgibmIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAi
c2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5iIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5iIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibmIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDog
ImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoIm5iIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6
ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJuYiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwg
bWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJuYiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1l
cmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5sIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNo
b3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJubCIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJubCIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5sIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJs
b25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJubCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAi
bnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgibmwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgibmwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJubyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9y
dCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibm8iLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibm8iLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJubyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9u
ZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgibm8iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51
bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoIm5vIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
Im5vIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMi
LCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRl
OiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgicGwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQi
LCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInBsIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInBsIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgicGwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmci
LCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoInBsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1l
cmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJwbCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRl
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJw
bCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwg
bW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTog
Im51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoInB0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0Iiwg
eWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJwdCIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJwdCIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoInB0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwg
ZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJwdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJp
YyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgicHQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTog
Im51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicHQi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1v
bnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJu
dW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJwdC1CUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIs
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicHQtQlIiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicHQtQlIiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJwdC1CUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRo
OiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgicHQtQlIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoInB0LUJSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoInB0LUJSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0Iiwg
eWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJu
dW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicm8iLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3
ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInJvIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInJvIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicm8iLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoInJvIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJybyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJu
dW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJybyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVt
ZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInJ1Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vl
a2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJydSIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJydSIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInJ1Iiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
bW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJydSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwg
bWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgicnUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVt
ZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgicnUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFy
OiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVy
aWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtk
YXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic2siLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic2siLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1v
bnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgic2siLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoInNrIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVy
aWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoInNrIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjog
Im51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic2wiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5
OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNsIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNsIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic2wiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250
aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoInNsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJzbCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJzbCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJu
dW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIs
IG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTog
InNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzciIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzciIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6
ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJzciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRl
OiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgic3IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIs
IG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgic3IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVt
ZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzdiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJz
aG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic3YiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic3YiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzdiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAi
bG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgic3YiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTog
Im51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoInN2Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoInN2Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVy
aWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgidGgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hv
cnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInRoIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInRoIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgidGgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxv
bmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoInRoIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJu
dW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJ0aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJ0aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmlj
IiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoInRyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0
IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ0ciIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ0ciIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoInRyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25n
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJ0ciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVt
ZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgidHIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
dHIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNT
IAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6
ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJ1ayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIs
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidWsiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidWsiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJ1ayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIs
IGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgidWsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVy
aWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoInVrIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInVr
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBt
b250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAi
bnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgidmkiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInZpIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
eWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInZpIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
eWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgidmkiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
InZpIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmlj
Iiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJ2aSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ2aSIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51
bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoInpoIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVh
cjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoInpoIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6
aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIs
IHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiemgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1l
cmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJ6aC1DTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtQ04iLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtQ04iLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aC1DTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAi
bG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiemgtQ04iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoInpoLUNOIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVy
aWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoInpoLUNOIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVh
cjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtSGFudC1ISyIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRh
eTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
emgtSGFudC1ISyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJs
b25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJ6aC1IYW50LUhLIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBt
b250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
emgtSGFudC1ISyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtSGFudC1I
SyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIs
IHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiemgtSGFudC1ISyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJ6aC1IYW50LUhLIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjog
Im51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtVFciLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVr
ZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoLVRXIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoLVRX
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtVFciLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoLVRXIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjog
Im51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aC1UVyIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aC1UVyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
IAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3Rz
L2ludGwtZGF0ZXRpbWVmb3JtYXQuanMgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50
bC1kYXRldGltZWZvcm1hdC5qcwppbmRleCBlZGUxYjVjZTM0NmZkMjkwNTMwYjM3Mzc3ZjAwY2Fl
NTAzN2U2MDdmLi5jMmE2NzU4MmZlYzM0NTIyMDk4N2RiYzdkMzc4MTc4YzQ2NGM4OWQwIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5q
cworKysgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5q
cwpAQCAtMTE5LDcgKzExOSw3IEBAIHNob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5mb3JtYXQoeyB2YWx1ZU9mKCkgeyB0aHJvdyBFcnJvcignNGInCiAvLyAxMi4zLjQg
Rm9ybWF0RGF0ZVRpbWUgYWJzdHJhY3Qgb3BlcmF0aW9uCiAKIC8vIDEuIElmIHggaXMgbm90IGEg
ZmluaXRlIE51bWJlciwgdGhlbiB0aHJvdyBhIFJhbmdlRXJyb3IgZXhjZXB0aW9uLgotc2hvdWxk
VGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdChJbmZpbml0eSkiLCAi
J1JhbmdlRXJyb3I6IGRhdGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRlVGltZUZvcm1hdC5m
b3JtYXQoKSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5m
b3JtYXQoSW5maW5pdHkpIiwgIidSYW5nZUVycm9yOiBkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUg
aW4gRGF0ZVRpbWVGb3JtYXQgZm9ybWF0KCknIik7CiAKIC8vIEZvcm1hdCBpcyBib3VuZCwgc28g
Y2FsbGluZyB3aXRoIGFsdGVybmF0ZSAidGhpcyIgaGFzIG5vIGVmZmVjdC4KIHNob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2FsbChudWxsLCAwKSIsICJJbnRs
LkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApIik7CkBAIC0xMzYsOSArMTM2LDMwOSBAQCBzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zLmxlbmd0
aCIsICIwIik7CiAvLyBSZXR1cm5zIGEgbmV3IG9iamVjdCB3aG9zZSBwcm9wZXJ0aWVzIGFuZCBh
dHRyaWJ1dGVzIGFyZSBzZXQgYXMgaWYgY29uc3RydWN0ZWQgYnkgYW4gb2JqZWN0IGxpdGVyYWwu
CiBzaG91bGRCZVR5cGUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucygpIiwgIk9iamVjdCIpOwogCisvLyBUaGUgSW50bC5EYXRlVGltZUZvcm1hdCBwcm90b3R5
cGUgb2JqZWN0IGlzIGl0c2VsZiBhbiAlRGF0ZVRpbWVGb3JtYXQlIGluc3RhbmNlLCB3aG9zZSBp
bnRlcm5hbCBzbG90cyBhcmUgc2V0IGFzIGlmIGl0IGhhZCBiZWVuIGNvbnN0cnVjdGVkIGJ5IHRo
ZSBleHByZXNzaW9uIENvbnN0cnVjdCglRGF0ZVRpbWVGb3JtYXQlKS4KK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUiLCAibmV3
IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUiKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRP
cHRpb25zKCkuY2FsZW5kYXIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9w
dGlvbnMoKS5jYWxlbmRhciIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90
eXBlLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICJuZXcgSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXki
LCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5Iik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
KCkuZXJhIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuZXJh
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRp
b25zKCkueWVhciIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygp
LnllYXIiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZl
ZE9wdGlvbnMoKS5tb250aCIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0
aW9ucygpLm1vbnRoIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zKCkuZGF5IiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2
ZWRPcHRpb25zKCkuZGF5Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5
cGUucmVzb2x2ZWRPcHRpb25zKCkuaG91ciIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJl
c29sdmVkT3B0aW9ucygpLmhvdXIiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3Jt
YXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiLCAibmV3IEludGwuRGF0
ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAibmV3
IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZU5hbWUiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZU5hbWUiKTsKKwogLy8gUmV0dXJucyBhIG5ldyBvYmplY3QgZWFjaCB0aW1lLgogc2hv
dWxkQmVGYWxzZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
KCkgPT09IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIik7
CiAKIC8vIFRocm93cyBvbiBub24tRGF0ZVRpbWVGb3JtYXQgdGhpcy4KIHNob3VsZFRocm93KCJJ
bnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMuY2FsbCg1KSIsICIn
VHlwZUVycm9yOiBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMg
Y2FsbGVkIG9uIHZhbHVlIHRoYXRcXCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBE
YXRlVGltZUZvcm1hdCciKTsKIAorc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJyQn
KSIsICInUmFuZ2VFcnJvcjogaW52YWxpZCBsYW5ndWFnZSB0YWc6ICQnIik7CitzaG91bGROb3RU
aHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCBudWxsKSIpOworCisvLyBEZWZhdWx0cyB0
byBtb250aCwgZGF5LCB5ZWFyLgorc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJyku
cmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmVyYSIsICJ1bmRlZmluZWQi
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygp
Lm1vbnRoIiwgIidudW1lcmljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JykucmVzb2x2ZWRPcHRpb25zKCkuZGF5IiwgIidudW1lcmljJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkueWVhciIsICInbnVtZXJpYyci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygp
LmhvdXIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiLCAidW5kZWZp
bmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlv
bnMoKS5zZWNvbmQiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUiLCAidW5kZWZpbmVkIik7CisK
K3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjog
eyB0b1N0cmluZygpIHsgdGhyb3cgJ25vcGUnIH0gfSB9KSIsICInbm9wZSciKTsKK3Nob3VsZFRo
cm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjonYmFkJyB9KSIs
ICdcJ1JhbmdlRXJyb3I6IGxvY2FsZU1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgImxvb2t1cCIgb3Ig
ImJlc3QgZml0IlwnJyk7CitzaG91bGROb3RUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IGxvY2FsZU1hdGNoZXI6J2xvb2t1cCcgfSkiKTsKK3Nob3VsZE5vdFRocm93KCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjonYmVzdCBmaXQnIH0pIik7CisKK3No
b3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjogeyB0
b1N0cmluZygpIHsgdGhyb3cgJ25vcGUnIH0gfSB9KSIsICInbm9wZSciKTsKK3Nob3VsZFRocm93
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjonYmFkJyB9KSIsICdc
J1JhbmdlRXJyb3I6IGZvcm1hdE1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgImJhc2ljIiBvciAiYmVz
dCBmaXQiXCcnKTsKK3Nob3VsZE5vdFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
Zm9ybWF0TWF0Y2hlcjonYmFzaWMnIH0pIik7CitzaG91bGROb3RUaHJvdygiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2Jlc3QgZml0JyB9KSIpOworCitzaG91bGRU
aHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnbm93aGVyZS9ib2d1
cycgfSkiLCAiJ1JhbmdlRXJyb3I6IGludmFsaWQgdGltZSB6b25lOiBub3doZXJlL2JvZ3VzJyIp
Oworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogeyB0
b1N0cmluZygpIHsgdGhyb3cgJ25vcGUnIH0gfSB9KSIsICInbm9wZSciKTsKKworLy8gVGltZSB6
b25lIGlzIGNhc2UgaW5zZW5zaXRpdmUuCitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnYW1lcmljYS9kZW52ZXInIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidBbWVyaWNhL0RlbnZlciciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdBTUVSSUNBL0xPU19BTkdFTEVTJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9Mb3NfQW5nZWxlcyciKTsKKworLy8gRGVmYXVs
dCB0aW1lIHpvbmUgaXMgYSB2YWxpZCBjYW5vbmljYWwgdGltZSB6b25lLgorc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogSW50bC5EYXRlVGltZUZvcm1hdCgp
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IiwgIkludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIpOwor
CisvLyBUaW1lIHpvbmUgaXMgY2Fub25pY2FsaXplZCBmb3Igb2Jzb2xldGUgbGlua3MgaW4gSUFO
QSB0eiBiYWNrd2FyZCBmaWxlLgorc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0FtZXJpY2EvQXRrYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUi
LCAiJ0FtZXJpY2EvQWRhayciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdBbWVyaWNhL0Vuc2VuYWRhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSIsICInQW1lcmljYS9UaWp1YW5hJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FtZXJpY2EvUG9ydG9fQWNyZScgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvUmlvX0JyYW5jbyciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNhL1NoaXByb2NrJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9EZW52ZXInIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQW50YXJjdGljYS9Tb3V0
aF9Qb2xlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInUGFjaWZpYy9BdWNrbGFu
ZCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
c2lhL0FzaGtoYWJhZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvQXNo
Z2FiYXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnQXNpYS9DaG9uZ3FpbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lh
L1NoYW5naGFpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0FzaWEvQ2h1bmdraW5nJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXNpYS9TaGFuZ2hhaSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdBc2lhL0RhY2NhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXNpYS9EaGFrYSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBc2lhL0hhcmJpbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0Fz
aWEvU2hhbmdoYWknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnQXNpYS9LYXNoZ2FyJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXNpYS9VcnVtcWknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnQXNpYS9NYWNhbycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0Fz
aWEvTWFjYXUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnQXNpYS9UZWxfQXZpdicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0Fz
aWEvSmVydXNhbGVtJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0FzaWEvVGhpbWJ1JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXNpYS9UaGltcGh1JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0FzaWEvVWp1bmdfUGFuZGFuZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0FzaWEvTWFrYXNzYXInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnQXNpYS9VbGFuX0JhdG9yJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSIsICInQXNpYS9VbGFhbmJhYXRhciciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvQUNUJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSIsICInQXVzdHJhbGlhL1N5ZG5leSciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvQ2FuYmVycmEnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvU3lkbmV5JyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9MSEkn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvTG9yZF9Ib3dlJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3Ry
YWxpYS9OU1cnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvU3lk
bmV5JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J0F1c3RyYWxpYS9Ob3J0aCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3Ry
YWxpYS9EYXJ3aW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnQXVzdHJhbGlhL1F1ZWVuc2xhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIiwgIidBdXN0cmFsaWEvQnJpc2JhbmUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1NvdXRoJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSIsICInQXVzdHJhbGlhL0FkZWxhaWRlJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9UYXNtYW5pYScgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9Ib2JhcnQnIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1Zp
Y3RvcmlhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXVzdHJhbGlhL01lbGJv
dXJuZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdBdXN0cmFsaWEvV2VzdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3Ry
YWxpYS9QZXJ0aCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBdXN0cmFsaWEvWWFuY293aW5uYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0F1c3RyYWxpYS9Ccm9rZW5fSGlsbCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6aWwvQWNyZScgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvUmlvX0JyYW5jbyciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6aWwvRGVOb3JvbmhhJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9Ob3JvbmhhJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0JyYXppbC9FYXN0JyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9TYW9fUGF1bG8nIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQnJhemlsL1dlc3Qn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL01hbmF1cyciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvQXRs
YW50aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0hhbGlmYXgn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2Fu
YWRhL0NlbnRyYWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1dp
bm5pcGVnJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ0NhbmFkYS9FYXN0LVNhc2thdGNoZXdhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0FtZXJpY2EvUmVnaW5hJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9FYXN0ZXJuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSIsICInQW1lcmljYS9Ub3JvbnRvJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9Nb3VudGFpbicgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvRWRtb250b24nIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL05ld2ZvdW5kbGFuZCcgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvU3RfSm9obnMnIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL1BhY2lm
aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1ZhbmNvdXZlcici
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5h
ZGEvU2Fza2F0Y2hld2FuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmlj
YS9SZWdpbmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnQ2FuYWRhL1l1a29uJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1l
cmljYS9XaGl0ZWhvcnNlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0NoaWxlL0NvbnRpbmVudGFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSIsICInQW1lcmljYS9TYW50aWFnbyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdDaGlsZS9FYXN0ZXJJc2xhbmQnIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIiwgIidQYWNpZmljL0Vhc3RlciciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDdWJhJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSIsICInQW1lcmljYS9IYXZhbmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnRWd5cHQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidBZnJpY2EvQ2Fpcm8nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnRWlyZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUi
LCAiJ0V1cm9wZS9EdWJsaW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnRXVyb3BlL0JlbGZhc3QnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIiwgIidFdXJvcGUvTG9uZG9uJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0V1cm9wZS9UaXJhc3BvbCcgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUiLCAiJ0V1cm9wZS9DaGlzaW5hdSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHQicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0V1cm9wZS9Mb25kb24nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnR0ItRWlyZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUi
LCAiJ0V1cm9wZS9Mb25kb24nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnR01UKzAnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidV
VEMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
R01ULTAnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidVVEMnIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR01UMCcgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1VUQyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHcmVlbndpY2gnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIiwgIidVVEMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnSG9uZ2tvbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwg
IidBc2lhL0hvbmdfS29uZyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdJY2VsYW5kJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXRsYW50aWMvUmV5a2phdmlrJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0lyYW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidB
c2lhL1RlaHJhbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdJc3JhZWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL0pl
cnVzYWxlbSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdKYW1haWNhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9K
YW1haWNhJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ0phcGFuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9Ub2t5byci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdLd2Fq
YWxlaW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidQYWNpZmljL0t3YWphbGVp
biciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdM
aWJ5YScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FmcmljYS9Ucmlwb2xpJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ01leGlj
by9CYWphTm9ydGUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1Rp
anVhbmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnTWV4aWNvL0JhamFTdXInIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVy
aWNhL01hemF0bGFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ01leGljby9HZW5lcmFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIs
ICInQW1lcmljYS9NZXhpY29fQ2l0eSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdOWicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAi
J1BhY2lmaWMvQXVja2xhbmQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnTlotQ0hBVCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAi
J1BhY2lmaWMvQ2hhdGhhbSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdOYXZham8nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidB
bWVyaWNhL0RlbnZlciciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdQUkMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL1No
YW5naGFpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ1BvbGFuZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0V1cm9wZS9XYXJz
YXcnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
UG9ydHVnYWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidFdXJvcGUvTGlzYm9u
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1JP
QycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvVGFpcGVpJyIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1JPSycgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvU2VvdWwnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnU2luZ2Fwb3JlJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9TaW5nYXBvcmUnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVHVya2V5JyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSIsICInRXVyb3BlL0lzdGFuYnVsJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VDVCcgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUiLCAiJ1VUQyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdVUy9BbGFza2EnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IiwgIidBbWVyaWNhL0FuY2hvcmFnZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdVUy9BbGV1dGlhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUiLCAiJ0FtZXJpY2EvQWRhayciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdVUy9Bcml6b25hJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSIsICInQW1lcmljYS9QaG9lbml4JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0NlbnRyYWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidBbWVyaWNhL0NoaWNhZ28nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvRWFzdGVybicgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUiLCAiJ0FtZXJpY2EvTmV3X1lvcmsnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvSGF3YWlpJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSIsICInUGFjaWZpYy9Ib25vbHVsdSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9NaWNoaWdhbicgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvRGV0cm9pdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9Nb3VudGFpbicgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvRGVudmVyJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL1BhY2lmaWMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0xvc19BbmdlbGVzJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL1NhbW9hJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInUGFjaWZpYy9QYWdvX1BhZ28nIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVRDJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSIsICInVVRDJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VuaXZlcnNhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUiLCAiJ1VUQyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdXLVNVJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInRXVy
b3BlL01vc2NvdyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdadWx1JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInVVRDJyIpOwor
CisvLyBHZXRzIGRlZmF1bHQgY2FsZW5kYXIgYW5kIG51bWJlcmluZ1N5c3RlbSBmcm9tIGxvY2Fs
ZS4KK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9u
cygpLmxvY2FsZSIsICInYXItU0EnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
YXItc2EnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy11bWFscXVyYSci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSIsICInYXJhYiciKTsKKworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBjYWxlbmRhcjonZGFuZ2knIH0pLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyIiwgIidncmVnb3JpYW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4nIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9u
cygpLmNhbGVuZGFyIiwgIidncmVnb3JpYW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1jYS1idWRkaGlzdCcpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4t
dS1jYS1idWRkaGlzdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNh
LWJ1ZGRoaXN0JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2J1ZGRoaXN0JyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtY2hpbmVzZScpLnJlc29sdmVk
T3B0aW9ucygpLmNhbGVuZGFyIiwgIidjaGluZXNlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtY2EtY29wdGljJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAi
J2NvcHRpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWRhbmdp
JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2RhbmdpJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9hYScpLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyIiwgIidldGhpb3BpYy1hbWV0ZS1hbGVtJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9waWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIs
ICInZXRoaW9waWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnYXItU0EtdS1j
YS1ncmVnb3J5JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2dyZWdvcmlhbiciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWhlYnJldycpLnJlc29sdmVk
T3B0aW9ucygpLmNhbGVuZGFyIiwgIidoZWJyZXcnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1jYS1pbmRpYW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICIn
aW5kaWFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1p
YycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pY2MnKS5yZXNvbHZlZE9wdGlvbnMo
KS5jYWxlbmRhciIsICInaXNsYW1pYy1jaXZpbCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LWNhLUlTTzg2MDEnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICIn
aXNvODYwMSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWphcGFu
ZXNlJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2phcGFuZXNlJyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtcGVyc2lhbicpLnJlc29sdmVkT3B0aW9u
cygpLmNhbGVuZGFyIiwgIidwZXJzaWFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtY2Etcm9jJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ3JvYyciKTsK
Ky8vIEZJWE1FOiBodHRwczovL2dpdGh1Yi5jb20vdGMzOS9lY21hNDAyL2lzc3Vlcy81OQorLy8g
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9waWMtYW1ldGUtYWxl
bScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidldGhpb2FhJyIpOworLy8gc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pYy11bWFscXVyYScpLnJlc29s
dmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljLXVtYWxxdXJhJyIpOworLy8gc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pYy10YmxhJykucmVzb2x2ZWRP
cHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMtdGJsYSciKTsKKy8vIHNob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWMtY2l2aWwnKS5yZXNvbHZlZE9wdGlvbnMo
KS5jYWxlbmRhciIsICInaXNsYW1pYy1jaXZpbCciKTsKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWMtcmdzYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVu
ZGFyIiwgIidpc2xhbWljLXJnc2EnIik7CisKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbnVtYmVyaW5nU3lzdGVtOidndWpyJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1i
ZXJpbmdTeXN0ZW0iLCAiJ2xhdG4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4nIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSIsICInbGF0biciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LW51LWxhdG4nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0i
LCAiJ2xhdG4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1hcmFi
JykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIiwgIidlbi11LW51LWFyYWInIik7CisKK2xldCBu
dW1iZXJpbmdTeXN0ZW1zID0gWworICAiYXJhYiIsICJhcmFiZXh0IiwgImFybW4iLCAiYXJtbmxv
dyIsICJiYWxpIiwgImJlbmciLCAiY2hhbSIsICJkZXZhIiwgImV0aGkiLAorICAiZnVsbHdpZGUi
LCAiZ2VvciIsICJncmVrIiwgImdyZWtsb3ciLCAiZ3VqciIsICJndXJ1IiwgImhhbmlkYXlzIiwg
ImhhbmlkZWMiLAorICAiaGFucyIsICJoYW5zZmluIiwgImhhbnQiLCAiaGFudGZpbiIsICJoZWJy
IiwgImphdmEiLCAianBhbiIsICJqcGFuZmluIiwKKyAgImthbGkiLCAia2htciIsICJrbmRhIiwg
ImxhbmEiLCAibGFuYXRoYW0iLCAibGFvbyIsICJsYXRuIiwgImxlcGMiLCAibGltYiIsCisgICJt
bHltIiwgIm1vbmciLCAibXRlaSIsICJteW1yIiwgIm15bXJzaGFuIiwgIm5rb28iLCAib2xjayIs
ICJvcnlhIiwgInJvbWFuIiwKKyAgInJvbWFubG93IiwgInNhdXIiLCAic3VuZCIsICJ0YWx1Iiwg
InRhbWwiLCAidGFtbGRlYyIsICJ0ZWx1IiwgInRoYWkiLCAidGlidCIsCisgICJ2YWlpIgorXQor
Zm9yIChsZXQgbnVtYmVyaW5nU3lzdGVtIG9mIG51bWJlcmluZ1N5c3RlbXMpIHsKKyAgc2hvdWxk
QmUoYEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtJHtudW1iZXJpbmdTeXN0ZW19JykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtYCwgYCcke251bWJlcmluZ1N5c3RlbX0nYCk7
Cit9CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTog
eyB0b1N0cmluZygpIHsgdGhyb3cgJ3dlZWtkYXknIH0gfSB9KSIsICInd2Vla2RheSciKTsKK3No
b3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonaW52YWxpZCcg
fSkiLCAnXCdSYW5nZUVycm9yOiB3ZWVrZGF5IG11c3QgYmUgIm5hcnJvdyIsICJzaG9ydCIsIG9y
ICJsb25nIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0
ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXki
LCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdl
ZWtkYXk6J25hcnJvdycsIG1vbnRoOidudW1lcmljJywgZGF5OidudW1lcmljJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS53ZWVrZGF5IiwgIiduYXJyb3cnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J3Nob3J0JywgbW9udGg6J251bWVyaWMnLCBkYXk6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAiJ3Nob3J0JyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5Oidsb25nJywgbW9udGg6J251
bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAiJ2xv
bmcnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiB7
IHRvU3RyaW5nKCkgeyB0aHJvdyAnZXJhJyB9IH0gfSkiLCAiJ2VyYSciKTsKK3Nob3VsZFRocm93
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduZXZlcicgfSkiLCAnXCdSYW5nZUVy
cm9yOiBlcmEgbXVzdCBiZSAibmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciXCcnKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjon
bnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZGF5IiwgInVuZGVmaW5lZCIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25hcnJvdycsIHllYXI6J251bWVy
aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSIsICInbmFycm93JyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSku
cmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgIidzaG9ydCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgZXJhOidsb25nJywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRP
cHRpb25zKCkuZXJhIiwgIidsb25nJyIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHllYXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICd5ZWFyJyB9IH0gfSkiLCAi
J3llYXInIik7CitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHllYXI6
J25vcGUnIH0pIiwgJ1wnUmFuZ2VFcnJvcjogeWVhciBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVt
ZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6
JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIiwgInVu
ZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25h
cnJvdycsIHllYXI6JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnllYXIiLCAiJzItZGln
aXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93
JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciIsICInbnVtZXJpYyci
KTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDogeyB0
b1N0cmluZygpIHsgdGhyb3cgJ21vbnRoJyB9IH0gfSkiLCAiJ21vbnRoJyIpOworc2hvdWxkVGhy
b3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDoyIH0pIiwgJ1wnUmFuZ2VFcnJv
cjogbW9udGggbXVzdCBiZSAiMi1kaWdpdCIsICJudW1lcmljIiwgIm5hcnJvdyIsICJzaG9ydCIs
IG9yICJsb25nIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1p
bnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRo
IiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
b250aDonMi1kaWdpdCcsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRo
IiwgIicyLWRpZ2l0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
b250aDonbnVtZXJpYycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRo
IiwgIidudW1lcmljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
b250aDonbmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgi
LCAiJ25hcnJvdyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9u
dGg6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAi
J3Nob3J0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDon
bG9uZycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIiwgIidsb25n
JyIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGRheTogeyB0
b1N0cmluZygpIHsgdGhyb3cgJ2RheScgfSB9IH0pIiwgIidkYXknIik7CitzaG91bGRUaHJvdygi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGRheTonJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGRh
eSBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgZGF5OicyLWRpZ2l0JyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS5kYXkiLCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgZGF5OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS5kYXkiLCAiJ251bWVyaWMnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgaG91cjogeyB0b1N0cmluZygpIHsgdGhyb3cgJ2hvdXInIH0gfSB9KSIsICIn
aG91ciciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgaG91cjpb
XSB9KSIsICdcJ1JhbmdlRXJyb3I6IGhvdXIgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMi
XCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIiLCAiJ251bWVyaWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIiLCAiJ251bWVyaWMnIik7CisKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgInRydWUiKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdwdC1CUicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgImZhbHNlIik7CisKK3Nob3VsZFRo
cm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOiB7IHRvU3RyaW5nKCkgeyB0
aHJvdyAnbWludXRlJyB9IH0gfSkiLCAiJ21pbnV0ZSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOm51bGwgfSkiLCAnXCdSYW5nZUVycm9yOiBtaW51
dGUgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSIsICJ1bmRlZmluZWQi
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0
JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIiwgIicyLWRpZ2l0
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVy
aWMnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiLCAiJzItZGln
aXQnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgc2Vjb25k
OiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnc2Vjb25kJyB9IH0gfSkiLCAiJ3NlY29uZCciKTsKK3No
b3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgc2Vjb25kOidiYWR2YWx1ZScg
fSkiLCAnXCdSYW5nZUVycm9yOiBzZWNvbmQgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMi
XCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLnNlY29uZCIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbWludXRlOidudW1lcmljJywgaG91cjonbnVtZXJpYycsIHNlY29uZDonMi1kaWdp
dCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIiwgIicyLWRpZ2l0JyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1l
cmljJywgc2Vjb25kOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAiJzIt
ZGlnaXQnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmVOYW1lOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAndGltZVpvbmVOYW1lJyB9IH0gfSkiLCAi
J3RpbWVab25lTmFtZSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmVOYW1lOiduYW1lJyB9KSIsICdcJ1JhbmdlRXJyb3I6IHRpbWVab25lTmFtZSBt
dXN0IGJlICJzaG9ydCIgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIsICJ1bmRlZmluZWQiKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0Jywg
aG91cjonbnVtZXJpYycsIHRpbWVab25lTmFtZTonc2hvcnQnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lTmFtZSIsICInc2hvcnQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgncHQtQlInLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnLCB0aW1lWm9uZU5h
bWU6J2xvbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIsICInbG9uZyciKTsK
KworbGV0IGxvY2FsZXNTYW1wbGUgPSBbCisgICJhciIsICJhci1TQSIsICJiZSIsICJjYSIsICJj
cyIsICJkYSIsICJkZSIsICJkZS1DSCIsICJlbiIsICJlbi1BVSIsICJlbi1HQiIsCisgICJlbi1Q
SCIsICJlbi1VUyIsICJlbCIsICJlcyIsICJlcy1NWCIsICJlcy1QUiIsICJmciIsICJmci1DQSIs
ICJnYSIsICJoaS1JTiIsCisgICJpcyIsICJpdCIsICJpdyIsICJqYSIsICJrby1LUiIsICJsdCIs
ICJsdiIsICJtayIsICJtcyIsICJtdCIsICJuYiIsICJubCIsCisgICJubyIsICJwbCIsICJwdCIs
ICJwdC1CUiIsICJybyIsICJydSIsICJzayIsICJzbCIsICJzciIsICJzdiIsICJ0aCIsICJ0ciIs
CisgICJ1ayIsICJ2aSIsICJ6aCIsICJ6aC1DTiIsICJ6aC1IYW50LUhLIiwgInpoLVRXIgorXTsK
K2ZvciAobGV0IGxvY2FsZSBvZiBsb2NhbGVzU2FtcGxlKSB7CisgIC8vIFRoZSBmb2xsb3dpbmcg
c3Vic2V0cyBtdXN0IGJlIGF2YWlsYWJsZSBmb3IgZWFjaCBsb2NhbGU6CisgIC8vIHdlZWtkYXks
IHllYXIsIG1vbnRoLCBkYXksIGhvdXIsIG1pbnV0ZSwgc2Vjb25kCisgIHNob3VsZEJlVHJ1ZShg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwg
bW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTog
Im51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoIiR7bG9jYWxlfSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpYCk7CisgIC8vIHdlZWtkYXksIHllYXIsIG1vbnRoLCBkYXkKKyAgc2hvdWxkQmVU
cnVlKGAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVy
aWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCIke2xvY2FsZX0iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKWApOworICAvLyB5ZWFyLCBtb250aCwgZGF5CisgIHNob3VsZEJlVHJ1
ZShgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwg
ZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCIke2xvY2FsZX0iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKWApOwor
ICAvLyB5ZWFyLCBtb250aAorICBzaG91bGRCZVRydWUoYAorICAgIHZhciBvcHRpb25zID0geyB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCIke2xvY2FsZX0iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKWApOworICAvLyBtb250aCwgZGF5CisgIHNob3VsZEJlVHJ1ZShgCisgICAgdmFy
IG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiJHtsb2NhbGV9Iiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbClgKTsKKyAgLy8gaG91ciwgbWludXRlLCBzZWNvbmQKKyAg
c2hvdWxkQmVUcnVlKGAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCIke2xvY2FsZX0iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKWApOworICAvLyBob3VyLCBtaW51dGUKKyAgc2hvdWxkQmVUcnVlKGAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIiR7bG9jYWxlfSIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpYCk7Cit9CmRpZmYgLS1naXQgYS9DaGFu
Z2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggOTYyZWY4MWQxODQ2NDFjMDJmYzg4N2RiYzk4M2RkMWEx
ODczOTFiYy4uOWMwNjI2MGE4NTdlZDBkZDhhMTcxMTI5Zjg0YTA5MTJhMTZiYTcxYiAxMDA2NDQK
LS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE1LTEy
LTE4ICBBbmR5IFZhbldhZ29uZXIgIDxhbmR5QGluc3RydWN0dXJlLmNvbT4KKworICAgICAgICBb
SU5UTF0gSW1wbGVtZW50IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucyAoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTQ3NjAzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBTb3VyY2UvY21ha2UvT3B0aW9uc1dpbi5jbWFrZTogRGlzYWJsZSBJTlRMIG9uIFdpbmRvd3Mg
Zm9yIG5vdworCiAyMDE1LTEyLTE2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYu
Y2Fub24uZnI+CiAKICAgICAgICAgW0ZldGNoIEFQSV0gQWRkIGZldGNoIEFQSSBjb21waWxlIHRp
bWUgZmxhZwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>267764</attachid>
            <date>2015-12-21 15:38:13 -0800</date>
            <delta_ts>2015-12-23 02:48:52 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147603-20151221163734.patch</filename>
            <type>text/plain</type>
            <size>238952</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk0MzMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
NGE0Mjk1ZGYzZDIxODVlNjI4YzIwMmIzM2NkZDAzYjc3MWU2ZTQyLi45YmM2NmQ3Nzg1MGIyZTc1
MGJjNDY3ZDEwNzhjMzA4ZGExNzU1ZTE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0OSBAQAorMjAxNS0xMi0yMSAgQW5keSBWYW5XYWdvbmVyICA8YW5keUBpbnN0cnVjdHVy
ZS5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVudCBJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0NzYwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudHMgSW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0IGFu
ZCByZWxhdGVkIGFic3RyYWN0IG9wZXJhdGlvbnMKKyAgICAgICAgdXNpbmcgSUNVLiBMYXp5IGlu
aXRpYWxpemF0aW9uIGlzIHVzZWQgZm9yIERhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS4KKyAgICAg
ICAgUmVmYWN0b3IgdG8gYWxpZ24gd2l0aCBDb2xsYXRvciB3b3JrLgorCisgICAgICAgICogaWN1
L3VuaWNvZGUvdWRhdHBnLmg6IEFkZGVkLgorICAgICAgICAqIGljdS91bmljb2RlL3VudW1zeXMu
aDogQWRkZWQuCisgICAgICAgICogcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6ZGVmYXVs
dFRpbWVab25lKToKKyAgICAgICAgKEpTQzo6Y2Fub25pY2FsaXplVGltZVpvbmVOYW1lKToKKyAg
ICAgICAgKEpTQzo6bG9jYWxlRGF0YSk6CisgICAgICAgIChKU0M6OnRvRGF0ZVRpbWVPcHRpb25z
KToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpzZXRGb3JtYXRzRnJvbVBhdHRl
cm4pOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmluaXRpYWxpemVEYXRlVGlt
ZUZvcm1hdCk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6d2Vla2RheVN0cmlu
Zyk6CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6ZXJhU3RyaW5nKToKKyAgICAg
ICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0Ojp5ZWFyU3RyaW5nKToKKyAgICAgICAgKEpTQzo6
SW50bERhdGVUaW1lRm9ybWF0Ojptb250aFN0cmluZyk6CisgICAgICAgIChKU0M6OkludGxEYXRl
VGltZUZvcm1hdDo6ZGF5U3RyaW5nKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0
Ojpob3VyU3RyaW5nKToKKyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjptaW51dGVT
dHJpbmcpOgorICAgICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNlY29uZFN0cmluZyk6
CisgICAgICAgIChKU0M6OkludGxEYXRlVGltZUZvcm1hdDo6dGltZVpvbmVOYW1lU3RyaW5nKToK
KyAgICAgICAgKEpTQzo6SW50bERhdGVUaW1lRm9ybWF0OjpyZXNvbHZlZE9wdGlvbnMpOgorICAg
ICAgICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXQ6OmZvcm1hdCk6CisgICAgICAgIChKU0M6Oklu
dGxEYXRlVGltZUZvcm1hdEZ1bmNGb3JtYXREYXRlVGltZSk6IERlbGV0ZWQuCisgICAgICAgICog
cnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuaDoKKyAgICAgICAgKiBydW50aW1lL0ludGxEYXRl
VGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y29uc3RydWN0SW50bERh
dGVUaW1lRm9ybWF0KToKKyAgICAgICAgKEpTQzo6Y2FsbEludGxEYXRlVGltZUZvcm1hdCk6Cisg
ICAgICAgICogcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwOgorICAgICAg
ICAoSlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUpOgorICAgICAgICAo
SlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQpOgorICAgICAgICAo
SlNDOjpJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKToKKyAg
ICAgICAgKiBydW50aW1lL0ludGxPYmplY3QuY3BwOgorICAgICAgICAoSlNDOjpyZXNvbHZlTG9j
YWxlKToKKyAgICAgICAgKEpTQzo6Z2V0TnVtYmVyaW5nU3lzdGVtc0ZvckxvY2FsZSk6CisgICAg
ICAgICogcnVudGltZS9JbnRsT2JqZWN0Lmg6CisKIDIwMTUtMTItMjEgIEFuZHkgVmFuV2Fnb25l
ciAgPHRoZXRhbGVjcmFmdGVyQGdtYWlsLmNvbT4KIAogICAgICAgICBbSU5UTF0gSW1wbGVtZW50
IFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZSBpbiBFQ01BLTQwMgpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2ljdS91bmljb2RlL3VkYXRwZy5oIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2ljdS91bmljb2RlL3VkYXRwZy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNkYzdlODlmMmRmYjY0
MDIyMGYzNTcwODgzNThiNmQ5YzU3OGViMGUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaWN1L3VuaWNvZGUvdWRhdHBnLmgKQEAgLTAsMCArMSw1ODYgQEAKKy8qCisq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqCisqCisqICAgQ29weXJpZ2h0IChDKSAyMDA3LTIwMTAsIElu
dGVybmF0aW9uYWwgQnVzaW5lc3MgTWFjaGluZXMKKyogICBDb3Jwb3JhdGlvbiBhbmQgb3RoZXJz
LiAgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyoKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyogICBm
aWxlIG5hbWU6ICB1ZGF0cGcuaAorKiAgIGVuY29kaW5nOiAgIFVTLUFTQ0lJCisqICAgdGFiIHNp
emU6ICAgOCAobm90IHVzZWQpCisqICAgaW5kZW50YXRpb246NAorKgorKiAgIGNyZWF0ZWQgb246
IDIwMDdqdWwzMAorKiAgIGNyZWF0ZWQgYnk6IE1hcmt1cyBXLiBTY2hlcmVyCisqLworCisjaWZu
ZGVmIF9fVURBVFBHX0hfXworI2RlZmluZSBfX1VEQVRQR19IX18KKworI2luY2x1ZGUgInVuaWNv
ZGUvdXR5cGVzLmgiCisjaW5jbHVkZSAidW5pY29kZS91ZW51bS5oIgorI2luY2x1ZGUgInVuaWNv
ZGUvbG9jYWxwb2ludGVyLmgiCisKKy8qKgorICogXGZpbGUKKyAqIFxicmllZiBDIEFQSTogV3Jh
cHBlciBmb3IgRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICh1bmljb2RlL2R0cHRuZ2VuLmgpLgor
ICoKKyAqIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgcHJvdmlkZXMgZmxleGlibGUgZ2VuZXJh
dGlvbiBvZiBkYXRlIGZvcm1hdCBwYXR0ZXJucywgCisgKiBsaWtlICJ5eS1NTS1kZCIuIFRoZSB1
c2VyIGNhbiBidWlsZCB1cCB0aGUgZ2VuZXJhdG9yIGJ5IGFkZGluZyBzdWNjZXNzaXZlIAorICog
cGF0dGVybnMuIE9uY2UgdGhhdCBpcyBkb25lLCBhIHF1ZXJ5IGNhbiBiZSBtYWRlIHVzaW5nIGEg
InNrZWxldG9uIiwgd2hpY2ggaXMgCisgKiBhIHBhdHRlcm4gd2hpY2gganVzdCBpbmNsdWRlcyB0
aGUgZGVzaXJlZCBmaWVsZHMgYW5kIGxlbmd0aHMuIFRoZSBnZW5lcmF0b3IgCisgKiB3aWxsIHJl
dHVybiB0aGUgImJlc3QgZml0IiBwYXR0ZXJuIGNvcnJlc3BvbmRpbmcgdG8gdGhhdCBza2VsZXRv
bi4KKyAqIDxwPlRoZSBtYWluIG1ldGhvZCBwZW9wbGUgd2lsbCB1c2UgaXMgdWRhdHBnX2dldEJl
c3RQYXR0ZXJuLCBzaW5jZSBub3JtYWxseQorICogVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciBp
cyBwcmUtYnVpbHQgd2l0aCBkYXRhIGZyb20gYSBwYXJ0aWN1bGFyIGxvY2FsZS4gCisgKiBIb3dl
dmVyLCBnZW5lcmF0b3JzIGNhbiBiZSBidWlsdCBkaXJlY3RseSBmcm9tIG90aGVyIGRhdGEgYXMg
d2VsbC4KKyAqIDxwPjxpPklzc3VlOiBtYXkgYmUgdXNlZnVsIHRvIGFsc28gaGF2ZSBhIGZ1bmN0
aW9uIHRoYXQgcmV0dXJucyB0aGUgbGlzdCBvZiAKKyAqIGZpZWxkcyBpbiBhIHBhdHRlcm4sIGlu
IG9yZGVyLCBzaW5jZSB3ZSBoYXZlIHRoYXQgaW50ZXJuYWxseS4KKyAqIFRoYXQgd291bGQgYmUg
dXNlZnVsIGZvciBnZXR0aW5nIHRoZSBVSSBvcmRlciBvZiBmaWVsZCBlbGVtZW50cy48L2k+Cisg
Ki8KKworLyoqCisgKiBPcGFxdWUgdHlwZSBmb3IgYSBkYXRlL3RpbWUgcGF0dGVybiBnZW5lcmF0
b3Igb2JqZWN0LgorICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK3R5cGVkZWYgdm9pZCAqVURhdGVU
aW1lUGF0dGVybkdlbmVyYXRvcjsKKworLyoqCisgKiBGaWVsZCBudW1iZXIgY29uc3RhbnRzIGZv
ciB1ZGF0cGdfZ2V0QXBwZW5kSXRlbUZvcm1hdHMoKSBhbmQgc2ltaWxhciBmdW5jdGlvbnMuCisg
KiBUaGVzZSBjb25zdGFudHMgYXJlIHNlcGFyYXRlIGZyb20gVURhdGVGb3JtYXRGaWVsZCBkZXNw
aXRlIHNlbWFudGljIG92ZXJsYXAKKyAqIGJlY2F1c2Ugc29tZSBmaWVsZHMgYXJlIG1lcmdlZCBm
b3IgdGhlIGRhdGUvdGltZSBwYXR0ZXJuIGdlbmVyYXRvci4KKyAqIEBzdGFibGUgSUNVIDMuOAor
ICovCit0eXBlZGVmIGVudW0gVURhdGVUaW1lUGF0dGVybkZpZWxkIHsKKyAgICAvKiogQHN0YWJs
ZSBJQ1UgMy44ICovCisgICAgVURBVFBHX0VSQV9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1Ug
My44ICovCisgICAgVURBVFBHX1lFQVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAq
LworICAgIFVEQVRQR19RVUFSVEVSX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8K
KyAgICBVREFUUEdfTU9OVEhfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAg
IFVEQVRQR19XRUVLX09GX1lFQVJfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLwor
ICAgIFVEQVRQR19XRUVLX09GX01PTlRIX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjgg
Ki8KKyAgICBVREFUUEdfV0VFS0RBWV9GSUVMRCwKKyAgICAvKiogQHN0YWJsZSBJQ1UgMy44ICov
CisgICAgVURBVFBHX0RBWV9PRl9ZRUFSX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjgg
Ki8KKyAgICBVREFUUEdfREFZX09GX1dFRUtfSU5fTU9OVEhfRklFTEQsCisgICAgLyoqIEBzdGFi
bGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19EQVlfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNV
IDMuOCAqLworICAgIFVEQVRQR19EQVlQRVJJT0RfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNV
IDMuOCAqLworICAgIFVEQVRQR19IT1VSX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjgg
Ki8KKyAgICBVREFUUEdfTUlOVVRFX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8K
KyAgICBVREFUUEdfU0VDT05EX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAg
ICBVREFUUEdfRlJBQ1RJT05BTF9TRUNPTkRfRklFTEQsCisgICAgLyoqIEBzdGFibGUgSUNVIDMu
OCAqLworICAgIFVEQVRQR19aT05FX0ZJRUxELAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8K
KyAgICBVREFUUEdfRklFTERfQ09VTlQKK30gVURhdGVUaW1lUGF0dGVybkZpZWxkOworCisvKioK
KyAqIE1hc2tzIHRvIGNvbnRyb2wgZm9yY2luZyB0aGUgbGVuZ3RoIG9mIHNwZWNpZmllZCBmaWVs
ZHMgaW4gdGhlIHJldHVybmVkCisgKiBwYXR0ZXJuIHRvIG1hdGNoIHRob3NlIGluIHRoZSBza2Vs
ZXRvbiAod2hlbiB0aGlzIHdvdWxkIG5vdCBoYXBwZW4KKyAqIG90aGVyd2lzZSkuIFRoZXNlIG1h
eSBiZSBjb21iaW5lZCB0byBmb3JjZSB0aGUgbGVuZ3RoIG9mIG11bHRpcGxlIGZpZWxkcy4KKyAq
IFVzZWQgd2l0aCB1ZGF0cGdfZ2V0QmVzdFBhdHRlcm5XaXRoT3B0aW9ucywgdWRhdHBnX3JlcGxh
Y2VGaWVsZFR5cGVzV2l0aE9wdGlvbnMuCisgKiBAc3RhYmxlIElDVSA0LjQKKyAqLwordHlwZWRl
ZiBlbnVtIFVEYXRlVGltZVBhdHRlcm5NYXRjaE9wdGlvbnMgeworICAgIC8qKiBAc3RhYmxlIElD
VSA0LjQgKi8KKyAgICBVREFUUEdfTUFUQ0hfTk9fT1BUSU9OUyA9IDAsCisgICAgLyoqIEBzdGFi
bGUgSUNVIDQuNCAqLworICAgIFVEQVRQR19NQVRDSF9IT1VSX0ZJRUxEX0xFTkdUSCA9IDEgPDwg
VURBVFBHX0hPVVJfRklFTEQsCisgICAgLyoqIEBpbnRlcm5hbCBJQ1UgNC40ICovCisgICAgVURB
VFBHX01BVENIX01JTlVURV9GSUVMRF9MRU5HVEggPSAxIDw8IFVEQVRQR19NSU5VVEVfRklFTEQs
CisgICAgLyoqIEBpbnRlcm5hbCBJQ1UgNC40ICovCisgICAgVURBVFBHX01BVENIX1NFQ09ORF9G
SUVMRF9MRU5HVEggPSAxIDw8IFVEQVRQR19TRUNPTkRfRklFTEQsCisgICAgLyoqIEBzdGFibGUg
SUNVIDQuNCAqLworICAgIFVEQVRQR19NQVRDSF9BTExfRklFTERTX0xFTkdUSCA9ICgxIDw8IFVE
QVRQR19GSUVMRF9DT1VOVCkgLSAxCit9IFVEYXRlVGltZVBhdHRlcm5NYXRjaE9wdGlvbnM7CisK
Ky8qKgorICogU3RhdHVzIHJldHVybiB2YWx1ZXMgZnJvbSB1ZGF0cGdfYWRkUGF0dGVybigpLgor
ICogQHN0YWJsZSBJQ1UgMy44CisgKi8KK3R5cGVkZWYgZW51bSBVRGF0ZVRpbWVQYXR0ZXJuQ29u
ZmxpY3QgeworICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfTk9fQ09ORkxJ
Q1QsCisgICAgLyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19CQVNFX0NPTkZMSUNU
LAorICAgIC8qKiBAc3RhYmxlIElDVSAzLjggKi8KKyAgICBVREFUUEdfQ09ORkxJQ1QsCisgICAg
LyoqIEBzdGFibGUgSUNVIDMuOCAqLworICAgIFVEQVRQR19DT05GTElDVF9DT1VOVAorfSBVRGF0
ZVRpbWVQYXR0ZXJuQ29uZmxpY3Q7CisKKy8qKgorICAqIE9wZW4gYSBnZW5lcmF0b3IgYWNjb3Jk
aW5nIHRvIGEgZ2l2ZW4gbG9jYWxlLgorICAqIEBwYXJhbSBsb2NhbGUKKyAgKiBAcGFyYW0gcEVy
cm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNh
dGUgYQorICAqICAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBj
YWxsLgorICAqIEByZXR1cm4gYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3Iu
CisgICogQHN0YWJsZSBJQ1UgMy44CisgICovCitVX1NUQUJMRSBVRGF0ZVRpbWVQYXR0ZXJuR2Vu
ZXJhdG9yICogVV9FWFBPUlQyCit1ZGF0cGdfb3Blbihjb25zdCBjaGFyICpsb2NhbGUsIFVFcnJv
ckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAgKiBPcGVuIGFuIGVtcHR5IGdlbmVyYXRvciwg
dG8gYmUgY29uc3RydWN0ZWQgd2l0aCB1ZGF0cGdfYWRkUGF0dGVybiguLi4pIGV0Yy4KKyAgKiBA
cGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBu
b3QgaW5kaWNhdGUgYQorICAqICAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBm
dW5jdGlvbiBjYWxsLgorICAqIEByZXR1cm4gYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5H
ZW5lcmF0b3IuCisgICogQHN0YWJsZSBJQ1UgMy44CisgICovCitVX1NUQUJMRSBVRGF0ZVRpbWVQ
YXR0ZXJuR2VuZXJhdG9yICogVV9FWFBPUlQyCit1ZGF0cGdfb3BlbkVtcHR5KFVFcnJvckNvZGUg
KnBFcnJvckNvZGUpOworCisvKioKKyAgKiBDbG9zZSBhIGdlbmVyYXRvci4KKyAgKiBAcGFyYW0g
ZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAgKiBAc3RhYmxl
IElDVSAzLjgKKyAgKi8KK1VfU1RBQkxFIHZvaWQgVV9FWFBPUlQyCit1ZGF0cGdfY2xvc2UoVURh
dGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZyk7CisKKyNpZiBVX1NIT1dfQ1BMVVNQTFVTX0FQ
SQorCitVX05BTUVTUEFDRV9CRUdJTgorCisvKioKKyAqIFxjbGFzcyBMb2NhbFVEYXRlVGltZVBh
dHRlcm5HZW5lcmF0b3JQb2ludGVyCisgKiAiU21hcnQgcG9pbnRlciIgY2xhc3MsIGNsb3NlcyBh
IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgdmlhIHVkYXRwZ19jbG9zZSgpLgorICogRm9yIG1v
c3QgbWV0aG9kcyBzZWUgdGhlIExvY2FsUG9pbnRlckJhc2UgYmFzZSBjbGFzcy4KKyAqCisgKiBA
c2VlIExvY2FsUG9pbnRlckJhc2UKKyAqIEBzZWUgTG9jYWxQb2ludGVyCisgKiBAc3RhYmxlIElD
VSA0LjQKKyAqLworVV9ERUZJTkVfTE9DQUxfT1BFTl9QT0lOVEVSKExvY2FsVURhdGVUaW1lUGF0
dGVybkdlbmVyYXRvclBvaW50ZXIsIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IsIHVkYXRwZ19j
bG9zZSk7CisKK1VfTkFNRVNQQUNFX0VORAorCisjZW5kaWYKKworLyoqCisgICogQ3JlYXRlIGEg
Y29weSBwZiBhIGdlbmVyYXRvci4KKyAgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVU
aW1lUGF0dGVybkdlbmVyYXRvciB0byBiZSBjb3BpZWQuCisgICogQHBhcmFtIHBFcnJvckNvZGUg
YSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAg
KiAgICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAg
KiBAcmV0dXJuIGEgcG9pbnRlciB0byBhIG5ldyBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgor
ICAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yICogVV9FWFBPUlQyCit1ZGF0cGdfY2xvbmUoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVy
YXRvciAqZHRwZywgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICogR2V0IHRoZSBi
ZXN0IHBhdHRlcm4gbWF0Y2hpbmcgdGhlIGlucHV0IHNrZWxldG9uLiBJdCBpcyBndWFyYW50ZWVk
IHRvCisgKiBoYXZlIGFsbCBvZiB0aGUgZmllbGRzIGluIHRoZSBza2VsZXRvbi4KKyAqIAorICog
Tm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gdXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yOgorICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdoaWNoIGlz
IHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICogcmF0aGVyIHRoYW4gY3JlYXRp
bmcgb25lIGZvciBlYWNoIGZ1bmN0aW9uIGNhbGwuCisgKiBDb25zZWN1dGl2ZSBjYWxscyB0byB0
aGlzIGZ1bmN0aW9uIGRvIG5vdCBhZmZlY3QgZWFjaCBvdGhlciwKKyAqIGJ1dCB0aGlzIGZ1bmN0
aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmdsZSBnZW5lcmF0b3Igb2Jq
ZWN0LgorICogCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdl
bmVyYXRvci4KKyAqIEBwYXJhbSBza2VsZXRvbgorICogICAgICAgICAgICBUaGUgc2tlbGV0b24g
aXMgYSBwYXR0ZXJuIGNvbnRhaW5pbmcgb25seSB0aGUgdmFyaWFibGUgZmllbGRzLgorICogICAg
ICAgICAgICBGb3IgZXhhbXBsZSwgIk1NTWRkIiBhbmQgIm1taGgiIGFyZSBza2VsZXRvbnMuCisg
KiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGggb2Ygc2tlbGV0b24KKyAqIEBwYXJhbSBiZXN0UGF0
dGVybgorICogICAgICAgICAgICBUaGUgYmVzdCBwYXR0ZXJuIGZvdW5kIGZyb20gdGhlIGdpdmVu
IHNrZWxldG9uLgorICogQHBhcmFtIGNhcGFjaXR5IHRoZSBjYXBhY2l0eSBvZiBiZXN0UGF0dGVy
bi4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGlj
aCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9y
ZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1cm4gdGhlIGxlbmd0aCBvZiBiZXN0UGF0dGVy
bi4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JUMgor
dWRhdHBnX2dldEJlc3RQYXR0ZXJuKFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisg
ICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IGxlbmd0
aCwKKyAgICAgICAgICAgICAgICAgICAgICBVQ2hhciAqYmVzdFBhdHRlcm4sIGludDMyX3QgY2Fw
YWNpdHksCisgICAgICAgICAgICAgICAgICAgICAgVUVycm9yQ29kZSAqcEVycm9yQ29kZSk7CisK
Ky8qKgorICogR2V0IHRoZSBiZXN0IHBhdHRlcm4gbWF0Y2hpbmcgdGhlIGlucHV0IHNrZWxldG9u
LiBJdCBpcyBndWFyYW50ZWVkIHRvCisgKiBoYXZlIGFsbCBvZiB0aGUgZmllbGRzIGluIHRoZSBz
a2VsZXRvbi4KKyAqIAorICogTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gdXNlcyBhIG5vbi1jb25z
dCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yOgorICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRl
cm4gcGFyc2VyIHdoaWNoIGlzIHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICog
cmF0aGVyIHRoYW4gY3JlYXRpbmcgb25lIGZvciBlYWNoIGZ1bmN0aW9uIGNhbGwuCisgKiBDb25z
ZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1bmN0aW9uIGRvIG5vdCBhZmZlY3QgZWFjaCBvdGhlciwK
KyAqIGJ1dCB0aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNp
bmdsZSBnZW5lcmF0b3Igb2JqZWN0LgorICogCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8g
VURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBza2VsZXRvbgorICogICAgICAg
ICAgICBUaGUgc2tlbGV0b24gaXMgYSBwYXR0ZXJuIGNvbnRhaW5pbmcgb25seSB0aGUgdmFyaWFi
bGUgZmllbGRzLgorICogICAgICAgICAgICBGb3IgZXhhbXBsZSwgIk1NTWRkIiBhbmQgIm1taGgi
IGFyZSBza2VsZXRvbnMuCisgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGggb2Ygc2tlbGV0b24K
KyAqIEBwYXJhbSBvcHRpb25zCisgKiAgICAgICAgICAgIE9wdGlvbnMgZm9yIGZvcmNpbmcgdGhl
IGxlbmd0aCBvZiBzcGVjaWZpZWQgZmllbGRzIGluIHRoZQorICogICAgICAgICAgICByZXR1cm5l
ZCBwYXR0ZXJuIHRvIG1hdGNoIHRob3NlIGluIHRoZSBza2VsZXRvbiAod2hlbiB0aGlzCisgKiAg
ICAgICAgICAgIHdvdWxkIG5vdCBoYXBwZW4gb3RoZXJ3aXNlKS4gRm9yIGRlZmF1bHQgYmVoYXZp
b3IsIHVzZQorICogICAgICAgICAgICBVREFUUEdfTUFUQ0hfTk9fT1BUSU9OUy4KKyAqIEBwYXJh
bSBiZXN0UGF0dGVybgorICogICAgICAgICAgICBUaGUgYmVzdCBwYXR0ZXJuIGZvdW5kIGZyb20g
dGhlIGdpdmVuIHNrZWxldG9uLgorICogQHBhcmFtIGNhcGFjaXR5CisgKiAgICAgICAgICAgIHRo
ZSBjYXBhY2l0eSBvZiBiZXN0UGF0dGVybi4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlCisgKiAgICAg
ICAgICAgIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0
ZSBhCisgKiAgICAgICAgICAgIGZhaWx1cmUgYmVmb3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICog
QHJldHVybiB0aGUgbGVuZ3RoIG9mIGJlc3RQYXR0ZXJuLgorICogQHN0YWJsZSBJQ1UgNC40Cisg
Ki8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQyCit1ZGF0cGdfZ2V0QmVzdFBhdHRlcm5XaXRo
T3B0aW9ucyhVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxldG9uLCBpbnQzMl90IGxlbmd0aCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5NYXRjaE9w
dGlvbnMgb3B0aW9ucywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVDaGFyICpi
ZXN0UGF0dGVybiwgaW50MzJfdCBjYXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAgKiBHZXQgYSB1bmlxdWUg
c2tlbGV0b24gZnJvbSBhIGdpdmVuIHBhdHRlcm4uIEZvciBleGFtcGxlLAorICAqIGJvdGggIk1N
TS1kZCIgYW5kICJkZC9NTU0iIHByb2R1Y2UgdGhlIHNrZWxldG9uICJNTU1kZCIuCisgICogCisg
ICogTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gdXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0
ZXJuR2VuZXJhdG9yOgorICAqIEl0IHVzZXMgYSBzdGF0ZWZ1bCBwYXR0ZXJuIHBhcnNlciB3aGlj
aCBpcyBzZXQgdXAgZm9yIGVhY2ggZ2VuZXJhdG9yIG9iamVjdCwKKyAgKiByYXRoZXIgdGhhbiBj
cmVhdGluZyBvbmUgZm9yIGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAgKiBDb25zZWN1dGl2ZSBjYWxs
cyB0byB0aGlzIGZ1bmN0aW9uIGRvIG5vdCBhZmZlY3QgZWFjaCBvdGhlciwKKyAgKiBidXQgdGhp
cyBmdW5jdGlvbiBjYW5ub3QgYmUgdXNlZCBjb25jdXJyZW50bHkgb24gYSBzaW5nbGUgZ2VuZXJh
dG9yIG9iamVjdC4KKyAgKgorICAqIEBwYXJhbSBkdHBnICAgICBhIHBvaW50ZXIgdG8gVURhdGVU
aW1lUGF0dGVybkdlbmVyYXRvci4KKyAgKiBAcGFyYW0gcGF0dGVybiAgaW5wdXQgcGF0dGVybiwg
c3VjaCBhcyAiZGQvTU1NIi4KKyAgKiBAcGFyYW0gbGVuZ3RoICAgdGhlIGxlbmd0aCBvZiBwYXR0
ZXJuLgorICAqIEBwYXJhbSBza2VsZXRvbiBzdWNoIGFzICJNTU1kZCIKKyAgKiBAcGFyYW0gY2Fw
YWNpdHkgdGhlIGNhcGFjaXR5IG9mIHNrZWxldG9uLgorICAqIEBwYXJhbSBwRXJyb3JDb2RlIGEg
cG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgICog
ICAgICAgICAgICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAgKiBA
cmV0dXJuIHRoZSBsZW5ndGggb2Ygc2tlbGV0b24uCisgICogQHN0YWJsZSBJQ1UgMy44CisgICov
CitVX1NUQUJMRSBpbnQzMl90IFVfRVhQT1JUMgordWRhdHBnX2dldFNrZWxldG9uKFVEYXRlVGlt
ZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsCisgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIg
KnBhdHRlcm4sIGludDMyX3QgbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgIFVDaGFyICpza2Vs
ZXRvbiwgaW50MzJfdCBjYXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICBVRXJyb3JDb2RlICpw
RXJyb3JDb2RlKTsKKworLyoqCisgKiBHZXQgYSB1bmlxdWUgYmFzZSBza2VsZXRvbiBmcm9tIGEg
Z2l2ZW4gcGF0dGVybi4gVGhpcyBpcyB0aGUgc2FtZQorICogYXMgdGhlIHNrZWxldG9uLCBleGNl
cHQgdGhhdCBkaWZmZXJlbmNlcyBpbiBsZW5ndGggYXJlIG1pbmltaXplZCBzbworICogYXMgdG8g
b25seSBwcmVzZXJ2ZSB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHN0cmluZyBhbmQgbnVtZXJpYyBm
b3JtLiBTbworICogZm9yIGV4YW1wbGUsIGJvdGggIk1NTS1kZCIgYW5kICJkL01NTSIgcHJvZHVj
ZSB0aGUgc2tlbGV0b24gIk1NTWQiCisgKiAobm90aWNlIHRoZSBzaW5nbGUgZCkuCisgKgorICog
Tm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gdXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0ZXJu
R2VuZXJhdG9yOgorICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdoaWNoIGlz
IHNldCB1cCBmb3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICogcmF0aGVyIHRoYW4gY3JlYXRp
bmcgb25lIGZvciBlYWNoIGZ1bmN0aW9uIGNhbGwuCisgKiBDb25zZWN1dGl2ZSBjYWxscyB0byB0
aGlzIGZ1bmN0aW9uIGRvIG5vdCBhZmZlY3QgZWFjaCBvdGhlciwKKyAqIGJ1dCB0aGlzIGZ1bmN0
aW9uIGNhbm5vdCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmdsZSBnZW5lcmF0b3Igb2Jq
ZWN0LgorICoKKyAqIEBwYXJhbSBkdHBnICAgICBhIHBvaW50ZXIgdG8gVURhdGVUaW1lUGF0dGVy
bkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwYXR0ZXJuICBpbnB1dCBwYXR0ZXJuLCBzdWNoIGFzICJk
ZC9NTU0iLgorICogQHBhcmFtIGxlbmd0aCAgIHRoZSBsZW5ndGggb2YgcGF0dGVybi4KKyAqIEBw
YXJhbSBiYXNlU2tlbGV0b24gc3VjaCBhcyAiTWQiCisgKiBAcGFyYW0gY2FwYWNpdHkgdGhlIGNh
cGFjaXR5IG9mIGJhc2Ugc2tlbGV0b24uCisgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIg
dG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICogICAgICAgICAg
ICAgICAgICBmYWlsdXJlIGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1cm4gdGhl
IGxlbmd0aCBvZiBiYXNlU2tlbGV0b24uCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFC
TEUgaW50MzJfdCBVX0VYUE9SVDIKK3VkYXRwZ19nZXRCYXNlU2tlbGV0b24oVURhdGVUaW1lUGF0
dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIg
KnBhdHRlcm4sIGludDMyX3QgbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICBVQ2hhciAq
YmFzZVNrZWxldG9uLCBpbnQzMl90IGNhcGFjaXR5LAorICAgICAgICAgICAgICAgICAgICAgICBV
RXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBBZGRzIGEgcGF0dGVybiB0byB0aGUg
Z2VuZXJhdG9yLiBJZiB0aGUgcGF0dGVybiBoYXMgdGhlIHNhbWUgc2tlbGV0b24gYXMKKyAqIGFu
IGV4aXN0aW5nIHBhdHRlcm4sIGFuZCB0aGUgb3ZlcnJpZGUgcGFyYW1ldGVyIGlzIHNldCwgdGhl
biB0aGUgcHJldmlvdXMKKyAqIHZhbHVlIGlzIG92ZXJyaWRlbi4gT3RoZXJ3aXNlLCB0aGUgcHJl
dmlvdXMgdmFsdWUgaXMgcmV0YWluZWQuIEluIGVpdGhlcgorICogY2FzZSwgdGhlIGNvbmZsaWN0
aW5nIHN0YXR1cyBpcyBzZXQgYW5kIHByZXZpb3VzIHZhbGUgaXMgc3RvcmVkIGluIAorICogY29u
ZmxpY3RpbmcgcGF0dGVybi4KKyAqIDxwPgorICogTm90ZSB0aGF0IHNpbmdsZS1maWVsZCBwYXR0
ZXJucyAobGlrZSAiTU1NIikgYXJlIGF1dG9tYXRpY2FsbHkgYWRkZWQsIGFuZAorICogZG9uJ3Qg
bmVlZCB0byBiZSBhZGRlZCBleHBsaWNpdGx5IQorICoKKyAqIEBwYXJhbSBkdHBnICAgICBhIHBv
aW50ZXIgdG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwYXR0ZXJuICBp
bnB1dCBwYXR0ZXJuLCBzdWNoIGFzICJkZC9NTU0iCisgKiBAcGFyYW0gcGF0dGVybkxlbmd0aCB0
aGUgbGVuZ3RoIG9mIHBhdHRlcm4uCisgKiBAcGFyYW0gb3ZlcnJpZGUgIFdoZW4gZXhpc3Rpbmcg
dmFsdWVzIGFyZSB0byBiZSBvdmVycmlkZGVuIHVzZSB0cnVlLCAKKyAqICAgICAgICAgICAgICAg
ICAgb3RoZXJ3aXNlIHVzZSBmYWxzZS4KKyAqIEBwYXJhbSBjb25mbGljdGluZ1BhdHRlcm4gIFBy
ZXZpb3VzIHBhdHRlcm4gd2l0aCB0aGUgc2FtZSBza2VsZXRvbi4KKyAqIEBwYXJhbSBjYXBhY2l0
eSB0aGUgY2FwYWNpdHkgb2YgY29uZmxpY3RpbmdQYXR0ZXJuLgorICogQHBhcmFtIHBMZW5ndGgg
YSBwb2ludGVyIHRvIHRoZSBsZW5ndGggb2YgY29uZmxpY3RpbmdQYXR0ZXJuLgorICogQHBhcmFt
IHBFcnJvckNvZGUgYSBwb2ludGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGlu
ZGljYXRlIGEKKyAqICAgICAgICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9u
IGNhbGwuCisgKiBAcmV0dXJuIGNvbmZsaWN0aW5nIHN0YXR1cy4gVGhlIHZhbHVlIGNvdWxkIGJl
IFVEQVRQR19OT19DT05GTElDVCwgCisgKiAgICAgICAgICAgICAgICAgIFVEQVRQR19CQVNFX0NP
TkZMSUNUIG9yIFVEQVRQR19DT05GTElDVC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitVX1NU
QUJMRSBVRGF0ZVRpbWVQYXR0ZXJuQ29uZmxpY3QgVV9FWFBPUlQyCit1ZGF0cGdfYWRkUGF0dGVy
bihVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgY29u
c3QgVUNoYXIgKnBhdHRlcm4sIGludDMyX3QgcGF0dGVybkxlbmd0aCwKKyAgICAgICAgICAgICAg
ICAgIFVCb29sIG92ZXJyaWRlLAorICAgICAgICAgICAgICAgICAgVUNoYXIgKmNvbmZsaWN0aW5n
UGF0dGVybiwgaW50MzJfdCBjYXBhY2l0eSwgaW50MzJfdCAqcExlbmd0aCwKKyAgICAgICAgICAg
ICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAgKiBBbiBBcHBlbmRJdGVt
IGZvcm1hdCBpcyBhIHBhdHRlcm4gdXNlZCB0byBhcHBlbmQgYSBmaWVsZCBpZiB0aGVyZSBpcyBu
bworICAqIGdvb2QgbWF0Y2guIEZvciBleGFtcGxlLCBzdXBwb3NlIHRoYXQgdGhlIGlucHV0IHNr
ZWxldG9uIGlzICJHeXl5eU1NTWQiLAorICAqIGFuZCB0aGVyZSBpcyBubyBtYXRjaGluZyBwYXR0
ZXJuIGludGVybmFsbHksIGJ1dCB0aGVyZSBpcyBhIHBhdHRlcm4KKyAgKiBtYXRjaGluZyAieXl5
eU1NTWQiLCBzYXkgImQtTU0teXl5eSIuIFRoZW4gdGhhdCBwYXR0ZXJuIGlzIHVzZWQsIHBsdXMg
dGhlCisgICogRy4gVGhlIHdheSB0aGVzZSB0d28gYXJlIGNvbmpvaW5lZCBpcyBieSB1c2luZyB0
aGUgQXBwZW5kSXRlbUZvcm1hdCBmb3IgRworICAqIChlcmEpLiBTbyBpZiB0aGF0IHZhbHVlIGlz
LCBzYXkgInswfSwgezF9IiB0aGVuIHRoZSBmaW5hbCByZXN1bHRpbmcKKyAgKiBwYXR0ZXJuIGlz
ICJkLU1NLXl5eXksIEciLgorICAqIDxwPgorICAqIFRoZXJlIGFyZSBhY3R1YWxseSB0aHJlZSBh
dmFpbGFibGUgdmFyaWFibGVzOiB7MH0gaXMgdGhlIHBhdHRlcm4gc28gZmFyLAorICAqIHsxfSBp
cyB0aGUgZWxlbWVudCB3ZSBhcmUgYWRkaW5nLCBhbmQgezJ9IGlzIHRoZSBuYW1lIG9mIHRoZSBl
bGVtZW50LgorICAqIDxwPgorICAqIFRoaXMgcmVmbGVjdHMgdGhlIHdheSB0aGF0IHRoZSBDTERS
IGRhdGEgaXMgb3JnYW5pemVkLgorICAqCisgICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIgdG8g
VURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAgKiBAcGFyYW0gZmllbGQgIFVEYXRlVGltZVBh
dHRlcm5GaWVsZCwgc3VjaCBhcyBVREFUUEdfRVJBX0ZJRUxECisgICogQHBhcmFtIHZhbHVlICBw
YXR0ZXJuLCBzdWNoIGFzICJ7MH0sIHsxfSIKKyAgKiBAcGFyYW0gbGVuZ3RoIHRoZSBsZW5ndGgg
b2YgdmFsdWUuCisgICogQHN0YWJsZSBJQ1UgMy44CisgICovCitVX1NUQUJMRSB2b2lkIFVfRVhQ
T1JUMgordWRhdHBnX3NldEFwcGVuZEl0ZW1Gb3JtYXQoVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5GaWVs
ZCBmaWVsZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICp2YWx1ZSwg
aW50MzJfdCBsZW5ndGgpOworCisvKioKKyAqIEdldHRlciBjb3JyZXNwb25kaW5nIHRvIHNldEFw
cGVuZEl0ZW1Gb3JtYXQuIFZhbHVlcyBiZWxvdyAwIG9yIGF0IG9yCisgKiBhYm92ZSBVREFUUEdf
RklFTERfQ09VTlQgYXJlIGlsbGVnYWwgYXJndW1lbnRzLgorICoKKyAqIEBwYXJhbSBkdHBnICAg
QSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gZmllbGQg
IFVEYXRlVGltZVBhdHRlcm5GaWVsZCwgc3VjaCBhcyBVREFUUEdfRVJBX0ZJRUxECisgKiBAcGFy
YW0gcExlbmd0aCBBIHBvaW50ZXIgdGhhdCB3aWxsIHJlY2VpdmUgdGhlIGxlbmd0aCBvZiBhcHBl
bmRJdGVtRm9ybWF0LgorICogQHJldHVybiBhcHBlbmRJdGVtRm9ybWF0IGZvciBmaWVsZC4KKyAq
IEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBjb25zdCBVQ2hhciAqIFVfRVhQT1JUMgor
dWRhdHBnX2dldEFwcGVuZEl0ZW1Gb3JtYXQoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRv
ciAqZHRwZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRlcm5GaWVs
ZCBmaWVsZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgKnBMZW5ndGgpOwor
CisvKioKKyAgICogU2V0IHRoZSBuYW1lIG9mIGZpZWxkLCBlZyAiZXJhIiBpbiBFbmdsaXNoIGZv
ciBFUkEuIFRoZXNlIGFyZSBvbmx5CisgICAqIHVzZWQgaWYgdGhlIGNvcnJlc3BvbmRpbmcgQXBw
ZW5kSXRlbUZvcm1hdCBpcyB1c2VkLCBhbmQgaWYgaXQgY29udGFpbnMgYQorICAgKiB7Mn0gdmFy
aWFibGUuCisgICAqIDxwPgorICAgKiBUaGlzIHJlZmxlY3RzIHRoZSB3YXkgdGhhdCB0aGUgQ0xE
UiBkYXRhIGlzIG9yZ2FuaXplZC4KKyAgICoKKyAgICogQHBhcmFtIGR0cGcgICBhIHBvaW50ZXIg
dG8gVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAgICogQHBhcmFtIGZpZWxkICBVRGF0ZVRp
bWVQYXR0ZXJuRmllbGQKKyAgICogQHBhcmFtIHZhbHVlICBuYW1lIGZvciB0aGUgZmllbGQuCisg
ICAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiB2YWx1ZS4KKyAgICogQHN0YWJsZSBJQ1Ug
My44CisgICAqLworVV9TVEFCTEUgdm9pZCBVX0VYUE9SVDIKK3VkYXRwZ19zZXRBcHBlbmRJdGVt
TmFtZShVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAg
ICAgICAgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCBmaWVsZCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBVQ2hhciAqdmFsdWUsIGludDMyX3QgbGVuZ3RoKTsKKworLyoqCisgKiBHZXR0
ZXIgY29ycmVzcG9uZGluZyB0byBzZXRBcHBlbmRJdGVtTmFtZXMuIFZhbHVlcyBiZWxvdyAwIG9y
IGF0IG9yIGFib3ZlCisgKiBVREFUUEdfRklFTERfQ09VTlQgYXJlIGlsbGVnYWwgYXJndW1lbnRz
LgorICoKKyAqIEBwYXJhbSBkdHBnICAgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5l
cmF0b3IuCisgKiBAcGFyYW0gZmllbGQgIFVEYXRlVGltZVBhdHRlcm5GaWVsZCwgc3VjaCBhcyBV
REFUUEdfRVJBX0ZJRUxECisgKiBAcGFyYW0gcExlbmd0aCBBIHBvaW50ZXIgdGhhdCB3aWxsIHJl
Y2VpdmUgdGhlIGxlbmd0aCBvZiB0aGUgbmFtZSBmb3IgZmllbGQuCisgKiBAcmV0dXJuIG5hbWUg
Zm9yIGZpZWxkCisgKiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgY29uc3QgVUNoYXIg
KiBVX0VYUE9SVDIKK3VkYXRwZ19nZXRBcHBlbmRJdGVtTmFtZShjb25zdCBVRGF0ZVRpbWVQYXR0
ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgIFVEYXRlVGltZVBh
dHRlcm5GaWVsZCBmaWVsZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBpbnQzMl90ICpwTGVu
Z3RoKTsKKworLyoqCisgKiBUaGUgZGF0ZSB0aW1lIGZvcm1hdCBpcyBhIG1lc3NhZ2UgZm9ybWF0
IHBhdHRlcm4gdXNlZCB0byBjb21wb3NlIGRhdGUgYW5kCisgKiB0aW1lIHBhdHRlcm5zLiBUaGUg
ZGVmYXVsdCB2YWx1ZSBpcyAiezB9IHsxfSIsIHdoZXJlIHswfSB3aWxsIGJlIHJlcGxhY2VkCisg
KiBieSB0aGUgZGF0ZSBwYXR0ZXJuIGFuZCB7MX0gd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgdGlt
ZSBwYXR0ZXJuLgorICogPHA+CisgKiBUaGlzIGlzIHVzZWQgd2hlbiB0aGUgaW5wdXQgc2tlbGV0
b24gY29udGFpbnMgYm90aCBkYXRlIGFuZCB0aW1lIGZpZWxkcywKKyAqIGJ1dCB0aGVyZSBpcyBu
b3QgYSBjbG9zZSBtYXRjaCBhbW9uZyB0aGUgYWRkZWQgcGF0dGVybnMuIEZvciBleGFtcGxlLAor
ICogc3VwcG9zZSB0aGF0IHRoaXMgb2JqZWN0IHdhcyBjcmVhdGVkIGJ5IGFkZGluZyAiZGQtTU1N
IiBhbmQgImhoOm1tIiwgYW5kCisgKiBpdHMgZGF0ZXRpbWVGb3JtYXQgaXMgdGhlIGRlZmF1bHQg
InswfSB7MX0iLiBUaGVuIGlmIHRoZSBpbnB1dCBza2VsZXRvbgorICogaXMgIk1NTWRobW0iLCB0
aGVyZSBpcyBub3QgYW4gZXhhY3QgbWF0Y2gsIHNvIHRoZSBpbnB1dCBza2VsZXRvbiBpcworICog
YnJva2VuIHVwIGludG8gdHdvIGNvbXBvbmVudHMgIk1NTWQiIGFuZCAiaG1tIi4gVGhlcmUgYXJl
IGNsb3NlIG1hdGNoZXMKKyAqIGZvciB0aG9zZSB0d28gc2tlbGV0b25zLCBzbyB0aGUgcmVzdWx0
IGlzIHB1dCB0b2dldGhlciB3aXRoIHRoaXMgcGF0dGVybiwKKyAqIHJlc3VsdGluZyBpbiAiZC1N
TU0gaDptbSIuCisgKgorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRl
cm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gZHRGb3JtYXQKKyAqICAgICAgICAgICAgbWVzc2FnZSBm
b3JtYXQgcGF0dGVybiwgaGVyZSB7MH0gd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgZGF0ZQorICog
ICAgICAgICAgICBwYXR0ZXJuIGFuZCB7MX0gd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgdGltZSBw
YXR0ZXJuLgorICogQHBhcmFtIGxlbmd0aCB0aGUgbGVuZ3RoIG9mIGR0Rm9ybWF0LgorICogQHN0
YWJsZSBJQ1UgMy44CisgKi8KK1VfU1RBQkxFIHZvaWQgVV9FWFBPUlQyCit1ZGF0cGdfc2V0RGF0
ZVRpbWVGb3JtYXQoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqZHRGb3JtYXQsIGludDMyX3QgbGVuZ3Ro
KTsKKworLyoqCisgKiBHZXR0ZXIgY29ycmVzcG9uZGluZyB0byBzZXREYXRlVGltZUZvcm1hdC4K
KyAqIEBwYXJhbSBkdHBnICAgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3Iu
CisgKiBAcGFyYW0gcExlbmd0aCBBIHBvaW50ZXIgdGhhdCB3aWxsIHJlY2VpdmUgdGhlIGxlbmd0
aCBvZiB0aGUgZm9ybWF0CisgKiBAcmV0dXJuIGRhdGVUaW1lRm9ybWF0LgorICogQHN0YWJsZSBJ
Q1UgMy44CisgKi8KK1VfU1RBQkxFIGNvbnN0IFVDaGFyICogVV9FWFBPUlQyCit1ZGF0cGdfZ2V0
RGF0ZVRpbWVGb3JtYXQoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICBpbnQzMl90ICpwTGVuZ3RoKTsKKworLyoqCisgKiBUaGUg
ZGVjaW1hbCB2YWx1ZSBpcyB1c2VkIGluIGZvcm1hdHRpbmcgZnJhY3Rpb25zIG9mIHNlY29uZHMu
IElmIHRoZQorICogc2tlbGV0b24gY29udGFpbnMgZnJhY3Rpb25hbCBzZWNvbmRzLCB0aGVuIHRo
aXMgaXMgdXNlZCB3aXRoIHRoZQorICogZnJhY3Rpb25hbCBzZWNvbmRzLiBGb3IgZXhhbXBsZSwg
c3VwcG9zZSB0aGF0IHRoZSBpbnB1dCBwYXR0ZXJuIGlzCisgKiAiaGhtbXNzU1NTUyIsIGFuZCB0
aGUgYmVzdCBtYXRjaGluZyBwYXR0ZXJuIGludGVybmFsbHkgaXMgIkg6bW06c3MiLCBhbmQKKyAq
IHRoZSBkZWNpbWFsIHN0cmluZyBpcyAiLCIuIFRoZW4gdGhlIHJlc3VsdGluZyBwYXR0ZXJuIGlz
IG1vZGlmaWVkIHRvIGJlCisgKiAiSDptbTpzcyxTU1NTIgorICoKKyAqIEBwYXJhbSBkdHBnIGEg
cG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIGRlY2ltYWwK
KyAqIEBwYXJhbSBsZW5ndGggdGhlIGxlbmd0aCBvZiBkZWNpbWFsLgorICogQHN0YWJsZSBJQ1Ug
My44CisgKi8KK1VfU1RBQkxFIHZvaWQgVV9FWFBPUlQyCit1ZGF0cGdfc2V0RGVjaW1hbChVRGF0
ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgY29uc3QgVUNo
YXIgKmRlY2ltYWwsIGludDMyX3QgbGVuZ3RoKTsKKworLyoqCisgKiBHZXR0ZXIgY29ycmVzcG9u
ZGluZyB0byBzZXREZWNpbWFsLgorICogCisgKiBAcGFyYW0gZHRwZyBhIHBvaW50ZXIgdG8gVURh
dGVUaW1lUGF0dGVybkdlbmVyYXRvci4KKyAqIEBwYXJhbSBwTGVuZ3RoIEEgcG9pbnRlciB0aGF0
IHdpbGwgcmVjZWl2ZSB0aGUgbGVuZ3RoIG9mIHRoZSBkZWNpbWFsIHN0cmluZy4KKyAqIEByZXR1
cm4gY29ycmVzcG9uZGluZyB0byB0aGUgZGVjaW1hbCBwb2ludC4KKyAqIEBzdGFibGUgSUNVIDMu
OAorICovCitVX1NUQUJMRSBjb25zdCBVQ2hhciAqIFVfRVhQT1JUMgordWRhdHBnX2dldERlY2lt
YWwoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywKKyAgICAgICAgICAgICAg
ICAgIGludDMyX3QgKnBMZW5ndGgpOworCisvKioKKyAqIEFkanVzdHMgdGhlIGZpZWxkIHR5cGVz
ICh3aWR0aCBhbmQgc3VidHlwZSkgb2YgYSBwYXR0ZXJuIHRvIG1hdGNoIHdoYXQgaXMKKyAqIGlu
IGEgc2tlbGV0b24uIFRoYXQgaXMsIGlmIHlvdSBzdXBwbHkgYSBwYXR0ZXJuIGxpa2UgImQtTSBI
Om0iLCBhbmQgYQorICogc2tlbGV0b24gb2YgIk1NTU1kZGhobW0iLCB0aGVuIHRoZSBpbnB1dCBw
YXR0ZXJuIGlzIGFkanVzdGVkIHRvIGJlCisgKiAiZGQtTU1NTSBoaDptbSIuIFRoaXMgaXMgdXNl
ZCBpbnRlcm5hbGx5IHRvIGdldCB0aGUgYmVzdCBtYXRjaCBmb3IgdGhlCisgKiBpbnB1dCBza2Vs
ZXRvbiwgYnV0IGNhbiBhbHNvIGJlIHVzZWQgZXh0ZXJuYWxseS4KKyAqCisgKiBOb3RlIHRoYXQg
dGhpcyBmdW5jdGlvbiB1c2VzIGEgbm9uLWNvbnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3I6
CisgKiBJdCB1c2VzIGEgc3RhdGVmdWwgcGF0dGVybiBwYXJzZXIgd2hpY2ggaXMgc2V0IHVwIGZv
ciBlYWNoIGdlbmVyYXRvciBvYmplY3QsCisgKiByYXRoZXIgdGhhbiBjcmVhdGluZyBvbmUgZm9y
IGVhY2ggZnVuY3Rpb24gY2FsbC4KKyAqIENvbnNlY3V0aXZlIGNhbGxzIHRvIHRoaXMgZnVuY3Rp
b24gZG8gbm90IGFmZmVjdCBlYWNoIG90aGVyLAorICogYnV0IHRoaXMgZnVuY3Rpb24gY2Fubm90
IGJlIHVzZWQgY29uY3VycmVudGx5IG9uIGEgc2luZ2xlIGdlbmVyYXRvciBvYmplY3QuCisgKgor
ICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisg
KiBAcGFyYW0gcGF0dGVybiBJbnB1dCBwYXR0ZXJuCisgKiBAcGFyYW0gcGF0dGVybkxlbmd0aCB0
aGUgbGVuZ3RoIG9mIGlucHV0IHBhdHRlcm4uCisgKiBAcGFyYW0gc2tlbGV0b24KKyAqIEBwYXJh
bSBza2VsZXRvbkxlbmd0aCB0aGUgbGVuZ3RoIG9mIGlucHV0IHNrZWxldG9uLgorICogQHBhcmFt
IGRlc3QgIHBhdHRlcm4gYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHNrZWxldG9uIGZpZWxkcyB3aWR0
aHMgYW5kIHN1YnR5cGVzLgorICogQHBhcmFtIGRlc3RDYXBhY2l0eSB0aGUgY2FwYWNpdHkgb2Yg
ZGVzdC4KKyAqIEBwYXJhbSBwRXJyb3JDb2RlIGEgcG9pbnRlciB0byB0aGUgVUVycm9yQ29kZSB3
aGljaCBtdXN0IG5vdCBpbmRpY2F0ZSBhCisgKiAgICAgICAgICAgICAgICAgIGZhaWx1cmUgYmVm
b3JlIHRoZSBmdW5jdGlvbiBjYWxsLgorICogQHJldHVybiB0aGUgbGVuZ3RoIG9mIGRlc3QuCisg
KiBAc3RhYmxlIElDVSAzLjgKKyAqLworVV9TVEFCTEUgaW50MzJfdCBVX0VYUE9SVDIKK3VkYXRw
Z19yZXBsYWNlRmllbGRUeXBlcyhVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yICpkdHBnLAorICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpwYXR0ZXJuLCBpbnQzMl90IHBhdHRl
cm5MZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNoYXIgKnNrZWxldG9u
LCBpbnQzMl90IHNrZWxldG9uTGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgIFVDaGFy
ICpkZXN0LCBpbnQzMl90IGRlc3RDYXBhY2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBV
RXJyb3JDb2RlICpwRXJyb3JDb2RlKTsKKworLyoqCisgKiBBZGp1c3RzIHRoZSBmaWVsZCB0eXBl
cyAod2lkdGggYW5kIHN1YnR5cGUpIG9mIGEgcGF0dGVybiB0byBtYXRjaCB3aGF0IGlzCisgKiBp
biBhIHNrZWxldG9uLiBUaGF0IGlzLCBpZiB5b3Ugc3VwcGx5IGEgcGF0dGVybiBsaWtlICJkLU0g
SDptIiwgYW5kIGEKKyAqIHNrZWxldG9uIG9mICJNTU1NZGRoaG1tIiwgdGhlbiB0aGUgaW5wdXQg
cGF0dGVybiBpcyBhZGp1c3RlZCB0byBiZQorICogImRkLU1NTU0gaGg6bW0iLiBUaGlzIGlzIHVz
ZWQgaW50ZXJuYWxseSB0byBnZXQgdGhlIGJlc3QgbWF0Y2ggZm9yIHRoZQorICogaW5wdXQgc2tl
bGV0b24sIGJ1dCBjYW4gYWxzbyBiZSB1c2VkIGV4dGVybmFsbHkuCisgKgorICogTm90ZSB0aGF0
IHRoaXMgZnVuY3Rpb24gdXNlcyBhIG5vbi1jb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9y
OgorICogSXQgdXNlcyBhIHN0YXRlZnVsIHBhdHRlcm4gcGFyc2VyIHdoaWNoIGlzIHNldCB1cCBm
b3IgZWFjaCBnZW5lcmF0b3Igb2JqZWN0LAorICogcmF0aGVyIHRoYW4gY3JlYXRpbmcgb25lIGZv
ciBlYWNoIGZ1bmN0aW9uIGNhbGwuCisgKiBDb25zZWN1dGl2ZSBjYWxscyB0byB0aGlzIGZ1bmN0
aW9uIGRvIG5vdCBhZmZlY3QgZWFjaCBvdGhlciwKKyAqIGJ1dCB0aGlzIGZ1bmN0aW9uIGNhbm5v
dCBiZSB1c2VkIGNvbmN1cnJlbnRseSBvbiBhIHNpbmdsZSBnZW5lcmF0b3Igb2JqZWN0LgorICoK
KyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgor
ICogQHBhcmFtIHBhdHRlcm4gSW5wdXQgcGF0dGVybgorICogQHBhcmFtIHBhdHRlcm5MZW5ndGgg
dGhlIGxlbmd0aCBvZiBpbnB1dCBwYXR0ZXJuLgorICogQHBhcmFtIHNrZWxldG9uCisgKiBAcGFy
YW0gc2tlbGV0b25MZW5ndGggdGhlIGxlbmd0aCBvZiBpbnB1dCBza2VsZXRvbi4KKyAqIEBwYXJh
bSBvcHRpb25zCisgKiAgICAgICAgICAgIE9wdGlvbnMgY29udHJvbGxpbmcgd2hldGhlciB0aGUg
bGVuZ3RoIG9mIHNwZWNpZmllZCBmaWVsZHMgaW4gdGhlCisgKiAgICAgICAgICAgIHBhdHRlcm4g
YXJlIGFkanVzdGVkIHRvIG1hdGNoIHRob3NlIGluIHRoZSBza2VsZXRvbiAod2hlbiB0aGlzCisg
KiAgICAgICAgICAgIHdvdWxkIG5vdCBoYXBwZW4gb3RoZXJ3aXNlKS4gRm9yIGRlZmF1bHQgYmVo
YXZpb3IsIHVzZQorICogICAgICAgICAgICBVREFUUEdfTUFUQ0hfTk9fT1BUSU9OUy4KKyAqIEBw
YXJhbSBkZXN0ICBwYXR0ZXJuIGFkanVzdGVkIHRvIG1hdGNoIHRoZSBza2VsZXRvbiBmaWVsZHMg
d2lkdGhzIGFuZCBzdWJ0eXBlcy4KKyAqIEBwYXJhbSBkZXN0Q2FwYWNpdHkgdGhlIGNhcGFjaXR5
IG9mIGRlc3QuCisgKiBAcGFyYW0gcEVycm9yQ29kZSBhIHBvaW50ZXIgdG8gdGhlIFVFcnJvckNv
ZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICogICAgICAgICAgICAgICAgICBmYWlsdXJl
IGJlZm9yZSB0aGUgZnVuY3Rpb24gY2FsbC4KKyAqIEByZXR1cm4gdGhlIGxlbmd0aCBvZiBkZXN0
LgorICogQHN0YWJsZSBJQ1UgNC40CisgKi8KK1VfU1RBQkxFIGludDMyX3QgVV9FWFBPUlQyCit1
ZGF0cGdfcmVwbGFjZUZpZWxkVHlwZXNXaXRoT3B0aW9ucyhVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVUNo
YXIgKnBhdHRlcm4sIGludDMyX3QgcGF0dGVybkxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyICpza2VsZXRvbiwgaW50MzJfdCBza2VsZXRvbkxl
bmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVEYXRlVGltZVBhdHRl
cm5NYXRjaE9wdGlvbnMgb3B0aW9ucywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFVDaGFyICpkZXN0LCBpbnQzMl90IGRlc3RDYXBhY2l0eSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFVFcnJvckNvZGUgKnBFcnJvckNvZGUpOworCisvKioKKyAqIFJl
dHVybiBhIFVFbnVtZXJhdGlvbiBsaXN0IG9mIGFsbCB0aGUgc2tlbGV0b25zIGluIGNhbm9uaWNh
bCBmb3JtLgorICogQ2FsbCB1ZGF0cGdfZ2V0UGF0dGVybkZvclNrZWxldG9uKCkgdG8gZ2V0IHRo
ZSBjb3JyZXNwb25kaW5nIHBhdHRlcm4uCisgKiAKKyAqIEBwYXJhbSBkdHBnIGEgcG9pbnRlciB0
byBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yLgorICogQHBhcmFtIHBFcnJvckNvZGUgYSBwb2lu
dGVyIHRvIHRoZSBVRXJyb3JDb2RlIHdoaWNoIG11c3Qgbm90IGluZGljYXRlIGEKKyAqICAgICAg
ICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwKKyAqIEByZXR1cm4g
YSBVRW51bWVyYXRpb24gbGlzdCBvZiBhbGwgdGhlIHNrZWxldG9ucworICogICAgICAgICBUaGUg
Y2FsbGVyIG11c3QgY2xvc2UgdGhlIG9iamVjdC4KKyAqIEBzdGFibGUgSUNVIDMuOAorICovCitV
X1NUQUJMRSBVRW51bWVyYXRpb24gKiBVX0VYUE9SVDIKK3VkYXRwZ19vcGVuU2tlbGV0b25zKGNv
bnN0IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IgKmR0cGcsIFVFcnJvckNvZGUgKnBFcnJvckNv
ZGUpOworCisvKioKKyAqIFJldHVybiBhIFVFbnVtZXJhdGlvbiBsaXN0IG9mIGFsbCB0aGUgYmFz
ZSBza2VsZXRvbnMgaW4gY2Fub25pY2FsIGZvcm0uCisgKgorICogQHBhcmFtIGR0cGcgYSBwb2lu
dGVyIHRvIFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gcEVycm9yQ29kZSBh
IHBvaW50ZXIgdG8gdGhlIFVFcnJvckNvZGUgd2hpY2ggbXVzdCBub3QgaW5kaWNhdGUgYQorICog
ICAgICAgICAgICAgZmFpbHVyZSBiZWZvcmUgdGhlIGZ1bmN0aW9uIGNhbGwuCisgKiBAcmV0dXJu
IGEgVUVudW1lcmF0aW9uIGxpc3Qgb2YgYWxsIHRoZSBiYXNlIHNrZWxldG9ucworICogICAgICAg
ICAgICAgVGhlIGNhbGxlciBtdXN0IGNsb3NlIHRoZSBvYmplY3QuCisgKiBAc3RhYmxlIElDVSAz
LjgKKyAqLworVV9TVEFCTEUgVUVudW1lcmF0aW9uICogVV9FWFBPUlQyCit1ZGF0cGdfb3BlbkJh
c2VTa2VsZXRvbnMoY29uc3QgVURhdGVUaW1lUGF0dGVybkdlbmVyYXRvciAqZHRwZywgVUVycm9y
Q29kZSAqcEVycm9yQ29kZSk7CisKKy8qKgorICogR2V0IHRoZSBwYXR0ZXJuIGNvcnJlc3BvbmRp
bmcgdG8gYSBnaXZlbiBza2VsZXRvbi4KKyAqIAorICogQHBhcmFtIGR0cGcgYSBwb2ludGVyIHRv
IFVEYXRlVGltZVBhdHRlcm5HZW5lcmF0b3IuCisgKiBAcGFyYW0gc2tlbGV0b24gCisgKiBAcGFy
YW0gc2tlbGV0b25MZW5ndGggcG9pbnRlciB0byB0aGUgbGVuZ3RoIG9mIHNrZWxldG9uLgorICog
QHBhcmFtIHBMZW5ndGggcG9pbnRlciB0byB0aGUgbGVuZ3RoIG9mIHJldHVybiBwYXR0ZXJuLgor
ICogQHJldHVybiBwYXR0ZXJuIGNvcnJlc3BvbmRpbmcgdG8gYSBnaXZlbiBza2VsZXRvbi4KKyAq
IEBzdGFibGUgSUNVIDMuOAorICovCitVX1NUQUJMRSBjb25zdCBVQ2hhciAqIFVfRVhQT1JUMgor
dWRhdHBnX2dldFBhdHRlcm5Gb3JTa2VsZXRvbihjb25zdCBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJh
dG9yICpkdHBnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBVQ2hhciAqc2tl
bGV0b24sIGludDMyX3Qgc2tlbGV0b25MZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludDMyX3QgKnBMZW5ndGgpOworCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9pY3UvdW5pY29kZS91bnVtc3lzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aWN1L3VuaWNvZGUvdW51bXN5cy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAyNjQ2M2U4MWE1ZGZmYjlmMzc5OTc3
OTViMDc1ZDc1MzhjNjY2MjEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaWN1L3VuaWNvZGUvdW51bXN5cy5oCkBAIC0wLDAgKzEsMTc0IEBACisvKgorKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioKKyogQ29weXJpZ2h0IChDKSAyMDEzLCBJbnRlcm5hdGlv
bmFsIEJ1c2luZXNzIE1hY2hpbmVzCisqIENvcnBvcmF0aW9uIGFuZCBvdGhlcnMuIEFsbCBSaWdo
dHMgUmVzZXJ2ZWQuCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorKi8KKworI2lm
bmRlZiBVTlVNU1lTX0gKKyNkZWZpbmUgVU5VTVNZU19ICisKKyNpbmNsdWRlICJ1bmljb2RlL3V0
eXBlcy5oIgorCisjaWYgIVVDT05GSUdfTk9fRk9STUFUVElORworCisjaW5jbHVkZSAidW5pY29k
ZS91ZW51bS5oIgorI2luY2x1ZGUgInVuaWNvZGUvbG9jYWxwb2ludGVyLmgiCisKKy8qKgorICog
XGZpbGUKKyAqIFxicmllZiBDIEFQSTogVU51bWJlcmluZ1N5c3RlbSwgaW5mb3JtYXRpb24gYWJv
dXQgbnVtYmVyaW5nIHN5c3RlbXMKKyAqCisgKiBEZWZpbmVzIG51bWJlcmluZyBzeXN0ZW1zLiBB
IG51bWJlcmluZyBzeXN0ZW0gZGVzY3JpYmVzIHRoZSBzY2hlbWUgYnkgd2hpY2ggCisgKiBudW1i
ZXJzIGFyZSB0byBiZSBwcmVzZW50ZWQgdG8gdGhlIGVuZCB1c2VyLiBJbiBpdHMgc2ltcGxlc3Qg
Zm9ybSwgYSBudW1iZXJpbmcKKyAqIHN5c3RlbSBkZXNjcmliZXMgdGhlIHNldCBvZiBkaWdpdCBj
aGFyYWN0ZXJzIHRoYXQgYXJlIHRvIGJlIHVzZWQgdG8gZGlzcGxheQorICogbnVtYmVycywgc3Vj
aCBhcyBXZXN0ZXJuIGRpZ2l0cywgVGhhaSBkaWdpdHMsIEFyYWJpYy1JbmRpYyBkaWdpdHMsIGV0
Yy4sIGluIGEKKyAqIHBvc2l0aW9uYWwgbnVtYmVyaW5nIHN5c3RlbSB3aXRoIGEgc3BlY2lmaWVk
IHJhZGl4ICh0eXBpY2FsbHkgMTApLgorICogTW9yZSBjb21wbGljYXRlZCBudW1iZXJpbmcgc3lz
dGVtcyBhcmUgYWxnb3JpdGhtaWMgaW4gbmF0dXJlLCBhbmQgcmVxdWlyZSB1c2UKKyAqIG9mIGFu
IFJCTkYgZm9ybWF0dGVyIChydWxlIGJhc2VkIG51bWJlciBmb3JtYXR0ZXIpLCBpbiBvcmRlciB0
byBjYWxjdWxhdGUKKyAqIHRoZSBjaGFyYWN0ZXJzIHRvIGJlIGRpc3BsYXllZCBmb3IgYSBnaXZl
biBudW1iZXIuIEV4YW1wbGVzIG9mIGFsZ29yaXRobWljCisgKiBudW1iZXJpbmcgc3lzdGVtcyBp
bmNsdWRlIFJvbWFuIG51bWVyYWxzLCBDaGluZXNlIG51bWVyYWxzLCBhbmQgSGVicmV3IG51bWVy
YWxzLgorICogRm9ybWF0dGluZyBydWxlcyBmb3IgbWFueSBjb21tb25seSB1c2VkIG51bWJlcmlu
ZyBzeXN0ZW1zIGFyZSBpbmNsdWRlZCBpbgorICogdGhlIElDVSBwYWNrYWdlLCBiYXNlZCBvbiB0
aGUgbnVtYmVyaW5nIHN5c3RlbSBydWxlcyBkZWZpbmVkIGluIENMRFIuCisgKiBBbHRlcm5hdGUg
bnVtYmVyaW5nIHN5c3RlbXMgY2FuIGJlIHNwZWNpZmllZCB0byBhIGxvY2FsZSBieSB1c2luZyB0
aGUKKyAqIG51bWJlcnMgbG9jYWxlIGtleXdvcmQuCisgKi8KKworI2lmbmRlZiBVX0hJREVfRFJB
RlRfQVBJCisKKy8qKgorICogT3BhcXVlIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0IGZvciB1c2Ug
aW4gQyBwcm9ncmFtcy4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworc3RydWN0IFVOdW1iZXJpbmdT
eXN0ZW07Cit0eXBlZGVmIHN0cnVjdCBVTnVtYmVyaW5nU3lzdGVtIFVOdW1iZXJpbmdTeXN0ZW07
ICAvKio8IEMgdHlwZWRlZiBmb3Igc3RydWN0IFVOdW1iZXJpbmdTeXN0ZW0uIEBkcmFmdCBJQ1Ug
NTIgKi8KKworLyoqCisgKiBPcGVucyBhIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0IHVzaW5nIHRo
ZSBkZWZhdWx0IG51bWJlcmluZyBzeXN0ZW0gZm9yIHRoZSBzcGVjaWZpZWQKKyAqIGxvY2FsZS4K
KyAqIEBwYXJhbSBsb2NhbGUgICAgVGhlIGxvY2FsZSBmb3Igd2hpY2ggdGhlIGRlZmF1bHQgbnVt
YmVyaW5nIHN5c3RlbSBzaG91bGQgYmUgb3BlbmVkLgorICogQHBhcmFtIHN0YXR1cyAgICBBIHBv
aW50ZXIgdG8gYSBVRXJyb3JDb2RlIHRvIHJlY2VpdmUgYW55IGVycm9ycy4gRm9yIGV4YW1wbGUs
IHRoaXMKKyAqICAgICAgICAgICAgICAgICAgbWF5IGJlIFVfVU5TVVBQT1JURURfRVJST1IgZm9y
IGEgbG9jYWxlIHN1Y2ggYXMgImVuQG51bWJlcnM9eHl6IiB0aGF0CisgKiAgICAgICAgICAgICAg
ICAgIHNwZWNpZmllcyBhIG51bWJlcmluZyBzeXN0ZW0gdW5rbm93biB0byBJQ1UuCisgKiBAcmV0
dXJuICAgICAgICAgIEEgVU51bWJlcmluZ1N5c3RlbSBmb3IgdGhlIHNwZWNpZmllZCBsb2NhbGUs
IG9yIE5VTEwgaWYgYW4gZXJyb3IKKyAqICAgICAgICAgICAgICAgICAgb2NjdXJyZWQuCisgKiBA
ZHJhZnQgSUNVIDUyCisgKi8KK1VfRFJBRlQgVU51bWJlcmluZ1N5c3RlbSAqIFVfRVhQT1JUMgor
dW51bXN5c19vcGVuKGNvbnN0IGNoYXIgKmxvY2FsZSwgVUVycm9yQ29kZSAqc3RhdHVzKTsKKwor
LyoqCisgKiBPcGVucyBhIFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0IHVzaW5nIHRoZSBuYW1lIG9m
IG9uZSBvZiB0aGUgcHJlZGVmaW5lZCBudW1iZXJpbmcKKyAqIHN5c3RlbXMgc3BlY2lmaWVkIGJ5
IENMRFIgYW5kIGtub3duIHRvIElDVSwgc3VjaCBhcyAibGF0biIsICJhcmFiZXh0Iiwgb3IgImhh
bmlkZWMiOworICogdGhlIGZ1bGwgbGlzdCBpcyByZXR1cm5lZCBieSB1bnVtc3lzX29wZW5BdmFp
bGFibGVOYW1lcy4gTm90ZSB0aGF0IHNvbWUgb2YgdGhlIG5hbWVzCisgKiBsaXN0ZWQgYXQgaHR0
cDovL3VuaWNvZGUub3JnL3JlcG9zL2NsZHIvdGFncy9sYXRlc3QvY29tbW9uL2JjcDQ3L251bWJl
ci54bWwgLSBlLmcuCisgKiBkZWZhdWx0LCBuYXRpdmUsIHRyYWRpdGlvbmFsLCBmaW5hbmNlIC0g
ZG8gbm90IGlkZW50aWZ5IHNwZWNpZmljIG51bWJlcmluZyBzeXN0ZW1zLAorICogYnV0IHJhdGhl
ciBrZXkgdmFsdWVzIHRoYXQgbWF5IG9ubHkgYmUgdXNlZCBhcyBwYXJ0IG9mIGEgbG9jYWxlLCB3
aGljaCBpbiB0dXJuCisgKiBkZWZpbmVzIGhvdyB0aGV5IGFyZSBtYXBwZWQgdG8gYSBzcGVjaWZp
YyBudW1iZXJpbmcgc3lzdGVtIHN1Y2ggYXMgImxhdG4iIG9yICJoYW50Ii4KKyAqCisgKiBAcGFy
YW0gbmFtZSAgICAgIFRoZSBuYW1lIG9mIHRoZSBudW1iZXJpbmcgc3lzdGVtIGZvciB3aGljaCBh
IFVOdW1iZXJpbmdTeXN0ZW0gb2JqZWN0CisgKiAgICAgICAgICAgICAgICAgIHNob3VsZCBiZSBv
cGVuZWQuCisgKiBAcGFyYW0gc3RhdHVzICAgIEEgcG9pbnRlciB0byBhIFVFcnJvckNvZGUgdG8g
cmVjZWl2ZSBhbnkgZXJyb3JzLiBGb3IgZXhhbXBsZSwgdGhpcworICogICAgICAgICAgICAgICAg
ICBtYXkgYmUgVV9VTlNVUFBPUlRFRF9FUlJPUiBmb3IgYSBudW1iZXJpbmcgc3lzdGVtIHN1Y2gg
YXMgInh5eiIgdGhhdAorICogICAgICAgICAgICAgICAgICBpcyB1bmtub3duIHRvIElDVS4KKyAq
IEByZXR1cm4gICAgICAgICAgQSBVTnVtYmVyaW5nU3lzdGVtIGZvciB0aGUgc3BlY2lmaWVkIG5h
bWUsIG9yIE5VTEwgaWYgYW4gZXJyb3IKKyAqICAgICAgICAgICAgICAgICAgb2NjdXJyZWQuCisg
KiBAZHJhZnQgSUNVIDUyCisgKi8KK1VfRFJBRlQgVU51bWJlcmluZ1N5c3RlbSAqIFVfRVhQT1JU
MgordW51bXN5c19vcGVuQnlOYW1lKGNvbnN0IGNoYXIgKm5hbWUsIFVFcnJvckNvZGUgKnN0YXR1
cyk7CisKKy8qKgorICogQ2xvc2UgYSBVTnVtYmVyaW5nU3lzdGVtIG9iamVjdC4gT25jZSBjbG9z
ZWQgaXQgbWF5IG5vIGxvbmdlciBiZSB1c2VkLgorICogQHBhcmFtIHVudW1zeXMgICBUaGUgVU51
bWJlcmluZ1N5c3RlbSBvYmplY3QgdG8gY2xvc2UuCisgKiBAZHJhZnQgSUNVIDUyCisgKi8KK1Vf
RFJBRlQgdm9pZCBVX0VYUE9SVDIKK3VudW1zeXNfY2xvc2UoVU51bWJlcmluZ1N5c3RlbSAqdW51
bXN5cyk7CisKKyNpZiBVX1NIT1dfQ1BMVVNQTFVTX0FQSQorVV9OQU1FU1BBQ0VfQkVHSU4KKwor
LyoqCisgKiBcY2xhc3MgTG9jYWxVTnVtYmVyaW5nU3lzdGVtUG9pbnRlcgorICogIlNtYXJ0IHBv
aW50ZXIiIGNsYXNzLCBjbG9zZXMgYSBVTnVtYmVyaW5nU3lzdGVtIHZpYSB1bnVtc3lzX2Nsb3Nl
KCkuCisgKiBGb3IgbW9zdCBtZXRob2RzIHNlZSB0aGUgTG9jYWxQb2ludGVyQmFzZSBiYXNlIGNs
YXNzLgorICogQHNlZSBMb2NhbFBvaW50ZXJCYXNlCisgKiBAc2VlIExvY2FsUG9pbnRlcgorICog
QGRyYWZ0IElDVSA1MgorICovCitVX0RFRklORV9MT0NBTF9PUEVOX1BPSU5URVIoTG9jYWxVTnVt
YmVyaW5nU3lzdGVtUG9pbnRlciwgVU51bWJlcmluZ1N5c3RlbSwgdW51bXN5c19jbG9zZSk7CisK
K1VfTkFNRVNQQUNFX0VORAorI2VuZGlmCisKKy8qKgorICogUmV0dXJucyBhbiBlbnVtZXJhdGlv
biBvdmVyIHRoZSBuYW1lcyBvZiBhbGwgb2YgdGhlIHByZWRlZmluZWQgbnVtYmVyaW5nIHN5c3Rl
bXMga25vd24KKyAqIHRvIElDVS4KKyAqIEBwYXJhbSBzdGF0dXMgICAgQSBwb2ludGVyIHRvIGEg
VUVycm9yQ29kZSB0byByZWNlaXZlIGFueSBlcnJvcnMuCisgKiBAcmV0dXJuICAgICAgICAgIEEg
cG9pbnRlciB0byBhIFVFbnVtZXJhdGlvbiB0aGF0IG11c3QgYmUgY2xvc2VkIHdpdGggdWVudW1f
Y2xvc2UoKSwKKyAqICAgICAgICAgICAgICAgICAgb3IgTlVMTCBpZiBhbiBlcnJvciBvY2N1cnJl
ZC4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVRW51bWVyYXRpb24gKiBVX0VYUE9S
VDIKK3VudW1zeXNfb3BlbkF2YWlsYWJsZU5hbWVzKFVFcnJvckNvZGUgKnN0YXR1cyk7CisKKy8q
KgorICogUmV0dXJucyB0aGUgbmFtZSBvZiB0aGUgc3BlY2lmaWVkIFVOdW1iZXJpbmdTeXN0ZW0g
b2JqZWN0IChpZiBpdCBpcyBvbmUgb2YgdGhlCisgKiBwcmVkZWZpbmVkIG5hbWVzIGtub3duIHRv
IElDVSkuCisgKiBAcGFyYW0gdW51bXN5cyAgIFRoZSBVTnVtYmVyaW5nU3lzdGVtIHdob3NlIG5h
bWUgaXMgZGVzaXJlZC4KKyAqIEByZXR1cm4gICAgICAgICAgQSBwb2ludGVyIHRvIHRoZSBuYW1l
IG9mIHRoZSBzcGVjaWZpZWQgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QsIG9yCisgKiAgICAgICAg
ICAgICAgICAgIE5VTEwgaWYgdGhlIG5hbWUgaXMgbm90IG9uZSBvZiB0aGUgSUNVIHByZWRlZmlu
ZWQgbmFtZXMuIFRoZSBwb2ludGVyCisgKiAgICAgICAgICAgICAgICAgIGlzIG9ubHkgdmFsaWQg
Zm9yIHRoZSBsaWZldGltZSBvZiB0aGUgVU51bWJlcmluZ1N5c3RlbSBvYmplY3QuCisgKiBAZHJh
ZnQgSUNVIDUyCisgKi8KK1VfRFJBRlQgY29uc3QgY2hhciAqIFVfRVhQT1JUMgordW51bXN5c19n
ZXROYW1lKGNvbnN0IFVOdW1iZXJpbmdTeXN0ZW0gKnVudW1zeXMpOworCisvKioKKyAqIFJldHVy
bnMgd2hldGhlciB0aGUgZ2l2ZW4gVU51bWJlcmluZ1N5c3RlbSBvYmplY3QgaXMgZm9yIGFuIGFs
Z29yaXRobWljIChub3QgcHVyZWx5CisgKiBwb3NpdGlvbmFsKSBzeXN0ZW0uCisgKiBAcGFyYW0g
dW51bXN5cyAgIFRoZSBVTnVtYmVyaW5nU3lzdGVtIHdob3NlIGFsZ29yaXRobWljIHN0YXR1cyBp
cyBkZXNpcmVkLgorICogQHJldHVybiAgICAgICAgICBUUlVFIGlmIHRoZSBzcGVjaWZpZWQgVU51
bWJlcmluZ1N5c3RlbSBvYmplY3QgaXMgZm9yIGFuIGFsZ29yaXRobWljCisgKiAgICAgICAgICAg
ICAgICAgIHN5c3RlbS4KKyAqIEBkcmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBVQm9vbCBVX0VY
UE9SVDIKK3VudW1zeXNfaXNBbGdvcml0aG1pYyhjb25zdCBVTnVtYmVyaW5nU3lzdGVtICp1bnVt
c3lzKTsKKworLyoqCisgKiBSZXR1cm5zIHRoZSByYWRpeCBvZiB0aGUgc3BlY2lmaWVkIFVOdW1i
ZXJpbmdTeXN0ZW0gb2JqZWN0LiBTaW1wbGUgcG9zaXRpb25hbAorICogbnVtYmVyaW5nIHN5c3Rl
bXMgdHlwaWNhbGx5IGhhdmUgcmFkaXggMTAsIGJ1dCBtaWdodCBoYXZlIGEgcmFkaXggb2YgZS5n
LiAxNiBmb3IKKyAqIGhleGFkZWNpbWFsLiBUaGUgcmFkaXggaXMgbGVzcyB3ZWxsLWRlZmluZWQg
Zm9yIG5vbi1wb3NpdGlvbmFsIGFsZ29yaXRobWljIHN5c3RlbXMuCisgKiBAcGFyYW0gdW51bXN5
cyAgIFRoZSBVTnVtYmVyaW5nU3lzdGVtIHdob3NlIHJhZGl4IGlzIGRlc2lyZWQuCisgKiBAcmV0
dXJuICAgICAgICAgIFRoZSByYWRpeCBvZiB0aGUgc3BlY2lmaWVkIFVOdW1iZXJpbmdTeXN0ZW0g
b2JqZWN0LgorICogQGRyYWZ0IElDVSA1MgorICovCitVX0RSQUZUIGludDMyX3QgVV9FWFBPUlQy
Cit1bnVtc3lzX2dldFJhZGl4KGNvbnN0IFVOdW1iZXJpbmdTeXN0ZW0gKnVudW1zeXMpOworCisv
KioKKyAqIEdldCB0aGUgZGVzY3JpcHRpb24gc3RyaW5nIG9mIHRoZSBzcGVjaWZpZWQgVU51bWJl
cmluZ1N5c3RlbSBvYmplY3QuIEZvciBzaW1wbGUKKyAqIHBvc2l0aW9uYWwgc3lzdGVtcyB0aGlz
IGlzIHRoZSBvcmRlcmVkIHN0cmluZyBvZiBkaWdpdHMgKHdpdGggbGVuZ3RoIG1hdGNoaW5nCisg
KiB0aGUgcmFkaXgpLCBlLmcuICJcdTMwMDdcdTRFMDBcdTRFOENcdTRFMDlcdTU2REJcdTRFOTRc
dTUxNkRcdTRFMDNcdTUxNkJcdTRFNUQiCisgKiBmb3IgImhhbmlkZWMiOyBpdCB3b3VsZCBiZSAi
MDEyMzQ1Njc4OUFCQ0RFRiIgZm9yIGhleGFkZWNpbWFsLiBGb3IKKyAqIGFsZ29yaXRobWljIHN5
c3RlbXMgdGhpcyBpcyB0aGUgbmFtZSBvZiB0aGUgUkJORiBydWxlc2V0IHVzZWQgZm9yIGZvcm1h
dHRpbmcsCisgKiBlLmcuICJ6aC9TcGVsbG91dFJ1bGVzLyVzcGVsbG91dC1jYXJkaW5hbCIgZm9y
ICJoYW5zIiBvciAiJWdyZWVrLXVwcGVyIiBmb3IKKyAqICJncmVrIi4KKyAqIEBwYXJhbSB1bnVt
c3lzICAgVGhlIFVOdW1iZXJpbmdTeXN0ZW0gd2hvc2UgZGVzY3JpcHRpb24gc3RyaW5nIGlzIGRl
c2lyZWQuCisgKiBAcGFyYW0gcmVzdWx0ICAgIEEgcG9pbnRlciB0byBhIGJ1ZmZlciB0byByZWNl
aXZlIHRoZSBkZXNjcmlwdGlvbiBzdHJpbmcuCisgKiBAcGFyYW0gcmVzdWx0TGVuZ3RoICBUaGUg
bWF4aW11bSBzaXplIG9mIHJlc3VsdC4KKyAqIEBwYXJhbSBzdGF0dXMgICAgQSBwb2ludGVyIHRv
IGEgVUVycm9yQ29kZSB0byByZWNlaXZlIGFueSBlcnJvcnMuCisgKiBAcmV0dXJuICAgICAgICAg
IFRoZSB0b3RhbCBidWZmZXIgc2l6ZSBuZWVkZWQ7IGlmIGdyZWF0ZXIgdGhhbiByZXN1bHRMZW5n
dGgsIHRoZQorICogICAgICAgICAgICAgICAgICBvdXRwdXQgd2FzIHRydW5jYXRlZC4KKyAqIEBk
cmFmdCBJQ1UgNTIKKyAqLworVV9EUkFGVCBpbnQzMl90IFVfRVhQT1JUMgordW51bXN5c19nZXRE
ZXNjcmlwdGlvbihjb25zdCBVTnVtYmVyaW5nU3lzdGVtICp1bnVtc3lzLCBVQ2hhciAqcmVzdWx0
LAorICAgICAgICAgICAgICAgICAgICAgICBpbnQzMl90IHJlc3VsdExlbmd0aCwgVUVycm9yQ29k
ZSAqc3RhdHVzKTsKKworI2VuZGlmICAvKiBVX0hJREVfRFJBRlRfQVBJICovCisKKyNlbmRpZiAv
KiAjaWYgIVVDT05GSUdfTk9fRk9STUFUVElORyAqLworCisjZW5kaWYKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCmluZGV4IDNiZTg5Yjgz
NTdjNmE4NzE3MDQwNTJhOGMxMjNlZWZlNjcxODVkY2UuLmI1MTAyOGY0MDE0YzU4M2U5Y2MxYmE4
YTM4OGYwYjFmZWQ5MzI1YWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQ29tbW9uSWRlbnRpZmllcnMuaApAQCAtODYsNiArODYsNyBAQAogICAgIG1hY3JvKGJ5dGVj
b2RlSW5kZXgpIFwKICAgICBtYWNybyhieXRlY29kZXMpIFwKICAgICBtYWNybyhieXRlY29kZXNJ
RCkgXAorICAgIG1hY3JvKGNhbGVuZGFyKSBcCiAgICAgbWFjcm8oY2FsbGVlKSBcCiAgICAgbWFj
cm8oY2FsbGVyKSBcCiAgICAgbWFjcm8oY2FzZUZpcnN0KSBcCkBAIC0xMDEsNiArMTAyLDcgQEAK
ICAgICBtYWNybyhjb25zdHJ1Y3RvcikgXAogICAgIG1hY3JvKGNvdW50KSBcCiAgICAgbWFjcm8o
Y291bnRlcnMpIFwKKyAgICBtYWNybyhkYXkpIFwKICAgICBtYWNybyhkZWZpbmVQcm9wZXJ0eSkg
XAogICAgIG1hY3JvKGRlc2NyaXB0aW9uKSBcCiAgICAgbWFjcm8oZGVzY3JpcHRpb25zKSBcCkBA
IC0xMDksNiArMTExLDcgQEAKICAgICBtYWNybyhkb25lKSBcCiAgICAgbWFjcm8oZW50cmllcykg
XAogICAgIG1hY3JvKGVudW1lcmFibGUpIFwKKyAgICBtYWNybyhlcmEpIFwKICAgICBtYWNybyhl
dmFsKSBcCiAgICAgbWFjcm8oZXhlYykgXAogICAgIG1hY3JvKGV4ZWN1dGlvbkNvdW50KSBcCkBA
IC0xMTYsNiArMTE5LDcgQEAKICAgICBtYWNybyhmbGFncykgXAogICAgIG1hY3JvKGZvY3VzKSBc
CiAgICAgbWFjcm8oZm9yRWFjaCkgXAorICAgIG1hY3JvKGZvcm1hdE1hdGNoZXIpIFwKICAgICBt
YWNybyhmb3J3YXJkKSBcCiAgICAgbWFjcm8oZnJvbSkgXAogICAgIG1hY3JvKGZyb21DaGFyQ29k
ZSkgXApAQCAtMTI2LDYgKzEzMCw4IEBACiAgICAgbWFjcm8oaGFzT3duUHJvcGVydHkpIFwKICAg
ICBtYWNybyhoYXNoKSBcCiAgICAgbWFjcm8oaGVhZGVyKSBcCisgICAgbWFjcm8oaG91cikgXAor
ICAgIG1hY3JvKGhvdXIxMikgXAogICAgIG1hY3JvKGhyZWYpIFwKICAgICBtYWNybyhpZCkgXAog
ICAgIG1hY3JvKGlnbm9yZUNhc2UpIFwKQEAgLTE0OSwxMCArMTU1LDEzIEBACiAgICAgbWFjcm8o
bG9jYWxlKSBcCiAgICAgbWFjcm8obG9jYWxlTWF0Y2hlcikgXAogICAgIG1hY3JvKG1lc3NhZ2Up
IFwKKyAgICBtYWNybyhtaW51dGUpIFwKKyAgICBtYWNybyhtb250aCkgXAogICAgIG1hY3JvKG11
bHRpbGluZSkgXAogICAgIG1hY3JvKG5hbWUpIFwKICAgICBtYWNybyhuZXh0KSBcCiAgICAgbWFj
cm8obm93KSBcCisgICAgbWFjcm8obnVtYmVyaW5nU3lzdGVtKSBcCiAgICAgbWFjcm8obnVtSW5s
aW5lZENhbGxzKSBcCiAgICAgbWFjcm8obnVtSW5saW5lZEdldEJ5SWRzKSBcCiAgICAgbWFjcm8o
bnVtSW5saW5lZFB1dEJ5SWRzKSBcCkBAIC0xNzIsNiArMTgxLDcgQEAKICAgICBtYWNybyhyZWxv
YWQpIFwKICAgICBtYWNybyhyZXBsYWNlKSBcCiAgICAgbWFjcm8ocmVzb2x2ZSkgXAorICAgIG1h
Y3JvKHNlY29uZCkgXAogICAgIG1hY3JvKHNlbnNpdGl2aXR5KSBcCiAgICAgbWFjcm8oc2V0KSBc
CiAgICAgbWFjcm8oc2hvd01vZGFsRGlhbG9nKSBcCkBAIC0xODUsNiArMTk1LDggQEAKICAgICBt
YWNybyh0YXJnZXQpIFwKICAgICBtYWNybyh0ZXN0KSBcCiAgICAgbWFjcm8odGhlbikgXAorICAg
IG1hY3JvKHRpbWVab25lKSBcCisgICAgbWFjcm8odGltZVpvbmVOYW1lKSBcCiAgICAgbWFjcm8o
dG9FeHBvbmVudGlhbCkgXAogICAgIG1hY3JvKHRvRml4ZWQpIFwKICAgICBtYWNybyh0b0lTT1N0
cmluZykgXApAQCAtMTk4LDggKzIxMCwxMCBAQAogICAgIG1hY3JvKHZhbHVlcykgXAogICAgIG1h
Y3JvKHdlYmtpdCkgXAogICAgIG1hY3JvKHdlYmtpdEluZGV4ZWREQikgXAorICAgIG1hY3JvKHdl
ZWtkYXkpIFwKICAgICBtYWNybyh3aW5kb3cpIFwKLSAgICBtYWNybyh3cml0YWJsZSkKKyAgICBt
YWNybyh3cml0YWJsZSkgXAorICAgIG1hY3JvKHllYXIpCiAKICNkZWZpbmUgSlNDX0NPTU1PTl9J
REVOVElGSUVSU19FQUNIX0tFWVdPUkQobWFjcm8pIFwKICAgICBtYWNybyhicmVhaykgXApkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5j
cHAKaW5kZXggZGM1YjJhY2UzMjViMDhiNmYyZjM3YjIzMTA3NjkyMGU4OGZjZjAyOC4uMTE2N2Vi
M2Y5MzliM2U0ZGRiZDFjZTZiNWVmMWQ1MTU5MGJlMTJhZSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3BwCkBAIC0yOCw3ICsy
OCw2IEBACiAKICNpZiBFTkFCTEUoSU5UTCkKIAotI2luY2x1ZGUgIkRhdGVDb25zdHJ1Y3Rvci5o
IgogI2luY2x1ZGUgIkRhdGVJbnN0YW5jZS5oIgogI2luY2x1ZGUgIkVycm9yLmgiCiAjaW5jbHVk
ZSAiSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuaCIKQEAgLTM2LDEzICszNSwyNSBAQAog
I2luY2x1ZGUgIkpTQm91bmRGdW5jdGlvbi5oIgogI2luY2x1ZGUgIkpTQ0pTVmFsdWVJbmxpbmVz
LmgiCiAjaW5jbHVkZSAiSlNDZWxsSW5saW5lcy5oIgorI2luY2x1ZGUgIk9iamVjdENvbnN0cnVj
dG9yLmgiCiAjaW5jbHVkZSAiU2xvdFZpc2l0b3JJbmxpbmVzLmgiCiAjaW5jbHVkZSAiU3RydWN0
dXJlSW5saW5lcy5oIgorI2luY2x1ZGUgPHVuaWNvZGUvdWNhbC5oPgorI2luY2x1ZGUgPHVuaWNv
ZGUvdWRhdC5oPgorI2luY2x1ZGUgPHVuaWNvZGUvdWRhdHBnLmg+CisjaW5jbHVkZSA8dW5pY29k
ZS91ZW51bS5oPgogCiBuYW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQ2xhc3NJbmZvIEludGxEYXRl
VGltZUZvcm1hdDo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRF
X01FVEhPRF9UQUJMRShJbnRsRGF0ZVRpbWVGb3JtYXQpIH07CiAKK3N0YXRpYyBjb25zdCBjaGFy
KiBjb25zdCByZWxldmFudEV4dGVuc2lvbktleXNbMl0gPSB7ICJjYSIsICJudSIgfTsKK3N0YXRp
YyBjb25zdCBzaXplX3QgaW5kZXhPZkV4dGVuc2lvbktleUNhID0gMDsKK3N0YXRpYyBjb25zdCBz
aXplX3QgaW5kZXhPZkV4dGVuc2lvbktleU51ID0gMTsKKworZW51bSBjbGFzcyBEYXRlVGltZU9w
dGlvblJlcXVpcmVkIHsgRGF0ZSwgVGltZSwgQW55IH07CitlbnVtIGNsYXNzIERhdGVUaW1lT3B0
aW9uRGVmYXVsdHMgeyBEYXRlLCBUaW1lLCBBbGwgfTsKKwogSW50bERhdGVUaW1lRm9ybWF0KiBJ
bnRsRGF0ZVRpbWVGb3JtYXQ6OmNyZWF0ZShWTSYgdm0sIEludGxEYXRlVGltZUZvcm1hdENvbnN0
cnVjdG9yKiBjb25zdHJ1Y3RvcikKIHsKICAgICBJbnRsRGF0ZVRpbWVGb3JtYXQqIGZvcm1hdCA9
IG5ldyAoTm90TnVsbCwgYWxsb2NhdGVDZWxsPEludGxEYXRlVGltZUZvcm1hdD4odm0uaGVhcCkp
IEludGxEYXRlVGltZUZvcm1hdCh2bSwgY29uc3RydWN0b3ItPmRhdGVUaW1lRm9ybWF0U3RydWN0
dXJlKCkpOwpAQCAtODYsNDYgKzk3LDgxNiBAQCB2b2lkIEludGxEYXRlVGltZUZvcm1hdDo6c2V0
Qm91bmRGb3JtYXQoVk0mIHZtLCBKU0JvdW5kRnVuY3Rpb24qIGZvcm1hdCkKICAgICBtX2JvdW5k
Rm9ybWF0LnNldCh2bSwgdGhpcywgZm9ybWF0KTsKIH0KIAotRW5jb2RlZEpTVmFsdWUgSlNDX0hP
U1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUoRXhlY1N0YXRlKiBz
dGF0ZSkKK3N0YXRpYyBTdHJpbmcgZGVmYXVsdFRpbWVab25lKCkKK3sKKyAgICAvLyA2LjQuMyBE
ZWZhdWx0VGltZVpvbmUgKCkgKEVDTUEtNDAyIDIuMCkKKyAgICAvLyBUaGUgRGVmYXVsdFRpbWVa
b25lIGFic3RyYWN0IG9wZXJhdGlvbiByZXR1cm5zIGEgU3RyaW5nIHZhbHVlIHJlcHJlc2VudGlu
ZyB0aGUgdmFsaWQgKDYuNC4xKSBhbmQgY2Fub25pY2FsaXplZCAoNi40LjIpIHRpbWUgem9uZSBu
YW1lIGZvciB0aGUgaG9zdCBlbnZpcm9ubWVudOKAmXMgY3VycmVudCB0aW1lIHpvbmUuCisKKyAg
ICBVRXJyb3JDb2RlIHN0YXR1cyA9IFVfWkVST19FUlJPUjsKKyAgICBWZWN0b3I8VUNoYXIsIDMy
PiBidWZmZXIoMzIpOworICAgIGF1dG8gYnVmZmVyTGVuZ3RoID0gdWNhbF9nZXREZWZhdWx0VGlt
ZVpvbmUoYnVmZmVyLmRhdGEoKSwgYnVmZmVyLmNhcGFjaXR5KCksICZzdGF0dXMpOworICAgIGlm
IChzdGF0dXMgPT0gVV9CVUZGRVJfT1ZFUkZMT1dfRVJST1IpIHsKKyAgICAgICAgc3RhdHVzID0g
VV9aRVJPX0VSUk9SOworICAgICAgICBidWZmZXIgPSBWZWN0b3I8VUNoYXIsIDMyPihidWZmZXJM
ZW5ndGgpOworICAgICAgICB1Y2FsX2dldERlZmF1bHRUaW1lWm9uZShidWZmZXIuZGF0YSgpLCBi
dWZmZXJMZW5ndGgsICZzdGF0dXMpOworICAgIH0KKyAgICBpZiAoVV9TVUNDRVNTKHN0YXR1cykp
IHsKKyAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICBVQm9vbCBpc1N5c3Rl
bUlEID0gZmFsc2U7CisgICAgICAgIFZlY3RvcjxVQ2hhciwgMzI+IGNhbm9uaWNhbEJ1ZmZlcigz
Mik7CisgICAgICAgIGF1dG8gY2Fub25pY2FsTGVuZ3RoID0gdWNhbF9nZXRDYW5vbmljYWxUaW1l
Wm9uZUlEKGJ1ZmZlci5kYXRhKCksIGJ1ZmZlckxlbmd0aCwgY2Fub25pY2FsQnVmZmVyLmRhdGEo
KSwgY2Fub25pY2FsQnVmZmVyLmNhcGFjaXR5KCksICZpc1N5c3RlbUlELCAmc3RhdHVzKTsKKyAg
ICAgICAgaWYgKHN0YXR1cyA9PSBVX0JVRkZFUl9PVkVSRkxPV19FUlJPUikgeworICAgICAgICAg
ICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICAgICAgY2Fub25pY2FsQnVmZmVyID0g
VmVjdG9yPFVDaGFyLCAzMj4oY2Fub25pY2FsTGVuZ3RoKTsKKyAgICAgICAgICAgIHVjYWxfZ2V0
Q2Fub25pY2FsVGltZVpvbmVJRChidWZmZXIuZGF0YSgpLCBidWZmZXJMZW5ndGgsIGNhbm9uaWNh
bEJ1ZmZlci5kYXRhKCksIGNhbm9uaWNhbExlbmd0aCwgJmlzU3lzdGVtSUQsICZzdGF0dXMpOwor
ICAgICAgICB9CisgICAgICAgIGlmIChVX1NVQ0NFU1Moc3RhdHVzKSkKKyAgICAgICAgICAgIHJl
dHVybiBTdHJpbmcoY2Fub25pY2FsQnVmZmVyLmRhdGEoKSwgY2Fub25pY2FsTGVuZ3RoKTsKKyAg
ICB9CisKKyAgICByZXR1cm4gQVNDSUlMaXRlcmFsKCJVVEMiKTsKK30KKworc3RhdGljIFN0cmlu
ZyBjYW5vbmljYWxpemVUaW1lWm9uZU5hbWUoY29uc3QgU3RyaW5nJiB0aW1lWm9uZU5hbWUpCit7
CisgICAgLy8gNi40LjEgSXNWYWxpZFRpbWVab25lTmFtZSAodGltZVpvbmUpCisgICAgLy8gVGhl
IGFic3RyYWN0IG9wZXJhdGlvbiByZXR1cm5zIHRydWUgaWYgdGltZVpvbmUsIGNvbnZlcnRlZCB0
byB1cHBlciBjYXNlIGFzIGRlc2NyaWJlZCBpbiA2LjEsIGlzIGVxdWFsIHRvIG9uZSBvZiB0aGUg
Wm9uZSBvciBMaW5rIG5hbWVzIG9mIHRoZSBJQU5BIFRpbWUgWm9uZSBEYXRhYmFzZSwgY29udmVy
dGVkIHRvIHVwcGVyIGNhc2UgYXMgZGVzY3JpYmVkIGluIDYuMS4gSXQgcmV0dXJucyBmYWxzZSBv
dGhlcndpc2UuCisgICAgVUVycm9yQ29kZSBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgVUVu
dW1lcmF0aW9uKiB0aW1lWm9uZXMgPSB1Y2FsX29wZW5UaW1lWm9uZXMoJnN0YXR1cyk7CisgICAg
QVNTRVJUKFVfU1VDQ0VTUyhzdGF0dXMpKTsKKworICAgIFN0cmluZyBjYW5vbmljYWw7CisgICAg
ZG8geworICAgICAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgIGludDMyX3QgaWFu
YVRpbWVab25lTGVuZ3RoOworICAgICAgICAvLyBUaW1lIHpvbmUgbmFtZXMgYXJlIHJlc3ByZXNl
bnRlZCBhcyBVQ2hhcltdIGluIGFsbCByZWxhdGVkIElDVSBhcGlzLgorICAgICAgICBjb25zdCBV
Q2hhciogaWFuYVRpbWVab25lID0gdWVudW1fdW5leHQodGltZVpvbmVzLCAmaWFuYVRpbWVab25l
TGVuZ3RoLCAmc3RhdHVzKTsKKyAgICAgICAgQVNTRVJUKFVfU1VDQ0VTUyhzdGF0dXMpKTsKKwor
ICAgICAgICAvLyBFbmQgb2YgZW51bWVyYXRpb24uCisgICAgICAgIGlmICghaWFuYVRpbWVab25l
KQorICAgICAgICAgICAgYnJlYWs7CisKKyAgICAgICAgU3RyaW5nVmlldyBpYW5hVGltZVpvbmVW
aWV3KGlhbmFUaW1lWm9uZSwgaWFuYVRpbWVab25lTGVuZ3RoKTsKKyAgICAgICAgaWYgKCFlcXVh
bElnbm9yaW5nQVNDSUlDYXNlKHRpbWVab25lTmFtZSwgaWFuYVRpbWVab25lVmlldykpCisgICAg
ICAgICAgICBjb250aW51ZTsKKworICAgICAgICAvLyBGb3VuZCBhIG1hdGNoLCBub3cgY2Fub25p
Y2FsaXplLgorICAgICAgICAvLyA2LjQuMiBDYW5vbmljYWxpemVUaW1lWm9uZU5hbWUgKHRpbWVa
b25lKSAoRUNNQS00MDIgMi4wKQorICAgICAgICAvLyAxLiBMZXQgaWFuYVRpbWVab25lIGJlIHRo
ZSBab25lIG9yIExpbmsgbmFtZSBvZiB0aGUgSUFOQSBUaW1lIFpvbmUgRGF0YWJhc2Ugc3VjaCB0
aGF0IHRpbWVab25lLCBjb252ZXJ0ZWQgdG8gdXBwZXIgY2FzZSBhcyBkZXNjcmliZWQgaW4gNi4x
LCBpcyBlcXVhbCB0byBpYW5hVGltZVpvbmUsIGNvbnZlcnRlZCB0byB1cHBlciBjYXNlIGFzIGRl
c2NyaWJlZCBpbiA2LjEuCisgICAgICAgIC8vIDIuIElmIGlhbmFUaW1lWm9uZSBpcyBhIExpbmsg
bmFtZSwgdGhlbiBsZXQgaWFuYVRpbWVab25lIGJlIHRoZSBjb3JyZXNwb25kaW5nIFpvbmUgbmFt
ZSBhcyBzcGVjaWZpZWQgaW4gdGhlIOKAnGJhY2t3YXJk4oCdIGZpbGUgb2YgdGhlIElBTkEgVGlt
ZSBab25lIERhdGFiYXNlLgorCisgICAgICAgIFZlY3RvcjxVQ2hhciwgMzI+IGJ1ZmZlcihpYW5h
VGltZVpvbmVMZW5ndGgpOworICAgICAgICBVQm9vbCBpc1N5c3RlbUlEID0gZmFsc2U7CisgICAg
ICAgIHN0YXR1cyA9IFVfWkVST19FUlJPUjsKKyAgICAgICAgYXV0byBjYW5vbmljYWxMZW5ndGgg
PSB1Y2FsX2dldENhbm9uaWNhbFRpbWVab25lSUQoaWFuYVRpbWVab25lLCBpYW5hVGltZVpvbmVM
ZW5ndGgsIGJ1ZmZlci5kYXRhKCksIGlhbmFUaW1lWm9uZUxlbmd0aCwgJmlzU3lzdGVtSUQsICZz
dGF0dXMpOworICAgICAgICBpZiAoc3RhdHVzID09IFVfQlVGRkVSX09WRVJGTE9XX0VSUk9SKSB7
CisgICAgICAgICAgICBidWZmZXIgPSBWZWN0b3I8VUNoYXIsIDMyPihjYW5vbmljYWxMZW5ndGgp
OworICAgICAgICAgICAgaXNTeXN0ZW1JRCA9IGZhbHNlOworICAgICAgICAgICAgc3RhdHVzID0g
VV9aRVJPX0VSUk9SOworICAgICAgICAgICAgdWNhbF9nZXRDYW5vbmljYWxUaW1lWm9uZUlEKGlh
bmFUaW1lWm9uZSwgaWFuYVRpbWVab25lTGVuZ3RoLCBidWZmZXIuZGF0YSgpLCBjYW5vbmljYWxM
ZW5ndGgsICZpc1N5c3RlbUlELCAmc3RhdHVzKTsKKyAgICAgICAgfQorICAgICAgICBBU1NFUlQo
VV9TVUNDRVNTKHN0YXR1cykpOworICAgICAgICBjYW5vbmljYWwgPSBTdHJpbmcoYnVmZmVyLmRh
dGEoKSwgY2Fub25pY2FsTGVuZ3RoKTsKKyAgICB9IHdoaWxlIChjYW5vbmljYWwuaXNOdWxsKCkp
OworICAgIHVlbnVtX2Nsb3NlKHRpbWVab25lcyk7CisKKyAgICAvLyAzLiBJZiBpYW5hVGltZVpv
bmUgaXMgIkV0Yy9VVEMiIG9yICJFdGMvR01UIiwgdGhlbiByZXR1cm4gIlVUQyIuCisgICAgaWYg
KGNhbm9uaWNhbCA9PSAiRXRjL1VUQyIgfHwgY2Fub25pY2FsID09ICJFdGMvR01UIikKKyAgICAg
ICAgY2Fub25pY2FsID0gQVNDSUlMaXRlcmFsKCJVVEMiKTsKKworICAgIC8vIDQuIFJldHVybiBp
YW5hVGltZVpvbmUuCisgICAgcmV0dXJuIGNhbm9uaWNhbDsKK30KKworc3RhdGljIFZlY3RvcjxT
dHJpbmc+IGxvY2FsZURhdGEoY29uc3QgU3RyaW5nJiBsb2NhbGUsIHNpemVfdCBrZXlJbmRleCkK
IHsKLSAgICAvLyAxMi4zLjQgRGF0ZVRpbWUgRm9ybWF0IEZ1bmN0aW9ucyAoRUNNQS00MDIgMi4w
KQotICAgIC8vIDEuIExldCBkdGYgYmUgdGhlIHRoaXMgdmFsdWUuCi0gICAgSW50bERhdGVUaW1l
Rm9ybWF0KiBmb3JtYXQgPSBqc0R5bmFtaWNDYXN0PEludGxEYXRlVGltZUZvcm1hdCo+KHN0YXRl
LT50aGlzVmFsdWUoKSk7Ci0gICAgLy8gMi4gQXNzZXJ0OiBUeXBlKGR0ZikgaXMgT2JqZWN0IGFu
ZCBkdGYgaGFzIGFuIFtbaW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdF1dIGludGVybmFsIHNsb3Qg
d2hvc2UgdmFsdWUgaXMgdHJ1ZS4KLSAgICBpZiAoIWZvcm1hdCkKLSAgICAgICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihzdGF0ZSkpOworICAgIFZlY3RvcjxTdHJpbmc+
IGtleUxvY2FsZURhdGE7CisgICAgc3dpdGNoIChrZXlJbmRleCkgeworICAgIGNhc2UgaW5kZXhP
ZkV4dGVuc2lvbktleUNhOiB7CisgICAgICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VS
Uk9SOworICAgICAgICBVRW51bWVyYXRpb24qIGNhbGVuZGFycyA9IHVjYWxfZ2V0S2V5d29yZFZh
bHVlc0ZvckxvY2FsZSgiY2FsZW5kYXIiLCBsb2NhbGUudXRmOCgpLmRhdGEoKSwgZmFsc2UsICZz
dGF0dXMpOworICAgICAgICBBU1NFUlQoVV9TVUNDRVNTKHN0YXR1cykpOworCisgICAgICAgIHN0
YXR1cyA9IFVfWkVST19FUlJPUjsKKyAgICAgICAgaW50MzJfdCBuYW1lTGVuZ3RoOworICAgICAg
ICB3aGlsZSAoY29uc3QgY2hhciogYXZhaWxhYmxlTmFtZSA9IHVlbnVtX25leHQoY2FsZW5kYXJz
LCAmbmFtZUxlbmd0aCwgJnN0YXR1cykpIHsKKyAgICAgICAgICAgIEFTU0VSVChVX1NVQ0NFU1Mo
c3RhdHVzKSk7CisgICAgICAgICAgICBzdGF0dXMgPSBVX1pFUk9fRVJST1I7CisgICAgICAgICAg
ICBTdHJpbmcgY2FsZW5kYXIgPSBTdHJpbmcoYXZhaWxhYmxlTmFtZSwgbmFtZUxlbmd0aCk7Cisg
ICAgICAgICAgICBrZXlMb2NhbGVEYXRhLmFwcGVuZChjYWxlbmRhcik7CisgICAgICAgICAgICAv
LyBFbnN1cmUgYWxpYXNlcyB1c2VkIGluIGxhbmd1YWdlIHRhZyBhcmUgYWxsb3dlZC4KKyAgICAg
ICAgICAgIGlmIChjYWxlbmRhciA9PSAiZ3JlZ29yaWFuIikKKyAgICAgICAgICAgICAgICBrZXlM
b2NhbGVEYXRhLmFwcGVuZChBU0NJSUxpdGVyYWwoImdyZWdvcnkiKSk7CisgICAgICAgICAgICBl
bHNlIGlmIChjYWxlbmRhciA9PSAiaXNsYW1pYy1jaXZpbCIpCisgICAgICAgICAgICAgICAga2V5
TG9jYWxlRGF0YS5hcHBlbmQoQVNDSUlMaXRlcmFsKCJpc2xhbWljYyIpKTsKKyAgICAgICAgICAg
IGVsc2UgaWYgKGNhbGVuZGFyID09ICJldGhpb3BpYy1hbWV0ZS1hbGVtIikKKyAgICAgICAgICAg
ICAgICBrZXlMb2NhbGVEYXRhLmFwcGVuZChBU0NJSUxpdGVyYWwoImV0aGlvYWEiKSk7CisgICAg
ICAgIH0KKyAgICAgICAgdWVudW1fY2xvc2UoY2FsZW5kYXJzKTsKKyAgICAgICAgYnJlYWs7Cisg
ICAgfQorICAgIGNhc2UgaW5kZXhPZkV4dGVuc2lvbktleU51OgorICAgICAgICBrZXlMb2NhbGVE
YXRhID0gZ2V0TnVtYmVyaW5nU3lzdGVtc0ZvckxvY2FsZShsb2NhbGUpOworICAgICAgICBicmVh
azsKKyAgICBkZWZhdWx0OgorICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICB9Cisg
ICAgcmV0dXJuIGtleUxvY2FsZURhdGE7Cit9CisKK3N0YXRpYyBKU09iamVjdCogdG9EYXRlVGlt
ZU9wdGlvbnMoRXhlY1N0YXRlJiBleGVjLCBKU1ZhbHVlIG9yaWdpbmFsT3B0aW9ucywgY29uc3Qg
RGF0ZVRpbWVPcHRpb25SZXF1aXJlZCByZXF1aXJlZCwgY29uc3QgRGF0ZVRpbWVPcHRpb25EZWZh
dWx0cyBkZWZhdWx0cykKK3sKKyAgICAvLyAxMi4xLjEgVG9EYXRlVGltZU9wdGlvbnMgYWJzdHJh
Y3Qgb3BlcmF0aW9uIChFQ01BLTQwMiAyLjApCisgICAgVk0mIHZtID0gZXhlYy52bSgpOworCisg
ICAgLy8gMS4gSWYgb3B0aW9ucyBpcyB1bmRlZmluZWQsIHRoZW4gbGV0IG9wdGlvbnMgYmUgbnVs
bCwgZWxzZSBsZXQgb3B0aW9ucyBiZSBUb09iamVjdChvcHRpb25zKS4KKyAgICAvLyAyLiBSZXR1
cm5JZkFicnVwdChvcHRpb25zKS4KKyAgICAvLyAzLiBMZXQgb3B0aW9ucyBiZSBPYmplY3RDcmVh
dGUob3B0aW9ucykuCisgICAgSlNPYmplY3QqIG9wdGlvbnM7CisgICAgaWYgKG9yaWdpbmFsT3B0
aW9ucy5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAgICAgICBvcHRpb25zID0gY29uc3RydWN0RW1w
dHlPYmplY3QoJmV4ZWMsIGV4ZWMubGV4aWNhbEdsb2JhbE9iamVjdCgpLT5udWxsUHJvdG90eXBl
T2JqZWN0U3RydWN0dXJlKCkpOworICAgIGVsc2UgeworICAgICAgICBKU09iamVjdCogb3JpZ2lu
YWxUb09iamVjdCA9IG9yaWdpbmFsT3B0aW9ucy50b09iamVjdCgmZXhlYyk7CisgICAgICAgIGlm
IChleGVjLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAg
ICAgIG9wdGlvbnMgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdCgmZXhlYywgb3JpZ2luYWxUb09iamVj
dCk7CisgICAgfQorCisgICAgLy8gNC4gTGV0IG5lZWREZWZhdWx0cyBiZSB0cnVlLgorICAgIGJv
b2wgbmVlZERlZmF1bHRzID0gdHJ1ZTsKKworICAgIC8vIDUuIElmIHJlcXVpcmVkIGlzICJkYXRl
IiBvciAiYW55IiwKKyAgICBpZiAocmVxdWlyZWQgPT0gRGF0ZVRpbWVPcHRpb25SZXF1aXJlZDo6
RGF0ZSB8fCByZXF1aXJlZCA9PSBEYXRlVGltZU9wdGlvblJlcXVpcmVkOjpBbnkpIHsKKyAgICAg
ICAgLy8gYS4gRm9yIGVhY2ggb2YgdGhlIHByb3BlcnR5IG5hbWVzICJ3ZWVrZGF5IiwgInllYXIi
LCAibW9udGgiLCAiZGF5IjoKKyAgICAgICAgLy8gaS4gTGV0IHByb3AgYmUgdGhlIHByb3BlcnR5
IG5hbWUuCisgICAgICAgIC8vIGlpLiBMZXQgdmFsdWUgYmUgR2V0KG9wdGlvbnMsIHByb3ApLgor
ICAgICAgICAvLyBpaWkuIFJldHVybklmQWJydXB0KHZhbHVlKS4KKyAgICAgICAgLy8gaXYuIElm
IHZhbHVlIGlzIG5vdCB1bmRlZmluZWQsIHRoZW4gbGV0IG5lZWREZWZhdWx0cyBiZSBmYWxzZS4K
KyAgICAgICAgSlNWYWx1ZSB3ZWVrZGF5ID0gb3B0aW9ucy0+Z2V0KCZleGVjLCB2bS5wcm9wZXJ0
eU5hbWVzLT53ZWVrZGF5KTsKKyAgICAgICAgaWYgKGV4ZWMuaGFkRXhjZXB0aW9uKCkpCisgICAg
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCF3ZWVrZGF5LmlzVW5kZWZpbmVk
KCkpCisgICAgICAgICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKworICAgICAgICBKU1ZhbHVl
IHllYXIgPSBvcHRpb25zLT5nZXQoJmV4ZWMsIHZtLnByb3BlcnR5TmFtZXMtPnllYXIpOworICAg
ICAgICBpZiAoZXhlYy5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRy
OworICAgICAgICBpZiAoIXllYXIuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZh
dWx0cyA9IGZhbHNlOworCisgICAgICAgIEpTVmFsdWUgbW9udGggPSBvcHRpb25zLT5nZXQoJmV4
ZWMsIHZtLnByb3BlcnR5TmFtZXMtPm1vbnRoKTsKKyAgICAgICAgaWYgKGV4ZWMuaGFkRXhjZXB0
aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCFtb250aC5p
c1VuZGVmaW5lZCgpKQorICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisKKyAgICAg
ICAgSlNWYWx1ZSBkYXkgPSBvcHRpb25zLT5nZXQoJmV4ZWMsIHZtLnByb3BlcnR5TmFtZXMtPmRh
eSk7CisgICAgICAgIGlmIChleGVjLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CisgICAgICAgIGlmICghZGF5LmlzVW5kZWZpbmVkKCkpCisgICAgICAgICAgICBu
ZWVkRGVmYXVsdHMgPSBmYWxzZTsKKyAgICB9CisKKyAgICAvLyA2LiBJZiByZXF1aXJlZCBpcyAi
dGltZSIgb3IgImFueSIsCisgICAgaWYgKHJlcXVpcmVkID09IERhdGVUaW1lT3B0aW9uUmVxdWly
ZWQ6OlRpbWUgfHwgcmVxdWlyZWQgPT0gRGF0ZVRpbWVPcHRpb25SZXF1aXJlZDo6QW55KSB7Cisg
ICAgICAgIC8vIGEuIEZvciBlYWNoIG9mIHRoZSBwcm9wZXJ0eSBuYW1lcyAiaG91ciIsICJtaW51
dGUiLCAic2Vjb25kIjoKKyAgICAgICAgLy8gaS4gTGV0IHByb3AgYmUgdGhlIHByb3BlcnR5IG5h
bWUuCisgICAgICAgIC8vIGlpLiBMZXQgdmFsdWUgYmUgR2V0KG9wdGlvbnMsIHByb3ApLgorICAg
ICAgICAvLyBpaWkuIFJldHVybklmQWJydXB0KHZhbHVlKS4KKyAgICAgICAgLy8gaXYuIElmIHZh
bHVlIGlzIG5vdCB1bmRlZmluZWQsIHRoZW4gbGV0IG5lZWREZWZhdWx0cyBiZSBmYWxzZS4KKyAg
ICAgICAgSlNWYWx1ZSBob3VyID0gb3B0aW9ucy0+Z2V0KCZleGVjLCB2bS5wcm9wZXJ0eU5hbWVz
LT5ob3VyKTsKKyAgICAgICAgaWYgKGV4ZWMuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKCFob3VyLmlzVW5kZWZpbmVkKCkpCisgICAgICAg
ICAgICBuZWVkRGVmYXVsdHMgPSBmYWxzZTsKKworICAgICAgICBKU1ZhbHVlIG1pbnV0ZSA9IG9w
dGlvbnMtPmdldCgmZXhlYywgdm0ucHJvcGVydHlOYW1lcy0+bWludXRlKTsKKyAgICAgICAgaWYg
KGV4ZWMuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAg
ICAgaWYgKCFtaW51dGUuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgICAgIG5lZWREZWZhdWx0cyA9
IGZhbHNlOworCisgICAgICAgIEpTVmFsdWUgc2Vjb25kID0gb3B0aW9ucy0+Z2V0KCZleGVjLCB2
bS5wcm9wZXJ0eU5hbWVzLT5zZWNvbmQpOworICAgICAgICBpZiAoZXhlYy5oYWRFeGNlcHRpb24o
KSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBpZiAoIXNlY29uZC5pc1Vu
ZGVmaW5lZCgpKQorICAgICAgICAgICAgbmVlZERlZmF1bHRzID0gZmFsc2U7CisgICAgfQorCisg
ICAgLy8gNy4gSWYgbmVlZERlZmF1bHRzIGlzIHRydWUgYW5kIGRlZmF1bHRzIGlzIGVpdGhlciAi
ZGF0ZSIgb3IgImFsbCIsIHRoZW4KKyAgICBpZiAobmVlZERlZmF1bHRzICYmIChkZWZhdWx0cyA9
PSBEYXRlVGltZU9wdGlvbkRlZmF1bHRzOjpEYXRlIHx8IGRlZmF1bHRzID09IERhdGVUaW1lT3B0
aW9uRGVmYXVsdHM6OkFsbCkpIHsKKyAgICAgICAgLy8gYS4gRm9yIGVhY2ggb2YgdGhlIHByb3Bl
cnR5IG5hbWVzICJ5ZWFyIiwgIm1vbnRoIiwgImRheSI6CisgICAgICAgIC8vIGkuIExldCBzdGF0
dXMgYmUgQ3JlYXRlRGF0ZVByb3BlcnR5T3JUaHJvdyhvcHRpb25zLCBwcm9wLCAibnVtZXJpYyIp
LgorICAgICAgICAvLyBpaS4gUmV0dXJuSWZBYnJ1cHQoc3RhdHVzKS4KKyAgICAgICAgb3B0aW9u
cy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT55ZWFyLCBqc1N0cmluZygmZXhlYywg
Im51bWVyaWMiKSk7CisgICAgICAgIGlmIChleGVjLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICBKU1ZhbHVlIGRhdGUgPSBzdGF0ZS0+YXJndW1lbnQo
MCk7Ci0gICAgZG91YmxlIHZhbHVlOworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZt
LnByb3BlcnR5TmFtZXMtPm1vbnRoLCBqc1N0cmluZygmZXhlYywgIm51bWVyaWMiKSk7CisgICAg
ICAgIGlmIChleGVjLmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7
CiAKLSAgICAvLyAzLiBJZiBkYXRlIGlzIG5vdCBwcm92aWRlZCBvciBpcyB1bmRlZmluZWQsIHRo
ZW4KLSAgICBpZiAoZGF0ZS5pc1VuZGVmaW5lZCgpKSB7Ci0gICAgICAgIC8vIGEuIExldCB4IGJl
ICVEYXRlX25vdyUoKS4KLSAgICAgICAgdmFsdWUgPSBKU1ZhbHVlOjpkZWNvZGUoZGF0ZU5vdyhz
dGF0ZSkpLnRvTnVtYmVyKHN0YXRlKTsKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2
bS5wcm9wZXJ0eU5hbWVzLT5kYXksIGpzU3RyaW5nKCZleGVjLCAibnVtZXJpYyIpKTsKKyAgICAg
ICAgaWYgKGV4ZWMuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsK
KyAgICB9CisKKyAgICAvLyA4LiBJZiBuZWVkRGVmYXVsdHMgaXMgdHJ1ZSBhbmQgZGVmYXVsdHMg
aXMgZWl0aGVyICJ0aW1lIiBvciAiYWxsIiwgdGhlbgorICAgIGlmIChuZWVkRGVmYXVsdHMgJiYg
KGRlZmF1bHRzID09IERhdGVUaW1lT3B0aW9uRGVmYXVsdHM6OlRpbWUgfHwgZGVmYXVsdHMgPT0g
RGF0ZVRpbWVPcHRpb25EZWZhdWx0czo6QWxsKSkgeworICAgICAgICAvLyBhLiBGb3IgZWFjaCBv
ZiB0aGUgcHJvcGVydHkgbmFtZXMgImhvdXIiLCAibWludXRlIiwgInNlY29uZCI6CisgICAgICAg
IC8vIGkuIExldCBzdGF0dXMgYmUgQ3JlYXRlRGF0ZVByb3BlcnR5T3JUaHJvdyhvcHRpb25zLCBw
cm9wLCAibnVtZXJpYyIpLgorICAgICAgICAvLyBpaS4gUmV0dXJuSWZBYnJ1cHQoc3RhdHVzKS4K
KyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyLCBq
c1N0cmluZygmZXhlYywgIm51bWVyaWMiKSk7CisgICAgICAgIGlmIChleGVjLmhhZEV4Y2VwdGlv
bigpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICAgICAgb3B0aW9ucy0+cHV0
RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5taW51dGUsIGpzU3RyaW5nKCZleGVjLCAibnVt
ZXJpYyIpKTsKKyAgICAgICAgaWYgKGV4ZWMuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKKworICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3Bl
cnR5TmFtZXMtPnNlY29uZCwganNTdHJpbmcoJmV4ZWMsICJudW1lcmljIikpOworICAgICAgICBp
ZiAoZXhlYy5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAg
IH0KKworICAgIC8vIDkuIFJldHVybiBvcHRpb25zLgorICAgIHJldHVybiBvcHRpb25zOworfQor
Cit2b2lkIEludGxEYXRlVGltZUZvcm1hdDo6c2V0Rm9ybWF0c0Zyb21QYXR0ZXJuKGNvbnN0IFN0
cmluZ1ZpZXcmIHBhdHRlcm4pCit7CisgICAgLy8gR2V0IGFsbCBzeW1ib2xzIGZyb20gdGhlIHBh
dHRlcm4sIGFuZCBzZXQgZm9ybWF0IGZpZWxkcyBhY2NvcmRpbmdseS4KKyAgICAvLyBodHRwOi8v
dW5pY29kZS5vcmcvcmVwb3J0cy90cjM1L3RyMzUtZGF0ZXMuaHRtbCNEYXRlX0ZpZWxkX1N5bWJv
bF9UYWJsZQorICAgIHVuc2lnbmVkIGxlbmd0aCA9IHBhdHRlcm4ubGVuZ3RoKCk7CisgICAgZm9y
ICh1bnNpZ25lZCBpID0gMDsgaSA8IGxlbmd0aDsgKytpKSB7CisgICAgICAgIFVDaGFyIGN1cnJl
bnRDaGFyYWN0ZXIgPSBwYXR0ZXJuW2ldOworICAgICAgICBpZiAoIWlzQVNDSUlBbHBoYShjdXJy
ZW50Q2hhcmFjdGVyKSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAgIHVuc2lnbmVk
IGNvdW50ID0gMTsKKyAgICAgICAgd2hpbGUgKGkgKyAxIDwgbGVuZ3RoICYmIHBhdHRlcm5baSAr
IDFdID09IGN1cnJlbnRDaGFyYWN0ZXIpIHsKKyAgICAgICAgICAgICsrY291bnQ7CisgICAgICAg
ICAgICArK2k7CisgICAgICAgIH0KKworICAgICAgICBpZiAoY3VycmVudENoYXJhY3RlciA9PSAn
aCcgfHwgY3VycmVudENoYXJhY3RlciA9PSAnSycpCisgICAgICAgICAgICBtX2hvdXIxMiA9IHRy
dWU7CisgICAgICAgIGVsc2UgaWYgKGN1cnJlbnRDaGFyYWN0ZXIgPT0gJ0gnIHx8IGN1cnJlbnRD
aGFyYWN0ZXIgPT0gJ2snKQorICAgICAgICAgICAgbV9ob3VyMTIgPSBmYWxzZTsKKworICAgICAg
ICBzd2l0Y2ggKGN1cnJlbnRDaGFyYWN0ZXIpIHsKKyAgICAgICAgY2FzZSAnRyc6CisgICAgICAg
ICAgICBpZiAoY291bnQgPD0gMykKKyAgICAgICAgICAgICAgICBtX2VyYSA9IEVyYTo6U2hvcnQ7
CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA0KQorICAgICAgICAgICAgICAgIG1fZXJh
ID0gRXJhOjpMb25nOworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gNSkKKyAgICAgICAg
ICAgICAgICBtX2VyYSA9IEVyYTo6TmFycm93OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGNhc2UgJ3knOgorICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisgICAgICAgICAgICAgICAg
bV95ZWFyID0gWWVhcjo6TnVtZXJpYzsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDIp
CisgICAgICAgICAgICAgICAgbV95ZWFyID0gWWVhcjo6VHdvRGlnaXQ7CisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgY2FzZSAnTSc6CisgICAgICAgIGNhc2UgJ0wnOgorICAgICAgICAgICAg
aWYgKGNvdW50ID09IDEpCisgICAgICAgICAgICAgICAgbV9tb250aCA9IE1vbnRoOjpOdW1lcmlj
OworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMikKKyAgICAgICAgICAgICAgICBtX21v
bnRoID0gTW9udGg6OlR3b0RpZ2l0OworICAgICAgICAgICAgZWxzZSBpZiAoY291bnQgPT0gMykK
KyAgICAgICAgICAgICAgICBtX21vbnRoID0gTW9udGg6OlNob3J0OworICAgICAgICAgICAgZWxz
ZSBpZiAoY291bnQgPT0gNCkKKyAgICAgICAgICAgICAgICBtX21vbnRoID0gTW9udGg6Okxvbmc7
CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSA1KQorICAgICAgICAgICAgICAgIG1fbW9u
dGggPSBNb250aDo6TmFycm93OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ0Un
OgorICAgICAgICBjYXNlICdlJzoKKyAgICAgICAgY2FzZSAnYyc6CisgICAgICAgICAgICBpZiAo
Y291bnQgPD0gMykKKyAgICAgICAgICAgICAgICBtX3dlZWtkYXkgPSBXZWVrZGF5OjpTaG9ydDsK
KyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDQpCisgICAgICAgICAgICAgICAgbV93ZWVr
ZGF5ID0gV2Vla2RheTo6TG9uZzsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvdW50ID09IDUpCisg
ICAgICAgICAgICAgICAgbV93ZWVrZGF5ID0gV2Vla2RheTo6TmFycm93OworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIGNhc2UgJ2QnOgorICAgICAgICAgICAgaWYgKGNvdW50ID09IDEpCisg
ICAgICAgICAgICAgICAgbV9kYXkgPSBEYXk6Ok51bWVyaWM7CisgICAgICAgICAgICBlbHNlIGlm
IChjb3VudCA9PSAyKQorICAgICAgICAgICAgICAgIG1fZGF5ID0gRGF5OjpUd29EaWdpdDsKKyAg
ICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdoJzoKKyAgICAgICAgY2FzZSAnSCc6Cisg
ICAgICAgIGNhc2UgJ2snOgorICAgICAgICBjYXNlICdLJzoKKyAgICAgICAgICAgIGlmIChjb3Vu
dCA9PSAxKQorICAgICAgICAgICAgICAgIG1faG91ciA9IEhvdXI6Ok51bWVyaWM7CisgICAgICAg
ICAgICBlbHNlIGlmIChjb3VudCA9PSAyKQorICAgICAgICAgICAgICAgIG1faG91ciA9IEhvdXI6
OlR3b0RpZ2l0OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ20nOgorICAgICAg
ICAgICAgaWYgKGNvdW50ID09IDEpCisgICAgICAgICAgICAgICAgbV9taW51dGUgPSBNaW51dGU6
Ok51bWVyaWM7CisgICAgICAgICAgICBlbHNlIGlmIChjb3VudCA9PSAyKQorICAgICAgICAgICAg
ICAgIG1fbWludXRlID0gTWludXRlOjpUd29EaWdpdDsKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBjYXNlICdzJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAgICAg
ICAgIG1fc2Vjb25kID0gU2Vjb25kOjpOdW1lcmljOworICAgICAgICAgICAgZWxzZSBpZiAoY291
bnQgPT0gMikKKyAgICAgICAgICAgICAgICBtX3NlY29uZCA9IFNlY29uZDo6VHdvRGlnaXQ7Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAneic6CisgICAgICAgIGNhc2UgJ3YnOgor
ICAgICAgICBjYXNlICdWJzoKKyAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQorICAgICAgICAg
ICAgICAgIG1fdGltZVpvbmVOYW1lID0gVGltZVpvbmVOYW1lOjpTaG9ydDsKKyAgICAgICAgICAg
IGVsc2UgaWYgKGNvdW50ID09IDQpCisgICAgICAgICAgICAgICAgbV90aW1lWm9uZU5hbWUgPSBU
aW1lWm9uZU5hbWU6Okxvbmc7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgIH0K
K30KKwordm9pZCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmluaXRpYWxpemVEYXRlVGltZUZvcm1hdChF
eGVjU3RhdGUmIGV4ZWMsIEpTVmFsdWUgbG9jYWxlcywgSlNWYWx1ZSBvcmlnaW5hbE9wdGlvbnMp
Cit7CisgICAgLy8gMTIuMS4xIEluaXRpYWxpemVEYXRlVGltZUZvcm1hdCAoZGF0ZVRpbWVGb3Jt
YXQsIGxvY2FsZXMsIG9wdGlvbnMpIChFQ01BLTQwMiAyLjApCisgICAgLy8gMS4gSWYgZGF0ZVRp
bWVGb3JtYXQuW1tpbml0aWFsaXplZEludGxPYmplY3RdXSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVF
cnJvciBleGNlcHRpb24uCisgICAgLy8gMi4gU2V0IGRhdGVUaW1lRm9ybWF0LltbaW5pdGlhbGl6
ZWRJbnRsT2JqZWN0XV0gdG8gdHJ1ZS4KKworICAgIC8vIDMuIExldCByZXF1ZXN0ZWRMb2NhbGVz
IGJlIENhbm9uaWNhbGl6ZUxvY2FsZUxpc3QobG9jYWxlcykuCisgICAgVmVjdG9yPFN0cmluZz4g
cmVxdWVzdGVkTG9jYWxlcyA9IGNhbm9uaWNhbGl6ZUxvY2FsZUxpc3QoZXhlYywgbG9jYWxlcyk7
CisgICAgLy8gNC4gUmV0dXJuSWZBYnJ1cHQocmVxdWVzdGVkTG9jYWxlcyksCisgICAgaWYgKGV4
ZWMuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIDUuIExldCBvcHRp
b25zIGJlIFRvRGF0ZVRpbWVPcHRpb25zKG9wdGlvbnMsICJhbnkiLCAiZGF0ZSIpLgorICAgIEpT
T2JqZWN0KiBvcHRpb25zID0gdG9EYXRlVGltZU9wdGlvbnMoZXhlYywgb3JpZ2luYWxPcHRpb25z
LCBEYXRlVGltZU9wdGlvblJlcXVpcmVkOjpBbnksIERhdGVUaW1lT3B0aW9uRGVmYXVsdHM6OkRh
dGUpOworICAgIC8vIDYuIFJldHVybklmQWJydXB0KG9wdGlvbnMpLgorICAgIGlmIChleGVjLmhh
ZEV4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyA3LiBMZXQgb3B0IGJlIGEg
bmV3IFJlY29yZC4KKyAgICBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiBsb2NhbGVPcHQ7CisKKyAg
ICAvLyA4LiBMZXQgbWF0Y2hlciBiZSBHZXRPcHRpb24ob3B0aW9ucywgImxvY2FsZU1hdGNoZXIi
LCAic3RyaW5nIiwgwqsibG9va3VwIiwgImJlc3QgZml0IsK7LCAiYmVzdCBmaXQiKS4KKyAgICBW
TSYgdm0gPSBleGVjLnZtKCk7CisgICAgU3RyaW5nIGxvY2FsZU1hdGNoZXIgPSBpbnRsU3RyaW5n
T3B0aW9uKGV4ZWMsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmxvY2FsZU1hdGNoZXIsIHsg
Imxvb2t1cCIsICJiZXN0IGZpdCIgfSwgImxvY2FsZU1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgXCJs
b29rdXBcIiBvciBcImJlc3QgZml0XCIiLCAiYmVzdCBmaXQiKTsKKyAgICAvLyA5LiBSZXR1cm5J
ZkFicnVwdChtYXRjaGVyKS4KKyAgICBpZiAoZXhlYy5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAg
cmV0dXJuOworICAgIC8vIDEwLiBTZXQgb3B0LltbbG9jYWxlTWF0Y2hlcl1dIHRvIG1hdGNoZXIu
CisgICAgbG9jYWxlT3B0LnNldCh2bS5wcm9wZXJ0eU5hbWVzLT5sb2NhbGVNYXRjaGVyLnN0cmlu
ZygpLCBsb2NhbGVNYXRjaGVyKTsKKworICAgIC8vIDExLiBMZXQgbG9jYWxlRGF0YSBiZSB0aGUg
dmFsdWUgb2YgJURhdGVUaW1lRm9ybWF0JS5bW2xvY2FsZURhdGFdXS4KKyAgICAvLyAxMi4gTGV0
IHIgYmUgUmVzb2x2ZUxvY2FsZSggJURhdGVUaW1lRm9ybWF0JS5bW2F2YWlsYWJsZUxvY2FsZXNd
XSwgcmVxdWVzdGVkTG9jYWxlcywgb3B0LCAlRGF0ZVRpbWVGb3JtYXQlLltbcmVsZXZhbnRFeHRl
bnNpb25LZXlzXV0sIGxvY2FsZURhdGEpLgorICAgIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiBhdmFp
bGFibGVMb2NhbGVzID0gZXhlYy5sZXhpY2FsR2xvYmFsT2JqZWN0KCktPmludGxEYXRlVGltZUZv
cm1hdEF2YWlsYWJsZUxvY2FsZXMoKTsKKyAgICBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiByZXNv
bHZlZCA9IHJlc29sdmVMb2NhbGUoYXZhaWxhYmxlTG9jYWxlcywgcmVxdWVzdGVkTG9jYWxlcywg
bG9jYWxlT3B0LCByZWxldmFudEV4dGVuc2lvbktleXMsIFdURl9BUlJBWV9MRU5HVEgocmVsZXZh
bnRFeHRlbnNpb25LZXlzKSwgbG9jYWxlRGF0YSk7CisKKyAgICAvLyAxMy4gU2V0IGRhdGVUaW1l
Rm9ybWF0LltbbG9jYWxlXV0gdG8gdGhlIHZhbHVlIG9mIHIuW1tsb2NhbGVdXS4KKyAgICBtX2xv
Y2FsZSA9IHJlc29sdmVkLmdldCh2bS5wcm9wZXJ0eU5hbWVzLT5sb2NhbGUuc3RyaW5nKCkpOwor
ICAgIC8vIDE0LiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1tjYWxlbmRhcl1dIHRvIHRoZSB2YWx1ZSBv
ZiByLltbY2FdXS4KKyAgICBtX2NhbGVuZGFyID0gcmVzb2x2ZWQuZ2V0KEFTQ0lJTGl0ZXJhbCgi
Y2EiKSk7CisgICAgLy8gU3dpdGNoIHRvIHByZWZlcnJlZCBhbGlhc2VzLgorICAgIGlmIChtX2Nh
bGVuZGFyID09ICJncmVnb3J5IikKKyAgICAgICAgbV9jYWxlbmRhciA9IEFTQ0lJTGl0ZXJhbCgi
Z3JlZ29yaWFuIik7CisgICAgZWxzZSBpZiAobV9jYWxlbmRhciA9PSAiaXNsYW1pY2MiKQorICAg
ICAgICBtX2NhbGVuZGFyID0gQVNDSUlMaXRlcmFsKCJpc2xhbWljLWNpdmlsIik7CisgICAgZWxz
ZSBpZiAobV9jYWxlbmRhciA9PSAiZXRoaW9hYSIpCisgICAgICAgIG1fY2FsZW5kYXIgPSBBU0NJ
SUxpdGVyYWwoImV0aGlvcGljLWFtZXRlLWFsZW0iKTsKKyAgICAvLyAxNS4gU2V0IGRhdGVUaW1l
Rm9ybWF0LltbbnVtYmVyaW5nU3lzdGVtXV0gdG8gdGhlIHZhbHVlIG9mIHIuW1tudV1dLgorICAg
IG1fbnVtYmVyaW5nU3lzdGVtID0gcmVzb2x2ZWQuZ2V0KEFTQ0lJTGl0ZXJhbCgibnUiKSk7Cisg
ICAgLy8gMTYuIExldCBkYXRhTG9jYWxlIGJlIHRoZSB2YWx1ZSBvZiByLltbZGF0YUxvY2FsZV1d
LgorICAgIFN0cmluZyBkYXRhTG9jYWxlID0gcmVzb2x2ZWQuZ2V0KEFTQ0lJTGl0ZXJhbCgiZGF0
YUxvY2FsZSIpKTsKKworICAgIC8vIDE3LiBMZXQgdHogYmUgR2V0KG9wdGlvbnMsICJ0aW1lWm9u
ZSIpLgorICAgIEpTVmFsdWUgdHpWYWx1ZSA9IG9wdGlvbnMtPmdldCgmZXhlYywgdm0ucHJvcGVy
dHlOYW1lcy0+dGltZVpvbmUpOworICAgIC8vIDE4LiBSZXR1cm5JZkFicnVwdCh0eikuCisgICAg
aWYgKGV4ZWMuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIDE5LiBJ
ZiB0eiBpcyBub3QgdW5kZWZpbmVkLCB0aGVuCisgICAgU3RyaW5nIHR6OworICAgIGlmICghdHpW
YWx1ZS5pc1VuZGVmaW5lZCgpKSB7CisgICAgICAgIC8vIGEuIExldCB0eiBiZSBUb1N0cmluZyh0
eikuCisgICAgICAgIFN0cmluZyBvcmlnaW5hbFR6ID0gdHpWYWx1ZS50b1dURlN0cmluZygmZXhl
Yyk7CisgICAgICAgIC8vIGIuIFJldHVybklmQWJydXB0KHR6KS4KKyAgICAgICAgaWYgKGV4ZWMu
aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIC8vIGMuIElmIHRo
ZSByZXN1bHQgb2YgSXNWYWxpZFRpbWVab25lTmFtZSh0eikgaXMgZmFsc2UsIHRoZW4gaS4gVGhy
b3cgYSBSYW5nZUVycm9yIGV4Y2VwdGlvbi4KKyAgICAgICAgLy8gZC4gTGV0IHR6IGJlIENhbm9u
aWNhbGl6ZVRpbWVab25lTmFtZSh0eikuCisgICAgICAgIHR6ID0gY2Fub25pY2FsaXplVGltZVpv
bmVOYW1lKG9yaWdpbmFsVHopOworICAgICAgICBpZiAodHouaXNOdWxsKCkpIHsKKyAgICAgICAg
ICAgIHRocm93UmFuZ2VFcnJvcigmZXhlYywgU3RyaW5nOjpmb3JtYXQoImludmFsaWQgdGltZSB6
b25lOiAlcyIsIG9yaWdpbmFsVHoudXRmOCgpLmRhdGEoKSkpOworICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICB9CiAgICAgfSBlbHNlIHsKLSAgICAgICAgLy8gNC4gRWxzZQotICAgICAgICAv
LyBhLiBMZXQgeCBiZSBUb051bWJlcihkYXRlKS4KLSAgICAgICAgdmFsdWUgPSBkYXRlLnRvTnVt
YmVyKHN0YXRlKTsKLSAgICAgICAgLy8gYi4gUmV0dXJuSWZBYnJ1cHQoeCkuCi0gICAgICAgIGlm
IChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCi0gICAgICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5j
b2RlKGpzVW5kZWZpbmVkKCkpOworICAgICAgICAvLyAyMC4gRWxzZSwKKyAgICAgICAgLy8gYS4g
TGV0IHR6IGJlIERlZmF1bHRUaW1lWm9uZSgpLgorICAgICAgICB0eiA9IGRlZmF1bHRUaW1lWm9u
ZSgpOworICAgIH0KKworICAgIC8vIDIxLiBTZXQgZGF0ZVRpbWVGb3JtYXQuW1t0aW1lWm9uZV1d
IHRvIHR6LgorICAgIG1fdGltZVpvbmUgPSB0ejsKKworICAgIC8vIDIyLiBMZXQgb3B0IGJlIGEg
bmV3IFJlY29yZC4KKyAgICAvLyBSYXRoZXIgdGhhbiBidWlsZGluZyBhIHJlY29yZCwgYnVpbGQg
dGhlIHNrZWxldG9uIHBhdHRlcm4uCisgICAgU3RyaW5nQnVpbGRlciBza2VsZXRvbkJ1aWxkZXI7
CisKKyAgICAvLyAyMy4gRm9yIGVhY2ggcm93IG9mIFRhYmxlIDMsIGV4Y2VwdCB0aGUgaGVhZGVy
IHJvdywgZG86CisgICAgLy8gYS4gTGV0IHByb3AgYmUgdGhlIG5hbWUgZ2l2ZW4gaW4gdGhlIFBy
b3BlcnR5IGNvbHVtbiBvZiB0aGUgcm93LgorICAgIC8vIGIuIExldCB2YWx1ZSBiZSBHZXRPcHRp
b24ob3B0aW9ucywgcHJvcCwgInN0cmluZyIsIMKrdGhlIHN0cmluZ3MgZ2l2ZW4gaW4gdGhlIFZh
bHVlcyBjb2x1bW4gb2YgdGhlIHJvd8K7LCB1bmRlZmluZWQpLgorICAgIC8vIGMuIFJldHVybklm
QWJydXB0KHZhbHVlKS4KKyAgICAvLyBkLiBTZXQgb3B0LltbPHByb3A+XV0gdG8gdmFsdWUuCisg
ICAgYXV0byBuYXJyb3dTaG9ydExvbmcgPSB7ICJuYXJyb3ciLCAic2hvcnQiLCAibG9uZyIgfTsK
KyAgICBhdXRvIHR3b0RpZ2l0TnVtZXJpYyA9IHsgIjItZGlnaXQiLCAibnVtZXJpYyIgfTsKKyAg
ICBhdXRvIHR3b0RpZ2l0TnVtZXJpY05hcnJvd1Nob3J0TG9uZyA9IHsgIjItZGlnaXQiLCAibnVt
ZXJpYyIsICJuYXJyb3ciLCAic2hvcnQiLCAibG9uZyIgfTsKKyAgICBhdXRvIHNob3J0TG9uZyA9
IHsgInNob3J0IiwgImxvbmciIH07CisKKyAgICBTdHJpbmcgd2Vla2RheSA9IGludGxTdHJpbmdP
cHRpb24oZXhlYywgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+d2Vla2RheSwgbmFycm93U2hv
cnRMb25nLCAid2Vla2RheSBtdXN0IGJlIFwibmFycm93XCIsIFwic2hvcnRcIiwgb3IgXCJsb25n
XCIiLCBudWxscHRyKTsKKyAgICBpZiAoZXhlYy5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuOworICAgIGlmICghd2Vla2RheS5pc051bGwoKSkgeworICAgICAgICBpZiAod2Vla2RheSA9
PSAibmFycm93IikKKyAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmRMaXRlcmFsKCJF
RUVFRSIpOworICAgICAgICBlbHNlIGlmICh3ZWVrZGF5ID09ICJzaG9ydCIpCisgICAgICAgICAg
ICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiRUVFIik7CisgICAgICAgIGVsc2UgaWYg
KHdlZWtkYXkgPT0gImxvbmciKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExp
dGVyYWwoIkVFRUUiKTsKKyAgICB9CisKKyAgICBTdHJpbmcgZXJhID0gaW50bFN0cmluZ09wdGlv
bihleGVjLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5lcmEsIG5hcnJvd1Nob3J0TG9uZywg
ImVyYSBtdXN0IGJlIFwibmFycm93XCIsIFwic2hvcnRcIiwgb3IgXCJsb25nXCIiLCBudWxscHRy
KTsKKyAgICBpZiAoZXhlYy5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuOworICAgIGlm
ICghZXJhLmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChlcmEgPT0gIm5hcnJvdyIpCisgICAgICAg
ICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiR0dHR0ciKTsKKyAgICAgICAgZWxz
ZSBpZiAoZXJhID09ICJzaG9ydCIpCisgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5k
TGl0ZXJhbCgiR0dHIik7CisgICAgICAgIGVsc2UgaWYgKGVyYSA9PSAibG9uZyIpCisgICAgICAg
ICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiR0dHRyIpOworICAgIH0KKworICAg
IFN0cmluZyB5ZWFyID0gaW50bFN0cmluZ09wdGlvbihleGVjLCBvcHRpb25zLCB2bS5wcm9wZXJ0
eU5hbWVzLT55ZWFyLCB0d29EaWdpdE51bWVyaWMsICJ5ZWFyIG11c3QgYmUgXCIyLWRpZ2l0XCIg
b3IgXCJudW1lcmljXCIiLCBudWxscHRyKTsKKyAgICBpZiAoZXhlYy5oYWRFeGNlcHRpb24oKSkK
KyAgICAgICAgcmV0dXJuOworICAgIGlmICgheWVhci5pc051bGwoKSkgeworICAgICAgICBpZiAo
eWVhciA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kTGl0
ZXJhbCgieXkiKTsKKyAgICAgICAgZWxzZSBpZiAoeWVhciA9PSAibnVtZXJpYyIpCisgICAgICAg
ICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kKCd5Jyk7CisgICAgfQorCisgICAgU3RyaW5nIG1v
bnRoID0gaW50bFN0cmluZ09wdGlvbihleGVjLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5t
b250aCwgdHdvRGlnaXROdW1lcmljTmFycm93U2hvcnRMb25nLCAibW9udGggbXVzdCBiZSBcIjIt
ZGlnaXRcIiwgXCJudW1lcmljXCIsIFwibmFycm93XCIsIFwic2hvcnRcIiwgb3IgXCJsb25nXCIi
LCBudWxscHRyKTsKKyAgICBpZiAoZXhlYy5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJu
OworICAgIGlmICghbW9udGguaXNOdWxsKCkpIHsKKyAgICAgICAgaWYgKG1vbnRoID09ICIyLWRp
Z2l0IikKKyAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmRMaXRlcmFsKCJNTSIpOwor
ICAgICAgICBlbHNlIGlmIChtb250aCA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICBza2VsZXRv
bkJ1aWxkZXIuYXBwZW5kKCdNJyk7CisgICAgICAgIGVsc2UgaWYgKG1vbnRoID09ICJuYXJyb3ci
KQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoIk1NTU1NIik7Cisg
ICAgICAgIGVsc2UgaWYgKG1vbnRoID09ICJzaG9ydCIpCisgICAgICAgICAgICBza2VsZXRvbkJ1
aWxkZXIuYXBwZW5kTGl0ZXJhbCgiTU1NIik7CisgICAgICAgIGVsc2UgaWYgKG1vbnRoID09ICJs
b25nIikKKyAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmRMaXRlcmFsKCJNTU1NIik7
CisgICAgfQorCisgICAgU3RyaW5nIGRheSA9IGludGxTdHJpbmdPcHRpb24oZXhlYywgb3B0aW9u
cywgdm0ucHJvcGVydHlOYW1lcy0+ZGF5LCB0d29EaWdpdE51bWVyaWMsICJkYXkgbXVzdCBiZSBc
IjItZGlnaXRcIiBvciBcIm51bWVyaWNcIiIsIG51bGxwdHIpOworICAgIGlmIChleGVjLmhhZEV4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm47CisgICAgaWYgKCFkYXkuaXNOdWxsKCkpIHsKKyAg
ICAgICAgaWYgKGRheSA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIu
YXBwZW5kTGl0ZXJhbCgiZGQiKTsKKyAgICAgICAgZWxzZSBpZiAoZGF5ID09ICJudW1lcmljIikK
KyAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmQoJ2QnKTsKICAgICB9CiAKLSAgICAv
LyA1LiBSZXR1cm4gRm9ybWF0RGF0ZVRpbWUoZHRmLCB4KS4KKyAgICBTdHJpbmcgaG91ciA9IGlu
dGxTdHJpbmdPcHRpb24oZXhlYywgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+aG91ciwgdHdv
RGlnaXROdW1lcmljLCAiaG91ciBtdXN0IGJlIFwiMi1kaWdpdFwiIG9yIFwibnVtZXJpY1wiIiwg
bnVsbHB0cik7CisgICAgaWYgKGV4ZWMuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybjsK
IAorICAgIC8vIFdlIG5lZWQgaG91cjEyIHRvIG1ha2UgdGhlIGhvdXIgc2tlbGV0b24gcGF0dGVy
biBkZWNpc2lvbiwgc28gZG8gdGhpcyBlYXJseS4KKyAgICAvLyAzMi4gTGV0IGhyMTIgYmUgR2V0
T3B0aW9uKG9wdGlvbnMsICJob3VyMTIiLCAiYm9vbGVhbiIsIHVuZGVmaW5lZCwgdW5kZWZpbmVk
KS4KKyAgICBib29sIGlzSG91cjEyVW5kZWZpbmVkID0gdHJ1ZTsKKyAgICBib29sIGhyMTIgPSBp
bnRsQm9vbGVhbk9wdGlvbihleGVjLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyMTIs
IGlzSG91cjEyVW5kZWZpbmVkKTsKKyAgICAvLyAzMy4gUmV0dXJuSWZBYnJ1cHQoaHIxMikuCisg
ICAgaWYgKGV4ZWMuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGlmICgh
aG91ci5pc051bGwoKSkgeworICAgICAgICBpZiAoaXNIb3VyMTJVbmRlZmluZWQpIHsKKyAgICAg
ICAgICAgIGlmIChob3VyID09ICIyLWRpZ2l0IikKKyAgICAgICAgICAgICAgICBza2VsZXRvbkJ1
aWxkZXIuYXBwZW5kTGl0ZXJhbCgiamoiKTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGhvdXIgPT0g
Im51bWVyaWMiKQorICAgICAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmQoJ2onKTsK
KyAgICAgICAgfSBlbHNlIGlmIChocjEyKSB7CisgICAgICAgICAgICBpZiAoaG91ciA9PSAiMi1k
aWdpdCIpCisgICAgICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoImho
Iik7CisgICAgICAgICAgICBlbHNlIGlmIChob3VyID09ICJudW1lcmljIikKKyAgICAgICAgICAg
ICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kKCdoJyk7CisgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICBpZiAoaG91ciA9PSAiMi1kaWdpdCIpCisgICAgICAgICAgICAgICAgc2tlbGV0b25C
dWlsZGVyLmFwcGVuZExpdGVyYWwoIkhIIik7CisgICAgICAgICAgICBlbHNlIGlmIChob3VyID09
ICJudW1lcmljIikKKyAgICAgICAgICAgICAgICBza2VsZXRvbkJ1aWxkZXIuYXBwZW5kKCdIJyk7
CisgICAgICAgIH0KKyAgICB9CisKKyAgICBTdHJpbmcgbWludXRlID0gaW50bFN0cmluZ09wdGlv
bihleGVjLCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5taW51dGUsIHR3b0RpZ2l0TnVtZXJp
YywgIm1pbnV0ZSBtdXN0IGJlIFwiMi1kaWdpdFwiIG9yIFwibnVtZXJpY1wiIiwgbnVsbHB0cik7
CisgICAgaWYgKGV4ZWMuaGFkRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybjsKKyAgICBpZiAo
IW1pbnV0ZS5pc051bGwoKSkgeworICAgICAgICBpZiAobWludXRlID09ICIyLWRpZ2l0IikKKyAg
ICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmRMaXRlcmFsKCJtbSIpOworICAgICAgICBl
bHNlIGlmIChtaW51dGUgPT0gIm51bWVyaWMiKQorICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVy
LmFwcGVuZCgnbScpOworICAgIH0KKworICAgIFN0cmluZyBzZWNvbmQgPSBpbnRsU3RyaW5nT3B0
aW9uKGV4ZWMsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnNlY29uZCwgdHdvRGlnaXROdW1l
cmljLCAic2Vjb25kIG11c3QgYmUgXCIyLWRpZ2l0XCIgb3IgXCJudW1lcmljXCIiLCBudWxscHRy
KTsKKyAgICBpZiAoZXhlYy5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuOworICAgIGlm
ICghc2Vjb25kLmlzTnVsbCgpKSB7CisgICAgICAgIGlmIChzZWNvbmQgPT0gIjItZGlnaXQiKQor
ICAgICAgICAgICAgc2tlbGV0b25CdWlsZGVyLmFwcGVuZExpdGVyYWwoInNzIik7CisgICAgICAg
IGVsc2UgaWYgKHNlY29uZCA9PSAibnVtZXJpYyIpCisgICAgICAgICAgICBza2VsZXRvbkJ1aWxk
ZXIuYXBwZW5kKCdzJyk7CisgICAgfQorCisgICAgU3RyaW5nIHRpbWVab25lTmFtZSA9IGludGxT
dHJpbmdPcHRpb24oZXhlYywgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+dGltZVpvbmVOYW1l
LCBzaG9ydExvbmcsICJ0aW1lWm9uZU5hbWUgbXVzdCBiZSBcInNob3J0XCIgb3IgXCJsb25nXCIi
LCBudWxscHRyKTsKKyAgICBpZiAoZXhlYy5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJu
OworICAgIGlmICghdGltZVpvbmVOYW1lLmlzTnVsbCgpKSB7CisgICAgICAgIGlmICh0aW1lWm9u
ZU5hbWUgPT0gInNob3J0IikKKyAgICAgICAgICAgIHNrZWxldG9uQnVpbGRlci5hcHBlbmQoJ3on
KTsKKyAgICAgICAgZWxzZSBpZiAodGltZVpvbmVOYW1lID09ICJsb25nIikKKyAgICAgICAgICAg
IHNrZWxldG9uQnVpbGRlci5hcHBlbmRMaXRlcmFsKCJ6enp6Iik7CisgICAgfQorCisgICAgLy8g
MjQuIExldCBkYXRhTG9jYWxlRGF0YSBiZSBHZXQobG9jYWxlRGF0YSwgZGF0YUxvY2FsZSkuCisg
ICAgLy8gMjUuIExldCBmb3JtYXRzIGJlIEdldChkYXRhTG9jYWxlRGF0YSwgImZvcm1hdHMiKS4K
KyAgICAvLyAyNi4gTGV0IG1hdGNoZXIgYmUgR2V0T3B0aW9uKG9wdGlvbnMsICJmb3JtYXRNYXRj
aGVyIiwgInN0cmluZyIsIMKrImJhc2ljIiwgImJlc3QgZml0IsK7LCAiYmVzdCBmaXQiKS4KKyAg
ICBpbnRsU3RyaW5nT3B0aW9uKGV4ZWMsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmZvcm1h
dE1hdGNoZXIsIHsgImJhc2ljIiwgImJlc3QgZml0IiB9LCAiZm9ybWF0TWF0Y2hlciBtdXN0IGJl
IGVpdGhlciBcImJhc2ljXCIgb3IgXCJiZXN0IGZpdFwiIiwgImJlc3QgZml0Iik7CisgICAgLy8g
MjcuIFJldHVybklmQWJydXB0KG1hdGNoZXIpLgorICAgIGlmIChleGVjLmhhZEV4Y2VwdGlvbigp
KQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBBbHdheXMgdXNlIElDVSBkYXRlIGZvcm1hdCBn
ZW5lcmF0b3IsIHJhdGhlciB0aGFuIG91ciBvd24gcGF0dGVybiBsaXN0IGFuZCBtYXRjaGVyLgor
ICAgIC8vIENvdmVycyBzdGVwcyAyOC0zNi4KKyAgICBVRXJyb3JDb2RlIHN0YXR1cyA9IFVfWkVS
T19FUlJPUjsKKyAgICBVRGF0ZVRpbWVQYXR0ZXJuR2VuZXJhdG9yKiBnZW5lcmF0b3IgPSB1ZGF0
cGdfb3BlbihkYXRhTG9jYWxlLnV0ZjgoKS5kYXRhKCksICZzdGF0dXMpOworICAgIGlmIChVX0ZB
SUxVUkUoc3RhdHVzKSkgeworICAgICAgICB0aHJvd1R5cGVFcnJvcigmZXhlYywgQVNDSUlMaXRl
cmFsKCJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBEYXRlVGltZUZvcm1hdCIpKTsKKyAgICAgICAgcmV0
dXJuOworICAgIH0KKworICAgIFN0cmluZyBza2VsZXRvbiA9IHNrZWxldG9uQnVpbGRlci50b1N0
cmluZygpOworICAgIFN0cmluZ1ZpZXcgc2tlbGV0b25WaWV3KHNrZWxldG9uKTsKKyAgICBWZWN0
b3I8VUNoYXIsIDMyPiBwYXR0ZXJuQnVmZmVyKDMyKTsKKyAgICBzdGF0dXMgPSBVX1pFUk9fRVJS
T1I7CisgICAgYXV0byBwYXR0ZXJuTGVuZ3RoID0gdWRhdHBnX2dldEJlc3RQYXR0ZXJuKGdlbmVy
YXRvciwgc2tlbGV0b25WaWV3LnVwY29udmVydGVkQ2hhcmFjdGVycygpLCBza2VsZXRvblZpZXcu
bGVuZ3RoKCksIHBhdHRlcm5CdWZmZXIuZGF0YSgpLCBwYXR0ZXJuQnVmZmVyLmNhcGFjaXR5KCks
ICZzdGF0dXMpOworICAgIGlmIChzdGF0dXMgPT0gVV9CVUZGRVJfT1ZFUkZMT1dfRVJST1IpIHsK
KyAgICAgICAgc3RhdHVzID0gVV9aRVJPX0VSUk9SOworICAgICAgICBwYXR0ZXJuQnVmZmVyID0g
VmVjdG9yPFVDaGFyLCAzMj4ocGF0dGVybkxlbmd0aCk7CisgICAgICAgIHVkYXRwZ19nZXRCZXN0
UGF0dGVybihnZW5lcmF0b3IsIHNrZWxldG9uVmlldy51cGNvbnZlcnRlZENoYXJhY3RlcnMoKSwg
c2tlbGV0b25WaWV3Lmxlbmd0aCgpLCBwYXR0ZXJuQnVmZmVyLmRhdGEoKSwgcGF0dGVybkxlbmd0
aCwgJnN0YXR1cyk7CisgICAgfQorICAgIHVkYXRwZ19jbG9zZShnZW5lcmF0b3IpOworICAgIGlm
IChVX0ZBSUxVUkUoc3RhdHVzKSkgeworICAgICAgICB0aHJvd1R5cGVFcnJvcigmZXhlYywgQVND
SUlMaXRlcmFsKCJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBEYXRlVGltZUZvcm1hdCIpKTsKKyAgICAg
ICAgcmV0dXJuOworICAgIH0KKworICAgIFN0cmluZ1ZpZXcgcGF0dGVybihwYXR0ZXJuQnVmZmVy
LmRhdGEoKSwgcGF0dGVybkxlbmd0aCk7CisgICAgc2V0Rm9ybWF0c0Zyb21QYXR0ZXJuKHBhdHRl
cm4pOworCisgICAgLy8gMzcuIFNldCBkYXRlVGltZUZvcm1hdC5bW2JvdW5kRm9ybWF0XV0gdG8g
dW5kZWZpbmVkLgorICAgIC8vIEFscmVhZHkgdW5kZWZpbmVkLgorCisgICAgLy8gMzguIFNldCBk
YXRlVGltZUZvcm1hdC5bW2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXRdXSB0byB0cnVlLgorICAg
IG1faW5pdGlhbGl6ZWREYXRlVGltZUZvcm1hdCA9IHRydWU7CisKKyAgICAvLyAzOS4gUmV0dXJu
IGRhdGVUaW1lRm9ybWF0LgorICAgIHJldHVybjsKK30KKworY29uc3QgY2hhciogSW50bERhdGVU
aW1lRm9ybWF0Ojp3ZWVrZGF5U3RyaW5nKFdlZWtkYXkgd2Vla2RheSkKK3sKKyAgICBzd2l0Y2gg
KHdlZWtkYXkpIHsKKyAgICBjYXNlIFdlZWtkYXk6Ok5hcnJvdzoKKyAgICAgICAgcmV0dXJuIEFT
Q0lJTGl0ZXJhbCgibmFycm93Iik7CisgICAgY2FzZSBXZWVrZGF5OjpTaG9ydDoKKyAgICAgICAg
cmV0dXJuIEFTQ0lJTGl0ZXJhbCgic2hvcnQiKTsKKyAgICBjYXNlIFdlZWtkYXk6Okxvbmc6Cisg
ICAgICAgIHJldHVybiBBU0NJSUxpdGVyYWwoImxvbmciKTsKKyAgICBjYXNlIFdlZWtkYXk6Ok5v
bmU6CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1cm4gbnVsbHB0
cjsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIG51bGxwdHI7
Cit9CisKK2NvbnN0IGNoYXIqIEludGxEYXRlVGltZUZvcm1hdDo6ZXJhU3RyaW5nKEVyYSBlcmEp
Cit7CisgICAgc3dpdGNoIChlcmEpIHsKKyAgICBjYXNlIEVyYTo6TmFycm93OgorICAgICAgICBy
ZXR1cm4gIm5hcnJvdyI7CisgICAgY2FzZSBFcmE6OlNob3J0OgorICAgICAgICByZXR1cm4gInNo
b3J0IjsKKyAgICBjYXNlIEVyYTo6TG9uZzoKKyAgICAgICAgcmV0dXJuICJsb25nIjsKKyAgICBj
YXNlIEVyYTo6Tm9uZToKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIHJl
dHVybiBudWxscHRyOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1
cm4gbnVsbHB0cjsKK30KKworY29uc3QgY2hhciogSW50bERhdGVUaW1lRm9ybWF0Ojp5ZWFyU3Ry
aW5nKFllYXIgeWVhcikKK3sKKyAgICBzd2l0Y2ggKHllYXIpIHsKKyAgICBjYXNlIFllYXI6OlR3
b0RpZ2l0OgorICAgICAgICByZXR1cm4gIjItZGlnaXQiOworICAgIGNhc2UgWWVhcjo6TnVtZXJp
YzoKKyAgICAgICAgcmV0dXJuICJudW1lcmljIjsKKyAgICBjYXNlIFllYXI6Ok5vbmU6CisgICAg
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9
CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK2Nv
bnN0IGNoYXIqIEludGxEYXRlVGltZUZvcm1hdDo6bW9udGhTdHJpbmcoTW9udGggbW9udGgpCit7
CisgICAgc3dpdGNoIChtb250aCkgeworICAgIGNhc2UgTW9udGg6OlR3b0RpZ2l0OgorICAgICAg
ICByZXR1cm4gIjItZGlnaXQiOworICAgIGNhc2UgTW9udGg6Ok51bWVyaWM6CisgICAgICAgIHJl
dHVybiAibnVtZXJpYyI7CisgICAgY2FzZSBNb250aDo6TmFycm93OgorICAgICAgICByZXR1cm4g
Im5hcnJvdyI7CisgICAgY2FzZSBNb250aDo6U2hvcnQ6CisgICAgICAgIHJldHVybiAic2hvcnQi
OworICAgIGNhc2UgTW9udGg6Okxvbmc6CisgICAgICAgIHJldHVybiAibG9uZyI7CisgICAgY2Fz
ZSBNb250aDo6Tm9uZToKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIHJl
dHVybiBudWxscHRyOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1
cm4gbnVsbHB0cjsKK30KKworY29uc3QgY2hhciogSW50bERhdGVUaW1lRm9ybWF0OjpkYXlTdHJp
bmcoRGF5IGRheSkKK3sKKyAgICBzd2l0Y2ggKGRheSkgeworICAgIGNhc2UgRGF5OjpUd29EaWdp
dDoKKyAgICAgICAgcmV0dXJuICIyLWRpZ2l0IjsKKyAgICBjYXNlIERheTo6TnVtZXJpYzoKKyAg
ICAgICAgcmV0dXJuICJudW1lcmljIjsKKyAgICBjYXNlIERheTo6Tm9uZToKKyAgICAgICAgQVNT
RVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKyAgICBB
U1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKworY29uc3QgY2hh
ciogSW50bERhdGVUaW1lRm9ybWF0Ojpob3VyU3RyaW5nKEhvdXIgaG91cikKK3sKKyAgICBzd2l0
Y2ggKGhvdXIpIHsKKyAgICBjYXNlIEhvdXI6OlR3b0RpZ2l0OgorICAgICAgICByZXR1cm4gIjIt
ZGlnaXQiOworICAgIGNhc2UgSG91cjo6TnVtZXJpYzoKKyAgICAgICAgcmV0dXJuICJudW1lcmlj
IjsKKyAgICBjYXNlIEhvdXI6Ok5vbmU6CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwor
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK2NvbnN0IGNoYXIqIEludGxEYXRlVGltZUZvcm1h
dDo6bWludXRlU3RyaW5nKE1pbnV0ZSBtaW51dGUpCit7CisgICAgc3dpdGNoIChtaW51dGUpIHsK
KyAgICBjYXNlIE1pbnV0ZTo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiAiMi1kaWdpdCI7Cisg
ICAgY2FzZSBNaW51dGU6Ok51bWVyaWM6CisgICAgICAgIHJldHVybiAibnVtZXJpYyI7CisgICAg
Y2FzZSBNaW51dGU6Ok5vbmU6CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAg
cmV0dXJuIG51bGxwdHI7Cit9CisKK2NvbnN0IGNoYXIqIEludGxEYXRlVGltZUZvcm1hdDo6c2Vj
b25kU3RyaW5nKFNlY29uZCBzZWNvbmQpCit7CisgICAgc3dpdGNoIChzZWNvbmQpIHsKKyAgICBj
YXNlIFNlY29uZDo6VHdvRGlnaXQ6CisgICAgICAgIHJldHVybiAiMi1kaWdpdCI7CisgICAgY2Fz
ZSBTZWNvbmQ6Ok51bWVyaWM6CisgICAgICAgIHJldHVybiAibnVtZXJpYyI7CisgICAgY2FzZSBT
ZWNvbmQ6Ok5vbmU6CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1
cm4gbnVsbHB0cjsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJu
IG51bGxwdHI7Cit9CisKK2NvbnN0IGNoYXIqIEludGxEYXRlVGltZUZvcm1hdDo6dGltZVpvbmVO
YW1lU3RyaW5nKFRpbWVab25lTmFtZSB0aW1lWm9uZU5hbWUpCit7CisgICAgc3dpdGNoICh0aW1l
Wm9uZU5hbWUpIHsKKyAgICBjYXNlIFRpbWVab25lTmFtZTo6U2hvcnQ6CisgICAgICAgIHJldHVy
biAic2hvcnQiOworICAgIGNhc2UgVGltZVpvbmVOYW1lOjpMb25nOgorICAgICAgICByZXR1cm4g
ImxvbmciOworICAgIGNhc2UgVGltZVpvbmVOYW1lOjpOb25lOgorICAgICAgICBBU1NFUlRfTk9U
X1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQorICAgIEFTU0VSVF9O
T1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBudWxscHRyOworfQorCitKU09iamVjdCogSW50bERh
dGVUaW1lRm9ybWF0OjpyZXNvbHZlZE9wdGlvbnMoRXhlY1N0YXRlJiBleGVjKQoreworICAgIC8v
IDEyLjMuNSBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKSAo
RUNNQS00MDIgMi4wKQorICAgIC8vIFRoZSBmdW5jdGlvbiByZXR1cm5zIGEgbmV3IG9iamVjdCB3
aG9zZSBwcm9wZXJ0aWVzIGFuZCBhdHRyaWJ1dGVzIGFyZSBzZXQgYXMgaWYgY29uc3RydWN0ZWQg
YnkgYW4gb2JqZWN0IGxpdGVyYWwgYXNzaWduaW5nIHRvIGVhY2ggb2YgdGhlIGZvbGxvd2luZyBw
cm9wZXJ0aWVzIHRoZSB2YWx1ZSBvZiB0aGUgY29ycmVzcG9uZGluZyBpbnRlcm5hbCBzbG90IG9m
IHRoaXMgRGF0ZVRpbWVGb3JtYXQgb2JqZWN0IChzZWUgMTIuNCk6IGxvY2FsZSwgY2FsZW5kYXIs
IG51bWJlcmluZ1N5c3RlbSwgdGltZVpvbmUsIGhvdXIxMiwgd2Vla2RheSwgZXJhLCB5ZWFyLCBt
b250aCwgZGF5LCBob3VyLCBtaW51dGUsIHNlY29uZCwgYW5kIHRpbWVab25lTmFtZS4gUHJvcGVy
dGllcyB3aG9zZSBjb3JyZXNwb25kaW5nIGludGVybmFsIHNsb3RzIGFyZSBub3QgcHJlc2VudCBh
cmUgbm90IGFzc2lnbmVkLgorICAgIC8vIE5vdGU6IEluIHRoaXMgdmVyc2lvbiBvZiB0aGUgRUNN
QVNjcmlwdCAyMDE1IEludGVybmF0aW9uYWxpemF0aW9uIEFQSSwgdGhlIHRpbWVab25lIHByb3Bl
cnR5IHdpbGwgYmUgdGhlIG5hbWUgb2YgdGhlIGRlZmF1bHQgdGltZSB6b25lIGlmIG5vIHRpbWVa
b25lIHByb3BlcnR5IHdhcyBwcm92aWRlZCBpbiB0aGUgb3B0aW9ucyBvYmplY3QgcHJvdmlkZWQg
dG8gdGhlIEludGwuRGF0ZVRpbWVGb3JtYXQgY29uc3RydWN0b3IuIFRoZSBwcmV2aW91cyB2ZXJz
aW9uIGxlZnQgdGhlIHRpbWVab25lIHByb3BlcnR5IHVuZGVmaW5lZCBpbiB0aGlzIGNhc2UuCisg
ICAgaWYgKCFtX2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXQpIHsKKyAgICAgICAgaW5pdGlhbGl6
ZURhdGVUaW1lRm9ybWF0KGV4ZWMsIGpzVW5kZWZpbmVkKCksIGpzVW5kZWZpbmVkKCkpOworICAg
ICAgICBBU1NFUlQoIWV4ZWMuaGFkRXhjZXB0aW9uKCkpOworICAgIH0KKworICAgIFZNJiB2bSA9
IGV4ZWMudm0oKTsKKyAgICBKU09iamVjdCogb3B0aW9ucyA9IGNvbnN0cnVjdEVtcHR5T2JqZWN0
KCZleGVjKTsKKyAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmxv
Y2FsZSwganNOb250cml2aWFsU3RyaW5nKCZleGVjLCBtX2xvY2FsZSkpOworICAgIG9wdGlvbnMt
PnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+Y2FsZW5kYXIsIGpzTm9udHJpdmlhbFN0
cmluZygmZXhlYywgbV9jYWxlbmRhcikpOworICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0u
cHJvcGVydHlOYW1lcy0+bnVtYmVyaW5nU3lzdGVtLCBqc05vbnRyaXZpYWxTdHJpbmcoJmV4ZWMs
IG1fbnVtYmVyaW5nU3lzdGVtKSk7CisgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9w
ZXJ0eU5hbWVzLT50aW1lWm9uZSwganNOb250cml2aWFsU3RyaW5nKCZleGVjLCBtX3RpbWVab25l
KSk7CisKKyAgICBpZiAobV93ZWVrZGF5ICE9IFdlZWtkYXk6Ok5vbmUpCisgICAgICAgIG9wdGlv
bnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+d2Vla2RheSwganNOb250cml2aWFs
U3RyaW5nKCZleGVjLCBBU0NJSUxpdGVyYWwod2Vla2RheVN0cmluZyhtX3dlZWtkYXkpKSkpOwor
CisgICAgaWYgKG1fZXJhICE9IEVyYTo6Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0
KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5lcmEsIGpzTm9udHJpdmlhbFN0cmluZygmZXhlYywgQVND
SUlMaXRlcmFsKGVyYVN0cmluZyhtX2VyYSkpKSk7CisKKyAgICBpZiAobV95ZWFyICE9IFllYXI6
Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+
eWVhciwganNOb250cml2aWFsU3RyaW5nKCZleGVjLCBBU0NJSUxpdGVyYWwoeWVhclN0cmluZyht
X3llYXIpKSkpOworCisgICAgaWYgKG1fbW9udGggIT0gTW9udGg6Ok5vbmUpCisgICAgICAgIG9w
dGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bW9udGgsIGpzTm9udHJpdmlh
bFN0cmluZygmZXhlYywgQVNDSUlMaXRlcmFsKG1vbnRoU3RyaW5nKG1fbW9udGgpKSkpOworCisg
ICAgaWYgKG1fZGF5ICE9IERheTo6Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZt
LCB2bS5wcm9wZXJ0eU5hbWVzLT5kYXksIGpzTm9udHJpdmlhbFN0cmluZygmZXhlYywgQVNDSUlM
aXRlcmFsKGRheVN0cmluZyhtX2RheSkpKSk7CisKKyAgICBpZiAobV9ob3VyICE9IEhvdXI6Ok5v
bmUpIHsKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5o
b3VyLCBqc05vbnRyaXZpYWxTdHJpbmcoJmV4ZWMsIEFTQ0lJTGl0ZXJhbChob3VyU3RyaW5nKG1f
aG91cikpKSk7CisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1l
cy0+aG91cjEyLCBqc0Jvb2xlYW4obV9ob3VyMTIpKTsKKyAgICB9CisKKyAgICBpZiAobV9taW51
dGUgIT0gTWludXRlOjpOb25lKQorICAgICAgICBvcHRpb25zLT5wdXREaXJlY3Qodm0sIHZtLnBy
b3BlcnR5TmFtZXMtPm1pbnV0ZSwganNOb250cml2aWFsU3RyaW5nKCZleGVjLCBBU0NJSUxpdGVy
YWwobWludXRlU3RyaW5nKG1fbWludXRlKSkpKTsKKworICAgIGlmIChtX3NlY29uZCAhPSBTZWNv
bmQ6Ok5vbmUpCisgICAgICAgIG9wdGlvbnMtPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1l
cy0+c2Vjb25kLCBqc05vbnRyaXZpYWxTdHJpbmcoJmV4ZWMsIEFTQ0lJTGl0ZXJhbChzZWNvbmRT
dHJpbmcobV9zZWNvbmQpKSkpOworCisgICAgaWYgKG1fdGltZVpvbmVOYW1lICE9IFRpbWVab25l
TmFtZTo6Tm9uZSkKKyAgICAgICAgb3B0aW9ucy0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5h
bWVzLT50aW1lWm9uZU5hbWUsIGpzTm9udHJpdmlhbFN0cmluZygmZXhlYywgQVNDSUlMaXRlcmFs
KHRpbWVab25lTmFtZVN0cmluZyhtX3RpbWVab25lTmFtZSkpKSk7CisKKyAgICByZXR1cm4gb3B0
aW9uczsKK30KKworSlNWYWx1ZSBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmZvcm1hdChFeGVjU3RhdGUm
IGV4ZWMsIGRvdWJsZSB2YWx1ZSkKK3sKICAgICAvLyAxMi4zLjQgRm9ybWF0RGF0ZVRpbWUgYWJz
dHJhY3Qgb3BlcmF0aW9uIChFQ01BLTQwMiAyLjApCisgICAgaWYgKCFtX2luaXRpYWxpemVkRGF0
ZVRpbWVGb3JtYXQpIHsKKyAgICAgICAgaW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KGV4ZWMsIGpz
VW5kZWZpbmVkKCksIGpzVW5kZWZpbmVkKCkpOworICAgICAgICBBU1NFUlQoIWV4ZWMuaGFkRXhj
ZXB0aW9uKCkpOworICAgIH0KIAogICAgIC8vIDEuIElmIHggaXMgbm90IGEgZmluaXRlIE51bWJl
ciwgdGhlbiB0aHJvdyBhIFJhbmdlRXJyb3IgZXhjZXB0aW9uLgogICAgIGlmICghc3RkOjppc2Zp
bml0ZSh2YWx1ZSkpCi0gICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dSYW5nZUVy
cm9yKHN0YXRlLCBBU0NJSUxpdGVyYWwoImRhdGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRl
VGltZUZvcm1hdC5mb3JtYXQoKSIpKSk7CisgICAgICAgIHJldHVybiB0aHJvd1JhbmdlRXJyb3Io
JmV4ZWMsIEFTQ0lJTGl0ZXJhbCgiZGF0ZSB2YWx1ZSBpcyBub3QgZmluaXRlIGluIERhdGVUaW1l
Rm9ybWF0IGZvcm1hdCgpIikpOwogCiAgICAgLy8gRklYTUU6IGltcGxlbWVudCAyIC0gOQogCiAg
ICAgLy8gUmV0dXJuIG5ldyBEYXRlKHZhbHVlKS50b1N0cmluZygpIHVudGlsIHByb3Blcmx5IGlt
cGxlbWVudGVkLgotICAgIFZNJiB2bSA9IHN0YXRlLT52bSgpOwotICAgIEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QgPSBzdGF0ZS0+Y2FsbGVlKCktPmdsb2JhbE9iamVjdCgpOworICAgIFZN
JiB2bSA9IGV4ZWMudm0oKTsKKyAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gZXhl
Yy5jYWxsZWUoKS0+Z2xvYmFsT2JqZWN0KCk7CiAgICAgRGF0ZUluc3RhbmNlKiBkID0gRGF0ZUlu
c3RhbmNlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdC0+ZGF0ZVN0cnVjdHVyZSgpLCB2YWx1ZSk7
Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShKU1ZhbHVlKGQpLnRvU3RyaW5nKHN0YXRlKSk7
CisgICAgcmV0dXJuIEpTVmFsdWUoZCkudG9TdHJpbmcoJmV4ZWMpOwogfQogCiB9IC8vIG5hbWVz
cGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxE
YXRlVGltZUZvcm1hdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVU
aW1lRm9ybWF0LmgKaW5kZXggN2RhZWQxMzhmYjA4ZGNmYTNiZTY3ZDM3YzgzYTQ3ZGI0YWFiY2Jk
Ny4uZjAxOThlZjRjZjA4MDdiY2QyNDJkZjAyNGQ5NzBjYjA0ODNhOWE1OSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmgKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmgKQEAgLTQ0
LDYgKzQ0LDEwIEBAIHB1YmxpYzoKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHZvaWQgaW5p
dGlhbGl6ZURhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0ZSYsIEpTVmFsdWUgbG9jYWxlcywgSlNWYWx1
ZSBvcHRpb25zKTsKKyAgICBKU1ZhbHVlIGZvcm1hdChFeGVjU3RhdGUmLCBkb3VibGUgdmFsdWUp
OworICAgIEpTT2JqZWN0KiByZXNvbHZlZE9wdGlvbnMoRXhlY1N0YXRlJik7CisKICAgICBKU0Jv
dW5kRnVuY3Rpb24qIGJvdW5kRm9ybWF0KCkgY29uc3QgeyByZXR1cm4gbV9ib3VuZEZvcm1hdC5n
ZXQoKTsgfQogICAgIHZvaWQgc2V0Qm91bmRGb3JtYXQoVk0mLCBKU0JvdW5kRnVuY3Rpb24qKTsK
IApAQCAtNTMsMTAgKzU3LDQ2IEBAIHByb3RlY3RlZDoKICAgICBzdGF0aWMgdm9pZCBkZXN0cm95
KEpTQ2VsbCopOwogICAgIHN0YXRpYyB2b2lkIHZpc2l0Q2hpbGRyZW4oSlNDZWxsKiwgU2xvdFZp
c2l0b3ImKTsKIAorcHJpdmF0ZToKKyAgICBlbnVtIGNsYXNzIFdlZWtkYXkgeyBOb25lLCBOYXJy
b3csIFNob3J0LCBMb25nIH07CisgICAgZW51bSBjbGFzcyBFcmEgeyBOb25lLCBOYXJyb3csIFNo
b3J0LCBMb25nIH07CisgICAgZW51bSBjbGFzcyBZZWFyIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVy
aWMgfTsKKyAgICBlbnVtIGNsYXNzIE1vbnRoIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVyaWMsIE5h
cnJvdywgU2hvcnQsIExvbmcgfTsKKyAgICBlbnVtIGNsYXNzIERheSB7IE5vbmUsIFR3b0RpZ2l0
LCBOdW1lcmljIH07CisgICAgZW51bSBjbGFzcyBIb3VyIHsgTm9uZSwgVHdvRGlnaXQsIE51bWVy
aWMgfTsKKyAgICBlbnVtIGNsYXNzIE1pbnV0ZSB7IE5vbmUsIFR3b0RpZ2l0LCBOdW1lcmljIH07
CisgICAgZW51bSBjbGFzcyBTZWNvbmQgeyBOb25lLCBUd29EaWdpdCwgTnVtZXJpYyB9OworICAg
IGVudW0gY2xhc3MgVGltZVpvbmVOYW1lIHsgTm9uZSwgU2hvcnQsIExvbmcgfTsKKworICAgIHN0
YXRpYyBjb25zdCBjaGFyKiB3ZWVrZGF5U3RyaW5nKFdlZWtkYXkpOworICAgIHN0YXRpYyBjb25z
dCBjaGFyKiBlcmFTdHJpbmcoRXJhKTsKKyAgICBzdGF0aWMgY29uc3QgY2hhciogeWVhclN0cmlu
ZyhZZWFyKTsKKyAgICBzdGF0aWMgY29uc3QgY2hhciogbW9udGhTdHJpbmcoTW9udGgpOworICAg
IHN0YXRpYyBjb25zdCBjaGFyKiBkYXlTdHJpbmcoRGF5KTsKKyAgICBzdGF0aWMgY29uc3QgY2hh
ciogaG91clN0cmluZyhIb3VyKTsKKyAgICBzdGF0aWMgY29uc3QgY2hhciogbWludXRlU3RyaW5n
KE1pbnV0ZSk7CisgICAgc3RhdGljIGNvbnN0IGNoYXIqIHNlY29uZFN0cmluZyhTZWNvbmQpOwor
ICAgIHN0YXRpYyBjb25zdCBjaGFyKiB0aW1lWm9uZU5hbWVTdHJpbmcoVGltZVpvbmVOYW1lKTsK
KworICAgIGJvb2wgbV9pbml0aWFsaXplZERhdGVUaW1lRm9ybWF0IHsgZmFsc2UgfTsKKyAgICB2
b2lkIHNldEZvcm1hdHNGcm9tUGF0dGVybihjb25zdCBTdHJpbmdWaWV3Jik7CiAgICAgV3JpdGVC
YXJyaWVyPEpTQm91bmRGdW5jdGlvbj4gbV9ib3VuZEZvcm1hdDsKKworICAgIFN0cmluZyBtX2xv
Y2FsZSB7IEFTQ0lJTGl0ZXJhbCgiZW4iKSB9OworICAgIFN0cmluZyBtX2NhbGVuZGFyIHsgQVND
SUlMaXRlcmFsKCJncmVnb3JpYW4iKSB9OworICAgIFN0cmluZyBtX251bWJlcmluZ1N5c3RlbSB7
IEFTQ0lJTGl0ZXJhbCgibGF0biIpIH07CisgICAgU3RyaW5nIG1fdGltZVpvbmUgeyBBU0NJSUxp
dGVyYWwoIlVUQyIpIH07CisgICAgYm9vbCBtX2hvdXIxMiB7IHRydWUgfTsKKyAgICBXZWVrZGF5
IG1fd2Vla2RheSB7IFdlZWtkYXk6Ok5vbmUgfTsKKyAgICBFcmEgbV9lcmEgeyBFcmE6Ok5vbmUg
fTsKKyAgICBZZWFyIG1feWVhciB7IFllYXI6Ok5vbmUgfTsKKyAgICBNb250aCBtX21vbnRoIHsg
TW9udGg6Ok5vbmUgfTsKKyAgICBEYXkgbV9kYXkgeyBEYXk6Ok5vbmUgfTsKKyAgICBIb3VyIG1f
aG91ciB7IEhvdXI6Ok5vbmUgfTsKKyAgICBNaW51dGUgbV9taW51dGUgeyBNaW51dGU6Ok5vbmUg
fTsKKyAgICBTZWNvbmQgbV9zZWNvbmQgeyBTZWNvbmQ6Ok5vbmUgfTsKKyAgICBUaW1lWm9uZU5h
bWUgbV90aW1lWm9uZU5hbWUgeyBUaW1lWm9uZU5hbWU6Ok5vbmUgfTsKIH07Ci0gICAgCi1FbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEludGxEYXRlVGltZUZvcm1hdEZ1bmNGb3JtYXREYXRl
VGltZShFeGVjU3RhdGUqKTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9y
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENv
bnN0cnVjdG9yLmNwcAppbmRleCAxZTg5ZmFhYWI3ZWI4OGM3Zjg2NGUwZjUzZjI1NWNiOGEyYzVl
ZWNjLi42YTdjMmU0YWZhMzc0ZDc3ZmU1ZmIwYmUyYzdjN2NiNTQzMDc3NGFjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1
Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1l
Rm9ybWF0Q29uc3RydWN0b3IuY3BwCkBAIC0xMDQsOCArMTA0LDkgQEAgc3RhdGljIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0SW50bERhdGVUaW1lRm9ybWF0KEV4ZWNTdGF0
ZSogc3RhdGUKICAgICBBU1NFUlQoZGF0ZVRpbWVGb3JtYXQpOwogCiAgICAgLy8gNC4gUmV0dXJu
IEluaXRpYWxpemVEYXRlVGltZUZvcm1hdChkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0aW9u
cykuCi0gICAgLy8gRklYTUU6IHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSW5pdGlhbGl6ZURhdGVU
aW1lRm9ybWF0KGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKSk7Ci0KKyAgICBKU1Zh
bHVlIGxvY2FsZXMgPSBzdGF0ZS0+YXJndW1lbnQoMCk7CisgICAgSlNWYWx1ZSBvcHRpb25zID0g
c3RhdGUtPmFyZ3VtZW50KDEpOworICAgIGRhdGVUaW1lRm9ybWF0LT5pbml0aWFsaXplRGF0ZVRp
bWVGb3JtYXQoKnN0YXRlLCBsb2NhbGVzLCBvcHRpb25zKTsKICAgICByZXR1cm4gSlNWYWx1ZTo6
ZW5jb2RlKGRhdGVUaW1lRm9ybWF0KTsKIH0KIApAQCAtMTIzLDggKzEyNCw5IEBAIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGxJbnRsRGF0ZVRpbWVGb3JtYXQoRXhlY1N0
YXRlKiBzdGF0ZSkKICAgICBBU1NFUlQoZGF0ZVRpbWVGb3JtYXQpOwogCiAgICAgLy8gNC4gUmV0
dXJuIEluaXRpYWxpemVEYXRlVGltZUZvcm1hdChkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0
aW9ucykuCi0gICAgLy8gRklYTUU6IHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSW5pdGlhbGl6ZURh
dGVUaW1lRm9ybWF0KGRhdGVUaW1lRm9ybWF0LCBsb2NhbGVzLCBvcHRpb25zKSk7Ci0KKyAgICBK
U1ZhbHVlIGxvY2FsZXMgPSBzdGF0ZS0+YXJndW1lbnQoMCk7CisgICAgSlNWYWx1ZSBvcHRpb25z
ID0gc3RhdGUtPmFyZ3VtZW50KDEpOworICAgIGRhdGVUaW1lRm9ybWF0LT5pbml0aWFsaXplRGF0
ZVRpbWVGb3JtYXQoKnN0YXRlLCBsb2NhbGVzLCBvcHRpb25zKTsKICAgICByZXR1cm4gSlNWYWx1
ZTo6ZW5jb2RlKGRhdGVUaW1lRm9ybWF0KTsKIH0KIApAQCAtMTYxLDcgKzE2Myw3IEBAIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3JGdW5j
U3VwcG9ydGVkTG9jYWxlc09mCiAgICAgLy8gMy4gUmV0dXJuIFN1cHBvcnRlZExvY2FsZXMoYXZh
aWxhYmxlTG9jYWxlcywgcmVxdWVzdGVkTG9jYWxlcywgb3B0aW9ucykuCiAgICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZShzdXBwb3J0ZWRMb2NhbGVzKCpzdGF0ZSwgYXZhaWxhYmxlTG9jYWxlcywg
cmVxdWVzdGVkTG9jYWxlcywgc3RhdGUtPmFyZ3VtZW50KDEpKSk7CiB9Ci0gICAgCisKIHZvaWQg
SW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3I6OnZpc2l0Q2hpbGRyZW4oSlNDZWxsKiBjZWxs
LCBTbG90VmlzaXRvciYgdmlzaXRvcikKIHsKICAgICBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1
Y3RvciogdGhpc09iamVjdCA9IGpzQ2FzdDxJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcio+
KGNlbGwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERh
dGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKaW5kZXggZDVlNTI1OTgyNDgwYjFlZDQ5
MWU2YjdiOGZiMTJiYjhhZjFhZWU3ZC4uZmY0OGVjNDU1ZGFkMTQ1NTFjYmIxZDIzM2U3ZWIyYjgw
YzA3ZTJhYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERh
dGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCkBAIC0yOCwxOSArMjgsMTggQEAK
IAogI2lmIEVOQUJMRShJTlRMKQogCisjaW5jbHVkZSAiRGF0ZUNvbnN0cnVjdG9yLmgiCiAjaW5j
bHVkZSAiRXJyb3IuaCIKICNpbmNsdWRlICJJbnRsRGF0ZVRpbWVGb3JtYXQuaCIKKyNpbmNsdWRl
ICJJbnRsT2JqZWN0LmgiCiAjaW5jbHVkZSAiSlNCb3VuZEZ1bmN0aW9uLmgiCiAjaW5jbHVkZSAi
SlNDSlNWYWx1ZUlubGluZXMuaCIKICNpbmNsdWRlICJKU0NlbGxJbmxpbmVzLmgiCiAjaW5jbHVk
ZSAiSlNPYmplY3QuaCIKLSNpbmNsdWRlICJPYmplY3RDb25zdHJ1Y3Rvci5oIgogI2luY2x1ZGUg
IlN0cnVjdHVyZUlubGluZXMuaCIKIAogbmFtZXNwYWNlIEpTQyB7CiAKLVNUQVRJQ19BU1NFUlRf
SVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUpOwot
CiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQ
cm90b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0YXRlKik7CiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRp
b25zKEV4ZWNTdGF0ZSopOwogCkBAIC04Niw2ICs4NSwzMyBAQCBib29sIEludGxEYXRlVGltZUZv
cm1hdFByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNT
dGF0ZQogICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KHN0YXRlLCBk
YXRlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxlLCBqc0Nhc3Q8SW50bERhdGVUaW1lRm9ybWF0UHJv
dG90eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KIAorc3RhdGljIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVUaW1lRm9ybWF0RnVuY0Zvcm1hdERhdGVU
aW1lKEV4ZWNTdGF0ZSogc3RhdGUpCit7CisgICAgLy8gMTIuMy40IERhdGVUaW1lIEZvcm1hdCBG
dW5jdGlvbnMgKEVDTUEtNDAyIDIuMCkKKyAgICAvLyAxLiBMZXQgZHRmIGJlIHRoZSB0aGlzIHZh
bHVlLgorICAgIC8vIDIuIEFzc2VydDogVHlwZShkdGYpIGlzIE9iamVjdCBhbmQgZHRmIGhhcyBh
biBbW2luaXRpYWxpemVkRGF0ZVRpbWVGb3JtYXRdXSBpbnRlcm5hbCBzbG90IHdob3NlIHZhbHVl
IGlzIHRydWUuCisgICAgSW50bERhdGVUaW1lRm9ybWF0KiBmb3JtYXQgPSBqc0Nhc3Q8SW50bERh
dGVUaW1lRm9ybWF0Kj4oc3RhdGUtPnRoaXNWYWx1ZSgpKTsKKworICAgIEpTVmFsdWUgZGF0ZSA9
IHN0YXRlLT5hcmd1bWVudCgwKTsKKyAgICBkb3VibGUgdmFsdWU7CisKKyAgICAvLyAzLiBJZiBk
YXRlIGlzIG5vdCBwcm92aWRlZCBvciBpcyB1bmRlZmluZWQsIHRoZW4KKyAgICBpZiAoZGF0ZS5p
c1VuZGVmaW5lZCgpKSB7CisgICAgICAgIC8vIGEuIExldCB4IGJlICVEYXRlX25vdyUoKS4KKyAg
ICAgICAgdmFsdWUgPSBKU1ZhbHVlOjpkZWNvZGUoZGF0ZU5vdyhzdGF0ZSkpLnRvTnVtYmVyKHN0
YXRlKTsKKyAgICB9IGVsc2UgeworICAgICAgICAvLyA0LiBFbHNlCisgICAgICAgIC8vIGEuIExl
dCB4IGJlIFRvTnVtYmVyKGRhdGUpLgorICAgICAgICB2YWx1ZSA9IGRhdGUudG9OdW1iZXIoc3Rh
dGUpOworICAgICAgICAvLyBiLiBSZXR1cm5JZkFicnVwdCh4KS4KKyAgICAgICAgaWYgKHN0YXRl
LT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNV
bmRlZmluZWQoKSk7CisgICAgfQorCisgICAgLy8gNS4gUmV0dXJuIEZvcm1hdERhdGVUaW1lKGR0
ZiwgeCkuCisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShmb3JtYXQtPmZvcm1hdCgqc3RhdGUs
IHZhbHVlKSk7Cit9CisKIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgSW50bERhdGVUaW1l
Rm9ybWF0UHJvdG90eXBlR2V0dGVyRm9ybWF0KEV4ZWNTdGF0ZSogc3RhdGUpCiB7CiAgICAgLy8g
MTIuMy4zIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdCAoRUNNQS00MDIgMi4w
KQpAQCAtOTQsNyArMTIwLDcgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0
ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0YXRlKgogICAgIC8vIDIuIFJl
dHVybklmQWJydXB0KGR0ZikuCiAgICAgaWYgKCFkdGYpCiAgICAgICAgIHJldHVybiBKU1ZhbHVl
OjplbmNvZGUodGhyb3dUeXBlRXJyb3Ioc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiSW50bC5EYXRlVGlt
ZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0IGNhbGxlZCBvbiB2YWx1ZSB0aGF0J3Mgbm90IGFuIG9i
amVjdCBpbml0aWFsaXplZCBhcyBhIERhdGVUaW1lRm9ybWF0IikpKTsKLSAgICAKKwogICAgIEpT
Qm91bmRGdW5jdGlvbiogYm91bmRGb3JtYXQgPSBkdGYtPmJvdW5kRm9ybWF0KCk7CiAgICAgLy8g
My4gSWYgdGhlIFtbYm91bmRGb3JtYXRdXSBpbnRlcm5hbCBzbG90IG9mIHRoaXMgRGF0ZVRpbWVG
b3JtYXQgb2JqZWN0IGlzIHVuZGVmaW5lZCwKICAgICBpZiAoIWJvdW5kRm9ybWF0KSB7CkBAIC0x
MDYsNyArMTMyLDcgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVG
b3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0YXRlKgogICAgICAgICBKU0FycmF5KiBi
b3VuZEFyZ3MgPSBKU0FycmF5Ojp0cnlDcmVhdGVVbmluaXRpYWxpemVkKHZtLCBnbG9iYWxPYmpl
Y3QtPmFycmF5U3RydWN0dXJlRm9ySW5kZXhpbmdUeXBlRHVyaW5nQWxsb2NhdGlvbihBcnJheVdp
dGhVbmRlY2lkZWQpLCAwKTsKICAgICAgICAgaWYgKCFib3VuZEFyZ3MpCiAgICAgICAgICAgICBy
ZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93T3V0T2ZNZW1vcnlFcnJvcihzdGF0ZSkpOwotICAg
ICAgICAKKwogICAgICAgICAvLyBjLiBMZXQgYmYgYmUgQm91bmRGdW5jdGlvbkNyZWF0ZShGLCDC
q3RoaXMgdmFsdWXCuykuCiAgICAgICAgIGJvdW5kRm9ybWF0ID0gSlNCb3VuZEZ1bmN0aW9uOjpj
cmVhdGUodm0sIGdsb2JhbE9iamVjdCwgdGFyZ2V0T2JqZWN0LCBkdGYsIGJvdW5kQXJncywgMSwg
QVNDSUlMaXRlcmFsKCJmb3JtYXQiKSk7CiAgICAgICAgIC8vIGQuIFNldCBkdGYuW1tib3VuZEZv
cm1hdF1dIHRvIGJmLgpAQCAtMTE5LDE4ICsxNDUsMTEgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hP
U1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVHZXR0ZXJGb3JtYXQoRXhlY1N0YXRl
KgogRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5
cGVGdW5jUmVzb2x2ZWRPcHRpb25zKEV4ZWNTdGF0ZSogc3RhdGUpCiB7CiAgICAgLy8gMTIuMy41
IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIChFQ01BLTQw
MiAyLjApCi0gICAgSW50bERhdGVUaW1lRm9ybWF0KiBkdGYgPSBqc0R5bmFtaWNDYXN0PEludGxE
YXRlVGltZUZvcm1hdCo+KHN0YXRlLT50aGlzVmFsdWUoKSk7Ci0gICAgaWYgKCFkdGYpCisgICAg
SW50bERhdGVUaW1lRm9ybWF0KiBkYXRlVGltZUZvcm1hdCA9IGpzRHluYW1pY0Nhc3Q8SW50bERh
dGVUaW1lRm9ybWF0Kj4oc3RhdGUtPnRoaXNWYWx1ZSgpKTsKKyAgICBpZiAoIWRhdGVUaW1lRm9y
bWF0KQogICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93VHlwZUVycm9yKHN0YXRl
LCBBU0NJSUxpdGVyYWwoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucyBjYWxsZWQgb24gdmFsdWUgdGhhdCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMg
YSBEYXRlVGltZUZvcm1hdCIpKSk7CiAKLSAgICAvLyBUaGUgZnVuY3Rpb24gcmV0dXJucyBhIG5l
dyBvYmplY3Qgd2hvc2UgcHJvcGVydGllcyBhbmQgYXR0cmlidXRlcyBhcmUgc2V0IGFzIGlmIGNv
bnN0cnVjdGVkIGJ5IGFuIG9iamVjdCBsaXRlcmFsIGFzc2lnbmluZyB0byBlYWNoIG9mIHRoZSBm
b2xsb3dpbmcgcHJvcGVydGllcyB0aGUgdmFsdWUgb2YgdGhlIGNvcnJlc3BvbmRpbmcgaW50ZXJu
YWwgc2xvdCBvZiB0aGlzIERhdGVUaW1lRm9ybWF0IG9iamVjdCAoc2VlIDEyLjQpOiBsb2NhbGUs
IGNhbGVuZGFyLCBudW1iZXJpbmdTeXN0ZW0sIHRpbWVab25lLCBob3VyMTIsIHdlZWtkYXksIGVy
YSwgeWVhciwgbW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQsIGFuZCB0aW1lWm9uZU5h
bWUuIFByb3BlcnRpZXMgd2hvc2UgY29ycmVzcG9uZGluZyBpbnRlcm5hbCBzbG90cyBhcmUgbm90
IHByZXNlbnQgYXJlIG5vdCBhc3NpZ25lZC4KLSAgICAvLyBOb3RlOiBJbiB0aGlzIHZlcnNpb24g
b2YgdGhlIEVDTUFTY3JpcHQgMjAxNSBJbnRlcm5hdGlvbmFsaXphdGlvbiBBUEksIHRoZSB0aW1l
Wm9uZSBwcm9wZXJ0eSB3aWxsIGJlIHRoZSBuYW1lIG9mIHRoZSBkZWZhdWx0IHRpbWUgem9uZSBp
ZiBubyB0aW1lWm9uZSBwcm9wZXJ0eSB3YXMgcHJvdmlkZWQgaW4gdGhlIG9wdGlvbnMgb2JqZWN0
IHByb3ZpZGVkIHRvIHRoZSBJbnRsLkRhdGVUaW1lRm9ybWF0IGNvbnN0cnVjdG9yLiBUaGUgcHJl
dmlvdXMgdmVyc2lvbiBsZWZ0IHRoZSB0aW1lWm9uZSBwcm9wZXJ0eSB1bmRlZmluZWQgaW4gdGhp
cyBjYXNlLgotCi0gICAgSlNPYmplY3QqIG9wdGlvbnMgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdChz
dGF0ZSk7Ci0KLSAgICAvLyBGSVhNRTogUG9wdWxhdGUgb2JqZWN0IGZyb20gaW50ZXJuYWwgc2xv
dHMuCi0KLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKG9wdGlvbnMpOworICAgIHJldHVybiBK
U1ZhbHVlOjplbmNvZGUoZGF0ZVRpbWVGb3JtYXQtPnJlc29sdmVkT3B0aW9ucygqc3RhdGUpKTsK
IH0KIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JbnRsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxPYmplY3QuY3BwCmluZGV4IGNkOTA2ODYzYjE5ZGQzY2I3NDI3OTlmNDJkODQyYzc0MTE0
ODczYmEuLmY5OGNkNTRmYTdhMDA5YWU2N2U3NmYzY2JkZTZjOWRiOGQzNzQ5ZWQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuY3BwCkBAIC00NSw3ICs0NSw5
IEBACiAjaW5jbHVkZSAiTG9va3VwLmgiCiAjaW5jbHVkZSAiT2JqZWN0UHJvdG90eXBlLmgiCiAj
aW5jbHVkZSA8dW5pY29kZS91bG9jLmg+CisjaW5jbHVkZSA8dW5pY29kZS91bnVtc3lzLmg+CiAj
aW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KKyNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQu
aD4KIAogbmFtZXNwYWNlIEpTQyB7CiAKQEAgLTc1MSw2ICs3NTMsNyBAQCBIYXNoTWFwPFN0cmlu
ZywgU3RyaW5nPiByZXNvbHZlTG9jYWxlKGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiYgYXZhaWxhYmxl
TG9jYWxlcywgYwogICAgICAgICAgICAgc2l6ZV90IGtleVBvcyA9IGV4dGVuc2lvblN1YnRhZ3Mu
ZmluZChrZXkpOwogICAgICAgICAgICAgLy8gaWkuIElmIGtleVBvcyAhPSAtMSwgdGhlbgogICAg
ICAgICAgICAgaWYgKGtleVBvcyAhPSBub3RGb3VuZCkgeworICAgICAgICAgICAgICAgIC8vIEZJ
WE1FOiBodHRwczovL2dpdGh1Yi5jb20vdGMzOS9lY21hNDAyL2lzc3Vlcy81OQogICAgICAgICAg
ICAgICAgIC8vIDEuIElmIGtleVBvcyArIDEgPCBleHRlbnNpb25TdWJ0YWdzTGVuZ3RoIGFuZCB0
aGUgbGVuZ3RoIG9mIHRoZSByZXN1bHQgb2YgR2V0KGV4dGVuc2lvblN1YnRhZ3MsIFRvU3RyaW5n
KGtleVBvcyArMSkpIGlzIGdyZWF0ZXIgdGhhbiAyLCB0aGVuCiAgICAgICAgICAgICAgICAgaWYg
KGtleVBvcyArIDEgPCBleHRlbnNpb25TdWJ0YWdzLnNpemUoKSAmJiBleHRlbnNpb25TdWJ0YWdz
W2tleVBvcyArIDFdLmxlbmd0aCgpID4gMikgewogICAgICAgICAgICAgICAgICAgICBjb25zdCBT
dHJpbmcmIHJlcXVlc3RlZFZhbHVlID0gZXh0ZW5zaW9uU3VidGFnc1trZXlQb3MgKyAxXTsKQEAg
LTkyMSw2ICs5MjQsMzcgQEAgSlNWYWx1ZSBzdXBwb3J0ZWRMb2NhbGVzKEV4ZWNTdGF0ZSYgc3Rh
dGUsIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiYgYXZhaWxhYmxlTG9jYWwKICAgICByZXR1cm4gc3Vw
cG9ydGVkTG9jYWxlczsKIH0KIAorVmVjdG9yPFN0cmluZz4gZ2V0TnVtYmVyaW5nU3lzdGVtc0Zv
ckxvY2FsZShjb25zdCBTdHJpbmcmIGxvY2FsZSkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95
ZWQ8VmVjdG9yPFN0cmluZz4+IGNhY2hlZE51bWJlcmluZ1N5c3RlbXM7CisgICAgVmVjdG9yPFN0
cmluZz4mIGF2YWlsYWJsZU51bWJlcmluZ1N5c3RlbXMgPSBjYWNoZWROdW1iZXJpbmdTeXN0ZW1z
LmdldCgpOworICAgIGlmIChhdmFpbGFibGVOdW1iZXJpbmdTeXN0ZW1zLmlzRW1wdHkoKSkgewor
ICAgICAgICBVRXJyb3JDb2RlIHN0YXR1cyhVX1pFUk9fRVJST1IpOworICAgICAgICBVRW51bWVy
YXRpb24qIG51bWJlcmluZ1N5c3RlbU5hbWVzID0gdW51bXN5c19vcGVuQXZhaWxhYmxlTmFtZXMo
JnN0YXR1cyk7CisgICAgICAgIEFTU0VSVChVX1NVQ0NFU1Moc3RhdHVzKSk7CisgICAgICAgIHN0
YXR1cyA9IFVfWkVST19FUlJPUjsKKworICAgICAgICBpbnQzMl90IHJlc3VsdExlbmd0aDsKKyAg
ICAgICAgLy8gTnVtYmVyaW5nIHN5c3RlbSBuYW1lcyBhcmUgYWx3YXlzIEFTQ0lJLCBzbyB1c2Ug
Y2hhcltdLgorICAgICAgICB3aGlsZSAoY29uc3QgY2hhciogcmVzdWx0ID0gdWVudW1fbmV4dChu
dW1iZXJpbmdTeXN0ZW1OYW1lcywgJnJlc3VsdExlbmd0aCwgJnN0YXR1cykpIHsKKyAgICAgICAg
ICAgIEFTU0VSVChVX1NVQ0NFU1Moc3RhdHVzKSk7CisgICAgICAgICAgICBzdGF0dXMgPSBVX1pF
Uk9fRVJST1I7CisgICAgICAgICAgICBhdmFpbGFibGVOdW1iZXJpbmdTeXN0ZW1zLmFwcGVuZChT
dHJpbmcocmVzdWx0LCByZXN1bHRMZW5ndGgpKTsKKyAgICAgICAgfQorICAgICAgICB1ZW51bV9j
bG9zZShudW1iZXJpbmdTeXN0ZW1OYW1lcyk7CisgICAgfQorCisgICAgVUVycm9yQ29kZSBzdGF0
dXMoVV9aRVJPX0VSUk9SKTsKKyAgICBVTnVtYmVyaW5nU3lzdGVtKiBkZWZhdWx0U3lzdGVtID0g
dW51bXN5c19vcGVuKGxvY2FsZS51dGY4KCkuZGF0YSgpLCAmc3RhdHVzKTsKKyAgICBBU1NFUlQo
VV9TVUNDRVNTKHN0YXR1cykpOworICAgIFN0cmluZyBkZWZhdWx0U3lzdGVtTmFtZSh1bnVtc3lz
X2dldE5hbWUoZGVmYXVsdFN5c3RlbSkpOworICAgIHVudW1zeXNfY2xvc2UoZGVmYXVsdFN5c3Rl
bSk7CisKKyAgICBWZWN0b3I8U3RyaW5nPiBudW1iZXJpbmdTeXN0ZW1zKHsgZGVmYXVsdFN5c3Rl
bU5hbWUgfSk7CisgICAgbnVtYmVyaW5nU3lzdGVtcy5hcHBlbmRWZWN0b3IoYXZhaWxhYmxlTnVt
YmVyaW5nU3lzdGVtcyk7CisgICAgcmV0dXJuIG51bWJlcmluZ1N5c3RlbXM7Cit9CisKIH0gLy8g
bmFtZXNwYWNlIEpTQwogCiAjZW5kaWYgLy8gRU5BQkxFKElOVEwpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmgKaW5kZXggMzE4OTk4Mjc0ZjAwZTk5MTA4NmFkZGZj
NjMxMGM5YmM5ZDI2NDUxZC4uMjk2YTkwYWY2MzhmMDg0N2VkMjk5YjhlODRiYjE2NmEwNjliODk5
YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaApAQCAtNjQs
OCArNjQsOSBAQCBTdHJpbmcgaW50bFN0cmluZ09wdGlvbihFeGVjU3RhdGUmLCBKU1ZhbHVlIG9w
dGlvbnMsIFByb3BlcnR5TmFtZSwgc3RkOjppbml0aWFsaQogVmVjdG9yPFN0cmluZz4gY2Fub25p
Y2FsaXplTG9jYWxlTGlzdChFeGVjU3RhdGUmLCBKU1ZhbHVlIGxvY2FsZXMpOwogSGFzaE1hcDxT
dHJpbmcsIFN0cmluZz4gcmVzb2x2ZUxvY2FsZShjb25zdCBIYXNoU2V0PFN0cmluZz4mIGF2YWls
YWJsZUxvY2FsZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiByZXF1ZXN0ZWRMb2NhbGVzLCBjb25z
dCBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiYgb3B0aW9ucywgY29uc3QgY2hhciogY29uc3QgcmVs
ZXZhbnRFeHRlbnNpb25LZXlzW10sIHNpemVfdCByZWxldmFudEV4dGVuc2lvbktleUNvdW50LCBW
ZWN0b3I8U3RyaW5nPiAoKmxvY2FsZURhdGEpKGNvbnN0IFN0cmluZyYsIHNpemVfdCkpOwogSlNW
YWx1ZSBzdXBwb3J0ZWRMb2NhbGVzKEV4ZWNTdGF0ZSYsIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPiYg
YXZhaWxhYmxlTG9jYWxlcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHJlcXVlc3RlZExvY2FsZXMs
IEpTVmFsdWUgb3B0aW9ucyk7Ci1TdHJpbmcgcmVtb3ZlVW5pY29kZUxvY2FsZUV4dGVuc2lvbihj
b25zdCBTdHJpbmcmKTsKLVN0cmluZyBiZXN0QXZhaWxhYmxlTG9jYWxlKGNvbnN0IEhhc2hTZXQ8
U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYpOworU3RyaW5nIHJlbW92ZVVuaWNvZGVMb2NhbGVFeHRl
bnNpb24oY29uc3QgU3RyaW5nJiBsb2NhbGUpOworU3RyaW5nIGJlc3RBdmFpbGFibGVMb2NhbGUo
Y29uc3QgSGFzaFNldDxTdHJpbmc+JiBhdmFpbGFibGVMb2NhbGVzLCBjb25zdCBTdHJpbmcmIHJl
cXVlc3RlZExvY2FsZSk7CitWZWN0b3I8U3RyaW5nPiBnZXROdW1iZXJpbmdTeXN0ZW1zRm9yTG9j
YWxlKGNvbnN0IFN0cmluZyYgbG9jYWxlKTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRpb25zV2luLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlv
bnNXaW4uY21ha2UKaW5kZXggMGE4ODYxNzIxNzExNzNmZDVhMDBkMDc4OTAyYjg3NDMyYjIxZjU5
MS4uZTg4ZmM2YzhhZThkMDYxZWRmM2UxNzEzZDhhYTgzOThiYmQ3ZTBiZSAxMDA2NDQKLS0tIGEv
U291cmNlL2NtYWtlL09wdGlvbnNXaW4uY21ha2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNX
aW4uY21ha2UKQEAgLTU1LDcgKzU1LDYgQEAgV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFM
VUUoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCBQVUJMSUMgT0ZGKQogV0VCS0lUX09Q
VElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEggUFVCTElDIE9G
RikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9JTlBVVF9UWVBFX1RJ
TUUgUFVCTElDIE9GRikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9J
TlBVVF9UWVBFX1dFRUsgUFVCTElDIE9GRikKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZB
TFVFKEVOQUJMRV9JTlRMIFBVQkxJQyBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZB
TFVFKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUyBQVUJMSUMgT04pCiBXRUJLSVRf
T1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlMgUFVC
TElDIE9GRikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9MRUdBQ1lf
VkVORE9SX1BSRUZJWEVTIFBVQkxJQyBPRkYpCkBAIC0xNjMsMTEgKzE2MiwxMSBAQCBpZiAoTVNW
QykKIAogICAgICMgVHVybiBvZmYgY2VydGFpbiBsaW5rIGZlYXR1cmVzCiAgICAgYWRkX2NvbXBp
bGVfb3B0aW9ucygvR3ktIC9vcGVubXAtIC9HRi0pCi0gICAgCisKICAgICBpZiAoJHtDTUFLRV9C
VUlMRF9UWVBFfSBNQVRDSEVTICJEZWJ1ZyIpCiAgICAgICAgIHNldChDTUFLRV9TSEFSRURfTElO
S0VSX0ZMQUdTICIke0NNQUtFX1NIQVJFRF9MSU5LRVJfRkxBR1N9IC9PUFQ6Tk9SRUYgL09QVDpO
T0lDRiIpCiAgICAgICAgIHNldChDTUFLRV9FWEVfTElOS0VSX0ZMQUdTICIke0NNQUtFX0VYRV9M
SU5LRVJfRkxBR1N9IC9PUFQ6Tk9SRUYgL09QVDpOT0lDRiIpCi0gICAgICAgIAorCiAgICAgICAg
ICMgVG8gZGVidWcgbGlua2luZyB0aW1lIGlzc3VlcywgdW5jb21tZW50IHRoZSBmb2xsb3dpbmcg
dGhyZWUgbGluZXM6CiAgICAgICAgICNhZGRfY29tcGlsZV9vcHRpb25zKC9CdikKICAgICAgICAg
I3NldChDTUFLRV9TSEFSRURfTElOS0VSX0ZMQUdTICIke0NNQUtFX1NIQVJFRF9MSU5LRVJfRkxB
R1N9IC9WRVJCT1NFIC9WRVJCT1NFOklOQ1IgL1RJTUUiKQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2Vi
S2l0VGVzdFJ1bm5lci9XZWJLaXRUZXN0UnVubmVyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2og
Yi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1dlYktpdFRlc3RSdW5uZXIueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagppbmRleCA4ZTc1ZjY1MWE0YWFjNDNmYjU4MGMxNmQ1Njk0NzU0MzIyY2Q3Y2Mz
Li40YWY2MTU2NzVkMzIyZjIxOTA3MDEyMmE5NzExNjlmNWY2MDVlNjk5IDEwMDY0NAotLS0gYS9U
b29scy9XZWJLaXRUZXN0UnVubmVyL1dlYktpdFRlc3RSdW5uZXIueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1dlYktpdFRlc3RSdW5uZXIueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzQsMTkgKzM0LDE5IEBACiAKIC8qIEJlZ2luIFBC
WEJ1aWxkRmlsZSBzZWN0aW9uICovCiAJCTBGNTE2OUNDMTQ0NTIyMkQwMEUwQTlENyAvKiBXZWJL
aXQuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMEY1MTY5Q0ExNDQ1MjIyRDAwRTBBOUQ3IC8qIFdlYktpdC5mcmFtZXdvcmsgKi87IH07
Ci0JCTBGNjIyQ0U5MUJCQjNBMUEwMDgzOEFEMyAvKiBUZXN0T3B0aW9ucy5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjYyMkNFODFCQkIzQTFBMDA4
MzhBRDMgLyogVGVzdE9wdGlvbnMuY3BwICovOyBzZXR0aW5ncyA9IHtBU1NFVF9UQUdTID0gKCk7
IH07IH07CisJCTBGNjIyQ0U5MUJCQjNBMUEwMDgzOEFEMyAvKiBUZXN0T3B0aW9ucy5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjYyMkNFODFCQkIz
QTFBMDA4MzhBRDMgLyogVGVzdE9wdGlvbnMuY3BwICovOyB9OwogCQkwRjczQjU1MTFCQTc4OTY4
MDA0QjNFRjQgLyogSlNVSVNjcmlwdENvbnRyb2xsZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY3M0I1NEYxQkE3ODk2ODAwNEIzRUY0IC8qIEpT
VUlTY3JpcHRDb250cm9sbGVyLmNwcCAqLzsgfTsKIAkJMEY3M0I1NTIxQkE3ODk2ODAwNEIzRUY0
IC8qIEpTVUlTY3JpcHRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAwRjczQjU1MDFCQTc4OTY4MDA0QjNFRjQgLyogSlNVSVNjcmlwdENv
bnRyb2xsZXIuaCAqLzsgfTsKIAkJMEY3M0I1NUExQkE3OTJGRjAwNEIzRUY0IC8qIEpTV3JhcHBl
ci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzk1
MkMwQzExRjNCOTY1MDAzMzk4QjQgLyogSlNXcmFwcGVyLmNwcCAqLzsgfTsKIAkJMEY3M0I1NUMx
QkE4OTA0MjAwNEIzRUY0IC8qIFVJU2NyaXB0Q29udHJvbGxlcklPUy5tbSBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGNzNCNTVCMUJBODkwNDIwMDRCM0VG
NCAvKiBVSVNjcmlwdENvbnRyb2xsZXJJT1MubW0gKi87IH07Ci0JCTBGODdCNjEzMUJBQ0FEODIw
MDRFQzU3MiAvKiBVSVNjcmlwdENvbnRyb2xsZXJNYWMubW0gaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjg3QjYxMTFCQUNBRDZGMDA0RUM1NzIgLyogVUlT
Y3JpcHRDb250cm9sbGVyTWFjLm1tICovOyBzZXR0aW5ncyA9IHtBU1NFVF9UQUdTID0gKCk7IH07
IH07Ci0JCTBGODdCNjE3MUJBQ0M0QzAwMDRFQzU3MiAvKiBUZXN0UnVubmVyV0tXZWJWaWV3Lm1t
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY4N0I2MTUx
QkFDQzRCOTAwNEVDNTcyIC8qIFRlc3RSdW5uZXJXS1dlYlZpZXcubW0gKi87IHNldHRpbmdzID0g
e0FTU0VUX1RBR1MgPSAoKTsgfTsgfTsKLQkJMEY4N0I2MTkxQkFDQzU1ODAwNEVDNTcyIC8qIExh
dW5jaC5zdG9yeWJvYXJkIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwRjg3QjYxODFCQUNDNTU4MDA0RUM1NzIgLyogTGF1bmNoLnN0b3J5Ym9hcmQgKi87
IHNldHRpbmdzID0ge0FTU0VUX1RBR1MgPSAoKTsgfTsgfTsKLQkJMEY4N0I2MUUxQkFDREE5MzAw
NEVDNTcyIC8qIFVJU2NyaXB0Q29udGV4dC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAwRjg3QjYxQTFCQUNEQTkzMDA0RUM1NzIgLyogVUlTY3JpcHRD
b250ZXh0LmNwcCAqLzsgc2V0dGluZ3MgPSB7QVNTRVRfVEFHUyA9ICgpOyB9OyB9OwotCQkwRjg3
QjYyMDFCQUNEQTkzMDA0RUM1NzIgLyogVUlTY3JpcHRDb250cm9sbGVyLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGODdCNjFDMUJBQ0RBOTMwMDRF
QzU3MiAvKiBVSVNjcmlwdENvbnRyb2xsZXIuY3BwICovOyBzZXR0aW5ncyA9IHtBU1NFVF9UQUdT
ID0gKCk7IH07IH07CisJCTBGODdCNjEzMUJBQ0FEODIwMDRFQzU3MiAvKiBVSVNjcmlwdENvbnRy
b2xsZXJNYWMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwRjg3QjYxMTFCQUNBRDZGMDA0RUM1NzIgLyogVUlTY3JpcHRDb250cm9sbGVyTWFjLm1tICov
OyB9OworCQkwRjg3QjYxNzFCQUNDNEMwMDA0RUM1NzIgLyogVGVzdFJ1bm5lcldLV2ViVmlldy5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGODdCNjE1
MUJBQ0M0QjkwMDRFQzU3MiAvKiBUZXN0UnVubmVyV0tXZWJWaWV3Lm1tICovOyB9OworCQkwRjg3
QjYxOTFCQUNDNTU4MDA0RUM1NzIgLyogTGF1bmNoLnN0b3J5Ym9hcmQgaW4gUmVzb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGODdCNjE4MUJBQ0M1NTgwMDRFQzU3
MiAvKiBMYXVuY2guc3Rvcnlib2FyZCAqLzsgfTsKKwkJMEY4N0I2MUUxQkFDREE5MzAwNEVDNTcy
IC8qIFVJU2NyaXB0Q29udGV4dC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwRjg3QjYxQTFCQUNEQTkzMDA0RUM1NzIgLyogVUlTY3JpcHRDb250ZXh0
LmNwcCAqLzsgfTsKKwkJMEY4N0I2MjAxQkFDREE5MzAwNEVDNTcyIC8qIFVJU2NyaXB0Q29udHJv
bGxlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
Rjg3QjYxQzFCQUNEQTkzMDA0RUM1NzIgLyogVUlTY3JpcHRDb250cm9sbGVyLmNwcCAqLzsgfTsK
IAkJMEZFQjkwQTAxOTA1QTgzNDAwMEZEQkYzIC8qIEluamVjdGVkQnVuZGxlUGFnZUNvY29hLm1t
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEZFQjkwOUUx
OTA1QTc3NjAwMEZEQkYzIC8qIEluamVjdGVkQnVuZGxlUGFnZUNvY29hLm1tICovOyB9OwogCQkw
RkVCOTBBNTE5MDVDMDE2MDAwRkRCRjMgLyogQ3Jhc2hSZXBvcnRlckluZm8ubW0gaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkVCOTBBMzE5MDVCQzZBMDAw
RkRCRjMgLyogQ3Jhc2hSZXBvcnRlckluZm8ubW0gKi87IH07Ci0JCTBGRUJGODVBMUJCNjFERjIw
MDI4NzIyRCAvKiBISURFdmVudEdlbmVyYXRvci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGRUJGODU5MUJCNjFERjIwMDI4NzIyRCAvKiBISURFdmVu
dEdlbmVyYXRvci5tbSAqLzsgc2V0dGluZ3MgPSB7QVNTRVRfVEFHUyA9ICgpOyB9OyB9OworCQkw
RkVCRjg1QTFCQjYxREYyMDAyODcyMkQgLyogSElERXZlbnRHZW5lcmF0b3IubW0gaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkVCRjg1OTFCQjYxREYyMDAy
ODcyMkQgLyogSElERXZlbnRHZW5lcmF0b3IubW0gKi87IH07CiAJCTFDQTIxMUM5MUJDQTEwNzMw
MEIyMTAxRiAvKiBGb250V2l0aEZlYXR1cmVzLm90ZiBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNBMjExQzcxQkNBMTA3MzAwQjIxMDFGIC8qIEZvbnRX
aXRoRmVhdHVyZXMub3RmICovOyB9OwogCQkxQ0EyMTFDQTFCQ0ExMDczMDBCMjEwMUYgLyogRm9u
dFdpdGhGZWF0dXJlcy50dGYgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFDQTIxMUM4MUJDQTEwNzMwMEIyMTAxRiAvKiBGb250V2l0aEZlYXR1cmVzLnR0
ZiAqLzsgfTsKIAkJMjkyMTBFQUUxNDRDQUNCNzAwODM1QkI1IC8qIEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MjkyMTBFQTkxNDRDQUNCMjAwODM1QkI1IC8qIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQuY3BwICov
OyB9OwpAQCAtOTMsMTcgKzkzLDE3IEBACiAJCTY1RUI4NUEwMTFFQzY3Q0MwMDM0RDMwMCAvKiBB
Y3RpdmF0ZUZvbnRzQ29jb2EubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA2NUVCODU5RjExRUM2N0NDMDAzNEQzMDAgLyogQWN0aXZhdGVGb250c0NvY29h
Lm1tICovOyB9OwogCQk4MDM0QzY2MjE0ODc2MzY0MDBBQzMyRTkgLyogQWNjZXNzaWJpbGl0eUNv
bnRyb2xsZXJNYWMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA4MDM0QzY2MTE0ODc2MzY0MDBBQzMyRTkgLyogQWNjZXNzaWJpbGl0eUNvbnRyb2xsZXJN
YWMubW0gKi87IH07CiAJCTgwOTczMzhBMTQ4NzRBNUEwMDgxNTZEOSAvKiBBY2Nlc3NpYmlsaXR5
Tm90aWZpY2F0aW9uSGFuZGxlci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDgwOTczMzg5MTQ4NzRBNUEwMDgxNTZEOSAvKiBBY2Nlc3NpYmlsaXR5Tm90
aWZpY2F0aW9uSGFuZGxlci5tbSAqLzsgfTsKLQkJQTE4NTEwM0ExQjlBRTBEQTAwNzQ0QUVCIC8q
IENyYXNoUmVwb3J0ZXJJbmZvLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMEZFQjkwQTMxOTA1QkM2QTAwMEZEQkYzIC8qIENyYXNoUmVwb3J0ZXJJbmZv
Lm1tICovOyBzZXR0aW5ncyA9IHtBU1NFVF9UQUdTID0gKCk7IH07IH07Ci0JCUExODUxMDNCMUI5
QUUwRTIwMDc0NEFFQiAvKiBUZXN0Q29udHJvbGxlckNvY29hLm1tIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkRDRTJDRDExQjg0NTI0NTAwQzdGODMyIC8q
IFRlc3RDb250cm9sbGVyQ29jb2EubW0gKi87IHNldHRpbmdzID0ge0FTU0VUX1RBR1MgPSAoKTsg
fTsgfTsKLQkJQTE4NTEwM0MxQjlBRTBGRTAwNzQ0QUVCIC8qIE9wdGlvbnMuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQxQ0MwMEQxODExODVCRjAw
NDJFOUI2IC8qIE9wdGlvbnMuY3BwICovOyBzZXR0aW5ncyA9IHtBU1NFVF9UQUdTID0gKCk7IH07
IH07Ci0JCUExODUxMDNEMUI5QUUxMDYwMDc0NEFFQiAvKiBUZXN0SW52b2NhdGlvbkNHLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDOTE5MjA0MTMz
M0U0RjgwMDMwMTFEQyAvKiBUZXN0SW52b2NhdGlvbkNHLmNwcCAqLzsgc2V0dGluZ3MgPSB7QVNT
RVRfVEFHUyA9ICgpOyB9OyB9OwotCQlBMTg1MTAzRTFCOUFFMTIyMDA3NDRBRUIgLyogQ3ljbGlj
UmVkdW5kYW5jeUNoZWNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUzMjJGQjQxMTNGREEwQ0QwMDQxQUJDQyAvKiBDeWNsaWNSZWR1bmRhbmN5Q2hl
Y2suY3BwICovOyBzZXR0aW5ncyA9IHtBU1NFVF9UQUdTID0gKCk7IH07IH07Ci0JCUExODUxMDNG
MUI5QUUxMjkwMDc0NEFFQiAvKiBHZW9sb2NhdGlvblByb3ZpZGVyTW9jay5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyNkQ3NThFNTE2MEJFQ0RDMDAy
Njg0NzIgLyogR2VvbG9jYXRpb25Qcm92aWRlck1vY2suY3BwICovOyBzZXR0aW5ncyA9IHtBU1NF
VF9UQUdTID0gKCk7IH07IH07Ci0JCUExODUxMDQwMUI5QUUxMzEwMDc0NEFFQiAvKiBQaXhlbER1
bXBTdXBwb3J0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDUzMjJGQjQ0MTNGREEwRUEwMDQxQUJDQyAvKiBQaXhlbER1bXBTdXBwb3J0LmNwcCAqLzsg
c2V0dGluZ3MgPSB7QVNTRVRfVEFHUyA9ICgpOyB9OyB9OwotCQlBMTg1MTA0MTFCOUFFMTM4MDA3
NDRBRUIgLyogVGVzdENvbnRyb2xsZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQkM3OTM0MzAxMThGN0YxOTAwNUVBOEUyIC8qIFRlc3RDb250cm9s
bGVyLmNwcCAqLzsgc2V0dGluZ3MgPSB7QVNTRVRfVEFHUyA9ICgpOyB9OyB9OwotCQlBMTg1MTA0
MjFCOUFFMTNFMDA3NDRBRUIgLyogVGVzdEludm9jYXRpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNEN0QyRjcxMTkyMTI3ODAwNkRCN0VFIC8q
IFRlc3RJbnZvY2F0aW9uLmNwcCAqLzsgc2V0dGluZ3MgPSB7QVNTRVRfVEFHUyA9ICgpOyB9OyB9
OwotCQlBMTg1MTA0MzFCOUFFMTQ1MDA3NDRBRUIgLyogV2ViTm90aWZpY2F0aW9uUHJvdmlkZXIu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NEM4
RUYxNUQxQURBMTAwRUYxRkUwIC8qIFdlYk5vdGlmaWNhdGlvblByb3ZpZGVyLmNwcCAqLzsgc2V0
dGluZ3MgPSB7QVNTRVRfVEFHUyA9ICgpOyB9OyB9OwotCQlBMTg1MTA0NDFCOUFFMTRBMDA3NDRB
RUIgLyogV29ya1F1ZXVlTWFuYWdlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0NDI5RkM1RTE2MjcwODk2MDBGNjZEOEIgLyogV29ya1F1ZXVlTWFu
YWdlci5jcHAgKi87IHNldHRpbmdzID0ge0FTU0VUX1RBR1MgPSAoKTsgfTsgfTsKKwkJQTE4NTEw
M0ExQjlBRTBEQTAwNzQ0QUVCIC8qIENyYXNoUmVwb3J0ZXJJbmZvLm1tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEZFQjkwQTMxOTA1QkM2QTAwMEZEQkYz
IC8qIENyYXNoUmVwb3J0ZXJJbmZvLm1tICovOyB9OworCQlBMTg1MTAzQjFCOUFFMEUyMDA3NDRB
RUIgLyogVGVzdENvbnRyb2xsZXJDb2NvYS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDJEQ0UyQ0QxMUI4NDUyNDUwMEM3RjgzMiAvKiBUZXN0Q29udHJv
bGxlckNvY29hLm1tICovOyB9OworCQlBMTg1MTAzQzFCOUFFMEZFMDA3NDRBRUIgLyogT3B0aW9u
cy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDFD
QzAwRDE4MTE4NUJGMDA0MkU5QjYgLyogT3B0aW9ucy5jcHAgKi87IH07CisJCUExODUxMDNEMUI5
QUUxMDYwMDc0NEFFQiAvKiBUZXN0SW52b2NhdGlvbkNHLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDOTE5MjA0MTMzM0U0RjgwMDMwMTFEQyAvKiBU
ZXN0SW52b2NhdGlvbkNHLmNwcCAqLzsgfTsKKwkJQTE4NTEwM0UxQjlBRTEyMjAwNzQ0QUVCIC8q
IEN5Y2xpY1JlZHVuZGFuY3lDaGVjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MzIyRkI0MTEzRkRBMENEMDA0MUFCQ0MgLyogQ3ljbGljUmVkdW5k
YW5jeUNoZWNrLmNwcCAqLzsgfTsKKwkJQTE4NTEwM0YxQjlBRTEyOTAwNzQ0QUVCIC8qIEdlb2xv
Y2F0aW9uUHJvdmlkZXJNb2NrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDI2RDc1OEU1MTYwQkVDREMwMDI2ODQ3MiAvKiBHZW9sb2NhdGlvblByb3Zp
ZGVyTW9jay5jcHAgKi87IH07CisJCUExODUxMDQwMUI5QUUxMzEwMDc0NEFFQiAvKiBQaXhlbER1
bXBTdXBwb3J0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDUzMjJGQjQ0MTNGREEwRUEwMDQxQUJDQyAvKiBQaXhlbER1bXBTdXBwb3J0LmNwcCAqLzsg
fTsKKwkJQTE4NTEwNDExQjlBRTEzODAwNzQ0QUVCIC8qIFRlc3RDb250cm9sbGVyLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNzkzNDMwMTE4RjdG
MTkwMDVFQThFMiAvKiBUZXN0Q29udHJvbGxlci5jcHAgKi87IH07CisJCUExODUxMDQyMUI5QUUx
M0UwMDc0NEFFQiAvKiBUZXN0SW52b2NhdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0Q3RDJGNzExOTIxMjc4MDA2REI3RUUgLyogVGVzdElu
dm9jYXRpb24uY3BwICovOyB9OworCQlBMTg1MTA0MzFCOUFFMTQ1MDA3NDRBRUIgLyogV2ViTm90
aWZpY2F0aW9uUHJvdmlkZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMzE2NEM4RUYxNUQxQURBMTAwRUYxRkUwIC8qIFdlYk5vdGlmaWNhdGlvblBy
b3ZpZGVyLmNwcCAqLzsgfTsKKwkJQTE4NTEwNDQxQjlBRTE0QTAwNzQ0QUVCIC8qIFdvcmtRdWV1
ZU1hbmFnZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNDQyOUZDNUUxNjI3MDg5NjAwRjY2RDhCIC8qIFdvcmtRdWV1ZU1hbmFnZXIuY3BwICovOyB9
OwogCQlBNjY0QkM3NjEzQTVGM0E5MDA5QTdCMjUgLyogbGliV2ViQ29yZVRlc3RTdXBwb3J0LmR5
bGliIGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEy
MzBFMTYxMzhDNzhCRjAwQkNDRkNBIC8qIGxpYldlYkNvcmVUZXN0U3VwcG9ydC5keWxpYiAqLzsg
fTsKIAkJQkMxNEU0REIxMjBFMDJEMDAwODI2QzBDIC8qIEdDQ29udHJvbGxlci5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzE0RTREOTEyMEUwMkQw
MDA4MjZDMEMgLyogR0NDb250cm9sbGVyLmNwcCAqLzsgfTsKIAkJQkMxNEU0RUExMjBFMDNEODAw
ODI2QzBDIC8qIEpTR0NDb250cm9sbGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEJDMTRFNEU4MTIwRTAzRDgwMDgyNkMwQyAvKiBKU0dDQ29udHJv
bGxlci5jcHAgKi87IH07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNTQyMTU3ZDBmZDQyOTZhZDVjZWFjNTIyNWZhY2YyM2I3
NjkzN2E1My4uODc3MWVlNTgwMzYxZmU0N2EzMmRjMTliNTM5MzhkOGQzMDNhY2I4OCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDE1LTEyLTIxICBBbmR5IFZhbldhZ29uZXIgIDxhbmR5QGluc3Ry
dWN0dXJlLmNvbT4KKworICAgICAgICBbSU5UTF0gSW1wbGVtZW50IEludGwuRGF0ZVRpbWVGb3Jt
YXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyAoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3NjAzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBqcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVk
LnR4dDogQWRkZWQgcmVzb2x2ZWRPcHRpb25zIHRlc3RzLgorICAgICAgICAqIGpzL3NjcmlwdC10
ZXN0cy9pbnRsLWRhdGV0aW1lZm9ybWF0LmpzOiBBZGRlZCByZXNvbHZlZE9wdGlvbnMgdGVzdHMu
CisgICAgICAgIChzdHJpbmdfYXBwZWFyZWRfaGVyZSk6CisKIDIwMTUtMTItMjEgIEFuZHkgVmFu
V2Fnb25lciAgPHRoZXRhbGVjcmFmdGVyQGdtYWlsLmNvbT4KIAogICAgICAgICBbSU5UTF0gSW1w
bGVtZW50IFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZSBpbiBFQ01BLTQwMgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvanMvaW50bC1kYXRldGltZWZvcm1hdC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dAppbmRleCBkMDE2
YzgwMDQ3ZDY0ZDAyMzhiNWM5NmQ3YjkwYjZjNGFlMWM5ZWE0Li4yM2IwZmM1NjAwYjRlNTdlNWRm
NzQ4NjQ4YTY2ZmU0YmZhY2Y1OGI0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9pbnRsLWRh
dGV0aW1lZm9ybWF0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9qcy9pbnRsLWRhdGV0
aW1lZm9ybWF0LWV4cGVjdGVkLnR4dApAQCAtNTQsNyArNTQsNyBAQCBQQVNTIE9iamVjdC5kZWZp
bmVQcm9wZXJ0eSh7fSwgJ2Zvcm1hdCcsIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
SW50bC5EYQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQgIT09IElu
dGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQgaXMgdHJ1ZQogUEFTUyBuZXcgSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLmZvcm1hdCAhPT0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3JtYXQgaXMg
dHJ1ZQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQoeyB2YWx1ZU9m
KCkgeyB0aHJvdyBFcnJvcignNGInKSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogNGIuCi1Q
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdChJbmZpbml0eSkgdGhyZXcg
ZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGRhdGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRlVGlt
ZUZvcm1hdC5mb3JtYXQoKS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9y
bWF0KEluZmluaXR5KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogZGF0ZSB2YWx1ZSBpcyBu
b3QgZmluaXRlIGluIERhdGVUaW1lRm9ybWF0IGZvcm1hdCgpLgogUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2FsbChudWxsLCAwKSBpcyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCkuZm9ybWF0KDApCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1h
dC5jYWxsKEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyJyksIDApIGlzIEludGwuRGF0ZVRpbWVGb3Jt
YXQoKS5mb3JtYXQoMCkKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUuZm9ybWF0
LmNhbGwoNSwgMCkgaXMgSW50bC5EYXRlVGltZUZvcm1hdCgpLmZvcm1hdCgwKQpAQCAtNjMsOCAr
NjMsMTY5NyBAQCBQQVNTIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0LmNhbGwoSW50
bC5EYXRlVGltZUZvcm1hdCgnYXInKSwgMCkgaXMgSW50bAogUEFTUyBuZXcgSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLmZvcm1hdC5jYWxsKDUsIDApIGlzIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5mb3Jt
YXQoMCkKIFBBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
Lmxlbmd0aCBpcyAwCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVk
T3B0aW9ucygpIGlzIGFuIGluc3RhbmNlIG9mIE9iamVjdAorUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUgaXMgbmV3IEludGwuRGF0ZVRp
bWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgbmV3IEludGwuRGF0
ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZQorUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyBuZXcgSW50
bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3Rl
bSBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlv
bnMoKS53ZWVrZGF5IGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25z
KCkud2Vla2RheQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMoKS5lcmEgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMo
KS5lcmEKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
KCkueWVhciBpcyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnll
YXIKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCku
bW9udGggaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5tb250
aAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5k
YXkgaXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5kYXkKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuaG91ciBp
cyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIGlz
IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBp
cyBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZQorUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQg
aXMgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmVOYW1lIGlzIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmVOYW1lCiBQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucygpID09PSBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMo
KSBpcyBmYWxzZQogUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9w
dGlvbnMuY2FsbCg1KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBJbnRsLkRhdGVUaW1lRm9y
bWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMgY2FsbGVkIG9uIHZhbHVlIHRoYXQncyBub3Qg
YW4gb2JqZWN0IGluaXRpYWxpemVkIGFzIGEgRGF0ZVRpbWVGb3JtYXQuCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJyQnKSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogaW52YWxpZCBsYW5n
dWFnZSB0YWc6ICQuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgbnVsbCkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2
ZWRPcHRpb25zKCkud2Vla2RheSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMgJ251bWVyaWMnCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkuZGF5IGlzICdu
dW1lcmljJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygp
LnllYXIgaXMgJ251bWVyaWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2
ZWRPcHRpb25zKCkuaG91ciBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIGlzIHVuZGVmaW5lZAor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnNlY29uZCBp
cyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZU5hbWUgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBsb2NhbGVNYXRjaGVyOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbm9wZScgfSB9IH0p
IHRocmV3IGV4Y2VwdGlvbiBub3BlLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
bG9jYWxlTWF0Y2hlcjonYmFkJyB9KSB0aHJldyBleGNlcHRpb24gUmFuZ2VFcnJvcjogbG9jYWxl
TWF0Y2hlciBtdXN0IGJlIGVpdGhlciAibG9va3VwIiBvciAiYmVzdCBmaXQiLgorUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjonbG9va3VwJyB9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGxvY2Fs
ZU1hdGNoZXI6J2Jlc3QgZml0JyB9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6IHsgdG9TdHJpbmcoKSB7IHRo
cm93ICdub3BlJyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIG5vcGUuCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBmb3JtYXRNYXRjaGVyOidiYWQnIH0pIHRocmV3IGV4Y2VwdGlvbiBS
YW5nZUVycm9yOiBmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0aGVyICJiYXNpYyIgb3IgImJlc3Qg
Zml0Ii4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2Jh
c2ljJyB9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2Jlc3QgZml0JyB9KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnbm93aGVy
ZS9ib2d1cycgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGludmFsaWQgdGltZSB6b25l
OiBub3doZXJlL2JvZ3VzLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdub3BlJyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIG5v
cGUuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ2FtZXJpY2Ev
ZGVudmVyJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9EZW52ZXIn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FNRVJJQ0EvTE9T
X0FOR0VMRVMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0xvc19B
bmdlbGVzJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6IEludGwu
RGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
QW1lcmljYS9BdGthJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9B
ZGFrJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNh
L0Vuc2VuYWRhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9UaWp1
YW5hJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNh
L1BvcnRvX0FjcmUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL1Jp
b19CcmFuY28nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0Ft
ZXJpY2EvU2hpcHJvY2snIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNh
L0RlbnZlcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQW50
YXJjdGljYS9Tb3V0aF9Qb2xlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnUGFj
aWZpYy9BdWNrbGFuZCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnQXNpYS9Bc2hraGFiYWQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lh
L0FzaGdhYmF0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
c2lhL0Nob25ncWluZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvU2hh
bmdoYWknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEv
Q2h1bmdraW5nJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9TaGFuZ2hh
aScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9EYWNj
YScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvRGhha2EnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvSGFyYmluJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9TaGFuZ2hhaScKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXNpYS9LYXNoZ2FyJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9VcnVtcWknCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FzaWEvTWFjYW8nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdBc2lhL01hY2F1JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdBc2lhL1RlbF9Bdml2JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBp
cyAnQXNpYS9KZXJ1c2FsZW0nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0FzaWEvVGhpbWJ1JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNp
YS9UaGltcGh1JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
c2lhL1VqdW5nX1BhbmRhbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lh
L01ha2Fzc2FyJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
c2lhL1VsYW5fQmF0b3InIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBc2lhL1Vs
YWFuYmFhdGFyJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
dXN0cmFsaWEvQUNUJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXVzdHJhbGlh
L1N5ZG5leScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVz
dHJhbGlhL0NhbmJlcnJhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXVzdHJh
bGlhL1N5ZG5leScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
QXVzdHJhbGlhL0xISScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0F1c3RyYWxp
YS9Mb3JkX0hvd2UnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J0F1c3RyYWxpYS9OU1cnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBdXN0cmFs
aWEvU3lkbmV5JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
dXN0cmFsaWEvTm9ydGgnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBdXN0cmFs
aWEvRGFyd2luJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
dXN0cmFsaWEvUXVlZW5zbGFuZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0F1
c3RyYWxpYS9CcmlzYmFuZScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnQXVzdHJhbGlhL1NvdXRoJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAn
QXVzdHJhbGlhL0FkZWxhaWRlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBdXN0cmFsaWEvVGFzbWFuaWEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IGlzICdBdXN0cmFsaWEvSG9iYXJ0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdBdXN0cmFsaWEvVmljdG9yaWEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdBdXN0cmFsaWEvTWVsYm91cm5lJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvV2VzdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0F1c3RyYWxpYS9QZXJ0aCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1lhbmNvd2lubmEnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdBdXN0cmFsaWEvQnJva2VuX0hpbGwnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0JyYXppbC9BY3JlJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnQW1lcmljYS9SaW9fQnJhbmNvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6aWwvRGVOb3JvbmhhJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9Ob3JvbmhhJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6aWwvRWFzdCcgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUgaXMgJ0FtZXJpY2EvU2FvX1BhdWxvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6aWwvV2VzdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUgaXMgJ0FtZXJpY2EvTWFuYXVzJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdDYW5hZGEvQXRsYW50aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdBbWVyaWNhL0hhbGlmYXgnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0NhbmFkYS9DZW50cmFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSBpcyAnQW1lcmljYS9XaW5uaXBlZycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnQ2FuYWRhL0Vhc3QtU2Fza2F0Y2hld2FuJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnQW1lcmljYS9SZWdpbmEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9FYXN0ZXJuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSBpcyAnQW1lcmljYS9Ub3JvbnRvJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdDYW5hZGEvTW91bnRhaW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdBbWVyaWNhL0VkbW9udG9uJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdDYW5hZGEvTmV3Zm91bmRsYW5kJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnQW1lcmljYS9TdF9Kb2hucycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL1BhY2lmaWMnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdBbWVyaWNhL1ZhbmNvdXZlcicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL1Nhc2thdGNoZXdhbicgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvUmVnaW5hJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvWXVrb24nIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdBbWVyaWNhL1doaXRlaG9yc2UnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NoaWxlL0NvbnRpbmVudGFsJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9TYW50aWFnbycKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2hpbGUvRWFzdGVySXNsYW5kJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnUGFjaWZpYy9FYXN0ZXInCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0N1YmEnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIGlzICdBbWVyaWNhL0hhdmFuYScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnRWd5cHQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBZnJp
Y2EvQ2Fpcm8nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0Vp
cmUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdFdXJvcGUvRHVibGluJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdFdXJvcGUvQmVsZmFzdCcg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9Mb25kb24nCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0V1cm9wZS9UaXJhc3BvbCcgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9DaGlzaW5hdScKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR0InIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIGlzICdFdXJvcGUvTG9uZG9uJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdHQi1FaXJlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9u
ZSBpcyAnRXVyb3BlL0xvbmRvbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnR01UKzAnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0dNVC0wJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnVVRDJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdHTVQwJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBp
cyAnVVRDJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHcmVl
bndpY2gnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0hvbmdrb25nJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9Ib25nX0tvbmcnCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0ljZWxhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIGlzICdBdGxhbnRpYy9SZXlramF2aWsnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0lyYW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlz
ICdBc2lhL1RlaHJhbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnSXNyYWVsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9KZXJ1c2Fs
ZW0nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0phbWFpY2En
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdBbWVyaWNhL0phbWFpY2EnCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0phcGFuJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQXNpYS9Ub2t5bycKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnS3dhamFsZWluJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSBpcyAnUGFjaWZpYy9Ld2FqYWxlaW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0xpYnlhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBp
cyAnQWZyaWNhL1RyaXBvbGknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ01leGljby9CYWphTm9ydGUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlz
ICdBbWVyaWNhL1RpanVhbmEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ01leGljby9CYWphU3VyJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAn
QW1lcmljYS9NYXphdGxhbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnTWV4aWNvL0dlbmVyYWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdB
bWVyaWNhL01leGljb19DaXR5JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdOWicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1BhY2lmaWMvQXVj
a2xhbmQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ05aLUNI
QVQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdQYWNpZmljL0NoYXRoYW0nCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ05hdmFqbycgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvRGVudmVyJworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdQUkMnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIGlzICdBc2lhL1NoYW5naGFpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdQb2xhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlz
ICdFdXJvcGUvV2Fyc2F3JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdQb3J0dWdhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0V1cm9wZS9M
aXNib24nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1JPQycg
fSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FzaWEvVGFpcGVpJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdST0snIH0pLnJlc29sdmVkT3B0aW9u
cygpLnRpbWVab25lIGlzICdBc2lhL1Nlb3VsJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdTaW5nYXBvcmUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IGlzICdBc2lhL1NpbmdhcG9yZScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnVHVya2V5JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnRXVyb3Bl
L0lzdGFuYnVsJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdV
Q1QnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0FsYXNrYScgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvQW5jaG9yYWdlJworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9BbGV1dGlhbicgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvQWRhaycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnVVMvQXJpem9uYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUgaXMgJ0FtZXJpY2EvUGhvZW5peCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7
IHRpbWVab25lOiAnVVMvQ2VudHJhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMg
J0FtZXJpY2EvQ2hpY2FnbycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnVVMvRWFzdGVybicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJp
Y2EvTmV3X1lvcmsnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J1VTL0hhd2FpaScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ1BhY2lmaWMvSG9u
b2x1bHUnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL01p
Y2hpZ2FuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9EZXRyb2l0
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9Nb3VudGFp
bicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUgaXMgJ0FtZXJpY2EvRGVudmVyJworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9QYWNpZmljJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSBpcyAnQW1lcmljYS9Mb3NfQW5nZWxlcycKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvU2Ftb2EnIH0pLnJlc29s
dmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdQYWNpZmljL1BhZ29fUGFnbycKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVRDJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnVVRDJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdVbml2ZXJzYWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdVVEMn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1ctU1UnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIGlzICdFdXJvcGUvTW9zY293JworUEFTUyBJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdadWx1JyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSBpcyAnVVRDJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdhci1zYScpLnJl
c29sdmVkT3B0aW9ucygpLmxvY2FsZSBpcyAnYXItU0EnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2FyLXNhJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2lzbGFtaWMtdW1hbHF1
cmEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2FyLXNhJykucmVzb2x2ZWRPcHRpb25zKCku
bnVtYmVyaW5nU3lzdGVtIGlzICdhcmFiJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgY2FsZW5kYXI6J2RhbmdpJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnZ3Jl
Z29yaWFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWJvZ3VzJykucmVzb2x2
ZWRPcHRpb25zKCkubG9jYWxlIGlzICdlbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdncmVnb3JpYW4nCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtYnVkZGhpc3QnKS5yZXNvbHZlZE9wdGlv
bnMoKS5sb2NhbGUgaXMgJ2VuLXUtY2EtYnVkZGhpc3QnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtY2EtYnVkZGhpc3QnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBpcyAnYnVk
ZGhpc3QnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtY2hpbmVzZScpLnJlc29s
dmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdjaGluZXNlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LWNhLWNvcHRpYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdjb3B0
aWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZGFuZ2knKS5yZXNvbHZlZE9w
dGlvbnMoKS5jYWxlbmRhciBpcyAnZGFuZ2knCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
LXUtY2EtZXRoaW9hYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdldGhpb3BpYy1h
bWV0ZS1hbGVtJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWV0aGlvcGljJyku
cmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2V0aGlvcGljJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdhci1TQS11LWNhLWdyZWdvcnknKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRh
ciBpcyAnZ3JlZ29yaWFuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWhlYnJl
dycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdoZWJyZXcnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaW5kaWFuJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIg
aXMgJ2luZGlhbicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1pc2xhbWljJyku
cmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2lzbGFtaWMnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pY2MnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciBp
cyAnaXNsYW1pYy1jaXZpbCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1JU084
NjAxJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIgaXMgJ2lzbzg2MDEnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtamFwYW5lc2UnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxl
bmRhciBpcyAnamFwYW5lc2UnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtcGVy
c2lhbicpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIGlzICdwZXJzaWFuJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLXJvYycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFy
IGlzICdyb2MnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBudW1iZXJpbmdTeXN0
ZW06J2d1anInIH0pLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGF0bicK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9u
cygpLmxvY2FsZSBpcyAnZW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYm9n
dXMnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2xhdG4nCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGF0bicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSBpcyAnbGF0bicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1h
cmFiJykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIGlzICdlbi11LW51LWFyYWInCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtYXJhYicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJl
cmluZ1N5c3RlbSBpcyAnYXJhYicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1h
cmFiZXh0JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdhcmFiZXh0Jwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWFybW4nKS5yZXNvbHZlZE9wdGlvbnMo
KS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2FybW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
LXUtbnUtYXJtbmxvdycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnYXJt
bmxvdycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1iYWxpJykucmVzb2x2ZWRP
cHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdiYWxpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LW51LWJlbmcnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMg
J2JlbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtY2hhbScpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnY2hhbScKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1udS1kZXZhJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlz
ICdkZXZhJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWV0aGknKS5yZXNvbHZl
ZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2V0aGknCitQQVNTIEludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuLXUtbnUtZnVsbHdpZGUnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0gaXMgJ2Z1bGx3aWRlJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWdlb3In
KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2dlb3InCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtZ3JlaycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSBpcyAnZ3JlaycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ncmVr
bG93JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdncmVrbG93JworUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWd1anInKS5yZXNvbHZlZE9wdGlvbnMoKS5u
dW1iZXJpbmdTeXN0ZW0gaXMgJ2d1anInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUt
bnUtZ3VydScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnZ3VydScKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1oYW5pZGF5cycpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyAnaGFuaWRheXMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtbnUtaGFuaWRlYycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBp
cyAnaGFuaWRlYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1oYW5zJykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdoYW5zJworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LW51LWhhbnNmaW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdT
eXN0ZW0gaXMgJ2hhbnNmaW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtaGFu
dCcpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnaGFudCcKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1oYW50ZmluJykucmVzb2x2ZWRPcHRpb25zKCkubnVt
YmVyaW5nU3lzdGVtIGlzICdoYW50ZmluJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11
LW51LWhlYnInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2hlYnInCitQ
QVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtamF2YScpLnJlc29sdmVkT3B0aW9ucygp
Lm51bWJlcmluZ1N5c3RlbSBpcyAnamF2YScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4t
dS1udS1qcGFuJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdqcGFuJwor
UEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWpwYW5maW4nKS5yZXNvbHZlZE9wdGlv
bnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2pwYW5maW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtbnUta2FsaScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAn
a2FsaScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1raG1yJykucmVzb2x2ZWRP
cHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdraG1yJworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbi11LW51LWtuZGEnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMg
J2tuZGEnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGFuYScpLnJlc29sdmVk
T3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGFuYScKK1BBU1MgSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1udS1sYW5hdGhhbScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3Rl
bSBpcyAnbGFuYXRoYW0nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGFvbycp
LnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbGFvbycKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4tdS1udS1sYXRuJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5n
U3lzdGVtIGlzICdsYXRuJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LWxlcGMn
KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ2xlcGMnCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbGltYicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSBpcyAnbGltYicKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1tbHlt
JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdtbHltJworUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LW1vbmcnKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJp
bmdTeXN0ZW0gaXMgJ21vbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtbXRl
aScpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnbXRlaScKK1BBU1MgSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1teW1yJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVy
aW5nU3lzdGVtIGlzICdteW1yJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LW15
bXJzaGFuJykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICdteW1yc2hhbicK
K1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ua29vJykucmVzb2x2ZWRPcHRpb25z
KCkubnVtYmVyaW5nU3lzdGVtIGlzICdua29vJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bi11LW51LW9sY2snKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ29sY2sn
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtb3J5YScpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSBpcyAnb3J5YScKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1udS1yb21hbicpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAncm9t
YW4nCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtcm9tYW5sb3cnKS5yZXNvbHZl
ZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3JvbWFubG93JworUEFTUyBJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LW51LXNhdXInKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0
ZW0gaXMgJ3NhdXInCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtc3VuZCcpLnJl
c29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAnc3VuZCcKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4tdS1udS10YWx1JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lz
dGVtIGlzICd0YWx1JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LXRhbWwnKS5y
ZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0gaXMgJ3RhbWwnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtdGFtbGRlYycpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmlu
Z1N5c3RlbSBpcyAndGFtbGRlYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS10
ZWx1JykucmVzb2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtIGlzICd0ZWx1JworUEFTUyBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LW51LXRoYWknKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1i
ZXJpbmdTeXN0ZW0gaXMgJ3RoYWknCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUt
dGlidCcpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSBpcyAndGlidCcKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS12YWlpJykucmVzb2x2ZWRPcHRpb25zKCkubnVt
YmVyaW5nU3lzdGVtIGlzICd2YWlpJworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
d2Vla2RheTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ3dlZWtkYXknIH0gfSB9KSB0aHJldyBleGNl
cHRpb24gd2Vla2RheS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6
J2ludmFsaWQnIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiB3ZWVrZGF5IG11c3QgYmUg
Im5hcnJvdyIsICJzaG9ydCIsIG9yICJsb25nIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLndlZWtkYXkgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB3ZWVrZGF5OiduYXJyb3cnLCBtb250aDonbnVtZXJpYycsIGRheTonbnVtZXJpYycgfSkucmVz
b2x2ZWRPcHRpb25zKCkud2Vla2RheSBpcyAnbmFycm93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgd2Vla2RheTonc2hvcnQnLCBtb250aDonbnVtZXJpYycsIGRheTonbnVtZXJp
YycgfSkucmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5Oidsb25nJywgbW9udGg6J251bWVyaWMnLCBkYXk6
J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkgaXMgJ2xvbmcnCitQQVNTIElu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdlcmEn
IH0gfSB9KSB0aHJldyBleGNlcHRpb24gZXJhLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgZXJhOiduZXZlcicgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGVyYSBtdXN0
IGJlICJuYXJyb3ciLCAic2hvcnQiLCBvciAibG9uZyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS5kYXkgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBlcmE6J25hcnJvdycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSBp
cyAnbmFycm93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOidzaG9ydCcs
IHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSBpcyAnc2hvcnQnCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J2xvbmcnLCB5ZWFyOidudW1lcmljJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS5lcmEgaXMgJ2xvbmcnCitQQVNTIEludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB5ZWFyOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAneWVhcicgfSB9IH0pIHRocmV3
IGV4Y2VwdGlvbiB5ZWFyLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgeWVhcjon
bm9wZScgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IHllYXIgbXVzdCBiZSAiMi1kaWdp
dCIgb3IgIm51bWVyaWMiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRl
OicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyB1
bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93Jywg
eWVhcjonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyAnMi1kaWdpdCcKK1BB
U1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93JywgeWVhcjonbnVtZXJp
YycgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnbW9udGgnIH0g
fSB9KSB0aHJldyBleGNlcHRpb24gbW9udGguCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBtb250aDoyIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBtb250aCBtdXN0IGJl
ICIyLWRpZ2l0IiwgIm51bWVyaWMiLCAibmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciLgorUEFT
UyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMgdW5kZWZpbmVkCitQQVNTIEludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDonMi1kaWdpdCcsIHllYXI6J251bWVyaWMnIH0p
LnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIGlzICcyLWRpZ2l0JworUEFTUyBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgbW9udGg6J251bWVyaWMnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS5tb250aCBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1vbnRoOiduYXJyb3cnLCB5ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS5tb250aCBpcyAnbmFycm93JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9u
dGg6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGggaXMg
J3Nob3J0JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCB5
ZWFyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5tb250aCBpcyAnbG9uZycKK1BBU1Mg
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGRheTogeyB0b1N0cmluZygpIHsgdGhyb3cgJ2Rh
eScgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBkYXkuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyBkYXk6JycgfSkgdGhyZXcgZXhjZXB0aW9uIFJhbmdlRXJyb3I6IGRheSBtdXN0IGJl
ICIyLWRpZ2l0IiBvciAibnVtZXJpYyIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5k
YXkgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDon
bG9uZycsIGRheTonMi1kaWdpdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuZGF5IGlzICcyLWRpZ2l0
JworUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9udGg6J2xvbmcnLCBkYXk6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmRheSBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IGhvdXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICdob3VyJyB9
IH0gfSkgdGhyZXcgZXhjZXB0aW9uIGhvdXIuCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBob3VyOltdIH0pIHRocmV3IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBob3VyIG11c3QgYmUg
IjItZGlnaXQiIG9yICJudW1lcmljIi4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5y
ZXNvbHZlZE9wdGlvbnMoKS5ob3VyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonMi1kaWdpdCcgfSkucmVzb2x2ZWRP
cHRpb25zKCkuaG91ciBpcyAnbnVtZXJpYycKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygp
LmhvdXIgaXMgJ251bWVyaWMnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2
ZWRPcHRpb25zKCkuaG91cjEyIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRp
b25zKCkuaG91cjEyIGlzIHRydWUKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgncHQtQlInLCB7
IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmhv
dXIxMiBpcyBmYWxzZQorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOiB7
IHRvU3RyaW5nKCkgeyB0aHJvdyAnbWludXRlJyB9IH0gfSkgdGhyZXcgZXhjZXB0aW9uIG1pbnV0
ZS4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTpudWxsIH0pIHRocmV3
IGV4Y2VwdGlvbiBSYW5nZUVycm9yOiBtaW51dGUgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVy
aWMiLgorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1p
bnV0ZSBpcyB1bmRlZmluZWQKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0
ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBp
cyAnMi1kaWdpdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0ZTonbnVt
ZXJpYycsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSBpcyAnMi1k
aWdpdCcKK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHNlY29uZDogeyB0b1N0cmlu
ZygpIHsgdGhyb3cgJ3NlY29uZCcgfSB9IH0pIHRocmV3IGV4Y2VwdGlvbiBzZWNvbmQuCitQQVNT
IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBzZWNvbmQ6J2JhZHZhbHVlJyB9KSB0aHJldyBl
eGNlcHRpb24gUmFuZ2VFcnJvcjogc2Vjb25kIG11c3QgYmUgIjItZGlnaXQiIG9yICJudW1lcmlj
Ii4KK1BBU1MgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNv
bmQgaXMgdW5kZWZpbmVkCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6
J251bWVyaWMnLCBob3VyOidudW1lcmljJywgc2Vjb25kOicyLWRpZ2l0JyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS5zZWNvbmQgaXMgJzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1lcmljJywgc2Vjb25kOidudW1lcmljJyB9
KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQgaXMgJzItZGlnaXQnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZU5hbWU6IHsgdG9TdHJpbmcoKSB7IHRocm93ICd0aW1l
Wm9uZU5hbWUnIH0gfSB9KSB0aHJldyBleGNlcHRpb24gdGltZVpvbmVOYW1lLgorUEFTUyBJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmVOYW1lOiduYW1lJyB9KSB0aHJldyBleGNl
cHRpb24gUmFuZ2VFcnJvcjogdGltZVpvbmVOYW1lIG11c3QgYmUgInNob3J0IiBvciAibG9uZyIu
CitQQVNTIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmVOYW1lIGlzIHVuZGVmaW5lZAorUEFTUyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWlu
dXRlOicyLWRpZ2l0JywgaG91cjonbnVtZXJpYycsIHRpbWVab25lTmFtZTonc2hvcnQnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSBpcyAnc2hvcnQnCitQQVNTIEludGwuRGF0ZVRp
bWVGb3JtYXQoJ3B0LUJSJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJywgdGlt
ZVpvbmVOYW1lOidsb25nJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUgaXMgJ2xv
bmcnCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAi
bnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJhciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6
ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYXIiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYXIiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJhciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRo
OiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiYXIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoImFyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoImFyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51
bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwg
bWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYXItU0EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5
OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImFyLVNBIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImFyLVNBIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYXItU0EiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoImFyLVNBIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJhci1TQSIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJhci1TQSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6
ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMi
LCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImJlIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJiZSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25n
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJiZSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25n
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImJlIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJiZSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6
ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYmUiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiYmUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAi
c2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwg
aG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJjYSIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIs
IGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiY2EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIs
IGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiY2EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJjYSIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiY2EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAi
bnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImNhIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
aG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoImNhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNo
b3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiY3MiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImNzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImNzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiY3MiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImNzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJjcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJjcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9y
dCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3Vy
OiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRhIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJk
YSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJk
YSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRhIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGEiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3Vy
OiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgiZGEiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQi
LCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjog
Im51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkZSIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTog
Im51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGUi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTog
Im51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGUi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkZSIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgiZGUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJp
YyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRlIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjog
Im51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoImRlIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0Iiwg
eWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJu
dW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGUtQ0giLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRl
LUNIIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImRlLUNIIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmci
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZGUtQ0giLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImRlLUNIIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
aG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkZS1DSCIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJkZS1DSCIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTog
Im51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250
aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJlbiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJlbiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVu
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbiIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4iLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4iLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3
ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJu
dW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1BVSIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgiZW4tQVUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgiZW4tQVUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJlbi1BVSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tQVUiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNv
bmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImVuLUFVIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLUFVIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250
aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVt
ZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiZW4tR0IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLUdCIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLUdCIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tR0IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDog
ImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoImVuLUdCIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1HQiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJlbi1HQiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVt
ZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLVBIIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
d2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1Q
SCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJl
bi1QSCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLVBIIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1QSCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tUEgiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tUEgiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3
ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJu
dW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1VUyIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgiZW4tVVMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgiZW4tVVMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJlbi1VUyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tVVMiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNv
bmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
ImVuLVVTIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLVVTIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250
aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVt
ZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiZWwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFy
OiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVh
cjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVh
cjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgiZWwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVs
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwg
c2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJlbCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbCIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6
ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVy
aWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoImVzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjog
Im51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImVzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcyIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNl
Y29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiZXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMiLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAi
c2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmlj
Iiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJlcy1NWCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMtTVgiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMtTVgiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJlcy1NWCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9u
ZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiZXMtTVgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTog
Im51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoImVzLU1YIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoImVzLU1YIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjog
Im51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMtUFIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVr
ZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzLVBSIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzLVBS
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZXMtUFIiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImVzLVBSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjog
Im51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcy1QUiIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlcy1QUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtk
YXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVy
aWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImZyIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNo
b3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJmciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJs
b25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJmciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJs
b25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImZyIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJmciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhv
dXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZnIiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZnIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5
OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmlj
IiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJmci1DQSIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJz
aG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiZnItQ0EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiZnItQ0EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1v
bnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJm
ci1DQSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiZnItQ0EiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImZyLUNB
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImZyLUNBIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNo
b3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIs
IHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiZ2EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVt
ZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImdhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51
bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImdhIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51
bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiZ2EiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImdhIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25k
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJn
YSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJnYSIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9y
dCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBz
ZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoImhpLUlOIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51
bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJoaS1JTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJoaS1JTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoImhpLUlOIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwg
ZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJoaS1JTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVt
ZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiaGktSU4iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiaGktSU4iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVt
ZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJz
aG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXMiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXMiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAi
bG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiaXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTog
Im51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoImlzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoImlzIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVy
aWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgiaXQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hv
cnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIml0Iiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIml0Iiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgiaXQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxv
bmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoIml0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJu
dW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJpdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJpdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmlj
IiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoIml3Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0
IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpdyIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJpdyIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoIml3Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25n
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJpdyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVt
ZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgiaXciLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
aXciLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNT
IAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6
ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJqYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIs
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiamEiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiamEiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJqYSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIs
IGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgiamEiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVy
aWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoImphIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImph
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBt
b250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAi
bnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgia28tS1IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQi
LCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImtvLUtSIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImtvLUtSIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgia28tS1IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250
aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImtvLUtSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJrby1LUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJu
dW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJrby1LUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIs
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAi
bnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImx0Iiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
d2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJsdCIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJsdCIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImx0Iiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJsdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibHQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAi
bnVtZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgibHQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJsdiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdl
ZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibHYiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibHYiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJsdiIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgibHYiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIs
IG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoImx2Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoImx2Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVh
cjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibWsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVr
ZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1rIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1rIiwgb3B0
aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnko
b3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2
YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibWsiLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBt
b250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoIm1rIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJtayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6
ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJp
YyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1zIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2Rh
eTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtcyIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJp
YyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtcyIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFy
IG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm1zIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9u
dGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJtcyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgibXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJp
YyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgibXMiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAi
bnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6
ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibXQiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMi
IH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibXQiLCBvcHRpb25z
KS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRp
b24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBv
cHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJtdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRo
OiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgibXQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoIm10Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoIm10Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51
bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwg
bWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgibmIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAi
c2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5iIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9
OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5iIiwgb3B0aW9ucyku
cmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9u
ID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0
aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibmIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDog
ImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoIm5iIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6
ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJuYiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwg
bWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJuYiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1l
cmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5sIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNo
b3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJubCIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsK
KyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJubCIsIG9wdGlvbnMpLnJl
c29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9
PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlv
bnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIm5sIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJs
b25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJubCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAi
bnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgibmwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgibmwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJp
YyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJubyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9y
dCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibm8iLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgibm8iLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJubyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9u
ZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgibm8iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51
bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoIm5vIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
Im5vIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMi
LCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRl
OiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgicGwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQi
LCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInBsIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAg
IHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInBsIiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9
IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgicGwiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmci
LCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoInBsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1l
cmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJwbCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRl
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJw
bCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwg
bW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTog
Im51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoInB0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0Iiwg
eWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJwdCIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJwdCIsIG9wdGlvbnMpLnJlc29sdmVk
T3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNv
bHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoInB0Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwg
ZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJwdCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJp
YyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgicHQiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTog
Im51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicHQi
LCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5l
dmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAor
ICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1v
bnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJu
dW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJwdC1CUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIs
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicHQtQlIiLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicHQtQlIiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJwdC1CUiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRo
OiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgicHQtQlIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoInB0LUJSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51
bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoInB0LUJSIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0Iiwg
eWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJu
dW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicm8iLCBvcHRpb25zKS5yZXNvbHZlZE9w
dGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2
ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3
ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInJvIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInJvIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgicm8iLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoInJvIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMi
LCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJybyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJu
dW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJybyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVt
ZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciBy
ZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInJ1Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVk
W29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vl
a2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJydSIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVt
ZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJydSIsIG9w
dGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5
KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAg
dmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInJ1Iiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
bW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJydSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwg
bWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgicnUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVt
ZXJpYyIsIG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgicnUiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFy
OiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVy
aWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVz
b2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtk
YXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic2siLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic2siLCBvcHRp
b25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShv
cHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZh
ciBvcHRpb25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1v
bnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgic2siLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1p
bnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoInNrIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVy
aWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoInNrIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjog
Im51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic2wiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5
OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNsIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmlj
IiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNsIiwgb3B0aW9u
cykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0
aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIg
b3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic2wiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250
aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoInNsIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJzbCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJzbCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJu
dW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIs
IG1pbnV0ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7
CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlv
bl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTog
InNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzciIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIg
fTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzciIsIG9wdGlvbnMp
LnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlv
biA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9w
dGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNv
bHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInNyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6
ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJzciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5r
ZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlz
IHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRl
OiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgic3IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIs
IG1pbnV0ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgic3IiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVt
ZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzdiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJz
aG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic3YiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07
CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgic3YiLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJzdiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAi
bG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgic3YiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0
cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTog
Im51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoInN2Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBt
aW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3Jt
YXQoInN2Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0
aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQor
UEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVy
aWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0g
SW50bC5EYXRlVGltZUZvcm1hdCgidGgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAg
ICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAh
PSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hv
cnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInRoIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInRoIiwgb3B0aW9ucykucmVz
b2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+
IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9u
cyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVk
ID0gSW50bC5EYXRlVGltZUZvcm1hdCgidGgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxv
bmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVG
b3JtYXQoInRoIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMo
b3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1
ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJu
dW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRh
dGVUaW1lRm9ybWF0KCJ0aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJ0aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlv
bnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BB
U1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmlj
IiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoInRyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAg
T2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0g
bnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0
IiwgeWVhcjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ0ciIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAg
ICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ0ciIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9
IEludGwuRGF0ZVRpbWVGb3JtYXQoInRyIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25n
IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9y
bWF0KCJ0ciIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9w
dGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUK
K1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVt
ZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRl
VGltZUZvcm1hdCgidHIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
dHIiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25z
KS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNT
IAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIs
IG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6
ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCJ1ayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9i
amVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51
bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIs
IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidWsiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgidWsiLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCJ1ayIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAg
IE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9
IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIs
IGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1h
dCgidWsiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRp
b25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQ
QVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51bWVy
aWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoInVrIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6
ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInVr
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVyaWMiLCBt
b250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAi
bnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5E
YXRlVGltZUZvcm1hdCgidmkiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmpl
Y3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxs
KSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInZpIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
eWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZh
ciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInZpIiwgb3B0aW9ucykucmVzb2x2ZWRP
cHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29s
dmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsg
eWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50
bC5EYXRlVGltZUZvcm1hdCgidmkiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBP
YmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBu
dWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBtb250aDogImxvbmciLCBk
YXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQo
InZpIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9u
cykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFT
UyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmlj
Iiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJ2aSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAi
bnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ2aSIs
IG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2
ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisg
ICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9u
dGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51
bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0
ZVRpbWVGb3JtYXQoInpoIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVh
cjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIg
cmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0
aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZl
ZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoInpoIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgbW9udGg6ICJsb25nIiwgZGF5
OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6
aCIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIs
IHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiemgiLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhv
cHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVl
CitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTogIm51
bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgiLCBv
cHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVy
eShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAg
IHZhciBvcHRpb25zID0geyB3ZWVrZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRo
OiAic2hvcnQiLCBkYXk6ICJudW1lcmljIiwgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1l
cmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVU
aW1lRm9ybWF0KCJ6aC1DTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHll
YXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFy
IHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtQ04iLCBvcHRpb25zKS5yZXNvbHZl
ZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVz
b2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0g
eyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAg
dmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtQ04iLCBvcHRpb25zKS5yZXNv
bHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4g
cmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25z
ID0geyB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aC1DTiIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygp
OworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRp
b25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAi
bG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGlt
ZUZvcm1hdCgiemgtQ04iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qu
a2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBp
cyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyBob3VyOiAibnVtZXJpYyIsIG1pbnV0
ZTogIm51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IElu
dGwuRGF0ZVRpbWVGb3JtYXQoInpoLUNOIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7Cisg
ICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0g
IT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVy
aWMiLCBtaW51dGU6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRp
bWVGb3JtYXQoInpoLUNOIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0
LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkg
aXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVh
cjogIm51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1l
cmljIiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtSGFudC1ISyIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJzaG9ydCIsIGRh
eTogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
emgtSGFudC1ISyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJs
b25nIiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1l
Rm9ybWF0KCJ6aC1IYW50LUhLIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2Jq
ZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVs
bCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBt
b250aDogImxvbmciIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgi
emgtSGFudC1ISyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlz
KG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRy
dWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVy
aWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtSGFudC1I
SyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMp
LmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1Mg
CisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIs
IHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZv
cm1hdCgiemgtSGFudC1ISyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVj
dC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwp
IGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMgPSB7IGhvdXI6ICJudW1lcmljIiwgbWlu
dXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCJ6aC1IYW50LUhLIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0Lmtl
eXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMg
dHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjog
Im51bWVyaWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIsIGhvdXI6ICJudW1lcmlj
IiwgbWludXRlOiAibnVtZXJpYyIsIHNlY29uZDogIm51bWVyaWMiIH07CisgICAgdmFyIHJlc29s
dmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtVFciLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRpb25zID0geyB3ZWVr
ZGF5OiAic2hvcnQiLCB5ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAic2hvcnQiLCBkYXk6ICJudW1l
cmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoLVRXIiwg
b3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZl
cnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciLCBkYXk6ICJu
dW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoLVRX
Iiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucyku
ZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29wdGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAK
KyAgICB2YXIgb3B0aW9ucyA9IHsgeWVhcjogIm51bWVyaWMiLCBtb250aDogImxvbmciIH07Cisg
ICAgdmFyIHJlc29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiemgtVFciLCBvcHRpb25zKS5y
ZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24g
PT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKSBpcyB0cnVlCitQQVNTIAorICAgIHZhciBvcHRp
b25zID0geyBtb250aDogImxvbmciLCBkYXk6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZl
ZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoInpoLVRXIiwgb3B0aW9ucykucmVzb2x2ZWRPcHRpb25z
KCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJlc29sdmVkW29w
dGlvbl0gIT0gbnVsbCkgaXMgdHJ1ZQorUEFTUyAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjog
Im51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2
YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aC1UVyIsIG9wdGlvbnMpLnJlc29s
dmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiBy
ZXNvbHZlZFtvcHRpb25dICE9IG51bGwpIGlzIHRydWUKK1BBU1MgCisgICAgdmFyIG9wdGlvbnMg
PSB7IGhvdXI6ICJudW1lcmljIiwgbWludXRlOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2
ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0KCJ6aC1UVyIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9u
cygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtv
cHRpb25dICE9IG51bGwpIGlzIHRydWUKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
IAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3Rz
L2ludGwtZGF0ZXRpbWVmb3JtYXQuanMgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50
bC1kYXRldGltZWZvcm1hdC5qcwppbmRleCBlZGUxYjVjZTM0NmZkMjkwNTMwYjM3Mzc3ZjAwY2Fl
NTAzN2U2MDdmLi5jMmE2NzU4MmZlYzM0NTIyMDk4N2RiYzdkMzc4MTc4YzQ2NGM4OWQwIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5q
cworKysgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvaW50bC1kYXRldGltZWZvcm1hdC5q
cwpAQCAtMTE5LDcgKzExOSw3IEBAIHNob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5mb3JtYXQoeyB2YWx1ZU9mKCkgeyB0aHJvdyBFcnJvcignNGInCiAvLyAxMi4zLjQg
Rm9ybWF0RGF0ZVRpbWUgYWJzdHJhY3Qgb3BlcmF0aW9uCiAKIC8vIDEuIElmIHggaXMgbm90IGEg
ZmluaXRlIE51bWJlciwgdGhlbiB0aHJvdyBhIFJhbmdlRXJyb3IgZXhjZXB0aW9uLgotc2hvdWxk
VGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLmZvcm1hdChJbmZpbml0eSkiLCAi
J1JhbmdlRXJyb3I6IGRhdGUgdmFsdWUgaXMgbm90IGZpbml0ZSBpbiBEYXRlVGltZUZvcm1hdC5m
b3JtYXQoKSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5m
b3JtYXQoSW5maW5pdHkpIiwgIidSYW5nZUVycm9yOiBkYXRlIHZhbHVlIGlzIG5vdCBmaW5pdGUg
aW4gRGF0ZVRpbWVGb3JtYXQgZm9ybWF0KCknIik7CiAKIC8vIEZvcm1hdCBpcyBib3VuZCwgc28g
Y2FsbGluZyB3aXRoIGFsdGVybmF0ZSAidGhpcyIgaGFzIG5vIGVmZmVjdC4KIHNob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5mb3JtYXQuY2FsbChudWxsLCAwKSIsICJJbnRs
LkRhdGVUaW1lRm9ybWF0KCkuZm9ybWF0KDApIik7CkBAIC0xMzYsOSArMTM2LDMwOSBAQCBzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25zLmxlbmd0
aCIsICIwIik7CiAvLyBSZXR1cm5zIGEgbmV3IG9iamVjdCB3aG9zZSBwcm9wZXJ0aWVzIGFuZCBh
dHRyaWJ1dGVzIGFyZSBzZXQgYXMgaWYgY29uc3RydWN0ZWQgYnkgYW4gb2JqZWN0IGxpdGVyYWwu
CiBzaG91bGRCZVR5cGUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucygpIiwgIk9iamVjdCIpOwogCisvLyBUaGUgSW50bC5EYXRlVGltZUZvcm1hdCBwcm90b3R5
cGUgb2JqZWN0IGlzIGl0c2VsZiBhbiAlRGF0ZVRpbWVGb3JtYXQlIGluc3RhbmNlLCB3aG9zZSBp
bnRlcm5hbCBzbG90cyBhcmUgc2V0IGFzIGlmIGl0IGhhZCBiZWVuIGNvbnN0cnVjdGVkIGJ5IHRo
ZSBleHByZXNzaW9uIENvbnN0cnVjdCglRGF0ZVRpbWVGb3JtYXQlKS4KK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUiLCAibmV3
IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5sb2NhbGUiKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRP
cHRpb25zKCkuY2FsZW5kYXIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9w
dGlvbnMoKS5jYWxlbmRhciIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90
eXBlLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIsICJuZXcgSW50bC5EYXRlVGlt
ZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLm51bWJlcmluZ1N5c3RlbSIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXki
LCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS53ZWVrZGF5Iik7
CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
KCkuZXJhIiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkuZXJh
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRp
b25zKCkueWVhciIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygp
LnllYXIiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZl
ZE9wdGlvbnMoKS5tb250aCIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0
aW9ucygpLm1vbnRoIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUu
cmVzb2x2ZWRPcHRpb25zKCkuZGF5IiwgIm5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2
ZWRPcHRpb25zKCkuZGF5Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5
cGUucmVzb2x2ZWRPcHRpb25zKCkuaG91ciIsICJuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgpLnJl
c29sdmVkT3B0aW9ucygpLmhvdXIiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnBy
b3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAibmV3IEludGwuRGF0ZVRpbWVGb3Jt
YXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiLCAibmV3IEludGwuRGF0
ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAibmV3
IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZU5hbWUiLCAibmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZU5hbWUiKTsKKwogLy8gUmV0dXJucyBhIG5ldyBvYmplY3QgZWFjaCB0aW1lLgogc2hv
dWxkQmVGYWxzZSgiSW50bC5EYXRlVGltZUZvcm1hdC5wcm90b3R5cGUucmVzb2x2ZWRPcHRpb25z
KCkgPT09IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucygpIik7
CiAKIC8vIFRocm93cyBvbiBub24tRGF0ZVRpbWVGb3JtYXQgdGhpcy4KIHNob3VsZFRocm93KCJJ
bnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMuY2FsbCg1KSIsICIn
VHlwZUVycm9yOiBJbnRsLkRhdGVUaW1lRm9ybWF0LnByb3RvdHlwZS5yZXNvbHZlZE9wdGlvbnMg
Y2FsbGVkIG9uIHZhbHVlIHRoYXRcXCdzIG5vdCBhbiBvYmplY3QgaW5pdGlhbGl6ZWQgYXMgYSBE
YXRlVGltZUZvcm1hdCciKTsKIAorc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJyQn
KSIsICInUmFuZ2VFcnJvcjogaW52YWxpZCBsYW5ndWFnZSB0YWc6ICQnIik7CitzaG91bGROb3RU
aHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCBudWxsKSIpOworCisvLyBEZWZhdWx0cyB0
byBtb250aCwgZGF5LCB5ZWFyLgorc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJyku
cmVzb2x2ZWRPcHRpb25zKCkud2Vla2RheSIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmVyYSIsICJ1bmRlZmluZWQi
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygp
Lm1vbnRoIiwgIidudW1lcmljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JykucmVzb2x2ZWRPcHRpb25zKCkuZGF5IiwgIidudW1lcmljJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJykucmVzb2x2ZWRPcHRpb25zKCkueWVhciIsICInbnVtZXJpYyci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygp
LmhvdXIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
KS5yZXNvbHZlZE9wdGlvbnMoKS5ob3VyMTIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiLCAidW5kZWZp
bmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nKS5yZXNvbHZlZE9wdGlv
bnMoKS5zZWNvbmQiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZU5hbWUiLCAidW5kZWZpbmVkIik7CisK
K3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjog
eyB0b1N0cmluZygpIHsgdGhyb3cgJ25vcGUnIH0gfSB9KSIsICInbm9wZSciKTsKK3Nob3VsZFRo
cm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjonYmFkJyB9KSIs
ICdcJ1JhbmdlRXJyb3I6IGxvY2FsZU1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgImxvb2t1cCIgb3Ig
ImJlc3QgZml0IlwnJyk7CitzaG91bGROb3RUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IGxvY2FsZU1hdGNoZXI6J2xvb2t1cCcgfSkiKTsKK3Nob3VsZE5vdFRocm93KCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgbG9jYWxlTWF0Y2hlcjonYmVzdCBmaXQnIH0pIik7CisKK3No
b3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjogeyB0
b1N0cmluZygpIHsgdGhyb3cgJ25vcGUnIH0gfSB9KSIsICInbm9wZSciKTsKK3Nob3VsZFRocm93
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZm9ybWF0TWF0Y2hlcjonYmFkJyB9KSIsICdc
J1JhbmdlRXJyb3I6IGZvcm1hdE1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgImJhc2ljIiBvciAiYmVz
dCBmaXQiXCcnKTsKK3Nob3VsZE5vdFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
Zm9ybWF0TWF0Y2hlcjonYmFzaWMnIH0pIik7CitzaG91bGROb3RUaHJvdygiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IGZvcm1hdE1hdGNoZXI6J2Jlc3QgZml0JyB9KSIpOworCitzaG91bGRU
aHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnbm93aGVyZS9ib2d1
cycgfSkiLCAiJ1JhbmdlRXJyb3I6IGludmFsaWQgdGltZSB6b25lOiBub3doZXJlL2JvZ3VzJyIp
Oworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogeyB0
b1N0cmluZygpIHsgdGhyb3cgJ25vcGUnIH0gfSB9KSIsICInbm9wZSciKTsKKworLy8gVGltZSB6
b25lIGlzIGNhc2UgaW5zZW5zaXRpdmUuCitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnYW1lcmljYS9kZW52ZXInIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidBbWVyaWNhL0RlbnZlciciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdBTUVSSUNBL0xPU19BTkdFTEVTJyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9Mb3NfQW5nZWxlcyciKTsKKworLy8gRGVmYXVs
dCB0aW1lIHpvbmUgaXMgYSB2YWxpZCBjYW5vbmljYWwgdGltZSB6b25lLgorc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogSW50bC5EYXRlVGltZUZvcm1hdCgp
LnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IiwgIkludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIpOwor
CisvLyBUaW1lIHpvbmUgaXMgY2Fub25pY2FsaXplZCBmb3Igb2Jzb2xldGUgbGlua3MgaW4gSUFO
QSB0eiBiYWNrd2FyZCBmaWxlLgorc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0FtZXJpY2EvQXRrYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUi
LCAiJ0FtZXJpY2EvQWRhayciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdBbWVyaWNhL0Vuc2VuYWRhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSIsICInQW1lcmljYS9UaWp1YW5hJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ0FtZXJpY2EvUG9ydG9fQWNyZScgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvUmlvX0JyYW5jbyciKTsKK3Nob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBbWVyaWNhL1NoaXByb2NrJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9EZW52ZXInIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQW50YXJjdGljYS9Tb3V0
aF9Qb2xlJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInUGFjaWZpYy9BdWNrbGFu
ZCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdB
c2lhL0FzaGtoYWJhZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvQXNo
Z2FiYXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnQXNpYS9DaG9uZ3FpbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lh
L1NoYW5naGFpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1l
Wm9uZTogJ0FzaWEvQ2h1bmdraW5nJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXNpYS9TaGFuZ2hhaSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdBc2lhL0RhY2NhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXNpYS9EaGFrYSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBc2lhL0hhcmJpbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0Fz
aWEvU2hhbmdoYWknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnQXNpYS9LYXNoZ2FyJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXNpYS9VcnVtcWknIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnQXNpYS9NYWNhbycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0Fz
aWEvTWFjYXUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnQXNpYS9UZWxfQXZpdicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0Fz
aWEvSmVydXNhbGVtJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0FzaWEvVGhpbWJ1JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXNpYS9UaGltcGh1JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ0FzaWEvVWp1bmdfUGFuZGFuZycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0FzaWEvTWFrYXNzYXInIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnQXNpYS9VbGFuX0JhdG9yJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSIsICInQXNpYS9VbGFhbmJhYXRhciciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvQUNUJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSIsICInQXVzdHJhbGlhL1N5ZG5leSciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdBdXN0cmFsaWEvQ2FuYmVycmEnIH0pLnJl
c29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvU3lkbmV5JyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9MSEkn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvTG9yZF9Ib3dlJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3Ry
YWxpYS9OU1cnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBdXN0cmFsaWEvU3lk
bmV5JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTog
J0F1c3RyYWxpYS9Ob3J0aCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3Ry
YWxpYS9EYXJ3aW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRp
bWVab25lOiAnQXVzdHJhbGlhL1F1ZWVuc2xhbmQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIiwgIidBdXN0cmFsaWEvQnJpc2JhbmUnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1NvdXRoJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS50aW1lWm9uZSIsICInQXVzdHJhbGlhL0FkZWxhaWRlJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0F1c3RyYWxpYS9UYXNtYW5pYScgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3RyYWxpYS9Ib2JhcnQnIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQXVzdHJhbGlhL1Zp
Y3RvcmlhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXVzdHJhbGlhL01lbGJv
dXJuZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6
ICdBdXN0cmFsaWEvV2VzdCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0F1c3Ry
YWxpYS9QZXJ0aCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdBdXN0cmFsaWEvWWFuY293aW5uYScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0F1c3RyYWxpYS9Ccm9rZW5fSGlsbCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6aWwvQWNyZScgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvUmlvX0JyYW5jbyciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdCcmF6aWwvRGVOb3JvbmhhJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9Ob3JvbmhhJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0JyYXppbC9FYXN0JyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9TYW9fUGF1bG8nIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQnJhemlsL1dlc3Qn
IH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL01hbmF1cyciKTsKK3No
b3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5hZGEvQXRs
YW50aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0hhbGlmYXgn
Iik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2Fu
YWRhL0NlbnRyYWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1dp
bm5pcGVnJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ0NhbmFkYS9FYXN0LVNhc2thdGNoZXdhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0FtZXJpY2EvUmVnaW5hJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9FYXN0ZXJuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50
aW1lWm9uZSIsICInQW1lcmljYS9Ub3JvbnRvJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ0NhbmFkYS9Nb3VudGFpbicgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvRWRtb250b24nIik7CitzaG91bGRCZSgiSW50bC5E
YXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL05ld2ZvdW5kbGFuZCcgfSku
cmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvU3RfSm9obnMnIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnQ2FuYWRhL1BhY2lm
aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1ZhbmNvdXZlcici
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDYW5h
ZGEvU2Fza2F0Y2hld2FuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmlj
YS9SZWdpbmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVa
b25lOiAnQ2FuYWRhL1l1a29uJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1l
cmljYS9XaGl0ZWhvcnNlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywg
eyB0aW1lWm9uZTogJ0NoaWxlL0NvbnRpbmVudGFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSIsICInQW1lcmljYS9TYW50aWFnbyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgdGltZVpvbmU6ICdDaGlsZS9FYXN0ZXJJc2xhbmQnIH0pLnJlc29sdmVkT3B0
aW9ucygpLnRpbWVab25lIiwgIidQYWNpZmljL0Vhc3RlciciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdDdWJhJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSIsICInQW1lcmljYS9IYXZhbmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnRWd5cHQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidBZnJpY2EvQ2Fpcm8nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgnZW4nLCB7IHRpbWVab25lOiAnRWlyZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUi
LCAiJ0V1cm9wZS9EdWJsaW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnRXVyb3BlL0JlbGZhc3QnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVa
b25lIiwgIidFdXJvcGUvTG9uZG9uJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQo
J2VuJywgeyB0aW1lWm9uZTogJ0V1cm9wZS9UaXJhc3BvbCcgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUiLCAiJ0V1cm9wZS9DaGlzaW5hdSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHQicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpv
bmUiLCAiJ0V1cm9wZS9Mb25kb24nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IHRpbWVab25lOiAnR0ItRWlyZScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUi
LCAiJ0V1cm9wZS9Mb25kb24nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnR01UKzAnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidV
VEMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
R01ULTAnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidVVEMnIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnR01UMCcgfSkucmVzb2x2
ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ1VUQyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdHcmVlbndpY2gnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lIiwgIidVVEMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnSG9uZ2tvbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwg
IidBc2lhL0hvbmdfS29uZyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdJY2VsYW5kJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICIn
QXRsYW50aWMvUmV5a2phdmlrJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2Vu
JywgeyB0aW1lWm9uZTogJ0lyYW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidB
c2lhL1RlaHJhbiciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdJc3JhZWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL0pl
cnVzYWxlbSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpv
bmU6ICdKYW1haWNhJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQW1lcmljYS9K
YW1haWNhJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ0phcGFuJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9Ub2t5byci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdLd2Fq
YWxlaW4nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidQYWNpZmljL0t3YWphbGVp
biciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdM
aWJ5YScgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FmcmljYS9Ucmlwb2xpJyIp
Oworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ01leGlj
by9CYWphTm9ydGUnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL1Rp
anVhbmEnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25l
OiAnTWV4aWNvL0JhamFTdXInIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVy
aWNhL01hemF0bGFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0
aW1lWm9uZTogJ01leGljby9HZW5lcmFsJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIs
ICInQW1lcmljYS9NZXhpY29fQ2l0eSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdOWicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAi
J1BhY2lmaWMvQXVja2xhbmQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4n
LCB7IHRpbWVab25lOiAnTlotQ0hBVCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAi
J1BhY2lmaWMvQ2hhdGhhbSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdOYXZham8nIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidB
bWVyaWNhL0RlbnZlciciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsg
dGltZVpvbmU6ICdQUkMnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidBc2lhL1No
YW5naGFpJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9u
ZTogJ1BvbGFuZCcgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0V1cm9wZS9XYXJz
YXcnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAn
UG9ydHVnYWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIiwgIidFdXJvcGUvTGlzYm9u
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1JP
QycgfSkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvVGFpcGVpJyIpOworc2hv
dWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1JPSycgfSkucmVz
b2x2ZWRPcHRpb25zKCkudGltZVpvbmUiLCAiJ0FzaWEvU2VvdWwnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnU2luZ2Fwb3JlJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSIsICInQXNpYS9TaW5nYXBvcmUnIik7CitzaG91bGRCZSgiSW50
bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVHVya2V5JyB9KS5yZXNvbHZlZE9w
dGlvbnMoKS50aW1lWm9uZSIsICInRXVyb3BlL0lzdGFuYnVsJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VDVCcgfSkucmVzb2x2ZWRPcHRpb25z
KCkudGltZVpvbmUiLCAiJ1VUQyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdl
bicsIHsgdGltZVpvbmU6ICdVUy9BbGFza2EnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25l
IiwgIidBbWVyaWNhL0FuY2hvcmFnZSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdVUy9BbGV1dGlhbicgfSkucmVzb2x2ZWRPcHRpb25zKCkudGlt
ZVpvbmUiLCAiJ0FtZXJpY2EvQWRhayciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgdGltZVpvbmU6ICdVUy9Bcml6b25hJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1l
Wm9uZSIsICInQW1lcmljYS9QaG9lbml4JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL0NlbnRyYWwnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRp
bWVab25lIiwgIidBbWVyaWNhL0NoaWNhZ28nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvRWFzdGVybicgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUiLCAiJ0FtZXJpY2EvTmV3X1lvcmsnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVMvSGF3YWlpJyB9KS5yZXNvbHZlZE9wdGlvbnMo
KS50aW1lWm9uZSIsICInUGFjaWZpYy9Ib25vbHVsdSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9NaWNoaWdhbicgfSkucmVzb2x2ZWRPcHRp
b25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvRGV0cm9pdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgdGltZVpvbmU6ICdVUy9Nb3VudGFpbicgfSkucmVzb2x2ZWRP
cHRpb25zKCkudGltZVpvbmUiLCAiJ0FtZXJpY2EvRGVudmVyJyIpOworc2hvdWxkQmUoIkludGwu
RGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL1BhY2lmaWMnIH0pLnJlc29sdmVk
T3B0aW9ucygpLnRpbWVab25lIiwgIidBbWVyaWNhL0xvc19BbmdlbGVzJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VTL1NhbW9hJyB9KS5yZXNv
bHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInUGFjaWZpYy9QYWdvX1BhZ28nIik7CitzaG91bGRC
ZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHRpbWVab25lOiAnVVRDJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS50aW1lWm9uZSIsICInVVRDJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVG
b3JtYXQoJ2VuJywgeyB0aW1lWm9uZTogJ1VuaXZlcnNhbCcgfSkucmVzb2x2ZWRPcHRpb25zKCku
dGltZVpvbmUiLCAiJ1VUQyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmU6ICdXLVNVJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInRXVy
b3BlL01vc2NvdyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmU6ICdadWx1JyB9KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSIsICInVVRDJyIpOwor
CisvLyBHZXRzIGRlZmF1bHQgY2FsZW5kYXIgYW5kIG51bWJlcmluZ1N5c3RlbSBmcm9tIGxvY2Fs
ZS4KK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9u
cygpLmxvY2FsZSIsICInYXItU0EnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
YXItc2EnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICInaXNsYW1pYy11bWFscXVyYSci
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdhci1zYScpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSIsICInYXJhYiciKTsKKworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuJywgeyBjYWxlbmRhcjonZGFuZ2knIH0pLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyIiwgIidncmVnb3JpYW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4nIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1jYS1ib2d1cycpLnJlc29sdmVkT3B0aW9u
cygpLmNhbGVuZGFyIiwgIidncmVnb3JpYW4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4tdS1jYS1idWRkaGlzdCcpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4t
dS1jYS1idWRkaGlzdCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNh
LWJ1ZGRoaXN0JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2J1ZGRoaXN0JyIpOwor
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtY2hpbmVzZScpLnJlc29sdmVk
T3B0aW9ucygpLmNhbGVuZGFyIiwgIidjaGluZXNlJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtY2EtY29wdGljJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAi
J2NvcHRpYyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWRhbmdp
JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2RhbmdpJyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9hYScpLnJlc29sdmVkT3B0aW9ucygpLmNh
bGVuZGFyIiwgIidldGhpb3BpYy1hbWV0ZS1hbGVtJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRp
bWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9waWMnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIs
ICInZXRoaW9waWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnYXItU0EtdS1j
YS1ncmVnb3J5JykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2dyZWdvcmlhbiciKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWhlYnJldycpLnJlc29sdmVk
T3B0aW9ucygpLmNhbGVuZGFyIiwgIidoZWJyZXcnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4tdS1jYS1pbmRpYW4nKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICIn
aW5kaWFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1p
YycpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljJyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pY2MnKS5yZXNvbHZlZE9wdGlvbnMo
KS5jYWxlbmRhciIsICInaXNsYW1pYy1jaXZpbCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LWNhLUlTTzg2MDEnKS5yZXNvbHZlZE9wdGlvbnMoKS5jYWxlbmRhciIsICIn
aXNvODYwMSciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWphcGFu
ZXNlJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ2phcGFuZXNlJyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtcGVyc2lhbicpLnJlc29sdmVkT3B0aW9u
cygpLmNhbGVuZGFyIiwgIidwZXJzaWFuJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3Jt
YXQoJ2VuLXUtY2Etcm9jJykucmVzb2x2ZWRPcHRpb25zKCkuY2FsZW5kYXIiLCAiJ3JvYyciKTsK
Ky8vIEZJWE1FOiBodHRwczovL2dpdGh1Yi5jb20vdGMzOS9lY21hNDAyL2lzc3Vlcy81OQorLy8g
c2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtZXRoaW9waWMtYW1ldGUtYWxl
bScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidldGhpb2FhJyIpOworLy8gc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pYy11bWFscXVyYScpLnJlc29s
dmVkT3B0aW9ucygpLmNhbGVuZGFyIiwgIidpc2xhbWljLXVtYWxxdXJhJyIpOworLy8gc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtY2EtaXNsYW1pYy10YmxhJykucmVzb2x2ZWRP
cHRpb25zKCkuY2FsZW5kYXIiLCAiJ2lzbGFtaWMtdGJsYSciKTsKKy8vIHNob3VsZEJlKCJJbnRs
LkRhdGVUaW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWMtY2l2aWwnKS5yZXNvbHZlZE9wdGlvbnMo
KS5jYWxlbmRhciIsICInaXNsYW1pYy1jaXZpbCciKTsKKy8vIHNob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbi11LWNhLWlzbGFtaWMtcmdzYScpLnJlc29sdmVkT3B0aW9ucygpLmNhbGVu
ZGFyIiwgIidpc2xhbWljLXJnc2EnIik7CisKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbnVtYmVyaW5nU3lzdGVtOidndWpyJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5udW1i
ZXJpbmdTeXN0ZW0iLCAiJ2xhdG4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4tdS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZSIsICInZW4nIik7CitzaG91
bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1ib2d1cycpLnJlc29sdmVkT3B0aW9u
cygpLm51bWJlcmluZ1N5c3RlbSIsICInbGF0biciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1l
Rm9ybWF0KCdlbi11LW51LWxhdG4nKS5yZXNvbHZlZE9wdGlvbnMoKS5udW1iZXJpbmdTeXN0ZW0i
LCAiJ2xhdG4nIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tdS1udS1hcmFi
JykucmVzb2x2ZWRPcHRpb25zKCkubG9jYWxlIiwgIidlbi11LW51LWFyYWInIik7CisKK2xldCBu
dW1iZXJpbmdTeXN0ZW1zID0gWworICAiYXJhYiIsICJhcmFiZXh0IiwgImFybW4iLCAiYXJtbmxv
dyIsICJiYWxpIiwgImJlbmciLCAiY2hhbSIsICJkZXZhIiwgImV0aGkiLAorICAiZnVsbHdpZGUi
LCAiZ2VvciIsICJncmVrIiwgImdyZWtsb3ciLCAiZ3VqciIsICJndXJ1IiwgImhhbmlkYXlzIiwg
ImhhbmlkZWMiLAorICAiaGFucyIsICJoYW5zZmluIiwgImhhbnQiLCAiaGFudGZpbiIsICJoZWJy
IiwgImphdmEiLCAianBhbiIsICJqcGFuZmluIiwKKyAgImthbGkiLCAia2htciIsICJrbmRhIiwg
ImxhbmEiLCAibGFuYXRoYW0iLCAibGFvbyIsICJsYXRuIiwgImxlcGMiLCAibGltYiIsCisgICJt
bHltIiwgIm1vbmciLCAibXRlaSIsICJteW1yIiwgIm15bXJzaGFuIiwgIm5rb28iLCAib2xjayIs
ICJvcnlhIiwgInJvbWFuIiwKKyAgInJvbWFubG93IiwgInNhdXIiLCAic3VuZCIsICJ0YWx1Iiwg
InRhbWwiLCAidGFtbGRlYyIsICJ0ZWx1IiwgInRoYWkiLCAidGlidCIsCisgICJ2YWlpIgorXQor
Zm9yIChsZXQgbnVtYmVyaW5nU3lzdGVtIG9mIG51bWJlcmluZ1N5c3RlbXMpIHsKKyAgc2hvdWxk
QmUoYEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLXUtbnUtJHtudW1iZXJpbmdTeXN0ZW19JykucmVz
b2x2ZWRPcHRpb25zKCkubnVtYmVyaW5nU3lzdGVtYCwgYCcke251bWJlcmluZ1N5c3RlbX0nYCk7
Cit9CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTog
eyB0b1N0cmluZygpIHsgdGhyb3cgJ3dlZWtkYXknIH0gfSB9KSIsICInd2Vla2RheSciKTsKK3No
b3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgd2Vla2RheTonaW52YWxpZCcg
fSkiLCAnXCdSYW5nZUVycm9yOiB3ZWVrZGF5IG11c3QgYmUgIm5hcnJvdyIsICJzaG9ydCIsIG9y
ICJsb25nIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1pbnV0
ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXki
LCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHdl
ZWtkYXk6J25hcnJvdycsIG1vbnRoOidudW1lcmljJywgZGF5OidudW1lcmljJyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS53ZWVrZGF5IiwgIiduYXJyb3cnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGlt
ZUZvcm1hdCgnZW4nLCB7IHdlZWtkYXk6J3Nob3J0JywgbW9udGg6J251bWVyaWMnLCBkYXk6J251
bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAiJ3Nob3J0JyIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyB3ZWVrZGF5Oidsb25nJywgbW9udGg6J251
bWVyaWMnLCBkYXk6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLndlZWtkYXkiLCAiJ2xv
bmcnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiB7
IHRvU3RyaW5nKCkgeyB0aHJvdyAnZXJhJyB9IH0gfSkiLCAiJ2VyYSciKTsKK3Nob3VsZFRocm93
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgZXJhOiduZXZlcicgfSkiLCAnXCdSYW5nZUVy
cm9yOiBlcmEgbXVzdCBiZSAibmFycm93IiwgInNob3J0Iiwgb3IgImxvbmciXCcnKTsKK3Nob3Vs
ZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjon
bnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuZGF5IiwgInVuZGVmaW5lZCIpOworc2hvdWxk
QmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25hcnJvdycsIHllYXI6J251bWVy
aWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLmVyYSIsICInbmFycm93JyIpOworc2hvdWxkQmUoIklu
dGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSku
cmVzb2x2ZWRPcHRpb25zKCkuZXJhIiwgIidzaG9ydCciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVU
aW1lRm9ybWF0KCdlbicsIHsgZXJhOidsb25nJywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRP
cHRpb25zKCkuZXJhIiwgIidsb25nJyIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IHllYXI6IHsgdG9TdHJpbmcoKSB7IHRocm93ICd5ZWFyJyB9IH0gfSkiLCAi
J3llYXInIik7CitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IHllYXI6
J25vcGUnIH0pIiwgJ1wnUmFuZ2VFcnJvcjogeWVhciBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVt
ZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6
JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS55ZWFyIiwgInVu
ZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBlcmE6J25h
cnJvdycsIHllYXI6JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9ucygpLnllYXIiLCAiJzItZGln
aXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGVyYTonbmFycm93
JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkueWVhciIsICInbnVtZXJpYyci
KTsKKworc2hvdWxkVGhyb3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDogeyB0
b1N0cmluZygpIHsgdGhyb3cgJ21vbnRoJyB9IH0gfSkiLCAiJ21vbnRoJyIpOworc2hvdWxkVGhy
b3coIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDoyIH0pIiwgJ1wnUmFuZ2VFcnJv
cjogbW9udGggbXVzdCBiZSAiMi1kaWdpdCIsICJudW1lcmljIiwgIm5hcnJvdyIsICJzaG9ydCIs
IG9yICJsb25nIlwnJyk7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IG1p
bnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRo
IiwgInVuZGVmaW5lZCIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
b250aDonMi1kaWdpdCcsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRo
IiwgIicyLWRpZ2l0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
b250aDonbnVtZXJpYycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRo
IiwgIidudW1lcmljJyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBt
b250aDonbmFycm93JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgi
LCAiJ25hcnJvdyciKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbW9u
dGg6J3Nob3J0JywgeWVhcjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubW9udGgiLCAi
J3Nob3J0JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtb250aDon
bG9uZycsIHllYXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9ucygpLm1vbnRoIiwgIidsb25n
JyIpOworCitzaG91bGRUaHJvdygiSW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGRheTogeyB0
b1N0cmluZygpIHsgdGhyb3cgJ2RheScgfSB9IH0pIiwgIidkYXknIik7CitzaG91bGRUaHJvdygi
SW50bC5EYXRlVGltZUZvcm1hdCgnZW4nLCB7IGRheTonJyB9KSIsICdcJ1JhbmdlRXJyb3I6IGRh
eSBtdXN0IGJlICIyLWRpZ2l0IiBvciAibnVtZXJpYyJcJycpOworc2hvdWxkQmUoIkludGwuRGF0
ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6JzItZGlnaXQnLCBob3VyOidudW1lcmljJyB9KS5y
ZXNvbHZlZE9wdGlvbnMoKS5kYXkiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRl
VGltZUZvcm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgZGF5OicyLWRpZ2l0JyB9KS5yZXNvbHZl
ZE9wdGlvbnMoKS5kYXkiLCAiJzItZGlnaXQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZv
cm1hdCgnZW4nLCB7IG1vbnRoOidsb25nJywgZGF5OidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlv
bnMoKS5kYXkiLCAiJ251bWVyaWMnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicsIHsgaG91cjogeyB0b1N0cmluZygpIHsgdGhyb3cgJ2hvdXInIH0gfSB9KSIsICIn
aG91ciciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgaG91cjpb
XSB9KSIsICdcJ1JhbmdlRXJyb3I6IGhvdXIgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMi
XCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIiLCAidW5kZWZpbmVkIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6JzItZGlnaXQnIH0pLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIiLCAiJ251bWVyaWMnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1hdCgn
ZW4nLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnIH0pLnJlc29sdmVkT3B0aW9u
cygpLmhvdXIiLCAiJ251bWVyaWMnIik7CisKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLmhvdXIxMiIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJl
KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgInRydWUiKTsKK3Nob3VsZEJlKCJJ
bnRsLkRhdGVUaW1lRm9ybWF0KCdwdC1CUicsIHsgbWludXRlOicyLWRpZ2l0JywgaG91cjonbnVt
ZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkuaG91cjEyIiwgImZhbHNlIik7CisKK3Nob3VsZFRo
cm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOiB7IHRvU3RyaW5nKCkgeyB0
aHJvdyAnbWludXRlJyB9IH0gfSkiLCAiJ21pbnV0ZSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOm51bGwgfSkiLCAnXCdSYW5nZUVycm9yOiBtaW51
dGUgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMiXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRh
dGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLm1pbnV0ZSIsICJ1bmRlZmluZWQi
KTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0
JywgaG91cjonbnVtZXJpYycgfSkucmVzb2x2ZWRPcHRpb25zKCkubWludXRlIiwgIicyLWRpZ2l0
JyIpOworc2hvdWxkQmUoIkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVy
aWMnLCBob3VyOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5taW51dGUiLCAiJzItZGln
aXQnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgc2Vjb25k
OiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAnc2Vjb25kJyB9IH0gfSkiLCAiJ3NlY29uZCciKTsKK3No
b3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgc2Vjb25kOidiYWR2YWx1ZScg
fSkiLCAnXCdSYW5nZUVycm9yOiBzZWNvbmQgbXVzdCBiZSAiMi1kaWdpdCIgb3IgIm51bWVyaWMi
XCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicpLnJlc29sdmVkT3B0aW9u
cygpLnNlY29uZCIsICJ1bmRlZmluZWQiKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0
KCdlbicsIHsgbWludXRlOidudW1lcmljJywgaG91cjonbnVtZXJpYycsIHNlY29uZDonMi1kaWdp
dCcgfSkucmVzb2x2ZWRPcHRpb25zKCkuc2Vjb25kIiwgIicyLWRpZ2l0JyIpOworc2hvdWxkQmUo
IkludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuJywgeyBtaW51dGU6J251bWVyaWMnLCBob3VyOidudW1l
cmljJywgc2Vjb25kOidudW1lcmljJyB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zZWNvbmQiLCAiJzIt
ZGlnaXQnIik7CisKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgdGlt
ZVpvbmVOYW1lOiB7IHRvU3RyaW5nKCkgeyB0aHJvdyAndGltZVpvbmVOYW1lJyB9IH0gfSkiLCAi
J3RpbWVab25lTmFtZSciKTsKK3Nob3VsZFRocm93KCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbics
IHsgdGltZVpvbmVOYW1lOiduYW1lJyB9KSIsICdcJ1JhbmdlRXJyb3I6IHRpbWVab25lTmFtZSBt
dXN0IGJlICJzaG9ydCIgb3IgImxvbmciXCcnKTsKK3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9y
bWF0KCdlbicpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIsICJ1bmRlZmluZWQiKTsK
K3Nob3VsZEJlKCJJbnRsLkRhdGVUaW1lRm9ybWF0KCdlbicsIHsgbWludXRlOicyLWRpZ2l0Jywg
aG91cjonbnVtZXJpYycsIHRpbWVab25lTmFtZTonc2hvcnQnIH0pLnJlc29sdmVkT3B0aW9ucygp
LnRpbWVab25lTmFtZSIsICInc2hvcnQnIik7CitzaG91bGRCZSgiSW50bC5EYXRlVGltZUZvcm1h
dCgncHQtQlInLCB7IG1pbnV0ZTonMi1kaWdpdCcsIGhvdXI6J251bWVyaWMnLCB0aW1lWm9uZU5h
bWU6J2xvbmcnIH0pLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lTmFtZSIsICInbG9uZyciKTsK
KworbGV0IGxvY2FsZXNTYW1wbGUgPSBbCisgICJhciIsICJhci1TQSIsICJiZSIsICJjYSIsICJj
cyIsICJkYSIsICJkZSIsICJkZS1DSCIsICJlbiIsICJlbi1BVSIsICJlbi1HQiIsCisgICJlbi1Q
SCIsICJlbi1VUyIsICJlbCIsICJlcyIsICJlcy1NWCIsICJlcy1QUiIsICJmciIsICJmci1DQSIs
ICJnYSIsICJoaS1JTiIsCisgICJpcyIsICJpdCIsICJpdyIsICJqYSIsICJrby1LUiIsICJsdCIs
ICJsdiIsICJtayIsICJtcyIsICJtdCIsICJuYiIsICJubCIsCisgICJubyIsICJwbCIsICJwdCIs
ICJwdC1CUiIsICJybyIsICJydSIsICJzayIsICJzbCIsICJzciIsICJzdiIsICJ0aCIsICJ0ciIs
CisgICJ1ayIsICJ2aSIsICJ6aCIsICJ6aC1DTiIsICJ6aC1IYW50LUhLIiwgInpoLVRXIgorXTsK
K2ZvciAobGV0IGxvY2FsZSBvZiBsb2NhbGVzU2FtcGxlKSB7CisgIC8vIFRoZSBmb2xsb3dpbmcg
c3Vic2V0cyBtdXN0IGJlIGF2YWlsYWJsZSBmb3IgZWFjaCBsb2NhbGU6CisgIC8vIHdlZWtkYXks
IHllYXIsIG1vbnRoLCBkYXksIGhvdXIsIG1pbnV0ZSwgc2Vjb25kCisgIHNob3VsZEJlVHJ1ZShg
CisgICAgdmFyIG9wdGlvbnMgPSB7IHdlZWtkYXk6ICJzaG9ydCIsIHllYXI6ICJudW1lcmljIiwg
bW9udGg6ICJzaG9ydCIsIGRheTogIm51bWVyaWMiLCBob3VyOiAibnVtZXJpYyIsIG1pbnV0ZTog
Im51bWVyaWMiLCBzZWNvbmQ6ICJudW1lcmljIiB9OworICAgIHZhciByZXNvbHZlZCA9IEludGwu
RGF0ZVRpbWVGb3JtYXQoIiR7bG9jYWxlfSIsIG9wdGlvbnMpLnJlc29sdmVkT3B0aW9ucygpOwor
ICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9wdGlvbiA9PiByZXNvbHZlZFtvcHRpb25d
ICE9IG51bGwpYCk7CisgIC8vIHdlZWtkYXksIHllYXIsIG1vbnRoLCBkYXkKKyAgc2hvdWxkQmVU
cnVlKGAKKyAgICB2YXIgb3B0aW9ucyA9IHsgd2Vla2RheTogInNob3J0IiwgeWVhcjogIm51bWVy
aWMiLCBtb250aDogInNob3J0IiwgZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQg
PSBJbnRsLkRhdGVUaW1lRm9ybWF0KCIke2xvY2FsZX0iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlv
bnMoKTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRb
b3B0aW9uXSAhPSBudWxsKWApOworICAvLyB5ZWFyLCBtb250aCwgZGF5CisgIHNob3VsZEJlVHJ1
ZShgCisgICAgdmFyIG9wdGlvbnMgPSB7IHllYXI6ICJudW1lcmljIiwgbW9udGg6ICJsb25nIiwg
ZGF5OiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRsLkRhdGVUaW1lRm9ybWF0
KCIke2xvY2FsZX0iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsKKyAgICBPYmplY3Qua2V5
cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9uXSAhPSBudWxsKWApOwor
ICAvLyB5ZWFyLCBtb250aAorICBzaG91bGRCZVRydWUoYAorICAgIHZhciBvcHRpb25zID0geyB5
ZWFyOiAibnVtZXJpYyIsIG1vbnRoOiAibG9uZyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJbnRs
LkRhdGVUaW1lRm9ybWF0KCIke2xvY2FsZX0iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMoKTsK
KyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0aW9u
XSAhPSBudWxsKWApOworICAvLyBtb250aCwgZGF5CisgIHNob3VsZEJlVHJ1ZShgCisgICAgdmFy
IG9wdGlvbnMgPSB7IG1vbnRoOiAibG9uZyIsIGRheTogIm51bWVyaWMiIH07CisgICAgdmFyIHJl
c29sdmVkID0gSW50bC5EYXRlVGltZUZvcm1hdCgiJHtsb2NhbGV9Iiwgb3B0aW9ucykucmVzb2x2
ZWRPcHRpb25zKCk7CisgICAgT2JqZWN0LmtleXMob3B0aW9ucykuZXZlcnkob3B0aW9uID0+IHJl
c29sdmVkW29wdGlvbl0gIT0gbnVsbClgKTsKKyAgLy8gaG91ciwgbWludXRlLCBzZWNvbmQKKyAg
c2hvdWxkQmVUcnVlKGAKKyAgICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51
dGU6ICJudW1lcmljIiwgc2Vjb25kOiAibnVtZXJpYyIgfTsKKyAgICB2YXIgcmVzb2x2ZWQgPSBJ
bnRsLkRhdGVUaW1lRm9ybWF0KCIke2xvY2FsZX0iLCBvcHRpb25zKS5yZXNvbHZlZE9wdGlvbnMo
KTsKKyAgICBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShvcHRpb24gPT4gcmVzb2x2ZWRbb3B0
aW9uXSAhPSBudWxsKWApOworICAvLyBob3VyLCBtaW51dGUKKyAgc2hvdWxkQmVUcnVlKGAKKyAg
ICB2YXIgb3B0aW9ucyA9IHsgaG91cjogIm51bWVyaWMiLCBtaW51dGU6ICJudW1lcmljIiB9Owor
ICAgIHZhciByZXNvbHZlZCA9IEludGwuRGF0ZVRpbWVGb3JtYXQoIiR7bG9jYWxlfSIsIG9wdGlv
bnMpLnJlc29sdmVkT3B0aW9ucygpOworICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmV2ZXJ5KG9w
dGlvbiA9PiByZXNvbHZlZFtvcHRpb25dICE9IG51bGwpYCk7Cit9CmRpZmYgLS1naXQgYS9DaGFu
Z2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggOTYyZWY4MWQxODQ2NDFjMDJmYzg4N2RiYzk4M2RkMWEx
ODczOTFiYy4uYzNhMTIwYmRjYzIxOWU4NmEzYzFmM2VkNmYwNmNiNWJhOWYzNjExMSAxMDA2NDQK
LS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE1LTEy
LTIxICBBbmR5IFZhbldhZ29uZXIgIDxhbmR5QGluc3RydWN0dXJlLmNvbT4KKworICAgICAgICBb
SU5UTF0gSW1wbGVtZW50IEludGwuRGF0ZVRpbWVGb3JtYXQucHJvdG90eXBlLnJlc29sdmVkT3B0
aW9ucyAoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTQ3NjAzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBTb3VyY2UvY21ha2UvT3B0aW9uc1dpbi5jbWFrZTogRGlzYWJsZSBJTlRMIG9uIFdpbmRvd3Mg
Zm9yIG5vdworCiAyMDE1LTEyLTE2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYu
Y2Fub24uZnI+CiAKICAgICAgICAgW0ZldGNoIEFQSV0gQWRkIGZldGNoIEFQSSBjb21waWxlIHRp
bWUgZmxhZwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>