<?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>195132</bug_id>
          
          <creation_ts>2019-02-27 16:51:07 -0800</creation_ts>
          <short_desc>Web Inspector: Provide UIString descriptions to improve localizations</short_desc>
          <delta_ts>2019-05-28 15:22:29 -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>Web Inspector</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>198203</dependson>
    
    <dependson>198207</dependson>
          <blocked>197597</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Nikita Vasilyev">nvasilyev</reporter>
          <assigned_to name="Nikita Vasilyev">nvasilyev</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>greggy</cc>
    
    <cc>hi</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>joepeck</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1510703</commentid>
    <comment_count>0</comment_count>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-02-27 16:51:07 -0800</bug_when>
    <thetext>I&apos;ve noticed many wrongly translated strings in Russian localization. I imagine a lot of these issues are present in many other localizations.

Common issues:
- Verb vs noun. In many languages, a verb and a noun for &quot;paint&quot; are different words. Same for &quot;a log&quot; and &quot;to log&quot;.
- Lack of context. Localizers didn&apos;t pick accurate terms because they didn&apos;t have any context.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510716</commentid>
    <comment_count>1</comment_count>
      <attachid>363159</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-02-27 17:09:20 -0800</bug_when>
    <thetext>Created attachment 363159
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510718</commentid>
    <comment_count>2</comment_count>
      <attachid>363160</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-02-27 17:09:55 -0800</bug_when>
    <thetext>Created attachment 363160
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510724</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-02-27 17:19:24 -0800</bug_when>
    <thetext>&lt;rdar://problem/48457817&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510725</commentid>
    <comment_count>4</comment_count>
      <attachid>363160</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-02-27 17:19:37 -0800</bug_when>
    <thetext>Comment on attachment 363160
WIP

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

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:-189
&gt; -localizedStrings[&quot;Capture Screenshot&quot;] = &quot;Capture Screenshot&quot;;

extract-localizable-js-strings removed strings that had keys matching the strings.
Do we really want to enforce IDs different from the strings?

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:190
&gt;  localizedStrings[&quot;Case Sensitive @ Context Menu&quot;] = &quot;Case Sensitive&quot;;

I&apos;ve noticed that&apos;s the format for the key we used a few times:

&quot;${exactString} @ Some Context&quot;

While I&apos;m not against it, I wonder what influenced it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510730</commentid>
    <comment_count>5</comment_count>
      <attachid>363160</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-02-27 17:24:41 -0800</bug_when>
    <thetext>Comment on attachment 363160
WIP

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

&gt;&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:-189
&gt;&gt; -localizedStrings[&quot;Capture Screenshot&quot;] = &quot;Capture Screenshot&quot;;
&gt; 
&gt; extract-localizable-js-strings removed strings that had keys matching the strings.
&gt; Do we really want to enforce IDs different from the strings?

The script uses the key if it is provided.  Passing &quot;&quot; as the argument isn&apos;t a good idea.  If a string has a specific comment, I think it deserves a unique key.  Worst case, you can reuse the format string as the key.

&gt;&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:190
&gt;&gt;  localizedStrings[&quot;Case Sensitive @ Context Menu&quot;] = &quot;Case Sensitive&quot;;
&gt; 
&gt; I&apos;ve noticed that&apos;s the format for the key we used a few times:
&gt; 
&gt; &quot;${exactString} @ Some Context&quot;
&gt; 
&gt; While I&apos;m not against it, I wonder what influenced it?

I just decided on it 😛

I think it&apos;s easy to understand, given that &quot;@&quot; is unlikely to appear in a string displayed in the UI.  I also think it makes some logical sense, as &quot;@&quot; is a way of indicating location.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510829</commentid>
    <comment_count>6</comment_count>
      <attachid>363160</attachid>
    <who name="Greg Marriott">greggy</who>
    <bug_when>2019-02-27 23:39:10 -0800</bug_when>
    <thetext>Comment on attachment 363160
WIP

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

&gt; Source/WebInspectorUI/UserInterface/Models/LayoutTimelineRecord.js:56
&gt; +            return WI.UIString(&quot;Layout&quot;, &quot;&quot;, &quot;Layout action (verb)&quot;);

Doesn&apos;t &quot;action&quot; imply &quot;(verb)&quot;?

&gt; Source/WebInspectorUI/UserInterface/Models/RenderingFrameTimelineRecord.js:51
&gt; +            return WI.UIString(&quot;Paint&quot;, &quot;&quot;, &quot;Paint action (verb)&quot;);

This is inconsistent with the description in LayoutTimelineRecord.js for the same string.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510839</commentid>
    <comment_count>7</comment_count>
      <attachid>363160</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-02-28 00:13:58 -0800</bug_when>
    <thetext>Comment on attachment 363160
WIP

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

&gt;&gt; Source/WebInspectorUI/UserInterface/Models/LayoutTimelineRecord.js:56
&gt;&gt; +            return WI.UIString(&quot;Layout&quot;, &quot;&quot;, &quot;Layout action (verb)&quot;);
&gt; 
&gt; Doesn&apos;t &quot;action&quot; imply &quot;(verb)&quot;?

Yes, I think &quot;(verb)&quot; is unnecessary here.

&gt;&gt; Source/WebInspectorUI/UserInterface/Models/RenderingFrameTimelineRecord.js:51
&gt;&gt; +            return WI.UIString(&quot;Paint&quot;, &quot;&quot;, &quot;Paint action (verb)&quot;);
&gt; 
&gt; This is inconsistent with the description in LayoutTimelineRecord.js for the same string.

Yes, they should match.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511211</commentid>
    <comment_count>8</comment_count>
      <attachid>363278</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-02-28 16:58:27 -0800</bug_when>
    <thetext>Created attachment 363278
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511661</commentid>
    <comment_count>9</comment_count>
      <attachid>363278</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-03-01 16:04:51 -0800</bug_when>
    <thetext>Comment on attachment 363278
Patch

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

I think you could be a lot more specific or clearer in many of these identifiers/comments.  My original &quot;style&quot; of using the &quot;@&quot; was sort of a way of providing a &quot;location&quot; for the UIString.  Something like &quot;@ Edit&quot; is not clear/specific at all, whereas &quot;@ DOM - Context Menu - Edit&quot; is.

If we want to give a UIString an identifier, it should be such that it&apos;s unique.  If we want a reusable UIString, then you shouldn&apos;t use an identifier.  The more specific/clear the identifier is, the less likely we are to have a collision in the future and the more likely someone is to understand it&apos;s context/purpose at first glance (e.g. without having to read surrounding code).

Additionally, the comments are a way for us to provide additional description about the UIString&apos;s context so that you wouldn&apos;t have to read the code (e.g. for a localizer to look at).  Saying something like &quot;Open Elements tab and select this node in DOM tree&quot; is great for describing what the UIString&apos;s action is supposed to convey, but it tells me nothing about where or what form that action will appear (e.g. context menu, in the DOM, as a tooltip, etc.).  Something like &quot;Context menu item for showing this DOM node in the Elements tab&quot; is a bit more descriptive of both what it is expected to do and where it is expected to appear.

I think that it&apos;s awesome that you&apos;ve gone through and done so many of these, but I personally think we can do better.

I&apos;ll leave this as r? so others will take a look and maybe we can start a discussion.  Feel free to continue to iterate if you agree or argue with me if you don&apos;t :)

&gt; Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js:499
&gt; +                options.title = WI.UIString(&quot;All Requests&quot;, &quot;All Requests @ Break on&quot;, &quot;A submenu of &apos;Break on&apos;&quot;);

I wouldn&apos;t describe this as &quot;Break on&quot;.  I think it&apos;s more consistent to say &quot;@ Debugger&quot; like the rest of them, but I think something like &quot;@ Debugger - add breakpoint&quot; may be the most specific.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511693</commentid>
    <comment_count>10</comment_count>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-03-01 16:58:16 -0800</bug_when>
    <thetext>I may have not explained well some of the problems I&apos;m trying to solve.

I added a description for nested menus so localizers would choose correct cases[1] (word endings, basically) for the leaf items.

    Break on... -&gt; Subtree Modified

English doesn&apos;t have cases, so &quot;Subtree Modified&quot; looks the same regardless where it&apos;s used in the sentence. It isn&apos;t the same for many other languages.

In UIString descriptions we should provide surrounding words or sentence fragments, when they exist.

It doesn&apos;t really matter whether a UIString is in a tooltip, DOM tree, or context menu. I don&apos;t believe this information is helpful for localizers. In fact, it&apos;s important that different parts of the UI use the same terms. Console should be always Console, and not Console in one place and Journal in another (this is the real problem in Russian localization which I haven&apos;t addressed yet).

I would prefer to have the key match the string exactly in a lot of cases, but extract-localizable-js-strings didn&apos;t allow me to do that :/

[1]: https://en.wikibooks.org/wiki/Russian/Grammar/Cases</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511701</commentid>
    <comment_count>11</comment_count>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-03-01 17:07:21 -0800</bug_when>
    <thetext>(In reply to Devin Rousso from comment #9)
&gt; If we want to give a UIString an identifier, it should be such that it&apos;s
&gt; unique.  If we want a reusable UIString, then you shouldn&apos;t use an
&gt; identifier.

For several cases, I want to give a UIString description without giving it an identifier.
extract-localizable-js-strings didn&apos;t allow me to do that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1526086</commentid>
    <comment_count>12</comment_count>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-04-10 13:21:01 -0700</bug_when>
    <thetext>I introduced WI.repeatingUIString. When a UIString with a comment is used in several places, we have to keep the comments up to date everywhere. WI.repeatingUIString was added to address this problem.

(In reply to Nikita Vasilyev from comment #11)
&gt; (In reply to Devin Rousso from comment #9)
&gt; &gt; If we want to give a UIString an identifier, it should be such that it&apos;s
&gt; &gt; unique.  If we want a reusable UIString, then you shouldn&apos;t use an
&gt; &gt; identifier.
&gt; 
&gt; For several cases, I want to give a UIString description without giving it
&gt; an identifier.
&gt; extract-localizable-js-strings didn&apos;t allow me to do that.

I fixed extract-localizable-js-strings. Now most strings with comments don&apos;t have an identifier (meaning their identifier matches the string itself). This eliminates a lot of redundancy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1526088</commentid>
    <comment_count>13</comment_count>
      <attachid>367154</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-04-10 13:21:42 -0700</bug_when>
    <thetext>Created attachment 367154
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1526091</commentid>
    <comment_count>14</comment_count>
      <attachid>367155</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-04-10 13:30:29 -0700</bug_when>
    <thetext>Created attachment 367155
Patch

Rebaselined.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1526151</commentid>
    <comment_count>15</comment_count>
      <attachid>367155</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-04-10 15:15:27 -0700</bug_when>
    <thetext>Comment on attachment 367155
Patch

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

&gt; Tools/Scripts/extract-localizable-js-strings:77
&gt; +        HandleUIString($1, $2 || $1, $3 || &quot;&quot;, $file, $.) while s/WI\.UIString\(&quot;([^&quot;]+)&quot;(?:,\s*&quot;([^&quot;]*)&quot;(?:,\s*&quot;([^&quot;]+)&quot;)?)?\)//;

Rather than allow the `key` to be &quot;&quot;, why don&apos;t we just allow it to be omitted altogether.  e.g., you&apos;d have three &quot;versions&quot; of `UIString`:
1. [format]
2. [format, comment]
3. [format, key, comment]

I think it&apos;s a reasonable thing to say that if a `UIString` has a special `key` (e.g. one that isn&apos;t just the `format`), it deserves a comment.

You&apos;d also need to update `WI.UIString` to accommodate this, probably using some `arguments.length` checks :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1526217</commentid>
    <comment_count>16</comment_count>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-04-10 16:52:58 -0700</bug_when>
    <thetext>(In reply to Devin Rousso from comment #15)
&gt; Comment on attachment 367155 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=367155&amp;action=review
&gt; 
&gt; &gt; Tools/Scripts/extract-localizable-js-strings:77
&gt; &gt; +        HandleUIString($1, $2 || $1, $3 || &quot;&quot;, $file, $.) while s/WI\.UIString\(&quot;([^&quot;]+)&quot;(?:,\s*&quot;([^&quot;]*)&quot;(?:,\s*&quot;([^&quot;]+)&quot;)?)?\)//;
&gt; 
&gt; Rather than allow the `key` to be &quot;&quot;, why don&apos;t we just allow it to be
&gt; omitted altogether.  e.g., you&apos;d have three &quot;versions&quot; of `UIString`:
&gt; 1. [format]
&gt; 2. [format, comment]
&gt; 3. [format, key, comment]
&gt; 
&gt; I think it&apos;s a reasonable thing to say that if a `UIString` has a special
&gt; `key` (e.g. one that isn&apos;t just the `format`), it deserves a comment.
&gt; 
&gt; You&apos;d also need to update `WI.UIString` to accommodate this, probably using
&gt; some `arguments.length` checks :)

We also have this case:

4. [format, key] 
WI.UIString(&quot;%d Passed&quot;, &quot;%d Passed (singular)&quot;)
WI.UIString(&quot;%d Passed&quot;, &quot;%d Passed (plural)&quot;)

We would have to add an empty comment here as the 3rd argument to make it work.

Do you still think it&apos;s worth doing?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1526221</commentid>
    <comment_count>17</comment_count>
      <attachid>367155</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-04-10 17:02:19 -0700</bug_when>
    <thetext>Comment on attachment 367155
Patch

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

&gt;&gt;&gt; Tools/Scripts/extract-localizable-js-strings:77
&gt;&gt;&gt; +        HandleUIString($1, $2 || $1, $3 || &quot;&quot;, $file, $.) while s/WI\.UIString\(&quot;([^&quot;]+)&quot;(?:,\s*&quot;([^&quot;]*)&quot;(?:,\s*&quot;([^&quot;]+)&quot;)?)?\)//;
&gt;&gt; 
&gt;&gt; Rather than allow the `key` to be &quot;&quot;, why don&apos;t we just allow it to be omitted altogether.  e.g., you&apos;d have three &quot;versions&quot; of `UIString`:
&gt;&gt; 1. [format]
&gt;&gt; 2. [format, comment]
&gt;&gt; 3. [format, key, comment]
&gt;&gt; 
&gt;&gt; I think it&apos;s a reasonable thing to say that if a `UIString` has a special `key` (e.g. one that isn&apos;t just the `format`), it deserves a comment.
&gt;&gt; 
&gt;&gt; You&apos;d also need to update `WI.UIString` to accommodate this, probably using some `arguments.length` checks :)
&gt; 
&gt; We also have this case:
&gt; 
&gt; 4. [format, key] 
&gt; WI.UIString(&quot;%d Passed&quot;, &quot;%d Passed (singular)&quot;)
&gt; WI.UIString(&quot;%d Passed&quot;, &quot;%d Passed (plural)&quot;)
&gt; 
&gt; We would have to add an empty comment here as the 3rd argument to make it work.
&gt; 
&gt; Do you still think it&apos;s worth doing?

Hmmm.  Good point.  Maybe we can be smart about that and say that if the `comment` starts with `format`, it should be treated as a `key` instead?  It&apos;s an odd &quot;quirk&quot;, but it would give us nice flexible functionality.  Regardless, I think the empty `key` case is a much worse experience than requiring a `comment` if `key` is set.  What do you think?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1526230</commentid>
    <comment_count>18</comment_count>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-04-10 17:12:29 -0700</bug_when>
    <thetext>(In reply to Devin Rousso from comment #17)
&gt; Comment on attachment 367155 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=367155&amp;action=review
&gt; 
&gt; &gt;&gt;&gt; Tools/Scripts/extract-localizable-js-strings:77
&gt; &gt;&gt;&gt; +        HandleUIString($1, $2 || $1, $3 || &quot;&quot;, $file, $.) while s/WI\.UIString\(&quot;([^&quot;]+)&quot;(?:,\s*&quot;([^&quot;]*)&quot;(?:,\s*&quot;([^&quot;]+)&quot;)?)?\)//;
&gt; &gt;&gt; 
&gt; &gt;&gt; Rather than allow the `key` to be &quot;&quot;, why don&apos;t we just allow it to be omitted altogether.  e.g., you&apos;d have three &quot;versions&quot; of `UIString`:
&gt; &gt;&gt; 1. [format]
&gt; &gt;&gt; 2. [format, comment]
&gt; &gt;&gt; 3. [format, key, comment]
&gt; &gt;&gt; 
&gt; &gt;&gt; I think it&apos;s a reasonable thing to say that if a `UIString` has a special `key` (e.g. one that isn&apos;t just the `format`), it deserves a comment.
&gt; &gt;&gt; 
&gt; &gt;&gt; You&apos;d also need to update `WI.UIString` to accommodate this, probably using some `arguments.length` checks :)
&gt; &gt; 
&gt; &gt; We also have this case:
&gt; &gt; 
&gt; &gt; 4. [format, key] 
&gt; &gt; WI.UIString(&quot;%d Passed&quot;, &quot;%d Passed (singular)&quot;)
&gt; &gt; WI.UIString(&quot;%d Passed&quot;, &quot;%d Passed (plural)&quot;)
&gt; &gt; 
&gt; &gt; We would have to add an empty comment here as the 3rd argument to make it work.
&gt; &gt; 
&gt; &gt; Do you still think it&apos;s worth doing?
&gt; 
&gt; Hmmm.  Good point.  Maybe we can be smart about that and say that if the
&gt; `comment` starts with `format`, it should be treated as a `key` instead? 
&gt; It&apos;s an odd &quot;quirk&quot;, but it would give us nice flexible functionality.

I think this is overly complex and unpredictable.

&gt; Regardless, I think the empty `key` case is a much worse experience than
&gt; requiring a `comment` if `key` is set.  What do you think?

With this patch, there&apos;s going to be more cases with [format, comment] than [format, key], so I agree.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1526534</commentid>
    <comment_count>19</comment_count>
      <attachid>367263</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-04-11 16:31:29 -0700</bug_when>
    <thetext>Created attachment 367263
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1526537</commentid>
    <comment_count>20</comment_count>
      <attachid>367263</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-04-11 16:37:30 -0700</bug_when>
    <thetext>Comment on attachment 367263
Patch

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

&gt; Source/WebInspectorUI/UserInterface/Base/LoadLocalizedStrings.js:52
&gt; +        key = undefined;
&gt; +        comment = key;

This is backwards.  You&apos;re invalidating `key` before it&apos;s had a chance to be copied/moved.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1526554</commentid>
    <comment_count>21</comment_count>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-04-11 17:21:10 -0700</bug_when>
    <thetext>(In reply to Devin Rousso from comment #20)
&gt; Comment on attachment 367263 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=367263&amp;action=review
&gt; 
&gt; &gt; Source/WebInspectorUI/UserInterface/Base/LoadLocalizedStrings.js:52
&gt; &gt; +        key = undefined;
&gt; &gt; +        comment = key;
&gt; 
&gt; This is backwards.  You&apos;re invalidating `key` before it&apos;s had a chance to be
&gt; copied/moved.

Whoops 🤦‍♂️</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1526555</commentid>
    <comment_count>22</comment_count>
      <attachid>367267</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-04-11 17:21:32 -0700</bug_when>
    <thetext>Created attachment 367267
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1529280</commentid>
    <comment_count>23</comment_count>
      <attachid>367267</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-04-22 10:14:21 -0700</bug_when>
    <thetext>Comment on attachment 367267
Patch

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

r-, many of the comments could use more explanation and I think we can structure the logic for creating/using a repeated UI string better.

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:103
&gt; +/* A submenu of &apos;Break on&apos; */

This could use a better explanation, like &quot;A submenu item of &apos;Break on&apos; that breaks (pauses) before all network requests&quot;.

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:132
&gt; +/* Break when console.assert() fails */

Please be consistent, so use &quot;Break (pause)&quot;.

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:139
&gt; +/* A submenu of &apos;Break On&apos; */

Ditto (&gt;103).

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:203
&gt; +/* Capture Screenshot of the selected DOM node */

NIT: the &quot;S&quot; shouldn&apos;t be capitalized.

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:217
&gt; +/* A submenu of &apos;Add&apos; */

Ditto (&gt;103).

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:252
&gt; +/* Composite phase records, where graphic layers are combined */

&quot;records&quot; is ambiguous in this case.  Perhaps &quot;timeline records&quot;?

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:492
&gt; +/* Layout phase records that were imperative (forced) */

Ditto (&gt;252).

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:494
&gt; +/* A context menu to force (override) element&apos;s pseudo-classes */

What does &quot;element&quot; mean in this context (devils&apos; advocate).  How about &quot;A context menu item to force (override) a DOM node&apos;s pseudo-classes&quot;?

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:585
&gt; +/* A section of CSS rules inherited from another CSS rule */

Technically, they&apos;re inherited from an ancestor DOM node.

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:615
&gt; +/* Layout phase records */

Ditto (&gt;252).

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:634
&gt; +/* Log DOM element to Console */

For someone unfamiliar with the concept of a &quot;Log&quot;, should we add another word in parenthesis (like above)?  Perhaps &quot;Log (print)&quot; or &quot;Log (record)&quot;?

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:683
&gt; +/* A submenu of &apos;Add&apos; */

Ditto (&gt;103).

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:724
&gt; +/* A submenu of &apos;Break On&apos; */

Ditto (&gt;103).

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:764
&gt; +/* Paint (render) phase records */

Ditto (&gt;252).

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:795
&gt; +/* A submenu of &apos;Add&apos; */

Ditto (&gt;103).

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:931
&gt; +/* Selected DOM element */

This comment doesn&apos;t really provide much more information, such as in what context the string is used.  How about &quot;When logging (printing) the selected DOM node to the console, this is logged (printed) before to identify it as such&quot; or something like that that&apos;s less wordy?

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:936
&gt; +/* Selected DOM node */

Ditto (&gt;931).

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:1050
&gt; +/* A submenu of &apos;Break On&apos; */

Ditto (&gt;103).

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:1057
&gt; +/* A submenu of &apos;Edit&apos; */

Ditto (&gt;103).

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:1135
&gt; +/* Break (pause) on every uncaught (unhandled) exceptions */

Grammar: either remove the &quot;every&quot; or make &quot;exceptions&quot; singular.

&gt; Source/WebInspectorUI/UserInterface/Base/LoadLocalizedStrings.js:50
&gt; +    if (key &amp;&amp; comment === undefined) {

I&apos;d just check `arguments` directly so that a caller can&apos;t manually specify `comment` as `undefined`.
```
    if (arguments.length === 2)
```

&gt; Source/WebInspectorUI/UserInterface/Base/LoadLocalizedStrings.js:74
&gt; +WI.repeatingUIString = function(key) {

This is a really odd way of doing repeated UI strings.  The way WebKit normally does it (see WebCore/platform/LocalizedStrings.h) is to have a separate function for each UI string that contains this information, that way you&apos;d only need to know the function name (not the exact key for it).  Additionally, this makes modifications to the string MUCH cleaner as you wouldn&apos;t have to modify any callsites (since they&apos;re just calling a function).

```
    WI.repeatedUIString = {};

    WI.repeatedUIString.timelineRecordNameLayout = function() {
        return WI.UIString(&quot;Layout&quot;, &quot;Layout @ Timeline Record&quot;, &quot;Layout phase records&quot;);
    };

    ...
```</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1529871</commentid>
    <comment_count>24</comment_count>
      <attachid>367267</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-04-23 18:40:51 -0700</bug_when>
    <thetext>Comment on attachment 367267
Patch

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

Thanks for reviewing!

&gt;&gt; Source/WebInspectorUI/UserInterface/Base/LoadLocalizedStrings.js:50
&gt;&gt; +    if (key &amp;&amp; comment === undefined) {
&gt; 
&gt; I&apos;d just check `arguments` directly so that a caller can&apos;t manually specify `comment` as `undefined`.
&gt; ```
&gt;     if (arguments.length === 2)
&gt; ```

This may cause deoptimization. https://github.com/petkaantonov/bluebird/wiki/Optimization-killers#3-managing-arguments - this is about V8 but it used to (and may still) be the same for JSC.

&gt;&gt; Source/WebInspectorUI/UserInterface/Base/LoadLocalizedStrings.js:74
&gt;&gt; +WI.repeatingUIString = function(key) {
&gt; 
&gt; This is a really odd way of doing repeated UI strings.  The way WebKit normally does it (see WebCore/platform/LocalizedStrings.h) is to have a separate function for each UI string that contains this information, that way you&apos;d only need to know the function name (not the exact key for it).  Additionally, this makes modifications to the string MUCH cleaner as you wouldn&apos;t have to modify any callsites (since they&apos;re just calling a function).
&gt; 
&gt; ```
&gt;     WI.repeatedUIString = {};
&gt; 
&gt;     WI.repeatedUIString.timelineRecordNameLayout = function() {
&gt;         return WI.UIString(&quot;Layout&quot;, &quot;Layout @ Timeline Record&quot;, &quot;Layout phase records&quot;);
&gt;     };
&gt; 
&gt;     ...
&gt; ```

I&apos;m not convinced.

&gt; ... that way you&apos;d only need to know the function name (not the exact key for it).

Why knowing function name is better than the key? You&apos;d need to know the exact function name the same way you&apos;d need to know the key.
Passing keys makes it clear what text shows in the UI just by looking at the callsite.

&gt; Additionally, this makes modifications to the string MUCH cleaner as you wouldn&apos;t have to modify any callsites (since they&apos;re just calling a function).

If you change a string you&apos;d likely have to change the function name as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530054</commentid>
    <comment_count>25</comment_count>
      <attachid>367267</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-04-24 11:06:57 -0700</bug_when>
    <thetext>Comment on attachment 367267
Patch

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

&gt;&gt;&gt; Source/WebInspectorUI/UserInterface/Base/LoadLocalizedStrings.js:50
&gt;&gt;&gt; +    if (key &amp;&amp; comment === undefined) {
&gt;&gt; 
&gt;&gt; I&apos;d just check `arguments` directly so that a caller can&apos;t manually specify `comment` as `undefined`.
&gt;&gt; ```
&gt;&gt;     if (arguments.length === 2)
&gt;&gt; ```
&gt; 
&gt; This may cause deoptimization. https://github.com/petkaantonov/bluebird/wiki/Optimization-killers#3-managing-arguments - this is about V8 but it used to (and may still) be the same for JSC.

In that link, `arguments.length` is specifically called out as being safe.  That&apos;s the only usage I&apos;m suggesting, as it avoids the case where `WI.UIString` is called with `comment` as `undefined` (which we shouldn&apos;t do, but that would be somewhat unexpected behavior).

&gt;&gt;&gt; Source/WebInspectorUI/UserInterface/Base/LoadLocalizedStrings.js:74
&gt;&gt;&gt; +WI.repeatingUIString = function(key) {
&gt;&gt; 
&gt;&gt; This is a really odd way of doing repeated UI strings.  The way WebKit normally does it (see WebCore/platform/LocalizedStrings.h) is to have a separate function for each UI string that contains this information, that way you&apos;d only need to know the function name (not the exact key for it).  Additionally, this makes modifications to the string MUCH cleaner as you wouldn&apos;t have to modify any callsites (since they&apos;re just calling a function).
&gt;&gt; 
&gt;&gt; ```
&gt;&gt;     WI.repeatedUIString = {};
&gt;&gt; 
&gt;&gt;     WI.repeatedUIString.timelineRecordNameLayout = function() {
&gt;&gt;         return WI.UIString(&quot;Layout&quot;, &quot;Layout @ Timeline Record&quot;, &quot;Layout phase records&quot;);
&gt;&gt;     };
&gt;&gt; 
&gt;&gt;     ...
&gt;&gt; ```
&gt; 
&gt; I&apos;m not convinced.

A function name is much more &quot;unique&quot; than a string (especially when dealing with IDEs).  You&apos;re right that either way you&apos;d need to remember something &quot;special&quot;, but I&apos;d much rather remember a function name than a string.  Also, if I got &quot;special&quot; name wrong, I&apos;d rather that an error be thrown in the UI (e.g. function not found) than a &quot;LOCALIZED STRING NOT FOUND&quot; be shown.

Part of my objection to this approach is that we don&apos;t have anything like this anywhere else in Web Inspector (or other parts of WebKit).  When we need to uniquely identify things, we create enums (e.g. any of our `WI.*.Event` objects) or (in the case of C++ localization) we create a unique function per &quot;thing&quot;.  We should be matching that style.  Frankly, if the function name doesn&apos;t somewhat indicate what will end up being displayed in the UI, we need a better function name :|</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530120</commentid>
    <comment_count>26</comment_count>
      <attachid>367267</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-04-24 13:25:20 -0700</bug_when>
    <thetext>Comment on attachment 367267
Patch

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

&gt;&gt;&gt;&gt; Source/WebInspectorUI/UserInterface/Base/LoadLocalizedStrings.js:50
&gt;&gt;&gt;&gt; +    if (key &amp;&amp; comment === undefined) {
&gt;&gt;&gt; 
&gt;&gt;&gt; I&apos;d just check `arguments` directly so that a caller can&apos;t manually specify `comment` as `undefined`.
&gt;&gt;&gt; ```
&gt;&gt;&gt;     if (arguments.length === 2)
&gt;&gt;&gt; ```
&gt;&gt; 
&gt;&gt; This may cause deoptimization. https://github.com/petkaantonov/bluebird/wiki/Optimization-killers#3-managing-arguments - this is about V8 but it used to (and may still) be the same for JSC.
&gt; 
&gt; In that link, `arguments.length` is specifically called out as being safe.  That&apos;s the only usage I&apos;m suggesting, as it avoids the case where `WI.UIString` is called with `comment` as `undefined` (which we shouldn&apos;t do, but that would be somewhat unexpected behavior).

The 1st example there is exactly my case.

    3.1. Reassigning a defined parameter while also mentioning arguments in the body (in sloppy mode only). Typical example:

    function defaultArgsReassign(a, b) {
         if (arguments.length &lt; 2) b = 5;
    }

Anyway, I do like `arguments.length === 2` more. I think it&apos;s also more readable. I&apos;ll add &quot;use strict&quot;.

&gt;&gt;&gt;&gt; Source/WebInspectorUI/UserInterface/Base/LoadLocalizedStrings.js:74
&gt;&gt;&gt;&gt; +WI.repeatingUIString = function(key) {
&gt;&gt;&gt; 
&gt;&gt;&gt; This is a really odd way of doing repeated UI strings.  The way WebKit normally does it (see WebCore/platform/LocalizedStrings.h) is to have a separate function for each UI string that contains this information, that way you&apos;d only need to know the function name (not the exact key for it).  Additionally, this makes modifications to the string MUCH cleaner as you wouldn&apos;t have to modify any callsites (since they&apos;re just calling a function).
&gt;&gt;&gt; 
&gt;&gt;&gt; ```
&gt;&gt;&gt;     WI.repeatedUIString = {};
&gt;&gt;&gt; 
&gt;&gt;&gt;     WI.repeatedUIString.timelineRecordNameLayout = function() {
&gt;&gt;&gt;         return WI.UIString(&quot;Layout&quot;, &quot;Layout @ Timeline Record&quot;, &quot;Layout phase records&quot;);
&gt;&gt;&gt;     };
&gt;&gt;&gt; 
&gt;&gt;&gt;     ...
&gt;&gt;&gt; ```
&gt;&gt; 
&gt;&gt; I&apos;m not convinced.
&gt; 
&gt; A function name is much more &quot;unique&quot; than a string (especially when dealing with IDEs).  You&apos;re right that either way you&apos;d need to remember something &quot;special&quot;, but I&apos;d much rather remember a function name than a string.  Also, if I got &quot;special&quot; name wrong, I&apos;d rather that an error be thrown in the UI (e.g. function not found) than a &quot;LOCALIZED STRING NOT FOUND&quot; be shown.
&gt; 
&gt; Part of my objection to this approach is that we don&apos;t have anything like this anywhere else in Web Inspector (or other parts of WebKit).  When we need to uniquely identify things, we create enums (e.g. any of our `WI.*.Event` objects) or (in the case of C++ localization) we create a unique function per &quot;thing&quot;.  We should be matching that style.  Frankly, if the function name doesn&apos;t somewhat indicate what will end up being displayed in the UI, we need a better function name :|

OK, this makes sense.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530321</commentid>
    <comment_count>27</comment_count>
      <attachid>368218</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-04-25 00:32:52 -0700</bug_when>
    <thetext>Created attachment 368218
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1533176</commentid>
    <comment_count>28</comment_count>
      <attachid>368218</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-05-03 23:13:17 -0700</bug_when>
    <thetext>Comment on attachment 368218
Patch

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

r=me, nice work!

&gt; Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js:1121
&gt; +/* Amount of data sent over the network */

Maybe add &quot;for a single resource&quot; at the end?

&gt; Tools/Scripts/extract-localizable-js-strings:78
&gt; +        # Allow: WI.UIString(string, comment)
&gt; +        #        WI.UIString(string, key, comment)

So I just realized something.  There&apos;s no real need for a version that has `WI.UIString(string, key, comment)` because the `comment` can BE the `key`.  Both `comment` and `key` are basic strings, so why don&apos;t we just always have the `comment` be the `key` and completely drop support for `key`.

```
    WI.UIString(&quot;layout&quot;, &quot;Layout&quot;, &quot;Layout @ Timeline record&quot;, &quot;Layout phase timeline records&quot;)
```
is really no different than
```
    WI.UIString(&quot;layout&quot;, &quot;Layout phase timeline records&quot;)
```

It&apos;s fine if you don&apos;t want to make that change in this patch, but I think it&apos;s a bit of a 🤦‍♂️ on my part.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1533232</commentid>
    <comment_count>29</comment_count>
      <attachid>369078</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-05-04 17:10:29 -0700</bug_when>
    <thetext>Created attachment 369078
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1533233</commentid>
    <comment_count>30</comment_count>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-05-04 17:11:52 -0700</bug_when>
    <thetext>Making comments keys may work but I&apos;ll explore it in a follow-up.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1533238</commentid>
    <comment_count>31</comment_count>
      <attachid>369078</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-04 18:31:16 -0700</bug_when>
    <thetext>Comment on attachment 369078
Patch

Clearing flags on attachment: 369078

Committed r244952: &lt;https://trac.webkit.org/changeset/244952&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1533239</commentid>
    <comment_count>32</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-04 18:31:18 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1534369</commentid>
    <comment_count>33</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2019-05-08 10:44:53 -0700</bug_when>
    <thetext>Reverted r244952 for reason:

Caused inspector to appear blank.

Committed r245060: &lt;https://trac.webkit.org/changeset/245060&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538413</commentid>
    <comment_count>34</comment_count>
      <attachid>370452</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-05-22 15:26:48 -0700</bug_when>
    <thetext>Created attachment 370452
Patch

The same patch, rebaselined.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538496</commentid>
    <comment_count>35</comment_count>
      <attachid>370452</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-22 17:44:49 -0700</bug_when>
    <thetext>Comment on attachment 370452
Patch

Clearing flags on attachment: 370452

Committed r245665: &lt;https://trac.webkit.org/changeset/245665&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538497</commentid>
    <comment_count>36</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-22 17:44:51 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538864</commentid>
    <comment_count>37</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-23 18:19:43 -0700</bug_when>
    <thetext>Re-opened since this is blocked by bug 198203</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538892</commentid>
    <comment_count>38</comment_count>
      <attachid>370452</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-05-23 19:18:14 -0700</bug_when>
    <thetext>Comment on attachment 370452
Patch

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

&gt; Source/WebInspectorUI/UserInterface/Base/LoadLocalizedStrings.js:99
&gt; +    return WI.UIString(&quot;Assertion Failures&quot;, &quot;Break (pause) when console.assert() fails&quot;);

The reason this patch isn&apos;t working is because we strip all `console.assert` lines when creating a production build.  Setting `my $shouldCombineMain = 1;` in WebInspectorUI/Scripts/copy-user-interface-resources.pl will reproduce.

&lt;https://webkit.org/b/198207&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538925</commentid>
    <comment_count>39</comment_count>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-05-23 20:42:47 -0700</bug_when>
    <thetext>(In reply to Devin Rousso from comment #38)
&gt; Comment on attachment 370452 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=370452&amp;action=review
&gt; 
&gt; &gt; Source/WebInspectorUI/UserInterface/Base/LoadLocalizedStrings.js:99
&gt; &gt; +    return WI.UIString(&quot;Assertion Failures&quot;, &quot;Break (pause) when console.assert() fails&quot;);
&gt; 
&gt; The reason this patch isn&apos;t working is because we strip all `console.assert`
&gt; lines when creating a production build.  Setting `my $shouldCombineMain =
&gt; 1;` in WebInspectorUI/Scripts/copy-user-interface-resources.pl will
&gt; reproduce.
&gt; 
&gt; &lt;https://webkit.org/b/198207&gt;

Thank you for resolving this!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1539706</commentid>
    <comment_count>40</comment_count>
      <attachid>370779</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2019-05-28 13:26:02 -0700</bug_when>
    <thetext>Created attachment 370779
Patch

I was able to confirm that setting `my $shouldCombineMain = 1;` with my patch broke Web Inspector and that bug 198207 fixed it.

Devin, is it safe to land my patch now?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1539712</commentid>
    <comment_count>41</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2019-05-28 13:59:53 -0700</bug_when>
    <thetext>(In reply to Nikita Vasilyev from comment #40)
&gt; Created attachment 370779 [details]
&gt; Patch
&gt; 
&gt; I was able to confirm that setting `my $shouldCombineMain = 1;` with my
&gt; patch broke Web Inspector and that bug 198207 fixed it.
&gt; 
&gt; Devin, is it safe to land my patch now?

If you&apos;ve already confirmed it should work then ya!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1539749</commentid>
    <comment_count>42</comment_count>
      <attachid>370779</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-28 15:22:27 -0700</bug_when>
    <thetext>Comment on attachment 370779
Patch

Clearing flags on attachment: 370779

Committed r245827: &lt;https://trac.webkit.org/changeset/245827&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1539750</commentid>
    <comment_count>43</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-28 15:22:29 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363159</attachid>
            <date>2019-02-27 17:09:20 -0800</date>
            <delta_ts>2019-02-27 17:09:55 -0800</delta_ts>
            <desc>WIP</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>1829</size>
            <attacher name="Nikita Vasilyev">nvasilyev</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQyMTQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwppbmRleCAz
MmM1MDQ1YTQxYjNlZGMxODBhMjdiYjJjN2QxNTFiNDhmOTIxYmRhLi4wOTNkNGJkYWE3MTgyYWVj
OTUwMjBhNDg3YmM0MDM5N2IwZmFiOWI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNyBAQAorMjAxOS0wMi0yNyAgTWF0dCBCYWtlciAgPG1hdHRiYWtlckBhcHBsZS5jb20+
CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogRGVidWdnZXI6IGRpc2FibGVkIGJyZWFrcG9pbnQg
Y29sb3IgaXMgdG9vIGRhcmsKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE5NTEwMworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDg0NDA2Nzg+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW5jcmVhc2UgZGlz
YWJsZWQgYnJlYWtwb2ludCBjb250cmFzdCB1c2luZyBDU1MgZmlsdGVyIGluc3RlYWQgb2Ygb3Bh
Y3RpeS4KKworICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvQnJlYWtwb2ludFRyZWVFbGVt
ZW50LmNzczoKKyAgICAgICAgKC5pdGVtLmJyZWFrcG9pbnQgLnN0YXR1cyA+IC5zdGF0dXMtaW1h
Z2UuZGlzYWJsZWQpOgorICAgICAgICAoQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFy
aykpOgorCiAyMDE5LTAyLTI2ICBNYXR0IEJha2VyICA8bWF0dGJha2VyQGFwcGxlLmNvbT4KIAog
ICAgICAgICBXZWIgSW5zcGVjdG9yOiBVc2Ugc3lzdGVtIGFjY2VudCBjb2xvciB0aHJvdWdob3V0
IFVJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3
cy9CcmVha3BvaW50VHJlZUVsZW1lbnQuY3NzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvVmlld3MvQnJlYWtwb2ludFRyZWVFbGVtZW50LmNzcwppbmRleCAxZWQzMGQ5ZTA0
MzFlY2UwMjg3MDNmNTU5NWI3MTYzMDc1ZTg0NjkyLi5kODE2ZWQwODQ3OTQxNjk2MzMxMzMxZjZk
ZjRjZDVkOWE2MmViMmVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9CcmVha3BvaW50VHJlZUVsZW1lbnQuY3NzCisrKyBiL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0JyZWFrcG9pbnRUcmVlRWxlbWVudC5jc3MK
QEAgLTQyLDcgKzQyLDcgQEAKIH0KIAogLml0ZW0uYnJlYWtwb2ludCAuc3RhdHVzID4gLnN0YXR1
cy1pbWFnZS5kaXNhYmxlZCB7Ci0gICAgb3BhY2l0eTogMC4zNTsKKyAgICBmaWx0ZXI6IHNhdHVy
YXRlKDAuMikgYnJpZ2h0bmVzcygxLjc1KTsKIH0KIAogLml0ZW0uYnJlYWtwb2ludCAuc3VidGl0
bGUuZm9ybWF0dGVkLWxvY2F0aW9uIHsKQEAgLTg3LDMgKzg3LDkgQEAgaWNvbiB0byB0aGUgaWNv
biBlbGVtZW50J3MgYmFja2dyb3VuZCBzbyBhbmltYXRpb25zIGFyZSBsYXllcmVkIG9uIHRvcC4g
Ki8KICAgICB0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2Utb3V0OwogICAgIGJhY2tncm91bmQtY29s
b3I6IGhzbGEoMjE2LCAzMCUsIDQyJSwgMC4xKTsKIH0KKworQG1lZGlhIChwcmVmZXJzLWNvbG9y
LXNjaGVtZTogZGFyaykgeworICAgIC5pdGVtLmJyZWFrcG9pbnQgLnN0YXR1cyA+IC5zdGF0dXMt
aW1hZ2UuZGlzYWJsZWQgeworICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMC43NSk7CisgICAg
fQorfQo=
</data>
<flag name="commit-queue"
          id="379776"
          type_id="3"
          status="-"
          setter="nvasilyev"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363160</attachid>
            <date>2019-02-27 17:09:55 -0800</date>
            <delta_ts>2019-02-28 16:58:27 -0800</delta_ts>
            <desc>WIP</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>25966</size>
            <attacher name="Nikita Vasilyev">nvasilyev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9q
L2xvY2FsaXplZFN0cmluZ3MuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9u
cy9lbi5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzCmluZGV4IDFmYmQ5NjFlZDc1Li5lZDg0OTdj
MmY2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4u
bHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9j
YWxpemF0aW9ucy9lbi5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzCkBAIC0xMzEsNyArMTMxLDYg
QEAgbG9jYWxpemVkU3RyaW5nc1siQXNzZXJ0aW9uIHdpdGggbWVzc2FnZTogJXMiXSA9ICJBc3Nl
cnRpb24gd2l0aCBtZXNzYWdlOiAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRpdmUiXSA9
ICJBc3NlcnRpdmUiOwogbG9jYWxpemVkU3RyaW5nc1siQXN5bmMgYXVkaXRzIGFyZSBub3Qgc3Vw
cG9ydGVkLiJdID0gIkFzeW5jIGF1ZGl0cyBhcmUgbm90IHN1cHBvcnRlZC4iOwogbG9jYWxpemVk
U3RyaW5nc1siQXR0cmlidXRlIl0gPSAiQXR0cmlidXRlIjsKLWxvY2FsaXplZFN0cmluZ3NbIkF0
dHJpYnV0ZSBNb2RpZmllZCJdID0gIkF0dHJpYnV0ZSBNb2RpZmllZCI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJBdHRyaWJ1dGVzIl0gPSAiQXR0cmlidXRlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBdWRp
dCJdID0gIkF1ZGl0IjsKIGxvY2FsaXplZFN0cmluZ3NbIkF1ZGl0IEVycm9yOiAlcyJdID0gIkF1
ZGl0IEVycm9yOiAlcyI7CkBAIC0xODYsNyArMTg1LDYgQEAgbG9jYWxpemVkU3RyaW5nc1siQ2Fu
dmFzICVkIl0gPSAiQ2FudmFzICVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNhbnZhcyAlcyJdID0g
IkNhbnZhcyAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDYW52YXMgRWxlbWVudCJdID0gIkNhbnZh
cyBFbGVtZW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIkNhbnZhc2VzIl0gPSAiQ2FudmFzZXMiOwot
bG9jYWxpemVkU3RyaW5nc1siQ2FwdHVyZSBTY3JlZW5zaG90Il0gPSAiQ2FwdHVyZSBTY3JlZW5z
aG90IjsKIGxvY2FsaXplZFN0cmluZ3NbIkNhcHR1cmluZyJdID0gIkNhcHR1cmluZyI7CiAvKiBD
b250ZXh0IG1lbnUgbGFiZWwgZm9yIHdoZXRoZXIgc2VhcmNoZXMgc2hvdWxkIGJlIGNhc2Ugc2Vu
c2l0aXZlLiAqLwogbG9jYWxpemVkU3RyaW5nc1siQ2FzZSBTZW5zaXRpdmUgQCBDb250ZXh0IE1l
bnUiXSA9ICJDYXNlIFNlbnNpdGl2ZSI7CkBAIC0yMzcsNyArMjM1LDggQEAgbG9jYWxpemVkU3Ry
aW5nc1siQ29tcG9zaXRlZCJdID0gIkNvbXBvc2l0ZWQiOwogbG9jYWxpemVkU3RyaW5nc1siQ29t
cHJlc3NlZCJdID0gIkNvbXByZXNzZWQiOwogbG9jYWxpemVkU3RyaW5nc1siQ29tcHJlc3Npb24i
XSA9ICJDb21wcmVzc2lvbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wcmVzc2lvbjoiXSA9ICJD
b21wcmVzc2lvbjoiOwotbG9jYWxpemVkU3RyaW5nc1siQ29tcHV0ZWQiXSA9ICJDb21wdXRlZCI7
CisvKiBUYWIgbmFtZSBmb3IgY29tcHV0ZWQgc3R5bGVzICovCitsb2NhbGl6ZWRTdHJpbmdzWyJD
b21wdXRlZCBAIFRhYiBuYW1lIl0gPSAiQ29tcHV0ZWQiOwogbG9jYWxpemVkU3RyaW5nc1siQ29u
ZGl0aW9uIl0gPSAiQ29uZGl0aW9uIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNvbmRpdGlvbmFsIGV4
cHJlc3Npb24iXSA9ICJDb25kaXRpb25hbCBleHByZXNzaW9uIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkNvbm5lY3RpbmciXSA9ICJDb25uZWN0aW5nIjsKQEAgLTQ0Myw3ICs0NDIsNiBAQCBsb2NhbGl6
ZWRTdHJpbmdzWyJGYWRlIHVuZXhlY3V0ZWQgY29kZSJdID0gIkZhZGUgdW5leGVjdXRlZCBjb2Rl
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkZhaWxlZCB0byB1cGdyYWRlIl0gPSAiRmFpbGVkIHRvIHVw
Z3JhZGUiOwogbG9jYWxpemVkU3RyaW5nc1siRmFpbHVyZSBzdGF0dXMgY29kZSJdID0gIkZhaWx1
cmUgc3RhdHVzIGNvZGUiOwogbG9jYWxpemVkU3RyaW5nc1siRmV0Y2giXSA9ICJGZXRjaCI7Ci1s
b2NhbGl6ZWRTdHJpbmdzWyJGZXRjaGVzIl0gPSAiRmV0Y2hlcyI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJGaWxlIG9yIFJlc291cmNlIl0gPSAiRmlsZSBvciBSZXNvdXJjZSI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJGaWxlbmFtZSJdID0gIkZpbGVuYW1lIjsKIGxvY2FsaXplZFN0cmluZ3NbIkZpbHRlciJd
ID0gIkZpbHRlciI7CkBAIC00NTksNyArNDU3LDYgQEAgbG9jYWxpemVkU3RyaW5nc1siRm9yY2Ug
RGFyayBBcHBlYXJhbmNlIl0gPSAiRm9yY2UgRGFyayBBcHBlYXJhbmNlIjsKIGxvY2FsaXplZFN0
cmluZ3NbIkZvcmNlIExpZ2h0IEFwcGVhcmFuY2UiXSA9ICJGb3JjZSBMaWdodCBBcHBlYXJhbmNl
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkZvcmNlIFByaW50IE1lZGlhIFN0eWxlcyJdID0gIkZvcmNl
IFByaW50IE1lZGlhIFN0eWxlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3JjZWQgTGF5b3V0Il0g
PSAiRm9yY2VkIExheW91dCI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJGb3JjZWQgUHNldWRvLUNsYXNz
ZXMiXSA9ICJGb3JjZWQgUHNldWRvLUNsYXNzZXMiOwogbG9jYWxpemVkU3RyaW5nc1siRm9ybWF0
OiBIU0wiXSA9ICJGb3JtYXQ6IEhTTCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3JtYXQ6IEhTTEEi
XSA9ICJGb3JtYXQ6IEhTTEEiOwogbG9jYWxpemVkU3RyaW5nc1siRm9ybWF0OiBIZXgiXSA9ICJG
b3JtYXQ6IEhleCI7CkBAIC01NDAsNyArNTM3LDYgQEAgbG9jYWxpemVkU3RyaW5nc1siSW5kZXgg
S2V5IFx1MjAxNCAlcyJdID0gIkluZGV4IEtleSBcdTIwMTQgJXMiOwogbG9jYWxpemVkU3RyaW5n
c1siSW5kZXhlZCBEYXRhYmFzZXMiXSA9ICJJbmRleGVkIERhdGFiYXNlcyI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJJbmZvOiAiXSA9ICJJbmZvOiAiOwogbG9jYWxpemVkU3RyaW5nc1siSW5mb3MiXSA9
ICJJbmZvcyI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJJbmhlcml0ZWQgRnJvbSJdID0gIkluaGVyaXRl
ZCBGcm9tIjsKIGxvY2FsaXplZFN0cmluZ3NbIkluaXRpYWwgU3RhdGUiXSA9ICJJbml0aWFsIFN0
YXRlIjsKIGxvY2FsaXplZFN0cmluZ3NbIkluaXRpYWwgVmVsb2NpdHkiXSA9ICJJbml0aWFsIFZl
bG9jaXR5IjsKIGxvY2FsaXplZFN0cmluZ3NbIkluaXRpYXRlZCJdID0gIkluaXRpYXRlZCI7CkBA
IC01ODQsMTEgKzU4MCw5IEBAIGxvY2FsaXplZFN0cmluZ3NbIkxvY2FsIFZhcmlhYmxlcyJdID0g
IkxvY2FsIFZhcmlhYmxlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2NhdGVkIGF0ICVzIl0gPSAi
TG9jYXRlZCBhdCAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2NhdGlvbiJdID0gIkxvY2F0aW9u
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBDYW52YXMgQ29udGV4dCJdID0gIkxvZyBDYW52YXMg
Q29udGV4dCI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJMb2cgRWxlbWVudCJdID0gIkxvZyBFbGVtZW50
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBGcmFtZSBUZXh0Il0gPSAiTG9nIEZyYW1lIFRleHQi
OwogbG9jYWxpemVkU3RyaW5nc1siTG9nIEZyYW1lIFZhbHVlIl0gPSAiTG9nIEZyYW1lIFZhbHVl
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBNZXNzYWdlIl0gPSAiTG9nIE1lc3NhZ2UiOwotbG9j
YWxpemVkU3RyaW5nc1siTG9nIE5vZGUiXSA9ICJMb2cgTm9kZSI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJMb2cgU3ltYm9sIl0gPSAiTG9nIFN5bWJvbCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgVmFs
dWUiXSA9ICJMb2cgVmFsdWUiOwogbG9jYWxpemVkU3RyaW5nc1siTG9nIFdlYlNvY2tldCJdID0g
IkxvZyBXZWJTb2NrZXQiOwpAQCAtNjMwLDcgKzYyNCw2IEBAIGxvY2FsaXplZFN0cmluZ3NbIk5l
dHdvcmsiXSA9ICJOZXR3b3JrIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5ldHdvcmsgSXNzdWUiXSA9
ICJOZXR3b3JrIElzc3VlIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5ldHdvcmsgUmVxdWVzdHMiXSA9
ICJOZXR3b3JrIFJlcXVlc3RzIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5ldyBUYWIiXSA9ICJOZXcg
VGFiIjsKLWxvY2FsaXplZFN0cmluZ3NbIk5leHQgU2libGluZyJdID0gIk5leHQgU2libGluZyI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJObyJdID0gIk5vIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5vIEFj
Y2Vzc2liaWxpdHkgSW5mb3JtYXRpb24iXSA9ICJObyBBY2Nlc3NpYmlsaXR5IEluZm9ybWF0aW9u
IjsKIGxvY2FsaXplZFN0cmluZ3NbIk5vIEFwcGxpY2F0aW9uIENhY2hlIGluZm9ybWF0aW9uIGF2
YWlsYWJsZSJdID0gIk5vIEFwcGxpY2F0aW9uIENhY2hlIGluZm9ybWF0aW9uIGF2YWlsYWJsZSI7
CkBAIC02NjgsNyArNjYxLDYgQEAgbG9jYWxpemVkU3RyaW5nc1siTm8gcmVxdWVzdCwgc2VydmVk
IGZyb20gdGhlIG1lbW9yeSBjYWNoZS4iXSA9ICJObyByZXF1ZXN0LCBzZXIKIGxvY2FsaXplZFN0
cmluZ3NbIk5vIHJlc3BvbnNlIGNvb2tpZXMuIl0gPSAiTm8gcmVzcG9uc2UgY29va2llcy4iOwog
bG9jYWxpemVkU3RyaW5nc1siTm8gcmVzcG9uc2UgaGVhZGVycyJdID0gIk5vIHJlc3BvbnNlIGhl
YWRlcnMiOwogbG9jYWxpemVkU3RyaW5nc1siTm9kZSJdID0gIk5vZGUiOwotbG9jYWxpemVkU3Ry
aW5nc1siTm9kZSBSZW1vdmVkIl0gPSAiTm9kZSBSZW1vdmVkIjsKIGxvY2FsaXplZFN0cmluZ3Nb
Ik5vZGVzIl0gPSAiTm9kZXMiOwogbG9jYWxpemVkU3RyaW5nc1siTm9uZSJdID0gIk5vbmUiOwog
bG9jYWxpemVkU3RyaW5nc1siTm90IGZvdW5kIl0gPSAiTm90IGZvdW5kIjsKQEAgLTcwNCw2ICs2
OTYsOCBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJQYWdlIG5hdmlnYXRlZCBhdCAlcyJdID0gIlBhZ2Ug
bmF2aWdhdGVkIGF0ICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlBhZ2UgcmVsb2FkZWQgYXQgJXMi
XSA9ICJQYWdlIHJlbG9hZGVkIGF0ICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlBhaW50Il0gPSAi
UGFpbnQiOwogbG9jYWxpemVkU3RyaW5nc1siUGFpbnRzIl0gPSAiUGFpbnRzIjsKKy8qIEEgY291
bnQgb2YgaG93IG1hbnkgdGltZXMgYW4gZWxlbWVudCB3YXMgcGFpbnRlZCAocmVuZGVyZWQpICov
Citsb2NhbGl6ZWRTdHJpbmdzWyJQYWludHMgQCBDb2x1bW4gdGl0bGUiXSA9ICJQYWludHMiOwog
bG9jYWxpemVkU3RyaW5nc1siUGFyZW50Il0gPSAiUGFyZW50IjsKIGxvY2FsaXplZFN0cmluZ3Nb
IlBhcnRpYWwgR2FyYmFnZSBDb2xsZWN0aW9uIl0gPSAiUGFydGlhbCBHYXJiYWdlIENvbGxlY3Rp
b24iOwogbG9jYWxpemVkU3RyaW5nc1siUGFzc2l2ZSJdID0gIlBhc3NpdmUiOwpAQCAtNzI5LDcg
KzcyMyw2IEBAIGxvY2FsaXplZFN0cmluZ3NbIlByZXNzICVzIHRvIHN0b3AgZWRpdGluZyJdID0g
IlByZXNzICVzIHRvIHN0b3AgZWRpdGluZyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQcmVzc2VkIl0g
PSAiUHJlc3NlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQcmV0dHkgcHJpbnQiXSA9ICJQcmV0dHkg
cHJpbnQiOwogbG9jYWxpemVkU3RyaW5nc1siUHJldmlldyJdID0gIlByZXZpZXciOwotbG9jYWxp
emVkU3RyaW5nc1siUHJldmlvdXMgU2libGluZyJdID0gIlByZXZpb3VzIFNpYmxpbmciOwogbG9j
YWxpemVkU3RyaW5nc1siUHJpbWFyeSBLZXkiXSA9ICJQcmltYXJ5IEtleSI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJQcmltYXJ5IEtleSBcdTIwMTQgJXMiXSA9ICJQcmltYXJ5IEtleSBcdTIwMTQgJXMi
OwogbG9jYWxpemVkU3RyaW5nc1siUHJpb3JpdHkiXSA9ICJQcmlvcml0eSI7CkBAIC04MTksNyAr
ODEyLDYgQEAgbG9jYWxpemVkU3RyaW5nc1siUmV2ZWFsIEJyZWFrcG9pbnQiXSA9ICJSZXZlYWwg
QnJlYWtwb2ludCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZlYWwgaW4gRE9NIFRyZWUiXSA9ICJS
ZXZlYWwgaW4gRE9NIFRyZWUiOwogbG9jYWxpemVkU3RyaW5nc1siUmV2ZWFsIGluIERlYnVnZ2Vy
IFRhYiJdID0gIlJldmVhbCBpbiBEZWJ1Z2dlciBUYWIiOwogbG9jYWxpemVkU3RyaW5nc1siUmV2
ZWFsIGluIEVsZW1lbnRzIFRhYiJdID0gIlJldmVhbCBpbiBFbGVtZW50cyBUYWIiOwotbG9jYWxp
emVkU3RyaW5nc1siUmV2ZWFsIGluIExheWVycyBUYWIiXSA9ICJSZXZlYWwgaW4gTGF5ZXJzIFRh
YiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZlYWwgaW4gTmV0d29yayBUYWIiXSA9ICJSZXZlYWwg
aW4gTmV0d29yayBUYWIiOwogbG9jYWxpemVkU3RyaW5nc1siUmV2ZWFsIGluIE9yaWdpbmFsIFJl
c291cmNlIl0gPSAiUmV2ZWFsIGluIE9yaWdpbmFsIFJlc291cmNlIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlJldmVhbCBpbiBSZXNvdXJjZXMgVGFiIl0gPSAiUmV2ZWFsIGluIFJlc291cmNlcyBUYWIi
OwpAQCAtODYyLDcgKzg1NCw2IEBAIGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdGVkIEVsZW1lbnQi
XSA9ICJTZWxlY3RlZCBFbGVtZW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdGVkIEZyYW1l
Il0gPSAiU2VsZWN0ZWQgRnJhbWUiOwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgSXRlbSJd
ID0gIlNlbGVjdGVkIEl0ZW0iOwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgSXRlbXMiXSA9
ICJTZWxlY3RlZCBJdGVtcyI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBOb2RlIl0gPSAi
U2VsZWN0ZWQgTm9kZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBTeW1ib2wiXSA9ICJT
ZWxlY3RlZCBTeW1ib2wiOwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgVmFsdWUiXSA9ICJT
ZWxlY3RlZCBWYWx1ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBXZWJTb2NrZXQiXSA9
ICJTZWxlY3RlZCBXZWJTb2NrZXQiOwpAQCAtOTU4LDcgKzk0OSw2IEBAIGxvY2FsaXplZFN0cmlu
Z3NbIlN0b3AgcmVjb3JkaW5nIGNhbnZhcyBhY3Rpb25zIl0gPSAiU3RvcCByZWNvcmRpbmcgY2Fu
dmFzIGFjdGlvCiBsb2NhbGl6ZWRTdHJpbmdzWyJTdG9wIHJlY29yZGluZyBvbmNlIHBhZ2UgbG9h
ZHMiXSA9ICJTdG9wIHJlY29yZGluZyBvbmNlIHBhZ2UgbG9hZHMiOwogbG9jYWxpemVkU3RyaW5n
c1siU3RvcHBpbmcgdGhlIFx1MjAxQyVzXHUyMDFEIGF1ZGl0Il0gPSAiU3RvcHBpbmcgdGhlIFx1
MjAxQyVzXHUyMDFEIGF1ZGl0IjsKIGxvY2FsaXplZFN0cmluZ3NbIlN0b3JhZ2UiXSA9ICJTdG9y
YWdlIjsKLWxvY2FsaXplZFN0cmluZ3NbIlN0eWxlIEF0dHJpYnV0ZSJdID0gIlN0eWxlIEF0dHJp
YnV0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZSBSZXNvbHV0aW9uIl0gPSAiU3R5bGUgUmVz
b2x1dGlvbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZSBydWxlIl0gPSAiU3R5bGUgcnVsZSI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZXMiXSA9ICJTdHlsZXMiOwpAQCAtOTY5LDEyICs5NTks
MTAgQEAgbG9jYWxpemVkU3RyaW5nc1siU3R5bGVzIFx1MjAxNCBSdWxlcyJdID0gIlN0eWxlcyBc
dTIwMTQgUnVsZXMiOwogbG9jYWxpemVkU3RyaW5nc1siU3R5bGVzaGVldCJdID0gIlN0eWxlc2hl
ZXQiOwogbG9jYWxpemVkU3RyaW5nc1siU3R5bGVzaGVldHMiXSA9ICJTdHlsZXNoZWV0cyI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJTdWJqZWN0Il0gPSAiU3ViamVjdCI7Ci1sb2NhbGl6ZWRTdHJpbmdz
WyJTdWJ0cmVlIE1vZGlmaWVkIl0gPSAiU3VidHJlZSBNb2RpZmllZCI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJTdW1tYXJ5Il0gPSAiU3VtbWFyeSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUQ1AiXSA9ICJU
Q1AiOwogbG9jYWxpemVkU3RyaW5nc1siVGFiIHdpZHRoOiJdID0gIlRhYiB3aWR0aDoiOwogbG9j
YWxpemVkU3RyaW5nc1siVGFicyJdID0gIlRhYnMiOwotbG9jYWxpemVkU3RyaW5nc1siVGFnIl0g
PSAiVGFnIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRha2Ugc25hcHNob3QiXSA9ICJUYWtlIHNuYXBz
aG90IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRlbXBsYXRlIENvbnRlbnQiXSA9ICJUZW1wbGF0ZSBD
b250ZW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRleHQiXSA9ICJUZXh0IjsKQEAgLTEwMzAsNyAr
MTAxOCw2IEBAIGxvY2FsaXplZFN0cmluZ3NbIlRvdGFsIHRpbWUiXSA9ICJUb3RhbCB0aW1lIjsK
IGxvY2FsaXplZFN0cmluZ3NbIlRvdGFsczoiXSA9ICJUb3RhbHM6IjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlRyYWNlIl0gPSAiVHJhY2UiOwogbG9jYWxpemVkU3RyaW5nc1siVHJhY2U6ICVzIl0gPSAi
VHJhY2U6ICVzIjsKLWxvY2FsaXplZFN0cmluZ3NbIlRyYW5zZmVyIFNpemUiXSA9ICJUcmFuc2Zl
ciBTaXplIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRyYW5zZmVycmVkIl0gPSAiVHJhbnNmZXJyZWQi
OwogbG9jYWxpemVkU3RyaW5nc1siVHJpZ2dlcmVkIEJyZWFrcG9pbnQiXSA9ICJUcmlnZ2VyZWQg
QnJlYWtwb2ludCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUcmlnZ2VyZWQgVVJMIEJyZWFrcG9pbnQi
XSA9ICJUcmlnZ2VyZWQgVVJMIEJyZWFrcG9pbnQiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL0xheW91dFRpbWVsaW5lUmVjb3JkLmpzIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL0xheW91dFRpbWVsaW5l
UmVjb3JkLmpzCmluZGV4IDk1ZjhhZjVhNjUyLi5jNjE4MWQzNmEwYSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL0xheW91dFRpbWVsaW5lUmVj
b3JkLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9M
YXlvdXRUaW1lbGluZVJlY29yZC5qcwpAQCAtNTMsOSArNTMsOSBAQCBXSS5MYXlvdXRUaW1lbGlu
ZVJlY29yZCA9IGNsYXNzIExheW91dFRpbWVsaW5lUmVjb3JkIGV4dGVuZHMgV0kuVGltZWxpbmVS
ZWNvcmQKICAgICAgICAgY2FzZSBXSS5MYXlvdXRUaW1lbGluZVJlY29yZC5FdmVudFR5cGUuRm9y
Y2VkTGF5b3V0OgogICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJGb3JjZWQgTGF5b3V0
Iik7CiAgICAgICAgIGNhc2UgV0kuTGF5b3V0VGltZWxpbmVSZWNvcmQuRXZlbnRUeXBlLkxheW91
dDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTGF5b3V0Iik7CisgICAgICAgICAg
ICByZXR1cm4gV0kuVUlTdHJpbmcoIkxheW91dCIsICIiLCAiTGF5b3V0IGFjdGlvbiAodmVyYiki
KTsKICAgICAgICAgY2FzZSBXSS5MYXlvdXRUaW1lbGluZVJlY29yZC5FdmVudFR5cGUuUGFpbnQ6
Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlBhaW50Iik7CisgICAgICAgICAgICBy
ZXR1cm4gV0kuVUlTdHJpbmcoIlBhaW50IiwgIiIsICJQYWludCAocmVuZGVyKSBhY3Rpb24iKTsK
ICAgICAgICAgY2FzZSBXSS5MYXlvdXRUaW1lbGluZVJlY29yZC5FdmVudFR5cGUuQ29tcG9zaXRl
OgogICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJDb21wb3NpdGUiKTsKICAgICAgICAg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxz
L1JlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9Nb2RlbHMvUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5qcwppbmRl
eCAxMGRjYTQyN2E2MS4uNzRiMDJkYWUyZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpz
CisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZW5kZXJp
bmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpzCkBAIC00Niw5ICs0Niw5IEBAIFdJLlJlbmRlcmluZ0Zy
YW1lVGltZWxpbmVSZWNvcmQgPSBjbGFzcyBSZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkIGV4
dGVuZHMgV0kuCiAgICAgICAgIGNhc2UgV0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5U
YXNrVHlwZS5TY3JpcHQ6CiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlNjcmlwdCIp
OwogICAgICAgICBjYXNlIFdJLlJlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuVGFza1R5cGUu
TGF5b3V0OgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJMYXlvdXQiKTsKKyAgICAg
ICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTGF5b3V0IiwgIiIsICJMYXlvdXQgYWN0aW9uICh2
ZXJiKSIpOwogICAgICAgICBjYXNlIFdJLlJlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuVGFz
a1R5cGUuUGFpbnQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlBhaW50Iik7Cisg
ICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlBhaW50IiwgIiIsICJQYWludCBhY3Rpb24g
KHZlcmIpIik7CiAgICAgICAgIGNhc2UgV0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5U
YXNrVHlwZS5PdGhlcjoKICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiT3RoZXIiKTsK
ICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvTW9kZWxzL1Jlc291cmNlLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvTW9kZWxzL1Jlc291cmNlLmpzCmluZGV4IDM4YWUxZDlmNGM4Li40ZGE4ZmExYmU3ZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291
cmNlLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9S
ZXNvdXJjZS5qcwpAQCAtMTU0LDggKzE1NCw4IEBAIFdJLlJlc291cmNlID0gY2xhc3MgUmVzb3Vy
Y2UgZXh0ZW5kcyBXSS5Tb3VyY2VDb2RlCiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmco
IlhIUiIpOwogICAgICAgICBjYXNlIFdJLlJlc291cmNlLlR5cGUuRmV0Y2g6CiAgICAgICAgICAg
ICBpZiAocGx1cmFsKQotICAgICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiRmV0Y2hl
cyIpOwotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJGZXRjaCIpOworICAgICAgICAg
ICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiRmV0Y2hlcyIsICIiLCAiUmVzb3VyY2VzIGxvYWRl
ZCB2aWEgZmV0Y2ggbWV0aG9kIik7CisgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkZl
dGNoIiwgIiIsICJSZXNvdXJjZXMgbG9hZGVkIHZpYSBmZXRjaCBtZXRob2QiKTsKICAgICAgICAg
Y2FzZSBXSS5SZXNvdXJjZS5UeXBlLlBpbmc6CiAgICAgICAgICAgICBpZiAocGx1cmFsKQogICAg
ICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiUGluZ3MiKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NvbXB1dGVkU3R5bGVEZXRh
aWxzU2lkZWJhclBhbmVsLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
Vmlld3MvQ29tcHV0ZWRTdHlsZURldGFpbHNTaWRlYmFyUGFuZWwuanMKaW5kZXggZjUzYTE2OTBl
Y2UuLjBjMGRmOTgwYTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9Db21wdXRlZFN0eWxlRGV0YWlsc1NpZGViYXJQYW5lbC5qcworKysgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Db21wdXRlZFN0eWxlRGV0
YWlsc1NpZGViYXJQYW5lbC5qcwpAQCAtMjcsNiArMjcsNiBAQCBXSS5Db21wdXRlZFN0eWxlRGV0
YWlsc1NpZGViYXJQYW5lbCA9IGNsYXNzIENvbXB1dGVkU3R5bGVEZXRhaWxzU2lkZWJhclBhbmVs
IGV4dAogewogICAgIGNvbnN0cnVjdG9yKCkKICAgICB7Ci0gICAgICAgIHN1cGVyKCJzdHlsZS1j
b21wdXRlZCIsIFdJLlVJU3RyaW5nKCJDb21wdXRlZCIpLCBXSS5Db21wdXRlZFN0eWxlRGV0YWls
c1BhbmVsKTsKKyAgICAgICAgc3VwZXIoInN0eWxlLWNvbXB1dGVkIiwgV0kuVUlTdHJpbmcoIkNv
bXB1dGVkIiwgIkNvbXB1dGVkIEAgVGFiIG5hbWUiLCAiVGFiIG5hbWUgZm9yIGNvbXB1dGVkIHN0
eWxlcyIpLCBXSS5Db21wdXRlZFN0eWxlRGV0YWlsc1BhbmVsKTsKICAgICB9CiB9OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ29udGV4dE1l
bnVVdGlsaXRpZXMuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3
cy9Db250ZXh0TWVudVV0aWxpdGllcy5qcwppbmRleCBkMTdkOGI0ZTU1My4uMzU4NmZhYmVmNzYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0Nv
bnRleHRNZW51VXRpbGl0aWVzLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL0NvbnRleHRNZW51VXRpbGl0aWVzLmpzCkBAIC0yMTQsMTAgKzIxNCwxMCBA
QCBXSS5hcHBlbmRDb250ZXh0TWVudUl0ZW1zRm9yRE9NTm9kZSA9IGZ1bmN0aW9uKGNvbnRleHRN
ZW51LCBkb21Ob2RlLCBvcHRpb25zID0gewogICAgIGNvbnRleHRNZW51LmFwcGVuZFNlcGFyYXRv
cigpOwogCiAgICAgaWYgKCFvcHRpb25zLmV4Y2x1ZGVMb2dFbGVtZW50ICYmICFkb21Ob2RlLmlz
SW5Vc2VyQWdlbnRTaGFkb3dUcmVlKCkgJiYgIWRvbU5vZGUuaXNQc2V1ZG9FbGVtZW50KCkpIHsK
LSAgICAgICAgbGV0IGxhYmVsID0gaXNFbGVtZW50ID8gV0kuVUlTdHJpbmcoIkxvZyBFbGVtZW50
IikgOiBXSS5VSVN0cmluZygiTG9nIE5vZGUiKTsKKyAgICAgICAgbGV0IGxhYmVsID0gaXNFbGVt
ZW50ID8gV0kuVUlTdHJpbmcoIkxvZyBFbGVtZW50IiwgIiIsICJMb2cgRE9NIGVsZW1lbnQgdG8g
Q29uc29sZSIpIDogV0kuVUlTdHJpbmcoIkxvZyBOb2RlIiwgIiIsICJMb2cgRE9NIG5vZGUgdG8g
Q29uc29sZSIpOwogICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKGxhYmVsLCAoKSA9PiB7
CiAgICAgICAgICAgICBXSS5SZW1vdGVPYmplY3QucmVzb2x2ZU5vZGUoZG9tTm9kZSwgV0kuUnVu
dGltZU1hbmFnZXIuQ29uc29sZU9iamVjdEdyb3VwKS50aGVuKChyZW1vdGVPYmplY3QpID0+IHsK
LSAgICAgICAgICAgICAgICBsZXQgdGV4dCA9IGlzRWxlbWVudCA/IFdJLlVJU3RyaW5nKCJTZWxl
Y3RlZCBFbGVtZW50IikgOiBXSS5VSVN0cmluZygiU2VsZWN0ZWQgTm9kZSIpOworICAgICAgICAg
ICAgICAgIGxldCB0ZXh0ID0gaXNFbGVtZW50ID8gV0kuVUlTdHJpbmcoIlNlbGVjdGVkIEVsZW1l
bnQiLCAiIiwgIlNlbGVjdGVkIERPTSBlbGVtZW50IikgOiBXSS5VSVN0cmluZygiU2VsZWN0ZWQg
Tm9kZSIsICIiLCAiU2VsZWN0ZWQgRE9NIG5vZGUiKTsKICAgICAgICAgICAgICAgICBjb25zdCBh
ZGRTcGVjaWFsVXNlckxvZ0NsYXNzID0gdHJ1ZTsKICAgICAgICAgICAgICAgICBXSS5jb25zb2xl
TG9nVmlld0NvbnRyb2xsZXIuYXBwZW5kSW1tZWRpYXRlRXhlY3V0aW9uV2l0aFJlc3VsdCh0ZXh0
LCByZW1vdGVPYmplY3QsIGFkZFNwZWNpYWxVc2VyTG9nQ2xhc3MpOwogICAgICAgICAgICAgfSk7
CkBAIC0yMjUsMTkgKzIyNSwxOSBAQCBXSS5hcHBlbmRDb250ZXh0TWVudUl0ZW1zRm9yRE9NTm9k
ZSA9IGZ1bmN0aW9uKGNvbnRleHRNZW51LCBkb21Ob2RlLCBvcHRpb25zID0gewogICAgIH0KIAog
ICAgIGlmICghb3B0aW9ucy5leGNsdWRlUmV2ZWFsRWxlbWVudCAmJiB3aW5kb3cuRE9NQWdlbnQg
JiYgZG9tTm9kZS5vd25lckRvY3VtZW50KSB7Ci0gICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0
ZW0oV0kuVUlTdHJpbmcoIlJldmVhbCBpbiBET00gVHJlZSIpLCAoKSA9PiB7CisgICAgICAgIGNv
bnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlJldmVhbCBpbiBET00gVHJlZSIsICIi
LCAiT3BlbiBFbGVtZW50cyB0YWIgYW5kIHNlbGVjdCB0aGlzIG5vZGUgaW4gRE9NIHRyZWUiKSwg
KCkgPT4gewogICAgICAgICAgICAgV0kuZG9tTWFuYWdlci5pbnNwZWN0RWxlbWVudChkb21Ob2Rl
LmlkKTsKICAgICAgICAgfSk7CiAgICAgfQogCiAgICAgaWYgKCFvcHRpb25zLmV4Y2x1ZGVSZXZl
YWxMYXllciAmJiB3aW5kb3cuTGF5ZXJUcmVlQWdlbnQgJiYgZG9tTm9kZS5wYXJlbnROb2RlKSB7
Ci0gICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlJldmVhbCBpbiBM
YXllcnMgVGFiIiksICgpID0+IHsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5V
SVN0cmluZygiUmV2ZWFsIGluIExheWVycyBUYWIiLCAiIiwgIk9wZW4gTGF5ZXJzIHRhYiBhbmQg
c2VsZWN0IGxheWVycyBjb3JyZXNwb25kaW5nIHRvIHRoaXMgbm9kZSIpLCAoKSA9PiB7CiAgICAg
ICAgICAgICBXSS5zaG93TGF5ZXJzVGFiKHtub2RlVG9TZWxlY3Q6IGRvbU5vZGV9KTsKICAgICAg
ICAgfSk7CiAgICAgfQogCiAgICAgaWYgKHdpbmRvdy5QYWdlQWdlbnQpIHsKLSAgICAgICAgY29u
dGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiQ2FwdHVyZSBTY3JlZW5zaG90IiksICgp
ID0+IHsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiQ2FwdHVy
ZSBTY3JlZW5zaG90IiwgIiIsICJDYXB0dXJlIFNjcmVlbnNob3Qgb2YgdGhlIHNlbGVjdGVkIERP
TSBub2RlIiksICgpID0+IHsKICAgICAgICAgICAgIFBhZ2VBZ2VudC5zbmFwc2hvdE5vZGUoZG9t
Tm9kZS5pZCwgKGVycm9yLCBkYXRhVVJMKSA9PiB7CiAgICAgICAgICAgICAgICAgaWYgKGVycm9y
KSB7CiAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRhcmdldCA9IFdJLm1haW5UYXJnZXQ7CkBA
IC0yNzAsNyArMjcwLDcgQEAgV0kuYXBwZW5kQ29udGV4dE1lbnVJdGVtc0ZvckRPTU5vZGUgPSBm
dW5jdGlvbihjb250ZXh0TWVudSwgZG9tTm9kZSwgb3B0aW9ucyA9IHsKICAgICB9CiAKICAgICBp
ZiAoaXNFbGVtZW50KSB7Ci0gICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJp
bmcoIlNjcm9sbCBJbnRvIFZpZXciKSwgKCkgPT4geworICAgICAgICBjb250ZXh0TWVudS5hcHBl
bmRJdGVtKFdJLlVJU3RyaW5nKCJTY3JvbGwgSW50byBWaWV3IiwgIiIsICJTY3JvbGwgc2VsZWN0
ZWQgRE9NIG5vZGUgaW50byB2aWV3IG9uIHRoZSBpbnNwZWN0ZWQgd2ViIHBhZ2UiKSwgKCkgPT4g
ewogICAgICAgICAgICAgZG9tTm9kZS5zY3JvbGxJbnRvVmlldygpOwogICAgICAgICB9KTsKICAg
ICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3
cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMKaW5kZXggNWNlZjQw
OTQ4OGMuLjE2ODRhNDIwYzMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMKKysrIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NQnJlYWtwb2ludFRyZWVFbGVt
ZW50LmpzCkBAIC01NCwxMSArNTQsMTEgQEAgV0kuRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50ID0g
Y2xhc3MgRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50IGV4dGVuZHMgV0kuR2VuZXJhbFQKICAgICB7
CiAgICAgICAgIHN3aXRjaCAodHlwZSkgewogICAgICAgICBjYXNlIFdJLkRPTUJyZWFrcG9pbnQu
VHlwZS5TdWJ0cmVlTW9kaWZpZWQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlN1
YnRyZWUgTW9kaWZpZWQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiU3VidHJl
ZSBNb2RpZmllZCIsICIiLCBgQSBzdWJtZW51IG9mICJCcmVhayBPbi4uLiJgKTsKICAgICAgICAg
Y2FzZSBXSS5ET01CcmVha3BvaW50LlR5cGUuQXR0cmlidXRlTW9kaWZpZWQ6Ci0gICAgICAgICAg
ICByZXR1cm4gV0kuVUlTdHJpbmcoIkF0dHJpYnV0ZSBNb2RpZmllZCIpOworICAgICAgICAgICAg
cmV0dXJuIFdJLlVJU3RyaW5nKCJBdHRyaWJ1dGUgTW9kaWZpZWQiLCAiIiwgYEEgc3VibWVudSBv
ZiAiQnJlYWsgT24uLi4iYCk7CiAgICAgICAgIGNhc2UgV0kuRE9NQnJlYWtwb2ludC5UeXBlLk5v
ZGVSZW1vdmVkOgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJOb2RlIFJlbW92ZWQi
KTsKKyAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTm9kZSBSZW1vdmVkIiwgIiIsIGBB
IHN1Ym1lbnUgb2YgIkJyZWFrIE9uLi4uImApOwogICAgICAgICBkZWZhdWx0OgogICAgICAgICAg
ICAgY29uc29sZS5lcnJvcigiVW5leHBlY3RlZCBET00gYnJlYWtwb2ludCB0eXBlOiAiICsgdHlw
ZSk7CiAgICAgICAgICAgICByZXR1cm4gbnVsbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVFbGVtZW50LmpzIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZUVsZW1lbnQuanMKaW5kZXgg
MGExZjgyNWJhZDAuLjYxMjA5ZjJjZGRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5qcworKysgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5qcwpAQCAtNzYw
LDE0ICs3NjAsMTQgQEAgV0kuRE9NVHJlZUVsZW1lbnQgPSBjbGFzcyBET01UcmVlRWxlbWVudCBl
eHRlbmRzIFdJLlRyZWVFbGVtZW50CiAgICAgICAgICAgICB0aGlzLnJlcHJlc2VudGVkT2JqZWN0
LnJlbW92ZUF0dHJpYnV0ZShhdHRyaWJ1dGVOYW1lKTsKICAgICAgICAgfSwgIWF0dHJpYnV0ZSB8
fCAhaXNOb25TaGFkb3dFZGl0YWJsZSk7CiAKLSAgICAgICAgc3ViTWVudXMuZWRpdC5hcHBlbmRJ
dGVtKFdJLlVJU3RyaW5nKCJUYWciKSwgKCkgPT4geworICAgICAgICBzdWJNZW51cy5lZGl0LmFw
cGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlRhZyIsICIiLCAiQSBjb250ZXh0IG1lbnUgdG8gZWRpdCBh
IHRhZyBuYW1lIiksICgpID0+IHsKICAgICAgICAgICAgIHRoaXMuX3N0YXJ0RWRpdGluZ1RhZ05h
bWUoKTsKICAgICAgICAgfSwgIWlzTm9uU2hhZG93RWRpdGFibGUpOwogCiAgICAgICAgIGNvbnRl
eHRNZW51LmFwcGVuZFNlcGFyYXRvcigpOwogCiAgICAgICAgIGlmIChXSS5jc3NNYW5hZ2VyLmNh
bkZvcmNlUHNldWRvQ2xhc3NlcygpKSB7Ci0gICAgICAgICAgICBsZXQgcHNldWRvU3ViTWVudSA9
IGNvbnRleHRNZW51LmFwcGVuZFN1Yk1lbnVJdGVtKFdJLlVJU3RyaW5nKCJGb3JjZWQgUHNldWRv
LUNsYXNzZXMiKSk7CisgICAgICAgICAgICBsZXQgcHNldWRvU3ViTWVudSA9IGNvbnRleHRNZW51
LmFwcGVuZFN1Yk1lbnVJdGVtKFdJLlVJU3RyaW5nKCJGb3JjZWQgUHNldWRvLUNsYXNzZXMiLCAi
IiwgIkEgY29udGV4dCBtZW51IHRvIGZvcmNlIChvdmVycmlkZSkgcHNldWRvLWNsYXNzZXMiKSk7
CiAKICAgICAgICAgICAgIGxldCBlbmFibGVkUHNldWRvQ2xhc3NlcyA9IHRoaXMucmVwcmVzZW50
ZWRPYmplY3QuZW5hYmxlZFBzZXVkb0NsYXNzZXM7CiAgICAgICAgICAgICBXSS5DU1NNYW5hZ2Vy
LkZvcmNlYWJsZVBzZXVkb0NsYXNzZXMuZm9yRWFjaCgocHNldWRvQ2xhc3MpID0+IHsKQEAgLTc5
OSw4ICs3OTksOCBAQCBXSS5ET01UcmVlRWxlbWVudCA9IGNsYXNzIERPTVRyZWVFbGVtZW50IGV4
dGVuZHMgV0kuVHJlZUVsZW1lbnQKICAgICAgICAgbGV0IGlzRWRpdGFibGVOb2RlID0gbm9kZS5u
b2RlVHlwZSgpID09PSBOb2RlLkVMRU1FTlRfTk9ERSAmJiB0aGlzLmVkaXRhYmxlOwogICAgICAg
ICBsZXQgZm9yYmlkZGVuQ2xvc2luZ1RhZyA9IFdJLkRPTVRyZWVFbGVtZW50LkZvcmJpZGRlbkNs
b3NpbmdUYWdFbGVtZW50cy5oYXMobm9kZS5ub2RlTmFtZUluQ29ycmVjdENhc2UoKSk7CiAgICAg
ICAgIHN1Yk1lbnVzLmFkZC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJDaGlsZCIpLCB0aGlzLl9h
ZGRIVE1MLmJpbmQodGhpcyksIGZvcmJpZGRlbkNsb3NpbmdUYWcgfHwgIWlzRWRpdGFibGVOb2Rl
KTsKLSAgICAgICAgc3ViTWVudXMuYWRkLmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlByZXZpb3Vz
IFNpYmxpbmciKSwgdGhpcy5fYWRkUHJldmlvdXNTaWJsaW5nLmJpbmQodGhpcyksICFpc0VkaXRh
YmxlTm9kZSk7Ci0gICAgICAgIHN1Yk1lbnVzLmFkZC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJO
ZXh0IFNpYmxpbmciKSwgdGhpcy5fYWRkTmV4dFNpYmxpbmcuYmluZCh0aGlzKSwgIWlzRWRpdGFi
bGVOb2RlKTsKKyAgICAgICAgc3ViTWVudXMuYWRkLmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlBy
ZXZpb3VzIFNpYmxpbmciLCAiIiwgIkNvbnRleHQgbWVudSB0byBhZGQgYW4gZWxlbWVudCBiZWZv
cmUgdGhlIHNlbGVjdGVkIGVsZW1lbnQiKSwgdGhpcy5fYWRkUHJldmlvdXNTaWJsaW5nLmJpbmQo
dGhpcyksICFpc0VkaXRhYmxlTm9kZSk7CisgICAgICAgIHN1Yk1lbnVzLmFkZC5hcHBlbmRJdGVt
KFdJLlVJU3RyaW5nKCJOZXh0IFNpYmxpbmciLCAiIiwgIkNvbnRleHQgbWVudSB0byBhZGQgYW4g
ZWxlbWVudCBhZnRlciB0aGUgc2VsZWN0ZWQgZWxlbWVudCIpLCB0aGlzLl9hZGROZXh0U2libGlu
Zy5iaW5kKHRoaXMpLCAhaXNFZGl0YWJsZU5vZGUpOwogCiAgICAgICAgIHN1Yk1lbnVzLmVkaXQu
YXBwZW5kSXRlbShXSS5VSVN0cmluZygiSFRNTCIpLCB0aGlzLl9lZGl0QXNIVE1MLmJpbmQodGhp
cyksICF0aGlzLmVkaXRhYmxlKTsKICAgICAgICAgc3ViTWVudXMuY29weS5hcHBlbmRJdGVtKFdJ
LlVJU3RyaW5nKCJIVE1MIiksIHRoaXMuX2NvcHlIVE1MLmJpbmQodGhpcyksIG5vZGUuaXNQc2V1
ZG9FbGVtZW50KCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvRGVidWdnZXJTaWRlYmFyUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9EZWJ1Z2dlclNpZGViYXJQYW5lbC5qcwppbmRleCA2ZjQ5
OTQyYzk0OC4uZWU2MTU1N2RlYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL0RlYnVnZ2VyU2lkZWJhclBhbmVsLmpzCisrKyBiL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RlYnVnZ2VyU2lkZWJhclBhbmVsLmpz
CkBAIC00NzEsMTAgKzQ3MSwxMCBAQCBXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbCA9IGNsYXNzIERl
YnVnZ2VyU2lkZWJhclBhbmVsIGV4dGVuZHMgV0kuTmF2aWdhdGlvblNpZGViYQogCiAgICAgICAg
IGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIuYWxsRXhjZXB0aW9uc0JyZWFr
cG9pbnQpIHsKICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NOYW1lID0gV0kuRGVidWdnZXJTaWRl
YmFyUGFuZWwuRXhjZXB0aW9uSWNvblN0eWxlQ2xhc3NOYW1lOwotICAgICAgICAgICAgb3B0aW9u
cy50aXRsZSA9IFdJLlVJU3RyaW5nKCJBbGwgRXhjZXB0aW9ucyIpOworICAgICAgICAgICAgb3B0
aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5nKCJBbGwgRXhjZXB0aW9ucyIsICIiLCAiQnJlYWsgKHBh
dXNlKSBvbiBhbGwgZXhjZXB0aW9ucyIpOwogICAgICAgICB9IGVsc2UgaWYgKGJyZWFrcG9pbnQg
PT09IFdJLmRlYnVnZ2VyTWFuYWdlci51bmNhdWdodEV4Y2VwdGlvbnNCcmVha3BvaW50KSB7CiAg
ICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9IFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsLkV4
Y2VwdGlvbkljb25TdHlsZUNsYXNzTmFtZTsKLSAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBX
SS5VSVN0cmluZygiVW5jYXVnaHQgRXhjZXB0aW9ucyIpOworICAgICAgICAgICAgb3B0aW9ucy50
aXRsZSA9IFdJLlVJU3RyaW5nKCJVbmNhdWdodCBFeGNlcHRpb25zIiwgIiIsICJCcmVhayAocGF1
c2UpIG9uIGV2ZXJ5IHVuY2F1Z2h0ICh1bmhhbmRsZWQpIGV4Y2VwdGlvbnMiKTsKICAgICAgICAg
fSBlbHNlIGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIuYXNzZXJ0aW9uRmFp
bHVyZXNCcmVha3BvaW50KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9IFdJLkRl
YnVnZ2VyU2lkZWJhclBhbmVsLkFzc2VydGlvbkljb25TdHlsZUNsYXNzTmFtZTsKICAgICAgICAg
ICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiQXNzZXJ0aW9uIEZhaWx1cmVzIik7CkBA
IC00OTYsNyArNDk2LDcgQEAgV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwgPSBjbGFzcyBEZWJ1Z2dl
clNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5hdmlnYXRpb25TaWRlYmEKIAogICAgICAgICAgICAg
aWYgKGJyZWFrcG9pbnQgPT09IFdJLmRvbURlYnVnZ2VyTWFuYWdlci5hbGxSZXF1ZXN0c0JyZWFr
cG9pbnQpIHsKICAgICAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9IFdJLkRlYnVnZ2Vy
U2lkZWJhclBhbmVsLkFzc2VydGlvbkljb25TdHlsZUNsYXNzTmFtZTsKLSAgICAgICAgICAgICAg
ICBvcHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIpOworICAgICAgICAg
ICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiQWxsIFJlcXVlc3RzIiwgIiIsIGBB
IHN1Ym1lbnUgb2YgIkJyZWFrIG9uImApOwogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2Ug
ewogICAgICAgICAgICAgbGV0IHNvdXJjZUNvZGUgPSBicmVha3BvaW50LnNvdXJjZUNvZGVMb2Nh
dGlvbiAmJiBicmVha3BvaW50LnNvdXJjZUNvZGVMb2NhdGlvbi5kaXNwbGF5U291cmNlQ29kZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0xh
eWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsLmpzCmluZGV4IDJi
NjUxM2E3ZmQyLi5jMWFkNmZhYTRjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbC5qcworKysg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRh
aWxzU2lkZWJhclBhbmVsLmpzCkBAIC0xMzYsNyArMTM2LDcgQEAgV0kuTGF5ZXJUcmVlRGV0YWls
c1NpZGViYXJQYW5lbCA9IGNsYXNzIExheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwgZXh0ZW5k
cyBXSS4KICAgICAgICAgY29sdW1ucy5uYW1lLnRpdGxlID0gV0kuVUlTdHJpbmcoIk5vZGUiKTsK
ICAgICAgICAgY29sdW1ucy5uYW1lLnNvcnRhYmxlID0gZmFsc2U7CiAKLSAgICAgICAgY29sdW1u
cy5wYWludENvdW50LnRpdGxlID0gV0kuVUlTdHJpbmcoIlBhaW50cyIpOworICAgICAgICBjb2x1
bW5zLnBhaW50Q291bnQudGl0bGUgPSBXSS5VSVN0cmluZygiUGFpbnRzIiwgIlBhaW50cyBAIENv
bHVtbiB0aXRsZSIsICJBIGNvdW50IG9mIGhvdyBtYW55IHRpbWVzIGFuIGVsZW1lbnQgd2FzIHBh
aW50ZWQgKHJlbmRlcmVkKSIpOwogICAgICAgICBjb2x1bW5zLnBhaW50Q291bnQuc29ydGFibGUg
PSB0cnVlOwogICAgICAgICBjb2x1bW5zLnBhaW50Q291bnQuYWxpZ25lZCA9ICJyaWdodCI7CiAg
ICAgICAgIGNvbHVtbnMucGFpbnRDb3VudC53aWR0aCA9ICI3MHB4IjsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL05ldHdvcmtUYWJsZUNvbnRl
bnRWaWV3LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTmV0
d29ya1RhYmxlQ29udGVudFZpZXcuanMKaW5kZXggMzZiN2QwZTZmN2IuLjdkMmUyZWU5Njg2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9OZXR3
b3JrVGFibGVDb250ZW50Vmlldy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9OZXR3b3JrVGFibGVDb250ZW50Vmlldy5qcwpAQCAtMTA2NCw3ICsxMDY0
LDcgQEAgV0kuTmV0d29ya1RhYmxlQ29udGVudFZpZXcgPSBjbGFzcyBOZXR3b3JrVGFibGVDb250
ZW50VmlldyBleHRlbmRzIFdJLkNvbnRlbnRWaWUKICAgICAgICAgICAgIGFsaWduOiAicmlnaHQi
LAogICAgICAgICB9KTsKIAotICAgICAgICB0aGlzLl90cmFuc2ZlclNpemVDb2x1bW4gPSBuZXcg
V0kuVGFibGVDb2x1bW4oInRyYW5zZmVyU2l6ZSIsIFdJLlVJU3RyaW5nKCJUcmFuc2ZlciBTaXpl
IiksIHsKKyAgICAgICAgdGhpcy5fdHJhbnNmZXJTaXplQ29sdW1uID0gbmV3IFdJLlRhYmxlQ29s
dW1uKCJ0cmFuc2ZlclNpemUiLCBXSS5VSVN0cmluZygiVHJhbnNmZXIgU2l6ZSIsICIiLCAiQW1v
dW50IG9mIGRhdGEgc2VudCBvdmVyIHRoZSBuZXR3b3JrIiksIHsKICAgICAgICAgICAgIG1pbldp
ZHRoOiAxMDAsCiAgICAgICAgICAgICBtYXhXaWR0aDogMTUwLAogICAgICAgICAgICAgaW5pdGlh
bFdpZHRoOiAxMDAsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9SdWxlc1N0eWxlRGV0YWlsc1NpZGViYXJQYW5lbC5qcyBiL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1J1bGVzU3R5bGVEZXRhaWxzU2lkZWJhclBh
bmVsLmpzCmluZGV4IDNkZGYzNmZiYWE0Li43MGRhMTVhZWJmNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUnVsZXNTdHlsZURldGFpbHNTaWRl
YmFyUGFuZWwuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvUnVsZXNTdHlsZURldGFpbHNTaWRlYmFyUGFuZWwuanMKQEAgLTI3LDYgKzI3LDYgQEAgV0ku
UnVsZXNTdHlsZURldGFpbHNTaWRlYmFyUGFuZWwgPSBjbGFzcyBSdWxlc1N0eWxlRGV0YWlsc1Np
ZGViYXJQYW5lbCBleHRlbmRzIFcKIHsKICAgICBjb25zdHJ1Y3RvcigpCiAgICAgewotICAgICAg
ICBzdXBlcigic3R5bGUtcnVsZXMiLCBXSS5VSVN0cmluZygiU3R5bGVzIiksIFdJLlNwcmVhZHNo
ZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbCk7CisgICAgICAgIHN1cGVyKCJzdHlsZS1ydWxlcyIs
IFdJLlVJU3RyaW5nKCJTdHlsZXMiLCAiIiwgIlRhYiBuYW1lIGZvciBDU1Mgc3R5bGUgcnVsZXMu
IiksIFdJLlNwcmVhZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbCk7CiAgICAgfQogfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJj
ZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvVmlld3MvU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMKaW5kZXggZjBl
NTdiMjc1ZjAuLjc2MjM1OGE1NzE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbC5qcworKysg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VzTmF2aWdh
dGlvblNpZGViYXJQYW5lbC5qcwpAQCAtMTMyMiw3ICsxMzIyLDcgQEAgV0kuU291cmNlc05hdmln
YXRpb25TaWRlYmFyUGFuZWwgPSBjbGFzcyBTb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCBl
eHRlbmRzIFcKICAgICAgICAgaWYgKEluc3BlY3RvckJhY2tlbmQuZG9tYWlucy5EZWJ1Z2dlci5z
ZXRQYXVzZU9uQXNzZXJ0aW9ucykgewogICAgICAgICAgICAgbGV0IGFzc2VydGlvbkZhaWx1cmVz
QnJlYWtwb2ludFNob3duID0gV0kuc2V0dGluZ3Muc2hvd0Fzc2VydGlvbkZhaWx1cmVzQnJlYWtw
b2ludC52YWx1ZTsKIAotICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2tib3hJdGVt
KFdJLlVJU3RyaW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiKSwgKCkgPT4geworICAgICAgICAgICAg
Y29udGV4dE1lbnUuYXBwZW5kQ2hlY2tib3hJdGVtKFdJLlVJU3RyaW5nKCJBc3NlcnRpb24gRmFp
bHVyZXMiLCAiIiwgIkJyZWFrIG9uIGFzc2VydGlvbiAoY29uc29sZS5hc3NlcnQpIGZhaWx1cmVz
IiksICgpID0+IHsKICAgICAgICAgICAgICAgICBpZiAoYXNzZXJ0aW9uRmFpbHVyZXNCcmVha3Bv
aW50U2hvd24pCiAgICAgICAgICAgICAgICAgICAgIFdJLmRlYnVnZ2VyTWFuYWdlci5yZW1vdmVC
cmVha3BvaW50KFdJLmRlYnVnZ2VyTWFuYWdlci5hc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnQp
OwogICAgICAgICAgICAgICAgIGVsc2UgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uU2Vj
dGlvbi5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVh
ZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24uanMKaW5kZXggZWQ0MDhjZTIxZmQuLjM3
YjM1MWVhMjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9TcHJlYWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9uLmpzCisrKyBiL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5
bGVEZWNsYXJhdGlvblNlY3Rpb24uanMKQEAgLTMxNCw3ICszMTQsNyBAQCBXSS5TcHJlYWRzaGVl
dENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9uID0gY2xhc3MgU3ByZWFkc2hlZXRDU1NTdHlsZURl
Y2xhcmF0aW9uUwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBXSS5DU1NTdHls
ZURlY2xhcmF0aW9uLlR5cGUuSW5saW5lOgotICAgICAgICAgICAgdGhpcy5fc2VsZWN0b3JFbGVt
ZW50LnRleHRDb250ZW50ID0gV0kuVUlTdHJpbmcoIlN0eWxlIEF0dHJpYnV0ZSIpOworICAgICAg
ICAgICAgdGhpcy5fc2VsZWN0b3JFbGVtZW50LnRleHRDb250ZW50ID0gV0kuVUlTdHJpbmcoIlN0
eWxlIEF0dHJpYnV0ZSIsICIiLCAiQ1NTIHByb3BlcnRpZXMgZGVmaW5lZCBpbiBzdHlsZSBhdHRy
aWJ1dGUuIik7CiAgICAgICAgICAgICB0aGlzLl9zZWxlY3RvckVsZW1lbnQuY2xhc3NMaXN0LmFk
ZCgic3R5bGUtYXR0cmlidXRlIik7CiAgICAgICAgICAgICBicmVhazsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRSdWxl
c1N0eWxlRGV0YWlsc1BhbmVsLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWlsc1BhbmVsLmpzCmluZGV4IDNmOTlh
YTA5MTMyLi45MzVmNTc1YmI5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWlsc1BhbmVsLmpzCisr
KyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0
UnVsZXNTdHlsZURldGFpbHNQYW5lbC5qcwpAQCAtMjQ4LDcgKzI0OCw3IEBAIFdJLlNwcmVhZHNo
ZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbCA9IGNsYXNzIFNwcmVhZHNoZWV0UnVsZXNTdHlsZURl
dGFpbHNQYW5lbCBlCiAKICAgICAgICAgZm9yIChsZXQgc3R5bGUgb2YgdGhpcy5ub2RlU3R5bGVz
LnVuaXF1ZU9yZGVyZWRTdHlsZXMpIHsKICAgICAgICAgICAgIGlmIChzdHlsZS5pbmhlcml0ZWQg
JiYgKCFwcmV2aW91c1N0eWxlIHx8IHByZXZpb3VzU3R5bGUubm9kZSAhPT0gc3R5bGUubm9kZSkp
Ci0gICAgICAgICAgICAgICAgY3JlYXRlSGVhZGVyKFdJLlVJU3RyaW5nKCJJbmhlcml0ZWQgRnJv
bSIpLCBzdHlsZS5ub2RlKTsKKyAgICAgICAgICAgICAgICBjcmVhdGVIZWFkZXIoV0kuVUlTdHJp
bmcoIkluaGVyaXRlZCBGcm9tIiwgIiIsICJBIHNlY3Rpb24gb2YgQ1NTIHJ1bGVzIGluaGVyaXRl
ZCBmcm9tIGFub3RoZXIgQ1NTIHJ1bGUiKSwgc3R5bGUubm9kZSk7CiAKICAgICAgICAgICAgIGNy
ZWF0ZVNlY3Rpb24oc3R5bGUpOwogICAgICAgICB9Cg==
</data>
<flag name="commit-queue"
          id="379777"
          type_id="3"
          status="-"
          setter="nvasilyev"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363278</attachid>
            <date>2019-02-28 16:58:27 -0800</date>
            <delta_ts>2019-04-10 13:21:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>41470</size>
            <attacher name="Nikita Vasilyev">nvasilyev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IGYwMWNkZTI3MGEzLi41Y2M4NjJhMGQ5MiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTEgQEAKKzIwMTktMDItMjggIE5pa2l0
YSBWYXNpbHlldiAgPG52YXNpbHlldkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogUHJvdmlkZSBVSVN0cmluZyBkZXNjcmlwdGlvbnMgdG8gaW1wcm92ZSBsb2NhbGl6YXRpb25z
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUxMzIK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ4NDU3ODE3PgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2Nh
bGl6ZWRTdHJpbmdzLmpzOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvTW9kZWxzL0xheW91dFRp
bWVsaW5lUmVjb3JkLmpzOgorICAgICAgICAoV0kuTGF5b3V0VGltZWxpbmVSZWNvcmQuZGlzcGxh
eU5hbWVGb3JFdmVudFR5cGUpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvTW9kZWxzL1JlbmRl
cmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuanM6CisgICAgICAgIChXSS5SZW5kZXJpbmdGcmFtZVRp
bWVsaW5lUmVjb3JkLmRpc3BsYXlOYW1lRm9yVGFza1R5cGUpOgorICAgICAgICAqIFVzZXJJbnRl
cmZhY2UvTW9kZWxzL1Jlc291cmNlLmpzOgorICAgICAgICAoV0kuUmVzb3VyY2UuZGlzcGxheU5h
bWVGb3JUeXBlKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0NQVVRpbWVsaW5lVmll
dy5qczoKKyAgICAgICAgKFdJLkNQVVRpbWVsaW5lVmlldy5kaXNwbGF5TmFtZUZvclNhbXBsZVR5
cGUpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvQ29tcHV0ZWRTdHlsZURldGFpbHNT
aWRlYmFyUGFuZWwuanM6CisgICAgICAgIChXSS5Db21wdXRlZFN0eWxlRGV0YWlsc1NpZGViYXJQ
YW5lbCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGll
cy5qczoKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0RPTUJyZWFrcG9pbnRUcmVlRWxl
bWVudC5qczoKKyAgICAgICAgKFdJLkRPTUJyZWFrcG9pbnRUcmVlRWxlbWVudC5kaXNwbGF5TmFt
ZUZvclR5cGUpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZUVsZW1lbnQu
anM6CisgICAgICAgIChXSS5ET01UcmVlRWxlbWVudC5wcm90b3R5cGUuX3BvcHVsYXRlVGFnQ29u
dGV4dE1lbnUpOgorICAgICAgICAoV0kuRE9NVHJlZUVsZW1lbnQucHJvdG90eXBlLl9wb3B1bGF0
ZU5vZGVDb250ZXh0TWVudSk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9EZWJ1Z2dl
clNpZGViYXJQYW5lbC5qczoKKyAgICAgICAgKFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsLnByb3Rv
dHlwZS5fYWRkQnJlYWtwb2ludCk6CisgICAgICAgIChXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbC5w
cm90b3R5cGUuX2hhbmRsZUNyZWF0ZUJyZWFrcG9pbnRDbGlja2VkKToKKyAgICAgICAgKFdJLkRl
YnVnZ2VyU2lkZWJhclBhbmVsKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0xheWVy
VHJlZURldGFpbHNTaWRlYmFyUGFuZWwuanM6CisgICAgICAgIChXSS5MYXllclRyZWVEZXRhaWxz
U2lkZWJhclBhbmVsLnByb3RvdHlwZS5fYnVpbGREYXRhR3JpZFNlY3Rpb24pOgorICAgICAgICAq
IFVzZXJJbnRlcmZhY2UvVmlld3MvTmV0d29ya1RhYmxlQ29udGVudFZpZXcuanM6CisgICAgICAg
IChXSS5OZXR3b3JrVGFibGVDb250ZW50Vmlldy5wcm90b3R5cGUuaW5pdGlhbExheW91dCk6Cisg
ICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9PYmplY3RUcmVlQmFzZVRyZWVFbGVtZW50Lmpz
OgorICAgICAgICAiSW50byIgc2hvdWxkbid0IGJlIGNhcGl0YWxpemVkLgorCisgICAgICAgIChX
SS5PYmplY3RUcmVlQmFzZVRyZWVFbGVtZW50LnByb3RvdHlwZS5fYXBwZW5kTWVudXNJdGVtc0Zv
ck9iamVjdCk6CisgICAgICAgIChXSS5PYmplY3RUcmVlQmFzZVRyZWVFbGVtZW50KToKKyAgICAg
ICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1J1bGVzU3R5bGVEZXRhaWxzU2lkZWJhclBhbmVsLmpz
OgorICAgICAgICAoV0kuUnVsZXNTdHlsZURldGFpbHNTaWRlYmFyUGFuZWwpOgorICAgICAgICAq
IFVzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanM6Cisg
ICAgICAgIChXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbC5wcm90b3R5cGUuX2FkZEJy
ZWFrcG9pbnQpOgorICAgICAgICAoV0kuU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwucHJv
dG90eXBlLl9oYW5kbGVDcmVhdGVCcmVha3BvaW50Q2xpY2tlZCk6CisgICAgICAgICogVXNlcklu
dGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9uLmpzOgor
ICAgICAgICAoV0kuU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlvbi5wcm90b3R5
cGUuX3JlbmRlclNlbGVjdG9yKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVh
ZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbC5qczoKKyAgICAgICAgKFdJLlNwcmVhZHNoZWV0
UnVsZXNTdHlsZURldGFpbHNQYW5lbC5wcm90b3R5cGUubGF5b3V0KToKKwogMjAxOS0wMi0yOCAg
TWF0dCBCYWtlciAgPG1hdHRiYWtlckBhcHBsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3Rv
cjogRGVidWdnZXI6IGRpc2FibGVkIGJyZWFrcG9pbnQgY29sb3IgaXMgdG9vIGRhcmsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xvY2Fs
aXplZFN0cmluZ3MuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9lbi5s
cHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzCmluZGV4IDFmYmQ5NjFlZDc1Li5jMjBkOTNmNGQxMyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4ubHByb2ov
bG9jYWxpemVkU3RyaW5ncy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0
aW9ucy9lbi5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzCkBAIC05OCw5ICs5OCwxMiBAQCBsb2Nh
bGl6ZWRTdHJpbmdzWyJBZGRpdGlvbnMiXSA9ICJBZGRpdGlvbnMiOwogbG9jYWxpemVkU3RyaW5n
c1siQWRkcmVzcyJdID0gIkFkZHJlc3MiOwogbG9jYWxpemVkU3RyaW5nc1siQWxsIl0gPSAiQWxs
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkFsbCBDaGFuZ2VzIl0gPSAiQWxsIENoYW5nZXMiOwotbG9j
YWxpemVkU3RyaW5nc1siQWxsIEV4Y2VwdGlvbnMiXSA9ICJBbGwgRXhjZXB0aW9ucyI7CisvKiBC
cmVhayAocGF1c2UpIG9uIGFsbCBleGNlcHRpb25zICovCitsb2NhbGl6ZWRTdHJpbmdzWyJBbGwg
RXhjZXB0aW9ucyBAIERlYnVnZ2VyIl0gPSAiQWxsIEV4Y2VwdGlvbnMiOwogbG9jYWxpemVkU3Ry
aW5nc1siQWxsIExheWVycyJdID0gIkFsbCBMYXllcnMiOwogbG9jYWxpemVkU3RyaW5nc1siQWxs
IFJlcXVlc3RzIl0gPSAiQWxsIFJlcXVlc3RzIjsKKy8qIEEgc3VibWVudSBvZiAnQnJlYWsgb24n
ICovCitsb2NhbGl6ZWRTdHJpbmdzWyJBbGwgUmVxdWVzdHMgQCBCcmVhayBvbiJdID0gIkFsbCBS
ZXF1ZXN0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBbGwgUmVzb3VyY2VzIl0gPSAiQWxsIFJlc291
cmNlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBbGwgU3RvcmFnZSJdID0gIkFsbCBTdG9yYWdlIjsK
IGxvY2FsaXplZFN0cmluZ3NbIkFsbCBpdGVtcyBpbiBcdTAwMjIlc1x1MDAyMiBtdXN0IGJlIGVy
cm9yIG9iamVjdHMiXSA9ICJBbGwgaXRlbXMgaW4gXHUwMDIyJXNcdTAwMjIgbXVzdCBiZSBlcnJv
ciBvYmplY3RzIjsKQEAgLTEyNiwxMiArMTI5LDE0IEBAIGxvY2FsaXplZFN0cmluZ3NbIkFyZWEi
XSA9ICJBcmVhIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFzc2VydGlvbiJdID0gIkFzc2VydGlvbiI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRpb24gRmFpbGVkIl0gPSAiQXNzZXJ0aW9uIEZhaWxl
ZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRpb24gRmFpbGVkOiAlcyJdID0gIkFzc2VydGlv
biBGYWlsZWQ6ICVzIjsKLWxvY2FsaXplZFN0cmluZ3NbIkFzc2VydGlvbiBGYWlsdXJlcyJdID0g
IkFzc2VydGlvbiBGYWlsdXJlcyI7CisvKiBCcmVhayB3aGVuIGNvbnNvbGUuYXNzZXJ0KCkgZmFp
bHMgKi8KK2xvY2FsaXplZFN0cmluZ3NbIkFzc2VydGlvbiBGYWlsdXJlcyBAIERlYnVnZ2VyIl0g
PSAiQXNzZXJ0aW9uIEZhaWx1cmVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFzc2VydGlvbiB3aXRo
IG1lc3NhZ2U6ICVzIl0gPSAiQXNzZXJ0aW9uIHdpdGggbWVzc2FnZTogJXMiOwogbG9jYWxpemVk
U3RyaW5nc1siQXNzZXJ0aXZlIl0gPSAiQXNzZXJ0aXZlIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFz
eW5jIGF1ZGl0cyBhcmUgbm90IHN1cHBvcnRlZC4iXSA9ICJBc3luYyBhdWRpdHMgYXJlIG5vdCBz
dXBwb3J0ZWQuIjsKIGxvY2FsaXplZFN0cmluZ3NbIkF0dHJpYnV0ZSJdID0gIkF0dHJpYnV0ZSI7
Ci1sb2NhbGl6ZWRTdHJpbmdzWyJBdHRyaWJ1dGUgTW9kaWZpZWQiXSA9ICJBdHRyaWJ1dGUgTW9k
aWZpZWQiOworLyogQSBzdWJtZW51IG9mICdCcmVhayBPbicgKi8KK2xvY2FsaXplZFN0cmluZ3Nb
IkF0dHJpYnV0ZSBNb2RpZmllZCBAIEJyZWFrIE9uIl0gPSAiQXR0cmlidXRlIE1vZGlmaWVkIjsK
IGxvY2FsaXplZFN0cmluZ3NbIkF0dHJpYnV0ZXMiXSA9ICJBdHRyaWJ1dGVzIjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIkF1ZGl0Il0gPSAiQXVkaXQiOwogbG9jYWxpemVkU3RyaW5nc1siQXVkaXQgRXJy
b3I6ICVzIl0gPSAiQXVkaXQgRXJyb3I6ICVzIjsKQEAgLTE4Niw3ICsxOTEsOCBAQCBsb2NhbGl6
ZWRTdHJpbmdzWyJDYW52YXMgJWQiXSA9ICJDYW52YXMgJWQiOwogbG9jYWxpemVkU3RyaW5nc1si
Q2FudmFzICVzIl0gPSAiQ2FudmFzICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNhbnZhcyBFbGVt
ZW50Il0gPSAiQ2FudmFzIEVsZW1lbnQiOwogbG9jYWxpemVkU3RyaW5nc1siQ2FudmFzZXMiXSA9
ICJDYW52YXNlcyI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJDYXB0dXJlIFNjcmVlbnNob3QiXSA9ICJD
YXB0dXJlIFNjcmVlbnNob3QiOworLyogQ2FwdHVyZSBTY3JlZW5zaG90IG9mIHRoZSBzZWxlY3Rl
ZCBET00gbm9kZSAqLworbG9jYWxpemVkU3RyaW5nc1siQ2FwdHVyZSBTY3JlZW5zaG90IEAgQ29u
dGV4dCBtZW51Il0gPSAiQ2FwdHVyZSBTY3JlZW5zaG90IjsKIGxvY2FsaXplZFN0cmluZ3NbIkNh
cHR1cmluZyJdID0gIkNhcHR1cmluZyI7CiAvKiBDb250ZXh0IG1lbnUgbGFiZWwgZm9yIHdoZXRo
ZXIgc2VhcmNoZXMgc2hvdWxkIGJlIGNhc2Ugc2Vuc2l0aXZlLiAqLwogbG9jYWxpemVkU3RyaW5n
c1siQ2FzZSBTZW5zaXRpdmUgQCBDb250ZXh0IE1lbnUiXSA9ICJDYXNlIFNlbnNpdGl2ZSI7CkBA
IC0yMzIsMTIgKzIzOCwxNCBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJDb2xsZWN0IGdhcmJhZ2UiXSA9
ICJDb2xsZWN0IGdhcmJhZ2UiOwogbG9jYWxpemVkU3RyaW5nc1siQ29tbWVudCJdID0gIkNvbW1l
bnQiOwogbG9jYWxpemVkU3RyaW5nc1siQ29tcGFyZSBzbmFwc2hvdHMiXSA9ICJDb21wYXJlIHNu
YXBzaG90cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wYXJpc29uIG9mIHRvdGFsIG1lbW9yeSBz
aXplIGF0IHRoZSBlbmQgb2YgdGhlIHNlbGVjdGVkIHRpbWUgcmFuZ2UgdG8gdGhlIG1heGltdW0g
bWVtb3J5IHNpemUgaW4gdGhpcyByZWNvcmRpbmciXSA9ICJDb21wYXJpc29uIG9mIHRvdGFsIG1l
bW9yeSBzaXplIGF0IHRoZSBlbmQgb2YgdGhlIHNlbGVjdGVkIHRpbWUgcmFuZ2UgdG8gdGhlIG1h
eGltdW0gbWVtb3J5IHNpemUgaW4gdGhpcyByZWNvcmRpbmciOwotbG9jYWxpemVkU3RyaW5nc1si
Q29tcG9zaXRlIl0gPSAiQ29tcG9zaXRlIjsKKy8qIENvbXBvc2l0ZSBwaGFzZSByZWNvcmRzLCB3
aGVyZSBncmFwaGljIGxheWVycyBhcmUgY29tYmluZWQgKi8KK2xvY2FsaXplZFN0cmluZ3NbIkNv
bXBvc2l0ZSBAIFRpbWVsaW5lcyJdID0gIkNvbXBvc2l0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJD
b21wb3NpdGVkIl0gPSAiQ29tcG9zaXRlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wcmVzc2Vk
Il0gPSAiQ29tcHJlc3NlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wcmVzc2lvbiJdID0gIkNv
bXByZXNzaW9uIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNvbXByZXNzaW9uOiJdID0gIkNvbXByZXNz
aW9uOiI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJDb21wdXRlZCJdID0gIkNvbXB1dGVkIjsKKy8qIFRh
YiBuYW1lIGZvciBjb21wdXRlZCBzdHlsZXMgKi8KK2xvY2FsaXplZFN0cmluZ3NbIkNvbXB1dGVk
IEAgVGFiIG5hbWUiXSA9ICJDb21wdXRlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb25kaXRpb24i
XSA9ICJDb25kaXRpb24iOwogbG9jYWxpemVkU3RyaW5nc1siQ29uZGl0aW9uYWwgZXhwcmVzc2lv
biJdID0gIkNvbmRpdGlvbmFsIGV4cHJlc3Npb24iOwogbG9jYWxpemVkU3RyaW5nc1siQ29ubmVj
dGluZyJdID0gIkNvbm5lY3RpbmciOwpAQCAtNDQzLDcgKzQ1MSwxMCBAQCBsb2NhbGl6ZWRTdHJp
bmdzWyJGYWRlIHVuZXhlY3V0ZWQgY29kZSJdID0gIkZhZGUgdW5leGVjdXRlZCBjb2RlIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIkZhaWxlZCB0byB1cGdyYWRlIl0gPSAiRmFpbGVkIHRvIHVwZ3JhZGUi
OwogbG9jYWxpemVkU3RyaW5nc1siRmFpbHVyZSBzdGF0dXMgY29kZSJdID0gIkZhaWx1cmUgc3Rh
dHVzIGNvZGUiOwogbG9jYWxpemVkU3RyaW5nc1siRmV0Y2giXSA9ICJGZXRjaCI7Ci1sb2NhbGl6
ZWRTdHJpbmdzWyJGZXRjaGVzIl0gPSAiRmV0Y2hlcyI7CisvKiBSZXNvdXJjZSBsb2FkZWQgdmlh
ICdmZXRjaCcgbWV0aG9kICovCitsb2NhbGl6ZWRTdHJpbmdzWyJGZXRjaCBAIFJlc291cmNlIHR5
cGUiXSA9ICJGZXRjaCI7CisvKiBSZXNvdXJjZXMgbG9hZGVkIHZpYSAnZmV0Y2gnIG1ldGhvZCAq
LworbG9jYWxpemVkU3RyaW5nc1siRmV0Y2hlcyBAIFJlc291cmNlIHR5cGUiXSA9ICJGZXRjaGVz
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkZpbGUgb3IgUmVzb3VyY2UiXSA9ICJGaWxlIG9yIFJlc291
cmNlIjsKIGxvY2FsaXplZFN0cmluZ3NbIkZpbGVuYW1lIl0gPSAiRmlsZW5hbWUiOwogbG9jYWxp
emVkU3RyaW5nc1siRmlsdGVyIl0gPSAiRmlsdGVyIjsKQEAgLTQ1OCw4ICs0NjksMTAgQEAgbG9j
YWxpemVkU3RyaW5nc1siRm9udHMiXSA9ICJGb250cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3Jj
ZSBEYXJrIEFwcGVhcmFuY2UiXSA9ICJGb3JjZSBEYXJrIEFwcGVhcmFuY2UiOwogbG9jYWxpemVk
U3RyaW5nc1siRm9yY2UgTGlnaHQgQXBwZWFyYW5jZSJdID0gIkZvcmNlIExpZ2h0IEFwcGVhcmFu
Y2UiOwogbG9jYWxpemVkU3RyaW5nc1siRm9yY2UgUHJpbnQgTWVkaWEgU3R5bGVzIl0gPSAiRm9y
Y2UgUHJpbnQgTWVkaWEgU3R5bGVzIjsKLWxvY2FsaXplZFN0cmluZ3NbIkZvcmNlZCBMYXlvdXQi
XSA9ICJGb3JjZWQgTGF5b3V0IjsKLWxvY2FsaXplZFN0cmluZ3NbIkZvcmNlZCBQc2V1ZG8tQ2xh
c3NlcyJdID0gIkZvcmNlZCBQc2V1ZG8tQ2xhc3NlcyI7CisvKiBMYXlvdXQgcGhhc2UgcmVjb3Jk
cyB0aGF0IHdlcmUgaW1wZXJhdGl2ZSAoZm9yY2VkKSAqLworbG9jYWxpemVkU3RyaW5nc1siRm9y
Y2VkIExheW91dCBAIFRpbWVsaW5lcyJdID0gIkZvcmNlZCBMYXlvdXQiOworLyogQSBjb250ZXh0
IG1lbnUgdG8gZm9yY2UgKG92ZXJyaWRlKSBlbGVtZW50J3MgcHNldWRvLWNsYXNzZXMgKi8KK2xv
Y2FsaXplZFN0cmluZ3NbIkZvcmNlZCBQc2V1ZG8tQ2xhc3NlcyBAIEVsZW1lbnQiXSA9ICJGb3Jj
ZWQgUHNldWRvLUNsYXNzZXMiOwogbG9jYWxpemVkU3RyaW5nc1siRm9ybWF0OiBIU0wiXSA9ICJG
b3JtYXQ6IEhTTCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3JtYXQ6IEhTTEEiXSA9ICJGb3JtYXQ6
IEhTTEEiOwogbG9jYWxpemVkU3RyaW5nc1siRm9ybWF0OiBIZXgiXSA9ICJGb3JtYXQ6IEhleCI7
CkBAIC01NDAsNyArNTUzLDggQEAgbG9jYWxpemVkU3RyaW5nc1siSW5kZXggS2V5IFx1MjAxNCAl
cyJdID0gIkluZGV4IEtleSBcdTIwMTQgJXMiOwogbG9jYWxpemVkU3RyaW5nc1siSW5kZXhlZCBE
YXRhYmFzZXMiXSA9ICJJbmRleGVkIERhdGFiYXNlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbmZv
OiAiXSA9ICJJbmZvOiAiOwogbG9jYWxpemVkU3RyaW5nc1siSW5mb3MiXSA9ICJJbmZvcyI7Ci1s
b2NhbGl6ZWRTdHJpbmdzWyJJbmhlcml0ZWQgRnJvbSJdID0gIkluaGVyaXRlZCBGcm9tIjsKKy8q
IEEgc2VjdGlvbiBvZiBDU1MgcnVsZXMgaW5oZXJpdGVkIGZyb20gYW5vdGhlciBDU1MgcnVsZSAq
LworbG9jYWxpemVkU3RyaW5nc1siSW5oZXJpdGVkIEZyb20gQCBFbGVtZW50cyJdID0gIkluaGVy
aXRlZCBGcm9tIjsKIGxvY2FsaXplZFN0cmluZ3NbIkluaXRpYWwgU3RhdGUiXSA9ICJJbml0aWFs
IFN0YXRlIjsKIGxvY2FsaXplZFN0cmluZ3NbIkluaXRpYWwgVmVsb2NpdHkiXSA9ICJJbml0aWFs
IFZlbG9jaXR5IjsKIGxvY2FsaXplZFN0cmluZ3NbIkluaXRpYXRlZCJdID0gIkluaXRpYXRlZCI7
CkBAIC01NjYsOCArNTgwLDkgQEAgbG9jYWxpemVkU3RyaW5nc1siTGF5ZXIgQ291bnQ6ICVkIl0g
PSAiTGF5ZXIgQ291bnQ6ICVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxheWVyIEluZm8iXSA9ICJM
YXllciBJbmZvIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxheWVycyJdID0gIkxheWVycyI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJMYXllcnM6Il0gPSAiTGF5ZXJzOiI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJM
YXlvdXQiXSA9ICJMYXlvdXQiOwogbG9jYWxpemVkU3RyaW5nc1siTGF5b3V0ICYgUmVuZGVyaW5n
Il0gPSAiTGF5b3V0ICYgUmVuZGVyaW5nIjsKKy8qIExheW91dCBwaGFzZSByZWNvcmRzICovCits
b2NhbGl6ZWRTdHJpbmdzWyJMYXlvdXQgQCBUaW1lbGluZXMiXSA9ICJMYXlvdXQiOwogbG9jYWxp
emVkU3RyaW5nc1siTGF5b3V0IEludmFsaWRhdGVkIl0gPSAiTGF5b3V0IEludmFsaWRhdGVkIjsK
IGxvY2FsaXplZFN0cmluZ3NbIkxpbmUgJWQiXSA9ICJMaW5lICVkIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkxpbmUgJWQ6JWQiXSA9ICJMaW5lICVkOiVkIjsKQEAgLTU4NCwxMSArNTk5LDEzIEBAIGxv
Y2FsaXplZFN0cmluZ3NbIkxvY2FsIFZhcmlhYmxlcyJdID0gIkxvY2FsIFZhcmlhYmxlcyI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJMb2NhdGVkIGF0ICVzIl0gPSAiTG9jYXRlZCBhdCAlcyI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJMb2NhdGlvbiJdID0gIkxvY2F0aW9uIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkxvZyBDYW52YXMgQ29udGV4dCJdID0gIkxvZyBDYW52YXMgQ29udGV4dCI7Ci1sb2NhbGl6ZWRT
dHJpbmdzWyJMb2cgRWxlbWVudCJdID0gIkxvZyBFbGVtZW50IjsKKy8qIExvZyBET00gZWxlbWVu
dCB0byBDb25zb2xlICovCitsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgRWxlbWVudCBAIENvbnRleHQg
bWVudSJdID0gIkxvZyBFbGVtZW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBGcmFtZSBUZXh0
Il0gPSAiTG9nIEZyYW1lIFRleHQiOwogbG9jYWxpemVkU3RyaW5nc1siTG9nIEZyYW1lIFZhbHVl
Il0gPSAiTG9nIEZyYW1lIFZhbHVlIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBNZXNzYWdlIl0g
PSAiTG9nIE1lc3NhZ2UiOwotbG9jYWxpemVkU3RyaW5nc1siTG9nIE5vZGUiXSA9ICJMb2cgTm9k
ZSI7CisvKiBMb2cgRE9NIG5vZGUgdG8gQ29uc29sZSAqLworbG9jYWxpemVkU3RyaW5nc1siTG9n
IE5vZGUgQCBDb250ZXh0IG1lbnUiXSA9ICJMb2cgTm9kZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJM
b2cgU3ltYm9sIl0gPSAiTG9nIFN5bWJvbCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgVmFsdWUi
XSA9ICJMb2cgVmFsdWUiOwogbG9jYWxpemVkU3RyaW5nc1siTG9nIFdlYlNvY2tldCJdID0gIkxv
ZyBXZWJTb2NrZXQiOwpAQCAtNjMwLDcgKzY0Nyw4IEBAIGxvY2FsaXplZFN0cmluZ3NbIk5ldHdv
cmsiXSA9ICJOZXR3b3JrIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5ldHdvcmsgSXNzdWUiXSA9ICJO
ZXR3b3JrIElzc3VlIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5ldHdvcmsgUmVxdWVzdHMiXSA9ICJO
ZXR3b3JrIFJlcXVlc3RzIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5ldyBUYWIiXSA9ICJOZXcgVGFi
IjsKLWxvY2FsaXplZFN0cmluZ3NbIk5leHQgU2libGluZyJdID0gIk5leHQgU2libGluZyI7Cisv
KiBDb250ZXh0IG1lbnUgdG8gYWRkIGFuIGVsZW1lbnQgYWZ0ZXIgdGhlIHNlbGVjdGVkIGVsZW1l
bnQgKi8KK2xvY2FsaXplZFN0cmluZ3NbIk5leHQgU2libGluZyBAIEVsZW1lbnQiXSA9ICJOZXh0
IFNpYmxpbmciOwogbG9jYWxpemVkU3RyaW5nc1siTm8iXSA9ICJObyI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJObyBBY2Nlc3NpYmlsaXR5IEluZm9ybWF0aW9uIl0gPSAiTm8gQWNjZXNzaWJpbGl0eSBJ
bmZvcm1hdGlvbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJObyBBcHBsaWNhdGlvbiBDYWNoZSBpbmZv
cm1hdGlvbiBhdmFpbGFibGUiXSA9ICJObyBBcHBsaWNhdGlvbiBDYWNoZSBpbmZvcm1hdGlvbiBh
dmFpbGFibGUiOwpAQCAtNjY4LDcgKzY4Niw4IEBAIGxvY2FsaXplZFN0cmluZ3NbIk5vIHJlcXVl
c3QsIHNlcnZlZCBmcm9tIHRoZSBtZW1vcnkgY2FjaGUuIl0gPSAiTm8gcmVxdWVzdCwgc2VyCiBs
b2NhbGl6ZWRTdHJpbmdzWyJObyByZXNwb25zZSBjb29raWVzLiJdID0gIk5vIHJlc3BvbnNlIGNv
b2tpZXMuIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5vIHJlc3BvbnNlIGhlYWRlcnMiXSA9ICJObyBy
ZXNwb25zZSBoZWFkZXJzIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5vZGUiXSA9ICJOb2RlIjsKLWxv
Y2FsaXplZFN0cmluZ3NbIk5vZGUgUmVtb3ZlZCJdID0gIk5vZGUgUmVtb3ZlZCI7CisvKiBBIHN1
Ym1lbnUgb2YgJ0JyZWFrIE9uJyAqLworbG9jYWxpemVkU3RyaW5nc1siTm9kZSBSZW1vdmVkIEAg
QnJlYWsgT24iXSA9ICJOb2RlIFJlbW92ZWQiOwogbG9jYWxpemVkU3RyaW5nc1siTm9kZXMiXSA9
ICJOb2RlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJOb25lIl0gPSAiTm9uZSI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJOb3QgZm91bmQiXSA9ICJOb3QgZm91bmQiOwpAQCAtNzAyLDggKzcyMSwxMSBAQCBs
b2NhbGl6ZWRTdHJpbmdzWyJQYWdlIl0gPSAiUGFnZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQYWdl
IElzc3VlIl0gPSAiUGFnZSBJc3N1ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQYWdlIG5hdmlnYXRl
ZCBhdCAlcyJdID0gIlBhZ2UgbmF2aWdhdGVkIGF0ICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlBh
Z2UgcmVsb2FkZWQgYXQgJXMiXSA9ICJQYWdlIHJlbG9hZGVkIGF0ICVzIjsKLWxvY2FsaXplZFN0
cmluZ3NbIlBhaW50Il0gPSAiUGFpbnQiOworLyogUGFpbnQgKHJlbmRlcikgcGhhc2UgcmVjb3Jk
cyAqLworbG9jYWxpemVkU3RyaW5nc1siUGFpbnQgQCBUaW1lbGluZXMiXSA9ICJQYWludCI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJQYWludHMiXSA9ICJQYWludHMiOworLyogQSBjb3VudCBvZiBob3cg
bWFueSB0aW1lcyBhbiBlbGVtZW50IHdhcyBwYWludGVkIChyZW5kZXJlZCkgKi8KK2xvY2FsaXpl
ZFN0cmluZ3NbIlBhaW50cyBAIENvbHVtbiB0aXRsZSJdID0gIlBhaW50cyI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJQYXJlbnQiXSA9ICJQYXJlbnQiOwogbG9jYWxpemVkU3RyaW5nc1siUGFydGlhbCBH
YXJiYWdlIENvbGxlY3Rpb24iXSA9ICJQYXJ0aWFsIEdhcmJhZ2UgQ29sbGVjdGlvbiI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJQYXNzaXZlIl0gPSAiUGFzc2l2ZSI7CkBAIC03MjksNyArNzUxLDggQEAg
bG9jYWxpemVkU3RyaW5nc1siUHJlc3MgJXMgdG8gc3RvcCBlZGl0aW5nIl0gPSAiUHJlc3MgJXMg
dG8gc3RvcCBlZGl0aW5nIjsKIGxvY2FsaXplZFN0cmluZ3NbIlByZXNzZWQiXSA9ICJQcmVzc2Vk
IjsKIGxvY2FsaXplZFN0cmluZ3NbIlByZXR0eSBwcmludCJdID0gIlByZXR0eSBwcmludCI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJQcmV2aWV3Il0gPSAiUHJldmlldyI7Ci1sb2NhbGl6ZWRTdHJpbmdz
WyJQcmV2aW91cyBTaWJsaW5nIl0gPSAiUHJldmlvdXMgU2libGluZyI7CisvKiBDb250ZXh0IG1l
bnUgdG8gYWRkIGFuIGVsZW1lbnQgYmVmb3JlIHRoZSBzZWxlY3RlZCBlbGVtZW50ICovCitsb2Nh
bGl6ZWRTdHJpbmdzWyJQcmV2aW91cyBTaWJsaW5nIEAgRWxlbWVudCJdID0gIlByZXZpb3VzIFNp
YmxpbmciOwogbG9jYWxpemVkU3RyaW5nc1siUHJpbWFyeSBLZXkiXSA9ICJQcmltYXJ5IEtleSI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJQcmltYXJ5IEtleSBcdTIwMTQgJXMiXSA9ICJQcmltYXJ5IEtl
eSBcdTIwMTQgJXMiOwogbG9jYWxpemVkU3RyaW5nc1siUHJpb3JpdHkiXSA9ICJQcmlvcml0eSI7
CkBAIC04MTcsOSArODQwLDEyIEBAIGxvY2FsaXplZFN0cmluZ3NbIlJldHVybiB0eXBlIGZvciBm
dW5jdGlvbjogJXMiXSA9ICJSZXR1cm4gdHlwZSBmb3IgZnVuY3Rpb246ICVzCiBsb2NhbGl6ZWRT
dHJpbmdzWyJSZXR1cm4gdmFsdWUgaXMgbm90IGFuIG9iamVjdCwgc3RyaW5nLCBvciBib29sZWFu
Il0gPSAiUmV0dXJuIHZhbHVlIGlzIG5vdCBhbiBvYmplY3QsIHN0cmluZywgb3IgYm9vbGVhbiI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZlYWwgQnJlYWtwb2ludCJdID0gIlJldmVhbCBCcmVha3Bv
aW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIlJldmVhbCBpbiBET00gVHJlZSJdID0gIlJldmVhbCBp
biBET00gVHJlZSI7CisvKiBPcGVuIEVsZW1lbnRzIHRhYiBhbmQgc2VsZWN0IHRoaXMgbm9kZSBp
biBET00gdHJlZSAqLworbG9jYWxpemVkU3RyaW5nc1siUmV2ZWFsIGluIERPTSBUcmVlIEAgQ29u
dGV4dCBtZW51Il0gPSAiUmV2ZWFsIGluIERPTSBUcmVlIjsKIGxvY2FsaXplZFN0cmluZ3NbIlJl
dmVhbCBpbiBEZWJ1Z2dlciBUYWIiXSA9ICJSZXZlYWwgaW4gRGVidWdnZXIgVGFiIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIlJldmVhbCBpbiBFbGVtZW50cyBUYWIiXSA9ICJSZXZlYWwgaW4gRWxlbWVu
dHMgVGFiIjsKLWxvY2FsaXplZFN0cmluZ3NbIlJldmVhbCBpbiBMYXllcnMgVGFiIl0gPSAiUmV2
ZWFsIGluIExheWVycyBUYWIiOworLyogT3BlbiBMYXllcnMgdGFiIGFuZCBzZWxlY3QgdGhlIGxh
eWVyIGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBub2RlICovCitsb2NhbGl6ZWRTdHJpbmdzWyJSZXZl
YWwgaW4gTGF5ZXJzIFRhYiBAIENvbnRleHQgbWVudSJdID0gIlJldmVhbCBpbiBMYXllcnMgVGFi
IjsKIGxvY2FsaXplZFN0cmluZ3NbIlJldmVhbCBpbiBOZXR3b3JrIFRhYiJdID0gIlJldmVhbCBp
biBOZXR3b3JrIFRhYiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZlYWwgaW4gT3JpZ2luYWwgUmVz
b3VyY2UiXSA9ICJSZXZlYWwgaW4gT3JpZ2luYWwgUmVzb3VyY2UiOwogbG9jYWxpemVkU3RyaW5n
c1siUmV2ZWFsIGluIFJlc291cmNlcyBUYWIiXSA9ICJSZXZlYWwgaW4gUmVzb3VyY2VzIFRhYiI7
CkBAIC04NDMsNyArODY5LDggQEAgbG9jYWxpemVkU3RyaW5nc1siU2NyaXB0Il0gPSAiU2NyaXB0
IjsKIGxvY2FsaXplZFN0cmluZ3NbIlNjcmlwdCBFbGVtZW50ICVkIl0gPSAiU2NyaXB0IEVsZW1l
bnQgJWQiOwogbG9jYWxpemVkU3RyaW5nc1siU2NyaXB0IEV2YWx1YXRlZCJdID0gIlNjcmlwdCBF
dmFsdWF0ZWQiOwogbG9jYWxpemVkU3RyaW5nc1siU2NyaXB0cyJdID0gIlNjcmlwdHMiOwotbG9j
YWxpemVkU3RyaW5nc1siU2Nyb2xsIEludG8gVmlldyJdID0gIlNjcm9sbCBJbnRvIFZpZXciOwor
LyogU2Nyb2xsIHNlbGVjdGVkIERPTSBub2RlIGludG8gdmlldyBvbiB0aGUgaW5zcGVjdGVkIHdl
YiBwYWdlICovCitsb2NhbGl6ZWRTdHJpbmdzWyJTY3JvbGwgaW50byBWaWV3IEAgQ29udGV4dCBt
ZW51Il0gPSAiU2Nyb2xsIGludG8gVmlldyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWFyY2giXSA9
ICJTZWFyY2giOwogbG9jYWxpemVkU3RyaW5nc1siU2VhcmNoIEFnYWluIl0gPSAiU2VhcmNoIEFn
YWluIjsKIGxvY2FsaXplZFN0cmluZ3NbIlNlYXJjaCBSZXNvdXJjZSBDb250ZW50Il0gPSAiU2Vh
cmNoIFJlc291cmNlIENvbnRlbnQiOwpAQCAtODU5LDEwICs4ODYsMTMgQEAgbG9jYWxpemVkU3Ry
aW5nc1siU2VsZWN0IGNvbXBhcmlzb24gc25hcHNob3QiXSA9ICJTZWxlY3QgY29tcGFyaXNvbiBz
bmFwc2hvdCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCJdID0gIlNlbGVjdGVkIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIlNlbGVjdGVkIENhbnZhcyBDb250ZXh0Il0gPSAiU2VsZWN0ZWQgQ2Fu
dmFzIENvbnRleHQiOwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgRWxlbWVudCJdID0gIlNl
bGVjdGVkIEVsZW1lbnQiOworLyogU2VsZWN0ZWQgRE9NIGVsZW1lbnQgKi8KK2xvY2FsaXplZFN0
cmluZ3NbIlNlbGVjdGVkIEVsZW1lbnQgQCBDb25zb2xlIl0gPSAiU2VsZWN0ZWQgRWxlbWVudCI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBGcmFtZSJdID0gIlNlbGVjdGVkIEZyYW1lIjsK
IGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdGVkIEl0ZW0iXSA9ICJTZWxlY3RlZCBJdGVtIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIlNlbGVjdGVkIEl0ZW1zIl0gPSAiU2VsZWN0ZWQgSXRlbXMiOwotbG9j
YWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgTm9kZSJdID0gIlNlbGVjdGVkIE5vZGUiOworLyogU2Vs
ZWN0ZWQgRE9NIG5vZGUgKi8KK2xvY2FsaXplZFN0cmluZ3NbIlNlbGVjdGVkIE5vZGUgQCBDb25z
b2xlIl0gPSAiU2VsZWN0ZWQgTm9kZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBTeW1i
b2wiXSA9ICJTZWxlY3RlZCBTeW1ib2wiOwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgVmFs
dWUiXSA9ICJTZWxlY3RlZCBWYWx1ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBXZWJT
b2NrZXQiXSA9ICJTZWxlY3RlZCBXZWJTb2NrZXQiOwpAQCAtOTU4LDEwICs5ODgsMTMgQEAgbG9j
YWxpemVkU3RyaW5nc1siU3RvcCByZWNvcmRpbmcgY2FudmFzIGFjdGlvbnMiXSA9ICJTdG9wIHJl
Y29yZGluZyBjYW52YXMgYWN0aW8KIGxvY2FsaXplZFN0cmluZ3NbIlN0b3AgcmVjb3JkaW5nIG9u
Y2UgcGFnZSBsb2FkcyJdID0gIlN0b3AgcmVjb3JkaW5nIG9uY2UgcGFnZSBsb2FkcyI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJTdG9wcGluZyB0aGUgXHUyMDFDJXNcdTIwMUQgYXVkaXQiXSA9ICJTdG9w
cGluZyB0aGUgXHUyMDFDJXNcdTIwMUQgYXVkaXQiOwogbG9jYWxpemVkU3RyaW5nc1siU3RvcmFn
ZSJdID0gIlN0b3JhZ2UiOwotbG9jYWxpemVkU3RyaW5nc1siU3R5bGUgQXR0cmlidXRlIl0gPSAi
U3R5bGUgQXR0cmlidXRlIjsKKy8qIENTUyBwcm9wZXJ0aWVzIGRlZmluZWQgdmlhIEhUTUwgc3R5
bGUgYXR0cmlidXRlICovCitsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZSBBdHRyaWJ1dGUgQCBFbGVt
ZW50cyJdID0gIlN0eWxlIEF0dHJpYnV0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZSBSZXNv
bHV0aW9uIl0gPSAiU3R5bGUgUmVzb2x1dGlvbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZSBy
dWxlIl0gPSAiU3R5bGUgcnVsZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZXMiXSA9ICJTdHls
ZXMiOworLyogVGFiIG5hbWUgZm9yIENTUyBzdHlsZSBydWxlcyAqLworbG9jYWxpemVkU3RyaW5n
c1siU3R5bGVzIEAgRWxlbWVudHMiXSA9ICJTdHlsZXMiOwogbG9jYWxpemVkU3RyaW5nc1siU3R5
bGVzIEludmFsaWRhdGVkIl0gPSAiU3R5bGVzIEludmFsaWRhdGVkIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlN0eWxlcyBSZWNhbGN1bGF0ZWQiXSA9ICJTdHlsZXMgUmVjYWxjdWxhdGVkIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIlN0eWxlcyBcdTIwMTQgQ29tcHV0ZWQiXSA9ICJTdHlsZXMgXHUyMDE0IENv
bXB1dGVkIjsKQEAgLTk2OSwxMiArMTAwMiwxNCBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZXMg
XHUyMDE0IFJ1bGVzIl0gPSAiU3R5bGVzIFx1MjAxNCBSdWxlcyI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJTdHlsZXNoZWV0Il0gPSAiU3R5bGVzaGVldCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZXNo
ZWV0cyJdID0gIlN0eWxlc2hlZXRzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlN1YmplY3QiXSA9ICJT
dWJqZWN0IjsKLWxvY2FsaXplZFN0cmluZ3NbIlN1YnRyZWUgTW9kaWZpZWQiXSA9ICJTdWJ0cmVl
IE1vZGlmaWVkIjsKKy8qIEEgc3VibWVudSBvZiAnQnJlYWsgT24nICovCitsb2NhbGl6ZWRTdHJp
bmdzWyJTdWJ0cmVlIE1vZGlmaWVkIEAgQnJlYWsgT24iXSA9ICJTdWJ0cmVlIE1vZGlmaWVkIjsK
IGxvY2FsaXplZFN0cmluZ3NbIlN1bW1hcnkiXSA9ICJTdW1tYXJ5IjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlRDUCJdID0gIlRDUCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUYWIgd2lkdGg6Il0gPSAiVGFi
IHdpZHRoOiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUYWJzIl0gPSAiVGFicyI7Ci1sb2NhbGl6ZWRT
dHJpbmdzWyJUYWciXSA9ICJUYWciOworLyogQSBzdWJtZW51IG9mICdFZGl0JyAqLworbG9jYWxp
emVkU3RyaW5nc1siVGFnIEAgRWRpdCJdID0gIlRhZyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUYWtl
IHNuYXBzaG90Il0gPSAiVGFrZSBzbmFwc2hvdCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUZW1wbGF0
ZSBDb250ZW50Il0gPSAiVGVtcGxhdGUgQ29udGVudCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUZXh0
Il0gPSAiVGV4dCI7CkBAIC0xMDMwLDcgKzEwNjUsOCBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJUb3Rh
bCB0aW1lIl0gPSAiVG90YWwgdGltZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUb3RhbHM6Il0gPSAi
VG90YWxzOiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUcmFjZSJdID0gIlRyYWNlIjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIlRyYWNlOiAlcyJdID0gIlRyYWNlOiAlcyI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJU
cmFuc2ZlciBTaXplIl0gPSAiVHJhbnNmZXIgU2l6ZSI7CisvKiBBbW91bnQgb2YgZGF0YSBzZW50
IG92ZXIgdGhlIG5ldHdvcmsgKi8KK2xvY2FsaXplZFN0cmluZ3NbIlRyYW5zZmVyIFNpemUgQCBO
ZXR3b3JrIl0gPSAiVHJhbnNmZXIgU2l6ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUcmFuc2ZlcnJl
ZCJdID0gIlRyYW5zZmVycmVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRyaWdnZXJlZCBCcmVha3Bv
aW50Il0gPSAiVHJpZ2dlcmVkIEJyZWFrcG9pbnQiOwogbG9jYWxpemVkU3RyaW5nc1siVHJpZ2dl
cmVkIFVSTCBCcmVha3BvaW50Il0gPSAiVHJpZ2dlcmVkIFVSTCBCcmVha3BvaW50IjsKQEAgLTEw
NDQsNyArMTA4MCw4IEBAIGxvY2FsaXplZFN0cmluZ3NbIlVSTCBCcmVha3BvaW50XHUyMDI2Il0g
PSAiVVJMIEJyZWFrcG9pbnRcdTIwMjYiOwogbG9jYWxpemVkU3RyaW5nc1siVW5hYmxlIHRvIGRl
dGVybWluZSBwYXRoIHRvIHByb3BlcnR5IGZyb20gcm9vdCJdID0gIlVuYWJsZSB0byBkZXRlcm1p
bmUgcGF0aCB0byBwcm9wZXJ0eSBmcm9tIHJvb3QiOwogbG9jYWxpemVkU3RyaW5nc1siVW5hYmxl
IHRvIHBhcnNlIGFzIEpTT046ICVzIl0gPSAiVW5hYmxlIHRvIHBhcnNlIGFzIEpTT046ICVzIjsK
IGxvY2FsaXplZFN0cmluZ3NbIlVuYWJsZSB0byBzaG93IGNlcnRpZmljYXRlIGZvciBcdTIwMUMl
c1x1MjAxRCJdID0gIlVuYWJsZSB0byBzaG93IGNlcnRpZmljYXRlIGZvciBcdTIwMUMlc1x1MjAx
RCI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJVbmNhdWdodCBFeGNlcHRpb25zIl0gPSAiVW5jYXVnaHQg
RXhjZXB0aW9ucyI7CisvKiBCcmVhayAocGF1c2UpIG9uIGV2ZXJ5IHVuY2F1Z2h0ICh1bmhhbmRs
ZWQpIGV4Y2VwdGlvbnMgKi8KK2xvY2FsaXplZFN0cmluZ3NbIlVuY2F1Z2h0IEV4Y2VwdGlvbnMg
QCBEZWJ1Z2dlciJdID0gIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiOwogbG9jYWxpemVkU3RyaW5nc1si
VW5kZWZpbmVkIGN1c3RvbSBlbGVtZW50Il0gPSAiVW5kZWZpbmVkIGN1c3RvbSBlbGVtZW50IjsK
IGxvY2FsaXplZFN0cmluZ3NbIlVuaXF1ZSJdID0gIlVuaXF1ZSI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJVbmtub3duIGVycm9yIl0gPSAiVW5rbm93biBlcnJvciI7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvTGF5b3V0VGltZWxpbmVSZWNvcmQu
anMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvTGF5b3V0VGlt
ZWxpbmVSZWNvcmQuanMKaW5kZXggOTVmOGFmNWE2NTIuLjNlZDNhM2Q2NDI0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvTGF5b3V0VGltZWxp
bmVSZWNvcmQuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9k
ZWxzL0xheW91dFRpbWVsaW5lUmVjb3JkLmpzCkBAIC01MSwxMyArNTEsMTMgQEAgV0kuTGF5b3V0
VGltZWxpbmVSZWNvcmQgPSBjbGFzcyBMYXlvdXRUaW1lbGluZVJlY29yZCBleHRlbmRzIFdJLlRp
bWVsaW5lUmVjb3JkCiAgICAgICAgIGNhc2UgV0kuTGF5b3V0VGltZWxpbmVSZWNvcmQuRXZlbnRU
eXBlLkludmFsaWRhdGVMYXlvdXQ6CiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkxh
eW91dCBJbnZhbGlkYXRlZCIpOwogICAgICAgICBjYXNlIFdJLkxheW91dFRpbWVsaW5lUmVjb3Jk
LkV2ZW50VHlwZS5Gb3JjZWRMYXlvdXQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmco
IkZvcmNlZCBMYXlvdXQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiRm9yY2Vk
IExheW91dCIsICJGb3JjZWQgTGF5b3V0IEAgVGltZWxpbmVzIiwgIkxheW91dCBwaGFzZSByZWNv
cmRzIHRoYXQgd2VyZSBpbXBlcmF0aXZlIChmb3JjZWQpIik7CiAgICAgICAgIGNhc2UgV0kuTGF5
b3V0VGltZWxpbmVSZWNvcmQuRXZlbnRUeXBlLkxheW91dDoKLSAgICAgICAgICAgIHJldHVybiBX
SS5VSVN0cmluZygiTGF5b3V0Iik7CisgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkxh
eW91dCIsICJMYXlvdXQgQCBUaW1lbGluZXMiLCAiTGF5b3V0IHBoYXNlIHJlY29yZHMiKTsKICAg
ICAgICAgY2FzZSBXSS5MYXlvdXRUaW1lbGluZVJlY29yZC5FdmVudFR5cGUuUGFpbnQ6Ci0gICAg
ICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlBhaW50Iik7CisgICAgICAgICAgICByZXR1cm4g
V0kuVUlTdHJpbmcoIlBhaW50IiwgIlBhaW50IEAgVGltZWxpbmVzIiwgIlBhaW50IChyZW5kZXIp
IHBoYXNlIHJlY29yZHMiKTsKICAgICAgICAgY2FzZSBXSS5MYXlvdXRUaW1lbGluZVJlY29yZC5F
dmVudFR5cGUuQ29tcG9zaXRlOgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJDb21w
b3NpdGUiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiQ29tcG9zaXRlIiwgIkNv
bXBvc2l0ZSBAIFRpbWVsaW5lcyIsICJDb21wb3NpdGUgcGhhc2UgcmVjb3Jkcywgd2hlcmUgZ3Jh
cGhpYyBsYXllcnMgYXJlIGNvbWJpbmVkIik7CiAgICAgICAgIH0KICAgICB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZW5kZXJpbmdG
cmFtZVRpbWVsaW5lUmVjb3JkLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvTW9kZWxzL1JlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuanMKaW5kZXggMTBkY2E0Mjdh
NjEuLmU4MzczODUzOTg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9Nb2RlbHMvUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5qcworKysgYi9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvUmVuZGVyaW5nRnJhbWVUaW1l
bGluZVJlY29yZC5qcwpAQCAtNDYsOSArNDYsOSBAQCBXSS5SZW5kZXJpbmdGcmFtZVRpbWVsaW5l
UmVjb3JkID0gY2xhc3MgUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZCBleHRlbmRzIFdJLgog
ICAgICAgICBjYXNlIFdJLlJlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuVGFza1R5cGUuU2Ny
aXB0OgogICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJTY3JpcHQiKTsKICAgICAgICAg
Y2FzZSBXSS5SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLlRhc2tUeXBlLkxheW91dDoKLSAg
ICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTGF5b3V0Iik7CisgICAgICAgICAgICByZXR1
cm4gV0kuVUlTdHJpbmcoIkxheW91dCIsICJMYXlvdXQgQCBUaW1lbGluZXMiLCAiTGF5b3V0IHBo
YXNlIHJlY29yZHMiKTsKICAgICAgICAgY2FzZSBXSS5SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVj
b3JkLlRhc2tUeXBlLlBhaW50OgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJQYWlu
dCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJQYWludCIsICJQYWludCBAIFRp
bWVsaW5lcyIsICJQYWludCAocmVuZGVyKSBwaGFzZSByZWNvcmRzIik7CiAgICAgICAgIGNhc2Ug
V0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5UYXNrVHlwZS5PdGhlcjoKICAgICAgICAg
ICAgIHJldHVybiBXSS5VSVN0cmluZygiT3RoZXIiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291cmNlLmpzIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291cmNlLmpzCmlu
ZGV4IDM4YWUxZDlmNGM4Li4yZGIyYTI1NWZhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291cmNlLmpzCisrKyBiL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZXNvdXJjZS5qcwpAQCAtMTU0LDggKzE1
NCw4IEBAIFdJLlJlc291cmNlID0gY2xhc3MgUmVzb3VyY2UgZXh0ZW5kcyBXSS5Tb3VyY2VDb2Rl
CiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlhIUiIpOwogICAgICAgICBjYXNlIFdJ
LlJlc291cmNlLlR5cGUuRmV0Y2g6CiAgICAgICAgICAgICBpZiAocGx1cmFsKQotICAgICAgICAg
ICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiRmV0Y2hlcyIpOwotICAgICAgICAgICAgcmV0dXJu
IFdJLlVJU3RyaW5nKCJGZXRjaCIpOworICAgICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmlu
ZygiRmV0Y2hlcyIsICJGZXRjaGVzIEAgUmVzb3VyY2UgdHlwZSIsICJSZXNvdXJjZXMgbG9hZGVk
IHZpYSAnZmV0Y2gnIG1ldGhvZCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJG
ZXRjaCIsICJGZXRjaCBAIFJlc291cmNlIHR5cGUiLCAiUmVzb3VyY2UgbG9hZGVkIHZpYSAnZmV0
Y2gnIG1ldGhvZCIpOwogICAgICAgICBjYXNlIFdJLlJlc291cmNlLlR5cGUuUGluZzoKICAgICAg
ICAgICAgIGlmIChwbHVyYWwpCiAgICAgICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJQ
aW5ncyIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
Vmlld3MvQ1BVVGltZWxpbmVWaWV3LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvQ1BVVGltZWxpbmVWaWV3LmpzCmluZGV4IDdmZGIwN2RjYjJkLi42Yzc1YjBi
Mjc2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvQ1BVVGltZWxpbmVWaWV3LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL0NQVVRpbWVsaW5lVmlldy5qcwpAQCAtNDYsOSArNDYsOSBAQCBXSS5DUFVU
aW1lbGluZVZpZXcgPSBjbGFzcyBDUFVUaW1lbGluZVZpZXcgZXh0ZW5kcyBXSS5UaW1lbGluZVZp
ZXcKICAgICAgICAgY2FzZSBXSS5DUFVUaW1lbGluZVZpZXcuU2FtcGxlVHlwZS5TY3JpcHQ6CiAg
ICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlNjcmlwdCIpOwogICAgICAgICBjYXNlIFdJ
LkNQVVRpbWVsaW5lVmlldy5TYW1wbGVUeXBlLkxheW91dDoKLSAgICAgICAgICAgIHJldHVybiBX
SS5VSVN0cmluZygiTGF5b3V0Iik7CisgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkxh
eW91dCIsICJMYXlvdXQgQCBUaW1lbGluZXMiLCAiTGF5b3V0IHBoYXNlIHJlY29yZHMiKTsKICAg
ICAgICAgY2FzZSBXSS5DUFVUaW1lbGluZVZpZXcuU2FtcGxlVHlwZS5QYWludDoKLSAgICAgICAg
ICAgIHJldHVybiBXSS5VSVN0cmluZygiUGFpbnQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5V
SVN0cmluZygiUGFpbnQiLCAiUGFpbnQgQCBUaW1lbGluZXMiLCAiUGFpbnQgKHJlbmRlcikgcGhh
c2UgcmVjb3JkcyIpOwogICAgICAgICBjYXNlIFdJLkNQVVRpbWVsaW5lVmlldy5TYW1wbGVUeXBl
LlN0eWxlOgogICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJTdHlsZSBSZXNvbHV0aW9u
Iik7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL0NvbXB1dGVkU3R5bGVEZXRhaWxzU2lkZWJhclBhbmVsLmpzIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ29tcHV0ZWRTdHlsZURldGFpbHNT
aWRlYmFyUGFuZWwuanMKaW5kZXggZjUzYTE2OTBlY2UuLjBjMGRmOTgwYTU5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Db21wdXRlZFN0eWxl
RGV0YWlsc1NpZGViYXJQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9Db21wdXRlZFN0eWxlRGV0YWlsc1NpZGViYXJQYW5lbC5qcwpAQCAtMjcs
NiArMjcsNiBAQCBXSS5Db21wdXRlZFN0eWxlRGV0YWlsc1NpZGViYXJQYW5lbCA9IGNsYXNzIENv
bXB1dGVkU3R5bGVEZXRhaWxzU2lkZWJhclBhbmVsIGV4dAogewogICAgIGNvbnN0cnVjdG9yKCkK
ICAgICB7Ci0gICAgICAgIHN1cGVyKCJzdHlsZS1jb21wdXRlZCIsIFdJLlVJU3RyaW5nKCJDb21w
dXRlZCIpLCBXSS5Db21wdXRlZFN0eWxlRGV0YWlsc1BhbmVsKTsKKyAgICAgICAgc3VwZXIoInN0
eWxlLWNvbXB1dGVkIiwgV0kuVUlTdHJpbmcoIkNvbXB1dGVkIiwgIkNvbXB1dGVkIEAgVGFiIG5h
bWUiLCAiVGFiIG5hbWUgZm9yIGNvbXB1dGVkIHN0eWxlcyIpLCBXSS5Db21wdXRlZFN0eWxlRGV0
YWlsc1BhbmVsKTsKICAgICB9CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvQ29udGV4dE1lbnVVdGlsaXRpZXMuanMgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGllcy5qcwpp
bmRleCBkMTdkOGI0ZTU1My4uMTZmMzhjYjMzZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NvbnRleHRNZW51VXRpbGl0aWVzLmpzCisrKyBi
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NvbnRleHRNZW51VXRp
bGl0aWVzLmpzCkBAIC0yMTQsMTAgKzIxNCwxMCBAQCBXSS5hcHBlbmRDb250ZXh0TWVudUl0ZW1z
Rm9yRE9NTm9kZSA9IGZ1bmN0aW9uKGNvbnRleHRNZW51LCBkb21Ob2RlLCBvcHRpb25zID0gewog
ICAgIGNvbnRleHRNZW51LmFwcGVuZFNlcGFyYXRvcigpOwogCiAgICAgaWYgKCFvcHRpb25zLmV4
Y2x1ZGVMb2dFbGVtZW50ICYmICFkb21Ob2RlLmlzSW5Vc2VyQWdlbnRTaGFkb3dUcmVlKCkgJiYg
IWRvbU5vZGUuaXNQc2V1ZG9FbGVtZW50KCkpIHsKLSAgICAgICAgbGV0IGxhYmVsID0gaXNFbGVt
ZW50ID8gV0kuVUlTdHJpbmcoIkxvZyBFbGVtZW50IikgOiBXSS5VSVN0cmluZygiTG9nIE5vZGUi
KTsKKyAgICAgICAgbGV0IGxhYmVsID0gaXNFbGVtZW50ID8gV0kuVUlTdHJpbmcoIkxvZyBFbGVt
ZW50IiwgIkxvZyBFbGVtZW50IEAgQ29udGV4dCBtZW51IiwgIkxvZyBET00gZWxlbWVudCB0byBD
b25zb2xlIikgOiBXSS5VSVN0cmluZygiTG9nIE5vZGUiLCAiTG9nIE5vZGUgQCBDb250ZXh0IG1l
bnUiLCAiTG9nIERPTSBub2RlIHRvIENvbnNvbGUiKTsKICAgICAgICAgY29udGV4dE1lbnUuYXBw
ZW5kSXRlbShsYWJlbCwgKCkgPT4gewogICAgICAgICAgICAgV0kuUmVtb3RlT2JqZWN0LnJlc29s
dmVOb2RlKGRvbU5vZGUsIFdJLlJ1bnRpbWVNYW5hZ2VyLkNvbnNvbGVPYmplY3RHcm91cCkudGhl
bigocmVtb3RlT2JqZWN0KSA9PiB7Ci0gICAgICAgICAgICAgICAgbGV0IHRleHQgPSBpc0VsZW1l
bnQgPyBXSS5VSVN0cmluZygiU2VsZWN0ZWQgRWxlbWVudCIpIDogV0kuVUlTdHJpbmcoIlNlbGVj
dGVkIE5vZGUiKTsKKyAgICAgICAgICAgICAgICBsZXQgdGV4dCA9IGlzRWxlbWVudCA/IFdJLlVJ
U3RyaW5nKCJTZWxlY3RlZCBFbGVtZW50IiwgIlNlbGVjdGVkIEVsZW1lbnQgQCBDb25zb2xlIiwg
IlNlbGVjdGVkIERPTSBlbGVtZW50IikgOiBXSS5VSVN0cmluZygiU2VsZWN0ZWQgTm9kZSIsICJT
ZWxlY3RlZCBOb2RlIEAgQ29uc29sZSIsICJTZWxlY3RlZCBET00gbm9kZSIpOwogICAgICAgICAg
ICAgICAgIGNvbnN0IGFkZFNwZWNpYWxVc2VyTG9nQ2xhc3MgPSB0cnVlOwogICAgICAgICAgICAg
ICAgIFdJLmNvbnNvbGVMb2dWaWV3Q29udHJvbGxlci5hcHBlbmRJbW1lZGlhdGVFeGVjdXRpb25X
aXRoUmVzdWx0KHRleHQsIHJlbW90ZU9iamVjdCwgYWRkU3BlY2lhbFVzZXJMb2dDbGFzcyk7CiAg
ICAgICAgICAgICB9KTsKQEAgLTIyNSwxOSArMjI1LDE5IEBAIFdJLmFwcGVuZENvbnRleHRNZW51
SXRlbXNGb3JET01Ob2RlID0gZnVuY3Rpb24oY29udGV4dE1lbnUsIGRvbU5vZGUsIG9wdGlvbnMg
PSB7CiAgICAgfQogCiAgICAgaWYgKCFvcHRpb25zLmV4Y2x1ZGVSZXZlYWxFbGVtZW50ICYmIHdp
bmRvdy5ET01BZ2VudCAmJiBkb21Ob2RlLm93bmVyRG9jdW1lbnQpIHsKLSAgICAgICAgY29udGV4
dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiUmV2ZWFsIGluIERPTSBUcmVlIiksICgpID0+
IHsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiUmV2ZWFsIGlu
IERPTSBUcmVlIiwgIlJldmVhbCBpbiBET00gVHJlZSBAIENvbnRleHQgbWVudSIsICJPcGVuIEVs
ZW1lbnRzIHRhYiBhbmQgc2VsZWN0IHRoaXMgbm9kZSBpbiBET00gdHJlZSIpLCAoKSA9PiB7CiAg
ICAgICAgICAgICBXSS5kb21NYW5hZ2VyLmluc3BlY3RFbGVtZW50KGRvbU5vZGUuaWQpOwogICAg
ICAgICB9KTsKICAgICB9CiAKICAgICBpZiAoIW9wdGlvbnMuZXhjbHVkZVJldmVhbExheWVyICYm
IHdpbmRvdy5MYXllclRyZWVBZ2VudCAmJiBkb21Ob2RlLnBhcmVudE5vZGUpIHsKLSAgICAgICAg
Y29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiUmV2ZWFsIGluIExheWVycyBUYWIi
KSwgKCkgPT4geworICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJS
ZXZlYWwgaW4gTGF5ZXJzIFRhYiIsICJSZXZlYWwgaW4gTGF5ZXJzIFRhYiBAIENvbnRleHQgbWVu
dSIsICJPcGVuIExheWVycyB0YWIgYW5kIHNlbGVjdCB0aGUgbGF5ZXIgY29ycmVzcG9uZGluZyB0
byB0aGlzIG5vZGUiKSwgKCkgPT4gewogICAgICAgICAgICAgV0kuc2hvd0xheWVyc1RhYih7bm9k
ZVRvU2VsZWN0OiBkb21Ob2RlfSk7CiAgICAgICAgIH0pOwogICAgIH0KIAogICAgIGlmICh3aW5k
b3cuUGFnZUFnZW50KSB7Ci0gICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJp
bmcoIkNhcHR1cmUgU2NyZWVuc2hvdCIpLCAoKSA9PiB7CisgICAgICAgIGNvbnRleHRNZW51LmFw
cGVuZEl0ZW0oV0kuVUlTdHJpbmcoIkNhcHR1cmUgU2NyZWVuc2hvdCIsICJDYXB0dXJlIFNjcmVl
bnNob3QgQCBDb250ZXh0IG1lbnUiLCAiQ2FwdHVyZSBTY3JlZW5zaG90IG9mIHRoZSBzZWxlY3Rl
ZCBET00gbm9kZSIpLCAoKSA9PiB7CiAgICAgICAgICAgICBQYWdlQWdlbnQuc25hcHNob3ROb2Rl
KGRvbU5vZGUuaWQsIChlcnJvciwgZGF0YVVSTCkgPT4gewogICAgICAgICAgICAgICAgIGlmIChl
cnJvcikgewogICAgICAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXQgPSBXSS5tYWluVGFyZ2V0
OwpAQCAtMjcwLDcgKzI3MCw3IEBAIFdJLmFwcGVuZENvbnRleHRNZW51SXRlbXNGb3JET01Ob2Rl
ID0gZnVuY3Rpb24oY29udGV4dE1lbnUsIGRvbU5vZGUsIG9wdGlvbnMgPSB7CiAgICAgfQogCiAg
ICAgaWYgKGlzRWxlbWVudCkgewotICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJ
U3RyaW5nKCJTY3JvbGwgSW50byBWaWV3IiksICgpID0+IHsKKyAgICAgICAgY29udGV4dE1lbnUu
YXBwZW5kSXRlbShXSS5VSVN0cmluZygiU2Nyb2xsIGludG8gVmlldyIsICJTY3JvbGwgaW50byBW
aWV3IEAgQ29udGV4dCBtZW51IiwgIlNjcm9sbCBzZWxlY3RlZCBET00gbm9kZSBpbnRvIHZpZXcg
b24gdGhlIGluc3BlY3RlZCB3ZWIgcGFnZSIpLCAoKSA9PiB7CiAgICAgICAgICAgICBkb21Ob2Rl
LnNjcm9sbEludG9WaWV3KCk7CiAgICAgICAgIH0pOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTUJyZWFrcG9pbnRUcmVlRWxl
bWVudC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTUJy
ZWFrcG9pbnRUcmVlRWxlbWVudC5qcwppbmRleCA1Y2VmNDA5NDg4Yy4uZjQyN2E4ODhmYzAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTUJy
ZWFrcG9pbnRUcmVlRWxlbWVudC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMKQEAgLTU0LDExICs1NCwx
MSBAQCBXSS5ET01CcmVha3BvaW50VHJlZUVsZW1lbnQgPSBjbGFzcyBET01CcmVha3BvaW50VHJl
ZUVsZW1lbnQgZXh0ZW5kcyBXSS5HZW5lcmFsVAogICAgIHsKICAgICAgICAgc3dpdGNoICh0eXBl
KSB7CiAgICAgICAgIGNhc2UgV0kuRE9NQnJlYWtwb2ludC5UeXBlLlN1YnRyZWVNb2RpZmllZDoK
LSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiU3VidHJlZSBNb2RpZmllZCIpOworICAg
ICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJTdWJ0cmVlIE1vZGlmaWVkIiwgIlN1YnRyZWUg
TW9kaWZpZWQgQCBCcmVhayBPbiIsICJBIHN1Ym1lbnUgb2YgJ0JyZWFrIE9uJyIpOwogICAgICAg
ICBjYXNlIFdJLkRPTUJyZWFrcG9pbnQuVHlwZS5BdHRyaWJ1dGVNb2RpZmllZDoKLSAgICAgICAg
ICAgIHJldHVybiBXSS5VSVN0cmluZygiQXR0cmlidXRlIE1vZGlmaWVkIik7CisgICAgICAgICAg
ICByZXR1cm4gV0kuVUlTdHJpbmcoIkF0dHJpYnV0ZSBNb2RpZmllZCIsICJBdHRyaWJ1dGUgTW9k
aWZpZWQgQCBCcmVhayBPbiIsICJBIHN1Ym1lbnUgb2YgJ0JyZWFrIE9uJyIpOwogICAgICAgICBj
YXNlIFdJLkRPTUJyZWFrcG9pbnQuVHlwZS5Ob2RlUmVtb3ZlZDoKLSAgICAgICAgICAgIHJldHVy
biBXSS5VSVN0cmluZygiTm9kZSBSZW1vdmVkIik7CisgICAgICAgICAgICByZXR1cm4gV0kuVUlT
dHJpbmcoIk5vZGUgUmVtb3ZlZCIsICJOb2RlIFJlbW92ZWQgQCBCcmVhayBPbiIsICJBIHN1Ym1l
bnUgb2YgJ0JyZWFrIE9uJyIpOwogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgY29uc29s
ZS5lcnJvcigiVW5leHBlY3RlZCBET00gYnJlYWtwb2ludCB0eXBlOiAiICsgdHlwZSk7CiAgICAg
ICAgICAgICByZXR1cm4gbnVsbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVFbGVtZW50LmpzIGIvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZUVsZW1lbnQuanMKaW5kZXggMGExZjgyNWJh
ZDAuLjU4ZmUxYzg0MzAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5qcwpAQCAtNzYwLDE0ICs3NjAs
MTQgQEAgV0kuRE9NVHJlZUVsZW1lbnQgPSBjbGFzcyBET01UcmVlRWxlbWVudCBleHRlbmRzIFdJ
LlRyZWVFbGVtZW50CiAgICAgICAgICAgICB0aGlzLnJlcHJlc2VudGVkT2JqZWN0LnJlbW92ZUF0
dHJpYnV0ZShhdHRyaWJ1dGVOYW1lKTsKICAgICAgICAgfSwgIWF0dHJpYnV0ZSB8fCAhaXNOb25T
aGFkb3dFZGl0YWJsZSk7CiAKLSAgICAgICAgc3ViTWVudXMuZWRpdC5hcHBlbmRJdGVtKFdJLlVJ
U3RyaW5nKCJUYWciKSwgKCkgPT4geworICAgICAgICBzdWJNZW51cy5lZGl0LmFwcGVuZEl0ZW0o
V0kuVUlTdHJpbmcoIlRhZyIsICJUYWcgQCBFZGl0IiwgIkEgc3VibWVudSBvZiAnRWRpdCciKSwg
KCkgPT4gewogICAgICAgICAgICAgdGhpcy5fc3RhcnRFZGl0aW5nVGFnTmFtZSgpOwogICAgICAg
ICB9LCAhaXNOb25TaGFkb3dFZGl0YWJsZSk7CiAKICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5k
U2VwYXJhdG9yKCk7CiAKICAgICAgICAgaWYgKFdJLmNzc01hbmFnZXIuY2FuRm9yY2VQc2V1ZG9D
bGFzc2VzKCkpIHsKLSAgICAgICAgICAgIGxldCBwc2V1ZG9TdWJNZW51ID0gY29udGV4dE1lbnUu
YXBwZW5kU3ViTWVudUl0ZW0oV0kuVUlTdHJpbmcoIkZvcmNlZCBQc2V1ZG8tQ2xhc3NlcyIpKTsK
KyAgICAgICAgICAgIGxldCBwc2V1ZG9TdWJNZW51ID0gY29udGV4dE1lbnUuYXBwZW5kU3ViTWVu
dUl0ZW0oV0kuVUlTdHJpbmcoIkZvcmNlZCBQc2V1ZG8tQ2xhc3NlcyIsICJGb3JjZWQgUHNldWRv
LUNsYXNzZXMgQCBFbGVtZW50IiwgIkEgY29udGV4dCBtZW51IHRvIGZvcmNlIChvdmVycmlkZSkg
ZWxlbWVudCdzIHBzZXVkby1jbGFzc2VzIikpOwogCiAgICAgICAgICAgICBsZXQgZW5hYmxlZFBz
ZXVkb0NsYXNzZXMgPSB0aGlzLnJlcHJlc2VudGVkT2JqZWN0LmVuYWJsZWRQc2V1ZG9DbGFzc2Vz
OwogICAgICAgICAgICAgV0kuQ1NTTWFuYWdlci5Gb3JjZWFibGVQc2V1ZG9DbGFzc2VzLmZvckVh
Y2goKHBzZXVkb0NsYXNzKSA9PiB7CkBAIC03OTksOCArNzk5LDggQEAgV0kuRE9NVHJlZUVsZW1l
bnQgPSBjbGFzcyBET01UcmVlRWxlbWVudCBleHRlbmRzIFdJLlRyZWVFbGVtZW50CiAgICAgICAg
IGxldCBpc0VkaXRhYmxlTm9kZSA9IG5vZGUubm9kZVR5cGUoKSA9PT0gTm9kZS5FTEVNRU5UX05P
REUgJiYgdGhpcy5lZGl0YWJsZTsKICAgICAgICAgbGV0IGZvcmJpZGRlbkNsb3NpbmdUYWcgPSBX
SS5ET01UcmVlRWxlbWVudC5Gb3JiaWRkZW5DbG9zaW5nVGFnRWxlbWVudHMuaGFzKG5vZGUubm9k
ZU5hbWVJbkNvcnJlY3RDYXNlKCkpOwogICAgICAgICBzdWJNZW51cy5hZGQuYXBwZW5kSXRlbShX
SS5VSVN0cmluZygiQ2hpbGQiKSwgdGhpcy5fYWRkSFRNTC5iaW5kKHRoaXMpLCBmb3JiaWRkZW5D
bG9zaW5nVGFnIHx8ICFpc0VkaXRhYmxlTm9kZSk7Ci0gICAgICAgIHN1Yk1lbnVzLmFkZC5hcHBl
bmRJdGVtKFdJLlVJU3RyaW5nKCJQcmV2aW91cyBTaWJsaW5nIiksIHRoaXMuX2FkZFByZXZpb3Vz
U2libGluZy5iaW5kKHRoaXMpLCAhaXNFZGl0YWJsZU5vZGUpOwotICAgICAgICBzdWJNZW51cy5h
ZGQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiTmV4dCBTaWJsaW5nIiksIHRoaXMuX2FkZE5leHRT
aWJsaW5nLmJpbmQodGhpcyksICFpc0VkaXRhYmxlTm9kZSk7CisgICAgICAgIHN1Yk1lbnVzLmFk
ZC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJQcmV2aW91cyBTaWJsaW5nIiwgIlByZXZpb3VzIFNp
YmxpbmcgQCBFbGVtZW50IiwgIkNvbnRleHQgbWVudSB0byBhZGQgYW4gZWxlbWVudCBiZWZvcmUg
dGhlIHNlbGVjdGVkIGVsZW1lbnQiKSwgdGhpcy5fYWRkUHJldmlvdXNTaWJsaW5nLmJpbmQodGhp
cyksICFpc0VkaXRhYmxlTm9kZSk7CisgICAgICAgIHN1Yk1lbnVzLmFkZC5hcHBlbmRJdGVtKFdJ
LlVJU3RyaW5nKCJOZXh0IFNpYmxpbmciLCAiTmV4dCBTaWJsaW5nIEAgRWxlbWVudCIsICJDb250
ZXh0IG1lbnUgdG8gYWRkIGFuIGVsZW1lbnQgYWZ0ZXIgdGhlIHNlbGVjdGVkIGVsZW1lbnQiKSwg
dGhpcy5fYWRkTmV4dFNpYmxpbmcuYmluZCh0aGlzKSwgIWlzRWRpdGFibGVOb2RlKTsKIAogICAg
ICAgICBzdWJNZW51cy5lZGl0LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIkhUTUwiKSwgdGhpcy5f
ZWRpdEFzSFRNTC5iaW5kKHRoaXMpLCAhdGhpcy5lZGl0YWJsZSk7CiAgICAgICAgIHN1Yk1lbnVz
LmNvcHkuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiSFRNTCIpLCB0aGlzLl9jb3B5SFRNTC5iaW5k
KHRoaXMpLCBub2RlLmlzUHNldWRvRWxlbWVudCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RlYnVnZ2VyU2lkZWJhclBhbmVsLmpzIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGVidWdnZXJTaWRlYmFy
UGFuZWwuanMKaW5kZXggNmY0OTk0MmM5NDguLjM4Y2Q5NDkwZWNiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EZWJ1Z2dlclNpZGViYXJQYW5l
bC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EZWJ1
Z2dlclNpZGViYXJQYW5lbC5qcwpAQCAtNDcxLDEzICs0NzEsMTMgQEAgV0kuRGVidWdnZXJTaWRl
YmFyUGFuZWwgPSBjbGFzcyBEZWJ1Z2dlclNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5hdmlnYXRp
b25TaWRlYmEKIAogICAgICAgICBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZGVidWdnZXJNYW5hZ2Vy
LmFsbEV4Y2VwdGlvbnNCcmVha3BvaW50KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFt
ZSA9IFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsLkV4Y2VwdGlvbkljb25TdHlsZUNsYXNzTmFtZTsK
LSAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiQWxsIEV4Y2VwdGlvbnMi
KTsKKyAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiQWxsIEV4Y2VwdGlv
bnMiLCAiQWxsIEV4Y2VwdGlvbnMgQCBEZWJ1Z2dlciIsICJCcmVhayAocGF1c2UpIG9uIGFsbCBl
eGNlcHRpb25zIik7CiAgICAgICAgIH0gZWxzZSBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZGVidWdn
ZXJNYW5hZ2VyLnVuY2F1Z2h0RXhjZXB0aW9uc0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgIG9w
dGlvbnMuY2xhc3NOYW1lID0gV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwuRXhjZXB0aW9uSWNvblN0
eWxlQ2xhc3NOYW1lOwotICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5nKCJV
bmNhdWdodCBFeGNlcHRpb25zIik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlT
dHJpbmcoIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiLCAiVW5jYXVnaHQgRXhjZXB0aW9ucyBAIERlYnVn
Z2VyIiwgIkJyZWFrIChwYXVzZSkgb24gZXZlcnkgdW5jYXVnaHQgKHVuaGFuZGxlZCkgZXhjZXB0
aW9ucyIpOwogICAgICAgICB9IGVsc2UgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRlYnVnZ2VyTWFu
YWdlci5hc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgIG9wdGlvbnMu
Y2xhc3NOYW1lID0gV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwuQXNzZXJ0aW9uSWNvblN0eWxlQ2xh
c3NOYW1lOwotICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5nKCJBc3NlcnRp
b24gRmFpbHVyZXMiKTsKKyAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygi
QXNzZXJ0aW9uIEZhaWx1cmVzIiwgIkFzc2VydGlvbiBGYWlsdXJlcyBAIERlYnVnZ2VyIiwgIkJy
ZWFrIHdoZW4gY29uc29sZS5hc3NlcnQoKSBmYWlscyIpOwogICAgICAgICB9IGVsc2UgaWYgKGJy
ZWFrcG9pbnQgaW5zdGFuY2VvZiBXSS5ET01CcmVha3BvaW50KSB7CiAgICAgICAgICAgICBpZiAo
IWJyZWFrcG9pbnQuZG9tTm9kZUlkZW50aWZpZXIpCiAgICAgICAgICAgICAgICAgcmV0dXJuIG51
bGw7CkBAIC00OTYsNyArNDk2LDcgQEAgV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwgPSBjbGFzcyBE
ZWJ1Z2dlclNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5hdmlnYXRpb25TaWRlYmEKIAogICAgICAg
ICAgICAgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRvbURlYnVnZ2VyTWFuYWdlci5hbGxSZXF1ZXN0
c0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9IFdJLkRl
YnVnZ2VyU2lkZWJhclBhbmVsLkFzc2VydGlvbkljb25TdHlsZUNsYXNzTmFtZTsKLSAgICAgICAg
ICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIpOworICAg
ICAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiQWxsIFJlcXVlc3RzIiwg
IkFsbCBSZXF1ZXN0cyBAIEJyZWFrIG9uIiwgIkEgc3VibWVudSBvZiAnQnJlYWsgb24nIik7CiAg
ICAgICAgICAgICB9CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBsZXQgc291cmNlQ29k
ZSA9IGJyZWFrcG9pbnQuc291cmNlQ29kZUxvY2F0aW9uICYmIGJyZWFrcG9pbnQuc291cmNlQ29k
ZUxvY2F0aW9uLmRpc3BsYXlTb3VyY2VDb2RlOwpAQCAtMTQxOSw3ICsxNDE5LDcgQEAgV0kuRGVi
dWdnZXJTaWRlYmFyUGFuZWwgPSBjbGFzcyBEZWJ1Z2dlclNpZGViYXJQYW5lbCBleHRlbmRzIFdJ
Lk5hdmlnYXRpb25TaWRlYmEKICAgICAgICAgaWYgKEluc3BlY3RvckJhY2tlbmQuZG9tYWlucy5E
ZWJ1Z2dlci5zZXRQYXVzZU9uQXNzZXJ0aW9ucykgewogICAgICAgICAgICAgbGV0IGFzc2VydGlv
bkZhaWx1cmVzQnJlYWtwb2ludFNob3duID0gV0kuc2V0dGluZ3Muc2hvd0Fzc2VydGlvbkZhaWx1
cmVzQnJlYWtwb2ludC52YWx1ZTsKIAotICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hl
Y2tib3hJdGVtKFdJLlVJU3RyaW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiKSwgKCkgPT4geworICAg
ICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2tib3hJdGVtKFdJLlVJU3RyaW5nKCJBc3Nl
cnRpb24gRmFpbHVyZXMiLCAiQXNzZXJ0aW9uIEZhaWx1cmVzIEAgRGVidWdnZXIiLCAiQnJlYWsg
d2hlbiBjb25zb2xlLmFzc2VydCgpIGZhaWxzIiksICgpID0+IHsKICAgICAgICAgICAgICAgICBp
ZiAoYXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50U2hvd24pCiAgICAgICAgICAgICAgICAgICAg
IFdJLmRlYnVnZ2VyTWFuYWdlci5yZW1vdmVCcmVha3BvaW50KFdJLmRlYnVnZ2VyTWFuYWdlci5h
c3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnQpOwogICAgICAgICAgICAgICAgIGVsc2UgewpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJU
cmVlRGV0YWlsc1NpZGViYXJQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL0xheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwuanMKaW5kZXggMmI2NTEz
YTdmZDIuLmMxYWQ2ZmFhNGNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsLmpzCisrKyBiL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0xheWVyVHJlZURldGFpbHNT
aWRlYmFyUGFuZWwuanMKQEAgLTEzNiw3ICsxMzYsNyBAQCBXSS5MYXllclRyZWVEZXRhaWxzU2lk
ZWJhclBhbmVsID0gY2xhc3MgTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbCBleHRlbmRzIFdJ
LgogICAgICAgICBjb2x1bW5zLm5hbWUudGl0bGUgPSBXSS5VSVN0cmluZygiTm9kZSIpOwogICAg
ICAgICBjb2x1bW5zLm5hbWUuc29ydGFibGUgPSBmYWxzZTsKIAotICAgICAgICBjb2x1bW5zLnBh
aW50Q291bnQudGl0bGUgPSBXSS5VSVN0cmluZygiUGFpbnRzIik7CisgICAgICAgIGNvbHVtbnMu
cGFpbnRDb3VudC50aXRsZSA9IFdJLlVJU3RyaW5nKCJQYWludHMiLCAiUGFpbnRzIEAgQ29sdW1u
IHRpdGxlIiwgIkEgY291bnQgb2YgaG93IG1hbnkgdGltZXMgYW4gZWxlbWVudCB3YXMgcGFpbnRl
ZCAocmVuZGVyZWQpIik7CiAgICAgICAgIGNvbHVtbnMucGFpbnRDb3VudC5zb3J0YWJsZSA9IHRy
dWU7CiAgICAgICAgIGNvbHVtbnMucGFpbnRDb3VudC5hbGlnbmVkID0gInJpZ2h0IjsKICAgICAg
ICAgY29sdW1ucy5wYWludENvdW50LndpZHRoID0gIjcwcHgiOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTmV0d29ya1RhYmxlQ29udGVudFZp
ZXcuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9OZXR3b3Jr
VGFibGVDb250ZW50Vmlldy5qcwppbmRleCAzNmI3ZDBlNmY3Yi4uYTJhYzNhNGRlMjYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL05ldHdvcmtU
YWJsZUNvbnRlbnRWaWV3LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL05ldHdvcmtUYWJsZUNvbnRlbnRWaWV3LmpzCkBAIC0xMDY0LDcgKzEwNjQsNyBA
QCBXSS5OZXR3b3JrVGFibGVDb250ZW50VmlldyA9IGNsYXNzIE5ldHdvcmtUYWJsZUNvbnRlbnRW
aWV3IGV4dGVuZHMgV0kuQ29udGVudFZpZQogICAgICAgICAgICAgYWxpZ246ICJyaWdodCIsCiAg
ICAgICAgIH0pOwogCi0gICAgICAgIHRoaXMuX3RyYW5zZmVyU2l6ZUNvbHVtbiA9IG5ldyBXSS5U
YWJsZUNvbHVtbigidHJhbnNmZXJTaXplIiwgV0kuVUlTdHJpbmcoIlRyYW5zZmVyIFNpemUiKSwg
eworICAgICAgICB0aGlzLl90cmFuc2ZlclNpemVDb2x1bW4gPSBuZXcgV0kuVGFibGVDb2x1bW4o
InRyYW5zZmVyU2l6ZSIsIFdJLlVJU3RyaW5nKCJUcmFuc2ZlciBTaXplIiwgIlRyYW5zZmVyIFNp
emUgQCBOZXR3b3JrIiwgIkFtb3VudCBvZiBkYXRhIHNlbnQgb3ZlciB0aGUgbmV0d29yayIpLCB7
CiAgICAgICAgICAgICBtaW5XaWR0aDogMTAwLAogICAgICAgICAgICAgbWF4V2lkdGg6IDE1MCwK
ICAgICAgICAgICAgIGluaXRpYWxXaWR0aDogMTAwLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvT2JqZWN0VHJlZUJhc2VUcmVlRWxlbWVudC5q
cyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL09iamVjdFRyZWVC
YXNlVHJlZUVsZW1lbnQuanMKaW5kZXggN2Y5MWY0YzY0MDcuLmQ4ZjVjOGMzOTQ4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9PYmplY3RUcmVl
QmFzZVRyZWVFbGVtZW50LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL09iamVjdFRyZWVCYXNlVHJlZUVsZW1lbnQuanMKQEAgLTI1MCwxNCArMjUwLDE0
IEBAIFdJLk9iamVjdFRyZWVCYXNlVHJlZUVsZW1lbnQgPSBjbGFzcyBPYmplY3RUcmVlQmFzZVRy
ZWVFbGVtZW50IGV4dGVuZHMgV0kuR2VuZXJhCiAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAg
ICAgICB9KTsKIAotICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmlu
ZygiU2Nyb2xsIEludG8gVmlldyIpLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIGNvbnRleHRN
ZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlNjcm9sbCBpbnRvIFZpZXciLCAiU2Nyb2xsIGlu
dG8gVmlldyBAIENvbnRleHQgbWVudSIsICJTY3JvbGwgc2VsZWN0ZWQgRE9NIG5vZGUgaW50byB2
aWV3IG9uIHRoZSBpbnNwZWN0ZWQgd2ViIHBhZ2UiKSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAg
ICAgICAgZnVuY3Rpb24gc2Nyb2xsSW50b1ZpZXcoKSB7IHRoaXMuc2Nyb2xsSW50b1ZpZXdJZk5l
ZWRlZCh0cnVlKTsgfQogICAgICAgICAgICAgICAgIHJlc29sdmVkVmFsdWUuY2FsbEZ1bmN0aW9u
KHNjcm9sbEludG9WaWV3LCB1bmRlZmluZWQsIGZhbHNlLCBmdW5jdGlvbigpIHt9KTsKICAgICAg
ICAgICAgIH0pOwogCiAgICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRTZXBhcmF0b3IoKTsK
IAotICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiUmV2ZWFs
IGluIERPTSBUcmVlIiksIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgY29udGV4dE1lbnUuYXBw
ZW5kSXRlbShXSS5VSVN0cmluZygiUmV2ZWFsIGluIERPTSBUcmVlIiwgIlJldmVhbCBpbiBET00g
VHJlZSBAIENvbnRleHQgbWVudSIsICJPcGVuIEVsZW1lbnRzIHRhYiBhbmQgc2VsZWN0IHRoaXMg
bm9kZSBpbiBET00gdHJlZSIpLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICByZXNvbHZl
ZFZhbHVlLnB1c2hOb2RlVG9Gcm9udGVuZChmdW5jdGlvbihub2RlSWQpIHsKICAgICAgICAgICAg
ICAgICAgICAgV0kuZG9tTWFuYWdlci5pbnNwZWN0RWxlbWVudChub2RlSWQpOwogICAgICAgICAg
ICAgICAgIH0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvUnVsZXNTdHlsZURldGFpbHNTaWRlYmFyUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9SdWxlc1N0eWxlRGV0YWlsc1NpZGViYXJQYW5l
bC5qcwppbmRleCAzZGRmMzZmYmFhNC4uZDY4NWQ2NjEzNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1J1bGVzU3R5bGVEZXRhaWxzU2lkZWJh
clBhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdz
L1J1bGVzU3R5bGVEZXRhaWxzU2lkZWJhclBhbmVsLmpzCkBAIC0yNyw2ICsyNyw2IEBAIFdJLlJ1
bGVzU3R5bGVEZXRhaWxzU2lkZWJhclBhbmVsID0gY2xhc3MgUnVsZXNTdHlsZURldGFpbHNTaWRl
YmFyUGFuZWwgZXh0ZW5kcyBXCiB7CiAgICAgY29uc3RydWN0b3IoKQogICAgIHsKLSAgICAgICAg
c3VwZXIoInN0eWxlLXJ1bGVzIiwgV0kuVUlTdHJpbmcoIlN0eWxlcyIpLCBXSS5TcHJlYWRzaGVl
dFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwpOworICAgICAgICBzdXBlcigic3R5bGUtcnVsZXMiLCBX
SS5VSVN0cmluZygiU3R5bGVzIiwgIlN0eWxlcyBAIEVsZW1lbnRzIiwgIlRhYiBuYW1lIGZvciBD
U1Mgc3R5bGUgcnVsZXMiKSwgV0kuU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWlsc1BhbmVsKTsK
ICAgICB9CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5l
bC5qcwppbmRleCBmMGU1N2IyNzVmMC4uNDVjZjFlYTE4NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZXNOYXZpZ2F0aW9uU2lkZWJh
clBhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdz
L1NvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmpzCkBAIC03ODEsMTMgKzc4MSwxMyBAQCBX
SS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNzIFNvdXJjZXNOYXZpZ2F0aW9u
U2lkZWJhclBhbmVsIGV4dGVuZHMgVwogCiAgICAgICAgIGlmIChicmVha3BvaW50ID09PSBXSS5k
ZWJ1Z2dlck1hbmFnZXIuYWxsRXhjZXB0aW9uc0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgIG9w
dGlvbnMuY2xhc3NOYW1lID0gImJyZWFrcG9pbnQtZXhjZXB0aW9uLWljb24iOwotICAgICAgICAg
ICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5nKCJBbGwgRXhjZXB0aW9ucyIpOworICAgICAg
ICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5nKCJBbGwgRXhjZXB0aW9ucyIsICJBbGwg
RXhjZXB0aW9ucyBAIERlYnVnZ2VyIiwgIkJyZWFrIChwYXVzZSkgb24gYWxsIGV4Y2VwdGlvbnMi
KTsKICAgICAgICAgfSBlbHNlIGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIu
dW5jYXVnaHRFeGNlcHRpb25zQnJlYWtwb2ludCkgewogICAgICAgICAgICAgb3B0aW9ucy5jbGFz
c05hbWUgPSAiYnJlYWtwb2ludC1leGNlcHRpb24taWNvbiI7Ci0gICAgICAgICAgICBvcHRpb25z
LnRpdGxlID0gV0kuVUlTdHJpbmcoIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiKTsKKyAgICAgICAgICAg
IG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiVW5jYXVnaHQgRXhjZXB0aW9ucyIsICJVbmNh
dWdodCBFeGNlcHRpb25zIEAgRGVidWdnZXIiLCAiQnJlYWsgKHBhdXNlKSBvbiBldmVyeSB1bmNh
dWdodCAodW5oYW5kbGVkKSBleGNlcHRpb25zIik7CiAgICAgICAgIH0gZWxzZSBpZiAoYnJlYWtw
b2ludCA9PT0gV0kuZGVidWdnZXJNYW5hZ2VyLmFzc2VydGlvbkZhaWx1cmVzQnJlYWtwb2ludCkg
ewogICAgICAgICAgICAgb3B0aW9ucy5jbGFzc05hbWUgPSAiYnJlYWtwb2ludC1hc3NlcnRpb24t
aWNvbiI7Ci0gICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmcoIkFzc2VydGlv
biBGYWlsdXJlcyIpOworICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5nKCJB
c3NlcnRpb24gRmFpbHVyZXMiLCAiQXNzZXJ0aW9uIEZhaWx1cmVzIEAgRGVidWdnZXIiLCAiQnJl
YWsgd2hlbiBjb25zb2xlLmFzc2VydCgpIGZhaWxzIik7CiAgICAgICAgIH0gZWxzZSBpZiAoYnJl
YWtwb2ludCBpbnN0YW5jZW9mIFdJLkRPTUJyZWFrcG9pbnQpIHsKICAgICAgICAgICAgIGlmICgh
YnJlYWtwb2ludC5kb21Ob2RlSWRlbnRpZmllcikKICAgICAgICAgICAgICAgICByZXR1cm4gbnVs
bDsKQEAgLTEzMjIsNyArMTMyMiw3IEBAIFdJLlNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVs
ID0gY2xhc3MgU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwgZXh0ZW5kcyBXCiAgICAgICAg
IGlmIChJbnNwZWN0b3JCYWNrZW5kLmRvbWFpbnMuRGVidWdnZXIuc2V0UGF1c2VPbkFzc2VydGlv
bnMpIHsKICAgICAgICAgICAgIGxldCBhc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnRTaG93biA9
IFdJLnNldHRpbmdzLnNob3dBc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnQudmFsdWU7CiAKLSAg
ICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZENoZWNrYm94SXRlbShXSS5VSVN0cmluZygiQXNz
ZXJ0aW9uIEZhaWx1cmVzIiksICgpID0+IHsKKyAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVu
ZENoZWNrYm94SXRlbShXSS5VSVN0cmluZygiQXNzZXJ0aW9uIEZhaWx1cmVzIiwgIkFzc2VydGlv
biBGYWlsdXJlcyBAIERlYnVnZ2VyIiwgIkJyZWFrIHdoZW4gY29uc29sZS5hc3NlcnQoKSBmYWls
cyIpLCAoKSA9PiB7CiAgICAgICAgICAgICAgICAgaWYgKGFzc2VydGlvbkZhaWx1cmVzQnJlYWtw
b2ludFNob3duKQogICAgICAgICAgICAgICAgICAgICBXSS5kZWJ1Z2dlck1hbmFnZXIucmVtb3Zl
QnJlYWtwb2ludChXSS5kZWJ1Z2dlck1hbmFnZXIuYXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50
KTsKICAgICAgICAgICAgICAgICBlbHNlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNl
Y3Rpb24uanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJl
YWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9uLmpzCmluZGV4IGVkNDA4Y2UyMWZkLi44
ZTQ3NGUwMjc1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlvbi5qcworKysgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldENTU1N0
eWxlRGVjbGFyYXRpb25TZWN0aW9uLmpzCkBAIC0zMTQsNyArMzE0LDcgQEAgV0kuU3ByZWFkc2hl
ZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlvbiA9IGNsYXNzIFNwcmVhZHNoZWV0Q1NTU3R5bGVE
ZWNsYXJhdGlvblMKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgV0kuQ1NTU3R5
bGVEZWNsYXJhdGlvbi5UeXBlLklubGluZToKLSAgICAgICAgICAgIHRoaXMuX3NlbGVjdG9yRWxl
bWVudC50ZXh0Q29udGVudCA9IFdJLlVJU3RyaW5nKCJTdHlsZSBBdHRyaWJ1dGUiKTsKKyAgICAg
ICAgICAgIHRoaXMuX3NlbGVjdG9yRWxlbWVudC50ZXh0Q29udGVudCA9IFdJLlVJU3RyaW5nKCJT
dHlsZSBBdHRyaWJ1dGUiLCAiU3R5bGUgQXR0cmlidXRlIEAgRWxlbWVudHMiLCAiQ1NTIHByb3Bl
cnRpZXMgZGVmaW5lZCB2aWEgSFRNTCBzdHlsZSBhdHRyaWJ1dGUiKTsKICAgICAgICAgICAgIHRo
aXMuX3NlbGVjdG9yRWxlbWVudC5jbGFzc0xpc3QuYWRkKCJzdHlsZS1hdHRyaWJ1dGUiKTsKICAg
ICAgICAgICAgIGJyZWFrOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwuanMgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldFJ1bGVz
U3R5bGVEZXRhaWxzUGFuZWwuanMKaW5kZXggM2Y5OWFhMDkxMzIuLjc2OWRmOTRmMzk3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRz
aGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWlsc1BhbmVsLmpz
CkBAIC0yNDgsNyArMjQ4LDcgQEAgV0kuU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWlsc1BhbmVs
ID0gY2xhc3MgU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWlsc1BhbmVsIGUKIAogICAgICAgICBm
b3IgKGxldCBzdHlsZSBvZiB0aGlzLm5vZGVTdHlsZXMudW5pcXVlT3JkZXJlZFN0eWxlcykgewog
ICAgICAgICAgICAgaWYgKHN0eWxlLmluaGVyaXRlZCAmJiAoIXByZXZpb3VzU3R5bGUgfHwgcHJl
dmlvdXNTdHlsZS5ub2RlICE9PSBzdHlsZS5ub2RlKSkKLSAgICAgICAgICAgICAgICBjcmVhdGVI
ZWFkZXIoV0kuVUlTdHJpbmcoIkluaGVyaXRlZCBGcm9tIiksIHN0eWxlLm5vZGUpOworICAgICAg
ICAgICAgICAgIGNyZWF0ZUhlYWRlcihXSS5VSVN0cmluZygiSW5oZXJpdGVkIEZyb20iLCAiSW5o
ZXJpdGVkIEZyb20gQCBFbGVtZW50cyIsICJBIHNlY3Rpb24gb2YgQ1NTIHJ1bGVzIGluaGVyaXRl
ZCBmcm9tIGFub3RoZXIgQ1NTIHJ1bGUiKSwgc3R5bGUubm9kZSk7CiAKICAgICAgICAgICAgIGNy
ZWF0ZVNlY3Rpb24oc3R5bGUpOwogICAgICAgICB9Cg==
</data>
<flag name="review"
          id="379888"
          type_id="1"
          status="-"
          setter="nvasilyev"
    />
    <flag name="commit-queue"
          id="379889"
          type_id="3"
          status="-"
          setter="nvasilyev"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>367154</attachid>
            <date>2019-04-10 13:21:42 -0700</date>
            <delta_ts>2019-04-10 13:30:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>41896</size>
            <attacher name="Nikita Vasilyev">nvasilyev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IGE5ZjJmMTFlYjkzLi5lNjdjYzUyZjE5MiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMTktMDQtMTAgIE5pa2l0
YSBWYXNpbHlldiAgPG52YXNpbHlldkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogUHJvdmlkZSBVSVN0cmluZyBkZXNjcmlwdGlvbnMgdG8gaW1wcm92ZSBsb2NhbGl6YXRpb25z
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUxMzIK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ4NDU3ODE3PgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2Nh
bGl6ZWRTdHJpbmdzLmpzOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvQmFzZS9Mb2FkTG9jYWxp
emVkU3RyaW5ncy5qczoKKyAgICAgICAgKFdJLnJlcGVhdGluZ1VJU3RyaW5nKToKKyAgICAgICAg
KiBVc2VySW50ZXJmYWNlL01vZGVscy9MYXlvdXRUaW1lbGluZVJlY29yZC5qczoKKyAgICAgICAg
KFdJLkxheW91dFRpbWVsaW5lUmVjb3JkLmRpc3BsYXlOYW1lRm9yRXZlbnRUeXBlKToKKyAgICAg
ICAgKiBVc2VySW50ZXJmYWNlL01vZGVscy9SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpz
OgorICAgICAgICAoV0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5kaXNwbGF5TmFtZUZv
clRhc2tUeXBlKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL01vZGVscy9SZXNvdXJjZS5qczoK
KyAgICAgICAgKFdJLlJlc291cmNlLmRpc3BsYXlOYW1lRm9yVHlwZSk6CisgICAgICAgICogVXNl
ckludGVyZmFjZS9WaWV3cy9DUFVUaW1lbGluZVZpZXcuanM6CisgICAgICAgIChXSS5DUFVUaW1l
bGluZVZpZXcuZGlzcGxheU5hbWVGb3JTYW1wbGVUeXBlKToKKyAgICAgICAgKiBVc2VySW50ZXJm
YWNlL1ZpZXdzL0NvbnRleHRNZW51VXRpbGl0aWVzLmpzOgorICAgICAgICAqIFVzZXJJbnRlcmZh
Y2UvVmlld3MvRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50LmpzOgorICAgICAgICAoV0kuRE9NQnJl
YWtwb2ludFRyZWVFbGVtZW50LmRpc3BsYXlOYW1lRm9yVHlwZSk6CisgICAgICAgICogVXNlcklu
dGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJlZUVsZW1lbnQuanM6CisgICAgICAgIChXSS5ET01Ob2Rl
VHJlZUVsZW1lbnQucHJvdG90eXBlLnBvcHVsYXRlQ29udGV4dE1lbnUpOgorICAgICAgICAoV0ku
RE9NTm9kZVRyZWVFbGVtZW50KToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRy
ZWVFbGVtZW50LmpzOgorICAgICAgICAoV0kuRE9NVHJlZUVsZW1lbnQucHJvdG90eXBlLl9wb3B1
bGF0ZVRhZ0NvbnRleHRNZW51KToKKyAgICAgICAgKFdJLkRPTVRyZWVFbGVtZW50LnByb3RvdHlw
ZS5fcG9wdWxhdGVOb2RlQ29udGV4dE1lbnUpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmll
d3MvRGVidWdnZXJTaWRlYmFyUGFuZWwuanM6CisgICAgICAgIChXSS5EZWJ1Z2dlclNpZGViYXJQ
YW5lbC5wcm90b3R5cGUuX2FkZEJyZWFrcG9pbnQpOgorICAgICAgICAoV0kuRGVidWdnZXJTaWRl
YmFyUGFuZWwucHJvdG90eXBlLl9oYW5kbGVDcmVhdGVCcmVha3BvaW50Q2xpY2tlZCk6CisgICAg
ICAgIChXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9W
aWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsLmpzOgorICAgICAgICAoV0kuTGF5ZXJU
cmVlRGV0YWlsc1NpZGViYXJQYW5lbC5wcm90b3R5cGUuX2J1aWxkRGF0YUdyaWRTZWN0aW9uKToK
KyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL05ldHdvcmtUYWJsZUNvbnRlbnRWaWV3Lmpz
OgorICAgICAgICAoV0kuTmV0d29ya1RhYmxlQ29udGVudFZpZXcuc2hvcnREaXNwbGF5TmFtZUZv
clJlc291cmNlVHlwZSk6CisgICAgICAgIChXSS5OZXR3b3JrVGFibGVDb250ZW50Vmlldy5wcm90
b3R5cGUuaW5pdGlhbExheW91dCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9PYmpl
Y3RUcmVlQmFzZVRyZWVFbGVtZW50LmpzOgorICAgICAgICBEcml2ZS1ieTogIkludG8iIHNob3Vs
ZG4ndCBiZSBjYXBpdGFsaXplZC4KKworICAgICAgICAoV0kuT2JqZWN0VHJlZUJhc2VUcmVlRWxl
bWVudC5wcm90b3R5cGUuX2FwcGVuZE1lbnVzSXRlbXNGb3JPYmplY3QpOgorICAgICAgICAoV0ku
T2JqZWN0VHJlZUJhc2VUcmVlRWxlbWVudCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3
cy9Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbC5qczoKKyAgICAgICAgKFdJLlNvdXJjZXNO
YXZpZ2F0aW9uU2lkZWJhclBhbmVsLnByb3RvdHlwZS5fYWRkQnJlYWtwb2ludCk6CisgICAgICAg
IChXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbC5wcm90b3R5cGUuX2hhbmRsZUNyZWF0
ZUJyZWFrcG9pbnRDbGlja2VkKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVh
ZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24uanM6CisgICAgICAgIChXSS5TcHJlYWRz
aGVldENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9uLnByb3RvdHlwZS5fcmVuZGVyU2VsZWN0b3Ip
OgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0
YWlsc1BhbmVsLmpzOgorICAgICAgICAoV0kuU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWlsc1Bh
bmVsLnByb3RvdHlwZS5sYXlvdXQpOgorCiAyMDE5LTAyLTI4ICBOaWtpdGEgVmFzaWx5ZXYgIDxu
dmFzaWx5ZXZAYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IFN0eWxlczogQ29u
dHJvbC1TcGFjZSBzaG91bGQgZm9yY2UgY29tcGxldGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4ubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcyBi
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xvY2FsaXplZFN0
cmluZ3MuanMKaW5kZXggMWZiZDk2MWVkNzUuLmQ5OTE5YTljMTNjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2NhbGl6ZWRTdHJpbmdz
LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xv
Y2FsaXplZFN0cmluZ3MuanMKQEAgLTk4LDggKzk4LDEwIEBAIGxvY2FsaXplZFN0cmluZ3NbIkFk
ZGl0aW9ucyJdID0gIkFkZGl0aW9ucyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBZGRyZXNzIl0gPSAi
QWRkcmVzcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBbGwiXSA9ICJBbGwiOwogbG9jYWxpemVkU3Ry
aW5nc1siQWxsIENoYW5nZXMiXSA9ICJBbGwgQ2hhbmdlcyI7CisvKiBCcmVhayAocGF1c2UpIG9u
IGFsbCBleGNlcHRpb25zICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJBbGwgRXhjZXB0aW9ucyJdID0g
IkFsbCBFeGNlcHRpb25zIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFsbCBMYXllcnMiXSA9ICJBbGwg
TGF5ZXJzIjsKKy8qIEEgc3VibWVudSBvZiAnQnJlYWsgb24nICovCiBsb2NhbGl6ZWRTdHJpbmdz
WyJBbGwgUmVxdWVzdHMiXSA9ICJBbGwgUmVxdWVzdHMiOwogbG9jYWxpemVkU3RyaW5nc1siQWxs
IFJlc291cmNlcyJdID0gIkFsbCBSZXNvdXJjZXMiOwogbG9jYWxpemVkU3RyaW5nc1siQWxsIFN0
b3JhZ2UiXSA9ICJBbGwgU3RvcmFnZSI7CkBAIC0xMjYsMTEgKzEyOCwxMyBAQCBsb2NhbGl6ZWRT
dHJpbmdzWyJBcmVhIl0gPSAiQXJlYSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRpb24iXSA9
ICJBc3NlcnRpb24iOwogbG9jYWxpemVkU3RyaW5nc1siQXNzZXJ0aW9uIEZhaWxlZCJdID0gIkFz
c2VydGlvbiBGYWlsZWQiOwogbG9jYWxpemVkU3RyaW5nc1siQXNzZXJ0aW9uIEZhaWxlZDogJXMi
XSA9ICJBc3NlcnRpb24gRmFpbGVkOiAlcyI7CisvKiBCcmVhayB3aGVuIGNvbnNvbGUuYXNzZXJ0
KCkgZmFpbHMgKi8KIGxvY2FsaXplZFN0cmluZ3NbIkFzc2VydGlvbiBGYWlsdXJlcyJdID0gIkFz
c2VydGlvbiBGYWlsdXJlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRpb24gd2l0aCBtZXNz
YWdlOiAlcyJdID0gIkFzc2VydGlvbiB3aXRoIG1lc3NhZ2U6ICVzIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkFzc2VydGl2ZSJdID0gIkFzc2VydGl2ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3luYyBh
dWRpdHMgYXJlIG5vdCBzdXBwb3J0ZWQuIl0gPSAiQXN5bmMgYXVkaXRzIGFyZSBub3Qgc3VwcG9y
dGVkLiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBdHRyaWJ1dGUiXSA9ICJBdHRyaWJ1dGUiOworLyog
QSBzdWJtZW51IG9mICdCcmVhayBPbicgKi8KIGxvY2FsaXplZFN0cmluZ3NbIkF0dHJpYnV0ZSBN
b2RpZmllZCJdID0gIkF0dHJpYnV0ZSBNb2RpZmllZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBdHRy
aWJ1dGVzIl0gPSAiQXR0cmlidXRlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBdWRpdCJdID0gIkF1
ZGl0IjsKQEAgLTE4Niw2ICsxOTAsNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJDYW52YXMgJWQiXSA9
ICJDYW52YXMgJWQiOwogbG9jYWxpemVkU3RyaW5nc1siQ2FudmFzICVzIl0gPSAiQ2FudmFzICVz
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkNhbnZhcyBFbGVtZW50Il0gPSAiQ2FudmFzIEVsZW1lbnQi
OwogbG9jYWxpemVkU3RyaW5nc1siQ2FudmFzZXMiXSA9ICJDYW52YXNlcyI7CisvKiBDYXB0dXJl
IFNjcmVlbnNob3Qgb2YgdGhlIHNlbGVjdGVkIERPTSBub2RlICovCiBsb2NhbGl6ZWRTdHJpbmdz
WyJDYXB0dXJlIFNjcmVlbnNob3QiXSA9ICJDYXB0dXJlIFNjcmVlbnNob3QiOwogbG9jYWxpemVk
U3RyaW5nc1siQ2FwdHVyaW5nIl0gPSAiQ2FwdHVyaW5nIjsKIC8qIENvbnRleHQgbWVudSBsYWJl
bCBmb3Igd2hldGhlciBzZWFyY2hlcyBzaG91bGQgYmUgY2FzZSBzZW5zaXRpdmUuICovCkBAIC0x
OTksNiArMjA0LDcgQEAgbG9jYWxpemVkU3RyaW5nc1siQ2hhbmdlcyJdID0gIkNoYW5nZXMiOwog
bG9jYWxpemVkU3RyaW5nc1siQ2hhcmFjdGVyIERhdGEiXSA9ICJDaGFyYWN0ZXIgRGF0YSI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJDaGFyZ2UgXHUyMDFDJXNcdTIwMUQgdG8gQ2FsbGVycyJdID0gIkNo
YXJnZSBcdTIwMUMlc1x1MjAxRCB0byBDYWxsZXJzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNoZWNr
ZWQiXSA9ICJDaGVja2VkIjsKKy8qIEEgc3VibWVudSBvZiAnQWRkJyAqLwogbG9jYWxpemVkU3Ry
aW5nc1siQ2hpbGQiXSA9ICJDaGlsZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDaGlsZCBMYXllcnMi
XSA9ICJDaGlsZCBMYXllcnMiOwogbG9jYWxpemVkU3RyaW5nc1siQ2hpbGQgYWRkZWQgdG8gIl0g
PSAiQ2hpbGQgYWRkZWQgdG8gIjsKQEAgLTIzMiw3ICsyMzgsOCBAQCBsb2NhbGl6ZWRTdHJpbmdz
WyJDb2xsZWN0IGdhcmJhZ2UiXSA9ICJDb2xsZWN0IGdhcmJhZ2UiOwogbG9jYWxpemVkU3RyaW5n
c1siQ29tbWVudCJdID0gIkNvbW1lbnQiOwogbG9jYWxpemVkU3RyaW5nc1siQ29tcGFyZSBzbmFw
c2hvdHMiXSA9ICJDb21wYXJlIHNuYXBzaG90cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wYXJp
c29uIG9mIHRvdGFsIG1lbW9yeSBzaXplIGF0IHRoZSBlbmQgb2YgdGhlIHNlbGVjdGVkIHRpbWUg
cmFuZ2UgdG8gdGhlIG1heGltdW0gbWVtb3J5IHNpemUgaW4gdGhpcyByZWNvcmRpbmciXSA9ICJD
b21wYXJpc29uIG9mIHRvdGFsIG1lbW9yeSBzaXplIGF0IHRoZSBlbmQgb2YgdGhlIHNlbGVjdGVk
IHRpbWUgcmFuZ2UgdG8gdGhlIG1heGltdW0gbWVtb3J5IHNpemUgaW4gdGhpcyByZWNvcmRpbmci
OwotbG9jYWxpemVkU3RyaW5nc1siQ29tcG9zaXRlIl0gPSAiQ29tcG9zaXRlIjsKKy8qIENvbXBv
c2l0ZSBwaGFzZSByZWNvcmRzLCB3aGVyZSBncmFwaGljIGxheWVycyBhcmUgY29tYmluZWQgKi8K
K2xvY2FsaXplZFN0cmluZ3NbIkNvbXBvc2l0ZSBAIFRpbWVsaW5lIHJlY29yZCJdID0gIkNvbXBv
c2l0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wb3NpdGVkIl0gPSAiQ29tcG9zaXRlZCI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJDb21wcmVzc2VkIl0gPSAiQ29tcHJlc3NlZCI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJDb21wcmVzc2lvbiJdID0gIkNvbXByZXNzaW9uIjsKQEAgLTQ0Miw3ICs0NDksOSBA
QCBsb2NhbGl6ZWRTdHJpbmdzWyJFeHRyYSBTY3JpcHRzIl0gPSAiRXh0cmEgU2NyaXB0cyI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJGYWRlIHVuZXhlY3V0ZWQgY29kZSJdID0gIkZhZGUgdW5leGVjdXRl
ZCBjb2RlIjsKIGxvY2FsaXplZFN0cmluZ3NbIkZhaWxlZCB0byB1cGdyYWRlIl0gPSAiRmFpbGVk
IHRvIHVwZ3JhZGUiOwogbG9jYWxpemVkU3RyaW5nc1siRmFpbHVyZSBzdGF0dXMgY29kZSJdID0g
IkZhaWx1cmUgc3RhdHVzIGNvZGUiOworLyogUmVzb3VyY2UgbG9hZGVkIHZpYSAnZmV0Y2gnIG1l
dGhvZCAqLwogbG9jYWxpemVkU3RyaW5nc1siRmV0Y2giXSA9ICJGZXRjaCI7CisvKiBSZXNvdXJj
ZXMgbG9hZGVkIHZpYSAnZmV0Y2gnIG1ldGhvZCAqLwogbG9jYWxpemVkU3RyaW5nc1siRmV0Y2hl
cyJdID0gIkZldGNoZXMiOwogbG9jYWxpemVkU3RyaW5nc1siRmlsZSBvciBSZXNvdXJjZSJdID0g
IkZpbGUgb3IgUmVzb3VyY2UiOwogbG9jYWxpemVkU3RyaW5nc1siRmlsZW5hbWUiXSA9ICJGaWxl
bmFtZSI7CkBAIC00NTgsNyArNDY3LDkgQEAgbG9jYWxpemVkU3RyaW5nc1siRm9udHMiXSA9ICJG
b250cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3JjZSBEYXJrIEFwcGVhcmFuY2UiXSA9ICJGb3Jj
ZSBEYXJrIEFwcGVhcmFuY2UiOwogbG9jYWxpemVkU3RyaW5nc1siRm9yY2UgTGlnaHQgQXBwZWFy
YW5jZSJdID0gIkZvcmNlIExpZ2h0IEFwcGVhcmFuY2UiOwogbG9jYWxpemVkU3RyaW5nc1siRm9y
Y2UgUHJpbnQgTWVkaWEgU3R5bGVzIl0gPSAiRm9yY2UgUHJpbnQgTWVkaWEgU3R5bGVzIjsKKy8q
IExheW91dCBwaGFzZSByZWNvcmRzIHRoYXQgd2VyZSBpbXBlcmF0aXZlIChmb3JjZWQpICovCiBs
b2NhbGl6ZWRTdHJpbmdzWyJGb3JjZWQgTGF5b3V0Il0gPSAiRm9yY2VkIExheW91dCI7CisvKiBB
IGNvbnRleHQgbWVudSB0byBmb3JjZSAob3ZlcnJpZGUpIGVsZW1lbnQncyBwc2V1ZG8tY2xhc3Nl
cyAqLwogbG9jYWxpemVkU3RyaW5nc1siRm9yY2VkIFBzZXVkby1DbGFzc2VzIl0gPSAiRm9yY2Vk
IFBzZXVkby1DbGFzc2VzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkZvcm1hdDogSFNMIl0gPSAiRm9y
bWF0OiBIU0wiOwogbG9jYWxpemVkU3RyaW5nc1siRm9ybWF0OiBIU0xBIl0gPSAiRm9ybWF0OiBI
U0xBIjsKQEAgLTU0MCw2ICs1NTEsNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJJbmRleCBLZXkgXHUy
MDE0ICVzIl0gPSAiSW5kZXggS2V5IFx1MjAxNCAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbmRl
eGVkIERhdGFiYXNlcyJdID0gIkluZGV4ZWQgRGF0YWJhc2VzIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkluZm86ICJdID0gIkluZm86ICI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbmZvcyJdID0gIkluZm9z
IjsKKy8qIEEgc2VjdGlvbiBvZiBDU1MgcnVsZXMgaW5oZXJpdGVkIGZyb20gYW5vdGhlciBDU1Mg
cnVsZSAqLwogbG9jYWxpemVkU3RyaW5nc1siSW5oZXJpdGVkIEZyb20iXSA9ICJJbmhlcml0ZWQg
RnJvbSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbml0aWFsIFN0YXRlIl0gPSAiSW5pdGlhbCBTdGF0
ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbml0aWFsIFZlbG9jaXR5Il0gPSAiSW5pdGlhbCBWZWxv
Y2l0eSI7CkBAIC01NjYsOCArNTc4LDkgQEAgbG9jYWxpemVkU3RyaW5nc1siTGF5ZXIgQ291bnQ6
ICVkIl0gPSAiTGF5ZXIgQ291bnQ6ICVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxheWVyIEluZm8i
XSA9ICJMYXllciBJbmZvIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxheWVycyJdID0gIkxheWVycyI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJMYXllcnM6Il0gPSAiTGF5ZXJzOiI7Ci1sb2NhbGl6ZWRTdHJp
bmdzWyJMYXlvdXQiXSA9ICJMYXlvdXQiOwogbG9jYWxpemVkU3RyaW5nc1siTGF5b3V0ICYgUmVu
ZGVyaW5nIl0gPSAiTGF5b3V0ICYgUmVuZGVyaW5nIjsKKy8qIExheW91dCBwaGFzZSByZWNvcmRz
ICovCitsb2NhbGl6ZWRTdHJpbmdzWyJMYXlvdXQgQCBUaW1lbGluZSByZWNvcmQiXSA9ICJMYXlv
dXQiOwogbG9jYWxpemVkU3RyaW5nc1siTGF5b3V0IEludmFsaWRhdGVkIl0gPSAiTGF5b3V0IElu
dmFsaWRhdGVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxpbmUgJWQiXSA9ICJMaW5lICVkIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIkxpbmUgJWQ6JWQiXSA9ICJMaW5lICVkOiVkIjsKQEAgLTU4NCwxMCAr
NTk3LDEyIEBAIGxvY2FsaXplZFN0cmluZ3NbIkxvY2FsIFZhcmlhYmxlcyJdID0gIkxvY2FsIFZh
cmlhYmxlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2NhdGVkIGF0ICVzIl0gPSAiTG9jYXRlZCBh
dCAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2NhdGlvbiJdID0gIkxvY2F0aW9uIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkxvZyBDYW52YXMgQ29udGV4dCJdID0gIkxvZyBDYW52YXMgQ29udGV4dCI7
CisvKiBMb2cgRE9NIGVsZW1lbnQgdG8gQ29uc29sZSAqLwogbG9jYWxpemVkU3RyaW5nc1siTG9n
IEVsZW1lbnQiXSA9ICJMb2cgRWxlbWVudCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgRnJhbWUg
VGV4dCJdID0gIkxvZyBGcmFtZSBUZXh0IjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBGcmFtZSBW
YWx1ZSJdID0gIkxvZyBGcmFtZSBWYWx1ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgTWVzc2Fn
ZSJdID0gIkxvZyBNZXNzYWdlIjsKKy8qIExvZyBET00gbm9kZSB0byBDb25zb2xlICovCiBsb2Nh
bGl6ZWRTdHJpbmdzWyJMb2cgTm9kZSJdID0gIkxvZyBOb2RlIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkxvZyBTeW1ib2wiXSA9ICJMb2cgU3ltYm9sIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBWYWx1
ZSJdID0gIkxvZyBWYWx1ZSI7CkBAIC02MzAsNiArNjQ1LDcgQEAgbG9jYWxpemVkU3RyaW5nc1si
TmV0d29yayJdID0gIk5ldHdvcmsiOwogbG9jYWxpemVkU3RyaW5nc1siTmV0d29yayBJc3N1ZSJd
ID0gIk5ldHdvcmsgSXNzdWUiOwogbG9jYWxpemVkU3RyaW5nc1siTmV0d29yayBSZXF1ZXN0cyJd
ID0gIk5ldHdvcmsgUmVxdWVzdHMiOwogbG9jYWxpemVkU3RyaW5nc1siTmV3IFRhYiJdID0gIk5l
dyBUYWIiOworLyogQSBzdWJtZW51IG9mICdBZGQnICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJOZXh0
IFNpYmxpbmciXSA9ICJOZXh0IFNpYmxpbmciOwogbG9jYWxpemVkU3RyaW5nc1siTm8iXSA9ICJO
byI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJObyBBY2Nlc3NpYmlsaXR5IEluZm9ybWF0aW9uIl0gPSAi
Tm8gQWNjZXNzaWJpbGl0eSBJbmZvcm1hdGlvbiI7CkBAIC02NjgsNiArNjg0LDcgQEAgbG9jYWxp
emVkU3RyaW5nc1siTm8gcmVxdWVzdCwgc2VydmVkIGZyb20gdGhlIG1lbW9yeSBjYWNoZS4iXSA9
ICJObyByZXF1ZXN0LCBzZXIKIGxvY2FsaXplZFN0cmluZ3NbIk5vIHJlc3BvbnNlIGNvb2tpZXMu
Il0gPSAiTm8gcmVzcG9uc2UgY29va2llcy4iOwogbG9jYWxpemVkU3RyaW5nc1siTm8gcmVzcG9u
c2UgaGVhZGVycyJdID0gIk5vIHJlc3BvbnNlIGhlYWRlcnMiOwogbG9jYWxpemVkU3RyaW5nc1si
Tm9kZSJdID0gIk5vZGUiOworLyogQSBzdWJtZW51IG9mICdCcmVhayBPbicgKi8KIGxvY2FsaXpl
ZFN0cmluZ3NbIk5vZGUgUmVtb3ZlZCJdID0gIk5vZGUgUmVtb3ZlZCI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJOb2RlcyJdID0gIk5vZGVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5vbmUiXSA9ICJOb25l
IjsKQEAgLTcwMiw4ICs3MTksMTEgQEAgbG9jYWxpemVkU3RyaW5nc1siUGFnZSJdID0gIlBhZ2Ui
OwogbG9jYWxpemVkU3RyaW5nc1siUGFnZSBJc3N1ZSJdID0gIlBhZ2UgSXNzdWUiOwogbG9jYWxp
emVkU3RyaW5nc1siUGFnZSBuYXZpZ2F0ZWQgYXQgJXMiXSA9ICJQYWdlIG5hdmlnYXRlZCBhdCAl
cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQYWdlIHJlbG9hZGVkIGF0ICVzIl0gPSAiUGFnZSByZWxv
YWRlZCBhdCAlcyI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJQYWludCJdID0gIlBhaW50IjsKKy8qIFBh
aW50IChyZW5kZXIpIHBoYXNlIHJlY29yZHMgKi8KK2xvY2FsaXplZFN0cmluZ3NbIlBhaW50IEAg
VGltZWxpbmUgcmVjb3JkIl0gPSAiUGFpbnQiOwogbG9jYWxpemVkU3RyaW5nc1siUGFpbnRzIl0g
PSAiUGFpbnRzIjsKKy8qIEEgY291bnQgb2YgaG93IG1hbnkgdGltZXMgYW4gZWxlbWVudCB3YXMg
cGFpbnRlZCAocmVuZGVyZWQpICovCitsb2NhbGl6ZWRTdHJpbmdzWyJQYWludHMgQCBDb2x1bW4g
dGl0bGUiXSA9ICJQYWludHMiOwogbG9jYWxpemVkU3RyaW5nc1siUGFyZW50Il0gPSAiUGFyZW50
IjsKIGxvY2FsaXplZFN0cmluZ3NbIlBhcnRpYWwgR2FyYmFnZSBDb2xsZWN0aW9uIl0gPSAiUGFy
dGlhbCBHYXJiYWdlIENvbGxlY3Rpb24iOwogbG9jYWxpemVkU3RyaW5nc1siUGFzc2l2ZSJdID0g
IlBhc3NpdmUiOwpAQCAtNzI5LDYgKzc0OSw3IEBAIGxvY2FsaXplZFN0cmluZ3NbIlByZXNzICVz
IHRvIHN0b3AgZWRpdGluZyJdID0gIlByZXNzICVzIHRvIHN0b3AgZWRpdGluZyI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJQcmVzc2VkIl0gPSAiUHJlc3NlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQcmV0
dHkgcHJpbnQiXSA9ICJQcmV0dHkgcHJpbnQiOwogbG9jYWxpemVkU3RyaW5nc1siUHJldmlldyJd
ID0gIlByZXZpZXciOworLyogQSBzdWJtZW51IG9mICdBZGQnICovCiBsb2NhbGl6ZWRTdHJpbmdz
WyJQcmV2aW91cyBTaWJsaW5nIl0gPSAiUHJldmlvdXMgU2libGluZyI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJQcmltYXJ5IEtleSJdID0gIlByaW1hcnkgS2V5IjsKIGxvY2FsaXplZFN0cmluZ3NbIlBy
aW1hcnkgS2V5IFx1MjAxNCAlcyJdID0gIlByaW1hcnkgS2V5IFx1MjAxNCAlcyI7CkBAIC04MTYs
OSArODM3LDExIEBAIGxvY2FsaXplZFN0cmluZ3NbIlJldHVybiB0eXBlIGZvciBhbm9ueW1vdXMg
ZnVuY3Rpb24iXSA9ICJSZXR1cm4gdHlwZSBmb3IgYW5vbnltCiBsb2NhbGl6ZWRTdHJpbmdzWyJS
ZXR1cm4gdHlwZSBmb3IgZnVuY3Rpb246ICVzIl0gPSAiUmV0dXJuIHR5cGUgZm9yIGZ1bmN0aW9u
OiAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXR1cm4gdmFsdWUgaXMgbm90IGFuIG9iamVjdCwg
c3RyaW5nLCBvciBib29sZWFuIl0gPSAiUmV0dXJuIHZhbHVlIGlzIG5vdCBhbiBvYmplY3QsIHN0
cmluZywgb3IgYm9vbGVhbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZlYWwgQnJlYWtwb2ludCJd
ID0gIlJldmVhbCBCcmVha3BvaW50IjsKKy8qIE9wZW4gRWxlbWVudHMgdGFiIGFuZCBzZWxlY3Qg
dGhpcyBub2RlIGluIERPTSB0cmVlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZlYWwgaW4gRE9N
IFRyZWUiXSA9ICJSZXZlYWwgaW4gRE9NIFRyZWUiOwogbG9jYWxpemVkU3RyaW5nc1siUmV2ZWFs
IGluIERlYnVnZ2VyIFRhYiJdID0gIlJldmVhbCBpbiBEZWJ1Z2dlciBUYWIiOwogbG9jYWxpemVk
U3RyaW5nc1siUmV2ZWFsIGluIEVsZW1lbnRzIFRhYiJdID0gIlJldmVhbCBpbiBFbGVtZW50cyBU
YWIiOworLyogT3BlbiBMYXllcnMgdGFiIGFuZCBzZWxlY3QgdGhlIGxheWVyIGNvcnJlc3BvbmRp
bmcgdG8gdGhpcyBub2RlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZlYWwgaW4gTGF5ZXJzIFRh
YiJdID0gIlJldmVhbCBpbiBMYXllcnMgVGFiIjsKIGxvY2FsaXplZFN0cmluZ3NbIlJldmVhbCBp
biBOZXR3b3JrIFRhYiJdID0gIlJldmVhbCBpbiBOZXR3b3JrIFRhYiI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJSZXZlYWwgaW4gT3JpZ2luYWwgUmVzb3VyY2UiXSA9ICJSZXZlYWwgaW4gT3JpZ2luYWwg
UmVzb3VyY2UiOwpAQCAtODQzLDcgKzg2Niw4IEBAIGxvY2FsaXplZFN0cmluZ3NbIlNjcmlwdCJd
ID0gIlNjcmlwdCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTY3JpcHQgRWxlbWVudCAlZCJdID0gIlNj
cmlwdCBFbGVtZW50ICVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIlNjcmlwdCBFdmFsdWF0ZWQiXSA9
ICJTY3JpcHQgRXZhbHVhdGVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIlNjcmlwdHMiXSA9ICJTY3Jp
cHRzIjsKLWxvY2FsaXplZFN0cmluZ3NbIlNjcm9sbCBJbnRvIFZpZXciXSA9ICJTY3JvbGwgSW50
byBWaWV3IjsKKy8qIFNjcm9sbCBzZWxlY3RlZCBET00gbm9kZSBpbnRvIHZpZXcgb24gdGhlIGlu
c3BlY3RlZCB3ZWIgcGFnZSAqLworbG9jYWxpemVkU3RyaW5nc1siU2Nyb2xsIGludG8gVmlldyJd
ID0gIlNjcm9sbCBpbnRvIFZpZXciOwogbG9jYWxpemVkU3RyaW5nc1siU2VhcmNoIl0gPSAiU2Vh
cmNoIjsKIGxvY2FsaXplZFN0cmluZ3NbIlNlYXJjaCBBZ2FpbiJdID0gIlNlYXJjaCBBZ2FpbiI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWFyY2ggUmVzb3VyY2UgQ29udGVudCJdID0gIlNlYXJjaCBS
ZXNvdXJjZSBDb250ZW50IjsKQEAgLTg1OCwxMCArODgyLDEyIEBAIGxvY2FsaXplZFN0cmluZ3Nb
IlNlbGVjdCBiYXNlbGluZSBzbmFwc2hvdCJdID0gIlNlbGVjdCBiYXNlbGluZSBzbmFwc2hvdCI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3QgY29tcGFyaXNvbiBzbmFwc2hvdCJdID0gIlNlbGVj
dCBjb21wYXJpc29uIHNuYXBzaG90IjsKIGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdGVkIl0gPSAi
U2VsZWN0ZWQiOwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgQ2FudmFzIENvbnRleHQiXSA9
ICJTZWxlY3RlZCBDYW52YXMgQ29udGV4dCI7CisvKiBTZWxlY3RlZCBET00gZWxlbWVudCAqLwog
bG9jYWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgRWxlbWVudCJdID0gIlNlbGVjdGVkIEVsZW1lbnQi
OwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgRnJhbWUiXSA9ICJTZWxlY3RlZCBGcmFtZSI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBJdGVtIl0gPSAiU2VsZWN0ZWQgSXRlbSI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBJdGVtcyJdID0gIlNlbGVjdGVkIEl0ZW1zIjsKKy8q
IFNlbGVjdGVkIERPTSBub2RlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBOb2RlIl0g
PSAiU2VsZWN0ZWQgTm9kZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBTeW1ib2wiXSA9
ICJTZWxlY3RlZCBTeW1ib2wiOwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgVmFsdWUiXSA9
ICJTZWxlY3RlZCBWYWx1ZSI7CkBAIC05NTgsNiArOTg0LDcgQEAgbG9jYWxpemVkU3RyaW5nc1si
U3RvcCByZWNvcmRpbmcgY2FudmFzIGFjdGlvbnMiXSA9ICJTdG9wIHJlY29yZGluZyBjYW52YXMg
YWN0aW8KIGxvY2FsaXplZFN0cmluZ3NbIlN0b3AgcmVjb3JkaW5nIG9uY2UgcGFnZSBsb2FkcyJd
ID0gIlN0b3AgcmVjb3JkaW5nIG9uY2UgcGFnZSBsb2FkcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJT
dG9wcGluZyB0aGUgXHUyMDFDJXNcdTIwMUQgYXVkaXQiXSA9ICJTdG9wcGluZyB0aGUgXHUyMDFD
JXNcdTIwMUQgYXVkaXQiOwogbG9jYWxpemVkU3RyaW5nc1siU3RvcmFnZSJdID0gIlN0b3JhZ2Ui
OworLyogQ1NTIHByb3BlcnRpZXMgZGVmaW5lZCB2aWEgSFRNTCBzdHlsZSBhdHRyaWJ1dGUgKi8K
IGxvY2FsaXplZFN0cmluZ3NbIlN0eWxlIEF0dHJpYnV0ZSJdID0gIlN0eWxlIEF0dHJpYnV0ZSI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZSBSZXNvbHV0aW9uIl0gPSAiU3R5bGUgUmVzb2x1dGlv
biI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZSBydWxlIl0gPSAiU3R5bGUgcnVsZSI7CkBAIC05
NjksMTEgKzk5NiwxMyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZXMgXHUyMDE0IFJ1bGVzIl0g
PSAiU3R5bGVzIFx1MjAxNCBSdWxlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZXNoZWV0Il0g
PSAiU3R5bGVzaGVldCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZXNoZWV0cyJdID0gIlN0eWxl
c2hlZXRzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlN1YmplY3QiXSA9ICJTdWJqZWN0IjsKKy8qIEEg
c3VibWVudSBvZiAnQnJlYWsgT24nICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJTdWJ0cmVlIE1vZGlm
aWVkIl0gPSAiU3VidHJlZSBNb2RpZmllZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdW1tYXJ5Il0g
PSAiU3VtbWFyeSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUQ1AiXSA9ICJUQ1AiOwogbG9jYWxpemVk
U3RyaW5nc1siVGFiIHdpZHRoOiJdID0gIlRhYiB3aWR0aDoiOwogbG9jYWxpemVkU3RyaW5nc1si
VGFicyJdID0gIlRhYnMiOworLyogQSBzdWJtZW51IG9mICdFZGl0JyAqLwogbG9jYWxpemVkU3Ry
aW5nc1siVGFnIl0gPSAiVGFnIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRha2Ugc25hcHNob3QiXSA9
ICJUYWtlIHNuYXBzaG90IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRlbXBsYXRlIENvbnRlbnQiXSA9
ICJUZW1wbGF0ZSBDb250ZW50IjsKQEAgLTEwMzAsNiArMTA1OSw3IEBAIGxvY2FsaXplZFN0cmlu
Z3NbIlRvdGFsIHRpbWUiXSA9ICJUb3RhbCB0aW1lIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRvdGFs
czoiXSA9ICJUb3RhbHM6IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRyYWNlIl0gPSAiVHJhY2UiOwog
bG9jYWxpemVkU3RyaW5nc1siVHJhY2U6ICVzIl0gPSAiVHJhY2U6ICVzIjsKKy8qIEFtb3VudCBv
ZiBkYXRhIHNlbnQgb3ZlciB0aGUgbmV0d29yayAqLwogbG9jYWxpemVkU3RyaW5nc1siVHJhbnNm
ZXIgU2l6ZSJdID0gIlRyYW5zZmVyIFNpemUiOwogbG9jYWxpemVkU3RyaW5nc1siVHJhbnNmZXJy
ZWQiXSA9ICJUcmFuc2ZlcnJlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUcmlnZ2VyZWQgQnJlYWtw
b2ludCJdID0gIlRyaWdnZXJlZCBCcmVha3BvaW50IjsKQEAgLTEwNDQsNiArMTA3NCw3IEBAIGxv
Y2FsaXplZFN0cmluZ3NbIlVSTCBCcmVha3BvaW50XHUyMDI2Il0gPSAiVVJMIEJyZWFrcG9pbnRc
dTIwMjYiOwogbG9jYWxpemVkU3RyaW5nc1siVW5hYmxlIHRvIGRldGVybWluZSBwYXRoIHRvIHBy
b3BlcnR5IGZyb20gcm9vdCJdID0gIlVuYWJsZSB0byBkZXRlcm1pbmUgcGF0aCB0byBwcm9wZXJ0
eSBmcm9tIHJvb3QiOwogbG9jYWxpemVkU3RyaW5nc1siVW5hYmxlIHRvIHBhcnNlIGFzIEpTT046
ICVzIl0gPSAiVW5hYmxlIHRvIHBhcnNlIGFzIEpTT046ICVzIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IlVuYWJsZSB0byBzaG93IGNlcnRpZmljYXRlIGZvciBcdTIwMUMlc1x1MjAxRCJdID0gIlVuYWJs
ZSB0byBzaG93IGNlcnRpZmljYXRlIGZvciBcdTIwMUMlc1x1MjAxRCI7CisvKiBCcmVhayAocGF1
c2UpIG9uIGV2ZXJ5IHVuY2F1Z2h0ICh1bmhhbmRsZWQpIGV4Y2VwdGlvbnMgKi8KIGxvY2FsaXpl
ZFN0cmluZ3NbIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiXSA9ICJVbmNhdWdodCBFeGNlcHRpb25zIjsK
IGxvY2FsaXplZFN0cmluZ3NbIlVuZGVmaW5lZCBjdXN0b20gZWxlbWVudCJdID0gIlVuZGVmaW5l
ZCBjdXN0b20gZWxlbWVudCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJVbmlxdWUiXSA9ICJVbmlxdWUi
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQmFzZS9M
b2FkTG9jYWxpemVkU3RyaW5ncy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL0Jhc2UvTG9hZExvY2FsaXplZFN0cmluZ3MuanMKaW5kZXggYzBmNWEzNzVlMzMuLjYzM2Fk
MDhlZjMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9C
YXNlL0xvYWRMb2NhbGl6ZWRTdHJpbmdzLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXplZFN0cmluZ3MuanMKQEAgLTY0LDMgKzY0LDI3
IEBAIFdJLlVJU3RyaW5nID0gZnVuY3Rpb24oc3RyaW5nLCBrZXksIGNvbW1lbnQpCiAKICAgICBy
ZXR1cm4gIkxPQ0FMSVpFRCBTVFJJTkcgTk9UIEZPVU5EIjsKIH07CisKK1dJLnJlcGVhdGluZ1VJ
U3RyaW5nID0gZnVuY3Rpb24oa2V5KSB7CisgICAgbGV0IGxvY2FsaXplZFN0cmluZ3MgPSB7Cisg
ICAgICAgICJMYXlvdXQgQCBUaW1lbGluZSByZWNvcmQiOiBXSS5VSVN0cmluZygiTGF5b3V0Iiwg
IkxheW91dCBAIFRpbWVsaW5lIHJlY29yZCIsICJMYXlvdXQgcGhhc2UgcmVjb3JkcyIpLAorICAg
ICAgICAiUGFpbnQgQCBUaW1lbGluZSByZWNvcmQiOiBXSS5VSVN0cmluZygiUGFpbnQiLCAiUGFp
bnQgQCBUaW1lbGluZSByZWNvcmQiLCAiUGFpbnQgKHJlbmRlcikgcGhhc2UgcmVjb3JkcyIpLAor
ICAgICAgICAiQ29tcG9zaXRlIEAgVGltZWxpbmUgcmVjb3JkIjogV0kuVUlTdHJpbmcoIkNvbXBv
c2l0ZSIsICJDb21wb3NpdGUgQCBUaW1lbGluZSByZWNvcmQiLCAiQ29tcG9zaXRlIHBoYXNlIHJl
Y29yZHMsIHdoZXJlIGdyYXBoaWMgbGF5ZXJzIGFyZSBjb21iaW5lZCIpLAorCisgICAgICAgICJB
bGwgRXhjZXB0aW9ucyI6IFdJLlVJU3RyaW5nKCJBbGwgRXhjZXB0aW9ucyIsICIiLCAiQnJlYWsg
KHBhdXNlKSBvbiBhbGwgZXhjZXB0aW9ucyIpLAorICAgICAgICAiVW5jYXVnaHQgRXhjZXB0aW9u
cyI6IFdJLlVJU3RyaW5nKCJVbmNhdWdodCBFeGNlcHRpb25zIiwgIiIsICJCcmVhayAocGF1c2Up
IG9uIGV2ZXJ5IHVuY2F1Z2h0ICh1bmhhbmRsZWQpIGV4Y2VwdGlvbnMiKSwKKyAgICAgICAgIkFz
c2VydGlvbiBGYWlsdXJlcyI6IFdJLlVJU3RyaW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiLCAiIiwg
IkJyZWFrIHdoZW4gY29uc29sZS5hc3NlcnQoKSBmYWlscyIpLAorICAgICAgICAiQWxsIFJlcXVl
c3RzIjogV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIsICIiLCAiQSBzdWJtZW51IG9mICdCcmVh
ayBvbiciKSwKKworICAgICAgICAiRmV0Y2giOiBXSS5VSVN0cmluZygiRmV0Y2giLCAiIiwgIlJl
c291cmNlIGxvYWRlZCB2aWEgJ2ZldGNoJyBtZXRob2QiKSwKKworICAgICAgICAiUmV2ZWFsIGlu
IERPTSBUcmVlIjogV0kuVUlTdHJpbmcoIlJldmVhbCBpbiBET00gVHJlZSIsICIiLCAiT3BlbiBF
bGVtZW50cyB0YWIgYW5kIHNlbGVjdCB0aGlzIG5vZGUgaW4gRE9NIHRyZWUiKSwKKyAgICB9Owor
CisgICAgaWYgKCFsb2NhbGl6ZWRTdHJpbmdzLmhhc093blByb3BlcnR5KGtleSkpIHsKKyAgICAg
ICAgY29uc29sZS5lcnJvcihgcmVwZWF0aW5nVUlTdHJpbmcgIiR7a2V5fSIgd2FzIG5vdCBmb3Vu
ZC5gKTsKKyAgICAgICAgcmV0dXJuICJMT0NBTElaRUQgU1RSSU5HIE5PVCBGT1VORCI7CisgICAg
fQorCisgICAgcmV0dXJuIGxvY2FsaXplZFN0cmluZ3Nba2V5XTsKK307CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvTGF5b3V0VGltZWxpbmVS
ZWNvcmQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvTGF5
b3V0VGltZWxpbmVSZWNvcmQuanMKaW5kZXggOTVmOGFmNWE2NTIuLjdlNWIyYzYzY2ZhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvTGF5b3V0
VGltZWxpbmVSZWNvcmQuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvTW9kZWxzL0xheW91dFRpbWVsaW5lUmVjb3JkLmpzCkBAIC01MSwxMyArNTEsMTMgQEAgV0ku
TGF5b3V0VGltZWxpbmVSZWNvcmQgPSBjbGFzcyBMYXlvdXRUaW1lbGluZVJlY29yZCBleHRlbmRz
IFdJLlRpbWVsaW5lUmVjb3JkCiAgICAgICAgIGNhc2UgV0kuTGF5b3V0VGltZWxpbmVSZWNvcmQu
RXZlbnRUeXBlLkludmFsaWRhdGVMYXlvdXQ6CiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJp
bmcoIkxheW91dCBJbnZhbGlkYXRlZCIpOwogICAgICAgICBjYXNlIFdJLkxheW91dFRpbWVsaW5l
UmVjb3JkLkV2ZW50VHlwZS5Gb3JjZWRMYXlvdXQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlT
dHJpbmcoIkZvcmNlZCBMYXlvdXQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygi
Rm9yY2VkIExheW91dCIsICIiLCAiTGF5b3V0IHBoYXNlIHJlY29yZHMgdGhhdCB3ZXJlIGltcGVy
YXRpdmUgKGZvcmNlZCkiKTsKICAgICAgICAgY2FzZSBXSS5MYXlvdXRUaW1lbGluZVJlY29yZC5F
dmVudFR5cGUuTGF5b3V0OgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJMYXlvdXQi
KTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRpbmdVSVN0cmluZygiTGF5b3V0IEAgVGlt
ZWxpbmUgcmVjb3JkIik7CiAgICAgICAgIGNhc2UgV0kuTGF5b3V0VGltZWxpbmVSZWNvcmQuRXZl
bnRUeXBlLlBhaW50OgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJQYWludCIpOwor
ICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJQYWludCBAIFRpbWVsaW5l
IHJlY29yZCIpOwogICAgICAgICBjYXNlIFdJLkxheW91dFRpbWVsaW5lUmVjb3JkLkV2ZW50VHlw
ZS5Db21wb3NpdGU6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkNvbXBvc2l0ZSIp
OworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJDb21wb3NpdGUgQCBU
aW1lbGluZSByZWNvcmQiKTsKICAgICAgICAgfQogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1JlbmRlcmluZ0ZyYW1lVGltZWxp
bmVSZWNvcmQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMv
UmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5qcwppbmRleCAxMGRjYTQyN2E2MS4uN2IxMjE0
YzlkMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01v
ZGVscy9SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3Jk
LmpzCkBAIC00Niw5ICs0Niw5IEBAIFdJLlJlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQgPSBj
bGFzcyBSZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkIGV4dGVuZHMgV0kuCiAgICAgICAgIGNh
c2UgV0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5UYXNrVHlwZS5TY3JpcHQ6CiAgICAg
ICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlNjcmlwdCIpOwogICAgICAgICBjYXNlIFdJLlJl
bmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuVGFza1R5cGUuTGF5b3V0OgotICAgICAgICAgICAg
cmV0dXJuIFdJLlVJU3RyaW5nKCJMYXlvdXQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBl
YXRpbmdVSVN0cmluZygiTGF5b3V0IEAgVGltZWxpbmUgcmVjb3JkIik7CiAgICAgICAgIGNhc2Ug
V0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5UYXNrVHlwZS5QYWludDoKLSAgICAgICAg
ICAgIHJldHVybiBXSS5VSVN0cmluZygiUGFpbnQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5y
ZXBlYXRpbmdVSVN0cmluZygiUGFpbnQgQCBUaW1lbGluZSByZWNvcmQiKTsKICAgICAgICAgY2Fz
ZSBXSS5SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLlRhc2tUeXBlLk90aGVyOgogICAgICAg
ICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJPdGhlciIpOwogICAgICAgICB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvUmVzb3VyY2UuanMg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvUmVzb3VyY2UuanMK
aW5kZXggMzhhZTFkOWY0YzguLmQxZWE0ZGFjYTVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvUmVzb3VyY2UuanMKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291cmNlLmpzCkBAIC0xNTQsOCAr
MTU0LDggQEAgV0kuUmVzb3VyY2UgPSBjbGFzcyBSZXNvdXJjZSBleHRlbmRzIFdJLlNvdXJjZUNv
ZGUKICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiWEhSIik7CiAgICAgICAgIGNhc2Ug
V0kuUmVzb3VyY2UuVHlwZS5GZXRjaDoKICAgICAgICAgICAgIGlmIChwbHVyYWwpCi0gICAgICAg
ICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJGZXRjaGVzIik7Ci0gICAgICAgICAgICByZXR1
cm4gV0kuVUlTdHJpbmcoIkZldGNoIik7CisgICAgICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3Ry
aW5nKCJGZXRjaGVzIiwgIiIsICJSZXNvdXJjZXMgbG9hZGVkIHZpYSAnZmV0Y2gnIG1ldGhvZCIp
OworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJGZXRjaCIpOwogICAg
ICAgICBjYXNlIFdJLlJlc291cmNlLlR5cGUuUGluZzoKICAgICAgICAgICAgIGlmIChwbHVyYWwp
CiAgICAgICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJQaW5ncyIpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ1BVVGltZWxpbmVW
aWV3LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ1BVVGlt
ZWxpbmVWaWV3LmpzCmluZGV4IDdmZGIwN2RjYjJkLi4yZWE2ZTUxOGExMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ1BVVGltZWxpbmVWaWV3
LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NQVVRp
bWVsaW5lVmlldy5qcwpAQCAtNDYsOSArNDYsOSBAQCBXSS5DUFVUaW1lbGluZVZpZXcgPSBjbGFz
cyBDUFVUaW1lbGluZVZpZXcgZXh0ZW5kcyBXSS5UaW1lbGluZVZpZXcKICAgICAgICAgY2FzZSBX
SS5DUFVUaW1lbGluZVZpZXcuU2FtcGxlVHlwZS5TY3JpcHQ6CiAgICAgICAgICAgICByZXR1cm4g
V0kuVUlTdHJpbmcoIlNjcmlwdCIpOwogICAgICAgICBjYXNlIFdJLkNQVVRpbWVsaW5lVmlldy5T
YW1wbGVUeXBlLkxheW91dDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTGF5b3V0
Iik7CisgICAgICAgICAgICByZXR1cm4gV0kucmVwZWF0aW5nVUlTdHJpbmcoIkxheW91dCBAIFRp
bWVsaW5lIHJlY29yZCIpOwogICAgICAgICBjYXNlIFdJLkNQVVRpbWVsaW5lVmlldy5TYW1wbGVU
eXBlLlBhaW50OgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJQYWludCIpOworICAg
ICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJQYWludCBAIFRpbWVsaW5lIHJl
Y29yZCIpOwogICAgICAgICBjYXNlIFdJLkNQVVRpbWVsaW5lVmlldy5TYW1wbGVUeXBlLlN0eWxl
OgogICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJTdHlsZSBSZXNvbHV0aW9uIik7CiAg
ICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNl
L1ZpZXdzL0NvbnRleHRNZW51VXRpbGl0aWVzLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvQ29udGV4dE1lbnVVdGlsaXRpZXMuanMKaW5kZXggZDE3ZDhiNGU1
NTMuLjE3NjgzNGQxNTJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGllcy5qcworKysgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGllcy5qcwpAQCAt
MjE0LDEwICsyMTQsMTAgQEAgV0kuYXBwZW5kQ29udGV4dE1lbnVJdGVtc0ZvckRPTU5vZGUgPSBm
dW5jdGlvbihjb250ZXh0TWVudSwgZG9tTm9kZSwgb3B0aW9ucyA9IHsKICAgICBjb250ZXh0TWVu
dS5hcHBlbmRTZXBhcmF0b3IoKTsKIAogICAgIGlmICghb3B0aW9ucy5leGNsdWRlTG9nRWxlbWVu
dCAmJiAhZG9tTm9kZS5pc0luVXNlckFnZW50U2hhZG93VHJlZSgpICYmICFkb21Ob2RlLmlzUHNl
dWRvRWxlbWVudCgpKSB7Ci0gICAgICAgIGxldCBsYWJlbCA9IGlzRWxlbWVudCA/IFdJLlVJU3Ry
aW5nKCJMb2cgRWxlbWVudCIpIDogV0kuVUlTdHJpbmcoIkxvZyBOb2RlIik7CisgICAgICAgIGxl
dCBsYWJlbCA9IGlzRWxlbWVudCA/IFdJLlVJU3RyaW5nKCJMb2cgRWxlbWVudCIsICIiLCAiTG9n
IERPTSBlbGVtZW50IHRvIENvbnNvbGUiKSA6IFdJLlVJU3RyaW5nKCJMb2cgTm9kZSIsICIiLCAi
TG9nIERPTSBub2RlIHRvIENvbnNvbGUiKTsKICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRl
bShsYWJlbCwgKCkgPT4gewogICAgICAgICAgICAgV0kuUmVtb3RlT2JqZWN0LnJlc29sdmVOb2Rl
KGRvbU5vZGUsIFdJLlJ1bnRpbWVNYW5hZ2VyLkNvbnNvbGVPYmplY3RHcm91cCkudGhlbigocmVt
b3RlT2JqZWN0KSA9PiB7Ci0gICAgICAgICAgICAgICAgbGV0IHRleHQgPSBpc0VsZW1lbnQgPyBX
SS5VSVN0cmluZygiU2VsZWN0ZWQgRWxlbWVudCIpIDogV0kuVUlTdHJpbmcoIlNlbGVjdGVkIE5v
ZGUiKTsKKyAgICAgICAgICAgICAgICBsZXQgdGV4dCA9IGlzRWxlbWVudCA/IFdJLlVJU3RyaW5n
KCJTZWxlY3RlZCBFbGVtZW50IiwgIiIsICJTZWxlY3RlZCBET00gZWxlbWVudCIpIDogV0kuVUlT
dHJpbmcoIlNlbGVjdGVkIE5vZGUiLCAiIiwgIlNlbGVjdGVkIERPTSBub2RlIik7CiAgICAgICAg
ICAgICAgICAgY29uc3QgYWRkU3BlY2lhbFVzZXJMb2dDbGFzcyA9IHRydWU7CiAgICAgICAgICAg
ICAgICAgV0kuY29uc29sZUxvZ1ZpZXdDb250cm9sbGVyLmFwcGVuZEltbWVkaWF0ZUV4ZWN1dGlv
bldpdGhSZXN1bHQodGV4dCwgcmVtb3RlT2JqZWN0LCBhZGRTcGVjaWFsVXNlckxvZ0NsYXNzKTsK
ICAgICAgICAgICAgIH0pOwpAQCAtMjI1LDE5ICsyMjUsMTkgQEAgV0kuYXBwZW5kQ29udGV4dE1l
bnVJdGVtc0ZvckRPTU5vZGUgPSBmdW5jdGlvbihjb250ZXh0TWVudSwgZG9tTm9kZSwgb3B0aW9u
cyA9IHsKICAgICB9CiAKICAgICBpZiAoIW9wdGlvbnMuZXhjbHVkZVJldmVhbEVsZW1lbnQgJiYg
d2luZG93LkRPTUFnZW50ICYmIGRvbU5vZGUub3duZXJEb2N1bWVudCkgewotICAgICAgICBjb250
ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJSZXZlYWwgaW4gRE9NIFRyZWUiKSwgKCkg
PT4geworICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJLnJlcGVhdGluZ1VJU3RyaW5n
KCJSZXZlYWwgaW4gRE9NIFRyZWUiKSwgKCkgPT4gewogICAgICAgICAgICAgV0kuZG9tTWFuYWdl
ci5pbnNwZWN0RWxlbWVudChkb21Ob2RlLmlkKTsKICAgICAgICAgfSk7CiAgICAgfQogCiAgICAg
aWYgKCFvcHRpb25zLmV4Y2x1ZGVSZXZlYWxMYXllciAmJiB3aW5kb3cuTGF5ZXJUcmVlQWdlbnQg
JiYgZG9tTm9kZS5wYXJlbnROb2RlKSB7Ci0gICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0o
V0kuVUlTdHJpbmcoIlJldmVhbCBpbiBMYXllcnMgVGFiIiksICgpID0+IHsKKyAgICAgICAgY29u
dGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiUmV2ZWFsIGluIExheWVycyBUYWIiLCAi
IiwgIk9wZW4gTGF5ZXJzIHRhYiBhbmQgc2VsZWN0IHRoZSBsYXllciBjb3JyZXNwb25kaW5nIHRv
IHRoaXMgbm9kZSIpLCAoKSA9PiB7CiAgICAgICAgICAgICBXSS5zaG93TGF5ZXJzVGFiKHtub2Rl
VG9TZWxlY3Q6IGRvbU5vZGV9KTsKICAgICAgICAgfSk7CiAgICAgfQogCiAgICAgaWYgKHdpbmRv
dy5QYWdlQWdlbnQpIHsKLSAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmlu
ZygiQ2FwdHVyZSBTY3JlZW5zaG90IiksICgpID0+IHsKKyAgICAgICAgY29udGV4dE1lbnUuYXBw
ZW5kSXRlbShXSS5VSVN0cmluZygiQ2FwdHVyZSBTY3JlZW5zaG90IiwgIiIsICJDYXB0dXJlIFNj
cmVlbnNob3Qgb2YgdGhlIHNlbGVjdGVkIERPTSBub2RlIiksICgpID0+IHsKICAgICAgICAgICAg
IFBhZ2VBZ2VudC5zbmFwc2hvdE5vZGUoZG9tTm9kZS5pZCwgKGVycm9yLCBkYXRhVVJMKSA9PiB7
CiAgICAgICAgICAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IHRhcmdldCA9IFdJLm1haW5UYXJnZXQ7CkBAIC0yNzAsNyArMjcwLDcgQEAgV0kuYXBwZW5kQ29u
dGV4dE1lbnVJdGVtc0ZvckRPTU5vZGUgPSBmdW5jdGlvbihjb250ZXh0TWVudSwgZG9tTm9kZSwg
b3B0aW9ucyA9IHsKICAgICB9CiAKICAgICBpZiAoaXNFbGVtZW50KSB7Ci0gICAgICAgIGNvbnRl
eHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlNjcm9sbCBJbnRvIFZpZXciKSwgKCkgPT4g
eworICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJTY3JvbGwgaW50
byBWaWV3IiwgIiIsICJTY3JvbGwgc2VsZWN0ZWQgRE9NIG5vZGUgaW50byB2aWV3IG9uIHRoZSBp
bnNwZWN0ZWQgd2ViIHBhZ2UiKSwgKCkgPT4gewogICAgICAgICAgICAgZG9tTm9kZS5zY3JvbGxJ
bnRvVmlldygpOwogICAgICAgICB9KTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50
VHJlZUVsZW1lbnQuanMKaW5kZXggNWNlZjQwOTQ4OGMuLjdiZDZkOTg3OTI2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50
VHJlZUVsZW1lbnQuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
Vmlld3MvRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50LmpzCkBAIC01NCwxMSArNTQsMTEgQEAgV0ku
RE9NQnJlYWtwb2ludFRyZWVFbGVtZW50ID0gY2xhc3MgRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50
IGV4dGVuZHMgV0kuR2VuZXJhbFQKICAgICB7CiAgICAgICAgIHN3aXRjaCAodHlwZSkgewogICAg
ICAgICBjYXNlIFdJLkRPTUJyZWFrcG9pbnQuVHlwZS5TdWJ0cmVlTW9kaWZpZWQ6Ci0gICAgICAg
ICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlN1YnRyZWUgTW9kaWZpZWQiKTsKKyAgICAgICAgICAg
IHJldHVybiBXSS5VSVN0cmluZygiU3VidHJlZSBNb2RpZmllZCIsICIiLCAiQSBzdWJtZW51IG9m
ICdCcmVhayBPbiciKTsKICAgICAgICAgY2FzZSBXSS5ET01CcmVha3BvaW50LlR5cGUuQXR0cmli
dXRlTW9kaWZpZWQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkF0dHJpYnV0ZSBN
b2RpZmllZCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJBdHRyaWJ1dGUgTW9k
aWZpZWQiLCAiIiwgIkEgc3VibWVudSBvZiAnQnJlYWsgT24nIik7CiAgICAgICAgIGNhc2UgV0ku
RE9NQnJlYWtwb2ludC5UeXBlLk5vZGVSZW1vdmVkOgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJ
U3RyaW5nKCJOb2RlIFJlbW92ZWQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygi
Tm9kZSBSZW1vdmVkIiwgIiIsICJBIHN1Ym1lbnUgb2YgJ0JyZWFrIE9uJyIpOwogICAgICAgICBk
ZWZhdWx0OgogICAgICAgICAgICAgY29uc29sZS5lcnJvcigiVW5leHBlY3RlZCBET00gYnJlYWtw
b2ludCB0eXBlOiAiICsgdHlwZSk7CiAgICAgICAgICAgICByZXR1cm4gbnVsbDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTU5vZGVUcmVl
RWxlbWVudC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RP
TU5vZGVUcmVlRWxlbWVudC5qcwppbmRleCA1NDU0MmE0YmUyMy4uYWJmYzY4Y2U5MDIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTU5vZGVU
cmVlRWxlbWVudC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9ET01Ob2RlVHJlZUVsZW1lbnQuanMKQEAgLTY1LDcgKzY1LDcgQEAgV0kuRE9NTm9kZVRy
ZWVFbGVtZW50ID0gY2xhc3MgRE9NTm9kZVRyZWVFbGVtZW50IGV4dGVuZHMgV0kuR2VuZXJhbFRy
ZWVFbGVtZW50CiAKICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kU2VwYXJhdG9yKCk7CiAKLSAg
ICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiUmV2ZWFsIGluIERPTSBU
cmVlIiksICgpID0+IHsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5yZXBlYXRp
bmdVSVN0cmluZygiUmV2ZWFsIGluIERPTSBUcmVlIiksICgpID0+IHsKICAgICAgICAgICAgIFdJ
LmRvbU1hbmFnZXIuaW5zcGVjdEVsZW1lbnQodGhpcy5yZXByZXNlbnRlZE9iamVjdC5pZCk7CiAg
ICAgICAgIH0pOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVFbGVtZW50LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZUVsZW1lbnQuanMKaW5kZXggMGExZjgyNWJhZDAu
LmMzMGViNzdjNTFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5qcwpAQCAtNzYwLDE0ICs3NjAsMTQg
QEAgV0kuRE9NVHJlZUVsZW1lbnQgPSBjbGFzcyBET01UcmVlRWxlbWVudCBleHRlbmRzIFdJLlRy
ZWVFbGVtZW50CiAgICAgICAgICAgICB0aGlzLnJlcHJlc2VudGVkT2JqZWN0LnJlbW92ZUF0dHJp
YnV0ZShhdHRyaWJ1dGVOYW1lKTsKICAgICAgICAgfSwgIWF0dHJpYnV0ZSB8fCAhaXNOb25TaGFk
b3dFZGl0YWJsZSk7CiAKLSAgICAgICAgc3ViTWVudXMuZWRpdC5hcHBlbmRJdGVtKFdJLlVJU3Ry
aW5nKCJUYWciKSwgKCkgPT4geworICAgICAgICBzdWJNZW51cy5lZGl0LmFwcGVuZEl0ZW0oV0ku
VUlTdHJpbmcoIlRhZyIsICIiLCAiQSBzdWJtZW51IG9mICdFZGl0JyIpLCAoKSA9PiB7CiAgICAg
ICAgICAgICB0aGlzLl9zdGFydEVkaXRpbmdUYWdOYW1lKCk7CiAgICAgICAgIH0sICFpc05vblNo
YWRvd0VkaXRhYmxlKTsKIAogICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRTZXBhcmF0b3IoKTsK
IAogICAgICAgICBpZiAoV0kuY3NzTWFuYWdlci5jYW5Gb3JjZVBzZXVkb0NsYXNzZXMoKSkgewot
ICAgICAgICAgICAgbGV0IHBzZXVkb1N1Yk1lbnUgPSBjb250ZXh0TWVudS5hcHBlbmRTdWJNZW51
SXRlbShXSS5VSVN0cmluZygiRm9yY2VkIFBzZXVkby1DbGFzc2VzIikpOworICAgICAgICAgICAg
bGV0IHBzZXVkb1N1Yk1lbnUgPSBjb250ZXh0TWVudS5hcHBlbmRTdWJNZW51SXRlbShXSS5VSVN0
cmluZygiRm9yY2VkIFBzZXVkby1DbGFzc2VzIiwgIiIsICJBIGNvbnRleHQgbWVudSB0byBmb3Jj
ZSAob3ZlcnJpZGUpIGVsZW1lbnQncyBwc2V1ZG8tY2xhc3NlcyIpKTsKIAogICAgICAgICAgICAg
bGV0IGVuYWJsZWRQc2V1ZG9DbGFzc2VzID0gdGhpcy5yZXByZXNlbnRlZE9iamVjdC5lbmFibGVk
UHNldWRvQ2xhc3NlczsKICAgICAgICAgICAgIFdJLkNTU01hbmFnZXIuRm9yY2VhYmxlUHNldWRv
Q2xhc3Nlcy5mb3JFYWNoKChwc2V1ZG9DbGFzcykgPT4gewpAQCAtNzk4LDkgKzc5OCw5IEBAIFdJ
LkRPTVRyZWVFbGVtZW50ID0gY2xhc3MgRE9NVHJlZUVsZW1lbnQgZXh0ZW5kcyBXSS5UcmVlRWxl
bWVudAogCiAgICAgICAgIGxldCBpc0VkaXRhYmxlTm9kZSA9IG5vZGUubm9kZVR5cGUoKSA9PT0g
Tm9kZS5FTEVNRU5UX05PREUgJiYgdGhpcy5lZGl0YWJsZTsKICAgICAgICAgbGV0IGZvcmJpZGRl
bkNsb3NpbmdUYWcgPSBXSS5ET01UcmVlRWxlbWVudC5Gb3JiaWRkZW5DbG9zaW5nVGFnRWxlbWVu
dHMuaGFzKG5vZGUubm9kZU5hbWVJbkNvcnJlY3RDYXNlKCkpOwotICAgICAgICBzdWJNZW51cy5h
ZGQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiQ2hpbGQiKSwgdGhpcy5fYWRkSFRNTC5iaW5kKHRo
aXMpLCBmb3JiaWRkZW5DbG9zaW5nVGFnIHx8ICFpc0VkaXRhYmxlTm9kZSk7Ci0gICAgICAgIHN1
Yk1lbnVzLmFkZC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJQcmV2aW91cyBTaWJsaW5nIiksIHRo
aXMuX2FkZFByZXZpb3VzU2libGluZy5iaW5kKHRoaXMpLCAhaXNFZGl0YWJsZU5vZGUpOwotICAg
ICAgICBzdWJNZW51cy5hZGQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiTmV4dCBTaWJsaW5nIiks
IHRoaXMuX2FkZE5leHRTaWJsaW5nLmJpbmQodGhpcyksICFpc0VkaXRhYmxlTm9kZSk7CisgICAg
ICAgIHN1Yk1lbnVzLmFkZC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJDaGlsZCIsICIiLCAiQSBz
dWJtZW51IG9mICdBZGQnIiksIHRoaXMuX2FkZEhUTUwuYmluZCh0aGlzKSwgZm9yYmlkZGVuQ2xv
c2luZ1RhZyB8fCAhaXNFZGl0YWJsZU5vZGUpOworICAgICAgICBzdWJNZW51cy5hZGQuYXBwZW5k
SXRlbShXSS5VSVN0cmluZygiUHJldmlvdXMgU2libGluZyIsICIiLCAiQSBzdWJtZW51IG9mICdB
ZGQnIiksIHRoaXMuX2FkZFByZXZpb3VzU2libGluZy5iaW5kKHRoaXMpLCAhaXNFZGl0YWJsZU5v
ZGUpOworICAgICAgICBzdWJNZW51cy5hZGQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiTmV4dCBT
aWJsaW5nIiwgIiIsICJBIHN1Ym1lbnUgb2YgJ0FkZCciKSwgdGhpcy5fYWRkTmV4dFNpYmxpbmcu
YmluZCh0aGlzKSwgIWlzRWRpdGFibGVOb2RlKTsKIAogICAgICAgICBzdWJNZW51cy5lZGl0LmFw
cGVuZEl0ZW0oV0kuVUlTdHJpbmcoIkhUTUwiKSwgdGhpcy5fZWRpdEFzSFRNTC5iaW5kKHRoaXMp
LCAhdGhpcy5lZGl0YWJsZSk7CiAgICAgICAgIHN1Yk1lbnVzLmNvcHkuYXBwZW5kSXRlbShXSS5V
SVN0cmluZygiSFRNTCIpLCB0aGlzLl9jb3B5SFRNTC5iaW5kKHRoaXMpLCBub2RlLmlzUHNldWRv
RWxlbWVudCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL0RlYnVnZ2VyU2lkZWJhclBhbmVsLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvRGVidWdnZXJTaWRlYmFyUGFuZWwuanMKaW5kZXggNmY0OTk0
MmM5NDguLjVmZDdiZjQ5YjhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9EZWJ1Z2dlclNpZGViYXJQYW5lbC5qcworKysgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EZWJ1Z2dlclNpZGViYXJQYW5lbC5qcwpA
QCAtNDcxLDEzICs0NzEsMTMgQEAgV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwgPSBjbGFzcyBEZWJ1
Z2dlclNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5hdmlnYXRpb25TaWRlYmEKIAogICAgICAgICBp
ZiAoYnJlYWtwb2ludCA9PT0gV0kuZGVidWdnZXJNYW5hZ2VyLmFsbEV4Y2VwdGlvbnNCcmVha3Bv
aW50KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9IFdJLkRlYnVnZ2VyU2lkZWJh
clBhbmVsLkV4Y2VwdGlvbkljb25TdHlsZUNsYXNzTmFtZTsKLSAgICAgICAgICAgIG9wdGlvbnMu
dGl0bGUgPSBXSS5VSVN0cmluZygiQWxsIEV4Y2VwdGlvbnMiKTsKKyAgICAgICAgICAgIG9wdGlv
bnMudGl0bGUgPSBXSS5yZXBlYXRpbmdVSVN0cmluZygiQWxsIEV4Y2VwdGlvbnMiKTsKICAgICAg
ICAgfSBlbHNlIGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIudW5jYXVnaHRF
eGNlcHRpb25zQnJlYWtwb2ludCkgewogICAgICAgICAgICAgb3B0aW9ucy5jbGFzc05hbWUgPSBX
SS5EZWJ1Z2dlclNpZGViYXJQYW5lbC5FeGNlcHRpb25JY29uU3R5bGVDbGFzc05hbWU7Ci0gICAg
ICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmcoIlVuY2F1Z2h0IEV4Y2VwdGlvbnMi
KTsKKyAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5yZXBlYXRpbmdVSVN0cmluZygiVW5j
YXVnaHQgRXhjZXB0aW9ucyIpOwogICAgICAgICB9IGVsc2UgaWYgKGJyZWFrcG9pbnQgPT09IFdJ
LmRlYnVnZ2VyTWFuYWdlci5hc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnQpIHsKICAgICAgICAg
ICAgIG9wdGlvbnMuY2xhc3NOYW1lID0gV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwuQXNzZXJ0aW9u
SWNvblN0eWxlQ2xhc3NOYW1lOwotICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3Ry
aW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiKTsKKyAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBX
SS5yZXBlYXRpbmdVSVN0cmluZygiQXNzZXJ0aW9uIEZhaWx1cmVzIik7CiAgICAgICAgIH0gZWxz
ZSBpZiAoYnJlYWtwb2ludCBpbnN0YW5jZW9mIFdJLkRPTUJyZWFrcG9pbnQpIHsKICAgICAgICAg
ICAgIGlmICghYnJlYWtwb2ludC5kb21Ob2RlSWRlbnRpZmllcikKICAgICAgICAgICAgICAgICBy
ZXR1cm4gbnVsbDsKQEAgLTQ5Niw3ICs0OTYsNyBAQCBXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbCA9
IGNsYXNzIERlYnVnZ2VyU2lkZWJhclBhbmVsIGV4dGVuZHMgV0kuTmF2aWdhdGlvblNpZGViYQog
CiAgICAgICAgICAgICBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZG9tRGVidWdnZXJNYW5hZ2VyLmFs
bFJlcXVlc3RzQnJlYWtwb2ludCkgewogICAgICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NOYW1l
ID0gV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwuQXNzZXJ0aW9uSWNvblN0eWxlQ2xhc3NOYW1lOwot
ICAgICAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiQWxsIFJlcXVlc3Rz
Iik7CisgICAgICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLnJlcGVhdGluZ1VJU3RyaW5n
KCJBbGwgUmVxdWVzdHMiKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlIHsKICAgICAg
ICAgICAgIGxldCBzb3VyY2VDb2RlID0gYnJlYWtwb2ludC5zb3VyY2VDb2RlTG9jYXRpb24gJiYg
YnJlYWtwb2ludC5zb3VyY2VDb2RlTG9jYXRpb24uZGlzcGxheVNvdXJjZUNvZGU7CkBAIC0xNDE5
LDcgKzE0MTksNyBAQCBXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbCA9IGNsYXNzIERlYnVnZ2VyU2lk
ZWJhclBhbmVsIGV4dGVuZHMgV0kuTmF2aWdhdGlvblNpZGViYQogICAgICAgICBpZiAoSW5zcGVj
dG9yQmFja2VuZC5kb21haW5zLkRlYnVnZ2VyLnNldFBhdXNlT25Bc3NlcnRpb25zKSB7CiAgICAg
ICAgICAgICBsZXQgYXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50U2hvd24gPSBXSS5zZXR0aW5n
cy5zaG93QXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50LnZhbHVlOwogCi0gICAgICAgICAgICBj
b250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0ZW0oV0kuVUlTdHJpbmcoIkFzc2VydGlvbiBGYWls
dXJlcyIpLCAoKSA9PiB7CisgICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0
ZW0oV0kucmVwZWF0aW5nVUlTdHJpbmcoIkFzc2VydGlvbiBGYWlsdXJlcyIpLCAoKSA9PiB7CiAg
ICAgICAgICAgICAgICAgaWYgKGFzc2VydGlvbkZhaWx1cmVzQnJlYWtwb2ludFNob3duKQogICAg
ICAgICAgICAgICAgICAgICBXSS5kZWJ1Z2dlck1hbmFnZXIucmVtb3ZlQnJlYWtwb2ludChXSS5k
ZWJ1Z2dlck1hbmFnZXIuYXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50KTsKICAgICAgICAgICAg
ICAgICBlbHNlIHsKQEAgLTE0NDEsNyArMTQ0MSw3IEBAIFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVs
ID0gY2xhc3MgRGVidWdnZXJTaWRlYmFyUGFuZWwgZXh0ZW5kcyBXSS5OYXZpZ2F0aW9uU2lkZWJh
CiAKICAgICAgICAgICAgIGxldCBhbGxSZXF1ZXN0c0JyZWFrcG9pbnRTaG93biA9IFdJLnNldHRp
bmdzLnNob3dBbGxSZXF1ZXN0c0JyZWFrcG9pbnQudmFsdWU7CiAKLSAgICAgICAgICAgIGNvbnRl
eHRNZW51LmFwcGVuZENoZWNrYm94SXRlbShXSS5VSVN0cmluZygiQWxsIFJlcXVlc3RzIiksICgp
ID0+IHsKKyAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZENoZWNrYm94SXRlbShXSS5yZXBl
YXRpbmdVSVN0cmluZygiQWxsIFJlcXVlc3RzIiksICgpID0+IHsKICAgICAgICAgICAgICAgICBp
ZiAoYWxsUmVxdWVzdHNCcmVha3BvaW50U2hvd24pCiAgICAgICAgICAgICAgICAgICAgIFdJLmRv
bURlYnVnZ2VyTWFuYWdlci5yZW1vdmVVUkxCcmVha3BvaW50KFdJLmRvbURlYnVnZ2VyTWFuYWdl
ci5hbGxSZXF1ZXN0c0JyZWFrcG9pbnQpOwogICAgICAgICAgICAgICAgIGVsc2UgewpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJUcmVl
RGV0YWlsc1NpZGViYXJQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL0xheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwuanMKaW5kZXggMmI2NTEzYTdm
ZDIuLmMxYWQ2ZmFhNGNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsLmpzCisrKyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0xheWVyVHJlZURldGFpbHNTaWRl
YmFyUGFuZWwuanMKQEAgLTEzNiw3ICsxMzYsNyBAQCBXSS5MYXllclRyZWVEZXRhaWxzU2lkZWJh
clBhbmVsID0gY2xhc3MgTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbCBleHRlbmRzIFdJLgog
ICAgICAgICBjb2x1bW5zLm5hbWUudGl0bGUgPSBXSS5VSVN0cmluZygiTm9kZSIpOwogICAgICAg
ICBjb2x1bW5zLm5hbWUuc29ydGFibGUgPSBmYWxzZTsKIAotICAgICAgICBjb2x1bW5zLnBhaW50
Q291bnQudGl0bGUgPSBXSS5VSVN0cmluZygiUGFpbnRzIik7CisgICAgICAgIGNvbHVtbnMucGFp
bnRDb3VudC50aXRsZSA9IFdJLlVJU3RyaW5nKCJQYWludHMiLCAiUGFpbnRzIEAgQ29sdW1uIHRp
dGxlIiwgIkEgY291bnQgb2YgaG93IG1hbnkgdGltZXMgYW4gZWxlbWVudCB3YXMgcGFpbnRlZCAo
cmVuZGVyZWQpIik7CiAgICAgICAgIGNvbHVtbnMucGFpbnRDb3VudC5zb3J0YWJsZSA9IHRydWU7
CiAgICAgICAgIGNvbHVtbnMucGFpbnRDb3VudC5hbGlnbmVkID0gInJpZ2h0IjsKICAgICAgICAg
Y29sdW1ucy5wYWludENvdW50LndpZHRoID0gIjcwcHgiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTmV0d29ya1RhYmxlQ29udGVudFZpZXcu
anMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9OZXR3b3JrVGFi
bGVDb250ZW50Vmlldy5qcwppbmRleCAzNmI3ZDBlNmY3Yi4uZWJkZDZhZDM4MGQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL05ldHdvcmtUYWJs
ZUNvbnRlbnRWaWV3LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNl
L1ZpZXdzL05ldHdvcmtUYWJsZUNvbnRlbnRWaWV3LmpzCkBAIC0xODQsNyArMTg0LDcgQEAgV0ku
TmV0d29ya1RhYmxlQ29udGVudFZpZXcgPSBjbGFzcyBOZXR3b3JrVGFibGVDb250ZW50VmlldyBl
eHRlbmRzIFdJLkNvbnRlbnRWaWUKICAgICAgICAgY2FzZSBXSS5SZXNvdXJjZS5UeXBlLlhIUjoK
ICAgICAgICAgICAgIHJldHVybiAiWEhSIjsKICAgICAgICAgY2FzZSBXSS5SZXNvdXJjZS5UeXBl
LkZldGNoOgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJGZXRjaCIpOworICAgICAg
ICAgICAgcmV0dXJuIFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJGZXRjaCIpOwogICAgICAgICBjYXNl
IFdJLlJlc291cmNlLlR5cGUuUGluZzoKICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygi
UGluZyIpOwogICAgICAgICBjYXNlIFdJLlJlc291cmNlLlR5cGUuQmVhY29uOgpAQCAtMTA2NCw3
ICsxMDY0LDcgQEAgV0kuTmV0d29ya1RhYmxlQ29udGVudFZpZXcgPSBjbGFzcyBOZXR3b3JrVGFi
bGVDb250ZW50VmlldyBleHRlbmRzIFdJLkNvbnRlbnRWaWUKICAgICAgICAgICAgIGFsaWduOiAi
cmlnaHQiLAogICAgICAgICB9KTsKIAotICAgICAgICB0aGlzLl90cmFuc2ZlclNpemVDb2x1bW4g
PSBuZXcgV0kuVGFibGVDb2x1bW4oInRyYW5zZmVyU2l6ZSIsIFdJLlVJU3RyaW5nKCJUcmFuc2Zl
ciBTaXplIiksIHsKKyAgICAgICAgdGhpcy5fdHJhbnNmZXJTaXplQ29sdW1uID0gbmV3IFdJLlRh
YmxlQ29sdW1uKCJ0cmFuc2ZlclNpemUiLCBXSS5VSVN0cmluZygiVHJhbnNmZXIgU2l6ZSIsICIi
LCAiQW1vdW50IG9mIGRhdGEgc2VudCBvdmVyIHRoZSBuZXR3b3JrIiksIHsKICAgICAgICAgICAg
IG1pbldpZHRoOiAxMDAsCiAgICAgICAgICAgICBtYXhXaWR0aDogMTUwLAogICAgICAgICAgICAg
aW5pdGlhbFdpZHRoOiAxMDAsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9PYmplY3RUcmVlQmFzZVRyZWVFbGVtZW50LmpzIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvT2JqZWN0VHJlZUJhc2VUcmVlRWxlbWVu
dC5qcwppbmRleCA3ZjkxZjRjNjQwNy4uZjc4YzFlNWY3ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL09iamVjdFRyZWVCYXNlVHJlZUVsZW1l
bnQuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvT2Jq
ZWN0VHJlZUJhc2VUcmVlRWxlbWVudC5qcwpAQCAtMjUwLDE0ICsyNTAsMTQgQEAgV0kuT2JqZWN0
VHJlZUJhc2VUcmVlRWxlbWVudCA9IGNsYXNzIE9iamVjdFRyZWVCYXNlVHJlZUVsZW1lbnQgZXh0
ZW5kcyBXSS5HZW5lcmEKICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgIH0pOwogCi0g
ICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJTY3JvbGwgSW50
byBWaWV3IiksIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRl
bShXSS5VSVN0cmluZygiU2Nyb2xsIGludG8gVmlldyIsICIiLCAiU2Nyb2xsIHNlbGVjdGVkIERP
TSBub2RlIGludG8gdmlldyBvbiB0aGUgaW5zcGVjdGVkIHdlYiBwYWdlIiksIGZ1bmN0aW9uKCkg
ewogICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHNjcm9sbEludG9WaWV3KCkgeyB0aGlzLnNjcm9s
bEludG9WaWV3SWZOZWVkZWQodHJ1ZSk7IH0KICAgICAgICAgICAgICAgICByZXNvbHZlZFZhbHVl
LmNhbGxGdW5jdGlvbihzY3JvbGxJbnRvVmlldywgdW5kZWZpbmVkLCBmYWxzZSwgZnVuY3Rpb24o
KSB7fSk7CiAgICAgICAgICAgICB9KTsKIAogICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5k
U2VwYXJhdG9yKCk7CiAKLSAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlT
dHJpbmcoIlJldmVhbCBpbiBET00gVHJlZSIpLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIGNv
bnRleHRNZW51LmFwcGVuZEl0ZW0oV0kucmVwZWF0aW5nVUlTdHJpbmcoIlJldmVhbCBpbiBET00g
VHJlZSIpLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICByZXNvbHZlZFZhbHVlLnB1c2hO
b2RlVG9Gcm9udGVuZChmdW5jdGlvbihub2RlSWQpIHsKICAgICAgICAgICAgICAgICAgICAgV0ku
ZG9tTWFuYWdlci5pbnNwZWN0RWxlbWVudChub2RlSWQpOwogICAgICAgICAgICAgICAgIH0pOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU291
cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbC5qcwppbmRleCBm
MGU1N2IyNzVmMC4uMmZhNzNlZDRmNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmpzCisr
KyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZXNOYXZp
Z2F0aW9uU2lkZWJhclBhbmVsLmpzCkBAIC03ODEsMTMgKzc4MSwxMyBAQCBXSS5Tb3VyY2VzTmF2
aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNzIFNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVs
IGV4dGVuZHMgVwogCiAgICAgICAgIGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFn
ZXIuYWxsRXhjZXB0aW9uc0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NO
YW1lID0gImJyZWFrcG9pbnQtZXhjZXB0aW9uLWljb24iOwotICAgICAgICAgICAgb3B0aW9ucy50
aXRsZSA9IFdJLlVJU3RyaW5nKCJBbGwgRXhjZXB0aW9ucyIpOworICAgICAgICAgICAgb3B0aW9u
cy50aXRsZSA9IFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJBbGwgRXhjZXB0aW9ucyIpOwogICAgICAg
ICB9IGVsc2UgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRlYnVnZ2VyTWFuYWdlci51bmNhdWdodEV4
Y2VwdGlvbnNCcmVha3BvaW50KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9ICJi
cmVha3BvaW50LWV4Y2VwdGlvbi1pY29uIjsKLSAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBX
SS5VSVN0cmluZygiVW5jYXVnaHQgRXhjZXB0aW9ucyIpOworICAgICAgICAgICAgb3B0aW9ucy50
aXRsZSA9IFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJVbmNhdWdodCBFeGNlcHRpb25zIik7CiAgICAg
ICAgIH0gZWxzZSBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZGVidWdnZXJNYW5hZ2VyLmFzc2VydGlv
bkZhaWx1cmVzQnJlYWtwb2ludCkgewogICAgICAgICAgICAgb3B0aW9ucy5jbGFzc05hbWUgPSAi
YnJlYWtwb2ludC1hc3NlcnRpb24taWNvbiI7Ci0gICAgICAgICAgICBvcHRpb25zLnRpdGxlID0g
V0kuVUlTdHJpbmcoIkFzc2VydGlvbiBGYWlsdXJlcyIpOworICAgICAgICAgICAgb3B0aW9ucy50
aXRsZSA9IFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiKTsKICAgICAg
ICAgfSBlbHNlIGlmIChicmVha3BvaW50IGluc3RhbmNlb2YgV0kuRE9NQnJlYWtwb2ludCkgewog
ICAgICAgICAgICAgaWYgKCFicmVha3BvaW50LmRvbU5vZGVJZGVudGlmaWVyKQogICAgICAgICAg
ICAgICAgIHJldHVybiBudWxsOwpAQCAtODA2LDcgKzgwNiw3IEBAIFdJLlNvdXJjZXNOYXZpZ2F0
aW9uU2lkZWJhclBhbmVsID0gY2xhc3MgU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwgZXh0
ZW5kcyBXCiAKICAgICAgICAgICAgIGlmIChicmVha3BvaW50ID09PSBXSS5kb21EZWJ1Z2dlck1h
bmFnZXIuYWxsUmVxdWVzdHNCcmVha3BvaW50KSB7CiAgICAgICAgICAgICAgICAgb3B0aW9ucy5j
bGFzc05hbWUgPSAiYnJlYWtwb2ludC1hc3NlcnRpb24taWNvbiI7Ci0gICAgICAgICAgICAgICAg
b3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5nKCJBbGwgUmVxdWVzdHMiKTsKKyAgICAgICAgICAg
ICAgICBvcHRpb25zLnRpdGxlID0gV0kucmVwZWF0aW5nVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIp
OwogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgbGV0IHNvdXJj
ZUNvZGUgPSBicmVha3BvaW50LnNvdXJjZUNvZGVMb2NhdGlvbiAmJiBicmVha3BvaW50LnNvdXJj
ZUNvZGVMb2NhdGlvbi5kaXNwbGF5U291cmNlQ29kZTsKQEAgLTEzMjIsNyArMTMyMiw3IEBAIFdJ
LlNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsID0gY2xhc3MgU291cmNlc05hdmlnYXRpb25T
aWRlYmFyUGFuZWwgZXh0ZW5kcyBXCiAgICAgICAgIGlmIChJbnNwZWN0b3JCYWNrZW5kLmRvbWFp
bnMuRGVidWdnZXIuc2V0UGF1c2VPbkFzc2VydGlvbnMpIHsKICAgICAgICAgICAgIGxldCBhc3Nl
cnRpb25GYWlsdXJlc0JyZWFrcG9pbnRTaG93biA9IFdJLnNldHRpbmdzLnNob3dBc3NlcnRpb25G
YWlsdXJlc0JyZWFrcG9pbnQudmFsdWU7CiAKLSAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVu
ZENoZWNrYm94SXRlbShXSS5VSVN0cmluZygiQXNzZXJ0aW9uIEZhaWx1cmVzIiksICgpID0+IHsK
KyAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZENoZWNrYm94SXRlbShXSS5yZXBlYXRpbmdV
SVN0cmluZygiQXNzZXJ0aW9uIEZhaWx1cmVzIiksICgpID0+IHsKICAgICAgICAgICAgICAgICBp
ZiAoYXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50U2hvd24pCiAgICAgICAgICAgICAgICAgICAg
IFdJLmRlYnVnZ2VyTWFuYWdlci5yZW1vdmVCcmVha3BvaW50KFdJLmRlYnVnZ2VyTWFuYWdlci5h
c3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnQpOwogICAgICAgICAgICAgICAgIGVsc2UgewpAQCAt
MTM0NCw3ICsxMzQ0LDcgQEAgV0kuU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwgPSBjbGFz
cyBTb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCBleHRlbmRzIFcKIAogICAgICAgICAgICAg
bGV0IGFsbFJlcXVlc3RzQnJlYWtwb2ludFNob3duID0gV0kuc2V0dGluZ3Muc2hvd0FsbFJlcXVl
c3RzQnJlYWtwb2ludC52YWx1ZTsKIAotICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hl
Y2tib3hJdGVtKFdJLlVJU3RyaW5nKCJBbGwgUmVxdWVzdHMiKSwgKCkgPT4geworICAgICAgICAg
ICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2tib3hJdGVtKFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJB
bGwgUmVxdWVzdHMiKSwgKCkgPT4gewogICAgICAgICAgICAgICAgIGlmIChhbGxSZXF1ZXN0c0Jy
ZWFrcG9pbnRTaG93bikKICAgICAgICAgICAgICAgICAgICAgV0kuZG9tRGVidWdnZXJNYW5hZ2Vy
LnJlbW92ZVVSTEJyZWFrcG9pbnQoV0kuZG9tRGVidWdnZXJNYW5hZ2VyLmFsbFJlcXVlc3RzQnJl
YWtwb2ludCk7CiAgICAgICAgICAgICAgICAgZWxzZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldENTU1N0eWxlRGVjbGFy
YXRpb25TZWN0aW9uLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlvbi5qcwppbmRleCBlZDQwOGNl
MjFmZC4uZDM4OTQ4MTk0MTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24uanMK
KysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hl
ZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlvbi5qcwpAQCAtMzE0LDcgKzMxNCw3IEBAIFdJLlNw
cmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24gPSBjbGFzcyBTcHJlYWRzaGVldENT
U1N0eWxlRGVjbGFyYXRpb25TCiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIFdJ
LkNTU1N0eWxlRGVjbGFyYXRpb24uVHlwZS5JbmxpbmU6Ci0gICAgICAgICAgICB0aGlzLl9zZWxl
Y3RvckVsZW1lbnQudGV4dENvbnRlbnQgPSBXSS5VSVN0cmluZygiU3R5bGUgQXR0cmlidXRlIik7
CisgICAgICAgICAgICB0aGlzLl9zZWxlY3RvckVsZW1lbnQudGV4dENvbnRlbnQgPSBXSS5VSVN0
cmluZygiU3R5bGUgQXR0cmlidXRlIiwgIiIsICJDU1MgcHJvcGVydGllcyBkZWZpbmVkIHZpYSBI
VE1MIHN0eWxlIGF0dHJpYnV0ZSIpOwogICAgICAgICAgICAgdGhpcy5fc2VsZWN0b3JFbGVtZW50
LmNsYXNzTGlzdC5hZGQoInN0eWxlLWF0dHJpYnV0ZSIpOwogICAgICAgICAgICAgYnJlYWs7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Nw
cmVhZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbC5q
cwppbmRleCAzZjk5YWEwOTEzMi4uOTM1ZjU3NWJiOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0UnVsZXNTdHlsZURldGFp
bHNQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3
cy9TcHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwuanMKQEAgLTI0OCw3ICsyNDgsNyBA
QCBXSS5TcHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwgPSBjbGFzcyBTcHJlYWRzaGVl
dFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwgZQogCiAgICAgICAgIGZvciAobGV0IHN0eWxlIG9mIHRo
aXMubm9kZVN0eWxlcy51bmlxdWVPcmRlcmVkU3R5bGVzKSB7CiAgICAgICAgICAgICBpZiAoc3R5
bGUuaW5oZXJpdGVkICYmICghcHJldmlvdXNTdHlsZSB8fCBwcmV2aW91c1N0eWxlLm5vZGUgIT09
IHN0eWxlLm5vZGUpKQotICAgICAgICAgICAgICAgIGNyZWF0ZUhlYWRlcihXSS5VSVN0cmluZygi
SW5oZXJpdGVkIEZyb20iKSwgc3R5bGUubm9kZSk7CisgICAgICAgICAgICAgICAgY3JlYXRlSGVh
ZGVyKFdJLlVJU3RyaW5nKCJJbmhlcml0ZWQgRnJvbSIsICIiLCAiQSBzZWN0aW9uIG9mIENTUyBy
dWxlcyBpbmhlcml0ZWQgZnJvbSBhbm90aGVyIENTUyBydWxlIiksIHN0eWxlLm5vZGUpOwogCiAg
ICAgICAgICAgICBjcmVhdGVTZWN0aW9uKHN0eWxlKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEv
VG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGFkY2ZiMTM5NTRkLi43MWM4
MzZmOGY5NiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE1IEBACisyMDE5LTA0LTEwICBOaWtpdGEgVmFzaWx5ZXYgIDxudmFzaWx5
ZXZAYXBwbGUuY29tPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IFByb3ZpZGUgVUlTdHJpbmcg
ZGVzY3JpcHRpb25zIHRvIGltcHJvdmUgbG9jYWxpemF0aW9ucworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MTMyCisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS80ODQ1NzgxNz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBBbGxvdyBlbXB0eSBrZXlzIGZvciBXSS5VSVN0cmluZy4KKworICAgICAgICAqIFNj
cmlwdHMvZXh0cmFjdC1sb2NhbGl6YWJsZS1qcy1zdHJpbmdzOgorCiAyMDE5LTAyLTI4ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFNldmVyYWwgUGFz
dGVJbWFnZSBBUEkgdGVzdHMgYXJlIGZsYWt5CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL2V4
dHJhY3QtbG9jYWxpemFibGUtanMtc3RyaW5ncyBiL1Rvb2xzL1NjcmlwdHMvZXh0cmFjdC1sb2Nh
bGl6YWJsZS1qcy1zdHJpbmdzCmluZGV4IDM0YjVhYzc3OTNiLi5mOGIwNzZmZGY4MiAxMDA3NTUK
LS0tIGEvVG9vbHMvU2NyaXB0cy9leHRyYWN0LWxvY2FsaXphYmxlLWpzLXN0cmluZ3MKKysrIGIv
VG9vbHMvU2NyaXB0cy9leHRyYWN0LWxvY2FsaXphYmxlLWpzLXN0cmluZ3MKQEAgLTc0LDcgKzc0
LDcgQEAgZm9yIG15ICRmaWxlIChzb3J0IEBmaWxlcykgewogICAgICAgICBjaG9tcDsKIAogICAg
ICAgICAjIEhhbmRsZSBXZWJJbnNwZWN0b3Igc3RyaW5ncy4gUHJpbnRzIGEgd2FybmluZyBpZiBh
IG5vbi1zdHJpbmcgbGl0ZXJhbCBpcyBwYXNzZWQgdG8gV0kuVUlTdHJpbmcoKS4KLSAgICAgICAg
SGFuZGxlVUlTdHJpbmcoJDEsICQyIHx8ICQxLCAkMyB8fCAiIiwgJGZpbGUsICQuKSB3aGlsZSBz
L1dJXC5VSVN0cmluZ1woIihbXiJdKykiKD86LFxzKiIoW14iXSspIig/OixccyoiKFteIl0rKSIp
Pyk/XCkvLzsKKyAgICAgICAgSGFuZGxlVUlTdHJpbmcoJDEsICQyIHx8ICQxLCAkMyB8fCAiIiwg
JGZpbGUsICQuKSB3aGlsZSBzL1dJXC5VSVN0cmluZ1woIihbXiJdKykiKD86LFxzKiIoW14iXSop
Iig/OixccyoiKFteIl0rKSIpPyk/XCkvLzsKICAgICAgICAgcHJpbnQgIiRmaWxlOiQuOldBUk5J
Tkc6ICQmXG4iIHdoaWxlIHMvV0lcLlVJU3RyaW5nXCguKj9cKS8vOwogCiAgICAgICAgICMgSGFu
ZGxlIHN0cmluZ3MgZm9yIG90aGVyIHByb2plY3RzIHRoYXQgYWxzbyB1c2UgdGhpcyBzY3JpcHQu
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>367155</attachid>
            <date>2019-04-10 13:30:29 -0700</date>
            <delta_ts>2019-04-11 16:31:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>40770</size>
            <attacher name="Nikita Vasilyev">nvasilyev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDUwMjZjNmM3NzVkLi5hZjM1ZjJlYTJjOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMTktMDQtMTAgIE5pa2l0
YSBWYXNpbHlldiAgPG52YXNpbHlldkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogUHJvdmlkZSBVSVN0cmluZyBkZXNjcmlwdGlvbnMgdG8gaW1wcm92ZSBsb2NhbGl6YXRpb25z
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUxMzIK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ4NDU3ODE3PgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2Nh
bGl6ZWRTdHJpbmdzLmpzOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvQmFzZS9Mb2FkTG9jYWxp
emVkU3RyaW5ncy5qczoKKyAgICAgICAgKFdJLnJlcGVhdGluZ1VJU3RyaW5nKToKKyAgICAgICAg
KiBVc2VySW50ZXJmYWNlL01vZGVscy9MYXlvdXRUaW1lbGluZVJlY29yZC5qczoKKyAgICAgICAg
KFdJLkxheW91dFRpbWVsaW5lUmVjb3JkLmRpc3BsYXlOYW1lRm9yRXZlbnRUeXBlKToKKyAgICAg
ICAgKiBVc2VySW50ZXJmYWNlL01vZGVscy9SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpz
OgorICAgICAgICAoV0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5kaXNwbGF5TmFtZUZv
clRhc2tUeXBlKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL01vZGVscy9SZXNvdXJjZS5qczoK
KyAgICAgICAgKFdJLlJlc291cmNlLmRpc3BsYXlOYW1lRm9yVHlwZSk6CisgICAgICAgICogVXNl
ckludGVyZmFjZS9WaWV3cy9DUFVUaW1lbGluZVZpZXcuanM6CisgICAgICAgIChXSS5DUFVUaW1l
bGluZVZpZXcuZGlzcGxheU5hbWVGb3JTYW1wbGVUeXBlKToKKyAgICAgICAgKiBVc2VySW50ZXJm
YWNlL1ZpZXdzL0NvbnRleHRNZW51VXRpbGl0aWVzLmpzOgorICAgICAgICAqIFVzZXJJbnRlcmZh
Y2UvVmlld3MvRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50LmpzOgorICAgICAgICAoV0kuRE9NQnJl
YWtwb2ludFRyZWVFbGVtZW50LmRpc3BsYXlOYW1lRm9yVHlwZSk6CisgICAgICAgICogVXNlcklu
dGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJlZUVsZW1lbnQuanM6CisgICAgICAgIChXSS5ET01Ob2Rl
VHJlZUVsZW1lbnQucHJvdG90eXBlLnBvcHVsYXRlQ29udGV4dE1lbnUpOgorICAgICAgICAoV0ku
RE9NTm9kZVRyZWVFbGVtZW50KToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRy
ZWVFbGVtZW50LmpzOgorICAgICAgICAoV0kuRE9NVHJlZUVsZW1lbnQucHJvdG90eXBlLl9wb3B1
bGF0ZVRhZ0NvbnRleHRNZW51KToKKyAgICAgICAgKFdJLkRPTVRyZWVFbGVtZW50LnByb3RvdHlw
ZS5fcG9wdWxhdGVOb2RlQ29udGV4dE1lbnUpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmll
d3MvRGVidWdnZXJTaWRlYmFyUGFuZWwuanM6CisgICAgICAgIChXSS5EZWJ1Z2dlclNpZGViYXJQ
YW5lbC5wcm90b3R5cGUuX2FkZEJyZWFrcG9pbnQpOgorICAgICAgICAoV0kuRGVidWdnZXJTaWRl
YmFyUGFuZWwucHJvdG90eXBlLl9oYW5kbGVDcmVhdGVCcmVha3BvaW50Q2xpY2tlZCk6CisgICAg
ICAgIChXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9W
aWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsLmpzOgorICAgICAgICAoV0kuTGF5ZXJU
cmVlRGV0YWlsc1NpZGViYXJQYW5lbC5wcm90b3R5cGUuX2J1aWxkRGF0YUdyaWRTZWN0aW9uKToK
KyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL05ldHdvcmtUYWJsZUNvbnRlbnRWaWV3Lmpz
OgorICAgICAgICAoV0kuTmV0d29ya1RhYmxlQ29udGVudFZpZXcuc2hvcnREaXNwbGF5TmFtZUZv
clJlc291cmNlVHlwZSk6CisgICAgICAgIChXSS5OZXR3b3JrVGFibGVDb250ZW50Vmlldy5wcm90
b3R5cGUuaW5pdGlhbExheW91dCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9PYmpl
Y3RUcmVlQmFzZVRyZWVFbGVtZW50LmpzOgorICAgICAgICBEcml2ZS1ieTogIkludG8iIHNob3Vs
ZG4ndCBiZSBjYXBpdGFsaXplZC4KKworICAgICAgICAoV0kuT2JqZWN0VHJlZUJhc2VUcmVlRWxl
bWVudC5wcm90b3R5cGUuX2FwcGVuZE1lbnVzSXRlbXNGb3JPYmplY3QpOgorICAgICAgICAoV0ku
T2JqZWN0VHJlZUJhc2VUcmVlRWxlbWVudCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3
cy9Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbC5qczoKKyAgICAgICAgKFdJLlNvdXJjZXNO
YXZpZ2F0aW9uU2lkZWJhclBhbmVsLnByb3RvdHlwZS5fYWRkQnJlYWtwb2ludCk6CisgICAgICAg
IChXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbC5wcm90b3R5cGUuX2hhbmRsZUNyZWF0
ZUJyZWFrcG9pbnRDbGlja2VkKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVh
ZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24uanM6CisgICAgICAgIChXSS5TcHJlYWRz
aGVldENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9uLnByb3RvdHlwZS5fcmVuZGVyU2VsZWN0b3Ip
OgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0
YWlsc1BhbmVsLmpzOgorICAgICAgICAoV0kuU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWlsc1Bh
bmVsLnByb3RvdHlwZS5sYXlvdXQpOgorCiAyMDE5LTA0LTA4ICBNYXR0IEJha2VyICA8bWF0dGJh
a2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBFbGVtZW50cyB0YWI6IENs
YXNzZXMgdG9nZ2xlIHNob3VsZCB1c2UgYWNjZW50IGNvbG9yIG9uIGhvdmVyCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2NhbGl6ZWRT
dHJpbmdzLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4ubHByb2ov
bG9jYWxpemVkU3RyaW5ncy5qcwppbmRleCBiNmY5YmZkMjMyYS4uZWM3Mzg4OGY4OTAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xvY2Fs
aXplZFN0cmluZ3MuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMv
ZW4ubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcwpAQCAtOTcsOCArOTcsMTAgQEAgbG9jYWxpemVk
U3RyaW5nc1siQWRkaXRpb25zIl0gPSAiQWRkaXRpb25zIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFk
ZHJlc3MiXSA9ICJBZGRyZXNzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFsbCJdID0gIkFsbCI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJBbGwgQ2hhbmdlcyJdID0gIkFsbCBDaGFuZ2VzIjsKKy8qIEJyZWFr
IChwYXVzZSkgb24gYWxsIGV4Y2VwdGlvbnMgKi8KIGxvY2FsaXplZFN0cmluZ3NbIkFsbCBFeGNl
cHRpb25zIl0gPSAiQWxsIEV4Y2VwdGlvbnMiOwogbG9jYWxpemVkU3RyaW5nc1siQWxsIExheWVy
cyJdID0gIkFsbCBMYXllcnMiOworLyogQSBzdWJtZW51IG9mICdCcmVhayBvbicgKi8KIGxvY2Fs
aXplZFN0cmluZ3NbIkFsbCBSZXF1ZXN0cyJdID0gIkFsbCBSZXF1ZXN0cyI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJBbGwgUmVzb3VyY2VzIl0gPSAiQWxsIFJlc291cmNlcyI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJBbGwgU3RvcmFnZSJdID0gIkFsbCBTdG9yYWdlIjsKQEAgLTEyNywxMiArMTI5LDE0IEBA
IGxvY2FsaXplZFN0cmluZ3NbIkFyZWEiXSA9ICJBcmVhIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFz
c2VydGlvbiJdID0gIkFzc2VydGlvbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRpb24gRmFp
bGVkIl0gPSAiQXNzZXJ0aW9uIEZhaWxlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRpb24g
RmFpbGVkOiAlcyJdID0gIkFzc2VydGlvbiBGYWlsZWQ6ICVzIjsKKy8qIEJyZWFrIHdoZW4gY29u
c29sZS5hc3NlcnQoKSBmYWlscyAqLwogbG9jYWxpemVkU3RyaW5nc1siQXNzZXJ0aW9uIEZhaWx1
cmVzIl0gPSAiQXNzZXJ0aW9uIEZhaWx1cmVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFzc2VydGlv
biB3aXRoIG1lc3NhZ2U6ICVzIl0gPSAiQXNzZXJ0aW9uIHdpdGggbWVzc2FnZTogJXMiOwogbG9j
YWxpemVkU3RyaW5nc1siQXNzZXJ0aXZlIl0gPSAiQXNzZXJ0aXZlIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkFzc29jaWF0ZWQgRGF0YSJdID0gIkFzc29jaWF0ZWQgRGF0YSI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJBc3luYyBhdWRpdHMgYXJlIG5vdCBzdXBwb3J0ZWQuIl0gPSAiQXN5bmMgYXVkaXRzIGFy
ZSBub3Qgc3VwcG9ydGVkLiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBdHRyaWJ1dGUiXSA9ICJBdHRy
aWJ1dGUiOworLyogQSBzdWJtZW51IG9mICdCcmVhayBPbicgKi8KIGxvY2FsaXplZFN0cmluZ3Nb
IkF0dHJpYnV0ZSBNb2RpZmllZCJdID0gIkF0dHJpYnV0ZSBNb2RpZmllZCI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJBdHRyaWJ1dGVzIl0gPSAiQXR0cmlidXRlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJB
dWRpdCJdID0gIkF1ZGl0IjsKQEAgLTE5Niw2ICsyMDAsNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJD
YW52YXMgJWQiXSA9ICJDYW52YXMgJWQiOwogbG9jYWxpemVkU3RyaW5nc1siQ2FudmFzICVzIl0g
PSAiQ2FudmFzICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNhbnZhcyBFbGVtZW50Il0gPSAiQ2Fu
dmFzIEVsZW1lbnQiOwogbG9jYWxpemVkU3RyaW5nc1siQ2FudmFzZXMiXSA9ICJDYW52YXNlcyI7
CisvKiBDYXB0dXJlIFNjcmVlbnNob3Qgb2YgdGhlIHNlbGVjdGVkIERPTSBub2RlICovCiBsb2Nh
bGl6ZWRTdHJpbmdzWyJDYXB0dXJlIFNjcmVlbnNob3QiXSA9ICJDYXB0dXJlIFNjcmVlbnNob3Qi
OwogbG9jYWxpemVkU3RyaW5nc1siQ2FwdHVyaW5nIl0gPSAiQ2FwdHVyaW5nIjsKIC8qIENvbnRl
eHQgbWVudSBsYWJlbCBmb3Igd2hldGhlciBzZWFyY2hlcyBzaG91bGQgYmUgY2FzZSBzZW5zaXRp
dmUuICovCkBAIC0yMDksNiArMjE0LDcgQEAgbG9jYWxpemVkU3RyaW5nc1siQ2hhbmdlcyJdID0g
IkNoYW5nZXMiOwogbG9jYWxpemVkU3RyaW5nc1siQ2hhcmFjdGVyIERhdGEiXSA9ICJDaGFyYWN0
ZXIgRGF0YSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDaGFyZ2UgXHUyMDFDJXNcdTIwMUQgdG8gQ2Fs
bGVycyJdID0gIkNoYXJnZSBcdTIwMUMlc1x1MjAxRCB0byBDYWxsZXJzIjsKIGxvY2FsaXplZFN0
cmluZ3NbIkNoZWNrZWQiXSA9ICJDaGVja2VkIjsKKy8qIEEgc3VibWVudSBvZiAnQWRkJyAqLwog
bG9jYWxpemVkU3RyaW5nc1siQ2hpbGQiXSA9ICJDaGlsZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJD
aGlsZCBMYXllcnMiXSA9ICJDaGlsZCBMYXllcnMiOwogbG9jYWxpemVkU3RyaW5nc1siQ2hpbGQg
YWRkZWQgdG8gIl0gPSAiQ2hpbGQgYWRkZWQgdG8gIjsKQEAgLTI0Myw3ICsyNDksOCBAQCBsb2Nh
bGl6ZWRTdHJpbmdzWyJDb2xsZWN0IGdhcmJhZ2UiXSA9ICJDb2xsZWN0IGdhcmJhZ2UiOwogbG9j
YWxpemVkU3RyaW5nc1siQ29tbWVudCJdID0gIkNvbW1lbnQiOwogbG9jYWxpemVkU3RyaW5nc1si
Q29tcGFyZSBzbmFwc2hvdHMiXSA9ICJDb21wYXJlIHNuYXBzaG90cyI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJDb21wYXJpc29uIG9mIHRvdGFsIG1lbW9yeSBzaXplIGF0IHRoZSBlbmQgb2YgdGhlIHNl
bGVjdGVkIHRpbWUgcmFuZ2UgdG8gdGhlIG1heGltdW0gbWVtb3J5IHNpemUgaW4gdGhpcyByZWNv
cmRpbmciXSA9ICJDb21wYXJpc29uIG9mIHRvdGFsIG1lbW9yeSBzaXplIGF0IHRoZSBlbmQgb2Yg
dGhlIHNlbGVjdGVkIHRpbWUgcmFuZ2UgdG8gdGhlIG1heGltdW0gbWVtb3J5IHNpemUgaW4gdGhp
cyByZWNvcmRpbmciOwotbG9jYWxpemVkU3RyaW5nc1siQ29tcG9zaXRlIl0gPSAiQ29tcG9zaXRl
IjsKKy8qIENvbXBvc2l0ZSBwaGFzZSByZWNvcmRzLCB3aGVyZSBncmFwaGljIGxheWVycyBhcmUg
Y29tYmluZWQgKi8KK2xvY2FsaXplZFN0cmluZ3NbIkNvbXBvc2l0ZSBAIFRpbWVsaW5lIHJlY29y
ZCJdID0gIkNvbXBvc2l0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wb3NpdGVkIl0gPSAiQ29t
cG9zaXRlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wcmVzc2VkIl0gPSAiQ29tcHJlc3NlZCI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wcmVzc2lvbiJdID0gIkNvbXByZXNzaW9uIjsKQEAgLTQ2
Myw3ICs0NzAsOSBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJFeHRyYSBTY3JpcHRzIl0gPSAiRXh0cmEg
U2NyaXB0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGYWRlIHVuZXhlY3V0ZWQgY29kZSJdID0gIkZh
ZGUgdW5leGVjdXRlZCBjb2RlIjsKIGxvY2FsaXplZFN0cmluZ3NbIkZhaWxlZCB0byB1cGdyYWRl
Il0gPSAiRmFpbGVkIHRvIHVwZ3JhZGUiOwogbG9jYWxpemVkU3RyaW5nc1siRmFpbHVyZSBzdGF0
dXMgY29kZSJdID0gIkZhaWx1cmUgc3RhdHVzIGNvZGUiOworLyogUmVzb3VyY2UgbG9hZGVkIHZp
YSAnZmV0Y2gnIG1ldGhvZCAqLwogbG9jYWxpemVkU3RyaW5nc1siRmV0Y2giXSA9ICJGZXRjaCI7
CisvKiBSZXNvdXJjZXMgbG9hZGVkIHZpYSAnZmV0Y2gnIG1ldGhvZCAqLwogbG9jYWxpemVkU3Ry
aW5nc1siRmV0Y2hlcyJdID0gIkZldGNoZXMiOwogbG9jYWxpemVkU3RyaW5nc1siRmlsZSBvciBS
ZXNvdXJjZSJdID0gIkZpbGUgb3IgUmVzb3VyY2UiOwogbG9jYWxpemVkU3RyaW5nc1siRmlsZW5h
bWUiXSA9ICJGaWxlbmFtZSI7CkBAIC00ODAsNyArNDg5LDkgQEAgbG9jYWxpemVkU3RyaW5nc1si
Rm9udHMiXSA9ICJGb250cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3JjZSBEYXJrIEFwcGVhcmFu
Y2UiXSA9ICJGb3JjZSBEYXJrIEFwcGVhcmFuY2UiOwogbG9jYWxpemVkU3RyaW5nc1siRm9yY2Ug
TGlnaHQgQXBwZWFyYW5jZSJdID0gIkZvcmNlIExpZ2h0IEFwcGVhcmFuY2UiOwogbG9jYWxpemVk
U3RyaW5nc1siRm9yY2UgUHJpbnQgTWVkaWEgU3R5bGVzIl0gPSAiRm9yY2UgUHJpbnQgTWVkaWEg
U3R5bGVzIjsKKy8qIExheW91dCBwaGFzZSByZWNvcmRzIHRoYXQgd2VyZSBpbXBlcmF0aXZlIChm
b3JjZWQpICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3JjZWQgTGF5b3V0Il0gPSAiRm9yY2VkIExh
eW91dCI7CisvKiBBIGNvbnRleHQgbWVudSB0byBmb3JjZSAob3ZlcnJpZGUpIGVsZW1lbnQncyBw
c2V1ZG8tY2xhc3NlcyAqLwogbG9jYWxpemVkU3RyaW5nc1siRm9yY2VkIFBzZXVkby1DbGFzc2Vz
Il0gPSAiRm9yY2VkIFBzZXVkby1DbGFzc2VzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkZvcm1hdDog
SFNMIl0gPSAiRm9ybWF0OiBIU0wiOwogbG9jYWxpemVkU3RyaW5nc1siRm9ybWF0OiBIU0xBIl0g
PSAiRm9ybWF0OiBIU0xBIjsKQEAgLTU3MSw2ICs1ODIsNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJJ
bmRleCBLZXkgXHUyMDE0ICVzIl0gPSAiSW5kZXggS2V5IFx1MjAxNCAlcyI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJJbmRleGVkIERhdGFiYXNlcyJdID0gIkluZGV4ZWQgRGF0YWJhc2VzIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkluZm86ICJdID0gIkluZm86ICI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbmZv
cyJdID0gIkluZm9zIjsKKy8qIEEgc2VjdGlvbiBvZiBDU1MgcnVsZXMgaW5oZXJpdGVkIGZyb20g
YW5vdGhlciBDU1MgcnVsZSAqLwogbG9jYWxpemVkU3RyaW5nc1siSW5oZXJpdGVkIEZyb20iXSA9
ICJJbmhlcml0ZWQgRnJvbSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbml0aWFsIFN0YXRlIl0gPSAi
SW5pdGlhbCBTdGF0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbml0aWFsIFZlbG9jaXR5Il0gPSAi
SW5pdGlhbCBWZWxvY2l0eSI7CkBAIC01OTksOCArNjExLDkgQEAgbG9jYWxpemVkU3RyaW5nc1si
TGF5ZXIgQ291bnQ6ICVkIl0gPSAiTGF5ZXIgQ291bnQ6ICVkIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkxheWVyIEluZm8iXSA9ICJMYXllciBJbmZvIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxheWVycyJd
ID0gIkxheWVycyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMYXllcnM6Il0gPSAiTGF5ZXJzOiI7Ci1s
b2NhbGl6ZWRTdHJpbmdzWyJMYXlvdXQiXSA9ICJMYXlvdXQiOwogbG9jYWxpemVkU3RyaW5nc1si
TGF5b3V0ICYgUmVuZGVyaW5nIl0gPSAiTGF5b3V0ICYgUmVuZGVyaW5nIjsKKy8qIExheW91dCBw
aGFzZSByZWNvcmRzICovCitsb2NhbGl6ZWRTdHJpbmdzWyJMYXlvdXQgQCBUaW1lbGluZSByZWNv
cmQiXSA9ICJMYXlvdXQiOwogbG9jYWxpemVkU3RyaW5nc1siTGF5b3V0IEludmFsaWRhdGVkIl0g
PSAiTGF5b3V0IEludmFsaWRhdGVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxpbmUgJWQiXSA9ICJM
aW5lICVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxpbmUgJWQ6JWQiXSA9ICJMaW5lICVkOiVkIjsK
QEAgLTYxOCwxMCArNjMxLDEyIEBAIGxvY2FsaXplZFN0cmluZ3NbIkxvY2FsIFZhcmlhYmxlcyJd
ID0gIkxvY2FsIFZhcmlhYmxlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2NhdGVkIGF0ICVzIl0g
PSAiTG9jYXRlZCBhdCAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2NhdGlvbiJdID0gIkxvY2F0
aW9uIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBDYW52YXMgQ29udGV4dCJdID0gIkxvZyBDYW52
YXMgQ29udGV4dCI7CisvKiBMb2cgRE9NIGVsZW1lbnQgdG8gQ29uc29sZSAqLwogbG9jYWxpemVk
U3RyaW5nc1siTG9nIEVsZW1lbnQiXSA9ICJMb2cgRWxlbWVudCI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJMb2cgRnJhbWUgVGV4dCJdID0gIkxvZyBGcmFtZSBUZXh0IjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkxvZyBGcmFtZSBWYWx1ZSJdID0gIkxvZyBGcmFtZSBWYWx1ZSI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJMb2cgTWVzc2FnZSJdID0gIkxvZyBNZXNzYWdlIjsKKy8qIExvZyBET00gbm9kZSB0byBDb25z
b2xlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgTm9kZSJdID0gIkxvZyBOb2RlIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkxvZyBTeW1ib2wiXSA9ICJMb2cgU3ltYm9sIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkxvZyBWYWx1ZSJdID0gIkxvZyBWYWx1ZSI7CkBAIC02NjUsNiArNjgwLDcgQEAgbG9jYWxp
emVkU3RyaW5nc1siTmV0d29yayJdID0gIk5ldHdvcmsiOwogbG9jYWxpemVkU3RyaW5nc1siTmV0
d29yayBJc3N1ZSJdID0gIk5ldHdvcmsgSXNzdWUiOwogbG9jYWxpemVkU3RyaW5nc1siTmV0d29y
ayBSZXF1ZXN0cyJdID0gIk5ldHdvcmsgUmVxdWVzdHMiOwogbG9jYWxpemVkU3RyaW5nc1siTmV3
IFRhYiJdID0gIk5ldyBUYWIiOworLyogQSBzdWJtZW51IG9mICdBZGQnICovCiBsb2NhbGl6ZWRT
dHJpbmdzWyJOZXh0IFNpYmxpbmciXSA9ICJOZXh0IFNpYmxpbmciOwogbG9jYWxpemVkU3RyaW5n
c1siTm8iXSA9ICJObyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJObyBBY2Nlc3NpYmlsaXR5IEluZm9y
bWF0aW9uIl0gPSAiTm8gQWNjZXNzaWJpbGl0eSBJbmZvcm1hdGlvbiI7CkBAIC03MDUsNiArNzIx
LDcgQEAgbG9jYWxpemVkU3RyaW5nc1siTm8gcmVxdWVzdCwgc2VydmVkIGZyb20gdGhlIG1lbW9y
eSBjYWNoZS4iXSA9ICJObyByZXF1ZXN0LCBzZXIKIGxvY2FsaXplZFN0cmluZ3NbIk5vIHJlc3Bv
bnNlIGNvb2tpZXMuIl0gPSAiTm8gcmVzcG9uc2UgY29va2llcy4iOwogbG9jYWxpemVkU3RyaW5n
c1siTm8gcmVzcG9uc2UgaGVhZGVycyJdID0gIk5vIHJlc3BvbnNlIGhlYWRlcnMiOwogbG9jYWxp
emVkU3RyaW5nc1siTm9kZSJdID0gIk5vZGUiOworLyogQSBzdWJtZW51IG9mICdCcmVhayBPbicg
Ki8KIGxvY2FsaXplZFN0cmluZ3NbIk5vZGUgUmVtb3ZlZCJdID0gIk5vZGUgUmVtb3ZlZCI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJOb2RlcyJdID0gIk5vZGVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5v
bmUiXSA9ICJOb25lIjsKQEAgLTc0NCw4ICs3NjEsMTEgQEAgbG9jYWxpemVkU3RyaW5nc1siUGFn
ZSJdID0gIlBhZ2UiOwogbG9jYWxpemVkU3RyaW5nc1siUGFnZSBJc3N1ZSJdID0gIlBhZ2UgSXNz
dWUiOwogbG9jYWxpemVkU3RyaW5nc1siUGFnZSBuYXZpZ2F0ZWQgYXQgJXMiXSA9ICJQYWdlIG5h
dmlnYXRlZCBhdCAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQYWdlIHJlbG9hZGVkIGF0ICVzIl0g
PSAiUGFnZSByZWxvYWRlZCBhdCAlcyI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJQYWludCJdID0gIlBh
aW50IjsKKy8qIFBhaW50IChyZW5kZXIpIHBoYXNlIHJlY29yZHMgKi8KK2xvY2FsaXplZFN0cmlu
Z3NbIlBhaW50IEAgVGltZWxpbmUgcmVjb3JkIl0gPSAiUGFpbnQiOwogbG9jYWxpemVkU3RyaW5n
c1siUGFpbnRzIl0gPSAiUGFpbnRzIjsKKy8qIEEgY291bnQgb2YgaG93IG1hbnkgdGltZXMgYW4g
ZWxlbWVudCB3YXMgcGFpbnRlZCAocmVuZGVyZWQpICovCitsb2NhbGl6ZWRTdHJpbmdzWyJQYWlu
dHMgQCBDb2x1bW4gdGl0bGUiXSA9ICJQYWludHMiOwogbG9jYWxpemVkU3RyaW5nc1siUGFyZW50
Il0gPSAiUGFyZW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIlBhcnRpYWwgR2FyYmFnZSBDb2xsZWN0
aW9uIl0gPSAiUGFydGlhbCBHYXJiYWdlIENvbGxlY3Rpb24iOwogbG9jYWxpemVkU3RyaW5nc1si
UGFzc2l2ZSJdID0gIlBhc3NpdmUiOwpAQCAtNzcyLDYgKzc5Miw3IEBAIGxvY2FsaXplZFN0cmlu
Z3NbIlByZXNzICVzIHRvIHN0b3AgZWRpdGluZyJdID0gIlByZXNzICVzIHRvIHN0b3AgZWRpdGlu
ZyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQcmVzc2VkIl0gPSAiUHJlc3NlZCI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJQcmV0dHkgcHJpbnQiXSA9ICJQcmV0dHkgcHJpbnQiOwogbG9jYWxpemVkU3RyaW5n
c1siUHJldmlldyJdID0gIlByZXZpZXciOworLyogQSBzdWJtZW51IG9mICdBZGQnICovCiBsb2Nh
bGl6ZWRTdHJpbmdzWyJQcmV2aW91cyBTaWJsaW5nIl0gPSAiUHJldmlvdXMgU2libGluZyI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJQcmltYXJ5IEtleSJdID0gIlByaW1hcnkgS2V5IjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIlByaW1hcnkgS2V5IFx1MjAxNCAlcyJdID0gIlByaW1hcnkgS2V5IFx1MjAxNCAl
cyI7CkBAIC04NTksOSArODgwLDExIEBAIGxvY2FsaXplZFN0cmluZ3NbIlJldHVybiB0eXBlIGZv
ciBhbm9ueW1vdXMgZnVuY3Rpb24iXSA9ICJSZXR1cm4gdHlwZSBmb3IgYW5vbnltCiBsb2NhbGl6
ZWRTdHJpbmdzWyJSZXR1cm4gdHlwZSBmb3IgZnVuY3Rpb246ICVzIl0gPSAiUmV0dXJuIHR5cGUg
Zm9yIGZ1bmN0aW9uOiAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXR1cm4gdmFsdWUgaXMgbm90
IGFuIG9iamVjdCwgc3RyaW5nLCBvciBib29sZWFuIl0gPSAiUmV0dXJuIHZhbHVlIGlzIG5vdCBh
biBvYmplY3QsIHN0cmluZywgb3IgYm9vbGVhbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZlYWwg
QnJlYWtwb2ludCJdID0gIlJldmVhbCBCcmVha3BvaW50IjsKKy8qIE9wZW4gRWxlbWVudHMgdGFi
IGFuZCBzZWxlY3QgdGhpcyBub2RlIGluIERPTSB0cmVlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJS
ZXZlYWwgaW4gRE9NIFRyZWUiXSA9ICJSZXZlYWwgaW4gRE9NIFRyZWUiOwogbG9jYWxpemVkU3Ry
aW5nc1siUmV2ZWFsIGluIERlYnVnZ2VyIFRhYiJdID0gIlJldmVhbCBpbiBEZWJ1Z2dlciBUYWIi
OwogbG9jYWxpemVkU3RyaW5nc1siUmV2ZWFsIGluIEVsZW1lbnRzIFRhYiJdID0gIlJldmVhbCBp
biBFbGVtZW50cyBUYWIiOworLyogT3BlbiBMYXllcnMgdGFiIGFuZCBzZWxlY3QgdGhlIGxheWVy
IGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBub2RlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZlYWwg
aW4gTGF5ZXJzIFRhYiJdID0gIlJldmVhbCBpbiBMYXllcnMgVGFiIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlJldmVhbCBpbiBOZXR3b3JrIFRhYiJdID0gIlJldmVhbCBpbiBOZXR3b3JrIFRhYiI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJSZXZlYWwgaW4gT3JpZ2luYWwgUmVzb3VyY2UiXSA9ICJSZXZlYWwg
aW4gT3JpZ2luYWwgUmVzb3VyY2UiOwpAQCAtODg5LDcgKzkxMiw4IEBAIGxvY2FsaXplZFN0cmlu
Z3NbIlNjcmlwdCBFbGVtZW50ICVkIl0gPSAiU2NyaXB0IEVsZW1lbnQgJWQiOwogbG9jYWxpemVk
U3RyaW5nc1siU2NyaXB0IEVudHJpZXM6Il0gPSAiU2NyaXB0IEVudHJpZXM6IjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIlNjcmlwdCBFdmFsdWF0ZWQiXSA9ICJTY3JpcHQgRXZhbHVhdGVkIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIlNjcmlwdHMiXSA9ICJTY3JpcHRzIjsKLWxvY2FsaXplZFN0cmluZ3NbIlNj
cm9sbCBJbnRvIFZpZXciXSA9ICJTY3JvbGwgSW50byBWaWV3IjsKKy8qIFNjcm9sbCBzZWxlY3Rl
ZCBET00gbm9kZSBpbnRvIHZpZXcgb24gdGhlIGluc3BlY3RlZCB3ZWIgcGFnZSAqLworbG9jYWxp
emVkU3RyaW5nc1siU2Nyb2xsIGludG8gVmlldyJdID0gIlNjcm9sbCBpbnRvIFZpZXciOwogbG9j
YWxpemVkU3RyaW5nc1siU2VhcmNoIl0gPSAiU2VhcmNoIjsKIGxvY2FsaXplZFN0cmluZ3NbIlNl
YXJjaCBBZ2FpbiJdID0gIlNlYXJjaCBBZ2FpbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWFyY2gg
UmVzb3VyY2UgQ29udGVudCJdID0gIlNlYXJjaCBSZXNvdXJjZSBDb250ZW50IjsKQEAgLTkwNCwx
MCArOTI4LDEyIEBAIGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdCBiYXNlbGluZSBzbmFwc2hvdCJd
ID0gIlNlbGVjdCBiYXNlbGluZSBzbmFwc2hvdCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3Qg
Y29tcGFyaXNvbiBzbmFwc2hvdCJdID0gIlNlbGVjdCBjb21wYXJpc29uIHNuYXBzaG90IjsKIGxv
Y2FsaXplZFN0cmluZ3NbIlNlbGVjdGVkIl0gPSAiU2VsZWN0ZWQiOwogbG9jYWxpemVkU3RyaW5n
c1siU2VsZWN0ZWQgQ2FudmFzIENvbnRleHQiXSA9ICJTZWxlY3RlZCBDYW52YXMgQ29udGV4dCI7
CisvKiBTZWxlY3RlZCBET00gZWxlbWVudCAqLwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0ZWQg
RWxlbWVudCJdID0gIlNlbGVjdGVkIEVsZW1lbnQiOwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0
ZWQgRnJhbWUiXSA9ICJTZWxlY3RlZCBGcmFtZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3Rl
ZCBJdGVtIl0gPSAiU2VsZWN0ZWQgSXRlbSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBJ
dGVtcyJdID0gIlNlbGVjdGVkIEl0ZW1zIjsKKy8qIFNlbGVjdGVkIERPTSBub2RlICovCiBsb2Nh
bGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBOb2RlIl0gPSAiU2VsZWN0ZWQgTm9kZSI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJTZWxlY3RlZCBTeW1ib2wiXSA9ICJTZWxlY3RlZCBTeW1ib2wiOwogbG9jYWxp
emVkU3RyaW5nc1siU2VsZWN0ZWQgVmFsdWUiXSA9ICJTZWxlY3RlZCBWYWx1ZSI7CkBAIC0xMDA4
LDYgKzEwMzQsNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJTdG9wIHJlY29yZGluZyBjYW52YXMgYWN0
aW9ucyJdID0gIlN0b3AgcmVjb3JkaW5nIGNhbnZhcyBhY3RpbwogbG9jYWxpemVkU3RyaW5nc1si
U3RvcCByZWNvcmRpbmcgb25jZSBwYWdlIGxvYWRzIl0gPSAiU3RvcCByZWNvcmRpbmcgb25jZSBw
YWdlIGxvYWRzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlN0b3BwaW5nIHRoZSBcdTIwMUMlc1x1MjAx
RCBhdWRpdCJdID0gIlN0b3BwaW5nIHRoZSBcdTIwMUMlc1x1MjAxRCBhdWRpdCI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJTdG9yYWdlIl0gPSAiU3RvcmFnZSI7CisvKiBDU1MgcHJvcGVydGllcyBkZWZp
bmVkIHZpYSBIVE1MIHN0eWxlIGF0dHJpYnV0ZSAqLwogbG9jYWxpemVkU3RyaW5nc1siU3R5bGUg
QXR0cmlidXRlIl0gPSAiU3R5bGUgQXR0cmlidXRlIjsKIGxvY2FsaXplZFN0cmluZ3NbIlN0eWxl
IFJlc29sdXRpb24iXSA9ICJTdHlsZSBSZXNvbHV0aW9uIjsKIGxvY2FsaXplZFN0cmluZ3NbIlN0
eWxlIHJ1bGUiXSA9ICJTdHlsZSBydWxlIjsKQEAgLTEwMjAsMTIgKzEwNDcsMTQgQEAgbG9jYWxp
emVkU3RyaW5nc1siU3R5bGVzOiJdID0gIlN0eWxlczoiOwogbG9jYWxpemVkU3RyaW5nc1siU3R5
bGVzaGVldCJdID0gIlN0eWxlc2hlZXQiOwogbG9jYWxpemVkU3RyaW5nc1siU3R5bGVzaGVldHMi
XSA9ICJTdHlsZXNoZWV0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdWJqZWN0Il0gPSAiU3ViamVj
dCI7CisvKiBBIHN1Ym1lbnUgb2YgJ0JyZWFrIE9uJyAqLwogbG9jYWxpemVkU3RyaW5nc1siU3Vi
dHJlZSBNb2RpZmllZCJdID0gIlN1YnRyZWUgTW9kaWZpZWQiOwogbG9jYWxpemVkU3RyaW5nc1si
U3VtbWFyeSJdID0gIlN1bW1hcnkiOwogbG9jYWxpemVkU3RyaW5nc1siVENQIl0gPSAiVENQIjsK
IGxvY2FsaXplZFN0cmluZ3NbIlRJRkYiXSA9ICJUSUZGIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRh
YiB3aWR0aDoiXSA9ICJUYWIgd2lkdGg6IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRhYnMiXSA9ICJU
YWJzIjsKKy8qIEEgc3VibWVudSBvZiAnRWRpdCcgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlRhZyJd
ID0gIlRhZyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUYWtlIHNuYXBzaG90Il0gPSAiVGFrZSBzbmFw
c2hvdCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUYXJnZXQiXSA9ICJUYXJnZXQiOwpAQCAtMTA4OCw2
ICsxMTE3LDcgQEAgbG9jYWxpemVkU3RyaW5nc1siVG90YWw6ICVzIl0gPSAiVG90YWw6ICVzIjsK
IGxvY2FsaXplZFN0cmluZ3NbIlRvdGFsczoiXSA9ICJUb3RhbHM6IjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlRyYWNlIl0gPSAiVHJhY2UiOwogbG9jYWxpemVkU3RyaW5nc1siVHJhY2U6ICVzIl0gPSAi
VHJhY2U6ICVzIjsKKy8qIEFtb3VudCBvZiBkYXRhIHNlbnQgb3ZlciB0aGUgbmV0d29yayAqLwog
bG9jYWxpemVkU3RyaW5nc1siVHJhbnNmZXIgU2l6ZSJdID0gIlRyYW5zZmVyIFNpemUiOwogbG9j
YWxpemVkU3RyaW5nc1siVHJhbnNmZXJyZWQiXSA9ICJUcmFuc2ZlcnJlZCI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJUcmlnZ2VyZWQgQnJlYWtwb2ludCJdID0gIlRyaWdnZXJlZCBCcmVha3BvaW50IjsK
QEAgLTExMDIsNiArMTEzMiw3IEBAIGxvY2FsaXplZFN0cmluZ3NbIlVSTCBCcmVha3BvaW50XHUy
MDI2Il0gPSAiVVJMIEJyZWFrcG9pbnRcdTIwMjYiOwogbG9jYWxpemVkU3RyaW5nc1siVW5hYmxl
IHRvIGRldGVybWluZSBwYXRoIHRvIHByb3BlcnR5IGZyb20gcm9vdCJdID0gIlVuYWJsZSB0byBk
ZXRlcm1pbmUgcGF0aCB0byBwcm9wZXJ0eSBmcm9tIHJvb3QiOwogbG9jYWxpemVkU3RyaW5nc1si
VW5hYmxlIHRvIHBhcnNlIGFzIEpTT046ICVzIl0gPSAiVW5hYmxlIHRvIHBhcnNlIGFzIEpTT046
ICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlVuYWJsZSB0byBzaG93IGNlcnRpZmljYXRlIGZvciBc
dTIwMUMlc1x1MjAxRCJdID0gIlVuYWJsZSB0byBzaG93IGNlcnRpZmljYXRlIGZvciBcdTIwMUMl
c1x1MjAxRCI7CisvKiBCcmVhayAocGF1c2UpIG9uIGV2ZXJ5IHVuY2F1Z2h0ICh1bmhhbmRsZWQp
IGV4Y2VwdGlvbnMgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiXSA9
ICJVbmNhdWdodCBFeGNlcHRpb25zIjsKIGxvY2FsaXplZFN0cmluZ3NbIlVuZGVmaW5lZCBjdXN0
b20gZWxlbWVudCJdID0gIlVuZGVmaW5lZCBjdXN0b20gZWxlbWVudCI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJVbmlxdWUiXSA9ICJVbmlxdWUiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvQmFzZS9Mb2FkTG9jYWxpemVkU3RyaW5ncy5qcyBiL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXplZFN0cmluZ3MuanMK
aW5kZXggYzBmNWEzNzVlMzMuLjYzM2FkMDhlZjMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9CYXNlL0xvYWRMb2NhbGl6ZWRTdHJpbmdzLmpzCisrKyBi
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXplZFN0
cmluZ3MuanMKQEAgLTY0LDMgKzY0LDI3IEBAIFdJLlVJU3RyaW5nID0gZnVuY3Rpb24oc3RyaW5n
LCBrZXksIGNvbW1lbnQpCiAKICAgICByZXR1cm4gIkxPQ0FMSVpFRCBTVFJJTkcgTk9UIEZPVU5E
IjsKIH07CisKK1dJLnJlcGVhdGluZ1VJU3RyaW5nID0gZnVuY3Rpb24oa2V5KSB7CisgICAgbGV0
IGxvY2FsaXplZFN0cmluZ3MgPSB7CisgICAgICAgICJMYXlvdXQgQCBUaW1lbGluZSByZWNvcmQi
OiBXSS5VSVN0cmluZygiTGF5b3V0IiwgIkxheW91dCBAIFRpbWVsaW5lIHJlY29yZCIsICJMYXlv
dXQgcGhhc2UgcmVjb3JkcyIpLAorICAgICAgICAiUGFpbnQgQCBUaW1lbGluZSByZWNvcmQiOiBX
SS5VSVN0cmluZygiUGFpbnQiLCAiUGFpbnQgQCBUaW1lbGluZSByZWNvcmQiLCAiUGFpbnQgKHJl
bmRlcikgcGhhc2UgcmVjb3JkcyIpLAorICAgICAgICAiQ29tcG9zaXRlIEAgVGltZWxpbmUgcmVj
b3JkIjogV0kuVUlTdHJpbmcoIkNvbXBvc2l0ZSIsICJDb21wb3NpdGUgQCBUaW1lbGluZSByZWNv
cmQiLCAiQ29tcG9zaXRlIHBoYXNlIHJlY29yZHMsIHdoZXJlIGdyYXBoaWMgbGF5ZXJzIGFyZSBj
b21iaW5lZCIpLAorCisgICAgICAgICJBbGwgRXhjZXB0aW9ucyI6IFdJLlVJU3RyaW5nKCJBbGwg
RXhjZXB0aW9ucyIsICIiLCAiQnJlYWsgKHBhdXNlKSBvbiBhbGwgZXhjZXB0aW9ucyIpLAorICAg
ICAgICAiVW5jYXVnaHQgRXhjZXB0aW9ucyI6IFdJLlVJU3RyaW5nKCJVbmNhdWdodCBFeGNlcHRp
b25zIiwgIiIsICJCcmVhayAocGF1c2UpIG9uIGV2ZXJ5IHVuY2F1Z2h0ICh1bmhhbmRsZWQpIGV4
Y2VwdGlvbnMiKSwKKyAgICAgICAgIkFzc2VydGlvbiBGYWlsdXJlcyI6IFdJLlVJU3RyaW5nKCJB
c3NlcnRpb24gRmFpbHVyZXMiLCAiIiwgIkJyZWFrIHdoZW4gY29uc29sZS5hc3NlcnQoKSBmYWls
cyIpLAorICAgICAgICAiQWxsIFJlcXVlc3RzIjogV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIs
ICIiLCAiQSBzdWJtZW51IG9mICdCcmVhayBvbiciKSwKKworICAgICAgICAiRmV0Y2giOiBXSS5V
SVN0cmluZygiRmV0Y2giLCAiIiwgIlJlc291cmNlIGxvYWRlZCB2aWEgJ2ZldGNoJyBtZXRob2Qi
KSwKKworICAgICAgICAiUmV2ZWFsIGluIERPTSBUcmVlIjogV0kuVUlTdHJpbmcoIlJldmVhbCBp
biBET00gVHJlZSIsICIiLCAiT3BlbiBFbGVtZW50cyB0YWIgYW5kIHNlbGVjdCB0aGlzIG5vZGUg
aW4gRE9NIHRyZWUiKSwKKyAgICB9OworCisgICAgaWYgKCFsb2NhbGl6ZWRTdHJpbmdzLmhhc093
blByb3BlcnR5KGtleSkpIHsKKyAgICAgICAgY29uc29sZS5lcnJvcihgcmVwZWF0aW5nVUlTdHJp
bmcgIiR7a2V5fSIgd2FzIG5vdCBmb3VuZC5gKTsKKyAgICAgICAgcmV0dXJuICJMT0NBTElaRUQg
U1RSSU5HIE5PVCBGT1VORCI7CisgICAgfQorCisgICAgcmV0dXJuIGxvY2FsaXplZFN0cmluZ3Nb
a2V5XTsKK307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9Nb2RlbHMvTGF5b3V0VGltZWxpbmVSZWNvcmQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9Nb2RlbHMvTGF5b3V0VGltZWxpbmVSZWNvcmQuanMKaW5kZXggZmFhNGI2
YzJlNTIuLjYyNTFhZjRkYzU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9Nb2RlbHMvTGF5b3V0VGltZWxpbmVSZWNvcmQuanMKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL0xheW91dFRpbWVsaW5lUmVjb3JkLmpz
CkBAIC01MSwxMyArNTEsMTMgQEAgV0kuTGF5b3V0VGltZWxpbmVSZWNvcmQgPSBjbGFzcyBMYXlv
dXRUaW1lbGluZVJlY29yZCBleHRlbmRzIFdJLlRpbWVsaW5lUmVjb3JkCiAgICAgICAgIGNhc2Ug
V0kuTGF5b3V0VGltZWxpbmVSZWNvcmQuRXZlbnRUeXBlLkludmFsaWRhdGVMYXlvdXQ6CiAgICAg
ICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkxheW91dCBJbnZhbGlkYXRlZCIpOwogICAgICAg
ICBjYXNlIFdJLkxheW91dFRpbWVsaW5lUmVjb3JkLkV2ZW50VHlwZS5Gb3JjZWRMYXlvdXQ6Ci0g
ICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkZvcmNlZCBMYXlvdXQiKTsKKyAgICAgICAg
ICAgIHJldHVybiBXSS5VSVN0cmluZygiRm9yY2VkIExheW91dCIsICIiLCAiTGF5b3V0IHBoYXNl
IHJlY29yZHMgdGhhdCB3ZXJlIGltcGVyYXRpdmUgKGZvcmNlZCkiKTsKICAgICAgICAgY2FzZSBX
SS5MYXlvdXRUaW1lbGluZVJlY29yZC5FdmVudFR5cGUuTGF5b3V0OgotICAgICAgICAgICAgcmV0
dXJuIFdJLlVJU3RyaW5nKCJMYXlvdXQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRp
bmdVSVN0cmluZygiTGF5b3V0IEAgVGltZWxpbmUgcmVjb3JkIik7CiAgICAgICAgIGNhc2UgV0ku
TGF5b3V0VGltZWxpbmVSZWNvcmQuRXZlbnRUeXBlLlBhaW50OgotICAgICAgICAgICAgcmV0dXJu
IFdJLlVJU3RyaW5nKCJQYWludCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGluZ1VJ
U3RyaW5nKCJQYWludCBAIFRpbWVsaW5lIHJlY29yZCIpOwogICAgICAgICBjYXNlIFdJLkxheW91
dFRpbWVsaW5lUmVjb3JkLkV2ZW50VHlwZS5Db21wb3NpdGU6Ci0gICAgICAgICAgICByZXR1cm4g
V0kuVUlTdHJpbmcoIkNvbXBvc2l0ZSIpOworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGlu
Z1VJU3RyaW5nKCJDb21wb3NpdGUgQCBUaW1lbGluZSByZWNvcmQiKTsKICAgICAgICAgfQogICAg
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9k
ZWxzL1JlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9Nb2RlbHMvUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5qcwpp
bmRleCA1ZmQ4MTA4M2Y5ZS4uNjc3YzJkMDdhMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3Jk
LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZW5k
ZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpzCkBAIC00Niw5ICs0Niw5IEBAIFdJLlJlbmRlcmlu
Z0ZyYW1lVGltZWxpbmVSZWNvcmQgPSBjbGFzcyBSZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3Jk
IGV4dGVuZHMgV0kuCiAgICAgICAgIGNhc2UgV0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29y
ZC5UYXNrVHlwZS5TY3JpcHQ6CiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlNjcmlw
dCIpOwogICAgICAgICBjYXNlIFdJLlJlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuVGFza1R5
cGUuTGF5b3V0OgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJMYXlvdXQiKTsKKyAg
ICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRpbmdVSVN0cmluZygiTGF5b3V0IEAgVGltZWxpbmUg
cmVjb3JkIik7CiAgICAgICAgIGNhc2UgV0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5U
YXNrVHlwZS5QYWludDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiUGFpbnQiKTsK
KyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRpbmdVSVN0cmluZygiUGFpbnQgQCBUaW1lbGlu
ZSByZWNvcmQiKTsKICAgICAgICAgY2FzZSBXSS5SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3Jk
LlRhc2tUeXBlLk90aGVyOgogICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJPdGhlciIp
OwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9Nb2RlbHMvUmVzb3VyY2UuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9Nb2RlbHMvUmVzb3VyY2UuanMKaW5kZXggZGM3NTIwODZkNjEuLjIzMmQzMDM2YjJhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvUmVz
b3VyY2UuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxz
L1Jlc291cmNlLmpzCkBAIC0xNTYsOCArMTU2LDggQEAgV0kuUmVzb3VyY2UgPSBjbGFzcyBSZXNv
dXJjZSBleHRlbmRzIFdJLlNvdXJjZUNvZGUKICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmlu
ZygiWEhSIik7CiAgICAgICAgIGNhc2UgV0kuUmVzb3VyY2UuVHlwZS5GZXRjaDoKICAgICAgICAg
ICAgIGlmIChwbHVyYWwpCi0gICAgICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJGZXRj
aGVzIik7Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkZldGNoIik7CisgICAgICAg
ICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJGZXRjaGVzIiwgIiIsICJSZXNvdXJjZXMgbG9h
ZGVkIHZpYSAnZmV0Y2gnIG1ldGhvZCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGlu
Z1VJU3RyaW5nKCJGZXRjaCIpOwogICAgICAgICBjYXNlIFdJLlJlc291cmNlLlR5cGUuUGluZzoK
ICAgICAgICAgICAgIGlmIChwbHVyYWwpCiAgICAgICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3Ry
aW5nKCJQaW5ncyIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvQ1BVVGltZWxpbmVWaWV3LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvQ1BVVGltZWxpbmVWaWV3LmpzCmluZGV4IGEwZTM0MjE2NGFiLi4y
YWJiNWZhZGI2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvQ1BVVGltZWxpbmVWaWV3LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL0NQVVRpbWVsaW5lVmlldy5qcwpAQCAtNTcsOSArNTcsOSBAQCBX
SS5DUFVUaW1lbGluZVZpZXcgPSBjbGFzcyBDUFVUaW1lbGluZVZpZXcgZXh0ZW5kcyBXSS5UaW1l
bGluZVZpZXcKICAgICAgICAgY2FzZSBXSS5DUFVUaW1lbGluZVZpZXcuU2FtcGxlVHlwZS5TY3Jp
cHQ6CiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlNjcmlwdCIpOwogICAgICAgICBj
YXNlIFdJLkNQVVRpbWVsaW5lVmlldy5TYW1wbGVUeXBlLkxheW91dDoKLSAgICAgICAgICAgIHJl
dHVybiBXSS5VSVN0cmluZygiTGF5b3V0Iik7CisgICAgICAgICAgICByZXR1cm4gV0kucmVwZWF0
aW5nVUlTdHJpbmcoIkxheW91dCBAIFRpbWVsaW5lIHJlY29yZCIpOwogICAgICAgICBjYXNlIFdJ
LkNQVVRpbWVsaW5lVmlldy5TYW1wbGVUeXBlLlBhaW50OgotICAgICAgICAgICAgcmV0dXJuIFdJ
LlVJU3RyaW5nKCJQYWludCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGluZ1VJU3Ry
aW5nKCJQYWludCBAIFRpbWVsaW5lIHJlY29yZCIpOwogICAgICAgICBjYXNlIFdJLkNQVVRpbWVs
aW5lVmlldy5TYW1wbGVUeXBlLlN0eWxlOgogICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5n
KCJTdHlsZSBSZXNvbHV0aW9uIik7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NvbnRleHRNZW51VXRpbGl0aWVzLmpzIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ29udGV4dE1lbnVVdGls
aXRpZXMuanMKaW5kZXggZTFiMTI2ZjNlYjguLmMwYjU0Nzc3NWQxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGll
cy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Db250
ZXh0TWVudVV0aWxpdGllcy5qcwpAQCAtMjE2LDEwICsyMTYsMTAgQEAgV0kuYXBwZW5kQ29udGV4
dE1lbnVJdGVtc0ZvckRPTU5vZGUgPSBmdW5jdGlvbihjb250ZXh0TWVudSwgZG9tTm9kZSwgb3B0
aW9ucyA9IHsKICAgICBjb250ZXh0TWVudS5hcHBlbmRTZXBhcmF0b3IoKTsKIAogICAgIGlmICgh
b3B0aW9ucy5leGNsdWRlTG9nRWxlbWVudCAmJiAhZG9tTm9kZS5pc0luVXNlckFnZW50U2hhZG93
VHJlZSgpICYmICFkb21Ob2RlLmlzUHNldWRvRWxlbWVudCgpKSB7Ci0gICAgICAgIGxldCBsYWJl
bCA9IGlzRWxlbWVudCA/IFdJLlVJU3RyaW5nKCJMb2cgRWxlbWVudCIpIDogV0kuVUlTdHJpbmco
IkxvZyBOb2RlIik7CisgICAgICAgIGxldCBsYWJlbCA9IGlzRWxlbWVudCA/IFdJLlVJU3RyaW5n
KCJMb2cgRWxlbWVudCIsICIiLCAiTG9nIERPTSBlbGVtZW50IHRvIENvbnNvbGUiKSA6IFdJLlVJ
U3RyaW5nKCJMb2cgTm9kZSIsICIiLCAiTG9nIERPTSBub2RlIHRvIENvbnNvbGUiKTsKICAgICAg
ICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShsYWJlbCwgKCkgPT4gewogICAgICAgICAgICAgV0ku
UmVtb3RlT2JqZWN0LnJlc29sdmVOb2RlKGRvbU5vZGUsIFdJLlJ1bnRpbWVNYW5hZ2VyLkNvbnNv
bGVPYmplY3RHcm91cCkudGhlbigocmVtb3RlT2JqZWN0KSA9PiB7Ci0gICAgICAgICAgICAgICAg
bGV0IHRleHQgPSBpc0VsZW1lbnQgPyBXSS5VSVN0cmluZygiU2VsZWN0ZWQgRWxlbWVudCIpIDog
V0kuVUlTdHJpbmcoIlNlbGVjdGVkIE5vZGUiKTsKKyAgICAgICAgICAgICAgICBsZXQgdGV4dCA9
IGlzRWxlbWVudCA/IFdJLlVJU3RyaW5nKCJTZWxlY3RlZCBFbGVtZW50IiwgIiIsICJTZWxlY3Rl
ZCBET00gZWxlbWVudCIpIDogV0kuVUlTdHJpbmcoIlNlbGVjdGVkIE5vZGUiLCAiIiwgIlNlbGVj
dGVkIERPTSBub2RlIik7CiAgICAgICAgICAgICAgICAgY29uc3QgYWRkU3BlY2lhbFVzZXJMb2dD
bGFzcyA9IHRydWU7CiAgICAgICAgICAgICAgICAgV0kuY29uc29sZUxvZ1ZpZXdDb250cm9sbGVy
LmFwcGVuZEltbWVkaWF0ZUV4ZWN1dGlvbldpdGhSZXN1bHQodGV4dCwgcmVtb3RlT2JqZWN0LCBh
ZGRTcGVjaWFsVXNlckxvZ0NsYXNzKTsKICAgICAgICAgICAgIH0pOwpAQCAtMjI3LDE5ICsyMjcs
MTkgQEAgV0kuYXBwZW5kQ29udGV4dE1lbnVJdGVtc0ZvckRPTU5vZGUgPSBmdW5jdGlvbihjb250
ZXh0TWVudSwgZG9tTm9kZSwgb3B0aW9ucyA9IHsKICAgICB9CiAKICAgICBpZiAoIW9wdGlvbnMu
ZXhjbHVkZVJldmVhbEVsZW1lbnQgJiYgd2luZG93LkRPTUFnZW50ICYmIGF0dGFjaGVkKSB7Ci0g
ICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlJldmVhbCBpbiBET00g
VHJlZSIpLCAoKSA9PiB7CisgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0kucmVwZWF0
aW5nVUlTdHJpbmcoIlJldmVhbCBpbiBET00gVHJlZSIpLCAoKSA9PiB7CiAgICAgICAgICAgICBX
SS5kb21NYW5hZ2VyLmluc3BlY3RFbGVtZW50KGRvbU5vZGUuaWQpOwogICAgICAgICB9KTsKICAg
ICB9CiAKICAgICBpZiAoV0kuc2V0dGluZ3MuZXhwZXJpbWVudGFsRW5hYmxlTGF5ZXJzVGFiLnZh
bHVlICYmIHdpbmRvdy5MYXllclRyZWVBZ2VudCAmJiBhdHRhY2hlZCkgewotICAgICAgICBjb250
ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJSZXZlYWwgaW4gTGF5ZXJzIFRhYiIpLCAo
KSA9PiB7CisgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlJldmVh
bCBpbiBMYXllcnMgVGFiIiwgIiIsICJPcGVuIExheWVycyB0YWIgYW5kIHNlbGVjdCB0aGUgbGF5
ZXIgY29ycmVzcG9uZGluZyB0byB0aGlzIG5vZGUiKSwgKCkgPT4gewogICAgICAgICAgICAgV0ku
c2hvd0xheWVyc1RhYih7bm9kZVRvU2VsZWN0OiBkb21Ob2RlfSk7CiAgICAgICAgIH0pOwogICAg
IH0KIAogICAgIGlmICh3aW5kb3cuUGFnZUFnZW50ICYmIGF0dGFjaGVkKSB7Ci0gICAgICAgIGNv
bnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIkNhcHR1cmUgU2NyZWVuc2hvdCIpLCAo
KSA9PiB7CisgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIkNhcHR1
cmUgU2NyZWVuc2hvdCIsICIiLCAiQ2FwdHVyZSBTY3JlZW5zaG90IG9mIHRoZSBzZWxlY3RlZCBE
T00gbm9kZSIpLCAoKSA9PiB7CiAgICAgICAgICAgICBQYWdlQWdlbnQuc25hcHNob3ROb2RlKGRv
bU5vZGUuaWQsIChlcnJvciwgZGF0YVVSTCkgPT4gewogICAgICAgICAgICAgICAgIGlmIChlcnJv
cikgewogICAgICAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXQgPSBXSS5tYWluVGFyZ2V0OwpA
QCAtMjYyLDcgKzI2Miw3IEBAIFdJLmFwcGVuZENvbnRleHRNZW51SXRlbXNGb3JET01Ob2RlID0g
ZnVuY3Rpb24oY29udGV4dE1lbnUsIGRvbU5vZGUsIG9wdGlvbnMgPSB7CiAgICAgfQogCiAgICAg
aWYgKGlzRWxlbWVudCAmJiBhdHRhY2hlZCkgewotICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJ
dGVtKFdJLlVJU3RyaW5nKCJTY3JvbGwgSW50byBWaWV3IiksICgpID0+IHsKKyAgICAgICAgY29u
dGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiU2Nyb2xsIGludG8gVmlldyIsICIiLCAi
U2Nyb2xsIHNlbGVjdGVkIERPTSBub2RlIGludG8gdmlldyBvbiB0aGUgaW5zcGVjdGVkIHdlYiBw
YWdlIiksICgpID0+IHsKICAgICAgICAgICAgIGRvbU5vZGUuc2Nyb2xsSW50b1ZpZXcoKTsKICAg
ICAgICAgfSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvVmlld3MvRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50LmpzIGIvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50Lmpz
CmluZGV4IDY2N2Q1NTdlZmM2Li4yNTIwMjk5YzRkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50Lmpz
CisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTUJyZWFr
cG9pbnRUcmVlRWxlbWVudC5qcwpAQCAtNTAsMTEgKzUwLDExIEBAIFdJLkRPTUJyZWFrcG9pbnRU
cmVlRWxlbWVudCA9IGNsYXNzIERPTUJyZWFrcG9pbnRUcmVlRWxlbWVudCBleHRlbmRzIFdJLkdl
bmVyYWxUCiAgICAgewogICAgICAgICBzd2l0Y2ggKHR5cGUpIHsKICAgICAgICAgY2FzZSBXSS5E
T01CcmVha3BvaW50LlR5cGUuU3VidHJlZU1vZGlmaWVkOgotICAgICAgICAgICAgcmV0dXJuIFdJ
LlVJU3RyaW5nKCJTdWJ0cmVlIE1vZGlmaWVkIik7CisgICAgICAgICAgICByZXR1cm4gV0kuVUlT
dHJpbmcoIlN1YnRyZWUgTW9kaWZpZWQiLCAiIiwgIkEgc3VibWVudSBvZiAnQnJlYWsgT24nIik7
CiAgICAgICAgIGNhc2UgV0kuRE9NQnJlYWtwb2ludC5UeXBlLkF0dHJpYnV0ZU1vZGlmaWVkOgot
ICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJBdHRyaWJ1dGUgTW9kaWZpZWQiKTsKKyAg
ICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiQXR0cmlidXRlIE1vZGlmaWVkIiwgIiIsICJB
IHN1Ym1lbnUgb2YgJ0JyZWFrIE9uJyIpOwogICAgICAgICBjYXNlIFdJLkRPTUJyZWFrcG9pbnQu
VHlwZS5Ob2RlUmVtb3ZlZDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTm9kZSBS
ZW1vdmVkIik7CisgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIk5vZGUgUmVtb3ZlZCIs
ICIiLCAiQSBzdWJtZW51IG9mICdCcmVhayBPbiciKTsKICAgICAgICAgZGVmYXVsdDoKICAgICAg
ICAgICAgIGNvbnNvbGUuZXJyb3IoIlVuZXhwZWN0ZWQgRE9NIGJyZWFrcG9pbnQgdHlwZTogIiAr
IHR5cGUpOwogICAgICAgICAgICAgcmV0dXJuIG51bGw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJlZUVsZW1lbnQuanMgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJlZUVsZW1l
bnQuanMKaW5kZXggMWY1ZDE3MTgzZTQuLjAxMGQ0NzI0ODRlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJlZUVsZW1lbnQuanMK
KysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NTm9kZVRy
ZWVFbGVtZW50LmpzCkBAIC02MSw3ICs2MSw3IEBAIFdJLkRPTU5vZGVUcmVlRWxlbWVudCA9IGNs
YXNzIERPTU5vZGVUcmVlRWxlbWVudCBleHRlbmRzIFdJLkdlbmVyYWxUcmVlRWxlbWVudAogCiAg
ICAgICAgIGNvbnRleHRNZW51LmFwcGVuZFNlcGFyYXRvcigpOwogCi0gICAgICAgIGNvbnRleHRN
ZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlJldmVhbCBpbiBET00gVHJlZSIpLCAoKSA9PiB7
CisgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0kucmVwZWF0aW5nVUlTdHJpbmcoIlJl
dmVhbCBpbiBET00gVHJlZSIpLCAoKSA9PiB7CiAgICAgICAgICAgICBXSS5kb21NYW5hZ2VyLmlu
c3BlY3RFbGVtZW50KHRoaXMucmVwcmVzZW50ZWRPYmplY3QuaWQpOwogICAgICAgICB9KTsKICAg
ICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3
cy9ET01UcmVlRWxlbWVudC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNl
L1ZpZXdzL0RPTVRyZWVFbGVtZW50LmpzCmluZGV4IDcyNGNjM2VjOWRiLi5mZjk4NGIxZTQ5NiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9N
VHJlZUVsZW1lbnQuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
Vmlld3MvRE9NVHJlZUVsZW1lbnQuanMKQEAgLTc3MywxNCArNzczLDE0IEBAIFdJLkRPTVRyZWVF
bGVtZW50ID0gY2xhc3MgRE9NVHJlZUVsZW1lbnQgZXh0ZW5kcyBXSS5UcmVlRWxlbWVudAogICAg
ICAgICAgICAgbm9kZS5yZW1vdmVBdHRyaWJ1dGUoYXR0cmlidXRlTmFtZSk7CiAgICAgICAgIH0s
ICFhdHRyaWJ1dGUgfHwgIWlzTm9uU2hhZG93RWRpdGFibGUpOwogCi0gICAgICAgIHN1Yk1lbnVz
LmVkaXQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiVGFnIiksICgpID0+IHsKKyAgICAgICAgc3Vi
TWVudXMuZWRpdC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJUYWciLCAiIiwgIkEgc3VibWVudSBv
ZiAnRWRpdCciKSwgKCkgPT4gewogICAgICAgICAgICAgdGhpcy5fc3RhcnRFZGl0aW5nVGFnTmFt
ZSgpOwogICAgICAgICB9LCAhaXNOb25TaGFkb3dFZGl0YWJsZSk7CiAKICAgICAgICAgY29udGV4
dE1lbnUuYXBwZW5kU2VwYXJhdG9yKCk7CiAKICAgICAgICAgaWYgKFdJLmNzc01hbmFnZXIuY2Fu
Rm9yY2VQc2V1ZG9DbGFzc2VzKCkgJiYgYXR0YWNoZWQpIHsKLSAgICAgICAgICAgIGxldCBwc2V1
ZG9TdWJNZW51ID0gY29udGV4dE1lbnUuYXBwZW5kU3ViTWVudUl0ZW0oV0kuVUlTdHJpbmcoIkZv
cmNlZCBQc2V1ZG8tQ2xhc3NlcyIpKTsKKyAgICAgICAgICAgIGxldCBwc2V1ZG9TdWJNZW51ID0g
Y29udGV4dE1lbnUuYXBwZW5kU3ViTWVudUl0ZW0oV0kuVUlTdHJpbmcoIkZvcmNlZCBQc2V1ZG8t
Q2xhc3NlcyIsICIiLCAiQSBjb250ZXh0IG1lbnUgdG8gZm9yY2UgKG92ZXJyaWRlKSBlbGVtZW50
J3MgcHNldWRvLWNsYXNzZXMiKSk7CiAKICAgICAgICAgICAgIGxldCBlbmFibGVkUHNldWRvQ2xh
c3NlcyA9IG5vZGUuZW5hYmxlZFBzZXVkb0NsYXNzZXM7CiAgICAgICAgICAgICBXSS5DU1NNYW5h
Z2VyLkZvcmNlYWJsZVBzZXVkb0NsYXNzZXMuZm9yRWFjaCgocHNldWRvQ2xhc3MpID0+IHsKQEAg
LTgxMSw5ICs4MTEsOSBAQCBXSS5ET01UcmVlRWxlbWVudCA9IGNsYXNzIERPTVRyZWVFbGVtZW50
IGV4dGVuZHMgV0kuVHJlZUVsZW1lbnQKIAogICAgICAgICBsZXQgaXNFZGl0YWJsZU5vZGUgPSBu
b2RlLm5vZGVUeXBlKCkgPT09IE5vZGUuRUxFTUVOVF9OT0RFICYmIHRoaXMuZWRpdGFibGU7CiAg
ICAgICAgIGxldCBmb3JiaWRkZW5DbG9zaW5nVGFnID0gV0kuRE9NVHJlZUVsZW1lbnQuRm9yYmlk
ZGVuQ2xvc2luZ1RhZ0VsZW1lbnRzLmhhcyhub2RlLm5vZGVOYW1lSW5Db3JyZWN0Q2FzZSgpKTsK
LSAgICAgICAgc3ViTWVudXMuYWRkLmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIkNoaWxkIiksIHRo
aXMuX2FkZEhUTUwuYmluZCh0aGlzKSwgZm9yYmlkZGVuQ2xvc2luZ1RhZyB8fCAhaXNFZGl0YWJs
ZU5vZGUpOwotICAgICAgICBzdWJNZW51cy5hZGQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiUHJl
dmlvdXMgU2libGluZyIpLCB0aGlzLl9hZGRQcmV2aW91c1NpYmxpbmcuYmluZCh0aGlzKSwgIWlz
RWRpdGFibGVOb2RlKTsKLSAgICAgICAgc3ViTWVudXMuYWRkLmFwcGVuZEl0ZW0oV0kuVUlTdHJp
bmcoIk5leHQgU2libGluZyIpLCB0aGlzLl9hZGROZXh0U2libGluZy5iaW5kKHRoaXMpLCAhaXNF
ZGl0YWJsZU5vZGUpOworICAgICAgICBzdWJNZW51cy5hZGQuYXBwZW5kSXRlbShXSS5VSVN0cmlu
ZygiQ2hpbGQiLCAiIiwgIkEgc3VibWVudSBvZiAnQWRkJyIpLCB0aGlzLl9hZGRIVE1MLmJpbmQo
dGhpcyksIGZvcmJpZGRlbkNsb3NpbmdUYWcgfHwgIWlzRWRpdGFibGVOb2RlKTsKKyAgICAgICAg
c3ViTWVudXMuYWRkLmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlByZXZpb3VzIFNpYmxpbmciLCAi
IiwgIkEgc3VibWVudSBvZiAnQWRkJyIpLCB0aGlzLl9hZGRQcmV2aW91c1NpYmxpbmcuYmluZCh0
aGlzKSwgIWlzRWRpdGFibGVOb2RlKTsKKyAgICAgICAgc3ViTWVudXMuYWRkLmFwcGVuZEl0ZW0o
V0kuVUlTdHJpbmcoIk5leHQgU2libGluZyIsICIiLCAiQSBzdWJtZW51IG9mICdBZGQnIiksIHRo
aXMuX2FkZE5leHRTaWJsaW5nLmJpbmQodGhpcyksICFpc0VkaXRhYmxlTm9kZSk7CiAKICAgICAg
ICAgc3ViTWVudXMuZWRpdC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJIVE1MIiksIHRoaXMuX2Vk
aXRBc0hUTUwuYmluZCh0aGlzKSwgIXRoaXMuZWRpdGFibGUpOwogICAgICAgICBzdWJNZW51cy5j
b3B5LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIkhUTUwiKSwgdGhpcy5fY29weUhUTUwuYmluZCh0
aGlzKSwgbm9kZS5pc1BzZXVkb0VsZW1lbnQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EZWJ1Z2dlclNpZGViYXJQYW5lbC5qcyBiL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RlYnVnZ2VyU2lkZWJhclBh
bmVsLmpzCmluZGV4IDhjMWM1NmI5ZDI2Li5kODM1YTY2MDQ3NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGVidWdnZXJTaWRlYmFyUGFuZWwu
anMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGVidWdn
ZXJTaWRlYmFyUGFuZWwuanMKQEAgLTQ3NiwxMyArNDc2LDEzIEBAIFdJLkRlYnVnZ2VyU2lkZWJh
clBhbmVsID0gY2xhc3MgRGVidWdnZXJTaWRlYmFyUGFuZWwgZXh0ZW5kcyBXSS5OYXZpZ2F0aW9u
U2lkZWJhCiAKICAgICAgICAgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRlYnVnZ2VyTWFuYWdlci5h
bGxFeGNlcHRpb25zQnJlYWtwb2ludCkgewogICAgICAgICAgICAgb3B0aW9ucy5jbGFzc05hbWUg
PSBXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbC5FeGNlcHRpb25JY29uU3R5bGVDbGFzc05hbWU7Ci0g
ICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmcoIkFsbCBFeGNlcHRpb25zIik7
CisgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kucmVwZWF0aW5nVUlTdHJpbmcoIkFsbCBF
eGNlcHRpb25zIik7CiAgICAgICAgIH0gZWxzZSBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZGVidWdn
ZXJNYW5hZ2VyLnVuY2F1Z2h0RXhjZXB0aW9uc0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgIG9w
dGlvbnMuY2xhc3NOYW1lID0gV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwuRXhjZXB0aW9uSWNvblN0
eWxlQ2xhc3NOYW1lOwotICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5nKCJV
bmNhdWdodCBFeGNlcHRpb25zIik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kucmVw
ZWF0aW5nVUlTdHJpbmcoIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiKTsKICAgICAgICAgfSBlbHNlIGlm
IChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIuYXNzZXJ0aW9uRmFpbHVyZXNCcmVh
a3BvaW50KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9IFdJLkRlYnVnZ2VyU2lk
ZWJhclBhbmVsLkFzc2VydGlvbkljb25TdHlsZUNsYXNzTmFtZTsKLSAgICAgICAgICAgIG9wdGlv
bnMudGl0bGUgPSBXSS5VSVN0cmluZygiQXNzZXJ0aW9uIEZhaWx1cmVzIik7CisgICAgICAgICAg
ICBvcHRpb25zLnRpdGxlID0gV0kucmVwZWF0aW5nVUlTdHJpbmcoIkFzc2VydGlvbiBGYWlsdXJl
cyIpOwogICAgICAgICB9IGVsc2UgaWYgKGJyZWFrcG9pbnQgaW5zdGFuY2VvZiBXSS5ET01CcmVh
a3BvaW50KSB7CiAgICAgICAgICAgICBpZiAoIWJyZWFrcG9pbnQuZG9tTm9kZUlkZW50aWZpZXIp
CiAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7CkBAIC01MTYsNyArNTE2LDcgQEAgV0kuRGVi
dWdnZXJTaWRlYmFyUGFuZWwgPSBjbGFzcyBEZWJ1Z2dlclNpZGViYXJQYW5lbCBleHRlbmRzIFdJ
Lk5hdmlnYXRpb25TaWRlYmEKIAogICAgICAgICAgICAgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRv
bURlYnVnZ2VyTWFuYWdlci5hbGxSZXF1ZXN0c0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgICAg
ICBvcHRpb25zLmNsYXNzTmFtZSA9IFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsLkFzc2VydGlvbklj
b25TdHlsZUNsYXNzTmFtZTsKLSAgICAgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlT
dHJpbmcoIkFsbCBSZXF1ZXN0cyIpOworICAgICAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBX
SS5yZXBlYXRpbmdVSVN0cmluZygiQWxsIFJlcXVlc3RzIik7CiAgICAgICAgICAgICB9CiAgICAg
ICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBsZXQgc291cmNlQ29kZSA9IGJyZWFrcG9pbnQuc291
cmNlQ29kZUxvY2F0aW9uICYmIGJyZWFrcG9pbnQuc291cmNlQ29kZUxvY2F0aW9uLmRpc3BsYXlT
b3VyY2VDb2RlOwpAQCAtMTQ1OCw3ICsxNDU4LDcgQEAgV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwg
PSBjbGFzcyBEZWJ1Z2dlclNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5hdmlnYXRpb25TaWRlYmEK
ICAgICAgICAgaWYgKEluc3BlY3RvckJhY2tlbmQuZG9tYWlucy5EZWJ1Z2dlci5zZXRQYXVzZU9u
QXNzZXJ0aW9ucykgewogICAgICAgICAgICAgbGV0IGFzc2VydGlvbkZhaWx1cmVzQnJlYWtwb2lu
dFNob3duID0gV0kuc2V0dGluZ3Muc2hvd0Fzc2VydGlvbkZhaWx1cmVzQnJlYWtwb2ludC52YWx1
ZTsKIAotICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2tib3hJdGVtKFdJLlVJU3Ry
aW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiKSwgKCkgPT4geworICAgICAgICAgICAgY29udGV4dE1l
bnUuYXBwZW5kQ2hlY2tib3hJdGVtKFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJBc3NlcnRpb24gRmFp
bHVyZXMiKSwgKCkgPT4gewogICAgICAgICAgICAgICAgIGlmIChhc3NlcnRpb25GYWlsdXJlc0Jy
ZWFrcG9pbnRTaG93bikKICAgICAgICAgICAgICAgICAgICAgV0kuZGVidWdnZXJNYW5hZ2VyLnJl
bW92ZUJyZWFrcG9pbnQoV0kuZGVidWdnZXJNYW5hZ2VyLmFzc2VydGlvbkZhaWx1cmVzQnJlYWtw
b2ludCk7CiAgICAgICAgICAgICAgICAgZWxzZSB7CkBAIC0xNDgwLDcgKzE0ODAsNyBAQCBXSS5E
ZWJ1Z2dlclNpZGViYXJQYW5lbCA9IGNsYXNzIERlYnVnZ2VyU2lkZWJhclBhbmVsIGV4dGVuZHMg
V0kuTmF2aWdhdGlvblNpZGViYQogCiAgICAgICAgICAgICBsZXQgYWxsUmVxdWVzdHNCcmVha3Bv
aW50U2hvd24gPSBXSS5zZXR0aW5ncy5zaG93QWxsUmVxdWVzdHNCcmVha3BvaW50LnZhbHVlOwog
Ci0gICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0ZW0oV0kuVUlTdHJpbmco
IkFsbCBSZXF1ZXN0cyIpLCAoKSA9PiB7CisgICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRD
aGVja2JveEl0ZW0oV0kucmVwZWF0aW5nVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIpLCAoKSA9PiB7
CiAgICAgICAgICAgICAgICAgaWYgKGFsbFJlcXVlc3RzQnJlYWtwb2ludFNob3duKQogICAgICAg
ICAgICAgICAgICAgICBXSS5kb21EZWJ1Z2dlck1hbmFnZXIucmVtb3ZlVVJMQnJlYWtwb2ludChX
SS5kb21EZWJ1Z2dlck1hbmFnZXIuYWxsUmVxdWVzdHNCcmVha3BvaW50KTsKICAgICAgICAgICAg
ICAgICBlbHNlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL0xheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVs
LmpzCmluZGV4IDJiNjUxM2E3ZmQyLi5jMWFkNmZhYTRjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQ
YW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9M
YXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsLmpzCkBAIC0xMzYsNyArMTM2LDcgQEAgV0kuTGF5
ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbCA9IGNsYXNzIExheWVyVHJlZURldGFpbHNTaWRlYmFy
UGFuZWwgZXh0ZW5kcyBXSS4KICAgICAgICAgY29sdW1ucy5uYW1lLnRpdGxlID0gV0kuVUlTdHJp
bmcoIk5vZGUiKTsKICAgICAgICAgY29sdW1ucy5uYW1lLnNvcnRhYmxlID0gZmFsc2U7CiAKLSAg
ICAgICAgY29sdW1ucy5wYWludENvdW50LnRpdGxlID0gV0kuVUlTdHJpbmcoIlBhaW50cyIpOwor
ICAgICAgICBjb2x1bW5zLnBhaW50Q291bnQudGl0bGUgPSBXSS5VSVN0cmluZygiUGFpbnRzIiwg
IlBhaW50cyBAIENvbHVtbiB0aXRsZSIsICJBIGNvdW50IG9mIGhvdyBtYW55IHRpbWVzIGFuIGVs
ZW1lbnQgd2FzIHBhaW50ZWQgKHJlbmRlcmVkKSIpOwogICAgICAgICBjb2x1bW5zLnBhaW50Q291
bnQuc29ydGFibGUgPSB0cnVlOwogICAgICAgICBjb2x1bW5zLnBhaW50Q291bnQuYWxpZ25lZCA9
ICJyaWdodCI7CiAgICAgICAgIGNvbHVtbnMucGFpbnRDb3VudC53aWR0aCA9ICI3MHB4IjsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL05ldHdv
cmtUYWJsZUNvbnRlbnRWaWV3LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvTmV0d29ya1RhYmxlQ29udGVudFZpZXcuanMKaW5kZXggODUyM2YwZTIxYTcuLmJl
ZjU0MWU1MjAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9OZXR3b3JrVGFibGVDb250ZW50Vmlldy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9OZXR3b3JrVGFibGVDb250ZW50Vmlldy5qcwpAQCAt
MjEwLDcgKzIxMCw3IEBAIFdJLk5ldHdvcmtUYWJsZUNvbnRlbnRWaWV3ID0gY2xhc3MgTmV0d29y
a1RhYmxlQ29udGVudFZpZXcgZXh0ZW5kcyBXSS5Db250ZW50VmllCiAgICAgICAgIGNhc2UgV0ku
UmVzb3VyY2UuVHlwZS5YSFI6CiAgICAgICAgICAgICByZXR1cm4gIlhIUiI7CiAgICAgICAgIGNh
c2UgV0kuUmVzb3VyY2UuVHlwZS5GZXRjaDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmlu
ZygiRmV0Y2giKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRpbmdVSVN0cmluZygiRmV0
Y2giKTsKICAgICAgICAgY2FzZSBXSS5SZXNvdXJjZS5UeXBlLlBpbmc6CiAgICAgICAgICAgICBy
ZXR1cm4gV0kuVUlTdHJpbmcoIlBpbmciKTsKICAgICAgICAgY2FzZSBXSS5SZXNvdXJjZS5UeXBl
LkJlYWNvbjoKQEAgLTExNzQsNyArMTE3NCw3IEBAIFdJLk5ldHdvcmtUYWJsZUNvbnRlbnRWaWV3
ID0gY2xhc3MgTmV0d29ya1RhYmxlQ29udGVudFZpZXcgZXh0ZW5kcyBXSS5Db250ZW50VmllCiAg
ICAgICAgICAgICBhbGlnbjogInJpZ2h0IiwKICAgICAgICAgfSk7CiAKLSAgICAgICAgdGhpcy5f
dHJhbnNmZXJTaXplQ29sdW1uID0gbmV3IFdJLlRhYmxlQ29sdW1uKCJ0cmFuc2ZlclNpemUiLCBX
SS5VSVN0cmluZygiVHJhbnNmZXIgU2l6ZSIpLCB7CisgICAgICAgIHRoaXMuX3RyYW5zZmVyU2l6
ZUNvbHVtbiA9IG5ldyBXSS5UYWJsZUNvbHVtbigidHJhbnNmZXJTaXplIiwgV0kuVUlTdHJpbmco
IlRyYW5zZmVyIFNpemUiLCAiIiwgIkFtb3VudCBvZiBkYXRhIHNlbnQgb3ZlciB0aGUgbmV0d29y
ayIpLCB7CiAgICAgICAgICAgICBtaW5XaWR0aDogMTAwLAogICAgICAgICAgICAgbWF4V2lkdGg6
IDE1MCwKICAgICAgICAgICAgIGluaXRpYWxXaWR0aDogMTAwLApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlc05hdmlnYXRpb25TaWRl
YmFyUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9T
b3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbC5qcwppbmRleCA1NjhhM2NkNWRhOS4uNzBhNmU4
NzE4NzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL1NvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVs
LmpzCkBAIC04ODUsMTMgKzg4NSwxMyBAQCBXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5l
bCA9IGNsYXNzIFNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsIGV4dGVuZHMgVwogCiAgICAg
ICAgIGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIuYWxsRXhjZXB0aW9uc0Jy
ZWFrcG9pbnQpIHsKICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NOYW1lID0gImJyZWFrcG9pbnQt
ZXhjZXB0aW9uLWljb24iOwotICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5n
KCJBbGwgRXhjZXB0aW9ucyIpOworICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLnJlcGVh
dGluZ1VJU3RyaW5nKCJBbGwgRXhjZXB0aW9ucyIpOwogICAgICAgICB9IGVsc2UgaWYgKGJyZWFr
cG9pbnQgPT09IFdJLmRlYnVnZ2VyTWFuYWdlci51bmNhdWdodEV4Y2VwdGlvbnNCcmVha3BvaW50
KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9ICJicmVha3BvaW50LWV4Y2VwdGlv
bi1pY29uIjsKLSAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiVW5jYXVn
aHQgRXhjZXB0aW9ucyIpOworICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLnJlcGVhdGlu
Z1VJU3RyaW5nKCJVbmNhdWdodCBFeGNlcHRpb25zIik7CiAgICAgICAgIH0gZWxzZSBpZiAoYnJl
YWtwb2ludCA9PT0gV0kuZGVidWdnZXJNYW5hZ2VyLmFzc2VydGlvbkZhaWx1cmVzQnJlYWtwb2lu
dCkgewogICAgICAgICAgICAgb3B0aW9ucy5jbGFzc05hbWUgPSAiYnJlYWtwb2ludC1hc3NlcnRp
b24taWNvbiI7Ci0gICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmcoIkFzc2Vy
dGlvbiBGYWlsdXJlcyIpOworICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLnJlcGVhdGlu
Z1VJU3RyaW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiKTsKICAgICAgICAgfSBlbHNlIGlmIChicmVh
a3BvaW50IGluc3RhbmNlb2YgV0kuRE9NQnJlYWtwb2ludCkgewogICAgICAgICAgICAgaWYgKCFi
cmVha3BvaW50LmRvbU5vZGVJZGVudGlmaWVyKQogICAgICAgICAgICAgICAgIHJldHVybiBudWxs
OwpAQCAtOTI1LDcgKzkyNSw3IEBAIFdJLlNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsID0g
Y2xhc3MgU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwgZXh0ZW5kcyBXCiAKICAgICAgICAg
ICAgIGlmIChicmVha3BvaW50ID09PSBXSS5kb21EZWJ1Z2dlck1hbmFnZXIuYWxsUmVxdWVzdHNC
cmVha3BvaW50KSB7CiAgICAgICAgICAgICAgICAgb3B0aW9ucy5jbGFzc05hbWUgPSAiYnJlYWtw
b2ludC1hc3NlcnRpb24taWNvbiI7Ci0gICAgICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJ
LlVJU3RyaW5nKCJBbGwgUmVxdWVzdHMiKTsKKyAgICAgICAgICAgICAgICBvcHRpb25zLnRpdGxl
ID0gV0kucmVwZWF0aW5nVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIpOwogICAgICAgICAgICAgfQog
ICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgbGV0IHNvdXJjZUNvZGUgPSBicmVha3BvaW50
LnNvdXJjZUNvZGVMb2NhdGlvbiAmJiBicmVha3BvaW50LnNvdXJjZUNvZGVMb2NhdGlvbi5kaXNw
bGF5U291cmNlQ29kZTsKQEAgLTE1MDQsNyArMTUwNCw3IEBAIFdJLlNvdXJjZXNOYXZpZ2F0aW9u
U2lkZWJhclBhbmVsID0gY2xhc3MgU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwgZXh0ZW5k
cyBXCiAgICAgICAgIGlmIChJbnNwZWN0b3JCYWNrZW5kLmRvbWFpbnMuRGVidWdnZXIuc2V0UGF1
c2VPbkFzc2VydGlvbnMpIHsKICAgICAgICAgICAgIGxldCBhc3NlcnRpb25GYWlsdXJlc0JyZWFr
cG9pbnRTaG93biA9IFdJLnNldHRpbmdzLnNob3dBc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnQu
dmFsdWU7CiAKLSAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZENoZWNrYm94SXRlbShXSS5V
SVN0cmluZygiQXNzZXJ0aW9uIEZhaWx1cmVzIiksICgpID0+IHsKKyAgICAgICAgICAgIGNvbnRl
eHRNZW51LmFwcGVuZENoZWNrYm94SXRlbShXSS5yZXBlYXRpbmdVSVN0cmluZygiQXNzZXJ0aW9u
IEZhaWx1cmVzIiksICgpID0+IHsKICAgICAgICAgICAgICAgICBpZiAoYXNzZXJ0aW9uRmFpbHVy
ZXNCcmVha3BvaW50U2hvd24pCiAgICAgICAgICAgICAgICAgICAgIFdJLmRlYnVnZ2VyTWFuYWdl
ci5yZW1vdmVCcmVha3BvaW50KFdJLmRlYnVnZ2VyTWFuYWdlci5hc3NlcnRpb25GYWlsdXJlc0Jy
ZWFrcG9pbnQpOwogICAgICAgICAgICAgICAgIGVsc2UgewpAQCAtMTUyNiw3ICsxNTI2LDcgQEAg
V0kuU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwgPSBjbGFzcyBTb3VyY2VzTmF2aWdhdGlv
blNpZGViYXJQYW5lbCBleHRlbmRzIFcKIAogICAgICAgICAgICAgbGV0IGFsbFJlcXVlc3RzQnJl
YWtwb2ludFNob3duID0gV0kuc2V0dGluZ3Muc2hvd0FsbFJlcXVlc3RzQnJlYWtwb2ludC52YWx1
ZTsKIAotICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2tib3hJdGVtKFdJLlVJU3Ry
aW5nKCJBbGwgUmVxdWVzdHMiKSwgKCkgPT4geworICAgICAgICAgICAgY29udGV4dE1lbnUuYXBw
ZW5kQ2hlY2tib3hJdGVtKFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJBbGwgUmVxdWVzdHMiKSwgKCkg
PT4gewogICAgICAgICAgICAgICAgIGlmIChhbGxSZXF1ZXN0c0JyZWFrcG9pbnRTaG93bikKICAg
ICAgICAgICAgICAgICAgICAgV0kuZG9tRGVidWdnZXJNYW5hZ2VyLnJlbW92ZVVSTEJyZWFrcG9p
bnQoV0kuZG9tRGVidWdnZXJNYW5hZ2VyLmFsbFJlcXVlc3RzQnJlYWtwb2ludCk7CiAgICAgICAg
ICAgICAgICAgZWxzZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9uLmpzIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRDU1NT
dHlsZURlY2xhcmF0aW9uU2VjdGlvbi5qcwppbmRleCA2N2Y2YTc3MmQwNC4uMTZlMDY1MzUwNjMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Nw
cmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24uanMKKysrIGIvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0
aW9uU2VjdGlvbi5qcwpAQCAtMzE1LDcgKzMxNSw3IEBAIFdJLlNwcmVhZHNoZWV0Q1NTU3R5bGVE
ZWNsYXJhdGlvblNlY3Rpb24gPSBjbGFzcyBTcHJlYWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25T
CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIFdJLkNTU1N0eWxlRGVjbGFyYXRp
b24uVHlwZS5JbmxpbmU6Ci0gICAgICAgICAgICB0aGlzLl9zZWxlY3RvckVsZW1lbnQudGV4dENv
bnRlbnQgPSBXSS5VSVN0cmluZygiU3R5bGUgQXR0cmlidXRlIik7CisgICAgICAgICAgICB0aGlz
Ll9zZWxlY3RvckVsZW1lbnQudGV4dENvbnRlbnQgPSBXSS5VSVN0cmluZygiU3R5bGUgQXR0cmli
dXRlIiwgIiIsICJDU1MgcHJvcGVydGllcyBkZWZpbmVkIHZpYSBIVE1MIHN0eWxlIGF0dHJpYnV0
ZSIpOwogICAgICAgICAgICAgdGhpcy5fc2VsZWN0b3JFbGVtZW50LmNsYXNzTGlzdC5hZGQoInN0
eWxlLWF0dHJpYnV0ZSIpOwogICAgICAgICAgICAgYnJlYWs7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0UnVsZXNTdHls
ZURldGFpbHNQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL1NwcmVhZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbC5qcwppbmRleCBlMWQ0ZWJlZDMx
Mi4uM2ExYjZjZDA5ZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbC5qcworKysgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldFJ1bGVz
U3R5bGVEZXRhaWxzUGFuZWwuanMKQEAgLTI1Niw3ICsyNTYsNyBAQCBXSS5TcHJlYWRzaGVldFJ1
bGVzU3R5bGVEZXRhaWxzUGFuZWwgPSBjbGFzcyBTcHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxz
UGFuZWwgZQogCiAgICAgICAgIGxldCBhZGRTZWN0aW9uID0gKHNlY3Rpb24pID0+IHsKICAgICAg
ICAgICAgIGlmIChzZWN0aW9uLnN0eWxlLmluaGVyaXRlZCAmJiAoIXByZXZpb3VzU3R5bGUgfHwg
cHJldmlvdXNTdHlsZS5ub2RlICE9PSBzZWN0aW9uLnN0eWxlLm5vZGUpKQotICAgICAgICAgICAg
ICAgIGFkZEhlYWRlcihXSS5VSVN0cmluZygiSW5oZXJpdGVkIEZyb20iKSwgc2VjdGlvbi5zdHls
ZS5ub2RlKTsKKyAgICAgICAgICAgICAgICBhZGRIZWFkZXIoV0kuVUlTdHJpbmcoIkluaGVyaXRl
ZCBGcm9tIiwgIiIsICJBIHNlY3Rpb24gb2YgQ1NTIHJ1bGVzIGluaGVyaXRlZCBmcm9tIGFub3Ro
ZXIgQ1NTIHJ1bGUiKSwgc2VjdGlvbi5zdHlsZS5ub2RlKTsKIAogICAgICAgICAgICAgaWYgKCFz
ZWN0aW9uLmlzRGVzY2VuZGFudE9mKHRoaXMpKSB7CiAgICAgICAgICAgICAgICAgbGV0IHJlZmVy
ZW5jZVZpZXcgPSB0aGlzLnN1YnZpZXdzW3RoaXMuX3NlY3Rpb25zLmxlbmd0aF07CmRpZmYgLS1n
aXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYmRmYWIxMWE0Nzku
LjgxOTQ0YmQwZDgwIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTktMDQtMTAgIE5pa2l0YSBWYXNpbHlldiAgPG52
YXNpbHlldkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUHJvdmlkZSBVSVN0
cmluZyBkZXNjcmlwdGlvbnMgdG8gaW1wcm92ZSBsb2NhbGl6YXRpb25zCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUxMzIKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzQ4NDU3ODE3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEFsbG93IGVtcHR5IGtleXMgZm9yIFdJLlVJU3RyaW5nLgorCisgICAgICAg
ICogU2NyaXB0cy9leHRyYWN0LWxvY2FsaXphYmxlLWpzLXN0cmluZ3M6CisKIDIwMTktMDQtMTAg
IFRhZGV1IFphZ2FsbG8gIDx0emFnYWxsb0BhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIHN1cHBv
cnQgZm9yIGluY3JlbWVudGFsIGJ5dGVjb2RlIGNhY2hlIHVwZGF0ZXMKZGlmZiAtLWdpdCBhL1Rv
b2xzL1NjcmlwdHMvZXh0cmFjdC1sb2NhbGl6YWJsZS1qcy1zdHJpbmdzIGIvVG9vbHMvU2NyaXB0
cy9leHRyYWN0LWxvY2FsaXphYmxlLWpzLXN0cmluZ3MKaW5kZXggMzRiNWFjNzc5M2IuLmY4YjA3
NmZkZjgyIDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL2V4dHJhY3QtbG9jYWxpemFibGUtanMt
c3RyaW5ncworKysgYi9Ub29scy9TY3JpcHRzL2V4dHJhY3QtbG9jYWxpemFibGUtanMtc3RyaW5n
cwpAQCAtNzQsNyArNzQsNyBAQCBmb3IgbXkgJGZpbGUgKHNvcnQgQGZpbGVzKSB7CiAgICAgICAg
IGNob21wOwogCiAgICAgICAgICMgSGFuZGxlIFdlYkluc3BlY3RvciBzdHJpbmdzLiBQcmludHMg
YSB3YXJuaW5nIGlmIGEgbm9uLXN0cmluZyBsaXRlcmFsIGlzIHBhc3NlZCB0byBXSS5VSVN0cmlu
ZygpLgotICAgICAgICBIYW5kbGVVSVN0cmluZygkMSwgJDIgfHwgJDEsICQzIHx8ICIiLCAkZmls
ZSwgJC4pIHdoaWxlIHMvV0lcLlVJU3RyaW5nXCgiKFteIl0rKSIoPzosXHMqIihbXiJdKykiKD86
LFxzKiIoW14iXSspIik/KT9cKS8vOworICAgICAgICBIYW5kbGVVSVN0cmluZygkMSwgJDIgfHwg
JDEsICQzIHx8ICIiLCAkZmlsZSwgJC4pIHdoaWxlIHMvV0lcLlVJU3RyaW5nXCgiKFteIl0rKSIo
PzosXHMqIihbXiJdKikiKD86LFxzKiIoW14iXSspIik/KT9cKS8vOwogICAgICAgICBwcmludCAi
JGZpbGU6JC46V0FSTklORzogJCZcbiIgd2hpbGUgcy9XSVwuVUlTdHJpbmdcKC4qP1wpLy87CiAK
ICAgICAgICAgIyBIYW5kbGUgc3RyaW5ncyBmb3Igb3RoZXIgcHJvamVjdHMgdGhhdCBhbHNvIHVz
ZSB0aGlzIHNjcmlwdC4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>367263</attachid>
            <date>2019-04-11 16:31:29 -0700</date>
            <delta_ts>2019-04-11 17:21:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>43312</size>
            <attacher name="Nikita Vasilyev">nvasilyev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDUwMjZjNmM3NzVkLi4wOTA3OGM3OWI2MiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTAgQEAKKzIwMTktMDQtMTEgIE5pa2l0
YSBWYXNpbHlldiAgPG52YXNpbHlldkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogUHJvdmlkZSBVSVN0cmluZyBkZXNjcmlwdGlvbnMgdG8gaW1wcm92ZSBsb2NhbGl6YXRpb25z
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUxMzIK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ4NDU3ODE3PgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2Nh
bGl6ZWRTdHJpbmdzLmpzOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvQmFzZS9Mb2FkTG9jYWxp
emVkU3RyaW5ncy5qczoKKyAgICAgICAgKFdJLnJlcGVhdGluZ1VJU3RyaW5nKToKKyAgICAgICAg
KiBVc2VySW50ZXJmYWNlL01vZGVscy9MYXlvdXRUaW1lbGluZVJlY29yZC5qczoKKyAgICAgICAg
KFdJLkxheW91dFRpbWVsaW5lUmVjb3JkLmRpc3BsYXlOYW1lRm9yRXZlbnRUeXBlKToKKyAgICAg
ICAgKiBVc2VySW50ZXJmYWNlL01vZGVscy9SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpz
OgorICAgICAgICAoV0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5kaXNwbGF5TmFtZUZv
clRhc2tUeXBlKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL01vZGVscy9SZXNvdXJjZS5qczoK
KyAgICAgICAgKFdJLlJlc291cmNlLmRpc3BsYXlOYW1lRm9yVHlwZSk6CisgICAgICAgICogVXNl
ckludGVyZmFjZS9WaWV3cy9BdWRpdFRlc3RHcm91cENvbnRlbnRWaWV3LmpzOgorICAgICAgICAo
V0kuQXVkaXRUZXN0R3JvdXBDb250ZW50Vmlldy5wcm90b3R5cGUubGF5b3V0KToKKyAgICAgICAg
KiBVc2VySW50ZXJmYWNlL1ZpZXdzL0NQVVRpbWVsaW5lVmlldy5qczoKKyAgICAgICAgKFdJLkNQ
VVRpbWVsaW5lVmlldy5kaXNwbGF5TmFtZUZvclNhbXBsZVR5cGUpOgorICAgICAgICAqIFVzZXJJ
bnRlcmZhY2UvVmlld3MvQ29udGV4dE1lbnVVdGlsaXRpZXMuanM6CisgICAgICAgICogVXNlcklu
dGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanM6CisgICAgICAgIChXSS5E
T01CcmVha3BvaW50VHJlZUVsZW1lbnQuZGlzcGxheU5hbWVGb3JUeXBlKToKKyAgICAgICAgKiBV
c2VySW50ZXJmYWNlL1ZpZXdzL0RPTU5vZGVUcmVlRWxlbWVudC5qczoKKyAgICAgICAgKFdJLkRP
TU5vZGVUcmVlRWxlbWVudC5wcm90b3R5cGUucG9wdWxhdGVDb250ZXh0TWVudSk6CisgICAgICAg
IChXSS5ET01Ob2RlVHJlZUVsZW1lbnQpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3Mv
RE9NVHJlZUVsZW1lbnQuanM6CisgICAgICAgIChXSS5ET01UcmVlRWxlbWVudC5wcm90b3R5cGUu
X3BvcHVsYXRlVGFnQ29udGV4dE1lbnUpOgorICAgICAgICAoV0kuRE9NVHJlZUVsZW1lbnQucHJv
dG90eXBlLl9wb3B1bGF0ZU5vZGVDb250ZXh0TWVudSk6CisgICAgICAgICogVXNlckludGVyZmFj
ZS9WaWV3cy9EZWJ1Z2dlclNpZGViYXJQYW5lbC5qczoKKyAgICAgICAgKFdJLkRlYnVnZ2VyU2lk
ZWJhclBhbmVsLnByb3RvdHlwZS5fYWRkQnJlYWtwb2ludCk6CisgICAgICAgIChXSS5EZWJ1Z2dl
clNpZGViYXJQYW5lbC5wcm90b3R5cGUuX2hhbmRsZUNyZWF0ZUJyZWFrcG9pbnRNb3VzZURvd24p
OgorICAgICAgICAoV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwpOgorICAgICAgICAqIFVzZXJJbnRl
cmZhY2UvVmlld3MvTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbC5qczoKKyAgICAgICAgKFdJ
LkxheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwucHJvdG90eXBlLl9idWlsZERhdGFHcmlkU2Vj
dGlvbik6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9OZXR3b3JrVGFibGVDb250ZW50
Vmlldy5qczoKKyAgICAgICAgKFdJLk5ldHdvcmtUYWJsZUNvbnRlbnRWaWV3LnNob3J0RGlzcGxh
eU5hbWVGb3JSZXNvdXJjZVR5cGUpOgorICAgICAgICAoV0kuTmV0d29ya1RhYmxlQ29udGVudFZp
ZXcucHJvdG90eXBlLmluaXRpYWxMYXlvdXQpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmll
d3MvU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanM6CisgICAgICAgIChXSS5Tb3VyY2Vz
TmF2aWdhdGlvblNpZGViYXJQYW5lbC5wcm90b3R5cGUuX2FkZEJyZWFrcG9pbnQpOgorICAgICAg
ICAoV0kuU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwucHJvdG90eXBlLl9oYW5kbGVDcmVh
dGVCcmVha3BvaW50TW91c2VEb3duKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1Nw
cmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24uanM6CisgICAgICAgIChXSS5TcHJl
YWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9uLnByb3RvdHlwZS5fcmVuZGVyU2VsZWN0
b3IpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRSdWxlc1N0eWxl
RGV0YWlsc1BhbmVsLmpzOgorICAgICAgICAoV0kuU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWls
c1BhbmVsLnByb3RvdHlwZS5sYXlvdXQpOgorCiAyMDE5LTA0LTA4ICBNYXR0IEJha2VyICA8bWF0
dGJha2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBFbGVtZW50cyB0YWI6
IENsYXNzZXMgdG9nZ2xlIHNob3VsZCB1c2UgYWNjZW50IGNvbG9yIG9uIGhvdmVyCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2NhbGl6
ZWRTdHJpbmdzLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4ubHBy
b2ovbG9jYWxpemVkU3RyaW5ncy5qcwppbmRleCBiNmY5YmZkMjMyYS4uZWM3Mzg4OGY4OTAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xv
Y2FsaXplZFN0cmluZ3MuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlv
bnMvZW4ubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcwpAQCAtOTcsOCArOTcsMTAgQEAgbG9jYWxp
emVkU3RyaW5nc1siQWRkaXRpb25zIl0gPSAiQWRkaXRpb25zIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkFkZHJlc3MiXSA9ICJBZGRyZXNzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFsbCJdID0gIkFsbCI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJBbGwgQ2hhbmdlcyJdID0gIkFsbCBDaGFuZ2VzIjsKKy8qIEJy
ZWFrIChwYXVzZSkgb24gYWxsIGV4Y2VwdGlvbnMgKi8KIGxvY2FsaXplZFN0cmluZ3NbIkFsbCBF
eGNlcHRpb25zIl0gPSAiQWxsIEV4Y2VwdGlvbnMiOwogbG9jYWxpemVkU3RyaW5nc1siQWxsIExh
eWVycyJdID0gIkFsbCBMYXllcnMiOworLyogQSBzdWJtZW51IG9mICdCcmVhayBvbicgKi8KIGxv
Y2FsaXplZFN0cmluZ3NbIkFsbCBSZXF1ZXN0cyJdID0gIkFsbCBSZXF1ZXN0cyI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJBbGwgUmVzb3VyY2VzIl0gPSAiQWxsIFJlc291cmNlcyI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJBbGwgU3RvcmFnZSJdID0gIkFsbCBTdG9yYWdlIjsKQEAgLTEyNywxMiArMTI5LDE0
IEBAIGxvY2FsaXplZFN0cmluZ3NbIkFyZWEiXSA9ICJBcmVhIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkFzc2VydGlvbiJdID0gIkFzc2VydGlvbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRpb24g
RmFpbGVkIl0gPSAiQXNzZXJ0aW9uIEZhaWxlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRp
b24gRmFpbGVkOiAlcyJdID0gIkFzc2VydGlvbiBGYWlsZWQ6ICVzIjsKKy8qIEJyZWFrIHdoZW4g
Y29uc29sZS5hc3NlcnQoKSBmYWlscyAqLwogbG9jYWxpemVkU3RyaW5nc1siQXNzZXJ0aW9uIEZh
aWx1cmVzIl0gPSAiQXNzZXJ0aW9uIEZhaWx1cmVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFzc2Vy
dGlvbiB3aXRoIG1lc3NhZ2U6ICVzIl0gPSAiQXNzZXJ0aW9uIHdpdGggbWVzc2FnZTogJXMiOwog
bG9jYWxpemVkU3RyaW5nc1siQXNzZXJ0aXZlIl0gPSAiQXNzZXJ0aXZlIjsKIGxvY2FsaXplZFN0
cmluZ3NbIkFzc29jaWF0ZWQgRGF0YSJdID0gIkFzc29jaWF0ZWQgRGF0YSI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJBc3luYyBhdWRpdHMgYXJlIG5vdCBzdXBwb3J0ZWQuIl0gPSAiQXN5bmMgYXVkaXRz
IGFyZSBub3Qgc3VwcG9ydGVkLiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBdHRyaWJ1dGUiXSA9ICJB
dHRyaWJ1dGUiOworLyogQSBzdWJtZW51IG9mICdCcmVhayBPbicgKi8KIGxvY2FsaXplZFN0cmlu
Z3NbIkF0dHJpYnV0ZSBNb2RpZmllZCJdID0gIkF0dHJpYnV0ZSBNb2RpZmllZCI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJBdHRyaWJ1dGVzIl0gPSAiQXR0cmlidXRlcyI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJBdWRpdCJdID0gIkF1ZGl0IjsKQEAgLTE5Niw2ICsyMDAsNyBAQCBsb2NhbGl6ZWRTdHJpbmdz
WyJDYW52YXMgJWQiXSA9ICJDYW52YXMgJWQiOwogbG9jYWxpemVkU3RyaW5nc1siQ2FudmFzICVz
Il0gPSAiQ2FudmFzICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNhbnZhcyBFbGVtZW50Il0gPSAi
Q2FudmFzIEVsZW1lbnQiOwogbG9jYWxpemVkU3RyaW5nc1siQ2FudmFzZXMiXSA9ICJDYW52YXNl
cyI7CisvKiBDYXB0dXJlIFNjcmVlbnNob3Qgb2YgdGhlIHNlbGVjdGVkIERPTSBub2RlICovCiBs
b2NhbGl6ZWRTdHJpbmdzWyJDYXB0dXJlIFNjcmVlbnNob3QiXSA9ICJDYXB0dXJlIFNjcmVlbnNo
b3QiOwogbG9jYWxpemVkU3RyaW5nc1siQ2FwdHVyaW5nIl0gPSAiQ2FwdHVyaW5nIjsKIC8qIENv
bnRleHQgbWVudSBsYWJlbCBmb3Igd2hldGhlciBzZWFyY2hlcyBzaG91bGQgYmUgY2FzZSBzZW5z
aXRpdmUuICovCkBAIC0yMDksNiArMjE0LDcgQEAgbG9jYWxpemVkU3RyaW5nc1siQ2hhbmdlcyJd
ID0gIkNoYW5nZXMiOwogbG9jYWxpemVkU3RyaW5nc1siQ2hhcmFjdGVyIERhdGEiXSA9ICJDaGFy
YWN0ZXIgRGF0YSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDaGFyZ2UgXHUyMDFDJXNcdTIwMUQgdG8g
Q2FsbGVycyJdID0gIkNoYXJnZSBcdTIwMUMlc1x1MjAxRCB0byBDYWxsZXJzIjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIkNoZWNrZWQiXSA9ICJDaGVja2VkIjsKKy8qIEEgc3VibWVudSBvZiAnQWRkJyAq
LwogbG9jYWxpemVkU3RyaW5nc1siQ2hpbGQiXSA9ICJDaGlsZCI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJDaGlsZCBMYXllcnMiXSA9ICJDaGlsZCBMYXllcnMiOwogbG9jYWxpemVkU3RyaW5nc1siQ2hp
bGQgYWRkZWQgdG8gIl0gPSAiQ2hpbGQgYWRkZWQgdG8gIjsKQEAgLTI0Myw3ICsyNDksOCBAQCBs
b2NhbGl6ZWRTdHJpbmdzWyJDb2xsZWN0IGdhcmJhZ2UiXSA9ICJDb2xsZWN0IGdhcmJhZ2UiOwog
bG9jYWxpemVkU3RyaW5nc1siQ29tbWVudCJdID0gIkNvbW1lbnQiOwogbG9jYWxpemVkU3RyaW5n
c1siQ29tcGFyZSBzbmFwc2hvdHMiXSA9ICJDb21wYXJlIHNuYXBzaG90cyI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJDb21wYXJpc29uIG9mIHRvdGFsIG1lbW9yeSBzaXplIGF0IHRoZSBlbmQgb2YgdGhl
IHNlbGVjdGVkIHRpbWUgcmFuZ2UgdG8gdGhlIG1heGltdW0gbWVtb3J5IHNpemUgaW4gdGhpcyBy
ZWNvcmRpbmciXSA9ICJDb21wYXJpc29uIG9mIHRvdGFsIG1lbW9yeSBzaXplIGF0IHRoZSBlbmQg
b2YgdGhlIHNlbGVjdGVkIHRpbWUgcmFuZ2UgdG8gdGhlIG1heGltdW0gbWVtb3J5IHNpemUgaW4g
dGhpcyByZWNvcmRpbmciOwotbG9jYWxpemVkU3RyaW5nc1siQ29tcG9zaXRlIl0gPSAiQ29tcG9z
aXRlIjsKKy8qIENvbXBvc2l0ZSBwaGFzZSByZWNvcmRzLCB3aGVyZSBncmFwaGljIGxheWVycyBh
cmUgY29tYmluZWQgKi8KK2xvY2FsaXplZFN0cmluZ3NbIkNvbXBvc2l0ZSBAIFRpbWVsaW5lIHJl
Y29yZCJdID0gIkNvbXBvc2l0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wb3NpdGVkIl0gPSAi
Q29tcG9zaXRlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wcmVzc2VkIl0gPSAiQ29tcHJlc3Nl
ZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wcmVzc2lvbiJdID0gIkNvbXByZXNzaW9uIjsKQEAg
LTQ2Myw3ICs0NzAsOSBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJFeHRyYSBTY3JpcHRzIl0gPSAiRXh0
cmEgU2NyaXB0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGYWRlIHVuZXhlY3V0ZWQgY29kZSJdID0g
IkZhZGUgdW5leGVjdXRlZCBjb2RlIjsKIGxvY2FsaXplZFN0cmluZ3NbIkZhaWxlZCB0byB1cGdy
YWRlIl0gPSAiRmFpbGVkIHRvIHVwZ3JhZGUiOwogbG9jYWxpemVkU3RyaW5nc1siRmFpbHVyZSBz
dGF0dXMgY29kZSJdID0gIkZhaWx1cmUgc3RhdHVzIGNvZGUiOworLyogUmVzb3VyY2UgbG9hZGVk
IHZpYSAnZmV0Y2gnIG1ldGhvZCAqLwogbG9jYWxpemVkU3RyaW5nc1siRmV0Y2giXSA9ICJGZXRj
aCI7CisvKiBSZXNvdXJjZXMgbG9hZGVkIHZpYSAnZmV0Y2gnIG1ldGhvZCAqLwogbG9jYWxpemVk
U3RyaW5nc1siRmV0Y2hlcyJdID0gIkZldGNoZXMiOwogbG9jYWxpemVkU3RyaW5nc1siRmlsZSBv
ciBSZXNvdXJjZSJdID0gIkZpbGUgb3IgUmVzb3VyY2UiOwogbG9jYWxpemVkU3RyaW5nc1siRmls
ZW5hbWUiXSA9ICJGaWxlbmFtZSI7CkBAIC00ODAsNyArNDg5LDkgQEAgbG9jYWxpemVkU3RyaW5n
c1siRm9udHMiXSA9ICJGb250cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3JjZSBEYXJrIEFwcGVh
cmFuY2UiXSA9ICJGb3JjZSBEYXJrIEFwcGVhcmFuY2UiOwogbG9jYWxpemVkU3RyaW5nc1siRm9y
Y2UgTGlnaHQgQXBwZWFyYW5jZSJdID0gIkZvcmNlIExpZ2h0IEFwcGVhcmFuY2UiOwogbG9jYWxp
emVkU3RyaW5nc1siRm9yY2UgUHJpbnQgTWVkaWEgU3R5bGVzIl0gPSAiRm9yY2UgUHJpbnQgTWVk
aWEgU3R5bGVzIjsKKy8qIExheW91dCBwaGFzZSByZWNvcmRzIHRoYXQgd2VyZSBpbXBlcmF0aXZl
IChmb3JjZWQpICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3JjZWQgTGF5b3V0Il0gPSAiRm9yY2Vk
IExheW91dCI7CisvKiBBIGNvbnRleHQgbWVudSB0byBmb3JjZSAob3ZlcnJpZGUpIGVsZW1lbnQn
cyBwc2V1ZG8tY2xhc3NlcyAqLwogbG9jYWxpemVkU3RyaW5nc1siRm9yY2VkIFBzZXVkby1DbGFz
c2VzIl0gPSAiRm9yY2VkIFBzZXVkby1DbGFzc2VzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkZvcm1h
dDogSFNMIl0gPSAiRm9ybWF0OiBIU0wiOwogbG9jYWxpemVkU3RyaW5nc1siRm9ybWF0OiBIU0xB
Il0gPSAiRm9ybWF0OiBIU0xBIjsKQEAgLTU3MSw2ICs1ODIsNyBAQCBsb2NhbGl6ZWRTdHJpbmdz
WyJJbmRleCBLZXkgXHUyMDE0ICVzIl0gPSAiSW5kZXggS2V5IFx1MjAxNCAlcyI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJJbmRleGVkIERhdGFiYXNlcyJdID0gIkluZGV4ZWQgRGF0YWJhc2VzIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIkluZm86ICJdID0gIkluZm86ICI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJ
bmZvcyJdID0gIkluZm9zIjsKKy8qIEEgc2VjdGlvbiBvZiBDU1MgcnVsZXMgaW5oZXJpdGVkIGZy
b20gYW5vdGhlciBDU1MgcnVsZSAqLwogbG9jYWxpemVkU3RyaW5nc1siSW5oZXJpdGVkIEZyb20i
XSA9ICJJbmhlcml0ZWQgRnJvbSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbml0aWFsIFN0YXRlIl0g
PSAiSW5pdGlhbCBTdGF0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbml0aWFsIFZlbG9jaXR5Il0g
PSAiSW5pdGlhbCBWZWxvY2l0eSI7CkBAIC01OTksOCArNjExLDkgQEAgbG9jYWxpemVkU3RyaW5n
c1siTGF5ZXIgQ291bnQ6ICVkIl0gPSAiTGF5ZXIgQ291bnQ6ICVkIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkxheWVyIEluZm8iXSA9ICJMYXllciBJbmZvIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxheWVy
cyJdID0gIkxheWVycyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMYXllcnM6Il0gPSAiTGF5ZXJzOiI7
Ci1sb2NhbGl6ZWRTdHJpbmdzWyJMYXlvdXQiXSA9ICJMYXlvdXQiOwogbG9jYWxpemVkU3RyaW5n
c1siTGF5b3V0ICYgUmVuZGVyaW5nIl0gPSAiTGF5b3V0ICYgUmVuZGVyaW5nIjsKKy8qIExheW91
dCBwaGFzZSByZWNvcmRzICovCitsb2NhbGl6ZWRTdHJpbmdzWyJMYXlvdXQgQCBUaW1lbGluZSBy
ZWNvcmQiXSA9ICJMYXlvdXQiOwogbG9jYWxpemVkU3RyaW5nc1siTGF5b3V0IEludmFsaWRhdGVk
Il0gPSAiTGF5b3V0IEludmFsaWRhdGVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxpbmUgJWQiXSA9
ICJMaW5lICVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxpbmUgJWQ6JWQiXSA9ICJMaW5lICVkOiVk
IjsKQEAgLTYxOCwxMCArNjMxLDEyIEBAIGxvY2FsaXplZFN0cmluZ3NbIkxvY2FsIFZhcmlhYmxl
cyJdID0gIkxvY2FsIFZhcmlhYmxlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2NhdGVkIGF0ICVz
Il0gPSAiTG9jYXRlZCBhdCAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2NhdGlvbiJdID0gIkxv
Y2F0aW9uIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBDYW52YXMgQ29udGV4dCJdID0gIkxvZyBD
YW52YXMgQ29udGV4dCI7CisvKiBMb2cgRE9NIGVsZW1lbnQgdG8gQ29uc29sZSAqLwogbG9jYWxp
emVkU3RyaW5nc1siTG9nIEVsZW1lbnQiXSA9ICJMb2cgRWxlbWVudCI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJMb2cgRnJhbWUgVGV4dCJdID0gIkxvZyBGcmFtZSBUZXh0IjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkxvZyBGcmFtZSBWYWx1ZSJdID0gIkxvZyBGcmFtZSBWYWx1ZSI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJMb2cgTWVzc2FnZSJdID0gIkxvZyBNZXNzYWdlIjsKKy8qIExvZyBET00gbm9kZSB0byBD
b25zb2xlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgTm9kZSJdID0gIkxvZyBOb2RlIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIkxvZyBTeW1ib2wiXSA9ICJMb2cgU3ltYm9sIjsKIGxvY2FsaXplZFN0
cmluZ3NbIkxvZyBWYWx1ZSJdID0gIkxvZyBWYWx1ZSI7CkBAIC02NjUsNiArNjgwLDcgQEAgbG9j
YWxpemVkU3RyaW5nc1siTmV0d29yayJdID0gIk5ldHdvcmsiOwogbG9jYWxpemVkU3RyaW5nc1si
TmV0d29yayBJc3N1ZSJdID0gIk5ldHdvcmsgSXNzdWUiOwogbG9jYWxpemVkU3RyaW5nc1siTmV0
d29yayBSZXF1ZXN0cyJdID0gIk5ldHdvcmsgUmVxdWVzdHMiOwogbG9jYWxpemVkU3RyaW5nc1si
TmV3IFRhYiJdID0gIk5ldyBUYWIiOworLyogQSBzdWJtZW51IG9mICdBZGQnICovCiBsb2NhbGl6
ZWRTdHJpbmdzWyJOZXh0IFNpYmxpbmciXSA9ICJOZXh0IFNpYmxpbmciOwogbG9jYWxpemVkU3Ry
aW5nc1siTm8iXSA9ICJObyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJObyBBY2Nlc3NpYmlsaXR5IElu
Zm9ybWF0aW9uIl0gPSAiTm8gQWNjZXNzaWJpbGl0eSBJbmZvcm1hdGlvbiI7CkBAIC03MDUsNiAr
NzIxLDcgQEAgbG9jYWxpemVkU3RyaW5nc1siTm8gcmVxdWVzdCwgc2VydmVkIGZyb20gdGhlIG1l
bW9yeSBjYWNoZS4iXSA9ICJObyByZXF1ZXN0LCBzZXIKIGxvY2FsaXplZFN0cmluZ3NbIk5vIHJl
c3BvbnNlIGNvb2tpZXMuIl0gPSAiTm8gcmVzcG9uc2UgY29va2llcy4iOwogbG9jYWxpemVkU3Ry
aW5nc1siTm8gcmVzcG9uc2UgaGVhZGVycyJdID0gIk5vIHJlc3BvbnNlIGhlYWRlcnMiOwogbG9j
YWxpemVkU3RyaW5nc1siTm9kZSJdID0gIk5vZGUiOworLyogQSBzdWJtZW51IG9mICdCcmVhayBP
bicgKi8KIGxvY2FsaXplZFN0cmluZ3NbIk5vZGUgUmVtb3ZlZCJdID0gIk5vZGUgUmVtb3ZlZCI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJOb2RlcyJdID0gIk5vZGVzIjsKIGxvY2FsaXplZFN0cmluZ3Nb
Ik5vbmUiXSA9ICJOb25lIjsKQEAgLTc0NCw4ICs3NjEsMTEgQEAgbG9jYWxpemVkU3RyaW5nc1si
UGFnZSJdID0gIlBhZ2UiOwogbG9jYWxpemVkU3RyaW5nc1siUGFnZSBJc3N1ZSJdID0gIlBhZ2Ug
SXNzdWUiOwogbG9jYWxpemVkU3RyaW5nc1siUGFnZSBuYXZpZ2F0ZWQgYXQgJXMiXSA9ICJQYWdl
IG5hdmlnYXRlZCBhdCAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQYWdlIHJlbG9hZGVkIGF0ICVz
Il0gPSAiUGFnZSByZWxvYWRlZCBhdCAlcyI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJQYWludCJdID0g
IlBhaW50IjsKKy8qIFBhaW50IChyZW5kZXIpIHBoYXNlIHJlY29yZHMgKi8KK2xvY2FsaXplZFN0
cmluZ3NbIlBhaW50IEAgVGltZWxpbmUgcmVjb3JkIl0gPSAiUGFpbnQiOwogbG9jYWxpemVkU3Ry
aW5nc1siUGFpbnRzIl0gPSAiUGFpbnRzIjsKKy8qIEEgY291bnQgb2YgaG93IG1hbnkgdGltZXMg
YW4gZWxlbWVudCB3YXMgcGFpbnRlZCAocmVuZGVyZWQpICovCitsb2NhbGl6ZWRTdHJpbmdzWyJQ
YWludHMgQCBDb2x1bW4gdGl0bGUiXSA9ICJQYWludHMiOwogbG9jYWxpemVkU3RyaW5nc1siUGFy
ZW50Il0gPSAiUGFyZW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIlBhcnRpYWwgR2FyYmFnZSBDb2xs
ZWN0aW9uIl0gPSAiUGFydGlhbCBHYXJiYWdlIENvbGxlY3Rpb24iOwogbG9jYWxpemVkU3RyaW5n
c1siUGFzc2l2ZSJdID0gIlBhc3NpdmUiOwpAQCAtNzcyLDYgKzc5Miw3IEBAIGxvY2FsaXplZFN0
cmluZ3NbIlByZXNzICVzIHRvIHN0b3AgZWRpdGluZyJdID0gIlByZXNzICVzIHRvIHN0b3AgZWRp
dGluZyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQcmVzc2VkIl0gPSAiUHJlc3NlZCI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJQcmV0dHkgcHJpbnQiXSA9ICJQcmV0dHkgcHJpbnQiOwogbG9jYWxpemVkU3Ry
aW5nc1siUHJldmlldyJdID0gIlByZXZpZXciOworLyogQSBzdWJtZW51IG9mICdBZGQnICovCiBs
b2NhbGl6ZWRTdHJpbmdzWyJQcmV2aW91cyBTaWJsaW5nIl0gPSAiUHJldmlvdXMgU2libGluZyI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJQcmltYXJ5IEtleSJdID0gIlByaW1hcnkgS2V5IjsKIGxvY2Fs
aXplZFN0cmluZ3NbIlByaW1hcnkgS2V5IFx1MjAxNCAlcyJdID0gIlByaW1hcnkgS2V5IFx1MjAx
NCAlcyI7CkBAIC04NTksOSArODgwLDExIEBAIGxvY2FsaXplZFN0cmluZ3NbIlJldHVybiB0eXBl
IGZvciBhbm9ueW1vdXMgZnVuY3Rpb24iXSA9ICJSZXR1cm4gdHlwZSBmb3IgYW5vbnltCiBsb2Nh
bGl6ZWRTdHJpbmdzWyJSZXR1cm4gdHlwZSBmb3IgZnVuY3Rpb246ICVzIl0gPSAiUmV0dXJuIHR5
cGUgZm9yIGZ1bmN0aW9uOiAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXR1cm4gdmFsdWUgaXMg
bm90IGFuIG9iamVjdCwgc3RyaW5nLCBvciBib29sZWFuIl0gPSAiUmV0dXJuIHZhbHVlIGlzIG5v
dCBhbiBvYmplY3QsIHN0cmluZywgb3IgYm9vbGVhbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZl
YWwgQnJlYWtwb2ludCJdID0gIlJldmVhbCBCcmVha3BvaW50IjsKKy8qIE9wZW4gRWxlbWVudHMg
dGFiIGFuZCBzZWxlY3QgdGhpcyBub2RlIGluIERPTSB0cmVlICovCiBsb2NhbGl6ZWRTdHJpbmdz
WyJSZXZlYWwgaW4gRE9NIFRyZWUiXSA9ICJSZXZlYWwgaW4gRE9NIFRyZWUiOwogbG9jYWxpemVk
U3RyaW5nc1siUmV2ZWFsIGluIERlYnVnZ2VyIFRhYiJdID0gIlJldmVhbCBpbiBEZWJ1Z2dlciBU
YWIiOwogbG9jYWxpemVkU3RyaW5nc1siUmV2ZWFsIGluIEVsZW1lbnRzIFRhYiJdID0gIlJldmVh
bCBpbiBFbGVtZW50cyBUYWIiOworLyogT3BlbiBMYXllcnMgdGFiIGFuZCBzZWxlY3QgdGhlIGxh
eWVyIGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBub2RlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZl
YWwgaW4gTGF5ZXJzIFRhYiJdID0gIlJldmVhbCBpbiBMYXllcnMgVGFiIjsKIGxvY2FsaXplZFN0
cmluZ3NbIlJldmVhbCBpbiBOZXR3b3JrIFRhYiJdID0gIlJldmVhbCBpbiBOZXR3b3JrIFRhYiI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZlYWwgaW4gT3JpZ2luYWwgUmVzb3VyY2UiXSA9ICJSZXZl
YWwgaW4gT3JpZ2luYWwgUmVzb3VyY2UiOwpAQCAtODg5LDcgKzkxMiw4IEBAIGxvY2FsaXplZFN0
cmluZ3NbIlNjcmlwdCBFbGVtZW50ICVkIl0gPSAiU2NyaXB0IEVsZW1lbnQgJWQiOwogbG9jYWxp
emVkU3RyaW5nc1siU2NyaXB0IEVudHJpZXM6Il0gPSAiU2NyaXB0IEVudHJpZXM6IjsKIGxvY2Fs
aXplZFN0cmluZ3NbIlNjcmlwdCBFdmFsdWF0ZWQiXSA9ICJTY3JpcHQgRXZhbHVhdGVkIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIlNjcmlwdHMiXSA9ICJTY3JpcHRzIjsKLWxvY2FsaXplZFN0cmluZ3Nb
IlNjcm9sbCBJbnRvIFZpZXciXSA9ICJTY3JvbGwgSW50byBWaWV3IjsKKy8qIFNjcm9sbCBzZWxl
Y3RlZCBET00gbm9kZSBpbnRvIHZpZXcgb24gdGhlIGluc3BlY3RlZCB3ZWIgcGFnZSAqLworbG9j
YWxpemVkU3RyaW5nc1siU2Nyb2xsIGludG8gVmlldyJdID0gIlNjcm9sbCBpbnRvIFZpZXciOwog
bG9jYWxpemVkU3RyaW5nc1siU2VhcmNoIl0gPSAiU2VhcmNoIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IlNlYXJjaCBBZ2FpbiJdID0gIlNlYXJjaCBBZ2FpbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWFy
Y2ggUmVzb3VyY2UgQ29udGVudCJdID0gIlNlYXJjaCBSZXNvdXJjZSBDb250ZW50IjsKQEAgLTkw
NCwxMCArOTI4LDEyIEBAIGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdCBiYXNlbGluZSBzbmFwc2hv
dCJdID0gIlNlbGVjdCBiYXNlbGluZSBzbmFwc2hvdCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxl
Y3QgY29tcGFyaXNvbiBzbmFwc2hvdCJdID0gIlNlbGVjdCBjb21wYXJpc29uIHNuYXBzaG90IjsK
IGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdGVkIl0gPSAiU2VsZWN0ZWQiOwogbG9jYWxpemVkU3Ry
aW5nc1siU2VsZWN0ZWQgQ2FudmFzIENvbnRleHQiXSA9ICJTZWxlY3RlZCBDYW52YXMgQ29udGV4
dCI7CisvKiBTZWxlY3RlZCBET00gZWxlbWVudCAqLwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0
ZWQgRWxlbWVudCJdID0gIlNlbGVjdGVkIEVsZW1lbnQiOwogbG9jYWxpemVkU3RyaW5nc1siU2Vs
ZWN0ZWQgRnJhbWUiXSA9ICJTZWxlY3RlZCBGcmFtZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxl
Y3RlZCBJdGVtIl0gPSAiU2VsZWN0ZWQgSXRlbSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3Rl
ZCBJdGVtcyJdID0gIlNlbGVjdGVkIEl0ZW1zIjsKKy8qIFNlbGVjdGVkIERPTSBub2RlICovCiBs
b2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBOb2RlIl0gPSAiU2VsZWN0ZWQgTm9kZSI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBTeW1ib2wiXSA9ICJTZWxlY3RlZCBTeW1ib2wiOwogbG9j
YWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgVmFsdWUiXSA9ICJTZWxlY3RlZCBWYWx1ZSI7CkBAIC0x
MDA4LDYgKzEwMzQsNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJTdG9wIHJlY29yZGluZyBjYW52YXMg
YWN0aW9ucyJdID0gIlN0b3AgcmVjb3JkaW5nIGNhbnZhcyBhY3RpbwogbG9jYWxpemVkU3RyaW5n
c1siU3RvcCByZWNvcmRpbmcgb25jZSBwYWdlIGxvYWRzIl0gPSAiU3RvcCByZWNvcmRpbmcgb25j
ZSBwYWdlIGxvYWRzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlN0b3BwaW5nIHRoZSBcdTIwMUMlc1x1
MjAxRCBhdWRpdCJdID0gIlN0b3BwaW5nIHRoZSBcdTIwMUMlc1x1MjAxRCBhdWRpdCI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJTdG9yYWdlIl0gPSAiU3RvcmFnZSI7CisvKiBDU1MgcHJvcGVydGllcyBk
ZWZpbmVkIHZpYSBIVE1MIHN0eWxlIGF0dHJpYnV0ZSAqLwogbG9jYWxpemVkU3RyaW5nc1siU3R5
bGUgQXR0cmlidXRlIl0gPSAiU3R5bGUgQXR0cmlidXRlIjsKIGxvY2FsaXplZFN0cmluZ3NbIlN0
eWxlIFJlc29sdXRpb24iXSA9ICJTdHlsZSBSZXNvbHV0aW9uIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IlN0eWxlIHJ1bGUiXSA9ICJTdHlsZSBydWxlIjsKQEAgLTEwMjAsMTIgKzEwNDcsMTQgQEAgbG9j
YWxpemVkU3RyaW5nc1siU3R5bGVzOiJdID0gIlN0eWxlczoiOwogbG9jYWxpemVkU3RyaW5nc1si
U3R5bGVzaGVldCJdID0gIlN0eWxlc2hlZXQiOwogbG9jYWxpemVkU3RyaW5nc1siU3R5bGVzaGVl
dHMiXSA9ICJTdHlsZXNoZWV0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdWJqZWN0Il0gPSAiU3Vi
amVjdCI7CisvKiBBIHN1Ym1lbnUgb2YgJ0JyZWFrIE9uJyAqLwogbG9jYWxpemVkU3RyaW5nc1si
U3VidHJlZSBNb2RpZmllZCJdID0gIlN1YnRyZWUgTW9kaWZpZWQiOwogbG9jYWxpemVkU3RyaW5n
c1siU3VtbWFyeSJdID0gIlN1bW1hcnkiOwogbG9jYWxpemVkU3RyaW5nc1siVENQIl0gPSAiVENQ
IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRJRkYiXSA9ICJUSUZGIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IlRhYiB3aWR0aDoiXSA9ICJUYWIgd2lkdGg6IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRhYnMiXSA9
ICJUYWJzIjsKKy8qIEEgc3VibWVudSBvZiAnRWRpdCcgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlRh
ZyJdID0gIlRhZyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUYWtlIHNuYXBzaG90Il0gPSAiVGFrZSBz
bmFwc2hvdCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUYXJnZXQiXSA9ICJUYXJnZXQiOwpAQCAtMTA4
OCw2ICsxMTE3LDcgQEAgbG9jYWxpemVkU3RyaW5nc1siVG90YWw6ICVzIl0gPSAiVG90YWw6ICVz
IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRvdGFsczoiXSA9ICJUb3RhbHM6IjsKIGxvY2FsaXplZFN0
cmluZ3NbIlRyYWNlIl0gPSAiVHJhY2UiOwogbG9jYWxpemVkU3RyaW5nc1siVHJhY2U6ICVzIl0g
PSAiVHJhY2U6ICVzIjsKKy8qIEFtb3VudCBvZiBkYXRhIHNlbnQgb3ZlciB0aGUgbmV0d29yayAq
LwogbG9jYWxpemVkU3RyaW5nc1siVHJhbnNmZXIgU2l6ZSJdID0gIlRyYW5zZmVyIFNpemUiOwog
bG9jYWxpemVkU3RyaW5nc1siVHJhbnNmZXJyZWQiXSA9ICJUcmFuc2ZlcnJlZCI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJUcmlnZ2VyZWQgQnJlYWtwb2ludCJdID0gIlRyaWdnZXJlZCBCcmVha3BvaW50
IjsKQEAgLTExMDIsNiArMTEzMiw3IEBAIGxvY2FsaXplZFN0cmluZ3NbIlVSTCBCcmVha3BvaW50
XHUyMDI2Il0gPSAiVVJMIEJyZWFrcG9pbnRcdTIwMjYiOwogbG9jYWxpemVkU3RyaW5nc1siVW5h
YmxlIHRvIGRldGVybWluZSBwYXRoIHRvIHByb3BlcnR5IGZyb20gcm9vdCJdID0gIlVuYWJsZSB0
byBkZXRlcm1pbmUgcGF0aCB0byBwcm9wZXJ0eSBmcm9tIHJvb3QiOwogbG9jYWxpemVkU3RyaW5n
c1siVW5hYmxlIHRvIHBhcnNlIGFzIEpTT046ICVzIl0gPSAiVW5hYmxlIHRvIHBhcnNlIGFzIEpT
T046ICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlVuYWJsZSB0byBzaG93IGNlcnRpZmljYXRlIGZv
ciBcdTIwMUMlc1x1MjAxRCJdID0gIlVuYWJsZSB0byBzaG93IGNlcnRpZmljYXRlIGZvciBcdTIw
MUMlc1x1MjAxRCI7CisvKiBCcmVhayAocGF1c2UpIG9uIGV2ZXJ5IHVuY2F1Z2h0ICh1bmhhbmRs
ZWQpIGV4Y2VwdGlvbnMgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlVuY2F1Z2h0IEV4Y2VwdGlvbnMi
XSA9ICJVbmNhdWdodCBFeGNlcHRpb25zIjsKIGxvY2FsaXplZFN0cmluZ3NbIlVuZGVmaW5lZCBj
dXN0b20gZWxlbWVudCJdID0gIlVuZGVmaW5lZCBjdXN0b20gZWxlbWVudCI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJVbmlxdWUiXSA9ICJVbmlxdWUiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvQmFzZS9Mb2FkTG9jYWxpemVkU3RyaW5ncy5qcyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXplZFN0cmluZ3Mu
anMKaW5kZXggYzBmNWEzNzVlMzMuLjA4Y2M5NmQzYzY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9CYXNlL0xvYWRMb2NhbGl6ZWRTdHJpbmdzLmpzCisr
KyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXpl
ZFN0cmluZ3MuanMKQEAgLTQ2LDYgKzQ2LDEyIEBAIFdJLlVJU3RyaW5nID0gZnVuY3Rpb24oc3Ry
aW5nLCBrZXksIGNvbW1lbnQpCiAgICAgaWYgKFdJLmRvbnRMb2NhbGl6ZVVzZXJJbnRlcmZhY2Up
CiAgICAgICAgIHJldHVybiBzdHJpbmc7CiAKKyAgICAvLyBVSVN0cmluZyhzdHJpbmcsIGNvbW1l
bnQpCisgICAgaWYgKGtleSAmJiBjb21tZW50ID09PSB1bmRlZmluZWQpIHsKKyAgICAgICAga2V5
ID0gdW5kZWZpbmVkOworICAgICAgICBjb21tZW50ID0ga2V5OworICAgIH0KKwogICAgIGtleSA9
IGtleSB8fCBzdHJpbmc7CiAKICAgICBpZiAod2luZG93LmxvY2FsaXplZFN0cmluZ3MgJiYga2V5
IGluIHdpbmRvdy5sb2NhbGl6ZWRTdHJpbmdzKQpAQCAtNjQsMyArNzAsMjcgQEAgV0kuVUlTdHJp
bmcgPSBmdW5jdGlvbihzdHJpbmcsIGtleSwgY29tbWVudCkKIAogICAgIHJldHVybiAiTE9DQUxJ
WkVEIFNUUklORyBOT1QgRk9VTkQiOwogfTsKKworV0kucmVwZWF0aW5nVUlTdHJpbmcgPSBmdW5j
dGlvbihrZXkpIHsKKyAgICBsZXQgbG9jYWxpemVkU3RyaW5ncyA9IHsKKyAgICAgICAgIkxheW91
dCBAIFRpbWVsaW5lIHJlY29yZCI6IFdJLlVJU3RyaW5nKCJMYXlvdXQiLCAiTGF5b3V0IEAgVGlt
ZWxpbmUgcmVjb3JkIiwgIkxheW91dCBwaGFzZSByZWNvcmRzIiksCisgICAgICAgICJQYWludCBA
IFRpbWVsaW5lIHJlY29yZCI6IFdJLlVJU3RyaW5nKCJQYWludCIsICJQYWludCBAIFRpbWVsaW5l
IHJlY29yZCIsICJQYWludCAocmVuZGVyKSBwaGFzZSByZWNvcmRzIiksCisgICAgICAgICJDb21w
b3NpdGUgQCBUaW1lbGluZSByZWNvcmQiOiBXSS5VSVN0cmluZygiQ29tcG9zaXRlIiwgIkNvbXBv
c2l0ZSBAIFRpbWVsaW5lIHJlY29yZCIsICJDb21wb3NpdGUgcGhhc2UgcmVjb3Jkcywgd2hlcmUg
Z3JhcGhpYyBsYXllcnMgYXJlIGNvbWJpbmVkIiksCisKKyAgICAgICAgIkFsbCBFeGNlcHRpb25z
IjogV0kuVUlTdHJpbmcoIkFsbCBFeGNlcHRpb25zIiwgIkJyZWFrIChwYXVzZSkgb24gYWxsIGV4
Y2VwdGlvbnMiKSwKKyAgICAgICAgIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiOiBXSS5VSVN0cmluZygi
VW5jYXVnaHQgRXhjZXB0aW9ucyIsICJCcmVhayAocGF1c2UpIG9uIGV2ZXJ5IHVuY2F1Z2h0ICh1
bmhhbmRsZWQpIGV4Y2VwdGlvbnMiKSwKKyAgICAgICAgIkFzc2VydGlvbiBGYWlsdXJlcyI6IFdJ
LlVJU3RyaW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiLCAiQnJlYWsgd2hlbiBjb25zb2xlLmFzc2Vy
dCgpIGZhaWxzIiksCisgICAgICAgICJBbGwgUmVxdWVzdHMiOiBXSS5VSVN0cmluZygiQWxsIFJl
cXVlc3RzIiwgIkEgc3VibWVudSBvZiAnQnJlYWsgb24nIiksCisKKyAgICAgICAgIkZldGNoIjog
V0kuVUlTdHJpbmcoIkZldGNoIiwgIlJlc291cmNlIGxvYWRlZCB2aWEgJ2ZldGNoJyBtZXRob2Qi
KSwKKworICAgICAgICAiUmV2ZWFsIGluIERPTSBUcmVlIjogV0kuVUlTdHJpbmcoIlJldmVhbCBp
biBET00gVHJlZSIsICJPcGVuIEVsZW1lbnRzIHRhYiBhbmQgc2VsZWN0IHRoaXMgbm9kZSBpbiBE
T00gdHJlZSIpLAorICAgIH07CisKKyAgICBpZiAoIWxvY2FsaXplZFN0cmluZ3MuaGFzT3duUHJv
cGVydHkoa2V5KSkgeworICAgICAgICBjb25zb2xlLmVycm9yKGByZXBlYXRpbmdVSVN0cmluZyAi
JHtrZXl9IiB3YXMgbm90IGZvdW5kLmApOworICAgICAgICByZXR1cm4gIkxPQ0FMSVpFRCBTVFJJ
TkcgTk9UIEZPVU5EIjsKKyAgICB9CisKKyAgICByZXR1cm4gbG9jYWxpemVkU3RyaW5nc1trZXld
OworfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01v
ZGVscy9MYXlvdXRUaW1lbGluZVJlY29yZC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL01vZGVscy9MYXlvdXRUaW1lbGluZVJlY29yZC5qcwppbmRleCBmYWE0YjZjMmU1
Mi4uZjkzMWRlNTcwMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL01vZGVscy9MYXlvdXRUaW1lbGluZVJlY29yZC5qcworKysgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvTGF5b3V0VGltZWxpbmVSZWNvcmQuanMKQEAg
LTUxLDEzICs1MSwxMyBAQCBXSS5MYXlvdXRUaW1lbGluZVJlY29yZCA9IGNsYXNzIExheW91dFRp
bWVsaW5lUmVjb3JkIGV4dGVuZHMgV0kuVGltZWxpbmVSZWNvcmQKICAgICAgICAgY2FzZSBXSS5M
YXlvdXRUaW1lbGluZVJlY29yZC5FdmVudFR5cGUuSW52YWxpZGF0ZUxheW91dDoKICAgICAgICAg
ICAgIHJldHVybiBXSS5VSVN0cmluZygiTGF5b3V0IEludmFsaWRhdGVkIik7CiAgICAgICAgIGNh
c2UgV0kuTGF5b3V0VGltZWxpbmVSZWNvcmQuRXZlbnRUeXBlLkZvcmNlZExheW91dDoKLSAgICAg
ICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiRm9yY2VkIExheW91dCIpOworICAgICAgICAgICAg
cmV0dXJuIFdJLlVJU3RyaW5nKCJGb3JjZWQgTGF5b3V0IiwgIkxheW91dCBwaGFzZSByZWNvcmRz
IHRoYXQgd2VyZSBpbXBlcmF0aXZlIChmb3JjZWQpIik7CiAgICAgICAgIGNhc2UgV0kuTGF5b3V0
VGltZWxpbmVSZWNvcmQuRXZlbnRUeXBlLkxheW91dDoKLSAgICAgICAgICAgIHJldHVybiBXSS5V
SVN0cmluZygiTGF5b3V0Iik7CisgICAgICAgICAgICByZXR1cm4gV0kucmVwZWF0aW5nVUlTdHJp
bmcoIkxheW91dCBAIFRpbWVsaW5lIHJlY29yZCIpOwogICAgICAgICBjYXNlIFdJLkxheW91dFRp
bWVsaW5lUmVjb3JkLkV2ZW50VHlwZS5QYWludDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0
cmluZygiUGFpbnQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRpbmdVSVN0cmluZygi
UGFpbnQgQCBUaW1lbGluZSByZWNvcmQiKTsKICAgICAgICAgY2FzZSBXSS5MYXlvdXRUaW1lbGlu
ZVJlY29yZC5FdmVudFR5cGUuQ29tcG9zaXRlOgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3Ry
aW5nKCJDb21wb3NpdGUiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRpbmdVSVN0cmlu
ZygiQ29tcG9zaXRlIEAgVGltZWxpbmUgcmVjb3JkIik7CiAgICAgICAgIH0KICAgICB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZW5k
ZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvTW9kZWxzL1JlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuanMKaW5kZXggNWZk
ODEwODNmOWUuLjY3N2MyZDA3YTIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9Nb2RlbHMvUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5qcworKysg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvUmVuZGVyaW5nRnJh
bWVUaW1lbGluZVJlY29yZC5qcwpAQCAtNDYsOSArNDYsOSBAQCBXSS5SZW5kZXJpbmdGcmFtZVRp
bWVsaW5lUmVjb3JkID0gY2xhc3MgUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZCBleHRlbmRz
IFdJLgogICAgICAgICBjYXNlIFdJLlJlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuVGFza1R5
cGUuU2NyaXB0OgogICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJTY3JpcHQiKTsKICAg
ICAgICAgY2FzZSBXSS5SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLlRhc2tUeXBlLkxheW91
dDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTGF5b3V0Iik7CisgICAgICAgICAg
ICByZXR1cm4gV0kucmVwZWF0aW5nVUlTdHJpbmcoIkxheW91dCBAIFRpbWVsaW5lIHJlY29yZCIp
OwogICAgICAgICBjYXNlIFdJLlJlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuVGFza1R5cGUu
UGFpbnQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlBhaW50Iik7CisgICAgICAg
ICAgICByZXR1cm4gV0kucmVwZWF0aW5nVUlTdHJpbmcoIlBhaW50IEAgVGltZWxpbmUgcmVjb3Jk
Iik7CiAgICAgICAgIGNhc2UgV0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5UYXNrVHlw
ZS5PdGhlcjoKICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiT3RoZXIiKTsKICAgICAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9k
ZWxzL1Jlc291cmNlLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9k
ZWxzL1Jlc291cmNlLmpzCmluZGV4IGRjNzUyMDg2ZDYxLi44YjZmMWY5N2Y5OSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291cmNlLmpz
CisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZXNvdXJj
ZS5qcwpAQCAtMTU2LDggKzE1Niw4IEBAIFdJLlJlc291cmNlID0gY2xhc3MgUmVzb3VyY2UgZXh0
ZW5kcyBXSS5Tb3VyY2VDb2RlCiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlhIUiIp
OwogICAgICAgICBjYXNlIFdJLlJlc291cmNlLlR5cGUuRmV0Y2g6CiAgICAgICAgICAgICBpZiAo
cGx1cmFsKQotICAgICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiRmV0Y2hlcyIpOwot
ICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJGZXRjaCIpOworICAgICAgICAgICAgICAg
IHJldHVybiBXSS5VSVN0cmluZygiRmV0Y2hlcyIsICJSZXNvdXJjZXMgbG9hZGVkIHZpYSAnZmV0
Y2gnIG1ldGhvZCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJG
ZXRjaCIpOwogICAgICAgICBjYXNlIFdJLlJlc291cmNlLlR5cGUuUGluZzoKICAgICAgICAgICAg
IGlmIChwbHVyYWwpCiAgICAgICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJQaW5ncyIp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3Mv
QXVkaXRUZXN0R3JvdXBDb250ZW50Vmlldy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL0F1ZGl0VGVzdEdyb3VwQ29udGVudFZpZXcuanMKaW5kZXggOGU0MGRk
NmQ3ZDcuLmJlMmVlYmE2MmNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9BdWRpdFRlc3RHcm91cENvbnRlbnRWaWV3LmpzCisrKyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0F1ZGl0VGVzdEdyb3VwQ29udGVu
dFZpZXcuanMKQEAgLTEyNSwxMSArMTI1LDExIEBAIFdJLkF1ZGl0VGVzdEdyb3VwQ29udGVudFZp
ZXcgPSBjbGFzcyBBdWRpdFRlc3RHcm91cENvbnRlbnRWaWV3IGV4dGVuZHMgV0kuQXVkaXRUCiAg
ICAgICAgICAgICAgICAgc2NvcGVCYXJJdGVtcy5wdXNoKHNjb3BlQmFySXRlbSk7CiAgICAgICAg
ICAgICB9OwogCi0gICAgICAgICAgICBhZGRTY29wZUJhckl0ZW0oV0kuQXVkaXRUZXN0Q2FzZVJl
c3VsdC5MZXZlbC5QYXNzLCBXSS5VSVN0cmluZygiJWQgUGFzc2VkIiwgIiVkIFBhc3NlZCAoc2lu
Z3VsYXIpIiksIFdJLlVJU3RyaW5nKCIlZCBQYXNzZWQiLCAiJWQgUGFzc2VkIChwbHVyYWwpIikp
OworICAgICAgICAgICAgYWRkU2NvcGVCYXJJdGVtKFdJLkF1ZGl0VGVzdENhc2VSZXN1bHQuTGV2
ZWwuUGFzcywgV0kuVUlTdHJpbmcoIiVkIFBhc3NlZCIsICIlZCBQYXNzZWQgKHNpbmd1bGFyKSIs
ICIiKSwgV0kuVUlTdHJpbmcoIiVkIFBhc3NlZCIsICIlZCBQYXNzZWQgKHBsdXJhbCkiLCAiIikp
OwogICAgICAgICAgICAgYWRkU2NvcGVCYXJJdGVtKFdJLkF1ZGl0VGVzdENhc2VSZXN1bHQuTGV2
ZWwuV2FybiwgV0kuVUlTdHJpbmcoIiVkIFdhcm5pbmciKSwgV0kuVUlTdHJpbmcoIiVkIFdhcm5p
bmdzIikpOwotICAgICAgICAgICAgYWRkU2NvcGVCYXJJdGVtKFdJLkF1ZGl0VGVzdENhc2VSZXN1
bHQuTGV2ZWwuRmFpbCwgV0kuVUlTdHJpbmcoIiVkIEZhaWxlZCIsICIlZCBGYWlsZWQgKHNpbmd1
bGFyKSIpLCBXSS5VSVN0cmluZygiJWQgRmFpbGVkIiwgIiVkIEZhaWxlZCAocGx1cmFsKSIpKTsK
KyAgICAgICAgICAgIGFkZFNjb3BlQmFySXRlbShXSS5BdWRpdFRlc3RDYXNlUmVzdWx0LkxldmVs
LkZhaWwsIFdJLlVJU3RyaW5nKCIlZCBGYWlsZWQiLCAiJWQgRmFpbGVkIChzaW5ndWxhcikiLCAi
IiksIFdJLlVJU3RyaW5nKCIlZCBGYWlsZWQiLCAiJWQgRmFpbGVkIChwbHVyYWwpIiwgIiIpKTsK
ICAgICAgICAgICAgIGFkZFNjb3BlQmFySXRlbShXSS5BdWRpdFRlc3RDYXNlUmVzdWx0LkxldmVs
LkVycm9yLCBXSS5VSVN0cmluZygiJWQgRXJyb3IiKSwgV0kuVUlTdHJpbmcoIiVkIEVycm9ycyIp
KTsKLSAgICAgICAgICAgIGFkZFNjb3BlQmFySXRlbShXSS5BdWRpdFRlc3RDYXNlUmVzdWx0Lkxl
dmVsLlVuc3VwcG9ydGVkLCBXSS5VSVN0cmluZygiJWQgVW5zdXBwb3J0ZWQiLCAiJWQgVW5zdXBw
b3J0ZWQgKHNpbmd1bGFyKSIpLCBXSS5VSVN0cmluZygiJWQgVW5zdXBwb3J0ZWQiLCAiJWQgVW5z
dXBwb3J0ZWQgKHBsdXJhbCkiKSk7CisgICAgICAgICAgICBhZGRTY29wZUJhckl0ZW0oV0kuQXVk
aXRUZXN0Q2FzZVJlc3VsdC5MZXZlbC5VbnN1cHBvcnRlZCwgV0kuVUlTdHJpbmcoIiVkIFVuc3Vw
cG9ydGVkIiwgIiVkIFVuc3VwcG9ydGVkIChzaW5ndWxhcikiLCAiIiksIFdJLlVJU3RyaW5nKCIl
ZCBVbnN1cHBvcnRlZCIsICIlZCBVbnN1cHBvcnRlZCAocGx1cmFsKSIsICIiKSk7CiAKICAgICAg
ICAgICAgIHRoaXMuX2xldmVsU2NvcGVCYXIgPSBuZXcgV0kuU2NvcGVCYXIobnVsbCwgc2NvcGVC
YXJJdGVtcyk7CiAgICAgICAgICAgICB0aGlzLl9sZXZlbFNjb3BlQmFyLmFkZEV2ZW50TGlzdGVu
ZXIoV0kuU2NvcGVCYXIuRXZlbnQuU2VsZWN0aW9uQ2hhbmdlZCwgdGhpcy5faGFuZGxlTGV2ZWxT
Y29wZUJhclNlbGVjdGlvbkNoYW5nZWQsIHRoaXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ1BVVGltZWxpbmVWaWV3LmpzIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ1BVVGltZWxpbmVWaWV3LmpzCmlu
ZGV4IGEwZTM0MjE2NGFiLi4yYWJiNWZhZGI2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ1BVVGltZWxpbmVWaWV3LmpzCisrKyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NQVVRpbWVsaW5lVmlldy5qcwpA
QCAtNTcsOSArNTcsOSBAQCBXSS5DUFVUaW1lbGluZVZpZXcgPSBjbGFzcyBDUFVUaW1lbGluZVZp
ZXcgZXh0ZW5kcyBXSS5UaW1lbGluZVZpZXcKICAgICAgICAgY2FzZSBXSS5DUFVUaW1lbGluZVZp
ZXcuU2FtcGxlVHlwZS5TY3JpcHQ6CiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlNj
cmlwdCIpOwogICAgICAgICBjYXNlIFdJLkNQVVRpbWVsaW5lVmlldy5TYW1wbGVUeXBlLkxheW91
dDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTGF5b3V0Iik7CisgICAgICAgICAg
ICByZXR1cm4gV0kucmVwZWF0aW5nVUlTdHJpbmcoIkxheW91dCBAIFRpbWVsaW5lIHJlY29yZCIp
OwogICAgICAgICBjYXNlIFdJLkNQVVRpbWVsaW5lVmlldy5TYW1wbGVUeXBlLlBhaW50OgotICAg
ICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJQYWludCIpOworICAgICAgICAgICAgcmV0dXJu
IFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJQYWludCBAIFRpbWVsaW5lIHJlY29yZCIpOwogICAgICAg
ICBjYXNlIFdJLkNQVVRpbWVsaW5lVmlldy5TYW1wbGVUeXBlLlN0eWxlOgogICAgICAgICAgICAg
cmV0dXJuIFdJLlVJU3RyaW5nKCJTdHlsZSBSZXNvbHV0aW9uIik7CiAgICAgICAgIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NvbnRleHRN
ZW51VXRpbGl0aWVzLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvQ29udGV4dE1lbnVVdGlsaXRpZXMuanMKaW5kZXggZTFiMTI2ZjNlYjguLjZmYTE5ODczNTQ2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9D
b250ZXh0TWVudVV0aWxpdGllcy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGllcy5qcwpAQCAtMjE2LDEwICsyMTYsMTAg
QEAgV0kuYXBwZW5kQ29udGV4dE1lbnVJdGVtc0ZvckRPTU5vZGUgPSBmdW5jdGlvbihjb250ZXh0
TWVudSwgZG9tTm9kZSwgb3B0aW9ucyA9IHsKICAgICBjb250ZXh0TWVudS5hcHBlbmRTZXBhcmF0
b3IoKTsKIAogICAgIGlmICghb3B0aW9ucy5leGNsdWRlTG9nRWxlbWVudCAmJiAhZG9tTm9kZS5p
c0luVXNlckFnZW50U2hhZG93VHJlZSgpICYmICFkb21Ob2RlLmlzUHNldWRvRWxlbWVudCgpKSB7
Ci0gICAgICAgIGxldCBsYWJlbCA9IGlzRWxlbWVudCA/IFdJLlVJU3RyaW5nKCJMb2cgRWxlbWVu
dCIpIDogV0kuVUlTdHJpbmcoIkxvZyBOb2RlIik7CisgICAgICAgIGxldCBsYWJlbCA9IGlzRWxl
bWVudCA/IFdJLlVJU3RyaW5nKCJMb2cgRWxlbWVudCIsICJMb2cgRE9NIGVsZW1lbnQgdG8gQ29u
c29sZSIpIDogV0kuVUlTdHJpbmcoIkxvZyBOb2RlIiwgIkxvZyBET00gbm9kZSB0byBDb25zb2xl
Iik7CiAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0obGFiZWwsICgpID0+IHsKICAgICAg
ICAgICAgIFdJLlJlbW90ZU9iamVjdC5yZXNvbHZlTm9kZShkb21Ob2RlLCBXSS5SdW50aW1lTWFu
YWdlci5Db25zb2xlT2JqZWN0R3JvdXApLnRoZW4oKHJlbW90ZU9iamVjdCkgPT4gewotICAgICAg
ICAgICAgICAgIGxldCB0ZXh0ID0gaXNFbGVtZW50ID8gV0kuVUlTdHJpbmcoIlNlbGVjdGVkIEVs
ZW1lbnQiKSA6IFdJLlVJU3RyaW5nKCJTZWxlY3RlZCBOb2RlIik7CisgICAgICAgICAgICAgICAg
bGV0IHRleHQgPSBpc0VsZW1lbnQgPyBXSS5VSVN0cmluZygiU2VsZWN0ZWQgRWxlbWVudCIsICJT
ZWxlY3RlZCBET00gZWxlbWVudCIpIDogV0kuVUlTdHJpbmcoIlNlbGVjdGVkIE5vZGUiLCAiU2Vs
ZWN0ZWQgRE9NIG5vZGUiKTsKICAgICAgICAgICAgICAgICBjb25zdCBhZGRTcGVjaWFsVXNlckxv
Z0NsYXNzID0gdHJ1ZTsKICAgICAgICAgICAgICAgICBXSS5jb25zb2xlTG9nVmlld0NvbnRyb2xs
ZXIuYXBwZW5kSW1tZWRpYXRlRXhlY3V0aW9uV2l0aFJlc3VsdCh0ZXh0LCByZW1vdGVPYmplY3Qs
IGFkZFNwZWNpYWxVc2VyTG9nQ2xhc3MpOwogICAgICAgICAgICAgfSk7CkBAIC0yMjcsMTkgKzIy
NywxOSBAQCBXSS5hcHBlbmRDb250ZXh0TWVudUl0ZW1zRm9yRE9NTm9kZSA9IGZ1bmN0aW9uKGNv
bnRleHRNZW51LCBkb21Ob2RlLCBvcHRpb25zID0gewogICAgIH0KIAogICAgIGlmICghb3B0aW9u
cy5leGNsdWRlUmV2ZWFsRWxlbWVudCAmJiB3aW5kb3cuRE9NQWdlbnQgJiYgYXR0YWNoZWQpIHsK
LSAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiUmV2ZWFsIGluIERP
TSBUcmVlIiksICgpID0+IHsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5yZXBl
YXRpbmdVSVN0cmluZygiUmV2ZWFsIGluIERPTSBUcmVlIiksICgpID0+IHsKICAgICAgICAgICAg
IFdJLmRvbU1hbmFnZXIuaW5zcGVjdEVsZW1lbnQoZG9tTm9kZS5pZCk7CiAgICAgICAgIH0pOwog
ICAgIH0KIAogICAgIGlmIChXSS5zZXR0aW5ncy5leHBlcmltZW50YWxFbmFibGVMYXllcnNUYWIu
dmFsdWUgJiYgd2luZG93LkxheWVyVHJlZUFnZW50ICYmIGF0dGFjaGVkKSB7Ci0gICAgICAgIGNv
bnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlJldmVhbCBpbiBMYXllcnMgVGFiIiks
ICgpID0+IHsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiUmV2
ZWFsIGluIExheWVycyBUYWIiLCAiT3BlbiBMYXllcnMgdGFiIGFuZCBzZWxlY3QgdGhlIGxheWVy
IGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBub2RlIiksICgpID0+IHsKICAgICAgICAgICAgIFdJLnNo
b3dMYXllcnNUYWIoe25vZGVUb1NlbGVjdDogZG9tTm9kZX0pOwogICAgICAgICB9KTsKICAgICB9
CiAKICAgICBpZiAod2luZG93LlBhZ2VBZ2VudCAmJiBhdHRhY2hlZCkgewotICAgICAgICBjb250
ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJDYXB0dXJlIFNjcmVlbnNob3QiKSwgKCkg
PT4geworICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJDYXB0dXJl
IFNjcmVlbnNob3QiLCAiQ2FwdHVyZSBTY3JlZW5zaG90IG9mIHRoZSBzZWxlY3RlZCBET00gbm9k
ZSIpLCAoKSA9PiB7CiAgICAgICAgICAgICBQYWdlQWdlbnQuc25hcHNob3ROb2RlKGRvbU5vZGUu
aWQsIChlcnJvciwgZGF0YVVSTCkgPT4gewogICAgICAgICAgICAgICAgIGlmIChlcnJvcikgewog
ICAgICAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXQgPSBXSS5tYWluVGFyZ2V0OwpAQCAtMjYy
LDcgKzI2Miw3IEBAIFdJLmFwcGVuZENvbnRleHRNZW51SXRlbXNGb3JET01Ob2RlID0gZnVuY3Rp
b24oY29udGV4dE1lbnUsIGRvbU5vZGUsIG9wdGlvbnMgPSB7CiAgICAgfQogCiAgICAgaWYgKGlz
RWxlbWVudCAmJiBhdHRhY2hlZCkgewotICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJ
LlVJU3RyaW5nKCJTY3JvbGwgSW50byBWaWV3IiksICgpID0+IHsKKyAgICAgICAgY29udGV4dE1l
bnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiU2Nyb2xsIGludG8gVmlldyIsICJTY3JvbGwgc2Vs
ZWN0ZWQgRE9NIG5vZGUgaW50byB2aWV3IG9uIHRoZSBpbnNwZWN0ZWQgd2ViIHBhZ2UiKSwgKCkg
PT4gewogICAgICAgICAgICAgZG9tTm9kZS5zY3JvbGxJbnRvVmlldygpOwogICAgICAgICB9KTsK
ICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMKaW5kZXggNjY3
ZDU1N2VmYzYuLjk4ZmE4MjEyYTA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMKKysrIGIvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NQnJlYWtwb2ludFRyZWVF
bGVtZW50LmpzCkBAIC01MCwxMSArNTAsMTEgQEAgV0kuRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50
ID0gY2xhc3MgRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50IGV4dGVuZHMgV0kuR2VuZXJhbFQKICAg
ICB7CiAgICAgICAgIHN3aXRjaCAodHlwZSkgewogICAgICAgICBjYXNlIFdJLkRPTUJyZWFrcG9p
bnQuVHlwZS5TdWJ0cmVlTW9kaWZpZWQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmco
IlN1YnRyZWUgTW9kaWZpZWQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiU3Vi
dHJlZSBNb2RpZmllZCIsICJBIHN1Ym1lbnUgb2YgJ0JyZWFrIE9uJyIpOwogICAgICAgICBjYXNl
IFdJLkRPTUJyZWFrcG9pbnQuVHlwZS5BdHRyaWJ1dGVNb2RpZmllZDoKLSAgICAgICAgICAgIHJl
dHVybiBXSS5VSVN0cmluZygiQXR0cmlidXRlIE1vZGlmaWVkIik7CisgICAgICAgICAgICByZXR1
cm4gV0kuVUlTdHJpbmcoIkF0dHJpYnV0ZSBNb2RpZmllZCIsICJBIHN1Ym1lbnUgb2YgJ0JyZWFr
IE9uJyIpOwogICAgICAgICBjYXNlIFdJLkRPTUJyZWFrcG9pbnQuVHlwZS5Ob2RlUmVtb3ZlZDoK
LSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTm9kZSBSZW1vdmVkIik7CisgICAgICAg
ICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIk5vZGUgUmVtb3ZlZCIsICJBIHN1Ym1lbnUgb2YgJ0Jy
ZWFrIE9uJyIpOwogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgY29uc29sZS5lcnJvcigi
VW5leHBlY3RlZCBET00gYnJlYWtwb2ludCB0eXBlOiAiICsgdHlwZSk7CiAgICAgICAgICAgICBy
ZXR1cm4gbnVsbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL0RPTU5vZGVUcmVlRWxlbWVudC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL0RPTU5vZGVUcmVlRWxlbWVudC5qcwppbmRleCAxZjVkMTcxODNl
NC4uMDEwZDQ3MjQ4NGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL0RPTU5vZGVUcmVlRWxlbWVudC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJlZUVsZW1lbnQuanMKQEAgLTYxLDcg
KzYxLDcgQEAgV0kuRE9NTm9kZVRyZWVFbGVtZW50ID0gY2xhc3MgRE9NTm9kZVRyZWVFbGVtZW50
IGV4dGVuZHMgV0kuR2VuZXJhbFRyZWVFbGVtZW50CiAKICAgICAgICAgY29udGV4dE1lbnUuYXBw
ZW5kU2VwYXJhdG9yKCk7CiAKLSAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0
cmluZygiUmV2ZWFsIGluIERPTSBUcmVlIiksICgpID0+IHsKKyAgICAgICAgY29udGV4dE1lbnUu
YXBwZW5kSXRlbShXSS5yZXBlYXRpbmdVSVN0cmluZygiUmV2ZWFsIGluIERPTSBUcmVlIiksICgp
ID0+IHsKICAgICAgICAgICAgIFdJLmRvbU1hbmFnZXIuaW5zcGVjdEVsZW1lbnQodGhpcy5yZXBy
ZXNlbnRlZE9iamVjdC5pZCk7CiAgICAgICAgIH0pOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVFbGVtZW50LmpzIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZUVsZW1lbnQu
anMKaW5kZXggNzI0Y2MzZWM5ZGIuLjM0MjZkYjZmY2ZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5qcworKysgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5q
cwpAQCAtNzczLDE0ICs3NzMsMTQgQEAgV0kuRE9NVHJlZUVsZW1lbnQgPSBjbGFzcyBET01UcmVl
RWxlbWVudCBleHRlbmRzIFdJLlRyZWVFbGVtZW50CiAgICAgICAgICAgICBub2RlLnJlbW92ZUF0
dHJpYnV0ZShhdHRyaWJ1dGVOYW1lKTsKICAgICAgICAgfSwgIWF0dHJpYnV0ZSB8fCAhaXNOb25T
aGFkb3dFZGl0YWJsZSk7CiAKLSAgICAgICAgc3ViTWVudXMuZWRpdC5hcHBlbmRJdGVtKFdJLlVJ
U3RyaW5nKCJUYWciKSwgKCkgPT4geworICAgICAgICBzdWJNZW51cy5lZGl0LmFwcGVuZEl0ZW0o
V0kuVUlTdHJpbmcoIlRhZyIsICJBIHN1Ym1lbnUgb2YgJ0VkaXQnIiksICgpID0+IHsKICAgICAg
ICAgICAgIHRoaXMuX3N0YXJ0RWRpdGluZ1RhZ05hbWUoKTsKICAgICAgICAgfSwgIWlzTm9uU2hh
ZG93RWRpdGFibGUpOwogCiAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZFNlcGFyYXRvcigpOwog
CiAgICAgICAgIGlmIChXSS5jc3NNYW5hZ2VyLmNhbkZvcmNlUHNldWRvQ2xhc3NlcygpICYmIGF0
dGFjaGVkKSB7Ci0gICAgICAgICAgICBsZXQgcHNldWRvU3ViTWVudSA9IGNvbnRleHRNZW51LmFw
cGVuZFN1Yk1lbnVJdGVtKFdJLlVJU3RyaW5nKCJGb3JjZWQgUHNldWRvLUNsYXNzZXMiKSk7Cisg
ICAgICAgICAgICBsZXQgcHNldWRvU3ViTWVudSA9IGNvbnRleHRNZW51LmFwcGVuZFN1Yk1lbnVJ
dGVtKFdJLlVJU3RyaW5nKCJGb3JjZWQgUHNldWRvLUNsYXNzZXMiLCAiQSBjb250ZXh0IG1lbnUg
dG8gZm9yY2UgKG92ZXJyaWRlKSBlbGVtZW50J3MgcHNldWRvLWNsYXNzZXMiKSk7CiAKICAgICAg
ICAgICAgIGxldCBlbmFibGVkUHNldWRvQ2xhc3NlcyA9IG5vZGUuZW5hYmxlZFBzZXVkb0NsYXNz
ZXM7CiAgICAgICAgICAgICBXSS5DU1NNYW5hZ2VyLkZvcmNlYWJsZVBzZXVkb0NsYXNzZXMuZm9y
RWFjaCgocHNldWRvQ2xhc3MpID0+IHsKQEAgLTgxMSw5ICs4MTEsOSBAQCBXSS5ET01UcmVlRWxl
bWVudCA9IGNsYXNzIERPTVRyZWVFbGVtZW50IGV4dGVuZHMgV0kuVHJlZUVsZW1lbnQKIAogICAg
ICAgICBsZXQgaXNFZGl0YWJsZU5vZGUgPSBub2RlLm5vZGVUeXBlKCkgPT09IE5vZGUuRUxFTUVO
VF9OT0RFICYmIHRoaXMuZWRpdGFibGU7CiAgICAgICAgIGxldCBmb3JiaWRkZW5DbG9zaW5nVGFn
ID0gV0kuRE9NVHJlZUVsZW1lbnQuRm9yYmlkZGVuQ2xvc2luZ1RhZ0VsZW1lbnRzLmhhcyhub2Rl
Lm5vZGVOYW1lSW5Db3JyZWN0Q2FzZSgpKTsKLSAgICAgICAgc3ViTWVudXMuYWRkLmFwcGVuZEl0
ZW0oV0kuVUlTdHJpbmcoIkNoaWxkIiksIHRoaXMuX2FkZEhUTUwuYmluZCh0aGlzKSwgZm9yYmlk
ZGVuQ2xvc2luZ1RhZyB8fCAhaXNFZGl0YWJsZU5vZGUpOwotICAgICAgICBzdWJNZW51cy5hZGQu
YXBwZW5kSXRlbShXSS5VSVN0cmluZygiUHJldmlvdXMgU2libGluZyIpLCB0aGlzLl9hZGRQcmV2
aW91c1NpYmxpbmcuYmluZCh0aGlzKSwgIWlzRWRpdGFibGVOb2RlKTsKLSAgICAgICAgc3ViTWVu
dXMuYWRkLmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIk5leHQgU2libGluZyIpLCB0aGlzLl9hZGRO
ZXh0U2libGluZy5iaW5kKHRoaXMpLCAhaXNFZGl0YWJsZU5vZGUpOworICAgICAgICBzdWJNZW51
cy5hZGQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiQ2hpbGQiLCAiQSBzdWJtZW51IG9mICdBZGQn
IiksIHRoaXMuX2FkZEhUTUwuYmluZCh0aGlzKSwgZm9yYmlkZGVuQ2xvc2luZ1RhZyB8fCAhaXNF
ZGl0YWJsZU5vZGUpOworICAgICAgICBzdWJNZW51cy5hZGQuYXBwZW5kSXRlbShXSS5VSVN0cmlu
ZygiUHJldmlvdXMgU2libGluZyIsICJBIHN1Ym1lbnUgb2YgJ0FkZCciKSwgdGhpcy5fYWRkUHJl
dmlvdXNTaWJsaW5nLmJpbmQodGhpcyksICFpc0VkaXRhYmxlTm9kZSk7CisgICAgICAgIHN1Yk1l
bnVzLmFkZC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJOZXh0IFNpYmxpbmciLCAiQSBzdWJtZW51
IG9mICdBZGQnIiksIHRoaXMuX2FkZE5leHRTaWJsaW5nLmJpbmQodGhpcyksICFpc0VkaXRhYmxl
Tm9kZSk7CiAKICAgICAgICAgc3ViTWVudXMuZWRpdC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJI
VE1MIiksIHRoaXMuX2VkaXRBc0hUTUwuYmluZCh0aGlzKSwgIXRoaXMuZWRpdGFibGUpOwogICAg
ICAgICBzdWJNZW51cy5jb3B5LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIkhUTUwiKSwgdGhpcy5f
Y29weUhUTUwuYmluZCh0aGlzKSwgbm9kZS5pc1BzZXVkb0VsZW1lbnQoKSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EZWJ1Z2dlclNpZGVi
YXJQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0Rl
YnVnZ2VyU2lkZWJhclBhbmVsLmpzCmluZGV4IDhjMWM1NmI5ZDI2Li5kODM1YTY2MDQ3NiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGVidWdn
ZXJTaWRlYmFyUGFuZWwuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvRGVidWdnZXJTaWRlYmFyUGFuZWwuanMKQEAgLTQ3NiwxMyArNDc2LDEzIEBAIFdJ
LkRlYnVnZ2VyU2lkZWJhclBhbmVsID0gY2xhc3MgRGVidWdnZXJTaWRlYmFyUGFuZWwgZXh0ZW5k
cyBXSS5OYXZpZ2F0aW9uU2lkZWJhCiAKICAgICAgICAgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRl
YnVnZ2VyTWFuYWdlci5hbGxFeGNlcHRpb25zQnJlYWtwb2ludCkgewogICAgICAgICAgICAgb3B0
aW9ucy5jbGFzc05hbWUgPSBXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbC5FeGNlcHRpb25JY29uU3R5
bGVDbGFzc05hbWU7Ci0gICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmcoIkFs
bCBFeGNlcHRpb25zIik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kucmVwZWF0aW5n
VUlTdHJpbmcoIkFsbCBFeGNlcHRpb25zIik7CiAgICAgICAgIH0gZWxzZSBpZiAoYnJlYWtwb2lu
dCA9PT0gV0kuZGVidWdnZXJNYW5hZ2VyLnVuY2F1Z2h0RXhjZXB0aW9uc0JyZWFrcG9pbnQpIHsK
ICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NOYW1lID0gV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwu
RXhjZXB0aW9uSWNvblN0eWxlQ2xhc3NOYW1lOwotICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9
IFdJLlVJU3RyaW5nKCJVbmNhdWdodCBFeGNlcHRpb25zIik7CisgICAgICAgICAgICBvcHRpb25z
LnRpdGxlID0gV0kucmVwZWF0aW5nVUlTdHJpbmcoIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiKTsKICAg
ICAgICAgfSBlbHNlIGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIuYXNzZXJ0
aW9uRmFpbHVyZXNCcmVha3BvaW50KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9
IFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsLkFzc2VydGlvbkljb25TdHlsZUNsYXNzTmFtZTsKLSAg
ICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiQXNzZXJ0aW9uIEZhaWx1cmVz
Iik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kucmVwZWF0aW5nVUlTdHJpbmcoIkFz
c2VydGlvbiBGYWlsdXJlcyIpOwogICAgICAgICB9IGVsc2UgaWYgKGJyZWFrcG9pbnQgaW5zdGFu
Y2VvZiBXSS5ET01CcmVha3BvaW50KSB7CiAgICAgICAgICAgICBpZiAoIWJyZWFrcG9pbnQuZG9t
Tm9kZUlkZW50aWZpZXIpCiAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7CkBAIC01MTYsNyAr
NTE2LDcgQEAgV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwgPSBjbGFzcyBEZWJ1Z2dlclNpZGViYXJQ
YW5lbCBleHRlbmRzIFdJLk5hdmlnYXRpb25TaWRlYmEKIAogICAgICAgICAgICAgaWYgKGJyZWFr
cG9pbnQgPT09IFdJLmRvbURlYnVnZ2VyTWFuYWdlci5hbGxSZXF1ZXN0c0JyZWFrcG9pbnQpIHsK
ICAgICAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9IFdJLkRlYnVnZ2VyU2lkZWJhclBh
bmVsLkFzc2VydGlvbkljb25TdHlsZUNsYXNzTmFtZTsKLSAgICAgICAgICAgICAgICBvcHRpb25z
LnRpdGxlID0gV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIpOworICAgICAgICAgICAgICAgIG9w
dGlvbnMudGl0bGUgPSBXSS5yZXBlYXRpbmdVSVN0cmluZygiQWxsIFJlcXVlc3RzIik7CiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBsZXQgc291cmNlQ29kZSA9
IGJyZWFrcG9pbnQuc291cmNlQ29kZUxvY2F0aW9uICYmIGJyZWFrcG9pbnQuc291cmNlQ29kZUxv
Y2F0aW9uLmRpc3BsYXlTb3VyY2VDb2RlOwpAQCAtMTQ1OCw3ICsxNDU4LDcgQEAgV0kuRGVidWdn
ZXJTaWRlYmFyUGFuZWwgPSBjbGFzcyBEZWJ1Z2dlclNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5h
dmlnYXRpb25TaWRlYmEKICAgICAgICAgaWYgKEluc3BlY3RvckJhY2tlbmQuZG9tYWlucy5EZWJ1
Z2dlci5zZXRQYXVzZU9uQXNzZXJ0aW9ucykgewogICAgICAgICAgICAgbGV0IGFzc2VydGlvbkZh
aWx1cmVzQnJlYWtwb2ludFNob3duID0gV0kuc2V0dGluZ3Muc2hvd0Fzc2VydGlvbkZhaWx1cmVz
QnJlYWtwb2ludC52YWx1ZTsKIAotICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2ti
b3hJdGVtKFdJLlVJU3RyaW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiKSwgKCkgPT4geworICAgICAg
ICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2tib3hJdGVtKFdJLnJlcGVhdGluZ1VJU3RyaW5n
KCJBc3NlcnRpb24gRmFpbHVyZXMiKSwgKCkgPT4gewogICAgICAgICAgICAgICAgIGlmIChhc3Nl
cnRpb25GYWlsdXJlc0JyZWFrcG9pbnRTaG93bikKICAgICAgICAgICAgICAgICAgICAgV0kuZGVi
dWdnZXJNYW5hZ2VyLnJlbW92ZUJyZWFrcG9pbnQoV0kuZGVidWdnZXJNYW5hZ2VyLmFzc2VydGlv
bkZhaWx1cmVzQnJlYWtwb2ludCk7CiAgICAgICAgICAgICAgICAgZWxzZSB7CkBAIC0xNDgwLDcg
KzE0ODAsNyBAQCBXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbCA9IGNsYXNzIERlYnVnZ2VyU2lkZWJh
clBhbmVsIGV4dGVuZHMgV0kuTmF2aWdhdGlvblNpZGViYQogCiAgICAgICAgICAgICBsZXQgYWxs
UmVxdWVzdHNCcmVha3BvaW50U2hvd24gPSBXSS5zZXR0aW5ncy5zaG93QWxsUmVxdWVzdHNCcmVh
a3BvaW50LnZhbHVlOwogCi0gICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0
ZW0oV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIpLCAoKSA9PiB7CisgICAgICAgICAgICBjb250
ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0ZW0oV0kucmVwZWF0aW5nVUlTdHJpbmcoIkFsbCBSZXF1
ZXN0cyIpLCAoKSA9PiB7CiAgICAgICAgICAgICAgICAgaWYgKGFsbFJlcXVlc3RzQnJlYWtwb2lu
dFNob3duKQogICAgICAgICAgICAgICAgICAgICBXSS5kb21EZWJ1Z2dlck1hbmFnZXIucmVtb3Zl
VVJMQnJlYWtwb2ludChXSS5kb21EZWJ1Z2dlck1hbmFnZXIuYWxsUmVxdWVzdHNCcmVha3BvaW50
KTsKICAgICAgICAgICAgICAgICBlbHNlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0xheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwuanMg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRh
aWxzU2lkZWJhclBhbmVsLmpzCmluZGV4IDJiNjUxM2E3ZmQyLi5jMWFkNmZhYTRjZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJUcmVl
RGV0YWlsc1NpZGViYXJQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsLmpzCkBAIC0xMzYsNyAr
MTM2LDcgQEAgV0kuTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbCA9IGNsYXNzIExheWVyVHJl
ZURldGFpbHNTaWRlYmFyUGFuZWwgZXh0ZW5kcyBXSS4KICAgICAgICAgY29sdW1ucy5uYW1lLnRp
dGxlID0gV0kuVUlTdHJpbmcoIk5vZGUiKTsKICAgICAgICAgY29sdW1ucy5uYW1lLnNvcnRhYmxl
ID0gZmFsc2U7CiAKLSAgICAgICAgY29sdW1ucy5wYWludENvdW50LnRpdGxlID0gV0kuVUlTdHJp
bmcoIlBhaW50cyIpOworICAgICAgICBjb2x1bW5zLnBhaW50Q291bnQudGl0bGUgPSBXSS5VSVN0
cmluZygiUGFpbnRzIiwgIlBhaW50cyBAIENvbHVtbiB0aXRsZSIsICJBIGNvdW50IG9mIGhvdyBt
YW55IHRpbWVzIGFuIGVsZW1lbnQgd2FzIHBhaW50ZWQgKHJlbmRlcmVkKSIpOwogICAgICAgICBj
b2x1bW5zLnBhaW50Q291bnQuc29ydGFibGUgPSB0cnVlOwogICAgICAgICBjb2x1bW5zLnBhaW50
Q291bnQuYWxpZ25lZCA9ICJyaWdodCI7CiAgICAgICAgIGNvbHVtbnMucGFpbnRDb3VudC53aWR0
aCA9ICI3MHB4IjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL05ldHdvcmtUYWJsZUNvbnRlbnRWaWV3LmpzIGIvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTmV0d29ya1RhYmxlQ29udGVudFZpZXcuanMKaW5kZXgg
ODUyM2YwZTIxYTcuLmQ5NjY3NzAxZWQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9OZXR3b3JrVGFibGVDb250ZW50Vmlldy5qcworKysgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9OZXR3b3JrVGFibGVDb250
ZW50Vmlldy5qcwpAQCAtMjEwLDcgKzIxMCw3IEBAIFdJLk5ldHdvcmtUYWJsZUNvbnRlbnRWaWV3
ID0gY2xhc3MgTmV0d29ya1RhYmxlQ29udGVudFZpZXcgZXh0ZW5kcyBXSS5Db250ZW50VmllCiAg
ICAgICAgIGNhc2UgV0kuUmVzb3VyY2UuVHlwZS5YSFI6CiAgICAgICAgICAgICByZXR1cm4gIlhI
UiI7CiAgICAgICAgIGNhc2UgV0kuUmVzb3VyY2UuVHlwZS5GZXRjaDoKLSAgICAgICAgICAgIHJl
dHVybiBXSS5VSVN0cmluZygiRmV0Y2giKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRp
bmdVSVN0cmluZygiRmV0Y2giKTsKICAgICAgICAgY2FzZSBXSS5SZXNvdXJjZS5UeXBlLlBpbmc6
CiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlBpbmciKTsKICAgICAgICAgY2FzZSBX
SS5SZXNvdXJjZS5UeXBlLkJlYWNvbjoKQEAgLTExNzQsNyArMTE3NCw3IEBAIFdJLk5ldHdvcmtU
YWJsZUNvbnRlbnRWaWV3ID0gY2xhc3MgTmV0d29ya1RhYmxlQ29udGVudFZpZXcgZXh0ZW5kcyBX
SS5Db250ZW50VmllCiAgICAgICAgICAgICBhbGlnbjogInJpZ2h0IiwKICAgICAgICAgfSk7CiAK
LSAgICAgICAgdGhpcy5fdHJhbnNmZXJTaXplQ29sdW1uID0gbmV3IFdJLlRhYmxlQ29sdW1uKCJ0
cmFuc2ZlclNpemUiLCBXSS5VSVN0cmluZygiVHJhbnNmZXIgU2l6ZSIpLCB7CisgICAgICAgIHRo
aXMuX3RyYW5zZmVyU2l6ZUNvbHVtbiA9IG5ldyBXSS5UYWJsZUNvbHVtbigidHJhbnNmZXJTaXpl
IiwgV0kuVUlTdHJpbmcoIlRyYW5zZmVyIFNpemUiLCAiQW1vdW50IG9mIGRhdGEgc2VudCBvdmVy
IHRoZSBuZXR3b3JrIiksIHsKICAgICAgICAgICAgIG1pbldpZHRoOiAxMDAsCiAgICAgICAgICAg
ICBtYXhXaWR0aDogMTUwLAogICAgICAgICAgICAgaW5pdGlhbFdpZHRoOiAxMDAsCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VzTmF2
aWdhdGlvblNpZGViYXJQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL1NvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmpzCmluZGV4IDU2OGEzY2Q1
ZGE5Li43MGE2ZTg3MTg3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvVmlld3MvU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMKKysrIGIvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlc05hdmlnYXRpb25T
aWRlYmFyUGFuZWwuanMKQEAgLTg4NSwxMyArODg1LDEzIEBAIFdJLlNvdXJjZXNOYXZpZ2F0aW9u
U2lkZWJhclBhbmVsID0gY2xhc3MgU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwgZXh0ZW5k
cyBXCiAKICAgICAgICAgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRlYnVnZ2VyTWFuYWdlci5hbGxF
eGNlcHRpb25zQnJlYWtwb2ludCkgewogICAgICAgICAgICAgb3B0aW9ucy5jbGFzc05hbWUgPSAi
YnJlYWtwb2ludC1leGNlcHRpb24taWNvbiI7Ci0gICAgICAgICAgICBvcHRpb25zLnRpdGxlID0g
V0kuVUlTdHJpbmcoIkFsbCBFeGNlcHRpb25zIik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxl
ID0gV0kucmVwZWF0aW5nVUlTdHJpbmcoIkFsbCBFeGNlcHRpb25zIik7CiAgICAgICAgIH0gZWxz
ZSBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZGVidWdnZXJNYW5hZ2VyLnVuY2F1Z2h0RXhjZXB0aW9u
c0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NOYW1lID0gImJyZWFrcG9p
bnQtZXhjZXB0aW9uLWljb24iOwotICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3Ry
aW5nKCJVbmNhdWdodCBFeGNlcHRpb25zIik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0g
V0kucmVwZWF0aW5nVUlTdHJpbmcoIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiKTsKICAgICAgICAgfSBl
bHNlIGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIuYXNzZXJ0aW9uRmFpbHVy
ZXNCcmVha3BvaW50KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9ICJicmVha3Bv
aW50LWFzc2VydGlvbi1pY29uIjsKLSAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0
cmluZygiQXNzZXJ0aW9uIEZhaWx1cmVzIik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0g
V0kucmVwZWF0aW5nVUlTdHJpbmcoIkFzc2VydGlvbiBGYWlsdXJlcyIpOwogICAgICAgICB9IGVs
c2UgaWYgKGJyZWFrcG9pbnQgaW5zdGFuY2VvZiBXSS5ET01CcmVha3BvaW50KSB7CiAgICAgICAg
ICAgICBpZiAoIWJyZWFrcG9pbnQuZG9tTm9kZUlkZW50aWZpZXIpCiAgICAgICAgICAgICAgICAg
cmV0dXJuIG51bGw7CkBAIC05MjUsNyArOTI1LDcgQEAgV0kuU291cmNlc05hdmlnYXRpb25TaWRl
YmFyUGFuZWwgPSBjbGFzcyBTb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCBleHRlbmRzIFcK
IAogICAgICAgICAgICAgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRvbURlYnVnZ2VyTWFuYWdlci5h
bGxSZXF1ZXN0c0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFt
ZSA9ICJicmVha3BvaW50LWFzc2VydGlvbi1pY29uIjsKLSAgICAgICAgICAgICAgICBvcHRpb25z
LnRpdGxlID0gV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIpOworICAgICAgICAgICAgICAgIG9w
dGlvbnMudGl0bGUgPSBXSS5yZXBlYXRpbmdVSVN0cmluZygiQWxsIFJlcXVlc3RzIik7CiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBsZXQgc291cmNlQ29kZSA9
IGJyZWFrcG9pbnQuc291cmNlQ29kZUxvY2F0aW9uICYmIGJyZWFrcG9pbnQuc291cmNlQ29kZUxv
Y2F0aW9uLmRpc3BsYXlTb3VyY2VDb2RlOwpAQCAtMTUwNCw3ICsxNTA0LDcgQEAgV0kuU291cmNl
c05hdmlnYXRpb25TaWRlYmFyUGFuZWwgPSBjbGFzcyBTb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQ
YW5lbCBleHRlbmRzIFcKICAgICAgICAgaWYgKEluc3BlY3RvckJhY2tlbmQuZG9tYWlucy5EZWJ1
Z2dlci5zZXRQYXVzZU9uQXNzZXJ0aW9ucykgewogICAgICAgICAgICAgbGV0IGFzc2VydGlvbkZh
aWx1cmVzQnJlYWtwb2ludFNob3duID0gV0kuc2V0dGluZ3Muc2hvd0Fzc2VydGlvbkZhaWx1cmVz
QnJlYWtwb2ludC52YWx1ZTsKIAotICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2ti
b3hJdGVtKFdJLlVJU3RyaW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiKSwgKCkgPT4geworICAgICAg
ICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2tib3hJdGVtKFdJLnJlcGVhdGluZ1VJU3RyaW5n
KCJBc3NlcnRpb24gRmFpbHVyZXMiKSwgKCkgPT4gewogICAgICAgICAgICAgICAgIGlmIChhc3Nl
cnRpb25GYWlsdXJlc0JyZWFrcG9pbnRTaG93bikKICAgICAgICAgICAgICAgICAgICAgV0kuZGVi
dWdnZXJNYW5hZ2VyLnJlbW92ZUJyZWFrcG9pbnQoV0kuZGVidWdnZXJNYW5hZ2VyLmFzc2VydGlv
bkZhaWx1cmVzQnJlYWtwb2ludCk7CiAgICAgICAgICAgICAgICAgZWxzZSB7CkBAIC0xNTI2LDcg
KzE1MjYsNyBAQCBXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNzIFNvdXJj
ZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsIGV4dGVuZHMgVwogCiAgICAgICAgICAgICBsZXQgYWxs
UmVxdWVzdHNCcmVha3BvaW50U2hvd24gPSBXSS5zZXR0aW5ncy5zaG93QWxsUmVxdWVzdHNCcmVh
a3BvaW50LnZhbHVlOwogCi0gICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0
ZW0oV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIpLCAoKSA9PiB7CisgICAgICAgICAgICBjb250
ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0ZW0oV0kucmVwZWF0aW5nVUlTdHJpbmcoIkFsbCBSZXF1
ZXN0cyIpLCAoKSA9PiB7CiAgICAgICAgICAgICAgICAgaWYgKGFsbFJlcXVlc3RzQnJlYWtwb2lu
dFNob3duKQogICAgICAgICAgICAgICAgICAgICBXSS5kb21EZWJ1Z2dlck1hbmFnZXIucmVtb3Zl
VVJMQnJlYWtwb2ludChXSS5kb21EZWJ1Z2dlck1hbmFnZXIuYWxsUmVxdWVzdHNCcmVha3BvaW50
KTsKICAgICAgICAgICAgICAgICBlbHNlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNl
Y3Rpb24uanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJl
YWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9uLmpzCmluZGV4IDY3ZjZhNzcyZDA0Li43
NDJhYWM1MzM0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlvbi5qcworKysgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldENTU1N0
eWxlRGVjbGFyYXRpb25TZWN0aW9uLmpzCkBAIC0zMTUsNyArMzE1LDcgQEAgV0kuU3ByZWFkc2hl
ZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlvbiA9IGNsYXNzIFNwcmVhZHNoZWV0Q1NTU3R5bGVE
ZWNsYXJhdGlvblMKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgV0kuQ1NTU3R5
bGVEZWNsYXJhdGlvbi5UeXBlLklubGluZToKLSAgICAgICAgICAgIHRoaXMuX3NlbGVjdG9yRWxl
bWVudC50ZXh0Q29udGVudCA9IFdJLlVJU3RyaW5nKCJTdHlsZSBBdHRyaWJ1dGUiKTsKKyAgICAg
ICAgICAgIHRoaXMuX3NlbGVjdG9yRWxlbWVudC50ZXh0Q29udGVudCA9IFdJLlVJU3RyaW5nKCJT
dHlsZSBBdHRyaWJ1dGUiLCAiQ1NTIHByb3BlcnRpZXMgZGVmaW5lZCB2aWEgSFRNTCBzdHlsZSBh
dHRyaWJ1dGUiKTsKICAgICAgICAgICAgIHRoaXMuX3NlbGVjdG9yRWxlbWVudC5jbGFzc0xpc3Qu
YWRkKCJzdHlsZS1hdHRyaWJ1dGUiKTsKICAgICAgICAgICAgIGJyZWFrOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldFJ1
bGVzU3R5bGVEZXRhaWxzUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9TcHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwuanMKaW5kZXggZTFk
NGViZWQzMTIuLjg3Yjg5MGJhNTViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwuanMK
KysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hl
ZXRSdWxlc1N0eWxlRGV0YWlsc1BhbmVsLmpzCkBAIC0yNTYsNyArMjU2LDcgQEAgV0kuU3ByZWFk
c2hlZXRSdWxlc1N0eWxlRGV0YWlsc1BhbmVsID0gY2xhc3MgU3ByZWFkc2hlZXRSdWxlc1N0eWxl
RGV0YWlsc1BhbmVsIGUKIAogICAgICAgICBsZXQgYWRkU2VjdGlvbiA9IChzZWN0aW9uKSA9PiB7
CiAgICAgICAgICAgICBpZiAoc2VjdGlvbi5zdHlsZS5pbmhlcml0ZWQgJiYgKCFwcmV2aW91c1N0
eWxlIHx8IHByZXZpb3VzU3R5bGUubm9kZSAhPT0gc2VjdGlvbi5zdHlsZS5ub2RlKSkKLSAgICAg
ICAgICAgICAgICBhZGRIZWFkZXIoV0kuVUlTdHJpbmcoIkluaGVyaXRlZCBGcm9tIiksIHNlY3Rp
b24uc3R5bGUubm9kZSk7CisgICAgICAgICAgICAgICAgYWRkSGVhZGVyKFdJLlVJU3RyaW5nKCJJ
bmhlcml0ZWQgRnJvbSIsICJBIHNlY3Rpb24gb2YgQ1NTIHJ1bGVzIGluaGVyaXRlZCBmcm9tIGFu
b3RoZXIgQ1NTIHJ1bGUiKSwgc2VjdGlvbi5zdHlsZS5ub2RlKTsKIAogICAgICAgICAgICAgaWYg
KCFzZWN0aW9uLmlzRGVzY2VuZGFudE9mKHRoaXMpKSB7CiAgICAgICAgICAgICAgICAgbGV0IHJl
ZmVyZW5jZVZpZXcgPSB0aGlzLnN1YnZpZXdzW3RoaXMuX3NlY3Rpb25zLmxlbmd0aF07CmRpZmYg
LS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYmRmYWIxMWE0
NzkuLjU4MGE4ZWEyMWQ3IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTktMDQtMTEgIE5pa2l0YSBWYXNpbHlldiAg
PG52YXNpbHlldkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUHJvdmlkZSBV
SVN0cmluZyBkZXNjcmlwdGlvbnMgdG8gaW1wcm92ZSBsb2NhbGl6YXRpb25zCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUxMzIKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzQ4NDU3ODE3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFsbG93IFdJLlVJU3RyaW5nIHRvIHRha2U6CisgICAgICAgIC0gV0ku
VUlTdHJpbmcoc3RyaW5nLCBrZXksIGNvbW1lbnQpCisgICAgICAgIC0gV0kuVUlTdHJpbmcoc3Ry
aW5nLCBjb21tZW50KQorICAgICAgICAtIFdJLlVJU3RyaW5nKHN0cmluZykKKworICAgICAgICAq
IFNjcmlwdHMvZXh0cmFjdC1sb2NhbGl6YWJsZS1qcy1zdHJpbmdzOgorCiAyMDE5LTA0LTEwICBU
YWRldSBaYWdhbGxvICA8dHphZ2FsbG9AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0
IGZvciBpbmNyZW1lbnRhbCBieXRlY29kZSBjYWNoZSB1cGRhdGVzCmRpZmYgLS1naXQgYS9Ub29s
cy9TY3JpcHRzL2V4dHJhY3QtbG9jYWxpemFibGUtanMtc3RyaW5ncyBiL1Rvb2xzL1NjcmlwdHMv
ZXh0cmFjdC1sb2NhbGl6YWJsZS1qcy1zdHJpbmdzCmluZGV4IDM0YjVhYzc3OTNiLi42OGM3MGJk
ZWM5NyAxMDA3NTUKLS0tIGEvVG9vbHMvU2NyaXB0cy9leHRyYWN0LWxvY2FsaXphYmxlLWpzLXN0
cmluZ3MKKysrIGIvVG9vbHMvU2NyaXB0cy9leHRyYWN0LWxvY2FsaXphYmxlLWpzLXN0cmluZ3MK
QEAgLTc0LDcgKzc0LDE1IEBAIGZvciBteSAkZmlsZSAoc29ydCBAZmlsZXMpIHsKICAgICAgICAg
Y2hvbXA7CiAKICAgICAgICAgIyBIYW5kbGUgV2ViSW5zcGVjdG9yIHN0cmluZ3MuIFByaW50cyBh
IHdhcm5pbmcgaWYgYSBub24tc3RyaW5nIGxpdGVyYWwgaXMgcGFzc2VkIHRvIFdJLlVJU3RyaW5n
KCkuCi0gICAgICAgIEhhbmRsZVVJU3RyaW5nKCQxLCAkMiB8fCAkMSwgJDMgfHwgIiIsICRmaWxl
LCAkLikgd2hpbGUgcy9XSVwuVUlTdHJpbmdcKCIoW14iXSspIig/OixccyoiKFteIl0rKSIoPzos
XHMqIihbXiJdKykiKT8pP1wpLy87CisgICAgICAgICMgQWxsb3c6IFdJLlVJU3RyaW5nKHN0cmlu
ZywgY29tbWVudCkKKyAgICAgICAgIyAgICAgICAgV0kuVUlTdHJpbmcoc3RyaW5nLCBrZXksIGNv
bW1lbnQpCisgICAgICAgIEhhbmRsZVVJU3RyaW5nKAorICAgICAgICAgICAgJDEsCisgICAgICAg
ICAgICAoJDMgfHwgKGRlZmluZWQgJDMgYW5kIGxlbmd0aCAkMyA9PSAwKSkgPyAkMiA6ICQxLAor
ICAgICAgICAgICAgKCQzIHx8IChkZWZpbmVkICQzIGFuZCBsZW5ndGggJDMgPT0gMCkpID8gJDMg
OiAkMiB8fCAiIiwKKyAgICAgICAgICAgICRmaWxlLAorICAgICAgICAgICAgJC4KKyAgICAgICAg
KSB3aGlsZSBzL1dJXC5VSVN0cmluZ1woIihbXiJdKykiKD86LFxzKiIoW14iXSopIig/Oixccyoi
KFteIl0qKSIpPyk/XCkvLzsKICAgICAgICAgcHJpbnQgIiRmaWxlOiQuOldBUk5JTkc6ICQmXG4i
IHdoaWxlIHMvV0lcLlVJU3RyaW5nXCguKj9cKS8vOwogCiAgICAgICAgICMgSGFuZGxlIHN0cmlu
Z3MgZm9yIG90aGVyIHByb2plY3RzIHRoYXQgYWxzbyB1c2UgdGhpcyBzY3JpcHQuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>367267</attachid>
            <date>2019-04-11 17:21:32 -0700</date>
            <delta_ts>2019-04-25 00:32:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>43312</size>
            <attacher name="Nikita Vasilyev">nvasilyev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDUwMjZjNmM3NzVkLi4wOTA3OGM3OWI2MiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTAgQEAKKzIwMTktMDQtMTEgIE5pa2l0
YSBWYXNpbHlldiAgPG52YXNpbHlldkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogUHJvdmlkZSBVSVN0cmluZyBkZXNjcmlwdGlvbnMgdG8gaW1wcm92ZSBsb2NhbGl6YXRpb25z
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUxMzIK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ4NDU3ODE3PgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2Nh
bGl6ZWRTdHJpbmdzLmpzOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvQmFzZS9Mb2FkTG9jYWxp
emVkU3RyaW5ncy5qczoKKyAgICAgICAgKFdJLnJlcGVhdGluZ1VJU3RyaW5nKToKKyAgICAgICAg
KiBVc2VySW50ZXJmYWNlL01vZGVscy9MYXlvdXRUaW1lbGluZVJlY29yZC5qczoKKyAgICAgICAg
KFdJLkxheW91dFRpbWVsaW5lUmVjb3JkLmRpc3BsYXlOYW1lRm9yRXZlbnRUeXBlKToKKyAgICAg
ICAgKiBVc2VySW50ZXJmYWNlL01vZGVscy9SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpz
OgorICAgICAgICAoV0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5kaXNwbGF5TmFtZUZv
clRhc2tUeXBlKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL01vZGVscy9SZXNvdXJjZS5qczoK
KyAgICAgICAgKFdJLlJlc291cmNlLmRpc3BsYXlOYW1lRm9yVHlwZSk6CisgICAgICAgICogVXNl
ckludGVyZmFjZS9WaWV3cy9BdWRpdFRlc3RHcm91cENvbnRlbnRWaWV3LmpzOgorICAgICAgICAo
V0kuQXVkaXRUZXN0R3JvdXBDb250ZW50Vmlldy5wcm90b3R5cGUubGF5b3V0KToKKyAgICAgICAg
KiBVc2VySW50ZXJmYWNlL1ZpZXdzL0NQVVRpbWVsaW5lVmlldy5qczoKKyAgICAgICAgKFdJLkNQ
VVRpbWVsaW5lVmlldy5kaXNwbGF5TmFtZUZvclNhbXBsZVR5cGUpOgorICAgICAgICAqIFVzZXJJ
bnRlcmZhY2UvVmlld3MvQ29udGV4dE1lbnVVdGlsaXRpZXMuanM6CisgICAgICAgICogVXNlcklu
dGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanM6CisgICAgICAgIChXSS5E
T01CcmVha3BvaW50VHJlZUVsZW1lbnQuZGlzcGxheU5hbWVGb3JUeXBlKToKKyAgICAgICAgKiBV
c2VySW50ZXJmYWNlL1ZpZXdzL0RPTU5vZGVUcmVlRWxlbWVudC5qczoKKyAgICAgICAgKFdJLkRP
TU5vZGVUcmVlRWxlbWVudC5wcm90b3R5cGUucG9wdWxhdGVDb250ZXh0TWVudSk6CisgICAgICAg
IChXSS5ET01Ob2RlVHJlZUVsZW1lbnQpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3Mv
RE9NVHJlZUVsZW1lbnQuanM6CisgICAgICAgIChXSS5ET01UcmVlRWxlbWVudC5wcm90b3R5cGUu
X3BvcHVsYXRlVGFnQ29udGV4dE1lbnUpOgorICAgICAgICAoV0kuRE9NVHJlZUVsZW1lbnQucHJv
dG90eXBlLl9wb3B1bGF0ZU5vZGVDb250ZXh0TWVudSk6CisgICAgICAgICogVXNlckludGVyZmFj
ZS9WaWV3cy9EZWJ1Z2dlclNpZGViYXJQYW5lbC5qczoKKyAgICAgICAgKFdJLkRlYnVnZ2VyU2lk
ZWJhclBhbmVsLnByb3RvdHlwZS5fYWRkQnJlYWtwb2ludCk6CisgICAgICAgIChXSS5EZWJ1Z2dl
clNpZGViYXJQYW5lbC5wcm90b3R5cGUuX2hhbmRsZUNyZWF0ZUJyZWFrcG9pbnRNb3VzZURvd24p
OgorICAgICAgICAoV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwpOgorICAgICAgICAqIFVzZXJJbnRl
cmZhY2UvVmlld3MvTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbC5qczoKKyAgICAgICAgKFdJ
LkxheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwucHJvdG90eXBlLl9idWlsZERhdGFHcmlkU2Vj
dGlvbik6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9OZXR3b3JrVGFibGVDb250ZW50
Vmlldy5qczoKKyAgICAgICAgKFdJLk5ldHdvcmtUYWJsZUNvbnRlbnRWaWV3LnNob3J0RGlzcGxh
eU5hbWVGb3JSZXNvdXJjZVR5cGUpOgorICAgICAgICAoV0kuTmV0d29ya1RhYmxlQ29udGVudFZp
ZXcucHJvdG90eXBlLmluaXRpYWxMYXlvdXQpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmll
d3MvU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanM6CisgICAgICAgIChXSS5Tb3VyY2Vz
TmF2aWdhdGlvblNpZGViYXJQYW5lbC5wcm90b3R5cGUuX2FkZEJyZWFrcG9pbnQpOgorICAgICAg
ICAoV0kuU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwucHJvdG90eXBlLl9oYW5kbGVDcmVh
dGVCcmVha3BvaW50TW91c2VEb3duKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1Nw
cmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24uanM6CisgICAgICAgIChXSS5TcHJl
YWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9uLnByb3RvdHlwZS5fcmVuZGVyU2VsZWN0
b3IpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRSdWxlc1N0eWxl
RGV0YWlsc1BhbmVsLmpzOgorICAgICAgICAoV0kuU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWls
c1BhbmVsLnByb3RvdHlwZS5sYXlvdXQpOgorCiAyMDE5LTA0LTA4ICBNYXR0IEJha2VyICA8bWF0
dGJha2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBFbGVtZW50cyB0YWI6
IENsYXNzZXMgdG9nZ2xlIHNob3VsZCB1c2UgYWNjZW50IGNvbG9yIG9uIGhvdmVyCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2NhbGl6
ZWRTdHJpbmdzLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4ubHBy
b2ovbG9jYWxpemVkU3RyaW5ncy5qcwppbmRleCBiNmY5YmZkMjMyYS4uZWM3Mzg4OGY4OTAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xv
Y2FsaXplZFN0cmluZ3MuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlv
bnMvZW4ubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcwpAQCAtOTcsOCArOTcsMTAgQEAgbG9jYWxp
emVkU3RyaW5nc1siQWRkaXRpb25zIl0gPSAiQWRkaXRpb25zIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkFkZHJlc3MiXSA9ICJBZGRyZXNzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFsbCJdID0gIkFsbCI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJBbGwgQ2hhbmdlcyJdID0gIkFsbCBDaGFuZ2VzIjsKKy8qIEJy
ZWFrIChwYXVzZSkgb24gYWxsIGV4Y2VwdGlvbnMgKi8KIGxvY2FsaXplZFN0cmluZ3NbIkFsbCBF
eGNlcHRpb25zIl0gPSAiQWxsIEV4Y2VwdGlvbnMiOwogbG9jYWxpemVkU3RyaW5nc1siQWxsIExh
eWVycyJdID0gIkFsbCBMYXllcnMiOworLyogQSBzdWJtZW51IG9mICdCcmVhayBvbicgKi8KIGxv
Y2FsaXplZFN0cmluZ3NbIkFsbCBSZXF1ZXN0cyJdID0gIkFsbCBSZXF1ZXN0cyI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJBbGwgUmVzb3VyY2VzIl0gPSAiQWxsIFJlc291cmNlcyI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJBbGwgU3RvcmFnZSJdID0gIkFsbCBTdG9yYWdlIjsKQEAgLTEyNywxMiArMTI5LDE0
IEBAIGxvY2FsaXplZFN0cmluZ3NbIkFyZWEiXSA9ICJBcmVhIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkFzc2VydGlvbiJdID0gIkFzc2VydGlvbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRpb24g
RmFpbGVkIl0gPSAiQXNzZXJ0aW9uIEZhaWxlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRp
b24gRmFpbGVkOiAlcyJdID0gIkFzc2VydGlvbiBGYWlsZWQ6ICVzIjsKKy8qIEJyZWFrIHdoZW4g
Y29uc29sZS5hc3NlcnQoKSBmYWlscyAqLwogbG9jYWxpemVkU3RyaW5nc1siQXNzZXJ0aW9uIEZh
aWx1cmVzIl0gPSAiQXNzZXJ0aW9uIEZhaWx1cmVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFzc2Vy
dGlvbiB3aXRoIG1lc3NhZ2U6ICVzIl0gPSAiQXNzZXJ0aW9uIHdpdGggbWVzc2FnZTogJXMiOwog
bG9jYWxpemVkU3RyaW5nc1siQXNzZXJ0aXZlIl0gPSAiQXNzZXJ0aXZlIjsKIGxvY2FsaXplZFN0
cmluZ3NbIkFzc29jaWF0ZWQgRGF0YSJdID0gIkFzc29jaWF0ZWQgRGF0YSI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJBc3luYyBhdWRpdHMgYXJlIG5vdCBzdXBwb3J0ZWQuIl0gPSAiQXN5bmMgYXVkaXRz
IGFyZSBub3Qgc3VwcG9ydGVkLiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBdHRyaWJ1dGUiXSA9ICJB
dHRyaWJ1dGUiOworLyogQSBzdWJtZW51IG9mICdCcmVhayBPbicgKi8KIGxvY2FsaXplZFN0cmlu
Z3NbIkF0dHJpYnV0ZSBNb2RpZmllZCJdID0gIkF0dHJpYnV0ZSBNb2RpZmllZCI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJBdHRyaWJ1dGVzIl0gPSAiQXR0cmlidXRlcyI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJBdWRpdCJdID0gIkF1ZGl0IjsKQEAgLTE5Niw2ICsyMDAsNyBAQCBsb2NhbGl6ZWRTdHJpbmdz
WyJDYW52YXMgJWQiXSA9ICJDYW52YXMgJWQiOwogbG9jYWxpemVkU3RyaW5nc1siQ2FudmFzICVz
Il0gPSAiQ2FudmFzICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNhbnZhcyBFbGVtZW50Il0gPSAi
Q2FudmFzIEVsZW1lbnQiOwogbG9jYWxpemVkU3RyaW5nc1siQ2FudmFzZXMiXSA9ICJDYW52YXNl
cyI7CisvKiBDYXB0dXJlIFNjcmVlbnNob3Qgb2YgdGhlIHNlbGVjdGVkIERPTSBub2RlICovCiBs
b2NhbGl6ZWRTdHJpbmdzWyJDYXB0dXJlIFNjcmVlbnNob3QiXSA9ICJDYXB0dXJlIFNjcmVlbnNo
b3QiOwogbG9jYWxpemVkU3RyaW5nc1siQ2FwdHVyaW5nIl0gPSAiQ2FwdHVyaW5nIjsKIC8qIENv
bnRleHQgbWVudSBsYWJlbCBmb3Igd2hldGhlciBzZWFyY2hlcyBzaG91bGQgYmUgY2FzZSBzZW5z
aXRpdmUuICovCkBAIC0yMDksNiArMjE0LDcgQEAgbG9jYWxpemVkU3RyaW5nc1siQ2hhbmdlcyJd
ID0gIkNoYW5nZXMiOwogbG9jYWxpemVkU3RyaW5nc1siQ2hhcmFjdGVyIERhdGEiXSA9ICJDaGFy
YWN0ZXIgRGF0YSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDaGFyZ2UgXHUyMDFDJXNcdTIwMUQgdG8g
Q2FsbGVycyJdID0gIkNoYXJnZSBcdTIwMUMlc1x1MjAxRCB0byBDYWxsZXJzIjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIkNoZWNrZWQiXSA9ICJDaGVja2VkIjsKKy8qIEEgc3VibWVudSBvZiAnQWRkJyAq
LwogbG9jYWxpemVkU3RyaW5nc1siQ2hpbGQiXSA9ICJDaGlsZCI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJDaGlsZCBMYXllcnMiXSA9ICJDaGlsZCBMYXllcnMiOwogbG9jYWxpemVkU3RyaW5nc1siQ2hp
bGQgYWRkZWQgdG8gIl0gPSAiQ2hpbGQgYWRkZWQgdG8gIjsKQEAgLTI0Myw3ICsyNDksOCBAQCBs
b2NhbGl6ZWRTdHJpbmdzWyJDb2xsZWN0IGdhcmJhZ2UiXSA9ICJDb2xsZWN0IGdhcmJhZ2UiOwog
bG9jYWxpemVkU3RyaW5nc1siQ29tbWVudCJdID0gIkNvbW1lbnQiOwogbG9jYWxpemVkU3RyaW5n
c1siQ29tcGFyZSBzbmFwc2hvdHMiXSA9ICJDb21wYXJlIHNuYXBzaG90cyI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJDb21wYXJpc29uIG9mIHRvdGFsIG1lbW9yeSBzaXplIGF0IHRoZSBlbmQgb2YgdGhl
IHNlbGVjdGVkIHRpbWUgcmFuZ2UgdG8gdGhlIG1heGltdW0gbWVtb3J5IHNpemUgaW4gdGhpcyBy
ZWNvcmRpbmciXSA9ICJDb21wYXJpc29uIG9mIHRvdGFsIG1lbW9yeSBzaXplIGF0IHRoZSBlbmQg
b2YgdGhlIHNlbGVjdGVkIHRpbWUgcmFuZ2UgdG8gdGhlIG1heGltdW0gbWVtb3J5IHNpemUgaW4g
dGhpcyByZWNvcmRpbmciOwotbG9jYWxpemVkU3RyaW5nc1siQ29tcG9zaXRlIl0gPSAiQ29tcG9z
aXRlIjsKKy8qIENvbXBvc2l0ZSBwaGFzZSByZWNvcmRzLCB3aGVyZSBncmFwaGljIGxheWVycyBh
cmUgY29tYmluZWQgKi8KK2xvY2FsaXplZFN0cmluZ3NbIkNvbXBvc2l0ZSBAIFRpbWVsaW5lIHJl
Y29yZCJdID0gIkNvbXBvc2l0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wb3NpdGVkIl0gPSAi
Q29tcG9zaXRlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wcmVzc2VkIl0gPSAiQ29tcHJlc3Nl
ZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wcmVzc2lvbiJdID0gIkNvbXByZXNzaW9uIjsKQEAg
LTQ2Myw3ICs0NzAsOSBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJFeHRyYSBTY3JpcHRzIl0gPSAiRXh0
cmEgU2NyaXB0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGYWRlIHVuZXhlY3V0ZWQgY29kZSJdID0g
IkZhZGUgdW5leGVjdXRlZCBjb2RlIjsKIGxvY2FsaXplZFN0cmluZ3NbIkZhaWxlZCB0byB1cGdy
YWRlIl0gPSAiRmFpbGVkIHRvIHVwZ3JhZGUiOwogbG9jYWxpemVkU3RyaW5nc1siRmFpbHVyZSBz
dGF0dXMgY29kZSJdID0gIkZhaWx1cmUgc3RhdHVzIGNvZGUiOworLyogUmVzb3VyY2UgbG9hZGVk
IHZpYSAnZmV0Y2gnIG1ldGhvZCAqLwogbG9jYWxpemVkU3RyaW5nc1siRmV0Y2giXSA9ICJGZXRj
aCI7CisvKiBSZXNvdXJjZXMgbG9hZGVkIHZpYSAnZmV0Y2gnIG1ldGhvZCAqLwogbG9jYWxpemVk
U3RyaW5nc1siRmV0Y2hlcyJdID0gIkZldGNoZXMiOwogbG9jYWxpemVkU3RyaW5nc1siRmlsZSBv
ciBSZXNvdXJjZSJdID0gIkZpbGUgb3IgUmVzb3VyY2UiOwogbG9jYWxpemVkU3RyaW5nc1siRmls
ZW5hbWUiXSA9ICJGaWxlbmFtZSI7CkBAIC00ODAsNyArNDg5LDkgQEAgbG9jYWxpemVkU3RyaW5n
c1siRm9udHMiXSA9ICJGb250cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3JjZSBEYXJrIEFwcGVh
cmFuY2UiXSA9ICJGb3JjZSBEYXJrIEFwcGVhcmFuY2UiOwogbG9jYWxpemVkU3RyaW5nc1siRm9y
Y2UgTGlnaHQgQXBwZWFyYW5jZSJdID0gIkZvcmNlIExpZ2h0IEFwcGVhcmFuY2UiOwogbG9jYWxp
emVkU3RyaW5nc1siRm9yY2UgUHJpbnQgTWVkaWEgU3R5bGVzIl0gPSAiRm9yY2UgUHJpbnQgTWVk
aWEgU3R5bGVzIjsKKy8qIExheW91dCBwaGFzZSByZWNvcmRzIHRoYXQgd2VyZSBpbXBlcmF0aXZl
IChmb3JjZWQpICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3JjZWQgTGF5b3V0Il0gPSAiRm9yY2Vk
IExheW91dCI7CisvKiBBIGNvbnRleHQgbWVudSB0byBmb3JjZSAob3ZlcnJpZGUpIGVsZW1lbnQn
cyBwc2V1ZG8tY2xhc3NlcyAqLwogbG9jYWxpemVkU3RyaW5nc1siRm9yY2VkIFBzZXVkby1DbGFz
c2VzIl0gPSAiRm9yY2VkIFBzZXVkby1DbGFzc2VzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkZvcm1h
dDogSFNMIl0gPSAiRm9ybWF0OiBIU0wiOwogbG9jYWxpemVkU3RyaW5nc1siRm9ybWF0OiBIU0xB
Il0gPSAiRm9ybWF0OiBIU0xBIjsKQEAgLTU3MSw2ICs1ODIsNyBAQCBsb2NhbGl6ZWRTdHJpbmdz
WyJJbmRleCBLZXkgXHUyMDE0ICVzIl0gPSAiSW5kZXggS2V5IFx1MjAxNCAlcyI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJJbmRleGVkIERhdGFiYXNlcyJdID0gIkluZGV4ZWQgRGF0YWJhc2VzIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIkluZm86ICJdID0gIkluZm86ICI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJ
bmZvcyJdID0gIkluZm9zIjsKKy8qIEEgc2VjdGlvbiBvZiBDU1MgcnVsZXMgaW5oZXJpdGVkIGZy
b20gYW5vdGhlciBDU1MgcnVsZSAqLwogbG9jYWxpemVkU3RyaW5nc1siSW5oZXJpdGVkIEZyb20i
XSA9ICJJbmhlcml0ZWQgRnJvbSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbml0aWFsIFN0YXRlIl0g
PSAiSW5pdGlhbCBTdGF0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbml0aWFsIFZlbG9jaXR5Il0g
PSAiSW5pdGlhbCBWZWxvY2l0eSI7CkBAIC01OTksOCArNjExLDkgQEAgbG9jYWxpemVkU3RyaW5n
c1siTGF5ZXIgQ291bnQ6ICVkIl0gPSAiTGF5ZXIgQ291bnQ6ICVkIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkxheWVyIEluZm8iXSA9ICJMYXllciBJbmZvIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxheWVy
cyJdID0gIkxheWVycyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMYXllcnM6Il0gPSAiTGF5ZXJzOiI7
Ci1sb2NhbGl6ZWRTdHJpbmdzWyJMYXlvdXQiXSA9ICJMYXlvdXQiOwogbG9jYWxpemVkU3RyaW5n
c1siTGF5b3V0ICYgUmVuZGVyaW5nIl0gPSAiTGF5b3V0ICYgUmVuZGVyaW5nIjsKKy8qIExheW91
dCBwaGFzZSByZWNvcmRzICovCitsb2NhbGl6ZWRTdHJpbmdzWyJMYXlvdXQgQCBUaW1lbGluZSBy
ZWNvcmQiXSA9ICJMYXlvdXQiOwogbG9jYWxpemVkU3RyaW5nc1siTGF5b3V0IEludmFsaWRhdGVk
Il0gPSAiTGF5b3V0IEludmFsaWRhdGVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxpbmUgJWQiXSA9
ICJMaW5lICVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxpbmUgJWQ6JWQiXSA9ICJMaW5lICVkOiVk
IjsKQEAgLTYxOCwxMCArNjMxLDEyIEBAIGxvY2FsaXplZFN0cmluZ3NbIkxvY2FsIFZhcmlhYmxl
cyJdID0gIkxvY2FsIFZhcmlhYmxlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2NhdGVkIGF0ICVz
Il0gPSAiTG9jYXRlZCBhdCAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2NhdGlvbiJdID0gIkxv
Y2F0aW9uIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBDYW52YXMgQ29udGV4dCJdID0gIkxvZyBD
YW52YXMgQ29udGV4dCI7CisvKiBMb2cgRE9NIGVsZW1lbnQgdG8gQ29uc29sZSAqLwogbG9jYWxp
emVkU3RyaW5nc1siTG9nIEVsZW1lbnQiXSA9ICJMb2cgRWxlbWVudCI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJMb2cgRnJhbWUgVGV4dCJdID0gIkxvZyBGcmFtZSBUZXh0IjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkxvZyBGcmFtZSBWYWx1ZSJdID0gIkxvZyBGcmFtZSBWYWx1ZSI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJMb2cgTWVzc2FnZSJdID0gIkxvZyBNZXNzYWdlIjsKKy8qIExvZyBET00gbm9kZSB0byBD
b25zb2xlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgTm9kZSJdID0gIkxvZyBOb2RlIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIkxvZyBTeW1ib2wiXSA9ICJMb2cgU3ltYm9sIjsKIGxvY2FsaXplZFN0
cmluZ3NbIkxvZyBWYWx1ZSJdID0gIkxvZyBWYWx1ZSI7CkBAIC02NjUsNiArNjgwLDcgQEAgbG9j
YWxpemVkU3RyaW5nc1siTmV0d29yayJdID0gIk5ldHdvcmsiOwogbG9jYWxpemVkU3RyaW5nc1si
TmV0d29yayBJc3N1ZSJdID0gIk5ldHdvcmsgSXNzdWUiOwogbG9jYWxpemVkU3RyaW5nc1siTmV0
d29yayBSZXF1ZXN0cyJdID0gIk5ldHdvcmsgUmVxdWVzdHMiOwogbG9jYWxpemVkU3RyaW5nc1si
TmV3IFRhYiJdID0gIk5ldyBUYWIiOworLyogQSBzdWJtZW51IG9mICdBZGQnICovCiBsb2NhbGl6
ZWRTdHJpbmdzWyJOZXh0IFNpYmxpbmciXSA9ICJOZXh0IFNpYmxpbmciOwogbG9jYWxpemVkU3Ry
aW5nc1siTm8iXSA9ICJObyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJObyBBY2Nlc3NpYmlsaXR5IElu
Zm9ybWF0aW9uIl0gPSAiTm8gQWNjZXNzaWJpbGl0eSBJbmZvcm1hdGlvbiI7CkBAIC03MDUsNiAr
NzIxLDcgQEAgbG9jYWxpemVkU3RyaW5nc1siTm8gcmVxdWVzdCwgc2VydmVkIGZyb20gdGhlIG1l
bW9yeSBjYWNoZS4iXSA9ICJObyByZXF1ZXN0LCBzZXIKIGxvY2FsaXplZFN0cmluZ3NbIk5vIHJl
c3BvbnNlIGNvb2tpZXMuIl0gPSAiTm8gcmVzcG9uc2UgY29va2llcy4iOwogbG9jYWxpemVkU3Ry
aW5nc1siTm8gcmVzcG9uc2UgaGVhZGVycyJdID0gIk5vIHJlc3BvbnNlIGhlYWRlcnMiOwogbG9j
YWxpemVkU3RyaW5nc1siTm9kZSJdID0gIk5vZGUiOworLyogQSBzdWJtZW51IG9mICdCcmVhayBP
bicgKi8KIGxvY2FsaXplZFN0cmluZ3NbIk5vZGUgUmVtb3ZlZCJdID0gIk5vZGUgUmVtb3ZlZCI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJOb2RlcyJdID0gIk5vZGVzIjsKIGxvY2FsaXplZFN0cmluZ3Nb
Ik5vbmUiXSA9ICJOb25lIjsKQEAgLTc0NCw4ICs3NjEsMTEgQEAgbG9jYWxpemVkU3RyaW5nc1si
UGFnZSJdID0gIlBhZ2UiOwogbG9jYWxpemVkU3RyaW5nc1siUGFnZSBJc3N1ZSJdID0gIlBhZ2Ug
SXNzdWUiOwogbG9jYWxpemVkU3RyaW5nc1siUGFnZSBuYXZpZ2F0ZWQgYXQgJXMiXSA9ICJQYWdl
IG5hdmlnYXRlZCBhdCAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQYWdlIHJlbG9hZGVkIGF0ICVz
Il0gPSAiUGFnZSByZWxvYWRlZCBhdCAlcyI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJQYWludCJdID0g
IlBhaW50IjsKKy8qIFBhaW50IChyZW5kZXIpIHBoYXNlIHJlY29yZHMgKi8KK2xvY2FsaXplZFN0
cmluZ3NbIlBhaW50IEAgVGltZWxpbmUgcmVjb3JkIl0gPSAiUGFpbnQiOwogbG9jYWxpemVkU3Ry
aW5nc1siUGFpbnRzIl0gPSAiUGFpbnRzIjsKKy8qIEEgY291bnQgb2YgaG93IG1hbnkgdGltZXMg
YW4gZWxlbWVudCB3YXMgcGFpbnRlZCAocmVuZGVyZWQpICovCitsb2NhbGl6ZWRTdHJpbmdzWyJQ
YWludHMgQCBDb2x1bW4gdGl0bGUiXSA9ICJQYWludHMiOwogbG9jYWxpemVkU3RyaW5nc1siUGFy
ZW50Il0gPSAiUGFyZW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIlBhcnRpYWwgR2FyYmFnZSBDb2xs
ZWN0aW9uIl0gPSAiUGFydGlhbCBHYXJiYWdlIENvbGxlY3Rpb24iOwogbG9jYWxpemVkU3RyaW5n
c1siUGFzc2l2ZSJdID0gIlBhc3NpdmUiOwpAQCAtNzcyLDYgKzc5Miw3IEBAIGxvY2FsaXplZFN0
cmluZ3NbIlByZXNzICVzIHRvIHN0b3AgZWRpdGluZyJdID0gIlByZXNzICVzIHRvIHN0b3AgZWRp
dGluZyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQcmVzc2VkIl0gPSAiUHJlc3NlZCI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJQcmV0dHkgcHJpbnQiXSA9ICJQcmV0dHkgcHJpbnQiOwogbG9jYWxpemVkU3Ry
aW5nc1siUHJldmlldyJdID0gIlByZXZpZXciOworLyogQSBzdWJtZW51IG9mICdBZGQnICovCiBs
b2NhbGl6ZWRTdHJpbmdzWyJQcmV2aW91cyBTaWJsaW5nIl0gPSAiUHJldmlvdXMgU2libGluZyI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJQcmltYXJ5IEtleSJdID0gIlByaW1hcnkgS2V5IjsKIGxvY2Fs
aXplZFN0cmluZ3NbIlByaW1hcnkgS2V5IFx1MjAxNCAlcyJdID0gIlByaW1hcnkgS2V5IFx1MjAx
NCAlcyI7CkBAIC04NTksOSArODgwLDExIEBAIGxvY2FsaXplZFN0cmluZ3NbIlJldHVybiB0eXBl
IGZvciBhbm9ueW1vdXMgZnVuY3Rpb24iXSA9ICJSZXR1cm4gdHlwZSBmb3IgYW5vbnltCiBsb2Nh
bGl6ZWRTdHJpbmdzWyJSZXR1cm4gdHlwZSBmb3IgZnVuY3Rpb246ICVzIl0gPSAiUmV0dXJuIHR5
cGUgZm9yIGZ1bmN0aW9uOiAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXR1cm4gdmFsdWUgaXMg
bm90IGFuIG9iamVjdCwgc3RyaW5nLCBvciBib29sZWFuIl0gPSAiUmV0dXJuIHZhbHVlIGlzIG5v
dCBhbiBvYmplY3QsIHN0cmluZywgb3IgYm9vbGVhbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZl
YWwgQnJlYWtwb2ludCJdID0gIlJldmVhbCBCcmVha3BvaW50IjsKKy8qIE9wZW4gRWxlbWVudHMg
dGFiIGFuZCBzZWxlY3QgdGhpcyBub2RlIGluIERPTSB0cmVlICovCiBsb2NhbGl6ZWRTdHJpbmdz
WyJSZXZlYWwgaW4gRE9NIFRyZWUiXSA9ICJSZXZlYWwgaW4gRE9NIFRyZWUiOwogbG9jYWxpemVk
U3RyaW5nc1siUmV2ZWFsIGluIERlYnVnZ2VyIFRhYiJdID0gIlJldmVhbCBpbiBEZWJ1Z2dlciBU
YWIiOwogbG9jYWxpemVkU3RyaW5nc1siUmV2ZWFsIGluIEVsZW1lbnRzIFRhYiJdID0gIlJldmVh
bCBpbiBFbGVtZW50cyBUYWIiOworLyogT3BlbiBMYXllcnMgdGFiIGFuZCBzZWxlY3QgdGhlIGxh
eWVyIGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBub2RlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZl
YWwgaW4gTGF5ZXJzIFRhYiJdID0gIlJldmVhbCBpbiBMYXllcnMgVGFiIjsKIGxvY2FsaXplZFN0
cmluZ3NbIlJldmVhbCBpbiBOZXR3b3JrIFRhYiJdID0gIlJldmVhbCBpbiBOZXR3b3JrIFRhYiI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZlYWwgaW4gT3JpZ2luYWwgUmVzb3VyY2UiXSA9ICJSZXZl
YWwgaW4gT3JpZ2luYWwgUmVzb3VyY2UiOwpAQCAtODg5LDcgKzkxMiw4IEBAIGxvY2FsaXplZFN0
cmluZ3NbIlNjcmlwdCBFbGVtZW50ICVkIl0gPSAiU2NyaXB0IEVsZW1lbnQgJWQiOwogbG9jYWxp
emVkU3RyaW5nc1siU2NyaXB0IEVudHJpZXM6Il0gPSAiU2NyaXB0IEVudHJpZXM6IjsKIGxvY2Fs
aXplZFN0cmluZ3NbIlNjcmlwdCBFdmFsdWF0ZWQiXSA9ICJTY3JpcHQgRXZhbHVhdGVkIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIlNjcmlwdHMiXSA9ICJTY3JpcHRzIjsKLWxvY2FsaXplZFN0cmluZ3Nb
IlNjcm9sbCBJbnRvIFZpZXciXSA9ICJTY3JvbGwgSW50byBWaWV3IjsKKy8qIFNjcm9sbCBzZWxl
Y3RlZCBET00gbm9kZSBpbnRvIHZpZXcgb24gdGhlIGluc3BlY3RlZCB3ZWIgcGFnZSAqLworbG9j
YWxpemVkU3RyaW5nc1siU2Nyb2xsIGludG8gVmlldyJdID0gIlNjcm9sbCBpbnRvIFZpZXciOwog
bG9jYWxpemVkU3RyaW5nc1siU2VhcmNoIl0gPSAiU2VhcmNoIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IlNlYXJjaCBBZ2FpbiJdID0gIlNlYXJjaCBBZ2FpbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWFy
Y2ggUmVzb3VyY2UgQ29udGVudCJdID0gIlNlYXJjaCBSZXNvdXJjZSBDb250ZW50IjsKQEAgLTkw
NCwxMCArOTI4LDEyIEBAIGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdCBiYXNlbGluZSBzbmFwc2hv
dCJdID0gIlNlbGVjdCBiYXNlbGluZSBzbmFwc2hvdCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxl
Y3QgY29tcGFyaXNvbiBzbmFwc2hvdCJdID0gIlNlbGVjdCBjb21wYXJpc29uIHNuYXBzaG90IjsK
IGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdGVkIl0gPSAiU2VsZWN0ZWQiOwogbG9jYWxpemVkU3Ry
aW5nc1siU2VsZWN0ZWQgQ2FudmFzIENvbnRleHQiXSA9ICJTZWxlY3RlZCBDYW52YXMgQ29udGV4
dCI7CisvKiBTZWxlY3RlZCBET00gZWxlbWVudCAqLwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0
ZWQgRWxlbWVudCJdID0gIlNlbGVjdGVkIEVsZW1lbnQiOwogbG9jYWxpemVkU3RyaW5nc1siU2Vs
ZWN0ZWQgRnJhbWUiXSA9ICJTZWxlY3RlZCBGcmFtZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxl
Y3RlZCBJdGVtIl0gPSAiU2VsZWN0ZWQgSXRlbSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3Rl
ZCBJdGVtcyJdID0gIlNlbGVjdGVkIEl0ZW1zIjsKKy8qIFNlbGVjdGVkIERPTSBub2RlICovCiBs
b2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBOb2RlIl0gPSAiU2VsZWN0ZWQgTm9kZSI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBTeW1ib2wiXSA9ICJTZWxlY3RlZCBTeW1ib2wiOwogbG9j
YWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgVmFsdWUiXSA9ICJTZWxlY3RlZCBWYWx1ZSI7CkBAIC0x
MDA4LDYgKzEwMzQsNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJTdG9wIHJlY29yZGluZyBjYW52YXMg
YWN0aW9ucyJdID0gIlN0b3AgcmVjb3JkaW5nIGNhbnZhcyBhY3RpbwogbG9jYWxpemVkU3RyaW5n
c1siU3RvcCByZWNvcmRpbmcgb25jZSBwYWdlIGxvYWRzIl0gPSAiU3RvcCByZWNvcmRpbmcgb25j
ZSBwYWdlIGxvYWRzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlN0b3BwaW5nIHRoZSBcdTIwMUMlc1x1
MjAxRCBhdWRpdCJdID0gIlN0b3BwaW5nIHRoZSBcdTIwMUMlc1x1MjAxRCBhdWRpdCI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJTdG9yYWdlIl0gPSAiU3RvcmFnZSI7CisvKiBDU1MgcHJvcGVydGllcyBk
ZWZpbmVkIHZpYSBIVE1MIHN0eWxlIGF0dHJpYnV0ZSAqLwogbG9jYWxpemVkU3RyaW5nc1siU3R5
bGUgQXR0cmlidXRlIl0gPSAiU3R5bGUgQXR0cmlidXRlIjsKIGxvY2FsaXplZFN0cmluZ3NbIlN0
eWxlIFJlc29sdXRpb24iXSA9ICJTdHlsZSBSZXNvbHV0aW9uIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IlN0eWxlIHJ1bGUiXSA9ICJTdHlsZSBydWxlIjsKQEAgLTEwMjAsMTIgKzEwNDcsMTQgQEAgbG9j
YWxpemVkU3RyaW5nc1siU3R5bGVzOiJdID0gIlN0eWxlczoiOwogbG9jYWxpemVkU3RyaW5nc1si
U3R5bGVzaGVldCJdID0gIlN0eWxlc2hlZXQiOwogbG9jYWxpemVkU3RyaW5nc1siU3R5bGVzaGVl
dHMiXSA9ICJTdHlsZXNoZWV0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdWJqZWN0Il0gPSAiU3Vi
amVjdCI7CisvKiBBIHN1Ym1lbnUgb2YgJ0JyZWFrIE9uJyAqLwogbG9jYWxpemVkU3RyaW5nc1si
U3VidHJlZSBNb2RpZmllZCJdID0gIlN1YnRyZWUgTW9kaWZpZWQiOwogbG9jYWxpemVkU3RyaW5n
c1siU3VtbWFyeSJdID0gIlN1bW1hcnkiOwogbG9jYWxpemVkU3RyaW5nc1siVENQIl0gPSAiVENQ
IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRJRkYiXSA9ICJUSUZGIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IlRhYiB3aWR0aDoiXSA9ICJUYWIgd2lkdGg6IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRhYnMiXSA9
ICJUYWJzIjsKKy8qIEEgc3VibWVudSBvZiAnRWRpdCcgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlRh
ZyJdID0gIlRhZyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUYWtlIHNuYXBzaG90Il0gPSAiVGFrZSBz
bmFwc2hvdCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUYXJnZXQiXSA9ICJUYXJnZXQiOwpAQCAtMTA4
OCw2ICsxMTE3LDcgQEAgbG9jYWxpemVkU3RyaW5nc1siVG90YWw6ICVzIl0gPSAiVG90YWw6ICVz
IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRvdGFsczoiXSA9ICJUb3RhbHM6IjsKIGxvY2FsaXplZFN0
cmluZ3NbIlRyYWNlIl0gPSAiVHJhY2UiOwogbG9jYWxpemVkU3RyaW5nc1siVHJhY2U6ICVzIl0g
PSAiVHJhY2U6ICVzIjsKKy8qIEFtb3VudCBvZiBkYXRhIHNlbnQgb3ZlciB0aGUgbmV0d29yayAq
LwogbG9jYWxpemVkU3RyaW5nc1siVHJhbnNmZXIgU2l6ZSJdID0gIlRyYW5zZmVyIFNpemUiOwog
bG9jYWxpemVkU3RyaW5nc1siVHJhbnNmZXJyZWQiXSA9ICJUcmFuc2ZlcnJlZCI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJUcmlnZ2VyZWQgQnJlYWtwb2ludCJdID0gIlRyaWdnZXJlZCBCcmVha3BvaW50
IjsKQEAgLTExMDIsNiArMTEzMiw3IEBAIGxvY2FsaXplZFN0cmluZ3NbIlVSTCBCcmVha3BvaW50
XHUyMDI2Il0gPSAiVVJMIEJyZWFrcG9pbnRcdTIwMjYiOwogbG9jYWxpemVkU3RyaW5nc1siVW5h
YmxlIHRvIGRldGVybWluZSBwYXRoIHRvIHByb3BlcnR5IGZyb20gcm9vdCJdID0gIlVuYWJsZSB0
byBkZXRlcm1pbmUgcGF0aCB0byBwcm9wZXJ0eSBmcm9tIHJvb3QiOwogbG9jYWxpemVkU3RyaW5n
c1siVW5hYmxlIHRvIHBhcnNlIGFzIEpTT046ICVzIl0gPSAiVW5hYmxlIHRvIHBhcnNlIGFzIEpT
T046ICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlVuYWJsZSB0byBzaG93IGNlcnRpZmljYXRlIGZv
ciBcdTIwMUMlc1x1MjAxRCJdID0gIlVuYWJsZSB0byBzaG93IGNlcnRpZmljYXRlIGZvciBcdTIw
MUMlc1x1MjAxRCI7CisvKiBCcmVhayAocGF1c2UpIG9uIGV2ZXJ5IHVuY2F1Z2h0ICh1bmhhbmRs
ZWQpIGV4Y2VwdGlvbnMgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlVuY2F1Z2h0IEV4Y2VwdGlvbnMi
XSA9ICJVbmNhdWdodCBFeGNlcHRpb25zIjsKIGxvY2FsaXplZFN0cmluZ3NbIlVuZGVmaW5lZCBj
dXN0b20gZWxlbWVudCJdID0gIlVuZGVmaW5lZCBjdXN0b20gZWxlbWVudCI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJVbmlxdWUiXSA9ICJVbmlxdWUiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvQmFzZS9Mb2FkTG9jYWxpemVkU3RyaW5ncy5qcyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXplZFN0cmluZ3Mu
anMKaW5kZXggYzBmNWEzNzVlMzMuLjc4YmMwMWRhNjM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9CYXNlL0xvYWRMb2NhbGl6ZWRTdHJpbmdzLmpzCisr
KyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXpl
ZFN0cmluZ3MuanMKQEAgLTQ2LDYgKzQ2LDEyIEBAIFdJLlVJU3RyaW5nID0gZnVuY3Rpb24oc3Ry
aW5nLCBrZXksIGNvbW1lbnQpCiAgICAgaWYgKFdJLmRvbnRMb2NhbGl6ZVVzZXJJbnRlcmZhY2Up
CiAgICAgICAgIHJldHVybiBzdHJpbmc7CiAKKyAgICAvLyBVSVN0cmluZyhzdHJpbmcsIGNvbW1l
bnQpCisgICAgaWYgKGtleSAmJiBjb21tZW50ID09PSB1bmRlZmluZWQpIHsKKyAgICAgICAgY29t
bWVudCA9IGtleTsKKyAgICAgICAga2V5ID0gdW5kZWZpbmVkOworICAgIH0KKwogICAgIGtleSA9
IGtleSB8fCBzdHJpbmc7CiAKICAgICBpZiAod2luZG93LmxvY2FsaXplZFN0cmluZ3MgJiYga2V5
IGluIHdpbmRvdy5sb2NhbGl6ZWRTdHJpbmdzKQpAQCAtNjQsMyArNzAsMjcgQEAgV0kuVUlTdHJp
bmcgPSBmdW5jdGlvbihzdHJpbmcsIGtleSwgY29tbWVudCkKIAogICAgIHJldHVybiAiTE9DQUxJ
WkVEIFNUUklORyBOT1QgRk9VTkQiOwogfTsKKworV0kucmVwZWF0aW5nVUlTdHJpbmcgPSBmdW5j
dGlvbihrZXkpIHsKKyAgICBsZXQgbG9jYWxpemVkU3RyaW5ncyA9IHsKKyAgICAgICAgIkxheW91
dCBAIFRpbWVsaW5lIHJlY29yZCI6IFdJLlVJU3RyaW5nKCJMYXlvdXQiLCAiTGF5b3V0IEAgVGlt
ZWxpbmUgcmVjb3JkIiwgIkxheW91dCBwaGFzZSByZWNvcmRzIiksCisgICAgICAgICJQYWludCBA
IFRpbWVsaW5lIHJlY29yZCI6IFdJLlVJU3RyaW5nKCJQYWludCIsICJQYWludCBAIFRpbWVsaW5l
IHJlY29yZCIsICJQYWludCAocmVuZGVyKSBwaGFzZSByZWNvcmRzIiksCisgICAgICAgICJDb21w
b3NpdGUgQCBUaW1lbGluZSByZWNvcmQiOiBXSS5VSVN0cmluZygiQ29tcG9zaXRlIiwgIkNvbXBv
c2l0ZSBAIFRpbWVsaW5lIHJlY29yZCIsICJDb21wb3NpdGUgcGhhc2UgcmVjb3Jkcywgd2hlcmUg
Z3JhcGhpYyBsYXllcnMgYXJlIGNvbWJpbmVkIiksCisKKyAgICAgICAgIkFsbCBFeGNlcHRpb25z
IjogV0kuVUlTdHJpbmcoIkFsbCBFeGNlcHRpb25zIiwgIkJyZWFrIChwYXVzZSkgb24gYWxsIGV4
Y2VwdGlvbnMiKSwKKyAgICAgICAgIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiOiBXSS5VSVN0cmluZygi
VW5jYXVnaHQgRXhjZXB0aW9ucyIsICJCcmVhayAocGF1c2UpIG9uIGV2ZXJ5IHVuY2F1Z2h0ICh1
bmhhbmRsZWQpIGV4Y2VwdGlvbnMiKSwKKyAgICAgICAgIkFzc2VydGlvbiBGYWlsdXJlcyI6IFdJ
LlVJU3RyaW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiLCAiQnJlYWsgd2hlbiBjb25zb2xlLmFzc2Vy
dCgpIGZhaWxzIiksCisgICAgICAgICJBbGwgUmVxdWVzdHMiOiBXSS5VSVN0cmluZygiQWxsIFJl
cXVlc3RzIiwgIkEgc3VibWVudSBvZiAnQnJlYWsgb24nIiksCisKKyAgICAgICAgIkZldGNoIjog
V0kuVUlTdHJpbmcoIkZldGNoIiwgIlJlc291cmNlIGxvYWRlZCB2aWEgJ2ZldGNoJyBtZXRob2Qi
KSwKKworICAgICAgICAiUmV2ZWFsIGluIERPTSBUcmVlIjogV0kuVUlTdHJpbmcoIlJldmVhbCBp
biBET00gVHJlZSIsICJPcGVuIEVsZW1lbnRzIHRhYiBhbmQgc2VsZWN0IHRoaXMgbm9kZSBpbiBE
T00gdHJlZSIpLAorICAgIH07CisKKyAgICBpZiAoIWxvY2FsaXplZFN0cmluZ3MuaGFzT3duUHJv
cGVydHkoa2V5KSkgeworICAgICAgICBjb25zb2xlLmVycm9yKGByZXBlYXRpbmdVSVN0cmluZyAi
JHtrZXl9IiB3YXMgbm90IGZvdW5kLmApOworICAgICAgICByZXR1cm4gIkxPQ0FMSVpFRCBTVFJJ
TkcgTk9UIEZPVU5EIjsKKyAgICB9CisKKyAgICByZXR1cm4gbG9jYWxpemVkU3RyaW5nc1trZXld
OworfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01v
ZGVscy9MYXlvdXRUaW1lbGluZVJlY29yZC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL01vZGVscy9MYXlvdXRUaW1lbGluZVJlY29yZC5qcwppbmRleCBmYWE0YjZjMmU1
Mi4uZjkzMWRlNTcwMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL01vZGVscy9MYXlvdXRUaW1lbGluZVJlY29yZC5qcworKysgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvTGF5b3V0VGltZWxpbmVSZWNvcmQuanMKQEAg
LTUxLDEzICs1MSwxMyBAQCBXSS5MYXlvdXRUaW1lbGluZVJlY29yZCA9IGNsYXNzIExheW91dFRp
bWVsaW5lUmVjb3JkIGV4dGVuZHMgV0kuVGltZWxpbmVSZWNvcmQKICAgICAgICAgY2FzZSBXSS5M
YXlvdXRUaW1lbGluZVJlY29yZC5FdmVudFR5cGUuSW52YWxpZGF0ZUxheW91dDoKICAgICAgICAg
ICAgIHJldHVybiBXSS5VSVN0cmluZygiTGF5b3V0IEludmFsaWRhdGVkIik7CiAgICAgICAgIGNh
c2UgV0kuTGF5b3V0VGltZWxpbmVSZWNvcmQuRXZlbnRUeXBlLkZvcmNlZExheW91dDoKLSAgICAg
ICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiRm9yY2VkIExheW91dCIpOworICAgICAgICAgICAg
cmV0dXJuIFdJLlVJU3RyaW5nKCJGb3JjZWQgTGF5b3V0IiwgIkxheW91dCBwaGFzZSByZWNvcmRz
IHRoYXQgd2VyZSBpbXBlcmF0aXZlIChmb3JjZWQpIik7CiAgICAgICAgIGNhc2UgV0kuTGF5b3V0
VGltZWxpbmVSZWNvcmQuRXZlbnRUeXBlLkxheW91dDoKLSAgICAgICAgICAgIHJldHVybiBXSS5V
SVN0cmluZygiTGF5b3V0Iik7CisgICAgICAgICAgICByZXR1cm4gV0kucmVwZWF0aW5nVUlTdHJp
bmcoIkxheW91dCBAIFRpbWVsaW5lIHJlY29yZCIpOwogICAgICAgICBjYXNlIFdJLkxheW91dFRp
bWVsaW5lUmVjb3JkLkV2ZW50VHlwZS5QYWludDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0
cmluZygiUGFpbnQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRpbmdVSVN0cmluZygi
UGFpbnQgQCBUaW1lbGluZSByZWNvcmQiKTsKICAgICAgICAgY2FzZSBXSS5MYXlvdXRUaW1lbGlu
ZVJlY29yZC5FdmVudFR5cGUuQ29tcG9zaXRlOgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3Ry
aW5nKCJDb21wb3NpdGUiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRpbmdVSVN0cmlu
ZygiQ29tcG9zaXRlIEAgVGltZWxpbmUgcmVjb3JkIik7CiAgICAgICAgIH0KICAgICB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZW5k
ZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvTW9kZWxzL1JlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuanMKaW5kZXggNWZk
ODEwODNmOWUuLjY3N2MyZDA3YTIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9Nb2RlbHMvUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5qcworKysg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvUmVuZGVyaW5nRnJh
bWVUaW1lbGluZVJlY29yZC5qcwpAQCAtNDYsOSArNDYsOSBAQCBXSS5SZW5kZXJpbmdGcmFtZVRp
bWVsaW5lUmVjb3JkID0gY2xhc3MgUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZCBleHRlbmRz
IFdJLgogICAgICAgICBjYXNlIFdJLlJlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuVGFza1R5
cGUuU2NyaXB0OgogICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJTY3JpcHQiKTsKICAg
ICAgICAgY2FzZSBXSS5SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLlRhc2tUeXBlLkxheW91
dDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTGF5b3V0Iik7CisgICAgICAgICAg
ICByZXR1cm4gV0kucmVwZWF0aW5nVUlTdHJpbmcoIkxheW91dCBAIFRpbWVsaW5lIHJlY29yZCIp
OwogICAgICAgICBjYXNlIFdJLlJlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuVGFza1R5cGUu
UGFpbnQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlBhaW50Iik7CisgICAgICAg
ICAgICByZXR1cm4gV0kucmVwZWF0aW5nVUlTdHJpbmcoIlBhaW50IEAgVGltZWxpbmUgcmVjb3Jk
Iik7CiAgICAgICAgIGNhc2UgV0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5UYXNrVHlw
ZS5PdGhlcjoKICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiT3RoZXIiKTsKICAgICAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9k
ZWxzL1Jlc291cmNlLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9k
ZWxzL1Jlc291cmNlLmpzCmluZGV4IGRjNzUyMDg2ZDYxLi44YjZmMWY5N2Y5OSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291cmNlLmpz
CisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZXNvdXJj
ZS5qcwpAQCAtMTU2LDggKzE1Niw4IEBAIFdJLlJlc291cmNlID0gY2xhc3MgUmVzb3VyY2UgZXh0
ZW5kcyBXSS5Tb3VyY2VDb2RlCiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlhIUiIp
OwogICAgICAgICBjYXNlIFdJLlJlc291cmNlLlR5cGUuRmV0Y2g6CiAgICAgICAgICAgICBpZiAo
cGx1cmFsKQotICAgICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiRmV0Y2hlcyIpOwot
ICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJGZXRjaCIpOworICAgICAgICAgICAgICAg
IHJldHVybiBXSS5VSVN0cmluZygiRmV0Y2hlcyIsICJSZXNvdXJjZXMgbG9hZGVkIHZpYSAnZmV0
Y2gnIG1ldGhvZCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJG
ZXRjaCIpOwogICAgICAgICBjYXNlIFdJLlJlc291cmNlLlR5cGUuUGluZzoKICAgICAgICAgICAg
IGlmIChwbHVyYWwpCiAgICAgICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJQaW5ncyIp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3Mv
QXVkaXRUZXN0R3JvdXBDb250ZW50Vmlldy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL0F1ZGl0VGVzdEdyb3VwQ29udGVudFZpZXcuanMKaW5kZXggOGU0MGRk
NmQ3ZDcuLmJlMmVlYmE2MmNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9BdWRpdFRlc3RHcm91cENvbnRlbnRWaWV3LmpzCisrKyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0F1ZGl0VGVzdEdyb3VwQ29udGVu
dFZpZXcuanMKQEAgLTEyNSwxMSArMTI1LDExIEBAIFdJLkF1ZGl0VGVzdEdyb3VwQ29udGVudFZp
ZXcgPSBjbGFzcyBBdWRpdFRlc3RHcm91cENvbnRlbnRWaWV3IGV4dGVuZHMgV0kuQXVkaXRUCiAg
ICAgICAgICAgICAgICAgc2NvcGVCYXJJdGVtcy5wdXNoKHNjb3BlQmFySXRlbSk7CiAgICAgICAg
ICAgICB9OwogCi0gICAgICAgICAgICBhZGRTY29wZUJhckl0ZW0oV0kuQXVkaXRUZXN0Q2FzZVJl
c3VsdC5MZXZlbC5QYXNzLCBXSS5VSVN0cmluZygiJWQgUGFzc2VkIiwgIiVkIFBhc3NlZCAoc2lu
Z3VsYXIpIiksIFdJLlVJU3RyaW5nKCIlZCBQYXNzZWQiLCAiJWQgUGFzc2VkIChwbHVyYWwpIikp
OworICAgICAgICAgICAgYWRkU2NvcGVCYXJJdGVtKFdJLkF1ZGl0VGVzdENhc2VSZXN1bHQuTGV2
ZWwuUGFzcywgV0kuVUlTdHJpbmcoIiVkIFBhc3NlZCIsICIlZCBQYXNzZWQgKHNpbmd1bGFyKSIs
ICIiKSwgV0kuVUlTdHJpbmcoIiVkIFBhc3NlZCIsICIlZCBQYXNzZWQgKHBsdXJhbCkiLCAiIikp
OwogICAgICAgICAgICAgYWRkU2NvcGVCYXJJdGVtKFdJLkF1ZGl0VGVzdENhc2VSZXN1bHQuTGV2
ZWwuV2FybiwgV0kuVUlTdHJpbmcoIiVkIFdhcm5pbmciKSwgV0kuVUlTdHJpbmcoIiVkIFdhcm5p
bmdzIikpOwotICAgICAgICAgICAgYWRkU2NvcGVCYXJJdGVtKFdJLkF1ZGl0VGVzdENhc2VSZXN1
bHQuTGV2ZWwuRmFpbCwgV0kuVUlTdHJpbmcoIiVkIEZhaWxlZCIsICIlZCBGYWlsZWQgKHNpbmd1
bGFyKSIpLCBXSS5VSVN0cmluZygiJWQgRmFpbGVkIiwgIiVkIEZhaWxlZCAocGx1cmFsKSIpKTsK
KyAgICAgICAgICAgIGFkZFNjb3BlQmFySXRlbShXSS5BdWRpdFRlc3RDYXNlUmVzdWx0LkxldmVs
LkZhaWwsIFdJLlVJU3RyaW5nKCIlZCBGYWlsZWQiLCAiJWQgRmFpbGVkIChzaW5ndWxhcikiLCAi
IiksIFdJLlVJU3RyaW5nKCIlZCBGYWlsZWQiLCAiJWQgRmFpbGVkIChwbHVyYWwpIiwgIiIpKTsK
ICAgICAgICAgICAgIGFkZFNjb3BlQmFySXRlbShXSS5BdWRpdFRlc3RDYXNlUmVzdWx0LkxldmVs
LkVycm9yLCBXSS5VSVN0cmluZygiJWQgRXJyb3IiKSwgV0kuVUlTdHJpbmcoIiVkIEVycm9ycyIp
KTsKLSAgICAgICAgICAgIGFkZFNjb3BlQmFySXRlbShXSS5BdWRpdFRlc3RDYXNlUmVzdWx0Lkxl
dmVsLlVuc3VwcG9ydGVkLCBXSS5VSVN0cmluZygiJWQgVW5zdXBwb3J0ZWQiLCAiJWQgVW5zdXBw
b3J0ZWQgKHNpbmd1bGFyKSIpLCBXSS5VSVN0cmluZygiJWQgVW5zdXBwb3J0ZWQiLCAiJWQgVW5z
dXBwb3J0ZWQgKHBsdXJhbCkiKSk7CisgICAgICAgICAgICBhZGRTY29wZUJhckl0ZW0oV0kuQXVk
aXRUZXN0Q2FzZVJlc3VsdC5MZXZlbC5VbnN1cHBvcnRlZCwgV0kuVUlTdHJpbmcoIiVkIFVuc3Vw
cG9ydGVkIiwgIiVkIFVuc3VwcG9ydGVkIChzaW5ndWxhcikiLCAiIiksIFdJLlVJU3RyaW5nKCIl
ZCBVbnN1cHBvcnRlZCIsICIlZCBVbnN1cHBvcnRlZCAocGx1cmFsKSIsICIiKSk7CiAKICAgICAg
ICAgICAgIHRoaXMuX2xldmVsU2NvcGVCYXIgPSBuZXcgV0kuU2NvcGVCYXIobnVsbCwgc2NvcGVC
YXJJdGVtcyk7CiAgICAgICAgICAgICB0aGlzLl9sZXZlbFNjb3BlQmFyLmFkZEV2ZW50TGlzdGVu
ZXIoV0kuU2NvcGVCYXIuRXZlbnQuU2VsZWN0aW9uQ2hhbmdlZCwgdGhpcy5faGFuZGxlTGV2ZWxT
Y29wZUJhclNlbGVjdGlvbkNoYW5nZWQsIHRoaXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ1BVVGltZWxpbmVWaWV3LmpzIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ1BVVGltZWxpbmVWaWV3LmpzCmlu
ZGV4IGEwZTM0MjE2NGFiLi4yYWJiNWZhZGI2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ1BVVGltZWxpbmVWaWV3LmpzCisrKyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NQVVRpbWVsaW5lVmlldy5qcwpA
QCAtNTcsOSArNTcsOSBAQCBXSS5DUFVUaW1lbGluZVZpZXcgPSBjbGFzcyBDUFVUaW1lbGluZVZp
ZXcgZXh0ZW5kcyBXSS5UaW1lbGluZVZpZXcKICAgICAgICAgY2FzZSBXSS5DUFVUaW1lbGluZVZp
ZXcuU2FtcGxlVHlwZS5TY3JpcHQ6CiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlNj
cmlwdCIpOwogICAgICAgICBjYXNlIFdJLkNQVVRpbWVsaW5lVmlldy5TYW1wbGVUeXBlLkxheW91
dDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTGF5b3V0Iik7CisgICAgICAgICAg
ICByZXR1cm4gV0kucmVwZWF0aW5nVUlTdHJpbmcoIkxheW91dCBAIFRpbWVsaW5lIHJlY29yZCIp
OwogICAgICAgICBjYXNlIFdJLkNQVVRpbWVsaW5lVmlldy5TYW1wbGVUeXBlLlBhaW50OgotICAg
ICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJQYWludCIpOworICAgICAgICAgICAgcmV0dXJu
IFdJLnJlcGVhdGluZ1VJU3RyaW5nKCJQYWludCBAIFRpbWVsaW5lIHJlY29yZCIpOwogICAgICAg
ICBjYXNlIFdJLkNQVVRpbWVsaW5lVmlldy5TYW1wbGVUeXBlLlN0eWxlOgogICAgICAgICAgICAg
cmV0dXJuIFdJLlVJU3RyaW5nKCJTdHlsZSBSZXNvbHV0aW9uIik7CiAgICAgICAgIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NvbnRleHRN
ZW51VXRpbGl0aWVzLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvQ29udGV4dE1lbnVVdGlsaXRpZXMuanMKaW5kZXggZTFiMTI2ZjNlYjguLjZmYTE5ODczNTQ2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9D
b250ZXh0TWVudVV0aWxpdGllcy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGllcy5qcwpAQCAtMjE2LDEwICsyMTYsMTAg
QEAgV0kuYXBwZW5kQ29udGV4dE1lbnVJdGVtc0ZvckRPTU5vZGUgPSBmdW5jdGlvbihjb250ZXh0
TWVudSwgZG9tTm9kZSwgb3B0aW9ucyA9IHsKICAgICBjb250ZXh0TWVudS5hcHBlbmRTZXBhcmF0
b3IoKTsKIAogICAgIGlmICghb3B0aW9ucy5leGNsdWRlTG9nRWxlbWVudCAmJiAhZG9tTm9kZS5p
c0luVXNlckFnZW50U2hhZG93VHJlZSgpICYmICFkb21Ob2RlLmlzUHNldWRvRWxlbWVudCgpKSB7
Ci0gICAgICAgIGxldCBsYWJlbCA9IGlzRWxlbWVudCA/IFdJLlVJU3RyaW5nKCJMb2cgRWxlbWVu
dCIpIDogV0kuVUlTdHJpbmcoIkxvZyBOb2RlIik7CisgICAgICAgIGxldCBsYWJlbCA9IGlzRWxl
bWVudCA/IFdJLlVJU3RyaW5nKCJMb2cgRWxlbWVudCIsICJMb2cgRE9NIGVsZW1lbnQgdG8gQ29u
c29sZSIpIDogV0kuVUlTdHJpbmcoIkxvZyBOb2RlIiwgIkxvZyBET00gbm9kZSB0byBDb25zb2xl
Iik7CiAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0obGFiZWwsICgpID0+IHsKICAgICAg
ICAgICAgIFdJLlJlbW90ZU9iamVjdC5yZXNvbHZlTm9kZShkb21Ob2RlLCBXSS5SdW50aW1lTWFu
YWdlci5Db25zb2xlT2JqZWN0R3JvdXApLnRoZW4oKHJlbW90ZU9iamVjdCkgPT4gewotICAgICAg
ICAgICAgICAgIGxldCB0ZXh0ID0gaXNFbGVtZW50ID8gV0kuVUlTdHJpbmcoIlNlbGVjdGVkIEVs
ZW1lbnQiKSA6IFdJLlVJU3RyaW5nKCJTZWxlY3RlZCBOb2RlIik7CisgICAgICAgICAgICAgICAg
bGV0IHRleHQgPSBpc0VsZW1lbnQgPyBXSS5VSVN0cmluZygiU2VsZWN0ZWQgRWxlbWVudCIsICJT
ZWxlY3RlZCBET00gZWxlbWVudCIpIDogV0kuVUlTdHJpbmcoIlNlbGVjdGVkIE5vZGUiLCAiU2Vs
ZWN0ZWQgRE9NIG5vZGUiKTsKICAgICAgICAgICAgICAgICBjb25zdCBhZGRTcGVjaWFsVXNlckxv
Z0NsYXNzID0gdHJ1ZTsKICAgICAgICAgICAgICAgICBXSS5jb25zb2xlTG9nVmlld0NvbnRyb2xs
ZXIuYXBwZW5kSW1tZWRpYXRlRXhlY3V0aW9uV2l0aFJlc3VsdCh0ZXh0LCByZW1vdGVPYmplY3Qs
IGFkZFNwZWNpYWxVc2VyTG9nQ2xhc3MpOwogICAgICAgICAgICAgfSk7CkBAIC0yMjcsMTkgKzIy
NywxOSBAQCBXSS5hcHBlbmRDb250ZXh0TWVudUl0ZW1zRm9yRE9NTm9kZSA9IGZ1bmN0aW9uKGNv
bnRleHRNZW51LCBkb21Ob2RlLCBvcHRpb25zID0gewogICAgIH0KIAogICAgIGlmICghb3B0aW9u
cy5leGNsdWRlUmV2ZWFsRWxlbWVudCAmJiB3aW5kb3cuRE9NQWdlbnQgJiYgYXR0YWNoZWQpIHsK
LSAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiUmV2ZWFsIGluIERP
TSBUcmVlIiksICgpID0+IHsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5yZXBl
YXRpbmdVSVN0cmluZygiUmV2ZWFsIGluIERPTSBUcmVlIiksICgpID0+IHsKICAgICAgICAgICAg
IFdJLmRvbU1hbmFnZXIuaW5zcGVjdEVsZW1lbnQoZG9tTm9kZS5pZCk7CiAgICAgICAgIH0pOwog
ICAgIH0KIAogICAgIGlmIChXSS5zZXR0aW5ncy5leHBlcmltZW50YWxFbmFibGVMYXllcnNUYWIu
dmFsdWUgJiYgd2luZG93LkxheWVyVHJlZUFnZW50ICYmIGF0dGFjaGVkKSB7Ci0gICAgICAgIGNv
bnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlJldmVhbCBpbiBMYXllcnMgVGFiIiks
ICgpID0+IHsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiUmV2
ZWFsIGluIExheWVycyBUYWIiLCAiT3BlbiBMYXllcnMgdGFiIGFuZCBzZWxlY3QgdGhlIGxheWVy
IGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBub2RlIiksICgpID0+IHsKICAgICAgICAgICAgIFdJLnNo
b3dMYXllcnNUYWIoe25vZGVUb1NlbGVjdDogZG9tTm9kZX0pOwogICAgICAgICB9KTsKICAgICB9
CiAKICAgICBpZiAod2luZG93LlBhZ2VBZ2VudCAmJiBhdHRhY2hlZCkgewotICAgICAgICBjb250
ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJDYXB0dXJlIFNjcmVlbnNob3QiKSwgKCkg
PT4geworICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJDYXB0dXJl
IFNjcmVlbnNob3QiLCAiQ2FwdHVyZSBTY3JlZW5zaG90IG9mIHRoZSBzZWxlY3RlZCBET00gbm9k
ZSIpLCAoKSA9PiB7CiAgICAgICAgICAgICBQYWdlQWdlbnQuc25hcHNob3ROb2RlKGRvbU5vZGUu
aWQsIChlcnJvciwgZGF0YVVSTCkgPT4gewogICAgICAgICAgICAgICAgIGlmIChlcnJvcikgewog
ICAgICAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXQgPSBXSS5tYWluVGFyZ2V0OwpAQCAtMjYy
LDcgKzI2Miw3IEBAIFdJLmFwcGVuZENvbnRleHRNZW51SXRlbXNGb3JET01Ob2RlID0gZnVuY3Rp
b24oY29udGV4dE1lbnUsIGRvbU5vZGUsIG9wdGlvbnMgPSB7CiAgICAgfQogCiAgICAgaWYgKGlz
RWxlbWVudCAmJiBhdHRhY2hlZCkgewotICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJ
LlVJU3RyaW5nKCJTY3JvbGwgSW50byBWaWV3IiksICgpID0+IHsKKyAgICAgICAgY29udGV4dE1l
bnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiU2Nyb2xsIGludG8gVmlldyIsICJTY3JvbGwgc2Vs
ZWN0ZWQgRE9NIG5vZGUgaW50byB2aWV3IG9uIHRoZSBpbnNwZWN0ZWQgd2ViIHBhZ2UiKSwgKCkg
PT4gewogICAgICAgICAgICAgZG9tTm9kZS5zY3JvbGxJbnRvVmlldygpOwogICAgICAgICB9KTsK
ICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMKaW5kZXggNjY3
ZDU1N2VmYzYuLjk4ZmE4MjEyYTA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMKKysrIGIvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NQnJlYWtwb2ludFRyZWVF
bGVtZW50LmpzCkBAIC01MCwxMSArNTAsMTEgQEAgV0kuRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50
ID0gY2xhc3MgRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50IGV4dGVuZHMgV0kuR2VuZXJhbFQKICAg
ICB7CiAgICAgICAgIHN3aXRjaCAodHlwZSkgewogICAgICAgICBjYXNlIFdJLkRPTUJyZWFrcG9p
bnQuVHlwZS5TdWJ0cmVlTW9kaWZpZWQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmco
IlN1YnRyZWUgTW9kaWZpZWQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiU3Vi
dHJlZSBNb2RpZmllZCIsICJBIHN1Ym1lbnUgb2YgJ0JyZWFrIE9uJyIpOwogICAgICAgICBjYXNl
IFdJLkRPTUJyZWFrcG9pbnQuVHlwZS5BdHRyaWJ1dGVNb2RpZmllZDoKLSAgICAgICAgICAgIHJl
dHVybiBXSS5VSVN0cmluZygiQXR0cmlidXRlIE1vZGlmaWVkIik7CisgICAgICAgICAgICByZXR1
cm4gV0kuVUlTdHJpbmcoIkF0dHJpYnV0ZSBNb2RpZmllZCIsICJBIHN1Ym1lbnUgb2YgJ0JyZWFr
IE9uJyIpOwogICAgICAgICBjYXNlIFdJLkRPTUJyZWFrcG9pbnQuVHlwZS5Ob2RlUmVtb3ZlZDoK
LSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTm9kZSBSZW1vdmVkIik7CisgICAgICAg
ICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIk5vZGUgUmVtb3ZlZCIsICJBIHN1Ym1lbnUgb2YgJ0Jy
ZWFrIE9uJyIpOwogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgY29uc29sZS5lcnJvcigi
VW5leHBlY3RlZCBET00gYnJlYWtwb2ludCB0eXBlOiAiICsgdHlwZSk7CiAgICAgICAgICAgICBy
ZXR1cm4gbnVsbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL0RPTU5vZGVUcmVlRWxlbWVudC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL0RPTU5vZGVUcmVlRWxlbWVudC5qcwppbmRleCAxZjVkMTcxODNl
NC4uMDEwZDQ3MjQ4NGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL0RPTU5vZGVUcmVlRWxlbWVudC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJlZUVsZW1lbnQuanMKQEAgLTYxLDcg
KzYxLDcgQEAgV0kuRE9NTm9kZVRyZWVFbGVtZW50ID0gY2xhc3MgRE9NTm9kZVRyZWVFbGVtZW50
IGV4dGVuZHMgV0kuR2VuZXJhbFRyZWVFbGVtZW50CiAKICAgICAgICAgY29udGV4dE1lbnUuYXBw
ZW5kU2VwYXJhdG9yKCk7CiAKLSAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0
cmluZygiUmV2ZWFsIGluIERPTSBUcmVlIiksICgpID0+IHsKKyAgICAgICAgY29udGV4dE1lbnUu
YXBwZW5kSXRlbShXSS5yZXBlYXRpbmdVSVN0cmluZygiUmV2ZWFsIGluIERPTSBUcmVlIiksICgp
ID0+IHsKICAgICAgICAgICAgIFdJLmRvbU1hbmFnZXIuaW5zcGVjdEVsZW1lbnQodGhpcy5yZXBy
ZXNlbnRlZE9iamVjdC5pZCk7CiAgICAgICAgIH0pOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVFbGVtZW50LmpzIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZUVsZW1lbnQu
anMKaW5kZXggNzI0Y2MzZWM5ZGIuLjM0MjZkYjZmY2ZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5qcworKysgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5q
cwpAQCAtNzczLDE0ICs3NzMsMTQgQEAgV0kuRE9NVHJlZUVsZW1lbnQgPSBjbGFzcyBET01UcmVl
RWxlbWVudCBleHRlbmRzIFdJLlRyZWVFbGVtZW50CiAgICAgICAgICAgICBub2RlLnJlbW92ZUF0
dHJpYnV0ZShhdHRyaWJ1dGVOYW1lKTsKICAgICAgICAgfSwgIWF0dHJpYnV0ZSB8fCAhaXNOb25T
aGFkb3dFZGl0YWJsZSk7CiAKLSAgICAgICAgc3ViTWVudXMuZWRpdC5hcHBlbmRJdGVtKFdJLlVJ
U3RyaW5nKCJUYWciKSwgKCkgPT4geworICAgICAgICBzdWJNZW51cy5lZGl0LmFwcGVuZEl0ZW0o
V0kuVUlTdHJpbmcoIlRhZyIsICJBIHN1Ym1lbnUgb2YgJ0VkaXQnIiksICgpID0+IHsKICAgICAg
ICAgICAgIHRoaXMuX3N0YXJ0RWRpdGluZ1RhZ05hbWUoKTsKICAgICAgICAgfSwgIWlzTm9uU2hh
ZG93RWRpdGFibGUpOwogCiAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZFNlcGFyYXRvcigpOwog
CiAgICAgICAgIGlmIChXSS5jc3NNYW5hZ2VyLmNhbkZvcmNlUHNldWRvQ2xhc3NlcygpICYmIGF0
dGFjaGVkKSB7Ci0gICAgICAgICAgICBsZXQgcHNldWRvU3ViTWVudSA9IGNvbnRleHRNZW51LmFw
cGVuZFN1Yk1lbnVJdGVtKFdJLlVJU3RyaW5nKCJGb3JjZWQgUHNldWRvLUNsYXNzZXMiKSk7Cisg
ICAgICAgICAgICBsZXQgcHNldWRvU3ViTWVudSA9IGNvbnRleHRNZW51LmFwcGVuZFN1Yk1lbnVJ
dGVtKFdJLlVJU3RyaW5nKCJGb3JjZWQgUHNldWRvLUNsYXNzZXMiLCAiQSBjb250ZXh0IG1lbnUg
dG8gZm9yY2UgKG92ZXJyaWRlKSBlbGVtZW50J3MgcHNldWRvLWNsYXNzZXMiKSk7CiAKICAgICAg
ICAgICAgIGxldCBlbmFibGVkUHNldWRvQ2xhc3NlcyA9IG5vZGUuZW5hYmxlZFBzZXVkb0NsYXNz
ZXM7CiAgICAgICAgICAgICBXSS5DU1NNYW5hZ2VyLkZvcmNlYWJsZVBzZXVkb0NsYXNzZXMuZm9y
RWFjaCgocHNldWRvQ2xhc3MpID0+IHsKQEAgLTgxMSw5ICs4MTEsOSBAQCBXSS5ET01UcmVlRWxl
bWVudCA9IGNsYXNzIERPTVRyZWVFbGVtZW50IGV4dGVuZHMgV0kuVHJlZUVsZW1lbnQKIAogICAg
ICAgICBsZXQgaXNFZGl0YWJsZU5vZGUgPSBub2RlLm5vZGVUeXBlKCkgPT09IE5vZGUuRUxFTUVO
VF9OT0RFICYmIHRoaXMuZWRpdGFibGU7CiAgICAgICAgIGxldCBmb3JiaWRkZW5DbG9zaW5nVGFn
ID0gV0kuRE9NVHJlZUVsZW1lbnQuRm9yYmlkZGVuQ2xvc2luZ1RhZ0VsZW1lbnRzLmhhcyhub2Rl
Lm5vZGVOYW1lSW5Db3JyZWN0Q2FzZSgpKTsKLSAgICAgICAgc3ViTWVudXMuYWRkLmFwcGVuZEl0
ZW0oV0kuVUlTdHJpbmcoIkNoaWxkIiksIHRoaXMuX2FkZEhUTUwuYmluZCh0aGlzKSwgZm9yYmlk
ZGVuQ2xvc2luZ1RhZyB8fCAhaXNFZGl0YWJsZU5vZGUpOwotICAgICAgICBzdWJNZW51cy5hZGQu
YXBwZW5kSXRlbShXSS5VSVN0cmluZygiUHJldmlvdXMgU2libGluZyIpLCB0aGlzLl9hZGRQcmV2
aW91c1NpYmxpbmcuYmluZCh0aGlzKSwgIWlzRWRpdGFibGVOb2RlKTsKLSAgICAgICAgc3ViTWVu
dXMuYWRkLmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIk5leHQgU2libGluZyIpLCB0aGlzLl9hZGRO
ZXh0U2libGluZy5iaW5kKHRoaXMpLCAhaXNFZGl0YWJsZU5vZGUpOworICAgICAgICBzdWJNZW51
cy5hZGQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiQ2hpbGQiLCAiQSBzdWJtZW51IG9mICdBZGQn
IiksIHRoaXMuX2FkZEhUTUwuYmluZCh0aGlzKSwgZm9yYmlkZGVuQ2xvc2luZ1RhZyB8fCAhaXNF
ZGl0YWJsZU5vZGUpOworICAgICAgICBzdWJNZW51cy5hZGQuYXBwZW5kSXRlbShXSS5VSVN0cmlu
ZygiUHJldmlvdXMgU2libGluZyIsICJBIHN1Ym1lbnUgb2YgJ0FkZCciKSwgdGhpcy5fYWRkUHJl
dmlvdXNTaWJsaW5nLmJpbmQodGhpcyksICFpc0VkaXRhYmxlTm9kZSk7CisgICAgICAgIHN1Yk1l
bnVzLmFkZC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJOZXh0IFNpYmxpbmciLCAiQSBzdWJtZW51
IG9mICdBZGQnIiksIHRoaXMuX2FkZE5leHRTaWJsaW5nLmJpbmQodGhpcyksICFpc0VkaXRhYmxl
Tm9kZSk7CiAKICAgICAgICAgc3ViTWVudXMuZWRpdC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJI
VE1MIiksIHRoaXMuX2VkaXRBc0hUTUwuYmluZCh0aGlzKSwgIXRoaXMuZWRpdGFibGUpOwogICAg
ICAgICBzdWJNZW51cy5jb3B5LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIkhUTUwiKSwgdGhpcy5f
Y29weUhUTUwuYmluZCh0aGlzKSwgbm9kZS5pc1BzZXVkb0VsZW1lbnQoKSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EZWJ1Z2dlclNpZGVi
YXJQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0Rl
YnVnZ2VyU2lkZWJhclBhbmVsLmpzCmluZGV4IDhjMWM1NmI5ZDI2Li5kODM1YTY2MDQ3NiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGVidWdn
ZXJTaWRlYmFyUGFuZWwuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvRGVidWdnZXJTaWRlYmFyUGFuZWwuanMKQEAgLTQ3NiwxMyArNDc2LDEzIEBAIFdJ
LkRlYnVnZ2VyU2lkZWJhclBhbmVsID0gY2xhc3MgRGVidWdnZXJTaWRlYmFyUGFuZWwgZXh0ZW5k
cyBXSS5OYXZpZ2F0aW9uU2lkZWJhCiAKICAgICAgICAgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRl
YnVnZ2VyTWFuYWdlci5hbGxFeGNlcHRpb25zQnJlYWtwb2ludCkgewogICAgICAgICAgICAgb3B0
aW9ucy5jbGFzc05hbWUgPSBXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbC5FeGNlcHRpb25JY29uU3R5
bGVDbGFzc05hbWU7Ci0gICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmcoIkFs
bCBFeGNlcHRpb25zIik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kucmVwZWF0aW5n
VUlTdHJpbmcoIkFsbCBFeGNlcHRpb25zIik7CiAgICAgICAgIH0gZWxzZSBpZiAoYnJlYWtwb2lu
dCA9PT0gV0kuZGVidWdnZXJNYW5hZ2VyLnVuY2F1Z2h0RXhjZXB0aW9uc0JyZWFrcG9pbnQpIHsK
ICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NOYW1lID0gV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwu
RXhjZXB0aW9uSWNvblN0eWxlQ2xhc3NOYW1lOwotICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9
IFdJLlVJU3RyaW5nKCJVbmNhdWdodCBFeGNlcHRpb25zIik7CisgICAgICAgICAgICBvcHRpb25z
LnRpdGxlID0gV0kucmVwZWF0aW5nVUlTdHJpbmcoIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiKTsKICAg
ICAgICAgfSBlbHNlIGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIuYXNzZXJ0
aW9uRmFpbHVyZXNCcmVha3BvaW50KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9
IFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsLkFzc2VydGlvbkljb25TdHlsZUNsYXNzTmFtZTsKLSAg
ICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiQXNzZXJ0aW9uIEZhaWx1cmVz
Iik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kucmVwZWF0aW5nVUlTdHJpbmcoIkFz
c2VydGlvbiBGYWlsdXJlcyIpOwogICAgICAgICB9IGVsc2UgaWYgKGJyZWFrcG9pbnQgaW5zdGFu
Y2VvZiBXSS5ET01CcmVha3BvaW50KSB7CiAgICAgICAgICAgICBpZiAoIWJyZWFrcG9pbnQuZG9t
Tm9kZUlkZW50aWZpZXIpCiAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7CkBAIC01MTYsNyAr
NTE2LDcgQEAgV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwgPSBjbGFzcyBEZWJ1Z2dlclNpZGViYXJQ
YW5lbCBleHRlbmRzIFdJLk5hdmlnYXRpb25TaWRlYmEKIAogICAgICAgICAgICAgaWYgKGJyZWFr
cG9pbnQgPT09IFdJLmRvbURlYnVnZ2VyTWFuYWdlci5hbGxSZXF1ZXN0c0JyZWFrcG9pbnQpIHsK
ICAgICAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9IFdJLkRlYnVnZ2VyU2lkZWJhclBh
bmVsLkFzc2VydGlvbkljb25TdHlsZUNsYXNzTmFtZTsKLSAgICAgICAgICAgICAgICBvcHRpb25z
LnRpdGxlID0gV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIpOworICAgICAgICAgICAgICAgIG9w
dGlvbnMudGl0bGUgPSBXSS5yZXBlYXRpbmdVSVN0cmluZygiQWxsIFJlcXVlc3RzIik7CiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBsZXQgc291cmNlQ29kZSA9
IGJyZWFrcG9pbnQuc291cmNlQ29kZUxvY2F0aW9uICYmIGJyZWFrcG9pbnQuc291cmNlQ29kZUxv
Y2F0aW9uLmRpc3BsYXlTb3VyY2VDb2RlOwpAQCAtMTQ1OCw3ICsxNDU4LDcgQEAgV0kuRGVidWdn
ZXJTaWRlYmFyUGFuZWwgPSBjbGFzcyBEZWJ1Z2dlclNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5h
dmlnYXRpb25TaWRlYmEKICAgICAgICAgaWYgKEluc3BlY3RvckJhY2tlbmQuZG9tYWlucy5EZWJ1
Z2dlci5zZXRQYXVzZU9uQXNzZXJ0aW9ucykgewogICAgICAgICAgICAgbGV0IGFzc2VydGlvbkZh
aWx1cmVzQnJlYWtwb2ludFNob3duID0gV0kuc2V0dGluZ3Muc2hvd0Fzc2VydGlvbkZhaWx1cmVz
QnJlYWtwb2ludC52YWx1ZTsKIAotICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2ti
b3hJdGVtKFdJLlVJU3RyaW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiKSwgKCkgPT4geworICAgICAg
ICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2tib3hJdGVtKFdJLnJlcGVhdGluZ1VJU3RyaW5n
KCJBc3NlcnRpb24gRmFpbHVyZXMiKSwgKCkgPT4gewogICAgICAgICAgICAgICAgIGlmIChhc3Nl
cnRpb25GYWlsdXJlc0JyZWFrcG9pbnRTaG93bikKICAgICAgICAgICAgICAgICAgICAgV0kuZGVi
dWdnZXJNYW5hZ2VyLnJlbW92ZUJyZWFrcG9pbnQoV0kuZGVidWdnZXJNYW5hZ2VyLmFzc2VydGlv
bkZhaWx1cmVzQnJlYWtwb2ludCk7CiAgICAgICAgICAgICAgICAgZWxzZSB7CkBAIC0xNDgwLDcg
KzE0ODAsNyBAQCBXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbCA9IGNsYXNzIERlYnVnZ2VyU2lkZWJh
clBhbmVsIGV4dGVuZHMgV0kuTmF2aWdhdGlvblNpZGViYQogCiAgICAgICAgICAgICBsZXQgYWxs
UmVxdWVzdHNCcmVha3BvaW50U2hvd24gPSBXSS5zZXR0aW5ncy5zaG93QWxsUmVxdWVzdHNCcmVh
a3BvaW50LnZhbHVlOwogCi0gICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0
ZW0oV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIpLCAoKSA9PiB7CisgICAgICAgICAgICBjb250
ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0ZW0oV0kucmVwZWF0aW5nVUlTdHJpbmcoIkFsbCBSZXF1
ZXN0cyIpLCAoKSA9PiB7CiAgICAgICAgICAgICAgICAgaWYgKGFsbFJlcXVlc3RzQnJlYWtwb2lu
dFNob3duKQogICAgICAgICAgICAgICAgICAgICBXSS5kb21EZWJ1Z2dlck1hbmFnZXIucmVtb3Zl
VVJMQnJlYWtwb2ludChXSS5kb21EZWJ1Z2dlck1hbmFnZXIuYWxsUmVxdWVzdHNCcmVha3BvaW50
KTsKICAgICAgICAgICAgICAgICBlbHNlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0xheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwuanMg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRh
aWxzU2lkZWJhclBhbmVsLmpzCmluZGV4IDJiNjUxM2E3ZmQyLi5jMWFkNmZhYTRjZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJUcmVl
RGV0YWlsc1NpZGViYXJQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsLmpzCkBAIC0xMzYsNyAr
MTM2LDcgQEAgV0kuTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbCA9IGNsYXNzIExheWVyVHJl
ZURldGFpbHNTaWRlYmFyUGFuZWwgZXh0ZW5kcyBXSS4KICAgICAgICAgY29sdW1ucy5uYW1lLnRp
dGxlID0gV0kuVUlTdHJpbmcoIk5vZGUiKTsKICAgICAgICAgY29sdW1ucy5uYW1lLnNvcnRhYmxl
ID0gZmFsc2U7CiAKLSAgICAgICAgY29sdW1ucy5wYWludENvdW50LnRpdGxlID0gV0kuVUlTdHJp
bmcoIlBhaW50cyIpOworICAgICAgICBjb2x1bW5zLnBhaW50Q291bnQudGl0bGUgPSBXSS5VSVN0
cmluZygiUGFpbnRzIiwgIlBhaW50cyBAIENvbHVtbiB0aXRsZSIsICJBIGNvdW50IG9mIGhvdyBt
YW55IHRpbWVzIGFuIGVsZW1lbnQgd2FzIHBhaW50ZWQgKHJlbmRlcmVkKSIpOwogICAgICAgICBj
b2x1bW5zLnBhaW50Q291bnQuc29ydGFibGUgPSB0cnVlOwogICAgICAgICBjb2x1bW5zLnBhaW50
Q291bnQuYWxpZ25lZCA9ICJyaWdodCI7CiAgICAgICAgIGNvbHVtbnMucGFpbnRDb3VudC53aWR0
aCA9ICI3MHB4IjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL05ldHdvcmtUYWJsZUNvbnRlbnRWaWV3LmpzIGIvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTmV0d29ya1RhYmxlQ29udGVudFZpZXcuanMKaW5kZXgg
ODUyM2YwZTIxYTcuLmQ5NjY3NzAxZWQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9OZXR3b3JrVGFibGVDb250ZW50Vmlldy5qcworKysgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9OZXR3b3JrVGFibGVDb250
ZW50Vmlldy5qcwpAQCAtMjEwLDcgKzIxMCw3IEBAIFdJLk5ldHdvcmtUYWJsZUNvbnRlbnRWaWV3
ID0gY2xhc3MgTmV0d29ya1RhYmxlQ29udGVudFZpZXcgZXh0ZW5kcyBXSS5Db250ZW50VmllCiAg
ICAgICAgIGNhc2UgV0kuUmVzb3VyY2UuVHlwZS5YSFI6CiAgICAgICAgICAgICByZXR1cm4gIlhI
UiI7CiAgICAgICAgIGNhc2UgV0kuUmVzb3VyY2UuVHlwZS5GZXRjaDoKLSAgICAgICAgICAgIHJl
dHVybiBXSS5VSVN0cmluZygiRmV0Y2giKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRp
bmdVSVN0cmluZygiRmV0Y2giKTsKICAgICAgICAgY2FzZSBXSS5SZXNvdXJjZS5UeXBlLlBpbmc6
CiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlBpbmciKTsKICAgICAgICAgY2FzZSBX
SS5SZXNvdXJjZS5UeXBlLkJlYWNvbjoKQEAgLTExNzQsNyArMTE3NCw3IEBAIFdJLk5ldHdvcmtU
YWJsZUNvbnRlbnRWaWV3ID0gY2xhc3MgTmV0d29ya1RhYmxlQ29udGVudFZpZXcgZXh0ZW5kcyBX
SS5Db250ZW50VmllCiAgICAgICAgICAgICBhbGlnbjogInJpZ2h0IiwKICAgICAgICAgfSk7CiAK
LSAgICAgICAgdGhpcy5fdHJhbnNmZXJTaXplQ29sdW1uID0gbmV3IFdJLlRhYmxlQ29sdW1uKCJ0
cmFuc2ZlclNpemUiLCBXSS5VSVN0cmluZygiVHJhbnNmZXIgU2l6ZSIpLCB7CisgICAgICAgIHRo
aXMuX3RyYW5zZmVyU2l6ZUNvbHVtbiA9IG5ldyBXSS5UYWJsZUNvbHVtbigidHJhbnNmZXJTaXpl
IiwgV0kuVUlTdHJpbmcoIlRyYW5zZmVyIFNpemUiLCAiQW1vdW50IG9mIGRhdGEgc2VudCBvdmVy
IHRoZSBuZXR3b3JrIiksIHsKICAgICAgICAgICAgIG1pbldpZHRoOiAxMDAsCiAgICAgICAgICAg
ICBtYXhXaWR0aDogMTUwLAogICAgICAgICAgICAgaW5pdGlhbFdpZHRoOiAxMDAsCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VzTmF2
aWdhdGlvblNpZGViYXJQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL1NvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmpzCmluZGV4IDU2OGEzY2Q1
ZGE5Li43MGE2ZTg3MTg3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvVmlld3MvU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMKKysrIGIvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlc05hdmlnYXRpb25T
aWRlYmFyUGFuZWwuanMKQEAgLTg4NSwxMyArODg1LDEzIEBAIFdJLlNvdXJjZXNOYXZpZ2F0aW9u
U2lkZWJhclBhbmVsID0gY2xhc3MgU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwgZXh0ZW5k
cyBXCiAKICAgICAgICAgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRlYnVnZ2VyTWFuYWdlci5hbGxF
eGNlcHRpb25zQnJlYWtwb2ludCkgewogICAgICAgICAgICAgb3B0aW9ucy5jbGFzc05hbWUgPSAi
YnJlYWtwb2ludC1leGNlcHRpb24taWNvbiI7Ci0gICAgICAgICAgICBvcHRpb25zLnRpdGxlID0g
V0kuVUlTdHJpbmcoIkFsbCBFeGNlcHRpb25zIik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxl
ID0gV0kucmVwZWF0aW5nVUlTdHJpbmcoIkFsbCBFeGNlcHRpb25zIik7CiAgICAgICAgIH0gZWxz
ZSBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZGVidWdnZXJNYW5hZ2VyLnVuY2F1Z2h0RXhjZXB0aW9u
c0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NOYW1lID0gImJyZWFrcG9p
bnQtZXhjZXB0aW9uLWljb24iOwotICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3Ry
aW5nKCJVbmNhdWdodCBFeGNlcHRpb25zIik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0g
V0kucmVwZWF0aW5nVUlTdHJpbmcoIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiKTsKICAgICAgICAgfSBl
bHNlIGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIuYXNzZXJ0aW9uRmFpbHVy
ZXNCcmVha3BvaW50KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9ICJicmVha3Bv
aW50LWFzc2VydGlvbi1pY29uIjsKLSAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0
cmluZygiQXNzZXJ0aW9uIEZhaWx1cmVzIik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0g
V0kucmVwZWF0aW5nVUlTdHJpbmcoIkFzc2VydGlvbiBGYWlsdXJlcyIpOwogICAgICAgICB9IGVs
c2UgaWYgKGJyZWFrcG9pbnQgaW5zdGFuY2VvZiBXSS5ET01CcmVha3BvaW50KSB7CiAgICAgICAg
ICAgICBpZiAoIWJyZWFrcG9pbnQuZG9tTm9kZUlkZW50aWZpZXIpCiAgICAgICAgICAgICAgICAg
cmV0dXJuIG51bGw7CkBAIC05MjUsNyArOTI1LDcgQEAgV0kuU291cmNlc05hdmlnYXRpb25TaWRl
YmFyUGFuZWwgPSBjbGFzcyBTb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCBleHRlbmRzIFcK
IAogICAgICAgICAgICAgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRvbURlYnVnZ2VyTWFuYWdlci5h
bGxSZXF1ZXN0c0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFt
ZSA9ICJicmVha3BvaW50LWFzc2VydGlvbi1pY29uIjsKLSAgICAgICAgICAgICAgICBvcHRpb25z
LnRpdGxlID0gV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIpOworICAgICAgICAgICAgICAgIG9w
dGlvbnMudGl0bGUgPSBXSS5yZXBlYXRpbmdVSVN0cmluZygiQWxsIFJlcXVlc3RzIik7CiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBsZXQgc291cmNlQ29kZSA9
IGJyZWFrcG9pbnQuc291cmNlQ29kZUxvY2F0aW9uICYmIGJyZWFrcG9pbnQuc291cmNlQ29kZUxv
Y2F0aW9uLmRpc3BsYXlTb3VyY2VDb2RlOwpAQCAtMTUwNCw3ICsxNTA0LDcgQEAgV0kuU291cmNl
c05hdmlnYXRpb25TaWRlYmFyUGFuZWwgPSBjbGFzcyBTb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQ
YW5lbCBleHRlbmRzIFcKICAgICAgICAgaWYgKEluc3BlY3RvckJhY2tlbmQuZG9tYWlucy5EZWJ1
Z2dlci5zZXRQYXVzZU9uQXNzZXJ0aW9ucykgewogICAgICAgICAgICAgbGV0IGFzc2VydGlvbkZh
aWx1cmVzQnJlYWtwb2ludFNob3duID0gV0kuc2V0dGluZ3Muc2hvd0Fzc2VydGlvbkZhaWx1cmVz
QnJlYWtwb2ludC52YWx1ZTsKIAotICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2ti
b3hJdGVtKFdJLlVJU3RyaW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiKSwgKCkgPT4geworICAgICAg
ICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2tib3hJdGVtKFdJLnJlcGVhdGluZ1VJU3RyaW5n
KCJBc3NlcnRpb24gRmFpbHVyZXMiKSwgKCkgPT4gewogICAgICAgICAgICAgICAgIGlmIChhc3Nl
cnRpb25GYWlsdXJlc0JyZWFrcG9pbnRTaG93bikKICAgICAgICAgICAgICAgICAgICAgV0kuZGVi
dWdnZXJNYW5hZ2VyLnJlbW92ZUJyZWFrcG9pbnQoV0kuZGVidWdnZXJNYW5hZ2VyLmFzc2VydGlv
bkZhaWx1cmVzQnJlYWtwb2ludCk7CiAgICAgICAgICAgICAgICAgZWxzZSB7CkBAIC0xNTI2LDcg
KzE1MjYsNyBAQCBXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNzIFNvdXJj
ZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsIGV4dGVuZHMgVwogCiAgICAgICAgICAgICBsZXQgYWxs
UmVxdWVzdHNCcmVha3BvaW50U2hvd24gPSBXSS5zZXR0aW5ncy5zaG93QWxsUmVxdWVzdHNCcmVh
a3BvaW50LnZhbHVlOwogCi0gICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0
ZW0oV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIpLCAoKSA9PiB7CisgICAgICAgICAgICBjb250
ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0ZW0oV0kucmVwZWF0aW5nVUlTdHJpbmcoIkFsbCBSZXF1
ZXN0cyIpLCAoKSA9PiB7CiAgICAgICAgICAgICAgICAgaWYgKGFsbFJlcXVlc3RzQnJlYWtwb2lu
dFNob3duKQogICAgICAgICAgICAgICAgICAgICBXSS5kb21EZWJ1Z2dlck1hbmFnZXIucmVtb3Zl
VVJMQnJlYWtwb2ludChXSS5kb21EZWJ1Z2dlck1hbmFnZXIuYWxsUmVxdWVzdHNCcmVha3BvaW50
KTsKICAgICAgICAgICAgICAgICBlbHNlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNl
Y3Rpb24uanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJl
YWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9uLmpzCmluZGV4IDY3ZjZhNzcyZDA0Li43
NDJhYWM1MzM0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlvbi5qcworKysgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldENTU1N0
eWxlRGVjbGFyYXRpb25TZWN0aW9uLmpzCkBAIC0zMTUsNyArMzE1LDcgQEAgV0kuU3ByZWFkc2hl
ZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlvbiA9IGNsYXNzIFNwcmVhZHNoZWV0Q1NTU3R5bGVE
ZWNsYXJhdGlvblMKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgV0kuQ1NTU3R5
bGVEZWNsYXJhdGlvbi5UeXBlLklubGluZToKLSAgICAgICAgICAgIHRoaXMuX3NlbGVjdG9yRWxl
bWVudC50ZXh0Q29udGVudCA9IFdJLlVJU3RyaW5nKCJTdHlsZSBBdHRyaWJ1dGUiKTsKKyAgICAg
ICAgICAgIHRoaXMuX3NlbGVjdG9yRWxlbWVudC50ZXh0Q29udGVudCA9IFdJLlVJU3RyaW5nKCJT
dHlsZSBBdHRyaWJ1dGUiLCAiQ1NTIHByb3BlcnRpZXMgZGVmaW5lZCB2aWEgSFRNTCBzdHlsZSBh
dHRyaWJ1dGUiKTsKICAgICAgICAgICAgIHRoaXMuX3NlbGVjdG9yRWxlbWVudC5jbGFzc0xpc3Qu
YWRkKCJzdHlsZS1hdHRyaWJ1dGUiKTsKICAgICAgICAgICAgIGJyZWFrOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldFJ1
bGVzU3R5bGVEZXRhaWxzUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9TcHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwuanMKaW5kZXggZTFk
NGViZWQzMTIuLjg3Yjg5MGJhNTViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwuanMK
KysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hl
ZXRSdWxlc1N0eWxlRGV0YWlsc1BhbmVsLmpzCkBAIC0yNTYsNyArMjU2LDcgQEAgV0kuU3ByZWFk
c2hlZXRSdWxlc1N0eWxlRGV0YWlsc1BhbmVsID0gY2xhc3MgU3ByZWFkc2hlZXRSdWxlc1N0eWxl
RGV0YWlsc1BhbmVsIGUKIAogICAgICAgICBsZXQgYWRkU2VjdGlvbiA9IChzZWN0aW9uKSA9PiB7
CiAgICAgICAgICAgICBpZiAoc2VjdGlvbi5zdHlsZS5pbmhlcml0ZWQgJiYgKCFwcmV2aW91c1N0
eWxlIHx8IHByZXZpb3VzU3R5bGUubm9kZSAhPT0gc2VjdGlvbi5zdHlsZS5ub2RlKSkKLSAgICAg
ICAgICAgICAgICBhZGRIZWFkZXIoV0kuVUlTdHJpbmcoIkluaGVyaXRlZCBGcm9tIiksIHNlY3Rp
b24uc3R5bGUubm9kZSk7CisgICAgICAgICAgICAgICAgYWRkSGVhZGVyKFdJLlVJU3RyaW5nKCJJ
bmhlcml0ZWQgRnJvbSIsICJBIHNlY3Rpb24gb2YgQ1NTIHJ1bGVzIGluaGVyaXRlZCBmcm9tIGFu
b3RoZXIgQ1NTIHJ1bGUiKSwgc2VjdGlvbi5zdHlsZS5ub2RlKTsKIAogICAgICAgICAgICAgaWYg
KCFzZWN0aW9uLmlzRGVzY2VuZGFudE9mKHRoaXMpKSB7CiAgICAgICAgICAgICAgICAgbGV0IHJl
ZmVyZW5jZVZpZXcgPSB0aGlzLnN1YnZpZXdzW3RoaXMuX3NlY3Rpb25zLmxlbmd0aF07CmRpZmYg
LS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYmRmYWIxMWE0
NzkuLjU4MGE4ZWEyMWQ3IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTktMDQtMTEgIE5pa2l0YSBWYXNpbHlldiAg
PG52YXNpbHlldkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUHJvdmlkZSBV
SVN0cmluZyBkZXNjcmlwdGlvbnMgdG8gaW1wcm92ZSBsb2NhbGl6YXRpb25zCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUxMzIKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzQ4NDU3ODE3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFsbG93IFdJLlVJU3RyaW5nIHRvIHRha2U6CisgICAgICAgIC0gV0ku
VUlTdHJpbmcoc3RyaW5nLCBrZXksIGNvbW1lbnQpCisgICAgICAgIC0gV0kuVUlTdHJpbmcoc3Ry
aW5nLCBjb21tZW50KQorICAgICAgICAtIFdJLlVJU3RyaW5nKHN0cmluZykKKworICAgICAgICAq
IFNjcmlwdHMvZXh0cmFjdC1sb2NhbGl6YWJsZS1qcy1zdHJpbmdzOgorCiAyMDE5LTA0LTEwICBU
YWRldSBaYWdhbGxvICA8dHphZ2FsbG9AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0
IGZvciBpbmNyZW1lbnRhbCBieXRlY29kZSBjYWNoZSB1cGRhdGVzCmRpZmYgLS1naXQgYS9Ub29s
cy9TY3JpcHRzL2V4dHJhY3QtbG9jYWxpemFibGUtanMtc3RyaW5ncyBiL1Rvb2xzL1NjcmlwdHMv
ZXh0cmFjdC1sb2NhbGl6YWJsZS1qcy1zdHJpbmdzCmluZGV4IDM0YjVhYzc3OTNiLi42OGM3MGJk
ZWM5NyAxMDA3NTUKLS0tIGEvVG9vbHMvU2NyaXB0cy9leHRyYWN0LWxvY2FsaXphYmxlLWpzLXN0
cmluZ3MKKysrIGIvVG9vbHMvU2NyaXB0cy9leHRyYWN0LWxvY2FsaXphYmxlLWpzLXN0cmluZ3MK
QEAgLTc0LDcgKzc0LDE1IEBAIGZvciBteSAkZmlsZSAoc29ydCBAZmlsZXMpIHsKICAgICAgICAg
Y2hvbXA7CiAKICAgICAgICAgIyBIYW5kbGUgV2ViSW5zcGVjdG9yIHN0cmluZ3MuIFByaW50cyBh
IHdhcm5pbmcgaWYgYSBub24tc3RyaW5nIGxpdGVyYWwgaXMgcGFzc2VkIHRvIFdJLlVJU3RyaW5n
KCkuCi0gICAgICAgIEhhbmRsZVVJU3RyaW5nKCQxLCAkMiB8fCAkMSwgJDMgfHwgIiIsICRmaWxl
LCAkLikgd2hpbGUgcy9XSVwuVUlTdHJpbmdcKCIoW14iXSspIig/OixccyoiKFteIl0rKSIoPzos
XHMqIihbXiJdKykiKT8pP1wpLy87CisgICAgICAgICMgQWxsb3c6IFdJLlVJU3RyaW5nKHN0cmlu
ZywgY29tbWVudCkKKyAgICAgICAgIyAgICAgICAgV0kuVUlTdHJpbmcoc3RyaW5nLCBrZXksIGNv
bW1lbnQpCisgICAgICAgIEhhbmRsZVVJU3RyaW5nKAorICAgICAgICAgICAgJDEsCisgICAgICAg
ICAgICAoJDMgfHwgKGRlZmluZWQgJDMgYW5kIGxlbmd0aCAkMyA9PSAwKSkgPyAkMiA6ICQxLAor
ICAgICAgICAgICAgKCQzIHx8IChkZWZpbmVkICQzIGFuZCBsZW5ndGggJDMgPT0gMCkpID8gJDMg
OiAkMiB8fCAiIiwKKyAgICAgICAgICAgICRmaWxlLAorICAgICAgICAgICAgJC4KKyAgICAgICAg
KSB3aGlsZSBzL1dJXC5VSVN0cmluZ1woIihbXiJdKykiKD86LFxzKiIoW14iXSopIig/Oixccyoi
KFteIl0qKSIpPyk/XCkvLzsKICAgICAgICAgcHJpbnQgIiRmaWxlOiQuOldBUk5JTkc6ICQmXG4i
IHdoaWxlIHMvV0lcLlVJU3RyaW5nXCguKj9cKS8vOwogCiAgICAgICAgICMgSGFuZGxlIHN0cmlu
Z3MgZm9yIG90aGVyIHByb2plY3RzIHRoYXQgYWxzbyB1c2UgdGhpcyBzY3JpcHQuCg==
</data>
<flag name="review"
          id="383622"
          type_id="1"
          status="-"
          setter="hi"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>368218</attachid>
            <date>2019-04-25 00:32:52 -0700</date>
            <delta_ts>2019-05-04 17:10:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>44827</size>
            <attacher name="Nikita Vasilyev">nvasilyev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IGY2MjJhZDI4YzhlLi5mMmVmYjUxYzU4MiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTkgQEAKKzIwMTktMDQtMjUgIE5pa2l0
YSBWYXNpbHlldiAgPG52YXNpbHlldkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogUHJvdmlkZSBVSVN0cmluZyBkZXNjcmlwdGlvbnMgdG8gaW1wcm92ZSBsb2NhbGl6YXRpb25z
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUxMzIK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ4NDU3ODE3PgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2Nh
bGl6ZWRTdHJpbmdzLmpzOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvQmFzZS9Mb2FkTG9jYWxp
emVkU3RyaW5ncy5qczoKKyAgICAgICAgKFdJLlVJU3RyaW5nKToKKyAgICAgICAgKFdJLnJlcGVh
dGVkVUlTdHJpbmcudGltZWxpbmVSZWNvcmRMYXlvdXQpOgorICAgICAgICAoV0kucmVwZWF0ZWRV
SVN0cmluZy50aW1lbGluZVJlY29yZFBhaW50KToKKyAgICAgICAgKFdJLnJlcGVhdGVkVUlTdHJp
bmcudGltZWxpbmVSZWNvcmRDb21wb3NpdGUpOgorICAgICAgICAoV0kucmVwZWF0ZWRVSVN0cmlu
Zy5hbGxFeGNlcHRpb25zKToKKyAgICAgICAgKFdJLnJlcGVhdGVkVUlTdHJpbmcudW5jYXVnaHRF
eGNlcHRpb25zKToKKyAgICAgICAgKFdJLnJlcGVhdGVkVUlTdHJpbmcuYXNzZXJ0aW9uRmFpbHVy
ZXMpOgorICAgICAgICAoV0kucmVwZWF0ZWRVSVN0cmluZy5hbGxSZXF1ZXN0cyk6CisgICAgICAg
IChXSS5yZXBlYXRlZFVJU3RyaW5nLmZldGNoKToKKyAgICAgICAgKFdJLnJlcGVhdGVkVUlTdHJp
bmcucmV2ZWFsSW5ET01UcmVlKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL01vZGVscy9MYXlv
dXRUaW1lbGluZVJlY29yZC5qczoKKyAgICAgICAgKFdJLkxheW91dFRpbWVsaW5lUmVjb3JkLmRp
c3BsYXlOYW1lRm9yRXZlbnRUeXBlKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL01vZGVscy9S
ZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpzOgorICAgICAgICAoV0kuUmVuZGVyaW5nRnJh
bWVUaW1lbGluZVJlY29yZC5kaXNwbGF5TmFtZUZvclRhc2tUeXBlKToKKyAgICAgICAgKiBVc2Vy
SW50ZXJmYWNlL01vZGVscy9SZXNvdXJjZS5qczoKKyAgICAgICAgKFdJLlJlc291cmNlLmRpc3Bs
YXlOYW1lRm9yVHlwZSk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9BdWRpdFRlc3RH
cm91cENvbnRlbnRWaWV3LmpzOgorICAgICAgICAoV0kuQXVkaXRUZXN0R3JvdXBDb250ZW50Vmll
dy5wcm90b3R5cGUubGF5b3V0KToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0NQVVRp
bWVsaW5lVmlldy5qczoKKyAgICAgICAgKFdJLkNQVVRpbWVsaW5lVmlldy5kaXNwbGF5TmFtZUZv
clNhbXBsZVR5cGUpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvQ29udGV4dE1lbnVV
dGlsaXRpZXMuanM6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50
VHJlZUVsZW1lbnQuanM6CisgICAgICAgIChXSS5ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuZGlz
cGxheU5hbWVGb3JUeXBlKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0RPTU5vZGVU
cmVlRWxlbWVudC5qczoKKyAgICAgICAgKFdJLkRPTU5vZGVUcmVlRWxlbWVudC5wcm90b3R5cGUu
cG9wdWxhdGVDb250ZXh0TWVudSk6CisgICAgICAgIChXSS5ET01Ob2RlVHJlZUVsZW1lbnQpOgor
ICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZUVsZW1lbnQuanM6CisgICAgICAg
IChXSS5ET01UcmVlRWxlbWVudC5wcm90b3R5cGUuX3BvcHVsYXRlVGFnQ29udGV4dE1lbnUpOgor
ICAgICAgICAoV0kuRE9NVHJlZUVsZW1lbnQucHJvdG90eXBlLl9wb3B1bGF0ZU5vZGVDb250ZXh0
TWVudSk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9EZWJ1Z2dlclNpZGViYXJQYW5l
bC5qczoKKyAgICAgICAgKFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsLnByb3RvdHlwZS5fYWRkQnJl
YWtwb2ludCk6CisgICAgICAgIChXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbC5wcm90b3R5cGUuX2hh
bmRsZUNyZWF0ZUJyZWFrcG9pbnRNb3VzZURvd24pOgorICAgICAgICAoV0kuRGVidWdnZXJTaWRl
YmFyUGFuZWwpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJUcmVlRGV0YWls
c1NpZGViYXJQYW5lbC5qczoKKyAgICAgICAgKFdJLkxheWVyVHJlZURldGFpbHNTaWRlYmFyUGFu
ZWwucHJvdG90eXBlLl9idWlsZERhdGFHcmlkU2VjdGlvbik6CisgICAgICAgICogVXNlckludGVy
ZmFjZS9WaWV3cy9OZXR3b3JrVGFibGVDb250ZW50Vmlldy5qczoKKyAgICAgICAgKFdJLk5ldHdv
cmtUYWJsZUNvbnRlbnRWaWV3LnNob3J0RGlzcGxheU5hbWVGb3JSZXNvdXJjZVR5cGUpOgorICAg
ICAgICAoV0kuTmV0d29ya1RhYmxlQ29udGVudFZpZXcucHJvdG90eXBlLmluaXRpYWxMYXlvdXQp
OgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlc05hdmlnYXRpb25TaWRlYmFy
UGFuZWwuanM6CisgICAgICAgIChXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbC5wcm90
b3R5cGUuX2FkZEJyZWFrcG9pbnQpOgorICAgICAgICAoV0kuU291cmNlc05hdmlnYXRpb25TaWRl
YmFyUGFuZWwucHJvdG90eXBlLl9oYW5kbGVDcmVhdGVCcmVha3BvaW50TW91c2VEb3duKToKKyAg
ICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlv
blNlY3Rpb24uanM6CisgICAgICAgIChXSS5TcHJlYWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25T
ZWN0aW9uLnByb3RvdHlwZS5fcmVuZGVyU2VsZWN0b3IpOgorICAgICAgICAqIFVzZXJJbnRlcmZh
Y2UvVmlld3MvU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWlsc1BhbmVsLmpzOgorICAgICAgICAo
V0kuU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWlsc1BhbmVsLnByb3RvdHlwZS5sYXlvdXQpOgor
CiAyMDE5LTA0LTIzICBEZXZpbiBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KIAogICAgICAg
ICBXZWIgSW5zcGVjdG9yOiBVbmNhdWdodCBFeGNlcHRpb246IG51bGwgaXMgbm90IGFuIG9iamVj
dCAoZXZhbHVhdGluZyAndGhpcy5vd25lckRvY3VtZW50LmZyYW1lSWRlbnRpZmllcicpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2Nh
bGl6ZWRTdHJpbmdzLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4u
bHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcwppbmRleCA1MWE2ZTg1OGY3MC4uODM1ZWI1ZjMzNTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9q
L2xvY2FsaXplZFN0cmluZ3MuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXph
dGlvbnMvZW4ubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcwpAQCAtOTcsOCArOTcsMTAgQEAgbG9j
YWxpemVkU3RyaW5nc1siQWRkaXRpb25zIl0gPSAiQWRkaXRpb25zIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkFkZHJlc3MiXSA9ICJBZGRyZXNzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFsbCJdID0gIkFs
bCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBbGwgQ2hhbmdlcyJdID0gIkFsbCBDaGFuZ2VzIjsKKy8q
IEJyZWFrIChwYXVzZSkgb24gYWxsIGV4Y2VwdGlvbnMgKi8KIGxvY2FsaXplZFN0cmluZ3NbIkFs
bCBFeGNlcHRpb25zIl0gPSAiQWxsIEV4Y2VwdGlvbnMiOwogbG9jYWxpemVkU3RyaW5nc1siQWxs
IExheWVycyJdID0gIkFsbCBMYXllcnMiOworLyogQSBzdWJtZW51IGl0ZW0gb2YgJ0JyZWFrIG9u
JyB0aGF0IGJyZWFrcyAocGF1c2VzKSBiZWZvcmUgYWxsIG5ldHdvcmsgcmVxdWVzdHMgKi8KIGxv
Y2FsaXplZFN0cmluZ3NbIkFsbCBSZXF1ZXN0cyJdID0gIkFsbCBSZXF1ZXN0cyI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJBbGwgUmVzb3VyY2VzIl0gPSAiQWxsIFJlc291cmNlcyI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJBbGwgU3RvcmFnZSJdID0gIkFsbCBTdG9yYWdlIjsKQEAgLTEyNywxMiArMTI5LDE0
IEBAIGxvY2FsaXplZFN0cmluZ3NbIkFyZWEiXSA9ICJBcmVhIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkFzc2VydGlvbiJdID0gIkFzc2VydGlvbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRpb24g
RmFpbGVkIl0gPSAiQXNzZXJ0aW9uIEZhaWxlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRp
b24gRmFpbGVkOiAlcyJdID0gIkFzc2VydGlvbiBGYWlsZWQ6ICVzIjsKKy8qIEJyZWFrIChwYXVz
ZSkgd2hlbiBjb25zb2xlLmFzc2VydCgpIGZhaWxzICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3Nl
cnRpb24gRmFpbHVyZXMiXSA9ICJBc3NlcnRpb24gRmFpbHVyZXMiOwogbG9jYWxpemVkU3RyaW5n
c1siQXNzZXJ0aW9uIHdpdGggbWVzc2FnZTogJXMiXSA9ICJBc3NlcnRpb24gd2l0aCBtZXNzYWdl
OiAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRpdmUiXSA9ICJBc3NlcnRpdmUiOwogbG9j
YWxpemVkU3RyaW5nc1siQXNzb2NpYXRlZCBEYXRhIl0gPSAiQXNzb2NpYXRlZCBEYXRhIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIkFzeW5jIGF1ZGl0cyBhcmUgbm90IHN1cHBvcnRlZC4iXSA9ICJBc3lu
YyBhdWRpdHMgYXJlIG5vdCBzdXBwb3J0ZWQuIjsKIGxvY2FsaXplZFN0cmluZ3NbIkF0dHJpYnV0
ZSJdID0gIkF0dHJpYnV0ZSI7CisvKiBBIHN1Ym1lbnUgaXRlbSBvZiAnQnJlYWsgT24nIHRoYXQg
YnJlYWtzIChwYXVzZXMpIGJlZm9yZSBET00gYXR0cmlidXRlIGlzIG1vZGlmaWVkICovCiBsb2Nh
bGl6ZWRTdHJpbmdzWyJBdHRyaWJ1dGUgTW9kaWZpZWQiXSA9ICJBdHRyaWJ1dGUgTW9kaWZpZWQi
OwogbG9jYWxpemVkU3RyaW5nc1siQXR0cmlidXRlcyJdID0gIkF0dHJpYnV0ZXMiOwogbG9jYWxp
emVkU3RyaW5nc1siQXVkaXQiXSA9ICJBdWRpdCI7CkBAIC0xOTYsNiArMjAwLDcgQEAgbG9jYWxp
emVkU3RyaW5nc1siQ2FudmFzICVkIl0gPSAiQ2FudmFzICVkIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkNhbnZhcyAlcyJdID0gIkNhbnZhcyAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDYW52YXMgRWxl
bWVudCJdID0gIkNhbnZhcyBFbGVtZW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIkNhbnZhc2VzIl0g
PSAiQ2FudmFzZXMiOworLyogQ2FwdHVyZSBzY3JlZW5zaG90IG9mIHRoZSBzZWxlY3RlZCBET00g
bm9kZSAqLwogbG9jYWxpemVkU3RyaW5nc1siQ2FwdHVyZSBTY3JlZW5zaG90Il0gPSAiQ2FwdHVy
ZSBTY3JlZW5zaG90IjsKIGxvY2FsaXplZFN0cmluZ3NbIkNhcHR1cmluZyJdID0gIkNhcHR1cmlu
ZyI7CiAvKiBDb250ZXh0IG1lbnUgbGFiZWwgZm9yIHdoZXRoZXIgc2VhcmNoZXMgc2hvdWxkIGJl
IGNhc2Ugc2Vuc2l0aXZlLiAqLwpAQCAtMjA5LDYgKzIxNCw3IEBAIGxvY2FsaXplZFN0cmluZ3Nb
IkNoYW5nZXMiXSA9ICJDaGFuZ2VzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNoYXJhY3RlciBEYXRh
Il0gPSAiQ2hhcmFjdGVyIERhdGEiOwogbG9jYWxpemVkU3RyaW5nc1siQ2hhcmdlIFx1MjAxQyVz
XHUyMDFEIHRvIENhbGxlcnMiXSA9ICJDaGFyZ2UgXHUyMDFDJXNcdTIwMUQgdG8gQ2FsbGVycyI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJDaGVja2VkIl0gPSAiQ2hlY2tlZCI7CisvKiBBIHN1Ym1lbnUg
aXRlbSBvZiAnQWRkJyB0byBhcHBlbmQgRE9NIG5vZGVzIHRvIHRoZSBzZWxlY3RlZCBET00gbm9k
ZSAqLwogbG9jYWxpemVkU3RyaW5nc1siQ2hpbGQiXSA9ICJDaGlsZCI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJDaGlsZCBMYXllcnMiXSA9ICJDaGlsZCBMYXllcnMiOwogbG9jYWxpemVkU3RyaW5nc1si
Q2hpbGQgYWRkZWQgdG8gIl0gPSAiQ2hpbGQgYWRkZWQgdG8gIjsKQEAgLTI0Myw3ICsyNDksOCBA
QCBsb2NhbGl6ZWRTdHJpbmdzWyJDb2xsZWN0IGdhcmJhZ2UiXSA9ICJDb2xsZWN0IGdhcmJhZ2Ui
OwogbG9jYWxpemVkU3RyaW5nc1siQ29tbWVudCJdID0gIkNvbW1lbnQiOwogbG9jYWxpemVkU3Ry
aW5nc1siQ29tcGFyZSBzbmFwc2hvdHMiXSA9ICJDb21wYXJlIHNuYXBzaG90cyI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJDb21wYXJpc29uIG9mIHRvdGFsIG1lbW9yeSBzaXplIGF0IHRoZSBlbmQgb2Yg
dGhlIHNlbGVjdGVkIHRpbWUgcmFuZ2UgdG8gdGhlIG1heGltdW0gbWVtb3J5IHNpemUgaW4gdGhp
cyByZWNvcmRpbmciXSA9ICJDb21wYXJpc29uIG9mIHRvdGFsIG1lbW9yeSBzaXplIGF0IHRoZSBl
bmQgb2YgdGhlIHNlbGVjdGVkIHRpbWUgcmFuZ2UgdG8gdGhlIG1heGltdW0gbWVtb3J5IHNpemUg
aW4gdGhpcyByZWNvcmRpbmciOwotbG9jYWxpemVkU3RyaW5nc1siQ29tcG9zaXRlIl0gPSAiQ29t
cG9zaXRlIjsKKy8qIENvbXBvc2l0ZSBwaGFzZSB0aW1lbGluZSByZWNvcmRzLCB3aGVyZSBncmFw
aGljIGxheWVycyBhcmUgY29tYmluZWQgKi8KK2xvY2FsaXplZFN0cmluZ3NbIkNvbXBvc2l0ZSBA
IFRpbWVsaW5lIHJlY29yZCJdID0gIkNvbXBvc2l0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21w
b3NpdGVkIl0gPSAiQ29tcG9zaXRlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wcmVzc2VkIl0g
PSAiQ29tcHJlc3NlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wcmVzc2lvbiJdID0gIkNvbXBy
ZXNzaW9uIjsKQEAgLTQ2Myw3ICs0NzAsOSBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJFeHRyYSBTY3Jp
cHRzIl0gPSAiRXh0cmEgU2NyaXB0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGYWRlIHVuZXhlY3V0
ZWQgY29kZSJdID0gIkZhZGUgdW5leGVjdXRlZCBjb2RlIjsKIGxvY2FsaXplZFN0cmluZ3NbIkZh
aWxlZCB0byB1cGdyYWRlIl0gPSAiRmFpbGVkIHRvIHVwZ3JhZGUiOwogbG9jYWxpemVkU3RyaW5n
c1siRmFpbHVyZSBzdGF0dXMgY29kZSJdID0gIkZhaWx1cmUgc3RhdHVzIGNvZGUiOworLyogUmVz
b3VyY2UgbG9hZGVkIHZpYSAnZmV0Y2gnIG1ldGhvZCAqLwogbG9jYWxpemVkU3RyaW5nc1siRmV0
Y2giXSA9ICJGZXRjaCI7CisvKiBSZXNvdXJjZXMgbG9hZGVkIHZpYSAnZmV0Y2gnIG1ldGhvZCAq
LwogbG9jYWxpemVkU3RyaW5nc1siRmV0Y2hlcyJdID0gIkZldGNoZXMiOwogbG9jYWxpemVkU3Ry
aW5nc1siRmlsZSBvciBSZXNvdXJjZSJdID0gIkZpbGUgb3IgUmVzb3VyY2UiOwogbG9jYWxpemVk
U3RyaW5nc1siRmlsZW5hbWUiXSA9ICJGaWxlbmFtZSI7CkBAIC00ODAsNyArNDg5LDkgQEAgbG9j
YWxpemVkU3RyaW5nc1siRm9udHMiXSA9ICJGb250cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3Jj
ZSBEYXJrIEFwcGVhcmFuY2UiXSA9ICJGb3JjZSBEYXJrIEFwcGVhcmFuY2UiOwogbG9jYWxpemVk
U3RyaW5nc1siRm9yY2UgTGlnaHQgQXBwZWFyYW5jZSJdID0gIkZvcmNlIExpZ2h0IEFwcGVhcmFu
Y2UiOwogbG9jYWxpemVkU3RyaW5nc1siRm9yY2UgUHJpbnQgTWVkaWEgU3R5bGVzIl0gPSAiRm9y
Y2UgUHJpbnQgTWVkaWEgU3R5bGVzIjsKKy8qIExheW91dCBwaGFzZSByZWNvcmRzIHRoYXQgd2Vy
ZSBpbXBlcmF0aXZlIChmb3JjZWQpICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3JjZWQgTGF5b3V0
Il0gPSAiRm9yY2VkIExheW91dCI7CisvKiBBIGNvbnRleHQgbWVudSBpdGVtIHRvIGZvcmNlIChv
dmVycmlkZSkgYSBET00gbm9kZSdzIHBzZXVkby1jbGFzc2VzICovCiBsb2NhbGl6ZWRTdHJpbmdz
WyJGb3JjZWQgUHNldWRvLUNsYXNzZXMiXSA9ICJGb3JjZWQgUHNldWRvLUNsYXNzZXMiOwogbG9j
YWxpemVkU3RyaW5nc1siRm9ybWF0OiBIU0wiXSA9ICJGb3JtYXQ6IEhTTCI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJGb3JtYXQ6IEhTTEEiXSA9ICJGb3JtYXQ6IEhTTEEiOwpAQCAtNTcwLDYgKzU4MSw3
IEBAIGxvY2FsaXplZFN0cmluZ3NbIkluZGV4IEtleSBcdTIwMTQgJXMiXSA9ICJJbmRleCBLZXkg
XHUyMDE0ICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkluZGV4ZWQgRGF0YWJhc2VzIl0gPSAiSW5k
ZXhlZCBEYXRhYmFzZXMiOwogbG9jYWxpemVkU3RyaW5nc1siSW5mbzogIl0gPSAiSW5mbzogIjsK
IGxvY2FsaXplZFN0cmluZ3NbIkluZm9zIl0gPSAiSW5mb3MiOworLyogQSBzZWN0aW9uIG9mIENT
UyBydWxlcyBtYXRjaGluZyBhbiBhbmNlc3RvciBET00gbm9kZSAqLwogbG9jYWxpemVkU3RyaW5n
c1siSW5oZXJpdGVkIEZyb20iXSA9ICJJbmhlcml0ZWQgRnJvbSI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJJbml0aWFsIFN0YXRlIl0gPSAiSW5pdGlhbCBTdGF0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJ
bml0aWFsIFZlbG9jaXR5Il0gPSAiSW5pdGlhbCBWZWxvY2l0eSI7CkBAIC01OTgsOCArNjEwLDkg
QEAgbG9jYWxpemVkU3RyaW5nc1siTGF5ZXIgQ291bnQ6ICVkIl0gPSAiTGF5ZXIgQ291bnQ6ICVk
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkxheWVyIEluZm8iXSA9ICJMYXllciBJbmZvIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkxheWVycyJdID0gIkxheWVycyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMYXll
cnM6Il0gPSAiTGF5ZXJzOiI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJMYXlvdXQiXSA9ICJMYXlvdXQi
OwogbG9jYWxpemVkU3RyaW5nc1siTGF5b3V0ICYgUmVuZGVyaW5nIl0gPSAiTGF5b3V0ICYgUmVu
ZGVyaW5nIjsKKy8qIExheW91dCBwaGFzZSB0aW1lbGluZSByZWNvcmRzICovCitsb2NhbGl6ZWRT
dHJpbmdzWyJMYXlvdXQgQCBUaW1lbGluZSByZWNvcmQiXSA9ICJMYXlvdXQiOwogbG9jYWxpemVk
U3RyaW5nc1siTGF5b3V0IEludmFsaWRhdGVkIl0gPSAiTGF5b3V0IEludmFsaWRhdGVkIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIkxpbmUgJWQiXSA9ICJMaW5lICVkIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkxpbmUgJWQ6JWQiXSA9ICJMaW5lICVkOiVkIjsKQEAgLTYxNywxMCArNjMwLDEyIEBAIGxvY2Fs
aXplZFN0cmluZ3NbIkxvY2FsIFZhcmlhYmxlcyJdID0gIkxvY2FsIFZhcmlhYmxlcyI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJMb2NhdGVkIGF0ICVzIl0gPSAiTG9jYXRlZCBhdCAlcyI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJMb2NhdGlvbiJdID0gIkxvY2F0aW9uIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxv
ZyBDYW52YXMgQ29udGV4dCJdID0gIkxvZyBDYW52YXMgQ29udGV4dCI7CisvKiBMb2cgKHByaW50
KSBET00gZWxlbWVudCB0byBDb25zb2xlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgRWxlbWVu
dCJdID0gIkxvZyBFbGVtZW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBGcmFtZSBUZXh0Il0g
PSAiTG9nIEZyYW1lIFRleHQiOwogbG9jYWxpemVkU3RyaW5nc1siTG9nIEZyYW1lIFZhbHVlIl0g
PSAiTG9nIEZyYW1lIFZhbHVlIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBNZXNzYWdlIl0gPSAi
TG9nIE1lc3NhZ2UiOworLyogTG9nIChwcmludCkgRE9NIG5vZGUgdG8gQ29uc29sZSAqLwogbG9j
YWxpemVkU3RyaW5nc1siTG9nIE5vZGUiXSA9ICJMb2cgTm9kZSI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJMb2cgU3ltYm9sIl0gPSAiTG9nIFN5bWJvbCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgVmFs
dWUiXSA9ICJMb2cgVmFsdWUiOwpAQCAtNjY1LDYgKzY4MCw3IEBAIGxvY2FsaXplZFN0cmluZ3Nb
Ik5ldHdvcmsgSXNzdWUiXSA9ICJOZXR3b3JrIElzc3VlIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5l
dHdvcmsgUmVxdWVzdHMiXSA9ICJOZXR3b3JrIFJlcXVlc3RzIjsKIGxvY2FsaXplZFN0cmluZ3Nb
Ik5ldHdvcmsgUmVxdWVzdHM6Il0gPSAiTmV0d29yayBSZXF1ZXN0czoiOwogbG9jYWxpemVkU3Ry
aW5nc1siTmV3IFRhYiJdID0gIk5ldyBUYWIiOworLyogQSBzdWJtZW51IGl0ZW0gb2YgJ0FkZCcg
dG8gYWRkIERPTSBub2RlcyBhZnRlciB0aGUgc2VsZWN0ZWQgRE9NIG5vZGUgKi8KIGxvY2FsaXpl
ZFN0cmluZ3NbIk5leHQgU2libGluZyJdID0gIk5leHQgU2libGluZyI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJObyJdID0gIk5vIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5vIEFjY2Vzc2liaWxpdHkgSW5m
b3JtYXRpb24iXSA9ICJObyBBY2Nlc3NpYmlsaXR5IEluZm9ybWF0aW9uIjsKQEAgLTcwNSw2ICs3
MjEsNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJObyByZXF1ZXN0LCBzZXJ2ZWQgZnJvbSB0aGUgbWVt
b3J5IGNhY2hlLiJdID0gIk5vIHJlcXVlc3QsIHNlcgogbG9jYWxpemVkU3RyaW5nc1siTm8gcmVz
cG9uc2UgY29va2llcy4iXSA9ICJObyByZXNwb25zZSBjb29raWVzLiI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJObyByZXNwb25zZSBoZWFkZXJzIl0gPSAiTm8gcmVzcG9uc2UgaGVhZGVycyI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJOb2RlIl0gPSAiTm9kZSI7CisvKiBBIHN1Ym1lbnUgaXRlbSBvZiAnQnJl
YWsgT24nIHRoYXQgYnJlYWtzIChwYXVzZXMpIGJlZm9yZSBET00gbm9kZSBpcyByZW1vdmVkICov
CiBsb2NhbGl6ZWRTdHJpbmdzWyJOb2RlIFJlbW92ZWQiXSA9ICJOb2RlIFJlbW92ZWQiOwogbG9j
YWxpemVkU3RyaW5nc1siTm9kZXMiXSA9ICJOb2RlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJOb25l
Il0gPSAiTm9uZSI7CkBAIC03NDQsOCArNzYxLDExIEBAIGxvY2FsaXplZFN0cmluZ3NbIlBhZ2Ui
XSA9ICJQYWdlIjsKIGxvY2FsaXplZFN0cmluZ3NbIlBhZ2UgSXNzdWUiXSA9ICJQYWdlIElzc3Vl
IjsKIGxvY2FsaXplZFN0cmluZ3NbIlBhZ2UgbmF2aWdhdGVkIGF0ICVzIl0gPSAiUGFnZSBuYXZp
Z2F0ZWQgYXQgJXMiOwogbG9jYWxpemVkU3RyaW5nc1siUGFnZSByZWxvYWRlZCBhdCAlcyJdID0g
IlBhZ2UgcmVsb2FkZWQgYXQgJXMiOwotbG9jYWxpemVkU3RyaW5nc1siUGFpbnQiXSA9ICJQYWlu
dCI7CisvKiBQYWludCAocmVuZGVyKSBwaGFzZSB0aW1lbGluZSByZWNvcmRzICovCitsb2NhbGl6
ZWRTdHJpbmdzWyJQYWludCBAIFRpbWVsaW5lIHJlY29yZCJdID0gIlBhaW50IjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIlBhaW50cyJdID0gIlBhaW50cyI7CisvKiBBIGNvdW50IG9mIGhvdyBtYW55IHRp
bWVzIGFuIGVsZW1lbnQgd2FzIHBhaW50ZWQgKHJlbmRlcmVkKSAqLworbG9jYWxpemVkU3RyaW5n
c1siUGFpbnRzIEAgQ29sdW1uIHRpdGxlIl0gPSAiUGFpbnRzIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IlBhcmVudCJdID0gIlBhcmVudCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQYXJ0aWFsIEdhcmJhZ2Ug
Q29sbGVjdGlvbiJdID0gIlBhcnRpYWwgR2FyYmFnZSBDb2xsZWN0aW9uIjsKIGxvY2FsaXplZFN0
cmluZ3NbIlBhc3NpdmUiXSA9ICJQYXNzaXZlIjsKQEAgLTc3Miw2ICs3OTIsNyBAQCBsb2NhbGl6
ZWRTdHJpbmdzWyJQcmVzcyAlcyB0byBzdG9wIGVkaXRpbmciXSA9ICJQcmVzcyAlcyB0byBzdG9w
IGVkaXRpbmciOwogbG9jYWxpemVkU3RyaW5nc1siUHJlc3NlZCJdID0gIlByZXNzZWQiOwogbG9j
YWxpemVkU3RyaW5nc1siUHJldHR5IHByaW50Il0gPSAiUHJldHR5IHByaW50IjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIlByZXZpZXciXSA9ICJQcmV2aWV3IjsKKy8qIEEgc3VibWVudSBpdGVtIG9mICdB
ZGQnIHRvIGFkZCBET00gbm9kZXMgYmVmb3JlIHRoZSBzZWxlY3RlZCBET00gbm9kZSAqLwogbG9j
YWxpemVkU3RyaW5nc1siUHJldmlvdXMgU2libGluZyJdID0gIlByZXZpb3VzIFNpYmxpbmciOwog
bG9jYWxpemVkU3RyaW5nc1siUHJpbWFyeSBLZXkiXSA9ICJQcmltYXJ5IEtleSI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJQcmltYXJ5IEtleSBcdTIwMTQgJXMiXSA9ICJQcmltYXJ5IEtleSBcdTIwMTQg
JXMiOwpAQCAtODU5LDkgKzg4MCwxMSBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJSZXR1cm4gdHlwZSBm
b3IgYW5vbnltb3VzIGZ1bmN0aW9uIl0gPSAiUmV0dXJuIHR5cGUgZm9yIGFub255bQogbG9jYWxp
emVkU3RyaW5nc1siUmV0dXJuIHR5cGUgZm9yIGZ1bmN0aW9uOiAlcyJdID0gIlJldHVybiB0eXBl
IGZvciBmdW5jdGlvbjogJXMiOwogbG9jYWxpemVkU3RyaW5nc1siUmV0dXJuIHZhbHVlIGlzIG5v
dCBhbiBvYmplY3QsIHN0cmluZywgb3IgYm9vbGVhbiJdID0gIlJldHVybiB2YWx1ZSBpcyBub3Qg
YW4gb2JqZWN0LCBzdHJpbmcsIG9yIGJvb2xlYW4iOwogbG9jYWxpemVkU3RyaW5nc1siUmV2ZWFs
IEJyZWFrcG9pbnQiXSA9ICJSZXZlYWwgQnJlYWtwb2ludCI7CisvKiBPcGVuIEVsZW1lbnRzIHRh
YiBhbmQgc2VsZWN0IHRoaXMgbm9kZSBpbiBET00gdHJlZSAqLwogbG9jYWxpemVkU3RyaW5nc1si
UmV2ZWFsIGluIERPTSBUcmVlIl0gPSAiUmV2ZWFsIGluIERPTSBUcmVlIjsKIGxvY2FsaXplZFN0
cmluZ3NbIlJldmVhbCBpbiBEZWJ1Z2dlciBUYWIiXSA9ICJSZXZlYWwgaW4gRGVidWdnZXIgVGFi
IjsKIGxvY2FsaXplZFN0cmluZ3NbIlJldmVhbCBpbiBFbGVtZW50cyBUYWIiXSA9ICJSZXZlYWwg
aW4gRWxlbWVudHMgVGFiIjsKKy8qIE9wZW4gTGF5ZXJzIHRhYiBhbmQgc2VsZWN0IHRoZSBsYXll
ciBjb3JyZXNwb25kaW5nIHRvIHRoaXMgbm9kZSAqLwogbG9jYWxpemVkU3RyaW5nc1siUmV2ZWFs
IGluIExheWVycyBUYWIiXSA9ICJSZXZlYWwgaW4gTGF5ZXJzIFRhYiI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJSZXZlYWwgaW4gTmV0d29yayBUYWIiXSA9ICJSZXZlYWwgaW4gTmV0d29yayBUYWIiOwog
bG9jYWxpemVkU3RyaW5nc1siUmV2ZWFsIGluIE9yaWdpbmFsIFJlc291cmNlIl0gPSAiUmV2ZWFs
IGluIE9yaWdpbmFsIFJlc291cmNlIjsKQEAgLTg5MCw3ICs5MTMsOCBAQCBsb2NhbGl6ZWRTdHJp
bmdzWyJTY3JpcHQgRWxlbWVudCAlZCJdID0gIlNjcmlwdCBFbGVtZW50ICVkIjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIlNjcmlwdCBFbnRyaWVzOiJdID0gIlNjcmlwdCBFbnRyaWVzOiI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJTY3JpcHQgRXZhbHVhdGVkIl0gPSAiU2NyaXB0IEV2YWx1YXRlZCI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJTY3JpcHRzIl0gPSAiU2NyaXB0cyI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJT
Y3JvbGwgSW50byBWaWV3Il0gPSAiU2Nyb2xsIEludG8gVmlldyI7CisvKiBTY3JvbGwgc2VsZWN0
ZWQgRE9NIG5vZGUgaW50byB2aWV3IG9uIHRoZSBpbnNwZWN0ZWQgd2ViIHBhZ2UgKi8KK2xvY2Fs
aXplZFN0cmluZ3NbIlNjcm9sbCBpbnRvIFZpZXciXSA9ICJTY3JvbGwgaW50byBWaWV3IjsKIGxv
Y2FsaXplZFN0cmluZ3NbIlNlYXJjaCJdID0gIlNlYXJjaCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJT
ZWFyY2ggQWdhaW4iXSA9ICJTZWFyY2ggQWdhaW4iOwogbG9jYWxpemVkU3RyaW5nc1siU2VhcmNo
IFJlc291cmNlIENvbnRlbnQiXSA9ICJTZWFyY2ggUmVzb3VyY2UgQ29udGVudCI7CkBAIC05MDUs
MTAgKzkyOSwxMiBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3QgYmFzZWxpbmUgc25hcHNob3Qi
XSA9ICJTZWxlY3QgYmFzZWxpbmUgc25hcHNob3QiOwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0
IGNvbXBhcmlzb24gc25hcHNob3QiXSA9ICJTZWxlY3QgY29tcGFyaXNvbiBzbmFwc2hvdCI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCJdID0gIlNlbGVjdGVkIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlNlbGVjdGVkIENhbnZhcyBDb250ZXh0Il0gPSAiU2VsZWN0ZWQgQ2FudmFzIENvbnRleHQi
OworLyogU2VsZWN0ZWQgRE9NIGVsZW1lbnQgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdGVk
IEVsZW1lbnQiXSA9ICJTZWxlY3RlZCBFbGVtZW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIlNlbGVj
dGVkIEZyYW1lIl0gPSAiU2VsZWN0ZWQgRnJhbWUiOwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0
ZWQgSXRlbSJdID0gIlNlbGVjdGVkIEl0ZW0iOwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0ZWQg
SXRlbXMiXSA9ICJTZWxlY3RlZCBJdGVtcyI7CisvKiBTZWxlY3RlZCBET00gbm9kZSAqLwogbG9j
YWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgTm9kZSJdID0gIlNlbGVjdGVkIE5vZGUiOwogbG9jYWxp
emVkU3RyaW5nc1siU2VsZWN0ZWQgU3ltYm9sIl0gPSAiU2VsZWN0ZWQgU3ltYm9sIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIlNlbGVjdGVkIFZhbHVlIl0gPSAiU2VsZWN0ZWQgVmFsdWUiOwpAQCAtMTAw
OSw2ICsxMDM1LDcgQEAgbG9jYWxpemVkU3RyaW5nc1siU3RvcCByZWNvcmRpbmcgY2FudmFzIGFj
dGlvbnMiXSA9ICJTdG9wIHJlY29yZGluZyBjYW52YXMgYWN0aW8KIGxvY2FsaXplZFN0cmluZ3Nb
IlN0b3AgcmVjb3JkaW5nIG9uY2UgcGFnZSBsb2FkcyJdID0gIlN0b3AgcmVjb3JkaW5nIG9uY2Ug
cGFnZSBsb2FkcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdG9wcGluZyB0aGUgXHUyMDFDJXNcdTIw
MUQgYXVkaXQiXSA9ICJTdG9wcGluZyB0aGUgXHUyMDFDJXNcdTIwMUQgYXVkaXQiOwogbG9jYWxp
emVkU3RyaW5nc1siU3RvcmFnZSJdID0gIlN0b3JhZ2UiOworLyogQ1NTIHByb3BlcnRpZXMgZGVm
aW5lZCB2aWEgSFRNTCBzdHlsZSBhdHRyaWJ1dGUgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlN0eWxl
IEF0dHJpYnV0ZSJdID0gIlN0eWxlIEF0dHJpYnV0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHls
ZSBSZXNvbHV0aW9uIl0gPSAiU3R5bGUgUmVzb2x1dGlvbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJT
dHlsZSBydWxlIl0gPSAiU3R5bGUgcnVsZSI7CkBAIC0xMDIxLDEyICsxMDQ4LDE0IEBAIGxvY2Fs
aXplZFN0cmluZ3NbIlN0eWxlczoiXSA9ICJTdHlsZXM6IjsKIGxvY2FsaXplZFN0cmluZ3NbIlN0
eWxlc2hlZXQiXSA9ICJTdHlsZXNoZWV0IjsKIGxvY2FsaXplZFN0cmluZ3NbIlN0eWxlc2hlZXRz
Il0gPSAiU3R5bGVzaGVldHMiOwogbG9jYWxpemVkU3RyaW5nc1siU3ViamVjdCJdID0gIlN1Ympl
Y3QiOworLyogQSBzdWJtZW51IGl0ZW0gb2YgJ0JyZWFrIE9uJyB0aGF0IGJyZWFrcyAocGF1c2Vz
KSBiZWZvcmUgY2hpbGQgRE9NIG5vZGUgaXMgbW9kaWZpZWQgKi8KIGxvY2FsaXplZFN0cmluZ3Nb
IlN1YnRyZWUgTW9kaWZpZWQiXSA9ICJTdWJ0cmVlIE1vZGlmaWVkIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlN1bW1hcnkiXSA9ICJTdW1tYXJ5IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRDUCJdID0gIlRD
UCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUSUZGIl0gPSAiVElGRiI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJUYWIgd2lkdGg6Il0gPSAiVGFiIHdpZHRoOiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUYWJzIl0g
PSAiVGFicyI7CisvKiBBIHN1Ym1lbnUgaXRlbSBvZiAnRWRpdCcgdG8gY2hhbmdlIERPTSBlbGVt
ZW50J3MgdGFnIG5hbWUgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlRhZyJdID0gIlRhZyI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJUYWtlIHNuYXBzaG90Il0gPSAiVGFrZSBzbmFwc2hvdCI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJUYXJnZXQiXSA9ICJUYXJnZXQiOwpAQCAtMTA4OSw2ICsxMTE4LDcgQEAgbG9j
YWxpemVkU3RyaW5nc1siVG90YWw6ICVzIl0gPSAiVG90YWw6ICVzIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlRvdGFsczoiXSA9ICJUb3RhbHM6IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRyYWNlIl0gPSAi
VHJhY2UiOwogbG9jYWxpemVkU3RyaW5nc1siVHJhY2U6ICVzIl0gPSAiVHJhY2U6ICVzIjsKKy8q
IEFtb3VudCBvZiBkYXRhIHNlbnQgb3ZlciB0aGUgbmV0d29yayAqLwogbG9jYWxpemVkU3RyaW5n
c1siVHJhbnNmZXIgU2l6ZSJdID0gIlRyYW5zZmVyIFNpemUiOwogbG9jYWxpemVkU3RyaW5nc1si
VHJhbnNmZXJyZWQiXSA9ICJUcmFuc2ZlcnJlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUcmlnZ2Vy
ZWQgQnJlYWtwb2ludCJdID0gIlRyaWdnZXJlZCBCcmVha3BvaW50IjsKQEAgLTExMDMsNiArMTEz
Myw3IEBAIGxvY2FsaXplZFN0cmluZ3NbIlVSTCBCcmVha3BvaW50XHUyMDI2Il0gPSAiVVJMIEJy
ZWFrcG9pbnRcdTIwMjYiOwogbG9jYWxpemVkU3RyaW5nc1siVW5hYmxlIHRvIGRldGVybWluZSBw
YXRoIHRvIHByb3BlcnR5IGZyb20gcm9vdCJdID0gIlVuYWJsZSB0byBkZXRlcm1pbmUgcGF0aCB0
byBwcm9wZXJ0eSBmcm9tIHJvb3QiOwogbG9jYWxpemVkU3RyaW5nc1siVW5hYmxlIHRvIHBhcnNl
IGFzIEpTT046ICVzIl0gPSAiVW5hYmxlIHRvIHBhcnNlIGFzIEpTT046ICVzIjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIlVuYWJsZSB0byBzaG93IGNlcnRpZmljYXRlIGZvciBcdTIwMUMlc1x1MjAxRCJd
ID0gIlVuYWJsZSB0byBzaG93IGNlcnRpZmljYXRlIGZvciBcdTIwMUMlc1x1MjAxRCI7CisvKiBC
cmVhayAocGF1c2UpIG9uIHVuY2F1Z2h0ICh1bmhhbmRsZWQpIGV4Y2VwdGlvbnMgKi8KIGxvY2Fs
aXplZFN0cmluZ3NbIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiXSA9ICJVbmNhdWdodCBFeGNlcHRpb25z
IjsKIGxvY2FsaXplZFN0cmluZ3NbIlVuZGVmaW5lZCBjdXN0b20gZWxlbWVudCJdID0gIlVuZGVm
aW5lZCBjdXN0b20gZWxlbWVudCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJVbmlxdWUiXSA9ICJVbmlx
dWUiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQmFz
ZS9Mb2FkTG9jYWxpemVkU3RyaW5ncy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXplZFN0cmluZ3MuanMKaW5kZXggYzBmNWEzNzVlMzMuLmUy
MGQ1MDY4MzFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9CYXNlL0xvYWRMb2NhbGl6ZWRTdHJpbmdzLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXplZFN0cmluZ3MuanMKQEAgLTQzLDkgKzQz
LDE3IEBAIFdJLnVubG9jYWxpemVkU3RyaW5nID0gZnVuY3Rpb24oc3RyaW5nKQogCiBXSS5VSVN0
cmluZyA9IGZ1bmN0aW9uKHN0cmluZywga2V5LCBjb21tZW50KQogeworICAgICJ1c2Ugc3RyaWN0
IjsKKwogICAgIGlmIChXSS5kb250TG9jYWxpemVVc2VySW50ZXJmYWNlKQogICAgICAgICByZXR1
cm4gc3RyaW5nOwogCisgICAgLy8gVUlTdHJpbmcoc3RyaW5nLCBjb21tZW50KQorICAgIGlmIChh
cmd1bWVudHMubGVuZ3RoID09PSAyKSB7CisgICAgICAgIGNvbW1lbnQgPSBrZXk7CisgICAgICAg
IGtleSA9IHVuZGVmaW5lZDsKKyAgICB9CisKICAgICBrZXkgPSBrZXkgfHwgc3RyaW5nOwogCiAg
ICAgaWYgKHdpbmRvdy5sb2NhbGl6ZWRTdHJpbmdzICYmIGtleSBpbiB3aW5kb3cubG9jYWxpemVk
U3RyaW5ncykKQEAgLTY0LDMgKzcyLDQxIEBAIFdJLlVJU3RyaW5nID0gZnVuY3Rpb24oc3RyaW5n
LCBrZXksIGNvbW1lbnQpCiAKICAgICByZXR1cm4gIkxPQ0FMSVpFRCBTVFJJTkcgTk9UIEZPVU5E
IjsKIH07CisKK1dJLnJlcGVhdGVkVUlTdHJpbmcgPSB7fTsKKworV0kucmVwZWF0ZWRVSVN0cmlu
Zy50aW1lbGluZVJlY29yZExheW91dCA9IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiBXSS5VSVN0
cmluZygiTGF5b3V0IiwgIkxheW91dCBAIFRpbWVsaW5lIHJlY29yZCIsICJMYXlvdXQgcGhhc2Ug
dGltZWxpbmUgcmVjb3JkcyIpOworfTsKKworV0kucmVwZWF0ZWRVSVN0cmluZy50aW1lbGluZVJl
Y29yZFBhaW50ID0gZnVuY3Rpb24oKSB7CisgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJQYWludCIs
ICJQYWludCBAIFRpbWVsaW5lIHJlY29yZCIsICJQYWludCAocmVuZGVyKSBwaGFzZSB0aW1lbGlu
ZSByZWNvcmRzIik7Cit9OworCitXSS5yZXBlYXRlZFVJU3RyaW5nLnRpbWVsaW5lUmVjb3JkQ29t
cG9zaXRlID0gZnVuY3Rpb24oKSB7CisgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJDb21wb3NpdGUi
LCAiQ29tcG9zaXRlIEAgVGltZWxpbmUgcmVjb3JkIiwgIkNvbXBvc2l0ZSBwaGFzZSB0aW1lbGlu
ZSByZWNvcmRzLCB3aGVyZSBncmFwaGljIGxheWVycyBhcmUgY29tYmluZWQiKTsKK307CisKK1dJ
LnJlcGVhdGVkVUlTdHJpbmcuYWxsRXhjZXB0aW9ucyA9IGZ1bmN0aW9uKCkgeworICAgIHJldHVy
biBXSS5VSVN0cmluZygiQWxsIEV4Y2VwdGlvbnMiLCAiQnJlYWsgKHBhdXNlKSBvbiBhbGwgZXhj
ZXB0aW9ucyIpOworfTsKKworV0kucmVwZWF0ZWRVSVN0cmluZy51bmNhdWdodEV4Y2VwdGlvbnMg
PSBmdW5jdGlvbigpIHsKKyAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlVuY2F1Z2h0IEV4Y2VwdGlv
bnMiLCAiQnJlYWsgKHBhdXNlKSBvbiB1bmNhdWdodCAodW5oYW5kbGVkKSBleGNlcHRpb25zIik7
Cit9OworCitXSS5yZXBlYXRlZFVJU3RyaW5nLmFzc2VydGlvbkZhaWx1cmVzID0gZnVuY3Rpb24o
KSB7CisgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiLCAiQnJlYWsg
KHBhdXNlKSB3aGVuIGNvbnNvbGUuYXNzZXJ0KCkgZmFpbHMiKTsKK307CisKK1dJLnJlcGVhdGVk
VUlTdHJpbmcuYWxsUmVxdWVzdHMgPSBmdW5jdGlvbigpIHsKKyAgICByZXR1cm4gV0kuVUlTdHJp
bmcoIkFsbCBSZXF1ZXN0cyIsICJBIHN1Ym1lbnUgaXRlbSBvZiAnQnJlYWsgb24nIHRoYXQgYnJl
YWtzIChwYXVzZXMpIGJlZm9yZSBhbGwgbmV0d29yayByZXF1ZXN0cyIpOworfTsKKworV0kucmVw
ZWF0ZWRVSVN0cmluZy5mZXRjaCA9IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiBXSS5VSVN0cmlu
ZygiRmV0Y2giLCAiUmVzb3VyY2UgbG9hZGVkIHZpYSAnZmV0Y2gnIG1ldGhvZCIpOworfTsKKwor
V0kucmVwZWF0ZWRVSVN0cmluZy5yZXZlYWxJbkRPTVRyZWUgPSBmdW5jdGlvbigpIHsKKyAgICBy
ZXR1cm4gV0kuVUlTdHJpbmcoIlJldmVhbCBpbiBET00gVHJlZSIsICJPcGVuIEVsZW1lbnRzIHRh
YiBhbmQgc2VsZWN0IHRoaXMgbm9kZSBpbiBET00gdHJlZSIpOworfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9MYXlvdXRUaW1lbGluZVJl
Y29yZC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9MYXlv
dXRUaW1lbGluZVJlY29yZC5qcwppbmRleCBmYWE0YjZjMmU1Mi4uNGE4MzFmMTI2YjAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9MYXlvdXRU
aW1lbGluZVJlY29yZC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9Nb2RlbHMvTGF5b3V0VGltZWxpbmVSZWNvcmQuanMKQEAgLTUxLDEzICs1MSwxMyBAQCBXSS5M
YXlvdXRUaW1lbGluZVJlY29yZCA9IGNsYXNzIExheW91dFRpbWVsaW5lUmVjb3JkIGV4dGVuZHMg
V0kuVGltZWxpbmVSZWNvcmQKICAgICAgICAgY2FzZSBXSS5MYXlvdXRUaW1lbGluZVJlY29yZC5F
dmVudFR5cGUuSW52YWxpZGF0ZUxheW91dDoKICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmlu
ZygiTGF5b3V0IEludmFsaWRhdGVkIik7CiAgICAgICAgIGNhc2UgV0kuTGF5b3V0VGltZWxpbmVS
ZWNvcmQuRXZlbnRUeXBlLkZvcmNlZExheW91dDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0
cmluZygiRm9yY2VkIExheW91dCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJG
b3JjZWQgTGF5b3V0IiwgIkxheW91dCBwaGFzZSByZWNvcmRzIHRoYXQgd2VyZSBpbXBlcmF0aXZl
IChmb3JjZWQpIik7CiAgICAgICAgIGNhc2UgV0kuTGF5b3V0VGltZWxpbmVSZWNvcmQuRXZlbnRU
eXBlLkxheW91dDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTGF5b3V0Iik7Cisg
ICAgICAgICAgICByZXR1cm4gV0kucmVwZWF0ZWRVSVN0cmluZy50aW1lbGluZVJlY29yZExheW91
dCgpOwogICAgICAgICBjYXNlIFdJLkxheW91dFRpbWVsaW5lUmVjb3JkLkV2ZW50VHlwZS5QYWlu
dDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiUGFpbnQiKTsKKyAgICAgICAgICAg
IHJldHVybiBXSS5yZXBlYXRlZFVJU3RyaW5nLnRpbWVsaW5lUmVjb3JkUGFpbnQoKTsKICAgICAg
ICAgY2FzZSBXSS5MYXlvdXRUaW1lbGluZVJlY29yZC5FdmVudFR5cGUuQ29tcG9zaXRlOgotICAg
ICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJDb21wb3NpdGUiKTsKKyAgICAgICAgICAgIHJl
dHVybiBXSS5yZXBlYXRlZFVJU3RyaW5nLnRpbWVsaW5lUmVjb3JkQ29tcG9zaXRlKCk7CiAgICAg
ICAgIH0KICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL01vZGVscy9SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpzIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1JlbmRlcmluZ0ZyYW1lVGltZWxpbmVS
ZWNvcmQuanMKaW5kZXggNWZkODEwODNmOWUuLmNjMmUxYjI0NjdhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvUmVuZGVyaW5nRnJhbWVUaW1l
bGluZVJlY29yZC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9N
b2RlbHMvUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5qcwpAQCAtNDYsOSArNDYsOSBAQCBX
SS5SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkID0gY2xhc3MgUmVuZGVyaW5nRnJhbWVUaW1l
bGluZVJlY29yZCBleHRlbmRzIFdJLgogICAgICAgICBjYXNlIFdJLlJlbmRlcmluZ0ZyYW1lVGlt
ZWxpbmVSZWNvcmQuVGFza1R5cGUuU2NyaXB0OgogICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3Ry
aW5nKCJTY3JpcHQiKTsKICAgICAgICAgY2FzZSBXSS5SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVj
b3JkLlRhc2tUeXBlLkxheW91dDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTGF5
b3V0Iik7CisgICAgICAgICAgICByZXR1cm4gV0kucmVwZWF0ZWRVSVN0cmluZy50aW1lbGluZVJl
Y29yZExheW91dCgpOwogICAgICAgICBjYXNlIFdJLlJlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNv
cmQuVGFza1R5cGUuUGFpbnQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlBhaW50
Iik7CisgICAgICAgICAgICByZXR1cm4gV0kucmVwZWF0ZWRVSVN0cmluZy50aW1lbGluZVJlY29y
ZFBhaW50KCk7CiAgICAgICAgIGNhc2UgV0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5U
YXNrVHlwZS5PdGhlcjoKICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiT3RoZXIiKTsK
ICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvTW9kZWxzL1Jlc291cmNlLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvTW9kZWxzL1Jlc291cmNlLmpzCmluZGV4IGRjNzUyMDg2ZDYxLi5lOTMxYzEyNzQ4MSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291
cmNlLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9S
ZXNvdXJjZS5qcwpAQCAtMTU2LDggKzE1Niw4IEBAIFdJLlJlc291cmNlID0gY2xhc3MgUmVzb3Vy
Y2UgZXh0ZW5kcyBXSS5Tb3VyY2VDb2RlCiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmco
IlhIUiIpOwogICAgICAgICBjYXNlIFdJLlJlc291cmNlLlR5cGUuRmV0Y2g6CiAgICAgICAgICAg
ICBpZiAocGx1cmFsKQotICAgICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiRmV0Y2hl
cyIpOwotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJGZXRjaCIpOworICAgICAgICAg
ICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiRmV0Y2hlcyIsICJSZXNvdXJjZXMgbG9hZGVkIHZp
YSAnZmV0Y2gnIG1ldGhvZCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGVkVUlTdHJp
bmcuZmV0Y2goKTsKICAgICAgICAgY2FzZSBXSS5SZXNvdXJjZS5UeXBlLlBpbmc6CiAgICAgICAg
ICAgICBpZiAocGx1cmFsKQogICAgICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiUGlu
Z3MiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL0F1ZGl0VGVzdEdyb3VwQ29udGVudFZpZXcuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9BdWRpdFRlc3RHcm91cENvbnRlbnRWaWV3LmpzCmluZGV4IDhl
NDBkZDZkN2Q3Li5iZTJlZWJhNjJjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXRUZXN0R3JvdXBDb250ZW50Vmlldy5qcworKysgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9BdWRpdFRlc3RHcm91cENv
bnRlbnRWaWV3LmpzCkBAIC0xMjUsMTEgKzEyNSwxMSBAQCBXSS5BdWRpdFRlc3RHcm91cENvbnRl
bnRWaWV3ID0gY2xhc3MgQXVkaXRUZXN0R3JvdXBDb250ZW50VmlldyBleHRlbmRzIFdJLkF1ZGl0
VAogICAgICAgICAgICAgICAgIHNjb3BlQmFySXRlbXMucHVzaChzY29wZUJhckl0ZW0pOwogICAg
ICAgICAgICAgfTsKIAotICAgICAgICAgICAgYWRkU2NvcGVCYXJJdGVtKFdJLkF1ZGl0VGVzdENh
c2VSZXN1bHQuTGV2ZWwuUGFzcywgV0kuVUlTdHJpbmcoIiVkIFBhc3NlZCIsICIlZCBQYXNzZWQg
KHNpbmd1bGFyKSIpLCBXSS5VSVN0cmluZygiJWQgUGFzc2VkIiwgIiVkIFBhc3NlZCAocGx1cmFs
KSIpKTsKKyAgICAgICAgICAgIGFkZFNjb3BlQmFySXRlbShXSS5BdWRpdFRlc3RDYXNlUmVzdWx0
LkxldmVsLlBhc3MsIFdJLlVJU3RyaW5nKCIlZCBQYXNzZWQiLCAiJWQgUGFzc2VkIChzaW5ndWxh
cikiLCAiIiksIFdJLlVJU3RyaW5nKCIlZCBQYXNzZWQiLCAiJWQgUGFzc2VkIChwbHVyYWwpIiwg
IiIpKTsKICAgICAgICAgICAgIGFkZFNjb3BlQmFySXRlbShXSS5BdWRpdFRlc3RDYXNlUmVzdWx0
LkxldmVsLldhcm4sIFdJLlVJU3RyaW5nKCIlZCBXYXJuaW5nIiksIFdJLlVJU3RyaW5nKCIlZCBX
YXJuaW5ncyIpKTsKLSAgICAgICAgICAgIGFkZFNjb3BlQmFySXRlbShXSS5BdWRpdFRlc3RDYXNl
UmVzdWx0LkxldmVsLkZhaWwsIFdJLlVJU3RyaW5nKCIlZCBGYWlsZWQiLCAiJWQgRmFpbGVkIChz
aW5ndWxhcikiKSwgV0kuVUlTdHJpbmcoIiVkIEZhaWxlZCIsICIlZCBGYWlsZWQgKHBsdXJhbCki
KSk7CisgICAgICAgICAgICBhZGRTY29wZUJhckl0ZW0oV0kuQXVkaXRUZXN0Q2FzZVJlc3VsdC5M
ZXZlbC5GYWlsLCBXSS5VSVN0cmluZygiJWQgRmFpbGVkIiwgIiVkIEZhaWxlZCAoc2luZ3VsYXIp
IiwgIiIpLCBXSS5VSVN0cmluZygiJWQgRmFpbGVkIiwgIiVkIEZhaWxlZCAocGx1cmFsKSIsICIi
KSk7CiAgICAgICAgICAgICBhZGRTY29wZUJhckl0ZW0oV0kuQXVkaXRUZXN0Q2FzZVJlc3VsdC5M
ZXZlbC5FcnJvciwgV0kuVUlTdHJpbmcoIiVkIEVycm9yIiksIFdJLlVJU3RyaW5nKCIlZCBFcnJv
cnMiKSk7Ci0gICAgICAgICAgICBhZGRTY29wZUJhckl0ZW0oV0kuQXVkaXRUZXN0Q2FzZVJlc3Vs
dC5MZXZlbC5VbnN1cHBvcnRlZCwgV0kuVUlTdHJpbmcoIiVkIFVuc3VwcG9ydGVkIiwgIiVkIFVu
c3VwcG9ydGVkIChzaW5ndWxhcikiKSwgV0kuVUlTdHJpbmcoIiVkIFVuc3VwcG9ydGVkIiwgIiVk
IFVuc3VwcG9ydGVkIChwbHVyYWwpIikpOworICAgICAgICAgICAgYWRkU2NvcGVCYXJJdGVtKFdJ
LkF1ZGl0VGVzdENhc2VSZXN1bHQuTGV2ZWwuVW5zdXBwb3J0ZWQsIFdJLlVJU3RyaW5nKCIlZCBV
bnN1cHBvcnRlZCIsICIlZCBVbnN1cHBvcnRlZCAoc2luZ3VsYXIpIiwgIiIpLCBXSS5VSVN0cmlu
ZygiJWQgVW5zdXBwb3J0ZWQiLCAiJWQgVW5zdXBwb3J0ZWQgKHBsdXJhbCkiLCAiIikpOwogCiAg
ICAgICAgICAgICB0aGlzLl9sZXZlbFNjb3BlQmFyID0gbmV3IFdJLlNjb3BlQmFyKG51bGwsIHNj
b3BlQmFySXRlbXMpOwogICAgICAgICAgICAgdGhpcy5fbGV2ZWxTY29wZUJhci5hZGRFdmVudExp
c3RlbmVyKFdJLlNjb3BlQmFyLkV2ZW50LlNlbGVjdGlvbkNoYW5nZWQsIHRoaXMuX2hhbmRsZUxl
dmVsU2NvcGVCYXJTZWxlY3Rpb25DaGFuZ2VkLCB0aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NQVVRpbWVsaW5lVmlldy5qcyBiL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NQVVRpbWVsaW5lVmlldy5q
cwppbmRleCAxNTEzZDRlYWNhNS4uMTdhZDVhZDA1NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NQVVRpbWVsaW5lVmlldy5qcworKysgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9DUFVUaW1lbGluZVZpZXcu
anMKQEAgLTU3LDkgKzU3LDkgQEAgV0kuQ1BVVGltZWxpbmVWaWV3ID0gY2xhc3MgQ1BVVGltZWxp
bmVWaWV3IGV4dGVuZHMgV0kuVGltZWxpbmVWaWV3CiAgICAgICAgIGNhc2UgV0kuQ1BVVGltZWxp
bmVWaWV3LlNhbXBsZVR5cGUuU2NyaXB0OgogICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5n
KCJTY3JpcHQiKTsKICAgICAgICAgY2FzZSBXSS5DUFVUaW1lbGluZVZpZXcuU2FtcGxlVHlwZS5M
YXlvdXQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkxheW91dCIpOworICAgICAg
ICAgICAgcmV0dXJuIFdJLnJlcGVhdGVkVUlTdHJpbmcudGltZWxpbmVSZWNvcmRMYXlvdXQoKTsK
ICAgICAgICAgY2FzZSBXSS5DUFVUaW1lbGluZVZpZXcuU2FtcGxlVHlwZS5QYWludDoKLSAgICAg
ICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiUGFpbnQiKTsKKyAgICAgICAgICAgIHJldHVybiBX
SS5yZXBlYXRlZFVJU3RyaW5nLnRpbWVsaW5lUmVjb3JkUGFpbnQoKTsKICAgICAgICAgY2FzZSBX
SS5DUFVUaW1lbGluZVZpZXcuU2FtcGxlVHlwZS5TdHlsZToKICAgICAgICAgICAgIHJldHVybiBX
SS5VSVN0cmluZygiU3R5bGUgUmVzb2x1dGlvbiIpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxp
dGllcy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NvbnRl
eHRNZW51VXRpbGl0aWVzLmpzCmluZGV4IGUxYjEyNmYzZWI4Li4zNjcyZDQ3YTZkZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ29udGV4dE1l
bnVVdGlsaXRpZXMuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
Vmlld3MvQ29udGV4dE1lbnVVdGlsaXRpZXMuanMKQEAgLTIxNiwxMCArMjE2LDEwIEBAIFdJLmFw
cGVuZENvbnRleHRNZW51SXRlbXNGb3JET01Ob2RlID0gZnVuY3Rpb24oY29udGV4dE1lbnUsIGRv
bU5vZGUsIG9wdGlvbnMgPSB7CiAgICAgY29udGV4dE1lbnUuYXBwZW5kU2VwYXJhdG9yKCk7CiAK
ICAgICBpZiAoIW9wdGlvbnMuZXhjbHVkZUxvZ0VsZW1lbnQgJiYgIWRvbU5vZGUuaXNJblVzZXJB
Z2VudFNoYWRvd1RyZWUoKSAmJiAhZG9tTm9kZS5pc1BzZXVkb0VsZW1lbnQoKSkgewotICAgICAg
ICBsZXQgbGFiZWwgPSBpc0VsZW1lbnQgPyBXSS5VSVN0cmluZygiTG9nIEVsZW1lbnQiKSA6IFdJ
LlVJU3RyaW5nKCJMb2cgTm9kZSIpOworICAgICAgICBsZXQgbGFiZWwgPSBpc0VsZW1lbnQgPyBX
SS5VSVN0cmluZygiTG9nIEVsZW1lbnQiLCAiTG9nIChwcmludCkgRE9NIGVsZW1lbnQgdG8gQ29u
c29sZSIpIDogV0kuVUlTdHJpbmcoIkxvZyBOb2RlIiwgIkxvZyAocHJpbnQpIERPTSBub2RlIHRv
IENvbnNvbGUiKTsKICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShsYWJlbCwgKCkgPT4g
ewogICAgICAgICAgICAgV0kuUmVtb3RlT2JqZWN0LnJlc29sdmVOb2RlKGRvbU5vZGUsIFdJLlJ1
bnRpbWVNYW5hZ2VyLkNvbnNvbGVPYmplY3RHcm91cCkudGhlbigocmVtb3RlT2JqZWN0KSA9PiB7
Ci0gICAgICAgICAgICAgICAgbGV0IHRleHQgPSBpc0VsZW1lbnQgPyBXSS5VSVN0cmluZygiU2Vs
ZWN0ZWQgRWxlbWVudCIpIDogV0kuVUlTdHJpbmcoIlNlbGVjdGVkIE5vZGUiKTsKKyAgICAgICAg
ICAgICAgICBsZXQgdGV4dCA9IGlzRWxlbWVudCA/IFdJLlVJU3RyaW5nKCJTZWxlY3RlZCBFbGVt
ZW50IiwgIlNlbGVjdGVkIERPTSBlbGVtZW50IikgOiBXSS5VSVN0cmluZygiU2VsZWN0ZWQgTm9k
ZSIsICJTZWxlY3RlZCBET00gbm9kZSIpOwogICAgICAgICAgICAgICAgIGNvbnN0IGFkZFNwZWNp
YWxVc2VyTG9nQ2xhc3MgPSB0cnVlOwogICAgICAgICAgICAgICAgIFdJLmNvbnNvbGVMb2dWaWV3
Q29udHJvbGxlci5hcHBlbmRJbW1lZGlhdGVFeGVjdXRpb25XaXRoUmVzdWx0KHRleHQsIHJlbW90
ZU9iamVjdCwgYWRkU3BlY2lhbFVzZXJMb2dDbGFzcyk7CiAgICAgICAgICAgICB9KTsKQEAgLTIy
NywxOSArMjI3LDE5IEBAIFdJLmFwcGVuZENvbnRleHRNZW51SXRlbXNGb3JET01Ob2RlID0gZnVu
Y3Rpb24oY29udGV4dE1lbnUsIGRvbU5vZGUsIG9wdGlvbnMgPSB7CiAgICAgfQogCiAgICAgaWYg
KCFvcHRpb25zLmV4Y2x1ZGVSZXZlYWxFbGVtZW50ICYmIHdpbmRvdy5ET01BZ2VudCAmJiBhdHRh
Y2hlZCkgewotICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJSZXZl
YWwgaW4gRE9NIFRyZWUiKSwgKCkgPT4geworICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVt
KFdJLnJlcGVhdGVkVUlTdHJpbmcucmV2ZWFsSW5ET01UcmVlKCksICgpID0+IHsKICAgICAgICAg
ICAgIFdJLmRvbU1hbmFnZXIuaW5zcGVjdEVsZW1lbnQoZG9tTm9kZS5pZCk7CiAgICAgICAgIH0p
OwogICAgIH0KIAogICAgIGlmIChXSS5zZXR0aW5ncy5leHBlcmltZW50YWxFbmFibGVMYXllcnNU
YWIudmFsdWUgJiYgd2luZG93LkxheWVyVHJlZUFnZW50ICYmIGF0dGFjaGVkKSB7Ci0gICAgICAg
IGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlJldmVhbCBpbiBMYXllcnMgVGFi
IiksICgpID0+IHsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygi
UmV2ZWFsIGluIExheWVycyBUYWIiLCAiT3BlbiBMYXllcnMgdGFiIGFuZCBzZWxlY3QgdGhlIGxh
eWVyIGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBub2RlIiksICgpID0+IHsKICAgICAgICAgICAgIFdJ
LnNob3dMYXllcnNUYWIoe25vZGVUb1NlbGVjdDogZG9tTm9kZX0pOwogICAgICAgICB9KTsKICAg
ICB9CiAKICAgICBpZiAod2luZG93LlBhZ2VBZ2VudCAmJiBhdHRhY2hlZCkgewotICAgICAgICBj
b250ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJDYXB0dXJlIFNjcmVlbnNob3QiKSwg
KCkgPT4geworICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJDYXB0
dXJlIFNjcmVlbnNob3QiLCAiQ2FwdHVyZSBzY3JlZW5zaG90IG9mIHRoZSBzZWxlY3RlZCBET00g
bm9kZSIpLCAoKSA9PiB7CiAgICAgICAgICAgICBQYWdlQWdlbnQuc25hcHNob3ROb2RlKGRvbU5v
ZGUuaWQsIChlcnJvciwgZGF0YVVSTCkgPT4gewogICAgICAgICAgICAgICAgIGlmIChlcnJvcikg
ewogICAgICAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXQgPSBXSS5tYWluVGFyZ2V0OwpAQCAt
MjYyLDcgKzI2Miw3IEBAIFdJLmFwcGVuZENvbnRleHRNZW51SXRlbXNGb3JET01Ob2RlID0gZnVu
Y3Rpb24oY29udGV4dE1lbnUsIGRvbU5vZGUsIG9wdGlvbnMgPSB7CiAgICAgfQogCiAgICAgaWYg
KGlzRWxlbWVudCAmJiBhdHRhY2hlZCkgewotICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVt
KFdJLlVJU3RyaW5nKCJTY3JvbGwgSW50byBWaWV3IiksICgpID0+IHsKKyAgICAgICAgY29udGV4
dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiU2Nyb2xsIGludG8gVmlldyIsICJTY3JvbGwg
c2VsZWN0ZWQgRE9NIG5vZGUgaW50byB2aWV3IG9uIHRoZSBpbnNwZWN0ZWQgd2ViIHBhZ2UiKSwg
KCkgPT4gewogICAgICAgICAgICAgZG9tTm9kZS5zY3JvbGxJbnRvVmlldygpOwogICAgICAgICB9
KTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMKaW5kZXgg
NjY3ZDU1N2VmYzYuLjk5MWQ3MTZkYjVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMKKysrIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NQnJlYWtwb2ludFRy
ZWVFbGVtZW50LmpzCkBAIC01MCwxMSArNTAsMTEgQEAgV0kuRE9NQnJlYWtwb2ludFRyZWVFbGVt
ZW50ID0gY2xhc3MgRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50IGV4dGVuZHMgV0kuR2VuZXJhbFQK
ICAgICB7CiAgICAgICAgIHN3aXRjaCAodHlwZSkgewogICAgICAgICBjYXNlIFdJLkRPTUJyZWFr
cG9pbnQuVHlwZS5TdWJ0cmVlTW9kaWZpZWQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJp
bmcoIlN1YnRyZWUgTW9kaWZpZWQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygi
U3VidHJlZSBNb2RpZmllZCIsICJBIHN1Ym1lbnUgaXRlbSBvZiAnQnJlYWsgT24nIHRoYXQgYnJl
YWtzIChwYXVzZXMpIGJlZm9yZSBjaGlsZCBET00gbm9kZSBpcyBtb2RpZmllZCIpOwogICAgICAg
ICBjYXNlIFdJLkRPTUJyZWFrcG9pbnQuVHlwZS5BdHRyaWJ1dGVNb2RpZmllZDoKLSAgICAgICAg
ICAgIHJldHVybiBXSS5VSVN0cmluZygiQXR0cmlidXRlIE1vZGlmaWVkIik7CisgICAgICAgICAg
ICByZXR1cm4gV0kuVUlTdHJpbmcoIkF0dHJpYnV0ZSBNb2RpZmllZCIsICJBIHN1Ym1lbnUgaXRl
bSBvZiAnQnJlYWsgT24nIHRoYXQgYnJlYWtzIChwYXVzZXMpIGJlZm9yZSBET00gYXR0cmlidXRl
IGlzIG1vZGlmaWVkIik7CiAgICAgICAgIGNhc2UgV0kuRE9NQnJlYWtwb2ludC5UeXBlLk5vZGVS
ZW1vdmVkOgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJOb2RlIFJlbW92ZWQiKTsK
KyAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTm9kZSBSZW1vdmVkIiwgIkEgc3VibWVu
dSBpdGVtIG9mICdCcmVhayBPbicgdGhhdCBicmVha3MgKHBhdXNlcykgYmVmb3JlIERPTSBub2Rl
IGlzIHJlbW92ZWQiKTsKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIGNvbnNvbGUuZXJy
b3IoIlVuZXhwZWN0ZWQgRE9NIGJyZWFrcG9pbnQgdHlwZTogIiArIHR5cGUpOwogICAgICAgICAg
ICAgcmV0dXJuIG51bGw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJlZUVsZW1lbnQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJlZUVsZW1lbnQuanMKaW5kZXggMWY1ZDE3
MTgzZTQuLmFkYWZmM2ZhYWU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJlZUVsZW1lbnQuanMKKysrIGIvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NTm9kZVRyZWVFbGVtZW50LmpzCkBAIC02
MSw3ICs2MSw3IEBAIFdJLkRPTU5vZGVUcmVlRWxlbWVudCA9IGNsYXNzIERPTU5vZGVUcmVlRWxl
bWVudCBleHRlbmRzIFdJLkdlbmVyYWxUcmVlRWxlbWVudAogCiAgICAgICAgIGNvbnRleHRNZW51
LmFwcGVuZFNlcGFyYXRvcigpOwogCi0gICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0ku
VUlTdHJpbmcoIlJldmVhbCBpbiBET00gVHJlZSIpLCAoKSA9PiB7CisgICAgICAgIGNvbnRleHRN
ZW51LmFwcGVuZEl0ZW0oV0kucmVwZWF0ZWRVSVN0cmluZy5yZXZlYWxJbkRPTVRyZWUoKSwgKCkg
PT4gewogICAgICAgICAgICAgV0kuZG9tTWFuYWdlci5pbnNwZWN0RWxlbWVudCh0aGlzLnJlcHJl
c2VudGVkT2JqZWN0LmlkKTsKICAgICAgICAgfSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZUVsZW1lbnQuanMgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5q
cwppbmRleCAwYmU5YjA4MDZlNC4uMmE2OGEwYjYyZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVFbGVtZW50LmpzCisrKyBiL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVFbGVtZW50Lmpz
CkBAIC03NzcsMTQgKzc3NywxNCBAQCBXSS5ET01UcmVlRWxlbWVudCA9IGNsYXNzIERPTVRyZWVF
bGVtZW50IGV4dGVuZHMgV0kuVHJlZUVsZW1lbnQKICAgICAgICAgICAgIG5vZGUucmVtb3ZlQXR0
cmlidXRlKGF0dHJpYnV0ZU5hbWUpOwogICAgICAgICB9LCAhYXR0cmlidXRlIHx8ICFpc05vblNo
YWRvd0VkaXRhYmxlKTsKIAotICAgICAgICBzdWJNZW51cy5lZGl0LmFwcGVuZEl0ZW0oV0kuVUlT
dHJpbmcoIlRhZyIpLCAoKSA9PiB7CisgICAgICAgIHN1Yk1lbnVzLmVkaXQuYXBwZW5kSXRlbShX
SS5VSVN0cmluZygiVGFnIiwgIkEgc3VibWVudSBpdGVtIG9mICdFZGl0JyB0byBjaGFuZ2UgRE9N
IGVsZW1lbnQncyB0YWcgbmFtZSIpLCAoKSA9PiB7CiAgICAgICAgICAgICB0aGlzLl9zdGFydEVk
aXRpbmdUYWdOYW1lKCk7CiAgICAgICAgIH0sICFpc05vblNoYWRvd0VkaXRhYmxlKTsKIAogICAg
ICAgICBjb250ZXh0TWVudS5hcHBlbmRTZXBhcmF0b3IoKTsKIAogICAgICAgICBpZiAoV0kuY3Nz
TWFuYWdlci5jYW5Gb3JjZVBzZXVkb0NsYXNzZXMoKSAmJiBhdHRhY2hlZCkgewotICAgICAgICAg
ICAgbGV0IHBzZXVkb1N1Yk1lbnUgPSBjb250ZXh0TWVudS5hcHBlbmRTdWJNZW51SXRlbShXSS5V
SVN0cmluZygiRm9yY2VkIFBzZXVkby1DbGFzc2VzIikpOworICAgICAgICAgICAgbGV0IHBzZXVk
b1N1Yk1lbnUgPSBjb250ZXh0TWVudS5hcHBlbmRTdWJNZW51SXRlbShXSS5VSVN0cmluZygiRm9y
Y2VkIFBzZXVkby1DbGFzc2VzIiwgIkEgY29udGV4dCBtZW51IGl0ZW0gdG8gZm9yY2UgKG92ZXJy
aWRlKSBhIERPTSBub2RlJ3MgcHNldWRvLWNsYXNzZXMiKSk7CiAKICAgICAgICAgICAgIGxldCBl
bmFibGVkUHNldWRvQ2xhc3NlcyA9IG5vZGUuZW5hYmxlZFBzZXVkb0NsYXNzZXM7CiAgICAgICAg
ICAgICBXSS5DU1NNYW5hZ2VyLkZvcmNlYWJsZVBzZXVkb0NsYXNzZXMuZm9yRWFjaCgocHNldWRv
Q2xhc3MpID0+IHsKQEAgLTgxNSw5ICs4MTUsOSBAQCBXSS5ET01UcmVlRWxlbWVudCA9IGNsYXNz
IERPTVRyZWVFbGVtZW50IGV4dGVuZHMgV0kuVHJlZUVsZW1lbnQKIAogICAgICAgICBsZXQgaXNF
ZGl0YWJsZU5vZGUgPSBub2RlLm5vZGVUeXBlKCkgPT09IE5vZGUuRUxFTUVOVF9OT0RFICYmIHRo
aXMuZWRpdGFibGU7CiAgICAgICAgIGxldCBmb3JiaWRkZW5DbG9zaW5nVGFnID0gV0kuRE9NVHJl
ZUVsZW1lbnQuRm9yYmlkZGVuQ2xvc2luZ1RhZ0VsZW1lbnRzLmhhcyhub2RlLm5vZGVOYW1lSW5D
b3JyZWN0Q2FzZSgpKTsKLSAgICAgICAgc3ViTWVudXMuYWRkLmFwcGVuZEl0ZW0oV0kuVUlTdHJp
bmcoIkNoaWxkIiksIHRoaXMuX2FkZEhUTUwuYmluZCh0aGlzKSwgZm9yYmlkZGVuQ2xvc2luZ1Rh
ZyB8fCAhaXNFZGl0YWJsZU5vZGUpOwotICAgICAgICBzdWJNZW51cy5hZGQuYXBwZW5kSXRlbShX
SS5VSVN0cmluZygiUHJldmlvdXMgU2libGluZyIpLCB0aGlzLl9hZGRQcmV2aW91c1NpYmxpbmcu
YmluZCh0aGlzKSwgIWlzRWRpdGFibGVOb2RlKTsKLSAgICAgICAgc3ViTWVudXMuYWRkLmFwcGVu
ZEl0ZW0oV0kuVUlTdHJpbmcoIk5leHQgU2libGluZyIpLCB0aGlzLl9hZGROZXh0U2libGluZy5i
aW5kKHRoaXMpLCAhaXNFZGl0YWJsZU5vZGUpOworICAgICAgICBzdWJNZW51cy5hZGQuYXBwZW5k
SXRlbShXSS5VSVN0cmluZygiQ2hpbGQiLCAiQSBzdWJtZW51IGl0ZW0gb2YgJ0FkZCcgdG8gYXBw
ZW5kIERPTSBub2RlcyB0byB0aGUgc2VsZWN0ZWQgRE9NIG5vZGUiKSwgdGhpcy5fYWRkSFRNTC5i
aW5kKHRoaXMpLCBmb3JiaWRkZW5DbG9zaW5nVGFnIHx8ICFpc0VkaXRhYmxlTm9kZSk7CisgICAg
ICAgIHN1Yk1lbnVzLmFkZC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJQcmV2aW91cyBTaWJsaW5n
IiwgIkEgc3VibWVudSBpdGVtIG9mICdBZGQnIHRvIGFkZCBET00gbm9kZXMgYmVmb3JlIHRoZSBz
ZWxlY3RlZCBET00gbm9kZSIpLCB0aGlzLl9hZGRQcmV2aW91c1NpYmxpbmcuYmluZCh0aGlzKSwg
IWlzRWRpdGFibGVOb2RlKTsKKyAgICAgICAgc3ViTWVudXMuYWRkLmFwcGVuZEl0ZW0oV0kuVUlT
dHJpbmcoIk5leHQgU2libGluZyIsICJBIHN1Ym1lbnUgaXRlbSBvZiAnQWRkJyB0byBhZGQgRE9N
IG5vZGVzIGFmdGVyIHRoZSBzZWxlY3RlZCBET00gbm9kZSIpLCB0aGlzLl9hZGROZXh0U2libGlu
Zy5iaW5kKHRoaXMpLCAhaXNFZGl0YWJsZU5vZGUpOwogCiAgICAgICAgIHN1Yk1lbnVzLmVkaXQu
YXBwZW5kSXRlbShXSS5VSVN0cmluZygiSFRNTCIpLCB0aGlzLl9lZGl0QXNIVE1MLmJpbmQodGhp
cyksICF0aGlzLmVkaXRhYmxlKTsKICAgICAgICAgc3ViTWVudXMuY29weS5hcHBlbmRJdGVtKFdJ
LlVJU3RyaW5nKCJIVE1MIiksIHRoaXMuX2NvcHlIVE1MLmJpbmQodGhpcyksIG5vZGUuaXNQc2V1
ZG9FbGVtZW50KCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvRGVidWdnZXJTaWRlYmFyUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9EZWJ1Z2dlclNpZGViYXJQYW5lbC5qcwppbmRleCA0ZTdj
NDBhMDI1MC4uNjk2ZmZjMDlhNzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL0RlYnVnZ2VyU2lkZWJhclBhbmVsLmpzCisrKyBiL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RlYnVnZ2VyU2lkZWJhclBhbmVsLmpz
CkBAIC00NzQsMTMgKzQ3NCwxMyBAQCBXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbCA9IGNsYXNzIERl
YnVnZ2VyU2lkZWJhclBhbmVsIGV4dGVuZHMgV0kuTmF2aWdhdGlvblNpZGViYQogCiAgICAgICAg
IGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIuYWxsRXhjZXB0aW9uc0JyZWFr
cG9pbnQpIHsKICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NOYW1lID0gV0kuRGVidWdnZXJTaWRl
YmFyUGFuZWwuRXhjZXB0aW9uSWNvblN0eWxlQ2xhc3NOYW1lOwotICAgICAgICAgICAgb3B0aW9u
cy50aXRsZSA9IFdJLlVJU3RyaW5nKCJBbGwgRXhjZXB0aW9ucyIpOworICAgICAgICAgICAgb3B0
aW9ucy50aXRsZSA9IFdJLnJlcGVhdGVkVUlTdHJpbmcuYWxsRXhjZXB0aW9ucygpOwogICAgICAg
ICB9IGVsc2UgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRlYnVnZ2VyTWFuYWdlci51bmNhdWdodEV4
Y2VwdGlvbnNCcmVha3BvaW50KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9IFdJ
LkRlYnVnZ2VyU2lkZWJhclBhbmVsLkV4Y2VwdGlvbkljb25TdHlsZUNsYXNzTmFtZTsKLSAgICAg
ICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiVW5jYXVnaHQgRXhjZXB0aW9ucyIp
OworICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLnJlcGVhdGVkVUlTdHJpbmcudW5jYXVn
aHRFeGNlcHRpb25zKCk7CiAgICAgICAgIH0gZWxzZSBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZGVi
dWdnZXJNYW5hZ2VyLmFzc2VydGlvbkZhaWx1cmVzQnJlYWtwb2ludCkgewogICAgICAgICAgICAg
b3B0aW9ucy5jbGFzc05hbWUgPSBXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbC5Bc3NlcnRpb25JY29u
U3R5bGVDbGFzc05hbWU7Ci0gICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmco
IkFzc2VydGlvbiBGYWlsdXJlcyIpOworICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLnJl
cGVhdGVkVUlTdHJpbmcuYXNzZXJ0aW9uRmFpbHVyZXMoKTsKICAgICAgICAgfSBlbHNlIGlmIChi
cmVha3BvaW50IGluc3RhbmNlb2YgV0kuRE9NQnJlYWtwb2ludCkgewogICAgICAgICAgICAgaWYg
KCFicmVha3BvaW50LmRvbU5vZGVJZGVudGlmaWVyKQogICAgICAgICAgICAgICAgIHJldHVybiBu
dWxsOwpAQCAtNTE0LDcgKzUxNCw3IEBAIFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsID0gY2xhc3Mg
RGVidWdnZXJTaWRlYmFyUGFuZWwgZXh0ZW5kcyBXSS5OYXZpZ2F0aW9uU2lkZWJhCiAKICAgICAg
ICAgICAgIGlmIChicmVha3BvaW50ID09PSBXSS5kb21EZWJ1Z2dlck1hbmFnZXIuYWxsUmVxdWVz
dHNCcmVha3BvaW50KSB7CiAgICAgICAgICAgICAgICAgb3B0aW9ucy5jbGFzc05hbWUgPSBXSS5E
ZWJ1Z2dlclNpZGViYXJQYW5lbC5Bc3NlcnRpb25JY29uU3R5bGVDbGFzc05hbWU7Ci0gICAgICAg
ICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5nKCJBbGwgUmVxdWVzdHMiKTsKKyAg
ICAgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kucmVwZWF0ZWRVSVN0cmluZy5hbGxSZXF1
ZXN0cygpOwogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgbGV0
IHNvdXJjZUNvZGUgPSBicmVha3BvaW50LnNvdXJjZUNvZGVMb2NhdGlvbiAmJiBicmVha3BvaW50
LnNvdXJjZUNvZGVMb2NhdGlvbi5kaXNwbGF5U291cmNlQ29kZTsKQEAgLTE0NTcsNyArMTQ1Nyw3
IEBAIFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsID0gY2xhc3MgRGVidWdnZXJTaWRlYmFyUGFuZWwg
ZXh0ZW5kcyBXSS5OYXZpZ2F0aW9uU2lkZWJhCiAgICAgICAgIGlmIChJbnNwZWN0b3JCYWNrZW5k
LmRvbWFpbnMuRGVidWdnZXIuc2V0UGF1c2VPbkFzc2VydGlvbnMpIHsKICAgICAgICAgICAgIGxl
dCBhc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnRTaG93biA9IFdJLnNldHRpbmdzLnNob3dBc3Nl
cnRpb25GYWlsdXJlc0JyZWFrcG9pbnQudmFsdWU7CiAKLSAgICAgICAgICAgIGNvbnRleHRNZW51
LmFwcGVuZENoZWNrYm94SXRlbShXSS5VSVN0cmluZygiQXNzZXJ0aW9uIEZhaWx1cmVzIiksICgp
ID0+IHsKKyAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZENoZWNrYm94SXRlbShXSS5yZXBl
YXRlZFVJU3RyaW5nLmFzc2VydGlvbkZhaWx1cmVzKCksICgpID0+IHsKICAgICAgICAgICAgICAg
ICBpZiAoYXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50U2hvd24pCiAgICAgICAgICAgICAgICAg
ICAgIFdJLmRlYnVnZ2VyTWFuYWdlci5yZW1vdmVCcmVha3BvaW50KFdJLmRlYnVnZ2VyTWFuYWdl
ci5hc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnQpOwogICAgICAgICAgICAgICAgIGVsc2UgewpA
QCAtMTQ3OSw3ICsxNDc5LDcgQEAgV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwgPSBjbGFzcyBEZWJ1
Z2dlclNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5hdmlnYXRpb25TaWRlYmEKIAogICAgICAgICAg
ICAgbGV0IGFsbFJlcXVlc3RzQnJlYWtwb2ludFNob3duID0gV0kuc2V0dGluZ3Muc2hvd0FsbFJl
cXVlc3RzQnJlYWtwb2ludC52YWx1ZTsKIAotICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5k
Q2hlY2tib3hJdGVtKFdJLlVJU3RyaW5nKCJBbGwgUmVxdWVzdHMiKSwgKCkgPT4geworICAgICAg
ICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2tib3hJdGVtKFdJLnJlcGVhdGVkVUlTdHJpbmcu
YWxsUmVxdWVzdHMoKSwgKCkgPT4gewogICAgICAgICAgICAgICAgIGlmIChhbGxSZXF1ZXN0c0Jy
ZWFrcG9pbnRTaG93bikKICAgICAgICAgICAgICAgICAgICAgV0kuZG9tRGVidWdnZXJNYW5hZ2Vy
LnJlbW92ZVVSTEJyZWFrcG9pbnQoV0kuZG9tRGVidWdnZXJNYW5hZ2VyLmFsbFJlcXVlc3RzQnJl
YWtwb2ludCk7CiAgICAgICAgICAgICAgICAgZWxzZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJhclBh
bmVsLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJU
cmVlRGV0YWlsc1NpZGViYXJQYW5lbC5qcwppbmRleCAyYjY1MTNhN2ZkMi4uYzFhZDZmYWE0Y2Ug
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0xh
eWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbC5qcwpAQCAt
MTM2LDcgKzEzNiw3IEBAIFdJLkxheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwgPSBjbGFzcyBM
YXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsIGV4dGVuZHMgV0kuCiAgICAgICAgIGNvbHVtbnMu
bmFtZS50aXRsZSA9IFdJLlVJU3RyaW5nKCJOb2RlIik7CiAgICAgICAgIGNvbHVtbnMubmFtZS5z
b3J0YWJsZSA9IGZhbHNlOwogCi0gICAgICAgIGNvbHVtbnMucGFpbnRDb3VudC50aXRsZSA9IFdJ
LlVJU3RyaW5nKCJQYWludHMiKTsKKyAgICAgICAgY29sdW1ucy5wYWludENvdW50LnRpdGxlID0g
V0kuVUlTdHJpbmcoIlBhaW50cyIsICJQYWludHMgQCBDb2x1bW4gdGl0bGUiLCAiQSBjb3VudCBv
ZiBob3cgbWFueSB0aW1lcyBhbiBlbGVtZW50IHdhcyBwYWludGVkIChyZW5kZXJlZCkiKTsKICAg
ICAgICAgY29sdW1ucy5wYWludENvdW50LnNvcnRhYmxlID0gdHJ1ZTsKICAgICAgICAgY29sdW1u
cy5wYWludENvdW50LmFsaWduZWQgPSAicmlnaHQiOwogICAgICAgICBjb2x1bW5zLnBhaW50Q291
bnQud2lkdGggPSAiNzBweCI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9OZXR3b3JrVGFibGVDb250ZW50Vmlldy5qcyBiL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL05ldHdvcmtUYWJsZUNvbnRlbnRWaWV3Lmpz
CmluZGV4IGFhMDg0YTFiYjM4Li4xZGNhMzg0OWYzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTmV0d29ya1RhYmxlQ29udGVudFZpZXcuanMK
KysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTmV0d29ya1Rh
YmxlQ29udGVudFZpZXcuanMKQEAgLTIxMSw3ICsyMTEsNyBAQCBXSS5OZXR3b3JrVGFibGVDb250
ZW50VmlldyA9IGNsYXNzIE5ldHdvcmtUYWJsZUNvbnRlbnRWaWV3IGV4dGVuZHMgV0kuQ29udGVu
dFZpZQogICAgICAgICBjYXNlIFdJLlJlc291cmNlLlR5cGUuWEhSOgogICAgICAgICAgICAgcmV0
dXJuICJYSFIiOwogICAgICAgICBjYXNlIFdJLlJlc291cmNlLlR5cGUuRmV0Y2g6Ci0gICAgICAg
ICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkZldGNoIik7CisgICAgICAgICAgICByZXR1cm4gV0ku
cmVwZWF0ZWRVSVN0cmluZy5mZXRjaCgpOwogICAgICAgICBjYXNlIFdJLlJlc291cmNlLlR5cGUu
UGluZzoKICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiUGluZyIpOwogICAgICAgICBj
YXNlIFdJLlJlc291cmNlLlR5cGUuQmVhY29uOgpAQCAtMTE3NSw3ICsxMTc1LDcgQEAgV0kuTmV0
d29ya1RhYmxlQ29udGVudFZpZXcgPSBjbGFzcyBOZXR3b3JrVGFibGVDb250ZW50VmlldyBleHRl
bmRzIFdJLkNvbnRlbnRWaWUKICAgICAgICAgICAgIGFsaWduOiAicmlnaHQiLAogICAgICAgICB9
KTsKIAotICAgICAgICB0aGlzLl90cmFuc2ZlclNpemVDb2x1bW4gPSBuZXcgV0kuVGFibGVDb2x1
bW4oInRyYW5zZmVyU2l6ZSIsIFdJLlVJU3RyaW5nKCJUcmFuc2ZlciBTaXplIiksIHsKKyAgICAg
ICAgdGhpcy5fdHJhbnNmZXJTaXplQ29sdW1uID0gbmV3IFdJLlRhYmxlQ29sdW1uKCJ0cmFuc2Zl
clNpemUiLCBXSS5VSVN0cmluZygiVHJhbnNmZXIgU2l6ZSIsICJBbW91bnQgb2YgZGF0YSBzZW50
IG92ZXIgdGhlIG5ldHdvcmsiKSwgewogICAgICAgICAgICAgbWluV2lkdGg6IDEwMCwKICAgICAg
ICAgICAgIG1heFdpZHRoOiAxNTAsCiAgICAgICAgICAgICBpbml0aWFsV2lkdGg6IDEwMCwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJj
ZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvVmlld3MvU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMKaW5kZXggZjBl
OTRmYmFkMTYuLmYzOTNlY2NmYWNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbC5qcworKysg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VzTmF2aWdh
dGlvblNpZGViYXJQYW5lbC5qcwpAQCAtODgzLDEzICs4ODMsMTMgQEAgV0kuU291cmNlc05hdmln
YXRpb25TaWRlYmFyUGFuZWwgPSBjbGFzcyBTb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCBl
eHRlbmRzIFcKIAogICAgICAgICBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZGVidWdnZXJNYW5hZ2Vy
LmFsbEV4Y2VwdGlvbnNCcmVha3BvaW50KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFt
ZSA9ICJicmVha3BvaW50LWV4Y2VwdGlvbi1pY29uIjsKLSAgICAgICAgICAgIG9wdGlvbnMudGl0
bGUgPSBXSS5VSVN0cmluZygiQWxsIEV4Y2VwdGlvbnMiKTsKKyAgICAgICAgICAgIG9wdGlvbnMu
dGl0bGUgPSBXSS5yZXBlYXRlZFVJU3RyaW5nLmFsbEV4Y2VwdGlvbnMoKTsKICAgICAgICAgfSBl
bHNlIGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIudW5jYXVnaHRFeGNlcHRp
b25zQnJlYWtwb2ludCkgewogICAgICAgICAgICAgb3B0aW9ucy5jbGFzc05hbWUgPSAiYnJlYWtw
b2ludC1leGNlcHRpb24taWNvbiI7Ci0gICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlT
dHJpbmcoIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiKTsKKyAgICAgICAgICAgIG9wdGlvbnMudGl0bGUg
PSBXSS5yZXBlYXRlZFVJU3RyaW5nLnVuY2F1Z2h0RXhjZXB0aW9ucygpOwogICAgICAgICB9IGVs
c2UgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRlYnVnZ2VyTWFuYWdlci5hc3NlcnRpb25GYWlsdXJl
c0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NOYW1lID0gImJyZWFrcG9p
bnQtYXNzZXJ0aW9uLWljb24iOwotICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3Ry
aW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiKTsKKyAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBX
SS5yZXBlYXRlZFVJU3RyaW5nLmFzc2VydGlvbkZhaWx1cmVzKCk7CiAgICAgICAgIH0gZWxzZSBp
ZiAoYnJlYWtwb2ludCBpbnN0YW5jZW9mIFdJLkRPTUJyZWFrcG9pbnQpIHsKICAgICAgICAgICAg
IGlmICghYnJlYWtwb2ludC5kb21Ob2RlSWRlbnRpZmllcikKICAgICAgICAgICAgICAgICByZXR1
cm4gbnVsbDsKQEAgLTkyMyw3ICs5MjMsNyBAQCBXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQ
YW5lbCA9IGNsYXNzIFNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsIGV4dGVuZHMgVwogCiAg
ICAgICAgICAgICBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZG9tRGVidWdnZXJNYW5hZ2VyLmFsbFJl
cXVlc3RzQnJlYWtwb2ludCkgewogICAgICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NOYW1lID0g
ImJyZWFrcG9pbnQtYXNzZXJ0aW9uLWljb24iOwotICAgICAgICAgICAgICAgIG9wdGlvbnMudGl0
bGUgPSBXSS5VSVN0cmluZygiQWxsIFJlcXVlc3RzIik7CisgICAgICAgICAgICAgICAgb3B0aW9u
cy50aXRsZSA9IFdJLnJlcGVhdGVkVUlTdHJpbmcuYWxsUmVxdWVzdHMoKTsKICAgICAgICAgICAg
IH0KICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIGxldCBzb3VyY2VDb2RlID0gYnJlYWtw
b2ludC5zb3VyY2VDb2RlTG9jYXRpb24gJiYgYnJlYWtwb2ludC5zb3VyY2VDb2RlTG9jYXRpb24u
ZGlzcGxheVNvdXJjZUNvZGU7CkBAIC0xNTAyLDcgKzE1MDIsNyBAQCBXSS5Tb3VyY2VzTmF2aWdh
dGlvblNpZGViYXJQYW5lbCA9IGNsYXNzIFNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsIGV4
dGVuZHMgVwogICAgICAgICBpZiAoSW5zcGVjdG9yQmFja2VuZC5kb21haW5zLkRlYnVnZ2VyLnNl
dFBhdXNlT25Bc3NlcnRpb25zKSB7CiAgICAgICAgICAgICBsZXQgYXNzZXJ0aW9uRmFpbHVyZXNC
cmVha3BvaW50U2hvd24gPSBXSS5zZXR0aW5ncy5zaG93QXNzZXJ0aW9uRmFpbHVyZXNCcmVha3Bv
aW50LnZhbHVlOwogCi0gICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0ZW0o
V0kuVUlTdHJpbmcoIkFzc2VydGlvbiBGYWlsdXJlcyIpLCAoKSA9PiB7CisgICAgICAgICAgICBj
b250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0ZW0oV0kucmVwZWF0ZWRVSVN0cmluZy5hc3NlcnRp
b25GYWlsdXJlcygpLCAoKSA9PiB7CiAgICAgICAgICAgICAgICAgaWYgKGFzc2VydGlvbkZhaWx1
cmVzQnJlYWtwb2ludFNob3duKQogICAgICAgICAgICAgICAgICAgICBXSS5kZWJ1Z2dlck1hbmFn
ZXIucmVtb3ZlQnJlYWtwb2ludChXSS5kZWJ1Z2dlck1hbmFnZXIuYXNzZXJ0aW9uRmFpbHVyZXNC
cmVha3BvaW50KTsKICAgICAgICAgICAgICAgICBlbHNlIHsKQEAgLTE1MjQsNyArMTUyNCw3IEBA
IFdJLlNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsID0gY2xhc3MgU291cmNlc05hdmlnYXRp
b25TaWRlYmFyUGFuZWwgZXh0ZW5kcyBXCiAKICAgICAgICAgICAgIGxldCBhbGxSZXF1ZXN0c0Jy
ZWFrcG9pbnRTaG93biA9IFdJLnNldHRpbmdzLnNob3dBbGxSZXF1ZXN0c0JyZWFrcG9pbnQudmFs
dWU7CiAKLSAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZENoZWNrYm94SXRlbShXSS5VSVN0
cmluZygiQWxsIFJlcXVlc3RzIiksICgpID0+IHsKKyAgICAgICAgICAgIGNvbnRleHRNZW51LmFw
cGVuZENoZWNrYm94SXRlbShXSS5yZXBlYXRlZFVJU3RyaW5nLmFsbFJlcXVlc3RzKCksICgpID0+
IHsKICAgICAgICAgICAgICAgICBpZiAoYWxsUmVxdWVzdHNCcmVha3BvaW50U2hvd24pCiAgICAg
ICAgICAgICAgICAgICAgIFdJLmRvbURlYnVnZ2VyTWFuYWdlci5yZW1vdmVVUkxCcmVha3BvaW50
KFdJLmRvbURlYnVnZ2VyTWFuYWdlci5hbGxSZXF1ZXN0c0JyZWFrcG9pbnQpOwogICAgICAgICAg
ICAgICAgIGVsc2UgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlvbi5qcyBiL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5
bGVEZWNsYXJhdGlvblNlY3Rpb24uanMKaW5kZXggYjA0ZjkyMzkwMGEuLjRkMDE0YmRiMjNiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJl
YWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9uLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlv
blNlY3Rpb24uanMKQEAgLTMxNSw3ICszMTUsNyBAQCBXSS5TcHJlYWRzaGVldENTU1N0eWxlRGVj
bGFyYXRpb25TZWN0aW9uID0gY2xhc3MgU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uUwog
ICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBXSS5DU1NTdHlsZURlY2xhcmF0aW9u
LlR5cGUuSW5saW5lOgotICAgICAgICAgICAgdGhpcy5fc2VsZWN0b3JFbGVtZW50LnRleHRDb250
ZW50ID0gV0kuVUlTdHJpbmcoIlN0eWxlIEF0dHJpYnV0ZSIpOworICAgICAgICAgICAgdGhpcy5f
c2VsZWN0b3JFbGVtZW50LnRleHRDb250ZW50ID0gV0kuVUlTdHJpbmcoIlN0eWxlIEF0dHJpYnV0
ZSIsICJDU1MgcHJvcGVydGllcyBkZWZpbmVkIHZpYSBIVE1MIHN0eWxlIGF0dHJpYnV0ZSIpOwog
ICAgICAgICAgICAgdGhpcy5fc2VsZWN0b3JFbGVtZW50LmNsYXNzTGlzdC5hZGQoInN0eWxlLWF0
dHJpYnV0ZSIpOwogICAgICAgICAgICAgYnJlYWs7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0UnVsZXNTdHlsZURldGFp
bHNQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Nw
cmVhZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbC5qcwppbmRleCBlMWQ0ZWJlZDMxMi4uZGM4
NGMwNWFlYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNl
L1ZpZXdzL1NwcmVhZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbC5qcworKysgYi9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldFJ1bGVzU3R5bGVE
ZXRhaWxzUGFuZWwuanMKQEAgLTI1Niw3ICsyNTYsNyBAQCBXSS5TcHJlYWRzaGVldFJ1bGVzU3R5
bGVEZXRhaWxzUGFuZWwgPSBjbGFzcyBTcHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwg
ZQogCiAgICAgICAgIGxldCBhZGRTZWN0aW9uID0gKHNlY3Rpb24pID0+IHsKICAgICAgICAgICAg
IGlmIChzZWN0aW9uLnN0eWxlLmluaGVyaXRlZCAmJiAoIXByZXZpb3VzU3R5bGUgfHwgcHJldmlv
dXNTdHlsZS5ub2RlICE9PSBzZWN0aW9uLnN0eWxlLm5vZGUpKQotICAgICAgICAgICAgICAgIGFk
ZEhlYWRlcihXSS5VSVN0cmluZygiSW5oZXJpdGVkIEZyb20iKSwgc2VjdGlvbi5zdHlsZS5ub2Rl
KTsKKyAgICAgICAgICAgICAgICBhZGRIZWFkZXIoV0kuVUlTdHJpbmcoIkluaGVyaXRlZCBGcm9t
IiwgIkEgc2VjdGlvbiBvZiBDU1MgcnVsZXMgbWF0Y2hpbmcgYW4gYW5jZXN0b3IgRE9NIG5vZGUi
KSwgc2VjdGlvbi5zdHlsZS5ub2RlKTsKIAogICAgICAgICAgICAgaWYgKCFzZWN0aW9uLmlzRGVz
Y2VuZGFudE9mKHRoaXMpKSB7CiAgICAgICAgICAgICAgICAgbGV0IHJlZmVyZW5jZVZpZXcgPSB0
aGlzLnN1YnZpZXdzW3RoaXMuX3NlY3Rpb25zLmxlbmd0aF07CmRpZmYgLS1naXQgYS9Ub29scy9D
aGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggODExNmQ1OGE3ZTcuLjM3OTM2YWVhZTM2
IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTggQEAKKzIwMTktMDQtMjUgIE5pa2l0YSBWYXNpbHlldiAgPG52YXNpbHlldkBhcHBs
ZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUHJvdmlkZSBVSVN0cmluZyBkZXNjcmlw
dGlvbnMgdG8gaW1wcm92ZSBsb2NhbGl6YXRpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUxMzIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ4
NDU3ODE3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFsbG93IFdJLlVJU3RyaW5nIHRvIHRha2U6CisgICAgICAgIC0gV0kuVUlTdHJpbmcoc3RyaW5n
LCBrZXksIGNvbW1lbnQpCisgICAgICAgIC0gV0kuVUlTdHJpbmcoc3RyaW5nLCBjb21tZW50KQor
ICAgICAgICAtIFdJLlVJU3RyaW5nKHN0cmluZykKKworICAgICAgICAqIFNjcmlwdHMvZXh0cmFj
dC1sb2NhbGl6YWJsZS1qcy1zdHJpbmdzOgorCiAyMDE5LTA0LTIzICBBbmR5IEVzdGVzICA8YWVz
dGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBRdWlja0xvb2sgZG9jdW1lbnRzIGxvYWRl
ZCBmcm9tIGZpbGU6IFVSTHMgc2hvdWxkIGJlIGFsbG93ZWQgdG8gcGVyZm9ybSBzYW1lLWRvY3Vt
ZW50IG5hdmlnYXRpb25zCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL2V4dHJhY3QtbG9jYWxp
emFibGUtanMtc3RyaW5ncyBiL1Rvb2xzL1NjcmlwdHMvZXh0cmFjdC1sb2NhbGl6YWJsZS1qcy1z
dHJpbmdzCmluZGV4IDM0YjVhYzc3OTNiLi42OGM3MGJkZWM5NyAxMDA3NTUKLS0tIGEvVG9vbHMv
U2NyaXB0cy9leHRyYWN0LWxvY2FsaXphYmxlLWpzLXN0cmluZ3MKKysrIGIvVG9vbHMvU2NyaXB0
cy9leHRyYWN0LWxvY2FsaXphYmxlLWpzLXN0cmluZ3MKQEAgLTc0LDcgKzc0LDE1IEBAIGZvciBt
eSAkZmlsZSAoc29ydCBAZmlsZXMpIHsKICAgICAgICAgY2hvbXA7CiAKICAgICAgICAgIyBIYW5k
bGUgV2ViSW5zcGVjdG9yIHN0cmluZ3MuIFByaW50cyBhIHdhcm5pbmcgaWYgYSBub24tc3RyaW5n
IGxpdGVyYWwgaXMgcGFzc2VkIHRvIFdJLlVJU3RyaW5nKCkuCi0gICAgICAgIEhhbmRsZVVJU3Ry
aW5nKCQxLCAkMiB8fCAkMSwgJDMgfHwgIiIsICRmaWxlLCAkLikgd2hpbGUgcy9XSVwuVUlTdHJp
bmdcKCIoW14iXSspIig/OixccyoiKFteIl0rKSIoPzosXHMqIihbXiJdKykiKT8pP1wpLy87Cisg
ICAgICAgICMgQWxsb3c6IFdJLlVJU3RyaW5nKHN0cmluZywgY29tbWVudCkKKyAgICAgICAgIyAg
ICAgICAgV0kuVUlTdHJpbmcoc3RyaW5nLCBrZXksIGNvbW1lbnQpCisgICAgICAgIEhhbmRsZVVJ
U3RyaW5nKAorICAgICAgICAgICAgJDEsCisgICAgICAgICAgICAoJDMgfHwgKGRlZmluZWQgJDMg
YW5kIGxlbmd0aCAkMyA9PSAwKSkgPyAkMiA6ICQxLAorICAgICAgICAgICAgKCQzIHx8IChkZWZp
bmVkICQzIGFuZCBsZW5ndGggJDMgPT0gMCkpID8gJDMgOiAkMiB8fCAiIiwKKyAgICAgICAgICAg
ICRmaWxlLAorICAgICAgICAgICAgJC4KKyAgICAgICAgKSB3aGlsZSBzL1dJXC5VSVN0cmluZ1wo
IihbXiJdKykiKD86LFxzKiIoW14iXSopIig/OixccyoiKFteIl0qKSIpPyk/XCkvLzsKICAgICAg
ICAgcHJpbnQgIiRmaWxlOiQuOldBUk5JTkc6ICQmXG4iIHdoaWxlIHMvV0lcLlVJU3RyaW5nXCgu
Kj9cKS8vOwogCiAgICAgICAgICMgSGFuZGxlIHN0cmluZ3MgZm9yIG90aGVyIHByb2plY3RzIHRo
YXQgYWxzbyB1c2UgdGhpcyBzY3JpcHQuCg==
</data>
<flag name="review"
          id="384525"
          type_id="1"
          status="+"
          setter="hi"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>369078</attachid>
            <date>2019-05-04 17:10:29 -0700</date>
            <delta_ts>2019-05-22 15:26:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>44867</size>
            <attacher name="Nikita Vasilyev">nvasilyev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IGY2MjJhZDI4YzhlLi43ZDk2MWJhZjQ1MSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTkgQEAKKzIwMTktMDQtMjUgIE5pa2l0
YSBWYXNpbHlldiAgPG52YXNpbHlldkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogUHJvdmlkZSBVSVN0cmluZyBkZXNjcmlwdGlvbnMgdG8gaW1wcm92ZSBsb2NhbGl6YXRpb25z
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUxMzIK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ4NDU3ODE3PgorCisgICAgICAgIFJldmlld2VkIGJ5
IERldmluIFJvdXNzby4KKworICAgICAgICAqIExvY2FsaXphdGlvbnMvZW4ubHByb2ovbG9jYWxp
emVkU3RyaW5ncy5qczoKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXpl
ZFN0cmluZ3MuanM6CisgICAgICAgIChXSS5VSVN0cmluZyk6CisgICAgICAgIChXSS5yZXBlYXRl
ZFVJU3RyaW5nLnRpbWVsaW5lUmVjb3JkTGF5b3V0KToKKyAgICAgICAgKFdJLnJlcGVhdGVkVUlT
dHJpbmcudGltZWxpbmVSZWNvcmRQYWludCk6CisgICAgICAgIChXSS5yZXBlYXRlZFVJU3RyaW5n
LnRpbWVsaW5lUmVjb3JkQ29tcG9zaXRlKToKKyAgICAgICAgKFdJLnJlcGVhdGVkVUlTdHJpbmcu
YWxsRXhjZXB0aW9ucyk6CisgICAgICAgIChXSS5yZXBlYXRlZFVJU3RyaW5nLnVuY2F1Z2h0RXhj
ZXB0aW9ucyk6CisgICAgICAgIChXSS5yZXBlYXRlZFVJU3RyaW5nLmFzc2VydGlvbkZhaWx1cmVz
KToKKyAgICAgICAgKFdJLnJlcGVhdGVkVUlTdHJpbmcuYWxsUmVxdWVzdHMpOgorICAgICAgICAo
V0kucmVwZWF0ZWRVSVN0cmluZy5mZXRjaCk6CisgICAgICAgIChXSS5yZXBlYXRlZFVJU3RyaW5n
LnJldmVhbEluRE9NVHJlZSk6CisgICAgICAgICogVXNlckludGVyZmFjZS9Nb2RlbHMvTGF5b3V0
VGltZWxpbmVSZWNvcmQuanM6CisgICAgICAgIChXSS5MYXlvdXRUaW1lbGluZVJlY29yZC5kaXNw
bGF5TmFtZUZvckV2ZW50VHlwZSk6CisgICAgICAgICogVXNlckludGVyZmFjZS9Nb2RlbHMvUmVu
ZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5qczoKKyAgICAgICAgKFdJLlJlbmRlcmluZ0ZyYW1l
VGltZWxpbmVSZWNvcmQuZGlzcGxheU5hbWVGb3JUYXNrVHlwZSk6CisgICAgICAgICogVXNlcklu
dGVyZmFjZS9Nb2RlbHMvUmVzb3VyY2UuanM6CisgICAgICAgIChXSS5SZXNvdXJjZS5kaXNwbGF5
TmFtZUZvclR5cGUpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXRUZXN0R3Jv
dXBDb250ZW50Vmlldy5qczoKKyAgICAgICAgKFdJLkF1ZGl0VGVzdEdyb3VwQ29udGVudFZpZXcu
cHJvdG90eXBlLmxheW91dCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9DUFVUaW1l
bGluZVZpZXcuanM6CisgICAgICAgIChXSS5DUFVUaW1lbGluZVZpZXcuZGlzcGxheU5hbWVGb3JT
YW1wbGVUeXBlKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0NvbnRleHRNZW51VXRp
bGl0aWVzLmpzOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvRE9NQnJlYWtwb2ludFRy
ZWVFbGVtZW50LmpzOgorICAgICAgICAoV0kuRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50LmRpc3Bs
YXlOYW1lRm9yVHlwZSk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJl
ZUVsZW1lbnQuanM6CisgICAgICAgIChXSS5ET01Ob2RlVHJlZUVsZW1lbnQucHJvdG90eXBlLnBv
cHVsYXRlQ29udGV4dE1lbnUpOgorICAgICAgICAoV0kuRE9NTm9kZVRyZWVFbGVtZW50KToKKyAg
ICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVFbGVtZW50LmpzOgorICAgICAgICAo
V0kuRE9NVHJlZUVsZW1lbnQucHJvdG90eXBlLl9wb3B1bGF0ZVRhZ0NvbnRleHRNZW51KToKKyAg
ICAgICAgKFdJLkRPTVRyZWVFbGVtZW50LnByb3RvdHlwZS5fcG9wdWxhdGVOb2RlQ29udGV4dE1l
bnUpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvRGVidWdnZXJTaWRlYmFyUGFuZWwu
anM6CisgICAgICAgIChXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbC5wcm90b3R5cGUuX2FkZEJyZWFr
cG9pbnQpOgorICAgICAgICAoV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwucHJvdG90eXBlLl9oYW5k
bGVDcmVhdGVCcmVha3BvaW50TW91c2VEb3duKToKKyAgICAgICAgKFdJLkRlYnVnZ2VyU2lkZWJh
clBhbmVsKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0xheWVyVHJlZURldGFpbHNT
aWRlYmFyUGFuZWwuanM6CisgICAgICAgIChXSS5MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVs
LnByb3RvdHlwZS5fYnVpbGREYXRhR3JpZFNlY3Rpb24pOgorICAgICAgICAqIFVzZXJJbnRlcmZh
Y2UvVmlld3MvTmV0d29ya1RhYmxlQ29udGVudFZpZXcuanM6CisgICAgICAgIChXSS5OZXR3b3Jr
VGFibGVDb250ZW50Vmlldy5zaG9ydERpc3BsYXlOYW1lRm9yUmVzb3VyY2VUeXBlKToKKyAgICAg
ICAgKFdJLk5ldHdvcmtUYWJsZUNvbnRlbnRWaWV3LnByb3RvdHlwZS5pbml0aWFsTGF5b3V0KToK
KyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBh
bmVsLmpzOgorICAgICAgICAoV0kuU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwucHJvdG90
eXBlLl9hZGRCcmVha3BvaW50KToKKyAgICAgICAgKFdJLlNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJh
clBhbmVsLnByb3RvdHlwZS5faGFuZGxlQ3JlYXRlQnJlYWtwb2ludE1vdXNlRG93bik6CisgICAg
ICAgICogVXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25T
ZWN0aW9uLmpzOgorICAgICAgICAoV0kuU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uU2Vj
dGlvbi5wcm90b3R5cGUuX3JlbmRlclNlbGVjdG9yKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNl
L1ZpZXdzL1NwcmVhZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbC5qczoKKyAgICAgICAgKFdJ
LlNwcmVhZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbC5wcm90b3R5cGUubGF5b3V0KToKKwog
MjAxOS0wNC0yMyAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CiAKICAgICAgICAg
V2ViIEluc3BlY3RvcjogVW5jYXVnaHQgRXhjZXB0aW9uOiBudWxsIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ3RoaXMub3duZXJEb2N1bWVudC5mcmFtZUlkZW50aWZpZXInKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4ubHByb2ovbG9jYWxp
emVkU3RyaW5ncy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxw
cm9qL2xvY2FsaXplZFN0cmluZ3MuanMKaW5kZXggNTFhNmU4NThmNzAuLjc5Yjc0N2Y1NjMzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9lbi5scHJvai9s
b2NhbGl6ZWRTdHJpbmdzLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRp
b25zL2VuLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMKQEAgLTk3LDggKzk3LDEwIEBAIGxvY2Fs
aXplZFN0cmluZ3NbIkFkZGl0aW9ucyJdID0gIkFkZGl0aW9ucyI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJBZGRyZXNzIl0gPSAiQWRkcmVzcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBbGwiXSA9ICJBbGwi
OwogbG9jYWxpemVkU3RyaW5nc1siQWxsIENoYW5nZXMiXSA9ICJBbGwgQ2hhbmdlcyI7CisvKiBC
cmVhayAocGF1c2UpIG9uIGFsbCBleGNlcHRpb25zICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJBbGwg
RXhjZXB0aW9ucyJdID0gIkFsbCBFeGNlcHRpb25zIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFsbCBM
YXllcnMiXSA9ICJBbGwgTGF5ZXJzIjsKKy8qIEEgc3VibWVudSBpdGVtIG9mICdCcmVhayBvbicg
dGhhdCBicmVha3MgKHBhdXNlcykgYmVmb3JlIGFsbCBuZXR3b3JrIHJlcXVlc3RzICovCiBsb2Nh
bGl6ZWRTdHJpbmdzWyJBbGwgUmVxdWVzdHMiXSA9ICJBbGwgUmVxdWVzdHMiOwogbG9jYWxpemVk
U3RyaW5nc1siQWxsIFJlc291cmNlcyJdID0gIkFsbCBSZXNvdXJjZXMiOwogbG9jYWxpemVkU3Ry
aW5nc1siQWxsIFN0b3JhZ2UiXSA9ICJBbGwgU3RvcmFnZSI7CkBAIC0xMjcsMTIgKzEyOSwxNCBA
QCBsb2NhbGl6ZWRTdHJpbmdzWyJBcmVhIl0gPSAiQXJlYSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJB
c3NlcnRpb24iXSA9ICJBc3NlcnRpb24iOwogbG9jYWxpemVkU3RyaW5nc1siQXNzZXJ0aW9uIEZh
aWxlZCJdID0gIkFzc2VydGlvbiBGYWlsZWQiOwogbG9jYWxpemVkU3RyaW5nc1siQXNzZXJ0aW9u
IEZhaWxlZDogJXMiXSA9ICJBc3NlcnRpb24gRmFpbGVkOiAlcyI7CisvKiBCcmVhayAocGF1c2Up
IHdoZW4gY29uc29sZS5hc3NlcnQoKSBmYWlscyAqLwogbG9jYWxpemVkU3RyaW5nc1siQXNzZXJ0
aW9uIEZhaWx1cmVzIl0gPSAiQXNzZXJ0aW9uIEZhaWx1cmVzIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkFzc2VydGlvbiB3aXRoIG1lc3NhZ2U6ICVzIl0gPSAiQXNzZXJ0aW9uIHdpdGggbWVzc2FnZTog
JXMiOwogbG9jYWxpemVkU3RyaW5nc1siQXNzZXJ0aXZlIl0gPSAiQXNzZXJ0aXZlIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkFzc29jaWF0ZWQgRGF0YSJdID0gIkFzc29jaWF0ZWQgRGF0YSI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJBc3luYyBhdWRpdHMgYXJlIG5vdCBzdXBwb3J0ZWQuIl0gPSAiQXN5bmMg
YXVkaXRzIGFyZSBub3Qgc3VwcG9ydGVkLiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBdHRyaWJ1dGUi
XSA9ICJBdHRyaWJ1dGUiOworLyogQSBzdWJtZW51IGl0ZW0gb2YgJ0JyZWFrIE9uJyB0aGF0IGJy
ZWFrcyAocGF1c2VzKSBiZWZvcmUgRE9NIGF0dHJpYnV0ZSBpcyBtb2RpZmllZCAqLwogbG9jYWxp
emVkU3RyaW5nc1siQXR0cmlidXRlIE1vZGlmaWVkIl0gPSAiQXR0cmlidXRlIE1vZGlmaWVkIjsK
IGxvY2FsaXplZFN0cmluZ3NbIkF0dHJpYnV0ZXMiXSA9ICJBdHRyaWJ1dGVzIjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIkF1ZGl0Il0gPSAiQXVkaXQiOwpAQCAtMTk2LDYgKzIwMCw3IEBAIGxvY2FsaXpl
ZFN0cmluZ3NbIkNhbnZhcyAlZCJdID0gIkNhbnZhcyAlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJD
YW52YXMgJXMiXSA9ICJDYW52YXMgJXMiOwogbG9jYWxpemVkU3RyaW5nc1siQ2FudmFzIEVsZW1l
bnQiXSA9ICJDYW52YXMgRWxlbWVudCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDYW52YXNlcyJdID0g
IkNhbnZhc2VzIjsKKy8qIENhcHR1cmUgc2NyZWVuc2hvdCBvZiB0aGUgc2VsZWN0ZWQgRE9NIG5v
ZGUgKi8KIGxvY2FsaXplZFN0cmluZ3NbIkNhcHR1cmUgU2NyZWVuc2hvdCJdID0gIkNhcHR1cmUg
U2NyZWVuc2hvdCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDYXB0dXJpbmciXSA9ICJDYXB0dXJpbmci
OwogLyogQ29udGV4dCBtZW51IGxhYmVsIGZvciB3aGV0aGVyIHNlYXJjaGVzIHNob3VsZCBiZSBj
YXNlIHNlbnNpdGl2ZS4gKi8KQEAgLTIwOSw2ICsyMTQsNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJD
aGFuZ2VzIl0gPSAiQ2hhbmdlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDaGFyYWN0ZXIgRGF0YSJd
ID0gIkNoYXJhY3RlciBEYXRhIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNoYXJnZSBcdTIwMUMlc1x1
MjAxRCB0byBDYWxsZXJzIl0gPSAiQ2hhcmdlIFx1MjAxQyVzXHUyMDFEIHRvIENhbGxlcnMiOwog
bG9jYWxpemVkU3RyaW5nc1siQ2hlY2tlZCJdID0gIkNoZWNrZWQiOworLyogQSBzdWJtZW51IGl0
ZW0gb2YgJ0FkZCcgdG8gYXBwZW5kIERPTSBub2RlcyB0byB0aGUgc2VsZWN0ZWQgRE9NIG5vZGUg
Ki8KIGxvY2FsaXplZFN0cmluZ3NbIkNoaWxkIl0gPSAiQ2hpbGQiOwogbG9jYWxpemVkU3RyaW5n
c1siQ2hpbGQgTGF5ZXJzIl0gPSAiQ2hpbGQgTGF5ZXJzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNo
aWxkIGFkZGVkIHRvICJdID0gIkNoaWxkIGFkZGVkIHRvICI7CkBAIC0yNDMsNyArMjQ5LDggQEAg
bG9jYWxpemVkU3RyaW5nc1siQ29sbGVjdCBnYXJiYWdlIl0gPSAiQ29sbGVjdCBnYXJiYWdlIjsK
IGxvY2FsaXplZFN0cmluZ3NbIkNvbW1lbnQiXSA9ICJDb21tZW50IjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkNvbXBhcmUgc25hcHNob3RzIl0gPSAiQ29tcGFyZSBzbmFwc2hvdHMiOwogbG9jYWxpemVk
U3RyaW5nc1siQ29tcGFyaXNvbiBvZiB0b3RhbCBtZW1vcnkgc2l6ZSBhdCB0aGUgZW5kIG9mIHRo
ZSBzZWxlY3RlZCB0aW1lIHJhbmdlIHRvIHRoZSBtYXhpbXVtIG1lbW9yeSBzaXplIGluIHRoaXMg
cmVjb3JkaW5nIl0gPSAiQ29tcGFyaXNvbiBvZiB0b3RhbCBtZW1vcnkgc2l6ZSBhdCB0aGUgZW5k
IG9mIHRoZSBzZWxlY3RlZCB0aW1lIHJhbmdlIHRvIHRoZSBtYXhpbXVtIG1lbW9yeSBzaXplIGlu
IHRoaXMgcmVjb3JkaW5nIjsKLWxvY2FsaXplZFN0cmluZ3NbIkNvbXBvc2l0ZSJdID0gIkNvbXBv
c2l0ZSI7CisvKiBDb21wb3NpdGUgcGhhc2UgdGltZWxpbmUgcmVjb3Jkcywgd2hlcmUgZ3JhcGhp
YyBsYXllcnMgYXJlIGNvbWJpbmVkICovCitsb2NhbGl6ZWRTdHJpbmdzWyJDb21wb3NpdGUgQCBU
aW1lbGluZSByZWNvcmQiXSA9ICJDb21wb3NpdGUiOwogbG9jYWxpemVkU3RyaW5nc1siQ29tcG9z
aXRlZCJdID0gIkNvbXBvc2l0ZWQiOwogbG9jYWxpemVkU3RyaW5nc1siQ29tcHJlc3NlZCJdID0g
IkNvbXByZXNzZWQiOwogbG9jYWxpemVkU3RyaW5nc1siQ29tcHJlc3Npb24iXSA9ICJDb21wcmVz
c2lvbiI7CkBAIC00NjMsNyArNDcwLDkgQEAgbG9jYWxpemVkU3RyaW5nc1siRXh0cmEgU2NyaXB0
cyJdID0gIkV4dHJhIFNjcmlwdHMiOwogbG9jYWxpemVkU3RyaW5nc1siRmFkZSB1bmV4ZWN1dGVk
IGNvZGUiXSA9ICJGYWRlIHVuZXhlY3V0ZWQgY29kZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGYWls
ZWQgdG8gdXBncmFkZSJdID0gIkZhaWxlZCB0byB1cGdyYWRlIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkZhaWx1cmUgc3RhdHVzIGNvZGUiXSA9ICJGYWlsdXJlIHN0YXR1cyBjb2RlIjsKKy8qIFJlc291
cmNlIGxvYWRlZCB2aWEgJ2ZldGNoJyBtZXRob2QgKi8KIGxvY2FsaXplZFN0cmluZ3NbIkZldGNo
Il0gPSAiRmV0Y2giOworLyogUmVzb3VyY2VzIGxvYWRlZCB2aWEgJ2ZldGNoJyBtZXRob2QgKi8K
IGxvY2FsaXplZFN0cmluZ3NbIkZldGNoZXMiXSA9ICJGZXRjaGVzIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkZpbGUgb3IgUmVzb3VyY2UiXSA9ICJGaWxlIG9yIFJlc291cmNlIjsKIGxvY2FsaXplZFN0
cmluZ3NbIkZpbGVuYW1lIl0gPSAiRmlsZW5hbWUiOwpAQCAtNDgwLDcgKzQ4OSw5IEBAIGxvY2Fs
aXplZFN0cmluZ3NbIkZvbnRzIl0gPSAiRm9udHMiOwogbG9jYWxpemVkU3RyaW5nc1siRm9yY2Ug
RGFyayBBcHBlYXJhbmNlIl0gPSAiRm9yY2UgRGFyayBBcHBlYXJhbmNlIjsKIGxvY2FsaXplZFN0
cmluZ3NbIkZvcmNlIExpZ2h0IEFwcGVhcmFuY2UiXSA9ICJGb3JjZSBMaWdodCBBcHBlYXJhbmNl
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkZvcmNlIFByaW50IE1lZGlhIFN0eWxlcyJdID0gIkZvcmNl
IFByaW50IE1lZGlhIFN0eWxlcyI7CisvKiBMYXlvdXQgcGhhc2UgcmVjb3JkcyB0aGF0IHdlcmUg
aW1wZXJhdGl2ZSAoZm9yY2VkKSAqLwogbG9jYWxpemVkU3RyaW5nc1siRm9yY2VkIExheW91dCJd
ID0gIkZvcmNlZCBMYXlvdXQiOworLyogQSBjb250ZXh0IG1lbnUgaXRlbSB0byBmb3JjZSAob3Zl
cnJpZGUpIGEgRE9NIG5vZGUncyBwc2V1ZG8tY2xhc3NlcyAqLwogbG9jYWxpemVkU3RyaW5nc1si
Rm9yY2VkIFBzZXVkby1DbGFzc2VzIl0gPSAiRm9yY2VkIFBzZXVkby1DbGFzc2VzIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkZvcm1hdDogSFNMIl0gPSAiRm9ybWF0OiBIU0wiOwogbG9jYWxpemVkU3Ry
aW5nc1siRm9ybWF0OiBIU0xBIl0gPSAiRm9ybWF0OiBIU0xBIjsKQEAgLTU3MCw2ICs1ODEsNyBA
QCBsb2NhbGl6ZWRTdHJpbmdzWyJJbmRleCBLZXkgXHUyMDE0ICVzIl0gPSAiSW5kZXggS2V5IFx1
MjAxNCAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbmRleGVkIERhdGFiYXNlcyJdID0gIkluZGV4
ZWQgRGF0YWJhc2VzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkluZm86ICJdID0gIkluZm86ICI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJJbmZvcyJdID0gIkluZm9zIjsKKy8qIEEgc2VjdGlvbiBvZiBDU1Mg
cnVsZXMgbWF0Y2hpbmcgYW4gYW5jZXN0b3IgRE9NIG5vZGUgKi8KIGxvY2FsaXplZFN0cmluZ3Nb
IkluaGVyaXRlZCBGcm9tIl0gPSAiSW5oZXJpdGVkIEZyb20iOwogbG9jYWxpemVkU3RyaW5nc1si
SW5pdGlhbCBTdGF0ZSJdID0gIkluaXRpYWwgU3RhdGUiOwogbG9jYWxpemVkU3RyaW5nc1siSW5p
dGlhbCBWZWxvY2l0eSJdID0gIkluaXRpYWwgVmVsb2NpdHkiOwpAQCAtNTk4LDggKzYxMCw5IEBA
IGxvY2FsaXplZFN0cmluZ3NbIkxheWVyIENvdW50OiAlZCJdID0gIkxheWVyIENvdW50OiAlZCI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJMYXllciBJbmZvIl0gPSAiTGF5ZXIgSW5mbyI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJMYXllcnMiXSA9ICJMYXllcnMiOwogbG9jYWxpemVkU3RyaW5nc1siTGF5ZXJz
OiJdID0gIkxheWVyczoiOwotbG9jYWxpemVkU3RyaW5nc1siTGF5b3V0Il0gPSAiTGF5b3V0IjsK
IGxvY2FsaXplZFN0cmluZ3NbIkxheW91dCAmIFJlbmRlcmluZyJdID0gIkxheW91dCAmIFJlbmRl
cmluZyI7CisvKiBMYXlvdXQgcGhhc2UgdGltZWxpbmUgcmVjb3JkcyAqLworbG9jYWxpemVkU3Ry
aW5nc1siTGF5b3V0IEAgVGltZWxpbmUgcmVjb3JkIl0gPSAiTGF5b3V0IjsKIGxvY2FsaXplZFN0
cmluZ3NbIkxheW91dCBJbnZhbGlkYXRlZCJdID0gIkxheW91dCBJbnZhbGlkYXRlZCI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJMaW5lICVkIl0gPSAiTGluZSAlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJM
aW5lICVkOiVkIl0gPSAiTGluZSAlZDolZCI7CkBAIC02MTcsMTAgKzYzMCwxMiBAQCBsb2NhbGl6
ZWRTdHJpbmdzWyJMb2NhbCBWYXJpYWJsZXMiXSA9ICJMb2NhbCBWYXJpYWJsZXMiOwogbG9jYWxp
emVkU3RyaW5nc1siTG9jYXRlZCBhdCAlcyJdID0gIkxvY2F0ZWQgYXQgJXMiOwogbG9jYWxpemVk
U3RyaW5nc1siTG9jYXRpb24iXSA9ICJMb2NhdGlvbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cg
Q2FudmFzIENvbnRleHQiXSA9ICJMb2cgQ2FudmFzIENvbnRleHQiOworLyogTG9nIChwcmludCkg
RE9NIGVsZW1lbnQgdG8gQ29uc29sZSAqLwogbG9jYWxpemVkU3RyaW5nc1siTG9nIEVsZW1lbnQi
XSA9ICJMb2cgRWxlbWVudCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgRnJhbWUgVGV4dCJdID0g
IkxvZyBGcmFtZSBUZXh0IjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBGcmFtZSBWYWx1ZSJdID0g
IkxvZyBGcmFtZSBWYWx1ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgTWVzc2FnZSJdID0gIkxv
ZyBNZXNzYWdlIjsKKy8qIExvZyAocHJpbnQpIERPTSBub2RlIHRvIENvbnNvbGUgKi8KIGxvY2Fs
aXplZFN0cmluZ3NbIkxvZyBOb2RlIl0gPSAiTG9nIE5vZGUiOwogbG9jYWxpemVkU3RyaW5nc1si
TG9nIFN5bWJvbCJdID0gIkxvZyBTeW1ib2wiOwogbG9jYWxpemVkU3RyaW5nc1siTG9nIFZhbHVl
Il0gPSAiTG9nIFZhbHVlIjsKQEAgLTY2NSw2ICs2ODAsNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJO
ZXR3b3JrIElzc3VlIl0gPSAiTmV0d29yayBJc3N1ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJOZXR3
b3JrIFJlcXVlc3RzIl0gPSAiTmV0d29yayBSZXF1ZXN0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJO
ZXR3b3JrIFJlcXVlc3RzOiJdID0gIk5ldHdvcmsgUmVxdWVzdHM6IjsKIGxvY2FsaXplZFN0cmlu
Z3NbIk5ldyBUYWIiXSA9ICJOZXcgVGFiIjsKKy8qIEEgc3VibWVudSBpdGVtIG9mICdBZGQnIHRv
IGFkZCBET00gbm9kZXMgYWZ0ZXIgdGhlIHNlbGVjdGVkIERPTSBub2RlICovCiBsb2NhbGl6ZWRT
dHJpbmdzWyJOZXh0IFNpYmxpbmciXSA9ICJOZXh0IFNpYmxpbmciOwogbG9jYWxpemVkU3RyaW5n
c1siTm8iXSA9ICJObyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJObyBBY2Nlc3NpYmlsaXR5IEluZm9y
bWF0aW9uIl0gPSAiTm8gQWNjZXNzaWJpbGl0eSBJbmZvcm1hdGlvbiI7CkBAIC03MDUsNiArNzIx
LDcgQEAgbG9jYWxpemVkU3RyaW5nc1siTm8gcmVxdWVzdCwgc2VydmVkIGZyb20gdGhlIG1lbW9y
eSBjYWNoZS4iXSA9ICJObyByZXF1ZXN0LCBzZXIKIGxvY2FsaXplZFN0cmluZ3NbIk5vIHJlc3Bv
bnNlIGNvb2tpZXMuIl0gPSAiTm8gcmVzcG9uc2UgY29va2llcy4iOwogbG9jYWxpemVkU3RyaW5n
c1siTm8gcmVzcG9uc2UgaGVhZGVycyJdID0gIk5vIHJlc3BvbnNlIGhlYWRlcnMiOwogbG9jYWxp
emVkU3RyaW5nc1siTm9kZSJdID0gIk5vZGUiOworLyogQSBzdWJtZW51IGl0ZW0gb2YgJ0JyZWFr
IE9uJyB0aGF0IGJyZWFrcyAocGF1c2VzKSBiZWZvcmUgRE9NIG5vZGUgaXMgcmVtb3ZlZCAqLwog
bG9jYWxpemVkU3RyaW5nc1siTm9kZSBSZW1vdmVkIl0gPSAiTm9kZSBSZW1vdmVkIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIk5vZGVzIl0gPSAiTm9kZXMiOwogbG9jYWxpemVkU3RyaW5nc1siTm9uZSJd
ID0gIk5vbmUiOwpAQCAtNzQ0LDggKzc2MSwxMSBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJQYWdlIl0g
PSAiUGFnZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQYWdlIElzc3VlIl0gPSAiUGFnZSBJc3N1ZSI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJQYWdlIG5hdmlnYXRlZCBhdCAlcyJdID0gIlBhZ2UgbmF2aWdh
dGVkIGF0ICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlBhZ2UgcmVsb2FkZWQgYXQgJXMiXSA9ICJQ
YWdlIHJlbG9hZGVkIGF0ICVzIjsKLWxvY2FsaXplZFN0cmluZ3NbIlBhaW50Il0gPSAiUGFpbnQi
OworLyogUGFpbnQgKHJlbmRlcikgcGhhc2UgdGltZWxpbmUgcmVjb3JkcyAqLworbG9jYWxpemVk
U3RyaW5nc1siUGFpbnQgQCBUaW1lbGluZSByZWNvcmQiXSA9ICJQYWludCI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJQYWludHMiXSA9ICJQYWludHMiOworLyogQSBjb3VudCBvZiBob3cgbWFueSB0aW1l
cyBhbiBlbGVtZW50IHdhcyBwYWludGVkIChyZW5kZXJlZCkgKi8KK2xvY2FsaXplZFN0cmluZ3Nb
IlBhaW50cyBAIENvbHVtbiB0aXRsZSJdID0gIlBhaW50cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQ
YXJlbnQiXSA9ICJQYXJlbnQiOwogbG9jYWxpemVkU3RyaW5nc1siUGFydGlhbCBHYXJiYWdlIENv
bGxlY3Rpb24iXSA9ICJQYXJ0aWFsIEdhcmJhZ2UgQ29sbGVjdGlvbiI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJQYXNzaXZlIl0gPSAiUGFzc2l2ZSI7CkBAIC03NzIsNiArNzkyLDcgQEAgbG9jYWxpemVk
U3RyaW5nc1siUHJlc3MgJXMgdG8gc3RvcCBlZGl0aW5nIl0gPSAiUHJlc3MgJXMgdG8gc3RvcCBl
ZGl0aW5nIjsKIGxvY2FsaXplZFN0cmluZ3NbIlByZXNzZWQiXSA9ICJQcmVzc2VkIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIlByZXR0eSBwcmludCJdID0gIlByZXR0eSBwcmludCI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJQcmV2aWV3Il0gPSAiUHJldmlldyI7CisvKiBBIHN1Ym1lbnUgaXRlbSBvZiAnQWRk
JyB0byBhZGQgRE9NIG5vZGVzIGJlZm9yZSB0aGUgc2VsZWN0ZWQgRE9NIG5vZGUgKi8KIGxvY2Fs
aXplZFN0cmluZ3NbIlByZXZpb3VzIFNpYmxpbmciXSA9ICJQcmV2aW91cyBTaWJsaW5nIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIlByaW1hcnkgS2V5Il0gPSAiUHJpbWFyeSBLZXkiOwogbG9jYWxpemVk
U3RyaW5nc1siUHJpbWFyeSBLZXkgXHUyMDE0ICVzIl0gPSAiUHJpbWFyeSBLZXkgXHUyMDE0ICVz
IjsKQEAgLTg1OSw5ICs4ODAsMTEgQEAgbG9jYWxpemVkU3RyaW5nc1siUmV0dXJuIHR5cGUgZm9y
IGFub255bW91cyBmdW5jdGlvbiJdID0gIlJldHVybiB0eXBlIGZvciBhbm9ueW0KIGxvY2FsaXpl
ZFN0cmluZ3NbIlJldHVybiB0eXBlIGZvciBmdW5jdGlvbjogJXMiXSA9ICJSZXR1cm4gdHlwZSBm
b3IgZnVuY3Rpb246ICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlJldHVybiB2YWx1ZSBpcyBub3Qg
YW4gb2JqZWN0LCBzdHJpbmcsIG9yIGJvb2xlYW4iXSA9ICJSZXR1cm4gdmFsdWUgaXMgbm90IGFu
IG9iamVjdCwgc3RyaW5nLCBvciBib29sZWFuIjsKIGxvY2FsaXplZFN0cmluZ3NbIlJldmVhbCBC
cmVha3BvaW50Il0gPSAiUmV2ZWFsIEJyZWFrcG9pbnQiOworLyogT3BlbiBFbGVtZW50cyB0YWIg
YW5kIHNlbGVjdCB0aGlzIG5vZGUgaW4gRE9NIHRyZWUgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlJl
dmVhbCBpbiBET00gVHJlZSJdID0gIlJldmVhbCBpbiBET00gVHJlZSI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJSZXZlYWwgaW4gRGVidWdnZXIgVGFiIl0gPSAiUmV2ZWFsIGluIERlYnVnZ2VyIFRhYiI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZlYWwgaW4gRWxlbWVudHMgVGFiIl0gPSAiUmV2ZWFsIGlu
IEVsZW1lbnRzIFRhYiI7CisvKiBPcGVuIExheWVycyB0YWIgYW5kIHNlbGVjdCB0aGUgbGF5ZXIg
Y29ycmVzcG9uZGluZyB0byB0aGlzIG5vZGUgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlJldmVhbCBp
biBMYXllcnMgVGFiIl0gPSAiUmV2ZWFsIGluIExheWVycyBUYWIiOwogbG9jYWxpemVkU3RyaW5n
c1siUmV2ZWFsIGluIE5ldHdvcmsgVGFiIl0gPSAiUmV2ZWFsIGluIE5ldHdvcmsgVGFiIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIlJldmVhbCBpbiBPcmlnaW5hbCBSZXNvdXJjZSJdID0gIlJldmVhbCBp
biBPcmlnaW5hbCBSZXNvdXJjZSI7CkBAIC04OTAsNyArOTEzLDggQEAgbG9jYWxpemVkU3RyaW5n
c1siU2NyaXB0IEVsZW1lbnQgJWQiXSA9ICJTY3JpcHQgRWxlbWVudCAlZCI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJTY3JpcHQgRW50cmllczoiXSA9ICJTY3JpcHQgRW50cmllczoiOwogbG9jYWxpemVk
U3RyaW5nc1siU2NyaXB0IEV2YWx1YXRlZCJdID0gIlNjcmlwdCBFdmFsdWF0ZWQiOwogbG9jYWxp
emVkU3RyaW5nc1siU2NyaXB0cyJdID0gIlNjcmlwdHMiOwotbG9jYWxpemVkU3RyaW5nc1siU2Ny
b2xsIEludG8gVmlldyJdID0gIlNjcm9sbCBJbnRvIFZpZXciOworLyogU2Nyb2xsIHNlbGVjdGVk
IERPTSBub2RlIGludG8gdmlldyBvbiB0aGUgaW5zcGVjdGVkIHdlYiBwYWdlICovCitsb2NhbGl6
ZWRTdHJpbmdzWyJTY3JvbGwgaW50byBWaWV3Il0gPSAiU2Nyb2xsIGludG8gVmlldyI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJTZWFyY2giXSA9ICJTZWFyY2giOwogbG9jYWxpemVkU3RyaW5nc1siU2Vh
cmNoIEFnYWluIl0gPSAiU2VhcmNoIEFnYWluIjsKIGxvY2FsaXplZFN0cmluZ3NbIlNlYXJjaCBS
ZXNvdXJjZSBDb250ZW50Il0gPSAiU2VhcmNoIFJlc291cmNlIENvbnRlbnQiOwpAQCAtOTA1LDEw
ICs5MjksMTIgQEAgbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0IGJhc2VsaW5lIHNuYXBzaG90Il0g
PSAiU2VsZWN0IGJhc2VsaW5lIHNuYXBzaG90IjsKIGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdCBj
b21wYXJpc29uIHNuYXBzaG90Il0gPSAiU2VsZWN0IGNvbXBhcmlzb24gc25hcHNob3QiOwogbG9j
YWxpemVkU3RyaW5nc1siU2VsZWN0ZWQiXSA9ICJTZWxlY3RlZCI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJTZWxlY3RlZCBDYW52YXMgQ29udGV4dCJdID0gIlNlbGVjdGVkIENhbnZhcyBDb250ZXh0IjsK
Ky8qIFNlbGVjdGVkIERPTSBlbGVtZW50ICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBF
bGVtZW50Il0gPSAiU2VsZWN0ZWQgRWxlbWVudCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3Rl
ZCBGcmFtZSJdID0gIlNlbGVjdGVkIEZyYW1lIjsKIGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdGVk
IEl0ZW0iXSA9ICJTZWxlY3RlZCBJdGVtIjsKIGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdGVkIEl0
ZW1zIl0gPSAiU2VsZWN0ZWQgSXRlbXMiOworLyogU2VsZWN0ZWQgRE9NIG5vZGUgKi8KIGxvY2Fs
aXplZFN0cmluZ3NbIlNlbGVjdGVkIE5vZGUiXSA9ICJTZWxlY3RlZCBOb2RlIjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIlNlbGVjdGVkIFN5bWJvbCJdID0gIlNlbGVjdGVkIFN5bWJvbCI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJTZWxlY3RlZCBWYWx1ZSJdID0gIlNlbGVjdGVkIFZhbHVlIjsKQEAgLTEwMDks
NiArMTAzNSw3IEBAIGxvY2FsaXplZFN0cmluZ3NbIlN0b3AgcmVjb3JkaW5nIGNhbnZhcyBhY3Rp
b25zIl0gPSAiU3RvcCByZWNvcmRpbmcgY2FudmFzIGFjdGlvCiBsb2NhbGl6ZWRTdHJpbmdzWyJT
dG9wIHJlY29yZGluZyBvbmNlIHBhZ2UgbG9hZHMiXSA9ICJTdG9wIHJlY29yZGluZyBvbmNlIHBh
Z2UgbG9hZHMiOwogbG9jYWxpemVkU3RyaW5nc1siU3RvcHBpbmcgdGhlIFx1MjAxQyVzXHUyMDFE
IGF1ZGl0Il0gPSAiU3RvcHBpbmcgdGhlIFx1MjAxQyVzXHUyMDFEIGF1ZGl0IjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIlN0b3JhZ2UiXSA9ICJTdG9yYWdlIjsKKy8qIENTUyBwcm9wZXJ0aWVzIGRlZmlu
ZWQgdmlhIEhUTUwgc3R5bGUgYXR0cmlidXRlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZSBB
dHRyaWJ1dGUiXSA9ICJTdHlsZSBBdHRyaWJ1dGUiOwogbG9jYWxpemVkU3RyaW5nc1siU3R5bGUg
UmVzb2x1dGlvbiJdID0gIlN0eWxlIFJlc29sdXRpb24iOwogbG9jYWxpemVkU3RyaW5nc1siU3R5
bGUgcnVsZSJdID0gIlN0eWxlIHJ1bGUiOwpAQCAtMTAyMSwxMiArMTA0OCwxNCBAQCBsb2NhbGl6
ZWRTdHJpbmdzWyJTdHlsZXM6Il0gPSAiU3R5bGVzOiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHls
ZXNoZWV0Il0gPSAiU3R5bGVzaGVldCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZXNoZWV0cyJd
ID0gIlN0eWxlc2hlZXRzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlN1YmplY3QiXSA9ICJTdWJqZWN0
IjsKKy8qIEEgc3VibWVudSBpdGVtIG9mICdCcmVhayBPbicgdGhhdCBicmVha3MgKHBhdXNlcykg
YmVmb3JlIGNoaWxkIERPTSBub2RlIGlzIG1vZGlmaWVkICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJT
dWJ0cmVlIE1vZGlmaWVkIl0gPSAiU3VidHJlZSBNb2RpZmllZCI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJTdW1tYXJ5Il0gPSAiU3VtbWFyeSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUQ1AiXSA9ICJUQ1Ai
OwogbG9jYWxpemVkU3RyaW5nc1siVElGRiJdID0gIlRJRkYiOwogbG9jYWxpemVkU3RyaW5nc1si
VGFiIHdpZHRoOiJdID0gIlRhYiB3aWR0aDoiOwogbG9jYWxpemVkU3RyaW5nc1siVGFicyJdID0g
IlRhYnMiOworLyogQSBzdWJtZW51IGl0ZW0gb2YgJ0VkaXQnIHRvIGNoYW5nZSBET00gZWxlbWVu
dCdzIHRhZyBuYW1lICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJUYWciXSA9ICJUYWciOwogbG9jYWxp
emVkU3RyaW5nc1siVGFrZSBzbmFwc2hvdCJdID0gIlRha2Ugc25hcHNob3QiOwogbG9jYWxpemVk
U3RyaW5nc1siVGFyZ2V0Il0gPSAiVGFyZ2V0IjsKQEAgLTEwODksNiArMTExOCw3IEBAIGxvY2Fs
aXplZFN0cmluZ3NbIlRvdGFsOiAlcyJdID0gIlRvdGFsOiAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJUb3RhbHM6Il0gPSAiVG90YWxzOiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUcmFjZSJdID0gIlRy
YWNlIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRyYWNlOiAlcyJdID0gIlRyYWNlOiAlcyI7CisvKiBB
bW91bnQgb2YgZGF0YSBzZW50IG92ZXIgdGhlIG5ldHdvcmsgZm9yIGEgc2luZ2xlIHJlc291cmNl
ICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJUcmFuc2ZlciBTaXplIl0gPSAiVHJhbnNmZXIgU2l6ZSI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJUcmFuc2ZlcnJlZCJdID0gIlRyYW5zZmVycmVkIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIlRyaWdnZXJlZCBCcmVha3BvaW50Il0gPSAiVHJpZ2dlcmVkIEJyZWFrcG9p
bnQiOwpAQCAtMTEwMyw2ICsxMTMzLDcgQEAgbG9jYWxpemVkU3RyaW5nc1siVVJMIEJyZWFrcG9p
bnRcdTIwMjYiXSA9ICJVUkwgQnJlYWtwb2ludFx1MjAyNiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJV
bmFibGUgdG8gZGV0ZXJtaW5lIHBhdGggdG8gcHJvcGVydHkgZnJvbSByb290Il0gPSAiVW5hYmxl
IHRvIGRldGVybWluZSBwYXRoIHRvIHByb3BlcnR5IGZyb20gcm9vdCI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJVbmFibGUgdG8gcGFyc2UgYXMgSlNPTjogJXMiXSA9ICJVbmFibGUgdG8gcGFyc2UgYXMg
SlNPTjogJXMiOwogbG9jYWxpemVkU3RyaW5nc1siVW5hYmxlIHRvIHNob3cgY2VydGlmaWNhdGUg
Zm9yIFx1MjAxQyVzXHUyMDFEIl0gPSAiVW5hYmxlIHRvIHNob3cgY2VydGlmaWNhdGUgZm9yIFx1
MjAxQyVzXHUyMDFEIjsKKy8qIEJyZWFrIChwYXVzZSkgb24gdW5jYXVnaHQgKHVuaGFuZGxlZCkg
ZXhjZXB0aW9ucyAqLwogbG9jYWxpemVkU3RyaW5nc1siVW5jYXVnaHQgRXhjZXB0aW9ucyJdID0g
IlVuY2F1Z2h0IEV4Y2VwdGlvbnMiOwogbG9jYWxpemVkU3RyaW5nc1siVW5kZWZpbmVkIGN1c3Rv
bSBlbGVtZW50Il0gPSAiVW5kZWZpbmVkIGN1c3RvbSBlbGVtZW50IjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlVuaXF1ZSJdID0gIlVuaXF1ZSI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9CYXNlL0xvYWRMb2NhbGl6ZWRTdHJpbmdzLmpzIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQmFzZS9Mb2FkTG9jYWxpemVkU3RyaW5ncy5qcwpp
bmRleCBjMGY1YTM3NWUzMy4uZTIwZDUwNjgzMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXplZFN0cmluZ3MuanMKKysrIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQmFzZS9Mb2FkTG9jYWxpemVkU3Ry
aW5ncy5qcwpAQCAtNDMsOSArNDMsMTcgQEAgV0kudW5sb2NhbGl6ZWRTdHJpbmcgPSBmdW5jdGlv
bihzdHJpbmcpCiAKIFdJLlVJU3RyaW5nID0gZnVuY3Rpb24oc3RyaW5nLCBrZXksIGNvbW1lbnQp
CiB7CisgICAgInVzZSBzdHJpY3QiOworCiAgICAgaWYgKFdJLmRvbnRMb2NhbGl6ZVVzZXJJbnRl
cmZhY2UpCiAgICAgICAgIHJldHVybiBzdHJpbmc7CiAKKyAgICAvLyBVSVN0cmluZyhzdHJpbmcs
IGNvbW1lbnQpCisgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDIpIHsKKyAgICAgICAgY29t
bWVudCA9IGtleTsKKyAgICAgICAga2V5ID0gdW5kZWZpbmVkOworICAgIH0KKwogICAgIGtleSA9
IGtleSB8fCBzdHJpbmc7CiAKICAgICBpZiAod2luZG93LmxvY2FsaXplZFN0cmluZ3MgJiYga2V5
IGluIHdpbmRvdy5sb2NhbGl6ZWRTdHJpbmdzKQpAQCAtNjQsMyArNzIsNDEgQEAgV0kuVUlTdHJp
bmcgPSBmdW5jdGlvbihzdHJpbmcsIGtleSwgY29tbWVudCkKIAogICAgIHJldHVybiAiTE9DQUxJ
WkVEIFNUUklORyBOT1QgRk9VTkQiOwogfTsKKworV0kucmVwZWF0ZWRVSVN0cmluZyA9IHt9Owor
CitXSS5yZXBlYXRlZFVJU3RyaW5nLnRpbWVsaW5lUmVjb3JkTGF5b3V0ID0gZnVuY3Rpb24oKSB7
CisgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJMYXlvdXQiLCAiTGF5b3V0IEAgVGltZWxpbmUgcmVj
b3JkIiwgIkxheW91dCBwaGFzZSB0aW1lbGluZSByZWNvcmRzIik7Cit9OworCitXSS5yZXBlYXRl
ZFVJU3RyaW5nLnRpbWVsaW5lUmVjb3JkUGFpbnQgPSBmdW5jdGlvbigpIHsKKyAgICByZXR1cm4g
V0kuVUlTdHJpbmcoIlBhaW50IiwgIlBhaW50IEAgVGltZWxpbmUgcmVjb3JkIiwgIlBhaW50IChy
ZW5kZXIpIHBoYXNlIHRpbWVsaW5lIHJlY29yZHMiKTsKK307CisKK1dJLnJlcGVhdGVkVUlTdHJp
bmcudGltZWxpbmVSZWNvcmRDb21wb3NpdGUgPSBmdW5jdGlvbigpIHsKKyAgICByZXR1cm4gV0ku
VUlTdHJpbmcoIkNvbXBvc2l0ZSIsICJDb21wb3NpdGUgQCBUaW1lbGluZSByZWNvcmQiLCAiQ29t
cG9zaXRlIHBoYXNlIHRpbWVsaW5lIHJlY29yZHMsIHdoZXJlIGdyYXBoaWMgbGF5ZXJzIGFyZSBj
b21iaW5lZCIpOworfTsKKworV0kucmVwZWF0ZWRVSVN0cmluZy5hbGxFeGNlcHRpb25zID0gZnVu
Y3Rpb24oKSB7CisgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJBbGwgRXhjZXB0aW9ucyIsICJCcmVh
ayAocGF1c2UpIG9uIGFsbCBleGNlcHRpb25zIik7Cit9OworCitXSS5yZXBlYXRlZFVJU3RyaW5n
LnVuY2F1Z2h0RXhjZXB0aW9ucyA9IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiBXSS5VSVN0cmlu
ZygiVW5jYXVnaHQgRXhjZXB0aW9ucyIsICJCcmVhayAocGF1c2UpIG9uIHVuY2F1Z2h0ICh1bmhh
bmRsZWQpIGV4Y2VwdGlvbnMiKTsKK307CisKK1dJLnJlcGVhdGVkVUlTdHJpbmcuYXNzZXJ0aW9u
RmFpbHVyZXMgPSBmdW5jdGlvbigpIHsKKyAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkFzc2VydGlv
biBGYWlsdXJlcyIsICJCcmVhayAocGF1c2UpIHdoZW4gY29uc29sZS5hc3NlcnQoKSBmYWlscyIp
OworfTsKKworV0kucmVwZWF0ZWRVSVN0cmluZy5hbGxSZXF1ZXN0cyA9IGZ1bmN0aW9uKCkgewor
ICAgIHJldHVybiBXSS5VSVN0cmluZygiQWxsIFJlcXVlc3RzIiwgIkEgc3VibWVudSBpdGVtIG9m
ICdCcmVhayBvbicgdGhhdCBicmVha3MgKHBhdXNlcykgYmVmb3JlIGFsbCBuZXR3b3JrIHJlcXVl
c3RzIik7Cit9OworCitXSS5yZXBlYXRlZFVJU3RyaW5nLmZldGNoID0gZnVuY3Rpb24oKSB7Cisg
ICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJGZXRjaCIsICJSZXNvdXJjZSBsb2FkZWQgdmlhICdmZXRj
aCcgbWV0aG9kIik7Cit9OworCitXSS5yZXBlYXRlZFVJU3RyaW5nLnJldmVhbEluRE9NVHJlZSA9
IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiBXSS5VSVN0cmluZygiUmV2ZWFsIGluIERPTSBUcmVl
IiwgIk9wZW4gRWxlbWVudHMgdGFiIGFuZCBzZWxlY3QgdGhpcyBub2RlIGluIERPTSB0cmVlIik7
Cit9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9k
ZWxzL0xheW91dFRpbWVsaW5lUmVjb3JkLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvTW9kZWxzL0xheW91dFRpbWVsaW5lUmVjb3JkLmpzCmluZGV4IGZhYTRiNmMyZTUy
Li40YTgzMWYxMjZiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvTW9kZWxzL0xheW91dFRpbWVsaW5lUmVjb3JkLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9MYXlvdXRUaW1lbGluZVJlY29yZC5qcwpAQCAt
NTEsMTMgKzUxLDEzIEBAIFdJLkxheW91dFRpbWVsaW5lUmVjb3JkID0gY2xhc3MgTGF5b3V0VGlt
ZWxpbmVSZWNvcmQgZXh0ZW5kcyBXSS5UaW1lbGluZVJlY29yZAogICAgICAgICBjYXNlIFdJLkxh
eW91dFRpbWVsaW5lUmVjb3JkLkV2ZW50VHlwZS5JbnZhbGlkYXRlTGF5b3V0OgogICAgICAgICAg
ICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJMYXlvdXQgSW52YWxpZGF0ZWQiKTsKICAgICAgICAgY2Fz
ZSBXSS5MYXlvdXRUaW1lbGluZVJlY29yZC5FdmVudFR5cGUuRm9yY2VkTGF5b3V0OgotICAgICAg
ICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJGb3JjZWQgTGF5b3V0Iik7CisgICAgICAgICAgICBy
ZXR1cm4gV0kuVUlTdHJpbmcoIkZvcmNlZCBMYXlvdXQiLCAiTGF5b3V0IHBoYXNlIHJlY29yZHMg
dGhhdCB3ZXJlIGltcGVyYXRpdmUgKGZvcmNlZCkiKTsKICAgICAgICAgY2FzZSBXSS5MYXlvdXRU
aW1lbGluZVJlY29yZC5FdmVudFR5cGUuTGF5b3V0OgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJ
U3RyaW5nKCJMYXlvdXQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRlZFVJU3RyaW5n
LnRpbWVsaW5lUmVjb3JkTGF5b3V0KCk7CiAgICAgICAgIGNhc2UgV0kuTGF5b3V0VGltZWxpbmVS
ZWNvcmQuRXZlbnRUeXBlLlBhaW50OgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJQ
YWludCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGVkVUlTdHJpbmcudGltZWxpbmVS
ZWNvcmRQYWludCgpOwogICAgICAgICBjYXNlIFdJLkxheW91dFRpbWVsaW5lUmVjb3JkLkV2ZW50
VHlwZS5Db21wb3NpdGU6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkNvbXBvc2l0
ZSIpOworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGVkVUlTdHJpbmcudGltZWxpbmVSZWNv
cmRDb21wb3NpdGUoKTsKICAgICAgICAgfQogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1JlbmRlcmluZ0ZyYW1lVGltZWxpbmVS
ZWNvcmQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvUmVu
ZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5qcwppbmRleCA1ZmQ4MTA4M2Y5ZS4uY2MyZTFiMjQ2
N2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVs
cy9SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpz
CkBAIC00Niw5ICs0Niw5IEBAIFdJLlJlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQgPSBjbGFz
cyBSZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkIGV4dGVuZHMgV0kuCiAgICAgICAgIGNhc2Ug
V0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5UYXNrVHlwZS5TY3JpcHQ6CiAgICAgICAg
ICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlNjcmlwdCIpOwogICAgICAgICBjYXNlIFdJLlJlbmRl
cmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuVGFza1R5cGUuTGF5b3V0OgotICAgICAgICAgICAgcmV0
dXJuIFdJLlVJU3RyaW5nKCJMYXlvdXQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRl
ZFVJU3RyaW5nLnRpbWVsaW5lUmVjb3JkTGF5b3V0KCk7CiAgICAgICAgIGNhc2UgV0kuUmVuZGVy
aW5nRnJhbWVUaW1lbGluZVJlY29yZC5UYXNrVHlwZS5QYWludDoKLSAgICAgICAgICAgIHJldHVy
biBXSS5VSVN0cmluZygiUGFpbnQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRlZFVJ
U3RyaW5nLnRpbWVsaW5lUmVjb3JkUGFpbnQoKTsKICAgICAgICAgY2FzZSBXSS5SZW5kZXJpbmdG
cmFtZVRpbWVsaW5lUmVjb3JkLlRhc2tUeXBlLk90aGVyOgogICAgICAgICAgICAgcmV0dXJuIFdJ
LlVJU3RyaW5nKCJPdGhlciIpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvUmVzb3VyY2UuanMgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvUmVzb3VyY2UuanMKaW5kZXggZGM3NTIwODZk
NjEuLmU5MzFjMTI3NDgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9Nb2RlbHMvUmVzb3VyY2UuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291cmNlLmpzCkBAIC0xNTYsOCArMTU2LDggQEAgV0kuUmVz
b3VyY2UgPSBjbGFzcyBSZXNvdXJjZSBleHRlbmRzIFdJLlNvdXJjZUNvZGUKICAgICAgICAgICAg
IHJldHVybiBXSS5VSVN0cmluZygiWEhSIik7CiAgICAgICAgIGNhc2UgV0kuUmVzb3VyY2UuVHlw
ZS5GZXRjaDoKICAgICAgICAgICAgIGlmIChwbHVyYWwpCi0gICAgICAgICAgICAgICAgcmV0dXJu
IFdJLlVJU3RyaW5nKCJGZXRjaGVzIik7Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmco
IkZldGNoIik7CisgICAgICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJGZXRjaGVzIiwg
IlJlc291cmNlcyBsb2FkZWQgdmlhICdmZXRjaCcgbWV0aG9kIik7CisgICAgICAgICAgICByZXR1
cm4gV0kucmVwZWF0ZWRVSVN0cmluZy5mZXRjaCgpOwogICAgICAgICBjYXNlIFdJLlJlc291cmNl
LlR5cGUuUGluZzoKICAgICAgICAgICAgIGlmIChwbHVyYWwpCiAgICAgICAgICAgICAgICAgcmV0
dXJuIFdJLlVJU3RyaW5nKCJQaW5ncyIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXRUZXN0R3JvdXBDb250ZW50Vmlldy5qcyBiL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0F1ZGl0VGVzdEdyb3VwQ29u
dGVudFZpZXcuanMKaW5kZXggOGU0MGRkNmQ3ZDcuLmJlMmVlYmE2MmNjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9BdWRpdFRlc3RHcm91cENv
bnRlbnRWaWV3LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL0F1ZGl0VGVzdEdyb3VwQ29udGVudFZpZXcuanMKQEAgLTEyNSwxMSArMTI1LDExIEBAIFdJ
LkF1ZGl0VGVzdEdyb3VwQ29udGVudFZpZXcgPSBjbGFzcyBBdWRpdFRlc3RHcm91cENvbnRlbnRW
aWV3IGV4dGVuZHMgV0kuQXVkaXRUCiAgICAgICAgICAgICAgICAgc2NvcGVCYXJJdGVtcy5wdXNo
KHNjb3BlQmFySXRlbSk7CiAgICAgICAgICAgICB9OwogCi0gICAgICAgICAgICBhZGRTY29wZUJh
ckl0ZW0oV0kuQXVkaXRUZXN0Q2FzZVJlc3VsdC5MZXZlbC5QYXNzLCBXSS5VSVN0cmluZygiJWQg
UGFzc2VkIiwgIiVkIFBhc3NlZCAoc2luZ3VsYXIpIiksIFdJLlVJU3RyaW5nKCIlZCBQYXNzZWQi
LCAiJWQgUGFzc2VkIChwbHVyYWwpIikpOworICAgICAgICAgICAgYWRkU2NvcGVCYXJJdGVtKFdJ
LkF1ZGl0VGVzdENhc2VSZXN1bHQuTGV2ZWwuUGFzcywgV0kuVUlTdHJpbmcoIiVkIFBhc3NlZCIs
ICIlZCBQYXNzZWQgKHNpbmd1bGFyKSIsICIiKSwgV0kuVUlTdHJpbmcoIiVkIFBhc3NlZCIsICIl
ZCBQYXNzZWQgKHBsdXJhbCkiLCAiIikpOwogICAgICAgICAgICAgYWRkU2NvcGVCYXJJdGVtKFdJ
LkF1ZGl0VGVzdENhc2VSZXN1bHQuTGV2ZWwuV2FybiwgV0kuVUlTdHJpbmcoIiVkIFdhcm5pbmci
KSwgV0kuVUlTdHJpbmcoIiVkIFdhcm5pbmdzIikpOwotICAgICAgICAgICAgYWRkU2NvcGVCYXJJ
dGVtKFdJLkF1ZGl0VGVzdENhc2VSZXN1bHQuTGV2ZWwuRmFpbCwgV0kuVUlTdHJpbmcoIiVkIEZh
aWxlZCIsICIlZCBGYWlsZWQgKHNpbmd1bGFyKSIpLCBXSS5VSVN0cmluZygiJWQgRmFpbGVkIiwg
IiVkIEZhaWxlZCAocGx1cmFsKSIpKTsKKyAgICAgICAgICAgIGFkZFNjb3BlQmFySXRlbShXSS5B
dWRpdFRlc3RDYXNlUmVzdWx0LkxldmVsLkZhaWwsIFdJLlVJU3RyaW5nKCIlZCBGYWlsZWQiLCAi
JWQgRmFpbGVkIChzaW5ndWxhcikiLCAiIiksIFdJLlVJU3RyaW5nKCIlZCBGYWlsZWQiLCAiJWQg
RmFpbGVkIChwbHVyYWwpIiwgIiIpKTsKICAgICAgICAgICAgIGFkZFNjb3BlQmFySXRlbShXSS5B
dWRpdFRlc3RDYXNlUmVzdWx0LkxldmVsLkVycm9yLCBXSS5VSVN0cmluZygiJWQgRXJyb3IiKSwg
V0kuVUlTdHJpbmcoIiVkIEVycm9ycyIpKTsKLSAgICAgICAgICAgIGFkZFNjb3BlQmFySXRlbShX
SS5BdWRpdFRlc3RDYXNlUmVzdWx0LkxldmVsLlVuc3VwcG9ydGVkLCBXSS5VSVN0cmluZygiJWQg
VW5zdXBwb3J0ZWQiLCAiJWQgVW5zdXBwb3J0ZWQgKHNpbmd1bGFyKSIpLCBXSS5VSVN0cmluZygi
JWQgVW5zdXBwb3J0ZWQiLCAiJWQgVW5zdXBwb3J0ZWQgKHBsdXJhbCkiKSk7CisgICAgICAgICAg
ICBhZGRTY29wZUJhckl0ZW0oV0kuQXVkaXRUZXN0Q2FzZVJlc3VsdC5MZXZlbC5VbnN1cHBvcnRl
ZCwgV0kuVUlTdHJpbmcoIiVkIFVuc3VwcG9ydGVkIiwgIiVkIFVuc3VwcG9ydGVkIChzaW5ndWxh
cikiLCAiIiksIFdJLlVJU3RyaW5nKCIlZCBVbnN1cHBvcnRlZCIsICIlZCBVbnN1cHBvcnRlZCAo
cGx1cmFsKSIsICIiKSk7CiAKICAgICAgICAgICAgIHRoaXMuX2xldmVsU2NvcGVCYXIgPSBuZXcg
V0kuU2NvcGVCYXIobnVsbCwgc2NvcGVCYXJJdGVtcyk7CiAgICAgICAgICAgICB0aGlzLl9sZXZl
bFNjb3BlQmFyLmFkZEV2ZW50TGlzdGVuZXIoV0kuU2NvcGVCYXIuRXZlbnQuU2VsZWN0aW9uQ2hh
bmdlZCwgdGhpcy5faGFuZGxlTGV2ZWxTY29wZUJhclNlbGVjdGlvbkNoYW5nZWQsIHRoaXMpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ1BV
VGltZWxpbmVWaWV3LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvQ1BVVGltZWxpbmVWaWV3LmpzCmluZGV4IDE1MTNkNGVhY2E1Li4xN2FkNWFkMDU3NCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ1BVVGlt
ZWxpbmVWaWV3LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL0NQVVRpbWVsaW5lVmlldy5qcwpAQCAtNTcsOSArNTcsOSBAQCBXSS5DUFVUaW1lbGluZVZp
ZXcgPSBjbGFzcyBDUFVUaW1lbGluZVZpZXcgZXh0ZW5kcyBXSS5UaW1lbGluZVZpZXcKICAgICAg
ICAgY2FzZSBXSS5DUFVUaW1lbGluZVZpZXcuU2FtcGxlVHlwZS5TY3JpcHQ6CiAgICAgICAgICAg
ICByZXR1cm4gV0kuVUlTdHJpbmcoIlNjcmlwdCIpOwogICAgICAgICBjYXNlIFdJLkNQVVRpbWVs
aW5lVmlldy5TYW1wbGVUeXBlLkxheW91dDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmlu
ZygiTGF5b3V0Iik7CisgICAgICAgICAgICByZXR1cm4gV0kucmVwZWF0ZWRVSVN0cmluZy50aW1l
bGluZVJlY29yZExheW91dCgpOwogICAgICAgICBjYXNlIFdJLkNQVVRpbWVsaW5lVmlldy5TYW1w
bGVUeXBlLlBhaW50OgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJQYWludCIpOwor
ICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGVkVUlTdHJpbmcudGltZWxpbmVSZWNvcmRQYWlu
dCgpOwogICAgICAgICBjYXNlIFdJLkNQVVRpbWVsaW5lVmlldy5TYW1wbGVUeXBlLlN0eWxlOgog
ICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJTdHlsZSBSZXNvbHV0aW9uIik7CiAgICAg
ICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL0NvbnRleHRNZW51VXRpbGl0aWVzLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvVmlld3MvQ29udGV4dE1lbnVVdGlsaXRpZXMuanMKaW5kZXggZTFiMTI2ZjNlYjgu
LjM2NzJkNDdhNmRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGllcy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGllcy5qcwpAQCAtMjE2
LDEwICsyMTYsMTAgQEAgV0kuYXBwZW5kQ29udGV4dE1lbnVJdGVtc0ZvckRPTU5vZGUgPSBmdW5j
dGlvbihjb250ZXh0TWVudSwgZG9tTm9kZSwgb3B0aW9ucyA9IHsKICAgICBjb250ZXh0TWVudS5h
cHBlbmRTZXBhcmF0b3IoKTsKIAogICAgIGlmICghb3B0aW9ucy5leGNsdWRlTG9nRWxlbWVudCAm
JiAhZG9tTm9kZS5pc0luVXNlckFnZW50U2hhZG93VHJlZSgpICYmICFkb21Ob2RlLmlzUHNldWRv
RWxlbWVudCgpKSB7Ci0gICAgICAgIGxldCBsYWJlbCA9IGlzRWxlbWVudCA/IFdJLlVJU3RyaW5n
KCJMb2cgRWxlbWVudCIpIDogV0kuVUlTdHJpbmcoIkxvZyBOb2RlIik7CisgICAgICAgIGxldCBs
YWJlbCA9IGlzRWxlbWVudCA/IFdJLlVJU3RyaW5nKCJMb2cgRWxlbWVudCIsICJMb2cgKHByaW50
KSBET00gZWxlbWVudCB0byBDb25zb2xlIikgOiBXSS5VSVN0cmluZygiTG9nIE5vZGUiLCAiTG9n
IChwcmludCkgRE9NIG5vZGUgdG8gQ29uc29sZSIpOwogICAgICAgICBjb250ZXh0TWVudS5hcHBl
bmRJdGVtKGxhYmVsLCAoKSA9PiB7CiAgICAgICAgICAgICBXSS5SZW1vdGVPYmplY3QucmVzb2x2
ZU5vZGUoZG9tTm9kZSwgV0kuUnVudGltZU1hbmFnZXIuQ29uc29sZU9iamVjdEdyb3VwKS50aGVu
KChyZW1vdGVPYmplY3QpID0+IHsKLSAgICAgICAgICAgICAgICBsZXQgdGV4dCA9IGlzRWxlbWVu
dCA/IFdJLlVJU3RyaW5nKCJTZWxlY3RlZCBFbGVtZW50IikgOiBXSS5VSVN0cmluZygiU2VsZWN0
ZWQgTm9kZSIpOworICAgICAgICAgICAgICAgIGxldCB0ZXh0ID0gaXNFbGVtZW50ID8gV0kuVUlT
dHJpbmcoIlNlbGVjdGVkIEVsZW1lbnQiLCAiU2VsZWN0ZWQgRE9NIGVsZW1lbnQiKSA6IFdJLlVJ
U3RyaW5nKCJTZWxlY3RlZCBOb2RlIiwgIlNlbGVjdGVkIERPTSBub2RlIik7CiAgICAgICAgICAg
ICAgICAgY29uc3QgYWRkU3BlY2lhbFVzZXJMb2dDbGFzcyA9IHRydWU7CiAgICAgICAgICAgICAg
ICAgV0kuY29uc29sZUxvZ1ZpZXdDb250cm9sbGVyLmFwcGVuZEltbWVkaWF0ZUV4ZWN1dGlvbldp
dGhSZXN1bHQodGV4dCwgcmVtb3RlT2JqZWN0LCBhZGRTcGVjaWFsVXNlckxvZ0NsYXNzKTsKICAg
ICAgICAgICAgIH0pOwpAQCAtMjI3LDE5ICsyMjcsMTkgQEAgV0kuYXBwZW5kQ29udGV4dE1lbnVJ
dGVtc0ZvckRPTU5vZGUgPSBmdW5jdGlvbihjb250ZXh0TWVudSwgZG9tTm9kZSwgb3B0aW9ucyA9
IHsKICAgICB9CiAKICAgICBpZiAoIW9wdGlvbnMuZXhjbHVkZVJldmVhbEVsZW1lbnQgJiYgd2lu
ZG93LkRPTUFnZW50ICYmIGF0dGFjaGVkKSB7Ci0gICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0
ZW0oV0kuVUlTdHJpbmcoIlJldmVhbCBpbiBET00gVHJlZSIpLCAoKSA9PiB7CisgICAgICAgIGNv
bnRleHRNZW51LmFwcGVuZEl0ZW0oV0kucmVwZWF0ZWRVSVN0cmluZy5yZXZlYWxJbkRPTVRyZWUo
KSwgKCkgPT4gewogICAgICAgICAgICAgV0kuZG9tTWFuYWdlci5pbnNwZWN0RWxlbWVudChkb21O
b2RlLmlkKTsKICAgICAgICAgfSk7CiAgICAgfQogCiAgICAgaWYgKFdJLnNldHRpbmdzLmV4cGVy
aW1lbnRhbEVuYWJsZUxheWVyc1RhYi52YWx1ZSAmJiB3aW5kb3cuTGF5ZXJUcmVlQWdlbnQgJiYg
YXR0YWNoZWQpIHsKLSAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygi
UmV2ZWFsIGluIExheWVycyBUYWIiKSwgKCkgPT4geworICAgICAgICBjb250ZXh0TWVudS5hcHBl
bmRJdGVtKFdJLlVJU3RyaW5nKCJSZXZlYWwgaW4gTGF5ZXJzIFRhYiIsICJPcGVuIExheWVycyB0
YWIgYW5kIHNlbGVjdCB0aGUgbGF5ZXIgY29ycmVzcG9uZGluZyB0byB0aGlzIG5vZGUiKSwgKCkg
PT4gewogICAgICAgICAgICAgV0kuc2hvd0xheWVyc1RhYih7bm9kZVRvU2VsZWN0OiBkb21Ob2Rl
fSk7CiAgICAgICAgIH0pOwogICAgIH0KIAogICAgIGlmICh3aW5kb3cuUGFnZUFnZW50ICYmIGF0
dGFjaGVkKSB7Ci0gICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIkNh
cHR1cmUgU2NyZWVuc2hvdCIpLCAoKSA9PiB7CisgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0
ZW0oV0kuVUlTdHJpbmcoIkNhcHR1cmUgU2NyZWVuc2hvdCIsICJDYXB0dXJlIHNjcmVlbnNob3Qg
b2YgdGhlIHNlbGVjdGVkIERPTSBub2RlIiksICgpID0+IHsKICAgICAgICAgICAgIFBhZ2VBZ2Vu
dC5zbmFwc2hvdE5vZGUoZG9tTm9kZS5pZCwgKGVycm9yLCBkYXRhVVJMKSA9PiB7CiAgICAgICAg
ICAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRhcmdldCA9
IFdJLm1haW5UYXJnZXQ7CkBAIC0yNjIsNyArMjYyLDcgQEAgV0kuYXBwZW5kQ29udGV4dE1lbnVJ
dGVtc0ZvckRPTU5vZGUgPSBmdW5jdGlvbihjb250ZXh0TWVudSwgZG9tTm9kZSwgb3B0aW9ucyA9
IHsKICAgICB9CiAKICAgICBpZiAoaXNFbGVtZW50ICYmIGF0dGFjaGVkKSB7Ci0gICAgICAgIGNv
bnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlNjcm9sbCBJbnRvIFZpZXciKSwgKCkg
PT4geworICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJTY3JvbGwg
aW50byBWaWV3IiwgIlNjcm9sbCBzZWxlY3RlZCBET00gbm9kZSBpbnRvIHZpZXcgb24gdGhlIGlu
c3BlY3RlZCB3ZWIgcGFnZSIpLCAoKSA9PiB7CiAgICAgICAgICAgICBkb21Ob2RlLnNjcm9sbElu
dG9WaWV3KCk7CiAgICAgICAgIH0pOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTUJyZWFrcG9pbnRUcmVlRWxlbWVudC5qcyBi
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTUJyZWFrcG9pbnRU
cmVlRWxlbWVudC5qcwppbmRleCA2NjdkNTU3ZWZjNi4uOTkxZDcxNmRiNWEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTUJyZWFrcG9pbnRU
cmVlRWxlbWVudC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMKQEAgLTUwLDExICs1MCwxMSBAQCBXSS5E
T01CcmVha3BvaW50VHJlZUVsZW1lbnQgPSBjbGFzcyBET01CcmVha3BvaW50VHJlZUVsZW1lbnQg
ZXh0ZW5kcyBXSS5HZW5lcmFsVAogICAgIHsKICAgICAgICAgc3dpdGNoICh0eXBlKSB7CiAgICAg
ICAgIGNhc2UgV0kuRE9NQnJlYWtwb2ludC5UeXBlLlN1YnRyZWVNb2RpZmllZDoKLSAgICAgICAg
ICAgIHJldHVybiBXSS5VSVN0cmluZygiU3VidHJlZSBNb2RpZmllZCIpOworICAgICAgICAgICAg
cmV0dXJuIFdJLlVJU3RyaW5nKCJTdWJ0cmVlIE1vZGlmaWVkIiwgIkEgc3VibWVudSBpdGVtIG9m
ICdCcmVhayBPbicgdGhhdCBicmVha3MgKHBhdXNlcykgYmVmb3JlIGNoaWxkIERPTSBub2RlIGlz
IG1vZGlmaWVkIik7CiAgICAgICAgIGNhc2UgV0kuRE9NQnJlYWtwb2ludC5UeXBlLkF0dHJpYnV0
ZU1vZGlmaWVkOgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJBdHRyaWJ1dGUgTW9k
aWZpZWQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiQXR0cmlidXRlIE1vZGlm
aWVkIiwgIkEgc3VibWVudSBpdGVtIG9mICdCcmVhayBPbicgdGhhdCBicmVha3MgKHBhdXNlcykg
YmVmb3JlIERPTSBhdHRyaWJ1dGUgaXMgbW9kaWZpZWQiKTsKICAgICAgICAgY2FzZSBXSS5ET01C
cmVha3BvaW50LlR5cGUuTm9kZVJlbW92ZWQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJp
bmcoIk5vZGUgUmVtb3ZlZCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJOb2Rl
IFJlbW92ZWQiLCAiQSBzdWJtZW51IGl0ZW0gb2YgJ0JyZWFrIE9uJyB0aGF0IGJyZWFrcyAocGF1
c2VzKSBiZWZvcmUgRE9NIG5vZGUgaXMgcmVtb3ZlZCIpOwogICAgICAgICBkZWZhdWx0OgogICAg
ICAgICAgICAgY29uc29sZS5lcnJvcigiVW5leHBlY3RlZCBET00gYnJlYWtwb2ludCB0eXBlOiAi
ICsgdHlwZSk7CiAgICAgICAgICAgICByZXR1cm4gbnVsbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTU5vZGVUcmVlRWxlbWVudC5qcyBi
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTU5vZGVUcmVlRWxl
bWVudC5qcwppbmRleCAxZjVkMTcxODNlNC4uYWRhZmYzZmFhZTggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTU5vZGVUcmVlRWxlbWVudC5q
cworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01Ob2Rl
VHJlZUVsZW1lbnQuanMKQEAgLTYxLDcgKzYxLDcgQEAgV0kuRE9NTm9kZVRyZWVFbGVtZW50ID0g
Y2xhc3MgRE9NTm9kZVRyZWVFbGVtZW50IGV4dGVuZHMgV0kuR2VuZXJhbFRyZWVFbGVtZW50CiAK
ICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kU2VwYXJhdG9yKCk7CiAKLSAgICAgICAgY29udGV4
dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiUmV2ZWFsIGluIERPTSBUcmVlIiksICgpID0+
IHsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5yZXBlYXRlZFVJU3RyaW5nLnJl
dmVhbEluRE9NVHJlZSgpLCAoKSA9PiB7CiAgICAgICAgICAgICBXSS5kb21NYW5hZ2VyLmluc3Bl
Y3RFbGVtZW50KHRoaXMucmVwcmVzZW50ZWRPYmplY3QuaWQpOwogICAgICAgICB9KTsKICAgICB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9E
T01UcmVlRWxlbWVudC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL0RPTVRyZWVFbGVtZW50LmpzCmluZGV4IDBiZTliMDgwNmU0Li4yYTY4YTBiNjJmNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJl
ZUVsZW1lbnQuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvRE9NVHJlZUVsZW1lbnQuanMKQEAgLTc3NywxNCArNzc3LDE0IEBAIFdJLkRPTVRyZWVFbGVt
ZW50ID0gY2xhc3MgRE9NVHJlZUVsZW1lbnQgZXh0ZW5kcyBXSS5UcmVlRWxlbWVudAogICAgICAg
ICAgICAgbm9kZS5yZW1vdmVBdHRyaWJ1dGUoYXR0cmlidXRlTmFtZSk7CiAgICAgICAgIH0sICFh
dHRyaWJ1dGUgfHwgIWlzTm9uU2hhZG93RWRpdGFibGUpOwogCi0gICAgICAgIHN1Yk1lbnVzLmVk
aXQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiVGFnIiksICgpID0+IHsKKyAgICAgICAgc3ViTWVu
dXMuZWRpdC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJUYWciLCAiQSBzdWJtZW51IGl0ZW0gb2Yg
J0VkaXQnIHRvIGNoYW5nZSBET00gZWxlbWVudCdzIHRhZyBuYW1lIiksICgpID0+IHsKICAgICAg
ICAgICAgIHRoaXMuX3N0YXJ0RWRpdGluZ1RhZ05hbWUoKTsKICAgICAgICAgfSwgIWlzTm9uU2hh
ZG93RWRpdGFibGUpOwogCiAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZFNlcGFyYXRvcigpOwog
CiAgICAgICAgIGlmIChXSS5jc3NNYW5hZ2VyLmNhbkZvcmNlUHNldWRvQ2xhc3NlcygpICYmIGF0
dGFjaGVkKSB7Ci0gICAgICAgICAgICBsZXQgcHNldWRvU3ViTWVudSA9IGNvbnRleHRNZW51LmFw
cGVuZFN1Yk1lbnVJdGVtKFdJLlVJU3RyaW5nKCJGb3JjZWQgUHNldWRvLUNsYXNzZXMiKSk7Cisg
ICAgICAgICAgICBsZXQgcHNldWRvU3ViTWVudSA9IGNvbnRleHRNZW51LmFwcGVuZFN1Yk1lbnVJ
dGVtKFdJLlVJU3RyaW5nKCJGb3JjZWQgUHNldWRvLUNsYXNzZXMiLCAiQSBjb250ZXh0IG1lbnUg
aXRlbSB0byBmb3JjZSAob3ZlcnJpZGUpIGEgRE9NIG5vZGUncyBwc2V1ZG8tY2xhc3NlcyIpKTsK
IAogICAgICAgICAgICAgbGV0IGVuYWJsZWRQc2V1ZG9DbGFzc2VzID0gbm9kZS5lbmFibGVkUHNl
dWRvQ2xhc3NlczsKICAgICAgICAgICAgIFdJLkNTU01hbmFnZXIuRm9yY2VhYmxlUHNldWRvQ2xh
c3Nlcy5mb3JFYWNoKChwc2V1ZG9DbGFzcykgPT4gewpAQCAtODE1LDkgKzgxNSw5IEBAIFdJLkRP
TVRyZWVFbGVtZW50ID0gY2xhc3MgRE9NVHJlZUVsZW1lbnQgZXh0ZW5kcyBXSS5UcmVlRWxlbWVu
dAogCiAgICAgICAgIGxldCBpc0VkaXRhYmxlTm9kZSA9IG5vZGUubm9kZVR5cGUoKSA9PT0gTm9k
ZS5FTEVNRU5UX05PREUgJiYgdGhpcy5lZGl0YWJsZTsKICAgICAgICAgbGV0IGZvcmJpZGRlbkNs
b3NpbmdUYWcgPSBXSS5ET01UcmVlRWxlbWVudC5Gb3JiaWRkZW5DbG9zaW5nVGFnRWxlbWVudHMu
aGFzKG5vZGUubm9kZU5hbWVJbkNvcnJlY3RDYXNlKCkpOwotICAgICAgICBzdWJNZW51cy5hZGQu
YXBwZW5kSXRlbShXSS5VSVN0cmluZygiQ2hpbGQiKSwgdGhpcy5fYWRkSFRNTC5iaW5kKHRoaXMp
LCBmb3JiaWRkZW5DbG9zaW5nVGFnIHx8ICFpc0VkaXRhYmxlTm9kZSk7Ci0gICAgICAgIHN1Yk1l
bnVzLmFkZC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJQcmV2aW91cyBTaWJsaW5nIiksIHRoaXMu
X2FkZFByZXZpb3VzU2libGluZy5iaW5kKHRoaXMpLCAhaXNFZGl0YWJsZU5vZGUpOwotICAgICAg
ICBzdWJNZW51cy5hZGQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiTmV4dCBTaWJsaW5nIiksIHRo
aXMuX2FkZE5leHRTaWJsaW5nLmJpbmQodGhpcyksICFpc0VkaXRhYmxlTm9kZSk7CisgICAgICAg
IHN1Yk1lbnVzLmFkZC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJDaGlsZCIsICJBIHN1Ym1lbnUg
aXRlbSBvZiAnQWRkJyB0byBhcHBlbmQgRE9NIG5vZGVzIHRvIHRoZSBzZWxlY3RlZCBET00gbm9k
ZSIpLCB0aGlzLl9hZGRIVE1MLmJpbmQodGhpcyksIGZvcmJpZGRlbkNsb3NpbmdUYWcgfHwgIWlz
RWRpdGFibGVOb2RlKTsKKyAgICAgICAgc3ViTWVudXMuYWRkLmFwcGVuZEl0ZW0oV0kuVUlTdHJp
bmcoIlByZXZpb3VzIFNpYmxpbmciLCAiQSBzdWJtZW51IGl0ZW0gb2YgJ0FkZCcgdG8gYWRkIERP
TSBub2RlcyBiZWZvcmUgdGhlIHNlbGVjdGVkIERPTSBub2RlIiksIHRoaXMuX2FkZFByZXZpb3Vz
U2libGluZy5iaW5kKHRoaXMpLCAhaXNFZGl0YWJsZU5vZGUpOworICAgICAgICBzdWJNZW51cy5h
ZGQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiTmV4dCBTaWJsaW5nIiwgIkEgc3VibWVudSBpdGVt
IG9mICdBZGQnIHRvIGFkZCBET00gbm9kZXMgYWZ0ZXIgdGhlIHNlbGVjdGVkIERPTSBub2RlIiks
IHRoaXMuX2FkZE5leHRTaWJsaW5nLmJpbmQodGhpcyksICFpc0VkaXRhYmxlTm9kZSk7CiAKICAg
ICAgICAgc3ViTWVudXMuZWRpdC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJIVE1MIiksIHRoaXMu
X2VkaXRBc0hUTUwuYmluZCh0aGlzKSwgIXRoaXMuZWRpdGFibGUpOwogICAgICAgICBzdWJNZW51
cy5jb3B5LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIkhUTUwiKSwgdGhpcy5fY29weUhUTUwuYmlu
ZCh0aGlzKSwgbm9kZS5pc1BzZXVkb0VsZW1lbnQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EZWJ1Z2dlclNpZGViYXJQYW5lbC5qcyBi
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RlYnVnZ2VyU2lkZWJh
clBhbmVsLmpzCmluZGV4IDRlN2M0MGEwMjUwLi42OTZmZmMwOWE3MCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGVidWdnZXJTaWRlYmFyUGFu
ZWwuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGVi
dWdnZXJTaWRlYmFyUGFuZWwuanMKQEAgLTQ3NCwxMyArNDc0LDEzIEBAIFdJLkRlYnVnZ2VyU2lk
ZWJhclBhbmVsID0gY2xhc3MgRGVidWdnZXJTaWRlYmFyUGFuZWwgZXh0ZW5kcyBXSS5OYXZpZ2F0
aW9uU2lkZWJhCiAKICAgICAgICAgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRlYnVnZ2VyTWFuYWdl
ci5hbGxFeGNlcHRpb25zQnJlYWtwb2ludCkgewogICAgICAgICAgICAgb3B0aW9ucy5jbGFzc05h
bWUgPSBXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbC5FeGNlcHRpb25JY29uU3R5bGVDbGFzc05hbWU7
Ci0gICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmcoIkFsbCBFeGNlcHRpb25z
Iik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kucmVwZWF0ZWRVSVN0cmluZy5hbGxF
eGNlcHRpb25zKCk7CiAgICAgICAgIH0gZWxzZSBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZGVidWdn
ZXJNYW5hZ2VyLnVuY2F1Z2h0RXhjZXB0aW9uc0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgIG9w
dGlvbnMuY2xhc3NOYW1lID0gV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwuRXhjZXB0aW9uSWNvblN0
eWxlQ2xhc3NOYW1lOwotICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5nKCJV
bmNhdWdodCBFeGNlcHRpb25zIik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kucmVw
ZWF0ZWRVSVN0cmluZy51bmNhdWdodEV4Y2VwdGlvbnMoKTsKICAgICAgICAgfSBlbHNlIGlmIChi
cmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIuYXNzZXJ0aW9uRmFpbHVyZXNCcmVha3Bv
aW50KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9IFdJLkRlYnVnZ2VyU2lkZWJh
clBhbmVsLkFzc2VydGlvbkljb25TdHlsZUNsYXNzTmFtZTsKLSAgICAgICAgICAgIG9wdGlvbnMu
dGl0bGUgPSBXSS5VSVN0cmluZygiQXNzZXJ0aW9uIEZhaWx1cmVzIik7CisgICAgICAgICAgICBv
cHRpb25zLnRpdGxlID0gV0kucmVwZWF0ZWRVSVN0cmluZy5hc3NlcnRpb25GYWlsdXJlcygpOwog
ICAgICAgICB9IGVsc2UgaWYgKGJyZWFrcG9pbnQgaW5zdGFuY2VvZiBXSS5ET01CcmVha3BvaW50
KSB7CiAgICAgICAgICAgICBpZiAoIWJyZWFrcG9pbnQuZG9tTm9kZUlkZW50aWZpZXIpCiAgICAg
ICAgICAgICAgICAgcmV0dXJuIG51bGw7CkBAIC01MTQsNyArNTE0LDcgQEAgV0kuRGVidWdnZXJT
aWRlYmFyUGFuZWwgPSBjbGFzcyBEZWJ1Z2dlclNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5hdmln
YXRpb25TaWRlYmEKIAogICAgICAgICAgICAgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRvbURlYnVn
Z2VyTWFuYWdlci5hbGxSZXF1ZXN0c0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgICAgICBvcHRp
b25zLmNsYXNzTmFtZSA9IFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsLkFzc2VydGlvbkljb25TdHls
ZUNsYXNzTmFtZTsKLSAgICAgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmco
IkFsbCBSZXF1ZXN0cyIpOworICAgICAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5yZXBl
YXRlZFVJU3RyaW5nLmFsbFJlcXVlc3RzKCk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0gZWxz
ZSB7CiAgICAgICAgICAgICBsZXQgc291cmNlQ29kZSA9IGJyZWFrcG9pbnQuc291cmNlQ29kZUxv
Y2F0aW9uICYmIGJyZWFrcG9pbnQuc291cmNlQ29kZUxvY2F0aW9uLmRpc3BsYXlTb3VyY2VDb2Rl
OwpAQCAtMTQ1Nyw3ICsxNDU3LDcgQEAgV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwgPSBjbGFzcyBE
ZWJ1Z2dlclNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5hdmlnYXRpb25TaWRlYmEKICAgICAgICAg
aWYgKEluc3BlY3RvckJhY2tlbmQuZG9tYWlucy5EZWJ1Z2dlci5zZXRQYXVzZU9uQXNzZXJ0aW9u
cykgewogICAgICAgICAgICAgbGV0IGFzc2VydGlvbkZhaWx1cmVzQnJlYWtwb2ludFNob3duID0g
V0kuc2V0dGluZ3Muc2hvd0Fzc2VydGlvbkZhaWx1cmVzQnJlYWtwb2ludC52YWx1ZTsKIAotICAg
ICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2tib3hJdGVtKFdJLlVJU3RyaW5nKCJBc3Nl
cnRpb24gRmFpbHVyZXMiKSwgKCkgPT4geworICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5k
Q2hlY2tib3hJdGVtKFdJLnJlcGVhdGVkVUlTdHJpbmcuYXNzZXJ0aW9uRmFpbHVyZXMoKSwgKCkg
PT4gewogICAgICAgICAgICAgICAgIGlmIChhc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnRTaG93
bikKICAgICAgICAgICAgICAgICAgICAgV0kuZGVidWdnZXJNYW5hZ2VyLnJlbW92ZUJyZWFrcG9p
bnQoV0kuZGVidWdnZXJNYW5hZ2VyLmFzc2VydGlvbkZhaWx1cmVzQnJlYWtwb2ludCk7CiAgICAg
ICAgICAgICAgICAgZWxzZSB7CkBAIC0xNDc5LDcgKzE0NzksNyBAQCBXSS5EZWJ1Z2dlclNpZGVi
YXJQYW5lbCA9IGNsYXNzIERlYnVnZ2VyU2lkZWJhclBhbmVsIGV4dGVuZHMgV0kuTmF2aWdhdGlv
blNpZGViYQogCiAgICAgICAgICAgICBsZXQgYWxsUmVxdWVzdHNCcmVha3BvaW50U2hvd24gPSBX
SS5zZXR0aW5ncy5zaG93QWxsUmVxdWVzdHNCcmVha3BvaW50LnZhbHVlOwogCi0gICAgICAgICAg
ICBjb250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0ZW0oV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0
cyIpLCAoKSA9PiB7CisgICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0ZW0o
V0kucmVwZWF0ZWRVSVN0cmluZy5hbGxSZXF1ZXN0cygpLCAoKSA9PiB7CiAgICAgICAgICAgICAg
ICAgaWYgKGFsbFJlcXVlc3RzQnJlYWtwb2ludFNob3duKQogICAgICAgICAgICAgICAgICAgICBX
SS5kb21EZWJ1Z2dlck1hbmFnZXIucmVtb3ZlVVJMQnJlYWtwb2ludChXSS5kb21EZWJ1Z2dlck1h
bmFnZXIuYWxsUmVxdWVzdHNCcmVha3BvaW50KTsKICAgICAgICAgICAgICAgICBlbHNlIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0xheWVy
VHJlZURldGFpbHNTaWRlYmFyUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsLmpzCmluZGV4IDJiNjUx
M2E3ZmQyLi5jMWFkNmZhYTRjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbC5qcworKysgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRhaWxz
U2lkZWJhclBhbmVsLmpzCkBAIC0xMzYsNyArMTM2LDcgQEAgV0kuTGF5ZXJUcmVlRGV0YWlsc1Np
ZGViYXJQYW5lbCA9IGNsYXNzIExheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwgZXh0ZW5kcyBX
SS4KICAgICAgICAgY29sdW1ucy5uYW1lLnRpdGxlID0gV0kuVUlTdHJpbmcoIk5vZGUiKTsKICAg
ICAgICAgY29sdW1ucy5uYW1lLnNvcnRhYmxlID0gZmFsc2U7CiAKLSAgICAgICAgY29sdW1ucy5w
YWludENvdW50LnRpdGxlID0gV0kuVUlTdHJpbmcoIlBhaW50cyIpOworICAgICAgICBjb2x1bW5z
LnBhaW50Q291bnQudGl0bGUgPSBXSS5VSVN0cmluZygiUGFpbnRzIiwgIlBhaW50cyBAIENvbHVt
biB0aXRsZSIsICJBIGNvdW50IG9mIGhvdyBtYW55IHRpbWVzIGFuIGVsZW1lbnQgd2FzIHBhaW50
ZWQgKHJlbmRlcmVkKSIpOwogICAgICAgICBjb2x1bW5zLnBhaW50Q291bnQuc29ydGFibGUgPSB0
cnVlOwogICAgICAgICBjb2x1bW5zLnBhaW50Q291bnQuYWxpZ25lZCA9ICJyaWdodCI7CiAgICAg
ICAgIGNvbHVtbnMucGFpbnRDb3VudC53aWR0aCA9ICI3MHB4IjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL05ldHdvcmtUYWJsZUNvbnRlbnRW
aWV3LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTmV0d29y
a1RhYmxlQ29udGVudFZpZXcuanMKaW5kZXggYWEwODRhMWJiMzguLjQxOGE0ZGI5MzE5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9OZXR3b3Jr
VGFibGVDb250ZW50Vmlldy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9OZXR3b3JrVGFibGVDb250ZW50Vmlldy5qcwpAQCAtMjExLDcgKzIxMSw3IEBA
IFdJLk5ldHdvcmtUYWJsZUNvbnRlbnRWaWV3ID0gY2xhc3MgTmV0d29ya1RhYmxlQ29udGVudFZp
ZXcgZXh0ZW5kcyBXSS5Db250ZW50VmllCiAgICAgICAgIGNhc2UgV0kuUmVzb3VyY2UuVHlwZS5Y
SFI6CiAgICAgICAgICAgICByZXR1cm4gIlhIUiI7CiAgICAgICAgIGNhc2UgV0kuUmVzb3VyY2Uu
VHlwZS5GZXRjaDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiRmV0Y2giKTsKKyAg
ICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRlZFVJU3RyaW5nLmZldGNoKCk7CiAgICAgICAgIGNh
c2UgV0kuUmVzb3VyY2UuVHlwZS5QaW5nOgogICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5n
KCJQaW5nIik7CiAgICAgICAgIGNhc2UgV0kuUmVzb3VyY2UuVHlwZS5CZWFjb246CkBAIC0xMTc1
LDcgKzExNzUsNyBAQCBXSS5OZXR3b3JrVGFibGVDb250ZW50VmlldyA9IGNsYXNzIE5ldHdvcmtU
YWJsZUNvbnRlbnRWaWV3IGV4dGVuZHMgV0kuQ29udGVudFZpZQogICAgICAgICAgICAgYWxpZ246
ICJyaWdodCIsCiAgICAgICAgIH0pOwogCi0gICAgICAgIHRoaXMuX3RyYW5zZmVyU2l6ZUNvbHVt
biA9IG5ldyBXSS5UYWJsZUNvbHVtbigidHJhbnNmZXJTaXplIiwgV0kuVUlTdHJpbmcoIlRyYW5z
ZmVyIFNpemUiKSwgeworICAgICAgICB0aGlzLl90cmFuc2ZlclNpemVDb2x1bW4gPSBuZXcgV0ku
VGFibGVDb2x1bW4oInRyYW5zZmVyU2l6ZSIsIFdJLlVJU3RyaW5nKCJUcmFuc2ZlciBTaXplIiwg
IkFtb3VudCBvZiBkYXRhIHNlbnQgb3ZlciB0aGUgbmV0d29yayBmb3IgYSBzaW5nbGUgcmVzb3Vy
Y2UiKSwgewogICAgICAgICAgICAgbWluV2lkdGg6IDEwMCwKICAgICAgICAgICAgIG1heFdpZHRo
OiAxNTAsCiAgICAgICAgICAgICBpbml0aWFsV2lkdGg6IDEwMCwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZXNOYXZpZ2F0aW9uU2lk
ZWJhclBhbmVsLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3Mv
U291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMKaW5kZXggZjBlOTRmYmFkMTYuLmYzOTNl
Y2NmYWNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5l
bC5qcwpAQCAtODgzLDEzICs4ODMsMTMgQEAgV0kuU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFu
ZWwgPSBjbGFzcyBTb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCBleHRlbmRzIFcKIAogICAg
ICAgICBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZGVidWdnZXJNYW5hZ2VyLmFsbEV4Y2VwdGlvbnNC
cmVha3BvaW50KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9ICJicmVha3BvaW50
LWV4Y2VwdGlvbi1pY29uIjsKLSAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmlu
ZygiQWxsIEV4Y2VwdGlvbnMiKTsKKyAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5yZXBl
YXRlZFVJU3RyaW5nLmFsbEV4Y2VwdGlvbnMoKTsKICAgICAgICAgfSBlbHNlIGlmIChicmVha3Bv
aW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIudW5jYXVnaHRFeGNlcHRpb25zQnJlYWtwb2ludCkg
ewogICAgICAgICAgICAgb3B0aW9ucy5jbGFzc05hbWUgPSAiYnJlYWtwb2ludC1leGNlcHRpb24t
aWNvbiI7Ci0gICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmcoIlVuY2F1Z2h0
IEV4Y2VwdGlvbnMiKTsKKyAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5yZXBlYXRlZFVJ
U3RyaW5nLnVuY2F1Z2h0RXhjZXB0aW9ucygpOwogICAgICAgICB9IGVsc2UgaWYgKGJyZWFrcG9p
bnQgPT09IFdJLmRlYnVnZ2VyTWFuYWdlci5hc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnQpIHsK
ICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NOYW1lID0gImJyZWFrcG9pbnQtYXNzZXJ0aW9uLWlj
b24iOwotICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5nKCJBc3NlcnRpb24g
RmFpbHVyZXMiKTsKKyAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5yZXBlYXRlZFVJU3Ry
aW5nLmFzc2VydGlvbkZhaWx1cmVzKCk7CiAgICAgICAgIH0gZWxzZSBpZiAoYnJlYWtwb2ludCBp
bnN0YW5jZW9mIFdJLkRPTUJyZWFrcG9pbnQpIHsKICAgICAgICAgICAgIGlmICghYnJlYWtwb2lu
dC5kb21Ob2RlSWRlbnRpZmllcikKICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDsKQEAgLTky
Myw3ICs5MjMsNyBAQCBXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNzIFNv
dXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsIGV4dGVuZHMgVwogCiAgICAgICAgICAgICBpZiAo
YnJlYWtwb2ludCA9PT0gV0kuZG9tRGVidWdnZXJNYW5hZ2VyLmFsbFJlcXVlc3RzQnJlYWtwb2lu
dCkgewogICAgICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NOYW1lID0gImJyZWFrcG9pbnQtYXNz
ZXJ0aW9uLWljb24iOwotICAgICAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmlu
ZygiQWxsIFJlcXVlc3RzIik7CisgICAgICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLnJl
cGVhdGVkVUlTdHJpbmcuYWxsUmVxdWVzdHMoKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfSBl
bHNlIHsKICAgICAgICAgICAgIGxldCBzb3VyY2VDb2RlID0gYnJlYWtwb2ludC5zb3VyY2VDb2Rl
TG9jYXRpb24gJiYgYnJlYWtwb2ludC5zb3VyY2VDb2RlTG9jYXRpb24uZGlzcGxheVNvdXJjZUNv
ZGU7CkBAIC0xNTAyLDcgKzE1MDIsNyBAQCBXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5l
bCA9IGNsYXNzIFNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsIGV4dGVuZHMgVwogICAgICAg
ICBpZiAoSW5zcGVjdG9yQmFja2VuZC5kb21haW5zLkRlYnVnZ2VyLnNldFBhdXNlT25Bc3NlcnRp
b25zKSB7CiAgICAgICAgICAgICBsZXQgYXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50U2hvd24g
PSBXSS5zZXR0aW5ncy5zaG93QXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50LnZhbHVlOwogCi0g
ICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0ZW0oV0kuVUlTdHJpbmcoIkFz
c2VydGlvbiBGYWlsdXJlcyIpLCAoKSA9PiB7CisgICAgICAgICAgICBjb250ZXh0TWVudS5hcHBl
bmRDaGVja2JveEl0ZW0oV0kucmVwZWF0ZWRVSVN0cmluZy5hc3NlcnRpb25GYWlsdXJlcygpLCAo
KSA9PiB7CiAgICAgICAgICAgICAgICAgaWYgKGFzc2VydGlvbkZhaWx1cmVzQnJlYWtwb2ludFNo
b3duKQogICAgICAgICAgICAgICAgICAgICBXSS5kZWJ1Z2dlck1hbmFnZXIucmVtb3ZlQnJlYWtw
b2ludChXSS5kZWJ1Z2dlck1hbmFnZXIuYXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50KTsKICAg
ICAgICAgICAgICAgICBlbHNlIHsKQEAgLTE1MjQsNyArMTUyNCw3IEBAIFdJLlNvdXJjZXNOYXZp
Z2F0aW9uU2lkZWJhclBhbmVsID0gY2xhc3MgU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwg
ZXh0ZW5kcyBXCiAKICAgICAgICAgICAgIGxldCBhbGxSZXF1ZXN0c0JyZWFrcG9pbnRTaG93biA9
IFdJLnNldHRpbmdzLnNob3dBbGxSZXF1ZXN0c0JyZWFrcG9pbnQudmFsdWU7CiAKLSAgICAgICAg
ICAgIGNvbnRleHRNZW51LmFwcGVuZENoZWNrYm94SXRlbShXSS5VSVN0cmluZygiQWxsIFJlcXVl
c3RzIiksICgpID0+IHsKKyAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZENoZWNrYm94SXRl
bShXSS5yZXBlYXRlZFVJU3RyaW5nLmFsbFJlcXVlc3RzKCksICgpID0+IHsKICAgICAgICAgICAg
ICAgICBpZiAoYWxsUmVxdWVzdHNCcmVha3BvaW50U2hvd24pCiAgICAgICAgICAgICAgICAgICAg
IFdJLmRvbURlYnVnZ2VyTWFuYWdlci5yZW1vdmVVUkxCcmVha3BvaW50KFdJLmRvbURlYnVnZ2Vy
TWFuYWdlci5hbGxSZXF1ZXN0c0JyZWFrcG9pbnQpOwogICAgICAgICAgICAgICAgIGVsc2Ugewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3By
ZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlvbi5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNl
Y3Rpb24uanMKaW5kZXggYjA0ZjkyMzkwMGEuLjRkMDE0YmRiMjNiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldENTU1N0eWxl
RGVjbGFyYXRpb25TZWN0aW9uLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24uanMKQEAg
LTMxNSw3ICszMTUsNyBAQCBXSS5TcHJlYWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9u
ID0gY2xhc3MgU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uUwogICAgICAgICAgICAgYnJl
YWs7CiAKICAgICAgICAgY2FzZSBXSS5DU1NTdHlsZURlY2xhcmF0aW9uLlR5cGUuSW5saW5lOgot
ICAgICAgICAgICAgdGhpcy5fc2VsZWN0b3JFbGVtZW50LnRleHRDb250ZW50ID0gV0kuVUlTdHJp
bmcoIlN0eWxlIEF0dHJpYnV0ZSIpOworICAgICAgICAgICAgdGhpcy5fc2VsZWN0b3JFbGVtZW50
LnRleHRDb250ZW50ID0gV0kuVUlTdHJpbmcoIlN0eWxlIEF0dHJpYnV0ZSIsICJDU1MgcHJvcGVy
dGllcyBkZWZpbmVkIHZpYSBIVE1MIHN0eWxlIGF0dHJpYnV0ZSIpOwogICAgICAgICAgICAgdGhp
cy5fc2VsZWN0b3JFbGVtZW50LmNsYXNzTGlzdC5hZGQoInN0eWxlLWF0dHJpYnV0ZSIpOwogICAg
ICAgICAgICAgYnJlYWs7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbC5qcyBiL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0UnVsZXNT
dHlsZURldGFpbHNQYW5lbC5qcwppbmRleCBlMWQ0ZWJlZDMxMi4uZGM4NGMwNWFlYjQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNo
ZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwuanMK
QEAgLTI1Niw3ICsyNTYsNyBAQCBXSS5TcHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwg
PSBjbGFzcyBTcHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwgZQogCiAgICAgICAgIGxl
dCBhZGRTZWN0aW9uID0gKHNlY3Rpb24pID0+IHsKICAgICAgICAgICAgIGlmIChzZWN0aW9uLnN0
eWxlLmluaGVyaXRlZCAmJiAoIXByZXZpb3VzU3R5bGUgfHwgcHJldmlvdXNTdHlsZS5ub2RlICE9
PSBzZWN0aW9uLnN0eWxlLm5vZGUpKQotICAgICAgICAgICAgICAgIGFkZEhlYWRlcihXSS5VSVN0
cmluZygiSW5oZXJpdGVkIEZyb20iKSwgc2VjdGlvbi5zdHlsZS5ub2RlKTsKKyAgICAgICAgICAg
ICAgICBhZGRIZWFkZXIoV0kuVUlTdHJpbmcoIkluaGVyaXRlZCBGcm9tIiwgIkEgc2VjdGlvbiBv
ZiBDU1MgcnVsZXMgbWF0Y2hpbmcgYW4gYW5jZXN0b3IgRE9NIG5vZGUiKSwgc2VjdGlvbi5zdHls
ZS5ub2RlKTsKIAogICAgICAgICAgICAgaWYgKCFzZWN0aW9uLmlzRGVzY2VuZGFudE9mKHRoaXMp
KSB7CiAgICAgICAgICAgICAgICAgbGV0IHJlZmVyZW5jZVZpZXcgPSB0aGlzLnN1YnZpZXdzW3Ro
aXMuX3NlY3Rpb25zLmxlbmd0aF07CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29s
cy9DaGFuZ2VMb2cKaW5kZXggODExNmQ1OGE3ZTcuLjBmZmZjMWYyZTcwIDEwMDY0NAotLS0gYS9U
b29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIw
MTktMDQtMjUgIE5pa2l0YSBWYXNpbHlldiAgPG52YXNpbHlldkBhcHBsZS5jb20+CisKKyAgICAg
ICAgV2ViIEluc3BlY3RvcjogUHJvdmlkZSBVSVN0cmluZyBkZXNjcmlwdGlvbnMgdG8gaW1wcm92
ZSBsb2NhbGl6YXRpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xOTUxMzIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ4NDU3ODE3PgorCisgICAg
ICAgIFJldmlld2VkIGJ5IERldmluIFJvdXNzby4KKworICAgICAgICBBbGxvdyBXSS5VSVN0cmlu
ZyB0byB0YWtlOgorICAgICAgICAtIFdJLlVJU3RyaW5nKHN0cmluZywga2V5LCBjb21tZW50KQor
ICAgICAgICAtIFdJLlVJU3RyaW5nKHN0cmluZywgY29tbWVudCkKKyAgICAgICAgLSBXSS5VSVN0
cmluZyhzdHJpbmcpCisKKyAgICAgICAgKiBTY3JpcHRzL2V4dHJhY3QtbG9jYWxpemFibGUtanMt
c3RyaW5nczoKKwogMjAxOS0wNC0yMyAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAK
ICAgICAgICAgW2lPU10gUXVpY2tMb29rIGRvY3VtZW50cyBsb2FkZWQgZnJvbSBmaWxlOiBVUkxz
IHNob3VsZCBiZSBhbGxvd2VkIHRvIHBlcmZvcm0gc2FtZS1kb2N1bWVudCBuYXZpZ2F0aW9ucwpk
aWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy9leHRyYWN0LWxvY2FsaXphYmxlLWpzLXN0cmluZ3Mg
Yi9Ub29scy9TY3JpcHRzL2V4dHJhY3QtbG9jYWxpemFibGUtanMtc3RyaW5ncwppbmRleCAzNGI1
YWM3NzkzYi4uNjhjNzBiZGVjOTcgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvZXh0cmFjdC1s
b2NhbGl6YWJsZS1qcy1zdHJpbmdzCisrKyBiL1Rvb2xzL1NjcmlwdHMvZXh0cmFjdC1sb2NhbGl6
YWJsZS1qcy1zdHJpbmdzCkBAIC03NCw3ICs3NCwxNSBAQCBmb3IgbXkgJGZpbGUgKHNvcnQgQGZp
bGVzKSB7CiAgICAgICAgIGNob21wOwogCiAgICAgICAgICMgSGFuZGxlIFdlYkluc3BlY3RvciBz
dHJpbmdzLiBQcmludHMgYSB3YXJuaW5nIGlmIGEgbm9uLXN0cmluZyBsaXRlcmFsIGlzIHBhc3Nl
ZCB0byBXSS5VSVN0cmluZygpLgotICAgICAgICBIYW5kbGVVSVN0cmluZygkMSwgJDIgfHwgJDEs
ICQzIHx8ICIiLCAkZmlsZSwgJC4pIHdoaWxlIHMvV0lcLlVJU3RyaW5nXCgiKFteIl0rKSIoPzos
XHMqIihbXiJdKykiKD86LFxzKiIoW14iXSspIik/KT9cKS8vOworICAgICAgICAjIEFsbG93OiBX
SS5VSVN0cmluZyhzdHJpbmcsIGNvbW1lbnQpCisgICAgICAgICMgICAgICAgIFdJLlVJU3RyaW5n
KHN0cmluZywga2V5LCBjb21tZW50KQorICAgICAgICBIYW5kbGVVSVN0cmluZygKKyAgICAgICAg
ICAgICQxLAorICAgICAgICAgICAgKCQzIHx8IChkZWZpbmVkICQzIGFuZCBsZW5ndGggJDMgPT0g
MCkpID8gJDIgOiAkMSwKKyAgICAgICAgICAgICgkMyB8fCAoZGVmaW5lZCAkMyBhbmQgbGVuZ3Ro
ICQzID09IDApKSA/ICQzIDogJDIgfHwgIiIsCisgICAgICAgICAgICAkZmlsZSwKKyAgICAgICAg
ICAgICQuCisgICAgICAgICkgd2hpbGUgcy9XSVwuVUlTdHJpbmdcKCIoW14iXSspIig/Oixccyoi
KFteIl0qKSIoPzosXHMqIihbXiJdKikiKT8pP1wpLy87CiAgICAgICAgIHByaW50ICIkZmlsZTok
LjpXQVJOSU5HOiAkJlxuIiB3aGlsZSBzL1dJXC5VSVN0cmluZ1woLio/XCkvLzsKIAogICAgICAg
ICAjIEhhbmRsZSBzdHJpbmdzIGZvciBvdGhlciBwcm9qZWN0cyB0aGF0IGFsc28gdXNlIHRoaXMg
c2NyaXB0Lgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>370452</attachid>
            <date>2019-05-22 15:26:48 -0700</date>
            <delta_ts>2019-05-28 13:26:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>44384</size>
            <attacher name="Nikita Vasilyev">nvasilyev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IGQ3NmVmYjY0MzBjLi41ZjkyODdmOGY5MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTggQEAKKzIwMTktMDUtMjIgIE5pa2l0
YSBWYXNpbHlldiAgPG52YXNpbHlldkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogUHJvdmlkZSBVSVN0cmluZyBkZXNjcmlwdGlvbnMgdG8gaW1wcm92ZSBsb2NhbGl6YXRpb25z
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUxMzIK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ4NDU3ODE3PgorCisgICAgICAgIFJldmlld2VkIGJ5
IERldmluIFJvdXNzby4KKworICAgICAgICAqIExvY2FsaXphdGlvbnMvZW4ubHByb2ovbG9jYWxp
emVkU3RyaW5ncy5qczoKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXpl
ZFN0cmluZ3MuanM6CisgICAgICAgIChXSS5VSVN0cmluZyk6CisgICAgICAgIChXSS5yZXBlYXRl
ZFVJU3RyaW5nLnRpbWVsaW5lUmVjb3JkTGF5b3V0KToKKyAgICAgICAgKFdJLnJlcGVhdGVkVUlT
dHJpbmcudGltZWxpbmVSZWNvcmRQYWludCk6CisgICAgICAgIChXSS5yZXBlYXRlZFVJU3RyaW5n
LnRpbWVsaW5lUmVjb3JkQ29tcG9zaXRlKToKKyAgICAgICAgKFdJLnJlcGVhdGVkVUlTdHJpbmcu
YWxsRXhjZXB0aW9ucyk6CisgICAgICAgIChXSS5yZXBlYXRlZFVJU3RyaW5nLnVuY2F1Z2h0RXhj
ZXB0aW9ucyk6CisgICAgICAgIChXSS5yZXBlYXRlZFVJU3RyaW5nLmFzc2VydGlvbkZhaWx1cmVz
KToKKyAgICAgICAgKFdJLnJlcGVhdGVkVUlTdHJpbmcuYWxsUmVxdWVzdHMpOgorICAgICAgICAo
V0kucmVwZWF0ZWRVSVN0cmluZy5mZXRjaCk6CisgICAgICAgIChXSS5yZXBlYXRlZFVJU3RyaW5n
LnJldmVhbEluRE9NVHJlZSk6CisgICAgICAgICogVXNlckludGVyZmFjZS9Nb2RlbHMvTGF5b3V0
VGltZWxpbmVSZWNvcmQuanM6CisgICAgICAgIChXSS5MYXlvdXRUaW1lbGluZVJlY29yZC5kaXNw
bGF5TmFtZUZvckV2ZW50VHlwZSk6CisgICAgICAgICogVXNlckludGVyZmFjZS9Nb2RlbHMvUmVu
ZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5qczoKKyAgICAgICAgKFdJLlJlbmRlcmluZ0ZyYW1l
VGltZWxpbmVSZWNvcmQuZGlzcGxheU5hbWVGb3JUYXNrVHlwZSk6CisgICAgICAgICogVXNlcklu
dGVyZmFjZS9Nb2RlbHMvUmVzb3VyY2UuanM6CisgICAgICAgIChXSS5SZXNvdXJjZS5kaXNwbGF5
TmFtZUZvclR5cGUpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXRUZXN0R3Jv
dXBDb250ZW50Vmlldy5qczoKKyAgICAgICAgKFdJLkF1ZGl0VGVzdEdyb3VwQ29udGVudFZpZXcu
cHJvdG90eXBlLmxheW91dCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9DUFVUaW1l
bGluZVZpZXcuanM6CisgICAgICAgIChXSS5DUFVUaW1lbGluZVZpZXcuZGlzcGxheU5hbWVGb3JT
YW1wbGVUeXBlKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0NvbnRleHRNZW51VXRp
bGl0aWVzLmpzOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvRE9NQnJlYWtwb2ludFRy
ZWVFbGVtZW50LmpzOgorICAgICAgICAoV0kuRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50LmRpc3Bs
YXlOYW1lRm9yVHlwZSk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJl
ZUVsZW1lbnQuanM6CisgICAgICAgIChXSS5ET01Ob2RlVHJlZUVsZW1lbnQucHJvdG90eXBlLnBv
cHVsYXRlQ29udGV4dE1lbnUpOgorICAgICAgICAoV0kuRE9NTm9kZVRyZWVFbGVtZW50KToKKyAg
ICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVFbGVtZW50LmpzOgorICAgICAgICAo
V0kuRE9NVHJlZUVsZW1lbnQucHJvdG90eXBlLnBvcHVsYXRlRE9NTm9kZUNvbnRleHRNZW51KToK
KyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0RlYnVnZ2VyU2lkZWJhclBhbmVsLmpzOgor
ICAgICAgICAoV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwucHJvdG90eXBlLl9hZGRCcmVha3BvaW50
KToKKyAgICAgICAgKFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsLnByb3RvdHlwZS5faGFuZGxlQ3Jl
YXRlQnJlYWtwb2ludE1vdXNlRG93bik6CisgICAgICAgIChXSS5EZWJ1Z2dlclNpZGViYXJQYW5l
bCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJh
clBhbmVsLmpzOgorICAgICAgICAoV0kuTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbC5wcm90
b3R5cGUuX2J1aWxkRGF0YUdyaWRTZWN0aW9uKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1Zp
ZXdzL05ldHdvcmtUYWJsZUNvbnRlbnRWaWV3LmpzOgorICAgICAgICAoV0kuTmV0d29ya1RhYmxl
Q29udGVudFZpZXcuc2hvcnREaXNwbGF5TmFtZUZvclJlc291cmNlVHlwZSk6CisgICAgICAgIChX
SS5OZXR3b3JrVGFibGVDb250ZW50Vmlldy5wcm90b3R5cGUuaW5pdGlhbExheW91dCk6CisgICAg
ICAgICogVXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbC5q
czoKKyAgICAgICAgKFdJLlNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsLnByb3RvdHlwZS5f
YWRkQnJlYWtwb2ludCk6CisgICAgICAgIChXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5l
bC5wcm90b3R5cGUuX2hhbmRsZUNyZWF0ZUJyZWFrcG9pbnRNb3VzZURvd24pOgorICAgICAgICAq
IFVzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlv
bi5qczoKKyAgICAgICAgKFdJLlNwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24u
cHJvdG90eXBlLl9yZW5kZXJTZWxlY3Rvcik6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3
cy9TcHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwuanM6CisgICAgICAgIChXSS5TcHJl
YWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwucHJvdG90eXBlLmxheW91dCk6CisKIDIwMTkt
MDUtMTcgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJ
bnNwZWN0b3I6IFRpbWVsaW5lczogQ1BVL21lbW9yeSB0aW1lbGluZSBiYXJzIHNvbWV0aW1lcyBk
b24ndCBkcmF3IGNvcnJlY3RseSBhbmQganVtcCBhcm91bmQgb24gc2Nyb2xsaW5nCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2NhbGl6
ZWRTdHJpbmdzLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4ubHBy
b2ovbG9jYWxpemVkU3RyaW5ncy5qcwppbmRleCA1MDQ2NjE2OWUxZi4uZjk3YzE4OGNiMzEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xv
Y2FsaXplZFN0cmluZ3MuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlv
bnMvZW4ubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcwpAQCAtOTcsOCArOTcsMTAgQEAgbG9jYWxp
emVkU3RyaW5nc1siQWRkaXRpb25zIl0gPSAiQWRkaXRpb25zIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkFkZHJlc3MiXSA9ICJBZGRyZXNzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFsbCJdID0gIkFsbCI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJBbGwgQ2hhbmdlcyJdID0gIkFsbCBDaGFuZ2VzIjsKKy8qIEJy
ZWFrIChwYXVzZSkgb24gYWxsIGV4Y2VwdGlvbnMgKi8KIGxvY2FsaXplZFN0cmluZ3NbIkFsbCBF
eGNlcHRpb25zIl0gPSAiQWxsIEV4Y2VwdGlvbnMiOwogbG9jYWxpemVkU3RyaW5nc1siQWxsIExh
eWVycyJdID0gIkFsbCBMYXllcnMiOworLyogQSBzdWJtZW51IGl0ZW0gb2YgJ0JyZWFrIG9uJyB0
aGF0IGJyZWFrcyAocGF1c2VzKSBiZWZvcmUgYWxsIG5ldHdvcmsgcmVxdWVzdHMgKi8KIGxvY2Fs
aXplZFN0cmluZ3NbIkFsbCBSZXF1ZXN0cyJdID0gIkFsbCBSZXF1ZXN0cyI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJBbGwgUmVzb3VyY2VzIl0gPSAiQWxsIFJlc291cmNlcyI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJBbGwgU3RvcmFnZSJdID0gIkFsbCBTdG9yYWdlIjsKQEAgLTEyNywxMiArMTI5LDE0IEBA
IGxvY2FsaXplZFN0cmluZ3NbIkFyZWEiXSA9ICJBcmVhIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFz
c2VydGlvbiJdID0gIkFzc2VydGlvbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRpb24gRmFp
bGVkIl0gPSAiQXNzZXJ0aW9uIEZhaWxlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRpb24g
RmFpbGVkOiAlcyJdID0gIkFzc2VydGlvbiBGYWlsZWQ6ICVzIjsKKy8qIEJyZWFrIChwYXVzZSkg
d2hlbiBjb25zb2xlLmFzc2VydCgpIGZhaWxzICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRp
b24gRmFpbHVyZXMiXSA9ICJBc3NlcnRpb24gRmFpbHVyZXMiOwogbG9jYWxpemVkU3RyaW5nc1si
QXNzZXJ0aW9uIHdpdGggbWVzc2FnZTogJXMiXSA9ICJBc3NlcnRpb24gd2l0aCBtZXNzYWdlOiAl
cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBc3NlcnRpdmUiXSA9ICJBc3NlcnRpdmUiOwogbG9jYWxp
emVkU3RyaW5nc1siQXNzb2NpYXRlZCBEYXRhIl0gPSAiQXNzb2NpYXRlZCBEYXRhIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkFzeW5jIGF1ZGl0cyBhcmUgbm90IHN1cHBvcnRlZC4iXSA9ICJBc3luYyBh
dWRpdHMgYXJlIG5vdCBzdXBwb3J0ZWQuIjsKIGxvY2FsaXplZFN0cmluZ3NbIkF0dHJpYnV0ZSJd
ID0gIkF0dHJpYnV0ZSI7CisvKiBBIHN1Ym1lbnUgaXRlbSBvZiAnQnJlYWsgT24nIHRoYXQgYnJl
YWtzIChwYXVzZXMpIGJlZm9yZSBET00gYXR0cmlidXRlIGlzIG1vZGlmaWVkICovCiBsb2NhbGl6
ZWRTdHJpbmdzWyJBdHRyaWJ1dGUgTW9kaWZpZWQiXSA9ICJBdHRyaWJ1dGUgTW9kaWZpZWQiOwog
bG9jYWxpemVkU3RyaW5nc1siQXR0cmlidXRlcyJdID0gIkF0dHJpYnV0ZXMiOwogbG9jYWxpemVk
U3RyaW5nc1siQXVkaXQiXSA9ICJBdWRpdCI7CkBAIC0xOTYsNiArMjAwLDcgQEAgbG9jYWxpemVk
U3RyaW5nc1siQ2FudmFzICVkIl0gPSAiQ2FudmFzICVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNh
bnZhcyAlcyJdID0gIkNhbnZhcyAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDYW52YXMgRWxlbWVu
dCJdID0gIkNhbnZhcyBFbGVtZW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIkNhbnZhc2VzIl0gPSAi
Q2FudmFzZXMiOworLyogQ2FwdHVyZSBzY3JlZW5zaG90IG9mIHRoZSBzZWxlY3RlZCBET00gbm9k
ZSAqLwogbG9jYWxpemVkU3RyaW5nc1siQ2FwdHVyZSBTY3JlZW5zaG90Il0gPSAiQ2FwdHVyZSBT
Y3JlZW5zaG90IjsKIGxvY2FsaXplZFN0cmluZ3NbIkNhcHR1cmluZyJdID0gIkNhcHR1cmluZyI7
CiAvKiBDb250ZXh0IG1lbnUgbGFiZWwgZm9yIHdoZXRoZXIgc2VhcmNoZXMgc2hvdWxkIGJlIGNh
c2Ugc2Vuc2l0aXZlLiAqLwpAQCAtMjA5LDYgKzIxNCw3IEBAIGxvY2FsaXplZFN0cmluZ3NbIkNo
YW5nZXMiXSA9ICJDaGFuZ2VzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNoYXJhY3RlciBEYXRhIl0g
PSAiQ2hhcmFjdGVyIERhdGEiOwogbG9jYWxpemVkU3RyaW5nc1siQ2hhcmdlIFx1MjAxQyVzXHUy
MDFEIHRvIENhbGxlcnMiXSA9ICJDaGFyZ2UgXHUyMDFDJXNcdTIwMUQgdG8gQ2FsbGVycyI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJDaGVja2VkIl0gPSAiQ2hlY2tlZCI7CisvKiBBIHN1Ym1lbnUgaXRl
bSBvZiAnQWRkJyB0byBhcHBlbmQgRE9NIG5vZGVzIHRvIHRoZSBzZWxlY3RlZCBET00gbm9kZSAq
LwogbG9jYWxpemVkU3RyaW5nc1siQ2hpbGQiXSA9ICJDaGlsZCI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJDaGlsZCBMYXllcnMiXSA9ICJDaGlsZCBMYXllcnMiOwogbG9jYWxpemVkU3RyaW5nc1siQ2hp
bGQgYWRkZWQgdG8gIl0gPSAiQ2hpbGQgYWRkZWQgdG8gIjsKQEAgLTI0Myw3ICsyNDksOCBAQCBs
b2NhbGl6ZWRTdHJpbmdzWyJDb2xsZWN0IGdhcmJhZ2UiXSA9ICJDb2xsZWN0IGdhcmJhZ2UiOwog
bG9jYWxpemVkU3RyaW5nc1siQ29tbWVudCJdID0gIkNvbW1lbnQiOwogbG9jYWxpemVkU3RyaW5n
c1siQ29tcGFyZSBzbmFwc2hvdHMiXSA9ICJDb21wYXJlIHNuYXBzaG90cyI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJDb21wYXJpc29uIG9mIHRvdGFsIG1lbW9yeSBzaXplIGF0IHRoZSBlbmQgb2YgdGhl
IHNlbGVjdGVkIHRpbWUgcmFuZ2UgdG8gdGhlIG1heGltdW0gbWVtb3J5IHNpemUgaW4gdGhpcyBy
ZWNvcmRpbmciXSA9ICJDb21wYXJpc29uIG9mIHRvdGFsIG1lbW9yeSBzaXplIGF0IHRoZSBlbmQg
b2YgdGhlIHNlbGVjdGVkIHRpbWUgcmFuZ2UgdG8gdGhlIG1heGltdW0gbWVtb3J5IHNpemUgaW4g
dGhpcyByZWNvcmRpbmciOwotbG9jYWxpemVkU3RyaW5nc1siQ29tcG9zaXRlIl0gPSAiQ29tcG9z
aXRlIjsKKy8qIENvbXBvc2l0ZSBwaGFzZSB0aW1lbGluZSByZWNvcmRzLCB3aGVyZSBncmFwaGlj
IGxheWVycyBhcmUgY29tYmluZWQgKi8KK2xvY2FsaXplZFN0cmluZ3NbIkNvbXBvc2l0ZSBAIFRp
bWVsaW5lIHJlY29yZCJdID0gIkNvbXBvc2l0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wb3Np
dGVkIl0gPSAiQ29tcG9zaXRlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wcmVzc2VkIl0gPSAi
Q29tcHJlc3NlZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21wcmVzc2lvbiJdID0gIkNvbXByZXNz
aW9uIjsKQEAgLTQ2Myw3ICs0NzAsOSBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJFeHRyYSBTY3JpcHRz
Il0gPSAiRXh0cmEgU2NyaXB0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGYWRlIHVuZXhlY3V0ZWQg
Y29kZSJdID0gIkZhZGUgdW5leGVjdXRlZCBjb2RlIjsKIGxvY2FsaXplZFN0cmluZ3NbIkZhaWxl
ZCB0byB1cGdyYWRlIl0gPSAiRmFpbGVkIHRvIHVwZ3JhZGUiOwogbG9jYWxpemVkU3RyaW5nc1si
RmFpbHVyZSBzdGF0dXMgY29kZSJdID0gIkZhaWx1cmUgc3RhdHVzIGNvZGUiOworLyogUmVzb3Vy
Y2UgbG9hZGVkIHZpYSAnZmV0Y2gnIG1ldGhvZCAqLwogbG9jYWxpemVkU3RyaW5nc1siRmV0Y2gi
XSA9ICJGZXRjaCI7CisvKiBSZXNvdXJjZXMgbG9hZGVkIHZpYSAnZmV0Y2gnIG1ldGhvZCAqLwog
bG9jYWxpemVkU3RyaW5nc1siRmV0Y2hlcyJdID0gIkZldGNoZXMiOwogbG9jYWxpemVkU3RyaW5n
c1siRmlsZSBvciBSZXNvdXJjZSJdID0gIkZpbGUgb3IgUmVzb3VyY2UiOwogbG9jYWxpemVkU3Ry
aW5nc1siRmlsZW5hbWUiXSA9ICJGaWxlbmFtZSI7CkBAIC00ODAsNyArNDg5LDkgQEAgbG9jYWxp
emVkU3RyaW5nc1siRm9udHMiXSA9ICJGb250cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3JjZSBE
YXJrIEFwcGVhcmFuY2UiXSA9ICJGb3JjZSBEYXJrIEFwcGVhcmFuY2UiOwogbG9jYWxpemVkU3Ry
aW5nc1siRm9yY2UgTGlnaHQgQXBwZWFyYW5jZSJdID0gIkZvcmNlIExpZ2h0IEFwcGVhcmFuY2Ui
OwogbG9jYWxpemVkU3RyaW5nc1siRm9yY2UgUHJpbnQgTWVkaWEgU3R5bGVzIl0gPSAiRm9yY2Ug
UHJpbnQgTWVkaWEgU3R5bGVzIjsKKy8qIExheW91dCBwaGFzZSByZWNvcmRzIHRoYXQgd2VyZSBp
bXBlcmF0aXZlIChmb3JjZWQpICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3JjZWQgTGF5b3V0Il0g
PSAiRm9yY2VkIExheW91dCI7CisvKiBBIGNvbnRleHQgbWVudSBpdGVtIHRvIGZvcmNlIChvdmVy
cmlkZSkgYSBET00gbm9kZSdzIHBzZXVkby1jbGFzc2VzICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJG
b3JjZWQgUHNldWRvLUNsYXNzZXMiXSA9ICJGb3JjZWQgUHNldWRvLUNsYXNzZXMiOwogbG9jYWxp
emVkU3RyaW5nc1siRm9ybWF0OiBIU0wiXSA9ICJGb3JtYXQ6IEhTTCI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJGb3JtYXQ6IEhTTEEiXSA9ICJGb3JtYXQ6IEhTTEEiOwpAQCAtNTcwLDYgKzU4MSw3IEBA
IGxvY2FsaXplZFN0cmluZ3NbIkluZGV4IEtleSBcdTIwMTQgJXMiXSA9ICJJbmRleCBLZXkgXHUy
MDE0ICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkluZGV4ZWQgRGF0YWJhc2VzIl0gPSAiSW5kZXhl
ZCBEYXRhYmFzZXMiOwogbG9jYWxpemVkU3RyaW5nc1siSW5mbzogIl0gPSAiSW5mbzogIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIkluZm9zIl0gPSAiSW5mb3MiOworLyogQSBzZWN0aW9uIG9mIENTUyBy
dWxlcyBtYXRjaGluZyBhbiBhbmNlc3RvciBET00gbm9kZSAqLwogbG9jYWxpemVkU3RyaW5nc1si
SW5oZXJpdGVkIEZyb20iXSA9ICJJbmhlcml0ZWQgRnJvbSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJ
bml0aWFsIFN0YXRlIl0gPSAiSW5pdGlhbCBTdGF0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbml0
aWFsIFZlbG9jaXR5Il0gPSAiSW5pdGlhbCBWZWxvY2l0eSI7CkBAIC01OTgsOCArNjEwLDkgQEAg
bG9jYWxpemVkU3RyaW5nc1siTGF5ZXIgQ291bnQ6ICVkIl0gPSAiTGF5ZXIgQ291bnQ6ICVkIjsK
IGxvY2FsaXplZFN0cmluZ3NbIkxheWVyIEluZm8iXSA9ICJMYXllciBJbmZvIjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIkxheWVycyJdID0gIkxheWVycyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMYXllcnM6
Il0gPSAiTGF5ZXJzOiI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJMYXlvdXQiXSA9ICJMYXlvdXQiOwog
bG9jYWxpemVkU3RyaW5nc1siTGF5b3V0ICYgUmVuZGVyaW5nIl0gPSAiTGF5b3V0ICYgUmVuZGVy
aW5nIjsKKy8qIExheW91dCBwaGFzZSB0aW1lbGluZSByZWNvcmRzICovCitsb2NhbGl6ZWRTdHJp
bmdzWyJMYXlvdXQgQCBUaW1lbGluZSByZWNvcmQiXSA9ICJMYXlvdXQiOwogbG9jYWxpemVkU3Ry
aW5nc1siTGF5b3V0IEludmFsaWRhdGVkIl0gPSAiTGF5b3V0IEludmFsaWRhdGVkIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkxpbmUgJWQiXSA9ICJMaW5lICVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxp
bmUgJWQ6JWQiXSA9ICJMaW5lICVkOiVkIjsKQEAgLTYxNywxMCArNjMwLDEyIEBAIGxvY2FsaXpl
ZFN0cmluZ3NbIkxvY2FsIFZhcmlhYmxlcyJdID0gIkxvY2FsIFZhcmlhYmxlcyI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJMb2NhdGVkIGF0ICVzIl0gPSAiTG9jYXRlZCBhdCAlcyI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJMb2NhdGlvbiJdID0gIkxvY2F0aW9uIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBD
YW52YXMgQ29udGV4dCJdID0gIkxvZyBDYW52YXMgQ29udGV4dCI7CisvKiBMb2cgKHByaW50KSBE
T00gZWxlbWVudCB0byBDb25zb2xlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgRWxlbWVudCJd
ID0gIkxvZyBFbGVtZW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBGcmFtZSBUZXh0Il0gPSAi
TG9nIEZyYW1lIFRleHQiOwogbG9jYWxpemVkU3RyaW5nc1siTG9nIEZyYW1lIFZhbHVlIl0gPSAi
TG9nIEZyYW1lIFZhbHVlIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBNZXNzYWdlIl0gPSAiTG9n
IE1lc3NhZ2UiOworLyogTG9nIChwcmludCkgRE9NIG5vZGUgdG8gQ29uc29sZSAqLwogbG9jYWxp
emVkU3RyaW5nc1siTG9nIE5vZGUiXSA9ICJMb2cgTm9kZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJM
b2cgU3ltYm9sIl0gPSAiTG9nIFN5bWJvbCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgVmFsdWUi
XSA9ICJMb2cgVmFsdWUiOwpAQCAtNjY0LDYgKzY3OSw3IEBAIGxvY2FsaXplZFN0cmluZ3NbIk5l
dHdvcmsgSXNzdWUiXSA9ICJOZXR3b3JrIElzc3VlIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5ldHdv
cmsgUmVxdWVzdHMiXSA9ICJOZXR3b3JrIFJlcXVlc3RzIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5l
dHdvcmsgUmVxdWVzdHM6Il0gPSAiTmV0d29yayBSZXF1ZXN0czoiOwogbG9jYWxpemVkU3RyaW5n
c1siTmV3IFRhYiJdID0gIk5ldyBUYWIiOworLyogQSBzdWJtZW51IGl0ZW0gb2YgJ0FkZCcgdG8g
YWRkIERPTSBub2RlcyBhZnRlciB0aGUgc2VsZWN0ZWQgRE9NIG5vZGUgKi8KIGxvY2FsaXplZFN0
cmluZ3NbIk5leHQgU2libGluZyJdID0gIk5leHQgU2libGluZyI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJObyJdID0gIk5vIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5vIEFjY2Vzc2liaWxpdHkgSW5mb3Jt
YXRpb24iXSA9ICJObyBBY2Nlc3NpYmlsaXR5IEluZm9ybWF0aW9uIjsKQEAgLTcwNCw2ICs3MjAs
NyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJObyByZXF1ZXN0LCBzZXJ2ZWQgZnJvbSB0aGUgbWVtb3J5
IGNhY2hlLiJdID0gIk5vIHJlcXVlc3QsIHNlcgogbG9jYWxpemVkU3RyaW5nc1siTm8gcmVzcG9u
c2UgY29va2llcy4iXSA9ICJObyByZXNwb25zZSBjb29raWVzLiI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJObyByZXNwb25zZSBoZWFkZXJzIl0gPSAiTm8gcmVzcG9uc2UgaGVhZGVycyI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJOb2RlIl0gPSAiTm9kZSI7CisvKiBBIHN1Ym1lbnUgaXRlbSBvZiAnQnJlYWsg
T24nIHRoYXQgYnJlYWtzIChwYXVzZXMpIGJlZm9yZSBET00gbm9kZSBpcyByZW1vdmVkICovCiBs
b2NhbGl6ZWRTdHJpbmdzWyJOb2RlIFJlbW92ZWQiXSA9ICJOb2RlIFJlbW92ZWQiOwogbG9jYWxp
emVkU3RyaW5nc1siTm9kZXMiXSA9ICJOb2RlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJOb25lIl0g
PSAiTm9uZSI7CkBAIC03NDMsOCArNzYwLDExIEBAIGxvY2FsaXplZFN0cmluZ3NbIlBhZ2UiXSA9
ICJQYWdlIjsKIGxvY2FsaXplZFN0cmluZ3NbIlBhZ2UgSXNzdWUiXSA9ICJQYWdlIElzc3VlIjsK
IGxvY2FsaXplZFN0cmluZ3NbIlBhZ2UgbmF2aWdhdGVkIGF0ICVzIl0gPSAiUGFnZSBuYXZpZ2F0
ZWQgYXQgJXMiOwogbG9jYWxpemVkU3RyaW5nc1siUGFnZSByZWxvYWRlZCBhdCAlcyJdID0gIlBh
Z2UgcmVsb2FkZWQgYXQgJXMiOwotbG9jYWxpemVkU3RyaW5nc1siUGFpbnQiXSA9ICJQYWludCI7
CisvKiBQYWludCAocmVuZGVyKSBwaGFzZSB0aW1lbGluZSByZWNvcmRzICovCitsb2NhbGl6ZWRT
dHJpbmdzWyJQYWludCBAIFRpbWVsaW5lIHJlY29yZCJdID0gIlBhaW50IjsKIGxvY2FsaXplZFN0
cmluZ3NbIlBhaW50cyJdID0gIlBhaW50cyI7CisvKiBBIGNvdW50IG9mIGhvdyBtYW55IHRpbWVz
IGFuIGVsZW1lbnQgd2FzIHBhaW50ZWQgKHJlbmRlcmVkKSAqLworbG9jYWxpemVkU3RyaW5nc1si
UGFpbnRzIEAgQ29sdW1uIHRpdGxlIl0gPSAiUGFpbnRzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlBh
cmVudCJdID0gIlBhcmVudCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQYXJ0aWFsIEdhcmJhZ2UgQ29s
bGVjdGlvbiJdID0gIlBhcnRpYWwgR2FyYmFnZSBDb2xsZWN0aW9uIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlBhc3NpdmUiXSA9ICJQYXNzaXZlIjsKQEAgLTc3NCw2ICs3OTQsNyBAQCBsb2NhbGl6ZWRT
dHJpbmdzWyJQcmVzcyAlcyB0byBzdG9wIGVkaXRpbmciXSA9ICJQcmVzcyAlcyB0byBzdG9wIGVk
aXRpbmciOwogbG9jYWxpemVkU3RyaW5nc1siUHJlc3NlZCJdID0gIlByZXNzZWQiOwogbG9jYWxp
emVkU3RyaW5nc1siUHJldHR5IHByaW50Il0gPSAiUHJldHR5IHByaW50IjsKIGxvY2FsaXplZFN0
cmluZ3NbIlByZXZpZXciXSA9ICJQcmV2aWV3IjsKKy8qIEEgc3VibWVudSBpdGVtIG9mICdBZGQn
IHRvIGFkZCBET00gbm9kZXMgYmVmb3JlIHRoZSBzZWxlY3RlZCBET00gbm9kZSAqLwogbG9jYWxp
emVkU3RyaW5nc1siUHJldmlvdXMgU2libGluZyJdID0gIlByZXZpb3VzIFNpYmxpbmciOwogbG9j
YWxpemVkU3RyaW5nc1siUHJpbWFyeSBLZXkiXSA9ICJQcmltYXJ5IEtleSI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJQcmltYXJ5IEtleSBcdTIwMTQgJXMiXSA9ICJQcmltYXJ5IEtleSBcdTIwMTQgJXMi
OwpAQCAtODYxLDkgKzg4MiwxMSBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJSZXR1cm4gdHlwZSBmb3Ig
YW5vbnltb3VzIGZ1bmN0aW9uIl0gPSAiUmV0dXJuIHR5cGUgZm9yIGFub255bQogbG9jYWxpemVk
U3RyaW5nc1siUmV0dXJuIHR5cGUgZm9yIGZ1bmN0aW9uOiAlcyJdID0gIlJldHVybiB0eXBlIGZv
ciBmdW5jdGlvbjogJXMiOwogbG9jYWxpemVkU3RyaW5nc1siUmV0dXJuIHZhbHVlIGlzIG5vdCBh
biBvYmplY3QsIHN0cmluZywgb3IgYm9vbGVhbiJdID0gIlJldHVybiB2YWx1ZSBpcyBub3QgYW4g
b2JqZWN0LCBzdHJpbmcsIG9yIGJvb2xlYW4iOwogbG9jYWxpemVkU3RyaW5nc1siUmV2ZWFsIEJy
ZWFrcG9pbnQiXSA9ICJSZXZlYWwgQnJlYWtwb2ludCI7CisvKiBPcGVuIEVsZW1lbnRzIHRhYiBh
bmQgc2VsZWN0IHRoaXMgbm9kZSBpbiBET00gdHJlZSAqLwogbG9jYWxpemVkU3RyaW5nc1siUmV2
ZWFsIGluIERPTSBUcmVlIl0gPSAiUmV2ZWFsIGluIERPTSBUcmVlIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlJldmVhbCBpbiBEZWJ1Z2dlciBUYWIiXSA9ICJSZXZlYWwgaW4gRGVidWdnZXIgVGFiIjsK
IGxvY2FsaXplZFN0cmluZ3NbIlJldmVhbCBpbiBFbGVtZW50cyBUYWIiXSA9ICJSZXZlYWwgaW4g
RWxlbWVudHMgVGFiIjsKKy8qIE9wZW4gTGF5ZXJzIHRhYiBhbmQgc2VsZWN0IHRoZSBsYXllciBj
b3JyZXNwb25kaW5nIHRvIHRoaXMgbm9kZSAqLwogbG9jYWxpemVkU3RyaW5nc1siUmV2ZWFsIGlu
IExheWVycyBUYWIiXSA9ICJSZXZlYWwgaW4gTGF5ZXJzIFRhYiI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJSZXZlYWwgaW4gTmV0d29yayBUYWIiXSA9ICJSZXZlYWwgaW4gTmV0d29yayBUYWIiOwogbG9j
YWxpemVkU3RyaW5nc1siUmV2ZWFsIGluIE9yaWdpbmFsIFJlc291cmNlIl0gPSAiUmV2ZWFsIGlu
IE9yaWdpbmFsIFJlc291cmNlIjsKQEAgLTg5Miw3ICs5MTUsOCBAQCBsb2NhbGl6ZWRTdHJpbmdz
WyJTY3JpcHQgRWxlbWVudCAlZCJdID0gIlNjcmlwdCBFbGVtZW50ICVkIjsKIGxvY2FsaXplZFN0
cmluZ3NbIlNjcmlwdCBFbnRyaWVzOiJdID0gIlNjcmlwdCBFbnRyaWVzOiI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJTY3JpcHQgRXZhbHVhdGVkIl0gPSAiU2NyaXB0IEV2YWx1YXRlZCI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJTY3JpcHRzIl0gPSAiU2NyaXB0cyI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJTY3Jv
bGwgSW50byBWaWV3Il0gPSAiU2Nyb2xsIEludG8gVmlldyI7CisvKiBTY3JvbGwgc2VsZWN0ZWQg
RE9NIG5vZGUgaW50byB2aWV3IG9uIHRoZSBpbnNwZWN0ZWQgd2ViIHBhZ2UgKi8KK2xvY2FsaXpl
ZFN0cmluZ3NbIlNjcm9sbCBpbnRvIFZpZXciXSA9ICJTY3JvbGwgaW50byBWaWV3IjsKIGxvY2Fs
aXplZFN0cmluZ3NbIlNlYXJjaCJdID0gIlNlYXJjaCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWFy
Y2ggQWdhaW4iXSA9ICJTZWFyY2ggQWdhaW4iOwogbG9jYWxpemVkU3RyaW5nc1siU2VhcmNoIFJl
c291cmNlIENvbnRlbnQiXSA9ICJTZWFyY2ggUmVzb3VyY2UgQ29udGVudCI7CkBAIC05MDcsMTAg
KzkzMSwxMiBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3QgYmFzZWxpbmUgc25hcHNob3QiXSA9
ICJTZWxlY3QgYmFzZWxpbmUgc25hcHNob3QiOwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0IGNv
bXBhcmlzb24gc25hcHNob3QiXSA9ICJTZWxlY3QgY29tcGFyaXNvbiBzbmFwc2hvdCI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCJdID0gIlNlbGVjdGVkIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IlNlbGVjdGVkIENhbnZhcyBDb250ZXh0Il0gPSAiU2VsZWN0ZWQgQ2FudmFzIENvbnRleHQiOwor
LyogU2VsZWN0ZWQgRE9NIGVsZW1lbnQgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdGVkIEVs
ZW1lbnQiXSA9ICJTZWxlY3RlZCBFbGVtZW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdGVk
IEZyYW1lIl0gPSAiU2VsZWN0ZWQgRnJhbWUiOwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0ZWQg
SXRlbSJdID0gIlNlbGVjdGVkIEl0ZW0iOwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgSXRl
bXMiXSA9ICJTZWxlY3RlZCBJdGVtcyI7CisvKiBTZWxlY3RlZCBET00gbm9kZSAqLwogbG9jYWxp
emVkU3RyaW5nc1siU2VsZWN0ZWQgTm9kZSJdID0gIlNlbGVjdGVkIE5vZGUiOwogbG9jYWxpemVk
U3RyaW5nc1siU2VsZWN0ZWQgU3ltYm9sIl0gPSAiU2VsZWN0ZWQgU3ltYm9sIjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIlNlbGVjdGVkIFZhbHVlIl0gPSAiU2VsZWN0ZWQgVmFsdWUiOwpAQCAtMTAxMSw2
ICsxMDM3LDcgQEAgbG9jYWxpemVkU3RyaW5nc1siU3RvcCByZWNvcmRpbmcgY2FudmFzIGFjdGlv
bnMiXSA9ICJTdG9wIHJlY29yZGluZyBjYW52YXMgYWN0aW8KIGxvY2FsaXplZFN0cmluZ3NbIlN0
b3AgcmVjb3JkaW5nIG9uY2UgcGFnZSBsb2FkcyJdID0gIlN0b3AgcmVjb3JkaW5nIG9uY2UgcGFn
ZSBsb2FkcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdG9wcGluZyB0aGUgXHUyMDFDJXNcdTIwMUQg
YXVkaXQiXSA9ICJTdG9wcGluZyB0aGUgXHUyMDFDJXNcdTIwMUQgYXVkaXQiOwogbG9jYWxpemVk
U3RyaW5nc1siU3RvcmFnZSJdID0gIlN0b3JhZ2UiOworLyogQ1NTIHByb3BlcnRpZXMgZGVmaW5l
ZCB2aWEgSFRNTCBzdHlsZSBhdHRyaWJ1dGUgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlN0eWxlIEF0
dHJpYnV0ZSJdID0gIlN0eWxlIEF0dHJpYnV0ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHlsZSBS
ZXNvbHV0aW9uIl0gPSAiU3R5bGUgUmVzb2x1dGlvbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdHls
ZSBydWxlIl0gPSAiU3R5bGUgcnVsZSI7CkBAIC0xMDIzLDEyICsxMDUwLDE0IEBAIGxvY2FsaXpl
ZFN0cmluZ3NbIlN0eWxlczoiXSA9ICJTdHlsZXM6IjsKIGxvY2FsaXplZFN0cmluZ3NbIlN0eWxl
c2hlZXQiXSA9ICJTdHlsZXNoZWV0IjsKIGxvY2FsaXplZFN0cmluZ3NbIlN0eWxlc2hlZXRzIl0g
PSAiU3R5bGVzaGVldHMiOwogbG9jYWxpemVkU3RyaW5nc1siU3ViamVjdCJdID0gIlN1YmplY3Qi
OworLyogQSBzdWJtZW51IGl0ZW0gb2YgJ0JyZWFrIE9uJyB0aGF0IGJyZWFrcyAocGF1c2VzKSBi
ZWZvcmUgY2hpbGQgRE9NIG5vZGUgaXMgbW9kaWZpZWQgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlN1
YnRyZWUgTW9kaWZpZWQiXSA9ICJTdWJ0cmVlIE1vZGlmaWVkIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IlN1bW1hcnkiXSA9ICJTdW1tYXJ5IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRDUCJdID0gIlRDUCI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJUSUZGIl0gPSAiVElGRiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJU
YWIgd2lkdGg6Il0gPSAiVGFiIHdpZHRoOiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUYWJzIl0gPSAi
VGFicyI7CisvKiBBIHN1Ym1lbnUgaXRlbSBvZiAnRWRpdCcgdG8gY2hhbmdlIERPTSBlbGVtZW50
J3MgdGFnIG5hbWUgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlRhZyJdID0gIlRhZyI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJUYWtlIHNuYXBzaG90Il0gPSAiVGFrZSBzbmFwc2hvdCI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJUYXJnZXQiXSA9ICJUYXJnZXQiOwpAQCAtMTA5MSw2ICsxMTIwLDcgQEAgbG9jYWxp
emVkU3RyaW5nc1siVG90YWw6ICVzIl0gPSAiVG90YWw6ICVzIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IlRvdGFsczoiXSA9ICJUb3RhbHM6IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRyYWNlIl0gPSAiVHJh
Y2UiOwogbG9jYWxpemVkU3RyaW5nc1siVHJhY2U6ICVzIl0gPSAiVHJhY2U6ICVzIjsKKy8qIEFt
b3VudCBvZiBkYXRhIHNlbnQgb3ZlciB0aGUgbmV0d29yayBmb3IgYSBzaW5nbGUgcmVzb3VyY2Ug
Ki8KIGxvY2FsaXplZFN0cmluZ3NbIlRyYW5zZmVyIFNpemUiXSA9ICJUcmFuc2ZlciBTaXplIjsK
IGxvY2FsaXplZFN0cmluZ3NbIlRyYW5zZmVycmVkIl0gPSAiVHJhbnNmZXJyZWQiOwogbG9jYWxp
emVkU3RyaW5nc1siVHJpZ2dlcmVkIEJyZWFrcG9pbnQiXSA9ICJUcmlnZ2VyZWQgQnJlYWtwb2lu
dCI7CkBAIC0xMTA1LDYgKzExMzUsNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJVUkwgQnJlYWtwb2lu
dFx1MjAyNiJdID0gIlVSTCBCcmVha3BvaW50XHUyMDI2IjsKIGxvY2FsaXplZFN0cmluZ3NbIlVu
YWJsZSB0byBkZXRlcm1pbmUgcGF0aCB0byBwcm9wZXJ0eSBmcm9tIHJvb3QiXSA9ICJVbmFibGUg
dG8gZGV0ZXJtaW5lIHBhdGggdG8gcHJvcGVydHkgZnJvbSByb290IjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlVuYWJsZSB0byBwYXJzZSBhcyBKU09OOiAlcyJdID0gIlVuYWJsZSB0byBwYXJzZSBhcyBK
U09OOiAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJVbmFibGUgdG8gc2hvdyBjZXJ0aWZpY2F0ZSBm
b3IgXHUyMDFDJXNcdTIwMUQiXSA9ICJVbmFibGUgdG8gc2hvdyBjZXJ0aWZpY2F0ZSBmb3IgXHUy
MDFDJXNcdTIwMUQiOworLyogQnJlYWsgKHBhdXNlKSBvbiB1bmNhdWdodCAodW5oYW5kbGVkKSBl
eGNlcHRpb25zICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJVbmNhdWdodCBFeGNlcHRpb25zIl0gPSAi
VW5jYXVnaHQgRXhjZXB0aW9ucyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJVbmRlZmluZWQgY3VzdG9t
IGVsZW1lbnQiXSA9ICJVbmRlZmluZWQgY3VzdG9tIGVsZW1lbnQiOwogbG9jYWxpemVkU3RyaW5n
c1siVW5pcXVlIl0gPSAiVW5pcXVlIjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXplZFN0cmluZ3MuanMgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9CYXNlL0xvYWRMb2NhbGl6ZWRTdHJpbmdzLmpzCmlu
ZGV4IGMwZjVhMzc1ZTMzLi5lMjBkNTA2ODMxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvQmFzZS9Mb2FkTG9jYWxpemVkU3RyaW5ncy5qcworKysgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9CYXNlL0xvYWRMb2NhbGl6ZWRTdHJp
bmdzLmpzCkBAIC00Myw5ICs0MywxNyBAQCBXSS51bmxvY2FsaXplZFN0cmluZyA9IGZ1bmN0aW9u
KHN0cmluZykKIAogV0kuVUlTdHJpbmcgPSBmdW5jdGlvbihzdHJpbmcsIGtleSwgY29tbWVudCkK
IHsKKyAgICAidXNlIHN0cmljdCI7CisKICAgICBpZiAoV0kuZG9udExvY2FsaXplVXNlckludGVy
ZmFjZSkKICAgICAgICAgcmV0dXJuIHN0cmluZzsKIAorICAgIC8vIFVJU3RyaW5nKHN0cmluZywg
Y29tbWVudCkKKyAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMikgeworICAgICAgICBjb21t
ZW50ID0ga2V5OworICAgICAgICBrZXkgPSB1bmRlZmluZWQ7CisgICAgfQorCiAgICAga2V5ID0g
a2V5IHx8IHN0cmluZzsKIAogICAgIGlmICh3aW5kb3cubG9jYWxpemVkU3RyaW5ncyAmJiBrZXkg
aW4gd2luZG93LmxvY2FsaXplZFN0cmluZ3MpCkBAIC02NCwzICs3Miw0MSBAQCBXSS5VSVN0cmlu
ZyA9IGZ1bmN0aW9uKHN0cmluZywga2V5LCBjb21tZW50KQogCiAgICAgcmV0dXJuICJMT0NBTEla
RUQgU1RSSU5HIE5PVCBGT1VORCI7CiB9OworCitXSS5yZXBlYXRlZFVJU3RyaW5nID0ge307CisK
K1dJLnJlcGVhdGVkVUlTdHJpbmcudGltZWxpbmVSZWNvcmRMYXlvdXQgPSBmdW5jdGlvbigpIHsK
KyAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkxheW91dCIsICJMYXlvdXQgQCBUaW1lbGluZSByZWNv
cmQiLCAiTGF5b3V0IHBoYXNlIHRpbWVsaW5lIHJlY29yZHMiKTsKK307CisKK1dJLnJlcGVhdGVk
VUlTdHJpbmcudGltZWxpbmVSZWNvcmRQYWludCA9IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiBX
SS5VSVN0cmluZygiUGFpbnQiLCAiUGFpbnQgQCBUaW1lbGluZSByZWNvcmQiLCAiUGFpbnQgKHJl
bmRlcikgcGhhc2UgdGltZWxpbmUgcmVjb3JkcyIpOworfTsKKworV0kucmVwZWF0ZWRVSVN0cmlu
Zy50aW1lbGluZVJlY29yZENvbXBvc2l0ZSA9IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiBXSS5V
SVN0cmluZygiQ29tcG9zaXRlIiwgIkNvbXBvc2l0ZSBAIFRpbWVsaW5lIHJlY29yZCIsICJDb21w
b3NpdGUgcGhhc2UgdGltZWxpbmUgcmVjb3Jkcywgd2hlcmUgZ3JhcGhpYyBsYXllcnMgYXJlIGNv
bWJpbmVkIik7Cit9OworCitXSS5yZXBlYXRlZFVJU3RyaW5nLmFsbEV4Y2VwdGlvbnMgPSBmdW5j
dGlvbigpIHsKKyAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkFsbCBFeGNlcHRpb25zIiwgIkJyZWFr
IChwYXVzZSkgb24gYWxsIGV4Y2VwdGlvbnMiKTsKK307CisKK1dJLnJlcGVhdGVkVUlTdHJpbmcu
dW5jYXVnaHRFeGNlcHRpb25zID0gZnVuY3Rpb24oKSB7CisgICAgcmV0dXJuIFdJLlVJU3RyaW5n
KCJVbmNhdWdodCBFeGNlcHRpb25zIiwgIkJyZWFrIChwYXVzZSkgb24gdW5jYXVnaHQgKHVuaGFu
ZGxlZCkgZXhjZXB0aW9ucyIpOworfTsKKworV0kucmVwZWF0ZWRVSVN0cmluZy5hc3NlcnRpb25G
YWlsdXJlcyA9IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiBXSS5VSVN0cmluZygiQXNzZXJ0aW9u
IEZhaWx1cmVzIiwgIkJyZWFrIChwYXVzZSkgd2hlbiBjb25zb2xlLmFzc2VydCgpIGZhaWxzIik7
Cit9OworCitXSS5yZXBlYXRlZFVJU3RyaW5nLmFsbFJlcXVlc3RzID0gZnVuY3Rpb24oKSB7Cisg
ICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJBbGwgUmVxdWVzdHMiLCAiQSBzdWJtZW51IGl0ZW0gb2Yg
J0JyZWFrIG9uJyB0aGF0IGJyZWFrcyAocGF1c2VzKSBiZWZvcmUgYWxsIG5ldHdvcmsgcmVxdWVz
dHMiKTsKK307CisKK1dJLnJlcGVhdGVkVUlTdHJpbmcuZmV0Y2ggPSBmdW5jdGlvbigpIHsKKyAg
ICByZXR1cm4gV0kuVUlTdHJpbmcoIkZldGNoIiwgIlJlc291cmNlIGxvYWRlZCB2aWEgJ2ZldGNo
JyBtZXRob2QiKTsKK307CisKK1dJLnJlcGVhdGVkVUlTdHJpbmcucmV2ZWFsSW5ET01UcmVlID0g
ZnVuY3Rpb24oKSB7CisgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJSZXZlYWwgaW4gRE9NIFRyZWUi
LCAiT3BlbiBFbGVtZW50cyB0YWIgYW5kIHNlbGVjdCB0aGlzIG5vZGUgaW4gRE9NIHRyZWUiKTsK
K307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2Rl
bHMvTGF5b3V0VGltZWxpbmVSZWNvcmQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9Nb2RlbHMvTGF5b3V0VGltZWxpbmVSZWNvcmQuanMKaW5kZXggZmFhNGI2YzJlNTIu
LjRhODMxZjEyNmIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9Nb2RlbHMvTGF5b3V0VGltZWxpbmVSZWNvcmQuanMKKysrIGIvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL0xheW91dFRpbWVsaW5lUmVjb3JkLmpzCkBAIC01
MSwxMyArNTEsMTMgQEAgV0kuTGF5b3V0VGltZWxpbmVSZWNvcmQgPSBjbGFzcyBMYXlvdXRUaW1l
bGluZVJlY29yZCBleHRlbmRzIFdJLlRpbWVsaW5lUmVjb3JkCiAgICAgICAgIGNhc2UgV0kuTGF5
b3V0VGltZWxpbmVSZWNvcmQuRXZlbnRUeXBlLkludmFsaWRhdGVMYXlvdXQ6CiAgICAgICAgICAg
ICByZXR1cm4gV0kuVUlTdHJpbmcoIkxheW91dCBJbnZhbGlkYXRlZCIpOwogICAgICAgICBjYXNl
IFdJLkxheW91dFRpbWVsaW5lUmVjb3JkLkV2ZW50VHlwZS5Gb3JjZWRMYXlvdXQ6Ci0gICAgICAg
ICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkZvcmNlZCBMYXlvdXQiKTsKKyAgICAgICAgICAgIHJl
dHVybiBXSS5VSVN0cmluZygiRm9yY2VkIExheW91dCIsICJMYXlvdXQgcGhhc2UgcmVjb3JkcyB0
aGF0IHdlcmUgaW1wZXJhdGl2ZSAoZm9yY2VkKSIpOwogICAgICAgICBjYXNlIFdJLkxheW91dFRp
bWVsaW5lUmVjb3JkLkV2ZW50VHlwZS5MYXlvdXQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlT
dHJpbmcoIkxheW91dCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGVkVUlTdHJpbmcu
dGltZWxpbmVSZWNvcmRMYXlvdXQoKTsKICAgICAgICAgY2FzZSBXSS5MYXlvdXRUaW1lbGluZVJl
Y29yZC5FdmVudFR5cGUuUGFpbnQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlBh
aW50Iik7CisgICAgICAgICAgICByZXR1cm4gV0kucmVwZWF0ZWRVSVN0cmluZy50aW1lbGluZVJl
Y29yZFBhaW50KCk7CiAgICAgICAgIGNhc2UgV0kuTGF5b3V0VGltZWxpbmVSZWNvcmQuRXZlbnRU
eXBlLkNvbXBvc2l0ZToKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiQ29tcG9zaXRl
Iik7CisgICAgICAgICAgICByZXR1cm4gV0kucmVwZWF0ZWRVSVN0cmluZy50aW1lbGluZVJlY29y
ZENvbXBvc2l0ZSgpOwogICAgICAgICB9CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJl
Y29yZC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZW5k
ZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLmpzCmluZGV4IDVmZDgxMDgzZjllLi5jYzJlMWIyNDY3
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxz
L1JlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1JlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuanMK
QEAgLTQ2LDkgKzQ2LDkgQEAgV0kuUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZCA9IGNsYXNz
IFJlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQgZXh0ZW5kcyBXSS4KICAgICAgICAgY2FzZSBX
SS5SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLlRhc2tUeXBlLlNjcmlwdDoKICAgICAgICAg
ICAgIHJldHVybiBXSS5VSVN0cmluZygiU2NyaXB0Iik7CiAgICAgICAgIGNhc2UgV0kuUmVuZGVy
aW5nRnJhbWVUaW1lbGluZVJlY29yZC5UYXNrVHlwZS5MYXlvdXQ6Ci0gICAgICAgICAgICByZXR1
cm4gV0kuVUlTdHJpbmcoIkxheW91dCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGVk
VUlTdHJpbmcudGltZWxpbmVSZWNvcmRMYXlvdXQoKTsKICAgICAgICAgY2FzZSBXSS5SZW5kZXJp
bmdGcmFtZVRpbWVsaW5lUmVjb3JkLlRhc2tUeXBlLlBhaW50OgotICAgICAgICAgICAgcmV0dXJu
IFdJLlVJU3RyaW5nKCJQYWludCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGVkVUlT
dHJpbmcudGltZWxpbmVSZWNvcmRQYWludCgpOwogICAgICAgICBjYXNlIFdJLlJlbmRlcmluZ0Zy
YW1lVGltZWxpbmVSZWNvcmQuVGFza1R5cGUuT3RoZXI6CiAgICAgICAgICAgICByZXR1cm4gV0ku
VUlTdHJpbmcoIk90aGVyIik7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZXNvdXJjZS5qcyBiL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZXNvdXJjZS5qcwppbmRleCBkYzc1MjA4NmQ2
MS4uZTkzMWMxMjc0ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL01vZGVscy9SZXNvdXJjZS5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9Nb2RlbHMvUmVzb3VyY2UuanMKQEAgLTE1Niw4ICsxNTYsOCBAQCBXSS5SZXNv
dXJjZSA9IGNsYXNzIFJlc291cmNlIGV4dGVuZHMgV0kuU291cmNlQ29kZQogICAgICAgICAgICAg
cmV0dXJuIFdJLlVJU3RyaW5nKCJYSFIiKTsKICAgICAgICAgY2FzZSBXSS5SZXNvdXJjZS5UeXBl
LkZldGNoOgogICAgICAgICAgICAgaWYgKHBsdXJhbCkKLSAgICAgICAgICAgICAgICByZXR1cm4g
V0kuVUlTdHJpbmcoIkZldGNoZXMiKTsKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygi
RmV0Y2giKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkZldGNoZXMiLCAi
UmVzb3VyY2VzIGxvYWRlZCB2aWEgJ2ZldGNoJyBtZXRob2QiKTsKKyAgICAgICAgICAgIHJldHVy
biBXSS5yZXBlYXRlZFVJU3RyaW5nLmZldGNoKCk7CiAgICAgICAgIGNhc2UgV0kuUmVzb3VyY2Uu
VHlwZS5QaW5nOgogICAgICAgICAgICAgaWYgKHBsdXJhbCkKICAgICAgICAgICAgICAgICByZXR1
cm4gV0kuVUlTdHJpbmcoIlBpbmdzIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9BdWRpdFRlc3RHcm91cENvbnRlbnRWaWV3LmpzIGIvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXRUZXN0R3JvdXBDb250
ZW50Vmlldy5qcwppbmRleCA4ZTQwZGQ2ZDdkNy4uYmUyZWViYTYyY2MgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0F1ZGl0VGVzdEdyb3VwQ29u
dGVudFZpZXcuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvQXVkaXRUZXN0R3JvdXBDb250ZW50Vmlldy5qcwpAQCAtMTI1LDExICsxMjUsMTEgQEAgV0ku
QXVkaXRUZXN0R3JvdXBDb250ZW50VmlldyA9IGNsYXNzIEF1ZGl0VGVzdEdyb3VwQ29udGVudFZp
ZXcgZXh0ZW5kcyBXSS5BdWRpdFQKICAgICAgICAgICAgICAgICBzY29wZUJhckl0ZW1zLnB1c2go
c2NvcGVCYXJJdGVtKTsKICAgICAgICAgICAgIH07CiAKLSAgICAgICAgICAgIGFkZFNjb3BlQmFy
SXRlbShXSS5BdWRpdFRlc3RDYXNlUmVzdWx0LkxldmVsLlBhc3MsIFdJLlVJU3RyaW5nKCIlZCBQ
YXNzZWQiLCAiJWQgUGFzc2VkIChzaW5ndWxhcikiKSwgV0kuVUlTdHJpbmcoIiVkIFBhc3NlZCIs
ICIlZCBQYXNzZWQgKHBsdXJhbCkiKSk7CisgICAgICAgICAgICBhZGRTY29wZUJhckl0ZW0oV0ku
QXVkaXRUZXN0Q2FzZVJlc3VsdC5MZXZlbC5QYXNzLCBXSS5VSVN0cmluZygiJWQgUGFzc2VkIiwg
IiVkIFBhc3NlZCAoc2luZ3VsYXIpIiwgIiIpLCBXSS5VSVN0cmluZygiJWQgUGFzc2VkIiwgIiVk
IFBhc3NlZCAocGx1cmFsKSIsICIiKSk7CiAgICAgICAgICAgICBhZGRTY29wZUJhckl0ZW0oV0ku
QXVkaXRUZXN0Q2FzZVJlc3VsdC5MZXZlbC5XYXJuLCBXSS5VSVN0cmluZygiJWQgV2FybmluZyIp
LCBXSS5VSVN0cmluZygiJWQgV2FybmluZ3MiKSk7Ci0gICAgICAgICAgICBhZGRTY29wZUJhckl0
ZW0oV0kuQXVkaXRUZXN0Q2FzZVJlc3VsdC5MZXZlbC5GYWlsLCBXSS5VSVN0cmluZygiJWQgRmFp
bGVkIiwgIiVkIEZhaWxlZCAoc2luZ3VsYXIpIiksIFdJLlVJU3RyaW5nKCIlZCBGYWlsZWQiLCAi
JWQgRmFpbGVkIChwbHVyYWwpIikpOworICAgICAgICAgICAgYWRkU2NvcGVCYXJJdGVtKFdJLkF1
ZGl0VGVzdENhc2VSZXN1bHQuTGV2ZWwuRmFpbCwgV0kuVUlTdHJpbmcoIiVkIEZhaWxlZCIsICIl
ZCBGYWlsZWQgKHNpbmd1bGFyKSIsICIiKSwgV0kuVUlTdHJpbmcoIiVkIEZhaWxlZCIsICIlZCBG
YWlsZWQgKHBsdXJhbCkiLCAiIikpOwogICAgICAgICAgICAgYWRkU2NvcGVCYXJJdGVtKFdJLkF1
ZGl0VGVzdENhc2VSZXN1bHQuTGV2ZWwuRXJyb3IsIFdJLlVJU3RyaW5nKCIlZCBFcnJvciIpLCBX
SS5VSVN0cmluZygiJWQgRXJyb3JzIikpOwotICAgICAgICAgICAgYWRkU2NvcGVCYXJJdGVtKFdJ
LkF1ZGl0VGVzdENhc2VSZXN1bHQuTGV2ZWwuVW5zdXBwb3J0ZWQsIFdJLlVJU3RyaW5nKCIlZCBV
bnN1cHBvcnRlZCIsICIlZCBVbnN1cHBvcnRlZCAoc2luZ3VsYXIpIiksIFdJLlVJU3RyaW5nKCIl
ZCBVbnN1cHBvcnRlZCIsICIlZCBVbnN1cHBvcnRlZCAocGx1cmFsKSIpKTsKKyAgICAgICAgICAg
IGFkZFNjb3BlQmFySXRlbShXSS5BdWRpdFRlc3RDYXNlUmVzdWx0LkxldmVsLlVuc3VwcG9ydGVk
LCBXSS5VSVN0cmluZygiJWQgVW5zdXBwb3J0ZWQiLCAiJWQgVW5zdXBwb3J0ZWQgKHNpbmd1bGFy
KSIsICIiKSwgV0kuVUlTdHJpbmcoIiVkIFVuc3VwcG9ydGVkIiwgIiVkIFVuc3VwcG9ydGVkIChw
bHVyYWwpIiwgIiIpKTsKIAogICAgICAgICAgICAgdGhpcy5fbGV2ZWxTY29wZUJhciA9IG5ldyBX
SS5TY29wZUJhcihudWxsLCBzY29wZUJhckl0ZW1zKTsKICAgICAgICAgICAgIHRoaXMuX2xldmVs
U2NvcGVCYXIuYWRkRXZlbnRMaXN0ZW5lcihXSS5TY29wZUJhci5FdmVudC5TZWxlY3Rpb25DaGFu
Z2VkLCB0aGlzLl9oYW5kbGVMZXZlbFNjb3BlQmFyU2VsZWN0aW9uQ2hhbmdlZCwgdGhpcyk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9DUFVU
aW1lbGluZVZpZXcuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3
cy9DUFVUaW1lbGluZVZpZXcuanMKaW5kZXggMzY1NDIxZGMxYzcuLjc4NjRiYjQxYjQ0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9DUFVUaW1l
bGluZVZpZXcuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvQ1BVVGltZWxpbmVWaWV3LmpzCkBAIC01Nyw5ICs1Nyw5IEBAIFdJLkNQVVRpbWVsaW5lVmll
dyA9IGNsYXNzIENQVVRpbWVsaW5lVmlldyBleHRlbmRzIFdJLlRpbWVsaW5lVmlldwogICAgICAg
ICBjYXNlIFdJLkNQVVRpbWVsaW5lVmlldy5TYW1wbGVUeXBlLlNjcmlwdDoKICAgICAgICAgICAg
IHJldHVybiBXSS5VSVN0cmluZygiU2NyaXB0Iik7CiAgICAgICAgIGNhc2UgV0kuQ1BVVGltZWxp
bmVWaWV3LlNhbXBsZVR5cGUuTGF5b3V0OgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5n
KCJMYXlvdXQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRlZFVJU3RyaW5nLnRpbWVs
aW5lUmVjb3JkTGF5b3V0KCk7CiAgICAgICAgIGNhc2UgV0kuQ1BVVGltZWxpbmVWaWV3LlNhbXBs
ZVR5cGUuUGFpbnQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlBhaW50Iik7Cisg
ICAgICAgICAgICByZXR1cm4gV0kucmVwZWF0ZWRVSVN0cmluZy50aW1lbGluZVJlY29yZFBhaW50
KCk7CiAgICAgICAgIGNhc2UgV0kuQ1BVVGltZWxpbmVWaWV3LlNhbXBsZVR5cGUuU3R5bGU6CiAg
ICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlN0eWxlIFJlc29sdXRpb24iKTsKICAgICAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvQ29udGV4dE1lbnVVdGlsaXRpZXMuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGllcy5qcwppbmRleCBjNDM1ZjdkNGNhZi4u
ZGEzZGM2MzNjZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL0NvbnRleHRNZW51VXRpbGl0aWVzLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NvbnRleHRNZW51VXRpbGl0aWVzLmpzCkBAIC0yMTAs
NyArMjEwLDcgQEAgV0kuYXBwZW5kQ29udGV4dE1lbnVJdGVtc0ZvckRPTU5vZGUgPSBmdW5jdGlv
bihjb250ZXh0TWVudSwgZG9tTm9kZSwgb3B0aW9ucyA9IHsKICAgICBpZiAoV0kuY3NzTWFuYWdl
ci5jYW5Gb3JjZVBzZXVkb0NsYXNzZXMoKSAmJiBkb21Ob2RlLmF0dGFjaGVkKSB7CiAgICAgICAg
IGNvbnRleHRNZW51LmFwcGVuZFNlcGFyYXRvcigpOwogCi0gICAgICAgIGxldCBwc2V1ZG9TdWJN
ZW51ID0gY29udGV4dE1lbnUuYXBwZW5kU3ViTWVudUl0ZW0oV0kuVUlTdHJpbmcoIkZvcmNlZCBQ
c2V1ZG8tQ2xhc3NlcyIpKTsKKyAgICAgICAgbGV0IHBzZXVkb1N1Yk1lbnUgPSBjb250ZXh0TWVu
dS5hcHBlbmRTdWJNZW51SXRlbShXSS5VSVN0cmluZygiRm9yY2VkIFBzZXVkby1DbGFzc2VzIiwg
IkEgY29udGV4dCBtZW51IGl0ZW0gdG8gZm9yY2UgKG92ZXJyaWRlKSBhIERPTSBub2RlJ3MgcHNl
dWRvLWNsYXNzZXMiKSk7CiAKICAgICAgICAgbGV0IGVuYWJsZWRQc2V1ZG9DbGFzc2VzID0gZG9t
Tm9kZS5lbmFibGVkUHNldWRvQ2xhc3NlczsKICAgICAgICAgV0kuQ1NTTWFuYWdlci5Gb3JjZWFi
bGVQc2V1ZG9DbGFzc2VzLmZvckVhY2goKHBzZXVkb0NsYXNzKSA9PiB7CkBAIC0yMzAsMTAgKzIz
MCwxMCBAQCBXSS5hcHBlbmRDb250ZXh0TWVudUl0ZW1zRm9yRE9NTm9kZSA9IGZ1bmN0aW9uKGNv
bnRleHRNZW51LCBkb21Ob2RlLCBvcHRpb25zID0gewogICAgIGNvbnRleHRNZW51LmFwcGVuZFNl
cGFyYXRvcigpOwogCiAgICAgaWYgKCFvcHRpb25zLmV4Y2x1ZGVMb2dFbGVtZW50ICYmICFkb21O
b2RlLmlzSW5Vc2VyQWdlbnRTaGFkb3dUcmVlKCkgJiYgIWRvbU5vZGUuaXNQc2V1ZG9FbGVtZW50
KCkpIHsKLSAgICAgICAgbGV0IGxhYmVsID0gaXNFbGVtZW50ID8gV0kuVUlTdHJpbmcoIkxvZyBF
bGVtZW50IikgOiBXSS5VSVN0cmluZygiTG9nIE5vZGUiKTsKKyAgICAgICAgbGV0IGxhYmVsID0g
aXNFbGVtZW50ID8gV0kuVUlTdHJpbmcoIkxvZyBFbGVtZW50IiwgIkxvZyAocHJpbnQpIERPTSBl
bGVtZW50IHRvIENvbnNvbGUiKSA6IFdJLlVJU3RyaW5nKCJMb2cgTm9kZSIsICJMb2cgKHByaW50
KSBET00gbm9kZSB0byBDb25zb2xlIik7CiAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0o
bGFiZWwsICgpID0+IHsKICAgICAgICAgICAgIFdJLlJlbW90ZU9iamVjdC5yZXNvbHZlTm9kZShk
b21Ob2RlLCBXSS5SdW50aW1lTWFuYWdlci5Db25zb2xlT2JqZWN0R3JvdXApLnRoZW4oKHJlbW90
ZU9iamVjdCkgPT4gewotICAgICAgICAgICAgICAgIGxldCB0ZXh0ID0gaXNFbGVtZW50ID8gV0ku
VUlTdHJpbmcoIlNlbGVjdGVkIEVsZW1lbnQiKSA6IFdJLlVJU3RyaW5nKCJTZWxlY3RlZCBOb2Rl
Iik7CisgICAgICAgICAgICAgICAgbGV0IHRleHQgPSBpc0VsZW1lbnQgPyBXSS5VSVN0cmluZygi
U2VsZWN0ZWQgRWxlbWVudCIsICJTZWxlY3RlZCBET00gZWxlbWVudCIpIDogV0kuVUlTdHJpbmco
IlNlbGVjdGVkIE5vZGUiLCAiU2VsZWN0ZWQgRE9NIG5vZGUiKTsKICAgICAgICAgICAgICAgICBj
b25zdCBhZGRTcGVjaWFsVXNlckxvZ0NsYXNzID0gdHJ1ZTsKICAgICAgICAgICAgICAgICBXSS5j
b25zb2xlTG9nVmlld0NvbnRyb2xsZXIuYXBwZW5kSW1tZWRpYXRlRXhlY3V0aW9uV2l0aFJlc3Vs
dCh0ZXh0LCByZW1vdGVPYmplY3QsIGFkZFNwZWNpYWxVc2VyTG9nQ2xhc3MpOwogICAgICAgICAg
ICAgfSk7CkBAIC0yNDEsMTkgKzI0MSwxOSBAQCBXSS5hcHBlbmRDb250ZXh0TWVudUl0ZW1zRm9y
RE9NTm9kZSA9IGZ1bmN0aW9uKGNvbnRleHRNZW51LCBkb21Ob2RlLCBvcHRpb25zID0gewogICAg
IH0KIAogICAgIGlmICghb3B0aW9ucy5leGNsdWRlUmV2ZWFsRWxlbWVudCAmJiB3aW5kb3cuRE9N
QWdlbnQgJiYgYXR0YWNoZWQpIHsKLSAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5V
SVN0cmluZygiUmV2ZWFsIGluIERPTSBUcmVlIiksICgpID0+IHsKKyAgICAgICAgY29udGV4dE1l
bnUuYXBwZW5kSXRlbShXSS5yZXBlYXRlZFVJU3RyaW5nLnJldmVhbEluRE9NVHJlZSgpLCAoKSA9
PiB7CiAgICAgICAgICAgICBXSS5kb21NYW5hZ2VyLmluc3BlY3RFbGVtZW50KGRvbU5vZGUuaWQp
OwogICAgICAgICB9KTsKICAgICB9CiAKICAgICBpZiAoV0kuc2V0dGluZ3MuZXhwZXJpbWVudGFs
RW5hYmxlTGF5ZXJzVGFiLnZhbHVlICYmIHdpbmRvdy5MYXllclRyZWVBZ2VudCAmJiBhdHRhY2hl
ZCkgewotICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJSZXZlYWwg
aW4gTGF5ZXJzIFRhYiIpLCAoKSA9PiB7CisgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0o
V0kuVUlTdHJpbmcoIlJldmVhbCBpbiBMYXllcnMgVGFiIiwgIk9wZW4gTGF5ZXJzIHRhYiBhbmQg
c2VsZWN0IHRoZSBsYXllciBjb3JyZXNwb25kaW5nIHRvIHRoaXMgbm9kZSIpLCAoKSA9PiB7CiAg
ICAgICAgICAgICBXSS5zaG93TGF5ZXJzVGFiKHtub2RlVG9TZWxlY3Q6IGRvbU5vZGV9KTsKICAg
ICAgICAgfSk7CiAgICAgfQogCiAgICAgaWYgKHdpbmRvdy5QYWdlQWdlbnQgJiYgYXR0YWNoZWQp
IHsKLSAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiQ2FwdHVyZSBT
Y3JlZW5zaG90IiksICgpID0+IHsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5V
SVN0cmluZygiQ2FwdHVyZSBTY3JlZW5zaG90IiwgIkNhcHR1cmUgc2NyZWVuc2hvdCBvZiB0aGUg
c2VsZWN0ZWQgRE9NIG5vZGUiKSwgKCkgPT4gewogICAgICAgICAgICAgUGFnZUFnZW50LnNuYXBz
aG90Tm9kZShkb21Ob2RlLmlkLCAoZXJyb3IsIGRhdGFVUkwpID0+IHsKICAgICAgICAgICAgICAg
ICBpZiAoZXJyb3IpIHsKICAgICAgICAgICAgICAgICAgICAgY29uc3QgdGFyZ2V0ID0gV0kubWFp
blRhcmdldDsKQEAgLTI3Niw3ICsyNzYsNyBAQCBXSS5hcHBlbmRDb250ZXh0TWVudUl0ZW1zRm9y
RE9NTm9kZSA9IGZ1bmN0aW9uKGNvbnRleHRNZW51LCBkb21Ob2RlLCBvcHRpb25zID0gewogICAg
IH0KIAogICAgIGlmIChpc0VsZW1lbnQgJiYgYXR0YWNoZWQpIHsKLSAgICAgICAgY29udGV4dE1l
bnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiU2Nyb2xsIEludG8gVmlldyIpLCAoKSA9PiB7Cisg
ICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlNjcm9sbCBpbnRvIFZp
ZXciLCAiU2Nyb2xsIHNlbGVjdGVkIERPTSBub2RlIGludG8gdmlldyBvbiB0aGUgaW5zcGVjdGVk
IHdlYiBwYWdlIiksICgpID0+IHsKICAgICAgICAgICAgIGRvbU5vZGUuc2Nyb2xsSW50b1ZpZXco
KTsKICAgICAgICAgfSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50LmpzIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NQnJlYWtwb2ludFRyZWVFbGVt
ZW50LmpzCmluZGV4IDY2N2Q1NTdlZmM2Li45OTFkNzE2ZGI1YSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NQnJlYWtwb2ludFRyZWVFbGVt
ZW50LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RP
TUJyZWFrcG9pbnRUcmVlRWxlbWVudC5qcwpAQCAtNTAsMTEgKzUwLDExIEBAIFdJLkRPTUJyZWFr
cG9pbnRUcmVlRWxlbWVudCA9IGNsYXNzIERPTUJyZWFrcG9pbnRUcmVlRWxlbWVudCBleHRlbmRz
IFdJLkdlbmVyYWxUCiAgICAgewogICAgICAgICBzd2l0Y2ggKHR5cGUpIHsKICAgICAgICAgY2Fz
ZSBXSS5ET01CcmVha3BvaW50LlR5cGUuU3VidHJlZU1vZGlmaWVkOgotICAgICAgICAgICAgcmV0
dXJuIFdJLlVJU3RyaW5nKCJTdWJ0cmVlIE1vZGlmaWVkIik7CisgICAgICAgICAgICByZXR1cm4g
V0kuVUlTdHJpbmcoIlN1YnRyZWUgTW9kaWZpZWQiLCAiQSBzdWJtZW51IGl0ZW0gb2YgJ0JyZWFr
IE9uJyB0aGF0IGJyZWFrcyAocGF1c2VzKSBiZWZvcmUgY2hpbGQgRE9NIG5vZGUgaXMgbW9kaWZp
ZWQiKTsKICAgICAgICAgY2FzZSBXSS5ET01CcmVha3BvaW50LlR5cGUuQXR0cmlidXRlTW9kaWZp
ZWQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkF0dHJpYnV0ZSBNb2RpZmllZCIp
OworICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJBdHRyaWJ1dGUgTW9kaWZpZWQiLCAi
QSBzdWJtZW51IGl0ZW0gb2YgJ0JyZWFrIE9uJyB0aGF0IGJyZWFrcyAocGF1c2VzKSBiZWZvcmUg
RE9NIGF0dHJpYnV0ZSBpcyBtb2RpZmllZCIpOwogICAgICAgICBjYXNlIFdJLkRPTUJyZWFrcG9p
bnQuVHlwZS5Ob2RlUmVtb3ZlZDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTm9k
ZSBSZW1vdmVkIik7CisgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIk5vZGUgUmVtb3Zl
ZCIsICJBIHN1Ym1lbnUgaXRlbSBvZiAnQnJlYWsgT24nIHRoYXQgYnJlYWtzIChwYXVzZXMpIGJl
Zm9yZSBET00gbm9kZSBpcyByZW1vdmVkIik7CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAg
ICBjb25zb2xlLmVycm9yKCJVbmV4cGVjdGVkIERPTSBicmVha3BvaW50IHR5cGU6ICIgKyB0eXBl
KTsKICAgICAgICAgICAgIHJldHVybiBudWxsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NTm9kZVRyZWVFbGVtZW50LmpzIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NTm9kZVRyZWVFbGVtZW50Lmpz
CmluZGV4IDFmNWQxNzE4M2U0Li5hZGFmZjNmYWFlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NTm9kZVRyZWVFbGVtZW50LmpzCisrKyBi
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTU5vZGVUcmVlRWxl
bWVudC5qcwpAQCAtNjEsNyArNjEsNyBAQCBXSS5ET01Ob2RlVHJlZUVsZW1lbnQgPSBjbGFzcyBE
T01Ob2RlVHJlZUVsZW1lbnQgZXh0ZW5kcyBXSS5HZW5lcmFsVHJlZUVsZW1lbnQKIAogICAgICAg
ICBjb250ZXh0TWVudS5hcHBlbmRTZXBhcmF0b3IoKTsKIAotICAgICAgICBjb250ZXh0TWVudS5h
cHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJSZXZlYWwgaW4gRE9NIFRyZWUiKSwgKCkgPT4geworICAg
ICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJLnJlcGVhdGVkVUlTdHJpbmcucmV2ZWFsSW5E
T01UcmVlKCksICgpID0+IHsKICAgICAgICAgICAgIFdJLmRvbU1hbmFnZXIuaW5zcGVjdEVsZW1l
bnQodGhpcy5yZXByZXNlbnRlZE9iamVjdC5pZCk7CiAgICAgICAgIH0pOwogICAgIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVF
bGVtZW50LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9N
VHJlZUVsZW1lbnQuanMKaW5kZXggZTZmMWVlODg3NTYuLmFlYmZmMDNhMWNhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVu
dC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01U
cmVlRWxlbWVudC5qcwpAQCAtNzY0LDE2ICs3NjQsMTYgQEAgV0kuRE9NVHJlZUVsZW1lbnQgPSBj
bGFzcyBET01UcmVlRWxlbWVudCBleHRlbmRzIFdJLlRyZWVFbGVtZW50CiAKICAgICAgICAgaWYg
KGlzRWRpdGFibGVOb2RlKSB7CiAgICAgICAgICAgICBpZiAoIWZvcmJpZGRlbkNsb3NpbmdUYWcp
IHsKLSAgICAgICAgICAgICAgICBzdWJNZW51cy5hZGQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygi
Q2hpbGQiKSwgKCkgPT4geworICAgICAgICAgICAgICAgIHN1Yk1lbnVzLmFkZC5hcHBlbmRJdGVt
KFdJLlVJU3RyaW5nKCJDaGlsZCIsICJBIHN1Ym1lbnUgaXRlbSBvZiAnQWRkJyB0byBhcHBlbmQg
RE9NIG5vZGVzIHRvIHRoZSBzZWxlY3RlZCBET00gbm9kZSIpLCAoKSA9PiB7CiAgICAgICAgICAg
ICAgICAgICAgIHRoaXMuX2FkZEhUTUwoKTsKICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAg
ICAgIH0KIAotICAgICAgICAgICAgc3ViTWVudXMuYWRkLmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmco
IlByZXZpb3VzIFNpYmxpbmciKSwgKCkgPT4geworICAgICAgICAgICAgc3ViTWVudXMuYWRkLmFw
cGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlByZXZpb3VzIFNpYmxpbmciLCAiQSBzdWJtZW51IGl0ZW0g
b2YgJ0FkZCcgdG8gYWRkIERPTSBub2RlcyBiZWZvcmUgdGhlIHNlbGVjdGVkIERPTSBub2RlIiks
ICgpID0+IHsKICAgICAgICAgICAgICAgICB0aGlzLl9hZGRQcmV2aW91c1NpYmxpbmcoKTsKICAg
ICAgICAgICAgIH0pOwogCi0gICAgICAgICAgICBzdWJNZW51cy5hZGQuYXBwZW5kSXRlbShXSS5V
SVN0cmluZygiTmV4dCBTaWJsaW5nIiksICgpID0+IHsKKyAgICAgICAgICAgIHN1Yk1lbnVzLmFk
ZC5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJOZXh0IFNpYmxpbmciLCAiQSBzdWJtZW51IGl0ZW0g
b2YgJ0FkZCcgdG8gYWRkIERPTSBub2RlcyBhZnRlciB0aGUgc2VsZWN0ZWQgRE9NIG5vZGUiKSwg
KCkgPT4gewogICAgICAgICAgICAgICAgIHRoaXMuX2FkZE5leHRTaWJsaW5nKCk7CiAgICAgICAg
ICAgICB9KTsKICAgICAgICAgfQpAQCAtNzk3LDcgKzc5Nyw3IEBAIFdJLkRPTVRyZWVFbGVtZW50
ID0gY2xhc3MgRE9NVHJlZUVsZW1lbnQgZXh0ZW5kcyBXSS5UcmVlRWxlbWVudAogICAgICAgICAg
ICAgICAgIH0pOwogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICBzdWJNZW51cy5lZGl0LmFw
cGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlRhZyIpLCAoKSA9PiB7CisgICAgICAgICAgICBzdWJNZW51
cy5lZGl0LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlRhZyIsICJBIHN1Ym1lbnUgaXRlbSBvZiAn
RWRpdCcgdG8gY2hhbmdlIERPTSBlbGVtZW50J3MgdGFnIG5hbWUiKSwgKCkgPT4gewogICAgICAg
ICAgICAgICAgIHRoaXMuX3N0YXJ0RWRpdGluZ1RhZ05hbWUoKTsKICAgICAgICAgICAgIH0pOwog
ICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9EZWJ1Z2dlclNpZGViYXJQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL0RlYnVnZ2VyU2lkZWJhclBhbmVsLmpzCmluZGV4IDRlN2M0MGEw
MjUwLi42OTZmZmMwOWE3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvVmlld3MvRGVidWdnZXJTaWRlYmFyUGFuZWwuanMKKysrIGIvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGVidWdnZXJTaWRlYmFyUGFuZWwuanMKQEAg
LTQ3NCwxMyArNDc0LDEzIEBAIFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsID0gY2xhc3MgRGVidWdn
ZXJTaWRlYmFyUGFuZWwgZXh0ZW5kcyBXSS5OYXZpZ2F0aW9uU2lkZWJhCiAKICAgICAgICAgaWYg
KGJyZWFrcG9pbnQgPT09IFdJLmRlYnVnZ2VyTWFuYWdlci5hbGxFeGNlcHRpb25zQnJlYWtwb2lu
dCkgewogICAgICAgICAgICAgb3B0aW9ucy5jbGFzc05hbWUgPSBXSS5EZWJ1Z2dlclNpZGViYXJQ
YW5lbC5FeGNlcHRpb25JY29uU3R5bGVDbGFzc05hbWU7Ci0gICAgICAgICAgICBvcHRpb25zLnRp
dGxlID0gV0kuVUlTdHJpbmcoIkFsbCBFeGNlcHRpb25zIik7CisgICAgICAgICAgICBvcHRpb25z
LnRpdGxlID0gV0kucmVwZWF0ZWRVSVN0cmluZy5hbGxFeGNlcHRpb25zKCk7CiAgICAgICAgIH0g
ZWxzZSBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZGVidWdnZXJNYW5hZ2VyLnVuY2F1Z2h0RXhjZXB0
aW9uc0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NOYW1lID0gV0kuRGVi
dWdnZXJTaWRlYmFyUGFuZWwuRXhjZXB0aW9uSWNvblN0eWxlQ2xhc3NOYW1lOwotICAgICAgICAg
ICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5nKCJVbmNhdWdodCBFeGNlcHRpb25zIik7Cisg
ICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kucmVwZWF0ZWRVSVN0cmluZy51bmNhdWdodEV4
Y2VwdGlvbnMoKTsKICAgICAgICAgfSBlbHNlIGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dl
ck1hbmFnZXIuYXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50KSB7CiAgICAgICAgICAgICBvcHRp
b25zLmNsYXNzTmFtZSA9IFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsLkFzc2VydGlvbkljb25TdHls
ZUNsYXNzTmFtZTsKLSAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiQXNz
ZXJ0aW9uIEZhaWx1cmVzIik7CisgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kucmVwZWF0
ZWRVSVN0cmluZy5hc3NlcnRpb25GYWlsdXJlcygpOwogICAgICAgICB9IGVsc2UgaWYgKGJyZWFr
cG9pbnQgaW5zdGFuY2VvZiBXSS5ET01CcmVha3BvaW50KSB7CiAgICAgICAgICAgICBpZiAoIWJy
ZWFrcG9pbnQuZG9tTm9kZUlkZW50aWZpZXIpCiAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7
CkBAIC01MTQsNyArNTE0LDcgQEAgV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwgPSBjbGFzcyBEZWJ1
Z2dlclNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5hdmlnYXRpb25TaWRlYmEKIAogICAgICAgICAg
ICAgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRvbURlYnVnZ2VyTWFuYWdlci5hbGxSZXF1ZXN0c0Jy
ZWFrcG9pbnQpIHsKICAgICAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9IFdJLkRlYnVn
Z2VyU2lkZWJhclBhbmVsLkFzc2VydGlvbkljb25TdHlsZUNsYXNzTmFtZTsKLSAgICAgICAgICAg
ICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIpOworICAgICAg
ICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5yZXBlYXRlZFVJU3RyaW5nLmFsbFJlcXVlc3Rz
KCk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBsZXQgc291
cmNlQ29kZSA9IGJyZWFrcG9pbnQuc291cmNlQ29kZUxvY2F0aW9uICYmIGJyZWFrcG9pbnQuc291
cmNlQ29kZUxvY2F0aW9uLmRpc3BsYXlTb3VyY2VDb2RlOwpAQCAtMTQ1Nyw3ICsxNDU3LDcgQEAg
V0kuRGVidWdnZXJTaWRlYmFyUGFuZWwgPSBjbGFzcyBEZWJ1Z2dlclNpZGViYXJQYW5lbCBleHRl
bmRzIFdJLk5hdmlnYXRpb25TaWRlYmEKICAgICAgICAgaWYgKEluc3BlY3RvckJhY2tlbmQuZG9t
YWlucy5EZWJ1Z2dlci5zZXRQYXVzZU9uQXNzZXJ0aW9ucykgewogICAgICAgICAgICAgbGV0IGFz
c2VydGlvbkZhaWx1cmVzQnJlYWtwb2ludFNob3duID0gV0kuc2V0dGluZ3Muc2hvd0Fzc2VydGlv
bkZhaWx1cmVzQnJlYWtwb2ludC52YWx1ZTsKIAotICAgICAgICAgICAgY29udGV4dE1lbnUuYXBw
ZW5kQ2hlY2tib3hJdGVtKFdJLlVJU3RyaW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiKSwgKCkgPT4g
eworICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2tib3hJdGVtKFdJLnJlcGVhdGVk
VUlTdHJpbmcuYXNzZXJ0aW9uRmFpbHVyZXMoKSwgKCkgPT4gewogICAgICAgICAgICAgICAgIGlm
IChhc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnRTaG93bikKICAgICAgICAgICAgICAgICAgICAg
V0kuZGVidWdnZXJNYW5hZ2VyLnJlbW92ZUJyZWFrcG9pbnQoV0kuZGVidWdnZXJNYW5hZ2VyLmFz
c2VydGlvbkZhaWx1cmVzQnJlYWtwb2ludCk7CiAgICAgICAgICAgICAgICAgZWxzZSB7CkBAIC0x
NDc5LDcgKzE0NzksNyBAQCBXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbCA9IGNsYXNzIERlYnVnZ2Vy
U2lkZWJhclBhbmVsIGV4dGVuZHMgV0kuTmF2aWdhdGlvblNpZGViYQogCiAgICAgICAgICAgICBs
ZXQgYWxsUmVxdWVzdHNCcmVha3BvaW50U2hvd24gPSBXSS5zZXR0aW5ncy5zaG93QWxsUmVxdWVz
dHNCcmVha3BvaW50LnZhbHVlOwogCi0gICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRDaGVj
a2JveEl0ZW0oV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIpLCAoKSA9PiB7CisgICAgICAgICAg
ICBjb250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0ZW0oV0kucmVwZWF0ZWRVSVN0cmluZy5hbGxS
ZXF1ZXN0cygpLCAoKSA9PiB7CiAgICAgICAgICAgICAgICAgaWYgKGFsbFJlcXVlc3RzQnJlYWtw
b2ludFNob3duKQogICAgICAgICAgICAgICAgICAgICBXSS5kb21EZWJ1Z2dlck1hbmFnZXIucmVt
b3ZlVVJMQnJlYWtwb2ludChXSS5kb21EZWJ1Z2dlck1hbmFnZXIuYWxsUmVxdWVzdHNCcmVha3Bv
aW50KTsKICAgICAgICAgICAgICAgICBlbHNlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0xheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwu
anMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9MYXllclRyZWVE
ZXRhaWxzU2lkZWJhclBhbmVsLmpzCmluZGV4IDJiNjUxM2E3ZmQyLi5jMWFkNmZhYTRjZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJU
cmVlRGV0YWlsc1NpZGViYXJQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsLmpzCkBAIC0xMzYs
NyArMTM2LDcgQEAgV0kuTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbCA9IGNsYXNzIExheWVy
VHJlZURldGFpbHNTaWRlYmFyUGFuZWwgZXh0ZW5kcyBXSS4KICAgICAgICAgY29sdW1ucy5uYW1l
LnRpdGxlID0gV0kuVUlTdHJpbmcoIk5vZGUiKTsKICAgICAgICAgY29sdW1ucy5uYW1lLnNvcnRh
YmxlID0gZmFsc2U7CiAKLSAgICAgICAgY29sdW1ucy5wYWludENvdW50LnRpdGxlID0gV0kuVUlT
dHJpbmcoIlBhaW50cyIpOworICAgICAgICBjb2x1bW5zLnBhaW50Q291bnQudGl0bGUgPSBXSS5V
SVN0cmluZygiUGFpbnRzIiwgIlBhaW50cyBAIENvbHVtbiB0aXRsZSIsICJBIGNvdW50IG9mIGhv
dyBtYW55IHRpbWVzIGFuIGVsZW1lbnQgd2FzIHBhaW50ZWQgKHJlbmRlcmVkKSIpOwogICAgICAg
ICBjb2x1bW5zLnBhaW50Q291bnQuc29ydGFibGUgPSB0cnVlOwogICAgICAgICBjb2x1bW5zLnBh
aW50Q291bnQuYWxpZ25lZCA9ICJyaWdodCI7CiAgICAgICAgIGNvbHVtbnMucGFpbnRDb3VudC53
aWR0aCA9ICI3MHB4IjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL05ldHdvcmtUYWJsZUNvbnRlbnRWaWV3LmpzIGIvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTmV0d29ya1RhYmxlQ29udGVudFZpZXcuanMKaW5k
ZXggMzNiOTE2M2M3NjAuLmNmZmQxY2YyODRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9OZXR3b3JrVGFibGVDb250ZW50Vmlldy5qcworKysg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9OZXR3b3JrVGFibGVD
b250ZW50Vmlldy5qcwpAQCAtMjExLDcgKzIxMSw3IEBAIFdJLk5ldHdvcmtUYWJsZUNvbnRlbnRW
aWV3ID0gY2xhc3MgTmV0d29ya1RhYmxlQ29udGVudFZpZXcgZXh0ZW5kcyBXSS5Db250ZW50Vmll
CiAgICAgICAgIGNhc2UgV0kuUmVzb3VyY2UuVHlwZS5YSFI6CiAgICAgICAgICAgICByZXR1cm4g
IlhIUiI7CiAgICAgICAgIGNhc2UgV0kuUmVzb3VyY2UuVHlwZS5GZXRjaDoKLSAgICAgICAgICAg
IHJldHVybiBXSS5VSVN0cmluZygiRmV0Y2giKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBl
YXRlZFVJU3RyaW5nLmZldGNoKCk7CiAgICAgICAgIGNhc2UgV0kuUmVzb3VyY2UuVHlwZS5QaW5n
OgogICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJQaW5nIik7CiAgICAgICAgIGNhc2Ug
V0kuUmVzb3VyY2UuVHlwZS5CZWFjb246CkBAIC0xMTcyLDcgKzExNzIsNyBAQCBXSS5OZXR3b3Jr
VGFibGVDb250ZW50VmlldyA9IGNsYXNzIE5ldHdvcmtUYWJsZUNvbnRlbnRWaWV3IGV4dGVuZHMg
V0kuQ29udGVudFZpZQogICAgICAgICAgICAgYWxpZ246ICJyaWdodCIsCiAgICAgICAgIH0pOwog
Ci0gICAgICAgIHRoaXMuX3RyYW5zZmVyU2l6ZUNvbHVtbiA9IG5ldyBXSS5UYWJsZUNvbHVtbigi
dHJhbnNmZXJTaXplIiwgV0kuVUlTdHJpbmcoIlRyYW5zZmVyIFNpemUiKSwgeworICAgICAgICB0
aGlzLl90cmFuc2ZlclNpemVDb2x1bW4gPSBuZXcgV0kuVGFibGVDb2x1bW4oInRyYW5zZmVyU2l6
ZSIsIFdJLlVJU3RyaW5nKCJUcmFuc2ZlciBTaXplIiwgIkFtb3VudCBvZiBkYXRhIHNlbnQgb3Zl
ciB0aGUgbmV0d29yayBmb3IgYSBzaW5nbGUgcmVzb3VyY2UiKSwgewogICAgICAgICAgICAgbWlu
V2lkdGg6IDEwMCwKICAgICAgICAgICAgIG1heFdpZHRoOiAxNTAsCiAgICAgICAgICAgICBpbml0
aWFsV2lkdGg6IDEwMCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL1NvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmpzIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlc05hdmlnYXRpb25TaWRlYmFy
UGFuZWwuanMKaW5kZXggYTIxYmFlOGQwZDguLmM1YTFiZmUxNGVhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VzTmF2aWdhdGlvblNp
ZGViYXJQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbC5qcwpAQCAtODg5LDEzICs4ODksMTMg
QEAgV0kuU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwgPSBjbGFzcyBTb3VyY2VzTmF2aWdh
dGlvblNpZGViYXJQYW5lbCBleHRlbmRzIFcKIAogICAgICAgICBpZiAoYnJlYWtwb2ludCA9PT0g
V0kuZGVidWdnZXJNYW5hZ2VyLmFsbEV4Y2VwdGlvbnNCcmVha3BvaW50KSB7CiAgICAgICAgICAg
ICBvcHRpb25zLmNsYXNzTmFtZSA9ICJicmVha3BvaW50LWV4Y2VwdGlvbi1pY29uIjsKLSAgICAg
ICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiQWxsIEV4Y2VwdGlvbnMiKTsKKyAg
ICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5yZXBlYXRlZFVJU3RyaW5nLmFsbEV4Y2VwdGlv
bnMoKTsKICAgICAgICAgfSBlbHNlIGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFn
ZXIudW5jYXVnaHRFeGNlcHRpb25zQnJlYWtwb2ludCkgewogICAgICAgICAgICAgb3B0aW9ucy5j
bGFzc05hbWUgPSAiYnJlYWtwb2ludC1leGNlcHRpb24taWNvbiI7Ci0gICAgICAgICAgICBvcHRp
b25zLnRpdGxlID0gV0kuVUlTdHJpbmcoIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiKTsKKyAgICAgICAg
ICAgIG9wdGlvbnMudGl0bGUgPSBXSS5yZXBlYXRlZFVJU3RyaW5nLnVuY2F1Z2h0RXhjZXB0aW9u
cygpOwogICAgICAgICB9IGVsc2UgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRlYnVnZ2VyTWFuYWdl
ci5hc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAgIG9wdGlvbnMuY2xh
c3NOYW1lID0gImJyZWFrcG9pbnQtYXNzZXJ0aW9uLWljb24iOwotICAgICAgICAgICAgb3B0aW9u
cy50aXRsZSA9IFdJLlVJU3RyaW5nKCJBc3NlcnRpb24gRmFpbHVyZXMiKTsKKyAgICAgICAgICAg
IG9wdGlvbnMudGl0bGUgPSBXSS5yZXBlYXRlZFVJU3RyaW5nLmFzc2VydGlvbkZhaWx1cmVzKCk7
CiAgICAgICAgIH0gZWxzZSBpZiAoYnJlYWtwb2ludCBpbnN0YW5jZW9mIFdJLkRPTUJyZWFrcG9p
bnQpIHsKICAgICAgICAgICAgIGlmICghYnJlYWtwb2ludC5kb21Ob2RlSWRlbnRpZmllcikKICAg
ICAgICAgICAgICAgICByZXR1cm4gbnVsbDsKQEAgLTkyOSw3ICs5MjksNyBAQCBXSS5Tb3VyY2Vz
TmF2aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNzIFNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBh
bmVsIGV4dGVuZHMgVwogCiAgICAgICAgICAgICBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZG9tRGVi
dWdnZXJNYW5hZ2VyLmFsbFJlcXVlc3RzQnJlYWtwb2ludCkgewogICAgICAgICAgICAgICAgIG9w
dGlvbnMuY2xhc3NOYW1lID0gImJyZWFrcG9pbnQtYXNzZXJ0aW9uLWljb24iOwotICAgICAgICAg
ICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiQWxsIFJlcXVlc3RzIik7CisgICAg
ICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLnJlcGVhdGVkVUlTdHJpbmcuYWxsUmVxdWVz
dHMoKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIGxldCBz
b3VyY2VDb2RlID0gYnJlYWtwb2ludC5zb3VyY2VDb2RlTG9jYXRpb24gJiYgYnJlYWtwb2ludC5z
b3VyY2VDb2RlTG9jYXRpb24uZGlzcGxheVNvdXJjZUNvZGU7CkBAIC0xNTA4LDcgKzE1MDgsNyBA
QCBXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNzIFNvdXJjZXNOYXZpZ2F0
aW9uU2lkZWJhclBhbmVsIGV4dGVuZHMgVwogICAgICAgICBpZiAoSW5zcGVjdG9yQmFja2VuZC5k
b21haW5zLkRlYnVnZ2VyLnNldFBhdXNlT25Bc3NlcnRpb25zKSB7CiAgICAgICAgICAgICBsZXQg
YXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50U2hvd24gPSBXSS5zZXR0aW5ncy5zaG93QXNzZXJ0
aW9uRmFpbHVyZXNCcmVha3BvaW50LnZhbHVlOwogCi0gICAgICAgICAgICBjb250ZXh0TWVudS5h
cHBlbmRDaGVja2JveEl0ZW0oV0kuVUlTdHJpbmcoIkFzc2VydGlvbiBGYWlsdXJlcyIpLCAoKSA9
PiB7CisgICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0ZW0oV0kucmVwZWF0
ZWRVSVN0cmluZy5hc3NlcnRpb25GYWlsdXJlcygpLCAoKSA9PiB7CiAgICAgICAgICAgICAgICAg
aWYgKGFzc2VydGlvbkZhaWx1cmVzQnJlYWtwb2ludFNob3duKQogICAgICAgICAgICAgICAgICAg
ICBXSS5kZWJ1Z2dlck1hbmFnZXIucmVtb3ZlQnJlYWtwb2ludChXSS5kZWJ1Z2dlck1hbmFnZXIu
YXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50KTsKICAgICAgICAgICAgICAgICBlbHNlIHsKQEAg
LTE1MzAsNyArMTUzMCw3IEBAIFdJLlNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsID0gY2xh
c3MgU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwgZXh0ZW5kcyBXCiAKICAgICAgICAgICAg
IGxldCBhbGxSZXF1ZXN0c0JyZWFrcG9pbnRTaG93biA9IFdJLnNldHRpbmdzLnNob3dBbGxSZXF1
ZXN0c0JyZWFrcG9pbnQudmFsdWU7CiAKLSAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZENo
ZWNrYm94SXRlbShXSS5VSVN0cmluZygiQWxsIFJlcXVlc3RzIiksICgpID0+IHsKKyAgICAgICAg
ICAgIGNvbnRleHRNZW51LmFwcGVuZENoZWNrYm94SXRlbShXSS5yZXBlYXRlZFVJU3RyaW5nLmFs
bFJlcXVlc3RzKCksICgpID0+IHsKICAgICAgICAgICAgICAgICBpZiAoYWxsUmVxdWVzdHNCcmVh
a3BvaW50U2hvd24pCiAgICAgICAgICAgICAgICAgICAgIFdJLmRvbURlYnVnZ2VyTWFuYWdlci5y
ZW1vdmVVUkxCcmVha3BvaW50KFdJLmRvbURlYnVnZ2VyTWFuYWdlci5hbGxSZXF1ZXN0c0JyZWFr
cG9pbnQpOwogICAgICAgICAgICAgICAgIGVsc2UgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0
aW9uU2VjdGlvbi5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdz
L1NwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24uanMKaW5kZXggYmZjZTgyMjgy
ZjAuLmZlY2JlNjBjMjNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9uLmpzCisr
KyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0
Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24uanMKQEAgLTMxNSw3ICszMTUsNyBAQCBXSS5TcHJl
YWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25TZWN0aW9uID0gY2xhc3MgU3ByZWFkc2hlZXRDU1NT
dHlsZURlY2xhcmF0aW9uUwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBXSS5D
U1NTdHlsZURlY2xhcmF0aW9uLlR5cGUuSW5saW5lOgotICAgICAgICAgICAgdGhpcy5fc2VsZWN0
b3JFbGVtZW50LnRleHRDb250ZW50ID0gV0kuVUlTdHJpbmcoIlN0eWxlIEF0dHJpYnV0ZSIpOwor
ICAgICAgICAgICAgdGhpcy5fc2VsZWN0b3JFbGVtZW50LnRleHRDb250ZW50ID0gV0kuVUlTdHJp
bmcoIlN0eWxlIEF0dHJpYnV0ZSIsICJDU1MgcHJvcGVydGllcyBkZWZpbmVkIHZpYSBIVE1MIHN0
eWxlIGF0dHJpYnV0ZSIpOwogICAgICAgICAgICAgdGhpcy5fc2VsZWN0b3JFbGVtZW50LmNsYXNz
TGlzdC5hZGQoInN0eWxlLWF0dHJpYnV0ZSIpOwogICAgICAgICAgICAgYnJlYWs7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNo
ZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbC5qcwppbmRl
eCBlMWQ0ZWJlZDMxMi4uZGM4NGMwNWFlYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5l
bC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJl
YWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwuanMKQEAgLTI1Niw3ICsyNTYsNyBAQCBXSS5T
cHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwgPSBjbGFzcyBTcHJlYWRzaGVldFJ1bGVz
U3R5bGVEZXRhaWxzUGFuZWwgZQogCiAgICAgICAgIGxldCBhZGRTZWN0aW9uID0gKHNlY3Rpb24p
ID0+IHsKICAgICAgICAgICAgIGlmIChzZWN0aW9uLnN0eWxlLmluaGVyaXRlZCAmJiAoIXByZXZp
b3VzU3R5bGUgfHwgcHJldmlvdXNTdHlsZS5ub2RlICE9PSBzZWN0aW9uLnN0eWxlLm5vZGUpKQot
ICAgICAgICAgICAgICAgIGFkZEhlYWRlcihXSS5VSVN0cmluZygiSW5oZXJpdGVkIEZyb20iKSwg
c2VjdGlvbi5zdHlsZS5ub2RlKTsKKyAgICAgICAgICAgICAgICBhZGRIZWFkZXIoV0kuVUlTdHJp
bmcoIkluaGVyaXRlZCBGcm9tIiwgIkEgc2VjdGlvbiBvZiBDU1MgcnVsZXMgbWF0Y2hpbmcgYW4g
YW5jZXN0b3IgRE9NIG5vZGUiKSwgc2VjdGlvbi5zdHlsZS5ub2RlKTsKIAogICAgICAgICAgICAg
aWYgKCFzZWN0aW9uLmlzRGVzY2VuZGFudE9mKHRoaXMpKSB7CiAgICAgICAgICAgICAgICAgbGV0
IHJlZmVyZW5jZVZpZXcgPSB0aGlzLnN1YnZpZXdzW3RoaXMuX3NlY3Rpb25zLmxlbmd0aF07CmRp
ZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZDJiNjJm
YjgxZDguLjk4ODNiYzE3Y2FlIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9v
bHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTktMDUtMjIgIE5pa2l0YSBWYXNpbHll
diAgPG52YXNpbHlldkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUHJvdmlk
ZSBVSVN0cmluZyBkZXNjcmlwdGlvbnMgdG8gaW1wcm92ZSBsb2NhbGl6YXRpb25zCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUxMzIKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzQ4NDU3ODE3PgorCisgICAgICAgIFJldmlld2VkIGJ5IERldmluIFJv
dXNzby4KKworICAgICAgICBBbGxvdyBXSS5VSVN0cmluZyB0byB0YWtlOgorICAgICAgICAtIFdJ
LlVJU3RyaW5nKHN0cmluZywga2V5LCBjb21tZW50KQorICAgICAgICAtIFdJLlVJU3RyaW5nKHN0
cmluZywgY29tbWVudCkKKyAgICAgICAgLSBXSS5VSVN0cmluZyhzdHJpbmcpCisKKyAgICAgICAg
KiBTY3JpcHRzL2V4dHJhY3QtbG9jYWxpemFibGUtanMtc3RyaW5nczoKKwogMjAxOS0wNS0xOCAg
VGFkZXUgWmFnYWxsbyAgPHR6YWdhbGxvQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgZXh0cmEg
aW5mb3JtYXRpb24gdG8gZHVtcEpJVE1lbW9yeQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy9l
eHRyYWN0LWxvY2FsaXphYmxlLWpzLXN0cmluZ3MgYi9Ub29scy9TY3JpcHRzL2V4dHJhY3QtbG9j
YWxpemFibGUtanMtc3RyaW5ncwppbmRleCAzNGI1YWM3NzkzYi4uNjhjNzBiZGVjOTcgMTAwNzU1
Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvZXh0cmFjdC1sb2NhbGl6YWJsZS1qcy1zdHJpbmdzCisrKyBi
L1Rvb2xzL1NjcmlwdHMvZXh0cmFjdC1sb2NhbGl6YWJsZS1qcy1zdHJpbmdzCkBAIC03NCw3ICs3
NCwxNSBAQCBmb3IgbXkgJGZpbGUgKHNvcnQgQGZpbGVzKSB7CiAgICAgICAgIGNob21wOwogCiAg
ICAgICAgICMgSGFuZGxlIFdlYkluc3BlY3RvciBzdHJpbmdzLiBQcmludHMgYSB3YXJuaW5nIGlm
IGEgbm9uLXN0cmluZyBsaXRlcmFsIGlzIHBhc3NlZCB0byBXSS5VSVN0cmluZygpLgotICAgICAg
ICBIYW5kbGVVSVN0cmluZygkMSwgJDIgfHwgJDEsICQzIHx8ICIiLCAkZmlsZSwgJC4pIHdoaWxl
IHMvV0lcLlVJU3RyaW5nXCgiKFteIl0rKSIoPzosXHMqIihbXiJdKykiKD86LFxzKiIoW14iXSsp
Iik/KT9cKS8vOworICAgICAgICAjIEFsbG93OiBXSS5VSVN0cmluZyhzdHJpbmcsIGNvbW1lbnQp
CisgICAgICAgICMgICAgICAgIFdJLlVJU3RyaW5nKHN0cmluZywga2V5LCBjb21tZW50KQorICAg
ICAgICBIYW5kbGVVSVN0cmluZygKKyAgICAgICAgICAgICQxLAorICAgICAgICAgICAgKCQzIHx8
IChkZWZpbmVkICQzIGFuZCBsZW5ndGggJDMgPT0gMCkpID8gJDIgOiAkMSwKKyAgICAgICAgICAg
ICgkMyB8fCAoZGVmaW5lZCAkMyBhbmQgbGVuZ3RoICQzID09IDApKSA/ICQzIDogJDIgfHwgIiIs
CisgICAgICAgICAgICAkZmlsZSwKKyAgICAgICAgICAgICQuCisgICAgICAgICkgd2hpbGUgcy9X
SVwuVUlTdHJpbmdcKCIoW14iXSspIig/OixccyoiKFteIl0qKSIoPzosXHMqIihbXiJdKikiKT8p
P1wpLy87CiAgICAgICAgIHByaW50ICIkZmlsZTokLjpXQVJOSU5HOiAkJlxuIiB3aGlsZSBzL1dJ
XC5VSVN0cmluZ1woLio/XCkvLzsKIAogICAgICAgICAjIEhhbmRsZSBzdHJpbmdzIGZvciBvdGhl
ciBwcm9qZWN0cyB0aGF0IGFsc28gdXNlIHRoaXMgc2NyaXB0Lgo=
</data>
<flag name="review"
          id="386500"
          type_id="1"
          status="-"
          setter="hi"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>370779</attachid>
            <date>2019-05-28 13:26:02 -0700</date>
            <delta_ts>2019-05-28 15:22:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>44408</size>
            <attacher name="Nikita Vasilyev">nvasilyev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDc4OGQzMGEwNzBmLi43NGU4MDU1ODg1YSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTggQEAKKzIwMTktMDUtMjIgIE5pa2l0
YSBWYXNpbHlldiAgPG52YXNpbHlldkBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogUHJvdmlkZSBVSVN0cmluZyBkZXNjcmlwdGlvbnMgdG8gaW1wcm92ZSBsb2NhbGl6YXRpb25z
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUxMzIK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ4NDU3ODE3PgorCisgICAgICAgIFJldmlld2VkIGJ5
IERldmluIFJvdXNzby4KKworICAgICAgICAqIExvY2FsaXphdGlvbnMvZW4ubHByb2ovbG9jYWxp
emVkU3RyaW5ncy5qczoKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXpl
ZFN0cmluZ3MuanM6CisgICAgICAgIChXSS5VSVN0cmluZyk6CisgICAgICAgIChXSS5yZXBlYXRl
ZFVJU3RyaW5nLnRpbWVsaW5lUmVjb3JkTGF5b3V0KToKKyAgICAgICAgKFdJLnJlcGVhdGVkVUlT
dHJpbmcudGltZWxpbmVSZWNvcmRQYWludCk6CisgICAgICAgIChXSS5yZXBlYXRlZFVJU3RyaW5n
LnRpbWVsaW5lUmVjb3JkQ29tcG9zaXRlKToKKyAgICAgICAgKFdJLnJlcGVhdGVkVUlTdHJpbmcu
YWxsRXhjZXB0aW9ucyk6CisgICAgICAgIChXSS5yZXBlYXRlZFVJU3RyaW5nLnVuY2F1Z2h0RXhj
ZXB0aW9ucyk6CisgICAgICAgIChXSS5yZXBlYXRlZFVJU3RyaW5nLmFzc2VydGlvbkZhaWx1cmVz
KToKKyAgICAgICAgKFdJLnJlcGVhdGVkVUlTdHJpbmcuYWxsUmVxdWVzdHMpOgorICAgICAgICAo
V0kucmVwZWF0ZWRVSVN0cmluZy5mZXRjaCk6CisgICAgICAgIChXSS5yZXBlYXRlZFVJU3RyaW5n
LnJldmVhbEluRE9NVHJlZSk6CisgICAgICAgICogVXNlckludGVyZmFjZS9Nb2RlbHMvTGF5b3V0
VGltZWxpbmVSZWNvcmQuanM6CisgICAgICAgIChXSS5MYXlvdXRUaW1lbGluZVJlY29yZC5kaXNw
bGF5TmFtZUZvckV2ZW50VHlwZSk6CisgICAgICAgICogVXNlckludGVyZmFjZS9Nb2RlbHMvUmVu
ZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5qczoKKyAgICAgICAgKFdJLlJlbmRlcmluZ0ZyYW1l
VGltZWxpbmVSZWNvcmQuZGlzcGxheU5hbWVGb3JUYXNrVHlwZSk6CisgICAgICAgICogVXNlcklu
dGVyZmFjZS9Nb2RlbHMvUmVzb3VyY2UuanM6CisgICAgICAgIChXSS5SZXNvdXJjZS5kaXNwbGF5
TmFtZUZvclR5cGUpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXRUZXN0R3Jv
dXBDb250ZW50Vmlldy5qczoKKyAgICAgICAgKFdJLkF1ZGl0VGVzdEdyb3VwQ29udGVudFZpZXcu
cHJvdG90eXBlLmxheW91dCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9DUFVUaW1l
bGluZVZpZXcuanM6CisgICAgICAgIChXSS5DUFVUaW1lbGluZVZpZXcuZGlzcGxheU5hbWVGb3JT
YW1wbGVUeXBlKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0NvbnRleHRNZW51VXRp
bGl0aWVzLmpzOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvRE9NQnJlYWtwb2ludFRy
ZWVFbGVtZW50LmpzOgorICAgICAgICAoV0kuRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50LmRpc3Bs
YXlOYW1lRm9yVHlwZSk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJl
ZUVsZW1lbnQuanM6CisgICAgICAgIChXSS5ET01Ob2RlVHJlZUVsZW1lbnQucHJvdG90eXBlLnBv
cHVsYXRlQ29udGV4dE1lbnUpOgorICAgICAgICAoV0kuRE9NTm9kZVRyZWVFbGVtZW50KToKKyAg
ICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVFbGVtZW50LmpzOgorICAgICAgICAo
V0kuRE9NVHJlZUVsZW1lbnQucHJvdG90eXBlLnBvcHVsYXRlRE9NTm9kZUNvbnRleHRNZW51KToK
KyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0RlYnVnZ2VyU2lkZWJhclBhbmVsLmpzOgor
ICAgICAgICAoV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwucHJvdG90eXBlLl9hZGRCcmVha3BvaW50
KToKKyAgICAgICAgKFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsLnByb3RvdHlwZS5faGFuZGxlQ3Jl
YXRlQnJlYWtwb2ludE1vdXNlRG93bik6CisgICAgICAgIChXSS5EZWJ1Z2dlclNpZGViYXJQYW5l
bCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJh
clBhbmVsLmpzOgorICAgICAgICAoV0kuTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbC5wcm90
b3R5cGUuX2J1aWxkRGF0YUdyaWRTZWN0aW9uKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1Zp
ZXdzL05ldHdvcmtUYWJsZUNvbnRlbnRWaWV3LmpzOgorICAgICAgICAoV0kuTmV0d29ya1RhYmxl
Q29udGVudFZpZXcuc2hvcnREaXNwbGF5TmFtZUZvclJlc291cmNlVHlwZSk6CisgICAgICAgIChX
SS5OZXR3b3JrVGFibGVDb250ZW50Vmlldy5wcm90b3R5cGUuaW5pdGlhbExheW91dCk6CisgICAg
ICAgICogVXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbC5q
czoKKyAgICAgICAgKFdJLlNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsLnByb3RvdHlwZS5f
YWRkQnJlYWtwb2ludCk6CisgICAgICAgIChXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5l
bC5wcm90b3R5cGUuX2hhbmRsZUNyZWF0ZUJyZWFrcG9pbnRNb3VzZURvd24pOgorICAgICAgICAq
IFVzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlv
bi5qczoKKyAgICAgICAgKFdJLlNwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24u
cHJvdG90eXBlLl9yZW5kZXJTZWxlY3Rvcik6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3
cy9TcHJlYWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwuanM6CisgICAgICAgIChXSS5TcHJl
YWRzaGVldFJ1bGVzU3R5bGVEZXRhaWxzUGFuZWwucHJvdG90eXBlLmxheW91dCk6CisKIDIwMTkt
MDUtMjQgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJ
bnNwZWN0b3I6IE92ZXJsYXk6IGRvbid0IHNob3cgc2V0dGluZyBmb3Igc2hvd2luZyBydWxlcnMv
Z3VpZGVzIGR1cmluZyBlbGVtZW50IHNlbGVjdGlvbiBpZiBpdCdzIG5vdCBzdXBwb3J0ZWQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xv
Y2FsaXplZFN0cmluZ3MuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9l
bi5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzCmluZGV4IDkxMGI5MDgzMjljLi5lMDU2ZDE4YzZj
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4ubHBy
b2ovbG9jYWxpemVkU3RyaW5ncy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxp
emF0aW9ucy9lbi5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzCkBAIC05Nyw4ICs5NywxMCBAQCBs
b2NhbGl6ZWRTdHJpbmdzWyJBZGRpdGlvbnMiXSA9ICJBZGRpdGlvbnMiOwogbG9jYWxpemVkU3Ry
aW5nc1siQWRkcmVzcyJdID0gIkFkZHJlc3MiOwogbG9jYWxpemVkU3RyaW5nc1siQWxsIl0gPSAi
QWxsIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFsbCBDaGFuZ2VzIl0gPSAiQWxsIENoYW5nZXMiOwor
LyogQnJlYWsgKHBhdXNlKSBvbiBhbGwgZXhjZXB0aW9ucyAqLwogbG9jYWxpemVkU3RyaW5nc1si
QWxsIEV4Y2VwdGlvbnMiXSA9ICJBbGwgRXhjZXB0aW9ucyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJB
bGwgTGF5ZXJzIl0gPSAiQWxsIExheWVycyI7CisvKiBBIHN1Ym1lbnUgaXRlbSBvZiAnQnJlYWsg
b24nIHRoYXQgYnJlYWtzIChwYXVzZXMpIGJlZm9yZSBhbGwgbmV0d29yayByZXF1ZXN0cyAqLwog
bG9jYWxpemVkU3RyaW5nc1siQWxsIFJlcXVlc3RzIl0gPSAiQWxsIFJlcXVlc3RzIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkFsbCBSZXNvdXJjZXMiXSA9ICJBbGwgUmVzb3VyY2VzIjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIkFsbCBTdG9yYWdlIl0gPSAiQWxsIFN0b3JhZ2UiOwpAQCAtMTI3LDEyICsxMjks
MTQgQEAgbG9jYWxpemVkU3RyaW5nc1siQXJlYSJdID0gIkFyZWEiOwogbG9jYWxpemVkU3RyaW5n
c1siQXNzZXJ0aW9uIl0gPSAiQXNzZXJ0aW9uIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFzc2VydGlv
biBGYWlsZWQiXSA9ICJBc3NlcnRpb24gRmFpbGVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFzc2Vy
dGlvbiBGYWlsZWQ6ICVzIl0gPSAiQXNzZXJ0aW9uIEZhaWxlZDogJXMiOworLyogQnJlYWsgKHBh
dXNlKSB3aGVuIGNvbnNvbGUuYXNzZXJ0KCkgZmFpbHMgKi8KIGxvY2FsaXplZFN0cmluZ3NbIkFz
c2VydGlvbiBGYWlsdXJlcyJdID0gIkFzc2VydGlvbiBGYWlsdXJlcyI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJBc3NlcnRpb24gd2l0aCBtZXNzYWdlOiAlcyJdID0gIkFzc2VydGlvbiB3aXRoIG1lc3Nh
Z2U6ICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkFzc2VydGl2ZSJdID0gIkFzc2VydGl2ZSI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJBc3NvY2lhdGVkIERhdGEiXSA9ICJBc3NvY2lhdGVkIERhdGEiOwog
bG9jYWxpemVkU3RyaW5nc1siQXN5bmMgYXVkaXRzIGFyZSBub3Qgc3VwcG9ydGVkLiJdID0gIkFz
eW5jIGF1ZGl0cyBhcmUgbm90IHN1cHBvcnRlZC4iOwogbG9jYWxpemVkU3RyaW5nc1siQXR0cmli
dXRlIl0gPSAiQXR0cmlidXRlIjsKKy8qIEEgc3VibWVudSBpdGVtIG9mICdCcmVhayBPbicgdGhh
dCBicmVha3MgKHBhdXNlcykgYmVmb3JlIERPTSBhdHRyaWJ1dGUgaXMgbW9kaWZpZWQgKi8KIGxv
Y2FsaXplZFN0cmluZ3NbIkF0dHJpYnV0ZSBNb2RpZmllZCJdID0gIkF0dHJpYnV0ZSBNb2RpZmll
ZCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJBdHRyaWJ1dGVzIl0gPSAiQXR0cmlidXRlcyI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJBdWRpdCJdID0gIkF1ZGl0IjsKQEAgLTE5Niw2ICsyMDAsNyBAQCBsb2Nh
bGl6ZWRTdHJpbmdzWyJDYW52YXMgJWQiXSA9ICJDYW52YXMgJWQiOwogbG9jYWxpemVkU3RyaW5n
c1siQ2FudmFzICVzIl0gPSAiQ2FudmFzICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNhbnZhcyBF
bGVtZW50Il0gPSAiQ2FudmFzIEVsZW1lbnQiOwogbG9jYWxpemVkU3RyaW5nc1siQ2FudmFzZXMi
XSA9ICJDYW52YXNlcyI7CisvKiBDYXB0dXJlIHNjcmVlbnNob3Qgb2YgdGhlIHNlbGVjdGVkIERP
TSBub2RlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJDYXB0dXJlIFNjcmVlbnNob3QiXSA9ICJDYXB0
dXJlIFNjcmVlbnNob3QiOwogbG9jYWxpemVkU3RyaW5nc1siQ2FwdHVyaW5nIl0gPSAiQ2FwdHVy
aW5nIjsKIC8qIENvbnRleHQgbWVudSBsYWJlbCBmb3Igd2hldGhlciBzZWFyY2hlcyBzaG91bGQg
YmUgY2FzZSBzZW5zaXRpdmUuICovCkBAIC0yMDksNiArMjE0LDcgQEAgbG9jYWxpemVkU3RyaW5n
c1siQ2hhbmdlcyJdID0gIkNoYW5nZXMiOwogbG9jYWxpemVkU3RyaW5nc1siQ2hhcmFjdGVyIERh
dGEiXSA9ICJDaGFyYWN0ZXIgRGF0YSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDaGFyZ2UgXHUyMDFD
JXNcdTIwMUQgdG8gQ2FsbGVycyJdID0gIkNoYXJnZSBcdTIwMUMlc1x1MjAxRCB0byBDYWxsZXJz
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkNoZWNrZWQiXSA9ICJDaGVja2VkIjsKKy8qIEEgc3VibWVu
dSBpdGVtIG9mICdBZGQnIHRvIGFwcGVuZCBET00gbm9kZXMgdG8gdGhlIHNlbGVjdGVkIERPTSBu
b2RlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJDaGlsZCJdID0gIkNoaWxkIjsKIGxvY2FsaXplZFN0
cmluZ3NbIkNoaWxkIExheWVycyJdID0gIkNoaWxkIExheWVycyI7CiBsb2NhbGl6ZWRTdHJpbmdz
WyJDaGlsZCBhZGRlZCB0byAiXSA9ICJDaGlsZCBhZGRlZCB0byAiOwpAQCAtMjQzLDcgKzI0OSw4
IEBAIGxvY2FsaXplZFN0cmluZ3NbIkNvbGxlY3QgZ2FyYmFnZSJdID0gIkNvbGxlY3QgZ2FyYmFn
ZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDb21tZW50Il0gPSAiQ29tbWVudCI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJDb21wYXJlIHNuYXBzaG90cyJdID0gIkNvbXBhcmUgc25hcHNob3RzIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkNvbXBhcmlzb24gb2YgdG90YWwgbWVtb3J5IHNpemUgYXQgdGhlIGVuZCBv
ZiB0aGUgc2VsZWN0ZWQgdGltZSByYW5nZSB0byB0aGUgbWF4aW11bSBtZW1vcnkgc2l6ZSBpbiB0
aGlzIHJlY29yZGluZyJdID0gIkNvbXBhcmlzb24gb2YgdG90YWwgbWVtb3J5IHNpemUgYXQgdGhl
IGVuZCBvZiB0aGUgc2VsZWN0ZWQgdGltZSByYW5nZSB0byB0aGUgbWF4aW11bSBtZW1vcnkgc2l6
ZSBpbiB0aGlzIHJlY29yZGluZyI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJDb21wb3NpdGUiXSA9ICJD
b21wb3NpdGUiOworLyogQ29tcG9zaXRlIHBoYXNlIHRpbWVsaW5lIHJlY29yZHMsIHdoZXJlIGdy
YXBoaWMgbGF5ZXJzIGFyZSBjb21iaW5lZCAqLworbG9jYWxpemVkU3RyaW5nc1siQ29tcG9zaXRl
IEAgVGltZWxpbmUgcmVjb3JkIl0gPSAiQ29tcG9zaXRlIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNv
bXBvc2l0ZWQiXSA9ICJDb21wb3NpdGVkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNvbXByZXNzZWQi
XSA9ICJDb21wcmVzc2VkIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNvbXByZXNzaW9uIl0gPSAiQ29t
cHJlc3Npb24iOwpAQCAtNDY0LDcgKzQ3MSw5IEBAIGxvY2FsaXplZFN0cmluZ3NbIkV4dHJhIFNj
cmlwdHMiXSA9ICJFeHRyYSBTY3JpcHRzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkZhZGUgdW5leGVj
dXRlZCBjb2RlIl0gPSAiRmFkZSB1bmV4ZWN1dGVkIGNvZGUiOwogbG9jYWxpemVkU3RyaW5nc1si
RmFpbGVkIHRvIHVwZ3JhZGUiXSA9ICJGYWlsZWQgdG8gdXBncmFkZSI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJGYWlsdXJlIHN0YXR1cyBjb2RlIl0gPSAiRmFpbHVyZSBzdGF0dXMgY29kZSI7CisvKiBS
ZXNvdXJjZSBsb2FkZWQgdmlhICdmZXRjaCcgbWV0aG9kICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJG
ZXRjaCJdID0gIkZldGNoIjsKKy8qIFJlc291cmNlcyBsb2FkZWQgdmlhICdmZXRjaCcgbWV0aG9k
ICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJGZXRjaGVzIl0gPSAiRmV0Y2hlcyI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJGaWxlIG9yIFJlc291cmNlIl0gPSAiRmlsZSBvciBSZXNvdXJjZSI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJGaWxlbmFtZSJdID0gIkZpbGVuYW1lIjsKQEAgLTQ4MSw3ICs0OTAsOSBAQCBs
b2NhbGl6ZWRTdHJpbmdzWyJGb250cyJdID0gIkZvbnRzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkZv
cmNlIERhcmsgQXBwZWFyYW5jZSJdID0gIkZvcmNlIERhcmsgQXBwZWFyYW5jZSI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJGb3JjZSBMaWdodCBBcHBlYXJhbmNlIl0gPSAiRm9yY2UgTGlnaHQgQXBwZWFy
YW5jZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJGb3JjZSBQcmludCBNZWRpYSBTdHlsZXMiXSA9ICJG
b3JjZSBQcmludCBNZWRpYSBTdHlsZXMiOworLyogTGF5b3V0IHBoYXNlIHJlY29yZHMgdGhhdCB3
ZXJlIGltcGVyYXRpdmUgKGZvcmNlZCkgKi8KIGxvY2FsaXplZFN0cmluZ3NbIkZvcmNlZCBMYXlv
dXQiXSA9ICJGb3JjZWQgTGF5b3V0IjsKKy8qIEEgY29udGV4dCBtZW51IGl0ZW0gdG8gZm9yY2Ug
KG92ZXJyaWRlKSBhIERPTSBub2RlJ3MgcHNldWRvLWNsYXNzZXMgKi8KIGxvY2FsaXplZFN0cmlu
Z3NbIkZvcmNlZCBQc2V1ZG8tQ2xhc3NlcyJdID0gIkZvcmNlZCBQc2V1ZG8tQ2xhc3NlcyI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJGb3JtYXQ6IEhTTCJdID0gIkZvcm1hdDogSFNMIjsKIGxvY2FsaXpl
ZFN0cmluZ3NbIkZvcm1hdDogSFNMQSJdID0gIkZvcm1hdDogSFNMQSI7CkBAIC01NzEsNiArNTgy
LDcgQEAgbG9jYWxpemVkU3RyaW5nc1siSW5kZXggS2V5IFx1MjAxNCAlcyJdID0gIkluZGV4IEtl
eSBcdTIwMTQgJXMiOwogbG9jYWxpemVkU3RyaW5nc1siSW5kZXhlZCBEYXRhYmFzZXMiXSA9ICJJ
bmRleGVkIERhdGFiYXNlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJJbmZvOiAiXSA9ICJJbmZvOiAi
OwogbG9jYWxpemVkU3RyaW5nc1siSW5mb3MiXSA9ICJJbmZvcyI7CisvKiBBIHNlY3Rpb24gb2Yg
Q1NTIHJ1bGVzIG1hdGNoaW5nIGFuIGFuY2VzdG9yIERPTSBub2RlICovCiBsb2NhbGl6ZWRTdHJp
bmdzWyJJbmhlcml0ZWQgRnJvbSJdID0gIkluaGVyaXRlZCBGcm9tIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkluaXRpYWwgU3RhdGUiXSA9ICJJbml0aWFsIFN0YXRlIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IkluaXRpYWwgVmVsb2NpdHkiXSA9ICJJbml0aWFsIFZlbG9jaXR5IjsKQEAgLTU5OSw4ICs2MTEs
OSBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJMYXllciBDb3VudDogJWQiXSA9ICJMYXllciBDb3VudDog
JWQiOwogbG9jYWxpemVkU3RyaW5nc1siTGF5ZXIgSW5mbyJdID0gIkxheWVyIEluZm8iOwogbG9j
YWxpemVkU3RyaW5nc1siTGF5ZXJzIl0gPSAiTGF5ZXJzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxh
eWVyczoiXSA9ICJMYXllcnM6IjsKLWxvY2FsaXplZFN0cmluZ3NbIkxheW91dCJdID0gIkxheW91
dCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMYXlvdXQgJiBSZW5kZXJpbmciXSA9ICJMYXlvdXQgJiBS
ZW5kZXJpbmciOworLyogTGF5b3V0IHBoYXNlIHRpbWVsaW5lIHJlY29yZHMgKi8KK2xvY2FsaXpl
ZFN0cmluZ3NbIkxheW91dCBAIFRpbWVsaW5lIHJlY29yZCJdID0gIkxheW91dCI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyJMYXlvdXQgSW52YWxpZGF0ZWQiXSA9ICJMYXlvdXQgSW52YWxpZGF0ZWQiOwog
bG9jYWxpemVkU3RyaW5nc1siTGluZSAlZCJdID0gIkxpbmUgJWQiOwogbG9jYWxpemVkU3RyaW5n
c1siTGluZSAlZDolZCJdID0gIkxpbmUgJWQ6JWQiOwpAQCAtNjE4LDEwICs2MzEsMTIgQEAgbG9j
YWxpemVkU3RyaW5nc1siTG9jYWwgVmFyaWFibGVzIl0gPSAiTG9jYWwgVmFyaWFibGVzIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIkxvY2F0ZWQgYXQgJXMiXSA9ICJMb2NhdGVkIGF0ICVzIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkxvY2F0aW9uIl0gPSAiTG9jYXRpb24iOwogbG9jYWxpemVkU3RyaW5nc1si
TG9nIENhbnZhcyBDb250ZXh0Il0gPSAiTG9nIENhbnZhcyBDb250ZXh0IjsKKy8qIExvZyAocHJp
bnQpIERPTSBlbGVtZW50IHRvIENvbnNvbGUgKi8KIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBFbGVt
ZW50Il0gPSAiTG9nIEVsZW1lbnQiOwogbG9jYWxpemVkU3RyaW5nc1siTG9nIEZyYW1lIFRleHQi
XSA9ICJMb2cgRnJhbWUgVGV4dCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJMb2cgRnJhbWUgVmFsdWUi
XSA9ICJMb2cgRnJhbWUgVmFsdWUiOwogbG9jYWxpemVkU3RyaW5nc1siTG9nIE1lc3NhZ2UiXSA9
ICJMb2cgTWVzc2FnZSI7CisvKiBMb2cgKHByaW50KSBET00gbm9kZSB0byBDb25zb2xlICovCiBs
b2NhbGl6ZWRTdHJpbmdzWyJMb2cgTm9kZSJdID0gIkxvZyBOb2RlIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkxvZyBTeW1ib2wiXSA9ICJMb2cgU3ltYm9sIjsKIGxvY2FsaXplZFN0cmluZ3NbIkxvZyBW
YWx1ZSJdID0gIkxvZyBWYWx1ZSI7CkBAIC02NjUsNiArNjgwLDcgQEAgbG9jYWxpemVkU3RyaW5n
c1siTmV0d29yayBJc3N1ZSJdID0gIk5ldHdvcmsgSXNzdWUiOwogbG9jYWxpemVkU3RyaW5nc1si
TmV0d29yayBSZXF1ZXN0cyJdID0gIk5ldHdvcmsgUmVxdWVzdHMiOwogbG9jYWxpemVkU3RyaW5n
c1siTmV0d29yayBSZXF1ZXN0czoiXSA9ICJOZXR3b3JrIFJlcXVlc3RzOiI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJOZXcgVGFiIl0gPSAiTmV3IFRhYiI7CisvKiBBIHN1Ym1lbnUgaXRlbSBvZiAnQWRk
JyB0byBhZGQgRE9NIG5vZGVzIGFmdGVyIHRoZSBzZWxlY3RlZCBET00gbm9kZSAqLwogbG9jYWxp
emVkU3RyaW5nc1siTmV4dCBTaWJsaW5nIl0gPSAiTmV4dCBTaWJsaW5nIjsKIGxvY2FsaXplZFN0
cmluZ3NbIk5vIl0gPSAiTm8iOwogbG9jYWxpemVkU3RyaW5nc1siTm8gQWNjZXNzaWJpbGl0eSBJ
bmZvcm1hdGlvbiJdID0gIk5vIEFjY2Vzc2liaWxpdHkgSW5mb3JtYXRpb24iOwpAQCAtNzA1LDYg
KzcyMSw3IEBAIGxvY2FsaXplZFN0cmluZ3NbIk5vIHJlcXVlc3QsIHNlcnZlZCBmcm9tIHRoZSBt
ZW1vcnkgY2FjaGUuIl0gPSAiTm8gcmVxdWVzdCwgc2VyCiBsb2NhbGl6ZWRTdHJpbmdzWyJObyBy
ZXNwb25zZSBjb29raWVzLiJdID0gIk5vIHJlc3BvbnNlIGNvb2tpZXMuIjsKIGxvY2FsaXplZFN0
cmluZ3NbIk5vIHJlc3BvbnNlIGhlYWRlcnMiXSA9ICJObyByZXNwb25zZSBoZWFkZXJzIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIk5vZGUiXSA9ICJOb2RlIjsKKy8qIEEgc3VibWVudSBpdGVtIG9mICdC
cmVhayBPbicgdGhhdCBicmVha3MgKHBhdXNlcykgYmVmb3JlIERPTSBub2RlIGlzIHJlbW92ZWQg
Ki8KIGxvY2FsaXplZFN0cmluZ3NbIk5vZGUgUmVtb3ZlZCJdID0gIk5vZGUgUmVtb3ZlZCI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJOb2RlcyJdID0gIk5vZGVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIk5v
bmUiXSA9ICJOb25lIjsKQEAgLTc0NCw4ICs3NjEsMTEgQEAgbG9jYWxpemVkU3RyaW5nc1siUGFn
ZSJdID0gIlBhZ2UiOwogbG9jYWxpemVkU3RyaW5nc1siUGFnZSBJc3N1ZSJdID0gIlBhZ2UgSXNz
dWUiOwogbG9jYWxpemVkU3RyaW5nc1siUGFnZSBuYXZpZ2F0ZWQgYXQgJXMiXSA9ICJQYWdlIG5h
dmlnYXRlZCBhdCAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQYWdlIHJlbG9hZGVkIGF0ICVzIl0g
PSAiUGFnZSByZWxvYWRlZCBhdCAlcyI7Ci1sb2NhbGl6ZWRTdHJpbmdzWyJQYWludCJdID0gIlBh
aW50IjsKKy8qIFBhaW50IChyZW5kZXIpIHBoYXNlIHRpbWVsaW5lIHJlY29yZHMgKi8KK2xvY2Fs
aXplZFN0cmluZ3NbIlBhaW50IEAgVGltZWxpbmUgcmVjb3JkIl0gPSAiUGFpbnQiOwogbG9jYWxp
emVkU3RyaW5nc1siUGFpbnRzIl0gPSAiUGFpbnRzIjsKKy8qIEEgY291bnQgb2YgaG93IG1hbnkg
dGltZXMgYW4gZWxlbWVudCB3YXMgcGFpbnRlZCAocmVuZGVyZWQpICovCitsb2NhbGl6ZWRTdHJp
bmdzWyJQYWludHMgQCBDb2x1bW4gdGl0bGUiXSA9ICJQYWludHMiOwogbG9jYWxpemVkU3RyaW5n
c1siUGFyZW50Il0gPSAiUGFyZW50IjsKIGxvY2FsaXplZFN0cmluZ3NbIlBhcnRpYWwgR2FyYmFn
ZSBDb2xsZWN0aW9uIl0gPSAiUGFydGlhbCBHYXJiYWdlIENvbGxlY3Rpb24iOwogbG9jYWxpemVk
U3RyaW5nc1siUGFzc2l2ZSJdID0gIlBhc3NpdmUiOwpAQCAtNzc1LDYgKzc5NSw3IEBAIGxvY2Fs
aXplZFN0cmluZ3NbIlByZXNzICVzIHRvIHN0b3AgZWRpdGluZyJdID0gIlByZXNzICVzIHRvIHN0
b3AgZWRpdGluZyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJQcmVzc2VkIl0gPSAiUHJlc3NlZCI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJQcmV0dHkgcHJpbnQiXSA9ICJQcmV0dHkgcHJpbnQiOwogbG9jYWxp
emVkU3RyaW5nc1siUHJldmlldyJdID0gIlByZXZpZXciOworLyogQSBzdWJtZW51IGl0ZW0gb2Yg
J0FkZCcgdG8gYWRkIERPTSBub2RlcyBiZWZvcmUgdGhlIHNlbGVjdGVkIERPTSBub2RlICovCiBs
b2NhbGl6ZWRTdHJpbmdzWyJQcmV2aW91cyBTaWJsaW5nIl0gPSAiUHJldmlvdXMgU2libGluZyI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJQcmltYXJ5IEtleSJdID0gIlByaW1hcnkgS2V5IjsKIGxvY2Fs
aXplZFN0cmluZ3NbIlByaW1hcnkgS2V5IFx1MjAxNCAlcyJdID0gIlByaW1hcnkgS2V5IFx1MjAx
NCAlcyI7CkBAIC04NjIsOSArODgzLDExIEBAIGxvY2FsaXplZFN0cmluZ3NbIlJldHVybiB0eXBl
IGZvciBhbm9ueW1vdXMgZnVuY3Rpb24iXSA9ICJSZXR1cm4gdHlwZSBmb3IgYW5vbnltCiBsb2Nh
bGl6ZWRTdHJpbmdzWyJSZXR1cm4gdHlwZSBmb3IgZnVuY3Rpb246ICVzIl0gPSAiUmV0dXJuIHR5
cGUgZm9yIGZ1bmN0aW9uOiAlcyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXR1cm4gdmFsdWUgaXMg
bm90IGFuIG9iamVjdCwgc3RyaW5nLCBvciBib29sZWFuIl0gPSAiUmV0dXJuIHZhbHVlIGlzIG5v
dCBhbiBvYmplY3QsIHN0cmluZywgb3IgYm9vbGVhbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZl
YWwgQnJlYWtwb2ludCJdID0gIlJldmVhbCBCcmVha3BvaW50IjsKKy8qIE9wZW4gRWxlbWVudHMg
dGFiIGFuZCBzZWxlY3QgdGhpcyBub2RlIGluIERPTSB0cmVlICovCiBsb2NhbGl6ZWRTdHJpbmdz
WyJSZXZlYWwgaW4gRE9NIFRyZWUiXSA9ICJSZXZlYWwgaW4gRE9NIFRyZWUiOwogbG9jYWxpemVk
U3RyaW5nc1siUmV2ZWFsIGluIERlYnVnZ2VyIFRhYiJdID0gIlJldmVhbCBpbiBEZWJ1Z2dlciBU
YWIiOwogbG9jYWxpemVkU3RyaW5nc1siUmV2ZWFsIGluIEVsZW1lbnRzIFRhYiJdID0gIlJldmVh
bCBpbiBFbGVtZW50cyBUYWIiOworLyogT3BlbiBMYXllcnMgdGFiIGFuZCBzZWxlY3QgdGhlIGxh
eWVyIGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBub2RlICovCiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZl
YWwgaW4gTGF5ZXJzIFRhYiJdID0gIlJldmVhbCBpbiBMYXllcnMgVGFiIjsKIGxvY2FsaXplZFN0
cmluZ3NbIlJldmVhbCBpbiBOZXR3b3JrIFRhYiJdID0gIlJldmVhbCBpbiBOZXR3b3JrIFRhYiI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJSZXZlYWwgaW4gT3JpZ2luYWwgUmVzb3VyY2UiXSA9ICJSZXZl
YWwgaW4gT3JpZ2luYWwgUmVzb3VyY2UiOwpAQCAtODkzLDcgKzkxNiw4IEBAIGxvY2FsaXplZFN0
cmluZ3NbIlNjcmlwdCBFbGVtZW50ICVkIl0gPSAiU2NyaXB0IEVsZW1lbnQgJWQiOwogbG9jYWxp
emVkU3RyaW5nc1siU2NyaXB0IEVudHJpZXM6Il0gPSAiU2NyaXB0IEVudHJpZXM6IjsKIGxvY2Fs
aXplZFN0cmluZ3NbIlNjcmlwdCBFdmFsdWF0ZWQiXSA9ICJTY3JpcHQgRXZhbHVhdGVkIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIlNjcmlwdHMiXSA9ICJTY3JpcHRzIjsKLWxvY2FsaXplZFN0cmluZ3Nb
IlNjcm9sbCBJbnRvIFZpZXciXSA9ICJTY3JvbGwgSW50byBWaWV3IjsKKy8qIFNjcm9sbCBzZWxl
Y3RlZCBET00gbm9kZSBpbnRvIHZpZXcgb24gdGhlIGluc3BlY3RlZCB3ZWIgcGFnZSAqLworbG9j
YWxpemVkU3RyaW5nc1siU2Nyb2xsIGludG8gVmlldyJdID0gIlNjcm9sbCBpbnRvIFZpZXciOwog
bG9jYWxpemVkU3RyaW5nc1siU2VhcmNoIl0gPSAiU2VhcmNoIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IlNlYXJjaCBBZ2FpbiJdID0gIlNlYXJjaCBBZ2FpbiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWFy
Y2ggUmVzb3VyY2UgQ29udGVudCJdID0gIlNlYXJjaCBSZXNvdXJjZSBDb250ZW50IjsKQEAgLTkw
OCwxMCArOTMyLDEyIEBAIGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdCBiYXNlbGluZSBzbmFwc2hv
dCJdID0gIlNlbGVjdCBiYXNlbGluZSBzbmFwc2hvdCI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxl
Y3QgY29tcGFyaXNvbiBzbmFwc2hvdCJdID0gIlNlbGVjdCBjb21wYXJpc29uIHNuYXBzaG90IjsK
IGxvY2FsaXplZFN0cmluZ3NbIlNlbGVjdGVkIl0gPSAiU2VsZWN0ZWQiOwogbG9jYWxpemVkU3Ry
aW5nc1siU2VsZWN0ZWQgQ2FudmFzIENvbnRleHQiXSA9ICJTZWxlY3RlZCBDYW52YXMgQ29udGV4
dCI7CisvKiBTZWxlY3RlZCBET00gZWxlbWVudCAqLwogbG9jYWxpemVkU3RyaW5nc1siU2VsZWN0
ZWQgRWxlbWVudCJdID0gIlNlbGVjdGVkIEVsZW1lbnQiOwogbG9jYWxpemVkU3RyaW5nc1siU2Vs
ZWN0ZWQgRnJhbWUiXSA9ICJTZWxlY3RlZCBGcmFtZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxl
Y3RlZCBJdGVtIl0gPSAiU2VsZWN0ZWQgSXRlbSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3Rl
ZCBJdGVtcyJdID0gIlNlbGVjdGVkIEl0ZW1zIjsKKy8qIFNlbGVjdGVkIERPTSBub2RlICovCiBs
b2NhbGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBOb2RlIl0gPSAiU2VsZWN0ZWQgTm9kZSI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJTZWxlY3RlZCBTeW1ib2wiXSA9ICJTZWxlY3RlZCBTeW1ib2wiOwogbG9j
YWxpemVkU3RyaW5nc1siU2VsZWN0ZWQgVmFsdWUiXSA9ICJTZWxlY3RlZCBWYWx1ZSI7CkBAIC0x
MDEzLDYgKzEwMzksNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJTdG9wIHJlY29yZGluZyBjYW52YXMg
YWN0aW9ucyJdID0gIlN0b3AgcmVjb3JkaW5nIGNhbnZhcyBhY3RpbwogbG9jYWxpemVkU3RyaW5n
c1siU3RvcCByZWNvcmRpbmcgb25jZSBwYWdlIGxvYWRzIl0gPSAiU3RvcCByZWNvcmRpbmcgb25j
ZSBwYWdlIGxvYWRzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlN0b3BwaW5nIHRoZSBcdTIwMUMlc1x1
MjAxRCBhdWRpdCJdID0gIlN0b3BwaW5nIHRoZSBcdTIwMUMlc1x1MjAxRCBhdWRpdCI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJTdG9yYWdlIl0gPSAiU3RvcmFnZSI7CisvKiBDU1MgcHJvcGVydGllcyBk
ZWZpbmVkIHZpYSBIVE1MIHN0eWxlIGF0dHJpYnV0ZSAqLwogbG9jYWxpemVkU3RyaW5nc1siU3R5
bGUgQXR0cmlidXRlIl0gPSAiU3R5bGUgQXR0cmlidXRlIjsKIGxvY2FsaXplZFN0cmluZ3NbIlN0
eWxlIFJlc29sdXRpb24iXSA9ICJTdHlsZSBSZXNvbHV0aW9uIjsKIGxvY2FsaXplZFN0cmluZ3Nb
IlN0eWxlIHJ1bGUiXSA9ICJTdHlsZSBydWxlIjsKQEAgLTEwMjUsMTIgKzEwNTIsMTQgQEAgbG9j
YWxpemVkU3RyaW5nc1siU3R5bGVzOiJdID0gIlN0eWxlczoiOwogbG9jYWxpemVkU3RyaW5nc1si
U3R5bGVzaGVldCJdID0gIlN0eWxlc2hlZXQiOwogbG9jYWxpemVkU3RyaW5nc1siU3R5bGVzaGVl
dHMiXSA9ICJTdHlsZXNoZWV0cyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJTdWJqZWN0Il0gPSAiU3Vi
amVjdCI7CisvKiBBIHN1Ym1lbnUgaXRlbSBvZiAnQnJlYWsgT24nIHRoYXQgYnJlYWtzIChwYXVz
ZXMpIGJlZm9yZSBjaGlsZCBET00gbm9kZSBpcyBtb2RpZmllZCAqLwogbG9jYWxpemVkU3RyaW5n
c1siU3VidHJlZSBNb2RpZmllZCJdID0gIlN1YnRyZWUgTW9kaWZpZWQiOwogbG9jYWxpemVkU3Ry
aW5nc1siU3VtbWFyeSJdID0gIlN1bW1hcnkiOwogbG9jYWxpemVkU3RyaW5nc1siVENQIl0gPSAi
VENQIjsKIGxvY2FsaXplZFN0cmluZ3NbIlRJRkYiXSA9ICJUSUZGIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIlRhYiB3aWR0aDoiXSA9ICJUYWIgd2lkdGg6IjsKIGxvY2FsaXplZFN0cmluZ3NbIlRhYnMi
XSA9ICJUYWJzIjsKKy8qIEEgc3VibWVudSBpdGVtIG9mICdFZGl0JyB0byBjaGFuZ2UgRE9NIGVs
ZW1lbnQncyB0YWcgbmFtZSAqLwogbG9jYWxpemVkU3RyaW5nc1siVGFnIl0gPSAiVGFnIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIlRha2Ugc25hcHNob3QiXSA9ICJUYWtlIHNuYXBzaG90IjsKIGxvY2Fs
aXplZFN0cmluZ3NbIlRhcmdldCJdID0gIlRhcmdldCI7CkBAIC0xMDkzLDYgKzExMjIsNyBAQCBs
b2NhbGl6ZWRTdHJpbmdzWyJUb3RhbDogJXMiXSA9ICJUb3RhbDogJXMiOwogbG9jYWxpemVkU3Ry
aW5nc1siVG90YWxzOiJdID0gIlRvdGFsczoiOwogbG9jYWxpemVkU3RyaW5nc1siVHJhY2UiXSA9
ICJUcmFjZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJUcmFjZTogJXMiXSA9ICJUcmFjZTogJXMiOwor
LyogQW1vdW50IG9mIGRhdGEgc2VudCBvdmVyIHRoZSBuZXR3b3JrIGZvciBhIHNpbmdsZSByZXNv
dXJjZSAqLwogbG9jYWxpemVkU3RyaW5nc1siVHJhbnNmZXIgU2l6ZSJdID0gIlRyYW5zZmVyIFNp
emUiOwogbG9jYWxpemVkU3RyaW5nc1siVHJhbnNmZXJyZWQiXSA9ICJUcmFuc2ZlcnJlZCI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJUcmlnZ2VyZWQgQnJlYWtwb2ludCJdID0gIlRyaWdnZXJlZCBCcmVh
a3BvaW50IjsKQEAgLTExMDcsNiArMTEzNyw3IEBAIGxvY2FsaXplZFN0cmluZ3NbIlVSTCBCcmVh
a3BvaW50XHUyMDI2Il0gPSAiVVJMIEJyZWFrcG9pbnRcdTIwMjYiOwogbG9jYWxpemVkU3RyaW5n
c1siVW5hYmxlIHRvIGRldGVybWluZSBwYXRoIHRvIHByb3BlcnR5IGZyb20gcm9vdCJdID0gIlVu
YWJsZSB0byBkZXRlcm1pbmUgcGF0aCB0byBwcm9wZXJ0eSBmcm9tIHJvb3QiOwogbG9jYWxpemVk
U3RyaW5nc1siVW5hYmxlIHRvIHBhcnNlIGFzIEpTT046ICVzIl0gPSAiVW5hYmxlIHRvIHBhcnNl
IGFzIEpTT046ICVzIjsKIGxvY2FsaXplZFN0cmluZ3NbIlVuYWJsZSB0byBzaG93IGNlcnRpZmlj
YXRlIGZvciBcdTIwMUMlc1x1MjAxRCJdID0gIlVuYWJsZSB0byBzaG93IGNlcnRpZmljYXRlIGZv
ciBcdTIwMUMlc1x1MjAxRCI7CisvKiBCcmVhayAocGF1c2UpIG9uIHVuY2F1Z2h0ICh1bmhhbmRs
ZWQpIGV4Y2VwdGlvbnMgKi8KIGxvY2FsaXplZFN0cmluZ3NbIlVuY2F1Z2h0IEV4Y2VwdGlvbnMi
XSA9ICJVbmNhdWdodCBFeGNlcHRpb25zIjsKIGxvY2FsaXplZFN0cmluZ3NbIlVuZGVmaW5lZCBj
dXN0b20gZWxlbWVudCJdID0gIlVuZGVmaW5lZCBjdXN0b20gZWxlbWVudCI7CiBsb2NhbGl6ZWRT
dHJpbmdzWyJVbmlxdWUiXSA9ICJVbmlxdWUiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvQmFzZS9Mb2FkTG9jYWxpemVkU3RyaW5ncy5qcyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXplZFN0cmluZ3Mu
anMKaW5kZXggYzBmNWEzNzVlMzMuLmUyMGQ1MDY4MzFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9CYXNlL0xvYWRMb2NhbGl6ZWRTdHJpbmdzLmpzCisr
KyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvTG9hZExvY2FsaXpl
ZFN0cmluZ3MuanMKQEAgLTQzLDkgKzQzLDE3IEBAIFdJLnVubG9jYWxpemVkU3RyaW5nID0gZnVu
Y3Rpb24oc3RyaW5nKQogCiBXSS5VSVN0cmluZyA9IGZ1bmN0aW9uKHN0cmluZywga2V5LCBjb21t
ZW50KQogeworICAgICJ1c2Ugc3RyaWN0IjsKKwogICAgIGlmIChXSS5kb250TG9jYWxpemVVc2Vy
SW50ZXJmYWNlKQogICAgICAgICByZXR1cm4gc3RyaW5nOwogCisgICAgLy8gVUlTdHJpbmcoc3Ry
aW5nLCBjb21tZW50KQorICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAyKSB7CisgICAgICAg
IGNvbW1lbnQgPSBrZXk7CisgICAgICAgIGtleSA9IHVuZGVmaW5lZDsKKyAgICB9CisKICAgICBr
ZXkgPSBrZXkgfHwgc3RyaW5nOwogCiAgICAgaWYgKHdpbmRvdy5sb2NhbGl6ZWRTdHJpbmdzICYm
IGtleSBpbiB3aW5kb3cubG9jYWxpemVkU3RyaW5ncykKQEAgLTY0LDMgKzcyLDQxIEBAIFdJLlVJ
U3RyaW5nID0gZnVuY3Rpb24oc3RyaW5nLCBrZXksIGNvbW1lbnQpCiAKICAgICByZXR1cm4gIkxP
Q0FMSVpFRCBTVFJJTkcgTk9UIEZPVU5EIjsKIH07CisKK1dJLnJlcGVhdGVkVUlTdHJpbmcgPSB7
fTsKKworV0kucmVwZWF0ZWRVSVN0cmluZy50aW1lbGluZVJlY29yZExheW91dCA9IGZ1bmN0aW9u
KCkgeworICAgIHJldHVybiBXSS5VSVN0cmluZygiTGF5b3V0IiwgIkxheW91dCBAIFRpbWVsaW5l
IHJlY29yZCIsICJMYXlvdXQgcGhhc2UgdGltZWxpbmUgcmVjb3JkcyIpOworfTsKKworV0kucmVw
ZWF0ZWRVSVN0cmluZy50aW1lbGluZVJlY29yZFBhaW50ID0gZnVuY3Rpb24oKSB7CisgICAgcmV0
dXJuIFdJLlVJU3RyaW5nKCJQYWludCIsICJQYWludCBAIFRpbWVsaW5lIHJlY29yZCIsICJQYWlu
dCAocmVuZGVyKSBwaGFzZSB0aW1lbGluZSByZWNvcmRzIik7Cit9OworCitXSS5yZXBlYXRlZFVJ
U3RyaW5nLnRpbWVsaW5lUmVjb3JkQ29tcG9zaXRlID0gZnVuY3Rpb24oKSB7CisgICAgcmV0dXJu
IFdJLlVJU3RyaW5nKCJDb21wb3NpdGUiLCAiQ29tcG9zaXRlIEAgVGltZWxpbmUgcmVjb3JkIiwg
IkNvbXBvc2l0ZSBwaGFzZSB0aW1lbGluZSByZWNvcmRzLCB3aGVyZSBncmFwaGljIGxheWVycyBh
cmUgY29tYmluZWQiKTsKK307CisKK1dJLnJlcGVhdGVkVUlTdHJpbmcuYWxsRXhjZXB0aW9ucyA9
IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiBXSS5VSVN0cmluZygiQWxsIEV4Y2VwdGlvbnMiLCAi
QnJlYWsgKHBhdXNlKSBvbiBhbGwgZXhjZXB0aW9ucyIpOworfTsKKworV0kucmVwZWF0ZWRVSVN0
cmluZy51bmNhdWdodEV4Y2VwdGlvbnMgPSBmdW5jdGlvbigpIHsKKyAgICByZXR1cm4gV0kuVUlT
dHJpbmcoIlVuY2F1Z2h0IEV4Y2VwdGlvbnMiLCAiQnJlYWsgKHBhdXNlKSBvbiB1bmNhdWdodCAo
dW5oYW5kbGVkKSBleGNlcHRpb25zIik7Cit9OworCitXSS5yZXBlYXRlZFVJU3RyaW5nLmFzc2Vy
dGlvbkZhaWx1cmVzID0gZnVuY3Rpb24oKSB7CisgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJBc3Nl
cnRpb24gRmFpbHVyZXMiLCAiQnJlYWsgKHBhdXNlKSB3aGVuIGNvbnNvbGUuYXNzZXJ0KCkgZmFp
bHMiKTsKK307CisKK1dJLnJlcGVhdGVkVUlTdHJpbmcuYWxsUmVxdWVzdHMgPSBmdW5jdGlvbigp
IHsKKyAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkFsbCBSZXF1ZXN0cyIsICJBIHN1Ym1lbnUgaXRl
bSBvZiAnQnJlYWsgb24nIHRoYXQgYnJlYWtzIChwYXVzZXMpIGJlZm9yZSBhbGwgbmV0d29yayBy
ZXF1ZXN0cyIpOworfTsKKworV0kucmVwZWF0ZWRVSVN0cmluZy5mZXRjaCA9IGZ1bmN0aW9uKCkg
eworICAgIHJldHVybiBXSS5VSVN0cmluZygiRmV0Y2giLCAiUmVzb3VyY2UgbG9hZGVkIHZpYSAn
ZmV0Y2gnIG1ldGhvZCIpOworfTsKKworV0kucmVwZWF0ZWRVSVN0cmluZy5yZXZlYWxJbkRPTVRy
ZWUgPSBmdW5jdGlvbigpIHsKKyAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlJldmVhbCBpbiBET00g
VHJlZSIsICJPcGVuIEVsZW1lbnRzIHRhYiBhbmQgc2VsZWN0IHRoaXMgbm9kZSBpbiBET00gdHJl
ZSIpOworfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNl
L01vZGVscy9MYXlvdXRUaW1lbGluZVJlY29yZC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL01vZGVscy9MYXlvdXRUaW1lbGluZVJlY29yZC5qcwppbmRleCBmYWE0YjZj
MmU1Mi4uNGE4MzFmMTI2YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL01vZGVscy9MYXlvdXRUaW1lbGluZVJlY29yZC5qcworKysgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvTGF5b3V0VGltZWxpbmVSZWNvcmQuanMK
QEAgLTUxLDEzICs1MSwxMyBAQCBXSS5MYXlvdXRUaW1lbGluZVJlY29yZCA9IGNsYXNzIExheW91
dFRpbWVsaW5lUmVjb3JkIGV4dGVuZHMgV0kuVGltZWxpbmVSZWNvcmQKICAgICAgICAgY2FzZSBX
SS5MYXlvdXRUaW1lbGluZVJlY29yZC5FdmVudFR5cGUuSW52YWxpZGF0ZUxheW91dDoKICAgICAg
ICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTGF5b3V0IEludmFsaWRhdGVkIik7CiAgICAgICAg
IGNhc2UgV0kuTGF5b3V0VGltZWxpbmVSZWNvcmQuRXZlbnRUeXBlLkZvcmNlZExheW91dDoKLSAg
ICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiRm9yY2VkIExheW91dCIpOworICAgICAgICAg
ICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJGb3JjZWQgTGF5b3V0IiwgIkxheW91dCBwaGFzZSByZWNv
cmRzIHRoYXQgd2VyZSBpbXBlcmF0aXZlIChmb3JjZWQpIik7CiAgICAgICAgIGNhc2UgV0kuTGF5
b3V0VGltZWxpbmVSZWNvcmQuRXZlbnRUeXBlLkxheW91dDoKLSAgICAgICAgICAgIHJldHVybiBX
SS5VSVN0cmluZygiTGF5b3V0Iik7CisgICAgICAgICAgICByZXR1cm4gV0kucmVwZWF0ZWRVSVN0
cmluZy50aW1lbGluZVJlY29yZExheW91dCgpOwogICAgICAgICBjYXNlIFdJLkxheW91dFRpbWVs
aW5lUmVjb3JkLkV2ZW50VHlwZS5QYWludDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmlu
ZygiUGFpbnQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRlZFVJU3RyaW5nLnRpbWVs
aW5lUmVjb3JkUGFpbnQoKTsKICAgICAgICAgY2FzZSBXSS5MYXlvdXRUaW1lbGluZVJlY29yZC5F
dmVudFR5cGUuQ29tcG9zaXRlOgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJDb21w
b3NpdGUiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRlZFVJU3RyaW5nLnRpbWVsaW5l
UmVjb3JkQ29tcG9zaXRlKCk7CiAgICAgICAgIH0KICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZW5kZXJpbmdGcmFtZVRpbWVs
aW5lUmVjb3JkLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxz
L1JlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuanMKaW5kZXggNWZkODEwODNmOWUuLmNjMmUx
YjI0NjdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9N
b2RlbHMvUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZC5qcworKysgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29y
ZC5qcwpAQCAtNDYsOSArNDYsOSBAQCBXSS5SZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkID0g
Y2xhc3MgUmVuZGVyaW5nRnJhbWVUaW1lbGluZVJlY29yZCBleHRlbmRzIFdJLgogICAgICAgICBj
YXNlIFdJLlJlbmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuVGFza1R5cGUuU2NyaXB0OgogICAg
ICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJTY3JpcHQiKTsKICAgICAgICAgY2FzZSBXSS5S
ZW5kZXJpbmdGcmFtZVRpbWVsaW5lUmVjb3JkLlRhc2tUeXBlLkxheW91dDoKLSAgICAgICAgICAg
IHJldHVybiBXSS5VSVN0cmluZygiTGF5b3V0Iik7CisgICAgICAgICAgICByZXR1cm4gV0kucmVw
ZWF0ZWRVSVN0cmluZy50aW1lbGluZVJlY29yZExheW91dCgpOwogICAgICAgICBjYXNlIFdJLlJl
bmRlcmluZ0ZyYW1lVGltZWxpbmVSZWNvcmQuVGFza1R5cGUuUGFpbnQ6Ci0gICAgICAgICAgICBy
ZXR1cm4gV0kuVUlTdHJpbmcoIlBhaW50Iik7CisgICAgICAgICAgICByZXR1cm4gV0kucmVwZWF0
ZWRVSVN0cmluZy50aW1lbGluZVJlY29yZFBhaW50KCk7CiAgICAgICAgIGNhc2UgV0kuUmVuZGVy
aW5nRnJhbWVUaW1lbGluZVJlY29yZC5UYXNrVHlwZS5PdGhlcjoKICAgICAgICAgICAgIHJldHVy
biBXSS5VSVN0cmluZygiT3RoZXIiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291cmNlLmpzIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291cmNlLmpzCmluZGV4IGRjNzUy
MDg2ZDYxLi5lOTMxYzEyNzQ4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvTW9kZWxzL1Jlc291cmNlLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL01vZGVscy9SZXNvdXJjZS5qcwpAQCAtMTU2LDggKzE1Niw4IEBAIFdJ
LlJlc291cmNlID0gY2xhc3MgUmVzb3VyY2UgZXh0ZW5kcyBXSS5Tb3VyY2VDb2RlCiAgICAgICAg
ICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlhIUiIpOwogICAgICAgICBjYXNlIFdJLlJlc291cmNl
LlR5cGUuRmV0Y2g6CiAgICAgICAgICAgICBpZiAocGx1cmFsKQotICAgICAgICAgICAgICAgIHJl
dHVybiBXSS5VSVN0cmluZygiRmV0Y2hlcyIpOwotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3Ry
aW5nKCJGZXRjaCIpOworICAgICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiRmV0Y2hl
cyIsICJSZXNvdXJjZXMgbG9hZGVkIHZpYSAnZmV0Y2gnIG1ldGhvZCIpOworICAgICAgICAgICAg
cmV0dXJuIFdJLnJlcGVhdGVkVUlTdHJpbmcuZmV0Y2goKTsKICAgICAgICAgY2FzZSBXSS5SZXNv
dXJjZS5UeXBlLlBpbmc6CiAgICAgICAgICAgICBpZiAocGx1cmFsKQogICAgICAgICAgICAgICAg
IHJldHVybiBXSS5VSVN0cmluZygiUGluZ3MiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0F1ZGl0VGVzdEdyb3VwQ29udGVudFZpZXcuanMg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9BdWRpdFRlc3RHcm91
cENvbnRlbnRWaWV3LmpzCmluZGV4IDhlNDBkZDZkN2Q3Li5iZTJlZWJhNjJjYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQXVkaXRUZXN0R3Jv
dXBDb250ZW50Vmlldy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9BdWRpdFRlc3RHcm91cENvbnRlbnRWaWV3LmpzCkBAIC0xMjUsMTEgKzEyNSwxMSBA
QCBXSS5BdWRpdFRlc3RHcm91cENvbnRlbnRWaWV3ID0gY2xhc3MgQXVkaXRUZXN0R3JvdXBDb250
ZW50VmlldyBleHRlbmRzIFdJLkF1ZGl0VAogICAgICAgICAgICAgICAgIHNjb3BlQmFySXRlbXMu
cHVzaChzY29wZUJhckl0ZW0pOwogICAgICAgICAgICAgfTsKIAotICAgICAgICAgICAgYWRkU2Nv
cGVCYXJJdGVtKFdJLkF1ZGl0VGVzdENhc2VSZXN1bHQuTGV2ZWwuUGFzcywgV0kuVUlTdHJpbmco
IiVkIFBhc3NlZCIsICIlZCBQYXNzZWQgKHNpbmd1bGFyKSIpLCBXSS5VSVN0cmluZygiJWQgUGFz
c2VkIiwgIiVkIFBhc3NlZCAocGx1cmFsKSIpKTsKKyAgICAgICAgICAgIGFkZFNjb3BlQmFySXRl
bShXSS5BdWRpdFRlc3RDYXNlUmVzdWx0LkxldmVsLlBhc3MsIFdJLlVJU3RyaW5nKCIlZCBQYXNz
ZWQiLCAiJWQgUGFzc2VkIChzaW5ndWxhcikiLCAiIiksIFdJLlVJU3RyaW5nKCIlZCBQYXNzZWQi
LCAiJWQgUGFzc2VkIChwbHVyYWwpIiwgIiIpKTsKICAgICAgICAgICAgIGFkZFNjb3BlQmFySXRl
bShXSS5BdWRpdFRlc3RDYXNlUmVzdWx0LkxldmVsLldhcm4sIFdJLlVJU3RyaW5nKCIlZCBXYXJu
aW5nIiksIFdJLlVJU3RyaW5nKCIlZCBXYXJuaW5ncyIpKTsKLSAgICAgICAgICAgIGFkZFNjb3Bl
QmFySXRlbShXSS5BdWRpdFRlc3RDYXNlUmVzdWx0LkxldmVsLkZhaWwsIFdJLlVJU3RyaW5nKCIl
ZCBGYWlsZWQiLCAiJWQgRmFpbGVkIChzaW5ndWxhcikiKSwgV0kuVUlTdHJpbmcoIiVkIEZhaWxl
ZCIsICIlZCBGYWlsZWQgKHBsdXJhbCkiKSk7CisgICAgICAgICAgICBhZGRTY29wZUJhckl0ZW0o
V0kuQXVkaXRUZXN0Q2FzZVJlc3VsdC5MZXZlbC5GYWlsLCBXSS5VSVN0cmluZygiJWQgRmFpbGVk
IiwgIiVkIEZhaWxlZCAoc2luZ3VsYXIpIiwgIiIpLCBXSS5VSVN0cmluZygiJWQgRmFpbGVkIiwg
IiVkIEZhaWxlZCAocGx1cmFsKSIsICIiKSk7CiAgICAgICAgICAgICBhZGRTY29wZUJhckl0ZW0o
V0kuQXVkaXRUZXN0Q2FzZVJlc3VsdC5MZXZlbC5FcnJvciwgV0kuVUlTdHJpbmcoIiVkIEVycm9y
IiksIFdJLlVJU3RyaW5nKCIlZCBFcnJvcnMiKSk7Ci0gICAgICAgICAgICBhZGRTY29wZUJhckl0
ZW0oV0kuQXVkaXRUZXN0Q2FzZVJlc3VsdC5MZXZlbC5VbnN1cHBvcnRlZCwgV0kuVUlTdHJpbmco
IiVkIFVuc3VwcG9ydGVkIiwgIiVkIFVuc3VwcG9ydGVkIChzaW5ndWxhcikiKSwgV0kuVUlTdHJp
bmcoIiVkIFVuc3VwcG9ydGVkIiwgIiVkIFVuc3VwcG9ydGVkIChwbHVyYWwpIikpOworICAgICAg
ICAgICAgYWRkU2NvcGVCYXJJdGVtKFdJLkF1ZGl0VGVzdENhc2VSZXN1bHQuTGV2ZWwuVW5zdXBw
b3J0ZWQsIFdJLlVJU3RyaW5nKCIlZCBVbnN1cHBvcnRlZCIsICIlZCBVbnN1cHBvcnRlZCAoc2lu
Z3VsYXIpIiwgIiIpLCBXSS5VSVN0cmluZygiJWQgVW5zdXBwb3J0ZWQiLCAiJWQgVW5zdXBwb3J0
ZWQgKHBsdXJhbCkiLCAiIikpOwogCiAgICAgICAgICAgICB0aGlzLl9sZXZlbFNjb3BlQmFyID0g
bmV3IFdJLlNjb3BlQmFyKG51bGwsIHNjb3BlQmFySXRlbXMpOwogICAgICAgICAgICAgdGhpcy5f
bGV2ZWxTY29wZUJhci5hZGRFdmVudExpc3RlbmVyKFdJLlNjb3BlQmFyLkV2ZW50LlNlbGVjdGlv
bkNoYW5nZWQsIHRoaXMuX2hhbmRsZUxldmVsU2NvcGVCYXJTZWxlY3Rpb25DaGFuZ2VkLCB0aGlz
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdz
L0NQVVRpbWVsaW5lVmlldy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNl
L1ZpZXdzL0NQVVRpbWVsaW5lVmlldy5qcwppbmRleCAzNjU0MjFkYzFjNy4uNzg2NGJiNDFiNDQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NQ
VVRpbWVsaW5lVmlldy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9DUFVUaW1lbGluZVZpZXcuanMKQEAgLTU3LDkgKzU3LDkgQEAgV0kuQ1BVVGltZWxp
bmVWaWV3ID0gY2xhc3MgQ1BVVGltZWxpbmVWaWV3IGV4dGVuZHMgV0kuVGltZWxpbmVWaWV3CiAg
ICAgICAgIGNhc2UgV0kuQ1BVVGltZWxpbmVWaWV3LlNhbXBsZVR5cGUuU2NyaXB0OgogICAgICAg
ICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJTY3JpcHQiKTsKICAgICAgICAgY2FzZSBXSS5DUFVU
aW1lbGluZVZpZXcuU2FtcGxlVHlwZS5MYXlvdXQ6Ci0gICAgICAgICAgICByZXR1cm4gV0kuVUlT
dHJpbmcoIkxheW91dCIpOworICAgICAgICAgICAgcmV0dXJuIFdJLnJlcGVhdGVkVUlTdHJpbmcu
dGltZWxpbmVSZWNvcmRMYXlvdXQoKTsKICAgICAgICAgY2FzZSBXSS5DUFVUaW1lbGluZVZpZXcu
U2FtcGxlVHlwZS5QYWludDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiUGFpbnQi
KTsKKyAgICAgICAgICAgIHJldHVybiBXSS5yZXBlYXRlZFVJU3RyaW5nLnRpbWVsaW5lUmVjb3Jk
UGFpbnQoKTsKICAgICAgICAgY2FzZSBXSS5DUFVUaW1lbGluZVZpZXcuU2FtcGxlVHlwZS5TdHls
ZToKICAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiU3R5bGUgUmVzb2x1dGlvbiIpOwog
ICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGllcy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL0NvbnRleHRNZW51VXRpbGl0aWVzLmpzCmluZGV4IGM0MzVmN2Q0
Y2FmLi5kYTNkYzYzM2NkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvVmlld3MvQ29udGV4dE1lbnVVdGlsaXRpZXMuanMKKysrIGIvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ29udGV4dE1lbnVVdGlsaXRpZXMuanMKQEAg
LTIxMCw3ICsyMTAsNyBAQCBXSS5hcHBlbmRDb250ZXh0TWVudUl0ZW1zRm9yRE9NTm9kZSA9IGZ1
bmN0aW9uKGNvbnRleHRNZW51LCBkb21Ob2RlLCBvcHRpb25zID0gewogICAgIGlmIChXSS5jc3NN
YW5hZ2VyLmNhbkZvcmNlUHNldWRvQ2xhc3NlcygpICYmIGRvbU5vZGUuYXR0YWNoZWQpIHsKICAg
ICAgICAgY29udGV4dE1lbnUuYXBwZW5kU2VwYXJhdG9yKCk7CiAKLSAgICAgICAgbGV0IHBzZXVk
b1N1Yk1lbnUgPSBjb250ZXh0TWVudS5hcHBlbmRTdWJNZW51SXRlbShXSS5VSVN0cmluZygiRm9y
Y2VkIFBzZXVkby1DbGFzc2VzIikpOworICAgICAgICBsZXQgcHNldWRvU3ViTWVudSA9IGNvbnRl
eHRNZW51LmFwcGVuZFN1Yk1lbnVJdGVtKFdJLlVJU3RyaW5nKCJGb3JjZWQgUHNldWRvLUNsYXNz
ZXMiLCAiQSBjb250ZXh0IG1lbnUgaXRlbSB0byBmb3JjZSAob3ZlcnJpZGUpIGEgRE9NIG5vZGUn
cyBwc2V1ZG8tY2xhc3NlcyIpKTsKIAogICAgICAgICBsZXQgZW5hYmxlZFBzZXVkb0NsYXNzZXMg
PSBkb21Ob2RlLmVuYWJsZWRQc2V1ZG9DbGFzc2VzOwogICAgICAgICBXSS5DU1NNYW5hZ2VyLkZv
cmNlYWJsZVBzZXVkb0NsYXNzZXMuZm9yRWFjaCgocHNldWRvQ2xhc3MpID0+IHsKQEAgLTIzMCwx
MCArMjMwLDEwIEBAIFdJLmFwcGVuZENvbnRleHRNZW51SXRlbXNGb3JET01Ob2RlID0gZnVuY3Rp
b24oY29udGV4dE1lbnUsIGRvbU5vZGUsIG9wdGlvbnMgPSB7CiAgICAgY29udGV4dE1lbnUuYXBw
ZW5kU2VwYXJhdG9yKCk7CiAKICAgICBpZiAoIW9wdGlvbnMuZXhjbHVkZUxvZ0VsZW1lbnQgJiYg
IWRvbU5vZGUuaXNJblVzZXJBZ2VudFNoYWRvd1RyZWUoKSAmJiAhZG9tTm9kZS5pc1BzZXVkb0Vs
ZW1lbnQoKSkgewotICAgICAgICBsZXQgbGFiZWwgPSBpc0VsZW1lbnQgPyBXSS5VSVN0cmluZygi
TG9nIEVsZW1lbnQiKSA6IFdJLlVJU3RyaW5nKCJMb2cgTm9kZSIpOworICAgICAgICBsZXQgbGFi
ZWwgPSBpc0VsZW1lbnQgPyBXSS5VSVN0cmluZygiTG9nIEVsZW1lbnQiLCAiTG9nIChwcmludCkg
RE9NIGVsZW1lbnQgdG8gQ29uc29sZSIpIDogV0kuVUlTdHJpbmcoIkxvZyBOb2RlIiwgIkxvZyAo
cHJpbnQpIERPTSBub2RlIHRvIENvbnNvbGUiKTsKICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5k
SXRlbShsYWJlbCwgKCkgPT4gewogICAgICAgICAgICAgV0kuUmVtb3RlT2JqZWN0LnJlc29sdmVO
b2RlKGRvbU5vZGUsIFdJLlJ1bnRpbWVNYW5hZ2VyLkNvbnNvbGVPYmplY3RHcm91cCkudGhlbigo
cmVtb3RlT2JqZWN0KSA9PiB7Ci0gICAgICAgICAgICAgICAgbGV0IHRleHQgPSBpc0VsZW1lbnQg
PyBXSS5VSVN0cmluZygiU2VsZWN0ZWQgRWxlbWVudCIpIDogV0kuVUlTdHJpbmcoIlNlbGVjdGVk
IE5vZGUiKTsKKyAgICAgICAgICAgICAgICBsZXQgdGV4dCA9IGlzRWxlbWVudCA/IFdJLlVJU3Ry
aW5nKCJTZWxlY3RlZCBFbGVtZW50IiwgIlNlbGVjdGVkIERPTSBlbGVtZW50IikgOiBXSS5VSVN0
cmluZygiU2VsZWN0ZWQgTm9kZSIsICJTZWxlY3RlZCBET00gbm9kZSIpOwogICAgICAgICAgICAg
ICAgIGNvbnN0IGFkZFNwZWNpYWxVc2VyTG9nQ2xhc3MgPSB0cnVlOwogICAgICAgICAgICAgICAg
IFdJLmNvbnNvbGVMb2dWaWV3Q29udHJvbGxlci5hcHBlbmRJbW1lZGlhdGVFeGVjdXRpb25XaXRo
UmVzdWx0KHRleHQsIHJlbW90ZU9iamVjdCwgYWRkU3BlY2lhbFVzZXJMb2dDbGFzcyk7CiAgICAg
ICAgICAgICB9KTsKQEAgLTI0MSwxOSArMjQxLDE5IEBAIFdJLmFwcGVuZENvbnRleHRNZW51SXRl
bXNGb3JET01Ob2RlID0gZnVuY3Rpb24oY29udGV4dE1lbnUsIGRvbU5vZGUsIG9wdGlvbnMgPSB7
CiAgICAgfQogCiAgICAgaWYgKCFvcHRpb25zLmV4Y2x1ZGVSZXZlYWxFbGVtZW50ICYmIHdpbmRv
dy5ET01BZ2VudCAmJiBhdHRhY2hlZCkgewotICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVt
KFdJLlVJU3RyaW5nKCJSZXZlYWwgaW4gRE9NIFRyZWUiKSwgKCkgPT4geworICAgICAgICBjb250
ZXh0TWVudS5hcHBlbmRJdGVtKFdJLnJlcGVhdGVkVUlTdHJpbmcucmV2ZWFsSW5ET01UcmVlKCks
ICgpID0+IHsKICAgICAgICAgICAgIFdJLmRvbU1hbmFnZXIuaW5zcGVjdEVsZW1lbnQoZG9tTm9k
ZS5pZCk7CiAgICAgICAgIH0pOwogICAgIH0KIAogICAgIGlmIChXSS5zZXR0aW5ncy5leHBlcmlt
ZW50YWxFbmFibGVMYXllcnNUYWIudmFsdWUgJiYgd2luZG93LkxheWVyVHJlZUFnZW50ICYmIGF0
dGFjaGVkKSB7Ci0gICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlJl
dmVhbCBpbiBMYXllcnMgVGFiIiksICgpID0+IHsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5k
SXRlbShXSS5VSVN0cmluZygiUmV2ZWFsIGluIExheWVycyBUYWIiLCAiT3BlbiBMYXllcnMgdGFi
IGFuZCBzZWxlY3QgdGhlIGxheWVyIGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBub2RlIiksICgpID0+
IHsKICAgICAgICAgICAgIFdJLnNob3dMYXllcnNUYWIoe25vZGVUb1NlbGVjdDogZG9tTm9kZX0p
OwogICAgICAgICB9KTsKICAgICB9CiAKICAgICBpZiAod2luZG93LlBhZ2VBZ2VudCAmJiBhdHRh
Y2hlZCkgewotICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJDYXB0
dXJlIFNjcmVlbnNob3QiKSwgKCkgPT4geworICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVt
KFdJLlVJU3RyaW5nKCJDYXB0dXJlIFNjcmVlbnNob3QiLCAiQ2FwdHVyZSBzY3JlZW5zaG90IG9m
IHRoZSBzZWxlY3RlZCBET00gbm9kZSIpLCAoKSA9PiB7CiAgICAgICAgICAgICBQYWdlQWdlbnQu
c25hcHNob3ROb2RlKGRvbU5vZGUuaWQsIChlcnJvciwgZGF0YVVSTCkgPT4gewogICAgICAgICAg
ICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXQgPSBX
SS5tYWluVGFyZ2V0OwpAQCAtMjc2LDcgKzI3Niw3IEBAIFdJLmFwcGVuZENvbnRleHRNZW51SXRl
bXNGb3JET01Ob2RlID0gZnVuY3Rpb24oY29udGV4dE1lbnUsIGRvbU5vZGUsIG9wdGlvbnMgPSB7
CiAgICAgfQogCiAgICAgaWYgKGlzRWxlbWVudCAmJiBhdHRhY2hlZCkgewotICAgICAgICBjb250
ZXh0TWVudS5hcHBlbmRJdGVtKFdJLlVJU3RyaW5nKCJTY3JvbGwgSW50byBWaWV3IiksICgpID0+
IHsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiU2Nyb2xsIGlu
dG8gVmlldyIsICJTY3JvbGwgc2VsZWN0ZWQgRE9NIG5vZGUgaW50byB2aWV3IG9uIHRoZSBpbnNw
ZWN0ZWQgd2ViIHBhZ2UiKSwgKCkgPT4gewogICAgICAgICAgICAgZG9tTm9kZS5zY3JvbGxJbnRv
VmlldygpOwogICAgICAgICB9KTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJlZUVsZW1lbnQuanMgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJl
ZUVsZW1lbnQuanMKaW5kZXggNjY3ZDU1N2VmYzYuLjk5MWQ3MTZkYjVhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01CcmVha3BvaW50VHJl
ZUVsZW1lbnQuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50LmpzCkBAIC01MCwxMSArNTAsMTEgQEAgV0kuRE9N
QnJlYWtwb2ludFRyZWVFbGVtZW50ID0gY2xhc3MgRE9NQnJlYWtwb2ludFRyZWVFbGVtZW50IGV4
dGVuZHMgV0kuR2VuZXJhbFQKICAgICB7CiAgICAgICAgIHN3aXRjaCAodHlwZSkgewogICAgICAg
ICBjYXNlIFdJLkRPTUJyZWFrcG9pbnQuVHlwZS5TdWJ0cmVlTW9kaWZpZWQ6Ci0gICAgICAgICAg
ICByZXR1cm4gV0kuVUlTdHJpbmcoIlN1YnRyZWUgTW9kaWZpZWQiKTsKKyAgICAgICAgICAgIHJl
dHVybiBXSS5VSVN0cmluZygiU3VidHJlZSBNb2RpZmllZCIsICJBIHN1Ym1lbnUgaXRlbSBvZiAn
QnJlYWsgT24nIHRoYXQgYnJlYWtzIChwYXVzZXMpIGJlZm9yZSBjaGlsZCBET00gbm9kZSBpcyBt
b2RpZmllZCIpOwogICAgICAgICBjYXNlIFdJLkRPTUJyZWFrcG9pbnQuVHlwZS5BdHRyaWJ1dGVN
b2RpZmllZDoKLSAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiQXR0cmlidXRlIE1vZGlm
aWVkIik7CisgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIkF0dHJpYnV0ZSBNb2RpZmll
ZCIsICJBIHN1Ym1lbnUgaXRlbSBvZiAnQnJlYWsgT24nIHRoYXQgYnJlYWtzIChwYXVzZXMpIGJl
Zm9yZSBET00gYXR0cmlidXRlIGlzIG1vZGlmaWVkIik7CiAgICAgICAgIGNhc2UgV0kuRE9NQnJl
YWtwb2ludC5UeXBlLk5vZGVSZW1vdmVkOgotICAgICAgICAgICAgcmV0dXJuIFdJLlVJU3RyaW5n
KCJOb2RlIFJlbW92ZWQiKTsKKyAgICAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiTm9kZSBS
ZW1vdmVkIiwgIkEgc3VibWVudSBpdGVtIG9mICdCcmVhayBPbicgdGhhdCBicmVha3MgKHBhdXNl
cykgYmVmb3JlIERPTSBub2RlIGlzIHJlbW92ZWQiKTsKICAgICAgICAgZGVmYXVsdDoKICAgICAg
ICAgICAgIGNvbnNvbGUuZXJyb3IoIlVuZXhwZWN0ZWQgRE9NIGJyZWFrcG9pbnQgdHlwZTogIiAr
IHR5cGUpOwogICAgICAgICAgICAgcmV0dXJuIG51bGw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJlZUVsZW1lbnQuanMgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJlZUVsZW1l
bnQuanMKaW5kZXggMWY1ZDE3MTgzZTQuLmFkYWZmM2ZhYWU4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01Ob2RlVHJlZUVsZW1lbnQuanMK
KysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NTm9kZVRy
ZWVFbGVtZW50LmpzCkBAIC02MSw3ICs2MSw3IEBAIFdJLkRPTU5vZGVUcmVlRWxlbWVudCA9IGNs
YXNzIERPTU5vZGVUcmVlRWxlbWVudCBleHRlbmRzIFdJLkdlbmVyYWxUcmVlRWxlbWVudAogCiAg
ICAgICAgIGNvbnRleHRNZW51LmFwcGVuZFNlcGFyYXRvcigpOwogCi0gICAgICAgIGNvbnRleHRN
ZW51LmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIlJldmVhbCBpbiBET00gVHJlZSIpLCAoKSA9PiB7
CisgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV0kucmVwZWF0ZWRVSVN0cmluZy5yZXZl
YWxJbkRPTVRyZWUoKSwgKCkgPT4gewogICAgICAgICAgICAgV0kuZG9tTWFuYWdlci5pbnNwZWN0
RWxlbWVudCh0aGlzLnJlcHJlc2VudGVkT2JqZWN0LmlkKTsKICAgICAgICAgfSk7CiAgICAgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9N
VHJlZUVsZW1lbnQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3
cy9ET01UcmVlRWxlbWVudC5qcwppbmRleCBlNmYxZWU4ODc1Ni4uYWViZmYwM2ExY2EgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVF
bGVtZW50LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdz
L0RPTVRyZWVFbGVtZW50LmpzCkBAIC03NjQsMTYgKzc2NCwxNiBAQCBXSS5ET01UcmVlRWxlbWVu
dCA9IGNsYXNzIERPTVRyZWVFbGVtZW50IGV4dGVuZHMgV0kuVHJlZUVsZW1lbnQKIAogICAgICAg
ICBpZiAoaXNFZGl0YWJsZU5vZGUpIHsKICAgICAgICAgICAgIGlmICghZm9yYmlkZGVuQ2xvc2lu
Z1RhZykgewotICAgICAgICAgICAgICAgIHN1Yk1lbnVzLmFkZC5hcHBlbmRJdGVtKFdJLlVJU3Ry
aW5nKCJDaGlsZCIpLCAoKSA9PiB7CisgICAgICAgICAgICAgICAgc3ViTWVudXMuYWRkLmFwcGVu
ZEl0ZW0oV0kuVUlTdHJpbmcoIkNoaWxkIiwgIkEgc3VibWVudSBpdGVtIG9mICdBZGQnIHRvIGFw
cGVuZCBET00gbm9kZXMgdG8gdGhlIHNlbGVjdGVkIERPTSBub2RlIiksICgpID0+IHsKICAgICAg
ICAgICAgICAgICAgICAgdGhpcy5fYWRkSFRNTCgpOwogICAgICAgICAgICAgICAgIH0pOwogICAg
ICAgICAgICAgfQogCi0gICAgICAgICAgICBzdWJNZW51cy5hZGQuYXBwZW5kSXRlbShXSS5VSVN0
cmluZygiUHJldmlvdXMgU2libGluZyIpLCAoKSA9PiB7CisgICAgICAgICAgICBzdWJNZW51cy5h
ZGQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiUHJldmlvdXMgU2libGluZyIsICJBIHN1Ym1lbnUg
aXRlbSBvZiAnQWRkJyB0byBhZGQgRE9NIG5vZGVzIGJlZm9yZSB0aGUgc2VsZWN0ZWQgRE9NIG5v
ZGUiKSwgKCkgPT4gewogICAgICAgICAgICAgICAgIHRoaXMuX2FkZFByZXZpb3VzU2libGluZygp
OwogICAgICAgICAgICAgfSk7CiAKLSAgICAgICAgICAgIHN1Yk1lbnVzLmFkZC5hcHBlbmRJdGVt
KFdJLlVJU3RyaW5nKCJOZXh0IFNpYmxpbmciKSwgKCkgPT4geworICAgICAgICAgICAgc3ViTWVu
dXMuYWRkLmFwcGVuZEl0ZW0oV0kuVUlTdHJpbmcoIk5leHQgU2libGluZyIsICJBIHN1Ym1lbnUg
aXRlbSBvZiAnQWRkJyB0byBhZGQgRE9NIG5vZGVzIGFmdGVyIHRoZSBzZWxlY3RlZCBET00gbm9k
ZSIpLCAoKSA9PiB7CiAgICAgICAgICAgICAgICAgdGhpcy5fYWRkTmV4dFNpYmxpbmcoKTsKICAg
ICAgICAgICAgIH0pOwogICAgICAgICB9CkBAIC03OTcsNyArNzk3LDcgQEAgV0kuRE9NVHJlZUVs
ZW1lbnQgPSBjbGFzcyBET01UcmVlRWxlbWVudCBleHRlbmRzIFdJLlRyZWVFbGVtZW50CiAgICAg
ICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIHN1Yk1lbnVzLmVk
aXQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiVGFnIiksICgpID0+IHsKKyAgICAgICAgICAgIHN1
Yk1lbnVzLmVkaXQuYXBwZW5kSXRlbShXSS5VSVN0cmluZygiVGFnIiwgIkEgc3VibWVudSBpdGVt
IG9mICdFZGl0JyB0byBjaGFuZ2UgRE9NIGVsZW1lbnQncyB0YWcgbmFtZSIpLCAoKSA9PiB7CiAg
ICAgICAgICAgICAgICAgdGhpcy5fc3RhcnRFZGl0aW5nVGFnTmFtZSgpOwogICAgICAgICAgICAg
fSk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL0RlYnVnZ2VyU2lkZWJhclBhbmVsLmpzIGIvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGVidWdnZXJTaWRlYmFyUGFuZWwuanMKaW5kZXggYmQ1
NmIwM2I4ZGYuLjhkYzIxNzU2NTAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9EZWJ1Z2dlclNpZGViYXJQYW5lbC5qcworKysgYi9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EZWJ1Z2dlclNpZGViYXJQYW5lbC5q
cwpAQCAtNDcxLDEzICs0NzEsMTMgQEAgV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwgPSBjbGFzcyBE
ZWJ1Z2dlclNpZGViYXJQYW5lbCBleHRlbmRzIFdJLk5hdmlnYXRpb25TaWRlYmEKIAogICAgICAg
ICBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZGVidWdnZXJNYW5hZ2VyLmFsbEV4Y2VwdGlvbnNCcmVh
a3BvaW50KSB7CiAgICAgICAgICAgICBvcHRpb25zLmNsYXNzTmFtZSA9IFdJLkRlYnVnZ2VyU2lk
ZWJhclBhbmVsLkV4Y2VwdGlvbkljb25TdHlsZUNsYXNzTmFtZTsKLSAgICAgICAgICAgIG9wdGlv
bnMudGl0bGUgPSBXSS5VSVN0cmluZygiQWxsIEV4Y2VwdGlvbnMiKTsKKyAgICAgICAgICAgIG9w
dGlvbnMudGl0bGUgPSBXSS5yZXBlYXRlZFVJU3RyaW5nLmFsbEV4Y2VwdGlvbnMoKTsKICAgICAg
ICAgfSBlbHNlIGlmIChicmVha3BvaW50ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIudW5jYXVnaHRF
eGNlcHRpb25zQnJlYWtwb2ludCkgewogICAgICAgICAgICAgb3B0aW9ucy5jbGFzc05hbWUgPSBX
SS5EZWJ1Z2dlclNpZGViYXJQYW5lbC5FeGNlcHRpb25JY29uU3R5bGVDbGFzc05hbWU7Ci0gICAg
ICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmcoIlVuY2F1Z2h0IEV4Y2VwdGlvbnMi
KTsKKyAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5yZXBlYXRlZFVJU3RyaW5nLnVuY2F1
Z2h0RXhjZXB0aW9ucygpOwogICAgICAgICB9IGVsc2UgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRl
YnVnZ2VyTWFuYWdlci5hc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnQpIHsKICAgICAgICAgICAg
IG9wdGlvbnMuY2xhc3NOYW1lID0gV0kuRGVidWdnZXJTaWRlYmFyUGFuZWwuQXNzZXJ0aW9uSWNv
blN0eWxlQ2xhc3NOYW1lOwotICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5n
KCJBc3NlcnRpb24gRmFpbHVyZXMiKTsKKyAgICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5y
ZXBlYXRlZFVJU3RyaW5nLmFzc2VydGlvbkZhaWx1cmVzKCk7CiAgICAgICAgIH0gZWxzZSBpZiAo
YnJlYWtwb2ludCBpbnN0YW5jZW9mIFdJLkRPTUJyZWFrcG9pbnQpIHsKICAgICAgICAgICAgIGlm
ICghYnJlYWtwb2ludC5kb21Ob2RlSWRlbnRpZmllcikKICAgICAgICAgICAgICAgICByZXR1cm4g
bnVsbDsKQEAgLTUxMSw3ICs1MTEsNyBAQCBXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbCA9IGNsYXNz
IERlYnVnZ2VyU2lkZWJhclBhbmVsIGV4dGVuZHMgV0kuTmF2aWdhdGlvblNpZGViYQogCiAgICAg
ICAgICAgICBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZG9tRGVidWdnZXJNYW5hZ2VyLmFsbFJlcXVl
c3RzQnJlYWtwb2ludCkgewogICAgICAgICAgICAgICAgIG9wdGlvbnMuY2xhc3NOYW1lID0gV0ku
RGVidWdnZXJTaWRlYmFyUGFuZWwuQXNzZXJ0aW9uSWNvblN0eWxlQ2xhc3NOYW1lOwotICAgICAg
ICAgICAgICAgIG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiQWxsIFJlcXVlc3RzIik7Cisg
ICAgICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLnJlcGVhdGVkVUlTdHJpbmcuYWxsUmVx
dWVzdHMoKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIGxl
dCBzb3VyY2VDb2RlID0gYnJlYWtwb2ludC5zb3VyY2VDb2RlTG9jYXRpb24gJiYgYnJlYWtwb2lu
dC5zb3VyY2VDb2RlTG9jYXRpb24uZGlzcGxheVNvdXJjZUNvZGU7CkBAIC0xNDU0LDcgKzE0NTQs
NyBAQCBXSS5EZWJ1Z2dlclNpZGViYXJQYW5lbCA9IGNsYXNzIERlYnVnZ2VyU2lkZWJhclBhbmVs
IGV4dGVuZHMgV0kuTmF2aWdhdGlvblNpZGViYQogICAgICAgICBpZiAoSW5zcGVjdG9yQmFja2Vu
ZC5kb21haW5zLkRlYnVnZ2VyLnNldFBhdXNlT25Bc3NlcnRpb25zKSB7CiAgICAgICAgICAgICBs
ZXQgYXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50U2hvd24gPSBXSS5zZXR0aW5ncy5zaG93QXNz
ZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50LnZhbHVlOwogCi0gICAgICAgICAgICBjb250ZXh0TWVu
dS5hcHBlbmRDaGVja2JveEl0ZW0oV0kuVUlTdHJpbmcoIkFzc2VydGlvbiBGYWlsdXJlcyIpLCAo
KSA9PiB7CisgICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRDaGVja2JveEl0ZW0oV0kucmVw
ZWF0ZWRVSVN0cmluZy5hc3NlcnRpb25GYWlsdXJlcygpLCAoKSA9PiB7CiAgICAgICAgICAgICAg
ICAgaWYgKGFzc2VydGlvbkZhaWx1cmVzQnJlYWtwb2ludFNob3duKQogICAgICAgICAgICAgICAg
ICAgICBXSS5kZWJ1Z2dlck1hbmFnZXIucmVtb3ZlQnJlYWtwb2ludChXSS5kZWJ1Z2dlck1hbmFn
ZXIuYXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50KTsKICAgICAgICAgICAgICAgICBlbHNlIHsK
QEAgLTE0NzYsNyArMTQ3Niw3IEBAIFdJLkRlYnVnZ2VyU2lkZWJhclBhbmVsID0gY2xhc3MgRGVi
dWdnZXJTaWRlYmFyUGFuZWwgZXh0ZW5kcyBXSS5OYXZpZ2F0aW9uU2lkZWJhCiAKICAgICAgICAg
ICAgIGxldCBhbGxSZXF1ZXN0c0JyZWFrcG9pbnRTaG93biA9IFdJLnNldHRpbmdzLnNob3dBbGxS
ZXF1ZXN0c0JyZWFrcG9pbnQudmFsdWU7CiAKLSAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVu
ZENoZWNrYm94SXRlbShXSS5VSVN0cmluZygiQWxsIFJlcXVlc3RzIiksICgpID0+IHsKKyAgICAg
ICAgICAgIGNvbnRleHRNZW51LmFwcGVuZENoZWNrYm94SXRlbShXSS5yZXBlYXRlZFVJU3RyaW5n
LmFsbFJlcXVlc3RzKCksICgpID0+IHsKICAgICAgICAgICAgICAgICBpZiAoYWxsUmVxdWVzdHNC
cmVha3BvaW50U2hvd24pCiAgICAgICAgICAgICAgICAgICAgIFdJLmRvbURlYnVnZ2VyTWFuYWdl
ci5yZW1vdmVVUkxCcmVha3BvaW50KFdJLmRvbURlYnVnZ2VyTWFuYWdlci5hbGxSZXF1ZXN0c0Jy
ZWFrcG9pbnQpOwogICAgICAgICAgICAgICAgIGVsc2UgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQ
YW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0xheWVy
VHJlZURldGFpbHNTaWRlYmFyUGFuZWwuanMKaW5kZXggMmI2NTEzYTdmZDIuLmMxYWQ2ZmFhNGNl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9M
YXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0xheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwuanMKQEAg
LTEzNiw3ICsxMzYsNyBAQCBXSS5MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsID0gY2xhc3Mg
TGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbCBleHRlbmRzIFdJLgogICAgICAgICBjb2x1bW5z
Lm5hbWUudGl0bGUgPSBXSS5VSVN0cmluZygiTm9kZSIpOwogICAgICAgICBjb2x1bW5zLm5hbWUu
c29ydGFibGUgPSBmYWxzZTsKIAotICAgICAgICBjb2x1bW5zLnBhaW50Q291bnQudGl0bGUgPSBX
SS5VSVN0cmluZygiUGFpbnRzIik7CisgICAgICAgIGNvbHVtbnMucGFpbnRDb3VudC50aXRsZSA9
IFdJLlVJU3RyaW5nKCJQYWludHMiLCAiUGFpbnRzIEAgQ29sdW1uIHRpdGxlIiwgIkEgY291bnQg
b2YgaG93IG1hbnkgdGltZXMgYW4gZWxlbWVudCB3YXMgcGFpbnRlZCAocmVuZGVyZWQpIik7CiAg
ICAgICAgIGNvbHVtbnMucGFpbnRDb3VudC5zb3J0YWJsZSA9IHRydWU7CiAgICAgICAgIGNvbHVt
bnMucGFpbnRDb3VudC5hbGlnbmVkID0gInJpZ2h0IjsKICAgICAgICAgY29sdW1ucy5wYWludENv
dW50LndpZHRoID0gIjcwcHgiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvTmV0d29ya1RhYmxlQ29udGVudFZpZXcuanMgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9OZXR3b3JrVGFibGVDb250ZW50Vmlldy5q
cwppbmRleCAzM2I5MTYzYzc2MC4uY2ZmZDFjZjI4NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL05ldHdvcmtUYWJsZUNvbnRlbnRWaWV3Lmpz
CisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL05ldHdvcmtU
YWJsZUNvbnRlbnRWaWV3LmpzCkBAIC0yMTEsNyArMjExLDcgQEAgV0kuTmV0d29ya1RhYmxlQ29u
dGVudFZpZXcgPSBjbGFzcyBOZXR3b3JrVGFibGVDb250ZW50VmlldyBleHRlbmRzIFdJLkNvbnRl
bnRWaWUKICAgICAgICAgY2FzZSBXSS5SZXNvdXJjZS5UeXBlLlhIUjoKICAgICAgICAgICAgIHJl
dHVybiAiWEhSIjsKICAgICAgICAgY2FzZSBXSS5SZXNvdXJjZS5UeXBlLkZldGNoOgotICAgICAg
ICAgICAgcmV0dXJuIFdJLlVJU3RyaW5nKCJGZXRjaCIpOworICAgICAgICAgICAgcmV0dXJuIFdJ
LnJlcGVhdGVkVUlTdHJpbmcuZmV0Y2goKTsKICAgICAgICAgY2FzZSBXSS5SZXNvdXJjZS5UeXBl
LlBpbmc6CiAgICAgICAgICAgICByZXR1cm4gV0kuVUlTdHJpbmcoIlBpbmciKTsKICAgICAgICAg
Y2FzZSBXSS5SZXNvdXJjZS5UeXBlLkJlYWNvbjoKQEAgLTExNzIsNyArMTE3Miw3IEBAIFdJLk5l
dHdvcmtUYWJsZUNvbnRlbnRWaWV3ID0gY2xhc3MgTmV0d29ya1RhYmxlQ29udGVudFZpZXcgZXh0
ZW5kcyBXSS5Db250ZW50VmllCiAgICAgICAgICAgICBhbGlnbjogInJpZ2h0IiwKICAgICAgICAg
fSk7CiAKLSAgICAgICAgdGhpcy5fdHJhbnNmZXJTaXplQ29sdW1uID0gbmV3IFdJLlRhYmxlQ29s
dW1uKCJ0cmFuc2ZlclNpemUiLCBXSS5VSVN0cmluZygiVHJhbnNmZXIgU2l6ZSIpLCB7CisgICAg
ICAgIHRoaXMuX3RyYW5zZmVyU2l6ZUNvbHVtbiA9IG5ldyBXSS5UYWJsZUNvbHVtbigidHJhbnNm
ZXJTaXplIiwgV0kuVUlTdHJpbmcoIlRyYW5zZmVyIFNpemUiLCAiQW1vdW50IG9mIGRhdGEgc2Vu
dCBvdmVyIHRoZSBuZXR3b3JrIGZvciBhIHNpbmdsZSByZXNvdXJjZSIpLCB7CiAgICAgICAgICAg
ICBtaW5XaWR0aDogMTAwLAogICAgICAgICAgICAgbWF4V2lkdGg6IDE1MCwKICAgICAgICAgICAg
IGluaXRpYWxXaWR0aDogMTAwLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMgYi9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VzTmF2aWdhdGlvblNp
ZGViYXJQYW5lbC5qcwppbmRleCBhMjFiYWU4ZDBkOC4uYzVhMWJmZTE0ZWEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZXNOYXZpZ2F0
aW9uU2lkZWJhclBhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL1NvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmpzCkBAIC04ODksMTMgKzg4
OSwxMyBAQCBXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNzIFNvdXJjZXNO
YXZpZ2F0aW9uU2lkZWJhclBhbmVsIGV4dGVuZHMgVwogCiAgICAgICAgIGlmIChicmVha3BvaW50
ID09PSBXSS5kZWJ1Z2dlck1hbmFnZXIuYWxsRXhjZXB0aW9uc0JyZWFrcG9pbnQpIHsKICAgICAg
ICAgICAgIG9wdGlvbnMuY2xhc3NOYW1lID0gImJyZWFrcG9pbnQtZXhjZXB0aW9uLWljb24iOwot
ICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5nKCJBbGwgRXhjZXB0aW9ucyIp
OworICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLnJlcGVhdGVkVUlTdHJpbmcuYWxsRXhj
ZXB0aW9ucygpOwogICAgICAgICB9IGVsc2UgaWYgKGJyZWFrcG9pbnQgPT09IFdJLmRlYnVnZ2Vy
TWFuYWdlci51bmNhdWdodEV4Y2VwdGlvbnNCcmVha3BvaW50KSB7CiAgICAgICAgICAgICBvcHRp
b25zLmNsYXNzTmFtZSA9ICJicmVha3BvaW50LWV4Y2VwdGlvbi1pY29uIjsKLSAgICAgICAgICAg
IG9wdGlvbnMudGl0bGUgPSBXSS5VSVN0cmluZygiVW5jYXVnaHQgRXhjZXB0aW9ucyIpOworICAg
ICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLnJlcGVhdGVkVUlTdHJpbmcudW5jYXVnaHRFeGNl
cHRpb25zKCk7CiAgICAgICAgIH0gZWxzZSBpZiAoYnJlYWtwb2ludCA9PT0gV0kuZGVidWdnZXJN
YW5hZ2VyLmFzc2VydGlvbkZhaWx1cmVzQnJlYWtwb2ludCkgewogICAgICAgICAgICAgb3B0aW9u
cy5jbGFzc05hbWUgPSAiYnJlYWtwb2ludC1hc3NlcnRpb24taWNvbiI7Ci0gICAgICAgICAgICBv
cHRpb25zLnRpdGxlID0gV0kuVUlTdHJpbmcoIkFzc2VydGlvbiBGYWlsdXJlcyIpOworICAgICAg
ICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLnJlcGVhdGVkVUlTdHJpbmcuYXNzZXJ0aW9uRmFpbHVy
ZXMoKTsKICAgICAgICAgfSBlbHNlIGlmIChicmVha3BvaW50IGluc3RhbmNlb2YgV0kuRE9NQnJl
YWtwb2ludCkgewogICAgICAgICAgICAgaWYgKCFicmVha3BvaW50LmRvbU5vZGVJZGVudGlmaWVy
KQogICAgICAgICAgICAgICAgIHJldHVybiBudWxsOwpAQCAtOTI5LDcgKzkyOSw3IEBAIFdJLlNv
dXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsID0gY2xhc3MgU291cmNlc05hdmlnYXRpb25TaWRl
YmFyUGFuZWwgZXh0ZW5kcyBXCiAKICAgICAgICAgICAgIGlmIChicmVha3BvaW50ID09PSBXSS5k
b21EZWJ1Z2dlck1hbmFnZXIuYWxsUmVxdWVzdHNCcmVha3BvaW50KSB7CiAgICAgICAgICAgICAg
ICAgb3B0aW9ucy5jbGFzc05hbWUgPSAiYnJlYWtwb2ludC1hc3NlcnRpb24taWNvbiI7Ci0gICAg
ICAgICAgICAgICAgb3B0aW9ucy50aXRsZSA9IFdJLlVJU3RyaW5nKCJBbGwgUmVxdWVzdHMiKTsK
KyAgICAgICAgICAgICAgICBvcHRpb25zLnRpdGxlID0gV0kucmVwZWF0ZWRVSVN0cmluZy5hbGxS
ZXF1ZXN0cygpOwogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAg
bGV0IHNvdXJjZUNvZGUgPSBicmVha3BvaW50LnNvdXJjZUNvZGVMb2NhdGlvbiAmJiBicmVha3Bv
aW50LnNvdXJjZUNvZGVMb2NhdGlvbi5kaXNwbGF5U291cmNlQ29kZTsKQEAgLTE1MDgsNyArMTUw
OCw3IEBAIFdJLlNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsID0gY2xhc3MgU291cmNlc05h
dmlnYXRpb25TaWRlYmFyUGFuZWwgZXh0ZW5kcyBXCiAgICAgICAgIGlmIChJbnNwZWN0b3JCYWNr
ZW5kLmRvbWFpbnMuRGVidWdnZXIuc2V0UGF1c2VPbkFzc2VydGlvbnMpIHsKICAgICAgICAgICAg
IGxldCBhc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnRTaG93biA9IFdJLnNldHRpbmdzLnNob3dB
c3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnQudmFsdWU7CiAKLSAgICAgICAgICAgIGNvbnRleHRN
ZW51LmFwcGVuZENoZWNrYm94SXRlbShXSS5VSVN0cmluZygiQXNzZXJ0aW9uIEZhaWx1cmVzIiks
ICgpID0+IHsKKyAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZENoZWNrYm94SXRlbShXSS5y
ZXBlYXRlZFVJU3RyaW5nLmFzc2VydGlvbkZhaWx1cmVzKCksICgpID0+IHsKICAgICAgICAgICAg
ICAgICBpZiAoYXNzZXJ0aW9uRmFpbHVyZXNCcmVha3BvaW50U2hvd24pCiAgICAgICAgICAgICAg
ICAgICAgIFdJLmRlYnVnZ2VyTWFuYWdlci5yZW1vdmVCcmVha3BvaW50KFdJLmRlYnVnZ2VyTWFu
YWdlci5hc3NlcnRpb25GYWlsdXJlc0JyZWFrcG9pbnQpOwogICAgICAgICAgICAgICAgIGVsc2Ug
ewpAQCAtMTUzMCw3ICsxNTMwLDcgQEAgV0kuU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwg
PSBjbGFzcyBTb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCBleHRlbmRzIFcKIAogICAgICAg
ICAgICAgbGV0IGFsbFJlcXVlc3RzQnJlYWtwb2ludFNob3duID0gV0kuc2V0dGluZ3Muc2hvd0Fs
bFJlcXVlc3RzQnJlYWtwb2ludC52YWx1ZTsKIAotICAgICAgICAgICAgY29udGV4dE1lbnUuYXBw
ZW5kQ2hlY2tib3hJdGVtKFdJLlVJU3RyaW5nKCJBbGwgUmVxdWVzdHMiKSwgKCkgPT4geworICAg
ICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kQ2hlY2tib3hJdGVtKFdJLnJlcGVhdGVkVUlTdHJp
bmcuYWxsUmVxdWVzdHMoKSwgKCkgPT4gewogICAgICAgICAgICAgICAgIGlmIChhbGxSZXF1ZXN0
c0JyZWFrcG9pbnRTaG93bikKICAgICAgICAgICAgICAgICAgICAgV0kuZG9tRGVidWdnZXJNYW5h
Z2VyLnJlbW92ZVVSTEJyZWFrcG9pbnQoV0kuZG9tRGVidWdnZXJNYW5hZ2VyLmFsbFJlcXVlc3Rz
QnJlYWtwb2ludCk7CiAgICAgICAgICAgICAgICAgZWxzZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldENTU1N0eWxlRGVj
bGFyYXRpb25TZWN0aW9uLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
Vmlld3MvU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlvbi5qcwppbmRleCBiZmNl
ODIyODJmMC4uZmVjYmU2MGMyM2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24u
anMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFk
c2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uU2VjdGlvbi5qcwpAQCAtMzE1LDcgKzMxNSw3IEBAIFdJ
LlNwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvblNlY3Rpb24gPSBjbGFzcyBTcHJlYWRzaGVl
dENTU1N0eWxlRGVjbGFyYXRpb25TCiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNl
IFdJLkNTU1N0eWxlRGVjbGFyYXRpb24uVHlwZS5JbmxpbmU6Ci0gICAgICAgICAgICB0aGlzLl9z
ZWxlY3RvckVsZW1lbnQudGV4dENvbnRlbnQgPSBXSS5VSVN0cmluZygiU3R5bGUgQXR0cmlidXRl
Iik7CisgICAgICAgICAgICB0aGlzLl9zZWxlY3RvckVsZW1lbnQudGV4dENvbnRlbnQgPSBXSS5V
SVN0cmluZygiU3R5bGUgQXR0cmlidXRlIiwgIkNTUyBwcm9wZXJ0aWVzIGRlZmluZWQgdmlhIEhU
TUwgc3R5bGUgYXR0cmlidXRlIik7CiAgICAgICAgICAgICB0aGlzLl9zZWxlY3RvckVsZW1lbnQu
Y2xhc3NMaXN0LmFkZCgic3R5bGUtYXR0cmlidXRlIik7CiAgICAgICAgICAgICBicmVhazsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3By
ZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWlsc1BhbmVsLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWlsc1BhbmVsLmpz
CmluZGV4IGUxZDRlYmVkMzEyLi5kYzg0YzA1YWViNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRSdWxlc1N0eWxlRGV0YWls
c1BhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdz
L1NwcmVhZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbC5qcwpAQCAtMjU2LDcgKzI1Niw3IEBA
IFdJLlNwcmVhZHNoZWV0UnVsZXNTdHlsZURldGFpbHNQYW5lbCA9IGNsYXNzIFNwcmVhZHNoZWV0
UnVsZXNTdHlsZURldGFpbHNQYW5lbCBlCiAKICAgICAgICAgbGV0IGFkZFNlY3Rpb24gPSAoc2Vj
dGlvbikgPT4gewogICAgICAgICAgICAgaWYgKHNlY3Rpb24uc3R5bGUuaW5oZXJpdGVkICYmICgh
cHJldmlvdXNTdHlsZSB8fCBwcmV2aW91c1N0eWxlLm5vZGUgIT09IHNlY3Rpb24uc3R5bGUubm9k
ZSkpCi0gICAgICAgICAgICAgICAgYWRkSGVhZGVyKFdJLlVJU3RyaW5nKCJJbmhlcml0ZWQgRnJv
bSIpLCBzZWN0aW9uLnN0eWxlLm5vZGUpOworICAgICAgICAgICAgICAgIGFkZEhlYWRlcihXSS5V
SVN0cmluZygiSW5oZXJpdGVkIEZyb20iLCAiQSBzZWN0aW9uIG9mIENTUyBydWxlcyBtYXRjaGlu
ZyBhbiBhbmNlc3RvciBET00gbm9kZSIpLCBzZWN0aW9uLnN0eWxlLm5vZGUpOwogCiAgICAgICAg
ICAgICBpZiAoIXNlY3Rpb24uaXNEZXNjZW5kYW50T2YodGhpcykpIHsKICAgICAgICAgICAgICAg
ICBsZXQgcmVmZXJlbmNlVmlldyA9IHRoaXMuc3Vidmlld3NbdGhpcy5fc2VjdGlvbnMubGVuZ3Ro
XTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAw
ZjRkMDMwNjVmZi4uY2VlYzE3Njg3YWYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysg
Yi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxOS0wNS0yMiAgTmlraXRhIFZh
c2lseWV2ICA8bnZhc2lseWV2QGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBQ
cm92aWRlIFVJU3RyaW5nIGRlc2NyaXB0aW9ucyB0byBpbXByb3ZlIGxvY2FsaXphdGlvbnMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NTEzMgorICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vNDg0NTc4MTc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGV2
aW4gUm91c3NvLgorCisgICAgICAgIEFsbG93IFdJLlVJU3RyaW5nIHRvIHRha2U6CisgICAgICAg
IC0gV0kuVUlTdHJpbmcoc3RyaW5nLCBrZXksIGNvbW1lbnQpCisgICAgICAgIC0gV0kuVUlTdHJp
bmcoc3RyaW5nLCBjb21tZW50KQorICAgICAgICAtIFdJLlVJU3RyaW5nKHN0cmluZykKKworICAg
ICAgICAqIFNjcmlwdHMvZXh0cmFjdC1sb2NhbGl6YWJsZS1qcy1zdHJpbmdzOgorCiAyMDE5LTA1
LTI4ICBEYXZpZCBYaW9uZyAgPHdfeGlvbmdAYXBwbGUuY29tPgogCiAgICAgICAgIHdlYmtpdHB5
OiBVc2luZyBzdWRvIG9uIGlPUyBkZXZpY2UgZHVyaW5nIHRpbWVvdXQgc3BpbmR1bXBzIApkaWZm
IC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy9leHRyYWN0LWxvY2FsaXphYmxlLWpzLXN0cmluZ3MgYi9U
b29scy9TY3JpcHRzL2V4dHJhY3QtbG9jYWxpemFibGUtanMtc3RyaW5ncwppbmRleCAzNGI1YWM3
NzkzYi4uNjhjNzBiZGVjOTcgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvZXh0cmFjdC1sb2Nh
bGl6YWJsZS1qcy1zdHJpbmdzCisrKyBiL1Rvb2xzL1NjcmlwdHMvZXh0cmFjdC1sb2NhbGl6YWJs
ZS1qcy1zdHJpbmdzCkBAIC03NCw3ICs3NCwxNSBAQCBmb3IgbXkgJGZpbGUgKHNvcnQgQGZpbGVz
KSB7CiAgICAgICAgIGNob21wOwogCiAgICAgICAgICMgSGFuZGxlIFdlYkluc3BlY3RvciBzdHJp
bmdzLiBQcmludHMgYSB3YXJuaW5nIGlmIGEgbm9uLXN0cmluZyBsaXRlcmFsIGlzIHBhc3NlZCB0
byBXSS5VSVN0cmluZygpLgotICAgICAgICBIYW5kbGVVSVN0cmluZygkMSwgJDIgfHwgJDEsICQz
IHx8ICIiLCAkZmlsZSwgJC4pIHdoaWxlIHMvV0lcLlVJU3RyaW5nXCgiKFteIl0rKSIoPzosXHMq
IihbXiJdKykiKD86LFxzKiIoW14iXSspIik/KT9cKS8vOworICAgICAgICAjIEFsbG93OiBXSS5V
SVN0cmluZyhzdHJpbmcsIGNvbW1lbnQpCisgICAgICAgICMgICAgICAgIFdJLlVJU3RyaW5nKHN0
cmluZywga2V5LCBjb21tZW50KQorICAgICAgICBIYW5kbGVVSVN0cmluZygKKyAgICAgICAgICAg
ICQxLAorICAgICAgICAgICAgKCQzIHx8IChkZWZpbmVkICQzIGFuZCBsZW5ndGggJDMgPT0gMCkp
ID8gJDIgOiAkMSwKKyAgICAgICAgICAgICgkMyB8fCAoZGVmaW5lZCAkMyBhbmQgbGVuZ3RoICQz
ID09IDApKSA/ICQzIDogJDIgfHwgIiIsCisgICAgICAgICAgICAkZmlsZSwKKyAgICAgICAgICAg
ICQuCisgICAgICAgICkgd2hpbGUgcy9XSVwuVUlTdHJpbmdcKCIoW14iXSspIig/OixccyoiKFte
Il0qKSIoPzosXHMqIihbXiJdKikiKT8pP1wpLy87CiAgICAgICAgIHByaW50ICIkZmlsZTokLjpX
QVJOSU5HOiAkJlxuIiB3aGlsZSBzL1dJXC5VSVN0cmluZ1woLio/XCkvLzsKIAogICAgICAgICAj
IEhhbmRsZSBzdHJpbmdzIGZvciBvdGhlciBwcm9qZWN0cyB0aGF0IGFsc28gdXNlIHRoaXMgc2Ny
aXB0Lgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>