<?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>217846</bug_id>
          
          <creation_ts>2020-10-16 15:03:48 -0700</creation_ts>
          <short_desc>Add AbstractRange</short_desc>
          <delta_ts>2021-09-02 02:11:31 -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>DOM</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          <cc>annevk</cc>
    
    <cc>annulen</cc>
    
    <cc>benjamin</cc>
    
    <cc>calvaris</cc>
    
    <cc>cdumez</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kangil.han</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>rniwa</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sam</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1698767</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-16 15:03:48 -0700</bug_when>
    <thetext>Add AbstractRange</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698769</commentid>
    <comment_count>1</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-16 15:07:09 -0700</bug_when>
    <thetext>Megan Gardner pointed out that we are likely to need AbstractRange to implement proposed CSS Custom Highlight API https://drafts.csswg.org/css-highlight-api-1 and convinced me this is OK for WebKit.

At first I was worried about overhead, but the cost is only the additional size of a virtual table pointer in Range and StaticRange objects, plus a little more code when converting a StaticRange to a SimpleRange due to multiple inheritance.

In this first patch, there is some unused code, since we are not yet using AbstractRange as the type of anything in IDL files, but it still should all be ready to go.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698779</commentid>
    <comment_count>2</comment_count>
      <attachid>411623</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-16 15:20:52 -0700</bug_when>
    <thetext>Created attachment 411623
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698797</commentid>
    <comment_count>3</comment_count>
      <attachid>411623</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2020-10-16 15:40:38 -0700</bug_when>
    <thetext>Comment on attachment 411623
Patch

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

r=me with the iso-heap changes.

&gt; Source/WebCore/dom/AbstractRange.idl:32
&gt; +    Exposed=Window,

Should we add a runtime flag for this?

&gt; Source/WebCore/dom/Range.h:41
&gt; -class Range : public RefCounted&lt;Range&gt; {
&gt; +class Range final : public AbstractRange {

Please make this iso-heaped.

&gt; Source/WebCore/dom/Range.h:46
&gt; +    Node&amp; startContainer() const final { return m_start.container(); }

It&apos;s kind of silly that Range can&apos;t use SimpleRange as its internal data structure.
Then one of these member functions need to be virtual.

&gt; Source/WebCore/dom/StaticRange.h:35
&gt; +class StaticRange final : public AbstractRange, public SimpleRange {

Please make this iso-heaped.

&gt; Source/WebCore/dom/StaticRange.idl:28
&gt; +    JSGenerateToNativeObject,

It occurs to me that StaticRange also needs custom is reachable function.
InputEvent and HighlightRangeGroup hold onto them but we don&apos;t keep this wrapper alive.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698812</commentid>
    <comment_count>4</comment_count>
      <attachid>411623</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-16 16:19:02 -0700</bug_when>
    <thetext>Comment on attachment 411623
Patch

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

Looks like there are some WPT progressions from this change.

&gt;&gt; Source/WebCore/dom/AbstractRange.idl:32
&gt;&gt; +    Exposed=Window,
&gt; 
&gt; Should we add a runtime flag for this?

I don’t think we should. This is a super-low-risk addition.

&gt;&gt; Source/WebCore/dom/Range.h:41
&gt;&gt; +class Range final : public AbstractRange {
&gt; 
&gt; Please make this iso-heaped.

OK. Will do!

Just curious, is that newly important now because of polymorphism or was it already important before?

&gt;&gt; Source/WebCore/dom/Range.h:46
&gt;&gt; +    Node&amp; startContainer() const final { return m_start.container(); }
&gt; 
&gt; It&apos;s kind of silly that Range can&apos;t use SimpleRange as its internal data structure.
&gt; Then one of these member functions need to be virtual.

Interesting idea. It’s not a trivial change to make. Range uses a class RangeBoundaryPoint to share code between start and end and using SimpleRange as a base would require refactoring that. Should be possible, though!

&gt;&gt; Source/WebCore/dom/StaticRange.idl:28
&gt;&gt; +    JSGenerateToNativeObject,
&gt; 
&gt; It occurs to me that StaticRange also needs custom is reachable function.
&gt; InputEvent and HighlightRangeGroup hold onto them but we don&apos;t keep this wrapper alive.

Good point. I will make a test for this and tackle it. Annoying to have to do it for HighlightRangeGroup.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698819</commentid>
    <comment_count>5</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2020-10-16 16:35:46 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #4)
&gt; Comment on attachment 411623 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=411623&amp;action=review
&gt; 
&gt; Looks like there are some WPT progressions from this change.
&gt; 
&gt; &gt;&gt; Source/WebCore/dom/AbstractRange.idl:32
&gt; &gt;&gt; +    Exposed=Window,
&gt; &gt; 
&gt; &gt; Should we add a runtime flag for this?
&gt; 
&gt; I don’t think we should. This is a super-low-risk addition.
&gt; 
&gt; &gt;&gt; Source/WebCore/dom/Range.h:41
&gt; &gt;&gt; +class Range final : public AbstractRange {
&gt; &gt; 
&gt; &gt; Please make this iso-heaped.
&gt; 
&gt; OK. Will do!
&gt; 
&gt; Just curious, is that newly important now because of polymorphism or was it
&gt; already important before?

I think it would have been always important but now it&apos;s even more important since we&apos;d now have vtable pointer. If attacker can override that pointer, they can get to RCE rather quickly.

&gt; &gt;&gt; Source/WebCore/dom/Range.h:46
&gt; &gt;&gt; +    Node&amp; startContainer() const final { return m_start.container(); }
&gt; &gt; 
&gt; &gt; It&apos;s kind of silly that Range can&apos;t use SimpleRange as its internal data structure.
&gt; &gt; Then one of these member functions need to be virtual.
&gt; 
&gt; Interesting idea. It’s not a trivial change to make. Range uses a class
&gt; RangeBoundaryPoint to share code between start and end and using SimpleRange
&gt; as a base would require refactoring that. Should be possible, though!

Yeah, I know why we don&apos;t wanna do it in this patch but it seems a bit silly that we have a completely different data structures to basically store the same stuff.

&gt; 
&gt; &gt;&gt; Source/WebCore/dom/StaticRange.idl:28
&gt; &gt;&gt; +    JSGenerateToNativeObject,
&gt; &gt; 
&gt; &gt; It occurs to me that StaticRange also needs custom is reachable function.
&gt; &gt; InputEvent and HighlightRangeGroup hold onto them but we don&apos;t keep this wrapper alive.
&gt; 
&gt; Good point. I will make a test for this and tackle it. Annoying to have to
&gt; do it for HighlightRangeGroup.

Yeah. I had pointed out to Megan but we ended up not enabling it by default so didn&apos;t matter as much. However, InputEvent is a shipping feature so we most certainly need to fix that sooner than later.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698829</commentid>
    <comment_count>6</comment_count>
      <attachid>411632</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-16 17:04:57 -0700</bug_when>
    <thetext>Created attachment 411632
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698831</commentid>
    <comment_count>7</comment_count>
      <attachid>411633</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-16 17:09:24 -0700</bug_when>
    <thetext>Created attachment 411633
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698832</commentid>
    <comment_count>8</comment_count>
      <attachid>411633</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2020-10-16 17:12:37 -0700</bug_when>
    <thetext>Comment on attachment 411633
Patch

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

&gt; Source/WebCore/dom/Range.h:42
&gt; +    WTF_MAKE_ISO_ALLOCATED(Range);

You also need WTF_MAKE_ISO_ALLOCATED_IMPL in cpp files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698837</commentid>
    <comment_count>9</comment_count>
      <attachid>411635</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-16 17:36:58 -0700</bug_when>
    <thetext>Created attachment 411635
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698859</commentid>
    <comment_count>10</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-16 19:16:54 -0700</bug_when>
    <thetext>Anyone understand why JSAbstractRange.h seems to not be generated on GTK/WPE?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698860</commentid>
    <comment_count>11</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-16 19:17:44 -0700</bug_when>
    <thetext>I thought that adding AbstractRange.idl to CMakeLists.txt would be good enough.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698861</commentid>
    <comment_count>12</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-16 19:18:22 -0700</bug_when>
    <thetext>Same failure on all CMake platforms, it seems.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698862</commentid>
    <comment_count>13</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-16 19:19:14 -0700</bug_when>
    <thetext>I think I figured it out, needed to edit Headers.cmake.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698864</commentid>
    <comment_count>14</comment_count>
      <attachid>411644</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-16 19:22:17 -0700</bug_when>
    <thetext>Created attachment 411644
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698959</commentid>
    <comment_count>15</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-17 09:41:39 -0700</bug_when>
    <thetext>Does anyone understand the meaning of the iOS-wk2 EWS failure?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698987</commentid>
    <comment_count>16</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-17 13:33:59 -0700</bug_when>
    <thetext>Committed r268648: &lt;https://trac.webkit.org/changeset/268648&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698988</commentid>
    <comment_count>17</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-10-17 13:34:20 -0700</bug_when>
    <thetext>&lt;rdar://problem/70410623&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1789640</commentid>
    <comment_count>18</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-09-02 02:11:31 -0700</bug_when>
    <thetext>*** Bug 183561 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411623</attachid>
            <date>2020-10-16 15:20:52 -0700</date>
            <delta_ts>2020-10-16 17:09:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217846-20201016152052.patch</filename>
            <type>text/plain</type>
            <size>34775</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4NTYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGIwZGJhY2I1NTcyMjIz
OTE4NzU4NzUyYzFkYjU2NWZlMGEyZGY4NS4uNDE0NGJkODQzMzI2YTBhYjdiZDA3YmI5MzA4ZmZi
NzgyNjEzNDFhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDIwLTEwLTE2ICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgQWJzdHJhY3RSYW5nZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3ODQ2CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBtYWtl
cyB1cyBtb3JlIGFjY3VyYXRlbHkgbWF0Y2ggdGhlIERPTSBzcGVjaWZpY2F0aW9uLCBtYWtlcyBS
YW5nZQorICAgICAgICBhbmQgU3RhdGljUmFuZ2Ugb2JqZWN0cyBzbGlnaHRseSBiaWdnZXIgc2lu
Y2UgdGhleSBub3cgaGF2ZSBhIHZpcnR1YWwKKyAgICAgICAgdGFibGUgcG9pbnRlciwgYW5kIG1h
a2VzIHRoZSBBYnN0cmFjdFJhbmdlIG1ldGhvZHMgYSBiaXQgc2xvd2VyIHRvIGNhbGwKKyAgICAg
ICAgZnJvbSBKYXZhU2NyaXB0IHNpbmNlIHRoZXkgYXJlIGJhY2tlZCBieSBDKysgdmlydHVhbCBm
dW5jdGlvbnMuCisKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0OiBB
ZGRlZCBBYnN0cmFjdFJhbmdlIGZpbGVzLgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1
dC54Y2ZpbGVsaXN0OiBEaXR0by4KKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOiBEaXR0
by4KKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOiBEaXR0by4KKyAgICAgICAgKiBTb3VyY2VzLnR4
dDogRGl0dG8uCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBE
aXR0by4KKyAgICAgICAgQWxzbyByZW1vdmVkIHJlZmVyZW5jZSB0byBub24tZXhpc3RlbnQgSlNB
dWRpb05vZGVDdXN0b20uY3BwIGFuZCBtb3ZlZAorICAgICAgICBKU1N0YXRpY1JhbmdlIGZpbGUg
ZnJvbSB0aGUgRXZlbnRzIGdyb3VwIGludG8gdGhlIFJhbmdlcyBncm91cC4KKworICAgICAgICAq
IGJpbmRpbmdzL2pzL0pTQWJzdHJhY3RSYW5nZUN1c3RvbS5jcHA6IEFkZGVkLgorICAgICAgICAo
V2ViQ29yZTo6dG9KUyk6IEFkZGVkLiBKdXN0IHRoZSBkZWZhdWx0IGltcGxlbWVudGF0aW9uLiBX
b3VsZCBiZQorICAgICAgICBuaWNlIGlmIHdlIGRpZCBub3QgaGF2ZSB0byB3cml0ZSB0aGlzLgor
ICAgICAgICAoV2ViQ29yZTo6dG9KU05ld2x5Q3JlYXRlZCk6IE1ha2UgZWl0aGVyIGEgU3RhdGlj
UmFuZ2Ugb3IgUmFuZ2UKKyAgICAgICAgd3JhcHBlciBkZXBlbmRpbmcgb24gd2hldGhlciB0aGlz
IGlzIGEgbGl2ZSByYW5nZSBvciBub3QuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0V2ZW50
Q3VzdG9tLmNwcDogUmVtb3ZlZCBsb3RzIG9mIHVubmVlZGVkIGluY2x1ZGVzLgorICAgICAgICAo
V2ViQ29yZTo6dG9KUyk6IFN0b3BwZWQgdXNpbmcgInVzaW5nIG5hbWVzcGFjZSBKU0MiLgorCisg
ICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oOiBBZGRlZCBBYnN0cmFj
dFJhbmdlLgorCisgICAgICAgICogZG9tL0Fic3RyYWN0UmFuZ2UuY3BwOiBBZGRlZC4KKyAgICAg
ICAgKFdlYkNvcmU6Om1ha2VTaW1wbGVSYW5nZSk6IEFkZGVkLgorICAgICAgICAqIGRvbS9BYnN0
cmFjdFJhbmdlLmg6IEFkZGVkLgorICAgICAgICAqIGRvbS9BYnN0cmFjdFJhbmdlLmlkbDogQWRk
ZWQuCisKKyAgICAgICAgKiBkb20vUmFuZ2UuaDogQ2hhbmdlZCB0byBkZXJpdmUgZnJvbSBBYnN0
cmFjdFJhbmdlIGluc3RlYWQgb2YKKyAgICAgICAgZnJvbSBSZWZDb3VudGVkLiBBbHNvIG1hcmtl
ZCB0aGlzIGZpbmFsIHNpbmNlIGl0J3Mgbm93IHBvbHltb3JwaGljLgorICAgICAgICBNYXJrZWQg
YWxsIHRoZSBmdW5jdGlvbnMgdGhhdCBvdmVycmlkZSBmaW5hbCBhcyB3ZWxsLCB0byBjaGVjayB0
aGF0CisgICAgICAgIHRoZXkgY29ycmVjdGx5IG92ZXJyaWRlIHRoZSB2aXJ0dWFsIGZ1bmN0aW9u
cyBpbiB0aGUgYmFzZSBjbGFzcy4KKyAgICAgICAgQWRkZWQgcHJpdmF0ZSBpc0xpdmVSYW5nZSBm
dW5jdGlvbiBvdmVycmlkZSB0aGF0IHJldHVybnMgdHJ1ZS4KKyAgICAgICAgQWRkZWQgU1BFQ0lB
TElaRV9UWVBFX1RSQUlUU19CRUdJTi9FTkQgc28gd2UgY2FuIGRvIGlzPFJhbmdlPi4KKworICAg
ICAgICAqIGRvbS9SYW5nZS5pZGw6IFJlbW92ZWQgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZS4g
QWRkZWQKKyAgICAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LiBJbmhlcml0IGZyb20gQWJz
dHJhY3RSYW5nZS4KKyAgICAgICAgUmVtb3ZlZCB0aGUgNSBhdHRyaWJ1dGUgZ2V0dGVycyB0aGF0
IGFyZSBub3cgaW5oZXJpdGVkIGZyb20gQWJzdHJhY3RSYW5nZS4KKworICAgICAgICAqIGRvbS9T
dGF0aWNSYW5nZS5oOiBDaGFuZ2VkIHRvIGRlcml2ZSBmcm9tIEFic3RyYWN0UmFuZ2UgaW5zdGVh
ZCBvZgorICAgICAgICBmcm9tIFJlZkNvdW50ZWQuIEFsc28gbWFya2VkIHRoaXMgZmluYWwgc2lu
Y2UgaXQncyBub3cgcG9seW1vcnBoaWMuCisgICAgICAgIEFkZGVkIGZ1bmN0aW9ucyB0byBvdmVy
cmlkZSB0aGUgb25lcyBmcm9tIFN0YXRpY1JhbmdlLCBjYWxsaW5nIHRocm91Z2gKKyAgICAgICAg
dG8gdGhlIG9uZXMgZnJvbSBTaW1wbGVSYW5nZSAoSSB0aG91Z2h0IHRoZXJlIHdhcyBhIHdheSB0
byBkbyB0aGlzCisgICAgICAgIHdpdGggdXNpbmcsIGJ1dCBJIGNvdWxkbid0IGZpZ3VyZSB0aGF0
IG91dCkuIEFkZGVkIHByaXZhdGUgaXNMaXZlUmFuZ2UKKyAgICAgICAgZnVuY3Rpb24gb3ZlcnJp
ZGUgdGhhdCByZXR1cm5zIGZhbHNlLiBBZGRlZCBTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lO
L0VORAorICAgICAgICBzbyB3ZSBjYW4gZG8gaXM8U3RhdGljUmFuZ2U+LgorCisgICAgICAgICog
ZG9tL1N0YXRpY1JhbmdlLmlkbDogUmVtb3ZlZCBFbmFibGVkQnlTZXR0aW5nPUlucHV0RXZlbnRz
IHNpbmNlCisgICAgICAgIHRoaXMgc2hvdWxkIG5vdyBhbHdheXMgYmUgaW5jbHVkZWQuIEkgdGhp
bmsgd2Ugc2hvdWxkIHByb2JhYmx5IHJlbW92ZSB0aGUKKyAgICAgICAgSW5wdXRFdmVudHMgc2V0
dGluZyBub3cgZW50aXJlbHkuIFJlbW92ZWQgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZS4KKyAg
ICAgICAgQWRkZWQgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LiBJbmhlcml0IGZyb20gQWJzdHJh
Y3RSYW5nZS4KKyAgICAgICAgUmVtb3ZlZCBhbGwgNSBhdHRyaWJ1dGUgZ2V0dGVycywgd2hpY2gg
YXJlIG5vdyBpbmhlcml0ZWQgZnJvbSBBYnN0cmFjdFJhbmdlLgorCiAyMDIwLTEwLTE1ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSBE
b24ndCBjaGFuZ2UgdGhlIHRleHQgbWF0cml4IG11bHRpcGxlIHRpbWVzIGluc2lkZSBGb250Q2Fz
Y2FkZTo6ZHJhd0dseXBocygpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy1pbnB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5w
dXQueGNmaWxlbGlzdAppbmRleCA4NmEwNzc0MWYzODQ0NzkyMGFhMGU5Mjc2MmJkNGUwZTZlNjJk
ZDcwLi43YTQ1NDFkMTdmZWIzZTA4MjgxZWFhZmMwNDM5ZmEwYjJhNzZjMjkwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKQEAgLTY3NSw2ICs2
NzUsNyBAQCAkKFBST0pFQ1RfRElSKS9jc3MvdHlwZWRvbS9UeXBlZE9NQ1NTVW5wYXJzZWRWYWx1
ZS5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9BYm9ydEFsZ29yaXRobS5pZGwKICQoUFJPSkVDVF9E
SVIpL2RvbS9BYm9ydENvbnRyb2xsZXIuaWRsCiAkKFBST0pFQ1RfRElSKS9kb20vQWJvcnRTaWdu
YWwuaWRsCiskKFBST0pFQ1RfRElSKS9kb20vQWJzdHJhY3RSYW5nZS5pZGwKICQoUFJPSkVDVF9E
SVIpL2RvbS9BbmltYXRpb25FdmVudC5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9BdHRyLmlkbAog
JChQUk9KRUNUX0RJUikvZG9tL0JlZm9yZUxvYWRFdmVudC5pZGwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKaW5kZXggZTIxZmM4MDU2MTI0ZWJl
YWEwOTJkMmZjOGY2NmU0NzY2ZDI4NmYwZS4uYWIzMWFiYTFmZjVkYzdhM2VkMGI0ZGQ3ZjAzMzk4
NTUzYmYzZThkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0
cHV0LnhjZmlsZWxpc3QKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0
LnhjZmlsZWxpc3QKQEAgLTQ2LDYgKzQ2LDggQEAgJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNBYm9ydENvbnRyb2xsZXIuY3BwCiAkKEJVSUxUX1BST0RVQ1RT
X0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0Fib3J0Q29udHJvbGxlci5oCiAkKEJVSUxU
X1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0Fib3J0U2lnbmFsLmNwcAog
JChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNBYm9ydFNpZ25h
bC5oCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0Fic3Ry
YWN0UmFuZ2UuY3BwCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS9KU0Fic3RyYWN0UmFuZ2UuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvSlNBYnN0cmFjdFdvcmtlci5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJp
dmVkU291cmNlcy9XZWJDb3JlL0pTQWJzdHJhY3RXb3JrZXIuaAogJChCVUlMVF9QUk9EVUNUU19E
SVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNBY2Nlc3NpYmlsaXR5Um9sZS5jcHAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDY1MTNiOGJlYzM1MTdmN2RiYzQ2MzAyZGQ2OTky
ZDI0ZThhMjBkZDQuLmMwNDgyYmU0ZWQ5ZjUzMGQ2ODk3YjkzNGEwZDU1NzhlMDEzYmIzZmYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNzA2LDYgKzcwNiw3IEBAIEpTX0JJTkRJ
TkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL2RvbS9BYm9ydEFsZ29yaXRobS5pZGwgXAogICAg
ICQoV2ViQ29yZSkvZG9tL0Fib3J0Q29udHJvbGxlci5pZGwgXAogICAgICQoV2ViQ29yZSkvZG9t
L0Fib3J0U2lnbmFsLmlkbCBcCisgICAgJChXZWJDb3JlKS9kb20vQWJzdHJhY3RSYW5nZS5pZGwg
XAogICAgICQoV2ViQ29yZSkvZG9tL0FuaW1hdGlvbkV2ZW50LmlkbCBcCiAgICAgJChXZWJDb3Jl
KS9kb20vQXR0ci5pZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0JlZm9yZUxvYWRFdmVudC5pZGwg
XApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJD
b3JlL0hlYWRlcnMuY21ha2UKaW5kZXggMGFkZTdkOGM4ZDRiMmYyZDk4ZDZkMzkwZTkzOGFiMzNl
Yjc0NTgxNy4uZjY5NjRlNWNmNzkzZjZiMTlhMTUyYzNkZDQzOTg1NmQ3NGQ4MjYxNiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9I
ZWFkZXJzLmNtYWtlCkBAIC0zNzEsNiArMzcxLDcgQEAgc2V0KFdlYkNvcmVfUFJJVkFURV9GUkFN
RVdPUktfSEVBREVSUwogICAgIGRpc3BsYXkvY3NzL0Rpc3BsYXlSZXBsYWNlZEJveC5oCiAgICAg
ZGlzcGxheS9jc3MvRGlzcGxheVN0eWxlLmgKIAorICAgIGRvbS9BYnN0cmFjdFJhbmdlLmgKICAg
ICBkb20vQWN0aXZlRE9NQ2FsbGJhY2suaAogICAgIGRvbS9BY3RpdmVET01PYmplY3QuaAogICAg
IGRvbS9BdHRyLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0IGIvU291
cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggYWVmMWI2MjMyMTI1ZTM2NDliOTBmNDNkZTM4
OTZhOWQwY2FjN2FkOS4uMDBiYjQ1ODFiNGQ5MjNhMjMyOWI3MDBjMTkzNzJlYTY2MTYyNjYyMyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dlYkNv
cmUvU291cmNlcy50eHQKQEAgLTQ2Nyw2ICs0NjcsNyBAQCBiaW5kaW5ncy9qcy9HQ0NvbnRyb2xs
ZXIuY3BwCiBiaW5kaW5ncy9qcy9JREJCaW5kaW5nVXRpbGl0aWVzLmNwcAogYmluZGluZ3MvanMv
SlNBYm9ydENvbnRyb2xsZXJDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0Fib3J0U2lnbmFsQ3Vz
dG9tLmNwcAorYmluZGluZ3MvanMvSlNBYnN0cmFjdFJhbmdlQ3VzdG9tLmNwcAogYmluZGluZ3Mv
anMvSlNBbmltYXRpb25FZmZlY3RDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0FuaW1hdGlvblRp
bWVsaW5lQ3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNBdHRyQ3VzdG9tLmNwcApAQCAtODE2LDYg
KzgxNyw3IEBAIGRpc3BsYXkvRGlzcGxheVRyZWVCdWlsZGVyLmNwcAogZGlzcGxheS9EaXNwbGF5
Vmlldy5jcHAKIGRvbS9BYm9ydENvbnRyb2xsZXIuY3BwCiBkb20vQWJvcnRTaWduYWwuY3BwCitk
b20vQWJzdHJhY3RSYW5nZS5jcHAKIGRvbS9BY3RpdmVET01DYWxsYmFjay5jcHAKIGRvbS9BY3Rp
dmVET01PYmplY3QuY3BwCiBkb20vQWxsRGVzY2VuZGFudHNDb2xsZWN0aW9uLmNwcApAQCAtMjY1
NCw2ICsyNjU2LDcgQEAgSlNBTkdMRUluc3RhbmNlZEFycmF5cy5jcHAKIEpTQWJvcnRBbGdvcml0
aG0uY3BwCiBKU0Fib3J0Q29udHJvbGxlci5jcHAKIEpTQWJvcnRTaWduYWwuY3BwCitKU0Fic3Ry
YWN0UmFuZ2UuY3BwCiBKU0Fic3RyYWN0V29ya2VyLmNwcAogSlNBZGRyZXNzRXJyb3JzLmNwcAog
SlNBZXNDYmNDZmJQYXJhbXMuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMWFjZjE0NDM5OTI0ODU4MTQ4ZGQyMGI5ZThkZTdh
NTFlM2IyMmRjZS4uZDk5M2I4MjZiNTFlNWM3Nzc5MWM3NjJhM2RkODZlYjhjZGE5N2I5MiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtMjczMSw2ICsyNzMxLDcgQEAKIAkJOTM0RjcxM0MwRDVBNkYxOTAwMDE4RDY5IC8qIFJlc291
cmNlRXJyb3JCYXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA5MzRGNzEzQjBENUE2RjE5MDAwMThENjkgLyogUmVzb3VyY2VFcnJvckJhc2UuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzUwMEYzMjEz
RkRFM0JFMDA5OUVDMjQgLyogTlNTY3JvbGxlckltcERldGFpbHMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNTAwRjMxMTNGREUzQkUwMDk5RUMyNCAv
KiBOU1Njcm9sbGVySW1wRGV0YWlscy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCTkzNTIwN0JFMDlCRDQxMEEwMEYyMDM4RCAvKiBMb2NhbGl6ZWRT
dHJpbmdzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
MzUyMDdCRDA5QkQ0MTBBMDBGMjAzOEQgLyogTG9jYWxpemVkU3RyaW5ncy5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzNTVFRjUxMjUzQTQyNzkw
MDZGRjRBNCAvKiBKU0Fic3RyYWN0UmFuZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzNTVFRjRGMjUzQTQyNzgwMDZGRjRBNCAvKiBKU0Fic3RyYWN0
UmFuZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owog
CQk5MzVDNDc2MzA5QUM0Q0U2MDBBNkFBQjQgLyogTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1QzQ3
NjIwOUFDNENFNjAwQTZBQUI0IC8qIE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMuaCAqLzsg
fTsKIAkJOTM1QzQ3NjgwOUFDNEQ0MzAwQTZBQUI0IC8qIFBsYXRmb3JtS2V5Ym9hcmRFdmVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1QzQ3NjYw
OUFDNEQ0MzAwQTZBQUI0IC8qIFBsYXRmb3JtS2V5Ym9hcmRFdmVudC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNUM0NzY5MDlBQzRENDMwMEE2
QUFCNCAvKiBQbGF0Zm9ybU1vdXNlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUM0NzY3MDlBQzRENDMwMEE2QUFCNCAvKiBQbGF0Zm9ybU1v
dXNlRXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwpAQCAtMjc3Nyw2ICsyNzc4LDcgQEAKIAkJOTNDNEE0MTUxNjI5REY1QTAwQzNFQjZFIC8qIFNj
cm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQzRBNDEzMTYyOURGNUEwMEMzRUI2RSAvKiBTY3Jv
bGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTNDNEY2RUIxMTA4RjlBNTAwOTlEMERCIC8qIEFj
Y2Vzc2liaWxpdHlTY3JvbGxiYXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzQzRGNkU5MTEwOEY5QTUwMDk5RDBEQiAvKiBBY2Nlc3NpYmlsaXR5U2Ny
b2xsYmFyLmggKi87IH07CiAJCTkzQ0NGMDI3MEFGNkM1MjkwMDAxOEU4OSAvKiBOYXZpZ2F0aW9u
QWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
M0NDRjAyNjBBRjZDNTI5MDAwMThFODkgLyogTmF2aWdhdGlvbkFjdGlvbi5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzRDA1MDMyMjUzQTE0OUEw
MDJBMzA3MiAvKiBBYnN0cmFjdFJhbmdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5M0QwNTAyRTI1M0ExNDhBMDAyQTMwNzIgLyogQWJzdHJhY3RSYW5n
ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkz
RDE5NjMxMUQ2Q0FCNzYwMEZDN0U0NyAvKiBFeGNlcHRpb25Pci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNEMTk2MzAxRDZDQUI3NjAwRkM3RTQ3IC8q
IEV4Y2VwdGlvbk9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKIAkJOTNEMTk2MzMxRDZDQUI4MjAwRkM3RTQ3IC8qIEV4Y2VwdGlvbi5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNEMTk2MzIxRDZDQUI4MjAw
RkM3RTQ3IC8qIEV4Y2VwdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CiAJCTkzRDQzNzlGMUQ1N0IxNTMwMEFCODVFQSAvKiBKU0V4ZWNTdGF0ZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOEY5MzREODMx
MTg5RjFFRTAwNTA4RDVEIC8qIEpTRXhlY1N0YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTc0NDUsNyArNzQ0Nyw2IEBACiAJCTNGQkM0QUYx
MTg5ODgxNTYwMDQ2RUUzOCAvKiBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbSAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFZpZGVvRnVsbHNjcmVlbkludGVy
ZmFjZUFWS2l0Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzRkJDNEFGMjE4OTg4
MTU2MDA0NkVFMzggLyogVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEwMjRGQzgyM0NGMjU0RjAwRkRGOThFIC8q
IFNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTYW1wbGVC
dWZmZXJEaXNwbGF5TGF5ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk0MTA2
MjZBNzIyODBBMjJBMDA2RDFCNTkgLyogSlNBdWRpb05vZGVDdXN0b20uY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBdWRpb05vZGVDdXN0b20uY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk0MTA3OTA4QTFGQzNFNEYyMDA2MUIyN0EgLyogQ2xpZW50
T3JpZ2luLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENsaWVudE9yaWdpbi5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTA4N0YwMTI0OEU1OUM4MDA2ODBFOTEg
LyogQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXJVbml0LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVyVW5pdC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMDg3RjAzMjQ4RTU5QzkwMDY4MEU5
MSAvKiBBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlclVuaXQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXJVbml0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMTI0Niw2ICsxMTI0Nyw5IEBACiAJCTkzNTAw
RjMxMTNGREUzQkUwMDk5RUMyNCAvKiBOU1Njcm9sbGVySW1wRGV0YWlscy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBOU1Njcm9sbGVySW1wRGV0YWlscy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk5MzUyMDdCRDA5QkQ0MTBBMDBGMjAzOEQgLyogTG9jYWxpemVk
U3RyaW5ncy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMb2NhbGl6ZWRTdHJp
bmdzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNTM2NzZBMDlBRUQ4OEIwMEQz
NUNENiAvKiBTY3JvbGxWaWV3TWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gU2Nyb2xsVmlld01hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTM1NUVGNEYyNTNBNDI3ODAwNkZGNEE0IC8qIEpTQWJzdHJhY3RSYW5nZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU0Fic3RyYWN0UmFuZ2UuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTM1NUVGNTAyNTNBNDI3OTAwNkZGNEE0IC8qIEpTQWJzdHJhY3RSYW5n
ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0Fic3RyYWN0UmFu
Z2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzU1RUY1MzI1M0E0RDVBMDA2
RkY0QTQgLyogSlNBYnN0cmFjdFJhbmdlQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
QWJzdHJhY3RSYW5nZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkz
NUM0NzYyMDlBQzRDRTYwMEE2QUFCNCAvKiBNb3VzZUV2ZW50V2l0aEhpdFRlc3RSZXN1bHRzLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJl
c3VsdHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM1QzQ3NjYwOUFDNEQ0MzAw
QTZBQUI0IC8qIFBsYXRmb3JtS2V5Ym9hcmRFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBQbGF0Zm9ybUtleWJvYXJkRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJOTM1QzQ3NjcwOUFDNEQ0MzAwQTZBQUI0IC8qIFBsYXRmb3JtTW91c2VFdmVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0Zm9ybU1vdXNlRXZlbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTExMzMzLDYgKzExMzM3LDkgQEAKIAkJOTND
QTRDQTIwOURGOTNGQTAwREY4Njc3IC8qIHN2Zy5jc3MgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
c3ZnLmNzczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTNDQ0YwMjYwQUY2QzUyOTAw
MDE4RTg5IC8qIE5hdmlnYXRpb25BY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gTmF2aWdhdGlvbkFjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5
M0NDRjA1RjBBRjZDQTc2MDAwMThFODkgLyogTmF2aWdhdGlvbkFjdGlvbi5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOYXZpZ2F0aW9uQWN0aW9uLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNEMDUwMkUyNTNBMTQ4QTAwMkEzMDcyIC8qIEFic3Ry
YWN0UmFuZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWJzdHJhY3RSYW5nZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5M0QwNTAzMDI1M0ExNDhDMDAyQTMwNzIgLyogQWJzdHJhY3RSYW5n
ZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gQWJzdHJhY3RSYW5nZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTkzRDA1MDMxMjUzQTE0OEMwMDJBMzA3MiAvKiBBYnN0cmFjdFJhbmdlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEFic3RyYWN0UmFuZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk5M0QxOTYzMDFENkNBQjc2MDBGQzdFNDcgLyogRXhjZXB0aW9uT3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXhjZXB0aW9uT3IuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJOTNEMTk2MzIxRDZDQUI4MjAwRkM3RTQ3IC8qIEV4Y2VwdGlvbi5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFeGNlcHRpb24uaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJOTNEOUQ1M0IwREEyN0UxODAwNzcyMTZDIC8qIFJhbmdlQm91bmRhcnlQ
b2ludC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSYW5nZUJvdW5kYXJ5UG9p
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIyMjI0LDEwICsyMjIzMSwxMCBA
QAogCQkJY2hpbGRyZW4gPSAoCiAJCQkJNDEwOTM4MjgyMzQ3Nzk5QTAwOTQyOEJBIC8qIEpTQWJv
cnRDb250cm9sbGVyQ3VzdG9tLmNwcCAqLywKIAkJCQk0MTA5MzgyQzIzNDc4NTBFMDA5NDI4QkEg
LyogSlNBYm9ydFNpZ25hbEN1c3RvbS5jcHAgKi8sCisJCQkJOTM1NUVGNTMyNTNBNEQ1QTAwNkZG
NEE0IC8qIEpTQWJzdHJhY3RSYW5nZUN1c3RvbS5jcHAgKi8sCiAJCQkJNzFFRkNFREUyMDJCMzlD
NzAwRDdDNDExIC8qIEpTQW5pbWF0aW9uRWZmZWN0Q3VzdG9tLmNwcCAqLywKIAkJCQk3MTAyNUVE
NTFGOTlGMTQ3MDA0QTI1MEMgLyogSlNBbmltYXRpb25UaW1lbGluZUN1c3RvbS5jcHAgKi8sCiAJ
CQkJQkMyRUQ2QkIwQzZCRDJGMDAwOTIwQkZGIC8qIEpTQXR0ckN1c3RvbS5jcHAgKi8sCi0JCQkJ
NDEwNjI2QTcyMjgwQTIyQTAwNkQxQjU5IC8qIEpTQXVkaW9Ob2RlQ3VzdG9tLmNwcCAqLywKIAkJ
CQlCRTZERjcwRTE3MUNBMkRBMDBERDUyQjggLyogSlNBdWRpb1RyYWNrQ3VzdG9tLmNwcCAqLywK
IAkJCQlCRTZERjcxMDE3MUNBMkRBMDBERDUyQjggLyogSlNBdWRpb1RyYWNrTGlzdEN1c3RvbS5j
cHAgKi8sCiAJCQkJODNGMzdBNjcyNTM2QjIxQjAwRkY1RjNCIC8qIEpTQXVkaW9Xb3JrbGV0UHJv
Y2Vzc29yQ3VzdG9tLmNwcCAqLywKQEAgLTI1MTUyLDggKzI1MTU5LDYgQEAKIAkJCQlBNTc4RjQz
QTFERTAxM0ZCMDAzREZDNkEgLyogSlNQcm9taXNlUmVqZWN0aW9uRXZlbnQuaCAqLywKIAkJCQlD
RUQwNkFDRTFDNzc3NTQ4MDBGREZBRjEgLyogSlNTZWN1cml0eVBvbGljeVZpb2xhdGlvbkV2ZW50
LmNwcCAqLywKIAkJCQlDRUQwNkFDRjFDNzc3NTQ4MDBGREZBRjEgLyogSlNTZWN1cml0eVBvbGlj
eVZpb2xhdGlvbkV2ZW50LmggKi8sCi0JCQkJQTg2NjI5Q0UwOURBMkI0NzAwOTYzM0E3IC8qIEpT
U3RhdGljUmFuZ2UuY3BwICovLAotCQkJCUE4NjYyOUNEMDlEQTJCNDcwMDk2MzNBNyAvKiBKU1N0
YXRpY1JhbmdlLmggKi8sCiAJCQkJOTMzQTE0QjYwQjdEMUQ1MjAwQTUzRkZEIC8qIEpTVGV4dEV2
ZW50LmNwcCAqLywKIAkJCQk5MzNBMTRCNzBCN0QxRDUyMDBBNTNGRkQgLyogSlNUZXh0RXZlbnQu
aCAqLywKIAkJCQkwRkRBN0MxMDE4ODMyMkVCMDBDOTU0QjUgLyogSlNUb3VjaC5jcHAgKi8sCkBA
IC0yNjc3OCw4ICsyNjc4MywxMiBAQAogCQlCQzk4NTQ0NjBDRDNEQTVGMDAwNjlCQzEgLyogUmFu
Z2VzICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQk5MzU1
RUY1MDI1M0E0Mjc5MDA2RkY0QTQgLyogSlNBYnN0cmFjdFJhbmdlLmNwcCAqLywKKwkJCQk5MzU1
RUY0RjI1M0E0Mjc4MDA2RkY0QTQgLyogSlNBYnN0cmFjdFJhbmdlLmggKi8sCiAJCQkJNjVERjMx
RUQwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTUmFuZ2UuY3BwICovLAogCQkJCTY1REYzMUVFMDlEMUND
NjAwMDBCRTMyNSAvKiBKU1JhbmdlLmggKi8sCisJCQkJQTg2NjI5Q0UwOURBMkI0NzAwOTYzM0E3
IC8qIEpTU3RhdGljUmFuZ2UuY3BwICovLAorCQkJCUE4NjYyOUNEMDlEQTJCNDcwMDk2MzNBNyAv
KiBKU1N0YXRpY1JhbmdlLmggKi8sCiAJCQkpOwogCQkJbmFtZSA9IFJhbmdlczsKIAkJCXNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC0yOTI5OSw2ICsyOTMwOCw5IEBACiAJCQkJN0NEMEUyQkQx
RjgwQTU2RTAwMTZBNENFIC8qIEFib3J0U2lnbmFsLmNwcCAqLywKIAkJCQk3Q0QwRTJCQzFGODBB
NTZFMDAxNkE0Q0UgLyogQWJvcnRTaWduYWwuaCAqLywKIAkJCQk3Q0QwRTJCRTFGODBBNTZFMDAx
NkE0Q0UgLyogQWJvcnRTaWduYWwuaWRsICovLAorCQkJCTkzRDA1MDMxMjUzQTE0OEMwMDJBMzA3
MiAvKiBBYnN0cmFjdFJhbmdlLmNwcCAqLywKKwkJCQk5M0QwNTAyRTI1M0ExNDhBMDAyQTMwNzIg
LyogQWJzdHJhY3RSYW5nZS5oICovLAorCQkJCTkzRDA1MDMwMjUzQTE0OEMwMDJBMzA3MiAvKiBB
YnN0cmFjdFJhbmdlLmlkbCAqLywKIAkJCQk3QzUyMjI5NzFFMURBRTE2MDAyQ0I4RjcgLyogQWN0
aXZlRE9NQ2FsbGJhY2suY3BwICovLAogCQkJCTdDNTIyMjk4MUUxREFFMTYwMDJDQjhGNyAvKiBB
Y3RpdmVET01DYWxsYmFjay5oICovLAogCQkJCUUxQzRERTZEMEVBNzVDNjUwMDIzQ0NENiAvKiBB
Y3RpdmVET01PYmplY3QuY3BwICovLApAQCAtMzA0MjksNiArMzA0NDEsNyBAQAogCQkJCTQ2Qjk1
MTk1MjA3RDYzMzQwMEE3RDJERCAvKiBBYnN0cmFjdERPTVdpbmRvdy5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNDZCOTUxOTYyMDdENjMzQTAwQTdEMkREIC8qIEFic3RyYWN0RnJhbWUuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUY0ODIyMzEzMUUzODZFMjQwMDY2RkM3OSAvKiBBYnN0cmFjdFBhc3RlYm9h
cmQuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzRDA1MDMyMjUzQTE0OUEwMDJBMzA3MiAvKiBBYnN0
cmFjdFJhbmdlLmggaW4gSGVhZGVycyAqLywKIAkJCQk0MUUxQjFEMTBGRjU5ODY5MDA1NzZCM0Ig
LyogQWJzdHJhY3RXb3JrZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTI5QTgxMjJFMEZCQjlDMUQw
MDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5QVJJQUdyaWRDZWxsLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkyOUE4MTIzMzBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0eUFSSUFHcmlkUm93Lmgg
aW4gSGVhZGVycyAqLywKQEAgLTMyMDE2LDYgKzMyMDI5LDcgQEAKIAkJCQk3MTI0N0UzODFGRUE1
Rjg2MDA4QzA4Q0UgLyogSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uLmggaW4gSGVhZGVycyAq
LywKIAkJCQk3QzMwRDk4NDFGODE1QUVDMDAyNjgzNTYgLyogSlNBYm9ydENvbnRyb2xsZXIuaCBp
biBIZWFkZXJzICovLAogCQkJCTdDMzBEOTg2MUY4MTVBRUMwMDI2ODM1NiAvKiBKU0Fib3J0U2ln
bmFsLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzU1RUY1MTI1M0E0Mjc5MDA2RkY0QTQgLyogSlNB
YnN0cmFjdFJhbmdlLmggaW4gSGVhZGVycyAqLywKIAkJCQk0MThGODgwNTBGRjk1N0FGMDA4MEYw
NDUgLyogSlNBYnN0cmFjdFdvcmtlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTE2NzdFMTMyMTNF
MDNDNjAwQTA4QzM0IC8qIEpTQWRkcmVzc0Vycm9ycy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTcw
NDQwNUExRTUzOTM2MjAwMzU2NjAxIC8qIEpTQWVzQ2JjQ2ZiUGFyYW1zLmggaW4gSGVhZGVycyAq
LywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQWJzdHJhY3RSYW5n
ZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0Fic3RyYWN0UmFuZ2VD
dXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU3Mzg2ZDEzYTIwN2E5NTNiZDI5Zjg5NzUyMTczYTIwZTUx
YjZmOTMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0Fi
c3RyYWN0UmFuZ2VDdXN0b20uY3BwCkBAIC0wLDAgKzEsNDcgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSlNBYnN0cmFjdFJhbmdlLmgiCisKKyNpbmNsdWRl
ICJKU0RPTVdyYXBwZXJDYWNoZS5oIgorI2luY2x1ZGUgIkpTUmFuZ2UuaCIKKyNpbmNsdWRlICJK
U1N0YXRpY1JhbmdlLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworSlNDOjpKU1ZhbHVlIHRv
SlMoSlNDOjpKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgQWJzdHJhY3RSYW5nZSYgcmFuZ2UpCit7CisgICAgcmV0dXJu
IHdyYXAobGV4aWNhbEdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LCByYW5nZSk7Cit9CisKK0pT
Qzo6SlNWYWx1ZSB0b0pTTmV3bHlDcmVhdGVkKEpTQzo6SlNHbG9iYWxPYmplY3QqLCBKU0RPTUds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBSZWY8QWJzdHJhY3RSYW5nZT4mJiByYW5nZSkKK3sK
KyAgICBpZiAoaXM8U3RhdGljUmFuZ2U+KHJhbmdlLmdldCgpKSkKKyAgICAgICAgcmV0dXJuIGNy
ZWF0ZVdyYXBwZXI8U3RhdGljUmFuZ2U+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShyYW5nZSkpOwor
ICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFJhbmdlPihnbG9iYWxPYmplY3QsIFdURk1vdmUocmFu
Z2UpKTsKK30KKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNF
dmVudEN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9t
LmNwcAppbmRleCA1YmViNGQ4Y2I1MDdjY2RhODY0Y2M1MWI0Njg5ZDI3ZDIwNDcxOTczLi42NGYx
YjUwYjI0ZmI4MzZjYjg3NzBmMjVhMDVmMGRhNTc4ZGNlM2M5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcApAQCAtMjksMjQgKzI5LDEzIEBACiAjaW5j
bHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSlNFdmVudC5oIgogCi0jaW5jbHVkZSAiRGF0YVRy
YW5zZmVyLmgiCi0jaW5jbHVkZSAiRXZlbnQuaCIKLSNpbmNsdWRlICJFdmVudEhlYWRlcnMuaCIK
LSNpbmNsdWRlICJFdmVudEludGVyZmFjZXMuaCIKLSNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIK
LSNpbmNsdWRlICJKU0RhdGFUcmFuc2Zlci5oIgotI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pT
TG9jay5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L0F0b21TdHJpbmcuaD4KLQorI2luY2x1ZGUgIkpT
RE9NV3JhcHBlckNhY2hlLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKLXVzaW5nIG5hbWVzcGFj
ZSBKU0M7CiAKLUpTVmFsdWUgdG9KUyhKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVj
dCwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgRXZlbnQmIGV2ZW50KQorSlNWYWx1
ZSB0b0pTKEpTQzo6SlNHbG9iYWxPYmplY3QqIGxleGljYWxHbG9iYWxPYmplY3QsIEpTRE9NR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEV2ZW50JiBldmVudCkKIHsKICAgICByZXR1cm4gd3Jh
cChsZXhpY2FsR2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QsIGV2ZW50KTsKIH0KIAotI3VuZGVm
IFRSWV9UT19XUkFQX1dJVEhfSU5URVJGQUNFCi0KIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMu
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaAppbmRl
eCA0YzA4MzE4YmY2YzRlZjcwYzI3YjNhMTgwMDY3MjA1Nzc2YWEwOWM4Li45NzAyY2M1OTcyZTk5
NTc5NmIxNzg0YjY5YjAwYjYyNzE3MWY0NDM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCkBAIC00MSw2ICs0MSw3IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAogI2RlZmluZSBXRUJDT1JFX0NPTU1PTl9QUklWQVRFX0lERU5USUZJRVJT
X0VBQ0hfUFJPUEVSVFlfTkFNRShtYWNybykgXAogICAgIG1hY3JvKEFib3J0U2lnbmFsKSBcCisg
ICAgbWFjcm8oQWJzdHJhY3RSYW5nZSkgXAogICAgIG1hY3JvKEFuaW1hdGlvbikgXAogICAgIG1h
Y3JvKEFuaW1hdGlvbkVmZmVjdCkgXAogICAgIG1hY3JvKEFuaW1hdGlvblBsYXliYWNrRXZlbnQp
IFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJhbmdlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJhbmdlLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45OGUyZWQ0OTdj
NDIzYzM5ZjJmMTM1ZGYzYjEyMDUxMDExNGFlMTFhCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL0Fic3RyYWN0UmFuZ2UuY3BwCkBAIC0wLDAgKzEsNTYgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiQWJzdHJhY3RSYW5nZS5oIgorCisj
aW5jbHVkZSAiU2ltcGxlUmFuZ2UuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitTaW1wbGVS
YW5nZSBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgQWJzdHJhY3RSYW5nZSYgcmFuZ2UpCit7CisgICAg
cmV0dXJuIHsgeyByYW5nZS5zdGFydENvbnRhaW5lcigpLCByYW5nZS5zdGFydE9mZnNldCgpIH0s
IHsgcmFuZ2UuZW5kQ29udGFpbmVyKCksIHJhbmdlLmVuZE9mZnNldCgpIH0gfTsKK30KKworU2lt
cGxlUmFuZ2UgbWFrZVNpbXBsZVJhbmdlKGNvbnN0IFJlZjxBYnN0cmFjdFJhbmdlPiYgcmFuZ2Up
Cit7CisgICAgcmV0dXJuIG1ha2VTaW1wbGVSYW5nZShyYW5nZS5nZXQoKSk7Cit9CisKK09wdGlv
bmFsPFNpbXBsZVJhbmdlPiBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgQWJzdHJhY3RSYW5nZSogcmFu
Z2UpCit7CisgICAgaWYgKCFyYW5nZSkKKyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKyAg
ICByZXR1cm4gbWFrZVNpbXBsZVJhbmdlKCpyYW5nZSk7Cit9CisKK09wdGlvbmFsPFNpbXBsZVJh
bmdlPiBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgUmVmUHRyPEFic3RyYWN0UmFuZ2U+JiByYW5nZSkK
K3sKKyAgICByZXR1cm4gbWFrZVNpbXBsZVJhbmdlKHJhbmdlLmdldCgpKTsKK30KKworfQorCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQWJzdHJhY3RSYW5nZS5oIGIvU291cmNlL1dl
YkNvcmUvZG9tL0Fic3RyYWN0UmFuZ2UuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNDE5NGVlZmE4Y2UyM2U5MTAy
MzQzYjVjNGE0MTFlNDk5Y2YxMDlkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0Fic3RyYWN0UmFuZ2UuaApAQCAtMCwwICsxLDU1IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENP
TlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdt
YSBvbmNlCisKKyNpbmNsdWRlIDx3dGYvT3B0aW9uYWwuaD4KKyNpbmNsdWRlIDx3dGYvUmVmQ291
bnRlZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIE5vZGU7CisKK3N0cnVjdCBT
aW1wbGVSYW5nZTsKKworY2xhc3MgQWJzdHJhY3RSYW5nZSA6IHB1YmxpYyBSZWZDb3VudGVkPEFi
c3RyYWN0UmFuZ2U+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5BYnN0cmFjdFJhbmdlKCkgPSBk
ZWZhdWx0OworCisgICAgdmlydHVhbCBOb2RlJiBzdGFydENvbnRhaW5lcigpIGNvbnN0ID0gMDsK
KyAgICB2aXJ0dWFsIHVuc2lnbmVkIHN0YXJ0T2Zmc2V0KCkgY29uc3QgPSAwOworICAgIHZpcnR1
YWwgTm9kZSYgZW5kQ29udGFpbmVyKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgdW5zaWduZWQg
ZW5kT2Zmc2V0KCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgYm9vbCBjb2xsYXBzZWQoKSBjb25z
dCA9IDA7CisKKyAgICB2aXJ0dWFsIGJvb2wgaXNMaXZlUmFuZ2UoKSBjb25zdCA9IDA7Cit9Owor
CitTaW1wbGVSYW5nZSBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgQWJzdHJhY3RSYW5nZSYpOworU2lt
cGxlUmFuZ2UgbWFrZVNpbXBsZVJhbmdlKGNvbnN0IFJlZjxBYnN0cmFjdFJhbmdlPiYpOworT3B0
aW9uYWw8U2ltcGxlUmFuZ2U+IG1ha2VTaW1wbGVSYW5nZShjb25zdCBBYnN0cmFjdFJhbmdlKik7
CitPcHRpb25hbDxTaW1wbGVSYW5nZT4gbWFrZVNpbXBsZVJhbmdlKGNvbnN0IFJlZlB0cjxBYnN0
cmFjdFJhbmdlPiYpOworCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQWJzdHJh
Y3RSYW5nZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQWJzdHJhY3RSYW5nZS5pZGwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMjRlMzg3M2E2MzM1MGRlMTI3NDM3NDAyNDhhMGIwNjZjZjUzMTg1OQotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJhbmdlLmlkbApAQCAtMCwwICsx
LDM5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlCisgKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZworICogICAgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqICAgIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCisgKiAgICBk
aXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyAq
ICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSICJBUyBJUyIgQU5EIEFOWQorICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKKyAqIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKKyAqIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKKyAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgorICogVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBT
VUNIIERBTUFHRS4KKyAqLworCitbCisgICAgQ3VzdG9tVG9KU09iamVjdCwKKyAgICBFeHBvc2Vk
PVdpbmRvdywKK10gaW50ZXJmYWNlIEFic3RyYWN0UmFuZ2UgeworICAgIHJlYWRvbmx5IGF0dHJp
YnV0ZSBOb2RlIHN0YXJ0Q29udGFpbmVyOworICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25l
ZCBsb25nIHN0YXJ0T2Zmc2V0OworICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb2RlIGVuZENvbnRh
aW5lcjsKKyAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBlbmRPZmZzZXQ7Cisg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gY29sbGFwc2VkOworfTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmgK
aW5kZXggNDg3YThiMWI4NDk0Y2RkYTA4MjBhYWQxNzVhOGJmMTM4MTA4N2YyZC4uNWM3MmM3N2Rm
NjlhM2VmNmRlMjUxNWMxNmFjNWI2MjgzNDEyNzVhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL1JhbmdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmgKQEAgLTI0LDYg
KzI0LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJBYnN0cmFjdFJhbmdlLmgiCiAj
aW5jbHVkZSAiUmFuZ2VCb3VuZGFyeVBvaW50LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAg
LTM3LDE2ICszOCwxNiBAQCBjbGFzcyBUZXh0OwogCiBzdHJ1Y3QgU2ltcGxlUmFuZ2U7CiAKLWNs
YXNzIFJhbmdlIDogcHVibGljIFJlZkNvdW50ZWQ8UmFuZ2U+IHsKK2NsYXNzIFJhbmdlIGZpbmFs
IDogcHVibGljIEFic3RyYWN0UmFuZ2UgewogcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIHN0
YXRpYyBSZWY8UmFuZ2U+IGNyZWF0ZShEb2N1bWVudCYpOwogICAgIFdFQkNPUkVfRVhQT1JUIH5S
YW5nZSgpOwogCi0gICAgTm9kZSYgc3RhcnRDb250YWluZXIoKSBjb25zdCB7IHJldHVybiBtX3N0
YXJ0LmNvbnRhaW5lcigpOyB9Ci0gICAgdW5zaWduZWQgc3RhcnRPZmZzZXQoKSBjb25zdCB7IHJl
dHVybiBtX3N0YXJ0Lm9mZnNldCgpOyB9Ci0gICAgTm9kZSYgZW5kQ29udGFpbmVyKCkgY29uc3Qg
eyByZXR1cm4gbV9lbmQuY29udGFpbmVyKCk7IH0KLSAgICB1bnNpZ25lZCBlbmRPZmZzZXQoKSBj
b25zdCB7IHJldHVybiBtX2VuZC5vZmZzZXQoKTsgfQotICAgIGJvb2wgY29sbGFwc2VkKCkgY29u
c3QgeyByZXR1cm4gbV9zdGFydCA9PSBtX2VuZDsgfQorICAgIE5vZGUmIHN0YXJ0Q29udGFpbmVy
KCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9zdGFydC5jb250YWluZXIoKTsgfQorICAgIHVuc2ln
bmVkIHN0YXJ0T2Zmc2V0KCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9zdGFydC5vZmZzZXQoKTsg
fQorICAgIE5vZGUmIGVuZENvbnRhaW5lcigpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZW5kLmNv
bnRhaW5lcigpOyB9CisgICAgdW5zaWduZWQgZW5kT2Zmc2V0KCkgY29uc3QgZmluYWwgeyByZXR1
cm4gbV9lbmQub2Zmc2V0KCk7IH0KKyAgICBib29sIGNvbGxhcHNlZCgpIGNvbnN0IGZpbmFsIHsg
cmV0dXJuIG1fc3RhcnQgPT0gbV9lbmQ7IH0KICAgICBOb2RlKiBjb21tb25BbmNlc3RvckNvbnRh
aW5lcigpIGNvbnN0IHsgcmV0dXJuIGNvbW1vbkluY2x1c2l2ZUFuY2VzdG9yKHN0YXJ0Q29udGFp
bmVyKCksIGVuZENvbnRhaW5lcigpKS5nZXQoKTsgfQogCiAgICAgV0VCQ09SRV9FWFBPUlQgRXhj
ZXB0aW9uT3I8dm9pZD4gc2V0U3RhcnQoUmVmPE5vZGU+JiYsIHVuc2lnbmVkIG9mZnNldCk7CkBA
IC0xMTgsNiArMTE5LDggQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBleHBsaWNpdCBSYW5nZShE
b2N1bWVudCYpOwogCisgICAgYm9vbCBpc0xpdmVSYW5nZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJu
IHRydWU7IH0KKwogICAgIHZvaWQgdXBkYXRlRG9jdW1lbnQoKTsKICAgICB2b2lkIHVwZGF0ZUFz
c29jaWF0ZWRTZWxlY3Rpb24oKTsKICAgICBFeGNlcHRpb25PcjxSZWZQdHI8RG9jdW1lbnRGcmFn
bWVudD4+IHByb2Nlc3NDb250ZW50cyhBY3Rpb25UeXBlKTsKQEAgLTE0MiwzICsxNDUsNyBAQCBX
RUJDT1JFX0VYUE9SVCBSZWZQdHI8UmFuZ2U+IGNyZWF0ZUxpdmVSYW5nZShjb25zdCBPcHRpb25h
bDxTaW1wbGVSYW5nZT4mKTsKIC8vIE91dHNpZGUgdGhlIFdlYkNvcmUgbmFtZXNwYWNlIGZvciBl
YXNlIG9mIGludm9jYXRpb24gZnJvbSB0aGUgZGVidWdnZXIuCiB2b2lkIHNob3dUcmVlKGNvbnN0
IFdlYkNvcmU6OlJhbmdlKik7CiAjZW5kaWYKKworU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJ
TihXZWJDb3JlOjpSYW5nZSkKKyAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6
QWJzdHJhY3RSYW5nZSYgcmFuZ2UpIHsgcmV0dXJuIHJhbmdlLmlzTGl2ZVJhbmdlKCk7IH0KK1NQ
RUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9SYW5nZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuaWRsCmluZGV4IDYzZGYzODc3
ZjYwZGI3YjE4NTA3ZWM5NTg3YjkyMGE1NWVkNTVmMTEuLjNjMDU3YTBmYjk5ZGQ3ODJhMjAyOGY0
NGFjMWZlNWQyYWE4OGJkZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmlkbApAQCAtMSw1ICsxLDUgQEAKIC8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMDYgQXBwbGUgSW5jLgorICogQ29weXJpZ2h0IChDKSAyMDA2
LTIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAy
MDA2IFNhbXVlbCBXZWluaWcgPHNhbS53ZWluaWdAZ21haWwuY29tPgogICoKICAqIFRoaXMgbGli
cmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKQEAg
LTIwLDE3ICsyMCwxMiBAQAogCiBbCiAgICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1SZWFjaGFibGVG
cm9tRE9NV2luZG93LAotICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCiAgICAgRXhwb3J0
TWFjcm89V0VCQ09SRV9FWFBPUlQsCi0gICAgRXhwb3NlZD1XaW5kb3cKLV0gaW50ZXJmYWNlIFJh
bmdlIHsKKyAgICBFeHBvc2VkPVdpbmRvdywKKyAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3Qs
CitdIGludGVyZmFjZSBSYW5nZSA6IEFic3RyYWN0UmFuZ2UgewogICAgIFtDYWxsV2l0aD1Eb2N1
bWVudF0gY29uc3RydWN0b3IoKTsKIAotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb2RlIHN0YXJ0
Q29udGFpbmVyOwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIHN0YXJ0T2Zm
c2V0OwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb2RlIGVuZENvbnRhaW5lcjsKLSAgICByZWFk
b25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBlbmRPZmZzZXQ7Ci0gICAgcmVhZG9ubHkgYXR0
cmlidXRlIGJvb2xlYW4gY29sbGFwc2VkOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb2RlIGNv
bW1vbkFuY2VzdG9yQ29udGFpbmVyOwogCiAgICAgW01heVRocm93RXhjZXB0aW9uXSB1bmRlZmlu
ZWQgc2V0U3RhcnQoTm9kZSBub2RlLCB1bnNpZ25lZCBsb25nIG9mZnNldCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9kb20vU3RhdGljUmFuZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9T
dGF0aWNSYW5nZS5oCmluZGV4IGVjZTliNGRmMDFmY2RkODRhNWYwMDFhOTIxNmJlMWE5NTg2Njdm
NDIuLjU4NjZiYmRlNmY1OTMwNWM1MzA5NGU0OTM4NTBhZjdiMWE5ODkyODkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9TdGF0aWNSYW5nZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9TdGF0aWNSYW5nZS5oCkBAIC0yNSwxMyArMjUsMTQgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNp
bmNsdWRlICJFeGNlcHRpb25Pci5oIgorI2luY2x1ZGUgIkFic3RyYWN0UmFuZ2UuaCIKICNpbmNs
dWRlICJTaW1wbGVSYW5nZS5oIgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgU3RhdGljUmFuZ2UgOiBwdWJsaWMgUmVmQ291bnRlZDxT
dGF0aWNSYW5nZT4sIHB1YmxpYyBTaW1wbGVSYW5nZSB7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xh
c3MgRXhjZXB0aW9uT3I7CisKK2NsYXNzIFN0YXRpY1JhbmdlIGZpbmFsIDogcHVibGljIEFic3Ry
YWN0UmFuZ2UsIHB1YmxpYyBTaW1wbGVSYW5nZSB7CiBwdWJsaWM6CiAgICAgc3RydWN0IEluaXQg
ewogICAgICAgICBSZWZQdHI8Tm9kZT4gc3RhcnRDb250YWluZXI7CkBAIC00NCw4ICs0NSwyMCBA
QCBwdWJsaWM6CiAgICAgc3RhdGljIFJlZjxTdGF0aWNSYW5nZT4gY3JlYXRlKGNvbnN0IFNpbXBs
ZVJhbmdlJik7CiAgICAgc3RhdGljIFJlZjxTdGF0aWNSYW5nZT4gY3JlYXRlKFNpbXBsZVJhbmdl
JiYpOwogCisgICAgTm9kZSYgc3RhcnRDb250YWluZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBT
aW1wbGVSYW5nZTo6c3RhcnRDb250YWluZXIoKTsgfQorICAgIHVuc2lnbmVkIHN0YXJ0T2Zmc2V0
KCkgY29uc3QgZmluYWwgeyByZXR1cm4gU2ltcGxlUmFuZ2U6OnN0YXJ0T2Zmc2V0KCk7IH0KKyAg
ICBOb2RlJiBlbmRDb250YWluZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBTaW1wbGVSYW5nZTo6
ZW5kQ29udGFpbmVyKCk7IH0KKyAgICB1bnNpZ25lZCBlbmRPZmZzZXQoKSBjb25zdCBmaW5hbCB7
IHJldHVybiBTaW1wbGVSYW5nZTo6ZW5kT2Zmc2V0KCk7IH0KKyAgICBib29sIGNvbGxhcHNlZCgp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuIFNpbXBsZVJhbmdlOjpjb2xsYXBzZWQoKTsgfQorCiBwcml2
YXRlOgogICAgIFN0YXRpY1JhbmdlKFNpbXBsZVJhbmdlJiYpOworCisgICAgYm9vbCBpc0xpdmVS
YW5nZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CiB9OwogCiB9CisKK1NQRUNJQUxJ
WkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6U3RhdGljUmFuZ2UpCisgICAgc3RhdGljIGJv
b2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OkFic3RyYWN0UmFuZ2UmIHJhbmdlKSB7IHJldHVybiAh
cmFuZ2UuaXNMaXZlUmFuZ2UoKTsgfQorU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1N0YXRpY1JhbmdlLmlkbCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9TdGF0aWNSYW5nZS5pZGwKaW5kZXggODNhOTgyMjM4YTQ2ZDZjMjNjNDE0ZTA1NDE1
YWE1YWU2NzIwZjVkZi4uMTEyNjQ4YTA4MTY5MjY0Yjg1YTZkMTg0OTNjNjM4MDhiNTQ4OTI2NiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0YXRpY1JhbmdlLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vU3RhdGljUmFuZ2UuaWRsCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENv
cHlyaWdodCAoQykgMjAxNiBBcHBsZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29w
eXJpZ2h0IChDKSAyMDE2LTIwMjAgQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAq
CiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjQsMTcgKzI0LDEwIEBACiAgKi8KIAog
WwotICAgIEVuYWJsZWRCeVNldHRpbmc9SW5wdXRFdmVudHMsCi0gICAgSW1wbGVtZW50YXRpb25M
YWNrc1ZUYWJsZSwKLSAgICBFeHBvc2VkPVdpbmRvdwotXSBpbnRlcmZhY2UgU3RhdGljUmFuZ2Ug
ewotICAgIGNvbnN0cnVjdG9yKFN0YXRpY1JhbmdlSW5pdCBzdGF0aWNSYW5nZUluaXREaWN0KTsK
LQotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIHN0YXJ0T2Zmc2V0OwotICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGVuZE9mZnNldDsKLSAgICByZWFkb25s
eSBhdHRyaWJ1dGUgTm9kZSBzdGFydENvbnRhaW5lcjsKLSAgICByZWFkb25seSBhdHRyaWJ1dGUg
Tm9kZSBlbmRDb250YWluZXI7Ci0gICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gY29sbGFw
c2VkOworICAgIEV4cG9zZWQ9V2luZG93LAorICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwK
K10gaW50ZXJmYWNlIFN0YXRpY1JhbmdlIDogQWJzdHJhY3RSYW5nZSB7CisgICAgY29uc3RydWN0
b3IoU3RhdGljUmFuZ2VJbml0IGluaXQpOwogfTsKIAogZGljdGlvbmFyeSBTdGF0aWNSYW5nZUlu
aXQgewo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411632</attachid>
            <date>2020-10-16 17:04:57 -0700</date>
            <delta_ts>2020-10-16 17:19:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217846-20201016170456.patch</filename>
            <type>text/plain</type>
            <size>41434</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4NTYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGIwZGJhY2I1NTcyMjIz
OTE4NzU4NzUyYzFkYjU2NWZlMGEyZGY4NS4uMzU1NTM5MTBlOTMyNGI4YzhmZWU4MWE4Mjg0NzIw
OTM0MmY2NGJhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY2IEBACisyMDIwLTEwLTE2ICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgQWJzdHJhY3RSYW5nZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3ODQ2CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisgICAgICAgIFRoaXMgbWFrZXMg
dXMgbW9yZSBhY2N1cmF0ZWx5IG1hdGNoIHRoZSBET00gc3BlY2lmaWNhdGlvbiwgbWFrZXMgUmFu
Z2UKKyAgICAgICAgYW5kIFN0YXRpY1JhbmdlIG9iamVjdHMgc2xpZ2h0bHkgYmlnZ2VyIHNpbmNl
IHRoZXkgbm93IGhhdmUgYSB2aXJ0dWFsCisgICAgICAgIHRhYmxlIHBvaW50ZXIsIGFuZCBtYWtl
cyB0aGUgQWJzdHJhY3RSYW5nZSBtZXRob2RzIGEgYml0IHNsb3dlciB0byBjYWxsCisgICAgICAg
IGZyb20gSmF2YVNjcmlwdCBzaW5jZSB0aGV5IGFyZSBiYWNrZWQgYnkgQysrIHZpcnR1YWwgZnVu
Y3Rpb25zLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZGVkIEFic3RyYWN0UmFuZ2Ug
ZmlsZXMuCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdDogRGl0dG8u
CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Q6IERpdHRvLgorICAg
ICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IERpdHRvLgorICAgICAgICAqIEhlYWRlcnMuY21h
a2U6IERpdHRvLgorICAgICAgICAqIFNvdXJjZXMudHh0OiBEaXR0by4KKyAgICAgICAgKiBXZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IERpdHRvLgorICAgICAgICBBbHNvIHJlbW92
ZWQgcmVmZXJlbmNlIHRvIG5vbi1leGlzdGVudCBKU0F1ZGlvTm9kZUN1c3RvbS5jcHAgYW5kIG1v
dmVkCisgICAgICAgIEpTU3RhdGljUmFuZ2UgZmlsZSBmcm9tIHRoZSBFdmVudHMgZ3JvdXAgaW50
byB0aGUgUmFuZ2VzIGdyb3VwLgorCisgICAgICAgICogYmluZGluZ3MvanMvSlNBYnN0cmFjdFJh
bmdlQ3VzdG9tLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKTogQWRkZWQuIEp1
c3QgdGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24uIFdvdWxkIGJlCisgICAgICAgIG5pY2UgaWYg
d2UgZGlkIG5vdCBoYXZlIHRvIHdyaXRlIHRoaXMuCisgICAgICAgIChXZWJDb3JlOjp0b0pTTmV3
bHlDcmVhdGVkKTogTWFrZSBlaXRoZXIgYSBTdGF0aWNSYW5nZSBvciBSYW5nZQorICAgICAgICB3
cmFwcGVyIGRlcGVuZGluZyBvbiB3aGV0aGVyIHRoaXMgaXMgYSBsaXZlIHJhbmdlIG9yIG5vdC4K
KworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwOiBSZW1vdmVkIGxvdHMg
b2YgdW5uZWVkZWQgaW5jbHVkZXMuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKTogU3RvcHBlZCB1
c2luZyAidXNpbmcgbmFtZXNwYWNlIEpTQyIuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9XZWJD
b3JlQnVpbHRpbk5hbWVzLmg6IEFkZGVkIEFic3RyYWN0UmFuZ2UuCisKKyAgICAgICAgKiBkb20v
QWJzdHJhY3RSYW5nZS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6bWFrZVNpbXBsZVJh
bmdlKTogQWRkZWQuCisgICAgICAgICogZG9tL0Fic3RyYWN0UmFuZ2UuaDogQWRkZWQuCisgICAg
ICAgICogZG9tL0Fic3RyYWN0UmFuZ2UuaWRsOiBBZGRlZC4KKworICAgICAgICAqIGRvbS9SYW5n
ZS5oOiBDaGFuZ2VkIHRvIGRlcml2ZSBmcm9tIEFic3RyYWN0UmFuZ2UgaW5zdGVhZCBvZgorICAg
ICAgICBmcm9tIFJlZkNvdW50ZWQuIEFsc28gbWFya2VkIHRoaXMgZmluYWwgc2luY2UgaXQncyBu
b3cgcG9seW1vcnBoaWMuCisgICAgICAgIE1hcmtlZCBhbGwgdGhlIGZ1bmN0aW9ucyB0aGF0IG92
ZXJyaWRlIGZpbmFsIGFzIHdlbGwsIHRvIGNoZWNrIHRoYXQKKyAgICAgICAgdGhleSBjb3JyZWN0
bHkgb3ZlcnJpZGUgdGhlIHZpcnR1YWwgZnVuY3Rpb25zIGluIHRoZSBiYXNlIGNsYXNzLgorICAg
ICAgICBBZGRlZCBwcml2YXRlIGlzTGl2ZVJhbmdlIGZ1bmN0aW9uIG92ZXJyaWRlIHRoYXQgcmV0
dXJucyB0cnVlLgorICAgICAgICBBZGRlZCBTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOL0VO
RCBzbyB3ZSBjYW4gZG8gaXM8UmFuZ2U+LgorCisgICAgICAgICogZG9tL1JhbmdlLmlkbDogUmVt
b3ZlZCBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLiBBZGRlZAorICAgICAgICBKU0dlbmVyYXRl
VG9OYXRpdmVPYmplY3QuIEluaGVyaXQgZnJvbSBBYnN0cmFjdFJhbmdlLgorICAgICAgICBSZW1v
dmVkIHRoZSA1IGF0dHJpYnV0ZSBnZXR0ZXJzIHRoYXQgYXJlIG5vdyBpbmhlcml0ZWQgZnJvbSBB
YnN0cmFjdFJhbmdlLgorCisgICAgICAgICogZG9tL1N0YXRpY1JhbmdlLmg6IENoYW5nZWQgdG8g
ZGVyaXZlIGZyb20gQWJzdHJhY3RSYW5nZSBpbnN0ZWFkIG9mCisgICAgICAgIGZyb20gUmVmQ291
bnRlZC4gQWxzbyBtYXJrZWQgdGhpcyBmaW5hbCBzaW5jZSBpdCdzIG5vdyBwb2x5bW9ycGhpYy4K
KyAgICAgICAgQWRkZWQgZnVuY3Rpb25zIHRvIG92ZXJyaWRlIHRoZSBvbmVzIGZyb20gU3RhdGlj
UmFuZ2UsIGNhbGxpbmcgdGhyb3VnaAorICAgICAgICB0byB0aGUgb25lcyBmcm9tIFNpbXBsZVJh
bmdlIChJIHRob3VnaHQgdGhlcmUgd2FzIGEgd2F5IHRvIGRvIHRoaXMKKyAgICAgICAgd2l0aCB1
c2luZywgYnV0IEkgY291bGRuJ3QgZmlndXJlIHRoYXQgb3V0KS4gQWRkZWQgcHJpdmF0ZSBpc0xp
dmVSYW5nZQorICAgICAgICBmdW5jdGlvbiBvdmVycmlkZSB0aGF0IHJldHVybnMgZmFsc2UuIEFk
ZGVkIFNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4vRU5ECisgICAgICAgIHNvIHdlIGNhbiBk
byBpczxTdGF0aWNSYW5nZT4uCisKKyAgICAgICAgKiBkb20vU3RhdGljUmFuZ2UuaWRsOiBSZW1v
dmVkIEVuYWJsZWRCeVNldHRpbmc9SW5wdXRFdmVudHMgc2luY2UKKyAgICAgICAgdGhpcyBzaG91
bGQgbm93IGFsd2F5cyBiZSBpbmNsdWRlZC4gSSB0aGluayB3ZSBzaG91bGQgcHJvYmFibHkgcmVt
b3ZlIHRoZQorICAgICAgICBJbnB1dEV2ZW50cyBzZXR0aW5nIG5vdyBlbnRpcmVseS4gUmVtb3Zl
ZCBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLgorICAgICAgICBBZGRlZCBKU0dlbmVyYXRlVG9O
YXRpdmVPYmplY3QuIEluaGVyaXQgZnJvbSBBYnN0cmFjdFJhbmdlLgorICAgICAgICBSZW1vdmVk
IGFsbCA1IGF0dHJpYnV0ZSBnZXR0ZXJzLCB3aGljaCBhcmUgbm93IGluaGVyaXRlZCBmcm9tIEFi
c3RyYWN0UmFuZ2UuCisKIDIwMjAtMTAtMTUgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxk
QGFwcGxlLmNvbT4KIAogICAgICAgICBbQ29jb2FdIERvbid0IGNoYW5nZSB0aGUgdGV4dCBtYXRy
aXggbXVsdGlwbGUgdGltZXMgaW5zaWRlIEZvbnRDYXNjYWRlOjpkcmF3R2x5cGhzKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01h
a2VMaXN0cy50eHQKaW5kZXggZmQ5ZWJhNjRkMTQyZWJhNDU1OGRiZjFiMDIyOTQ0MDBmMGVjMjZh
MS4uZjY5OGQyZGEwYmNkMDRiNzNjNzcyYjY0NGNmYmZhYTk4MzcwMjU4MiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQKQEAgLTc1Myw2ICs3NTMsNyBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lETF9GSUxF
UwogICAgIGRvbS9BYm9ydEFsZ29yaXRobS5pZGwKICAgICBkb20vQWJvcnRDb250cm9sbGVyLmlk
bAogICAgIGRvbS9BYm9ydFNpZ25hbC5pZGwKKyAgICBkb20vQWJzdHJhY3RSYW5nZS5pZGwKICAg
ICBkb20vQW5pbWF0aW9uRXZlbnQuaWRsCiAgICAgZG9tL0F0dHIuaWRsCiAgICAgZG9tL0JlZm9y
ZUxvYWRFdmVudC5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LWlucHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54
Y2ZpbGVsaXN0CmluZGV4IDg2YTA3NzQxZjM4NDQ3OTIwYWEwZTkyNzYyYmQ0ZTBlNmU2MmRkNzAu
LjdhNDU0MWQxN2ZlYjNlMDgyODFlYWFmYzA0MzlmYTBiMmE3NmMyOTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKKysrIGIvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdApAQCAtNjc1LDYgKzY3NSw3
IEBAICQoUFJPSkVDVF9ESVIpL2Nzcy90eXBlZG9tL1R5cGVkT01DU1NVbnBhcnNlZFZhbHVlLmlk
bAogJChQUk9KRUNUX0RJUikvZG9tL0Fib3J0QWxnb3JpdGhtLmlkbAogJChQUk9KRUNUX0RJUikv
ZG9tL0Fib3J0Q29udHJvbGxlci5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9BYm9ydFNpZ25hbC5p
ZGwKKyQoUFJPSkVDVF9ESVIpL2RvbS9BYnN0cmFjdFJhbmdlLmlkbAogJChQUk9KRUNUX0RJUikv
ZG9tL0FuaW1hdGlvbkV2ZW50LmlkbAogJChQUk9KRUNUX0RJUikvZG9tL0F0dHIuaWRsCiAkKFBS
T0pFQ1RfRElSKS9kb20vQmVmb3JlTG9hZEV2ZW50LmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCBlMjFmYzgwNTYxMjRlYmVhYTA5
MmQyZmM4ZjY2ZTQ3NjZkMjg2ZjBlLi5hYjMxYWJhMWZmNWRjN2EzZWQwYjRkZDdmMDMzOTg1NTNi
ZjNlOGQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQu
eGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNm
aWxlbGlzdApAQCAtNDYsNiArNDYsOCBAQCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0Fib3J0Q29udHJvbGxlci5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElS
KS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTQWJvcnRDb250cm9sbGVyLmgKICQoQlVJTFRfUFJP
RFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTQWJvcnRTaWduYWwuY3BwCiAkKEJV
SUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0Fib3J0U2lnbmFsLmgK
KyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTQWJzdHJhY3RS
YW5nZS5jcHAKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pT
QWJzdHJhY3RSYW5nZS5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU0Fic3RyYWN0V29ya2VyLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNBYnN0cmFjdFdvcmtlci5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikv
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0FjY2Vzc2liaWxpdHlSb2xlLmNwcApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNjUxM2I4YmVjMzUxN2Y3ZGJjNDYzMDJkZDY5OTJkMjRl
OGEyMGRkNC4uYzA0ODJiZTRlZDlmNTMwZDY4OTdiOTM0YTBkNTU3OGUwMTNiYjNmZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC03MDYsNiArNzA2LDcgQEAgSlNfQklORElOR19J
RExTID0gXAogICAgICQoV2ViQ29yZSkvZG9tL0Fib3J0QWxnb3JpdGhtLmlkbCBcCiAgICAgJChX
ZWJDb3JlKS9kb20vQWJvcnRDb250cm9sbGVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vQWJv
cnRTaWduYWwuaWRsIFwKKyAgICAkKFdlYkNvcmUpL2RvbS9BYnN0cmFjdFJhbmdlLmlkbCBcCiAg
ICAgJChXZWJDb3JlKS9kb20vQW5pbWF0aW9uRXZlbnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL2Rv
bS9BdHRyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vQmVmb3JlTG9hZEV2ZW50LmlkbCBcCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dlYkNvcmUv
SGVhZGVycy5jbWFrZQppbmRleCAwYWRlN2Q4YzhkNGIyZjJkOThkNmQzOTBlOTM4YWIzM2ViNzQ1
ODE3Li5mNjk2NGU1Y2Y3OTNmNmIxOWExNTJjM2RkNDM5ODU2ZDc0ZDgyNjE2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0hlYWRl
cnMuY21ha2UKQEAgLTM3MSw2ICszNzEsNyBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09S
S19IRUFERVJTCiAgICAgZGlzcGxheS9jc3MvRGlzcGxheVJlcGxhY2VkQm94LmgKICAgICBkaXNw
bGF5L2Nzcy9EaXNwbGF5U3R5bGUuaAogCisgICAgZG9tL0Fic3RyYWN0UmFuZ2UuaAogICAgIGRv
bS9BY3RpdmVET01DYWxsYmFjay5oCiAgICAgZG9tL0FjdGl2ZURPTU9iamVjdC5oCiAgICAgZG9t
L0F0dHIuaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2Uv
V2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBhZWYxYjYyMzIxMjVlMzY0OWI5MGY0M2RlMzg5NmE5
ZDBjYWM3YWQ5Li4wMGJiNDU4MWI0ZDkyM2EyMzI5YjcwMGMxOTM3MmVhNjYxNjI2NjIzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dApAQCAtNDY3LDYgKzQ2Nyw3IEBAIGJpbmRpbmdzL2pzL0dDQ29udHJvbGxlci5j
cHAKIGJpbmRpbmdzL2pzL0lEQkJpbmRpbmdVdGlsaXRpZXMuY3BwCiBiaW5kaW5ncy9qcy9KU0Fi
b3J0Q29udHJvbGxlckN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTQWJvcnRTaWduYWxDdXN0b20u
Y3BwCitiaW5kaW5ncy9qcy9KU0Fic3RyYWN0UmFuZ2VDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9K
U0FuaW1hdGlvbkVmZmVjdEN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTQW5pbWF0aW9uVGltZWxp
bmVDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0F0dHJDdXN0b20uY3BwCkBAIC04MTYsNiArODE3
LDcgQEAgZGlzcGxheS9EaXNwbGF5VHJlZUJ1aWxkZXIuY3BwCiBkaXNwbGF5L0Rpc3BsYXlWaWV3
LmNwcAogZG9tL0Fib3J0Q29udHJvbGxlci5jcHAKIGRvbS9BYm9ydFNpZ25hbC5jcHAKK2RvbS9B
YnN0cmFjdFJhbmdlLmNwcAogZG9tL0FjdGl2ZURPTUNhbGxiYWNrLmNwcAogZG9tL0FjdGl2ZURP
TU9iamVjdC5jcHAKIGRvbS9BbGxEZXNjZW5kYW50c0NvbGxlY3Rpb24uY3BwCkBAIC0yNjU0LDYg
KzI2NTYsNyBAQCBKU0FOR0xFSW5zdGFuY2VkQXJyYXlzLmNwcAogSlNBYm9ydEFsZ29yaXRobS5j
cHAKIEpTQWJvcnRDb250cm9sbGVyLmNwcAogSlNBYm9ydFNpZ25hbC5jcHAKK0pTQWJzdHJhY3RS
YW5nZS5jcHAKIEpTQWJzdHJhY3RXb3JrZXIuY3BwCiBKU0FkZHJlc3NFcnJvcnMuY3BwCiBKU0Fl
c0NiY0NmYlBhcmFtcy5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagppbmRleCAxYWNmMTQ0Mzk5MjQ4NTgxNDhkZDIwYjllOGRlN2E1MWUz
YjIyZGNlLi5kOTkzYjgyNmI1MWU1Yzc3NzkxYzc2MmEzZGQ4NmViOGNkYTk3YjkyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0y
NzMxLDYgKzI3MzEsNyBAQAogCQk5MzRGNzEzQzBENUE2RjE5MDAwMThENjkgLyogUmVzb3VyY2VF
cnJvckJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzNEY3MTNCMEQ1QTZGMTkwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9yQmFzZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNTAwRjMyMTNGREUz
QkUwMDk5RUMyNCAvKiBOU1Njcm9sbGVySW1wRGV0YWlscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1MDBGMzExM0ZERTNCRTAwOTlFQzI0IC8qIE5T
U2Nyb2xsZXJJbXBEZXRhaWxzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJOTM1MjA3QkUwOUJENDEwQTAwRjIwMzhEIC8qIExvY2FsaXplZFN0cmlu
Z3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNTIw
N0JEMDlCRDQxMEEwMEYyMDM4RCAvKiBMb2NhbGl6ZWRTdHJpbmdzLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTM1NUVGNTEyNTNBNDI3OTAwNkZG
NEE0IC8qIEpTQWJzdHJhY3RSYW5nZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTM1NUVGNEYyNTNBNDI3ODAwNkZGNEE0IC8qIEpTQWJzdHJhY3RSYW5n
ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkz
NUM0NzYzMDlBQzRDRTYwMEE2QUFCNCAvKiBNb3VzZUV2ZW50V2l0aEhpdFRlc3RSZXN1bHRzLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVDNDc2MjA5
QUM0Q0U2MDBBNkFBQjQgLyogTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5oICovOyB9Owog
CQk5MzVDNDc2ODA5QUM0RDQzMDBBNkFBQjQgLyogUGxhdGZvcm1LZXlib2FyZEV2ZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVDNDc2NjA5QUM0
RDQzMDBBNkFBQjQgLyogUGxhdGZvcm1LZXlib2FyZEV2ZW50LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM1QzQ3NjkwOUFDNEQ0MzAwQTZBQUI0
IC8qIFBsYXRmb3JtTW91c2VFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTM1QzQ3NjcwOUFDNEQ0MzAwQTZBQUI0IC8qIFBsYXRmb3JtTW91c2VF
dmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBA
IC0yNzc3LDYgKzI3NzgsNyBAQAogCQk5M0M0QTQxNTE2MjlERjVBMDBDM0VCNkUgLyogU2Nyb2xs
aW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTNDNEE0MTMxNjI5REY1QTAwQzNFQjZFIC8qIFNjcm9sbGlu
Z1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQk5M0M0RjZFQjExMDhGOUE1MDA5OUQwREIgLyogQWNjZXNz
aWJpbGl0eVNjcm9sbGJhci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTNDNEY2RTkxMTA4RjlBNTAwOTlEMERCIC8qIEFjY2Vzc2liaWxpdHlTY3JvbGxi
YXIuaCAqLzsgfTsKIAkJOTNDQ0YwMjcwQUY2QzUyOTAwMDE4RTg5IC8qIE5hdmlnYXRpb25BY3Rp
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQ0NG
MDI2MEFGNkM1MjkwMDAxOEU4OSAvKiBOYXZpZ2F0aW9uQWN0aW9uLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNEMDUwMzIyNTNBMTQ5QTAwMkEz
MDcyIC8qIEFic3RyYWN0UmFuZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzRDA1MDJFMjUzQTE0OEEwMDJBMzA3MiAvKiBBYnN0cmFjdFJhbmdlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTNEMTk2
MzExRDZDQUI3NjAwRkM3RTQ3IC8qIEV4Y2VwdGlvbk9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0QxOTYzMDFENkNBQjc2MDBGQzdFNDcgLyogRXhj
ZXB0aW9uT3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwogCQk5M0QxOTYzMzFENkNBQjgyMDBGQzdFNDcgLyogRXhjZXB0aW9uLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0QxOTYzMjFENkNBQjgyMDBGQzdF
NDcgLyogRXhjZXB0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJOTNENDM3OUYxRDU3QjE1MzAwQUI4NUVBIC8qIEpTRXhlY1N0YXRlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4RjkzNEQ4MzExODlG
MUVFMDA1MDhENUQgLyogSlNFeGVjU3RhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNzQ0NSw3ICs3NDQ3LDYgQEAKIAkJM0ZCQzRBRjExODk4
ODE1NjAwNDZFRTM4IC8qIFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNl
QVZLaXQubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTNGQkM0QUYyMTg5ODgxNTYw
MDQ2RUUzOCAvKiBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTAyNEZDODIzQ0YyNTRGMDBGREY5OEUgLyogU2Ft
cGxlQnVmZmVyRGlzcGxheUxheWVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNhbXBsZUJ1ZmZl
ckRpc3BsYXlMYXllci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTQxMDYyNkE3
MjI4MEEyMkEwMDZEMUI1OSAvKiBKU0F1ZGlvTm9kZUN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0F1ZGlvTm9kZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTQxMDc5MDhBMUZDM0U0RjIwMDYxQjI3QSAvKiBDbGllbnRPcmln
aW4uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2xpZW50T3JpZ2luLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMDg3RjAxMjQ4RTU5QzgwMDY4MEU5MSAvKiBB
dWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlclVuaXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXJVbml0LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEwODdGMDMyNDhFNTlDOTAwNjgwRTkxIC8q
IEF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVyVW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlclVuaXQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTExMjQ2LDYgKzExMjQ3LDkgQEAKIAkJOTM1MDBGMzEx
M0ZERTNCRTAwOTlFQzI0IC8qIE5TU2Nyb2xsZXJJbXBEZXRhaWxzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE5TU2Nyb2xsZXJJbXBEZXRhaWxzLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTkzNTIwN0JEMDlCRDQxMEEwMEYyMDM4RCAvKiBMb2NhbGl6ZWRTdHJp
bmdzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvY2FsaXplZFN0cmluZ3Mu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM1MzY3NkEwOUFFRDg4QjAwRDM1Q0Q2
IC8qIFNjcm9sbFZpZXdNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBh
dGggPSBTY3JvbGxWaWV3TWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzU1
RUY0RjI1M0E0Mjc4MDA2RkY0QTQgLyogSlNBYnN0cmFjdFJhbmdlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTQWJzdHJhY3RSYW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk5MzU1RUY1MDI1M0E0Mjc5MDA2RkY0QTQgLyogSlNBYnN0cmFjdFJhbmdlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQWJzdHJhY3RSYW5nZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNTVFRjUzMjUzQTRENUEwMDZGRjRB
NCAvKiBKU0Fic3RyYWN0UmFuZ2VDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBYnN0
cmFjdFJhbmdlQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM1QzQ3
NjIwOUFDNENFNjAwQTZBQUI0IC8qIE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzVDNDc2NjA5QUM0RDQzMDBBNkFB
QjQgLyogUGxhdGZvcm1LZXlib2FyZEV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFBsYXRmb3JtS2V5Ym9hcmRFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk5MzVDNDc2NzA5QUM0RDQzMDBBNkFBQjQgLyogUGxhdGZvcm1Nb3VzZUV2ZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXRmb3JtTW91c2VFdmVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTEzMzMsNiArMTEzMzcsOSBAQAogCQk5M0NBNENB
MjA5REY5M0ZBMDBERjg2NzcgLyogc3ZnLmNzcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBzdmcu
Y3NzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5M0NDRjAyNjBBRjZDNTI5MDAwMThF
ODkgLyogTmF2aWdhdGlvbkFjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBOYXZpZ2F0aW9uQWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzQ0NG
MDVGMEFGNkNBNzYwMDAxOEU4OSAvKiBOYXZpZ2F0aW9uQWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5hdmlnYXRpb25BY3Rpb24uY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5M0QwNTAyRTI1M0ExNDhBMDAyQTMwNzIgLyogQWJzdHJhY3RS
YW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBBYnN0cmFjdFJhbmdlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzRDA1MDMwMjUzQTE0OEMwMDJBMzA3MiAvKiBBYnN0cmFjdFJhbmdlLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBBYnN0cmFjdFJhbmdlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTNEMDUwMzEyNTNBMTQ4QzAwMkEzMDcyIC8qIEFic3RyYWN0UmFuZ2UuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQWJzdHJhY3RSYW5nZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTkzRDE5NjMwMUQ2Q0FCNzYwMEZDN0U0NyAvKiBFeGNlcHRpb25Pci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBFeGNlcHRpb25Pci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk5M0QxOTYzMjFENkNBQjgyMDBGQzdFNDcgLyogRXhjZXB0aW9uLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV4Y2VwdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk5M0Q5RDUzQjBEQTI3RTE4MDA3NzIxNkMgLyogUmFuZ2VCb3VuZGFyeVBvaW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJhbmdlQm91bmRhcnlQb2ludC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjIyMjQsMTAgKzIyMjMxLDEwIEBACiAJ
CQljaGlsZHJlbiA9ICgKIAkJCQk0MTA5MzgyODIzNDc3OTlBMDA5NDI4QkEgLyogSlNBYm9ydENv
bnRyb2xsZXJDdXN0b20uY3BwICovLAogCQkJCTQxMDkzODJDMjM0Nzg1MEUwMDk0MjhCQSAvKiBK
U0Fib3J0U2lnbmFsQ3VzdG9tLmNwcCAqLywKKwkJCQk5MzU1RUY1MzI1M0E0RDVBMDA2RkY0QTQg
LyogSlNBYnN0cmFjdFJhbmdlQ3VzdG9tLmNwcCAqLywKIAkJCQk3MUVGQ0VERTIwMkIzOUM3MDBE
N0M0MTEgLyogSlNBbmltYXRpb25FZmZlY3RDdXN0b20uY3BwICovLAogCQkJCTcxMDI1RUQ1MUY5
OUYxNDcwMDRBMjUwQyAvKiBKU0FuaW1hdGlvblRpbWVsaW5lQ3VzdG9tLmNwcCAqLywKIAkJCQlC
QzJFRDZCQjBDNkJEMkYwMDA5MjBCRkYgLyogSlNBdHRyQ3VzdG9tLmNwcCAqLywKLQkJCQk0MTA2
MjZBNzIyODBBMjJBMDA2RDFCNTkgLyogSlNBdWRpb05vZGVDdXN0b20uY3BwICovLAogCQkJCUJF
NkRGNzBFMTcxQ0EyREEwMERENTJCOCAvKiBKU0F1ZGlvVHJhY2tDdXN0b20uY3BwICovLAogCQkJ
CUJFNkRGNzEwMTcxQ0EyREEwMERENTJCOCAvKiBKU0F1ZGlvVHJhY2tMaXN0Q3VzdG9tLmNwcCAq
LywKIAkJCQk4M0YzN0E2NzI1MzZCMjFCMDBGRjVGM0IgLyogSlNBdWRpb1dvcmtsZXRQcm9jZXNz
b3JDdXN0b20uY3BwICovLApAQCAtMjUxNTIsOCArMjUxNTksNiBAQAogCQkJCUE1NzhGNDNBMURF
MDEzRkIwMDNERkM2QSAvKiBKU1Byb21pc2VSZWplY3Rpb25FdmVudC5oICovLAogCQkJCUNFRDA2
QUNFMUM3Nzc1NDgwMEZERkFGMSAvKiBKU1NlY3VyaXR5UG9saWN5VmlvbGF0aW9uRXZlbnQuY3Bw
ICovLAogCQkJCUNFRDA2QUNGMUM3Nzc1NDgwMEZERkFGMSAvKiBKU1NlY3VyaXR5UG9saWN5Vmlv
bGF0aW9uRXZlbnQuaCAqLywKLQkJCQlBODY2MjlDRTA5REEyQjQ3MDA5NjMzQTcgLyogSlNTdGF0
aWNSYW5nZS5jcHAgKi8sCi0JCQkJQTg2NjI5Q0QwOURBMkI0NzAwOTYzM0E3IC8qIEpTU3RhdGlj
UmFuZ2UuaCAqLywKIAkJCQk5MzNBMTRCNjBCN0QxRDUyMDBBNTNGRkQgLyogSlNUZXh0RXZlbnQu
Y3BwICovLAogCQkJCTkzM0ExNEI3MEI3RDFENTIwMEE1M0ZGRCAvKiBKU1RleHRFdmVudC5oICov
LAogCQkJCTBGREE3QzEwMTg4MzIyRUIwMEM5NTRCNSAvKiBKU1RvdWNoLmNwcCAqLywKQEAgLTI2
Nzc4LDggKzI2NzgzLDEyIEBACiAJCUJDOTg1NDQ2MENEM0RBNUYwMDA2OUJDMSAvKiBSYW5nZXMg
Ki8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCTkzNTVFRjUw
MjUzQTQyNzkwMDZGRjRBNCAvKiBKU0Fic3RyYWN0UmFuZ2UuY3BwICovLAorCQkJCTkzNTVFRjRG
MjUzQTQyNzgwMDZGRjRBNCAvKiBKU0Fic3RyYWN0UmFuZ2UuaCAqLywKIAkJCQk2NURGMzFFRDA5
RDFDQzYwMDAwQkUzMjUgLyogSlNSYW5nZS5jcHAgKi8sCiAJCQkJNjVERjMxRUUwOUQxQ0M2MDAw
MEJFMzI1IC8qIEpTUmFuZ2UuaCAqLywKKwkJCQlBODY2MjlDRTA5REEyQjQ3MDA5NjMzQTcgLyog
SlNTdGF0aWNSYW5nZS5jcHAgKi8sCisJCQkJQTg2NjI5Q0QwOURBMkI0NzAwOTYzM0E3IC8qIEpT
U3RhdGljUmFuZ2UuaCAqLywKIAkJCSk7CiAJCQluYW1lID0gUmFuZ2VzOwogCQkJc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsKQEAgLTI5Mjk5LDYgKzI5MzA4LDkgQEAKIAkJCQk3Q0QwRTJCRDFGODBB
NTZFMDAxNkE0Q0UgLyogQWJvcnRTaWduYWwuY3BwICovLAogCQkJCTdDRDBFMkJDMUY4MEE1NkUw
MDE2QTRDRSAvKiBBYm9ydFNpZ25hbC5oICovLAogCQkJCTdDRDBFMkJFMUY4MEE1NkUwMDE2QTRD
RSAvKiBBYm9ydFNpZ25hbC5pZGwgKi8sCisJCQkJOTNEMDUwMzEyNTNBMTQ4QzAwMkEzMDcyIC8q
IEFic3RyYWN0UmFuZ2UuY3BwICovLAorCQkJCTkzRDA1MDJFMjUzQTE0OEEwMDJBMzA3MiAvKiBB
YnN0cmFjdFJhbmdlLmggKi8sCisJCQkJOTNEMDUwMzAyNTNBMTQ4QzAwMkEzMDcyIC8qIEFic3Ry
YWN0UmFuZ2UuaWRsICovLAogCQkJCTdDNTIyMjk3MUUxREFFMTYwMDJDQjhGNyAvKiBBY3RpdmVE
T01DYWxsYmFjay5jcHAgKi8sCiAJCQkJN0M1MjIyOTgxRTFEQUUxNjAwMkNCOEY3IC8qIEFjdGl2
ZURPTUNhbGxiYWNrLmggKi8sCiAJCQkJRTFDNERFNkQwRUE3NUM2NTAwMjNDQ0Q2IC8qIEFjdGl2
ZURPTU9iamVjdC5jcHAgKi8sCkBAIC0zMDQyOSw2ICszMDQ0MSw3IEBACiAJCQkJNDZCOTUxOTUy
MDdENjMzNDAwQTdEMkREIC8qIEFic3RyYWN0RE9NV2luZG93LmggaW4gSGVhZGVycyAqLywKIAkJ
CQk0NkI5NTE5NjIwN0Q2MzNBMDBBN0QyREQgLyogQWJzdHJhY3RGcmFtZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJRjQ4MjIzMTMxRTM4NkUyNDAwNjZGQzc5IC8qIEFic3RyYWN0UGFzdGVib2FyZC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJOTNEMDUwMzIyNTNBMTQ5QTAwMkEzMDcyIC8qIEFic3RyYWN0
UmFuZ2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxRTFCMUQxMEZGNTk4NjkwMDU3NkIzQiAvKiBB
YnN0cmFjdFdvcmtlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMjlBODEyMkUwRkJCOUMxRDAwNTEw
MjkzIC8qIEFjY2Vzc2liaWxpdHlBUklBR3JpZENlbGwuaCBpbiBIZWFkZXJzICovLAogCQkJCTI5
QTgxMjMzMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5QVJJQUdyaWRSb3cuaCBpbiBI
ZWFkZXJzICovLApAQCAtMzIwMTYsNiArMzIwMjksNyBAQAogCQkJCTcxMjQ3RTM4MUZFQTVGODYw
MDhDMDhDRSAvKiBJdGVyYXRpb25Db21wb3NpdGVPcGVyYXRpb24uaCBpbiBIZWFkZXJzICovLAog
CQkJCTdDMzBEOTg0MUY4MTVBRUMwMDI2ODM1NiAvKiBKU0Fib3J0Q29udHJvbGxlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJN0MzMEQ5ODYxRjgxNUFFQzAwMjY4MzU2IC8qIEpTQWJvcnRTaWduYWwu
aCBpbiBIZWFkZXJzICovLAorCQkJCTkzNTVFRjUxMjUzQTQyNzkwMDZGRjRBNCAvKiBKU0Fic3Ry
YWN0UmFuZ2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxOEY4ODA1MEZGOTU3QUYwMDgwRjA0NSAv
KiBKU0Fic3RyYWN0V29ya2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBMTY3N0UxMzIxM0UwM0M2
MDBBMDhDMzQgLyogSlNBZGRyZXNzRXJyb3JzLmggaW4gSGVhZGVycyAqLywKIAkJCQk1NzA0NDA1
QTFFNTM5MzYyMDAzNTY2MDEgLyogSlNBZXNDYmNDZmJQYXJhbXMuaCBpbiBIZWFkZXJzICovLApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNBYnN0cmFjdFJhbmdlQ3Vz
dG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQWJzdHJhY3RSYW5nZUN1c3Rv
bS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uZTczODZkMTNhMjA3YTk1M2JkMjlmODk3NTIxNzNhMjBlNTFiNmY5
MwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQWJzdHJh
Y3RSYW5nZUN1c3RvbS5jcHAKQEAgLTAsMCArMSw0NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJKU0Fic3RyYWN0UmFuZ2UuaCIKKworI2luY2x1ZGUgIkpT
RE9NV3JhcHBlckNhY2hlLmgiCisjaW5jbHVkZSAiSlNSYW5nZS5oIgorI2luY2x1ZGUgIkpTU3Rh
dGljUmFuZ2UuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitKU0M6OkpTVmFsdWUgdG9KUyhK
U0M6OkpTR2xvYmFsT2JqZWN0KiBsZXhpY2FsR2xvYmFsT2JqZWN0LCBKU0RPTUdsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBBYnN0cmFjdFJhbmdlJiByYW5nZSkKK3sKKyAgICByZXR1cm4gd3Jh
cChsZXhpY2FsR2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QsIHJhbmdlKTsKK30KKworSlNDOjpK
U1ZhbHVlIHRvSlNOZXdseUNyZWF0ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxBYnN0cmFjdFJhbmdlPiYmIHJhbmdlKQoreworICAg
IGlmIChpczxTdGF0aWNSYW5nZT4ocmFuZ2UuZ2V0KCkpKQorICAgICAgICByZXR1cm4gY3JlYXRl
V3JhcHBlcjxTdGF0aWNSYW5nZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKHJhbmdlKSk7CisgICAg
cmV0dXJuIGNyZWF0ZVdyYXBwZXI8UmFuZ2U+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShyYW5nZSkp
OworfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50
Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3Bw
CmluZGV4IDViZWI0ZDhjYjUwN2NjZGE4NjRjYzUxYjQ2ODlkMjdkMjA0NzE5NzMuLjY0ZjFiNTBi
MjRmYjgzNmNiODc3MGYyNWEwNWYwZGE1NzhkY2UzYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCkBAIC0yOSwyNCArMjksMTMgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJKU0V2ZW50LmgiCiAKLSNpbmNsdWRlICJEYXRhVHJhbnNm
ZXIuaCIKLSNpbmNsdWRlICJFdmVudC5oIgotI2luY2x1ZGUgIkV2ZW50SGVhZGVycy5oIgotI2lu
Y2x1ZGUgIkV2ZW50SW50ZXJmYWNlcy5oIgotI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgotI2lu
Y2x1ZGUgIkpTRGF0YVRyYW5zZmVyLmgiCi0jaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNMb2Nr
Lmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvQXRvbVN0cmluZy5oPgotCisjaW5jbHVkZSAiSlNET01X
cmFwcGVyQ2FjaGUuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewotdXNpbmcgbmFtZXNwYWNlIEpT
QzsKIAotSlNWYWx1ZSB0b0pTKEpTR2xvYmFsT2JqZWN0KiBsZXhpY2FsR2xvYmFsT2JqZWN0LCBK
U0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBFdmVudCYgZXZlbnQpCitKU1ZhbHVlIHRv
SlMoSlNDOjpKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgRXZlbnQmIGV2ZW50KQogewogICAgIHJldHVybiB3cmFwKGxl
eGljYWxHbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdCwgZXZlbnQpOwogfQogCi0jdW5kZWYgVFJZ
X1RPX1dSQVBfV0lUSF9JTlRFUkZBQ0UKLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCmluZGV4IDRj
MDgzMThiZjZjNGVmNzBjMjdiM2ExODAwNjcyMDU3NzZhYTA5YzguLjk3MDJjYzU5NzJlOTk1Nzk2
YjE3ODRiNjliMDBiNjI3MTcxZjQ0MzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgKQEAgLTQxLDYgKzQxLDcgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogCiAjZGVmaW5lIFdFQkNPUkVfQ09NTU9OX1BSSVZBVEVfSURFTlRJRklFUlNfRUFD
SF9QUk9QRVJUWV9OQU1FKG1hY3JvKSBcCiAgICAgbWFjcm8oQWJvcnRTaWduYWwpIFwKKyAgICBt
YWNybyhBYnN0cmFjdFJhbmdlKSBcCiAgICAgbWFjcm8oQW5pbWF0aW9uKSBcCiAgICAgbWFjcm8o
QW5pbWF0aW9uRWZmZWN0KSBcCiAgICAgbWFjcm8oQW5pbWF0aW9uUGxheWJhY2tFdmVudCkgXApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0Fic3RyYWN0UmFuZ2UuY3BwIGIvU291cmNl
L1dlYkNvcmUvZG9tL0Fic3RyYWN0UmFuZ2UuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk4ZTJlZDQ5N2M0MjNj
MzlmMmYxMzVkZjNiMTIwNTEwMTE0YWUxMWEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vQWJzdHJhY3RSYW5nZS5jcHAKQEAgLTAsMCArMSw1NiBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJBYnN0cmFjdFJhbmdlLmgiCisKKyNpbmNs
dWRlICJTaW1wbGVSYW5nZS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK1NpbXBsZVJhbmdl
IG1ha2VTaW1wbGVSYW5nZShjb25zdCBBYnN0cmFjdFJhbmdlJiByYW5nZSkKK3sKKyAgICByZXR1
cm4geyB7IHJhbmdlLnN0YXJ0Q29udGFpbmVyKCksIHJhbmdlLnN0YXJ0T2Zmc2V0KCkgfSwgeyBy
YW5nZS5lbmRDb250YWluZXIoKSwgcmFuZ2UuZW5kT2Zmc2V0KCkgfSB9OworfQorCitTaW1wbGVS
YW5nZSBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgUmVmPEFic3RyYWN0UmFuZ2U+JiByYW5nZSkKK3sK
KyAgICByZXR1cm4gbWFrZVNpbXBsZVJhbmdlKHJhbmdlLmdldCgpKTsKK30KKworT3B0aW9uYWw8
U2ltcGxlUmFuZ2U+IG1ha2VTaW1wbGVSYW5nZShjb25zdCBBYnN0cmFjdFJhbmdlKiByYW5nZSkK
K3sKKyAgICBpZiAoIXJhbmdlKQorICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworICAgIHJl
dHVybiBtYWtlU2ltcGxlUmFuZ2UoKnJhbmdlKTsKK30KKworT3B0aW9uYWw8U2ltcGxlUmFuZ2U+
IG1ha2VTaW1wbGVSYW5nZShjb25zdCBSZWZQdHI8QWJzdHJhY3RSYW5nZT4mIHJhbmdlKQorewor
ICAgIHJldHVybiBtYWtlU2ltcGxlUmFuZ2UocmFuZ2UuZ2V0KCkpOworfQorCit9CisKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJhbmdlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vQWJzdHJhY3RSYW5nZS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE0MTk0ZWVmYThjZTIzZTkxMDIzNDNi
NWM0YTQxMWU0OTljZjEwOWQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
QWJzdHJhY3RSYW5nZS5oCkBAIC0wLDAgKzEsNTUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9u
Y2UKKworI2luY2x1ZGUgPHd0Zi9PcHRpb25hbC5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVk
Lmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgTm9kZTsKKworc3RydWN0IFNpbXBs
ZVJhbmdlOworCitjbGFzcyBBYnN0cmFjdFJhbmdlIDogcHVibGljIFJlZkNvdW50ZWQ8QWJzdHJh
Y3RSYW5nZT4geworcHVibGljOgorICAgIHZpcnR1YWwgfkFic3RyYWN0UmFuZ2UoKSA9IGRlZmF1
bHQ7CisKKyAgICB2aXJ0dWFsIE5vZGUmIHN0YXJ0Q29udGFpbmVyKCkgY29uc3QgPSAwOworICAg
IHZpcnR1YWwgdW5zaWduZWQgc3RhcnRPZmZzZXQoKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBO
b2RlJiBlbmRDb250YWluZXIoKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCB1bnNpZ25lZCBlbmRP
ZmZzZXQoKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBib29sIGNvbGxhcHNlZCgpIGNvbnN0ID0g
MDsKKworICAgIHZpcnR1YWwgYm9vbCBpc0xpdmVSYW5nZSgpIGNvbnN0ID0gMDsKK307CisKK1Np
bXBsZVJhbmdlIG1ha2VTaW1wbGVSYW5nZShjb25zdCBBYnN0cmFjdFJhbmdlJik7CitTaW1wbGVS
YW5nZSBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgUmVmPEFic3RyYWN0UmFuZ2U+Jik7CitPcHRpb25h
bDxTaW1wbGVSYW5nZT4gbWFrZVNpbXBsZVJhbmdlKGNvbnN0IEFic3RyYWN0UmFuZ2UqKTsKK09w
dGlvbmFsPFNpbXBsZVJhbmdlPiBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgUmVmUHRyPEFic3RyYWN0
UmFuZ2U+Jik7CisKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJh
bmdlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJhbmdlLmlkbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4yNGUzODczYTYzMzUwZGUxMjc0Mzc0MDI0OGEwYjA2NmNmNTMxODU5Ci0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0Fic3RyYWN0UmFuZ2UuaWRsCkBAIC0wLDAgKzEsMzkg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUK
KyAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCisgKiAgICBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogICAgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyAqICAgIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworICogICAg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQorICogTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAorICogT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUgorICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCisgKiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0gg
REFNQUdFLgorICovCisKK1sKKyAgICBDdXN0b21Ub0pTT2JqZWN0LAorICAgIEV4cG9zZWQ9V2lu
ZG93LAorXSBpbnRlcmZhY2UgQWJzdHJhY3RSYW5nZSB7CisgICAgcmVhZG9ubHkgYXR0cmlidXRl
IE5vZGUgc3RhcnRDb250YWluZXI7CisgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxv
bmcgc3RhcnRPZmZzZXQ7CisgICAgcmVhZG9ubHkgYXR0cmlidXRlIE5vZGUgZW5kQ29udGFpbmVy
OworICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGVuZE9mZnNldDsKKyAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBjb2xsYXBzZWQ7Cit9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuaAppbmRl
eCA0ODdhOGIxYjg0OTRjZGRhMDgyMGFhZDE3NWE4YmYxMzgxMDg3ZjJkLi40NGY0NDcyNzdiMDU4
YzQ5M2JiYjEyMTNlMDBjMDllNWViNWMyNTUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9k
b20vUmFuZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuaApAQCAtMjQsNiArMjQs
NyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkFic3RyYWN0UmFuZ2UuaCIKICNpbmNs
dWRlICJSYW5nZUJvdW5kYXJ5UG9pbnQuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMzcs
MTYgKzM4LDE3IEBAIGNsYXNzIFRleHQ7CiAKIHN0cnVjdCBTaW1wbGVSYW5nZTsKIAotY2xhc3Mg
UmFuZ2UgOiBwdWJsaWMgUmVmQ291bnRlZDxSYW5nZT4geworY2xhc3MgUmFuZ2UgZmluYWwgOiBw
dWJsaWMgQWJzdHJhY3RSYW5nZSB7CisgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChTdGF0aWNS
YW5nZSk7CiBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxSYW5nZT4gY3Jl
YXRlKERvY3VtZW50Jik7CiAgICAgV0VCQ09SRV9FWFBPUlQgflJhbmdlKCk7CiAKLSAgICBOb2Rl
JiBzdGFydENvbnRhaW5lcigpIGNvbnN0IHsgcmV0dXJuIG1fc3RhcnQuY29udGFpbmVyKCk7IH0K
LSAgICB1bnNpZ25lZCBzdGFydE9mZnNldCgpIGNvbnN0IHsgcmV0dXJuIG1fc3RhcnQub2Zmc2V0
KCk7IH0KLSAgICBOb2RlJiBlbmRDb250YWluZXIoKSBjb25zdCB7IHJldHVybiBtX2VuZC5jb250
YWluZXIoKTsgfQotICAgIHVuc2lnbmVkIGVuZE9mZnNldCgpIGNvbnN0IHsgcmV0dXJuIG1fZW5k
Lm9mZnNldCgpOyB9Ci0gICAgYm9vbCBjb2xsYXBzZWQoKSBjb25zdCB7IHJldHVybiBtX3N0YXJ0
ID09IG1fZW5kOyB9CisgICAgTm9kZSYgc3RhcnRDb250YWluZXIoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiBtX3N0YXJ0LmNvbnRhaW5lcigpOyB9CisgICAgdW5zaWduZWQgc3RhcnRPZmZzZXQoKSBj
b25zdCBmaW5hbCB7IHJldHVybiBtX3N0YXJ0Lm9mZnNldCgpOyB9CisgICAgTm9kZSYgZW5kQ29u
dGFpbmVyKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9lbmQuY29udGFpbmVyKCk7IH0KKyAgICB1
bnNpZ25lZCBlbmRPZmZzZXQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2VuZC5vZmZzZXQoKTsg
fQorICAgIGJvb2wgY29sbGFwc2VkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9zdGFydCA9PSBt
X2VuZDsgfQogICAgIE5vZGUqIGNvbW1vbkFuY2VzdG9yQ29udGFpbmVyKCkgY29uc3QgeyByZXR1
cm4gY29tbW9uSW5jbHVzaXZlQW5jZXN0b3Ioc3RhcnRDb250YWluZXIoKSwgZW5kQ29udGFpbmVy
KCkpLmdldCgpOyB9CiAKICAgICBXRUJDT1JFX0VYUE9SVCBFeGNlcHRpb25Pcjx2b2lkPiBzZXRT
dGFydChSZWY8Tm9kZT4mJiwgdW5zaWduZWQgb2Zmc2V0KTsKQEAgLTExOCw2ICsxMjAsOCBAQCBw
dWJsaWM6CiBwcml2YXRlOgogICAgIGV4cGxpY2l0IFJhbmdlKERvY3VtZW50Jik7CiAKKyAgICBi
b29sIGlzTGl2ZVJhbmdlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQorCiAgICAgdm9p
ZCB1cGRhdGVEb2N1bWVudCgpOwogICAgIHZvaWQgdXBkYXRlQXNzb2NpYXRlZFNlbGVjdGlvbigp
OwogICAgIEV4Y2VwdGlvbk9yPFJlZlB0cjxEb2N1bWVudEZyYWdtZW50Pj4gcHJvY2Vzc0NvbnRl
bnRzKEFjdGlvblR5cGUpOwpAQCAtMTQyLDMgKzE0Niw3IEBAIFdFQkNPUkVfRVhQT1JUIFJlZlB0
cjxSYW5nZT4gY3JlYXRlTGl2ZVJhbmdlKGNvbnN0IE9wdGlvbmFsPFNpbXBsZVJhbmdlPiYpOwog
Ly8gT3V0c2lkZSB0aGUgV2ViQ29yZSBuYW1lc3BhY2UgZm9yIGVhc2Ugb2YgaW52b2NhdGlvbiBm
cm9tIHRoZSBkZWJ1Z2dlci4KIHZvaWQgc2hvd1RyZWUoY29uc3QgV2ViQ29yZTo6UmFuZ2UqKTsK
ICNlbmRpZgorCitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OlJhbmdlKQor
ICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpBYnN0cmFjdFJhbmdlJiByYW5n
ZSkgeyByZXR1cm4gcmFuZ2UuaXNMaXZlUmFuZ2UoKTsgfQorU1BFQ0lBTElaRV9UWVBFX1RSQUlU
U19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9SYW5nZS5pZGwKaW5kZXggNjNkZjM4NzdmNjBkYjdiMTg1MDdlYzk1ODdi
OTIwYTU1ZWQ1NWYxMS4uM2MwNTdhMGZiOTlkZDc4MmEyMDI4ZjQ0YWMxZmU1ZDJhYTg4YmRlMCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vUmFuZ2UuaWRsCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykg
MjAwNiBBcHBsZSBJbmMuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAyMCBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDYgU2FtdWVsIFdlaW5pZyA8
c2FtLndlaW5pZ0BnbWFpbC5jb20+CiAgKgogICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdh
cmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgpAQCAtMjAsMTcgKzIwLDEyIEBACiAK
IFsKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPVJlYWNoYWJsZUZyb21ET01XaW5kb3csCi0gICAg
SW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKICAgICBFeHBvcnRNYWNybz1XRUJDT1JFX0VYUE9S
VCwKLSAgICBFeHBvc2VkPVdpbmRvdwotXSBpbnRlcmZhY2UgUmFuZ2UgeworICAgIEV4cG9zZWQ9
V2luZG93LAorICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKK10gaW50ZXJmYWNlIFJhbmdl
IDogQWJzdHJhY3RSYW5nZSB7CiAgICAgW0NhbGxXaXRoPURvY3VtZW50XSBjb25zdHJ1Y3Rvcigp
OwogCi0gICAgcmVhZG9ubHkgYXR0cmlidXRlIE5vZGUgc3RhcnRDb250YWluZXI7Ci0gICAgcmVh
ZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgc3RhcnRPZmZzZXQ7Ci0gICAgcmVhZG9ubHkg
YXR0cmlidXRlIE5vZGUgZW5kQ29udGFpbmVyOwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNp
Z25lZCBsb25nIGVuZE9mZnNldDsKLSAgICByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBjb2xs
YXBzZWQ7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIE5vZGUgY29tbW9uQW5jZXN0b3JDb250YWlu
ZXI7CiAKICAgICBbTWF5VGhyb3dFeGNlcHRpb25dIHVuZGVmaW5lZCBzZXRTdGFydChOb2RlIG5v
ZGUsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9TdGF0aWNSYW5nZS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0YXRpY1JhbmdlLmgKaW5kZXgg
ZWNlOWI0ZGYwMWZjZGQ4NGE1ZjAwMWE5MjE2YmUxYTk1ODY2N2Y0Mi4uNzY5MDExM2RmOGEyYWU5
YmM4MjU1NmM0YWJmMTBmOTcyZTIyYTdhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9t
L1N0YXRpY1JhbmdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0YXRpY1JhbmdlLmgKQEAg
LTI1LDEzICsyNSwxNSBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIkV4Y2VwdGlvbk9y
LmgiCisjaW5jbHVkZSAiQWJzdHJhY3RSYW5nZS5oIgogI2luY2x1ZGUgIlNpbXBsZVJhbmdlLmgi
Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1j
bGFzcyBTdGF0aWNSYW5nZSA6IHB1YmxpYyBSZWZDb3VudGVkPFN0YXRpY1JhbmdlPiwgcHVibGlj
IFNpbXBsZVJhbmdlIHsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25PcjsKKwor
Y2xhc3MgU3RhdGljUmFuZ2UgZmluYWwgOiBwdWJsaWMgQWJzdHJhY3RSYW5nZSwgcHVibGljIFNp
bXBsZVJhbmdlIHsKKyAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFN0YXRpY1JhbmdlKTsKIHB1
YmxpYzoKICAgICBzdHJ1Y3QgSW5pdCB7CiAgICAgICAgIFJlZlB0cjxOb2RlPiBzdGFydENvbnRh
aW5lcjsKQEAgLTQ0LDggKzQ2LDIwIEBAIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPFN0YXRpY1Jh
bmdlPiBjcmVhdGUoY29uc3QgU2ltcGxlUmFuZ2UmKTsKICAgICBzdGF0aWMgUmVmPFN0YXRpY1Jh
bmdlPiBjcmVhdGUoU2ltcGxlUmFuZ2UmJik7CiAKKyAgICBOb2RlJiBzdGFydENvbnRhaW5lcigp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuIFNpbXBsZVJhbmdlOjpzdGFydENvbnRhaW5lcigpOyB9Cisg
ICAgdW5zaWduZWQgc3RhcnRPZmZzZXQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBTaW1wbGVSYW5n
ZTo6c3RhcnRPZmZzZXQoKTsgfQorICAgIE5vZGUmIGVuZENvbnRhaW5lcigpIGNvbnN0IGZpbmFs
IHsgcmV0dXJuIFNpbXBsZVJhbmdlOjplbmRDb250YWluZXIoKTsgfQorICAgIHVuc2lnbmVkIGVu
ZE9mZnNldCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFNpbXBsZVJhbmdlOjplbmRPZmZzZXQoKTsg
fQorICAgIGJvb2wgY29sbGFwc2VkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gU2ltcGxlUmFuZ2U6
OmNvbGxhcHNlZCgpOyB9CisKIHByaXZhdGU6CiAgICAgU3RhdGljUmFuZ2UoU2ltcGxlUmFuZ2Um
Jik7CisKKyAgICBib29sIGlzTGl2ZVJhbmdlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gZmFsc2U7
IH0KIH07CiAKIH0KKworU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpTdGF0
aWNSYW5nZSkKKyAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6QWJzdHJhY3RS
YW5nZSYgcmFuZ2UpIHsgcmV0dXJuICFyYW5nZS5pc0xpdmVSYW5nZSgpOyB9CitTUEVDSUFMSVpF
X1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3RhdGlj
UmFuZ2UuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0YXRpY1JhbmdlLmlkbAppbmRleCA4M2E5
ODIyMzhhNDZkNmMyM2M0MTRlMDU0MTVhYTVhZTY3MjBmNWRmLi4xMTI2NDhhMDgxNjkyNjRiODVh
NmQxODQ5M2M2MzgwOGI1NDg5MjY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3Rh
dGljUmFuZ2UuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdGF0aWNSYW5nZS5pZGwKQEAg
LTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE2IEFwcGxlLCBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTYtMjAyMCBBcHBsZSwgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0y
NCwxNyArMjQsMTAgQEAKICAqLwogCiBbCi0gICAgRW5hYmxlZEJ5U2V0dGluZz1JbnB1dEV2ZW50
cywKLSAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAotICAgIEV4cG9zZWQ9V2luZG93Ci1d
IGludGVyZmFjZSBTdGF0aWNSYW5nZSB7Ci0gICAgY29uc3RydWN0b3IoU3RhdGljUmFuZ2VJbml0
IHN0YXRpY1JhbmdlSW5pdERpY3QpOwotCi0gICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVk
IGxvbmcgc3RhcnRPZmZzZXQ7Ci0gICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcg
ZW5kT2Zmc2V0OwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb2RlIHN0YXJ0Q29udGFpbmVyOwot
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb2RlIGVuZENvbnRhaW5lcjsKLSAgICByZWFkb25seSBh
dHRyaWJ1dGUgYm9vbGVhbiBjb2xsYXBzZWQ7CisgICAgRXhwb3NlZD1XaW5kb3csCisgICAgSlNH
ZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAorXSBpbnRlcmZhY2UgU3RhdGljUmFuZ2UgOiBBYnN0cmFj
dFJhbmdlIHsKKyAgICBjb25zdHJ1Y3RvcihTdGF0aWNSYW5nZUluaXQgaW5pdCk7CiB9OwogCiBk
aWN0aW9uYXJ5IFN0YXRpY1JhbmdlSW5pdCB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpp
bmRleCBmZDdiMjlhMDFiZTA0NWZhZDhiZmQ1ZmFiMzg0Y2ZkOTZlNTg3MGNjLi41ZjEwOWNlYWI3
ZDRhOWU0MmZiYmViNTI4NWIzZDIwYzhiYWVlMWNkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0xMC0xNiAgRGFyaW4gQWRsZXIgIDxkYXJpbkBh
cHBsZS5jb20+CisKKyAgICAgICAgQWRkIEFic3RyYWN0UmFuZ2UKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzg0NgorCisgICAgICAgIFJldmlld2Vk
IGJ5IFJ5b3N1a2UgTml3YS4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9kb20vaWRs
aGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICBVcGRhdGVkIHRlc3QgcmVzdWx0
IGZvciBwcm9ncmVzc2lvbi4KKwogMjAyMC0xMC0xNCAgU2VyZ2lvIFZpbGxhciBTZW5pbiAgPHN2
aWxsYXJAaWdhbGlhLmNvbT4KIAogICAgICAgICBbY3NzLWZsZXhib3hdIGZsZXgtZ3JvdyBwcm9w
ZXJ0eSBzaG91bGQgYmUgYW5pbWF0YWJsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vaWRsaGFybmVzcy53aW5kb3ctZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vaWRs
aGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IDI2ZGUyZTg5OTgwNDAyYzRhMzhiYzY1
YWE5M2JiNTgxMDcyNDhhZTAuLjNmZTJmOWFiNjNkM2ViYjRhNTMyOWM3NjRlY2NjODIzZTcyNzY0
ZjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZG9tL2lkbGhhcm5lc3Mud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9pZGxoYXJuZXNzLndpbmRvdy1leHBl
Y3RlZC50eHQKQEAgLTE0OTQsMjcgKzE0OTQsMjcgQEAgUEFTUyBFdmVudFRhcmdldCBpbnRlcmZh
Y2U6IGRvY3VtZW50LmNyZWF0ZUNvbW1lbnQoImFiYyIpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eQog
UEFTUyBFdmVudFRhcmdldCBpbnRlcmZhY2U6IGNhbGxpbmcgcmVtb3ZlRXZlbnRMaXN0ZW5lcihE
T01TdHJpbmcsIEV2ZW50TGlzdGVuZXI/LCBvcHRpb25hbCAoRXZlbnRMaXN0ZW5lck9wdGlvbnMg
b3IgYm9vbGVhbikpIG9uIGRvY3VtZW50LmNyZWF0ZUNvbW1lbnQoImFiYyIpIHdpdGggdG9vIGZl
dyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IKIFBBU1MgRXZlbnRUYXJnZXQgaW50ZXJm
YWNlOiBkb2N1bWVudC5jcmVhdGVDb21tZW50KCJhYmMiKSBtdXN0IGluaGVyaXQgcHJvcGVydHkg
ImRpc3BhdGNoRXZlbnQoRXZlbnQpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZQogUEFTUyBFdmVudFRh
cmdldCBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzcGF0Y2hFdmVudChFdmVudCkgb24gZG9jdW1lbnQu
Y3JlYXRlQ29tbWVudCgiYWJjIikgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5
cGVFcnJvcgotRkFJTCBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9w
ZXJ0aWVzIG9mIGludGVyZmFjZSBvYmplY3QgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2Vz
IG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkg
IkFic3RyYWN0UmFuZ2UiIG1pc3NpbmcKLUZBSUwgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2Ugb2Jq
ZWN0IGxlbmd0aCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHBy
b3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIg
bWlzc2luZwotRkFJTCBBYnN0cmFjdFJhbmdlIGludGVyZmFjZSBvYmplY3QgbmFtZSBhc3NlcnRf
b3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJh
bmdlIiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBBYnN0
cmFjdFJhbmdlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFj
ZSBwcm90b3R5cGUgb2JqZWN0IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2
ZSBvd24gcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIGV4cGVjdGVkIHByb3BlcnR5ICJBYnN0cmFj
dFJhbmdlIiBtaXNzaW5nCi1GQUlMIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVuY2Ug
YW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyAiY29uc3RydWN0
b3IiIHByb3BlcnR5IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24g
cHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIGV4cGVjdGVkIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdl
IiBtaXNzaW5nCi1GQUlMIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHBy
b3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVuc2NvcGFibGVzIHBy
b3BlcnR5IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVy
dHkgIkFic3RyYWN0UmFuZ2UiIGV4cGVjdGVkIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBtaXNz
aW5nCi1GQUlMIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgc3RhcnRDb250YWlu
ZXIgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAi
QWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIG1pc3NpbmcK
LUZBSUwgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBzdGFydE9mZnNldCBhc3Nl
cnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFj
dFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBB
YnN0cmFjdFJhbmdlIGludGVyZmFjZTogYXR0cmlidXRlIGVuZENvbnRhaW5lciBhc3NlcnRfb3du
X3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdl
IiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBBYnN0cmFj
dFJhbmdlIGludGVyZmFjZTogYXR0cmlidXRlIGVuZE9mZnNldCBhc3NlcnRfb3duX3Byb3BlcnR5
OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBleHBlY3Rl
ZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBBYnN0cmFjdFJhbmdlIGlu
dGVyZmFjZTogYXR0cmlidXRlIGNvbGxhcHNlZCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRv
ZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0
eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBTdGF0aWNSYW5nZSBpbnRlcmZhY2U6IGV4
aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2Ugb2JqZWN0IGFzc2VydF9vd25fcHJv
cGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIGV4
cGVjdGVkIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBtaXNzaW5nCitQQVNTIEFic3RyYWN0UmFu
Z2UgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIG9iamVj
dAorUEFTUyBBYnN0cmFjdFJhbmdlIGludGVyZmFjZSBvYmplY3QgbGVuZ3RoCitQQVNTIEFic3Ry
YWN0UmFuZ2UgaW50ZXJmYWNlIG9iamVjdCBuYW1lCitQQVNTIEFic3RyYWN0UmFuZ2UgaW50ZXJm
YWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmpl
Y3QKK1BBU1MgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGll
cyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzICJjb25zdHJ1Y3RvciIgcHJvcGVydHkK
K1BBU1MgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBv
ZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkKK1BB
U1MgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBzdGFydENvbnRhaW5lcgorUEFT
UyBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTogYXR0cmlidXRlIHN0YXJ0T2Zmc2V0CitQQVNTIEFi
c3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgZW5kQ29udGFpbmVyCitQQVNTIEFic3Ry
YWN0UmFuZ2UgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgZW5kT2Zmc2V0CitQQVNTIEFic3RyYWN0UmFu
Z2UgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgY29sbGFwc2VkCitQQVNTIFN0YXRpY1JhbmdlIGludGVy
ZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBvYmplY3QKIFBBU1Mg
U3RhdGljUmFuZ2UgaW50ZXJmYWNlIG9iamVjdCBsZW5ndGgKIFBBU1MgU3RhdGljUmFuZ2UgaW50
ZXJmYWNlIG9iamVjdCBuYW1lCi1GQUlMIFN0YXRpY1JhbmdlIGludGVyZmFjZTogZXhpc3RlbmNl
IGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0IGFzc2VydF9vd25f
cHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkFic3RyYWN0UmFuZ2Ui
IGV4cGVjdGVkIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBtaXNzaW5nCitQQVNTIFN0YXRpY1Jh
bmdlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90
b3R5cGUgb2JqZWN0CiBQQVNTIFN0YXRpY1JhbmdlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBw
cm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3MgImNvbnN0cnVjdG9yIiBw
cm9wZXJ0eQogUEFTUyBTdGF0aWNSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVy
dGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVy
dHkKLUZBSUwgUmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50
ZXJmYWNlIG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3du
IHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5n
ZSIgbWlzc2luZworUEFTUyBSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGll
cyBvZiBpbnRlcmZhY2Ugb2JqZWN0CiBQQVNTIFJhbmdlIGludGVyZmFjZSBvYmplY3QgbGVuZ3Ro
CiBQQVNTIFJhbmdlIGludGVyZmFjZSBvYmplY3QgbmFtZQotRkFJTCBSYW5nZSBpbnRlcmZhY2U6
IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCBh
c3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0
cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZworUEFT
UyBSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2Ug
cHJvdG90eXBlIG9iamVjdAogUEFTUyBSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJv
cGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzICJjb25zdHJ1Y3RvciIgcHJv
cGVydHkKIFBBU1MgUmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2Yg
aW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVuc2NvcGFibGVzIHByb3BlcnR5CiBQQVNT
IFJhbmdlIGludGVyZmFjZTogYXR0cmlidXRlIGNvbW1vbkFuY2VzdG9yQ29udGFpbmVyCg==
</data>
<flag name="commit-queue"
          id="427899"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411633</attachid>
            <date>2020-10-16 17:09:24 -0700</date>
            <delta_ts>2020-10-16 17:37:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217846-20201016170923.patch</filename>
            <type>text/plain</type>
            <size>41428</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4NTYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGIwZGJhY2I1NTcyMjIz
OTE4NzU4NzUyYzFkYjU2NWZlMGEyZGY4NS4uMzU1NTM5MTBlOTMyNGI4YzhmZWU4MWE4Mjg0NzIw
OTM0MmY2NGJhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY2IEBACisyMDIwLTEwLTE2ICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgQWJzdHJhY3RSYW5nZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3ODQ2CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisgICAgICAgIFRoaXMgbWFrZXMg
dXMgbW9yZSBhY2N1cmF0ZWx5IG1hdGNoIHRoZSBET00gc3BlY2lmaWNhdGlvbiwgbWFrZXMgUmFu
Z2UKKyAgICAgICAgYW5kIFN0YXRpY1JhbmdlIG9iamVjdHMgc2xpZ2h0bHkgYmlnZ2VyIHNpbmNl
IHRoZXkgbm93IGhhdmUgYSB2aXJ0dWFsCisgICAgICAgIHRhYmxlIHBvaW50ZXIsIGFuZCBtYWtl
cyB0aGUgQWJzdHJhY3RSYW5nZSBtZXRob2RzIGEgYml0IHNsb3dlciB0byBjYWxsCisgICAgICAg
IGZyb20gSmF2YVNjcmlwdCBzaW5jZSB0aGV5IGFyZSBiYWNrZWQgYnkgQysrIHZpcnR1YWwgZnVu
Y3Rpb25zLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZGVkIEFic3RyYWN0UmFuZ2Ug
ZmlsZXMuCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdDogRGl0dG8u
CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Q6IERpdHRvLgorICAg
ICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IERpdHRvLgorICAgICAgICAqIEhlYWRlcnMuY21h
a2U6IERpdHRvLgorICAgICAgICAqIFNvdXJjZXMudHh0OiBEaXR0by4KKyAgICAgICAgKiBXZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IERpdHRvLgorICAgICAgICBBbHNvIHJlbW92
ZWQgcmVmZXJlbmNlIHRvIG5vbi1leGlzdGVudCBKU0F1ZGlvTm9kZUN1c3RvbS5jcHAgYW5kIG1v
dmVkCisgICAgICAgIEpTU3RhdGljUmFuZ2UgZmlsZSBmcm9tIHRoZSBFdmVudHMgZ3JvdXAgaW50
byB0aGUgUmFuZ2VzIGdyb3VwLgorCisgICAgICAgICogYmluZGluZ3MvanMvSlNBYnN0cmFjdFJh
bmdlQ3VzdG9tLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKTogQWRkZWQuIEp1
c3QgdGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24uIFdvdWxkIGJlCisgICAgICAgIG5pY2UgaWYg
d2UgZGlkIG5vdCBoYXZlIHRvIHdyaXRlIHRoaXMuCisgICAgICAgIChXZWJDb3JlOjp0b0pTTmV3
bHlDcmVhdGVkKTogTWFrZSBlaXRoZXIgYSBTdGF0aWNSYW5nZSBvciBSYW5nZQorICAgICAgICB3
cmFwcGVyIGRlcGVuZGluZyBvbiB3aGV0aGVyIHRoaXMgaXMgYSBsaXZlIHJhbmdlIG9yIG5vdC4K
KworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwOiBSZW1vdmVkIGxvdHMg
b2YgdW5uZWVkZWQgaW5jbHVkZXMuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKTogU3RvcHBlZCB1
c2luZyAidXNpbmcgbmFtZXNwYWNlIEpTQyIuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9XZWJD
b3JlQnVpbHRpbk5hbWVzLmg6IEFkZGVkIEFic3RyYWN0UmFuZ2UuCisKKyAgICAgICAgKiBkb20v
QWJzdHJhY3RSYW5nZS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6bWFrZVNpbXBsZVJh
bmdlKTogQWRkZWQuCisgICAgICAgICogZG9tL0Fic3RyYWN0UmFuZ2UuaDogQWRkZWQuCisgICAg
ICAgICogZG9tL0Fic3RyYWN0UmFuZ2UuaWRsOiBBZGRlZC4KKworICAgICAgICAqIGRvbS9SYW5n
ZS5oOiBDaGFuZ2VkIHRvIGRlcml2ZSBmcm9tIEFic3RyYWN0UmFuZ2UgaW5zdGVhZCBvZgorICAg
ICAgICBmcm9tIFJlZkNvdW50ZWQuIEFsc28gbWFya2VkIHRoaXMgZmluYWwgc2luY2UgaXQncyBu
b3cgcG9seW1vcnBoaWMuCisgICAgICAgIE1hcmtlZCBhbGwgdGhlIGZ1bmN0aW9ucyB0aGF0IG92
ZXJyaWRlIGZpbmFsIGFzIHdlbGwsIHRvIGNoZWNrIHRoYXQKKyAgICAgICAgdGhleSBjb3JyZWN0
bHkgb3ZlcnJpZGUgdGhlIHZpcnR1YWwgZnVuY3Rpb25zIGluIHRoZSBiYXNlIGNsYXNzLgorICAg
ICAgICBBZGRlZCBwcml2YXRlIGlzTGl2ZVJhbmdlIGZ1bmN0aW9uIG92ZXJyaWRlIHRoYXQgcmV0
dXJucyB0cnVlLgorICAgICAgICBBZGRlZCBTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOL0VO
RCBzbyB3ZSBjYW4gZG8gaXM8UmFuZ2U+LgorCisgICAgICAgICogZG9tL1JhbmdlLmlkbDogUmVt
b3ZlZCBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLiBBZGRlZAorICAgICAgICBKU0dlbmVyYXRl
VG9OYXRpdmVPYmplY3QuIEluaGVyaXQgZnJvbSBBYnN0cmFjdFJhbmdlLgorICAgICAgICBSZW1v
dmVkIHRoZSA1IGF0dHJpYnV0ZSBnZXR0ZXJzIHRoYXQgYXJlIG5vdyBpbmhlcml0ZWQgZnJvbSBB
YnN0cmFjdFJhbmdlLgorCisgICAgICAgICogZG9tL1N0YXRpY1JhbmdlLmg6IENoYW5nZWQgdG8g
ZGVyaXZlIGZyb20gQWJzdHJhY3RSYW5nZSBpbnN0ZWFkIG9mCisgICAgICAgIGZyb20gUmVmQ291
bnRlZC4gQWxzbyBtYXJrZWQgdGhpcyBmaW5hbCBzaW5jZSBpdCdzIG5vdyBwb2x5bW9ycGhpYy4K
KyAgICAgICAgQWRkZWQgZnVuY3Rpb25zIHRvIG92ZXJyaWRlIHRoZSBvbmVzIGZyb20gU3RhdGlj
UmFuZ2UsIGNhbGxpbmcgdGhyb3VnaAorICAgICAgICB0byB0aGUgb25lcyBmcm9tIFNpbXBsZVJh
bmdlIChJIHRob3VnaHQgdGhlcmUgd2FzIGEgd2F5IHRvIGRvIHRoaXMKKyAgICAgICAgd2l0aCB1
c2luZywgYnV0IEkgY291bGRuJ3QgZmlndXJlIHRoYXQgb3V0KS4gQWRkZWQgcHJpdmF0ZSBpc0xp
dmVSYW5nZQorICAgICAgICBmdW5jdGlvbiBvdmVycmlkZSB0aGF0IHJldHVybnMgZmFsc2UuIEFk
ZGVkIFNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4vRU5ECisgICAgICAgIHNvIHdlIGNhbiBk
byBpczxTdGF0aWNSYW5nZT4uCisKKyAgICAgICAgKiBkb20vU3RhdGljUmFuZ2UuaWRsOiBSZW1v
dmVkIEVuYWJsZWRCeVNldHRpbmc9SW5wdXRFdmVudHMgc2luY2UKKyAgICAgICAgdGhpcyBzaG91
bGQgbm93IGFsd2F5cyBiZSBpbmNsdWRlZC4gSSB0aGluayB3ZSBzaG91bGQgcHJvYmFibHkgcmVt
b3ZlIHRoZQorICAgICAgICBJbnB1dEV2ZW50cyBzZXR0aW5nIG5vdyBlbnRpcmVseS4gUmVtb3Zl
ZCBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLgorICAgICAgICBBZGRlZCBKU0dlbmVyYXRlVG9O
YXRpdmVPYmplY3QuIEluaGVyaXQgZnJvbSBBYnN0cmFjdFJhbmdlLgorICAgICAgICBSZW1vdmVk
IGFsbCA1IGF0dHJpYnV0ZSBnZXR0ZXJzLCB3aGljaCBhcmUgbm93IGluaGVyaXRlZCBmcm9tIEFi
c3RyYWN0UmFuZ2UuCisKIDIwMjAtMTAtMTUgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxk
QGFwcGxlLmNvbT4KIAogICAgICAgICBbQ29jb2FdIERvbid0IGNoYW5nZSB0aGUgdGV4dCBtYXRy
aXggbXVsdGlwbGUgdGltZXMgaW5zaWRlIEZvbnRDYXNjYWRlOjpkcmF3R2x5cGhzKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01h
a2VMaXN0cy50eHQKaW5kZXggZmQ5ZWJhNjRkMTQyZWJhNDU1OGRiZjFiMDIyOTQ0MDBmMGVjMjZh
MS4uZjY5OGQyZGEwYmNkMDRiNzNjNzcyYjY0NGNmYmZhYTk4MzcwMjU4MiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQKQEAgLTc1Myw2ICs3NTMsNyBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lETF9GSUxF
UwogICAgIGRvbS9BYm9ydEFsZ29yaXRobS5pZGwKICAgICBkb20vQWJvcnRDb250cm9sbGVyLmlk
bAogICAgIGRvbS9BYm9ydFNpZ25hbC5pZGwKKyAgICBkb20vQWJzdHJhY3RSYW5nZS5pZGwKICAg
ICBkb20vQW5pbWF0aW9uRXZlbnQuaWRsCiAgICAgZG9tL0F0dHIuaWRsCiAgICAgZG9tL0JlZm9y
ZUxvYWRFdmVudC5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LWlucHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54
Y2ZpbGVsaXN0CmluZGV4IDg2YTA3NzQxZjM4NDQ3OTIwYWEwZTkyNzYyYmQ0ZTBlNmU2MmRkNzAu
LjdhNDU0MWQxN2ZlYjNlMDgyODFlYWFmYzA0MzlmYTBiMmE3NmMyOTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKKysrIGIvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdApAQCAtNjc1LDYgKzY3NSw3
IEBAICQoUFJPSkVDVF9ESVIpL2Nzcy90eXBlZG9tL1R5cGVkT01DU1NVbnBhcnNlZFZhbHVlLmlk
bAogJChQUk9KRUNUX0RJUikvZG9tL0Fib3J0QWxnb3JpdGhtLmlkbAogJChQUk9KRUNUX0RJUikv
ZG9tL0Fib3J0Q29udHJvbGxlci5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9BYm9ydFNpZ25hbC5p
ZGwKKyQoUFJPSkVDVF9ESVIpL2RvbS9BYnN0cmFjdFJhbmdlLmlkbAogJChQUk9KRUNUX0RJUikv
ZG9tL0FuaW1hdGlvbkV2ZW50LmlkbAogJChQUk9KRUNUX0RJUikvZG9tL0F0dHIuaWRsCiAkKFBS
T0pFQ1RfRElSKS9kb20vQmVmb3JlTG9hZEV2ZW50LmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCBlMjFmYzgwNTYxMjRlYmVhYTA5
MmQyZmM4ZjY2ZTQ3NjZkMjg2ZjBlLi5hYjMxYWJhMWZmNWRjN2EzZWQwYjRkZDdmMDMzOTg1NTNi
ZjNlOGQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQu
eGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNm
aWxlbGlzdApAQCAtNDYsNiArNDYsOCBAQCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0Fib3J0Q29udHJvbGxlci5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElS
KS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTQWJvcnRDb250cm9sbGVyLmgKICQoQlVJTFRfUFJP
RFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTQWJvcnRTaWduYWwuY3BwCiAkKEJV
SUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0Fib3J0U2lnbmFsLmgK
KyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTQWJzdHJhY3RS
YW5nZS5jcHAKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pT
QWJzdHJhY3RSYW5nZS5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU0Fic3RyYWN0V29ya2VyLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNBYnN0cmFjdFdvcmtlci5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikv
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0FjY2Vzc2liaWxpdHlSb2xlLmNwcApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNjUxM2I4YmVjMzUxN2Y3ZGJjNDYzMDJkZDY5OTJkMjRl
OGEyMGRkNC4uYzA0ODJiZTRlZDlmNTMwZDY4OTdiOTM0YTBkNTU3OGUwMTNiYjNmZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC03MDYsNiArNzA2LDcgQEAgSlNfQklORElOR19J
RExTID0gXAogICAgICQoV2ViQ29yZSkvZG9tL0Fib3J0QWxnb3JpdGhtLmlkbCBcCiAgICAgJChX
ZWJDb3JlKS9kb20vQWJvcnRDb250cm9sbGVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vQWJv
cnRTaWduYWwuaWRsIFwKKyAgICAkKFdlYkNvcmUpL2RvbS9BYnN0cmFjdFJhbmdlLmlkbCBcCiAg
ICAgJChXZWJDb3JlKS9kb20vQW5pbWF0aW9uRXZlbnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL2Rv
bS9BdHRyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vQmVmb3JlTG9hZEV2ZW50LmlkbCBcCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dlYkNvcmUv
SGVhZGVycy5jbWFrZQppbmRleCAwYWRlN2Q4YzhkNGIyZjJkOThkNmQzOTBlOTM4YWIzM2ViNzQ1
ODE3Li5mNjk2NGU1Y2Y3OTNmNmIxOWExNTJjM2RkNDM5ODU2ZDc0ZDgyNjE2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0hlYWRl
cnMuY21ha2UKQEAgLTM3MSw2ICszNzEsNyBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09S
S19IRUFERVJTCiAgICAgZGlzcGxheS9jc3MvRGlzcGxheVJlcGxhY2VkQm94LmgKICAgICBkaXNw
bGF5L2Nzcy9EaXNwbGF5U3R5bGUuaAogCisgICAgZG9tL0Fic3RyYWN0UmFuZ2UuaAogICAgIGRv
bS9BY3RpdmVET01DYWxsYmFjay5oCiAgICAgZG9tL0FjdGl2ZURPTU9iamVjdC5oCiAgICAgZG9t
L0F0dHIuaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2Uv
V2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBhZWYxYjYyMzIxMjVlMzY0OWI5MGY0M2RlMzg5NmE5
ZDBjYWM3YWQ5Li4wMGJiNDU4MWI0ZDkyM2EyMzI5YjcwMGMxOTM3MmVhNjYxNjI2NjIzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dApAQCAtNDY3LDYgKzQ2Nyw3IEBAIGJpbmRpbmdzL2pzL0dDQ29udHJvbGxlci5j
cHAKIGJpbmRpbmdzL2pzL0lEQkJpbmRpbmdVdGlsaXRpZXMuY3BwCiBiaW5kaW5ncy9qcy9KU0Fi
b3J0Q29udHJvbGxlckN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTQWJvcnRTaWduYWxDdXN0b20u
Y3BwCitiaW5kaW5ncy9qcy9KU0Fic3RyYWN0UmFuZ2VDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9K
U0FuaW1hdGlvbkVmZmVjdEN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTQW5pbWF0aW9uVGltZWxp
bmVDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0F0dHJDdXN0b20uY3BwCkBAIC04MTYsNiArODE3
LDcgQEAgZGlzcGxheS9EaXNwbGF5VHJlZUJ1aWxkZXIuY3BwCiBkaXNwbGF5L0Rpc3BsYXlWaWV3
LmNwcAogZG9tL0Fib3J0Q29udHJvbGxlci5jcHAKIGRvbS9BYm9ydFNpZ25hbC5jcHAKK2RvbS9B
YnN0cmFjdFJhbmdlLmNwcAogZG9tL0FjdGl2ZURPTUNhbGxiYWNrLmNwcAogZG9tL0FjdGl2ZURP
TU9iamVjdC5jcHAKIGRvbS9BbGxEZXNjZW5kYW50c0NvbGxlY3Rpb24uY3BwCkBAIC0yNjU0LDYg
KzI2NTYsNyBAQCBKU0FOR0xFSW5zdGFuY2VkQXJyYXlzLmNwcAogSlNBYm9ydEFsZ29yaXRobS5j
cHAKIEpTQWJvcnRDb250cm9sbGVyLmNwcAogSlNBYm9ydFNpZ25hbC5jcHAKK0pTQWJzdHJhY3RS
YW5nZS5jcHAKIEpTQWJzdHJhY3RXb3JrZXIuY3BwCiBKU0FkZHJlc3NFcnJvcnMuY3BwCiBKU0Fl
c0NiY0NmYlBhcmFtcy5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagppbmRleCAxYWNmMTQ0Mzk5MjQ4NTgxNDhkZDIwYjllOGRlN2E1MWUz
YjIyZGNlLi5kOTkzYjgyNmI1MWU1Yzc3NzkxYzc2MmEzZGQ4NmViOGNkYTk3YjkyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0y
NzMxLDYgKzI3MzEsNyBAQAogCQk5MzRGNzEzQzBENUE2RjE5MDAwMThENjkgLyogUmVzb3VyY2VF
cnJvckJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzNEY3MTNCMEQ1QTZGMTkwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9yQmFzZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNTAwRjMyMTNGREUz
QkUwMDk5RUMyNCAvKiBOU1Njcm9sbGVySW1wRGV0YWlscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1MDBGMzExM0ZERTNCRTAwOTlFQzI0IC8qIE5T
U2Nyb2xsZXJJbXBEZXRhaWxzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJOTM1MjA3QkUwOUJENDEwQTAwRjIwMzhEIC8qIExvY2FsaXplZFN0cmlu
Z3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNTIw
N0JEMDlCRDQxMEEwMEYyMDM4RCAvKiBMb2NhbGl6ZWRTdHJpbmdzLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTM1NUVGNTEyNTNBNDI3OTAwNkZG
NEE0IC8qIEpTQWJzdHJhY3RSYW5nZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTM1NUVGNEYyNTNBNDI3ODAwNkZGNEE0IC8qIEpTQWJzdHJhY3RSYW5n
ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkz
NUM0NzYzMDlBQzRDRTYwMEE2QUFCNCAvKiBNb3VzZUV2ZW50V2l0aEhpdFRlc3RSZXN1bHRzLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVDNDc2MjA5
QUM0Q0U2MDBBNkFBQjQgLyogTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5oICovOyB9Owog
CQk5MzVDNDc2ODA5QUM0RDQzMDBBNkFBQjQgLyogUGxhdGZvcm1LZXlib2FyZEV2ZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVDNDc2NjA5QUM0
RDQzMDBBNkFBQjQgLyogUGxhdGZvcm1LZXlib2FyZEV2ZW50LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM1QzQ3NjkwOUFDNEQ0MzAwQTZBQUI0
IC8qIFBsYXRmb3JtTW91c2VFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTM1QzQ3NjcwOUFDNEQ0MzAwQTZBQUI0IC8qIFBsYXRmb3JtTW91c2VF
dmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBA
IC0yNzc3LDYgKzI3NzgsNyBAQAogCQk5M0M0QTQxNTE2MjlERjVBMDBDM0VCNkUgLyogU2Nyb2xs
aW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTNDNEE0MTMxNjI5REY1QTAwQzNFQjZFIC8qIFNjcm9sbGlu
Z1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQk5M0M0RjZFQjExMDhGOUE1MDA5OUQwREIgLyogQWNjZXNz
aWJpbGl0eVNjcm9sbGJhci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTNDNEY2RTkxMTA4RjlBNTAwOTlEMERCIC8qIEFjY2Vzc2liaWxpdHlTY3JvbGxi
YXIuaCAqLzsgfTsKIAkJOTNDQ0YwMjcwQUY2QzUyOTAwMDE4RTg5IC8qIE5hdmlnYXRpb25BY3Rp
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQ0NG
MDI2MEFGNkM1MjkwMDAxOEU4OSAvKiBOYXZpZ2F0aW9uQWN0aW9uLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNEMDUwMzIyNTNBMTQ5QTAwMkEz
MDcyIC8qIEFic3RyYWN0UmFuZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzRDA1MDJFMjUzQTE0OEEwMDJBMzA3MiAvKiBBYnN0cmFjdFJhbmdlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTNEMTk2
MzExRDZDQUI3NjAwRkM3RTQ3IC8qIEV4Y2VwdGlvbk9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0QxOTYzMDFENkNBQjc2MDBGQzdFNDcgLyogRXhj
ZXB0aW9uT3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwogCQk5M0QxOTYzMzFENkNBQjgyMDBGQzdFNDcgLyogRXhjZXB0aW9uLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0QxOTYzMjFENkNBQjgyMDBGQzdF
NDcgLyogRXhjZXB0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJOTNENDM3OUYxRDU3QjE1MzAwQUI4NUVBIC8qIEpTRXhlY1N0YXRlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4RjkzNEQ4MzExODlG
MUVFMDA1MDhENUQgLyogSlNFeGVjU3RhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNzQ0NSw3ICs3NDQ3LDYgQEAKIAkJM0ZCQzRBRjExODk4
ODE1NjAwNDZFRTM4IC8qIFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNl
QVZLaXQubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTNGQkM0QUYyMTg5ODgxNTYw
MDQ2RUUzOCAvKiBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTAyNEZDODIzQ0YyNTRGMDBGREY5OEUgLyogU2Ft
cGxlQnVmZmVyRGlzcGxheUxheWVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNhbXBsZUJ1ZmZl
ckRpc3BsYXlMYXllci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTQxMDYyNkE3
MjI4MEEyMkEwMDZEMUI1OSAvKiBKU0F1ZGlvTm9kZUN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0F1ZGlvTm9kZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTQxMDc5MDhBMUZDM0U0RjIwMDYxQjI3QSAvKiBDbGllbnRPcmln
aW4uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2xpZW50T3JpZ2luLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMDg3RjAxMjQ4RTU5QzgwMDY4MEU5MSAvKiBB
dWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlclVuaXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXJVbml0LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEwODdGMDMyNDhFNTlDOTAwNjgwRTkxIC8q
IEF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVyVW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlclVuaXQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTExMjQ2LDYgKzExMjQ3LDkgQEAKIAkJOTM1MDBGMzEx
M0ZERTNCRTAwOTlFQzI0IC8qIE5TU2Nyb2xsZXJJbXBEZXRhaWxzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE5TU2Nyb2xsZXJJbXBEZXRhaWxzLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTkzNTIwN0JEMDlCRDQxMEEwMEYyMDM4RCAvKiBMb2NhbGl6ZWRTdHJp
bmdzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvY2FsaXplZFN0cmluZ3Mu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM1MzY3NkEwOUFFRDg4QjAwRDM1Q0Q2
IC8qIFNjcm9sbFZpZXdNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBh
dGggPSBTY3JvbGxWaWV3TWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzU1
RUY0RjI1M0E0Mjc4MDA2RkY0QTQgLyogSlNBYnN0cmFjdFJhbmdlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTQWJzdHJhY3RSYW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk5MzU1RUY1MDI1M0E0Mjc5MDA2RkY0QTQgLyogSlNBYnN0cmFjdFJhbmdlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQWJzdHJhY3RSYW5nZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNTVFRjUzMjUzQTRENUEwMDZGRjRB
NCAvKiBKU0Fic3RyYWN0UmFuZ2VDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBYnN0
cmFjdFJhbmdlQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM1QzQ3
NjIwOUFDNENFNjAwQTZBQUI0IC8qIE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzVDNDc2NjA5QUM0RDQzMDBBNkFB
QjQgLyogUGxhdGZvcm1LZXlib2FyZEV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFBsYXRmb3JtS2V5Ym9hcmRFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk5MzVDNDc2NzA5QUM0RDQzMDBBNkFBQjQgLyogUGxhdGZvcm1Nb3VzZUV2ZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXRmb3JtTW91c2VFdmVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTEzMzMsNiArMTEzMzcsOSBAQAogCQk5M0NBNENB
MjA5REY5M0ZBMDBERjg2NzcgLyogc3ZnLmNzcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBzdmcu
Y3NzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5M0NDRjAyNjBBRjZDNTI5MDAwMThF
ODkgLyogTmF2aWdhdGlvbkFjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBOYXZpZ2F0aW9uQWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzQ0NG
MDVGMEFGNkNBNzYwMDAxOEU4OSAvKiBOYXZpZ2F0aW9uQWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5hdmlnYXRpb25BY3Rpb24uY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5M0QwNTAyRTI1M0ExNDhBMDAyQTMwNzIgLyogQWJzdHJhY3RS
YW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBBYnN0cmFjdFJhbmdlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzRDA1MDMwMjUzQTE0OEMwMDJBMzA3MiAvKiBBYnN0cmFjdFJhbmdlLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBBYnN0cmFjdFJhbmdlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTNEMDUwMzEyNTNBMTQ4QzAwMkEzMDcyIC8qIEFic3RyYWN0UmFuZ2UuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQWJzdHJhY3RSYW5nZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTkzRDE5NjMwMUQ2Q0FCNzYwMEZDN0U0NyAvKiBFeGNlcHRpb25Pci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBFeGNlcHRpb25Pci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk5M0QxOTYzMjFENkNBQjgyMDBGQzdFNDcgLyogRXhjZXB0aW9uLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV4Y2VwdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk5M0Q5RDUzQjBEQTI3RTE4MDA3NzIxNkMgLyogUmFuZ2VCb3VuZGFyeVBvaW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJhbmdlQm91bmRhcnlQb2ludC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjIyMjQsMTAgKzIyMjMxLDEwIEBACiAJ
CQljaGlsZHJlbiA9ICgKIAkJCQk0MTA5MzgyODIzNDc3OTlBMDA5NDI4QkEgLyogSlNBYm9ydENv
bnRyb2xsZXJDdXN0b20uY3BwICovLAogCQkJCTQxMDkzODJDMjM0Nzg1MEUwMDk0MjhCQSAvKiBK
U0Fib3J0U2lnbmFsQ3VzdG9tLmNwcCAqLywKKwkJCQk5MzU1RUY1MzI1M0E0RDVBMDA2RkY0QTQg
LyogSlNBYnN0cmFjdFJhbmdlQ3VzdG9tLmNwcCAqLywKIAkJCQk3MUVGQ0VERTIwMkIzOUM3MDBE
N0M0MTEgLyogSlNBbmltYXRpb25FZmZlY3RDdXN0b20uY3BwICovLAogCQkJCTcxMDI1RUQ1MUY5
OUYxNDcwMDRBMjUwQyAvKiBKU0FuaW1hdGlvblRpbWVsaW5lQ3VzdG9tLmNwcCAqLywKIAkJCQlC
QzJFRDZCQjBDNkJEMkYwMDA5MjBCRkYgLyogSlNBdHRyQ3VzdG9tLmNwcCAqLywKLQkJCQk0MTA2
MjZBNzIyODBBMjJBMDA2RDFCNTkgLyogSlNBdWRpb05vZGVDdXN0b20uY3BwICovLAogCQkJCUJF
NkRGNzBFMTcxQ0EyREEwMERENTJCOCAvKiBKU0F1ZGlvVHJhY2tDdXN0b20uY3BwICovLAogCQkJ
CUJFNkRGNzEwMTcxQ0EyREEwMERENTJCOCAvKiBKU0F1ZGlvVHJhY2tMaXN0Q3VzdG9tLmNwcCAq
LywKIAkJCQk4M0YzN0E2NzI1MzZCMjFCMDBGRjVGM0IgLyogSlNBdWRpb1dvcmtsZXRQcm9jZXNz
b3JDdXN0b20uY3BwICovLApAQCAtMjUxNTIsOCArMjUxNTksNiBAQAogCQkJCUE1NzhGNDNBMURF
MDEzRkIwMDNERkM2QSAvKiBKU1Byb21pc2VSZWplY3Rpb25FdmVudC5oICovLAogCQkJCUNFRDA2
QUNFMUM3Nzc1NDgwMEZERkFGMSAvKiBKU1NlY3VyaXR5UG9saWN5VmlvbGF0aW9uRXZlbnQuY3Bw
ICovLAogCQkJCUNFRDA2QUNGMUM3Nzc1NDgwMEZERkFGMSAvKiBKU1NlY3VyaXR5UG9saWN5Vmlv
bGF0aW9uRXZlbnQuaCAqLywKLQkJCQlBODY2MjlDRTA5REEyQjQ3MDA5NjMzQTcgLyogSlNTdGF0
aWNSYW5nZS5jcHAgKi8sCi0JCQkJQTg2NjI5Q0QwOURBMkI0NzAwOTYzM0E3IC8qIEpTU3RhdGlj
UmFuZ2UuaCAqLywKIAkJCQk5MzNBMTRCNjBCN0QxRDUyMDBBNTNGRkQgLyogSlNUZXh0RXZlbnQu
Y3BwICovLAogCQkJCTkzM0ExNEI3MEI3RDFENTIwMEE1M0ZGRCAvKiBKU1RleHRFdmVudC5oICov
LAogCQkJCTBGREE3QzEwMTg4MzIyRUIwMEM5NTRCNSAvKiBKU1RvdWNoLmNwcCAqLywKQEAgLTI2
Nzc4LDggKzI2NzgzLDEyIEBACiAJCUJDOTg1NDQ2MENEM0RBNUYwMDA2OUJDMSAvKiBSYW5nZXMg
Ki8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCTkzNTVFRjUw
MjUzQTQyNzkwMDZGRjRBNCAvKiBKU0Fic3RyYWN0UmFuZ2UuY3BwICovLAorCQkJCTkzNTVFRjRG
MjUzQTQyNzgwMDZGRjRBNCAvKiBKU0Fic3RyYWN0UmFuZ2UuaCAqLywKIAkJCQk2NURGMzFFRDA5
RDFDQzYwMDAwQkUzMjUgLyogSlNSYW5nZS5jcHAgKi8sCiAJCQkJNjVERjMxRUUwOUQxQ0M2MDAw
MEJFMzI1IC8qIEpTUmFuZ2UuaCAqLywKKwkJCQlBODY2MjlDRTA5REEyQjQ3MDA5NjMzQTcgLyog
SlNTdGF0aWNSYW5nZS5jcHAgKi8sCisJCQkJQTg2NjI5Q0QwOURBMkI0NzAwOTYzM0E3IC8qIEpT
U3RhdGljUmFuZ2UuaCAqLywKIAkJCSk7CiAJCQluYW1lID0gUmFuZ2VzOwogCQkJc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsKQEAgLTI5Mjk5LDYgKzI5MzA4LDkgQEAKIAkJCQk3Q0QwRTJCRDFGODBB
NTZFMDAxNkE0Q0UgLyogQWJvcnRTaWduYWwuY3BwICovLAogCQkJCTdDRDBFMkJDMUY4MEE1NkUw
MDE2QTRDRSAvKiBBYm9ydFNpZ25hbC5oICovLAogCQkJCTdDRDBFMkJFMUY4MEE1NkUwMDE2QTRD
RSAvKiBBYm9ydFNpZ25hbC5pZGwgKi8sCisJCQkJOTNEMDUwMzEyNTNBMTQ4QzAwMkEzMDcyIC8q
IEFic3RyYWN0UmFuZ2UuY3BwICovLAorCQkJCTkzRDA1MDJFMjUzQTE0OEEwMDJBMzA3MiAvKiBB
YnN0cmFjdFJhbmdlLmggKi8sCisJCQkJOTNEMDUwMzAyNTNBMTQ4QzAwMkEzMDcyIC8qIEFic3Ry
YWN0UmFuZ2UuaWRsICovLAogCQkJCTdDNTIyMjk3MUUxREFFMTYwMDJDQjhGNyAvKiBBY3RpdmVE
T01DYWxsYmFjay5jcHAgKi8sCiAJCQkJN0M1MjIyOTgxRTFEQUUxNjAwMkNCOEY3IC8qIEFjdGl2
ZURPTUNhbGxiYWNrLmggKi8sCiAJCQkJRTFDNERFNkQwRUE3NUM2NTAwMjNDQ0Q2IC8qIEFjdGl2
ZURPTU9iamVjdC5jcHAgKi8sCkBAIC0zMDQyOSw2ICszMDQ0MSw3IEBACiAJCQkJNDZCOTUxOTUy
MDdENjMzNDAwQTdEMkREIC8qIEFic3RyYWN0RE9NV2luZG93LmggaW4gSGVhZGVycyAqLywKIAkJ
CQk0NkI5NTE5NjIwN0Q2MzNBMDBBN0QyREQgLyogQWJzdHJhY3RGcmFtZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJRjQ4MjIzMTMxRTM4NkUyNDAwNjZGQzc5IC8qIEFic3RyYWN0UGFzdGVib2FyZC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJOTNEMDUwMzIyNTNBMTQ5QTAwMkEzMDcyIC8qIEFic3RyYWN0
UmFuZ2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxRTFCMUQxMEZGNTk4NjkwMDU3NkIzQiAvKiBB
YnN0cmFjdFdvcmtlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMjlBODEyMkUwRkJCOUMxRDAwNTEw
MjkzIC8qIEFjY2Vzc2liaWxpdHlBUklBR3JpZENlbGwuaCBpbiBIZWFkZXJzICovLAogCQkJCTI5
QTgxMjMzMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5QVJJQUdyaWRSb3cuaCBpbiBI
ZWFkZXJzICovLApAQCAtMzIwMTYsNiArMzIwMjksNyBAQAogCQkJCTcxMjQ3RTM4MUZFQTVGODYw
MDhDMDhDRSAvKiBJdGVyYXRpb25Db21wb3NpdGVPcGVyYXRpb24uaCBpbiBIZWFkZXJzICovLAog
CQkJCTdDMzBEOTg0MUY4MTVBRUMwMDI2ODM1NiAvKiBKU0Fib3J0Q29udHJvbGxlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJN0MzMEQ5ODYxRjgxNUFFQzAwMjY4MzU2IC8qIEpTQWJvcnRTaWduYWwu
aCBpbiBIZWFkZXJzICovLAorCQkJCTkzNTVFRjUxMjUzQTQyNzkwMDZGRjRBNCAvKiBKU0Fic3Ry
YWN0UmFuZ2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxOEY4ODA1MEZGOTU3QUYwMDgwRjA0NSAv
KiBKU0Fic3RyYWN0V29ya2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBMTY3N0UxMzIxM0UwM0M2
MDBBMDhDMzQgLyogSlNBZGRyZXNzRXJyb3JzLmggaW4gSGVhZGVycyAqLywKIAkJCQk1NzA0NDA1
QTFFNTM5MzYyMDAzNTY2MDEgLyogSlNBZXNDYmNDZmJQYXJhbXMuaCBpbiBIZWFkZXJzICovLApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNBYnN0cmFjdFJhbmdlQ3Vz
dG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQWJzdHJhY3RSYW5nZUN1c3Rv
bS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uZTczODZkMTNhMjA3YTk1M2JkMjlmODk3NTIxNzNhMjBlNTFiNmY5
MwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQWJzdHJh
Y3RSYW5nZUN1c3RvbS5jcHAKQEAgLTAsMCArMSw0NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJKU0Fic3RyYWN0UmFuZ2UuaCIKKworI2luY2x1ZGUgIkpT
RE9NV3JhcHBlckNhY2hlLmgiCisjaW5jbHVkZSAiSlNSYW5nZS5oIgorI2luY2x1ZGUgIkpTU3Rh
dGljUmFuZ2UuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitKU0M6OkpTVmFsdWUgdG9KUyhK
U0M6OkpTR2xvYmFsT2JqZWN0KiBsZXhpY2FsR2xvYmFsT2JqZWN0LCBKU0RPTUdsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBBYnN0cmFjdFJhbmdlJiByYW5nZSkKK3sKKyAgICByZXR1cm4gd3Jh
cChsZXhpY2FsR2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QsIHJhbmdlKTsKK30KKworSlNDOjpK
U1ZhbHVlIHRvSlNOZXdseUNyZWF0ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxBYnN0cmFjdFJhbmdlPiYmIHJhbmdlKQoreworICAg
IGlmIChpczxTdGF0aWNSYW5nZT4ocmFuZ2UuZ2V0KCkpKQorICAgICAgICByZXR1cm4gY3JlYXRl
V3JhcHBlcjxTdGF0aWNSYW5nZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKHJhbmdlKSk7CisgICAg
cmV0dXJuIGNyZWF0ZVdyYXBwZXI8UmFuZ2U+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShyYW5nZSkp
OworfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50
Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3Bw
CmluZGV4IDViZWI0ZDhjYjUwN2NjZGE4NjRjYzUxYjQ2ODlkMjdkMjA0NzE5NzMuLjY0ZjFiNTBi
MjRmYjgzNmNiODc3MGYyNWEwNWYwZGE1NzhkY2UzYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCkBAIC0yOSwyNCArMjksMTMgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJKU0V2ZW50LmgiCiAKLSNpbmNsdWRlICJEYXRhVHJhbnNm
ZXIuaCIKLSNpbmNsdWRlICJFdmVudC5oIgotI2luY2x1ZGUgIkV2ZW50SGVhZGVycy5oIgotI2lu
Y2x1ZGUgIkV2ZW50SW50ZXJmYWNlcy5oIgotI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgotI2lu
Y2x1ZGUgIkpTRGF0YVRyYW5zZmVyLmgiCi0jaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNMb2Nr
Lmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvQXRvbVN0cmluZy5oPgotCisjaW5jbHVkZSAiSlNET01X
cmFwcGVyQ2FjaGUuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewotdXNpbmcgbmFtZXNwYWNlIEpT
QzsKIAotSlNWYWx1ZSB0b0pTKEpTR2xvYmFsT2JqZWN0KiBsZXhpY2FsR2xvYmFsT2JqZWN0LCBK
U0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBFdmVudCYgZXZlbnQpCitKU1ZhbHVlIHRv
SlMoSlNDOjpKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgRXZlbnQmIGV2ZW50KQogewogICAgIHJldHVybiB3cmFwKGxl
eGljYWxHbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdCwgZXZlbnQpOwogfQogCi0jdW5kZWYgVFJZ
X1RPX1dSQVBfV0lUSF9JTlRFUkZBQ0UKLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCmluZGV4IDRj
MDgzMThiZjZjNGVmNzBjMjdiM2ExODAwNjcyMDU3NzZhYTA5YzguLjk3MDJjYzU5NzJlOTk1Nzk2
YjE3ODRiNjliMDBiNjI3MTcxZjQ0MzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgKQEAgLTQxLDYgKzQxLDcgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogCiAjZGVmaW5lIFdFQkNPUkVfQ09NTU9OX1BSSVZBVEVfSURFTlRJRklFUlNfRUFD
SF9QUk9QRVJUWV9OQU1FKG1hY3JvKSBcCiAgICAgbWFjcm8oQWJvcnRTaWduYWwpIFwKKyAgICBt
YWNybyhBYnN0cmFjdFJhbmdlKSBcCiAgICAgbWFjcm8oQW5pbWF0aW9uKSBcCiAgICAgbWFjcm8o
QW5pbWF0aW9uRWZmZWN0KSBcCiAgICAgbWFjcm8oQW5pbWF0aW9uUGxheWJhY2tFdmVudCkgXApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0Fic3RyYWN0UmFuZ2UuY3BwIGIvU291cmNl
L1dlYkNvcmUvZG9tL0Fic3RyYWN0UmFuZ2UuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk4ZTJlZDQ5N2M0MjNj
MzlmMmYxMzVkZjNiMTIwNTEwMTE0YWUxMWEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vQWJzdHJhY3RSYW5nZS5jcHAKQEAgLTAsMCArMSw1NiBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJBYnN0cmFjdFJhbmdlLmgiCisKKyNpbmNs
dWRlICJTaW1wbGVSYW5nZS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK1NpbXBsZVJhbmdl
IG1ha2VTaW1wbGVSYW5nZShjb25zdCBBYnN0cmFjdFJhbmdlJiByYW5nZSkKK3sKKyAgICByZXR1
cm4geyB7IHJhbmdlLnN0YXJ0Q29udGFpbmVyKCksIHJhbmdlLnN0YXJ0T2Zmc2V0KCkgfSwgeyBy
YW5nZS5lbmRDb250YWluZXIoKSwgcmFuZ2UuZW5kT2Zmc2V0KCkgfSB9OworfQorCitTaW1wbGVS
YW5nZSBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgUmVmPEFic3RyYWN0UmFuZ2U+JiByYW5nZSkKK3sK
KyAgICByZXR1cm4gbWFrZVNpbXBsZVJhbmdlKHJhbmdlLmdldCgpKTsKK30KKworT3B0aW9uYWw8
U2ltcGxlUmFuZ2U+IG1ha2VTaW1wbGVSYW5nZShjb25zdCBBYnN0cmFjdFJhbmdlKiByYW5nZSkK
K3sKKyAgICBpZiAoIXJhbmdlKQorICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworICAgIHJl
dHVybiBtYWtlU2ltcGxlUmFuZ2UoKnJhbmdlKTsKK30KKworT3B0aW9uYWw8U2ltcGxlUmFuZ2U+
IG1ha2VTaW1wbGVSYW5nZShjb25zdCBSZWZQdHI8QWJzdHJhY3RSYW5nZT4mIHJhbmdlKQorewor
ICAgIHJldHVybiBtYWtlU2ltcGxlUmFuZ2UocmFuZ2UuZ2V0KCkpOworfQorCit9CisKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJhbmdlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vQWJzdHJhY3RSYW5nZS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE0MTk0ZWVmYThjZTIzZTkxMDIzNDNi
NWM0YTQxMWU0OTljZjEwOWQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
QWJzdHJhY3RSYW5nZS5oCkBAIC0wLDAgKzEsNTUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9u
Y2UKKworI2luY2x1ZGUgPHd0Zi9PcHRpb25hbC5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVk
Lmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgTm9kZTsKKworc3RydWN0IFNpbXBs
ZVJhbmdlOworCitjbGFzcyBBYnN0cmFjdFJhbmdlIDogcHVibGljIFJlZkNvdW50ZWQ8QWJzdHJh
Y3RSYW5nZT4geworcHVibGljOgorICAgIHZpcnR1YWwgfkFic3RyYWN0UmFuZ2UoKSA9IGRlZmF1
bHQ7CisKKyAgICB2aXJ0dWFsIE5vZGUmIHN0YXJ0Q29udGFpbmVyKCkgY29uc3QgPSAwOworICAg
IHZpcnR1YWwgdW5zaWduZWQgc3RhcnRPZmZzZXQoKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBO
b2RlJiBlbmRDb250YWluZXIoKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCB1bnNpZ25lZCBlbmRP
ZmZzZXQoKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBib29sIGNvbGxhcHNlZCgpIGNvbnN0ID0g
MDsKKworICAgIHZpcnR1YWwgYm9vbCBpc0xpdmVSYW5nZSgpIGNvbnN0ID0gMDsKK307CisKK1Np
bXBsZVJhbmdlIG1ha2VTaW1wbGVSYW5nZShjb25zdCBBYnN0cmFjdFJhbmdlJik7CitTaW1wbGVS
YW5nZSBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgUmVmPEFic3RyYWN0UmFuZ2U+Jik7CitPcHRpb25h
bDxTaW1wbGVSYW5nZT4gbWFrZVNpbXBsZVJhbmdlKGNvbnN0IEFic3RyYWN0UmFuZ2UqKTsKK09w
dGlvbmFsPFNpbXBsZVJhbmdlPiBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgUmVmUHRyPEFic3RyYWN0
UmFuZ2U+Jik7CisKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJh
bmdlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJhbmdlLmlkbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4yNGUzODczYTYzMzUwZGUxMjc0Mzc0MDI0OGEwYjA2NmNmNTMxODU5Ci0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0Fic3RyYWN0UmFuZ2UuaWRsCkBAIC0wLDAgKzEsMzkg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUK
KyAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCisgKiAgICBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogICAgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyAqICAgIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworICogICAg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQorICogTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAorICogT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUgorICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCisgKiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0gg
REFNQUdFLgorICovCisKK1sKKyAgICBDdXN0b21Ub0pTT2JqZWN0LAorICAgIEV4cG9zZWQ9V2lu
ZG93LAorXSBpbnRlcmZhY2UgQWJzdHJhY3RSYW5nZSB7CisgICAgcmVhZG9ubHkgYXR0cmlidXRl
IE5vZGUgc3RhcnRDb250YWluZXI7CisgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxv
bmcgc3RhcnRPZmZzZXQ7CisgICAgcmVhZG9ubHkgYXR0cmlidXRlIE5vZGUgZW5kQ29udGFpbmVy
OworICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGVuZE9mZnNldDsKKyAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBjb2xsYXBzZWQ7Cit9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuaAppbmRl
eCA0ODdhOGIxYjg0OTRjZGRhMDgyMGFhZDE3NWE4YmYxMzgxMDg3ZjJkLi4yZTkwOGI0MzkzZDU0
ZGI0M2Q2MDc0NGZiOWIwNTczN2EyNjE1MWI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9k
b20vUmFuZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuaApAQCAtMjQsNiArMjQs
NyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkFic3RyYWN0UmFuZ2UuaCIKICNpbmNs
dWRlICJSYW5nZUJvdW5kYXJ5UG9pbnQuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMzcs
MTYgKzM4LDE3IEBAIGNsYXNzIFRleHQ7CiAKIHN0cnVjdCBTaW1wbGVSYW5nZTsKIAotY2xhc3Mg
UmFuZ2UgOiBwdWJsaWMgUmVmQ291bnRlZDxSYW5nZT4geworY2xhc3MgUmFuZ2UgZmluYWwgOiBw
dWJsaWMgQWJzdHJhY3RSYW5nZSB7CisgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChSYW5nZSk7
CiBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxSYW5nZT4gY3JlYXRlKERv
Y3VtZW50Jik7CiAgICAgV0VCQ09SRV9FWFBPUlQgflJhbmdlKCk7CiAKLSAgICBOb2RlJiBzdGFy
dENvbnRhaW5lcigpIGNvbnN0IHsgcmV0dXJuIG1fc3RhcnQuY29udGFpbmVyKCk7IH0KLSAgICB1
bnNpZ25lZCBzdGFydE9mZnNldCgpIGNvbnN0IHsgcmV0dXJuIG1fc3RhcnQub2Zmc2V0KCk7IH0K
LSAgICBOb2RlJiBlbmRDb250YWluZXIoKSBjb25zdCB7IHJldHVybiBtX2VuZC5jb250YWluZXIo
KTsgfQotICAgIHVuc2lnbmVkIGVuZE9mZnNldCgpIGNvbnN0IHsgcmV0dXJuIG1fZW5kLm9mZnNl
dCgpOyB9Ci0gICAgYm9vbCBjb2xsYXBzZWQoKSBjb25zdCB7IHJldHVybiBtX3N0YXJ0ID09IG1f
ZW5kOyB9CisgICAgTm9kZSYgc3RhcnRDb250YWluZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBt
X3N0YXJ0LmNvbnRhaW5lcigpOyB9CisgICAgdW5zaWduZWQgc3RhcnRPZmZzZXQoKSBjb25zdCBm
aW5hbCB7IHJldHVybiBtX3N0YXJ0Lm9mZnNldCgpOyB9CisgICAgTm9kZSYgZW5kQ29udGFpbmVy
KCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9lbmQuY29udGFpbmVyKCk7IH0KKyAgICB1bnNpZ25l
ZCBlbmRPZmZzZXQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2VuZC5vZmZzZXQoKTsgfQorICAg
IGJvb2wgY29sbGFwc2VkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9zdGFydCA9PSBtX2VuZDsg
fQogICAgIE5vZGUqIGNvbW1vbkFuY2VzdG9yQ29udGFpbmVyKCkgY29uc3QgeyByZXR1cm4gY29t
bW9uSW5jbHVzaXZlQW5jZXN0b3Ioc3RhcnRDb250YWluZXIoKSwgZW5kQ29udGFpbmVyKCkpLmdl
dCgpOyB9CiAKICAgICBXRUJDT1JFX0VYUE9SVCBFeGNlcHRpb25Pcjx2b2lkPiBzZXRTdGFydChS
ZWY8Tm9kZT4mJiwgdW5zaWduZWQgb2Zmc2V0KTsKQEAgLTExOCw2ICsxMjAsOCBAQCBwdWJsaWM6
CiBwcml2YXRlOgogICAgIGV4cGxpY2l0IFJhbmdlKERvY3VtZW50Jik7CiAKKyAgICBib29sIGlz
TGl2ZVJhbmdlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQorCiAgICAgdm9pZCB1cGRh
dGVEb2N1bWVudCgpOwogICAgIHZvaWQgdXBkYXRlQXNzb2NpYXRlZFNlbGVjdGlvbigpOwogICAg
IEV4Y2VwdGlvbk9yPFJlZlB0cjxEb2N1bWVudEZyYWdtZW50Pj4gcHJvY2Vzc0NvbnRlbnRzKEFj
dGlvblR5cGUpOwpAQCAtMTQyLDMgKzE0Niw3IEBAIFdFQkNPUkVfRVhQT1JUIFJlZlB0cjxSYW5n
ZT4gY3JlYXRlTGl2ZVJhbmdlKGNvbnN0IE9wdGlvbmFsPFNpbXBsZVJhbmdlPiYpOwogLy8gT3V0
c2lkZSB0aGUgV2ViQ29yZSBuYW1lc3BhY2UgZm9yIGVhc2Ugb2YgaW52b2NhdGlvbiBmcm9tIHRo
ZSBkZWJ1Z2dlci4KIHZvaWQgc2hvd1RyZWUoY29uc3QgV2ViQ29yZTo6UmFuZ2UqKTsKICNlbmRp
ZgorCitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OlJhbmdlKQorICAgIHN0
YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpBYnN0cmFjdFJhbmdlJiByYW5nZSkgeyBy
ZXR1cm4gcmFuZ2UuaXNMaXZlUmFuZ2UoKTsgfQorU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQo
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmlkbCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9SYW5nZS5pZGwKaW5kZXggNjNkZjM4NzdmNjBkYjdiMTg1MDdlYzk1ODdiOTIwYTU1
ZWQ1NWYxMS4uM2MwNTdhMGZiOTlkZDc4MmEyMDI4ZjQ0YWMxZmU1ZDJhYTg4YmRlMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vUmFuZ2UuaWRsCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNiBB
cHBsZSBJbmMuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDYgU2FtdWVsIFdlaW5pZyA8c2FtLndl
aW5pZ0BnbWFpbC5jb20+CiAgKgogICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlv
dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgpAQCAtMjAsMTcgKzIwLDEyIEBACiAKIFsKICAg
ICBHZW5lcmF0ZUlzUmVhY2hhYmxlPVJlYWNoYWJsZUZyb21ET01XaW5kb3csCi0gICAgSW1wbGVt
ZW50YXRpb25MYWNrc1ZUYWJsZSwKICAgICBFeHBvcnRNYWNybz1XRUJDT1JFX0VYUE9SVCwKLSAg
ICBFeHBvc2VkPVdpbmRvdwotXSBpbnRlcmZhY2UgUmFuZ2UgeworICAgIEV4cG9zZWQ9V2luZG93
LAorICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKK10gaW50ZXJmYWNlIFJhbmdlIDogQWJz
dHJhY3RSYW5nZSB7CiAgICAgW0NhbGxXaXRoPURvY3VtZW50XSBjb25zdHJ1Y3RvcigpOwogCi0g
ICAgcmVhZG9ubHkgYXR0cmlidXRlIE5vZGUgc3RhcnRDb250YWluZXI7Ci0gICAgcmVhZG9ubHkg
YXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgc3RhcnRPZmZzZXQ7Ci0gICAgcmVhZG9ubHkgYXR0cmli
dXRlIE5vZGUgZW5kQ29udGFpbmVyOwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBs
b25nIGVuZE9mZnNldDsKLSAgICByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBjb2xsYXBzZWQ7
CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIE5vZGUgY29tbW9uQW5jZXN0b3JDb250YWluZXI7CiAK
ICAgICBbTWF5VGhyb3dFeGNlcHRpb25dIHVuZGVmaW5lZCBzZXRTdGFydChOb2RlIG5vZGUsIHVu
c2lnbmVkIGxvbmcgb2Zmc2V0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdGF0
aWNSYW5nZS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0YXRpY1JhbmdlLmgKaW5kZXggZWNlOWI0
ZGYwMWZjZGQ4NGE1ZjAwMWE5MjE2YmUxYTk1ODY2N2Y0Mi4uNzY5MDExM2RmOGEyYWU5YmM4MjU1
NmM0YWJmMTBmOTcyZTIyYTdhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0YXRp
Y1JhbmdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0YXRpY1JhbmdlLmgKQEAgLTI1LDEz
ICsyNSwxNSBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCisj
aW5jbHVkZSAiQWJzdHJhY3RSYW5nZS5oIgogI2luY2x1ZGUgIlNpbXBsZVJhbmdlLmgiCi0jaW5j
bHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBT
dGF0aWNSYW5nZSA6IHB1YmxpYyBSZWZDb3VudGVkPFN0YXRpY1JhbmdlPiwgcHVibGljIFNpbXBs
ZVJhbmdlIHsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25PcjsKKworY2xhc3Mg
U3RhdGljUmFuZ2UgZmluYWwgOiBwdWJsaWMgQWJzdHJhY3RSYW5nZSwgcHVibGljIFNpbXBsZVJh
bmdlIHsKKyAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFN0YXRpY1JhbmdlKTsKIHB1YmxpYzoK
ICAgICBzdHJ1Y3QgSW5pdCB7CiAgICAgICAgIFJlZlB0cjxOb2RlPiBzdGFydENvbnRhaW5lcjsK
QEAgLTQ0LDggKzQ2LDIwIEBAIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPFN0YXRpY1JhbmdlPiBj
cmVhdGUoY29uc3QgU2ltcGxlUmFuZ2UmKTsKICAgICBzdGF0aWMgUmVmPFN0YXRpY1JhbmdlPiBj
cmVhdGUoU2ltcGxlUmFuZ2UmJik7CiAKKyAgICBOb2RlJiBzdGFydENvbnRhaW5lcigpIGNvbnN0
IGZpbmFsIHsgcmV0dXJuIFNpbXBsZVJhbmdlOjpzdGFydENvbnRhaW5lcigpOyB9CisgICAgdW5z
aWduZWQgc3RhcnRPZmZzZXQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBTaW1wbGVSYW5nZTo6c3Rh
cnRPZmZzZXQoKTsgfQorICAgIE5vZGUmIGVuZENvbnRhaW5lcigpIGNvbnN0IGZpbmFsIHsgcmV0
dXJuIFNpbXBsZVJhbmdlOjplbmRDb250YWluZXIoKTsgfQorICAgIHVuc2lnbmVkIGVuZE9mZnNl
dCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFNpbXBsZVJhbmdlOjplbmRPZmZzZXQoKTsgfQorICAg
IGJvb2wgY29sbGFwc2VkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gU2ltcGxlUmFuZ2U6OmNvbGxh
cHNlZCgpOyB9CisKIHByaXZhdGU6CiAgICAgU3RhdGljUmFuZ2UoU2ltcGxlUmFuZ2UmJik7CisK
KyAgICBib29sIGlzTGl2ZVJhbmdlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KIH07
CiAKIH0KKworU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpTdGF0aWNSYW5n
ZSkKKyAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6QWJzdHJhY3RSYW5nZSYg
cmFuZ2UpIHsgcmV0dXJuICFyYW5nZS5pc0xpdmVSYW5nZSgpOyB9CitTUEVDSUFMSVpFX1RZUEVf
VFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3RhdGljUmFuZ2Uu
aWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL1N0YXRpY1JhbmdlLmlkbAppbmRleCA4M2E5ODIyMzhh
NDZkNmMyM2M0MTRlMDU0MTVhYTVhZTY3MjBmNWRmLi4xMTI2NDhhMDgxNjkyNjRiODVhNmQxODQ5
M2M2MzgwOGI1NDg5MjY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3RhdGljUmFu
Z2UuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdGF0aWNSYW5nZS5pZGwKQEAgLTEsNSAr
MSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE2IEFwcGxlLCBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTYtMjAyMCBBcHBsZSwgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNCwxNyAr
MjQsMTAgQEAKICAqLwogCiBbCi0gICAgRW5hYmxlZEJ5U2V0dGluZz1JbnB1dEV2ZW50cywKLSAg
ICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAotICAgIEV4cG9zZWQ9V2luZG93Ci1dIGludGVy
ZmFjZSBTdGF0aWNSYW5nZSB7Ci0gICAgY29uc3RydWN0b3IoU3RhdGljUmFuZ2VJbml0IHN0YXRp
Y1JhbmdlSW5pdERpY3QpOwotCi0gICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcg
c3RhcnRPZmZzZXQ7Ci0gICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgZW5kT2Zm
c2V0OwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb2RlIHN0YXJ0Q29udGFpbmVyOwotICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBOb2RlIGVuZENvbnRhaW5lcjsKLSAgICByZWFkb25seSBhdHRyaWJ1
dGUgYm9vbGVhbiBjb2xsYXBzZWQ7CisgICAgRXhwb3NlZD1XaW5kb3csCisgICAgSlNHZW5lcmF0
ZVRvTmF0aXZlT2JqZWN0LAorXSBpbnRlcmZhY2UgU3RhdGljUmFuZ2UgOiBBYnN0cmFjdFJhbmdl
IHsKKyAgICBjb25zdHJ1Y3RvcihTdGF0aWNSYW5nZUluaXQgaW5pdCk7CiB9OwogCiBkaWN0aW9u
YXJ5IFN0YXRpY1JhbmdlSW5pdCB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCBm
ZDdiMjlhMDFiZTA0NWZhZDhiZmQ1ZmFiMzg0Y2ZkOTZlNTg3MGNjLi41ZjEwOWNlYWI3ZDRhOWU0
MmZiYmViNTI4NWIzZDIwYzhiYWVlMWNkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxMyBAQAorMjAyMC0xMC0xNiAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5j
b20+CisKKyAgICAgICAgQWRkIEFic3RyYWN0UmFuZ2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzg0NgorCisgICAgICAgIFJldmlld2VkIGJ5IFJ5
b3N1a2UgTml3YS4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9kb20vaWRsaGFybmVz
cy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICBVcGRhdGVkIHRlc3QgcmVzdWx0IGZvciBw
cm9ncmVzc2lvbi4KKwogMjAyMC0xMC0xNCAgU2VyZ2lvIFZpbGxhciBTZW5pbiAgPHN2aWxsYXJA
aWdhbGlhLmNvbT4KIAogICAgICAgICBbY3NzLWZsZXhib3hdIGZsZXgtZ3JvdyBwcm9wZXJ0eSBz
aG91bGQgYmUgYW5pbWF0YWJsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vaWRsaGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vaWRsaGFybmVz
cy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IDI2ZGUyZTg5OTgwNDAyYzRhMzhiYzY1YWE5M2Ji
NTgxMDcyNDhhZTAuLjNmZTJmOWFiNjNkM2ViYjRhNTMyOWM3NjRlY2NjODIzZTcyNzY0ZjMgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9t
L2lkbGhhcm5lc3Mud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9pZGxoYXJuZXNzLndpbmRvdy1leHBlY3RlZC50
eHQKQEAgLTE0OTQsMjcgKzE0OTQsMjcgQEAgUEFTUyBFdmVudFRhcmdldCBpbnRlcmZhY2U6IGRv
Y3VtZW50LmNyZWF0ZUNvbW1lbnQoImFiYyIpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eQogUEFTUyBF
dmVudFRhcmdldCBpbnRlcmZhY2U6IGNhbGxpbmcgcmVtb3ZlRXZlbnRMaXN0ZW5lcihET01TdHJp
bmcsIEV2ZW50TGlzdGVuZXI/LCBvcHRpb25hbCAoRXZlbnRMaXN0ZW5lck9wdGlvbnMgb3IgYm9v
bGVhbikpIG9uIGRvY3VtZW50LmNyZWF0ZUNvbW1lbnQoImFiYyIpIHdpdGggdG9vIGZldyBhcmd1
bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IKIFBBU1MgRXZlbnRUYXJnZXQgaW50ZXJmYWNlOiBk
b2N1bWVudC5jcmVhdGVDb21tZW50KCJhYmMiKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc3Bh
dGNoRXZlbnQoRXZlbnQpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZQogUEFTUyBFdmVudFRhcmdldCBp
bnRlcmZhY2U6IGNhbGxpbmcgZGlzcGF0Y2hFdmVudChFdmVudCkgb24gZG9jdW1lbnQuY3JlYXRl
Q29tbWVudCgiYWJjIikgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJv
cgotRkFJTCBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVz
IG9mIGludGVyZmFjZSBvYmplY3QgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBo
YXZlIG93biBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkgIkFic3Ry
YWN0UmFuZ2UiIG1pc3NpbmcKLUZBSUwgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2Ugb2JqZWN0IGxl
bmd0aCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5
ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2lu
ZwotRkFJTCBBYnN0cmFjdFJhbmdlIGludGVyZmFjZSBvYmplY3QgbmFtZSBhc3NlcnRfb3duX3By
b3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBl
eHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBBYnN0cmFjdFJh
bmdlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90
b3R5cGUgb2JqZWN0IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24g
cHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIGV4cGVjdGVkIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdl
IiBtaXNzaW5nCi1GQUlMIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHBy
b3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyAiY29uc3RydWN0b3IiIHBy
b3BlcnR5IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVy
dHkgIkFic3RyYWN0UmFuZ2UiIGV4cGVjdGVkIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBtaXNz
aW5nCi1GQUlMIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRp
ZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVuc2NvcGFibGVzIHByb3BlcnR5
IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkFi
c3RyYWN0UmFuZ2UiIGV4cGVjdGVkIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBtaXNzaW5nCi1G
QUlMIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgc3RhcnRDb250YWluZXIgYXNz
ZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiQWJzdHJh
Y3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIG1pc3NpbmcKLUZBSUwg
QWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBzdGFydE9mZnNldCBhc3NlcnRfb3du
X3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdl
IiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBBYnN0cmFj
dFJhbmdlIGludGVyZmFjZTogYXR0cmlidXRlIGVuZENvbnRhaW5lciBhc3NlcnRfb3duX3Byb3Bl
cnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBleHBl
Y3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBBYnN0cmFjdFJhbmdl
IGludGVyZmFjZTogYXR0cmlidXRlIGVuZE9mZnNldCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxm
IGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9w
ZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBBYnN0cmFjdFJhbmdlIGludGVyZmFj
ZTogYXR0cmlidXRlIGNvbGxhcHNlZCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90
IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJz
dHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBTdGF0aWNSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5j
ZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2Ugb2JqZWN0IGFzc2VydF9vd25fcHJvcGVydHk6
IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIGV4cGVjdGVk
IHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBtaXNzaW5nCitQQVNTIEFic3RyYWN0UmFuZ2UgaW50
ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIG9iamVjdAorUEFT
UyBBYnN0cmFjdFJhbmdlIGludGVyZmFjZSBvYmplY3QgbGVuZ3RoCitQQVNTIEFic3RyYWN0UmFu
Z2UgaW50ZXJmYWNlIG9iamVjdCBuYW1lCitQQVNTIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBl
eGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QKK1BB
U1MgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBp
bnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzICJjb25zdHJ1Y3RvciIgcHJvcGVydHkKK1BBU1Mg
QWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRl
cmZhY2UgcHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkKK1BBU1MgQWJz
dHJhY3RSYW5nZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBzdGFydENvbnRhaW5lcgorUEFTUyBBYnN0
cmFjdFJhbmdlIGludGVyZmFjZTogYXR0cmlidXRlIHN0YXJ0T2Zmc2V0CitQQVNTIEFic3RyYWN0
UmFuZ2UgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgZW5kQ29udGFpbmVyCitQQVNTIEFic3RyYWN0UmFu
Z2UgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgZW5kT2Zmc2V0CitQQVNTIEFic3RyYWN0UmFuZ2UgaW50
ZXJmYWNlOiBhdHRyaWJ1dGUgY29sbGFwc2VkCitQQVNTIFN0YXRpY1JhbmdlIGludGVyZmFjZTog
ZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBvYmplY3QKIFBBU1MgU3RhdGlj
UmFuZ2UgaW50ZXJmYWNlIG9iamVjdCBsZW5ndGgKIFBBU1MgU3RhdGljUmFuZ2UgaW50ZXJmYWNl
IG9iamVjdCBuYW1lCi1GQUlMIFN0YXRpY1JhbmdlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBw
cm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0IGFzc2VydF9vd25fcHJvcGVy
dHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIGV4cGVj
dGVkIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBtaXNzaW5nCitQQVNTIFN0YXRpY1JhbmdlIGlu
dGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUg
b2JqZWN0CiBQQVNTIFN0YXRpY1JhbmdlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0
aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3MgImNvbnN0cnVjdG9yIiBwcm9wZXJ0
eQogUEFTUyBTdGF0aWNSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBv
ZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkKLUZB
SUwgUmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNl
IG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3Bl
cnR5ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlz
c2luZworUEFTUyBSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBp
bnRlcmZhY2Ugb2JqZWN0CiBQQVNTIFJhbmdlIGludGVyZmFjZSBvYmplY3QgbGVuZ3RoCiBQQVNT
IFJhbmdlIGludGVyZmFjZSBvYmplY3QgbmFtZQotRkFJTCBSYW5nZSBpbnRlcmZhY2U6IGV4aXN0
ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCBhc3NlcnRf
b3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJh
bmdlIiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZworUEFTUyBSYW5n
ZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90
eXBlIG9iamVjdAogUEFTUyBSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGll
cyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzICJjb25zdHJ1Y3RvciIgcHJvcGVydHkK
IFBBU1MgUmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJm
YWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVuc2NvcGFibGVzIHByb3BlcnR5CiBQQVNTIFJhbmdl
IGludGVyZmFjZTogYXR0cmlidXRlIGNvbW1vbkFuY2VzdG9yQ29udGFpbmVyCg==
</data>
<flag name="commit-queue"
          id="427902"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411635</attachid>
            <date>2020-10-16 17:36:58 -0700</date>
            <delta_ts>2020-10-16 20:02:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217846-20201016173657.patch</filename>
            <type>text/plain</type>
            <size>43046</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4NTYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGIwZGJhY2I1NTcyMjIz
OTE4NzU4NzUyYzFkYjU2NWZlMGEyZGY4NS4uMzU1NTM5MTBlOTMyNGI4YzhmZWU4MWE4Mjg0NzIw
OTM0MmY2NGJhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY2IEBACisyMDIwLTEwLTE2ICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgQWJzdHJhY3RSYW5nZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3ODQ2CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisgICAgICAgIFRoaXMgbWFrZXMg
dXMgbW9yZSBhY2N1cmF0ZWx5IG1hdGNoIHRoZSBET00gc3BlY2lmaWNhdGlvbiwgbWFrZXMgUmFu
Z2UKKyAgICAgICAgYW5kIFN0YXRpY1JhbmdlIG9iamVjdHMgc2xpZ2h0bHkgYmlnZ2VyIHNpbmNl
IHRoZXkgbm93IGhhdmUgYSB2aXJ0dWFsCisgICAgICAgIHRhYmxlIHBvaW50ZXIsIGFuZCBtYWtl
cyB0aGUgQWJzdHJhY3RSYW5nZSBtZXRob2RzIGEgYml0IHNsb3dlciB0byBjYWxsCisgICAgICAg
IGZyb20gSmF2YVNjcmlwdCBzaW5jZSB0aGV5IGFyZSBiYWNrZWQgYnkgQysrIHZpcnR1YWwgZnVu
Y3Rpb25zLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZGVkIEFic3RyYWN0UmFuZ2Ug
ZmlsZXMuCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdDogRGl0dG8u
CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Q6IERpdHRvLgorICAg
ICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IERpdHRvLgorICAgICAgICAqIEhlYWRlcnMuY21h
a2U6IERpdHRvLgorICAgICAgICAqIFNvdXJjZXMudHh0OiBEaXR0by4KKyAgICAgICAgKiBXZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IERpdHRvLgorICAgICAgICBBbHNvIHJlbW92
ZWQgcmVmZXJlbmNlIHRvIG5vbi1leGlzdGVudCBKU0F1ZGlvTm9kZUN1c3RvbS5jcHAgYW5kIG1v
dmVkCisgICAgICAgIEpTU3RhdGljUmFuZ2UgZmlsZSBmcm9tIHRoZSBFdmVudHMgZ3JvdXAgaW50
byB0aGUgUmFuZ2VzIGdyb3VwLgorCisgICAgICAgICogYmluZGluZ3MvanMvSlNBYnN0cmFjdFJh
bmdlQ3VzdG9tLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKTogQWRkZWQuIEp1
c3QgdGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24uIFdvdWxkIGJlCisgICAgICAgIG5pY2UgaWYg
d2UgZGlkIG5vdCBoYXZlIHRvIHdyaXRlIHRoaXMuCisgICAgICAgIChXZWJDb3JlOjp0b0pTTmV3
bHlDcmVhdGVkKTogTWFrZSBlaXRoZXIgYSBTdGF0aWNSYW5nZSBvciBSYW5nZQorICAgICAgICB3
cmFwcGVyIGRlcGVuZGluZyBvbiB3aGV0aGVyIHRoaXMgaXMgYSBsaXZlIHJhbmdlIG9yIG5vdC4K
KworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwOiBSZW1vdmVkIGxvdHMg
b2YgdW5uZWVkZWQgaW5jbHVkZXMuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKTogU3RvcHBlZCB1
c2luZyAidXNpbmcgbmFtZXNwYWNlIEpTQyIuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9XZWJD
b3JlQnVpbHRpbk5hbWVzLmg6IEFkZGVkIEFic3RyYWN0UmFuZ2UuCisKKyAgICAgICAgKiBkb20v
QWJzdHJhY3RSYW5nZS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6bWFrZVNpbXBsZVJh
bmdlKTogQWRkZWQuCisgICAgICAgICogZG9tL0Fic3RyYWN0UmFuZ2UuaDogQWRkZWQuCisgICAg
ICAgICogZG9tL0Fic3RyYWN0UmFuZ2UuaWRsOiBBZGRlZC4KKworICAgICAgICAqIGRvbS9SYW5n
ZS5oOiBDaGFuZ2VkIHRvIGRlcml2ZSBmcm9tIEFic3RyYWN0UmFuZ2UgaW5zdGVhZCBvZgorICAg
ICAgICBmcm9tIFJlZkNvdW50ZWQuIEFsc28gbWFya2VkIHRoaXMgZmluYWwgc2luY2UgaXQncyBu
b3cgcG9seW1vcnBoaWMuCisgICAgICAgIE1hcmtlZCBhbGwgdGhlIGZ1bmN0aW9ucyB0aGF0IG92
ZXJyaWRlIGZpbmFsIGFzIHdlbGwsIHRvIGNoZWNrIHRoYXQKKyAgICAgICAgdGhleSBjb3JyZWN0
bHkgb3ZlcnJpZGUgdGhlIHZpcnR1YWwgZnVuY3Rpb25zIGluIHRoZSBiYXNlIGNsYXNzLgorICAg
ICAgICBBZGRlZCBwcml2YXRlIGlzTGl2ZVJhbmdlIGZ1bmN0aW9uIG92ZXJyaWRlIHRoYXQgcmV0
dXJucyB0cnVlLgorICAgICAgICBBZGRlZCBTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOL0VO
RCBzbyB3ZSBjYW4gZG8gaXM8UmFuZ2U+LgorCisgICAgICAgICogZG9tL1JhbmdlLmlkbDogUmVt
b3ZlZCBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLiBBZGRlZAorICAgICAgICBKU0dlbmVyYXRl
VG9OYXRpdmVPYmplY3QuIEluaGVyaXQgZnJvbSBBYnN0cmFjdFJhbmdlLgorICAgICAgICBSZW1v
dmVkIHRoZSA1IGF0dHJpYnV0ZSBnZXR0ZXJzIHRoYXQgYXJlIG5vdyBpbmhlcml0ZWQgZnJvbSBB
YnN0cmFjdFJhbmdlLgorCisgICAgICAgICogZG9tL1N0YXRpY1JhbmdlLmg6IENoYW5nZWQgdG8g
ZGVyaXZlIGZyb20gQWJzdHJhY3RSYW5nZSBpbnN0ZWFkIG9mCisgICAgICAgIGZyb20gUmVmQ291
bnRlZC4gQWxzbyBtYXJrZWQgdGhpcyBmaW5hbCBzaW5jZSBpdCdzIG5vdyBwb2x5bW9ycGhpYy4K
KyAgICAgICAgQWRkZWQgZnVuY3Rpb25zIHRvIG92ZXJyaWRlIHRoZSBvbmVzIGZyb20gU3RhdGlj
UmFuZ2UsIGNhbGxpbmcgdGhyb3VnaAorICAgICAgICB0byB0aGUgb25lcyBmcm9tIFNpbXBsZVJh
bmdlIChJIHRob3VnaHQgdGhlcmUgd2FzIGEgd2F5IHRvIGRvIHRoaXMKKyAgICAgICAgd2l0aCB1
c2luZywgYnV0IEkgY291bGRuJ3QgZmlndXJlIHRoYXQgb3V0KS4gQWRkZWQgcHJpdmF0ZSBpc0xp
dmVSYW5nZQorICAgICAgICBmdW5jdGlvbiBvdmVycmlkZSB0aGF0IHJldHVybnMgZmFsc2UuIEFk
ZGVkIFNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4vRU5ECisgICAgICAgIHNvIHdlIGNhbiBk
byBpczxTdGF0aWNSYW5nZT4uCisKKyAgICAgICAgKiBkb20vU3RhdGljUmFuZ2UuaWRsOiBSZW1v
dmVkIEVuYWJsZWRCeVNldHRpbmc9SW5wdXRFdmVudHMgc2luY2UKKyAgICAgICAgdGhpcyBzaG91
bGQgbm93IGFsd2F5cyBiZSBpbmNsdWRlZC4gSSB0aGluayB3ZSBzaG91bGQgcHJvYmFibHkgcmVt
b3ZlIHRoZQorICAgICAgICBJbnB1dEV2ZW50cyBzZXR0aW5nIG5vdyBlbnRpcmVseS4gUmVtb3Zl
ZCBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLgorICAgICAgICBBZGRlZCBKU0dlbmVyYXRlVG9O
YXRpdmVPYmplY3QuIEluaGVyaXQgZnJvbSBBYnN0cmFjdFJhbmdlLgorICAgICAgICBSZW1vdmVk
IGFsbCA1IGF0dHJpYnV0ZSBnZXR0ZXJzLCB3aGljaCBhcmUgbm93IGluaGVyaXRlZCBmcm9tIEFi
c3RyYWN0UmFuZ2UuCisKIDIwMjAtMTAtMTUgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxk
QGFwcGxlLmNvbT4KIAogICAgICAgICBbQ29jb2FdIERvbid0IGNoYW5nZSB0aGUgdGV4dCBtYXRy
aXggbXVsdGlwbGUgdGltZXMgaW5zaWRlIEZvbnRDYXNjYWRlOjpkcmF3R2x5cGhzKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01h
a2VMaXN0cy50eHQKaW5kZXggZmQ5ZWJhNjRkMTQyZWJhNDU1OGRiZjFiMDIyOTQ0MDBmMGVjMjZh
MS4uZjY5OGQyZGEwYmNkMDRiNzNjNzcyYjY0NGNmYmZhYTk4MzcwMjU4MiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQKQEAgLTc1Myw2ICs3NTMsNyBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lETF9GSUxF
UwogICAgIGRvbS9BYm9ydEFsZ29yaXRobS5pZGwKICAgICBkb20vQWJvcnRDb250cm9sbGVyLmlk
bAogICAgIGRvbS9BYm9ydFNpZ25hbC5pZGwKKyAgICBkb20vQWJzdHJhY3RSYW5nZS5pZGwKICAg
ICBkb20vQW5pbWF0aW9uRXZlbnQuaWRsCiAgICAgZG9tL0F0dHIuaWRsCiAgICAgZG9tL0JlZm9y
ZUxvYWRFdmVudC5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LWlucHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54
Y2ZpbGVsaXN0CmluZGV4IDg2YTA3NzQxZjM4NDQ3OTIwYWEwZTkyNzYyYmQ0ZTBlNmU2MmRkNzAu
LjdhNDU0MWQxN2ZlYjNlMDgyODFlYWFmYzA0MzlmYTBiMmE3NmMyOTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKKysrIGIvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdApAQCAtNjc1LDYgKzY3NSw3
IEBAICQoUFJPSkVDVF9ESVIpL2Nzcy90eXBlZG9tL1R5cGVkT01DU1NVbnBhcnNlZFZhbHVlLmlk
bAogJChQUk9KRUNUX0RJUikvZG9tL0Fib3J0QWxnb3JpdGhtLmlkbAogJChQUk9KRUNUX0RJUikv
ZG9tL0Fib3J0Q29udHJvbGxlci5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9BYm9ydFNpZ25hbC5p
ZGwKKyQoUFJPSkVDVF9ESVIpL2RvbS9BYnN0cmFjdFJhbmdlLmlkbAogJChQUk9KRUNUX0RJUikv
ZG9tL0FuaW1hdGlvbkV2ZW50LmlkbAogJChQUk9KRUNUX0RJUikvZG9tL0F0dHIuaWRsCiAkKFBS
T0pFQ1RfRElSKS9kb20vQmVmb3JlTG9hZEV2ZW50LmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCBlMjFmYzgwNTYxMjRlYmVhYTA5
MmQyZmM4ZjY2ZTQ3NjZkMjg2ZjBlLi5hYjMxYWJhMWZmNWRjN2EzZWQwYjRkZDdmMDMzOTg1NTNi
ZjNlOGQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQu
eGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNm
aWxlbGlzdApAQCAtNDYsNiArNDYsOCBAQCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0Fib3J0Q29udHJvbGxlci5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElS
KS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTQWJvcnRDb250cm9sbGVyLmgKICQoQlVJTFRfUFJP
RFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTQWJvcnRTaWduYWwuY3BwCiAkKEJV
SUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0Fib3J0U2lnbmFsLmgK
KyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTQWJzdHJhY3RS
YW5nZS5jcHAKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pT
QWJzdHJhY3RSYW5nZS5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU0Fic3RyYWN0V29ya2VyLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNBYnN0cmFjdFdvcmtlci5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikv
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0FjY2Vzc2liaWxpdHlSb2xlLmNwcApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNjUxM2I4YmVjMzUxN2Y3ZGJjNDYzMDJkZDY5OTJkMjRl
OGEyMGRkNC4uYzA0ODJiZTRlZDlmNTMwZDY4OTdiOTM0YTBkNTU3OGUwMTNiYjNmZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC03MDYsNiArNzA2LDcgQEAgSlNfQklORElOR19J
RExTID0gXAogICAgICQoV2ViQ29yZSkvZG9tL0Fib3J0QWxnb3JpdGhtLmlkbCBcCiAgICAgJChX
ZWJDb3JlKS9kb20vQWJvcnRDb250cm9sbGVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vQWJv
cnRTaWduYWwuaWRsIFwKKyAgICAkKFdlYkNvcmUpL2RvbS9BYnN0cmFjdFJhbmdlLmlkbCBcCiAg
ICAgJChXZWJDb3JlKS9kb20vQW5pbWF0aW9uRXZlbnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL2Rv
bS9BdHRyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vQmVmb3JlTG9hZEV2ZW50LmlkbCBcCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dlYkNvcmUv
SGVhZGVycy5jbWFrZQppbmRleCAwYWRlN2Q4YzhkNGIyZjJkOThkNmQzOTBlOTM4YWIzM2ViNzQ1
ODE3Li5mNjk2NGU1Y2Y3OTNmNmIxOWExNTJjM2RkNDM5ODU2ZDc0ZDgyNjE2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0hlYWRl
cnMuY21ha2UKQEAgLTM3MSw2ICszNzEsNyBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09S
S19IRUFERVJTCiAgICAgZGlzcGxheS9jc3MvRGlzcGxheVJlcGxhY2VkQm94LmgKICAgICBkaXNw
bGF5L2Nzcy9EaXNwbGF5U3R5bGUuaAogCisgICAgZG9tL0Fic3RyYWN0UmFuZ2UuaAogICAgIGRv
bS9BY3RpdmVET01DYWxsYmFjay5oCiAgICAgZG9tL0FjdGl2ZURPTU9iamVjdC5oCiAgICAgZG9t
L0F0dHIuaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2Uv
V2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBhZWYxYjYyMzIxMjVlMzY0OWI5MGY0M2RlMzg5NmE5
ZDBjYWM3YWQ5Li4wMGJiNDU4MWI0ZDkyM2EyMzI5YjcwMGMxOTM3MmVhNjYxNjI2NjIzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dApAQCAtNDY3LDYgKzQ2Nyw3IEBAIGJpbmRpbmdzL2pzL0dDQ29udHJvbGxlci5j
cHAKIGJpbmRpbmdzL2pzL0lEQkJpbmRpbmdVdGlsaXRpZXMuY3BwCiBiaW5kaW5ncy9qcy9KU0Fi
b3J0Q29udHJvbGxlckN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTQWJvcnRTaWduYWxDdXN0b20u
Y3BwCitiaW5kaW5ncy9qcy9KU0Fic3RyYWN0UmFuZ2VDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9K
U0FuaW1hdGlvbkVmZmVjdEN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTQW5pbWF0aW9uVGltZWxp
bmVDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0F0dHJDdXN0b20uY3BwCkBAIC04MTYsNiArODE3
LDcgQEAgZGlzcGxheS9EaXNwbGF5VHJlZUJ1aWxkZXIuY3BwCiBkaXNwbGF5L0Rpc3BsYXlWaWV3
LmNwcAogZG9tL0Fib3J0Q29udHJvbGxlci5jcHAKIGRvbS9BYm9ydFNpZ25hbC5jcHAKK2RvbS9B
YnN0cmFjdFJhbmdlLmNwcAogZG9tL0FjdGl2ZURPTUNhbGxiYWNrLmNwcAogZG9tL0FjdGl2ZURP
TU9iamVjdC5jcHAKIGRvbS9BbGxEZXNjZW5kYW50c0NvbGxlY3Rpb24uY3BwCkBAIC0yNjU0LDYg
KzI2NTYsNyBAQCBKU0FOR0xFSW5zdGFuY2VkQXJyYXlzLmNwcAogSlNBYm9ydEFsZ29yaXRobS5j
cHAKIEpTQWJvcnRDb250cm9sbGVyLmNwcAogSlNBYm9ydFNpZ25hbC5jcHAKK0pTQWJzdHJhY3RS
YW5nZS5jcHAKIEpTQWJzdHJhY3RXb3JrZXIuY3BwCiBKU0FkZHJlc3NFcnJvcnMuY3BwCiBKU0Fl
c0NiY0NmYlBhcmFtcy5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagppbmRleCAxYWNmMTQ0Mzk5MjQ4NTgxNDhkZDIwYjllOGRlN2E1MWUz
YjIyZGNlLi5kOTkzYjgyNmI1MWU1Yzc3NzkxYzc2MmEzZGQ4NmViOGNkYTk3YjkyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0y
NzMxLDYgKzI3MzEsNyBAQAogCQk5MzRGNzEzQzBENUE2RjE5MDAwMThENjkgLyogUmVzb3VyY2VF
cnJvckJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzNEY3MTNCMEQ1QTZGMTkwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9yQmFzZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNTAwRjMyMTNGREUz
QkUwMDk5RUMyNCAvKiBOU1Njcm9sbGVySW1wRGV0YWlscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1MDBGMzExM0ZERTNCRTAwOTlFQzI0IC8qIE5T
U2Nyb2xsZXJJbXBEZXRhaWxzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJOTM1MjA3QkUwOUJENDEwQTAwRjIwMzhEIC8qIExvY2FsaXplZFN0cmlu
Z3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNTIw
N0JEMDlCRDQxMEEwMEYyMDM4RCAvKiBMb2NhbGl6ZWRTdHJpbmdzLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTM1NUVGNTEyNTNBNDI3OTAwNkZG
NEE0IC8qIEpTQWJzdHJhY3RSYW5nZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTM1NUVGNEYyNTNBNDI3ODAwNkZGNEE0IC8qIEpTQWJzdHJhY3RSYW5n
ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkz
NUM0NzYzMDlBQzRDRTYwMEE2QUFCNCAvKiBNb3VzZUV2ZW50V2l0aEhpdFRlc3RSZXN1bHRzLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVDNDc2MjA5
QUM0Q0U2MDBBNkFBQjQgLyogTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5oICovOyB9Owog
CQk5MzVDNDc2ODA5QUM0RDQzMDBBNkFBQjQgLyogUGxhdGZvcm1LZXlib2FyZEV2ZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVDNDc2NjA5QUM0
RDQzMDBBNkFBQjQgLyogUGxhdGZvcm1LZXlib2FyZEV2ZW50LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM1QzQ3NjkwOUFDNEQ0MzAwQTZBQUI0
IC8qIFBsYXRmb3JtTW91c2VFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTM1QzQ3NjcwOUFDNEQ0MzAwQTZBQUI0IC8qIFBsYXRmb3JtTW91c2VF
dmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBA
IC0yNzc3LDYgKzI3NzgsNyBAQAogCQk5M0M0QTQxNTE2MjlERjVBMDBDM0VCNkUgLyogU2Nyb2xs
aW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTNDNEE0MTMxNjI5REY1QTAwQzNFQjZFIC8qIFNjcm9sbGlu
Z1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQk5M0M0RjZFQjExMDhGOUE1MDA5OUQwREIgLyogQWNjZXNz
aWJpbGl0eVNjcm9sbGJhci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTNDNEY2RTkxMTA4RjlBNTAwOTlEMERCIC8qIEFjY2Vzc2liaWxpdHlTY3JvbGxi
YXIuaCAqLzsgfTsKIAkJOTNDQ0YwMjcwQUY2QzUyOTAwMDE4RTg5IC8qIE5hdmlnYXRpb25BY3Rp
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQ0NG
MDI2MEFGNkM1MjkwMDAxOEU4OSAvKiBOYXZpZ2F0aW9uQWN0aW9uLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNEMDUwMzIyNTNBMTQ5QTAwMkEz
MDcyIC8qIEFic3RyYWN0UmFuZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzRDA1MDJFMjUzQTE0OEEwMDJBMzA3MiAvKiBBYnN0cmFjdFJhbmdlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTNEMTk2
MzExRDZDQUI3NjAwRkM3RTQ3IC8qIEV4Y2VwdGlvbk9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0QxOTYzMDFENkNBQjc2MDBGQzdFNDcgLyogRXhj
ZXB0aW9uT3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwogCQk5M0QxOTYzMzFENkNBQjgyMDBGQzdFNDcgLyogRXhjZXB0aW9uLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0QxOTYzMjFENkNBQjgyMDBGQzdF
NDcgLyogRXhjZXB0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJOTNENDM3OUYxRDU3QjE1MzAwQUI4NUVBIC8qIEpTRXhlY1N0YXRlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4RjkzNEQ4MzExODlG
MUVFMDA1MDhENUQgLyogSlNFeGVjU3RhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNzQ0NSw3ICs3NDQ3LDYgQEAKIAkJM0ZCQzRBRjExODk4
ODE1NjAwNDZFRTM4IC8qIFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNl
QVZLaXQubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTNGQkM0QUYyMTg5ODgxNTYw
MDQ2RUUzOCAvKiBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTAyNEZDODIzQ0YyNTRGMDBGREY5OEUgLyogU2Ft
cGxlQnVmZmVyRGlzcGxheUxheWVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNhbXBsZUJ1ZmZl
ckRpc3BsYXlMYXllci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTQxMDYyNkE3
MjI4MEEyMkEwMDZEMUI1OSAvKiBKU0F1ZGlvTm9kZUN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0F1ZGlvTm9kZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTQxMDc5MDhBMUZDM0U0RjIwMDYxQjI3QSAvKiBDbGllbnRPcmln
aW4uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2xpZW50T3JpZ2luLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMDg3RjAxMjQ4RTU5QzgwMDY4MEU5MSAvKiBB
dWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlclVuaXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXJVbml0LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEwODdGMDMyNDhFNTlDOTAwNjgwRTkxIC8q
IEF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVyVW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlclVuaXQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTExMjQ2LDYgKzExMjQ3LDkgQEAKIAkJOTM1MDBGMzEx
M0ZERTNCRTAwOTlFQzI0IC8qIE5TU2Nyb2xsZXJJbXBEZXRhaWxzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE5TU2Nyb2xsZXJJbXBEZXRhaWxzLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTkzNTIwN0JEMDlCRDQxMEEwMEYyMDM4RCAvKiBMb2NhbGl6ZWRTdHJp
bmdzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvY2FsaXplZFN0cmluZ3Mu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM1MzY3NkEwOUFFRDg4QjAwRDM1Q0Q2
IC8qIFNjcm9sbFZpZXdNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBh
dGggPSBTY3JvbGxWaWV3TWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzU1
RUY0RjI1M0E0Mjc4MDA2RkY0QTQgLyogSlNBYnN0cmFjdFJhbmdlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTQWJzdHJhY3RSYW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk5MzU1RUY1MDI1M0E0Mjc5MDA2RkY0QTQgLyogSlNBYnN0cmFjdFJhbmdlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQWJzdHJhY3RSYW5nZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNTVFRjUzMjUzQTRENUEwMDZGRjRB
NCAvKiBKU0Fic3RyYWN0UmFuZ2VDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBYnN0
cmFjdFJhbmdlQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM1QzQ3
NjIwOUFDNENFNjAwQTZBQUI0IC8qIE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzVDNDc2NjA5QUM0RDQzMDBBNkFB
QjQgLyogUGxhdGZvcm1LZXlib2FyZEV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFBsYXRmb3JtS2V5Ym9hcmRFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk5MzVDNDc2NzA5QUM0RDQzMDBBNkFBQjQgLyogUGxhdGZvcm1Nb3VzZUV2ZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXRmb3JtTW91c2VFdmVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTEzMzMsNiArMTEzMzcsOSBAQAogCQk5M0NBNENB
MjA5REY5M0ZBMDBERjg2NzcgLyogc3ZnLmNzcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBzdmcu
Y3NzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5M0NDRjAyNjBBRjZDNTI5MDAwMThF
ODkgLyogTmF2aWdhdGlvbkFjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBOYXZpZ2F0aW9uQWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzQ0NG
MDVGMEFGNkNBNzYwMDAxOEU4OSAvKiBOYXZpZ2F0aW9uQWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5hdmlnYXRpb25BY3Rpb24uY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5M0QwNTAyRTI1M0ExNDhBMDAyQTMwNzIgLyogQWJzdHJhY3RS
YW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBBYnN0cmFjdFJhbmdlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzRDA1MDMwMjUzQTE0OEMwMDJBMzA3MiAvKiBBYnN0cmFjdFJhbmdlLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBBYnN0cmFjdFJhbmdlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTNEMDUwMzEyNTNBMTQ4QzAwMkEzMDcyIC8qIEFic3RyYWN0UmFuZ2UuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQWJzdHJhY3RSYW5nZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTkzRDE5NjMwMUQ2Q0FCNzYwMEZDN0U0NyAvKiBFeGNlcHRpb25Pci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBFeGNlcHRpb25Pci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk5M0QxOTYzMjFENkNBQjgyMDBGQzdFNDcgLyogRXhjZXB0aW9uLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV4Y2VwdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk5M0Q5RDUzQjBEQTI3RTE4MDA3NzIxNkMgLyogUmFuZ2VCb3VuZGFyeVBvaW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJhbmdlQm91bmRhcnlQb2ludC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjIyMjQsMTAgKzIyMjMxLDEwIEBACiAJ
CQljaGlsZHJlbiA9ICgKIAkJCQk0MTA5MzgyODIzNDc3OTlBMDA5NDI4QkEgLyogSlNBYm9ydENv
bnRyb2xsZXJDdXN0b20uY3BwICovLAogCQkJCTQxMDkzODJDMjM0Nzg1MEUwMDk0MjhCQSAvKiBK
U0Fib3J0U2lnbmFsQ3VzdG9tLmNwcCAqLywKKwkJCQk5MzU1RUY1MzI1M0E0RDVBMDA2RkY0QTQg
LyogSlNBYnN0cmFjdFJhbmdlQ3VzdG9tLmNwcCAqLywKIAkJCQk3MUVGQ0VERTIwMkIzOUM3MDBE
N0M0MTEgLyogSlNBbmltYXRpb25FZmZlY3RDdXN0b20uY3BwICovLAogCQkJCTcxMDI1RUQ1MUY5
OUYxNDcwMDRBMjUwQyAvKiBKU0FuaW1hdGlvblRpbWVsaW5lQ3VzdG9tLmNwcCAqLywKIAkJCQlC
QzJFRDZCQjBDNkJEMkYwMDA5MjBCRkYgLyogSlNBdHRyQ3VzdG9tLmNwcCAqLywKLQkJCQk0MTA2
MjZBNzIyODBBMjJBMDA2RDFCNTkgLyogSlNBdWRpb05vZGVDdXN0b20uY3BwICovLAogCQkJCUJF
NkRGNzBFMTcxQ0EyREEwMERENTJCOCAvKiBKU0F1ZGlvVHJhY2tDdXN0b20uY3BwICovLAogCQkJ
CUJFNkRGNzEwMTcxQ0EyREEwMERENTJCOCAvKiBKU0F1ZGlvVHJhY2tMaXN0Q3VzdG9tLmNwcCAq
LywKIAkJCQk4M0YzN0E2NzI1MzZCMjFCMDBGRjVGM0IgLyogSlNBdWRpb1dvcmtsZXRQcm9jZXNz
b3JDdXN0b20uY3BwICovLApAQCAtMjUxNTIsOCArMjUxNTksNiBAQAogCQkJCUE1NzhGNDNBMURF
MDEzRkIwMDNERkM2QSAvKiBKU1Byb21pc2VSZWplY3Rpb25FdmVudC5oICovLAogCQkJCUNFRDA2
QUNFMUM3Nzc1NDgwMEZERkFGMSAvKiBKU1NlY3VyaXR5UG9saWN5VmlvbGF0aW9uRXZlbnQuY3Bw
ICovLAogCQkJCUNFRDA2QUNGMUM3Nzc1NDgwMEZERkFGMSAvKiBKU1NlY3VyaXR5UG9saWN5Vmlv
bGF0aW9uRXZlbnQuaCAqLywKLQkJCQlBODY2MjlDRTA5REEyQjQ3MDA5NjMzQTcgLyogSlNTdGF0
aWNSYW5nZS5jcHAgKi8sCi0JCQkJQTg2NjI5Q0QwOURBMkI0NzAwOTYzM0E3IC8qIEpTU3RhdGlj
UmFuZ2UuaCAqLywKIAkJCQk5MzNBMTRCNjBCN0QxRDUyMDBBNTNGRkQgLyogSlNUZXh0RXZlbnQu
Y3BwICovLAogCQkJCTkzM0ExNEI3MEI3RDFENTIwMEE1M0ZGRCAvKiBKU1RleHRFdmVudC5oICov
LAogCQkJCTBGREE3QzEwMTg4MzIyRUIwMEM5NTRCNSAvKiBKU1RvdWNoLmNwcCAqLywKQEAgLTI2
Nzc4LDggKzI2NzgzLDEyIEBACiAJCUJDOTg1NDQ2MENEM0RBNUYwMDA2OUJDMSAvKiBSYW5nZXMg
Ki8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCTkzNTVFRjUw
MjUzQTQyNzkwMDZGRjRBNCAvKiBKU0Fic3RyYWN0UmFuZ2UuY3BwICovLAorCQkJCTkzNTVFRjRG
MjUzQTQyNzgwMDZGRjRBNCAvKiBKU0Fic3RyYWN0UmFuZ2UuaCAqLywKIAkJCQk2NURGMzFFRDA5
RDFDQzYwMDAwQkUzMjUgLyogSlNSYW5nZS5jcHAgKi8sCiAJCQkJNjVERjMxRUUwOUQxQ0M2MDAw
MEJFMzI1IC8qIEpTUmFuZ2UuaCAqLywKKwkJCQlBODY2MjlDRTA5REEyQjQ3MDA5NjMzQTcgLyog
SlNTdGF0aWNSYW5nZS5jcHAgKi8sCisJCQkJQTg2NjI5Q0QwOURBMkI0NzAwOTYzM0E3IC8qIEpT
U3RhdGljUmFuZ2UuaCAqLywKIAkJCSk7CiAJCQluYW1lID0gUmFuZ2VzOwogCQkJc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsKQEAgLTI5Mjk5LDYgKzI5MzA4LDkgQEAKIAkJCQk3Q0QwRTJCRDFGODBB
NTZFMDAxNkE0Q0UgLyogQWJvcnRTaWduYWwuY3BwICovLAogCQkJCTdDRDBFMkJDMUY4MEE1NkUw
MDE2QTRDRSAvKiBBYm9ydFNpZ25hbC5oICovLAogCQkJCTdDRDBFMkJFMUY4MEE1NkUwMDE2QTRD
RSAvKiBBYm9ydFNpZ25hbC5pZGwgKi8sCisJCQkJOTNEMDUwMzEyNTNBMTQ4QzAwMkEzMDcyIC8q
IEFic3RyYWN0UmFuZ2UuY3BwICovLAorCQkJCTkzRDA1MDJFMjUzQTE0OEEwMDJBMzA3MiAvKiBB
YnN0cmFjdFJhbmdlLmggKi8sCisJCQkJOTNEMDUwMzAyNTNBMTQ4QzAwMkEzMDcyIC8qIEFic3Ry
YWN0UmFuZ2UuaWRsICovLAogCQkJCTdDNTIyMjk3MUUxREFFMTYwMDJDQjhGNyAvKiBBY3RpdmVE
T01DYWxsYmFjay5jcHAgKi8sCiAJCQkJN0M1MjIyOTgxRTFEQUUxNjAwMkNCOEY3IC8qIEFjdGl2
ZURPTUNhbGxiYWNrLmggKi8sCiAJCQkJRTFDNERFNkQwRUE3NUM2NTAwMjNDQ0Q2IC8qIEFjdGl2
ZURPTU9iamVjdC5jcHAgKi8sCkBAIC0zMDQyOSw2ICszMDQ0MSw3IEBACiAJCQkJNDZCOTUxOTUy
MDdENjMzNDAwQTdEMkREIC8qIEFic3RyYWN0RE9NV2luZG93LmggaW4gSGVhZGVycyAqLywKIAkJ
CQk0NkI5NTE5NjIwN0Q2MzNBMDBBN0QyREQgLyogQWJzdHJhY3RGcmFtZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJRjQ4MjIzMTMxRTM4NkUyNDAwNjZGQzc5IC8qIEFic3RyYWN0UGFzdGVib2FyZC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJOTNEMDUwMzIyNTNBMTQ5QTAwMkEzMDcyIC8qIEFic3RyYWN0
UmFuZ2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxRTFCMUQxMEZGNTk4NjkwMDU3NkIzQiAvKiBB
YnN0cmFjdFdvcmtlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMjlBODEyMkUwRkJCOUMxRDAwNTEw
MjkzIC8qIEFjY2Vzc2liaWxpdHlBUklBR3JpZENlbGwuaCBpbiBIZWFkZXJzICovLAogCQkJCTI5
QTgxMjMzMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5QVJJQUdyaWRSb3cuaCBpbiBI
ZWFkZXJzICovLApAQCAtMzIwMTYsNiArMzIwMjksNyBAQAogCQkJCTcxMjQ3RTM4MUZFQTVGODYw
MDhDMDhDRSAvKiBJdGVyYXRpb25Db21wb3NpdGVPcGVyYXRpb24uaCBpbiBIZWFkZXJzICovLAog
CQkJCTdDMzBEOTg0MUY4MTVBRUMwMDI2ODM1NiAvKiBKU0Fib3J0Q29udHJvbGxlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJN0MzMEQ5ODYxRjgxNUFFQzAwMjY4MzU2IC8qIEpTQWJvcnRTaWduYWwu
aCBpbiBIZWFkZXJzICovLAorCQkJCTkzNTVFRjUxMjUzQTQyNzkwMDZGRjRBNCAvKiBKU0Fic3Ry
YWN0UmFuZ2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxOEY4ODA1MEZGOTU3QUYwMDgwRjA0NSAv
KiBKU0Fic3RyYWN0V29ya2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBMTY3N0UxMzIxM0UwM0M2
MDBBMDhDMzQgLyogSlNBZGRyZXNzRXJyb3JzLmggaW4gSGVhZGVycyAqLywKIAkJCQk1NzA0NDA1
QTFFNTM5MzYyMDAzNTY2MDEgLyogSlNBZXNDYmNDZmJQYXJhbXMuaCBpbiBIZWFkZXJzICovLApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNBYnN0cmFjdFJhbmdlQ3Vz
dG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQWJzdHJhY3RSYW5nZUN1c3Rv
bS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uZTczODZkMTNhMjA3YTk1M2JkMjlmODk3NTIxNzNhMjBlNTFiNmY5
MwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQWJzdHJh
Y3RSYW5nZUN1c3RvbS5jcHAKQEAgLTAsMCArMSw0NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJKU0Fic3RyYWN0UmFuZ2UuaCIKKworI2luY2x1ZGUgIkpT
RE9NV3JhcHBlckNhY2hlLmgiCisjaW5jbHVkZSAiSlNSYW5nZS5oIgorI2luY2x1ZGUgIkpTU3Rh
dGljUmFuZ2UuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitKU0M6OkpTVmFsdWUgdG9KUyhK
U0M6OkpTR2xvYmFsT2JqZWN0KiBsZXhpY2FsR2xvYmFsT2JqZWN0LCBKU0RPTUdsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBBYnN0cmFjdFJhbmdlJiByYW5nZSkKK3sKKyAgICByZXR1cm4gd3Jh
cChsZXhpY2FsR2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QsIHJhbmdlKTsKK30KKworSlNDOjpK
U1ZhbHVlIHRvSlNOZXdseUNyZWF0ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxBYnN0cmFjdFJhbmdlPiYmIHJhbmdlKQoreworICAg
IGlmIChpczxTdGF0aWNSYW5nZT4ocmFuZ2UuZ2V0KCkpKQorICAgICAgICByZXR1cm4gY3JlYXRl
V3JhcHBlcjxTdGF0aWNSYW5nZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKHJhbmdlKSk7CisgICAg
cmV0dXJuIGNyZWF0ZVdyYXBwZXI8UmFuZ2U+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShyYW5nZSkp
OworfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50
Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3Bw
CmluZGV4IDViZWI0ZDhjYjUwN2NjZGE4NjRjYzUxYjQ2ODlkMjdkMjA0NzE5NzMuLjY0ZjFiNTBi
MjRmYjgzNmNiODc3MGYyNWEwNWYwZGE1NzhkY2UzYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwCkBAIC0yOSwyNCArMjksMTMgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJKU0V2ZW50LmgiCiAKLSNpbmNsdWRlICJEYXRhVHJhbnNm
ZXIuaCIKLSNpbmNsdWRlICJFdmVudC5oIgotI2luY2x1ZGUgIkV2ZW50SGVhZGVycy5oIgotI2lu
Y2x1ZGUgIkV2ZW50SW50ZXJmYWNlcy5oIgotI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgotI2lu
Y2x1ZGUgIkpTRGF0YVRyYW5zZmVyLmgiCi0jaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNMb2Nr
Lmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvQXRvbVN0cmluZy5oPgotCisjaW5jbHVkZSAiSlNET01X
cmFwcGVyQ2FjaGUuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewotdXNpbmcgbmFtZXNwYWNlIEpT
QzsKIAotSlNWYWx1ZSB0b0pTKEpTR2xvYmFsT2JqZWN0KiBsZXhpY2FsR2xvYmFsT2JqZWN0LCBK
U0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBFdmVudCYgZXZlbnQpCitKU1ZhbHVlIHRv
SlMoSlNDOjpKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgRXZlbnQmIGV2ZW50KQogewogICAgIHJldHVybiB3cmFwKGxl
eGljYWxHbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdCwgZXZlbnQpOwogfQogCi0jdW5kZWYgVFJZ
X1RPX1dSQVBfV0lUSF9JTlRFUkZBQ0UKLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCmluZGV4IDRj
MDgzMThiZjZjNGVmNzBjMjdiM2ExODAwNjcyMDU3NzZhYTA5YzguLjk3MDJjYzU5NzJlOTk1Nzk2
YjE3ODRiNjliMDBiNjI3MTcxZjQ0MzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgKQEAgLTQxLDYgKzQxLDcgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogCiAjZGVmaW5lIFdFQkNPUkVfQ09NTU9OX1BSSVZBVEVfSURFTlRJRklFUlNfRUFD
SF9QUk9QRVJUWV9OQU1FKG1hY3JvKSBcCiAgICAgbWFjcm8oQWJvcnRTaWduYWwpIFwKKyAgICBt
YWNybyhBYnN0cmFjdFJhbmdlKSBcCiAgICAgbWFjcm8oQW5pbWF0aW9uKSBcCiAgICAgbWFjcm8o
QW5pbWF0aW9uRWZmZWN0KSBcCiAgICAgbWFjcm8oQW5pbWF0aW9uUGxheWJhY2tFdmVudCkgXApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0Fic3RyYWN0UmFuZ2UuY3BwIGIvU291cmNl
L1dlYkNvcmUvZG9tL0Fic3RyYWN0UmFuZ2UuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk4ZTJlZDQ5N2M0MjNj
MzlmMmYxMzVkZjNiMTIwNTEwMTE0YWUxMWEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vQWJzdHJhY3RSYW5nZS5jcHAKQEAgLTAsMCArMSw1NiBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJBYnN0cmFjdFJhbmdlLmgiCisKKyNpbmNs
dWRlICJTaW1wbGVSYW5nZS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK1NpbXBsZVJhbmdl
IG1ha2VTaW1wbGVSYW5nZShjb25zdCBBYnN0cmFjdFJhbmdlJiByYW5nZSkKK3sKKyAgICByZXR1
cm4geyB7IHJhbmdlLnN0YXJ0Q29udGFpbmVyKCksIHJhbmdlLnN0YXJ0T2Zmc2V0KCkgfSwgeyBy
YW5nZS5lbmRDb250YWluZXIoKSwgcmFuZ2UuZW5kT2Zmc2V0KCkgfSB9OworfQorCitTaW1wbGVS
YW5nZSBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgUmVmPEFic3RyYWN0UmFuZ2U+JiByYW5nZSkKK3sK
KyAgICByZXR1cm4gbWFrZVNpbXBsZVJhbmdlKHJhbmdlLmdldCgpKTsKK30KKworT3B0aW9uYWw8
U2ltcGxlUmFuZ2U+IG1ha2VTaW1wbGVSYW5nZShjb25zdCBBYnN0cmFjdFJhbmdlKiByYW5nZSkK
K3sKKyAgICBpZiAoIXJhbmdlKQorICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworICAgIHJl
dHVybiBtYWtlU2ltcGxlUmFuZ2UoKnJhbmdlKTsKK30KKworT3B0aW9uYWw8U2ltcGxlUmFuZ2U+
IG1ha2VTaW1wbGVSYW5nZShjb25zdCBSZWZQdHI8QWJzdHJhY3RSYW5nZT4mIHJhbmdlKQorewor
ICAgIHJldHVybiBtYWtlU2ltcGxlUmFuZ2UocmFuZ2UuZ2V0KCkpOworfQorCit9CisKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJhbmdlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vQWJzdHJhY3RSYW5nZS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE0MTk0ZWVmYThjZTIzZTkxMDIzNDNi
NWM0YTQxMWU0OTljZjEwOWQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
QWJzdHJhY3RSYW5nZS5oCkBAIC0wLDAgKzEsNTUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9u
Y2UKKworI2luY2x1ZGUgPHd0Zi9PcHRpb25hbC5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVk
Lmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgTm9kZTsKKworc3RydWN0IFNpbXBs
ZVJhbmdlOworCitjbGFzcyBBYnN0cmFjdFJhbmdlIDogcHVibGljIFJlZkNvdW50ZWQ8QWJzdHJh
Y3RSYW5nZT4geworcHVibGljOgorICAgIHZpcnR1YWwgfkFic3RyYWN0UmFuZ2UoKSA9IGRlZmF1
bHQ7CisKKyAgICB2aXJ0dWFsIE5vZGUmIHN0YXJ0Q29udGFpbmVyKCkgY29uc3QgPSAwOworICAg
IHZpcnR1YWwgdW5zaWduZWQgc3RhcnRPZmZzZXQoKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBO
b2RlJiBlbmRDb250YWluZXIoKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCB1bnNpZ25lZCBlbmRP
ZmZzZXQoKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBib29sIGNvbGxhcHNlZCgpIGNvbnN0ID0g
MDsKKworICAgIHZpcnR1YWwgYm9vbCBpc0xpdmVSYW5nZSgpIGNvbnN0ID0gMDsKK307CisKK1Np
bXBsZVJhbmdlIG1ha2VTaW1wbGVSYW5nZShjb25zdCBBYnN0cmFjdFJhbmdlJik7CitTaW1wbGVS
YW5nZSBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgUmVmPEFic3RyYWN0UmFuZ2U+Jik7CitPcHRpb25h
bDxTaW1wbGVSYW5nZT4gbWFrZVNpbXBsZVJhbmdlKGNvbnN0IEFic3RyYWN0UmFuZ2UqKTsKK09w
dGlvbmFsPFNpbXBsZVJhbmdlPiBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgUmVmUHRyPEFic3RyYWN0
UmFuZ2U+Jik7CisKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJh
bmdlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJhbmdlLmlkbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4yNGUzODczYTYzMzUwZGUxMjc0Mzc0MDI0OGEwYjA2NmNmNTMxODU5Ci0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0Fic3RyYWN0UmFuZ2UuaWRsCkBAIC0wLDAgKzEsMzkg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUK
KyAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCisgKiAgICBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogICAgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyAqICAgIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworICogICAg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQorICogTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAorICogT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUgorICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCisgKiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0gg
REFNQUdFLgorICovCisKK1sKKyAgICBDdXN0b21Ub0pTT2JqZWN0LAorICAgIEV4cG9zZWQ9V2lu
ZG93LAorXSBpbnRlcmZhY2UgQWJzdHJhY3RSYW5nZSB7CisgICAgcmVhZG9ubHkgYXR0cmlidXRl
IE5vZGUgc3RhcnRDb250YWluZXI7CisgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxv
bmcgc3RhcnRPZmZzZXQ7CisgICAgcmVhZG9ubHkgYXR0cmlidXRlIE5vZGUgZW5kQ29udGFpbmVy
OworICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGVuZE9mZnNldDsKKyAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBjb2xsYXBzZWQ7Cit9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5jcHAK
aW5kZXggM2RmMTdhODVjYTRkZjQzZThjMjI3NmFjY2E2MGNhZjBmOTkyZmU4YS4uNGE5ZjQzZmJm
MWY1NTMxNTFmMDE5MThkODBjMDc2NDJiMDY1OTc1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL1JhbmdlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuY3BwCkBAIC00
NSw2ICs0NSw3IEBACiAjaW5jbHVkZSAiVmlzaWJsZVVuaXRzLmgiCiAjaW5jbHVkZSAibWFya3Vw
LmgiCiAjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5o
PgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkTGVha0NvdW50ZXIuaD4KICNpbmNsdWRlIDx3dGYv
dGV4dC9DU3RyaW5nLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgpAQCAt
NjEsNiArNjIsOCBAQCBzdGF0aWMgRXhjZXB0aW9uT3I8dm9pZD4gcHJvY2Vzc05vZGVzKFJhbmdl
OjpBY3Rpb25UeXBlLCBWZWN0b3I8UmVmPE5vZGU+PiYsIE5vZAogc3RhdGljIEV4Y2VwdGlvbk9y
PFJlZlB0cjxOb2RlPj4gcHJvY2Vzc0NvbnRlbnRzQmV0d2Vlbk9mZnNldHMoUmFuZ2U6OkFjdGlv
blR5cGUsIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiwgUmVmUHRyPE5vZGU+IGNvbnRhaW5lciwg
dW5zaWduZWQgc3RhcnRPZmZzZXQsIHVuc2lnbmVkIGVuZE9mZnNldCk7CiBzdGF0aWMgRXhjZXB0
aW9uT3I8UmVmUHRyPE5vZGU+PiBwcm9jZXNzQW5jZXN0b3JzQW5kVGhlaXJTaWJsaW5ncyhSYW5n
ZTo6QWN0aW9uVHlwZSwgTm9kZSogY29udGFpbmVyLCBDb250ZW50c1Byb2Nlc3NEaXJlY3Rpb24s
IEV4Y2VwdGlvbk9yPFJlZlB0cjxOb2RlPj4mJiBwYXNzZWRDbG9uZWRDb250YWluZXIsIE5vZGUq
IGNvbW1vblJvb3QpOwogCitXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoUmFuZ2UpOworCiBp
bmxpbmUgUmFuZ2U6OlJhbmdlKERvY3VtZW50JiBvd25lckRvY3VtZW50KQogICAgIDogbV9vd25l
ckRvY3VtZW50KG93bmVyRG9jdW1lbnQpCiAgICAgLCBtX3N0YXJ0KG93bmVyRG9jdW1lbnQpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9SYW5nZS5oCmluZGV4IDQ4N2E4YjFiODQ5NGNkZGEwODIwYWFkMTc1YThiZjEzODEwODdmMmQu
LjJlOTA4YjQzOTNkNTRkYjQzZDYwNzQ0ZmI5YjA1NzM3YTI2MTUxYjcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5o
CkBAIC0yNCw2ICsyNCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiQWJzdHJhY3RS
YW5nZS5oIgogI2luY2x1ZGUgIlJhbmdlQm91bmRhcnlQb2ludC5oIgogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CkBAIC0zNywxNiArMzgsMTcgQEAgY2xhc3MgVGV4dDsKIAogc3RydWN0IFNpbXBsZVJh
bmdlOwogCi1jbGFzcyBSYW5nZSA6IHB1YmxpYyBSZWZDb3VudGVkPFJhbmdlPiB7CitjbGFzcyBS
YW5nZSBmaW5hbCA6IHB1YmxpYyBBYnN0cmFjdFJhbmdlIHsKKyAgICBXVEZfTUFLRV9JU09fQUxM
T0NBVEVEKFJhbmdlKTsKIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPFJh
bmdlPiBjcmVhdGUoRG9jdW1lbnQmKTsKICAgICBXRUJDT1JFX0VYUE9SVCB+UmFuZ2UoKTsKIAot
ICAgIE5vZGUmIHN0YXJ0Q29udGFpbmVyKCkgY29uc3QgeyByZXR1cm4gbV9zdGFydC5jb250YWlu
ZXIoKTsgfQotICAgIHVuc2lnbmVkIHN0YXJ0T2Zmc2V0KCkgY29uc3QgeyByZXR1cm4gbV9zdGFy
dC5vZmZzZXQoKTsgfQotICAgIE5vZGUmIGVuZENvbnRhaW5lcigpIGNvbnN0IHsgcmV0dXJuIG1f
ZW5kLmNvbnRhaW5lcigpOyB9Ci0gICAgdW5zaWduZWQgZW5kT2Zmc2V0KCkgY29uc3QgeyByZXR1
cm4gbV9lbmQub2Zmc2V0KCk7IH0KLSAgICBib29sIGNvbGxhcHNlZCgpIGNvbnN0IHsgcmV0dXJu
IG1fc3RhcnQgPT0gbV9lbmQ7IH0KKyAgICBOb2RlJiBzdGFydENvbnRhaW5lcigpIGNvbnN0IGZp
bmFsIHsgcmV0dXJuIG1fc3RhcnQuY29udGFpbmVyKCk7IH0KKyAgICB1bnNpZ25lZCBzdGFydE9m
ZnNldCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fc3RhcnQub2Zmc2V0KCk7IH0KKyAgICBOb2Rl
JiBlbmRDb250YWluZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2VuZC5jb250YWluZXIoKTsg
fQorICAgIHVuc2lnbmVkIGVuZE9mZnNldCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZW5kLm9m
ZnNldCgpOyB9CisgICAgYm9vbCBjb2xsYXBzZWQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX3N0
YXJ0ID09IG1fZW5kOyB9CiAgICAgTm9kZSogY29tbW9uQW5jZXN0b3JDb250YWluZXIoKSBjb25z
dCB7IHJldHVybiBjb21tb25JbmNsdXNpdmVBbmNlc3RvcihzdGFydENvbnRhaW5lcigpLCBlbmRD
b250YWluZXIoKSkuZ2V0KCk7IH0KIAogICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9yPHZv
aWQ+IHNldFN0YXJ0KFJlZjxOb2RlPiYmLCB1bnNpZ25lZCBvZmZzZXQpOwpAQCAtMTE4LDYgKzEy
MCw4IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgUmFuZ2UoRG9jdW1lbnQmKTsK
IAorICAgIGJvb2wgaXNMaXZlUmFuZ2UoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CisK
ICAgICB2b2lkIHVwZGF0ZURvY3VtZW50KCk7CiAgICAgdm9pZCB1cGRhdGVBc3NvY2lhdGVkU2Vs
ZWN0aW9uKCk7CiAgICAgRXhjZXB0aW9uT3I8UmVmUHRyPERvY3VtZW50RnJhZ21lbnQ+PiBwcm9j
ZXNzQ29udGVudHMoQWN0aW9uVHlwZSk7CkBAIC0xNDIsMyArMTQ2LDcgQEAgV0VCQ09SRV9FWFBP
UlQgUmVmUHRyPFJhbmdlPiBjcmVhdGVMaXZlUmFuZ2UoY29uc3QgT3B0aW9uYWw8U2ltcGxlUmFu
Z2U+Jik7CiAvLyBPdXRzaWRlIHRoZSBXZWJDb3JlIG5hbWVzcGFjZSBmb3IgZWFzZSBvZiBpbnZv
Y2F0aW9uIGZyb20gdGhlIGRlYnVnZ2VyLgogdm9pZCBzaG93VHJlZShjb25zdCBXZWJDb3JlOjpS
YW5nZSopOwogI2VuZGlmCisKK1NQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6
UmFuZ2UpCisgICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OkFic3RyYWN0UmFu
Z2UmIHJhbmdlKSB7IHJldHVybiByYW5nZS5pc0xpdmVSYW5nZSgpOyB9CitTUEVDSUFMSVpFX1RZ
UEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuaWRs
IGIvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmlkbAppbmRleCA2M2RmMzg3N2Y2MGRiN2IxODUw
N2VjOTU4N2I5MjBhNTVlZDU1ZjExLi4zYzA1N2EwZmI5OWRkNzgyYTIwMjhmNDRhYzFmZTVkMmFh
ODhiZGUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5pZGwKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJp
Z2h0IChDKSAyMDA2IEFwcGxlIEluYy4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0yMDIwIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwNiBTYW11ZWwg
V2VpbmlnIDxzYW0ud2VpbmlnQGdtYWlsLmNvbT4KICAqCiAgKiBUaGlzIGxpYnJhcnkgaXMgZnJl
ZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCkBAIC0yMCwxNyArMjAs
MTIgQEAKIAogWwogICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9UmVhY2hhYmxlRnJvbURPTVdpbmRv
dywKLSAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAogICAgIEV4cG9ydE1hY3JvPVdFQkNP
UkVfRVhQT1JULAotICAgIEV4cG9zZWQ9V2luZG93Ci1dIGludGVyZmFjZSBSYW5nZSB7CisgICAg
RXhwb3NlZD1XaW5kb3csCisgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAorXSBpbnRlcmZh
Y2UgUmFuZ2UgOiBBYnN0cmFjdFJhbmdlIHsKICAgICBbQ2FsbFdpdGg9RG9jdW1lbnRdIGNvbnN0
cnVjdG9yKCk7CiAKLSAgICByZWFkb25seSBhdHRyaWJ1dGUgTm9kZSBzdGFydENvbnRhaW5lcjsK
LSAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBzdGFydE9mZnNldDsKLSAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgTm9kZSBlbmRDb250YWluZXI7Ci0gICAgcmVhZG9ubHkgYXR0cmli
dXRlIHVuc2lnbmVkIGxvbmcgZW5kT2Zmc2V0OwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29s
ZWFuIGNvbGxhcHNlZDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgTm9kZSBjb21tb25BbmNlc3Rv
ckNvbnRhaW5lcjsKIAogICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gdW5kZWZpbmVkIHNldFN0YXJ0
KE5vZGUgbm9kZSwgdW5zaWduZWQgbG9uZyBvZmZzZXQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL1N0YXRpY1JhbmdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdGF0aWNSYW5n
ZS5jcHAKaW5kZXggNWQ3Y2E4MjEwNzMzZGMwZDU5MGI0Y2I4OGQ4OGQxYTFiYjYwYjQ0NS4uOTZi
Y2ZiODIxNmNmZGE2YzdhN2U4Zjc1NmFlYzA4YzY5ODcyZGJmNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZG9tL1N0YXRpY1JhbmdlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU3Rh
dGljUmFuZ2UuY3BwCkBAIC0yOCw5ICsyOCwxMiBAQAogCiAjaW5jbHVkZSAiQ29udGFpbmVyTm9k
ZS5oIgogI2luY2x1ZGUgIlRleHQuaCIKKyNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5o
PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK1dURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChT
dGF0aWNSYW5nZSk7CisKIFN0YXRpY1JhbmdlOjpTdGF0aWNSYW5nZShTaW1wbGVSYW5nZSYmIHJh
bmdlKQogICAgIDogU2ltcGxlUmFuZ2UoV1RGTW92ZShyYW5nZSkpCiB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vU3RhdGljUmFuZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdGF0
aWNSYW5nZS5oCmluZGV4IGVjZTliNGRmMDFmY2RkODRhNWYwMDFhOTIxNmJlMWE5NTg2NjdmNDIu
Ljc2OTAxMTNkZjhhMmFlOWJjODI1NTZjNGFiZjEwZjk3MmUyMmE3YWUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9TdGF0aWNSYW5nZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9T
dGF0aWNSYW5nZS5oCkBAIC0yNSwxMyArMjUsMTUgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNs
dWRlICJFeGNlcHRpb25Pci5oIgorI2luY2x1ZGUgIkFic3RyYWN0UmFuZ2UuaCIKICNpbmNsdWRl
ICJTaW1wbGVSYW5nZS5oIgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAotY2xhc3MgU3RhdGljUmFuZ2UgOiBwdWJsaWMgUmVmQ291bnRlZDxTdGF0
aWNSYW5nZT4sIHB1YmxpYyBTaW1wbGVSYW5nZSB7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3Mg
RXhjZXB0aW9uT3I7CisKK2NsYXNzIFN0YXRpY1JhbmdlIGZpbmFsIDogcHVibGljIEFic3RyYWN0
UmFuZ2UsIHB1YmxpYyBTaW1wbGVSYW5nZSB7CisgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChT
dGF0aWNSYW5nZSk7CiBwdWJsaWM6CiAgICAgc3RydWN0IEluaXQgewogICAgICAgICBSZWZQdHI8
Tm9kZT4gc3RhcnRDb250YWluZXI7CkBAIC00NCw4ICs0NiwyMCBAQCBwdWJsaWM6CiAgICAgc3Rh
dGljIFJlZjxTdGF0aWNSYW5nZT4gY3JlYXRlKGNvbnN0IFNpbXBsZVJhbmdlJik7CiAgICAgc3Rh
dGljIFJlZjxTdGF0aWNSYW5nZT4gY3JlYXRlKFNpbXBsZVJhbmdlJiYpOwogCisgICAgTm9kZSYg
c3RhcnRDb250YWluZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBTaW1wbGVSYW5nZTo6c3RhcnRD
b250YWluZXIoKTsgfQorICAgIHVuc2lnbmVkIHN0YXJ0T2Zmc2V0KCkgY29uc3QgZmluYWwgeyBy
ZXR1cm4gU2ltcGxlUmFuZ2U6OnN0YXJ0T2Zmc2V0KCk7IH0KKyAgICBOb2RlJiBlbmRDb250YWlu
ZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBTaW1wbGVSYW5nZTo6ZW5kQ29udGFpbmVyKCk7IH0K
KyAgICB1bnNpZ25lZCBlbmRPZmZzZXQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBTaW1wbGVSYW5n
ZTo6ZW5kT2Zmc2V0KCk7IH0KKyAgICBib29sIGNvbGxhcHNlZCgpIGNvbnN0IGZpbmFsIHsgcmV0
dXJuIFNpbXBsZVJhbmdlOjpjb2xsYXBzZWQoKTsgfQorCiBwcml2YXRlOgogICAgIFN0YXRpY1Jh
bmdlKFNpbXBsZVJhbmdlJiYpOworCisgICAgYm9vbCBpc0xpdmVSYW5nZSgpIGNvbnN0IGZpbmFs
IHsgcmV0dXJuIGZhbHNlOyB9CiB9OwogCiB9CisKK1NQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVH
SU4oV2ViQ29yZTo6U3RhdGljUmFuZ2UpCisgICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdl
YkNvcmU6OkFic3RyYWN0UmFuZ2UmIHJhbmdlKSB7IHJldHVybiAhcmFuZ2UuaXNMaXZlUmFuZ2Uo
KTsgfQorU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL1N0YXRpY1JhbmdlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdGF0aWNSYW5n
ZS5pZGwKaW5kZXggODNhOTgyMjM4YTQ2ZDZjMjNjNDE0ZTA1NDE1YWE1YWU2NzIwZjVkZi4uMTEy
NjQ4YTA4MTY5MjY0Yjg1YTZkMTg0OTNjNjM4MDhiNTQ4OTI2NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZG9tL1N0YXRpY1JhbmdlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU3Rh
dGljUmFuZ2UuaWRsCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNiBB
cHBsZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDE2LTIw
MjAgQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwpAQCAtMjQsMTcgKzI0LDEwIEBACiAgKi8KIAogWwotICAgIEVuYWJsZWRCeVNl
dHRpbmc9SW5wdXRFdmVudHMsCi0gICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKLSAgICBF
eHBvc2VkPVdpbmRvdwotXSBpbnRlcmZhY2UgU3RhdGljUmFuZ2UgewotICAgIGNvbnN0cnVjdG9y
KFN0YXRpY1JhbmdlSW5pdCBzdGF0aWNSYW5nZUluaXREaWN0KTsKLQotICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSB1bnNpZ25lZCBsb25nIHN0YXJ0T2Zmc2V0OwotICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSB1bnNpZ25lZCBsb25nIGVuZE9mZnNldDsKLSAgICByZWFkb25seSBhdHRyaWJ1dGUgTm9kZSBz
dGFydENvbnRhaW5lcjsKLSAgICByZWFkb25seSBhdHRyaWJ1dGUgTm9kZSBlbmRDb250YWluZXI7
Ci0gICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gY29sbGFwc2VkOworICAgIEV4cG9zZWQ9
V2luZG93LAorICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKK10gaW50ZXJmYWNlIFN0YXRp
Y1JhbmdlIDogQWJzdHJhY3RSYW5nZSB7CisgICAgY29uc3RydWN0b3IoU3RhdGljUmFuZ2VJbml0
IGluaXQpOwogfTsKIAogZGljdGlvbmFyeSBTdGF0aWNSYW5nZUluaXQgewpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy9DaGFuZ2VMb2cKaW5kZXggZmQ3YjI5YTAxYmUwNDVmYWQ4YmZkNWZhYjM4NGNmZDk2ZTU4
NzBjYy4uNWYxMDljZWFiN2Q0YTllNDJmYmJlYjUyODViM2QyMGM4YmFlZTFjZCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjAtMTAtMTYgIERhcmlu
IEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBBYnN0cmFjdFJhbmdlCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTc4NDYKKwor
ICAgICAgICBSZXZpZXdlZCBieSBSeW9zdWtlIE5pd2EuCisKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvZG9tL2lkbGhhcm5lc3Mud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgVXBk
YXRlZCB0ZXN0IHJlc3VsdCBmb3IgcHJvZ3Jlc3Npb24uCisKIDIwMjAtMTAtMTQgIFNlcmdpbyBW
aWxsYXIgU2VuaW4gIDxzdmlsbGFyQGlnYWxpYS5jb20+CiAKICAgICAgICAgW2Nzcy1mbGV4Ym94
XSBmbGV4LWdyb3cgcHJvcGVydHkgc2hvdWxkIGJlIGFuaW1hdGFibGUKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2lkbGhhcm5lc3Mu
d2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZG9tL2lkbGhhcm5lc3Mud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCAyNmRlMmU4
OTk4MDQwMmM0YTM4YmM2NWFhOTNiYjU4MTA3MjQ4YWUwLi4zZmUyZjlhYjYzZDNlYmI0YTUzMjlj
NzY0ZWNjYzgyM2U3Mjc2NGYzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9pZGxoYXJuZXNzLndpbmRvdy1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vaWRsaGFy
bmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xNDk0LDI3ICsxNDk0LDI3IEBAIFBBU1MgRXZl
bnRUYXJnZXQgaW50ZXJmYWNlOiBkb2N1bWVudC5jcmVhdGVDb21tZW50KCJhYmMiKSBtdXN0IGlu
aGVyaXQgcHJvcGVydHkKIFBBU1MgRXZlbnRUYXJnZXQgaW50ZXJmYWNlOiBjYWxsaW5nIHJlbW92
ZUV2ZW50TGlzdGVuZXIoRE9NU3RyaW5nLCBFdmVudExpc3RlbmVyPywgb3B0aW9uYWwgKEV2ZW50
TGlzdGVuZXJPcHRpb25zIG9yIGJvb2xlYW4pKSBvbiBkb2N1bWVudC5jcmVhdGVDb21tZW50KCJh
YmMiKSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yCiBQQVNTIEV2
ZW50VGFyZ2V0IGludGVyZmFjZTogZG9jdW1lbnQuY3JlYXRlQ29tbWVudCgiYWJjIikgbXVzdCBp
bmhlcml0IHByb3BlcnR5ICJkaXNwYXRjaEV2ZW50KEV2ZW50KSIgd2l0aCB0aGUgcHJvcGVyIHR5
cGUKIFBBU1MgRXZlbnRUYXJnZXQgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc3BhdGNoRXZlbnQoRXZl
bnQpIG9uIGRvY3VtZW50LmNyZWF0ZUNvbW1lbnQoImFiYyIpIHdpdGggdG9vIGZldyBhcmd1bWVu
dHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IKLUZBSUwgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGV4
aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2Ugb2JqZWN0IGFzc2VydF9vd25fcHJv
cGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIGV4
cGVjdGVkIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBtaXNzaW5nCi1GQUlMIEFic3RyYWN0UmFu
Z2UgaW50ZXJmYWNlIG9iamVjdCBsZW5ndGggYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2Vz
IG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkg
IkFic3RyYWN0UmFuZ2UiIG1pc3NpbmcKLUZBSUwgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2Ugb2Jq
ZWN0IG5hbWUgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9w
ZXJ0eSAiQWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIG1p
c3NpbmcKLUZBSUwgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVy
dGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBz
ZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBw
cm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBBYnN0cmFjdFJhbmdlIGludGVy
ZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2Jq
ZWN0J3MgImNvbnN0cnVjdG9yIiBwcm9wZXJ0eSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRv
ZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0
eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTog
ZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3Mg
QEB1bnNjb3BhYmxlcyBwcm9wZXJ0eSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90
IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJz
dHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTogYXR0cmli
dXRlIHN0YXJ0Q29udGFpbmVyIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2
ZSBvd24gcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIGV4cGVjdGVkIHByb3BlcnR5ICJBYnN0cmFj
dFJhbmdlIiBtaXNzaW5nCi1GQUlMIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBhdHRyaWJ1dGUg
c3RhcnRPZmZzZXQgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBw
cm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkgIkFic3RyYWN0UmFuZ2Ui
IG1pc3NpbmcKLUZBSUwgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBlbmRDb250
YWluZXIgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0
eSAiQWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIG1pc3Np
bmcKLUZBSUwgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBlbmRPZmZzZXQgYXNz
ZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiQWJzdHJh
Y3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIG1pc3NpbmcKLUZBSUwg
QWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBjb2xsYXBzZWQgYXNzZXJ0X293bl9w
cm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIg
ZXhwZWN0ZWQgcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIG1pc3NpbmcKLUZBSUwgU3RhdGljUmFu
Z2UgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIG9iamVj
dCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJB
YnN0cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwor
UEFTUyBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9m
IGludGVyZmFjZSBvYmplY3QKK1BBU1MgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2Ugb2JqZWN0IGxl
bmd0aAorUEFTUyBBYnN0cmFjdFJhbmdlIGludGVyZmFjZSBvYmplY3QgbmFtZQorUEFTUyBBYnN0
cmFjdFJhbmdlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFj
ZSBwcm90b3R5cGUgb2JqZWN0CitQQVNTIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVu
Y2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyAiY29uc3Ry
dWN0b3IiIHByb3BlcnR5CitQQVNTIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVuY2Ug
YW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVuc2NvcGFi
bGVzIHByb3BlcnR5CitQQVNTIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgc3Rh
cnRDb250YWluZXIKK1BBU1MgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBzdGFy
dE9mZnNldAorUEFTUyBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTogYXR0cmlidXRlIGVuZENvbnRh
aW5lcgorUEFTUyBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTogYXR0cmlidXRlIGVuZE9mZnNldAor
UEFTUyBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTogYXR0cmlidXRlIGNvbGxhcHNlZAorUEFTUyBT
dGF0aWNSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZh
Y2Ugb2JqZWN0CiBQQVNTIFN0YXRpY1JhbmdlIGludGVyZmFjZSBvYmplY3QgbGVuZ3RoCiBQQVNT
IFN0YXRpY1JhbmdlIGludGVyZmFjZSBvYmplY3QgbmFtZQotRkFJTCBTdGF0aWNSYW5nZSBpbnRl
cmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9i
amVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5
ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2lu
ZworUEFTUyBTdGF0aWNSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBv
ZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdAogUEFTUyBTdGF0aWNSYW5nZSBpbnRlcmZhY2U6
IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdz
ICJjb25zdHJ1Y3RvciIgcHJvcGVydHkKIFBBU1MgU3RhdGljUmFuZ2UgaW50ZXJmYWNlOiBleGlz
dGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVu
c2NvcGFibGVzIHByb3BlcnR5Ci1GQUlMIFJhbmdlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBw
cm9wZXJ0aWVzIG9mIGludGVyZmFjZSBvYmplY3QgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBk
b2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVy
dHkgIkFic3RyYWN0UmFuZ2UiIG1pc3NpbmcKK1BBU1MgUmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVu
Y2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIG9iamVjdAogUEFTUyBSYW5nZSBpbnRlcmZh
Y2Ugb2JqZWN0IGxlbmd0aAogUEFTUyBSYW5nZSBpbnRlcmZhY2Ugb2JqZWN0IG5hbWUKLUZBSUwg
UmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHBy
b3RvdHlwZSBvYmplY3QgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93
biBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkgIkFic3RyYWN0UmFu
Z2UiIG1pc3NpbmcKK1BBU1MgUmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRp
ZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QKIFBBU1MgUmFuZ2UgaW50ZXJmYWNlOiBl
eGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyAi
Y29uc3RydWN0b3IiIHByb3BlcnR5CiBQQVNTIFJhbmdlIGludGVyZmFjZTogZXhpc3RlbmNlIGFu
ZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3MgQEB1bnNjb3BhYmxl
cyBwcm9wZXJ0eQogUEFTUyBSYW5nZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBjb21tb25BbmNlc3Rv
ckNvbnRhaW5lcgo=
</data>
<flag name="commit-queue"
          id="427917"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411644</attachid>
            <date>2020-10-16 19:22:17 -0700</date>
            <delta_ts>2020-10-17 04:04:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217846-20201016192216.patch</filename>
            <type>text/plain</type>
            <size>43907</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4NjI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjU1ODI2YzFlNDdlYTZh
ZTUwYjZjMGQ1NzY4NTc0M2FhODJmMWMzYy4uMjAyY2ZhNjFiMjYzMzU1YTY0N2JjMDM5MmQxNTFj
MmQ2M2E1Zjk1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY2IEBACisyMDIwLTEwLTE2ICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgQWJzdHJhY3RSYW5nZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3ODQ2CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisgICAgICAgIFRoaXMgbWFrZXMg
dXMgbW9yZSBhY2N1cmF0ZWx5IG1hdGNoIHRoZSBET00gc3BlY2lmaWNhdGlvbiwgbWFrZXMgUmFu
Z2UKKyAgICAgICAgYW5kIFN0YXRpY1JhbmdlIG9iamVjdHMgc2xpZ2h0bHkgYmlnZ2VyIHNpbmNl
IHRoZXkgbm93IGhhdmUgYSB2aXJ0dWFsCisgICAgICAgIHRhYmxlIHBvaW50ZXIsIGFuZCBtYWtl
cyB0aGUgQWJzdHJhY3RSYW5nZSBtZXRob2RzIGEgYml0IHNsb3dlciB0byBjYWxsCisgICAgICAg
IGZyb20gSmF2YVNjcmlwdCBzaW5jZSB0aGV5IGFyZSBiYWNrZWQgYnkgQysrIHZpcnR1YWwgZnVu
Y3Rpb25zLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZGVkIEFic3RyYWN0UmFuZ2Ug
ZmlsZXMuCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdDogRGl0dG8u
CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Q6IERpdHRvLgorICAg
ICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IERpdHRvLgorICAgICAgICAqIEhlYWRlcnMuY21h
a2U6IERpdHRvLgorICAgICAgICAqIFNvdXJjZXMudHh0OiBEaXR0by4KKyAgICAgICAgKiBXZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IERpdHRvLgorICAgICAgICBBbHNvIHJlbW92
ZWQgcmVmZXJlbmNlIHRvIG5vbi1leGlzdGVudCBKU0F1ZGlvTm9kZUN1c3RvbS5jcHAgYW5kIG1v
dmVkCisgICAgICAgIEpTU3RhdGljUmFuZ2UgZmlsZSBmcm9tIHRoZSBFdmVudHMgZ3JvdXAgaW50
byB0aGUgUmFuZ2VzIGdyb3VwLgorCisgICAgICAgICogYmluZGluZ3MvanMvSlNBYnN0cmFjdFJh
bmdlQ3VzdG9tLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKTogQWRkZWQuIEp1
c3QgdGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24uIFdvdWxkIGJlCisgICAgICAgIG5pY2UgaWYg
d2UgZGlkIG5vdCBoYXZlIHRvIHdyaXRlIHRoaXMuCisgICAgICAgIChXZWJDb3JlOjp0b0pTTmV3
bHlDcmVhdGVkKTogTWFrZSBlaXRoZXIgYSBTdGF0aWNSYW5nZSBvciBSYW5nZQorICAgICAgICB3
cmFwcGVyIGRlcGVuZGluZyBvbiB3aGV0aGVyIHRoaXMgaXMgYSBsaXZlIHJhbmdlIG9yIG5vdC4K
KworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRXZlbnRDdXN0b20uY3BwOiBSZW1vdmVkIGxvdHMg
b2YgdW5uZWVkZWQgaW5jbHVkZXMuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKTogU3RvcHBlZCB1
c2luZyAidXNpbmcgbmFtZXNwYWNlIEpTQyIuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9XZWJD
b3JlQnVpbHRpbk5hbWVzLmg6IEFkZGVkIEFic3RyYWN0UmFuZ2UuCisKKyAgICAgICAgKiBkb20v
QWJzdHJhY3RSYW5nZS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6bWFrZVNpbXBsZVJh
bmdlKTogQWRkZWQuCisgICAgICAgICogZG9tL0Fic3RyYWN0UmFuZ2UuaDogQWRkZWQuCisgICAg
ICAgICogZG9tL0Fic3RyYWN0UmFuZ2UuaWRsOiBBZGRlZC4KKworICAgICAgICAqIGRvbS9SYW5n
ZS5oOiBDaGFuZ2VkIHRvIGRlcml2ZSBmcm9tIEFic3RyYWN0UmFuZ2UgaW5zdGVhZCBvZgorICAg
ICAgICBmcm9tIFJlZkNvdW50ZWQuIEFsc28gbWFya2VkIHRoaXMgZmluYWwgc2luY2UgaXQncyBu
b3cgcG9seW1vcnBoaWMuCisgICAgICAgIE1hcmtlZCBhbGwgdGhlIGZ1bmN0aW9ucyB0aGF0IG92
ZXJyaWRlIGZpbmFsIGFzIHdlbGwsIHRvIGNoZWNrIHRoYXQKKyAgICAgICAgdGhleSBjb3JyZWN0
bHkgb3ZlcnJpZGUgdGhlIHZpcnR1YWwgZnVuY3Rpb25zIGluIHRoZSBiYXNlIGNsYXNzLgorICAg
ICAgICBBZGRlZCBwcml2YXRlIGlzTGl2ZVJhbmdlIGZ1bmN0aW9uIG92ZXJyaWRlIHRoYXQgcmV0
dXJucyB0cnVlLgorICAgICAgICBBZGRlZCBTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOL0VO
RCBzbyB3ZSBjYW4gZG8gaXM8UmFuZ2U+LgorCisgICAgICAgICogZG9tL1JhbmdlLmlkbDogUmVt
b3ZlZCBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLiBBZGRlZAorICAgICAgICBKU0dlbmVyYXRl
VG9OYXRpdmVPYmplY3QuIEluaGVyaXQgZnJvbSBBYnN0cmFjdFJhbmdlLgorICAgICAgICBSZW1v
dmVkIHRoZSA1IGF0dHJpYnV0ZSBnZXR0ZXJzIHRoYXQgYXJlIG5vdyBpbmhlcml0ZWQgZnJvbSBB
YnN0cmFjdFJhbmdlLgorCisgICAgICAgICogZG9tL1N0YXRpY1JhbmdlLmg6IENoYW5nZWQgdG8g
ZGVyaXZlIGZyb20gQWJzdHJhY3RSYW5nZSBpbnN0ZWFkIG9mCisgICAgICAgIGZyb20gUmVmQ291
bnRlZC4gQWxzbyBtYXJrZWQgdGhpcyBmaW5hbCBzaW5jZSBpdCdzIG5vdyBwb2x5bW9ycGhpYy4K
KyAgICAgICAgQWRkZWQgZnVuY3Rpb25zIHRvIG92ZXJyaWRlIHRoZSBvbmVzIGZyb20gU3RhdGlj
UmFuZ2UsIGNhbGxpbmcgdGhyb3VnaAorICAgICAgICB0byB0aGUgb25lcyBmcm9tIFNpbXBsZVJh
bmdlIChJIHRob3VnaHQgdGhlcmUgd2FzIGEgd2F5IHRvIGRvIHRoaXMKKyAgICAgICAgd2l0aCB1
c2luZywgYnV0IEkgY291bGRuJ3QgZmlndXJlIHRoYXQgb3V0KS4gQWRkZWQgcHJpdmF0ZSBpc0xp
dmVSYW5nZQorICAgICAgICBmdW5jdGlvbiBvdmVycmlkZSB0aGF0IHJldHVybnMgZmFsc2UuIEFk
ZGVkIFNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4vRU5ECisgICAgICAgIHNvIHdlIGNhbiBk
byBpczxTdGF0aWNSYW5nZT4uCisKKyAgICAgICAgKiBkb20vU3RhdGljUmFuZ2UuaWRsOiBSZW1v
dmVkIEVuYWJsZWRCeVNldHRpbmc9SW5wdXRFdmVudHMgc2luY2UKKyAgICAgICAgdGhpcyBzaG91
bGQgbm93IGFsd2F5cyBiZSBpbmNsdWRlZC4gSSB0aGluayB3ZSBzaG91bGQgcHJvYmFibHkgcmVt
b3ZlIHRoZQorICAgICAgICBJbnB1dEV2ZW50cyBzZXR0aW5nIG5vdyBlbnRpcmVseS4gUmVtb3Zl
ZCBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLgorICAgICAgICBBZGRlZCBKU0dlbmVyYXRlVG9O
YXRpdmVPYmplY3QuIEluaGVyaXQgZnJvbSBBYnN0cmFjdFJhbmdlLgorICAgICAgICBSZW1vdmVk
IGFsbCA1IGF0dHJpYnV0ZSBnZXR0ZXJzLCB3aGljaCBhcmUgbm93IGluaGVyaXRlZCBmcm9tIEFi
c3RyYWN0UmFuZ2UuCisKIDIwMjAtMTAtMTYgIEthcmwgUmFja2xlciAgPHJhY2tsZXJAYXBwbGUu
Y29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyByMjY4MTc4LgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxp
c3RzLnR4dAppbmRleCAxMDI4YTM5ZWQxMDAxNWEyOWM5OGRhNDAzMjY2YTRkNjg5YzYzZTkxLi42
ZjEzNjM3MWQ4OWFiYmQ5NmRmYWRiZmYyMTNiN2Y3Nzc4ZDE2MjNhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3Rz
LnR4dApAQCAtNzUzLDYgKzc1Myw3IEBAIHNldChXZWJDb3JlX05PTl9TVkdfSURMX0ZJTEVTCiAg
ICAgZG9tL0Fib3J0QWxnb3JpdGhtLmlkbAogICAgIGRvbS9BYm9ydENvbnRyb2xsZXIuaWRsCiAg
ICAgZG9tL0Fib3J0U2lnbmFsLmlkbAorICAgIGRvbS9BYnN0cmFjdFJhbmdlLmlkbAogICAgIGRv
bS9BbmltYXRpb25FdmVudC5pZGwKICAgICBkb20vQXR0ci5pZGwKICAgICBkb20vQmVmb3JlTG9h
ZEV2ZW50LmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5w
dXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmls
ZWxpc3QKaW5kZXggODZhMDc3NDFmMzg0NDc5MjBhYTBlOTI3NjJiZDRlMGU2ZTYyZGQ3MC4uN2E0
NTQxZDE3ZmViM2UwODI4MWVhYWZjMDQzOWZhMGIyYTc2YzI5MCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC02NzUsNiArNjc1LDcgQEAg
JChQUk9KRUNUX0RJUikvY3NzL3R5cGVkb20vVHlwZWRPTUNTU1VucGFyc2VkVmFsdWUuaWRsCiAk
KFBST0pFQ1RfRElSKS9kb20vQWJvcnRBbGdvcml0aG0uaWRsCiAkKFBST0pFQ1RfRElSKS9kb20v
QWJvcnRDb250cm9sbGVyLmlkbAogJChQUk9KRUNUX0RJUikvZG9tL0Fib3J0U2lnbmFsLmlkbAor
JChQUk9KRUNUX0RJUikvZG9tL0Fic3RyYWN0UmFuZ2UuaWRsCiAkKFBST0pFQ1RfRElSKS9kb20v
QW5pbWF0aW9uRXZlbnQuaWRsCiAkKFBST0pFQ1RfRElSKS9kb20vQXR0ci5pZGwKICQoUFJPSkVD
VF9ESVIpL2RvbS9CZWZvcmVMb2FkRXZlbnQuaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CmluZGV4IDdmOTM3MWE0MGYxODEwZWE1ODBiYTRh
OGU3OTc2OWQwZjY4N2RjOWIuLmU5NDcyOTA2MjIwODkxYWNkNjNiMDE5YjBmOTNhNjFhYTYwYjM0
MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2Zp
bGVsaXN0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVs
aXN0CkBAIC00Nyw2ICs0Nyw4IEBAICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTQWJvcnRDb250cm9sbGVyLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNBYm9ydENvbnRyb2xsZXIuaAogJChCVUlMVF9QUk9EVUNU
U19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNBYm9ydFNpZ25hbC5jcHAKICQoQlVJTFRf
UFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTQWJvcnRTaWduYWwuaAorJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNBYnN0cmFjdFJhbmdl
LmNwcAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNBYnN0
cmFjdFJhbmdlLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTQWJzdHJhY3RXb3JrZXIuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU0Fic3RyYWN0V29ya2VyLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJp
dmVkU291cmNlcy9XZWJDb3JlL0pTQWNjZXNzaWJpbGl0eVJvbGUuY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMubWFrZQppbmRleCA2OWYwZWJiZjk5YjZjMGZkZjMzZTg3NmQwOTE2ZTA3NTkyMTVi
MTJhLi4yNjk0ZjA2NTFiM2VlNjcyZTNhMzBkZGFiYTgyMzBjNTdlNjliMTM2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTYzNiw2ICs2MzYsNyBAQCBKU19CSU5ESU5HX0lETFMg
PSBcCiAgICAgJChXZWJDb3JlKS9kb20vQWJvcnRBbGdvcml0aG0uaWRsIFwKICAgICAkKFdlYkNv
cmUpL2RvbS9BYm9ydENvbnRyb2xsZXIuaWRsIFwKICAgICAkKFdlYkNvcmUpL2RvbS9BYm9ydFNp
Z25hbC5pZGwgXAorICAgICQoV2ViQ29yZSkvZG9tL0Fic3RyYWN0UmFuZ2UuaWRsIFwKICAgICAk
KFdlYkNvcmUpL2RvbS9BbmltYXRpb25FdmVudC5pZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0F0
dHIuaWRsIFwKICAgICAkKFdlYkNvcmUpL2RvbS9CZWZvcmVMb2FkRXZlbnQuaWRsIFwKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9IZWFk
ZXJzLmNtYWtlCmluZGV4IDAzZDUzODlhNGM3MmFkZTkxNWFmYWRjYTU2Y2ZkY2JlYWRhYTI3NDIu
LmQ0NjIzYTI3NWM4ODc3M2U3MTY0ZjI1OTVlMGE2MTViM2I3ZjE3NTEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5j
bWFrZQpAQCAtMzcxLDYgKzM3MSw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hF
QURFUlMKICAgICBkaXNwbGF5L2Nzcy9EaXNwbGF5UmVwbGFjZWRCb3guaAogICAgIGRpc3BsYXkv
Y3NzL0Rpc3BsYXlTdHlsZS5oCiAKKyAgICBkb20vQWJzdHJhY3RSYW5nZS5oCiAgICAgZG9tL0Fj
dGl2ZURPTUNhbGxiYWNrLmgKICAgICBkb20vQWN0aXZlRE9NT2JqZWN0LmgKICAgICBkb20vQXR0
ci5oCkBAIC0xNTg5LDYgKzE1OTAsNyBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09SS19I
RUFERVJTCiAgICAgJHtXZWJDb3JlX0RFUklWRURfU09VUkNFU19ESVJ9L0hUTUxFbGVtZW50VHlw
ZUhlbHBlcnMuaAogICAgICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9IVE1MTmFtZXMu
aAogICAgICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9IVFRQSGVhZGVyTmFtZXMuaAor
ICAgICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9KU0Fic3RyYWN0UmFuZ2UuaAogICAg
ICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9KU0Jsb2IuaAogICAgICR7V2ViQ29yZV9E
RVJJVkVEX1NPVVJDRVNfRElSfS9KU0NTU1J1bGUuaAogICAgICR7V2ViQ29yZV9ERVJJVkVEX1NP
VVJDRVNfRElSfS9KU0NTU1J1bGVMaXN0LmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1Nv
dXJjZXMudHh0IGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggMDQ5NjgyMWUxM2Vm
ZTI1N2YxM2I4NjNiMGExZjVlZWRiMDEyZDM2Ni4uOTFjNTg3OTg1ZTQwOWNlYjIxMzFiODhhMWNj
NGJmN2NhN2Y1YzNlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKKysr
IGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKQEAgLTQ2Nyw2ICs0NjcsNyBAQCBiaW5kaW5n
cy9qcy9HQ0NvbnRyb2xsZXIuY3BwCiBiaW5kaW5ncy9qcy9JREJCaW5kaW5nVXRpbGl0aWVzLmNw
cAogYmluZGluZ3MvanMvSlNBYm9ydENvbnRyb2xsZXJDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9K
U0Fib3J0U2lnbmFsQ3VzdG9tLmNwcAorYmluZGluZ3MvanMvSlNBYnN0cmFjdFJhbmdlQ3VzdG9t
LmNwcAogYmluZGluZ3MvanMvSlNBbmltYXRpb25FZmZlY3RDdXN0b20uY3BwCiBiaW5kaW5ncy9q
cy9KU0FuaW1hdGlvblRpbWVsaW5lQ3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNBdHRyQ3VzdG9t
LmNwcApAQCAtODE2LDYgKzgxNyw3IEBAIGRpc3BsYXkvRGlzcGxheVRyZWVCdWlsZGVyLmNwcAog
ZGlzcGxheS9EaXNwbGF5Vmlldy5jcHAKIGRvbS9BYm9ydENvbnRyb2xsZXIuY3BwCiBkb20vQWJv
cnRTaWduYWwuY3BwCitkb20vQWJzdHJhY3RSYW5nZS5jcHAKIGRvbS9BY3RpdmVET01DYWxsYmFj
ay5jcHAKIGRvbS9BY3RpdmVET01PYmplY3QuY3BwCiBkb20vQWxsRGVzY2VuZGFudHNDb2xsZWN0
aW9uLmNwcApAQCAtMjY1NSw2ICsyNjU3LDcgQEAgSlNBTkdMRUluc3RhbmNlZEFycmF5cy5jcHAK
IEpTQWJvcnRBbGdvcml0aG0uY3BwCiBKU0Fib3J0Q29udHJvbGxlci5jcHAKIEpTQWJvcnRTaWdu
YWwuY3BwCitKU0Fic3RyYWN0UmFuZ2UuY3BwCiBKU0Fic3RyYWN0V29ya2VyLmNwcAogSlNBZGRy
ZXNzRXJyb3JzLmNwcAogSlNBZXNDYmNDZmJQYXJhbXMuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZDczOGI4MjYzZjBkN2Y4
ZWVmZDE0MzdjZWJiNTBkZDk3NTg0MmZmMC4uODQ4MjY5NzUxYTMxMDlkNGZmZjRjYzY0NGU1ZDdh
ZmM4ZWE4YjdkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagpAQCAtMjczMyw2ICsyNzMzLDcgQEAKIAkJOTM0RjcxM0MwRDVBNkYxOTAw
MDE4RDY5IC8qIFJlc291cmNlRXJyb3JCYXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5MzRGNzEzQjBENUE2RjE5MDAwMThENjkgLyogUmVzb3VyY2VF
cnJvckJhc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwogCQk5MzUwMEYzMjEzRkRFM0JFMDA5OUVDMjQgLyogTlNTY3JvbGxlckltcERldGFpbHMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNTAwRjMxMTNG
REUzQkUwMDk5RUMyNCAvKiBOU1Njcm9sbGVySW1wRGV0YWlscy5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNTIwN0JFMDlCRDQxMEEwMEYyMDM4
RCAvKiBMb2NhbGl6ZWRTdHJpbmdzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5MzUyMDdCRDA5QkQ0MTBBMDBGMjAzOEQgLyogTG9jYWxpemVkU3RyaW5n
cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkz
NTVFRjUxMjUzQTQyNzkwMDZGRjRBNCAvKiBKU0Fic3RyYWN0UmFuZ2UuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNTVFRjRGMjUzQTQyNzgwMDZGRjRB
NCAvKiBKU0Fic3RyYWN0UmFuZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQk5MzVDNDc2MzA5QUM0Q0U2MDBBNkFBQjQgLyogTW91c2VFdmVudFdp
dGhIaXRUZXN0UmVzdWx0cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTM1QzQ3NjIwOUFDNENFNjAwQTZBQUI0IC8qIE1vdXNlRXZlbnRXaXRoSGl0VGVz
dFJlc3VsdHMuaCAqLzsgfTsKIAkJOTM1QzQ3NjgwOUFDNEQ0MzAwQTZBQUI0IC8qIFBsYXRmb3Jt
S2V5Ym9hcmRFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gOTM1QzQ3NjYwOUFDNEQ0MzAwQTZBQUI0IC8qIFBsYXRmb3JtS2V5Ym9hcmRFdmVudC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNUM0
NzY5MDlBQzRENDMwMEE2QUFCNCAvKiBQbGF0Zm9ybU1vdXNlRXZlbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUM0NzY3MDlBQzRENDMwMEE2QUFC
NCAvKiBQbGF0Zm9ybU1vdXNlRXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwpAQCAtMjc3OSw2ICsyNzgwLDcgQEAKIAkJOTNDNEE0MTUxNjI5REY1
QTAwQzNFQjZFIC8qIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQzRBNDEzMTYyOURGNUEw
MEMzRUI2RSAvKiBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTNDNEY2RUIxMTA4RjlB
NTAwOTlEMERCIC8qIEFjY2Vzc2liaWxpdHlTY3JvbGxiYXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQzRGNkU5MTEwOEY5QTUwMDk5RDBEQiAvKiBB
Y2Nlc3NpYmlsaXR5U2Nyb2xsYmFyLmggKi87IH07CiAJCTkzQ0NGMDI3MEFGNkM1MjkwMDAxOEU4
OSAvKiBOYXZpZ2F0aW9uQWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5M0NDRjAyNjBBRjZDNTI5MDAwMThFODkgLyogTmF2aWdhdGlvbkFjdGlv
bi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkz
RDA1MDMyMjUzQTE0OUEwMDJBMzA3MiAvKiBBYnN0cmFjdFJhbmdlLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0QwNTAyRTI1M0ExNDhBMDAyQTMwNzIg
LyogQWJzdHJhY3RSYW5nZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCTkzRDE5NjMxMUQ2Q0FCNzYwMEZDN0U0NyAvKiBFeGNlcHRpb25Pci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNEMTk2MzAxRDZD
QUI3NjAwRkM3RTQ3IC8qIEV4Y2VwdGlvbk9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTNEMTk2MzMxRDZDQUI4MjAwRkM3RTQ3IC8qIEV4Y2Vw
dGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNE
MTk2MzIxRDZDQUI4MjAwRkM3RTQ3IC8qIEV4Y2VwdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzRDQzNzlGMUQ1N0IxNTMwMEFCODVFQSAv
KiBKU0V4ZWNTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gOEY5MzREODMxMTg5RjFFRTAwNTA4RDVEIC8qIEpTRXhlY1N0YXRlLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTc0NDgsNyArNzQ1MCw2
IEBACiAJCTNGQkM0QUYxMTg5ODgxNTYwMDQ2RUUzOCAvKiBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZh
Y2VBVktpdC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFZpZGVv
RnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQkzRkJDNEFGMjE4OTg4MTU2MDA0NkVFMzggLyogVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZL
aXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmlkZW9GdWxsc2NyZWVuSW50
ZXJmYWNlQVZLaXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEwMjRGQzgyM0NG
MjU0RjAwRkRGOThFIC8qIFNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBTYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQk0MTA2MjZBNzIyODBBMjJBMDA2RDFCNTkgLyogSlNBdWRpb05vZGVDdXN0b20u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBdWRpb05vZGVDdXN0
b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTA3OTA4QTFGQzNFNEYyMDA2
MUIyN0EgLyogQ2xpZW50T3JpZ2luLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IENsaWVudE9yaWdpbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTA4N0YwMTI0
OEU1OUM4MDA2ODBFOTEgLyogQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXJVbml0LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEF1ZGlvTWVkaWFTdHJlYW1UcmFj
a1JlbmRlcmVyVW5pdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMDg3RjAz
MjQ4RTU5QzkwMDY4MEU5MSAvKiBBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlclVuaXQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVu
ZGVyZXJVbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMTI1MSw2ICsxMTI1
Miw5IEBACiAJCTkzNTAwRjMxMTNGREUzQkUwMDk5RUMyNCAvKiBOU1Njcm9sbGVySW1wRGV0YWls
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOU1Njcm9sbGVySW1wRGV0YWls
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzUyMDdCRDA5QkQ0MTBBMDBGMjAz
OEQgLyogTG9jYWxpemVkU3RyaW5ncy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBMb2NhbGl6ZWRTdHJpbmdzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNTM2
NzZBMDlBRUQ4OEIwMEQzNUNENiAvKiBTY3JvbGxWaWV3TWFjLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gU2Nyb2xsVmlld01hYy5tbTsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTM1NUVGNEYyNTNBNDI3ODAwNkZGNEE0IC8qIEpTQWJzdHJhY3RSYW5n
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0Fic3RyYWN0UmFuZ2UuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM1NUVGNTAyNTNBNDI3OTAwNkZGNEE0IC8q
IEpTQWJzdHJhY3RSYW5nZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU0Fic3RyYWN0UmFuZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzU1
RUY1MzI1M0E0RDVBMDA2RkY0QTQgLyogSlNBYnN0cmFjdFJhbmdlQ3VzdG9tLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTQWJzdHJhY3RSYW5nZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTkzNUM0NzYyMDlBQzRDRTYwMEE2QUFCNCAvKiBNb3VzZUV2ZW50V2l0aEhp
dFRlc3RSZXN1bHRzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1vdXNlRXZl
bnRXaXRoSGl0VGVzdFJlc3VsdHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM1
QzQ3NjYwOUFDNEQ0MzAwQTZBQUI0IC8qIFBsYXRmb3JtS2V5Ym9hcmRFdmVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0Zm9ybUtleWJvYXJkRXZlbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM1QzQ3NjcwOUFDNEQ0MzAwQTZBQUI0IC8qIFBsYXRm
b3JtTW91c2VFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0Zm9y
bU1vdXNlRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTExMzM4LDYgKzEx
MzQyLDkgQEAKIAkJOTNDQTRDQTIwOURGOTNGQTAwREY4Njc3IC8qIHN2Zy5jc3MgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gc3ZnLmNzczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTND
Q0YwMjYwQUY2QzUyOTAwMDE4RTg5IC8qIE5hdmlnYXRpb25BY3Rpb24uaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2aWdhdGlvbkFjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk5M0NDRjA1RjBBRjZDQTc2MDAwMThFODkgLyogTmF2aWdhdGlvbkFjdGlv
bi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOYXZpZ2F0aW9uQWN0
aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNEMDUwMkUyNTNBMTQ4QTAw
MkEzMDcyIC8qIEFic3RyYWN0UmFuZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWJzdHJhY3RSYW5nZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0QwNTAzMDI1M0ExNDhDMDAyQTMwNzIg
LyogQWJzdHJhY3RSYW5nZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQWJzdHJhY3RSYW5nZS5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTkzRDA1MDMxMjUzQTE0OEMwMDJBMzA3MiAvKiBBYnN0cmFjdFJh
bmdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFic3RyYWN0UmFuZ2UuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk5M0QxOTYzMDFENkNBQjc2MDBGQzdFNDcgLyogRXhjZXB0aW9u
T3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXhjZXB0aW9uT3IuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTNEMTk2MzIxRDZDQUI4MjAwRkM3RTQ3IC8qIEV4
Y2VwdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFeGNlcHRpb24uaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTNEOUQ1M0IwREEyN0UxODAwNzcyMTZDIC8q
IFJhbmdlQm91bmRhcnlQb2ludC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBS
YW5nZUJvdW5kYXJ5UG9pbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIyMjMy
LDEwICsyMjIzOSwxMCBAQAogCQkJY2hpbGRyZW4gPSAoCiAJCQkJNDEwOTM4MjgyMzQ3Nzk5QTAw
OTQyOEJBIC8qIEpTQWJvcnRDb250cm9sbGVyQ3VzdG9tLmNwcCAqLywKIAkJCQk0MTA5MzgyQzIz
NDc4NTBFMDA5NDI4QkEgLyogSlNBYm9ydFNpZ25hbEN1c3RvbS5jcHAgKi8sCisJCQkJOTM1NUVG
NTMyNTNBNEQ1QTAwNkZGNEE0IC8qIEpTQWJzdHJhY3RSYW5nZUN1c3RvbS5jcHAgKi8sCiAJCQkJ
NzFFRkNFREUyMDJCMzlDNzAwRDdDNDExIC8qIEpTQW5pbWF0aW9uRWZmZWN0Q3VzdG9tLmNwcCAq
LywKIAkJCQk3MTAyNUVENTFGOTlGMTQ3MDA0QTI1MEMgLyogSlNBbmltYXRpb25UaW1lbGluZUN1
c3RvbS5jcHAgKi8sCiAJCQkJQkMyRUQ2QkIwQzZCRDJGMDAwOTIwQkZGIC8qIEpTQXR0ckN1c3Rv
bS5jcHAgKi8sCi0JCQkJNDEwNjI2QTcyMjgwQTIyQTAwNkQxQjU5IC8qIEpTQXVkaW9Ob2RlQ3Vz
dG9tLmNwcCAqLywKIAkJCQlCRTZERjcwRTE3MUNBMkRBMDBERDUyQjggLyogSlNBdWRpb1RyYWNr
Q3VzdG9tLmNwcCAqLywKIAkJCQlCRTZERjcxMDE3MUNBMkRBMDBERDUyQjggLyogSlNBdWRpb1Ry
YWNrTGlzdEN1c3RvbS5jcHAgKi8sCiAJCQkJODNGMzdBNjcyNTM2QjIxQjAwRkY1RjNCIC8qIEpT
QXVkaW9Xb3JrbGV0UHJvY2Vzc29yQ3VzdG9tLmNwcCAqLywKQEAgLTI1MTYwLDggKzI1MTY3LDYg
QEAKIAkJCQlBNTc4RjQzQTFERTAxM0ZCMDAzREZDNkEgLyogSlNQcm9taXNlUmVqZWN0aW9uRXZl
bnQuaCAqLywKIAkJCQlDRUQwNkFDRTFDNzc3NTQ4MDBGREZBRjEgLyogSlNTZWN1cml0eVBvbGlj
eVZpb2xhdGlvbkV2ZW50LmNwcCAqLywKIAkJCQlDRUQwNkFDRjFDNzc3NTQ4MDBGREZBRjEgLyog
SlNTZWN1cml0eVBvbGljeVZpb2xhdGlvbkV2ZW50LmggKi8sCi0JCQkJQTg2NjI5Q0UwOURBMkI0
NzAwOTYzM0E3IC8qIEpTU3RhdGljUmFuZ2UuY3BwICovLAotCQkJCUE4NjYyOUNEMDlEQTJCNDcw
MDk2MzNBNyAvKiBKU1N0YXRpY1JhbmdlLmggKi8sCiAJCQkJOTMzQTE0QjYwQjdEMUQ1MjAwQTUz
RkZEIC8qIEpTVGV4dEV2ZW50LmNwcCAqLywKIAkJCQk5MzNBMTRCNzBCN0QxRDUyMDBBNTNGRkQg
LyogSlNUZXh0RXZlbnQuaCAqLywKIAkJCQkwRkRBN0MxMDE4ODMyMkVCMDBDOTU0QjUgLyogSlNU
b3VjaC5jcHAgKi8sCkBAIC0yNjc4OSw4ICsyNjc5NCwxMiBAQAogCQlCQzk4NTQ0NjBDRDNEQTVG
MDAwNjlCQzEgLyogUmFuZ2VzICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJl
biA9ICgKKwkJCQk5MzU1RUY1MDI1M0E0Mjc5MDA2RkY0QTQgLyogSlNBYnN0cmFjdFJhbmdlLmNw
cCAqLywKKwkJCQk5MzU1RUY0RjI1M0E0Mjc4MDA2RkY0QTQgLyogSlNBYnN0cmFjdFJhbmdlLmgg
Ki8sCiAJCQkJNjVERjMxRUQwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTUmFuZ2UuY3BwICovLAogCQkJ
CTY1REYzMUVFMDlEMUNDNjAwMDBCRTMyNSAvKiBKU1JhbmdlLmggKi8sCisJCQkJQTg2NjI5Q0Uw
OURBMkI0NzAwOTYzM0E3IC8qIEpTU3RhdGljUmFuZ2UuY3BwICovLAorCQkJCUE4NjYyOUNEMDlE
QTJCNDcwMDk2MzNBNyAvKiBKU1N0YXRpY1JhbmdlLmggKi8sCiAJCQkpOwogCQkJbmFtZSA9IFJh
bmdlczsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC0yOTMxMSw2ICsyOTMyMCw5IEBA
CiAJCQkJN0NEMEUyQkQxRjgwQTU2RTAwMTZBNENFIC8qIEFib3J0U2lnbmFsLmNwcCAqLywKIAkJ
CQk3Q0QwRTJCQzFGODBBNTZFMDAxNkE0Q0UgLyogQWJvcnRTaWduYWwuaCAqLywKIAkJCQk3Q0Qw
RTJCRTFGODBBNTZFMDAxNkE0Q0UgLyogQWJvcnRTaWduYWwuaWRsICovLAorCQkJCTkzRDA1MDMx
MjUzQTE0OEMwMDJBMzA3MiAvKiBBYnN0cmFjdFJhbmdlLmNwcCAqLywKKwkJCQk5M0QwNTAyRTI1
M0ExNDhBMDAyQTMwNzIgLyogQWJzdHJhY3RSYW5nZS5oICovLAorCQkJCTkzRDA1MDMwMjUzQTE0
OEMwMDJBMzA3MiAvKiBBYnN0cmFjdFJhbmdlLmlkbCAqLywKIAkJCQk3QzUyMjI5NzFFMURBRTE2
MDAyQ0I4RjcgLyogQWN0aXZlRE9NQ2FsbGJhY2suY3BwICovLAogCQkJCTdDNTIyMjk4MUUxREFF
MTYwMDJDQjhGNyAvKiBBY3RpdmVET01DYWxsYmFjay5oICovLAogCQkJCUUxQzRERTZEMEVBNzVD
NjUwMDIzQ0NENiAvKiBBY3RpdmVET01PYmplY3QuY3BwICovLApAQCAtMzA0NDEsNiArMzA0NTMs
NyBAQAogCQkJCTQ2Qjk1MTk1MjA3RDYzMzQwMEE3RDJERCAvKiBBYnN0cmFjdERPTVdpbmRvdy5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJNDZCOTUxOTYyMDdENjMzQTAwQTdEMkREIC8qIEFic3RyYWN0
RnJhbWUuaCBpbiBIZWFkZXJzICovLAogCQkJCUY0ODIyMzEzMUUzODZFMjQwMDY2RkM3OSAvKiBB
YnN0cmFjdFBhc3RlYm9hcmQuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzRDA1MDMyMjUzQTE0OUEw
MDJBMzA3MiAvKiBBYnN0cmFjdFJhbmdlLmggaW4gSGVhZGVycyAqLywKIAkJCQk0MUUxQjFEMTBG
RjU5ODY5MDA1NzZCM0IgLyogQWJzdHJhY3RXb3JrZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTI5
QTgxMjJFMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5QVJJQUdyaWRDZWxsLmggaW4g
SGVhZGVycyAqLywKIAkJCQkyOUE4MTIzMzBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0
eUFSSUFHcmlkUm93LmggaW4gSGVhZGVycyAqLywKQEAgLTMyMDI5LDYgKzMyMDQyLDcgQEAKIAkJ
CQk3MTI0N0UzODFGRUE1Rjg2MDA4QzA4Q0UgLyogSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9u
LmggaW4gSGVhZGVycyAqLywKIAkJCQk3QzMwRDk4NDFGODE1QUVDMDAyNjgzNTYgLyogSlNBYm9y
dENvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTdDMzBEOTg2MUY4MTVBRUMwMDI2ODM1
NiAvKiBKU0Fib3J0U2lnbmFsLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzU1RUY1MTI1M0E0Mjc5
MDA2RkY0QTQgLyogSlNBYnN0cmFjdFJhbmdlLmggaW4gSGVhZGVycyAqLywKIAkJCQk0MThGODgw
NTBGRjk1N0FGMDA4MEYwNDUgLyogSlNBYnN0cmFjdFdvcmtlci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQTE2NzdFMTMyMTNFMDNDNjAwQTA4QzM0IC8qIEpTQWRkcmVzc0Vycm9ycy5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNTcwNDQwNUExRTUzOTM2MjAwMzU2NjAxIC8qIEpTQWVzQ2JjQ2ZiUGFyYW1z
LmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTQWJzdHJhY3RSYW5nZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0Fic3RyYWN0UmFuZ2VDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU3Mzg2ZDEzYTIwN2E5NTNiZDI5
Zjg5NzUyMTczYTIwZTUxYjZmOTMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0Fic3RyYWN0UmFuZ2VDdXN0b20uY3BwCkBAIC0wLDAgKzEsNDcgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSlNBYnN0cmFjdFJhbmdl
LmgiCisKKyNpbmNsdWRlICJKU0RPTVdyYXBwZXJDYWNoZS5oIgorI2luY2x1ZGUgIkpTUmFuZ2Uu
aCIKKyNpbmNsdWRlICJKU1N0YXRpY1JhbmdlLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwor
SlNDOjpKU1ZhbHVlIHRvSlMoSlNDOjpKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVj
dCwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQWJzdHJhY3RSYW5nZSYgcmFuZ2Up
Cit7CisgICAgcmV0dXJuIHdyYXAobGV4aWNhbEdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LCBy
YW5nZSk7Cit9CisKK0pTQzo6SlNWYWx1ZSB0b0pTTmV3bHlDcmVhdGVkKEpTQzo6SlNHbG9iYWxP
YmplY3QqLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBSZWY8QWJzdHJhY3RSYW5n
ZT4mJiByYW5nZSkKK3sKKyAgICBpZiAoaXM8U3RhdGljUmFuZ2U+KHJhbmdlLmdldCgpKSkKKyAg
ICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8U3RhdGljUmFuZ2U+KGdsb2JhbE9iamVjdCwgV1RG
TW92ZShyYW5nZSkpOworICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFJhbmdlPihnbG9iYWxPYmpl
Y3QsIFdURk1vdmUocmFuZ2UpKTsKK30KKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNFdmVudEN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0V2ZW50Q3VzdG9tLmNwcAppbmRleCA1YmViNGQ4Y2I1MDdjY2RhODY0Y2M1MWI0Njg5ZDI3
ZDIwNDcxOTczLi42NGYxYjUwYjI0ZmI4MzZjYjg3NzBmMjVhMDVmMGRhNTc4ZGNlM2M5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0V2ZW50Q3VzdG9tLmNwcApAQCAtMjksMjQg
KzI5LDEzIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSlNFdmVudC5oIgogCi0j
aW5jbHVkZSAiRGF0YVRyYW5zZmVyLmgiCi0jaW5jbHVkZSAiRXZlbnQuaCIKLSNpbmNsdWRlICJF
dmVudEhlYWRlcnMuaCIKLSNpbmNsdWRlICJFdmVudEludGVyZmFjZXMuaCIKLSNpbmNsdWRlICJK
U0RPTUJpbmRpbmcuaCIKLSNpbmNsdWRlICJKU0RhdGFUcmFuc2Zlci5oIgotI2luY2x1ZGUgPEph
dmFTY3JpcHRDb3JlL0pTTG9jay5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L0F0b21TdHJpbmcuaD4K
LQorI2luY2x1ZGUgIkpTRE9NV3JhcHBlckNhY2hlLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
LXVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKLUpTVmFsdWUgdG9KUyhKU0dsb2JhbE9iamVjdCogbGV4
aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgRXZlbnQm
IGV2ZW50KQorSlNWYWx1ZSB0b0pTKEpTQzo6SlNHbG9iYWxPYmplY3QqIGxleGljYWxHbG9iYWxP
YmplY3QsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEV2ZW50JiBldmVudCkKIHsK
ICAgICByZXR1cm4gd3JhcChsZXhpY2FsR2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QsIGV2ZW50
KTsKIH0KIAotI3VuZGVmIFRSWV9UT19XUkFQX1dJVEhfSU5URVJGQUNFCi0KIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNv
cmVCdWlsdGluTmFtZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVCdWls
dGluTmFtZXMuaAppbmRleCA0YzA4MzE4YmY2YzRlZjcwYzI3YjNhMTgwMDY3MjA1Nzc2YWEwOWM4
Li45NzAyY2M1OTcyZTk5NTc5NmIxNzg0YjY5YjAwYjYyNzE3MWY0NDM3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCkBAIC00MSw2ICs0
MSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogI2RlZmluZSBXRUJDT1JFX0NPTU1PTl9QUklW
QVRFX0lERU5USUZJRVJTX0VBQ0hfUFJPUEVSVFlfTkFNRShtYWNybykgXAogICAgIG1hY3JvKEFi
b3J0U2lnbmFsKSBcCisgICAgbWFjcm8oQWJzdHJhY3RSYW5nZSkgXAogICAgIG1hY3JvKEFuaW1h
dGlvbikgXAogICAgIG1hY3JvKEFuaW1hdGlvbkVmZmVjdCkgXAogICAgIG1hY3JvKEFuaW1hdGlv
blBsYXliYWNrRXZlbnQpIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFj
dFJhbmdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJhbmdlLmNwcApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5mZGIyMDk3ZGVmOGE0MzUxZDQwM2Q3NGI0M2U2ZjYyZjNmODU5NmM3Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0Fic3RyYWN0UmFuZ2UuY3BwCkBAIC0wLDAgKzEs
NTUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisg
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiQWJzdHJh
Y3RSYW5nZS5oIgorCisjaW5jbHVkZSAiU2ltcGxlUmFuZ2UuaCIKKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCitTaW1wbGVSYW5nZSBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgQWJzdHJhY3RSYW5nZSYg
cmFuZ2UpCit7CisgICAgcmV0dXJuIHsgeyByYW5nZS5zdGFydENvbnRhaW5lcigpLCByYW5nZS5z
dGFydE9mZnNldCgpIH0sIHsgcmFuZ2UuZW5kQ29udGFpbmVyKCksIHJhbmdlLmVuZE9mZnNldCgp
IH0gfTsKK30KKworU2ltcGxlUmFuZ2UgbWFrZVNpbXBsZVJhbmdlKGNvbnN0IFJlZjxBYnN0cmFj
dFJhbmdlPiYgcmFuZ2UpCit7CisgICAgcmV0dXJuIG1ha2VTaW1wbGVSYW5nZShyYW5nZS5nZXQo
KSk7Cit9CisKK09wdGlvbmFsPFNpbXBsZVJhbmdlPiBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgQWJz
dHJhY3RSYW5nZSogcmFuZ2UpCit7CisgICAgaWYgKCFyYW5nZSkKKyAgICAgICAgcmV0dXJuIFdU
Rjo6bnVsbG9wdDsKKyAgICByZXR1cm4gbWFrZVNpbXBsZVJhbmdlKCpyYW5nZSk7Cit9CisKK09w
dGlvbmFsPFNpbXBsZVJhbmdlPiBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgUmVmUHRyPEFic3RyYWN0
UmFuZ2U+JiByYW5nZSkKK3sKKyAgICByZXR1cm4gbWFrZVNpbXBsZVJhbmdlKHJhbmdlLmdldCgp
KTsKK30KKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0Fic3RyYWN0UmFuZ2Uu
aCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJhbmdlLmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTQxOTRl
ZWZhOGNlMjNlOTEwMjM0M2I1YzRhNDExZTQ5OWNmMTA5ZAotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9BYnN0cmFjdFJhbmdlLmgKQEAgLTAsMCArMSw1NSBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL09wdGlvbmFsLmg+CisjaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBOb2Rl
OworCitzdHJ1Y3QgU2ltcGxlUmFuZ2U7CisKK2NsYXNzIEFic3RyYWN0UmFuZ2UgOiBwdWJsaWMg
UmVmQ291bnRlZDxBYnN0cmFjdFJhbmdlPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB+QWJzdHJh
Y3RSYW5nZSgpID0gZGVmYXVsdDsKKworICAgIHZpcnR1YWwgTm9kZSYgc3RhcnRDb250YWluZXIo
KSBjb25zdCA9IDA7CisgICAgdmlydHVhbCB1bnNpZ25lZCBzdGFydE9mZnNldCgpIGNvbnN0ID0g
MDsKKyAgICB2aXJ0dWFsIE5vZGUmIGVuZENvbnRhaW5lcigpIGNvbnN0ID0gMDsKKyAgICB2aXJ0
dWFsIHVuc2lnbmVkIGVuZE9mZnNldCgpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgY29s
bGFwc2VkKCkgY29uc3QgPSAwOworCisgICAgdmlydHVhbCBib29sIGlzTGl2ZVJhbmdlKCkgY29u
c3QgPSAwOworfTsKKworU2ltcGxlUmFuZ2UgbWFrZVNpbXBsZVJhbmdlKGNvbnN0IEFic3RyYWN0
UmFuZ2UmKTsKK1NpbXBsZVJhbmdlIG1ha2VTaW1wbGVSYW5nZShjb25zdCBSZWY8QWJzdHJhY3RS
YW5nZT4mKTsKK09wdGlvbmFsPFNpbXBsZVJhbmdlPiBtYWtlU2ltcGxlUmFuZ2UoY29uc3QgQWJz
dHJhY3RSYW5nZSopOworT3B0aW9uYWw8U2ltcGxlUmFuZ2U+IG1ha2VTaW1wbGVSYW5nZShjb25z
dCBSZWZQdHI8QWJzdHJhY3RSYW5nZT4mKTsKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZG9tL0Fic3RyYWN0UmFuZ2UuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0Fic3RyYWN0UmFu
Z2UuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjI0ZTM4NzNhNjMzNTBkZTEyNzQzNzQwMjQ4YTBiMDY2Y2Y1MzE4
NTkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQWJzdHJhY3RSYW5nZS5p
ZGwKQEAgLTAsMCArMSwzOSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZQorICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyAqICAgIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZworICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzCisgKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiAiQVMgSVMi
IEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCisgKiBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksCisgKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCisgKiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKKyAq
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworWworICAgIEN1c3RvbVRvSlNPYmplY3Qs
CisgICAgRXhwb3NlZD1XaW5kb3csCitdIGludGVyZmFjZSBBYnN0cmFjdFJhbmdlIHsKKyAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgTm9kZSBzdGFydENvbnRhaW5lcjsKKyAgICByZWFkb25seSBhdHRy
aWJ1dGUgdW5zaWduZWQgbG9uZyBzdGFydE9mZnNldDsKKyAgICByZWFkb25seSBhdHRyaWJ1dGUg
Tm9kZSBlbmRDb250YWluZXI7CisgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcg
ZW5kT2Zmc2V0OworICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGNvbGxhcHNlZDsKK307
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuY3BwIGIvU291cmNlL1dlYkNv
cmUvZG9tL1JhbmdlLmNwcAppbmRleCAzZGYxN2E4NWNhNGRmNDNlOGMyMjc2YWNjYTYwY2FmMGY5
OTJmZThhLi40YTlmNDNmYmYxZjU1MzE1MWYwMTkxOGQ4MGMwNzY0MmIwNjU5NzUyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9SYW5nZS5jcHAKQEAgLTQ1LDYgKzQ1LDcgQEAKICNpbmNsdWRlICJWaXNpYmxlVW5pdHMuaCIK
ICNpbmNsdWRlICJtYXJrdXAuaCIKICNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHd0Zi9J
c29NYWxsb2NJbmxpbmVzLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWRMZWFrQ291bnRlci5o
PgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJp
bmdCdWlsZGVyLmg+CkBAIC02MSw2ICs2Miw4IEBAIHN0YXRpYyBFeGNlcHRpb25Pcjx2b2lkPiBw
cm9jZXNzTm9kZXMoUmFuZ2U6OkFjdGlvblR5cGUsIFZlY3RvcjxSZWY8Tm9kZT4+JiwgTm9kCiBz
dGF0aWMgRXhjZXB0aW9uT3I8UmVmUHRyPE5vZGU+PiBwcm9jZXNzQ29udGVudHNCZXR3ZWVuT2Zm
c2V0cyhSYW5nZTo6QWN0aW9uVHlwZSwgUmVmUHRyPERvY3VtZW50RnJhZ21lbnQ+LCBSZWZQdHI8
Tm9kZT4gY29udGFpbmVyLCB1bnNpZ25lZCBzdGFydE9mZnNldCwgdW5zaWduZWQgZW5kT2Zmc2V0
KTsKIHN0YXRpYyBFeGNlcHRpb25PcjxSZWZQdHI8Tm9kZT4+IHByb2Nlc3NBbmNlc3RvcnNBbmRU
aGVpclNpYmxpbmdzKFJhbmdlOjpBY3Rpb25UeXBlLCBOb2RlKiBjb250YWluZXIsIENvbnRlbnRz
UHJvY2Vzc0RpcmVjdGlvbiwgRXhjZXB0aW9uT3I8UmVmUHRyPE5vZGU+PiYmIHBhc3NlZENsb25l
ZENvbnRhaW5lciwgTm9kZSogY29tbW9uUm9vdCk7CiAKK1dURl9NQUtFX0lTT19BTExPQ0FURURf
SU1QTChSYW5nZSk7CisKIGlubGluZSBSYW5nZTo6UmFuZ2UoRG9jdW1lbnQmIG93bmVyRG9jdW1l
bnQpCiAgICAgOiBtX293bmVyRG9jdW1lbnQob3duZXJEb2N1bWVudCkKICAgICAsIG1fc3RhcnQo
b3duZXJEb2N1bWVudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5oIGIv
U291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmgKaW5kZXggNDg3YThiMWI4NDk0Y2RkYTA4MjBhYWQx
NzVhOGJmMTM4MTA4N2YyZC4uMmU5MDhiNDM5M2Q1NGRiNDNkNjA3NDRmYjliMDU3MzdhMjYxNTFi
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL1JhbmdlLmgKQEAgLTI0LDYgKzI0LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNp
bmNsdWRlICJBYnN0cmFjdFJhbmdlLmgiCiAjaW5jbHVkZSAiUmFuZ2VCb3VuZGFyeVBvaW50Lmgi
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTM3LDE2ICszOCwxNyBAQCBjbGFzcyBUZXh0Owog
CiBzdHJ1Y3QgU2ltcGxlUmFuZ2U7CiAKLWNsYXNzIFJhbmdlIDogcHVibGljIFJlZkNvdW50ZWQ8
UmFuZ2U+IHsKK2NsYXNzIFJhbmdlIGZpbmFsIDogcHVibGljIEFic3RyYWN0UmFuZ2UgeworICAg
IFdURl9NQUtFX0lTT19BTExPQ0FURUQoUmFuZ2UpOwogcHVibGljOgogICAgIFdFQkNPUkVfRVhQ
T1JUIHN0YXRpYyBSZWY8UmFuZ2U+IGNyZWF0ZShEb2N1bWVudCYpOwogICAgIFdFQkNPUkVfRVhQ
T1JUIH5SYW5nZSgpOwogCi0gICAgTm9kZSYgc3RhcnRDb250YWluZXIoKSBjb25zdCB7IHJldHVy
biBtX3N0YXJ0LmNvbnRhaW5lcigpOyB9Ci0gICAgdW5zaWduZWQgc3RhcnRPZmZzZXQoKSBjb25z
dCB7IHJldHVybiBtX3N0YXJ0Lm9mZnNldCgpOyB9Ci0gICAgTm9kZSYgZW5kQ29udGFpbmVyKCkg
Y29uc3QgeyByZXR1cm4gbV9lbmQuY29udGFpbmVyKCk7IH0KLSAgICB1bnNpZ25lZCBlbmRPZmZz
ZXQoKSBjb25zdCB7IHJldHVybiBtX2VuZC5vZmZzZXQoKTsgfQotICAgIGJvb2wgY29sbGFwc2Vk
KCkgY29uc3QgeyByZXR1cm4gbV9zdGFydCA9PSBtX2VuZDsgfQorICAgIE5vZGUmIHN0YXJ0Q29u
dGFpbmVyKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9zdGFydC5jb250YWluZXIoKTsgfQorICAg
IHVuc2lnbmVkIHN0YXJ0T2Zmc2V0KCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9zdGFydC5vZmZz
ZXQoKTsgfQorICAgIE5vZGUmIGVuZENvbnRhaW5lcigpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1f
ZW5kLmNvbnRhaW5lcigpOyB9CisgICAgdW5zaWduZWQgZW5kT2Zmc2V0KCkgY29uc3QgZmluYWwg
eyByZXR1cm4gbV9lbmQub2Zmc2V0KCk7IH0KKyAgICBib29sIGNvbGxhcHNlZCgpIGNvbnN0IGZp
bmFsIHsgcmV0dXJuIG1fc3RhcnQgPT0gbV9lbmQ7IH0KICAgICBOb2RlKiBjb21tb25BbmNlc3Rv
ckNvbnRhaW5lcigpIGNvbnN0IHsgcmV0dXJuIGNvbW1vbkluY2x1c2l2ZUFuY2VzdG9yKHN0YXJ0
Q29udGFpbmVyKCksIGVuZENvbnRhaW5lcigpKS5nZXQoKTsgfQogCiAgICAgV0VCQ09SRV9FWFBP
UlQgRXhjZXB0aW9uT3I8dm9pZD4gc2V0U3RhcnQoUmVmPE5vZGU+JiYsIHVuc2lnbmVkIG9mZnNl
dCk7CkBAIC0xMTgsNiArMTIwLDggQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBleHBsaWNpdCBS
YW5nZShEb2N1bWVudCYpOwogCisgICAgYm9vbCBpc0xpdmVSYW5nZSgpIGNvbnN0IGZpbmFsIHsg
cmV0dXJuIHRydWU7IH0KKwogICAgIHZvaWQgdXBkYXRlRG9jdW1lbnQoKTsKICAgICB2b2lkIHVw
ZGF0ZUFzc29jaWF0ZWRTZWxlY3Rpb24oKTsKICAgICBFeGNlcHRpb25PcjxSZWZQdHI8RG9jdW1l
bnRGcmFnbWVudD4+IHByb2Nlc3NDb250ZW50cyhBY3Rpb25UeXBlKTsKQEAgLTE0MiwzICsxNDYs
NyBAQCBXRUJDT1JFX0VYUE9SVCBSZWZQdHI8UmFuZ2U+IGNyZWF0ZUxpdmVSYW5nZShjb25zdCBP
cHRpb25hbDxTaW1wbGVSYW5nZT4mKTsKIC8vIE91dHNpZGUgdGhlIFdlYkNvcmUgbmFtZXNwYWNl
IGZvciBlYXNlIG9mIGludm9jYXRpb24gZnJvbSB0aGUgZGVidWdnZXIuCiB2b2lkIHNob3dUcmVl
KGNvbnN0IFdlYkNvcmU6OlJhbmdlKik7CiAjZW5kaWYKKworU1BFQ0lBTElaRV9UWVBFX1RSQUlU
U19CRUdJTihXZWJDb3JlOjpSYW5nZSkKKyAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2Vi
Q29yZTo6QWJzdHJhY3RSYW5nZSYgcmFuZ2UpIHsgcmV0dXJuIHJhbmdlLmlzTGl2ZVJhbmdlKCk7
IH0KK1NQRUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9SYW5nZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuaWRsCmluZGV4IDYz
ZGYzODc3ZjYwZGI3YjE4NTA3ZWM5NTg3YjkyMGE1NWVkNTVmMTEuLjNjMDU3YTBmYjk5ZGQ3ODJh
MjAyOGY0NGFjMWZlNWQyYWE4OGJkZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9S
YW5nZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmlkbApAQCAtMSw1ICsxLDUg
QEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYgQXBwbGUgSW5jLgorICogQ29weXJpZ2h0IChD
KSAyMDA2LTIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0
IChDKSAyMDA2IFNhbXVlbCBXZWluaWcgPHNhbS53ZWluaWdAZ21haWwuY29tPgogICoKICAqIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKQEAgLTIwLDE3ICsyMCwxMiBAQAogCiBbCiAgICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1SZWFj
aGFibGVGcm9tRE9NV2luZG93LAotICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCiAgICAg
RXhwb3J0TWFjcm89V0VCQ09SRV9FWFBPUlQsCi0gICAgRXhwb3NlZD1XaW5kb3cKLV0gaW50ZXJm
YWNlIFJhbmdlIHsKKyAgICBFeHBvc2VkPVdpbmRvdywKKyAgICBKU0dlbmVyYXRlVG9OYXRpdmVP
YmplY3QsCitdIGludGVyZmFjZSBSYW5nZSA6IEFic3RyYWN0UmFuZ2UgewogICAgIFtDYWxsV2l0
aD1Eb2N1bWVudF0gY29uc3RydWN0b3IoKTsKIAotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb2Rl
IHN0YXJ0Q29udGFpbmVyOwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIHN0
YXJ0T2Zmc2V0OwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb2RlIGVuZENvbnRhaW5lcjsKLSAg
ICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBlbmRPZmZzZXQ7Ci0gICAgcmVhZG9u
bHkgYXR0cmlidXRlIGJvb2xlYW4gY29sbGFwc2VkOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBO
b2RlIGNvbW1vbkFuY2VzdG9yQ29udGFpbmVyOwogCiAgICAgW01heVRocm93RXhjZXB0aW9uXSB1
bmRlZmluZWQgc2V0U3RhcnQoTm9kZSBub2RlLCB1bnNpZ25lZCBsb25nIG9mZnNldCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3RhdGljUmFuZ2UuY3BwIGIvU291cmNlL1dlYkNv
cmUvZG9tL1N0YXRpY1JhbmdlLmNwcAppbmRleCA1ZDdjYTgyMTA3MzNkYzBkNTkwYjRjYjg4ZDg4
ZDFhMWJiNjBiNDQ1Li45NmJjZmI4MjE2Y2ZkYTZjN2E3ZThmNzU2YWVjMDhjNjk4NzJkYmY0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3RhdGljUmFuZ2UuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9TdGF0aWNSYW5nZS5jcHAKQEAgLTI4LDkgKzI4LDEyIEBACiAKICNpbmNs
dWRlICJDb250YWluZXJOb2RlLmgiCiAjaW5jbHVkZSAiVGV4dC5oIgorI2luY2x1ZGUgPHd0Zi9J
c29NYWxsb2NJbmxpbmVzLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorV1RGX01BS0VfSVNP
X0FMTE9DQVRFRF9JTVBMKFN0YXRpY1JhbmdlKTsKKwogU3RhdGljUmFuZ2U6OlN0YXRpY1Jhbmdl
KFNpbXBsZVJhbmdlJiYgcmFuZ2UpCiAgICAgOiBTaW1wbGVSYW5nZShXVEZNb3ZlKHJhbmdlKSkK
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdGF0aWNSYW5nZS5oIGIvU291cmNl
L1dlYkNvcmUvZG9tL1N0YXRpY1JhbmdlLmgKaW5kZXggZWNlOWI0ZGYwMWZjZGQ4NGE1ZjAwMWE5
MjE2YmUxYTk1ODY2N2Y0Mi4uNzY5MDExM2RmOGEyYWU5YmM4MjU1NmM0YWJmMTBmOTcyZTIyYTdh
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0YXRpY1JhbmdlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL1N0YXRpY1JhbmdlLmgKQEAgLTI1LDEzICsyNSwxNSBAQAogCiAjcHJh
Z21hIG9uY2UKIAotI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCisjaW5jbHVkZSAiQWJzdHJhY3RS
YW5nZS5oIgogI2luY2x1ZGUgIlNpbXBsZVJhbmdlLmgiCi0jaW5jbHVkZSA8d3RmL1JlZkNvdW50
ZWQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBTdGF0aWNSYW5nZSA6IHB1Ymxp
YyBSZWZDb3VudGVkPFN0YXRpY1JhbmdlPiwgcHVibGljIFNpbXBsZVJhbmdlIHsKK3RlbXBsYXRl
PHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25PcjsKKworY2xhc3MgU3RhdGljUmFuZ2UgZmluYWwg
OiBwdWJsaWMgQWJzdHJhY3RSYW5nZSwgcHVibGljIFNpbXBsZVJhbmdlIHsKKyAgICBXVEZfTUFL
RV9JU09fQUxMT0NBVEVEKFN0YXRpY1JhbmdlKTsKIHB1YmxpYzoKICAgICBzdHJ1Y3QgSW5pdCB7
CiAgICAgICAgIFJlZlB0cjxOb2RlPiBzdGFydENvbnRhaW5lcjsKQEAgLTQ0LDggKzQ2LDIwIEBA
IHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPFN0YXRpY1JhbmdlPiBjcmVhdGUoY29uc3QgU2ltcGxl
UmFuZ2UmKTsKICAgICBzdGF0aWMgUmVmPFN0YXRpY1JhbmdlPiBjcmVhdGUoU2ltcGxlUmFuZ2Um
Jik7CiAKKyAgICBOb2RlJiBzdGFydENvbnRhaW5lcigpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFNp
bXBsZVJhbmdlOjpzdGFydENvbnRhaW5lcigpOyB9CisgICAgdW5zaWduZWQgc3RhcnRPZmZzZXQo
KSBjb25zdCBmaW5hbCB7IHJldHVybiBTaW1wbGVSYW5nZTo6c3RhcnRPZmZzZXQoKTsgfQorICAg
IE5vZGUmIGVuZENvbnRhaW5lcigpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFNpbXBsZVJhbmdlOjpl
bmRDb250YWluZXIoKTsgfQorICAgIHVuc2lnbmVkIGVuZE9mZnNldCgpIGNvbnN0IGZpbmFsIHsg
cmV0dXJuIFNpbXBsZVJhbmdlOjplbmRPZmZzZXQoKTsgfQorICAgIGJvb2wgY29sbGFwc2VkKCkg
Y29uc3QgZmluYWwgeyByZXR1cm4gU2ltcGxlUmFuZ2U6OmNvbGxhcHNlZCgpOyB9CisKIHByaXZh
dGU6CiAgICAgU3RhdGljUmFuZ2UoU2ltcGxlUmFuZ2UmJik7CisKKyAgICBib29sIGlzTGl2ZVJh
bmdlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KIH07CiAKIH0KKworU1BFQ0lBTEla
RV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpTdGF0aWNSYW5nZSkKKyAgICBzdGF0aWMgYm9v
bCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6QWJzdHJhY3RSYW5nZSYgcmFuZ2UpIHsgcmV0dXJuICFy
YW5nZS5pc0xpdmVSYW5nZSgpOyB9CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3RhdGljUmFuZ2UuaWRsIGIvU291cmNlL1dlYkNv
cmUvZG9tL1N0YXRpY1JhbmdlLmlkbAppbmRleCA4M2E5ODIyMzhhNDZkNmMyM2M0MTRlMDU0MTVh
YTVhZTY3MjBmNWRmLi4xMTI2NDhhMDgxNjkyNjRiODVhNmQxODQ5M2M2MzgwOGI1NDg5MjY2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3RhdGljUmFuZ2UuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9TdGF0aWNSYW5nZS5pZGwKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29w
eXJpZ2h0IChDKSAyMDE2IEFwcGxlLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTYtMjAyMCBBcHBsZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoK
ICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNCwxNyArMjQsMTAgQEAKICAqLwogCiBb
Ci0gICAgRW5hYmxlZEJ5U2V0dGluZz1JbnB1dEV2ZW50cywKLSAgICBJbXBsZW1lbnRhdGlvbkxh
Y2tzVlRhYmxlLAotICAgIEV4cG9zZWQ9V2luZG93Ci1dIGludGVyZmFjZSBTdGF0aWNSYW5nZSB7
Ci0gICAgY29uc3RydWN0b3IoU3RhdGljUmFuZ2VJbml0IHN0YXRpY1JhbmdlSW5pdERpY3QpOwot
Ci0gICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgc3RhcnRPZmZzZXQ7Ci0gICAg
cmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgZW5kT2Zmc2V0OwotICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBOb2RlIHN0YXJ0Q29udGFpbmVyOwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBO
b2RlIGVuZENvbnRhaW5lcjsKLSAgICByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBjb2xsYXBz
ZWQ7CisgICAgRXhwb3NlZD1XaW5kb3csCisgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAor
XSBpbnRlcmZhY2UgU3RhdGljUmFuZ2UgOiBBYnN0cmFjdFJhbmdlIHsKKyAgICBjb25zdHJ1Y3Rv
cihTdGF0aWNSYW5nZUluaXQgaW5pdCk7CiB9OwogCiBkaWN0aW9uYXJ5IFN0YXRpY1JhbmdlSW5p
dCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nYW1lcGFkL0dhbWVwYWRD
b25zdGFudHMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ2FtZXBhZC9HYW1lcGFkQ29u
c3RhbnRzLmNwcAppbmRleCA0NTIyNzk4NGNkNTczMjI5YmRmOWZhOTVlZTAyMjM4MGZlNGI3ZmZh
Li5jODVlMjZhNzk5ZGRjNWQ1NTgxY2UxMjNlNWZmYjE3MzUzMmNhZDMzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nYW1lcGFkL0dhbWVwYWRDb25zdGFudHMuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dhbWVwYWQvR2FtZXBhZENvbnN0YW50cy5jcHAKQEAg
LTI4LDggKzI4LDggQEAKIAogI2lmIEVOQUJMRShHQU1FUEFEKQogCi0jaW1wb3J0IDx3dGYvTmV2
ZXJEZXN0cm95ZWQuaD4KLSNpbXBvcnQgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgorI2luY2x1ZGUg
PHd0Zi9OZXZlckRlc3Ryb3llZC5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4
IGI5MGUzMDA4NjQzZmE0YjBhNDg5M2MxMzM2ODc4ZjBjNDUwNWI3ZTguLjY3MTEyMmFmMzgyZDhm
NzkzZjEzOGZkMDliMDAyY2IwMjI0YmVkZDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDEzIEBACisyMDIwLTEwLTE2ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxl
LmNvbT4KKworICAgICAgICBBZGQgQWJzdHJhY3RSYW5nZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3ODQ2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Unlvc3VrZSBOaXdhLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9pZGxoYXJu
ZXNzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgIFVwZGF0ZWQgdGVzdCByZXN1bHQgZm9y
IHByb2dyZXNzaW9uLgorCiAyMDIwLTEwLTE2ICBLYXJsIFJhY2tsZXIgIDxyYWNrbGVyQGFwcGxl
LmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI2ODE3OC4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2lkbGhh
cm5lc3Mud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZG9tL2lkbGhhcm5lc3Mud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCAy
NmRlMmU4OTk4MDQwMmM0YTM4YmM2NWFhOTNiYjU4MTA3MjQ4YWUwLi4zZmUyZjlhYjYzZDNlYmI0
YTUzMjljNzY0ZWNjYzgyM2U3Mjc2NGYzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9pZGxoYXJuZXNzLndpbmRvdy1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20v
aWRsaGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xNDk0LDI3ICsxNDk0LDI3IEBAIFBB
U1MgRXZlbnRUYXJnZXQgaW50ZXJmYWNlOiBkb2N1bWVudC5jcmVhdGVDb21tZW50KCJhYmMiKSBt
dXN0IGluaGVyaXQgcHJvcGVydHkKIFBBU1MgRXZlbnRUYXJnZXQgaW50ZXJmYWNlOiBjYWxsaW5n
IHJlbW92ZUV2ZW50TGlzdGVuZXIoRE9NU3RyaW5nLCBFdmVudExpc3RlbmVyPywgb3B0aW9uYWwg
KEV2ZW50TGlzdGVuZXJPcHRpb25zIG9yIGJvb2xlYW4pKSBvbiBkb2N1bWVudC5jcmVhdGVDb21t
ZW50KCJhYmMiKSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yCiBQ
QVNTIEV2ZW50VGFyZ2V0IGludGVyZmFjZTogZG9jdW1lbnQuY3JlYXRlQ29tbWVudCgiYWJjIikg
bXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNwYXRjaEV2ZW50KEV2ZW50KSIgd2l0aCB0aGUgcHJv
cGVyIHR5cGUKIFBBU1MgRXZlbnRUYXJnZXQgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc3BhdGNoRXZl
bnQoRXZlbnQpIG9uIGRvY3VtZW50LmNyZWF0ZUNvbW1lbnQoImFiYyIpIHdpdGggdG9vIGZldyBh
cmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IKLUZBSUwgQWJzdHJhY3RSYW5nZSBpbnRlcmZh
Y2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2Ugb2JqZWN0IGFzc2VydF9v
d25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkFic3RyYWN0UmFu
Z2UiIGV4cGVjdGVkIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBtaXNzaW5nCi1GQUlMIEFic3Ry
YWN0UmFuZ2UgaW50ZXJmYWNlIG9iamVjdCBsZW5ndGggYXNzZXJ0X293bl9wcm9wZXJ0eTogc2Vs
ZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJv
cGVydHkgIkFic3RyYWN0UmFuZ2UiIG1pc3NpbmcKLUZBSUwgQWJzdHJhY3RSYW5nZSBpbnRlcmZh
Y2Ugb2JqZWN0IG5hbWUgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93
biBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkgIkFic3RyYWN0UmFu
Z2UiIG1pc3NpbmcKLUZBSUwgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQg
cHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCBhc3NlcnRfb3duX3Byb3Bl
cnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBleHBl
Y3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBBYnN0cmFjdFJhbmdl
IGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5
cGUgb2JqZWN0J3MgImNvbnN0cnVjdG9yIiBwcm9wZXJ0eSBhc3NlcnRfb3duX3Byb3BlcnR5OiBz
ZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBw
cm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBBYnN0cmFjdFJhbmdlIGludGVy
ZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2Jq
ZWN0J3MgQEB1bnNjb3BhYmxlcyBwcm9wZXJ0eSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRv
ZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0
eSAiQWJzdHJhY3RSYW5nZSIgbWlzc2luZwotRkFJTCBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTog
YXR0cmlidXRlIHN0YXJ0Q29udGFpbmVyIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBu
b3QgaGF2ZSBvd24gcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIGV4cGVjdGVkIHByb3BlcnR5ICJB
YnN0cmFjdFJhbmdlIiBtaXNzaW5nCi1GQUlMIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBhdHRy
aWJ1dGUgc3RhcnRPZmZzZXQgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZl
IG93biBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkgIkFic3RyYWN0
UmFuZ2UiIG1pc3NpbmcKLUZBSUwgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBl
bmRDb250YWluZXIgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBw
cm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkgIkFic3RyYWN0UmFuZ2Ui
IG1pc3NpbmcKLUZBSUwgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBlbmRPZmZz
ZXQgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAi
QWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIG1pc3NpbmcK
LUZBSUwgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBjb2xsYXBzZWQgYXNzZXJ0
X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiQWJzdHJhY3RS
YW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIG1pc3NpbmcKLUZBSUwgU3Rh
dGljUmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNl
IG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3Bl
cnR5ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgbWlz
c2luZworUEFTUyBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0
aWVzIG9mIGludGVyZmFjZSBvYmplY3QKK1BBU1MgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2Ugb2Jq
ZWN0IGxlbmd0aAorUEFTUyBBYnN0cmFjdFJhbmdlIGludGVyZmFjZSBvYmplY3QgbmFtZQorUEFT
UyBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGlu
dGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0CitQQVNTIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBl
eGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyAi
Y29uc3RydWN0b3IiIHByb3BlcnR5CitQQVNTIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBleGlz
dGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVu
c2NvcGFibGVzIHByb3BlcnR5CitQQVNTIEFic3RyYWN0UmFuZ2UgaW50ZXJmYWNlOiBhdHRyaWJ1
dGUgc3RhcnRDb250YWluZXIKK1BBU1MgQWJzdHJhY3RSYW5nZSBpbnRlcmZhY2U6IGF0dHJpYnV0
ZSBzdGFydE9mZnNldAorUEFTUyBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTogYXR0cmlidXRlIGVu
ZENvbnRhaW5lcgorUEFTUyBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTogYXR0cmlidXRlIGVuZE9m
ZnNldAorUEFTUyBBYnN0cmFjdFJhbmdlIGludGVyZmFjZTogYXR0cmlidXRlIGNvbGxhcHNlZAor
UEFTUyBTdGF0aWNSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBp
bnRlcmZhY2Ugb2JqZWN0CiBQQVNTIFN0YXRpY1JhbmdlIGludGVyZmFjZSBvYmplY3QgbGVuZ3Ro
CiBQQVNTIFN0YXRpY1JhbmdlIGludGVyZmFjZSBvYmplY3QgbmFtZQotRkFJTCBTdGF0aWNSYW5n
ZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90
eXBlIG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHBy
b3BlcnR5ICJBYnN0cmFjdFJhbmdlIiBleHBlY3RlZCBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIg
bWlzc2luZworUEFTUyBTdGF0aWNSYW5nZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVy
dGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdAogUEFTUyBTdGF0aWNSYW5nZSBpbnRl
cmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9i
amVjdCdzICJjb25zdHJ1Y3RvciIgcHJvcGVydHkKIFBBU1MgU3RhdGljUmFuZ2UgaW50ZXJmYWNl
OiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3Qn
cyBAQHVuc2NvcGFibGVzIHByb3BlcnR5Ci1GQUlMIFJhbmdlIGludGVyZmFjZTogZXhpc3RlbmNl
IGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBvYmplY3QgYXNzZXJ0X293bl9wcm9wZXJ0eTog
c2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQg
cHJvcGVydHkgIkFic3RyYWN0UmFuZ2UiIG1pc3NpbmcKK1BBU1MgUmFuZ2UgaW50ZXJmYWNlOiBl
eGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIG9iamVjdAogUEFTUyBSYW5nZSBp
bnRlcmZhY2Ugb2JqZWN0IGxlbmd0aAogUEFTUyBSYW5nZSBpbnRlcmZhY2Ugb2JqZWN0IG5hbWUK
LUZBSUwgUmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJm
YWNlIHByb3RvdHlwZSBvYmplY3QgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBo
YXZlIG93biBwcm9wZXJ0eSAiQWJzdHJhY3RSYW5nZSIgZXhwZWN0ZWQgcHJvcGVydHkgIkFic3Ry
YWN0UmFuZ2UiIG1pc3NpbmcKK1BBU1MgUmFuZ2UgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHBy
b3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QKIFBBU1MgUmFuZ2UgaW50ZXJm
YWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmpl
Y3QncyAiY29uc3RydWN0b3IiIHByb3BlcnR5CiBQQVNTIFJhbmdlIGludGVyZmFjZTogZXhpc3Rl
bmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3MgQEB1bnNj
b3BhYmxlcyBwcm9wZXJ0eQogUEFTUyBSYW5nZSBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBjb21tb25B
bmNlc3RvckNvbnRhaW5lcgo=
</data>
<flag name="commit-queue"
          id="427952"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>