<?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>181006</bug_id>
          
          <creation_ts>2017-12-19 15:41:35 -0800</creation_ts>
          <short_desc>Element fullscreen interface should display the location</short_desc>
          <delta_ts>2018-05-23 09:29:07 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jeremy Jones">jeremyj-wk</reporter>
          <assigned_to name="Jeremy Jones">jeremyj-wk</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fred.wang</cc>
    
    <cc>jer.noble</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1383372</commentid>
    <comment_count>0</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-12-19 15:41:35 -0800</bug_when>
    <thetext>Element fullscreen interface should display the locaiton.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383374</commentid>
    <comment_count>1</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-12-19 15:43:21 -0800</bug_when>
    <thetext>rdar://problem/36143176</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383376</commentid>
    <comment_count>2</comment_count>
      <attachid>329843</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-12-19 15:49:04 -0800</bug_when>
    <thetext>Created attachment 329843
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383393</commentid>
    <comment_count>3</comment_count>
      <attachid>329843</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2017-12-19 16:01:14 -0800</bug_when>
    <thetext>Comment on attachment 329843
Patch

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

&gt; Source/WebCore/platform/mac/WebCoreNSURLExtras.mm:1273
&gt; +NSString *simplifiedUserVisibleString(NSURL *url)

I am somewhat surprised to see this code end up in WebKit! We should probably have a discussion.

&gt; Source/WebCore/platform/mac/WebCoreNSURLExtras.mm:1336
&gt; +        result = [NSString stringWithFormat:@&quot;%C%@&quot;, WBSLeftToRightMarkCharacter, [result substringFromIndex:lengthOfPrefixToSuppress]];

Surely this won’t work (the WBS thing).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383394</commentid>
    <comment_count>4</comment_count>
      <attachid>329843</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2017-12-19 16:01:58 -0800</bug_when>
    <thetext>Comment on attachment 329843
Patch

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

&gt;&gt; Source/WebCore/platform/mac/WebCoreNSURLExtras.mm:1273
&gt;&gt; +NSString *simplifiedUserVisibleString(NSURL *url)
&gt; 
&gt; I am somewhat surprised to see this code end up in WebKit! We should probably have a discussion.

Also, you should note that other parts of WebKit (Drag and Drop) use LinkPresentation for this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383416</commentid>
    <comment_count>5</comment_count>
      <attachid>329843</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2017-12-19 16:42:59 -0800</bug_when>
    <thetext>Comment on attachment 329843
Patch

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

&gt;&gt;&gt; Source/WebCore/platform/mac/WebCoreNSURLExtras.mm:1273
&gt;&gt;&gt; +NSString *simplifiedUserVisibleString(NSURL *url)
&gt;&gt; 
&gt;&gt; I am somewhat surprised to see this code end up in WebKit! We should probably have a discussion.
&gt; 
&gt; Also, you should note that other parts of WebKit (Drag and Drop) use LinkPresentation for this.

Actually, just r- for propagating this code to a third place.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383497</commentid>
    <comment_count>6</comment_count>
      <attachid>329876</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-12-19 19:23:57 -0800</bug_when>
    <thetext>Created attachment 329876
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383500</commentid>
    <comment_count>7</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2017-12-19 19:27:12 -0800</bug_when>
    <thetext>Attachment 329876 did not pass style-queue:


ERROR: Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:221:  This { should be at the end of the previous line  [whitespace/braces] [4]
Total errors found: 1 in 5 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>1383509</commentid>
    <comment_count>8</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-12-19 19:49:50 -0800</bug_when>
    <thetext>(In reply to Tim Horton from comment #5)
&gt; Comment on attachment 329843 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=329843&amp;action=review
&gt; 
&gt; &gt;&gt;&gt; Source/WebCore/platform/mac/WebCoreNSURLExtras.mm:1273
&gt; &gt;&gt;&gt; +NSString *simplifiedUserVisibleString(NSURL *url)
&gt; &gt;&gt; 
&gt; &gt;&gt; I am somewhat surprised to see this code end up in WebKit! We should probably have a discussion.
&gt; &gt; 
&gt; &gt; Also, you should note that other parts of WebKit (Drag and Drop) use LinkPresentation for this.
&gt; 
&gt; Actually, just r- for propagating this code to a third place.

Deleted the redundant code and switched to link presentation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383511</commentid>
    <comment_count>9</comment_count>
      <attachid>329883</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-12-19 20:00:21 -0800</bug_when>
    <thetext>Created attachment 329883
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383513</commentid>
    <comment_count>10</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2017-12-19 20:03:26 -0800</bug_when>
    <thetext>Attachment 329883 did not pass style-queue:


ERROR: Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:221:  This { should be at the end of the previous line  [whitespace/braces] [4]
Total errors found: 1 in 5 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>1383524</commentid>
    <comment_count>11</comment_count>
      <attachid>329888</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-12-19 20:34:39 -0800</bug_when>
    <thetext>Created attachment 329888
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383526</commentid>
    <comment_count>12</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2017-12-19 20:36:16 -0800</bug_when>
    <thetext>Attachment 329888 did not pass style-queue:


ERROR: Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:220:  This { should be at the end of the previous line  [whitespace/braces] [4]
Total errors found: 1 in 7 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>1383732</commentid>
    <comment_count>13</comment_count>
      <attachid>329888</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2017-12-20 10:46:27 -0800</bug_when>
    <thetext>Comment on attachment 329888
Patch

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

&gt; Source/WebCore/PAL/pal/spi/cocoa/LinkPresentationSPI.h:40
&gt; +#endif // (PLATFORM(MAC) &amp;&amp; __MAC_OS_X_VERSION_MIN_REQUIRED &gt;= 101300) || (PLATFORM(IOS) &amp;&amp; __IPHONE_OS_VERSION_MIN_REQUIRED &gt;= 100300)

Do we really still care about &lt; 10.3?

&gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:594
&gt; +    NSString *domain = [url _lp_simplifiedDisplayString];

You need to make this more conditional, like the other place we use it, because it’s missing in the base system (working on it). For now just fall back to the non-simplified version.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383748</commentid>
    <comment_count>14</comment_count>
      <attachid>329888</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-12-20 11:11:33 -0800</bug_when>
    <thetext>Comment on attachment 329888
Patch

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

&gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:242
&gt; +        RetainPtr&lt;UIImage&gt; lockImage = [UIImage imageNamed:lockImageName inBundle:bundle compatibleWithTraitCollection:nil];

The RetainPtr&lt;UIImage&gt; here just adds extra ref churn. The result of -imageNamed: is autoreleased, so you can just use a raw pointer.

&gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:244
&gt; +        [[_locationButton imageView] setTintColor:trustedSite?greenTint:whiteTint];

Spaces around the ? and :

&gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:268
&gt; +    [_cancelButton setTitle:@&quot;Done&quot; forState:UIControlStateNormal];

Why is this not localized?

&gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:289
&gt; +    [bottom setPriority:UILayoutPriorityRequired-1];

Spaces around the -

&gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:346
&gt; +    [UIView animateWithDuration:0.1 animations:^{

Maybe this animation duration should be in a static const.

&gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:362
&gt; +    [self performSelector:@selector(hideCancelButton) withObject:nil afterDelay:4.0];

Same with the delay.

&gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:490
&gt; +    RetainPtr&lt;NSString&gt; _EVOrganizationName;
&gt; +    BOOL _EVOrganizationNameIsValid;

Is _EVOrganizationNameIsValid just an alias for having a non-null _EVOrganizationName? Or does it really mean &quot;tried to look up _EVOrganizationName&quot;?

&gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:562
&gt; +    NSDictionary *infoDictionary = CFBridgingRelease(SecTrustCopyInfo(trust));

Is CFBridgingRelease the right thing to do in a non-ARC world?

&gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:597
&gt; +    if ([[url absoluteString] _web_hasCaseInsensitivePrefix:@&quot;data:&quot;])

This should ask the url for the protocol.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1384059</commentid>
    <comment_count>15</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-12-21 00:26:50 -0800</bug_when>
    <thetext>(In reply to Tim Horton from comment #13)
&gt; Comment on attachment 329888 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=329888&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/PAL/pal/spi/cocoa/LinkPresentationSPI.h:40
&gt; &gt; +#endif // (PLATFORM(MAC) &amp;&amp; __MAC_OS_X_VERSION_MIN_REQUIRED &gt;= 101300) || (PLATFORM(IOS) &amp;&amp; __IPHONE_OS_VERSION_MIN_REQUIRED &gt;= 100300)
&gt; 
&gt; Do we really still care about &lt; 10.3?

EWS still builds against 10.x. I&apos;ll try getting rid the version check.

&gt; 
&gt; &gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:594
&gt; &gt; +    NSString *domain = [url _lp_simplifiedDisplayString];
&gt; 
&gt; You need to make this more conditional, like the other place we use it,
&gt; because it’s missing in the base system (working on it). For now just fall
&gt; back to the non-simplified version.

    if (LinkPresentationLibrary())
        domain = [url _lp_simplifiedDisplayString];
    else
        domain = userVisibleString(url);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1384062</commentid>
    <comment_count>16</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-12-21 00:53:59 -0800</bug_when>
    <thetext>(In reply to Simon Fraser (smfr) from comment #14)
&gt; Comment on attachment 329888 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=329888&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:242
&gt; &gt; +        RetainPtr&lt;UIImage&gt; lockImage = [UIImage imageNamed:lockImageName inBundle:bundle compatibleWithTraitCollection:nil];
&gt; 
&gt; The RetainPtr&lt;UIImage&gt; here just adds extra ref churn. The result of
&gt; -imageNamed: is autoreleased, so you can just use a raw pointer.

Done.

&gt; 
&gt; &gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:244
&gt; &gt; +        [[_locationButton imageView] setTintColor:trustedSite?greenTint:whiteTint];
&gt; 
&gt; Spaces around the ? and :

Done. 3x

&gt; 
&gt; &gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:268
&gt; &gt; +    [_cancelButton setTitle:@&quot;Done&quot; forState:UIControlStateNormal];
&gt; 
&gt; Why is this not localized?

Localized:
WEB_UI_STRING(&quot;Done&quot;, &quot;Text of button that exits element fullscreen.&quot;)

&gt; 
&gt; &gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:289
&gt; &gt; +    [bottom setPriority:UILayoutPriorityRequired-1];
&gt; 
&gt; Spaces around the -

Done.

&gt; 
&gt; &gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:346
&gt; &gt; +    [UIView animateWithDuration:0.1 animations:^{
&gt; 
&gt; Maybe this animation duration should be in a static const.

Done.
static const NSTimeInterval showHideAnimationDuration = 0.1;

&gt; 
&gt; &gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:362
&gt; &gt; +    [self performSelector:@selector(hideCancelButton) withObject:nil afterDelay:4.0];
&gt; 
&gt; Same with the delay.

Done.
static const NSTimeInterval autoHideDelay = 4.0;

&gt; 
&gt; &gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:490
&gt; &gt; +    RetainPtr&lt;NSString&gt; _EVOrganizationName;
&gt; &gt; +    BOOL _EVOrganizationNameIsValid;
&gt; 
&gt; Is _EVOrganizationNameIsValid just an alias for having a non-null
&gt; _EVOrganizationName? Or does it really mean &quot;tried to look up
&gt; _EVOrganizationName&quot;?

It means &quot;tried to look it up, so don&apos;t look-up again&quot;.

&gt; 
&gt; &gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:562
&gt; &gt; +    NSDictionary *infoDictionary = CFBridgingRelease(SecTrustCopyInfo(trust));
&gt; 
&gt; Is CFBridgingRelease the right thing to do in a non-ARC world?

Fixed:
[(__bridge NSDictionary *)SecTrustCopyInfo(trust) autorelease]

&gt; 
&gt; &gt; Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:597
&gt; &gt; +    if ([[url absoluteString] _web_hasCaseInsensitivePrefix:@&quot;data:&quot;])
&gt; 
&gt; This should ask the url for the protocol.

Done:
    if ([[url scheme] caseInsensitiveCompare:@&quot;data&quot;] == NSOrderedSame)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1384064</commentid>
    <comment_count>17</comment_count>
      <attachid>330020</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-12-21 01:09:15 -0800</bug_when>
    <thetext>Created attachment 330020
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1384066</commentid>
    <comment_count>18</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2017-12-21 01:11:16 -0800</bug_when>
    <thetext>Attachment 330020 did not pass style-queue:


ERROR: Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:227:  This { should be at the end of the previous line  [whitespace/braces] [4]
Total errors found: 1 in 8 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>1384070</commentid>
    <comment_count>19</comment_count>
      <attachid>330024</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-12-21 01:37:24 -0800</bug_when>
    <thetext>Created attachment 330024
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1384071</commentid>
    <comment_count>20</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2017-12-21 01:38:57 -0800</bug_when>
    <thetext>Attachment 330024 did not pass style-queue:


ERROR: Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:227:  This { should be at the end of the previous line  [whitespace/braces] [4]
Total errors found: 1 in 8 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>1384073</commentid>
    <comment_count>21</comment_count>
      <attachid>330025</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-12-21 02:18:17 -0800</bug_when>
    <thetext>Created attachment 330025
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1384074</commentid>
    <comment_count>22</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2017-12-21 02:21:00 -0800</bug_when>
    <thetext>Attachment 330025 did not pass style-queue:


ERROR: Source/WebKit/UIProcess/ios/WKFullScreenWindowControllerIOS.mm:227:  This { should be at the end of the previous line  [whitespace/braces] [4]
Total errors found: 1 in 8 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>1384077</commentid>
    <comment_count>23</comment_count>
      <attachid>330025</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-12-21 02:57:03 -0800</bug_when>
    <thetext>Comment on attachment 330025
Patch for landing

Clearing flags on attachment: 330025

Committed r226218: &lt;https://trac.webkit.org/changeset/226218&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329843</attachid>
            <date>2017-12-19 15:49:04 -0800</date>
            <delta_ts>2017-12-19 19:23:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181006-20171219154903.patch</filename>
            <type>text/plain</type>
            <size>51343</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MDczCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDAyNzVmMjRlODA2MTcw
ZGUwM2Y0MDExNTI2NmUwMjFiNGYzZjY0Mi4uODFkYjdjOGU0NTI3YTQxYmY3MjVhZjZlZTIyYzVh
NjYyNmQ3Mzk5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE3LTEyLTE5ICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBFbGVtZW50IGZ1bGxzY3Jl
ZW4gaW50ZXJmYWNlIHNob3VsZCBkaXNwbGF5IHRoZSBsb2NhaXRvbi4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTAwNgorICAgICAgICByZGFyOi8v
cHJvYmxlbS8zNjE0MzE3NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEFkZCBhIHV0aWxpdHkgZnVuY3Rpb24gZm9yIGdlbmVyYXRpbmcgYSBzaG9ydCB1
c2VyIHZpc2libGUgc3RyaW5nIGZyb20gYSBVUkwuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
V2ViQ29yZU5TVVJMRXh0cmFzLmg6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1dlYkNvcmVOU1VS
TEV4dHJhcy5tbToKKyAgICAgICAgKFdlYkNvcmU6OmFwcGx5SG9zdE5hbWVGdW5jdGlvblRvVVJM
U3RyaW5nKToKKyAgICAgICAgKFdlYkNvcmU6Omhvc3RBbmRQb3J0UmFuZ2VGcm9tVXNlclR5cGVk
U3RyaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OnNpbXBsaWZpZWRVc2VyVmlzaWJsZVN0cmluZyk6
CisKIDIwMTctMTItMTggIE1lZ2FuIEdhcmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4K
IAogICAgICAgICBTdXBwb3J0IEF1dG9zY3JvbGxpbmcgaW4gY29udGVudGVkaXRhYmxlIGZvciBX
SzIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKaW5kZXggYWZiYjJlMjhhYWQxZTdlNGYyMGU0NmNhZjIxMTg0ODZkMDg0ZDk4ZS4u
MmVmMTI4MjE1MDIyNTU0NjkzNjExYmZlNTE3OTI2MGQwOTM1OTMwMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MyBAQAorMjAxNy0xMi0xOSAgSmVyZW15IEpvbmVzICA8amVyZW15akBhcHBsZS5jb20+
CisKKyAgICAgICAgRWxlbWVudCBmdWxsc2NyZWVuIGludGVyZmFjZSBzaG91bGQgZGlzcGxheSB0
aGUgbG9jYWl0b24uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xODEwMDYKKyAgICAgICAgcmRhcjovL3Byb2JsZW0vMzYxNDMxNzYKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTaG93IGEgc2hvcnQgdXNlciB2
aXNpYmxlIGxvY2F0aW9uIHN0cmluZyB3aXRoIGEgbG9jayBpZiBzZWN1cmUgYW5kIGdyZWVuIHdo
ZW4gdHJ1c3RlZC4KKworICAgICAgICBJbmNsdWRlcyBvdGhlciBpbnRlcmZhY2UgY2xlYW51cCBh
bmQgdHdlYWtzLgorCisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dD
b250cm9sbGVySU9TLm1tOgorICAgICAgICAoLVtfV0tGdWxsU2NyZWVuVmlld0NvbnRyb2xsZXIg
dmlld1dpbGxUcmFuc2l0aW9uVG9TaXplOndpdGhUcmFuc2l0aW9uQ29vcmRpbmF0b3I6XSk6Cisg
ICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciB2aXN1YWxFZmZlY3RWaWV3V2l0
aEZyYW1lOl0pOgorICAgICAgICAobWlycm9yRWRnZUluc2V0cyk6CisgICAgICAgICgtW19XS0Z1
bGxTY3JlZW5WaWV3Q29udHJvbGxlciBfdXBkYXRlTGF5b3V0TWFyZ2luc10pOgorICAgICAgICAo
LVtfV0tGdWxsU2NyZWVuVmlld0NvbnRyb2xsZXIgdmlld0RpZExheW91dFN1YnZpZXdzXSk6Cisg
ICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciBzZXRMb2NhdGlvbjpzZWN1cmU6
dHJ1c3RlZE5hbWU6dHJ1c3RlZFNpdGU6XSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3
Q29udHJvbGxlciBjcmVhdGVTdWJ2aWV3c10pOgorICAgICAgICAoLVtfV0tGdWxsU2NyZWVuVmll
d0NvbnRyb2xsZXIgbG9hZFZpZXddKToKKyAgICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250
cm9sbGVyIHZpZXdEaWRBcHBlYXI6XSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3Q29u
dHJvbGxlciBoaWRlQ2FuY2VsQnV0dG9uXSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3
Q29udHJvbGxlciBzaG93Q2FuY2VsQnV0dG9uOl0pOgorICAgICAgICAoLVtfV0tGdWxsc2NyZWVu
Um9vdFZpZXdDb250cm9sbGVyIHNldFNob3dzU3RhdHVzQmFyOl0pOgorICAgICAgICAoLVtfV0tG
dWxsc2NyZWVuUm9vdFZpZXdDb250cm9sbGVyIHByZWZlcnNTdGF0dXNCYXJIaWRkZW5dKToKKyAg
ICAgICAgKC1bV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlciBfaW52YWxpZGF0ZUVWT3JnYW5p
emF0aW9uTmFtZV0pOgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGlz
U2VjdXJlXSk6CisgICAgICAgICgtW1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXIgX3NlcnZl
clRydXN0XSk6CisgICAgICAgICgtW1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXIgX0VWT3Jn
YW5pemF0aW9uTmFtZV0pOgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVy
IHVwZGF0ZUxvY2F0aW9uSW5mb10pOgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250
cm9sbGVyIGVudGVyRnVsbFNjcmVlbl0pOgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dD
b250cm9sbGVyIGJlZ2FuRW50ZXJGdWxsU2NyZWVuV2l0aEluaXRpYWxGcmFtZTpmaW5hbEZyYW1l
Ol0pOgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGJlZ2FuRXhpdEZ1
bGxTY3JlZW5XaXRoSW5pdGlhbEZyYW1lOmZpbmFsRnJhbWU6XSk6CisgICAgICAgICgtW19XS0Z1
bGxTY3JlZW5WaWV3Q29udHJvbGxlciBwcmVmZXJzU3RhdHVzQmFySGlkZGVuXSk6IERlbGV0ZWQu
CisgICAgICAgICogV2ViS2l0LnhjYXNzZXRzL0RvbmUuaW1hZ2VzZXQvQ29udGVudHMuanNvbjog
UmVtb3ZlZC4KKyAgICAgICAgKiBXZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvQ29u
dGVudHMuanNvbjogQWRkZWQuCisgICAgICAgICogV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmlt
YWdlc2V0L05hdmlnYXRpb25CYXJMb2NrTWluaUAyeC5wZGY6IENvcGllZCBmcm9tIFNvdXJjZS9X
ZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0RvbmUuaW1hZ2VzZXQvRG9uZS5wZGYuCisgICAgICAgICog
V2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdlc2V0L05hdmlnYXRpb25CYXJMb2NrTWluaUAz
eC5wZGY6IFJlbmFtZWQgZnJvbSBTb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Eb25lLmlt
YWdlc2V0L0RvbmUucGRmLgorCiAyMDE3LTEyLTE4ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1A
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPUywgaU9TXSBBZGQgbmV3IG1hY2ggbG9va3VwIHBv
cnQgZm9yIENvcmVNZWRpYSByZW1vdGUgY29udHJvbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVOU1VSTEV4dHJhcy5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL1dlYkNvcmVOU1VSTEV4dHJhcy5oCmluZGV4IGZlMTA2ODEzNDVmNTdmM2Y0MWY0
ZDBkYTcyY2U2MTYxZGJiMDY5NDguLjA0ZGM4M2Q0MGYzZDY5MGZkMTM1MzQ3OTQzYjY4NzA4ZTUz
ZGRjMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlTlNV
UkxFeHRyYXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZU5TVVJM
RXh0cmFzLmgKQEAgLTMxLDYgKzMxLDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitXRUJD
T1JFX0VYUE9SVCBOU1N0cmluZyAqc2ltcGxpZmllZFVzZXJWaXNpYmxlU3RyaW5nKE5TVVJMICop
OwogV0VCQ09SRV9FWFBPUlQgTlNTdHJpbmcgKnVzZXJWaXNpYmxlU3RyaW5nKE5TVVJMICopOwog
V0VCQ09SRV9FWFBPUlQgTlNVUkwgKlVSTEJ5Q2Fub25pY2FsaXppbmdVUkwoTlNVUkwgKik7CiBX
RUJDT1JFX0VYUE9SVCBOU1VSTCAqVVJMV2l0aFVzZXJUeXBlZFN0cmluZyhOU1N0cmluZyAqLCBO
U1VSTCAqYmFzZVVSTCk7IC8vIFJldHVybiB2YWx1ZSBvZiBuaWwgbWVhbnMgZXJyb3IuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZU5TVVJMRXh0cmFzLm1t
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVOU1VSTEV4dHJhcy5tbQppbmRl
eCBiZDY3NzZkNGZlZWViMzBiMjZhMmRhNDZhZDYyOTMzZDdlMzg2YzI5Li5mZGJlODE2NDg4MmYz
NGQ4OTc4ODQ5ZThjOWE4ZmVmNTY0N2RlYmU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tYWMvV2ViQ29yZU5TVVJMRXh0cmFzLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21hYy9XZWJDb3JlTlNVUkxFeHRyYXMubW0KQEAgLTI5LDYgKzI5LDcgQEAKICNpbXBv
cnQgImNvbmZpZy5oIgogI2ltcG9ydCAiVVJMUGFyc2VyLmgiCiAjaW1wb3J0ICJXZWJDb3JlTlNV
UkxFeHRyYXMuaCIKKyNpbXBvcnQgPHBhbC9zcGkvY29jb2EvTlNTdHJpbmdTUEkuaD4KICNpbXBv
cnQgPHd0Zi9GdW5jdGlvbi5oPgogI2ltcG9ydCA8d3RmL0hleE51bWJlci5oPgogI2ltcG9ydCA8
d3RmL09iamNSdW50aW1lRXh0cmFzLmg+CkBAIC03MSw3ICs3Miw2IEBAIHN0YXRpYyBib29sIGlz
QXJtZW5pYW5TY3JpcHRDaGFyYWN0ZXIoVUNoYXIzMiBjb2RlUG9pbnQpCiAgICAgcmV0dXJuIHNj
cmlwdCA9PSBVU0NSSVBUX0FSTUVOSUFOOwogfQogCi0KIHRlbXBsYXRlPHR5cGVuYW1lIENoYXJh
Y3RlclR5cGU+IGlubGluZSBib29sIGlzQVNDSUlEaWdpdE9yVmFsaWRIb3N0Q2hhcmFjdGVyKENo
YXJhY3RlclR5cGUgY2hhckNvZGUpCiB7CiAgICAgaWYgKCFpc0FTQ0lJRGlnaXRPclB1bmN0dWF0
aW9uKGNoYXJDb2RlKSkKQEAgLTk0LDggKzk0LDYgQEAgdGVtcGxhdGU8dHlwZW5hbWUgQ2hhcmFj
dGVyVHlwZT4gaW5saW5lIGJvb2wgaXNBU0NJSURpZ2l0T3JWYWxpZEhvc3RDaGFyYWN0ZXIoQ2gK
ICAgICB9CiB9CiAKLQotCiBzdGF0aWMgQk9PTCBpc0xvb2thbGlrZUNoYXJhY3RlcihzdGQ6Om9w
dGlvbmFsPFVDaGFyMzI+IHByZXZpb3VzQ29kZVBvaW50LCBVQ2hhcjMyIGNoYXJDb2RlKQogewog
ICAgIC8vIFRoaXMgZnVuY3Rpb24gdHJlYXRzIHRoZSBmb2xsb3dpbmcgYXMgdW5zYWZlLCBsb29r
YWxpa2UgY2hhcmFjdGVyczoKQEAgLTczMSw2ICs3MjksNyBAQCBzdGF0aWMgdm9pZCBhcHBseUhv
c3ROYW1lRnVuY3Rpb25Ub1VSTFN0cmluZyhOU1N0cmluZyAqc3RyaW5nLCBTdHJpbmdSYW5nZUFw
cGxpZQogICAgIAogICAgIC8vIENoZWNrIHRoYXQgYWxsIGNoYXJhY3RlcnMgYmVmb3JlIHRoZSA6
Ly8gYXJlIHZhbGlkIHNjaGVtZSBjaGFyYWN0ZXJzLgogICAgIHN0YXRpYyBOU0NoYXJhY3RlclNl
dCAqbm9uU2NoZW1lQ2hhcmFjdGVycyA9IHJldGFpbihbW05TQ2hhcmFjdGVyU2V0IGNoYXJhY3Rl
clNldFdpdGhDaGFyYWN0ZXJzSW5TdHJpbmc6QCJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFi
Y2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSstLiJdIGludmVydGVkU2V0XSk7CisK
ICAgICBpZiAoW3N0cmluZyByYW5nZU9mQ2hhcmFjdGVyRnJvbVNldDpub25TY2hlbWVDaGFyYWN0
ZXJzIG9wdGlvbnM6MCByYW5nZTpOU01ha2VSYW5nZSgwLCBzZXBhcmF0b3JSYW5nZS5sb2NhdGlv
bildLmxvY2F0aW9uICE9IE5TTm90Rm91bmQpCiAgICAgICAgIHJldHVybjsKICAgICAKQEAgLTEy
MjIsNCArMTIyMSwxMjEgQEAgQk9PTCBsb29rc0xpa2VBYnNvbHV0ZVVSTChOU1N0cmluZyAqc3Ry
aW5nKQogICAgIHJldHVybiByYW5nZU9mVVJMU2NoZW1lKHN0cmluZ0J5VHJpbW1pbmdXaGl0ZXNw
YWNlKHN0cmluZykpLmxvY2F0aW9uICE9IE5TTm90Rm91bmQ7CiB9CiAKK3N0YXRpYyBOU1Jhbmdl
IGhvc3RBbmRQb3J0UmFuZ2VGcm9tVXNlclR5cGVkU3RyaW5nKE5TU3RyaW5nICp1cmxTdHJpbmcp
Cit7CisgICAgLy8gRmluZCBob3N0bmFtZXMuIFRvbyBiYWQgd2UgY2FuJ3QgdXNlIGFueSByZWFs
IFVSTC1wYXJzaW5nIGNvZGUgdG8gZG8gdGhpcywKKyAgICAvLyBidXQgd2UgaGF2ZSB0byBkbyBp
dCBiZWZvcmUgZG9pbmcgYWxsIHRoZSAlLWVzY2FwaW5nLCBhbmQgdGhpcyBpcyB0aGUgb25seQor
ICAgIC8vIGNvZGUgd2UgaGF2ZSB0aGF0IHBhcnNlcyBtYWlsdG8gVVJMcyBhbnl3YXkuCisKKyAg
ICAvLyBNYXliZSB3ZSBzaG91bGQgaW1wbGVtZW50IHRoaXMgdXNpbmcgYSBjaGFyYWN0ZXIgYnVm
ZmVyIGluc3RlYWQ/CisKKyAgICBOU1JhbmdlIG5vdEZvdW5kID0gTlNNYWtlUmFuZ2UoTlNOb3RG
b3VuZCwgMCk7CisKKyAgICBpZiAoIXVybFN0cmluZykKKyAgICAgICAgcmV0dXJuIG5vdEZvdW5k
OworCisgICAgLy8gRmluZCB0aGUgaG9zdCBuYW1lIGluIGEgaGllcmFyY2hpY2FsIFVSTC4KKyAg
ICAvLyBJdCBjb21lcyBhZnRlciBhICI6Ly8iIHNlcXVlbmNlLCB3aXRoIHNjaGVtZSBjaGFyYWN0
ZXJzIHByZWNlZGluZy4KKyAgICAvLyBJZiBlbmRzIHdpdGggdGhlIGVuZCBvZiB0aGUgc3RyaW5n
IG9yIGEgIiMiLCAiLyIsIG9yIGEgIj8iLgorICAgIC8vIElmIHRoZXJlIGlzIGEgIkAiIGNoYXJh
Y3RlciwgdGhlIGhvc3QgcGFydCBpcyBqdXN0IHRoZSBwYXJ0IGFmdGVyIHRoZSAiQCIuCisgICAg
TlNSYW5nZSBzZXBhcmF0b3JSYW5nZSA9IFt1cmxTdHJpbmcgcmFuZ2VPZlN0cmluZzpAIjovLyIg
b3B0aW9uczpOU0xpdGVyYWxTZWFyY2hdOworICAgIGlmIChzZXBhcmF0b3JSYW5nZS5sb2NhdGlv
biA9PSBOU05vdEZvdW5kKQorICAgICAgICByZXR1cm4gbm90Rm91bmQ7CisKKyAgICAvLyBDaGVj
ayB0aGF0IGFsbCBjaGFyYWN0ZXJzIGJlZm9yZSB0aGUgOi8vIGFyZSB2YWxpZCBzY2hlbWUgY2hh
cmFjdGVycy4KKyAgICBzdGF0aWMgTlNDaGFyYWN0ZXJTZXQgKm5vblNjaGVtZUNoYXJhY3RlcnMg
PSBbW1tOU0NoYXJhY3RlclNldCBjaGFyYWN0ZXJTZXRXaXRoQ2hhcmFjdGVyc0luU3RyaW5nOkAi
QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0
NTY3ODkrLS4iXSBpbnZlcnRlZFNldF0gcmV0YWluXTsKKworICAgIGlmIChbdXJsU3RyaW5nIHJh
bmdlT2ZDaGFyYWN0ZXJGcm9tU2V0Om5vblNjaGVtZUNoYXJhY3RlcnMgb3B0aW9uczpOU0xpdGVy
YWxTZWFyY2ggcmFuZ2U6TlNNYWtlUmFuZ2UoMCwgc2VwYXJhdG9yUmFuZ2UubG9jYXRpb24pXS5s
b2NhdGlvbiAhPSBOU05vdEZvdW5kKQorICAgICAgICByZXR1cm4gbm90Rm91bmQ7CisKKyAgICBO
U1VJbnRlZ2VyIHN0cmluZ0xlbmd0aCA9IFt1cmxTdHJpbmcgbGVuZ3RoXTsKKworICAgIHN0YXRp
YyBOU0NoYXJhY3RlclNldCAqaG9zdFRlcm1pbmF0b3JzID0gW1tOU0NoYXJhY3RlclNldCBjaGFy
YWN0ZXJTZXRXaXRoQ2hhcmFjdGVyc0luU3RyaW5nOkAiLz8jIl0gcmV0YWluXTsKKworICAgIC8v
IFN0YXJ0IGFmdGVyIHRoZSBzZXBhcmF0b3IuCisgICAgTlNVSW50ZWdlciBhdXRob3JpdHlTdGFy
dCA9IE5TTWF4UmFuZ2Uoc2VwYXJhdG9yUmFuZ2UpOworCisgICAgLy8gRmluZCB0ZXJtaW5hdGlu
ZyBjaGFyYWN0ZXIuCisgICAgTlNSYW5nZSBob3N0TmFtZVRlcm1pbmF0b3IgPSBbdXJsU3RyaW5n
IHJhbmdlT2ZDaGFyYWN0ZXJGcm9tU2V0Omhvc3RUZXJtaW5hdG9ycyBvcHRpb25zOk5TTGl0ZXJh
bFNlYXJjaCByYW5nZTpOU01ha2VSYW5nZShhdXRob3JpdHlTdGFydCwgc3RyaW5nTGVuZ3RoIC0g
YXV0aG9yaXR5U3RhcnQpXTsKKyAgICBOU1VJbnRlZ2VyIGhvc3ROYW1lRW5kID0gaG9zdE5hbWVU
ZXJtaW5hdG9yLmxvY2F0aW9uID09IE5TTm90Rm91bmQgPyBzdHJpbmdMZW5ndGggOiBob3N0TmFt
ZVRlcm1pbmF0b3IubG9jYXRpb247CisKKyAgICAvLyBGaW5kICJAIiBmb3IgdGhlIHN0YXJ0IG9m
IHRoZSBob3N0IG5hbWUuCisgICAgTlNSYW5nZSB1c2VySW5mb1Rlcm1pbmF0b3IgPSBbdXJsU3Ry
aW5nIHJhbmdlT2ZTdHJpbmc6QCJAIiBvcHRpb25zOk5TTGl0ZXJhbFNlYXJjaCByYW5nZTpOU01h
a2VSYW5nZShhdXRob3JpdHlTdGFydCwgaG9zdE5hbWVFbmQgLSBhdXRob3JpdHlTdGFydCldOwor
ICAgIE5TVUludGVnZXIgaG9zdE5hbWVTdGFydCA9IHVzZXJJbmZvVGVybWluYXRvci5sb2NhdGlv
biA9PSBOU05vdEZvdW5kID8gYXV0aG9yaXR5U3RhcnQgOiBOU01heFJhbmdlKHVzZXJJbmZvVGVy
bWluYXRvcik7CisKKyAgICAvLyBGSVhNRTogVGhpcyBtZXRob2QgdXNlIHRvIHJldHVybiBhIHNt
YWxsZXIgcmFuZ2UgaWYgdGhlIHBvcnQgd2FzIGxvbmdlciB0aGFuIDUgY2hhcmFjdGVycy4gSG93
ZXZlciwgdGhhdCBjb2RlIHdhcyBiYWRseSBjb25mdXNlZCBieQorICAgIC8vIHRoZSBjb2xvbnMg
aW4gSVB2NiBob3N0cyBsaWtlIGh0dHA6Ly9bM2ZmZToyYTAwOjEwMDo3MDMxOjoxXS4gU28gd2Ug
anVzdCB1c2UgdGhlIHdob2xlIGhvc3QgcmFuZ2UgaW5jbHVkaW5nIHRoZSBwb3J0LCBldmVuIGlm
IHRoZQorICAgIC8vIHBvcnQgbnVtYmVyIG1pZ2h0IGJlIGludmFsaWQuIE1heWJlIHdlIHNob3Vs
ZCBmaW5kIGEgd2F5IHRvIHVzZSBDRlVSTEdldEJ5dGVSYW5nZUZvckNvbXBvbmVudCBmb3IgYWxs
IG9mIHRoaXM/CisKKyAgICByZXR1cm4gTlNNYWtlUmFuZ2UoaG9zdE5hbWVTdGFydCwgaG9zdE5h
bWVFbmQgLSBob3N0TmFtZVN0YXJ0KTsKK30KKworTlNTdHJpbmcgKnNpbXBsaWZpZWRVc2VyVmlz
aWJsZVN0cmluZyhOU1VSTCAqdXJsKQoreworICAgIGlmICghdXJsKQorICAgICAgICByZXR1cm4g
bmlsOworCisgICAgTlNTdHJpbmcqIHVybFN0cmluZyA9IHVzZXJWaXNpYmxlU3RyaW5nKHVybCk7
CisKKyAgICBpZiAoIXVybFN0cmluZykKKyAgICAgICAgcmV0dXJuIG5pbDsKKworICAgIE5TU3Ry
aW5nICpyZXN1bHQgPSBbdXJsU3RyaW5nIGNvcHldOworICAgIE5TUmFuZ2UgaG9zdEFuZFBvcnRS
YW5nZSA9IGhvc3RBbmRQb3J0UmFuZ2VGcm9tVXNlclR5cGVkU3RyaW5nKHJlc3VsdCk7CisKKyAg
ICBCT09MIGhhc0hUVFAgPSBbcmVzdWx0IF93ZWJfaGFzQ2FzZUluc2Vuc2l0aXZlUHJlZml4OkAi
aHR0cDovLyJdOworICAgIEJPT0wgaGFzSFRUUFMgPSBbcmVzdWx0IF93ZWJfaGFzQ2FzZUluc2Vu
c2l0aXZlUHJlZml4OkAiaHR0cHM6Ly8iXTsKKworICAgIGlmIChob3N0QW5kUG9ydFJhbmdlLmxv
Y2F0aW9uICE9IE5TTm90Rm91bmQpIHsKKyAgICAgICAgaWYgKGhhc0hUVFAgfHwgaGFzSFRUUFMp
IHsKKyAgICAgICAgICAgIE5TVUludGVnZXIgbGFzdENvbG9uTG9jYXRpb24gPSBbdXJsU3RyaW5n
IHJhbmdlT2ZTdHJpbmc6QCI6IiBvcHRpb25zOk5TQmFja3dhcmRzU2VhcmNoIHJhbmdlOmhvc3RB
bmRQb3J0UmFuZ2VdLmxvY2F0aW9uOworICAgICAgICAgICAgaWYgKGxhc3RDb2xvbkxvY2F0aW9u
ICE9IE5TTm90Rm91bmQpIHsKKyAgICAgICAgICAgICAgICBOU1JhbmdlIHBvcnRSYW5nZSA9IE5T
TWFrZVJhbmdlKGxhc3RDb2xvbkxvY2F0aW9uLCBOU01heFJhbmdlKGhvc3RBbmRQb3J0UmFuZ2Up
IC0gbGFzdENvbG9uTG9jYXRpb24pOworICAgICAgICAgICAgICAgIE5TVUludGVnZXIgcmlnaHRC
cmFja2V0TG9jYXRpb24gPSBbdXJsU3RyaW5nIHJhbmdlT2ZTdHJpbmc6QCJdIiBvcHRpb25zOjAg
cmFuZ2U6cG9ydFJhbmdlXS5sb2NhdGlvbjsKKyAgICAgICAgICAgICAgICBpZiAocmlnaHRCcmFj
a2V0TG9jYXRpb24gPT0gTlNOb3RGb3VuZCkgeworICAgICAgICAgICAgICAgICAgICByZXN1bHQg
PSBbcmVzdWx0IHN0cmluZ0J5UmVwbGFjaW5nQ2hhcmFjdGVyc0luUmFuZ2U6cG9ydFJhbmdlIHdp
dGhTdHJpbmc6QCIiXTsKKyAgICAgICAgICAgICAgICAgICAgaG9zdEFuZFBvcnRSYW5nZS5sZW5n
dGggLT0gcG9ydFJhbmdlLmxlbmd0aDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9
CisgICAgICAgIH0KKyAgICAgICAgaWYgKGhhc0hUVFAgfHwgaGFzSFRUUFMgfHwgW1tyZXN1bHQg
c3Vic3RyaW5nRnJvbUluZGV4Ok5TTWF4UmFuZ2UoaG9zdEFuZFBvcnRSYW5nZSldIGlzRXF1YWxU
b1N0cmluZzpAIi8iXSkKKyAgICAgICAgICAgIHJlc3VsdCA9IFtyZXN1bHQgc3Vic3RyaW5nVG9J
bmRleDpOU01heFJhbmdlKGhvc3RBbmRQb3J0UmFuZ2UpXTsKKyAgICB9CisKKyAgICBOU1N0cmlu
ZyAqcHJlZml4VG9TdXBwcmVzcyA9IG5pbDsKKworICAgIGlmIChoYXNIVFRQKQorICAgICAgICBw
cmVmaXhUb1N1cHByZXNzID0gQCJodHRwOi8vIjsKKworICAgIGlmICghcHJlZml4VG9TdXBwcmVz
cyAmJiBoYXNIVFRQUykKKyAgICAgICAgcHJlZml4VG9TdXBwcmVzcyA9IEAiaHR0cHM6Ly8iOwor
CisgICAgaWYgKChoYXNIVFRQIHx8IGhhc0hUVFBTKSAmJiBob3N0QW5kUG9ydFJhbmdlLmxvY2F0
aW9uICE9IE5TTm90Rm91bmQpIHsKKyAgICAgICAgTlNTdHJpbmcgKmhvc3RBbmRQb3J0ID0gW3Jl
c3VsdCBzdWJzdHJpbmdXaXRoUmFuZ2U6aG9zdEFuZFBvcnRSYW5nZV07CisgICAgICAgIE5TU3Ry
aW5nICpzdWJkb21haW5Ub1N1cHByZXNzID0gbmlsOworCisgICAgICAgIGlmIChbaG9zdEFuZFBv
cnQgX3dlYl9oYXNDYXNlSW5zZW5zaXRpdmVQcmVmaXg6QCJ3d3cuIl0pCisgICAgICAgICAgICBz
dWJkb21haW5Ub1N1cHByZXNzID0gQCJ3d3cuIjsKKyAgICAgICAgZWxzZSBpZiAoW2hvc3RBbmRQ
b3J0IF93ZWJfaGFzQ2FzZUluc2Vuc2l0aXZlUHJlZml4OkAibS4iXSkKKyAgICAgICAgICAgIHN1
YmRvbWFpblRvU3VwcHJlc3MgPSBAIm0uIjsKKworICAgICAgICAvLyBEb24ndCByZW1vdmUgYSBz
dWJkb21haW4gaWYgaXQgbGVhdmVzIG9ubHkgYSBUTEQsIGkuZS4gInd3dy5jb20iIHNob3VsZCBu
b3QgYmUgbW9kaWZpZWQuCisgICAgICAgIGlmIChzdWJkb21haW5Ub1N1cHByZXNzICYmICFbaG9z
dEFuZFBvcnQgaXNFcXVhbFRvU3RyaW5nOnRvcFByaXZhdGVseUNvbnRyb2xsZWREb21haW4oaG9z
dEFuZFBvcnQpXSkgeworICAgICAgICAgICAgLy8gUmVtb3ZlIHRoZSBzY2hlbWUgYW5kIHN1YmRv
bWFpbiB0b2dldGhlciBpZiBwb3NzaWJsZS4gVGhpcyBhbHNvIGVuc3VyZXMgc2ltcGxpZmllZFN0
cmluZ09mZnNldCB3aWxsIHJldHVybiB0aGUgY29ycmVjdCB2YWx1ZS4KKyAgICAgICAgICAgIGlm
IChwcmVmaXhUb1N1cHByZXNzICYmIGhvc3RBbmRQb3J0UmFuZ2UubG9jYXRpb24gPT0gW3ByZWZp
eFRvU3VwcHJlc3MgbGVuZ3RoXSkKKyAgICAgICAgICAgICAgICBwcmVmaXhUb1N1cHByZXNzID0g
W3ByZWZpeFRvU3VwcHJlc3Mgc3RyaW5nQnlBcHBlbmRpbmdTdHJpbmc6c3ViZG9tYWluVG9TdXBw
cmVzc107CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmVzdWx0ID0gW3Jlc3Vs
dCBzdHJpbmdCeVJlcGxhY2luZ0NoYXJhY3RlcnNJblJhbmdlOk5TTWFrZVJhbmdlKGhvc3RBbmRQ
b3J0UmFuZ2UubG9jYXRpb24sIFtzdWJkb21haW5Ub1N1cHByZXNzIGxlbmd0aF0pIHdpdGhTdHJp
bmc6QCIiXTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGNvbnN0IHVuaWNoYXIgV0JTTGVmdFRv
UmlnaHRNYXJrQ2hhcmFjdGVyID0gMHgyMDBFOworCisgICAgaWYgKHByZWZpeFRvU3VwcHJlc3Mp
IHsKKyAgICAgICAgTlNVSW50ZWdlciBsZW5ndGhPZlByZWZpeFRvU3VwcHJlc3MgPSBwcmVmaXhU
b1N1cHByZXNzLmxlbmd0aDsKKyAgICAgICAgcmVzdWx0ID0gW05TU3RyaW5nIHN0cmluZ1dpdGhG
b3JtYXQ6QCIlQyVAIiwgV0JTTGVmdFRvUmlnaHRNYXJrQ2hhcmFjdGVyLCBbcmVzdWx0IHN1YnN0
cmluZ0Zyb21JbmRleDpsZW5ndGhPZlByZWZpeFRvU3VwcHJlc3NdXTsKKyAgICB9CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXJJT1Mu
bW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tGdWxsU2NyZWVuV2luZG93Q29udHJv
bGxlcklPUy5tbQppbmRleCBmZjZlNDAyYWNjYjU3MjlmYjI1NjQ1OGUxMjFkZjc3NDU4NjIxYjhk
Li5iNjU0MDk5NWQ2NmU4M2E0ZjE5MTFmZTk4MTJjNDk4ZDlhYmNmYzQ2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlcklP
Uy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tGdWxsU2NyZWVuV2luZG93
Q29udHJvbGxlcklPUy5tbQpAQCAtMzUsMTEgKzM1LDE3IEBACiAjaW1wb3J0ICJXZWJGdWxsU2Ny
ZWVuTWFuYWdlclByb3h5LmgiCiAjaW1wb3J0ICJXZWJQYWdlUHJveHkuaCIKICNpbXBvcnQgPEZv
dW5kYXRpb24vRm91bmRhdGlvbi5oPgorI2ltcG9ydCA8U2VjdXJpdHkvU2VjQ2VydGlmaWNhdGUu
aD4KKyNpbXBvcnQgPFNlY3VyaXR5L1NlY1RydXN0Lmg+CiAjaW1wb3J0IDxVSUtpdC9VSVZpc3Vh
bEVmZmVjdFZpZXcuaD4KICNpbXBvcnQgPFdlYkNvcmUvRmxvYXRSZWN0Lmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL0dlb21ldHJ5VXRpbGl0aWVzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ludFJlY3QuaD4K
KyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU5TVVJMRXh0cmFzLmg+CisjaW1wb3J0IDxwYWwvc3Bp
L2NmL0NGTmV0d29ya1NQSS5oPgorI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9OU1N0cmluZ1NQSS5o
PgogI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9RdWFydHpDb3JlU1BJLmg+CisjaW1wb3J0IDx3dGYv
c3BpL2NvY29hL1NlY3VyaXR5U1BJLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiB1c2lu
ZyBuYW1lc3BhY2UgV2ViQ29yZTsKQEAgLTExNSw2ICsxMjEsNyBAQCBAaW1wbGVtZW50YXRpb24g
X1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHsKICAgICBSZXRhaW5QdHI8VUlWaWV3PiBfYmFj
a2dyb3VuZFZpZXc7CiAgICAgUmV0YWluUHRyPFVJTG9uZ1ByZXNzR2VzdHVyZVJlY29nbml6ZXI+
IF90b3VjaEdlc3R1cmVSZWNvZ25pemVyOwogICAgIFJldGFpblB0cjxVSUJ1dHRvbj4gX2NhbmNl
bEJ1dHRvbjsKKyAgICBSZXRhaW5QdHI8VUlCdXR0b24+IF9sb2NhdGlvbkJ1dHRvbjsKICAgICBS
ZXRhaW5QdHI8VUlWaXN1YWxFZmZlY3RWaWV3PiBfdmlzdWFsRWZmZWN0VmlldzsKIH0KIApAQCAt
MTI5LDcgKzEzNiwxNyBAQCAtICh2b2lkKWRlYWxsb2MKIC0gKHZvaWQpdmlld1dpbGxUcmFuc2l0
aW9uVG9TaXplOihDR1NpemUpc2l6ZSB3aXRoVHJhbnNpdGlvbkNvb3JkaW5hdG9yOihpZDxVSVZp
ZXdDb250cm9sbGVyVHJhbnNpdGlvbkNvb3JkaW5hdG9yPiljb29yZGluYXRvcgogewogICAgIFtz
dXBlciB2aWV3V2lsbFRyYW5zaXRpb25Ub1NpemU6c2l6ZSB3aXRoVHJhbnNpdGlvbkNvb3JkaW5h
dG9yOmNvb3JkaW5hdG9yXTsKLSAgICBbKFdLV2ViVmlldyAqKVtzZWxmIGNvbnRlbnRWaWV3XSBf
b3ZlcnJpZGVMYXlvdXRQYXJhbWV0ZXJzV2l0aE1pbmltdW1MYXlvdXRTaXplOnNpemUgbWF4aW11
bVVub2JzY3VyZWRTaXplT3ZlcnJpZGU6c2l6ZV07CisgICAgW2Nvb3JkaW5hdG9yIGFuaW1hdGVB
bG9uZ3NpZGVUcmFuc2l0aW9uOiBeKGlkPFVJVmlld0NvbnRyb2xsZXJUcmFuc2l0aW9uQ29vcmRp
bmF0b3JDb250ZXh0PiBjb250ZXh0KSB7CisKKyAgICAgICAgdm9pZCAoXndlYlZpZXdVcGRhdGVC
bG9jaykoKSA9IF57CisgICAgICAgICAgICBbKFdLV2ViVmlldyAqKVtzZWxmIGNvbnRlbnRWaWV3
XSBfb3ZlcnJpZGVMYXlvdXRQYXJhbWV0ZXJzV2l0aE1pbmltdW1MYXlvdXRTaXplOnNpemUgbWF4
aW11bVVub2JzY3VyZWRTaXplT3ZlcnJpZGU6c2l6ZV07CisgICAgICAgIH07CisKKyAgICAgICAg
WyhXS1dlYlZpZXcgKilbc2VsZiBjb250ZW50Vmlld10gX2JlZ2luQW5pbWF0ZWRSZXNpemVXaXRo
VXBkYXRlczp3ZWJWaWV3VXBkYXRlQmxvY2tdOworICAgICAgICBbKFdLV2ViVmlldyAqKVtzZWxm
IGNvbnRlbnRWaWV3XSBfc2V0SW50ZXJmYWNlT3JpZW50YXRpb25PdmVycmlkZTpbVUlBcHAgc3Rh
dHVzQmFyT3JpZW50YXRpb25dXTsKKyAgICB9IGNvbXBsZXRpb246XihpZCA8VUlWaWV3Q29udHJv
bGxlclRyYW5zaXRpb25Db29yZGluYXRvckNvbnRleHQ+Y29udGV4dCkgeworICAgICAgICBbKFdL
V2ViVmlldyAqKVtzZWxmIGNvbnRlbnRWaWV3XSBfZW5kQW5pbWF0ZWRSZXNpemVdOworICAgIH1d
OwogfQogCiArICh2b2lkKWNvbmZpZ3VyZVZpZXc6KFVJVmlldyAqKXZpZXcgd2l0aEJhY2tncm91
bmRGaWxsT2ZDb2xvcjooVUlDb2xvciAqKWZpbGxDb2xvciBvcGFjaXR5OihDR0Zsb2F0KW9wYWNp
dHkgZmlsdGVyOihOU1N0cmluZyAqKWZpbHRlcgpAQCAtMTU5LDkgKzE3Niw2IEBAIC0gKHZvaWQp
X3VwZGF0ZVRyYW5zcGFyZW5jeU9mVmlzdWFsRWZmZWN0VmlldzooVUlWaXN1YWxFZmZlY3RWaWV3
ICopdmlzdWFsRWZmZWN0CiAtIChVSVZpc3VhbEVmZmVjdFZpZXcgKil2aXN1YWxFZmZlY3RWaWV3
V2l0aEZyYW1lOihDR1JlY3QpZnJhbWUKIHsKICAgICBSZXRhaW5QdHI8VUlWaXN1YWxFZmZlY3RW
aWV3PiB2aXN1YWxFZmZlY3RWaWV3ID0gYWRvcHROUyhbW1VJVmlzdWFsRWZmZWN0VmlldyBhbGxv
Y10gaW5pdFdpdGhFZmZlY3Q6W1VJVmlzdWFsRWZmZWN0IGVtcHR5RWZmZWN0XV0pOwotICAgIFt2
aXN1YWxFZmZlY3RWaWV3IHNldEZyYW1lOmZyYW1lXTsKLSAgICBbdmlzdWFsRWZmZWN0VmlldyBf
c2V0Q29udGludW91c0Nvcm5lclJhZGl1czooKENHUmVjdEdldEhlaWdodChbdmlzdWFsRWZmZWN0
VmlldyBib3VuZHNdKSA+IDQwLjApID8gMTYuMCA6IDguMCldOwotICAgIFt2aXN1YWxFZmZlY3RW
aWV3IHNldEF1dG9yZXNpemluZ01hc2s6KFVJVmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlUmlnaHRN
YXJnaW4gfCBVSVZpZXdBdXRvcmVzaXppbmdGbGV4aWJsZUJvdHRvbU1hcmdpbildOwogICAgIFtz
ZWxmIF91cGRhdGVUcmFuc3BhcmVuY3lPZlZpc3VhbEVmZmVjdFZpZXc6dmlzdWFsRWZmZWN0Vmll
dy5nZXQoKV07CiAKICAgICBSZXRhaW5QdHI8VUlWaWV3PiBiYWNrTGF5ZXJUaW50VmlldyA9IGFk
b3B0TlMoW1tVSVZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6W3Zpc3VhbEVmZmVjdFZpZXcgYm91
bmRzXV0pOwpAQCAtMTgxLDM5ICsxOTUsMTMyIEBAIC0gKFVJVmlzdWFsRWZmZWN0VmlldyAqKXZp
c3VhbEVmZmVjdFZpZXdXaXRoRnJhbWU6KENHUmVjdClmcmFtZQogICAgIHJldHVybiB2aXN1YWxF
ZmZlY3RWaWV3LmF1dG9yZWxlYXNlKCk7CiB9CiAKLS0gKHZvaWQpbG9hZFZpZXcKK3N0YXRpYyBV
SUVkZ2VJbnNldHMgbWlycm9yRWRnZUluc2V0cyhVSUVkZ2VJbnNldHMgaW5zZXRzKQogewotICAg
IFtzZWxmIHNldFZpZXc6YWRvcHROUyhbW1VJVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpDR1Jl
Y3RNYWtlKDAsIDAsIDEwMCwgMTAwKV0pLmdldCgpXTsKLSAgICBbW3NlbGYgdmlld10gc2V0QXV0
b3Jlc2l6aW5nTWFzazooVUlWaWV3QXV0b3Jlc2l6aW5nRmxleGlibGVXaWR0aCB8IFVJVmlld0F1
dG9yZXNpemluZ0ZsZXhpYmxlSGVpZ2h0KV07CisgICAgcmV0dXJuIFVJRWRnZUluc2V0c01ha2Uo
aW5zZXRzLnRvcCwgaW5zZXRzLnJpZ2h0LCBpbnNldHMuYm90dG9tLCBpbnNldHMubGVmdCk7Cit9
CiAKLSAgICBDR1JlY3QgZG9uZUJ1dHRvblJlY3QgPSBDR1JlY3RNYWtlKDEwLCAyMCwgNjAsIDQ3
KTsKLSAgICAKLSAgICBfdmlzdWFsRWZmZWN0VmlldyA9IFtzZWxmIHZpc3VhbEVmZmVjdFZpZXdX
aXRoRnJhbWU6ZG9uZUJ1dHRvblJlY3RdOwotICAgIFtfdmlzdWFsRWZmZWN0VmlldyBzZXRBbHBo
YTowXTsKKy0gKHZvaWQpX3VwZGF0ZUxheW91dE1hcmdpbnMKK3sKKyAgICBVSVZpZXcgKnZpZXcg
PSBbc2VsZiB2aWV3XTsKKyAgICBbdmlldyBzZXRFZGdlc0luc2V0dGluZ0xheW91dE1hcmdpbnNG
cm9tU2FmZUFyZWE6VUlSZWN0RWRnZU5vbmVdOworICAgIFt2aWV3IHNldFByZXNlcnZlc1N1cGVy
dmlld0xheW91dE1hcmdpbnM6Tk9dOworCisgICAgVUlFZGdlSW5zZXRzIHRhcmdldEluc2V0cyA9
IFt2aWV3IHNhZmVBcmVhSW5zZXRzXTsKKyAgICB0YXJnZXRJbnNldHMudG9wID0gc3RkOjptYXgo
dGFyZ2V0SW5zZXRzLnRvcCwgMjAuMCk7CisgICAgW3ZpZXcgc2V0TGF5b3V0TWFyZ2luczp0YXJn
ZXRJbnNldHNdOworfQorCistICh2b2lkKXZpZXdEaWRMYXlvdXRTdWJ2aWV3cworeworICAgIFtz
ZWxmIF91cGRhdGVMYXlvdXRNYXJnaW5zXTsKK30KKworLSAgKHZvaWQpc2V0TG9jYXRpb246KE5T
U3RyaW5nICopbG9jYXRpb25OYW1lIHNlY3VyZTooQk9PTClzZWN1cmUgdHJ1c3RlZE5hbWU6KEJP
T0wpdHJ1c3RlZE5hbWUgdHJ1c3RlZFNpdGU6KEJPT0wpdHJ1c3RlZFNpdGUKK3sKKyAgICBVSUNv
bG9yICpncmVlblRpbnQgPSBbVUlDb2xvciBjb2xvcldpdGhSZWQ6MTAwIC8gMjU1LjAgZ3JlZW46
MTc1IC8gMjU1LjAgYmx1ZTo5OSAvIDI1NS4wIGFscGhhOjEuMF07CisgICAgVUlDb2xvciAqd2hp
dGVUaW50ID0gW1VJQ29sb3Igd2hpdGVDb2xvcl07CisKKyAgICBmbG9hdCBoUGFkZGluZyA9IDE0
OworICAgIE5TU3RyaW5nICpsb2NrSW1hZ2VOYW1lID0gQCJMb2NrTWluaSI7CisKKyAgICBmbG9h
dCBsb2NrU3BhY2luZyA9IHNlY3VyZSA/IDEwIDogMDsKKworICAgIFVJRWRnZUluc2V0cyBsb2Nh
dGlvbkNvbnRlbnRFZGdlSW5zZXRzID0gVUlFZGdlSW5zZXRzTWFrZSgwLCBoUGFkZGluZytsb2Nr
U3BhY2luZywgMCwgaFBhZGRpbmcpOworICAgIFVJRWRnZUluc2V0cyBsb2NhdGlvbkltYWdlRWRn
ZUluc2V0cyA9IFVJRWRnZUluc2V0c01ha2UoMCwgLWxvY2tTcGFjaW5nLCAwLCAwKTsKKworICAg
IGlmIChbVUlWaWV3IHVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb25Gb3JTZW1hbnRpY0NvbnRl
bnRBdHRyaWJ1dGU6W1tzZWxmIHZpZXddIHNlbWFudGljQ29udGVudEF0dHJpYnV0ZV1dID09IFVJ
VXNlckludGVyZmFjZUxheW91dERpcmVjdGlvblJpZ2h0VG9MZWZ0KSB7CisgICAgICAgIGxvY2F0
aW9uQ29udGVudEVkZ2VJbnNldHMgPSBtaXJyb3JFZGdlSW5zZXRzKGxvY2F0aW9uQ29udGVudEVk
Z2VJbnNldHMpOworICAgICAgICBsb2NhdGlvbkltYWdlRWRnZUluc2V0cyA9IG1pcnJvckVkZ2VJ
bnNldHMobG9jYXRpb25JbWFnZUVkZ2VJbnNldHMpOworICAgICAgICBbX2xvY2F0aW9uQnV0dG9u
IHNldENvbnRlbnRIb3Jpem9udGFsQWxpZ25tZW50OlVJQ29udHJvbENvbnRlbnRIb3Jpem9udGFs
QWxpZ25tZW50UmlnaHRdOworICAgIH0KKworICAgIFtfbG9jYXRpb25CdXR0b24gc2V0VGl0bGVD
b2xvcjp0cnVzdGVkTmFtZT9ncmVlblRpbnQ6d2hpdGVUaW50IGZvclN0YXRlOlVJQ29udHJvbFN0
YXRlTm9ybWFsXTsKKworICAgIGlmIChzZWN1cmUpIHsKKyAgICAgICAgTlNCdW5kbGUgKmJ1bmRs
ZSA9IFtOU0J1bmRsZSBidW5kbGVGb3JDbGFzczpbV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxl
ciBjbGFzc11dOworICAgICAgICBSZXRhaW5QdHI8VUlJbWFnZT4gbG9ja0ltYWdlID0gW1VJSW1h
Z2UgaW1hZ2VOYW1lZDpsb2NrSW1hZ2VOYW1lIGluQnVuZGxlOmJ1bmRsZSBjb21wYXRpYmxlV2l0
aFRyYWl0Q29sbGVjdGlvbjpuaWxdOworICAgICAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEltYWdl
Oltsb2NrSW1hZ2UgaW1hZ2VXaXRoUmVuZGVyaW5nTW9kZTpVSUltYWdlUmVuZGVyaW5nTW9kZUFs
d2F5c1RlbXBsYXRlXSBmb3JTdGF0ZTpVSUNvbnRyb2xTdGF0ZU5vcm1hbF07CisgICAgICAgIFtb
X2xvY2F0aW9uQnV0dG9uIGltYWdlVmlld10gc2V0VGludENvbG9yOnRydXN0ZWRTaXRlP2dyZWVu
VGludDp3aGl0ZVRpbnRdOworICAgICAgICBbX2xvY2F0aW9uQnV0dG9uIHNldFRpbnRDb2xvcjp0
cnVzdGVkU2l0ZT9ncmVlblRpbnQ6d2hpdGVUaW50XTsKKyAgICB9IGVsc2UKKyAgICAgICAgW19s
b2NhdGlvbkJ1dHRvbiBzZXRJbWFnZTpuaWwgZm9yU3RhdGU6VUlDb250cm9sU3RhdGVOb3JtYWxd
OworCisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRDb250ZW50RWRnZUluc2V0czpsb2NhdGlvbkNv
bnRlbnRFZGdlSW5zZXRzXTsKKyAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEltYWdlRWRnZUluc2V0
czpsb2NhdGlvbkltYWdlRWRnZUluc2V0c107CisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRUaXRs
ZTpsb2NhdGlvbk5hbWUgZm9yU3RhdGU6VUlDb250cm9sU3RhdGVOb3JtYWxdOworICAgIFtbX2xv
Y2F0aW9uQnV0dG9uIHRpdGxlTGFiZWxdIHNldExpbmVCcmVha01vZGU6TlNMaW5lQnJlYWtCeVRy
dW5jYXRpbmdUYWlsXTsKKyAgICBbW19sb2NhdGlvbkJ1dHRvbiB0aXRsZUxhYmVsXSBzZXRBZGp1
c3RzRm9udFNpemVUb0ZpdFdpZHRoOk5PXTsKK30KKworLSAodm9pZCljcmVhdGVTdWJ2aWV3cwor
eworICAgIF92aXN1YWxFZmZlY3RWaWV3ID0gW3NlbGYgdmlzdWFsRWZmZWN0Vmlld1dpdGhGcmFt
ZTpDR1JlY3RNYWtlKDAsIDAsIDIwLCAyMCldOworCisgICAgW192aXN1YWxFZmZlY3RWaWV3IHNl
dFRyYW5zbGF0ZXNBdXRvcmVzaXppbmdNYXNrSW50b0NvbnN0cmFpbnRzOk5PXTsKICAgICBbW3Nl
bGYgdmlld10gYWRkU3VidmlldzpfdmlzdWFsRWZmZWN0Vmlldy5nZXQoKV07CiAKICAgICBfY2Fu
Y2VsQnV0dG9uID0gW1VJQnV0dG9uIGJ1dHRvbldpdGhUeXBlOlVJQnV0dG9uVHlwZVN5c3RlbV07
Ci0gICAgW19jYW5jZWxCdXR0b24gc2V0QXV0b3Jlc2l6aW5nTWFzazooVUlWaWV3QXV0b3Jlc2l6
aW5nRmxleGlibGVSaWdodE1hcmdpbiB8IFVJVmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlQm90dG9t
TWFyZ2luKV07Ci0gICAgW19jYW5jZWxCdXR0b24gc2V0RnJhbWU6ZG9uZUJ1dHRvblJlY3RdOwot
ICAgIFtfY2FuY2VsQnV0dG9uIGFkZFRhcmdldDpzZWxmIGFjdGlvbjpAc2VsZWN0b3IoY2FuY2Vs
QWN0aW9uOikgZm9yQ29udHJvbEV2ZW50czpVSUNvbnRyb2xFdmVudFRvdWNoVXBJbnNpZGVdOwor
ICAgIFtfY2FuY2VsQnV0dG9uIHNldFRyYW5zbGF0ZXNBdXRvcmVzaXppbmdNYXNrSW50b0NvbnN0
cmFpbnRzOk5PXTsKICAgICBbX2NhbmNlbEJ1dHRvbiBzZXRBZGp1c3RzSW1hZ2VXaGVuSGlnaGxp
Z2h0ZWQ6Tk9dOwogICAgIFtfY2FuY2VsQnV0dG9uIHNldEJhY2tncm91bmRDb2xvcjogW1VJQ29s
b3IgYmxhY2tDb2xvcl1dOwotICAgIFtbX2NhbmNlbEJ1dHRvbiBsYXllcl0gc2V0Q29ybmVyUmFk
aXVzOjZdOwotICAgIFtfY2FuY2VsQnV0dG9uIHNldEFscGhhOjBdOwotICAgIE5TQnVuZGxlICpi
dW5kbGUgPSBbTlNCdW5kbGUgYnVuZGxlRm9yQ2xhc3M6W1dLRnVsbFNjcmVlbldpbmRvd0NvbnRy
b2xsZXIgY2xhc3NdXTsKLSAgICBSZXRhaW5QdHI8VUlJbWFnZT4gaW1hZ2UgPSBbVUlJbWFnZSBp
bWFnZU5hbWVkOkAiRG9uZSIgaW5CdW5kbGU6YnVuZGxlIGNvbXBhdGlibGVXaXRoVHJhaXRDb2xs
ZWN0aW9uOm5pbF07Ci0gICAgW19jYW5jZWxCdXR0b24gc2V0SW1hZ2U6W2ltYWdlIGltYWdlV2l0
aFJlbmRlcmluZ01vZGU6VUlJbWFnZVJlbmRlcmluZ01vZGVBbHdheXNUZW1wbGF0ZV0gZm9yU3Rh
dGU6VUlDb250cm9sU3RhdGVOb3JtYWxdOwotCi0gICAgW19jYW5jZWxCdXR0b24gc2V0VGludENv
bG9yOltVSUNvbG9yIGNvbG9yV2l0aFdoaXRlOjEuMCBhbHBoYTowLjU1XV07CiAgICAgW1tfY2Fu
Y2VsQnV0dG9uIGxheWVyXSBzZXRDb21wb3NpdGluZ0ZpbHRlcjpbQ0FGaWx0ZXIgZmlsdGVyV2l0
aFR5cGU6a0NBRmlsdGVyUGx1c0xdXTsKKyAgICBbX2NhbmNlbEJ1dHRvbiBzZXRUaXRsZTpAIkRv
bmUiIGZvclN0YXRlOlVJQ29udHJvbFN0YXRlTm9ybWFsXTsKKyAgICBbX2NhbmNlbEJ1dHRvbiBz
ZXRUaW50Q29sb3I6W1VJQ29sb3Igd2hpdGVDb2xvcl1dOworICAgIFtfY2FuY2VsQnV0dG9uIGFk
ZFRhcmdldDpzZWxmIGFjdGlvbjpAc2VsZWN0b3IoY2FuY2VsQWN0aW9uOikgZm9yQ29udHJvbEV2
ZW50czpVSUNvbnRyb2xFdmVudFRvdWNoVXBJbnNpZGVdOwogCiAgICAgW1tzZWxmIHZpZXddIGFk
ZFN1YnZpZXc6X2NhbmNlbEJ1dHRvbi5nZXQoKV07CiAKKyAgICBfbG9jYXRpb25CdXR0b24gPSBb
VUlCdXR0b24gYnV0dG9uV2l0aFR5cGU6VUlCdXR0b25UeXBlU3lzdGVtXTsKKyAgICBbX2xvY2F0
aW9uQnV0dG9uIHNldFRyYW5zbGF0ZXNBdXRvcmVzaXppbmdNYXNrSW50b0NvbnN0cmFpbnRzOk5P
XTsKKyAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEFkanVzdHNJbWFnZVdoZW5IaWdobGlnaHRlZDpO
T107CisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRCYWNrZ3JvdW5kQ29sb3I6W1VJQ29sb3IgYmxh
Y2tDb2xvcl1dOworICAgIFtbX2xvY2F0aW9uQnV0dG9uIGxheWVyXSBzZXRDb21wb3NpdGluZ0Zp
bHRlcjpbQ0FGaWx0ZXIgZmlsdGVyV2l0aFR5cGU6a0NBRmlsdGVyUGx1c0xdXTsKKyAgICBbW3Nl
bGYgdmlld10gYWRkU3VidmlldzpfbG9jYXRpb25CdXR0b24uZ2V0KCldOworCisgICAgVUlMYXlv
dXRHdWlkZSogY29udGFpbmVyR3VpZGUgPSBbW3NlbGYgdmlld10gbGF5b3V0TWFyZ2luc0d1aWRl
XTsKKworICAgIFtbW192aXN1YWxFZmZlY3RWaWV3IGxlZnRBbmNob3JdIGNvbnN0cmFpbnRFcXVh
bFRvQW5jaG9yOltbc2VsZiB2aWV3XSBsZWZ0QW5jaG9yXV0gc2V0QWN0aXZlOllFU107CisgICAg
W1tbX3Zpc3VhbEVmZmVjdFZpZXcgcmlnaHRBbmNob3JdIGNvbnN0cmFpbnRFcXVhbFRvQW5jaG9y
Oltbc2VsZiB2aWV3XSByaWdodEFuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworICAgIFtbW192aXN1
YWxFZmZlY3RWaWV3IHRvcEFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W1tzZWxmIHZp
ZXddIHRvcEFuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworICAgIFtbW192aXN1YWxFZmZlY3RWaWV3
IGhlaWdodEFuY2hvcl0gY29uc3RyYWludEdyZWF0ZXJUaGFuT3JFcXVhbFRvQ29uc3RhbnQ6MjBd
IHNldEFjdGl2ZTpZRVNdOworCisgICAgTlNMYXlvdXRDb25zdHJhaW50ICpib3R0b20gPSBbW192
aXN1YWxFZmZlY3RWaWV3IGJvdHRvbUFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W2Nv
bnRhaW5lckd1aWRlIHRvcEFuY2hvcl1dOworICAgIFtib3R0b20gc2V0UHJpb3JpdHk6VUlMYXlv
dXRQcmlvcml0eVJlcXVpcmVkLTFdOworICAgIFtib3R0b20gc2V0QWN0aXZlOllFU107CisKKyAg
ICBbW1tfY2FuY2VsQnV0dG9uIGxlYWRpbmdBbmNob3JdIGNvbnN0cmFpbnRFcXVhbFRvQW5jaG9y
Oltjb250YWluZXJHdWlkZSBsZWFkaW5nQW5jaG9yXV0gc2V0QWN0aXZlOllFU107CisgICAgW1tb
X2NhbmNlbEJ1dHRvbiB0b3BBbmNob3JdIGNvbnN0cmFpbnRFcXVhbFRvQW5jaG9yOltbc2VsZiB2
aWV3XSB0b3BBbmNob3JdXSBzZXRBY3RpdmU6WUVTXTsKKyAgICBbW1tfY2FuY2VsQnV0dG9uIGJv
dHRvbUFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W192aXN1YWxFZmZlY3RWaWV3IGJv
dHRvbUFuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworCisgICAgW1tbX2xvY2F0aW9uQnV0dG9uIGhl
aWdodEFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9Db25zdGFudDoyMF0gc2V0QWN0aXZlOllFU107
CisgICAgW1tbX2xvY2F0aW9uQnV0dG9uIGJvdHRvbUFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9B
bmNob3I6W192aXN1YWxFZmZlY3RWaWV3IGJvdHRvbUFuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOwor
ICAgIFtbW19sb2NhdGlvbkJ1dHRvbiBsZWFkaW5nQW5jaG9yXSBjb25zdHJhaW50R3JlYXRlclRo
YW5PckVxdWFsVG9BbmNob3I6W19jYW5jZWxCdXR0b24gdHJhaWxpbmdBbmNob3JdXSBzZXRBY3Rp
dmU6WUVTXTsKKyAgICBbW1tfbG9jYXRpb25CdXR0b24gdHJhaWxpbmdBbmNob3JdIGNvbnN0cmFp
bnRMZXNzVGhhbk9yRXF1YWxUb0FuY2hvcjpbW3NlbGYgdmlld10gdHJhaWxpbmdBbmNob3JdXSBz
ZXRBY3RpdmU6WUVTXTsKKyAgICBOU0xheW91dENvbnN0cmFpbnQgKmNlbnRlcmluZ0NvbnN0cmFp
bnQgPSBbW19sb2NhdGlvbkJ1dHRvbiBjZW50ZXJYQW5jaG9yXSBjb25zdHJhaW50RXF1YWxUb0Fu
Y2hvcjpbW3NlbGYgdmlld10gY2VudGVyWEFuY2hvcl1dOworICAgIFtjZW50ZXJpbmdDb25zdHJh
aW50IHNldFByaW9yaXR5OlVJTGF5b3V0UHJpb3JpdHlEZWZhdWx0TG93XTsKKyAgICBbY2VudGVy
aW5nQ29uc3RyYWludCBzZXRBY3RpdmU6WUVTXTsKKworICAgIFtfdmlzdWFsRWZmZWN0VmlldyBz
ZXRBbHBoYTowXTsKKyAgICBbX2NhbmNlbEJ1dHRvbiBzZXRBbHBoYTowXTsKKyAgICBbX2xvY2F0
aW9uQnV0dG9uIHNldEFscGhhOjBdOworCisgICAgW192aXN1YWxFZmZlY3RWaWV3IHNldEhpZGRl
bjpZRVNdOworICAgIFtfY2FuY2VsQnV0dG9uIHNldEhpZGRlbjpZRVNdOworICAgIFtfbG9jYXRp
b25CdXR0b24gc2V0SGlkZGVuOllFU107Cit9CisKKy0gKHZvaWQpbG9hZFZpZXcKK3sKKyAgICBb
c2VsZiBzZXRWaWV3OmFkb3B0TlMoW1tVSVZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6Q0dSZWN0
TWFrZSgwLCAwLCAxMDAsIDEwMCldKS5nZXQoKV07CisgICAgW1tzZWxmIHZpZXddIHNldEF1dG9y
ZXNpemluZ01hc2s6KFVJVmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlV2lkdGggfCBVSVZpZXdBdXRv
cmVzaXppbmdGbGV4aWJsZUhlaWdodCldOworCiAgICAgX3RvdWNoR2VzdHVyZVJlY29nbml6ZXIg
PSBhZG9wdE5TKFtbVUlMb25nUHJlc3NHZXN0dXJlUmVjb2duaXplciBhbGxvY10gaW5pdFdpdGhU
YXJnZXQ6c2VsZiBhY3Rpb246QHNlbGVjdG9yKHNob3dDYW5jZWxCdXR0b246KV0pOwogICAgIFtf
dG91Y2hHZXN0dXJlUmVjb2duaXplciBzZXREZWxlZ2F0ZTpzZWxmXTsKICAgICBbX3RvdWNoR2Vz
dHVyZVJlY29nbml6ZXIgc2V0Q2FuY2Vsc1RvdWNoZXNJblZpZXc6Tk9dOwogICAgIFtfdG91Y2hH
ZXN0dXJlUmVjb2duaXplciBzZXRNaW5pbXVtUHJlc3NEdXJhdGlvbjowXTsKICAgICBbW3NlbGYg
dmlld10gYWRkR2VzdHVyZVJlY29nbml6ZXI6X3RvdWNoR2VzdHVyZVJlY29nbml6ZXIuZ2V0KCld
OworICAgIFtzZWxmIGNyZWF0ZVN1YnZpZXdzXTsKIH0KIAogLSAodm9pZCl2aWV3V2lsbEFwcGVh
cjooQk9PTClhbmltYXRlZApAQCAtMjIzLDYgKzMzMCwxMSBAQCAtICh2b2lkKXZpZXdXaWxsQXBw
ZWFyOihCT09MKWFuaW1hdGVkCiAgICAgW1tzZWxmIHZpZXddIGluc2VydFN1YnZpZXc6W3NlbGYg
Y29udGVudFZpZXddIGF0SW5kZXg6MF07CiB9CiAKKy0gKHZvaWQpdmlld0RpZEFwcGVhcjooQk9P
TClhbmltYXRlZAoreworICAgIFtzZWxmIF91cGRhdGVMYXlvdXRNYXJnaW5zXTsKK30KKwogLSAo
dm9pZCljYW5jZWxBY3Rpb246KGlkKXNlbmRlcgogewogICAgIFtbc2VsZiB0YXJnZXRdIHBlcmZv
cm1TZWxlY3Rvcjpbc2VsZiBhY3Rpb25dXTsKQEAgLTIzMSwxMiArMzQzLDE0IEBAIC0gKHZvaWQp
Y2FuY2VsQWN0aW9uOihpZClzZW5kZXIKIC0gKHZvaWQpaGlkZUNhbmNlbEJ1dHRvbgogewogICAg
IFtOU09iamVjdCBjYW5jZWxQcmV2aW91c1BlcmZvcm1SZXF1ZXN0c1dpdGhUYXJnZXQ6c2VsZiBz
ZWxlY3RvcjpAc2VsZWN0b3IoaGlkZUNhbmNlbEJ1dHRvbikgb2JqZWN0Om5pbF07Ci0gICAgW1VJ
VmlldyBhbmltYXRlV2l0aER1cmF0aW9uOjAuMiBhbmltYXRpb25zOl57CisgICAgW1VJVmlldyBh
bmltYXRlV2l0aER1cmF0aW9uOjAuMSBhbmltYXRpb25zOl57CiAgICAgICAgIFtfdmlzdWFsRWZm
ZWN0VmlldyBzZXRBbHBoYTowXTsKICAgICAgICAgW19jYW5jZWxCdXR0b24gc2V0QWxwaGE6MF07
CisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0QWxwaGE6MF07CiAgICAgfSBjb21wbGV0aW9u
Ol4oQk9PTCBmaW5pc2hlZCl7CiAgICAgICAgIGlmIChmaW5pc2hlZCkgewogICAgICAgICAgICAg
W19jYW5jZWxCdXR0b24gc2V0SGlkZGVuOllFU107CisgICAgICAgICAgICBbX2xvY2F0aW9uQnV0
dG9uIHNldEhpZGRlbjpZRVNdOwogICAgICAgICAgICAgW192aXN1YWxFZmZlY3RWaWV3IHNldEhp
ZGRlbjpZRVNdOwogICAgICAgICB9CiAgICAgfV07CkBAIC0yNDUsMTIgKzM1OSwxNCBAQCAtICh2
b2lkKWhpZGVDYW5jZWxCdXR0b24KIC0gKHZvaWQpc2hvd0NhbmNlbEJ1dHRvbjooaWQpc2VuZGVy
CiB7CiAgICAgW05TT2JqZWN0IGNhbmNlbFByZXZpb3VzUGVyZm9ybVJlcXVlc3RzV2l0aFRhcmdl
dDpzZWxmIHNlbGVjdG9yOkBzZWxlY3RvcihoaWRlQ2FuY2VsQnV0dG9uKSBvYmplY3Q6bmlsXTsK
LSAgICBbc2VsZiBwZXJmb3JtU2VsZWN0b3I6QHNlbGVjdG9yKGhpZGVDYW5jZWxCdXR0b24pIHdp
dGhPYmplY3Q6bmlsIGFmdGVyRGVsYXk6My4wXTsKLSAgICBbVUlWaWV3IGFuaW1hdGVXaXRoRHVy
YXRpb246MC4yIGFuaW1hdGlvbnM6IF57CisgICAgW3NlbGYgcGVyZm9ybVNlbGVjdG9yOkBzZWxl
Y3RvcihoaWRlQ2FuY2VsQnV0dG9uKSB3aXRoT2JqZWN0Om5pbCBhZnRlckRlbGF5OjQuMF07Cisg
ICAgW1VJVmlldyBhbmltYXRlV2l0aER1cmF0aW9uOjAuMSBhbmltYXRpb25zOiBeewogICAgICAg
ICBbX3Zpc3VhbEVmZmVjdFZpZXcgc2V0SGlkZGVuOk5PXTsKICAgICAgICAgW19jYW5jZWxCdXR0
b24gc2V0SGlkZGVuOk5PXTsKKyAgICAgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRIaWRkZW46Tk9d
OwogICAgICAgICBbX3Zpc3VhbEVmZmVjdFZpZXcgc2V0QWxwaGE6MV07CiAgICAgICAgIFtfY2Fu
Y2VsQnV0dG9uIHNldEFscGhhOjFdOworICAgICAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEFscGhh
OjFdOwogICAgIH1dOwogfQogCkBAIC0yNjAsMTEgKzM3Niw2IEBAIC0gKHZvaWQpc2V0VGFyZ2V0
OihpZCl0YXJnZXQgYWN0aW9uOihTRUwpYWN0aW9uCiAgICAgW3NlbGYgc2V0QWN0aW9uOmFjdGlv
bl07CiB9CiAKLS0gKEJPT0wpcHJlZmVyc1N0YXR1c0JhckhpZGRlbgotewotICAgIHJldHVybiBZ
RVM7Ci19Ci0KIC8vIE1BUksgLSBVSUdlc3R1cmVSZWNvZ25pemVyRGVsZWdhdGUKIAogLSAoQk9P
TClnZXN0dXJlUmVjb2duaXplcjooVUlHZXN0dXJlUmVjb2duaXplciAqKWdlc3R1cmVSZWNvZ25p
emVyIHNob3VsZFJlY29nbml6ZVNpbXVsdGFuZW91c2x5V2l0aEdlc3R1cmVSZWNvZ25pemVyOihV
SUdlc3R1cmVSZWNvZ25pemVyICopb3RoZXJHZXN0dXJlUmVjb2duaXplcgpAQCAtMjc3LDExICsz
ODgsMTkgQEAgQGVuZAogQGludGVyZmFjZSBfV0tGdWxsc2NyZWVuUm9vdFZpZXdDb250cm9sbGVy
IDogVUlWaWV3Q29udHJvbGxlcgogQGVuZAogCi1AaW1wbGVtZW50YXRpb24gX1dLRnVsbHNjcmVl
blJvb3RWaWV3Q29udHJvbGxlciA6IFVJVmlld0NvbnRyb2xsZXIKK0BpbXBsZW1lbnRhdGlvbiBf
V0tGdWxsc2NyZWVuUm9vdFZpZXdDb250cm9sbGVyIHsKKyAgICBCT09MIF9zaG93c1N0YXR1c0Jh
cjsKK30KKworLSAodm9pZClzZXRTaG93c1N0YXR1c0JhcjooQk9PTCl2YWx1ZQoreworICAgIF9z
aG93c1N0YXR1c0JhciA9IHZhbHVlOworICAgIFtzZWxmIHNldE5lZWRzU3RhdHVzQmFyQXBwZWFy
YW5jZVVwZGF0ZV07Cit9CiAKIC0gKEJPT0wpcHJlZmVyc1N0YXR1c0JhckhpZGRlbgogewotICAg
IHJldHVybiBZRVM7CisgICAgcmV0dXJuICFfc2hvd3NTdGF0dXNCYXI7CiB9CiAKIEBlbmQKQEAg
LTM1OCw2ICs0NzcsNyBAQCBAaW1wbGVtZW50YXRpb24gV0tGdWxsU2NyZWVuV2luZG93Q29udHJv
bGxlciB7CiAgICAgV0tXZWJWaWV3U3RhdGUgX3ZpZXdTdGF0ZTsKIAogICAgIFJldGFpblB0cjxV
SVdpbmRvdz4gX3dpbmRvdzsKKyAgICBSZXRhaW5QdHI8X1dLRnVsbHNjcmVlblJvb3RWaWV3Q29u
dHJvbGxlcj4gX3Jvb3RWaWV3Q29udHJvbGxlcjsKIAogICAgIFJlZlB0cjxXZWJLaXQ6OlZvaWRD
YWxsYmFjaz4gX3JlcGFpbnRDYWxsYmFjazsKICAgICBSZXRhaW5QdHI8VUlWaWV3Q29udHJvbGxl
cj4gX3ZpZXdDb250cm9sbGVyRm9yUHJlc2VudGF0aW9uOwpAQCAtMzY1LDYgKzQ4NSwxMCBAQCBA
aW1wbGVtZW50YXRpb24gV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlciB7CiAKICAgICBDR1Jl
Y3QgX2luaXRpYWxGcmFtZTsKICAgICBDR1JlY3QgX2ZpbmFsRnJhbWU7CisKKyAgICBSZXRhaW5Q
dHI8TlNTdHJpbmc+IF9FVk9yZ2FuaXphdGlvbk5hbWU7CisgICAgQk9PTCBfRVZPcmdhbml6YXRp
b25OYW1lSXNWYWxpZDsKKwogfQogCiAjcHJhZ21hIG1hcmsgLQpAQCAtNDA0LDE2ICs1MjgsOTUg
QEAgLSAoV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcgKil3ZWJWaWV3UGxhY2Vob2xk
ZXIKICNwcmFnbWEgbWFyayAtCiAjcHJhZ21hIG1hcmsgRXhwb3NlZCBJbnRlcmZhY2UKIAorLSAo
dm9pZClfaW52YWxpZGF0ZUVWT3JnYW5pemF0aW9uTmFtZQoreworICAgIF9FVk9yZ2FuaXphdGlv
bk5hbWUgPSBuaWw7CisgICAgX0VWT3JnYW5pemF0aW9uTmFtZUlzVmFsaWQgPSBOTzsKK30KKwor
LSAoQk9PTClpc1NlY3VyZQoreworICAgIHJldHVybiBfd2ViVmlldy5oYXNPbmx5U2VjdXJlQ29u
dGVudDsKK30KKworLSAoU2VjVHJ1c3RSZWYpX3NlcnZlclRydXN0Cit7CisgICAgcmV0dXJuIF93
ZWJWaWV3LnNlcnZlclRydXN0OworfQorCistIChOU1N0cmluZyAqKV9FVk9yZ2FuaXphdGlvbk5h
bWUKK3sKKyAgICBpZiAoIXNlbGYuaXNTZWN1cmUpCisgICAgICAgIHJldHVybiBuaWw7CisKKyAg
ICBpZiAoX0VWT3JnYW5pemF0aW9uTmFtZUlzVmFsaWQpCisgICAgICAgIHJldHVybiBfRVZPcmdh
bml6YXRpb25OYW1lLmdldCgpOworCisgICAgQVNTRVJUKCFfRVZPcmdhbml6YXRpb25OYW1lLmdl
dCgpKTsKKyAgICBfRVZPcmdhbml6YXRpb25OYW1lSXNWYWxpZCA9IFlFUzsKKworICAgIFNlY1Ry
dXN0UmVmIHRydXN0ID0gW3NlbGYgX3NlcnZlclRydXN0XTsKKyAgICBpZiAoIXRydXN0KQorICAg
ICAgICByZXR1cm4gbmlsOworCisgICAgTlNEaWN0aW9uYXJ5ICppbmZvRGljdGlvbmFyeSA9IENG
QnJpZGdpbmdSZWxlYXNlKFNlY1RydXN0Q29weUluZm8odHJ1c3QpKTsKKyAgICAvLyBJZiBTZWNU
cnVzdENvcHlJbmZvIHJldHVybmVkIE5VTEwgdGhlbiBpdCdzIGxpa2VseSB0aGF0IHRoZSBTZWNU
cnVzdFJlZiBoYXMgbm90IGJlZW4gZXZhbHVhdGVkCisgICAgLy8gYW5kIHRoZSBvbmx5IHdheSB0
byBnZXQgdGhlIGluZm9ybWF0aW9uIHdlIG5lZWQgaXMgdG8gY2FsbCBTZWNUcnVzdEV2YWx1YXRl
IG91cnNlbHZlcy4KKyAgICBpZiAoIWluZm9EaWN0aW9uYXJ5KSB7CisgICAgICAgIE9TU3RhdHVz
IGVyciA9IFNlY1RydXN0RXZhbHVhdGUodHJ1c3QsIE5VTEwpOworICAgICAgICBpZiAoZXJyID09
IG5vRXJyKQorICAgICAgICAgICAgaW5mb0RpY3Rpb25hcnkgPSBDRkJyaWRnaW5nUmVsZWFzZShT
ZWNUcnVzdENvcHlJbmZvKHRydXN0KSk7CisgICAgICAgIGlmICghaW5mb0RpY3Rpb25hcnkpCisg
ICAgICAgICAgICByZXR1cm4gbmlsOworICAgIH0KKworICAgIC8vIE1ha2Ugc3VyZSB0aGF0IHRo
ZSBFViBjZXJ0aWZpY2F0ZSBpcyB2YWxpZCBhZ2FpbnN0IG91ciBjZXJ0aWZpY2F0ZSBjaGFpbi4K
KyAgICBpZCBoYXNFViA9IFtpbmZvRGljdGlvbmFyeSBvYmplY3RGb3JLZXk6KF9fYnJpZGdlIE5T
U3RyaW5nICopa1NlY1RydXN0SW5mb0V4dGVuZGVkVmFsaWRhdGlvbktleV07CisgICAgaWYgKCFb
aGFzRVYgaXNLaW5kT2ZDbGFzczpbTlNWYWx1ZSBjbGFzc11dIHx8ICFbaGFzRVYgYm9vbFZhbHVl
XSkKKyAgICAgICAgcmV0dXJuIG5pbDsKKworICAgIC8vIE1ha2Ugc3VyZSB0aGF0IHdlIGNvdWxk
IGNvbnRhY3QgcmV2b2NhdGlvbiBzZXJ2ZXIgYW5kIGl0IGlzIHN0aWxsIHZhbGlkLgorICAgIGlk
IGlzTm90UmV2b2tlZCA9IFtpbmZvRGljdGlvbmFyeSBvYmplY3RGb3JLZXk6KF9fYnJpZGdlIE5T
U3RyaW5nICopa1NlY1RydXN0SW5mb1Jldm9jYXRpb25LZXldOworICAgIGlmICghW2lzTm90UmV2
b2tlZCBpc0tpbmRPZkNsYXNzOltOU1ZhbHVlIGNsYXNzXV0gfHwgIVtpc05vdFJldm9rZWQgYm9v
bFZhbHVlXSkKKyAgICAgICAgcmV0dXJuIG5pbDsKKworICAgIF9FVk9yZ2FuaXphdGlvbk5hbWUg
PSBbaW5mb0RpY3Rpb25hcnkgb2JqZWN0Rm9yS2V5OihfX2JyaWRnZSBOU1N0cmluZyAqKWtTZWNU
cnVzdEluZm9Db21wYW55TmFtZUtleV07CisgICAgcmV0dXJuIF9FVk9yZ2FuaXphdGlvbk5hbWUu
Z2V0KCk7Cit9CisKKy0gKHZvaWQpdXBkYXRlTG9jYXRpb25JbmZvCit7CisgICAgTlNVUkwqIHVy
bCA9IF93ZWJWaWV3Ll9jb21taXR0ZWRVUkw7CisKKyAgICBOU1N0cmluZyAqRVZPcmdhbml6YXRp
b25OYW1lID0gW3NlbGYgX0VWT3JnYW5pemF0aW9uTmFtZV07CisgICAgQk9PTCBzaG93c0VWT3Jn
YW5pemF0aW9uTmFtZSA9IFtFVk9yZ2FuaXphdGlvbk5hbWUgbGVuZ3RoXSA+IDA7CisKKyAgICBO
U1N0cmluZyAqZG9tYWluID0gc2ltcGxpZmllZFVzZXJWaXNpYmxlU3RyaW5nKHVybCk7CisKKyAg
ICBOU1N0cmluZyAqdGV4dCA9IG5pbDsKKyAgICBpZiAoW1t1cmwgYWJzb2x1dGVTdHJpbmddIF93
ZWJfaGFzQ2FzZUluc2Vuc2l0aXZlUHJlZml4OkAiZGF0YToiXSkKKyAgICAgICAgdGV4dCA9IEAi
ZGF0YToiOworICAgIGVsc2UgaWYgKHNob3dzRVZPcmdhbml6YXRpb25OYW1lKQorICAgICAgICB0
ZXh0ID0gRVZPcmdhbml6YXRpb25OYW1lOworICAgIGVsc2UKKyAgICAgICAgdGV4dCA9IGRvbWFp
bjsKKworICAgIFtfZnVsbHNjcmVlblZpZXdDb250cm9sbGVyIHNldExvY2F0aW9uOnRleHQgc2Vj
dXJlOnNlbGYuaXNTZWN1cmUgdHJ1c3RlZE5hbWU6c2hvd3NFVk9yZ2FuaXphdGlvbk5hbWUgdHJ1
c3RlZFNpdGU6ISFFVk9yZ2FuaXphdGlvbk5hbWVdOworfQorCiAtICh2b2lkKWVudGVyRnVsbFNj
cmVlbgogewogICAgIGlmIChbc2VsZiBpc0Z1bGxTY3JlZW5dKQogICAgICAgICByZXR1cm47CiAK
KyAgICBbc2VsZiBfaW52YWxpZGF0ZUVWT3JnYW5pemF0aW9uTmFtZV07CisKICAgICBfZnVsbFNj
cmVlblN0YXRlID0gV2FpdGluZ1RvRW50ZXJGdWxsU2NyZWVuOwogCiAgICAgX3dpbmRvdyA9IGFk
b3B0TlMoW1tVSVdpbmRvdyBhbGxvY10gaW5pdF0pOwogICAgIFtfd2luZG93IHNldEJhY2tncm91
bmRDb2xvcjpbVUlDb2xvciBjbGVhckNvbG9yXV07Ci0gICAgW193aW5kb3cgc2V0Um9vdFZpZXdD
b250cm9sbGVyOmFkb3B0TlMoW1tfV0tGdWxsc2NyZWVuUm9vdFZpZXdDb250cm9sbGVyIGFsbG9j
XSBpbml0XSkuZ2V0KCldOworICAgIF9yb290Vmlld0NvbnRyb2xsZXIgPSBhZG9wdE5TKFtbX1dL
RnVsbHNjcmVlblJvb3RWaWV3Q29udHJvbGxlciBhbGxvY10gaW5pdF0pOworICAgIFtfd2luZG93
IHNldFJvb3RWaWV3Q29udHJvbGxlcjpfcm9vdFZpZXdDb250cm9sbGVyLmdldCgpXTsKICAgICBb
W193aW5kb3cgcm9vdFZpZXdDb250cm9sbGVyXSBzZXRWaWV3OmFkb3B0TlMoW1tVSVZpZXcgYWxs
b2NdIGluaXRXaXRoRnJhbWU6W193aW5kb3cgYm91bmRzXV0pLmdldCgpXTsKICAgICBbW1tfd2lu
ZG93IHJvb3RWaWV3Q29udHJvbGxlcl0gdmlld10gc2V0QmFja2dyb3VuZENvbG9yOltVSUNvbG9y
IGNsZWFyQ29sb3JdXTsKICAgICBbW1tfd2luZG93IHJvb3RWaWV3Q29udHJvbGxlcl0gdmlld10g
c2V0QXV0b3Jlc2l6aW5nTWFzazooVUlWaWV3QXV0b3Jlc2l6aW5nRmxleGlibGVXaWR0aCB8IFVJ
Vmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlSGVpZ2h0KV07CkBAIC00MjYsNiArNjI5LDcgQEAgLSAo
dm9pZCllbnRlckZ1bGxTY3JlZW4KICAgICBbX2Z1bGxzY3JlZW5WaWV3Q29udHJvbGxlciBzZXRN
b2RhbFByZXNlbnRhdGlvblN0eWxlOlVJTW9kYWxQcmVzZW50YXRpb25DdXN0b21dOwogICAgIFtf
ZnVsbHNjcmVlblZpZXdDb250cm9sbGVyIHNldFRhcmdldDpzZWxmIGFjdGlvbjpAc2VsZWN0b3Io
cmVxdWVzdEV4aXRGdWxsU2NyZWVuKV07CiAgICAgW1tfZnVsbHNjcmVlblZpZXdDb250cm9sbGVy
IHZpZXddIHNldEZyYW1lOltbX3ZpZXdDb250cm9sbGVyRm9yUHJlc2VudGF0aW9uIHZpZXddIGJv
dW5kc11dOworICAgIFtzZWxmIHVwZGF0ZUxvY2F0aW9uSW5mb107CiAKICAgICBbc2VsZiBfbWFu
YWdlcl0tPnNhdmVTY3JvbGxQb3NpdGlvbigpOwogCkBAIC00ODgsMTEgKzY5MiwxMyBAQCAtICh2
b2lkKWJlZ2FuRW50ZXJGdWxsU2NyZWVuV2l0aEluaXRpYWxGcmFtZTooQ0dSZWN0KWluaXRpYWxG
cmFtZSBmaW5hbEZyYW1lOihDRwogCiAgICAgW193aW5kb3cgc2V0V2luZG93TGV2ZWw6VUlXaW5k
b3dMZXZlbE5vcm1hbF07CiAgICAgW193aW5kb3cgbWFrZUtleUFuZFZpc2libGVdOworICAgIFtf
cm9vdFZpZXdDb250cm9sbGVyIHNldFNob3dzU3RhdHVzQmFyOllFU107CiAKICAgICBbQ0FUcmFu
c2FjdGlvbiBjb21taXRdOwogCiAgICAgW192aWV3Q29udHJvbGxlckZvclByZXNlbnRhdGlvbiBw
cmVzZW50Vmlld0NvbnRyb2xsZXI6X2Z1bGxzY3JlZW5WaWV3Q29udHJvbGxlci5nZXQoKSBhbmlt
YXRlZDpZRVMgY29tcGxldGlvbjpeewogICAgICAgICBbc2VsZiBjb21wbGV0ZWRFbnRlckZ1bGxT
Y3JlZW5dOworICAgICAgICBbX3Jvb3RWaWV3Q29udHJvbGxlciBzZXRTaG93c1N0YXR1c0JhcjpO
T107CiAgICAgfV07CiB9CiAKQEAgLTUzNSwxMSArNzQxLDEzIEBAIC0gKHZvaWQpYmVnYW5FeGl0
RnVsbFNjcmVlbldpdGhJbml0aWFsRnJhbWU6KENHUmVjdClpbml0aWFsRnJhbWUgZmluYWxGcmFt
ZTooQ0dSCiAgICAgCiAgICAgW193ZWJWaWV3IF9wYWdlXS0+c2V0U3VwcHJlc3NWaXNpYmlsaXR5
VXBkYXRlcyh0cnVlKTsKIAorICAgIFtfcm9vdFZpZXdDb250cm9sbGVyIHNldFNob3dzU3RhdHVz
QmFyOllFU107CiAgICAgW19mdWxsc2NyZWVuVmlld0NvbnRyb2xsZXIgZGlzbWlzc1ZpZXdDb250
cm9sbGVyQW5pbWF0ZWQ6WUVTIGNvbXBsZXRpb246XnsKICAgICAgICAgaWYgKCFbX3dlYlZpZXcg
X3BhZ2VdKQogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIFtzZWxmIGNvbXBsZXRlZEV4
aXRGdWxsU2NyZWVuXTsKKyAgICAgICAgW19yb290Vmlld0NvbnRyb2xsZXIgc2V0U2hvd3NTdGF0
dXNCYXI6Tk9dOwogICAgIH1dOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktp
dC54Y2Fzc2V0cy9Eb25lLmltYWdlc2V0L0NvbnRlbnRzLmpzb24gYi9Tb3VyY2UvV2ViS2l0L1dl
YktpdC54Y2Fzc2V0cy9Eb25lLmltYWdlc2V0L0NvbnRlbnRzLmpzb24KZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGQ4MGJlNDJkMjgwZDUzZjEzY2FkYmMxNjVkODE3OTJhMTY2ZDkwZjIu
LjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJLaXQueGNhc3NldHMvRG9uZS5pbWFnZXNldC9Db250ZW50cy5qc29uCisrKyAvZGV2
L251bGwKQEAgLTEsMTUgKzAsMCBAQAotewotICAiaW1hZ2VzIiA6IFsKLSAgICB7Ci0gICAgICAi
aWRpb20iIDogInVuaXZlcnNhbCIsCi0gICAgICAiZmlsZW5hbWUiIDogIkRvbmUucGRmIgotICAg
IH0KLSAgXSwKLSAgImluZm8iIDogewotICAgICJ2ZXJzaW9uIiA6IDEsCi0gICAgImF1dGhvciIg
OiAieGNvZGUiCi0gIH0sCi0gICJwcm9wZXJ0aWVzIiA6IHsKLSAgICAidGVtcGxhdGUtcmVuZGVy
aW5nLWludGVudCIgOiAidGVtcGxhdGUiCi0gIH0KLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Eb25lLmltYWdl
c2V0L0RvbmUucGRmIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvRG9uZS5pbWFnZXNl
dC9Eb25lLnBkZgpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTc2OTliMjI2OGE5MmZl
ODgzNWE5N2FkYmM3Yjk5MWNhMGU2OGI2ZS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJh
bCA0MTcwCnpjbWFpJmN7cjVjYF5OYFU3X3lXbFFZSU9hWk5gamNsNjVTSnRTUCVAI0BIRnptI2tV
QiRldCgobTFIZjdGa35rXwp6Q2ZPP18jPWVzXmBPZFdiS0sxUSlVRWsrPXU2ZlM5cFpuYkIlKD5y
eHl6WVZNdDcoWUNCO1gpTzZNMjw5bSQmeGQKelpCcSpmMGZ2SXs3KVF7I2I2YG13b1U1SXVKeUBD
fDhHPEQ+OUdwRkk/diRyOSs3cVhTIXtUamxVYDBpY2hvP0laCno/RT48cCE2aGxVOSl+Zjk/PHlS
YTE2PHdgUDRkJEheb0hLSUchZFcrbT5UQTkoPkZnQC1GS2NaaDtLSTVZOWBoewp6VnpCRj9mSHZY
UGpCTll0dSUpYDhReSM4Y3hMcDdHVG1SQHdZJGZ5SmlHQ2NNQml4Y303KlFoQWlfOD0yNGNkYiMK
enIhPFVIWWFrbThDKT4lRTByUTxrTChZT01pP3RfRzNOaXxDcjslfW96P0pxUkQxYzZCeXRsdCte
cz9MUGg/d1MpCno3eUE2WUl3aEdYYCRZME5uZkZ8ISpFe19uKXVUM04jT0pZc2duWlpCK1gkUVJU
aj5GTzdkdXZIUnQwYVNNODVwVQp6Jmk8fX14dlM2dmNFTnA5SlZ5fUEjey1YWTElfkp9TEh9WHpN
KjNKSkA4MGUqOFg/ckVfPVUtRy1oPnB3TGMxZ2UKej5CVHlRdlcpVHYtXzJzPz45NTs4bFY0e3N1
JXRoNUQ5cjlJS3olPmF8NjBfcnM3bHh9RkdQNlNFYlBnaW84TUlTCnokU3NEMFBBbmEpJW9YJVdq
a0BxY0pZOHYpUGBZZXBeKFJ3e3trbSRzOVdESW1HJUZmO0kmKihYbyl9anV2ek4xXgp6YllDQG8z
VGY7QThNaSZfcytYNSQocz5pOSNib0F7S3hfNH5gOU02WXt+a1NWQTtsNGRiRzcrZDhPbiVTUC0r
I2EKelBkRX11ZU11Y2t7WntLc2VyYENocSgwajJgPT5rMylle1c9UUZsWH0yajBzYWl9TGA+ezE4
eGhTNUx9JjQ9fmokCno2a31ZKCoqS3Q4QHhFWWxDYEV1RkRZcXF2Oyo2aUdQLXAjZWwpZ0oyWWxR
T3puXlRyaigqUnE3Qn5mXjF5dHxQYgp6OGpBeHtFcjtAZWZufnBeUmFCKDk+dF96Ui0qV3RQQ0d2
WmVxJUxLZmt9NmJaeD45VGptUT0lZUo3OTUhbnlVWlgKenUkaX1nRSpUQVJNVWpaSSNKN2g5ej5z
eGJlQDVeLWBTWUFXZ0pgVn5lY0gleUEjYiQ8OFhXOCptdSlWK3JxUFROCnp6XlpkRi0zWUBCRnNg
IWN4Nn5WYHNnczhaUEstLU0oclk2YmQjJEZVTHNKejRMdn5BbjE2MlYxdVZLSWpQWk9GRAp6TTc5
YVg7I3xHTztVZ1ZRbzN1eVNYam57V1VYUihAMHlWZVBYblZnQjcxR242b05wPUhTZDw4e3NzMTJW
ciFWQnUKenphTnxeQWQzPF8ybXE8fiQoIyFrO3dJQ2s3P21+aU5iTGpQdGZ6YGRNWiU9R3ZLZXk8
MTsoMzdvSHowJk1YVEhJCnpxek8lQV5PfDw/KUZBRT9zYFc9UUFZLWAlVjdBMl8kUzFxcD4tMEZ7
QzlNbnFkR21CbiYoPUwxMEYpISR4XnFlPgp6K2N7Y0ZvcjdtRmRYKk55a2tXKiNhYzdDJE0ldiM4
XyYmQ3FoeWd9eFZJSCMmKztKZEp4N3FIamxvQFNmVjReOUYKejdzcWI7Plg2cFVuUXVZNExyVTxz
KW9DRTZGNnM3KDNxXmJqMyNSPihfUzx6c3FiR3VsXzd2THVjYTJ3cz0xS1FlCnoyPWA0I28jeldC
aUNsbVVMOUBIWiVXNn1OMHAlX1NtQzBqO2RQYHV5PkgkRmMkaTF9X2s8TTAwT2BuO0NuUFRWWAp6
b2pxdT5vRnFpMldwfWZ9QE5lb09rKD1vcWlAVFRRQTlFeyhwMz5yazxKOEhJXkIheGZiI15rZHE+
KmcpSHJlKmEKelVuM3A8WD5TeX1tLVUpXkMxVHB4VV47fntKbGVpRzsje2FuZmBrbnlKaCpReF9e
NkM5SnhAQGs2TmtOKkg2U25vCnpzYjhyQC0tY0hKcGlhPlZ4Kz9rODJGe3RZITlaPWJIVEZlYEJf
OG9ve0A8b3tfP2F3WFQqcWAmMWRKdihuQiM1Uwp6QXZ0MF54dWZDRV58WGYqPXNoMlI1VE8hS1RD
dUIjXyhJQHJiUiVGdWMqdUQreTQhUlQ9Vj18M2Z6TVNHMkxUYHoKeipkVUdmNE0jVVhaPmF4VXBs
K0NxK2QmSzltRGgqZG4zekt9bHxobTkrRUFMMlB6USN2V2o0K25tOFNfQDRfVlZ5CnpgYE0wfUc1
RGNXXnlONntuby1kU1kpUSk3Wi10JjVKIyp0fUhjRFMle2dmd2Y2QCVyQ29kQCk5IUg5ITxHPWJz
bAp6Y1c4VWloWHcmSkx4eEpfYDR9YENJekZsU2FeOW9vZSpJeldMTTR8WE9HTnxzKnMqMVJTY0cq
JEdKfHAoMTZ7WDwKejNCJDEhSFByK1lLXnBkeFBLZzIhWTRnPUg1P0NHe2RsaCMrQCFBQzQhS2lI
WG91Z2JXSm1YUU9nZll4emJVKT8tCnp3Q0BofiZTZjMkTmZ9ITxjPDZUNkJUVjEzJDBvdnNPNVRo
ej8wNGhEbj1XNkN6aU04Wl9LYT4ySnVsRDQoKXlhYAp6R29NPmY8eHZZTVNMdEc0MT92RXpJJUta
Iygzc0dRWl9Td3pqLUBjeGRYSHR5Xl4+KXJWN31sSnF3KU1MYjsxZFoKelc8YU1mKXwwb3ZnM2Z9
TSpteFBIODF9OzE4eFJKZVB4TCRtQkg4PyFFSEVPXlpWanJgWHo+WkBDVWE7LTNVVjY/CnppbG1v
XlVlYTxEdW9PfWRCQSFmY0tXbjR1ZSQtVWlPMFFUajN2M054TztYWk5JVzVHWWNZI2tgYngwUl47
Z3p6Vgp6dkxFVl47aGB0NHkoVWxaUkFyaiE1IUNgTzFXSVpxIV8oSCUjQG1hTTNsZzFEPWg2Wm9k
TU57R0s1NW54UztFI1EKemdELXIwe0khelNwa0JHJkNeV2I5YTw7fTtkNG9jUG1VPjFgRCZ7Njgw
fjN3OEBtYWRyMDgqMF9ucEFPRUZKRjE0CnpeZDAyVU5uWHtTTX1GQHIlUCpGbmVVRXomSiszTUhh
Sk1JVXJnQCF6bnordTBnVyR9YHJeJFJ8VVVKelIhLUVhYgp6dDZPa0dvPTFkYUxOeV9ONEtld09H
KjA+O1F7ckg/VW43I2JlYTd8N147Q2dXK2Y8cz1fQF9GP18mJCFsJSU/Ni0Kel4/SVI+TFhLJDFB
OztaNWlHbnklOT85b0VEYnBJVUtrK3Fjd3pNa1J6akRYJU9YSUE8WSUqXktaIUlxbXVRNntMCnpx
RDdofiEhQEhsZ1BidmlYZjN4bFZ8b0VKQmIhYVZ1ITUkaEZMcXdDZ19PbDJ2eHx4c14yRUNwOX1Y
OE42ayhyfgp6bmJfcyhtVVNKbU9wLTh7UmpJSjNGIUU4PSkwUS1tdkBTN04lMnFWVUQkMDZUciYo
dG57TzB2ckBjWE49RHRHSWoKeldYRUxKcTNAJH0kRlFmS0NLaHlgJHUtTkJaO2B7a3ljVjtmSUJx
VWY4bDk8P3EhcmhHKFAqJUQ8a0huRFFhT3ApCnpZMF9RQFE2T0YybnA2N0cpVTs1ZXt7Z2JgVC0p
X3J6cXtMX09iVzNrdjYpPU1ULUlVPlZuKlV+VipJOGVyVXkpMQp6JTRiVj04czlmJUk5WHg/VE8l
RkV2MU1KNGhiTGJZPCVeR2MqRFZDZlhJUGRGYjUta0JsUXZqMzFhXmdYVmV8QDcKenpFTVAkJXxU
RF4pNzlhRGVlODQ3VzBoU2lnbUhTfDBPNG1uVDZ2P0hyZD1Ya2hxYGlebjdObV5kJlE1c2NWOFE7
Cno8YTFBeXUjcTVHYD9fV0s4aD1Pfkg9RW4oeWZfZHk8PXkxY0coNHk8dnskKCslQnN6cHMyU1V1
bDl4UWlPSmNJUgp6bk8xVG9AayZXVyhrNW9mYVZieW50WVdsY29aXnZNQDdqVnUkdTBDQT9WazZ9
QFk9eGcpWHU9SjkjOVRnJFQkc3AKejItRTt4cmRNUT1WbXk0bjMpb21zUShxbSVGWnM/fCg0dj0l
UmBufiZKS2BMcEdfeGg9aj5sMDZGK2AhenlrRGlVCnpaOy1ES1AjbU1LaEg5IWxBSyYoX08qMXgq
T1BrOV9xZ31JRXktKUxeZFZxU0d4XnxrMG19JUxCMkVtS35leXFVNwp6ZX5kRmcoQXp6S15XQ3Ne
KWNFe28oRDxTUit+UmlHe0NvRW88b3BnJmFle1RkPjlzUV9qYDFIS1chc05GKHZWTnEKekRQRmdK
PHdGSnpCdihpNkNRWUA3UFF8VFFac0VRcjBASzJ1aGoqKWBIQ2FZdXdUaVZrd1o+YG5SOTx9WWRU
elpNCnpJKzM0fWtkaTlgJitwRnYkMDU5WXRHcWBRZntyTl93Uys0TzZEMW9GeGxtTnE4OzhDezww
Q29CLUhBRzxKeHB6QAp6QDcoJlBeV3s4MkBHaihyRE5+dV9eQVM1dVQtRjxkUFdIKzVpSHIlP2pe
cGlYP1lsd0p3JGVVY2NEM0gkQkVReTQKekZGTFVsTWY0WTJlMFpoblZfOUR7X044XyUtVWFNKGVy
VU52cWF6TT9ZfTdTb3F9U2txTDIyeihgPzk2VTdTJmcoCnoyNGg2PUVeYCo9V0BrPzRnPDsjV0JG
N0pEMCNAQiRGZGQmYEtJPWd+Q2U0a1MyNDJ9Nz8lVzdwQVVAaTd3Q25UOQp6bzVBUGZASiFYM05q
az5WWVVwazhDKDl5bz1XNVBzTWZIe1crUkpHM1lnYnR2OyUoeH5ySmcofFVNTytZPzh9PmQKekky
KzB2cER7X0M0WDlZaWVCYihFcGw7TTl4UThaPXU5O3IoMVA1UERhTkRON1E7fntHR3kzQ0xWSXlm
U1hTUy0mCnpGNCNJKVpRPVklQjF0bnNeSEZPPHlqUCFtP3x8JFIqJVg8RXhUS2I2PEpWZzhkIU4z
YjAqKH5TPSktZWdaMnsjQAp6QjNDfVFadCpZT1hGZk9ON1pkbiZNdENvNDxLPGhrN187cERrTndk
dkFJZGxjPW1kPDtnIUUoez8+YTg3YmEoJnkKekkkPEx7cXdJfkhIWXVALV5XSSUjbVFUPkNZRD5n
UVkmM1YmKig7dWtScGtAIUdLKSkjTT47fiZOfn42MXgjeGMlCno/dFYyK0UzaGpAVEZNN3oxYC16
e191fjNiUk51ZENKczsjU15KMitgSU9BNWZjWUQwKFJfJWVuc1U2RSokJnJuIQp6Sz1RNXEld3Ul
MTJYX2BGWTZKR0lKfVMldmpfaF5RPWQpVFZiXjZRZyszI1dKJDgmXjFkU351R1JWdiErK1p3UlYK
ekMkNyZ3N2BSRip5Sjs2NlMmNVJ8UHUodWpZZGs+OEN5OHA1WXNfakVYXzUlcmdraz9APiY/cEBn
dFZVVmgmcXZQCnpGRT4tVzMkbFdJYzhQWUZfTkhhMD96d2NPM25OY3prdnNoeEU+a3dzNkZvaS1P
T053bk1oYT9gSGJWRVpjZF9mTwp6aThKJGhUWTlOa2FZe2JkOE5hVWozYzEpJGomNnBwP2Z5O0dS
MHtvJChsUmlxVSQ5RSRTRUAjVlRyQ3R6NzQzbnUKejBhRjNpNU4hRD9nb0BVYG5EfTR2X1cxdTxu
aE1FWTZkczN4Q0FBJUZKU2d4PzEkUm9lLXZBaiNNZWpjfHFSXmdiCnpYVDA0SHNRMzZ1Xlp6MD40
RUElej41RkpBU2tETS0wKXt+KVV7VnFZdXo/cmEtUDBkVEFAdUw0QDlRYkBZdX5WNgp6RXlIUUd2
cjxyKUVFRUFuTFojdHdEQktKUjZ7ZygoTSpnLVIzaWFEflZKV0BpX2NiWFUxQiVpemRPRn07KXVf
bisKekp0d3R8en14KSh7b2tHWHk1bnA/bCpSJU1nOHR0SG1YVmYqT01gOH1LUSp8RkVhaXgpN3Vm
WmUyOTxfVUkrUTsoCnpJNnw4ODZhTGhvUF5ySCkxZGBHKXthMmd9ak1CXmVzbGdGMk8xYn5rcGZZ
bFF1TTA+MTYkaHNyKzwodTdPVXdQTwp6JC1zWUcqVjcmQztFWiRzLWs9KmZfKjJmMChmfUZhQGYz
ZWhKd1ExfkVtdkRTI1ZrTEBZODFQaSFeKzlYTmxVe3AKekdIfCNRT2JSUTchOW8hKm0+ZTh4Vn5h
cn1XTVBWK3t+aHdmWlhUVyNZa1YmVlR2blIkKjh4T2JQWHFLSFBKUj88CgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvQ29udGVudHMu
anNvbiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdlc2V0L0Nv
bnRlbnRzLmpzb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjg2ZGRjMThkMzEwZjQyZjUyZjYzYjMxZTNkZjkxNjhj
MTkyMzE1YwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRz
L0xvY2tNaW5pLmltYWdlc2V0L0NvbnRlbnRzLmpzb24KQEAgLTAsMCArMSwyMiBAQAoreworICAi
aW1hZ2VzIiA6IFsKKyAgICB7CisgICAgICAiaWRpb20iIDogInVuaXZlcnNhbCIsCisgICAgICAi
c2NhbGUiIDogIjF4IgorICAgIH0sCisgICAgeworICAgICAgImlkaW9tIiA6ICJ1bml2ZXJzYWwi
LAorICAgICAgImZpbGVuYW1lIiA6ICJOYXZpZ2F0aW9uQmFyTG9ja01pbmlAMngucGRmIiwKKyAg
ICAgICJzY2FsZSIgOiAiMngiCisgICAgfSwKKyAgICB7CisgICAgICAiaWRpb20iIDogInVuaXZl
cnNhbCIsCisgICAgICAiZmlsZW5hbWUiIDogIk5hdmlnYXRpb25CYXJMb2NrTWluaUAzeC5wZGYi
LAorICAgICAgInNjYWxlIiA6ICIzeCIKKyAgICB9CisgIF0sCisgICJpbmZvIiA6IHsKKyAgICAi
dmVyc2lvbiIgOiAxLAorICAgICJhdXRob3IiIDogInhjb2RlIgorICB9Cit9ClwgTm8gbmV3bGlu
ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3Nl
dHMvTG9ja01pbmkuaW1hZ2VzZXQvTmF2aWdhdGlvbkJhckxvY2tNaW5pQDJ4LnBkZiBiL1NvdXJj
ZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdlc2V0L05hdmlnYXRpb25CYXJM
b2NrTWluaUAyeC5wZGYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDZkYWVkMTM1ZTQ1NWFhMzZkM2Q1MTBhOGQyNGI3
MjYxZWQxYzljNwpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgNTkyNgp6Y21idFkyVUhWWHUlPTJD
UCFTWG1BYCpIQFhhU0w0TGV0UXRManN7Z0ZvWF5RTi14cXgxTyVqc2ZGS0dBZjs4ejsKekF7fDdV
Xmo/MkRAKUZENntMZ3Zrb3dxMDEtT1FieGR1UWdgJCg7fFZyS0JQTjc4SWNiSHFDQyRGNlZEUXtu
WFMjCnpER0M0cVB6VlJnOCNlJCNubilMMGoyJUQ+Qyg7MjNzbnxQVmtaOWMxMzY0UTNBKzFvPk5Q
dnRDcjVncn5nZ2FBdQp6NWp5TDErIyZ7M3pufHl4UXo+K3VQWnRVSWdgRVVtQitxciRVT2QmJWU0
VW5DSUpgPzJZY2MlX2d+P2BDZWxSezQKenIrT2A0aiopVWpMMSoyPTY0PzZvcz88eyFScE99Nzs5
TGo4WmxEODVMKnhxTW9lYClwTEAwbHlJODhzZW5iQl8kCnpZZHx8SmQ/fCR0bGg7e3JLNHZHZHV6
JVAwekRATXBXYmMhNzx+R3NsM3Y5RCpVdUVoJj0yJl9Ac0xgZ3lkRlJmbgp6VlpAbjc/YEN3PTNU
KFRTMT8pVm0qRUt0dSZReEZUWDBZWGxDT3ZefUApfm9HZjZpKURkUT5uUlpyb21gI0hIMyUKeiYr
P1lJVVJPdmF1KShySFZmU2dSRWRMOERvNmYheypwKWVkNER5PzxXOE9CRW5jQnZFLXFnLUB2VUkt
c199YXlOCnpwV0RXM1Q+PT0zZ35gKFBgfTYwT2wrPnQ8bz9OQFNTWjJuZlBBKDRrcW5BMkVBdz1J
Vm5nVUI1NlQtalc3ISpGYQp6O3IhfD48R3U7YTEzNDRwRX40VWRQTHsoPUEqNiVWWl8xOV88VSZe
SzBRNGBEWUJPd0pWNmIhUXQkUl91cXFPUFkKejItTTdxIVlHazApO3xNfXlUailUcEN0VE1MfGh5
e2hgJHk3VFBwUnVVNkJBR0V4N0lYR2FCaUYwZl91YXN9OWwpCno8JkwmT3gmZyQwMm96Qis3fkhy
VTAxcExSLWZ0cVU/Y29ZMkZNdFVNQ2piaXJ6entQXlQ7aE11ZmA5NTRWNkBPRQp6RF90WjhWMWs9
VU5kO2dBNUs9QHJxMHFYbmE0UkdMazA/YnFGYVl4MXRjKG1tJFBrOGJLdzRxR2tFbDM8MFRNcSkK
enskP0Y3YGVwcW05M3tWTntVO29TZXpeSXx1OF4pZjBgdUsqNiVeVlRoZ3txbHVSI2UwMnF9RWBO
Qnw1MTtKP0RjCnowQVVicnhxayUlQzthWGA2cGVDc3trfXE3ZlJHKjw/JjlWTyRBITx6OHxSRUow
MVU9IVEzfE82Rmxjdk5YZiomZgp6YTM/cVhkLTBEfmdITWxLazZaN1BtPyopdERlMUxxcGxmN0pB
WXJYRyF0TUhLU0FtY2xxe0lNR1E1XnphQSQ1SW4KekdLeiYxOSY2cU9ETW5eQWtudylyU15DSnRw
ZW9JVjtVPzd2a3s5QVB1aEoxemJ1d1VvMkxMYFNfKCh+Sns+c2RFCno3ayZscnxDWEErKHU+Ulla
eTVtcGd3OEQtaEpAdHRSbHg7VTUmJUw8TkRxNH1xeitXIWU9aXA0azM5OHNNO09BZQp6SElTTjU9
aCo/azlWUTxOSyhDYlFNSDF9QHdMbVNSJnxwcHZCfmxnb2IzNnZ0ZGk4fFJGbUB8dGRhQz5QNUpN
RE8KemJYcU05K0RnaV5XNl9Raj4mMFQqPEViYURNaVYzUjYrPEpvPjs2TWsxWHs9VU5JcVo7Mj9J
czU0QyZYRjglKW4lCno9eEV2X3g8cDR2VkBPeShXbik3RS1CJSomS2R6QlpOcU1mP1FudEckNy0o
SFIlM3I2Jj17OSY4NVlHLSM8VHloPgp6c1hRUWw8MVEhVEVZVTtWdmdYVWVyejlWRGw2WnRlIU5M
cSM2eGxEPnI8LTBuP2RIJCVSa3VHKj1BNmw1R1V+cWsKelVOakBSVDVDS05JRiVEa2w0YmZCSUJB
PlhNfjFBP1ElZmI3LVEoYC0ra2NgLTBIUk5ePSR6LXdhKjdhRXJvWCV2Cnp1fC01Y3s7KX4lSig/
ISFLKy1PUSEwVmFxT2U5SCE4c2djeHB+dj5LM3ZEKXNuYE9FTzJyJUVuIyt5XiZVWWdqUQp6YV9S
PmwjPXdgVE42TGdpQmoqJm1ffDs7VCltNVh4SWxGX3BrcU9xangrbF9ZSzFjZVNvR2FLMmBSRUx6
MzgkNDgKekxOeUVveUJ4LThTSVRPV15hO3dIJiZiVkF5QDBJKTIpME5HJUV6Qjx2eFlqRUNwM01m
PUF3I1BTI2ZlQiV5Ym13CnpUWXd5OC1hfno/M3pnaFU9fnoyNWtiMUBfOCsxK1dxNmt1WF9GNFdq
NFctVWJZTU54TV5+b09IPjIkck1lT0clVQp6fEM3dm0jPzZvZ2VlSCNaNnV9WDgpZ2Q+NjRDNGY/
RFQ0ekJyVUVYQmJDRiVYbzk7KyY9V2FwWkEwbnckc1ljZEAKemt8dDJSTSRGK04+cUYkZlkoZlg3
WV4hfjVSfi1NK0VtcWopK3gjSUxtMSg1UWwlX25wPyVYYlF0VGheIyYzYCMoCnpCR3s+Yz16SlUq
PHwoQ1VrUlhWTi18e1I9cG9sQitJRGpCSFA/ZTdPNXdWfnVrLVokcllrOFNyMCFuJUNGcm1rTgp6
MlVtanJBZkhicHg5Kjklby1ybDRVNFBiPGlhSFB+TTtZM24wVXtnXnZNMFp7TDNjNCp6QSVtPG1v
YE9Wa2RFMXkKeisqP3N6T007JWJTdXJBeEU8eF8jNlgpfHd5IVEqVTZ0JCN4dTM/eX0kaiRCX0p8
KzdFNUl1ODM9cFRJVUY7TzQ8Cno+QGRPR3o+IWlaN0lOcl5qITdsMmklLVpIPnFuPjVEO1o+SERu
Mmt5Rj5lcz9oZ2ZfX0Ikc089Qys8LShCeGx9Swp6UWl3QztBVXQ9fkZgaGtfczZhVjJqd1lBK1U1
c2t7b2YrYVlWT2o5VW1sIz91UGxwKnJQYXpFOGc5dnJkeis8YiYKejJBWWc+O3g9PzVLP25FcDVD
Z0JDOEZJYWxeYEg8eG1saCs/V01DTzxYO1BafWlnKn5sQkU+P31UN1VUfml8Z0lXCnpPUXltdVZr
SU9Ndl9zTD1meTwzJnIjTHNnLXQmJnJ1aXY5PmFOOXVtVTlGYElVPHFLSWgtR1czPEJGcCZDVUx3
Kwp6ZC1WfjMhLSskV2ope0RwezNRNj8yVHw+eT1QKFI9RDRsbmNEVDMkS2dKSnBpWUFsPyQ2Nndg
S0lUJj5+Y3Y4eFAKel53Yj5LJXtaa3dZcHkxP1UkPSYkRkIhPzEhJTg/WjBUd3tvMVgtPHorP0Aw
PGJyeGxYa3oxMUxAOHJEWXljUDN3CnomT1VlUEghT1R5bTJNMkhRU3cqITdsSX49QnlUNUF3LSta
QyNYQll+QztJfG40fkxSSGxQdkBAeGgkPipzREZFUQp6VHVHJGVBbElOOWx2OFN1cjd+NmlLe2Ba
RElXOz44NXNwWWpMP0deZTY+SFc4ekUyMkJzNWxRUmtYdFA2MT9GOTQKelFzflJgP3lXNHBTJF9S
OUAteWZQNnEwKz9tJD14eCE/c1lmTHhCViRPPWhgZ1MhUzdMJVJjSXlgMmUhcTd0eSgjCno3bzhZ
ZzlVWiRaSWA8QWNqVTUkI1g+V2V8bytzJm0qTS0rRmk5TnxDaTcrWClQKldjQEt0R1VQPXYpWnYy
UlUjJAp6eiNUPiRqc15zYVZ6QnZHJmtTdDNoM00oYmFvQUY2UmZKRkZwfkR9SU9WVWU7T3NQekBP
cVpHVG5VWTBZIzRlfTAKenFfKEhkcnB9QURtZklPcXkmKkI0SEoqUUM0b1hUez4oc0xXbVBKV3M2
Xz4yJDMtcmszanVsQjRUUmtyYHc5VUN5CnopX3VWJkxDXiN1VXR3Q0k+IXw/SzVIYnw5YyZXWGZD
OE0yTG9TOW4odHVxUHVTcE55fCopbUUjdD5KbEFXTDZ6Swp6MUQtUXdiKihWSXNFMFNsSTdnflEh
c19qdiRXNTdQNlZCM3piaFFNdm5EKDJ4IX5OcldtUX5udEVWYmpEOWo5b0sKelNhb1o1PUAlb1Q3
Yj01S0JeeihGYFE+PTA5cT5efU07Uyg/R21KNDxAVVFhZzNNfSlwOFN4bUE4YWtJUmxeITtKCnpa
YzI0RHYrezJaYihwcCk+d1kjaV9vbGMmVjhXd3IpbjYqcnRhT1pfYGNeZXxtdThwIWkxUD9jQ0xR
SiNSenRIbAp6alBjO0U0KXp+N3g0YllfKn1XTShPfiZRUl57UClUZTxJemVvMlVEMWNNY1ViO3w2
MkR6JEo5Z292Qkl8YmlBT28KelY2PXNvWWdXSmhYd3RPdEA/cSFBcF9xQShDZy1OSFZkO15SJHxG
OG40Y2Q1VVJPYGUxI0Nhd3htM2VzYiVpSG17CnpVc2ZkU0E9VnclXkpUOGZNOTlSKlQmVlNeRSVG
IUlobzJDZ2NwUSN4NHtnako0anNXckJ1SExSRUt1Zj5zRWA8dAp6JHhzUFhvRntjQlg+MV5Ec0pf
UTApTjg/RStSczN3YUlFTU5hKVV5UStVKCs/K2EqRE0oSEVSNi1qKGBaY2ZDQUcKejFRNXpmaWNR
dDN2MkRGPSg1TSYmNEYqcUBjNClLbTBROURedVgzYG9NelNIbFFRM0Aydn5lYHhuS1QwJV5GPzB7
Cno0fEtzXkAwZG98XnZZTXQ9YH0kUyg/P30xcFY0bi0zcCVoUmFUWDBtY1goTnUqeykyYG9rbT52
UCV4YG12U2FiaQp6YkN6VCV1eyFLMVZaTWNMSzQjTndBOSk7NGt7dFh4eEpOMHUkdD1RM3R3aW1q
K0I2WU57PmBOT1ltMlIqblN6SUwKejR8OH0jM1ZJNTw/MVJocSVsajA3QFdAZz1HWkFVNzhsZ3Rm
OUZTdHdOQmU7X3tSYFEwSkBKfntaYm1sTWp+eyV+Cnp7NmpVR0JNb0BwaF5veHRefCZuKm5mWHo+
Xlc1Q2RPek1uRiRDZFcmX01eTEVIZSNPY3d6VkdMTFhSODcpKk5ZeQp6TGszR3NOOGpEQEc7NjR1
YGxFSV4pKjBaZUk8bkVCKGgtQVhvXlhqQUA3STIrVTBRMnRTR0dSYXFWUF5aZCNYbUQKeitsMG9j
KzNCTHc+WD1QZ3ZCUExHeUxyemFoPm93M1V0eiM2M0Nqfmt7PGphdEkoTEl0WXd+dlVqeXh3bCRV
VlB8CnpFbW16Q3JYWTtXTT9SSEluaWJEPlplPyMoUk5yMnlIR3JHa3Y4MSgrd1Q+K3BlKlVeZntp
T3FSQWIlLSREVHBhSAp6YipeVH53Xy1LQGJMOzMoLUdwO01BN0tufUdub3U0SjxJIW13bW1KIVZ0
TUNnXz9Ne3tqbzlWdnJLJnBIMEUrO24KelJuXlVTRUhuZ34qWkx2V2VMJCp6Mj1XfkFRMmF3b0xk
JmJeSkZUZGIkditmKkZCQzBtaVI4VDdDeX1AK3glc3RxCnpwS1UjWmBvQFROcTxgVGUqR2NCPytm
VC1rIyN3YDMxfCMwKWlyZjJZYGM1bmNfTjhDeHo5SngtY0l2a2l5Xz1GKwp6X1ImQFk4e2Q4TE50
JEcpPWlNIVptWE9WOzIqJEFNdz1wdFI8dWtxTUM4Wl9mOVlNKTIle1NrbjNyMV4+amBmcF4Kelkp
ZDR+cjJOelVZZ1IpflZnXn5PR2FneTIrX2hoUHYraTg4PXZzRjJYdTl9OEV2ZihmcTFsbnBfLT5X
fD8xUiZFCnpYNXkkYmhpaWhoek5oQTJxITwwaVBrUDctWHc3OWllSSFvb1BPTWdAdiQtZj95Y3Zi
RSNVfSYlTHBCOTlKMWI5egp6RVV7KGJ3eX5qPWliQUpKMlFPaWJxfVQjMXBHdnZQNjB7aEtqWHNE
VF5MZSQ/eXdNU3orJjNMayRNZnkmVVEkbXsKej0zVVJEOGUycXIofXJXdWEqQ3xfYDE0eEghQCp0
V2RGekZsSzJRN2dYWmV4aU1ZWGNLS19eKjlSeShjbml6fjJ3CnpTVzskO3Rmd0V2QHM8fi12KDRQ
WlVod3dPPz5wWV8rZmUtZVIjK1M/e0E8JlQ/PUo4JVRublA2c0hneVVMdDVpfAp6N1dgaGA/M1dK
c0tibDxkJm8xfT52OE41dUh3a0Nmend8OXB2WW9RSnlZS1VXSygxbTloTm9LTj9adlVZQD5HKz0K
emEhMDF1QkxmV2JXcj5OX29odXlPbiFReTF5IVhDRjcxZ1RBenBvSj56dGAqMkZpM1chUT1uend4
eTtUalF8PXx0Cnp5YHg7UURWMW89WTI9V0cjUUpUWU9kTyEqR2NSV2N5LX16c0lsN24pWSFyOEVm
ND1wbCRMZUdLXkBHSyRPdTU9agp6e0xjLWY2U30oMy0mTm8lSWpKKnxqZX4pMWJGRGU4LSR1UC09
MHxHKXg1bWg3NGEpbjBsTlhlTiR7ZmJaQmhHfDIKenp9UEM1aUsxOVNaKnFfeVhWPWUpaHNLMDVq
XyEqPTZTMil0Qzhfdn1rYCZIKWskVTtQM0tRQyFecXxxSWhiMXQ3Cno+RE49PFZSc3g8UHdsPjw9
PSgxMDluPjNBbkc0WT4rYTMqYVohN0crKCZBNDJyY1FeeWk4Tz02VCQ/SUZhdU9RJgp6UXRWQkxD
ZlAqRVhiO1BWbUQwRUxtP2J8RkZOa1pRSFJ9X3lQX3taRmBgb0ppYmxzJW12ZE1+fCgteS17bWM8
bl8Kei1RcjY9WUVsZ29CXiVgbnNCbCNzUUtAdkM/cVotKDJaYn5gUEY8TjVNaTVJfVhJXn1UTDkj
eDdDdVFLdGg0KmM/Cnp0OW40ckUmQWl4V1hpREReKlF4KlhsYjZFYU52bmFNT2l3RlZjUkRXYzB0
NHxpSGF2YVEoKy0xPk4yRlBjVCF4Xgp6NCFYX1huKWNFPmxSQVgpK05mX0oqNTZkRWIja01yX1Bi
UFdeKj1CU1lRTEFGTzRNaXo9IW8mfGZkIT9OUHg4Xl8KekdZS0h7K24/VWw7ZkFWM2VsX08wQGFW
aks/KXxBIUc+RkMxdFNoKC1vNllNTGxscXxSTCNxNDMpcFdDQjEhVTxOCnpHdFk5flcoNzhGO3Ri
diR2Zjs+Ty1LPE0lT3BfbF5yfU5XMFZqZzVORn5pfCs4QmRSZmBBNHpPTXlQcEtjeT5qbAp6PmMz
anI0JEJPQUdXYj9xalBQPi1zRT1ZaCFyUUtsNWpvVV9HZGM1R297Jlp8OElePzltaGlgbHg3X0hz
eWlJenUKeld+KmdGeH44fFpZPkFpaUBWZHs4eGlzeERMblcoV2F+MTJidDNQKjhDSzI8IzJeOTYt
KmRlMik0fHp3Mj1+bnEqCnp7LV9Vd25MYkk8UWc9NUhCZF4lP0s3VEk0b0d0bFF6YDt7Uz1jSUpz
WiVkIUBgaFpzNntaYDcxYCRaYHhtIz5TZwp6eV8jWmMzPCRtNXhFPi0pZUpXVFo7THF6MU9penxj
N0VFTH1peFg3MCgzbnRYKTNCJkt0blB+US1RXkh3Yk9VWk4Kel5iSGkzUnQhQmhsO2xNdnZwdCZM
cUIrcF45QE9YQTNjbXImcERgPFNeMkJ6ZnE0Rnh3SkcwIWA/bmlGKGhGXl8oCnpPa29ubDZETi1l
eH10XzUjTV5DI0lueHtWKiVPRnk+Z3lFRj54bn1KO1VVQkg4bU4+dGQrQGZ8TTF2QkRIOUdHNgp6
bW4lO3daanNWYmVEUXlEenVHZGJBJDZoYT9EaUR6QUA4aVg/QTJOPmBsMTA/c197RG5wWU1rJHR8
VzM5ZV5XSykKenJJfHtkUHd2Zk5xc1ZwdjdqZkA5Mn5EMjVFN3opMCstayNXb3AwYWh6OGgrSFlU
Pm8jemthOGNOcntpNHIpYD1RCno2NiFmaXluYTYyU0hieWwqSVVgR2dXN0FhKXFWRlFfRytgWiQx
UCtsajNKdz4ld0FEOytnJTNCblJfUDFVOV4oewp6X1pSTWNWfCR3RXJ+ZTtpP0g4MjsyMDxrTUVM
bko+O2tVWj5nUTVBZXVIb0RBVTtYfUhncGI+UVEjZzJUI3ZNbGsKejtrWGJEZHV1bHdYWTtkNDsr
Y3p8K3okQmY8anhPXmlmfDB2MzEkMChPTEZAfkF7aWpqWnVUZV9mRGwrdl56WUNBCnpzPmErbTta
XntjRjJFMX4xX14/TjE7cWZgP3I9MjUyWXtvQXpWbDY5N0Bqe1R7bClva0Rfc2BgZmd2Q1c3JGh0
TAp6NSpDSVNnRnN4ayZ0SUI8XkIyYyZTaTQpe18ofHsmZW8wNlhNQHdSR1lmezJmNld8fXpsRiZf
Kl8xfU8wPCo2NE0KelgrdyEpdzxJWStlO3hwRkYpPE1fZkRQY01PaVRwLSRBTGNwRjI3X1RRMytn
VHt3V2chTDRNYzZ0XmVQOEFXYHcoCnpXbnZQekVkSkE7MnQqUk17Q348bzt0LXNsfEJee1VhTTFh
O08hN0ItVmp6KjxvJnwkYFV5QklqX2M9cilNMUojNAp6NDF+d1lLaiMkI2l+WTcxRjx+JXtyMjNi
aEZ5d0RCekBYdndQRHUyM0A+JHAzMmJWV1Y5NENpRDtaWFhNb0skbk0KekxFI3wjb3RqZnEhaCFh
TjcxQno/VEhGUT5sQ1N8R0FZdmQ8dXI8TzgwayNwYmhDbVEtWWVeWih8NksqZ1JOfG9FCldoUVVH
ZEl9cFN+QnFTKztLeExROzxeS1EhTzc/NjMKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdlc2V0L05h
dmlnYXRpb25CYXJMb2NrTWluaUAzeC5wZGYgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0
cy9Mb2NrTWluaS5pbWFnZXNldC9OYXZpZ2F0aW9uQmFyTG9ja01pbmlAM3gucGRmCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjc5YjI1MDExMzRhYjllMjEyZmI4YjI2N2ZmNmVmY2U1MmRhZTc5ODIKR0lUIGJpbmFyeSBw
YXRjaApsaXRlcmFsIDU4ODkKemNtYnRZMlVKcl93NTE5Skx7eTN0QXRJcmQxUUgtM3kqRVJianRQ
VmchNFNGO1FIbkhhQjchMVAxUTlfTGwte0lFCno2WF95Tk01PVZAJFdLdC1eRjd+TWZCcDZFTl5V
dUc/IyFJQ19ubWNTZ1k7Qz9MP0VJUDA4cW8hPmVQSkIrVC1eUAp6TyNtbm00OCkrRTBUKFg8I2RP
Zl80bWR8M2o5QFlWaW01cmQ7P1AqYSlmSV9EdER0USRjNChsUzlLYUtZTUkrcSsKenpOQShMaXB+
dlN5MkBROVB0b1RDdVV3bnFDRnw4V2NtK3FOYkhsR1g0JHt4X1U0MFh4cHRrQ202XkMhOF53Q2dn
Cnp1VTdlX0NqfnZmampUVlprQmArLTNYWkN0PDdZajY+b1k3MllTSiNNUjdIMm4kUS0+fjc2c340
WGUzQVUmcnYodgp6X1F6e3olbklIcVo3VjleTkhzSUw2UE1DKDtyZUZ4aikhQU0qfFEybz8mLV5V
UE9MNSM7dSV7PUBNVnsrYWFZfi0KejRZeTBvSlpVT1FNa1Z1Q25hbn0yREhuWlRvbjVTcFQ0O1ch
eCl8Ty1RJSlhYktRT0UjYSgjVmg1Wnx1ckVMQTVkCnp2cDRWNF5xdDBMSm9fOUUoX1pDLUdtWHUx
X31VdXh7ZD9YVmcqd3MjbXZHc041QE9QZE1KSkw7K2RjJlpafjtjOAp6TkBpZilFfE9Majw1eiZJ
PVAzQj9YKkdaKS1ORyFze1dJUlNDZ1VHZip6QEQtKXx9YVJtVE12a2pEIyN9IVleajkKemF2ZllO
PmxvUG4mZzs5fkd7ckxkRSpifHd5VzlPckRkQ1FZMVRwPUB0QXd+VHY1fE55e3VAWH1lamFGYG0+
JHlNCnpAUWcqZjxBNCVCMFcmfipWIVdgblhpdVF6UGxHYlg5WTwqUTFRSjBlQWdZVkRiMyFVJWUx
UjVWZiZuNTg2cW1GRAp6NUZxX0UzaH1LWUQoR1Bgd3VXZE4oMUl8T2lXPC1nRDVpe1kjYjZDUmto
Vytia3RAb2M1VE1qeXd7bWhvRjtmSn0KejhFdU9AWSpCTkEwSHVHbXtNSXxzYmt6R1ZxUU1Xbnsq
ITI4S2ZecmdTSXAyMGcqeXlmNFRFKGZhRlRFKWRIXjZtCnpGe1EoWkw/QUZBQGg+MyhsbUhXXmAq
JClSIzkjXjB0Nzk9PDkpfmtEMWQxNzlrP3gpek5KOUUte1JxSnIwd0VCaAp6N2VHdUNoe0pqalFt
WU5MTjRrMHY4VUdLYDNtSCl4QGYqRXxLYEFGS0RRI2BSPWN5WE5sNm96cVlxZTF4QXxWJGsKeiQk
YCpmSnJZNE5FbntqYm53ZXcpSkhaKGw3SXJMJTw8XnRxajFkVjt4TTtmQyFDc3wwI147aXs9Tkwj
RFhQQ0dECnpXQkBUUSM4Z1Njai1XWT07VjY2bUgqRWdLN3hGdWVlbjl+RiNocHQ4NXtXNGlLWGBZ
LSpBNWdATDM9eWRxN0JyUQp6e2BZa3ReYDRLQjtTaDZKU0N2JU5gJX5PTiZebnR4NGUqMUUxYH55
VHhhSksjdmR+fiZaeHU+NCMqK2RqYzFFP04Kej5TNWZycypKUl5abFZUZ1J2R2t+Pmh4N3FyJChZ
JlhxTkl9WW9qVXEmMVBkbSg8SzgjNG9tb2ZhdVU3MG4tcCh4CnpybGRFWj44Nlp9XkwzVnxQUGE4
fGxBVTI3cjhnejVvdl5wM1B+VERePilvcjhPLV9FUShOd2d0RDA7KUxWcHpDRgp6a0pxI1JBVFcr
d059MTt2MnwlP15eNVMofm1NT0JraEREOTY7cytHKCkpTks5TG19ZUs9YDxQN3hoRVQ1eE5oV3AK
ejZ7PXt4cFR6cW1vejFNMXdHI1Ikc3pQcngxdkhUdk1VaWZLQTJqWmVkNXNFUFd1JSF4R1BUTHkp
M2Z6WmhYbC0rCnpZfH1vP285LUdldUZBLXw3YHtxSUxWZFJaVVd1aVQrPWU/b0JKc18zXyEyPTh1
OEdQJUlkST07WU5vfTBYUWp3Kwp6OHdDLSVUZHpCRCtnR1AreV9vSX1uQn5SYCVzb3w3a2VPU3VX
OEFsVmomSS0wYG9CN0UqOT90dVVOX3ZBWlNtaFYKelVnMkhuZFpaWmokWlg3WTtrajU5R3N5O3pg
R2QxWClyck89I2NzekdyWTQ+dm1WaEx5bHFBS1k1NyMoRFU5SUNBCnpLR1g1aE1sTE00ZFhsRU9o
emlYfT9XV3p0eXNIVT9aemlgYj93WkpDdiZhWFgqSlA0RnQ0P0wtV05XTG14NnshbAp6Yj1tRTJH
OHwwUyFrcyE9PnhDYnQpdn5PRiVveXY+K0AlUSljZFE3eDctU2tOWTZsMW8/MylOWUJnc2RfZE9n
KkoKeihiM0M+MVJueXxFN2hjRyFOYCYqcEN7KldtLWk+YiZzIzcrMDQ+IyhqYD92ZkpZJlREZUB5
UmkoT08yaFB2fEllCno4LUNyT2k/UEZrR0s1KCgkQVZxISRXRnlsO1R7OF5MODQkWDtWWntFWmIq
Mkxqey1AOFopaC0oLXk7eypBYWhjbgp6YyU+KmVOQ0hyVjQzY2BeYWBxdFU0ZjIwYWFwfFV7JDF6
S2ElZUJXblh6NmFLRCohXzR3ODVtS0t+Ql4rbWw+RWMKejZyYVUxWFBybl4+U3RnI3J9azQ7KVJT
ZjtaJlZKQ1dyJGJVZSRWXiNqTnEraj5CQFN0PipzTjc8PHdUVWJ7PG9gCnoyU1NoU2xqNEk8LVk0
cnA5dj51bWI3UURiaEojeERaUUhudEZWak9SbWZHUDd0eHskPWBqV1JTNllSPyohWFkrcQp6NlF+
dGhzTDh3NE9zVXlkUkZxOyhjfVAjNWJCV3s1QkZqfXhpS1drQ0ZOQFpReVpWTHZTWGVzcHt1JDti
KjJ5cmwKenMwb3dfdkxCQGQ/ej9ZJC0kYU15dEU0QEhNOX11bEMjYiVjKmB8RVk8LUtWblBkPG5p
WCl3N0diSCQ9Qz1fVUNmCnphelRjSnpQWG41R2wkM1oobGVJZz95diVpa2BuX182KnVQVms1Qk5m
XypNI3pHQWBYYlFSbGdneF59Sl81WGNlOAp6SVRwaiFSS3BpYlZAfjA2XlRmRyhLcHN+ZkJMKzY9
WTNsdnBsVyhFPUt+RTdsP29iQjUyMX1IeyVSN1VMbTZ7eTkKem1sN0I/THdRJlhjbSRHKmdOIXR0
eHZoOSpkOF5KUHZ8Z31OJERUMSR1dHBUe3F5Y1J9Qyp0TXg/KCp8OEJENlNFCnptNCtfQ3dhT0l5
NiNTSCo3I3g0PC1mUX5vZXREYG5xRGxwP2clP3Yja1ZzbGZucnpLYSRjdUFIb0tGZT5BP14rJgp6
YDZTdGhydCNVRjMpSzNOeTtuLTZVI0MhSzc/ZkZQbENDeVV7OGx6WlEjQjxjNXBeNHRmKGwwdzNX
UD58UC1UMmoKemU5MCs5dUVLMkwyaGZ2cVkpVTsoezYzVHg+bFI9NWkyZXZadDFnd2IrbWtUY3hY
dnxHd044VHVwKUlFUHIjUG5BCnpyaSRKZjlENTdDdkwjYF9gWG5rTHN2O184NGY/Z0xZcUQhdEBg
YVEyTDhVPEF3eEdNPHdNNmJqYCRXPmptfWZmMQp6bV9FazcpTXN3YjVXUWUkVVQzODlrbj9Welhr
Syh6UE02UTR1MmRXNyFJITxUeHgoXnJ8SSFgakBBWSVDYXx2dUkKell9SVY2WXtxTyEmP1hwYmlo
RHxIJTJkaVV3N0o7UG9jMSteYElQemVZaW4+fkA/eUpASipYJVdvfU9SdUVrfnFWCnpFXjghREhz
QUpYaypQIUdySn5OJFJgSEAxUWk+JihDNUFwcTJ5SFBfRmBGMHFPWCtnQFk1OGVjSFI/NE1mJHdW
SAp6MTN6QWdSRDRrUEcoOTR7Mktmaz9JYm5QTFN6S1BYVjVXSmRPcH48am8yd0JrYSs0T2toMmcy
MUB0Vj1DeGB1PGoKenFlZlRDeU5iSyRUKXNOO0xpMW8xJV44S0MlKj52dl4qQEghVXU/T1M+R3hu
O2gqbWJ6RyV9VFdneE47O28zTnFDCnp5ZkJ4VWZFbEghVGslfXNQV3tKKjZjO083ZH4+TXRxLXt9
V19RPT1RYE1EeHYtWmtJd0dBVU10QmdfPy1EIU1sNAp6SEBKNnNjT2dgPVZaTEVpXnFZZT9afmxz
NGVCYTZXblRnV1FtOGVON3o1dT9MSihAWFZzYi14NW95UipmWTNXIyYKelMkYWp6VjdzcVFseVlG
Pk1EMFlRWTx4WV5keVIoXkMoWSt+K0kwdF9yQGI1ODhiJF9YaHhTVyVnLSZSbmgqT1ZqCnp6TUdS
VSZES1MwZUxMeUo8KyNmKU81IShCT1VfRjxhdT8qbjwpWTxJUzlAM0k7bDtMKWAoKnB4SjBvaVkl
aE5qcAp6eTlmJHRpc3YqbGZHaTMlM0tKP2hUNSswRmx3SzZ8Yik8Q19IQFU8PCp6ajJQR0x0Rm9E
U0wtcHE9Q157RzN8SnMKejVmejMkPVV3bkNIVEojaz5xOC1lUWRMb0lzTCtVTWBPdTtzOE9eTkM/
NCNESS1sKkVBdUIjZkxueHZ8b1dHWll7CnpeaEdWb0pQTWRDJWdue2o2dXskKyZFNVBrcTgmRTVA
RUlfPENATnVqdVZ+PlRfVnJZNVRVU0E+T2BYfFFLfjhxQQp6dnR0WWc7aXVvYFBVI2VeK20haUNR
NEF6aGd6ZCZwSHdqSGd1VUt1Tl91P3AkZj9veDl0MFhtOGgxK1R0WGZrT3wKemt8N2pkazkpbmNT
cT1KPGRwR3VPcmhyNmxjVyNHTWFQZH1nan1pek9RN0J8M0E8SWBLUnU5YnRFMEAxPj5SVThFCnpv
dVNZanJeRH1RVz95bXQmSlVnTThje3FDSykxfGppPTFETEk7Zi01LXMhaVd7SlE9bjwlQGdVKzE5
bnotUm0lVwp6bjIobzN3ZkIkRXkqaypVM3c/ZV9lfVV6MiooRCNWeTdHemQpJD1pS0tzU3d7PHU8
anBYZipxbmQmRnEzeyR1XloKej5NTT4jT0pBRm0lOVFqY3N6Zj8xPXZeQ0tuT3doKCpjYXRINDx+
VjNjWWpCPGVVQTh5MERYI3xBMlkqVy1YM1krCnoyPnc+fVdhRylNJiR1X1cmIT5edUAtQD9CbCRy
ST1gK3srK3tIZ1pVak1iOGclTH47ZU5RPGppUEJfS2IjVDFKXwp6ZU8wQ1AhZGJtOVhEKHxsaCVG
fU5ZdD52cCQreSZ4JkJGc1ZWe1U7eHF8eE0hUkMxaCo5Rj43Qm58ZHohaWYpYV8KelBaUTdVeVhH
X0klNC18flozMCFrWHteTGBzZlZhUFg/YDJ5KWhFK0NBb1chMHVIQFYzX0A8WVdTRFB7VzxLTEE3
CnpQVXA/KU5vMUM3UUFuU0l1WTdMYTsjenR7Y1g3eHMwez84NVokRUEwJjNwMypeWXMydHtvIXgy
QiVLMHUwPiktPAp6XnJXOGNKUyFzcTtOYVNOKUpBZWooS2BxMnVEREw3aFkjUnNLRyM+M25uRzQw
ISYkO0VUKms/ajdrfk1YVDJOUnAKeis3XmBiIWd7MyluPiQ+IXlKd3R+PVRIRSpsRUo2cXRHPFFx
TkI0NzlKaTJHSWFOVE00Xl4jbEZ0Vmh4UXl+K0dMCnopcyo8QDlqamZqKFQjSGEpU1pKPWNKanok
SkJ5OyMwU0RIZldNfWNDYGB1S3pDIz5iJHtpWExFX2lZeUBHeHpgcQp6IUFIO0peWXtDPDJKQ2FJ
KSl5V1JUPEkjaD9HT2BNc3d7U3B4Y3ZmQVB1WjIqQzhTb1lIbTlEaS1XOWJTSFJBdHIKenk+WW9N
RHllNU9xKDxQIW82V0BUeXRMfit5SHlVVClgbiU1PyloWVN0PGs1fEBTWGsqd2BzZVhGRmlnXk9X
OFJRCnpxan1aeDgkdFcmeVNENGlha0M0RUVrdDVrdzdrelhuIVF6RFVOYCUlVzFHUWl5TUk9Xmho
LT9Tejc+fipoI3dXYgp6I08oI3FNJWFVQkRsMDE/SjwpYysheTQ4QVhtI1dSYEglZjhWSGE+JUBj
JXoqKzdNJWwrdzhfP2VrOHpLMFRyRCsKekFOeGVJbCZmJDg3MjBvQE14R1I+U1JAcD91KVB9VVZe
JUNtTlUmPlA7T1clKUsjTGM9YDhoSkxUMnJ5SU5gKDY2CnoybWlXJHMkR0x6SnJrZEtaaHBDOVVx
JHxQKXNodk4xVXBfYz1MaEpuWWlzKnMrbkRKeil7TE9uTj52NUJPY3xoaAp6TnpjfSZ0RG19VS1f
PjUmbzt9QndyT3poKClJPkpFcXd+fnRDODJgLThWbVZZMW8kJUZxVStMU09jfWN7UnZXWkIKekxS
RD4yK3pUMiV0ckFxXkpXP0VmRVZLXjZSV2VUJiRxfWx7TCVvKyNKMCUkITltK0RpMXlmSnhZSjNj
KjcweWRrCnpJX1hSNGQrbFlJKnlneDV5PFJPTXA4WnA9az9LMFBPVFNpMT1VTEB8dmFtOUJLZEk2
ekRaUWUjO1VLUztYUHN4OAp6eXkjeG43emo1fEtCQlBKcnd4YVh0S1dENWRtVy1mSEM4YSgmOVE4
JkAqXzJSP2l6KSFsKmNuVyZXQlc/VHMzQSsKelM+Oz0paEtZTWM8MFV9e097VlB9dmtPKitgRGdx
IVckTU5YbVd5WEZ3PjFvKUdOfWFMKiZBa1VHX3UlT0VtY2tnCnpOZXA/N2JeY2pxY3h9I2xhXkoo
I2xgUmg2ajZsNHJqQylmX2ZVc0EhbllBQG9TJUxOMnBuWiN5cUVyc2ttaUgzZQp6cU50YkJCQGd7
NCFhXjNiPFMwMz5DYzhoXz96RGJtYEdHIUxXKE9mP3VlRlI/ZFJATlEmWDErdD5RS0FYZCZlfVcK
el49N2dMUy1rX1dFIXdYZTUlaSNWVCE8bHVPJDI0IWBkSFYxVXRLZmV2cExgQ2QjOVlUWmNQK28h
NWx0VDlsPUZpCno4R15waURSKDtGcmcrYGBtVEh4K2dmMlgwPHg/ISFzS2xqRHt6ITEwWUF8Qm5G
I1hJVCt4V1lLJCgrPS09c1JnXwp6PmAzR3JtVkAwdjtvK3xBQXYlRXRmZW9saz9kS35GZ0tgNXQl
bUwrMDtuJj1PVEVrcyF3X0REUmtVN2BmV14pc34KenZRSFZvVz55ZVpUXzdBSSo+dGd1YiZYUURZ
UEQlaHcoM0orKFZRVWYmSVNLMyowTHd8bWBnY0w4X1BLZEpARVdOCnpYPUxuTTdWNE52YkxVNEBK
P05falk/cTRyYkI2dHl0JkF4Vz1RPXc8STdRYC0lQUJ2Xik/NylLMD1GTnR4Rngwcgp6e0ZyPEhx
ejdjeypLNGNGdlh6JT8hRm9ZckAjTz9wZVBIUDJgbFMkZ3gmelRGNXhnS0NsJHM9JEIkfmkmNilV
UGAKenFkbGdAckVPRVhRXyZGe3UpIW5GO3Q1KTE/Ji1AZkVFJXxPM0t6c0Fhb3c5LXJRZz1+Pm8q
b3l5P3Fnc15UbiNyCnopdSpmRDBwPnt3YzcyTEohKXc9YitWcnpvdzxTV0ZkfkUrZE5rYDxNNiF9
XzxZM0FnelFecHUtbDxvcUorZnU/bgp6PyhMOTRNcn07O3E3ITd6WU9HRUwlbyFEWD5lSmJXRz95
cSgoMHN6KnlIIz1KTDAhc0IkTUxsWiE1elVWTiU/Y3QKemUyalUwaCFwY09sdSpGaTNCRSpYSWxR
R05gYG5qT2daRXlJNVZNRkA1cUMreXRNTHMhaDcwRypsUmN9JHNAKlBNCno/N1NaOGN3cG5aaUM/
PGYlJSZwNSt9JCRDREhaQjdNWlI8QEg5KlBqZSNhYTYpJFF1QHVlMVUtcjhsZTdgQTJRIQp6T1Uk
S0tJTjV6ODlvSVRjPUY+SlVAO2dxOTJpfV53YEdmMG0rQk1fPFNre2lUOTAqdG57QDBSNFIydSRS
Kk0zU2cKemYzMGk4WlRab0R8OEs+fF5TP0Q1cUIhRzQoMThlSWhfO2lSQ3FjOSE/KF8rKEJ2SEVm
Q0dKM2VTOWdCKXNFb3VSCnpUYD4rbiNVIyVvNzBDcFJePm82eDFIfllzKEJJIWJUODtVMmsrd2pE
QTx6XkUwZ0ZQIU1QV2RGRkMtU3s0PHpWQgp6aGt9ellQVDtSV2szPTdTbD8mb3ZoIWpgfjB2NEE1
T01AbE4hQyplWj97Q2xGO3c5KUNjMyFwdz1ASWYlVT1tWCUKekQyX1A3b0slUj8xVk9lc1QtfGpz
Y0UzT1c5alB4Q1o0ViZHVFd8cFF1TENGdmdHcz1FX1B9MkBuNzk8N1p7aClUCnpLZUI8TFAocyVL
WEBofCF7YDNRajZWbSVuS1FMNkIwTn1yREZlbX4zZjcmRlpCbmp5TSgqfkI1QVA3R0h2Y1YrPwp6
VmdCMCZCVmhQWDg7dFB5WnlPPVN8MW1EfjQ/aFZoXyNkJUI7WmxGaDFxTENlezlvZmpyMm9oUE9x
YEo2eng7NG0KenE/MFFlZCNFY0xJezZjRGdBK3RLNDJIbmNVK1NjJHlGRz9MKitWY2pSUzJaTEQy
fXY0Tn18dzZHKC1Ya3d9VlE7Cm9wbXM8aUQmakJ7OTFSQ2MlS2BwKG0hRzhmIzFTWllOQ1gxeDtz
Nmp4NmA9PEJBMmkwfVNeeGs1CgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329876</attachid>
            <date>2017-12-19 19:23:57 -0800</date>
            <delta_ts>2017-12-19 20:00:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181006-20171219192356.patch</filename>
            <type>text/plain</type>
            <size>43560</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MDczCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Q
QUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBjYmNlMDdh
YzAwNWI2MmYxM2NjYjAzMmZiNjUyNTE4ZDM3ODNkNzY1Li5iYjRjNTc1Y2Y0MWZmZGIwNzVjYjgz
NTAzMTI4YzhhZTVhYjg2NGM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAor
MjAxNy0xMi0xOSAgSmVyZW15IEpvbmVzICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAg
RWxlbWVudCBmdWxsc2NyZWVuIGludGVyZmFjZSBzaG91bGQgZGlzcGxheSB0aGUgbG9jYXRpb24K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTAwNgor
ICAgICAgICByZGFyOi8vcHJvYmxlbS8zNjE0MzE3NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBpT1MgYXZhaWxhYmlsaXR5IGNoZWNrLgorCisg
ICAgICAgICogcGFsL3NwaS9jb2NvYS9MaW5rUHJlc2VudGF0aW9uU1BJLmg6CisKIDIwMTctMTIt
MTQgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBGaXggMzIt
Yml0IGJ1aWxkOiBFbmFibGUgLVdzdHJpY3QtcHJvdG90eXBlcyBmb3IgV2ViS2l0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmlu
ZGV4IGFmYmIyZTI4YWFkMWU3ZTRmMjBlNDZjYWYyMTE4NDg2ZDA4NGQ5OGUuLmE0NGZiMWJlZDM4
OTg4YzJmMTQ0MmMxZGU1MjFhNDVkY2Q0ZDA5NGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDMgQEAK
KzIwMTctMTItMTkgIEplcmVteSBKb25lcyAgPGplcmVteWpAYXBwbGUuY29tPgorCisgICAgICAg
IEVsZW1lbnQgZnVsbHNjcmVlbiBpbnRlcmZhY2Ugc2hvdWxkIGRpc3BsYXkgdGhlIGxvY2F0aW9u
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODEwMDYK
KyAgICAgICAgcmRhcjovL3Byb2JsZW0vMzYxNDMxNzYKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTaG93IGEgc2hvcnQgdXNlciB2aXNpYmxlIGxvY2F0
aW9uIHN0cmluZyB3aXRoIGEgbG9jayBpZiBzZWN1cmUgYW5kIGdyZWVuIHdoZW4gdHJ1c3RlZC4K
KworICAgICAgICBJbmNsdWRlcyBvdGhlciBpbnRlcmZhY2UgY2xlYW51cCBhbmQgdHdlYWtzLgor
CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVySU9T
Lm1tOgorICAgICAgICAoLVtfV0tGdWxsU2NyZWVuVmlld0NvbnRyb2xsZXIgdmlld1dpbGxUcmFu
c2l0aW9uVG9TaXplOndpdGhUcmFuc2l0aW9uQ29vcmRpbmF0b3I6XSk6CisgICAgICAgICgtW19X
S0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciB2aXN1YWxFZmZlY3RWaWV3V2l0aEZyYW1lOl0pOgor
ICAgICAgICAobWlycm9yRWRnZUluc2V0cyk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3
Q29udHJvbGxlciBfdXBkYXRlTGF5b3V0TWFyZ2luc10pOgorICAgICAgICAoLVtfV0tGdWxsU2Ny
ZWVuVmlld0NvbnRyb2xsZXIgdmlld0RpZExheW91dFN1YnZpZXdzXSk6CisgICAgICAgICgtW19X
S0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciBzZXRMb2NhdGlvbjpzZWN1cmU6dHJ1c3RlZE5hbWU6
dHJ1c3RlZFNpdGU6XSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciBj
cmVhdGVTdWJ2aWV3c10pOgorICAgICAgICAoLVtfV0tGdWxsU2NyZWVuVmlld0NvbnRyb2xsZXIg
bG9hZFZpZXddKToKKyAgICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHZpZXdE
aWRBcHBlYXI6XSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciBoaWRl
Q2FuY2VsQnV0dG9uXSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciBz
aG93Q2FuY2VsQnV0dG9uOl0pOgorICAgICAgICAoLVtfV0tGdWxsc2NyZWVuUm9vdFZpZXdDb250
cm9sbGVyIHNldFNob3dzU3RhdHVzQmFyOl0pOgorICAgICAgICAoLVtfV0tGdWxsc2NyZWVuUm9v
dFZpZXdDb250cm9sbGVyIHByZWZlcnNTdGF0dXNCYXJIaWRkZW5dKToKKyAgICAgICAgKC1bV0tG
dWxsU2NyZWVuV2luZG93Q29udHJvbGxlciBfaW52YWxpZGF0ZUVWT3JnYW5pemF0aW9uTmFtZV0p
OgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGlzU2VjdXJlXSk6Cisg
ICAgICAgICgtW1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXIgX3NlcnZlclRydXN0XSk6Cisg
ICAgICAgICgtW1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXIgX0VWT3JnYW5pemF0aW9uTmFt
ZV0pOgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIHVwZGF0ZUxvY2F0
aW9uSW5mb10pOgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGVudGVy
RnVsbFNjcmVlbl0pOgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGJl
Z2FuRW50ZXJGdWxsU2NyZWVuV2l0aEluaXRpYWxGcmFtZTpmaW5hbEZyYW1lOl0pOgorICAgICAg
ICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGJlZ2FuRXhpdEZ1bGxTY3JlZW5XaXRo
SW5pdGlhbEZyYW1lOmZpbmFsRnJhbWU6XSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3
Q29udHJvbGxlciBwcmVmZXJzU3RhdHVzQmFySGlkZGVuXSk6IERlbGV0ZWQuCisgICAgICAgICog
V2ViS2l0LnhjYXNzZXRzL0RvbmUuaW1hZ2VzZXQvQ29udGVudHMuanNvbjogUmVtb3ZlZC4KKyAg
ICAgICAgKiBXZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvQ29udGVudHMuanNvbjog
QWRkZWQuCisgICAgICAgICogV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdlc2V0L05hdmln
YXRpb25CYXJMb2NrTWluaUAyeC5wZGY6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJLaXQvV2ViS2l0
LnhjYXNzZXRzL0RvbmUuaW1hZ2VzZXQvRG9uZS5wZGYuCisgICAgICAgICogV2ViS2l0LnhjYXNz
ZXRzL0xvY2tNaW5pLmltYWdlc2V0L05hdmlnYXRpb25CYXJMb2NrTWluaUAzeC5wZGY6IFJlbmFt
ZWQgZnJvbSBTb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Eb25lLmltYWdlc2V0L0RvbmUu
cGRmLgorCiAyMDE3LTEyLTE4ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgog
CiAgICAgICAgIFttYWNPUywgaU9TXSBBZGQgbmV3IG1hY2ggbG9va3VwIHBvcnQgZm9yIENvcmVN
ZWRpYSByZW1vdGUgY29udHJvbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9z
cGkvY29jb2EvTGlua1ByZXNlbnRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9z
cGkvY29jb2EvTGlua1ByZXNlbnRhdGlvblNQSS5oCmluZGV4IGQ0YTI0NjVjZmE4MWU4OWMwYTU3
MWMwMjAzM2ZiMDQ0MmUyYWExYzkuLjkwMjA2NjkwMGVlNTNkZjkyNzBiM2NlNWJiMDE4MzhlNTMz
Mzk5ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0xpbmtQ
cmVzZW50YXRpb25TUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9M
aW5rUHJlc2VudGF0aW9uU1BJLmgKQEAgLTIzLDcgKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAog
ICovCiAKLSNpZiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTMwMAorI2lm
IF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxMzAwIHx8IF9fSVBIT05FX09T
X1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMDMwMAogCiAjaWYgVVNFKEFQUExFX0lOVEVSTkFM
X1NESykKIApAQCAtMzcsNCArMzcsNCBAQAogCiAjZW5kaWYKIAotI2VuZGlmIC8vIF9fTUFDX09T
X1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxMzAwCisjZW5kaWYgLy8gX19NQUNfT1NfWF9W
RVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEzMDAgfHwgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTAwMzAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9p
b3MvV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlcklPUy5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVySU9TLm1tCmluZGV4IGZmNmU0
MDJhY2NiNTcyOWZiMjU2NDU4ZTEyMWRmNzc0NTg2MjFiOGQuLmVmNTk0MTUwYzAyNWYwNmVjYTYy
NzMyOGFkMTE5OGE1MzI5NDRiOGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVySU9TLm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVySU9TLm1tCkBAIC0z
NSwxMSArMzUsMTggQEAKICNpbXBvcnQgIldlYkZ1bGxTY3JlZW5NYW5hZ2VyUHJveHkuaCIKICNp
bXBvcnQgIldlYlBhZ2VQcm94eS5oIgogI2ltcG9ydCA8Rm91bmRhdGlvbi9Gb3VuZGF0aW9uLmg+
CisjaW1wb3J0IDxTZWN1cml0eS9TZWNDZXJ0aWZpY2F0ZS5oPgorI2ltcG9ydCA8U2VjdXJpdHkv
U2VjVHJ1c3QuaD4KICNpbXBvcnQgPFVJS2l0L1VJVmlzdWFsRWZmZWN0Vmlldy5oPgogI2ltcG9y
dCA8V2ViQ29yZS9GbG9hdFJlY3QuaD4KICNpbXBvcnQgPFdlYkNvcmUvR2VvbWV0cnlVdGlsaXRp
ZXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvSW50UmVjdC5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJD
b3JlTlNVUkxFeHRyYXMuaD4KKyNpbXBvcnQgPHBhbC9zcGkvY2YvQ0ZOZXR3b3JrU1BJLmg+Cisj
aW1wb3J0IDxwYWwvc3BpL2NvY29hL0xpbmtQcmVzZW50YXRpb25TUEkuaD4KKyNpbXBvcnQgPHBh
bC9zcGkvY29jb2EvTlNTdHJpbmdTUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkvY29jb2EvUXVhcnR6
Q29yZVNQSS5oPgorI2ltcG9ydCA8d3RmL3NwaS9jb2NvYS9TZWN1cml0eVNQSS5oPgogCiB1c2lu
ZyBuYW1lc3BhY2UgV2ViS2l0OwogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CkBAIC0xMTUsNiAr
MTIyLDcgQEAgQGltcGxlbWVudGF0aW9uIF9XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciB7CiAg
ICAgUmV0YWluUHRyPFVJVmlldz4gX2JhY2tncm91bmRWaWV3OwogICAgIFJldGFpblB0cjxVSUxv
bmdQcmVzc0dlc3R1cmVSZWNvZ25pemVyPiBfdG91Y2hHZXN0dXJlUmVjb2duaXplcjsKICAgICBS
ZXRhaW5QdHI8VUlCdXR0b24+IF9jYW5jZWxCdXR0b247CisgICAgUmV0YWluUHRyPFVJQnV0dG9u
PiBfbG9jYXRpb25CdXR0b247CiAgICAgUmV0YWluUHRyPFVJVmlzdWFsRWZmZWN0Vmlldz4gX3Zp
c3VhbEVmZmVjdFZpZXc7CiB9CiAKQEAgLTEyOSw3ICsxMzcsMTcgQEAgLSAodm9pZClkZWFsbG9j
CiAtICh2b2lkKXZpZXdXaWxsVHJhbnNpdGlvblRvU2l6ZTooQ0dTaXplKXNpemUgd2l0aFRyYW5z
aXRpb25Db29yZGluYXRvcjooaWQ8VUlWaWV3Q29udHJvbGxlclRyYW5zaXRpb25Db29yZGluYXRv
cj4pY29vcmRpbmF0b3IKIHsKICAgICBbc3VwZXIgdmlld1dpbGxUcmFuc2l0aW9uVG9TaXplOnNp
emUgd2l0aFRyYW5zaXRpb25Db29yZGluYXRvcjpjb29yZGluYXRvcl07Ci0gICAgWyhXS1dlYlZp
ZXcgKilbc2VsZiBjb250ZW50Vmlld10gX292ZXJyaWRlTGF5b3V0UGFyYW1ldGVyc1dpdGhNaW5p
bXVtTGF5b3V0U2l6ZTpzaXplIG1heGltdW1Vbm9ic2N1cmVkU2l6ZU92ZXJyaWRlOnNpemVdOwor
ICAgIFtjb29yZGluYXRvciBhbmltYXRlQWxvbmdzaWRlVHJhbnNpdGlvbjogXihpZDxVSVZpZXdD
b250cm9sbGVyVHJhbnNpdGlvbkNvb3JkaW5hdG9yQ29udGV4dD4gY29udGV4dCkgeworCisgICAg
ICAgIHZvaWQgKF53ZWJWaWV3VXBkYXRlQmxvY2spKCkgPSBeeworICAgICAgICAgICAgWyhXS1dl
YlZpZXcgKilbc2VsZiBjb250ZW50Vmlld10gX292ZXJyaWRlTGF5b3V0UGFyYW1ldGVyc1dpdGhN
aW5pbXVtTGF5b3V0U2l6ZTpzaXplIG1heGltdW1Vbm9ic2N1cmVkU2l6ZU92ZXJyaWRlOnNpemVd
OworICAgICAgICB9OworCisgICAgICAgIFsoV0tXZWJWaWV3ICopW3NlbGYgY29udGVudFZpZXdd
IF9iZWdpbkFuaW1hdGVkUmVzaXplV2l0aFVwZGF0ZXM6d2ViVmlld1VwZGF0ZUJsb2NrXTsKKyAg
ICAgICAgWyhXS1dlYlZpZXcgKilbc2VsZiBjb250ZW50Vmlld10gX3NldEludGVyZmFjZU9yaWVu
dGF0aW9uT3ZlcnJpZGU6W1VJQXBwIHN0YXR1c0Jhck9yaWVudGF0aW9uXV07CisgICAgfSBjb21w
bGV0aW9uOl4oaWQgPFVJVmlld0NvbnRyb2xsZXJUcmFuc2l0aW9uQ29vcmRpbmF0b3JDb250ZXh0
PmNvbnRleHQpIHsKKyAgICAgICAgWyhXS1dlYlZpZXcgKilbc2VsZiBjb250ZW50Vmlld10gX2Vu
ZEFuaW1hdGVkUmVzaXplXTsKKyAgICB9XTsKIH0KIAogKyAodm9pZCljb25maWd1cmVWaWV3OihV
SVZpZXcgKil2aWV3IHdpdGhCYWNrZ3JvdW5kRmlsbE9mQ29sb3I6KFVJQ29sb3IgKilmaWxsQ29s
b3Igb3BhY2l0eTooQ0dGbG9hdClvcGFjaXR5IGZpbHRlcjooTlNTdHJpbmcgKilmaWx0ZXIKQEAg
LTE1OSw5ICsxNzcsNiBAQCAtICh2b2lkKV91cGRhdGVUcmFuc3BhcmVuY3lPZlZpc3VhbEVmZmVj
dFZpZXc6KFVJVmlzdWFsRWZmZWN0VmlldyAqKXZpc3VhbEVmZmVjdAogLSAoVUlWaXN1YWxFZmZl
Y3RWaWV3ICopdmlzdWFsRWZmZWN0Vmlld1dpdGhGcmFtZTooQ0dSZWN0KWZyYW1lCiB7CiAgICAg
UmV0YWluUHRyPFVJVmlzdWFsRWZmZWN0Vmlldz4gdmlzdWFsRWZmZWN0VmlldyA9IGFkb3B0TlMo
W1tVSVZpc3VhbEVmZmVjdFZpZXcgYWxsb2NdIGluaXRXaXRoRWZmZWN0OltVSVZpc3VhbEVmZmVj
dCBlbXB0eUVmZmVjdF1dKTsKLSAgICBbdmlzdWFsRWZmZWN0VmlldyBzZXRGcmFtZTpmcmFtZV07
Ci0gICAgW3Zpc3VhbEVmZmVjdFZpZXcgX3NldENvbnRpbnVvdXNDb3JuZXJSYWRpdXM6KChDR1Jl
Y3RHZXRIZWlnaHQoW3Zpc3VhbEVmZmVjdFZpZXcgYm91bmRzXSkgPiA0MC4wKSA/IDE2LjAgOiA4
LjApXTsKLSAgICBbdmlzdWFsRWZmZWN0VmlldyBzZXRBdXRvcmVzaXppbmdNYXNrOihVSVZpZXdB
dXRvcmVzaXppbmdGbGV4aWJsZVJpZ2h0TWFyZ2luIHwgVUlWaWV3QXV0b3Jlc2l6aW5nRmxleGli
bGVCb3R0b21NYXJnaW4pXTsKICAgICBbc2VsZiBfdXBkYXRlVHJhbnNwYXJlbmN5T2ZWaXN1YWxF
ZmZlY3RWaWV3OnZpc3VhbEVmZmVjdFZpZXcuZ2V0KCldOwogCiAgICAgUmV0YWluUHRyPFVJVmll
dz4gYmFja0xheWVyVGludFZpZXcgPSBhZG9wdE5TKFtbVUlWaWV3IGFsbG9jXSBpbml0V2l0aEZy
YW1lOlt2aXN1YWxFZmZlY3RWaWV3IGJvdW5kc11dKTsKQEAgLTE4MSwzOSArMTk2LDEzMiBAQCAt
IChVSVZpc3VhbEVmZmVjdFZpZXcgKil2aXN1YWxFZmZlY3RWaWV3V2l0aEZyYW1lOihDR1JlY3Qp
ZnJhbWUKICAgICByZXR1cm4gdmlzdWFsRWZmZWN0Vmlldy5hdXRvcmVsZWFzZSgpOwogfQogCi0t
ICh2b2lkKWxvYWRWaWV3CitzdGF0aWMgVUlFZGdlSW5zZXRzIG1pcnJvckVkZ2VJbnNldHMoVUlF
ZGdlSW5zZXRzIGluc2V0cykKIHsKLSAgICBbc2VsZiBzZXRWaWV3OmFkb3B0TlMoW1tVSVZpZXcg
YWxsb2NdIGluaXRXaXRoRnJhbWU6Q0dSZWN0TWFrZSgwLCAwLCAxMDAsIDEwMCldKS5nZXQoKV07
Ci0gICAgW1tzZWxmIHZpZXddIHNldEF1dG9yZXNpemluZ01hc2s6KFVJVmlld0F1dG9yZXNpemlu
Z0ZsZXhpYmxlV2lkdGggfCBVSVZpZXdBdXRvcmVzaXppbmdGbGV4aWJsZUhlaWdodCldOworICAg
IHJldHVybiBVSUVkZ2VJbnNldHNNYWtlKGluc2V0cy50b3AsIGluc2V0cy5yaWdodCwgaW5zZXRz
LmJvdHRvbSwgaW5zZXRzLmxlZnQpOworfQogCi0gICAgQ0dSZWN0IGRvbmVCdXR0b25SZWN0ID0g
Q0dSZWN0TWFrZSgxMCwgMjAsIDYwLCA0Nyk7Ci0gICAgCi0gICAgX3Zpc3VhbEVmZmVjdFZpZXcg
PSBbc2VsZiB2aXN1YWxFZmZlY3RWaWV3V2l0aEZyYW1lOmRvbmVCdXR0b25SZWN0XTsKLSAgICBb
X3Zpc3VhbEVmZmVjdFZpZXcgc2V0QWxwaGE6MF07CistICh2b2lkKV91cGRhdGVMYXlvdXRNYXJn
aW5zCit7CisgICAgVUlWaWV3ICp2aWV3ID0gW3NlbGYgdmlld107CisgICAgW3ZpZXcgc2V0RWRn
ZXNJbnNldHRpbmdMYXlvdXRNYXJnaW5zRnJvbVNhZmVBcmVhOlVJUmVjdEVkZ2VOb25lXTsKKyAg
ICBbdmlldyBzZXRQcmVzZXJ2ZXNTdXBlcnZpZXdMYXlvdXRNYXJnaW5zOk5PXTsKKworICAgIFVJ
RWRnZUluc2V0cyB0YXJnZXRJbnNldHMgPSBbdmlldyBzYWZlQXJlYUluc2V0c107CisgICAgdGFy
Z2V0SW5zZXRzLnRvcCA9IHN0ZDo6bWF4KHRhcmdldEluc2V0cy50b3AsIDIwLjApOworICAgIFt2
aWV3IHNldExheW91dE1hcmdpbnM6dGFyZ2V0SW5zZXRzXTsKK30KKworLSAodm9pZCl2aWV3RGlk
TGF5b3V0U3Vidmlld3MKK3sKKyAgICBbc2VsZiBfdXBkYXRlTGF5b3V0TWFyZ2luc107Cit9CisK
Ky0gICh2b2lkKXNldExvY2F0aW9uOihOU1N0cmluZyAqKWxvY2F0aW9uTmFtZSBzZWN1cmU6KEJP
T0wpc2VjdXJlIHRydXN0ZWROYW1lOihCT09MKXRydXN0ZWROYW1lIHRydXN0ZWRTaXRlOihCT09M
KXRydXN0ZWRTaXRlCit7CisgICAgVUlDb2xvciAqZ3JlZW5UaW50ID0gW1VJQ29sb3IgY29sb3JX
aXRoUmVkOjEwMCAvIDI1NS4wIGdyZWVuOjE3NSAvIDI1NS4wIGJsdWU6OTkgLyAyNTUuMCBhbHBo
YToxLjBdOworICAgIFVJQ29sb3IgKndoaXRlVGludCA9IFtVSUNvbG9yIHdoaXRlQ29sb3JdOwor
CisgICAgZmxvYXQgaFBhZGRpbmcgPSAxNDsKKyAgICBOU1N0cmluZyAqbG9ja0ltYWdlTmFtZSA9
IEAiTG9ja01pbmkiOworCisgICAgZmxvYXQgbG9ja1NwYWNpbmcgPSBzZWN1cmUgPyAxMCA6IDA7
CisKKyAgICBVSUVkZ2VJbnNldHMgbG9jYXRpb25Db250ZW50RWRnZUluc2V0cyA9IFVJRWRnZUlu
c2V0c01ha2UoMCwgaFBhZGRpbmcrbG9ja1NwYWNpbmcsIDAsIGhQYWRkaW5nKTsKKyAgICBVSUVk
Z2VJbnNldHMgbG9jYXRpb25JbWFnZUVkZ2VJbnNldHMgPSBVSUVkZ2VJbnNldHNNYWtlKDAsIC1s
b2NrU3BhY2luZywgMCwgMCk7CisKKyAgICBpZiAoW1VJVmlldyB1c2VySW50ZXJmYWNlTGF5b3V0
RGlyZWN0aW9uRm9yU2VtYW50aWNDb250ZW50QXR0cmlidXRlOltbc2VsZiB2aWV3XSBzZW1hbnRp
Y0NvbnRlbnRBdHRyaWJ1dGVdXSA9PSBVSVVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb25SaWdo
dFRvTGVmdCkgeworICAgICAgICBsb2NhdGlvbkNvbnRlbnRFZGdlSW5zZXRzID0gbWlycm9yRWRn
ZUluc2V0cyhsb2NhdGlvbkNvbnRlbnRFZGdlSW5zZXRzKTsKKyAgICAgICAgbG9jYXRpb25JbWFn
ZUVkZ2VJbnNldHMgPSBtaXJyb3JFZGdlSW5zZXRzKGxvY2F0aW9uSW1hZ2VFZGdlSW5zZXRzKTsK
KyAgICAgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRDb250ZW50SG9yaXpvbnRhbEFsaWdubWVudDpV
SUNvbnRyb2xDb250ZW50SG9yaXpvbnRhbEFsaWdubWVudFJpZ2h0XTsKKyAgICB9CisKKyAgICBb
X2xvY2F0aW9uQnV0dG9uIHNldFRpdGxlQ29sb3I6dHJ1c3RlZE5hbWU/Z3JlZW5UaW50OndoaXRl
VGludCBmb3JTdGF0ZTpVSUNvbnRyb2xTdGF0ZU5vcm1hbF07CisKKyAgICBpZiAoc2VjdXJlKSB7
CisgICAgICAgIE5TQnVuZGxlICpidW5kbGUgPSBbTlNCdW5kbGUgYnVuZGxlRm9yQ2xhc3M6W1dL
RnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXIgY2xhc3NdXTsKKyAgICAgICAgUmV0YWluUHRyPFVJ
SW1hZ2U+IGxvY2tJbWFnZSA9IFtVSUltYWdlIGltYWdlTmFtZWQ6bG9ja0ltYWdlTmFtZSBpbkJ1
bmRsZTpidW5kbGUgY29tcGF0aWJsZVdpdGhUcmFpdENvbGxlY3Rpb246bmlsXTsKKyAgICAgICAg
W19sb2NhdGlvbkJ1dHRvbiBzZXRJbWFnZTpbbG9ja0ltYWdlIGltYWdlV2l0aFJlbmRlcmluZ01v
ZGU6VUlJbWFnZVJlbmRlcmluZ01vZGVBbHdheXNUZW1wbGF0ZV0gZm9yU3RhdGU6VUlDb250cm9s
U3RhdGVOb3JtYWxdOworICAgICAgICBbW19sb2NhdGlvbkJ1dHRvbiBpbWFnZVZpZXddIHNldFRp
bnRDb2xvcjp0cnVzdGVkU2l0ZT9ncmVlblRpbnQ6d2hpdGVUaW50XTsKKyAgICAgICAgW19sb2Nh
dGlvbkJ1dHRvbiBzZXRUaW50Q29sb3I6dHJ1c3RlZFNpdGU/Z3JlZW5UaW50OndoaXRlVGludF07
CisgICAgfSBlbHNlCisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0SW1hZ2U6bmlsIGZvclN0
YXRlOlVJQ29udHJvbFN0YXRlTm9ybWFsXTsKKworICAgIFtfbG9jYXRpb25CdXR0b24gc2V0Q29u
dGVudEVkZ2VJbnNldHM6bG9jYXRpb25Db250ZW50RWRnZUluc2V0c107CisgICAgW19sb2NhdGlv
bkJ1dHRvbiBzZXRJbWFnZUVkZ2VJbnNldHM6bG9jYXRpb25JbWFnZUVkZ2VJbnNldHNdOworICAg
IFtfbG9jYXRpb25CdXR0b24gc2V0VGl0bGU6bG9jYXRpb25OYW1lIGZvclN0YXRlOlVJQ29udHJv
bFN0YXRlTm9ybWFsXTsKKyAgICBbW19sb2NhdGlvbkJ1dHRvbiB0aXRsZUxhYmVsXSBzZXRMaW5l
QnJlYWtNb2RlOk5TTGluZUJyZWFrQnlUcnVuY2F0aW5nVGFpbF07CisgICAgW1tfbG9jYXRpb25C
dXR0b24gdGl0bGVMYWJlbF0gc2V0QWRqdXN0c0ZvbnRTaXplVG9GaXRXaWR0aDpOT107Cit9CisK
Ky0gKHZvaWQpY3JlYXRlU3Vidmlld3MKK3sKKyAgICBfdmlzdWFsRWZmZWN0VmlldyA9IFtzZWxm
IHZpc3VhbEVmZmVjdFZpZXdXaXRoRnJhbWU6Q0dSZWN0TWFrZSgwLCAwLCAyMCwgMjApXTsKKwor
ICAgIFtfdmlzdWFsRWZmZWN0VmlldyBzZXRUcmFuc2xhdGVzQXV0b3Jlc2l6aW5nTWFza0ludG9D
b25zdHJhaW50czpOT107CiAgICAgW1tzZWxmIHZpZXddIGFkZFN1YnZpZXc6X3Zpc3VhbEVmZmVj
dFZpZXcuZ2V0KCldOwogCiAgICAgX2NhbmNlbEJ1dHRvbiA9IFtVSUJ1dHRvbiBidXR0b25XaXRo
VHlwZTpVSUJ1dHRvblR5cGVTeXN0ZW1dOwotICAgIFtfY2FuY2VsQnV0dG9uIHNldEF1dG9yZXNp
emluZ01hc2s6KFVJVmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlUmlnaHRNYXJnaW4gfCBVSVZpZXdB
dXRvcmVzaXppbmdGbGV4aWJsZUJvdHRvbU1hcmdpbildOwotICAgIFtfY2FuY2VsQnV0dG9uIHNl
dEZyYW1lOmRvbmVCdXR0b25SZWN0XTsKLSAgICBbX2NhbmNlbEJ1dHRvbiBhZGRUYXJnZXQ6c2Vs
ZiBhY3Rpb246QHNlbGVjdG9yKGNhbmNlbEFjdGlvbjopIGZvckNvbnRyb2xFdmVudHM6VUlDb250
cm9sRXZlbnRUb3VjaFVwSW5zaWRlXTsKKyAgICBbX2NhbmNlbEJ1dHRvbiBzZXRUcmFuc2xhdGVz
QXV0b3Jlc2l6aW5nTWFza0ludG9Db25zdHJhaW50czpOT107CiAgICAgW19jYW5jZWxCdXR0b24g
c2V0QWRqdXN0c0ltYWdlV2hlbkhpZ2hsaWdodGVkOk5PXTsKICAgICBbX2NhbmNlbEJ1dHRvbiBz
ZXRCYWNrZ3JvdW5kQ29sb3I6IFtVSUNvbG9yIGJsYWNrQ29sb3JdXTsKLSAgICBbW19jYW5jZWxC
dXR0b24gbGF5ZXJdIHNldENvcm5lclJhZGl1czo2XTsKLSAgICBbX2NhbmNlbEJ1dHRvbiBzZXRB
bHBoYTowXTsKLSAgICBOU0J1bmRsZSAqYnVuZGxlID0gW05TQnVuZGxlIGJ1bmRsZUZvckNsYXNz
OltXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGNsYXNzXV07Ci0gICAgUmV0YWluUHRyPFVJ
SW1hZ2U+IGltYWdlID0gW1VJSW1hZ2UgaW1hZ2VOYW1lZDpAIkRvbmUiIGluQnVuZGxlOmJ1bmRs
ZSBjb21wYXRpYmxlV2l0aFRyYWl0Q29sbGVjdGlvbjpuaWxdOwotICAgIFtfY2FuY2VsQnV0dG9u
IHNldEltYWdlOltpbWFnZSBpbWFnZVdpdGhSZW5kZXJpbmdNb2RlOlVJSW1hZ2VSZW5kZXJpbmdN
b2RlQWx3YXlzVGVtcGxhdGVdIGZvclN0YXRlOlVJQ29udHJvbFN0YXRlTm9ybWFsXTsKLQotICAg
IFtfY2FuY2VsQnV0dG9uIHNldFRpbnRDb2xvcjpbVUlDb2xvciBjb2xvcldpdGhXaGl0ZToxLjAg
YWxwaGE6MC41NV1dOwogICAgIFtbX2NhbmNlbEJ1dHRvbiBsYXllcl0gc2V0Q29tcG9zaXRpbmdG
aWx0ZXI6W0NBRmlsdGVyIGZpbHRlcldpdGhUeXBlOmtDQUZpbHRlclBsdXNMXV07CisgICAgW19j
YW5jZWxCdXR0b24gc2V0VGl0bGU6QCJEb25lIiBmb3JTdGF0ZTpVSUNvbnRyb2xTdGF0ZU5vcm1h
bF07CisgICAgW19jYW5jZWxCdXR0b24gc2V0VGludENvbG9yOltVSUNvbG9yIHdoaXRlQ29sb3Jd
XTsKKyAgICBbX2NhbmNlbEJ1dHRvbiBhZGRUYXJnZXQ6c2VsZiBhY3Rpb246QHNlbGVjdG9yKGNh
bmNlbEFjdGlvbjopIGZvckNvbnRyb2xFdmVudHM6VUlDb250cm9sRXZlbnRUb3VjaFVwSW5zaWRl
XTsKIAogICAgIFtbc2VsZiB2aWV3XSBhZGRTdWJ2aWV3Ol9jYW5jZWxCdXR0b24uZ2V0KCldOwog
CisgICAgX2xvY2F0aW9uQnV0dG9uID0gW1VJQnV0dG9uIGJ1dHRvbldpdGhUeXBlOlVJQnV0dG9u
VHlwZVN5c3RlbV07CisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRUcmFuc2xhdGVzQXV0b3Jlc2l6
aW5nTWFza0ludG9Db25zdHJhaW50czpOT107CisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRBZGp1
c3RzSW1hZ2VXaGVuSGlnaGxpZ2h0ZWQ6Tk9dOworICAgIFtfbG9jYXRpb25CdXR0b24gc2V0QmFj
a2dyb3VuZENvbG9yOltVSUNvbG9yIGJsYWNrQ29sb3JdXTsKKyAgICBbW19sb2NhdGlvbkJ1dHRv
biBsYXllcl0gc2V0Q29tcG9zaXRpbmdGaWx0ZXI6W0NBRmlsdGVyIGZpbHRlcldpdGhUeXBlOmtD
QUZpbHRlclBsdXNMXV07CisgICAgW1tzZWxmIHZpZXddIGFkZFN1YnZpZXc6X2xvY2F0aW9uQnV0
dG9uLmdldCgpXTsKKworICAgIFVJTGF5b3V0R3VpZGUqIGNvbnRhaW5lckd1aWRlID0gW1tzZWxm
IHZpZXddIGxheW91dE1hcmdpbnNHdWlkZV07CisKKyAgICBbW1tfdmlzdWFsRWZmZWN0VmlldyBs
ZWZ0QW5jaG9yXSBjb25zdHJhaW50RXF1YWxUb0FuY2hvcjpbW3NlbGYgdmlld10gbGVmdEFuY2hv
cl1dIHNldEFjdGl2ZTpZRVNdOworICAgIFtbW192aXN1YWxFZmZlY3RWaWV3IHJpZ2h0QW5jaG9y
XSBjb25zdHJhaW50RXF1YWxUb0FuY2hvcjpbW3NlbGYgdmlld10gcmlnaHRBbmNob3JdXSBzZXRB
Y3RpdmU6WUVTXTsKKyAgICBbW1tfdmlzdWFsRWZmZWN0VmlldyB0b3BBbmNob3JdIGNvbnN0cmFp
bnRFcXVhbFRvQW5jaG9yOltbc2VsZiB2aWV3XSB0b3BBbmNob3JdXSBzZXRBY3RpdmU6WUVTXTsK
KyAgICBbW1tfdmlzdWFsRWZmZWN0VmlldyBoZWlnaHRBbmNob3JdIGNvbnN0cmFpbnRHcmVhdGVy
VGhhbk9yRXF1YWxUb0NvbnN0YW50OjIwXSBzZXRBY3RpdmU6WUVTXTsKKworICAgIE5TTGF5b3V0
Q29uc3RyYWludCAqYm90dG9tID0gW1tfdmlzdWFsRWZmZWN0VmlldyBib3R0b21BbmNob3JdIGNv
bnN0cmFpbnRFcXVhbFRvQW5jaG9yOltjb250YWluZXJHdWlkZSB0b3BBbmNob3JdXTsKKyAgICBb
Ym90dG9tIHNldFByaW9yaXR5OlVJTGF5b3V0UHJpb3JpdHlSZXF1aXJlZC0xXTsKKyAgICBbYm90
dG9tIHNldEFjdGl2ZTpZRVNdOworCisgICAgW1tbX2NhbmNlbEJ1dHRvbiBsZWFkaW5nQW5jaG9y
XSBjb25zdHJhaW50RXF1YWxUb0FuY2hvcjpbY29udGFpbmVyR3VpZGUgbGVhZGluZ0FuY2hvcl1d
IHNldEFjdGl2ZTpZRVNdOworICAgIFtbW19jYW5jZWxCdXR0b24gdG9wQW5jaG9yXSBjb25zdHJh
aW50RXF1YWxUb0FuY2hvcjpbW3NlbGYgdmlld10gdG9wQW5jaG9yXV0gc2V0QWN0aXZlOllFU107
CisgICAgW1tbX2NhbmNlbEJ1dHRvbiBib3R0b21BbmNob3JdIGNvbnN0cmFpbnRFcXVhbFRvQW5j
aG9yOltfdmlzdWFsRWZmZWN0VmlldyBib3R0b21BbmNob3JdXSBzZXRBY3RpdmU6WUVTXTsKKwor
ICAgIFtbW19sb2NhdGlvbkJ1dHRvbiBoZWlnaHRBbmNob3JdIGNvbnN0cmFpbnRFcXVhbFRvQ29u
c3RhbnQ6MjBdIHNldEFjdGl2ZTpZRVNdOworICAgIFtbW19sb2NhdGlvbkJ1dHRvbiBib3R0b21B
bmNob3JdIGNvbnN0cmFpbnRFcXVhbFRvQW5jaG9yOltfdmlzdWFsRWZmZWN0VmlldyBib3R0b21B
bmNob3JdXSBzZXRBY3RpdmU6WUVTXTsKKyAgICBbW1tfbG9jYXRpb25CdXR0b24gbGVhZGluZ0Fu
Y2hvcl0gY29uc3RyYWludEdyZWF0ZXJUaGFuT3JFcXVhbFRvQW5jaG9yOltfY2FuY2VsQnV0dG9u
IHRyYWlsaW5nQW5jaG9yXV0gc2V0QWN0aXZlOllFU107CisgICAgW1tbX2xvY2F0aW9uQnV0dG9u
IHRyYWlsaW5nQW5jaG9yXSBjb25zdHJhaW50TGVzc1RoYW5PckVxdWFsVG9BbmNob3I6W1tzZWxm
IHZpZXddIHRyYWlsaW5nQW5jaG9yXV0gc2V0QWN0aXZlOllFU107CisgICAgTlNMYXlvdXRDb25z
dHJhaW50ICpjZW50ZXJpbmdDb25zdHJhaW50ID0gW1tfbG9jYXRpb25CdXR0b24gY2VudGVyWEFu
Y2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W1tzZWxmIHZpZXddIGNlbnRlclhBbmNob3Jd
XTsKKyAgICBbY2VudGVyaW5nQ29uc3RyYWludCBzZXRQcmlvcml0eTpVSUxheW91dFByaW9yaXR5
RGVmYXVsdExvd107CisgICAgW2NlbnRlcmluZ0NvbnN0cmFpbnQgc2V0QWN0aXZlOllFU107CisK
KyAgICBbX3Zpc3VhbEVmZmVjdFZpZXcgc2V0QWxwaGE6MF07CisgICAgW19jYW5jZWxCdXR0b24g
c2V0QWxwaGE6MF07CisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRBbHBoYTowXTsKKworICAgIFtf
dmlzdWFsRWZmZWN0VmlldyBzZXRIaWRkZW46WUVTXTsKKyAgICBbX2NhbmNlbEJ1dHRvbiBzZXRI
aWRkZW46WUVTXTsKKyAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEhpZGRlbjpZRVNdOworfQorCist
ICh2b2lkKWxvYWRWaWV3Cit7CisgICAgW3NlbGYgc2V0VmlldzphZG9wdE5TKFtbVUlWaWV3IGFs
bG9jXSBpbml0V2l0aEZyYW1lOkNHUmVjdE1ha2UoMCwgMCwgMTAwLCAxMDApXSkuZ2V0KCldOwor
ICAgIFtbc2VsZiB2aWV3XSBzZXRBdXRvcmVzaXppbmdNYXNrOihVSVZpZXdBdXRvcmVzaXppbmdG
bGV4aWJsZVdpZHRoIHwgVUlWaWV3QXV0b3Jlc2l6aW5nRmxleGlibGVIZWlnaHQpXTsKKwogICAg
IF90b3VjaEdlc3R1cmVSZWNvZ25pemVyID0gYWRvcHROUyhbW1VJTG9uZ1ByZXNzR2VzdHVyZVJl
Y29nbml6ZXIgYWxsb2NdIGluaXRXaXRoVGFyZ2V0OnNlbGYgYWN0aW9uOkBzZWxlY3RvcihzaG93
Q2FuY2VsQnV0dG9uOildKTsKICAgICBbX3RvdWNoR2VzdHVyZVJlY29nbml6ZXIgc2V0RGVsZWdh
dGU6c2VsZl07CiAgICAgW190b3VjaEdlc3R1cmVSZWNvZ25pemVyIHNldENhbmNlbHNUb3VjaGVz
SW5WaWV3Ok5PXTsKICAgICBbX3RvdWNoR2VzdHVyZVJlY29nbml6ZXIgc2V0TWluaW11bVByZXNz
RHVyYXRpb246MF07CiAgICAgW1tzZWxmIHZpZXddIGFkZEdlc3R1cmVSZWNvZ25pemVyOl90b3Vj
aEdlc3R1cmVSZWNvZ25pemVyLmdldCgpXTsKKyAgICBbc2VsZiBjcmVhdGVTdWJ2aWV3c107CiB9
CiAKIC0gKHZvaWQpdmlld1dpbGxBcHBlYXI6KEJPT0wpYW5pbWF0ZWQKQEAgLTIyMyw2ICszMzEs
MTEgQEAgLSAodm9pZCl2aWV3V2lsbEFwcGVhcjooQk9PTClhbmltYXRlZAogICAgIFtbc2VsZiB2
aWV3XSBpbnNlcnRTdWJ2aWV3OltzZWxmIGNvbnRlbnRWaWV3XSBhdEluZGV4OjBdOwogfQogCist
ICh2b2lkKXZpZXdEaWRBcHBlYXI6KEJPT0wpYW5pbWF0ZWQKK3sKKyAgICBbc2VsZiBfdXBkYXRl
TGF5b3V0TWFyZ2luc107Cit9CisKIC0gKHZvaWQpY2FuY2VsQWN0aW9uOihpZClzZW5kZXIKIHsK
ICAgICBbW3NlbGYgdGFyZ2V0XSBwZXJmb3JtU2VsZWN0b3I6W3NlbGYgYWN0aW9uXV07CkBAIC0y
MzEsMTIgKzM0NCwxNCBAQCAtICh2b2lkKWNhbmNlbEFjdGlvbjooaWQpc2VuZGVyCiAtICh2b2lk
KWhpZGVDYW5jZWxCdXR0b24KIHsKICAgICBbTlNPYmplY3QgY2FuY2VsUHJldmlvdXNQZXJmb3Jt
UmVxdWVzdHNXaXRoVGFyZ2V0OnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKGhpZGVDYW5jZWxCdXR0
b24pIG9iamVjdDpuaWxdOwotICAgIFtVSVZpZXcgYW5pbWF0ZVdpdGhEdXJhdGlvbjowLjIgYW5p
bWF0aW9uczpeeworICAgIFtVSVZpZXcgYW5pbWF0ZVdpdGhEdXJhdGlvbjowLjEgYW5pbWF0aW9u
czpeewogICAgICAgICBbX3Zpc3VhbEVmZmVjdFZpZXcgc2V0QWxwaGE6MF07CiAgICAgICAgIFtf
Y2FuY2VsQnV0dG9uIHNldEFscGhhOjBdOworICAgICAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEFs
cGhhOjBdOwogICAgIH0gY29tcGxldGlvbjpeKEJPT0wgZmluaXNoZWQpewogICAgICAgICBpZiAo
ZmluaXNoZWQpIHsKICAgICAgICAgICAgIFtfY2FuY2VsQnV0dG9uIHNldEhpZGRlbjpZRVNdOwor
ICAgICAgICAgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRIaWRkZW46WUVTXTsKICAgICAgICAgICAg
IFtfdmlzdWFsRWZmZWN0VmlldyBzZXRIaWRkZW46WUVTXTsKICAgICAgICAgfQogICAgIH1dOwpA
QCAtMjQ1LDEyICszNjAsMTQgQEAgLSAodm9pZCloaWRlQ2FuY2VsQnV0dG9uCiAtICh2b2lkKXNo
b3dDYW5jZWxCdXR0b246KGlkKXNlbmRlcgogewogICAgIFtOU09iamVjdCBjYW5jZWxQcmV2aW91
c1BlcmZvcm1SZXF1ZXN0c1dpdGhUYXJnZXQ6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3IoaGlkZUNh
bmNlbEJ1dHRvbikgb2JqZWN0Om5pbF07Ci0gICAgW3NlbGYgcGVyZm9ybVNlbGVjdG9yOkBzZWxl
Y3RvcihoaWRlQ2FuY2VsQnV0dG9uKSB3aXRoT2JqZWN0Om5pbCBhZnRlckRlbGF5OjMuMF07Ci0g
ICAgW1VJVmlldyBhbmltYXRlV2l0aER1cmF0aW9uOjAuMiBhbmltYXRpb25zOiBeeworICAgIFtz
ZWxmIHBlcmZvcm1TZWxlY3RvcjpAc2VsZWN0b3IoaGlkZUNhbmNlbEJ1dHRvbikgd2l0aE9iamVj
dDpuaWwgYWZ0ZXJEZWxheTo0LjBdOworICAgIFtVSVZpZXcgYW5pbWF0ZVdpdGhEdXJhdGlvbjow
LjEgYW5pbWF0aW9uczogXnsKICAgICAgICAgW192aXN1YWxFZmZlY3RWaWV3IHNldEhpZGRlbjpO
T107CiAgICAgICAgIFtfY2FuY2VsQnV0dG9uIHNldEhpZGRlbjpOT107CisgICAgICAgIFtfbG9j
YXRpb25CdXR0b24gc2V0SGlkZGVuOk5PXTsKICAgICAgICAgW192aXN1YWxFZmZlY3RWaWV3IHNl
dEFscGhhOjFdOwogICAgICAgICBbX2NhbmNlbEJ1dHRvbiBzZXRBbHBoYToxXTsKKyAgICAgICAg
W19sb2NhdGlvbkJ1dHRvbiBzZXRBbHBoYToxXTsKICAgICB9XTsKIH0KIApAQCAtMjYwLDExICsz
NzcsNiBAQCAtICh2b2lkKXNldFRhcmdldDooaWQpdGFyZ2V0IGFjdGlvbjooU0VMKWFjdGlvbgog
ICAgIFtzZWxmIHNldEFjdGlvbjphY3Rpb25dOwogfQogCi0tIChCT09MKXByZWZlcnNTdGF0dXNC
YXJIaWRkZW4KLXsKLSAgICByZXR1cm4gWUVTOwotfQotCiAvLyBNQVJLIC0gVUlHZXN0dXJlUmVj
b2duaXplckRlbGVnYXRlCiAKIC0gKEJPT0wpZ2VzdHVyZVJlY29nbml6ZXI6KFVJR2VzdHVyZVJl
Y29nbml6ZXIgKilnZXN0dXJlUmVjb2duaXplciBzaG91bGRSZWNvZ25pemVTaW11bHRhbmVvdXNs
eVdpdGhHZXN0dXJlUmVjb2duaXplcjooVUlHZXN0dXJlUmVjb2duaXplciAqKW90aGVyR2VzdHVy
ZVJlY29nbml6ZXIKQEAgLTI3NywxMSArMzg5LDE5IEBAIEBlbmQKIEBpbnRlcmZhY2UgX1dLRnVs
bHNjcmVlblJvb3RWaWV3Q29udHJvbGxlciA6IFVJVmlld0NvbnRyb2xsZXIKIEBlbmQKIAotQGlt
cGxlbWVudGF0aW9uIF9XS0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIgOiBVSVZpZXdDb250
cm9sbGVyCitAaW1wbGVtZW50YXRpb24gX1dLRnVsbHNjcmVlblJvb3RWaWV3Q29udHJvbGxlciB7
CisgICAgQk9PTCBfc2hvd3NTdGF0dXNCYXI7Cit9CisKKy0gKHZvaWQpc2V0U2hvd3NTdGF0dXNC
YXI6KEJPT0wpdmFsdWUKK3sKKyAgICBfc2hvd3NTdGF0dXNCYXIgPSB2YWx1ZTsKKyAgICBbc2Vs
ZiBzZXROZWVkc1N0YXR1c0JhckFwcGVhcmFuY2VVcGRhdGVdOworfQogCiAtIChCT09MKXByZWZl
cnNTdGF0dXNCYXJIaWRkZW4KIHsKLSAgICByZXR1cm4gWUVTOworICAgIHJldHVybiAhX3Nob3dz
U3RhdHVzQmFyOwogfQogCiBAZW5kCkBAIC0zNTgsNiArNDc4LDcgQEAgQGltcGxlbWVudGF0aW9u
IFdLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXIgewogICAgIFdLV2ViVmlld1N0YXRlIF92aWV3
U3RhdGU7CiAKICAgICBSZXRhaW5QdHI8VUlXaW5kb3c+IF93aW5kb3c7CisgICAgUmV0YWluUHRy
PF9XS0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXI+IF9yb290Vmlld0NvbnRyb2xsZXI7CiAK
ICAgICBSZWZQdHI8V2ViS2l0OjpWb2lkQ2FsbGJhY2s+IF9yZXBhaW50Q2FsbGJhY2s7CiAgICAg
UmV0YWluUHRyPFVJVmlld0NvbnRyb2xsZXI+IF92aWV3Q29udHJvbGxlckZvclByZXNlbnRhdGlv
bjsKQEAgLTM2NSw2ICs0ODYsMTAgQEAgQGltcGxlbWVudGF0aW9uIFdLRnVsbFNjcmVlbldpbmRv
d0NvbnRyb2xsZXIgewogCiAgICAgQ0dSZWN0IF9pbml0aWFsRnJhbWU7CiAgICAgQ0dSZWN0IF9m
aW5hbEZyYW1lOworCisgICAgUmV0YWluUHRyPE5TU3RyaW5nPiBfRVZPcmdhbml6YXRpb25OYW1l
OworICAgIEJPT0wgX0VWT3JnYW5pemF0aW9uTmFtZUlzVmFsaWQ7CisKIH0KIAogI3ByYWdtYSBt
YXJrIC0KQEAgLTQwNCwxNiArNTI5LDk1IEBAIC0gKFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xk
ZXJWaWV3ICopd2ViVmlld1BsYWNlaG9sZGVyCiAjcHJhZ21hIG1hcmsgLQogI3ByYWdtYSBtYXJr
IEV4cG9zZWQgSW50ZXJmYWNlCiAKKy0gKHZvaWQpX2ludmFsaWRhdGVFVk9yZ2FuaXphdGlvbk5h
bWUKK3sKKyAgICBfRVZPcmdhbml6YXRpb25OYW1lID0gbmlsOworICAgIF9FVk9yZ2FuaXphdGlv
bk5hbWVJc1ZhbGlkID0gTk87Cit9CisKKy0gKEJPT0wpaXNTZWN1cmUKK3sKKyAgICByZXR1cm4g
X3dlYlZpZXcuaGFzT25seVNlY3VyZUNvbnRlbnQ7Cit9CisKKy0gKFNlY1RydXN0UmVmKV9zZXJ2
ZXJUcnVzdAoreworICAgIHJldHVybiBfd2ViVmlldy5zZXJ2ZXJUcnVzdDsKK30KKworLSAoTlNT
dHJpbmcgKilfRVZPcmdhbml6YXRpb25OYW1lCit7CisgICAgaWYgKCFzZWxmLmlzU2VjdXJlKQor
ICAgICAgICByZXR1cm4gbmlsOworCisgICAgaWYgKF9FVk9yZ2FuaXphdGlvbk5hbWVJc1ZhbGlk
KQorICAgICAgICByZXR1cm4gX0VWT3JnYW5pemF0aW9uTmFtZS5nZXQoKTsKKworICAgIEFTU0VS
VCghX0VWT3JnYW5pemF0aW9uTmFtZS5nZXQoKSk7CisgICAgX0VWT3JnYW5pemF0aW9uTmFtZUlz
VmFsaWQgPSBZRVM7CisKKyAgICBTZWNUcnVzdFJlZiB0cnVzdCA9IFtzZWxmIF9zZXJ2ZXJUcnVz
dF07CisgICAgaWYgKCF0cnVzdCkKKyAgICAgICAgcmV0dXJuIG5pbDsKKworICAgIE5TRGljdGlv
bmFyeSAqaW5mb0RpY3Rpb25hcnkgPSBDRkJyaWRnaW5nUmVsZWFzZShTZWNUcnVzdENvcHlJbmZv
KHRydXN0KSk7CisgICAgLy8gSWYgU2VjVHJ1c3RDb3B5SW5mbyByZXR1cm5lZCBOVUxMIHRoZW4g
aXQncyBsaWtlbHkgdGhhdCB0aGUgU2VjVHJ1c3RSZWYgaGFzIG5vdCBiZWVuIGV2YWx1YXRlZAor
ICAgIC8vIGFuZCB0aGUgb25seSB3YXkgdG8gZ2V0IHRoZSBpbmZvcm1hdGlvbiB3ZSBuZWVkIGlz
IHRvIGNhbGwgU2VjVHJ1c3RFdmFsdWF0ZSBvdXJzZWx2ZXMuCisgICAgaWYgKCFpbmZvRGljdGlv
bmFyeSkgeworICAgICAgICBPU1N0YXR1cyBlcnIgPSBTZWNUcnVzdEV2YWx1YXRlKHRydXN0LCBO
VUxMKTsKKyAgICAgICAgaWYgKGVyciA9PSBub0VycikKKyAgICAgICAgICAgIGluZm9EaWN0aW9u
YXJ5ID0gQ0ZCcmlkZ2luZ1JlbGVhc2UoU2VjVHJ1c3RDb3B5SW5mbyh0cnVzdCkpOworICAgICAg
ICBpZiAoIWluZm9EaWN0aW9uYXJ5KQorICAgICAgICAgICAgcmV0dXJuIG5pbDsKKyAgICB9CisK
KyAgICAvLyBNYWtlIHN1cmUgdGhhdCB0aGUgRVYgY2VydGlmaWNhdGUgaXMgdmFsaWQgYWdhaW5z
dCBvdXIgY2VydGlmaWNhdGUgY2hhaW4uCisgICAgaWQgaGFzRVYgPSBbaW5mb0RpY3Rpb25hcnkg
b2JqZWN0Rm9yS2V5OihfX2JyaWRnZSBOU1N0cmluZyAqKWtTZWNUcnVzdEluZm9FeHRlbmRlZFZh
bGlkYXRpb25LZXldOworICAgIGlmICghW2hhc0VWIGlzS2luZE9mQ2xhc3M6W05TVmFsdWUgY2xh
c3NdXSB8fCAhW2hhc0VWIGJvb2xWYWx1ZV0pCisgICAgICAgIHJldHVybiBuaWw7CisKKyAgICAv
LyBNYWtlIHN1cmUgdGhhdCB3ZSBjb3VsZCBjb250YWN0IHJldm9jYXRpb24gc2VydmVyIGFuZCBp
dCBpcyBzdGlsbCB2YWxpZC4KKyAgICBpZCBpc05vdFJldm9rZWQgPSBbaW5mb0RpY3Rpb25hcnkg
b2JqZWN0Rm9yS2V5OihfX2JyaWRnZSBOU1N0cmluZyAqKWtTZWNUcnVzdEluZm9SZXZvY2F0aW9u
S2V5XTsKKyAgICBpZiAoIVtpc05vdFJldm9rZWQgaXNLaW5kT2ZDbGFzczpbTlNWYWx1ZSBjbGFz
c11dIHx8ICFbaXNOb3RSZXZva2VkIGJvb2xWYWx1ZV0pCisgICAgICAgIHJldHVybiBuaWw7CisK
KyAgICBfRVZPcmdhbml6YXRpb25OYW1lID0gW2luZm9EaWN0aW9uYXJ5IG9iamVjdEZvcktleToo
X19icmlkZ2UgTlNTdHJpbmcgKilrU2VjVHJ1c3RJbmZvQ29tcGFueU5hbWVLZXldOworICAgIHJl
dHVybiBfRVZPcmdhbml6YXRpb25OYW1lLmdldCgpOworfQorCistICh2b2lkKXVwZGF0ZUxvY2F0
aW9uSW5mbworeworICAgIE5TVVJMKiB1cmwgPSBfd2ViVmlldy5fY29tbWl0dGVkVVJMOworCisg
ICAgTlNTdHJpbmcgKkVWT3JnYW5pemF0aW9uTmFtZSA9IFtzZWxmIF9FVk9yZ2FuaXphdGlvbk5h
bWVdOworICAgIEJPT0wgc2hvd3NFVk9yZ2FuaXphdGlvbk5hbWUgPSBbRVZPcmdhbml6YXRpb25O
YW1lIGxlbmd0aF0gPiAwOworCisgICAgTlNTdHJpbmcgKmRvbWFpbiA9IFt1cmwgX2xwX3NpbXBs
aWZpZWREaXNwbGF5U3RyaW5nXTsKKworICAgIE5TU3RyaW5nICp0ZXh0ID0gbmlsOworICAgIGlm
IChbW3VybCBhYnNvbHV0ZVN0cmluZ10gX3dlYl9oYXNDYXNlSW5zZW5zaXRpdmVQcmVmaXg6QCJk
YXRhOiJdKQorICAgICAgICB0ZXh0ID0gQCJkYXRhOiI7CisgICAgZWxzZSBpZiAoc2hvd3NFVk9y
Z2FuaXphdGlvbk5hbWUpCisgICAgICAgIHRleHQgPSBFVk9yZ2FuaXphdGlvbk5hbWU7CisgICAg
ZWxzZQorICAgICAgICB0ZXh0ID0gZG9tYWluOworCisgICAgW19mdWxsc2NyZWVuVmlld0NvbnRy
b2xsZXIgc2V0TG9jYXRpb246dGV4dCBzZWN1cmU6c2VsZi5pc1NlY3VyZSB0cnVzdGVkTmFtZTpz
aG93c0VWT3JnYW5pemF0aW9uTmFtZSB0cnVzdGVkU2l0ZTohIUVWT3JnYW5pemF0aW9uTmFtZV07
Cit9CisKIC0gKHZvaWQpZW50ZXJGdWxsU2NyZWVuCiB7CiAgICAgaWYgKFtzZWxmIGlzRnVsbFNj
cmVlbl0pCiAgICAgICAgIHJldHVybjsKIAorICAgIFtzZWxmIF9pbnZhbGlkYXRlRVZPcmdhbml6
YXRpb25OYW1lXTsKKwogICAgIF9mdWxsU2NyZWVuU3RhdGUgPSBXYWl0aW5nVG9FbnRlckZ1bGxT
Y3JlZW47CiAKICAgICBfd2luZG93ID0gYWRvcHROUyhbW1VJV2luZG93IGFsbG9jXSBpbml0XSk7
CiAgICAgW193aW5kb3cgc2V0QmFja2dyb3VuZENvbG9yOltVSUNvbG9yIGNsZWFyQ29sb3JdXTsK
LSAgICBbX3dpbmRvdyBzZXRSb290Vmlld0NvbnRyb2xsZXI6YWRvcHROUyhbW19XS0Z1bGxzY3Jl
ZW5Sb290Vmlld0NvbnRyb2xsZXIgYWxsb2NdIGluaXRdKS5nZXQoKV07CisgICAgX3Jvb3RWaWV3
Q29udHJvbGxlciA9IGFkb3B0TlMoW1tfV0tGdWxsc2NyZWVuUm9vdFZpZXdDb250cm9sbGVyIGFs
bG9jXSBpbml0XSk7CisgICAgW193aW5kb3cgc2V0Um9vdFZpZXdDb250cm9sbGVyOl9yb290Vmll
d0NvbnRyb2xsZXIuZ2V0KCldOwogICAgIFtbX3dpbmRvdyByb290Vmlld0NvbnRyb2xsZXJdIHNl
dFZpZXc6YWRvcHROUyhbW1VJVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpbX3dpbmRvdyBib3Vu
ZHNdXSkuZ2V0KCldOwogICAgIFtbW193aW5kb3cgcm9vdFZpZXdDb250cm9sbGVyXSB2aWV3XSBz
ZXRCYWNrZ3JvdW5kQ29sb3I6W1VJQ29sb3IgY2xlYXJDb2xvcl1dOwogICAgIFtbW193aW5kb3cg
cm9vdFZpZXdDb250cm9sbGVyXSB2aWV3XSBzZXRBdXRvcmVzaXppbmdNYXNrOihVSVZpZXdBdXRv
cmVzaXppbmdGbGV4aWJsZVdpZHRoIHwgVUlWaWV3QXV0b3Jlc2l6aW5nRmxleGlibGVIZWlnaHQp
XTsKQEAgLTQyNiw2ICs2MzAsNyBAQCAtICh2b2lkKWVudGVyRnVsbFNjcmVlbgogICAgIFtfZnVs
bHNjcmVlblZpZXdDb250cm9sbGVyIHNldE1vZGFsUHJlc2VudGF0aW9uU3R5bGU6VUlNb2RhbFBy
ZXNlbnRhdGlvbkN1c3RvbV07CiAgICAgW19mdWxsc2NyZWVuVmlld0NvbnRyb2xsZXIgc2V0VGFy
Z2V0OnNlbGYgYWN0aW9uOkBzZWxlY3RvcihyZXF1ZXN0RXhpdEZ1bGxTY3JlZW4pXTsKICAgICBb
W19mdWxsc2NyZWVuVmlld0NvbnRyb2xsZXIgdmlld10gc2V0RnJhbWU6W1tfdmlld0NvbnRyb2xs
ZXJGb3JQcmVzZW50YXRpb24gdmlld10gYm91bmRzXV07CisgICAgW3NlbGYgdXBkYXRlTG9jYXRp
b25JbmZvXTsKIAogICAgIFtzZWxmIF9tYW5hZ2VyXS0+c2F2ZVNjcm9sbFBvc2l0aW9uKCk7CiAK
QEAgLTQ4OCwxMSArNjkzLDEzIEBAIC0gKHZvaWQpYmVnYW5FbnRlckZ1bGxTY3JlZW5XaXRoSW5p
dGlhbEZyYW1lOihDR1JlY3QpaW5pdGlhbEZyYW1lIGZpbmFsRnJhbWU6KENHCiAKICAgICBbX3dp
bmRvdyBzZXRXaW5kb3dMZXZlbDpVSVdpbmRvd0xldmVsTm9ybWFsXTsKICAgICBbX3dpbmRvdyBt
YWtlS2V5QW5kVmlzaWJsZV07CisgICAgW19yb290Vmlld0NvbnRyb2xsZXIgc2V0U2hvd3NTdGF0
dXNCYXI6WUVTXTsKIAogICAgIFtDQVRyYW5zYWN0aW9uIGNvbW1pdF07CiAKICAgICBbX3ZpZXdD
b250cm9sbGVyRm9yUHJlc2VudGF0aW9uIHByZXNlbnRWaWV3Q29udHJvbGxlcjpfZnVsbHNjcmVl
blZpZXdDb250cm9sbGVyLmdldCgpIGFuaW1hdGVkOllFUyBjb21wbGV0aW9uOl57CiAgICAgICAg
IFtzZWxmIGNvbXBsZXRlZEVudGVyRnVsbFNjcmVlbl07CisgICAgICAgIFtfcm9vdFZpZXdDb250
cm9sbGVyIHNldFNob3dzU3RhdHVzQmFyOk5PXTsKICAgICB9XTsKIH0KIApAQCAtNTM1LDExICs3
NDIsMTMgQEAgLSAodm9pZCliZWdhbkV4aXRGdWxsU2NyZWVuV2l0aEluaXRpYWxGcmFtZTooQ0dS
ZWN0KWluaXRpYWxGcmFtZSBmaW5hbEZyYW1lOihDR1IKICAgICAKICAgICBbX3dlYlZpZXcgX3Bh
Z2VdLT5zZXRTdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzKHRydWUpOwogCisgICAgW19yb290Vmll
d0NvbnRyb2xsZXIgc2V0U2hvd3NTdGF0dXNCYXI6WUVTXTsKICAgICBbX2Z1bGxzY3JlZW5WaWV3
Q29udHJvbGxlciBkaXNtaXNzVmlld0NvbnRyb2xsZXJBbmltYXRlZDpZRVMgY29tcGxldGlvbjpe
ewogICAgICAgICBpZiAoIVtfd2ViVmlldyBfcGFnZV0pCiAgICAgICAgICAgICByZXR1cm47CiAK
ICAgICAgICAgW3NlbGYgY29tcGxldGVkRXhpdEZ1bGxTY3JlZW5dOworICAgICAgICBbX3Jvb3RW
aWV3Q29udHJvbGxlciBzZXRTaG93c1N0YXR1c0JhcjpOT107CiAgICAgfV07CiB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0RvbmUuaW1hZ2VzZXQvQ29udGVu
dHMuanNvbiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0RvbmUuaW1hZ2VzZXQvQ29u
dGVudHMuanNvbgpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDgwYmU0MmQyODBkNTNm
MTNjYWRiYzE2NWQ4MTc5MmExNjZkOTBmMi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Eb25lLmltYWdl
c2V0L0NvbnRlbnRzLmpzb24KKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCwwIEBACi17Ci0gICJp
bWFnZXMiIDogWwotICAgIHsKLSAgICAgICJpZGlvbSIgOiAidW5pdmVyc2FsIiwKLSAgICAgICJm
aWxlbmFtZSIgOiAiRG9uZS5wZGYiCi0gICAgfQotICBdLAotICAiaW5mbyIgOiB7Ci0gICAgInZl
cnNpb24iIDogMSwKLSAgICAiYXV0aG9yIiA6ICJ4Y29kZSIKLSAgfSwKLSAgInByb3BlcnRpZXMi
IDogewotICAgICJ0ZW1wbGF0ZS1yZW5kZXJpbmctaW50ZW50IiA6ICJ0ZW1wbGF0ZSIKLSAgfQot
fQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViS2l0LnhjYXNzZXRzL0RvbmUuaW1hZ2VzZXQvRG9uZS5wZGYgYi9Tb3VyY2UvV2ViS2l0L1dl
YktpdC54Y2Fzc2V0cy9Eb25lLmltYWdlc2V0L0RvbmUucGRmCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCA1NzY5OWIyMjY4YTkyZmU4ODM1YTk3YWRiYzdiOTkxY2EwZTY4YjZlLi4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0
ZXJhbCAwCkhjbVY/ZDAwMDAxCgpsaXRlcmFsIDQxNzAKemNtYWkmY3tyNWNgXk5gVTdfeVdsUVlJ
T2FaTmBqY2w2NVNKdFNQJUAjQEhGem0ja1VCJGV0KChtMUhmN0ZrfmtfCnpDZk8/XyM9ZXNeYE9k
V2JLSzFRKVVFays9dTZmUzlwWm5iQiUoPnJ4eXpZVk10NyhZQ0I7WClPNk0yPDltJCZ4ZAp6WkJx
KmYwZnZJezcpUXsjYjZgbXdvVTVJdUp5QEN8OEc8RD45R3BGST92JHI5KzdxWFMhe1RqbFVgMGlj
aG8/SVoKej9FPjxwITZobFU5KX5mOT88eVJhMTY8d2BQNGQkSF5vSEtJRyFkVyttPlRBOSg+RmdA
LUZLY1poO0tJNVk5YGh7CnpWekJGP2ZIdlhQakJOWXR1JSlgOFF5IzhjeExwN0dUbVJAd1kkZnlK
aUdDY01CaXhjfTcqUWhBaV84PTI0Y2RiIwp6ciE8VUhZYWttOEMpPiVFMHJRPGtMKFlPTWk/dF9H
M05pfENyOyV9b3o/SnFSRDFjNkJ5dGx0K15zP0xQaD93UykKejd5QTZZSXdoR1hgJFkwTm5mRnwh
KkV7X24pdVQzTiNPSllzZ25aWkIrWCRRUlRqPkZPN2R1dkhSdDBhU004NXBVCnomaTx9fXh2UzZ2
Y0VOcDlKVnl9QSN7LVhZMSV+Sn1MSH1Yek0qM0pKQDgwZSo4WD9yRV89VS1HLWg+cHdMYzFnZQp6
PkJUeVF2VylUdi1fMnM/Pjk1OzhsVjR7c3UldGg1RDlyOUlLeiU+YXw2MF9yczdseH1GR1A2U0Vi
UGdpbzhNSVMKeiRTc0QwUEFuYSklb1glV2prQHFjSlk4dilQYFllcF4oUnd7e2ttJHM5V0RJbUcl
RmY7SSYqKFhvKX1qdXZ6TjFeCnpiWUNAbzNUZjtBOE1pJl9zK1g1JChzPmk5I2JvQXtLeF80fmA5
TTZZe35rU1ZBO2w0ZGJHNytkOE9uJVNQLSsjYQp6UGRFfXVlTXVja3tae0tzZXJgQ2hxKDBqMmA9
PmszKWV7Vz1RRmxYfTJqMHNhaX1MYD57MTh4aFM1TH0mND1+aiQKejZrfVkoKipLdDhAeEVZbENg
RXVGRFlxcXY7KjZpR1AtcCNlbClnSjJZbFFPem5eVHJqKCpScTdCfmZeMXl0fFBiCno4akF4e0Vy
O0BlZm5+cF5SYUIoOT50X3pSLSpXdFBDR3ZaZXElTEtma302Ylp4PjlUam1RPSVlSjc5NSFueVVa
WAp6dSRpfWdFKlRBUk1ValpJI0o3aDl6PnN4YmVANV4tYFNZQVdnSmBWfmVjSCV5QSNiJDw4WFc4
Km11KVYrcnFQVE4KenpeWmRGLTNZQEJGc2AhY3g2flZgc2dzOFpQSy0tTShyWTZiZCMkRlVMc0p6
NEx2fkFuMTYyVjF1VktJalBaT0ZECnpNNzlhWDsjfEdPO1VnVlFvM3V5U1hqbntXVVhSKEAweVZl
UFhuVmdCNzFHbjZvTnA9SFNkPDh7c3MxMlZyIVZCdQp6emFOfF5BZDM8XzJtcTx+JCgjIWs7d0lD
azc/bX5pTmJMalB0ZnpgZE1aJT1HdktleTwxOygzN29IejAmTVhUSEkKenF6TyVBXk98PD8pRkFF
P3NgVz1RQVktYCVWN0EyXyRTMXFwPi0wRntDOU1ucWRHbUJuJig9TDEwRikhJHhecWU+CnorY3tj
Rm9yN21GZFgqTnlra1cqI2FjN0MkTSV2IzhfJiZDcWh5Z314VklIIyYrO0pkSng3cUhqbG9AU2ZW
NF45Rgp6N3NxYjs+WDZwVW5RdVk0THJVPHMpb0NFNkY2czcoM3FeYmozI1I+KF9TPHpzcWJHdWxf
N3ZMdWNhMndzPTFLUWUKejI9YDQjbyN6V0JpQ2xtVUw5QEhaJVc2fU4wcCVfU21DMGo7ZFBgdXk+
SCRGYyRpMX1fazxNMDBPYG47Q25QVFZYCnpvanF1Pm9GcWkyV3B9Zn1ATmVvT2soPW9xaUBUVFFB
OUV7KHAzPnJrPEo4SEleQiF4ZmIjXmtkcT4qZylIcmUqYQp6VW4zcDxYPlN5fW0tVSleQzFUcHhV
Xjt+e0psZWlHOyN7YW5mYGtueUpoKlF4X142QzlKeEBAazZOa04qSDZTbm8KenNiOHJALS1jSEpw
aWE+VngrP2s4MkZ7dFkhOVo9YkhURmVgQl84b297QDxve18/YXdYVCpxYCYxZEp2KG5CIzVTCnpB
dnQwXnh1ZkNFXnxYZio9c2gyUjVUTyFLVEN1QiNfKElAcmJSJUZ1Yyp1RCt5NCFSVD1WPXwzZnpN
U0cyTFRgegp6KmRVR2Y0TSNVWFo+YXhVcGwrQ3ErZCZLOW1EaCpkbjN6S31sfGhtOStFQUwyUHpR
I3ZXajQrbm04U19ANF9WVnkKemBgTTB9RzVEY1deeU42e25vLWRTWSlRKTdaLXQmNUojKnR9SGNE
UyV7Z2Z3ZjZAJXJDb2RAKTkhSDkhPEc9YnNsCnpjVzhVaWhYdyZKTHh4Sl9gNH1gQ0l6RmxTYV45
b29lKkl6V0xNNHxYT0dOfHMqcyoxUlNjRyokR0p8cCgxNntYPAp6M0IkMSFIUHIrWUtecGR4UEtn
MiFZNGc9SDU/Q0d7ZGxoIytAIUFDNCFLaUhYb3VnYldKbVhRT2dmWXh6YlUpPy0KendDQGh+JlNm
MyROZn0hPGM8NlQ2QlRWMTMkMG92c081VGh6PzA0aERuPVc2Q3ppTThaX0thPjJKdWxENCgpeWFg
CnpHb00+Zjx4dllNU0x0RzQxP3ZFekklS1ojKDNzR1FaX1N3emotQGN4ZFhIdHleXj4pclY3fWxK
cXcpTUxiOzFkWgp6VzxhTWYpfDBvdmczZn1NKm14UEg4MX07MTh4UkplUHhMJG1CSDg/IUVIRU9e
WlZqcmBYej5aQENVYTstM1VWNj8KemlsbW9eVWVhPER1b099ZEJBIWZjS1duNHVlJC1VaU8wUVRq
M3YzTnhPO1haTklXNUdZY1kja2BieDBSXjtnenpWCnp2TEVWXjtoYHQ0eShVbFpSQXJqITUhQ2BP
MVdJWnEhXyhIJSNAbWFNM2xnMUQ9aDZab2RNTntHSzU1bnhTO0UjUQp6Z0QtcjB7SSF6U3BrQkcm
Q15XYjlhPDt9O2Q0b2NQbVU+MWBEJns2ODB+M3c4QG1hZHIwOCowX25wQU9FRkpGMTQKel5kMDJV
Tm5Ye1NNfUZAciVQKkZuZVVFeiZKKzNNSGFKTUlVcmdAIXpueit1MGdXJH1gcl4kUnxVVUp6UiEt
RWFiCnp0Nk9rR289MWRhTE55X040S2V3T0cqMD47UXtySD9VbjcjYmVhN3w3XjtDZ1crZjxzPV9A
X0Y/XyYkIWwlJT82LQp6Xj9JUj5MWEskMUE7O1o1aUdueSU5PzlvRURicElVS2srcWN3ek1rUnpq
RFglT1hJQTxZJSpeS1ohSXFtdVE2e0wKenFEN2h+ISFASGxnUGJ2aVhmM3hsVnxvRUpCYiFhVnUh
NSRoRkxxd0NnX09sMnZ4fHhzXjJFQ3A5fVg4TjZrKHJ+CnpuYl9zKG1VU0ptT3AtOHtSaklKM0Yh
RTg9KTBRLW12QFM3TiUycVZVRCQwNlRyJih0bntPMHZyQGNYTj1EdEdJagp6V1hFTEpxM0AkfSRG
UWZLQ0toeWAkdS1OQlo7YHtreWNWO2ZJQnFVZjhsOTw/cSFyaEcoUColRDxrSG5EUWFPcCkKelkw
X1FAUTZPRjJucDY3RylVOzVle3tnYmBULSlfcnpxe0xfT2JXM2t2Nik9TVQtSVU+Vm4qVX5WKkk4
ZXJVeSkxCnolNGJWPThzOWYlSTlYeD9UTyVGRXYxTUo0aGJMYlk8JV5HYypEVkNmWElQZEZiNS1r
QmxRdmozMWFeZ1hWZXxANwp6ekVNUCQlfFREXik3OWFEZWU4NDdXMGhTaWdtSFN8ME80bW5UNnY/
SHJkPVhraHFgaV5uN05tXmQmUTVzY1Y4UTsKejxhMUF5dSNxNUdgP19XSzhoPU9+SD1Fbih5Zl9k
eTw9eTFjRyg0eTx2eyQoKyVCc3pwczJTVXVsOXhRaU9KY0lSCnpuTzFUb0BrJldXKGs1b2ZhVmJ5
bnRZV2xjb1pedk1AN2pWdSR1MENBP1ZrNn1AWT14ZylYdT1KOSM5VGckVCRzcAp6Mi1FO3hyZE1R
PVZteTRuMylvbXNRKHFtJUZacz98KDR2PSVSYG5+JkpLYExwR194aD1qPmwwNkYrYCF6eWtEaVUK
elo7LURLUCNtTUtoSDkhbEFLJihfTyoxeCpPUGs5X3FnfUlFeS0pTF5kVnFTR3hefGswbX0lTEIy
RW1LfmV5cVU3CnplfmRGZyhBenpLXldDc14pY0V7byhEPFNSK35SaUd7Q29FbzxvcGcmYWV7VGQ+
OXNRX2pgMUhLVyFzTkYodlZOcQp6RFBGZ0o8d0ZKekJ2KGk2Q1FZQDdQUXxUUVpzRVFyMEBLMnVo
aiopYEhDYVl1d1RpVmt3Wj5gblI5PH1ZZFR6Wk0KekkrMzR9a2RpOWAmK3BGdiQwNTlZdEdxYFFm
e3JOX3dTKzRPNkQxb0Z4bG1OcTg7OEN7PDBDb0ItSEFHPEp4cHpACnpANygmUF5XezgyQEdqKHJE
Tn51X15BUzV1VC1GPGRQV0grNWlIciU/al5waVg/WWx3SnckZVVjY0QzSCRCRVF5NAp6RkZMVWxN
ZjRZMmUwWmhuVl85RHtfTjhfJS1VYU0oZXJVTnZxYXpNP1l9N1NvcX1Ta3FMMjJ6KGA/OTZVN1Mm
ZygKejI0aDY9RV5gKj1XQGs/NGc8OyNXQkY3SkQwI0BCJEZkZCZgS0k9Z35DZTRrUzI0Mn03PyVX
N3BBVUBpN3dDblQ5CnpvNUFQZkBKIVgzTmprPlZZVXBrOEMoOXlvPVc1UHNNZkh7VytSSkczWWdi
dHY7JSh4fnJKZyh8VU1PK1k/OH0+ZAp6STIrMHZwRHtfQzRYOVlpZUJiKEVwbDtNOXhROFo9dTk7
cigxUDVQRGFORE43UTt+e0dHeTNDTFZJeWZTWFNTLSYKekY0I0kpWlE9WSVCMXRuc15IRk88eWpQ
IW0/fHwkUiolWDxFeFRLYjY8SlZnOGQhTjNiMCooflM9KS1lZ1oyeyNACnpCM0N9UVp0KllPWEZm
T043WmRuJk10Q280PEs8aGs3XztwRGtOd2R2QUlkbGM9bWQ8O2chRSh7Pz5hODdiYSgmeQp6SSQ8
THtxd0l+SEhZdUAtXldJJSNtUVQ+Q1lEPmdRWSYzViYqKDt1a1Jwa0AhR0spKSNNPjt+Jk5+fjYx
eCN4YyUKej90VjIrRTNoakBURk03ejFgLXp7X3V+M2JSTnVkQ0pzOyNTXkoyK2BJT0E1ZmNZRDAo
Ul8lZW5zVTZFKiQmcm4hCnpLPVE1cSV3dSUxMlhfYEZZNkpHSUp9UyV2al9oXlE9ZClUVmJeNlFn
KzMjV0okOCZeMWRTfnVHUlZ2ISsrWndSVgp6QyQ3Jnc3YFJGKnlKOzY2UyY1UnxQdSh1allkaz44
Q3k4cDVZc19qRVhfNSVyZ2trP0A+Jj9wQGd0VlVWaCZxdlAKekZFPi1XMyRsV0ljOFBZRl9OSGEw
P3p3Y08zbk5jemt2c2h4RT5rd3M2Rm9pLU9PTnduTWhhP2BIYlZFWmNkX2ZPCnppOEokaFRZOU5r
YVl7YmQ4TmFVajNjMSkkaiY2cHA/Znk7R1Iwe28kKGxSaXFVJDlFJFNFQCNWVHJDdHo3NDNudQp6
MGFGM2k1TiFEP2dvQFVgbkR9NHZfVzF1PG5oTUVZNmRzM3hDQUElRkpTZ3g/MSRSb2UtdkFqI01l
amN8cVJeZ2IKelhUMDRIc1EzNnVeWnowPjRFQSV6PjVGSkFTa0RNLTApe34pVXtWcVl1ej9yYS1Q
MGRUQUB1TDRAOVFiQFl1flY2CnpFeUhRR3ZyPHIpRUVFQW5MWiN0d0RCS0pSNntnKChNKmctUjNp
YUR+VkpXQGlfY2JYVTFCJWl6ZE9GfTspdV9uKwp6SnR3dHx6fXgpKHtva0dYeTVucD9sKlIlTWc4
dHRIbVhWZipPTWA4fUtRKnxGRWFpeCk3dWZaZTI5PF9VSStROygKekk2fDg4NmFMaG9QXnJIKTFk
YEcpe2EyZ31qTUJeZXNsZ0YyTzFifmtwZllsUXVNMD4xNiRoc3IrPCh1N09Vd1BPCnokLXNZRypW
NyZDO0VaJHMtaz0qZl8qMmYwKGZ9RmFAZjNlaEp3UTF+RW12RFMjVmtMQFk4MVBpIV4rOVhObFV7
cAp6R0h8I1FPYlJRNyE5byEqbT5lOHhWfmFyfVdNUFYre35od2ZaWFRXI1lrViZWVHZuUiQqOHhP
YlBYcUtIUEpSPzwKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9M
b2NrTWluaS5pbWFnZXNldC9Db250ZW50cy5qc29uIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNh
c3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvQ29udGVudHMuanNvbgpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mODZkZGMx
OGQzMTBmNDJmNTJmNjNiMzFlM2RmOTE2OGMxOTIzMTVjCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvQ29udGVudHMuanNv
bgpAQCAtMCwwICsxLDIyIEBACit7CisgICJpbWFnZXMiIDogWworICAgIHsKKyAgICAgICJpZGlv
bSIgOiAidW5pdmVyc2FsIiwKKyAgICAgICJzY2FsZSIgOiAiMXgiCisgICAgfSwKKyAgICB7Cisg
ICAgICAiaWRpb20iIDogInVuaXZlcnNhbCIsCisgICAgICAiZmlsZW5hbWUiIDogIk5hdmlnYXRp
b25CYXJMb2NrTWluaUAyeC5wZGYiLAorICAgICAgInNjYWxlIiA6ICIyeCIKKyAgICB9LAorICAg
IHsKKyAgICAgICJpZGlvbSIgOiAidW5pdmVyc2FsIiwKKyAgICAgICJmaWxlbmFtZSIgOiAiTmF2
aWdhdGlvbkJhckxvY2tNaW5pQDN4LnBkZiIsCisgICAgICAic2NhbGUiIDogIjN4IgorICAgIH0K
KyAgXSwKKyAgImluZm8iIDogeworICAgICJ2ZXJzaW9uIiA6IDEsCisgICAgImF1dGhvciIgOiAi
eGNvZGUiCisgIH0KK30KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Mb2NrTWluaS5pbWFnZXNldC9OYXZpZ2F0aW9u
QmFyTG9ja01pbmlAMngucGRmIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvTG9ja01p
bmkuaW1hZ2VzZXQvTmF2aWdhdGlvbkJhckxvY2tNaW5pQDJ4LnBkZgpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NmRh
ZWQxMzVlNDU1YWEzNmQzZDUxMGE4ZDI0YjcyNjFlZDFjOWM3CkdJVCBiaW5hcnkgcGF0Y2gKbGl0
ZXJhbCA1OTI2CnpjbWJ0WTJVSFZYdSU9MkNQIVNYbUFgKkhAWGFTTDRMZXRRdExqc3tnRm9YXlFO
LXhxeDFPJWpzZkZLR0FmOzh6Owp6QXt8N1Veaj8yREApRkQ2e0xndmtvd3EwMS1PUWJ4ZHVRZ2Ak
KDt8VnJLQlBONzhJY2JIcUNDJEY2VkRRe25YUyMKekRHQzRxUHpWUmc4I2UkI25uKUwwajIlRD5D
KDsyM3NufFBWa1o5YzEzNjRRM0ErMW8+TlB2dENyNWdyfmdnYUF1Cno1anlMMSsjJnszem58eXhR
ej4rdVBadFVJZ2BFVW1CK3FyJFVPZCYlZTRVbkNJSmA/MlljYyVfZ34/YENlbFJ7NAp6citPYDRq
KilVakwxKjI9NjQ/Nm9zPzx7IVJwT303OzlMajhabEQ4NUwqeHFNb2VgKXBMQDBseUk4OHNlbmJC
XyQKellkfHxKZD98JHRsaDt7cks0dkdkdXolUDB6REBNcFdiYyE3PH5Hc2wzdjlEKlV1RWgmPTIm
X0BzTGBneWRGUmZuCnpWWkBuNz9gQ3c9M1QoVFMxPylWbSpFS3R1JlF4RlRYMFlYbENPdl59QCl+
b0dmNmkpRGRRPm5SWnJvbWAjSEgzJQp6Jis/WUlVUk92YXUpKHJIVmZTZ1JFZEw4RG82ZiF7KnAp
ZWQ0RHk/PFc4T0JFbmNCdkUtcWctQHZVSS1zX31heU4KenBXRFczVD49PTNnfmAoUGB9NjBPbCs+
dDxvP05AU1NaMm5mUEEoNGtxbkEyRUF3PUlWbmdVQjU2VC1qVzchKkZhCno7ciF8PjxHdTthMTM0
NHBFfjRVZFBMeyg9QSo2JVZaXzE5XzxVJl5LMFE0YERZQk93SlY2YiFRdCRSX3VxcU9QWQp6Mi1N
N3EhWUdrMCk7fE19eVRqKVRwQ3RUTUx8aHl7aGAkeTdUUHBSdVU2QkFHRXg3SVhHYUJpRjBmX3Vh
c305bCkKejwmTCZPeCZnJDAyb3pCKzd+SHJVMDFwTFItZnRxVT9jb1kyRk10VU1DamJpcnp6e1Be
VDtoTXVmYDk1NFY2QE9FCnpEX3RaOFYxaz1VTmQ7Z0E1Sz1AcnEwcVhuYTRSR0xrMD9icUZhWXgx
dGMobW0kUGs4Ykt3NHFHa0VsMzwwVE1xKQp6eyQ/RjdgZXBxbTkze1ZOe1U7b1Nlel5JfHU4Xilm
MGB1Syo2JV5WVGhne3FsdVIjZTAycX1FYE5CfDUxO0o/RGMKejBBVWJyeHFrJSVDO2FYYDZwZUNz
e2t9cTdmUkcqPD8mOVZPJEEhPHo4fFJFSjAxVT0hUTN8TzZGbGN2TlhmKiZmCnphMz9xWGQtMER+
Z0hNbEtrNlo3UG0/Kil0RGUxTHFwbGY3SkFZclhHIXRNSEtTQW1jbHF7SU1HUTVeemFBJDVJbgp6
R0t6JjE5JjZxT0RNbl5Ba253KXJTXkNKdHBlb0lWO1U/N3ZrezlBUHVoSjF6YnV3VW8yTExgU18o
KH5Kez5zZEUKejdrJmxyfENYQSsodT5SWVp5NW1wZ3c4RC1oSkB0dFJseDtVNSYlTDxORHE0fXF6
K1chZT1pcDRrMzk4c007T0FlCnpISVNONT1oKj9rOVZRPE5LKENiUU1IMX1Ad0xtU1ImfHBwdkJ+
bGdvYjM2dnRkaTh8UkZtQHx0ZGFDPlA1Sk1ETwp6YlhxTTkrRGdpXlc2X1FqPiYwVCo8RWJhRE1p
VjNSNis8Sm8+OzZNazFYez1VTklxWjsyP0lzNTRDJlhGOCUpbiUKej14RXZfeDxwNHZWQE95KFdu
KTdFLUIlKiZLZHpCWk5xTWY/UW50RyQ3LShIUiUzcjYmPXs5Jjg1WUctIzxUeWg+CnpzWFFRbDwx
USFURVlVO1Z2Z1hVZXJ6OVZEbDZadGUhTkxxIzZ4bEQ+cjwtMG4/ZEgkJVJrdUcqPUE2bDVHVX5x
awp6VU5qQFJUNUNLTklGJURrbDRiZkJJQkE+WE1+MUE/USVmYjctUShgLStrY2AtMEhSTl49JHot
d2EqN2FFcm9YJXYKenV8LTVjezspfiVKKD8hIUsrLU9RITBWYXFPZTlIIThzZ2N4cH52PkszdkQp
c25gT0VPMnIlRW4jK3leJlVZZ2pRCnphX1I+bCM9d2BUTjZMZ2lCaiombV98OztUKW01WHhJbEZf
cGtxT3FqeCtsX1lLMWNlU29HYUsyYFJFTHozOCQ0OAp6TE55RW95QngtOFNJVE9XXmE7d0gmJmJW
QXlAMEkpMikwTkclRXpCPHZ4WWpFQ3AzTWY9QXcjUFMjZmVCJXlibXcKelRZd3k4LWF+ej8zemdo
VT1+ejI1a2IxQF84KzErV3E2a3VYX0Y0V2o0Vy1VYllNTnhNXn5vT0g+MiRyTWVPRyVVCnp8Qzd2
bSM/Nm9nZWVII1o2dX1YOClnZD42NEM0Zj9EVDR6QnJVRVhCYkNGJVhvOTsrJj1XYXBaQTBudyRz
WWNkQAp6a3x0MlJNJEYrTj5xRiRmWShmWDdZXiF+NVJ+LU0rRW1xaikreCNJTG0xKDVRbCVfbnA/
JVhiUXRUaF4jJjNgIygKekJHez5jPXpKVSo8fChDVWtSWFZOLXx7Uj1wb2xCK0lEakJIUD9lN081
d1Z+dWstWiRyWWs4U3IwIW4lQ0ZybWtOCnoyVW1qckFmSGJweDkqOSVvLXJsNFU0UGI8aWFIUH5N
O1kzbjBVe2dedk0wWntMM2M0KnpBJW08bW9gT1ZrZEUxeQp6Kyo/c3pPTTslYlN1ckF4RTx4XyM2
WCl8d3khUSpVNnQkI3h1Mz95fSRqJEJfSnwrN0U1SXU4Mz1wVElVRjtPNDwKej5AZE9Hej4haVo3
SU5yXmohN2wyaSUtWkg+cW4+NUQ7Wj5IRG4ya3lGPmVzP2hnZl9fQiRzTz1DKzwtKEJ4bH1LCnpR
aXdDO0FVdD1+RmBoa19zNmFWMmp3WUErVTVza3tvZithWVZPajlVbWwjP3VQbHAqclBhekU4Zzl2
cmR6KzxiJgp6MkFZZz47eD0/NUs/bkVwNUNnQkM4RklhbF5gSDx4bWxoKz9XTUNPPFg7UFp9aWcq
fmxCRT4/fVQ3VVR+aXxnSVcKek9ReW11VmtJT012X3NMPWZ5PDMmciNMc2ctdCYmcnVpdjk+YU45
dW1VOUZgSVU8cUtJaC1HVzM8QkZwJkNVTHcrCnpkLVZ+MyEtKyRXail7RHB7M1E2PzJUfD55PVAo
Uj1ENGxuY0RUMyRLZ0pKcGlZQWw/JDY2d2BLSVQmPn5jdjh4UAp6XndiPksle1prd1lweTE/VSQ9
JiRGQiE/MSElOD9aMFR3e28xWC08eis/QDA8YnJ4bFhrejExTEA4ckRZeWNQM3cKeiZPVWVQSCFP
VHltMk0ySFFTdyohN2xJfj1CeVQ1QXctK1pDI1hCWX5DO0l8bjR+TFJIbFB2QEB4aCQ+KnNERkVR
CnpUdUckZUFsSU45bHY4U3VyN342aUt7YFpESVc7Pjg1c3BZakw/R15lNj5IVzh6RTIyQnM1bFFS
a1h0UDYxP0Y5NAp6UXN+UmA/eVc0cFMkX1I5QC15ZlA2cTArP20kPXh4IT9zWWZMeEJWJE89aGBn
UyFTN0wlUmNJeWAyZSFxN3R5KCMKejdvOFlnOVVaJFpJYDxBY2pVNSQjWD5XZXxvK3MmbSpNLStG
aTlOfENpNytYKVAqV2NAS3RHVVA9diladjJSVSMkCnp6I1Q+JGpzXnNhVnpCdkcma1N0M2gzTShi
YW9BRjZSZkpGRnB+RH1JT1ZVZTtPc1B6QE9xWkdUblVZMFkjNGV9MAp6cV8oSGRycH1BRG1mSU9x
eSYqQjRISipRQzRvWFR7PihzTFdtUEpXczZfPjIkMy1yazNqdWxCNFRSa3JgdzlVQ3kKeilfdVYm
TENeI3VVdHdDST4hfD9LNUhifDljJldYZkM4TTJMb1M5bih0dXFQdVNwTnl8KiltRSN0PkpsQVdM
NnpLCnoxRC1Rd2IqKFZJc0UwU2xJN2d+USFzX2p2JFc1N1A2VkIzemJoUU12bkQoMnghfk5yV21R
fm50RVZiakQ5ajlvSwp6U2FvWjU9QCVvVDdiPTVLQl56KEZgUT49MDlxPl59TTtTKD9HbUo0PEBV
UWFnM019KXA4U3htQThha0lSbF4hO0oKelpjMjREdit7MlpiKHBwKT53WSNpX29sYyZWOFd3cilu
NipydGFPWl9gY15lfG11OHAhaTFQP2NDTFFKI1J6dEhsCnpqUGM7RTQpen43eDRiWV8qfVdNKE9+
JlFSXntQKVRlPEl6ZW8yVUQxY01jVWI7fDYyRHokSjlnb3ZCSXxiaUFPbwp6VjY9c29ZZ1dKaFh3
dE90QD9xIUFwX3FBKENnLU5IVmQ7XlIkfEY4bjRjZDVVUk9gZTEjQ2F3eG0zZXNiJWlIbXsKelVz
ZmRTQT1WdyVeSlQ4Zk05OVIqVCZWU15FJUYhSWhvMkNnY3BRI3g0e2dqSjRqc1dyQnVITFJFS3Vm
PnNFYDx0CnokeHNQWG9Ge2NCWD4xXkRzSl9RMClOOD9FK1JzM3dhSUVNTmEpVXlRK1UoKz8rYSpE
TShIRVI2LWooYFpjZkNBRwp6MVE1emZpY1F0M3YyREY9KDVNJiY0RipxQGM0KUttMFE5RF51WDNg
b016U0hsUVEzQDJ2fmVgeG5LVDAlXkY/MHsKejR8S3NeQDBkb3xedllNdD1gfSRTKD8/fTFwVjRu
LTNwJWhSYVRYMG1jWChOdSp7KTJgb2ttPnZQJXhgbXZTYWJpCnpiQ3pUJXV7IUsxVlpNY0xLNCNO
d0E5KTs0a3t0WHh4Sk4wdSR0PVEzdHdpbWorQjZZTns+YE5PWW0yUipuU3pJTAp6NHw4fSMzVkk1
PD8xUmhxJWxqMDdAV0BnPUdaQVU3OGxndGY5RlN0d05CZTtfe1JgUTBKQEp+e1pibWxNan57JX4K
ens2alVHQk1vQHBoXm94dF58Jm4qbmZYej5eVzVDZE96TW5GJENkVyZfTV5MRUhlI09jd3pWR0xM
WFI4NykqTll5CnpMazNHc044akRARzs2NHVgbEVJXikqMFplSTxuRUIoaC1BWG9eWGpBQDdJMitV
MFEydFNHR1JhcVZQXlpkI1htRAp6K2wwb2MrM0JMdz5YPVBndkJQTEd5THJ6YWg+b3czVXR6IzYz
Q2p+a3s8amF0SShMSXRZd352VWp5eHdsJFVWUHwKekVtbXpDclhZO1dNP1JISW5pYkQ+WmU/IyhS
TnIyeUhHckdrdjgxKCt3VD4rcGUqVV5me2lPcVJBYiUtJERUcGFICnpiKl5UfndfLUtAYkw7Mygt
R3A7TUE3S259R25vdTRKPEkhbXdtbUohVnRNQ2dfP017e2pvOVZ2cksmcEgwRSs7bgp6Um5eVVNF
SG5nfipaTHZXZUwkKnoyPVd+QVEyYXdvTGQmYl5KRlRkYiR2K2YqRkJDMG1pUjhUN0N5fUAreCVz
dHEKenBLVSNaYG9AVE5xPGBUZSpHY0I/K2ZULWsjI3dgMzF8IzApaXJmMllgYzVuY19OOEN4ejlK
eC1jSXZraXlfPUYrCnpfUiZAWTh7ZDhMTnQkRyk9aU0hWm1YT1Y7MiokQU13PXB0Ujx1a3FNQzha
X2Y5WU0pMiV7U2tuM3IxXj5qYGZwXgp6WSlkNH5yMk56VVlnUil+Vmdefk9HYWd5MitfaGhQditp
ODg9dnNGMlh1OX04RXZmKGZxMWxucF8tPld8PzFSJkUKelg1eSRiaGlpaGh6TmhBMnEhPDBpUGtQ
Ny1Ydzc5aWVJIW9vUE9NZ0B2JC1mP3ljdmJFI1V9JiVMcEI5OUoxYjl6CnpFVXsoYnd5fmo9aWJB
SkoyUU9pYnF9VCMxcEd2dlA2MHtoS2pYc0RUXkxlJD95d01TeismM0xrJE1meSZVUSRtewp6PTNV
UkQ4ZTJxcih9cld1YSpDfF9gMTR4SCFAKnRXZEZ6RmxLMlE3Z1haZXhpTVlYY0tLX14qOVJ5KGNu
aXp+MncKelNXOyQ7dGZ3RXZAczx+LXYoNFBaVWh3d08/PnBZXytmZS1lUiMrUz97QTwmVD89Sjgl
VG5uUDZzSGd5VUx0NWl8Cno3V2BoYD8zV0pzS2JsPGQmbzF9PnY4TjV1SHdrQ2Z6d3w5cHZZb1FK
eVlLVVdLKDFtOWhOb0tOP1p2VVlAPkcrPQp6YSEwMXVCTGZXYldyPk5fb2h1eU9uIVF5MXkhWENG
NzFnVEF6cG9KPnp0YCoyRmkzVyFRPW56d3h5O1RqUXw9fHQKenlgeDtRRFYxbz1ZMj1XRyNRSlRZ
T2RPISpHY1JXY3ktfXpzSWw3bilZIXI4RWY0PXBsJExlR0teQEdLJE91NT1qCnp7TGMtZjZTfSgz
LSZObyVJakoqfGplfikxYkZEZTgtJHVQLT0wfEcpeDVtaDc0YSluMGxOWGVOJHtmYlpCaEd8Mgp6
en1QQzVpSzE5U1oqcV95WFY9ZSloc0swNWpfISo9NlMyKXRDOF92fWtgJkgpayRVO1AzS1FDIV5x
fHFJaGIxdDcKej5ETj08VlJzeDxQd2w+PD09KDEwOW4+M0FuRzRZPithMyphWiE3RysoJkE0MnJj
UV55aThPPTZUJD9JRmF1T1EmCnpRdFZCTENmUCpFWGI7UFZtRDBFTG0/YnxGRk5rWlFIUn1feVBf
e1pGYGBvSmlibHMlbXZkTX58KC15LXttYzxuXwp6LVFyNj1ZRWxnb0JeJWBuc0JsI3NRS0B2Qz9x
Wi0oMlpifmBQRjxONU1pNUl9WElefVRMOSN4N0N1UUt0aDQqYz8KenQ5bjRyRSZBaXhXWGlERF4q
UXgqWGxiNkVhTnZuYU1PaXdGVmNSRFdjMHQ0fGlIYXZhUSgrLTE+TjJGUGNUIXheCno0IVhfWG4p
Y0U+bFJBWCkrTmZfSio1NmRFYiNrTXJfUGJQV14qPUJTWVFMQUZPNE1pej0hbyZ8ZmQhP05QeDhe
Xwp6R1lLSHsrbj9VbDtmQVYzZWxfTzBAYVZqSz8pfEEhRz5GQzF0U2goLW82WU1MbGxxfFJMI3E0
MylwV0NCMSFVPE4Kekd0WTl+Vyg3OEY7dGJ2JHZmOz5PLUs8TSVPcF9sXnJ9TlcwVmpnNU5Gfml8
KzhCZFJmYEE0ek9NeVBwS2N5PmpsCno+YzNqcjQkQk9BR1diP3FqUFA+LXNFPVloIXJRS2w1am9V
X0dkYzVHb3smWnw4SV4/OW1oaWBseDdfSHN5aUl6dQp6V34qZ0Z4fjh8Wlk+QWlpQFZkezh4aXN4
RExuVyhXYX4xMmJ0M1AqOENLMjwjMl45Ni0qZGUyKTR8encyPX5ucSoKenstX1V3bkxiSTxRZz01
SEJkXiU/SzdUSTRvR3RsUXpgO3tTPWNJSnNaJWQhQGBoWnM2e1pgNzFgJFpgeG0jPlNnCnp5XyNa
YzM8JG01eEU+LSllSldUWjtMcXoxT2l6fGM3RUVMfWl4WDcwKDNudFgpM0ImS3RuUH5RLVFeSHdi
T1VaTgp6XmJIaTNSdCFCaGw7bE12dnB0JkxxQitwXjlAT1hBM2NtciZwRGA8U14yQnpmcTRGeHdK
RzAhYD9uaUYoaEZeXygKek9rb25sNkROLWV4fXRfNSNNXkMjSW54e1YqJU9GeT5neUVGPnhufUo7
VVVCSDhtTj50ZCtAZnxNMXZCREg5R0c2CnptbiU7d1pqc1ZiZURReUR6dUdkYkEkNmhhP0RpRHpB
QDhpWD9BMk4+YGwxMD9zX3tEbnBZTWskdHxXMzllXldLKQp6ckl8e2RQd3ZmTnFzVnB2N2pmQDky
fkQyNUU3eikwKy1rI1dvcDBhaHo4aCtIWVQ+byN6a2E4Y05ye2k0cilgPVEKejY2IWZpeW5hNjJT
SGJ5bCpJVWBHZ1c3QWEpcVZGUV9HK2BaJDFQK2xqM0p3PiV3QUQ7K2clM0JuUl9QMVU5Xih7Cnpf
WlJNY1Z8JHdFcn5lO2k/SDgyOzIwPGtNRUxuSj47a1VaPmdRNUFldUhvREFVO1h9SGdwYj5RUSNn
MlQjdk1sawp6O2tYYkRkdXVsd1hZO2Q0OytjenwreiRCZjxqeE9eaWZ8MHYzMSQwKE9MRkB+QXtp
ampadVRlX2ZEbCt2XnpZQ0EKenM+YSttO1pee2NGMkUxfjFfXj9OMTtxZmA/cj0yNTJZe29BelZs
Njk3QGp7VHtsKW9rRF9zYGBmZ3ZDVzckaHRMCno1KkNJU2dGc3hrJnRJQjxeQjJjJlNpNCl7Xyh8
eyZlbzA2WE1Ad1JHWWZ7MmY2V3x9emxGJl8qXzF9TzA8KjY0TQp6WCt3ISl3PElZK2U7eHBGRik8
TV9mRFBjTU9pVHAtJEFMY3BGMjdfVFEzK2dUe3dXZyFMNE1jNnReZVA4QVdgdygKeldudlB6RWRK
QTsydCpSTXtDfjxvO3Qtc2x8Ql57VWFNMWE7TyE3Qi1WanoqPG8mfCRgVXlCSWpfYz1yKU0xSiM0
Cno0MX53WUtqIyQjaX5ZNzFGPH4le3IyM2JoRnl3REJ6QFh2d1BEdTIzQD4kcDMyYlZXVjk0Q2lE
O1pYWE1vSyRuTQp6TEUjfCNvdGpmcSFoIWFONzFCej9USEZRPmxDU3xHQVl2ZDx1cjxPODBrI3Bi
aENtUS1ZZV5aKHw2SypnUk58b0UKV2hRVUdkSX1wU35CcVMrO0t4TFE7PF5LUSFPNz82MwoKbGl0
ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNh
c3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvTmF2aWdhdGlvbkJhckxvY2tNaW5pQDN4LnBkZiBiL1Nv
dXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdlc2V0L05hdmlnYXRpb25C
YXJMb2NrTWluaUAzeC5wZGYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzliMjUwMTEzNGFiOWUyMTJmYjhiMjY3ZmY2
ZWZjZTUyZGFlNzk4MgpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgNTg4OQp6Y21idFkyVUpyX3c1
MTlKTHt5M3RBdElyZDFRSC0zeSpFUmJqdFBWZyE0U0Y7UUhuSGFCNyExUDFROV9MbC17SUUKejZY
X3lOTTU9VkAkV0t0LV5GN35NZkJwNkVOXlV1Rz8jIUlDX25tY1NnWTtDP0w/RUlQMDhxbyE+ZVBK
QitULV5QCnpPI21ubTQ4KStFMFQoWDwjZE9mXzRtZHwzajlAWVZpbTVyZDs/UCphKWZJX0R0RHRR
JGM0KGxTOUthS1lNSStxKwp6ek5BKExpcH52U3kyQFE5UHRvVEN1VXducUNGfDhXY20rcU5iSGxH
WDQke3hfVTQwWHhwdGtDbTZeQyE4XndDZ2cKenVVN2VfQ2p+dmZqalRWWmtCYCstM1haQ3Q8N1lq
Nj5vWTcyWVNKI01SN0gybiRRLT5+NzZzfjRYZTNBVSZydih2CnpfUXp7eiVuSUhxWjdWOV5OSHNJ
TDZQTUMoO3JlRnhqKSFBTSp8UTJvPyYtXlVQT0w1Izt1JXs9QE1WeythYVl+LQp6NFl5MG9KWlVP
UU1rVnVDbmFufTJESG5aVG9uNVNwVDQ7VyF4KXxPLVElKWFiS1FPRSNhKCNWaDVafHVyRUxBNWQK
enZwNFY0XnF0MExKb185RShfWkMtR21YdTFffVV1eHtkP1hWZyp3cyNtdkdzTjVAT1BkTUpKTDsr
ZGMmWlp+O2M4CnpOQGlmKUV8T0xqPDV6Jkk9UDNCP1gqR1opLU5HIXN7V0lSU0NnVUdmKnpARC0p
fH1hUm1UTXZrakQjI30hWV5qOQp6YXZmWU4+bG9QbiZnOzl+R3tyTGRFKmJ8d3lXOU9yRGRDUVkx
VHA9QHRBd35UdjV8Tnl7dUBYfWVqYUZgbT4keU0KekBRZypmPEE0JUIwVyZ+KlYhV2BuWGl1UXpQ
bEdiWDlZPCpRMVFKMGVBZ1lWRGIzIVUlZTFSNVZmJm41ODZxbUZECno1RnFfRTNofUtZRChHUGB3
dVdkTigxSXxPaVc8LWdENWl7WSNiNkNSa2hXK2JrdEBvYzVUTWp5d3ttaG9GO2ZKfQp6OEV1T0BZ
KkJOQTBIdUdte01JfHNia3pHVnFRTVdueyohMjhLZl5yZ1NJcDIwZyp5eWY0VEUoZmFGVEUpZEhe
Nm0KekZ7UShaTD9BRkFAaD4zKGxtSFdeYCokKVIjOSNeMHQ3OT08OSl+a0QxZDE3OWs/eCl6Tko5
RS17UnFKcjB3RUJoCno3ZUd1Q2h7SmpqUW1ZTkxONGswdjhVR0tgM21IKXhAZipFfEtgQUZLRFEj
YFI9Y3lYTmw2b3pxWXFlMXhBfFYkawp6JCRgKmZKclk0TkVue2pibndldylKSFoobDdJckwlPDxe
dHFqMWRWO3hNO2ZDIUNzfDAjXjtpez1OTCNEWFBDR0QKeldCQFRRIzhnU2NqLVdZPTtWNjZtSCpF
Z0s3eEZ1ZWVuOX5GI2hwdDg1e1c0aUtYYFktKkE1Z0BMMz15ZHE3QnJRCnp7YFlrdF5gNEtCO1No
NkpTQ3YlTmAlfk9OJl5udHg0ZSoxRTFgfnlUeGFKSyN2ZH5+Jlp4dT40IyorZGpjMUU/Tgp6PlM1
ZnJzKkpSXlpsVlRnUnZHa34+aHg3cXIkKFkmWHFOSX1Zb2pVcSYxUGRtKDxLOCM0b21vZmF1VTcw
bi1wKHgKenJsZEVaPjg2Wn1eTDNWfFBQYTh8bEFVMjdyOGd6NW92XnAzUH5URF4+KW9yOE8tX0VR
KE53Z3REMDspTFZwekNGCnprSnEjUkFUVyt3Tn0xO3YyfCU/Xl41Uyh+bU1PQmtoREQ5NjtzK0co
KSlOSzlMbX1lSz1gPFA3eGhFVDV4TmhXcAp6Nns9e3hwVHpxbW96MU0xd0cjUiRzelByeDF2SFR2
TVVpZktBMmpaZWQ1c0VQV3UlIXhHUFRMeSkzZnpaaFhsLSsKell8fW8/bzktR2V1RkEtfDdge3FJ
TFZkUlpVV3VpVCs9ZT9vQkpzXzNfITI9OHU4R1AlSWRJPTtZTm99MFhRancrCno4d0MtJVRkekJE
K2dHUCt5X29JfW5CflJgJXNvfDdrZU9TdVc4QWxWaiZJLTBgb0I3RSo5P3R1VU5fdkFaU21oVgp6
VWcySG5kWlpaaiRaWDdZO2tqNTlHc3k7emBHZDFYKXJyTz0jY3N6R3JZND52bVZoTHlscUFLWTU3
IyhEVTlJQ0EKektHWDVoTWxMTTRkWGxFT2h6aVh9P1dXenR5c0hVP1p6aWBiP3daSkN2JmFYWCpK
UDRGdDQ/TC1XTldMbXg2eyFsCnpiPW1FMkc4fDBTIWtzIT0+eENidCl2fk9GJW95dj4rQCVRKWNk
UTd4Ny1Ta05ZNmwxbz8zKU5ZQmdzZF9kT2cqSgp6KGIzQz4xUm55fEU3aGNHIU5gJipwQ3sqV20t
aT5iJnMjNyswND4jKGpgP3ZmSlkmVERlQHlSaShPTzJoUHZ8SWUKejgtQ3JPaT9QRmtHSzUoKCRB
VnEhJFdGeWw7VHs4Xkw4NCRYO1Zae0VaYioyTGp7LUA4WiloLSgteTt7KkFhaGNuCnpjJT4qZU5D
SHJWNDNjYF5hYHF0VTRmMjBhYXB8VXskMXpLYSVlQlduWHo2YUtEKiFfNHc4NW1LS35CXittbD5F
Ywp6NnJhVTFYUHJuXj5TdGcjcn1rNDspUlNmO1omVkpDV3IkYlVlJFZeI2pOcStqPkJAU3Q+KnNO
Nzw8d1RVYns8b2AKejJTU2hTbGo0STwtWTRycDl2PnVtYjdRRGJoSiN4RFpRSG50RlZqT1JtZkdQ
N3R4eyQ9YGpXUlM2WVI/KiFYWStxCno2UX50aHNMOHc0T3NVeWRSRnE7KGN9UCM1YkJXezVCRmp9
eGlLV2tDRk5AWlF5WlZMdlNYZXNwe3UkO2IqMnlybAp6czBvd192TEJAZD96P1kkLSRhTXl0RTRA
SE05fXVsQyNiJWMqYHxFWTwtS1ZuUGQ8bmlYKXc3R2JIJD1DPV9VQ2YKemF6VGNKelBYbjVHbCQz
WihsZUlnP3l2JWlrYG5fXzYqdVBWazVCTmZfKk0jekdBYFhiUVJsZ2d4Xn1KXzVYY2U4CnpJVHBq
IVJLcGliVkB+MDZeVGZHKEtwc35mQkwrNj1ZM2x2cGxXKEU9S35FN2w/b2JCNTIxfUh7JVI3VUxt
Nnt5OQp6bWw3Qj9Md1EmWGNtJEcqZ04hdHR4dmg5KmQ4XkpQdnxnfU4kRFQxJHV0cFR7cXljUn1D
KnRNeD8oKnw4QkQ2U0UKem00K19Dd2FPSXk2I1NIKjcjeDQ8LWZRfm9ldERgbnFEbHA/ZyU/diNr
VnNsZm5yekthJGN1QUhvS0ZlPkE/XismCnpgNlN0aHJ0I1VGMylLM055O24tNlUjQyFLNz9mRlBs
Q0N5VXs4bHpaUSNCPGM1cF40dGYobDB3M1dQPnxQLVQyagp6ZTkwKzl1RUsyTDJoZnZxWSlVOyh7
NjNUeD5sUj01aTJldlp0MWd3Yitta1RjeFh2fEd3TjhUdXApSUVQciNQbkEKenJpJEpmOUQ1N0N2
TCNgX2BYbmtMc3Y7Xzg0Zj9nTFlxRCF0QGBhUTJMOFU8QXd4R008d002YmpgJFc+am19ZmYxCnpt
X0VrNylNc3diNVdRZSRVVDM4OWtuP1Z6WGtLKHpQTTZRNHUyZFc3IUkhPFR4eChecnxJIWBqQEFZ
JUNhfHZ1SQp6WX1JVjZZe3FPISY/WHBiaWhEfEglMmRpVXc3SjtQb2MxK15gSVB6ZVlpbj5+QD95
SkBKKlglV299T1J1RWt+cVYKekVeOCFESHNBSlhrKlAhR3JKfk4kUmBIQDFRaT4mKEM1QXBxMnlI
UF9GYEYwcU9YK2dAWTU4ZWNIUj80TWYkd1ZICnoxM3pBZ1JENGtQRyg5NHsyS2ZrP0liblBMU3pL
UFhWNVdKZE9wfjxqbzJ3QmthKzRPa2gyZzIxQHRWPUN4YHU8agp6cWVmVEN5TmJLJFQpc047TGkx
bzElXjhLQyUqPnZ2XipASCFVdT9PUz5HeG47aCptYnpHJX1UV2d4Tjs7bzNOcUMKenlmQnhVZkVs
SCFUayV9c1BXe0oqNmM7Tzdkfj5NdHEte31XX1E9PVFgTUR4di1aa0l3R0FVTXRCZ18/LUQhTWw0
CnpIQEo2c2NPZ2A9VlpMRWlecVllP1p+bHM0ZUJhNlduVGdXUW04ZU43ejV1P0xKKEBYVnNiLXg1
b3lSKmZZM1cjJgp6UyRhanpWN3NxUWx5WUY+TUQwWVFZPHhZXmR5UiheQyhZK34rSTB0X3JAYjU4
OGIkX1hoeFNXJWctJlJuaCpPVmoKenpNR1JVJkRLUzBlTEx5SjwrI2YpTzUhKEJPVV9GPGF1Pypu
PClZPElTOUAzSTtsO0wpYCgqcHhKMG9pWSVoTmpwCnp5OWYkdGlzdipsZkdpMyUzS0o/aFQ1KzBG
bHdLNnxiKTxDX0hAVTw8KnpqMlBHTHRGb0RTTC1wcT1DXntHM3xKcwp6NWZ6MyQ9VXduQ0hUSiNr
PnE4LWVRZExvSXNMK1VNYE91O3M4T15OQz80I0RJLWwqRUF1QiNmTG54dnxvV0daWXsKel5oR1Zv
SlBNZEMlZ257ajZ1eyQrJkU1UGtxOCZFNUBFSV88Q0BOdWp1Vn4+VF9Wclk1VFVTQT5PYFh8UUt+
OHFBCnp2dHRZZztpdW9gUFUjZV4rbSFpQ1E0QXpoZ3pkJnBId2pIZ3VVS3VOX3U/cCRmP294OXQw
WG04aDErVHRYZmtPfAp6a3w3amRrOSluY1NxPUo8ZHBHdU9yaHI2bGNXI0dNYVBkfWdqfWl6T1E3
QnwzQTxJYEtSdTlidEUwQDE+PlJVOEUKem91U1lqcl5EfVFXP3ltdCZKVWdNOGN7cUNLKTF8amk9
MURMSTtmLTUtcyFpV3tKUT1uPCVAZ1UrMTluei1SbSVXCnpuMihvM3dmQiRFeSprKlUzdz9lX2V9
VXoyKihEI1Z5N0d6ZCkkPWlLS3NTd3s8dTxqcFhmKnFuZCZGcTN7JHVeWgp6Pk1NPiNPSkFGbSU5
UWpjc3pmPzE9dl5DS25Pd2goKmNhdEg0PH5WM2NZakI8ZVVBOHkwRFgjfEEyWSpXLVgzWSsKejI+
dz59V2FHKU0mJHVfVyYhPl51QC1AP0JsJHJJPWAreysre0hnWlVqTWI4ZyVMfjtlTlE8amlQQl9L
YiNUMUpfCnplTzBDUCFkYm05WEQofGxoJUZ9Tll0PnZwJCt5JngmQkZzVlZ7VTt4cXx4TSFSQzFo
KjlGPjdCbnxkeiFpZilhXwp6UFpRN1V5WEdfSSU0LXx+WjMwIWtYe15MYHNmVmFQWD9gMnkpaEUr
Q0FvVyEwdUhAVjNfQDxZV1NEUHtXPEtMQTcKelBVcD8pTm8xQzdRQW5TSXVZN0xhOyN6dHtjWDd4
czB7Pzg1WiRFQTAmM3AzKl5ZczJ0e28heDJCJUswdTA+KS08Cnpeclc4Y0pTIXNxO05hU04pSkFl
aihLYHEydURETDdoWSNSc0tHIz4zbm5HNDAhJiQ7RVQqaz9qN2t+TVhUMk5ScAp6KzdeYGIhZ3sz
KW4+JD4heUp3dH49VEhFKmxFSjZxdEc8UXFOQjQ3OUppMkdJYU5UTTReXiNsRnRWaHhReX4rR0wK
eilzKjxAOWpqZmooVCNIYSlTWko9Y0pqeiRKQnk7IzBTREhmV019Y0NgYHVLekMjPmIke2lYTEVf
aVl5QEd4emBxCnohQUg7Sl5Ze0M8MkpDYUkpKXlXUlQ8SSNoP0dPYE1zd3tTcHhjdmZBUHVaMipD
OFNvWUhtOURpLVc5YlNIUkF0cgp6eT5Zb01EeWU1T3EoPFAhbzZXQFR5dEx+K3lIeVVUKWBuJTU/
KWhZU3Q8azV8QFNYayp3YHNlWEZGaWdeT1c4UlEKenFqfVp4OCR0VyZ5U0Q0aWFrQzRFRWt0NWt3
N2t6WG4hUXpEVU5gJSVXMUdRaXlNST1eaGgtP1N6Nz5+Kmgjd1diCnojTygjcU0lYVVCRGwwMT9K
PCljKyF5NDhBWG0jV1JgSCVmOFZIYT4lQGMleiorN00lbCt3OF8/ZWs4ekswVHJEKwp6QU54ZUls
JmYkODcyMG9ATXhHUj5TUkBwP3UpUH1VVl4lQ21OVSY+UDtPVyUpSyNMYz1gOGhKTFQycnlJTmAo
NjYKejJtaVckcyRHTHpKcmtkS1pocEM5VXEkfFApc2h2TjFVcF9jPUxoSm5ZaXMqcytuREp6KXtM
T25OPnY1Qk9jfGhoCnpOemN9JnREbX1VLV8+NSZvO31Cd3JPemgoKUk+SkVxd35+dEM4MmAtOFZt
VlkxbyQlRnFVK0xTT2N9Y3tSdldaQgp6TFJEPjIrelQyJXRyQXFeSlc/RWZFVkteNlJXZVQmJHF9
bHtMJW8rI0owJSQhOW0rRGkxeWZKeFlKM2MqNzB5ZGsKeklfWFI0ZCtsWUkqeWd4NXk8Uk9NcDha
cD1rP0swUE9UU2kxPVVMQHx2YW05QktkSTZ6RFpRZSM7VUtTO1hQc3g4Cnp5eSN4bjd6ajV8S0JC
UEpyd3hhWHRLV0Q1ZG1XLWZIQzhhKCY5UTgmQCpfMlI/aXopIWwqY25XJldCVz9UczNBKwp6Uz47
PSloS1lNYzwwVX17T3tWUH12a08qK2BEZ3EhVyRNTlhtV3lYRnc+MW8pR059YUwqJkFrVUdfdSVP
RW1ja2cKek5lcD83Yl5janFjeH0jbGFeSigjbGBSaDZqNmw0cmpDKWZfZlVzQSFuWUFAb1MlTE4y
cG5aI3lxRXJza21pSDNlCnpxTnRiQkJAZ3s0IWFeM2I8UzAzPkNjOGhfP3pEYm1gR0chTFcoT2Y/
dWVGUj9kUkBOUSZYMSt0PlFLQVhkJmV9Vwp6Xj03Z0xTLWtfV0Uhd1hlNSVpI1ZUITxsdU8kMjQh
YGRIVjFVdEtmZXZwTGBDZCM5WVRaY1ArbyE1bHRUOWw9RmkKejhHXnBpRFIoO0ZyZytgYG1USHgr
Z2YyWDA8eD8hIXNLbGpEe3ohMTBZQXxCbkYjWElUK3hXWUskKCs9LT1zUmdfCno+YDNHcm1WQDB2
O28rfEFBdiVFdGZlb2xrP2RLfkZnS2A1dCVtTCswO24mPU9URWtzIXdfRERSa1U3YGZXXilzfgp6
dlFIVm9XPnllWlRfN0FJKj50Z3ViJlhRRFlQRCVodygzSisoVlFVZiZJU0szKjBMd3xtYGdjTDhf
UEtkSkBFV04Kelg9TG5NN1Y0TnZiTFU0QEo/Tl9qWT9xNHJiQjZ0eXQmQXhXPVE9dzxJN1FgLSVB
QnZeKT83KUswPUZOdHhGeDByCnp7RnI8SHF6N2N7Kks0Y0Z2WHolPyFGb1lyQCNPP3BlUEhQMmBs
UyRneCZ6VEY1eGdLQ2wkcz0kQiR+aSY2KVVQYAp6cWRsZ0ByRU9FWFFfJkZ7dSkhbkY7dDUpMT8m
LUBmRUUlfE8zS3pzQWFvdzktclFnPX4+bypveXk/cWdzXlRuI3IKeil1KmZEMHA+e3djNzJMSiEp
dz1iK1Zyem93PFNXRmR+RStkTmtgPE02IX1fPFkzQWd6UV5wdS1sPG9xSitmdT9uCno/KEw5NE1y
fTs7cTchN3pZT0dFTCVvIURYPmVKYldHP3lxKCgwc3oqeUgjPUpMMCFzQiRNTGxaITV6VVZOJT9j
dAp6ZTJqVTBoIXBjT2x1KkZpM0JFKlhJbFFHTmBgbmpPZ1pFeUk1Vk1GQDVxQyt5dE1McyFoNzBH
KmxSY30kc0AqUE0Kej83U1o4Y3dwblppQz88ZiUlJnA1K30kJENESFpCN01aUjxASDkqUGplI2Fh
NikkUXVAdWUxVS1yOGxlN2BBMlEhCnpPVSRLS0lONXo4OW9JVGM9Rj5KVUA7Z3E5Mml9XndgR2Yw
bStCTV88U2t7aVQ5MCp0bntAMFI0UjJ1JFIqTTNTZwp6ZjMwaThaVFpvRHw4Sz58XlM/RDVxQiFH
NCgxOGVJaF87aVJDcWM5IT8oXysoQnZIRWZDR0ozZVM5Z0Ipc0VvdVIKelRgPituI1UjJW83MENw
Ul4+bzZ4MUh+WXMoQkkhYlQ4O1Uyayt3akRBPHpeRTBnRlAhTVBXZEZGQy1TezQ8elZCCnpoa316
WVBUO1JXazM9N1NsPyZvdmghamB+MHY0QTVPTUBsTiFDKmVaP3tDbEY7dzkpQ2MzIXB3PUBJZiVV
PW1YJQp6RDJfUDdvSyVSPzFWT2VzVC18anNjRTNPVzlqUHhDWjRWJkdUV3xwUXVMQ0Z2Z0dzPUVf
UH0yQG43OTw3WntoKVQKektlQjxMUChzJUtYQGh8IXtgM1FqNlZtJW5LUUw2QjBOfXJERmVtfjNm
NyZGWkJuanlNKCp+QjVBUDdHSHZjVis/CnpWZ0IwJkJWaFBYODt0UHlaeU89U3wxbUR+ND9oVmhf
I2QlQjtabEZoMXFMQ2V7OW9manIyb2hQT3FgSjZ6eDs0bQp6cT8wUWVkI0VjTEl7NmNEZ0ErdEs0
MkhuY1UrU2MkeUZHP0wqK1ZjalJTMlpMRDJ9djROfXx3NkcoLVhrd31WUTsKb3BtczxpRCZqQns5
MVJDYyVLYHAobSFHOGYjMVNaWU5DWDF4O3M2ang2YD08QkEyaTB9U154azUKCmxpdGVyYWwgMApI
Y21WP2QwMDAwMQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329883</attachid>
            <date>2017-12-19 20:00:21 -0800</date>
            <delta_ts>2017-12-19 20:34:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181006-20171219200020.patch</filename>
            <type>text/plain</type>
            <size>43636</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MDczCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Q
QUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBjYmNlMDdh
YzAwNWI2MmYxM2NjYjAzMmZiNjUyNTE4ZDM3ODNkNzY1Li5iYjRjNTc1Y2Y0MWZmZGIwNzVjYjgz
NTAzMTI4YzhhZTVhYjg2NGM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAor
MjAxNy0xMi0xOSAgSmVyZW15IEpvbmVzICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAg
RWxlbWVudCBmdWxsc2NyZWVuIGludGVyZmFjZSBzaG91bGQgZGlzcGxheSB0aGUgbG9jYXRpb24K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTAwNgor
ICAgICAgICByZGFyOi8vcHJvYmxlbS8zNjE0MzE3NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBpT1MgYXZhaWxhYmlsaXR5IGNoZWNrLgorCisg
ICAgICAgICogcGFsL3NwaS9jb2NvYS9MaW5rUHJlc2VudGF0aW9uU1BJLmg6CisKIDIwMTctMTIt
MTQgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBGaXggMzIt
Yml0IGJ1aWxkOiBFbmFibGUgLVdzdHJpY3QtcHJvdG90eXBlcyBmb3IgV2ViS2l0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmlu
ZGV4IGFmYmIyZTI4YWFkMWU3ZTRmMjBlNDZjYWYyMTE4NDg2ZDA4NGQ5OGUuLmE0NGZiMWJlZDM4
OTg4YzJmMTQ0MmMxZGU1MjFhNDVkY2Q0ZDA5NGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDMgQEAK
KzIwMTctMTItMTkgIEplcmVteSBKb25lcyAgPGplcmVteWpAYXBwbGUuY29tPgorCisgICAgICAg
IEVsZW1lbnQgZnVsbHNjcmVlbiBpbnRlcmZhY2Ugc2hvdWxkIGRpc3BsYXkgdGhlIGxvY2F0aW9u
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODEwMDYK
KyAgICAgICAgcmRhcjovL3Byb2JsZW0vMzYxNDMxNzYKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTaG93IGEgc2hvcnQgdXNlciB2aXNpYmxlIGxvY2F0
aW9uIHN0cmluZyB3aXRoIGEgbG9jayBpZiBzZWN1cmUgYW5kIGdyZWVuIHdoZW4gdHJ1c3RlZC4K
KworICAgICAgICBJbmNsdWRlcyBvdGhlciBpbnRlcmZhY2UgY2xlYW51cCBhbmQgdHdlYWtzLgor
CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVySU9T
Lm1tOgorICAgICAgICAoLVtfV0tGdWxsU2NyZWVuVmlld0NvbnRyb2xsZXIgdmlld1dpbGxUcmFu
c2l0aW9uVG9TaXplOndpdGhUcmFuc2l0aW9uQ29vcmRpbmF0b3I6XSk6CisgICAgICAgICgtW19X
S0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciB2aXN1YWxFZmZlY3RWaWV3V2l0aEZyYW1lOl0pOgor
ICAgICAgICAobWlycm9yRWRnZUluc2V0cyk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3
Q29udHJvbGxlciBfdXBkYXRlTGF5b3V0TWFyZ2luc10pOgorICAgICAgICAoLVtfV0tGdWxsU2Ny
ZWVuVmlld0NvbnRyb2xsZXIgdmlld0RpZExheW91dFN1YnZpZXdzXSk6CisgICAgICAgICgtW19X
S0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciBzZXRMb2NhdGlvbjpzZWN1cmU6dHJ1c3RlZE5hbWU6
dHJ1c3RlZFNpdGU6XSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciBj
cmVhdGVTdWJ2aWV3c10pOgorICAgICAgICAoLVtfV0tGdWxsU2NyZWVuVmlld0NvbnRyb2xsZXIg
bG9hZFZpZXddKToKKyAgICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHZpZXdE
aWRBcHBlYXI6XSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciBoaWRl
Q2FuY2VsQnV0dG9uXSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciBz
aG93Q2FuY2VsQnV0dG9uOl0pOgorICAgICAgICAoLVtfV0tGdWxsc2NyZWVuUm9vdFZpZXdDb250
cm9sbGVyIHNldFNob3dzU3RhdHVzQmFyOl0pOgorICAgICAgICAoLVtfV0tGdWxsc2NyZWVuUm9v
dFZpZXdDb250cm9sbGVyIHByZWZlcnNTdGF0dXNCYXJIaWRkZW5dKToKKyAgICAgICAgKC1bV0tG
dWxsU2NyZWVuV2luZG93Q29udHJvbGxlciBfaW52YWxpZGF0ZUVWT3JnYW5pemF0aW9uTmFtZV0p
OgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGlzU2VjdXJlXSk6Cisg
ICAgICAgICgtW1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXIgX3NlcnZlclRydXN0XSk6Cisg
ICAgICAgICgtW1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXIgX0VWT3JnYW5pemF0aW9uTmFt
ZV0pOgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIHVwZGF0ZUxvY2F0
aW9uSW5mb10pOgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGVudGVy
RnVsbFNjcmVlbl0pOgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGJl
Z2FuRW50ZXJGdWxsU2NyZWVuV2l0aEluaXRpYWxGcmFtZTpmaW5hbEZyYW1lOl0pOgorICAgICAg
ICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGJlZ2FuRXhpdEZ1bGxTY3JlZW5XaXRo
SW5pdGlhbEZyYW1lOmZpbmFsRnJhbWU6XSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3
Q29udHJvbGxlciBwcmVmZXJzU3RhdHVzQmFySGlkZGVuXSk6IERlbGV0ZWQuCisgICAgICAgICog
V2ViS2l0LnhjYXNzZXRzL0RvbmUuaW1hZ2VzZXQvQ29udGVudHMuanNvbjogUmVtb3ZlZC4KKyAg
ICAgICAgKiBXZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvQ29udGVudHMuanNvbjog
QWRkZWQuCisgICAgICAgICogV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdlc2V0L05hdmln
YXRpb25CYXJMb2NrTWluaUAyeC5wZGY6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJLaXQvV2ViS2l0
LnhjYXNzZXRzL0RvbmUuaW1hZ2VzZXQvRG9uZS5wZGYuCisgICAgICAgICogV2ViS2l0LnhjYXNz
ZXRzL0xvY2tNaW5pLmltYWdlc2V0L05hdmlnYXRpb25CYXJMb2NrTWluaUAzeC5wZGY6IFJlbmFt
ZWQgZnJvbSBTb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Eb25lLmltYWdlc2V0L0RvbmUu
cGRmLgorCiAyMDE3LTEyLTE4ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgog
CiAgICAgICAgIFttYWNPUywgaU9TXSBBZGQgbmV3IG1hY2ggbG9va3VwIHBvcnQgZm9yIENvcmVN
ZWRpYSByZW1vdGUgY29udHJvbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9z
cGkvY29jb2EvTGlua1ByZXNlbnRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9z
cGkvY29jb2EvTGlua1ByZXNlbnRhdGlvblNQSS5oCmluZGV4IGQ0YTI0NjVjZmE4MWU4OWMwYTU3
MWMwMjAzM2ZiMDQ0MmUyYWExYzkuLjUxNWYwZGNiNDBhNDg2Y2Q2YjA1YzIzNjAxYTViYzg0MzZk
ZDViMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0xpbmtQ
cmVzZW50YXRpb25TUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9M
aW5rUHJlc2VudGF0aW9uU1BJLmgKQEAgLTIzLDcgKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAog
ICovCiAKLSNpZiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTMwMAorI2lm
IChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAx
MzAwKSB8fCAoUExBVEZPUk0oSU9TKSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJF
RCA+PSAxMDAzMDApCiAKICNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQogCkBAIC0zNyw0ICsz
Nyw0IEBACiAKICNlbmRpZgogCi0jZW5kaWYgLy8gX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFV
SVJFRCA+PSAxMDEzMDAKKyNlbmRpZiAvLyAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZF
UlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTMwMCkgfHwgKFBMQVRGT1JNKElPUykgJiYgX19JUEhP
TkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAwMzAwKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXJJT1MubW0g
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxl
cklPUy5tbQppbmRleCBmZjZlNDAyYWNjYjU3MjlmYjI1NjQ1OGUxMjFkZjc3NDU4NjIxYjhkLi5l
ZjU5NDE1MGMwMjVmMDZlY2E2MjczMjhhZDExOThhNTMyOTQ0YjhkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlcklPUy5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tGdWxsU2NyZWVuV2luZG93Q29u
dHJvbGxlcklPUy5tbQpAQCAtMzUsMTEgKzM1LDE4IEBACiAjaW1wb3J0ICJXZWJGdWxsU2NyZWVu
TWFuYWdlclByb3h5LmgiCiAjaW1wb3J0ICJXZWJQYWdlUHJveHkuaCIKICNpbXBvcnQgPEZvdW5k
YXRpb24vRm91bmRhdGlvbi5oPgorI2ltcG9ydCA8U2VjdXJpdHkvU2VjQ2VydGlmaWNhdGUuaD4K
KyNpbXBvcnQgPFNlY3VyaXR5L1NlY1RydXN0Lmg+CiAjaW1wb3J0IDxVSUtpdC9VSVZpc3VhbEVm
ZmVjdFZpZXcuaD4KICNpbXBvcnQgPFdlYkNvcmUvRmxvYXRSZWN0Lmg+CiAjaW1wb3J0IDxXZWJD
b3JlL0dlb21ldHJ5VXRpbGl0aWVzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ludFJlY3QuaD4KKyNp
bXBvcnQgPFdlYkNvcmUvV2ViQ29yZU5TVVJMRXh0cmFzLmg+CisjaW1wb3J0IDxwYWwvc3BpL2Nm
L0NGTmV0d29ya1NQSS5oPgorI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9MaW5rUHJlc2VudGF0aW9u
U1BJLmg+CisjaW1wb3J0IDxwYWwvc3BpL2NvY29hL05TU3RyaW5nU1BJLmg+CiAjaW1wb3J0IDxw
YWwvc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEkuaD4KKyNpbXBvcnQgPHd0Zi9zcGkvY29jb2EvU2Vj
dXJpdHlTUEkuaD4KIAogdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKIHVzaW5nIG5hbWVzcGFjZSBX
ZWJDb3JlOwpAQCAtMTE1LDYgKzEyMiw3IEBAIEBpbXBsZW1lbnRhdGlvbiBfV0tGdWxsU2NyZWVu
Vmlld0NvbnRyb2xsZXIgewogICAgIFJldGFpblB0cjxVSVZpZXc+IF9iYWNrZ3JvdW5kVmlldzsK
ICAgICBSZXRhaW5QdHI8VUlMb25nUHJlc3NHZXN0dXJlUmVjb2duaXplcj4gX3RvdWNoR2VzdHVy
ZVJlY29nbml6ZXI7CiAgICAgUmV0YWluUHRyPFVJQnV0dG9uPiBfY2FuY2VsQnV0dG9uOworICAg
IFJldGFpblB0cjxVSUJ1dHRvbj4gX2xvY2F0aW9uQnV0dG9uOwogICAgIFJldGFpblB0cjxVSVZp
c3VhbEVmZmVjdFZpZXc+IF92aXN1YWxFZmZlY3RWaWV3OwogfQogCkBAIC0xMjksNyArMTM3LDE3
IEBAIC0gKHZvaWQpZGVhbGxvYwogLSAodm9pZCl2aWV3V2lsbFRyYW5zaXRpb25Ub1NpemU6KENH
U2l6ZSlzaXplIHdpdGhUcmFuc2l0aW9uQ29vcmRpbmF0b3I6KGlkPFVJVmlld0NvbnRyb2xsZXJU
cmFuc2l0aW9uQ29vcmRpbmF0b3I+KWNvb3JkaW5hdG9yCiB7CiAgICAgW3N1cGVyIHZpZXdXaWxs
VHJhbnNpdGlvblRvU2l6ZTpzaXplIHdpdGhUcmFuc2l0aW9uQ29vcmRpbmF0b3I6Y29vcmRpbmF0
b3JdOwotICAgIFsoV0tXZWJWaWV3ICopW3NlbGYgY29udGVudFZpZXddIF9vdmVycmlkZUxheW91
dFBhcmFtZXRlcnNXaXRoTWluaW11bUxheW91dFNpemU6c2l6ZSBtYXhpbXVtVW5vYnNjdXJlZFNp
emVPdmVycmlkZTpzaXplXTsKKyAgICBbY29vcmRpbmF0b3IgYW5pbWF0ZUFsb25nc2lkZVRyYW5z
aXRpb246IF4oaWQ8VUlWaWV3Q29udHJvbGxlclRyYW5zaXRpb25Db29yZGluYXRvckNvbnRleHQ+
IGNvbnRleHQpIHsKKworICAgICAgICB2b2lkIChed2ViVmlld1VwZGF0ZUJsb2NrKSgpID0gXnsK
KyAgICAgICAgICAgIFsoV0tXZWJWaWV3ICopW3NlbGYgY29udGVudFZpZXddIF9vdmVycmlkZUxh
eW91dFBhcmFtZXRlcnNXaXRoTWluaW11bUxheW91dFNpemU6c2l6ZSBtYXhpbXVtVW5vYnNjdXJl
ZFNpemVPdmVycmlkZTpzaXplXTsKKyAgICAgICAgfTsKKworICAgICAgICBbKFdLV2ViVmlldyAq
KVtzZWxmIGNvbnRlbnRWaWV3XSBfYmVnaW5BbmltYXRlZFJlc2l6ZVdpdGhVcGRhdGVzOndlYlZp
ZXdVcGRhdGVCbG9ja107CisgICAgICAgIFsoV0tXZWJWaWV3ICopW3NlbGYgY29udGVudFZpZXdd
IF9zZXRJbnRlcmZhY2VPcmllbnRhdGlvbk92ZXJyaWRlOltVSUFwcCBzdGF0dXNCYXJPcmllbnRh
dGlvbl1dOworICAgIH0gY29tcGxldGlvbjpeKGlkIDxVSVZpZXdDb250cm9sbGVyVHJhbnNpdGlv
bkNvb3JkaW5hdG9yQ29udGV4dD5jb250ZXh0KSB7CisgICAgICAgIFsoV0tXZWJWaWV3ICopW3Nl
bGYgY29udGVudFZpZXddIF9lbmRBbmltYXRlZFJlc2l6ZV07CisgICAgfV07CiB9CiAKICsgKHZv
aWQpY29uZmlndXJlVmlldzooVUlWaWV3ICopdmlldyB3aXRoQmFja2dyb3VuZEZpbGxPZkNvbG9y
OihVSUNvbG9yICopZmlsbENvbG9yIG9wYWNpdHk6KENHRmxvYXQpb3BhY2l0eSBmaWx0ZXI6KE5T
U3RyaW5nICopZmlsdGVyCkBAIC0xNTksOSArMTc3LDYgQEAgLSAodm9pZClfdXBkYXRlVHJhbnNw
YXJlbmN5T2ZWaXN1YWxFZmZlY3RWaWV3OihVSVZpc3VhbEVmZmVjdFZpZXcgKil2aXN1YWxFZmZl
Y3QKIC0gKFVJVmlzdWFsRWZmZWN0VmlldyAqKXZpc3VhbEVmZmVjdFZpZXdXaXRoRnJhbWU6KENH
UmVjdClmcmFtZQogewogICAgIFJldGFpblB0cjxVSVZpc3VhbEVmZmVjdFZpZXc+IHZpc3VhbEVm
ZmVjdFZpZXcgPSBhZG9wdE5TKFtbVUlWaXN1YWxFZmZlY3RWaWV3IGFsbG9jXSBpbml0V2l0aEVm
ZmVjdDpbVUlWaXN1YWxFZmZlY3QgZW1wdHlFZmZlY3RdXSk7Ci0gICAgW3Zpc3VhbEVmZmVjdFZp
ZXcgc2V0RnJhbWU6ZnJhbWVdOwotICAgIFt2aXN1YWxFZmZlY3RWaWV3IF9zZXRDb250aW51b3Vz
Q29ybmVyUmFkaXVzOigoQ0dSZWN0R2V0SGVpZ2h0KFt2aXN1YWxFZmZlY3RWaWV3IGJvdW5kc10p
ID4gNDAuMCkgPyAxNi4wIDogOC4wKV07Ci0gICAgW3Zpc3VhbEVmZmVjdFZpZXcgc2V0QXV0b3Jl
c2l6aW5nTWFzazooVUlWaWV3QXV0b3Jlc2l6aW5nRmxleGlibGVSaWdodE1hcmdpbiB8IFVJVmll
d0F1dG9yZXNpemluZ0ZsZXhpYmxlQm90dG9tTWFyZ2luKV07CiAgICAgW3NlbGYgX3VwZGF0ZVRy
YW5zcGFyZW5jeU9mVmlzdWFsRWZmZWN0Vmlldzp2aXN1YWxFZmZlY3RWaWV3LmdldCgpXTsKIAog
ICAgIFJldGFpblB0cjxVSVZpZXc+IGJhY2tMYXllclRpbnRWaWV3ID0gYWRvcHROUyhbW1VJVmll
dyBhbGxvY10gaW5pdFdpdGhGcmFtZTpbdmlzdWFsRWZmZWN0VmlldyBib3VuZHNdXSk7CkBAIC0x
ODEsMzkgKzE5NiwxMzIgQEAgLSAoVUlWaXN1YWxFZmZlY3RWaWV3ICopdmlzdWFsRWZmZWN0Vmll
d1dpdGhGcmFtZTooQ0dSZWN0KWZyYW1lCiAgICAgcmV0dXJuIHZpc3VhbEVmZmVjdFZpZXcuYXV0
b3JlbGVhc2UoKTsKIH0KIAotLSAodm9pZClsb2FkVmlldworc3RhdGljIFVJRWRnZUluc2V0cyBt
aXJyb3JFZGdlSW5zZXRzKFVJRWRnZUluc2V0cyBpbnNldHMpCiB7Ci0gICAgW3NlbGYgc2V0Vmll
dzphZG9wdE5TKFtbVUlWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOkNHUmVjdE1ha2UoMCwgMCwg
MTAwLCAxMDApXSkuZ2V0KCldOwotICAgIFtbc2VsZiB2aWV3XSBzZXRBdXRvcmVzaXppbmdNYXNr
OihVSVZpZXdBdXRvcmVzaXppbmdGbGV4aWJsZVdpZHRoIHwgVUlWaWV3QXV0b3Jlc2l6aW5nRmxl
eGlibGVIZWlnaHQpXTsKKyAgICByZXR1cm4gVUlFZGdlSW5zZXRzTWFrZShpbnNldHMudG9wLCBp
bnNldHMucmlnaHQsIGluc2V0cy5ib3R0b20sIGluc2V0cy5sZWZ0KTsKK30KIAotICAgIENHUmVj
dCBkb25lQnV0dG9uUmVjdCA9IENHUmVjdE1ha2UoMTAsIDIwLCA2MCwgNDcpOwotICAgIAotICAg
IF92aXN1YWxFZmZlY3RWaWV3ID0gW3NlbGYgdmlzdWFsRWZmZWN0Vmlld1dpdGhGcmFtZTpkb25l
QnV0dG9uUmVjdF07Ci0gICAgW192aXN1YWxFZmZlY3RWaWV3IHNldEFscGhhOjBdOworLSAodm9p
ZClfdXBkYXRlTGF5b3V0TWFyZ2lucworeworICAgIFVJVmlldyAqdmlldyA9IFtzZWxmIHZpZXdd
OworICAgIFt2aWV3IHNldEVkZ2VzSW5zZXR0aW5nTGF5b3V0TWFyZ2luc0Zyb21TYWZlQXJlYTpV
SVJlY3RFZGdlTm9uZV07CisgICAgW3ZpZXcgc2V0UHJlc2VydmVzU3VwZXJ2aWV3TGF5b3V0TWFy
Z2luczpOT107CisKKyAgICBVSUVkZ2VJbnNldHMgdGFyZ2V0SW5zZXRzID0gW3ZpZXcgc2FmZUFy
ZWFJbnNldHNdOworICAgIHRhcmdldEluc2V0cy50b3AgPSBzdGQ6Om1heCh0YXJnZXRJbnNldHMu
dG9wLCAyMC4wKTsKKyAgICBbdmlldyBzZXRMYXlvdXRNYXJnaW5zOnRhcmdldEluc2V0c107Cit9
CisKKy0gKHZvaWQpdmlld0RpZExheW91dFN1YnZpZXdzCit7CisgICAgW3NlbGYgX3VwZGF0ZUxh
eW91dE1hcmdpbnNdOworfQorCistICAodm9pZClzZXRMb2NhdGlvbjooTlNTdHJpbmcgKilsb2Nh
dGlvbk5hbWUgc2VjdXJlOihCT09MKXNlY3VyZSB0cnVzdGVkTmFtZTooQk9PTCl0cnVzdGVkTmFt
ZSB0cnVzdGVkU2l0ZTooQk9PTCl0cnVzdGVkU2l0ZQoreworICAgIFVJQ29sb3IgKmdyZWVuVGlu
dCA9IFtVSUNvbG9yIGNvbG9yV2l0aFJlZDoxMDAgLyAyNTUuMCBncmVlbjoxNzUgLyAyNTUuMCBi
bHVlOjk5IC8gMjU1LjAgYWxwaGE6MS4wXTsKKyAgICBVSUNvbG9yICp3aGl0ZVRpbnQgPSBbVUlD
b2xvciB3aGl0ZUNvbG9yXTsKKworICAgIGZsb2F0IGhQYWRkaW5nID0gMTQ7CisgICAgTlNTdHJp
bmcgKmxvY2tJbWFnZU5hbWUgPSBAIkxvY2tNaW5pIjsKKworICAgIGZsb2F0IGxvY2tTcGFjaW5n
ID0gc2VjdXJlID8gMTAgOiAwOworCisgICAgVUlFZGdlSW5zZXRzIGxvY2F0aW9uQ29udGVudEVk
Z2VJbnNldHMgPSBVSUVkZ2VJbnNldHNNYWtlKDAsIGhQYWRkaW5nK2xvY2tTcGFjaW5nLCAwLCBo
UGFkZGluZyk7CisgICAgVUlFZGdlSW5zZXRzIGxvY2F0aW9uSW1hZ2VFZGdlSW5zZXRzID0gVUlF
ZGdlSW5zZXRzTWFrZSgwLCAtbG9ja1NwYWNpbmcsIDAsIDApOworCisgICAgaWYgKFtVSVZpZXcg
dXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbkZvclNlbWFudGljQ29udGVudEF0dHJpYnV0ZTpb
W3NlbGYgdmlld10gc2VtYW50aWNDb250ZW50QXR0cmlidXRlXV0gPT0gVUlVc2VySW50ZXJmYWNl
TGF5b3V0RGlyZWN0aW9uUmlnaHRUb0xlZnQpIHsKKyAgICAgICAgbG9jYXRpb25Db250ZW50RWRn
ZUluc2V0cyA9IG1pcnJvckVkZ2VJbnNldHMobG9jYXRpb25Db250ZW50RWRnZUluc2V0cyk7Cisg
ICAgICAgIGxvY2F0aW9uSW1hZ2VFZGdlSW5zZXRzID0gbWlycm9yRWRnZUluc2V0cyhsb2NhdGlv
bkltYWdlRWRnZUluc2V0cyk7CisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0Q29udGVudEhv
cml6b250YWxBbGlnbm1lbnQ6VUlDb250cm9sQ29udGVudEhvcml6b250YWxBbGlnbm1lbnRSaWdo
dF07CisgICAgfQorCisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRUaXRsZUNvbG9yOnRydXN0ZWRO
YW1lP2dyZWVuVGludDp3aGl0ZVRpbnQgZm9yU3RhdGU6VUlDb250cm9sU3RhdGVOb3JtYWxdOwor
CisgICAgaWYgKHNlY3VyZSkgeworICAgICAgICBOU0J1bmRsZSAqYnVuZGxlID0gW05TQnVuZGxl
IGJ1bmRsZUZvckNsYXNzOltXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGNsYXNzXV07Cisg
ICAgICAgIFJldGFpblB0cjxVSUltYWdlPiBsb2NrSW1hZ2UgPSBbVUlJbWFnZSBpbWFnZU5hbWVk
OmxvY2tJbWFnZU5hbWUgaW5CdW5kbGU6YnVuZGxlIGNvbXBhdGlibGVXaXRoVHJhaXRDb2xsZWN0
aW9uOm5pbF07CisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0SW1hZ2U6W2xvY2tJbWFnZSBp
bWFnZVdpdGhSZW5kZXJpbmdNb2RlOlVJSW1hZ2VSZW5kZXJpbmdNb2RlQWx3YXlzVGVtcGxhdGVd
IGZvclN0YXRlOlVJQ29udHJvbFN0YXRlTm9ybWFsXTsKKyAgICAgICAgW1tfbG9jYXRpb25CdXR0
b24gaW1hZ2VWaWV3XSBzZXRUaW50Q29sb3I6dHJ1c3RlZFNpdGU/Z3JlZW5UaW50OndoaXRlVGlu
dF07CisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0VGludENvbG9yOnRydXN0ZWRTaXRlP2dy
ZWVuVGludDp3aGl0ZVRpbnRdOworICAgIH0gZWxzZQorICAgICAgICBbX2xvY2F0aW9uQnV0dG9u
IHNldEltYWdlOm5pbCBmb3JTdGF0ZTpVSUNvbnRyb2xTdGF0ZU5vcm1hbF07CisKKyAgICBbX2xv
Y2F0aW9uQnV0dG9uIHNldENvbnRlbnRFZGdlSW5zZXRzOmxvY2F0aW9uQ29udGVudEVkZ2VJbnNl
dHNdOworICAgIFtfbG9jYXRpb25CdXR0b24gc2V0SW1hZ2VFZGdlSW5zZXRzOmxvY2F0aW9uSW1h
Z2VFZGdlSW5zZXRzXTsKKyAgICBbX2xvY2F0aW9uQnV0dG9uIHNldFRpdGxlOmxvY2F0aW9uTmFt
ZSBmb3JTdGF0ZTpVSUNvbnRyb2xTdGF0ZU5vcm1hbF07CisgICAgW1tfbG9jYXRpb25CdXR0b24g
dGl0bGVMYWJlbF0gc2V0TGluZUJyZWFrTW9kZTpOU0xpbmVCcmVha0J5VHJ1bmNhdGluZ1RhaWxd
OworICAgIFtbX2xvY2F0aW9uQnV0dG9uIHRpdGxlTGFiZWxdIHNldEFkanVzdHNGb250U2l6ZVRv
Rml0V2lkdGg6Tk9dOworfQorCistICh2b2lkKWNyZWF0ZVN1YnZpZXdzCit7CisgICAgX3Zpc3Vh
bEVmZmVjdFZpZXcgPSBbc2VsZiB2aXN1YWxFZmZlY3RWaWV3V2l0aEZyYW1lOkNHUmVjdE1ha2Uo
MCwgMCwgMjAsIDIwKV07CisKKyAgICBbX3Zpc3VhbEVmZmVjdFZpZXcgc2V0VHJhbnNsYXRlc0F1
dG9yZXNpemluZ01hc2tJbnRvQ29uc3RyYWludHM6Tk9dOwogICAgIFtbc2VsZiB2aWV3XSBhZGRT
dWJ2aWV3Ol92aXN1YWxFZmZlY3RWaWV3LmdldCgpXTsKIAogICAgIF9jYW5jZWxCdXR0b24gPSBb
VUlCdXR0b24gYnV0dG9uV2l0aFR5cGU6VUlCdXR0b25UeXBlU3lzdGVtXTsKLSAgICBbX2NhbmNl
bEJ1dHRvbiBzZXRBdXRvcmVzaXppbmdNYXNrOihVSVZpZXdBdXRvcmVzaXppbmdGbGV4aWJsZVJp
Z2h0TWFyZ2luIHwgVUlWaWV3QXV0b3Jlc2l6aW5nRmxleGlibGVCb3R0b21NYXJnaW4pXTsKLSAg
ICBbX2NhbmNlbEJ1dHRvbiBzZXRGcmFtZTpkb25lQnV0dG9uUmVjdF07Ci0gICAgW19jYW5jZWxC
dXR0b24gYWRkVGFyZ2V0OnNlbGYgYWN0aW9uOkBzZWxlY3RvcihjYW5jZWxBY3Rpb246KSBmb3JD
b250cm9sRXZlbnRzOlVJQ29udHJvbEV2ZW50VG91Y2hVcEluc2lkZV07CisgICAgW19jYW5jZWxC
dXR0b24gc2V0VHJhbnNsYXRlc0F1dG9yZXNpemluZ01hc2tJbnRvQ29uc3RyYWludHM6Tk9dOwog
ICAgIFtfY2FuY2VsQnV0dG9uIHNldEFkanVzdHNJbWFnZVdoZW5IaWdobGlnaHRlZDpOT107CiAg
ICAgW19jYW5jZWxCdXR0b24gc2V0QmFja2dyb3VuZENvbG9yOiBbVUlDb2xvciBibGFja0NvbG9y
XV07Ci0gICAgW1tfY2FuY2VsQnV0dG9uIGxheWVyXSBzZXRDb3JuZXJSYWRpdXM6Nl07Ci0gICAg
W19jYW5jZWxCdXR0b24gc2V0QWxwaGE6MF07Ci0gICAgTlNCdW5kbGUgKmJ1bmRsZSA9IFtOU0J1
bmRsZSBidW5kbGVGb3JDbGFzczpbV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlciBjbGFzc11d
OwotICAgIFJldGFpblB0cjxVSUltYWdlPiBpbWFnZSA9IFtVSUltYWdlIGltYWdlTmFtZWQ6QCJE
b25lIiBpbkJ1bmRsZTpidW5kbGUgY29tcGF0aWJsZVdpdGhUcmFpdENvbGxlY3Rpb246bmlsXTsK
LSAgICBbX2NhbmNlbEJ1dHRvbiBzZXRJbWFnZTpbaW1hZ2UgaW1hZ2VXaXRoUmVuZGVyaW5nTW9k
ZTpVSUltYWdlUmVuZGVyaW5nTW9kZUFsd2F5c1RlbXBsYXRlXSBmb3JTdGF0ZTpVSUNvbnRyb2xT
dGF0ZU5vcm1hbF07Ci0KLSAgICBbX2NhbmNlbEJ1dHRvbiBzZXRUaW50Q29sb3I6W1VJQ29sb3Ig
Y29sb3JXaXRoV2hpdGU6MS4wIGFscGhhOjAuNTVdXTsKICAgICBbW19jYW5jZWxCdXR0b24gbGF5
ZXJdIHNldENvbXBvc2l0aW5nRmlsdGVyOltDQUZpbHRlciBmaWx0ZXJXaXRoVHlwZTprQ0FGaWx0
ZXJQbHVzTF1dOworICAgIFtfY2FuY2VsQnV0dG9uIHNldFRpdGxlOkAiRG9uZSIgZm9yU3RhdGU6
VUlDb250cm9sU3RhdGVOb3JtYWxdOworICAgIFtfY2FuY2VsQnV0dG9uIHNldFRpbnRDb2xvcjpb
VUlDb2xvciB3aGl0ZUNvbG9yXV07CisgICAgW19jYW5jZWxCdXR0b24gYWRkVGFyZ2V0OnNlbGYg
YWN0aW9uOkBzZWxlY3RvcihjYW5jZWxBY3Rpb246KSBmb3JDb250cm9sRXZlbnRzOlVJQ29udHJv
bEV2ZW50VG91Y2hVcEluc2lkZV07CiAKICAgICBbW3NlbGYgdmlld10gYWRkU3VidmlldzpfY2Fu
Y2VsQnV0dG9uLmdldCgpXTsKIAorICAgIF9sb2NhdGlvbkJ1dHRvbiA9IFtVSUJ1dHRvbiBidXR0
b25XaXRoVHlwZTpVSUJ1dHRvblR5cGVTeXN0ZW1dOworICAgIFtfbG9jYXRpb25CdXR0b24gc2V0
VHJhbnNsYXRlc0F1dG9yZXNpemluZ01hc2tJbnRvQ29uc3RyYWludHM6Tk9dOworICAgIFtfbG9j
YXRpb25CdXR0b24gc2V0QWRqdXN0c0ltYWdlV2hlbkhpZ2hsaWdodGVkOk5PXTsKKyAgICBbX2xv
Y2F0aW9uQnV0dG9uIHNldEJhY2tncm91bmRDb2xvcjpbVUlDb2xvciBibGFja0NvbG9yXV07Cisg
ICAgW1tfbG9jYXRpb25CdXR0b24gbGF5ZXJdIHNldENvbXBvc2l0aW5nRmlsdGVyOltDQUZpbHRl
ciBmaWx0ZXJXaXRoVHlwZTprQ0FGaWx0ZXJQbHVzTF1dOworICAgIFtbc2VsZiB2aWV3XSBhZGRT
dWJ2aWV3Ol9sb2NhdGlvbkJ1dHRvbi5nZXQoKV07CisKKyAgICBVSUxheW91dEd1aWRlKiBjb250
YWluZXJHdWlkZSA9IFtbc2VsZiB2aWV3XSBsYXlvdXRNYXJnaW5zR3VpZGVdOworCisgICAgW1tb
X3Zpc3VhbEVmZmVjdFZpZXcgbGVmdEFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W1tz
ZWxmIHZpZXddIGxlZnRBbmNob3JdXSBzZXRBY3RpdmU6WUVTXTsKKyAgICBbW1tfdmlzdWFsRWZm
ZWN0VmlldyByaWdodEFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W1tzZWxmIHZpZXdd
IHJpZ2h0QW5jaG9yXV0gc2V0QWN0aXZlOllFU107CisgICAgW1tbX3Zpc3VhbEVmZmVjdFZpZXcg
dG9wQW5jaG9yXSBjb25zdHJhaW50RXF1YWxUb0FuY2hvcjpbW3NlbGYgdmlld10gdG9wQW5jaG9y
XV0gc2V0QWN0aXZlOllFU107CisgICAgW1tbX3Zpc3VhbEVmZmVjdFZpZXcgaGVpZ2h0QW5jaG9y
XSBjb25zdHJhaW50R3JlYXRlclRoYW5PckVxdWFsVG9Db25zdGFudDoyMF0gc2V0QWN0aXZlOllF
U107CisKKyAgICBOU0xheW91dENvbnN0cmFpbnQgKmJvdHRvbSA9IFtbX3Zpc3VhbEVmZmVjdFZp
ZXcgYm90dG9tQW5jaG9yXSBjb25zdHJhaW50RXF1YWxUb0FuY2hvcjpbY29udGFpbmVyR3VpZGUg
dG9wQW5jaG9yXV07CisgICAgW2JvdHRvbSBzZXRQcmlvcml0eTpVSUxheW91dFByaW9yaXR5UmVx
dWlyZWQtMV07CisgICAgW2JvdHRvbSBzZXRBY3RpdmU6WUVTXTsKKworICAgIFtbW19jYW5jZWxC
dXR0b24gbGVhZGluZ0FuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W2NvbnRhaW5lckd1
aWRlIGxlYWRpbmdBbmNob3JdXSBzZXRBY3RpdmU6WUVTXTsKKyAgICBbW1tfY2FuY2VsQnV0dG9u
IHRvcEFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W1tzZWxmIHZpZXddIHRvcEFuY2hv
cl1dIHNldEFjdGl2ZTpZRVNdOworICAgIFtbW19jYW5jZWxCdXR0b24gYm90dG9tQW5jaG9yXSBj
b25zdHJhaW50RXF1YWxUb0FuY2hvcjpbX3Zpc3VhbEVmZmVjdFZpZXcgYm90dG9tQW5jaG9yXV0g
c2V0QWN0aXZlOllFU107CisKKyAgICBbW1tfbG9jYXRpb25CdXR0b24gaGVpZ2h0QW5jaG9yXSBj
b25zdHJhaW50RXF1YWxUb0NvbnN0YW50OjIwXSBzZXRBY3RpdmU6WUVTXTsKKyAgICBbW1tfbG9j
YXRpb25CdXR0b24gYm90dG9tQW5jaG9yXSBjb25zdHJhaW50RXF1YWxUb0FuY2hvcjpbX3Zpc3Vh
bEVmZmVjdFZpZXcgYm90dG9tQW5jaG9yXV0gc2V0QWN0aXZlOllFU107CisgICAgW1tbX2xvY2F0
aW9uQnV0dG9uIGxlYWRpbmdBbmNob3JdIGNvbnN0cmFpbnRHcmVhdGVyVGhhbk9yRXF1YWxUb0Fu
Y2hvcjpbX2NhbmNlbEJ1dHRvbiB0cmFpbGluZ0FuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworICAg
IFtbW19sb2NhdGlvbkJ1dHRvbiB0cmFpbGluZ0FuY2hvcl0gY29uc3RyYWludExlc3NUaGFuT3JF
cXVhbFRvQW5jaG9yOltbc2VsZiB2aWV3XSB0cmFpbGluZ0FuY2hvcl1dIHNldEFjdGl2ZTpZRVNd
OworICAgIE5TTGF5b3V0Q29uc3RyYWludCAqY2VudGVyaW5nQ29uc3RyYWludCA9IFtbX2xvY2F0
aW9uQnV0dG9uIGNlbnRlclhBbmNob3JdIGNvbnN0cmFpbnRFcXVhbFRvQW5jaG9yOltbc2VsZiB2
aWV3XSBjZW50ZXJYQW5jaG9yXV07CisgICAgW2NlbnRlcmluZ0NvbnN0cmFpbnQgc2V0UHJpb3Jp
dHk6VUlMYXlvdXRQcmlvcml0eURlZmF1bHRMb3ddOworICAgIFtjZW50ZXJpbmdDb25zdHJhaW50
IHNldEFjdGl2ZTpZRVNdOworCisgICAgW192aXN1YWxFZmZlY3RWaWV3IHNldEFscGhhOjBdOwor
ICAgIFtfY2FuY2VsQnV0dG9uIHNldEFscGhhOjBdOworICAgIFtfbG9jYXRpb25CdXR0b24gc2V0
QWxwaGE6MF07CisKKyAgICBbX3Zpc3VhbEVmZmVjdFZpZXcgc2V0SGlkZGVuOllFU107CisgICAg
W19jYW5jZWxCdXR0b24gc2V0SGlkZGVuOllFU107CisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRI
aWRkZW46WUVTXTsKK30KKworLSAodm9pZClsb2FkVmlldworeworICAgIFtzZWxmIHNldFZpZXc6
YWRvcHROUyhbW1VJVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIDEw
MCwgMTAwKV0pLmdldCgpXTsKKyAgICBbW3NlbGYgdmlld10gc2V0QXV0b3Jlc2l6aW5nTWFzazoo
VUlWaWV3QXV0b3Jlc2l6aW5nRmxleGlibGVXaWR0aCB8IFVJVmlld0F1dG9yZXNpemluZ0ZsZXhp
YmxlSGVpZ2h0KV07CisKICAgICBfdG91Y2hHZXN0dXJlUmVjb2duaXplciA9IGFkb3B0TlMoW1tV
SUxvbmdQcmVzc0dlc3R1cmVSZWNvZ25pemVyIGFsbG9jXSBpbml0V2l0aFRhcmdldDpzZWxmIGFj
dGlvbjpAc2VsZWN0b3Ioc2hvd0NhbmNlbEJ1dHRvbjopXSk7CiAgICAgW190b3VjaEdlc3R1cmVS
ZWNvZ25pemVyIHNldERlbGVnYXRlOnNlbGZdOwogICAgIFtfdG91Y2hHZXN0dXJlUmVjb2duaXpl
ciBzZXRDYW5jZWxzVG91Y2hlc0luVmlldzpOT107CiAgICAgW190b3VjaEdlc3R1cmVSZWNvZ25p
emVyIHNldE1pbmltdW1QcmVzc0R1cmF0aW9uOjBdOwogICAgIFtbc2VsZiB2aWV3XSBhZGRHZXN0
dXJlUmVjb2duaXplcjpfdG91Y2hHZXN0dXJlUmVjb2duaXplci5nZXQoKV07CisgICAgW3NlbGYg
Y3JlYXRlU3Vidmlld3NdOwogfQogCiAtICh2b2lkKXZpZXdXaWxsQXBwZWFyOihCT09MKWFuaW1h
dGVkCkBAIC0yMjMsNiArMzMxLDExIEBAIC0gKHZvaWQpdmlld1dpbGxBcHBlYXI6KEJPT0wpYW5p
bWF0ZWQKICAgICBbW3NlbGYgdmlld10gaW5zZXJ0U3Vidmlldzpbc2VsZiBjb250ZW50Vmlld10g
YXRJbmRleDowXTsKIH0KIAorLSAodm9pZCl2aWV3RGlkQXBwZWFyOihCT09MKWFuaW1hdGVkCit7
CisgICAgW3NlbGYgX3VwZGF0ZUxheW91dE1hcmdpbnNdOworfQorCiAtICh2b2lkKWNhbmNlbEFj
dGlvbjooaWQpc2VuZGVyCiB7CiAgICAgW1tzZWxmIHRhcmdldF0gcGVyZm9ybVNlbGVjdG9yOltz
ZWxmIGFjdGlvbl1dOwpAQCAtMjMxLDEyICszNDQsMTQgQEAgLSAodm9pZCljYW5jZWxBY3Rpb246
KGlkKXNlbmRlcgogLSAodm9pZCloaWRlQ2FuY2VsQnV0dG9uCiB7CiAgICAgW05TT2JqZWN0IGNh
bmNlbFByZXZpb3VzUGVyZm9ybVJlcXVlc3RzV2l0aFRhcmdldDpzZWxmIHNlbGVjdG9yOkBzZWxl
Y3RvcihoaWRlQ2FuY2VsQnV0dG9uKSBvYmplY3Q6bmlsXTsKLSAgICBbVUlWaWV3IGFuaW1hdGVX
aXRoRHVyYXRpb246MC4yIGFuaW1hdGlvbnM6XnsKKyAgICBbVUlWaWV3IGFuaW1hdGVXaXRoRHVy
YXRpb246MC4xIGFuaW1hdGlvbnM6XnsKICAgICAgICAgW192aXN1YWxFZmZlY3RWaWV3IHNldEFs
cGhhOjBdOwogICAgICAgICBbX2NhbmNlbEJ1dHRvbiBzZXRBbHBoYTowXTsKKyAgICAgICAgW19s
b2NhdGlvbkJ1dHRvbiBzZXRBbHBoYTowXTsKICAgICB9IGNvbXBsZXRpb246XihCT09MIGZpbmlz
aGVkKXsKICAgICAgICAgaWYgKGZpbmlzaGVkKSB7CiAgICAgICAgICAgICBbX2NhbmNlbEJ1dHRv
biBzZXRIaWRkZW46WUVTXTsKKyAgICAgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0SGlkZGVu
OllFU107CiAgICAgICAgICAgICBbX3Zpc3VhbEVmZmVjdFZpZXcgc2V0SGlkZGVuOllFU107CiAg
ICAgICAgIH0KICAgICB9XTsKQEAgLTI0NSwxMiArMzYwLDE0IEBAIC0gKHZvaWQpaGlkZUNhbmNl
bEJ1dHRvbgogLSAodm9pZClzaG93Q2FuY2VsQnV0dG9uOihpZClzZW5kZXIKIHsKICAgICBbTlNP
YmplY3QgY2FuY2VsUHJldmlvdXNQZXJmb3JtUmVxdWVzdHNXaXRoVGFyZ2V0OnNlbGYgc2VsZWN0
b3I6QHNlbGVjdG9yKGhpZGVDYW5jZWxCdXR0b24pIG9iamVjdDpuaWxdOwotICAgIFtzZWxmIHBl
cmZvcm1TZWxlY3RvcjpAc2VsZWN0b3IoaGlkZUNhbmNlbEJ1dHRvbikgd2l0aE9iamVjdDpuaWwg
YWZ0ZXJEZWxheTozLjBdOwotICAgIFtVSVZpZXcgYW5pbWF0ZVdpdGhEdXJhdGlvbjowLjIgYW5p
bWF0aW9uczogXnsKKyAgICBbc2VsZiBwZXJmb3JtU2VsZWN0b3I6QHNlbGVjdG9yKGhpZGVDYW5j
ZWxCdXR0b24pIHdpdGhPYmplY3Q6bmlsIGFmdGVyRGVsYXk6NC4wXTsKKyAgICBbVUlWaWV3IGFu
aW1hdGVXaXRoRHVyYXRpb246MC4xIGFuaW1hdGlvbnM6IF57CiAgICAgICAgIFtfdmlzdWFsRWZm
ZWN0VmlldyBzZXRIaWRkZW46Tk9dOwogICAgICAgICBbX2NhbmNlbEJ1dHRvbiBzZXRIaWRkZW46
Tk9dOworICAgICAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEhpZGRlbjpOT107CiAgICAgICAgIFtf
dmlzdWFsRWZmZWN0VmlldyBzZXRBbHBoYToxXTsKICAgICAgICAgW19jYW5jZWxCdXR0b24gc2V0
QWxwaGE6MV07CisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0QWxwaGE6MV07CiAgICAgfV07
CiB9CiAKQEAgLTI2MCwxMSArMzc3LDYgQEAgLSAodm9pZClzZXRUYXJnZXQ6KGlkKXRhcmdldCBh
Y3Rpb246KFNFTClhY3Rpb24KICAgICBbc2VsZiBzZXRBY3Rpb246YWN0aW9uXTsKIH0KIAotLSAo
Qk9PTClwcmVmZXJzU3RhdHVzQmFySGlkZGVuCi17Ci0gICAgcmV0dXJuIFlFUzsKLX0KLQogLy8g
TUFSSyAtIFVJR2VzdHVyZVJlY29nbml6ZXJEZWxlZ2F0ZQogCiAtIChCT09MKWdlc3R1cmVSZWNv
Z25pemVyOihVSUdlc3R1cmVSZWNvZ25pemVyICopZ2VzdHVyZVJlY29nbml6ZXIgc2hvdWxkUmVj
b2duaXplU2ltdWx0YW5lb3VzbHlXaXRoR2VzdHVyZVJlY29nbml6ZXI6KFVJR2VzdHVyZVJlY29n
bml6ZXIgKilvdGhlckdlc3R1cmVSZWNvZ25pemVyCkBAIC0yNzcsMTEgKzM4OSwxOSBAQCBAZW5k
CiBAaW50ZXJmYWNlIF9XS0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIgOiBVSVZpZXdDb250
cm9sbGVyCiBAZW5kCiAKLUBpbXBsZW1lbnRhdGlvbiBfV0tGdWxsc2NyZWVuUm9vdFZpZXdDb250
cm9sbGVyIDogVUlWaWV3Q29udHJvbGxlcgorQGltcGxlbWVudGF0aW9uIF9XS0Z1bGxzY3JlZW5S
b290Vmlld0NvbnRyb2xsZXIgeworICAgIEJPT0wgX3Nob3dzU3RhdHVzQmFyOworfQorCistICh2
b2lkKXNldFNob3dzU3RhdHVzQmFyOihCT09MKXZhbHVlCit7CisgICAgX3Nob3dzU3RhdHVzQmFy
ID0gdmFsdWU7CisgICAgW3NlbGYgc2V0TmVlZHNTdGF0dXNCYXJBcHBlYXJhbmNlVXBkYXRlXTsK
K30KIAogLSAoQk9PTClwcmVmZXJzU3RhdHVzQmFySGlkZGVuCiB7Ci0gICAgcmV0dXJuIFlFUzsK
KyAgICByZXR1cm4gIV9zaG93c1N0YXR1c0JhcjsKIH0KIAogQGVuZApAQCAtMzU4LDYgKzQ3OCw3
IEBAIEBpbXBsZW1lbnRhdGlvbiBXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIHsKICAgICBX
S1dlYlZpZXdTdGF0ZSBfdmlld1N0YXRlOwogCiAgICAgUmV0YWluUHRyPFVJV2luZG93PiBfd2lu
ZG93OworICAgIFJldGFpblB0cjxfV0tGdWxsc2NyZWVuUm9vdFZpZXdDb250cm9sbGVyPiBfcm9v
dFZpZXdDb250cm9sbGVyOwogCiAgICAgUmVmUHRyPFdlYktpdDo6Vm9pZENhbGxiYWNrPiBfcmVw
YWludENhbGxiYWNrOwogICAgIFJldGFpblB0cjxVSVZpZXdDb250cm9sbGVyPiBfdmlld0NvbnRy
b2xsZXJGb3JQcmVzZW50YXRpb247CkBAIC0zNjUsNiArNDg2LDEwIEBAIEBpbXBsZW1lbnRhdGlv
biBXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIHsKIAogICAgIENHUmVjdCBfaW5pdGlhbEZy
YW1lOwogICAgIENHUmVjdCBfZmluYWxGcmFtZTsKKworICAgIFJldGFpblB0cjxOU1N0cmluZz4g
X0VWT3JnYW5pemF0aW9uTmFtZTsKKyAgICBCT09MIF9FVk9yZ2FuaXphdGlvbk5hbWVJc1ZhbGlk
OworCiB9CiAKICNwcmFnbWEgbWFyayAtCkBAIC00MDQsMTYgKzUyOSw5NSBAQCAtIChXZWJDb3Jl
RnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldyAqKXdlYlZpZXdQbGFjZWhvbGRlcgogI3ByYWdtYSBt
YXJrIC0KICNwcmFnbWEgbWFyayBFeHBvc2VkIEludGVyZmFjZQogCistICh2b2lkKV9pbnZhbGlk
YXRlRVZPcmdhbml6YXRpb25OYW1lCit7CisgICAgX0VWT3JnYW5pemF0aW9uTmFtZSA9IG5pbDsK
KyAgICBfRVZPcmdhbml6YXRpb25OYW1lSXNWYWxpZCA9IE5POworfQorCistIChCT09MKWlzU2Vj
dXJlCit7CisgICAgcmV0dXJuIF93ZWJWaWV3Lmhhc09ubHlTZWN1cmVDb250ZW50OworfQorCist
IChTZWNUcnVzdFJlZilfc2VydmVyVHJ1c3QKK3sKKyAgICByZXR1cm4gX3dlYlZpZXcuc2VydmVy
VHJ1c3Q7Cit9CisKKy0gKE5TU3RyaW5nICopX0VWT3JnYW5pemF0aW9uTmFtZQoreworICAgIGlm
ICghc2VsZi5pc1NlY3VyZSkKKyAgICAgICAgcmV0dXJuIG5pbDsKKworICAgIGlmIChfRVZPcmdh
bml6YXRpb25OYW1lSXNWYWxpZCkKKyAgICAgICAgcmV0dXJuIF9FVk9yZ2FuaXphdGlvbk5hbWUu
Z2V0KCk7CisKKyAgICBBU1NFUlQoIV9FVk9yZ2FuaXphdGlvbk5hbWUuZ2V0KCkpOworICAgIF9F
Vk9yZ2FuaXphdGlvbk5hbWVJc1ZhbGlkID0gWUVTOworCisgICAgU2VjVHJ1c3RSZWYgdHJ1c3Qg
PSBbc2VsZiBfc2VydmVyVHJ1c3RdOworICAgIGlmICghdHJ1c3QpCisgICAgICAgIHJldHVybiBu
aWw7CisKKyAgICBOU0RpY3Rpb25hcnkgKmluZm9EaWN0aW9uYXJ5ID0gQ0ZCcmlkZ2luZ1JlbGVh
c2UoU2VjVHJ1c3RDb3B5SW5mbyh0cnVzdCkpOworICAgIC8vIElmIFNlY1RydXN0Q29weUluZm8g
cmV0dXJuZWQgTlVMTCB0aGVuIGl0J3MgbGlrZWx5IHRoYXQgdGhlIFNlY1RydXN0UmVmIGhhcyBu
b3QgYmVlbiBldmFsdWF0ZWQKKyAgICAvLyBhbmQgdGhlIG9ubHkgd2F5IHRvIGdldCB0aGUgaW5m
b3JtYXRpb24gd2UgbmVlZCBpcyB0byBjYWxsIFNlY1RydXN0RXZhbHVhdGUgb3Vyc2VsdmVzLgor
ICAgIGlmICghaW5mb0RpY3Rpb25hcnkpIHsKKyAgICAgICAgT1NTdGF0dXMgZXJyID0gU2VjVHJ1
c3RFdmFsdWF0ZSh0cnVzdCwgTlVMTCk7CisgICAgICAgIGlmIChlcnIgPT0gbm9FcnIpCisgICAg
ICAgICAgICBpbmZvRGljdGlvbmFyeSA9IENGQnJpZGdpbmdSZWxlYXNlKFNlY1RydXN0Q29weUlu
Zm8odHJ1c3QpKTsKKyAgICAgICAgaWYgKCFpbmZvRGljdGlvbmFyeSkKKyAgICAgICAgICAgIHJl
dHVybiBuaWw7CisgICAgfQorCisgICAgLy8gTWFrZSBzdXJlIHRoYXQgdGhlIEVWIGNlcnRpZmlj
YXRlIGlzIHZhbGlkIGFnYWluc3Qgb3VyIGNlcnRpZmljYXRlIGNoYWluLgorICAgIGlkIGhhc0VW
ID0gW2luZm9EaWN0aW9uYXJ5IG9iamVjdEZvcktleTooX19icmlkZ2UgTlNTdHJpbmcgKilrU2Vj
VHJ1c3RJbmZvRXh0ZW5kZWRWYWxpZGF0aW9uS2V5XTsKKyAgICBpZiAoIVtoYXNFViBpc0tpbmRP
ZkNsYXNzOltOU1ZhbHVlIGNsYXNzXV0gfHwgIVtoYXNFViBib29sVmFsdWVdKQorICAgICAgICBy
ZXR1cm4gbmlsOworCisgICAgLy8gTWFrZSBzdXJlIHRoYXQgd2UgY291bGQgY29udGFjdCByZXZv
Y2F0aW9uIHNlcnZlciBhbmQgaXQgaXMgc3RpbGwgdmFsaWQuCisgICAgaWQgaXNOb3RSZXZva2Vk
ID0gW2luZm9EaWN0aW9uYXJ5IG9iamVjdEZvcktleTooX19icmlkZ2UgTlNTdHJpbmcgKilrU2Vj
VHJ1c3RJbmZvUmV2b2NhdGlvbktleV07CisgICAgaWYgKCFbaXNOb3RSZXZva2VkIGlzS2luZE9m
Q2xhc3M6W05TVmFsdWUgY2xhc3NdXSB8fCAhW2lzTm90UmV2b2tlZCBib29sVmFsdWVdKQorICAg
ICAgICByZXR1cm4gbmlsOworCisgICAgX0VWT3JnYW5pemF0aW9uTmFtZSA9IFtpbmZvRGljdGlv
bmFyeSBvYmplY3RGb3JLZXk6KF9fYnJpZGdlIE5TU3RyaW5nICopa1NlY1RydXN0SW5mb0NvbXBh
bnlOYW1lS2V5XTsKKyAgICByZXR1cm4gX0VWT3JnYW5pemF0aW9uTmFtZS5nZXQoKTsKK30KKwor
LSAodm9pZCl1cGRhdGVMb2NhdGlvbkluZm8KK3sKKyAgICBOU1VSTCogdXJsID0gX3dlYlZpZXcu
X2NvbW1pdHRlZFVSTDsKKworICAgIE5TU3RyaW5nICpFVk9yZ2FuaXphdGlvbk5hbWUgPSBbc2Vs
ZiBfRVZPcmdhbml6YXRpb25OYW1lXTsKKyAgICBCT09MIHNob3dzRVZPcmdhbml6YXRpb25OYW1l
ID0gW0VWT3JnYW5pemF0aW9uTmFtZSBsZW5ndGhdID4gMDsKKworICAgIE5TU3RyaW5nICpkb21h
aW4gPSBbdXJsIF9scF9zaW1wbGlmaWVkRGlzcGxheVN0cmluZ107CisKKyAgICBOU1N0cmluZyAq
dGV4dCA9IG5pbDsKKyAgICBpZiAoW1t1cmwgYWJzb2x1dGVTdHJpbmddIF93ZWJfaGFzQ2FzZUlu
c2Vuc2l0aXZlUHJlZml4OkAiZGF0YToiXSkKKyAgICAgICAgdGV4dCA9IEAiZGF0YToiOworICAg
IGVsc2UgaWYgKHNob3dzRVZPcmdhbml6YXRpb25OYW1lKQorICAgICAgICB0ZXh0ID0gRVZPcmdh
bml6YXRpb25OYW1lOworICAgIGVsc2UKKyAgICAgICAgdGV4dCA9IGRvbWFpbjsKKworICAgIFtf
ZnVsbHNjcmVlblZpZXdDb250cm9sbGVyIHNldExvY2F0aW9uOnRleHQgc2VjdXJlOnNlbGYuaXNT
ZWN1cmUgdHJ1c3RlZE5hbWU6c2hvd3NFVk9yZ2FuaXphdGlvbk5hbWUgdHJ1c3RlZFNpdGU6ISFF
Vk9yZ2FuaXphdGlvbk5hbWVdOworfQorCiAtICh2b2lkKWVudGVyRnVsbFNjcmVlbgogewogICAg
IGlmIChbc2VsZiBpc0Z1bGxTY3JlZW5dKQogICAgICAgICByZXR1cm47CiAKKyAgICBbc2VsZiBf
aW52YWxpZGF0ZUVWT3JnYW5pemF0aW9uTmFtZV07CisKICAgICBfZnVsbFNjcmVlblN0YXRlID0g
V2FpdGluZ1RvRW50ZXJGdWxsU2NyZWVuOwogCiAgICAgX3dpbmRvdyA9IGFkb3B0TlMoW1tVSVdp
bmRvdyBhbGxvY10gaW5pdF0pOwogICAgIFtfd2luZG93IHNldEJhY2tncm91bmRDb2xvcjpbVUlD
b2xvciBjbGVhckNvbG9yXV07Ci0gICAgW193aW5kb3cgc2V0Um9vdFZpZXdDb250cm9sbGVyOmFk
b3B0TlMoW1tfV0tGdWxsc2NyZWVuUm9vdFZpZXdDb250cm9sbGVyIGFsbG9jXSBpbml0XSkuZ2V0
KCldOworICAgIF9yb290Vmlld0NvbnRyb2xsZXIgPSBhZG9wdE5TKFtbX1dLRnVsbHNjcmVlblJv
b3RWaWV3Q29udHJvbGxlciBhbGxvY10gaW5pdF0pOworICAgIFtfd2luZG93IHNldFJvb3RWaWV3
Q29udHJvbGxlcjpfcm9vdFZpZXdDb250cm9sbGVyLmdldCgpXTsKICAgICBbW193aW5kb3cgcm9v
dFZpZXdDb250cm9sbGVyXSBzZXRWaWV3OmFkb3B0TlMoW1tVSVZpZXcgYWxsb2NdIGluaXRXaXRo
RnJhbWU6W193aW5kb3cgYm91bmRzXV0pLmdldCgpXTsKICAgICBbW1tfd2luZG93IHJvb3RWaWV3
Q29udHJvbGxlcl0gdmlld10gc2V0QmFja2dyb3VuZENvbG9yOltVSUNvbG9yIGNsZWFyQ29sb3Jd
XTsKICAgICBbW1tfd2luZG93IHJvb3RWaWV3Q29udHJvbGxlcl0gdmlld10gc2V0QXV0b3Jlc2l6
aW5nTWFzazooVUlWaWV3QXV0b3Jlc2l6aW5nRmxleGlibGVXaWR0aCB8IFVJVmlld0F1dG9yZXNp
emluZ0ZsZXhpYmxlSGVpZ2h0KV07CkBAIC00MjYsNiArNjMwLDcgQEAgLSAodm9pZCllbnRlckZ1
bGxTY3JlZW4KICAgICBbX2Z1bGxzY3JlZW5WaWV3Q29udHJvbGxlciBzZXRNb2RhbFByZXNlbnRh
dGlvblN0eWxlOlVJTW9kYWxQcmVzZW50YXRpb25DdXN0b21dOwogICAgIFtfZnVsbHNjcmVlblZp
ZXdDb250cm9sbGVyIHNldFRhcmdldDpzZWxmIGFjdGlvbjpAc2VsZWN0b3IocmVxdWVzdEV4aXRG
dWxsU2NyZWVuKV07CiAgICAgW1tfZnVsbHNjcmVlblZpZXdDb250cm9sbGVyIHZpZXddIHNldEZy
YW1lOltbX3ZpZXdDb250cm9sbGVyRm9yUHJlc2VudGF0aW9uIHZpZXddIGJvdW5kc11dOworICAg
IFtzZWxmIHVwZGF0ZUxvY2F0aW9uSW5mb107CiAKICAgICBbc2VsZiBfbWFuYWdlcl0tPnNhdmVT
Y3JvbGxQb3NpdGlvbigpOwogCkBAIC00ODgsMTEgKzY5MywxMyBAQCAtICh2b2lkKWJlZ2FuRW50
ZXJGdWxsU2NyZWVuV2l0aEluaXRpYWxGcmFtZTooQ0dSZWN0KWluaXRpYWxGcmFtZSBmaW5hbEZy
YW1lOihDRwogCiAgICAgW193aW5kb3cgc2V0V2luZG93TGV2ZWw6VUlXaW5kb3dMZXZlbE5vcm1h
bF07CiAgICAgW193aW5kb3cgbWFrZUtleUFuZFZpc2libGVdOworICAgIFtfcm9vdFZpZXdDb250
cm9sbGVyIHNldFNob3dzU3RhdHVzQmFyOllFU107CiAKICAgICBbQ0FUcmFuc2FjdGlvbiBjb21t
aXRdOwogCiAgICAgW192aWV3Q29udHJvbGxlckZvclByZXNlbnRhdGlvbiBwcmVzZW50Vmlld0Nv
bnRyb2xsZXI6X2Z1bGxzY3JlZW5WaWV3Q29udHJvbGxlci5nZXQoKSBhbmltYXRlZDpZRVMgY29t
cGxldGlvbjpeewogICAgICAgICBbc2VsZiBjb21wbGV0ZWRFbnRlckZ1bGxTY3JlZW5dOworICAg
ICAgICBbX3Jvb3RWaWV3Q29udHJvbGxlciBzZXRTaG93c1N0YXR1c0JhcjpOT107CiAgICAgfV07
CiB9CiAKQEAgLTUzNSwxMSArNzQyLDEzIEBAIC0gKHZvaWQpYmVnYW5FeGl0RnVsbFNjcmVlbldp
dGhJbml0aWFsRnJhbWU6KENHUmVjdClpbml0aWFsRnJhbWUgZmluYWxGcmFtZTooQ0dSCiAgICAg
CiAgICAgW193ZWJWaWV3IF9wYWdlXS0+c2V0U3VwcHJlc3NWaXNpYmlsaXR5VXBkYXRlcyh0cnVl
KTsKIAorICAgIFtfcm9vdFZpZXdDb250cm9sbGVyIHNldFNob3dzU3RhdHVzQmFyOllFU107CiAg
ICAgW19mdWxsc2NyZWVuVmlld0NvbnRyb2xsZXIgZGlzbWlzc1ZpZXdDb250cm9sbGVyQW5pbWF0
ZWQ6WUVTIGNvbXBsZXRpb246XnsKICAgICAgICAgaWYgKCFbX3dlYlZpZXcgX3BhZ2VdKQogICAg
ICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIFtzZWxmIGNvbXBsZXRlZEV4aXRGdWxsU2NyZWVu
XTsKKyAgICAgICAgW19yb290Vmlld0NvbnRyb2xsZXIgc2V0U2hvd3NTdGF0dXNCYXI6Tk9dOwog
ICAgIH1dOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9E
b25lLmltYWdlc2V0L0NvbnRlbnRzLmpzb24gYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0
cy9Eb25lLmltYWdlc2V0L0NvbnRlbnRzLmpzb24KZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGQ4MGJlNDJkMjgwZDUzZjEzY2FkYmMxNjVkODE3OTJhMTY2ZDkwZjIuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQu
eGNhc3NldHMvRG9uZS5pbWFnZXNldC9Db250ZW50cy5qc29uCisrKyAvZGV2L251bGwKQEAgLTEs
MTUgKzAsMCBAQAotewotICAiaW1hZ2VzIiA6IFsKLSAgICB7Ci0gICAgICAiaWRpb20iIDogInVu
aXZlcnNhbCIsCi0gICAgICAiZmlsZW5hbWUiIDogIkRvbmUucGRmIgotICAgIH0KLSAgXSwKLSAg
ImluZm8iIDogewotICAgICJ2ZXJzaW9uIiA6IDEsCi0gICAgImF1dGhvciIgOiAieGNvZGUiCi0g
IH0sCi0gICJwcm9wZXJ0aWVzIiA6IHsKLSAgICAidGVtcGxhdGUtcmVuZGVyaW5nLWludGVudCIg
OiAidGVtcGxhdGUiCi0gIH0KLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Eb25lLmltYWdlc2V0L0RvbmUucGRm
IGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvRG9uZS5pbWFnZXNldC9Eb25lLnBkZgpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTc2OTliMjI2OGE5MmZlODgzNWE5N2FkYmM3
Yjk5MWNhMGU2OGI2ZS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApH
SVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCA0MTcwCnpjbWFp
JmN7cjVjYF5OYFU3X3lXbFFZSU9hWk5gamNsNjVTSnRTUCVAI0BIRnptI2tVQiRldCgobTFIZjdG
a35rXwp6Q2ZPP18jPWVzXmBPZFdiS0sxUSlVRWsrPXU2ZlM5cFpuYkIlKD5yeHl6WVZNdDcoWUNC
O1gpTzZNMjw5bSQmeGQKelpCcSpmMGZ2SXs3KVF7I2I2YG13b1U1SXVKeUBDfDhHPEQ+OUdwRkk/
diRyOSs3cVhTIXtUamxVYDBpY2hvP0laCno/RT48cCE2aGxVOSl+Zjk/PHlSYTE2PHdgUDRkJEhe
b0hLSUchZFcrbT5UQTkoPkZnQC1GS2NaaDtLSTVZOWBoewp6VnpCRj9mSHZYUGpCTll0dSUpYDhR
eSM4Y3hMcDdHVG1SQHdZJGZ5SmlHQ2NNQml4Y303KlFoQWlfOD0yNGNkYiMKenIhPFVIWWFrbThD
KT4lRTByUTxrTChZT01pP3RfRzNOaXxDcjslfW96P0pxUkQxYzZCeXRsdCtecz9MUGg/d1MpCno3
eUE2WUl3aEdYYCRZME5uZkZ8ISpFe19uKXVUM04jT0pZc2duWlpCK1gkUVJUaj5GTzdkdXZIUnQw
YVNNODVwVQp6Jmk8fX14dlM2dmNFTnA5SlZ5fUEjey1YWTElfkp9TEh9WHpNKjNKSkA4MGUqOFg/
ckVfPVUtRy1oPnB3TGMxZ2UKej5CVHlRdlcpVHYtXzJzPz45NTs4bFY0e3N1JXRoNUQ5cjlJS3ol
PmF8NjBfcnM3bHh9RkdQNlNFYlBnaW84TUlTCnokU3NEMFBBbmEpJW9YJVdqa0BxY0pZOHYpUGBZ
ZXBeKFJ3e3trbSRzOVdESW1HJUZmO0kmKihYbyl9anV2ek4xXgp6YllDQG8zVGY7QThNaSZfcytY
NSQocz5pOSNib0F7S3hfNH5gOU02WXt+a1NWQTtsNGRiRzcrZDhPbiVTUC0rI2EKelBkRX11ZU11
Y2t7WntLc2VyYENocSgwajJgPT5rMylle1c9UUZsWH0yajBzYWl9TGA+ezE4eGhTNUx9JjQ9fmok
Cno2a31ZKCoqS3Q4QHhFWWxDYEV1RkRZcXF2Oyo2aUdQLXAjZWwpZ0oyWWxRT3puXlRyaigqUnE3
Qn5mXjF5dHxQYgp6OGpBeHtFcjtAZWZufnBeUmFCKDk+dF96Ui0qV3RQQ0d2WmVxJUxLZmt9NmJa
eD45VGptUT0lZUo3OTUhbnlVWlgKenUkaX1nRSpUQVJNVWpaSSNKN2g5ej5zeGJlQDVeLWBTWUFX
Z0pgVn5lY0gleUEjYiQ8OFhXOCptdSlWK3JxUFROCnp6XlpkRi0zWUBCRnNgIWN4Nn5WYHNnczha
UEstLU0oclk2YmQjJEZVTHNKejRMdn5BbjE2MlYxdVZLSWpQWk9GRAp6TTc5YVg7I3xHTztVZ1ZR
bzN1eVNYam57V1VYUihAMHlWZVBYblZnQjcxR242b05wPUhTZDw4e3NzMTJWciFWQnUKenphTnxe
QWQzPF8ybXE8fiQoIyFrO3dJQ2s3P21+aU5iTGpQdGZ6YGRNWiU9R3ZLZXk8MTsoMzdvSHowJk1Y
VEhJCnpxek8lQV5PfDw/KUZBRT9zYFc9UUFZLWAlVjdBMl8kUzFxcD4tMEZ7QzlNbnFkR21CbiYo
PUwxMEYpISR4XnFlPgp6K2N7Y0ZvcjdtRmRYKk55a2tXKiNhYzdDJE0ldiM4XyYmQ3FoeWd9eFZJ
SCMmKztKZEp4N3FIamxvQFNmVjReOUYKejdzcWI7Plg2cFVuUXVZNExyVTxzKW9DRTZGNnM3KDNx
XmJqMyNSPihfUzx6c3FiR3VsXzd2THVjYTJ3cz0xS1FlCnoyPWA0I28jeldCaUNsbVVMOUBIWiVX
Nn1OMHAlX1NtQzBqO2RQYHV5PkgkRmMkaTF9X2s8TTAwT2BuO0NuUFRWWAp6b2pxdT5vRnFpMldw
fWZ9QE5lb09rKD1vcWlAVFRRQTlFeyhwMz5yazxKOEhJXkIheGZiI15rZHE+KmcpSHJlKmEKelVu
M3A8WD5TeX1tLVUpXkMxVHB4VV47fntKbGVpRzsje2FuZmBrbnlKaCpReF9eNkM5SnhAQGs2TmtO
Kkg2U25vCnpzYjhyQC0tY0hKcGlhPlZ4Kz9rODJGe3RZITlaPWJIVEZlYEJfOG9ve0A8b3tfP2F3
WFQqcWAmMWRKdihuQiM1Uwp6QXZ0MF54dWZDRV58WGYqPXNoMlI1VE8hS1RDdUIjXyhJQHJiUiVG
dWMqdUQreTQhUlQ9Vj18M2Z6TVNHMkxUYHoKeipkVUdmNE0jVVhaPmF4VXBsK0NxK2QmSzltRGgq
ZG4zekt9bHxobTkrRUFMMlB6USN2V2o0K25tOFNfQDRfVlZ5CnpgYE0wfUc1RGNXXnlONntuby1k
U1kpUSk3Wi10JjVKIyp0fUhjRFMle2dmd2Y2QCVyQ29kQCk5IUg5ITxHPWJzbAp6Y1c4VWloWHcm
Skx4eEpfYDR9YENJekZsU2FeOW9vZSpJeldMTTR8WE9HTnxzKnMqMVJTY0cqJEdKfHAoMTZ7WDwK
ejNCJDEhSFByK1lLXnBkeFBLZzIhWTRnPUg1P0NHe2RsaCMrQCFBQzQhS2lIWG91Z2JXSm1YUU9n
Zll4emJVKT8tCnp3Q0BofiZTZjMkTmZ9ITxjPDZUNkJUVjEzJDBvdnNPNVRoej8wNGhEbj1XNkN6
aU04Wl9LYT4ySnVsRDQoKXlhYAp6R29NPmY8eHZZTVNMdEc0MT92RXpJJUtaIygzc0dRWl9Td3pq
LUBjeGRYSHR5Xl4+KXJWN31sSnF3KU1MYjsxZFoKelc8YU1mKXwwb3ZnM2Z9TSpteFBIODF9OzE4
eFJKZVB4TCRtQkg4PyFFSEVPXlpWanJgWHo+WkBDVWE7LTNVVjY/CnppbG1vXlVlYTxEdW9PfWRC
QSFmY0tXbjR1ZSQtVWlPMFFUajN2M054TztYWk5JVzVHWWNZI2tgYngwUl47Z3p6Vgp6dkxFVl47
aGB0NHkoVWxaUkFyaiE1IUNgTzFXSVpxIV8oSCUjQG1hTTNsZzFEPWg2Wm9kTU57R0s1NW54UztF
I1EKemdELXIwe0khelNwa0JHJkNeV2I5YTw7fTtkNG9jUG1VPjFgRCZ7NjgwfjN3OEBtYWRyMDgq
MF9ucEFPRUZKRjE0CnpeZDAyVU5uWHtTTX1GQHIlUCpGbmVVRXomSiszTUhhSk1JVXJnQCF6bnor
dTBnVyR9YHJeJFJ8VVVKelIhLUVhYgp6dDZPa0dvPTFkYUxOeV9ONEtld09HKjA+O1F7ckg/VW43
I2JlYTd8N147Q2dXK2Y8cz1fQF9GP18mJCFsJSU/Ni0Kel4/SVI+TFhLJDFBOztaNWlHbnklOT85
b0VEYnBJVUtrK3Fjd3pNa1J6akRYJU9YSUE8WSUqXktaIUlxbXVRNntMCnpxRDdofiEhQEhsZ1Bi
dmlYZjN4bFZ8b0VKQmIhYVZ1ITUkaEZMcXdDZ19PbDJ2eHx4c14yRUNwOX1YOE42ayhyfgp6bmJf
cyhtVVNKbU9wLTh7UmpJSjNGIUU4PSkwUS1tdkBTN04lMnFWVUQkMDZUciYodG57TzB2ckBjWE49
RHRHSWoKeldYRUxKcTNAJH0kRlFmS0NLaHlgJHUtTkJaO2B7a3ljVjtmSUJxVWY4bDk8P3EhcmhH
KFAqJUQ8a0huRFFhT3ApCnpZMF9RQFE2T0YybnA2N0cpVTs1ZXt7Z2JgVC0pX3J6cXtMX09iVzNr
djYpPU1ULUlVPlZuKlV+VipJOGVyVXkpMQp6JTRiVj04czlmJUk5WHg/VE8lRkV2MU1KNGhiTGJZ
PCVeR2MqRFZDZlhJUGRGYjUta0JsUXZqMzFhXmdYVmV8QDcKenpFTVAkJXxURF4pNzlhRGVlODQ3
VzBoU2lnbUhTfDBPNG1uVDZ2P0hyZD1Ya2hxYGlebjdObV5kJlE1c2NWOFE7Cno8YTFBeXUjcTVH
YD9fV0s4aD1Pfkg9RW4oeWZfZHk8PXkxY0coNHk8dnskKCslQnN6cHMyU1V1bDl4UWlPSmNJUgp6
bk8xVG9AayZXVyhrNW9mYVZieW50WVdsY29aXnZNQDdqVnUkdTBDQT9WazZ9QFk9eGcpWHU9Sjkj
OVRnJFQkc3AKejItRTt4cmRNUT1WbXk0bjMpb21zUShxbSVGWnM/fCg0dj0lUmBufiZKS2BMcEdf
eGg9aj5sMDZGK2AhenlrRGlVCnpaOy1ES1AjbU1LaEg5IWxBSyYoX08qMXgqT1BrOV9xZ31JRXkt
KUxeZFZxU0d4XnxrMG19JUxCMkVtS35leXFVNwp6ZX5kRmcoQXp6S15XQ3NeKWNFe28oRDxTUit+
UmlHe0NvRW88b3BnJmFle1RkPjlzUV9qYDFIS1chc05GKHZWTnEKekRQRmdKPHdGSnpCdihpNkNR
WUA3UFF8VFFac0VRcjBASzJ1aGoqKWBIQ2FZdXdUaVZrd1o+YG5SOTx9WWRUelpNCnpJKzM0fWtk
aTlgJitwRnYkMDU5WXRHcWBRZntyTl93Uys0TzZEMW9GeGxtTnE4OzhDezwwQ29CLUhBRzxKeHB6
QAp6QDcoJlBeV3s4MkBHaihyRE5+dV9eQVM1dVQtRjxkUFdIKzVpSHIlP2pecGlYP1lsd0p3JGVV
Y2NEM0gkQkVReTQKekZGTFVsTWY0WTJlMFpoblZfOUR7X044XyUtVWFNKGVyVU52cWF6TT9ZfTdT
b3F9U2txTDIyeihgPzk2VTdTJmcoCnoyNGg2PUVeYCo9V0BrPzRnPDsjV0JGN0pEMCNAQiRGZGQm
YEtJPWd+Q2U0a1MyNDJ9Nz8lVzdwQVVAaTd3Q25UOQp6bzVBUGZASiFYM05qaz5WWVVwazhDKDl5
bz1XNVBzTWZIe1crUkpHM1lnYnR2OyUoeH5ySmcofFVNTytZPzh9PmQKekkyKzB2cER7X0M0WDlZ
aWVCYihFcGw7TTl4UThaPXU5O3IoMVA1UERhTkRON1E7fntHR3kzQ0xWSXlmU1hTUy0mCnpGNCNJ
KVpRPVklQjF0bnNeSEZPPHlqUCFtP3x8JFIqJVg8RXhUS2I2PEpWZzhkIU4zYjAqKH5TPSktZWda
MnsjQAp6QjNDfVFadCpZT1hGZk9ON1pkbiZNdENvNDxLPGhrN187cERrTndkdkFJZGxjPW1kPDtn
IUUoez8+YTg3YmEoJnkKekkkPEx7cXdJfkhIWXVALV5XSSUjbVFUPkNZRD5nUVkmM1YmKig7dWtS
cGtAIUdLKSkjTT47fiZOfn42MXgjeGMlCno/dFYyK0UzaGpAVEZNN3oxYC16e191fjNiUk51ZENK
czsjU15KMitgSU9BNWZjWUQwKFJfJWVuc1U2RSokJnJuIQp6Sz1RNXEld3UlMTJYX2BGWTZKR0lK
fVMldmpfaF5RPWQpVFZiXjZRZyszI1dKJDgmXjFkU351R1JWdiErK1p3UlYKekMkNyZ3N2BSRip5
Sjs2NlMmNVJ8UHUodWpZZGs+OEN5OHA1WXNfakVYXzUlcmdraz9APiY/cEBndFZVVmgmcXZQCnpG
RT4tVzMkbFdJYzhQWUZfTkhhMD96d2NPM25OY3prdnNoeEU+a3dzNkZvaS1PT053bk1oYT9gSGJW
RVpjZF9mTwp6aThKJGhUWTlOa2FZe2JkOE5hVWozYzEpJGomNnBwP2Z5O0dSMHtvJChsUmlxVSQ5
RSRTRUAjVlRyQ3R6NzQzbnUKejBhRjNpNU4hRD9nb0BVYG5EfTR2X1cxdTxuaE1FWTZkczN4Q0FB
JUZKU2d4PzEkUm9lLXZBaiNNZWpjfHFSXmdiCnpYVDA0SHNRMzZ1Xlp6MD40RUElej41RkpBU2tE
TS0wKXt+KVV7VnFZdXo/cmEtUDBkVEFAdUw0QDlRYkBZdX5WNgp6RXlIUUd2cjxyKUVFRUFuTFoj
dHdEQktKUjZ7ZygoTSpnLVIzaWFEflZKV0BpX2NiWFUxQiVpemRPRn07KXVfbisKekp0d3R8en14
KSh7b2tHWHk1bnA/bCpSJU1nOHR0SG1YVmYqT01gOH1LUSp8RkVhaXgpN3VmWmUyOTxfVUkrUTso
CnpJNnw4ODZhTGhvUF5ySCkxZGBHKXthMmd9ak1CXmVzbGdGMk8xYn5rcGZZbFF1TTA+MTYkaHNy
KzwodTdPVXdQTwp6JC1zWUcqVjcmQztFWiRzLWs9KmZfKjJmMChmfUZhQGYzZWhKd1ExfkVtdkRT
I1ZrTEBZODFQaSFeKzlYTmxVe3AKekdIfCNRT2JSUTchOW8hKm0+ZTh4Vn5hcn1XTVBWK3t+aHdm
WlhUVyNZa1YmVlR2blIkKjh4T2JQWHFLSFBKUj88CgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvQ29udGVudHMuanNvbiBiL1NvdXJj
ZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdlc2V0L0NvbnRlbnRzLmpzb24K
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZjg2ZGRjMThkMzEwZjQyZjUyZjYzYjMxZTNkZjkxNjhjMTkyMzE1YwotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmlt
YWdlc2V0L0NvbnRlbnRzLmpzb24KQEAgLTAsMCArMSwyMiBAQAoreworICAiaW1hZ2VzIiA6IFsK
KyAgICB7CisgICAgICAiaWRpb20iIDogInVuaXZlcnNhbCIsCisgICAgICAic2NhbGUiIDogIjF4
IgorICAgIH0sCisgICAgeworICAgICAgImlkaW9tIiA6ICJ1bml2ZXJzYWwiLAorICAgICAgImZp
bGVuYW1lIiA6ICJOYXZpZ2F0aW9uQmFyTG9ja01pbmlAMngucGRmIiwKKyAgICAgICJzY2FsZSIg
OiAiMngiCisgICAgfSwKKyAgICB7CisgICAgICAiaWRpb20iIDogInVuaXZlcnNhbCIsCisgICAg
ICAiZmlsZW5hbWUiIDogIk5hdmlnYXRpb25CYXJMb2NrTWluaUAzeC5wZGYiLAorICAgICAgInNj
YWxlIiA6ICIzeCIKKyAgICB9CisgIF0sCisgICJpbmZvIiA6IHsKKyAgICAidmVyc2lvbiIgOiAx
LAorICAgICJhdXRob3IiIDogInhjb2RlIgorICB9Cit9ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvTG9ja01pbmku
aW1hZ2VzZXQvTmF2aWdhdGlvbkJhckxvY2tNaW5pQDJ4LnBkZiBiL1NvdXJjZS9XZWJLaXQvV2Vi
S2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdlc2V0L05hdmlnYXRpb25CYXJMb2NrTWluaUAyeC5w
ZGYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNDZkYWVkMTM1ZTQ1NWFhMzZkM2Q1MTBhOGQyNGI3MjYxZWQxYzljNwpH
SVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgNTkyNgp6Y21idFkyVUhWWHUlPTJDUCFTWG1BYCpIQFhh
U0w0TGV0UXRManN7Z0ZvWF5RTi14cXgxTyVqc2ZGS0dBZjs4ejsKekF7fDdVXmo/MkRAKUZENntM
Z3Zrb3dxMDEtT1FieGR1UWdgJCg7fFZyS0JQTjc4SWNiSHFDQyRGNlZEUXtuWFMjCnpER0M0cVB6
VlJnOCNlJCNubilMMGoyJUQ+Qyg7MjNzbnxQVmtaOWMxMzY0UTNBKzFvPk5QdnRDcjVncn5nZ2FB
dQp6NWp5TDErIyZ7M3pufHl4UXo+K3VQWnRVSWdgRVVtQitxciRVT2QmJWU0VW5DSUpgPzJZY2Ml
X2d+P2BDZWxSezQKenIrT2A0aiopVWpMMSoyPTY0PzZvcz88eyFScE99Nzs5TGo4WmxEODVMKnhx
TW9lYClwTEAwbHlJODhzZW5iQl8kCnpZZHx8SmQ/fCR0bGg7e3JLNHZHZHV6JVAwekRATXBXYmMh
Nzx+R3NsM3Y5RCpVdUVoJj0yJl9Ac0xgZ3lkRlJmbgp6VlpAbjc/YEN3PTNUKFRTMT8pVm0qRUt0
dSZReEZUWDBZWGxDT3ZefUApfm9HZjZpKURkUT5uUlpyb21gI0hIMyUKeiYrP1lJVVJPdmF1KShy
SFZmU2dSRWRMOERvNmYheypwKWVkNER5PzxXOE9CRW5jQnZFLXFnLUB2VUktc199YXlOCnpwV0RX
M1Q+PT0zZ35gKFBgfTYwT2wrPnQ8bz9OQFNTWjJuZlBBKDRrcW5BMkVBdz1JVm5nVUI1NlQtalc3
ISpGYQp6O3IhfD48R3U7YTEzNDRwRX40VWRQTHsoPUEqNiVWWl8xOV88VSZeSzBRNGBEWUJPd0pW
NmIhUXQkUl91cXFPUFkKejItTTdxIVlHazApO3xNfXlUailUcEN0VE1MfGh5e2hgJHk3VFBwUnVV
NkJBR0V4N0lYR2FCaUYwZl91YXN9OWwpCno8JkwmT3gmZyQwMm96Qis3fkhyVTAxcExSLWZ0cVU/
Y29ZMkZNdFVNQ2piaXJ6entQXlQ7aE11ZmA5NTRWNkBPRQp6RF90WjhWMWs9VU5kO2dBNUs9QHJx
MHFYbmE0UkdMazA/YnFGYVl4MXRjKG1tJFBrOGJLdzRxR2tFbDM8MFRNcSkKenskP0Y3YGVwcW05
M3tWTntVO29TZXpeSXx1OF4pZjBgdUsqNiVeVlRoZ3txbHVSI2UwMnF9RWBOQnw1MTtKP0RjCnow
QVVicnhxayUlQzthWGA2cGVDc3trfXE3ZlJHKjw/JjlWTyRBITx6OHxSRUowMVU9IVEzfE82Rmxj
dk5YZiomZgp6YTM/cVhkLTBEfmdITWxLazZaN1BtPyopdERlMUxxcGxmN0pBWXJYRyF0TUhLU0Ft
Y2xxe0lNR1E1XnphQSQ1SW4KekdLeiYxOSY2cU9ETW5eQWtudylyU15DSnRwZW9JVjtVPzd2a3s5
QVB1aEoxemJ1d1VvMkxMYFNfKCh+Sns+c2RFCno3ayZscnxDWEErKHU+UllaeTVtcGd3OEQtaEpA
dHRSbHg7VTUmJUw8TkRxNH1xeitXIWU9aXA0azM5OHNNO09BZQp6SElTTjU9aCo/azlWUTxOSyhD
YlFNSDF9QHdMbVNSJnxwcHZCfmxnb2IzNnZ0ZGk4fFJGbUB8dGRhQz5QNUpNRE8KemJYcU05K0Rn
aV5XNl9Raj4mMFQqPEViYURNaVYzUjYrPEpvPjs2TWsxWHs9VU5JcVo7Mj9JczU0QyZYRjglKW4l
Cno9eEV2X3g8cDR2VkBPeShXbik3RS1CJSomS2R6QlpOcU1mP1FudEckNy0oSFIlM3I2Jj17OSY4
NVlHLSM8VHloPgp6c1hRUWw8MVEhVEVZVTtWdmdYVWVyejlWRGw2WnRlIU5McSM2eGxEPnI8LTBu
P2RIJCVSa3VHKj1BNmw1R1V+cWsKelVOakBSVDVDS05JRiVEa2w0YmZCSUJBPlhNfjFBP1ElZmI3
LVEoYC0ra2NgLTBIUk5ePSR6LXdhKjdhRXJvWCV2Cnp1fC01Y3s7KX4lSig/ISFLKy1PUSEwVmFx
T2U5SCE4c2djeHB+dj5LM3ZEKXNuYE9FTzJyJUVuIyt5XiZVWWdqUQp6YV9SPmwjPXdgVE42TGdp
QmoqJm1ffDs7VCltNVh4SWxGX3BrcU9xangrbF9ZSzFjZVNvR2FLMmBSRUx6MzgkNDgKekxOeUVv
eUJ4LThTSVRPV15hO3dIJiZiVkF5QDBJKTIpME5HJUV6Qjx2eFlqRUNwM01mPUF3I1BTI2ZlQiV5
Ym13CnpUWXd5OC1hfno/M3pnaFU9fnoyNWtiMUBfOCsxK1dxNmt1WF9GNFdqNFctVWJZTU54TV5+
b09IPjIkck1lT0clVQp6fEM3dm0jPzZvZ2VlSCNaNnV9WDgpZ2Q+NjRDNGY/RFQ0ekJyVUVYQmJD
RiVYbzk7KyY9V2FwWkEwbnckc1ljZEAKemt8dDJSTSRGK04+cUYkZlkoZlg3WV4hfjVSfi1NK0Vt
cWopK3gjSUxtMSg1UWwlX25wPyVYYlF0VGheIyYzYCMoCnpCR3s+Yz16SlUqPHwoQ1VrUlhWTi18
e1I9cG9sQitJRGpCSFA/ZTdPNXdWfnVrLVokcllrOFNyMCFuJUNGcm1rTgp6MlVtanJBZkhicHg5
Kjklby1ybDRVNFBiPGlhSFB+TTtZM24wVXtnXnZNMFp7TDNjNCp6QSVtPG1vYE9Wa2RFMXkKeisq
P3N6T007JWJTdXJBeEU8eF8jNlgpfHd5IVEqVTZ0JCN4dTM/eX0kaiRCX0p8KzdFNUl1ODM9cFRJ
VUY7TzQ8Cno+QGRPR3o+IWlaN0lOcl5qITdsMmklLVpIPnFuPjVEO1o+SERuMmt5Rj5lcz9oZ2Zf
X0Ikc089Qys8LShCeGx9Swp6UWl3QztBVXQ9fkZgaGtfczZhVjJqd1lBK1U1c2t7b2YrYVlWT2o5
VW1sIz91UGxwKnJQYXpFOGc5dnJkeis8YiYKejJBWWc+O3g9PzVLP25FcDVDZ0JDOEZJYWxeYEg8
eG1saCs/V01DTzxYO1BafWlnKn5sQkU+P31UN1VUfml8Z0lXCnpPUXltdVZrSU9Ndl9zTD1meTwz
JnIjTHNnLXQmJnJ1aXY5PmFOOXVtVTlGYElVPHFLSWgtR1czPEJGcCZDVUx3Kwp6ZC1WfjMhLSsk
V2ope0RwezNRNj8yVHw+eT1QKFI9RDRsbmNEVDMkS2dKSnBpWUFsPyQ2NndgS0lUJj5+Y3Y4eFAK
el53Yj5LJXtaa3dZcHkxP1UkPSYkRkIhPzEhJTg/WjBUd3tvMVgtPHorP0AwPGJyeGxYa3oxMUxA
OHJEWXljUDN3CnomT1VlUEghT1R5bTJNMkhRU3cqITdsSX49QnlUNUF3LStaQyNYQll+QztJfG40
fkxSSGxQdkBAeGgkPipzREZFUQp6VHVHJGVBbElOOWx2OFN1cjd+NmlLe2BaRElXOz44NXNwWWpM
P0deZTY+SFc4ekUyMkJzNWxRUmtYdFA2MT9GOTQKelFzflJgP3lXNHBTJF9SOUAteWZQNnEwKz9t
JD14eCE/c1lmTHhCViRPPWhgZ1MhUzdMJVJjSXlgMmUhcTd0eSgjCno3bzhZZzlVWiRaSWA8QWNq
VTUkI1g+V2V8bytzJm0qTS0rRmk5TnxDaTcrWClQKldjQEt0R1VQPXYpWnYyUlUjJAp6eiNUPiRq
c15zYVZ6QnZHJmtTdDNoM00oYmFvQUY2UmZKRkZwfkR9SU9WVWU7T3NQekBPcVpHVG5VWTBZIzRl
fTAKenFfKEhkcnB9QURtZklPcXkmKkI0SEoqUUM0b1hUez4oc0xXbVBKV3M2Xz4yJDMtcmszanVs
QjRUUmtyYHc5VUN5CnopX3VWJkxDXiN1VXR3Q0k+IXw/SzVIYnw5YyZXWGZDOE0yTG9TOW4odHVx
UHVTcE55fCopbUUjdD5KbEFXTDZ6Swp6MUQtUXdiKihWSXNFMFNsSTdnflEhc19qdiRXNTdQNlZC
M3piaFFNdm5EKDJ4IX5OcldtUX5udEVWYmpEOWo5b0sKelNhb1o1PUAlb1Q3Yj01S0JeeihGYFE+
PTA5cT5efU07Uyg/R21KNDxAVVFhZzNNfSlwOFN4bUE4YWtJUmxeITtKCnpaYzI0RHYrezJaYihw
cCk+d1kjaV9vbGMmVjhXd3IpbjYqcnRhT1pfYGNeZXxtdThwIWkxUD9jQ0xRSiNSenRIbAp6alBj
O0U0KXp+N3g0YllfKn1XTShPfiZRUl57UClUZTxJemVvMlVEMWNNY1ViO3w2MkR6JEo5Z292Qkl8
YmlBT28KelY2PXNvWWdXSmhYd3RPdEA/cSFBcF9xQShDZy1OSFZkO15SJHxGOG40Y2Q1VVJPYGUx
I0Nhd3htM2VzYiVpSG17CnpVc2ZkU0E9VnclXkpUOGZNOTlSKlQmVlNeRSVGIUlobzJDZ2NwUSN4
NHtnako0anNXckJ1SExSRUt1Zj5zRWA8dAp6JHhzUFhvRntjQlg+MV5Ec0pfUTApTjg/RStSczN3
YUlFTU5hKVV5UStVKCs/K2EqRE0oSEVSNi1qKGBaY2ZDQUcKejFRNXpmaWNRdDN2MkRGPSg1TSYm
NEYqcUBjNClLbTBROURedVgzYG9NelNIbFFRM0Aydn5lYHhuS1QwJV5GPzB7Cno0fEtzXkAwZG98
XnZZTXQ9YH0kUyg/P30xcFY0bi0zcCVoUmFUWDBtY1goTnUqeykyYG9rbT52UCV4YG12U2FiaQp6
YkN6VCV1eyFLMVZaTWNMSzQjTndBOSk7NGt7dFh4eEpOMHUkdD1RM3R3aW1qK0I2WU57PmBOT1lt
MlIqblN6SUwKejR8OH0jM1ZJNTw/MVJocSVsajA3QFdAZz1HWkFVNzhsZ3RmOUZTdHdOQmU7X3tS
YFEwSkBKfntaYm1sTWp+eyV+Cnp7NmpVR0JNb0BwaF5veHRefCZuKm5mWHo+Xlc1Q2RPek1uRiRD
ZFcmX01eTEVIZSNPY3d6VkdMTFhSODcpKk5ZeQp6TGszR3NOOGpEQEc7NjR1YGxFSV4pKjBaZUk8
bkVCKGgtQVhvXlhqQUA3STIrVTBRMnRTR0dSYXFWUF5aZCNYbUQKeitsMG9jKzNCTHc+WD1QZ3ZC
UExHeUxyemFoPm93M1V0eiM2M0Nqfmt7PGphdEkoTEl0WXd+dlVqeXh3bCRVVlB8CnpFbW16Q3JY
WTtXTT9SSEluaWJEPlplPyMoUk5yMnlIR3JHa3Y4MSgrd1Q+K3BlKlVeZntpT3FSQWIlLSREVHBh
SAp6YipeVH53Xy1LQGJMOzMoLUdwO01BN0tufUdub3U0SjxJIW13bW1KIVZ0TUNnXz9Ne3tqbzlW
dnJLJnBIMEUrO24KelJuXlVTRUhuZ34qWkx2V2VMJCp6Mj1XfkFRMmF3b0xkJmJeSkZUZGIkditm
KkZCQzBtaVI4VDdDeX1AK3glc3RxCnpwS1UjWmBvQFROcTxgVGUqR2NCPytmVC1rIyN3YDMxfCMw
KWlyZjJZYGM1bmNfTjhDeHo5SngtY0l2a2l5Xz1GKwp6X1ImQFk4e2Q4TE50JEcpPWlNIVptWE9W
OzIqJEFNdz1wdFI8dWtxTUM4Wl9mOVlNKTIle1NrbjNyMV4+amBmcF4KelkpZDR+cjJOelVZZ1Ip
flZnXn5PR2FneTIrX2hoUHYraTg4PXZzRjJYdTl9OEV2ZihmcTFsbnBfLT5XfD8xUiZFCnpYNXkk
YmhpaWhoek5oQTJxITwwaVBrUDctWHc3OWllSSFvb1BPTWdAdiQtZj95Y3ZiRSNVfSYlTHBCOTlK
MWI5egp6RVV7KGJ3eX5qPWliQUpKMlFPaWJxfVQjMXBHdnZQNjB7aEtqWHNEVF5MZSQ/eXdNU3or
JjNMayRNZnkmVVEkbXsKej0zVVJEOGUycXIofXJXdWEqQ3xfYDE0eEghQCp0V2RGekZsSzJRN2dY
WmV4aU1ZWGNLS19eKjlSeShjbml6fjJ3CnpTVzskO3Rmd0V2QHM8fi12KDRQWlVod3dPPz5wWV8r
ZmUtZVIjK1M/e0E8JlQ/PUo4JVRublA2c0hneVVMdDVpfAp6N1dgaGA/M1dKc0tibDxkJm8xfT52
OE41dUh3a0Nmend8OXB2WW9RSnlZS1VXSygxbTloTm9LTj9adlVZQD5HKz0KemEhMDF1QkxmV2JX
cj5OX29odXlPbiFReTF5IVhDRjcxZ1RBenBvSj56dGAqMkZpM1chUT1uend4eTtUalF8PXx0Cnp5
YHg7UURWMW89WTI9V0cjUUpUWU9kTyEqR2NSV2N5LX16c0lsN24pWSFyOEVmND1wbCRMZUdLXkBH
SyRPdTU9agp6e0xjLWY2U30oMy0mTm8lSWpKKnxqZX4pMWJGRGU4LSR1UC09MHxHKXg1bWg3NGEp
bjBsTlhlTiR7ZmJaQmhHfDIKenp9UEM1aUsxOVNaKnFfeVhWPWUpaHNLMDVqXyEqPTZTMil0Qzhf
dn1rYCZIKWskVTtQM0tRQyFecXxxSWhiMXQ3Cno+RE49PFZSc3g8UHdsPjw9PSgxMDluPjNBbkc0
WT4rYTMqYVohN0crKCZBNDJyY1FeeWk4Tz02VCQ/SUZhdU9RJgp6UXRWQkxDZlAqRVhiO1BWbUQw
RUxtP2J8RkZOa1pRSFJ9X3lQX3taRmBgb0ppYmxzJW12ZE1+fCgteS17bWM8bl8Kei1RcjY9WUVs
Z29CXiVgbnNCbCNzUUtAdkM/cVotKDJaYn5gUEY8TjVNaTVJfVhJXn1UTDkjeDdDdVFLdGg0KmM/
Cnp0OW40ckUmQWl4V1hpREReKlF4KlhsYjZFYU52bmFNT2l3RlZjUkRXYzB0NHxpSGF2YVEoKy0x
Pk4yRlBjVCF4Xgp6NCFYX1huKWNFPmxSQVgpK05mX0oqNTZkRWIja01yX1BiUFdeKj1CU1lRTEFG
TzRNaXo9IW8mfGZkIT9OUHg4Xl8KekdZS0h7K24/VWw7ZkFWM2VsX08wQGFWaks/KXxBIUc+RkMx
dFNoKC1vNllNTGxscXxSTCNxNDMpcFdDQjEhVTxOCnpHdFk5flcoNzhGO3RidiR2Zjs+Ty1LPE0l
T3BfbF5yfU5XMFZqZzVORn5pfCs4QmRSZmBBNHpPTXlQcEtjeT5qbAp6PmMzanI0JEJPQUdXYj9x
alBQPi1zRT1ZaCFyUUtsNWpvVV9HZGM1R297Jlp8OElePzltaGlgbHg3X0hzeWlJenUKeld+KmdG
eH44fFpZPkFpaUBWZHs4eGlzeERMblcoV2F+MTJidDNQKjhDSzI8IzJeOTYtKmRlMik0fHp3Mj1+
bnEqCnp7LV9Vd25MYkk8UWc9NUhCZF4lP0s3VEk0b0d0bFF6YDt7Uz1jSUpzWiVkIUBgaFpzNnta
YDcxYCRaYHhtIz5TZwp6eV8jWmMzPCRtNXhFPi0pZUpXVFo7THF6MU9penxjN0VFTH1peFg3MCgz
bnRYKTNCJkt0blB+US1RXkh3Yk9VWk4Kel5iSGkzUnQhQmhsO2xNdnZwdCZMcUIrcF45QE9YQTNj
bXImcERgPFNeMkJ6ZnE0Rnh3SkcwIWA/bmlGKGhGXl8oCnpPa29ubDZETi1leH10XzUjTV5DI0lu
eHtWKiVPRnk+Z3lFRj54bn1KO1VVQkg4bU4+dGQrQGZ8TTF2QkRIOUdHNgp6bW4lO3daanNWYmVE
UXlEenVHZGJBJDZoYT9EaUR6QUA4aVg/QTJOPmBsMTA/c197RG5wWU1rJHR8VzM5ZV5XSykKenJJ
fHtkUHd2Zk5xc1ZwdjdqZkA5Mn5EMjVFN3opMCstayNXb3AwYWh6OGgrSFlUPm8jemthOGNOcntp
NHIpYD1RCno2NiFmaXluYTYyU0hieWwqSVVgR2dXN0FhKXFWRlFfRytgWiQxUCtsajNKdz4ld0FE
OytnJTNCblJfUDFVOV4oewp6X1pSTWNWfCR3RXJ+ZTtpP0g4MjsyMDxrTUVMbko+O2tVWj5nUTVB
ZXVIb0RBVTtYfUhncGI+UVEjZzJUI3ZNbGsKejtrWGJEZHV1bHdYWTtkNDsrY3p8K3okQmY8anhP
XmlmfDB2MzEkMChPTEZAfkF7aWpqWnVUZV9mRGwrdl56WUNBCnpzPmErbTtaXntjRjJFMX4xX14/
TjE7cWZgP3I9MjUyWXtvQXpWbDY5N0Bqe1R7bClva0Rfc2BgZmd2Q1c3JGh0TAp6NSpDSVNnRnN4
ayZ0SUI8XkIyYyZTaTQpe18ofHsmZW8wNlhNQHdSR1lmezJmNld8fXpsRiZfKl8xfU8wPCo2NE0K
elgrdyEpdzxJWStlO3hwRkYpPE1fZkRQY01PaVRwLSRBTGNwRjI3X1RRMytnVHt3V2chTDRNYzZ0
XmVQOEFXYHcoCnpXbnZQekVkSkE7MnQqUk17Q348bzt0LXNsfEJee1VhTTFhO08hN0ItVmp6Kjxv
JnwkYFV5QklqX2M9cilNMUojNAp6NDF+d1lLaiMkI2l+WTcxRjx+JXtyMjNiaEZ5d0RCekBYdndQ
RHUyM0A+JHAzMmJWV1Y5NENpRDtaWFhNb0skbk0KekxFI3wjb3RqZnEhaCFhTjcxQno/VEhGUT5s
Q1N8R0FZdmQ8dXI8TzgwayNwYmhDbVEtWWVeWih8NksqZ1JOfG9FCldoUVVHZEl9cFN+QnFTKztL
eExROzxeS1EhTzc/NjMKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdlc2V0L05hdmlnYXRpb25CYXJM
b2NrTWluaUAzeC5wZGYgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Mb2NrTWluaS5p
bWFnZXNldC9OYXZpZ2F0aW9uQmFyTG9ja01pbmlAM3gucGRmCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc5YjI1MDEx
MzRhYjllMjEyZmI4YjI2N2ZmNmVmY2U1MmRhZTc5ODIKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFs
IDU4ODkKemNtYnRZMlVKcl93NTE5Skx7eTN0QXRJcmQxUUgtM3kqRVJianRQVmchNFNGO1FIbkhh
QjchMVAxUTlfTGwte0lFCno2WF95Tk01PVZAJFdLdC1eRjd+TWZCcDZFTl5VdUc/IyFJQ19ubWNT
Z1k7Qz9MP0VJUDA4cW8hPmVQSkIrVC1eUAp6TyNtbm00OCkrRTBUKFg8I2RPZl80bWR8M2o5QFlW
aW01cmQ7P1AqYSlmSV9EdER0USRjNChsUzlLYUtZTUkrcSsKenpOQShMaXB+dlN5MkBROVB0b1RD
dVV3bnFDRnw4V2NtK3FOYkhsR1g0JHt4X1U0MFh4cHRrQ202XkMhOF53Q2dnCnp1VTdlX0NqfnZm
ampUVlprQmArLTNYWkN0PDdZajY+b1k3MllTSiNNUjdIMm4kUS0+fjc2c340WGUzQVUmcnYodgp6
X1F6e3olbklIcVo3VjleTkhzSUw2UE1DKDtyZUZ4aikhQU0qfFEybz8mLV5VUE9MNSM7dSV7PUBN
VnsrYWFZfi0KejRZeTBvSlpVT1FNa1Z1Q25hbn0yREhuWlRvbjVTcFQ0O1cheCl8Ty1RJSlhYktR
T0UjYSgjVmg1Wnx1ckVMQTVkCnp2cDRWNF5xdDBMSm9fOUUoX1pDLUdtWHUxX31VdXh7ZD9YVmcq
d3MjbXZHc041QE9QZE1KSkw7K2RjJlpafjtjOAp6TkBpZilFfE9Majw1eiZJPVAzQj9YKkdaKS1O
RyFze1dJUlNDZ1VHZip6QEQtKXx9YVJtVE12a2pEIyN9IVleajkKemF2ZllOPmxvUG4mZzs5fkd7
ckxkRSpifHd5VzlPckRkQ1FZMVRwPUB0QXd+VHY1fE55e3VAWH1lamFGYG0+JHlNCnpAUWcqZjxB
NCVCMFcmfipWIVdgblhpdVF6UGxHYlg5WTwqUTFRSjBlQWdZVkRiMyFVJWUxUjVWZiZuNTg2cW1G
RAp6NUZxX0UzaH1LWUQoR1Bgd3VXZE4oMUl8T2lXPC1nRDVpe1kjYjZDUmtoVytia3RAb2M1VE1q
eXd7bWhvRjtmSn0KejhFdU9AWSpCTkEwSHVHbXtNSXxzYmt6R1ZxUU1XbnsqITI4S2ZecmdTSXAy
MGcqeXlmNFRFKGZhRlRFKWRIXjZtCnpGe1EoWkw/QUZBQGg+MyhsbUhXXmAqJClSIzkjXjB0Nzk9
PDkpfmtEMWQxNzlrP3gpek5KOUUte1JxSnIwd0VCaAp6N2VHdUNoe0pqalFtWU5MTjRrMHY4VUdL
YDNtSCl4QGYqRXxLYEFGS0RRI2BSPWN5WE5sNm96cVlxZTF4QXxWJGsKeiQkYCpmSnJZNE5Fbntq
Ym53ZXcpSkhaKGw3SXJMJTw8XnRxajFkVjt4TTtmQyFDc3wwI147aXs9TkwjRFhQQ0dECnpXQkBU
USM4Z1Njai1XWT07VjY2bUgqRWdLN3hGdWVlbjl+RiNocHQ4NXtXNGlLWGBZLSpBNWdATDM9eWRx
N0JyUQp6e2BZa3ReYDRLQjtTaDZKU0N2JU5gJX5PTiZebnR4NGUqMUUxYH55VHhhSksjdmR+fiZa
eHU+NCMqK2RqYzFFP04Kej5TNWZycypKUl5abFZUZ1J2R2t+Pmh4N3FyJChZJlhxTkl9WW9qVXEm
MVBkbSg8SzgjNG9tb2ZhdVU3MG4tcCh4CnpybGRFWj44Nlp9XkwzVnxQUGE4fGxBVTI3cjhnejVv
dl5wM1B+VERePilvcjhPLV9FUShOd2d0RDA7KUxWcHpDRgp6a0pxI1JBVFcrd059MTt2MnwlP15e
NVMofm1NT0JraEREOTY7cytHKCkpTks5TG19ZUs9YDxQN3hoRVQ1eE5oV3AKejZ7PXt4cFR6cW1v
ejFNMXdHI1Ikc3pQcngxdkhUdk1VaWZLQTJqWmVkNXNFUFd1JSF4R1BUTHkpM2Z6WmhYbC0rCnpZ
fH1vP285LUdldUZBLXw3YHtxSUxWZFJaVVd1aVQrPWU/b0JKc18zXyEyPTh1OEdQJUlkST07WU5v
fTBYUWp3Kwp6OHdDLSVUZHpCRCtnR1AreV9vSX1uQn5SYCVzb3w3a2VPU3VXOEFsVmomSS0wYG9C
N0UqOT90dVVOX3ZBWlNtaFYKelVnMkhuZFpaWmokWlg3WTtrajU5R3N5O3pgR2QxWClyck89I2Nz
ekdyWTQ+dm1WaEx5bHFBS1k1NyMoRFU5SUNBCnpLR1g1aE1sTE00ZFhsRU9oemlYfT9XV3p0eXNI
VT9aemlgYj93WkpDdiZhWFgqSlA0RnQ0P0wtV05XTG14NnshbAp6Yj1tRTJHOHwwUyFrcyE9PnhD
YnQpdn5PRiVveXY+K0AlUSljZFE3eDctU2tOWTZsMW8/MylOWUJnc2RfZE9nKkoKeihiM0M+MVJu
eXxFN2hjRyFOYCYqcEN7KldtLWk+YiZzIzcrMDQ+IyhqYD92ZkpZJlREZUB5UmkoT08yaFB2fEll
Cno4LUNyT2k/UEZrR0s1KCgkQVZxISRXRnlsO1R7OF5MODQkWDtWWntFWmIqMkxqey1AOFopaC0o
LXk7eypBYWhjbgp6YyU+KmVOQ0hyVjQzY2BeYWBxdFU0ZjIwYWFwfFV7JDF6S2ElZUJXblh6NmFL
RCohXzR3ODVtS0t+Ql4rbWw+RWMKejZyYVUxWFBybl4+U3RnI3J9azQ7KVJTZjtaJlZKQ1dyJGJV
ZSRWXiNqTnEraj5CQFN0PipzTjc8PHdUVWJ7PG9gCnoyU1NoU2xqNEk8LVk0cnA5dj51bWI3UURi
aEojeERaUUhudEZWak9SbWZHUDd0eHskPWBqV1JTNllSPyohWFkrcQp6NlF+dGhzTDh3NE9zVXlk
UkZxOyhjfVAjNWJCV3s1QkZqfXhpS1drQ0ZOQFpReVpWTHZTWGVzcHt1JDtiKjJ5cmwKenMwb3df
dkxCQGQ/ej9ZJC0kYU15dEU0QEhNOX11bEMjYiVjKmB8RVk8LUtWblBkPG5pWCl3N0diSCQ9Qz1f
VUNmCnphelRjSnpQWG41R2wkM1oobGVJZz95diVpa2BuX182KnVQVms1Qk5mXypNI3pHQWBYYlFS
bGdneF59Sl81WGNlOAp6SVRwaiFSS3BpYlZAfjA2XlRmRyhLcHN+ZkJMKzY9WTNsdnBsVyhFPUt+
RTdsP29iQjUyMX1IeyVSN1VMbTZ7eTkKem1sN0I/THdRJlhjbSRHKmdOIXR0eHZoOSpkOF5KUHZ8
Z31OJERUMSR1dHBUe3F5Y1J9Qyp0TXg/KCp8OEJENlNFCnptNCtfQ3dhT0l5NiNTSCo3I3g0PC1m
UX5vZXREYG5xRGxwP2clP3Yja1ZzbGZucnpLYSRjdUFIb0tGZT5BP14rJgp6YDZTdGhydCNVRjMp
SzNOeTtuLTZVI0MhSzc/ZkZQbENDeVV7OGx6WlEjQjxjNXBeNHRmKGwwdzNXUD58UC1UMmoKemU5
MCs5dUVLMkwyaGZ2cVkpVTsoezYzVHg+bFI9NWkyZXZadDFnd2IrbWtUY3hYdnxHd044VHVwKUlF
UHIjUG5BCnpyaSRKZjlENTdDdkwjYF9gWG5rTHN2O184NGY/Z0xZcUQhdEBgYVEyTDhVPEF3eEdN
PHdNNmJqYCRXPmptfWZmMQp6bV9FazcpTXN3YjVXUWUkVVQzODlrbj9WelhrSyh6UE02UTR1MmRX
NyFJITxUeHgoXnJ8SSFgakBBWSVDYXx2dUkKell9SVY2WXtxTyEmP1hwYmloRHxIJTJkaVV3N0o7
UG9jMSteYElQemVZaW4+fkA/eUpASipYJVdvfU9SdUVrfnFWCnpFXjghREhzQUpYaypQIUdySn5O
JFJgSEAxUWk+JihDNUFwcTJ5SFBfRmBGMHFPWCtnQFk1OGVjSFI/NE1mJHdWSAp6MTN6QWdSRDRr
UEcoOTR7Mktmaz9JYm5QTFN6S1BYVjVXSmRPcH48am8yd0JrYSs0T2toMmcyMUB0Vj1DeGB1PGoK
enFlZlRDeU5iSyRUKXNOO0xpMW8xJV44S0MlKj52dl4qQEghVXU/T1M+R3huO2gqbWJ6RyV9VFdn
eE47O28zTnFDCnp5ZkJ4VWZFbEghVGslfXNQV3tKKjZjO083ZH4+TXRxLXt9V19RPT1RYE1EeHYt
WmtJd0dBVU10QmdfPy1EIU1sNAp6SEBKNnNjT2dgPVZaTEVpXnFZZT9afmxzNGVCYTZXblRnV1Ft
OGVON3o1dT9MSihAWFZzYi14NW95UipmWTNXIyYKelMkYWp6VjdzcVFseVlGPk1EMFlRWTx4WV5k
eVIoXkMoWSt+K0kwdF9yQGI1ODhiJF9YaHhTVyVnLSZSbmgqT1ZqCnp6TUdSVSZES1MwZUxMeUo8
KyNmKU81IShCT1VfRjxhdT8qbjwpWTxJUzlAM0k7bDtMKWAoKnB4SjBvaVklaE5qcAp6eTlmJHRp
c3YqbGZHaTMlM0tKP2hUNSswRmx3SzZ8Yik8Q19IQFU8PCp6ajJQR0x0Rm9EU0wtcHE9Q157RzN8
SnMKejVmejMkPVV3bkNIVEojaz5xOC1lUWRMb0lzTCtVTWBPdTtzOE9eTkM/NCNESS1sKkVBdUIj
ZkxueHZ8b1dHWll7CnpeaEdWb0pQTWRDJWdue2o2dXskKyZFNVBrcTgmRTVARUlfPENATnVqdVZ+
PlRfVnJZNVRVU0E+T2BYfFFLfjhxQQp6dnR0WWc7aXVvYFBVI2VeK20haUNRNEF6aGd6ZCZwSHdq
SGd1VUt1Tl91P3AkZj9veDl0MFhtOGgxK1R0WGZrT3wKemt8N2pkazkpbmNTcT1KPGRwR3VPcmhy
NmxjVyNHTWFQZH1nan1pek9RN0J8M0E8SWBLUnU5YnRFMEAxPj5SVThFCnpvdVNZanJeRH1RVz95
bXQmSlVnTThje3FDSykxfGppPTFETEk7Zi01LXMhaVd7SlE9bjwlQGdVKzE5bnotUm0lVwp6bjIo
bzN3ZkIkRXkqaypVM3c/ZV9lfVV6MiooRCNWeTdHemQpJD1pS0tzU3d7PHU8anBYZipxbmQmRnEz
eyR1XloKej5NTT4jT0pBRm0lOVFqY3N6Zj8xPXZeQ0tuT3doKCpjYXRINDx+VjNjWWpCPGVVQTh5
MERYI3xBMlkqVy1YM1krCnoyPnc+fVdhRylNJiR1X1cmIT5edUAtQD9CbCRyST1gK3srK3tIZ1pV
ak1iOGclTH47ZU5RPGppUEJfS2IjVDFKXwp6ZU8wQ1AhZGJtOVhEKHxsaCVGfU5ZdD52cCQreSZ4
JkJGc1ZWe1U7eHF8eE0hUkMxaCo5Rj43Qm58ZHohaWYpYV8KelBaUTdVeVhHX0klNC18flozMCFr
WHteTGBzZlZhUFg/YDJ5KWhFK0NBb1chMHVIQFYzX0A8WVdTRFB7VzxLTEE3CnpQVXA/KU5vMUM3
UUFuU0l1WTdMYTsjenR7Y1g3eHMwez84NVokRUEwJjNwMypeWXMydHtvIXgyQiVLMHUwPiktPAp6
XnJXOGNKUyFzcTtOYVNOKUpBZWooS2BxMnVEREw3aFkjUnNLRyM+M25uRzQwISYkO0VUKms/ajdr
fk1YVDJOUnAKeis3XmBiIWd7MyluPiQ+IXlKd3R+PVRIRSpsRUo2cXRHPFFxTkI0NzlKaTJHSWFO
VE00Xl4jbEZ0Vmh4UXl+K0dMCnopcyo8QDlqamZqKFQjSGEpU1pKPWNKanokSkJ5OyMwU0RIZldN
fWNDYGB1S3pDIz5iJHtpWExFX2lZeUBHeHpgcQp6IUFIO0peWXtDPDJKQ2FJKSl5V1JUPEkjaD9H
T2BNc3d7U3B4Y3ZmQVB1WjIqQzhTb1lIbTlEaS1XOWJTSFJBdHIKenk+WW9NRHllNU9xKDxQIW82
V0BUeXRMfit5SHlVVClgbiU1PyloWVN0PGs1fEBTWGsqd2BzZVhGRmlnXk9XOFJRCnpxan1aeDgk
dFcmeVNENGlha0M0RUVrdDVrdzdrelhuIVF6RFVOYCUlVzFHUWl5TUk9XmhoLT9Tejc+fipoI3dX
Ygp6I08oI3FNJWFVQkRsMDE/SjwpYysheTQ4QVhtI1dSYEglZjhWSGE+JUBjJXoqKzdNJWwrdzhf
P2VrOHpLMFRyRCsKekFOeGVJbCZmJDg3MjBvQE14R1I+U1JAcD91KVB9VVZeJUNtTlUmPlA7T1cl
KUsjTGM9YDhoSkxUMnJ5SU5gKDY2CnoybWlXJHMkR0x6SnJrZEtaaHBDOVVxJHxQKXNodk4xVXBf
Yz1MaEpuWWlzKnMrbkRKeil7TE9uTj52NUJPY3xoaAp6TnpjfSZ0RG19VS1fPjUmbzt9QndyT3po
KClJPkpFcXd+fnRDODJgLThWbVZZMW8kJUZxVStMU09jfWN7UnZXWkIKekxSRD4yK3pUMiV0ckFx
XkpXP0VmRVZLXjZSV2VUJiRxfWx7TCVvKyNKMCUkITltK0RpMXlmSnhZSjNjKjcweWRrCnpJX1hS
NGQrbFlJKnlneDV5PFJPTXA4WnA9az9LMFBPVFNpMT1VTEB8dmFtOUJLZEk2ekRaUWUjO1VLUztY
UHN4OAp6eXkjeG43emo1fEtCQlBKcnd4YVh0S1dENWRtVy1mSEM4YSgmOVE4JkAqXzJSP2l6KSFs
KmNuVyZXQlc/VHMzQSsKelM+Oz0paEtZTWM8MFV9e097VlB9dmtPKitgRGdxIVckTU5YbVd5WEZ3
PjFvKUdOfWFMKiZBa1VHX3UlT0VtY2tnCnpOZXA/N2JeY2pxY3h9I2xhXkooI2xgUmg2ajZsNHJq
QylmX2ZVc0EhbllBQG9TJUxOMnBuWiN5cUVyc2ttaUgzZQp6cU50YkJCQGd7NCFhXjNiPFMwMz5D
YzhoXz96RGJtYEdHIUxXKE9mP3VlRlI/ZFJATlEmWDErdD5RS0FYZCZlfVcKel49N2dMUy1rX1dF
IXdYZTUlaSNWVCE8bHVPJDI0IWBkSFYxVXRLZmV2cExgQ2QjOVlUWmNQK28hNWx0VDlsPUZpCno4
R15waURSKDtGcmcrYGBtVEh4K2dmMlgwPHg/ISFzS2xqRHt6ITEwWUF8Qm5GI1hJVCt4V1lLJCgr
PS09c1JnXwp6PmAzR3JtVkAwdjtvK3xBQXYlRXRmZW9saz9kS35GZ0tgNXQlbUwrMDtuJj1PVEVr
cyF3X0REUmtVN2BmV14pc34KenZRSFZvVz55ZVpUXzdBSSo+dGd1YiZYUURZUEQlaHcoM0orKFZR
VWYmSVNLMyowTHd8bWBnY0w4X1BLZEpARVdOCnpYPUxuTTdWNE52YkxVNEBKP05falk/cTRyYkI2
dHl0JkF4Vz1RPXc8STdRYC0lQUJ2Xik/NylLMD1GTnR4Rngwcgp6e0ZyPEhxejdjeypLNGNGdlh6
JT8hRm9ZckAjTz9wZVBIUDJgbFMkZ3gmelRGNXhnS0NsJHM9JEIkfmkmNilVUGAKenFkbGdAckVP
RVhRXyZGe3UpIW5GO3Q1KTE/Ji1AZkVFJXxPM0t6c0Fhb3c5LXJRZz1+Pm8qb3l5P3Fnc15UbiNy
CnopdSpmRDBwPnt3YzcyTEohKXc9YitWcnpvdzxTV0ZkfkUrZE5rYDxNNiF9XzxZM0FnelFecHUt
bDxvcUorZnU/bgp6PyhMOTRNcn07O3E3ITd6WU9HRUwlbyFEWD5lSmJXRz95cSgoMHN6KnlIIz1K
TDAhc0IkTUxsWiE1elVWTiU/Y3QKemUyalUwaCFwY09sdSpGaTNCRSpYSWxRR05gYG5qT2daRXlJ
NVZNRkA1cUMreXRNTHMhaDcwRypsUmN9JHNAKlBNCno/N1NaOGN3cG5aaUM/PGYlJSZwNSt9JCRD
REhaQjdNWlI8QEg5KlBqZSNhYTYpJFF1QHVlMVUtcjhsZTdgQTJRIQp6T1UkS0tJTjV6ODlvSVRj
PUY+SlVAO2dxOTJpfV53YEdmMG0rQk1fPFNre2lUOTAqdG57QDBSNFIydSRSKk0zU2cKemYzMGk4
WlRab0R8OEs+fF5TP0Q1cUIhRzQoMThlSWhfO2lSQ3FjOSE/KF8rKEJ2SEVmQ0dKM2VTOWdCKXNF
b3VSCnpUYD4rbiNVIyVvNzBDcFJePm82eDFIfllzKEJJIWJUODtVMmsrd2pEQTx6XkUwZ0ZQIU1Q
V2RGRkMtU3s0PHpWQgp6aGt9ellQVDtSV2szPTdTbD8mb3ZoIWpgfjB2NEE1T01AbE4hQyplWj97
Q2xGO3c5KUNjMyFwdz1ASWYlVT1tWCUKekQyX1A3b0slUj8xVk9lc1QtfGpzY0UzT1c5alB4Q1o0
ViZHVFd8cFF1TENGdmdHcz1FX1B9MkBuNzk8N1p7aClUCnpLZUI8TFAocyVLWEBofCF7YDNRajZW
bSVuS1FMNkIwTn1yREZlbX4zZjcmRlpCbmp5TSgqfkI1QVA3R0h2Y1YrPwp6VmdCMCZCVmhQWDg7
dFB5WnlPPVN8MW1EfjQ/aFZoXyNkJUI7WmxGaDFxTENlezlvZmpyMm9oUE9xYEo2eng7NG0KenE/
MFFlZCNFY0xJezZjRGdBK3RLNDJIbmNVK1NjJHlGRz9MKitWY2pSUzJaTEQyfXY0Tn18dzZHKC1Y
a3d9VlE7Cm9wbXM8aUQmakJ7OTFSQ2MlS2BwKG0hRzhmIzFTWllOQ1gxeDtzNmp4NmA9PEJBMmkw
fVNeeGs1CgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329888</attachid>
            <date>2017-12-19 20:34:39 -0800</date>
            <delta_ts>2017-12-20 11:11:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181006-20171219203438.patch</filename>
            <type>text/plain</type>
            <size>44980</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MTcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDYxYWY5MWI3NDc2MWU0MGE2ODliM2Rm
ODU0ZDU3MTdmOGQxNDFmZmIuLjkwMWViYzI3ZmIwMTIzNzRkOTMxMmY0MzhlY2IwOTI2N2Y2NTE3
NWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTctMTItMTkgIEplcmVteSBKb25lcyAgPGplcmVt
eWpAYXBwbGUuY29tPgorCisgICAgICAgIEVsZW1lbnQgZnVsbHNjcmVlbiBpbnRlcmZhY2Ugc2hv
dWxkIGRpc3BsYXkgdGhlIGxvY2F0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xODEwMDYKKyAgICAgICAgcmRhcjovL3Byb2JsZW0vMzYxNDMxNzYK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgU2Vj
VHJ1c3RDb3B5SW5mbyBTUEkuCisKKyAgICAgICAgKiB3dGYvc3BpL2NvY29hL1NlY3VyaXR5U1BJ
Lmg6CisKIDIwMTctMTItMTkgIEJyaWFuIEJ1cmcgIDxiYnVyZ0BhcHBsZS5jb20+CiAKICAgICAg
ICAgU0xFRVBfVEhSRUFEX0ZPUl9ERUJVR0dFUigpIG1hY3JvIHNob3VsZCB0cnkgdG8gcHJpbnQg
b3V0IHRoZSBQSUQgb2YgdGhlIGFmZmVjdGVkIHByb2Nlc3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCmluZGV4
IGMyNjMzZWU5NTdjOWU3YWQ4NzBhOGZmNjZmNzk1NmE2M2NiMjhiZDYuLjhlYWZmY2EzMDY0NzQ2
MTg2YzY2ZGEzODdiNDA2ZTBjZDA2ODk5YTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BB
TC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE1IEBACisyMDE3LTEyLTE5ICBKZXJlbXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKwor
ICAgICAgICBFbGVtZW50IGZ1bGxzY3JlZW4gaW50ZXJmYWNlIHNob3VsZCBkaXNwbGF5IHRoZSBs
b2NhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTgxMDA2CisgICAgICAgIHJkYXI6Ly9wcm9ibGVtLzM2MTQzMTc2CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGlPUyBhdmFpbGFiaWxpdHkgY2hl
Y2suCisKKyAgICAgICAgKiBwYWwvc3BpL2NvY29hL0xpbmtQcmVzZW50YXRpb25TUEkuaDoKKwog
MjAxNy0xMi0xOSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW0Fw
cGxlIFBheV0gU3RvcCBtYWludGFpbmluZyBhIGxpc3Qgb2YgcGF5bWVudCBuZXR3b3JrcwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZwppbmRleCA5N2YzZWY0NmI4YzZmNTUyYmI4NDczMWE5MTQ4NTdhNTAxZTQ0NDNmLi4yYzhhNTBk
NjAzODQxYzg1ODY5ZmQ0MWU0YTdmNDFlNzYyMDU0MDZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDQz
IEBACisyMDE3LTEyLTE5ICBKZXJlbXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAg
ICAgICBFbGVtZW50IGZ1bGxzY3JlZW4gaW50ZXJmYWNlIHNob3VsZCBkaXNwbGF5IHRoZSBsb2Nh
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgx
MDA2CisgICAgICAgIHJkYXI6Ly9wcm9ibGVtLzM2MTQzMTc2CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2hvdyBhIHNob3J0IHVzZXIgdmlzaWJsZSBs
b2NhdGlvbiBzdHJpbmcgd2l0aCBhIGxvY2sgaWYgc2VjdXJlIGFuZCBncmVlbiB3aGVuIHRydXN0
ZWQuCisKKyAgICAgICAgSW5jbHVkZXMgb3RoZXIgaW50ZXJmYWNlIGNsZWFudXAgYW5kIHR3ZWFr
cy4KKworICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxl
cklPUy5tbToKKyAgICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHZpZXdXaWxs
VHJhbnNpdGlvblRvU2l6ZTp3aXRoVHJhbnNpdGlvbkNvb3JkaW5hdG9yOl0pOgorICAgICAgICAo
LVtfV0tGdWxsU2NyZWVuVmlld0NvbnRyb2xsZXIgdmlzdWFsRWZmZWN0Vmlld1dpdGhGcmFtZTpd
KToKKyAgICAgICAgKG1pcnJvckVkZ2VJbnNldHMpOgorICAgICAgICAoLVtfV0tGdWxsU2NyZWVu
Vmlld0NvbnRyb2xsZXIgX3VwZGF0ZUxheW91dE1hcmdpbnNdKToKKyAgICAgICAgKC1bX1dLRnVs
bFNjcmVlblZpZXdDb250cm9sbGVyIHZpZXdEaWRMYXlvdXRTdWJ2aWV3c10pOgorICAgICAgICAo
LVtfV0tGdWxsU2NyZWVuVmlld0NvbnRyb2xsZXIgc2V0TG9jYXRpb246c2VjdXJlOnRydXN0ZWRO
YW1lOnRydXN0ZWRTaXRlOl0pOgorICAgICAgICAoLVtfV0tGdWxsU2NyZWVuVmlld0NvbnRyb2xs
ZXIgY3JlYXRlU3Vidmlld3NdKToKKyAgICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9s
bGVyIGxvYWRWaWV3XSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciB2
aWV3RGlkQXBwZWFyOl0pOgorICAgICAgICAoLVtfV0tGdWxsU2NyZWVuVmlld0NvbnRyb2xsZXIg
aGlkZUNhbmNlbEJ1dHRvbl0pOgorICAgICAgICAoLVtfV0tGdWxsU2NyZWVuVmlld0NvbnRyb2xs
ZXIgc2hvd0NhbmNlbEJ1dHRvbjpdKToKKyAgICAgICAgKC1bX1dLRnVsbHNjcmVlblJvb3RWaWV3
Q29udHJvbGxlciBzZXRTaG93c1N0YXR1c0JhcjpdKToKKyAgICAgICAgKC1bX1dLRnVsbHNjcmVl
blJvb3RWaWV3Q29udHJvbGxlciBwcmVmZXJzU3RhdHVzQmFySGlkZGVuXSk6CisgICAgICAgICgt
W1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXIgX2ludmFsaWRhdGVFVk9yZ2FuaXphdGlvbk5h
bWVdKToKKyAgICAgICAgKC1bV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlciBpc1NlY3VyZV0p
OgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIF9zZXJ2ZXJUcnVzdF0p
OgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIF9FVk9yZ2FuaXphdGlv
bk5hbWVdKToKKyAgICAgICAgKC1bV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlciB1cGRhdGVM
b2NhdGlvbkluZm9dKToKKyAgICAgICAgKC1bV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlciBl
bnRlckZ1bGxTY3JlZW5dKToKKyAgICAgICAgKC1bV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxl
ciBiZWdhbkVudGVyRnVsbFNjcmVlbldpdGhJbml0aWFsRnJhbWU6ZmluYWxGcmFtZTpdKToKKyAg
ICAgICAgKC1bV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlciBiZWdhbkV4aXRGdWxsU2NyZWVu
V2l0aEluaXRpYWxGcmFtZTpmaW5hbEZyYW1lOl0pOgorICAgICAgICAoLVtfV0tGdWxsU2NyZWVu
Vmlld0NvbnRyb2xsZXIgcHJlZmVyc1N0YXR1c0JhckhpZGRlbl0pOiBEZWxldGVkLgorICAgICAg
ICAqIFdlYktpdC54Y2Fzc2V0cy9Eb25lLmltYWdlc2V0L0NvbnRlbnRzLmpzb246IFJlbW92ZWQu
CisgICAgICAgICogV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdlc2V0L0NvbnRlbnRzLmpz
b246IEFkZGVkLgorICAgICAgICAqIFdlYktpdC54Y2Fzc2V0cy9Mb2NrTWluaS5pbWFnZXNldC9O
YXZpZ2F0aW9uQmFyTG9ja01pbmlAMngucGRmOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViS2l0L1dl
YktpdC54Y2Fzc2V0cy9Eb25lLmltYWdlc2V0L0RvbmUucGRmLgorICAgICAgICAqIFdlYktpdC54
Y2Fzc2V0cy9Mb2NrTWluaS5pbWFnZXNldC9OYXZpZ2F0aW9uQmFyTG9ja01pbmlAM3gucGRmOiBS
ZW5hbWVkIGZyb20gU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvRG9uZS5pbWFnZXNldC9E
b25lLnBkZi4KKwogMjAxNy0xMi0xOSAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBw
bGUuY29tPgogCiAgICAgICAgIFJlZmFjdG9yIHVzZXItaW5zdGFsbGVkIGZvbnQgc2V0dGluZyBm
b3IgY2xhcml0eQpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvc3BpL2NvY29hL1NlY3VyaXR5
U1BJLmggYi9Tb3VyY2UvV1RGL3d0Zi9zcGkvY29jb2EvU2VjdXJpdHlTUEkuaAppbmRleCAzNzVi
OWUyMTU0YjEyNDc3Y2FlNTczZDI4YTVlNTBiNTJiNWZlY2FmLi42NDE2Njg5NmI1MWUwNjZkNjlm
NDU1NzM4MzQzYjc3MjU3MTFjY2MxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9zcGkvY29j
b2EvU2VjdXJpdHlTUEkuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9zcGkvY29jb2EvU2VjdXJpdHlT
UEkuaApAQCAtODEsNCArODEsMTAgQEAgQ0ZfUkVUVVJOU19SRVRBSU5FRCBDRkRhdGFSZWYgU2Vj
VHJ1c3RTZXJpYWxpemUoU2VjVHJ1c3RSZWYsIENGRXJyb3JSZWYgKik7CiBDRl9SRVRVUk5TX1JF
VEFJTkVEIFNlY1RydXN0UmVmIFNlY1RydXN0RGVzZXJpYWxpemUoQ0ZEYXRhUmVmIHNlcmlhbGl6
ZWRUcnVzdCwgQ0ZFcnJvclJlZiAqKTsKICNlbmRpZgogCitDRl9SRVRVUk5TX1JFVEFJTkVEIENG
RGljdGlvbmFyeVJlZiBTZWNUcnVzdENvcHlJbmZvKFNlY1RydXN0UmVmKTsKKworZXh0ZXJuIGNv
bnN0IENGU3RyaW5nUmVmIGtTZWNUcnVzdEluZm9FeHRlbmRlZFZhbGlkYXRpb25LZXk7CitleHRl
cm4gY29uc3QgQ0ZTdHJpbmdSZWYga1NlY1RydXN0SW5mb0NvbXBhbnlOYW1lS2V5OworZXh0ZXJu
IGNvbnN0IENGU3RyaW5nUmVmIGtTZWNUcnVzdEluZm9SZXZvY2F0aW9uS2V5OworCiBXVEZfRVhU
RVJOX0NfRU5ECmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9M
aW5rUHJlc2VudGF0aW9uU1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9M
aW5rUHJlc2VudGF0aW9uU1BJLmgKaW5kZXggZDRhMjQ2NWNmYTgxZTg5YzBhNTcxYzAyMDMzZmIw
NDQyZTJhYTFjOS4uNTE1ZjBkY2I0MGE0ODZjZDZiMDVjMjM2MDFhNWJjODQzNmRkNWIxOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvTGlua1ByZXNlbnRhdGlv
blNQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0xpbmtQcmVzZW50
YXRpb25TUEkuaApAQCAtMjMsNyArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
IF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxMzAwCisjaWYgKFBMQVRGT1JN
KE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEzMDApIHx8IChQ
TEFURk9STShJT1MpICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMDMw
MCkKIAogI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCiAKQEAgLTM3LDQgKzM3LDQgQEAKIAog
I2VuZGlmCiAKLSNlbmRpZiAvLyBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEw
MTMwMAorI2VuZGlmIC8vIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTAxMzAwKSB8fCAoUExBVEZPUk0oSU9TKSAmJiBfX0lQSE9ORV9PU19WRVJT
SU9OX01JTl9SRVFVSVJFRCA+PSAxMDAzMDApCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9pb3MvV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlcklPUy5tbSBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVySU9TLm1tCmlu
ZGV4IGZmNmU0MDJhY2NiNTcyOWZiMjU2NDU4ZTEyMWRmNzc0NTg2MjFiOGQuLjJjNjYxZWM3ZWE4
NmU5YmM1YjRmMTRmNGNlNjZjYjM4NjI3ZjBhMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVySU9TLm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVySU9T
Lm1tCkBAIC0zNSwxMSArMzUsMTggQEAKICNpbXBvcnQgIldlYkZ1bGxTY3JlZW5NYW5hZ2VyUHJv
eHkuaCIKICNpbXBvcnQgIldlYlBhZ2VQcm94eS5oIgogI2ltcG9ydCA8Rm91bmRhdGlvbi9Gb3Vu
ZGF0aW9uLmg+CisjaW1wb3J0IDxTZWN1cml0eS9TZWNDZXJ0aWZpY2F0ZS5oPgorI2ltcG9ydCA8
U2VjdXJpdHkvU2VjVHJ1c3QuaD4KICNpbXBvcnQgPFVJS2l0L1VJVmlzdWFsRWZmZWN0Vmlldy5o
PgogI2ltcG9ydCA8V2ViQ29yZS9GbG9hdFJlY3QuaD4KICNpbXBvcnQgPFdlYkNvcmUvR2VvbWV0
cnlVdGlsaXRpZXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvSW50UmVjdC5oPgorI2ltcG9ydCA8V2Vi
Q29yZS9XZWJDb3JlTlNVUkxFeHRyYXMuaD4KKyNpbXBvcnQgPHBhbC9zcGkvY2YvQ0ZOZXR3b3Jr
U1BJLmg+CisjaW1wb3J0IDxwYWwvc3BpL2NvY29hL0xpbmtQcmVzZW50YXRpb25TUEkuaD4KKyNp
bXBvcnQgPHBhbC9zcGkvY29jb2EvTlNTdHJpbmdTUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkvY29j
b2EvUXVhcnR6Q29yZVNQSS5oPgorI2ltcG9ydCA8d3RmL3NwaS9jb2NvYS9TZWN1cml0eVNQSS5o
PgogCiB1c2luZyBuYW1lc3BhY2UgV2ViS2l0OwogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CkBA
IC0xMTUsNiArMTIyLDcgQEAgQGltcGxlbWVudGF0aW9uIF9XS0Z1bGxTY3JlZW5WaWV3Q29udHJv
bGxlciB7CiAgICAgUmV0YWluUHRyPFVJVmlldz4gX2JhY2tncm91bmRWaWV3OwogICAgIFJldGFp
blB0cjxVSUxvbmdQcmVzc0dlc3R1cmVSZWNvZ25pemVyPiBfdG91Y2hHZXN0dXJlUmVjb2duaXpl
cjsKICAgICBSZXRhaW5QdHI8VUlCdXR0b24+IF9jYW5jZWxCdXR0b247CisgICAgUmV0YWluUHRy
PFVJQnV0dG9uPiBfbG9jYXRpb25CdXR0b247CiAgICAgUmV0YWluUHRyPFVJVmlzdWFsRWZmZWN0
Vmlldz4gX3Zpc3VhbEVmZmVjdFZpZXc7CiB9CiAKQEAgLTEyOSw3ICsxMzcsMTcgQEAgLSAodm9p
ZClkZWFsbG9jCiAtICh2b2lkKXZpZXdXaWxsVHJhbnNpdGlvblRvU2l6ZTooQ0dTaXplKXNpemUg
d2l0aFRyYW5zaXRpb25Db29yZGluYXRvcjooaWQ8VUlWaWV3Q29udHJvbGxlclRyYW5zaXRpb25D
b29yZGluYXRvcj4pY29vcmRpbmF0b3IKIHsKICAgICBbc3VwZXIgdmlld1dpbGxUcmFuc2l0aW9u
VG9TaXplOnNpemUgd2l0aFRyYW5zaXRpb25Db29yZGluYXRvcjpjb29yZGluYXRvcl07Ci0gICAg
WyhXS1dlYlZpZXcgKilbc2VsZiBjb250ZW50Vmlld10gX292ZXJyaWRlTGF5b3V0UGFyYW1ldGVy
c1dpdGhNaW5pbXVtTGF5b3V0U2l6ZTpzaXplIG1heGltdW1Vbm9ic2N1cmVkU2l6ZU92ZXJyaWRl
OnNpemVdOworICAgIFtjb29yZGluYXRvciBhbmltYXRlQWxvbmdzaWRlVHJhbnNpdGlvbjogXihp
ZDxVSVZpZXdDb250cm9sbGVyVHJhbnNpdGlvbkNvb3JkaW5hdG9yQ29udGV4dD4gY29udGV4dCkg
eworCisgICAgICAgIHZvaWQgKF53ZWJWaWV3VXBkYXRlQmxvY2spKCkgPSBeeworICAgICAgICAg
ICAgWyhXS1dlYlZpZXcgKilbc2VsZiBjb250ZW50Vmlld10gX292ZXJyaWRlTGF5b3V0UGFyYW1l
dGVyc1dpdGhNaW5pbXVtTGF5b3V0U2l6ZTpzaXplIG1heGltdW1Vbm9ic2N1cmVkU2l6ZU92ZXJy
aWRlOnNpemVdOworICAgICAgICB9OworCisgICAgICAgIFsoV0tXZWJWaWV3ICopW3NlbGYgY29u
dGVudFZpZXddIF9iZWdpbkFuaW1hdGVkUmVzaXplV2l0aFVwZGF0ZXM6d2ViVmlld1VwZGF0ZUJs
b2NrXTsKKyAgICAgICAgWyhXS1dlYlZpZXcgKilbc2VsZiBjb250ZW50Vmlld10gX3NldEludGVy
ZmFjZU9yaWVudGF0aW9uT3ZlcnJpZGU6W1VJQXBwIHN0YXR1c0Jhck9yaWVudGF0aW9uXV07Cisg
ICAgfSBjb21wbGV0aW9uOl4oaWQgPFVJVmlld0NvbnRyb2xsZXJUcmFuc2l0aW9uQ29vcmRpbmF0
b3JDb250ZXh0PmNvbnRleHQpIHsKKyAgICAgICAgWyhXS1dlYlZpZXcgKilbc2VsZiBjb250ZW50
Vmlld10gX2VuZEFuaW1hdGVkUmVzaXplXTsKKyAgICB9XTsKIH0KIAogKyAodm9pZCljb25maWd1
cmVWaWV3OihVSVZpZXcgKil2aWV3IHdpdGhCYWNrZ3JvdW5kRmlsbE9mQ29sb3I6KFVJQ29sb3Ig
KilmaWxsQ29sb3Igb3BhY2l0eTooQ0dGbG9hdClvcGFjaXR5IGZpbHRlcjooTlNTdHJpbmcgKilm
aWx0ZXIKQEAgLTE1OSw5ICsxNzcsNiBAQCAtICh2b2lkKV91cGRhdGVUcmFuc3BhcmVuY3lPZlZp
c3VhbEVmZmVjdFZpZXc6KFVJVmlzdWFsRWZmZWN0VmlldyAqKXZpc3VhbEVmZmVjdAogLSAoVUlW
aXN1YWxFZmZlY3RWaWV3ICopdmlzdWFsRWZmZWN0Vmlld1dpdGhGcmFtZTooQ0dSZWN0KWZyYW1l
CiB7CiAgICAgUmV0YWluUHRyPFVJVmlzdWFsRWZmZWN0Vmlldz4gdmlzdWFsRWZmZWN0VmlldyA9
IGFkb3B0TlMoW1tVSVZpc3VhbEVmZmVjdFZpZXcgYWxsb2NdIGluaXRXaXRoRWZmZWN0OltVSVZp
c3VhbEVmZmVjdCBlbXB0eUVmZmVjdF1dKTsKLSAgICBbdmlzdWFsRWZmZWN0VmlldyBzZXRGcmFt
ZTpmcmFtZV07Ci0gICAgW3Zpc3VhbEVmZmVjdFZpZXcgX3NldENvbnRpbnVvdXNDb3JuZXJSYWRp
dXM6KChDR1JlY3RHZXRIZWlnaHQoW3Zpc3VhbEVmZmVjdFZpZXcgYm91bmRzXSkgPiA0MC4wKSA/
IDE2LjAgOiA4LjApXTsKLSAgICBbdmlzdWFsRWZmZWN0VmlldyBzZXRBdXRvcmVzaXppbmdNYXNr
OihVSVZpZXdBdXRvcmVzaXppbmdGbGV4aWJsZVJpZ2h0TWFyZ2luIHwgVUlWaWV3QXV0b3Jlc2l6
aW5nRmxleGlibGVCb3R0b21NYXJnaW4pXTsKICAgICBbc2VsZiBfdXBkYXRlVHJhbnNwYXJlbmN5
T2ZWaXN1YWxFZmZlY3RWaWV3OnZpc3VhbEVmZmVjdFZpZXcuZ2V0KCldOwogCiAgICAgUmV0YWlu
UHRyPFVJVmlldz4gYmFja0xheWVyVGludFZpZXcgPSBhZG9wdE5TKFtbVUlWaWV3IGFsbG9jXSBp
bml0V2l0aEZyYW1lOlt2aXN1YWxFZmZlY3RWaWV3IGJvdW5kc11dKTsKQEAgLTE4MSwzOSArMTk2
LDEzMSBAQCAtIChVSVZpc3VhbEVmZmVjdFZpZXcgKil2aXN1YWxFZmZlY3RWaWV3V2l0aEZyYW1l
OihDR1JlY3QpZnJhbWUKICAgICByZXR1cm4gdmlzdWFsRWZmZWN0Vmlldy5hdXRvcmVsZWFzZSgp
OwogfQogCi0tICh2b2lkKWxvYWRWaWV3CitzdGF0aWMgVUlFZGdlSW5zZXRzIG1pcnJvckVkZ2VJ
bnNldHMoVUlFZGdlSW5zZXRzIGluc2V0cykKIHsKLSAgICBbc2VsZiBzZXRWaWV3OmFkb3B0TlMo
W1tVSVZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6Q0dSZWN0TWFrZSgwLCAwLCAxMDAsIDEwMCld
KS5nZXQoKV07Ci0gICAgW1tzZWxmIHZpZXddIHNldEF1dG9yZXNpemluZ01hc2s6KFVJVmlld0F1
dG9yZXNpemluZ0ZsZXhpYmxlV2lkdGggfCBVSVZpZXdBdXRvcmVzaXppbmdGbGV4aWJsZUhlaWdo
dCldOworICAgIHJldHVybiBVSUVkZ2VJbnNldHNNYWtlKGluc2V0cy50b3AsIGluc2V0cy5yaWdo
dCwgaW5zZXRzLmJvdHRvbSwgaW5zZXRzLmxlZnQpOworfQogCi0gICAgQ0dSZWN0IGRvbmVCdXR0
b25SZWN0ID0gQ0dSZWN0TWFrZSgxMCwgMjAsIDYwLCA0Nyk7Ci0gICAgCi0gICAgX3Zpc3VhbEVm
ZmVjdFZpZXcgPSBbc2VsZiB2aXN1YWxFZmZlY3RWaWV3V2l0aEZyYW1lOmRvbmVCdXR0b25SZWN0
XTsKLSAgICBbX3Zpc3VhbEVmZmVjdFZpZXcgc2V0QWxwaGE6MF07CistICh2b2lkKV91cGRhdGVM
YXlvdXRNYXJnaW5zCit7CisgICAgVUlWaWV3ICp2aWV3ID0gW3NlbGYgdmlld107CisgICAgW3Zp
ZXcgc2V0UHJlc2VydmVzU3VwZXJ2aWV3TGF5b3V0TWFyZ2luczpOT107CisKKyAgICBVSUVkZ2VJ
bnNldHMgdGFyZ2V0SW5zZXRzID0gW3ZpZXcgc2FmZUFyZWFJbnNldHNdOworICAgIHRhcmdldElu
c2V0cy50b3AgPSBzdGQ6Om1heCh0YXJnZXRJbnNldHMudG9wLCAyMC4wKTsKKyAgICBbdmlldyBz
ZXRMYXlvdXRNYXJnaW5zOnRhcmdldEluc2V0c107Cit9CisKKy0gKHZvaWQpdmlld0RpZExheW91
dFN1YnZpZXdzCit7CisgICAgW3NlbGYgX3VwZGF0ZUxheW91dE1hcmdpbnNdOworfQorCistICAo
dm9pZClzZXRMb2NhdGlvbjooTlNTdHJpbmcgKilsb2NhdGlvbk5hbWUgc2VjdXJlOihCT09MKXNl
Y3VyZSB0cnVzdGVkTmFtZTooQk9PTCl0cnVzdGVkTmFtZSB0cnVzdGVkU2l0ZTooQk9PTCl0cnVz
dGVkU2l0ZQoreworICAgIFVJQ29sb3IgKmdyZWVuVGludCA9IFtVSUNvbG9yIGNvbG9yV2l0aFJl
ZDoxMDAgLyAyNTUuMCBncmVlbjoxNzUgLyAyNTUuMCBibHVlOjk5IC8gMjU1LjAgYWxwaGE6MS4w
XTsKKyAgICBVSUNvbG9yICp3aGl0ZVRpbnQgPSBbVUlDb2xvciB3aGl0ZUNvbG9yXTsKKworICAg
IGZsb2F0IGhQYWRkaW5nID0gMTQ7CisgICAgTlNTdHJpbmcgKmxvY2tJbWFnZU5hbWUgPSBAIkxv
Y2tNaW5pIjsKKworICAgIGZsb2F0IGxvY2tTcGFjaW5nID0gc2VjdXJlID8gMTAgOiAwOworCisg
ICAgVUlFZGdlSW5zZXRzIGxvY2F0aW9uQ29udGVudEVkZ2VJbnNldHMgPSBVSUVkZ2VJbnNldHNN
YWtlKDAsIGhQYWRkaW5nK2xvY2tTcGFjaW5nLCAwLCBoUGFkZGluZyk7CisgICAgVUlFZGdlSW5z
ZXRzIGxvY2F0aW9uSW1hZ2VFZGdlSW5zZXRzID0gVUlFZGdlSW5zZXRzTWFrZSgwLCAtbG9ja1Nw
YWNpbmcsIDAsIDApOworCisgICAgaWYgKFtVSVZpZXcgdXNlckludGVyZmFjZUxheW91dERpcmVj
dGlvbkZvclNlbWFudGljQ29udGVudEF0dHJpYnV0ZTpbW3NlbGYgdmlld10gc2VtYW50aWNDb250
ZW50QXR0cmlidXRlXV0gPT0gVUlVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uUmlnaHRUb0xl
ZnQpIHsKKyAgICAgICAgbG9jYXRpb25Db250ZW50RWRnZUluc2V0cyA9IG1pcnJvckVkZ2VJbnNl
dHMobG9jYXRpb25Db250ZW50RWRnZUluc2V0cyk7CisgICAgICAgIGxvY2F0aW9uSW1hZ2VFZGdl
SW5zZXRzID0gbWlycm9yRWRnZUluc2V0cyhsb2NhdGlvbkltYWdlRWRnZUluc2V0cyk7CisgICAg
ICAgIFtfbG9jYXRpb25CdXR0b24gc2V0Q29udGVudEhvcml6b250YWxBbGlnbm1lbnQ6VUlDb250
cm9sQ29udGVudEhvcml6b250YWxBbGlnbm1lbnRSaWdodF07CisgICAgfQorCisgICAgW19sb2Nh
dGlvbkJ1dHRvbiBzZXRUaXRsZUNvbG9yOnRydXN0ZWROYW1lP2dyZWVuVGludDp3aGl0ZVRpbnQg
Zm9yU3RhdGU6VUlDb250cm9sU3RhdGVOb3JtYWxdOworCisgICAgaWYgKHNlY3VyZSkgeworICAg
ICAgICBOU0J1bmRsZSAqYnVuZGxlID0gW05TQnVuZGxlIGJ1bmRsZUZvckNsYXNzOltXS0Z1bGxT
Y3JlZW5XaW5kb3dDb250cm9sbGVyIGNsYXNzXV07CisgICAgICAgIFJldGFpblB0cjxVSUltYWdl
PiBsb2NrSW1hZ2UgPSBbVUlJbWFnZSBpbWFnZU5hbWVkOmxvY2tJbWFnZU5hbWUgaW5CdW5kbGU6
YnVuZGxlIGNvbXBhdGlibGVXaXRoVHJhaXRDb2xsZWN0aW9uOm5pbF07CisgICAgICAgIFtfbG9j
YXRpb25CdXR0b24gc2V0SW1hZ2U6W2xvY2tJbWFnZSBpbWFnZVdpdGhSZW5kZXJpbmdNb2RlOlVJ
SW1hZ2VSZW5kZXJpbmdNb2RlQWx3YXlzVGVtcGxhdGVdIGZvclN0YXRlOlVJQ29udHJvbFN0YXRl
Tm9ybWFsXTsKKyAgICAgICAgW1tfbG9jYXRpb25CdXR0b24gaW1hZ2VWaWV3XSBzZXRUaW50Q29s
b3I6dHJ1c3RlZFNpdGU/Z3JlZW5UaW50OndoaXRlVGludF07CisgICAgICAgIFtfbG9jYXRpb25C
dXR0b24gc2V0VGludENvbG9yOnRydXN0ZWRTaXRlP2dyZWVuVGludDp3aGl0ZVRpbnRdOworICAg
IH0gZWxzZQorICAgICAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEltYWdlOm5pbCBmb3JTdGF0ZTpV
SUNvbnRyb2xTdGF0ZU5vcm1hbF07CisKKyAgICBbX2xvY2F0aW9uQnV0dG9uIHNldENvbnRlbnRF
ZGdlSW5zZXRzOmxvY2F0aW9uQ29udGVudEVkZ2VJbnNldHNdOworICAgIFtfbG9jYXRpb25CdXR0
b24gc2V0SW1hZ2VFZGdlSW5zZXRzOmxvY2F0aW9uSW1hZ2VFZGdlSW5zZXRzXTsKKyAgICBbX2xv
Y2F0aW9uQnV0dG9uIHNldFRpdGxlOmxvY2F0aW9uTmFtZSBmb3JTdGF0ZTpVSUNvbnRyb2xTdGF0
ZU5vcm1hbF07CisgICAgW1tfbG9jYXRpb25CdXR0b24gdGl0bGVMYWJlbF0gc2V0TGluZUJyZWFr
TW9kZTpOU0xpbmVCcmVha0J5VHJ1bmNhdGluZ1RhaWxdOworICAgIFtbX2xvY2F0aW9uQnV0dG9u
IHRpdGxlTGFiZWxdIHNldEFkanVzdHNGb250U2l6ZVRvRml0V2lkdGg6Tk9dOworfQorCistICh2
b2lkKWNyZWF0ZVN1YnZpZXdzCit7CisgICAgX3Zpc3VhbEVmZmVjdFZpZXcgPSBbc2VsZiB2aXN1
YWxFZmZlY3RWaWV3V2l0aEZyYW1lOkNHUmVjdE1ha2UoMCwgMCwgMjAsIDIwKV07CisKKyAgICBb
X3Zpc3VhbEVmZmVjdFZpZXcgc2V0VHJhbnNsYXRlc0F1dG9yZXNpemluZ01hc2tJbnRvQ29uc3Ry
YWludHM6Tk9dOwogICAgIFtbc2VsZiB2aWV3XSBhZGRTdWJ2aWV3Ol92aXN1YWxFZmZlY3RWaWV3
LmdldCgpXTsKIAogICAgIF9jYW5jZWxCdXR0b24gPSBbVUlCdXR0b24gYnV0dG9uV2l0aFR5cGU6
VUlCdXR0b25UeXBlU3lzdGVtXTsKLSAgICBbX2NhbmNlbEJ1dHRvbiBzZXRBdXRvcmVzaXppbmdN
YXNrOihVSVZpZXdBdXRvcmVzaXppbmdGbGV4aWJsZVJpZ2h0TWFyZ2luIHwgVUlWaWV3QXV0b3Jl
c2l6aW5nRmxleGlibGVCb3R0b21NYXJnaW4pXTsKLSAgICBbX2NhbmNlbEJ1dHRvbiBzZXRGcmFt
ZTpkb25lQnV0dG9uUmVjdF07Ci0gICAgW19jYW5jZWxCdXR0b24gYWRkVGFyZ2V0OnNlbGYgYWN0
aW9uOkBzZWxlY3RvcihjYW5jZWxBY3Rpb246KSBmb3JDb250cm9sRXZlbnRzOlVJQ29udHJvbEV2
ZW50VG91Y2hVcEluc2lkZV07CisgICAgW19jYW5jZWxCdXR0b24gc2V0VHJhbnNsYXRlc0F1dG9y
ZXNpemluZ01hc2tJbnRvQ29uc3RyYWludHM6Tk9dOwogICAgIFtfY2FuY2VsQnV0dG9uIHNldEFk
anVzdHNJbWFnZVdoZW5IaWdobGlnaHRlZDpOT107CiAgICAgW19jYW5jZWxCdXR0b24gc2V0QmFj
a2dyb3VuZENvbG9yOiBbVUlDb2xvciBibGFja0NvbG9yXV07Ci0gICAgW1tfY2FuY2VsQnV0dG9u
IGxheWVyXSBzZXRDb3JuZXJSYWRpdXM6Nl07Ci0gICAgW19jYW5jZWxCdXR0b24gc2V0QWxwaGE6
MF07Ci0gICAgTlNCdW5kbGUgKmJ1bmRsZSA9IFtOU0J1bmRsZSBidW5kbGVGb3JDbGFzczpbV0tG
dWxsU2NyZWVuV2luZG93Q29udHJvbGxlciBjbGFzc11dOwotICAgIFJldGFpblB0cjxVSUltYWdl
PiBpbWFnZSA9IFtVSUltYWdlIGltYWdlTmFtZWQ6QCJEb25lIiBpbkJ1bmRsZTpidW5kbGUgY29t
cGF0aWJsZVdpdGhUcmFpdENvbGxlY3Rpb246bmlsXTsKLSAgICBbX2NhbmNlbEJ1dHRvbiBzZXRJ
bWFnZTpbaW1hZ2UgaW1hZ2VXaXRoUmVuZGVyaW5nTW9kZTpVSUltYWdlUmVuZGVyaW5nTW9kZUFs
d2F5c1RlbXBsYXRlXSBmb3JTdGF0ZTpVSUNvbnRyb2xTdGF0ZU5vcm1hbF07Ci0KLSAgICBbX2Nh
bmNlbEJ1dHRvbiBzZXRUaW50Q29sb3I6W1VJQ29sb3IgY29sb3JXaXRoV2hpdGU6MS4wIGFscGhh
OjAuNTVdXTsKICAgICBbW19jYW5jZWxCdXR0b24gbGF5ZXJdIHNldENvbXBvc2l0aW5nRmlsdGVy
OltDQUZpbHRlciBmaWx0ZXJXaXRoVHlwZTprQ0FGaWx0ZXJQbHVzTF1dOworICAgIFtfY2FuY2Vs
QnV0dG9uIHNldFRpdGxlOkAiRG9uZSIgZm9yU3RhdGU6VUlDb250cm9sU3RhdGVOb3JtYWxdOwor
ICAgIFtfY2FuY2VsQnV0dG9uIHNldFRpbnRDb2xvcjpbVUlDb2xvciB3aGl0ZUNvbG9yXV07Cisg
ICAgW19jYW5jZWxCdXR0b24gYWRkVGFyZ2V0OnNlbGYgYWN0aW9uOkBzZWxlY3RvcihjYW5jZWxB
Y3Rpb246KSBmb3JDb250cm9sRXZlbnRzOlVJQ29udHJvbEV2ZW50VG91Y2hVcEluc2lkZV07CiAK
ICAgICBbW3NlbGYgdmlld10gYWRkU3VidmlldzpfY2FuY2VsQnV0dG9uLmdldCgpXTsKIAorICAg
IF9sb2NhdGlvbkJ1dHRvbiA9IFtVSUJ1dHRvbiBidXR0b25XaXRoVHlwZTpVSUJ1dHRvblR5cGVT
eXN0ZW1dOworICAgIFtfbG9jYXRpb25CdXR0b24gc2V0VHJhbnNsYXRlc0F1dG9yZXNpemluZ01h
c2tJbnRvQ29uc3RyYWludHM6Tk9dOworICAgIFtfbG9jYXRpb25CdXR0b24gc2V0QWRqdXN0c0lt
YWdlV2hlbkhpZ2hsaWdodGVkOk5PXTsKKyAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEJhY2tncm91
bmRDb2xvcjpbVUlDb2xvciBibGFja0NvbG9yXV07CisgICAgW1tfbG9jYXRpb25CdXR0b24gbGF5
ZXJdIHNldENvbXBvc2l0aW5nRmlsdGVyOltDQUZpbHRlciBmaWx0ZXJXaXRoVHlwZTprQ0FGaWx0
ZXJQbHVzTF1dOworICAgIFtbc2VsZiB2aWV3XSBhZGRTdWJ2aWV3Ol9sb2NhdGlvbkJ1dHRvbi5n
ZXQoKV07CisKKyAgICBVSUxheW91dEd1aWRlKiBjb250YWluZXJHdWlkZSA9IFtbc2VsZiB2aWV3
XSBsYXlvdXRNYXJnaW5zR3VpZGVdOworCisgICAgW1tbX3Zpc3VhbEVmZmVjdFZpZXcgbGVmdEFu
Y2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W1tzZWxmIHZpZXddIGxlZnRBbmNob3JdXSBz
ZXRBY3RpdmU6WUVTXTsKKyAgICBbW1tfdmlzdWFsRWZmZWN0VmlldyByaWdodEFuY2hvcl0gY29u
c3RyYWludEVxdWFsVG9BbmNob3I6W1tzZWxmIHZpZXddIHJpZ2h0QW5jaG9yXV0gc2V0QWN0aXZl
OllFU107CisgICAgW1tbX3Zpc3VhbEVmZmVjdFZpZXcgdG9wQW5jaG9yXSBjb25zdHJhaW50RXF1
YWxUb0FuY2hvcjpbW3NlbGYgdmlld10gdG9wQW5jaG9yXV0gc2V0QWN0aXZlOllFU107CisgICAg
W1tbX3Zpc3VhbEVmZmVjdFZpZXcgaGVpZ2h0QW5jaG9yXSBjb25zdHJhaW50R3JlYXRlclRoYW5P
ckVxdWFsVG9Db25zdGFudDoyMF0gc2V0QWN0aXZlOllFU107CisKKyAgICBOU0xheW91dENvbnN0
cmFpbnQgKmJvdHRvbSA9IFtbX3Zpc3VhbEVmZmVjdFZpZXcgYm90dG9tQW5jaG9yXSBjb25zdHJh
aW50RXF1YWxUb0FuY2hvcjpbY29udGFpbmVyR3VpZGUgdG9wQW5jaG9yXV07CisgICAgW2JvdHRv
bSBzZXRQcmlvcml0eTpVSUxheW91dFByaW9yaXR5UmVxdWlyZWQtMV07CisgICAgW2JvdHRvbSBz
ZXRBY3RpdmU6WUVTXTsKKworICAgIFtbW19jYW5jZWxCdXR0b24gbGVhZGluZ0FuY2hvcl0gY29u
c3RyYWludEVxdWFsVG9BbmNob3I6W2NvbnRhaW5lckd1aWRlIGxlYWRpbmdBbmNob3JdXSBzZXRB
Y3RpdmU6WUVTXTsKKyAgICBbW1tfY2FuY2VsQnV0dG9uIHRvcEFuY2hvcl0gY29uc3RyYWludEVx
dWFsVG9BbmNob3I6W1tzZWxmIHZpZXddIHRvcEFuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworICAg
IFtbW19jYW5jZWxCdXR0b24gYm90dG9tQW5jaG9yXSBjb25zdHJhaW50RXF1YWxUb0FuY2hvcjpb
X3Zpc3VhbEVmZmVjdFZpZXcgYm90dG9tQW5jaG9yXV0gc2V0QWN0aXZlOllFU107CisKKyAgICBb
W1tfbG9jYXRpb25CdXR0b24gaGVpZ2h0QW5jaG9yXSBjb25zdHJhaW50RXF1YWxUb0NvbnN0YW50
OjIwXSBzZXRBY3RpdmU6WUVTXTsKKyAgICBbW1tfbG9jYXRpb25CdXR0b24gYm90dG9tQW5jaG9y
XSBjb25zdHJhaW50RXF1YWxUb0FuY2hvcjpbX3Zpc3VhbEVmZmVjdFZpZXcgYm90dG9tQW5jaG9y
XV0gc2V0QWN0aXZlOllFU107CisgICAgW1tbX2xvY2F0aW9uQnV0dG9uIGxlYWRpbmdBbmNob3Jd
IGNvbnN0cmFpbnRHcmVhdGVyVGhhbk9yRXF1YWxUb0FuY2hvcjpbX2NhbmNlbEJ1dHRvbiB0cmFp
bGluZ0FuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworICAgIFtbW19sb2NhdGlvbkJ1dHRvbiB0cmFp
bGluZ0FuY2hvcl0gY29uc3RyYWludExlc3NUaGFuT3JFcXVhbFRvQW5jaG9yOltbc2VsZiB2aWV3
XSB0cmFpbGluZ0FuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworICAgIE5TTGF5b3V0Q29uc3RyYWlu
dCAqY2VudGVyaW5nQ29uc3RyYWludCA9IFtbX2xvY2F0aW9uQnV0dG9uIGNlbnRlclhBbmNob3Jd
IGNvbnN0cmFpbnRFcXVhbFRvQW5jaG9yOltbc2VsZiB2aWV3XSBjZW50ZXJYQW5jaG9yXV07Cisg
ICAgW2NlbnRlcmluZ0NvbnN0cmFpbnQgc2V0UHJpb3JpdHk6VUlMYXlvdXRQcmlvcml0eURlZmF1
bHRMb3ddOworICAgIFtjZW50ZXJpbmdDb25zdHJhaW50IHNldEFjdGl2ZTpZRVNdOworCisgICAg
W192aXN1YWxFZmZlY3RWaWV3IHNldEFscGhhOjBdOworICAgIFtfY2FuY2VsQnV0dG9uIHNldEFs
cGhhOjBdOworICAgIFtfbG9jYXRpb25CdXR0b24gc2V0QWxwaGE6MF07CisKKyAgICBbX3Zpc3Vh
bEVmZmVjdFZpZXcgc2V0SGlkZGVuOllFU107CisgICAgW19jYW5jZWxCdXR0b24gc2V0SGlkZGVu
OllFU107CisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRIaWRkZW46WUVTXTsKK30KKworLSAodm9p
ZClsb2FkVmlldworeworICAgIFtzZWxmIHNldFZpZXc6YWRvcHROUyhbW1VJVmlldyBhbGxvY10g
aW5pdFdpdGhGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIDEwMCwgMTAwKV0pLmdldCgpXTsKKyAgICBb
W3NlbGYgdmlld10gc2V0QXV0b3Jlc2l6aW5nTWFzazooVUlWaWV3QXV0b3Jlc2l6aW5nRmxleGli
bGVXaWR0aCB8IFVJVmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlSGVpZ2h0KV07CisKICAgICBfdG91
Y2hHZXN0dXJlUmVjb2duaXplciA9IGFkb3B0TlMoW1tVSUxvbmdQcmVzc0dlc3R1cmVSZWNvZ25p
emVyIGFsbG9jXSBpbml0V2l0aFRhcmdldDpzZWxmIGFjdGlvbjpAc2VsZWN0b3Ioc2hvd0NhbmNl
bEJ1dHRvbjopXSk7CiAgICAgW190b3VjaEdlc3R1cmVSZWNvZ25pemVyIHNldERlbGVnYXRlOnNl
bGZdOwogICAgIFtfdG91Y2hHZXN0dXJlUmVjb2duaXplciBzZXRDYW5jZWxzVG91Y2hlc0luVmll
dzpOT107CiAgICAgW190b3VjaEdlc3R1cmVSZWNvZ25pemVyIHNldE1pbmltdW1QcmVzc0R1cmF0
aW9uOjBdOwogICAgIFtbc2VsZiB2aWV3XSBhZGRHZXN0dXJlUmVjb2duaXplcjpfdG91Y2hHZXN0
dXJlUmVjb2duaXplci5nZXQoKV07CisgICAgW3NlbGYgY3JlYXRlU3Vidmlld3NdOwogfQogCiAt
ICh2b2lkKXZpZXdXaWxsQXBwZWFyOihCT09MKWFuaW1hdGVkCkBAIC0yMjMsNiArMzMwLDExIEBA
IC0gKHZvaWQpdmlld1dpbGxBcHBlYXI6KEJPT0wpYW5pbWF0ZWQKICAgICBbW3NlbGYgdmlld10g
aW5zZXJ0U3Vidmlldzpbc2VsZiBjb250ZW50Vmlld10gYXRJbmRleDowXTsKIH0KIAorLSAodm9p
ZCl2aWV3RGlkQXBwZWFyOihCT09MKWFuaW1hdGVkCit7CisgICAgW3NlbGYgX3VwZGF0ZUxheW91
dE1hcmdpbnNdOworfQorCiAtICh2b2lkKWNhbmNlbEFjdGlvbjooaWQpc2VuZGVyCiB7CiAgICAg
W1tzZWxmIHRhcmdldF0gcGVyZm9ybVNlbGVjdG9yOltzZWxmIGFjdGlvbl1dOwpAQCAtMjMxLDEy
ICszNDMsMTQgQEAgLSAodm9pZCljYW5jZWxBY3Rpb246KGlkKXNlbmRlcgogLSAodm9pZCloaWRl
Q2FuY2VsQnV0dG9uCiB7CiAgICAgW05TT2JqZWN0IGNhbmNlbFByZXZpb3VzUGVyZm9ybVJlcXVl
c3RzV2l0aFRhcmdldDpzZWxmIHNlbGVjdG9yOkBzZWxlY3RvcihoaWRlQ2FuY2VsQnV0dG9uKSBv
YmplY3Q6bmlsXTsKLSAgICBbVUlWaWV3IGFuaW1hdGVXaXRoRHVyYXRpb246MC4yIGFuaW1hdGlv
bnM6XnsKKyAgICBbVUlWaWV3IGFuaW1hdGVXaXRoRHVyYXRpb246MC4xIGFuaW1hdGlvbnM6XnsK
ICAgICAgICAgW192aXN1YWxFZmZlY3RWaWV3IHNldEFscGhhOjBdOwogICAgICAgICBbX2NhbmNl
bEJ1dHRvbiBzZXRBbHBoYTowXTsKKyAgICAgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRBbHBoYTow
XTsKICAgICB9IGNvbXBsZXRpb246XihCT09MIGZpbmlzaGVkKXsKICAgICAgICAgaWYgKGZpbmlz
aGVkKSB7CiAgICAgICAgICAgICBbX2NhbmNlbEJ1dHRvbiBzZXRIaWRkZW46WUVTXTsKKyAgICAg
ICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0SGlkZGVuOllFU107CiAgICAgICAgICAgICBbX3Zp
c3VhbEVmZmVjdFZpZXcgc2V0SGlkZGVuOllFU107CiAgICAgICAgIH0KICAgICB9XTsKQEAgLTI0
NSwxMiArMzU5LDE0IEBAIC0gKHZvaWQpaGlkZUNhbmNlbEJ1dHRvbgogLSAodm9pZClzaG93Q2Fu
Y2VsQnV0dG9uOihpZClzZW5kZXIKIHsKICAgICBbTlNPYmplY3QgY2FuY2VsUHJldmlvdXNQZXJm
b3JtUmVxdWVzdHNXaXRoVGFyZ2V0OnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKGhpZGVDYW5jZWxC
dXR0b24pIG9iamVjdDpuaWxdOwotICAgIFtzZWxmIHBlcmZvcm1TZWxlY3RvcjpAc2VsZWN0b3Io
aGlkZUNhbmNlbEJ1dHRvbikgd2l0aE9iamVjdDpuaWwgYWZ0ZXJEZWxheTozLjBdOwotICAgIFtV
SVZpZXcgYW5pbWF0ZVdpdGhEdXJhdGlvbjowLjIgYW5pbWF0aW9uczogXnsKKyAgICBbc2VsZiBw
ZXJmb3JtU2VsZWN0b3I6QHNlbGVjdG9yKGhpZGVDYW5jZWxCdXR0b24pIHdpdGhPYmplY3Q6bmls
IGFmdGVyRGVsYXk6NC4wXTsKKyAgICBbVUlWaWV3IGFuaW1hdGVXaXRoRHVyYXRpb246MC4xIGFu
aW1hdGlvbnM6IF57CiAgICAgICAgIFtfdmlzdWFsRWZmZWN0VmlldyBzZXRIaWRkZW46Tk9dOwog
ICAgICAgICBbX2NhbmNlbEJ1dHRvbiBzZXRIaWRkZW46Tk9dOworICAgICAgICBbX2xvY2F0aW9u
QnV0dG9uIHNldEhpZGRlbjpOT107CiAgICAgICAgIFtfdmlzdWFsRWZmZWN0VmlldyBzZXRBbHBo
YToxXTsKICAgICAgICAgW19jYW5jZWxCdXR0b24gc2V0QWxwaGE6MV07CisgICAgICAgIFtfbG9j
YXRpb25CdXR0b24gc2V0QWxwaGE6MV07CiAgICAgfV07CiB9CiAKQEAgLTI2MCwxMSArMzc2LDYg
QEAgLSAodm9pZClzZXRUYXJnZXQ6KGlkKXRhcmdldCBhY3Rpb246KFNFTClhY3Rpb24KICAgICBb
c2VsZiBzZXRBY3Rpb246YWN0aW9uXTsKIH0KIAotLSAoQk9PTClwcmVmZXJzU3RhdHVzQmFySGlk
ZGVuCi17Ci0gICAgcmV0dXJuIFlFUzsKLX0KLQogLy8gTUFSSyAtIFVJR2VzdHVyZVJlY29nbml6
ZXJEZWxlZ2F0ZQogCiAtIChCT09MKWdlc3R1cmVSZWNvZ25pemVyOihVSUdlc3R1cmVSZWNvZ25p
emVyICopZ2VzdHVyZVJlY29nbml6ZXIgc2hvdWxkUmVjb2duaXplU2ltdWx0YW5lb3VzbHlXaXRo
R2VzdHVyZVJlY29nbml6ZXI6KFVJR2VzdHVyZVJlY29nbml6ZXIgKilvdGhlckdlc3R1cmVSZWNv
Z25pemVyCkBAIC0yNzcsMTEgKzM4OCwxOSBAQCBAZW5kCiBAaW50ZXJmYWNlIF9XS0Z1bGxzY3Jl
ZW5Sb290Vmlld0NvbnRyb2xsZXIgOiBVSVZpZXdDb250cm9sbGVyCiBAZW5kCiAKLUBpbXBsZW1l
bnRhdGlvbiBfV0tGdWxsc2NyZWVuUm9vdFZpZXdDb250cm9sbGVyIDogVUlWaWV3Q29udHJvbGxl
cgorQGltcGxlbWVudGF0aW9uIF9XS0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIgeworICAg
IEJPT0wgX3Nob3dzU3RhdHVzQmFyOworfQorCistICh2b2lkKXNldFNob3dzU3RhdHVzQmFyOihC
T09MKXZhbHVlCit7CisgICAgX3Nob3dzU3RhdHVzQmFyID0gdmFsdWU7CisgICAgW3NlbGYgc2V0
TmVlZHNTdGF0dXNCYXJBcHBlYXJhbmNlVXBkYXRlXTsKK30KIAogLSAoQk9PTClwcmVmZXJzU3Rh
dHVzQmFySGlkZGVuCiB7Ci0gICAgcmV0dXJuIFlFUzsKKyAgICByZXR1cm4gIV9zaG93c1N0YXR1
c0JhcjsKIH0KIAogQGVuZApAQCAtMzU4LDYgKzQ3Nyw3IEBAIEBpbXBsZW1lbnRhdGlvbiBXS0Z1
bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIHsKICAgICBXS1dlYlZpZXdTdGF0ZSBfdmlld1N0YXRl
OwogCiAgICAgUmV0YWluUHRyPFVJV2luZG93PiBfd2luZG93OworICAgIFJldGFpblB0cjxfV0tG
dWxsc2NyZWVuUm9vdFZpZXdDb250cm9sbGVyPiBfcm9vdFZpZXdDb250cm9sbGVyOwogCiAgICAg
UmVmUHRyPFdlYktpdDo6Vm9pZENhbGxiYWNrPiBfcmVwYWludENhbGxiYWNrOwogICAgIFJldGFp
blB0cjxVSVZpZXdDb250cm9sbGVyPiBfdmlld0NvbnRyb2xsZXJGb3JQcmVzZW50YXRpb247CkBA
IC0zNjUsNiArNDg1LDEwIEBAIEBpbXBsZW1lbnRhdGlvbiBXS0Z1bGxTY3JlZW5XaW5kb3dDb250
cm9sbGVyIHsKIAogICAgIENHUmVjdCBfaW5pdGlhbEZyYW1lOwogICAgIENHUmVjdCBfZmluYWxG
cmFtZTsKKworICAgIFJldGFpblB0cjxOU1N0cmluZz4gX0VWT3JnYW5pemF0aW9uTmFtZTsKKyAg
ICBCT09MIF9FVk9yZ2FuaXphdGlvbk5hbWVJc1ZhbGlkOworCiB9CiAKICNwcmFnbWEgbWFyayAt
CkBAIC00MDQsMTYgKzUyOCw5NSBAQCAtIChXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmll
dyAqKXdlYlZpZXdQbGFjZWhvbGRlcgogI3ByYWdtYSBtYXJrIC0KICNwcmFnbWEgbWFyayBFeHBv
c2VkIEludGVyZmFjZQogCistICh2b2lkKV9pbnZhbGlkYXRlRVZPcmdhbml6YXRpb25OYW1lCit7
CisgICAgX0VWT3JnYW5pemF0aW9uTmFtZSA9IG5pbDsKKyAgICBfRVZPcmdhbml6YXRpb25OYW1l
SXNWYWxpZCA9IE5POworfQorCistIChCT09MKWlzU2VjdXJlCit7CisgICAgcmV0dXJuIF93ZWJW
aWV3Lmhhc09ubHlTZWN1cmVDb250ZW50OworfQorCistIChTZWNUcnVzdFJlZilfc2VydmVyVHJ1
c3QKK3sKKyAgICByZXR1cm4gX3dlYlZpZXcuc2VydmVyVHJ1c3Q7Cit9CisKKy0gKE5TU3RyaW5n
ICopX0VWT3JnYW5pemF0aW9uTmFtZQoreworICAgIGlmICghc2VsZi5pc1NlY3VyZSkKKyAgICAg
ICAgcmV0dXJuIG5pbDsKKworICAgIGlmIChfRVZPcmdhbml6YXRpb25OYW1lSXNWYWxpZCkKKyAg
ICAgICAgcmV0dXJuIF9FVk9yZ2FuaXphdGlvbk5hbWUuZ2V0KCk7CisKKyAgICBBU1NFUlQoIV9F
Vk9yZ2FuaXphdGlvbk5hbWUuZ2V0KCkpOworICAgIF9FVk9yZ2FuaXphdGlvbk5hbWVJc1ZhbGlk
ID0gWUVTOworCisgICAgU2VjVHJ1c3RSZWYgdHJ1c3QgPSBbc2VsZiBfc2VydmVyVHJ1c3RdOwor
ICAgIGlmICghdHJ1c3QpCisgICAgICAgIHJldHVybiBuaWw7CisKKyAgICBOU0RpY3Rpb25hcnkg
KmluZm9EaWN0aW9uYXJ5ID0gQ0ZCcmlkZ2luZ1JlbGVhc2UoU2VjVHJ1c3RDb3B5SW5mbyh0cnVz
dCkpOworICAgIC8vIElmIFNlY1RydXN0Q29weUluZm8gcmV0dXJuZWQgTlVMTCB0aGVuIGl0J3Mg
bGlrZWx5IHRoYXQgdGhlIFNlY1RydXN0UmVmIGhhcyBub3QgYmVlbiBldmFsdWF0ZWQKKyAgICAv
LyBhbmQgdGhlIG9ubHkgd2F5IHRvIGdldCB0aGUgaW5mb3JtYXRpb24gd2UgbmVlZCBpcyB0byBj
YWxsIFNlY1RydXN0RXZhbHVhdGUgb3Vyc2VsdmVzLgorICAgIGlmICghaW5mb0RpY3Rpb25hcnkp
IHsKKyAgICAgICAgT1NTdGF0dXMgZXJyID0gU2VjVHJ1c3RFdmFsdWF0ZSh0cnVzdCwgTlVMTCk7
CisgICAgICAgIGlmIChlcnIgPT0gbm9FcnIpCisgICAgICAgICAgICBpbmZvRGljdGlvbmFyeSA9
IENGQnJpZGdpbmdSZWxlYXNlKFNlY1RydXN0Q29weUluZm8odHJ1c3QpKTsKKyAgICAgICAgaWYg
KCFpbmZvRGljdGlvbmFyeSkKKyAgICAgICAgICAgIHJldHVybiBuaWw7CisgICAgfQorCisgICAg
Ly8gTWFrZSBzdXJlIHRoYXQgdGhlIEVWIGNlcnRpZmljYXRlIGlzIHZhbGlkIGFnYWluc3Qgb3Vy
IGNlcnRpZmljYXRlIGNoYWluLgorICAgIGlkIGhhc0VWID0gW2luZm9EaWN0aW9uYXJ5IG9iamVj
dEZvcktleTooX19icmlkZ2UgTlNTdHJpbmcgKilrU2VjVHJ1c3RJbmZvRXh0ZW5kZWRWYWxpZGF0
aW9uS2V5XTsKKyAgICBpZiAoIVtoYXNFViBpc0tpbmRPZkNsYXNzOltOU1ZhbHVlIGNsYXNzXV0g
fHwgIVtoYXNFViBib29sVmFsdWVdKQorICAgICAgICByZXR1cm4gbmlsOworCisgICAgLy8gTWFr
ZSBzdXJlIHRoYXQgd2UgY291bGQgY29udGFjdCByZXZvY2F0aW9uIHNlcnZlciBhbmQgaXQgaXMg
c3RpbGwgdmFsaWQuCisgICAgaWQgaXNOb3RSZXZva2VkID0gW2luZm9EaWN0aW9uYXJ5IG9iamVj
dEZvcktleTooX19icmlkZ2UgTlNTdHJpbmcgKilrU2VjVHJ1c3RJbmZvUmV2b2NhdGlvbktleV07
CisgICAgaWYgKCFbaXNOb3RSZXZva2VkIGlzS2luZE9mQ2xhc3M6W05TVmFsdWUgY2xhc3NdXSB8
fCAhW2lzTm90UmV2b2tlZCBib29sVmFsdWVdKQorICAgICAgICByZXR1cm4gbmlsOworCisgICAg
X0VWT3JnYW5pemF0aW9uTmFtZSA9IFtpbmZvRGljdGlvbmFyeSBvYmplY3RGb3JLZXk6KF9fYnJp
ZGdlIE5TU3RyaW5nICopa1NlY1RydXN0SW5mb0NvbXBhbnlOYW1lS2V5XTsKKyAgICByZXR1cm4g
X0VWT3JnYW5pemF0aW9uTmFtZS5nZXQoKTsKK30KKworLSAodm9pZCl1cGRhdGVMb2NhdGlvbklu
Zm8KK3sKKyAgICBOU1VSTCogdXJsID0gX3dlYlZpZXcuX2NvbW1pdHRlZFVSTDsKKworICAgIE5T
U3RyaW5nICpFVk9yZ2FuaXphdGlvbk5hbWUgPSBbc2VsZiBfRVZPcmdhbml6YXRpb25OYW1lXTsK
KyAgICBCT09MIHNob3dzRVZPcmdhbml6YXRpb25OYW1lID0gW0VWT3JnYW5pemF0aW9uTmFtZSBs
ZW5ndGhdID4gMDsKKworICAgIE5TU3RyaW5nICpkb21haW4gPSBbdXJsIF9scF9zaW1wbGlmaWVk
RGlzcGxheVN0cmluZ107CisKKyAgICBOU1N0cmluZyAqdGV4dCA9IG5pbDsKKyAgICBpZiAoW1t1
cmwgYWJzb2x1dGVTdHJpbmddIF93ZWJfaGFzQ2FzZUluc2Vuc2l0aXZlUHJlZml4OkAiZGF0YToi
XSkKKyAgICAgICAgdGV4dCA9IEAiZGF0YToiOworICAgIGVsc2UgaWYgKHNob3dzRVZPcmdhbml6
YXRpb25OYW1lKQorICAgICAgICB0ZXh0ID0gRVZPcmdhbml6YXRpb25OYW1lOworICAgIGVsc2UK
KyAgICAgICAgdGV4dCA9IGRvbWFpbjsKKworICAgIFtfZnVsbHNjcmVlblZpZXdDb250cm9sbGVy
IHNldExvY2F0aW9uOnRleHQgc2VjdXJlOnNlbGYuaXNTZWN1cmUgdHJ1c3RlZE5hbWU6c2hvd3NF
Vk9yZ2FuaXphdGlvbk5hbWUgdHJ1c3RlZFNpdGU6ISFFVk9yZ2FuaXphdGlvbk5hbWVdOworfQor
CiAtICh2b2lkKWVudGVyRnVsbFNjcmVlbgogewogICAgIGlmIChbc2VsZiBpc0Z1bGxTY3JlZW5d
KQogICAgICAgICByZXR1cm47CiAKKyAgICBbc2VsZiBfaW52YWxpZGF0ZUVWT3JnYW5pemF0aW9u
TmFtZV07CisKICAgICBfZnVsbFNjcmVlblN0YXRlID0gV2FpdGluZ1RvRW50ZXJGdWxsU2NyZWVu
OwogCiAgICAgX3dpbmRvdyA9IGFkb3B0TlMoW1tVSVdpbmRvdyBhbGxvY10gaW5pdF0pOwogICAg
IFtfd2luZG93IHNldEJhY2tncm91bmRDb2xvcjpbVUlDb2xvciBjbGVhckNvbG9yXV07Ci0gICAg
W193aW5kb3cgc2V0Um9vdFZpZXdDb250cm9sbGVyOmFkb3B0TlMoW1tfV0tGdWxsc2NyZWVuUm9v
dFZpZXdDb250cm9sbGVyIGFsbG9jXSBpbml0XSkuZ2V0KCldOworICAgIF9yb290Vmlld0NvbnRy
b2xsZXIgPSBhZG9wdE5TKFtbX1dLRnVsbHNjcmVlblJvb3RWaWV3Q29udHJvbGxlciBhbGxvY10g
aW5pdF0pOworICAgIFtfd2luZG93IHNldFJvb3RWaWV3Q29udHJvbGxlcjpfcm9vdFZpZXdDb250
cm9sbGVyLmdldCgpXTsKICAgICBbW193aW5kb3cgcm9vdFZpZXdDb250cm9sbGVyXSBzZXRWaWV3
OmFkb3B0TlMoW1tVSVZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6W193aW5kb3cgYm91bmRzXV0p
LmdldCgpXTsKICAgICBbW1tfd2luZG93IHJvb3RWaWV3Q29udHJvbGxlcl0gdmlld10gc2V0QmFj
a2dyb3VuZENvbG9yOltVSUNvbG9yIGNsZWFyQ29sb3JdXTsKICAgICBbW1tfd2luZG93IHJvb3RW
aWV3Q29udHJvbGxlcl0gdmlld10gc2V0QXV0b3Jlc2l6aW5nTWFzazooVUlWaWV3QXV0b3Jlc2l6
aW5nRmxleGlibGVXaWR0aCB8IFVJVmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlSGVpZ2h0KV07CkBA
IC00MjYsNiArNjI5LDcgQEAgLSAodm9pZCllbnRlckZ1bGxTY3JlZW4KICAgICBbX2Z1bGxzY3Jl
ZW5WaWV3Q29udHJvbGxlciBzZXRNb2RhbFByZXNlbnRhdGlvblN0eWxlOlVJTW9kYWxQcmVzZW50
YXRpb25DdXN0b21dOwogICAgIFtfZnVsbHNjcmVlblZpZXdDb250cm9sbGVyIHNldFRhcmdldDpz
ZWxmIGFjdGlvbjpAc2VsZWN0b3IocmVxdWVzdEV4aXRGdWxsU2NyZWVuKV07CiAgICAgW1tfZnVs
bHNjcmVlblZpZXdDb250cm9sbGVyIHZpZXddIHNldEZyYW1lOltbX3ZpZXdDb250cm9sbGVyRm9y
UHJlc2VudGF0aW9uIHZpZXddIGJvdW5kc11dOworICAgIFtzZWxmIHVwZGF0ZUxvY2F0aW9uSW5m
b107CiAKICAgICBbc2VsZiBfbWFuYWdlcl0tPnNhdmVTY3JvbGxQb3NpdGlvbigpOwogCkBAIC00
ODgsMTEgKzY5MiwxMyBAQCAtICh2b2lkKWJlZ2FuRW50ZXJGdWxsU2NyZWVuV2l0aEluaXRpYWxG
cmFtZTooQ0dSZWN0KWluaXRpYWxGcmFtZSBmaW5hbEZyYW1lOihDRwogCiAgICAgW193aW5kb3cg
c2V0V2luZG93TGV2ZWw6VUlXaW5kb3dMZXZlbE5vcm1hbF07CiAgICAgW193aW5kb3cgbWFrZUtl
eUFuZFZpc2libGVdOworICAgIFtfcm9vdFZpZXdDb250cm9sbGVyIHNldFNob3dzU3RhdHVzQmFy
OllFU107CiAKICAgICBbQ0FUcmFuc2FjdGlvbiBjb21taXRdOwogCiAgICAgW192aWV3Q29udHJv
bGxlckZvclByZXNlbnRhdGlvbiBwcmVzZW50Vmlld0NvbnRyb2xsZXI6X2Z1bGxzY3JlZW5WaWV3
Q29udHJvbGxlci5nZXQoKSBhbmltYXRlZDpZRVMgY29tcGxldGlvbjpeewogICAgICAgICBbc2Vs
ZiBjb21wbGV0ZWRFbnRlckZ1bGxTY3JlZW5dOworICAgICAgICBbX3Jvb3RWaWV3Q29udHJvbGxl
ciBzZXRTaG93c1N0YXR1c0JhcjpOT107CiAgICAgfV07CiB9CiAKQEAgLTUzNSwxMSArNzQxLDEz
IEBAIC0gKHZvaWQpYmVnYW5FeGl0RnVsbFNjcmVlbldpdGhJbml0aWFsRnJhbWU6KENHUmVjdClp
bml0aWFsRnJhbWUgZmluYWxGcmFtZTooQ0dSCiAgICAgCiAgICAgW193ZWJWaWV3IF9wYWdlXS0+
c2V0U3VwcHJlc3NWaXNpYmlsaXR5VXBkYXRlcyh0cnVlKTsKIAorICAgIFtfcm9vdFZpZXdDb250
cm9sbGVyIHNldFNob3dzU3RhdHVzQmFyOllFU107CiAgICAgW19mdWxsc2NyZWVuVmlld0NvbnRy
b2xsZXIgZGlzbWlzc1ZpZXdDb250cm9sbGVyQW5pbWF0ZWQ6WUVTIGNvbXBsZXRpb246XnsKICAg
ICAgICAgaWYgKCFbX3dlYlZpZXcgX3BhZ2VdKQogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAg
ICAgIFtzZWxmIGNvbXBsZXRlZEV4aXRGdWxsU2NyZWVuXTsKKyAgICAgICAgW19yb290Vmlld0Nv
bnRyb2xsZXIgc2V0U2hvd3NTdGF0dXNCYXI6Tk9dOwogICAgIH1dOwogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Eb25lLmltYWdlc2V0L0NvbnRlbnRzLmpz
b24gYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Eb25lLmltYWdlc2V0L0NvbnRlbnRz
Lmpzb24KZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ4MGJlNDJkMjgwZDUzZjEzY2Fk
YmMxNjVkODE3OTJhMTY2ZDkwZjIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvRG9uZS5pbWFnZXNldC9D
b250ZW50cy5qc29uCisrKyAvZGV2L251bGwKQEAgLTEsMTUgKzAsMCBAQAotewotICAiaW1hZ2Vz
IiA6IFsKLSAgICB7Ci0gICAgICAiaWRpb20iIDogInVuaXZlcnNhbCIsCi0gICAgICAiZmlsZW5h
bWUiIDogIkRvbmUucGRmIgotICAgIH0KLSAgXSwKLSAgImluZm8iIDogewotICAgICJ2ZXJzaW9u
IiA6IDEsCi0gICAgImF1dGhvciIgOiAieGNvZGUiCi0gIH0sCi0gICJwcm9wZXJ0aWVzIiA6IHsK
LSAgICAidGVtcGxhdGUtcmVuZGVyaW5nLWludGVudCIgOiAidGVtcGxhdGUiCi0gIH0KLX0KXCBO
byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktp
dC54Y2Fzc2V0cy9Eb25lLmltYWdlc2V0L0RvbmUucGRmIGIvU291cmNlL1dlYktpdC9XZWJLaXQu
eGNhc3NldHMvRG9uZS5pbWFnZXNldC9Eb25lLnBkZgpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggNTc2OTliMjI2OGE5MmZlODgzNWE5N2FkYmM3Yjk5MWNhMGU2OGI2ZS4uMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwg
MApIY21WP2QwMDAwMQoKbGl0ZXJhbCA0MTcwCnpjbWFpJmN7cjVjYF5OYFU3X3lXbFFZSU9hWk5g
amNsNjVTSnRTUCVAI0BIRnptI2tVQiRldCgobTFIZjdGa35rXwp6Q2ZPP18jPWVzXmBPZFdiS0sx
USlVRWsrPXU2ZlM5cFpuYkIlKD5yeHl6WVZNdDcoWUNCO1gpTzZNMjw5bSQmeGQKelpCcSpmMGZ2
SXs3KVF7I2I2YG13b1U1SXVKeUBDfDhHPEQ+OUdwRkk/diRyOSs3cVhTIXtUamxVYDBpY2hvP0la
Cno/RT48cCE2aGxVOSl+Zjk/PHlSYTE2PHdgUDRkJEheb0hLSUchZFcrbT5UQTkoPkZnQC1GS2Na
aDtLSTVZOWBoewp6VnpCRj9mSHZYUGpCTll0dSUpYDhReSM4Y3hMcDdHVG1SQHdZJGZ5SmlHQ2NN
Qml4Y303KlFoQWlfOD0yNGNkYiMKenIhPFVIWWFrbThDKT4lRTByUTxrTChZT01pP3RfRzNOaXxD
cjslfW96P0pxUkQxYzZCeXRsdCtecz9MUGg/d1MpCno3eUE2WUl3aEdYYCRZME5uZkZ8ISpFe19u
KXVUM04jT0pZc2duWlpCK1gkUVJUaj5GTzdkdXZIUnQwYVNNODVwVQp6Jmk8fX14dlM2dmNFTnA5
SlZ5fUEjey1YWTElfkp9TEh9WHpNKjNKSkA4MGUqOFg/ckVfPVUtRy1oPnB3TGMxZ2UKej5CVHlR
dlcpVHYtXzJzPz45NTs4bFY0e3N1JXRoNUQ5cjlJS3olPmF8NjBfcnM3bHh9RkdQNlNFYlBnaW84
TUlTCnokU3NEMFBBbmEpJW9YJVdqa0BxY0pZOHYpUGBZZXBeKFJ3e3trbSRzOVdESW1HJUZmO0km
KihYbyl9anV2ek4xXgp6YllDQG8zVGY7QThNaSZfcytYNSQocz5pOSNib0F7S3hfNH5gOU02WXt+
a1NWQTtsNGRiRzcrZDhPbiVTUC0rI2EKelBkRX11ZU11Y2t7WntLc2VyYENocSgwajJgPT5rMyll
e1c9UUZsWH0yajBzYWl9TGA+ezE4eGhTNUx9JjQ9fmokCno2a31ZKCoqS3Q4QHhFWWxDYEV1RkRZ
cXF2Oyo2aUdQLXAjZWwpZ0oyWWxRT3puXlRyaigqUnE3Qn5mXjF5dHxQYgp6OGpBeHtFcjtAZWZu
fnBeUmFCKDk+dF96Ui0qV3RQQ0d2WmVxJUxLZmt9NmJaeD45VGptUT0lZUo3OTUhbnlVWlgKenUk
aX1nRSpUQVJNVWpaSSNKN2g5ej5zeGJlQDVeLWBTWUFXZ0pgVn5lY0gleUEjYiQ8OFhXOCptdSlW
K3JxUFROCnp6XlpkRi0zWUBCRnNgIWN4Nn5WYHNnczhaUEstLU0oclk2YmQjJEZVTHNKejRMdn5B
bjE2MlYxdVZLSWpQWk9GRAp6TTc5YVg7I3xHTztVZ1ZRbzN1eVNYam57V1VYUihAMHlWZVBYblZn
QjcxR242b05wPUhTZDw4e3NzMTJWciFWQnUKenphTnxeQWQzPF8ybXE8fiQoIyFrO3dJQ2s3P21+
aU5iTGpQdGZ6YGRNWiU9R3ZLZXk8MTsoMzdvSHowJk1YVEhJCnpxek8lQV5PfDw/KUZBRT9zYFc9
UUFZLWAlVjdBMl8kUzFxcD4tMEZ7QzlNbnFkR21CbiYoPUwxMEYpISR4XnFlPgp6K2N7Y0Zvcjdt
RmRYKk55a2tXKiNhYzdDJE0ldiM4XyYmQ3FoeWd9eFZJSCMmKztKZEp4N3FIamxvQFNmVjReOUYK
ejdzcWI7Plg2cFVuUXVZNExyVTxzKW9DRTZGNnM3KDNxXmJqMyNSPihfUzx6c3FiR3VsXzd2THVj
YTJ3cz0xS1FlCnoyPWA0I28jeldCaUNsbVVMOUBIWiVXNn1OMHAlX1NtQzBqO2RQYHV5PkgkRmMk
aTF9X2s8TTAwT2BuO0NuUFRWWAp6b2pxdT5vRnFpMldwfWZ9QE5lb09rKD1vcWlAVFRRQTlFeyhw
Mz5yazxKOEhJXkIheGZiI15rZHE+KmcpSHJlKmEKelVuM3A8WD5TeX1tLVUpXkMxVHB4VV47fntK
bGVpRzsje2FuZmBrbnlKaCpReF9eNkM5SnhAQGs2TmtOKkg2U25vCnpzYjhyQC0tY0hKcGlhPlZ4
Kz9rODJGe3RZITlaPWJIVEZlYEJfOG9ve0A8b3tfP2F3WFQqcWAmMWRKdihuQiM1Uwp6QXZ0MF54
dWZDRV58WGYqPXNoMlI1VE8hS1RDdUIjXyhJQHJiUiVGdWMqdUQreTQhUlQ9Vj18M2Z6TVNHMkxU
YHoKeipkVUdmNE0jVVhaPmF4VXBsK0NxK2QmSzltRGgqZG4zekt9bHxobTkrRUFMMlB6USN2V2o0
K25tOFNfQDRfVlZ5CnpgYE0wfUc1RGNXXnlONntuby1kU1kpUSk3Wi10JjVKIyp0fUhjRFMle2dm
d2Y2QCVyQ29kQCk5IUg5ITxHPWJzbAp6Y1c4VWloWHcmSkx4eEpfYDR9YENJekZsU2FeOW9vZSpJ
eldMTTR8WE9HTnxzKnMqMVJTY0cqJEdKfHAoMTZ7WDwKejNCJDEhSFByK1lLXnBkeFBLZzIhWTRn
PUg1P0NHe2RsaCMrQCFBQzQhS2lIWG91Z2JXSm1YUU9nZll4emJVKT8tCnp3Q0BofiZTZjMkTmZ9
ITxjPDZUNkJUVjEzJDBvdnNPNVRoej8wNGhEbj1XNkN6aU04Wl9LYT4ySnVsRDQoKXlhYAp6R29N
PmY8eHZZTVNMdEc0MT92RXpJJUtaIygzc0dRWl9Td3pqLUBjeGRYSHR5Xl4+KXJWN31sSnF3KU1M
YjsxZFoKelc8YU1mKXwwb3ZnM2Z9TSpteFBIODF9OzE4eFJKZVB4TCRtQkg4PyFFSEVPXlpWanJg
WHo+WkBDVWE7LTNVVjY/CnppbG1vXlVlYTxEdW9PfWRCQSFmY0tXbjR1ZSQtVWlPMFFUajN2M054
TztYWk5JVzVHWWNZI2tgYngwUl47Z3p6Vgp6dkxFVl47aGB0NHkoVWxaUkFyaiE1IUNgTzFXSVpx
IV8oSCUjQG1hTTNsZzFEPWg2Wm9kTU57R0s1NW54UztFI1EKemdELXIwe0khelNwa0JHJkNeV2I5
YTw7fTtkNG9jUG1VPjFgRCZ7NjgwfjN3OEBtYWRyMDgqMF9ucEFPRUZKRjE0CnpeZDAyVU5uWHtT
TX1GQHIlUCpGbmVVRXomSiszTUhhSk1JVXJnQCF6bnordTBnVyR9YHJeJFJ8VVVKelIhLUVhYgp6
dDZPa0dvPTFkYUxOeV9ONEtld09HKjA+O1F7ckg/VW43I2JlYTd8N147Q2dXK2Y8cz1fQF9GP18m
JCFsJSU/Ni0Kel4/SVI+TFhLJDFBOztaNWlHbnklOT85b0VEYnBJVUtrK3Fjd3pNa1J6akRYJU9Y
SUE8WSUqXktaIUlxbXVRNntMCnpxRDdofiEhQEhsZ1BidmlYZjN4bFZ8b0VKQmIhYVZ1ITUkaEZM
cXdDZ19PbDJ2eHx4c14yRUNwOX1YOE42ayhyfgp6bmJfcyhtVVNKbU9wLTh7UmpJSjNGIUU4PSkw
US1tdkBTN04lMnFWVUQkMDZUciYodG57TzB2ckBjWE49RHRHSWoKeldYRUxKcTNAJH0kRlFmS0NL
aHlgJHUtTkJaO2B7a3ljVjtmSUJxVWY4bDk8P3EhcmhHKFAqJUQ8a0huRFFhT3ApCnpZMF9RQFE2
T0YybnA2N0cpVTs1ZXt7Z2JgVC0pX3J6cXtMX09iVzNrdjYpPU1ULUlVPlZuKlV+VipJOGVyVXkp
MQp6JTRiVj04czlmJUk5WHg/VE8lRkV2MU1KNGhiTGJZPCVeR2MqRFZDZlhJUGRGYjUta0JsUXZq
MzFhXmdYVmV8QDcKenpFTVAkJXxURF4pNzlhRGVlODQ3VzBoU2lnbUhTfDBPNG1uVDZ2P0hyZD1Y
a2hxYGlebjdObV5kJlE1c2NWOFE7Cno8YTFBeXUjcTVHYD9fV0s4aD1Pfkg9RW4oeWZfZHk8PXkx
Y0coNHk8dnskKCslQnN6cHMyU1V1bDl4UWlPSmNJUgp6bk8xVG9AayZXVyhrNW9mYVZieW50WVds
Y29aXnZNQDdqVnUkdTBDQT9WazZ9QFk9eGcpWHU9SjkjOVRnJFQkc3AKejItRTt4cmRNUT1WbXk0
bjMpb21zUShxbSVGWnM/fCg0dj0lUmBufiZKS2BMcEdfeGg9aj5sMDZGK2AhenlrRGlVCnpaOy1E
S1AjbU1LaEg5IWxBSyYoX08qMXgqT1BrOV9xZ31JRXktKUxeZFZxU0d4XnxrMG19JUxCMkVtS35l
eXFVNwp6ZX5kRmcoQXp6S15XQ3NeKWNFe28oRDxTUit+UmlHe0NvRW88b3BnJmFle1RkPjlzUV9q
YDFIS1chc05GKHZWTnEKekRQRmdKPHdGSnpCdihpNkNRWUA3UFF8VFFac0VRcjBASzJ1aGoqKWBI
Q2FZdXdUaVZrd1o+YG5SOTx9WWRUelpNCnpJKzM0fWtkaTlgJitwRnYkMDU5WXRHcWBRZntyTl93
Uys0TzZEMW9GeGxtTnE4OzhDezwwQ29CLUhBRzxKeHB6QAp6QDcoJlBeV3s4MkBHaihyRE5+dV9e
QVM1dVQtRjxkUFdIKzVpSHIlP2pecGlYP1lsd0p3JGVVY2NEM0gkQkVReTQKekZGTFVsTWY0WTJl
MFpoblZfOUR7X044XyUtVWFNKGVyVU52cWF6TT9ZfTdTb3F9U2txTDIyeihgPzk2VTdTJmcoCnoy
NGg2PUVeYCo9V0BrPzRnPDsjV0JGN0pEMCNAQiRGZGQmYEtJPWd+Q2U0a1MyNDJ9Nz8lVzdwQVVA
aTd3Q25UOQp6bzVBUGZASiFYM05qaz5WWVVwazhDKDl5bz1XNVBzTWZIe1crUkpHM1lnYnR2OyUo
eH5ySmcofFVNTytZPzh9PmQKekkyKzB2cER7X0M0WDlZaWVCYihFcGw7TTl4UThaPXU5O3IoMVA1
UERhTkRON1E7fntHR3kzQ0xWSXlmU1hTUy0mCnpGNCNJKVpRPVklQjF0bnNeSEZPPHlqUCFtP3x8
JFIqJVg8RXhUS2I2PEpWZzhkIU4zYjAqKH5TPSktZWdaMnsjQAp6QjNDfVFadCpZT1hGZk9ON1pk
biZNdENvNDxLPGhrN187cERrTndkdkFJZGxjPW1kPDtnIUUoez8+YTg3YmEoJnkKekkkPEx7cXdJ
fkhIWXVALV5XSSUjbVFUPkNZRD5nUVkmM1YmKig7dWtScGtAIUdLKSkjTT47fiZOfn42MXgjeGMl
Cno/dFYyK0UzaGpAVEZNN3oxYC16e191fjNiUk51ZENKczsjU15KMitgSU9BNWZjWUQwKFJfJWVu
c1U2RSokJnJuIQp6Sz1RNXEld3UlMTJYX2BGWTZKR0lKfVMldmpfaF5RPWQpVFZiXjZRZyszI1dK
JDgmXjFkU351R1JWdiErK1p3UlYKekMkNyZ3N2BSRip5Sjs2NlMmNVJ8UHUodWpZZGs+OEN5OHA1
WXNfakVYXzUlcmdraz9APiY/cEBndFZVVmgmcXZQCnpGRT4tVzMkbFdJYzhQWUZfTkhhMD96d2NP
M25OY3prdnNoeEU+a3dzNkZvaS1PT053bk1oYT9gSGJWRVpjZF9mTwp6aThKJGhUWTlOa2FZe2Jk
OE5hVWozYzEpJGomNnBwP2Z5O0dSMHtvJChsUmlxVSQ5RSRTRUAjVlRyQ3R6NzQzbnUKejBhRjNp
NU4hRD9nb0BVYG5EfTR2X1cxdTxuaE1FWTZkczN4Q0FBJUZKU2d4PzEkUm9lLXZBaiNNZWpjfHFS
XmdiCnpYVDA0SHNRMzZ1Xlp6MD40RUElej41RkpBU2tETS0wKXt+KVV7VnFZdXo/cmEtUDBkVEFA
dUw0QDlRYkBZdX5WNgp6RXlIUUd2cjxyKUVFRUFuTFojdHdEQktKUjZ7ZygoTSpnLVIzaWFEflZK
V0BpX2NiWFUxQiVpemRPRn07KXVfbisKekp0d3R8en14KSh7b2tHWHk1bnA/bCpSJU1nOHR0SG1Y
VmYqT01gOH1LUSp8RkVhaXgpN3VmWmUyOTxfVUkrUTsoCnpJNnw4ODZhTGhvUF5ySCkxZGBHKXth
Mmd9ak1CXmVzbGdGMk8xYn5rcGZZbFF1TTA+MTYkaHNyKzwodTdPVXdQTwp6JC1zWUcqVjcmQztF
WiRzLWs9KmZfKjJmMChmfUZhQGYzZWhKd1ExfkVtdkRTI1ZrTEBZODFQaSFeKzlYTmxVe3AKekdI
fCNRT2JSUTchOW8hKm0+ZTh4Vn5hcn1XTVBWK3t+aHdmWlhUVyNZa1YmVlR2blIkKjh4T2JQWHFL
SFBKUj88CgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvTG9ja01p
bmkuaW1hZ2VzZXQvQ29udGVudHMuanNvbiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRz
L0xvY2tNaW5pLmltYWdlc2V0L0NvbnRlbnRzLmpzb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjg2ZGRjMThkMzEw
ZjQyZjUyZjYzYjMxZTNkZjkxNjhjMTkyMzE1YwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdlc2V0L0NvbnRlbnRzLmpzb24KQEAg
LTAsMCArMSwyMiBAQAoreworICAiaW1hZ2VzIiA6IFsKKyAgICB7CisgICAgICAiaWRpb20iIDog
InVuaXZlcnNhbCIsCisgICAgICAic2NhbGUiIDogIjF4IgorICAgIH0sCisgICAgeworICAgICAg
ImlkaW9tIiA6ICJ1bml2ZXJzYWwiLAorICAgICAgImZpbGVuYW1lIiA6ICJOYXZpZ2F0aW9uQmFy
TG9ja01pbmlAMngucGRmIiwKKyAgICAgICJzY2FsZSIgOiAiMngiCisgICAgfSwKKyAgICB7Cisg
ICAgICAiaWRpb20iIDogInVuaXZlcnNhbCIsCisgICAgICAiZmlsZW5hbWUiIDogIk5hdmlnYXRp
b25CYXJMb2NrTWluaUAzeC5wZGYiLAorICAgICAgInNjYWxlIiA6ICIzeCIKKyAgICB9CisgIF0s
CisgICJpbmZvIiA6IHsKKyAgICAidmVyc2lvbiIgOiAxLAorICAgICJhdXRob3IiIDogInhjb2Rl
IgorICB9Cit9ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9XZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvTmF2aWdhdGlvbkJhckxv
Y2tNaW5pQDJ4LnBkZiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmlt
YWdlc2V0L05hdmlnYXRpb25CYXJMb2NrTWluaUAyeC5wZGYKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDZkYWVkMTM1
ZTQ1NWFhMzZkM2Q1MTBhOGQyNGI3MjYxZWQxYzljNwpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwg
NTkyNgp6Y21idFkyVUhWWHUlPTJDUCFTWG1BYCpIQFhhU0w0TGV0UXRManN7Z0ZvWF5RTi14cXgx
TyVqc2ZGS0dBZjs4ejsKekF7fDdVXmo/MkRAKUZENntMZ3Zrb3dxMDEtT1FieGR1UWdgJCg7fFZy
S0JQTjc4SWNiSHFDQyRGNlZEUXtuWFMjCnpER0M0cVB6VlJnOCNlJCNubilMMGoyJUQ+Qyg7MjNz
bnxQVmtaOWMxMzY0UTNBKzFvPk5QdnRDcjVncn5nZ2FBdQp6NWp5TDErIyZ7M3pufHl4UXo+K3VQ
WnRVSWdgRVVtQitxciRVT2QmJWU0VW5DSUpgPzJZY2MlX2d+P2BDZWxSezQKenIrT2A0aiopVWpM
MSoyPTY0PzZvcz88eyFScE99Nzs5TGo4WmxEODVMKnhxTW9lYClwTEAwbHlJODhzZW5iQl8kCnpZ
ZHx8SmQ/fCR0bGg7e3JLNHZHZHV6JVAwekRATXBXYmMhNzx+R3NsM3Y5RCpVdUVoJj0yJl9Ac0xg
Z3lkRlJmbgp6VlpAbjc/YEN3PTNUKFRTMT8pVm0qRUt0dSZReEZUWDBZWGxDT3ZefUApfm9HZjZp
KURkUT5uUlpyb21gI0hIMyUKeiYrP1lJVVJPdmF1KShySFZmU2dSRWRMOERvNmYheypwKWVkNER5
PzxXOE9CRW5jQnZFLXFnLUB2VUktc199YXlOCnpwV0RXM1Q+PT0zZ35gKFBgfTYwT2wrPnQ8bz9O
QFNTWjJuZlBBKDRrcW5BMkVBdz1JVm5nVUI1NlQtalc3ISpGYQp6O3IhfD48R3U7YTEzNDRwRX40
VWRQTHsoPUEqNiVWWl8xOV88VSZeSzBRNGBEWUJPd0pWNmIhUXQkUl91cXFPUFkKejItTTdxIVlH
azApO3xNfXlUailUcEN0VE1MfGh5e2hgJHk3VFBwUnVVNkJBR0V4N0lYR2FCaUYwZl91YXN9OWwp
Cno8JkwmT3gmZyQwMm96Qis3fkhyVTAxcExSLWZ0cVU/Y29ZMkZNdFVNQ2piaXJ6entQXlQ7aE11
ZmA5NTRWNkBPRQp6RF90WjhWMWs9VU5kO2dBNUs9QHJxMHFYbmE0UkdMazA/YnFGYVl4MXRjKG1t
JFBrOGJLdzRxR2tFbDM8MFRNcSkKenskP0Y3YGVwcW05M3tWTntVO29TZXpeSXx1OF4pZjBgdUsq
NiVeVlRoZ3txbHVSI2UwMnF9RWBOQnw1MTtKP0RjCnowQVVicnhxayUlQzthWGA2cGVDc3trfXE3
ZlJHKjw/JjlWTyRBITx6OHxSRUowMVU9IVEzfE82Rmxjdk5YZiomZgp6YTM/cVhkLTBEfmdITWxL
azZaN1BtPyopdERlMUxxcGxmN0pBWXJYRyF0TUhLU0FtY2xxe0lNR1E1XnphQSQ1SW4KekdLeiYx
OSY2cU9ETW5eQWtudylyU15DSnRwZW9JVjtVPzd2a3s5QVB1aEoxemJ1d1VvMkxMYFNfKCh+Sns+
c2RFCno3ayZscnxDWEErKHU+UllaeTVtcGd3OEQtaEpAdHRSbHg7VTUmJUw8TkRxNH1xeitXIWU9
aXA0azM5OHNNO09BZQp6SElTTjU9aCo/azlWUTxOSyhDYlFNSDF9QHdMbVNSJnxwcHZCfmxnb2Iz
NnZ0ZGk4fFJGbUB8dGRhQz5QNUpNRE8KemJYcU05K0RnaV5XNl9Raj4mMFQqPEViYURNaVYzUjYr
PEpvPjs2TWsxWHs9VU5JcVo7Mj9JczU0QyZYRjglKW4lCno9eEV2X3g8cDR2VkBPeShXbik3RS1C
JSomS2R6QlpOcU1mP1FudEckNy0oSFIlM3I2Jj17OSY4NVlHLSM8VHloPgp6c1hRUWw8MVEhVEVZ
VTtWdmdYVWVyejlWRGw2WnRlIU5McSM2eGxEPnI8LTBuP2RIJCVSa3VHKj1BNmw1R1V+cWsKelVO
akBSVDVDS05JRiVEa2w0YmZCSUJBPlhNfjFBP1ElZmI3LVEoYC0ra2NgLTBIUk5ePSR6LXdhKjdh
RXJvWCV2Cnp1fC01Y3s7KX4lSig/ISFLKy1PUSEwVmFxT2U5SCE4c2djeHB+dj5LM3ZEKXNuYE9F
TzJyJUVuIyt5XiZVWWdqUQp6YV9SPmwjPXdgVE42TGdpQmoqJm1ffDs7VCltNVh4SWxGX3BrcU9x
angrbF9ZSzFjZVNvR2FLMmBSRUx6MzgkNDgKekxOeUVveUJ4LThTSVRPV15hO3dIJiZiVkF5QDBJ
KTIpME5HJUV6Qjx2eFlqRUNwM01mPUF3I1BTI2ZlQiV5Ym13CnpUWXd5OC1hfno/M3pnaFU9fnoy
NWtiMUBfOCsxK1dxNmt1WF9GNFdqNFctVWJZTU54TV5+b09IPjIkck1lT0clVQp6fEM3dm0jPzZv
Z2VlSCNaNnV9WDgpZ2Q+NjRDNGY/RFQ0ekJyVUVYQmJDRiVYbzk7KyY9V2FwWkEwbnckc1ljZEAK
emt8dDJSTSRGK04+cUYkZlkoZlg3WV4hfjVSfi1NK0VtcWopK3gjSUxtMSg1UWwlX25wPyVYYlF0
VGheIyYzYCMoCnpCR3s+Yz16SlUqPHwoQ1VrUlhWTi18e1I9cG9sQitJRGpCSFA/ZTdPNXdWfnVr
LVokcllrOFNyMCFuJUNGcm1rTgp6MlVtanJBZkhicHg5Kjklby1ybDRVNFBiPGlhSFB+TTtZM24w
VXtnXnZNMFp7TDNjNCp6QSVtPG1vYE9Wa2RFMXkKeisqP3N6T007JWJTdXJBeEU8eF8jNlgpfHd5
IVEqVTZ0JCN4dTM/eX0kaiRCX0p8KzdFNUl1ODM9cFRJVUY7TzQ8Cno+QGRPR3o+IWlaN0lOcl5q
ITdsMmklLVpIPnFuPjVEO1o+SERuMmt5Rj5lcz9oZ2ZfX0Ikc089Qys8LShCeGx9Swp6UWl3QztB
VXQ9fkZgaGtfczZhVjJqd1lBK1U1c2t7b2YrYVlWT2o5VW1sIz91UGxwKnJQYXpFOGc5dnJkeis8
YiYKejJBWWc+O3g9PzVLP25FcDVDZ0JDOEZJYWxeYEg8eG1saCs/V01DTzxYO1BafWlnKn5sQkU+
P31UN1VUfml8Z0lXCnpPUXltdVZrSU9Ndl9zTD1meTwzJnIjTHNnLXQmJnJ1aXY5PmFOOXVtVTlG
YElVPHFLSWgtR1czPEJGcCZDVUx3Kwp6ZC1WfjMhLSskV2ope0RwezNRNj8yVHw+eT1QKFI9RDRs
bmNEVDMkS2dKSnBpWUFsPyQ2NndgS0lUJj5+Y3Y4eFAKel53Yj5LJXtaa3dZcHkxP1UkPSYkRkIh
PzEhJTg/WjBUd3tvMVgtPHorP0AwPGJyeGxYa3oxMUxAOHJEWXljUDN3CnomT1VlUEghT1R5bTJN
MkhRU3cqITdsSX49QnlUNUF3LStaQyNYQll+QztJfG40fkxSSGxQdkBAeGgkPipzREZFUQp6VHVH
JGVBbElOOWx2OFN1cjd+NmlLe2BaRElXOz44NXNwWWpMP0deZTY+SFc4ekUyMkJzNWxRUmtYdFA2
MT9GOTQKelFzflJgP3lXNHBTJF9SOUAteWZQNnEwKz9tJD14eCE/c1lmTHhCViRPPWhgZ1MhUzdM
JVJjSXlgMmUhcTd0eSgjCno3bzhZZzlVWiRaSWA8QWNqVTUkI1g+V2V8bytzJm0qTS0rRmk5TnxD
aTcrWClQKldjQEt0R1VQPXYpWnYyUlUjJAp6eiNUPiRqc15zYVZ6QnZHJmtTdDNoM00oYmFvQUY2
UmZKRkZwfkR9SU9WVWU7T3NQekBPcVpHVG5VWTBZIzRlfTAKenFfKEhkcnB9QURtZklPcXkmKkI0
SEoqUUM0b1hUez4oc0xXbVBKV3M2Xz4yJDMtcmszanVsQjRUUmtyYHc5VUN5CnopX3VWJkxDXiN1
VXR3Q0k+IXw/SzVIYnw5YyZXWGZDOE0yTG9TOW4odHVxUHVTcE55fCopbUUjdD5KbEFXTDZ6Swp6
MUQtUXdiKihWSXNFMFNsSTdnflEhc19qdiRXNTdQNlZCM3piaFFNdm5EKDJ4IX5OcldtUX5udEVW
YmpEOWo5b0sKelNhb1o1PUAlb1Q3Yj01S0JeeihGYFE+PTA5cT5efU07Uyg/R21KNDxAVVFhZzNN
fSlwOFN4bUE4YWtJUmxeITtKCnpaYzI0RHYrezJaYihwcCk+d1kjaV9vbGMmVjhXd3IpbjYqcnRh
T1pfYGNeZXxtdThwIWkxUD9jQ0xRSiNSenRIbAp6alBjO0U0KXp+N3g0YllfKn1XTShPfiZRUl57
UClUZTxJemVvMlVEMWNNY1ViO3w2MkR6JEo5Z292Qkl8YmlBT28KelY2PXNvWWdXSmhYd3RPdEA/
cSFBcF9xQShDZy1OSFZkO15SJHxGOG40Y2Q1VVJPYGUxI0Nhd3htM2VzYiVpSG17CnpVc2ZkU0E9
VnclXkpUOGZNOTlSKlQmVlNeRSVGIUlobzJDZ2NwUSN4NHtnako0anNXckJ1SExSRUt1Zj5zRWA8
dAp6JHhzUFhvRntjQlg+MV5Ec0pfUTApTjg/RStSczN3YUlFTU5hKVV5UStVKCs/K2EqRE0oSEVS
Ni1qKGBaY2ZDQUcKejFRNXpmaWNRdDN2MkRGPSg1TSYmNEYqcUBjNClLbTBROURedVgzYG9NelNI
bFFRM0Aydn5lYHhuS1QwJV5GPzB7Cno0fEtzXkAwZG98XnZZTXQ9YH0kUyg/P30xcFY0bi0zcCVo
UmFUWDBtY1goTnUqeykyYG9rbT52UCV4YG12U2FiaQp6YkN6VCV1eyFLMVZaTWNMSzQjTndBOSk7
NGt7dFh4eEpOMHUkdD1RM3R3aW1qK0I2WU57PmBOT1ltMlIqblN6SUwKejR8OH0jM1ZJNTw/MVJo
cSVsajA3QFdAZz1HWkFVNzhsZ3RmOUZTdHdOQmU7X3tSYFEwSkBKfntaYm1sTWp+eyV+Cnp7NmpV
R0JNb0BwaF5veHRefCZuKm5mWHo+Xlc1Q2RPek1uRiRDZFcmX01eTEVIZSNPY3d6VkdMTFhSODcp
Kk5ZeQp6TGszR3NOOGpEQEc7NjR1YGxFSV4pKjBaZUk8bkVCKGgtQVhvXlhqQUA3STIrVTBRMnRT
R0dSYXFWUF5aZCNYbUQKeitsMG9jKzNCTHc+WD1QZ3ZCUExHeUxyemFoPm93M1V0eiM2M0Nqfmt7
PGphdEkoTEl0WXd+dlVqeXh3bCRVVlB8CnpFbW16Q3JYWTtXTT9SSEluaWJEPlplPyMoUk5yMnlI
R3JHa3Y4MSgrd1Q+K3BlKlVeZntpT3FSQWIlLSREVHBhSAp6YipeVH53Xy1LQGJMOzMoLUdwO01B
N0tufUdub3U0SjxJIW13bW1KIVZ0TUNnXz9Ne3tqbzlWdnJLJnBIMEUrO24KelJuXlVTRUhuZ34q
Wkx2V2VMJCp6Mj1XfkFRMmF3b0xkJmJeSkZUZGIkditmKkZCQzBtaVI4VDdDeX1AK3glc3RxCnpw
S1UjWmBvQFROcTxgVGUqR2NCPytmVC1rIyN3YDMxfCMwKWlyZjJZYGM1bmNfTjhDeHo5SngtY0l2
a2l5Xz1GKwp6X1ImQFk4e2Q4TE50JEcpPWlNIVptWE9WOzIqJEFNdz1wdFI8dWtxTUM4Wl9mOVlN
KTIle1NrbjNyMV4+amBmcF4KelkpZDR+cjJOelVZZ1IpflZnXn5PR2FneTIrX2hoUHYraTg4PXZz
RjJYdTl9OEV2ZihmcTFsbnBfLT5XfD8xUiZFCnpYNXkkYmhpaWhoek5oQTJxITwwaVBrUDctWHc3
OWllSSFvb1BPTWdAdiQtZj95Y3ZiRSNVfSYlTHBCOTlKMWI5egp6RVV7KGJ3eX5qPWliQUpKMlFP
aWJxfVQjMXBHdnZQNjB7aEtqWHNEVF5MZSQ/eXdNU3orJjNMayRNZnkmVVEkbXsKej0zVVJEOGUy
cXIofXJXdWEqQ3xfYDE0eEghQCp0V2RGekZsSzJRN2dYWmV4aU1ZWGNLS19eKjlSeShjbml6fjJ3
CnpTVzskO3Rmd0V2QHM8fi12KDRQWlVod3dPPz5wWV8rZmUtZVIjK1M/e0E8JlQ/PUo4JVRublA2
c0hneVVMdDVpfAp6N1dgaGA/M1dKc0tibDxkJm8xfT52OE41dUh3a0Nmend8OXB2WW9RSnlZS1VX
SygxbTloTm9LTj9adlVZQD5HKz0KemEhMDF1QkxmV2JXcj5OX29odXlPbiFReTF5IVhDRjcxZ1RB
enBvSj56dGAqMkZpM1chUT1uend4eTtUalF8PXx0Cnp5YHg7UURWMW89WTI9V0cjUUpUWU9kTyEq
R2NSV2N5LX16c0lsN24pWSFyOEVmND1wbCRMZUdLXkBHSyRPdTU9agp6e0xjLWY2U30oMy0mTm8l
SWpKKnxqZX4pMWJGRGU4LSR1UC09MHxHKXg1bWg3NGEpbjBsTlhlTiR7ZmJaQmhHfDIKenp9UEM1
aUsxOVNaKnFfeVhWPWUpaHNLMDVqXyEqPTZTMil0Qzhfdn1rYCZIKWskVTtQM0tRQyFecXxxSWhi
MXQ3Cno+RE49PFZSc3g8UHdsPjw9PSgxMDluPjNBbkc0WT4rYTMqYVohN0crKCZBNDJyY1FeeWk4
Tz02VCQ/SUZhdU9RJgp6UXRWQkxDZlAqRVhiO1BWbUQwRUxtP2J8RkZOa1pRSFJ9X3lQX3taRmBg
b0ppYmxzJW12ZE1+fCgteS17bWM8bl8Kei1RcjY9WUVsZ29CXiVgbnNCbCNzUUtAdkM/cVotKDJa
Yn5gUEY8TjVNaTVJfVhJXn1UTDkjeDdDdVFLdGg0KmM/Cnp0OW40ckUmQWl4V1hpREReKlF4Klhs
YjZFYU52bmFNT2l3RlZjUkRXYzB0NHxpSGF2YVEoKy0xPk4yRlBjVCF4Xgp6NCFYX1huKWNFPmxS
QVgpK05mX0oqNTZkRWIja01yX1BiUFdeKj1CU1lRTEFGTzRNaXo9IW8mfGZkIT9OUHg4Xl8KekdZ
S0h7K24/VWw7ZkFWM2VsX08wQGFWaks/KXxBIUc+RkMxdFNoKC1vNllNTGxscXxSTCNxNDMpcFdD
QjEhVTxOCnpHdFk5flcoNzhGO3RidiR2Zjs+Ty1LPE0lT3BfbF5yfU5XMFZqZzVORn5pfCs4QmRS
ZmBBNHpPTXlQcEtjeT5qbAp6PmMzanI0JEJPQUdXYj9xalBQPi1zRT1ZaCFyUUtsNWpvVV9HZGM1
R297Jlp8OElePzltaGlgbHg3X0hzeWlJenUKeld+KmdGeH44fFpZPkFpaUBWZHs4eGlzeERMblco
V2F+MTJidDNQKjhDSzI8IzJeOTYtKmRlMik0fHp3Mj1+bnEqCnp7LV9Vd25MYkk8UWc9NUhCZF4l
P0s3VEk0b0d0bFF6YDt7Uz1jSUpzWiVkIUBgaFpzNntaYDcxYCRaYHhtIz5TZwp6eV8jWmMzPCRt
NXhFPi0pZUpXVFo7THF6MU9penxjN0VFTH1peFg3MCgzbnRYKTNCJkt0blB+US1RXkh3Yk9VWk4K
el5iSGkzUnQhQmhsO2xNdnZwdCZMcUIrcF45QE9YQTNjbXImcERgPFNeMkJ6ZnE0Rnh3SkcwIWA/
bmlGKGhGXl8oCnpPa29ubDZETi1leH10XzUjTV5DI0lueHtWKiVPRnk+Z3lFRj54bn1KO1VVQkg4
bU4+dGQrQGZ8TTF2QkRIOUdHNgp6bW4lO3daanNWYmVEUXlEenVHZGJBJDZoYT9EaUR6QUA4aVg/
QTJOPmBsMTA/c197RG5wWU1rJHR8VzM5ZV5XSykKenJJfHtkUHd2Zk5xc1ZwdjdqZkA5Mn5EMjVF
N3opMCstayNXb3AwYWh6OGgrSFlUPm8jemthOGNOcntpNHIpYD1RCno2NiFmaXluYTYyU0hieWwq
SVVgR2dXN0FhKXFWRlFfRytgWiQxUCtsajNKdz4ld0FEOytnJTNCblJfUDFVOV4oewp6X1pSTWNW
fCR3RXJ+ZTtpP0g4MjsyMDxrTUVMbko+O2tVWj5nUTVBZXVIb0RBVTtYfUhncGI+UVEjZzJUI3ZN
bGsKejtrWGJEZHV1bHdYWTtkNDsrY3p8K3okQmY8anhPXmlmfDB2MzEkMChPTEZAfkF7aWpqWnVU
ZV9mRGwrdl56WUNBCnpzPmErbTtaXntjRjJFMX4xX14/TjE7cWZgP3I9MjUyWXtvQXpWbDY5N0Bq
e1R7bClva0Rfc2BgZmd2Q1c3JGh0TAp6NSpDSVNnRnN4ayZ0SUI8XkIyYyZTaTQpe18ofHsmZW8w
NlhNQHdSR1lmezJmNld8fXpsRiZfKl8xfU8wPCo2NE0KelgrdyEpdzxJWStlO3hwRkYpPE1fZkRQ
Y01PaVRwLSRBTGNwRjI3X1RRMytnVHt3V2chTDRNYzZ0XmVQOEFXYHcoCnpXbnZQekVkSkE7MnQq
Uk17Q348bzt0LXNsfEJee1VhTTFhO08hN0ItVmp6KjxvJnwkYFV5QklqX2M9cilNMUojNAp6NDF+
d1lLaiMkI2l+WTcxRjx+JXtyMjNiaEZ5d0RCekBYdndQRHUyM0A+JHAzMmJWV1Y5NENpRDtaWFhN
b0skbk0KekxFI3wjb3RqZnEhaCFhTjcxQno/VEhGUT5sQ1N8R0FZdmQ8dXI8TzgwayNwYmhDbVEt
WWVeWih8NksqZ1JOfG9FCldoUVVHZEl9cFN+QnFTKztLeExROzxeS1EhTzc/NjMKCmxpdGVyYWwg
MApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRz
L0xvY2tNaW5pLmltYWdlc2V0L05hdmlnYXRpb25CYXJMb2NrTWluaUAzeC5wZGYgYi9Tb3VyY2Uv
V2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Mb2NrTWluaS5pbWFnZXNldC9OYXZpZ2F0aW9uQmFyTG9j
a01pbmlAM3gucGRmCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc5YjI1MDExMzRhYjllMjEyZmI4YjI2N2ZmNmVmY2U1
MmRhZTc5ODIKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDU4ODkKemNtYnRZMlVKcl93NTE5Skx7
eTN0QXRJcmQxUUgtM3kqRVJianRQVmchNFNGO1FIbkhhQjchMVAxUTlfTGwte0lFCno2WF95Tk01
PVZAJFdLdC1eRjd+TWZCcDZFTl5VdUc/IyFJQ19ubWNTZ1k7Qz9MP0VJUDA4cW8hPmVQSkIrVC1e
UAp6TyNtbm00OCkrRTBUKFg8I2RPZl80bWR8M2o5QFlWaW01cmQ7P1AqYSlmSV9EdER0USRjNChs
UzlLYUtZTUkrcSsKenpOQShMaXB+dlN5MkBROVB0b1RDdVV3bnFDRnw4V2NtK3FOYkhsR1g0JHt4
X1U0MFh4cHRrQ202XkMhOF53Q2dnCnp1VTdlX0NqfnZmampUVlprQmArLTNYWkN0PDdZajY+b1k3
MllTSiNNUjdIMm4kUS0+fjc2c340WGUzQVUmcnYodgp6X1F6e3olbklIcVo3VjleTkhzSUw2UE1D
KDtyZUZ4aikhQU0qfFEybz8mLV5VUE9MNSM7dSV7PUBNVnsrYWFZfi0KejRZeTBvSlpVT1FNa1Z1
Q25hbn0yREhuWlRvbjVTcFQ0O1cheCl8Ty1RJSlhYktRT0UjYSgjVmg1Wnx1ckVMQTVkCnp2cDRW
NF5xdDBMSm9fOUUoX1pDLUdtWHUxX31VdXh7ZD9YVmcqd3MjbXZHc041QE9QZE1KSkw7K2RjJlpa
fjtjOAp6TkBpZilFfE9Majw1eiZJPVAzQj9YKkdaKS1ORyFze1dJUlNDZ1VHZip6QEQtKXx9YVJt
VE12a2pEIyN9IVleajkKemF2ZllOPmxvUG4mZzs5fkd7ckxkRSpifHd5VzlPckRkQ1FZMVRwPUB0
QXd+VHY1fE55e3VAWH1lamFGYG0+JHlNCnpAUWcqZjxBNCVCMFcmfipWIVdgblhpdVF6UGxHYlg5
WTwqUTFRSjBlQWdZVkRiMyFVJWUxUjVWZiZuNTg2cW1GRAp6NUZxX0UzaH1LWUQoR1Bgd3VXZE4o
MUl8T2lXPC1nRDVpe1kjYjZDUmtoVytia3RAb2M1VE1qeXd7bWhvRjtmSn0KejhFdU9AWSpCTkEw
SHVHbXtNSXxzYmt6R1ZxUU1XbnsqITI4S2ZecmdTSXAyMGcqeXlmNFRFKGZhRlRFKWRIXjZtCnpG
e1EoWkw/QUZBQGg+MyhsbUhXXmAqJClSIzkjXjB0Nzk9PDkpfmtEMWQxNzlrP3gpek5KOUUte1Jx
SnIwd0VCaAp6N2VHdUNoe0pqalFtWU5MTjRrMHY4VUdLYDNtSCl4QGYqRXxLYEFGS0RRI2BSPWN5
WE5sNm96cVlxZTF4QXxWJGsKeiQkYCpmSnJZNE5FbntqYm53ZXcpSkhaKGw3SXJMJTw8XnRxajFk
Vjt4TTtmQyFDc3wwI147aXs9TkwjRFhQQ0dECnpXQkBUUSM4Z1Njai1XWT07VjY2bUgqRWdLN3hG
dWVlbjl+RiNocHQ4NXtXNGlLWGBZLSpBNWdATDM9eWRxN0JyUQp6e2BZa3ReYDRLQjtTaDZKU0N2
JU5gJX5PTiZebnR4NGUqMUUxYH55VHhhSksjdmR+fiZaeHU+NCMqK2RqYzFFP04Kej5TNWZycypK
Ul5abFZUZ1J2R2t+Pmh4N3FyJChZJlhxTkl9WW9qVXEmMVBkbSg8SzgjNG9tb2ZhdVU3MG4tcCh4
CnpybGRFWj44Nlp9XkwzVnxQUGE4fGxBVTI3cjhnejVvdl5wM1B+VERePilvcjhPLV9FUShOd2d0
RDA7KUxWcHpDRgp6a0pxI1JBVFcrd059MTt2MnwlP15eNVMofm1NT0JraEREOTY7cytHKCkpTks5
TG19ZUs9YDxQN3hoRVQ1eE5oV3AKejZ7PXt4cFR6cW1vejFNMXdHI1Ikc3pQcngxdkhUdk1VaWZL
QTJqWmVkNXNFUFd1JSF4R1BUTHkpM2Z6WmhYbC0rCnpZfH1vP285LUdldUZBLXw3YHtxSUxWZFJa
VVd1aVQrPWU/b0JKc18zXyEyPTh1OEdQJUlkST07WU5vfTBYUWp3Kwp6OHdDLSVUZHpCRCtnR1Ar
eV9vSX1uQn5SYCVzb3w3a2VPU3VXOEFsVmomSS0wYG9CN0UqOT90dVVOX3ZBWlNtaFYKelVnMkhu
ZFpaWmokWlg3WTtrajU5R3N5O3pgR2QxWClyck89I2NzekdyWTQ+dm1WaEx5bHFBS1k1NyMoRFU5
SUNBCnpLR1g1aE1sTE00ZFhsRU9oemlYfT9XV3p0eXNIVT9aemlgYj93WkpDdiZhWFgqSlA0RnQ0
P0wtV05XTG14NnshbAp6Yj1tRTJHOHwwUyFrcyE9PnhDYnQpdn5PRiVveXY+K0AlUSljZFE3eDct
U2tOWTZsMW8/MylOWUJnc2RfZE9nKkoKeihiM0M+MVJueXxFN2hjRyFOYCYqcEN7KldtLWk+YiZz
IzcrMDQ+IyhqYD92ZkpZJlREZUB5UmkoT08yaFB2fEllCno4LUNyT2k/UEZrR0s1KCgkQVZxISRX
RnlsO1R7OF5MODQkWDtWWntFWmIqMkxqey1AOFopaC0oLXk7eypBYWhjbgp6YyU+KmVOQ0hyVjQz
Y2BeYWBxdFU0ZjIwYWFwfFV7JDF6S2ElZUJXblh6NmFLRCohXzR3ODVtS0t+Ql4rbWw+RWMKejZy
YVUxWFBybl4+U3RnI3J9azQ7KVJTZjtaJlZKQ1dyJGJVZSRWXiNqTnEraj5CQFN0PipzTjc8PHdU
VWJ7PG9gCnoyU1NoU2xqNEk8LVk0cnA5dj51bWI3UURiaEojeERaUUhudEZWak9SbWZHUDd0eHsk
PWBqV1JTNllSPyohWFkrcQp6NlF+dGhzTDh3NE9zVXlkUkZxOyhjfVAjNWJCV3s1QkZqfXhpS1dr
Q0ZOQFpReVpWTHZTWGVzcHt1JDtiKjJ5cmwKenMwb3dfdkxCQGQ/ej9ZJC0kYU15dEU0QEhNOX11
bEMjYiVjKmB8RVk8LUtWblBkPG5pWCl3N0diSCQ9Qz1fVUNmCnphelRjSnpQWG41R2wkM1oobGVJ
Zz95diVpa2BuX182KnVQVms1Qk5mXypNI3pHQWBYYlFSbGdneF59Sl81WGNlOAp6SVRwaiFSS3Bp
YlZAfjA2XlRmRyhLcHN+ZkJMKzY9WTNsdnBsVyhFPUt+RTdsP29iQjUyMX1IeyVSN1VMbTZ7eTkK
em1sN0I/THdRJlhjbSRHKmdOIXR0eHZoOSpkOF5KUHZ8Z31OJERUMSR1dHBUe3F5Y1J9Qyp0TXg/
KCp8OEJENlNFCnptNCtfQ3dhT0l5NiNTSCo3I3g0PC1mUX5vZXREYG5xRGxwP2clP3Yja1ZzbGZu
cnpLYSRjdUFIb0tGZT5BP14rJgp6YDZTdGhydCNVRjMpSzNOeTtuLTZVI0MhSzc/ZkZQbENDeVV7
OGx6WlEjQjxjNXBeNHRmKGwwdzNXUD58UC1UMmoKemU5MCs5dUVLMkwyaGZ2cVkpVTsoezYzVHg+
bFI9NWkyZXZadDFnd2IrbWtUY3hYdnxHd044VHVwKUlFUHIjUG5BCnpyaSRKZjlENTdDdkwjYF9g
WG5rTHN2O184NGY/Z0xZcUQhdEBgYVEyTDhVPEF3eEdNPHdNNmJqYCRXPmptfWZmMQp6bV9Fazcp
TXN3YjVXUWUkVVQzODlrbj9WelhrSyh6UE02UTR1MmRXNyFJITxUeHgoXnJ8SSFgakBBWSVDYXx2
dUkKell9SVY2WXtxTyEmP1hwYmloRHxIJTJkaVV3N0o7UG9jMSteYElQemVZaW4+fkA/eUpASipY
JVdvfU9SdUVrfnFWCnpFXjghREhzQUpYaypQIUdySn5OJFJgSEAxUWk+JihDNUFwcTJ5SFBfRmBG
MHFPWCtnQFk1OGVjSFI/NE1mJHdWSAp6MTN6QWdSRDRrUEcoOTR7Mktmaz9JYm5QTFN6S1BYVjVX
SmRPcH48am8yd0JrYSs0T2toMmcyMUB0Vj1DeGB1PGoKenFlZlRDeU5iSyRUKXNOO0xpMW8xJV44
S0MlKj52dl4qQEghVXU/T1M+R3huO2gqbWJ6RyV9VFdneE47O28zTnFDCnp5ZkJ4VWZFbEghVGsl
fXNQV3tKKjZjO083ZH4+TXRxLXt9V19RPT1RYE1EeHYtWmtJd0dBVU10QmdfPy1EIU1sNAp6SEBK
NnNjT2dgPVZaTEVpXnFZZT9afmxzNGVCYTZXblRnV1FtOGVON3o1dT9MSihAWFZzYi14NW95Uipm
WTNXIyYKelMkYWp6VjdzcVFseVlGPk1EMFlRWTx4WV5keVIoXkMoWSt+K0kwdF9yQGI1ODhiJF9Y
aHhTVyVnLSZSbmgqT1ZqCnp6TUdSVSZES1MwZUxMeUo8KyNmKU81IShCT1VfRjxhdT8qbjwpWTxJ
UzlAM0k7bDtMKWAoKnB4SjBvaVklaE5qcAp6eTlmJHRpc3YqbGZHaTMlM0tKP2hUNSswRmx3SzZ8
Yik8Q19IQFU8PCp6ajJQR0x0Rm9EU0wtcHE9Q157RzN8SnMKejVmejMkPVV3bkNIVEojaz5xOC1l
UWRMb0lzTCtVTWBPdTtzOE9eTkM/NCNESS1sKkVBdUIjZkxueHZ8b1dHWll7CnpeaEdWb0pQTWRD
JWdue2o2dXskKyZFNVBrcTgmRTVARUlfPENATnVqdVZ+PlRfVnJZNVRVU0E+T2BYfFFLfjhxQQp6
dnR0WWc7aXVvYFBVI2VeK20haUNRNEF6aGd6ZCZwSHdqSGd1VUt1Tl91P3AkZj9veDl0MFhtOGgx
K1R0WGZrT3wKemt8N2pkazkpbmNTcT1KPGRwR3VPcmhyNmxjVyNHTWFQZH1nan1pek9RN0J8M0E8
SWBLUnU5YnRFMEAxPj5SVThFCnpvdVNZanJeRH1RVz95bXQmSlVnTThje3FDSykxfGppPTFETEk7
Zi01LXMhaVd7SlE9bjwlQGdVKzE5bnotUm0lVwp6bjIobzN3ZkIkRXkqaypVM3c/ZV9lfVV6Mioo
RCNWeTdHemQpJD1pS0tzU3d7PHU8anBYZipxbmQmRnEzeyR1XloKej5NTT4jT0pBRm0lOVFqY3N6
Zj8xPXZeQ0tuT3doKCpjYXRINDx+VjNjWWpCPGVVQTh5MERYI3xBMlkqVy1YM1krCnoyPnc+fVdh
RylNJiR1X1cmIT5edUAtQD9CbCRyST1gK3srK3tIZ1pVak1iOGclTH47ZU5RPGppUEJfS2IjVDFK
Xwp6ZU8wQ1AhZGJtOVhEKHxsaCVGfU5ZdD52cCQreSZ4JkJGc1ZWe1U7eHF8eE0hUkMxaCo5Rj43
Qm58ZHohaWYpYV8KelBaUTdVeVhHX0klNC18flozMCFrWHteTGBzZlZhUFg/YDJ5KWhFK0NBb1ch
MHVIQFYzX0A8WVdTRFB7VzxLTEE3CnpQVXA/KU5vMUM3UUFuU0l1WTdMYTsjenR7Y1g3eHMwez84
NVokRUEwJjNwMypeWXMydHtvIXgyQiVLMHUwPiktPAp6XnJXOGNKUyFzcTtOYVNOKUpBZWooS2Bx
MnVEREw3aFkjUnNLRyM+M25uRzQwISYkO0VUKms/ajdrfk1YVDJOUnAKeis3XmBiIWd7MyluPiQ+
IXlKd3R+PVRIRSpsRUo2cXRHPFFxTkI0NzlKaTJHSWFOVE00Xl4jbEZ0Vmh4UXl+K0dMCnopcyo8
QDlqamZqKFQjSGEpU1pKPWNKanokSkJ5OyMwU0RIZldNfWNDYGB1S3pDIz5iJHtpWExFX2lZeUBH
eHpgcQp6IUFIO0peWXtDPDJKQ2FJKSl5V1JUPEkjaD9HT2BNc3d7U3B4Y3ZmQVB1WjIqQzhTb1lI
bTlEaS1XOWJTSFJBdHIKenk+WW9NRHllNU9xKDxQIW82V0BUeXRMfit5SHlVVClgbiU1PyloWVN0
PGs1fEBTWGsqd2BzZVhGRmlnXk9XOFJRCnpxan1aeDgkdFcmeVNENGlha0M0RUVrdDVrdzdrelhu
IVF6RFVOYCUlVzFHUWl5TUk9XmhoLT9Tejc+fipoI3dXYgp6I08oI3FNJWFVQkRsMDE/SjwpYysh
eTQ4QVhtI1dSYEglZjhWSGE+JUBjJXoqKzdNJWwrdzhfP2VrOHpLMFRyRCsKekFOeGVJbCZmJDg3
MjBvQE14R1I+U1JAcD91KVB9VVZeJUNtTlUmPlA7T1clKUsjTGM9YDhoSkxUMnJ5SU5gKDY2Cnoy
bWlXJHMkR0x6SnJrZEtaaHBDOVVxJHxQKXNodk4xVXBfYz1MaEpuWWlzKnMrbkRKeil7TE9uTj52
NUJPY3xoaAp6TnpjfSZ0RG19VS1fPjUmbzt9QndyT3poKClJPkpFcXd+fnRDODJgLThWbVZZMW8k
JUZxVStMU09jfWN7UnZXWkIKekxSRD4yK3pUMiV0ckFxXkpXP0VmRVZLXjZSV2VUJiRxfWx7TCVv
KyNKMCUkITltK0RpMXlmSnhZSjNjKjcweWRrCnpJX1hSNGQrbFlJKnlneDV5PFJPTXA4WnA9az9L
MFBPVFNpMT1VTEB8dmFtOUJLZEk2ekRaUWUjO1VLUztYUHN4OAp6eXkjeG43emo1fEtCQlBKcnd4
YVh0S1dENWRtVy1mSEM4YSgmOVE4JkAqXzJSP2l6KSFsKmNuVyZXQlc/VHMzQSsKelM+Oz0paEtZ
TWM8MFV9e097VlB9dmtPKitgRGdxIVckTU5YbVd5WEZ3PjFvKUdOfWFMKiZBa1VHX3UlT0VtY2tn
CnpOZXA/N2JeY2pxY3h9I2xhXkooI2xgUmg2ajZsNHJqQylmX2ZVc0EhbllBQG9TJUxOMnBuWiN5
cUVyc2ttaUgzZQp6cU50YkJCQGd7NCFhXjNiPFMwMz5DYzhoXz96RGJtYEdHIUxXKE9mP3VlRlI/
ZFJATlEmWDErdD5RS0FYZCZlfVcKel49N2dMUy1rX1dFIXdYZTUlaSNWVCE8bHVPJDI0IWBkSFYx
VXRLZmV2cExgQ2QjOVlUWmNQK28hNWx0VDlsPUZpCno4R15waURSKDtGcmcrYGBtVEh4K2dmMlgw
PHg/ISFzS2xqRHt6ITEwWUF8Qm5GI1hJVCt4V1lLJCgrPS09c1JnXwp6PmAzR3JtVkAwdjtvK3xB
QXYlRXRmZW9saz9kS35GZ0tgNXQlbUwrMDtuJj1PVEVrcyF3X0REUmtVN2BmV14pc34KenZRSFZv
Vz55ZVpUXzdBSSo+dGd1YiZYUURZUEQlaHcoM0orKFZRVWYmSVNLMyowTHd8bWBnY0w4X1BLZEpA
RVdOCnpYPUxuTTdWNE52YkxVNEBKP05falk/cTRyYkI2dHl0JkF4Vz1RPXc8STdRYC0lQUJ2Xik/
NylLMD1GTnR4Rngwcgp6e0ZyPEhxejdjeypLNGNGdlh6JT8hRm9ZckAjTz9wZVBIUDJgbFMkZ3gm
elRGNXhnS0NsJHM9JEIkfmkmNilVUGAKenFkbGdAckVPRVhRXyZGe3UpIW5GO3Q1KTE/Ji1AZkVF
JXxPM0t6c0Fhb3c5LXJRZz1+Pm8qb3l5P3Fnc15UbiNyCnopdSpmRDBwPnt3YzcyTEohKXc9YitW
cnpvdzxTV0ZkfkUrZE5rYDxNNiF9XzxZM0FnelFecHUtbDxvcUorZnU/bgp6PyhMOTRNcn07O3E3
ITd6WU9HRUwlbyFEWD5lSmJXRz95cSgoMHN6KnlIIz1KTDAhc0IkTUxsWiE1elVWTiU/Y3QKemUy
alUwaCFwY09sdSpGaTNCRSpYSWxRR05gYG5qT2daRXlJNVZNRkA1cUMreXRNTHMhaDcwRypsUmN9
JHNAKlBNCno/N1NaOGN3cG5aaUM/PGYlJSZwNSt9JCRDREhaQjdNWlI8QEg5KlBqZSNhYTYpJFF1
QHVlMVUtcjhsZTdgQTJRIQp6T1UkS0tJTjV6ODlvSVRjPUY+SlVAO2dxOTJpfV53YEdmMG0rQk1f
PFNre2lUOTAqdG57QDBSNFIydSRSKk0zU2cKemYzMGk4WlRab0R8OEs+fF5TP0Q1cUIhRzQoMThl
SWhfO2lSQ3FjOSE/KF8rKEJ2SEVmQ0dKM2VTOWdCKXNFb3VSCnpUYD4rbiNVIyVvNzBDcFJePm82
eDFIfllzKEJJIWJUODtVMmsrd2pEQTx6XkUwZ0ZQIU1QV2RGRkMtU3s0PHpWQgp6aGt9ellQVDtS
V2szPTdTbD8mb3ZoIWpgfjB2NEE1T01AbE4hQyplWj97Q2xGO3c5KUNjMyFwdz1ASWYlVT1tWCUK
ekQyX1A3b0slUj8xVk9lc1QtfGpzY0UzT1c5alB4Q1o0ViZHVFd8cFF1TENGdmdHcz1FX1B9MkBu
Nzk8N1p7aClUCnpLZUI8TFAocyVLWEBofCF7YDNRajZWbSVuS1FMNkIwTn1yREZlbX4zZjcmRlpC
bmp5TSgqfkI1QVA3R0h2Y1YrPwp6VmdCMCZCVmhQWDg7dFB5WnlPPVN8MW1EfjQ/aFZoXyNkJUI7
WmxGaDFxTENlezlvZmpyMm9oUE9xYEo2eng7NG0KenE/MFFlZCNFY0xJezZjRGdBK3RLNDJIbmNV
K1NjJHlGRz9MKitWY2pSUzJaTEQyfXY0Tn18dzZHKC1Ya3d9VlE7Cm9wbXM8aUQmakJ7OTFSQ2Ml
S2BwKG0hRzhmIzFTWllOQ1gxeDtzNmp4NmA9PEJBMmkwfVNeeGs1CgpsaXRlcmFsIDAKSGNtVj9k
MDAwMDEKCg==
</data>
<flag name="review"
          id="348913"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
    <flag name="commit-queue"
          id="348970"
          type_id="3"
          status="-"
          setter="simon.fraser"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>330020</attachid>
            <date>2017-12-21 01:09:15 -0800</date>
            <delta_ts>2017-12-21 02:21:25 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-181006-20171221010914.patch</filename>
            <type>text/plain</type>
            <size>46083</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MjA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDUwZDZkNWM3NGM3MTlhMTNlMGMzOWM5
ZTY3ZmRjNmYxYTBkZDlmMWUuLmFjYTAwMzg5YTE5OGNjODIxNmUwOTQ2YTNkYzU1MDhjMjg2ZDFi
MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTctMTItMTkgIEplcmVteSBKb25lcyAgPGplcmVt
eWpAYXBwbGUuY29tPgorCisgICAgICAgIEVsZW1lbnQgZnVsbHNjcmVlbiBpbnRlcmZhY2Ugc2hv
dWxkIGRpc3BsYXkgdGhlIGxvY2F0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xODEwMDYKKyAgICAgICAgcmRhcjovL3Byb2JsZW0vMzYxNDMxNzYK
KworICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgQWRkIFNlY1Ry
dXN0Q29weUluZm8gU1BJLgorCisgICAgICAgICogd3RmL3NwaS9jb2NvYS9TZWN1cml0eVNQSS5o
OgorCiAyMDE3LTEyLTIwICBGdWppaSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29t
PgogCiAgICAgICAgIFtDTWFrZV1bV1RGXSBMb3dlcmNhc2UgRm9yd2FyZGluZ0hlYWRlcnMgZGly
ZWN0b3J5IG5hbWUgb2YgV1RGCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCA5Nzg2NzBhODJkNTA5NGEz
NTA3OTBmM2YyYWY3NGY1ZmQzNGQwMzgxLi5mYTY2YzIyNWJmMTg1MTI3MzFiMDZkYmI4OTQ5MTcx
ODQwZmNhYzhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNy0xMi0x
OSAgSmVyZW15IEpvbmVzICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAgRWxlbWVudCBm
dWxsc2NyZWVuIGludGVyZmFjZSBzaG91bGQgZGlzcGxheSB0aGUgbG9jYXRpb24KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTAwNgorICAgICAgICBy
ZGFyOi8vcHJvYmxlbS8zNjE0MzE3NgorCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNl
ci4KKworICAgICAgICBBZGQgaU9TIGF2YWlsYWJpbGl0eSBjaGVjay4KKworICAgICAgICAqIHBh
bC9zcGkvY29jb2EvTGlua1ByZXNlbnRhdGlvblNQSS5oOgorCiAyMDE3LTEyLTIwICBEYW5pZWwg
QmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgQWx0ZXJuYXRpdmUg
UHJlc2VudGF0aW9uIEJ1dHRvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA0OGZmZmQ1NmU1N2NlYTM2ZTFkMTQwMDQ2
OTE2MmJkZDNmZmVkNzc3Li40MTk0MTczZDBkMjBhNTJlZjdiNDRjZTliMWUzOWMzM2YzOWQ1YjMy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDE3LTEyLTE5ICBKZXJlbXkgSm9uZXMgIDxq
ZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBFbGVtZW50IGZ1bGxzY3JlZW4gaW50ZXJmYWNl
IHNob3VsZCBkaXNwbGF5IHRoZSBsb2NhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxMDA2CisgICAgICAgIHJkYXI6Ly9wcm9ibGVtLzM2MTQz
MTc2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgorCisgICAgICAgIFNob3cg
YSBzaG9ydCB1c2VyIHZpc2libGUgbG9jYXRpb24gc3RyaW5nIHdpdGggYSBsb2NrIGlmIHNlY3Vy
ZSBhbmQgZ3JlZW4gd2hlbiB0cnVzdGVkLgorCisgICAgICAgIEluY2x1ZGVzIG90aGVyIGludGVy
ZmFjZSBjbGVhbnVwIGFuZCB0d2Vha3MuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLRnVs
bFNjcmVlbldpbmRvd0NvbnRyb2xsZXJJT1MubW06CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5W
aWV3Q29udHJvbGxlciB2aWV3V2lsbFRyYW5zaXRpb25Ub1NpemU6d2l0aFRyYW5zaXRpb25Db29y
ZGluYXRvcjpdKToKKyAgICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHZpc3Vh
bEVmZmVjdFZpZXdXaXRoRnJhbWU6XSk6CisgICAgICAgIChtaXJyb3JFZGdlSW5zZXRzKToKKyAg
ICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIF91cGRhdGVMYXlvdXRNYXJnaW5z
XSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciB2aWV3RGlkTGF5b3V0
U3Vidmlld3NdKToKKyAgICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHNldExv
Y2F0aW9uOnNlY3VyZTp0cnVzdGVkTmFtZTp0cnVzdGVkU2l0ZTpdKToKKyAgICAgICAgKC1bX1dL
RnVsbFNjcmVlblZpZXdDb250cm9sbGVyIGNyZWF0ZVN1YnZpZXdzXSk6CisgICAgICAgICgtW19X
S0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciBsb2FkVmlld10pOgorICAgICAgICAoLVtfV0tGdWxs
U2NyZWVuVmlld0NvbnRyb2xsZXIgdmlld0RpZEFwcGVhcjpdKToKKyAgICAgICAgKC1bX1dLRnVs
bFNjcmVlblZpZXdDb250cm9sbGVyIGhpZGVDYW5jZWxCdXR0b25dKToKKyAgICAgICAgKC1bX1dL
RnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHNob3dDYW5jZWxCdXR0b246XSk6CisgICAgICAgICgt
W19XS0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIgc2V0U2hvd3NTdGF0dXNCYXI6XSk6Cisg
ICAgICAgICgtW19XS0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIgcHJlZmVyc1N0YXR1c0Jh
ckhpZGRlbl0pOgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIF9pbnZh
bGlkYXRlRVZPcmdhbml6YXRpb25OYW1lXSk6CisgICAgICAgICgtW1dLRnVsbFNjcmVlbldpbmRv
d0NvbnRyb2xsZXIgaXNTZWN1cmVdKToKKyAgICAgICAgKC1bV0tGdWxsU2NyZWVuV2luZG93Q29u
dHJvbGxlciBfc2VydmVyVHJ1c3RdKToKKyAgICAgICAgKC1bV0tGdWxsU2NyZWVuV2luZG93Q29u
dHJvbGxlciBfRVZPcmdhbml6YXRpb25OYW1lXSk6CisgICAgICAgICgtW1dLRnVsbFNjcmVlbldp
bmRvd0NvbnRyb2xsZXIgdXBkYXRlTG9jYXRpb25JbmZvXSk6CisgICAgICAgICgtW1dLRnVsbFNj
cmVlbldpbmRvd0NvbnRyb2xsZXIgZW50ZXJGdWxsU2NyZWVuXSk6CisgICAgICAgICgtW1dLRnVs
bFNjcmVlbldpbmRvd0NvbnRyb2xsZXIgYmVnYW5FbnRlckZ1bGxTY3JlZW5XaXRoSW5pdGlhbEZy
YW1lOmZpbmFsRnJhbWU6XSk6CisgICAgICAgICgtW1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xs
ZXIgYmVnYW5FeGl0RnVsbFNjcmVlbldpdGhJbml0aWFsRnJhbWU6ZmluYWxGcmFtZTpdKToKKyAg
ICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHByZWZlcnNTdGF0dXNCYXJIaWRk
ZW5dKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJLaXQueGNhc3NldHMvRG9uZS5pbWFnZXNldC9D
b250ZW50cy5qc29uOiBSZW1vdmVkLgorICAgICAgICAqIFdlYktpdC54Y2Fzc2V0cy9Mb2NrTWlu
aS5pbWFnZXNldC9Db250ZW50cy5qc29uOiBBZGRlZC4KKyAgICAgICAgKiBXZWJLaXQueGNhc3Nl
dHMvTG9ja01pbmkuaW1hZ2VzZXQvTmF2aWdhdGlvbkJhckxvY2tNaW5pQDJ4LnBkZjogQ29waWVk
IGZyb20gU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvRG9uZS5pbWFnZXNldC9Eb25lLnBk
Zi4KKyAgICAgICAgKiBXZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvTmF2aWdhdGlv
bkJhckxvY2tNaW5pQDN4LnBkZjogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJLaXQvV2ViS2l0Lnhj
YXNzZXRzL0RvbmUuaW1hZ2VzZXQvRG9uZS5wZGYuCisKIDIwMTctMTItMjAgIFlvdWVubiBGYWJs
ZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFN1cHBvcnQgc2VydmljZSB3b3JrZXIg
aW50ZXJjZXB0aW9uIG9mIHJlcXVlc3Qgd2l0aCBibG9iIGJvZHkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XVEYvd3RmL3NwaS9jb2NvYS9TZWN1cml0eVNQSS5oIGIvU291cmNlL1dURi93dGYvc3BpL2Nv
Y29hL1NlY3VyaXR5U1BJLmgKaW5kZXggMzc1YjllMjE1NGIxMjQ3N2NhZTU3M2QyOGE1ZTUwYjUy
YjVmZWNhZi4uNjQxNjY4OTZiNTFlMDY2ZDY5ZjQ1NTczODM0M2I3NzI1NzExY2NjMSAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi93dGYvc3BpL2NvY29hL1NlY3VyaXR5U1BJLmgKKysrIGIvU291cmNl
L1dURi93dGYvc3BpL2NvY29hL1NlY3VyaXR5U1BJLmgKQEAgLTgxLDQgKzgxLDEwIEBAIENGX1JF
VFVSTlNfUkVUQUlORUQgQ0ZEYXRhUmVmIFNlY1RydXN0U2VyaWFsaXplKFNlY1RydXN0UmVmLCBD
RkVycm9yUmVmICopOwogQ0ZfUkVUVVJOU19SRVRBSU5FRCBTZWNUcnVzdFJlZiBTZWNUcnVzdERl
c2VyaWFsaXplKENGRGF0YVJlZiBzZXJpYWxpemVkVHJ1c3QsIENGRXJyb3JSZWYgKik7CiAjZW5k
aWYKIAorQ0ZfUkVUVVJOU19SRVRBSU5FRCBDRkRpY3Rpb25hcnlSZWYgU2VjVHJ1c3RDb3B5SW5m
byhTZWNUcnVzdFJlZik7CisKK2V4dGVybiBjb25zdCBDRlN0cmluZ1JlZiBrU2VjVHJ1c3RJbmZv
RXh0ZW5kZWRWYWxpZGF0aW9uS2V5OworZXh0ZXJuIGNvbnN0IENGU3RyaW5nUmVmIGtTZWNUcnVz
dEluZm9Db21wYW55TmFtZUtleTsKK2V4dGVybiBjb25zdCBDRlN0cmluZ1JlZiBrU2VjVHJ1c3RJ
bmZvUmV2b2NhdGlvbktleTsKKwogV1RGX0VYVEVSTl9DX0VORApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvRW5nbGlzaC5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzIGIvU291cmNlL1dlYkNv
cmUvRW5nbGlzaC5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzCmluZGV4IDc1NTcyMmU5MDEyNDBj
YzY1MTlkNGRmYzJiMDkzNGI0YWJmNTJlZTUuLmRkOGNmYTI0YTYyOTgzNmQ3YWQ5OGY4NGE2YmUz
Y2Q0OWJkNDY1YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovTG9j
YWxpemFibGUuc3RyaW5ncworKysgYi9Tb3VyY2UvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL0xvY2Fs
aXphYmxlLnN0cmluZ3MKQEAgLTEyNTQsMyArMTI1NCw2IEBACiAKIC8qIExhYmVsIGZvciB0aGUg
YXV0byBmaWxsIHN0cm9uZyBjb25maXJtYXRpb24gcGFzc3dvcmQgYnV0dG9uIGluc2lkZSBhIHRl
eHQgZmllbGQuICovCiAic3Ryb25nIGNvbmZpcm1hdGlvbiBwYXNzd29yZCBhdXRvIGZpbGwiID0g
InN0cm9uZyBjb25maXJtYXRpb24gcGFzc3dvcmQgYXV0byBmaWxsIjsKKworLyogVGV4dCBvZiBi
dXR0b24gdGhhdCBleGl0cyBlbGVtZW50IGZ1bGxzY3JlZW4uICovCisiRG9uZSIgPSAiRG9uZSI7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9MaW5rUHJlc2Vu
dGF0aW9uU1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9MaW5rUHJlc2Vu
dGF0aW9uU1BJLmgKaW5kZXggZDRhMjQ2NWNmYTgxZTg5YzBhNTcxYzAyMDMzZmIwNDQyZTJhYTFj
OS4uNmQ5MGFmYWI4ZmYyOTE3NGUwNzljYWQ1NjdmOTQyNDZkN2VmNGY4ZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvTGlua1ByZXNlbnRhdGlvblNQSS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0xpbmtQcmVzZW50YXRpb25TUEku
aApAQCAtMjMsNyArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmIF9fTUFDX09T
X1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxMzAwCisjaWYgKFBMQVRGT1JNKE1BQykgJiYg
X19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEzMDApIHx8IFBMQVRGT1JNKElP
UykKIAogI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCiAKQEAgLTM3LDQgKzM3LDQgQEAKIAog
I2VuZGlmCiAKLSNlbmRpZiAvLyBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEw
MTMwMAorI2VuZGlmIC8vIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTAxMzAwKSB8fCBQTEFURk9STShJT1MpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlcklPUy5tbSBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVy
SU9TLm1tCmluZGV4IGZmNmU0MDJhY2NiNTcyOWZiMjU2NDU4ZTEyMWRmNzc0NTg2MjFiOGQuLmQx
NmIyZTJkOWYwZGJmMDdkZTI5OGY0ZmVlNGY2NjI4ZGUzYjYyMDggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVySU9TLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250
cm9sbGVySU9TLm1tCkBAIC0zNSwxNyArMzUsMzEgQEAKICNpbXBvcnQgIldlYkZ1bGxTY3JlZW5N
YW5hZ2VyUHJveHkuaCIKICNpbXBvcnQgIldlYlBhZ2VQcm94eS5oIgogI2ltcG9ydCA8Rm91bmRh
dGlvbi9Gb3VuZGF0aW9uLmg+CisjaW1wb3J0IDxTZWN1cml0eS9TZWNDZXJ0aWZpY2F0ZS5oPgor
I2ltcG9ydCA8U2VjdXJpdHkvU2VjVHJ1c3QuaD4KICNpbXBvcnQgPFVJS2l0L1VJVmlzdWFsRWZm
ZWN0Vmlldy5oPgogI2ltcG9ydCA8V2ViQ29yZS9GbG9hdFJlY3QuaD4KICNpbXBvcnQgPFdlYkNv
cmUvR2VvbWV0cnlVdGlsaXRpZXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvSW50UmVjdC5oPgorI2lt
cG9ydCA8V2ViQ29yZS9Mb2NhbGl6ZWRTdHJpbmdzLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNv
cmVOU1VSTEV4dHJhcy5oPgorI2ltcG9ydCA8cGFsL3NwaS9jZi9DRk5ldHdvcmtTUEkuaD4KKyNp
bXBvcnQgPHBhbC9zcGkvY29jb2EvTGlua1ByZXNlbnRhdGlvblNQSS5oPgorI2ltcG9ydCA8cGFs
L3NwaS9jb2NvYS9OU1N0cmluZ1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9RdWFydHpD
b3JlU1BJLmg+CisjaW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKyNpbXBvcnQgPHd0Zi9zcGkv
Y29jb2EvU2VjdXJpdHlTUEkuaD4KIAogdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKIHVzaW5nIG5h
bWVzcGFjZSBXZWJDb3JlOwogCitTT0ZUX0xJTktfUFJJVkFURV9GUkFNRVdPUktfT1BUSU9OQUwo
TGlua1ByZXNlbnRhdGlvbikKKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKK3N0YXRpYyBjb25zdCBO
U1RpbWVJbnRlcnZhbCBzaG93SGlkZUFuaW1hdGlvbkR1cmF0aW9uID0gMC4xOworc3RhdGljIGNv
bnN0IE5TVGltZUludGVydmFsIGF1dG9IaWRlRGVsYXkgPSA0LjA7CisKIHN0YXRpYyB2b2lkIHJl
cGxhY2VWaWV3V2l0aFZpZXcoVUlWaWV3ICp2aWV3LCBVSVZpZXcgKm90aGVyVmlldykKIHsKICAg
ICBbQ0FUcmFuc2FjdGlvbiBiZWdpbl07CkBAIC0xMTUsNiArMTI5LDcgQEAgQGltcGxlbWVudGF0
aW9uIF9XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciB7CiAgICAgUmV0YWluUHRyPFVJVmlldz4g
X2JhY2tncm91bmRWaWV3OwogICAgIFJldGFpblB0cjxVSUxvbmdQcmVzc0dlc3R1cmVSZWNvZ25p
emVyPiBfdG91Y2hHZXN0dXJlUmVjb2duaXplcjsKICAgICBSZXRhaW5QdHI8VUlCdXR0b24+IF9j
YW5jZWxCdXR0b247CisgICAgUmV0YWluUHRyPFVJQnV0dG9uPiBfbG9jYXRpb25CdXR0b247CiAg
ICAgUmV0YWluUHRyPFVJVmlzdWFsRWZmZWN0Vmlldz4gX3Zpc3VhbEVmZmVjdFZpZXc7CiB9CiAK
QEAgLTEyOSw3ICsxNDQsMTcgQEAgLSAodm9pZClkZWFsbG9jCiAtICh2b2lkKXZpZXdXaWxsVHJh
bnNpdGlvblRvU2l6ZTooQ0dTaXplKXNpemUgd2l0aFRyYW5zaXRpb25Db29yZGluYXRvcjooaWQ8
VUlWaWV3Q29udHJvbGxlclRyYW5zaXRpb25Db29yZGluYXRvcj4pY29vcmRpbmF0b3IKIHsKICAg
ICBbc3VwZXIgdmlld1dpbGxUcmFuc2l0aW9uVG9TaXplOnNpemUgd2l0aFRyYW5zaXRpb25Db29y
ZGluYXRvcjpjb29yZGluYXRvcl07Ci0gICAgWyhXS1dlYlZpZXcgKilbc2VsZiBjb250ZW50Vmll
d10gX292ZXJyaWRlTGF5b3V0UGFyYW1ldGVyc1dpdGhNaW5pbXVtTGF5b3V0U2l6ZTpzaXplIG1h
eGltdW1Vbm9ic2N1cmVkU2l6ZU92ZXJyaWRlOnNpemVdOworICAgIFtjb29yZGluYXRvciBhbmlt
YXRlQWxvbmdzaWRlVHJhbnNpdGlvbjogXihpZDxVSVZpZXdDb250cm9sbGVyVHJhbnNpdGlvbkNv
b3JkaW5hdG9yQ29udGV4dD4gY29udGV4dCkgeworCisgICAgICAgIHZvaWQgKF53ZWJWaWV3VXBk
YXRlQmxvY2spKCkgPSBeeworICAgICAgICAgICAgWyhXS1dlYlZpZXcgKilbc2VsZiBjb250ZW50
Vmlld10gX292ZXJyaWRlTGF5b3V0UGFyYW1ldGVyc1dpdGhNaW5pbXVtTGF5b3V0U2l6ZTpzaXpl
IG1heGltdW1Vbm9ic2N1cmVkU2l6ZU92ZXJyaWRlOnNpemVdOworICAgICAgICB9OworCisgICAg
ICAgIFsoV0tXZWJWaWV3ICopW3NlbGYgY29udGVudFZpZXddIF9iZWdpbkFuaW1hdGVkUmVzaXpl
V2l0aFVwZGF0ZXM6d2ViVmlld1VwZGF0ZUJsb2NrXTsKKyAgICAgICAgWyhXS1dlYlZpZXcgKilb
c2VsZiBjb250ZW50Vmlld10gX3NldEludGVyZmFjZU9yaWVudGF0aW9uT3ZlcnJpZGU6W1VJQXBw
IHN0YXR1c0Jhck9yaWVudGF0aW9uXV07CisgICAgfSBjb21wbGV0aW9uOl4oaWQgPFVJVmlld0Nv
bnRyb2xsZXJUcmFuc2l0aW9uQ29vcmRpbmF0b3JDb250ZXh0PmNvbnRleHQpIHsKKyAgICAgICAg
WyhXS1dlYlZpZXcgKilbc2VsZiBjb250ZW50Vmlld10gX2VuZEFuaW1hdGVkUmVzaXplXTsKKyAg
ICB9XTsKIH0KIAogKyAodm9pZCljb25maWd1cmVWaWV3OihVSVZpZXcgKil2aWV3IHdpdGhCYWNr
Z3JvdW5kRmlsbE9mQ29sb3I6KFVJQ29sb3IgKilmaWxsQ29sb3Igb3BhY2l0eTooQ0dGbG9hdClv
cGFjaXR5IGZpbHRlcjooTlNTdHJpbmcgKilmaWx0ZXIKQEAgLTE1OSw5ICsxODQsNiBAQCAtICh2
b2lkKV91cGRhdGVUcmFuc3BhcmVuY3lPZlZpc3VhbEVmZmVjdFZpZXc6KFVJVmlzdWFsRWZmZWN0
VmlldyAqKXZpc3VhbEVmZmVjdAogLSAoVUlWaXN1YWxFZmZlY3RWaWV3ICopdmlzdWFsRWZmZWN0
Vmlld1dpdGhGcmFtZTooQ0dSZWN0KWZyYW1lCiB7CiAgICAgUmV0YWluUHRyPFVJVmlzdWFsRWZm
ZWN0Vmlldz4gdmlzdWFsRWZmZWN0VmlldyA9IGFkb3B0TlMoW1tVSVZpc3VhbEVmZmVjdFZpZXcg
YWxsb2NdIGluaXRXaXRoRWZmZWN0OltVSVZpc3VhbEVmZmVjdCBlbXB0eUVmZmVjdF1dKTsKLSAg
ICBbdmlzdWFsRWZmZWN0VmlldyBzZXRGcmFtZTpmcmFtZV07Ci0gICAgW3Zpc3VhbEVmZmVjdFZp
ZXcgX3NldENvbnRpbnVvdXNDb3JuZXJSYWRpdXM6KChDR1JlY3RHZXRIZWlnaHQoW3Zpc3VhbEVm
ZmVjdFZpZXcgYm91bmRzXSkgPiA0MC4wKSA/IDE2LjAgOiA4LjApXTsKLSAgICBbdmlzdWFsRWZm
ZWN0VmlldyBzZXRBdXRvcmVzaXppbmdNYXNrOihVSVZpZXdBdXRvcmVzaXppbmdGbGV4aWJsZVJp
Z2h0TWFyZ2luIHwgVUlWaWV3QXV0b3Jlc2l6aW5nRmxleGlibGVCb3R0b21NYXJnaW4pXTsKICAg
ICBbc2VsZiBfdXBkYXRlVHJhbnNwYXJlbmN5T2ZWaXN1YWxFZmZlY3RWaWV3OnZpc3VhbEVmZmVj
dFZpZXcuZ2V0KCldOwogCiAgICAgUmV0YWluUHRyPFVJVmlldz4gYmFja0xheWVyVGludFZpZXcg
PSBhZG9wdE5TKFtbVUlWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOlt2aXN1YWxFZmZlY3RWaWV3
IGJvdW5kc11dKTsKQEAgLTE4MSwzOSArMjAzLDEzMSBAQCAtIChVSVZpc3VhbEVmZmVjdFZpZXcg
Kil2aXN1YWxFZmZlY3RWaWV3V2l0aEZyYW1lOihDR1JlY3QpZnJhbWUKICAgICByZXR1cm4gdmlz
dWFsRWZmZWN0Vmlldy5hdXRvcmVsZWFzZSgpOwogfQogCi0tICh2b2lkKWxvYWRWaWV3CitzdGF0
aWMgVUlFZGdlSW5zZXRzIG1pcnJvckVkZ2VJbnNldHMoVUlFZGdlSW5zZXRzIGluc2V0cykKIHsK
LSAgICBbc2VsZiBzZXRWaWV3OmFkb3B0TlMoW1tVSVZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6
Q0dSZWN0TWFrZSgwLCAwLCAxMDAsIDEwMCldKS5nZXQoKV07Ci0gICAgW1tzZWxmIHZpZXddIHNl
dEF1dG9yZXNpemluZ01hc2s6KFVJVmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlV2lkdGggfCBVSVZp
ZXdBdXRvcmVzaXppbmdGbGV4aWJsZUhlaWdodCldOworICAgIHJldHVybiBVSUVkZ2VJbnNldHNN
YWtlKGluc2V0cy50b3AsIGluc2V0cy5yaWdodCwgaW5zZXRzLmJvdHRvbSwgaW5zZXRzLmxlZnQp
OworfQogCi0gICAgQ0dSZWN0IGRvbmVCdXR0b25SZWN0ID0gQ0dSZWN0TWFrZSgxMCwgMjAsIDYw
LCA0Nyk7Ci0gICAgCi0gICAgX3Zpc3VhbEVmZmVjdFZpZXcgPSBbc2VsZiB2aXN1YWxFZmZlY3RW
aWV3V2l0aEZyYW1lOmRvbmVCdXR0b25SZWN0XTsKLSAgICBbX3Zpc3VhbEVmZmVjdFZpZXcgc2V0
QWxwaGE6MF07CistICh2b2lkKV91cGRhdGVMYXlvdXRNYXJnaW5zCit7CisgICAgVUlWaWV3ICp2
aWV3ID0gW3NlbGYgdmlld107CisgICAgW3ZpZXcgc2V0UHJlc2VydmVzU3VwZXJ2aWV3TGF5b3V0
TWFyZ2luczpOT107CisKKyAgICBVSUVkZ2VJbnNldHMgdGFyZ2V0SW5zZXRzID0gW3ZpZXcgc2Fm
ZUFyZWFJbnNldHNdOworICAgIHRhcmdldEluc2V0cy50b3AgPSBzdGQ6Om1heCh0YXJnZXRJbnNl
dHMudG9wLCAyMC4wKTsKKyAgICBbdmlldyBzZXRMYXlvdXRNYXJnaW5zOnRhcmdldEluc2V0c107
Cit9CisKKy0gKHZvaWQpdmlld0RpZExheW91dFN1YnZpZXdzCit7CisgICAgW3NlbGYgX3VwZGF0
ZUxheW91dE1hcmdpbnNdOworfQorCistICAodm9pZClzZXRMb2NhdGlvbjooTlNTdHJpbmcgKils
b2NhdGlvbk5hbWUgc2VjdXJlOihCT09MKXNlY3VyZSB0cnVzdGVkTmFtZTooQk9PTCl0cnVzdGVk
TmFtZSB0cnVzdGVkU2l0ZTooQk9PTCl0cnVzdGVkU2l0ZQoreworICAgIFVJQ29sb3IgKmdyZWVu
VGludCA9IFtVSUNvbG9yIGNvbG9yV2l0aFJlZDoxMDAgLyAyNTUuMCBncmVlbjoxNzUgLyAyNTUu
MCBibHVlOjk5IC8gMjU1LjAgYWxwaGE6MS4wXTsKKyAgICBVSUNvbG9yICp3aGl0ZVRpbnQgPSBb
VUlDb2xvciB3aGl0ZUNvbG9yXTsKKworICAgIGZsb2F0IGhQYWRkaW5nID0gMTQ7CisgICAgTlNT
dHJpbmcgKmxvY2tJbWFnZU5hbWUgPSBAIkxvY2tNaW5pIjsKKworICAgIGZsb2F0IGxvY2tTcGFj
aW5nID0gc2VjdXJlID8gMTAgOiAwOworCisgICAgVUlFZGdlSW5zZXRzIGxvY2F0aW9uQ29udGVu
dEVkZ2VJbnNldHMgPSBVSUVkZ2VJbnNldHNNYWtlKDAsIGhQYWRkaW5nK2xvY2tTcGFjaW5nLCAw
LCBoUGFkZGluZyk7CisgICAgVUlFZGdlSW5zZXRzIGxvY2F0aW9uSW1hZ2VFZGdlSW5zZXRzID0g
VUlFZGdlSW5zZXRzTWFrZSgwLCAtbG9ja1NwYWNpbmcsIDAsIDApOworCisgICAgaWYgKFtVSVZp
ZXcgdXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbkZvclNlbWFudGljQ29udGVudEF0dHJpYnV0
ZTpbW3NlbGYgdmlld10gc2VtYW50aWNDb250ZW50QXR0cmlidXRlXV0gPT0gVUlVc2VySW50ZXJm
YWNlTGF5b3V0RGlyZWN0aW9uUmlnaHRUb0xlZnQpIHsKKyAgICAgICAgbG9jYXRpb25Db250ZW50
RWRnZUluc2V0cyA9IG1pcnJvckVkZ2VJbnNldHMobG9jYXRpb25Db250ZW50RWRnZUluc2V0cyk7
CisgICAgICAgIGxvY2F0aW9uSW1hZ2VFZGdlSW5zZXRzID0gbWlycm9yRWRnZUluc2V0cyhsb2Nh
dGlvbkltYWdlRWRnZUluc2V0cyk7CisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0Q29udGVu
dEhvcml6b250YWxBbGlnbm1lbnQ6VUlDb250cm9sQ29udGVudEhvcml6b250YWxBbGlnbm1lbnRS
aWdodF07CisgICAgfQorCisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRUaXRsZUNvbG9yOih0cnVz
dGVkTmFtZSA/IGdyZWVuVGludCA6IHdoaXRlVGludCkgZm9yU3RhdGU6VUlDb250cm9sU3RhdGVO
b3JtYWxdOworCisgICAgaWYgKHNlY3VyZSkgeworICAgICAgICBOU0J1bmRsZSAqYnVuZGxlID0g
W05TQnVuZGxlIGJ1bmRsZUZvckNsYXNzOltXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGNs
YXNzXV07CisgICAgICAgIFVJSW1hZ2UgKmxvY2tJbWFnZSA9IFtVSUltYWdlIGltYWdlTmFtZWQ6
bG9ja0ltYWdlTmFtZSBpbkJ1bmRsZTpidW5kbGUgY29tcGF0aWJsZVdpdGhUcmFpdENvbGxlY3Rp
b246bmlsXTsKKyAgICAgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRJbWFnZTpbbG9ja0ltYWdlIGlt
YWdlV2l0aFJlbmRlcmluZ01vZGU6VUlJbWFnZVJlbmRlcmluZ01vZGVBbHdheXNUZW1wbGF0ZV0g
Zm9yU3RhdGU6VUlDb250cm9sU3RhdGVOb3JtYWxdOworICAgICAgICBbW19sb2NhdGlvbkJ1dHRv
biBpbWFnZVZpZXddIHNldFRpbnRDb2xvcjp0cnVzdGVkU2l0ZSA/IGdyZWVuVGludCA6IHdoaXRl
VGludF07CisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0VGludENvbG9yOnRydXN0ZWRTaXRl
ID8gZ3JlZW5UaW50IDogd2hpdGVUaW50XTsKKyAgICB9IGVsc2UKKyAgICAgICAgW19sb2NhdGlv
bkJ1dHRvbiBzZXRJbWFnZTpuaWwgZm9yU3RhdGU6VUlDb250cm9sU3RhdGVOb3JtYWxdOworCisg
ICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRDb250ZW50RWRnZUluc2V0czpsb2NhdGlvbkNvbnRlbnRF
ZGdlSW5zZXRzXTsKKyAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEltYWdlRWRnZUluc2V0czpsb2Nh
dGlvbkltYWdlRWRnZUluc2V0c107CisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRUaXRsZTpsb2Nh
dGlvbk5hbWUgZm9yU3RhdGU6VUlDb250cm9sU3RhdGVOb3JtYWxdOworICAgIFtbX2xvY2F0aW9u
QnV0dG9uIHRpdGxlTGFiZWxdIHNldExpbmVCcmVha01vZGU6TlNMaW5lQnJlYWtCeVRydW5jYXRp
bmdUYWlsXTsKKyAgICBbW19sb2NhdGlvbkJ1dHRvbiB0aXRsZUxhYmVsXSBzZXRBZGp1c3RzRm9u
dFNpemVUb0ZpdFdpZHRoOk5PXTsKK30KKworLSAodm9pZCljcmVhdGVTdWJ2aWV3cworeworICAg
IF92aXN1YWxFZmZlY3RWaWV3ID0gW3NlbGYgdmlzdWFsRWZmZWN0Vmlld1dpdGhGcmFtZTpDR1Jl
Y3RNYWtlKDAsIDAsIDIwLCAyMCldOworCisgICAgW192aXN1YWxFZmZlY3RWaWV3IHNldFRyYW5z
bGF0ZXNBdXRvcmVzaXppbmdNYXNrSW50b0NvbnN0cmFpbnRzOk5PXTsKICAgICBbW3NlbGYgdmll
d10gYWRkU3VidmlldzpfdmlzdWFsRWZmZWN0Vmlldy5nZXQoKV07CiAKICAgICBfY2FuY2VsQnV0
dG9uID0gW1VJQnV0dG9uIGJ1dHRvbldpdGhUeXBlOlVJQnV0dG9uVHlwZVN5c3RlbV07Ci0gICAg
W19jYW5jZWxCdXR0b24gc2V0QXV0b3Jlc2l6aW5nTWFzazooVUlWaWV3QXV0b3Jlc2l6aW5nRmxl
eGlibGVSaWdodE1hcmdpbiB8IFVJVmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlQm90dG9tTWFyZ2lu
KV07Ci0gICAgW19jYW5jZWxCdXR0b24gc2V0RnJhbWU6ZG9uZUJ1dHRvblJlY3RdOwotICAgIFtf
Y2FuY2VsQnV0dG9uIGFkZFRhcmdldDpzZWxmIGFjdGlvbjpAc2VsZWN0b3IoY2FuY2VsQWN0aW9u
OikgZm9yQ29udHJvbEV2ZW50czpVSUNvbnRyb2xFdmVudFRvdWNoVXBJbnNpZGVdOworICAgIFtf
Y2FuY2VsQnV0dG9uIHNldFRyYW5zbGF0ZXNBdXRvcmVzaXppbmdNYXNrSW50b0NvbnN0cmFpbnRz
Ok5PXTsKICAgICBbX2NhbmNlbEJ1dHRvbiBzZXRBZGp1c3RzSW1hZ2VXaGVuSGlnaGxpZ2h0ZWQ6
Tk9dOwogICAgIFtfY2FuY2VsQnV0dG9uIHNldEJhY2tncm91bmRDb2xvcjogW1VJQ29sb3IgYmxh
Y2tDb2xvcl1dOwotICAgIFtbX2NhbmNlbEJ1dHRvbiBsYXllcl0gc2V0Q29ybmVyUmFkaXVzOjZd
OwotICAgIFtfY2FuY2VsQnV0dG9uIHNldEFscGhhOjBdOwotICAgIE5TQnVuZGxlICpidW5kbGUg
PSBbTlNCdW5kbGUgYnVuZGxlRm9yQ2xhc3M6W1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXIg
Y2xhc3NdXTsKLSAgICBSZXRhaW5QdHI8VUlJbWFnZT4gaW1hZ2UgPSBbVUlJbWFnZSBpbWFnZU5h
bWVkOkAiRG9uZSIgaW5CdW5kbGU6YnVuZGxlIGNvbXBhdGlibGVXaXRoVHJhaXRDb2xsZWN0aW9u
Om5pbF07Ci0gICAgW19jYW5jZWxCdXR0b24gc2V0SW1hZ2U6W2ltYWdlIGltYWdlV2l0aFJlbmRl
cmluZ01vZGU6VUlJbWFnZVJlbmRlcmluZ01vZGVBbHdheXNUZW1wbGF0ZV0gZm9yU3RhdGU6VUlD
b250cm9sU3RhdGVOb3JtYWxdOwotCi0gICAgW19jYW5jZWxCdXR0b24gc2V0VGludENvbG9yOltV
SUNvbG9yIGNvbG9yV2l0aFdoaXRlOjEuMCBhbHBoYTowLjU1XV07CiAgICAgW1tfY2FuY2VsQnV0
dG9uIGxheWVyXSBzZXRDb21wb3NpdGluZ0ZpbHRlcjpbQ0FGaWx0ZXIgZmlsdGVyV2l0aFR5cGU6
a0NBRmlsdGVyUGx1c0xdXTsKKyAgICBbX2NhbmNlbEJ1dHRvbiBzZXRUaXRsZTpXRUJfVUlfU1RS
SU5HKCJEb25lIiwgIlRleHQgb2YgYnV0dG9uIHRoYXQgZXhpdHMgZWxlbWVudCBmdWxsc2NyZWVu
LiIpIGZvclN0YXRlOlVJQ29udHJvbFN0YXRlTm9ybWFsXTsKKyAgICBbX2NhbmNlbEJ1dHRvbiBz
ZXRUaW50Q29sb3I6W1VJQ29sb3Igd2hpdGVDb2xvcl1dOworICAgIFtfY2FuY2VsQnV0dG9uIGFk
ZFRhcmdldDpzZWxmIGFjdGlvbjpAc2VsZWN0b3IoY2FuY2VsQWN0aW9uOikgZm9yQ29udHJvbEV2
ZW50czpVSUNvbnRyb2xFdmVudFRvdWNoVXBJbnNpZGVdOwogCiAgICAgW1tzZWxmIHZpZXddIGFk
ZFN1YnZpZXc6X2NhbmNlbEJ1dHRvbi5nZXQoKV07CiAKKyAgICBfbG9jYXRpb25CdXR0b24gPSBb
VUlCdXR0b24gYnV0dG9uV2l0aFR5cGU6VUlCdXR0b25UeXBlU3lzdGVtXTsKKyAgICBbX2xvY2F0
aW9uQnV0dG9uIHNldFRyYW5zbGF0ZXNBdXRvcmVzaXppbmdNYXNrSW50b0NvbnN0cmFpbnRzOk5P
XTsKKyAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEFkanVzdHNJbWFnZVdoZW5IaWdobGlnaHRlZDpO
T107CisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRCYWNrZ3JvdW5kQ29sb3I6W1VJQ29sb3IgYmxh
Y2tDb2xvcl1dOworICAgIFtbX2xvY2F0aW9uQnV0dG9uIGxheWVyXSBzZXRDb21wb3NpdGluZ0Zp
bHRlcjpbQ0FGaWx0ZXIgZmlsdGVyV2l0aFR5cGU6a0NBRmlsdGVyUGx1c0xdXTsKKyAgICBbW3Nl
bGYgdmlld10gYWRkU3VidmlldzpfbG9jYXRpb25CdXR0b24uZ2V0KCldOworCisgICAgVUlMYXlv
dXRHdWlkZSogY29udGFpbmVyR3VpZGUgPSBbW3NlbGYgdmlld10gbGF5b3V0TWFyZ2luc0d1aWRl
XTsKKworICAgIFtbW192aXN1YWxFZmZlY3RWaWV3IGxlZnRBbmNob3JdIGNvbnN0cmFpbnRFcXVh
bFRvQW5jaG9yOltbc2VsZiB2aWV3XSBsZWZ0QW5jaG9yXV0gc2V0QWN0aXZlOllFU107CisgICAg
W1tbX3Zpc3VhbEVmZmVjdFZpZXcgcmlnaHRBbmNob3JdIGNvbnN0cmFpbnRFcXVhbFRvQW5jaG9y
Oltbc2VsZiB2aWV3XSByaWdodEFuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworICAgIFtbW192aXN1
YWxFZmZlY3RWaWV3IHRvcEFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W1tzZWxmIHZp
ZXddIHRvcEFuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworICAgIFtbW192aXN1YWxFZmZlY3RWaWV3
IGhlaWdodEFuY2hvcl0gY29uc3RyYWludEdyZWF0ZXJUaGFuT3JFcXVhbFRvQ29uc3RhbnQ6MjBd
IHNldEFjdGl2ZTpZRVNdOworCisgICAgTlNMYXlvdXRDb25zdHJhaW50ICpib3R0b20gPSBbW192
aXN1YWxFZmZlY3RWaWV3IGJvdHRvbUFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W2Nv
bnRhaW5lckd1aWRlIHRvcEFuY2hvcl1dOworICAgIFtib3R0b20gc2V0UHJpb3JpdHk6VUlMYXlv
dXRQcmlvcml0eVJlcXVpcmVkIC0gMV07CisgICAgW2JvdHRvbSBzZXRBY3RpdmU6WUVTXTsKKwor
ICAgIFtbW19jYW5jZWxCdXR0b24gbGVhZGluZ0FuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNo
b3I6W2NvbnRhaW5lckd1aWRlIGxlYWRpbmdBbmNob3JdXSBzZXRBY3RpdmU6WUVTXTsKKyAgICBb
W1tfY2FuY2VsQnV0dG9uIHRvcEFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W1tzZWxm
IHZpZXddIHRvcEFuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworICAgIFtbW19jYW5jZWxCdXR0b24g
Ym90dG9tQW5jaG9yXSBjb25zdHJhaW50RXF1YWxUb0FuY2hvcjpbX3Zpc3VhbEVmZmVjdFZpZXcg
Ym90dG9tQW5jaG9yXV0gc2V0QWN0aXZlOllFU107CisKKyAgICBbW1tfbG9jYXRpb25CdXR0b24g
aGVpZ2h0QW5jaG9yXSBjb25zdHJhaW50RXF1YWxUb0NvbnN0YW50OjIwXSBzZXRBY3RpdmU6WUVT
XTsKKyAgICBbW1tfbG9jYXRpb25CdXR0b24gYm90dG9tQW5jaG9yXSBjb25zdHJhaW50RXF1YWxU
b0FuY2hvcjpbX3Zpc3VhbEVmZmVjdFZpZXcgYm90dG9tQW5jaG9yXV0gc2V0QWN0aXZlOllFU107
CisgICAgW1tbX2xvY2F0aW9uQnV0dG9uIGxlYWRpbmdBbmNob3JdIGNvbnN0cmFpbnRHcmVhdGVy
VGhhbk9yRXF1YWxUb0FuY2hvcjpbX2NhbmNlbEJ1dHRvbiB0cmFpbGluZ0FuY2hvcl1dIHNldEFj
dGl2ZTpZRVNdOworICAgIFtbW19sb2NhdGlvbkJ1dHRvbiB0cmFpbGluZ0FuY2hvcl0gY29uc3Ry
YWludExlc3NUaGFuT3JFcXVhbFRvQW5jaG9yOltbc2VsZiB2aWV3XSB0cmFpbGluZ0FuY2hvcl1d
IHNldEFjdGl2ZTpZRVNdOworICAgIE5TTGF5b3V0Q29uc3RyYWludCAqY2VudGVyaW5nQ29uc3Ry
YWludCA9IFtbX2xvY2F0aW9uQnV0dG9uIGNlbnRlclhBbmNob3JdIGNvbnN0cmFpbnRFcXVhbFRv
QW5jaG9yOltbc2VsZiB2aWV3XSBjZW50ZXJYQW5jaG9yXV07CisgICAgW2NlbnRlcmluZ0NvbnN0
cmFpbnQgc2V0UHJpb3JpdHk6VUlMYXlvdXRQcmlvcml0eURlZmF1bHRMb3ddOworICAgIFtjZW50
ZXJpbmdDb25zdHJhaW50IHNldEFjdGl2ZTpZRVNdOworCisgICAgW192aXN1YWxFZmZlY3RWaWV3
IHNldEFscGhhOjBdOworICAgIFtfY2FuY2VsQnV0dG9uIHNldEFscGhhOjBdOworICAgIFtfbG9j
YXRpb25CdXR0b24gc2V0QWxwaGE6MF07CisKKyAgICBbX3Zpc3VhbEVmZmVjdFZpZXcgc2V0SGlk
ZGVuOllFU107CisgICAgW19jYW5jZWxCdXR0b24gc2V0SGlkZGVuOllFU107CisgICAgW19sb2Nh
dGlvbkJ1dHRvbiBzZXRIaWRkZW46WUVTXTsKK30KKworLSAodm9pZClsb2FkVmlldworeworICAg
IFtzZWxmIHNldFZpZXc6YWRvcHROUyhbW1VJVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpDR1Jl
Y3RNYWtlKDAsIDAsIDEwMCwgMTAwKV0pLmdldCgpXTsKKyAgICBbW3NlbGYgdmlld10gc2V0QXV0
b3Jlc2l6aW5nTWFzazooVUlWaWV3QXV0b3Jlc2l6aW5nRmxleGlibGVXaWR0aCB8IFVJVmlld0F1
dG9yZXNpemluZ0ZsZXhpYmxlSGVpZ2h0KV07CisKICAgICBfdG91Y2hHZXN0dXJlUmVjb2duaXpl
ciA9IGFkb3B0TlMoW1tVSUxvbmdQcmVzc0dlc3R1cmVSZWNvZ25pemVyIGFsbG9jXSBpbml0V2l0
aFRhcmdldDpzZWxmIGFjdGlvbjpAc2VsZWN0b3Ioc2hvd0NhbmNlbEJ1dHRvbjopXSk7CiAgICAg
W190b3VjaEdlc3R1cmVSZWNvZ25pemVyIHNldERlbGVnYXRlOnNlbGZdOwogICAgIFtfdG91Y2hH
ZXN0dXJlUmVjb2duaXplciBzZXRDYW5jZWxzVG91Y2hlc0luVmlldzpOT107CiAgICAgW190b3Vj
aEdlc3R1cmVSZWNvZ25pemVyIHNldE1pbmltdW1QcmVzc0R1cmF0aW9uOjBdOwogICAgIFtbc2Vs
ZiB2aWV3XSBhZGRHZXN0dXJlUmVjb2duaXplcjpfdG91Y2hHZXN0dXJlUmVjb2duaXplci5nZXQo
KV07CisgICAgW3NlbGYgY3JlYXRlU3Vidmlld3NdOwogfQogCiAtICh2b2lkKXZpZXdXaWxsQXBw
ZWFyOihCT09MKWFuaW1hdGVkCkBAIC0yMjMsNiArMzM3LDExIEBAIC0gKHZvaWQpdmlld1dpbGxB
cHBlYXI6KEJPT0wpYW5pbWF0ZWQKICAgICBbW3NlbGYgdmlld10gaW5zZXJ0U3Vidmlldzpbc2Vs
ZiBjb250ZW50Vmlld10gYXRJbmRleDowXTsKIH0KIAorLSAodm9pZCl2aWV3RGlkQXBwZWFyOihC
T09MKWFuaW1hdGVkCit7CisgICAgW3NlbGYgX3VwZGF0ZUxheW91dE1hcmdpbnNdOworfQorCiAt
ICh2b2lkKWNhbmNlbEFjdGlvbjooaWQpc2VuZGVyCiB7CiAgICAgW1tzZWxmIHRhcmdldF0gcGVy
Zm9ybVNlbGVjdG9yOltzZWxmIGFjdGlvbl1dOwpAQCAtMjMxLDEyICszNTAsMTQgQEAgLSAodm9p
ZCljYW5jZWxBY3Rpb246KGlkKXNlbmRlcgogLSAodm9pZCloaWRlQ2FuY2VsQnV0dG9uCiB7CiAg
ICAgW05TT2JqZWN0IGNhbmNlbFByZXZpb3VzUGVyZm9ybVJlcXVlc3RzV2l0aFRhcmdldDpzZWxm
IHNlbGVjdG9yOkBzZWxlY3RvcihoaWRlQ2FuY2VsQnV0dG9uKSBvYmplY3Q6bmlsXTsKLSAgICBb
VUlWaWV3IGFuaW1hdGVXaXRoRHVyYXRpb246MC4yIGFuaW1hdGlvbnM6XnsKKyAgICBbVUlWaWV3
IGFuaW1hdGVXaXRoRHVyYXRpb246c2hvd0hpZGVBbmltYXRpb25EdXJhdGlvbiBhbmltYXRpb25z
Ol57CiAgICAgICAgIFtfdmlzdWFsRWZmZWN0VmlldyBzZXRBbHBoYTowXTsKICAgICAgICAgW19j
YW5jZWxCdXR0b24gc2V0QWxwaGE6MF07CisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0QWxw
aGE6MF07CiAgICAgfSBjb21wbGV0aW9uOl4oQk9PTCBmaW5pc2hlZCl7CiAgICAgICAgIGlmIChm
aW5pc2hlZCkgewogICAgICAgICAgICAgW19jYW5jZWxCdXR0b24gc2V0SGlkZGVuOllFU107Cisg
ICAgICAgICAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEhpZGRlbjpZRVNdOwogICAgICAgICAgICAg
W192aXN1YWxFZmZlY3RWaWV3IHNldEhpZGRlbjpZRVNdOwogICAgICAgICB9CiAgICAgfV07CkBA
IC0yNDUsMTIgKzM2NiwxNCBAQCAtICh2b2lkKWhpZGVDYW5jZWxCdXR0b24KIC0gKHZvaWQpc2hv
d0NhbmNlbEJ1dHRvbjooaWQpc2VuZGVyCiB7CiAgICAgW05TT2JqZWN0IGNhbmNlbFByZXZpb3Vz
UGVyZm9ybVJlcXVlc3RzV2l0aFRhcmdldDpzZWxmIHNlbGVjdG9yOkBzZWxlY3RvcihoaWRlQ2Fu
Y2VsQnV0dG9uKSBvYmplY3Q6bmlsXTsKLSAgICBbc2VsZiBwZXJmb3JtU2VsZWN0b3I6QHNlbGVj
dG9yKGhpZGVDYW5jZWxCdXR0b24pIHdpdGhPYmplY3Q6bmlsIGFmdGVyRGVsYXk6My4wXTsKLSAg
ICBbVUlWaWV3IGFuaW1hdGVXaXRoRHVyYXRpb246MC4yIGFuaW1hdGlvbnM6IF57CisgICAgW3Nl
bGYgcGVyZm9ybVNlbGVjdG9yOkBzZWxlY3RvcihoaWRlQ2FuY2VsQnV0dG9uKSB3aXRoT2JqZWN0
Om5pbCBhZnRlckRlbGF5OmF1dG9IaWRlRGVsYXldOworICAgIFtVSVZpZXcgYW5pbWF0ZVdpdGhE
dXJhdGlvbjpzaG93SGlkZUFuaW1hdGlvbkR1cmF0aW9uIGFuaW1hdGlvbnM6IF57CiAgICAgICAg
IFtfdmlzdWFsRWZmZWN0VmlldyBzZXRIaWRkZW46Tk9dOwogICAgICAgICBbX2NhbmNlbEJ1dHRv
biBzZXRIaWRkZW46Tk9dOworICAgICAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEhpZGRlbjpOT107
CiAgICAgICAgIFtfdmlzdWFsRWZmZWN0VmlldyBzZXRBbHBoYToxXTsKICAgICAgICAgW19jYW5j
ZWxCdXR0b24gc2V0QWxwaGE6MV07CisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0QWxwaGE6
MV07CiAgICAgfV07CiB9CiAKQEAgLTI2MCwxMSArMzgzLDYgQEAgLSAodm9pZClzZXRUYXJnZXQ6
KGlkKXRhcmdldCBhY3Rpb246KFNFTClhY3Rpb24KICAgICBbc2VsZiBzZXRBY3Rpb246YWN0aW9u
XTsKIH0KIAotLSAoQk9PTClwcmVmZXJzU3RhdHVzQmFySGlkZGVuCi17Ci0gICAgcmV0dXJuIFlF
UzsKLX0KLQogLy8gTUFSSyAtIFVJR2VzdHVyZVJlY29nbml6ZXJEZWxlZ2F0ZQogCiAtIChCT09M
KWdlc3R1cmVSZWNvZ25pemVyOihVSUdlc3R1cmVSZWNvZ25pemVyICopZ2VzdHVyZVJlY29nbml6
ZXIgc2hvdWxkUmVjb2duaXplU2ltdWx0YW5lb3VzbHlXaXRoR2VzdHVyZVJlY29nbml6ZXI6KFVJ
R2VzdHVyZVJlY29nbml6ZXIgKilvdGhlckdlc3R1cmVSZWNvZ25pemVyCkBAIC0yNzcsMTEgKzM5
NSwxOSBAQCBAZW5kCiBAaW50ZXJmYWNlIF9XS0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIg
OiBVSVZpZXdDb250cm9sbGVyCiBAZW5kCiAKLUBpbXBsZW1lbnRhdGlvbiBfV0tGdWxsc2NyZWVu
Um9vdFZpZXdDb250cm9sbGVyIDogVUlWaWV3Q29udHJvbGxlcgorQGltcGxlbWVudGF0aW9uIF9X
S0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIgeworICAgIEJPT0wgX3Nob3dzU3RhdHVzQmFy
OworfQorCistICh2b2lkKXNldFNob3dzU3RhdHVzQmFyOihCT09MKXZhbHVlCit7CisgICAgX3No
b3dzU3RhdHVzQmFyID0gdmFsdWU7CisgICAgW3NlbGYgc2V0TmVlZHNTdGF0dXNCYXJBcHBlYXJh
bmNlVXBkYXRlXTsKK30KIAogLSAoQk9PTClwcmVmZXJzU3RhdHVzQmFySGlkZGVuCiB7Ci0gICAg
cmV0dXJuIFlFUzsKKyAgICByZXR1cm4gIV9zaG93c1N0YXR1c0JhcjsKIH0KIAogQGVuZApAQCAt
MzU4LDYgKzQ4NCw3IEBAIEBpbXBsZW1lbnRhdGlvbiBXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9s
bGVyIHsKICAgICBXS1dlYlZpZXdTdGF0ZSBfdmlld1N0YXRlOwogCiAgICAgUmV0YWluUHRyPFVJ
V2luZG93PiBfd2luZG93OworICAgIFJldGFpblB0cjxfV0tGdWxsc2NyZWVuUm9vdFZpZXdDb250
cm9sbGVyPiBfcm9vdFZpZXdDb250cm9sbGVyOwogCiAgICAgUmVmUHRyPFdlYktpdDo6Vm9pZENh
bGxiYWNrPiBfcmVwYWludENhbGxiYWNrOwogICAgIFJldGFpblB0cjxVSVZpZXdDb250cm9sbGVy
PiBfdmlld0NvbnRyb2xsZXJGb3JQcmVzZW50YXRpb247CkBAIC0zNjUsNiArNDkyLDEwIEBAIEBp
bXBsZW1lbnRhdGlvbiBXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIHsKIAogICAgIENHUmVj
dCBfaW5pdGlhbEZyYW1lOwogICAgIENHUmVjdCBfZmluYWxGcmFtZTsKKworICAgIFJldGFpblB0
cjxOU1N0cmluZz4gX0VWT3JnYW5pemF0aW9uTmFtZTsKKyAgICBCT09MIF9FVk9yZ2FuaXphdGlv
bk5hbWVJc1ZhbGlkOworCiB9CiAKICNwcmFnbWEgbWFyayAtCkBAIC00MDQsMTYgKzUzNSwxMDAg
QEAgLSAoV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcgKil3ZWJWaWV3UGxhY2Vob2xk
ZXIKICNwcmFnbWEgbWFyayAtCiAjcHJhZ21hIG1hcmsgRXhwb3NlZCBJbnRlcmZhY2UKIAorLSAo
dm9pZClfaW52YWxpZGF0ZUVWT3JnYW5pemF0aW9uTmFtZQoreworICAgIF9FVk9yZ2FuaXphdGlv
bk5hbWUgPSBuaWw7CisgICAgX0VWT3JnYW5pemF0aW9uTmFtZUlzVmFsaWQgPSBOTzsKK30KKwor
LSAoQk9PTClpc1NlY3VyZQoreworICAgIHJldHVybiBfd2ViVmlldy5oYXNPbmx5U2VjdXJlQ29u
dGVudDsKK30KKworLSAoU2VjVHJ1c3RSZWYpX3NlcnZlclRydXN0Cit7CisgICAgcmV0dXJuIF93
ZWJWaWV3LnNlcnZlclRydXN0OworfQorCistIChOU1N0cmluZyAqKV9FVk9yZ2FuaXphdGlvbk5h
bWUKK3sKKyAgICBpZiAoIXNlbGYuaXNTZWN1cmUpCisgICAgICAgIHJldHVybiBuaWw7CisKKyAg
ICBpZiAoX0VWT3JnYW5pemF0aW9uTmFtZUlzVmFsaWQpCisgICAgICAgIHJldHVybiBfRVZPcmdh
bml6YXRpb25OYW1lLmdldCgpOworCisgICAgQVNTRVJUKCFfRVZPcmdhbml6YXRpb25OYW1lLmdl
dCgpKTsKKyAgICBfRVZPcmdhbml6YXRpb25OYW1lSXNWYWxpZCA9IFlFUzsKKworICAgIFNlY1Ry
dXN0UmVmIHRydXN0ID0gW3NlbGYgX3NlcnZlclRydXN0XTsKKyAgICBpZiAoIXRydXN0KQorICAg
ICAgICByZXR1cm4gbmlsOworCisgICAgTlNEaWN0aW9uYXJ5ICppbmZvRGljdGlvbmFyeSA9IFso
X19icmlkZ2UgTlNEaWN0aW9uYXJ5ICopU2VjVHJ1c3RDb3B5SW5mbyh0cnVzdCkgYXV0b3JlbGVh
c2VdOworICAgIC8vIElmIFNlY1RydXN0Q29weUluZm8gcmV0dXJuZWQgTlVMTCB0aGVuIGl0J3Mg
bGlrZWx5IHRoYXQgdGhlIFNlY1RydXN0UmVmIGhhcyBub3QgYmVlbiBldmFsdWF0ZWQKKyAgICAv
LyBhbmQgdGhlIG9ubHkgd2F5IHRvIGdldCB0aGUgaW5mb3JtYXRpb24gd2UgbmVlZCBpcyB0byBj
YWxsIFNlY1RydXN0RXZhbHVhdGUgb3Vyc2VsdmVzLgorICAgIGlmICghaW5mb0RpY3Rpb25hcnkp
IHsKKyAgICAgICAgT1NTdGF0dXMgZXJyID0gU2VjVHJ1c3RFdmFsdWF0ZSh0cnVzdCwgTlVMTCk7
CisgICAgICAgIGlmIChlcnIgPT0gbm9FcnIpCisgICAgICAgICAgICBpbmZvRGljdGlvbmFyeSA9
IFsoX19icmlkZ2UgTlNEaWN0aW9uYXJ5ICopU2VjVHJ1c3RDb3B5SW5mbyh0cnVzdCkgYXV0b3Jl
bGVhc2VdOworICAgICAgICBpZiAoIWluZm9EaWN0aW9uYXJ5KQorICAgICAgICAgICAgcmV0dXJu
IG5pbDsKKyAgICB9CisKKyAgICAvLyBNYWtlIHN1cmUgdGhhdCB0aGUgRVYgY2VydGlmaWNhdGUg
aXMgdmFsaWQgYWdhaW5zdCBvdXIgY2VydGlmaWNhdGUgY2hhaW4uCisgICAgaWQgaGFzRVYgPSBb
aW5mb0RpY3Rpb25hcnkgb2JqZWN0Rm9yS2V5OihfX2JyaWRnZSBOU1N0cmluZyAqKWtTZWNUcnVz
dEluZm9FeHRlbmRlZFZhbGlkYXRpb25LZXldOworICAgIGlmICghW2hhc0VWIGlzS2luZE9mQ2xh
c3M6W05TVmFsdWUgY2xhc3NdXSB8fCAhW2hhc0VWIGJvb2xWYWx1ZV0pCisgICAgICAgIHJldHVy
biBuaWw7CisKKyAgICAvLyBNYWtlIHN1cmUgdGhhdCB3ZSBjb3VsZCBjb250YWN0IHJldm9jYXRp
b24gc2VydmVyIGFuZCBpdCBpcyBzdGlsbCB2YWxpZC4KKyAgICBpZCBpc05vdFJldm9rZWQgPSBb
aW5mb0RpY3Rpb25hcnkgb2JqZWN0Rm9yS2V5OihfX2JyaWRnZSBOU1N0cmluZyAqKWtTZWNUcnVz
dEluZm9SZXZvY2F0aW9uS2V5XTsKKyAgICBpZiAoIVtpc05vdFJldm9rZWQgaXNLaW5kT2ZDbGFz
czpbTlNWYWx1ZSBjbGFzc11dIHx8ICFbaXNOb3RSZXZva2VkIGJvb2xWYWx1ZV0pCisgICAgICAg
IHJldHVybiBuaWw7CisKKyAgICBfRVZPcmdhbml6YXRpb25OYW1lID0gW2luZm9EaWN0aW9uYXJ5
IG9iamVjdEZvcktleTooX19icmlkZ2UgTlNTdHJpbmcgKilrU2VjVHJ1c3RJbmZvQ29tcGFueU5h
bWVLZXldOworICAgIHJldHVybiBfRVZPcmdhbml6YXRpb25OYW1lLmdldCgpOworfQorCistICh2
b2lkKXVwZGF0ZUxvY2F0aW9uSW5mbworeworICAgIE5TVVJMKiB1cmwgPSBfd2ViVmlldy5fY29t
bWl0dGVkVVJMOworCisgICAgTlNTdHJpbmcgKkVWT3JnYW5pemF0aW9uTmFtZSA9IFtzZWxmIF9F
Vk9yZ2FuaXphdGlvbk5hbWVdOworICAgIEJPT0wgc2hvd3NFVk9yZ2FuaXphdGlvbk5hbWUgPSBb
RVZPcmdhbml6YXRpb25OYW1lIGxlbmd0aF0gPiAwOworCisgICAgTlNTdHJpbmcgKmRvbWFpbiA9
IG5pbDsKKworICAgIGlmIChMaW5rUHJlc2VudGF0aW9uTGlicmFyeSgpKQorICAgICAgICBkb21h
aW4gPSBbdXJsIF9scF9zaW1wbGlmaWVkRGlzcGxheVN0cmluZ107CisgICAgZWxzZQorICAgICAg
ICBkb21haW4gPSB1c2VyVmlzaWJsZVN0cmluZyh1cmwpOworCisgICAgTlNTdHJpbmcgKnRleHQg
PSBuaWw7CisgICAgaWYgKFtbdXJsIHNjaGVtZV0gY2FzZUluc2Vuc2l0aXZlQ29tcGFyZTpAImRh
dGEiXSA9PSBOU09yZGVyZWRTYW1lKQorICAgICAgICB0ZXh0ID0gQCJkYXRhOiI7CisgICAgZWxz
ZSBpZiAoc2hvd3NFVk9yZ2FuaXphdGlvbk5hbWUpCisgICAgICAgIHRleHQgPSBFVk9yZ2FuaXph
dGlvbk5hbWU7CisgICAgZWxzZQorICAgICAgICB0ZXh0ID0gZG9tYWluOworCisgICAgW19mdWxs
c2NyZWVuVmlld0NvbnRyb2xsZXIgc2V0TG9jYXRpb246dGV4dCBzZWN1cmU6c2VsZi5pc1NlY3Vy
ZSB0cnVzdGVkTmFtZTpzaG93c0VWT3JnYW5pemF0aW9uTmFtZSB0cnVzdGVkU2l0ZTohIUVWT3Jn
YW5pemF0aW9uTmFtZV07Cit9CisKIC0gKHZvaWQpZW50ZXJGdWxsU2NyZWVuCiB7CiAgICAgaWYg
KFtzZWxmIGlzRnVsbFNjcmVlbl0pCiAgICAgICAgIHJldHVybjsKIAorICAgIFtzZWxmIF9pbnZh
bGlkYXRlRVZPcmdhbml6YXRpb25OYW1lXTsKKwogICAgIF9mdWxsU2NyZWVuU3RhdGUgPSBXYWl0
aW5nVG9FbnRlckZ1bGxTY3JlZW47CiAKICAgICBfd2luZG93ID0gYWRvcHROUyhbW1VJV2luZG93
IGFsbG9jXSBpbml0XSk7CiAgICAgW193aW5kb3cgc2V0QmFja2dyb3VuZENvbG9yOltVSUNvbG9y
IGNsZWFyQ29sb3JdXTsKLSAgICBbX3dpbmRvdyBzZXRSb290Vmlld0NvbnRyb2xsZXI6YWRvcHRO
UyhbW19XS0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIgYWxsb2NdIGluaXRdKS5nZXQoKV07
CisgICAgX3Jvb3RWaWV3Q29udHJvbGxlciA9IGFkb3B0TlMoW1tfV0tGdWxsc2NyZWVuUm9vdFZp
ZXdDb250cm9sbGVyIGFsbG9jXSBpbml0XSk7CisgICAgW193aW5kb3cgc2V0Um9vdFZpZXdDb250
cm9sbGVyOl9yb290Vmlld0NvbnRyb2xsZXIuZ2V0KCldOwogICAgIFtbX3dpbmRvdyByb290Vmll
d0NvbnRyb2xsZXJdIHNldFZpZXc6YWRvcHROUyhbW1VJVmlldyBhbGxvY10gaW5pdFdpdGhGcmFt
ZTpbX3dpbmRvdyBib3VuZHNdXSkuZ2V0KCldOwogICAgIFtbW193aW5kb3cgcm9vdFZpZXdDb250
cm9sbGVyXSB2aWV3XSBzZXRCYWNrZ3JvdW5kQ29sb3I6W1VJQ29sb3IgY2xlYXJDb2xvcl1dOwog
ICAgIFtbW193aW5kb3cgcm9vdFZpZXdDb250cm9sbGVyXSB2aWV3XSBzZXRBdXRvcmVzaXppbmdN
YXNrOihVSVZpZXdBdXRvcmVzaXppbmdGbGV4aWJsZVdpZHRoIHwgVUlWaWV3QXV0b3Jlc2l6aW5n
RmxleGlibGVIZWlnaHQpXTsKQEAgLTQyNiw2ICs2NDEsNyBAQCAtICh2b2lkKWVudGVyRnVsbFNj
cmVlbgogICAgIFtfZnVsbHNjcmVlblZpZXdDb250cm9sbGVyIHNldE1vZGFsUHJlc2VudGF0aW9u
U3R5bGU6VUlNb2RhbFByZXNlbnRhdGlvbkN1c3RvbV07CiAgICAgW19mdWxsc2NyZWVuVmlld0Nv
bnRyb2xsZXIgc2V0VGFyZ2V0OnNlbGYgYWN0aW9uOkBzZWxlY3RvcihyZXF1ZXN0RXhpdEZ1bGxT
Y3JlZW4pXTsKICAgICBbW19mdWxsc2NyZWVuVmlld0NvbnRyb2xsZXIgdmlld10gc2V0RnJhbWU6
W1tfdmlld0NvbnRyb2xsZXJGb3JQcmVzZW50YXRpb24gdmlld10gYm91bmRzXV07CisgICAgW3Nl
bGYgdXBkYXRlTG9jYXRpb25JbmZvXTsKIAogICAgIFtzZWxmIF9tYW5hZ2VyXS0+c2F2ZVNjcm9s
bFBvc2l0aW9uKCk7CiAKQEAgLTQ4OCwxMSArNzA0LDEzIEBAIC0gKHZvaWQpYmVnYW5FbnRlckZ1
bGxTY3JlZW5XaXRoSW5pdGlhbEZyYW1lOihDR1JlY3QpaW5pdGlhbEZyYW1lIGZpbmFsRnJhbWU6
KENHCiAKICAgICBbX3dpbmRvdyBzZXRXaW5kb3dMZXZlbDpVSVdpbmRvd0xldmVsTm9ybWFsXTsK
ICAgICBbX3dpbmRvdyBtYWtlS2V5QW5kVmlzaWJsZV07CisgICAgW19yb290Vmlld0NvbnRyb2xs
ZXIgc2V0U2hvd3NTdGF0dXNCYXI6WUVTXTsKIAogICAgIFtDQVRyYW5zYWN0aW9uIGNvbW1pdF07
CiAKICAgICBbX3ZpZXdDb250cm9sbGVyRm9yUHJlc2VudGF0aW9uIHByZXNlbnRWaWV3Q29udHJv
bGxlcjpfZnVsbHNjcmVlblZpZXdDb250cm9sbGVyLmdldCgpIGFuaW1hdGVkOllFUyBjb21wbGV0
aW9uOl57CiAgICAgICAgIFtzZWxmIGNvbXBsZXRlZEVudGVyRnVsbFNjcmVlbl07CisgICAgICAg
IFtfcm9vdFZpZXdDb250cm9sbGVyIHNldFNob3dzU3RhdHVzQmFyOk5PXTsKICAgICB9XTsKIH0K
IApAQCAtNTM1LDExICs3NTMsMTMgQEAgLSAodm9pZCliZWdhbkV4aXRGdWxsU2NyZWVuV2l0aElu
aXRpYWxGcmFtZTooQ0dSZWN0KWluaXRpYWxGcmFtZSBmaW5hbEZyYW1lOihDR1IKICAgICAKICAg
ICBbX3dlYlZpZXcgX3BhZ2VdLT5zZXRTdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzKHRydWUpOwog
CisgICAgW19yb290Vmlld0NvbnRyb2xsZXIgc2V0U2hvd3NTdGF0dXNCYXI6WUVTXTsKICAgICBb
X2Z1bGxzY3JlZW5WaWV3Q29udHJvbGxlciBkaXNtaXNzVmlld0NvbnRyb2xsZXJBbmltYXRlZDpZ
RVMgY29tcGxldGlvbjpeewogICAgICAgICBpZiAoIVtfd2ViVmlldyBfcGFnZV0pCiAgICAgICAg
ICAgICByZXR1cm47CiAKICAgICAgICAgW3NlbGYgY29tcGxldGVkRXhpdEZ1bGxTY3JlZW5dOwor
ICAgICAgICBbX3Jvb3RWaWV3Q29udHJvbGxlciBzZXRTaG93c1N0YXR1c0JhcjpOT107CiAgICAg
fV07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0RvbmUu
aW1hZ2VzZXQvQ29udGVudHMuanNvbiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0Rv
bmUuaW1hZ2VzZXQvQ29udGVudHMuanNvbgpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
ZDgwYmU0MmQyODBkNTNmMTNjYWRiYzE2NWQ4MTc5MmExNjZkOTBmMi4uMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fz
c2V0cy9Eb25lLmltYWdlc2V0L0NvbnRlbnRzLmpzb24KKysrIC9kZXYvbnVsbApAQCAtMSwxNSAr
MCwwIEBACi17Ci0gICJpbWFnZXMiIDogWwotICAgIHsKLSAgICAgICJpZGlvbSIgOiAidW5pdmVy
c2FsIiwKLSAgICAgICJmaWxlbmFtZSIgOiAiRG9uZS5wZGYiCi0gICAgfQotICBdLAotICAiaW5m
byIgOiB7Ci0gICAgInZlcnNpb24iIDogMSwKLSAgICAiYXV0aG9yIiA6ICJ4Y29kZSIKLSAgfSwK
LSAgInByb3BlcnRpZXMiIDogewotICAgICJ0ZW1wbGF0ZS1yZW5kZXJpbmctaW50ZW50IiA6ICJ0
ZW1wbGF0ZSIKLSAgfQotfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0RvbmUuaW1hZ2VzZXQvRG9uZS5wZGYgYi9T
b3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Eb25lLmltYWdlc2V0L0RvbmUucGRmCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1NzY5OWIyMjY4YTkyZmU4ODM1YTk3YWRiYzdiOTkx
Y2EwZTY4YjZlLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBi
aW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpsaXRlcmFsIDQxNzAKemNtYWkmY3ty
NWNgXk5gVTdfeVdsUVlJT2FaTmBqY2w2NVNKdFNQJUAjQEhGem0ja1VCJGV0KChtMUhmN0Zrfmtf
CnpDZk8/XyM9ZXNeYE9kV2JLSzFRKVVFays9dTZmUzlwWm5iQiUoPnJ4eXpZVk10NyhZQ0I7WClP
Nk0yPDltJCZ4ZAp6WkJxKmYwZnZJezcpUXsjYjZgbXdvVTVJdUp5QEN8OEc8RD45R3BGST92JHI5
KzdxWFMhe1RqbFVgMGljaG8/SVoKej9FPjxwITZobFU5KX5mOT88eVJhMTY8d2BQNGQkSF5vSEtJ
RyFkVyttPlRBOSg+RmdALUZLY1poO0tJNVk5YGh7CnpWekJGP2ZIdlhQakJOWXR1JSlgOFF5Izhj
eExwN0dUbVJAd1kkZnlKaUdDY01CaXhjfTcqUWhBaV84PTI0Y2RiIwp6ciE8VUhZYWttOEMpPiVF
MHJRPGtMKFlPTWk/dF9HM05pfENyOyV9b3o/SnFSRDFjNkJ5dGx0K15zP0xQaD93UykKejd5QTZZ
SXdoR1hgJFkwTm5mRnwhKkV7X24pdVQzTiNPSllzZ25aWkIrWCRRUlRqPkZPN2R1dkhSdDBhU004
NXBVCnomaTx9fXh2UzZ2Y0VOcDlKVnl9QSN7LVhZMSV+Sn1MSH1Yek0qM0pKQDgwZSo4WD9yRV89
VS1HLWg+cHdMYzFnZQp6PkJUeVF2VylUdi1fMnM/Pjk1OzhsVjR7c3UldGg1RDlyOUlLeiU+YXw2
MF9yczdseH1GR1A2U0ViUGdpbzhNSVMKeiRTc0QwUEFuYSklb1glV2prQHFjSlk4dilQYFllcF4o
Und7e2ttJHM5V0RJbUclRmY7SSYqKFhvKX1qdXZ6TjFeCnpiWUNAbzNUZjtBOE1pJl9zK1g1JChz
Pmk5I2JvQXtLeF80fmA5TTZZe35rU1ZBO2w0ZGJHNytkOE9uJVNQLSsjYQp6UGRFfXVlTXVja3ta
e0tzZXJgQ2hxKDBqMmA9PmszKWV7Vz1RRmxYfTJqMHNhaX1MYD57MTh4aFM1TH0mND1+aiQKejZr
fVkoKipLdDhAeEVZbENgRXVGRFlxcXY7KjZpR1AtcCNlbClnSjJZbFFPem5eVHJqKCpScTdCfmZe
MXl0fFBiCno4akF4e0VyO0BlZm5+cF5SYUIoOT50X3pSLSpXdFBDR3ZaZXElTEtma302Ylp4PjlU
am1RPSVlSjc5NSFueVVaWAp6dSRpfWdFKlRBUk1ValpJI0o3aDl6PnN4YmVANV4tYFNZQVdnSmBW
fmVjSCV5QSNiJDw4WFc4Km11KVYrcnFQVE4KenpeWmRGLTNZQEJGc2AhY3g2flZgc2dzOFpQSy0t
TShyWTZiZCMkRlVMc0p6NEx2fkFuMTYyVjF1VktJalBaT0ZECnpNNzlhWDsjfEdPO1VnVlFvM3V5
U1hqbntXVVhSKEAweVZlUFhuVmdCNzFHbjZvTnA9SFNkPDh7c3MxMlZyIVZCdQp6emFOfF5BZDM8
XzJtcTx+JCgjIWs7d0lDazc/bX5pTmJMalB0ZnpgZE1aJT1HdktleTwxOygzN29IejAmTVhUSEkK
enF6TyVBXk98PD8pRkFFP3NgVz1RQVktYCVWN0EyXyRTMXFwPi0wRntDOU1ucWRHbUJuJig9TDEw
RikhJHhecWU+CnorY3tjRm9yN21GZFgqTnlra1cqI2FjN0MkTSV2IzhfJiZDcWh5Z314VklIIyYr
O0pkSng3cUhqbG9AU2ZWNF45Rgp6N3NxYjs+WDZwVW5RdVk0THJVPHMpb0NFNkY2czcoM3FeYmoz
I1I+KF9TPHpzcWJHdWxfN3ZMdWNhMndzPTFLUWUKejI9YDQjbyN6V0JpQ2xtVUw5QEhaJVc2fU4w
cCVfU21DMGo7ZFBgdXk+SCRGYyRpMX1fazxNMDBPYG47Q25QVFZYCnpvanF1Pm9GcWkyV3B9Zn1A
TmVvT2soPW9xaUBUVFFBOUV7KHAzPnJrPEo4SEleQiF4ZmIjXmtkcT4qZylIcmUqYQp6VW4zcDxY
PlN5fW0tVSleQzFUcHhVXjt+e0psZWlHOyN7YW5mYGtueUpoKlF4X142QzlKeEBAazZOa04qSDZT
bm8KenNiOHJALS1jSEpwaWE+VngrP2s4MkZ7dFkhOVo9YkhURmVgQl84b297QDxve18/YXdYVCpx
YCYxZEp2KG5CIzVTCnpBdnQwXnh1ZkNFXnxYZio9c2gyUjVUTyFLVEN1QiNfKElAcmJSJUZ1Yyp1
RCt5NCFSVD1WPXwzZnpNU0cyTFRgegp6KmRVR2Y0TSNVWFo+YXhVcGwrQ3ErZCZLOW1EaCpkbjN6
S31sfGhtOStFQUwyUHpRI3ZXajQrbm04U19ANF9WVnkKemBgTTB9RzVEY1deeU42e25vLWRTWSlR
KTdaLXQmNUojKnR9SGNEUyV7Z2Z3ZjZAJXJDb2RAKTkhSDkhPEc9YnNsCnpjVzhVaWhYdyZKTHh4
Sl9gNH1gQ0l6RmxTYV45b29lKkl6V0xNNHxYT0dOfHMqcyoxUlNjRyokR0p8cCgxNntYPAp6M0Ik
MSFIUHIrWUtecGR4UEtnMiFZNGc9SDU/Q0d7ZGxoIytAIUFDNCFLaUhYb3VnYldKbVhRT2dmWXh6
YlUpPy0KendDQGh+JlNmMyROZn0hPGM8NlQ2QlRWMTMkMG92c081VGh6PzA0aERuPVc2Q3ppTTha
X0thPjJKdWxENCgpeWFgCnpHb00+Zjx4dllNU0x0RzQxP3ZFekklS1ojKDNzR1FaX1N3emotQGN4
ZFhIdHleXj4pclY3fWxKcXcpTUxiOzFkWgp6VzxhTWYpfDBvdmczZn1NKm14UEg4MX07MTh4Ukpl
UHhMJG1CSDg/IUVIRU9eWlZqcmBYej5aQENVYTstM1VWNj8KemlsbW9eVWVhPER1b099ZEJBIWZj
S1duNHVlJC1VaU8wUVRqM3YzTnhPO1haTklXNUdZY1kja2BieDBSXjtnenpWCnp2TEVWXjtoYHQ0
eShVbFpSQXJqITUhQ2BPMVdJWnEhXyhIJSNAbWFNM2xnMUQ9aDZab2RNTntHSzU1bnhTO0UjUQp6
Z0QtcjB7SSF6U3BrQkcmQ15XYjlhPDt9O2Q0b2NQbVU+MWBEJns2ODB+M3c4QG1hZHIwOCowX25w
QU9FRkpGMTQKel5kMDJVTm5Ye1NNfUZAciVQKkZuZVVFeiZKKzNNSGFKTUlVcmdAIXpueit1MGdX
JH1gcl4kUnxVVUp6UiEtRWFiCnp0Nk9rR289MWRhTE55X040S2V3T0cqMD47UXtySD9VbjcjYmVh
N3w3XjtDZ1crZjxzPV9AX0Y/XyYkIWwlJT82LQp6Xj9JUj5MWEskMUE7O1o1aUdueSU5PzlvRURi
cElVS2srcWN3ek1rUnpqRFglT1hJQTxZJSpeS1ohSXFtdVE2e0wKenFEN2h+ISFASGxnUGJ2aVhm
M3hsVnxvRUpCYiFhVnUhNSRoRkxxd0NnX09sMnZ4fHhzXjJFQ3A5fVg4TjZrKHJ+CnpuYl9zKG1V
U0ptT3AtOHtSaklKM0YhRTg9KTBRLW12QFM3TiUycVZVRCQwNlRyJih0bntPMHZyQGNYTj1EdEdJ
agp6V1hFTEpxM0AkfSRGUWZLQ0toeWAkdS1OQlo7YHtreWNWO2ZJQnFVZjhsOTw/cSFyaEcoUCol
RDxrSG5EUWFPcCkKelkwX1FAUTZPRjJucDY3RylVOzVle3tnYmBULSlfcnpxe0xfT2JXM2t2Nik9
TVQtSVU+Vm4qVX5WKkk4ZXJVeSkxCnolNGJWPThzOWYlSTlYeD9UTyVGRXYxTUo0aGJMYlk8JV5H
YypEVkNmWElQZEZiNS1rQmxRdmozMWFeZ1hWZXxANwp6ekVNUCQlfFREXik3OWFEZWU4NDdXMGhT
aWdtSFN8ME80bW5UNnY/SHJkPVhraHFgaV5uN05tXmQmUTVzY1Y4UTsKejxhMUF5dSNxNUdgP19X
SzhoPU9+SD1Fbih5Zl9keTw9eTFjRyg0eTx2eyQoKyVCc3pwczJTVXVsOXhRaU9KY0lSCnpuTzFU
b0BrJldXKGs1b2ZhVmJ5bnRZV2xjb1pedk1AN2pWdSR1MENBP1ZrNn1AWT14ZylYdT1KOSM5VGck
VCRzcAp6Mi1FO3hyZE1RPVZteTRuMylvbXNRKHFtJUZacz98KDR2PSVSYG5+JkpLYExwR194aD1q
PmwwNkYrYCF6eWtEaVUKelo7LURLUCNtTUtoSDkhbEFLJihfTyoxeCpPUGs5X3FnfUlFeS0pTF5k
VnFTR3hefGswbX0lTEIyRW1LfmV5cVU3CnplfmRGZyhBenpLXldDc14pY0V7byhEPFNSK35SaUd7
Q29FbzxvcGcmYWV7VGQ+OXNRX2pgMUhLVyFzTkYodlZOcQp6RFBGZ0o8d0ZKekJ2KGk2Q1FZQDdQ
UXxUUVpzRVFyMEBLMnVoaiopYEhDYVl1d1RpVmt3Wj5gblI5PH1ZZFR6Wk0KekkrMzR9a2RpOWAm
K3BGdiQwNTlZdEdxYFFme3JOX3dTKzRPNkQxb0Z4bG1OcTg7OEN7PDBDb0ItSEFHPEp4cHpACnpA
NygmUF5XezgyQEdqKHJETn51X15BUzV1VC1GPGRQV0grNWlIciU/al5waVg/WWx3SnckZVVjY0Qz
SCRCRVF5NAp6RkZMVWxNZjRZMmUwWmhuVl85RHtfTjhfJS1VYU0oZXJVTnZxYXpNP1l9N1NvcX1T
a3FMMjJ6KGA/OTZVN1MmZygKejI0aDY9RV5gKj1XQGs/NGc8OyNXQkY3SkQwI0BCJEZkZCZgS0k9
Z35DZTRrUzI0Mn03PyVXN3BBVUBpN3dDblQ5CnpvNUFQZkBKIVgzTmprPlZZVXBrOEMoOXlvPVc1
UHNNZkh7VytSSkczWWdidHY7JSh4fnJKZyh8VU1PK1k/OH0+ZAp6STIrMHZwRHtfQzRYOVlpZUJi
KEVwbDtNOXhROFo9dTk7cigxUDVQRGFORE43UTt+e0dHeTNDTFZJeWZTWFNTLSYKekY0I0kpWlE9
WSVCMXRuc15IRk88eWpQIW0/fHwkUiolWDxFeFRLYjY8SlZnOGQhTjNiMCooflM9KS1lZ1oyeyNA
CnpCM0N9UVp0KllPWEZmT043WmRuJk10Q280PEs8aGs3XztwRGtOd2R2QUlkbGM9bWQ8O2chRSh7
Pz5hODdiYSgmeQp6SSQ8THtxd0l+SEhZdUAtXldJJSNtUVQ+Q1lEPmdRWSYzViYqKDt1a1Jwa0Ah
R0spKSNNPjt+Jk5+fjYxeCN4YyUKej90VjIrRTNoakBURk03ejFgLXp7X3V+M2JSTnVkQ0pzOyNT
XkoyK2BJT0E1ZmNZRDAoUl8lZW5zVTZFKiQmcm4hCnpLPVE1cSV3dSUxMlhfYEZZNkpHSUp9UyV2
al9oXlE9ZClUVmJeNlFnKzMjV0okOCZeMWRTfnVHUlZ2ISsrWndSVgp6QyQ3Jnc3YFJGKnlKOzY2
UyY1UnxQdSh1allkaz44Q3k4cDVZc19qRVhfNSVyZ2trP0A+Jj9wQGd0VlVWaCZxdlAKekZFPi1X
MyRsV0ljOFBZRl9OSGEwP3p3Y08zbk5jemt2c2h4RT5rd3M2Rm9pLU9PTnduTWhhP2BIYlZFWmNk
X2ZPCnppOEokaFRZOU5rYVl7YmQ4TmFVajNjMSkkaiY2cHA/Znk7R1Iwe28kKGxSaXFVJDlFJFNF
QCNWVHJDdHo3NDNudQp6MGFGM2k1TiFEP2dvQFVgbkR9NHZfVzF1PG5oTUVZNmRzM3hDQUElRkpT
Z3g/MSRSb2UtdkFqI01lamN8cVJeZ2IKelhUMDRIc1EzNnVeWnowPjRFQSV6PjVGSkFTa0RNLTAp
e34pVXtWcVl1ej9yYS1QMGRUQUB1TDRAOVFiQFl1flY2CnpFeUhRR3ZyPHIpRUVFQW5MWiN0d0RC
S0pSNntnKChNKmctUjNpYUR+VkpXQGlfY2JYVTFCJWl6ZE9GfTspdV9uKwp6SnR3dHx6fXgpKHtv
a0dYeTVucD9sKlIlTWc4dHRIbVhWZipPTWA4fUtRKnxGRWFpeCk3dWZaZTI5PF9VSStROygKekk2
fDg4NmFMaG9QXnJIKTFkYEcpe2EyZ31qTUJeZXNsZ0YyTzFifmtwZllsUXVNMD4xNiRoc3IrPCh1
N09Vd1BPCnokLXNZRypWNyZDO0VaJHMtaz0qZl8qMmYwKGZ9RmFAZjNlaEp3UTF+RW12RFMjVmtM
QFk4MVBpIV4rOVhObFV7cAp6R0h8I1FPYlJRNyE5byEqbT5lOHhWfmFyfVdNUFYre35od2ZaWFRX
I1lrViZWVHZuUiQqOHhPYlBYcUtIUEpSPzwKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dl
YktpdC54Y2Fzc2V0cy9Mb2NrTWluaS5pbWFnZXNldC9Db250ZW50cy5qc29uIGIvU291cmNlL1dl
YktpdC9XZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvQ29udGVudHMuanNvbgpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5mODZkZGMxOGQzMTBmNDJmNTJmNjNiMzFlM2RmOTE2OGMxOTIzMTVjCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2Vz
ZXQvQ29udGVudHMuanNvbgpAQCAtMCwwICsxLDIyIEBACit7CisgICJpbWFnZXMiIDogWworICAg
IHsKKyAgICAgICJpZGlvbSIgOiAidW5pdmVyc2FsIiwKKyAgICAgICJzY2FsZSIgOiAiMXgiCisg
ICAgfSwKKyAgICB7CisgICAgICAiaWRpb20iIDogInVuaXZlcnNhbCIsCisgICAgICAiZmlsZW5h
bWUiIDogIk5hdmlnYXRpb25CYXJMb2NrTWluaUAyeC5wZGYiLAorICAgICAgInNjYWxlIiA6ICIy
eCIKKyAgICB9LAorICAgIHsKKyAgICAgICJpZGlvbSIgOiAidW5pdmVyc2FsIiwKKyAgICAgICJm
aWxlbmFtZSIgOiAiTmF2aWdhdGlvbkJhckxvY2tNaW5pQDN4LnBkZiIsCisgICAgICAic2NhbGUi
IDogIjN4IgorICAgIH0KKyAgXSwKKyAgImluZm8iIDogeworICAgICJ2ZXJzaW9uIiA6IDEsCisg
ICAgImF1dGhvciIgOiAieGNvZGUiCisgIH0KK30KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Mb2NrTWluaS5pbWFn
ZXNldC9OYXZpZ2F0aW9uQmFyTG9ja01pbmlAMngucGRmIGIvU291cmNlL1dlYktpdC9XZWJLaXQu
eGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvTmF2aWdhdGlvbkJhckxvY2tNaW5pQDJ4LnBkZgpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi40NmRhZWQxMzVlNDU1YWEzNmQzZDUxMGE4ZDI0YjcyNjFlZDFjOWM3CkdJVCBi
aW5hcnkgcGF0Y2gKbGl0ZXJhbCA1OTI2CnpjbWJ0WTJVSFZYdSU9MkNQIVNYbUFgKkhAWGFTTDRM
ZXRRdExqc3tnRm9YXlFOLXhxeDFPJWpzZkZLR0FmOzh6Owp6QXt8N1Veaj8yREApRkQ2e0xndmtv
d3EwMS1PUWJ4ZHVRZ2AkKDt8VnJLQlBONzhJY2JIcUNDJEY2VkRRe25YUyMKekRHQzRxUHpWUmc4
I2UkI25uKUwwajIlRD5DKDsyM3NufFBWa1o5YzEzNjRRM0ErMW8+TlB2dENyNWdyfmdnYUF1Cno1
anlMMSsjJnszem58eXhRej4rdVBadFVJZ2BFVW1CK3FyJFVPZCYlZTRVbkNJSmA/MlljYyVfZ34/
YENlbFJ7NAp6citPYDRqKilVakwxKjI9NjQ/Nm9zPzx7IVJwT303OzlMajhabEQ4NUwqeHFNb2Vg
KXBMQDBseUk4OHNlbmJCXyQKellkfHxKZD98JHRsaDt7cks0dkdkdXolUDB6REBNcFdiYyE3PH5H
c2wzdjlEKlV1RWgmPTImX0BzTGBneWRGUmZuCnpWWkBuNz9gQ3c9M1QoVFMxPylWbSpFS3R1JlF4
RlRYMFlYbENPdl59QCl+b0dmNmkpRGRRPm5SWnJvbWAjSEgzJQp6Jis/WUlVUk92YXUpKHJIVmZT
Z1JFZEw4RG82ZiF7KnApZWQ0RHk/PFc4T0JFbmNCdkUtcWctQHZVSS1zX31heU4KenBXRFczVD49
PTNnfmAoUGB9NjBPbCs+dDxvP05AU1NaMm5mUEEoNGtxbkEyRUF3PUlWbmdVQjU2VC1qVzchKkZh
Cno7ciF8PjxHdTthMTM0NHBFfjRVZFBMeyg9QSo2JVZaXzE5XzxVJl5LMFE0YERZQk93SlY2YiFR
dCRSX3VxcU9QWQp6Mi1NN3EhWUdrMCk7fE19eVRqKVRwQ3RUTUx8aHl7aGAkeTdUUHBSdVU2QkFH
RXg3SVhHYUJpRjBmX3Vhc305bCkKejwmTCZPeCZnJDAyb3pCKzd+SHJVMDFwTFItZnRxVT9jb1ky
Rk10VU1DamJpcnp6e1BeVDtoTXVmYDk1NFY2QE9FCnpEX3RaOFYxaz1VTmQ7Z0E1Sz1AcnEwcVhu
YTRSR0xrMD9icUZhWXgxdGMobW0kUGs4Ykt3NHFHa0VsMzwwVE1xKQp6eyQ/RjdgZXBxbTkze1ZO
e1U7b1Nlel5JfHU4XilmMGB1Syo2JV5WVGhne3FsdVIjZTAycX1FYE5CfDUxO0o/RGMKejBBVWJy
eHFrJSVDO2FYYDZwZUNze2t9cTdmUkcqPD8mOVZPJEEhPHo4fFJFSjAxVT0hUTN8TzZGbGN2Tlhm
KiZmCnphMz9xWGQtMER+Z0hNbEtrNlo3UG0/Kil0RGUxTHFwbGY3SkFZclhHIXRNSEtTQW1jbHF7
SU1HUTVeemFBJDVJbgp6R0t6JjE5JjZxT0RNbl5Ba253KXJTXkNKdHBlb0lWO1U/N3ZrezlBUHVo
SjF6YnV3VW8yTExgU18oKH5Kez5zZEUKejdrJmxyfENYQSsodT5SWVp5NW1wZ3c4RC1oSkB0dFJs
eDtVNSYlTDxORHE0fXF6K1chZT1pcDRrMzk4c007T0FlCnpISVNONT1oKj9rOVZRPE5LKENiUU1I
MX1Ad0xtU1ImfHBwdkJ+bGdvYjM2dnRkaTh8UkZtQHx0ZGFDPlA1Sk1ETwp6YlhxTTkrRGdpXlc2
X1FqPiYwVCo8RWJhRE1pVjNSNis8Sm8+OzZNazFYez1VTklxWjsyP0lzNTRDJlhGOCUpbiUKej14
RXZfeDxwNHZWQE95KFduKTdFLUIlKiZLZHpCWk5xTWY/UW50RyQ3LShIUiUzcjYmPXs5Jjg1WUct
IzxUeWg+CnpzWFFRbDwxUSFURVlVO1Z2Z1hVZXJ6OVZEbDZadGUhTkxxIzZ4bEQ+cjwtMG4/ZEgk
JVJrdUcqPUE2bDVHVX5xawp6VU5qQFJUNUNLTklGJURrbDRiZkJJQkE+WE1+MUE/USVmYjctUShg
LStrY2AtMEhSTl49JHotd2EqN2FFcm9YJXYKenV8LTVjezspfiVKKD8hIUsrLU9RITBWYXFPZTlI
IThzZ2N4cH52PkszdkQpc25gT0VPMnIlRW4jK3leJlVZZ2pRCnphX1I+bCM9d2BUTjZMZ2lCaiom
bV98OztUKW01WHhJbEZfcGtxT3FqeCtsX1lLMWNlU29HYUsyYFJFTHozOCQ0OAp6TE55RW95Qngt
OFNJVE9XXmE7d0gmJmJWQXlAMEkpMikwTkclRXpCPHZ4WWpFQ3AzTWY9QXcjUFMjZmVCJXlibXcK
elRZd3k4LWF+ej8zemdoVT1+ejI1a2IxQF84KzErV3E2a3VYX0Y0V2o0Vy1VYllNTnhNXn5vT0g+
MiRyTWVPRyVVCnp8Qzd2bSM/Nm9nZWVII1o2dX1YOClnZD42NEM0Zj9EVDR6QnJVRVhCYkNGJVhv
OTsrJj1XYXBaQTBudyRzWWNkQAp6a3x0MlJNJEYrTj5xRiRmWShmWDdZXiF+NVJ+LU0rRW1xaikr
eCNJTG0xKDVRbCVfbnA/JVhiUXRUaF4jJjNgIygKekJHez5jPXpKVSo8fChDVWtSWFZOLXx7Uj1w
b2xCK0lEakJIUD9lN081d1Z+dWstWiRyWWs4U3IwIW4lQ0ZybWtOCnoyVW1qckFmSGJweDkqOSVv
LXJsNFU0UGI8aWFIUH5NO1kzbjBVe2dedk0wWntMM2M0KnpBJW08bW9gT1ZrZEUxeQp6Kyo/c3pP
TTslYlN1ckF4RTx4XyM2WCl8d3khUSpVNnQkI3h1Mz95fSRqJEJfSnwrN0U1SXU4Mz1wVElVRjtP
NDwKej5AZE9Hej4haVo3SU5yXmohN2wyaSUtWkg+cW4+NUQ7Wj5IRG4ya3lGPmVzP2hnZl9fQiRz
Tz1DKzwtKEJ4bH1LCnpRaXdDO0FVdD1+RmBoa19zNmFWMmp3WUErVTVza3tvZithWVZPajlVbWwj
P3VQbHAqclBhekU4Zzl2cmR6KzxiJgp6MkFZZz47eD0/NUs/bkVwNUNnQkM4RklhbF5gSDx4bWxo
Kz9XTUNPPFg7UFp9aWcqfmxCRT4/fVQ3VVR+aXxnSVcKek9ReW11VmtJT012X3NMPWZ5PDMmciNM
c2ctdCYmcnVpdjk+YU45dW1VOUZgSVU8cUtJaC1HVzM8QkZwJkNVTHcrCnpkLVZ+MyEtKyRXail7
RHB7M1E2PzJUfD55PVAoUj1ENGxuY0RUMyRLZ0pKcGlZQWw/JDY2d2BLSVQmPn5jdjh4UAp6Xndi
Pksle1prd1lweTE/VSQ9JiRGQiE/MSElOD9aMFR3e28xWC08eis/QDA8YnJ4bFhrejExTEA4ckRZ
eWNQM3cKeiZPVWVQSCFPVHltMk0ySFFTdyohN2xJfj1CeVQ1QXctK1pDI1hCWX5DO0l8bjR+TFJI
bFB2QEB4aCQ+KnNERkVRCnpUdUckZUFsSU45bHY4U3VyN342aUt7YFpESVc7Pjg1c3BZakw/R15l
Nj5IVzh6RTIyQnM1bFFSa1h0UDYxP0Y5NAp6UXN+UmA/eVc0cFMkX1I5QC15ZlA2cTArP20kPXh4
IT9zWWZMeEJWJE89aGBnUyFTN0wlUmNJeWAyZSFxN3R5KCMKejdvOFlnOVVaJFpJYDxBY2pVNSQj
WD5XZXxvK3MmbSpNLStGaTlOfENpNytYKVAqV2NAS3RHVVA9diladjJSVSMkCnp6I1Q+JGpzXnNh
VnpCdkcma1N0M2gzTShiYW9BRjZSZkpGRnB+RH1JT1ZVZTtPc1B6QE9xWkdUblVZMFkjNGV9MAp6
cV8oSGRycH1BRG1mSU9xeSYqQjRISipRQzRvWFR7PihzTFdtUEpXczZfPjIkMy1yazNqdWxCNFRS
a3JgdzlVQ3kKeilfdVYmTENeI3VVdHdDST4hfD9LNUhifDljJldYZkM4TTJMb1M5bih0dXFQdVNw
Tnl8KiltRSN0PkpsQVdMNnpLCnoxRC1Rd2IqKFZJc0UwU2xJN2d+USFzX2p2JFc1N1A2VkIzemJo
UU12bkQoMnghfk5yV21Rfm50RVZiakQ5ajlvSwp6U2FvWjU9QCVvVDdiPTVLQl56KEZgUT49MDlx
Pl59TTtTKD9HbUo0PEBVUWFnM019KXA4U3htQThha0lSbF4hO0oKelpjMjREdit7MlpiKHBwKT53
WSNpX29sYyZWOFd3ciluNipydGFPWl9gY15lfG11OHAhaTFQP2NDTFFKI1J6dEhsCnpqUGM7RTQp
en43eDRiWV8qfVdNKE9+JlFSXntQKVRlPEl6ZW8yVUQxY01jVWI7fDYyRHokSjlnb3ZCSXxiaUFP
bwp6VjY9c29ZZ1dKaFh3dE90QD9xIUFwX3FBKENnLU5IVmQ7XlIkfEY4bjRjZDVVUk9gZTEjQ2F3
eG0zZXNiJWlIbXsKelVzZmRTQT1WdyVeSlQ4Zk05OVIqVCZWU15FJUYhSWhvMkNnY3BRI3g0e2dq
SjRqc1dyQnVITFJFS3VmPnNFYDx0CnokeHNQWG9Ge2NCWD4xXkRzSl9RMClOOD9FK1JzM3dhSUVN
TmEpVXlRK1UoKz8rYSpETShIRVI2LWooYFpjZkNBRwp6MVE1emZpY1F0M3YyREY9KDVNJiY0Ripx
QGM0KUttMFE5RF51WDNgb016U0hsUVEzQDJ2fmVgeG5LVDAlXkY/MHsKejR8S3NeQDBkb3xedllN
dD1gfSRTKD8/fTFwVjRuLTNwJWhSYVRYMG1jWChOdSp7KTJgb2ttPnZQJXhgbXZTYWJpCnpiQ3pU
JXV7IUsxVlpNY0xLNCNOd0E5KTs0a3t0WHh4Sk4wdSR0PVEzdHdpbWorQjZZTns+YE5PWW0yUipu
U3pJTAp6NHw4fSMzVkk1PD8xUmhxJWxqMDdAV0BnPUdaQVU3OGxndGY5RlN0d05CZTtfe1JgUTBK
QEp+e1pibWxNan57JX4Kens2alVHQk1vQHBoXm94dF58Jm4qbmZYej5eVzVDZE96TW5GJENkVyZf
TV5MRUhlI09jd3pWR0xMWFI4NykqTll5CnpMazNHc044akRARzs2NHVgbEVJXikqMFplSTxuRUIo
aC1BWG9eWGpBQDdJMitVMFEydFNHR1JhcVZQXlpkI1htRAp6K2wwb2MrM0JMdz5YPVBndkJQTEd5
THJ6YWg+b3czVXR6IzYzQ2p+a3s8amF0SShMSXRZd352VWp5eHdsJFVWUHwKekVtbXpDclhZO1dN
P1JISW5pYkQ+WmU/IyhSTnIyeUhHckdrdjgxKCt3VD4rcGUqVV5me2lPcVJBYiUtJERUcGFICnpi
Kl5UfndfLUtAYkw7MygtR3A7TUE3S259R25vdTRKPEkhbXdtbUohVnRNQ2dfP017e2pvOVZ2cksm
cEgwRSs7bgp6Um5eVVNFSG5nfipaTHZXZUwkKnoyPVd+QVEyYXdvTGQmYl5KRlRkYiR2K2YqRkJD
MG1pUjhUN0N5fUAreCVzdHEKenBLVSNaYG9AVE5xPGBUZSpHY0I/K2ZULWsjI3dgMzF8IzApaXJm
MllgYzVuY19OOEN4ejlKeC1jSXZraXlfPUYrCnpfUiZAWTh7ZDhMTnQkRyk9aU0hWm1YT1Y7Miok
QU13PXB0Ujx1a3FNQzhaX2Y5WU0pMiV7U2tuM3IxXj5qYGZwXgp6WSlkNH5yMk56VVlnUil+Vmde
fk9HYWd5MitfaGhQditpODg9dnNGMlh1OX04RXZmKGZxMWxucF8tPld8PzFSJkUKelg1eSRiaGlp
aGh6TmhBMnEhPDBpUGtQNy1Ydzc5aWVJIW9vUE9NZ0B2JC1mP3ljdmJFI1V9JiVMcEI5OUoxYjl6
CnpFVXsoYnd5fmo9aWJBSkoyUU9pYnF9VCMxcEd2dlA2MHtoS2pYc0RUXkxlJD95d01TeismM0xr
JE1meSZVUSRtewp6PTNVUkQ4ZTJxcih9cld1YSpDfF9gMTR4SCFAKnRXZEZ6RmxLMlE3Z1haZXhp
TVlYY0tLX14qOVJ5KGNuaXp+MncKelNXOyQ7dGZ3RXZAczx+LXYoNFBaVWh3d08/PnBZXytmZS1l
UiMrUz97QTwmVD89SjglVG5uUDZzSGd5VUx0NWl8Cno3V2BoYD8zV0pzS2JsPGQmbzF9PnY4TjV1
SHdrQ2Z6d3w5cHZZb1FKeVlLVVdLKDFtOWhOb0tOP1p2VVlAPkcrPQp6YSEwMXVCTGZXYldyPk5f
b2h1eU9uIVF5MXkhWENGNzFnVEF6cG9KPnp0YCoyRmkzVyFRPW56d3h5O1RqUXw9fHQKenlgeDtR
RFYxbz1ZMj1XRyNRSlRZT2RPISpHY1JXY3ktfXpzSWw3bilZIXI4RWY0PXBsJExlR0teQEdLJE91
NT1qCnp7TGMtZjZTfSgzLSZObyVJakoqfGplfikxYkZEZTgtJHVQLT0wfEcpeDVtaDc0YSluMGxO
WGVOJHtmYlpCaEd8Mgp6en1QQzVpSzE5U1oqcV95WFY9ZSloc0swNWpfISo9NlMyKXRDOF92fWtg
JkgpayRVO1AzS1FDIV5xfHFJaGIxdDcKej5ETj08VlJzeDxQd2w+PD09KDEwOW4+M0FuRzRZPith
MyphWiE3RysoJkE0MnJjUV55aThPPTZUJD9JRmF1T1EmCnpRdFZCTENmUCpFWGI7UFZtRDBFTG0/
YnxGRk5rWlFIUn1feVBfe1pGYGBvSmlibHMlbXZkTX58KC15LXttYzxuXwp6LVFyNj1ZRWxnb0Je
JWBuc0JsI3NRS0B2Qz9xWi0oMlpifmBQRjxONU1pNUl9WElefVRMOSN4N0N1UUt0aDQqYz8KenQ5
bjRyRSZBaXhXWGlERF4qUXgqWGxiNkVhTnZuYU1PaXdGVmNSRFdjMHQ0fGlIYXZhUSgrLTE+TjJG
UGNUIXheCno0IVhfWG4pY0U+bFJBWCkrTmZfSio1NmRFYiNrTXJfUGJQV14qPUJTWVFMQUZPNE1p
ej0hbyZ8ZmQhP05QeDheXwp6R1lLSHsrbj9VbDtmQVYzZWxfTzBAYVZqSz8pfEEhRz5GQzF0U2go
LW82WU1MbGxxfFJMI3E0MylwV0NCMSFVPE4Kekd0WTl+Vyg3OEY7dGJ2JHZmOz5PLUs8TSVPcF9s
XnJ9TlcwVmpnNU5Gfml8KzhCZFJmYEE0ek9NeVBwS2N5PmpsCno+YzNqcjQkQk9BR1diP3FqUFA+
LXNFPVloIXJRS2w1am9VX0dkYzVHb3smWnw4SV4/OW1oaWBseDdfSHN5aUl6dQp6V34qZ0Z4fjh8
Wlk+QWlpQFZkezh4aXN4RExuVyhXYX4xMmJ0M1AqOENLMjwjMl45Ni0qZGUyKTR8encyPX5ucSoK
enstX1V3bkxiSTxRZz01SEJkXiU/SzdUSTRvR3RsUXpgO3tTPWNJSnNaJWQhQGBoWnM2e1pgNzFg
JFpgeG0jPlNnCnp5XyNaYzM8JG01eEU+LSllSldUWjtMcXoxT2l6fGM3RUVMfWl4WDcwKDNudFgp
M0ImS3RuUH5RLVFeSHdiT1VaTgp6XmJIaTNSdCFCaGw7bE12dnB0JkxxQitwXjlAT1hBM2NtciZw
RGA8U14yQnpmcTRGeHdKRzAhYD9uaUYoaEZeXygKek9rb25sNkROLWV4fXRfNSNNXkMjSW54e1Yq
JU9GeT5neUVGPnhufUo7VVVCSDhtTj50ZCtAZnxNMXZCREg5R0c2CnptbiU7d1pqc1ZiZURReUR6
dUdkYkEkNmhhP0RpRHpBQDhpWD9BMk4+YGwxMD9zX3tEbnBZTWskdHxXMzllXldLKQp6ckl8e2RQ
d3ZmTnFzVnB2N2pmQDkyfkQyNUU3eikwKy1rI1dvcDBhaHo4aCtIWVQ+byN6a2E4Y05ye2k0cilg
PVEKejY2IWZpeW5hNjJTSGJ5bCpJVWBHZ1c3QWEpcVZGUV9HK2BaJDFQK2xqM0p3PiV3QUQ7K2cl
M0JuUl9QMVU5Xih7CnpfWlJNY1Z8JHdFcn5lO2k/SDgyOzIwPGtNRUxuSj47a1VaPmdRNUFldUhv
REFVO1h9SGdwYj5RUSNnMlQjdk1sawp6O2tYYkRkdXVsd1hZO2Q0OytjenwreiRCZjxqeE9eaWZ8
MHYzMSQwKE9MRkB+QXtpampadVRlX2ZEbCt2XnpZQ0EKenM+YSttO1pee2NGMkUxfjFfXj9OMTtx
ZmA/cj0yNTJZe29BelZsNjk3QGp7VHtsKW9rRF9zYGBmZ3ZDVzckaHRMCno1KkNJU2dGc3hrJnRJ
QjxeQjJjJlNpNCl7Xyh8eyZlbzA2WE1Ad1JHWWZ7MmY2V3x9emxGJl8qXzF9TzA8KjY0TQp6WCt3
ISl3PElZK2U7eHBGRik8TV9mRFBjTU9pVHAtJEFMY3BGMjdfVFEzK2dUe3dXZyFMNE1jNnReZVA4
QVdgdygKeldudlB6RWRKQTsydCpSTXtDfjxvO3Qtc2x8Ql57VWFNMWE7TyE3Qi1WanoqPG8mfCRg
VXlCSWpfYz1yKU0xSiM0Cno0MX53WUtqIyQjaX5ZNzFGPH4le3IyM2JoRnl3REJ6QFh2d1BEdTIz
QD4kcDMyYlZXVjk0Q2lEO1pYWE1vSyRuTQp6TEUjfCNvdGpmcSFoIWFONzFCej9USEZRPmxDU3xH
QVl2ZDx1cjxPODBrI3BiaENtUS1ZZV5aKHw2SypnUk58b0UKV2hRVUdkSX1wU35CcVMrO0t4TFE7
PF5LUSFPNz82MwoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9XZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvTmF2aWdhdGlvbkJhckxvY2tN
aW5pQDN4LnBkZiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdl
c2V0L05hdmlnYXRpb25CYXJMb2NrTWluaUAzeC5wZGYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzliMjUwMTEzNGFi
OWUyMTJmYjhiMjY3ZmY2ZWZjZTUyZGFlNzk4MgpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgNTg4
OQp6Y21idFkyVUpyX3c1MTlKTHt5M3RBdElyZDFRSC0zeSpFUmJqdFBWZyE0U0Y7UUhuSGFCNyEx
UDFROV9MbC17SUUKejZYX3lOTTU9VkAkV0t0LV5GN35NZkJwNkVOXlV1Rz8jIUlDX25tY1NnWTtD
P0w/RUlQMDhxbyE+ZVBKQitULV5QCnpPI21ubTQ4KStFMFQoWDwjZE9mXzRtZHwzajlAWVZpbTVy
ZDs/UCphKWZJX0R0RHRRJGM0KGxTOUthS1lNSStxKwp6ek5BKExpcH52U3kyQFE5UHRvVEN1VXdu
cUNGfDhXY20rcU5iSGxHWDQke3hfVTQwWHhwdGtDbTZeQyE4XndDZ2cKenVVN2VfQ2p+dmZqalRW
WmtCYCstM1haQ3Q8N1lqNj5vWTcyWVNKI01SN0gybiRRLT5+NzZzfjRYZTNBVSZydih2CnpfUXp7
eiVuSUhxWjdWOV5OSHNJTDZQTUMoO3JlRnhqKSFBTSp8UTJvPyYtXlVQT0w1Izt1JXs9QE1Weyth
YVl+LQp6NFl5MG9KWlVPUU1rVnVDbmFufTJESG5aVG9uNVNwVDQ7VyF4KXxPLVElKWFiS1FPRSNh
KCNWaDVafHVyRUxBNWQKenZwNFY0XnF0MExKb185RShfWkMtR21YdTFffVV1eHtkP1hWZyp3cyNt
dkdzTjVAT1BkTUpKTDsrZGMmWlp+O2M4CnpOQGlmKUV8T0xqPDV6Jkk9UDNCP1gqR1opLU5HIXN7
V0lSU0NnVUdmKnpARC0pfH1hUm1UTXZrakQjI30hWV5qOQp6YXZmWU4+bG9QbiZnOzl+R3tyTGRF
KmJ8d3lXOU9yRGRDUVkxVHA9QHRBd35UdjV8Tnl7dUBYfWVqYUZgbT4keU0KekBRZypmPEE0JUIw
VyZ+KlYhV2BuWGl1UXpQbEdiWDlZPCpRMVFKMGVBZ1lWRGIzIVUlZTFSNVZmJm41ODZxbUZECno1
RnFfRTNofUtZRChHUGB3dVdkTigxSXxPaVc8LWdENWl7WSNiNkNSa2hXK2JrdEBvYzVUTWp5d3tt
aG9GO2ZKfQp6OEV1T0BZKkJOQTBIdUdte01JfHNia3pHVnFRTVdueyohMjhLZl5yZ1NJcDIwZyp5
eWY0VEUoZmFGVEUpZEheNm0KekZ7UShaTD9BRkFAaD4zKGxtSFdeYCokKVIjOSNeMHQ3OT08OSl+
a0QxZDE3OWs/eCl6Tko5RS17UnFKcjB3RUJoCno3ZUd1Q2h7SmpqUW1ZTkxONGswdjhVR0tgM21I
KXhAZipFfEtgQUZLRFEjYFI9Y3lYTmw2b3pxWXFlMXhBfFYkawp6JCRgKmZKclk0TkVue2pibndl
dylKSFoobDdJckwlPDxedHFqMWRWO3hNO2ZDIUNzfDAjXjtpez1OTCNEWFBDR0QKeldCQFRRIzhn
U2NqLVdZPTtWNjZtSCpFZ0s3eEZ1ZWVuOX5GI2hwdDg1e1c0aUtYYFktKkE1Z0BMMz15ZHE3QnJR
Cnp7YFlrdF5gNEtCO1NoNkpTQ3YlTmAlfk9OJl5udHg0ZSoxRTFgfnlUeGFKSyN2ZH5+Jlp4dT40
IyorZGpjMUU/Tgp6PlM1ZnJzKkpSXlpsVlRnUnZHa34+aHg3cXIkKFkmWHFOSX1Zb2pVcSYxUGRt
KDxLOCM0b21vZmF1VTcwbi1wKHgKenJsZEVaPjg2Wn1eTDNWfFBQYTh8bEFVMjdyOGd6NW92XnAz
UH5URF4+KW9yOE8tX0VRKE53Z3REMDspTFZwekNGCnprSnEjUkFUVyt3Tn0xO3YyfCU/Xl41Uyh+
bU1PQmtoREQ5NjtzK0coKSlOSzlMbX1lSz1gPFA3eGhFVDV4TmhXcAp6Nns9e3hwVHpxbW96MU0x
d0cjUiRzelByeDF2SFR2TVVpZktBMmpaZWQ1c0VQV3UlIXhHUFRMeSkzZnpaaFhsLSsKell8fW8/
bzktR2V1RkEtfDdge3FJTFZkUlpVV3VpVCs9ZT9vQkpzXzNfITI9OHU4R1AlSWRJPTtZTm99MFhR
ancrCno4d0MtJVRkekJEK2dHUCt5X29JfW5CflJgJXNvfDdrZU9TdVc4QWxWaiZJLTBgb0I3RSo5
P3R1VU5fdkFaU21oVgp6VWcySG5kWlpaaiRaWDdZO2tqNTlHc3k7emBHZDFYKXJyTz0jY3N6R3JZ
ND52bVZoTHlscUFLWTU3IyhEVTlJQ0EKektHWDVoTWxMTTRkWGxFT2h6aVh9P1dXenR5c0hVP1p6
aWBiP3daSkN2JmFYWCpKUDRGdDQ/TC1XTldMbXg2eyFsCnpiPW1FMkc4fDBTIWtzIT0+eENidCl2
fk9GJW95dj4rQCVRKWNkUTd4Ny1Ta05ZNmwxbz8zKU5ZQmdzZF9kT2cqSgp6KGIzQz4xUm55fEU3
aGNHIU5gJipwQ3sqV20taT5iJnMjNyswND4jKGpgP3ZmSlkmVERlQHlSaShPTzJoUHZ8SWUKejgt
Q3JPaT9QRmtHSzUoKCRBVnEhJFdGeWw7VHs4Xkw4NCRYO1Zae0VaYioyTGp7LUA4WiloLSgteTt7
KkFhaGNuCnpjJT4qZU5DSHJWNDNjYF5hYHF0VTRmMjBhYXB8VXskMXpLYSVlQlduWHo2YUtEKiFf
NHc4NW1LS35CXittbD5FYwp6NnJhVTFYUHJuXj5TdGcjcn1rNDspUlNmO1omVkpDV3IkYlVlJFZe
I2pOcStqPkJAU3Q+KnNONzw8d1RVYns8b2AKejJTU2hTbGo0STwtWTRycDl2PnVtYjdRRGJoSiN4
RFpRSG50RlZqT1JtZkdQN3R4eyQ9YGpXUlM2WVI/KiFYWStxCno2UX50aHNMOHc0T3NVeWRSRnE7
KGN9UCM1YkJXezVCRmp9eGlLV2tDRk5AWlF5WlZMdlNYZXNwe3UkO2IqMnlybAp6czBvd192TEJA
ZD96P1kkLSRhTXl0RTRASE05fXVsQyNiJWMqYHxFWTwtS1ZuUGQ8bmlYKXc3R2JIJD1DPV9VQ2YK
emF6VGNKelBYbjVHbCQzWihsZUlnP3l2JWlrYG5fXzYqdVBWazVCTmZfKk0jekdBYFhiUVJsZ2d4
Xn1KXzVYY2U4CnpJVHBqIVJLcGliVkB+MDZeVGZHKEtwc35mQkwrNj1ZM2x2cGxXKEU9S35FN2w/
b2JCNTIxfUh7JVI3VUxtNnt5OQp6bWw3Qj9Md1EmWGNtJEcqZ04hdHR4dmg5KmQ4XkpQdnxnfU4k
RFQxJHV0cFR7cXljUn1DKnRNeD8oKnw4QkQ2U0UKem00K19Dd2FPSXk2I1NIKjcjeDQ8LWZRfm9l
dERgbnFEbHA/ZyU/diNrVnNsZm5yekthJGN1QUhvS0ZlPkE/XismCnpgNlN0aHJ0I1VGMylLM055
O24tNlUjQyFLNz9mRlBsQ0N5VXs4bHpaUSNCPGM1cF40dGYobDB3M1dQPnxQLVQyagp6ZTkwKzl1
RUsyTDJoZnZxWSlVOyh7NjNUeD5sUj01aTJldlp0MWd3Yitta1RjeFh2fEd3TjhUdXApSUVQciNQ
bkEKenJpJEpmOUQ1N0N2TCNgX2BYbmtMc3Y7Xzg0Zj9nTFlxRCF0QGBhUTJMOFU8QXd4R008d002
YmpgJFc+am19ZmYxCnptX0VrNylNc3diNVdRZSRVVDM4OWtuP1Z6WGtLKHpQTTZRNHUyZFc3IUkh
PFR4eChecnxJIWBqQEFZJUNhfHZ1SQp6WX1JVjZZe3FPISY/WHBiaWhEfEglMmRpVXc3SjtQb2Mx
K15gSVB6ZVlpbj5+QD95SkBKKlglV299T1J1RWt+cVYKekVeOCFESHNBSlhrKlAhR3JKfk4kUmBI
QDFRaT4mKEM1QXBxMnlIUF9GYEYwcU9YK2dAWTU4ZWNIUj80TWYkd1ZICnoxM3pBZ1JENGtQRyg5
NHsyS2ZrP0liblBMU3pLUFhWNVdKZE9wfjxqbzJ3QmthKzRPa2gyZzIxQHRWPUN4YHU8agp6cWVm
VEN5TmJLJFQpc047TGkxbzElXjhLQyUqPnZ2XipASCFVdT9PUz5HeG47aCptYnpHJX1UV2d4Tjs7
bzNOcUMKenlmQnhVZkVsSCFUayV9c1BXe0oqNmM7Tzdkfj5NdHEte31XX1E9PVFgTUR4di1aa0l3
R0FVTXRCZ18/LUQhTWw0CnpIQEo2c2NPZ2A9VlpMRWlecVllP1p+bHM0ZUJhNlduVGdXUW04ZU43
ejV1P0xKKEBYVnNiLXg1b3lSKmZZM1cjJgp6UyRhanpWN3NxUWx5WUY+TUQwWVFZPHhZXmR5Uihe
QyhZK34rSTB0X3JAYjU4OGIkX1hoeFNXJWctJlJuaCpPVmoKenpNR1JVJkRLUzBlTEx5SjwrI2Yp
TzUhKEJPVV9GPGF1PypuPClZPElTOUAzSTtsO0wpYCgqcHhKMG9pWSVoTmpwCnp5OWYkdGlzdips
ZkdpMyUzS0o/aFQ1KzBGbHdLNnxiKTxDX0hAVTw8KnpqMlBHTHRGb0RTTC1wcT1DXntHM3xKcwp6
NWZ6MyQ9VXduQ0hUSiNrPnE4LWVRZExvSXNMK1VNYE91O3M4T15OQz80I0RJLWwqRUF1QiNmTG54
dnxvV0daWXsKel5oR1ZvSlBNZEMlZ257ajZ1eyQrJkU1UGtxOCZFNUBFSV88Q0BOdWp1Vn4+VF9W
clk1VFVTQT5PYFh8UUt+OHFBCnp2dHRZZztpdW9gUFUjZV4rbSFpQ1E0QXpoZ3pkJnBId2pIZ3VV
S3VOX3U/cCRmP294OXQwWG04aDErVHRYZmtPfAp6a3w3amRrOSluY1NxPUo8ZHBHdU9yaHI2bGNX
I0dNYVBkfWdqfWl6T1E3QnwzQTxJYEtSdTlidEUwQDE+PlJVOEUKem91U1lqcl5EfVFXP3ltdCZK
VWdNOGN7cUNLKTF8amk9MURMSTtmLTUtcyFpV3tKUT1uPCVAZ1UrMTluei1SbSVXCnpuMihvM3dm
QiRFeSprKlUzdz9lX2V9VXoyKihEI1Z5N0d6ZCkkPWlLS3NTd3s8dTxqcFhmKnFuZCZGcTN7JHVe
Wgp6Pk1NPiNPSkFGbSU5UWpjc3pmPzE9dl5DS25Pd2goKmNhdEg0PH5WM2NZakI8ZVVBOHkwRFgj
fEEyWSpXLVgzWSsKejI+dz59V2FHKU0mJHVfVyYhPl51QC1AP0JsJHJJPWAreysre0hnWlVqTWI4
ZyVMfjtlTlE8amlQQl9LYiNUMUpfCnplTzBDUCFkYm05WEQofGxoJUZ9Tll0PnZwJCt5JngmQkZz
VlZ7VTt4cXx4TSFSQzFoKjlGPjdCbnxkeiFpZilhXwp6UFpRN1V5WEdfSSU0LXx+WjMwIWtYe15M
YHNmVmFQWD9gMnkpaEUrQ0FvVyEwdUhAVjNfQDxZV1NEUHtXPEtMQTcKelBVcD8pTm8xQzdRQW5T
SXVZN0xhOyN6dHtjWDd4czB7Pzg1WiRFQTAmM3AzKl5ZczJ0e28heDJCJUswdTA+KS08Cnpeclc4
Y0pTIXNxO05hU04pSkFlaihLYHEydURETDdoWSNSc0tHIz4zbm5HNDAhJiQ7RVQqaz9qN2t+TVhU
Mk5ScAp6KzdeYGIhZ3szKW4+JD4heUp3dH49VEhFKmxFSjZxdEc8UXFOQjQ3OUppMkdJYU5UTTRe
XiNsRnRWaHhReX4rR0wKeilzKjxAOWpqZmooVCNIYSlTWko9Y0pqeiRKQnk7IzBTREhmV019Y0Ng
YHVLekMjPmIke2lYTEVfaVl5QEd4emBxCnohQUg7Sl5Ze0M8MkpDYUkpKXlXUlQ8SSNoP0dPYE1z
d3tTcHhjdmZBUHVaMipDOFNvWUhtOURpLVc5YlNIUkF0cgp6eT5Zb01EeWU1T3EoPFAhbzZXQFR5
dEx+K3lIeVVUKWBuJTU/KWhZU3Q8azV8QFNYayp3YHNlWEZGaWdeT1c4UlEKenFqfVp4OCR0VyZ5
U0Q0aWFrQzRFRWt0NWt3N2t6WG4hUXpEVU5gJSVXMUdRaXlNST1eaGgtP1N6Nz5+Kmgjd1diCnoj
TygjcU0lYVVCRGwwMT9KPCljKyF5NDhBWG0jV1JgSCVmOFZIYT4lQGMleiorN00lbCt3OF8/ZWs4
ekswVHJEKwp6QU54ZUlsJmYkODcyMG9ATXhHUj5TUkBwP3UpUH1VVl4lQ21OVSY+UDtPVyUpSyNM
Yz1gOGhKTFQycnlJTmAoNjYKejJtaVckcyRHTHpKcmtkS1pocEM5VXEkfFApc2h2TjFVcF9jPUxo
Sm5ZaXMqcytuREp6KXtMT25OPnY1Qk9jfGhoCnpOemN9JnREbX1VLV8+NSZvO31Cd3JPemgoKUk+
SkVxd35+dEM4MmAtOFZtVlkxbyQlRnFVK0xTT2N9Y3tSdldaQgp6TFJEPjIrelQyJXRyQXFeSlc/
RWZFVkteNlJXZVQmJHF9bHtMJW8rI0owJSQhOW0rRGkxeWZKeFlKM2MqNzB5ZGsKeklfWFI0ZCts
WUkqeWd4NXk8Uk9NcDhacD1rP0swUE9UU2kxPVVMQHx2YW05QktkSTZ6RFpRZSM7VUtTO1hQc3g4
Cnp5eSN4bjd6ajV8S0JCUEpyd3hhWHRLV0Q1ZG1XLWZIQzhhKCY5UTgmQCpfMlI/aXopIWwqY25X
JldCVz9UczNBKwp6Uz47PSloS1lNYzwwVX17T3tWUH12a08qK2BEZ3EhVyRNTlhtV3lYRnc+MW8p
R059YUwqJkFrVUdfdSVPRW1ja2cKek5lcD83Yl5janFjeH0jbGFeSigjbGBSaDZqNmw0cmpDKWZf
ZlVzQSFuWUFAb1MlTE4ycG5aI3lxRXJza21pSDNlCnpxTnRiQkJAZ3s0IWFeM2I8UzAzPkNjOGhf
P3pEYm1gR0chTFcoT2Y/dWVGUj9kUkBOUSZYMSt0PlFLQVhkJmV9Vwp6Xj03Z0xTLWtfV0Uhd1hl
NSVpI1ZUITxsdU8kMjQhYGRIVjFVdEtmZXZwTGBDZCM5WVRaY1ArbyE1bHRUOWw9RmkKejhHXnBp
RFIoO0ZyZytgYG1USHgrZ2YyWDA8eD8hIXNLbGpEe3ohMTBZQXxCbkYjWElUK3hXWUskKCs9LT1z
UmdfCno+YDNHcm1WQDB2O28rfEFBdiVFdGZlb2xrP2RLfkZnS2A1dCVtTCswO24mPU9URWtzIXdf
RERSa1U3YGZXXilzfgp6dlFIVm9XPnllWlRfN0FJKj50Z3ViJlhRRFlQRCVodygzSisoVlFVZiZJ
U0szKjBMd3xtYGdjTDhfUEtkSkBFV04Kelg9TG5NN1Y0TnZiTFU0QEo/Tl9qWT9xNHJiQjZ0eXQm
QXhXPVE9dzxJN1FgLSVBQnZeKT83KUswPUZOdHhGeDByCnp7RnI8SHF6N2N7Kks0Y0Z2WHolPyFG
b1lyQCNPP3BlUEhQMmBsUyRneCZ6VEY1eGdLQ2wkcz0kQiR+aSY2KVVQYAp6cWRsZ0ByRU9FWFFf
JkZ7dSkhbkY7dDUpMT8mLUBmRUUlfE8zS3pzQWFvdzktclFnPX4+bypveXk/cWdzXlRuI3IKeil1
KmZEMHA+e3djNzJMSiEpdz1iK1Zyem93PFNXRmR+RStkTmtgPE02IX1fPFkzQWd6UV5wdS1sPG9x
SitmdT9uCno/KEw5NE1yfTs7cTchN3pZT0dFTCVvIURYPmVKYldHP3lxKCgwc3oqeUgjPUpMMCFz
QiRNTGxaITV6VVZOJT9jdAp6ZTJqVTBoIXBjT2x1KkZpM0JFKlhJbFFHTmBgbmpPZ1pFeUk1Vk1G
QDVxQyt5dE1McyFoNzBHKmxSY30kc0AqUE0Kej83U1o4Y3dwblppQz88ZiUlJnA1K30kJENESFpC
N01aUjxASDkqUGplI2FhNikkUXVAdWUxVS1yOGxlN2BBMlEhCnpPVSRLS0lONXo4OW9JVGM9Rj5K
VUA7Z3E5Mml9XndgR2YwbStCTV88U2t7aVQ5MCp0bntAMFI0UjJ1JFIqTTNTZwp6ZjMwaThaVFpv
RHw4Sz58XlM/RDVxQiFHNCgxOGVJaF87aVJDcWM5IT8oXysoQnZIRWZDR0ozZVM5Z0Ipc0VvdVIK
elRgPituI1UjJW83MENwUl4+bzZ4MUh+WXMoQkkhYlQ4O1Uyayt3akRBPHpeRTBnRlAhTVBXZEZG
Qy1TezQ8elZCCnpoa316WVBUO1JXazM9N1NsPyZvdmghamB+MHY0QTVPTUBsTiFDKmVaP3tDbEY7
dzkpQ2MzIXB3PUBJZiVVPW1YJQp6RDJfUDdvSyVSPzFWT2VzVC18anNjRTNPVzlqUHhDWjRWJkdU
V3xwUXVMQ0Z2Z0dzPUVfUH0yQG43OTw3WntoKVQKektlQjxMUChzJUtYQGh8IXtgM1FqNlZtJW5L
UUw2QjBOfXJERmVtfjNmNyZGWkJuanlNKCp+QjVBUDdHSHZjVis/CnpWZ0IwJkJWaFBYODt0UHla
eU89U3wxbUR+ND9oVmhfI2QlQjtabEZoMXFMQ2V7OW9manIyb2hQT3FgSjZ6eDs0bQp6cT8wUWVk
I0VjTEl7NmNEZ0ErdEs0MkhuY1UrU2MkeUZHP0wqK1ZjalJTMlpMRDJ9djROfXx3NkcoLVhrd31W
UTsKb3BtczxpRCZqQns5MVJDYyVLYHAobSFHOGYjMVNaWU5DWDF4O3M2ang2YD08QkEyaTB9U154
azUKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>330024</attachid>
            <date>2017-12-21 01:37:24 -0800</date>
            <delta_ts>2017-12-21 02:21:12 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-181006-20171221013724.patch</filename>
            <type>text/plain</type>
            <size>46409</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MjA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDUwZDZkNWM3NGM3MTlhMTNlMGMzOWM5
ZTY3ZmRjNmYxYTBkZDlmMWUuLmFjYTAwMzg5YTE5OGNjODIxNmUwOTQ2YTNkYzU1MDhjMjg2ZDFi
MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTctMTItMTkgIEplcmVteSBKb25lcyAgPGplcmVt
eWpAYXBwbGUuY29tPgorCisgICAgICAgIEVsZW1lbnQgZnVsbHNjcmVlbiBpbnRlcmZhY2Ugc2hv
dWxkIGRpc3BsYXkgdGhlIGxvY2F0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xODEwMDYKKyAgICAgICAgcmRhcjovL3Byb2JsZW0vMzYxNDMxNzYK
KworICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgQWRkIFNlY1Ry
dXN0Q29weUluZm8gU1BJLgorCisgICAgICAgICogd3RmL3NwaS9jb2NvYS9TZWN1cml0eVNQSS5o
OgorCiAyMDE3LTEyLTIwICBGdWppaSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29t
PgogCiAgICAgICAgIFtDTWFrZV1bV1RGXSBMb3dlcmNhc2UgRm9yd2FyZGluZ0hlYWRlcnMgZGly
ZWN0b3J5IG5hbWUgb2YgV1RGCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCA5Nzg2NzBhODJkNTA5NGEz
NTA3OTBmM2YyYWY3NGY1ZmQzNGQwMzgxLi5mYTY2YzIyNWJmMTg1MTI3MzFiMDZkYmI4OTQ5MTcx
ODQwZmNhYzhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNy0xMi0x
OSAgSmVyZW15IEpvbmVzICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAgRWxlbWVudCBm
dWxsc2NyZWVuIGludGVyZmFjZSBzaG91bGQgZGlzcGxheSB0aGUgbG9jYXRpb24KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTAwNgorICAgICAgICBy
ZGFyOi8vcHJvYmxlbS8zNjE0MzE3NgorCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNl
ci4KKworICAgICAgICBBZGQgaU9TIGF2YWlsYWJpbGl0eSBjaGVjay4KKworICAgICAgICAqIHBh
bC9zcGkvY29jb2EvTGlua1ByZXNlbnRhdGlvblNQSS5oOgorCiAyMDE3LTEyLTIwICBEYW5pZWwg
QmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgQWx0ZXJuYXRpdmUg
UHJlc2VudGF0aW9uIEJ1dHRvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA0OGZmZmQ1NmU1N2NlYTM2ZTFkMTQwMDQ2
OTE2MmJkZDNmZmVkNzc3Li40MTk0MTczZDBkMjBhNTJlZjdiNDRjZTliMWUzOWMzM2YzOWQ1YjMy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDE3LTEyLTE5ICBKZXJlbXkgSm9uZXMgIDxq
ZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBFbGVtZW50IGZ1bGxzY3JlZW4gaW50ZXJmYWNl
IHNob3VsZCBkaXNwbGF5IHRoZSBsb2NhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxMDA2CisgICAgICAgIHJkYXI6Ly9wcm9ibGVtLzM2MTQz
MTc2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgorCisgICAgICAgIFNob3cg
YSBzaG9ydCB1c2VyIHZpc2libGUgbG9jYXRpb24gc3RyaW5nIHdpdGggYSBsb2NrIGlmIHNlY3Vy
ZSBhbmQgZ3JlZW4gd2hlbiB0cnVzdGVkLgorCisgICAgICAgIEluY2x1ZGVzIG90aGVyIGludGVy
ZmFjZSBjbGVhbnVwIGFuZCB0d2Vha3MuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLRnVs
bFNjcmVlbldpbmRvd0NvbnRyb2xsZXJJT1MubW06CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5W
aWV3Q29udHJvbGxlciB2aWV3V2lsbFRyYW5zaXRpb25Ub1NpemU6d2l0aFRyYW5zaXRpb25Db29y
ZGluYXRvcjpdKToKKyAgICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHZpc3Vh
bEVmZmVjdFZpZXdXaXRoRnJhbWU6XSk6CisgICAgICAgIChtaXJyb3JFZGdlSW5zZXRzKToKKyAg
ICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIF91cGRhdGVMYXlvdXRNYXJnaW5z
XSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciB2aWV3RGlkTGF5b3V0
U3Vidmlld3NdKToKKyAgICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHNldExv
Y2F0aW9uOnNlY3VyZTp0cnVzdGVkTmFtZTp0cnVzdGVkU2l0ZTpdKToKKyAgICAgICAgKC1bX1dL
RnVsbFNjcmVlblZpZXdDb250cm9sbGVyIGNyZWF0ZVN1YnZpZXdzXSk6CisgICAgICAgICgtW19X
S0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciBsb2FkVmlld10pOgorICAgICAgICAoLVtfV0tGdWxs
U2NyZWVuVmlld0NvbnRyb2xsZXIgdmlld0RpZEFwcGVhcjpdKToKKyAgICAgICAgKC1bX1dLRnVs
bFNjcmVlblZpZXdDb250cm9sbGVyIGhpZGVDYW5jZWxCdXR0b25dKToKKyAgICAgICAgKC1bX1dL
RnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHNob3dDYW5jZWxCdXR0b246XSk6CisgICAgICAgICgt
W19XS0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIgc2V0U2hvd3NTdGF0dXNCYXI6XSk6Cisg
ICAgICAgICgtW19XS0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIgcHJlZmVyc1N0YXR1c0Jh
ckhpZGRlbl0pOgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIF9pbnZh
bGlkYXRlRVZPcmdhbml6YXRpb25OYW1lXSk6CisgICAgICAgICgtW1dLRnVsbFNjcmVlbldpbmRv
d0NvbnRyb2xsZXIgaXNTZWN1cmVdKToKKyAgICAgICAgKC1bV0tGdWxsU2NyZWVuV2luZG93Q29u
dHJvbGxlciBfc2VydmVyVHJ1c3RdKToKKyAgICAgICAgKC1bV0tGdWxsU2NyZWVuV2luZG93Q29u
dHJvbGxlciBfRVZPcmdhbml6YXRpb25OYW1lXSk6CisgICAgICAgICgtW1dLRnVsbFNjcmVlbldp
bmRvd0NvbnRyb2xsZXIgdXBkYXRlTG9jYXRpb25JbmZvXSk6CisgICAgICAgICgtW1dLRnVsbFNj
cmVlbldpbmRvd0NvbnRyb2xsZXIgZW50ZXJGdWxsU2NyZWVuXSk6CisgICAgICAgICgtW1dLRnVs
bFNjcmVlbldpbmRvd0NvbnRyb2xsZXIgYmVnYW5FbnRlckZ1bGxTY3JlZW5XaXRoSW5pdGlhbEZy
YW1lOmZpbmFsRnJhbWU6XSk6CisgICAgICAgICgtW1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xs
ZXIgYmVnYW5FeGl0RnVsbFNjcmVlbldpdGhJbml0aWFsRnJhbWU6ZmluYWxGcmFtZTpdKToKKyAg
ICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHByZWZlcnNTdGF0dXNCYXJIaWRk
ZW5dKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJLaXQueGNhc3NldHMvRG9uZS5pbWFnZXNldC9D
b250ZW50cy5qc29uOiBSZW1vdmVkLgorICAgICAgICAqIFdlYktpdC54Y2Fzc2V0cy9Mb2NrTWlu
aS5pbWFnZXNldC9Db250ZW50cy5qc29uOiBBZGRlZC4KKyAgICAgICAgKiBXZWJLaXQueGNhc3Nl
dHMvTG9ja01pbmkuaW1hZ2VzZXQvTmF2aWdhdGlvbkJhckxvY2tNaW5pQDJ4LnBkZjogQ29waWVk
IGZyb20gU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvRG9uZS5pbWFnZXNldC9Eb25lLnBk
Zi4KKyAgICAgICAgKiBXZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvTmF2aWdhdGlv
bkJhckxvY2tNaW5pQDN4LnBkZjogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJLaXQvV2ViS2l0Lnhj
YXNzZXRzL0RvbmUuaW1hZ2VzZXQvRG9uZS5wZGYuCisKIDIwMTctMTItMjAgIFlvdWVubiBGYWJs
ZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFN1cHBvcnQgc2VydmljZSB3b3JrZXIg
aW50ZXJjZXB0aW9uIG9mIHJlcXVlc3Qgd2l0aCBibG9iIGJvZHkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XVEYvd3RmL3NwaS9jb2NvYS9TZWN1cml0eVNQSS5oIGIvU291cmNlL1dURi93dGYvc3BpL2Nv
Y29hL1NlY3VyaXR5U1BJLmgKaW5kZXggMzc1YjllMjE1NGIxMjQ3N2NhZTU3M2QyOGE1ZTUwYjUy
YjVmZWNhZi4uNjQxNjY4OTZiNTFlMDY2ZDY5ZjQ1NTczODM0M2I3NzI1NzExY2NjMSAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi93dGYvc3BpL2NvY29hL1NlY3VyaXR5U1BJLmgKKysrIGIvU291cmNl
L1dURi93dGYvc3BpL2NvY29hL1NlY3VyaXR5U1BJLmgKQEAgLTgxLDQgKzgxLDEwIEBAIENGX1JF
VFVSTlNfUkVUQUlORUQgQ0ZEYXRhUmVmIFNlY1RydXN0U2VyaWFsaXplKFNlY1RydXN0UmVmLCBD
RkVycm9yUmVmICopOwogQ0ZfUkVUVVJOU19SRVRBSU5FRCBTZWNUcnVzdFJlZiBTZWNUcnVzdERl
c2VyaWFsaXplKENGRGF0YVJlZiBzZXJpYWxpemVkVHJ1c3QsIENGRXJyb3JSZWYgKik7CiAjZW5k
aWYKIAorQ0ZfUkVUVVJOU19SRVRBSU5FRCBDRkRpY3Rpb25hcnlSZWYgU2VjVHJ1c3RDb3B5SW5m
byhTZWNUcnVzdFJlZik7CisKK2V4dGVybiBjb25zdCBDRlN0cmluZ1JlZiBrU2VjVHJ1c3RJbmZv
RXh0ZW5kZWRWYWxpZGF0aW9uS2V5OworZXh0ZXJuIGNvbnN0IENGU3RyaW5nUmVmIGtTZWNUcnVz
dEluZm9Db21wYW55TmFtZUtleTsKK2V4dGVybiBjb25zdCBDRlN0cmluZ1JlZiBrU2VjVHJ1c3RJ
bmZvUmV2b2NhdGlvbktleTsKKwogV1RGX0VYVEVSTl9DX0VORApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvRW5nbGlzaC5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzIGIvU291cmNlL1dlYkNv
cmUvRW5nbGlzaC5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzCmluZGV4IDc1NTcyMmU5MDEyNDBj
YzY1MTlkNGRmYzJiMDkzNGI0YWJmNTJlZTUuLmRkOGNmYTI0YTYyOTgzNmQ3YWQ5OGY4NGE2YmUz
Y2Q0OWJkNDY1YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovTG9j
YWxpemFibGUuc3RyaW5ncworKysgYi9Tb3VyY2UvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL0xvY2Fs
aXphYmxlLnN0cmluZ3MKQEAgLTEyNTQsMyArMTI1NCw2IEBACiAKIC8qIExhYmVsIGZvciB0aGUg
YXV0byBmaWxsIHN0cm9uZyBjb25maXJtYXRpb24gcGFzc3dvcmQgYnV0dG9uIGluc2lkZSBhIHRl
eHQgZmllbGQuICovCiAic3Ryb25nIGNvbmZpcm1hdGlvbiBwYXNzd29yZCBhdXRvIGZpbGwiID0g
InN0cm9uZyBjb25maXJtYXRpb24gcGFzc3dvcmQgYXV0byBmaWxsIjsKKworLyogVGV4dCBvZiBi
dXR0b24gdGhhdCBleGl0cyBlbGVtZW50IGZ1bGxzY3JlZW4uICovCisiRG9uZSIgPSAiRG9uZSI7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9MaW5rUHJlc2Vu
dGF0aW9uU1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9MaW5rUHJlc2Vu
dGF0aW9uU1BJLmgKaW5kZXggZDRhMjQ2NWNmYTgxZTg5YzBhNTcxYzAyMDMzZmIwNDQyZTJhYTFj
OS4uNmQ5MGFmYWI4ZmYyOTE3NGUwNzljYWQ1NjdmOTQyNDZkN2VmNGY4ZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvTGlua1ByZXNlbnRhdGlvblNQSS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0xpbmtQcmVzZW50YXRpb25TUEku
aApAQCAtMjMsNyArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmIF9fTUFDX09T
X1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxMzAwCisjaWYgKFBMQVRGT1JNKE1BQykgJiYg
X19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEzMDApIHx8IFBMQVRGT1JNKElP
UykKIAogI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCiAKQEAgLTM3LDQgKzM3LDQgQEAKIAog
I2VuZGlmCiAKLSNlbmRpZiAvLyBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEw
MTMwMAorI2VuZGlmIC8vIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTAxMzAwKSB8fCBQTEFURk9STShJT1MpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlcklPUy5tbSBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVy
SU9TLm1tCmluZGV4IGZmNmU0MDJhY2NiNTcyOWZiMjU2NDU4ZTEyMWRmNzc0NTg2MjFiOGQuLjNj
MDZmY2FkNTgzY2MxMWVjNjIwZjZlYzUzM2MzNDlhMWE5N2U5OTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVySU9TLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250
cm9sbGVySU9TLm1tCkBAIC0zNSwxNyArMzUsMzEgQEAKICNpbXBvcnQgIldlYkZ1bGxTY3JlZW5N
YW5hZ2VyUHJveHkuaCIKICNpbXBvcnQgIldlYlBhZ2VQcm94eS5oIgogI2ltcG9ydCA8Rm91bmRh
dGlvbi9Gb3VuZGF0aW9uLmg+CisjaW1wb3J0IDxTZWN1cml0eS9TZWNDZXJ0aWZpY2F0ZS5oPgor
I2ltcG9ydCA8U2VjdXJpdHkvU2VjVHJ1c3QuaD4KICNpbXBvcnQgPFVJS2l0L1VJVmlzdWFsRWZm
ZWN0Vmlldy5oPgogI2ltcG9ydCA8V2ViQ29yZS9GbG9hdFJlY3QuaD4KICNpbXBvcnQgPFdlYkNv
cmUvR2VvbWV0cnlVdGlsaXRpZXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvSW50UmVjdC5oPgorI2lt
cG9ydCA8V2ViQ29yZS9Mb2NhbGl6ZWRTdHJpbmdzLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNv
cmVOU1VSTEV4dHJhcy5oPgorI2ltcG9ydCA8cGFsL3NwaS9jZi9DRk5ldHdvcmtTUEkuaD4KKyNp
bXBvcnQgPHBhbC9zcGkvY29jb2EvTGlua1ByZXNlbnRhdGlvblNQSS5oPgorI2ltcG9ydCA8cGFs
L3NwaS9jb2NvYS9OU1N0cmluZ1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9RdWFydHpD
b3JlU1BJLmg+CisjaW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKyNpbXBvcnQgPHd0Zi9zcGkv
Y29jb2EvU2VjdXJpdHlTUEkuaD4KIAogdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKIHVzaW5nIG5h
bWVzcGFjZSBXZWJDb3JlOwogCitTT0ZUX0xJTktfUFJJVkFURV9GUkFNRVdPUktfT1BUSU9OQUwo
TGlua1ByZXNlbnRhdGlvbikKKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKK3N0YXRpYyBjb25zdCBO
U1RpbWVJbnRlcnZhbCBzaG93SGlkZUFuaW1hdGlvbkR1cmF0aW9uID0gMC4xOworc3RhdGljIGNv
bnN0IE5TVGltZUludGVydmFsIGF1dG9IaWRlRGVsYXkgPSA0LjA7CisKIHN0YXRpYyB2b2lkIHJl
cGxhY2VWaWV3V2l0aFZpZXcoVUlWaWV3ICp2aWV3LCBVSVZpZXcgKm90aGVyVmlldykKIHsKICAg
ICBbQ0FUcmFuc2FjdGlvbiBiZWdpbl07CkBAIC0xMTUsNiArMTI5LDcgQEAgQGltcGxlbWVudGF0
aW9uIF9XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciB7CiAgICAgUmV0YWluUHRyPFVJVmlldz4g
X2JhY2tncm91bmRWaWV3OwogICAgIFJldGFpblB0cjxVSUxvbmdQcmVzc0dlc3R1cmVSZWNvZ25p
emVyPiBfdG91Y2hHZXN0dXJlUmVjb2duaXplcjsKICAgICBSZXRhaW5QdHI8VUlCdXR0b24+IF9j
YW5jZWxCdXR0b247CisgICAgUmV0YWluUHRyPFVJQnV0dG9uPiBfbG9jYXRpb25CdXR0b247CiAg
ICAgUmV0YWluUHRyPFVJVmlzdWFsRWZmZWN0Vmlldz4gX3Zpc3VhbEVmZmVjdFZpZXc7CiB9CiAK
QEAgLTEyOSw3ICsxNDQsMTcgQEAgLSAodm9pZClkZWFsbG9jCiAtICh2b2lkKXZpZXdXaWxsVHJh
bnNpdGlvblRvU2l6ZTooQ0dTaXplKXNpemUgd2l0aFRyYW5zaXRpb25Db29yZGluYXRvcjooaWQ8
VUlWaWV3Q29udHJvbGxlclRyYW5zaXRpb25Db29yZGluYXRvcj4pY29vcmRpbmF0b3IKIHsKICAg
ICBbc3VwZXIgdmlld1dpbGxUcmFuc2l0aW9uVG9TaXplOnNpemUgd2l0aFRyYW5zaXRpb25Db29y
ZGluYXRvcjpjb29yZGluYXRvcl07Ci0gICAgWyhXS1dlYlZpZXcgKilbc2VsZiBjb250ZW50Vmll
d10gX292ZXJyaWRlTGF5b3V0UGFyYW1ldGVyc1dpdGhNaW5pbXVtTGF5b3V0U2l6ZTpzaXplIG1h
eGltdW1Vbm9ic2N1cmVkU2l6ZU92ZXJyaWRlOnNpemVdOworICAgIFtjb29yZGluYXRvciBhbmlt
YXRlQWxvbmdzaWRlVHJhbnNpdGlvbjogXihpZDxVSVZpZXdDb250cm9sbGVyVHJhbnNpdGlvbkNv
b3JkaW5hdG9yQ29udGV4dD4gY29udGV4dCkgeworCisgICAgICAgIHZvaWQgKF53ZWJWaWV3VXBk
YXRlQmxvY2spKCkgPSBeeworICAgICAgICAgICAgWyhXS1dlYlZpZXcgKilbc2VsZiBjb250ZW50
Vmlld10gX292ZXJyaWRlTGF5b3V0UGFyYW1ldGVyc1dpdGhNaW5pbXVtTGF5b3V0U2l6ZTpzaXpl
IG1heGltdW1Vbm9ic2N1cmVkU2l6ZU92ZXJyaWRlOnNpemVdOworICAgICAgICB9OworCisgICAg
ICAgIFsoV0tXZWJWaWV3ICopW3NlbGYgY29udGVudFZpZXddIF9iZWdpbkFuaW1hdGVkUmVzaXpl
V2l0aFVwZGF0ZXM6d2ViVmlld1VwZGF0ZUJsb2NrXTsKKyAgICAgICAgWyhXS1dlYlZpZXcgKilb
c2VsZiBjb250ZW50Vmlld10gX3NldEludGVyZmFjZU9yaWVudGF0aW9uT3ZlcnJpZGU6W1VJQXBw
IHN0YXR1c0Jhck9yaWVudGF0aW9uXV07CisgICAgfSBjb21wbGV0aW9uOl4oaWQgPFVJVmlld0Nv
bnRyb2xsZXJUcmFuc2l0aW9uQ29vcmRpbmF0b3JDb250ZXh0PmNvbnRleHQpIHsKKyAgICAgICAg
WyhXS1dlYlZpZXcgKilbc2VsZiBjb250ZW50Vmlld10gX2VuZEFuaW1hdGVkUmVzaXplXTsKKyAg
ICB9XTsKIH0KIAogKyAodm9pZCljb25maWd1cmVWaWV3OihVSVZpZXcgKil2aWV3IHdpdGhCYWNr
Z3JvdW5kRmlsbE9mQ29sb3I6KFVJQ29sb3IgKilmaWxsQ29sb3Igb3BhY2l0eTooQ0dGbG9hdClv
cGFjaXR5IGZpbHRlcjooTlNTdHJpbmcgKilmaWx0ZXIKQEAgLTE1OSw5ICsxODQsNiBAQCAtICh2
b2lkKV91cGRhdGVUcmFuc3BhcmVuY3lPZlZpc3VhbEVmZmVjdFZpZXc6KFVJVmlzdWFsRWZmZWN0
VmlldyAqKXZpc3VhbEVmZmVjdAogLSAoVUlWaXN1YWxFZmZlY3RWaWV3ICopdmlzdWFsRWZmZWN0
Vmlld1dpdGhGcmFtZTooQ0dSZWN0KWZyYW1lCiB7CiAgICAgUmV0YWluUHRyPFVJVmlzdWFsRWZm
ZWN0Vmlldz4gdmlzdWFsRWZmZWN0VmlldyA9IGFkb3B0TlMoW1tVSVZpc3VhbEVmZmVjdFZpZXcg
YWxsb2NdIGluaXRXaXRoRWZmZWN0OltVSVZpc3VhbEVmZmVjdCBlbXB0eUVmZmVjdF1dKTsKLSAg
ICBbdmlzdWFsRWZmZWN0VmlldyBzZXRGcmFtZTpmcmFtZV07Ci0gICAgW3Zpc3VhbEVmZmVjdFZp
ZXcgX3NldENvbnRpbnVvdXNDb3JuZXJSYWRpdXM6KChDR1JlY3RHZXRIZWlnaHQoW3Zpc3VhbEVm
ZmVjdFZpZXcgYm91bmRzXSkgPiA0MC4wKSA/IDE2LjAgOiA4LjApXTsKLSAgICBbdmlzdWFsRWZm
ZWN0VmlldyBzZXRBdXRvcmVzaXppbmdNYXNrOihVSVZpZXdBdXRvcmVzaXppbmdGbGV4aWJsZVJp
Z2h0TWFyZ2luIHwgVUlWaWV3QXV0b3Jlc2l6aW5nRmxleGlibGVCb3R0b21NYXJnaW4pXTsKICAg
ICBbc2VsZiBfdXBkYXRlVHJhbnNwYXJlbmN5T2ZWaXN1YWxFZmZlY3RWaWV3OnZpc3VhbEVmZmVj
dFZpZXcuZ2V0KCldOwogCiAgICAgUmV0YWluUHRyPFVJVmlldz4gYmFja0xheWVyVGludFZpZXcg
PSBhZG9wdE5TKFtbVUlWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOlt2aXN1YWxFZmZlY3RWaWV3
IGJvdW5kc11dKTsKQEAgLTE4MSwzOSArMjAzLDEzMSBAQCAtIChVSVZpc3VhbEVmZmVjdFZpZXcg
Kil2aXN1YWxFZmZlY3RWaWV3V2l0aEZyYW1lOihDR1JlY3QpZnJhbWUKICAgICByZXR1cm4gdmlz
dWFsRWZmZWN0Vmlldy5hdXRvcmVsZWFzZSgpOwogfQogCi0tICh2b2lkKWxvYWRWaWV3CitzdGF0
aWMgVUlFZGdlSW5zZXRzIG1pcnJvckVkZ2VJbnNldHMoVUlFZGdlSW5zZXRzIGluc2V0cykKIHsK
LSAgICBbc2VsZiBzZXRWaWV3OmFkb3B0TlMoW1tVSVZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6
Q0dSZWN0TWFrZSgwLCAwLCAxMDAsIDEwMCldKS5nZXQoKV07Ci0gICAgW1tzZWxmIHZpZXddIHNl
dEF1dG9yZXNpemluZ01hc2s6KFVJVmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlV2lkdGggfCBVSVZp
ZXdBdXRvcmVzaXppbmdGbGV4aWJsZUhlaWdodCldOworICAgIHJldHVybiBVSUVkZ2VJbnNldHNN
YWtlKGluc2V0cy50b3AsIGluc2V0cy5yaWdodCwgaW5zZXRzLmJvdHRvbSwgaW5zZXRzLmxlZnQp
OworfQogCi0gICAgQ0dSZWN0IGRvbmVCdXR0b25SZWN0ID0gQ0dSZWN0TWFrZSgxMCwgMjAsIDYw
LCA0Nyk7Ci0gICAgCi0gICAgX3Zpc3VhbEVmZmVjdFZpZXcgPSBbc2VsZiB2aXN1YWxFZmZlY3RW
aWV3V2l0aEZyYW1lOmRvbmVCdXR0b25SZWN0XTsKLSAgICBbX3Zpc3VhbEVmZmVjdFZpZXcgc2V0
QWxwaGE6MF07CistICh2b2lkKV91cGRhdGVMYXlvdXRNYXJnaW5zCit7CisgICAgVUlWaWV3ICp2
aWV3ID0gW3NlbGYgdmlld107CisgICAgW3ZpZXcgc2V0UHJlc2VydmVzU3VwZXJ2aWV3TGF5b3V0
TWFyZ2luczpOT107CisKKyAgICBVSUVkZ2VJbnNldHMgdGFyZ2V0SW5zZXRzID0gW3ZpZXcgc2Fm
ZUFyZWFJbnNldHNdOworICAgIHRhcmdldEluc2V0cy50b3AgPSBzdGQ6Om1heCh0YXJnZXRJbnNl
dHMudG9wLCAyMC4wKTsKKyAgICBbdmlldyBzZXRMYXlvdXRNYXJnaW5zOnRhcmdldEluc2V0c107
Cit9CisKKy0gKHZvaWQpdmlld0RpZExheW91dFN1YnZpZXdzCit7CisgICAgW3NlbGYgX3VwZGF0
ZUxheW91dE1hcmdpbnNdOworfQorCistICAodm9pZClzZXRMb2NhdGlvbjooTlNTdHJpbmcgKils
b2NhdGlvbk5hbWUgc2VjdXJlOihCT09MKXNlY3VyZSB0cnVzdGVkTmFtZTooQk9PTCl0cnVzdGVk
TmFtZSB0cnVzdGVkU2l0ZTooQk9PTCl0cnVzdGVkU2l0ZQoreworICAgIFVJQ29sb3IgKmdyZWVu
VGludCA9IFtVSUNvbG9yIGNvbG9yV2l0aFJlZDoxMDAgLyAyNTUuMCBncmVlbjoxNzUgLyAyNTUu
MCBibHVlOjk5IC8gMjU1LjAgYWxwaGE6MS4wXTsKKyAgICBVSUNvbG9yICp3aGl0ZVRpbnQgPSBb
VUlDb2xvciB3aGl0ZUNvbG9yXTsKKworICAgIGZsb2F0IGhQYWRkaW5nID0gMTQ7CisgICAgTlNT
dHJpbmcgKmxvY2tJbWFnZU5hbWUgPSBAIkxvY2tNaW5pIjsKKworICAgIGZsb2F0IGxvY2tTcGFj
aW5nID0gc2VjdXJlID8gMTAgOiAwOworCisgICAgVUlFZGdlSW5zZXRzIGxvY2F0aW9uQ29udGVu
dEVkZ2VJbnNldHMgPSBVSUVkZ2VJbnNldHNNYWtlKDAsIGhQYWRkaW5nK2xvY2tTcGFjaW5nLCAw
LCBoUGFkZGluZyk7CisgICAgVUlFZGdlSW5zZXRzIGxvY2F0aW9uSW1hZ2VFZGdlSW5zZXRzID0g
VUlFZGdlSW5zZXRzTWFrZSgwLCAtbG9ja1NwYWNpbmcsIDAsIDApOworCisgICAgaWYgKFtVSVZp
ZXcgdXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbkZvclNlbWFudGljQ29udGVudEF0dHJpYnV0
ZTpbW3NlbGYgdmlld10gc2VtYW50aWNDb250ZW50QXR0cmlidXRlXV0gPT0gVUlVc2VySW50ZXJm
YWNlTGF5b3V0RGlyZWN0aW9uUmlnaHRUb0xlZnQpIHsKKyAgICAgICAgbG9jYXRpb25Db250ZW50
RWRnZUluc2V0cyA9IG1pcnJvckVkZ2VJbnNldHMobG9jYXRpb25Db250ZW50RWRnZUluc2V0cyk7
CisgICAgICAgIGxvY2F0aW9uSW1hZ2VFZGdlSW5zZXRzID0gbWlycm9yRWRnZUluc2V0cyhsb2Nh
dGlvbkltYWdlRWRnZUluc2V0cyk7CisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0Q29udGVu
dEhvcml6b250YWxBbGlnbm1lbnQ6VUlDb250cm9sQ29udGVudEhvcml6b250YWxBbGlnbm1lbnRS
aWdodF07CisgICAgfQorCisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRUaXRsZUNvbG9yOih0cnVz
dGVkTmFtZSA/IGdyZWVuVGludCA6IHdoaXRlVGludCkgZm9yU3RhdGU6VUlDb250cm9sU3RhdGVO
b3JtYWxdOworCisgICAgaWYgKHNlY3VyZSkgeworICAgICAgICBOU0J1bmRsZSAqYnVuZGxlID0g
W05TQnVuZGxlIGJ1bmRsZUZvckNsYXNzOltXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGNs
YXNzXV07CisgICAgICAgIFVJSW1hZ2UgKmxvY2tJbWFnZSA9IFtVSUltYWdlIGltYWdlTmFtZWQ6
bG9ja0ltYWdlTmFtZSBpbkJ1bmRsZTpidW5kbGUgY29tcGF0aWJsZVdpdGhUcmFpdENvbGxlY3Rp
b246bmlsXTsKKyAgICAgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRJbWFnZTpbbG9ja0ltYWdlIGlt
YWdlV2l0aFJlbmRlcmluZ01vZGU6VUlJbWFnZVJlbmRlcmluZ01vZGVBbHdheXNUZW1wbGF0ZV0g
Zm9yU3RhdGU6VUlDb250cm9sU3RhdGVOb3JtYWxdOworICAgICAgICBbW19sb2NhdGlvbkJ1dHRv
biBpbWFnZVZpZXddIHNldFRpbnRDb2xvcjp0cnVzdGVkU2l0ZSA/IGdyZWVuVGludCA6IHdoaXRl
VGludF07CisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0VGludENvbG9yOnRydXN0ZWRTaXRl
ID8gZ3JlZW5UaW50IDogd2hpdGVUaW50XTsKKyAgICB9IGVsc2UKKyAgICAgICAgW19sb2NhdGlv
bkJ1dHRvbiBzZXRJbWFnZTpuaWwgZm9yU3RhdGU6VUlDb250cm9sU3RhdGVOb3JtYWxdOworCisg
ICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRDb250ZW50RWRnZUluc2V0czpsb2NhdGlvbkNvbnRlbnRF
ZGdlSW5zZXRzXTsKKyAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEltYWdlRWRnZUluc2V0czpsb2Nh
dGlvbkltYWdlRWRnZUluc2V0c107CisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRUaXRsZTpsb2Nh
dGlvbk5hbWUgZm9yU3RhdGU6VUlDb250cm9sU3RhdGVOb3JtYWxdOworICAgIFtbX2xvY2F0aW9u
QnV0dG9uIHRpdGxlTGFiZWxdIHNldExpbmVCcmVha01vZGU6TlNMaW5lQnJlYWtCeVRydW5jYXRp
bmdUYWlsXTsKKyAgICBbW19sb2NhdGlvbkJ1dHRvbiB0aXRsZUxhYmVsXSBzZXRBZGp1c3RzRm9u
dFNpemVUb0ZpdFdpZHRoOk5PXTsKK30KKworLSAodm9pZCljcmVhdGVTdWJ2aWV3cworeworICAg
IF92aXN1YWxFZmZlY3RWaWV3ID0gW3NlbGYgdmlzdWFsRWZmZWN0Vmlld1dpdGhGcmFtZTpDR1Jl
Y3RNYWtlKDAsIDAsIDIwLCAyMCldOworCisgICAgW192aXN1YWxFZmZlY3RWaWV3IHNldFRyYW5z
bGF0ZXNBdXRvcmVzaXppbmdNYXNrSW50b0NvbnN0cmFpbnRzOk5PXTsKICAgICBbW3NlbGYgdmll
d10gYWRkU3VidmlldzpfdmlzdWFsRWZmZWN0Vmlldy5nZXQoKV07CiAKICAgICBfY2FuY2VsQnV0
dG9uID0gW1VJQnV0dG9uIGJ1dHRvbldpdGhUeXBlOlVJQnV0dG9uVHlwZVN5c3RlbV07Ci0gICAg
W19jYW5jZWxCdXR0b24gc2V0QXV0b3Jlc2l6aW5nTWFzazooVUlWaWV3QXV0b3Jlc2l6aW5nRmxl
eGlibGVSaWdodE1hcmdpbiB8IFVJVmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlQm90dG9tTWFyZ2lu
KV07Ci0gICAgW19jYW5jZWxCdXR0b24gc2V0RnJhbWU6ZG9uZUJ1dHRvblJlY3RdOwotICAgIFtf
Y2FuY2VsQnV0dG9uIGFkZFRhcmdldDpzZWxmIGFjdGlvbjpAc2VsZWN0b3IoY2FuY2VsQWN0aW9u
OikgZm9yQ29udHJvbEV2ZW50czpVSUNvbnRyb2xFdmVudFRvdWNoVXBJbnNpZGVdOworICAgIFtf
Y2FuY2VsQnV0dG9uIHNldFRyYW5zbGF0ZXNBdXRvcmVzaXppbmdNYXNrSW50b0NvbnN0cmFpbnRz
Ok5PXTsKICAgICBbX2NhbmNlbEJ1dHRvbiBzZXRBZGp1c3RzSW1hZ2VXaGVuSGlnaGxpZ2h0ZWQ6
Tk9dOwogICAgIFtfY2FuY2VsQnV0dG9uIHNldEJhY2tncm91bmRDb2xvcjogW1VJQ29sb3IgYmxh
Y2tDb2xvcl1dOwotICAgIFtbX2NhbmNlbEJ1dHRvbiBsYXllcl0gc2V0Q29ybmVyUmFkaXVzOjZd
OwotICAgIFtfY2FuY2VsQnV0dG9uIHNldEFscGhhOjBdOwotICAgIE5TQnVuZGxlICpidW5kbGUg
PSBbTlNCdW5kbGUgYnVuZGxlRm9yQ2xhc3M6W1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXIg
Y2xhc3NdXTsKLSAgICBSZXRhaW5QdHI8VUlJbWFnZT4gaW1hZ2UgPSBbVUlJbWFnZSBpbWFnZU5h
bWVkOkAiRG9uZSIgaW5CdW5kbGU6YnVuZGxlIGNvbXBhdGlibGVXaXRoVHJhaXRDb2xsZWN0aW9u
Om5pbF07Ci0gICAgW19jYW5jZWxCdXR0b24gc2V0SW1hZ2U6W2ltYWdlIGltYWdlV2l0aFJlbmRl
cmluZ01vZGU6VUlJbWFnZVJlbmRlcmluZ01vZGVBbHdheXNUZW1wbGF0ZV0gZm9yU3RhdGU6VUlD
b250cm9sU3RhdGVOb3JtYWxdOwotCi0gICAgW19jYW5jZWxCdXR0b24gc2V0VGludENvbG9yOltV
SUNvbG9yIGNvbG9yV2l0aFdoaXRlOjEuMCBhbHBoYTowLjU1XV07CiAgICAgW1tfY2FuY2VsQnV0
dG9uIGxheWVyXSBzZXRDb21wb3NpdGluZ0ZpbHRlcjpbQ0FGaWx0ZXIgZmlsdGVyV2l0aFR5cGU6
a0NBRmlsdGVyUGx1c0xdXTsKKyAgICBbX2NhbmNlbEJ1dHRvbiBzZXRUaXRsZTpXRUJfVUlfU1RS
SU5HKCJEb25lIiwgIlRleHQgb2YgYnV0dG9uIHRoYXQgZXhpdHMgZWxlbWVudCBmdWxsc2NyZWVu
LiIpIGZvclN0YXRlOlVJQ29udHJvbFN0YXRlTm9ybWFsXTsKKyAgICBbX2NhbmNlbEJ1dHRvbiBz
ZXRUaW50Q29sb3I6W1VJQ29sb3Igd2hpdGVDb2xvcl1dOworICAgIFtfY2FuY2VsQnV0dG9uIGFk
ZFRhcmdldDpzZWxmIGFjdGlvbjpAc2VsZWN0b3IoY2FuY2VsQWN0aW9uOikgZm9yQ29udHJvbEV2
ZW50czpVSUNvbnRyb2xFdmVudFRvdWNoVXBJbnNpZGVdOwogCiAgICAgW1tzZWxmIHZpZXddIGFk
ZFN1YnZpZXc6X2NhbmNlbEJ1dHRvbi5nZXQoKV07CiAKKyAgICBfbG9jYXRpb25CdXR0b24gPSBb
VUlCdXR0b24gYnV0dG9uV2l0aFR5cGU6VUlCdXR0b25UeXBlU3lzdGVtXTsKKyAgICBbX2xvY2F0
aW9uQnV0dG9uIHNldFRyYW5zbGF0ZXNBdXRvcmVzaXppbmdNYXNrSW50b0NvbnN0cmFpbnRzOk5P
XTsKKyAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEFkanVzdHNJbWFnZVdoZW5IaWdobGlnaHRlZDpO
T107CisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRCYWNrZ3JvdW5kQ29sb3I6W1VJQ29sb3IgYmxh
Y2tDb2xvcl1dOworICAgIFtbX2xvY2F0aW9uQnV0dG9uIGxheWVyXSBzZXRDb21wb3NpdGluZ0Zp
bHRlcjpbQ0FGaWx0ZXIgZmlsdGVyV2l0aFR5cGU6a0NBRmlsdGVyUGx1c0xdXTsKKyAgICBbW3Nl
bGYgdmlld10gYWRkU3VidmlldzpfbG9jYXRpb25CdXR0b24uZ2V0KCldOworCisgICAgVUlMYXlv
dXRHdWlkZSogY29udGFpbmVyR3VpZGUgPSBbW3NlbGYgdmlld10gbGF5b3V0TWFyZ2luc0d1aWRl
XTsKKworICAgIFtbW192aXN1YWxFZmZlY3RWaWV3IGxlZnRBbmNob3JdIGNvbnN0cmFpbnRFcXVh
bFRvQW5jaG9yOltbc2VsZiB2aWV3XSBsZWZ0QW5jaG9yXV0gc2V0QWN0aXZlOllFU107CisgICAg
W1tbX3Zpc3VhbEVmZmVjdFZpZXcgcmlnaHRBbmNob3JdIGNvbnN0cmFpbnRFcXVhbFRvQW5jaG9y
Oltbc2VsZiB2aWV3XSByaWdodEFuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworICAgIFtbW192aXN1
YWxFZmZlY3RWaWV3IHRvcEFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W1tzZWxmIHZp
ZXddIHRvcEFuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworICAgIFtbW192aXN1YWxFZmZlY3RWaWV3
IGhlaWdodEFuY2hvcl0gY29uc3RyYWludEdyZWF0ZXJUaGFuT3JFcXVhbFRvQ29uc3RhbnQ6MjBd
IHNldEFjdGl2ZTpZRVNdOworCisgICAgTlNMYXlvdXRDb25zdHJhaW50ICpib3R0b20gPSBbW192
aXN1YWxFZmZlY3RWaWV3IGJvdHRvbUFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W2Nv
bnRhaW5lckd1aWRlIHRvcEFuY2hvcl1dOworICAgIFtib3R0b20gc2V0UHJpb3JpdHk6VUlMYXlv
dXRQcmlvcml0eVJlcXVpcmVkIC0gMV07CisgICAgW2JvdHRvbSBzZXRBY3RpdmU6WUVTXTsKKwor
ICAgIFtbW19jYW5jZWxCdXR0b24gbGVhZGluZ0FuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNo
b3I6W2NvbnRhaW5lckd1aWRlIGxlYWRpbmdBbmNob3JdXSBzZXRBY3RpdmU6WUVTXTsKKyAgICBb
W1tfY2FuY2VsQnV0dG9uIHRvcEFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W1tzZWxm
IHZpZXddIHRvcEFuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworICAgIFtbW19jYW5jZWxCdXR0b24g
Ym90dG9tQW5jaG9yXSBjb25zdHJhaW50RXF1YWxUb0FuY2hvcjpbX3Zpc3VhbEVmZmVjdFZpZXcg
Ym90dG9tQW5jaG9yXV0gc2V0QWN0aXZlOllFU107CisKKyAgICBbW1tfbG9jYXRpb25CdXR0b24g
aGVpZ2h0QW5jaG9yXSBjb25zdHJhaW50RXF1YWxUb0NvbnN0YW50OjIwXSBzZXRBY3RpdmU6WUVT
XTsKKyAgICBbW1tfbG9jYXRpb25CdXR0b24gYm90dG9tQW5jaG9yXSBjb25zdHJhaW50RXF1YWxU
b0FuY2hvcjpbX3Zpc3VhbEVmZmVjdFZpZXcgYm90dG9tQW5jaG9yXV0gc2V0QWN0aXZlOllFU107
CisgICAgW1tbX2xvY2F0aW9uQnV0dG9uIGxlYWRpbmdBbmNob3JdIGNvbnN0cmFpbnRHcmVhdGVy
VGhhbk9yRXF1YWxUb0FuY2hvcjpbX2NhbmNlbEJ1dHRvbiB0cmFpbGluZ0FuY2hvcl1dIHNldEFj
dGl2ZTpZRVNdOworICAgIFtbW19sb2NhdGlvbkJ1dHRvbiB0cmFpbGluZ0FuY2hvcl0gY29uc3Ry
YWludExlc3NUaGFuT3JFcXVhbFRvQW5jaG9yOltbc2VsZiB2aWV3XSB0cmFpbGluZ0FuY2hvcl1d
IHNldEFjdGl2ZTpZRVNdOworICAgIE5TTGF5b3V0Q29uc3RyYWludCAqY2VudGVyaW5nQ29uc3Ry
YWludCA9IFtbX2xvY2F0aW9uQnV0dG9uIGNlbnRlclhBbmNob3JdIGNvbnN0cmFpbnRFcXVhbFRv
QW5jaG9yOltbc2VsZiB2aWV3XSBjZW50ZXJYQW5jaG9yXV07CisgICAgW2NlbnRlcmluZ0NvbnN0
cmFpbnQgc2V0UHJpb3JpdHk6VUlMYXlvdXRQcmlvcml0eURlZmF1bHRMb3ddOworICAgIFtjZW50
ZXJpbmdDb25zdHJhaW50IHNldEFjdGl2ZTpZRVNdOworCisgICAgW192aXN1YWxFZmZlY3RWaWV3
IHNldEFscGhhOjBdOworICAgIFtfY2FuY2VsQnV0dG9uIHNldEFscGhhOjBdOworICAgIFtfbG9j
YXRpb25CdXR0b24gc2V0QWxwaGE6MF07CisKKyAgICBbX3Zpc3VhbEVmZmVjdFZpZXcgc2V0SGlk
ZGVuOllFU107CisgICAgW19jYW5jZWxCdXR0b24gc2V0SGlkZGVuOllFU107CisgICAgW19sb2Nh
dGlvbkJ1dHRvbiBzZXRIaWRkZW46WUVTXTsKK30KKworLSAodm9pZClsb2FkVmlldworeworICAg
IFtzZWxmIHNldFZpZXc6YWRvcHROUyhbW1VJVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpDR1Jl
Y3RNYWtlKDAsIDAsIDEwMCwgMTAwKV0pLmdldCgpXTsKKyAgICBbW3NlbGYgdmlld10gc2V0QXV0
b3Jlc2l6aW5nTWFzazooVUlWaWV3QXV0b3Jlc2l6aW5nRmxleGlibGVXaWR0aCB8IFVJVmlld0F1
dG9yZXNpemluZ0ZsZXhpYmxlSGVpZ2h0KV07CisKICAgICBfdG91Y2hHZXN0dXJlUmVjb2duaXpl
ciA9IGFkb3B0TlMoW1tVSUxvbmdQcmVzc0dlc3R1cmVSZWNvZ25pemVyIGFsbG9jXSBpbml0V2l0
aFRhcmdldDpzZWxmIGFjdGlvbjpAc2VsZWN0b3Ioc2hvd0NhbmNlbEJ1dHRvbjopXSk7CiAgICAg
W190b3VjaEdlc3R1cmVSZWNvZ25pemVyIHNldERlbGVnYXRlOnNlbGZdOwogICAgIFtfdG91Y2hH
ZXN0dXJlUmVjb2duaXplciBzZXRDYW5jZWxzVG91Y2hlc0luVmlldzpOT107CiAgICAgW190b3Vj
aEdlc3R1cmVSZWNvZ25pemVyIHNldE1pbmltdW1QcmVzc0R1cmF0aW9uOjBdOwogICAgIFtbc2Vs
ZiB2aWV3XSBhZGRHZXN0dXJlUmVjb2duaXplcjpfdG91Y2hHZXN0dXJlUmVjb2duaXplci5nZXQo
KV07CisgICAgW3NlbGYgY3JlYXRlU3Vidmlld3NdOwogfQogCiAtICh2b2lkKXZpZXdXaWxsQXBw
ZWFyOihCT09MKWFuaW1hdGVkCkBAIC0yMjMsNiArMzM3LDExIEBAIC0gKHZvaWQpdmlld1dpbGxB
cHBlYXI6KEJPT0wpYW5pbWF0ZWQKICAgICBbW3NlbGYgdmlld10gaW5zZXJ0U3Vidmlldzpbc2Vs
ZiBjb250ZW50Vmlld10gYXRJbmRleDowXTsKIH0KIAorLSAodm9pZCl2aWV3RGlkQXBwZWFyOihC
T09MKWFuaW1hdGVkCit7CisgICAgW3NlbGYgX3VwZGF0ZUxheW91dE1hcmdpbnNdOworfQorCiAt
ICh2b2lkKWNhbmNlbEFjdGlvbjooaWQpc2VuZGVyCiB7CiAgICAgW1tzZWxmIHRhcmdldF0gcGVy
Zm9ybVNlbGVjdG9yOltzZWxmIGFjdGlvbl1dOwpAQCAtMjMxLDEyICszNTAsMTQgQEAgLSAodm9p
ZCljYW5jZWxBY3Rpb246KGlkKXNlbmRlcgogLSAodm9pZCloaWRlQ2FuY2VsQnV0dG9uCiB7CiAg
ICAgW05TT2JqZWN0IGNhbmNlbFByZXZpb3VzUGVyZm9ybVJlcXVlc3RzV2l0aFRhcmdldDpzZWxm
IHNlbGVjdG9yOkBzZWxlY3RvcihoaWRlQ2FuY2VsQnV0dG9uKSBvYmplY3Q6bmlsXTsKLSAgICBb
VUlWaWV3IGFuaW1hdGVXaXRoRHVyYXRpb246MC4yIGFuaW1hdGlvbnM6XnsKKyAgICBbVUlWaWV3
IGFuaW1hdGVXaXRoRHVyYXRpb246c2hvd0hpZGVBbmltYXRpb25EdXJhdGlvbiBhbmltYXRpb25z
Ol57CiAgICAgICAgIFtfdmlzdWFsRWZmZWN0VmlldyBzZXRBbHBoYTowXTsKICAgICAgICAgW19j
YW5jZWxCdXR0b24gc2V0QWxwaGE6MF07CisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0QWxw
aGE6MF07CiAgICAgfSBjb21wbGV0aW9uOl4oQk9PTCBmaW5pc2hlZCl7CiAgICAgICAgIGlmIChm
aW5pc2hlZCkgewogICAgICAgICAgICAgW19jYW5jZWxCdXR0b24gc2V0SGlkZGVuOllFU107Cisg
ICAgICAgICAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEhpZGRlbjpZRVNdOwogICAgICAgICAgICAg
W192aXN1YWxFZmZlY3RWaWV3IHNldEhpZGRlbjpZRVNdOwogICAgICAgICB9CiAgICAgfV07CkBA
IC0yNDUsMTIgKzM2NiwxNCBAQCAtICh2b2lkKWhpZGVDYW5jZWxCdXR0b24KIC0gKHZvaWQpc2hv
d0NhbmNlbEJ1dHRvbjooaWQpc2VuZGVyCiB7CiAgICAgW05TT2JqZWN0IGNhbmNlbFByZXZpb3Vz
UGVyZm9ybVJlcXVlc3RzV2l0aFRhcmdldDpzZWxmIHNlbGVjdG9yOkBzZWxlY3RvcihoaWRlQ2Fu
Y2VsQnV0dG9uKSBvYmplY3Q6bmlsXTsKLSAgICBbc2VsZiBwZXJmb3JtU2VsZWN0b3I6QHNlbGVj
dG9yKGhpZGVDYW5jZWxCdXR0b24pIHdpdGhPYmplY3Q6bmlsIGFmdGVyRGVsYXk6My4wXTsKLSAg
ICBbVUlWaWV3IGFuaW1hdGVXaXRoRHVyYXRpb246MC4yIGFuaW1hdGlvbnM6IF57CisgICAgW3Nl
bGYgcGVyZm9ybVNlbGVjdG9yOkBzZWxlY3RvcihoaWRlQ2FuY2VsQnV0dG9uKSB3aXRoT2JqZWN0
Om5pbCBhZnRlckRlbGF5OmF1dG9IaWRlRGVsYXldOworICAgIFtVSVZpZXcgYW5pbWF0ZVdpdGhE
dXJhdGlvbjpzaG93SGlkZUFuaW1hdGlvbkR1cmF0aW9uIGFuaW1hdGlvbnM6IF57CiAgICAgICAg
IFtfdmlzdWFsRWZmZWN0VmlldyBzZXRIaWRkZW46Tk9dOwogICAgICAgICBbX2NhbmNlbEJ1dHRv
biBzZXRIaWRkZW46Tk9dOworICAgICAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEhpZGRlbjpOT107
CiAgICAgICAgIFtfdmlzdWFsRWZmZWN0VmlldyBzZXRBbHBoYToxXTsKICAgICAgICAgW19jYW5j
ZWxCdXR0b24gc2V0QWxwaGE6MV07CisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0QWxwaGE6
MV07CiAgICAgfV07CiB9CiAKQEAgLTI2MCwxMSArMzgzLDYgQEAgLSAodm9pZClzZXRUYXJnZXQ6
KGlkKXRhcmdldCBhY3Rpb246KFNFTClhY3Rpb24KICAgICBbc2VsZiBzZXRBY3Rpb246YWN0aW9u
XTsKIH0KIAotLSAoQk9PTClwcmVmZXJzU3RhdHVzQmFySGlkZGVuCi17Ci0gICAgcmV0dXJuIFlF
UzsKLX0KLQogLy8gTUFSSyAtIFVJR2VzdHVyZVJlY29nbml6ZXJEZWxlZ2F0ZQogCiAtIChCT09M
KWdlc3R1cmVSZWNvZ25pemVyOihVSUdlc3R1cmVSZWNvZ25pemVyICopZ2VzdHVyZVJlY29nbml6
ZXIgc2hvdWxkUmVjb2duaXplU2ltdWx0YW5lb3VzbHlXaXRoR2VzdHVyZVJlY29nbml6ZXI6KFVJ
R2VzdHVyZVJlY29nbml6ZXIgKilvdGhlckdlc3R1cmVSZWNvZ25pemVyCkBAIC0yNzcsMTEgKzM5
NSwxOSBAQCBAZW5kCiBAaW50ZXJmYWNlIF9XS0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIg
OiBVSVZpZXdDb250cm9sbGVyCiBAZW5kCiAKLUBpbXBsZW1lbnRhdGlvbiBfV0tGdWxsc2NyZWVu
Um9vdFZpZXdDb250cm9sbGVyIDogVUlWaWV3Q29udHJvbGxlcgorQGltcGxlbWVudGF0aW9uIF9X
S0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIgeworICAgIEJPT0wgX3Nob3dzU3RhdHVzQmFy
OworfQorCistICh2b2lkKXNldFNob3dzU3RhdHVzQmFyOihCT09MKXZhbHVlCit7CisgICAgX3No
b3dzU3RhdHVzQmFyID0gdmFsdWU7CisgICAgW3NlbGYgc2V0TmVlZHNTdGF0dXNCYXJBcHBlYXJh
bmNlVXBkYXRlXTsKK30KIAogLSAoQk9PTClwcmVmZXJzU3RhdHVzQmFySGlkZGVuCiB7Ci0gICAg
cmV0dXJuIFlFUzsKKyAgICByZXR1cm4gIV9zaG93c1N0YXR1c0JhcjsKIH0KIAogQGVuZApAQCAt
MzU4LDYgKzQ4NCw3IEBAIEBpbXBsZW1lbnRhdGlvbiBXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9s
bGVyIHsKICAgICBXS1dlYlZpZXdTdGF0ZSBfdmlld1N0YXRlOwogCiAgICAgUmV0YWluUHRyPFVJ
V2luZG93PiBfd2luZG93OworICAgIFJldGFpblB0cjxfV0tGdWxsc2NyZWVuUm9vdFZpZXdDb250
cm9sbGVyPiBfcm9vdFZpZXdDb250cm9sbGVyOwogCiAgICAgUmVmUHRyPFdlYktpdDo6Vm9pZENh
bGxiYWNrPiBfcmVwYWludENhbGxiYWNrOwogICAgIFJldGFpblB0cjxVSVZpZXdDb250cm9sbGVy
PiBfdmlld0NvbnRyb2xsZXJGb3JQcmVzZW50YXRpb247CkBAIC0zNjUsNiArNDkyLDEwIEBAIEBp
bXBsZW1lbnRhdGlvbiBXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIHsKIAogICAgIENHUmVj
dCBfaW5pdGlhbEZyYW1lOwogICAgIENHUmVjdCBfZmluYWxGcmFtZTsKKworICAgIFJldGFpblB0
cjxOU1N0cmluZz4gX0VWT3JnYW5pemF0aW9uTmFtZTsKKyAgICBCT09MIF9FVk9yZ2FuaXphdGlv
bk5hbWVJc1ZhbGlkOworCiB9CiAKICNwcmFnbWEgbWFyayAtCkBAIC00MDQsMTYgKzUzNSwxMDAg
QEAgLSAoV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcgKil3ZWJWaWV3UGxhY2Vob2xk
ZXIKICNwcmFnbWEgbWFyayAtCiAjcHJhZ21hIG1hcmsgRXhwb3NlZCBJbnRlcmZhY2UKIAorLSAo
dm9pZClfaW52YWxpZGF0ZUVWT3JnYW5pemF0aW9uTmFtZQoreworICAgIF9FVk9yZ2FuaXphdGlv
bk5hbWUgPSBuaWw7CisgICAgX0VWT3JnYW5pemF0aW9uTmFtZUlzVmFsaWQgPSBOTzsKK30KKwor
LSAoQk9PTClpc1NlY3VyZQoreworICAgIHJldHVybiBfd2ViVmlldy5oYXNPbmx5U2VjdXJlQ29u
dGVudDsKK30KKworLSAoU2VjVHJ1c3RSZWYpX3NlcnZlclRydXN0Cit7CisgICAgcmV0dXJuIF93
ZWJWaWV3LnNlcnZlclRydXN0OworfQorCistIChOU1N0cmluZyAqKV9FVk9yZ2FuaXphdGlvbk5h
bWUKK3sKKyAgICBpZiAoIXNlbGYuaXNTZWN1cmUpCisgICAgICAgIHJldHVybiBuaWw7CisKKyAg
ICBpZiAoX0VWT3JnYW5pemF0aW9uTmFtZUlzVmFsaWQpCisgICAgICAgIHJldHVybiBfRVZPcmdh
bml6YXRpb25OYW1lLmdldCgpOworCisgICAgQVNTRVJUKCFfRVZPcmdhbml6YXRpb25OYW1lLmdl
dCgpKTsKKyAgICBfRVZPcmdhbml6YXRpb25OYW1lSXNWYWxpZCA9IFlFUzsKKworICAgIFNlY1Ry
dXN0UmVmIHRydXN0ID0gW3NlbGYgX3NlcnZlclRydXN0XTsKKyAgICBpZiAoIXRydXN0KQorICAg
ICAgICByZXR1cm4gbmlsOworCisgICAgTlNEaWN0aW9uYXJ5ICppbmZvRGljdGlvbmFyeSA9IFso
X19icmlkZ2UgTlNEaWN0aW9uYXJ5ICopU2VjVHJ1c3RDb3B5SW5mbyh0cnVzdCkgYXV0b3JlbGVh
c2VdOworICAgIC8vIElmIFNlY1RydXN0Q29weUluZm8gcmV0dXJuZWQgTlVMTCB0aGVuIGl0J3Mg
bGlrZWx5IHRoYXQgdGhlIFNlY1RydXN0UmVmIGhhcyBub3QgYmVlbiBldmFsdWF0ZWQKKyAgICAv
LyBhbmQgdGhlIG9ubHkgd2F5IHRvIGdldCB0aGUgaW5mb3JtYXRpb24gd2UgbmVlZCBpcyB0byBj
YWxsIFNlY1RydXN0RXZhbHVhdGUgb3Vyc2VsdmVzLgorICAgIGlmICghaW5mb0RpY3Rpb25hcnkp
IHsKKyAgICAgICAgT1NTdGF0dXMgZXJyID0gU2VjVHJ1c3RFdmFsdWF0ZSh0cnVzdCwgTlVMTCk7
CisgICAgICAgIGlmIChlcnIgPT0gbm9FcnIpCisgICAgICAgICAgICBpbmZvRGljdGlvbmFyeSA9
IFsoX19icmlkZ2UgTlNEaWN0aW9uYXJ5ICopU2VjVHJ1c3RDb3B5SW5mbyh0cnVzdCkgYXV0b3Jl
bGVhc2VdOworICAgICAgICBpZiAoIWluZm9EaWN0aW9uYXJ5KQorICAgICAgICAgICAgcmV0dXJu
IG5pbDsKKyAgICB9CisKKyAgICAvLyBNYWtlIHN1cmUgdGhhdCB0aGUgRVYgY2VydGlmaWNhdGUg
aXMgdmFsaWQgYWdhaW5zdCBvdXIgY2VydGlmaWNhdGUgY2hhaW4uCisgICAgaWQgaGFzRVYgPSBb
aW5mb0RpY3Rpb25hcnkgb2JqZWN0Rm9yS2V5OihfX2JyaWRnZSBOU1N0cmluZyAqKWtTZWNUcnVz
dEluZm9FeHRlbmRlZFZhbGlkYXRpb25LZXldOworICAgIGlmICghW2hhc0VWIGlzS2luZE9mQ2xh
c3M6W05TVmFsdWUgY2xhc3NdXSB8fCAhW2hhc0VWIGJvb2xWYWx1ZV0pCisgICAgICAgIHJldHVy
biBuaWw7CisKKyAgICAvLyBNYWtlIHN1cmUgdGhhdCB3ZSBjb3VsZCBjb250YWN0IHJldm9jYXRp
b24gc2VydmVyIGFuZCBpdCBpcyBzdGlsbCB2YWxpZC4KKyAgICBpZCBpc05vdFJldm9rZWQgPSBb
aW5mb0RpY3Rpb25hcnkgb2JqZWN0Rm9yS2V5OihfX2JyaWRnZSBOU1N0cmluZyAqKWtTZWNUcnVz
dEluZm9SZXZvY2F0aW9uS2V5XTsKKyAgICBpZiAoIVtpc05vdFJldm9rZWQgaXNLaW5kT2ZDbGFz
czpbTlNWYWx1ZSBjbGFzc11dIHx8ICFbaXNOb3RSZXZva2VkIGJvb2xWYWx1ZV0pCisgICAgICAg
IHJldHVybiBuaWw7CisKKyAgICBfRVZPcmdhbml6YXRpb25OYW1lID0gW2luZm9EaWN0aW9uYXJ5
IG9iamVjdEZvcktleTooX19icmlkZ2UgTlNTdHJpbmcgKilrU2VjVHJ1c3RJbmZvQ29tcGFueU5h
bWVLZXldOworICAgIHJldHVybiBfRVZPcmdhbml6YXRpb25OYW1lLmdldCgpOworfQorCistICh2
b2lkKXVwZGF0ZUxvY2F0aW9uSW5mbworeworICAgIE5TVVJMKiB1cmwgPSBfd2ViVmlldy5fY29t
bWl0dGVkVVJMOworCisgICAgTlNTdHJpbmcgKkVWT3JnYW5pemF0aW9uTmFtZSA9IFtzZWxmIF9F
Vk9yZ2FuaXphdGlvbk5hbWVdOworICAgIEJPT0wgc2hvd3NFVk9yZ2FuaXphdGlvbk5hbWUgPSBb
RVZPcmdhbml6YXRpb25OYW1lIGxlbmd0aF0gPiAwOworCisgICAgTlNTdHJpbmcgKmRvbWFpbiA9
IG5pbDsKKworICAgIGlmIChMaW5rUHJlc2VudGF0aW9uTGlicmFyeSgpKQorICAgICAgICBkb21h
aW4gPSBbdXJsIF9scF9zaW1wbGlmaWVkRGlzcGxheVN0cmluZ107CisgICAgZWxzZQorICAgICAg
ICBkb21haW4gPSB1c2VyVmlzaWJsZVN0cmluZyh1cmwpOworCisgICAgTlNTdHJpbmcgKnRleHQg
PSBuaWw7CisgICAgaWYgKFtbdXJsIHNjaGVtZV0gY2FzZUluc2Vuc2l0aXZlQ29tcGFyZTpAImRh
dGEiXSA9PSBOU09yZGVyZWRTYW1lKQorICAgICAgICB0ZXh0ID0gQCJkYXRhOiI7CisgICAgZWxz
ZSBpZiAoc2hvd3NFVk9yZ2FuaXphdGlvbk5hbWUpCisgICAgICAgIHRleHQgPSBFVk9yZ2FuaXph
dGlvbk5hbWU7CisgICAgZWxzZQorICAgICAgICB0ZXh0ID0gZG9tYWluOworCisgICAgW19mdWxs
c2NyZWVuVmlld0NvbnRyb2xsZXIgc2V0TG9jYXRpb246dGV4dCBzZWN1cmU6c2VsZi5pc1NlY3Vy
ZSB0cnVzdGVkTmFtZTpzaG93c0VWT3JnYW5pemF0aW9uTmFtZSB0cnVzdGVkU2l0ZTohIUVWT3Jn
YW5pemF0aW9uTmFtZV07Cit9CisKIC0gKHZvaWQpZW50ZXJGdWxsU2NyZWVuCiB7CiAgICAgaWYg
KFtzZWxmIGlzRnVsbFNjcmVlbl0pCiAgICAgICAgIHJldHVybjsKIAorICAgIFtzZWxmIF9pbnZh
bGlkYXRlRVZPcmdhbml6YXRpb25OYW1lXTsKKwogICAgIF9mdWxsU2NyZWVuU3RhdGUgPSBXYWl0
aW5nVG9FbnRlckZ1bGxTY3JlZW47CiAKICAgICBfd2luZG93ID0gYWRvcHROUyhbW1VJV2luZG93
IGFsbG9jXSBpbml0XSk7CiAgICAgW193aW5kb3cgc2V0QmFja2dyb3VuZENvbG9yOltVSUNvbG9y
IGNsZWFyQ29sb3JdXTsKLSAgICBbX3dpbmRvdyBzZXRSb290Vmlld0NvbnRyb2xsZXI6YWRvcHRO
UyhbW19XS0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIgYWxsb2NdIGluaXRdKS5nZXQoKV07
CisgICAgX3Jvb3RWaWV3Q29udHJvbGxlciA9IGFkb3B0TlMoW1tfV0tGdWxsc2NyZWVuUm9vdFZp
ZXdDb250cm9sbGVyIGFsbG9jXSBpbml0XSk7CisgICAgW193aW5kb3cgc2V0Um9vdFZpZXdDb250
cm9sbGVyOl9yb290Vmlld0NvbnRyb2xsZXIuZ2V0KCldOwogICAgIFtbX3dpbmRvdyByb290Vmll
d0NvbnRyb2xsZXJdIHNldFZpZXc6YWRvcHROUyhbW1VJVmlldyBhbGxvY10gaW5pdFdpdGhGcmFt
ZTpbX3dpbmRvdyBib3VuZHNdXSkuZ2V0KCldOwogICAgIFtbW193aW5kb3cgcm9vdFZpZXdDb250
cm9sbGVyXSB2aWV3XSBzZXRCYWNrZ3JvdW5kQ29sb3I6W1VJQ29sb3IgY2xlYXJDb2xvcl1dOwog
ICAgIFtbW193aW5kb3cgcm9vdFZpZXdDb250cm9sbGVyXSB2aWV3XSBzZXRBdXRvcmVzaXppbmdN
YXNrOihVSVZpZXdBdXRvcmVzaXppbmdGbGV4aWJsZVdpZHRoIHwgVUlWaWV3QXV0b3Jlc2l6aW5n
RmxleGlibGVIZWlnaHQpXTsKQEAgLTQyNiw2ICs2NDEsNyBAQCAtICh2b2lkKWVudGVyRnVsbFNj
cmVlbgogICAgIFtfZnVsbHNjcmVlblZpZXdDb250cm9sbGVyIHNldE1vZGFsUHJlc2VudGF0aW9u
U3R5bGU6VUlNb2RhbFByZXNlbnRhdGlvbkN1c3RvbV07CiAgICAgW19mdWxsc2NyZWVuVmlld0Nv
bnRyb2xsZXIgc2V0VGFyZ2V0OnNlbGYgYWN0aW9uOkBzZWxlY3RvcihyZXF1ZXN0RXhpdEZ1bGxT
Y3JlZW4pXTsKICAgICBbW19mdWxsc2NyZWVuVmlld0NvbnRyb2xsZXIgdmlld10gc2V0RnJhbWU6
W1tfdmlld0NvbnRyb2xsZXJGb3JQcmVzZW50YXRpb24gdmlld10gYm91bmRzXV07CisgICAgW3Nl
bGYgdXBkYXRlTG9jYXRpb25JbmZvXTsKIAogICAgIFtzZWxmIF9tYW5hZ2VyXS0+c2F2ZVNjcm9s
bFBvc2l0aW9uKCk7CiAKQEAgLTQ2MCw2ICs2NzYsNyBAQCAtICh2b2lkKWVudGVyRnVsbFNjcmVl
bgogICAgICAgICBbc2VsZiBfbWFuYWdlcl0tPnNldEFuaW1hdGluZ0Z1bGxTY3JlZW4odHJ1ZSk7
CiAKICAgICAgICAgX3JlcGFpbnRDYWxsYmFjayA9IFZvaWRDYWxsYmFjazo6Y3JlYXRlKFtwcm90
ZWN0ZWRTZWxmID0gcmV0YWluUHRyKHNlbGYpLCBzZWxmXShXZWJLaXQ6OkNhbGxiYWNrQmFzZTo6
RXJyb3IpIHsKKyAgICAgICAgICAgIF9yZXBhaW50Q2FsbGJhY2sgPSBudWxscHRyOwogICAgICAg
ICAgICAgaWYgKCFbX3dlYlZpZXcgX3BhZ2VdKQogICAgICAgICAgICAgICAgIHJldHVybjsKIApA
QCAtNDg4LDExICs3MDUsMTMgQEAgLSAodm9pZCliZWdhbkVudGVyRnVsbFNjcmVlbldpdGhJbml0
aWFsRnJhbWU6KENHUmVjdClpbml0aWFsRnJhbWUgZmluYWxGcmFtZTooQ0cKIAogICAgIFtfd2lu
ZG93IHNldFdpbmRvd0xldmVsOlVJV2luZG93TGV2ZWxOb3JtYWxdOwogICAgIFtfd2luZG93IG1h
a2VLZXlBbmRWaXNpYmxlXTsKKyAgICBbX3Jvb3RWaWV3Q29udHJvbGxlciBzZXRTaG93c1N0YXR1
c0JhcjpZRVNdOwogCiAgICAgW0NBVHJhbnNhY3Rpb24gY29tbWl0XTsKIAogICAgIFtfdmlld0Nv
bnRyb2xsZXJGb3JQcmVzZW50YXRpb24gcHJlc2VudFZpZXdDb250cm9sbGVyOl9mdWxsc2NyZWVu
Vmlld0NvbnRyb2xsZXIuZ2V0KCkgYW5pbWF0ZWQ6WUVTIGNvbXBsZXRpb246XnsKICAgICAgICAg
W3NlbGYgY29tcGxldGVkRW50ZXJGdWxsU2NyZWVuXTsKKyAgICAgICAgW19yb290Vmlld0NvbnRy
b2xsZXIgc2V0U2hvd3NTdGF0dXNCYXI6Tk9dOwogICAgIH1dOwogfQogCkBAIC01MzUsMTEgKzc1
NCwxMyBAQCAtICh2b2lkKWJlZ2FuRXhpdEZ1bGxTY3JlZW5XaXRoSW5pdGlhbEZyYW1lOihDR1Jl
Y3QpaW5pdGlhbEZyYW1lIGZpbmFsRnJhbWU6KENHUgogICAgIAogICAgIFtfd2ViVmlldyBfcGFn
ZV0tPnNldFN1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXModHJ1ZSk7CiAKKyAgICBbX3Jvb3RWaWV3
Q29udHJvbGxlciBzZXRTaG93c1N0YXR1c0JhcjpZRVNdOwogICAgIFtfZnVsbHNjcmVlblZpZXdD
b250cm9sbGVyIGRpc21pc3NWaWV3Q29udHJvbGxlckFuaW1hdGVkOllFUyBjb21wbGV0aW9uOl57
CiAgICAgICAgIGlmICghW193ZWJWaWV3IF9wYWdlXSkKICAgICAgICAgICAgIHJldHVybjsKIAog
ICAgICAgICBbc2VsZiBjb21wbGV0ZWRFeGl0RnVsbFNjcmVlbl07CisgICAgICAgIFtfcm9vdFZp
ZXdDb250cm9sbGVyIHNldFNob3dzU3RhdHVzQmFyOk5PXTsKICAgICB9XTsKIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvRG9uZS5pbWFnZXNldC9Db250ZW50
cy5qc29uIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvRG9uZS5pbWFnZXNldC9Db250
ZW50cy5qc29uCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkODBiZTQyZDI4MGQ1M2Yx
M2NhZGJjMTY1ZDgxNzkyYTE2NmQ5MGYyLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0RvbmUuaW1hZ2Vz
ZXQvQ29udGVudHMuanNvbgorKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLXsKLSAgImlt
YWdlcyIgOiBbCi0gICAgewotICAgICAgImlkaW9tIiA6ICJ1bml2ZXJzYWwiLAotICAgICAgImZp
bGVuYW1lIiA6ICJEb25lLnBkZiIKLSAgICB9Ci0gIF0sCi0gICJpbmZvIiA6IHsKLSAgICAidmVy
c2lvbiIgOiAxLAotICAgICJhdXRob3IiIDogInhjb2RlIgotICB9LAotICAicHJvcGVydGllcyIg
OiB7Ci0gICAgInRlbXBsYXRlLXJlbmRlcmluZy1pbnRlbnQiIDogInRlbXBsYXRlIgotICB9Ci19
ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJLaXQueGNhc3NldHMvRG9uZS5pbWFnZXNldC9Eb25lLnBkZiBiL1NvdXJjZS9XZWJLaXQvV2Vi
S2l0LnhjYXNzZXRzL0RvbmUuaW1hZ2VzZXQvRG9uZS5wZGYKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDU3Njk5YjIyNjhhOTJmZTg4MzVhOTdhZGJjN2I5OTFjYTBlNjhiNmUuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKR0lUIGJpbmFyeSBwYXRjaApsaXRl
cmFsIDAKSGNtVj9kMDAwMDEKCmxpdGVyYWwgNDE3MAp6Y21haSZje3I1Y2BeTmBVN195V2xRWUlP
YVpOYGpjbDY1U0p0U1AlQCNASEZ6bSNrVUIkZXQoKG0xSGY3Rmt+a18KekNmTz9fIz1lc15gT2RX
YktLMVEpVUVrKz11NmZTOXBabmJCJSg+cnh5ellWTXQ3KFlDQjtYKU82TTI8OW0kJnhkCnpaQnEq
ZjBmdkl7NylReyNiNmBtd29VNUl1SnlAQ3w4RzxEPjlHcEZJP3YkcjkrN3FYUyF7VGpsVWAwaWNo
bz9JWgp6P0U+PHAhNmhsVTkpfmY5Pzx5UmExNjx3YFA0ZCRIXm9IS0lHIWRXK20+VEE5KD5GZ0At
RktjWmg7S0k1WTlgaHsKelZ6QkY/Zkh2WFBqQk5ZdHUlKWA4UXkjOGN4THA3R1RtUkB3WSRmeUpp
R0NjTUJpeGN9NypRaEFpXzg9MjRjZGIjCnpyITxVSFlha204Qyk+JUUwclE8a0woWU9NaT90X0cz
Tml8Q3I7JX1vej9KcVJEMWM2Qnl0bHQrXnM/TFBoP3dTKQp6N3lBNllJd2hHWGAkWTBObmZGfCEq
RXtfbil1VDNOI09KWXNnblpaQitYJFFSVGo+Rk83ZHV2SFJ0MGFTTTg1cFUKeiZpPH19eHZTNnZj
RU5wOUpWeX1BI3stWFkxJX5KfUxIfVh6TSozSkpAODBlKjhYP3JFXz1VLUctaD5wd0xjMWdlCno+
QlR5UXZXKVR2LV8ycz8+OTU7OGxWNHtzdSV0aDVEOXI5SUt6JT5hfDYwX3JzN2x4fUZHUDZTRWJQ
Z2lvOE1JUwp6JFNzRDBQQW5hKSVvWCVXamtAcWNKWTh2KVBgWWVwXihSd3t7a20kczlXREltRyVG
ZjtJJiooWG8pfWp1dnpOMV4KemJZQ0BvM1RmO0E4TWkmX3MrWDUkKHM+aTkjYm9Be0t4XzR+YDlN
Nll7fmtTVkE7bDRkYkc3K2Q4T24lU1AtKyNhCnpQZEV9dWVNdWNre1p7S3NlcmBDaHEoMGoyYD0+
azMpZXtXPVFGbFh9Mmowc2FpfUxgPnsxOHhoUzVMfSY0PX5qJAp6Nmt9WSgqKkt0OEB4RVlsQ2BF
dUZEWXFxdjsqNmlHUC1wI2VsKWdKMllsUU96bl5UcmooKlJxN0J+Zl4xeXR8UGIKejhqQXh7RXI7
QGVmbn5wXlJhQig5PnRfelItKld0UENHdlplcSVMS2ZrfTZiWng+OVRqbVE9JWVKNzk1IW55VVpY
Cnp1JGl9Z0UqVEFSTVVqWkkjSjdoOXo+c3hiZUA1Xi1gU1lBV2dKYFZ+ZWNIJXlBI2IkPDhYVzgq
bXUpVitycVBUTgp6el5aZEYtM1lAQkZzYCFjeDZ+VmBzZ3M4WlBLLS1NKHJZNmJkIyRGVUxzSno0
THZ+QW4xNjJWMXVWS0lqUFpPRkQKek03OWFYOyN8R087VWdWUW8zdXlTWGpue1dVWFIoQDB5VmVQ
WG5WZ0I3MUduNm9OcD1IU2Q8OHtzczEyVnIhVkJ1Cnp6YU58XkFkMzxfMm1xPH4kKCMhazt3SUNr
Nz9tfmlOYkxqUHRmemBkTVolPUd2S2V5PDE7KDM3b0h6MCZNWFRISQp6cXpPJUFeT3w8PylGQUU/
c2BXPVFBWS1gJVY3QTJfJFMxcXA+LTBGe0M5TW5xZEdtQm4mKD1MMTBGKSEkeF5xZT4Keitje2NG
b3I3bUZkWCpOeWtrVyojYWM3QyRNJXYjOF8mJkNxaHlnfXhWSUgjJis7SmRKeDdxSGpsb0BTZlY0
XjlGCno3c3FiOz5YNnBVblF1WTRMclU8cylvQ0U2RjZzNygzcV5iajMjUj4oX1M8enNxYkd1bF83
dkx1Y2Eyd3M9MUtRZQp6Mj1gNCNvI3pXQmlDbG1VTDlASFolVzZ9TjBwJV9TbUMwajtkUGB1eT5I
JEZjJGkxfV9rPE0wME9gbjtDblBUVlgKem9qcXU+b0ZxaTJXcH1mfUBOZW9Payg9b3FpQFRUUUE5
RXsocDM+cms8SjhISV5CIXhmYiNea2RxPipnKUhyZSphCnpVbjNwPFg+U3l9bS1VKV5DMVRweFVe
O357SmxlaUc7I3thbmZga255SmgqUXhfXjZDOUp4QEBrNk5rTipINlNubwp6c2I4ckAtLWNISnBp
YT5WeCs/azgyRnt0WSE5Wj1iSFRGZWBCXzhvb3tAPG97Xz9hd1hUKnFgJjFkSnYobkIjNVMKekF2
dDBeeHVmQ0VefFhmKj1zaDJSNVRPIUtUQ3VCI18oSUByYlIlRnVjKnVEK3k0IVJUPVY9fDNmek1T
RzJMVGB6CnoqZFVHZjRNI1VYWj5heFVwbCtDcStkJks5bURoKmRuM3pLfWx8aG05K0VBTDJQelEj
dldqNCtubThTX0A0X1ZWeQp6YGBNMH1HNURjV155TjZ7bm8tZFNZKVEpN1otdCY1SiMqdH1IY0RT
JXtnZndmNkAlckNvZEApOSFIOSE8Rz1ic2wKemNXOFVpaFh3JkpMeHhKX2A0fWBDSXpGbFNhXjlv
b2UqSXpXTE00fFhPR058cypzKjFSU2NHKiRHSnxwKDE2e1g8CnozQiQxIUhQcitZS15wZHhQS2cy
IVk0Zz1INT9DR3tkbGgjK0AhQUM0IUtpSFhvdWdiV0ptWFFPZ2ZZeHpiVSk/LQp6d0NAaH4mU2Yz
JE5mfSE8Yzw2VDZCVFYxMyQwb3ZzTzVUaHo/MDRoRG49VzZDemlNOFpfS2E+Mkp1bEQ0KCl5YWAK
ekdvTT5mPHh2WU1TTHRHNDE/dkV6SSVLWiMoM3NHUVpfU3d6ai1AY3hkWEh0eV5ePilyVjd9bEpx
dylNTGI7MWRaCnpXPGFNZil8MG92ZzNmfU0qbXhQSDgxfTsxOHhSSmVQeEwkbUJIOD8hRUhFT15a
VmpyYFh6PlpAQ1VhOy0zVVY2Pwp6aWxtb15VZWE8RHVvT31kQkEhZmNLV240dWUkLVVpTzBRVGoz
djNOeE87WFpOSVc1R1ljWSNrYGJ4MFJeO2d6elYKenZMRVZeO2hgdDR5KFVsWlJBcmohNSFDYE8x
V0lacSFfKEglI0BtYU0zbGcxRD1oNlpvZE1Oe0dLNTVueFM7RSNRCnpnRC1yMHtJIXpTcGtCRyZD
XldiOWE8O307ZDRvY1BtVT4xYEQmezY4MH4zdzhAbWFkcjA4KjBfbnBBT0VGSkYxNAp6XmQwMlVO
blh7U019RkByJVAqRm5lVUV6JkorM01IYUpNSVVyZ0Ahem56K3UwZ1ckfWByXiRSfFVVSnpSIS1F
YWIKenQ2T2tHbz0xZGFMTnlfTjRLZXdPRyowPjtRe3JIP1VuNyNiZWE3fDdeO0NnVytmPHM9X0Bf
Rj9fJiQhbCUlPzYtCnpeP0lSPkxYSyQxQTs7WjVpR255JTk/OW9FRGJwSVVLaytxY3d6TWtSempE
WCVPWElBPFklKl5LWiFJcW11UTZ7TAp6cUQ3aH4hIUBIbGdQYnZpWGYzeGxWfG9FSkJiIWFWdSE1
JGhGTHF3Q2dfT2wydnh8eHNeMkVDcDl9WDhONmsocn4Kem5iX3MobVVTSm1PcC04e1JqSUozRiFF
OD0pMFEtbXZAUzdOJTJxVlVEJDA2VHImKHRue08wdnJAY1hOPUR0R0lqCnpXWEVMSnEzQCR9JEZR
ZktDS2h5YCR1LU5CWjtge2t5Y1Y7ZklCcVVmOGw5PD9xIXJoRyhQKiVEPGtIbkRRYU9wKQp6WTBf
UUBRNk9GMm5wNjdHKVU7NWV7e2diYFQtKV9yenF7TF9PYlcza3Y2KT1NVC1JVT5WbipVflYqSThl
clV5KTEKeiU0YlY9OHM5ZiVJOVh4P1RPJUZFdjFNSjRoYkxiWTwlXkdjKkRWQ2ZYSVBkRmI1LWtC
bFF2ajMxYV5nWFZlfEA3Cnp6RU1QJCV8VEReKTc5YURlZTg0N1cwaFNpZ21IU3wwTzRtblQ2dj9I
cmQ9WGtocWBpXm43Tm1eZCZRNXNjVjhROwp6PGExQXl1I3E1R2A/X1dLOGg9T35IPUVuKHlmX2R5
PD15MWNHKDR5PHZ7JCgrJUJzenBzMlNVdWw5eFFpT0pjSVIKem5PMVRvQGsmV1coazVvZmFWYnlu
dFlXbGNvWl52TUA3alZ1JHUwQ0E/Vms2fUBZPXhnKVh1PUo5IzlUZyRUJHNwCnoyLUU7eHJkTVE9
Vm15NG4zKW9tc1EocW0lRlpzP3woNHY9JVJgbn4mSktgTHBHX3hoPWo+bDA2RitgIXp5a0RpVQp6
WjstREtQI21NS2hIOSFsQUsmKF9PKjF4Kk9QazlfcWd9SUV5LSlMXmRWcVNHeF58azBtfSVMQjJF
bUt+ZXlxVTcKemV+ZEZnKEF6ekteV0NzXiljRXtvKEQ8U1IrflJpR3tDb0VvPG9wZyZhZXtUZD45
c1FfamAxSEtXIXNORih2Vk5xCnpEUEZnSjx3Rkp6QnYoaTZDUVlAN1BRfFRRWnNFUXIwQEsydWhq
KilgSENhWXV3VGlWa3daPmBuUjk8fVlkVHpaTQp6SSszNH1rZGk5YCYrcEZ2JDA1OVl0R3FgUWZ7
ck5fd1MrNE82RDFvRnhsbU5xODs4Q3s8MENvQi1IQUc8SnhwekAKekA3KCZQXld7ODJAR2oockRO
fnVfXkFTNXVULUY8ZFBXSCs1aUhyJT9qXnBpWD9ZbHdKdyRlVWNjRDNIJEJFUXk0CnpGRkxVbE1m
NFkyZTBaaG5WXzlEe19OOF8lLVVhTShlclVOdnFhek0/WX03U29xfVNrcUwyMnooYD85NlU3UyZn
KAp6MjRoNj1FXmAqPVdAaz80Zzw7I1dCRjdKRDAjQEIkRmRkJmBLST1nfkNlNGtTMjQyfTc/JVc3
cEFVQGk3d0NuVDkKem81QVBmQEohWDNOams+VllVcGs4Qyg5eW89VzVQc01mSHtXK1JKRzNZZ2J0
djslKHh+ckpnKHxVTU8rWT84fT5kCnpJMiswdnBEe19DNFg5WWllQmIoRXBsO005eFE4Wj11OTty
KDFQNVBEYU5ETjdRO357R0d5M0NMVkl5ZlNYU1MtJgp6RjQjSSlaUT1ZJUIxdG5zXkhGTzx5alAh
bT98fCRSKiVYPEV4VEtiNjxKVmc4ZCFOM2IwKih+Uz0pLWVnWjJ7I0AKekIzQ31RWnQqWU9YRmZP
TjdaZG4mTXRDbzQ8SzxoazdfO3BEa053ZHZBSWRsYz1tZDw7ZyFFKHs/PmE4N2JhKCZ5CnpJJDxM
e3F3SX5ISFl1QC1eV0klI21RVD5DWUQ+Z1FZJjNWJiooO3VrUnBrQCFHSykpI00+O34mTn5+NjF4
I3hjJQp6P3RWMitFM2hqQFRGTTd6MWAtentfdX4zYlJOdWRDSnM7I1NeSjIrYElPQTVmY1lEMChS
XyVlbnNVNkUqJCZybiEKeks9UTVxJXd1JTEyWF9gRlk2SkdJSn1TJXZqX2heUT1kKVRWYl42UWcr
MyNXSiQ4Jl4xZFN+dUdSVnYhKytad1JWCnpDJDcmdzdgUkYqeUo7NjZTJjVSfFB1KHVqWWRrPjhD
eThwNVlzX2pFWF81JXJna2s/QD4mP3BAZ3RWVVZoJnF2UAp6RkU+LVczJGxXSWM4UFlGX05IYTA/
endjTzNuTmN6a3ZzaHhFPmt3czZGb2ktT09Od25NaGE/YEhiVkVaY2RfZk8Kemk4SiRoVFk5Tmth
WXtiZDhOYVVqM2MxKSRqJjZwcD9meTtHUjB7byQobFJpcVUkOUUkU0VAI1ZUckN0ejc0M251Cnow
YUYzaTVOIUQ/Z29AVWBuRH00dl9XMXU8bmhNRVk2ZHMzeENBQSVGSlNneD8xJFJvZS12QWojTWVq
Y3xxUl5nYgp6WFQwNEhzUTM2dV5aejA+NEVBJXo+NUZKQVNrRE0tMCl7filVe1ZxWXV6P3JhLVAw
ZFRBQHVMNEA5UWJAWXV+VjYKekV5SFFHdnI8cilFRUVBbkxaI3R3REJLSlI2e2coKE0qZy1SM2lh
RH5WSldAaV9jYlhVMUIlaXpkT0Z9Oyl1X24rCnpKdHd0fHp9eCkoe29rR1h5NW5wP2wqUiVNZzh0
dEhtWFZmKk9NYDh9S1EqfEZFYWl4KTd1ZlplMjk8X1VJK1E7KAp6STZ8ODg2YUxob1BeckgpMWRg
Ryl7YTJnfWpNQl5lc2xnRjJPMWJ+a3BmWWxRdU0wPjE2JGhzcis8KHU3T1V3UE8KeiQtc1lHKlY3
JkM7RVokcy1rPSpmXyoyZjAoZn1GYUBmM2VoSndRMX5FbXZEUyNWa0xAWTgxUGkhXis5WE5sVXtw
CnpHSHwjUU9iUlE3ITlvISptPmU4eFZ+YXJ9V01QVit7fmh3ZlpYVFcjWWtWJlZUdm5SJCo4eE9i
UFhxS0hQSlI/PAoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0xv
Y2tNaW5pLmltYWdlc2V0L0NvbnRlbnRzLmpzb24gYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fz
c2V0cy9Mb2NrTWluaS5pbWFnZXNldC9Db250ZW50cy5qc29uCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY4NmRkYzE4
ZDMxMGY0MmY1MmY2M2IzMWUzZGY5MTY4YzE5MjMxNWMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Mb2NrTWluaS5pbWFnZXNldC9Db250ZW50cy5qc29u
CkBAIC0wLDAgKzEsMjIgQEAKK3sKKyAgImltYWdlcyIgOiBbCisgICAgeworICAgICAgImlkaW9t
IiA6ICJ1bml2ZXJzYWwiLAorICAgICAgInNjYWxlIiA6ICIxeCIKKyAgICB9LAorICAgIHsKKyAg
ICAgICJpZGlvbSIgOiAidW5pdmVyc2FsIiwKKyAgICAgICJmaWxlbmFtZSIgOiAiTmF2aWdhdGlv
bkJhckxvY2tNaW5pQDJ4LnBkZiIsCisgICAgICAic2NhbGUiIDogIjJ4IgorICAgIH0sCisgICAg
eworICAgICAgImlkaW9tIiA6ICJ1bml2ZXJzYWwiLAorICAgICAgImZpbGVuYW1lIiA6ICJOYXZp
Z2F0aW9uQmFyTG9ja01pbmlAM3gucGRmIiwKKyAgICAgICJzY2FsZSIgOiAiM3giCisgICAgfQor
ICBdLAorICAiaW5mbyIgOiB7CisgICAgInZlcnNpb24iIDogMSwKKyAgICAiYXV0aG9yIiA6ICJ4
Y29kZSIKKyAgfQorfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdlc2V0L05hdmlnYXRpb25C
YXJMb2NrTWluaUAyeC5wZGYgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Mb2NrTWlu
aS5pbWFnZXNldC9OYXZpZ2F0aW9uQmFyTG9ja01pbmlAMngucGRmCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ2ZGFl
ZDEzNWU0NTVhYTM2ZDNkNTEwYThkMjRiNzI2MWVkMWM5YzcKR0lUIGJpbmFyeSBwYXRjaApsaXRl
cmFsIDU5MjYKemNtYnRZMlVIVlh1JT0yQ1AhU1htQWAqSEBYYVNMNExldFF0TGpze2dGb1heUU4t
eHF4MU8lanNmRktHQWY7OHo7CnpBe3w3VV5qPzJEQClGRDZ7TGd2a293cTAxLU9RYnhkdVFnYCQo
O3xWcktCUE43OEljYkhxQ0MkRjZWRFF7blhTIwp6REdDNHFQelZSZzgjZSQjbm4pTDBqMiVEPkMo
OzIzc258UFZrWjljMTM2NFEzQSsxbz5OUHZ0Q3I1Z3J+Z2dhQXUKejVqeUwxKyMmezN6bnx5eFF6
Pit1UFp0VUlnYEVVbUIrcXIkVU9kJiVlNFVuQ0lKYD8yWWNjJV9nfj9gQ2VsUns0CnpyK09gNGoq
KVVqTDEqMj02ND82b3M/PHshUnBPfTc7OUxqOFpsRDg1TCp4cU1vZWApcExAMGx5STg4c2VuYkJf
JAp6WWR8fEpkP3wkdGxoO3tySzR2R2R1eiVQMHpEQE1wV2JjITc8fkdzbDN2OUQqVXVFaCY9MiZf
QHNMYGd5ZEZSZm4KelZaQG43P2BDdz0zVChUUzE/KVZtKkVLdHUmUXhGVFgwWVhsQ092Xn1AKX5v
R2Y2aSlEZFE+blJacm9tYCNISDMlCnomKz9ZSVVST3ZhdSkockhWZlNnUkVkTDhEbzZmIXsqcCll
ZDREeT88VzhPQkVuY0J2RS1xZy1AdlVJLXNffWF5Tgp6cFdEVzNUPj09M2d+YChQYH02ME9sKz50
PG8/TkBTU1oybmZQQSg0a3FuQTJFQXc9SVZuZ1VCNTZULWpXNyEqRmEKejtyIXw+PEd1O2ExMzQ0
cEV+NFVkUEx7KD1BKjYlVlpfMTlfPFUmXkswUTRgRFlCT3dKVjZiIVF0JFJfdXFxT1BZCnoyLU03
cSFZR2swKTt8TX15VGopVHBDdFRNTHxoeXtoYCR5N1RQcFJ1VTZCQUdFeDdJWEdhQmlGMGZfdWFz
fTlsKQp6PCZMJk94JmckMDJvekIrN35IclUwMXBMUi1mdHFVP2NvWTJGTXRVTUNqYmlyenp7UF5U
O2hNdWZgOTU0VjZAT0UKekRfdFo4VjFrPVVOZDtnQTVLPUBycTBxWG5hNFJHTGswP2JxRmFZeDF0
YyhtbSRQazhiS3c0cUdrRWwzPDBUTXEpCnp7JD9GN2BlcHFtOTN7Vk57VTtvU2V6Xkl8dTheKWYw
YHVLKjYlXlZUaGd7cWx1UiNlMDJxfUVgTkJ8NTE7Sj9EYwp6MEFVYnJ4cWslJUM7YVhgNnBlQ3N7
a31xN2ZSRyo8PyY5Vk8kQSE8ejh8UkVKMDFVPSFRM3xPNkZsY3ZOWGYqJmYKemEzP3FYZC0wRH5n
SE1sS2s2WjdQbT8qKXREZTFMcXBsZjdKQVlyWEchdE1IS1NBbWNscXtJTUdRNV56YUEkNUluCnpH
S3omMTkmNnFPRE1uXkFrbncpclNeQ0p0cGVvSVY7VT83dmt7OUFQdWhKMXpidXdVbzJMTGBTXygo
fkp7PnNkRQp6N2smbHJ8Q1hBKyh1PlJZWnk1bXBndzhELWhKQHR0Umx4O1U1JiVMPE5EcTR9cXor
VyFlPWlwNGszOThzTTtPQWUKekhJU041PWgqP2s5VlE8TksoQ2JRTUgxfUB3TG1TUiZ8cHB2Qn5s
Z29iMzZ2dGRpOHxSRm1AfHRkYUM+UDVKTURPCnpiWHFNOStEZ2leVzZfUWo+JjBUKjxFYmFETWlW
M1I2KzxKbz47Nk1rMVh7PVVOSXFaOzI/SXM1NEMmWEY4JSluJQp6PXhFdl94PHA0dlZAT3koV24p
N0UtQiUqJktkekJaTnFNZj9RbnRHJDctKEhSJTNyNiY9ezkmODVZRy0jPFR5aD4KenNYUVFsPDFR
IVRFWVU7VnZnWFVlcno5VkRsNlp0ZSFOTHEjNnhsRD5yPC0wbj9kSCQlUmt1Ryo9QTZsNUdVfnFr
CnpVTmpAUlQ1Q0tOSUYlRGtsNGJmQklCQT5YTX4xQT9RJWZiNy1RKGAtK2tjYC0wSFJOXj0kei13
YSo3YUVyb1gldgp6dXwtNWN7Oyl+JUooPyEhSystT1EhMFZhcU9lOUghOHNnY3hwfnY+SzN2RClz
bmBPRU8yciVFbiMreV4mVVlnalEKemFfUj5sIz13YFRONkxnaUJqKiZtX3w7O1QpbTVYeElsRl9w
a3FPcWp4K2xfWUsxY2VTb0dhSzJgUkVMejM4JDQ4CnpMTnlFb3lCeC04U0lUT1deYTt3SCYmYlZB
eUAwSSkyKTBORyVFekI8dnhZakVDcDNNZj1BdyNQUyNmZUIleWJtdwp6VFl3eTgtYX56PzN6Z2hV
PX56MjVrYjFAXzgrMStXcTZrdVhfRjRXajRXLVViWU1OeE1efm9PSD4yJHJNZU9HJVUKenxDN3Zt
Iz82b2dlZUgjWjZ1fVg4KWdkPjY0QzRmP0RUNHpCclVFWEJiQ0YlWG85OysmPVdhcFpBMG53JHNZ
Y2RACnprfHQyUk0kRitOPnFGJGZZKGZYN1leIX41Un4tTStFbXFqKSt4I0lMbTEoNVFsJV9ucD8l
WGJRdFRoXiMmM2AjKAp6Qkd7PmM9ekpVKjx8KENVa1JYVk4tfHtSPXBvbEIrSURqQkhQP2U3TzV3
Vn51ay1aJHJZazhTcjAhbiVDRnJta04KejJVbWpyQWZIYnB4OSo5JW8tcmw0VTRQYjxpYUhQfk07
WTNuMFV7Z152TTBae0wzYzQqekElbTxtb2BPVmtkRTF5CnorKj9zek9NOyViU3VyQXhFPHhfIzZY
KXx3eSFRKlU2dCQjeHUzP3l9JGokQl9KfCs3RTVJdTgzPXBUSVVGO080PAp6PkBkT0d6PiFpWjdJ
TnJeaiE3bDJpJS1aSD5xbj41RDtaPkhEbjJreUY+ZXM/aGdmX19CJHNPPUMrPC0oQnhsfUsKelFp
d0M7QVV0PX5GYGhrX3M2YVYyandZQStVNXNre29mK2FZVk9qOVVtbCM/dVBscCpyUGF6RThnOXZy
ZHorPGImCnoyQVlnPjt4PT81Sz9uRXA1Q2dCQzhGSWFsXmBIPHhtbGgrP1dNQ088WDtQWn1pZyp+
bEJFPj99VDdVVH5pfGdJVwp6T1F5bXVWa0lPTXZfc0w9Znk8MyZyI0xzZy10JiZydWl2OT5hTjl1
bVU5RmBJVTxxS0loLUdXMzxCRnAmQ1VMdysKemQtVn4zIS0rJFdqKXtEcHszUTY/MlR8Pnk9UChS
PUQ0bG5jRFQzJEtnSkpwaVlBbD8kNjZ3YEtJVCY+fmN2OHhQCnped2I+SyV7Wmt3WXB5MT9VJD0m
JEZCIT8xISU4P1owVHd7bzFYLTx6Kz9AMDxicnhsWGt6MTFMQDhyRFl5Y1Azdwp6Jk9VZVBIIU9U
eW0yTTJIUVN3KiE3bEl+PUJ5VDVBdy0rWkMjWEJZfkM7SXxuNH5MUkhsUHZAQHhoJD4qc0RGRVEK
elR1RyRlQWxJTjlsdjhTdXI3fjZpS3tgWkRJVzs+ODVzcFlqTD9HXmU2PkhXOHpFMjJCczVsUVJr
WHRQNjE/Rjk0CnpRc35SYD95VzRwUyRfUjlALXlmUDZxMCs/bSQ9eHghP3NZZkx4QlYkTz1oYGdT
IVM3TCVSY0l5YDJlIXE3dHkoIwp6N284WWc5VVokWklgPEFjalU1JCNYPldlfG8rcyZtKk0tK0Zp
OU58Q2k3K1gpUCpXY0BLdEdVUD12KVp2MlJVIyQKenojVD4kanNec2FWekJ2RyZrU3QzaDNNKGJh
b0FGNlJmSkZGcH5EfUlPVlVlO09zUHpAT3FaR1RuVVkwWSM0ZX0wCnpxXyhIZHJwfUFEbWZJT3F5
JipCNEhKKlFDNG9YVHs+KHNMV21QSldzNl8+MiQzLXJrM2p1bEI0VFJrcmB3OVVDeQp6KV91ViZM
Q14jdVV0d0NJPiF8P0s1SGJ8OWMmV1hmQzhNMkxvUzluKHR1cVB1U3BOeXwqKW1FI3Q+SmxBV0w2
eksKejFELVF3YiooVklzRTBTbEk3Z35RIXNfanYkVzU3UDZWQjN6YmhRTXZuRCgyeCF+TnJXbVF+
bnRFVmJqRDlqOW9LCnpTYW9aNT1AJW9UN2I9NUtCXnooRmBRPj0wOXE+Xn1NO1MoP0dtSjQ8QFVR
YWczTX0pcDhTeG1BOGFrSVJsXiE7Sgp6WmMyNER2K3syWmIocHApPndZI2lfb2xjJlY4V3dyKW42
KnJ0YU9aX2BjXmV8bXU4cCFpMVA/Y0NMUUojUnp0SGwKempQYztFNCl6fjd4NGJZXyp9V00oT34m
UVJee1ApVGU8SXplbzJVRDFjTWNVYjt8NjJEeiRKOWdvdkJJfGJpQU9vCnpWNj1zb1lnV0poWHd0
T3RAP3EhQXBfcUEoQ2ctTkhWZDteUiR8RjhuNGNkNVVST2BlMSNDYXd4bTNlc2IlaUhtewp6VXNm
ZFNBPVZ3JV5KVDhmTTk5UipUJlZTXkUlRiFJaG8yQ2djcFEjeDR7Z2pKNGpzV3JCdUhMUkVLdWY+
c0VgPHQKeiR4c1BYb0Z7Y0JYPjFeRHNKX1EwKU44P0UrUnMzd2FJRU1OYSlVeVErVSgrPythKkRN
KEhFUjYtaihgWmNmQ0FHCnoxUTV6ZmljUXQzdjJERj0oNU0mJjRGKnFAYzQpS20wUTlEXnVYM2Bv
TXpTSGxRUTNAMnZ+ZWB4bktUMCVeRj8wewp6NHxLc15AMGRvfF52WU10PWB9JFMoPz99MXBWNG4t
M3AlaFJhVFgwbWNYKE51KnspMmBva20+dlAleGBtdlNhYmkKemJDelQldXshSzFWWk1jTEs0I053
QTkpOzRre3RYeHhKTjB1JHQ9UTN0d2ltaitCNllOez5gTk9ZbTJSKm5TeklMCno0fDh9IzNWSTU8
PzFSaHElbGowN0BXQGc9R1pBVTc4bGd0ZjlGU3R3TkJlO197UmBRMEpASn57WmJtbE1qfnslfgp6
ezZqVUdCTW9AcGheb3h0XnwmbipuZlh6Pl5XNUNkT3pNbkYkQ2RXJl9NXkxFSGUjT2N3elZHTExY
Ujg3KSpOWXkKekxrM0dzTjhqREBHOzY0dWBsRUleKSowWmVJPG5FQihoLUFYb15YakFAN0kyK1Uw
UTJ0U0dHUmFxVlBeWmQjWG1ECnorbDBvYyszQkx3Plg9UGd2QlBMR3lMcnphaD5vdzNVdHojNjND
an5rezxqYXRJKExJdFl3fnZVanl4d2wkVVZQfAp6RW1tekNyWFk7V00/UkhJbmliRD5aZT8jKFJO
cjJ5SEdyR2t2ODEoK3dUPitwZSpVXmZ7aU9xUkFiJS0kRFRwYUgKemIqXlR+d18tS0BiTDszKC1H
cDtNQTdLbn1Hbm91NEo8SSFtd21tSiFWdE1DZ18/TXt7am85VnZySyZwSDBFKztuCnpSbl5VU0VI
bmd+KlpMdldlTCQqejI9V35BUTJhd29MZCZiXkpGVGRiJHYrZipGQkMwbWlSOFQ3Q3l9QCt4JXN0
cQp6cEtVI1pgb0BUTnE8YFRlKkdjQj8rZlQtayMjd2AzMXwjMClpcmYyWWBjNW5jX044Q3h6OUp4
LWNJdmtpeV89RisKel9SJkBZOHtkOExOdCRHKT1pTSFabVhPVjsyKiRBTXc9cHRSPHVrcU1DOFpf
ZjlZTSkyJXtTa24zcjFePmpgZnBeCnpZKWQ0fnIyTnpVWWdSKX5WZ15+T0dhZ3kyK19oaFB2K2k4
OD12c0YyWHU5fThFdmYoZnExbG5wXy0+V3w/MVImRQp6WDV5JGJoaWloaHpOaEEycSE8MGlQa1A3
LVh3NzlpZUkhb29QT01nQHYkLWY/eWN2YkUjVX0mJUxwQjk5SjFiOXoKekVVeyhid3l+aj1pYkFK
SjJRT2licX1UIzFwR3Z2UDYwe2hLalhzRFReTGUkP3l3TVN6KyYzTGskTWZ5JlVRJG17Cno9M1VS
RDhlMnFyKH1yV3VhKkN8X2AxNHhIIUAqdFdkRnpGbEsyUTdnWFpleGlNWVhjS0tfXio5UnkoY25p
en4ydwp6U1c7JDt0ZndFdkBzPH4tdig0UFpVaHd3Tz8+cFlfK2ZlLWVSIytTP3tBPCZUPz1KOCVU
bm5QNnNIZ3lVTHQ1aXwKejdXYGhgPzNXSnNLYmw8ZCZvMX0+djhONXVId2tDZnp3fDlwdllvUUp5
WUtVV0soMW05aE5vS04/WnZVWUA+Rys9CnphITAxdUJMZldiV3I+Tl9vaHV5T24hUXkxeSFYQ0Y3
MWdUQXpwb0o+enRgKjJGaTNXIVE9bnp3eHk7VGpRfD18dAp6eWB4O1FEVjFvPVkyPVdHI1FKVFlP
ZE8hKkdjUldjeS19enNJbDduKVkhcjhFZjQ9cGwkTGVHS15AR0skT3U1PWoKentMYy1mNlN9KDMt
Jk5vJUlqSip8amV+KTFiRkRlOC0kdVAtPTB8Ryl4NW1oNzRhKW4wbE5YZU4ke2ZiWkJoR3wyCnp6
fVBDNWlLMTlTWipxX3lYVj1lKWhzSzA1al8hKj02UzIpdEM4X3Z9a2AmSClrJFU7UDNLUUMhXnF8
cUloYjF0Nwp6PkROPTxWUnN4PFB3bD48PT0oMTA5bj4zQW5HNFk+K2EzKmFaITdHKygmQTQycmNR
XnlpOE89NlQkP0lGYXVPUSYKelF0VkJMQ2ZQKkVYYjtQVm1EMEVMbT9ifEZGTmtaUUhSfV95UF97
WkZgYG9KaWJscyVtdmRNfnwoLXkte21jPG5fCnotUXI2PVlFbGdvQl4lYG5zQmwjc1FLQHZDP3Fa
LSgyWmJ+YFBGPE41TWk1SX1YSV59VEw5I3g3Q3VRS3RoNCpjPwp6dDluNHJFJkFpeFdYaUREXipR
eCpYbGI2RWFOdm5hTU9pd0ZWY1JEV2MwdDR8aUhhdmFRKCstMT5OMkZQY1QheF4KejQhWF9Ybilj
RT5sUkFYKStOZl9KKjU2ZEViI2tNcl9QYlBXXio9QlNZUUxBRk80TWl6PSFvJnxmZCE/TlB4OF5f
CnpHWUtIeytuP1VsO2ZBVjNlbF9PMEBhVmpLPyl8QSFHPkZDMXRTaCgtbzZZTUxsbHF8UkwjcTQz
KXBXQ0IxIVU8Tgp6R3RZOX5XKDc4Rjt0YnYkdmY7Pk8tSzxNJU9wX2xecn1OVzBWamc1TkZ+aXwr
OEJkUmZgQTR6T015UHBLY3k+amwKej5jM2pyNCRCT0FHV2I/cWpQUD4tc0U9WWghclFLbDVqb1Vf
R2RjNUdveyZafDhJXj85bWhpYGx4N19Ic3lpSXp1CnpXfipnRnh+OHxaWT5BaWlAVmR7OHhpc3hE
TG5XKFdhfjEyYnQzUCo4Q0syPCMyXjk2LSpkZTIpNHx6dzI9fm5xKgp6ey1fVXduTGJJPFFnPTVI
QmReJT9LN1RJNG9HdGxRemA7e1M9Y0lKc1olZCFAYGhaczZ7WmA3MWAkWmB4bSM+U2cKenlfI1pj
MzwkbTV4RT4tKWVKV1RaO0xxejFPaXp8YzdFRUx9aXhYNzAoM250WCkzQiZLdG5QflEtUV5Id2JP
VVpOCnpeYkhpM1J0IUJobDtsTXZ2cHQmTHFCK3BeOUBPWEEzY21yJnBEYDxTXjJCemZxNEZ4d0pH
MCFgP25pRihoRl5fKAp6T2tvbmw2RE4tZXh9dF81I01eQyNJbnh7ViolT0Z5Pmd5RUY+eG59SjtV
VUJIOG1OPnRkK0BmfE0xdkJESDlHRzYKem1uJTt3WmpzVmJlRFF5RHp1R2RiQSQ2aGE/RGlEekFA
OGlYP0EyTj5gbDEwP3Nfe0RucFlNayR0fFczOWVeV0spCnpySXx7ZFB3dmZOcXNWcHY3amZAOTJ+
RDI1RTd6KTArLWsjV29wMGFoejhoK0hZVD5vI3prYThjTnJ7aTRyKWA9UQp6NjYhZml5bmE2MlNI
YnlsKklVYEdnVzdBYSlxVkZRX0crYFokMVArbGozSnc+JXdBRDsrZyUzQm5SX1AxVTleKHsKel9a
Uk1jVnwkd0VyfmU7aT9IODI7MjA8a01FTG5KPjtrVVo+Z1E1QWV1SG9EQVU7WH1IZ3BiPlFRI2cy
VCN2TWxrCno7a1hiRGR1dWx3WFk7ZDQ7K2N6fCt6JEJmPGp4T15pZnwwdjMxJDAoT0xGQH5Be2lq
alp1VGVfZkRsK3ZeellDQQp6cz5hK207Wl57Y0YyRTF+MV9eP04xO3FmYD9yPTI1Mll7b0F6Vmw2
OTdAantUe2wpb2tEX3NgYGZndkNXNyRodEwKejUqQ0lTZ0ZzeGsmdElCPF5CMmMmU2k0KXtfKHx7
JmVvMDZYTUB3UkdZZnsyZjZXfH16bEYmXypfMX1PMDwqNjRNCnpYK3chKXc8SVkrZTt4cEZGKTxN
X2ZEUGNNT2lUcC0kQUxjcEYyN19UUTMrZ1R7d1dnIUw0TWM2dF5lUDhBV2B3KAp6V252UHpFZEpB
OzJ0KlJNe0N+PG87dC1zbHxCXntVYU0xYTtPITdCLVZqeio8byZ8JGBVeUJJal9jPXIpTTFKIzQK
ejQxfndZS2ojJCNpflk3MUY8fiV7cjIzYmhGeXdEQnpAWHZ3UER1MjNAPiRwMzJiVldWOTRDaUQ7
WlhYTW9LJG5NCnpMRSN8I290amZxIWghYU43MUJ6P1RIRlE+bENTfEdBWXZkPHVyPE84MGsjcGJo
Q21RLVllXloofDZLKmdSTnxvRQpXaFFVR2RJfXBTfkJxUys7S3hMUTs8XktRIU83PzYzCgpsaXRl
cmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fz
c2V0cy9Mb2NrTWluaS5pbWFnZXNldC9OYXZpZ2F0aW9uQmFyTG9ja01pbmlAM3gucGRmIGIvU291
cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvTmF2aWdhdGlvbkJh
ckxvY2tNaW5pQDN4LnBkZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43OWIyNTAxMTM0YWI5ZTIxMmZiOGIyNjdmZjZl
ZmNlNTJkYWU3OTgyCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCA1ODg5CnpjbWJ0WTJVSnJfdzUx
OUpMe3kzdEF0SXJkMVFILTN5KkVSYmp0UFZnITRTRjtRSG5IYUI3ITFQMVE5X0xsLXtJRQp6Nlhf
eU5NNT1WQCRXS3QtXkY3fk1mQnA2RU5eVXVHPyMhSUNfbm1jU2dZO0M/TD9FSVAwOHFvIT5lUEpC
K1QtXlAKek8jbW5tNDgpK0UwVChYPCNkT2ZfNG1kfDNqOUBZVmltNXJkOz9QKmEpZklfRHREdFEk
YzQobFM5S2FLWU1JK3ErCnp6TkEoTGlwfnZTeTJAUTlQdG9UQ3VVd25xQ0Z8OFdjbStxTmJIbEdY
NCR7eF9VNDBYeHB0a0NtNl5DIThed0NnZwp6dVU3ZV9Dan52ZmpqVFZaa0JgKy0zWFpDdDw3WWo2
Pm9ZNzJZU0ojTVI3SDJuJFEtPn43NnN+NFhlM0FVJnJ2KHYKel9Rent6JW5JSHFaN1Y5Xk5Ic0lM
NlBNQyg7cmVGeGopIUFNKnxRMm8/Ji1eVVBPTDUjO3Ulez1ATVZ7K2FhWX4tCno0WXkwb0paVU9R
TWtWdUNuYW59MkRIblpUb241U3BUNDtXIXgpfE8tUSUpYWJLUU9FI2EoI1ZoNVp8dXJFTEE1ZAp6
dnA0VjRecXQwTEpvXzlFKF9aQy1HbVh1MV99VXV4e2Q/WFZnKndzI212R3NONUBPUGRNSkpMOytk
YyZaWn47YzgKek5AaWYpRXxPTGo8NXomST1QM0I/WCpHWiktTkchc3tXSVJTQ2dVR2YqekBELSl8
fWFSbVRNdmtqRCMjfSFZXmo5CnphdmZZTj5sb1BuJmc7OX5He3JMZEUqYnx3eVc5T3JEZENRWTFU
cD1AdEF3flR2NXxOeXt1QFh9ZWphRmBtPiR5TQp6QFFnKmY8QTQlQjBXJn4qViFXYG5YaXVRelBs
R2JYOVk8KlExUUowZUFnWVZEYjMhVSVlMVI1VmYmbjU4NnFtRkQKejVGcV9FM2h9S1lEKEdQYHd1
V2ROKDFJfE9pVzwtZ0Q1aXtZI2I2Q1JraFcrYmt0QG9jNVRNanl3e21ob0Y7Zkp9Cno4RXVPQFkq
Qk5BMEh1R217TUl8c2JrekdWcVFNV257KiEyOEtmXnJnU0lwMjBnKnl5ZjRURShmYUZURSlkSF42
bQp6RntRKFpMP0FGQUBoPjMobG1IV15gKiQpUiM5I14wdDc5PTw5KX5rRDFkMTc5az94KXpOSjlF
LXtScUpyMHdFQmgKejdlR3VDaHtKampRbVlOTE40azB2OFVHS2AzbUgpeEBmKkV8S2BBRktEUSNg
Uj1jeVhObDZvenFZcWUxeEF8ViRrCnokJGAqZkpyWTRORW57amJud2V3KUpIWihsN0lyTCU8PF50
cWoxZFY7eE07ZkMhQ3N8MCNeO2l7PU5MI0RYUENHRAp6V0JAVFEjOGdTY2otV1k9O1Y2Nm1IKkVn
Szd4RnVlZW45fkYjaHB0ODV7VzRpS1hgWS0qQTVnQEwzPXlkcTdCclEKentgWWt0XmA0S0I7U2g2
SlNDdiVOYCV+T04mXm50eDRlKjFFMWB+eVR4YUpLI3Zkfn4mWnh1PjQjKitkamMxRT9OCno+UzVm
cnMqSlJeWmxWVGdSdkdrfj5oeDdxciQoWSZYcU5JfVlvalVxJjFQZG0oPEs4IzRvbW9mYXVVNzBu
LXAoeAp6cmxkRVo+ODZafV5MM1Z8UFBhOHxsQVUyN3I4Z3o1b3ZecDNQflREXj4pb3I4Ty1fRVEo
TndndEQwOylMVnB6Q0YKemtKcSNSQVRXK3dOfTE7djJ8JT9eXjVTKH5tTU9Ca2hERDk2O3MrRygp
KU5LOUxtfWVLPWA8UDd4aEVUNXhOaFdwCno2ez17eHBUenFtb3oxTTF3RyNSJHN6UHJ4MXZIVHZN
VWlmS0EyalplZDVzRVBXdSUheEdQVEx5KTNmelpoWGwtKwp6WXx9bz9vOS1HZXVGQS18N2B7cUlM
VmRSWlVXdWlUKz1lP29CSnNfM18hMj04dThHUCVJZEk9O1lOb30wWFFqdysKejh3Qy0lVGR6QkQr
Z0dQK3lfb0l9bkJ+UmAlc298N2tlT1N1VzhBbFZqJkktMGBvQjdFKjk/dHVVTl92QVpTbWhWCnpV
ZzJIbmRaWlpqJFpYN1k7a2o1OUdzeTt6YEdkMVgpcnJPPSNjc3pHclk0PnZtVmhMeWxxQUtZNTcj
KERVOUlDQQp6S0dYNWhNbExNNGRYbEVPaHppWH0/V1d6dHlzSFU/WnppYGI/d1pKQ3YmYVhYKkpQ
NEZ0ND9MLVdOV0xteDZ7IWwKemI9bUUyRzh8MFMha3MhPT54Q2J0KXZ+T0Ylb3l2PitAJVEpY2RR
N3g3LVNrTlk2bDFvPzMpTllCZ3NkX2RPZypKCnooYjNDPjFSbnl8RTdoY0chTmAmKnBDeypXbS1p
PmImcyM3KzA0PiMoamA/dmZKWSZURGVAeVJpKE9PMmhQdnxJZQp6OC1Dck9pP1BGa0dLNSgoJEFW
cSEkV0Z5bDtUezheTDg0JFg7Vlp7RVpiKjJManstQDhaKWgtKC15O3sqQWFoY24KemMlPiplTkNI
clY0M2NgXmFgcXRVNGYyMGFhcHxVeyQxekthJWVCV25YejZhS0QqIV80dzg1bUtLfkJeK21sPkVj
Cno2cmFVMVhQcm5ePlN0ZyNyfWs0OylSU2Y7WiZWSkNXciRiVWUkVl4jak5xK2o+QkBTdD4qc043
PDx3VFViezxvYAp6MlNTaFNsajRJPC1ZNHJwOXY+dW1iN1FEYmhKI3hEWlFIbnRGVmpPUm1mR1A3
dHh7JD1galdSUzZZUj8qIVhZK3EKejZRfnRoc0w4dzRPc1V5ZFJGcTsoY31QIzViQld7NUJGan14
aUtXa0NGTkBaUXlaVkx2U1hlc3B7dSQ7YioyeXJsCnpzMG93X3ZMQkBkP3o/WSQtJGFNeXRFNEBI
TTl9dWxDI2IlYypgfEVZPC1LVm5QZDxuaVgpdzdHYkgkPUM9X1VDZgp6YXpUY0p6UFhuNUdsJDNa
KGxlSWc/eXYlaWtgbl9fNip1UFZrNUJOZl8qTSN6R0FgWGJRUmxnZ3hefUpfNVhjZTgKeklUcGoh
UktwaWJWQH4wNl5UZkcoS3BzfmZCTCs2PVkzbHZwbFcoRT1LfkU3bD9vYkI1MjF9SHslUjdVTG02
e3k5CnptbDdCP0x3USZYY20kRypnTiF0dHh2aDkqZDheSlB2fGd9TiREVDEkdXRwVHtxeWNSfUMq
dE14PygqfDhCRDZTRQp6bTQrX0N3YU9JeTYjU0gqNyN4NDwtZlF+b2V0RGBucURscD9nJT92I2tW
c2xmbnJ6S2EkY3VBSG9LRmU+QT9eKyYKemA2U3RocnQjVUYzKUszTnk7bi02VSNDIUs3P2ZGUGxD
Q3lVezhselpRI0I8YzVwXjR0ZihsMHczV1A+fFAtVDJqCnplOTArOXVFSzJMMmhmdnFZKVU7KHs2
M1R4PmxSPTVpMmV2WnQxZ3diK21rVGN4WHZ8R3dOOFR1cClJRVByI1BuQQp6cmkkSmY5RDU3Q3ZM
I2BfYFhua0xzdjtfODRmP2dMWXFEIXRAYGFRMkw4VTxBd3hHTTx3TTZiamAkVz5qbX1mZjEKem1f
RWs3KU1zd2I1V1FlJFVUMzg5a24/VnpYa0soelBNNlE0dTJkVzchSSE8VHh4KF5yfEkhYGpAQVkl
Q2F8dnVJCnpZfUlWNll7cU8hJj9YcGJpaER8SCUyZGlVdzdKO1BvYzErXmBJUHplWWluPn5AP3lK
QEoqWCVXb31PUnVFa35xVgp6RV44IURIc0FKWGsqUCFHckp+TiRSYEhAMVFpPiYoQzVBcHEyeUhQ
X0ZgRjBxT1grZ0BZNThlY0hSPzRNZiR3VkgKejEzekFnUkQ0a1BHKDk0ezJLZms/SWJuUExTektQ
WFY1V0pkT3B+PGpvMndCa2ErNE9raDJnMjFAdFY9Q3hgdTxqCnpxZWZUQ3lOYkskVClzTjtMaTFv
MSVeOEtDJSo+dnZeKkBIIVV1P09TPkd4bjtoKm1iekclfVRXZ3hOOztvM05xQwp6eWZCeFVmRWxI
IVRrJX1zUFd7Sio2YztPN2R+Pk10cS17fVdfUT09UWBNRHh2LVprSXdHQVVNdEJnXz8tRCFNbDQK
ekhASjZzY09nYD1WWkxFaV5xWWU/Wn5sczRlQmE2V25UZ1dRbThlTjd6NXU/TEooQFhWc2IteDVv
eVIqZlkzVyMmCnpTJGFqelY3c3FRbHlZRj5NRDBZUVk8eFleZHlSKF5DKFkrfitJMHRfckBiNTg4
YiRfWGh4U1clZy0mUm5oKk9Wagp6ek1HUlUmREtTMGVMTHlKPCsjZilPNSEoQk9VX0Y8YXU/Km48
KVk8SVM5QDNJO2w7TClgKCpweEowb2lZJWhOanAKenk5ZiR0aXN2KmxmR2kzJTNLSj9oVDUrMEZs
d0s2fGIpPENfSEBVPDwqemoyUEdMdEZvRFNMLXBxPUNee0czfEpzCno1ZnozJD1Vd25DSFRKI2s+
cTgtZVFkTG9Jc0wrVU1gT3U7czhPXk5DPzQjREktbCpFQXVCI2ZMbnh2fG9XR1pZewp6XmhHVm9K
UE1kQyVnbntqNnV7JCsmRTVQa3E4JkU1QEVJXzxDQE51anVWfj5UX1ZyWTVUVVNBPk9gWHxRS344
cUEKenZ0dFlnO2l1b2BQVSNlXittIWlDUTRBemhnemQmcEh3akhndVVLdU5fdT9wJGY/b3g5dDBY
bThoMStUdFhma098CnprfDdqZGs5KW5jU3E9SjxkcEd1T3JocjZsY1cjR01hUGR9Z2p9aXpPUTdC
fDNBPElgS1J1OWJ0RTBAMT4+UlU4RQp6b3VTWWpyXkR9UVc/eW10JkpVZ004Y3txQ0spMXxqaT0x
RExJO2YtNS1zIWlXe0pRPW48JUBnVSsxOW56LVJtJVcKem4yKG8zd2ZCJEV5KmsqVTN3P2VfZX1V
ejIqKEQjVnk3R3pkKSQ9aUtLc1N3ezx1PGpwWGYqcW5kJkZxM3skdV5aCno+TU0+I09KQUZtJTlR
amNzemY/MT12XkNLbk93aCgqY2F0SDQ8flYzY1lqQjxlVUE4eTBEWCN8QTJZKlctWDNZKwp6Mj53
Pn1XYUcpTSYkdV9XJiE+XnVALUA/Qmwkckk9YCt7Kyt7SGdaVWpNYjhnJUx+O2VOUTxqaVBCX0ti
I1QxSl8KemVPMENQIWRibTlYRCh8bGglRn1OWXQ+dnAkK3kmeCZCRnNWVntVO3hxfHhNIVJDMWgq
OUY+N0JufGR6IWlmKWFfCnpQWlE3VXlYR19JJTQtfH5aMzAha1h7Xkxgc2ZWYVBYP2AyeSloRStD
QW9XITB1SEBWM19APFlXU0RQe1c8S0xBNwp6UFVwPylObzFDN1FBblNJdVk3TGE7I3p0e2NYN3hz
MHs/ODVaJEVBMCYzcDMqXllzMnR7byF4MkIlSzB1MD4pLTwKel5yVzhjSlMhc3E7TmFTTilKQWVq
KEtgcTJ1RERMN2hZI1JzS0cjPjNubkc0MCEmJDtFVCprP2o3a35NWFQyTlJwCnorN15gYiFnezMp
bj4kPiF5Snd0fj1USEUqbEVKNnF0RzxRcU5CNDc5SmkyR0lhTlRNNF5eI2xGdFZoeFF5fitHTAp6
KXMqPEA5ampmaihUI0hhKVNaSj1jSmp6JEpCeTsjMFNESGZXTX1jQ2BgdUt6QyM+YiR7aVhMRV9p
WXlAR3h6YHEKeiFBSDtKXll7QzwySkNhSSkpeVdSVDxJI2g/R09gTXN3e1NweGN2ZkFQdVoyKkM4
U29ZSG05RGktVzliU0hSQXRyCnp5PllvTUR5ZTVPcSg8UCFvNldAVHl0TH4reUh5VVQpYG4lNT8p
aFlTdDxrNXxAU1hrKndgc2VYRkZpZ15PVzhSUQp6cWp9Wng4JHRXJnlTRDRpYWtDNEVFa3Q1a3c3
a3pYbiFRekRVTmAlJVcxR1FpeU1JPV5oaC0/U3o3Pn4qaCN3V2IKeiNPKCNxTSVhVUJEbDAxP0o8
KWMrIXk0OEFYbSNXUmBIJWY4VkhhPiVAYyV6Kis3TSVsK3c4Xz9lazh6SzBUckQrCnpBTnhlSWwm
ZiQ4NzIwb0BNeEdSPlNSQHA/dSlQfVVWXiVDbU5VJj5QO09XJSlLI0xjPWA4aEpMVDJyeUlOYCg2
Ngp6Mm1pVyRzJEdMekpya2RLWmhwQzlVcSR8UClzaHZOMVVwX2M9TGhKbllpcypzK25ESnope0xP
bk4+djVCT2N8aGgKek56Y30mdERtfVUtXz41Jm87fUJ3ck96aCgpST5KRXF3fn50QzgyYC04Vm1W
WTFvJCVGcVUrTFNPY31je1J2V1pCCnpMUkQ+Mit6VDIldHJBcV5KVz9FZkVWS142UldlVCYkcX1s
e0wlbysjSjAlJCE5bStEaTF5Zkp4WUozYyo3MHlkawp6SV9YUjRkK2xZSSp5Z3g1eTxST01wOFpw
PWs/SzBQT1RTaTE9VUxAfHZhbTlCS2RJNnpEWlFlIztVS1M7WFBzeDgKenl5I3huN3pqNXxLQkJQ
SnJ3eGFYdEtXRDVkbVctZkhDOGEoJjlROCZAKl8yUj9peikhbCpjblcmV0JXP1RzM0ErCnpTPjs9
KWhLWU1jPDBVfXtPe1ZQfXZrTyorYERncSFXJE1OWG1XeVhGdz4xbylHTn1hTComQWtVR191JU9F
bWNrZwp6TmVwPzdiXmNqcWN4fSNsYV5KKCNsYFJoNmo2bDRyakMpZl9mVXNBIW5ZQUBvUyVMTjJw
blojeXFFcnNrbWlIM2UKenFOdGJCQkBnezQhYV4zYjxTMDM+Q2M4aF8/ekRibWBHRyFMVyhPZj91
ZUZSP2RSQE5RJlgxK3Q+UUtBWGQmZX1XCnpePTdnTFMta19XRSF3WGU1JWkjVlQhPGx1TyQyNCFg
ZEhWMVV0S2ZldnBMYENkIzlZVFpjUCtvITVsdFQ5bD1GaQp6OEdecGlEUig7RnJnK2BgbVRIeCtn
ZjJYMDx4PyEhc0tsakR7eiExMFlBfEJuRiNYSVQreFdZSyQoKz0tPXNSZ18Kej5gM0dybVZAMHY7
byt8QUF2JUV0ZmVvbGs/ZEt+RmdLYDV0JW1MKzA7biY9T1RFa3Mhd19ERFJrVTdgZldeKXN+Cnp2
UUhWb1c+eWVaVF83QUkqPnRndWImWFFEWVBEJWh3KDNKKyhWUVVmJklTSzMqMEx3fG1gZ2NMOF9Q
S2RKQEVXTgp6WD1Mbk03VjROdmJMVTRASj9OX2pZP3E0cmJCNnR5dCZBeFc9UT13PEk3UWAtJUFC
dl4pPzcpSzA9Rk50eEZ4MHIKentGcjxIcXo3Y3sqSzRjRnZYeiU/IUZvWXJAI08/cGVQSFAyYGxT
JGd4JnpURjV4Z0tDbCRzPSRCJH5pJjYpVVBgCnpxZGxnQHJFT0VYUV8mRnt1KSFuRjt0NSkxPyYt
QGZFRSV8TzNLenNBYW93OS1yUWc9fj5vKm95eT9xZ3NeVG4jcgp6KXUqZkQwcD57d2M3MkxKISl3
PWIrVnJ6b3c8U1dGZH5FK2ROa2A8TTYhfV88WTNBZ3pRXnB1LWw8b3FKK2Z1P24Kej8oTDk0TXJ9
OztxNyE3ellPR0VMJW8hRFg+ZUpiV0c/eXEoKDBzeip5SCM9SkwwIXNCJE1MbFohNXpVVk4lP2N0
CnplMmpVMGghcGNPbHUqRmkzQkUqWElsUUdOYGBuak9nWkV5STVWTUZANXFDK3l0TUxzIWg3MEcq
bFJjfSRzQCpQTQp6PzdTWjhjd3BuWmlDPzxmJSUmcDUrfSQkQ0RIWkI3TVpSPEBIOSpQamUjYWE2
KSRRdUB1ZTFVLXI4bGU3YEEyUSEKek9VJEtLSU41ejg5b0lUYz1GPkpVQDtncTkyaX1ed2BHZjBt
K0JNXzxTa3tpVDkwKnRue0AwUjRSMnUkUipNM1NnCnpmMzBpOFpUWm9EfDhLPnxeUz9ENXFCIUc0
KDE4ZUloXztpUkNxYzkhPyhfKyhCdkhFZkNHSjNlUzlnQilzRW91Ugp6VGA+K24jVSMlbzcwQ3BS
Xj5vNngxSH5ZcyhCSSFiVDg7VTJrK3dqREE8el5FMGdGUCFNUFdkRkZDLVN7NDx6VkIKemhrfXpZ
UFQ7UldrMz03U2w/Jm92aCFqYH4wdjRBNU9NQGxOIUMqZVo/e0NsRjt3OSlDYzMhcHc9QElmJVU9
bVglCnpEMl9QN29LJVI/MVZPZXNULXxqc2NFM09XOWpQeENaNFYmR1RXfHBRdUxDRnZnR3M9RV9Q
fTJAbjc5PDdae2gpVAp6S2VCPExQKHMlS1hAaHwhe2AzUWo2Vm0lbktRTDZCME59ckRGZW1+M2Y3
JkZaQm5qeU0oKn5CNUFQN0dIdmNWKz8KelZnQjAmQlZoUFg4O3RQeVp5Tz1TfDFtRH40P2hWaF8j
ZCVCO1psRmgxcUxDZXs5b2ZqcjJvaFBPcWBKNnp4OzRtCnpxPzBRZWQjRWNMSXs2Y0RnQSt0SzQy
SG5jVStTYyR5Rkc/TCorVmNqUlMyWkxEMn12NE59fHc2RygtWGt3fVZROwpvcG1zPGlEJmpCezkx
UkNjJUtgcChtIUc4ZiMxU1pZTkNYMXg7czZqeDZgPTxCQTJpMH1TXnhrNQoKbGl0ZXJhbCAwCkhj
bVY/ZDAwMDAxCgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>330025</attachid>
            <date>2017-12-21 02:18:17 -0800</date>
            <delta_ts>2017-12-21 02:57:03 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-181006-20171221021816.patch</filename>
            <type>text/plain</type>
            <size>46455</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MjE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDUwZDZkNWM3NGM3MTlhMTNlMGMzOWM5
ZTY3ZmRjNmYxYTBkZDlmMWUuLmFjYTAwMzg5YTE5OGNjODIxNmUwOTQ2YTNkYzU1MDhjMjg2ZDFi
MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTctMTItMTkgIEplcmVteSBKb25lcyAgPGplcmVt
eWpAYXBwbGUuY29tPgorCisgICAgICAgIEVsZW1lbnQgZnVsbHNjcmVlbiBpbnRlcmZhY2Ugc2hv
dWxkIGRpc3BsYXkgdGhlIGxvY2F0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xODEwMDYKKyAgICAgICAgcmRhcjovL3Byb2JsZW0vMzYxNDMxNzYK
KworICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgQWRkIFNlY1Ry
dXN0Q29weUluZm8gU1BJLgorCisgICAgICAgICogd3RmL3NwaS9jb2NvYS9TZWN1cml0eVNQSS5o
OgorCiAyMDE3LTEyLTIwICBGdWppaSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29t
PgogCiAgICAgICAgIFtDTWFrZV1bV1RGXSBMb3dlcmNhc2UgRm9yd2FyZGluZ0hlYWRlcnMgZGly
ZWN0b3J5IG5hbWUgb2YgV1RGCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCA5Nzg2NzBhODJkNTA5NGEz
NTA3OTBmM2YyYWY3NGY1ZmQzNGQwMzgxLi5mYTY2YzIyNWJmMTg1MTI3MzFiMDZkYmI4OTQ5MTcx
ODQwZmNhYzhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNy0xMi0x
OSAgSmVyZW15IEpvbmVzICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAgRWxlbWVudCBm
dWxsc2NyZWVuIGludGVyZmFjZSBzaG91bGQgZGlzcGxheSB0aGUgbG9jYXRpb24KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTAwNgorICAgICAgICBy
ZGFyOi8vcHJvYmxlbS8zNjE0MzE3NgorCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNl
ci4KKworICAgICAgICBBZGQgaU9TIGF2YWlsYWJpbGl0eSBjaGVjay4KKworICAgICAgICAqIHBh
bC9zcGkvY29jb2EvTGlua1ByZXNlbnRhdGlvblNQSS5oOgorCiAyMDE3LTEyLTIwICBEYW5pZWwg
QmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgQWx0ZXJuYXRpdmUg
UHJlc2VudGF0aW9uIEJ1dHRvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA3ZDY1NTU0ZGQ4MjI1NmFhMDdjNzM2YTAx
ZGZiZjQ0NDJkNGNkY2YxLi5iODBjM2Q1ODdmYTdiZmE2Y2QzMzU5MTYxNTFlOWY4ZDk4ZTA3MTY2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDE3LTEyLTE5ICBKZXJlbXkgSm9uZXMgIDxq
ZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBFbGVtZW50IGZ1bGxzY3JlZW4gaW50ZXJmYWNl
IHNob3VsZCBkaXNwbGF5IHRoZSBsb2NhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxMDA2CisgICAgICAgIHJkYXI6Ly9wcm9ibGVtLzM2MTQz
MTc2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgorCisgICAgICAgIFNob3cg
YSBzaG9ydCB1c2VyIHZpc2libGUgbG9jYXRpb24gc3RyaW5nIHdpdGggYSBsb2NrIGlmIHNlY3Vy
ZSBhbmQgZ3JlZW4gd2hlbiB0cnVzdGVkLgorCisgICAgICAgIEluY2x1ZGVzIG90aGVyIGludGVy
ZmFjZSBjbGVhbnVwIGFuZCB0d2Vha3MuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLRnVs
bFNjcmVlbldpbmRvd0NvbnRyb2xsZXJJT1MubW06CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5W
aWV3Q29udHJvbGxlciB2aWV3V2lsbFRyYW5zaXRpb25Ub1NpemU6d2l0aFRyYW5zaXRpb25Db29y
ZGluYXRvcjpdKToKKyAgICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHZpc3Vh
bEVmZmVjdFZpZXdXaXRoRnJhbWU6XSk6CisgICAgICAgIChtaXJyb3JFZGdlSW5zZXRzKToKKyAg
ICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIF91cGRhdGVMYXlvdXRNYXJnaW5z
XSk6CisgICAgICAgICgtW19XS0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciB2aWV3RGlkTGF5b3V0
U3Vidmlld3NdKToKKyAgICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHNldExv
Y2F0aW9uOnNlY3VyZTp0cnVzdGVkTmFtZTp0cnVzdGVkU2l0ZTpdKToKKyAgICAgICAgKC1bX1dL
RnVsbFNjcmVlblZpZXdDb250cm9sbGVyIGNyZWF0ZVN1YnZpZXdzXSk6CisgICAgICAgICgtW19X
S0Z1bGxTY3JlZW5WaWV3Q29udHJvbGxlciBsb2FkVmlld10pOgorICAgICAgICAoLVtfV0tGdWxs
U2NyZWVuVmlld0NvbnRyb2xsZXIgdmlld0RpZEFwcGVhcjpdKToKKyAgICAgICAgKC1bX1dLRnVs
bFNjcmVlblZpZXdDb250cm9sbGVyIGhpZGVDYW5jZWxCdXR0b25dKToKKyAgICAgICAgKC1bX1dL
RnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHNob3dDYW5jZWxCdXR0b246XSk6CisgICAgICAgICgt
W19XS0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIgc2V0U2hvd3NTdGF0dXNCYXI6XSk6Cisg
ICAgICAgICgtW19XS0Z1bGxzY3JlZW5Sb290Vmlld0NvbnRyb2xsZXIgcHJlZmVyc1N0YXR1c0Jh
ckhpZGRlbl0pOgorICAgICAgICAoLVtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIF9pbnZh
bGlkYXRlRVZPcmdhbml6YXRpb25OYW1lXSk6CisgICAgICAgICgtW1dLRnVsbFNjcmVlbldpbmRv
d0NvbnRyb2xsZXIgaXNTZWN1cmVdKToKKyAgICAgICAgKC1bV0tGdWxsU2NyZWVuV2luZG93Q29u
dHJvbGxlciBfc2VydmVyVHJ1c3RdKToKKyAgICAgICAgKC1bV0tGdWxsU2NyZWVuV2luZG93Q29u
dHJvbGxlciBfRVZPcmdhbml6YXRpb25OYW1lXSk6CisgICAgICAgICgtW1dLRnVsbFNjcmVlbldp
bmRvd0NvbnRyb2xsZXIgdXBkYXRlTG9jYXRpb25JbmZvXSk6CisgICAgICAgICgtW1dLRnVsbFNj
cmVlbldpbmRvd0NvbnRyb2xsZXIgZW50ZXJGdWxsU2NyZWVuXSk6CisgICAgICAgICgtW1dLRnVs
bFNjcmVlbldpbmRvd0NvbnRyb2xsZXIgYmVnYW5FbnRlckZ1bGxTY3JlZW5XaXRoSW5pdGlhbEZy
YW1lOmZpbmFsRnJhbWU6XSk6CisgICAgICAgICgtW1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xs
ZXIgYmVnYW5FeGl0RnVsbFNjcmVlbldpdGhJbml0aWFsRnJhbWU6ZmluYWxGcmFtZTpdKToKKyAg
ICAgICAgKC1bX1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHByZWZlcnNTdGF0dXNCYXJIaWRk
ZW5dKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJLaXQueGNhc3NldHMvRG9uZS5pbWFnZXNldC9D
b250ZW50cy5qc29uOiBSZW1vdmVkLgorICAgICAgICAqIFdlYktpdC54Y2Fzc2V0cy9Mb2NrTWlu
aS5pbWFnZXNldC9Db250ZW50cy5qc29uOiBBZGRlZC4KKyAgICAgICAgKiBXZWJLaXQueGNhc3Nl
dHMvTG9ja01pbmkuaW1hZ2VzZXQvTmF2aWdhdGlvbkJhckxvY2tNaW5pQDJ4LnBkZjogQ29waWVk
IGZyb20gU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvRG9uZS5pbWFnZXNldC9Eb25lLnBk
Zi4KKyAgICAgICAgKiBXZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvTmF2aWdhdGlv
bkJhckxvY2tNaW5pQDN4LnBkZjogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJLaXQvV2ViS2l0Lnhj
YXNzZXRzL0RvbmUuaW1hZ2VzZXQvRG9uZS5wZGYuCisKIDIwMTctMTItMjEgIEplcmVteSBKb25l
cyAgPGplcmVteWpAYXBwbGUuY29tPgogCiAgICAgICAgIEVuYWJsZSBwaWN0dXJlLWluLXBpY3R1
cmUgZnJvbSBpbmxpbmUgZWxlbWVudCBvbiBzdXNwZW5kLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dU
Ri93dGYvc3BpL2NvY29hL1NlY3VyaXR5U1BJLmggYi9Tb3VyY2UvV1RGL3d0Zi9zcGkvY29jb2Ev
U2VjdXJpdHlTUEkuaAppbmRleCAzNzViOWUyMTU0YjEyNDc3Y2FlNTczZDI4YTVlNTBiNTJiNWZl
Y2FmLi42NDE2Njg5NmI1MWUwNjZkNjlmNDU1NzM4MzQzYjc3MjU3MTFjY2MxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV1RGL3d0Zi9zcGkvY29jb2EvU2VjdXJpdHlTUEkuaAorKysgYi9Tb3VyY2UvV1RG
L3d0Zi9zcGkvY29jb2EvU2VjdXJpdHlTUEkuaApAQCAtODEsNCArODEsMTAgQEAgQ0ZfUkVUVVJO
U19SRVRBSU5FRCBDRkRhdGFSZWYgU2VjVHJ1c3RTZXJpYWxpemUoU2VjVHJ1c3RSZWYsIENGRXJy
b3JSZWYgKik7CiBDRl9SRVRVUk5TX1JFVEFJTkVEIFNlY1RydXN0UmVmIFNlY1RydXN0RGVzZXJp
YWxpemUoQ0ZEYXRhUmVmIHNlcmlhbGl6ZWRUcnVzdCwgQ0ZFcnJvclJlZiAqKTsKICNlbmRpZgog
CitDRl9SRVRVUk5TX1JFVEFJTkVEIENGRGljdGlvbmFyeVJlZiBTZWNUcnVzdENvcHlJbmZvKFNl
Y1RydXN0UmVmKTsKKworZXh0ZXJuIGNvbnN0IENGU3RyaW5nUmVmIGtTZWNUcnVzdEluZm9FeHRl
bmRlZFZhbGlkYXRpb25LZXk7CitleHRlcm4gY29uc3QgQ0ZTdHJpbmdSZWYga1NlY1RydXN0SW5m
b0NvbXBhbnlOYW1lS2V5OworZXh0ZXJuIGNvbnN0IENGU3RyaW5nUmVmIGtTZWNUcnVzdEluZm9S
ZXZvY2F0aW9uS2V5OworCiBXVEZfRVhURVJOX0NfRU5ECmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9FbmdsaXNoLmxwcm9qL0xvY2FsaXphYmxlLnN0cmluZ3MgYi9Tb3VyY2UvV2ViQ29yZS9F
bmdsaXNoLmxwcm9qL0xvY2FsaXphYmxlLnN0cmluZ3MKaW5kZXggNzU1NzIyZTkwMTI0MGNjNjUx
OWQ0ZGZjMmIwOTM0YjRhYmY1MmVlNS4uZGQ4Y2ZhMjRhNjI5ODM2ZDdhZDk4Zjg0YTZiZTNjZDQ5
YmQ0NjVhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRW5nbGlzaC5scHJvai9Mb2NhbGl6
YWJsZS5zdHJpbmdzCisrKyBiL1NvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovTG9jYWxpemFi
bGUuc3RyaW5ncwpAQCAtMTI1NCwzICsxMjU0LDYgQEAKIAogLyogTGFiZWwgZm9yIHRoZSBhdXRv
IGZpbGwgc3Ryb25nIGNvbmZpcm1hdGlvbiBwYXNzd29yZCBidXR0b24gaW5zaWRlIGEgdGV4dCBm
aWVsZC4gKi8KICJzdHJvbmcgY29uZmlybWF0aW9uIHBhc3N3b3JkIGF1dG8gZmlsbCIgPSAic3Ry
b25nIGNvbmZpcm1hdGlvbiBwYXNzd29yZCBhdXRvIGZpbGwiOworCisvKiBUZXh0IG9mIGJ1dHRv
biB0aGF0IGV4aXRzIGVsZW1lbnQgZnVsbHNjcmVlbi4gKi8KKyJEb25lIiA9ICJEb25lIjsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0xpbmtQcmVzZW50YXRp
b25TUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0xpbmtQcmVzZW50YXRp
b25TUEkuaAppbmRleCBkNGEyNDY1Y2ZhODFlODljMGE1NzFjMDIwMzNmYjA0NDJlMmFhMWM5Li42
ZDkwYWZhYjhmZjI5MTc0ZTA3OWNhZDU2N2Y5NDI0NmQ3ZWY0ZjhmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9MaW5rUHJlc2VudGF0aW9uU1BJLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvTGlua1ByZXNlbnRhdGlvblNQSS5oCkBA
IC0yMyw3ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWYgX19NQUNfT1NfWF9W
RVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEzMDAKKyNpZiAoUExBVEZPUk0oTUFDKSAmJiBfX01B
Q19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTMwMCkgfHwgUExBVEZPUk0oSU9TKQog
CiAjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKIApAQCAtMzcsNCArMzcsNCBAQAogCiAjZW5k
aWYKIAotI2VuZGlmIC8vIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxMzAw
CisjZW5kaWYgLy8gKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFV
SVJFRCA+PSAxMDEzMDApIHx8IFBMQVRGT1JNKElPUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL2lvcy9XS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVySU9TLm1tIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXJJT1Mu
bW0KaW5kZXggOTIxMzc4OGJmYjU0Y2U2OWY0NDQyMTRhZjlmYTNjM2I5MzIwNmU2ZS4uM2MwNmZj
YWQ1ODNjYzExZWM2MjBmNmVjNTMzYzM0OWExYTk3ZTk5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvaW9zL1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXJJT1MubW0KKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xs
ZXJJT1MubW0KQEAgLTM1LDE3ICszNSwzMSBAQAogI2ltcG9ydCAiV2ViRnVsbFNjcmVlbk1hbmFn
ZXJQcm94eS5oIgogI2ltcG9ydCAiV2ViUGFnZVByb3h5LmgiCiAjaW1wb3J0IDxGb3VuZGF0aW9u
L0ZvdW5kYXRpb24uaD4KKyNpbXBvcnQgPFNlY3VyaXR5L1NlY0NlcnRpZmljYXRlLmg+CisjaW1w
b3J0IDxTZWN1cml0eS9TZWNUcnVzdC5oPgogI2ltcG9ydCA8VUlLaXQvVUlWaXN1YWxFZmZlY3RW
aWV3Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL0Zsb2F0UmVjdC5oPgogI2ltcG9ydCA8V2ViQ29yZS9H
ZW9tZXRyeVV0aWxpdGllcy5oPgogI2ltcG9ydCA8V2ViQ29yZS9JbnRSZWN0Lmg+CisjaW1wb3J0
IDxXZWJDb3JlL0xvY2FsaXplZFN0cmluZ3MuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU5T
VVJMRXh0cmFzLmg+CisjaW1wb3J0IDxwYWwvc3BpL2NmL0NGTmV0d29ya1NQSS5oPgorI2ltcG9y
dCA8cGFsL3NwaS9jb2NvYS9MaW5rUHJlc2VudGF0aW9uU1BJLmg+CisjaW1wb3J0IDxwYWwvc3Bp
L2NvY29hL05TU3RyaW5nU1BJLmg+CiAjaW1wb3J0IDxwYWwvc3BpL2NvY29hL1F1YXJ0ekNvcmVT
UEkuaD4KKyNpbXBvcnQgPHd0Zi9Tb2Z0TGlua2luZy5oPgorI2ltcG9ydCA8d3RmL3NwaS9jb2Nv
YS9TZWN1cml0eVNQSS5oPgogCiB1c2luZyBuYW1lc3BhY2UgV2ViS2l0OwogdXNpbmcgbmFtZXNw
YWNlIFdlYkNvcmU7CiAKK1NPRlRfTElOS19QUklWQVRFX0ZSQU1FV09SS19PUFRJT05BTChMaW5r
UHJlc2VudGF0aW9uKQorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAorc3RhdGljIGNvbnN0IE5TVGlt
ZUludGVydmFsIHNob3dIaWRlQW5pbWF0aW9uRHVyYXRpb24gPSAwLjE7CitzdGF0aWMgY29uc3Qg
TlNUaW1lSW50ZXJ2YWwgYXV0b0hpZGVEZWxheSA9IDQuMDsKKwogc3RhdGljIHZvaWQgcmVwbGFj
ZVZpZXdXaXRoVmlldyhVSVZpZXcgKnZpZXcsIFVJVmlldyAqb3RoZXJWaWV3KQogewogICAgIFtD
QVRyYW5zYWN0aW9uIGJlZ2luXTsKQEAgLTExNSw2ICsxMjksNyBAQCBAaW1wbGVtZW50YXRpb24g
X1dLRnVsbFNjcmVlblZpZXdDb250cm9sbGVyIHsKICAgICBSZXRhaW5QdHI8VUlWaWV3PiBfYmFj
a2dyb3VuZFZpZXc7CiAgICAgUmV0YWluUHRyPFVJTG9uZ1ByZXNzR2VzdHVyZVJlY29nbml6ZXI+
IF90b3VjaEdlc3R1cmVSZWNvZ25pemVyOwogICAgIFJldGFpblB0cjxVSUJ1dHRvbj4gX2NhbmNl
bEJ1dHRvbjsKKyAgICBSZXRhaW5QdHI8VUlCdXR0b24+IF9sb2NhdGlvbkJ1dHRvbjsKICAgICBS
ZXRhaW5QdHI8VUlWaXN1YWxFZmZlY3RWaWV3PiBfdmlzdWFsRWZmZWN0VmlldzsKIH0KIApAQCAt
MTI5LDggKzE0NCwxNyBAQCAtICh2b2lkKWRlYWxsb2MKIC0gKHZvaWQpdmlld1dpbGxUcmFuc2l0
aW9uVG9TaXplOihDR1NpemUpc2l6ZSB3aXRoVHJhbnNpdGlvbkNvb3JkaW5hdG9yOihpZDxVSVZp
ZXdDb250cm9sbGVyVHJhbnNpdGlvbkNvb3JkaW5hdG9yPiljb29yZGluYXRvcgogewogICAgIFtz
dXBlciB2aWV3V2lsbFRyYW5zaXRpb25Ub1NpemU6c2l6ZSB3aXRoVHJhbnNpdGlvbkNvb3JkaW5h
dG9yOmNvb3JkaW5hdG9yXTsKLSAgICBbc2VsZiBjb250ZW50Vmlld10uZnJhbWUgPSBzZWxmLnZp
ZXcuYm91bmRzOwotICAgIFsoV0tXZWJWaWV3ICopW3NlbGYgY29udGVudFZpZXddIF9vdmVycmlk
ZUxheW91dFBhcmFtZXRlcnNXaXRoTWluaW11bUxheW91dFNpemU6c2l6ZSBtYXhpbXVtVW5vYnNj
dXJlZFNpemVPdmVycmlkZTpzaXplXTsKKyAgICBbY29vcmRpbmF0b3IgYW5pbWF0ZUFsb25nc2lk
ZVRyYW5zaXRpb246IF4oaWQ8VUlWaWV3Q29udHJvbGxlclRyYW5zaXRpb25Db29yZGluYXRvckNv
bnRleHQ+IGNvbnRleHQpIHsKKworICAgICAgICB2b2lkIChed2ViVmlld1VwZGF0ZUJsb2NrKSgp
ID0gXnsKKyAgICAgICAgICAgIFsoV0tXZWJWaWV3ICopW3NlbGYgY29udGVudFZpZXddIF9vdmVy
cmlkZUxheW91dFBhcmFtZXRlcnNXaXRoTWluaW11bUxheW91dFNpemU6c2l6ZSBtYXhpbXVtVW5v
YnNjdXJlZFNpemVPdmVycmlkZTpzaXplXTsKKyAgICAgICAgfTsKKworICAgICAgICBbKFdLV2Vi
VmlldyAqKVtzZWxmIGNvbnRlbnRWaWV3XSBfYmVnaW5BbmltYXRlZFJlc2l6ZVdpdGhVcGRhdGVz
OndlYlZpZXdVcGRhdGVCbG9ja107CisgICAgICAgIFsoV0tXZWJWaWV3ICopW3NlbGYgY29udGVu
dFZpZXddIF9zZXRJbnRlcmZhY2VPcmllbnRhdGlvbk92ZXJyaWRlOltVSUFwcCBzdGF0dXNCYXJP
cmllbnRhdGlvbl1dOworICAgIH0gY29tcGxldGlvbjpeKGlkIDxVSVZpZXdDb250cm9sbGVyVHJh
bnNpdGlvbkNvb3JkaW5hdG9yQ29udGV4dD5jb250ZXh0KSB7CisgICAgICAgIFsoV0tXZWJWaWV3
ICopW3NlbGYgY29udGVudFZpZXddIF9lbmRBbmltYXRlZFJlc2l6ZV07CisgICAgfV07CiB9CiAK
ICsgKHZvaWQpY29uZmlndXJlVmlldzooVUlWaWV3ICopdmlldyB3aXRoQmFja2dyb3VuZEZpbGxP
ZkNvbG9yOihVSUNvbG9yICopZmlsbENvbG9yIG9wYWNpdHk6KENHRmxvYXQpb3BhY2l0eSBmaWx0
ZXI6KE5TU3RyaW5nICopZmlsdGVyCkBAIC0xNjAsOSArMTg0LDYgQEAgLSAodm9pZClfdXBkYXRl
VHJhbnNwYXJlbmN5T2ZWaXN1YWxFZmZlY3RWaWV3OihVSVZpc3VhbEVmZmVjdFZpZXcgKil2aXN1
YWxFZmZlY3QKIC0gKFVJVmlzdWFsRWZmZWN0VmlldyAqKXZpc3VhbEVmZmVjdFZpZXdXaXRoRnJh
bWU6KENHUmVjdClmcmFtZQogewogICAgIFJldGFpblB0cjxVSVZpc3VhbEVmZmVjdFZpZXc+IHZp
c3VhbEVmZmVjdFZpZXcgPSBhZG9wdE5TKFtbVUlWaXN1YWxFZmZlY3RWaWV3IGFsbG9jXSBpbml0
V2l0aEVmZmVjdDpbVUlWaXN1YWxFZmZlY3QgZW1wdHlFZmZlY3RdXSk7Ci0gICAgW3Zpc3VhbEVm
ZmVjdFZpZXcgc2V0RnJhbWU6ZnJhbWVdOwotICAgIFt2aXN1YWxFZmZlY3RWaWV3IF9zZXRDb250
aW51b3VzQ29ybmVyUmFkaXVzOigoQ0dSZWN0R2V0SGVpZ2h0KFt2aXN1YWxFZmZlY3RWaWV3IGJv
dW5kc10pID4gNDAuMCkgPyAxNi4wIDogOC4wKV07Ci0gICAgW3Zpc3VhbEVmZmVjdFZpZXcgc2V0
QXV0b3Jlc2l6aW5nTWFzazooVUlWaWV3QXV0b3Jlc2l6aW5nRmxleGlibGVSaWdodE1hcmdpbiB8
IFVJVmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlQm90dG9tTWFyZ2luKV07CiAgICAgW3NlbGYgX3Vw
ZGF0ZVRyYW5zcGFyZW5jeU9mVmlzdWFsRWZmZWN0Vmlldzp2aXN1YWxFZmZlY3RWaWV3LmdldCgp
XTsKIAogICAgIFJldGFpblB0cjxVSVZpZXc+IGJhY2tMYXllclRpbnRWaWV3ID0gYWRvcHROUyhb
W1VJVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpbdmlzdWFsRWZmZWN0VmlldyBib3VuZHNdXSk7
CkBAIC0xODIsMzkgKzIwMywxMzEgQEAgLSAoVUlWaXN1YWxFZmZlY3RWaWV3ICopdmlzdWFsRWZm
ZWN0Vmlld1dpdGhGcmFtZTooQ0dSZWN0KWZyYW1lCiAgICAgcmV0dXJuIHZpc3VhbEVmZmVjdFZp
ZXcuYXV0b3JlbGVhc2UoKTsKIH0KIAotLSAodm9pZClsb2FkVmlldworc3RhdGljIFVJRWRnZUlu
c2V0cyBtaXJyb3JFZGdlSW5zZXRzKFVJRWRnZUluc2V0cyBpbnNldHMpCiB7Ci0gICAgW3NlbGYg
c2V0VmlldzphZG9wdE5TKFtbVUlWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOkNHUmVjdE1ha2Uo
MCwgMCwgMTAwLCAxMDApXSkuZ2V0KCldOwotICAgIFtbc2VsZiB2aWV3XSBzZXRBdXRvcmVzaXpp
bmdNYXNrOihVSVZpZXdBdXRvcmVzaXppbmdGbGV4aWJsZVdpZHRoIHwgVUlWaWV3QXV0b3Jlc2l6
aW5nRmxleGlibGVIZWlnaHQpXTsKKyAgICByZXR1cm4gVUlFZGdlSW5zZXRzTWFrZShpbnNldHMu
dG9wLCBpbnNldHMucmlnaHQsIGluc2V0cy5ib3R0b20sIGluc2V0cy5sZWZ0KTsKK30KIAotICAg
IENHUmVjdCBkb25lQnV0dG9uUmVjdCA9IENHUmVjdE1ha2UoMTAsIDIwLCA2MCwgNDcpOwotICAg
IAotICAgIF92aXN1YWxFZmZlY3RWaWV3ID0gW3NlbGYgdmlzdWFsRWZmZWN0Vmlld1dpdGhGcmFt
ZTpkb25lQnV0dG9uUmVjdF07Ci0gICAgW192aXN1YWxFZmZlY3RWaWV3IHNldEFscGhhOjBdOwor
LSAodm9pZClfdXBkYXRlTGF5b3V0TWFyZ2lucworeworICAgIFVJVmlldyAqdmlldyA9IFtzZWxm
IHZpZXddOworICAgIFt2aWV3IHNldFByZXNlcnZlc1N1cGVydmlld0xheW91dE1hcmdpbnM6Tk9d
OworCisgICAgVUlFZGdlSW5zZXRzIHRhcmdldEluc2V0cyA9IFt2aWV3IHNhZmVBcmVhSW5zZXRz
XTsKKyAgICB0YXJnZXRJbnNldHMudG9wID0gc3RkOjptYXgodGFyZ2V0SW5zZXRzLnRvcCwgMjAu
MCk7CisgICAgW3ZpZXcgc2V0TGF5b3V0TWFyZ2luczp0YXJnZXRJbnNldHNdOworfQorCistICh2
b2lkKXZpZXdEaWRMYXlvdXRTdWJ2aWV3cworeworICAgIFtzZWxmIF91cGRhdGVMYXlvdXRNYXJn
aW5zXTsKK30KKworLSAgKHZvaWQpc2V0TG9jYXRpb246KE5TU3RyaW5nICopbG9jYXRpb25OYW1l
IHNlY3VyZTooQk9PTClzZWN1cmUgdHJ1c3RlZE5hbWU6KEJPT0wpdHJ1c3RlZE5hbWUgdHJ1c3Rl
ZFNpdGU6KEJPT0wpdHJ1c3RlZFNpdGUKK3sKKyAgICBVSUNvbG9yICpncmVlblRpbnQgPSBbVUlD
b2xvciBjb2xvcldpdGhSZWQ6MTAwIC8gMjU1LjAgZ3JlZW46MTc1IC8gMjU1LjAgYmx1ZTo5OSAv
IDI1NS4wIGFscGhhOjEuMF07CisgICAgVUlDb2xvciAqd2hpdGVUaW50ID0gW1VJQ29sb3Igd2hp
dGVDb2xvcl07CisKKyAgICBmbG9hdCBoUGFkZGluZyA9IDE0OworICAgIE5TU3RyaW5nICpsb2Nr
SW1hZ2VOYW1lID0gQCJMb2NrTWluaSI7CisKKyAgICBmbG9hdCBsb2NrU3BhY2luZyA9IHNlY3Vy
ZSA/IDEwIDogMDsKKworICAgIFVJRWRnZUluc2V0cyBsb2NhdGlvbkNvbnRlbnRFZGdlSW5zZXRz
ID0gVUlFZGdlSW5zZXRzTWFrZSgwLCBoUGFkZGluZytsb2NrU3BhY2luZywgMCwgaFBhZGRpbmcp
OworICAgIFVJRWRnZUluc2V0cyBsb2NhdGlvbkltYWdlRWRnZUluc2V0cyA9IFVJRWRnZUluc2V0
c01ha2UoMCwgLWxvY2tTcGFjaW5nLCAwLCAwKTsKKworICAgIGlmIChbVUlWaWV3IHVzZXJJbnRl
cmZhY2VMYXlvdXREaXJlY3Rpb25Gb3JTZW1hbnRpY0NvbnRlbnRBdHRyaWJ1dGU6W1tzZWxmIHZp
ZXddIHNlbWFudGljQ29udGVudEF0dHJpYnV0ZV1dID09IFVJVXNlckludGVyZmFjZUxheW91dERp
cmVjdGlvblJpZ2h0VG9MZWZ0KSB7CisgICAgICAgIGxvY2F0aW9uQ29udGVudEVkZ2VJbnNldHMg
PSBtaXJyb3JFZGdlSW5zZXRzKGxvY2F0aW9uQ29udGVudEVkZ2VJbnNldHMpOworICAgICAgICBs
b2NhdGlvbkltYWdlRWRnZUluc2V0cyA9IG1pcnJvckVkZ2VJbnNldHMobG9jYXRpb25JbWFnZUVk
Z2VJbnNldHMpOworICAgICAgICBbX2xvY2F0aW9uQnV0dG9uIHNldENvbnRlbnRIb3Jpem9udGFs
QWxpZ25tZW50OlVJQ29udHJvbENvbnRlbnRIb3Jpem9udGFsQWxpZ25tZW50UmlnaHRdOworICAg
IH0KKworICAgIFtfbG9jYXRpb25CdXR0b24gc2V0VGl0bGVDb2xvcjoodHJ1c3RlZE5hbWUgPyBn
cmVlblRpbnQgOiB3aGl0ZVRpbnQpIGZvclN0YXRlOlVJQ29udHJvbFN0YXRlTm9ybWFsXTsKKwor
ICAgIGlmIChzZWN1cmUpIHsKKyAgICAgICAgTlNCdW5kbGUgKmJ1bmRsZSA9IFtOU0J1bmRsZSBi
dW5kbGVGb3JDbGFzczpbV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlciBjbGFzc11dOworICAg
ICAgICBVSUltYWdlICpsb2NrSW1hZ2UgPSBbVUlJbWFnZSBpbWFnZU5hbWVkOmxvY2tJbWFnZU5h
bWUgaW5CdW5kbGU6YnVuZGxlIGNvbXBhdGlibGVXaXRoVHJhaXRDb2xsZWN0aW9uOm5pbF07Cisg
ICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0SW1hZ2U6W2xvY2tJbWFnZSBpbWFnZVdpdGhSZW5k
ZXJpbmdNb2RlOlVJSW1hZ2VSZW5kZXJpbmdNb2RlQWx3YXlzVGVtcGxhdGVdIGZvclN0YXRlOlVJ
Q29udHJvbFN0YXRlTm9ybWFsXTsKKyAgICAgICAgW1tfbG9jYXRpb25CdXR0b24gaW1hZ2VWaWV3
XSBzZXRUaW50Q29sb3I6dHJ1c3RlZFNpdGUgPyBncmVlblRpbnQgOiB3aGl0ZVRpbnRdOworICAg
ICAgICBbX2xvY2F0aW9uQnV0dG9uIHNldFRpbnRDb2xvcjp0cnVzdGVkU2l0ZSA/IGdyZWVuVGlu
dCA6IHdoaXRlVGludF07CisgICAgfSBlbHNlCisgICAgICAgIFtfbG9jYXRpb25CdXR0b24gc2V0
SW1hZ2U6bmlsIGZvclN0YXRlOlVJQ29udHJvbFN0YXRlTm9ybWFsXTsKKworICAgIFtfbG9jYXRp
b25CdXR0b24gc2V0Q29udGVudEVkZ2VJbnNldHM6bG9jYXRpb25Db250ZW50RWRnZUluc2V0c107
CisgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRJbWFnZUVkZ2VJbnNldHM6bG9jYXRpb25JbWFnZUVk
Z2VJbnNldHNdOworICAgIFtfbG9jYXRpb25CdXR0b24gc2V0VGl0bGU6bG9jYXRpb25OYW1lIGZv
clN0YXRlOlVJQ29udHJvbFN0YXRlTm9ybWFsXTsKKyAgICBbW19sb2NhdGlvbkJ1dHRvbiB0aXRs
ZUxhYmVsXSBzZXRMaW5lQnJlYWtNb2RlOk5TTGluZUJyZWFrQnlUcnVuY2F0aW5nVGFpbF07Cisg
ICAgW1tfbG9jYXRpb25CdXR0b24gdGl0bGVMYWJlbF0gc2V0QWRqdXN0c0ZvbnRTaXplVG9GaXRX
aWR0aDpOT107Cit9CisKKy0gKHZvaWQpY3JlYXRlU3Vidmlld3MKK3sKKyAgICBfdmlzdWFsRWZm
ZWN0VmlldyA9IFtzZWxmIHZpc3VhbEVmZmVjdFZpZXdXaXRoRnJhbWU6Q0dSZWN0TWFrZSgwLCAw
LCAyMCwgMjApXTsKKworICAgIFtfdmlzdWFsRWZmZWN0VmlldyBzZXRUcmFuc2xhdGVzQXV0b3Jl
c2l6aW5nTWFza0ludG9Db25zdHJhaW50czpOT107CiAgICAgW1tzZWxmIHZpZXddIGFkZFN1YnZp
ZXc6X3Zpc3VhbEVmZmVjdFZpZXcuZ2V0KCldOwogCiAgICAgX2NhbmNlbEJ1dHRvbiA9IFtVSUJ1
dHRvbiBidXR0b25XaXRoVHlwZTpVSUJ1dHRvblR5cGVTeXN0ZW1dOwotICAgIFtfY2FuY2VsQnV0
dG9uIHNldEF1dG9yZXNpemluZ01hc2s6KFVJVmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlUmlnaHRN
YXJnaW4gfCBVSVZpZXdBdXRvcmVzaXppbmdGbGV4aWJsZUJvdHRvbU1hcmdpbildOwotICAgIFtf
Y2FuY2VsQnV0dG9uIHNldEZyYW1lOmRvbmVCdXR0b25SZWN0XTsKLSAgICBbX2NhbmNlbEJ1dHRv
biBhZGRUYXJnZXQ6c2VsZiBhY3Rpb246QHNlbGVjdG9yKGNhbmNlbEFjdGlvbjopIGZvckNvbnRy
b2xFdmVudHM6VUlDb250cm9sRXZlbnRUb3VjaFVwSW5zaWRlXTsKKyAgICBbX2NhbmNlbEJ1dHRv
biBzZXRUcmFuc2xhdGVzQXV0b3Jlc2l6aW5nTWFza0ludG9Db25zdHJhaW50czpOT107CiAgICAg
W19jYW5jZWxCdXR0b24gc2V0QWRqdXN0c0ltYWdlV2hlbkhpZ2hsaWdodGVkOk5PXTsKICAgICBb
X2NhbmNlbEJ1dHRvbiBzZXRCYWNrZ3JvdW5kQ29sb3I6IFtVSUNvbG9yIGJsYWNrQ29sb3JdXTsK
LSAgICBbW19jYW5jZWxCdXR0b24gbGF5ZXJdIHNldENvcm5lclJhZGl1czo2XTsKLSAgICBbX2Nh
bmNlbEJ1dHRvbiBzZXRBbHBoYTowXTsKLSAgICBOU0J1bmRsZSAqYnVuZGxlID0gW05TQnVuZGxl
IGJ1bmRsZUZvckNsYXNzOltXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyIGNsYXNzXV07Ci0g
ICAgUmV0YWluUHRyPFVJSW1hZ2U+IGltYWdlID0gW1VJSW1hZ2UgaW1hZ2VOYW1lZDpAIkRvbmUi
IGluQnVuZGxlOmJ1bmRsZSBjb21wYXRpYmxlV2l0aFRyYWl0Q29sbGVjdGlvbjpuaWxdOwotICAg
IFtfY2FuY2VsQnV0dG9uIHNldEltYWdlOltpbWFnZSBpbWFnZVdpdGhSZW5kZXJpbmdNb2RlOlVJ
SW1hZ2VSZW5kZXJpbmdNb2RlQWx3YXlzVGVtcGxhdGVdIGZvclN0YXRlOlVJQ29udHJvbFN0YXRl
Tm9ybWFsXTsKLQotICAgIFtfY2FuY2VsQnV0dG9uIHNldFRpbnRDb2xvcjpbVUlDb2xvciBjb2xv
cldpdGhXaGl0ZToxLjAgYWxwaGE6MC41NV1dOwogICAgIFtbX2NhbmNlbEJ1dHRvbiBsYXllcl0g
c2V0Q29tcG9zaXRpbmdGaWx0ZXI6W0NBRmlsdGVyIGZpbHRlcldpdGhUeXBlOmtDQUZpbHRlclBs
dXNMXV07CisgICAgW19jYW5jZWxCdXR0b24gc2V0VGl0bGU6V0VCX1VJX1NUUklORygiRG9uZSIs
ICJUZXh0IG9mIGJ1dHRvbiB0aGF0IGV4aXRzIGVsZW1lbnQgZnVsbHNjcmVlbi4iKSBmb3JTdGF0
ZTpVSUNvbnRyb2xTdGF0ZU5vcm1hbF07CisgICAgW19jYW5jZWxCdXR0b24gc2V0VGludENvbG9y
OltVSUNvbG9yIHdoaXRlQ29sb3JdXTsKKyAgICBbX2NhbmNlbEJ1dHRvbiBhZGRUYXJnZXQ6c2Vs
ZiBhY3Rpb246QHNlbGVjdG9yKGNhbmNlbEFjdGlvbjopIGZvckNvbnRyb2xFdmVudHM6VUlDb250
cm9sRXZlbnRUb3VjaFVwSW5zaWRlXTsKIAogICAgIFtbc2VsZiB2aWV3XSBhZGRTdWJ2aWV3Ol9j
YW5jZWxCdXR0b24uZ2V0KCldOwogCisgICAgX2xvY2F0aW9uQnV0dG9uID0gW1VJQnV0dG9uIGJ1
dHRvbldpdGhUeXBlOlVJQnV0dG9uVHlwZVN5c3RlbV07CisgICAgW19sb2NhdGlvbkJ1dHRvbiBz
ZXRUcmFuc2xhdGVzQXV0b3Jlc2l6aW5nTWFza0ludG9Db25zdHJhaW50czpOT107CisgICAgW19s
b2NhdGlvbkJ1dHRvbiBzZXRBZGp1c3RzSW1hZ2VXaGVuSGlnaGxpZ2h0ZWQ6Tk9dOworICAgIFtf
bG9jYXRpb25CdXR0b24gc2V0QmFja2dyb3VuZENvbG9yOltVSUNvbG9yIGJsYWNrQ29sb3JdXTsK
KyAgICBbW19sb2NhdGlvbkJ1dHRvbiBsYXllcl0gc2V0Q29tcG9zaXRpbmdGaWx0ZXI6W0NBRmls
dGVyIGZpbHRlcldpdGhUeXBlOmtDQUZpbHRlclBsdXNMXV07CisgICAgW1tzZWxmIHZpZXddIGFk
ZFN1YnZpZXc6X2xvY2F0aW9uQnV0dG9uLmdldCgpXTsKKworICAgIFVJTGF5b3V0R3VpZGUqIGNv
bnRhaW5lckd1aWRlID0gW1tzZWxmIHZpZXddIGxheW91dE1hcmdpbnNHdWlkZV07CisKKyAgICBb
W1tfdmlzdWFsRWZmZWN0VmlldyBsZWZ0QW5jaG9yXSBjb25zdHJhaW50RXF1YWxUb0FuY2hvcjpb
W3NlbGYgdmlld10gbGVmdEFuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworICAgIFtbW192aXN1YWxF
ZmZlY3RWaWV3IHJpZ2h0QW5jaG9yXSBjb25zdHJhaW50RXF1YWxUb0FuY2hvcjpbW3NlbGYgdmll
d10gcmlnaHRBbmNob3JdXSBzZXRBY3RpdmU6WUVTXTsKKyAgICBbW1tfdmlzdWFsRWZmZWN0Vmll
dyB0b3BBbmNob3JdIGNvbnN0cmFpbnRFcXVhbFRvQW5jaG9yOltbc2VsZiB2aWV3XSB0b3BBbmNo
b3JdXSBzZXRBY3RpdmU6WUVTXTsKKyAgICBbW1tfdmlzdWFsRWZmZWN0VmlldyBoZWlnaHRBbmNo
b3JdIGNvbnN0cmFpbnRHcmVhdGVyVGhhbk9yRXF1YWxUb0NvbnN0YW50OjIwXSBzZXRBY3RpdmU6
WUVTXTsKKworICAgIE5TTGF5b3V0Q29uc3RyYWludCAqYm90dG9tID0gW1tfdmlzdWFsRWZmZWN0
VmlldyBib3R0b21BbmNob3JdIGNvbnN0cmFpbnRFcXVhbFRvQW5jaG9yOltjb250YWluZXJHdWlk
ZSB0b3BBbmNob3JdXTsKKyAgICBbYm90dG9tIHNldFByaW9yaXR5OlVJTGF5b3V0UHJpb3JpdHlS
ZXF1aXJlZCAtIDFdOworICAgIFtib3R0b20gc2V0QWN0aXZlOllFU107CisKKyAgICBbW1tfY2Fu
Y2VsQnV0dG9uIGxlYWRpbmdBbmNob3JdIGNvbnN0cmFpbnRFcXVhbFRvQW5jaG9yOltjb250YWlu
ZXJHdWlkZSBsZWFkaW5nQW5jaG9yXV0gc2V0QWN0aXZlOllFU107CisgICAgW1tbX2NhbmNlbEJ1
dHRvbiB0b3BBbmNob3JdIGNvbnN0cmFpbnRFcXVhbFRvQW5jaG9yOltbc2VsZiB2aWV3XSB0b3BB
bmNob3JdXSBzZXRBY3RpdmU6WUVTXTsKKyAgICBbW1tfY2FuY2VsQnV0dG9uIGJvdHRvbUFuY2hv
cl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W192aXN1YWxFZmZlY3RWaWV3IGJvdHRvbUFuY2hv
cl1dIHNldEFjdGl2ZTpZRVNdOworCisgICAgW1tbX2xvY2F0aW9uQnV0dG9uIGhlaWdodEFuY2hv
cl0gY29uc3RyYWludEVxdWFsVG9Db25zdGFudDoyMF0gc2V0QWN0aXZlOllFU107CisgICAgW1tb
X2xvY2F0aW9uQnV0dG9uIGJvdHRvbUFuY2hvcl0gY29uc3RyYWludEVxdWFsVG9BbmNob3I6W192
aXN1YWxFZmZlY3RWaWV3IGJvdHRvbUFuY2hvcl1dIHNldEFjdGl2ZTpZRVNdOworICAgIFtbW19s
b2NhdGlvbkJ1dHRvbiBsZWFkaW5nQW5jaG9yXSBjb25zdHJhaW50R3JlYXRlclRoYW5PckVxdWFs
VG9BbmNob3I6W19jYW5jZWxCdXR0b24gdHJhaWxpbmdBbmNob3JdXSBzZXRBY3RpdmU6WUVTXTsK
KyAgICBbW1tfbG9jYXRpb25CdXR0b24gdHJhaWxpbmdBbmNob3JdIGNvbnN0cmFpbnRMZXNzVGhh
bk9yRXF1YWxUb0FuY2hvcjpbW3NlbGYgdmlld10gdHJhaWxpbmdBbmNob3JdXSBzZXRBY3RpdmU6
WUVTXTsKKyAgICBOU0xheW91dENvbnN0cmFpbnQgKmNlbnRlcmluZ0NvbnN0cmFpbnQgPSBbW19s
b2NhdGlvbkJ1dHRvbiBjZW50ZXJYQW5jaG9yXSBjb25zdHJhaW50RXF1YWxUb0FuY2hvcjpbW3Nl
bGYgdmlld10gY2VudGVyWEFuY2hvcl1dOworICAgIFtjZW50ZXJpbmdDb25zdHJhaW50IHNldFBy
aW9yaXR5OlVJTGF5b3V0UHJpb3JpdHlEZWZhdWx0TG93XTsKKyAgICBbY2VudGVyaW5nQ29uc3Ry
YWludCBzZXRBY3RpdmU6WUVTXTsKKworICAgIFtfdmlzdWFsRWZmZWN0VmlldyBzZXRBbHBoYTow
XTsKKyAgICBbX2NhbmNlbEJ1dHRvbiBzZXRBbHBoYTowXTsKKyAgICBbX2xvY2F0aW9uQnV0dG9u
IHNldEFscGhhOjBdOworCisgICAgW192aXN1YWxFZmZlY3RWaWV3IHNldEhpZGRlbjpZRVNdOwor
ICAgIFtfY2FuY2VsQnV0dG9uIHNldEhpZGRlbjpZRVNdOworICAgIFtfbG9jYXRpb25CdXR0b24g
c2V0SGlkZGVuOllFU107Cit9CisKKy0gKHZvaWQpbG9hZFZpZXcKK3sKKyAgICBbc2VsZiBzZXRW
aWV3OmFkb3B0TlMoW1tVSVZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6Q0dSZWN0TWFrZSgwLCAw
LCAxMDAsIDEwMCldKS5nZXQoKV07CisgICAgW1tzZWxmIHZpZXddIHNldEF1dG9yZXNpemluZ01h
c2s6KFVJVmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlV2lkdGggfCBVSVZpZXdBdXRvcmVzaXppbmdG
bGV4aWJsZUhlaWdodCldOworCiAgICAgX3RvdWNoR2VzdHVyZVJlY29nbml6ZXIgPSBhZG9wdE5T
KFtbVUlMb25nUHJlc3NHZXN0dXJlUmVjb2duaXplciBhbGxvY10gaW5pdFdpdGhUYXJnZXQ6c2Vs
ZiBhY3Rpb246QHNlbGVjdG9yKHNob3dDYW5jZWxCdXR0b246KV0pOwogICAgIFtfdG91Y2hHZXN0
dXJlUmVjb2duaXplciBzZXREZWxlZ2F0ZTpzZWxmXTsKICAgICBbX3RvdWNoR2VzdHVyZVJlY29n
bml6ZXIgc2V0Q2FuY2Vsc1RvdWNoZXNJblZpZXc6Tk9dOwogICAgIFtfdG91Y2hHZXN0dXJlUmVj
b2duaXplciBzZXRNaW5pbXVtUHJlc3NEdXJhdGlvbjowXTsKICAgICBbW3NlbGYgdmlld10gYWRk
R2VzdHVyZVJlY29nbml6ZXI6X3RvdWNoR2VzdHVyZVJlY29nbml6ZXIuZ2V0KCldOworICAgIFtz
ZWxmIGNyZWF0ZVN1YnZpZXdzXTsKIH0KIAogLSAodm9pZCl2aWV3V2lsbEFwcGVhcjooQk9PTClh
bmltYXRlZApAQCAtMjI0LDYgKzMzNywxMSBAQCAtICh2b2lkKXZpZXdXaWxsQXBwZWFyOihCT09M
KWFuaW1hdGVkCiAgICAgW1tzZWxmIHZpZXddIGluc2VydFN1YnZpZXc6W3NlbGYgY29udGVudFZp
ZXddIGF0SW5kZXg6MF07CiB9CiAKKy0gKHZvaWQpdmlld0RpZEFwcGVhcjooQk9PTClhbmltYXRl
ZAoreworICAgIFtzZWxmIF91cGRhdGVMYXlvdXRNYXJnaW5zXTsKK30KKwogLSAodm9pZCljYW5j
ZWxBY3Rpb246KGlkKXNlbmRlcgogewogICAgIFtbc2VsZiB0YXJnZXRdIHBlcmZvcm1TZWxlY3Rv
cjpbc2VsZiBhY3Rpb25dXTsKQEAgLTIzMiwxMiArMzUwLDE0IEBAIC0gKHZvaWQpY2FuY2VsQWN0
aW9uOihpZClzZW5kZXIKIC0gKHZvaWQpaGlkZUNhbmNlbEJ1dHRvbgogewogICAgIFtOU09iamVj
dCBjYW5jZWxQcmV2aW91c1BlcmZvcm1SZXF1ZXN0c1dpdGhUYXJnZXQ6c2VsZiBzZWxlY3RvcjpA
c2VsZWN0b3IoaGlkZUNhbmNlbEJ1dHRvbikgb2JqZWN0Om5pbF07Ci0gICAgW1VJVmlldyBhbmlt
YXRlV2l0aER1cmF0aW9uOjAuMiBhbmltYXRpb25zOl57CisgICAgW1VJVmlldyBhbmltYXRlV2l0
aER1cmF0aW9uOnNob3dIaWRlQW5pbWF0aW9uRHVyYXRpb24gYW5pbWF0aW9uczpeewogICAgICAg
ICBbX3Zpc3VhbEVmZmVjdFZpZXcgc2V0QWxwaGE6MF07CiAgICAgICAgIFtfY2FuY2VsQnV0dG9u
IHNldEFscGhhOjBdOworICAgICAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEFscGhhOjBdOwogICAg
IH0gY29tcGxldGlvbjpeKEJPT0wgZmluaXNoZWQpewogICAgICAgICBpZiAoZmluaXNoZWQpIHsK
ICAgICAgICAgICAgIFtfY2FuY2VsQnV0dG9uIHNldEhpZGRlbjpZRVNdOworICAgICAgICAgICAg
W19sb2NhdGlvbkJ1dHRvbiBzZXRIaWRkZW46WUVTXTsKICAgICAgICAgICAgIFtfdmlzdWFsRWZm
ZWN0VmlldyBzZXRIaWRkZW46WUVTXTsKICAgICAgICAgfQogICAgIH1dOwpAQCAtMjQ2LDEyICsz
NjYsMTQgQEAgLSAodm9pZCloaWRlQ2FuY2VsQnV0dG9uCiAtICh2b2lkKXNob3dDYW5jZWxCdXR0
b246KGlkKXNlbmRlcgogewogICAgIFtOU09iamVjdCBjYW5jZWxQcmV2aW91c1BlcmZvcm1SZXF1
ZXN0c1dpdGhUYXJnZXQ6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3IoaGlkZUNhbmNlbEJ1dHRvbikg
b2JqZWN0Om5pbF07Ci0gICAgW3NlbGYgcGVyZm9ybVNlbGVjdG9yOkBzZWxlY3RvcihoaWRlQ2Fu
Y2VsQnV0dG9uKSB3aXRoT2JqZWN0Om5pbCBhZnRlckRlbGF5OjMuMF07Ci0gICAgW1VJVmlldyBh
bmltYXRlV2l0aER1cmF0aW9uOjAuMiBhbmltYXRpb25zOiBeeworICAgIFtzZWxmIHBlcmZvcm1T
ZWxlY3RvcjpAc2VsZWN0b3IoaGlkZUNhbmNlbEJ1dHRvbikgd2l0aE9iamVjdDpuaWwgYWZ0ZXJE
ZWxheTphdXRvSGlkZURlbGF5XTsKKyAgICBbVUlWaWV3IGFuaW1hdGVXaXRoRHVyYXRpb246c2hv
d0hpZGVBbmltYXRpb25EdXJhdGlvbiBhbmltYXRpb25zOiBeewogICAgICAgICBbX3Zpc3VhbEVm
ZmVjdFZpZXcgc2V0SGlkZGVuOk5PXTsKICAgICAgICAgW19jYW5jZWxCdXR0b24gc2V0SGlkZGVu
Ok5PXTsKKyAgICAgICAgW19sb2NhdGlvbkJ1dHRvbiBzZXRIaWRkZW46Tk9dOwogICAgICAgICBb
X3Zpc3VhbEVmZmVjdFZpZXcgc2V0QWxwaGE6MV07CiAgICAgICAgIFtfY2FuY2VsQnV0dG9uIHNl
dEFscGhhOjFdOworICAgICAgICBbX2xvY2F0aW9uQnV0dG9uIHNldEFscGhhOjFdOwogICAgIH1d
OwogfQogCkBAIC0yNjEsMTEgKzM4Myw2IEBAIC0gKHZvaWQpc2V0VGFyZ2V0OihpZCl0YXJnZXQg
YWN0aW9uOihTRUwpYWN0aW9uCiAgICAgW3NlbGYgc2V0QWN0aW9uOmFjdGlvbl07CiB9CiAKLS0g
KEJPT0wpcHJlZmVyc1N0YXR1c0JhckhpZGRlbgotewotICAgIHJldHVybiBZRVM7Ci19Ci0KIC8v
IE1BUksgLSBVSUdlc3R1cmVSZWNvZ25pemVyRGVsZWdhdGUKIAogLSAoQk9PTClnZXN0dXJlUmVj
b2duaXplcjooVUlHZXN0dXJlUmVjb2duaXplciAqKWdlc3R1cmVSZWNvZ25pemVyIHNob3VsZFJl
Y29nbml6ZVNpbXVsdGFuZW91c2x5V2l0aEdlc3R1cmVSZWNvZ25pemVyOihVSUdlc3R1cmVSZWNv
Z25pemVyICopb3RoZXJHZXN0dXJlUmVjb2duaXplcgpAQCAtMjc4LDExICszOTUsMTkgQEAgQGVu
ZAogQGludGVyZmFjZSBfV0tGdWxsc2NyZWVuUm9vdFZpZXdDb250cm9sbGVyIDogVUlWaWV3Q29u
dHJvbGxlcgogQGVuZAogCi1AaW1wbGVtZW50YXRpb24gX1dLRnVsbHNjcmVlblJvb3RWaWV3Q29u
dHJvbGxlciA6IFVJVmlld0NvbnRyb2xsZXIKK0BpbXBsZW1lbnRhdGlvbiBfV0tGdWxsc2NyZWVu
Um9vdFZpZXdDb250cm9sbGVyIHsKKyAgICBCT09MIF9zaG93c1N0YXR1c0JhcjsKK30KKworLSAo
dm9pZClzZXRTaG93c1N0YXR1c0JhcjooQk9PTCl2YWx1ZQoreworICAgIF9zaG93c1N0YXR1c0Jh
ciA9IHZhbHVlOworICAgIFtzZWxmIHNldE5lZWRzU3RhdHVzQmFyQXBwZWFyYW5jZVVwZGF0ZV07
Cit9CiAKIC0gKEJPT0wpcHJlZmVyc1N0YXR1c0JhckhpZGRlbgogewotICAgIHJldHVybiBZRVM7
CisgICAgcmV0dXJuICFfc2hvd3NTdGF0dXNCYXI7CiB9CiAKIEBlbmQKQEAgLTM1OSw2ICs0ODQs
NyBAQCBAaW1wbGVtZW50YXRpb24gV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlciB7CiAgICAg
V0tXZWJWaWV3U3RhdGUgX3ZpZXdTdGF0ZTsKIAogICAgIFJldGFpblB0cjxVSVdpbmRvdz4gX3dp
bmRvdzsKKyAgICBSZXRhaW5QdHI8X1dLRnVsbHNjcmVlblJvb3RWaWV3Q29udHJvbGxlcj4gX3Jv
b3RWaWV3Q29udHJvbGxlcjsKIAogICAgIFJlZlB0cjxXZWJLaXQ6OlZvaWRDYWxsYmFjaz4gX3Jl
cGFpbnRDYWxsYmFjazsKICAgICBSZXRhaW5QdHI8VUlWaWV3Q29udHJvbGxlcj4gX3ZpZXdDb250
cm9sbGVyRm9yUHJlc2VudGF0aW9uOwpAQCAtMzY2LDYgKzQ5MiwxMCBAQCBAaW1wbGVtZW50YXRp
b24gV0tGdWxsU2NyZWVuV2luZG93Q29udHJvbGxlciB7CiAKICAgICBDR1JlY3QgX2luaXRpYWxG
cmFtZTsKICAgICBDR1JlY3QgX2ZpbmFsRnJhbWU7CisKKyAgICBSZXRhaW5QdHI8TlNTdHJpbmc+
IF9FVk9yZ2FuaXphdGlvbk5hbWU7CisgICAgQk9PTCBfRVZPcmdhbml6YXRpb25OYW1lSXNWYWxp
ZDsKKwogfQogCiAjcHJhZ21hIG1hcmsgLQpAQCAtNDA1LDE2ICs1MzUsMTAwIEBAIC0gKFdlYkNv
cmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3ICopd2ViVmlld1BsYWNlaG9sZGVyCiAjcHJhZ21h
IG1hcmsgLQogI3ByYWdtYSBtYXJrIEV4cG9zZWQgSW50ZXJmYWNlCiAKKy0gKHZvaWQpX2ludmFs
aWRhdGVFVk9yZ2FuaXphdGlvbk5hbWUKK3sKKyAgICBfRVZPcmdhbml6YXRpb25OYW1lID0gbmls
OworICAgIF9FVk9yZ2FuaXphdGlvbk5hbWVJc1ZhbGlkID0gTk87Cit9CisKKy0gKEJPT0wpaXNT
ZWN1cmUKK3sKKyAgICByZXR1cm4gX3dlYlZpZXcuaGFzT25seVNlY3VyZUNvbnRlbnQ7Cit9CisK
Ky0gKFNlY1RydXN0UmVmKV9zZXJ2ZXJUcnVzdAoreworICAgIHJldHVybiBfd2ViVmlldy5zZXJ2
ZXJUcnVzdDsKK30KKworLSAoTlNTdHJpbmcgKilfRVZPcmdhbml6YXRpb25OYW1lCit7CisgICAg
aWYgKCFzZWxmLmlzU2VjdXJlKQorICAgICAgICByZXR1cm4gbmlsOworCisgICAgaWYgKF9FVk9y
Z2FuaXphdGlvbk5hbWVJc1ZhbGlkKQorICAgICAgICByZXR1cm4gX0VWT3JnYW5pemF0aW9uTmFt
ZS5nZXQoKTsKKworICAgIEFTU0VSVCghX0VWT3JnYW5pemF0aW9uTmFtZS5nZXQoKSk7CisgICAg
X0VWT3JnYW5pemF0aW9uTmFtZUlzVmFsaWQgPSBZRVM7CisKKyAgICBTZWNUcnVzdFJlZiB0cnVz
dCA9IFtzZWxmIF9zZXJ2ZXJUcnVzdF07CisgICAgaWYgKCF0cnVzdCkKKyAgICAgICAgcmV0dXJu
IG5pbDsKKworICAgIE5TRGljdGlvbmFyeSAqaW5mb0RpY3Rpb25hcnkgPSBbKF9fYnJpZGdlIE5T
RGljdGlvbmFyeSAqKVNlY1RydXN0Q29weUluZm8odHJ1c3QpIGF1dG9yZWxlYXNlXTsKKyAgICAv
LyBJZiBTZWNUcnVzdENvcHlJbmZvIHJldHVybmVkIE5VTEwgdGhlbiBpdCdzIGxpa2VseSB0aGF0
IHRoZSBTZWNUcnVzdFJlZiBoYXMgbm90IGJlZW4gZXZhbHVhdGVkCisgICAgLy8gYW5kIHRoZSBv
bmx5IHdheSB0byBnZXQgdGhlIGluZm9ybWF0aW9uIHdlIG5lZWQgaXMgdG8gY2FsbCBTZWNUcnVz
dEV2YWx1YXRlIG91cnNlbHZlcy4KKyAgICBpZiAoIWluZm9EaWN0aW9uYXJ5KSB7CisgICAgICAg
IE9TU3RhdHVzIGVyciA9IFNlY1RydXN0RXZhbHVhdGUodHJ1c3QsIE5VTEwpOworICAgICAgICBp
ZiAoZXJyID09IG5vRXJyKQorICAgICAgICAgICAgaW5mb0RpY3Rpb25hcnkgPSBbKF9fYnJpZGdl
IE5TRGljdGlvbmFyeSAqKVNlY1RydXN0Q29weUluZm8odHJ1c3QpIGF1dG9yZWxlYXNlXTsKKyAg
ICAgICAgaWYgKCFpbmZvRGljdGlvbmFyeSkKKyAgICAgICAgICAgIHJldHVybiBuaWw7CisgICAg
fQorCisgICAgLy8gTWFrZSBzdXJlIHRoYXQgdGhlIEVWIGNlcnRpZmljYXRlIGlzIHZhbGlkIGFn
YWluc3Qgb3VyIGNlcnRpZmljYXRlIGNoYWluLgorICAgIGlkIGhhc0VWID0gW2luZm9EaWN0aW9u
YXJ5IG9iamVjdEZvcktleTooX19icmlkZ2UgTlNTdHJpbmcgKilrU2VjVHJ1c3RJbmZvRXh0ZW5k
ZWRWYWxpZGF0aW9uS2V5XTsKKyAgICBpZiAoIVtoYXNFViBpc0tpbmRPZkNsYXNzOltOU1ZhbHVl
IGNsYXNzXV0gfHwgIVtoYXNFViBib29sVmFsdWVdKQorICAgICAgICByZXR1cm4gbmlsOworCisg
ICAgLy8gTWFrZSBzdXJlIHRoYXQgd2UgY291bGQgY29udGFjdCByZXZvY2F0aW9uIHNlcnZlciBh
bmQgaXQgaXMgc3RpbGwgdmFsaWQuCisgICAgaWQgaXNOb3RSZXZva2VkID0gW2luZm9EaWN0aW9u
YXJ5IG9iamVjdEZvcktleTooX19icmlkZ2UgTlNTdHJpbmcgKilrU2VjVHJ1c3RJbmZvUmV2b2Nh
dGlvbktleV07CisgICAgaWYgKCFbaXNOb3RSZXZva2VkIGlzS2luZE9mQ2xhc3M6W05TVmFsdWUg
Y2xhc3NdXSB8fCAhW2lzTm90UmV2b2tlZCBib29sVmFsdWVdKQorICAgICAgICByZXR1cm4gbmls
OworCisgICAgX0VWT3JnYW5pemF0aW9uTmFtZSA9IFtpbmZvRGljdGlvbmFyeSBvYmplY3RGb3JL
ZXk6KF9fYnJpZGdlIE5TU3RyaW5nICopa1NlY1RydXN0SW5mb0NvbXBhbnlOYW1lS2V5XTsKKyAg
ICByZXR1cm4gX0VWT3JnYW5pemF0aW9uTmFtZS5nZXQoKTsKK30KKworLSAodm9pZCl1cGRhdGVM
b2NhdGlvbkluZm8KK3sKKyAgICBOU1VSTCogdXJsID0gX3dlYlZpZXcuX2NvbW1pdHRlZFVSTDsK
KworICAgIE5TU3RyaW5nICpFVk9yZ2FuaXphdGlvbk5hbWUgPSBbc2VsZiBfRVZPcmdhbml6YXRp
b25OYW1lXTsKKyAgICBCT09MIHNob3dzRVZPcmdhbml6YXRpb25OYW1lID0gW0VWT3JnYW5pemF0
aW9uTmFtZSBsZW5ndGhdID4gMDsKKworICAgIE5TU3RyaW5nICpkb21haW4gPSBuaWw7CisKKyAg
ICBpZiAoTGlua1ByZXNlbnRhdGlvbkxpYnJhcnkoKSkKKyAgICAgICAgZG9tYWluID0gW3VybCBf
bHBfc2ltcGxpZmllZERpc3BsYXlTdHJpbmddOworICAgIGVsc2UKKyAgICAgICAgZG9tYWluID0g
dXNlclZpc2libGVTdHJpbmcodXJsKTsKKworICAgIE5TU3RyaW5nICp0ZXh0ID0gbmlsOworICAg
IGlmIChbW3VybCBzY2hlbWVdIGNhc2VJbnNlbnNpdGl2ZUNvbXBhcmU6QCJkYXRhIl0gPT0gTlNP
cmRlcmVkU2FtZSkKKyAgICAgICAgdGV4dCA9IEAiZGF0YToiOworICAgIGVsc2UgaWYgKHNob3dz
RVZPcmdhbml6YXRpb25OYW1lKQorICAgICAgICB0ZXh0ID0gRVZPcmdhbml6YXRpb25OYW1lOwor
ICAgIGVsc2UKKyAgICAgICAgdGV4dCA9IGRvbWFpbjsKKworICAgIFtfZnVsbHNjcmVlblZpZXdD
b250cm9sbGVyIHNldExvY2F0aW9uOnRleHQgc2VjdXJlOnNlbGYuaXNTZWN1cmUgdHJ1c3RlZE5h
bWU6c2hvd3NFVk9yZ2FuaXphdGlvbk5hbWUgdHJ1c3RlZFNpdGU6ISFFVk9yZ2FuaXphdGlvbk5h
bWVdOworfQorCiAtICh2b2lkKWVudGVyRnVsbFNjcmVlbgogewogICAgIGlmIChbc2VsZiBpc0Z1
bGxTY3JlZW5dKQogICAgICAgICByZXR1cm47CiAKKyAgICBbc2VsZiBfaW52YWxpZGF0ZUVWT3Jn
YW5pemF0aW9uTmFtZV07CisKICAgICBfZnVsbFNjcmVlblN0YXRlID0gV2FpdGluZ1RvRW50ZXJG
dWxsU2NyZWVuOwogCiAgICAgX3dpbmRvdyA9IGFkb3B0TlMoW1tVSVdpbmRvdyBhbGxvY10gaW5p
dF0pOwogICAgIFtfd2luZG93IHNldEJhY2tncm91bmRDb2xvcjpbVUlDb2xvciBjbGVhckNvbG9y
XV07Ci0gICAgW193aW5kb3cgc2V0Um9vdFZpZXdDb250cm9sbGVyOmFkb3B0TlMoW1tfV0tGdWxs
c2NyZWVuUm9vdFZpZXdDb250cm9sbGVyIGFsbG9jXSBpbml0XSkuZ2V0KCldOworICAgIF9yb290
Vmlld0NvbnRyb2xsZXIgPSBhZG9wdE5TKFtbX1dLRnVsbHNjcmVlblJvb3RWaWV3Q29udHJvbGxl
ciBhbGxvY10gaW5pdF0pOworICAgIFtfd2luZG93IHNldFJvb3RWaWV3Q29udHJvbGxlcjpfcm9v
dFZpZXdDb250cm9sbGVyLmdldCgpXTsKICAgICBbW193aW5kb3cgcm9vdFZpZXdDb250cm9sbGVy
XSBzZXRWaWV3OmFkb3B0TlMoW1tVSVZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6W193aW5kb3cg
Ym91bmRzXV0pLmdldCgpXTsKICAgICBbW1tfd2luZG93IHJvb3RWaWV3Q29udHJvbGxlcl0gdmll
d10gc2V0QmFja2dyb3VuZENvbG9yOltVSUNvbG9yIGNsZWFyQ29sb3JdXTsKICAgICBbW1tfd2lu
ZG93IHJvb3RWaWV3Q29udHJvbGxlcl0gdmlld10gc2V0QXV0b3Jlc2l6aW5nTWFzazooVUlWaWV3
QXV0b3Jlc2l6aW5nRmxleGlibGVXaWR0aCB8IFVJVmlld0F1dG9yZXNpemluZ0ZsZXhpYmxlSGVp
Z2h0KV07CkBAIC00MjcsNiArNjQxLDcgQEAgLSAodm9pZCllbnRlckZ1bGxTY3JlZW4KICAgICBb
X2Z1bGxzY3JlZW5WaWV3Q29udHJvbGxlciBzZXRNb2RhbFByZXNlbnRhdGlvblN0eWxlOlVJTW9k
YWxQcmVzZW50YXRpb25DdXN0b21dOwogICAgIFtfZnVsbHNjcmVlblZpZXdDb250cm9sbGVyIHNl
dFRhcmdldDpzZWxmIGFjdGlvbjpAc2VsZWN0b3IocmVxdWVzdEV4aXRGdWxsU2NyZWVuKV07CiAg
ICAgW1tfZnVsbHNjcmVlblZpZXdDb250cm9sbGVyIHZpZXddIHNldEZyYW1lOltbX3ZpZXdDb250
cm9sbGVyRm9yUHJlc2VudGF0aW9uIHZpZXddIGJvdW5kc11dOworICAgIFtzZWxmIHVwZGF0ZUxv
Y2F0aW9uSW5mb107CiAKICAgICBbc2VsZiBfbWFuYWdlcl0tPnNhdmVTY3JvbGxQb3NpdGlvbigp
OwogCkBAIC00NjEsNiArNjc2LDcgQEAgLSAodm9pZCllbnRlckZ1bGxTY3JlZW4KICAgICAgICAg
W3NlbGYgX21hbmFnZXJdLT5zZXRBbmltYXRpbmdGdWxsU2NyZWVuKHRydWUpOwogCiAgICAgICAg
IF9yZXBhaW50Q2FsbGJhY2sgPSBWb2lkQ2FsbGJhY2s6OmNyZWF0ZShbcHJvdGVjdGVkU2VsZiA9
IHJldGFpblB0cihzZWxmKSwgc2VsZl0oV2ViS2l0OjpDYWxsYmFja0Jhc2U6OkVycm9yKSB7Cisg
ICAgICAgICAgICBfcmVwYWludENhbGxiYWNrID0gbnVsbHB0cjsKICAgICAgICAgICAgIGlmICgh
W193ZWJWaWV3IF9wYWdlXSkKICAgICAgICAgICAgICAgICByZXR1cm47CiAKQEAgLTQ4OSwxMSAr
NzA1LDEzIEBAIC0gKHZvaWQpYmVnYW5FbnRlckZ1bGxTY3JlZW5XaXRoSW5pdGlhbEZyYW1lOihD
R1JlY3QpaW5pdGlhbEZyYW1lIGZpbmFsRnJhbWU6KENHCiAKICAgICBbX3dpbmRvdyBzZXRXaW5k
b3dMZXZlbDpVSVdpbmRvd0xldmVsTm9ybWFsXTsKICAgICBbX3dpbmRvdyBtYWtlS2V5QW5kVmlz
aWJsZV07CisgICAgW19yb290Vmlld0NvbnRyb2xsZXIgc2V0U2hvd3NTdGF0dXNCYXI6WUVTXTsK
IAogICAgIFtDQVRyYW5zYWN0aW9uIGNvbW1pdF07CiAKICAgICBbX3ZpZXdDb250cm9sbGVyRm9y
UHJlc2VudGF0aW9uIHByZXNlbnRWaWV3Q29udHJvbGxlcjpfZnVsbHNjcmVlblZpZXdDb250cm9s
bGVyLmdldCgpIGFuaW1hdGVkOllFUyBjb21wbGV0aW9uOl57CiAgICAgICAgIFtzZWxmIGNvbXBs
ZXRlZEVudGVyRnVsbFNjcmVlbl07CisgICAgICAgIFtfcm9vdFZpZXdDb250cm9sbGVyIHNldFNo
b3dzU3RhdHVzQmFyOk5PXTsKICAgICB9XTsKIH0KIApAQCAtNTM2LDExICs3NTQsMTMgQEAgLSAo
dm9pZCliZWdhbkV4aXRGdWxsU2NyZWVuV2l0aEluaXRpYWxGcmFtZTooQ0dSZWN0KWluaXRpYWxG
cmFtZSBmaW5hbEZyYW1lOihDR1IKICAgICAKICAgICBbX3dlYlZpZXcgX3BhZ2VdLT5zZXRTdXBw
cmVzc1Zpc2liaWxpdHlVcGRhdGVzKHRydWUpOwogCisgICAgW19yb290Vmlld0NvbnRyb2xsZXIg
c2V0U2hvd3NTdGF0dXNCYXI6WUVTXTsKICAgICBbX2Z1bGxzY3JlZW5WaWV3Q29udHJvbGxlciBk
aXNtaXNzVmlld0NvbnRyb2xsZXJBbmltYXRlZDpZRVMgY29tcGxldGlvbjpeewogICAgICAgICBp
ZiAoIVtfd2ViVmlldyBfcGFnZV0pCiAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgW3Nl
bGYgY29tcGxldGVkRXhpdEZ1bGxTY3JlZW5dOworICAgICAgICBbX3Jvb3RWaWV3Q29udHJvbGxl
ciBzZXRTaG93c1N0YXR1c0JhcjpOT107CiAgICAgfV07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0RvbmUuaW1hZ2VzZXQvQ29udGVudHMuanNvbiBiL1Nv
dXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNzZXRzL0RvbmUuaW1hZ2VzZXQvQ29udGVudHMuanNvbgpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDgwYmU0MmQyODBkNTNmMTNjYWRiYzE2NWQ4
MTc5MmExNjZkOTBmMi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Eb25lLmltYWdlc2V0L0NvbnRlbnRz
Lmpzb24KKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCwwIEBACi17Ci0gICJpbWFnZXMiIDogWwot
ICAgIHsKLSAgICAgICJpZGlvbSIgOiAidW5pdmVyc2FsIiwKLSAgICAgICJmaWxlbmFtZSIgOiAi
RG9uZS5wZGYiCi0gICAgfQotICBdLAotICAiaW5mbyIgOiB7Ci0gICAgInZlcnNpb24iIDogMSwK
LSAgICAiYXV0aG9yIiA6ICJ4Y29kZSIKLSAgfSwKLSAgInByb3BlcnRpZXMiIDogewotICAgICJ0
ZW1wbGF0ZS1yZW5kZXJpbmctaW50ZW50IiA6ICJ0ZW1wbGF0ZSIKLSAgfQotfQpcIE5vIG5ld2xp
bmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnhjYXNz
ZXRzL0RvbmUuaW1hZ2VzZXQvRG9uZS5wZGYgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0
cy9Eb25lLmltYWdlc2V0L0RvbmUucGRmCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1
NzY5OWIyMjY4YTkyZmU4ODM1YTk3YWRiYzdiOTkxY2EwZTY4YjZlLi4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/
ZDAwMDAxCgpsaXRlcmFsIDQxNzAKemNtYWkmY3tyNWNgXk5gVTdfeVdsUVlJT2FaTmBqY2w2NVNK
dFNQJUAjQEhGem0ja1VCJGV0KChtMUhmN0ZrfmtfCnpDZk8/XyM9ZXNeYE9kV2JLSzFRKVVFays9
dTZmUzlwWm5iQiUoPnJ4eXpZVk10NyhZQ0I7WClPNk0yPDltJCZ4ZAp6WkJxKmYwZnZJezcpUXsj
YjZgbXdvVTVJdUp5QEN8OEc8RD45R3BGST92JHI5KzdxWFMhe1RqbFVgMGljaG8/SVoKej9FPjxw
ITZobFU5KX5mOT88eVJhMTY8d2BQNGQkSF5vSEtJRyFkVyttPlRBOSg+RmdALUZLY1poO0tJNVk5
YGh7CnpWekJGP2ZIdlhQakJOWXR1JSlgOFF5IzhjeExwN0dUbVJAd1kkZnlKaUdDY01CaXhjfTcq
UWhBaV84PTI0Y2RiIwp6ciE8VUhZYWttOEMpPiVFMHJRPGtMKFlPTWk/dF9HM05pfENyOyV9b3o/
SnFSRDFjNkJ5dGx0K15zP0xQaD93UykKejd5QTZZSXdoR1hgJFkwTm5mRnwhKkV7X24pdVQzTiNP
SllzZ25aWkIrWCRRUlRqPkZPN2R1dkhSdDBhU004NXBVCnomaTx9fXh2UzZ2Y0VOcDlKVnl9QSN7
LVhZMSV+Sn1MSH1Yek0qM0pKQDgwZSo4WD9yRV89VS1HLWg+cHdMYzFnZQp6PkJUeVF2VylUdi1f
MnM/Pjk1OzhsVjR7c3UldGg1RDlyOUlLeiU+YXw2MF9yczdseH1GR1A2U0ViUGdpbzhNSVMKeiRT
c0QwUEFuYSklb1glV2prQHFjSlk4dilQYFllcF4oUnd7e2ttJHM5V0RJbUclRmY7SSYqKFhvKX1q
dXZ6TjFeCnpiWUNAbzNUZjtBOE1pJl9zK1g1JChzPmk5I2JvQXtLeF80fmA5TTZZe35rU1ZBO2w0
ZGJHNytkOE9uJVNQLSsjYQp6UGRFfXVlTXVja3tae0tzZXJgQ2hxKDBqMmA9PmszKWV7Vz1RRmxY
fTJqMHNhaX1MYD57MTh4aFM1TH0mND1+aiQKejZrfVkoKipLdDhAeEVZbENgRXVGRFlxcXY7KjZp
R1AtcCNlbClnSjJZbFFPem5eVHJqKCpScTdCfmZeMXl0fFBiCno4akF4e0VyO0BlZm5+cF5SYUIo
OT50X3pSLSpXdFBDR3ZaZXElTEtma302Ylp4PjlUam1RPSVlSjc5NSFueVVaWAp6dSRpfWdFKlRB
Uk1ValpJI0o3aDl6PnN4YmVANV4tYFNZQVdnSmBWfmVjSCV5QSNiJDw4WFc4Km11KVYrcnFQVE4K
enpeWmRGLTNZQEJGc2AhY3g2flZgc2dzOFpQSy0tTShyWTZiZCMkRlVMc0p6NEx2fkFuMTYyVjF1
VktJalBaT0ZECnpNNzlhWDsjfEdPO1VnVlFvM3V5U1hqbntXVVhSKEAweVZlUFhuVmdCNzFHbjZv
TnA9SFNkPDh7c3MxMlZyIVZCdQp6emFOfF5BZDM8XzJtcTx+JCgjIWs7d0lDazc/bX5pTmJMalB0
ZnpgZE1aJT1HdktleTwxOygzN29IejAmTVhUSEkKenF6TyVBXk98PD8pRkFFP3NgVz1RQVktYCVW
N0EyXyRTMXFwPi0wRntDOU1ucWRHbUJuJig9TDEwRikhJHhecWU+CnorY3tjRm9yN21GZFgqTnlr
a1cqI2FjN0MkTSV2IzhfJiZDcWh5Z314VklIIyYrO0pkSng3cUhqbG9AU2ZWNF45Rgp6N3NxYjs+
WDZwVW5RdVk0THJVPHMpb0NFNkY2czcoM3FeYmozI1I+KF9TPHpzcWJHdWxfN3ZMdWNhMndzPTFL
UWUKejI9YDQjbyN6V0JpQ2xtVUw5QEhaJVc2fU4wcCVfU21DMGo7ZFBgdXk+SCRGYyRpMX1fazxN
MDBPYG47Q25QVFZYCnpvanF1Pm9GcWkyV3B9Zn1ATmVvT2soPW9xaUBUVFFBOUV7KHAzPnJrPEo4
SEleQiF4ZmIjXmtkcT4qZylIcmUqYQp6VW4zcDxYPlN5fW0tVSleQzFUcHhVXjt+e0psZWlHOyN7
YW5mYGtueUpoKlF4X142QzlKeEBAazZOa04qSDZTbm8KenNiOHJALS1jSEpwaWE+VngrP2s4MkZ7
dFkhOVo9YkhURmVgQl84b297QDxve18/YXdYVCpxYCYxZEp2KG5CIzVTCnpBdnQwXnh1ZkNFXnxY
Zio9c2gyUjVUTyFLVEN1QiNfKElAcmJSJUZ1Yyp1RCt5NCFSVD1WPXwzZnpNU0cyTFRgegp6KmRV
R2Y0TSNVWFo+YXhVcGwrQ3ErZCZLOW1EaCpkbjN6S31sfGhtOStFQUwyUHpRI3ZXajQrbm04U19A
NF9WVnkKemBgTTB9RzVEY1deeU42e25vLWRTWSlRKTdaLXQmNUojKnR9SGNEUyV7Z2Z3ZjZAJXJD
b2RAKTkhSDkhPEc9YnNsCnpjVzhVaWhYdyZKTHh4Sl9gNH1gQ0l6RmxTYV45b29lKkl6V0xNNHxY
T0dOfHMqcyoxUlNjRyokR0p8cCgxNntYPAp6M0IkMSFIUHIrWUtecGR4UEtnMiFZNGc9SDU/Q0d7
ZGxoIytAIUFDNCFLaUhYb3VnYldKbVhRT2dmWXh6YlUpPy0KendDQGh+JlNmMyROZn0hPGM8NlQ2
QlRWMTMkMG92c081VGh6PzA0aERuPVc2Q3ppTThaX0thPjJKdWxENCgpeWFgCnpHb00+Zjx4dllN
U0x0RzQxP3ZFekklS1ojKDNzR1FaX1N3emotQGN4ZFhIdHleXj4pclY3fWxKcXcpTUxiOzFkWgp6
VzxhTWYpfDBvdmczZn1NKm14UEg4MX07MTh4UkplUHhMJG1CSDg/IUVIRU9eWlZqcmBYej5aQENV
YTstM1VWNj8KemlsbW9eVWVhPER1b099ZEJBIWZjS1duNHVlJC1VaU8wUVRqM3YzTnhPO1haTklX
NUdZY1kja2BieDBSXjtnenpWCnp2TEVWXjtoYHQ0eShVbFpSQXJqITUhQ2BPMVdJWnEhXyhIJSNA
bWFNM2xnMUQ9aDZab2RNTntHSzU1bnhTO0UjUQp6Z0QtcjB7SSF6U3BrQkcmQ15XYjlhPDt9O2Q0
b2NQbVU+MWBEJns2ODB+M3c4QG1hZHIwOCowX25wQU9FRkpGMTQKel5kMDJVTm5Ye1NNfUZAciVQ
KkZuZVVFeiZKKzNNSGFKTUlVcmdAIXpueit1MGdXJH1gcl4kUnxVVUp6UiEtRWFiCnp0Nk9rR289
MWRhTE55X040S2V3T0cqMD47UXtySD9VbjcjYmVhN3w3XjtDZ1crZjxzPV9AX0Y/XyYkIWwlJT82
LQp6Xj9JUj5MWEskMUE7O1o1aUdueSU5PzlvRURicElVS2srcWN3ek1rUnpqRFglT1hJQTxZJSpe
S1ohSXFtdVE2e0wKenFEN2h+ISFASGxnUGJ2aVhmM3hsVnxvRUpCYiFhVnUhNSRoRkxxd0NnX09s
MnZ4fHhzXjJFQ3A5fVg4TjZrKHJ+CnpuYl9zKG1VU0ptT3AtOHtSaklKM0YhRTg9KTBRLW12QFM3
TiUycVZVRCQwNlRyJih0bntPMHZyQGNYTj1EdEdJagp6V1hFTEpxM0AkfSRGUWZLQ0toeWAkdS1O
Qlo7YHtreWNWO2ZJQnFVZjhsOTw/cSFyaEcoUColRDxrSG5EUWFPcCkKelkwX1FAUTZPRjJucDY3
RylVOzVle3tnYmBULSlfcnpxe0xfT2JXM2t2Nik9TVQtSVU+Vm4qVX5WKkk4ZXJVeSkxCnolNGJW
PThzOWYlSTlYeD9UTyVGRXYxTUo0aGJMYlk8JV5HYypEVkNmWElQZEZiNS1rQmxRdmozMWFeZ1hW
ZXxANwp6ekVNUCQlfFREXik3OWFEZWU4NDdXMGhTaWdtSFN8ME80bW5UNnY/SHJkPVhraHFgaV5u
N05tXmQmUTVzY1Y4UTsKejxhMUF5dSNxNUdgP19XSzhoPU9+SD1Fbih5Zl9keTw9eTFjRyg0eTx2
eyQoKyVCc3pwczJTVXVsOXhRaU9KY0lSCnpuTzFUb0BrJldXKGs1b2ZhVmJ5bnRZV2xjb1pedk1A
N2pWdSR1MENBP1ZrNn1AWT14ZylYdT1KOSM5VGckVCRzcAp6Mi1FO3hyZE1RPVZteTRuMylvbXNR
KHFtJUZacz98KDR2PSVSYG5+JkpLYExwR194aD1qPmwwNkYrYCF6eWtEaVUKelo7LURLUCNtTUto
SDkhbEFLJihfTyoxeCpPUGs5X3FnfUlFeS0pTF5kVnFTR3hefGswbX0lTEIyRW1LfmV5cVU3Cnpl
fmRGZyhBenpLXldDc14pY0V7byhEPFNSK35SaUd7Q29FbzxvcGcmYWV7VGQ+OXNRX2pgMUhLVyFz
TkYodlZOcQp6RFBGZ0o8d0ZKekJ2KGk2Q1FZQDdQUXxUUVpzRVFyMEBLMnVoaiopYEhDYVl1d1Rp
Vmt3Wj5gblI5PH1ZZFR6Wk0KekkrMzR9a2RpOWAmK3BGdiQwNTlZdEdxYFFme3JOX3dTKzRPNkQx
b0Z4bG1OcTg7OEN7PDBDb0ItSEFHPEp4cHpACnpANygmUF5XezgyQEdqKHJETn51X15BUzV1VC1G
PGRQV0grNWlIciU/al5waVg/WWx3SnckZVVjY0QzSCRCRVF5NAp6RkZMVWxNZjRZMmUwWmhuVl85
RHtfTjhfJS1VYU0oZXJVTnZxYXpNP1l9N1NvcX1Ta3FMMjJ6KGA/OTZVN1MmZygKejI0aDY9RV5g
Kj1XQGs/NGc8OyNXQkY3SkQwI0BCJEZkZCZgS0k9Z35DZTRrUzI0Mn03PyVXN3BBVUBpN3dDblQ5
CnpvNUFQZkBKIVgzTmprPlZZVXBrOEMoOXlvPVc1UHNNZkh7VytSSkczWWdidHY7JSh4fnJKZyh8
VU1PK1k/OH0+ZAp6STIrMHZwRHtfQzRYOVlpZUJiKEVwbDtNOXhROFo9dTk7cigxUDVQRGFORE43
UTt+e0dHeTNDTFZJeWZTWFNTLSYKekY0I0kpWlE9WSVCMXRuc15IRk88eWpQIW0/fHwkUiolWDxF
eFRLYjY8SlZnOGQhTjNiMCooflM9KS1lZ1oyeyNACnpCM0N9UVp0KllPWEZmT043WmRuJk10Q280
PEs8aGs3XztwRGtOd2R2QUlkbGM9bWQ8O2chRSh7Pz5hODdiYSgmeQp6SSQ8THtxd0l+SEhZdUAt
XldJJSNtUVQ+Q1lEPmdRWSYzViYqKDt1a1Jwa0AhR0spKSNNPjt+Jk5+fjYxeCN4YyUKej90VjIr
RTNoakBURk03ejFgLXp7X3V+M2JSTnVkQ0pzOyNTXkoyK2BJT0E1ZmNZRDAoUl8lZW5zVTZFKiQm
cm4hCnpLPVE1cSV3dSUxMlhfYEZZNkpHSUp9UyV2al9oXlE9ZClUVmJeNlFnKzMjV0okOCZeMWRT
fnVHUlZ2ISsrWndSVgp6QyQ3Jnc3YFJGKnlKOzY2UyY1UnxQdSh1allkaz44Q3k4cDVZc19qRVhf
NSVyZ2trP0A+Jj9wQGd0VlVWaCZxdlAKekZFPi1XMyRsV0ljOFBZRl9OSGEwP3p3Y08zbk5jemt2
c2h4RT5rd3M2Rm9pLU9PTnduTWhhP2BIYlZFWmNkX2ZPCnppOEokaFRZOU5rYVl7YmQ4TmFVajNj
MSkkaiY2cHA/Znk7R1Iwe28kKGxSaXFVJDlFJFNFQCNWVHJDdHo3NDNudQp6MGFGM2k1TiFEP2dv
QFVgbkR9NHZfVzF1PG5oTUVZNmRzM3hDQUElRkpTZ3g/MSRSb2UtdkFqI01lamN8cVJeZ2IKelhU
MDRIc1EzNnVeWnowPjRFQSV6PjVGSkFTa0RNLTApe34pVXtWcVl1ej9yYS1QMGRUQUB1TDRAOVFi
QFl1flY2CnpFeUhRR3ZyPHIpRUVFQW5MWiN0d0RCS0pSNntnKChNKmctUjNpYUR+VkpXQGlfY2JY
VTFCJWl6ZE9GfTspdV9uKwp6SnR3dHx6fXgpKHtva0dYeTVucD9sKlIlTWc4dHRIbVhWZipPTWA4
fUtRKnxGRWFpeCk3dWZaZTI5PF9VSStROygKekk2fDg4NmFMaG9QXnJIKTFkYEcpe2EyZ31qTUJe
ZXNsZ0YyTzFifmtwZllsUXVNMD4xNiRoc3IrPCh1N09Vd1BPCnokLXNZRypWNyZDO0VaJHMtaz0q
Zl8qMmYwKGZ9RmFAZjNlaEp3UTF+RW12RFMjVmtMQFk4MVBpIV4rOVhObFV7cAp6R0h8I1FPYlJR
NyE5byEqbT5lOHhWfmFyfVdNUFYre35od2ZaWFRXI1lrViZWVHZuUiQqOHhPYlBYcUtIUEpSPzwK
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y2Fzc2V0cy9Mb2NrTWluaS5pbWFn
ZXNldC9Db250ZW50cy5qc29uIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvTG9ja01p
bmkuaW1hZ2VzZXQvQ29udGVudHMuanNvbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mODZkZGMxOGQzMTBmNDJmNTJm
NjNiMzFlM2RmOTE2OGMxOTIzMTVjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQvQ29udGVudHMuanNvbgpAQCAtMCwwICsx
LDIyIEBACit7CisgICJpbWFnZXMiIDogWworICAgIHsKKyAgICAgICJpZGlvbSIgOiAidW5pdmVy
c2FsIiwKKyAgICAgICJzY2FsZSIgOiAiMXgiCisgICAgfSwKKyAgICB7CisgICAgICAiaWRpb20i
IDogInVuaXZlcnNhbCIsCisgICAgICAiZmlsZW5hbWUiIDogIk5hdmlnYXRpb25CYXJMb2NrTWlu
aUAyeC5wZGYiLAorICAgICAgInNjYWxlIiA6ICIyeCIKKyAgICB9LAorICAgIHsKKyAgICAgICJp
ZGlvbSIgOiAidW5pdmVyc2FsIiwKKyAgICAgICJmaWxlbmFtZSIgOiAiTmF2aWdhdGlvbkJhckxv
Y2tNaW5pQDN4LnBkZiIsCisgICAgICAic2NhbGUiIDogIjN4IgorICAgIH0KKyAgXSwKKyAgImlu
Zm8iIDogeworICAgICJ2ZXJzaW9uIiA6IDEsCisgICAgImF1dGhvciIgOiAieGNvZGUiCisgIH0K
K30KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYktpdC54Y2Fzc2V0cy9Mb2NrTWluaS5pbWFnZXNldC9OYXZpZ2F0aW9uQmFyTG9ja01pbmlA
MngucGRmIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvTG9ja01pbmkuaW1hZ2VzZXQv
TmF2aWdhdGlvbkJhckxvY2tNaW5pQDJ4LnBkZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NmRhZWQxMzVlNDU1YWEz
NmQzZDUxMGE4ZDI0YjcyNjFlZDFjOWM3CkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCA1OTI2Cnpj
bWJ0WTJVSFZYdSU9MkNQIVNYbUFgKkhAWGFTTDRMZXRRdExqc3tnRm9YXlFOLXhxeDFPJWpzZkZL
R0FmOzh6Owp6QXt8N1Veaj8yREApRkQ2e0xndmtvd3EwMS1PUWJ4ZHVRZ2AkKDt8VnJLQlBONzhJ
Y2JIcUNDJEY2VkRRe25YUyMKekRHQzRxUHpWUmc4I2UkI25uKUwwajIlRD5DKDsyM3NufFBWa1o5
YzEzNjRRM0ErMW8+TlB2dENyNWdyfmdnYUF1Cno1anlMMSsjJnszem58eXhRej4rdVBadFVJZ2BF
VW1CK3FyJFVPZCYlZTRVbkNJSmA/MlljYyVfZ34/YENlbFJ7NAp6citPYDRqKilVakwxKjI9NjQ/
Nm9zPzx7IVJwT303OzlMajhabEQ4NUwqeHFNb2VgKXBMQDBseUk4OHNlbmJCXyQKellkfHxKZD98
JHRsaDt7cks0dkdkdXolUDB6REBNcFdiYyE3PH5Hc2wzdjlEKlV1RWgmPTImX0BzTGBneWRGUmZu
CnpWWkBuNz9gQ3c9M1QoVFMxPylWbSpFS3R1JlF4RlRYMFlYbENPdl59QCl+b0dmNmkpRGRRPm5S
WnJvbWAjSEgzJQp6Jis/WUlVUk92YXUpKHJIVmZTZ1JFZEw4RG82ZiF7KnApZWQ0RHk/PFc4T0JF
bmNCdkUtcWctQHZVSS1zX31heU4KenBXRFczVD49PTNnfmAoUGB9NjBPbCs+dDxvP05AU1NaMm5m
UEEoNGtxbkEyRUF3PUlWbmdVQjU2VC1qVzchKkZhCno7ciF8PjxHdTthMTM0NHBFfjRVZFBMeyg9
QSo2JVZaXzE5XzxVJl5LMFE0YERZQk93SlY2YiFRdCRSX3VxcU9QWQp6Mi1NN3EhWUdrMCk7fE19
eVRqKVRwQ3RUTUx8aHl7aGAkeTdUUHBSdVU2QkFHRXg3SVhHYUJpRjBmX3Vhc305bCkKejwmTCZP
eCZnJDAyb3pCKzd+SHJVMDFwTFItZnRxVT9jb1kyRk10VU1DamJpcnp6e1BeVDtoTXVmYDk1NFY2
QE9FCnpEX3RaOFYxaz1VTmQ7Z0E1Sz1AcnEwcVhuYTRSR0xrMD9icUZhWXgxdGMobW0kUGs4Ykt3
NHFHa0VsMzwwVE1xKQp6eyQ/RjdgZXBxbTkze1ZOe1U7b1Nlel5JfHU4XilmMGB1Syo2JV5WVGhn
e3FsdVIjZTAycX1FYE5CfDUxO0o/RGMKejBBVWJyeHFrJSVDO2FYYDZwZUNze2t9cTdmUkcqPD8m
OVZPJEEhPHo4fFJFSjAxVT0hUTN8TzZGbGN2TlhmKiZmCnphMz9xWGQtMER+Z0hNbEtrNlo3UG0/
Kil0RGUxTHFwbGY3SkFZclhHIXRNSEtTQW1jbHF7SU1HUTVeemFBJDVJbgp6R0t6JjE5JjZxT0RN
bl5Ba253KXJTXkNKdHBlb0lWO1U/N3ZrezlBUHVoSjF6YnV3VW8yTExgU18oKH5Kez5zZEUKejdr
JmxyfENYQSsodT5SWVp5NW1wZ3c4RC1oSkB0dFJseDtVNSYlTDxORHE0fXF6K1chZT1pcDRrMzk4
c007T0FlCnpISVNONT1oKj9rOVZRPE5LKENiUU1IMX1Ad0xtU1ImfHBwdkJ+bGdvYjM2dnRkaTh8
UkZtQHx0ZGFDPlA1Sk1ETwp6YlhxTTkrRGdpXlc2X1FqPiYwVCo8RWJhRE1pVjNSNis8Sm8+OzZN
azFYez1VTklxWjsyP0lzNTRDJlhGOCUpbiUKej14RXZfeDxwNHZWQE95KFduKTdFLUIlKiZLZHpC
Wk5xTWY/UW50RyQ3LShIUiUzcjYmPXs5Jjg1WUctIzxUeWg+CnpzWFFRbDwxUSFURVlVO1Z2Z1hV
ZXJ6OVZEbDZadGUhTkxxIzZ4bEQ+cjwtMG4/ZEgkJVJrdUcqPUE2bDVHVX5xawp6VU5qQFJUNUNL
TklGJURrbDRiZkJJQkE+WE1+MUE/USVmYjctUShgLStrY2AtMEhSTl49JHotd2EqN2FFcm9YJXYK
enV8LTVjezspfiVKKD8hIUsrLU9RITBWYXFPZTlIIThzZ2N4cH52PkszdkQpc25gT0VPMnIlRW4j
K3leJlVZZ2pRCnphX1I+bCM9d2BUTjZMZ2lCaiombV98OztUKW01WHhJbEZfcGtxT3FqeCtsX1lL
MWNlU29HYUsyYFJFTHozOCQ0OAp6TE55RW95QngtOFNJVE9XXmE7d0gmJmJWQXlAMEkpMikwTkcl
RXpCPHZ4WWpFQ3AzTWY9QXcjUFMjZmVCJXlibXcKelRZd3k4LWF+ej8zemdoVT1+ejI1a2IxQF84
KzErV3E2a3VYX0Y0V2o0Vy1VYllNTnhNXn5vT0g+MiRyTWVPRyVVCnp8Qzd2bSM/Nm9nZWVII1o2
dX1YOClnZD42NEM0Zj9EVDR6QnJVRVhCYkNGJVhvOTsrJj1XYXBaQTBudyRzWWNkQAp6a3x0MlJN
JEYrTj5xRiRmWShmWDdZXiF+NVJ+LU0rRW1xaikreCNJTG0xKDVRbCVfbnA/JVhiUXRUaF4jJjNg
IygKekJHez5jPXpKVSo8fChDVWtSWFZOLXx7Uj1wb2xCK0lEakJIUD9lN081d1Z+dWstWiRyWWs4
U3IwIW4lQ0ZybWtOCnoyVW1qckFmSGJweDkqOSVvLXJsNFU0UGI8aWFIUH5NO1kzbjBVe2dedk0w
WntMM2M0KnpBJW08bW9gT1ZrZEUxeQp6Kyo/c3pPTTslYlN1ckF4RTx4XyM2WCl8d3khUSpVNnQk
I3h1Mz95fSRqJEJfSnwrN0U1SXU4Mz1wVElVRjtPNDwKej5AZE9Hej4haVo3SU5yXmohN2wyaSUt
Wkg+cW4+NUQ7Wj5IRG4ya3lGPmVzP2hnZl9fQiRzTz1DKzwtKEJ4bH1LCnpRaXdDO0FVdD1+RmBo
a19zNmFWMmp3WUErVTVza3tvZithWVZPajlVbWwjP3VQbHAqclBhekU4Zzl2cmR6KzxiJgp6MkFZ
Zz47eD0/NUs/bkVwNUNnQkM4RklhbF5gSDx4bWxoKz9XTUNPPFg7UFp9aWcqfmxCRT4/fVQ3VVR+
aXxnSVcKek9ReW11VmtJT012X3NMPWZ5PDMmciNMc2ctdCYmcnVpdjk+YU45dW1VOUZgSVU8cUtJ
aC1HVzM8QkZwJkNVTHcrCnpkLVZ+MyEtKyRXail7RHB7M1E2PzJUfD55PVAoUj1ENGxuY0RUMyRL
Z0pKcGlZQWw/JDY2d2BLSVQmPn5jdjh4UAp6XndiPksle1prd1lweTE/VSQ9JiRGQiE/MSElOD9a
MFR3e28xWC08eis/QDA8YnJ4bFhrejExTEA4ckRZeWNQM3cKeiZPVWVQSCFPVHltMk0ySFFTdyoh
N2xJfj1CeVQ1QXctK1pDI1hCWX5DO0l8bjR+TFJIbFB2QEB4aCQ+KnNERkVRCnpUdUckZUFsSU45
bHY4U3VyN342aUt7YFpESVc7Pjg1c3BZakw/R15lNj5IVzh6RTIyQnM1bFFSa1h0UDYxP0Y5NAp6
UXN+UmA/eVc0cFMkX1I5QC15ZlA2cTArP20kPXh4IT9zWWZMeEJWJE89aGBnUyFTN0wlUmNJeWAy
ZSFxN3R5KCMKejdvOFlnOVVaJFpJYDxBY2pVNSQjWD5XZXxvK3MmbSpNLStGaTlOfENpNytYKVAq
V2NAS3RHVVA9diladjJSVSMkCnp6I1Q+JGpzXnNhVnpCdkcma1N0M2gzTShiYW9BRjZSZkpGRnB+
RH1JT1ZVZTtPc1B6QE9xWkdUblVZMFkjNGV9MAp6cV8oSGRycH1BRG1mSU9xeSYqQjRISipRQzRv
WFR7PihzTFdtUEpXczZfPjIkMy1yazNqdWxCNFRSa3JgdzlVQ3kKeilfdVYmTENeI3VVdHdDST4h
fD9LNUhifDljJldYZkM4TTJMb1M5bih0dXFQdVNwTnl8KiltRSN0PkpsQVdMNnpLCnoxRC1Rd2Iq
KFZJc0UwU2xJN2d+USFzX2p2JFc1N1A2VkIzemJoUU12bkQoMnghfk5yV21Rfm50RVZiakQ5ajlv
Swp6U2FvWjU9QCVvVDdiPTVLQl56KEZgUT49MDlxPl59TTtTKD9HbUo0PEBVUWFnM019KXA4U3ht
QThha0lSbF4hO0oKelpjMjREdit7MlpiKHBwKT53WSNpX29sYyZWOFd3ciluNipydGFPWl9gY15l
fG11OHAhaTFQP2NDTFFKI1J6dEhsCnpqUGM7RTQpen43eDRiWV8qfVdNKE9+JlFSXntQKVRlPEl6
ZW8yVUQxY01jVWI7fDYyRHokSjlnb3ZCSXxiaUFPbwp6VjY9c29ZZ1dKaFh3dE90QD9xIUFwX3FB
KENnLU5IVmQ7XlIkfEY4bjRjZDVVUk9gZTEjQ2F3eG0zZXNiJWlIbXsKelVzZmRTQT1WdyVeSlQ4
Zk05OVIqVCZWU15FJUYhSWhvMkNnY3BRI3g0e2dqSjRqc1dyQnVITFJFS3VmPnNFYDx0CnokeHNQ
WG9Ge2NCWD4xXkRzSl9RMClOOD9FK1JzM3dhSUVNTmEpVXlRK1UoKz8rYSpETShIRVI2LWooYFpj
ZkNBRwp6MVE1emZpY1F0M3YyREY9KDVNJiY0RipxQGM0KUttMFE5RF51WDNgb016U0hsUVEzQDJ2
fmVgeG5LVDAlXkY/MHsKejR8S3NeQDBkb3xedllNdD1gfSRTKD8/fTFwVjRuLTNwJWhSYVRYMG1j
WChOdSp7KTJgb2ttPnZQJXhgbXZTYWJpCnpiQ3pUJXV7IUsxVlpNY0xLNCNOd0E5KTs0a3t0WHh4
Sk4wdSR0PVEzdHdpbWorQjZZTns+YE5PWW0yUipuU3pJTAp6NHw4fSMzVkk1PD8xUmhxJWxqMDdA
V0BnPUdaQVU3OGxndGY5RlN0d05CZTtfe1JgUTBKQEp+e1pibWxNan57JX4Kens2alVHQk1vQHBo
Xm94dF58Jm4qbmZYej5eVzVDZE96TW5GJENkVyZfTV5MRUhlI09jd3pWR0xMWFI4NykqTll5CnpM
azNHc044akRARzs2NHVgbEVJXikqMFplSTxuRUIoaC1BWG9eWGpBQDdJMitVMFEydFNHR1JhcVZQ
XlpkI1htRAp6K2wwb2MrM0JMdz5YPVBndkJQTEd5THJ6YWg+b3czVXR6IzYzQ2p+a3s8amF0SShM
SXRZd352VWp5eHdsJFVWUHwKekVtbXpDclhZO1dNP1JISW5pYkQ+WmU/IyhSTnIyeUhHckdrdjgx
KCt3VD4rcGUqVV5me2lPcVJBYiUtJERUcGFICnpiKl5UfndfLUtAYkw7MygtR3A7TUE3S259R25v
dTRKPEkhbXdtbUohVnRNQ2dfP017e2pvOVZ2cksmcEgwRSs7bgp6Um5eVVNFSG5nfipaTHZXZUwk
KnoyPVd+QVEyYXdvTGQmYl5KRlRkYiR2K2YqRkJDMG1pUjhUN0N5fUAreCVzdHEKenBLVSNaYG9A
VE5xPGBUZSpHY0I/K2ZULWsjI3dgMzF8IzApaXJmMllgYzVuY19OOEN4ejlKeC1jSXZraXlfPUYr
CnpfUiZAWTh7ZDhMTnQkRyk9aU0hWm1YT1Y7MiokQU13PXB0Ujx1a3FNQzhaX2Y5WU0pMiV7U2tu
M3IxXj5qYGZwXgp6WSlkNH5yMk56VVlnUil+Vmdefk9HYWd5MitfaGhQditpODg9dnNGMlh1OX04
RXZmKGZxMWxucF8tPld8PzFSJkUKelg1eSRiaGlpaGh6TmhBMnEhPDBpUGtQNy1Ydzc5aWVJIW9v
UE9NZ0B2JC1mP3ljdmJFI1V9JiVMcEI5OUoxYjl6CnpFVXsoYnd5fmo9aWJBSkoyUU9pYnF9VCMx
cEd2dlA2MHtoS2pYc0RUXkxlJD95d01TeismM0xrJE1meSZVUSRtewp6PTNVUkQ4ZTJxcih9cld1
YSpDfF9gMTR4SCFAKnRXZEZ6RmxLMlE3Z1haZXhpTVlYY0tLX14qOVJ5KGNuaXp+MncKelNXOyQ7
dGZ3RXZAczx+LXYoNFBaVWh3d08/PnBZXytmZS1lUiMrUz97QTwmVD89SjglVG5uUDZzSGd5VUx0
NWl8Cno3V2BoYD8zV0pzS2JsPGQmbzF9PnY4TjV1SHdrQ2Z6d3w5cHZZb1FKeVlLVVdLKDFtOWhO
b0tOP1p2VVlAPkcrPQp6YSEwMXVCTGZXYldyPk5fb2h1eU9uIVF5MXkhWENGNzFnVEF6cG9KPnp0
YCoyRmkzVyFRPW56d3h5O1RqUXw9fHQKenlgeDtRRFYxbz1ZMj1XRyNRSlRZT2RPISpHY1JXY3kt
fXpzSWw3bilZIXI4RWY0PXBsJExlR0teQEdLJE91NT1qCnp7TGMtZjZTfSgzLSZObyVJakoqfGpl
fikxYkZEZTgtJHVQLT0wfEcpeDVtaDc0YSluMGxOWGVOJHtmYlpCaEd8Mgp6en1QQzVpSzE5U1oq
cV95WFY9ZSloc0swNWpfISo9NlMyKXRDOF92fWtgJkgpayRVO1AzS1FDIV5xfHFJaGIxdDcKej5E
Tj08VlJzeDxQd2w+PD09KDEwOW4+M0FuRzRZPithMyphWiE3RysoJkE0MnJjUV55aThPPTZUJD9J
RmF1T1EmCnpRdFZCTENmUCpFWGI7UFZtRDBFTG0/YnxGRk5rWlFIUn1feVBfe1pGYGBvSmlibHMl
bXZkTX58KC15LXttYzxuXwp6LVFyNj1ZRWxnb0JeJWBuc0JsI3NRS0B2Qz9xWi0oMlpifmBQRjxO
NU1pNUl9WElefVRMOSN4N0N1UUt0aDQqYz8KenQ5bjRyRSZBaXhXWGlERF4qUXgqWGxiNkVhTnZu
YU1PaXdGVmNSRFdjMHQ0fGlIYXZhUSgrLTE+TjJGUGNUIXheCno0IVhfWG4pY0U+bFJBWCkrTmZf
Sio1NmRFYiNrTXJfUGJQV14qPUJTWVFMQUZPNE1pej0hbyZ8ZmQhP05QeDheXwp6R1lLSHsrbj9V
bDtmQVYzZWxfTzBAYVZqSz8pfEEhRz5GQzF0U2goLW82WU1MbGxxfFJMI3E0MylwV0NCMSFVPE4K
ekd0WTl+Vyg3OEY7dGJ2JHZmOz5PLUs8TSVPcF9sXnJ9TlcwVmpnNU5Gfml8KzhCZFJmYEE0ek9N
eVBwS2N5PmpsCno+YzNqcjQkQk9BR1diP3FqUFA+LXNFPVloIXJRS2w1am9VX0dkYzVHb3smWnw4
SV4/OW1oaWBseDdfSHN5aUl6dQp6V34qZ0Z4fjh8Wlk+QWlpQFZkezh4aXN4RExuVyhXYX4xMmJ0
M1AqOENLMjwjMl45Ni0qZGUyKTR8encyPX5ucSoKenstX1V3bkxiSTxRZz01SEJkXiU/SzdUSTRv
R3RsUXpgO3tTPWNJSnNaJWQhQGBoWnM2e1pgNzFgJFpgeG0jPlNnCnp5XyNaYzM8JG01eEU+LSll
SldUWjtMcXoxT2l6fGM3RUVMfWl4WDcwKDNudFgpM0ImS3RuUH5RLVFeSHdiT1VaTgp6XmJIaTNS
dCFCaGw7bE12dnB0JkxxQitwXjlAT1hBM2NtciZwRGA8U14yQnpmcTRGeHdKRzAhYD9uaUYoaEZe
XygKek9rb25sNkROLWV4fXRfNSNNXkMjSW54e1YqJU9GeT5neUVGPnhufUo7VVVCSDhtTj50ZCtA
ZnxNMXZCREg5R0c2CnptbiU7d1pqc1ZiZURReUR6dUdkYkEkNmhhP0RpRHpBQDhpWD9BMk4+YGwx
MD9zX3tEbnBZTWskdHxXMzllXldLKQp6ckl8e2RQd3ZmTnFzVnB2N2pmQDkyfkQyNUU3eikwKy1r
I1dvcDBhaHo4aCtIWVQ+byN6a2E4Y05ye2k0cilgPVEKejY2IWZpeW5hNjJTSGJ5bCpJVWBHZ1c3
QWEpcVZGUV9HK2BaJDFQK2xqM0p3PiV3QUQ7K2clM0JuUl9QMVU5Xih7CnpfWlJNY1Z8JHdFcn5l
O2k/SDgyOzIwPGtNRUxuSj47a1VaPmdRNUFldUhvREFVO1h9SGdwYj5RUSNnMlQjdk1sawp6O2tY
YkRkdXVsd1hZO2Q0OytjenwreiRCZjxqeE9eaWZ8MHYzMSQwKE9MRkB+QXtpampadVRlX2ZEbCt2
XnpZQ0EKenM+YSttO1pee2NGMkUxfjFfXj9OMTtxZmA/cj0yNTJZe29BelZsNjk3QGp7VHtsKW9r
RF9zYGBmZ3ZDVzckaHRMCno1KkNJU2dGc3hrJnRJQjxeQjJjJlNpNCl7Xyh8eyZlbzA2WE1Ad1JH
WWZ7MmY2V3x9emxGJl8qXzF9TzA8KjY0TQp6WCt3ISl3PElZK2U7eHBGRik8TV9mRFBjTU9pVHAt
JEFMY3BGMjdfVFEzK2dUe3dXZyFMNE1jNnReZVA4QVdgdygKeldudlB6RWRKQTsydCpSTXtDfjxv
O3Qtc2x8Ql57VWFNMWE7TyE3Qi1WanoqPG8mfCRgVXlCSWpfYz1yKU0xSiM0Cno0MX53WUtqIyQj
aX5ZNzFGPH4le3IyM2JoRnl3REJ6QFh2d1BEdTIzQD4kcDMyYlZXVjk0Q2lEO1pYWE1vSyRuTQp6
TEUjfCNvdGpmcSFoIWFONzFCej9USEZRPmxDU3xHQVl2ZDx1cjxPODBrI3BiaENtUS1ZZV5aKHw2
SypnUk58b0UKV2hRVUdkSX1wU35CcVMrO0t4TFE7PF5LUSFPNz82MwoKbGl0ZXJhbCAwCkhjbVY/
ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNhc3NldHMvTG9ja01p
bmkuaW1hZ2VzZXQvTmF2aWdhdGlvbkJhckxvY2tNaW5pQDN4LnBkZiBiL1NvdXJjZS9XZWJLaXQv
V2ViS2l0LnhjYXNzZXRzL0xvY2tNaW5pLmltYWdlc2V0L05hdmlnYXRpb25CYXJMb2NrTWluaUAz
eC5wZGYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNzliMjUwMTEzNGFiOWUyMTJmYjhiMjY3ZmY2ZWZjZTUyZGFlNzk4
MgpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgNTg4OQp6Y21idFkyVUpyX3c1MTlKTHt5M3RBdEly
ZDFRSC0zeSpFUmJqdFBWZyE0U0Y7UUhuSGFCNyExUDFROV9MbC17SUUKejZYX3lOTTU9VkAkV0t0
LV5GN35NZkJwNkVOXlV1Rz8jIUlDX25tY1NnWTtDP0w/RUlQMDhxbyE+ZVBKQitULV5QCnpPI21u
bTQ4KStFMFQoWDwjZE9mXzRtZHwzajlAWVZpbTVyZDs/UCphKWZJX0R0RHRRJGM0KGxTOUthS1lN
SStxKwp6ek5BKExpcH52U3kyQFE5UHRvVEN1VXducUNGfDhXY20rcU5iSGxHWDQke3hfVTQwWHhw
dGtDbTZeQyE4XndDZ2cKenVVN2VfQ2p+dmZqalRWWmtCYCstM1haQ3Q8N1lqNj5vWTcyWVNKI01S
N0gybiRRLT5+NzZzfjRYZTNBVSZydih2CnpfUXp7eiVuSUhxWjdWOV5OSHNJTDZQTUMoO3JlRnhq
KSFBTSp8UTJvPyYtXlVQT0w1Izt1JXs9QE1WeythYVl+LQp6NFl5MG9KWlVPUU1rVnVDbmFufTJE
SG5aVG9uNVNwVDQ7VyF4KXxPLVElKWFiS1FPRSNhKCNWaDVafHVyRUxBNWQKenZwNFY0XnF0MExK
b185RShfWkMtR21YdTFffVV1eHtkP1hWZyp3cyNtdkdzTjVAT1BkTUpKTDsrZGMmWlp+O2M4CnpO
QGlmKUV8T0xqPDV6Jkk9UDNCP1gqR1opLU5HIXN7V0lSU0NnVUdmKnpARC0pfH1hUm1UTXZrakQj
I30hWV5qOQp6YXZmWU4+bG9QbiZnOzl+R3tyTGRFKmJ8d3lXOU9yRGRDUVkxVHA9QHRBd35UdjV8
Tnl7dUBYfWVqYUZgbT4keU0KekBRZypmPEE0JUIwVyZ+KlYhV2BuWGl1UXpQbEdiWDlZPCpRMVFK
MGVBZ1lWRGIzIVUlZTFSNVZmJm41ODZxbUZECno1RnFfRTNofUtZRChHUGB3dVdkTigxSXxPaVc8
LWdENWl7WSNiNkNSa2hXK2JrdEBvYzVUTWp5d3ttaG9GO2ZKfQp6OEV1T0BZKkJOQTBIdUdte01J
fHNia3pHVnFRTVdueyohMjhLZl5yZ1NJcDIwZyp5eWY0VEUoZmFGVEUpZEheNm0KekZ7UShaTD9B
RkFAaD4zKGxtSFdeYCokKVIjOSNeMHQ3OT08OSl+a0QxZDE3OWs/eCl6Tko5RS17UnFKcjB3RUJo
Cno3ZUd1Q2h7SmpqUW1ZTkxONGswdjhVR0tgM21IKXhAZipFfEtgQUZLRFEjYFI9Y3lYTmw2b3px
WXFlMXhBfFYkawp6JCRgKmZKclk0TkVue2pibndldylKSFoobDdJckwlPDxedHFqMWRWO3hNO2ZD
IUNzfDAjXjtpez1OTCNEWFBDR0QKeldCQFRRIzhnU2NqLVdZPTtWNjZtSCpFZ0s3eEZ1ZWVuOX5G
I2hwdDg1e1c0aUtYYFktKkE1Z0BMMz15ZHE3QnJRCnp7YFlrdF5gNEtCO1NoNkpTQ3YlTmAlfk9O
Jl5udHg0ZSoxRTFgfnlUeGFKSyN2ZH5+Jlp4dT40IyorZGpjMUU/Tgp6PlM1ZnJzKkpSXlpsVlRn
UnZHa34+aHg3cXIkKFkmWHFOSX1Zb2pVcSYxUGRtKDxLOCM0b21vZmF1VTcwbi1wKHgKenJsZEVa
Pjg2Wn1eTDNWfFBQYTh8bEFVMjdyOGd6NW92XnAzUH5URF4+KW9yOE8tX0VRKE53Z3REMDspTFZw
ekNGCnprSnEjUkFUVyt3Tn0xO3YyfCU/Xl41Uyh+bU1PQmtoREQ5NjtzK0coKSlOSzlMbX1lSz1g
PFA3eGhFVDV4TmhXcAp6Nns9e3hwVHpxbW96MU0xd0cjUiRzelByeDF2SFR2TVVpZktBMmpaZWQ1
c0VQV3UlIXhHUFRMeSkzZnpaaFhsLSsKell8fW8/bzktR2V1RkEtfDdge3FJTFZkUlpVV3VpVCs9
ZT9vQkpzXzNfITI9OHU4R1AlSWRJPTtZTm99MFhRancrCno4d0MtJVRkekJEK2dHUCt5X29JfW5C
flJgJXNvfDdrZU9TdVc4QWxWaiZJLTBgb0I3RSo5P3R1VU5fdkFaU21oVgp6VWcySG5kWlpaaiRa
WDdZO2tqNTlHc3k7emBHZDFYKXJyTz0jY3N6R3JZND52bVZoTHlscUFLWTU3IyhEVTlJQ0EKektH
WDVoTWxMTTRkWGxFT2h6aVh9P1dXenR5c0hVP1p6aWBiP3daSkN2JmFYWCpKUDRGdDQ/TC1XTldM
bXg2eyFsCnpiPW1FMkc4fDBTIWtzIT0+eENidCl2fk9GJW95dj4rQCVRKWNkUTd4Ny1Ta05ZNmwx
bz8zKU5ZQmdzZF9kT2cqSgp6KGIzQz4xUm55fEU3aGNHIU5gJipwQ3sqV20taT5iJnMjNyswND4j
KGpgP3ZmSlkmVERlQHlSaShPTzJoUHZ8SWUKejgtQ3JPaT9QRmtHSzUoKCRBVnEhJFdGeWw7VHs4
Xkw4NCRYO1Zae0VaYioyTGp7LUA4WiloLSgteTt7KkFhaGNuCnpjJT4qZU5DSHJWNDNjYF5hYHF0
VTRmMjBhYXB8VXskMXpLYSVlQlduWHo2YUtEKiFfNHc4NW1LS35CXittbD5FYwp6NnJhVTFYUHJu
Xj5TdGcjcn1rNDspUlNmO1omVkpDV3IkYlVlJFZeI2pOcStqPkJAU3Q+KnNONzw8d1RVYns8b2AK
ejJTU2hTbGo0STwtWTRycDl2PnVtYjdRRGJoSiN4RFpRSG50RlZqT1JtZkdQN3R4eyQ9YGpXUlM2
WVI/KiFYWStxCno2UX50aHNMOHc0T3NVeWRSRnE7KGN9UCM1YkJXezVCRmp9eGlLV2tDRk5AWlF5
WlZMdlNYZXNwe3UkO2IqMnlybAp6czBvd192TEJAZD96P1kkLSRhTXl0RTRASE05fXVsQyNiJWMq
YHxFWTwtS1ZuUGQ8bmlYKXc3R2JIJD1DPV9VQ2YKemF6VGNKelBYbjVHbCQzWihsZUlnP3l2JWlr
YG5fXzYqdVBWazVCTmZfKk0jekdBYFhiUVJsZ2d4Xn1KXzVYY2U4CnpJVHBqIVJLcGliVkB+MDZe
VGZHKEtwc35mQkwrNj1ZM2x2cGxXKEU9S35FN2w/b2JCNTIxfUh7JVI3VUxtNnt5OQp6bWw3Qj9M
d1EmWGNtJEcqZ04hdHR4dmg5KmQ4XkpQdnxnfU4kRFQxJHV0cFR7cXljUn1DKnRNeD8oKnw4QkQ2
U0UKem00K19Dd2FPSXk2I1NIKjcjeDQ8LWZRfm9ldERgbnFEbHA/ZyU/diNrVnNsZm5yekthJGN1
QUhvS0ZlPkE/XismCnpgNlN0aHJ0I1VGMylLM055O24tNlUjQyFLNz9mRlBsQ0N5VXs4bHpaUSNC
PGM1cF40dGYobDB3M1dQPnxQLVQyagp6ZTkwKzl1RUsyTDJoZnZxWSlVOyh7NjNUeD5sUj01aTJl
dlp0MWd3Yitta1RjeFh2fEd3TjhUdXApSUVQciNQbkEKenJpJEpmOUQ1N0N2TCNgX2BYbmtMc3Y7
Xzg0Zj9nTFlxRCF0QGBhUTJMOFU8QXd4R008d002YmpgJFc+am19ZmYxCnptX0VrNylNc3diNVdR
ZSRVVDM4OWtuP1Z6WGtLKHpQTTZRNHUyZFc3IUkhPFR4eChecnxJIWBqQEFZJUNhfHZ1SQp6WX1J
VjZZe3FPISY/WHBiaWhEfEglMmRpVXc3SjtQb2MxK15gSVB6ZVlpbj5+QD95SkBKKlglV299T1J1
RWt+cVYKekVeOCFESHNBSlhrKlAhR3JKfk4kUmBIQDFRaT4mKEM1QXBxMnlIUF9GYEYwcU9YK2dA
WTU4ZWNIUj80TWYkd1ZICnoxM3pBZ1JENGtQRyg5NHsyS2ZrP0liblBMU3pLUFhWNVdKZE9wfjxq
bzJ3QmthKzRPa2gyZzIxQHRWPUN4YHU8agp6cWVmVEN5TmJLJFQpc047TGkxbzElXjhLQyUqPnZ2
XipASCFVdT9PUz5HeG47aCptYnpHJX1UV2d4Tjs7bzNOcUMKenlmQnhVZkVsSCFUayV9c1BXe0oq
NmM7Tzdkfj5NdHEte31XX1E9PVFgTUR4di1aa0l3R0FVTXRCZ18/LUQhTWw0CnpIQEo2c2NPZ2A9
VlpMRWlecVllP1p+bHM0ZUJhNlduVGdXUW04ZU43ejV1P0xKKEBYVnNiLXg1b3lSKmZZM1cjJgp6
UyRhanpWN3NxUWx5WUY+TUQwWVFZPHhZXmR5UiheQyhZK34rSTB0X3JAYjU4OGIkX1hoeFNXJWct
JlJuaCpPVmoKenpNR1JVJkRLUzBlTEx5SjwrI2YpTzUhKEJPVV9GPGF1PypuPClZPElTOUAzSTts
O0wpYCgqcHhKMG9pWSVoTmpwCnp5OWYkdGlzdipsZkdpMyUzS0o/aFQ1KzBGbHdLNnxiKTxDX0hA
VTw8KnpqMlBHTHRGb0RTTC1wcT1DXntHM3xKcwp6NWZ6MyQ9VXduQ0hUSiNrPnE4LWVRZExvSXNM
K1VNYE91O3M4T15OQz80I0RJLWwqRUF1QiNmTG54dnxvV0daWXsKel5oR1ZvSlBNZEMlZ257ajZ1
eyQrJkU1UGtxOCZFNUBFSV88Q0BOdWp1Vn4+VF9Wclk1VFVTQT5PYFh8UUt+OHFBCnp2dHRZZztp
dW9gUFUjZV4rbSFpQ1E0QXpoZ3pkJnBId2pIZ3VVS3VOX3U/cCRmP294OXQwWG04aDErVHRYZmtP
fAp6a3w3amRrOSluY1NxPUo8ZHBHdU9yaHI2bGNXI0dNYVBkfWdqfWl6T1E3QnwzQTxJYEtSdTli
dEUwQDE+PlJVOEUKem91U1lqcl5EfVFXP3ltdCZKVWdNOGN7cUNLKTF8amk9MURMSTtmLTUtcyFp
V3tKUT1uPCVAZ1UrMTluei1SbSVXCnpuMihvM3dmQiRFeSprKlUzdz9lX2V9VXoyKihEI1Z5N0d6
ZCkkPWlLS3NTd3s8dTxqcFhmKnFuZCZGcTN7JHVeWgp6Pk1NPiNPSkFGbSU5UWpjc3pmPzE9dl5D
S25Pd2goKmNhdEg0PH5WM2NZakI8ZVVBOHkwRFgjfEEyWSpXLVgzWSsKejI+dz59V2FHKU0mJHVf
VyYhPl51QC1AP0JsJHJJPWAreysre0hnWlVqTWI4ZyVMfjtlTlE8amlQQl9LYiNUMUpfCnplTzBD
UCFkYm05WEQofGxoJUZ9Tll0PnZwJCt5JngmQkZzVlZ7VTt4cXx4TSFSQzFoKjlGPjdCbnxkeiFp
ZilhXwp6UFpRN1V5WEdfSSU0LXx+WjMwIWtYe15MYHNmVmFQWD9gMnkpaEUrQ0FvVyEwdUhAVjNf
QDxZV1NEUHtXPEtMQTcKelBVcD8pTm8xQzdRQW5TSXVZN0xhOyN6dHtjWDd4czB7Pzg1WiRFQTAm
M3AzKl5ZczJ0e28heDJCJUswdTA+KS08Cnpeclc4Y0pTIXNxO05hU04pSkFlaihLYHEydURETDdo
WSNSc0tHIz4zbm5HNDAhJiQ7RVQqaz9qN2t+TVhUMk5ScAp6KzdeYGIhZ3szKW4+JD4heUp3dH49
VEhFKmxFSjZxdEc8UXFOQjQ3OUppMkdJYU5UTTReXiNsRnRWaHhReX4rR0wKeilzKjxAOWpqZmoo
VCNIYSlTWko9Y0pqeiRKQnk7IzBTREhmV019Y0NgYHVLekMjPmIke2lYTEVfaVl5QEd4emBxCnoh
QUg7Sl5Ze0M8MkpDYUkpKXlXUlQ8SSNoP0dPYE1zd3tTcHhjdmZBUHVaMipDOFNvWUhtOURpLVc5
YlNIUkF0cgp6eT5Zb01EeWU1T3EoPFAhbzZXQFR5dEx+K3lIeVVUKWBuJTU/KWhZU3Q8azV8QFNY
ayp3YHNlWEZGaWdeT1c4UlEKenFqfVp4OCR0VyZ5U0Q0aWFrQzRFRWt0NWt3N2t6WG4hUXpEVU5g
JSVXMUdRaXlNST1eaGgtP1N6Nz5+Kmgjd1diCnojTygjcU0lYVVCRGwwMT9KPCljKyF5NDhBWG0j
V1JgSCVmOFZIYT4lQGMleiorN00lbCt3OF8/ZWs4ekswVHJEKwp6QU54ZUlsJmYkODcyMG9ATXhH
Uj5TUkBwP3UpUH1VVl4lQ21OVSY+UDtPVyUpSyNMYz1gOGhKTFQycnlJTmAoNjYKejJtaVckcyRH
THpKcmtkS1pocEM5VXEkfFApc2h2TjFVcF9jPUxoSm5ZaXMqcytuREp6KXtMT25OPnY1Qk9jfGho
CnpOemN9JnREbX1VLV8+NSZvO31Cd3JPemgoKUk+SkVxd35+dEM4MmAtOFZtVlkxbyQlRnFVK0xT
T2N9Y3tSdldaQgp6TFJEPjIrelQyJXRyQXFeSlc/RWZFVkteNlJXZVQmJHF9bHtMJW8rI0owJSQh
OW0rRGkxeWZKeFlKM2MqNzB5ZGsKeklfWFI0ZCtsWUkqeWd4NXk8Uk9NcDhacD1rP0swUE9UU2kx
PVVMQHx2YW05QktkSTZ6RFpRZSM7VUtTO1hQc3g4Cnp5eSN4bjd6ajV8S0JCUEpyd3hhWHRLV0Q1
ZG1XLWZIQzhhKCY5UTgmQCpfMlI/aXopIWwqY25XJldCVz9UczNBKwp6Uz47PSloS1lNYzwwVX17
T3tWUH12a08qK2BEZ3EhVyRNTlhtV3lYRnc+MW8pR059YUwqJkFrVUdfdSVPRW1ja2cKek5lcD83
Yl5janFjeH0jbGFeSigjbGBSaDZqNmw0cmpDKWZfZlVzQSFuWUFAb1MlTE4ycG5aI3lxRXJza21p
SDNlCnpxTnRiQkJAZ3s0IWFeM2I8UzAzPkNjOGhfP3pEYm1gR0chTFcoT2Y/dWVGUj9kUkBOUSZY
MSt0PlFLQVhkJmV9Vwp6Xj03Z0xTLWtfV0Uhd1hlNSVpI1ZUITxsdU8kMjQhYGRIVjFVdEtmZXZw
TGBDZCM5WVRaY1ArbyE1bHRUOWw9RmkKejhHXnBpRFIoO0ZyZytgYG1USHgrZ2YyWDA8eD8hIXNL
bGpEe3ohMTBZQXxCbkYjWElUK3hXWUskKCs9LT1zUmdfCno+YDNHcm1WQDB2O28rfEFBdiVFdGZl
b2xrP2RLfkZnS2A1dCVtTCswO24mPU9URWtzIXdfRERSa1U3YGZXXilzfgp6dlFIVm9XPnllWlRf
N0FJKj50Z3ViJlhRRFlQRCVodygzSisoVlFVZiZJU0szKjBMd3xtYGdjTDhfUEtkSkBFV04Kelg9
TG5NN1Y0TnZiTFU0QEo/Tl9qWT9xNHJiQjZ0eXQmQXhXPVE9dzxJN1FgLSVBQnZeKT83KUswPUZO
dHhGeDByCnp7RnI8SHF6N2N7Kks0Y0Z2WHolPyFGb1lyQCNPP3BlUEhQMmBsUyRneCZ6VEY1eGdL
Q2wkcz0kQiR+aSY2KVVQYAp6cWRsZ0ByRU9FWFFfJkZ7dSkhbkY7dDUpMT8mLUBmRUUlfE8zS3pz
QWFvdzktclFnPX4+bypveXk/cWdzXlRuI3IKeil1KmZEMHA+e3djNzJMSiEpdz1iK1Zyem93PFNX
RmR+RStkTmtgPE02IX1fPFkzQWd6UV5wdS1sPG9xSitmdT9uCno/KEw5NE1yfTs7cTchN3pZT0dF
TCVvIURYPmVKYldHP3lxKCgwc3oqeUgjPUpMMCFzQiRNTGxaITV6VVZOJT9jdAp6ZTJqVTBoIXBj
T2x1KkZpM0JFKlhJbFFHTmBgbmpPZ1pFeUk1Vk1GQDVxQyt5dE1McyFoNzBHKmxSY30kc0AqUE0K
ej83U1o4Y3dwblppQz88ZiUlJnA1K30kJENESFpCN01aUjxASDkqUGplI2FhNikkUXVAdWUxVS1y
OGxlN2BBMlEhCnpPVSRLS0lONXo4OW9JVGM9Rj5KVUA7Z3E5Mml9XndgR2YwbStCTV88U2t7aVQ5
MCp0bntAMFI0UjJ1JFIqTTNTZwp6ZjMwaThaVFpvRHw4Sz58XlM/RDVxQiFHNCgxOGVJaF87aVJD
cWM5IT8oXysoQnZIRWZDR0ozZVM5Z0Ipc0VvdVIKelRgPituI1UjJW83MENwUl4+bzZ4MUh+WXMo
QkkhYlQ4O1Uyayt3akRBPHpeRTBnRlAhTVBXZEZGQy1TezQ8elZCCnpoa316WVBUO1JXazM9N1Ns
PyZvdmghamB+MHY0QTVPTUBsTiFDKmVaP3tDbEY7dzkpQ2MzIXB3PUBJZiVVPW1YJQp6RDJfUDdv
SyVSPzFWT2VzVC18anNjRTNPVzlqUHhDWjRWJkdUV3xwUXVMQ0Z2Z0dzPUVfUH0yQG43OTw3Wnto
KVQKektlQjxMUChzJUtYQGh8IXtgM1FqNlZtJW5LUUw2QjBOfXJERmVtfjNmNyZGWkJuanlNKCp+
QjVBUDdHSHZjVis/CnpWZ0IwJkJWaFBYODt0UHlaeU89U3wxbUR+ND9oVmhfI2QlQjtabEZoMXFM
Q2V7OW9manIyb2hQT3FgSjZ6eDs0bQp6cT8wUWVkI0VjTEl7NmNEZ0ErdEs0MkhuY1UrU2MkeUZH
P0wqK1ZjalJTMlpMRDJ9djROfXx3NkcoLVhrd31WUTsKb3BtczxpRCZqQns5MVJDYyVLYHAobSFH
OGYjMVNaWU5DWDF4O3M2ang2YD08QkEyaTB9U154azUKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoK
</data>

          </attachment>
      

    </bug>

</bugzilla>