<?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>226694</bug_id>
          
          <creation_ts>2021-06-05 23:01:00 -0700</creation_ts>
          <short_desc>Handle custom identifiers and strings separately, so we can quote strings correctly consistently</short_desc>
          <delta_ts>2021-06-21 12:22:04 -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>CSS</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=227231</see_also>
          <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>
          
          <blocked>226708</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          <cc>andersca</cc>
    
    <cc>cdumez</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gsnedders</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hi</cc>
    
    <cc>jer.noble</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>philipj</cc>
    
    <cc>rego</cc>
    
    <cc>sam</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>twilco.o</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1767198</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-06-05 23:01:00 -0700</bug_when>
    <thetext>Handle custom identifiers and strings separately, so we can quote strings correctly consistently</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1767202</commentid>
    <comment_count>1</comment_count>
      <attachid>430678</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-06-05 23:52:13 -0700</bug_when>
    <thetext>Created attachment 430678
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1767203</commentid>
    <comment_count>2</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-06-05 23:55:11 -0700</bug_when>
    <thetext>Tried to cc people who might be interested in work in this area. There is so much we can do to simplify our CSS object model implementation, but this correctness change is more important than that since it’s causing us to be different from the other browsers and fail WPT tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1767250</commentid>
    <comment_count>3</comment_count>
      <attachid>430678</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-06-06 13:32:48 -0700</bug_when>
    <thetext>Comment on attachment 430678
Patch

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

&gt; Source/WebCore/animation/CSSAnimation.cpp:51
&gt; -    , m_animationName(backingAnimation.name())
&gt; +    , m_animationName(backingAnimation.name().string)

In the future we should see if m_animationName is necessary given the base class holds onto the backingAnimation and could pull the string from there.

&gt; Source/WebCore/css/CSSComputedStyleDeclaration.cpp:3426
&gt; +                for (size_t i = 0; i &lt; t-&gt;size(); ++i) {

Would probably be a good idea for AnimationList to have an animations() function that return an IteratorRange&lt;&gt; (or just the underlying Vector) at some point to avoid this.

&gt; Source/WebCore/css/CSSUnits.h:71
&gt; +    CustomIdent,

Daring, I like it!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1767252</commentid>
    <comment_count>4</comment_count>
      <attachid>430678</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-06-06 15:09:14 -0700</bug_when>
    <thetext>Comment on attachment 430678
Patch

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

&gt;&gt; Source/WebCore/animation/CSSAnimation.cpp:51
&gt;&gt; +    , m_animationName(backingAnimation.name().string)
&gt; 
&gt; In the future we should see if m_animationName is necessary given the base class holds onto the backingAnimation and could pull the string from there.

That’s a really good point. Seems like it is not.

I am torn about what to pursue next.

Further cleanup of things I encountered here like this would be great. The mission that led me here, though, was finding easy ways to pass a lot more WPT, and I was trying to start with counter-list-style improvements, which led me to this work.

&gt;&gt; Source/WebCore/css/CSSComputedStyleDeclaration.cpp:3426
&gt;&gt; +                for (size_t i = 0; i &lt; t-&gt;size(); ++i) {
&gt; 
&gt; Would probably be a good idea for AnimationList to have an animations() function that return an IteratorRange&lt;&gt; (or just the underlying Vector) at some point to avoid this.

Absolutely! Well worth it.

&gt;&gt; Source/WebCore/css/CSSUnits.h:71
&gt;&gt; +    CustomIdent,
&gt; 
&gt; Daring, I like it!

Took a lot of discipline for me to not rename everything in the class right now. This code needs to be changed a lot more to be good long term.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1767253</commentid>
    <comment_count>5</comment_count>
      <attachid>430700</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-06-06 15:36:59 -0700</bug_when>
    <thetext>Created attachment 430700
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1767254</commentid>
    <comment_count>6</comment_count>
      <attachid>430678</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-06-06 15:42:16 -0700</bug_when>
    <thetext>Comment on attachment 430678
Patch

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

&gt;&gt;&gt; Source/WebCore/css/CSSComputedStyleDeclaration.cpp:3426
&gt;&gt;&gt; +                for (size_t i = 0; i &lt; t-&gt;size(); ++i) {
&gt;&gt; 
&gt;&gt; Would probably be a good idea for AnimationList to have an animations() function that return an IteratorRange&lt;&gt; (or just the underlying Vector) at some point to avoid this.
&gt; 
&gt; Absolutely! Well worth it.

I think the best idea here is to make AnimationList derive from Vector instead of holding one. This really just is a Vector with reference counting and one special function &quot;fillUnsetProperties&quot;. Or maybe we can use use RefCountedArray instead of a Vector. Unsure how often these are resized.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1767255</commentid>
    <comment_count>7</comment_count>
      <attachid>430678</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-06-06 15:46:22 -0700</bug_when>
    <thetext>Comment on attachment 430678
Patch

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

&gt;&gt;&gt;&gt; Source/WebCore/css/CSSComputedStyleDeclaration.cpp:3426
&gt;&gt;&gt;&gt; +                for (size_t i = 0; i &lt; t-&gt;size(); ++i) {
&gt;&gt;&gt; 
&gt;&gt;&gt; Would probably be a good idea for AnimationList to have an animations() function that return an IteratorRange&lt;&gt; (or just the underlying Vector) at some point to avoid this.
&gt;&gt; 
&gt;&gt; Absolutely! Well worth it.
&gt; 
&gt; I think the best idea here is to make AnimationList derive from Vector instead of holding one. This really just is a Vector with reference counting and one special function &quot;fillUnsetProperties&quot;. Or maybe we can use use RefCountedArray instead of a Vector. Unsure how often these are resized.

To make this call site work as a modern for loop, all we’d have to do is add AnimationList::begin/end.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1767281</commentid>
    <comment_count>8</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-06-06 19:39:43 -0700</bug_when>
    <thetext>Committed r278540 (238538@main): &lt;https://commits.webkit.org/238538@main&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1767282</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-06-06 19:40:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/78931824&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1767416</commentid>
    <comment_count>10</comment_count>
    <who name="Sam Sneddon [:gsnedders]">gsnedders</who>
    <bug_when>2021-06-07 05:23:54 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #2)
&gt; Tried to cc people who might be interested in work in this area. There is so
&gt; much we can do to simplify our CSS object model implementation, but this
&gt; correctness change is more important than that since it’s causing us to be
&gt; different from the other browsers and fail WPT tests.

Yay!

To check I&apos;m understanding code I don&apos;t actually know(!):

The reason why we have a separate CSSUnitType::CustomIdent to CSSUnitType::CSS_IDENT is because we effectively split CSS_IDENT up into smaller categories (with CSS_VALUE_ID and CSS_PROPERTY_ID too)?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1767595</commentid>
    <comment_count>11</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-06-07 16:10:37 -0700</bug_when>
    <thetext>(In reply to Sam Sneddon [:gsnedders] from comment #10)
&gt; The reason why we have a separate CSSUnitType::CustomIdent to
&gt; CSSUnitType::CSS_IDENT is because we effectively split CSS_IDENT up into
&gt; smaller categories (with CSS_VALUE_ID and CSS_PROPERTY_ID too)?

That’s right.

If we clean this up a bit, I’m not sure we will CSS_IDENT itself at all. The actual web-exposed CSS unit numbers are not using CSSUnitType; it’s entirely an internal concept. We should really separate the numeric types which are used for calculations, and conversion from one numeric type to another, from the other types that just let the internal primitive values hold the different sorts of values. And there’s no need for either of those to be a single enumeration that is exposed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1768145</commentid>
    <comment_count>12</comment_count>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2021-06-09 05:27:09 -0700</bug_when>
    <thetext>*** Bug 204506 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>430678</attachid>
            <date>2021-06-05 23:52:13 -0700</date>
            <delta_ts>2021-06-06 13:32:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-226694-20210605235213.patch</filename>
            <type>text/plain</type>
            <size>139065</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc4NTMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmZkOWY1ZDhmM2EzMjQx
MWM5YTUzODM1NTU4YjFjMTRkMzBmOTE3ZS4uMTYwZjM2MzdjNzI4N2Y1Zjc5ZTIxZWMwMzE2NDE5
ODE2MTVlYjQ1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5NCBAQAorMjAyMS0wNi0wNSAgRGFy
aW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgSGFuZGxlIGN1c3RvbSBpZGVu
dGlmaWVycyBhbmQgc3RyaW5ncyBzZXBhcmF0ZWx5LCBzbyB3ZSBjYW4gcXVvdGUgc3RyaW5ncyBj
b3JyZWN0bHkgY29uc2lzdGVudGx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMjY2OTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBQcm9ncmVzc2lvbnMgaW4gYSBudW1iZXIgb2YgV1BUIHRlc3RzLgorCisg
ICAgICAgICogYW5pbWF0aW9uL0NTU0FuaW1hdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
U1NBbmltYXRpb246OkNTU0FuaW1hdGlvbik6IFVwZGF0ZSBzaW5jZSBBbmltYXRpb246Om5hbWUo
KSBub3cKKyAgICAgICAgcmV0dXJucyBhIHN0cnVjdC4KKyAgICAgICAgKiBhbmltYXRpb24vS2V5
ZnJhbWVFZmZlY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6S2V5ZnJhbWVFZmZlY3Q6OmNvbXB1
dGVDU1NBbmltYXRpb25CbGVuZGluZ0tleWZyYW1lcyk6IERpdHRvLgorCisgICAgICAgICogY3Nz
L0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpPcmRl
cmVkTmFtZWRMaW5lc0NvbGxlY3Rvcjo6YXBwZW5kTGluZXMgY29uc3QpOiBVc2UKKyAgICAgICAg
Y3JlYXRlQ3VzdG9tSWRlbnQgZm9yIGxpbmUgbmFtZXMuCisgICAgICAgIChXZWJDb3JlOjp2YWx1
ZUZvckdyaWRQb3NpdGlvbik6IFVzZSBjcmVhdGVDdXN0b21JZGVudCBmb3IgZ3JpZCBsaW5lIG5h
bWUuCisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVUcmFuc2l0aW9uUHJvcGVydHlWYWx1ZSk6IFVz
ZSBjcmVhdGVDdXN0b21JZGVudCBmb3IKKyAgICAgICAgYW5pbWF0aW9uIHByb3BlcnR5IG5hbWVz
LgorICAgICAgICAoV2ViQ29yZTo6Y291bnRlclRvQ1NTVmFsdWUpOiBVc2UgY3JlYXRlQ3VzdG9t
SWRlbnQgZm9yIGNvdW50ZXIgbmFtZXMuCisgICAgICAgIChXZWJDb3JlOjpDb21wdXRlZFN0eWxl
RXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5TdHlsZSk6IFVzZQorICAgICAgICBjcmVhdGVD
dXN0b21JZGVudCBmb3IgbGlzdC1zdHlsZS10eXBlLCBsb2NhbGUsIGFuaW1hdGlvbiBuYW1lcyBp
ZiB0aGV5CisgICAgICAgIHdlcmUgY3JlYXRlZCBmcm9tIGEgY3VzdG9tLWlkZW50LCBhbmQgbGlu
ZS1ncmlkLgorCisgICAgICAgICogY3NzL0NTU0N1c3RvbUlkZW50VmFsdWUuY3BwOiBFbXB0aWVk
IG91dCB0aGlzIGZpbGU7IHdlIGNhbiBkZWxldGUgaXQgc29vbi4KKyAgICAgICAgKiBjc3MvQ1NT
Q3VzdG9tSWRlbnRWYWx1ZS5oOiBEaXR0by4KKworICAgICAgICAqIGNzcy9DU1NNYXJrdXAuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6c2VyaWFsaXplQ2hhcmFjdGVyQXNDb2RlUG9pbnQpOiBPcHRp
bWl6ZWQgdG8gZG8gYSBzaW5nbGUKKyAgICAgICAgU3RyaW5nQnVpbGRlcjo6YXBwZW5kIGNhbGwu
CisgICAgICAgIChXZWJDb3JlOjpzZXJpYWxpemVBc1N0cmluZ09yQ3VzdG9tSWRlbnQpOiBEZWxl
dGVkLgorICAgICAgICAqIGNzcy9DU1NNYXJrdXAuaDogUmVtb3ZlZCBzZXJpYWxpemVBc1N0cmlu
Z09yQ3VzdG9tSWRlbnQuCisKKyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6aXNWYWxpZENTU1VuaXRUeXBlRm9yRG91YmxlQ29udmVyc2lvbik6
IEFkZGVkIGEgY2FzZSBmb3IKKyAgICAgICAgQ3VzdG9tSWRlbnQuIENoYW5nZWQgQ1NTX0lERU5U
IHRvIGFzc2VydCBub3QgcmVhY2hlZCwgc2luY2UgaXQgc2hvdWxkCisgICAgICAgIG5ldmVyIGJl
IHBhc3NlZCB0byB0aGlzIGZ1bmN0aW9uLiBNb3JlIGNsZWFudXAgb2YgQ1NTVW5pdFR5cGUgaXMg
bmVlZGVkLAorICAgICAgICBidXQgZm9yIG5vdyBtb3N0bHkgbGVhdmluZyBpdCBhbG9uZS4KKyAg
ICAgICAgKFdlYkNvcmU6OmlzU3RyaW5nVHlwZSk6IEFkZGVkIGEgY2FzZSBmb3IgQ3VzdG9tSWRl
bnQuIE1vdmVkIENTU19ESU1FTlNJT04sCisgICAgICAgIHdoaWNoIHdhcyBpbmNvcnJlY3RseSBy
ZXR1cm5pbmcgdHJ1ZSwgdG8gcmV0dXJuIGZhbHNlLiBQcmV0dHkgc3VyZSB0aGVyZSdzCisgICAg
ICAgIG5vIHdheSB0byBjcmVhdGUgb25lIG9mIHRoZXNlIHdpdGggQ1NTX0RJTUVOU0lPTiwgYnV0
IHRoaXMgaXMgbGVzcyBwZWN1bGlhci4KKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZh
bHVlOjpwcmltaXRpdmVUeXBlIGNvbnN0KTogQWRkZWQgdHJhbnNmb3JtYXRpb24KKyAgICAgICAg
ZnJvbSBDdXN0b21JZGVudCB0byBDU1NfSURFTlQgYXMgd2UgZG8gd2l0aCBDU1NfUFJPUEVSVFlf
SUQgYW5kIENTU19WQUxVRV9JRC4KKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVl
OjpjbGVhbnVwKTogQWRkZWQgYSBjYXNlIGZvciBDdXN0b21JZGVudC4KKyAgICAgICAgTW92ZWQg
Q1NTX0RJTUVOU0lPTiB0byB0aGUgY29ycmVjdCBzZWN0aW9uLiBQcmV0dHkgc3VyZSB0aGVyZSdz
IG5vIHdheSB0bworICAgICAgICBjcmVhdGUgb25lIG9mIHRoZXNlIHdpdGggQ1NTX0RJTUVOU0lP
TiwgYnV0IHRoaXMgaXMgbGVzcyBwZWN1bGlhci4KKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1p
dGl2ZVZhbHVlOjpzZXRGbG9hdFZhbHVlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkNT
U1ByaW1pdGl2ZVZhbHVlOjpzZXRTdHJpbmdWYWx1ZSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJD
b3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6Z2V0U3RyaW5nVmFsdWUgY29uc3QpOiBEZWxldGVkLgor
ICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OnN0cmluZ1ZhbHVlIGNvbnN0KTog
QWRkZWQgYSBjYXNlIGZvciBDdXN0b21JZGVudC4KKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1p
dGl2ZVZhbHVlOjp1bml0VHlwZVN0cmluZyk6IEFkZGVkIGEgY2FzZSBmb3IgQ3VzdG9tSWRlbnQK
KyAgICAgICAgYW5kIGFuIEFTU0VSVF9OT1RfUkVBQ0hFRCBmb3IgaW52YWxpZCBlbnVtZXJhdGlv
biB2YWx1ZXMuCisgICAgICAgIChXZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6Zm9ybWF0TnVt
YmVyRm9yQ3VzdG9tQ1NTVGV4dCBjb25zdCk6CisgICAgICAgIFJlbW92ZWQgaW5hY2N1cmF0ZSBG
SVhNRSBjb21tZW50IGZvciBDU1NfRElNRU5TSU9OIGFuZCBjaGFuZ2VkIGl0IHRvIGRvCisgICAg
ICAgIHNvbWV0aGluZyBsZXNzIHdyb25nLCBidXQgc3RpbGwgaW5jb3JyZWN0LiBQcmV0dHkgc3Vy
ZSB0aGVyZSdzIG5vIHdheSB0bworICAgICAgICBjcmVhdGUgb25lIG9mIHRoZXNlIHdpdGggQ1NT
X0RJTUVOU0lPTiwgYnV0IHRoaXMgaXMgbGVzcyBwZWN1bGlhci4gQ2hhbmdlZAorICAgICAgICBD
U1NfU1RSSU5HIGNhc2UgdG8gYWx3YXlzIHNlcmlhbGl6ZUFzU3RyaW5nLiBBZGRlZCBhIEN1c3Rv
bUlkZW50IGNhc2UKKyAgICAgICAgdGhhdCBhbHdheXMgc2VyaWFsaXplcyBhcyBhbiBpZGVudGlm
aWVyLgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OmVxdWFscyBjb25zdCk6
IE1vdmVkIHRoZSBDU1NfRElNRU5TSU9OIHRvCisgICAgICAgIHRoZSBjb3JyZWN0IHBhcnQgb2Yg
dGhpcyBzd2l0Y2ggc3RhdGVtZW50LiBQcmV0dHkgc3VyZSB0aGVyZSdzIG5vIHdheSB0bworICAg
ICAgICBjcmVhdGUgb25lIG9mIHRoZXNlIHdpdGggQ1NTX0RJTUVOU0lPTiwgYnV0IHRoaXMgaXMg
bGVzcyBwZWN1bGlhci4KKyAgICAgICAgQWRkZWQgY2FzZSBmb3IgQ3VzdG9tSWRlbnQuCisKKyAg
ICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWUuaDogTWFkZSBpc0ZvbnRSZWxhdGl2ZUxlbmd0
aCwgaXNSZXNvbHV0aW9uLAorICAgICAgICBhbmQgaXNWaWV3cG9ydFBlcmNlbnRhZ2VMZW5ndGgg
cHJpdmF0ZS4gTWFkZSB0aG9zZSBwbHVzIGlzTGVuZ3RoIGFsbAorICAgICAgICBjb25zdGV4cHIu
IFJlbW92ZWQgV0VCQ09SRV9FWFBPUlQgZnJvbSBwcmltaXRpdmVUeXBlIGFuZCBnZXRGbG9hdFZh
bHVlOgorICAgICAgICB0aG9zZSBuZWVkZWQgdG8gYmUgZXhwb3J0ZWQgd2hlbiB0aGlzIHdhcyB0
aGUgd2ViLWV4cG9zZWQgY2xhc3MsIGJ1dAorICAgICAgICB0aGF0IGlzIG5vdyBEZXByZWNhdGVk
Q1NTT01QcmltaXRpdmVWYWx1ZS4gRGVsZXRlZCBzZXRGbG9hdFZhbHVlLAorICAgICAgICBzZXRT
dHJpbmdWYWx1ZSwgYW5kIGdldFN0cmluZ1ZhbHVlIGZvciB0aGUgc2FtZSByZWFzb246IHRob3Nl
IGZ1bmN0aW9ucworICAgICAgICBhcmUgbm93IGluIERlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZh
bHVlIGFuZCBkb24ndCBuZWVkIHRvIGJlIGhlcmUuCisKKyAgICAgICAgKiBjc3MvQ1NTVG9TdHls
ZU1hcC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NUb1N0eWxlTWFwOjptYXBBbmltYXRpb25O
YW1lKTogVXBkYXRlZCB0byBwYXNzIGEgYm9vbGVhbgorICAgICAgICBpbiB0byB0aGUgYW5pbWF0
aW9uIG5hbWUgdG8ga2VlcCB0cmFjayBvZiB3aGV0aGVyIGl0IHdhcyBjcmVhdGVkIHdpdGgKKyAg
ICAgICAgYSBzdHJpbmcgb3IgYSBjdXN0b20taWRlbnQgc28gd2UgaXQgY2FuIHByb3Blcmx5IHJv
dW5kLXRyaXAgaW4gY29tcHV0ZWQKKyAgICAgICAgc3R5bGUuIFRoaXMgaXMgcmVxdWlyZWQgdG8g
cGFzcyBzb21lIG9mIHRoZSBXUFQgdGVzdHMsIGFsdGhvdWdoIEkgY291bGQKKyAgICAgICAgbm90
IGZpbmQgY2xlYXIgZ3VpZGFuY2UgaW4gdGhlIHNwZWNpZmljYXRpb24gdGhhdCB0aGlzIGJlaGF2
aW9yIGlzIHJlcXVpcmVkLgorICAgICAgICBUaGUgc2FtZSBuYW1lIHdpdGggYSBzdHJpbmcgYW5k
IGN1c3RvbS1pZGVudCBhcmUgZXF1aXZhbGVudCBpbiBvdGhlciB3YXlzLgorCisgICAgICAgICog
Y3NzL0NTU1VuaXRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Om9wZXJhdG9yPDwpOiBBZGRlZCBh
IGNhc2UgZm9yIEN1c3RvbUlkZW50LgorICAgICAgICAqIGNzcy9DU1NVbml0cy5oOiBBZGRlZCBD
dXN0b21JZGVudC4gQWRkZWQgc29tZSBGSVhNRSBhYm91dCBob3cgd2UgY2FuCisgICAgICAgIGNo
YW5nZSB0aGlzIGluIHRoZSBmdXR1cmUuIEl0J3MgYSByZW1uYW50IG9mIHRoZSBwYXN0IHdoZW4g
dGhlc2Ugd2VyZSBwYXJ0CisgICAgICAgIG9mIG91ciB3ZWItZmFjaW5nIEFQSSwgYW5kIHRoaXMg
Y2FuIGJlIGdyZWF0bHkgY2xlYW5lZCB1cC4KKworICAgICAgICAqIGNzcy9DU1NWYWx1ZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6Y3NzVGV4dCBjb25zdCk6IFJlbW92ZWQgQ1NT
Q3VzdG9tSWRlbnRWYWx1ZS5oLAorICAgICAgICBDdXN0b21JZGVudENsYXNzLCBDU1NDdXN0b21J
ZGVudFZhbHVlLiBXZSBhcmUgbm90IGdvaW5nIHRvIHVzZSBhIHNlcGFyYXRlCisgICAgICAgIGNs
YXNzIGZvciBjdXN0b20taWRlbnQsIGp1c3QgYSBzZXBhcmF0ZSB0eXBlIG9mIHByaW1pdGl2ZSB2
YWx1ZS4KKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpkZXN0cm95KTogRGl0dG8uCisgICAg
ICAgICogY3NzL0NTU1ZhbHVlLmg6IERlbGV0ZWQgaXNDdXN0b21JZGVudFZhbHVlIGFuZCBDdXN0
b21JZGVudENsYXNzLgorCisgICAgICAgICogY3NzL0NTU1ZhbHVlTGlzdC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpDU1NWYWx1ZUxpc3Q6OmN1c3RvbUNTU1RleHQgY29uc3QpOiBUd2Vha2VkIGFs
Z29yaXRobQorICAgICAgICB0byBiZSBzbGlnaHRseSBtb3JlIGVmZmljaWVudC4KKworICAgICAg
ICAqIGNzcy9DU1NWYWx1ZVBvb2wuaDogQWRkZWQgY3JlYXRlQ3VzdG9tSWRlbnQuIExhdGVyIHNo
b3VsZCByZW1vdmUKKyAgICAgICAgdGhlIGNyZWF0ZSBmdW5jdGlvbiB0aGF0IHRha2VzIGEgc3Ry
aW5nIHZhbHVlIGFuZCBhIHR5cGUgYW5kIHVzZQorICAgICAgICBzZXBhcmF0ZSBuYW1lZCBmdW5j
dGlvbnMgZm9yIHRoZSBmZXcgZGlmZmVyZW50IGNhc2VzLCBidXQgZG9pbmcgdGhlCisgICAgICAg
IG5ldyBvbmUgdGhpcyB3YXkgZm9yIG5vdy4KKworICAgICAgICAqIGNzcy9EZXByZWNhdGVkQ1NT
T01QcmltaXRpdmVWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEZXByZWNhdGVkQ1NTT01Q
cmltaXRpdmVWYWx1ZTo6cHJpbWl0aXZlVHlwZSBjb25zdCk6CisgICAgICAgIFJld3JvdGUgdGhp
cyB0byBiZSBhIHN3aXRjaCB0aGF0IHByZXNlcnZlcyB0aGUgY3VycmVudCBiZWhhdmlvcgorICAg
ICAgICBidXQgbm8gbG9uZ2VyIHJlbGllcyBvbiB0aGUgbnVtZXJpYyB2YWx1ZXMgb2YgQ1NTVW5p
dFR5cGUgdmFsdWVzLgorICAgICAgICBBZGRlZCBhIEZJWE1FIGFib3V0IHVzaW5nIENTU19VTktO
T1dOIG1vcmU6IHNvbWUgb2YgdGhlIG51bWJlcnMKKyAgICAgICAgd2UgYXJlIGV4cG9zaW5nIHRv
IHRoZSB3ZWIgYXJlIGRvaW5nIG5vIGdvb2QuCisgICAgICAgIChXZWJDb3JlOjpEZXByZWNhdGVk
Q1NTT01QcmltaXRpdmVWYWx1ZTo6c2V0RmxvYXRWYWx1ZSk6IE1vdmVkIHRoaXMKKyAgICAgICAg
ZnVuY3Rpb24gdG8gdGhlIGhlYWRlci4KKyAgICAgICAgKFdlYkNvcmU6OkRlcHJlY2F0ZWRDU1NP
TVByaW1pdGl2ZVZhbHVlOjpnZXRGbG9hdFZhbHVlIGNvbnN0KToKKyAgICAgICAgUmV3cm90ZSB0
aGlzIHRvIGJlIGEgc3dpdGNoIGFzIGFib3ZlLiBQcmVzZXJ2ZXMgY3VycmVudCBiZWhhdmlvcgor
ICAgICAgICBidXQgc3RvcHMgcmVseWluZyBvbiBDU1NVbml0VHlwZSBudW1lcmljIHZhbHVlcy4K
KyAgICAgICAgKFdlYkNvcmU6OkRlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlOjpzZXRTdHJp
bmdWYWx1ZSk6IE1vdmVkIHRoaXMKKyAgICAgICAgZnVuY3Rpb24gdG8gdGhlIGhlYWRlci4KKyAg
ICAgICAgKFdlYkNvcmU6OkRlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlOjpnZXRTdHJpbmdW
YWx1ZSBjb25zdCk6CisgICAgICAgIERpdHRvLiBCeSBwdXR0aW5nIGEgc3dpdGNoIG9uIHByaW1p
dGl2ZVR5cGUgaGVyZSwgd2UgY2FuIGVuZm9yY2UKKyAgICAgICAgdGhlIGRlc2lyZWQgZXhjZXB0
aW9uIGJlaGF2aW9yIGhlcmUsIGluc3RlYWQgb2YgZ2V0dGluZyBpdCBmcm9tCisgICAgICAgIENT
U1ByaW1pdGl2ZVZhbHVlLCBhbmQgaXQncyBiZXR0ZXIgZm9yIHRoaXMgY2xhc3MgdG8gZGVhbCB3
aXRoCisgICAgICAgIHRoZSBsZWdhY3kgYmluZGluZ3MgaXNzdWVzLgorICAgICAgICAoV2ViQ29y
ZTo6RGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWU6OmdldENvdW50ZXJWYWx1ZSBjb25zdCk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWU6
OmdldFJlY3RWYWx1ZSBjb25zdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RGVwcmVjYXRl
ZENTU09NUHJpbWl0aXZlVmFsdWU6OmdldFJHQkNvbG9yVmFsdWUgY29uc3QpOiBEaXR0by4KKwor
ICAgICAgICAqIGNzcy9EZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZS5oOiBSZW1vdmVkIHVu
bmVlZGVkIGNzc1ZhbHVlVHlwZQorICAgICAgICBmdW5jdGlvbi4gTWFkZSBib3RoIHNldEZsb2F0
VmFsdWUgYW5kIHNldFN0cmluZ1ZhbHVlIHNpbXBsZXIgc2luY2UKKyAgICAgICAgdGhleSBhbHdh
eXMgcmFpc2UgYW4gZXhjZXB0aW9uIGFuZCB3ZSBkbyBub3QgaW50ZW5kIHRvIGNoYW5nZSB0aGF0
LgorICAgICAgICBBbHNvIHN0b3AgdXNpbmcgcHJvdGVjdGVkIHNpbmNlIHdlIGhhdmUgbm8gY2xh
c3NlcyBkZXJpdmVkIGZyb20gdGhpcy4KKyAgICAgICAgQ291bGQgZG8gbW9yZSBjbGVhbnVwLCBi
dXQgdGhpcyBpcyBhIHN0YXJ0LgorCisgICAgICAgICogY3NzL0RlcHJlY2F0ZWRDU1NPTVZhbHVl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRlcHJlY2F0ZWRDU1NPTVZhbHVlOjpjc3NWYWx1ZVR5
cGUgY29uc3QpOiBQdXQgdGhlIGNvbnN0YW50CisgICAgICAgIHZhbHVlcywgQ1NTX1BSSU1JVElW
RV9WQUxVRSBhbmQgQ1NTX1ZBTFVFX0xJU1QsIGhlcmUgcmF0aGVyIHRoYW4KKyAgICAgICAgY2Fs
bGluZyBtZW1iZXIgZnVuY3Rpb25zLgorCisgICAgICAgICogY3NzL0RlcHJlY2F0ZWRDU1NPTVZh
bHVlTGlzdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3Q6
OmNzc1RleHQgY29uc3QpOiBUd2Vha2VkIHRvIG1ha2UKKyAgICAgICAgdGhlIGNvZGUgbW9yZSBl
ZmZpY2llbnQuCisKKyAgICAgICAgKiBjc3MvRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0Lmg6IFJl
bW92ZWQgdW5uZWVkZWQgY3NzVmFsdWVUeXBlCisgICAgICAgIGZ1bmN0aW9uIGFuZCBjb25zdCBv
dmVybG9hZCBvZiBpdGVtIGZ1bmN0aW9uLiBBbHNvIHN0b3AgdXNpbmcgcHJvdGVjdGVkCisgICAg
ICAgIHNpbmNlIHdlIGhhdmUgbm8gY2xhc3NlcyBkZXJpdmVkIGZyb20gdGhpcy4KKworICAgICAg
ICAqIGNzcy9NZWRpYVF1ZXJ5RXhwcmVzc2lvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpmZWF0
dXJlV2l0aFZhbGlkSWRlbnQpOiBGaXhlZCBpbmRlbnRhdGlvbiB0byBtYXRjaCBXZWJLaXQgc3R5
bGUuCisgICAgICAgIChXZWJDb3JlOjpmZWF0dXJlV2l0aFZhbGlkRGVuc2l0eSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6ZmVhdHVyZVdpdGhWYWxpZFBvc2l0aXZlTGVuZ3RoKTogRGl0dG8u
CisgICAgICAgIChXZWJDb3JlOjpmZWF0dXJlRXhwZWN0aW5nUG9zaXRpdmVJbnRlZ2VyKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjpmZWF0dXJlV2l0aFBvc2l0aXZlTnVtYmVyKTogRGl0dG8u
CisKKyAgICAgICAgKiBjc3MvY2FsYy9DU1NDYWxjQ2F0ZWdvcnlNYXBwaW5nLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6Omhhc0RvdWJsZVZhbHVlKTogQWRkZWQgYSBjYXNlIGZvciBDdXN0b21JZGVu
dC4KKworICAgICAgICAqIGNzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Y29uc3VtZVdpbGxDaGFuZ2UpOiBSZW1vdmVkIGNvbW1lbnQgc2F5aW5nIHdl
IHNob3VsZCB1c2UKKyAgICAgICAgQ1NTQ3VzdG9tSWRlbnRWYWx1ZSBzaW5jZSB1c2luZyBhIHBy
b3BlcnR5IElEIGZvciB0aGUgdmFsdWUgaXMgZ3JlYXQuCisgICAgICAgIChXZWJDb3JlOjpjb25z
dW1lQW5pbWF0aW9uTmFtZSk6IFJlbW92ZWQgY29tbWVudCBzYXlpbmcgd2Ugc2hvdWxkIHVzZQor
ICAgICAgICBDU1NDdXN0b21JZGVudFZhbHVlIGhlcmUgYmVjYXVzZSB0aGF0IHdvdWxkIGJlIGlu
Y29ycmVjdDogd2UgbmVlZCB0bworICAgICAgICBwcmVzZXJ2ZSBhbmQgcm91bmQtdHJpcCB0aGUg
ZmFjdCB0aGF0IHRoaXMgd2FzIHN0cmluZywgbm90IGN1c3RvbS1pZGVudC4KKyAgICAgICAgKFdl
YkNvcmU6OmNvbnN1bWVUcmFuc2l0aW9uUHJvcGVydHkpOiBSZW1vdmUgc3BlY2lhbCBjYXNlIGZv
cgorICAgICAgICBDU1NWYWx1ZUFsbCB0aGF0IHdhc24ndCBkb2luZyBhbnl0aGluZy4gUmVtb3Zl
ZCBjb21tZW50IHNheWluZyB3ZSBzaG91bGQKKyAgICAgICAgdXNlIENTU0N1c3RvbUlkZW50VmFs
dWUgc2luY2UgdXNpbmcgYSB2YWx1ZSBJRCBmb3IgdGhlIHZhbHVlIGlzIGdyZWF0LgorICAgICAg
ICAoV2ViQ29yZTo6Y29uc3VtZUF0dHIpOiBVcGRhdGVkIGNvbW1lbnQuCisgICAgICAgIChXZWJD
b3JlOjppc0N1c3RvbUlkZW50VmFsdWUpOiBVcGRhdGVkIHRvIHdvcmsgd2l0aCB0aGUgbmV3IHBy
aW1pdGl2ZSB2YWx1ZS4KKworICAgICAgICAqIGNzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJI
ZWxwZXJzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5UGFyc2VySGVscGVyczo6
Y29uc3VtZUN1c3RvbUlkZW50KToKKyAgICAgICAgVXNlIHRoZSBuZXcgY3JlYXRlQ3VzdG9tSWRl
bnQgYW5kIHJlbW92ZWQgYW4gb3V0ZGF0ZWQgY29tbWVudC4gV2hpbGUgd2UKKyAgICAgICAgbWln
aHQgc29tZSBkYXkgd2FudCB0byBpbXBsZW1lbnQgY3VzdG9tLWlkZW50IGRpZmZlcmVudGx5LCB3
ZSB3b24ndCBuZWVkCisgICAgICAgIHRvIGNoYW5nZSB0aGUgY29kZSBoZXJlIHRvIG1ha2UgdGhh
dCBoYXBwZW4uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9hbmltYXRpb24vQW5pbWF0aW9uLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkFuaW1hdGlvbjo6YW5pbWF0aW9uc01hdGNoIGNvbnN0KTogVXBk
YXRlIHNpbmNlIG1fbmFtZSBub3cgaXMgYQorICAgICAgICBzdHJ1Y3QuCisgICAgICAgIChXZWJD
b3JlOjpBbmltYXRpb246OmluaXRpYWxOYW1lKTogVXBkYXRlIHRvIHJldHVybiBOYW1lIGluc3Rl
YWQgb2YgU3RyaW5nLgorICAgICAgICAoV2ViQ29yZTo6b3BlcmF0b3I8PCk6IFVwZGF0ZSBzaW5j
ZSBuYW1lKCkgbm93IHJldHVybnMgYSBzdHJ1Y3QuCisgICAgICAgICogcGxhdGZvcm0vYW5pbWF0
aW9uL0FuaW1hdGlvbi5oOiBBZGRlZCB0aGUgTmFtZSBzdHJ1Y3Qgc28gd2UgY2FuIHN0b3JlIGEK
KyAgICAgICAgYm9vbGVhbiB0byBpbmRpY2F0ZSB3aGV0aGVyIGl0J3MgYSBzdHJpbmcgb3IgY3Vz
dG9tLWlkZW50IGZvciByb3VuZCB0cmlwcGluZy4KKyAgICAgICAgVXBkYXRlIHR5cGVzIGFuZCBp
bXBsZW1lbnRhdGlvbnMgb2YgZnVuY3Rpb24gYW5kIGRhdGEgbWVtYmVycyBhY2NvcmRpbmdseS4K
KworICAgICAgICAqIHN0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oOgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGU6OkJ1aWxkZXJDb252ZXJ0ZXI6OmNyZWF0ZUdyaWRQb3NpdGlvbik6IFVwZGF0
ZSBjb2RlIHRvIGV4cGVjdAorICAgICAgICBjdXN0b20taWRlbnQgaW5zdGVhZCBvZiBzdHJpbmc7
IHRoZXkgdXNlZCB0byBib3RoIGJlIHRoZSBzYW1lIHRoaW5nLgorCisgICAgICAgICogc3R5bGUv
U3R5bGVhYmxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnNob3VsZENvbnNpZGVyQW5pbWF0aW9u
KTogVXBkYXRlIHNpbmNlIEFuaW1hdGlvbjo6bmFtZSgpIG5vdworICAgICAgICByZXR1cm5zIGEg
c3RydWN0LiBBbHNvIGdvdCByaWQgb2YgdW5zdWNjZXNzZnVsIGF0dGVtcHQgdG8gb3B0aW1pemUg
Y29tcGFyaXNvbgorICAgICAgICBhZ2FpbnQgdGhlIHN0cmluZyAibm9uZSI7IGxhdGVyIG1pZ2h0
IGJlIGdvb2QgdG8gY2xlYW4gb3V0IHRoYXQgc3BlY2lhbCBjYXNlLgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGVhYmxlOjp1cGRhdGVDU1NBbmltYXRpb25zIGNvbnN0KTogRGl0dG8uCisKIDIwMjEt
MDYtMDUgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAg
W21hY09TXSBNb3ZlIERhdGFEZXRlY3RvcnMgc29mdGxpbmtpbmcgaW4gRGF0YURldGVjdG9yc1NQ
SS5oIG91dCBpbnRvIGEgc2VwYXJhdGUgUEFMIGhlYWRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYW5pbWF0aW9uL0NTU0FuaW1hdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRp
b24vQ1NTQW5pbWF0aW9uLmNwcAppbmRleCAwZGM5YWFkNzczMTNiNzA4M2JjZTI2M2JhZTY5NWM1
YjE3ZDNlNzRmLi4zMTNmMGRjODQ5ZThmY2ZhNWQxMjMyYWM5ZTA4ODljMWUyZjYyZWMyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTQW5pbWF0aW9uLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTQW5pbWF0aW9uLmNwcApAQCAtNDgsNyArNDgsNyBA
QCBSZWY8Q1NTQW5pbWF0aW9uPiBDU1NBbmltYXRpb246OmNyZWF0ZShjb25zdCBTdHlsZWFibGUm
IG93bmluZ0VsZW1lbnQsIGNvbnN0IEFuaQogCiBDU1NBbmltYXRpb246OkNTU0FuaW1hdGlvbihj
b25zdCBTdHlsZWFibGUmIGVsZW1lbnQsIGNvbnN0IEFuaW1hdGlvbiYgYmFja2luZ0FuaW1hdGlv
bikKICAgICA6IERlY2xhcmF0aXZlQW5pbWF0aW9uKGVsZW1lbnQsIGJhY2tpbmdBbmltYXRpb24p
Ci0gICAgLCBtX2FuaW1hdGlvbk5hbWUoYmFja2luZ0FuaW1hdGlvbi5uYW1lKCkpCisgICAgLCBt
X2FuaW1hdGlvbk5hbWUoYmFja2luZ0FuaW1hdGlvbi5uYW1lKCkuc3RyaW5nKQogewogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuY3BwIGIv
U291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcAppbmRleCBkN2IzZDk2
YmZjOGY0ZmFhZThjOWIzYjgzODA2MzRhNzhjZjIzYTA4Li5iZTE3MmFjYWNlZjhmMzUwZjM5OTJj
N2ExYTZjYzFhNTM3OTQ2MDY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24v
S2V5ZnJhbWVFZmZlY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFt
ZUVmZmVjdC5jcHAKQEAgLTEwMTksNyArMTAxOSw3IEBAIHZvaWQgS2V5ZnJhbWVFZmZlY3Q6OmNv
bXB1dGVDU1NBbmltYXRpb25CbGVuZGluZ0tleWZyYW1lcyhjb25zdCBSZW5kZXJTdHlsZSYgdW5h
CiAgICAgYXV0byBjc3NBbmltYXRpb24gPSBkb3duY2FzdDxDU1NBbmltYXRpb24+KGFuaW1hdGlv
bigpKTsKICAgICBhdXRvJiBiYWNraW5nQW5pbWF0aW9uID0gY3NzQW5pbWF0aW9uLT5iYWNraW5n
QW5pbWF0aW9uKCk7CiAKLSAgICBLZXlmcmFtZUxpc3Qga2V5ZnJhbWVMaXN0KGJhY2tpbmdBbmlt
YXRpb24ubmFtZSgpKTsKKyAgICBLZXlmcmFtZUxpc3Qga2V5ZnJhbWVMaXN0KGJhY2tpbmdBbmlt
YXRpb24ubmFtZSgpLnN0cmluZyk7CiAgICAgaWYgKGF1dG8qIHN0eWxlU2NvcGUgPSBTdHlsZTo6
U2NvcGU6OmZvck9yZGluYWwoKm1fdGFyZ2V0LCBiYWNraW5nQW5pbWF0aW9uLm5hbWVTdHlsZVNj
b3BlT3JkaW5hbCgpKSkKICAgICAgICAgc3R5bGVTY29wZS0+cmVzb2x2ZXIoKS5rZXlmcmFtZVN0
eWxlc0ZvckFuaW1hdGlvbigqbV90YXJnZXQsICZ1bmFuaW1hdGVkU3R5bGUsIHBhcmVudEVsZW1l
bnRTdHlsZSwga2V5ZnJhbWVMaXN0KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
Q29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAppbmRleCBhNTBlZGZlMmNlY2MyZmU5OTQ1MDFh
NzAzN2I2ZDAyYTZlMjczZmU0Li40MGM0YzQ1MjI5NDA0NGU1NGEyOWYyM2FiYzZkYTZlNDNiZWIy
ODU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xh
cmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xh
cmF0aW9uLmNwcApAQCAtODgwLDcgKzg4MCw3IEBAIHZvaWQgT3JkZXJlZE5hbWVkTGluZXNDb2xs
ZWN0b3I6OmFwcGVuZExpbmVzKENTU0dyaWRMaW5lTmFtZXNWYWx1ZSYgbGluZU5hbWVzVmFsCiAK
ICAgICBhdXRvJiBjc3NWYWx1ZVBvb2wgPSBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpOwogICAg
IGZvciAoY29uc3QgYXV0byYgbGluZU5hbWUgOiBpdGVyLT52YWx1ZSkKLSAgICAgICAgbGluZU5h
bWVzVmFsdWUuYXBwZW5kKGNzc1ZhbHVlUG9vbC5jcmVhdGVWYWx1ZShsaW5lTmFtZSwgQ1NTVW5p
dFR5cGU6OkNTU19TVFJJTkcpKTsKKyAgICAgICAgbGluZU5hbWVzVmFsdWUuYXBwZW5kKGNzc1Zh
bHVlUG9vbC5jcmVhdGVDdXN0b21JZGVudChsaW5lTmFtZSkpOwogfQogCiB2b2lkIE9yZGVyZWRO
YW1lZExpbmVzQ29sbGVjdG9yOjpjb2xsZWN0TGluZU5hbWVzRm9ySW5kZXgoQ1NTR3JpZExpbmVO
YW1lc1ZhbHVlJiBsaW5lTmFtZXNWYWx1ZSwgdW5zaWduZWQgaSkgY29uc3QKQEAgLTEwNDEsNyAr
MTA0MSw3IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yR3JpZFBvc2l0aW9uKGNvbnN0
IEdyaWRQb3NpdGlvbiYgcG9zaXRpb24pCiAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2wuY3Jl
YXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlQXV0byk7CiAKICAgICBpZiAocG9zaXRpb24uaXNO
YW1lZEdyaWRBcmVhKCkpCi0gICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2wuY3JlYXRlVmFsdWUo
cG9zaXRpb24ubmFtZWRHcmlkTGluZSgpLCBDU1NVbml0VHlwZTo6Q1NTX1NUUklORyk7CisgICAg
ICAgIHJldHVybiBjc3NWYWx1ZVBvb2wuY3JlYXRlQ3VzdG9tSWRlbnQocG9zaXRpb24ubmFtZWRH
cmlkTGluZSgpKTsKIAogICAgIGF1dG8gbGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VT
ZXBhcmF0ZWQoKTsKICAgICBpZiAocG9zaXRpb24uaXNTcGFuKCkpIHsKQEAgLTEwNTEsNyArMTA1
MSw3IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yR3JpZFBvc2l0aW9uKGNvbnN0IEdy
aWRQb3NpdGlvbiYgcG9zaXRpb24pCiAgICAgICAgIGxpc3QtPmFwcGVuZChjc3NWYWx1ZVBvb2wu
Y3JlYXRlVmFsdWUocG9zaXRpb24uaW50ZWdlclBvc2l0aW9uKCksIENTU1VuaXRUeXBlOjpDU1Nf
TlVNQkVSKSk7CiAKICAgICBpZiAoIXBvc2l0aW9uLm5hbWVkR3JpZExpbmUoKS5pc051bGwoKSkK
LSAgICAgICAgbGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbC5jcmVhdGVWYWx1ZShwb3NpdGlvbi5u
YW1lZEdyaWRMaW5lKCksIENTU1VuaXRUeXBlOjpDU1NfU1RSSU5HKSk7CisgICAgICAgIGxpc3Qt
PmFwcGVuZChjc3NWYWx1ZVBvb2wuY3JlYXRlQ3VzdG9tSWRlbnQocG9zaXRpb24ubmFtZWRHcmlk
TGluZSgpKSk7CiAgICAgcmV0dXJuIGxpc3Q7CiB9CiAKQEAgLTEwNjMsOSArMTA2Myw5IEBAIHN0
YXRpYyBSZWY8Q1NTVmFsdWU+IGNyZWF0ZVRyYW5zaXRpb25Qcm9wZXJ0eVZhbHVlKGNvbnN0IEFu
aW1hdGlvbiYgYW5pbWF0aW9uKQogICAgIGNhc2UgQW5pbWF0aW9uOjpUcmFuc2l0aW9uTW9kZTo6
QWxsOgogICAgICAgICByZXR1cm4gQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVJZGVu
dGlmaWVyVmFsdWUoQ1NTVmFsdWVBbGwpOwogICAgIGNhc2UgQW5pbWF0aW9uOjpUcmFuc2l0aW9u
TW9kZTo6U2luZ2xlUHJvcGVydHk6Ci0gICAgICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6OnNpbmds
ZXRvbigpLmNyZWF0ZVZhbHVlKGdldFByb3BlcnR5TmFtZVN0cmluZyhhbmltYXRpb24ucHJvcGVy
dHkoKS5pZCksIENTU1VuaXRUeXBlOjpDU1NfU1RSSU5HKTsKKyAgICAgICAgcmV0dXJuIENTU1Zh
bHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlQ3VzdG9tSWRlbnQoZ2V0UHJvcGVydHlOYW1lU3Ry
aW5nKGFuaW1hdGlvbi5wcm9wZXJ0eSgpLmlkKSk7CiAgICAgY2FzZSBBbmltYXRpb246OlRyYW5z
aXRpb25Nb2RlOjpVbmtub3duUHJvcGVydHk6Ci0gICAgICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6
OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKGFuaW1hdGlvbi51bmtub3duUHJvcGVydHkoKSwgQ1NT
VW5pdFR5cGU6OkNTU19TVFJJTkcpOworICAgICAgICByZXR1cm4gQ1NTVmFsdWVQb29sOjpzaW5n
bGV0b24oKS5jcmVhdGVDdXN0b21JZGVudChhbmltYXRpb24udW5rbm93blByb3BlcnR5KCkpOwog
ICAgIH0KICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICByZXR1cm4gQ1NTVmFsdWVQb29s
OjpzaW5nbGV0b24oKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25lKTsKQEAgLTE3
NjEsNyArMTc2MSw3IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IGNvdW50ZXJUb0NTU1ZhbHVlKGNv
bnN0IFJlbmRlclN0eWxlJiBzdHlsZSwgQ1NTUHJvcGVydHlJRCBwCiAgICAgYXV0byYgY3NzVmFs
dWVQb29sID0gQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKTsKICAgICBhdXRvIGxpc3QgPSBDU1NW
YWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7CiAgICAgZm9yIChhdXRvJiBrZXlWYWx1
ZSA6ICptYXApIHsKLSAgICAgICAgbGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbC5jcmVhdGVWYWx1
ZShrZXlWYWx1ZS5rZXksIENTU1VuaXRUeXBlOjpDU1NfU1RSSU5HKSk7CisgICAgICAgIGxpc3Qt
PmFwcGVuZChjc3NWYWx1ZVBvb2wuY3JlYXRlQ3VzdG9tSWRlbnQoa2V5VmFsdWUua2V5KSk7CiAg
ICAgICAgIGRvdWJsZSBudW1iZXIgPSAocHJvcGVydHlJRCA9PSBDU1NQcm9wZXJ0eUNvdW50ZXJJ
bmNyZW1lbnQgPyBrZXlWYWx1ZS52YWx1ZS5pbmNyZW1lbnRWYWx1ZSA6IGtleVZhbHVlLnZhbHVl
LnJlc2V0VmFsdWUpLnZhbHVlX29yKDApOwogICAgICAgICBsaXN0LT5hcHBlbmQoY3NzVmFsdWVQ
b29sLmNyZWF0ZVZhbHVlKG51bWJlciwgQ1NTVW5pdFR5cGU6OkNTU19OVU1CRVIpKTsKICAgICB9
CkBAIC0zMDQ2LDEyICszMDQ2LDEyIEBAIFJlZlB0cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4
dHJhY3Rvcjo6dmFsdWVGb3JQcm9wZXJ0eUluU3R5bGUoY29uc3QgUmVuZGVyU3R5CiAgICAgICAg
ICAgICByZXR1cm4gY3NzVmFsdWVQb29sLmNyZWF0ZVZhbHVlKHN0eWxlLmxpc3RTdHlsZVBvc2l0
aW9uKCkpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5TGlzdFN0eWxlVHlwZToKICAgICAgICAg
ICAgIGlmIChzdHlsZS5saXN0U3R5bGVUeXBlKCkgPT0gTGlzdFN0eWxlVHlwZTo6U3RyaW5nKQot
ICAgICAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2wuY3JlYXRlVmFsdWUoc3R5bGUubGlz
dFN0eWxlU3RyaW5nVmFsdWUoKSwgQ1NTVW5pdFR5cGU6OkNTU19TVFJJTkcpOworICAgICAgICAg
ICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2wuY3JlYXRlQ3VzdG9tSWRlbnQoc3R5bGUubGlzdFN0
eWxlU3RyaW5nVmFsdWUoKSk7CiAgICAgICAgICAgICByZXR1cm4gY3NzVmFsdWVQb29sLmNyZWF0
ZVZhbHVlKHN0eWxlLmxpc3RTdHlsZVR5cGUoKSk7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlX
ZWJraXRMb2NhbGU6CiAgICAgICAgICAgICBpZiAoc3R5bGUuc3BlY2lmaWVkTG9jYWxlKCkuaXNO
dWxsKCkpCiAgICAgICAgICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbC5jcmVhdGVJZGVudGlm
aWVyVmFsdWUoQ1NTVmFsdWVBdXRvKTsKLSAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2wu
Y3JlYXRlVmFsdWUoc3R5bGUuc3BlY2lmaWVkTG9jYWxlKCksIENTU1VuaXRUeXBlOjpDU1NfU1RS
SU5HKTsKKyAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2wuY3JlYXRlQ3VzdG9tSWRlbnQo
c3R5bGUuc3BlY2lmaWVkTG9jYWxlKCkpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5TWFyZ2lu
VG9wOgogICAgICAgICAgICAgcmV0dXJuIHpvb21BZGp1c3RlZFBhZGRpbmdPck1hcmdpblBpeGVs
VmFsdWU8JlJlbmRlclN0eWxlOjptYXJnaW5Ub3AsICZSZW5kZXJCb3hNb2RlbE9iamVjdDo6bWFy
Z2luVG9wPihzdHlsZSwgcmVuZGVyZXIpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5TWFyZ2lu
UmlnaHQ6IHsKQEAgLTM0MjMsOCArMzQyMywxMyBAQCBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVk
U3R5bGVFeHRyYWN0b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKGNvbnN0IFJlbmRlclN0eQog
ICAgICAgICAgICAgYXV0byBsaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVDb21tYVNlcGFyYXRl
ZCgpOwogICAgICAgICAgICAgY29uc3QgQW5pbWF0aW9uTGlzdCogdCA9IHN0eWxlLmFuaW1hdGlv
bnMoKTsKICAgICAgICAgICAgIGlmICh0KSB7Ci0gICAgICAgICAgICAgICAgZm9yIChzaXplX3Qg
aSA9IDA7IGkgPCB0LT5zaXplKCk7ICsraSkKLSAgICAgICAgICAgICAgICAgICAgbGlzdC0+YXBw
ZW5kKGNzc1ZhbHVlUG9vbC5jcmVhdGVWYWx1ZSh0LT5hbmltYXRpb24oaSkubmFtZSgpLCBDU1NV
bml0VHlwZTo6Q1NTX1NUUklORykpOworICAgICAgICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAw
OyBpIDwgdC0+c2l6ZSgpOyArK2kpIHsKKyAgICAgICAgICAgICAgICAgICAgYXV0byYgbmFtZSA9
IHQtPmFuaW1hdGlvbihpKS5uYW1lKCk7CisgICAgICAgICAgICAgICAgICAgIGlmIChuYW1lLmlz
SWRlbnRpZmllcikKKyAgICAgICAgICAgICAgICAgICAgICAgIGxpc3QtPmFwcGVuZChjc3NWYWx1
ZVBvb2wuY3JlYXRlQ3VzdG9tSWRlbnQobmFtZS5zdHJpbmcpKTsKKyAgICAgICAgICAgICAgICAg
ICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgbGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9v
bC5jcmVhdGVWYWx1ZShuYW1lLnN0cmluZywgQ1NTVW5pdFR5cGU6OkNTU19TVFJJTkcpKTsKKyAg
ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9IGVsc2UKICAgICAgICAgICAgICAgICBsaXN0
LT5hcHBlbmQoY3NzVmFsdWVQb29sLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUp
KTsKICAgICAgICAgICAgIHJldHVybiBsaXN0OwpAQCAtMzY4Niw3ICszNjkxLDcgQEAgUmVmUHRy
PENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5TdHls
ZShjb25zdCBSZW5kZXJTdHkKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdExpbmVHcmlk
OgogICAgICAgICAgICAgaWYgKHN0eWxlLmxpbmVHcmlkKCkuaXNOdWxsKCkpCiAgICAgICAgICAg
ICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbC5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVO
b25lKTsKLSAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2wuY3JlYXRlVmFsdWUoc3R5bGUu
bGluZUdyaWQoKSwgQ1NTVW5pdFR5cGU6OkNTU19TVFJJTkcpOworICAgICAgICAgICAgcmV0dXJu
IGNzc1ZhbHVlUG9vbC5jcmVhdGVDdXN0b21JZGVudChzdHlsZS5saW5lR3JpZCgpKTsKICAgICAg
ICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdExpbmVTbmFwOgogICAgICAgICAgICAgcmV0dXJuIENT
U1ByaW1pdGl2ZVZhbHVlOjpjcmVhdGUoc3R5bGUubGluZVNuYXAoKSk7CiAgICAgICAgIGNhc2Ug
Q1NTUHJvcGVydHlXZWJraXRMaW5lQWxpZ246CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTQ3VzdG9tSWRlbnRWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3VzdG9t
SWRlbnRWYWx1ZS5jcHAKaW5kZXggMDFlNDhiZGRiYTdiYTNiZTY4NDAzZWE3NTEzZGNmYzU0ODUz
YTNhNS4uODAzNDU1ZWMzNWE5ZGUxNjU3NGMwZmRkMjE1OTY0MGY1NDg4MTQzNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0N1c3RvbUlkZW50VmFsdWUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NDdXN0b21JZGVudFZhbHVlLmNwcApAQCAtMSw2MiArMSw1IEBACi0v
LyBDb3B5cmlnaHQgMjAxNSBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLS8vIENvcHlyaWdodCAoQykgMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0vLwotLy8gUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0vLyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCi0vLyBtZXQ6Ci0vLwotLy8gICAg
KiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAotLy8gbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgotLy8gICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0vLyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0vLyBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0vLyBk
aXN0cmlidXRpb24uCi0vLyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9y
IHRoZSBuYW1lcyBvZiBpdHMKLS8vIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNl
IG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCi0vLyB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotLy8KLS8vIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMK
LS8vICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UCi0vLyBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLS8vIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0vLyBPV05FUiBP
UiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwKLS8vIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QKLS8vIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotLy8gREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0vLyBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCi0vLyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLS8vIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisvKgorICogIENvcHly
aWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKi8KIAotI2lu
Y2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkNTU0N1c3RvbUlkZW50VmFsdWUuaCIKLQotI2lu
Y2x1ZGUgIkNTU01hcmt1cC5oIgotI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4K
LSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewot
Ci1DU1NDdXN0b21JZGVudFZhbHVlOjpDU1NDdXN0b21JZGVudFZhbHVlKGNvbnN0IFN0cmluZyYg
c3RyKQotICAgIDogQ1NTVmFsdWUoQ3VzdG9tSWRlbnRDbGFzcykKLSAgICAsIG1fc3RyaW5nKHN0
cikKLSAgICAsIG1fcHJvcGVydHlJZChDU1NQcm9wZXJ0eUludmFsaWQpIHsgfQotCi1DU1NDdXN0
b21JZGVudFZhbHVlOjpDU1NDdXN0b21JZGVudFZhbHVlKENTU1Byb3BlcnR5SUQgaWQpCi0gICAg
OiBDU1NWYWx1ZShDdXN0b21JZGVudENsYXNzKQotICAgICwgbV9zdHJpbmcoKQotICAgICwgbV9w
cm9wZXJ0eUlkKGlkKQotewotICAgIEFTU0VSVChpc0tub3duUHJvcGVydHlJRCgpKTsKLX0KLQot
Ci1TdHJpbmcgQ1NTQ3VzdG9tSWRlbnRWYWx1ZTo6Y3VzdG9tQ1NTVGV4dCgpIGNvbnN0Ci17Ci0g
ICAgaWYgKGlzS25vd25Qcm9wZXJ0eUlEKCkpCi0gICAgICAgIHJldHVybiBnZXRQcm9wZXJ0eU5h
bWVBdG9tU3RyaW5nKG1fcHJvcGVydHlJZCk7Ci0gICAgU3RyaW5nQnVpbGRlciBidWlsZGVyOwot
ICAgIHNlcmlhbGl6ZUlkZW50aWZpZXIobV9zdHJpbmcsIGJ1aWxkZXIpOwotICAgIHJldHVybiBi
dWlsZGVyLnRvU3RyaW5nKCk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKy8vIFRoaXMg
ZmlsZSBpcyBubyBsb25nZXIgbmVlZGVkIGFuZCB3ZSBjYW4gcmVtb3ZlIGl0IHNvb24uCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3VzdG9tSWRlbnRWYWx1ZS5oIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0N1c3RvbUlkZW50VmFsdWUuaAppbmRleCA0YWJjZjMxZGRhYWZiZGVj
ZWFjNjQyZTA2ZWM3M2Q4ZWY5ODYzNzUwLi5hNjE0MzQ4Mzg5OGZmMWQ2MmI0YjczZTFmYWNjZTRi
NjRkNzU1ZGZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3VzdG9tSWRlbnRW
YWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDdXN0b21JZGVudFZhbHVlLmgKQEAg
LTEsNzIgKzEsNyBAQAotLy8gQ29weXJpZ2h0IDIwMTUgVGhlIENocm9taXVtIEF1dGhvcnMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBDb3B5cmlnaHQgKEMpIDIwMTYgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotLy8KLS8vIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotLy8gbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotLy8g
bWV0OgotLy8KLS8vICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLS8vIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLS8vICAgICogUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotLy8gY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
cgotLy8gaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZQotLy8gZGlzdHJpYnV0aW9uLgotLy8gICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9m
IEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0vLyBjb250cmlidXRvcnMgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotLy8gdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLS8v
Ci0vLyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTCi0vLyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotLy8gTElNSVRFRCBUTywgVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0vLyBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVAotLy8gT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0vLyBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0vLyBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLS8vIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQotLy8gVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotLy8gKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0vLyBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorLyoKKyAqICBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICovCiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiQ1NTUHJvcGVydHlOYW1lcy5o
IgotI2luY2x1ZGUgIkNTU1ZhbHVlLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3Mg
Q1NTQ3VzdG9tSWRlbnRWYWx1ZSA6IHB1YmxpYyBDU1NWYWx1ZSB7Ci1wdWJsaWM6Ci0gICAgc3Rh
dGljIFJlZjxDU1NDdXN0b21JZGVudFZhbHVlPiBjcmVhdGUoY29uc3QgU3RyaW5nJiBzdHIpCi0g
ICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBDU1NDdXN0b21JZGVudFZhbHVlKHN0
cikpOwotICAgIH0KLQotICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhpcyBhbmQgbGF6aWx5IHBhcnNl
IHRoZSBDU1NQcm9wZXJ0eUlEIGluIGlzS25vd25Qcm9wZXJ0eUlEKCkuCi0gICAgc3RhdGljIFJl
ZjxDU1NDdXN0b21JZGVudFZhbHVlPiBjcmVhdGUoQ1NTUHJvcGVydHlJRCBpZCkKLSAgICB7Ci0g
ICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IENTU0N1c3RvbUlkZW50VmFsdWUoaWQpKTsKLSAg
ICB9Ci0KLSAgICBTdHJpbmcgdmFsdWUoKSBjb25zdCB7IEFTU0VSVCghaXNLbm93blByb3BlcnR5
SUQoKSk7IHJldHVybiBtX3N0cmluZzsgfQotICAgIGJvb2wgaXNLbm93blByb3BlcnR5SUQoKSBj
b25zdCB7IHJldHVybiBtX3Byb3BlcnR5SWQgIT0gQ1NTUHJvcGVydHlJbnZhbGlkOyB9Ci0gICAg
Q1NTUHJvcGVydHlJRCB2YWx1ZUFzUHJvcGVydHlJRCgpIGNvbnN0IHsgQVNTRVJUKGlzS25vd25Q
cm9wZXJ0eUlEKCkpOyByZXR1cm4gbV9wcm9wZXJ0eUlkOyB9Ci0KLSAgICBTdHJpbmcgY3VzdG9t
Q1NTVGV4dCgpIGNvbnN0OwotCi0gICAgYm9vbCBlcXVhbHMoY29uc3QgQ1NTQ3VzdG9tSWRlbnRW
YWx1ZSYgb3RoZXIpIGNvbnN0Ci0gICAgewotICAgICAgICByZXR1cm4gaXNLbm93blByb3BlcnR5
SUQoKSA/IG1fcHJvcGVydHlJZCA9PSBvdGhlci5tX3Byb3BlcnR5SWQgOiBtX3N0cmluZyA9PSBv
dGhlci5tX3N0cmluZzsKLSAgICB9Ci0KLXByaXZhdGU6Ci0gICAgQ1NTQ3VzdG9tSWRlbnRWYWx1
ZShjb25zdCBTdHJpbmcmKTsKLSAgICBDU1NDdXN0b21JZGVudFZhbHVlKENTU1Byb3BlcnR5SUQp
OwotCi0gICAgLy8gRklYTUU6IENoYW5nZSB0aGlzIHRvIGFuIEF0b21TdHJpbmcuCi0gICAgU3Ry
aW5nIG1fc3RyaW5nOwotICAgIENTU1Byb3BlcnR5SUQgbV9wcm9wZXJ0eUlkOwotfTsKLQotfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0NTU19WQUxVRShD
U1NDdXN0b21JZGVudFZhbHVlLCBpc0N1c3RvbUlkZW50VmFsdWUoKSkKKy8vIFRoaXMgZmlsZSBp
cyBubyBsb25nZXIgbmVlZGVkIGFuZCB3ZSBjYW4gcmVtb3ZlIGl0IHNvb24uCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTTWFya3VwLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NNYXJrdXAuY3BwCmluZGV4IDVlOThkM2E2MzY3MmUzNzQ2ZDljNmZlOWY5NDQ2ZWY3MzRjOWNm
YzQuLjQ3YWM2YjIzZjg0MWQ0N2RmZTdkODQxMDNkNjVhMWRmMTY2NWY2ZTkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NNYXJrdXAuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NNYXJrdXAuY3BwCkBAIC03OCw5ICs3OCw3IEBAIHN0YXRpYyB2b2lkIHNlcmlhbGl6ZUNo
YXJhY3RlcihVQ2hhcjMyIGMsIFN0cmluZ0J1aWxkZXImIGFwcGVuZFRvKQogCiBzdGF0aWMgdm9p
ZCBzZXJpYWxpemVDaGFyYWN0ZXJBc0NvZGVQb2ludChVQ2hhcjMyIGMsIFN0cmluZ0J1aWxkZXIm
IGFwcGVuZFRvKQogewotICAgIGFwcGVuZFRvLmFwcGVuZCgnXFwnKTsKLSAgICBhcHBlbmRUby5h
cHBlbmQoaGV4KGMsIExvd2VyY2FzZSkpOwotICAgIGFwcGVuZFRvLmFwcGVuZCgnICcpOworICAg
IGFwcGVuZFRvLmFwcGVuZCgnXFwnLCBoZXgoYywgTG93ZXJjYXNlKSwgJyAnKTsKIH0KIAogdm9p
ZCBzZXJpYWxpemVJZGVudGlmaWVyKGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgU3RyaW5nQnVp
bGRlciYgYXBwZW5kVG8sIGJvb2wgc2tpcFN0YXJ0Q2hlY2tzKQpAQCAtMTUwLDE2ICsxNDgsNiBA
QCBTdHJpbmcgc2VyaWFsaXplVVJMKGNvbnN0IFN0cmluZyYgc3RyaW5nKQogICAgIHJldHVybiAi
dXJsKCIgKyBzZXJpYWxpemVTdHJpbmcoc3RyaW5nKSArICIpIjsKIH0KIAotU3RyaW5nIHNlcmlh
bGl6ZUFzU3RyaW5nT3JDdXN0b21JZGVudChjb25zdCBTdHJpbmcmIHN0cmluZykKLXsKLSAgICBp
ZiAoaXNDU1NUb2tlbml6ZXJJZGVudGlmaWVyKHN0cmluZykpIHsKLSAgICAgICAgU3RyaW5nQnVp
bGRlciBidWlsZGVyOwotICAgICAgICBzZXJpYWxpemVJZGVudGlmaWVyKHN0cmluZywgYnVpbGRl
cik7Ci0gICAgICAgIHJldHVybiBidWlsZGVyLnRvU3RyaW5nKCk7Ci0gICAgfQotICAgIHJldHVy
biBzZXJpYWxpemVTdHJpbmcoc3RyaW5nKTsKLX0KLSAgICAKIFN0cmluZyBzZXJpYWxpemVGb250
RmFtaWx5KGNvbnN0IFN0cmluZyYgc3RyaW5nKQogewogICAgIHJldHVybiBpc0NTU1Rva2VuaXpl
cklkZW50aWZpZXIoc3RyaW5nKSA/IHN0cmluZyA6IHNlcmlhbGl6ZVN0cmluZyhzdHJpbmcpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU01hcmt1cC5oIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU01hcmt1cC5oCmluZGV4IDk4NzNiNDBlYWU0NjBmMGY4ZjlmMTllMDMwZDNhMzBk
ZDcxODk1OTguLmZhNjBhYmEzMzVmYTFiN2MwM2QxYzNiMzZlM2MwMGQ0ZmVjNzU3ZjIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NNYXJrdXAuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTTWFya3VwLmgKQEAgLTM1LDggKzM1LDQgQEAgU3RyaW5nIHNlcmlhbGl6ZVN0cmlu
Zyhjb25zdCBTdHJpbmcmKTsKIFN0cmluZyBzZXJpYWxpemVVUkwoY29uc3QgU3RyaW5nJik7CiBT
dHJpbmcgc2VyaWFsaXplRm9udEZhbWlseShjb25zdCBTdHJpbmcmKTsKIAotLy8gRklYTUUtTkVX
UEFSU0VSOiBUaGlzIGh5YnJpZCAiY2hlY2sgZm9yIGJvdGggc3RyaW5nIG9yIGlkZW50IiBmdW5j
dGlvbiBjYW4gYmUgcmVtb3ZlZAotLy8gb25jZSB3ZSBoYXZlIGVuYWJsZWQgQ1NTQ3VzdG9tSWRl
bnRWYWx1ZSBhbmQgQ1NTU3RyaW5nVmFsdWUuCi1TdHJpbmcgc2VyaWFsaXplQXNTdHJpbmdPckN1
c3RvbUlkZW50KGNvbnN0IFN0cmluZyYpOwotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3BwIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmNwcAppbmRleCAxOGVjYTkxZjJlMTY3MWM5
N2I1ZWJkMjg0ZDc1OWU1MTcxYmJiYTU5Li5hZThjYzliOTg3ZTg5ZWUzNDdlMDQ4MzQ1NDcwYTEw
NGQxN2E5NTJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFs
dWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5jcHAKQEAg
LTkzLDcgKzkzLDcgQEAgc3RhdGljIGlubGluZSBib29sIGlzVmFsaWRDU1NVbml0VHlwZUZvckRv
dWJsZUNvbnZlcnNpb24oQ1NTVW5pdFR5cGUgdW5pdFR5cGUpCiAgICAgY2FzZSBDU1NVbml0VHlw
ZTo6Q1NTX0NPVU5URVI6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0NPVU5URVJfTkFNRToK
ICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfRk9OVF9GQU1JTFk6Ci0gICAgY2FzZSBDU1NVbml0
VHlwZTo6Q1NTX0lERU5UOgorICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkN1c3RvbUlkZW50OgogICAg
IGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19QQUlSOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19Q
Uk9QRVJUWV9JRDoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfUVVBRDoKQEAgLTEwNiw2ICsx
MDYsOCBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaXNWYWxpZENTU1VuaXRUeXBlRm9yRG91YmxlQ29u
dmVyc2lvbihDU1NVbml0VHlwZSB1bml0VHlwZSkKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1Nf
VVJJOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19WQUxVRV9JRDoKICAgICAgICAgcmV0dXJu
IGZhbHNlOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19JREVOVDoKKyAgICAgICAgYnJlYWs7
CiAgICAgfQogCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC0xMTgsMTAgKzEyMCwxMCBA
QCBzdGF0aWMgaW5saW5lIGJvb2wgaXNTdHJpbmdUeXBlKENTU1VuaXRUeXBlIHR5cGUpCiB7CiAg
ICAgc3dpdGNoICh0eXBlKSB7CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1NUUklORzoKKyAg
ICBjYXNlIENTU1VuaXRUeXBlOjpDdXN0b21JZGVudDoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpD
U1NfVVJJOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19BVFRSOgogICAgIGNhc2UgQ1NTVW5p
dFR5cGU6OkNTU19DT1VOVEVSX05BTUU6Ci0gICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RJTUVO
U0lPTjoKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0NB
TEM6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0NBTENfUEVSQ0VOVEFHRV9XSVRIX0xFTkdU
SDoKQEAgLTEzMCw2ICsxMzIsNyBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaXNTdHJpbmdUeXBlKENT
U1VuaXRUeXBlIHR5cGUpCiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0NNOgogICAgIGNhc2Ug
Q1NTVW5pdFR5cGU6OkNTU19DT1VOVEVSOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19ERUc6
CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RJTUVOU0lPTjoKICAgICBjYXNlIENTU1VuaXRU
eXBlOjpDU1NfRFBDTToKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfRFBJOgogICAgIGNhc2Ug
Q1NTVW5pdFR5cGU6OkNTU19EUFBYOgpAQCAtMTg4LDcgKzE5MSw5IEBAIHN0YXRpYyBDU1NUZXh0
Q2FjaGUmIGNzc1RleHRDYWNoZSgpCiAKIENTU1VuaXRUeXBlIENTU1ByaW1pdGl2ZVZhbHVlOjpw
cmltaXRpdmVUeXBlKCkgY29uc3QKIHsKLSAgICBpZiAocHJpbWl0aXZlVW5pdFR5cGUoKSA9PSBD
U1NVbml0VHlwZTo6Q1NTX1BST1BFUlRZX0lEIHx8IHByaW1pdGl2ZVVuaXRUeXBlKCkgPT0gQ1NT
VW5pdFR5cGU6OkNTU19WQUxVRV9JRCkKKyAgICAvLyBGSVhNRTogVXNlIGEgc3dpdGNoIHN0YXRl
bWVudCBoZXJlLgorCisgICAgaWYgKHByaW1pdGl2ZVVuaXRUeXBlKCkgPT0gQ1NTVW5pdFR5cGU6
OkNTU19QUk9QRVJUWV9JRCB8fCBwcmltaXRpdmVVbml0VHlwZSgpID09IENTU1VuaXRUeXBlOjpD
U1NfVkFMVUVfSUQgfHwgcHJpbWl0aXZlVW5pdFR5cGUoKSA9PSBDU1NVbml0VHlwZTo6Q3VzdG9t
SWRlbnQpCiAgICAgICAgIHJldHVybiBDU1NVbml0VHlwZTo6Q1NTX0lERU5UOwogCiAgICAgLy8g
V2ViLWV4cG9zZWQgY29udGVudCBleHBlY3RzIGZvbnQgZmFtaWx5IHZhbHVlcyB0byBoYXZlIENT
U1VuaXRUeXBlOjpDU1NfU1RSSU5HIHByaW1pdGl2ZSB0eXBlCkBAIC0yOTUsMTAgKzMwMCw5IEBA
IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShjb25zdCBMZW5ndGgmIGxlbmd0
aCwgY29uc3QgUmVuZGVyU3R5bGUmIHN0CiAgICAgICAgIHNldFByaW1pdGl2ZVVuaXRUeXBlKENT
U1VuaXRUeXBlOjpDU1NfUFgpOwogICAgICAgICBtX3ZhbHVlLm51bSA9IGFkanVzdEZsb2F0Rm9y
QWJzb2x1dGVab29tKGxlbmd0aC52YWx1ZSgpLCBzdHlsZSk7CiAgICAgICAgIHJldHVybjsKLSAg
ICBjYXNlIExlbmd0aFR5cGU6OkNhbGN1bGF0ZWQ6IHsKKyAgICBjYXNlIExlbmd0aFR5cGU6OkNh
bGN1bGF0ZWQ6CiAgICAgICAgIGluaXQoQ1NTQ2FsY1ZhbHVlOjpjcmVhdGUobGVuZ3RoLmNhbGN1
bGF0aW9uVmFsdWUoKSwgc3R5bGUpKTsKICAgICAgICAgcmV0dXJuOwotICAgIH0KICAgICBjYXNl
IExlbmd0aFR5cGU6OlJlbGF0aXZlOgogICAgIGNhc2UgTGVuZ3RoVHlwZTo6VW5kZWZpbmVkOgog
ICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKQEAgLTQzOSwxMyArNDQzLDEzIEBAIHZvaWQg
Q1NTUHJpbWl0aXZlVmFsdWU6OmNsZWFudXAoKQogICAgIGF1dG8gdHlwZSA9IHByaW1pdGl2ZVVu
aXRUeXBlKCk7CiAgICAgc3dpdGNoICh0eXBlKSB7CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NT
X1NUUklORzoKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDdXN0b21JZGVudDoKICAgICBjYXNlIENT
U1VuaXRUeXBlOjpDU1NfVVJJOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19BVFRSOgogICAg
IGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19DT1VOVEVSX05BTUU6CiAgICAgICAgIGlmIChtX3ZhbHVl
LnN0cmluZykKICAgICAgICAgICAgIG1fdmFsdWUuc3RyaW5nLT5kZXJlZigpOwogICAgICAgICBi
cmVhazsKLSAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfRElNRU5TSU9OOgogICAgIGNhc2UgQ1NT
VW5pdFR5cGU6OkNTU19DT1VOVEVSOgogICAgICAgICBtX3ZhbHVlLmNvdW50ZXItPmRlcmVmKCk7
CiAgICAgICAgIGJyZWFrOwpAQCAtNDc5LDYgKzQ4Myw3IEBAIHZvaWQgQ1NTUHJpbWl0aXZlVmFs
dWU6OmNsZWFudXAoKQogICAgICAgICBkZWxldGUgbV92YWx1ZS5jb2xvcjsKICAgICAgICAgbV92
YWx1ZS5jb2xvciA9IG51bGxwdHI7CiAgICAgICAgIGJyZWFrOworICAgIGNhc2UgQ1NTVW5pdFR5
cGU6OkNTU19ESU1FTlNJT046CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX05VTUJFUjoKICAg
ICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfUEVSQ0VOVEFHRToKICAgICBjYXNlIENTU1VuaXRUeXBl
OjpDU1NfRU1TOgpAQCAtNzUxLDE0ICs3NTYsNiBAQCBib29sIENTU1ByaW1pdGl2ZVZhbHVlOjpl
cXVhbEZvckxlbmd0aFJlc29sdXRpb24oY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlQSwgY29ucwog
ICAgIHJldHVybiB0cnVlOwogfQogCi1FeGNlcHRpb25Pcjx2b2lkPiBDU1NQcmltaXRpdmVWYWx1
ZTo6c2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZSwgZG91YmxlKQotewotICAgIC8vIEtlZXBpbmcg
dmFsdWVzIGltbXV0YWJsZSBtYWtlcyBvcHRpbWl6YXRpb25zIGVhc2llciBhbmQgYWxsb3dzIHNo
YXJpbmcgb2YgdGhlIHByaW1pdGl2ZSB2YWx1ZSBvYmplY3RzLgotICAgIC8vIE5vIG90aGVyIGVu
Z2luZSBzdXBwb3J0cyBtdXRhdGluZyBzdHlsZSB0aHJvdWdoIHRoaXMgQVBJLiBDb21wdXRlZCBz
dHlsZSBpcyBhbHdheXMgcmVhZC1vbmx5IGFueXdheS4KLSAgICAvLyBTdXBwb3J0aW5nIHNldHRl
ciB3b3VsZCByZXF1aXJlIG1ha2luZyBwcmltaXRpdmUgdmFsdWUgY29weS1vbi13cml0ZSBhbmQg
dGFraW5nIGNhcmUgb2Ygc3R5bGUgaW52YWxpZGF0aW9uLgotICAgIHJldHVybiBFeGNlcHRpb24g
eyBOb01vZGlmaWNhdGlvbkFsbG93ZWRFcnJvciB9OwotfQotCiBkb3VibGUgQ1NTUHJpbWl0aXZl
VmFsdWU6OmNvbnZlcnNpb25Ub0Nhbm9uaWNhbFVuaXRzU2NhbGVGYWN0b3IoQ1NTVW5pdFR5cGUg
dW5pdFR5cGUpCiB7CiAgICAgZG91YmxlIGZhY3RvciA9IDEuMDsKQEAgLTkwNiwzNiArOTAzLDEx
IEBAIHN0ZDo6b3B0aW9uYWw8ZG91YmxlPiBDU1NQcmltaXRpdmVWYWx1ZTo6ZG91YmxlVmFsdWVJ
bnRlcm5hbChDU1NVbml0VHlwZSByZXF1ZXN0CiAgICAgcmV0dXJuIGNvbnZlcnRlZFZhbHVlOwog
fQogCi1FeGNlcHRpb25Pcjx2b2lkPiBDU1NQcmltaXRpdmVWYWx1ZTo6c2V0U3RyaW5nVmFsdWUo
Q1NTVW5pdFR5cGUsIGNvbnN0IFN0cmluZyYpCi17Ci0gICAgLy8gS2VlcGluZyB2YWx1ZXMgaW1t
dXRhYmxlIG1ha2VzIG9wdGltaXphdGlvbnMgZWFzaWVyIGFuZCBhbGxvd3Mgc2hhcmluZyBvZiB0
aGUgcHJpbWl0aXZlIHZhbHVlIG9iamVjdHMuCi0gICAgLy8gTm8gb3RoZXIgZW5naW5lIHN1cHBv
cnRzIG11dGF0aW5nIHN0eWxlIHRocm91Z2ggdGhpcyBBUEkuIENvbXB1dGVkIHN0eWxlIGlzIGFs
d2F5cyByZWFkLW9ubHkgYW55d2F5LgotICAgIC8vIFN1cHBvcnRpbmcgc2V0dGVyIHdvdWxkIHJl
cXVpcmUgbWFraW5nIHByaW1pdGl2ZSB2YWx1ZSBjb3B5LW9uLXdyaXRlIGFuZCB0YWtpbmcgY2Fy
ZSBvZiBzdHlsZSBpbnZhbGlkYXRpb24uCi0gICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5vTW9kaWZp
Y2F0aW9uQWxsb3dlZEVycm9yIH07Ci19Ci0KLUV4Y2VwdGlvbk9yPFN0cmluZz4gQ1NTUHJpbWl0
aXZlVmFsdWU6OmdldFN0cmluZ1ZhbHVlKCkgY29uc3QKLXsKLSAgICBzd2l0Y2ggKHByaW1pdGl2
ZVVuaXRUeXBlKCkpIHsKLSAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfU1RSSU5HOgotICAgIGNh
c2UgQ1NTVW5pdFR5cGU6OkNTU19BVFRSOgotICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19VUkk6
Ci0gICAgICAgIHJldHVybiBtX3ZhbHVlLnN0cmluZzsKLSAgICBjYXNlIENTU1VuaXRUeXBlOjpD
U1NfRk9OVF9GQU1JTFk6Ci0gICAgICAgIHJldHVybiBTdHJpbmcgeyBtX3ZhbHVlLmZvbnRGYW1p
bHktPmZhbWlseU5hbWUgfTsKLSAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfVkFMVUVfSUQ6Ci0g
ICAgICAgIHJldHVybiBTdHJpbmcgeyB2YWx1ZU5hbWUobV92YWx1ZS52YWx1ZUlEKS5zdHJpbmco
KSB9OwotICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19QUk9QRVJUWV9JRDoKLSAgICAgICAgcmV0
dXJuIFN0cmluZyB7IHByb3BlcnR5TmFtZShtX3ZhbHVlLnByb3BlcnR5SUQpLnN0cmluZygpIH07
Ci0gICAgZGVmYXVsdDoKLSAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRBY2Nlc3NF
cnJvciB9OwotICAgIH0KLX0KLQogU3RyaW5nIENTU1ByaW1pdGl2ZVZhbHVlOjpzdHJpbmdWYWx1
ZSgpIGNvbnN0CiB7CiAgICAgc3dpdGNoIChwcmltaXRpdmVVbml0VHlwZSgpKSB7CiAgICAgY2Fz
ZSBDU1NVbml0VHlwZTo6Q1NTX1NUUklORzoKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDdXN0b21J
ZGVudDoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQVRUUjoKICAgICBjYXNlIENTU1VuaXRU
eXBlOjpDU1NfVVJJOgogICAgICAgICByZXR1cm4gbV92YWx1ZS5zdHJpbmc7CkBAIC05NTUsNiAr
OTI3LDcgQEAgTkVWRVJfSU5MSU5FIFN0cmluZyBDU1NQcmltaXRpdmVWYWx1ZTo6Zm9ybWF0TnVt
YmVyVmFsdWUoU3RyaW5nVmlldyBzdWZmaXgpIGNvbnMKICAgICByZXR1cm4gbWFrZVN0cmluZyht
X3ZhbHVlLm51bSwgc3VmZml4KTsKIH0KIAorLy8gRklYTUU6IFNob3VsZCByZXR1cm4gY29uc3Qg
Y2hhciouCiBTdHJpbmcgQ1NTUHJpbWl0aXZlVmFsdWU6OnVuaXRUeXBlU3RyaW5nKENTU1VuaXRU
eXBlIHVuaXRUeXBlKQogewogICAgIHN3aXRjaCAodW5pdFR5cGUpIHsKQEAgLTk5NSw2ICs5Njgs
NyBAQCBTdHJpbmcgQ1NTUHJpbWl0aXZlVmFsdWU6OnVuaXRUeXBlU3RyaW5nKENTU1VuaXRUeXBl
IHVuaXRUeXBlKQogICAgICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfU1RSSU5HOgogICAgICAg
ICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfVVJJOgogICAgICAgICBjYXNlIENTU1VuaXRUeXBlOjpD
U1NfSURFTlQ6CisgICAgICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkN1c3RvbUlkZW50OgogICAgICAg
ICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQVRUUjoKICAgICAgICAgY2FzZSBDU1NVbml0VHlwZTo6
Q1NTX0NPVU5URVI6CiAgICAgICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19SRUNUOgpAQCAtMTAx
Myw2ICs5ODcsNyBAQCBTdHJpbmcgQ1NTUHJpbWl0aXZlVmFsdWU6OnVuaXRUeXBlU3RyaW5nKENT
U1VuaXRUeXBlIHVuaXRUeXBlKQogICAgICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfUVVJUktZ
X0VNUzoKICAgICAgICAgICAgIHJldHVybiBlbXB0eVN0cmluZygpOwogICAgIH0KKyAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKICAgICByZXR1cm4gZW1wdHlTdHJpbmcoKTsKIH0KIApAQCAtMTA3
NywxMyArMTA1MiwxNSBAQCBBTFdBWVNfSU5MSU5FIFN0cmluZyBDU1NQcmltaXRpdmVWYWx1ZTo6
Zm9ybWF0TnVtYmVyRm9yQ3VzdG9tQ1NTVGV4dCgpIGNvbnN0CiAgICAgY2FzZSBDU1NVbml0VHlw
ZTo6Q1NTX1JMSFM6CiAgICAgICAgIHJldHVybiBmb3JtYXROdW1iZXJWYWx1ZSgicmxoIik7CiAg
ICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RJTUVOU0lPTjoKLSAgICAgICAgLy8gRklYTUU6IFdl
IGN1cnJlbnRseSBkb24ndCBoYW5kbGUgQ1NTVW5pdFR5cGU6OkNTU19ESU1FTlNJT04gcHJvcGVy
bHkgYXMgd2UgZG9uJ3Qgc3RvcmUKLSAgICAgICAgLy8gdGhlIGFjdHVhbCBkaW1lbnNpb24sIGp1
c3QgdGhlIG51bWVyaWMgdmFsdWUgYXMgYSBzdHJpbmcuCisgICAgICAgIC8vIEZJWE1FOiBUaGlz
IGlzbid0IGNvcnJlY3QuCisgICAgICAgIHJldHVybiBmb3JtYXROdW1iZXJWYWx1ZSgiIik7CiAg
ICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1NUUklORzoKLSAgICAgICAgLy8gRklNRS1ORVdQQVJT
RVI6IE9uY2Ugd2UgaGF2ZSBDU1NDdXN0b21JZGVudFZhbHVlIGhvb2tlZCB1cCwgdGhpcyBjYW4g
anVzdCBiZQotICAgICAgICAvLyBzZXJpYWxpemVTdHJpbmcsIHNpbmNlIGN1c3RvbSBpZGVudGlm
aWVycyB3b24ndCBiZSB0aGUgc2FtZSB2YWx1ZSBhcyBzdHJpbmdzCi0gICAgICAgIC8vIGFueSBs
b25nZXIuCi0gICAgICAgIHJldHVybiBzZXJpYWxpemVBc1N0cmluZ09yQ3VzdG9tSWRlbnQobV92
YWx1ZS5zdHJpbmcpOworICAgICAgICByZXR1cm4gc2VyaWFsaXplU3RyaW5nKG1fdmFsdWUuc3Ry
aW5nKTsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDdXN0b21JZGVudDogeworICAgICAgICBTdHJp
bmdCdWlsZGVyIGJ1aWxkZXI7CisgICAgICAgIHNlcmlhbGl6ZUlkZW50aWZpZXIobV92YWx1ZS5z
dHJpbmcsIGJ1aWxkZXIpOworICAgICAgICByZXR1cm4gYnVpbGRlci50b1N0cmluZygpOworICAg
IH0KICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfRk9OVF9GQU1JTFk6CiAgICAgICAgIHJldHVy
biBzZXJpYWxpemVGb250RmFtaWx5KG1fdmFsdWUuZm9udEZhbWlseS0+ZmFtaWx5TmFtZSk7CiAg
ICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1VSSToKQEAgLTExOTcsMTMgKzExNzQsMTQgQEAgYm9v
bCBDU1NQcmltaXRpdmVWYWx1ZTo6ZXF1YWxzKGNvbnN0IENTU1ByaW1pdGl2ZVZhbHVlJiBvdGhl
cikgY29uc3QKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfUToKICAgICBjYXNlIENTU1VuaXRU
eXBlOjpDU1NfTEhTOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19STEhTOgorICAgIGNhc2Ug
Q1NTVW5pdFR5cGU6OkNTU19ESU1FTlNJT046CiAgICAgICAgIHJldHVybiBtX3ZhbHVlLm51bSA9
PSBvdGhlci5tX3ZhbHVlLm51bTsKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfUFJPUEVSVFlf
SUQ6CiAgICAgICAgIHJldHVybiBwcm9wZXJ0eU5hbWUobV92YWx1ZS5wcm9wZXJ0eUlEKSA9PSBw
cm9wZXJ0eU5hbWUob3RoZXIubV92YWx1ZS5wcm9wZXJ0eUlEKTsKICAgICBjYXNlIENTU1VuaXRU
eXBlOjpDU1NfVkFMVUVfSUQ6CiAgICAgICAgIHJldHVybiB2YWx1ZU5hbWUobV92YWx1ZS52YWx1
ZUlEKSA9PSB2YWx1ZU5hbWUob3RoZXIubV92YWx1ZS52YWx1ZUlEKTsKLSAgICBjYXNlIENTU1Vu
aXRUeXBlOjpDU1NfRElNRU5TSU9OOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19TVFJJTkc6
CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q3VzdG9tSWRlbnQ6CiAgICAgY2FzZSBDU1NVbml0VHlw
ZTo6Q1NTX1VSSToKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQVRUUjoKICAgICBjYXNlIENT
U1VuaXRUeXBlOjpDU1NfQ09VTlRFUl9OQU1FOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZl
VmFsdWUuaAppbmRleCBlYzVmNjU1ZjRjOWVmZDc2NzA3MTgxNmEyNGE4NTZhNjlhY2QzMzNiLi4x
NzE3NWYyODc5NDNlY2E4NjBkZjQ4ZWIxNTYwY2EyMmZkZDY4Zjg1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUHJpbWl0aXZlVmFsdWUuaApAQCAtNzgsMTQgKzc4LDEwIEBAIHRlbXBsYXRlPD4gaW5s
aW5lIGZsb2F0IHJvdW5kRm9ySW1wcmVjaXNlQ29udmVyc2lvbihkb3VibGUgdmFsdWUpCiAKIGNs
YXNzIENTU1ByaW1pdGl2ZVZhbHVlIGZpbmFsIDogcHVibGljIENTU1ZhbHVlIHsKIHB1YmxpYzoK
LQotICAgIHN0YXRpYyBib29sIGlzRm9udFJlbGF0aXZlTGVuZ3RoKENTU1VuaXRUeXBlKTsKLSAg
ICBzdGF0aWMgYm9vbCBpc0xlbmd0aChDU1NVbml0VHlwZSk7Ci0gICAgc3RhdGljIGJvb2wgaXNS
ZXNvbHV0aW9uKENTU1VuaXRUeXBlKTsKLSAgICBzdGF0aWMgYm9vbCBpc1ZpZXdwb3J0UGVyY2Vu
dGFnZUxlbmd0aChDU1NVbml0VHlwZSB0eXBlKSB7IHJldHVybiB0eXBlID49IENTU1VuaXRUeXBl
OjpDU1NfVlcgJiYgdHlwZSA8PSBDU1NVbml0VHlwZTo6Q1NTX1ZNQVg7IH0KKyAgICBzdGF0aWMg
Y29uc3RleHByIGJvb2wgaXNMZW5ndGgoQ1NTVW5pdFR5cGUpOwogICAgIHN0YXRpYyBkb3VibGUg
Y29tcHV0ZURlZ3JlZXMoQ1NTVW5pdFR5cGUsIGRvdWJsZSBhbmdsZSk7CiAKLSAgICAvLyBGSVhN
RTogU29tZSBvZiB0aGVzZSB1c2UgcHJpbWl0aXZlVW5pdFR5cGUoKSBhbmQgc29tZSB1c2UgcHJp
bWl0aXZlVHlwZSgpLiBUaG9zZSB0aGF0IHVzZSBwcmltaXRpdmVVbml0VHlwZSgpIGFyZSBicm9r
ZW4gd2l0aCBjYWxjKCkuCisgICAgLy8gRklYTUU6IFNvbWUgb2YgdGhlc2UgdXNlIHByaW1pdGl2
ZVVuaXRUeXBlKCkgYW5kIHNvbWUgdXNlIHByaW1pdGl2ZVR5cGUoKS4gTWFueSB0aGF0IHVzZSBw
cmltaXRpdmVVbml0VHlwZSgpIGFyZSBsaWtlbHkgYnJva2VuIHdpdGggY2FsYygpLgogICAgIGJv
b2wgaXNBbmdsZSgpIGNvbnN0IHsgcmV0dXJuIHVuaXRDYXRlZ29yeShwcmltaXRpdmVUeXBlKCkp
ID09IENTU1VuaXRDYXRlZ29yeTo6QW5nbGU7IH0KICAgICBib29sIGlzQXR0cigpIGNvbnN0IHsg
cmV0dXJuIHByaW1pdGl2ZVVuaXRUeXBlKCkgPT0gQ1NTVW5pdFR5cGU6OkNTU19BVFRSOyB9CiAg
ICAgYm9vbCBpc0NvdW50ZXIoKSBjb25zdCB7IHJldHVybiBwcmltaXRpdmVVbml0VHlwZSgpID09
IENTU1VuaXRUeXBlOjpDU1NfQ09VTlRFUjsgfQpAQCAtMTIwLDYgKzExNiw3IEBAIHB1YmxpYzoK
ICAgICBib29sIGlzVmlld3BvcnRQZXJjZW50YWdlTWluKCkgY29uc3QgeyByZXR1cm4gcHJpbWl0
aXZlVW5pdFR5cGUoKSA9PSBDU1NVbml0VHlwZTo6Q1NTX1ZNSU47IH0KICAgICBib29sIGlzVmFs
dWVJRCgpIGNvbnN0IHsgcmV0dXJuIHByaW1pdGl2ZVVuaXRUeXBlKCkgPT0gQ1NTVW5pdFR5cGU6
OkNTU19WQUxVRV9JRDsgfQogICAgIGJvb2wgaXNGbGV4KCkgY29uc3QgeyByZXR1cm4gcHJpbWl0
aXZlVHlwZSgpID09IENTU1VuaXRUeXBlOjpDU1NfRlI7IH0KKyAgICBib29sIGlzQ3VzdG9tSWRl
bnQoKSBjb25zdCB7IHJldHVybiBwcmltaXRpdmVVbml0VHlwZSgpID09IENTU1VuaXRUeXBlOjpD
dXN0b21JZGVudDsgfQogCiAgICAgc3RhdGljIFJlZjxDU1NQcmltaXRpdmVWYWx1ZT4gY3JlYXRl
SWRlbnRpZmllcihDU1NWYWx1ZUlEIHZhbHVlSUQpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgQ1NT
UHJpbWl0aXZlVmFsdWUodmFsdWVJRCkpOyB9CiAgICAgc3RhdGljIFJlZjxDU1NQcmltaXRpdmVW
YWx1ZT4gY3JlYXRlSWRlbnRpZmllcihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQpIHsgcmV0dXJu
IGFkb3B0UmVmKCpuZXcgQ1NTUHJpbWl0aXZlVmFsdWUocHJvcGVydHlJRCkpOyB9CkBAIC0xMzUs
MTEgKzEzMiw4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgY2xlYW51cCgpOwogCi0gICAgV0VCQ09S
RV9FWFBPUlQgQ1NTVW5pdFR5cGUgcHJpbWl0aXZlVHlwZSgpIGNvbnN0OwotICAgIFdFQkNPUkVf
RVhQT1JUIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGUgLCBkb3Vi
bGUpOwotICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9yPGZsb2F0PiBnZXRGbG9hdFZhbHVl
KENTU1VuaXRUeXBlKSBjb25zdDsKLSAgICBXRUJDT1JFX0VYUE9SVCBFeGNlcHRpb25Pcjx2b2lk
PiBzZXRTdHJpbmdWYWx1ZShDU1NVbml0VHlwZSwgY29uc3QgU3RyaW5nJik7Ci0gICAgV0VCQ09S
RV9FWFBPUlQgRXhjZXB0aW9uT3I8U3RyaW5nPiBnZXRTdHJpbmdWYWx1ZSgpIGNvbnN0OworICAg
IENTU1VuaXRUeXBlIHByaW1pdGl2ZVR5cGUoKSBjb25zdDsKKyAgICBFeGNlcHRpb25PcjxmbG9h
dD4gZ2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZSkgY29uc3Q7CiAKICAgICBkb3VibGUgY29tcHV0
ZURlZ3JlZXMoKSBjb25zdDsKICAgICAKQEAgLTE1Miw2ICsxNDYsNyBAQCBwdWJsaWM6CiAgICAg
Ym9vbCBjb252ZXJ0aW5nVG9MZW5ndGhSZXF1aXJlc05vbk51bGxTdHlsZShpbnQgbGVuZ3RoQ29u
dmVyc2lvbikgY29uc3Q7CiAKICAgICBkb3VibGUgZG91YmxlVmFsdWUoQ1NTVW5pdFR5cGUpIGNv
bnN0OworCiAgICAgLy8gSXQncyB1c3VhbGx5IHdyb25nIHRvIGNhbGwgdGhpczsgaXQgY2FuIHRy
aWdnZXIgdHlwZSBjb252ZXJzaW9uIGluIGNhbGMgd2l0aG91dCBzdWZmaWNpZW50IGNvbnRleHQg
dG8gcmVzb2x2ZSByZWxhdGl2ZSBsZW5ndGggdW5pdHMuCiAgICAgZG91YmxlIGRvdWJsZVZhbHVl
KCkgY29uc3Q7CiAKQEAgLTI0Niw2ICsyNDEsMTAgQEAgcHJpdmF0ZToKICAgICBBTFdBWVNfSU5M
SU5FIFN0cmluZyBmb3JtYXROdW1iZXJGb3JDdXN0b21DU1NUZXh0KCkgY29uc3Q7CiAgICAgTkVW
RVJfSU5MSU5FIFN0cmluZyBmb3JtYXROdW1iZXJWYWx1ZShTdHJpbmdWaWV3KSBjb25zdDsKIAor
ICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCBpc0ZvbnRSZWxhdGl2ZUxlbmd0aChDU1NVbml0VHlw
ZSk7CisgICAgc3RhdGljIGNvbnN0ZXhwciBib29sIGlzUmVzb2x1dGlvbihDU1NVbml0VHlwZSk7
CisgICAgc3RhdGljIGNvbnN0ZXhwciBib29sIGlzVmlld3BvcnRQZXJjZW50YWdlTGVuZ3RoKENT
U1VuaXRUeXBlIHR5cGUpIHsgcmV0dXJuIHR5cGUgPj0gQ1NTVW5pdFR5cGU6OkNTU19WVyAmJiB0
eXBlIDw9IENTU1VuaXRUeXBlOjpDU1NfVk1BWDsgfQorCiAgICAgdW5pb24gewogICAgICAgICBD
U1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQ7CiAgICAgICAgIENTU1ZhbHVlSUQgdmFsdWVJRDsKQEAg
LTI2Miw3ICsyNjEsNyBAQCBwcml2YXRlOgogICAgIH0gbV92YWx1ZTsKIH07CiAKLWlubGluZSBi
b29sIENTU1ByaW1pdGl2ZVZhbHVlOjppc0ZvbnRSZWxhdGl2ZUxlbmd0aChDU1NVbml0VHlwZSB0
eXBlKQorY29uc3RleHByIGJvb2wgQ1NTUHJpbWl0aXZlVmFsdWU6OmlzRm9udFJlbGF0aXZlTGVu
Z3RoKENTU1VuaXRUeXBlIHR5cGUpCiB7CiAgICAgcmV0dXJuIHR5cGUgPT0gQ1NTVW5pdFR5cGU6
OkNTU19FTVMKICAgICAgICAgfHwgdHlwZSA9PSBDU1NVbml0VHlwZTo6Q1NTX0VYUwpAQCAtMjcz
LDcgKzI3Miw3IEBAIGlubGluZSBib29sIENTU1ByaW1pdGl2ZVZhbHVlOjppc0ZvbnRSZWxhdGl2
ZUxlbmd0aChDU1NVbml0VHlwZSB0eXBlKQogICAgICAgICB8fCB0eXBlID09IENTU1VuaXRUeXBl
OjpDU1NfUVVJUktZX0VNUzsKIH0KIAotaW5saW5lIGJvb2wgQ1NTUHJpbWl0aXZlVmFsdWU6Omlz
TGVuZ3RoKENTU1VuaXRUeXBlIHR5cGUpCitjb25zdGV4cHIgYm9vbCBDU1NQcmltaXRpdmVWYWx1
ZTo6aXNMZW5ndGgoQ1NTVW5pdFR5cGUgdHlwZSkKIHsKICAgICByZXR1cm4gKHR5cGUgPj0gQ1NT
VW5pdFR5cGU6OkNTU19FTVMgJiYgdHlwZSA8PSBDU1NVbml0VHlwZTo6Q1NTX1BDKQogICAgICAg
ICB8fCB0eXBlID09IENTU1VuaXRUeXBlOjpDU1NfUkVNUwpAQCAtMjg1LDcgKzI4NCw3IEBAIGlu
bGluZSBib29sIENTU1ByaW1pdGl2ZVZhbHVlOjppc0xlbmd0aChDU1NVbml0VHlwZSB0eXBlKQog
ICAgICAgICB8fCB0eXBlID09IENTU1VuaXRUeXBlOjpDU1NfUVVJUktZX0VNUzsKIH0KIAotaW5s
aW5lIGJvb2wgQ1NTUHJpbWl0aXZlVmFsdWU6OmlzUmVzb2x1dGlvbihDU1NVbml0VHlwZSB0eXBl
KQorY29uc3RleHByIGJvb2wgQ1NTUHJpbWl0aXZlVmFsdWU6OmlzUmVzb2x1dGlvbihDU1NVbml0
VHlwZSB0eXBlKQogewogICAgIHJldHVybiB0eXBlID49IENTU1VuaXRUeXBlOjpDU1NfRFBQWCAm
JiB0eXBlIDw9IENTU1VuaXRUeXBlOjpDU1NfRFBDTTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0
eWxlTWFwLmNwcAppbmRleCAwZTM5N2ZiZDkwZmJhNWJmNmQxOTg0OTc0NmE2OTcyZDYwZGZiZTEw
Li5iZmQxYWZmYWI0YzU0YjZlNWE4NzEzMzEyOTZhNjgyMzEwMzQ3Y2FhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1hcC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1RvU3R5bGVNYXAuY3BwCkBAIC00MDQsNyArNDA0LDcgQEAgdm9pZCBDU1NUb1N0eWxl
TWFwOjptYXBBbmltYXRpb25OYW1lKEFuaW1hdGlvbiYgbGF5ZXIsIGNvbnN0IENTU1ZhbHVlJiB2
YWx1ZSkKICAgICBpZiAocHJpbWl0aXZlVmFsdWUudmFsdWVJRCgpID09IENTU1ZhbHVlTm9uZSkK
ICAgICAgICAgbGF5ZXIuc2V0SXNOb25lQW5pbWF0aW9uKHRydWUpOwogICAgIGVsc2UKLSAgICAg
ICAgbGF5ZXIuc2V0TmFtZShwcmltaXRpdmVWYWx1ZS5zdHJpbmdWYWx1ZSgpLCBtX2J1aWxkZXJT
dGF0ZS5zdHlsZVNjb3BlT3JkaW5hbCgpKTsKKyAgICAgICAgbGF5ZXIuc2V0TmFtZSh7IHByaW1p
dGl2ZVZhbHVlLnN0cmluZ1ZhbHVlKCksIHByaW1pdGl2ZVZhbHVlLmlzQ3VzdG9tSWRlbnQoKSB9
LCBtX2J1aWxkZXJTdGF0ZS5zdHlsZVNjb3BlT3JkaW5hbCgpKTsKIH0KIAogdm9pZCBDU1NUb1N0
eWxlTWFwOjptYXBBbmltYXRpb25QbGF5U3RhdGUoQW5pbWF0aW9uJiBsYXllciwgY29uc3QgQ1NT
VmFsdWUmIHZhbHVlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1VuaXRzLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NVbml0cy5jcHAKaW5kZXggMWQ0ZDIxMTc5NDdmY2U2
NGZlYzM0NzM0MzAwM2IwMGI2YzczYzJmZi4uZDk2YzkxZGViMDFkZTk1ZGE2ZGRiMGU2ZjU1OWE1
NDY0NTBiNjliMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1VuaXRzLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVW5pdHMuY3BwCkBAIC0xMjksNiArMTI5LDcgQEAg
VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywgQ1NTVW5pdFR5cGUgdW5pdFR5
cGUpCiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1NUUklORzogdHMgPDwgInN0cmluZyI7IGJy
ZWFrOwogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19VUkk6IHRzIDw8ICJ1cmkiOyBicmVhazsK
ICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfSURFTlQ6IHRzIDw8ICJpZGVudCI7IGJyZWFrOwor
ICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkN1c3RvbUlkZW50OiB0cyA8PCAiY3VzdG9tLWlkZW50Ijsg
YnJlYWs7CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0FUVFI6IHRzIDw8ICJhdHRyIjsgYnJl
YWs7CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0NPVU5URVI6IHRzIDw8ICJjb3VudGVyIjsg
YnJlYWs7CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1JFQ1Q6IHRzIDw8ICJyZWN0IjsgYnJl
YWs7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVW5pdHMuaCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NVbml0cy5oCmluZGV4IGYwNjMzZDA4MzA2Y2RjNGYxYjAwMWM1NGYyMjMz
ZDhjZjhjOWVjZjcuLjUzYmJkMmYwMGZiZDllMTVmYjhiODJhYzgzZDMxZDExYjdjZjJjNGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NVbml0cy5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NVbml0cy5oCkBAIC0yNyw2ICsyNyw4IEBAIGNsYXNzIFRleHRTdHJlYW07CiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorLy8gRklYTUU6IE5vIG5lZWQgdG8gaGFyZC1jb2RlIHRo
ZSBudW1iZXJzIGhlcmUgYW55IG1vcmUsIHNvIHdlIHNob3VsZCByZW1vdmUgdGhlbS4KKy8vIEZJ
WE1FOiBObyBuZWVkIHRvIHVzZSBhbGwgY2FwaXRhbHMgYW5kIGEgQ1NTIHByZWZpeCBvbiBhbGwg
dGhlc2UgbmFtZXMuIFNob3VsZCBmaXggdGhhdC4KIGVudW0gY2xhc3MgQ1NTVW5pdFR5cGUgOiB1
aW50OF90IHsKICAgICBDU1NfVU5LTk9XTiA9IDAsCiAgICAgQ1NTX05VTUJFUiA9IDEsCkBAIC02
NSwxOCArNjcsMTkgQEAgZW51bSBjbGFzcyBDU1NVbml0VHlwZSA6IHVpbnQ4X3QgewogICAgIENT
U19RID0gMzQsCiAgICAgQ1NTX0xIUyA9IDM1LAogICAgIENTU19STEhTID0gMzYsCi0gICAgQ1NT
X1BBSVIgPSAxMDAsIC8vIFdlIGVudmlzaW9uIHRoaXMgYmVpbmcgZXhwb3NlZCBhcyBhIG1lYW5z
IG9mIGdldHRpbmcgY29tcHV0ZWQgc3R5bGUgdmFsdWVzIGZvciBwYWlycyAoYm9yZGVyLXNwYWNp
bmcvcmFkaXVzLCBiYWNrZ3JvdW5kLXBvc2l0aW9uLCBldGMuKQorCisgICAgQ3VzdG9tSWRlbnQs
CisKKyAgICBDU1NfUEFJUiA9IDEwMCwKICAgICBDU1NfVU5JQ09ERV9SQU5HRSA9IDEwMiwKICAg
ICBDU1NfVFVSTiA9IDEwNywKICAgICBDU1NfUkVNUyA9IDEwOCwKICAgICBDU1NfQ0hTID0gMTA5
LAogCi0gICAgLy8gVGhpcyBpcyB1c2VkIGludGVybmFsbHkgZm9yIGNvdW50ZXIgbmFtZXMgKGFz
IG9wcG9zZWQgdG8gY291bnRlciB2YWx1ZXMpCiAgICAgQ1NTX0NPVU5URVJfTkFNRSA9IDExMCwK
IAogICAgIENTU19TSEFQRSA9IDExMSwKIAotICAgIC8vIFVzZWQgYnkgYm9yZGVyIGltYWdlcy4K
ICAgICBDU1NfUVVBRCA9IDExMiwKIAogICAgIENTU19DQUxDID0gMTEzLApAQCAtOTMsNyArOTYs
NyBAQCBlbnVtIGNsYXNzIENTU1VuaXRUeXBlIDogdWludDhfdCB7CiAgICAgLy8gV2hlbiB0aGUg
cXVpcmt5IHZhbHVlIGlzIHVzZWQsIGlmIHlvdSdyZSBpbiBxdWlya3MgbW9kZSwgdGhlIG1hcmdp
biB3aWxsIGNvbGxhcHNlIGF3YXkKICAgICAvLyBpbnNpZGUgYSB0YWJsZSBjZWxsLiBUaGlzIHF1
aXJrIGlzIHNwZWNpZmllZCBpbiB0aGUgSFRNTCBzcGVjIGJ1dCBvdXIgaW1wbCBpcyBkaWZmZXJl
bnQuCiAgICAgQ1NTX1FVSVJLWV9FTVMgPSAxMjAKLSAgICAKKwogICAgIC8vIE5vdGUgdGhhdCBD
U1NWYWx1ZSBhbGxvY2F0ZXMgNyBiaXRzIGZvciBtX3ByaW1pdGl2ZVVuaXRUeXBlLCBzbyB0aGVy
ZSBjYW4gYmUgbm8gdmFsdWUgaGVyZSA+IDEyNy4KIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3Bw
CmluZGV4IDQyZWQ1MmMwNjVkYTA0Zjk4YzE0YThlMGM2ZmE3NDgxMmQxNDJlMzQuLjM1MDE4YjU3
M2JjODEzZTQ2YmMwMmJmYzIzZDhjYjllOGVmZTI2ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmNw
cApAQCAtMzUsNyArMzUsNiBAQAogI2luY2x1ZGUgIkNTU0NvbnRlbnREaXN0cmlidXRpb25WYWx1
ZS5oIgogI2luY2x1ZGUgIkNTU0Nyb3NzZmFkZVZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTQ3Vyc29y
SW1hZ2VWYWx1ZS5oIgotI2luY2x1ZGUgIkNTU0N1c3RvbUlkZW50VmFsdWUuaCIKICNpbmNsdWRl
ICJDU1NDdXN0b21Qcm9wZXJ0eVZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTRmlsdGVySW1hZ2VWYWx1
ZS5oIgogI2luY2x1ZGUgIkNTU0ZvbnRGYWNlU3JjVmFsdWUuaCIKQEAgLTMyNSw4ICszMjQsNiBA
QCBTdHJpbmcgQ1NTVmFsdWU6OmNzc1RleHQoKSBjb25zdAogICAgICAgICByZXR1cm4gZG93bmNh
c3Q8Q1NTQ29udGVudERpc3RyaWJ1dGlvblZhbHVlPigqdGhpcykuY3VzdG9tQ1NTVGV4dCgpOwog
ICAgIGNhc2UgQ3VzdG9tUHJvcGVydHlDbGFzczoKICAgICAgICAgcmV0dXJuIGRvd25jYXN0PENT
U0N1c3RvbVByb3BlcnR5VmFsdWU+KCp0aGlzKS5jdXN0b21DU1NUZXh0KCk7Ci0gICAgY2FzZSBD
dXN0b21JZGVudENsYXNzOgotICAgICAgICByZXR1cm4gZG93bmNhc3Q8Q1NTQ3VzdG9tSWRlbnRW
YWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQoKTsKICAgICBjYXNlIFZhcmlhYmxlUmVmZXJlbmNl
Q2xhc3M6CiAgICAgICAgIHJldHVybiBkb3duY2FzdDxDU1NWYXJpYWJsZVJlZmVyZW5jZVZhbHVl
PigqdGhpcykuY3VzdG9tQ1NTVGV4dCgpOwogICAgIGNhc2UgUGVuZGluZ1N1YnN0aXR1dGlvblZh
bHVlQ2xhc3M6CkBAIC00NzgsOSArNDc1LDYgQEAgdm9pZCBDU1NWYWx1ZTo6ZGVzdHJveSgpCiAg
ICAgY2FzZSBDdXN0b21Qcm9wZXJ0eUNsYXNzOgogICAgICAgICBkZWxldGUgZG93bmNhc3Q8Q1NT
Q3VzdG9tUHJvcGVydHlWYWx1ZT4odGhpcyk7CiAgICAgICAgIHJldHVybjsKLSAgICBjYXNlIEN1
c3RvbUlkZW50Q2xhc3M6Ci0gICAgICAgIGRlbGV0ZSBkb3duY2FzdDxDU1NDdXN0b21JZGVudFZh
bHVlPih0aGlzKTsKLSAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgVmFyaWFibGVSZWZlcmVuY2VD
bGFzczoKICAgICAgICAgZGVsZXRlIGRvd25jYXN0PENTU1ZhcmlhYmxlUmVmZXJlbmNlVmFsdWU+
KHRoaXMpOwogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZS5oCmluZGV4IDFlNjMwNzY3
NGIxZmRhYWI4ZTBmY2U5OTgxOGVjNDQ5MWNhNjI3N2MuLmRhOGYwYjBjNzE5Njk0NDdkZGRhMzAy
NWEyMGRhNjBhN2JlOGM0Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZS5oCkBAIC0xMzYsNyArMTM2LDYg
QEAgSUdOT1JFX0VSUk9ORU9VU19HQ0NfTlVMTF9DSEVDS19XQVJOSU5HU19FTkQKICAgICBib29s
IGlzR3JpZExpbmVOYW1lc1ZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gR3Jp
ZExpbmVOYW1lc0NsYXNzOyB9CiAgICAgYm9vbCBpc1VuaWNvZGVSYW5nZVZhbHVlKCkgY29uc3Qg
eyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gVW5pY29kZVJhbmdlQ2xhc3M7IH0KIAotICAgIGJvb2wg
aXNDdXN0b21JZGVudFZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gQ3VzdG9t
SWRlbnRDbGFzczsgfQogICAgIGJvb2wgaXNWYXJpYWJsZVJlZmVyZW5jZVZhbHVlKCkgY29uc3Qg
eyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gVmFyaWFibGVSZWZlcmVuY2VDbGFzczsgfQogICAgIGJv
b2wgaXNQZW5kaW5nU3Vic3RpdHV0aW9uVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlw
ZSA9PSBQZW5kaW5nU3Vic3RpdHV0aW9uVmFsdWVDbGFzczsgfQogICAgIApAQCAtMjA3LDggKzIw
Niw2IEBAIHByb3RlY3RlZDoKIAogICAgICAgICBDU1NDb250ZW50RGlzdHJpYnV0aW9uQ2xhc3Ms
CiAKLSAgICAgICAgQ3VzdG9tSWRlbnRDbGFzcywKLQogICAgICAgICBDdXN0b21Qcm9wZXJ0eUNs
YXNzLAogICAgICAgICBWYXJpYWJsZVJlZmVyZW5jZUNsYXNzLAogICAgICAgICBQZW5kaW5nU3Vi
c3RpdHV0aW9uVmFsdWVDbGFzcywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NW
YWx1ZUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlTGlzdC5jcHAKaW5kZXgg
MDczZDE0MzRiMDg3M2Q1MDQzZTJhNjZlNjkyMjdiYWZhZGMzZGRiOC4uMDU4NjE5NjUyZDgzZDdm
ZTdiOGY2ZjMzYjFhODdlY2FkZjNkZTJlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ZhbHVlTGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlTGlzdC5j
cHAKQEAgLTg3LDEyICs4Nyw4IEBAIFN0cmluZyBDU1NWYWx1ZUxpc3Q6OmN1c3RvbUNTU1RleHQo
KSBjb25zdAogewogICAgIFN0cmluZ0J1aWxkZXIgcmVzdWx0OwogICAgIGF1dG8gc2VwYXJhdG9y
ID0gc2VwYXJhdG9yQ1NTVGV4dCgpOwotICAgIGZvciAoYXV0byYgdmFsdWUgOiBtX3ZhbHVlcykg
ewotICAgICAgICBpZiAoIXJlc3VsdC5pc0VtcHR5KCkpCi0gICAgICAgICAgICByZXN1bHQuYXBw
ZW5kKHNlcGFyYXRvcik7Ci0gICAgICAgIHJlc3VsdC5hcHBlbmQodmFsdWUuZ2V0KCkuY3NzVGV4
dCgpKTsKLSAgICB9Ci0KKyAgICBmb3IgKGF1dG8mIHZhbHVlIDogbV92YWx1ZXMpCisgICAgICAg
IHJlc3VsdC5hcHBlbmQocmVzdWx0LmlzRW1wdHkoKSA/ICIiX3MgOiBzZXBhcmF0b3IsIHZhbHVl
LmdldCgpLmNzc1RleHQoKSk7CiAgICAgcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVQb29sLmggYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTVmFsdWVQb29sLmgKaW5kZXggYWNkZWM5OTkwNzAwMDg4MjE3OGRmNzJiZmU2
MTAzYThjNjU0NzkxNy4uMWZiMjMxNmVmYzAzMTBhM2JmY2EzODRmMTBjN2RlMDcxZjQxZTllZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlUG9vbC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZVBvb2wuaApAQCAtOTcsNiArOTcsNyBAQCBwdWJsaWM6CiAg
ICAgUmVmPENTU1ByaW1pdGl2ZVZhbHVlPiBjcmVhdGVWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVl
LCBDU1NVbml0VHlwZSB0eXBlKSB7IHJldHVybiBDU1NQcmltaXRpdmVWYWx1ZTo6Y3JlYXRlKHZh
bHVlLCB0eXBlKTsgfQogICAgIFJlZjxDU1NQcmltaXRpdmVWYWx1ZT4gY3JlYXRlVmFsdWUoY29u
c3QgTGVuZ3RoJiB2YWx1ZSwgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKSB7IHJldHVybiBDU1NQ
cmltaXRpdmVWYWx1ZTo6Y3JlYXRlKHZhbHVlLCBzdHlsZSk7IH0KICAgICBSZWY8Q1NTUHJpbWl0
aXZlVmFsdWU+IGNyZWF0ZVZhbHVlKGNvbnN0IExlbmd0aFNpemUmIHZhbHVlLCBjb25zdCBSZW5k
ZXJTdHlsZSYgc3R5bGUpIHsgcmV0dXJuIENTU1ByaW1pdGl2ZVZhbHVlOjpjcmVhdGUodmFsdWUs
IHN0eWxlKTsgfQorICAgIFJlZjxDU1NQcmltaXRpdmVWYWx1ZT4gY3JlYXRlQ3VzdG9tSWRlbnQo
Y29uc3QgU3RyaW5nJiB2YWx1ZSkgeyByZXR1cm4gQ1NTUHJpbWl0aXZlVmFsdWU6OmNyZWF0ZSh2
YWx1ZSwgQ1NTVW5pdFR5cGU6OkN1c3RvbUlkZW50KTsgfQogICAgIHRlbXBsYXRlPHR5cGVuYW1l
IFQ+IHN0YXRpYyBSZWY8Q1NTUHJpbWl0aXZlVmFsdWU+IGNyZWF0ZVZhbHVlKFQmJiB2YWx1ZSkg
eyByZXR1cm4gQ1NTUHJpbWl0aXZlVmFsdWU6OmNyZWF0ZShzdGQ6OmZvcndhcmQ8VD4odmFsdWUp
KTsgfQogCiAgICAgdm9pZCBkcmFpbigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0RlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9E
ZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZS5jcHAKaW5kZXggY2M3NGVmYzc2ZmY0YzNjMjBm
MTMyYjk2ZmUzN2YxMGU3YWMwNTY1MS4uZTNhNDk3NzI5M2Y1MWUyYWY4ZDViNmZhMjE2NTMyNjJl
NzA2NjA5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRDU1NPTVBy
aW1pdGl2ZVZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZENTU09N
UHJpbWl0aXZlVmFsdWUuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxNi0yMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAxNi0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzIsNTQgKzMyLDE0NiBAQAogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAgICAgCi0vLyBGSVhNRTogRm9yIG5vdyB0aGVzZSBzdGlsbCBjYWxsIGludG8gQ1NT
UHJpbWl0aXZlVmFsdWUsIGJ1dCBhcyB3ZSByZWZhY3RvciBpbnRvIHN1YmNsYXNzZXMKLS8vIHN1
Y2ggYXMgU3R5bGVDb3VudGVyVmFsdWUsIFN0eWxlUmVjdFZhbHVlLCBhbmQgU3R5bGVDb2xvclZh
bHVlLCB0aGVzZSBtZXRob2RzIHdpbGwgZ2V0Ci0vLyBtb3JlIGNvbXBsaWNhdGVkLgotCiB1bnNp
Z25lZCBzaG9ydCBEZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZTo6cHJpbWl0aXZlVHlwZSgp
IGNvbnN0CiB7Ci0gICAgcmV0dXJuIHN0YXRpY19jYXN0PHVuc2lnbmVkIHNob3J0PihtX3ZhbHVl
LT5wcmltaXRpdmVUeXBlKCkpOwotfQorICAgIC8vIEZJWE1FOiBTb21lIG9mIHRoZXNlIGFyZSBu
ZXZlciBleHBvc2VkIHRvIHRoZSB3ZWIgYmVjYXVzZSBjb2RlIGVsc2V3aGVyZSBwcmV2ZW50cyBp
dC4gV2UgY2FuIEFTU0VSVF9OT1RfUkVBQ0hFRCBmb3IgdGhvc2UuCisgICAgLy8gRklYTUU6IFNv
bWUgb2YgdGhlc2Ugc2hvdWxkIHJldHVybiBDU1NfVU5LTk9XTiBpbnN0ZWFkIG9mIGhhcmQtY29k
ZWQgbnVtYmVycyBub3QgbWVudGlvbmVkIGluIHRoZSBJREwgZmlsZS4KIAotRXhjZXB0aW9uT3I8
dm9pZD4gRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWU6OnNldEZsb2F0VmFsdWUodW5zaWdu
ZWQgc2hvcnQgdW5pdFR5cGUsIGRvdWJsZSBmbG9hdFZhbHVlKQotewotICAgIHJldHVybiBtX3Zh
bHVlLT5zZXRGbG9hdFZhbHVlKHN0YXRpY19jYXN0PENTU1VuaXRUeXBlPih1bml0VHlwZSksIGZs
b2F0VmFsdWUpOworICAgIHN3aXRjaCAobV92YWx1ZS0+cHJpbWl0aXZlVHlwZSgpKSB7CisgICAg
Y2FzZSBDU1NVbml0VHlwZTo6Q1NTX0FUVFI6ICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVy
biBDU1NfQVRUUjsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQ0FMQzogICAgICAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIDExMzsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQ0FMQ19Q
RVJDRU5UQUdFX1dJVEhfTEVOR1RIOiAgcmV0dXJuIDExNTsKKyAgICBjYXNlIENTU1VuaXRUeXBl
OjpDU1NfQ0FMQ19QRVJDRU5UQUdFX1dJVEhfTlVNQkVSOiAgcmV0dXJuIDExNDsKKyAgICBjYXNl
IENTU1VuaXRUeXBlOjpDU1NfQ0hTOiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDEw
OTsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQ006ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIENTU19DTTsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQ09VTlRFUjogICAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuIENTU19DT1VOVEVSOworICAgIGNhc2UgQ1NTVW5pdFR5
cGU6OkNTU19DT1VOVEVSX05BTUU6ICAgICAgICAgICAgICAgICByZXR1cm4gMTEwOworICAgIGNh
c2UgQ1NTVW5pdFR5cGU6OkNTU19ERUc6ICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4g
Q1NTX0RFRzsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfRElNRU5TSU9OOiAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuIENTU19ESU1FTlNJT047CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NT
X0RQQ006ICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAzMjsKKyAgICBjYXNlIENTU1Vu
aXRUeXBlOjpDU1NfRFBJOiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDMxOworICAg
IGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19EUFBYOiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1
cm4gMzA7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0VNUzogICAgICAgICAgICAgICAgICAg
ICAgICAgIHJldHVybiBDU1NfRU1TOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19FWFM6ICAg
ICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ1NTX0VYUzsKKyAgICBjYXNlIENTU1VuaXRU
eXBlOjpDU1NfRk9OVF9GQU1JTFk6ICAgICAgICAgICAgICAgICAgcmV0dXJuIENTU19TVFJJTkc7
CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0ZSOiAgICAgICAgICAgICAgICAgICAgICAgICAg
IHJldHVybiAzMzsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfR1JBRDogICAgICAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIENTU19HUkFEOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19I
WjogICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ1NTX0haOworICAgIGNhc2UgQ1NT
VW5pdFR5cGU6OkNTU19JREVOVDogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ1NTX0lE
RU5UOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkN1c3RvbUlkZW50OiAgICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gQ1NTX0lERU5UOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19JTjogICAg
ICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ1NTX0lOOworICAgIGNhc2UgQ1NTVW5pdFR5
cGU6OkNTU19LSFo6ICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ1NTX0tIWjsKKyAg
ICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfTEhTOiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0
dXJuIDM1OworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19NTTogICAgICAgICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gQ1NTX01NOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19NUzogICAg
ICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ1NTX01TOworICAgIGNhc2UgQ1NTVW5pdFR5
cGU6OkNTU19OVU1CRVI6ICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ1NTX05VTUJFUjsK
KyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfUEFJUjogICAgICAgICAgICAgICAgICAgICAgICAg
cmV0dXJuIDEwMDsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfUEM6ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIENTU19QQzsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfUEVS
Q0VOVEFHRTogICAgICAgICAgICAgICAgICAgcmV0dXJuIENTU19QRVJDRU5UQUdFOworICAgIGNh
c2UgQ1NTVW5pdFR5cGU6OkNTU19QUk9QRVJUWV9JRDogICAgICAgICAgICAgICAgICByZXR1cm4g
Q1NTX0lERU5UOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19QVDogICAgICAgICAgICAgICAg
ICAgICAgICAgICByZXR1cm4gQ1NTX1BUOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19QWDog
ICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ1NTX1BYOworICAgIGNhc2UgQ1NTVW5p
dFR5cGU6OkNTU19ROiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMzQ7CisgICAg
Y2FzZSBDU1NVbml0VHlwZTo6Q1NTX1FVQUQ6ICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVy
biAxMTI7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1FVSVJLWV9FTVM6ICAgICAgICAgICAg
ICAgICAgIHJldHVybiAxMjA7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1JBRDogICAgICAg
ICAgICAgICAgICAgICAgICAgIHJldHVybiBDU1NfUkFEOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6
OkNTU19SRUNUOiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ1NTX1JFQ1Q7CisgICAg
Y2FzZSBDU1NVbml0VHlwZTo6Q1NTX1JFTVM6ICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVy
biAxMDg7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1JHQkNPTE9SOiAgICAgICAgICAgICAg
ICAgICAgIHJldHVybiBDU1NfUkdCQ09MT1I7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1JM
SFM6ICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAzNjsKKyAgICBjYXNlIENTU1VuaXRU
eXBlOjpDU1NfUzogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIENTU19TOworICAg
IGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19TSEFQRTogICAgICAgICAgICAgICAgICAgICAgICByZXR1
cm4gMTExOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19TVFJJTkc6ICAgICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gQ1NTX1NUUklORzsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfVFVS
TjogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDEwNzsKKyAgICBjYXNlIENTU1VuaXRU
eXBlOjpDU1NfVU5JQ09ERV9SQU5HRTogICAgICAgICAgICAgICAgcmV0dXJuIDEwMjsKKyAgICBj
YXNlIENTU1VuaXRUeXBlOjpDU1NfVU5LTk9XTjogICAgICAgICAgICAgICAgICAgICAgcmV0dXJu
IENTU19VTktOT1dOOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19VUkk6ICAgICAgICAgICAg
ICAgICAgICAgICAgICByZXR1cm4gQ1NTX1VSSTsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1Nf
VkFMVUVfSUQ6ICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIENTU19JREVOVDsKKyAgICBjYXNl
IENTU1VuaXRUeXBlOjpDU1NfVkg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIENT
U19WSDsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfVk1BWDogICAgICAgICAgICAgICAgICAg
ICAgICAgcmV0dXJuIENTU19WTUFYOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19WTUlOOiAg
ICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ1NTX1ZNSU47CisgICAgY2FzZSBDU1NVbml0
VHlwZTo6Q1NTX1ZXOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBDU1NfVlc7Cisg
ICAgfQorCisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIENTU19VTktOT1dO
OwogfQogCiBFeGNlcHRpb25PcjxmbG9hdD4gRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWU6
OmdldEZsb2F0VmFsdWUodW5zaWduZWQgc2hvcnQgdW5pdFR5cGUpIGNvbnN0CiB7Ci0gICAgcmV0
dXJuIG1fdmFsdWUtPmdldEZsb2F0VmFsdWUoc3RhdGljX2Nhc3Q8Q1NTVW5pdFR5cGU+KHVuaXRU
eXBlKSk7Ci19CisgICAgLy8gRklYTUU6IFNvbWUgb2YgdGhlc2UgdmFsdWVzIGRvIG5vdCBuZWVk
IHRvIGJlIGV4cG9zZWQgYXMgYSBkZXN0aW5hdGlvbiB0eXBlLiBSZW1vdmUgY2FzZXMgYmVsb3cg
YW5kIGdpdmUgSW52YWxpZEFjY2Vzc0Vycm9yIGluc3RlYWQuCiAKLUV4Y2VwdGlvbk9yPHZvaWQ+
IERlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlOjpzZXRTdHJpbmdWYWx1ZSh1bnNpZ25lZCBz
aG9ydCBzdHJpbmdUeXBlLCBjb25zdCBTdHJpbmcmIHN0cmluZ1ZhbHVlKQotewotICAgIHJldHVy
biBtX3ZhbHVlLT5zZXRTdHJpbmdWYWx1ZShzdGF0aWNfY2FzdDxDU1NVbml0VHlwZT4oc3RyaW5n
VHlwZSksIHN0cmluZ1ZhbHVlKTsKKyAgICBzd2l0Y2ggKHVuaXRUeXBlKSB7CisgICAgY2FzZSBD
U1NfQ006ICAgICAgICAgICAgcmV0dXJuIG1fdmFsdWUtPmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5
cGU6OkNTU19DTSk7CisgICAgY2FzZSBDU1NfREVHOiAgICAgICAgICAgcmV0dXJuIG1fdmFsdWUt
PmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19ERUcpOworICAgIGNhc2UgQ1NTX0RJTUVO
U0lPTjogICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1Nf
RElNRU5TSU9OKTsKKyAgICBjYXNlIENTU19FTVM6ICAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+
Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX0VNUyk7CisgICAgY2FzZSBDU1NfRVhTOiAg
ICAgICAgICAgcmV0dXJuIG1fdmFsdWUtPmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19F
WFMpOworICAgIGNhc2UgQ1NTX0dSQUQ6ICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9h
dFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfR1JBRCk7CisgICAgY2FzZSBDU1NfSFo6ICAgICAgICAg
ICAgcmV0dXJuIG1fdmFsdWUtPmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19IWik7Cisg
ICAgY2FzZSBDU1NfSU46ICAgICAgICAgICAgcmV0dXJuIG1fdmFsdWUtPmdldEZsb2F0VmFsdWUo
Q1NTVW5pdFR5cGU6OkNTU19JTik7CisgICAgY2FzZSBDU1NfS0haOiAgICAgICAgICAgcmV0dXJu
IG1fdmFsdWUtPmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19LSFopOworICAgIGNhc2Ug
Q1NTX01NOiAgICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRU
eXBlOjpDU1NfTU0pOworICAgIGNhc2UgQ1NTX01TOiAgICAgICAgICAgIHJldHVybiBtX3ZhbHVl
LT5nZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfTVMpOworICAgIGNhc2UgQ1NTX05VTUJF
UjogICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1Nf
TlVNQkVSKTsKKyAgICBjYXNlIENTU19QQzogICAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+Z2V0
RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1BDKTsKKyAgICBjYXNlIENTU19QRVJDRU5UQUdF
OiAgICByZXR1cm4gbV92YWx1ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1BFUkNF
TlRBR0UpOworICAgIGNhc2UgQ1NTX1BUOiAgICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRG
bG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfUFQpOworICAgIGNhc2UgQ1NTX1BYOiAgICAgICAg
ICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfUFgpOwor
ICAgIGNhc2UgQ1NTX1JBRDogICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVl
KENTU1VuaXRUeXBlOjpDU1NfUkFEKTsKKyAgICBjYXNlIENTU19TOiAgICAgICAgICAgICByZXR1
cm4gbV92YWx1ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1MpOworICAgIGNhc2Ug
Q1NTX1ZIOiAgICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRU
eXBlOjpDU1NfVkgpOworICAgIGNhc2UgQ1NTX1ZNQVg6ICAgICAgICAgIHJldHVybiBtX3ZhbHVl
LT5nZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfVk1BWCk7CisgICAgY2FzZSBDU1NfVk1J
TjogICAgICAgICAgcmV0dXJuIG1fdmFsdWUtPmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGU6OkNT
U19WTUlOKTsKKyAgICBjYXNlIENTU19WVzogICAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+Z2V0
RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1ZXKTsKKworICAgIGNhc2UgMzA6ICAgICAgICAg
ICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfRFBQ
WCk7CisgICAgY2FzZSAzMTogICAgICAgICAgICAgICAgcmV0dXJuIG1fdmFsdWUtPmdldEZsb2F0
VmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19EUEkpOworICAgIGNhc2UgMzI6ICAgICAgICAgICAgICAg
IHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfRFBDTSk7Cisg
ICAgY2FzZSAzMzogICAgICAgICAgICAgICAgcmV0dXJuIG1fdmFsdWUtPmdldEZsb2F0VmFsdWUo
Q1NTVW5pdFR5cGU6OkNTU19GUik7CisgICAgY2FzZSAzNDogICAgICAgICAgICAgICAgcmV0dXJu
IG1fdmFsdWUtPmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19RKTsKKyAgICBjYXNlIDM1
OiAgICAgICAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlw
ZTo6Q1NTX0xIUyk7CisgICAgY2FzZSAzNjogICAgICAgICAgICAgICAgcmV0dXJuIG1fdmFsdWUt
PmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19STEhTKTsKKyAgICBjYXNlIDEwNzogICAg
ICAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NT
X1RVUk4pOworICAgIGNhc2UgMTA4OiAgICAgICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRG
bG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfUkVNUyk7CisgICAgY2FzZSAxMDk6ICAgICAgICAg
ICAgICAgcmV0dXJuIG1fdmFsdWUtPmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19DSFMp
OworICAgIGNhc2UgMTEzOiAgICAgICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZh
bHVlKENTU1VuaXRUeXBlOjpDU1NfQ0FMQyk7CisgICAgY2FzZSAxMTQ6ICAgICAgICAgICAgICAg
cmV0dXJuIG1fdmFsdWUtPmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19DQUxDX1BFUkNF
TlRBR0VfV0lUSF9OVU1CRVIpOworICAgIGNhc2UgMTE1OiAgICAgICAgICAgICAgIHJldHVybiBt
X3ZhbHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfQ0FMQ19QRVJDRU5UQUdFX1dJ
VEhfTEVOR1RIKTsKKyAgICBjYXNlIDEyMDogICAgICAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+
Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1FVSVJLWV9FTVMpOworCisgICAgZGVmYXVs
dDogICAgICAgICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRBY2Nlc3NFcnJvciB9
OworICAgIH0KIH0KIAogRXhjZXB0aW9uT3I8U3RyaW5nPiBEZXByZWNhdGVkQ1NTT01QcmltaXRp
dmVWYWx1ZTo6Z2V0U3RyaW5nVmFsdWUoKSBjb25zdAogewotICAgIHJldHVybiBtX3ZhbHVlLT5n
ZXRTdHJpbmdWYWx1ZSgpOworICAgIHN3aXRjaCAocHJpbWl0aXZlVHlwZSgpKSB7CisgICAgY2Fz
ZSBDU1NfQVRUUjogICAgICByZXR1cm4gbV92YWx1ZS0+c3RyaW5nVmFsdWUoKTsKKyAgICBjYXNl
IENTU19JREVOVDogICAgIHJldHVybiBtX3ZhbHVlLT5zdHJpbmdWYWx1ZSgpOworICAgIGNhc2Ug
Q1NTX1NUUklORzogICAgcmV0dXJuIG1fdmFsdWUtPnN0cmluZ1ZhbHVlKCk7CisgICAgY2FzZSBD
U1NfVVJJOiAgICAgICByZXR1cm4gbV92YWx1ZS0+c3RyaW5nVmFsdWUoKTsKKyAgICBkZWZhdWx0
OiAgICAgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkQWNjZXNzRXJyb3IgfTsKKyAg
ICB9CiB9CiAKIEV4Y2VwdGlvbk9yPFJlZjxEZXByZWNhdGVkQ1NTT01Db3VudGVyPj4gRGVwcmVj
YXRlZENTU09NUHJpbWl0aXZlVmFsdWU6OmdldENvdW50ZXJWYWx1ZSgpIGNvbnN0CiB7Ci0gICAg
YXV0byogdmFsdWUgPSBtX3ZhbHVlLT5jb3VudGVyVmFsdWUoKTsKLSAgICBpZiAoIXZhbHVlKQor
ICAgIGlmIChwcmltaXRpdmVUeXBlKCkgIT0gQ1NTX0NPVU5URVIpCiAgICAgICAgIHJldHVybiBF
eGNlcHRpb24geyBJbnZhbGlkQWNjZXNzRXJyb3IgfTsKLSAgICByZXR1cm4gRGVwcmVjYXRlZENT
U09NQ291bnRlcjo6Y3JlYXRlKCp2YWx1ZSwgbV9vd25lcik7CisgICAgcmV0dXJuIERlcHJlY2F0
ZWRDU1NPTUNvdW50ZXI6OmNyZWF0ZSgqbV92YWx1ZS0+Y291bnRlclZhbHVlKCksIG1fb3duZXIp
OwogfQogICAgIAogRXhjZXB0aW9uT3I8UmVmPERlcHJlY2F0ZWRDU1NPTVJlY3Q+PiBEZXByZWNh
dGVkQ1NTT01QcmltaXRpdmVWYWx1ZTo6Z2V0UmVjdFZhbHVlKCkgY29uc3QKIHsKLSAgICBhdXRv
KiB2YWx1ZSA9IG1fdmFsdWUtPnJlY3RWYWx1ZSgpOwotICAgIGlmICghdmFsdWUpCisgICAgaWYg
KHByaW1pdGl2ZVR5cGUoKSAhPSBDU1NfUkVDVCkKICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7
IEludmFsaWRBY2Nlc3NFcnJvciB9OwotICAgIHJldHVybiBEZXByZWNhdGVkQ1NTT01SZWN0Ojpj
cmVhdGUoKnZhbHVlLCBtX293bmVyKTsKKyAgICByZXR1cm4gRGVwcmVjYXRlZENTU09NUmVjdDo6
Y3JlYXRlKCptX3ZhbHVlLT5yZWN0VmFsdWUoKSwgbV9vd25lcik7CiB9CiAKIEV4Y2VwdGlvbk9y
PFJlZjxEZXByZWNhdGVkQ1NTT01SR0JDb2xvcj4+IERlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZh
bHVlOjpnZXRSR0JDb2xvclZhbHVlKCkgY29uc3QKIHsKLSAgICBpZiAoIW1fdmFsdWUtPmlzUkdC
Q29sb3IoKSkKKyAgICBpZiAocHJpbWl0aXZlVHlwZSgpICE9IENTU19SR0JDT0xPUikKICAgICAg
ICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRBY2Nlc3NFcnJvciB9OwogICAgIHJldHVybiBE
ZXByZWNhdGVkQ1NTT01SR0JDb2xvcjo6Y3JlYXRlKG1fb3duZXIsIG1fdmFsdWUtPmNvbG9yKCkp
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRDU1NPTVByaW1p
dGl2ZVZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZENTU09NUHJpbWl0aXZl
VmFsdWUuaAppbmRleCBjODlkOWY5YjVmMTc3YWJiNDY4M2I0YmYzMTVlY2ExNDY1Y2Y3NjcwLi43
YThmMWRhMzAyZGJhZDM2NDQ0YmUxM2M0YTJiYzYzNjY2NTIxYWYxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWUuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWUuaApAQCAtNzYsMjgg
Kzc2LDI3IEBAIHB1YmxpYzoKICAgICB9CiAKICAgICBib29sIGVxdWFscyhjb25zdCBEZXByZWNh
dGVkQ1NTT01QcmltaXRpdmVWYWx1ZSYgb3RoZXIpIGNvbnN0IHsgcmV0dXJuIG1fdmFsdWUtPmVx
dWFscyhvdGhlci5tX3ZhbHVlKTsgfQotICAgIHVuc2lnbmVkIGNzc1ZhbHVlVHlwZSgpIGNvbnN0
IHsgcmV0dXJuIG1fdmFsdWUtPmNzc1ZhbHVlVHlwZSgpOyB9CiAgICAgU3RyaW5nIGNzc1RleHQo
KSBjb25zdCB7IHJldHVybiBtX3ZhbHVlLT5jc3NUZXh0KCk7IH0KICAgICAKICAgICBXRUJDT1JF
X0VYUE9SVCB1bnNpZ25lZCBzaG9ydCBwcmltaXRpdmVUeXBlKCkgY29uc3Q7Ci0gICAgV0VCQ09S
RV9FWFBPUlQgRXhjZXB0aW9uT3I8dm9pZD4gc2V0RmxvYXRWYWx1ZSh1bnNpZ25lZCBzaG9ydCB1
bml0VHlwZSwgZG91YmxlKTsKICAgICBXRUJDT1JFX0VYUE9SVCBFeGNlcHRpb25PcjxmbG9hdD4g
Z2V0RmxvYXRWYWx1ZSh1bnNpZ25lZCBzaG9ydCB1bml0VHlwZSkgY29uc3Q7Ci0gICAgV0VCQ09S
RV9FWFBPUlQgRXhjZXB0aW9uT3I8dm9pZD4gc2V0U3RyaW5nVmFsdWUodW5zaWduZWQgc2hvcnQg
c3RyaW5nVHlwZSwgY29uc3QgU3RyaW5nJik7CiAgICAgV0VCQ09SRV9FWFBPUlQgRXhjZXB0aW9u
T3I8U3RyaW5nPiBnZXRTdHJpbmdWYWx1ZSgpIGNvbnN0OwogICAgIFdFQkNPUkVfRVhQT1JUIEV4
Y2VwdGlvbk9yPFJlZjxEZXByZWNhdGVkQ1NTT01Db3VudGVyPj4gZ2V0Q291bnRlclZhbHVlKCkg
Y29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgRXhjZXB0aW9uT3I8UmVmPERlcHJlY2F0ZWRDU1NP
TVJlY3Q+PiBnZXRSZWN0VmFsdWUoKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9SVCBFeGNlcHRp
b25PcjxSZWY8RGVwcmVjYXRlZENTU09NUkdCQ29sb3I+PiBnZXRSR0JDb2xvclZhbHVlKCkgY29u
c3Q7CiAKKyAgICBzdGF0aWMgRXhjZXB0aW9uT3I8dm9pZD4gc2V0RmxvYXRWYWx1ZSh1bnNpZ25l
ZCBzaG9ydCwgZG91YmxlKSB7IHJldHVybiBFeGNlcHRpb24geyBOb01vZGlmaWNhdGlvbkFsbG93
ZWRFcnJvciB9OyB9CisgICAgc3RhdGljIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFN0cmluZ1ZhbHVl
KHVuc2lnbmVkIHNob3J0LCBjb25zdCBTdHJpbmcmKSB7IHJldHVybiBFeGNlcHRpb24geyBOb01v
ZGlmaWNhdGlvbkFsbG93ZWRFcnJvciB9OyB9CisKICAgICBTdHJpbmcgc3RyaW5nVmFsdWUoKSBj
b25zdCB7IHJldHVybiBtX3ZhbHVlLT5zdHJpbmdWYWx1ZSgpOyB9CiAKLXByb3RlY3RlZDoKK3By
aXZhdGU6CiAgICAgRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWUoY29uc3QgQ1NTUHJpbWl0
aXZlVmFsdWUmIHZhbHVlLCBDU1NTdHlsZURlY2xhcmF0aW9uJiBvd25lcikKICAgICAgICAgOiBE
ZXByZWNhdGVkQ1NTT01WYWx1ZShEZXByZWNhdGVkUHJpbWl0aXZlVmFsdWVDbGFzcywgb3duZXIp
CiAgICAgICAgICwgbV92YWx1ZShjb25zdF9jYXN0PENTU1ByaW1pdGl2ZVZhbHVlJj4odmFsdWUp
KQogICAgIHsKICAgICB9CiAKLXByaXZhdGU6CiAgICAgUmVmPENTU1ByaW1pdGl2ZVZhbHVlPiBt
X3ZhbHVlOwogfTsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNh
dGVkQ1NTT01WYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZENTU09NVmFs
dWUuY3BwCmluZGV4IDI2ZmIwM2Y4NzY2YzkyOTZhM2UzMzFjYzQ0MzViMzk0MDc3ZjdlYTQuLjQy
YWI1MzRhNzkxNDEzMmYyOTU1N2IzOTY2YzkzMjE2Y2ExYjQ1ZjggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkQ1NTT01WYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL0RlcHJlY2F0ZWRDU1NPTVZhbHVlLmNwcApAQCAtNTcsOSArNTcsOSBAQCB1bnNpZ25l
ZCBEZXByZWNhdGVkQ1NTT01WYWx1ZTo6Y3NzVmFsdWVUeXBlKCkgY29uc3QKICAgICBjYXNlIERl
cHJlY2F0ZWRDb21wbGV4VmFsdWVDbGFzczoKICAgICAgICAgcmV0dXJuIGRvd25jYXN0PERlcHJl
Y2F0ZWRDU1NPTUNvbXBsZXhWYWx1ZT4oKnRoaXMpLmNzc1ZhbHVlVHlwZSgpOwogICAgIGNhc2Ug
RGVwcmVjYXRlZFByaW1pdGl2ZVZhbHVlQ2xhc3M6Ci0gICAgICAgIHJldHVybiBkb3duY2FzdDxE
ZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZT4oKnRoaXMpLmNzc1ZhbHVlVHlwZSgpOworICAg
ICAgICByZXR1cm4gQ1NTX1BSSU1JVElWRV9WQUxVRTsKICAgICBjYXNlIERlcHJlY2F0ZWRWYWx1
ZUxpc3RDbGFzczoKLSAgICAgICAgcmV0dXJuIGRvd25jYXN0PERlcHJlY2F0ZWRDU1NPTVZhbHVl
TGlzdD4oKnRoaXMpLmNzc1ZhbHVlVHlwZSgpOworICAgICAgICByZXR1cm4gQ1NTX1ZBTFVFX0xJ
U1Q7CiAgICAgfQogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBDU1NfQ1VT
VE9NOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRDU1NPTVZhbHVl
TGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0LmNw
cAppbmRleCA1ZjU2YTFkMDJmNjcwZWU2NmM2ZjRhNzA2YTY3ZTYxZTFlMWY1YjU5Li5iMjI2NGY0
OWNjNzI1MWFjYzU3NTZmM2U0NTliOWUzMDk2Njg1N2M2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0LmNwcApAQCAtMzIsMjggKzMyLDI0IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogU3RyaW5nIERlcHJlY2F0ZWRDU1NPTVZhbHVlTGlzdDo6Y3Nz
VGV4dCgpIGNvbnN0CiB7Ci0gICAgU3RyaW5nQnVpbGRlciByZXN1bHQ7Ci0gICAgU3RyaW5nIHNl
cGFyYXRvcjsKKyAgICBjb25zdCBjaGFyKiBzZXBhcmF0b3I7CiAgICAgc3dpdGNoIChtX3ZhbHVl
U2VwYXJhdG9yKSB7CiAgICAgY2FzZSBDU1NWYWx1ZTo6U3BhY2VTZXBhcmF0b3I6Ci0gICAgICAg
IHNlcGFyYXRvciA9ICIgIl9zOworICAgICAgICBzZXBhcmF0b3IgPSAiICI7CiAgICAgICAgIGJy
ZWFrOwogICAgIGNhc2UgQ1NTVmFsdWU6OkNvbW1hU2VwYXJhdG9yOgotICAgICAgICBzZXBhcmF0
b3IgPSAiLCAiX3M7CisgICAgICAgIHNlcGFyYXRvciA9ICIsICI7CiAgICAgICAgIGJyZWFrOwog
ICAgIGNhc2UgQ1NTVmFsdWU6OlNsYXNoU2VwYXJhdG9yOgotICAgICAgICBzZXBhcmF0b3IgPSAi
IC8gIl9zOworICAgICAgICBzZXBhcmF0b3IgPSAiIC8gIjsKICAgICAgICAgYnJlYWs7CiAgICAg
ZGVmYXVsdDoKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgfQogICAgIAotICAg
IGZvciAoYXV0byYgdmFsdWUgOiBtX3ZhbHVlcykgewotICAgICAgICBpZiAoIXJlc3VsdC5pc0Vt
cHR5KCkpCi0gICAgICAgICAgICByZXN1bHQuYXBwZW5kKHNlcGFyYXRvcik7Ci0gICAgICAgIHJl
c3VsdC5hcHBlbmQodmFsdWUuZ2V0KCkuY3NzVGV4dCgpKTsKLSAgICB9Ci0gICAgCisgICAgU3Ry
aW5nQnVpbGRlciByZXN1bHQ7CisgICAgZm9yIChhdXRvJiB2YWx1ZSA6IG1fdmFsdWVzKQorICAg
ICAgICByZXN1bHQuYXBwZW5kKHJlc3VsdC5pc0VtcHR5KCkgPyAiIiA6IHNlcGFyYXRvciwgdmFs
dWUuZ2V0KCkuY3NzVGV4dCgpKTsKICAgICByZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3Qu
aCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3QuaAppbmRleCBl
ZTQzMzQzMjY3ODdkZDBkODZjZTYxNTg5Nzg0MDJkNjI4YzljMjNiLi4xNDlhODUwNGQ4YzVjZDcx
MTFlYjBlMDhhZmE5ZmE3YjQ3ZTg4NTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
RGVwcmVjYXRlZENTU09NVmFsdWVMaXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJl
Y2F0ZWRDU1NPTVZhbHVlTGlzdC5oCkBAIC0zNywxNCArMzcsMTIgQEAgcHVibGljOgogICAgICAg
ICByZXR1cm4gYWRvcHRSZWYoKm5ldyBEZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3QodmFsdWUsIG93
bmVyKSk7CiAgICAgfQogICAgIAotICAgIHVuc2lnbmVkIGNzc1ZhbHVlVHlwZSgpIGNvbnN0IHsg
cmV0dXJuIENTU19WQUxVRV9MSVNUOyB9CiAgICAgU3RyaW5nIGNzc1RleHQoKSBjb25zdDsKICAg
ICAKICAgICBzaXplX3QgbGVuZ3RoKCkgY29uc3QgeyByZXR1cm4gbV92YWx1ZXMuc2l6ZSgpOyB9
CiAgICAgRGVwcmVjYXRlZENTU09NVmFsdWUqIGl0ZW0oc2l6ZV90IGluZGV4KSB7IHJldHVybiBp
bmRleCA8IG1fdmFsdWVzLnNpemUoKSA/IG1fdmFsdWVzW2luZGV4XS5wdHIoKSA6IG51bGxwdHI7
IH0KLSAgICBjb25zdCBEZXByZWNhdGVkQ1NTT01WYWx1ZSogaXRlbShzaXplX3QgaW5kZXgpIGNv
bnN0IHsgcmV0dXJuIGluZGV4IDwgbV92YWx1ZXMuc2l6ZSgpID8gbV92YWx1ZXNbaW5kZXhdLnB0
cigpIDogbnVsbHB0cjsgfQogCi1wcm90ZWN0ZWQ6Citwcml2YXRlOgogICAgIERlcHJlY2F0ZWRD
U1NPTVZhbHVlTGlzdChjb25zdCBDU1NWYWx1ZUxpc3QmIHZhbHVlLCBDU1NTdHlsZURlY2xhcmF0
aW9uJiBvd25lcikKICAgICAgICAgOiBEZXByZWNhdGVkQ1NTT01WYWx1ZShEZXByZWNhdGVkVmFs
dWVMaXN0Q2xhc3MsIG93bmVyKQogICAgIHsKQEAgLTU0LDcgKzUyLDYgQEAgcHJvdGVjdGVkOgog
ICAgICAgICAgICAgbV92YWx1ZXMudW5jaGVja2VkQXBwZW5kKHZhbHVlLml0ZW1XaXRob3V0Qm91
bmRzQ2hlY2soaSktPmNyZWF0ZURlcHJlY2F0ZWRDU1NPTVdyYXBwZXIob3duZXIpKTsKICAgICB9
CiAgICAgCi1wcml2YXRlOgogICAgIFZlY3RvcjxSZWY8RGVwcmVjYXRlZENTU09NVmFsdWU+LCA0
PiBtX3ZhbHVlczsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9NZWRpYVF1
ZXJ5RXhwcmVzc2lvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvTWVkaWFRdWVyeUV4cHJlc3Np
b24uY3BwCmluZGV4IDhiODU3ZWEzZjBiZTgxYWRkODEwOGU0MTc3NjRiZTk4M2JiMTJlNjEuLmNh
ODA4ODM2ZjBjMTg4ZTYwYTIwOGExY2JjM2IxMDc5NDMxOGU1YTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9NZWRpYVF1ZXJ5RXhwcmVzc2lvbi5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL01lZGlhUXVlcnlFeHByZXNzaW9uLmNwcApAQCAtNzcsMjIgKzc3LDIyIEBAIHN0YXRp
YyBpbmxpbmUgYm9vbCBmZWF0dXJlV2l0aFZhbGlkSWRlbnQoY29uc3QgQXRvbVN0cmluZyYgbWVk
aWFGZWF0dXJlLCBjb25zdCBDCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIHJldHVybiBt
ZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om9yaWVudGF0aW9uCi0gICAgfHwgbWVk
aWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjpjb2xvckdhbXV0Ci0gICAgfHwgbWVkaWFG
ZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjphbnlIb3ZlcgotICAgIHx8IG1lZGlhRmVhdHVy
ZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6YW55UG9pbnRlcgotICAgIHx8IG1lZGlhRmVhdHVyZSA9
PSBNZWRpYUZlYXR1cmVOYW1lczo6aG92ZXIKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFG
ZWF0dXJlTmFtZXM6OmludmVydGVkQ29sb3JzCi0gICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlh
RmVhdHVyZU5hbWVzOjpwb2ludGVyCisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZl
YXR1cmVOYW1lczo6Y29sb3JHYW11dAorICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFG
ZWF0dXJlTmFtZXM6OmFueUhvdmVyCisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZl
YXR1cmVOYW1lczo6YW55UG9pbnRlcgorICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFG
ZWF0dXJlTmFtZXM6OmhvdmVyCisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1
cmVOYW1lczo6aW52ZXJ0ZWRDb2xvcnMKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlh
RmVhdHVyZU5hbWVzOjpwb2ludGVyCiAjaWYgRU5BQkxFKEFQUExJQ0FUSU9OX01BTklGRVNUKQot
ICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6ZGlzcGxheU1vZGUKKyAg
ICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjpkaXNwbGF5TW9kZQog
I2VuZGlmCiAjaWYgRU5BQkxFKERBUktfTU9ERV9DU1MpCi0gICAgfHwgbWVkaWFGZWF0dXJlID09
IE1lZGlhRmVhdHVyZU5hbWVzOjpwcmVmZXJzQ29sb3JTY2hlbWUKKyAgICAgICAgfHwgbWVkaWFG
ZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjpwcmVmZXJzQ29sb3JTY2hlbWUKICNlbmRpZgot
ICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6cHJlZmVyc0NvbnRyYXN0
Ci0gICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjpwcmVmZXJzUmVkdWNl
ZE1vdGlvbgotICAgIHx8IChtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6OnByZWZl
cnNEYXJrSW50ZXJmYWNlICYmIChjb250ZXh0LnVzZVN5c3RlbUFwcGVhcmFuY2UgfHwgaXNVQVNo
ZWV0QmVoYXZpb3IoY29udGV4dC5tb2RlKSkpCi0gICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlh
RmVhdHVyZU5hbWVzOjpkeW5hbWljUmFuZ2U7CisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBN
ZWRpYUZlYXR1cmVOYW1lczo6cHJlZmVyc0NvbnRyYXN0CisgICAgICAgIHx8IG1lZGlhRmVhdHVy
ZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6cHJlZmVyc1JlZHVjZWRNb3Rpb24KKyAgICAgICAgfHwg
KG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6cHJlZmVyc0RhcmtJbnRlcmZhY2Ug
JiYgKGNvbnRleHQudXNlU3lzdGVtQXBwZWFyYW5jZSB8fCBpc1VBU2hlZXRCZWhhdmlvcihjb250
ZXh0Lm1vZGUpKSkKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVz
OjpkeW5hbWljUmFuZ2U7CiB9CiAKIHN0YXRpYyBpbmxpbmUgYm9vbCBmZWF0dXJlV2l0aFZhbGlk
RGVuc2l0eShjb25zdCBTdHJpbmcmIG1lZGlhRmVhdHVyZSwgY29uc3QgQ1NTUHJpbWl0aXZlVmFs
dWUmIHZhbHVlKQpAQCAtMTAxLDggKzEwMSw4IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBmZWF0dXJl
V2l0aFZhbGlkRGVuc2l0eShjb25zdCBTdHJpbmcmIG1lZGlhRmVhdHVyZSwgY29uc3QgQ1NTCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKICAgICAKICAgICByZXR1cm4gbWVkaWFGZWF0dXJlID09IE1l
ZGlhRmVhdHVyZU5hbWVzOjpyZXNvbHV0aW9uCi0gICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlh
RmVhdHVyZU5hbWVzOjptaW5SZXNvbHV0aW9uCi0gICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlh
RmVhdHVyZU5hbWVzOjptYXhSZXNvbHV0aW9uOworICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0g
TWVkaWFGZWF0dXJlTmFtZXM6Om1pblJlc29sdXRpb24KKyAgICAgICAgfHwgbWVkaWFGZWF0dXJl
ID09IE1lZGlhRmVhdHVyZU5hbWVzOjptYXhSZXNvbHV0aW9uOwogfQogCiBzdGF0aWMgaW5saW5l
IGJvb2wgZmVhdHVyZVdpdGhWYWxpZFBvc2l0aXZlTGVuZ3RoKGNvbnN0IFN0cmluZyYgbWVkaWFG
ZWF0dXJlLCBjb25zdCBDU1NQcmltaXRpdmVWYWx1ZSYgdmFsdWUpCkBAIC0xMTEsMzAgKzExMSwz
MCBAQCBzdGF0aWMgaW5saW5lIGJvb2wgZmVhdHVyZVdpdGhWYWxpZFBvc2l0aXZlTGVuZ3RoKGNv
bnN0IFN0cmluZyYgbWVkaWFGZWF0dXJlLCBjbwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAg
CiAgICAgcmV0dXJuIG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6aGVpZ2h0Ci0g
ICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjptYXhIZWlnaHQKLSAgICB8
fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1pbkhlaWdodAotICAgIHx8IG1l
ZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6d2lkdGgKLSAgICB8fCBtZWRpYUZlYXR1
cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1heFdpZHRoCi0gICAgfHwgbWVkaWFGZWF0dXJlID09
IE1lZGlhRmVhdHVyZU5hbWVzOjptaW5XaWR0aAotICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRp
YUZlYXR1cmVOYW1lczo6ZGV2aWNlSGVpZ2h0Ci0gICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlh
RmVhdHVyZU5hbWVzOjptYXhEZXZpY2VIZWlnaHQKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVk
aWFGZWF0dXJlTmFtZXM6Om1pbkRldmljZUhlaWdodAotICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBN
ZWRpYUZlYXR1cmVOYW1lczo6ZGV2aWNlV2lkdGgKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVk
aWFGZWF0dXJlTmFtZXM6Om1pbkRldmljZVdpZHRoCi0gICAgfHwgbWVkaWFGZWF0dXJlID09IE1l
ZGlhRmVhdHVyZU5hbWVzOjptYXhEZXZpY2VXaWR0aDsKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJl
ID09IE1lZGlhRmVhdHVyZU5hbWVzOjptYXhIZWlnaHQKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJl
ID09IE1lZGlhRmVhdHVyZU5hbWVzOjptaW5IZWlnaHQKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJl
ID09IE1lZGlhRmVhdHVyZU5hbWVzOjp3aWR0aAorICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0g
TWVkaWFGZWF0dXJlTmFtZXM6Om1heFdpZHRoCisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBN
ZWRpYUZlYXR1cmVOYW1lczo6bWluV2lkdGgKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1l
ZGlhRmVhdHVyZU5hbWVzOjpkZXZpY2VIZWlnaHQKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09
IE1lZGlhRmVhdHVyZU5hbWVzOjptYXhEZXZpY2VIZWlnaHQKKyAgICAgICAgfHwgbWVkaWFGZWF0
dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjptaW5EZXZpY2VIZWlnaHQKKyAgICAgICAgfHwgbWVk
aWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjpkZXZpY2VXaWR0aAorICAgICAgICB8fCBt
ZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1pbkRldmljZVdpZHRoCisgICAgICAg
IHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6bWF4RGV2aWNlV2lkdGg7CiB9
CiAKIHN0YXRpYyBpbmxpbmUgYm9vbCBmZWF0dXJlRXhwZWN0aW5nUG9zaXRpdmVJbnRlZ2VyKGNv
bnN0IFN0cmluZyYgbWVkaWFGZWF0dXJlKQogewogICAgIHJldHVybiBtZWRpYUZlYXR1cmUgPT0g
TWVkaWFGZWF0dXJlTmFtZXM6OmNvbG9yCi0gICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVh
dHVyZU5hbWVzOjptYXhDb2xvcgotICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVO
YW1lczo6bWluQ29sb3IKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6
OmNvbG9ySW5kZXgKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1h
eENvbG9ySW5kZXgKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1p
bkNvbG9ySW5kZXgKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1v
bm9jaHJvbWUKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1heE1v
bm9jaHJvbWUKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1pbk1v
bm9jaHJvbWU7CisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6
bWF4Q29sb3IKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjpt
aW5Db2xvcgorICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6OmNv
bG9ySW5kZXgKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjpt
YXhDb2xvckluZGV4CisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1l
czo6bWluQ29sb3JJbmRleAorICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJl
TmFtZXM6Om1vbm9jaHJvbWUKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVy
ZU5hbWVzOjptYXhNb25vY2hyb21lCisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZl
YXR1cmVOYW1lczo6bWluTW9ub2Nocm9tZTsKIH0KIAogc3RhdGljIGlubGluZSBib29sIGZlYXR1
cmVXaXRoUG9zaXRpdmVJbnRlZ2VyKGNvbnN0IFN0cmluZyYgbWVkaWFGZWF0dXJlLCBjb25zdCBD
U1NQcmltaXRpdmVWYWx1ZSYgdmFsdWUpCkBAIC0xNTAsMTIgKzE1MCwxMiBAQCBzdGF0aWMgaW5s
aW5lIGJvb2wgZmVhdHVyZVdpdGhQb3NpdGl2ZU51bWJlcihjb25zdCBTdHJpbmcmIG1lZGlhRmVh
dHVyZSwgY29uc3QgQwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgCiAgICAgcmV0dXJuIG1l
ZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6dHJhbnNmb3JtM2QKLSAgICB8fCBtZWRp
YUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6OmRldmljZVBpeGVsUmF0aW8KLSAgICB8fCBt
ZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1heERldmljZVBpeGVsUmF0aW8KLSAg
ICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1pbkRldmljZVBpeGVsUmF0
aW8KLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6OnRyYW5zaXRpb24K
LSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6OmFuaW1hdGlvbgotICAg
IHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6dHJhbnNmb3JtMmQ7CisgICAg
ICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6ZGV2aWNlUGl4ZWxSYXRp
bworICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1heERldmlj
ZVBpeGVsUmF0aW8KKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVz
OjptaW5EZXZpY2VQaXhlbFJhdGlvCisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZl
YXR1cmVOYW1lczo6dHJhbnNpdGlvbgorICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFG
ZWF0dXJlTmFtZXM6OmFuaW1hdGlvbgorICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFG
ZWF0dXJlTmFtZXM6OnRyYW5zZm9ybTJkOwogfQogCiBzdGF0aWMgaW5saW5lIGJvb2wgZmVhdHVy
ZVdpdGhaZXJvT3JPbmUoY29uc3QgU3RyaW5nJiBtZWRpYUZlYXR1cmUsIGNvbnN0IENTU1ByaW1p
dGl2ZVZhbHVlJiB2YWx1ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9jYWxjL0NT
U0NhbGNDYXRlZ29yeU1hcHBpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL2NhbGMvQ1NTQ2Fs
Y0NhdGVnb3J5TWFwcGluZy5jcHAKaW5kZXggMTNkZTRlNjc5ZDAzZjM3MDY3ZThhMjg0MmI1MTI3
YmI4OWJhYjgzYi4uMWU4YzdkMmNlYjVhNTJjYzAzNzE2ODkwNjY0MjIyZjY5YjllOWY0MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL2NhbGMvQ1NTQ2FsY0NhdGVnb3J5TWFwcGluZy5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL2NhbGMvQ1NTQ2FsY0NhdGVnb3J5TWFwcGluZy5j
cHAKQEAgLTE3Miw2ICsxNzIsNyBAQCBib29sIGhhc0RvdWJsZVZhbHVlKENTU1VuaXRUeXBlIHR5
cGUpCiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0ZPTlRfRkFNSUxZOgogICAgIGNhc2UgQ1NT
VW5pdFR5cGU6OkNTU19VUkk6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0lERU5UOgorICAg
IGNhc2UgQ1NTVW5pdFR5cGU6OkN1c3RvbUlkZW50OgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNT
U19BVFRSOgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19DT1VOVEVSOgogICAgIGNhc2UgQ1NT
VW5pdFR5cGU6OkNTU19SRUNUOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNl
ci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1By
b3BlcnR5UGFyc2VyLmNwcAppbmRleCBkNzRmOTRlMTA1NjJhYTg0NWFhZjc3OTdlNjZhM2RjMjkw
N2NhZDZjLi42ODQ1MjM3ODY5MzI2MDg2Y2JjYWUwZWQ5NGRiYzNhNTZkZWI1MmY1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcApAQCAtMzUs
NyArMzUsNiBAQAogI2luY2x1ZGUgIkNTU0JvcmRlckltYWdlU2xpY2VWYWx1ZS5oIgogI2luY2x1
ZGUgIkNTU0NvbnRlbnREaXN0cmlidXRpb25WYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0N1cnNvcklt
YWdlVmFsdWUuaCIKLSNpbmNsdWRlICJDU1NDdXN0b21JZGVudFZhbHVlLmgiCiAjaW5jbHVkZSAi
Q1NTQ3VzdG9tUHJvcGVydHlWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0ZvbnRGYWNlU3JjVmFsdWUu
aCIKICNpbmNsdWRlICJDU1NGb250RmVhdHVyZVZhbHVlLmgiCkBAIC01MDAsNyArNDk5LDYgQEAg
c3RhdGljIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZVdpbGxDaGFuZ2UoQ1NTUGFyc2VyVG9rZW5S
YW5nZSYgcmFuZ2UpCiAgICAgICAgICAgICAvLyBOZWVkIHRvIHJldHVybiBudWxscHRyIHdoZW4g
Y3VycmVudFZhbHVlIGlzIENTU1Byb3BlcnR5QWxsLgogICAgICAgICAgICAgaWYgKHByb3BlcnR5
SUQgPT0gQ1NTUHJvcGVydHlXaWxsQ2hhbmdlIHx8IHByb3BlcnR5SUQgPT0gQ1NTUHJvcGVydHlB
bGwpCiAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAgICAgICAvLyBGSVhN
RS1ORVdQQVJTRVI6IFVzZSBDU1NDdXN0b21JZGVudFZhbHVlIHNvbWVkYXkuCiAgICAgICAgICAg
ICB2YWx1ZXMtPmFwcGVuZChDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZUlkZW50aWZp
ZXJWYWx1ZShwcm9wZXJ0eUlEKSk7CiAgICAgICAgICAgICByYW5nZS5jb25zdW1lSW5jbHVkaW5n
V2hpdGVzcGFjZSgpOwogICAgICAgICB9IGVsc2UgewpAQCAtMTMxMyw3ICsxMzExLDYgQEAgc3Rh
dGljIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUFuaW1hdGlvbk5hbWUoQ1NTUGFyc2VyVG9rZW5S
YW5nZSYgcmFuZ2UpCiAgICAgICAgIGNvbnN0IENTU1BhcnNlclRva2VuJiB0b2tlbiA9IHJhbmdl
LmNvbnN1bWVJbmNsdWRpbmdXaGl0ZXNwYWNlKCk7CiAgICAgICAgIGlmIChlcXVhbElnbm9yaW5n
QVNDSUlDYXNlKHRva2VuLnZhbHVlKCksICJub25lIikpCiAgICAgICAgICAgICByZXR1cm4gQ1NT
VmFsdWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25l
KTsKLSAgICAgICAgLy8gRklYTUUtTkVXUEFSU0VSOiBXYW50IHRvIHVzZSBhIENTU0N1c3RvbUlk
ZW50VmFsdWUgaGVyZSBldmVudHVhbGx5LgogICAgICAgICByZXR1cm4gQ1NTVmFsdWVQb29sOjpz
aW5nbGV0b24oKS5jcmVhdGVWYWx1ZSh0b2tlbi52YWx1ZSgpLnRvU3RyaW5nKCksIENTU1VuaXRU
eXBlOjpDU1NfU1RSSU5HKTsKICAgICB9CiAKQEAgLTEzMzAsMTQgKzEzMjcsNiBAQCBzdGF0aWMg
UmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lVHJhbnNpdGlvblByb3BlcnR5KENTU1BhcnNlclRva2Vu
UmFuZ2UmIHJhbmdlKQogCiAgICAgaWYgKENTU1Byb3BlcnR5SUQgcHJvcGVydHkgPSB0b2tlbi5w
YXJzZUFzQ1NTUHJvcGVydHlJRCgpKSB7CiAgICAgICAgIHJhbmdlLmNvbnN1bWVJbmNsdWRpbmdX
aGl0ZXNwYWNlKCk7Ci0gICAgICAgIAotICAgICAgICAvLyBGSVhNRS1ORVdQQVJTRVI6IE5vIHJl
YXNvbiB3aHkgd2UgY2FuJ3QgdXNlIHRoZSAiYWxsIiBwcm9wZXJ0eSBub3cgdGhhdCBpdCBleGlz
dHMuCi0gICAgICAgIC8vIFRoZSBvbGQgcGFyc2VyIHVzZWQgYSB2YWx1ZSBrZXl3b3JkIGZvciAi
YWxsIiwgdGhvdWdoLCBzaW5jZSBpdCBwcmVkYXRlZCBzdXBwb3J0IGZvcgotICAgICAgICAvLyB0
aGUgcHJvcGVydHkuCi0gICAgICAgIGlmIChwcm9wZXJ0eSA9PSBDU1NQcm9wZXJ0eUFsbCkKLSAg
ICAgICAgICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZUlkZW50aWZp
ZXJWYWx1ZShDU1NWYWx1ZUFsbCk7Ci0KLSAgICAgICAgLy8gRklYTUUtTkVXUEFSU0VSOiBXYW50
IHRvIHVzZSBhIENTU0N1c3RvbUlkZW50VmFsdWUgaGVyZSBldmVudHVhbGx5LgogICAgICAgICBy
ZXR1cm4gQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUocHJv
cGVydHkpOwogICAgIH0KICAgICByZXR1cm4gY29uc3VtZUN1c3RvbUlkZW50KHJhbmdlKTsKQEAg
LTIzMjEsOSArMjMxMCw3IEBAIHN0YXRpYyBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVBdHRyKENT
U1BhcnNlclRva2VuUmFuZ2UgYXJncywgQ1NTUGFyc2VyQ29udGV4dCBjCiAgICAgaWYgKCFhcmdz
LmF0RW5kKCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgLy8gRklYTUUtTkVXUEFS
U0VSOiBXZSB3YW50IHRvIHVzZSBhIENTU0N1c3RvbUlkZW50VmFsdWUgaGVyZSBldmVudHVhbGx5
IGZvciB0aGUgYXR0ck5hbWUuCi0gICAgLy8gRklYTUUtTkVXUEFSU0VSOiBXZSB3YW50IHRvIHVz
ZSBhIENTU0Z1bmN0aW9uVmFsdWUgcmF0aGVyIHRoYW4gcmVseWluZyBvbiBhIGN1c3RvbQotICAg
IC8vIGF0dHIoKSBwcmltaXRpdmUgdmFsdWUuCisgICAgLy8gRklYTUU6IENvbnNpZGVyIG1vdmlu
ZyB0byBhIENTU0Z1bmN0aW9uVmFsdWUgd2l0aCBhIGN1c3RvbS1pZGVudCByYXRoZXIgdGhhbiBh
IHNwZWNpYWwgQ1NTX0FUVFIgcHJpbWl0aXZlIHZhbHVlLgogICAgIHJldHVybiBDU1NWYWx1ZVBv
b2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKGF0dHJOYW1lLCBDU1NVbml0VHlwZTo6Q1NTX0FU
VFIpOwogfQogCkBAIC01NTM4LDEyICs1NTI1LDkgQEAgYm9vbCBDU1NQcm9wZXJ0eVBhcnNlcjo6
Y29uc3VtZU92ZXJmbG93U2hvcnRoYW5kKGJvb2wgaW1wb3J0YW50KQogICAgIHJldHVybiB0cnVl
OwogfQogCi0vLyBGSVhNRS1ORVdQQVJTRVI6IEhhY2sgdG8gd29yayBhcm91bmQgdGhlIGZhY3Qg
dGhhdCB3ZSBhcmVuJ3QgdXNpbmcgQ1NTQ3VzdG9tSWRlbnRWYWx1ZQotLy8gZm9yIHN0dWZmIHll
dC4gVGhpcyBjYW4gYmUgcmVwbGFjZWQgYnkgQ1NTVmFsdWU6OmlzQ3VzdG9tSWRlbnRWYWx1ZSgp
IG9uY2Ugd2Ugc3dpdGNoCi0vLyB0byB1c2luZyBDU1NDdXN0b21JZGVudFZhbHVlIGV2ZXJ5d2hl
cmUuCiBzdGF0aWMgYm9vbCBpc0N1c3RvbUlkZW50VmFsdWUoY29uc3QgQ1NTVmFsdWUmIHZhbHVl
KQogewotICAgIHJldHVybiBpczxDU1NQcmltaXRpdmVWYWx1ZT4odmFsdWUpICYmIGRvd25jYXN0
PENTU1ByaW1pdGl2ZVZhbHVlPih2YWx1ZSkuaXNTdHJpbmcoKTsKKyAgICByZXR1cm4gaXM8Q1NT
UHJpbWl0aXZlVmFsdWU+KHZhbHVlKSAmJiBkb3duY2FzdDxDU1NQcmltaXRpdmVWYWx1ZT4odmFs
dWUpLmlzQ3VzdG9tSWRlbnQoKTsKIH0KIAogYm9vbCBDU1NQcm9wZXJ0eVBhcnNlcjo6Y29uc3Vt
ZUdyaWRJdGVtUG9zaXRpb25TaG9ydGhhbmQoQ1NTUHJvcGVydHlJRCBzaG9ydGhhbmRJZCwgYm9v
bCBpbXBvcnRhbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1By
b3BlcnR5UGFyc2VySGVscGVycy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1By
b3BlcnR5UGFyc2VySGVscGVycy5jcHAKaW5kZXggMDA0YmZlMzcxODIzMDMwNzgxYWRjNDgzNjMx
ZTM1YTdjY2MwYmQwNi4uODYwN2IwODRhODQyNjAwYTQyOGZhMTUyNTlmMGNlMjc1M2ZlMDQxMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhl
bHBlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJz
ZXJIZWxwZXJzLmNwcApAQCAtMTMwOCwxNSArMTMwOCwxMiBAQCBSZWZQdHI8Q1NTUHJpbWl0aXZl
VmFsdWU+IGNvbnN1bWVJZGVudFJhbmdlKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlLCBDU1NW
YWx1ZQogICAgIHJldHVybiBjb25zdW1lSWRlbnQocmFuZ2UpOwogfQogCi0vLyBGSVhNRS1ORVdQ
QVJTRVI6IEV2ZW50dWFsbHkgd2UnZCBsaWtlIHRoaXMgdG8gdXNlIENTU0N1c3RvbUlkZW50VmFs
dWUsIGJ1dCB3ZSBuZWVkCi0vLyB0byBkbyBvdGhlciBwbHVtYmluZyB3b3JrIGZpcnN0IChsaWtl
IGNoYW5naW5nIFBhaXIgdG8gQ1NTVmFsdWVQYWlyIGFuZCBtYWtlIGl0IG5vdAotLy8gdXNlIG9u
bHkgcHJpbWl0aXZlIHZhbHVlcykuCiBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVD
dXN0b21JZGVudChDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSwgYm9vbCBzaG91bGRMb3dlcmNh
c2UpCiB7CiAgICAgaWYgKHJhbmdlLnBlZWsoKS50eXBlKCkgIT0gSWRlbnRUb2tlbiB8fCBpc0NT
U1dpZGVLZXl3b3JkKHJhbmdlLnBlZWsoKS5pZCgpKSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7
CiAgICAgYXV0byBpZGVudGlmaWVyID0gcmFuZ2UuY29uc3VtZUluY2x1ZGluZ1doaXRlc3BhY2Uo
KS52YWx1ZSgpOwotICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZh
bHVlKHNob3VsZExvd2VyY2FzZSA/IGlkZW50aWZpZXIuY29udmVydFRvQVNDSUlMb3dlcmNhc2Uo
KSA6IGlkZW50aWZpZXIudG9TdHJpbmcoKSwgQ1NTVW5pdFR5cGU6OkNTU19TVFJJTkcpOworICAg
IHJldHVybiBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZUN1c3RvbUlkZW50KHNob3Vs
ZExvd2VyY2FzZSA/IGlkZW50aWZpZXIuY29udmVydFRvQVNDSUlMb3dlcmNhc2UoKSA6IGlkZW50
aWZpZXIudG9TdHJpbmcoKSk7CiB9CiAKIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29uc3Vt
ZVN0cmluZyhDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2FuaW1hdGlvbi9BbmltYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vYW5pbWF0aW9uL0FuaW1hdGlvbi5jcHAKaW5kZXggOWE1Nzk4ZDU0MTA4ZDhhMWNj
MDY3ZGJmOGRlMTM3NzkxYTlhMmNkNi4uOGJkOGE2NmQ4ZDc1MDAxZTZmODk5OTgxM2U0ZWRlMjI3
Y2FiYWYxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYW5pbWF0aW9uL0Fu
aW1hdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYW5pbWF0aW9uL0FuaW1h
dGlvbi5jcHAKQEAgLTEwNSw3ICsxMDUsNyBAQCBBbmltYXRpb246On5BbmltYXRpb24oKSA9IGRl
ZmF1bHQ7CiAKIGJvb2wgQW5pbWF0aW9uOjphbmltYXRpb25zTWF0Y2goY29uc3QgQW5pbWF0aW9u
JiBvdGhlciwgYm9vbCBtYXRjaFByb3BlcnRpZXMpIGNvbnN0CiB7Ci0gICAgYm9vbCByZXN1bHQg
PSBtX25hbWUgPT0gb3RoZXIubV9uYW1lCisgICAgYm9vbCByZXN1bHQgPSBtX25hbWUuc3RyaW5n
ID09IG90aGVyLm1fbmFtZS5zdHJpbmcKICAgICAgICAgJiYgbV9wbGF5U3RhdGUgPT0gb3RoZXIu
bV9wbGF5U3RhdGUKICAgICAgICAgJiYgbV9wbGF5U3RhdGVTZXQgPT0gb3RoZXIubV9wbGF5U3Rh
dGVTZXQKICAgICAgICAgJiYgbV9pdGVyYXRpb25Db3VudCA9PSBvdGhlci5tX2l0ZXJhdGlvbkNv
dW50CkBAIC0xMzAsOSArMTMwLDkgQEAgYm9vbCBBbmltYXRpb246OmFuaW1hdGlvbnNNYXRjaChj
b25zdCBBbmltYXRpb24mIG90aGVyLCBib29sIG1hdGNoUHJvcGVydGllcykgY28KICAgICByZXR1
cm4gIW1hdGNoUHJvcGVydGllcyB8fCAobV9wcm9wZXJ0eS5tb2RlID09IG90aGVyLm1fcHJvcGVy
dHkubW9kZSAmJiBtX3Byb3BlcnR5LmlkID09IG90aGVyLm1fcHJvcGVydHkuaWQgJiYgbV9wcm9w
ZXJ0eVNldCA9PSBvdGhlci5tX3Byb3BlcnR5U2V0KTsKIH0KIAotY29uc3QgU3RyaW5nJiBBbmlt
YXRpb246OmluaXRpYWxOYW1lKCkKK2F1dG8gQW5pbWF0aW9uOjppbml0aWFsTmFtZSgpIC0+IGNv
bnN0IE5hbWUmCiB7Ci0gICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPFN0cmluZz4gaW5pdGlhbFZh
bHVlKE1BS0VfU1RBVElDX1NUUklOR19JTVBMKCJub25lIikpOworICAgIHN0YXRpYyBOZXZlckRl
c3Ryb3llZDxOYW1lPiBpbml0aWFsVmFsdWUgeyBOYW1lIHsgTUFLRV9TVEFUSUNfU1RSSU5HX0lN
UEwoIm5vbmUiKSwgdHJ1ZSB9IH07CiAgICAgcmV0dXJuIGluaXRpYWxWYWx1ZTsKIH0KIApAQCAt
MTYxLDcgKzE2MSw3IEBAIFRleHRTdHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYgdHMsIEFu
aW1hdGlvbjo6QW5pbWF0aW9uRGlyZWN0aW9uIGRpcmVjdGlvbikKIFRleHRTdHJlYW0mIG9wZXJh
dG9yPDwoVGV4dFN0cmVhbSYgdHMsIGNvbnN0IEFuaW1hdGlvbiYgYW5pbWF0aW9uKQogewogICAg
IHRzLmR1bXBQcm9wZXJ0eSgicHJvcGVydHkiLCBhbmltYXRpb24ucHJvcGVydHkoKSk7Ci0gICAg
dHMuZHVtcFByb3BlcnR5KCJuYW1lIiwgYW5pbWF0aW9uLm5hbWUoKSk7CisgICAgdHMuZHVtcFBy
b3BlcnR5KCJuYW1lIiwgYW5pbWF0aW9uLm5hbWUoKS5zdHJpbmcpOwogICAgIHRzLmR1bXBQcm9w
ZXJ0eSgiaXRlcmF0aW9uIGNvdW50IiwgYW5pbWF0aW9uLml0ZXJhdGlvbkNvdW50KCkpOwogICAg
IHRzLmR1bXBQcm9wZXJ0eSgiZGVsYXkiLCBhbmltYXRpb24uaXRlcmF0aW9uQ291bnQoKSk7CiAg
ICAgdHMuZHVtcFByb3BlcnR5KCJkdXJhdGlvbiIsIGFuaW1hdGlvbi5kdXJhdGlvbigpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2FuaW1hdGlvbi9BbmltYXRpb24uaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2FuaW1hdGlvbi9BbmltYXRpb24uaAppbmRleCA3ZTIy
OGYwNzJmNmRmYjJlZGY1NDUyMTRhNmMxZDExOWRiZWY5YjU0Li4yZjM3MjQ0NjhmNGJmZmIzZWNh
MmVhZTY2NzMxNmQzZGE3ZWQ5MmJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9hbmltYXRpb24vQW5pbWF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYW5p
bWF0aW9uL0FuaW1hdGlvbi5oCkBAIC01Myw3ICs1Myw3IEBAIHB1YmxpYzoKIAogICAgIC8vIFdl
IGNhbiBtYWtlIHBsYWNlaG9sZGVyIEFuaW1hdGlvbiBvYmplY3RzIHRvIGtlZXAgdGhlIGNvbW1h
LXNlcGFyYXRlZCBsaXN0cwogICAgIC8vIG9mIHByb3BlcnRpZXMgaW4gc3luYy4gaXNWYWxpZEFu
aW1hdGlvbiBtZWFucyB0aGlzIGlzIG5vdCBhIHBsYWNlaG9sZGVyLgotICAgIGJvb2wgaXNWYWxp
ZEFuaW1hdGlvbigpIGNvbnN0IHsgcmV0dXJuICFtX2lzTm9uZSAmJiAhbV9uYW1lLmlzRW1wdHko
KTsgfQorICAgIGJvb2wgaXNWYWxpZEFuaW1hdGlvbigpIGNvbnN0IHsgcmV0dXJuICFtX2lzTm9u
ZSAmJiAhbV9uYW1lLnN0cmluZy5pc0VtcHR5KCk7IH0KIAogICAgIGJvb2wgaXNFbXB0eSgpIGNv
bnN0CiAgICAgewpAQCAtMTE5LDkgKzExOSwxNCBAQCBwdWJsaWM6CiAgICAgZG91YmxlIGR1cmF0
aW9uKCkgY29uc3QgeyByZXR1cm4gbV9kdXJhdGlvbjsgfQogICAgIGRvdWJsZSBwbGF5YmFja1Jh
dGUoKSBjb25zdCB7IHJldHVybiBtX3BsYXliYWNrUmF0ZTsgfQogCisgICAgc3RydWN0IE5hbWUg
eworICAgICAgICBTdHJpbmcgc3RyaW5nOworICAgICAgICBib29sIGlzSWRlbnRpZmllciB7IGZh
bHNlIH07CisgICAgfTsKKwogICAgIGVudW0geyBJdGVyYXRpb25Db3VudEluZmluaXRlID0gLTEg
fTsKICAgICBkb3VibGUgaXRlcmF0aW9uQ291bnQoKSBjb25zdCB7IHJldHVybiBtX2l0ZXJhdGlv
bkNvdW50OyB9Ci0gICAgY29uc3QgU3RyaW5nJiBuYW1lKCkgY29uc3QgeyByZXR1cm4gbV9uYW1l
OyB9CisgICAgY29uc3QgTmFtZSYgbmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fbmFtZTsgfQogICAg
IFN0eWxlOjpTY29wZU9yZGluYWwgbmFtZVN0eWxlU2NvcGVPcmRpbmFsKCkgY29uc3QgeyByZXR1
cm4gbV9uYW1lU3R5bGVTY29wZU9yZGluYWw7IH0KICAgICBBbmltYXRpb25QbGF5U3RhdGUgcGxh
eVN0YXRlKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8QW5pbWF0aW9uUGxheVN0YXRlPiht
X3BsYXlTdGF0ZSk7IH0KICAgICBUcmFuc2l0aW9uUHJvcGVydHkgcHJvcGVydHkoKSBjb25zdCB7
IHJldHVybiBtX3Byb3BlcnR5OyB9CkBAIC0xMzUsNyArMTQwLDcgQEAgcHVibGljOgogICAgIHZv
aWQgc2V0UGxheWJhY2tSYXRlKGRvdWJsZSBkKSB7IG1fcGxheWJhY2tSYXRlID0gZDsgfQogICAg
IHZvaWQgc2V0RmlsbE1vZGUoQW5pbWF0aW9uRmlsbE1vZGUgZikgeyBtX2ZpbGxNb2RlID0gc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KGYpOyBtX2ZpbGxNb2RlU2V0ID0gdHJ1ZTsgfQogICAgIHZvaWQg
c2V0SXRlcmF0aW9uQ291bnQoZG91YmxlIGMpIHsgbV9pdGVyYXRpb25Db3VudCA9IGM7IG1faXRl
cmF0aW9uQ291bnRTZXQgPSB0cnVlOyB9Ci0gICAgdm9pZCBzZXROYW1lKGNvbnN0IFN0cmluZyYg
bmFtZSwgU3R5bGU6OlNjb3BlT3JkaW5hbCBzY29wZSA9IFN0eWxlOjpTY29wZU9yZGluYWw6OkVs
ZW1lbnQpCisgICAgdm9pZCBzZXROYW1lKGNvbnN0IE5hbWUmIG5hbWUsIFN0eWxlOjpTY29wZU9y
ZGluYWwgc2NvcGUgPSBTdHlsZTo6U2NvcGVPcmRpbmFsOjpFbGVtZW50KQogICAgIHsKICAgICAg
ICAgbV9uYW1lID0gbmFtZTsKICAgICAgICAgbV9uYW1lU3R5bGVTY29wZU9yZGluYWwgPSBzY29w
ZTsKQEAgLTE0OSw3ICsxNTQsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNldElzTm9uZUFuaW1h
dGlvbihib29sIG4pIHsgbV9pc05vbmUgPSBuOyB9CiAKLSAgICBBbmltYXRpb24mIG9wZXJhdG9y
PShjb25zdCBBbmltYXRpb24mIG8pOworICAgIEFuaW1hdGlvbiYgb3BlcmF0b3I9KGNvbnN0IEFu
aW1hdGlvbiYpOwogCiAgICAgLy8gcmV0dXJuIHRydWUgaWYgYWxsIG1lbWJlcnMgb2YgdGhpcyBj
bGFzcyBtYXRjaCAoZXhjbHVkaW5nIG1fbmV4dCkKICAgICBib29sIGFuaW1hdGlvbnNNYXRjaChj
b25zdCBBbmltYXRpb24mLCBib29sIG1hdGNoUHJvcGVydGllcyA9IHRydWUpIGNvbnN0OwpAQCAt
MTYzLDEyICsxNjgsMTIgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIFdFQkNPUkVfRVhQT1JU
IEFuaW1hdGlvbigpOwotICAgIEFuaW1hdGlvbihjb25zdCBBbmltYXRpb24mIG8pOworICAgIEFu
aW1hdGlvbihjb25zdCBBbmltYXRpb24mKTsKICAgICAKICAgICAvLyBQYWNrcyB3aXRoIG1fcmVm
Q291bnQgZnJvbSB0aGUgYmFzZSBjbGFzcy4KICAgICBUcmFuc2l0aW9uUHJvcGVydHkgbV9wcm9w
ZXJ0eSB7IFRyYW5zaXRpb25Nb2RlOjpBbGwsIENTU1Byb3BlcnR5SW52YWxpZCB9OwogCi0gICAg
U3RyaW5nIG1fbmFtZTsKKyAgICBOYW1lIG1fbmFtZTsKICAgICBTdHJpbmcgbV91bmtub3duUHJv
cGVydHk7CiAgICAgZG91YmxlIG1faXRlcmF0aW9uQ291bnQ7CiAgICAgZG91YmxlIG1fZGVsYXk7
CkBAIC0yMDEsNyArMjA2LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBkb3VibGUgaW5pdGlhbER1
cmF0aW9uKCkgeyByZXR1cm4gMDsgfQogICAgIHN0YXRpYyBBbmltYXRpb25GaWxsTW9kZSBpbml0
aWFsRmlsbE1vZGUoKSB7IHJldHVybiBBbmltYXRpb25GaWxsTW9kZTo6Tm9uZTsgfQogICAgIHN0
YXRpYyBkb3VibGUgaW5pdGlhbEl0ZXJhdGlvbkNvdW50KCkgeyByZXR1cm4gMS4wOyB9Ci0gICAg
c3RhdGljIGNvbnN0IFN0cmluZyYgaW5pdGlhbE5hbWUoKTsKKyAgICBzdGF0aWMgY29uc3QgTmFt
ZSYgaW5pdGlhbE5hbWUoKTsKICAgICBzdGF0aWMgQW5pbWF0aW9uUGxheVN0YXRlIGluaXRpYWxQ
bGF5U3RhdGUoKSB7IHJldHVybiBBbmltYXRpb25QbGF5U3RhdGU6OlBsYXlpbmc7IH0KICAgICBz
dGF0aWMgVHJhbnNpdGlvblByb3BlcnR5IGluaXRpYWxQcm9wZXJ0eSgpIHsgcmV0dXJuIHsgVHJh
bnNpdGlvbk1vZGU6OkFsbCwgQ1NTUHJvcGVydHlJbnZhbGlkIH07IH0KICAgICBzdGF0aWMgUmVm
PFRpbWluZ0Z1bmN0aW9uPiBpbml0aWFsVGltaW5nRnVuY3Rpb24oKSB7IHJldHVybiBDdWJpY0Jl
emllclRpbWluZ0Z1bmN0aW9uOjpjcmVhdGUoKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9T
dHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaAppbmRleCAyZTMwNDgzMTY4NjI1OWE2NjFmZmU2M2MzYTQw
N2JmNjkxMWJhNWFiLi44OThkZmRlZWFjNDM1ZWMxMDVmYmIwMjI3MzM1NWI3MjMwNTE2Nzg0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaApAQCAtMTA1
OSw4ICsxMDU5LDcgQEAgaW5saW5lIGJvb2wgQnVpbGRlckNvbnZlcnRlcjo6Y3JlYXRlR3JpZFBv
c2l0aW9uKGNvbnN0IENTU1ZhbHVlJiB2YWx1ZSwgR3JpZFBvc2kKICAgICAvLyBhdXRvIHwgPGN1
c3RvbS1pZGVudD4gfCBbIDxpbnRlZ2VyPiAmJiA8Y3VzdG9tLWlkZW50Pj8gXSB8IFsgc3BhbiAm
JiBbIDxpbnRlZ2VyPiB8fCA8Y3VzdG9tLWlkZW50PiBdIF0KICAgICBpZiAoaXM8Q1NTUHJpbWl0
aXZlVmFsdWU+KHZhbHVlKSkgewogICAgICAgICBhdXRvJiBwcmltaXRpdmVWYWx1ZSA9IGRvd25j
YXN0PENTU1ByaW1pdGl2ZVZhbHVlPih2YWx1ZSk7Ci0gICAgICAgIC8vIFdlIHRyYW5zbGF0ZSA8
aWRlbnQ+IHRvIDxzdHJpbmc+IGR1cmluZyBwYXJzaW5nIGFzIGl0IG1ha2VzIGhhbmRsaW5nIGl0
IHNpbXBsZXIuCi0gICAgICAgIGlmIChwcmltaXRpdmVWYWx1ZS5pc1N0cmluZygpKSB7CisgICAg
ICAgIGlmIChwcmltaXRpdmVWYWx1ZS5pc0N1c3RvbUlkZW50KCkpIHsKICAgICAgICAgICAgIHBv
c2l0aW9uLnNldE5hbWVkR3JpZEFyZWEocHJpbWl0aXZlVmFsdWUuc3RyaW5nVmFsdWUoKSk7CiAg
ICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgfQpAQCAtMTA4OSw3ICsxMDg4LDcgQEAg
aW5saW5lIGJvb2wgQnVpbGRlckNvbnZlcnRlcjo6Y3JlYXRlR3JpZFBvc2l0aW9uKGNvbnN0IENT
U1ZhbHVlJiB2YWx1ZSwgR3JpZFBvc2kKICAgICB9CiAKICAgICBTdHJpbmcgZ3JpZExpbmVOYW1l
OwotICAgIGlmIChjdXJyZW50VmFsdWUgJiYgY3VycmVudFZhbHVlLT5pc1N0cmluZygpKSB7Cisg
ICAgaWYgKGN1cnJlbnRWYWx1ZSAmJiBjdXJyZW50VmFsdWUtPmlzQ3VzdG9tSWRlbnQoKSkgewog
ICAgICAgICBncmlkTGluZU5hbWUgPSBjdXJyZW50VmFsdWUtPnN0cmluZ1ZhbHVlKCk7CiAgICAg
ICAgICsraXQ7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVh
YmxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlYWJsZS5jcHAKaW5kZXggMGQ3Yzdk
NWEwNTliYWRiODgxNDdmOWE1YTFkMjk3MmRhMjQ3ZGMxMi4uMzA0OGM2NTA0ZjNmN2IxYTE0NGI4
N2Q4YmJlMWM4NjcxZmQ4OTk3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5
bGVhYmxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZWFibGUuY3BwCkBAIC0x
NDAsMTAgKzE0MCw4IEBAIHN0YXRpYyBib29sIHNob3VsZENvbnNpZGVyQW5pbWF0aW9uKEVsZW1l
bnQmIGVsZW1lbnQsIGNvbnN0IEFuaW1hdGlvbiYgYW5pbWF0aW9uCiAgICAgaWYgKCFhbmltYXRp
b24uaXNWYWxpZEFuaW1hdGlvbigpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBzdGF0
aWMgTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgU3RyaW5nPiBhbmltYXRpb25OYW1lTm9uZShNQUtFX1NU
QVRJQ19TVFJJTkdfSU1QTCgibm9uZSIpKTsKLQotICAgIGF1dG8mIG5hbWUgPSBhbmltYXRpb24u
bmFtZSgpOwotICAgIGlmIChuYW1lID09IGFuaW1hdGlvbk5hbWVOb25lIHx8IG5hbWUuaXNFbXB0
eSgpKQorICAgIGF1dG8mIG5hbWUgPSBhbmltYXRpb24ubmFtZSgpLnN0cmluZzsKKyAgICBpZiAo
bmFtZSA9PSAibm9uZSIgfHwgbmFtZS5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsK
IAogICAgIGlmIChhdXRvKiBzdHlsZVNjb3BlID0gU3R5bGU6OlNjb3BlOjpmb3JPcmRpbmFsKGVs
ZW1lbnQsIGFuaW1hdGlvbi5uYW1lU3R5bGVTY29wZU9yZGluYWwoKSkpCkBAIC0xODksNyArMTg3
LDcgQEAgdm9pZCBTdHlsZWFibGU6OnVwZGF0ZUNTU0FuaW1hdGlvbnMoY29uc3QgUmVuZGVyU3R5
bGUqIGN1cnJlbnRTdHlsZSwgY29uc3QgUmVuZGUKIAogICAgICAgICAgICAgYm9vbCBmb3VuZE1h
dGNoaW5nQW5pbWF0aW9uID0gZmFsc2U7CiAgICAgICAgICAgICBmb3IgKGF1dG8mIHByZXZpb3Vz
QW5pbWF0aW9uIDogcHJldmlvdXNBbmltYXRpb25zKSB7Ci0gICAgICAgICAgICAgICAgaWYgKHBy
ZXZpb3VzQW5pbWF0aW9uLT5hbmltYXRpb25OYW1lKCkgPT0gY3VycmVudEFuaW1hdGlvbi5uYW1l
KCkpIHsKKyAgICAgICAgICAgICAgICBpZiAocHJldmlvdXNBbmltYXRpb24tPmFuaW1hdGlvbk5h
bWUoKSA9PSBjdXJyZW50QW5pbWF0aW9uLm5hbWUoKS5zdHJpbmcpIHsKICAgICAgICAgICAgICAg
ICAgICAgLy8gVGltaW5nIHByb3BlcnRpZXMgb3IgcGxheSBzdGF0ZSBtYXkgaGF2ZSBjaGFuZ2Vk
IHNvIHdlIG5lZWQgdG8gdXBkYXRlIHRoZSBiYWNraW5nIGFuaW1hdGlvbiB3aXRoCiAgICAgICAg
ICAgICAgICAgICAgIC8vIHRoZSBBbmltYXRpb24gZm91bmQgaW4gdGhlIGN1cnJlbnQgc3R5bGUu
CiAgICAgICAgICAgICAgICAgICAgIHByZXZpb3VzQW5pbWF0aW9uLT5zZXRCYWNraW5nQW5pbWF0
aW9uKGN1cnJlbnRBbmltYXRpb24pOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9v
bHMvQ2hhbmdlTG9nCmluZGV4IDg4NDVkZDRkNTdjY2E2M2MyYTkzNmE1NGQ4MjIxZjM0OGRiNTI3
NzAuLmJhOTE1ZDliMmI1MTc0OWNmODEwNTM0ODJkNDk3YmJmN2U4YjI1ZWQgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAor
MjAyMS0wNi0wNSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgSGFu
ZGxlIGN1c3RvbSBpZGVudGlmaWVycyBhbmQgc3RyaW5ncyBzZXBhcmF0ZWx5LCBzbyB3ZSBjYW4g
cXVvdGUgc3RyaW5ncyBjb3JyZWN0bHkgY29uc2lzdGVudGx5CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjY2OTQKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RSdW5uZXJTaGFyZWQvVGVzdEZlYXR1
cmVzLmNwcDoKKyAgICAgICAgKFdUUjo6cGFyc2VUZXN0SGVhZGVyKTogRml4ZWQgYSBtaXNzaW5n
IHF1b3RlIHRoYXQgbWFkZSBhIGxvZyBtZXNzYWdlIHJlYWQgc3RyYW5nZWx5LgorCiAyMDIxLTA2
LTA0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgRmlsZVN5c3Rl
bTo6cmVhZEZyb21GaWxlKCkgc2hvdWxkIHJldHVybiBkYXRhIGFzIGB2b2lkKmAKZGlmZiAtLWdp
dCBhL1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQvVGVzdEZlYXR1cmVzLmNwcCBiL1Rvb2xzL1Rlc3RS
dW5uZXJTaGFyZWQvVGVzdEZlYXR1cmVzLmNwcAppbmRleCA5Mjk4YTNiNTEzNTBlMDE2OTUyYmU2
NWQ3ZTVmYjc3NzA4YTNlNTQwLi5mMzBlYjA0YWE3NzMwMDQ2YjkwYWVhMjdmNDVjNjMyOTgwNzE0
NDcxIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0UnVubmVyU2hhcmVkL1Rlc3RGZWF0dXJlcy5jcHAK
KysrIGIvVG9vbHMvVGVzdFJ1bm5lclNoYXJlZC9UZXN0RmVhdHVyZXMuY3BwCkBAIC0yODMsNyAr
MjgzLDcgQEAgc3RhdGljIFRlc3RGZWF0dXJlcyBwYXJzZVRlc3RIZWFkZXIoc3RkOjpmaWxlc3lz
dGVtOjpwYXRoIHBhdGgsIGNvbnN0IHN0ZDo6dW5vcmQKICAgICAgICAgYXV0byB2YWx1ZSA9IHBh
aXJTdHJpbmcuc3Vic3RyKGVxdWFsc0xvY2F0aW9uICsgMSwgcGFpckVuZCAtIChlcXVhbHNMb2Nh
dGlvbiArIDEpKTsKICAgICAgICAgCiAgICAgICAgIGlmICghcGFyc2VUZXN0SGVhZGVyRmVhdHVy
ZShmZWF0dXJlcywga2V5LCB2YWx1ZSwgcGF0aCwga2V5VHlwZU1hcCkpCi0gICAgICAgICAgICBM
T0dfRVJST1IoIlVua25vd24ga2V5LCAnJXMsIGluIHRlc3QgaGVhZGVyIGluICVzIiwga2V5LmNf
c3RyKCksIHBhdGguY19zdHIoKSk7CisgICAgICAgICAgICBMT0dfRVJST1IoIlVua25vd24ga2V5
LCAnJXMnLCBpbiB0ZXN0IGhlYWRlciBpbiAlcyIsIGtleS5jX3N0cigpLCBwYXRoLmNfc3RyKCkp
OwogICAgICAgICAKICAgICAgICAgcGFpclN0YXJ0ID0gcGFpckVuZCArIDE7CiAgICAgfQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IDkzMTllZDYwZTIxZDE3NWJlYjllN2E2OTkwYTM0ZGJkZDA4OGE2MWEuLmY3NWE5MDM1ZTNm
OGUzNDQ5ZWFkZWE0MjY5NGQxMjlmYTNlMDQ4NjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NCBAQAorMjAy
MS0wNi0wNSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgSGFuZGxl
IGN1c3RvbSBpZGVudGlmaWVycyBhbmQgc3RyaW5ncyBzZXBhcmF0ZWx5LCBzbyB3ZSBjYW4gcXVv
dGUgc3RyaW5ncyBjb3JyZWN0bHkgY29uc2lzdGVudGx5CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjY2OTQKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6IFJlbW92ZWQgZXhw
ZWN0ZWQgZmFpbHVyZXMgZnJvbSAxMyBjc3MtY291bnRlci1zdHlsZXMgdGVzdHMgdGhhdCBhcmUg
bm90CisgICAgICAgIGN1cnJlbnRseSBmYWlsaW5nLiBJIGhhZCBwbGFubmVkIHRvIHdvcmsgb24g
bWFraW5nIG1vcmUgb2YgdGhlc2UgcGFzcywgYnV0IGZpcnN0IGZvdW5kIEkgY291bGQKKyAgICAg
ICAgZml4IHRoZW0gd2l0aCBhIGNvcnJlY3RlZCBjdXN0b20taWRlbnQgaW1wbGVtZW50YXRpb24u
CisKKyAgICAgICAgKiBjc3MzL3N1cHBvcnRzLWV4cGVjdGVkLnR4dDogUmViYXNlZC4KKyAgICAg
ICAgKiBjc3MzL3N1cHBvcnRzLmh0bWw6IFVwZGF0ZWQgdG8gZXhwZWN0IHRoZSB2YWx1ZSBvZiB0
aGUgY29udGVudCBwcm9wZXJ0eSB0byBiZSBhIHF1b3RlZCBzdHJpbmcsCisgICAgICAgIHJhdGhl
ciB0aGFuIHRoZSBvbGQgYmVoYXZpb3IsIHdoaWNoIHdhcyB0byBsZWF2ZSB0aGUgc3RyaW5nIHVu
cXVvdGVkIGlmIGl0IGhhcHBlbmVkIHRvIGJlIGEKKyAgICAgICAgc3RyaW5nIHdpdGggYWxsIGNo
YXJhY3RlcnMgbGVnYWwgZm9yIGEgY3VzdG9tLWlkZW50LiBOZXcgZXhwZWN0YXRpb24gaXMgdGhl
IGNvcnJlY3QgYmVoYXZpb3IuCisKKyAgICAgICAgKiBmYXN0L2Nzcy9hbHQtaW5oZXJpdC1pbml0
aWFsLWV4cGVjdGVkLnR4dDogUmViYXNlZC4KKyAgICAgICAgKiBmYXN0L2Nzcy9hbHQtaW5oZXJp
dC1pbml0aWFsLmh0bWw6IFVwZGF0ZWQgdG8gZXhwZWN0IHRoZSB2YWx1ZSBvZiB0aGUgbGFuZ3Vh
Z2UgcHJvcGVydHkgdG8gYmUKKyAgICAgICAgYSBjdXN0b20taWRlbnQsIGFuZCBzZXJpYWxpemUg
dW51c3VhbCBjYXNlcyB3aXRoIGN1c3RvbS1pZGVudCBydWxlcywgbm90IGFzIGEgcXVvdGVkIHN0
cmluZy4gTmV3CisgICAgICAgIGV4cGVjdGF0aW9uIGlzIHRoZSBjb3JyZWN0IGJlaGF2aW9yLgor
ICAgICAgICAqIGZhc3QvY3NzL2NvbnRlbnQtbGFuZ3VhZ2UtY29tbWEtc2VwYXJhdGVkLWxpc3Qt
ZXhwZWN0ZWQudHh0OiBEaXR0by4KKyAgICAgICAgKiBmYXN0L2Nzcy9jb250ZW50LWxhbmd1YWdl
LWVtcHR5LWV4cGVjdGVkLnR4dDogRGl0dG8uCisgICAgICAgICogZmFzdC9jc3MvY29udGVudC1s
YW5ndWFnZS1vbmx5LXdoaXRlc3BhY2UtZXhwZWN0ZWQudHh0OiBEaXR0by4KKyAgICAgICAgKiBm
YXN0L2Nzcy9jb250ZW50LWxhbmd1YWdlLXdpdGgtd2hpdGVzcGFjZS1leHBlY3RlZC50eHQ6IERp
dHRvLgorCisgICAgICAgICogZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHls
ZS1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dDogUmViYXNlZC4KKyAgICAgICAgKiBmYXN0L2Nzcy9n
ZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXByb3BlcnRpZXMuaHRtbDogRXhwZWN0IGNv
bnRlbnQgc3RyaW5nIChzZWUgYWJvdmUpLgorCisgICAgICAgICogZmFzdC9jc3MvbGFuZy1tYXBw
ZWQtdG8td2Via2l0LWxvY2FsZS1leHBlY3RlZC50eHQ6IFJlYmFzZWQuCisgICAgICAgICogZmFz
dC9jc3MvbGFuZy1tYXBwZWQtdG8td2Via2l0LWxvY2FsZS54aHRtbDogRXhwZWN0IGxhbmd1YWdl
IGN1c3RvbS1pZGVudCAoc2VlIGFib3ZlKS4KKworICAgICAgICAqIGZhc3QvY3NzL25lc3RlZC1h
dC1ydWxlcy1leHBlY3RlZC50eHQ6IFJlYmFzZWQuCisgICAgICAgICogZmFzdC9jc3MvbmVzdGVk
LWF0LXJ1bGVzLmh0bWw6IEV4cGVjdCBjb250ZW50IHN0cmluZyAoc2VlIGFib3ZlKS4KKworICAg
ICAgICAqIGZhc3QvY3NzL3BhcnNpbmctdGV4dC1lbXBoYXNpcy1leHBlY3RlZC50eHQ6IFJlYmFz
ZWQuCisgICAgICAgICogZmFzdC9jc3MvcGFyc2luZy10ZXh0LWVtcGhhc2lzLmh0bWw6IFVwZGF0
ZWQgdG8gZXhwZWN0IHN0cmluZ3MgdG8gcmVtYWluZyBxdW90ZWQgc3RyaW5ncyBpbgorICAgICAg
ICB0aGUgdGV4dC1lbXBoYXNpcyBwcm9wZXJ0eSwgbm90IGNoYW5nZSBpbnRvIGN1c3RvbS1pZGVu
dCBpZiBhbGwgY2hhcmFjdGVycyBoYXBwZW4gdG8gZml0LgorCisgICAgICAgICogZmFzdC9lbmNv
ZGluZy9jc3MtY2hhcnNldC1kZWZhdWx0LWV4cGVjdGVkLnR4dDogRXhwZWN0IGNvbnRlbnQgc3Ry
aW5nIChzZWUgYWJvdmUpLgorICAgICAgICAqIGluc3BlY3Rvci9jc3MvcHNldWRvLWVsZW1lbnQt
bWF0Y2hlcy1mb3ItcHNldWRvLWVsZW1lbnQtbm9kZS1leHBlY3RlZC50eHQ6IERpdHRvLgorCiAy
MDIxLTA2LTA1ICBDYW1lcm9uIE1jQ29ybWFjayAgPGhleWNhbUBhcHBsZS5jb20+CiAKICAgICAg
ICAgRGlmZiBhc3BlY3QtcmF0aW8gcHJvcGVydHkgdmFsdWVzIGNvcnJlY3RseQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggOWU3ODQ5ZjgxMWM3ZDRiMDlkODBmNDk1OTcxMzQxODIz
MWZmNWU5YS4uMmRmZjY5NmNjMjg1MzY3YTM4NDQ3YjIzNzg1M2FmZGRiNDY4NmIwMiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMjEtMDYtMDUgIERh
cmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgorCisgICAgICAgIEhhbmRsZSBjdXN0b20gaWRl
bnRpZmllcnMgYW5kIHN0cmluZ3Mgc2VwYXJhdGVseSwgc28gd2UgY2FuIHF1b3RlIHN0cmluZ3Mg
Y29ycmVjdGx5IGNvbnNpc3RlbnRseQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjI2Njk0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL3Bh
cnNpbmcvYW5pbWF0aW9uLW5hbWUtdmFsaWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2NvdW50ZXItc3R5bGUtbmVnYXRp
dmUtc3ludGF4LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1jb3VudGVyLXN0eWxlcy9jb3VudGVyLXN0eWxlLXBhZC1zeW50YXgtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2Nv
dW50ZXItc3R5bGUtcHJlZml4LXN1ZmZpeC1zeW50YXgtZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2NvdW50ZXItc3R5bGUt
c3ltYm9scy1zeW50YXgtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWdyaWQvcGFyc2luZy9ncmlkLWFyZWEtY29tcHV0ZWQtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvcGFyc2luZy9ncmlkLWFy
ZWEtc2hvcnRoYW5kLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3JpZC1hcmVhLXZhbGlkLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1saXN0cy9wYXJzaW5nL2NvbnRlbnQtaW52
YWxpZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mt
dHJhbnNpdGlvbnMvdHJhbnNpdGlvbi1wcm9wZXJ0eS0wMDItZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1wc2V1ZG8t
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vc2Vy
aWFsaXplLXZhbHVlcy1leHBlY3RlZC50eHQ6CisgICAgICAgIFJlYmFzZWQgdG8gcmVmbGVjdCBw
cm9ncmVzc2lvbnMuIEluIHNvbWUgY2FzZXMgdGhlIGVudGlyZSB0ZXN0IHBhc3NlcywgaW4gb3Ro
ZXIgY2FzZXMgd2Ugc3RpbGwKKyAgICAgICAgaGF2ZSBmYWlsdXJlcywgYnV0IHRoZSBzdHJpbmcg
c2VyaWFsaXphdGlvbiBwYXJ0IG9mIHRoZSB0ZXN0IGhhcyBwcm9ncmVzc2VkLgorCiAyMDIxLTA2
LTA0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgV29ya2VyLmNv
bnN0cnVjdG9yIHRocm93cyBhbiBleGNlcHRpb24gd2hlbiB0aGUgdXJsIHBhcmFtIGlzIGFuIGVt
cHR5IHN0cmluZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucyBiL0xh
eW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZmY3Y2Y4ZjdjYjg5NjdkODk4ZWE3MDZm
YmYzYzAzMTlhMjhhNTk1Ny4uZDgwOWJmZDQ1NmE0NDljYWUyZjQ2NmNmZWI5NmM4NWQxYTRhNThm
NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRU
ZXN0cy9UZXN0RXhwZWN0YXRpb25zCkBAIC00NzQwLDEwICs0NzQwLDcgQEAgd2Via2l0Lm9yZy9i
LzIyNDM1NyBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mtd3JpdGluZy1t
b2Rlcy9zaXppbmcKIHdlYmtpdC5vcmcvYi8yMjQzNTcgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3Nzb20tdmlldy9jc3NvbS1nZXRCb3VuZGluZ0NsaWVudFJlY3QtdmVydGlj
YWwtcmwuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogCiAjIEBjb3VudGVyLXN0eWxlIHJlZiB0
ZXN0cyB0aGF0IGN1cnJlbnRseSBmYWlsCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtY291bnRlci1zdHlsZXMvYXJtZW5pYW4vY3NzMy1jb3VudGVyLXN0eWxlcy0wMDYu
aHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2FybWVuaWFuL2NzczMtY291bnRlci1zdHlsZXMtMDA3
Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9hcm1lbmlhbi9jc3MzLWNvdW50ZXItc3R5bGVzLTAw
OC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvYXJtZW5pYW4vY3NzMy1jb3VudGVyLXN0eWxlcy0w
MDkuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2Nqay1kZWNpbWFsL2NzczMtY291bnRlci1zdHls
ZXMtMDAxLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jamstZGVjaW1hbC9jc3MzLWNvdW50ZXIt
c3R5bGVzLTAwNC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY2prLWRlY2ltYWwvY3NzMy1jb3Vu
dGVyLXN0eWxlcy0wMDUuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQpAQCAtNDc3MiwxMCArNDc2
OSw2IEBAIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0
eWxlcy9jc3NvbS9jc3NvbS1zeW1ib2xzLXNldHRlCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY3Nzb20vY3Nzb20tc3lzdGVtLXNldHRlci0x
Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jc3NvbS9jc3NvbS1zeXN0ZW0tc2V0dGVyLTIuaHRt
bCBbIEltYWdlT25seUZhaWx1cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLWNvdW50ZXItc3R5bGVzL2Nzc29tL2Nzc29tLXN5c3RlbS1zZXR0ZXItaW52YWxpZC5o
dG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtY291bnRlci1zdHlsZXMvZ2VvcmdpYW4vY3NzMy1jb3VudGVyLXN0eWxlcy0wMTAu
aHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2dlb3JnaWFuL2NzczMtY291bnRlci1zdHlsZXMtMDEx
Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9nZW9yZ2lhbi9jc3MzLWNvdW50ZXItc3R5bGVzLTAx
Mi5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvZ2VvcmdpYW4vY3NzMy1jb3VudGVyLXN0eWxlcy0w
MTQuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2hlYnJldy9jc3MzLWNvdW50ZXItc3R5bGVzLTAx
NmEuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2hpcmFnYW5hLWlyb2hhL2NzczMtY291bnRlci1z
dHlsZXMtMDMzLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9oaXJhZ2FuYS1pcm9oYS9jc3MzLWNv
dW50ZXItc3R5bGVzLTAzNC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCkBAIC00ODE0LDEwICs0
ODA3LDcgQEAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXIt
c3R5bGVzL2tvcmVhbi1oYW5qYS1pbmZvcm1hbC9jc3MKIGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9rb3JlYW4taGFuamEtaW5mb3JtYWwvY3Nz
My1jb3VudGVyLXN0eWxlcy0wNTkuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2tvcmVhbi1oYW5q
YS1pbmZvcm1hbC9jc3MzLWNvdW50ZXItc3R5bGVzLTA2MC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVy
ZSBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHls
ZXMva29yZWFuLWhhbmphLWluZm9ybWFsL2NzczMtY291bnRlci1zdHlsZXMtMDYxLmh0bWwgWyBJ
bWFnZU9ubHlGYWlsdXJlIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1jb3VudGVyLXN0eWxlcy9sb3dlci1hcm1lbmlhbi9jc3MzLWNvdW50ZXItc3R5bGVzLTExMS5o
dG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtY291bnRlci1zdHlsZXMvbG93ZXItYXJtZW5pYW4vY3NzMy1jb3VudGVyLXN0eWxl
cy0xMTIuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2xvd2VyLWFybWVuaWFuL2NzczMtY291bnRl
ci1zdHlsZXMtMTE0Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLWltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9sb3dlci1hcm1lbmlhbi9jc3Mz
LWNvdW50ZXItc3R5bGVzLTExNS5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiBpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvbG93ZXItcm9tYW4v
Y3NzMy1jb3VudGVyLXN0eWxlcy0wMTkuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2xvd2VyLXJv
bWFuL2NzczMtY291bnRlci1zdHlsZXMtMDIwLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9sb3dl
ci1yb21hbi9jc3MzLWNvdW50ZXItc3R5bGVzLTAyMGEuaHRtbCBbIEltYWdlT25seUZhaWx1cmUg
XQpAQCAtNDg0NSwxMCArNDgzNSw3IEBAIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1jb3VudGVyLXN0eWxlcy90cmFkLWNoaW5lc2UtaW5mb3JtYWwvY3NzCiBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvdHJhZC1jaGlu
ZXNlLWluZm9ybWFsL2NzczMtY291bnRlci1zdHlsZXMtMDgzLmh0bWwgWyBJbWFnZU9ubHlGYWls
dXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0
eWxlcy90cmFkLWNoaW5lc2UtaW5mb3JtYWwvY3NzMy1jb3VudGVyLXN0eWxlcy0wODQuaHRtbCBb
IEltYWdlT25seUZhaWx1cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLWNvdW50ZXItc3R5bGVzL3RyYWQtY2hpbmVzZS1pbmZvcm1hbC9jc3MzLWNvdW50ZXItc3R5
bGVzLTA4NS5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvdXBwZXItYXJtZW5pYW4vY3NzMy1jb3Vu
dGVyLXN0eWxlcy0xMDcuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL3VwcGVyLWFybWVuaWFuL2Nz
czMtY291bnRlci1zdHlsZXMtMTA4Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy91cHBlci1hcm1l
bmlhbi9jc3MzLWNvdW50ZXItc3R5bGVzLTEwOS5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi1p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvdXBw
ZXItYXJtZW5pYW4vY3NzMy1jb3VudGVyLXN0eWxlcy0xMTAuaHRtbCBbIEltYWdlT25seUZhaWx1
cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5
bGVzL3VwcGVyLXJvbWFuL2NzczMtY291bnRlci1zdHlsZXMtMDIzLmh0bWwgWyBJbWFnZU9ubHlG
YWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVy
LXN0eWxlcy91cHBlci1yb21hbi9jc3MzLWNvdW50ZXItc3R5bGVzLTAyNC5odG1sIFsgSW1hZ2VP
bmx5RmFpbHVyZSBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291
bnRlci1zdHlsZXMvdXBwZXItcm9tYW4vY3NzMy1jb3VudGVyLXN0eWxlcy0wMjRhLmh0bWwgWyBJ
bWFnZU9ubHlGYWlsdXJlIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvc3VwcG9ydHMt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9zdXBwb3J0cy1leHBlY3RlZC50eHQKaW5k
ZXggYjE4MmFjMThlYzc1OTIwNjVkMzBiNDI4YzAyMmE5MGU5MGYzNWM5Zi4uZWRkNDAyZTk1Yjdm
NWViNWZmZjk3ODg5NTYwNzA5NDhiMDNlZWU4ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9zdXBwb3J0cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9zdXBwb3J0cy1l
eHBlY3RlZC50eHQKQEAgLTMsNTEgKzMsNTEgQEAgVGVzdCB0aGUgQHN1cHBvcnRzIHJ1bGUuCiBP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURSIuCiAKIAotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCd0MCcpKS5jb250ZW50IGlzICJBUFBMSUVEIgotUEFTUyBnZXRD
b21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MScpKS5jb250ZW50IGlzICJV
TlRPVUNIRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3QyJykpLmNvbnRlbnQgaXMgIkFQUExJRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3QzJykpLmNvbnRlbnQgaXMgIlVOVE9VQ0hFRCIKLVBBU1MgZ2V0
Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDQnKSkuY29udGVudCBpcyAi
QVBQTElFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
dDUnKSkuY29udGVudCBpcyAiVU5UT1VDSEVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCd0NicpKS5jb250ZW50IGlzICJBUFBMSUVEIgotUEFTUyBnZXRD
b21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0NycpKS5jb250ZW50IGlzICJB
UFBMSUVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0
OCcpKS5jb250ZW50IGlzICJVTlRPVUNIRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3Q5JykpLmNvbnRlbnQgaXMgIkFQUExJRUQiCi1QQVNTIGdldENv
bXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QxMCcpKS5jb250ZW50IGlzICJB
UFBMSUVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0
MTEnKSkuY29udGVudCBpcyAiQVBQTElFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgndDEyJykpLmNvbnRlbnQgaXMgIlVOVE9VQ0hFRCIKLVBBU1MgZ2V0
Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDEzJykpLmNvbnRlbnQgaXMg
IlVOVE9VQ0hFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgndDE0JykpLmNvbnRlbnQgaXMgIlVOVE9VQ0hFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDE1JykpLmNvbnRlbnQgaXMgIkFQUExJRUQiCi1QQVNT
IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QxNicpKS5jb250ZW50
IGlzICJBUFBMSUVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd0MTcnKSkuY29udGVudCBpcyAiQVBQTElFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDE4JykpLmNvbnRlbnQgaXMgIlVOVE9VQ0hFRCIKLVBB
U1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDE5JykpLmNvbnRl
bnQgaXMgIkFQUExJRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3QyMCcpKS5jb250ZW50IGlzICJBUFBMSUVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxl
KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MjEnKSkuY29udGVudCBpcyAiQVBQTElFRCIKLVBB
U1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDIyJykpLmNvbnRl
bnQgaXMgIkFQUExJRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3QyMycpKS5jb250ZW50IGlzICJBUFBMSUVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxl
KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MjQnKSkuY29udGVudCBpcyAiQVBQTElFRCIKLVBB
U1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDI1JykpLmNvbnRl
bnQgaXMgIkFQUExJRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3QyNicpKS5jb250ZW50IGlzICJBUFBMSUVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxl
KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MjcnKSkuY29udGVudCBpcyAiQVBQTElFRCIKLVBB
U1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDI4JykpLmNvbnRl
bnQgaXMgIlVOVE9VQ0hFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgndDI5JykpLmNvbnRlbnQgaXMgIlVOVE9VQ0hFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRT
dHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDMwJykpLmNvbnRlbnQgaXMgIkFQUExJRUQi
Ci1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QzMScpKS5j
b250ZW50IGlzICJBUFBMSUVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCd0MzInKSkuY29udGVudCBpcyAiQVBQTElFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRT
dHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDMzJykpLmNvbnRlbnQgaXMgIkFQUExJRUQi
Ci1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QzNCcpKS5j
b250ZW50IGlzICJVTlRPVUNIRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3QzNScpKS5jb250ZW50IGlzICJBUFBMSUVEIgotUEFTUyBnZXRDb21wdXRl
ZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MzYnKSkuY29udGVudCBpcyAiVU5UT1VD
SEVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0Mzcn
KSkuY29udGVudCBpcyAiQVBQTElFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgndDM4JykpLmNvbnRlbnQgaXMgIkFQUExJRUQiCi1QQVNTIGdldENvbXB1
dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QzOScpKS5jb250ZW50IGlzICJBUFBM
SUVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0NDAn
KSkuY29udGVudCBpcyAiQVBQTElFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgndDQxJykpLmNvbnRlbnQgaXMgIkFQUExJRUQiCi1QQVNTIGdldENvbXB1
dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Q0MicpKS5jb250ZW50IGlzICJBUFBM
SUVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0NDMn
KSkuY29udGVudCBpcyAiVU5UT1VDSEVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCd0NDQnKSkuY29udGVudCBpcyAiVU5UT1VDSEVEIgorUEFTUyBnZXRD
b21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MCcpKS5jb250ZW50IGlzICJc
IkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgndDEnKSkuY29udGVudCBpcyAiXCJVTlRPVUNIRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHls
ZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDInKSkuY29udGVudCBpcyAiXCJBUFBMSUVEXCIi
CitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QzJykpLmNv
bnRlbnQgaXMgIlwiVU5UT1VDSEVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ3Q0JykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRD
b21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0NScpKS5jb250ZW50IGlzICJc
IlVOVE9VQ0hFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd0NicpKS5jb250ZW50IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHls
ZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDcnKSkuY29udGVudCBpcyAiXCJBUFBMSUVEXCIi
CitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Q4JykpLmNv
bnRlbnQgaXMgIlwiVU5UT1VDSEVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ3Q5JykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRD
b21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MTAnKSkuY29udGVudCBpcyAi
XCJBUFBMSUVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ3QxMScpKS5jb250ZW50IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHls
ZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDEyJykpLmNvbnRlbnQgaXMgIlwiVU5UT1VDSEVE
XCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QxMycp
KS5jb250ZW50IGlzICJcIlVOVE9VQ0hFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCd0MTQnKSkuY29udGVudCBpcyAiXCJVTlRPVUNIRURcIiIKK1BB
U1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDE1JykpLmNvbnRl
bnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCd0MTYnKSkuY29udGVudCBpcyAiXCJBUFBMSUVEXCIiCitQQVNTIGdldENvbXB1
dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QxNycpKS5jb250ZW50IGlzICJcIkFQ
UExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
dDE4JykpLmNvbnRlbnQgaXMgIlwiVU5UT1VDSEVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUo
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QxOScpKS5jb250ZW50IGlzICJcIkFQUExJRURcIiIK
K1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDIwJykpLmNv
bnRlbnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCd0MjEnKSkuY29udGVudCBpcyAiXCJBUFBMSUVEXCIiCitQQVNTIGdldENv
bXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QyMicpKS5jb250ZW50IGlzICJc
IkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgndDIzJykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxl
KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MjQnKSkuY29udGVudCBpcyAiXCJBUFBMSUVEXCIi
CitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QyNScpKS5j
b250ZW50IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgndDI2JykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRD
b21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MjcnKSkuY29udGVudCBpcyAi
XCJBUFBMSUVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ3QyOCcpKS5jb250ZW50IGlzICJcIlVOVE9VQ0hFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0
eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MjknKSkuY29udGVudCBpcyAiXCJVTlRPVUNI
RURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDMw
JykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCd0MzEnKSkuY29udGVudCBpcyAiXCJBUFBMSUVEXCIiCitQQVNT
IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QzMicpKS5jb250ZW50
IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgndDMzJykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRDb21wdXRl
ZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MzQnKSkuY29udGVudCBpcyAiXCJVTlRP
VUNIRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
dDM1JykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MzYnKSkuY29udGVudCBpcyAiXCJVTlRPVUNIRURcIiIK
K1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDM3JykpLmNv
bnRlbnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCd0MzgnKSkuY29udGVudCBpcyAiXCJBUFBMSUVEXCIiCitQQVNTIGdldENv
bXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QzOScpKS5jb250ZW50IGlzICJc
IkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgndDQwJykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxl
KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0NDEnKSkuY29udGVudCBpcyAiXCJBUFBMSUVEXCIi
CitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Q0MicpKS5j
b250ZW50IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgndDQzJykpLmNvbnRlbnQgaXMgIlwiVU5UT1VDSEVEXCIiCitQQVNTIGdl
dENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Q0NCcpKS5jb250ZW50IGlz
ICJcIlVOVE9VQ0hFRFwiIgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNU
IENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL3N1cHBvcnRzLmh0bWwgYi9M
YXlvdXRUZXN0cy9jc3MzL3N1cHBvcnRzLmh0bWwKaW5kZXggNjBhZTI1NmFiNTk2NTY4YzJkZDgw
MzgzOTYyY2M4Njg4ODMyYTU5Zi4uN2Q1YzFlMTg0Y2EyODI4MmFlOGI1Njk4YWVkNzBjNzg0YWMy
NTliMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9zdXBwb3J0cy5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2NzczMvc3VwcG9ydHMuaHRtbApAQCAtMjM5LDcgKzIzOSw3IEBACiAgICAgICAg
IGRpdi5pZCA9ICJ0IiArIGk7CiAgICAgICAgIGRpdi5jbGFzc05hbWUgPSAidGVzdCI7CiAgICAg
ICAgIGNvbnRhaW5lci5hcHBlbmRDaGlsZChkaXYpOwotICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoImdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QiK2krIicp
KS5jb250ZW50IiwgdW50b3VjaGVkVGVzdHMuaW5kZXhPZihpKSA+PSAwID8gIlVOVE9VQ0hFRCIg
OiAiQVBQTElFRCIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImdldENvbXB1dGVk
U3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QiK2krIicpKS5jb250ZW50IiwgdW50b3Vj
aGVkVGVzdHMuaW5kZXhPZihpKSA+PSAwID8gJyJVTlRPVUNIRUQiJyA6ICciQVBQTElFRCInKTsK
ICAgICB9CiAKICAgICB0ZXN0X2NvbnRhaW5lci5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRlc3Rf
Y29udGFpbmVyKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2FsdC1pbmhlcml0
LWluaXRpYWwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvYWx0LWluaGVyaXQt
aW5pdGlhbC1leHBlY3RlZC50eHQKaW5kZXggOWJjMTM1MjBjMjBhZTc1YjQ0MWFhZGJlMjNiZWUw
ZGVmYjIxOGFlNy4uNzNhYzRiOTM0ZTczYWRjZDY3N2M2ZDg1Njc4Mzg4NjdlZDAzMmU1MiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvYWx0LWluaGVyaXQtaW5pdGlhbC1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvYWx0LWluaGVyaXQtaW5pdGlhbC1leHBl
Y3RlZC50eHQKQEAgLTQsMTEgKzQsMTEgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUKIAogCiBQ
QVNTIHBhcmVudERpdi5zdHlsZVsnYWx0J10gaXMgIiIKLVBBU1Mgd2luZG93LmdldENvbXB1dGVk
U3R5bGUocGFyZW50RGl2KS5nZXRQcm9wZXJ0eVZhbHVlKCdhbHQnKSBpcyAiVGVzdEFsdCIKK1BB
U1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUocGFyZW50RGl2KS5nZXRQcm9wZXJ0eVZhbHVlKCdh
bHQnKSBpcyAiXCJUZXN0QWx0XCIiCiBQQVNTIHRlc3REaXYuc3R5bGVbJ2FsdCddIGlzICIiCiB0
ZXN0RGl2LnN0eWxlWydhbHQnXSA9ICdpbmhlcml0JwogUEFTUyB0ZXN0RGl2LnN0eWxlWydhbHQn
XSBpcyAiaW5oZXJpdCIKLVBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUodGVzdERpdikuZ2V0
UHJvcGVydHlWYWx1ZSgnYWx0JykgaXMgIlRlc3RBbHQiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRl
ZFN0eWxlKHRlc3REaXYpLmdldFByb3BlcnR5VmFsdWUoJ2FsdCcpIGlzICJcIlRlc3RBbHRcIiIK
IHRlc3REaXYuc3R5bGVbJ2FsdCddID0gJ2luaXRpYWwnCiBQQVNTIHRlc3REaXYuc3R5bGVbJ2Fs
dCddIGlzICJpbml0aWFsIgogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0ZXN0RGl2KS5n
ZXRQcm9wZXJ0eVZhbHVlKCdhbHQnKSBpcyAiXCJcIiIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvY3NzL2FsdC1pbmhlcml0LWluaXRpYWwuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L2FsdC1pbmhlcml0LWluaXRpYWwuaHRtbAppbmRleCAyZWM3OTI4ZDAzZGRlM2FjNTAyYjgyMTk0
YjNkMzBiOWJlN2UzMGM0Li40OGNlYjAyZDg5OWE0ZjhlY2ZkYzAxYWU2NjI1NjRmNDQ5OTc1Njli
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9hbHQtaW5oZXJpdC1pbml0aWFsLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvYWx0LWluaGVyaXQtaW5pdGlhbC5odG1sCkBA
IC0xOSwxMyArMTksMTMgQEAgZGVzY3JpcHRpb24oIlRlc3RzIGluaGVyaXQgYW5kIGluaXRpYWwg
b24gJ2FsdCcgQ1NTIHByb3BlcnR5LiIpOwogdmFyIHBhcmVudERpdiA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJwYXJlbnREaXYiKTsKIHZhciB0ZXN0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInRlc3REaXYiKTsKIHNob3VsZEJlRW1wdHlTdHJpbmcoInBhcmVudERpdi5zdHlsZVsn
YWx0J10iLCAiIik7Ci1zaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0
eWxlKHBhcmVudERpdikuZ2V0UHJvcGVydHlWYWx1ZSgnYWx0JykiLCAiVGVzdEFsdCIpOworc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwYXJlbnREaXYpLmdl
dFByb3BlcnR5VmFsdWUoJ2FsdCcpIiwgJyJUZXN0QWx0IicpOwogc2hvdWxkQmVFbXB0eVN0cmlu
ZygidGVzdERpdi5zdHlsZVsnYWx0J10iKTsKIAogLy8gSW5oZXJpdC4KIGV2YWxBbmRMb2coInRl
c3REaXYuc3R5bGVbJ2FsdCddID0gJ2luaGVyaXQnIik7CiBzaG91bGRCZUVxdWFsVG9TdHJpbmco
InRlc3REaXYuc3R5bGVbJ2FsdCddIiwgImluaGVyaXQiKTsKLXNob3VsZEJlRXF1YWxUb1N0cmlu
Zygid2luZG93LmdldENvbXB1dGVkU3R5bGUodGVzdERpdikuZ2V0UHJvcGVydHlWYWx1ZSgnYWx0
JykiLCAiVGVzdEFsdCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0
ZWRTdHlsZSh0ZXN0RGl2KS5nZXRQcm9wZXJ0eVZhbHVlKCdhbHQnKSIsICciVGVzdEFsdCInKTsK
IAogLy8gSW5pdGlhbC4KIGV2YWxBbmRMb2coInRlc3REaXYuc3R5bGVbJ2FsdCddID0gJ2luaXRp
YWwnIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9jb250ZW50LWxhbmd1YWdl
LWNvbW1hLXNlcGFyYXRlZC1saXN0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L2NvbnRlbnQtbGFuZ3VhZ2UtY29tbWEtc2VwYXJhdGVkLWxpc3QtZXhwZWN0ZWQudHh0CmluZGV4
IDJiMzFmNzQxYTE2ODBmNzFlOGQzMWE1YjRmZjk5NmQxNjBlZDQ4NWEuLmVkYTMyNDlhZTA0YzM3
YjJhMzFkMzQ5MDAzOTI3MDI3NWE3MzNkMjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzL2NvbnRlbnQtbGFuZ3VhZ2UtY29tbWEtc2VwYXJhdGVkLWxpc3QtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2NvbnRlbnQtbGFuZ3VhZ2UtY29tbWEtc2VwYXJhdGVk
LWxpc3QtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogVGVzdCBmb3IgYnVnIDc2NzAxOiBt
YXAgSFRUUC1FUVVJViBjb250ZW50LWxhbmd1YWdlIHRvIC13ZWJraXQtbG9jYWxlLiBUaGlzIHBh
cnRpY3VsYXIgdGVzdCB0ZXN0cyB0aGF0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgbGFuZ3Vh
Z2VzIGlzIGlnbm9yZWQuIFRoaXMgZXhwZWN0YXRpb24gbWF5IGNoYW5nZSwgc2VlIGJ1Zy4gVGhl
IEhUTUw1IHNwZWMgc2F5cyB0aGF0IGNvbnRlbnQtbGFuZ3VhZ2Ugc2hvdWxkIG5vdCBoYXZlIG11
bHRpcGxlIGxhbmd1YWdlcywgYW5kIGRlY3JlZXMgdGhhdCBhIGNvbnRlbnQtbGFuZ3VhZ2UgY29u
dGFpbmluZyBhIGNvbW1hIGJlIGlnbm9yZWQ7IHRoaXMgcG9zaXRpb24gaGFzIGJlZW4gdXBoZWxk
IGZvbGxvd2luZyBzaWduaWZpY2FudCBkZWJhdGUuIEZpcmVmb3ggYWNjZXB0cyBhIGNvbW1hLXNl
cGFyYXRlZCBsaXN0IGFuZCBhIENTUyA6bGFuZyBzZWxlY3RvciBmb3IgYW55IGxhbmd1YWdlIGlu
IHRoZSBsaXN0IGlzIG1hdGNoZWQuIEl0J3MgdW5jbGVhciB3aGF0IElFIGRvZXMuCiAKLUZBSUwg
bGFuZ3VhZ2VPZk5vZGUoJ3gnKSBzaG91bGQgYmUgYXV0by4gV2FzICJqYSwgemhfQ04iLgorRkFJ
TCBsYW5ndWFnZU9mTm9kZSgneCcpIHNob3VsZCBiZSBhdXRvLiBXYXMgamFcLFwgemhfQ04uCiBQ
QVNTIGxhbmd1YWdlT2ZOb2RlKCd5JykgaXMgImFyIgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9jb250ZW50LWxhbmd1
YWdlLWVtcHR5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2NvbnRlbnQtbGFu
Z3VhZ2UtZW1wdHktZXhwZWN0ZWQudHh0CmluZGV4IDMzN2I4YzAzNWVkOGU3NDZjM2Q0YmI0MjVj
MWY1MTdjN2EyYzI0YWEuLjRlNjcyMWE4NzQ3MWJjMWE0MWI1NmI1ZjllZDk5NDRmMmRmOTE5OTYg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2NvbnRlbnQtbGFuZ3VhZ2UtZW1wdHkt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2NvbnRlbnQtbGFuZ3VhZ2Ut
ZW1wdHktZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogVGVzdCBmb3IgYnVnIDc2NzAxOiBt
YXAgSFRUUC1FUVVJViBjb250ZW50LWxhbmd1YWdlIHRvIC13ZWJraXQtbG9jYWxlLiBUaGlzIHBh
cnRpY3VsYXIgdGVzdCB0ZXN0cyB0aGF0IGEgY29udGVudC1sYW5ndWFnZSBvZiBlbXB0eSBzdHJp
bmcgaXMgaWdub3JlZC4gVGhpcyBleHBlY3RhdGlvbiBtYXkgY2hhbmdlLCBzZWUgYnVnLiBIVE1M
NSBkZWNyZWVzIHRoYXQgdGhlIG1ldGEgZWxlbWVudCBiZSBpZ25vcmVkIGluIGNhc2Ugb2YgdGhl
IGVtcHR5IHN0cmluZy4gSXQncyB1bmNsZWFyIHdoYXQgb3RoZXIgYnJvd3NlcnMgZG8uCiAKLUZB
SUwgbGFuZ3VhZ2VPZk5vZGUoJ3gnKSBzaG91bGQgYmUgYXV0by4gV2FzICIiLgorRkFJTCBsYW5n
dWFnZU9mTm9kZSgneCcpIHNob3VsZCBiZSBhdXRvLiBXYXMgLgogUEFTUyBsYW5ndWFnZU9mTm9k
ZSgneScpIGlzICJhciIKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvY29udGVudC1sYW5ndWFnZS1vbmx5LXdoaXRlc3Bh
Y2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvY29udGVudC1sYW5ndWFnZS1v
bmx5LXdoaXRlc3BhY2UtZXhwZWN0ZWQudHh0CmluZGV4IDNhYmUyNTM1MzAzYzZjYWRhMDM5ZGJi
ZmZhODQxNjM0MzRiOTZhOGQuLmQzZGU4ZGNjZTZiNzFmYzFlMzNmZWI2N2JmNDFhNTE5MGYxODIw
MGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2NvbnRlbnQtbGFuZ3VhZ2Utb25s
eS13aGl0ZXNwYWNlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9jb250
ZW50LWxhbmd1YWdlLW9ubHktd2hpdGVzcGFjZS1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBA
CiBUZXN0IGZvciBidWcgNzY3MDE6IG1hcCBIVFRQLUVRVUlWIGNvbnRlbnQtbGFuZ3VhZ2UgdG8g
LXdlYmtpdC1sb2NhbGUuIFRoaXMgcGFydGljdWxhciB0ZXN0IHRlc3RzIHRoYXQgYSBjb250ZW50
LWxhbmd1YWdlIHdpdGggd2hpdGVzcGFjZS1vbmx5IGNvbnRlbnQgaXMgaWdub3JlZC4gVGhpcyBl
eHBlY3RhdGlvbiBtYXkgY2hhbmdlLCBzZWUgYnVnLiBIVE1MNSBkZWNyZWVzIHRoYXQgdGhlIG1l
dGEgZWxlbWVudCBiZSBpZ25vcmVkIGluIGNhc2Ugb2Ygd2hpdGVzcGFjZSBvbmx5IGNvbnRlbnQu
IEl0J3MgdW5jbGVhciB3aGF0IG90aGVyIGJyb3dzZXJzIGRvLgogCi1GQUlMIGxhbmd1YWdlT2ZO
b2RlKCd4Jykgc2hvdWxkIGJlIGF1dG8uIFdhcyAiICBcOSBcYSAgIi4KK0ZBSUwgbGFuZ3VhZ2VP
Zk5vZGUoJ3gnKSBzaG91bGQgYmUgYXV0by4gV2FzIFwgXCBcOSBcYSBcIC4KIFBBU1MgbGFuZ3Vh
Z2VPZk5vZGUoJ3knKSBpcyAiYXIiCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2NvbnRlbnQtbGFuZ3VhZ2Utd2l0aC13
aGl0ZXNwYWNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2NvbnRlbnQtbGFu
Z3VhZ2Utd2l0aC13aGl0ZXNwYWNlLWV4cGVjdGVkLnR4dAppbmRleCAyM2VhMzgwYWY2ZTNjY2Mx
ZmVjYThkNjhhY2ZiOGE2Y2MwMzUzMmFhLi5iMDUxNzU5MzA3NGYwYmJmMDBhMjUwMDA2ZDhmODNl
YjVkM2RhMzE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9jb250ZW50LWxhbmd1
YWdlLXdpdGgtd2hpdGVzcGFjZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvY29udGVudC1sYW5ndWFnZS13aXRoLXdoaXRlc3BhY2UtZXhwZWN0ZWQudHh0CkBAIC0xLDYg
KzEsNiBAQAogVGVzdCBmb3IgYnVnIDc2NzAxOiBtYXAgSFRUUC1FUVVJViBjb250ZW50LWxhbmd1
YWdlIHRvIC13ZWJraXQtbG9jYWxlLiBUaGlzIHBhcnRpY3VsYXIgdGVzdCB0ZXN0cyB0aGF0IHRo
ZSB0aGUgcHJhZ21hLXNldCBkZWZhdWx0IGxhbmd1YWdlIGlzIHNldCB0byB0aGUgZmlyc3Qgc2Vx
dWVuY2Ugb2Ygbm9uLXdoaXRlc3BhY2UgY2hhcmFjdGVycyBvZiB0aGUgY29udGVudC1sYW5ndWFn
ZSBjb250ZW50LiBUaGlzIGV4cGVjdGF0aW9uIG1heSBjaGFuZ2UsIHNlZSBidWcuIFRoaXMgZXhw
ZWN0YXRpb24gaXMgYXMgcGVyIHRoZSBIVE1MIDUgc3BlYy4gSXQgYXBwZWFycyB0aGF0IEZpcmVm
b3ggZG9lcyBub3QgZXhhY3RseSBkbyB0aGlzLCBidXQgdHJpbXMgdGhlIGxlYWRpbmcgYW5kIHRy
YWlsaW5nIHdoaXRlc3BhY2UuIEl0J3MgdW5jbGVhciB3aGF0IElFIGRvZXMuCiAKLUZBSUwgbGFu
Z3VhZ2VPZk5vZGUoJ3gnKSBzaG91bGQgYmUgamFfSlAuIFdhcyAiICBcYSBcOSBcOSBqYS1KUCAg
IFw5ICB6aF9DTiBcOSBcYSBcYSBcOSBcOSAiLgorRkFJTCBsYW5ndWFnZU9mTm9kZSgneCcpIHNo
b3VsZCBiZSBqYV9KUC4gV2FzIFwgXCBcYSBcOSBcOSBqYS1KUFwgXCBcIFw5IFwgemhfQ05cIFw5
IFxhIFxhIFw5IFw5IC4KIFBBU1MgbGFuZ3VhZ2VPZk5vZGUoJ3knKSBpcyAiYXIiCiBQQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUtcHJvcGVydGllcy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxl
LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0CmluZGV4IDc1ZDY0NmU5YjI4ZWQ5NWMxYzY5YTVhYzRi
YmI2MDYxNDEwYjc0MTguLjVhMTQ5YjZmZTJiNDljYzcyZjJjMTY0NWQxMzY1ODcyZTFhNDE0N2Ig
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0
ZWQtc3R5bGUtcHJvcGVydGllcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4
dApAQCAtMTAsNyArMTAsNyBAQCBTdWJoZWFkaW5nIEIKIEhlYWRpbmcgQgogCiBQQVNTIGNvbXB1
dGVkU3R5bGVGb3IoJ291dGxpbmUnLCBudWxsLCAnb3V0bGluZS1vZmZzZXQnKSBpcyAnNXB4Jwot
UEFTUyBjb21wdXRlZFN0eWxlRm9yKCdjb250ZW50JywgJ2JlZm9yZScsICdjb250ZW50JykgaXMg
InRleHQiCitQQVNTIGNvbXB1dGVkU3R5bGVGb3IoJ2NvbnRlbnQnLCAnYmVmb3JlJywgJ2NvbnRl
bnQnKSBpcyAiXCJ0ZXh0XCIiCiBQQVNTIGNvbXB1dGVkU3R5bGVGb3IoJ2NvbnRlbnQnLCAnYWZ0
ZXInLCAnY29udGVudCcpIGlzICJcInRlc3QgXCIgdXJsKFwiZGF0YTppbWFnZS9naWY7YmFzZTY0
LFIwbEdPRGxoQVFBQkFKQUFBUDhBQUFBQUFDd0FBQUFBQVFBQkFBQUNBZ1FCQURzPVwiKSIKIFBB
U1MgY29tcHV0ZWRTdHlsZUZvcignY291bnRlcicsIG51bGwsICdjb3VudGVyLXJlc2V0JykgaXMg
InNlY3Rpb24gMCIKIFBBU1Mgc3RyLmluZGV4T2YoJ3N1YnNlY3Rpb24gMCcpICE9IC0xIGlzIHRy
dWUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29t
cHV0ZWQtc3R5bGUtcHJvcGVydGllcy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29t
cHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1wcm9wZXJ0aWVzLmh0bWwKaW5kZXggNTcxYzY4NmUw
ODRmNzQzYjNmMmYyOGYwMmNkYmZjM2M1NjA0NWJiZi4uMWYyOWI2ODRjZGJmMjM4YzU1MWYwNDYx
MGI2ZGMxMzZlOTk3Y2RjYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29t
cHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1wcm9wZXJ0aWVzLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1wcm9wZXJ0aWVzLmh0
bWwKQEAgLTY1LDcgKzY1LDcgQEAgZnVuY3Rpb24gY29tcHV0ZWRTdHlsZUZvcihpZCwgcHNldWRv
LCBwcm9wZXJ0eSkKIAogc2hvdWxkQmUoImNvbXB1dGVkU3R5bGVGb3IoJ291dGxpbmUnLCBudWxs
LCAnb3V0bGluZS1vZmZzZXQnKSIsICInNXB4JyIpOwogCi1zaG91bGRCZUVxdWFsVG9TdHJpbmco
ImNvbXB1dGVkU3R5bGVGb3IoJ2NvbnRlbnQnLCAnYmVmb3JlJywgJ2NvbnRlbnQnKSIsICJ0ZXh0
Iik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImNvbXB1dGVkU3R5bGVGb3IoJ2NvbnRlbnQnLCAn
YmVmb3JlJywgJ2NvbnRlbnQnKSIsICcidGV4dCInKTsKIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
Y29tcHV0ZWRTdHlsZUZvcignY29udGVudCcsICdhZnRlcicsICdjb250ZW50JykiLCBgInRlc3Qg
IiB1cmwoXCJkYXRhOmltYWdlL2dpZjtiYXNlNjQsUjBsR09EbGhBUUFCQUpBQUFQOEFBQUFBQUN3
QUFBQUFBUUFCQUFBQ0FnUUJBRHM9XCIpYCk7CiBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImNvbXB1
dGVkU3R5bGVGb3IoJ2NvdW50ZXInLCBudWxsLCAnY291bnRlci1yZXNldCcpIiwgInNlY3Rpb24g
MCIpOwogdmFyIHN0ciA9IGNvbXB1dGVkU3R5bGVGb3IoJ3N1YmNvdW50ZXInLCBudWxsLCAnY291
bnRlci1yZXNldCcpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvbGFuZy1tYXBw
ZWQtdG8td2Via2l0LWxvY2FsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9s
YW5nLW1hcHBlZC10by13ZWJraXQtbG9jYWxlLWV4cGVjdGVkLnR4dAppbmRleCBhODM0ZmNlMzkz
YjQ1N2NkMDAyNjQ1NDI2MGM4MWFmZjZlNTAxNzc3Li5jZGI2NGExMTIyMTMwMjU2YTgxODA4MjY5
YmQ4Y2Q3MDkxZGE3NmQzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9sYW5nLW1h
cHBlZC10by13ZWJraXQtbG9jYWxlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy9sYW5nLW1hcHBlZC10by13ZWJraXQtbG9jYWxlLWV4cGVjdGVkLnR4dApAQCAtMTksMTAg
KzE5LDEwIEBAIFBBU1MgbGFuZ3VhZ2VPZk5vZGUoJ3EyJykgaXMgImF1dG8iCiBQQVNTIGxhbmd1
YWdlT2ZOb2RlKCdxMycpIGlzICJhdXRvIgogUEFTUyBsYW5ndWFnZU9mTm9kZSgncTQnKSBpcyAi
YXIiCiBQQVNTIGxhbmd1YWdlT2ZOb2RlKCdxNScpIGlzICJhdXRvIgotUEFTUyBsYW5ndWFnZU9m
Tm9kZSgncTYnKSBpcyAiXCIgIFwiIgorUEFTUyBsYW5ndWFnZU9mTm9kZSgncTYnKSBpcyAiXFwg
XFwgIgogUEFTUyBsYW5ndWFnZU9mTm9kZSgncTcnKSBpcyAiYXV0byIKIFBBU1MgbGFuZ3VhZ2VP
Zk5vZGUoJ3E4JykgaXMgInh5enp5IgotUEFTUyBsYW5ndWFnZU9mTm9kZSgncTknKSBpcyAiXCJd
WztdW1tcIiIKK1BBU1MgbGFuZ3VhZ2VPZk5vZGUoJ3E5JykgaXMgIlxcXVxcW1xcO1xcXVxcW1xc
WyIKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvbGFuZy1tYXBwZWQtdG8td2Via2l0LWxvY2Fs
ZS54aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2xhbmctbWFwcGVkLXRvLXdlYmtpdC1sb2Nh
bGUueGh0bWwKaW5kZXggMGI5OTQ2ZDMzN2M5YWYyM2YxOTYyY2EzM2FmNTlkNmQ0ZjUwOTZlZi4u
NGE4Mjk3OTk3M2ZlMzQwNDY4NmRlNDRiNzRkYmZhMDI0YmI1ZGE5MyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9jc3MvbGFuZy1tYXBwZWQtdG8td2Via2l0LWxvY2FsZS54aHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9sYW5nLW1hcHBlZC10by13ZWJraXQtbG9jYWxlLnhodG1s
CkBAIC00NiwxNCArNDYsMTMgQEAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9k
ZSgncTInKSIsICJhdXRvIik7CiBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2Rl
KCdxMycpIiwgImF1dG8iKTsKIHNob3VsZEJlRXF1YWxUb1N0cmluZygibGFuZ3VhZ2VPZk5vZGUo
J3E0JykiLCAiYXIiKTsKIHNob3VsZEJlRXF1YWxUb1N0cmluZygibGFuZ3VhZ2VPZk5vZGUoJ3E1
JykiLCAiYXV0byIpOwotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgncTYn
KSIsIGAiICAiYCk7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCdxNicp
IiwgIlxcIFxcICIpOwogc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgncTcn
KSIsICJhdXRvIik7CiBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCdxOCcp
IiwgInh5enp5Iik7Ci1zaG91bGRCZUVxdWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCdxOScp
IiwgYCJdWztdW1siYCk7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCdx
OScpIiwgIlxcXVxcW1xcO1xcXVxcW1xcWyIpOwogCiB2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0g
dHJ1ZTsKIDwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgogPC9ib2R5PgogPC9odG1sPgotCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy9uZXN0ZWQtYXQtcnVsZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvbmVzdGVkLWF0LXJ1bGVzLWV4cGVjdGVkLnR4dAppbmRleCAyMjhhNzhiMTljNzMx
MjFmODQ4ZjRmN2JiMmEwMThlNDk1YWVlN2ZmLi44MDM5YmQ5YTAwZjYxZDYyNmQ4YmMxYmI4ZmZm
MTM1YmFkZDJjZjc4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9uZXN0ZWQtYXQt
cnVsZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL25lc3RlZC1hdC1y
dWxlcy1leHBlY3RlZC50eHQKQEAgLTIzLDggKzIzLDggQEAgcnVsZXNbMV0uY3NzUnVsZXNbMV0u
aW5zZXJ0UnVsZSgnQG1lZGlhIGFsbCB7IEBwYWdlIDpsZWZ0IHsgdG9wOiAwOyB9IH0nLCAxKQog
UEFTUyBydWxlc1sxXS5jc3NSdWxlc1sxXS5jc3NSdWxlcy5sZW5ndGggaXMgMgogUEFTUyBydWxl
c1sxXS5jc3NSdWxlc1sxXS5jc3NSdWxlc1sxXS50eXBlIGlzIENTU1J1bGUuTUVESUFfUlVMRQog
UEFTUyBydWxlc1sxXS5jc3NSdWxlc1sxXS5jc3NSdWxlc1sxXS5jc3NSdWxlc1swXS50eXBlIGlz
IENTU1J1bGUuUEFHRV9SVUxFCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ3QwJykpLmNvbnRlbnQgaXMgIkFQUExJRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5
bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QxJykpLmNvbnRlbnQgaXMgIlVOVE9VQ0hFRCIK
K1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDAnKSkuY29u
dGVudCBpcyAiXCJBUFBMSUVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3QxJykpLmNvbnRlbnQgaXMgIlwiVU5UT1VDSEVEXCIiCiBQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvY3NzL25lc3RlZC1hdC1ydWxlcy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvbmVzdGVkLWF0LXJ1bGVzLmh0bWwKaW5kZXggNGQ0N2NmYzRkMjNmZDNhNzQ2OTk1MWM1YWYw
MzAyNWYzMzgxYzRkYi4uODg0YjQwNDEyOWQyMDhjODNiNTc2NTJjNDI3YTNiNTkwMDU4YTUzYSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvbmVzdGVkLWF0LXJ1bGVzLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvbmVzdGVkLWF0LXJ1bGVzLmh0bWwKQEAgLTU3LDcgKzU3
LDcgQEAgc2hvdWxkRXZhbHVhdGVUbygicnVsZXNbMV0uY3NzUnVsZXNbMV0uY3NzUnVsZXMubGVu
Z3RoIiwgMik7CiBzaG91bGRCZSgicnVsZXNbMV0uY3NzUnVsZXNbMV0uY3NzUnVsZXNbMV0udHlw
ZSIsICJDU1NSdWxlLk1FRElBX1JVTEUiKTsKIHNob3VsZEJlKCJydWxlc1sxXS5jc3NSdWxlc1sx
XS5jc3NSdWxlc1sxXS5jc3NSdWxlc1swXS50eXBlIiwgIkNTU1J1bGUuUEFHRV9SVUxFIik7CiAK
LXNob3VsZEJlRXF1YWxUb1N0cmluZygiZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgndDAnKSkuY29udGVudCIsICJBUFBMSUVEIik7Ci1zaG91bGRCZUVxdWFsVG9TdHJp
bmcoImdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QxJykpLmNvbnRl
bnQiLCAiVU5UT1VDSEVEIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImdldENvbXB1dGVkU3R5
bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QwJykpLmNvbnRlbnQiLCAnIkFQUExJRUQiJyk7
CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ3QxJykpLmNvbnRlbnQiLCAnIlVOVE9VQ0hFRCInKTsKIDwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvcGFyc2luZy10ZXh0LWVtcGhhc2lzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3BhcnNpbmctdGV4dC1lbXBoYXNpcy1leHBl
Y3RlZC50eHQKaW5kZXggOGY3MDEyYmFlMzhhM2U5YzA1OTdhNjliMjMyY2QzMWZkMzdiYzhkOC4u
MDU1YzIxY2Q0OTRkZjQwMGRkMjQ4YzJhMTY3MTU1ODUxZTAxZjY0YyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9jc3MvcGFyc2luZy10ZXh0LWVtcGhhc2lzLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9wYXJzaW5nLXRleHQtZW1waGFzaXMtZXhwZWN0ZWQudHh0
CkBAIC0zNCw3ICszNCw3IEBAIFBBU1M6ICctd2Via2l0LXRleHQtZW1waGFzaXMtc3R5bGU6IGNp
cmNsZTsnIHBhcnNlZCBhcyBbJycsICcnLCAnY2lyY2xlJywgJyddCiBQQVNTOiAnLXdlYmtpdC10
ZXh0LWVtcGhhc2lzLXN0eWxlOiBkb3VibGUtY2lyY2xlOycgcGFyc2VkIGFzIFsnJywgJycsICdk
b3VibGUtY2lyY2xlJywgJyddCiBQQVNTOiAnLXdlYmtpdC10ZXh0LWVtcGhhc2lzLXN0eWxlOiB0
cmlhbmdsZTsnIHBhcnNlZCBhcyBbJycsICcnLCAndHJpYW5nbGUnLCAnJ10KIFBBU1M6ICctd2Vi
a2l0LXRleHQtZW1waGFzaXMtc3R5bGU6IHNlc2FtZTsnIHBhcnNlZCBhcyBbJycsICcnLCAnc2Vz
YW1lJywgJyddCi1QQVNTOiAnLXdlYmtpdC10ZXh0LWVtcGhhc2lzLXN0eWxlOiAiY2hlZXNlIjsn
IHBhcnNlZCBhcyBbJycsICcnLCAnY2hlZXNlJywgJyddCitQQVNTOiAnLXdlYmtpdC10ZXh0LWVt
cGhhc2lzLXN0eWxlOiAiY2hlZXNlIjsnIHBhcnNlZCBhcyBbJycsICcnLCAnImNoZWVzZSInLCAn
J10KIFBBU1M6ICctd2Via2l0LXRleHQtZW1waGFzaXMtc3R5bGU6IDFweDsnIHBhcnNlZCBhcyBb
JycsICcnLCAnJywgJyddCiBQQVNTOiAnLXdlYmtpdC10ZXh0LWVtcGhhc2lzLXN0eWxlOiByZWQ7
JyBwYXJzZWQgYXMgWycnLCAnJywgJycsICcnXQogUEFTUzogJy13ZWJraXQtdGV4dC1lbXBoYXNp
cy1zdHlsZTogb3BlbiBkb3Q7JyBwYXJzZWQgYXMgWycnLCAnJywgJ29wZW4gZG90JywgJyddCkBA
IC00OSw5ICs0OSw5IEBAIFBBU1M6ICctd2Via2l0LXRleHQtZW1waGFzaXMtc3R5bGU6IG9wZW4g
ImNoZWVzZSI7JyBwYXJzZWQgYXMgWycnLCAnJywgJycsICcnXQogUEFTUzogJy13ZWJraXQtdGV4
dC1lbXBoYXNpczogaW5pdGlhbCcgcGFyc2VkIGFzIFsnaW5pdGlhbCcsICcnLCAnaW5pdGlhbCcs
ICdpbml0aWFsJ10KIFBBU1M6ICctd2Via2l0LXRleHQtZW1waGFzaXM6IGluaGVyaXQnIHBhcnNl
ZCBhcyBbJ2luaGVyaXQnLCAnJywgJ2luaGVyaXQnLCAnaW5oZXJpdCddCiBQQVNTOiAnLXdlYmtp
dC10ZXh0LWVtcGhhc2lzOiByZWQnIHBhcnNlZCBhcyBbJ3JlZCcsICcnLCAnaW5pdGlhbCcsICdy
ZWQnXQotUEFTUzogJy13ZWJraXQtdGV4dC1lbXBoYXNpczogImNoZWVzZSInIHBhcnNlZCBhcyBb
J2luaXRpYWwnLCAnJywgJ2NoZWVzZScsICdjaGVlc2UnXQotUEFTUzogJy13ZWJraXQtdGV4dC1l
bXBoYXNpczogcmVkICJjaGVlc2UiJyBwYXJzZWQgYXMgWydyZWQnLCAnJywgJ2NoZWVzZScsICdj
aGVlc2UgcmVkJ10KLVBBU1M6ICctd2Via2l0LXRleHQtZW1waGFzaXM6ICJjaGVlc2UiIHJlZCcg
cGFyc2VkIGFzIFsncmVkJywgJycsICdjaGVlc2UnLCAnY2hlZXNlIHJlZCddCitQQVNTOiAnLXdl
YmtpdC10ZXh0LWVtcGhhc2lzOiAiY2hlZXNlIicgcGFyc2VkIGFzIFsnaW5pdGlhbCcsICcnLCAn
ImNoZWVzZSInLCAnImNoZWVzZSInXQorUEFTUzogJy13ZWJraXQtdGV4dC1lbXBoYXNpczogcmVk
ICJjaGVlc2UiJyBwYXJzZWQgYXMgWydyZWQnLCAnJywgJyJjaGVlc2UiJywgJyJjaGVlc2UiIHJl
ZCddCitQQVNTOiAnLXdlYmtpdC10ZXh0LWVtcGhhc2lzOiAiY2hlZXNlIiByZWQnIHBhcnNlZCBh
cyBbJ3JlZCcsICcnLCAnImNoZWVzZSInLCAnImNoZWVzZSIgcmVkJ10KIFBBU1M6ICctd2Via2l0
LXRleHQtZW1waGFzaXM6IGZpbGxlZCBzZXNhbWUgcmVkJyBwYXJzZWQgYXMgWydyZWQnLCAnJywg
J2ZpbGxlZCBzZXNhbWUnLCAnZmlsbGVkIHNlc2FtZSByZWQnXQogUEFTUzogJy13ZWJraXQtdGV4
dC1lbXBoYXNpczogcmVkIGZpbGxlZCBzZXNhbWUnIHBhcnNlZCBhcyBbJ3JlZCcsICcnLCAnZmls
bGVkIHNlc2FtZScsICdmaWxsZWQgc2VzYW1lIHJlZCddCiBQQVNTOiAnLXdlYmtpdC10ZXh0LWVt
cGhhc2lzOiBmaWxsZWQgcmVkIHNlc2FtZScgcGFyc2VkIGFzIFsnJywgJycsICcnLCAnJ10KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3BhcnNpbmctdGV4dC1lbXBoYXNpcy5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvcGFyc2luZy10ZXh0LWVtcGhhc2lzLmh0bWwKaW5kZXgg
YjBiZTA5OTY5ZjViNWZjNDNmYWM0MjViMzExODA5MTJkOTYyMDc2Ny4uMWRlMTgxMzU4MzYwMTky
MjI2YWM4Y2NjMmE3NDdjMzU2MTJiM2M5ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvcGFyc2luZy10ZXh0LWVtcGhhc2lzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
cGFyc2luZy10ZXh0LWVtcGhhc2lzLmh0bWwKQEAgLTYzLDcgKzYzLDcgQEAKICAgICB0ZXN0KCct
d2Via2l0LXRleHQtZW1waGFzaXMtc3R5bGU6IGRvdWJsZS1jaXJjbGU7JywgJycsICcnLCAnZG91
YmxlLWNpcmNsZScpOwogICAgIHRlc3QoJy13ZWJraXQtdGV4dC1lbXBoYXNpcy1zdHlsZTogdHJp
YW5nbGU7JywgJycsICcnLCAndHJpYW5nbGUnKTsKICAgICB0ZXN0KCctd2Via2l0LXRleHQtZW1w
aGFzaXMtc3R5bGU6IHNlc2FtZTsnLCAnJywgJycsICdzZXNhbWUnKTsKLSAgICB0ZXN0KCctd2Vi
a2l0LXRleHQtZW1waGFzaXMtc3R5bGU6ICJjaGVlc2UiOycsICcnLCAnJywgJ2NoZWVzZScpOwor
ICAgIHRlc3QoJy13ZWJraXQtdGV4dC1lbXBoYXNpcy1zdHlsZTogImNoZWVzZSI7JywgJycsICcn
LCAnImNoZWVzZSInKTsKICAgICB0ZXN0KCctd2Via2l0LXRleHQtZW1waGFzaXMtc3R5bGU6IDFw
eDsnLCAnJywgJycsICcnKTsKICAgICB0ZXN0KCctd2Via2l0LXRleHQtZW1waGFzaXMtc3R5bGU6
IHJlZDsnLCAnJywgJycsICcnKTsKIApAQCAtODAsOSArODAsOSBAQAogICAgIHRlc3QoJy13ZWJr
aXQtdGV4dC1lbXBoYXNpczogaW5pdGlhbCcsICdpbml0aWFsJywgJycsICdpbml0aWFsJywgJ2lu
aXRpYWwnKTsKICAgICB0ZXN0KCctd2Via2l0LXRleHQtZW1waGFzaXM6IGluaGVyaXQnLCAnaW5o
ZXJpdCcsICcnLCAnaW5oZXJpdCcsICdpbmhlcml0Jyk7CiAgICAgdGVzdCgnLXdlYmtpdC10ZXh0
LWVtcGhhc2lzOiByZWQnLCAncmVkJywgJycsICdpbml0aWFsJywgJ3JlZCcpOwotICAgIHRlc3Qo
Jy13ZWJraXQtdGV4dC1lbXBoYXNpczogImNoZWVzZSInLCAnaW5pdGlhbCcsICcnLCAnY2hlZXNl
JywgJ2NoZWVzZScpOwotICAgIHRlc3QoJy13ZWJraXQtdGV4dC1lbXBoYXNpczogcmVkICJjaGVl
c2UiJywgJ3JlZCcsICcnLCAnY2hlZXNlJywgJ2NoZWVzZSByZWQnKTsKLSAgICB0ZXN0KCctd2Vi
a2l0LXRleHQtZW1waGFzaXM6ICJjaGVlc2UiIHJlZCcsICdyZWQnLCAnJywgJ2NoZWVzZScsICdj
aGVlc2UgcmVkJyk7CisgICAgdGVzdCgnLXdlYmtpdC10ZXh0LWVtcGhhc2lzOiAiY2hlZXNlIics
ICdpbml0aWFsJywgJycsICciY2hlZXNlIicsICciY2hlZXNlIicpOworICAgIHRlc3QoJy13ZWJr
aXQtdGV4dC1lbXBoYXNpczogcmVkICJjaGVlc2UiJywgJ3JlZCcsICcnLCAnImNoZWVzZSInLCAn
ImNoZWVzZSIgcmVkJyk7CisgICAgdGVzdCgnLXdlYmtpdC10ZXh0LWVtcGhhc2lzOiAiY2hlZXNl
IiByZWQnLCAncmVkJywgJycsICciY2hlZXNlIicsICciY2hlZXNlIiByZWQnKTsKICAgICB0ZXN0
KCctd2Via2l0LXRleHQtZW1waGFzaXM6IGZpbGxlZCBzZXNhbWUgcmVkJywgJ3JlZCcsICcnLCAn
ZmlsbGVkIHNlc2FtZScsICdmaWxsZWQgc2VzYW1lIHJlZCcpOwogICAgIHRlc3QoJy13ZWJraXQt
dGV4dC1lbXBoYXNpczogcmVkIGZpbGxlZCBzZXNhbWUnLCAncmVkJywgJycsICdmaWxsZWQgc2Vz
YW1lJywgJ2ZpbGxlZCBzZXNhbWUgcmVkJyk7CiAgICAgdGVzdCgnLXdlYmtpdC10ZXh0LWVtcGhh
c2lzOiBmaWxsZWQgcmVkIHNlc2FtZScsICcnLCAnJywgJycpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9lbmNvZGluZy9jc3MtY2hhcnNldC1kZWZhdWx0LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvY3NzLWNoYXJzZXQtZGVmYXVsdC1leHBlY3RlZC50eHQK
aW5kZXggOTU0NzkwZTBkNGMxMDI2ZDUxZDJjOWJiZWZjYTUyM2U3ODViNDg3Ny4uNDZmZmEzNTM5
ODM5MDg3ODM0M2VhNmNjOGFkN2I3MDkyNWQyNTJiOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9lbmNvZGluZy9jc3MtY2hhcnNldC1kZWZhdWx0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2VuY29kaW5nL2Nzcy1jaGFyc2V0LWRlZmF1bHQtZXhwZWN0ZWQudHh0CkBA
IC0xLDkgKzEsOSBAQAogVGVzdCBmb3IgYnVnIDExMDExOiBFeHRlcm5hbCBDU1MgaXMgcGFyc2Vk
IGFzIGlzby04ODU5LTEgZXZlbiB0aG91Z2ggdGhlIG1haW4gZG9jdW1lbnQgaXMgdXRmLTguCiAK
LVN0eWxlc2hlZXQgMSAoaW5oZXJpdCBkb2N1bWVudCBjaGFyc2V0IHVzaW5nIHhtbC1zdHlsZXNo
ZWV0IHByb2Nlc3NpbmcgaW5zdHJ1Y3Rpb24pOiBTVdCh0KHQlVNTCitTdHlsZXNoZWV0IDEgKGlu
aGVyaXQgZG9jdW1lbnQgY2hhcnNldCB1c2luZyB4bWwtc3R5bGVzaGVldCBwcm9jZXNzaW5nIGlu
c3RydWN0aW9uKTogIlNV0KHQodCVU1MiCiAKLVN0eWxlc2hlZXQgMiAoaW5oZXJpdCBkb2N1bWVu
dCBjaGFyc2V0IHVzaW5nIGxpbmspOiBTVdCh0KHQlVNTCitTdHlsZXNoZWV0IDIgKGluaGVyaXQg
ZG9jdW1lbnQgY2hhcnNldCB1c2luZyBsaW5rKTogIlNV0KHQodCVU1MiCiAKLVN0eWxlc2hlZXQg
MyAoaW5oZXJpdCByZWZlcnJpbmcgc3R5bGVzaGVldCBjaGFyc2V0KTogU1XQodCh0JVTUworU3R5
bGVzaGVldCAzIChpbmhlcml0IHJlZmVycmluZyBzdHlsZXNoZWV0IGNoYXJzZXQpOiAiU1XQodCh
0JVTUyIKIAotU3R5bGVzaGVldCA0IChpbmhlcml0IHJlZmVycmluZyBpbmxpbmUgc3R5bGVzaGVl
dCBjaGFyc2V0KTogU1XQodCh0JVTUworU3R5bGVzaGVldCA0IChpbmhlcml0IHJlZmVycmluZyBp
bmxpbmUgc3R5bGVzaGVldCBjaGFyc2V0KTogIlNV0KHQodCVU1MiCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9u
cy9wYXJzaW5nL2FuaW1hdGlvbi1uYW1lLXZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL3BhcnNp
bmcvYW5pbWF0aW9uLW5hbWUtdmFsaWQtZXhwZWN0ZWQudHh0CmluZGV4IDFkMWQ5YzQ2NGQwZmRk
OThmN2E5OTRmOTgyNzk0NWRmMTc2MjNjMWUuLjczNDFkOTA1Yjg5ZWEyOTFmMzdkNzQwMzliYzBj
NGZmMjk5NjIyOGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL3BhcnNpbmcvYW5pbWF0aW9uLW5hbWUtdmFs
aWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL3BhcnNpbmcvYW5pbWF0aW9uLW5hbWUtdmFsaWQt
ZXhwZWN0ZWQudHh0CkBAIC02LDggKzYsOCBAQCBQQVNTIGUuc3R5bGVbJ2FuaW1hdGlvbi1uYW1l
J10gPSAiZWFzZS1pbiIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUKIFBBU1MgZS5zdHls
ZVsnYW5pbWF0aW9uLW5hbWUnXSA9ICJpbmZpbml0ZSIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkg
dmFsdWUKIFBBU1MgZS5zdHlsZVsnYW5pbWF0aW9uLW5hbWUnXSA9ICJwYXVzZWQiIHNob3VsZCBz
ZXQgdGhlIHByb3BlcnR5IHZhbHVlCiBQQVNTIGUuc3R5bGVbJ2FuaW1hdGlvbi1uYW1lJ10gPSAi
Zmlyc3QsIHNlY29uZCwgdGhpcmQiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCi1GQUlM
IGUuc3R5bGVbJ2FuaW1hdGlvbi1uYW1lJ10gPSAiXCJzdHJpbmdcIiIgc2hvdWxkIHNldCB0aGUg
cHJvcGVydHkgdmFsdWUgYXNzZXJ0X2VxdWFsczogc2VyaWFsaXphdGlvbiBzaG91bGQgYmUgY2Fu
b25pY2FsIGV4cGVjdGVkICJcInN0cmluZ1wiIiBidXQgZ290ICJzdHJpbmciCitQQVNTIGUuc3R5
bGVbJ2FuaW1hdGlvbi1uYW1lJ10gPSAiXCJzdHJpbmdcIiIgc2hvdWxkIHNldCB0aGUgcHJvcGVy
dHkgdmFsdWUKIFBBU1MgZS5zdHlsZVsnYW5pbWF0aW9uLW5hbWUnXSA9ICJcIm11bHRpIHdvcmQg
c3RyaW5nXCIiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCi1GQUlMIGUuc3R5bGVbJ2Fu
aW1hdGlvbi1uYW1lJ10gPSAiXCJpbml0aWFsXCIiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZh
bHVlIGFzc2VydF9lcXVhbHM6IHNlcmlhbGl6YXRpb24gc2hvdWxkIGJlIGNhbm9uaWNhbCBleHBl
Y3RlZCAiXCJpbml0aWFsXCIiIGJ1dCBnb3QgImluaXRpYWwiCitQQVNTIGUuc3R5bGVbJ2FuaW1h
dGlvbi1uYW1lJ10gPSAiXCJpbml0aWFsXCIiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVl
CiBQQVNTIGUuc3R5bGVbJ2FuaW1hdGlvbi1uYW1lJ10gPSAiXCItLS1cXDIyLS0tXCIiIHNob3Vs
ZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jb3VudGVy
LXN0eWxlLW5lZ2F0aXZlLXN5bnRheC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY291bnRlci1z
dHlsZS1uZWdhdGl2ZS1zeW50YXgtZXhwZWN0ZWQudHh0CmluZGV4IDRhNmI5MTZhN2Y2MzEyYjdm
Y2ZkOTVhNDkzOTQxNjQzYjVjMzc5M2MuLjEzZDNiNWI1NGQ3ZjkwM2UwODQ0Nzc5YThkMGU5OTc0
OTI4OThkOGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jb3VudGVyLXN0eWxlLW5lZ2F0aXZlLXN5
bnRheC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2NvdW50ZXItc3R5bGUtbmVnYXRpdmUt
c3ludGF4LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBAY291bnRlci1zdHls
ZSAnbmVnYXRpdmU6ICJYIicgaXMgdmFsaWQgYXNzZXJ0X25vdF9lcXVhbHM6IGdvdCBkaXNhbGxv
d2VkIHZhbHVlIC0xCi1GQUlMIEBjb3VudGVyLXN0eWxlICduZWdhdGl2ZTogIlgiICJYIicgaXMg
dmFsaWQgYXNzZXJ0X25vdF9lcXVhbHM6IGdvdCBkaXNhbGxvd2VkIHZhbHVlIC0xCitQQVNTIEBj
b3VudGVyLXN0eWxlICduZWdhdGl2ZTogIlgiJyBpcyB2YWxpZAorUEFTUyBAY291bnRlci1zdHls
ZSAnbmVnYXRpdmU6ICJYIiAiWCInIGlzIHZhbGlkCiBQQVNTIEBjb3VudGVyLXN0eWxlICduZWdh
dGl2ZTogIlgiICJYIiAiWCInIGlzIGludmFsaWQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2Nv
dW50ZXItc3R5bGUtcGFkLXN5bnRheC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY291bnRlci1z
dHlsZS1wYWQtc3ludGF4LWV4cGVjdGVkLnR4dAppbmRleCAzMDZkZjc0YTA0MmQwNzkzYjVhZTI3
NWNmNTVjMDI1NzQ4ZDg4NDg0Li5mNTNkNzdkODIxMzk3ZmFhODBjOTRlNjE4MTcxMWZhNDUzY2I0
NzMwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY291bnRlci1zdHlsZS1wYWQtc3ludGF4LWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY291bnRlci1zdHlsZS1wYWQtc3ludGF4LWV4cGVjdGVk
LnR4dApAQCAtMSw5ICsxLDkgQEAKIAogUEFTUyBAY291bnRlci1zdHlsZSAncGFkOiAxMCcgaXMg
aW52YWxpZAogUEFTUyBAY291bnRlci1zdHlsZSAncGFkOiAiWCInIGlzIGludmFsaWQKLUZBSUwg
QGNvdW50ZXItc3R5bGUgJ3BhZDogMCAiWCInIGlzIHZhbGlkIGFzc2VydF9ub3RfZXF1YWxzOiBn
b3QgZGlzYWxsb3dlZCB2YWx1ZSAtMQotRkFJTCBAY291bnRlci1zdHlsZSAncGFkOiAxMCAiWCIn
IGlzIHZhbGlkIGFzc2VydF9ub3RfZXF1YWxzOiBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAtMQotRkFJ
TCBAY291bnRlci1zdHlsZSAncGFkOiAiWCIgMTAnIGlzIHZhbGlkIGFzc2VydF9ub3RfZXF1YWxz
OiBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAtMQorUEFTUyBAY291bnRlci1zdHlsZSAncGFkOiAwICJY
IicgaXMgdmFsaWQKK1BBU1MgQGNvdW50ZXItc3R5bGUgJ3BhZDogMTAgIlgiJyBpcyB2YWxpZAor
UEFTUyBAY291bnRlci1zdHlsZSAncGFkOiAiWCIgMTAnIGlzIHZhbGlkCiBQQVNTIEBjb3VudGVy
LXN0eWxlICdwYWQ6IC0xICJYIicgaXMgaW52YWxpZAogUEFTUyBAY291bnRlci1zdHlsZSAncGFk
OiAiWCIgLTEnIGlzIGludmFsaWQKIFBBU1MgQGNvdW50ZXItc3R5bGUgJ3BhZDogMTAgIlgiICJZ
IicgaXMgaW52YWxpZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2NvdW50ZXItc3R5bGUtcHJlZml4
LXN1ZmZpeC1zeW50YXgtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2NvdW50ZXItc3R5bGUtcHJl
Zml4LXN1ZmZpeC1zeW50YXgtZXhwZWN0ZWQudHh0CmluZGV4IDg3YzZhMDZhNmI0ODRiZmUwMjI3
OTcwN2QwMmE1NmYzZTAyMjVhMzguLjAzNGQ2YzUzZTBkNWE5NWU1YzJiYzljMmE4YmZjYzJjY2Zh
YzhlMTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jb3VudGVyLXN0eWxlLXByZWZpeC1zdWZmaXgt
c3ludGF4LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY291bnRlci1zdHlsZS1wcmVmaXgt
c3VmZml4LXN5bnRheC1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAotRkFJTCBAY291
bnRlci1zdHlsZSAncHJlZml4OiAic3RyaW5nIicgaXMgdmFsaWQgYXNzZXJ0X25vdF9lcXVhbHM6
IGdvdCBkaXNhbGxvd2VkIHZhbHVlIC0xCi1GQUlMIEBjb3VudGVyLXN0eWxlICdzdWZmaXg6ICJz
dHJpbmciJyBpcyB2YWxpZCBhc3NlcnRfbm90X2VxdWFsczogZ290IGRpc2FsbG93ZWQgdmFsdWUg
LTEKLUZBSUwgQGNvdW50ZXItc3R5bGUgJ3ByZWZpeDogImluaXRpYWwiJyBpcyB2YWxpZCBhc3Nl
cnRfbm90X2VxdWFsczogZ290IGRpc2FsbG93ZWQgdmFsdWUgLTEKLUZBSUwgQGNvdW50ZXItc3R5
bGUgJ3N1ZmZpeDogImluaXRpYWwiJyBpcyB2YWxpZCBhc3NlcnRfbm90X2VxdWFsczogZ290IGRp
c2FsbG93ZWQgdmFsdWUgLTEKLUZBSUwgQGNvdW50ZXItc3R5bGUgJ3ByZWZpeDogImluaGVyaXQi
JyBpcyB2YWxpZCBhc3NlcnRfbm90X2VxdWFsczogZ290IGRpc2FsbG93ZWQgdmFsdWUgLTEKLUZB
SUwgQGNvdW50ZXItc3R5bGUgJ3N1ZmZpeDogImluaGVyaXQiJyBpcyB2YWxpZCBhc3NlcnRfbm90
X2VxdWFsczogZ290IGRpc2FsbG93ZWQgdmFsdWUgLTEKLUZBSUwgQGNvdW50ZXItc3R5bGUgJ3By
ZWZpeDogInVuc2V0IicgaXMgdmFsaWQgYXNzZXJ0X25vdF9lcXVhbHM6IGdvdCBkaXNhbGxvd2Vk
IHZhbHVlIC0xCi1GQUlMIEBjb3VudGVyLXN0eWxlICdzdWZmaXg6ICJ1bnNldCInIGlzIHZhbGlk
IGFzc2VydF9ub3RfZXF1YWxzOiBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAtMQorUEFTUyBAY291bnRl
ci1zdHlsZSAncHJlZml4OiAic3RyaW5nIicgaXMgdmFsaWQKK1BBU1MgQGNvdW50ZXItc3R5bGUg
J3N1ZmZpeDogInN0cmluZyInIGlzIHZhbGlkCitQQVNTIEBjb3VudGVyLXN0eWxlICdwcmVmaXg6
ICJpbml0aWFsIicgaXMgdmFsaWQKK1BBU1MgQGNvdW50ZXItc3R5bGUgJ3N1ZmZpeDogImluaXRp
YWwiJyBpcyB2YWxpZAorUEFTUyBAY291bnRlci1zdHlsZSAncHJlZml4OiAiaW5oZXJpdCInIGlz
IHZhbGlkCitQQVNTIEBjb3VudGVyLXN0eWxlICdzdWZmaXg6ICJpbmhlcml0IicgaXMgdmFsaWQK
K1BBU1MgQGNvdW50ZXItc3R5bGUgJ3ByZWZpeDogInVuc2V0IicgaXMgdmFsaWQKK1BBU1MgQGNv
dW50ZXItc3R5bGUgJ3N1ZmZpeDogInVuc2V0IicgaXMgdmFsaWQKIFBBU1MgQGNvdW50ZXItc3R5
bGUgJ3ByZWZpeDogY3VzdG9tLWlkZW50JyBpcyB2YWxpZAogUEFTUyBAY291bnRlci1zdHlsZSAn
c3VmZml4OiBjdXN0b20taWRlbnQnIGlzIHZhbGlkCiBQQVNTIEBjb3VudGVyLXN0eWxlICdwcmVm
aXg6IGluaXRpYWwnIGlzIGludmFsaWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jb3VudGVyLXN0
eWxlLXN5bWJvbHMtc3ludGF4LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jb3VudGVyLXN0eWxl
LXN5bWJvbHMtc3ludGF4LWV4cGVjdGVkLnR4dAppbmRleCBkYTI4Nzc3NmUxODllYTkyMDAwNjFm
MDA4YTJhZDBhMjgxMDY0YTA1Li4yNmIxZGI4ZmEwOGE3ODgxZDU1NzliMWYxYTMwOTEwNjA1NjJj
MTE1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY291bnRlci1zdHlsZS1zeW1ib2xzLXN5bnRheC1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2NvdW50ZXItc3R5bGUtc3ltYm9scy1zeW50YXgt
ZXhwZWN0ZWQudHh0CkBAIC0xLDcgKzEsNyBAQAogCi1GQUlMIEBjb3VudGVyLXN0eWxlICdzeW1i
b2xzOiAiWCInIGlzIHZhbGlkIGFzc2VydF9ub3RfZXF1YWxzOiBnb3QgZGlzYWxsb3dlZCB2YWx1
ZSAtMQotRkFJTCBAY291bnRlci1zdHlsZSAnc3ltYm9sczogIlgiICJYIicgaXMgdmFsaWQgYXNz
ZXJ0X25vdF9lcXVhbHM6IGdvdCBkaXNhbGxvd2VkIHZhbHVlIC0xCi1GQUlMIEBjb3VudGVyLXN0
eWxlICdzeW1ib2xzOiBpZGVudCAiWCInIGlzIHZhbGlkIGFzc2VydF9ub3RfZXF1YWxzOiBnb3Qg
ZGlzYWxsb3dlZCB2YWx1ZSAtMQorUEFTUyBAY291bnRlci1zdHlsZSAnc3ltYm9sczogIlgiJyBp
cyB2YWxpZAorUEFTUyBAY291bnRlci1zdHlsZSAnc3ltYm9sczogIlgiICJYIicgaXMgdmFsaWQK
K1BBU1MgQGNvdW50ZXItc3R5bGUgJ3N5bWJvbHM6IGlkZW50ICJYIicgaXMgdmFsaWQKIEZBSUwg
QGNvdW50ZXItc3R5bGUgJ3N5bWJvbHM6IGlkZW50ICJYIiB1cmwoImZvby5qcGciKScgaXMgdmFs
aWQgYXNzZXJ0X25vdF9lcXVhbHM6IGdvdCBkaXNhbGxvd2VkIHZhbHVlIC0xCiBQQVNTIEBjb3Vu
dGVyLXN0eWxlICdzeW1ib2xzOiAnIGlzIGludmFsaWQKIFBBU1MgQGNvdW50ZXItc3R5bGUgJ3N5
bWJvbHM6IGluaXRpYWwgIlgiICJYIicgaXMgaW52YWxpZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvcGFyc2luZy9n
cmlkLWFyZWEtY29tcHV0ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvcGFyc2luZy9ncmlkLWFyZWEtY29tcHV0
ZWQtZXhwZWN0ZWQudHh0CmluZGV4IDVkYmI3NWU4YWFiMGFiMTdkN2RkMzNhYWUyZTc1YzFmZWU2
M2RmNDIuLjIwMWM0ODk2ZDgxNTg2MzdjNjhkMGY2Y2Q4NWEyNGJkODM0MzI1MmUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1n
cmlkL3BhcnNpbmcvZ3JpZC1hcmVhLWNvbXB1dGVkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9wYXJzaW5n
L2dyaWQtYXJlYS1jb21wdXRlZC1leHBlY3RlZC50eHQKQEAgLTI2LDYgKzI2LDYgQEAgUEFTUyBQ
cm9wZXJ0eSBncmlkLWFyZWEgdmFsdWUgJ2F1dG8gLyBpIC8gMiBqJwogUEFTUyBQcm9wZXJ0eSBn
cmlkLWFyZWEgdmFsdWUgJ2F1dG8gLyBpIC8gMiBqIC8gc3BhbiAzIGsnCiBQQVNTIFByb3BlcnR5
IGdyaWQtcm93IHZhbHVlICdhdXRvIC8gaScKIFBBU1MgUHJvcGVydHkgZ3JpZC1jb2x1bW4gdmFs
dWUgJzIgaiAvIHNwYW4gMyBrJwotRkFJTCBQcm9wZXJ0eSBncmlkLWNvbHVtbi1lbmQgdmFsdWUg
J1wzMXN0JyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiXFwzMSBzdCIgYnV0IGdvdCAiXCIxc3Rc
IiIKLUZBSUwgUHJvcGVydHkgZ3JpZC1jb2x1bW4tZW5kIHZhbHVlICdcMzEgc3QnIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkICJcXDMxIHN0IiBidXQgZ290ICJcIjFzdFwiIgorUEFTUyBQcm9wZXJ0
eSBncmlkLWNvbHVtbi1lbmQgdmFsdWUgJ1wzMXN0JworUEFTUyBQcm9wZXJ0eSBncmlkLWNvbHVt
bi1lbmQgdmFsdWUgJ1wzMSBzdCcKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvcGFyc2luZy9ncmlkLWFyZWEtc2hv
cnRoYW5kLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3JpZC1hcmVhLXNob3J0aGFuZC1leHBlY3Rl
ZC50eHQKaW5kZXggYWZlMjFjOGFlY2Q4NzFkZjQ4YzA5MGQ4YjY3NTMxNGEzMjRhYjEzYy4uY2I5
MzcwNDIwMWMyYzdlMWQ0N2NlZmYyMzM3NjM2MjQ5NmI2OWY1MyAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvcGFyc2lu
Zy9ncmlkLWFyZWEtc2hvcnRoYW5kLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9wYXJzaW5nL2dyaWQtYXJl
YS1zaG9ydGhhbmQtZXhwZWN0ZWQudHh0CkBAIC00LDEwICs0LDEwIEBAIFBBU1MgZS5zdHlsZVsn
Z3JpZC1hcmVhJ10gPSAiYXV0byIgc2hvdWxkIHNldCBncmlkLWNvbHVtbi1zdGFydAogUEFTUyBl
LnN0eWxlWydncmlkLWFyZWEnXSA9ICJhdXRvIiBzaG91bGQgc2V0IGdyaWQtcm93LWVuZAogUEFT
UyBlLnN0eWxlWydncmlkLWFyZWEnXSA9ICJhdXRvIiBzaG91bGQgc2V0IGdyaWQtcm93LXN0YXJ0
CiBQQVNTIGUuc3R5bGVbJ2dyaWQtYXJlYSddID0gImF1dG8iIHNob3VsZCBub3Qgc2V0IHVucmVs
YXRlZCBsb25naGFuZHMKLUZBSUwgZS5zdHlsZVsnZ3JpZC1hcmVhJ10gPSAiLS1hIiBzaG91bGQg
c2V0IGdyaWQtY29sdW1uLWVuZCBhc3NlcnRfZXF1YWxzOiBncmlkLWNvbHVtbi1lbmQgc2hvdWxk
IGJlIGNhbm9uaWNhbCBleHBlY3RlZCAiLS1hIiBidXQgZ290ICJcIi0tYVwiIgotRkFJTCBlLnN0
eWxlWydncmlkLWFyZWEnXSA9ICItLWEiIHNob3VsZCBzZXQgZ3JpZC1jb2x1bW4tc3RhcnQgYXNz
ZXJ0X2VxdWFsczogZ3JpZC1jb2x1bW4tc3RhcnQgc2hvdWxkIGJlIGNhbm9uaWNhbCBleHBlY3Rl
ZCAiLS1hIiBidXQgZ290ICJcIi0tYVwiIgotRkFJTCBlLnN0eWxlWydncmlkLWFyZWEnXSA9ICIt
LWEiIHNob3VsZCBzZXQgZ3JpZC1yb3ctZW5kIGFzc2VydF9lcXVhbHM6IGdyaWQtcm93LWVuZCBz
aG91bGQgYmUgY2Fub25pY2FsIGV4cGVjdGVkICItLWEiIGJ1dCBnb3QgIlwiLS1hXCIiCi1GQUlM
IGUuc3R5bGVbJ2dyaWQtYXJlYSddID0gIi0tYSIgc2hvdWxkIHNldCBncmlkLXJvdy1zdGFydCBh
c3NlcnRfZXF1YWxzOiBncmlkLXJvdy1zdGFydCBzaG91bGQgYmUgY2Fub25pY2FsIGV4cGVjdGVk
ICItLWEiIGJ1dCBnb3QgIlwiLS1hXCIiCitQQVNTIGUuc3R5bGVbJ2dyaWQtYXJlYSddID0gIi0t
YSIgc2hvdWxkIHNldCBncmlkLWNvbHVtbi1lbmQKK1BBU1MgZS5zdHlsZVsnZ3JpZC1hcmVhJ10g
PSAiLS1hIiBzaG91bGQgc2V0IGdyaWQtY29sdW1uLXN0YXJ0CitQQVNTIGUuc3R5bGVbJ2dyaWQt
YXJlYSddID0gIi0tYSIgc2hvdWxkIHNldCBncmlkLXJvdy1lbmQKK1BBU1MgZS5zdHlsZVsnZ3Jp
ZC1hcmVhJ10gPSAiLS1hIiBzaG91bGQgc2V0IGdyaWQtcm93LXN0YXJ0CiBQQVNTIGUuc3R5bGVb
J2dyaWQtYXJlYSddID0gIi0tYSIgc2hvdWxkIG5vdCBzZXQgdW5yZWxhdGVkIGxvbmdoYW5kcwog
UEFTUyBlLnN0eWxlWydncmlkLWFyZWEnXSA9ICJhIC8gYiIgc2hvdWxkIHNldCBncmlkLWNvbHVt
bi1lbmQKIFBBU1MgZS5zdHlsZVsnZ3JpZC1hcmVhJ10gPSAiYSAvIGIiIHNob3VsZCBzZXQgZ3Jp
ZC1jb2x1bW4tc3RhcnQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3JpZC1hcmVhLXZhbGlkLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1ncmlkL3BhcnNpbmcvZ3JpZC1hcmVhLXZhbGlkLWV4cGVjdGVkLnR4dAppbmRleCA2ODdj
NGJkYTk5ODA4MmQxZDM4YTI5NTRkY2YxMjg5NmUwNDg1ODYyLi5kZTFlMjM0NGRlOTZkMzc2NDhl
MWQ5NDhmZWRhMWQ2ZDExMjk1Njc3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9wYXJzaW5nL2dyaWQtYXJlYS12YWxp
ZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLWdyaWQvcGFyc2luZy9ncmlkLWFyZWEtdmFsaWQtZXhwZWN0ZWQudHh0
CkBAIC03LDcgKzcsNyBAQCBGQUlMIGUuc3R5bGVbJ2dyaWQtYXJlYSddID0gIkF1VG8iIHNob3Vs
ZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9lcXVhbHM6CiBGQUlMIGUuc3R5bGVbJ2dy
aWQtcm93J10gPSAiYXV0byIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X2Vx
dWFsczogc2VyaWFsaXphdGlvbiBzaG91bGQgYmUgY2Fub25pY2FsIGV4cGVjdGVkICJhdXRvIiBi
dXQgZ290ICJhdXRvIC8gYXV0byIKIEZBSUwgZS5zdHlsZVsnZ3JpZC1yb3cnXSA9ICJhdXRvL2F1
dG8iIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9lcXVhbHM6IHNlcmlhbGl6
YXRpb24gc2hvdWxkIGJlIGNhbm9uaWNhbCBleHBlY3RlZCAiYXV0byIgYnV0IGdvdCAiYXV0byAv
IGF1dG8iCiBQQVNTIGUuc3R5bGVbJ2dyaWQtY29sdW1uLWVuZCddID0gIkF1VG8iIHNob3VsZCBz
ZXQgdGhlIHByb3BlcnR5IHZhbHVlCi1GQUlMIGUuc3R5bGVbJ2dyaWQtYXJlYSddID0gIi0tYSIg
c2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X2VxdWFsczogc2VyaWFsaXphdGlv
biBzaG91bGQgYmUgY2Fub25pY2FsIGV4cGVjdGVkICItLWEiIGJ1dCBnb3QgIlwiLS1hXCIgLyBc
Ii0tYVwiIC8gXCItLWFcIiAvIFwiLS1hXCIiCitGQUlMIGUuc3R5bGVbJ2dyaWQtYXJlYSddID0g
Ii0tYSIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X2VxdWFsczogc2VyaWFs
aXphdGlvbiBzaG91bGQgYmUgY2Fub25pY2FsIGV4cGVjdGVkICItLWEiIGJ1dCBnb3QgIi0tYSAv
IC0tYSAvIC0tYSAvIC0tYSIKIEZBSUwgZS5zdHlsZVsnZ3JpZC1yb3cnXSA9ICItes+AIiBzaG91
bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfZXF1YWxzOiBzZXJpYWxpemF0aW9uIHNo
b3VsZCBiZSBjYW5vbmljYWwgZXhwZWN0ZWQgIi16z4AiIGJ1dCBnb3QgIi16z4AgLyAtes+AIgog
RkFJTCBlLnN0eWxlWydncmlkLXJvdyddID0gIi16z4AvLXrPgCIgc2hvdWxkIHNldCB0aGUgcHJv
cGVydHkgdmFsdWUgYXNzZXJ0X2VxdWFsczogc2VyaWFsaXphdGlvbiBzaG91bGQgYmUgY2Fub25p
Y2FsIGV4cGVjdGVkICItes+AIiBidXQgZ290ICItes+AIC8gLXrPgCIKIEZBSUwgZS5zdHlsZVsn
Z3JpZC1yb3cnXSA9ICJpIC8gaSIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0
X2VxdWFsczogc2VyaWFsaXphdGlvbiBzaG91bGQgYmUgY2Fub25pY2FsIGV4cGVjdGVkICJpIiBi
dXQgZ290ICJpIC8gaSIKQEAgLTUyLDcgKzUyLDcgQEAgUEFTUyBlLnN0eWxlWydncmlkLXJvdydd
ID0gImkgLyBhdXRvIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQogRkFJTCBlLnN0eWxl
WydncmlkLXJvdyddID0gIjIgaSAvIGF1dG8iIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVl
IGFzc2VydF9lcXVhbHM6IHNlcmlhbGl6YXRpb24gc2hvdWxkIGJlIGNhbm9uaWNhbCBleHBlY3Rl
ZCAiMiBpIiBidXQgZ290ICIyIGkgLyBhdXRvIgogRkFJTCBlLnN0eWxlWydncmlkLXJvdyddID0g
IjEgLyBhdXRvIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfZXF1YWxzOiBz
ZXJpYWxpemF0aW9uIHNob3VsZCBiZSBjYW5vbmljYWwgZXhwZWN0ZWQgIjEiIGJ1dCBnb3QgIjEg
LyBhdXRvIgogUEFTUyBlLnN0eWxlWydncmlkLWNvbHVtbiddID0gIjIgaiAvIHNwYW4gMyBrIiBz
aG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQotRkFJTCBlLnN0eWxlWydncmlkLWNvbHVtbi1l
bmQnXSA9ICJcXDMxc3QiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9pbl9h
cnJheTogc2VyaWFsaXphdGlvbiBzaG91bGQgYmUgc291bmQgdmFsdWUgIlwiMXN0XCIiIG5vdCBp
biBhcnJheSBbIlxcMzEgc3QiLCAiXFwzMXN0Il0KLUZBSUwgZS5zdHlsZVsnZ3JpZC1jb2x1bW4t
ZW5kJ10gPSAiXFwzMSBzdCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X2lu
X2FycmF5OiBzZXJpYWxpemF0aW9uIHNob3VsZCBiZSBzb3VuZCB2YWx1ZSAiXCIxc3RcIiIgbm90
IGluIGFycmF5IFsiXFwzMSBzdCIsICJcXDMxc3QiXQotRkFJTCBlLnN0eWxlWydncmlkLWNvbHVt
biddID0gIlxcMzFzdCAvIFxcMzEgc3QiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFz
c2VydF9pbl9hcnJheTogc2VyaWFsaXphdGlvbiBzaG91bGQgYmUgc291bmQgdmFsdWUgIlwiMXN0
XCIgLyBcIjFzdFwiIiBub3QgaW4gYXJyYXkgWyJcXDMxIHN0IiwgIlxcMzFzdCJdCitQQVNTIGUu
c3R5bGVbJ2dyaWQtY29sdW1uLWVuZCddID0gIlxcMzFzdCIgc2hvdWxkIHNldCB0aGUgcHJvcGVy
dHkgdmFsdWUKK1BBU1MgZS5zdHlsZVsnZ3JpZC1jb2x1bW4tZW5kJ10gPSAiXFwzMSBzdCIgc2hv
dWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUKK0ZBSUwgZS5zdHlsZVsnZ3JpZC1jb2x1bW4nXSA9
ICJcXDMxc3QgLyBcXDMxIHN0IiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRf
aW5fYXJyYXk6IHNlcmlhbGl6YXRpb24gc2hvdWxkIGJlIHNvdW5kIHZhbHVlICJcXDMxIHN0IC8g
XFwzMSBzdCIgbm90IGluIGFycmF5IFsiXFwzMSBzdCIsICJcXDMxc3QiXQogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtbGlz
dHMvcGFyc2luZy9jb250ZW50LWludmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWxpc3RzL3BhcnNpbmcvY29udGVu
dC1pbnZhbGlkLWV4cGVjdGVkLnR4dAppbmRleCAwOTEyYTliZWE0NzQ4N2Q0ODFkMDA0NGRhN2Jm
MjM0N2ZjMmRiYmUxLi41ZDliNWRiYmYyZTM5NGM1ZjZiNjFkYzNiYzJiNDI1YzhkZjk5MmY1IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtbGlzdHMvcGFyc2luZy9jb250ZW50LWludmFsaWQtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1saXN0cy9w
YXJzaW5nL2NvbnRlbnQtaW52YWxpZC1leHBlY3RlZC50eHQKQEAgLTcsMTYgKzcsMTYgQEAgUEFT
UyBlLnN0eWxlWydjb250ZW50J10gPSAiY291bnRlcihmb28sIGluaXRpYWwpIiBzaG91bGQgbm90
IHNldCB0aGUgcHJvcGVydHkgdmEKIFBBU1MgZS5zdHlsZVsnY29udGVudCddID0gImNvdW50ZXJz
KGZvbywgXCJcIiwgaW5pdGlhbCkiIHNob3VsZCBub3Qgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQog
UEFTUyBlLnN0eWxlWydjb250ZW50J10gPSAiY291bnRlcihmb28sIGluaGVyaXQpIiBzaG91bGQg
bm90IHNldCB0aGUgcHJvcGVydHkgdmFsdWUKIFBBU1MgZS5zdHlsZVsnY29udGVudCddID0gImNv
dW50ZXJzKGZvbywgXCJcIiwgaW5oZXJpdCkiIHNob3VsZCBub3Qgc2V0IHRoZSBwcm9wZXJ0eSB2
YWx1ZQotRkFJTCBlLnN0eWxlWydjb250ZW50J10gPSAiXCJ6XCIgY291bnRlcihmb28sIG5vbmUp
IiBzaG91bGQgbm90IHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgIiIgYnV0IGdvdCAieiBjb3VudGVyKGZvbywgbm9uZSkiCi1GQUlMIGUuc3R5bGVbJ2NvbnRl
bnQnXSA9ICJcInpcIiBjb3VudGVycyhmb28sIFwiXCIsIG5vbmUpIiBzaG91bGQgbm90IHNldCB0
aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIiIgYnV0IGdvdCAieiBj
b3VudGVyKGZvbywgbm9uZSkiCitGQUlMIGUuc3R5bGVbJ2NvbnRlbnQnXSA9ICJcInpcIiBjb3Vu
dGVyKGZvbywgbm9uZSkiIHNob3VsZCBub3Qgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAiIiBidXQgZ290ICJcInpcIiBjb3VudGVyKGZvbywgbm9uZSkiCitG
QUlMIGUuc3R5bGVbJ2NvbnRlbnQnXSA9ICJcInpcIiBjb3VudGVycyhmb28sIFwiXCIsIG5vbmUp
IiBzaG91bGQgbm90IHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgIiIgYnV0IGdvdCAiXCJ6XCIgY291bnRlcihmb28sIG5vbmUpIgogUEFTUyBlLnN0eWxlWydj
b250ZW50J10gPSAiXCJ6XCIgY291bnRlcihmb28sIHVuc2V0KSIgc2hvdWxkIG5vdCBzZXQgdGhl
IHByb3BlcnR5IHZhbHVlCiBQQVNTIGUuc3R5bGVbJ2NvbnRlbnQnXSA9ICJcInpcIiBjb3VudGVy
cyhmb28sIFwiXCIsIHVuc2V0KSIgc2hvdWxkIG5vdCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCiBQ
QVNTIGUuc3R5bGVbJ2NvbnRlbnQnXSA9ICJcInpcIiBjb3VudGVyKGZvbywgaW5pdGlhbCkiIHNo
b3VsZCBub3Qgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQogUEFTUyBlLnN0eWxlWydjb250ZW50J10g
PSAiXCJ6XCIgY291bnRlcnMoZm9vLCBcIlwiLCBpbml0aWFsKSIgc2hvdWxkIG5vdCBzZXQgdGhl
IHByb3BlcnR5IHZhbHVlCiBQQVNTIGUuc3R5bGVbJ2NvbnRlbnQnXSA9ICJcInpcIiBjb3VudGVy
KGZvbywgaW5oZXJpdCkiIHNob3VsZCBub3Qgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQogUEFTUyBl
LnN0eWxlWydjb250ZW50J10gPSAiXCJ6XCIgY291bnRlcnMoZm9vLCBcIlwiLCBpbmhlcml0KSIg
c2hvdWxkIG5vdCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCi1GQUlMIGUuc3R5bGVbJ2NvbnRlbnQn
XSA9ICJjb3VudGVyKGZvbywgbm9uZSkgXCJ6XCIiIHNob3VsZCBub3Qgc2V0IHRoZSBwcm9wZXJ0
eSB2YWx1ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiIiBidXQgZ290ICJjb3VudGVyKGZvbywg
bm9uZSkgeiIKLUZBSUwgZS5zdHlsZVsnY29udGVudCddID0gImNvdW50ZXJzKGZvbywgXCJcIiwg
bm9uZSkgXCJ6XCIiIHNob3VsZCBub3Qgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAiIiBidXQgZ290ICJjb3VudGVyKGZvbywgbm9uZSkgeiIKK0ZBSUwgZS5z
dHlsZVsnY29udGVudCddID0gImNvdW50ZXIoZm9vLCBub25lKSBcInpcIiIgc2hvdWxkIG5vdCBz
ZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIiIGJ1dCBnb3Qg
ImNvdW50ZXIoZm9vLCBub25lKSBcInpcIiIKK0ZBSUwgZS5zdHlsZVsnY29udGVudCddID0gImNv
dW50ZXJzKGZvbywgXCJcIiwgbm9uZSkgXCJ6XCIiIHNob3VsZCBub3Qgc2V0IHRoZSBwcm9wZXJ0
eSB2YWx1ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiIiBidXQgZ290ICJjb3VudGVyKGZvbywg
bm9uZSkgXCJ6XCIiCiBQQVNTIGUuc3R5bGVbJ2NvbnRlbnQnXSA9ICJjb3VudGVyKGZvbywgdW5z
ZXQpIFwielwiIiBzaG91bGQgbm90IHNldCB0aGUgcHJvcGVydHkgdmFsdWUKIFBBU1MgZS5zdHls
ZVsnY29udGVudCddID0gImNvdW50ZXJzKGZvbywgXCJcIiwgdW5zZXQpIFwielwiIiBzaG91bGQg
bm90IHNldCB0aGUgcHJvcGVydHkgdmFsdWUKIFBBU1MgZS5zdHlsZVsnY29udGVudCddID0gImNv
dW50ZXIoZm9vLCBpbml0aWFsKSBcInpcIiIgc2hvdWxkIG5vdCBzZXQgdGhlIHByb3BlcnR5IHZh
bHVlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtdHJhbnNpdGlvbnMvdHJhbnNpdGlvbi1wcm9wZXJ0eS0wMDItZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LXRyYW5zaXRpb25zL3RyYW5zaXRpb24tcHJvcGVydHktMDAyLWV4cGVjdGVkLnR4dAppbmRleCAx
NTNlZjk0NjVlZGY0YmFkZDI0NjUwMDdhY2I2Mjg0ZWE4OGY5NjBhLi4zYzQ4MzA5OTRlZWEwMDQ1
OTJjZmVjZGJiMmI1Mjk3YjA4Mjg3NzZlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHJhbnNpdGlvbnMvdHJhbnNpdGlvbi1w
cm9wZXJ0eS0wMDItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10cmFuc2l0aW9ucy90cmFuc2l0aW9uLXByb3BlcnR5
LTAwMi1leHBlY3RlZC50eHQKQEAgLTIsOCArMiw4IEBACiBGQUlMIHBhcnNlICdub25lLCBhbGwn
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJub25lLCBhbGwiIGJ1dCBnb3QgImFsbCIKIEZBSUwg
cGFyc2UgJ2FsbCwgbm9uZScgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgImFsbCwgbm9uZSIgYnV0
IGdvdCAiYWxsIgogUEFTUyBwYXJzZSAnZm9vYmFyJwotRkFJTCBwYXJzZSAnYWxsLCBmb29iYXIn
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJhbGwsIGZvb2JhciIgYnV0IGdvdCAiZm9vYmFyIgot
RkFJTCBwYXJzZSAnZm9vYmFyLCBhbGwnIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJmb29iYXIs
IGFsbCIgYnV0IGdvdCAiYWxsIgorUEFTUyBwYXJzZSAnYWxsLCBmb29iYXInCitQQVNTIHBhcnNl
ICdmb29iYXIsIGFsbCcKIFBBU1MgcGFyc2UgJ2luaGVyaXQnCiBQQVNTIHBhcnNlICdpbml0aWFs
JwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLXBzZXVkby1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21w
dXRlZFN0eWxlLXBzZXVkby1leHBlY3RlZC50eHQKaW5kZXggZmQzNTdhODc0MWI4MTIzNDUxZTE3
NzY3N2VlZDEwNjdkNWQzY2EyOC4uYTNhODllZDcyYjBlZTBiZDgxY2U4MDAzYWY5MThmZDZhYzE3
MWIzOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1wc2V1ZG8tZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dl
dENvbXB1dGVkU3R5bGUtcHNldWRvLWV4cGVjdGVkLnR4dApAQCAtMiw3ICsyLDcgQEAKIFBBU1Mg
UmVzb2x1dGlvbiBvZiB3aWR0aCBpcyBjb3JyZWN0IGZvciA6OmJlZm9yZSBhbmQgOjphZnRlciBw
c2V1ZG8tZWxlbWVudHMKIFBBU1MgUmVzb2x1dGlvbiBvZiB3aWR0aCBpcyBjb3JyZWN0IGZvciA6
OmJlZm9yZSBhbmQgOjphZnRlciBwc2V1ZG8tZWxlbWVudHMgb2YgZGlzcGxheTogY29udGVudHMg
ZWxlbWVudHMKIFBBU1MgUmVzb2x1dGlvbiBvZiBub25leGlzdGVudCBwc2V1ZG8tZWxlbWVudCBz
dHlsZXMKLUZBSUwgUmVzb2x1dGlvbiBvZiBwc2V1ZG8tZWxlbWVudCBzdHlsZXMgaW4gZGlzcGxh
eTogbm9uZSBlbGVtZW50cyBhc3NlcnRfZXF1YWxzOiBQc2V1ZG8tc3R5bGVzIG9mIGRpc3BsYXk6
IG5vbmUgZWxlbWVudHMgc2hvdWxkIGJlIGNvcnJlY3QgZXhwZWN0ZWQgIlwiRm9vXCIiIGJ1dCBn
b3QgIkZvbyIKK1BBU1MgUmVzb2x1dGlvbiBvZiBwc2V1ZG8tZWxlbWVudCBzdHlsZXMgaW4gZGlz
cGxheTogbm9uZSBlbGVtZW50cwogUEFTUyBJdGVtLWJhc2VkIGJsb2NraWZpY2F0aW9uIG9mIHBz
ZXVkby1lbGVtZW50cwogRkFJTCBJdGVtLWJhc2VkIGJsb2NraWZpY2F0aW9uIG9mIG5vbmV4aXN0
ZW50IHBzZXVkby1lbGVtZW50cyBhc3NlcnRfZXF1YWxzOiBQc2V1ZG8tc3R5bGVzIG9mIGRpc3Bs
YXk6IGZsZXggZWxlbWVudHMgc2hvdWxkIGdldCBibG9ja2lmaWVkIGV4cGVjdGVkICJibG9jayIg
YnV0IGdvdCAiaW5saW5lIgogUEFTUyBkaXNwbGF5OiBjb250ZW50cyBvbiBwc2V1ZG8tZWxlbWVu
dHMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzc29tL3NlcmlhbGl6ZS12YWx1ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vc2VyaWFsaXplLXZhbHVl
cy1leHBlY3RlZC50eHQKaW5kZXggNDFhNTlkNDVkMmNkMGI1NWFmMzM3MmE0ZGI5NjBhMmJmODI3
ZDdhYy4uZWIzMDhlZTMxMTMyM2Y1ZjBkNWFjZWU0YmJjNGZkNjFlZWU0MzUyMyAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20v
c2VyaWFsaXplLXZhbHVlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vc2VyaWFsaXplLXZhbHVlcy1leHBlY3Rl
ZC50eHQKQEAgLTMxNSw4ICszMTUsOCBAQCBQQVNTIGNvbG9yOiByZ2JhKDUsIDcsIDEwLCAwLjUp
CiBQQVNTIGNvbG9yOiBpbmhlcml0CiBQQVNTIGNvbnRlbnQ6IG5vcm1hbAogUEFTUyBjb250ZW50
OiBub25lCi1GQUlMIGNvbnRlbnQ6ICJzdHJpbmciIGFzc2VydF9lcXVhbHM6IGNvbnRlbnQgcmF3
IGlubGluZSBzdHlsZSBkZWNsYXJhdGlvbiBleHBlY3RlZCAiXCJzdHJpbmdcIiIgYnV0IGdvdCAi
c3RyaW5nIgotRkFJTCBjb250ZW50OiAnc3RyaW5nJyBhc3NlcnRfZXF1YWxzOiBjb250ZW50IHJh
dyBpbmxpbmUgc3R5bGUgZGVjbGFyYXRpb24gZXhwZWN0ZWQgIlwic3RyaW5nXCIiIGJ1dCBnb3Qg
InN0cmluZyIKK1BBU1MgY29udGVudDogInN0cmluZyIKK1BBU1MgY29udGVudDogJ3N0cmluZycK
IFBBU1MgY29udGVudDogdXJsKCJodHRwOi8vbG9jYWxob3N0LyIpCiBQQVNTIGNvbnRlbnQ6IHVy
bChodHRwOi8vbG9jYWxob3N0LykKIEZBSUwgY29udGVudDogY291bnRlcihwYXItbnVtKSBhc3Nl
cnRfZXF1YWxzOiBjb250ZW50IHJhdyBpbmxpbmUgc3R5bGUgZGVjbGFyYXRpb24gZXhwZWN0ZWQg
ImNvdW50ZXIocGFyLW51bSkiIGJ1dCBnb3QgImNvdW50ZXIocGFyLW51bSwgZGVjaW1hbCkiCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL3BzZXVkby1lbGVtZW50LW1hdGNo
ZXMtZm9yLXBzZXVkby1lbGVtZW50LW5vZGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL2Nzcy9wc2V1ZG8tZWxlbWVudC1tYXRjaGVzLWZvci1wc2V1ZG8tZWxlbWVudC1ub2Rl
LWV4cGVjdGVkLnR4dAppbmRleCA1YmFlNDgzN2UyZTdkNmE4OGJhMTM3ZDA3MTVhMDBiNmVjOTc3
ZTA3Li5kMDBiMzEyMjIzYmJmMjg2ZjNhYzVhNjE5MDc5NTgyODhmY2FhYjNlIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL3BzZXVkby1lbGVtZW50LW1hdGNoZXMtZm9yLXBz
ZXVkby1lbGVtZW50LW5vZGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rv
ci9jc3MvcHNldWRvLWVsZW1lbnQtbWF0Y2hlcy1mb3ItcHNldWRvLWVsZW1lbnQtbm9kZS1leHBl
Y3RlZC50eHQKQEAgLTksNyArOSw3IEBAIFBBU1M6IE5vIEF0dHJpYnV0ZSBTdHlsZXMKIFBBU1M6
IE5vIEluaGVyaXRlZCBTdHlsZXMKIFBBU1M6IE5vIFBzZXVkbyBFbGVtZW50IFN0eWxlcwogUEFT
UzogSGFzIENvbXB1dGVkIFN0eWxlcwotUFJPUEVSVFk6IGNvbnRlbnQ6IGJlZm9yZTsKK1BST1BF
UlRZOiBjb250ZW50OiAiYmVmb3JlIjsKIFBST1BFUlRZOiBjb2xvcjogcmdiKDAsIDAsIDI1NSk7
CiBNQVRDSEVEIFJVTEU6CiAgIFNFTEVDVE9SOiBpbnB1dDpiZWZvcmUK
</data>
<flag name="review"
          id="452221"
          type_id="1"
          status="+"
          setter="sam"
    />
    <flag name="commit-queue"
          id="452223"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>430700</attachid>
            <date>2021-06-06 15:36:59 -0700</date>
            <delta_ts>2021-06-06 15:36:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-226694-20210606153658.patch</filename>
            <type>text/plain</type>
            <size>140095</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc4NTM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjYwMDM2NWIxNTA4NWE4
MjA0YWJhOTBiMTg4MmYxYTFkODI3NTVlOC4uMWEyMTdmMzI1YzMwMjI4MzVmOGQxNWRmMTEzNzUy
NzJhMmVmNWY2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5NCBAQAorMjAyMS0wNi0wNiAgRGFy
aW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgSGFuZGxlIGN1c3RvbSBpZGVu
dGlmaWVycyBhbmQgc3RyaW5ncyBzZXBhcmF0ZWx5LCBzbyB3ZSBjYW4gcXVvdGUgc3RyaW5ncyBj
b3JyZWN0bHkgY29uc2lzdGVudGx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMjY2OTQKKworICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgor
CisgICAgICAgIFByb2dyZXNzaW9ucyBpbiBhIG51bWJlciBvZiBXUFQgdGVzdHMuCisKKyAgICAg
ICAgKiBhbmltYXRpb24vQ1NTQW5pbWF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0Fu
aW1hdGlvbjo6Q1NTQW5pbWF0aW9uKTogVXBkYXRlIHNpbmNlIEFuaW1hdGlvbjo6bmFtZSgpIG5v
dworICAgICAgICByZXR1cm5zIGEgc3RydWN0LgorICAgICAgICAqIGFuaW1hdGlvbi9LZXlmcmFt
ZUVmZmVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpLZXlmcmFtZUVmZmVjdDo6Y29tcHV0ZUNT
U0FuaW1hdGlvbkJsZW5kaW5nS2V5ZnJhbWVzKTogRGl0dG8uCisKKyAgICAgICAgKiBjc3MvQ1NT
Q29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok9yZGVyZWRO
YW1lZExpbmVzQ29sbGVjdG9yOjphcHBlbmRMaW5lcyBjb25zdCk6IFVzZQorICAgICAgICBjcmVh
dGVDdXN0b21JZGVudCBmb3IgbGluZSBuYW1lcy4KKyAgICAgICAgKFdlYkNvcmU6OnZhbHVlRm9y
R3JpZFBvc2l0aW9uKTogVXNlIGNyZWF0ZUN1c3RvbUlkZW50IGZvciBncmlkIGxpbmUgbmFtZS4K
KyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZVRyYW5zaXRpb25Qcm9wZXJ0eVZhbHVlKTogVXNlIGNy
ZWF0ZUN1c3RvbUlkZW50IGZvcgorICAgICAgICBhbmltYXRpb24gcHJvcGVydHkgbmFtZXMuCisg
ICAgICAgIChXZWJDb3JlOjpjb3VudGVyVG9DU1NWYWx1ZSk6IFVzZSBjcmVhdGVDdXN0b21JZGVu
dCBmb3IgY291bnRlciBuYW1lcy4KKyAgICAgICAgKFdlYkNvcmU6OkNvbXB1dGVkU3R5bGVFeHRy
YWN0b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKTogVXNlCisgICAgICAgIGNyZWF0ZUN1c3Rv
bUlkZW50IGZvciBsaXN0LXN0eWxlLXR5cGUsIGxvY2FsZSwgYW5pbWF0aW9uIG5hbWVzIGlmIHRo
ZXkKKyAgICAgICAgd2VyZSBjcmVhdGVkIGZyb20gYSBjdXN0b20taWRlbnQsIGFuZCBsaW5lLWdy
aWQuCisKKyAgICAgICAgKiBjc3MvQ1NTQ3VzdG9tSWRlbnRWYWx1ZS5jcHA6IEVtcHRpZWQgb3V0
IHRoaXMgZmlsZTsgd2UgY2FuIGRlbGV0ZSBpdCBzb29uLgorICAgICAgICAqIGNzcy9DU1NDdXN0
b21JZGVudFZhbHVlLmg6IERpdHRvLgorCisgICAgICAgICogY3NzL0NTU01hcmt1cC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpzZXJpYWxpemVDaGFyYWN0ZXJBc0NvZGVQb2ludCk6IE9wdGltaXpl
ZCB0byBkbyBhIHNpbmdsZQorICAgICAgICBTdHJpbmdCdWlsZGVyOjphcHBlbmQgY2FsbC4KKyAg
ICAgICAgKFdlYkNvcmU6OnNlcmlhbGl6ZUFzU3RyaW5nT3JDdXN0b21JZGVudCk6IERlbGV0ZWQu
CisgICAgICAgICogY3NzL0NTU01hcmt1cC5oOiBSZW1vdmVkIHNlcmlhbGl6ZUFzU3RyaW5nT3JD
dXN0b21JZGVudC4KKworICAgICAgICAqIGNzcy9DU1NQcmltaXRpdmVWYWx1ZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjppc1ZhbGlkQ1NTVW5pdFR5cGVGb3JEb3VibGVDb252ZXJzaW9uKTogQWRk
ZWQgYSBjYXNlIGZvcgorICAgICAgICBDdXN0b21JZGVudC4gQ2hhbmdlZCBDU1NfSURFTlQgdG8g
YXNzZXJ0IG5vdCByZWFjaGVkLCBzaW5jZSBpdCBzaG91bGQKKyAgICAgICAgbmV2ZXIgYmUgcGFz
c2VkIHRvIHRoaXMgZnVuY3Rpb24uIE1vcmUgY2xlYW51cCBvZiBDU1NVbml0VHlwZSBpcyBuZWVk
ZWQsCisgICAgICAgIGJ1dCBmb3Igbm93IG1vc3RseSBsZWF2aW5nIGl0IGFsb25lLgorICAgICAg
ICAoV2ViQ29yZTo6aXNTdHJpbmdUeXBlKTogQWRkZWQgYSBjYXNlIGZvciBDdXN0b21JZGVudC4g
TW92ZWQgQ1NTX0RJTUVOU0lPTiwKKyAgICAgICAgd2hpY2ggd2FzIGluY29ycmVjdGx5IHJldHVy
bmluZyB0cnVlLCB0byByZXR1cm4gZmFsc2UuIFByZXR0eSBzdXJlIHRoZXJlJ3MKKyAgICAgICAg
bm8gd2F5IHRvIGNyZWF0ZSBvbmUgb2YgdGhlc2Ugd2l0aCBDU1NfRElNRU5TSU9OLCBidXQgdGhp
cyBpcyBsZXNzIHBlY3VsaWFyLgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6
OnByaW1pdGl2ZVR5cGUgY29uc3QpOiBBZGRlZCB0cmFuc2Zvcm1hdGlvbgorICAgICAgICBmcm9t
IEN1c3RvbUlkZW50IHRvIENTU19JREVOVCBhcyB3ZSBkbyB3aXRoIENTU19QUk9QRVJUWV9JRCBh
bmQgQ1NTX1ZBTFVFX0lELgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OmNs
ZWFudXApOiBBZGRlZCBhIGNhc2UgZm9yIEN1c3RvbUlkZW50LgorICAgICAgICBNb3ZlZCBDU1Nf
RElNRU5TSU9OIHRvIHRoZSBjb3JyZWN0IHNlY3Rpb24uIFByZXR0eSBzdXJlIHRoZXJlJ3Mgbm8g
d2F5IHRvCisgICAgICAgIGNyZWF0ZSBvbmUgb2YgdGhlc2Ugd2l0aCBDU1NfRElNRU5TSU9OLCBi
dXQgdGhpcyBpcyBsZXNzIHBlY3VsaWFyLgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZl
VmFsdWU6OnNldEZsb2F0VmFsdWUpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJp
bWl0aXZlVmFsdWU6OnNldFN0cmluZ1ZhbHVlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkNTU1ByaW1pdGl2ZVZhbHVlOjpnZXRTdHJpbmdWYWx1ZSBjb25zdCk6IERlbGV0ZWQuCisgICAg
ICAgIChXZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6c3RyaW5nVmFsdWUgY29uc3QpOiBBZGRl
ZCBhIGNhc2UgZm9yIEN1c3RvbUlkZW50LgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZl
VmFsdWU6OnVuaXRUeXBlU3RyaW5nKTogQWRkZWQgYSBjYXNlIGZvciBDdXN0b21JZGVudAorICAg
ICAgICBhbmQgYW4gQVNTRVJUX05PVF9SRUFDSEVEIGZvciBpbnZhbGlkIGVudW1lcmF0aW9uIHZh
bHVlcy4KKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpmb3JtYXROdW1iZXJG
b3JDdXN0b21DU1NUZXh0IGNvbnN0KToKKyAgICAgICAgUmVtb3ZlZCBpbmFjY3VyYXRlIEZJWE1F
IGNvbW1lbnQgZm9yIENTU19ESU1FTlNJT04gYW5kIGNoYW5nZWQgaXQgdG8gZG8KKyAgICAgICAg
c29tZXRoaW5nIGxlc3Mgd3JvbmcsIGJ1dCBzdGlsbCBpbmNvcnJlY3QuIFByZXR0eSBzdXJlIHRo
ZXJlJ3Mgbm8gd2F5IHRvCisgICAgICAgIGNyZWF0ZSBvbmUgb2YgdGhlc2Ugd2l0aCBDU1NfRElN
RU5TSU9OLCBidXQgdGhpcyBpcyBsZXNzIHBlY3VsaWFyLiBDaGFuZ2VkCisgICAgICAgIENTU19T
VFJJTkcgY2FzZSB0byBhbHdheXMgc2VyaWFsaXplQXNTdHJpbmcuIEFkZGVkIGEgQ3VzdG9tSWRl
bnQgY2FzZQorICAgICAgICB0aGF0IGFsd2F5cyBzZXJpYWxpemVzIGFzIGFuIGlkZW50aWZpZXIu
CisgICAgICAgIChXZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6ZXF1YWxzIGNvbnN0KTogTW92
ZWQgdGhlIENTU19ESU1FTlNJT04gdG8KKyAgICAgICAgdGhlIGNvcnJlY3QgcGFydCBvZiB0aGlz
IHN3aXRjaCBzdGF0ZW1lbnQuIFByZXR0eSBzdXJlIHRoZXJlJ3Mgbm8gd2F5IHRvCisgICAgICAg
IGNyZWF0ZSBvbmUgb2YgdGhlc2Ugd2l0aCBDU1NfRElNRU5TSU9OLCBidXQgdGhpcyBpcyBsZXNz
IHBlY3VsaWFyLgorICAgICAgICBBZGRlZCBjYXNlIGZvciBDdXN0b21JZGVudC4KKworICAgICAg
ICAqIGNzcy9DU1NQcmltaXRpdmVWYWx1ZS5oOiBNYWRlIGlzRm9udFJlbGF0aXZlTGVuZ3RoLCBp
c1Jlc29sdXRpb24sCisgICAgICAgIGFuZCBpc1ZpZXdwb3J0UGVyY2VudGFnZUxlbmd0aCBwcml2
YXRlLiBNYWRlIHRob3NlIHBsdXMgaXNMZW5ndGggYWxsCisgICAgICAgIGNvbnN0ZXhwci4gUmVt
b3ZlZCBXRUJDT1JFX0VYUE9SVCBmcm9tIHByaW1pdGl2ZVR5cGUgYW5kIGdldEZsb2F0VmFsdWU6
CisgICAgICAgIHRob3NlIG5lZWRlZCB0byBiZSBleHBvcnRlZCB3aGVuIHRoaXMgd2FzIHRoZSB3
ZWItZXhwb3NlZCBjbGFzcywgYnV0CisgICAgICAgIHRoYXQgaXMgbm93IERlcHJlY2F0ZWRDU1NP
TVByaW1pdGl2ZVZhbHVlLiBEZWxldGVkIHNldEZsb2F0VmFsdWUsCisgICAgICAgIHNldFN0cmlu
Z1ZhbHVlLCBhbmQgZ2V0U3RyaW5nVmFsdWUgZm9yIHRoZSBzYW1lIHJlYXNvbjogdGhvc2UgZnVu
Y3Rpb25zCisgICAgICAgIGFyZSBub3cgaW4gRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWUg
YW5kIGRvbid0IG5lZWQgdG8gYmUgaGVyZS4KKworICAgICAgICAqIGNzcy9DU1NUb1N0eWxlTWFw
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1RvU3R5bGVNYXA6Om1hcEFuaW1hdGlvbk5hbWUp
OiBVcGRhdGVkIHRvIHBhc3MgYSBib29sZWFuCisgICAgICAgIGluIHRvIHRoZSBhbmltYXRpb24g
bmFtZSB0byBrZWVwIHRyYWNrIG9mIHdoZXRoZXIgaXQgd2FzIGNyZWF0ZWQgd2l0aAorICAgICAg
ICBhIHN0cmluZyBvciBhIGN1c3RvbS1pZGVudCBzbyB3ZSBpdCBjYW4gcHJvcGVybHkgcm91bmQt
dHJpcCBpbiBjb21wdXRlZAorICAgICAgICBzdHlsZS4gVGhpcyBpcyByZXF1aXJlZCB0byBwYXNz
IHNvbWUgb2YgdGhlIFdQVCB0ZXN0cywgYWx0aG91Z2ggSSBjb3VsZAorICAgICAgICBub3QgZmlu
ZCBjbGVhciBndWlkYW5jZSBpbiB0aGUgc3BlY2lmaWNhdGlvbiB0aGF0IHRoaXMgYmVoYXZpb3Ig
aXMgcmVxdWlyZWQuCisgICAgICAgIFRoZSBzYW1lIG5hbWUgd2l0aCBhIHN0cmluZyBhbmQgY3Vz
dG9tLWlkZW50IGFyZSBlcXVpdmFsZW50IGluIG90aGVyIHdheXMuCisKKyAgICAgICAgKiBjc3Mv
Q1NTVW5pdHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6b3BlcmF0b3I8PCk6IEFkZGVkIGEgY2Fz
ZSBmb3IgQ3VzdG9tSWRlbnQuCisgICAgICAgICogY3NzL0NTU1VuaXRzLmg6IEFkZGVkIEN1c3Rv
bUlkZW50LiBBZGRlZCBzb21lIEZJWE1FIGFib3V0IGhvdyB3ZSBjYW4KKyAgICAgICAgY2hhbmdl
IHRoaXMgaW4gdGhlIGZ1dHVyZS4gSXQncyBhIHJlbW5hbnQgb2YgdGhlIHBhc3Qgd2hlbiB0aGVz
ZSB3ZXJlIHBhcnQKKyAgICAgICAgb2Ygb3VyIHdlYi1mYWNpbmcgQVBJLCBhbmQgdGhpcyBjYW4g
YmUgZ3JlYXRseSBjbGVhbmVkIHVwLgorCisgICAgICAgICogY3NzL0NTU1ZhbHVlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpjc3NUZXh0IGNvbnN0KTogUmVtb3ZlZCBDU1NDdXN0
b21JZGVudFZhbHVlLmgsCisgICAgICAgIEN1c3RvbUlkZW50Q2xhc3MsIENTU0N1c3RvbUlkZW50
VmFsdWUuIFdlIGFyZSBub3QgZ29pbmcgdG8gdXNlIGEgc2VwYXJhdGUKKyAgICAgICAgY2xhc3Mg
Zm9yIGN1c3RvbS1pZGVudCwganVzdCBhIHNlcGFyYXRlIHR5cGUgb2YgcHJpbWl0aXZlIHZhbHVl
LgorICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OmRlc3Ryb3kpOiBEaXR0by4KKyAgICAgICAg
KiBjc3MvQ1NTVmFsdWUuaDogRGVsZXRlZCBpc0N1c3RvbUlkZW50VmFsdWUgYW5kIEN1c3RvbUlk
ZW50Q2xhc3MuCisKKyAgICAgICAgKiBjc3MvQ1NTVmFsdWVMaXN0LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1ZhbHVlTGlzdDo6Y3VzdG9tQ1NTVGV4dCBjb25zdCk6IFR3ZWFrZWQgYWxnb3Jp
dGhtCisgICAgICAgIHRvIGJlIHNsaWdodGx5IG1vcmUgZWZmaWNpZW50LgorCisgICAgICAgICog
Y3NzL0NTU1ZhbHVlUG9vbC5oOiBBZGRlZCBjcmVhdGVDdXN0b21JZGVudC4gTGF0ZXIgc2hvdWxk
IHJlbW92ZQorICAgICAgICB0aGUgY3JlYXRlIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYSBzdHJpbmcg
dmFsdWUgYW5kIGEgdHlwZSBhbmQgdXNlCisgICAgICAgIHNlcGFyYXRlIG5hbWVkIGZ1bmN0aW9u
cyBmb3IgdGhlIGZldyBkaWZmZXJlbnQgY2FzZXMsIGJ1dCBkb2luZyB0aGUKKyAgICAgICAgbmV3
IG9uZSB0aGlzIHdheSBmb3Igbm93LgorCisgICAgICAgICogY3NzL0RlcHJlY2F0ZWRDU1NPTVBy
aW1pdGl2ZVZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRlcHJlY2F0ZWRDU1NPTVByaW1p
dGl2ZVZhbHVlOjpwcmltaXRpdmVUeXBlIGNvbnN0KToKKyAgICAgICAgUmV3cm90ZSB0aGlzIHRv
IGJlIGEgc3dpdGNoIHRoYXQgcHJlc2VydmVzIHRoZSBjdXJyZW50IGJlaGF2aW9yCisgICAgICAg
IGJ1dCBubyBsb25nZXIgcmVsaWVzIG9uIHRoZSBudW1lcmljIHZhbHVlcyBvZiBDU1NVbml0VHlw
ZSB2YWx1ZXMuCisgICAgICAgIEFkZGVkIGEgRklYTUUgYWJvdXQgdXNpbmcgQ1NTX1VOS05PV04g
bW9yZTogc29tZSBvZiB0aGUgbnVtYmVycworICAgICAgICB3ZSBhcmUgZXhwb3NpbmcgdG8gdGhl
IHdlYiBhcmUgZG9pbmcgbm8gZ29vZC4KKyAgICAgICAgKFdlYkNvcmU6OkRlcHJlY2F0ZWRDU1NP
TVByaW1pdGl2ZVZhbHVlOjpzZXRGbG9hdFZhbHVlKTogTW92ZWQgdGhpcworICAgICAgICBmdW5j
dGlvbiB0byB0aGUgaGVhZGVyLgorICAgICAgICAoV2ViQ29yZTo6RGVwcmVjYXRlZENTU09NUHJp
bWl0aXZlVmFsdWU6OmdldEZsb2F0VmFsdWUgY29uc3QpOgorICAgICAgICBSZXdyb3RlIHRoaXMg
dG8gYmUgYSBzd2l0Y2ggYXMgYWJvdmUuIFByZXNlcnZlcyBjdXJyZW50IGJlaGF2aW9yCisgICAg
ICAgIGJ1dCBzdG9wcyByZWx5aW5nIG9uIENTU1VuaXRUeXBlIG51bWVyaWMgdmFsdWVzLgorICAg
ICAgICAoV2ViQ29yZTo6RGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWU6OnNldFN0cmluZ1Zh
bHVlKTogTW92ZWQgdGhpcworICAgICAgICBmdW5jdGlvbiB0byB0aGUgaGVhZGVyLgorICAgICAg
ICAoV2ViQ29yZTo6RGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWU6OmdldFN0cmluZ1ZhbHVl
IGNvbnN0KToKKyAgICAgICAgRGl0dG8uIEJ5IHB1dHRpbmcgYSBzd2l0Y2ggb24gcHJpbWl0aXZl
VHlwZSBoZXJlLCB3ZSBjYW4gZW5mb3JjZQorICAgICAgICB0aGUgZGVzaXJlZCBleGNlcHRpb24g
YmVoYXZpb3IgaGVyZSwgaW5zdGVhZCBvZiBnZXR0aW5nIGl0IGZyb20KKyAgICAgICAgQ1NTUHJp
bWl0aXZlVmFsdWUsIGFuZCBpdCdzIGJldHRlciBmb3IgdGhpcyBjbGFzcyB0byBkZWFsIHdpdGgK
KyAgICAgICAgdGhlIGxlZ2FjeSBiaW5kaW5ncyBpc3N1ZXMuCisgICAgICAgIChXZWJDb3JlOjpE
ZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZTo6Z2V0Q291bnRlclZhbHVlIGNvbnN0KTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjpEZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZTo6Z2V0
UmVjdFZhbHVlIGNvbnN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEZXByZWNhdGVkQ1NT
T01QcmltaXRpdmVWYWx1ZTo6Z2V0UkdCQ29sb3JWYWx1ZSBjb25zdCk6IERpdHRvLgorCisgICAg
ICAgICogY3NzL0RlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmg6IFJlbW92ZWQgdW5uZWVk
ZWQgY3NzVmFsdWVUeXBlCisgICAgICAgIGZ1bmN0aW9uLiBNYWRlIGJvdGggc2V0RmxvYXRWYWx1
ZSBhbmQgc2V0U3RyaW5nVmFsdWUgc2ltcGxlciBzaW5jZQorICAgICAgICB0aGV5IGFsd2F5cyBy
YWlzZSBhbiBleGNlcHRpb24gYW5kIHdlIGRvIG5vdCBpbnRlbmQgdG8gY2hhbmdlIHRoYXQuCisg
ICAgICAgIEFsc28gc3RvcCB1c2luZyBwcm90ZWN0ZWQgc2luY2Ugd2UgaGF2ZSBubyBjbGFzc2Vz
IGRlcml2ZWQgZnJvbSB0aGlzLgorICAgICAgICBDb3VsZCBkbyBtb3JlIGNsZWFudXAsIGJ1dCB0
aGlzIGlzIGEgc3RhcnQuCisKKyAgICAgICAgKiBjc3MvRGVwcmVjYXRlZENTU09NVmFsdWUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RGVwcmVjYXRlZENTU09NVmFsdWU6OmNzc1ZhbHVlVHlwZSBj
b25zdCk6IFB1dCB0aGUgY29uc3RhbnQKKyAgICAgICAgdmFsdWVzLCBDU1NfUFJJTUlUSVZFX1ZB
TFVFIGFuZCBDU1NfVkFMVUVfTElTVCwgaGVyZSByYXRoZXIgdGhhbgorICAgICAgICBjYWxsaW5n
IG1lbWJlciBmdW5jdGlvbnMuCisKKyAgICAgICAgKiBjc3MvRGVwcmVjYXRlZENTU09NVmFsdWVM
aXN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRlcHJlY2F0ZWRDU1NPTVZhbHVlTGlzdDo6Y3Nz
VGV4dCBjb25zdCk6IFR3ZWFrZWQgdG8gbWFrZQorICAgICAgICB0aGUgY29kZSBtb3JlIGVmZmlj
aWVudC4KKworICAgICAgICAqIGNzcy9EZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3QuaDogUmVtb3Zl
ZCB1bm5lZWRlZCBjc3NWYWx1ZVR5cGUKKyAgICAgICAgZnVuY3Rpb24gYW5kIGNvbnN0IG92ZXJs
b2FkIG9mIGl0ZW0gZnVuY3Rpb24uIEFsc28gc3RvcCB1c2luZyBwcm90ZWN0ZWQKKyAgICAgICAg
c2luY2Ugd2UgaGF2ZSBubyBjbGFzc2VzIGRlcml2ZWQgZnJvbSB0aGlzLgorCisgICAgICAgICog
Y3NzL01lZGlhUXVlcnlFeHByZXNzaW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmZlYXR1cmVX
aXRoVmFsaWRJZGVudCk6IEZpeGVkIGluZGVudGF0aW9uIHRvIG1hdGNoIFdlYktpdCBzdHlsZS4K
KyAgICAgICAgKFdlYkNvcmU6OmZlYXR1cmVXaXRoVmFsaWREZW5zaXR5KTogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpmZWF0dXJlV2l0aFZhbGlkUG9zaXRpdmVMZW5ndGgpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkNvcmU6OmZlYXR1cmVFeHBlY3RpbmdQb3NpdGl2ZUludGVnZXIpOiBEaXR0by4K
KyAgICAgICAgKFdlYkNvcmU6OmZlYXR1cmVXaXRoUG9zaXRpdmVOdW1iZXIpOiBEaXR0by4KKwor
ICAgICAgICAqIGNzcy9jYWxjL0NTU0NhbGNDYXRlZ29yeU1hcHBpbmcuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6aGFzRG91YmxlVmFsdWUpOiBBZGRlZCBhIGNhc2UgZm9yIEN1c3RvbUlkZW50Lgor
CisgICAgICAgICogY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpjb25zdW1lV2lsbENoYW5nZSk6IFJlbW92ZWQgY29tbWVudCBzYXlpbmcgd2Ugc2hv
dWxkIHVzZQorICAgICAgICBDU1NDdXN0b21JZGVudFZhbHVlIHNpbmNlIHVzaW5nIGEgcHJvcGVy
dHkgSUQgZm9yIHRoZSB2YWx1ZSBpcyBncmVhdC4KKyAgICAgICAgKFdlYkNvcmU6OmNvbnN1bWVB
bmltYXRpb25OYW1lKTogUmVtb3ZlZCBjb21tZW50IHNheWluZyB3ZSBzaG91bGQgdXNlCisgICAg
ICAgIENTU0N1c3RvbUlkZW50VmFsdWUgaGVyZSBiZWNhdXNlIHRoYXQgd291bGQgYmUgaW5jb3Jy
ZWN0OiB3ZSBuZWVkIHRvCisgICAgICAgIHByZXNlcnZlIGFuZCByb3VuZC10cmlwIHRoZSBmYWN0
IHRoYXQgdGhpcyB3YXMgc3RyaW5nLCBub3QgY3VzdG9tLWlkZW50LgorICAgICAgICAoV2ViQ29y
ZTo6Y29uc3VtZVRyYW5zaXRpb25Qcm9wZXJ0eSk6IFJlbW92ZSBzcGVjaWFsIGNhc2UgZm9yCisg
ICAgICAgIENTU1ZhbHVlQWxsIHRoYXQgd2Fzbid0IGRvaW5nIGFueXRoaW5nLiBSZW1vdmVkIGNv
bW1lbnQgc2F5aW5nIHdlIHNob3VsZAorICAgICAgICB1c2UgQ1NTQ3VzdG9tSWRlbnRWYWx1ZSBz
aW5jZSB1c2luZyBhIHZhbHVlIElEIGZvciB0aGUgdmFsdWUgaXMgZ3JlYXQuCisgICAgICAgIChX
ZWJDb3JlOjpjb25zdW1lQXR0cik6IFVwZGF0ZWQgY29tbWVudC4KKyAgICAgICAgKFdlYkNvcmU6
OmlzQ3VzdG9tSWRlbnRWYWx1ZSk6IFVwZGF0ZWQgdG8gd29yayB3aXRoIHRoZSBuZXcgcHJpbWl0
aXZlIHZhbHVlLgorCisgICAgICAgICogY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBl
cnMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzOjpjb25z
dW1lQ3VzdG9tSWRlbnQpOgorICAgICAgICBVc2UgdGhlIG5ldyBjcmVhdGVDdXN0b21JZGVudCBh
bmQgcmVtb3ZlZCBhbiBvdXRkYXRlZCBjb21tZW50LiBXaGlsZSB3ZQorICAgICAgICBtaWdodCBz
b21lIGRheSB3YW50IHRvIGltcGxlbWVudCBjdXN0b20taWRlbnQgZGlmZmVyZW50bHksIHdlIHdv
bid0IG5lZWQKKyAgICAgICAgdG8gY2hhbmdlIHRoZSBjb2RlIGhlcmUgdG8gbWFrZSB0aGF0IGhh
cHBlbi4KKworICAgICAgICAqIHBsYXRmb3JtL2FuaW1hdGlvbi9BbmltYXRpb24uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6QW5pbWF0aW9uOjphbmltYXRpb25zTWF0Y2ggY29uc3QpOiBVcGRhdGUg
c2luY2UgbV9uYW1lIG5vdyBpcyBhCisgICAgICAgIHN0cnVjdC4KKyAgICAgICAgKFdlYkNvcmU6
OkFuaW1hdGlvbjo6aW5pdGlhbE5hbWUpOiBVcGRhdGUgdG8gcmV0dXJuIE5hbWUgaW5zdGVhZCBv
ZiBTdHJpbmcuCisgICAgICAgIChXZWJDb3JlOjpvcGVyYXRvcjw8KTogVXBkYXRlIHNpbmNlIG5h
bWUoKSBub3cgcmV0dXJucyBhIHN0cnVjdC4KKyAgICAgICAgKiBwbGF0Zm9ybS9hbmltYXRpb24v
QW5pbWF0aW9uLmg6IEFkZGVkIHRoZSBOYW1lIHN0cnVjdCBzbyB3ZSBjYW4gc3RvcmUgYQorICAg
ICAgICBib29sZWFuIHRvIGluZGljYXRlIHdoZXRoZXIgaXQncyBhIHN0cmluZyBvciBjdXN0b20t
aWRlbnQgZm9yIHJvdW5kIHRyaXBwaW5nLgorICAgICAgICBVcGRhdGUgdHlwZXMgYW5kIGltcGxl
bWVudGF0aW9ucyBvZiBmdW5jdGlvbiBhbmQgZGF0YSBtZW1iZXJzIGFjY29yZGluZ2x5LgorCisg
ICAgICAgICogc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmg6CisgICAgICAgIChXZWJDb3Jl
OjpTdHlsZTo6QnVpbGRlckNvbnZlcnRlcjo6Y3JlYXRlR3JpZFBvc2l0aW9uKTogVXBkYXRlIGNv
ZGUgdG8gZXhwZWN0CisgICAgICAgIGN1c3RvbS1pZGVudCBpbnN0ZWFkIG9mIHN0cmluZzsgdGhl
eSB1c2VkIHRvIGJvdGggYmUgdGhlIHNhbWUgdGhpbmcuCisKKyAgICAgICAgKiBzdHlsZS9TdHls
ZWFibGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6c2hvdWxkQ29uc2lkZXJBbmltYXRpb24pOiBV
cGRhdGUgc2luY2UgQW5pbWF0aW9uOjpuYW1lKCkgbm93CisgICAgICAgIHJldHVybnMgYSBzdHJ1
Y3QuIEFsc28gZ290IHJpZCBvZiB1bnN1Y2Nlc3NmdWwgYXR0ZW1wdCB0byBvcHRpbWl6ZSBjb21w
YXJpc29uCisgICAgICAgIGFnYWludCB0aGUgc3RyaW5nICJub25lIjsgbGF0ZXIgbWlnaHQgYmUg
Z29vZCB0byBjbGVhbiBvdXQgdGhhdCBzcGVjaWFsIGNhc2UuCisgICAgICAgIChXZWJDb3JlOjpT
dHlsZWFibGU6OnVwZGF0ZUNTU0FuaW1hdGlvbnMgY29uc3QpOiBEaXR0by4KKwogMjAyMS0wNi0w
NiAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFJlZHVjZSB1c2Ug
b2YgbGVnYWN5IEV2ZW50TG9vcEV2ZW50UXVldWUgYW5kIEV2ZW50TG9vcFRhc2tRdWV1ZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0NTU0FuaW1hdGlvbi5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTQW5pbWF0aW9uLmNwcAppbmRleCAwZGM5YWFkNzczMTNi
NzA4M2JjZTI2M2JhZTY5NWM1YjE3ZDNlNzRmLi4zMTNmMGRjODQ5ZThmY2ZhNWQxMjMyYWM5ZTA4
ODljMWUyZjYyZWMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTQW5p
bWF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTQW5pbWF0aW9uLmNw
cApAQCAtNDgsNyArNDgsNyBAQCBSZWY8Q1NTQW5pbWF0aW9uPiBDU1NBbmltYXRpb246OmNyZWF0
ZShjb25zdCBTdHlsZWFibGUmIG93bmluZ0VsZW1lbnQsIGNvbnN0IEFuaQogCiBDU1NBbmltYXRp
b246OkNTU0FuaW1hdGlvbihjb25zdCBTdHlsZWFibGUmIGVsZW1lbnQsIGNvbnN0IEFuaW1hdGlv
biYgYmFja2luZ0FuaW1hdGlvbikKICAgICA6IERlY2xhcmF0aXZlQW5pbWF0aW9uKGVsZW1lbnQs
IGJhY2tpbmdBbmltYXRpb24pCi0gICAgLCBtX2FuaW1hdGlvbk5hbWUoYmFja2luZ0FuaW1hdGlv
bi5uYW1lKCkpCisgICAgLCBtX2FuaW1hdGlvbk5hbWUoYmFja2luZ0FuaW1hdGlvbi5uYW1lKCku
c3RyaW5nKQogewogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5
ZnJhbWVFZmZlY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0
LmNwcAppbmRleCBkN2IzZDk2YmZjOGY0ZmFhZThjOWIzYjgzODA2MzRhNzhjZjIzYTA4Li5iZTE3
MmFjYWNlZjhmMzUwZjM5OTJjN2ExYTZjYzFhNTM3OTQ2MDY0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAKQEAgLTEwMTksNyArMTAxOSw3IEBAIHZvaWQg
S2V5ZnJhbWVFZmZlY3Q6OmNvbXB1dGVDU1NBbmltYXRpb25CbGVuZGluZ0tleWZyYW1lcyhjb25z
dCBSZW5kZXJTdHlsZSYgdW5hCiAgICAgYXV0byBjc3NBbmltYXRpb24gPSBkb3duY2FzdDxDU1NB
bmltYXRpb24+KGFuaW1hdGlvbigpKTsKICAgICBhdXRvJiBiYWNraW5nQW5pbWF0aW9uID0gY3Nz
QW5pbWF0aW9uLT5iYWNraW5nQW5pbWF0aW9uKCk7CiAKLSAgICBLZXlmcmFtZUxpc3Qga2V5ZnJh
bWVMaXN0KGJhY2tpbmdBbmltYXRpb24ubmFtZSgpKTsKKyAgICBLZXlmcmFtZUxpc3Qga2V5ZnJh
bWVMaXN0KGJhY2tpbmdBbmltYXRpb24ubmFtZSgpLnN0cmluZyk7CiAgICAgaWYgKGF1dG8qIHN0
eWxlU2NvcGUgPSBTdHlsZTo6U2NvcGU6OmZvck9yZGluYWwoKm1fdGFyZ2V0LCBiYWNraW5nQW5p
bWF0aW9uLm5hbWVTdHlsZVNjb3BlT3JkaW5hbCgpKSkKICAgICAgICAgc3R5bGVTY29wZS0+cmVz
b2x2ZXIoKS5rZXlmcmFtZVN0eWxlc0ZvckFuaW1hdGlvbigqbV90YXJnZXQsICZ1bmFuaW1hdGVk
U3R5bGUsIHBhcmVudEVsZW1lbnRTdHlsZSwga2V5ZnJhbWVMaXN0KTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAppbmRleCBhNTBl
ZGZlMmNlY2MyZmU5OTQ1MDFhNzAzN2I2ZDAyYTZlMjczZmU0Li5jZDU2N2Q5MGVhMmViMmY3MGFi
ODA2YjBlYzJkY2M4MjY0NmRkNzgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
Q29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
Q29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcApAQCAtODgwLDcgKzg4MCw3IEBAIHZvaWQgT3Jk
ZXJlZE5hbWVkTGluZXNDb2xsZWN0b3I6OmFwcGVuZExpbmVzKENTU0dyaWRMaW5lTmFtZXNWYWx1
ZSYgbGluZU5hbWVzVmFsCiAKICAgICBhdXRvJiBjc3NWYWx1ZVBvb2wgPSBDU1NWYWx1ZVBvb2w6
OnNpbmdsZXRvbigpOwogICAgIGZvciAoY29uc3QgYXV0byYgbGluZU5hbWUgOiBpdGVyLT52YWx1
ZSkKLSAgICAgICAgbGluZU5hbWVzVmFsdWUuYXBwZW5kKGNzc1ZhbHVlUG9vbC5jcmVhdGVWYWx1
ZShsaW5lTmFtZSwgQ1NTVW5pdFR5cGU6OkNTU19TVFJJTkcpKTsKKyAgICAgICAgbGluZU5hbWVz
VmFsdWUuYXBwZW5kKGNzc1ZhbHVlUG9vbC5jcmVhdGVDdXN0b21JZGVudChsaW5lTmFtZSkpOwog
fQogCiB2b2lkIE9yZGVyZWROYW1lZExpbmVzQ29sbGVjdG9yOjpjb2xsZWN0TGluZU5hbWVzRm9y
SW5kZXgoQ1NTR3JpZExpbmVOYW1lc1ZhbHVlJiBsaW5lTmFtZXNWYWx1ZSwgdW5zaWduZWQgaSkg
Y29uc3QKQEAgLTEwNDEsNyArMTA0MSw3IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IHZhbHVlRm9y
R3JpZFBvc2l0aW9uKGNvbnN0IEdyaWRQb3NpdGlvbiYgcG9zaXRpb24pCiAgICAgICAgIHJldHVy
biBjc3NWYWx1ZVBvb2wuY3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlQXV0byk7CiAKICAg
ICBpZiAocG9zaXRpb24uaXNOYW1lZEdyaWRBcmVhKCkpCi0gICAgICAgIHJldHVybiBjc3NWYWx1
ZVBvb2wuY3JlYXRlVmFsdWUocG9zaXRpb24ubmFtZWRHcmlkTGluZSgpLCBDU1NVbml0VHlwZTo6
Q1NTX1NUUklORyk7CisgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2wuY3JlYXRlQ3VzdG9tSWRl
bnQocG9zaXRpb24ubmFtZWRHcmlkTGluZSgpKTsKIAogICAgIGF1dG8gbGlzdCA9IENTU1ZhbHVl
TGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKICAgICBpZiAocG9zaXRpb24uaXNTcGFuKCkp
IHsKQEAgLTEwNTEsNyArMTA1MSw3IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yR3Jp
ZFBvc2l0aW9uKGNvbnN0IEdyaWRQb3NpdGlvbiYgcG9zaXRpb24pCiAgICAgICAgIGxpc3QtPmFw
cGVuZChjc3NWYWx1ZVBvb2wuY3JlYXRlVmFsdWUocG9zaXRpb24uaW50ZWdlclBvc2l0aW9uKCks
IENTU1VuaXRUeXBlOjpDU1NfTlVNQkVSKSk7CiAKICAgICBpZiAoIXBvc2l0aW9uLm5hbWVkR3Jp
ZExpbmUoKS5pc051bGwoKSkKLSAgICAgICAgbGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbC5jcmVh
dGVWYWx1ZShwb3NpdGlvbi5uYW1lZEdyaWRMaW5lKCksIENTU1VuaXRUeXBlOjpDU1NfU1RSSU5H
KSk7CisgICAgICAgIGxpc3QtPmFwcGVuZChjc3NWYWx1ZVBvb2wuY3JlYXRlQ3VzdG9tSWRlbnQo
cG9zaXRpb24ubmFtZWRHcmlkTGluZSgpKSk7CiAgICAgcmV0dXJuIGxpc3Q7CiB9CiAKQEAgLTEw
NjMsOSArMTA2Myw5IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IGNyZWF0ZVRyYW5zaXRpb25Qcm9w
ZXJ0eVZhbHVlKGNvbnN0IEFuaW1hdGlvbiYgYW5pbWF0aW9uKQogICAgIGNhc2UgQW5pbWF0aW9u
OjpUcmFuc2l0aW9uTW9kZTo6QWxsOgogICAgICAgICByZXR1cm4gQ1NTVmFsdWVQb29sOjpzaW5n
bGV0b24oKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVBbGwpOwogICAgIGNhc2UgQW5p
bWF0aW9uOjpUcmFuc2l0aW9uTW9kZTo6U2luZ2xlUHJvcGVydHk6Ci0gICAgICAgIHJldHVybiBD
U1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKGdldFByb3BlcnR5TmFtZVN0cmlu
ZyhhbmltYXRpb24ucHJvcGVydHkoKS5pZCksIENTU1VuaXRUeXBlOjpDU1NfU1RSSU5HKTsKKyAg
ICAgICAgcmV0dXJuIENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlQ3VzdG9tSWRlbnQo
Z2V0UHJvcGVydHlOYW1lU3RyaW5nKGFuaW1hdGlvbi5wcm9wZXJ0eSgpLmlkKSk7CiAgICAgY2Fz
ZSBBbmltYXRpb246OlRyYW5zaXRpb25Nb2RlOjpVbmtub3duUHJvcGVydHk6Ci0gICAgICAgIHJl
dHVybiBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKGFuaW1hdGlvbi51bmtu
b3duUHJvcGVydHkoKSwgQ1NTVW5pdFR5cGU6OkNTU19TVFJJTkcpOworICAgICAgICByZXR1cm4g
Q1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVDdXN0b21JZGVudChhbmltYXRpb24udW5r
bm93blByb3BlcnR5KCkpOwogICAgIH0KICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICBy
ZXR1cm4gQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NT
VmFsdWVOb25lKTsKQEAgLTE3NjEsNyArMTc2MSw3IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IGNv
dW50ZXJUb0NTU1ZhbHVlKGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSwgQ1NTUHJvcGVydHlJRCBw
CiAgICAgYXV0byYgY3NzVmFsdWVQb29sID0gQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKTsKICAg
ICBhdXRvIGxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7CiAgICAg
Zm9yIChhdXRvJiBrZXlWYWx1ZSA6ICptYXApIHsKLSAgICAgICAgbGlzdC0+YXBwZW5kKGNzc1Zh
bHVlUG9vbC5jcmVhdGVWYWx1ZShrZXlWYWx1ZS5rZXksIENTU1VuaXRUeXBlOjpDU1NfU1RSSU5H
KSk7CisgICAgICAgIGxpc3QtPmFwcGVuZChjc3NWYWx1ZVBvb2wuY3JlYXRlQ3VzdG9tSWRlbnQo
a2V5VmFsdWUua2V5KSk7CiAgICAgICAgIGRvdWJsZSBudW1iZXIgPSAocHJvcGVydHlJRCA9PSBD
U1NQcm9wZXJ0eUNvdW50ZXJJbmNyZW1lbnQgPyBrZXlWYWx1ZS52YWx1ZS5pbmNyZW1lbnRWYWx1
ZSA6IGtleVZhbHVlLnZhbHVlLnJlc2V0VmFsdWUpLnZhbHVlX29yKDApOwogICAgICAgICBsaXN0
LT5hcHBlbmQoY3NzVmFsdWVQb29sLmNyZWF0ZVZhbHVlKG51bWJlciwgQ1NTVW5pdFR5cGU6OkNT
U19OVU1CRVIpKTsKICAgICB9CkBAIC0zMDUxLDcgKzMwNTEsNyBAQCBSZWZQdHI8Q1NTVmFsdWU+
IENvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKGNvbnN0IFJl
bmRlclN0eQogICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TG9jYWxlOgogICAgICAgICAg
ICAgaWYgKHN0eWxlLnNwZWNpZmllZExvY2FsZSgpLmlzTnVsbCgpKQogICAgICAgICAgICAgICAg
IHJldHVybiBjc3NWYWx1ZVBvb2wuY3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlQXV0byk7
Ci0gICAgICAgICAgICByZXR1cm4gY3NzVmFsdWVQb29sLmNyZWF0ZVZhbHVlKHN0eWxlLnNwZWNp
ZmllZExvY2FsZSgpLCBDU1NVbml0VHlwZTo6Q1NTX1NUUklORyk7CisgICAgICAgICAgICByZXR1
cm4gY3NzVmFsdWVQb29sLmNyZWF0ZUN1c3RvbUlkZW50KHN0eWxlLnNwZWNpZmllZExvY2FsZSgp
KTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eU1hcmdpblRvcDoKICAgICAgICAgICAgIHJldHVy
biB6b29tQWRqdXN0ZWRQYWRkaW5nT3JNYXJnaW5QaXhlbFZhbHVlPCZSZW5kZXJTdHlsZTo6bWFy
Z2luVG9wLCAmUmVuZGVyQm94TW9kZWxPYmplY3Q6Om1hcmdpblRvcD4oc3R5bGUsIHJlbmRlcmVy
KTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eU1hcmdpblJpZ2h0OiB7CkBAIC0zNDIzLDggKzM0
MjMsMTMgQEAgUmVmUHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZv
clByb3BlcnR5SW5TdHlsZShjb25zdCBSZW5kZXJTdHkKICAgICAgICAgICAgIGF1dG8gbGlzdCA9
IENTU1ZhbHVlTGlzdDo6Y3JlYXRlQ29tbWFTZXBhcmF0ZWQoKTsKICAgICAgICAgICAgIGNvbnN0
IEFuaW1hdGlvbkxpc3QqIHQgPSBzdHlsZS5hbmltYXRpb25zKCk7CiAgICAgICAgICAgICBpZiAo
dCkgewotICAgICAgICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgdC0+c2l6ZSgpOyAr
K2kpCi0gICAgICAgICAgICAgICAgICAgIGxpc3QtPmFwcGVuZChjc3NWYWx1ZVBvb2wuY3JlYXRl
VmFsdWUodC0+YW5pbWF0aW9uKGkpLm5hbWUoKSwgQ1NTVW5pdFR5cGU6OkNTU19TVFJJTkcpKTsK
KyAgICAgICAgICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHQtPnNpemUoKTsgKytpKSB7
CisgICAgICAgICAgICAgICAgICAgIGF1dG8mIG5hbWUgPSB0LT5hbmltYXRpb24oaSkubmFtZSgp
OworICAgICAgICAgICAgICAgICAgICBpZiAobmFtZS5pc0lkZW50aWZpZXIpCisgICAgICAgICAg
ICAgICAgICAgICAgICBsaXN0LT5hcHBlbmQoY3NzVmFsdWVQb29sLmNyZWF0ZUN1c3RvbUlkZW50
KG5hbWUuc3RyaW5nKSk7CisgICAgICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGxpc3QtPmFwcGVuZChjc3NWYWx1ZVBvb2wuY3JlYXRlVmFsdWUobmFtZS5zdHJp
bmcsIENTU1VuaXRUeXBlOjpDU1NfU1RSSU5HKSk7CisgICAgICAgICAgICAgICAgfQogICAgICAg
ICAgICAgfSBlbHNlCiAgICAgICAgICAgICAgICAgbGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbC5j
cmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25lKSk7CiAgICAgICAgICAgICByZXR1cm4g
bGlzdDsKQEAgLTM2ODYsNyArMzY5MSw3IEBAIFJlZlB0cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHls
ZUV4dHJhY3Rvcjo6dmFsdWVGb3JQcm9wZXJ0eUluU3R5bGUoY29uc3QgUmVuZGVyU3R5CiAgICAg
ICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRMaW5lR3JpZDoKICAgICAgICAgICAgIGlmIChzdHls
ZS5saW5lR3JpZCgpLmlzTnVsbCgpKQogICAgICAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBv
b2wuY3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlTm9uZSk7Ci0gICAgICAgICAgICByZXR1
cm4gY3NzVmFsdWVQb29sLmNyZWF0ZVZhbHVlKHN0eWxlLmxpbmVHcmlkKCksIENTU1VuaXRUeXBl
OjpDU1NfU1RSSU5HKTsKKyAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2wuY3JlYXRlQ3Vz
dG9tSWRlbnQoc3R5bGUubGluZUdyaWQoKSk7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJr
aXRMaW5lU25hcDoKICAgICAgICAgICAgIHJldHVybiBDU1NQcmltaXRpdmVWYWx1ZTo6Y3JlYXRl
KHN0eWxlLmxpbmVTbmFwKCkpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TGluZUFs
aWduOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0N1c3RvbUlkZW50VmFsdWUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0N1c3RvbUlkZW50VmFsdWUuY3BwCmluZGV4IDAx
ZTQ4YmRkYmE3YmEzYmU2ODQwM2VhNzUxM2RjZmM1NDg1M2EzYTUuLjgwMzQ1NWVjMzVhOWRlMTY1
NzRjMGZkZDIxNTk2NDBmNTQ4ODE0MzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NDdXN0b21JZGVudFZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3VzdG9t
SWRlbnRWYWx1ZS5jcHAKQEAgLTEsNjIgKzEsNSBAQAotLy8gQ29weXJpZ2h0IDIwMTUgVGhlIENo
cm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBDb3B5cmlnaHQgKEMpIDIw
MTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotLy8KLS8vIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotLy8g
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zIGFyZQotLy8gbWV0OgotLy8KLS8vICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLS8vIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLS8vICAg
ICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZQotLy8gY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lcgotLy8gaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotLy8gZGlzdHJpYnV0aW9uLgotLy8gICAgKiBO
ZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0vLyBj
b250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQgZnJvbQotLy8gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0
ZW4gcGVybWlzc2lvbi4KLS8vCi0vLyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0vLyAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotLy8gTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SCi0vLyBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVAotLy8gT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0vLyBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0vLyBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwKLS8vIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotLy8gVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotLy8gKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFCi0vLyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorLyoKKyAqICBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICovCiAKLSNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJDU1NDdXN0b21JZGVudFZhbHVlLmgiCi0KLSNpbmNsdWRlICJDU1NNYXJrdXAuaCIKLSNp
bmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RG
U3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotQ1NTQ3VzdG9tSWRlbnRWYWx1ZTo6
Q1NTQ3VzdG9tSWRlbnRWYWx1ZShjb25zdCBTdHJpbmcmIHN0cikKLSAgICA6IENTU1ZhbHVlKEN1
c3RvbUlkZW50Q2xhc3MpCi0gICAgLCBtX3N0cmluZyhzdHIpCi0gICAgLCBtX3Byb3BlcnR5SWQo
Q1NTUHJvcGVydHlJbnZhbGlkKSB7IH0KLQotQ1NTQ3VzdG9tSWRlbnRWYWx1ZTo6Q1NTQ3VzdG9t
SWRlbnRWYWx1ZShDU1NQcm9wZXJ0eUlEIGlkKQotICAgIDogQ1NTVmFsdWUoQ3VzdG9tSWRlbnRD
bGFzcykKLSAgICAsIG1fc3RyaW5nKCkKLSAgICAsIG1fcHJvcGVydHlJZChpZCkKLXsKLSAgICBB
U1NFUlQoaXNLbm93blByb3BlcnR5SUQoKSk7Ci19Ci0KLQotU3RyaW5nIENTU0N1c3RvbUlkZW50
VmFsdWU6OmN1c3RvbUNTU1RleHQoKSBjb25zdAotewotICAgIGlmIChpc0tub3duUHJvcGVydHlJ
RCgpKQotICAgICAgICByZXR1cm4gZ2V0UHJvcGVydHlOYW1lQXRvbVN0cmluZyhtX3Byb3BlcnR5
SWQpOwotICAgIFN0cmluZ0J1aWxkZXIgYnVpbGRlcjsKLSAgICBzZXJpYWxpemVJZGVudGlmaWVy
KG1fc3RyaW5nLCBidWlsZGVyKTsKLSAgICByZXR1cm4gYnVpbGRlci50b1N0cmluZygpOwotfQot
Ci19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisvLyBUaGlzIGZpbGUgaXMgbm8gbG9uZ2VyIG5lZWRl
ZCBhbmQgd2UgY2FuIHJlbW92ZSBpdCBzb29uLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0N1c3RvbUlkZW50VmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDdXN0b21J
ZGVudFZhbHVlLmgKaW5kZXggNGFiY2YzMWRkYWFmYmRlY2VhYzY0MmUwNmVjNzNkOGVmOTg2Mzc1
MC4uYTYxNDM0ODM4OThmZjFkNjJiNGI3M2UxZmFjY2U0YjY0ZDc1NWRmZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0N1c3RvbUlkZW50VmFsdWUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTQ3VzdG9tSWRlbnRWYWx1ZS5oCkBAIC0xLDcyICsxLDcgQEAKLS8vIENvcHly
aWdodCAyMDE1IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotLy8g
Q29weXJpZ2h0IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLS8vCi0v
LyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKLS8vIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKLS8vIG1ldDoKLS8vCi0vLyAgICAqIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0vLyBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCi0vLyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKLS8vIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKLS8vIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLS8vIGRpc3RyaWJ1
dGlvbi4KLS8vICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5h
bWVzIG9mIGl0cwotLy8gY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJv
bW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KLS8vIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVj
aWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0vLwotLy8gVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotLy8gIkFT
IElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QKLS8vIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUgotLy8gQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLS8vIE9XTkVSIE9SIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAot
Ly8gU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVAotLy8gTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0vLyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLS8vIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQKLS8vIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRQotLy8gT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy8qCisgKiAgQ29weXJpZ2h0IChD
KSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqLwogCiAjcHJhZ21hIG9u
Y2UKIAotI2luY2x1ZGUgIkNTU1Byb3BlcnR5TmFtZXMuaCIKLSNpbmNsdWRlICJDU1NWYWx1ZS5o
IgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIENTU0N1c3RvbUlkZW50VmFsdWUgOiBw
dWJsaWMgQ1NTVmFsdWUgewotcHVibGljOgotICAgIHN0YXRpYyBSZWY8Q1NTQ3VzdG9tSWRlbnRW
YWx1ZT4gY3JlYXRlKGNvbnN0IFN0cmluZyYgc3RyKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKCpuZXcgQ1NTQ3VzdG9tSWRlbnRWYWx1ZShzdHIpKTsKLSAgICB9Ci0KLSAgICAvLyBG
SVhNRTogUmVtb3ZlIHRoaXMgYW5kIGxhemlseSBwYXJzZSB0aGUgQ1NTUHJvcGVydHlJRCBpbiBp
c0tub3duUHJvcGVydHlJRCgpLgotICAgIHN0YXRpYyBSZWY8Q1NTQ3VzdG9tSWRlbnRWYWx1ZT4g
Y3JlYXRlKENTU1Byb3BlcnR5SUQgaWQpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYo
Km5ldyBDU1NDdXN0b21JZGVudFZhbHVlKGlkKSk7Ci0gICAgfQotCi0gICAgU3RyaW5nIHZhbHVl
KCkgY29uc3QgeyBBU1NFUlQoIWlzS25vd25Qcm9wZXJ0eUlEKCkpOyByZXR1cm4gbV9zdHJpbmc7
IH0KLSAgICBib29sIGlzS25vd25Qcm9wZXJ0eUlEKCkgY29uc3QgeyByZXR1cm4gbV9wcm9wZXJ0
eUlkICE9IENTU1Byb3BlcnR5SW52YWxpZDsgfQotICAgIENTU1Byb3BlcnR5SUQgdmFsdWVBc1By
b3BlcnR5SUQoKSBjb25zdCB7IEFTU0VSVChpc0tub3duUHJvcGVydHlJRCgpKTsgcmV0dXJuIG1f
cHJvcGVydHlJZDsgfQotCi0gICAgU3RyaW5nIGN1c3RvbUNTU1RleHQoKSBjb25zdDsKLQotICAg
IGJvb2wgZXF1YWxzKGNvbnN0IENTU0N1c3RvbUlkZW50VmFsdWUmIG90aGVyKSBjb25zdAotICAg
IHsKLSAgICAgICAgcmV0dXJuIGlzS25vd25Qcm9wZXJ0eUlEKCkgPyBtX3Byb3BlcnR5SWQgPT0g
b3RoZXIubV9wcm9wZXJ0eUlkIDogbV9zdHJpbmcgPT0gb3RoZXIubV9zdHJpbmc7Ci0gICAgfQot
Ci1wcml2YXRlOgotICAgIENTU0N1c3RvbUlkZW50VmFsdWUoY29uc3QgU3RyaW5nJik7Ci0gICAg
Q1NTQ3VzdG9tSWRlbnRWYWx1ZShDU1NQcm9wZXJ0eUlEKTsKLQotICAgIC8vIEZJWE1FOiBDaGFu
Z2UgdGhpcyB0byBhbiBBdG9tU3RyaW5nLgotICAgIFN0cmluZyBtX3N0cmluZzsKLSAgICBDU1NQ
cm9wZXJ0eUlEIG1fcHJvcGVydHlJZDsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQot
U1BFQ0lBTElaRV9UWVBFX1RSQUlUU19DU1NfVkFMVUUoQ1NTQ3VzdG9tSWRlbnRWYWx1ZSwgaXND
dXN0b21JZGVudFZhbHVlKCkpCisvLyBUaGlzIGZpbGUgaXMgbm8gbG9uZ2VyIG5lZWRlZCBhbmQg
d2UgY2FuIHJlbW92ZSBpdCBzb29uLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U01hcmt1cC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTTWFya3VwLmNwcAppbmRleCA1ZTk4
ZDNhNjM2NzJlMzc0NmQ5YzZmZTlmOTQ0NmVmNzM0YzljZmM0Li40N2FjNmIyM2Y4NDFkNDdkZmU3
ZDg0MTAzZDY1YTFkZjE2NjVmNmU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
TWFya3VwLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTTWFya3VwLmNwcApAQCAtNzgs
OSArNzgsNyBAQCBzdGF0aWMgdm9pZCBzZXJpYWxpemVDaGFyYWN0ZXIoVUNoYXIzMiBjLCBTdHJp
bmdCdWlsZGVyJiBhcHBlbmRUbykKIAogc3RhdGljIHZvaWQgc2VyaWFsaXplQ2hhcmFjdGVyQXND
b2RlUG9pbnQoVUNoYXIzMiBjLCBTdHJpbmdCdWlsZGVyJiBhcHBlbmRUbykKIHsKLSAgICBhcHBl
bmRUby5hcHBlbmQoJ1xcJyk7Ci0gICAgYXBwZW5kVG8uYXBwZW5kKGhleChjLCBMb3dlcmNhc2Up
KTsKLSAgICBhcHBlbmRUby5hcHBlbmQoJyAnKTsKKyAgICBhcHBlbmRUby5hcHBlbmQoJ1xcJywg
aGV4KGMsIExvd2VyY2FzZSksICcgJyk7CiB9CiAKIHZvaWQgc2VyaWFsaXplSWRlbnRpZmllcihj
b25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIFN0cmluZ0J1aWxkZXImIGFwcGVuZFRvLCBib29sIHNr
aXBTdGFydENoZWNrcykKQEAgLTE1MCwxNiArMTQ4LDYgQEAgU3RyaW5nIHNlcmlhbGl6ZVVSTChj
b25zdCBTdHJpbmcmIHN0cmluZykKICAgICByZXR1cm4gInVybCgiICsgc2VyaWFsaXplU3RyaW5n
KHN0cmluZykgKyAiKSI7CiB9CiAKLVN0cmluZyBzZXJpYWxpemVBc1N0cmluZ09yQ3VzdG9tSWRl
bnQoY29uc3QgU3RyaW5nJiBzdHJpbmcpCi17Ci0gICAgaWYgKGlzQ1NTVG9rZW5pemVySWRlbnRp
ZmllcihzdHJpbmcpKSB7Ci0gICAgICAgIFN0cmluZ0J1aWxkZXIgYnVpbGRlcjsKLSAgICAgICAg
c2VyaWFsaXplSWRlbnRpZmllcihzdHJpbmcsIGJ1aWxkZXIpOwotICAgICAgICByZXR1cm4gYnVp
bGRlci50b1N0cmluZygpOwotICAgIH0KLSAgICByZXR1cm4gc2VyaWFsaXplU3RyaW5nKHN0cmlu
Zyk7Ci19Ci0gICAgCiBTdHJpbmcgc2VyaWFsaXplRm9udEZhbWlseShjb25zdCBTdHJpbmcmIHN0
cmluZykKIHsKICAgICByZXR1cm4gaXNDU1NUb2tlbml6ZXJJZGVudGlmaWVyKHN0cmluZykgPyBz
dHJpbmcgOiBzZXJpYWxpemVTdHJpbmcoc3RyaW5nKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NNYXJrdXAuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NNYXJrdXAuaAppbmRl
eCA5ODczYjQwZWFlNDYwZjBmOGY5ZjE5ZTAzMGQzYTMwZGQ3MTg5NTk4Li5mYTYwYWJhMzM1ZmEx
YjdjMDNkMWMzYjM2ZTNjMDBkNGZlYzc1N2YyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTTWFya3VwLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU01hcmt1cC5oCkBAIC0z
NSw4ICszNSw0IEBAIFN0cmluZyBzZXJpYWxpemVTdHJpbmcoY29uc3QgU3RyaW5nJik7CiBTdHJp
bmcgc2VyaWFsaXplVVJMKGNvbnN0IFN0cmluZyYpOwogU3RyaW5nIHNlcmlhbGl6ZUZvbnRGYW1p
bHkoY29uc3QgU3RyaW5nJik7CiAKLS8vIEZJWE1FLU5FV1BBUlNFUjogVGhpcyBoeWJyaWQgImNo
ZWNrIGZvciBib3RoIHN0cmluZyBvciBpZGVudCIgZnVuY3Rpb24gY2FuIGJlIHJlbW92ZWQKLS8v
IG9uY2Ugd2UgaGF2ZSBlbmFibGVkIENTU0N1c3RvbUlkZW50VmFsdWUgYW5kIENTU1N0cmluZ1Zh
bHVlLgotU3RyaW5nIHNlcmlhbGl6ZUFzU3RyaW5nT3JDdXN0b21JZGVudChjb25zdCBTdHJpbmcm
KTsKLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRp
dmVWYWx1ZS5jcHAKaW5kZXggMThlY2E5MWYyZTE2NzFjOTdiNWViZDI4NGQ3NTllNTE3MWJiYmE1
OS4uYWU4Y2M5Yjk4N2U4OWVlMzQ3ZTA0ODM0NTQ3MGExMDRkMTdhOTUyZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3BwCkBAIC05Myw3ICs5Myw3IEBAIHN0YXRpYyBp
bmxpbmUgYm9vbCBpc1ZhbGlkQ1NTVW5pdFR5cGVGb3JEb3VibGVDb252ZXJzaW9uKENTU1VuaXRU
eXBlIHVuaXRUeXBlKQogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19DT1VOVEVSOgogICAgIGNh
c2UgQ1NTVW5pdFR5cGU6OkNTU19DT1VOVEVSX05BTUU6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6
Q1NTX0ZPTlRfRkFNSUxZOgotICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19JREVOVDoKKyAgICBj
YXNlIENTU1VuaXRUeXBlOjpDdXN0b21JZGVudDoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1Nf
UEFJUjoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfUFJPUEVSVFlfSUQ6CiAgICAgY2FzZSBD
U1NVbml0VHlwZTo6Q1NTX1FVQUQ6CkBAIC0xMDYsNiArMTA2LDggQEAgc3RhdGljIGlubGluZSBi
b29sIGlzVmFsaWRDU1NVbml0VHlwZUZvckRvdWJsZUNvbnZlcnNpb24oQ1NTVW5pdFR5cGUgdW5p
dFR5cGUpCiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1VSSToKICAgICBjYXNlIENTU1VuaXRU
eXBlOjpDU1NfVkFMVUVfSUQ6CiAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBjYXNlIENTU1Vu
aXRUeXBlOjpDU1NfSURFTlQ6CisgICAgICAgIGJyZWFrOwogICAgIH0KIAogICAgIEFTU0VSVF9O
T1RfUkVBQ0hFRCgpOwpAQCAtMTE4LDEwICsxMjAsMTAgQEAgc3RhdGljIGlubGluZSBib29sIGlz
U3RyaW5nVHlwZShDU1NVbml0VHlwZSB0eXBlKQogewogICAgIHN3aXRjaCAodHlwZSkgewogICAg
IGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19TVFJJTkc6CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q3Vz
dG9tSWRlbnQ6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1VSSToKICAgICBjYXNlIENTU1Vu
aXRUeXBlOjpDU1NfQVRUUjoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQ09VTlRFUl9OQU1F
OgotICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19ESU1FTlNJT046CiAgICAgICAgIHJldHVybiB0
cnVlOwogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19DQUxDOgogICAgIGNhc2UgQ1NTVW5pdFR5
cGU6OkNTU19DQUxDX1BFUkNFTlRBR0VfV0lUSF9MRU5HVEg6CkBAIC0xMzAsNiArMTMyLDcgQEAg
c3RhdGljIGlubGluZSBib29sIGlzU3RyaW5nVHlwZShDU1NVbml0VHlwZSB0eXBlKQogICAgIGNh
c2UgQ1NTVW5pdFR5cGU6OkNTU19DTToKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQ09VTlRF
UjoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfREVHOgorICAgIGNhc2UgQ1NTVW5pdFR5cGU6
OkNTU19ESU1FTlNJT046CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RQQ006CiAgICAgY2Fz
ZSBDU1NVbml0VHlwZTo6Q1NTX0RQSToKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfRFBQWDoK
QEAgLTE4OCw3ICsxOTEsOSBAQCBzdGF0aWMgQ1NTVGV4dENhY2hlJiBjc3NUZXh0Q2FjaGUoKQog
CiBDU1NVbml0VHlwZSBDU1NQcmltaXRpdmVWYWx1ZTo6cHJpbWl0aXZlVHlwZSgpIGNvbnN0CiB7
Ci0gICAgaWYgKHByaW1pdGl2ZVVuaXRUeXBlKCkgPT0gQ1NTVW5pdFR5cGU6OkNTU19QUk9QRVJU
WV9JRCB8fCBwcmltaXRpdmVVbml0VHlwZSgpID09IENTU1VuaXRUeXBlOjpDU1NfVkFMVUVfSUQp
CisgICAgLy8gRklYTUU6IFVzZSBhIHN3aXRjaCBzdGF0ZW1lbnQgaGVyZS4KKworICAgIGlmIChw
cmltaXRpdmVVbml0VHlwZSgpID09IENTU1VuaXRUeXBlOjpDU1NfUFJPUEVSVFlfSUQgfHwgcHJp
bWl0aXZlVW5pdFR5cGUoKSA9PSBDU1NVbml0VHlwZTo6Q1NTX1ZBTFVFX0lEIHx8IHByaW1pdGl2
ZVVuaXRUeXBlKCkgPT0gQ1NTVW5pdFR5cGU6OkN1c3RvbUlkZW50KQogICAgICAgICByZXR1cm4g
Q1NTVW5pdFR5cGU6OkNTU19JREVOVDsKIAogICAgIC8vIFdlYi1leHBvc2VkIGNvbnRlbnQgZXhw
ZWN0cyBmb250IGZhbWlseSB2YWx1ZXMgdG8gaGF2ZSBDU1NVbml0VHlwZTo6Q1NTX1NUUklORyBw
cmltaXRpdmUgdHlwZQpAQCAtMjk1LDEwICszMDAsOSBAQCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NT
UHJpbWl0aXZlVmFsdWUoY29uc3QgTGVuZ3RoJiBsZW5ndGgsIGNvbnN0IFJlbmRlclN0eWxlJiBz
dAogICAgICAgICBzZXRQcmltaXRpdmVVbml0VHlwZShDU1NVbml0VHlwZTo6Q1NTX1BYKTsKICAg
ICAgICAgbV92YWx1ZS5udW0gPSBhZGp1c3RGbG9hdEZvckFic29sdXRlWm9vbShsZW5ndGgudmFs
dWUoKSwgc3R5bGUpOwogICAgICAgICByZXR1cm47Ci0gICAgY2FzZSBMZW5ndGhUeXBlOjpDYWxj
dWxhdGVkOiB7CisgICAgY2FzZSBMZW5ndGhUeXBlOjpDYWxjdWxhdGVkOgogICAgICAgICBpbml0
KENTU0NhbGNWYWx1ZTo6Y3JlYXRlKGxlbmd0aC5jYWxjdWxhdGlvblZhbHVlKCksIHN0eWxlKSk7
CiAgICAgICAgIHJldHVybjsKLSAgICB9CiAgICAgY2FzZSBMZW5ndGhUeXBlOjpSZWxhdGl2ZToK
ICAgICBjYXNlIExlbmd0aFR5cGU6OlVuZGVmaW5lZDoKICAgICAgICAgQVNTRVJUX05PVF9SRUFD
SEVEKCk7CkBAIC00MzksMTMgKzQ0MywxMyBAQCB2b2lkIENTU1ByaW1pdGl2ZVZhbHVlOjpjbGVh
bnVwKCkKICAgICBhdXRvIHR5cGUgPSBwcmltaXRpdmVVbml0VHlwZSgpOwogICAgIHN3aXRjaCAo
dHlwZSkgewogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19TVFJJTkc6CisgICAgY2FzZSBDU1NV
bml0VHlwZTo6Q3VzdG9tSWRlbnQ6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1VSSToKICAg
ICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQVRUUjoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1Nf
Q09VTlRFUl9OQU1FOgogICAgICAgICBpZiAobV92YWx1ZS5zdHJpbmcpCiAgICAgICAgICAgICBt
X3ZhbHVlLnN0cmluZy0+ZGVyZWYoKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDU1NVbml0
VHlwZTo6Q1NTX0RJTUVOU0lPTjoKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQ09VTlRFUjoK
ICAgICAgICAgbV92YWx1ZS5jb3VudGVyLT5kZXJlZigpOwogICAgICAgICBicmVhazsKQEAgLTQ3
OSw2ICs0ODMsNyBAQCB2b2lkIENTU1ByaW1pdGl2ZVZhbHVlOjpjbGVhbnVwKCkKICAgICAgICAg
ZGVsZXRlIG1fdmFsdWUuY29sb3I7CiAgICAgICAgIG1fdmFsdWUuY29sb3IgPSBudWxscHRyOwog
ICAgICAgICBicmVhazsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfRElNRU5TSU9OOgogICAg
IGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19OVU1CRVI6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NT
X1BFUkNFTlRBR0U6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0VNUzoKQEAgLTc1MSwxNCAr
NzU2LDYgQEAgYm9vbCBDU1NQcmltaXRpdmVWYWx1ZTo6ZXF1YWxGb3JMZW5ndGhSZXNvbHV0aW9u
KGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZUEsIGNvbnMKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAot
RXhjZXB0aW9uT3I8dm9pZD4gQ1NTUHJpbWl0aXZlVmFsdWU6OnNldEZsb2F0VmFsdWUoQ1NTVW5p
dFR5cGUsIGRvdWJsZSkKLXsKLSAgICAvLyBLZWVwaW5nIHZhbHVlcyBpbW11dGFibGUgbWFrZXMg
b3B0aW1pemF0aW9ucyBlYXNpZXIgYW5kIGFsbG93cyBzaGFyaW5nIG9mIHRoZSBwcmltaXRpdmUg
dmFsdWUgb2JqZWN0cy4KLSAgICAvLyBObyBvdGhlciBlbmdpbmUgc3VwcG9ydHMgbXV0YXRpbmcg
c3R5bGUgdGhyb3VnaCB0aGlzIEFQSS4gQ29tcHV0ZWQgc3R5bGUgaXMgYWx3YXlzIHJlYWQtb25s
eSBhbnl3YXkuCi0gICAgLy8gU3VwcG9ydGluZyBzZXR0ZXIgd291bGQgcmVxdWlyZSBtYWtpbmcg
cHJpbWl0aXZlIHZhbHVlIGNvcHktb24td3JpdGUgYW5kIHRha2luZyBjYXJlIG9mIHN0eWxlIGlu
dmFsaWRhdGlvbi4KLSAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm9Nb2RpZmljYXRpb25BbGxvd2Vk
RXJyb3IgfTsKLX0KLQogZG91YmxlIENTU1ByaW1pdGl2ZVZhbHVlOjpjb252ZXJzaW9uVG9DYW5v
bmljYWxVbml0c1NjYWxlRmFjdG9yKENTU1VuaXRUeXBlIHVuaXRUeXBlKQogewogICAgIGRvdWJs
ZSBmYWN0b3IgPSAxLjA7CkBAIC05MDYsMzYgKzkwMywxMSBAQCBzdGQ6Om9wdGlvbmFsPGRvdWJs
ZT4gQ1NTUHJpbWl0aXZlVmFsdWU6OmRvdWJsZVZhbHVlSW50ZXJuYWwoQ1NTVW5pdFR5cGUgcmVx
dWVzdAogICAgIHJldHVybiBjb252ZXJ0ZWRWYWx1ZTsKIH0KIAotRXhjZXB0aW9uT3I8dm9pZD4g
Q1NTUHJpbWl0aXZlVmFsdWU6OnNldFN0cmluZ1ZhbHVlKENTU1VuaXRUeXBlLCBjb25zdCBTdHJp
bmcmKQotewotICAgIC8vIEtlZXBpbmcgdmFsdWVzIGltbXV0YWJsZSBtYWtlcyBvcHRpbWl6YXRp
b25zIGVhc2llciBhbmQgYWxsb3dzIHNoYXJpbmcgb2YgdGhlIHByaW1pdGl2ZSB2YWx1ZSBvYmpl
Y3RzLgotICAgIC8vIE5vIG90aGVyIGVuZ2luZSBzdXBwb3J0cyBtdXRhdGluZyBzdHlsZSB0aHJv
dWdoIHRoaXMgQVBJLiBDb21wdXRlZCBzdHlsZSBpcyBhbHdheXMgcmVhZC1vbmx5IGFueXdheS4K
LSAgICAvLyBTdXBwb3J0aW5nIHNldHRlciB3b3VsZCByZXF1aXJlIG1ha2luZyBwcmltaXRpdmUg
dmFsdWUgY29weS1vbi13cml0ZSBhbmQgdGFraW5nIGNhcmUgb2Ygc3R5bGUgaW52YWxpZGF0aW9u
LgotICAgIHJldHVybiBFeGNlcHRpb24geyBOb01vZGlmaWNhdGlvbkFsbG93ZWRFcnJvciB9Owot
fQotCi1FeGNlcHRpb25PcjxTdHJpbmc+IENTU1ByaW1pdGl2ZVZhbHVlOjpnZXRTdHJpbmdWYWx1
ZSgpIGNvbnN0Ci17Ci0gICAgc3dpdGNoIChwcmltaXRpdmVVbml0VHlwZSgpKSB7Ci0gICAgY2Fz
ZSBDU1NVbml0VHlwZTo6Q1NTX1NUUklORzoKLSAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQVRU
UjoKLSAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfVVJJOgotICAgICAgICByZXR1cm4gbV92YWx1
ZS5zdHJpbmc7Ci0gICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0ZPTlRfRkFNSUxZOgotICAgICAg
ICByZXR1cm4gU3RyaW5nIHsgbV92YWx1ZS5mb250RmFtaWx5LT5mYW1pbHlOYW1lIH07Ci0gICAg
Y2FzZSBDU1NVbml0VHlwZTo6Q1NTX1ZBTFVFX0lEOgotICAgICAgICByZXR1cm4gU3RyaW5nIHsg
dmFsdWVOYW1lKG1fdmFsdWUudmFsdWVJRCkuc3RyaW5nKCkgfTsKLSAgICBjYXNlIENTU1VuaXRU
eXBlOjpDU1NfUFJPUEVSVFlfSUQ6Ci0gICAgICAgIHJldHVybiBTdHJpbmcgeyBwcm9wZXJ0eU5h
bWUobV92YWx1ZS5wcm9wZXJ0eUlEKS5zdHJpbmcoKSB9OwotICAgIGRlZmF1bHQ6Ci0gICAgICAg
IHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkQWNjZXNzRXJyb3IgfTsKLSAgICB9Ci19Ci0KIFN0
cmluZyBDU1NQcmltaXRpdmVWYWx1ZTo6c3RyaW5nVmFsdWUoKSBjb25zdAogewogICAgIHN3aXRj
aCAocHJpbWl0aXZlVW5pdFR5cGUoKSkgewogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19TVFJJ
Tkc6CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q3VzdG9tSWRlbnQ6CiAgICAgY2FzZSBDU1NVbml0
VHlwZTo6Q1NTX0FUVFI6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1VSSToKICAgICAgICAg
cmV0dXJuIG1fdmFsdWUuc3RyaW5nOwpAQCAtOTU1LDYgKzkyNyw3IEBAIE5FVkVSX0lOTElORSBT
dHJpbmcgQ1NTUHJpbWl0aXZlVmFsdWU6OmZvcm1hdE51bWJlclZhbHVlKFN0cmluZ1ZpZXcgc3Vm
Zml4KSBjb25zCiAgICAgcmV0dXJuIG1ha2VTdHJpbmcobV92YWx1ZS5udW0sIHN1ZmZpeCk7CiB9
CiAKKy8vIEZJWE1FOiBTaG91bGQgcmV0dXJuIGNvbnN0IGNoYXIqLgogU3RyaW5nIENTU1ByaW1p
dGl2ZVZhbHVlOjp1bml0VHlwZVN0cmluZyhDU1NVbml0VHlwZSB1bml0VHlwZSkKIHsKICAgICBz
d2l0Y2ggKHVuaXRUeXBlKSB7CkBAIC05OTUsNiArOTY4LDcgQEAgU3RyaW5nIENTU1ByaW1pdGl2
ZVZhbHVlOjp1bml0VHlwZVN0cmluZyhDU1NVbml0VHlwZSB1bml0VHlwZSkKICAgICAgICAgY2Fz
ZSBDU1NVbml0VHlwZTo6Q1NTX1NUUklORzoKICAgICAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NT
X1VSSToKICAgICAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0lERU5UOgorICAgICAgICBjYXNl
IENTU1VuaXRUeXBlOjpDdXN0b21JZGVudDoKICAgICAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NT
X0FUVFI6CiAgICAgICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19DT1VOVEVSOgogICAgICAgICBj
YXNlIENTU1VuaXRUeXBlOjpDU1NfUkVDVDoKQEAgLTEwMTMsNiArOTg3LDcgQEAgU3RyaW5nIENT
U1ByaW1pdGl2ZVZhbHVlOjp1bml0VHlwZVN0cmluZyhDU1NVbml0VHlwZSB1bml0VHlwZSkKICAg
ICAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1FVSVJLWV9FTVM6CiAgICAgICAgICAgICByZXR1
cm4gZW1wdHlTdHJpbmcoKTsKICAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAg
cmV0dXJuIGVtcHR5U3RyaW5nKCk7CiB9CiAKQEAgLTEwNzcsMTMgKzEwNTIsMTUgQEAgQUxXQVlT
X0lOTElORSBTdHJpbmcgQ1NTUHJpbWl0aXZlVmFsdWU6OmZvcm1hdE51bWJlckZvckN1c3RvbUNT
U1RleHQoKSBjb25zdAogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19STEhTOgogICAgICAgICBy
ZXR1cm4gZm9ybWF0TnVtYmVyVmFsdWUoInJsaCIpOwogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNT
U19ESU1FTlNJT046Ci0gICAgICAgIC8vIEZJWE1FOiBXZSBjdXJyZW50bHkgZG9uJ3QgaGFuZGxl
IENTU1VuaXRUeXBlOjpDU1NfRElNRU5TSU9OIHByb3Blcmx5IGFzIHdlIGRvbid0IHN0b3JlCi0g
ICAgICAgIC8vIHRoZSBhY3R1YWwgZGltZW5zaW9uLCBqdXN0IHRoZSBudW1lcmljIHZhbHVlIGFz
IGEgc3RyaW5nLgorICAgICAgICAvLyBGSVhNRTogVGhpcyBpc24ndCBjb3JyZWN0LgorICAgICAg
ICByZXR1cm4gZm9ybWF0TnVtYmVyVmFsdWUoIiIpOwogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNT
U19TVFJJTkc6Ci0gICAgICAgIC8vIEZJTUUtTkVXUEFSU0VSOiBPbmNlIHdlIGhhdmUgQ1NTQ3Vz
dG9tSWRlbnRWYWx1ZSBob29rZWQgdXAsIHRoaXMgY2FuIGp1c3QgYmUKLSAgICAgICAgLy8gc2Vy
aWFsaXplU3RyaW5nLCBzaW5jZSBjdXN0b20gaWRlbnRpZmllcnMgd29uJ3QgYmUgdGhlIHNhbWUg
dmFsdWUgYXMgc3RyaW5ncwotICAgICAgICAvLyBhbnkgbG9uZ2VyLgotICAgICAgICByZXR1cm4g
c2VyaWFsaXplQXNTdHJpbmdPckN1c3RvbUlkZW50KG1fdmFsdWUuc3RyaW5nKTsKKyAgICAgICAg
cmV0dXJuIHNlcmlhbGl6ZVN0cmluZyhtX3ZhbHVlLnN0cmluZyk7CisgICAgY2FzZSBDU1NVbml0
VHlwZTo6Q3VzdG9tSWRlbnQ6IHsKKyAgICAgICAgU3RyaW5nQnVpbGRlciBidWlsZGVyOworICAg
ICAgICBzZXJpYWxpemVJZGVudGlmaWVyKG1fdmFsdWUuc3RyaW5nLCBidWlsZGVyKTsKKyAgICAg
ICAgcmV0dXJuIGJ1aWxkZXIudG9TdHJpbmcoKTsKKyAgICB9CiAgICAgY2FzZSBDU1NVbml0VHlw
ZTo6Q1NTX0ZPTlRfRkFNSUxZOgogICAgICAgICByZXR1cm4gc2VyaWFsaXplRm9udEZhbWlseSht
X3ZhbHVlLmZvbnRGYW1pbHktPmZhbWlseU5hbWUpOwogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNT
U19VUkk6CkBAIC0xMTk3LDEzICsxMTc0LDE0IEBAIGJvb2wgQ1NTUHJpbWl0aXZlVmFsdWU6OmVx
dWFscyhjb25zdCBDU1NQcmltaXRpdmVWYWx1ZSYgb3RoZXIpIGNvbnN0CiAgICAgY2FzZSBDU1NV
bml0VHlwZTo6Q1NTX1E6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0xIUzoKICAgICBjYXNl
IENTU1VuaXRUeXBlOjpDU1NfUkxIUzoKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfRElNRU5T
SU9OOgogICAgICAgICByZXR1cm4gbV92YWx1ZS5udW0gPT0gb3RoZXIubV92YWx1ZS5udW07CiAg
ICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1BST1BFUlRZX0lEOgogICAgICAgICByZXR1cm4gcHJv
cGVydHlOYW1lKG1fdmFsdWUucHJvcGVydHlJRCkgPT0gcHJvcGVydHlOYW1lKG90aGVyLm1fdmFs
dWUucHJvcGVydHlJRCk7CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1ZBTFVFX0lEOgogICAg
ICAgICByZXR1cm4gdmFsdWVOYW1lKG1fdmFsdWUudmFsdWVJRCkgPT0gdmFsdWVOYW1lKG90aGVy
Lm1fdmFsdWUudmFsdWVJRCk7Ci0gICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RJTUVOU0lPTjoK
ICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfU1RSSU5HOgorICAgIGNhc2UgQ1NTVW5pdFR5cGU6
OkN1c3RvbUlkZW50OgogICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19VUkk6CiAgICAgY2FzZSBD
U1NVbml0VHlwZTo6Q1NTX0FUVFI6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0NPVU5URVJf
TkFNRToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5o
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmgKaW5kZXggZWM1ZjY1NWY0
YzllZmQ3NjcwNzE4MTZhMjRhODU2YTY5YWNkMzMzYi4uMTcxNzVmMjg3OTQzZWNhODYwZGY0OGVi
MTU2MGNhMjJmZGQ2OGY4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1p
dGl2ZVZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmgK
QEAgLTc4LDE0ICs3OCwxMCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBmbG9hdCByb3VuZEZvckltcHJl
Y2lzZUNvbnZlcnNpb24oZG91YmxlIHZhbHVlKQogCiBjbGFzcyBDU1NQcmltaXRpdmVWYWx1ZSBm
aW5hbCA6IHB1YmxpYyBDU1NWYWx1ZSB7CiBwdWJsaWM6Ci0KLSAgICBzdGF0aWMgYm9vbCBpc0Zv
bnRSZWxhdGl2ZUxlbmd0aChDU1NVbml0VHlwZSk7Ci0gICAgc3RhdGljIGJvb2wgaXNMZW5ndGgo
Q1NTVW5pdFR5cGUpOwotICAgIHN0YXRpYyBib29sIGlzUmVzb2x1dGlvbihDU1NVbml0VHlwZSk7
Ci0gICAgc3RhdGljIGJvb2wgaXNWaWV3cG9ydFBlcmNlbnRhZ2VMZW5ndGgoQ1NTVW5pdFR5cGUg
dHlwZSkgeyByZXR1cm4gdHlwZSA+PSBDU1NVbml0VHlwZTo6Q1NTX1ZXICYmIHR5cGUgPD0gQ1NT
VW5pdFR5cGU6OkNTU19WTUFYOyB9CisgICAgc3RhdGljIGNvbnN0ZXhwciBib29sIGlzTGVuZ3Ro
KENTU1VuaXRUeXBlKTsKICAgICBzdGF0aWMgZG91YmxlIGNvbXB1dGVEZWdyZWVzKENTU1VuaXRU
eXBlLCBkb3VibGUgYW5nbGUpOwogCi0gICAgLy8gRklYTUU6IFNvbWUgb2YgdGhlc2UgdXNlIHBy
aW1pdGl2ZVVuaXRUeXBlKCkgYW5kIHNvbWUgdXNlIHByaW1pdGl2ZVR5cGUoKS4gVGhvc2UgdGhh
dCB1c2UgcHJpbWl0aXZlVW5pdFR5cGUoKSBhcmUgYnJva2VuIHdpdGggY2FsYygpLgorICAgIC8v
IEZJWE1FOiBTb21lIG9mIHRoZXNlIHVzZSBwcmltaXRpdmVVbml0VHlwZSgpIGFuZCBzb21lIHVz
ZSBwcmltaXRpdmVUeXBlKCkuIE1hbnkgdGhhdCB1c2UgcHJpbWl0aXZlVW5pdFR5cGUoKSBhcmUg
bGlrZWx5IGJyb2tlbiB3aXRoIGNhbGMoKS4KICAgICBib29sIGlzQW5nbGUoKSBjb25zdCB7IHJl
dHVybiB1bml0Q2F0ZWdvcnkocHJpbWl0aXZlVHlwZSgpKSA9PSBDU1NVbml0Q2F0ZWdvcnk6OkFu
Z2xlOyB9CiAgICAgYm9vbCBpc0F0dHIoKSBjb25zdCB7IHJldHVybiBwcmltaXRpdmVVbml0VHlw
ZSgpID09IENTU1VuaXRUeXBlOjpDU1NfQVRUUjsgfQogICAgIGJvb2wgaXNDb3VudGVyKCkgY29u
c3QgeyByZXR1cm4gcHJpbWl0aXZlVW5pdFR5cGUoKSA9PSBDU1NVbml0VHlwZTo6Q1NTX0NPVU5U
RVI7IH0KQEAgLTEyMCw2ICsxMTYsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBpc1ZpZXdwb3J0UGVy
Y2VudGFnZU1pbigpIGNvbnN0IHsgcmV0dXJuIHByaW1pdGl2ZVVuaXRUeXBlKCkgPT0gQ1NTVW5p
dFR5cGU6OkNTU19WTUlOOyB9CiAgICAgYm9vbCBpc1ZhbHVlSUQoKSBjb25zdCB7IHJldHVybiBw
cmltaXRpdmVVbml0VHlwZSgpID09IENTU1VuaXRUeXBlOjpDU1NfVkFMVUVfSUQ7IH0KICAgICBi
b29sIGlzRmxleCgpIGNvbnN0IHsgcmV0dXJuIHByaW1pdGl2ZVR5cGUoKSA9PSBDU1NVbml0VHlw
ZTo6Q1NTX0ZSOyB9CisgICAgYm9vbCBpc0N1c3RvbUlkZW50KCkgY29uc3QgeyByZXR1cm4gcHJp
bWl0aXZlVW5pdFR5cGUoKSA9PSBDU1NVbml0VHlwZTo6Q3VzdG9tSWRlbnQ7IH0KIAogICAgIHN0
YXRpYyBSZWY8Q1NTUHJpbWl0aXZlVmFsdWU+IGNyZWF0ZUlkZW50aWZpZXIoQ1NTVmFsdWVJRCB2
YWx1ZUlEKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IENTU1ByaW1pdGl2ZVZhbHVlKHZhbHVlSUQp
KTsgfQogICAgIHN0YXRpYyBSZWY8Q1NTUHJpbWl0aXZlVmFsdWU+IGNyZWF0ZUlkZW50aWZpZXIo
Q1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlEKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IENTU1ByaW1p
dGl2ZVZhbHVlKHByb3BlcnR5SUQpKTsgfQpAQCAtMTM1LDExICsxMzIsOCBAQCBwdWJsaWM6CiAK
ICAgICB2b2lkIGNsZWFudXAoKTsKIAotICAgIFdFQkNPUkVfRVhQT1JUIENTU1VuaXRUeXBlIHBy
aW1pdGl2ZVR5cGUoKSBjb25zdDsKLSAgICBXRUJDT1JFX0VYUE9SVCBFeGNlcHRpb25Pcjx2b2lk
PiBzZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlICwgZG91YmxlKTsKLSAgICBXRUJDT1JFX0VYUE9S
VCBFeGNlcHRpb25PcjxmbG9hdD4gZ2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZSkgY29uc3Q7Ci0g
ICAgV0VCQ09SRV9FWFBPUlQgRXhjZXB0aW9uT3I8dm9pZD4gc2V0U3RyaW5nVmFsdWUoQ1NTVW5p
dFR5cGUsIGNvbnN0IFN0cmluZyYpOwotICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9yPFN0
cmluZz4gZ2V0U3RyaW5nVmFsdWUoKSBjb25zdDsKKyAgICBDU1NVbml0VHlwZSBwcmltaXRpdmVU
eXBlKCkgY29uc3Q7CisgICAgRXhjZXB0aW9uT3I8ZmxvYXQ+IGdldEZsb2F0VmFsdWUoQ1NTVW5p
dFR5cGUpIGNvbnN0OwogCiAgICAgZG91YmxlIGNvbXB1dGVEZWdyZWVzKCkgY29uc3Q7CiAgICAg
CkBAIC0xNTIsNiArMTQ2LDcgQEAgcHVibGljOgogICAgIGJvb2wgY29udmVydGluZ1RvTGVuZ3Ro
UmVxdWlyZXNOb25OdWxsU3R5bGUoaW50IGxlbmd0aENvbnZlcnNpb24pIGNvbnN0OwogCiAgICAg
ZG91YmxlIGRvdWJsZVZhbHVlKENTU1VuaXRUeXBlKSBjb25zdDsKKwogICAgIC8vIEl0J3MgdXN1
YWxseSB3cm9uZyB0byBjYWxsIHRoaXM7IGl0IGNhbiB0cmlnZ2VyIHR5cGUgY29udmVyc2lvbiBp
biBjYWxjIHdpdGhvdXQgc3VmZmljaWVudCBjb250ZXh0IHRvIHJlc29sdmUgcmVsYXRpdmUgbGVu
Z3RoIHVuaXRzLgogICAgIGRvdWJsZSBkb3VibGVWYWx1ZSgpIGNvbnN0OwogCkBAIC0yNDYsNiAr
MjQxLDEwIEBAIHByaXZhdGU6CiAgICAgQUxXQVlTX0lOTElORSBTdHJpbmcgZm9ybWF0TnVtYmVy
Rm9yQ3VzdG9tQ1NTVGV4dCgpIGNvbnN0OwogICAgIE5FVkVSX0lOTElORSBTdHJpbmcgZm9ybWF0
TnVtYmVyVmFsdWUoU3RyaW5nVmlldykgY29uc3Q7CiAKKyAgICBzdGF0aWMgY29uc3RleHByIGJv
b2wgaXNGb250UmVsYXRpdmVMZW5ndGgoQ1NTVW5pdFR5cGUpOworICAgIHN0YXRpYyBjb25zdGV4
cHIgYm9vbCBpc1Jlc29sdXRpb24oQ1NTVW5pdFR5cGUpOworICAgIHN0YXRpYyBjb25zdGV4cHIg
Ym9vbCBpc1ZpZXdwb3J0UGVyY2VudGFnZUxlbmd0aChDU1NVbml0VHlwZSB0eXBlKSB7IHJldHVy
biB0eXBlID49IENTU1VuaXRUeXBlOjpDU1NfVlcgJiYgdHlwZSA8PSBDU1NVbml0VHlwZTo6Q1NT
X1ZNQVg7IH0KKwogICAgIHVuaW9uIHsKICAgICAgICAgQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlE
OwogICAgICAgICBDU1NWYWx1ZUlEIHZhbHVlSUQ7CkBAIC0yNjIsNyArMjYxLDcgQEAgcHJpdmF0
ZToKICAgICB9IG1fdmFsdWU7CiB9OwogCi1pbmxpbmUgYm9vbCBDU1NQcmltaXRpdmVWYWx1ZTo6
aXNGb250UmVsYXRpdmVMZW5ndGgoQ1NTVW5pdFR5cGUgdHlwZSkKK2NvbnN0ZXhwciBib29sIENT
U1ByaW1pdGl2ZVZhbHVlOjppc0ZvbnRSZWxhdGl2ZUxlbmd0aChDU1NVbml0VHlwZSB0eXBlKQog
ewogICAgIHJldHVybiB0eXBlID09IENTU1VuaXRUeXBlOjpDU1NfRU1TCiAgICAgICAgIHx8IHR5
cGUgPT0gQ1NTVW5pdFR5cGU6OkNTU19FWFMKQEAgLTI3Myw3ICsyNzIsNyBAQCBpbmxpbmUgYm9v
bCBDU1NQcmltaXRpdmVWYWx1ZTo6aXNGb250UmVsYXRpdmVMZW5ndGgoQ1NTVW5pdFR5cGUgdHlw
ZSkKICAgICAgICAgfHwgdHlwZSA9PSBDU1NVbml0VHlwZTo6Q1NTX1FVSVJLWV9FTVM7CiB9CiAK
LWlubGluZSBib29sIENTU1ByaW1pdGl2ZVZhbHVlOjppc0xlbmd0aChDU1NVbml0VHlwZSB0eXBl
KQorY29uc3RleHByIGJvb2wgQ1NTUHJpbWl0aXZlVmFsdWU6OmlzTGVuZ3RoKENTU1VuaXRUeXBl
IHR5cGUpCiB7CiAgICAgcmV0dXJuICh0eXBlID49IENTU1VuaXRUeXBlOjpDU1NfRU1TICYmIHR5
cGUgPD0gQ1NTVW5pdFR5cGU6OkNTU19QQykKICAgICAgICAgfHwgdHlwZSA9PSBDU1NVbml0VHlw
ZTo6Q1NTX1JFTVMKQEAgLTI4NSw3ICsyODQsNyBAQCBpbmxpbmUgYm9vbCBDU1NQcmltaXRpdmVW
YWx1ZTo6aXNMZW5ndGgoQ1NTVW5pdFR5cGUgdHlwZSkKICAgICAgICAgfHwgdHlwZSA9PSBDU1NV
bml0VHlwZTo6Q1NTX1FVSVJLWV9FTVM7CiB9CiAKLWlubGluZSBib29sIENTU1ByaW1pdGl2ZVZh
bHVlOjppc1Jlc29sdXRpb24oQ1NTVW5pdFR5cGUgdHlwZSkKK2NvbnN0ZXhwciBib29sIENTU1By
aW1pdGl2ZVZhbHVlOjppc1Jlc29sdXRpb24oQ1NTVW5pdFR5cGUgdHlwZSkKIHsKICAgICByZXR1
cm4gdHlwZSA+PSBDU1NVbml0VHlwZTo6Q1NTX0RQUFggJiYgdHlwZSA8PSBDU1NVbml0VHlwZTo6
Q1NTX0RQQ007CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1h
cC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1hcC5jcHAKaW5kZXggMGUzOTdm
YmQ5MGZiYTViZjZkMTk4NDk3NDZhNjk3MmQ2MGRmYmUxMC4uYmZkMWFmZmFiNGM1NGI2ZTVhODcx
MzMxMjk2YTY4MjMxMDM0N2NhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Rv
U3R5bGVNYXAuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmNwcApA
QCAtNDA0LDcgKzQwNCw3IEBAIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwQW5pbWF0aW9uTmFtZShB
bmltYXRpb24mIGxheWVyLCBjb25zdCBDU1NWYWx1ZSYgdmFsdWUpCiAgICAgaWYgKHByaW1pdGl2
ZVZhbHVlLnZhbHVlSUQoKSA9PSBDU1NWYWx1ZU5vbmUpCiAgICAgICAgIGxheWVyLnNldElzTm9u
ZUFuaW1hdGlvbih0cnVlKTsKICAgICBlbHNlCi0gICAgICAgIGxheWVyLnNldE5hbWUocHJpbWl0
aXZlVmFsdWUuc3RyaW5nVmFsdWUoKSwgbV9idWlsZGVyU3RhdGUuc3R5bGVTY29wZU9yZGluYWwo
KSk7CisgICAgICAgIGxheWVyLnNldE5hbWUoeyBwcmltaXRpdmVWYWx1ZS5zdHJpbmdWYWx1ZSgp
LCBwcmltaXRpdmVWYWx1ZS5pc0N1c3RvbUlkZW50KCkgfSwgbV9idWlsZGVyU3RhdGUuc3R5bGVT
Y29wZU9yZGluYWwoKSk7CiB9CiAKIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwQW5pbWF0aW9uUGxh
eVN0YXRlKEFuaW1hdGlvbiYgbGF5ZXIsIGNvbnN0IENTU1ZhbHVlJiB2YWx1ZSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NVbml0cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTVW5pdHMuY3BwCmluZGV4IDFkNGQyMTE3OTQ3ZmNlNjRmZWMzNDczNDMwMDNiMDBiNmM3M2My
ZmYuLmQ5NmM5MWRlYjAxZGU5NWRhNmRkYjBlNmY1NTlhNTQ2NDUwYjY5YjEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NVbml0cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1VuaXRzLmNwcApAQCAtMTI5LDYgKzEyOSw3IEBAIFRleHRTdHJlYW0mIG9wZXJhdG9yPDwo
VGV4dFN0cmVhbSYgdHMsIENTU1VuaXRUeXBlIHVuaXRUeXBlKQogICAgIGNhc2UgQ1NTVW5pdFR5
cGU6OkNTU19TVFJJTkc6IHRzIDw8ICJzdHJpbmciOyBicmVhazsKICAgICBjYXNlIENTU1VuaXRU
eXBlOjpDU1NfVVJJOiB0cyA8PCAidXJpIjsgYnJlYWs7CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6
Q1NTX0lERU5UOiB0cyA8PCAiaWRlbnQiOyBicmVhazsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpD
dXN0b21JZGVudDogdHMgPDwgImN1c3RvbS1pZGVudCI7IGJyZWFrOwogICAgIGNhc2UgQ1NTVW5p
dFR5cGU6OkNTU19BVFRSOiB0cyA8PCAiYXR0ciI7IGJyZWFrOwogICAgIGNhc2UgQ1NTVW5pdFR5
cGU6OkNTU19DT1VOVEVSOiB0cyA8PCAiY291bnRlciI7IGJyZWFrOwogICAgIGNhc2UgQ1NTVW5p
dFR5cGU6OkNTU19SRUNUOiB0cyA8PCAicmVjdCI7IGJyZWFrOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1VuaXRzLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVW5pdHMuaApp
bmRleCBmMDYzM2QwODMwNmNkYzRmMWIwMDFjNTRmMjIzM2Q4Y2Y4YzllY2Y3Li41M2JiZDJmMDBm
YmQ5ZTE1ZmI4YjgyYWM4M2QzMWQxMWI3Y2YyYzRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTVW5pdHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVW5pdHMuaApAQCAt
MjcsNiArMjcsOCBAQCBjbGFzcyBUZXh0U3RyZWFtOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
Ky8vIEZJWE1FOiBObyBuZWVkIHRvIGhhcmQtY29kZSB0aGUgbnVtYmVycyBoZXJlIGFueSBtb3Jl
LCBzbyB3ZSBzaG91bGQgcmVtb3ZlIHRoZW0uCisvLyBGSVhNRTogTm8gbmVlZCB0byB1c2UgYWxs
IGNhcGl0YWxzIGFuZCBhIENTUyBwcmVmaXggb24gYWxsIHRoZXNlIG5hbWVzLiBTaG91bGQgZml4
IHRoYXQuCiBlbnVtIGNsYXNzIENTU1VuaXRUeXBlIDogdWludDhfdCB7CiAgICAgQ1NTX1VOS05P
V04gPSAwLAogICAgIENTU19OVU1CRVIgPSAxLApAQCAtNjUsMTggKzY3LDE5IEBAIGVudW0gY2xh
c3MgQ1NTVW5pdFR5cGUgOiB1aW50OF90IHsKICAgICBDU1NfUSA9IDM0LAogICAgIENTU19MSFMg
PSAzNSwKICAgICBDU1NfUkxIUyA9IDM2LAotICAgIENTU19QQUlSID0gMTAwLCAvLyBXZSBlbnZp
c2lvbiB0aGlzIGJlaW5nIGV4cG9zZWQgYXMgYSBtZWFucyBvZiBnZXR0aW5nIGNvbXB1dGVkIHN0
eWxlIHZhbHVlcyBmb3IgcGFpcnMgKGJvcmRlci1zcGFjaW5nL3JhZGl1cywgYmFja2dyb3VuZC1w
b3NpdGlvbiwgZXRjLikKKworICAgIEN1c3RvbUlkZW50LAorCisgICAgQ1NTX1BBSVIgPSAxMDAs
CiAgICAgQ1NTX1VOSUNPREVfUkFOR0UgPSAxMDIsCiAgICAgQ1NTX1RVUk4gPSAxMDcsCiAgICAg
Q1NTX1JFTVMgPSAxMDgsCiAgICAgQ1NTX0NIUyA9IDEwOSwKIAotICAgIC8vIFRoaXMgaXMgdXNl
ZCBpbnRlcm5hbGx5IGZvciBjb3VudGVyIG5hbWVzIChhcyBvcHBvc2VkIHRvIGNvdW50ZXIgdmFs
dWVzKQogICAgIENTU19DT1VOVEVSX05BTUUgPSAxMTAsCiAKICAgICBDU1NfU0hBUEUgPSAxMTEs
CiAKLSAgICAvLyBVc2VkIGJ5IGJvcmRlciBpbWFnZXMuCiAgICAgQ1NTX1FVQUQgPSAxMTIsCiAK
ICAgICBDU1NfQ0FMQyA9IDExMywKQEAgLTkzLDcgKzk2LDcgQEAgZW51bSBjbGFzcyBDU1NVbml0
VHlwZSA6IHVpbnQ4X3QgewogICAgIC8vIFdoZW4gdGhlIHF1aXJreSB2YWx1ZSBpcyB1c2VkLCBp
ZiB5b3UncmUgaW4gcXVpcmtzIG1vZGUsIHRoZSBtYXJnaW4gd2lsbCBjb2xsYXBzZSBhd2F5CiAg
ICAgLy8gaW5zaWRlIGEgdGFibGUgY2VsbC4gVGhpcyBxdWlyayBpcyBzcGVjaWZpZWQgaW4gdGhl
IEhUTUwgc3BlYyBidXQgb3VyIGltcGwgaXMgZGlmZmVyZW50LgogICAgIENTU19RVUlSS1lfRU1T
ID0gMTIwCi0gICAgCisKICAgICAvLyBOb3RlIHRoYXQgQ1NTVmFsdWUgYWxsb2NhdGVzIDcgYml0
cyBmb3IgbV9wcmltaXRpdmVVbml0VHlwZSwgc28gdGhlcmUgY2FuIGJlIG5vIHZhbHVlIGhlcmUg
PiAxMjcuCiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmNwcAppbmRleCA0MmVkNTJjMDY1ZGEwNGY5
OGMxNGE4ZTBjNmZhNzQ4MTJkMTQyZTM0Li4zNTAxOGI1NzNiYzgxM2U0NmJjMDJiZmMyM2Q4Y2I5
ZThlZmUyNjg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZS5jcHAKQEAgLTM1LDcgKzM1LDYgQEAKICNp
bmNsdWRlICJDU1NDb250ZW50RGlzdHJpYnV0aW9uVmFsdWUuaCIKICNpbmNsdWRlICJDU1NDcm9z
c2ZhZGVWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0N1cnNvckltYWdlVmFsdWUuaCIKLSNpbmNsdWRl
ICJDU1NDdXN0b21JZGVudFZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTQ3VzdG9tUHJvcGVydHlWYWx1
ZS5oIgogI2luY2x1ZGUgIkNTU0ZpbHRlckltYWdlVmFsdWUuaCIKICNpbmNsdWRlICJDU1NGb250
RmFjZVNyY1ZhbHVlLmgiCkBAIC0zMjUsOCArMzI0LDYgQEAgU3RyaW5nIENTU1ZhbHVlOjpjc3NU
ZXh0KCkgY29uc3QKICAgICAgICAgcmV0dXJuIGRvd25jYXN0PENTU0NvbnRlbnREaXN0cmlidXRp
b25WYWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQoKTsKICAgICBjYXNlIEN1c3RvbVByb3BlcnR5
Q2xhc3M6CiAgICAgICAgIHJldHVybiBkb3duY2FzdDxDU1NDdXN0b21Qcm9wZXJ0eVZhbHVlPigq
dGhpcykuY3VzdG9tQ1NTVGV4dCgpOwotICAgIGNhc2UgQ3VzdG9tSWRlbnRDbGFzczoKLSAgICAg
ICAgcmV0dXJuIGRvd25jYXN0PENTU0N1c3RvbUlkZW50VmFsdWU+KCp0aGlzKS5jdXN0b21DU1NU
ZXh0KCk7CiAgICAgY2FzZSBWYXJpYWJsZVJlZmVyZW5jZUNsYXNzOgogICAgICAgICByZXR1cm4g
ZG93bmNhc3Q8Q1NTVmFyaWFibGVSZWZlcmVuY2VWYWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQo
KTsKICAgICBjYXNlIFBlbmRpbmdTdWJzdGl0dXRpb25WYWx1ZUNsYXNzOgpAQCAtNDc4LDkgKzQ3
NSw2IEBAIHZvaWQgQ1NTVmFsdWU6OmRlc3Ryb3koKQogICAgIGNhc2UgQ3VzdG9tUHJvcGVydHlD
bGFzczoKICAgICAgICAgZGVsZXRlIGRvd25jYXN0PENTU0N1c3RvbVByb3BlcnR5VmFsdWU+KHRo
aXMpOwogICAgICAgICByZXR1cm47Ci0gICAgY2FzZSBDdXN0b21JZGVudENsYXNzOgotICAgICAg
ICBkZWxldGUgZG93bmNhc3Q8Q1NTQ3VzdG9tSWRlbnRWYWx1ZT4odGhpcyk7Ci0gICAgICAgIHJl
dHVybjsKICAgICBjYXNlIFZhcmlhYmxlUmVmZXJlbmNlQ2xhc3M6CiAgICAgICAgIGRlbGV0ZSBk
b3duY2FzdDxDU1NWYXJpYWJsZVJlZmVyZW5jZVZhbHVlPih0aGlzKTsKICAgICAgICAgcmV0dXJu
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTVmFsdWUuaAppbmRleCAxZTYzMDc2NzRiMWZkYWFiOGUwZmNlOTk4MThlYzQ0
OTFjYTYyNzdjLi5kYThmMGIwYzcxOTY5NDQ3ZGRkYTMwMjVhMjBkYTYwYTdiZThjNGNmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTVmFsdWUuaApAQCAtMTM2LDcgKzEzNiw2IEBAIElHTk9SRV9FUlJPTkVPVVNfR0ND
X05VTExfQ0hFQ0tfV0FSTklOR1NfRU5ECiAgICAgYm9vbCBpc0dyaWRMaW5lTmFtZXNWYWx1ZSgp
IGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEdyaWRMaW5lTmFtZXNDbGFzczsgfQogICAg
IGJvb2wgaXNVbmljb2RlUmFuZ2VWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09
IFVuaWNvZGVSYW5nZUNsYXNzOyB9CiAKLSAgICBib29sIGlzQ3VzdG9tSWRlbnRWYWx1ZSgpIGNv
bnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEN1c3RvbUlkZW50Q2xhc3M7IH0KICAgICBib29s
IGlzVmFyaWFibGVSZWZlcmVuY2VWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09
IFZhcmlhYmxlUmVmZXJlbmNlQ2xhc3M7IH0KICAgICBib29sIGlzUGVuZGluZ1N1YnN0aXR1dGlv
blZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gUGVuZGluZ1N1YnN0aXR1dGlv
blZhbHVlQ2xhc3M7IH0KICAgICAKQEAgLTIwNyw4ICsyMDYsNiBAQCBwcm90ZWN0ZWQ6CiAKICAg
ICAgICAgQ1NTQ29udGVudERpc3RyaWJ1dGlvbkNsYXNzLAogCi0gICAgICAgIEN1c3RvbUlkZW50
Q2xhc3MsCi0KICAgICAgICAgQ3VzdG9tUHJvcGVydHlDbGFzcywKICAgICAgICAgVmFyaWFibGVS
ZWZlcmVuY2VDbGFzcywKICAgICAgICAgUGVuZGluZ1N1YnN0aXR1dGlvblZhbHVlQ2xhc3MsCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVMaXN0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuY3BwCmluZGV4IDA3M2QxNDM0YjA4NzNkNTA0M2UyYTY2
ZTY5MjI3YmFmYWRjM2RkYjguLjA1ODYxOTY1MmQ4M2Q3ZmU3YjhmNmYzM2IxYTg3ZWNhZGYzZGUy
ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuY3BwCkBAIC04NywxMiArODcsOCBAQCBT
dHJpbmcgQ1NTVmFsdWVMaXN0OjpjdXN0b21DU1NUZXh0KCkgY29uc3QKIHsKICAgICBTdHJpbmdC
dWlsZGVyIHJlc3VsdDsKICAgICBhdXRvIHNlcGFyYXRvciA9IHNlcGFyYXRvckNTU1RleHQoKTsK
LSAgICBmb3IgKGF1dG8mIHZhbHVlIDogbV92YWx1ZXMpIHsKLSAgICAgICAgaWYgKCFyZXN1bHQu
aXNFbXB0eSgpKQotICAgICAgICAgICAgcmVzdWx0LmFwcGVuZChzZXBhcmF0b3IpOwotICAgICAg
ICByZXN1bHQuYXBwZW5kKHZhbHVlLmdldCgpLmNzc1RleHQoKSk7Ci0gICAgfQotCisgICAgZm9y
IChhdXRvJiB2YWx1ZSA6IG1fdmFsdWVzKQorICAgICAgICByZXN1bHQuYXBwZW5kKHJlc3VsdC5p
c0VtcHR5KCkgPyAiIl9zIDogc2VwYXJhdG9yLCB2YWx1ZS5nZXQoKS5jc3NUZXh0KCkpOwogICAg
IHJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1ZhbHVlUG9vbC5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlUG9vbC5o
CmluZGV4IGFjZGVjOTk5MDcwMDA4ODIxNzhkZjcyYmZlNjEwM2E4YzY1NDc5MTcuLjFmYjIzMTZl
ZmMwMzEwYTNiZmNhMzg0ZjEwYzdkZTA3MWY0MWU5ZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NWYWx1ZVBvb2wuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVQ
b29sLmgKQEAgLTk3LDYgKzk3LDcgQEAgcHVibGljOgogICAgIFJlZjxDU1NQcmltaXRpdmVWYWx1
ZT4gY3JlYXRlVmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSwgQ1NTVW5pdFR5cGUgdHlwZSkgeyBy
ZXR1cm4gQ1NTUHJpbWl0aXZlVmFsdWU6OmNyZWF0ZSh2YWx1ZSwgdHlwZSk7IH0KICAgICBSZWY8
Q1NTUHJpbWl0aXZlVmFsdWU+IGNyZWF0ZVZhbHVlKGNvbnN0IExlbmd0aCYgdmFsdWUsIGNvbnN0
IFJlbmRlclN0eWxlJiBzdHlsZSkgeyByZXR1cm4gQ1NTUHJpbWl0aXZlVmFsdWU6OmNyZWF0ZSh2
YWx1ZSwgc3R5bGUpOyB9CiAgICAgUmVmPENTU1ByaW1pdGl2ZVZhbHVlPiBjcmVhdGVWYWx1ZShj
b25zdCBMZW5ndGhTaXplJiB2YWx1ZSwgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKSB7IHJldHVy
biBDU1NQcmltaXRpdmVWYWx1ZTo6Y3JlYXRlKHZhbHVlLCBzdHlsZSk7IH0KKyAgICBSZWY8Q1NT
UHJpbWl0aXZlVmFsdWU+IGNyZWF0ZUN1c3RvbUlkZW50KGNvbnN0IFN0cmluZyYgdmFsdWUpIHsg
cmV0dXJuIENTU1ByaW1pdGl2ZVZhbHVlOjpjcmVhdGUodmFsdWUsIENTU1VuaXRUeXBlOjpDdXN0
b21JZGVudCk7IH0KICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdGF0aWMgUmVmPENTU1ByaW1p
dGl2ZVZhbHVlPiBjcmVhdGVWYWx1ZShUJiYgdmFsdWUpIHsgcmV0dXJuIENTU1ByaW1pdGl2ZVZh
bHVlOjpjcmVhdGUoc3RkOjpmb3J3YXJkPFQ+KHZhbHVlKSk7IH0KIAogICAgIHZvaWQgZHJhaW4o
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkQ1NTT01QcmltaXRp
dmVWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZENTU09NUHJpbWl0aXZl
VmFsdWUuY3BwCmluZGV4IGNjNzRlZmM3NmZmNGMzYzIwZjEzMmI5NmZlMzdmMTBlN2FjMDU2NTEu
LmUzYTQ5NzcyOTNmNTFlMmFmOGQ1YjZmYTIxNjUzMjYyZTcwNjYwOWUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmNwcApAQCAt
MSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTYtMjAyMCBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTYtMjAyMSBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAg
LTMyLDU0ICszMiwxNDYgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIAotLy8gRklYTUU6
IEZvciBub3cgdGhlc2Ugc3RpbGwgY2FsbCBpbnRvIENTU1ByaW1pdGl2ZVZhbHVlLCBidXQgYXMg
d2UgcmVmYWN0b3IgaW50byBzdWJjbGFzc2VzCi0vLyBzdWNoIGFzIFN0eWxlQ291bnRlclZhbHVl
LCBTdHlsZVJlY3RWYWx1ZSwgYW5kIFN0eWxlQ29sb3JWYWx1ZSwgdGhlc2UgbWV0aG9kcyB3aWxs
IGdldAotLy8gbW9yZSBjb21wbGljYXRlZC4KLQogdW5zaWduZWQgc2hvcnQgRGVwcmVjYXRlZENT
U09NUHJpbWl0aXZlVmFsdWU6OnByaW1pdGl2ZVR5cGUoKSBjb25zdAogewotICAgIHJldHVybiBz
dGF0aWNfY2FzdDx1bnNpZ25lZCBzaG9ydD4obV92YWx1ZS0+cHJpbWl0aXZlVHlwZSgpKTsKLX0K
KyAgICAvLyBGSVhNRTogU29tZSBvZiB0aGVzZSBhcmUgbmV2ZXIgZXhwb3NlZCB0byB0aGUgd2Vi
IGJlY2F1c2UgY29kZSBlbHNld2hlcmUgcHJldmVudHMgaXQuIFdlIGNhbiBBU1NFUlRfTk9UX1JF
QUNIRUQgZm9yIHRob3NlLgorICAgIC8vIEZJWE1FOiBTb21lIG9mIHRoZXNlIHNob3VsZCByZXR1
cm4gQ1NTX1VOS05PV04gaW5zdGVhZCBvZiBoYXJkLWNvZGVkIG51bWJlcnMgbm90IG1lbnRpb25l
ZCBpbiB0aGUgSURMIGZpbGUuCiAKLUV4Y2VwdGlvbk9yPHZvaWQ+IERlcHJlY2F0ZWRDU1NPTVBy
aW1pdGl2ZVZhbHVlOjpzZXRGbG9hdFZhbHVlKHVuc2lnbmVkIHNob3J0IHVuaXRUeXBlLCBkb3Vi
bGUgZmxvYXRWYWx1ZSkKLXsKLSAgICByZXR1cm4gbV92YWx1ZS0+c2V0RmxvYXRWYWx1ZShzdGF0
aWNfY2FzdDxDU1NVbml0VHlwZT4odW5pdFR5cGUpLCBmbG9hdFZhbHVlKTsKKyAgICBzd2l0Y2gg
KG1fdmFsdWUtPnByaW1pdGl2ZVR5cGUoKSkgeworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19B
VFRSOiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ1NTX0FUVFI7CisgICAgY2FzZSBD
U1NVbml0VHlwZTo6Q1NTX0NBTEM6ICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxMTM7
CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0NBTENfUEVSQ0VOVEFHRV9XSVRIX0xFTkdUSDog
IHJldHVybiAxMTU7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0NBTENfUEVSQ0VOVEFHRV9X
SVRIX05VTUJFUjogIHJldHVybiAxMTQ7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0NIUzog
ICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxMDk7CisgICAgY2FzZSBDU1NVbml0VHlw
ZTo6Q1NTX0NNOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBDU1NfQ007CisgICAg
Y2FzZSBDU1NVbml0VHlwZTo6Q1NTX0NPVU5URVI6ICAgICAgICAgICAgICAgICAgICAgIHJldHVy
biBDU1NfQ09VTlRFUjsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfQ09VTlRFUl9OQU1FOiAg
ICAgICAgICAgICAgICAgcmV0dXJuIDExMDsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfREVH
OiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIENTU19ERUc7CisgICAgY2FzZSBDU1NV
bml0VHlwZTo6Q1NTX0RJTUVOU0lPTjogICAgICAgICAgICAgICAgICAgIHJldHVybiBDU1NfRElN
RU5TSU9OOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19EUENNOiAgICAgICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gMzI7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0RQSTogICAgICAg
ICAgICAgICAgICAgICAgICAgIHJldHVybiAzMTsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1Nf
RFBQWDogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDMwOworICAgIGNhc2UgQ1NTVW5p
dFR5cGU6OkNTU19FTVM6ICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ1NTX0VNUzsK
KyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfRVhTOiAgICAgICAgICAgICAgICAgICAgICAgICAg
cmV0dXJuIENTU19FWFM7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0ZPTlRfRkFNSUxZOiAg
ICAgICAgICAgICAgICAgIHJldHVybiBDU1NfU1RSSU5HOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6
OkNTU19GUjogICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMzM7CisgICAgY2FzZSBD
U1NVbml0VHlwZTo6Q1NTX0dSQUQ6ICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBDU1Nf
R1JBRDsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfSFo6ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcmV0dXJuIENTU19IWjsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfSURFTlQ6ICAg
ICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIENTU19JREVOVDsKKyAgICBjYXNlIENTU1VuaXRU
eXBlOjpDdXN0b21JZGVudDogICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIENTU19JREVOVDsK
KyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfSU46ICAgICAgICAgICAgICAgICAgICAgICAgICAg
cmV0dXJuIENTU19JTjsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfS0haOiAgICAgICAgICAg
ICAgICAgICAgICAgICAgcmV0dXJuIENTU19LSFo7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NT
X0xIUzogICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAzNTsKKyAgICBjYXNlIENTU1Vu
aXRUeXBlOjpDU1NfTU06ICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIENTU19NTTsK
KyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfTVM6ICAgICAgICAgICAgICAgICAgICAgICAgICAg
cmV0dXJuIENTU19NUzsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfTlVNQkVSOiAgICAgICAg
ICAgICAgICAgICAgICAgcmV0dXJuIENTU19OVU1CRVI7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6
Q1NTX1BBSVI6ICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxMDA7CisgICAgY2FzZSBD
U1NVbml0VHlwZTo6Q1NTX1BDOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBDU1Nf
UEM7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1BFUkNFTlRBR0U6ICAgICAgICAgICAgICAg
ICAgIHJldHVybiBDU1NfUEVSQ0VOVEFHRTsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfUFJP
UEVSVFlfSUQ6ICAgICAgICAgICAgICAgICAgcmV0dXJuIENTU19JREVOVDsKKyAgICBjYXNlIENT
U1VuaXRUeXBlOjpDU1NfUFQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIENTU19Q
VDsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfUFg6ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIENTU19QWDsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfUTogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuIDM0OworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19R
VUFEOiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTEyOworICAgIGNhc2UgQ1NTVW5p
dFR5cGU6OkNTU19RVUlSS1lfRU1TOiAgICAgICAgICAgICAgICAgICByZXR1cm4gMTIwOworICAg
IGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19SQUQ6ICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1
cm4gQ1NTX1JBRDsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfUkVDVDogICAgICAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIENTU19SRUNUOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19S
RU1TOiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTA4OworICAgIGNhc2UgQ1NTVW5p
dFR5cGU6OkNTU19SR0JDT0xPUjogICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ1NTX1JHQkNP
TE9SOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19STEhTOiAgICAgICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gMzY7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1M6ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHJldHVybiBDU1NfUzsKKyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1Nf
U0hBUEU6ICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDExMTsKKyAgICBjYXNlIENTU1Vu
aXRUeXBlOjpDU1NfU1RSSU5HOiAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIENTU19TVFJJ
Tkc7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1RVUk46ICAgICAgICAgICAgICAgICAgICAg
ICAgIHJldHVybiAxMDc7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1VOSUNPREVfUkFOR0U6
ICAgICAgICAgICAgICAgIHJldHVybiAxMDI7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1VO
S05PV046ICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBDU1NfVU5LTk9XTjsKKyAgICBjYXNl
IENTU1VuaXRUeXBlOjpDU1NfVVJJOiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIENT
U19VUkk7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1ZBTFVFX0lEOiAgICAgICAgICAgICAg
ICAgICAgIHJldHVybiBDU1NfSURFTlQ7CisgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX1ZIOiAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBDU1NfVkg7CisgICAgY2FzZSBDU1NVbml0
VHlwZTo6Q1NTX1ZNQVg6ICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBDU1NfVk1BWDsK
KyAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfVk1JTjogICAgICAgICAgICAgICAgICAgICAgICAg
cmV0dXJuIENTU19WTUlOOworICAgIGNhc2UgQ1NTVW5pdFR5cGU6OkNTU19WVzogICAgICAgICAg
ICAgICAgICAgICAgICAgICByZXR1cm4gQ1NTX1ZXOworICAgIH0KKworICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOworICAgIHJldHVybiBDU1NfVU5LTk9XTjsKIH0KIAogRXhjZXB0aW9uT3I8Zmxv
YXQ+IERlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlOjpnZXRGbG9hdFZhbHVlKHVuc2lnbmVk
IHNob3J0IHVuaXRUeXBlKSBjb25zdAogewotICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZh
bHVlKHN0YXRpY19jYXN0PENTU1VuaXRUeXBlPih1bml0VHlwZSkpOwotfQorICAgIC8vIEZJWE1F
OiBTb21lIG9mIHRoZXNlIHZhbHVlcyBkbyBub3QgbmVlZCB0byBiZSBleHBvc2VkIGFzIGEgZGVz
dGluYXRpb24gdHlwZS4gUmVtb3ZlIGNhc2VzIGJlbG93IGFuZCBnaXZlIEludmFsaWRBY2Nlc3NF
cnJvciBpbnN0ZWFkLgogCi1FeGNlcHRpb25Pcjx2b2lkPiBEZXByZWNhdGVkQ1NTT01QcmltaXRp
dmVWYWx1ZTo6c2V0U3RyaW5nVmFsdWUodW5zaWduZWQgc2hvcnQgc3RyaW5nVHlwZSwgY29uc3Qg
U3RyaW5nJiBzdHJpbmdWYWx1ZSkKLXsKLSAgICByZXR1cm4gbV92YWx1ZS0+c2V0U3RyaW5nVmFs
dWUoc3RhdGljX2Nhc3Q8Q1NTVW5pdFR5cGU+KHN0cmluZ1R5cGUpLCBzdHJpbmdWYWx1ZSk7Cisg
ICAgc3dpdGNoICh1bml0VHlwZSkgeworICAgIGNhc2UgQ1NTX0NNOiAgICAgICAgICAgIHJldHVy
biBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfQ00pOworICAgIGNhc2Ug
Q1NTX0RFRzogICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRU
eXBlOjpDU1NfREVHKTsKKyAgICBjYXNlIENTU19ESU1FTlNJT046ICAgICByZXR1cm4gbV92YWx1
ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX0RJTUVOU0lPTik7CisgICAgY2FzZSBD
U1NfRU1TOiAgICAgICAgICAgcmV0dXJuIG1fdmFsdWUtPmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5
cGU6OkNTU19FTVMpOworICAgIGNhc2UgQ1NTX0VYUzogICAgICAgICAgIHJldHVybiBtX3ZhbHVl
LT5nZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfRVhTKTsKKyAgICBjYXNlIENTU19HUkFE
OiAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NT
X0dSQUQpOworICAgIGNhc2UgQ1NTX0haOiAgICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRG
bG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfSFopOworICAgIGNhc2UgQ1NTX0lOOiAgICAgICAg
ICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfSU4pOwor
ICAgIGNhc2UgQ1NTX0tIWjogICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVl
KENTU1VuaXRUeXBlOjpDU1NfS0haKTsKKyAgICBjYXNlIENTU19NTTogICAgICAgICAgICByZXR1
cm4gbV92YWx1ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX01NKTsKKyAgICBjYXNl
IENTU19NUzogICAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0
VHlwZTo6Q1NTX01TKTsKKyAgICBjYXNlIENTU19OVU1CRVI6ICAgICAgICByZXR1cm4gbV92YWx1
ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX05VTUJFUik7CisgICAgY2FzZSBDU1Nf
UEM6ICAgICAgICAgICAgcmV0dXJuIG1fdmFsdWUtPmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGU6
OkNTU19QQyk7CisgICAgY2FzZSBDU1NfUEVSQ0VOVEFHRTogICAgcmV0dXJuIG1fdmFsdWUtPmdl
dEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19QRVJDRU5UQUdFKTsKKyAgICBjYXNlIENTU19Q
VDogICAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6
Q1NTX1BUKTsKKyAgICBjYXNlIENTU19QWDogICAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+Z2V0
RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1BYKTsKKyAgICBjYXNlIENTU19SQUQ6ICAgICAg
ICAgICByZXR1cm4gbV92YWx1ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1JBRCk7
CisgICAgY2FzZSBDU1NfUzogICAgICAgICAgICAgcmV0dXJuIG1fdmFsdWUtPmdldEZsb2F0VmFs
dWUoQ1NTVW5pdFR5cGU6OkNTU19TKTsKKyAgICBjYXNlIENTU19WSDogICAgICAgICAgICByZXR1
cm4gbV92YWx1ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1ZIKTsKKyAgICBjYXNl
IENTU19WTUFYOiAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0
VHlwZTo6Q1NTX1ZNQVgpOworICAgIGNhc2UgQ1NTX1ZNSU46ICAgICAgICAgIHJldHVybiBtX3Zh
bHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfVk1JTik7CisgICAgY2FzZSBDU1Nf
Vlc6ICAgICAgICAgICAgcmV0dXJuIG1fdmFsdWUtPmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGU6
OkNTU19WVyk7CisKKyAgICBjYXNlIDMwOiAgICAgICAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+
Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX0RQUFgpOworICAgIGNhc2UgMzE6ICAgICAg
ICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1Nf
RFBJKTsKKyAgICBjYXNlIDMyOiAgICAgICAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+Z2V0Rmxv
YXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX0RQQ00pOworICAgIGNhc2UgMzM6ICAgICAgICAgICAg
ICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfRlIpOwor
ICAgIGNhc2UgMzQ6ICAgICAgICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVl
KENTU1VuaXRUeXBlOjpDU1NfUSk7CisgICAgY2FzZSAzNTogICAgICAgICAgICAgICAgcmV0dXJu
IG1fdmFsdWUtPmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19MSFMpOworICAgIGNhc2Ug
MzY6ICAgICAgICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9hdFZhbHVlKENTU1VuaXRU
eXBlOjpDU1NfUkxIUyk7CisgICAgY2FzZSAxMDc6ICAgICAgICAgICAgICAgcmV0dXJuIG1fdmFs
dWUtPmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19UVVJOKTsKKyAgICBjYXNlIDEwODog
ICAgICAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6
Q1NTX1JFTVMpOworICAgIGNhc2UgMTA5OiAgICAgICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5n
ZXRGbG9hdFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfQ0hTKTsKKyAgICBjYXNlIDExMzogICAgICAg
ICAgICAgICByZXR1cm4gbV92YWx1ZS0+Z2V0RmxvYXRWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX0NB
TEMpOworICAgIGNhc2UgMTE0OiAgICAgICAgICAgICAgIHJldHVybiBtX3ZhbHVlLT5nZXRGbG9h
dFZhbHVlKENTU1VuaXRUeXBlOjpDU1NfQ0FMQ19QRVJDRU5UQUdFX1dJVEhfTlVNQkVSKTsKKyAg
ICBjYXNlIDExNTogICAgICAgICAgICAgICByZXR1cm4gbV92YWx1ZS0+Z2V0RmxvYXRWYWx1ZShD
U1NVbml0VHlwZTo6Q1NTX0NBTENfUEVSQ0VOVEFHRV9XSVRIX0xFTkdUSCk7CisgICAgY2FzZSAx
MjA6ICAgICAgICAgICAgICAgcmV0dXJuIG1fdmFsdWUtPmdldEZsb2F0VmFsdWUoQ1NTVW5pdFR5
cGU6OkNTU19RVUlSS1lfRU1TKTsKKworICAgIGRlZmF1bHQ6ICAgICAgICAgICAgICAgIHJldHVy
biBFeGNlcHRpb24geyBJbnZhbGlkQWNjZXNzRXJyb3IgfTsKKyAgICB9CiB9CiAKIEV4Y2VwdGlv
bk9yPFN0cmluZz4gRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWU6OmdldFN0cmluZ1ZhbHVl
KCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV92YWx1ZS0+Z2V0U3RyaW5nVmFsdWUoKTsKKyAgICBz
d2l0Y2ggKHByaW1pdGl2ZVR5cGUoKSkgeworICAgIGNhc2UgQ1NTX0FUVFI6ICAgICAgcmV0dXJu
IG1fdmFsdWUtPnN0cmluZ1ZhbHVlKCk7CisgICAgY2FzZSBDU1NfSURFTlQ6ICAgICByZXR1cm4g
bV92YWx1ZS0+c3RyaW5nVmFsdWUoKTsKKyAgICBjYXNlIENTU19TVFJJTkc6ICAgIHJldHVybiBt
X3ZhbHVlLT5zdHJpbmdWYWx1ZSgpOworICAgIGNhc2UgQ1NTX1VSSTogICAgICAgcmV0dXJuIG1f
dmFsdWUtPnN0cmluZ1ZhbHVlKCk7CisgICAgZGVmYXVsdDogICAgICAgICAgICByZXR1cm4gRXhj
ZXB0aW9uIHsgSW52YWxpZEFjY2Vzc0Vycm9yIH07CisgICAgfQogfQogCiBFeGNlcHRpb25PcjxS
ZWY8RGVwcmVjYXRlZENTU09NQ291bnRlcj4+IERlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVl
OjpnZXRDb3VudGVyVmFsdWUoKSBjb25zdAogewotICAgIGF1dG8qIHZhbHVlID0gbV92YWx1ZS0+
Y291bnRlclZhbHVlKCk7Ci0gICAgaWYgKCF2YWx1ZSkKKyAgICBpZiAocHJpbWl0aXZlVHlwZSgp
ICE9IENTU19DT1VOVEVSKQogICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZEFjY2Vz
c0Vycm9yIH07Ci0gICAgcmV0dXJuIERlcHJlY2F0ZWRDU1NPTUNvdW50ZXI6OmNyZWF0ZSgqdmFs
dWUsIG1fb3duZXIpOworICAgIHJldHVybiBEZXByZWNhdGVkQ1NTT01Db3VudGVyOjpjcmVhdGUo
Km1fdmFsdWUtPmNvdW50ZXJWYWx1ZSgpLCBtX293bmVyKTsKIH0KICAgICAKIEV4Y2VwdGlvbk9y
PFJlZjxEZXByZWNhdGVkQ1NTT01SZWN0Pj4gRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWU6
OmdldFJlY3RWYWx1ZSgpIGNvbnN0CiB7Ci0gICAgYXV0byogdmFsdWUgPSBtX3ZhbHVlLT5yZWN0
VmFsdWUoKTsKLSAgICBpZiAoIXZhbHVlKQorICAgIGlmIChwcmltaXRpdmVUeXBlKCkgIT0gQ1NT
X1JFQ1QpCiAgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkQWNjZXNzRXJyb3IgfTsK
LSAgICByZXR1cm4gRGVwcmVjYXRlZENTU09NUmVjdDo6Y3JlYXRlKCp2YWx1ZSwgbV9vd25lcik7
CisgICAgcmV0dXJuIERlcHJlY2F0ZWRDU1NPTVJlY3Q6OmNyZWF0ZSgqbV92YWx1ZS0+cmVjdFZh
bHVlKCksIG1fb3duZXIpOwogfQogCiBFeGNlcHRpb25PcjxSZWY8RGVwcmVjYXRlZENTU09NUkdC
Q29sb3I+PiBEZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZTo6Z2V0UkdCQ29sb3JWYWx1ZSgp
IGNvbnN0CiB7Ci0gICAgaWYgKCFtX3ZhbHVlLT5pc1JHQkNvbG9yKCkpCisgICAgaWYgKHByaW1p
dGl2ZVR5cGUoKSAhPSBDU1NfUkdCQ09MT1IpCiAgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJ
bnZhbGlkQWNjZXNzRXJyb3IgfTsKICAgICByZXR1cm4gRGVwcmVjYXRlZENTU09NUkdCQ29sb3I6
OmNyZWF0ZShtX293bmVyLCBtX3ZhbHVlLT5jb2xvcigpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZS5oIGIvU291cmNlL1dl
YkNvcmUvY3NzL0RlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmgKaW5kZXggYzg5ZDlmOWI1
ZjE3N2FiYjQ2ODNiNGJmMzE1ZWNhMTQ2NWNmNzY3MC4uN2E4ZjFkYTMwMmRiYWQzNjQ0NGJlMTNj
NGEyYmM2MzY2NjUyMWFmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0
ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0
ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmgKQEAgLTc2LDI4ICs3NiwyNyBAQCBwdWJsaWM6CiAgICAg
fQogCiAgICAgYm9vbCBlcXVhbHMoY29uc3QgRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWUm
IG90aGVyKSBjb25zdCB7IHJldHVybiBtX3ZhbHVlLT5lcXVhbHMob3RoZXIubV92YWx1ZSk7IH0K
LSAgICB1bnNpZ25lZCBjc3NWYWx1ZVR5cGUoKSBjb25zdCB7IHJldHVybiBtX3ZhbHVlLT5jc3NW
YWx1ZVR5cGUoKTsgfQogICAgIFN0cmluZyBjc3NUZXh0KCkgY29uc3QgeyByZXR1cm4gbV92YWx1
ZS0+Y3NzVGV4dCgpOyB9CiAgICAgCiAgICAgV0VCQ09SRV9FWFBPUlQgdW5zaWduZWQgc2hvcnQg
cHJpbWl0aXZlVHlwZSgpIGNvbnN0OwotICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9yPHZv
aWQ+IHNldEZsb2F0VmFsdWUodW5zaWduZWQgc2hvcnQgdW5pdFR5cGUsIGRvdWJsZSk7CiAgICAg
V0VCQ09SRV9FWFBPUlQgRXhjZXB0aW9uT3I8ZmxvYXQ+IGdldEZsb2F0VmFsdWUodW5zaWduZWQg
c2hvcnQgdW5pdFR5cGUpIGNvbnN0OwotICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9yPHZv
aWQ+IHNldFN0cmluZ1ZhbHVlKHVuc2lnbmVkIHNob3J0IHN0cmluZ1R5cGUsIGNvbnN0IFN0cmlu
ZyYpOwogICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2VwdGlvbk9yPFN0cmluZz4gZ2V0U3RyaW5nVmFs
dWUoKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9SVCBFeGNlcHRpb25PcjxSZWY8RGVwcmVjYXRl
ZENTU09NQ291bnRlcj4+IGdldENvdW50ZXJWYWx1ZSgpIGNvbnN0OwogICAgIFdFQkNPUkVfRVhQ
T1JUIEV4Y2VwdGlvbk9yPFJlZjxEZXByZWNhdGVkQ1NTT01SZWN0Pj4gZ2V0UmVjdFZhbHVlKCkg
Y29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgRXhjZXB0aW9uT3I8UmVmPERlcHJlY2F0ZWRDU1NP
TVJHQkNvbG9yPj4gZ2V0UkdCQ29sb3JWYWx1ZSgpIGNvbnN0OwogCisgICAgc3RhdGljIEV4Y2Vw
dGlvbk9yPHZvaWQ+IHNldEZsb2F0VmFsdWUodW5zaWduZWQgc2hvcnQsIGRvdWJsZSkgeyByZXR1
cm4gRXhjZXB0aW9uIHsgTm9Nb2RpZmljYXRpb25BbGxvd2VkRXJyb3IgfTsgfQorICAgIHN0YXRp
YyBFeGNlcHRpb25Pcjx2b2lkPiBzZXRTdHJpbmdWYWx1ZSh1bnNpZ25lZCBzaG9ydCwgY29uc3Qg
U3RyaW5nJikgeyByZXR1cm4gRXhjZXB0aW9uIHsgTm9Nb2RpZmljYXRpb25BbGxvd2VkRXJyb3Ig
fTsgfQorCiAgICAgU3RyaW5nIHN0cmluZ1ZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV92YWx1ZS0+
c3RyaW5nVmFsdWUoKTsgfQogCi1wcm90ZWN0ZWQ6Citwcml2YXRlOgogICAgIERlcHJlY2F0ZWRD
U1NPTVByaW1pdGl2ZVZhbHVlKGNvbnN0IENTU1ByaW1pdGl2ZVZhbHVlJiB2YWx1ZSwgQ1NTU3R5
bGVEZWNsYXJhdGlvbiYgb3duZXIpCiAgICAgICAgIDogRGVwcmVjYXRlZENTU09NVmFsdWUoRGVw
cmVjYXRlZFByaW1pdGl2ZVZhbHVlQ2xhc3MsIG93bmVyKQogICAgICAgICAsIG1fdmFsdWUoY29u
c3RfY2FzdDxDU1NQcmltaXRpdmVWYWx1ZSY+KHZhbHVlKSkKICAgICB7CiAgICAgfQogCi1wcml2
YXRlOgogICAgIFJlZjxDU1NQcmltaXRpdmVWYWx1ZT4gbV92YWx1ZTsKIH07CiAgICAgCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZENTU09NVmFsdWUuY3BwIGIvU291
cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRDU1NPTVZhbHVlLmNwcAppbmRleCAyNmZiMDNmODc2
NmM5Mjk2YTNlMzMxY2M0NDM1YjM5NDA3N2Y3ZWE0Li40MmFiNTM0YTc5MTQxMzJmMjk1NTdiMzk2
NmM5MzIxNmNhMWI0NWY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRl
ZENTU09NVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkQ1NTT01W
YWx1ZS5jcHAKQEAgLTU3LDkgKzU3LDkgQEAgdW5zaWduZWQgRGVwcmVjYXRlZENTU09NVmFsdWU6
OmNzc1ZhbHVlVHlwZSgpIGNvbnN0CiAgICAgY2FzZSBEZXByZWNhdGVkQ29tcGxleFZhbHVlQ2xh
c3M6CiAgICAgICAgIHJldHVybiBkb3duY2FzdDxEZXByZWNhdGVkQ1NTT01Db21wbGV4VmFsdWU+
KCp0aGlzKS5jc3NWYWx1ZVR5cGUoKTsKICAgICBjYXNlIERlcHJlY2F0ZWRQcmltaXRpdmVWYWx1
ZUNsYXNzOgotICAgICAgICByZXR1cm4gZG93bmNhc3Q8RGVwcmVjYXRlZENTU09NUHJpbWl0aXZl
VmFsdWU+KCp0aGlzKS5jc3NWYWx1ZVR5cGUoKTsKKyAgICAgICAgcmV0dXJuIENTU19QUklNSVRJ
VkVfVkFMVUU7CiAgICAgY2FzZSBEZXByZWNhdGVkVmFsdWVMaXN0Q2xhc3M6Ci0gICAgICAgIHJl
dHVybiBkb3duY2FzdDxEZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3Q+KCp0aGlzKS5jc3NWYWx1ZVR5
cGUoKTsKKyAgICAgICAgcmV0dXJuIENTU19WQUxVRV9MSVNUOwogICAgIH0KICAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKICAgICByZXR1cm4gQ1NTX0NVU1RPTTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3QuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL0RlcHJlY2F0ZWRDU1NPTVZhbHVlTGlzdC5jcHAKaW5kZXggNWY1NmExZDAyZjY3MGVl
NjZjNmY0YTcwNmE2N2U2MWUxZTFmNWI1OS4uZDJjZjZmMzY5ZGNiYTdlMDMwZjkyNmI3NWYxMzI0
YjI0OTU0NjNiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRDU1NP
TVZhbHVlTGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRDU1NPTVZh
bHVlTGlzdC5jcHAKQEAgLTMyLDI4ICszMiwyNSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFN0
cmluZyBEZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3Q6OmNzc1RleHQoKSBjb25zdAogewotICAgIFN0
cmluZ0J1aWxkZXIgcmVzdWx0OwotICAgIFN0cmluZyBzZXBhcmF0b3I7CisgICAgY29uc3QgY2hh
ciogc2VwYXJhdG9yOwogICAgIHN3aXRjaCAobV92YWx1ZVNlcGFyYXRvcikgewogICAgIGNhc2Ug
Q1NTVmFsdWU6OlNwYWNlU2VwYXJhdG9yOgotICAgICAgICBzZXBhcmF0b3IgPSAiICJfczsKKyAg
ICAgICAgc2VwYXJhdG9yID0gIiAiOwogICAgICAgICBicmVhazsKICAgICBjYXNlIENTU1ZhbHVl
OjpDb21tYVNlcGFyYXRvcjoKLSAgICAgICAgc2VwYXJhdG9yID0gIiwgIl9zOworICAgICAgICBz
ZXBhcmF0b3IgPSAiLCAiOwogICAgICAgICBicmVhazsKICAgICBjYXNlIENTU1ZhbHVlOjpTbGFz
aFNlcGFyYXRvcjoKLSAgICAgICAgc2VwYXJhdG9yID0gIiAvICJfczsKKyAgICAgICAgc2VwYXJh
dG9yID0gIiAvICI7CiAgICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6CiAgICAgICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBzZXBhcmF0b3IgPSAiIjsKICAgICB9CiAgICAgCi0g
ICAgZm9yIChhdXRvJiB2YWx1ZSA6IG1fdmFsdWVzKSB7Ci0gICAgICAgIGlmICghcmVzdWx0Lmlz
RW1wdHkoKSkKLSAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoc2VwYXJhdG9yKTsKLSAgICAgICAg
cmVzdWx0LmFwcGVuZCh2YWx1ZS5nZXQoKS5jc3NUZXh0KCkpOwotICAgIH0KLSAgICAKKyAgICBT
dHJpbmdCdWlsZGVyIHJlc3VsdDsKKyAgICBmb3IgKGF1dG8mIHZhbHVlIDogbV92YWx1ZXMpCisg
ICAgICAgIHJlc3VsdC5hcHBlbmQocmVzdWx0LmlzRW1wdHkoKSA/ICIiIDogc2VwYXJhdG9yLCB2
YWx1ZS5nZXQoKS5jc3NUZXh0KCkpOwogICAgIHJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRDU1NPTVZhbHVlTGlz
dC5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRDU1NPTVZhbHVlTGlzdC5oCmluZGV4
IGVlNDMzNDMyNjc4N2RkMGQ4NmNlNjE1ODk3ODQwMmQ2MjhjOWMyM2IuLjE0OWE4NTA0ZDhjNWNk
NzExMWViMGUwOGFmYTlmYTdiNDdlODg1MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9EZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVw
cmVjYXRlZENTU09NVmFsdWVMaXN0LmgKQEAgLTM3LDE0ICszNywxMiBAQCBwdWJsaWM6CiAgICAg
ICAgIHJldHVybiBhZG9wdFJlZigqbmV3IERlcHJlY2F0ZWRDU1NPTVZhbHVlTGlzdCh2YWx1ZSwg
b3duZXIpKTsKICAgICB9CiAgICAgCi0gICAgdW5zaWduZWQgY3NzVmFsdWVUeXBlKCkgY29uc3Qg
eyByZXR1cm4gQ1NTX1ZBTFVFX0xJU1Q7IH0KICAgICBTdHJpbmcgY3NzVGV4dCgpIGNvbnN0Owog
ICAgIAogICAgIHNpemVfdCBsZW5ndGgoKSBjb25zdCB7IHJldHVybiBtX3ZhbHVlcy5zaXplKCk7
IH0KICAgICBEZXByZWNhdGVkQ1NTT01WYWx1ZSogaXRlbShzaXplX3QgaW5kZXgpIHsgcmV0dXJu
IGluZGV4IDwgbV92YWx1ZXMuc2l6ZSgpID8gbV92YWx1ZXNbaW5kZXhdLnB0cigpIDogbnVsbHB0
cjsgfQotICAgIGNvbnN0IERlcHJlY2F0ZWRDU1NPTVZhbHVlKiBpdGVtKHNpemVfdCBpbmRleCkg
Y29uc3QgeyByZXR1cm4gaW5kZXggPCBtX3ZhbHVlcy5zaXplKCkgPyBtX3ZhbHVlc1tpbmRleF0u
cHRyKCkgOiBudWxscHRyOyB9CiAKLXByb3RlY3RlZDoKK3ByaXZhdGU6CiAgICAgRGVwcmVjYXRl
ZENTU09NVmFsdWVMaXN0KGNvbnN0IENTU1ZhbHVlTGlzdCYgdmFsdWUsIENTU1N0eWxlRGVjbGFy
YXRpb24mIG93bmVyKQogICAgICAgICA6IERlcHJlY2F0ZWRDU1NPTVZhbHVlKERlcHJlY2F0ZWRW
YWx1ZUxpc3RDbGFzcywgb3duZXIpCiAgICAgewpAQCAtNTQsNyArNTIsNiBAQCBwcm90ZWN0ZWQ6
CiAgICAgICAgICAgICBtX3ZhbHVlcy51bmNoZWNrZWRBcHBlbmQodmFsdWUuaXRlbVdpdGhvdXRC
b3VuZHNDaGVjayhpKS0+Y3JlYXRlRGVwcmVjYXRlZENTU09NV3JhcHBlcihvd25lcikpOwogICAg
IH0KICAgICAKLXByaXZhdGU6CiAgICAgVmVjdG9yPFJlZjxEZXByZWNhdGVkQ1NTT01WYWx1ZT4s
IDQ+IG1fdmFsdWVzOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL01lZGlh
UXVlcnlFeHByZXNzaW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9NZWRpYVF1ZXJ5RXhwcmVz
c2lvbi5jcHAKaW5kZXggOGI4NTdlYTNmMGJlODFhZGQ4MTA4ZTQxNzc2NGJlOTgzYmIxMmU2MS4u
Y2E4MDg4MzZmMGMxODhlNjBhMjA4YTFjYmMzYjEwNzk0MzE4ZTVhNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL01lZGlhUXVlcnlFeHByZXNzaW9uLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvTWVkaWFRdWVyeUV4cHJlc3Npb24uY3BwCkBAIC03NywyMiArNzcsMjIgQEAgc3Rh
dGljIGlubGluZSBib29sIGZlYXR1cmVXaXRoVmFsaWRJZGVudChjb25zdCBBdG9tU3RyaW5nJiBt
ZWRpYUZlYXR1cmUsIGNvbnN0IEMKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgcmV0dXJu
IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6b3JpZW50YXRpb24KLSAgICB8fCBt
ZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6OmNvbG9yR2FtdXQKLSAgICB8fCBtZWRp
YUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6OmFueUhvdmVyCi0gICAgfHwgbWVkaWFGZWF0
dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjphbnlQb2ludGVyCi0gICAgfHwgbWVkaWFGZWF0dXJl
ID09IE1lZGlhRmVhdHVyZU5hbWVzOjpob3ZlcgotICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRp
YUZlYXR1cmVOYW1lczo6aW52ZXJ0ZWRDb2xvcnMKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVk
aWFGZWF0dXJlTmFtZXM6OnBvaW50ZXIKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlh
RmVhdHVyZU5hbWVzOjpjb2xvckdhbXV0CisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRp
YUZlYXR1cmVOYW1lczo6YW55SG92ZXIKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlh
RmVhdHVyZU5hbWVzOjphbnlQb2ludGVyCisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRp
YUZlYXR1cmVOYW1lczo6aG92ZXIKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVh
dHVyZU5hbWVzOjppbnZlcnRlZENvbG9ycworICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVk
aWFGZWF0dXJlTmFtZXM6OnBvaW50ZXIKICNpZiBFTkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1Qp
Ci0gICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjpkaXNwbGF5TW9kZQor
ICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6OmRpc3BsYXlNb2Rl
CiAjZW5kaWYKICNpZiBFTkFCTEUoREFSS19NT0RFX0NTUykKLSAgICB8fCBtZWRpYUZlYXR1cmUg
PT0gTWVkaWFGZWF0dXJlTmFtZXM6OnByZWZlcnNDb2xvclNjaGVtZQorICAgICAgICB8fCBtZWRp
YUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6OnByZWZlcnNDb2xvclNjaGVtZQogI2VuZGlm
Ci0gICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjpwcmVmZXJzQ29udHJh
c3QKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6OnByZWZlcnNSZWR1
Y2VkTW90aW9uCi0gICAgfHwgKG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6cHJl
ZmVyc0RhcmtJbnRlcmZhY2UgJiYgKGNvbnRleHQudXNlU3lzdGVtQXBwZWFyYW5jZSB8fCBpc1VB
U2hlZXRCZWhhdmlvcihjb250ZXh0Lm1vZGUpKSkKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVk
aWFGZWF0dXJlTmFtZXM6OmR5bmFtaWNSYW5nZTsKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09
IE1lZGlhRmVhdHVyZU5hbWVzOjpwcmVmZXJzQ29udHJhc3QKKyAgICAgICAgfHwgbWVkaWFGZWF0
dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjpwcmVmZXJzUmVkdWNlZE1vdGlvbgorICAgICAgICB8
fCAobWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjpwcmVmZXJzRGFya0ludGVyZmFj
ZSAmJiAoY29udGV4dC51c2VTeXN0ZW1BcHBlYXJhbmNlIHx8IGlzVUFTaGVldEJlaGF2aW9yKGNv
bnRleHQubW9kZSkpKQorICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFt
ZXM6OmR5bmFtaWNSYW5nZTsKIH0KIAogc3RhdGljIGlubGluZSBib29sIGZlYXR1cmVXaXRoVmFs
aWREZW5zaXR5KGNvbnN0IFN0cmluZyYgbWVkaWFGZWF0dXJlLCBjb25zdCBDU1NQcmltaXRpdmVW
YWx1ZSYgdmFsdWUpCkBAIC0xMDEsOCArMTAxLDggQEAgc3RhdGljIGlubGluZSBib29sIGZlYXR1
cmVXaXRoVmFsaWREZW5zaXR5KGNvbnN0IFN0cmluZyYgbWVkaWFGZWF0dXJlLCBjb25zdCBDU1MK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIAogICAgIHJldHVybiBtZWRpYUZlYXR1cmUgPT0g
TWVkaWFGZWF0dXJlTmFtZXM6OnJlc29sdXRpb24KLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVk
aWFGZWF0dXJlTmFtZXM6Om1pblJlc29sdXRpb24KLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVk
aWFGZWF0dXJlTmFtZXM6Om1heFJlc29sdXRpb247CisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9
PSBNZWRpYUZlYXR1cmVOYW1lczo6bWluUmVzb2x1dGlvbgorICAgICAgICB8fCBtZWRpYUZlYXR1
cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1heFJlc29sdXRpb247CiB9CiAKIHN0YXRpYyBpbmxp
bmUgYm9vbCBmZWF0dXJlV2l0aFZhbGlkUG9zaXRpdmVMZW5ndGgoY29uc3QgU3RyaW5nJiBtZWRp
YUZlYXR1cmUsIGNvbnN0IENTU1ByaW1pdGl2ZVZhbHVlJiB2YWx1ZSkKQEAgLTExMSwzMCArMTEx
LDMwIEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBmZWF0dXJlV2l0aFZhbGlkUG9zaXRpdmVMZW5ndGgo
Y29uc3QgU3RyaW5nJiBtZWRpYUZlYXR1cmUsIGNvCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAg
ICAKICAgICByZXR1cm4gbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjpoZWlnaHQK
LSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1heEhlaWdodAotICAg
IHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6bWluSGVpZ2h0Ci0gICAgfHwg
bWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjp3aWR0aAotICAgIHx8IG1lZGlhRmVh
dHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6bWF4V2lkdGgKLSAgICB8fCBtZWRpYUZlYXR1cmUg
PT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1pbldpZHRoCi0gICAgfHwgbWVkaWFGZWF0dXJlID09IE1l
ZGlhRmVhdHVyZU5hbWVzOjpkZXZpY2VIZWlnaHQKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVk
aWFGZWF0dXJlTmFtZXM6Om1heERldmljZUhlaWdodAotICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBN
ZWRpYUZlYXR1cmVOYW1lczo6bWluRGV2aWNlSGVpZ2h0Ci0gICAgfHwgbWVkaWFGZWF0dXJlID09
IE1lZGlhRmVhdHVyZU5hbWVzOjpkZXZpY2VXaWR0aAotICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBN
ZWRpYUZlYXR1cmVOYW1lczo6bWluRGV2aWNlV2lkdGgKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0g
TWVkaWFGZWF0dXJlTmFtZXM6Om1heERldmljZVdpZHRoOworICAgICAgICB8fCBtZWRpYUZlYXR1
cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1heEhlaWdodAorICAgICAgICB8fCBtZWRpYUZlYXR1
cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1pbkhlaWdodAorICAgICAgICB8fCBtZWRpYUZlYXR1
cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6OndpZHRoCisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9
PSBNZWRpYUZlYXR1cmVOYW1lczo6bWF4V2lkdGgKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09
IE1lZGlhRmVhdHVyZU5hbWVzOjptaW5XaWR0aAorICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0g
TWVkaWFGZWF0dXJlTmFtZXM6OmRldmljZUhlaWdodAorICAgICAgICB8fCBtZWRpYUZlYXR1cmUg
PT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1heERldmljZUhlaWdodAorICAgICAgICB8fCBtZWRpYUZl
YXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6Om1pbkRldmljZUhlaWdodAorICAgICAgICB8fCBt
ZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6OmRldmljZVdpZHRoCisgICAgICAgIHx8
IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6bWluRGV2aWNlV2lkdGgKKyAgICAg
ICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjptYXhEZXZpY2VXaWR0aDsK
IH0KIAogc3RhdGljIGlubGluZSBib29sIGZlYXR1cmVFeHBlY3RpbmdQb3NpdGl2ZUludGVnZXIo
Y29uc3QgU3RyaW5nJiBtZWRpYUZlYXR1cmUpCiB7CiAgICAgcmV0dXJuIG1lZGlhRmVhdHVyZSA9
PSBNZWRpYUZlYXR1cmVOYW1lczo6Y29sb3IKLSAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFG
ZWF0dXJlTmFtZXM6Om1heENvbG9yCi0gICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVy
ZU5hbWVzOjptaW5Db2xvcgotICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1l
czo6Y29sb3JJbmRleAotICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6
bWF4Q29sb3JJbmRleAotICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6
bWluQ29sb3JJbmRleAotICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6
bW9ub2Nocm9tZQotICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6bWF4
TW9ub2Nocm9tZQotICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6bWlu
TW9ub2Nocm9tZTsKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVz
OjptYXhDb2xvcgorICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6
Om1pbkNvbG9yCisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6
Y29sb3JJbmRleAorICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFtZXM6
Om1heENvbG9ySW5kZXgKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5h
bWVzOjptaW5Db2xvckluZGV4CisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1
cmVOYW1lczo6bW9ub2Nocm9tZQorICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0
dXJlTmFtZXM6Om1heE1vbm9jaHJvbWUKKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlh
RmVhdHVyZU5hbWVzOjptaW5Nb25vY2hyb21lOwogfQogCiBzdGF0aWMgaW5saW5lIGJvb2wgZmVh
dHVyZVdpdGhQb3NpdGl2ZUludGVnZXIoY29uc3QgU3RyaW5nJiBtZWRpYUZlYXR1cmUsIGNvbnN0
IENTU1ByaW1pdGl2ZVZhbHVlJiB2YWx1ZSkKQEAgLTE1MCwxMiArMTUwLDEyIEBAIHN0YXRpYyBp
bmxpbmUgYm9vbCBmZWF0dXJlV2l0aFBvc2l0aXZlTnVtYmVyKGNvbnN0IFN0cmluZyYgbWVkaWFG
ZWF0dXJlLCBjb25zdCBDCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAKICAgICByZXR1cm4g
bWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjp0cmFuc2Zvcm0zZAotICAgIHx8IG1l
ZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6ZGV2aWNlUGl4ZWxSYXRpbwotICAgIHx8
IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6bWF4RGV2aWNlUGl4ZWxSYXRpbwot
ICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6bWluRGV2aWNlUGl4ZWxS
YXRpbwotICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6dHJhbnNpdGlv
bgotICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6YW5pbWF0aW9uCi0g
ICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjp0cmFuc2Zvcm0yZDsKKyAg
ICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlhRmVhdHVyZU5hbWVzOjpkZXZpY2VQaXhlbFJh
dGlvCisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRpYUZlYXR1cmVOYW1lczo6bWF4RGV2
aWNlUGl4ZWxSYXRpbworICAgICAgICB8fCBtZWRpYUZlYXR1cmUgPT0gTWVkaWFGZWF0dXJlTmFt
ZXM6Om1pbkRldmljZVBpeGVsUmF0aW8KKyAgICAgICAgfHwgbWVkaWFGZWF0dXJlID09IE1lZGlh
RmVhdHVyZU5hbWVzOjp0cmFuc2l0aW9uCisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRp
YUZlYXR1cmVOYW1lczo6YW5pbWF0aW9uCisgICAgICAgIHx8IG1lZGlhRmVhdHVyZSA9PSBNZWRp
YUZlYXR1cmVOYW1lczo6dHJhbnNmb3JtMmQ7CiB9CiAKIHN0YXRpYyBpbmxpbmUgYm9vbCBmZWF0
dXJlV2l0aFplcm9Pck9uZShjb25zdCBTdHJpbmcmIG1lZGlhRmVhdHVyZSwgY29uc3QgQ1NTUHJp
bWl0aXZlVmFsdWUmIHZhbHVlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL2NhbGMv
Q1NTQ2FsY0NhdGVnb3J5TWFwcGluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvY2FsYy9DU1ND
YWxjQ2F0ZWdvcnlNYXBwaW5nLmNwcAppbmRleCAxM2RlNGU2NzlkMDNmMzcwNjdlOGEyODQyYjUx
MjdiYjg5YmFiODNiLi4xZThjN2QyY2ViNWE1MmNjMDM3MTY4OTA2NjQyMjJmNjliOWU5ZjQwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvY2FsYy9DU1NDYWxjQ2F0ZWdvcnlNYXBwaW5n
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvY2FsYy9DU1NDYWxjQ2F0ZWdvcnlNYXBwaW5n
LmNwcApAQCAtMTcyLDYgKzE3Miw3IEBAIGJvb2wgaGFzRG91YmxlVmFsdWUoQ1NTVW5pdFR5cGUg
dHlwZSkKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfRk9OVF9GQU1JTFk6CiAgICAgY2FzZSBD
U1NVbml0VHlwZTo6Q1NTX1VSSToKICAgICBjYXNlIENTU1VuaXRUeXBlOjpDU1NfSURFTlQ6Cisg
ICAgY2FzZSBDU1NVbml0VHlwZTo6Q3VzdG9tSWRlbnQ6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6
Q1NTX0FUVFI6CiAgICAgY2FzZSBDU1NVbml0VHlwZTo6Q1NTX0NPVU5URVI6CiAgICAgY2FzZSBD
U1NVbml0VHlwZTo6Q1NTX1JFQ1Q6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFy
c2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NT
UHJvcGVydHlQYXJzZXIuY3BwCmluZGV4IGQ3NGY5NGUxMDU2MmFhODQ1YWFmNzc5N2U2NmEzZGMy
OTA3Y2FkNmMuLjY4NDUyMzc4NjkzMjYwODZjYmNhZTBlZDk0ZGJjM2E1NmRlYjUyZjUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwCkBAIC0z
NSw3ICszNSw2IEBACiAjaW5jbHVkZSAiQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmgiCiAjaW5j
bHVkZSAiQ1NTQ29udGVudERpc3RyaWJ1dGlvblZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTQ3Vyc29y
SW1hZ2VWYWx1ZS5oIgotI2luY2x1ZGUgIkNTU0N1c3RvbUlkZW50VmFsdWUuaCIKICNpbmNsdWRl
ICJDU1NDdXN0b21Qcm9wZXJ0eVZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTRm9udEZhY2VTcmNWYWx1
ZS5oIgogI2luY2x1ZGUgIkNTU0ZvbnRGZWF0dXJlVmFsdWUuaCIKQEAgLTUwMCw3ICs0OTksNiBA
QCBzdGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lV2lsbENoYW5nZShDU1NQYXJzZXJUb2tl
blJhbmdlJiByYW5nZSkKICAgICAgICAgICAgIC8vIE5lZWQgdG8gcmV0dXJuIG51bGxwdHIgd2hl
biBjdXJyZW50VmFsdWUgaXMgQ1NTUHJvcGVydHlBbGwuCiAgICAgICAgICAgICBpZiAocHJvcGVy
dHlJRCA9PSBDU1NQcm9wZXJ0eVdpbGxDaGFuZ2UgfHwgcHJvcGVydHlJRCA9PSBDU1NQcm9wZXJ0
eUFsbCkKICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgICAgIC8vIEZJ
WE1FLU5FV1BBUlNFUjogVXNlIENTU0N1c3RvbUlkZW50VmFsdWUgc29tZWRheS4KICAgICAgICAg
ICAgIHZhbHVlcy0+YXBwZW5kKENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlSWRlbnRp
ZmllclZhbHVlKHByb3BlcnR5SUQpKTsKICAgICAgICAgICAgIHJhbmdlLmNvbnN1bWVJbmNsdWRp
bmdXaGl0ZXNwYWNlKCk7CiAgICAgICAgIH0gZWxzZSB7CkBAIC0xMzEzLDcgKzEzMTEsNiBAQCBz
dGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lQW5pbWF0aW9uTmFtZShDU1NQYXJzZXJUb2tl
blJhbmdlJiByYW5nZSkKICAgICAgICAgY29uc3QgQ1NTUGFyc2VyVG9rZW4mIHRva2VuID0gcmFu
Z2UuY29uc3VtZUluY2x1ZGluZ1doaXRlc3BhY2UoKTsKICAgICAgICAgaWYgKGVxdWFsSWdub3Jp
bmdBU0NJSUNhc2UodG9rZW4udmFsdWUoKSwgIm5vbmUiKSkKICAgICAgICAgICAgIHJldHVybiBD
U1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5v
bmUpOwotICAgICAgICAvLyBGSVhNRS1ORVdQQVJTRVI6IFdhbnQgdG8gdXNlIGEgQ1NTQ3VzdG9t
SWRlbnRWYWx1ZSBoZXJlIGV2ZW50dWFsbHkuCiAgICAgICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6
OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKHRva2VuLnZhbHVlKCkudG9TdHJpbmcoKSwgQ1NTVW5p
dFR5cGU6OkNTU19TVFJJTkcpOwogICAgIH0KIApAQCAtMTMzMCwxNCArMTMyNyw2IEBAIHN0YXRp
YyBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVUcmFuc2l0aW9uUHJvcGVydHkoQ1NTUGFyc2VyVG9r
ZW5SYW5nZSYgcmFuZ2UpCiAKICAgICBpZiAoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSA9IHRva2Vu
LnBhcnNlQXNDU1NQcm9wZXJ0eUlEKCkpIHsKICAgICAgICAgcmFuZ2UuY29uc3VtZUluY2x1ZGlu
Z1doaXRlc3BhY2UoKTsKLSAgICAgICAgCi0gICAgICAgIC8vIEZJWE1FLU5FV1BBUlNFUjogTm8g
cmVhc29uIHdoeSB3ZSBjYW4ndCB1c2UgdGhlICJhbGwiIHByb3BlcnR5IG5vdyB0aGF0IGl0IGV4
aXN0cy4KLSAgICAgICAgLy8gVGhlIG9sZCBwYXJzZXIgdXNlZCBhIHZhbHVlIGtleXdvcmQgZm9y
ICJhbGwiLCB0aG91Z2gsIHNpbmNlIGl0IHByZWRhdGVkIHN1cHBvcnQgZm9yCi0gICAgICAgIC8v
IHRoZSBwcm9wZXJ0eS4KLSAgICAgICAgaWYgKHByb3BlcnR5ID09IENTU1Byb3BlcnR5QWxsKQot
ICAgICAgICAgICAgcmV0dXJuIENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlSWRlbnRp
ZmllclZhbHVlKENTU1ZhbHVlQWxsKTsKLQotICAgICAgICAvLyBGSVhNRS1ORVdQQVJTRVI6IFdh
bnQgdG8gdXNlIGEgQ1NTQ3VzdG9tSWRlbnRWYWx1ZSBoZXJlIGV2ZW50dWFsbHkuCiAgICAgICAg
IHJldHVybiBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShw
cm9wZXJ0eSk7CiAgICAgfQogICAgIHJldHVybiBjb25zdW1lQ3VzdG9tSWRlbnQocmFuZ2UpOwpA
QCAtMjMyMSw5ICsyMzEwLDcgQEAgc3RhdGljIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUF0dHIo
Q1NTUGFyc2VyVG9rZW5SYW5nZSBhcmdzLCBDU1NQYXJzZXJDb250ZXh0IGMKICAgICBpZiAoIWFy
Z3MuYXRFbmQoKSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICAvLyBGSVhNRS1ORVdQ
QVJTRVI6IFdlIHdhbnQgdG8gdXNlIGEgQ1NTQ3VzdG9tSWRlbnRWYWx1ZSBoZXJlIGV2ZW50dWFs
bHkgZm9yIHRoZSBhdHRyTmFtZS4KLSAgICAvLyBGSVhNRS1ORVdQQVJTRVI6IFdlIHdhbnQgdG8g
dXNlIGEgQ1NTRnVuY3Rpb25WYWx1ZSByYXRoZXIgdGhhbiByZWx5aW5nIG9uIGEgY3VzdG9tCi0g
ICAgLy8gYXR0cigpIHByaW1pdGl2ZSB2YWx1ZS4KKyAgICAvLyBGSVhNRTogQ29uc2lkZXIgbW92
aW5nIHRvIGEgQ1NTRnVuY3Rpb25WYWx1ZSB3aXRoIGEgY3VzdG9tLWlkZW50IHJhdGhlciB0aGFu
IGEgc3BlY2lhbCBDU1NfQVRUUiBwcmltaXRpdmUgdmFsdWUuCiAgICAgcmV0dXJuIENTU1ZhbHVl
UG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlVmFsdWUoYXR0ck5hbWUsIENTU1VuaXRUeXBlOjpDU1Nf
QVRUUik7CiB9CiAKQEAgLTU1MzgsMTIgKzU1MjUsOSBAQCBib29sIENTU1Byb3BlcnR5UGFyc2Vy
Ojpjb25zdW1lT3ZlcmZsb3dTaG9ydGhhbmQoYm9vbCBpbXBvcnRhbnQpCiAgICAgcmV0dXJuIHRy
dWU7CiB9CiAKLS8vIEZJWE1FLU5FV1BBUlNFUjogSGFjayB0byB3b3JrIGFyb3VuZCB0aGUgZmFj
dCB0aGF0IHdlIGFyZW4ndCB1c2luZyBDU1NDdXN0b21JZGVudFZhbHVlCi0vLyBmb3Igc3R1ZmYg
eWV0LiBUaGlzIGNhbiBiZSByZXBsYWNlZCBieSBDU1NWYWx1ZTo6aXNDdXN0b21JZGVudFZhbHVl
KCkgb25jZSB3ZSBzd2l0Y2gKLS8vIHRvIHVzaW5nIENTU0N1c3RvbUlkZW50VmFsdWUgZXZlcnl3
aGVyZS4KIHN0YXRpYyBib29sIGlzQ3VzdG9tSWRlbnRWYWx1ZShjb25zdCBDU1NWYWx1ZSYgdmFs
dWUpCiB7Ci0gICAgcmV0dXJuIGlzPENTU1ByaW1pdGl2ZVZhbHVlPih2YWx1ZSkgJiYgZG93bmNh
c3Q8Q1NTUHJpbWl0aXZlVmFsdWU+KHZhbHVlKS5pc1N0cmluZygpOworICAgIHJldHVybiBpczxD
U1NQcmltaXRpdmVWYWx1ZT4odmFsdWUpICYmIGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPih2
YWx1ZSkuaXNDdXN0b21JZGVudCgpOwogfQogCiBib29sIENTU1Byb3BlcnR5UGFyc2VyOjpjb25z
dW1lR3JpZEl0ZW1Qb3NpdGlvblNob3J0aGFuZChDU1NQcm9wZXJ0eUlEIHNob3J0aGFuZElkLCBi
b29sIGltcG9ydGFudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NT
UHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NT
UHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcAppbmRleCAwMDRiZmUzNzE4MjMwMzA3ODFhZGM0ODM2
MzFlMzVhN2NjYzBiZDA2Li44NjA3YjA4NGE4NDI2MDBhNDI4ZmExNTI1OWYwY2UyNzUzZmUwNDEy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2Vy
SGVscGVycy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBh
cnNlckhlbHBlcnMuY3BwCkBAIC0xMzA4LDE1ICsxMzA4LDEyIEBAIFJlZlB0cjxDU1NQcmltaXRp
dmVWYWx1ZT4gY29uc3VtZUlkZW50UmFuZ2UoQ1NTUGFyc2VyVG9rZW5SYW5nZSYgcmFuZ2UsIENT
U1ZhbHVlCiAgICAgcmV0dXJuIGNvbnN1bWVJZGVudChyYW5nZSk7CiB9CiAKLS8vIEZJWE1FLU5F
V1BBUlNFUjogRXZlbnR1YWxseSB3ZSdkIGxpa2UgdGhpcyB0byB1c2UgQ1NTQ3VzdG9tSWRlbnRW
YWx1ZSwgYnV0IHdlIG5lZWQKLS8vIHRvIGRvIG90aGVyIHBsdW1iaW5nIHdvcmsgZmlyc3QgKGxp
a2UgY2hhbmdpbmcgUGFpciB0byBDU1NWYWx1ZVBhaXIgYW5kIG1ha2UgaXQgbm90Ci0vLyB1c2Ug
b25seSBwcmltaXRpdmUgdmFsdWVzKS4KIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29uc3Vt
ZUN1c3RvbUlkZW50KENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlLCBib29sIHNob3VsZExvd2Vy
Y2FzZSkKIHsKICAgICBpZiAocmFuZ2UucGVlaygpLnR5cGUoKSAhPSBJZGVudFRva2VuIHx8IGlz
Q1NTV2lkZUtleXdvcmQocmFuZ2UucGVlaygpLmlkKCkpKQogICAgICAgICByZXR1cm4gbnVsbHB0
cjsKICAgICBhdXRvIGlkZW50aWZpZXIgPSByYW5nZS5jb25zdW1lSW5jbHVkaW5nV2hpdGVzcGFj
ZSgpLnZhbHVlKCk7Ci0gICAgcmV0dXJuIENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRl
VmFsdWUoc2hvdWxkTG93ZXJjYXNlID8gaWRlbnRpZmllci5jb252ZXJ0VG9BU0NJSUxvd2VyY2Fz
ZSgpIDogaWRlbnRpZmllci50b1N0cmluZygpLCBDU1NVbml0VHlwZTo6Q1NTX1NUUklORyk7Cisg
ICAgcmV0dXJuIENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlQ3VzdG9tSWRlbnQoc2hv
dWxkTG93ZXJjYXNlID8gaWRlbnRpZmllci5jb252ZXJ0VG9BU0NJSUxvd2VyY2FzZSgpIDogaWRl
bnRpZmllci50b1N0cmluZygpKTsKIH0KIAogUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb25z
dW1lU3RyaW5nKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vYW5pbWF0aW9uL0FuaW1hdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9hbmltYXRpb24vQW5pbWF0aW9uLmNwcAppbmRleCA5YTU3OThkNTQxMDhkOGEx
Y2MwNjdkYmY4ZGUxMzc3OTFhOWEyY2Q2Li44YmQ4YTY2ZDhkNzUwMDFlNmY4OTk5ODEzZTRlZGUy
MjdjYWJhZjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hbmltYXRpb24v
QW5pbWF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hbmltYXRpb24vQW5p
bWF0aW9uLmNwcApAQCAtMTA1LDcgKzEwNSw3IEBAIEFuaW1hdGlvbjo6fkFuaW1hdGlvbigpID0g
ZGVmYXVsdDsKIAogYm9vbCBBbmltYXRpb246OmFuaW1hdGlvbnNNYXRjaChjb25zdCBBbmltYXRp
b24mIG90aGVyLCBib29sIG1hdGNoUHJvcGVydGllcykgY29uc3QKIHsKLSAgICBib29sIHJlc3Vs
dCA9IG1fbmFtZSA9PSBvdGhlci5tX25hbWUKKyAgICBib29sIHJlc3VsdCA9IG1fbmFtZS5zdHJp
bmcgPT0gb3RoZXIubV9uYW1lLnN0cmluZwogICAgICAgICAmJiBtX3BsYXlTdGF0ZSA9PSBvdGhl
ci5tX3BsYXlTdGF0ZQogICAgICAgICAmJiBtX3BsYXlTdGF0ZVNldCA9PSBvdGhlci5tX3BsYXlT
dGF0ZVNldAogICAgICAgICAmJiBtX2l0ZXJhdGlvbkNvdW50ID09IG90aGVyLm1faXRlcmF0aW9u
Q291bnQKQEAgLTEzMCw5ICsxMzAsOSBAQCBib29sIEFuaW1hdGlvbjo6YW5pbWF0aW9uc01hdGNo
KGNvbnN0IEFuaW1hdGlvbiYgb3RoZXIsIGJvb2wgbWF0Y2hQcm9wZXJ0aWVzKSBjbwogICAgIHJl
dHVybiAhbWF0Y2hQcm9wZXJ0aWVzIHx8IChtX3Byb3BlcnR5Lm1vZGUgPT0gb3RoZXIubV9wcm9w
ZXJ0eS5tb2RlICYmIG1fcHJvcGVydHkuaWQgPT0gb3RoZXIubV9wcm9wZXJ0eS5pZCAmJiBtX3By
b3BlcnR5U2V0ID09IG90aGVyLm1fcHJvcGVydHlTZXQpOwogfQogCi1jb25zdCBTdHJpbmcmIEFu
aW1hdGlvbjo6aW5pdGlhbE5hbWUoKQorYXV0byBBbmltYXRpb246OmluaXRpYWxOYW1lKCkgLT4g
Y29uc3QgTmFtZSYKIHsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8U3RyaW5nPiBpbml0aWFs
VmFsdWUoTUFLRV9TVEFUSUNfU1RSSU5HX0lNUEwoIm5vbmUiKSk7CisgICAgc3RhdGljIE5ldmVy
RGVzdHJveWVkPE5hbWU+IGluaXRpYWxWYWx1ZSB7IE5hbWUgeyBNQUtFX1NUQVRJQ19TVFJJTkdf
SU1QTCgibm9uZSIpLCB0cnVlIH0gfTsKICAgICByZXR1cm4gaW5pdGlhbFZhbHVlOwogfQogCkBA
IC0xNjEsNyArMTYxLDcgQEAgVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywg
QW5pbWF0aW9uOjpBbmltYXRpb25EaXJlY3Rpb24gZGlyZWN0aW9uKQogVGV4dFN0cmVhbSYgb3Bl
cmF0b3I8PChUZXh0U3RyZWFtJiB0cywgY29uc3QgQW5pbWF0aW9uJiBhbmltYXRpb24pCiB7CiAg
ICAgdHMuZHVtcFByb3BlcnR5KCJwcm9wZXJ0eSIsIGFuaW1hdGlvbi5wcm9wZXJ0eSgpKTsKLSAg
ICB0cy5kdW1wUHJvcGVydHkoIm5hbWUiLCBhbmltYXRpb24ubmFtZSgpKTsKKyAgICB0cy5kdW1w
UHJvcGVydHkoIm5hbWUiLCBhbmltYXRpb24ubmFtZSgpLnN0cmluZyk7CiAgICAgdHMuZHVtcFBy
b3BlcnR5KCJpdGVyYXRpb24gY291bnQiLCBhbmltYXRpb24uaXRlcmF0aW9uQ291bnQoKSk7CiAg
ICAgdHMuZHVtcFByb3BlcnR5KCJkZWxheSIsIGFuaW1hdGlvbi5pdGVyYXRpb25Db3VudCgpKTsK
ICAgICB0cy5kdW1wUHJvcGVydHkoImR1cmF0aW9uIiwgYW5pbWF0aW9uLmR1cmF0aW9uKCkpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYW5pbWF0aW9uL0FuaW1hdGlvbi5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYW5pbWF0aW9uL0FuaW1hdGlvbi5oCmluZGV4IDdl
MjI4ZjA3MmY2ZGZiMmVkZjU0NTIxNGE2YzFkMTE5ZGJlZjliNTQuLjJmMzcyNDQ2OGY0YmZmYjNl
Y2EyZWFlNjY3MzE2ZDNkYTdlZDkyYmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2FuaW1hdGlvbi9BbmltYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9h
bmltYXRpb24vQW5pbWF0aW9uLmgKQEAgLTUzLDcgKzUzLDcgQEAgcHVibGljOgogCiAgICAgLy8g
V2UgY2FuIG1ha2UgcGxhY2Vob2xkZXIgQW5pbWF0aW9uIG9iamVjdHMgdG8ga2VlcCB0aGUgY29t
bWEtc2VwYXJhdGVkIGxpc3RzCiAgICAgLy8gb2YgcHJvcGVydGllcyBpbiBzeW5jLiBpc1ZhbGlk
QW5pbWF0aW9uIG1lYW5zIHRoaXMgaXMgbm90IGEgcGxhY2Vob2xkZXIuCi0gICAgYm9vbCBpc1Zh
bGlkQW5pbWF0aW9uKCkgY29uc3QgeyByZXR1cm4gIW1faXNOb25lICYmICFtX25hbWUuaXNFbXB0
eSgpOyB9CisgICAgYm9vbCBpc1ZhbGlkQW5pbWF0aW9uKCkgY29uc3QgeyByZXR1cm4gIW1faXNO
b25lICYmICFtX25hbWUuc3RyaW5nLmlzRW1wdHkoKTsgfQogCiAgICAgYm9vbCBpc0VtcHR5KCkg
Y29uc3QKICAgICB7CkBAIC0xMTksOSArMTE5LDE0IEBAIHB1YmxpYzoKICAgICBkb3VibGUgZHVy
YXRpb24oKSBjb25zdCB7IHJldHVybiBtX2R1cmF0aW9uOyB9CiAgICAgZG91YmxlIHBsYXliYWNr
UmF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fcGxheWJhY2tSYXRlOyB9CiAKKyAgICBzdHJ1Y3QgTmFt
ZSB7CisgICAgICAgIFN0cmluZyBzdHJpbmc7CisgICAgICAgIGJvb2wgaXNJZGVudGlmaWVyIHsg
ZmFsc2UgfTsKKyAgICB9OworCiAgICAgZW51bSB7IEl0ZXJhdGlvbkNvdW50SW5maW5pdGUgPSAt
MSB9OwogICAgIGRvdWJsZSBpdGVyYXRpb25Db3VudCgpIGNvbnN0IHsgcmV0dXJuIG1faXRlcmF0
aW9uQ291bnQ7IH0KLSAgICBjb25zdCBTdHJpbmcmIG5hbWUoKSBjb25zdCB7IHJldHVybiBtX25h
bWU7IH0KKyAgICBjb25zdCBOYW1lJiBuYW1lKCkgY29uc3QgeyByZXR1cm4gbV9uYW1lOyB9CiAg
ICAgU3R5bGU6OlNjb3BlT3JkaW5hbCBuYW1lU3R5bGVTY29wZU9yZGluYWwoKSBjb25zdCB7IHJl
dHVybiBtX25hbWVTdHlsZVNjb3BlT3JkaW5hbDsgfQogICAgIEFuaW1hdGlvblBsYXlTdGF0ZSBw
bGF5U3RhdGUoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxBbmltYXRpb25QbGF5U3RhdGU+
KG1fcGxheVN0YXRlKTsgfQogICAgIFRyYW5zaXRpb25Qcm9wZXJ0eSBwcm9wZXJ0eSgpIGNvbnN0
IHsgcmV0dXJuIG1fcHJvcGVydHk7IH0KQEAgLTEzNSw3ICsxNDAsNyBAQCBwdWJsaWM6CiAgICAg
dm9pZCBzZXRQbGF5YmFja1JhdGUoZG91YmxlIGQpIHsgbV9wbGF5YmFja1JhdGUgPSBkOyB9CiAg
ICAgdm9pZCBzZXRGaWxsTW9kZShBbmltYXRpb25GaWxsTW9kZSBmKSB7IG1fZmlsbE1vZGUgPSBz
dGF0aWNfY2FzdDx1bnNpZ25lZD4oZik7IG1fZmlsbE1vZGVTZXQgPSB0cnVlOyB9CiAgICAgdm9p
ZCBzZXRJdGVyYXRpb25Db3VudChkb3VibGUgYykgeyBtX2l0ZXJhdGlvbkNvdW50ID0gYzsgbV9p
dGVyYXRpb25Db3VudFNldCA9IHRydWU7IH0KLSAgICB2b2lkIHNldE5hbWUoY29uc3QgU3RyaW5n
JiBuYW1lLCBTdHlsZTo6U2NvcGVPcmRpbmFsIHNjb3BlID0gU3R5bGU6OlNjb3BlT3JkaW5hbDo6
RWxlbWVudCkKKyAgICB2b2lkIHNldE5hbWUoY29uc3QgTmFtZSYgbmFtZSwgU3R5bGU6OlNjb3Bl
T3JkaW5hbCBzY29wZSA9IFN0eWxlOjpTY29wZU9yZGluYWw6OkVsZW1lbnQpCiAgICAgewogICAg
ICAgICBtX25hbWUgPSBuYW1lOwogICAgICAgICBtX25hbWVTdHlsZVNjb3BlT3JkaW5hbCA9IHNj
b3BlOwpAQCAtMTQ5LDcgKzE1NCw3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc2V0SXNOb25lQW5p
bWF0aW9uKGJvb2wgbikgeyBtX2lzTm9uZSA9IG47IH0KIAotICAgIEFuaW1hdGlvbiYgb3BlcmF0
b3I9KGNvbnN0IEFuaW1hdGlvbiYgbyk7CisgICAgQW5pbWF0aW9uJiBvcGVyYXRvcj0oY29uc3Qg
QW5pbWF0aW9uJik7CiAKICAgICAvLyByZXR1cm4gdHJ1ZSBpZiBhbGwgbWVtYmVycyBvZiB0aGlz
IGNsYXNzIG1hdGNoIChleGNsdWRpbmcgbV9uZXh0KQogICAgIGJvb2wgYW5pbWF0aW9uc01hdGNo
KGNvbnN0IEFuaW1hdGlvbiYsIGJvb2wgbWF0Y2hQcm9wZXJ0aWVzID0gdHJ1ZSkgY29uc3Q7CkBA
IC0xNjMsMTIgKzE2OCwxMiBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgV0VCQ09SRV9FWFBP
UlQgQW5pbWF0aW9uKCk7Ci0gICAgQW5pbWF0aW9uKGNvbnN0IEFuaW1hdGlvbiYgbyk7CisgICAg
QW5pbWF0aW9uKGNvbnN0IEFuaW1hdGlvbiYpOwogICAgIAogICAgIC8vIFBhY2tzIHdpdGggbV9y
ZWZDb3VudCBmcm9tIHRoZSBiYXNlIGNsYXNzLgogICAgIFRyYW5zaXRpb25Qcm9wZXJ0eSBtX3By
b3BlcnR5IHsgVHJhbnNpdGlvbk1vZGU6OkFsbCwgQ1NTUHJvcGVydHlJbnZhbGlkIH07CiAKLSAg
ICBTdHJpbmcgbV9uYW1lOworICAgIE5hbWUgbV9uYW1lOwogICAgIFN0cmluZyBtX3Vua25vd25Q
cm9wZXJ0eTsKICAgICBkb3VibGUgbV9pdGVyYXRpb25Db3VudDsKICAgICBkb3VibGUgbV9kZWxh
eTsKQEAgLTIwMSw3ICsyMDYsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIGRvdWJsZSBpbml0aWFs
RHVyYXRpb24oKSB7IHJldHVybiAwOyB9CiAgICAgc3RhdGljIEFuaW1hdGlvbkZpbGxNb2RlIGlu
aXRpYWxGaWxsTW9kZSgpIHsgcmV0dXJuIEFuaW1hdGlvbkZpbGxNb2RlOjpOb25lOyB9CiAgICAg
c3RhdGljIGRvdWJsZSBpbml0aWFsSXRlcmF0aW9uQ291bnQoKSB7IHJldHVybiAxLjA7IH0KLSAg
ICBzdGF0aWMgY29uc3QgU3RyaW5nJiBpbml0aWFsTmFtZSgpOworICAgIHN0YXRpYyBjb25zdCBO
YW1lJiBpbml0aWFsTmFtZSgpOwogICAgIHN0YXRpYyBBbmltYXRpb25QbGF5U3RhdGUgaW5pdGlh
bFBsYXlTdGF0ZSgpIHsgcmV0dXJuIEFuaW1hdGlvblBsYXlTdGF0ZTo6UGxheWluZzsgfQogICAg
IHN0YXRpYyBUcmFuc2l0aW9uUHJvcGVydHkgaW5pdGlhbFByb3BlcnR5KCkgeyByZXR1cm4geyBU
cmFuc2l0aW9uTW9kZTo6QWxsLCBDU1NQcm9wZXJ0eUludmFsaWQgfTsgfQogICAgIHN0YXRpYyBS
ZWY8VGltaW5nRnVuY3Rpb24+IGluaXRpYWxUaW1pbmdGdW5jdGlvbigpIHsgcmV0dXJuIEN1Ymlj
QmV6aWVyVGltaW5nRnVuY3Rpb246OmNyZWF0ZSgpOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxl
L1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCmluZGV4IDJlMzA0ODMxNjg2MjU5YTY2MWZmZTYzYzNh
NDA3YmY2OTExYmE1YWIuLjg5OGRmZGVlYWM0MzVlYzEwNWZiYjAyMjczMzU1YjcyMzA1MTY3ODQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCkBAIC0x
MDU5LDggKzEwNTksNyBAQCBpbmxpbmUgYm9vbCBCdWlsZGVyQ29udmVydGVyOjpjcmVhdGVHcmlk
UG9zaXRpb24oY29uc3QgQ1NTVmFsdWUmIHZhbHVlLCBHcmlkUG9zaQogICAgIC8vIGF1dG8gfCA8
Y3VzdG9tLWlkZW50PiB8IFsgPGludGVnZXI+ICYmIDxjdXN0b20taWRlbnQ+PyBdIHwgWyBzcGFu
ICYmIFsgPGludGVnZXI+IHx8IDxjdXN0b20taWRlbnQ+IF0gXQogICAgIGlmIChpczxDU1NQcmlt
aXRpdmVWYWx1ZT4odmFsdWUpKSB7CiAgICAgICAgIGF1dG8mIHByaW1pdGl2ZVZhbHVlID0gZG93
bmNhc3Q8Q1NTUHJpbWl0aXZlVmFsdWU+KHZhbHVlKTsKLSAgICAgICAgLy8gV2UgdHJhbnNsYXRl
IDxpZGVudD4gdG8gPHN0cmluZz4gZHVyaW5nIHBhcnNpbmcgYXMgaXQgbWFrZXMgaGFuZGxpbmcg
aXQgc2ltcGxlci4KLSAgICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLmlzU3RyaW5nKCkpIHsKKyAg
ICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLmlzQ3VzdG9tSWRlbnQoKSkgewogICAgICAgICAgICAg
cG9zaXRpb24uc2V0TmFtZWRHcmlkQXJlYShwcmltaXRpdmVWYWx1ZS5zdHJpbmdWYWx1ZSgpKTsK
ICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICB9CkBAIC0xMDg5LDcgKzEwODgsNyBA
QCBpbmxpbmUgYm9vbCBCdWlsZGVyQ29udmVydGVyOjpjcmVhdGVHcmlkUG9zaXRpb24oY29uc3Qg
Q1NTVmFsdWUmIHZhbHVlLCBHcmlkUG9zaQogICAgIH0KIAogICAgIFN0cmluZyBncmlkTGluZU5h
bWU7Ci0gICAgaWYgKGN1cnJlbnRWYWx1ZSAmJiBjdXJyZW50VmFsdWUtPmlzU3RyaW5nKCkpIHsK
KyAgICBpZiAoY3VycmVudFZhbHVlICYmIGN1cnJlbnRWYWx1ZS0+aXNDdXN0b21JZGVudCgpKSB7
CiAgICAgICAgIGdyaWRMaW5lTmFtZSA9IGN1cnJlbnRWYWx1ZS0+c3RyaW5nVmFsdWUoKTsKICAg
ICAgICAgKytpdDsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZWFibGUuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVhYmxlLmNwcAppbmRleCAwZDdj
N2Q1YTA1OWJhZGI4ODE0N2Y5YTVhMWQyOTcyZGEyNDdkYzEyLi4zMDQ4YzY1MDRmM2Y3YjFhMTQ0
Yjg3ZDhiYmUxYzg2NzFmZDg5OTcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9T
dHlsZWFibGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlYWJsZS5jcHAKQEAg
LTE0MCwxMCArMTQwLDggQEAgc3RhdGljIGJvb2wgc2hvdWxkQ29uc2lkZXJBbmltYXRpb24oRWxl
bWVudCYgZWxlbWVudCwgY29uc3QgQW5pbWF0aW9uJiBhbmltYXRpb24KICAgICBpZiAoIWFuaW1h
dGlvbi5pc1ZhbGlkQW5pbWF0aW9uKCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIHN0
YXRpYyBOZXZlckRlc3Ryb3llZDxjb25zdCBTdHJpbmc+IGFuaW1hdGlvbk5hbWVOb25lKE1BS0Vf
U1RBVElDX1NUUklOR19JTVBMKCJub25lIikpOwotCi0gICAgYXV0byYgbmFtZSA9IGFuaW1hdGlv
bi5uYW1lKCk7Ci0gICAgaWYgKG5hbWUgPT0gYW5pbWF0aW9uTmFtZU5vbmUgfHwgbmFtZS5pc0Vt
cHR5KCkpCisgICAgYXV0byYgbmFtZSA9IGFuaW1hdGlvbi5uYW1lKCkuc3RyaW5nOworICAgIGlm
IChuYW1lID09ICJub25lIiB8fCBuYW1lLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogCiAgICAgaWYgKGF1dG8qIHN0eWxlU2NvcGUgPSBTdHlsZTo6U2NvcGU6OmZvck9yZGluYWwo
ZWxlbWVudCwgYW5pbWF0aW9uLm5hbWVTdHlsZVNjb3BlT3JkaW5hbCgpKSkKQEAgLTE4OSw3ICsx
ODcsNyBAQCB2b2lkIFN0eWxlYWJsZTo6dXBkYXRlQ1NTQW5pbWF0aW9ucyhjb25zdCBSZW5kZXJT
dHlsZSogY3VycmVudFN0eWxlLCBjb25zdCBSZW5kZQogCiAgICAgICAgICAgICBib29sIGZvdW5k
TWF0Y2hpbmdBbmltYXRpb24gPSBmYWxzZTsKICAgICAgICAgICAgIGZvciAoYXV0byYgcHJldmlv
dXNBbmltYXRpb24gOiBwcmV2aW91c0FuaW1hdGlvbnMpIHsKLSAgICAgICAgICAgICAgICBpZiAo
cHJldmlvdXNBbmltYXRpb24tPmFuaW1hdGlvbk5hbWUoKSA9PSBjdXJyZW50QW5pbWF0aW9uLm5h
bWUoKSkgeworICAgICAgICAgICAgICAgIGlmIChwcmV2aW91c0FuaW1hdGlvbi0+YW5pbWF0aW9u
TmFtZSgpID09IGN1cnJlbnRBbmltYXRpb24ubmFtZSgpLnN0cmluZykgewogICAgICAgICAgICAg
ICAgICAgICAvLyBUaW1pbmcgcHJvcGVydGllcyBvciBwbGF5IHN0YXRlIG1heSBoYXZlIGNoYW5n
ZWQgc28gd2UgbmVlZCB0byB1cGRhdGUgdGhlIGJhY2tpbmcgYW5pbWF0aW9uIHdpdGgKICAgICAg
ICAgICAgICAgICAgICAgLy8gdGhlIEFuaW1hdGlvbiBmb3VuZCBpbiB0aGUgY3VycmVudCBzdHls
ZS4KICAgICAgICAgICAgICAgICAgICAgcHJldmlvdXNBbmltYXRpb24tPnNldEJhY2tpbmdBbmlt
YXRpb24oY3VycmVudEFuaW1hdGlvbik7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9U
b29scy9DaGFuZ2VMb2cKaW5kZXggOTFmNDlkMDQwYTFjNDYxZjAxNjdiNjkyZGE1YjU5ZmI0NDk5
MDhhMi4uZGI4ZThlZmY4YzE0OWVmZjMwZDA5M2Q2YmVmNDY0ZTc4YmFmNmJiOSAxMDA2NDQKLS0t
IGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBA
CisyMDIxLTA2LTA2ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBI
YW5kbGUgY3VzdG9tIGlkZW50aWZpZXJzIGFuZCBzdHJpbmdzIHNlcGFyYXRlbHksIHNvIHdlIGNh
biBxdW90ZSBzdHJpbmdzIGNvcnJlY3RseSBjb25zaXN0ZW50bHkKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNjY5NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IFNhbSBXZWluaWcuCisKKyAgICAgICAgKiBUZXN0UnVubmVyU2hhcmVkL1Rlc3RGZWF0dXJl
cy5jcHA6CisgICAgICAgIChXVFI6OnBhcnNlVGVzdEhlYWRlcik6IEZpeGVkIGEgbWlzc2luZyBx
dW90ZSB0aGF0IG1hZGUgYSBsb2cgbWVzc2FnZSByZWFkIHN0cmFuZ2VseS4KKwogMjAyMS0wNi0w
NiAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFVuZXhwb3J0
IGxsdm0gY292ZXJhZ2Ugc3ltYm9scyB0byBmaXggYnVpbGQKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rl
c3RSdW5uZXJTaGFyZWQvVGVzdEZlYXR1cmVzLmNwcCBiL1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQv
VGVzdEZlYXR1cmVzLmNwcAppbmRleCA5Mjk4YTNiNTEzNTBlMDE2OTUyYmU2NWQ3ZTVmYjc3NzA4
YTNlNTQwLi5mMzBlYjA0YWE3NzMwMDQ2YjkwYWVhMjdmNDVjNjMyOTgwNzE0NDcxIDEwMDY0NAot
LS0gYS9Ub29scy9UZXN0UnVubmVyU2hhcmVkL1Rlc3RGZWF0dXJlcy5jcHAKKysrIGIvVG9vbHMv
VGVzdFJ1bm5lclNoYXJlZC9UZXN0RmVhdHVyZXMuY3BwCkBAIC0yODMsNyArMjgzLDcgQEAgc3Rh
dGljIFRlc3RGZWF0dXJlcyBwYXJzZVRlc3RIZWFkZXIoc3RkOjpmaWxlc3lzdGVtOjpwYXRoIHBh
dGgsIGNvbnN0IHN0ZDo6dW5vcmQKICAgICAgICAgYXV0byB2YWx1ZSA9IHBhaXJTdHJpbmcuc3Vi
c3RyKGVxdWFsc0xvY2F0aW9uICsgMSwgcGFpckVuZCAtIChlcXVhbHNMb2NhdGlvbiArIDEpKTsK
ICAgICAgICAgCiAgICAgICAgIGlmICghcGFyc2VUZXN0SGVhZGVyRmVhdHVyZShmZWF0dXJlcywg
a2V5LCB2YWx1ZSwgcGF0aCwga2V5VHlwZU1hcCkpCi0gICAgICAgICAgICBMT0dfRVJST1IoIlVu
a25vd24ga2V5LCAnJXMsIGluIHRlc3QgaGVhZGVyIGluICVzIiwga2V5LmNfc3RyKCksIHBhdGgu
Y19zdHIoKSk7CisgICAgICAgICAgICBMT0dfRVJST1IoIlVua25vd24ga2V5LCAnJXMnLCBpbiB0
ZXN0IGhlYWRlciBpbiAlcyIsIGtleS5jX3N0cigpLCBwYXRoLmNfc3RyKCkpOwogICAgICAgICAK
ICAgICAgICAgcGFpclN0YXJ0ID0gcGFpckVuZCArIDE7CiAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDc2NDE0ZGE0
ZDYzMWNkNTM5NGMwZGJhMmNiYWQ0ZWIwMmJiYjA3NGMuLjE2YzMyYzQ5YWI2ZmUzMTA5MWE2OTBh
ZDAwMTM5YzllZDYyYTBmYjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NCBAQAorMjAyMS0wNi0wNiAgRGFy
aW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgSGFuZGxlIGN1c3RvbSBpZGVu
dGlmaWVycyBhbmQgc3RyaW5ncyBzZXBhcmF0ZWx5LCBzbyB3ZSBjYW4gcXVvdGUgc3RyaW5ncyBj
b3JyZWN0bHkgY29uc2lzdGVudGx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMjY2OTQKKworICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgor
CisgICAgICAgICogVGVzdEV4cGVjdGF0aW9uczogUmVtb3ZlZCBleHBlY3RlZCBmYWlsdXJlcyBm
cm9tIDEzIGNzcy1jb3VudGVyLXN0eWxlcyB0ZXN0cyB0aGF0IGFyZSBub3QKKyAgICAgICAgY3Vy
cmVudGx5IGZhaWxpbmcuIEkgaGFkIHBsYW5uZWQgdG8gd29yayBvbiBtYWtpbmcgbW9yZSBvZiB0
aGVzZSBwYXNzLCBidXQgZmlyc3QgZm91bmQgSSBjb3VsZAorICAgICAgICBmaXggdGhlbSB3aXRo
IGEgY29ycmVjdGVkIGN1c3RvbS1pZGVudCBpbXBsZW1lbnRhdGlvbi4KKworICAgICAgICAqIGNz
czMvc3VwcG9ydHMtZXhwZWN0ZWQudHh0OiBSZWJhc2VkLgorICAgICAgICAqIGNzczMvc3VwcG9y
dHMuaHRtbDogVXBkYXRlZCB0byBleHBlY3QgdGhlIHZhbHVlIG9mIHRoZSBjb250ZW50IHByb3Bl
cnR5IHRvIGJlIGEgcXVvdGVkIHN0cmluZywKKyAgICAgICAgcmF0aGVyIHRoYW4gdGhlIG9sZCBi
ZWhhdmlvciwgd2hpY2ggd2FzIHRvIGxlYXZlIHRoZSBzdHJpbmcgdW5xdW90ZWQgaWYgaXQgaGFw
cGVuZWQgdG8gYmUgYQorICAgICAgICBzdHJpbmcgd2l0aCBhbGwgY2hhcmFjdGVycyBsZWdhbCBm
b3IgYSBjdXN0b20taWRlbnQuIE5ldyBleHBlY3RhdGlvbiBpcyB0aGUgY29ycmVjdCBiZWhhdmlv
ci4KKworICAgICAgICAqIGZhc3QvY3NzL2FsdC1pbmhlcml0LWluaXRpYWwtZXhwZWN0ZWQudHh0
OiBSZWJhc2VkLgorICAgICAgICAqIGZhc3QvY3NzL2FsdC1pbmhlcml0LWluaXRpYWwuaHRtbDog
VXBkYXRlZCB0byBleHBlY3QgdGhlIHZhbHVlIG9mIHRoZSBsYW5ndWFnZSBwcm9wZXJ0eSB0byBi
ZQorICAgICAgICBhIGN1c3RvbS1pZGVudCwgYW5kIHNlcmlhbGl6ZSB1bnVzdWFsIGNhc2VzIHdp
dGggY3VzdG9tLWlkZW50IHJ1bGVzLCBub3QgYXMgYSBxdW90ZWQgc3RyaW5nLiBOZXcKKyAgICAg
ICAgZXhwZWN0YXRpb24gaXMgdGhlIGNvcnJlY3QgYmVoYXZpb3IuCisgICAgICAgICogZmFzdC9j
c3MvY29udGVudC1sYW5ndWFnZS1jb21tYS1zZXBhcmF0ZWQtbGlzdC1leHBlY3RlZC50eHQ6IERp
dHRvLgorICAgICAgICAqIGZhc3QvY3NzL2NvbnRlbnQtbGFuZ3VhZ2UtZW1wdHktZXhwZWN0ZWQu
dHh0OiBEaXR0by4KKyAgICAgICAgKiBmYXN0L2Nzcy9jb250ZW50LWxhbmd1YWdlLW9ubHktd2hp
dGVzcGFjZS1leHBlY3RlZC50eHQ6IERpdHRvLgorICAgICAgICAqIGZhc3QvY3NzL2NvbnRlbnQt
bGFuZ3VhZ2Utd2l0aC13aGl0ZXNwYWNlLWV4cGVjdGVkLnR4dDogRGl0dG8uCisKKyAgICAgICAg
KiBmYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXByb3BlcnRpZXMtZXhw
ZWN0ZWQudHh0OiBSZWJhc2VkLgorICAgICAgICAqIGZhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUv
Y29tcHV0ZWQtc3R5bGUtcHJvcGVydGllcy5odG1sOiBFeHBlY3QgY29udGVudCBzdHJpbmcgKHNl
ZSBhYm92ZSkuCisKKyAgICAgICAgKiBmYXN0L2Nzcy9sYW5nLW1hcHBlZC10by13ZWJraXQtbG9j
YWxlLWV4cGVjdGVkLnR4dDogUmViYXNlZC4KKyAgICAgICAgKiBmYXN0L2Nzcy9sYW5nLW1hcHBl
ZC10by13ZWJraXQtbG9jYWxlLnhodG1sOiBFeHBlY3QgbGFuZ3VhZ2UgY3VzdG9tLWlkZW50IChz
ZWUgYWJvdmUpLgorCisgICAgICAgICogZmFzdC9jc3MvbmVzdGVkLWF0LXJ1bGVzLWV4cGVjdGVk
LnR4dDogUmViYXNlZC4KKyAgICAgICAgKiBmYXN0L2Nzcy9uZXN0ZWQtYXQtcnVsZXMuaHRtbDog
RXhwZWN0IGNvbnRlbnQgc3RyaW5nIChzZWUgYWJvdmUpLgorCisgICAgICAgICogZmFzdC9jc3Mv
cGFyc2luZy10ZXh0LWVtcGhhc2lzLWV4cGVjdGVkLnR4dDogUmViYXNlZC4KKyAgICAgICAgKiBm
YXN0L2Nzcy9wYXJzaW5nLXRleHQtZW1waGFzaXMuaHRtbDogVXBkYXRlZCB0byBleHBlY3Qgc3Ry
aW5ncyB0byByZW1haW5nIHF1b3RlZCBzdHJpbmdzIGluCisgICAgICAgIHRoZSB0ZXh0LWVtcGhh
c2lzIHByb3BlcnR5LCBub3QgY2hhbmdlIGludG8gY3VzdG9tLWlkZW50IGlmIGFsbCBjaGFyYWN0
ZXJzIGhhcHBlbiB0byBmaXQuCisKKyAgICAgICAgKiBmYXN0L2VuY29kaW5nL2Nzcy1jaGFyc2V0
LWRlZmF1bHQtZXhwZWN0ZWQudHh0OiBFeHBlY3QgY29udGVudCBzdHJpbmcgKHNlZSBhYm92ZSku
CisgICAgICAgICogaW5zcGVjdG9yL2Nzcy9wc2V1ZG8tZWxlbWVudC1tYXRjaGVzLWZvci1wc2V1
ZG8tZWxlbWVudC1ub2RlLWV4cGVjdGVkLnR4dDogRGl0dG8uCisKIDIwMjEtMDYtMDYgIEFsYW4g
QnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW1RGQ10gQWRvcHQgYSBs
ZXNzIHF1aXJreSBmaXhlZCBjb2x1bW4gd2lkdGggc3BhY2UgZGlzdHJpYnV0aW9uCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCA5ZTc4NDlmODExYzdkNGIwOWQ4MGY0OTU5NzEzNDE4
MjMxZmY1ZTlhLi5hYzJmNTRjMTliYjRmY2VjMmE1NzkwMGNlZGM0NTI2OWQ3YjJlZjU3IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNSBAQAorMjAyMS0wNi0wNiAg
RGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgSGFuZGxlIGN1c3RvbSBp
ZGVudGlmaWVycyBhbmQgc3RyaW5ncyBzZXBhcmF0ZWx5LCBzbyB3ZSBjYW4gcXVvdGUgc3RyaW5n
cyBjb3JyZWN0bHkgY29uc2lzdGVudGx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjY2OTQKKworICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2Vpbmln
LgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9wYXJz
aW5nL2FuaW1hdGlvbi1uYW1lLXZhbGlkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jb3VudGVyLXN0eWxlLW5lZ2F0aXZl
LXN5bnRheC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtY291bnRlci1zdHlsZXMvY291bnRlci1zdHlsZS1wYWQtc3ludGF4LWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jb3Vu
dGVyLXN0eWxlLXByZWZpeC1zdWZmaXgtc3ludGF4LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jb3VudGVyLXN0eWxlLXN5
bWJvbHMtc3ludGF4LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3JpZC1hcmVhLWNvbXB1dGVkLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3JpZC1hcmVh
LXNob3J0aGFuZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtZ3JpZC9wYXJzaW5nL2dyaWQtYXJlYS12YWxpZC1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtbGlzdHMvcGFyc2luZy9jb250ZW50LWludmFs
aWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXRy
YW5zaXRpb25zL3RyYW5zaXRpb24tcHJvcGVydHktMDAyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtcHNldWRvLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL3Nlcmlh
bGl6ZS12YWx1ZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICBSZWJhc2VkIHRvIHJlZmxlY3QgcHJv
Z3Jlc3Npb25zLiBJbiBzb21lIGNhc2VzIHRoZSBlbnRpcmUgdGVzdCBwYXNzZXMsIGluIG90aGVy
IGNhc2VzIHdlIHN0aWxsCisgICAgICAgIGhhdmUgZmFpbHVyZXMsIGJ1dCB0aGUgc3RyaW5nIHNl
cmlhbGl6YXRpb24gcGFydCBvZiB0aGUgdGVzdCBoYXMgcHJvZ3Jlc3NlZC4KKwogMjAyMS0wNi0w
NCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFdvcmtlci5jb25z
dHJ1Y3RvciB0aHJvd3MgYW4gZXhjZXB0aW9uIHdoZW4gdGhlIHVybCBwYXJhbSBpcyBhbiBlbXB0
eSBzdHJpbmcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlv
dXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDNhZDI5YjE3MGJiMmJhNWVlMDQ4OWZiMjAx
ZTg1YmU4N2VjMzljY2IuLjk3NzQ4MmIyNDBkZTkxMzQzYWNjN2I4ODNiYjQzYzRmNTExN2I4MDAg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVz
dHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtNDc0MCwxMCArNDc0MCw3IEBAIHdlYmtpdC5vcmcvYi8y
MjQzNTcgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXdyaXRpbmctbW9k
ZXMvc2l6aW5nCiB3ZWJraXQub3JnL2IvMjI0MzU3IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzc29tLXZpZXcvY3Nzb20tZ2V0Qm91bmRpbmdDbGllbnRSZWN0LXZlcnRpY2Fs
LXJsLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIAogIyBAY291bnRlci1zdHlsZSByZWYgdGVz
dHMgdGhhdCBjdXJyZW50bHkgZmFpbAotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLWNvdW50ZXItc3R5bGVzL2FybWVuaWFuL2NzczMtY291bnRlci1zdHlsZXMtMDA2Lmh0
bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9hcm1lbmlhbi9jc3MzLWNvdW50ZXItc3R5bGVzLTAwNy5o
dG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtY291bnRlci1zdHlsZXMvYXJtZW5pYW4vY3NzMy1jb3VudGVyLXN0eWxlcy0wMDgu
aHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2FybWVuaWFuL2NzczMtY291bnRlci1zdHlsZXMtMDA5
Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jamstZGVjaW1hbC9jc3MzLWNvdW50ZXItc3R5bGVz
LTAwMS5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY2prLWRlY2ltYWwvY3NzMy1jb3VudGVyLXN0
eWxlcy0wMDQuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2Nqay1kZWNpbWFsL2NzczMtY291bnRl
ci1zdHlsZXMtMDA1Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KQEAgLTQ3NzIsMTAgKzQ3Njks
NiBAQCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHls
ZXMvY3Nzb20vY3Nzb20tc3ltYm9scy1zZXR0ZQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2Nzc29tL2Nzc29tLXN5c3RlbS1zZXR0ZXItMS5o
dG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY3Nzb20vY3Nzb20tc3lzdGVtLXNldHRlci0yLmh0bWwg
WyBJbWFnZU9ubHlGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1jb3VudGVyLXN0eWxlcy9jc3NvbS9jc3NvbS1zeXN0ZW0tc2V0dGVyLWludmFsaWQuaHRt
bCBbIEltYWdlT25seUZhaWx1cmUgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLWNvdW50ZXItc3R5bGVzL2dlb3JnaWFuL2NzczMtY291bnRlci1zdHlsZXMtMDEwLmh0
bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9nZW9yZ2lhbi9jc3MzLWNvdW50ZXItc3R5bGVzLTAxMS5o
dG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtY291bnRlci1zdHlsZXMvZ2VvcmdpYW4vY3NzMy1jb3VudGVyLXN0eWxlcy0wMTIu
aHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2dlb3JnaWFuL2NzczMtY291bnRlci1zdHlsZXMtMDE0
Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9oZWJyZXcvY3NzMy1jb3VudGVyLXN0eWxlcy0wMTZh
Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9oaXJhZ2FuYS1pcm9oYS9jc3MzLWNvdW50ZXItc3R5
bGVzLTAzMy5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvaGlyYWdhbmEtaXJvaGEvY3NzMy1jb3Vu
dGVyLXN0eWxlcy0wMzQuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQpAQCAtNDgxNCwxMCArNDgw
Nyw3IEBAIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0
eWxlcy9rb3JlYW4taGFuamEtaW5mb3JtYWwvY3NzCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMva29yZWFuLWhhbmphLWluZm9ybWFsL2NzczMt
Y291bnRlci1zdHlsZXMtMDU5Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9rb3JlYW4taGFuamEt
aW5mb3JtYWwvY3NzMy1jb3VudGVyLXN0eWxlcy0wNjAuaHRtbCBbIEltYWdlT25seUZhaWx1cmUg
XQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVz
L2tvcmVhbi1oYW5qYS1pbmZvcm1hbC9jc3MzLWNvdW50ZXItc3R5bGVzLTA2MS5odG1sIFsgSW1h
Z2VPbmx5RmFpbHVyZSBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mt
Y291bnRlci1zdHlsZXMvbG93ZXItYXJtZW5pYW4vY3NzMy1jb3VudGVyLXN0eWxlcy0xMTEuaHRt
bCBbIEltYWdlT25seUZhaWx1cmUgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLWNvdW50ZXItc3R5bGVzL2xvd2VyLWFybWVuaWFuL2NzczMtY291bnRlci1zdHlsZXMt
MTEyLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9sb3dlci1hcm1lbmlhbi9jc3MzLWNvdW50ZXIt
c3R5bGVzLTExNC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi1pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvbG93ZXItYXJtZW5pYW4vY3NzMy1j
b3VudGVyLXN0eWxlcy0xMTUuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2xvd2VyLXJvbWFuL2Nz
czMtY291bnRlci1zdHlsZXMtMDE5Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9sb3dlci1yb21h
bi9jc3MzLWNvdW50ZXItc3R5bGVzLTAyMC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvbG93ZXIt
cm9tYW4vY3NzMy1jb3VudGVyLXN0eWxlcy0wMjBhLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0K
QEAgLTQ4NDUsMTAgKzQ4MzUsNyBAQCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtY291bnRlci1zdHlsZXMvdHJhZC1jaGluZXNlLWluZm9ybWFsL2NzcwogaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL3RyYWQtY2hpbmVz
ZS1pbmZvcm1hbC9jc3MzLWNvdW50ZXItc3R5bGVzLTA4My5odG1sIFsgSW1hZ2VPbmx5RmFpbHVy
ZSBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHls
ZXMvdHJhZC1jaGluZXNlLWluZm9ybWFsL2NzczMtY291bnRlci1zdHlsZXMtMDg0Lmh0bWwgWyBJ
bWFnZU9ubHlGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1jb3VudGVyLXN0eWxlcy90cmFkLWNoaW5lc2UtaW5mb3JtYWwvY3NzMy1jb3VudGVyLXN0eWxl
cy0wODUuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL3VwcGVyLWFybWVuaWFuL2NzczMtY291bnRl
ci1zdHlsZXMtMTA3Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLWltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy91cHBlci1hcm1lbmlhbi9jc3Mz
LWNvdW50ZXItc3R5bGVzLTEwOC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiBpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvdXBwZXItYXJtZW5p
YW4vY3NzMy1jb3VudGVyLXN0eWxlcy0xMDkuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL3VwcGVy
LWFybWVuaWFuL2NzczMtY291bnRlci1zdHlsZXMtMTEwLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJl
IF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxl
cy91cHBlci1yb21hbi9jc3MzLWNvdW50ZXItc3R5bGVzLTAyMy5odG1sIFsgSW1hZ2VPbmx5RmFp
bHVyZSBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1z
dHlsZXMvdXBwZXItcm9tYW4vY3NzMy1jb3VudGVyLXN0eWxlcy0wMjQuaHRtbCBbIEltYWdlT25s
eUZhaWx1cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50
ZXItc3R5bGVzL3VwcGVyLXJvbWFuL2NzczMtY291bnRlci1zdHlsZXMtMDI0YS5odG1sIFsgSW1h
Z2VPbmx5RmFpbHVyZSBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL3N1cHBvcnRzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvc3VwcG9ydHMtZXhwZWN0ZWQudHh0CmluZGV4
IGIxODJhYzE4ZWM3NTkyMDY1ZDMwYjQyOGMwMjJhOTBlOTBmMzVjOWYuLmVkZDQwMmU5NWI3ZjVl
YjVmZmY5Nzg4OTU2MDcwOTQ4YjAzZWVlOGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2NzczMv
c3VwcG9ydHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2NzczMvc3VwcG9ydHMtZXhw
ZWN0ZWQudHh0CkBAIC0zLDUxICszLDUxIEBAIFRlc3QgdGhlIEBzdXBwb3J0cyBydWxlLgogT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCiAKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgndDAnKSkuY29udGVudCBpcyAiQVBQTElFRCIKLVBBU1MgZ2V0Q29t
cHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDEnKSkuY29udGVudCBpcyAiVU5U
T1VDSEVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0
MicpKS5jb250ZW50IGlzICJBUFBMSUVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCd0MycpKS5jb250ZW50IGlzICJVTlRPVUNIRUQiCi1QQVNTIGdldENv
bXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Q0JykpLmNvbnRlbnQgaXMgIkFQ
UExJRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Q1
JykpLmNvbnRlbnQgaXMgIlVOVE9VQ0hFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgndDYnKSkuY29udGVudCBpcyAiQVBQTElFRCIKLVBBU1MgZ2V0Q29t
cHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDcnKSkuY29udGVudCBpcyAiQVBQ
TElFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDgn
KSkuY29udGVudCBpcyAiVU5UT1VDSEVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCd0OScpKS5jb250ZW50IGlzICJBUFBMSUVEIgotUEFTUyBnZXRDb21w
dXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MTAnKSkuY29udGVudCBpcyAiQVBQ
TElFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDEx
JykpLmNvbnRlbnQgaXMgIkFQUExJRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ3QxMicpKS5jb250ZW50IGlzICJVTlRPVUNIRUQiCi1QQVNTIGdldENv
bXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QxMycpKS5jb250ZW50IGlzICJV
TlRPVUNIRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3QxNCcpKS5jb250ZW50IGlzICJVTlRPVUNIRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QxNScpKS5jb250ZW50IGlzICJBUFBMSUVEIgotUEFTUyBn
ZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MTYnKSkuY29udGVudCBp
cyAiQVBQTElFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgndDE3JykpLmNvbnRlbnQgaXMgIkFQUExJRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QxOCcpKS5jb250ZW50IGlzICJVTlRPVUNIRUQiCi1QQVNT
IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QxOScpKS5jb250ZW50
IGlzICJBUFBMSUVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd0MjAnKSkuY29udGVudCBpcyAiQVBQTElFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDIxJykpLmNvbnRlbnQgaXMgIkFQUExJRUQiCi1QQVNT
IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QyMicpKS5jb250ZW50
IGlzICJBUFBMSUVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd0MjMnKSkuY29udGVudCBpcyAiQVBQTElFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDI0JykpLmNvbnRlbnQgaXMgIkFQUExJRUQiCi1QQVNT
IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QyNScpKS5jb250ZW50
IGlzICJBUFBMSUVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd0MjYnKSkuY29udGVudCBpcyAiQVBQTElFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDI3JykpLmNvbnRlbnQgaXMgIkFQUExJRUQiCi1QQVNT
IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QyOCcpKS5jb250ZW50
IGlzICJVTlRPVUNIRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3QyOScpKS5jb250ZW50IGlzICJVTlRPVUNIRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5
bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QzMCcpKS5jb250ZW50IGlzICJBUFBMSUVEIgot
UEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MzEnKSkuY29u
dGVudCBpcyAiQVBQTElFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgndDMyJykpLmNvbnRlbnQgaXMgIkFQUExJRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5
bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QzMycpKS5jb250ZW50IGlzICJBUFBMSUVEIgot
UEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MzQnKSkuY29u
dGVudCBpcyAiVU5UT1VDSEVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCd0MzUnKSkuY29udGVudCBpcyAiQVBQTElFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRT
dHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDM2JykpLmNvbnRlbnQgaXMgIlVOVE9VQ0hF
RCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDM3Jykp
LmNvbnRlbnQgaXMgIkFQUExJRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3QzOCcpKS5jb250ZW50IGlzICJBUFBMSUVEIgotUEFTUyBnZXRDb21wdXRl
ZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MzknKSkuY29udGVudCBpcyAiQVBQTElF
RCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDQwJykp
LmNvbnRlbnQgaXMgIkFQUExJRUQiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3Q0MScpKS5jb250ZW50IGlzICJBUFBMSUVEIgotUEFTUyBnZXRDb21wdXRl
ZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0NDInKSkuY29udGVudCBpcyAiQVBQTElF
RCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDQzJykp
LmNvbnRlbnQgaXMgIlVOVE9VQ0hFRCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgndDQ0JykpLmNvbnRlbnQgaXMgIlVOVE9VQ0hFRCIKK1BBU1MgZ2V0Q29t
cHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDAnKSkuY29udGVudCBpcyAiXCJB
UFBMSUVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3QxJykpLmNvbnRlbnQgaXMgIlwiVU5UT1VDSEVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUo
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QyJykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgor
UEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MycpKS5jb250
ZW50IGlzICJcIlVOVE9VQ0hFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCd0NCcpKS5jb250ZW50IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29t
cHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDUnKSkuY29udGVudCBpcyAiXCJV
TlRPVUNIRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgndDYnKSkuY29udGVudCBpcyAiXCJBUFBMSUVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUo
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Q3JykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgor
UEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0OCcpKS5jb250
ZW50IGlzICJcIlVOVE9VQ0hFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCd0OScpKS5jb250ZW50IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29t
cHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDEwJykpLmNvbnRlbnQgaXMgIlwi
QVBQTElFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCd0MTEnKSkuY29udGVudCBpcyAiXCJBUFBMSUVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUo
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QxMicpKS5jb250ZW50IGlzICJcIlVOVE9VQ0hFRFwi
IgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MTMnKSku
Y29udGVudCBpcyAiXCJVTlRPVUNIRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgndDE0JykpLmNvbnRlbnQgaXMgIlwiVU5UT1VDSEVEXCIiCitQQVNT
IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QxNScpKS5jb250ZW50
IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgndDE2JykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRDb21wdXRl
ZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MTcnKSkuY29udGVudCBpcyAiXCJBUFBM
SUVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Qx
OCcpKS5jb250ZW50IGlzICJcIlVOVE9VQ0hFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MTknKSkuY29udGVudCBpcyAiXCJBUFBMSUVEXCIiCitQ
QVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QyMCcpKS5jb250
ZW50IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgndDIxJykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRDb21w
dXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MjInKSkuY29udGVudCBpcyAiXCJB
UFBMSUVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3QyMycpKS5jb250ZW50IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDI0JykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgor
UEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MjUnKSkuY29u
dGVudCBpcyAiXCJBUFBMSUVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3QyNicpKS5jb250ZW50IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29t
cHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDI3JykpLmNvbnRlbnQgaXMgIlwi
QVBQTElFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCd0MjgnKSkuY29udGVudCBpcyAiXCJVTlRPVUNIRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHls
ZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDI5JykpLmNvbnRlbnQgaXMgIlwiVU5UT1VDSEVE
XCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QzMCcp
KS5jb250ZW50IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgndDMxJykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBn
ZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MzInKSkuY29udGVudCBp
cyAiXCJBUFBMSUVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3QzMycpKS5jb250ZW50IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRT
dHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDM0JykpLmNvbnRlbnQgaXMgIlwiVU5UT1VD
SEVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Qz
NScpKS5jb250ZW50IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgndDM2JykpLmNvbnRlbnQgaXMgIlwiVU5UT1VDSEVEXCIiCitQ
QVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QzNycpKS5jb250
ZW50IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgndDM4JykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRDb21w
dXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MzknKSkuY29udGVudCBpcyAiXCJB
UFBMSUVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3Q0MCcpKS5jb250ZW50IGlzICJcIkFQUExJRURcIiIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgndDQxJykpLmNvbnRlbnQgaXMgIlwiQVBQTElFRFwiIgor
UEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0NDInKSkuY29u
dGVudCBpcyAiXCJBUFBMSUVEXCIiCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3Q0MycpKS5jb250ZW50IGlzICJcIlVOVE9VQ0hFRFwiIgorUEFTUyBnZXRD
b21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0NDQnKSkuY29udGVudCBpcyAi
XCJVTlRPVUNIRURcIiIKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBD
T01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9zdXBwb3J0cy5odG1sIGIvTGF5
b3V0VGVzdHMvY3NzMy9zdXBwb3J0cy5odG1sCmluZGV4IDYwYWUyNTZhYjU5NjU2OGMyZGQ4MDM4
Mzk2MmNjODY4ODgzMmE1OWYuLjdkNWMxZTE4NGNhMjgyODJhZThiNTY5OGFlZDcwYzc4NGFjMjU5
YjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvc3VwcG9ydHMuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9jc3MzL3N1cHBvcnRzLmh0bWwKQEAgLTIzOSw3ICsyMzksNyBAQAogICAgICAgICBk
aXYuaWQgPSAidCIgKyBpOwogICAgICAgICBkaXYuY2xhc3NOYW1lID0gInRlc3QiOwogICAgICAg
ICBjb250YWluZXIuYXBwZW5kQ2hpbGQoZGl2KTsKLSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0IitpKyInKSku
Y29udGVudCIsIHVudG91Y2hlZFRlc3RzLmluZGV4T2YoaSkgPj0gMCA/ICJVTlRPVUNIRUQiIDog
IkFQUExJRUQiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJnZXRDb21wdXRlZFN0
eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0IitpKyInKSkuY29udGVudCIsIHVudG91Y2hl
ZFRlc3RzLmluZGV4T2YoaSkgPj0gMCA/ICciVU5UT1VDSEVEIicgOiAnIkFQUExJRUQiJyk7CiAg
ICAgfQogCiAgICAgdGVzdF9jb250YWluZXIucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0ZXN0X2Nv
bnRhaW5lcik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9hbHQtaW5oZXJpdC1p
bml0aWFsLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2FsdC1pbmhlcml0LWlu
aXRpYWwtZXhwZWN0ZWQudHh0CmluZGV4IDliYzEzNTIwYzIwYWU3NWI0NDFhYWRiZTIzYmVlMGRl
ZmIyMThhZTcuLjczYWM0YjkzNGU3M2FkY2Q2NzdjNmQ4NTY3ODM4ODY3ZWQwMzJlNTIgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2FsdC1pbmhlcml0LWluaXRpYWwtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2FsdC1pbmhlcml0LWluaXRpYWwtZXhwZWN0
ZWQudHh0CkBAIC00LDExICs0LDExIEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFCiAKIAogUEFT
UyBwYXJlbnREaXYuc3R5bGVbJ2FsdCddIGlzICIiCi1QQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0
eWxlKHBhcmVudERpdikuZ2V0UHJvcGVydHlWYWx1ZSgnYWx0JykgaXMgIlRlc3RBbHQiCitQQVNT
IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHBhcmVudERpdikuZ2V0UHJvcGVydHlWYWx1ZSgnYWx0
JykgaXMgIlwiVGVzdEFsdFwiIgogUEFTUyB0ZXN0RGl2LnN0eWxlWydhbHQnXSBpcyAiIgogdGVz
dERpdi5zdHlsZVsnYWx0J10gPSAnaW5oZXJpdCcKIFBBU1MgdGVzdERpdi5zdHlsZVsnYWx0J10g
aXMgImluaGVyaXQiCi1QQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHRlc3REaXYpLmdldFBy
b3BlcnR5VmFsdWUoJ2FsdCcpIGlzICJUZXN0QWx0IgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRT
dHlsZSh0ZXN0RGl2KS5nZXRQcm9wZXJ0eVZhbHVlKCdhbHQnKSBpcyAiXCJUZXN0QWx0XCIiCiB0
ZXN0RGl2LnN0eWxlWydhbHQnXSA9ICdpbml0aWFsJwogUEFTUyB0ZXN0RGl2LnN0eWxlWydhbHQn
XSBpcyAiaW5pdGlhbCIKIFBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUodGVzdERpdikuZ2V0
UHJvcGVydHlWYWx1ZSgnYWx0JykgaXMgIlwiXCIiCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy9hbHQtaW5oZXJpdC1pbml0aWFsLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9h
bHQtaW5oZXJpdC1pbml0aWFsLmh0bWwKaW5kZXggMmVjNzkyOGQwM2RkZTNhYzUwMmI4MjE5NGIz
ZDMwYjliZTdlMzBjNC4uNDhjZWIwMmQ4OTlhNGY4ZWNmZGMwMWFlNjYyNTY0ZjQ0OTk3NTY5YiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvYWx0LWluaGVyaXQtaW5pdGlhbC5odG1s
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2FsdC1pbmhlcml0LWluaXRpYWwuaHRtbApAQCAt
MTksMTMgKzE5LDEzIEBAIGRlc2NyaXB0aW9uKCJUZXN0cyBpbmhlcml0IGFuZCBpbml0aWFsIG9u
ICdhbHQnIENTUyBwcm9wZXJ0eS4iKTsKIHZhciBwYXJlbnREaXYgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicGFyZW50RGl2Iik7CiB2YXIgdGVzdERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0ZXN0RGl2Iik7CiBzaG91bGRCZUVtcHR5U3RyaW5nKCJwYXJlbnREaXYuc3R5bGVbJ2Fs
dCddIiwgIiIpOwotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHls
ZShwYXJlbnREaXYpLmdldFByb3BlcnR5VmFsdWUoJ2FsdCcpIiwgIlRlc3RBbHQiKTsKK3Nob3Vs
ZEJlRXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5bGUocGFyZW50RGl2KS5nZXRQ
cm9wZXJ0eVZhbHVlKCdhbHQnKSIsICciVGVzdEFsdCInKTsKIHNob3VsZEJlRW1wdHlTdHJpbmco
InRlc3REaXYuc3R5bGVbJ2FsdCddIik7CiAKIC8vIEluaGVyaXQuCiBldmFsQW5kTG9nKCJ0ZXN0
RGl2LnN0eWxlWydhbHQnXSA9ICdpbmhlcml0JyIpOwogc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ0
ZXN0RGl2LnN0eWxlWydhbHQnXSIsICJpbmhlcml0Iik7Ci1zaG91bGRCZUVxdWFsVG9TdHJpbmco
IndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHRlc3REaXYpLmdldFByb3BlcnR5VmFsdWUoJ2FsdCcp
IiwgIlRlc3RBbHQiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVk
U3R5bGUodGVzdERpdikuZ2V0UHJvcGVydHlWYWx1ZSgnYWx0JykiLCAnIlRlc3RBbHQiJyk7CiAK
IC8vIEluaXRpYWwuCiBldmFsQW5kTG9nKCJ0ZXN0RGl2LnN0eWxlWydhbHQnXSA9ICdpbml0aWFs
JyIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvY29udGVudC1sYW5ndWFnZS1j
b21tYS1zZXBhcmF0ZWQtbGlzdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9j
b250ZW50LWxhbmd1YWdlLWNvbW1hLXNlcGFyYXRlZC1saXN0LWV4cGVjdGVkLnR4dAppbmRleCAy
YjMxZjc0MWExNjgwZjcxZThkMzFhNWI0ZmY5OTZkMTYwZWQ0ODVhLi5lZGEzMjQ5YWUwNGMzN2Iy
YTMxZDM0OTAwMzkyNzAyNzVhNzMzZDIyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy9jb250ZW50LWxhbmd1YWdlLWNvbW1hLXNlcGFyYXRlZC1saXN0LWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9jb250ZW50LWxhbmd1YWdlLWNvbW1hLXNlcGFyYXRlZC1s
aXN0LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIFRlc3QgZm9yIGJ1ZyA3NjcwMTogbWFw
IEhUVFAtRVFVSVYgY29udGVudC1sYW5ndWFnZSB0byAtd2Via2l0LWxvY2FsZS4gVGhpcyBwYXJ0
aWN1bGFyIHRlc3QgdGVzdHMgdGhhdCBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIGxhbmd1YWdl
cyBpcyBpZ25vcmVkLiBUaGlzIGV4cGVjdGF0aW9uIG1heSBjaGFuZ2UsIHNlZSBidWcuIFRoZSBI
VE1MNSBzcGVjIHNheXMgdGhhdCBjb250ZW50LWxhbmd1YWdlIHNob3VsZCBub3QgaGF2ZSBtdWx0
aXBsZSBsYW5ndWFnZXMsIGFuZCBkZWNyZWVzIHRoYXQgYSBjb250ZW50LWxhbmd1YWdlIGNvbnRh
aW5pbmcgYSBjb21tYSBiZSBpZ25vcmVkOyB0aGlzIHBvc2l0aW9uIGhhcyBiZWVuIHVwaGVsZCBm
b2xsb3dpbmcgc2lnbmlmaWNhbnQgZGViYXRlLiBGaXJlZm94IGFjY2VwdHMgYSBjb21tYS1zZXBh
cmF0ZWQgbGlzdCBhbmQgYSBDU1MgOmxhbmcgc2VsZWN0b3IgZm9yIGFueSBsYW5ndWFnZSBpbiB0
aGUgbGlzdCBpcyBtYXRjaGVkLiBJdCdzIHVuY2xlYXIgd2hhdCBJRSBkb2VzLgogCi1GQUlMIGxh
bmd1YWdlT2ZOb2RlKCd4Jykgc2hvdWxkIGJlIGF1dG8uIFdhcyAiamEsIHpoX0NOIi4KK0ZBSUwg
bGFuZ3VhZ2VPZk5vZGUoJ3gnKSBzaG91bGQgYmUgYXV0by4gV2FzIGphXCxcIHpoX0NOLgogUEFT
UyBsYW5ndWFnZU9mTm9kZSgneScpIGlzICJhciIKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvY29udGVudC1sYW5ndWFn
ZS1lbXB0eS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9jb250ZW50LWxhbmd1
YWdlLWVtcHR5LWV4cGVjdGVkLnR4dAppbmRleCAzMzdiOGMwMzVlZDhlNzQ2YzNkNGJiNDI1YzFm
NTE3YzdhMmMyNGFhLi40ZTY3MjFhODc0NzFiYzFhNDFiNTZiNWY5ZWQ5OTQ0ZjJkZjkxOTk2IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9jb250ZW50LWxhbmd1YWdlLWVtcHR5LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9jb250ZW50LWxhbmd1YWdlLWVt
cHR5LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIFRlc3QgZm9yIGJ1ZyA3NjcwMTogbWFw
IEhUVFAtRVFVSVYgY29udGVudC1sYW5ndWFnZSB0byAtd2Via2l0LWxvY2FsZS4gVGhpcyBwYXJ0
aWN1bGFyIHRlc3QgdGVzdHMgdGhhdCBhIGNvbnRlbnQtbGFuZ3VhZ2Ugb2YgZW1wdHkgc3RyaW5n
IGlzIGlnbm9yZWQuIFRoaXMgZXhwZWN0YXRpb24gbWF5IGNoYW5nZSwgc2VlIGJ1Zy4gSFRNTDUg
ZGVjcmVlcyB0aGF0IHRoZSBtZXRhIGVsZW1lbnQgYmUgaWdub3JlZCBpbiBjYXNlIG9mIHRoZSBl
bXB0eSBzdHJpbmcuIEl0J3MgdW5jbGVhciB3aGF0IG90aGVyIGJyb3dzZXJzIGRvLgogCi1GQUlM
IGxhbmd1YWdlT2ZOb2RlKCd4Jykgc2hvdWxkIGJlIGF1dG8uIFdhcyAiIi4KK0ZBSUwgbGFuZ3Vh
Z2VPZk5vZGUoJ3gnKSBzaG91bGQgYmUgYXV0by4gV2FzIC4KIFBBU1MgbGFuZ3VhZ2VPZk5vZGUo
J3knKSBpcyAiYXIiCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2NvbnRlbnQtbGFuZ3VhZ2Utb25seS13aGl0ZXNwYWNl
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2NvbnRlbnQtbGFuZ3VhZ2Utb25s
eS13aGl0ZXNwYWNlLWV4cGVjdGVkLnR4dAppbmRleCAzYWJlMjUzNTMwM2M2Y2FkYTAzOWRiYmZm
YTg0MTYzNDM0Yjk2YThkLi5kM2RlOGRjY2U2YjcxZmMxZTMzZmViNjdiZjQxYTUxOTBmMTgyMDBk
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9jb250ZW50LWxhbmd1YWdlLW9ubHkt
d2hpdGVzcGFjZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvY29udGVu
dC1sYW5ndWFnZS1vbmx5LXdoaXRlc3BhY2UtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAog
VGVzdCBmb3IgYnVnIDc2NzAxOiBtYXAgSFRUUC1FUVVJViBjb250ZW50LWxhbmd1YWdlIHRvIC13
ZWJraXQtbG9jYWxlLiBUaGlzIHBhcnRpY3VsYXIgdGVzdCB0ZXN0cyB0aGF0IGEgY29udGVudC1s
YW5ndWFnZSB3aXRoIHdoaXRlc3BhY2Utb25seSBjb250ZW50IGlzIGlnbm9yZWQuIFRoaXMgZXhw
ZWN0YXRpb24gbWF5IGNoYW5nZSwgc2VlIGJ1Zy4gSFRNTDUgZGVjcmVlcyB0aGF0IHRoZSBtZXRh
IGVsZW1lbnQgYmUgaWdub3JlZCBpbiBjYXNlIG9mIHdoaXRlc3BhY2Ugb25seSBjb250ZW50LiBJ
dCdzIHVuY2xlYXIgd2hhdCBvdGhlciBicm93c2VycyBkby4KIAotRkFJTCBsYW5ndWFnZU9mTm9k
ZSgneCcpIHNob3VsZCBiZSBhdXRvLiBXYXMgIiAgXDkgXGEgICIuCitGQUlMIGxhbmd1YWdlT2ZO
b2RlKCd4Jykgc2hvdWxkIGJlIGF1dG8uIFdhcyBcIFwgXDkgXGEgXCAuCiBQQVNTIGxhbmd1YWdl
T2ZOb2RlKCd5JykgaXMgImFyIgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9jb250ZW50LWxhbmd1YWdlLXdpdGgtd2hp
dGVzcGFjZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9jb250ZW50LWxhbmd1
YWdlLXdpdGgtd2hpdGVzcGFjZS1leHBlY3RlZC50eHQKaW5kZXggMjNlYTM4MGFmNmUzY2NjMWZl
Y2E4ZDY4YWNmYjhhNmNjMDM1MzJhYS4uYjA1MTc1OTMwNzRmMGJiZjAwYTI1MDAwNmQ4ZjgzZWI1
ZDNkYTMxNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvY29udGVudC1sYW5ndWFn
ZS13aXRoLXdoaXRlc3BhY2UtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L2NvbnRlbnQtbGFuZ3VhZ2Utd2l0aC13aGl0ZXNwYWNlLWV4cGVjdGVkLnR4dApAQCAtMSw2ICsx
LDYgQEAKIFRlc3QgZm9yIGJ1ZyA3NjcwMTogbWFwIEhUVFAtRVFVSVYgY29udGVudC1sYW5ndWFn
ZSB0byAtd2Via2l0LWxvY2FsZS4gVGhpcyBwYXJ0aWN1bGFyIHRlc3QgdGVzdHMgdGhhdCB0aGUg
dGhlIHByYWdtYS1zZXQgZGVmYXVsdCBsYW5ndWFnZSBpcyBzZXQgdG8gdGhlIGZpcnN0IHNlcXVl
bmNlIG9mIG5vbi13aGl0ZXNwYWNlIGNoYXJhY3RlcnMgb2YgdGhlIGNvbnRlbnQtbGFuZ3VhZ2Ug
Y29udGVudC4gVGhpcyBleHBlY3RhdGlvbiBtYXkgY2hhbmdlLCBzZWUgYnVnLiBUaGlzIGV4cGVj
dGF0aW9uIGlzIGFzIHBlciB0aGUgSFRNTCA1IHNwZWMuIEl0IGFwcGVhcnMgdGhhdCBGaXJlZm94
IGRvZXMgbm90IGV4YWN0bHkgZG8gdGhpcywgYnV0IHRyaW1zIHRoZSBsZWFkaW5nIGFuZCB0cmFp
bGluZyB3aGl0ZXNwYWNlLiBJdCdzIHVuY2xlYXIgd2hhdCBJRSBkb2VzLgogCi1GQUlMIGxhbmd1
YWdlT2ZOb2RlKCd4Jykgc2hvdWxkIGJlIGphX0pQLiBXYXMgIiAgXGEgXDkgXDkgamEtSlAgICBc
OSAgemhfQ04gXDkgXGEgXGEgXDkgXDkgIi4KK0ZBSUwgbGFuZ3VhZ2VPZk5vZGUoJ3gnKSBzaG91
bGQgYmUgamFfSlAuIFdhcyBcIFwgXGEgXDkgXDkgamEtSlBcIFwgXCBcOSBcIHpoX0NOXCBcOSBc
YSBcYSBcOSBcOSAuCiBQQVNTIGxhbmd1YWdlT2ZOb2RlKCd5JykgaXMgImFyIgogUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1w
cm9wZXJ0aWVzLWV4cGVjdGVkLnR4dAppbmRleCA3NWQ2NDZlOWIyOGVkOTVjMWM2OWE1YWM0YmJi
NjA2MTQxMGI3NDE4Li41YTE0OWI2ZmUyYjQ5Y2M3MmYyYzE2NDVkMTM2NTg3MmUxYTQxNDdiIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVk
LXN0eWxlLXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUtcHJvcGVydGllcy1leHBlY3RlZC50eHQK
QEAgLTEwLDcgKzEwLDcgQEAgU3ViaGVhZGluZyBCCiBIZWFkaW5nIEIKIAogUEFTUyBjb21wdXRl
ZFN0eWxlRm9yKCdvdXRsaW5lJywgbnVsbCwgJ291dGxpbmUtb2Zmc2V0JykgaXMgJzVweCcKLVBB
U1MgY29tcHV0ZWRTdHlsZUZvcignY29udGVudCcsICdiZWZvcmUnLCAnY29udGVudCcpIGlzICJ0
ZXh0IgorUEFTUyBjb21wdXRlZFN0eWxlRm9yKCdjb250ZW50JywgJ2JlZm9yZScsICdjb250ZW50
JykgaXMgIlwidGV4dFwiIgogUEFTUyBjb21wdXRlZFN0eWxlRm9yKCdjb250ZW50JywgJ2FmdGVy
JywgJ2NvbnRlbnQnKSBpcyAiXCJ0ZXN0IFwiIHVybChcImRhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxS
MGxHT0RsaEFRQUJBSkFBQVA4QUFBQUFBQ3dBQUFBQUFRQUJBQUFDQWdRQkFEcz1cIikiCiBQQVNT
IGNvbXB1dGVkU3R5bGVGb3IoJ2NvdW50ZXInLCBudWxsLCAnY291bnRlci1yZXNldCcpIGlzICJz
ZWN0aW9uIDAiCiBQQVNTIHN0ci5pbmRleE9mKCdzdWJzZWN0aW9uIDAnKSAhPSAtMSBpcyB0cnVl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1
dGVkLXN0eWxlLXByb3BlcnRpZXMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1
dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUtcHJvcGVydGllcy5odG1sCmluZGV4IDU3MWM2ODZlMDg0
Zjc0M2IzZjJmMjhmMDJjZGJmYzNjNTYwNDViYmYuLjFmMjliNjg0Y2RiZjIzOGM1NTFmMDQ2MTBi
NmRjMTM2ZTk5N2NkY2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1
dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUtcHJvcGVydGllcy5odG1sCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUtcHJvcGVydGllcy5odG1s
CkBAIC02NSw3ICs2NSw3IEBAIGZ1bmN0aW9uIGNvbXB1dGVkU3R5bGVGb3IoaWQsIHBzZXVkbywg
cHJvcGVydHkpCiAKIHNob3VsZEJlKCJjb21wdXRlZFN0eWxlRm9yKCdvdXRsaW5lJywgbnVsbCwg
J291dGxpbmUtb2Zmc2V0JykiLCAiJzVweCciKTsKIAotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJj
b21wdXRlZFN0eWxlRm9yKCdjb250ZW50JywgJ2JlZm9yZScsICdjb250ZW50JykiLCAidGV4dCIp
Oworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJjb21wdXRlZFN0eWxlRm9yKCdjb250ZW50JywgJ2Jl
Zm9yZScsICdjb250ZW50JykiLCAnInRleHQiJyk7CiBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImNv
bXB1dGVkU3R5bGVGb3IoJ2NvbnRlbnQnLCAnYWZ0ZXInLCAnY29udGVudCcpIiwgYCJ0ZXN0ICIg
dXJsKFwiZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoQVFBQkFKQUFBUDhBQUFBQUFDd0FB
QUFBQVFBQkFBQUNBZ1FCQURzPVwiKWApOwogc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJjb21wdXRl
ZFN0eWxlRm9yKCdjb3VudGVyJywgbnVsbCwgJ2NvdW50ZXItcmVzZXQnKSIsICJzZWN0aW9uIDAi
KTsKIHZhciBzdHIgPSBjb21wdXRlZFN0eWxlRm9yKCdzdWJjb3VudGVyJywgbnVsbCwgJ2NvdW50
ZXItcmVzZXQnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2xhbmctbWFwcGVk
LXRvLXdlYmtpdC1sb2NhbGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvbGFu
Zy1tYXBwZWQtdG8td2Via2l0LWxvY2FsZS1leHBlY3RlZC50eHQKaW5kZXggYTgzNGZjZTM5M2I0
NTdjZDAwMjY0NTQyNjBjODFhZmY2ZTUwMTc3Ny4uY2RiNjRhMTEyMjEzMDI1NmE4MTgwODI2OWJk
OGNkNzA5MWRhNzZkMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvbGFuZy1tYXBw
ZWQtdG8td2Via2l0LWxvY2FsZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvbGFuZy1tYXBwZWQtdG8td2Via2l0LWxvY2FsZS1leHBlY3RlZC50eHQKQEAgLTE5LDEwICsx
OSwxMCBAQCBQQVNTIGxhbmd1YWdlT2ZOb2RlKCdxMicpIGlzICJhdXRvIgogUEFTUyBsYW5ndWFn
ZU9mTm9kZSgncTMnKSBpcyAiYXV0byIKIFBBU1MgbGFuZ3VhZ2VPZk5vZGUoJ3E0JykgaXMgImFy
IgogUEFTUyBsYW5ndWFnZU9mTm9kZSgncTUnKSBpcyAiYXV0byIKLVBBU1MgbGFuZ3VhZ2VPZk5v
ZGUoJ3E2JykgaXMgIlwiICBcIiIKK1BBU1MgbGFuZ3VhZ2VPZk5vZGUoJ3E2JykgaXMgIlxcIFxc
ICIKIFBBU1MgbGFuZ3VhZ2VPZk5vZGUoJ3E3JykgaXMgImF1dG8iCiBQQVNTIGxhbmd1YWdlT2ZO
b2RlKCdxOCcpIGlzICJ4eXp6eSIKLVBBU1MgbGFuZ3VhZ2VPZk5vZGUoJ3E5JykgaXMgIlwiXVs7
XVtbXCIiCitQQVNTIGxhbmd1YWdlT2ZOb2RlKCdxOScpIGlzICJcXF1cXFtcXDtcXF1cXFtcXFsi
CiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2xhbmctbWFwcGVkLXRvLXdlYmtpdC1sb2NhbGUu
eGh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9sYW5nLW1hcHBlZC10by13ZWJraXQtbG9jYWxl
LnhodG1sCmluZGV4IDBiOTk0NmQzMzdjOWFmMjNmMTk2MmNhMzNhZjU5ZDZkNGY1MDk2ZWYuLjRh
ODI5Nzk5NzNmZTM0MDQ2ODZkZTQ0Yjc0ZGJmYTAyNGJiNWRhOTMgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvY3NzL2xhbmctbWFwcGVkLXRvLXdlYmtpdC1sb2NhbGUueGh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3MvbGFuZy1tYXBwZWQtdG8td2Via2l0LWxvY2FsZS54aHRtbApA
QCAtNDYsMTQgKzQ2LDEzIEBAIHNob3VsZEJlRXF1YWxUb1N0cmluZygibGFuZ3VhZ2VPZk5vZGUo
J3EyJykiLCAiYXV0byIpOwogc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgn
cTMnKSIsICJhdXRvIik7CiBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCdx
NCcpIiwgImFyIik7CiBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImxhbmd1YWdlT2ZOb2RlKCdxNScp
IiwgImF1dG8iKTsKLXNob3VsZEJlRXF1YWxUb1N0cmluZygibGFuZ3VhZ2VPZk5vZGUoJ3E2Jyki
LCBgIiAgImApOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgncTYnKSIs
ICJcXCBcXCAiKTsKIHNob3VsZEJlRXF1YWxUb1N0cmluZygibGFuZ3VhZ2VPZk5vZGUoJ3E3Jyki
LCAiYXV0byIpOwogc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgncTgnKSIs
ICJ4eXp6eSIpOwotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgncTknKSIs
IGAiXVs7XVtbImApOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsYW5ndWFnZU9mTm9kZSgncTkn
KSIsICJcXF1cXFtcXDtcXF1cXFtcXFsiKTsKIAogdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRy
dWU7CiA8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0
LmpzIj48L3NjcmlwdD4KIDwvYm9keT4KIDwvaHRtbD4KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvbmVzdGVkLWF0LXJ1bGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvY3NzL25lc3RlZC1hdC1ydWxlcy1leHBlY3RlZC50eHQKaW5kZXggMjI4YTc4YjE5YzczMTIx
Zjg0OGY0ZjdiYjJhMDE4ZTQ5NWFlZTdmZi4uODAzOWJkOWEwMGY2MWQ2MjZkOGJjMWJiOGZmZjEz
NWJhZGQyY2Y3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvbmVzdGVkLWF0LXJ1
bGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9uZXN0ZWQtYXQtcnVs
ZXMtZXhwZWN0ZWQudHh0CkBAIC0yMyw4ICsyMyw4IEBAIHJ1bGVzWzFdLmNzc1J1bGVzWzFdLmlu
c2VydFJ1bGUoJ0BtZWRpYSBhbGwgeyBAcGFnZSA6bGVmdCB7IHRvcDogMDsgfSB9JywgMSkKIFBB
U1MgcnVsZXNbMV0uY3NzUnVsZXNbMV0uY3NzUnVsZXMubGVuZ3RoIGlzIDIKIFBBU1MgcnVsZXNb
MV0uY3NzUnVsZXNbMV0uY3NzUnVsZXNbMV0udHlwZSBpcyBDU1NSdWxlLk1FRElBX1JVTEUKIFBB
U1MgcnVsZXNbMV0uY3NzUnVsZXNbMV0uY3NzUnVsZXNbMV0uY3NzUnVsZXNbMF0udHlwZSBpcyBD
U1NSdWxlLlBBR0VfUlVMRQotUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCd0MCcpKS5jb250ZW50IGlzICJBUFBMSUVEIgotUEFTUyBnZXRDb21wdXRlZFN0eWxl
KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MScpKS5jb250ZW50IGlzICJVTlRPVUNIRUQiCitQ
QVNTIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3QwJykpLmNvbnRl
bnQgaXMgIlwiQVBQTElFRFwiIgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCd0MScpKS5jb250ZW50IGlzICJcIlVOVE9VQ0hFRFwiIgogUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy9uZXN0ZWQtYXQtcnVsZXMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L25lc3RlZC1hdC1ydWxlcy5odG1sCmluZGV4IDRkNDdjZmM0ZDIzZmQzYTc0Njk5NTFjNWFmMDMw
MjVmMzM4MWM0ZGIuLjg4NGI0MDQxMjlkMjA4YzgzYjU3NjUyYzQyN2EzYjU5MDA1OGE1M2EgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL25lc3RlZC1hdC1ydWxlcy5odG1sCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvY3NzL25lc3RlZC1hdC1ydWxlcy5odG1sCkBAIC01Nyw3ICs1Nyw3
IEBAIHNob3VsZEV2YWx1YXRlVG8oInJ1bGVzWzFdLmNzc1J1bGVzWzFdLmNzc1J1bGVzLmxlbmd0
aCIsIDIpOwogc2hvdWxkQmUoInJ1bGVzWzFdLmNzc1J1bGVzWzFdLmNzc1J1bGVzWzFdLnR5cGUi
LCAiQ1NTUnVsZS5NRURJQV9SVUxFIik7CiBzaG91bGRCZSgicnVsZXNbMV0uY3NzUnVsZXNbMV0u
Y3NzUnVsZXNbMV0uY3NzUnVsZXNbMF0udHlwZSIsICJDU1NSdWxlLlBBR0VfUlVMRSIpOwogCi1z
aG91bGRCZUVxdWFsVG9TdHJpbmcoImdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3QwJykpLmNvbnRlbnQiLCAiQVBQTElFRCIpOwotc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MScpKS5jb250ZW50
IiwgIlVOVE9VQ0hFRCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJnZXRDb21wdXRlZFN0eWxl
KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0MCcpKS5jb250ZW50IiwgJyJBUFBMSUVEIicpOwor
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCd0MScpKS5jb250ZW50IiwgJyJVTlRPVUNIRUQiJyk7CiA8L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3BhcnNpbmctdGV4dC1lbXBoYXNpcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9wYXJzaW5nLXRleHQtZW1waGFzaXMtZXhwZWN0
ZWQudHh0CmluZGV4IDhmNzAxMmJhZTM4YTNlOWMwNTk3YTY5YjIzMmNkMzFmZDM3YmM4ZDguLjA1
NWMyMWNkNDk0ZGY0MDBkZDI0OGMyYTE2NzE1NTg1MWUwMWY2NGMgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvY3NzL3BhcnNpbmctdGV4dC1lbXBoYXNpcy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3MvcGFyc2luZy10ZXh0LWVtcGhhc2lzLWV4cGVjdGVkLnR4dApA
QCAtMzQsNyArMzQsNyBAQCBQQVNTOiAnLXdlYmtpdC10ZXh0LWVtcGhhc2lzLXN0eWxlOiBjaXJj
bGU7JyBwYXJzZWQgYXMgWycnLCAnJywgJ2NpcmNsZScsICcnXQogUEFTUzogJy13ZWJraXQtdGV4
dC1lbXBoYXNpcy1zdHlsZTogZG91YmxlLWNpcmNsZTsnIHBhcnNlZCBhcyBbJycsICcnLCAnZG91
YmxlLWNpcmNsZScsICcnXQogUEFTUzogJy13ZWJraXQtdGV4dC1lbXBoYXNpcy1zdHlsZTogdHJp
YW5nbGU7JyBwYXJzZWQgYXMgWycnLCAnJywgJ3RyaWFuZ2xlJywgJyddCiBQQVNTOiAnLXdlYmtp
dC10ZXh0LWVtcGhhc2lzLXN0eWxlOiBzZXNhbWU7JyBwYXJzZWQgYXMgWycnLCAnJywgJ3Nlc2Ft
ZScsICcnXQotUEFTUzogJy13ZWJraXQtdGV4dC1lbXBoYXNpcy1zdHlsZTogImNoZWVzZSI7JyBw
YXJzZWQgYXMgWycnLCAnJywgJ2NoZWVzZScsICcnXQorUEFTUzogJy13ZWJraXQtdGV4dC1lbXBo
YXNpcy1zdHlsZTogImNoZWVzZSI7JyBwYXJzZWQgYXMgWycnLCAnJywgJyJjaGVlc2UiJywgJydd
CiBQQVNTOiAnLXdlYmtpdC10ZXh0LWVtcGhhc2lzLXN0eWxlOiAxcHg7JyBwYXJzZWQgYXMgWycn
LCAnJywgJycsICcnXQogUEFTUzogJy13ZWJraXQtdGV4dC1lbXBoYXNpcy1zdHlsZTogcmVkOycg
cGFyc2VkIGFzIFsnJywgJycsICcnLCAnJ10KIFBBU1M6ICctd2Via2l0LXRleHQtZW1waGFzaXMt
c3R5bGU6IG9wZW4gZG90OycgcGFyc2VkIGFzIFsnJywgJycsICdvcGVuIGRvdCcsICcnXQpAQCAt
NDksOSArNDksOSBAQCBQQVNTOiAnLXdlYmtpdC10ZXh0LWVtcGhhc2lzLXN0eWxlOiBvcGVuICJj
aGVlc2UiOycgcGFyc2VkIGFzIFsnJywgJycsICcnLCAnJ10KIFBBU1M6ICctd2Via2l0LXRleHQt
ZW1waGFzaXM6IGluaXRpYWwnIHBhcnNlZCBhcyBbJ2luaXRpYWwnLCAnJywgJ2luaXRpYWwnLCAn
aW5pdGlhbCddCiBQQVNTOiAnLXdlYmtpdC10ZXh0LWVtcGhhc2lzOiBpbmhlcml0JyBwYXJzZWQg
YXMgWydpbmhlcml0JywgJycsICdpbmhlcml0JywgJ2luaGVyaXQnXQogUEFTUzogJy13ZWJraXQt
dGV4dC1lbXBoYXNpczogcmVkJyBwYXJzZWQgYXMgWydyZWQnLCAnJywgJ2luaXRpYWwnLCAncmVk
J10KLVBBU1M6ICctd2Via2l0LXRleHQtZW1waGFzaXM6ICJjaGVlc2UiJyBwYXJzZWQgYXMgWydp
bml0aWFsJywgJycsICdjaGVlc2UnLCAnY2hlZXNlJ10KLVBBU1M6ICctd2Via2l0LXRleHQtZW1w
aGFzaXM6IHJlZCAiY2hlZXNlIicgcGFyc2VkIGFzIFsncmVkJywgJycsICdjaGVlc2UnLCAnY2hl
ZXNlIHJlZCddCi1QQVNTOiAnLXdlYmtpdC10ZXh0LWVtcGhhc2lzOiAiY2hlZXNlIiByZWQnIHBh
cnNlZCBhcyBbJ3JlZCcsICcnLCAnY2hlZXNlJywgJ2NoZWVzZSByZWQnXQorUEFTUzogJy13ZWJr
aXQtdGV4dC1lbXBoYXNpczogImNoZWVzZSInIHBhcnNlZCBhcyBbJ2luaXRpYWwnLCAnJywgJyJj
aGVlc2UiJywgJyJjaGVlc2UiJ10KK1BBU1M6ICctd2Via2l0LXRleHQtZW1waGFzaXM6IHJlZCAi
Y2hlZXNlIicgcGFyc2VkIGFzIFsncmVkJywgJycsICciY2hlZXNlIicsICciY2hlZXNlIiByZWQn
XQorUEFTUzogJy13ZWJraXQtdGV4dC1lbXBoYXNpczogImNoZWVzZSIgcmVkJyBwYXJzZWQgYXMg
WydyZWQnLCAnJywgJyJjaGVlc2UiJywgJyJjaGVlc2UiIHJlZCddCiBQQVNTOiAnLXdlYmtpdC10
ZXh0LWVtcGhhc2lzOiBmaWxsZWQgc2VzYW1lIHJlZCcgcGFyc2VkIGFzIFsncmVkJywgJycsICdm
aWxsZWQgc2VzYW1lJywgJ2ZpbGxlZCBzZXNhbWUgcmVkJ10KIFBBU1M6ICctd2Via2l0LXRleHQt
ZW1waGFzaXM6IHJlZCBmaWxsZWQgc2VzYW1lJyBwYXJzZWQgYXMgWydyZWQnLCAnJywgJ2ZpbGxl
ZCBzZXNhbWUnLCAnZmlsbGVkIHNlc2FtZSByZWQnXQogUEFTUzogJy13ZWJraXQtdGV4dC1lbXBo
YXNpczogZmlsbGVkIHJlZCBzZXNhbWUnIHBhcnNlZCBhcyBbJycsICcnLCAnJywgJyddCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9wYXJzaW5nLXRleHQtZW1waGFzaXMuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvY3NzL3BhcnNpbmctdGV4dC1lbXBoYXNpcy5odG1sCmluZGV4IGIw
YmUwOTk2OWY1YjVmYzQzZmFjNDI1YjMxMTgwOTEyZDk2MjA3NjcuLjFkZTE4MTM1ODM2MDE5MjIy
NmFjOGNjYzJhNzQ3YzM1NjEyYjNjOWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L3BhcnNpbmctdGV4dC1lbXBoYXNpcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Bh
cnNpbmctdGV4dC1lbXBoYXNpcy5odG1sCkBAIC02Myw3ICs2Myw3IEBACiAgICAgdGVzdCgnLXdl
YmtpdC10ZXh0LWVtcGhhc2lzLXN0eWxlOiBkb3VibGUtY2lyY2xlOycsICcnLCAnJywgJ2RvdWJs
ZS1jaXJjbGUnKTsKICAgICB0ZXN0KCctd2Via2l0LXRleHQtZW1waGFzaXMtc3R5bGU6IHRyaWFu
Z2xlOycsICcnLCAnJywgJ3RyaWFuZ2xlJyk7CiAgICAgdGVzdCgnLXdlYmtpdC10ZXh0LWVtcGhh
c2lzLXN0eWxlOiBzZXNhbWU7JywgJycsICcnLCAnc2VzYW1lJyk7Ci0gICAgdGVzdCgnLXdlYmtp
dC10ZXh0LWVtcGhhc2lzLXN0eWxlOiAiY2hlZXNlIjsnLCAnJywgJycsICdjaGVlc2UnKTsKKyAg
ICB0ZXN0KCctd2Via2l0LXRleHQtZW1waGFzaXMtc3R5bGU6ICJjaGVlc2UiOycsICcnLCAnJywg
JyJjaGVlc2UiJyk7CiAgICAgdGVzdCgnLXdlYmtpdC10ZXh0LWVtcGhhc2lzLXN0eWxlOiAxcHg7
JywgJycsICcnLCAnJyk7CiAgICAgdGVzdCgnLXdlYmtpdC10ZXh0LWVtcGhhc2lzLXN0eWxlOiBy
ZWQ7JywgJycsICcnLCAnJyk7CiAKQEAgLTgwLDkgKzgwLDkgQEAKICAgICB0ZXN0KCctd2Via2l0
LXRleHQtZW1waGFzaXM6IGluaXRpYWwnLCAnaW5pdGlhbCcsICcnLCAnaW5pdGlhbCcsICdpbml0
aWFsJyk7CiAgICAgdGVzdCgnLXdlYmtpdC10ZXh0LWVtcGhhc2lzOiBpbmhlcml0JywgJ2luaGVy
aXQnLCAnJywgJ2luaGVyaXQnLCAnaW5oZXJpdCcpOwogICAgIHRlc3QoJy13ZWJraXQtdGV4dC1l
bXBoYXNpczogcmVkJywgJ3JlZCcsICcnLCAnaW5pdGlhbCcsICdyZWQnKTsKLSAgICB0ZXN0KCct
d2Via2l0LXRleHQtZW1waGFzaXM6ICJjaGVlc2UiJywgJ2luaXRpYWwnLCAnJywgJ2NoZWVzZScs
ICdjaGVlc2UnKTsKLSAgICB0ZXN0KCctd2Via2l0LXRleHQtZW1waGFzaXM6IHJlZCAiY2hlZXNl
IicsICdyZWQnLCAnJywgJ2NoZWVzZScsICdjaGVlc2UgcmVkJyk7Ci0gICAgdGVzdCgnLXdlYmtp
dC10ZXh0LWVtcGhhc2lzOiAiY2hlZXNlIiByZWQnLCAncmVkJywgJycsICdjaGVlc2UnLCAnY2hl
ZXNlIHJlZCcpOworICAgIHRlc3QoJy13ZWJraXQtdGV4dC1lbXBoYXNpczogImNoZWVzZSInLCAn
aW5pdGlhbCcsICcnLCAnImNoZWVzZSInLCAnImNoZWVzZSInKTsKKyAgICB0ZXN0KCctd2Via2l0
LXRleHQtZW1waGFzaXM6IHJlZCAiY2hlZXNlIicsICdyZWQnLCAnJywgJyJjaGVlc2UiJywgJyJj
aGVlc2UiIHJlZCcpOworICAgIHRlc3QoJy13ZWJraXQtdGV4dC1lbXBoYXNpczogImNoZWVzZSIg
cmVkJywgJ3JlZCcsICcnLCAnImNoZWVzZSInLCAnImNoZWVzZSIgcmVkJyk7CiAgICAgdGVzdCgn
LXdlYmtpdC10ZXh0LWVtcGhhc2lzOiBmaWxsZWQgc2VzYW1lIHJlZCcsICdyZWQnLCAnJywgJ2Zp
bGxlZCBzZXNhbWUnLCAnZmlsbGVkIHNlc2FtZSByZWQnKTsKICAgICB0ZXN0KCctd2Via2l0LXRl
eHQtZW1waGFzaXM6IHJlZCBmaWxsZWQgc2VzYW1lJywgJ3JlZCcsICcnLCAnZmlsbGVkIHNlc2Ft
ZScsICdmaWxsZWQgc2VzYW1lIHJlZCcpOwogICAgIHRlc3QoJy13ZWJraXQtdGV4dC1lbXBoYXNp
czogZmlsbGVkIHJlZCBzZXNhbWUnLCAnJywgJycsICcnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvZW5jb2RpbmcvY3NzLWNoYXJzZXQtZGVmYXVsdC1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9mYXN0L2VuY29kaW5nL2Nzcy1jaGFyc2V0LWRlZmF1bHQtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDk1NDc5MGUwZDRjMTAyNmQ1MWQyYzliYmVmY2E1MjNlNzg1YjQ4NzcuLjQ2ZmZhMzUzOTgz
OTA4NzgzNDNlYTZjYzhhZDdiNzA5MjVkMjUyYjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zh
c3QvZW5jb2RpbmcvY3NzLWNoYXJzZXQtZGVmYXVsdC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9lbmNvZGluZy9jc3MtY2hhcnNldC1kZWZhdWx0LWV4cGVjdGVkLnR4dApAQCAt
MSw5ICsxLDkgQEAKIFRlc3QgZm9yIGJ1ZyAxMTAxMTogRXh0ZXJuYWwgQ1NTIGlzIHBhcnNlZCBh
cyBpc28tODg1OS0xIGV2ZW4gdGhvdWdoIHRoZSBtYWluIGRvY3VtZW50IGlzIHV0Zi04LgogCi1T
dHlsZXNoZWV0IDEgKGluaGVyaXQgZG9jdW1lbnQgY2hhcnNldCB1c2luZyB4bWwtc3R5bGVzaGVl
dCBwcm9jZXNzaW5nIGluc3RydWN0aW9uKTogU1XQodCh0JVTUworU3R5bGVzaGVldCAxIChpbmhl
cml0IGRvY3VtZW50IGNoYXJzZXQgdXNpbmcgeG1sLXN0eWxlc2hlZXQgcHJvY2Vzc2luZyBpbnN0
cnVjdGlvbik6ICJTVdCh0KHQlVNTIgogCi1TdHlsZXNoZWV0IDIgKGluaGVyaXQgZG9jdW1lbnQg
Y2hhcnNldCB1c2luZyBsaW5rKTogU1XQodCh0JVTUworU3R5bGVzaGVldCAyIChpbmhlcml0IGRv
Y3VtZW50IGNoYXJzZXQgdXNpbmcgbGluayk6ICJTVdCh0KHQlVNTIgogCi1TdHlsZXNoZWV0IDMg
KGluaGVyaXQgcmVmZXJyaW5nIHN0eWxlc2hlZXQgY2hhcnNldCk6IFNV0KHQodCVU1MKK1N0eWxl
c2hlZXQgMyAoaW5oZXJpdCByZWZlcnJpbmcgc3R5bGVzaGVldCBjaGFyc2V0KTogIlNV0KHQodCV
U1MiCiAKLVN0eWxlc2hlZXQgNCAoaW5oZXJpdCByZWZlcnJpbmcgaW5saW5lIHN0eWxlc2hlZXQg
Y2hhcnNldCk6IFNV0KHQodCVU1MKK1N0eWxlc2hlZXQgNCAoaW5oZXJpdCByZWZlcnJpbmcgaW5s
aW5lIHN0eWxlc2hlZXQgY2hhcnNldCk6ICJTVdCh0KHQlVNTIgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMv
cGFyc2luZy9hbmltYXRpb24tbmFtZS12YWxpZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9wYXJzaW5n
L2FuaW1hdGlvbi1uYW1lLXZhbGlkLWV4cGVjdGVkLnR4dAppbmRleCAxZDFkOWM0NjRkMGZkZDk4
ZjdhOTk0Zjk4Mjc5NDVkZjE3NjIzYzFlLi43MzQxZDkwNWI4OWVhMjkxZjM3ZDc0MDM5YmMwYzRm
ZjI5OTYyMjhlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9wYXJzaW5nL2FuaW1hdGlvbi1uYW1lLXZhbGlk
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9wYXJzaW5nL2FuaW1hdGlvbi1uYW1lLXZhbGlkLWV4
cGVjdGVkLnR4dApAQCAtNiw4ICs2LDggQEAgUEFTUyBlLnN0eWxlWydhbmltYXRpb24tbmFtZSdd
ID0gImVhc2UtaW4iIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCiBQQVNTIGUuc3R5bGVb
J2FuaW1hdGlvbi1uYW1lJ10gPSAiaW5maW5pdGUiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZh
bHVlCiBQQVNTIGUuc3R5bGVbJ2FuaW1hdGlvbi1uYW1lJ10gPSAicGF1c2VkIiBzaG91bGQgc2V0
IHRoZSBwcm9wZXJ0eSB2YWx1ZQogUEFTUyBlLnN0eWxlWydhbmltYXRpb24tbmFtZSddID0gImZp
cnN0LCBzZWNvbmQsIHRoaXJkIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQotRkFJTCBl
LnN0eWxlWydhbmltYXRpb24tbmFtZSddID0gIlwic3RyaW5nXCIiIHNob3VsZCBzZXQgdGhlIHBy
b3BlcnR5IHZhbHVlIGFzc2VydF9lcXVhbHM6IHNlcmlhbGl6YXRpb24gc2hvdWxkIGJlIGNhbm9u
aWNhbCBleHBlY3RlZCAiXCJzdHJpbmdcIiIgYnV0IGdvdCAic3RyaW5nIgorUEFTUyBlLnN0eWxl
WydhbmltYXRpb24tbmFtZSddID0gIlwic3RyaW5nXCIiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5
IHZhbHVlCiBQQVNTIGUuc3R5bGVbJ2FuaW1hdGlvbi1uYW1lJ10gPSAiXCJtdWx0aSB3b3JkIHN0
cmluZ1wiIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQotRkFJTCBlLnN0eWxlWydhbmlt
YXRpb24tbmFtZSddID0gIlwiaW5pdGlhbFwiIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1
ZSBhc3NlcnRfZXF1YWxzOiBzZXJpYWxpemF0aW9uIHNob3VsZCBiZSBjYW5vbmljYWwgZXhwZWN0
ZWQgIlwiaW5pdGlhbFwiIiBidXQgZ290ICJpbml0aWFsIgorUEFTUyBlLnN0eWxlWydhbmltYXRp
b24tbmFtZSddID0gIlwiaW5pdGlhbFwiIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQog
UEFTUyBlLnN0eWxlWydhbmltYXRpb24tbmFtZSddID0gIlwiLS0tXFwyMi0tLVwiIiBzaG91bGQg
c2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY291bnRlci1z
dHlsZS1uZWdhdGl2ZS1zeW50YXgtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2NvdW50ZXItc3R5
bGUtbmVnYXRpdmUtc3ludGF4LWV4cGVjdGVkLnR4dAppbmRleCA0YTZiOTE2YTdmNjMxMmI3ZmNm
ZDk1YTQ5Mzk0MTY0M2I1YzM3OTNjLi4xM2QzYjViNTRkN2Y5MDNlMDg0NDc3OWE4ZDBlOTk3NDky
ODk4ZDhjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY291bnRlci1zdHlsZS1uZWdhdGl2ZS1zeW50
YXgtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jb3VudGVyLXN0eWxlLW5lZ2F0aXZlLXN5
bnRheC1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgQGNvdW50ZXItc3R5bGUg
J25lZ2F0aXZlOiAiWCInIGlzIHZhbGlkIGFzc2VydF9ub3RfZXF1YWxzOiBnb3QgZGlzYWxsb3dl
ZCB2YWx1ZSAtMQotRkFJTCBAY291bnRlci1zdHlsZSAnbmVnYXRpdmU6ICJYIiAiWCInIGlzIHZh
bGlkIGFzc2VydF9ub3RfZXF1YWxzOiBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAtMQorUEFTUyBAY291
bnRlci1zdHlsZSAnbmVnYXRpdmU6ICJYIicgaXMgdmFsaWQKK1BBU1MgQGNvdW50ZXItc3R5bGUg
J25lZ2F0aXZlOiAiWCIgIlgiJyBpcyB2YWxpZAogUEFTUyBAY291bnRlci1zdHlsZSAnbmVnYXRp
dmU6ICJYIiAiWCIgIlgiJyBpcyBpbnZhbGlkCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jb3Vu
dGVyLXN0eWxlLXBhZC1zeW50YXgtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2NvdW50ZXItc3R5
bGUtcGFkLXN5bnRheC1leHBlY3RlZC50eHQKaW5kZXggMzA2ZGY3NGEwNDJkMDc5M2I1YWUyNzVj
ZjU1YzAyNTc0OGQ4ODQ4NC4uZjUzZDc3ZDgyMTM5N2ZhYTgwYzk0ZTYxODE3MTFmYTQ1M2NiNDcz
MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2NvdW50ZXItc3R5bGUtcGFkLXN5bnRheC1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLWNvdW50ZXItc3R5bGVzL2NvdW50ZXItc3R5bGUtcGFkLXN5bnRheC1leHBlY3RlZC50
eHQKQEAgLTEsOSArMSw5IEBACiAKIFBBU1MgQGNvdW50ZXItc3R5bGUgJ3BhZDogMTAnIGlzIGlu
dmFsaWQKIFBBU1MgQGNvdW50ZXItc3R5bGUgJ3BhZDogIlgiJyBpcyBpbnZhbGlkCi1GQUlMIEBj
b3VudGVyLXN0eWxlICdwYWQ6IDAgIlgiJyBpcyB2YWxpZCBhc3NlcnRfbm90X2VxdWFsczogZ290
IGRpc2FsbG93ZWQgdmFsdWUgLTEKLUZBSUwgQGNvdW50ZXItc3R5bGUgJ3BhZDogMTAgIlgiJyBp
cyB2YWxpZCBhc3NlcnRfbm90X2VxdWFsczogZ290IGRpc2FsbG93ZWQgdmFsdWUgLTEKLUZBSUwg
QGNvdW50ZXItc3R5bGUgJ3BhZDogIlgiIDEwJyBpcyB2YWxpZCBhc3NlcnRfbm90X2VxdWFsczog
Z290IGRpc2FsbG93ZWQgdmFsdWUgLTEKK1BBU1MgQGNvdW50ZXItc3R5bGUgJ3BhZDogMCAiWCIn
IGlzIHZhbGlkCitQQVNTIEBjb3VudGVyLXN0eWxlICdwYWQ6IDEwICJYIicgaXMgdmFsaWQKK1BB
U1MgQGNvdW50ZXItc3R5bGUgJ3BhZDogIlgiIDEwJyBpcyB2YWxpZAogUEFTUyBAY291bnRlci1z
dHlsZSAncGFkOiAtMSAiWCInIGlzIGludmFsaWQKIFBBU1MgQGNvdW50ZXItc3R5bGUgJ3BhZDog
IlgiIC0xJyBpcyBpbnZhbGlkCiBQQVNTIEBjb3VudGVyLXN0eWxlICdwYWQ6IDEwICJYIiAiWSIn
IGlzIGludmFsaWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jb3VudGVyLXN0eWxlLXByZWZpeC1z
dWZmaXgtc3ludGF4LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jb3VudGVyLXN0eWxlLXByZWZp
eC1zdWZmaXgtc3ludGF4LWV4cGVjdGVkLnR4dAppbmRleCA4N2M2YTA2YTZiNDg0YmZlMDIyNzk3
MDdkMDJhNTZmM2UwMjI1YTM4Li4wMzRkNmM1M2UwZDVhOTVlNWMyYmM5YzJhOGJmY2MyY2NmYWM4
ZTEyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY291bnRlci1zdHlsZS1wcmVmaXgtc3VmZml4LXN5
bnRheC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2NvdW50ZXItc3R5bGUtcHJlZml4LXN1
ZmZpeC1zeW50YXgtZXhwZWN0ZWQudHh0CkBAIC0xLDEyICsxLDEyIEBACiAKLUZBSUwgQGNvdW50
ZXItc3R5bGUgJ3ByZWZpeDogInN0cmluZyInIGlzIHZhbGlkIGFzc2VydF9ub3RfZXF1YWxzOiBn
b3QgZGlzYWxsb3dlZCB2YWx1ZSAtMQotRkFJTCBAY291bnRlci1zdHlsZSAnc3VmZml4OiAic3Ry
aW5nIicgaXMgdmFsaWQgYXNzZXJ0X25vdF9lcXVhbHM6IGdvdCBkaXNhbGxvd2VkIHZhbHVlIC0x
Ci1GQUlMIEBjb3VudGVyLXN0eWxlICdwcmVmaXg6ICJpbml0aWFsIicgaXMgdmFsaWQgYXNzZXJ0
X25vdF9lcXVhbHM6IGdvdCBkaXNhbGxvd2VkIHZhbHVlIC0xCi1GQUlMIEBjb3VudGVyLXN0eWxl
ICdzdWZmaXg6ICJpbml0aWFsIicgaXMgdmFsaWQgYXNzZXJ0X25vdF9lcXVhbHM6IGdvdCBkaXNh
bGxvd2VkIHZhbHVlIC0xCi1GQUlMIEBjb3VudGVyLXN0eWxlICdwcmVmaXg6ICJpbmhlcml0Iicg
aXMgdmFsaWQgYXNzZXJ0X25vdF9lcXVhbHM6IGdvdCBkaXNhbGxvd2VkIHZhbHVlIC0xCi1GQUlM
IEBjb3VudGVyLXN0eWxlICdzdWZmaXg6ICJpbmhlcml0IicgaXMgdmFsaWQgYXNzZXJ0X25vdF9l
cXVhbHM6IGdvdCBkaXNhbGxvd2VkIHZhbHVlIC0xCi1GQUlMIEBjb3VudGVyLXN0eWxlICdwcmVm
aXg6ICJ1bnNldCInIGlzIHZhbGlkIGFzc2VydF9ub3RfZXF1YWxzOiBnb3QgZGlzYWxsb3dlZCB2
YWx1ZSAtMQotRkFJTCBAY291bnRlci1zdHlsZSAnc3VmZml4OiAidW5zZXQiJyBpcyB2YWxpZCBh
c3NlcnRfbm90X2VxdWFsczogZ290IGRpc2FsbG93ZWQgdmFsdWUgLTEKK1BBU1MgQGNvdW50ZXIt
c3R5bGUgJ3ByZWZpeDogInN0cmluZyInIGlzIHZhbGlkCitQQVNTIEBjb3VudGVyLXN0eWxlICdz
dWZmaXg6ICJzdHJpbmciJyBpcyB2YWxpZAorUEFTUyBAY291bnRlci1zdHlsZSAncHJlZml4OiAi
aW5pdGlhbCInIGlzIHZhbGlkCitQQVNTIEBjb3VudGVyLXN0eWxlICdzdWZmaXg6ICJpbml0aWFs
IicgaXMgdmFsaWQKK1BBU1MgQGNvdW50ZXItc3R5bGUgJ3ByZWZpeDogImluaGVyaXQiJyBpcyB2
YWxpZAorUEFTUyBAY291bnRlci1zdHlsZSAnc3VmZml4OiAiaW5oZXJpdCInIGlzIHZhbGlkCitQ
QVNTIEBjb3VudGVyLXN0eWxlICdwcmVmaXg6ICJ1bnNldCInIGlzIHZhbGlkCitQQVNTIEBjb3Vu
dGVyLXN0eWxlICdzdWZmaXg6ICJ1bnNldCInIGlzIHZhbGlkCiBQQVNTIEBjb3VudGVyLXN0eWxl
ICdwcmVmaXg6IGN1c3RvbS1pZGVudCcgaXMgdmFsaWQKIFBBU1MgQGNvdW50ZXItc3R5bGUgJ3N1
ZmZpeDogY3VzdG9tLWlkZW50JyBpcyB2YWxpZAogUEFTUyBAY291bnRlci1zdHlsZSAncHJlZml4
OiBpbml0aWFsJyBpcyBpbnZhbGlkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY291bnRlci1zdHls
ZS1zeW1ib2xzLXN5bnRheC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvY291bnRlci1zdHlsZS1z
eW1ib2xzLXN5bnRheC1leHBlY3RlZC50eHQKaW5kZXggZGEyODc3NzZlMTg5ZWE5MjAwMDYxZjAw
OGEyYWQwYTI4MTA2NGEwNS4uMjZiMWRiOGZhMDhhNzg4MWQ1NTc5YjFmMWEzMDkxMDYwNTYyYzEx
NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2NvdW50ZXItc3R5bGUtc3ltYm9scy1zeW50YXgtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9jb3VudGVyLXN0eWxlLXN5bWJvbHMtc3ludGF4LWV4
cGVjdGVkLnR4dApAQCAtMSw3ICsxLDcgQEAKIAotRkFJTCBAY291bnRlci1zdHlsZSAnc3ltYm9s
czogIlgiJyBpcyB2YWxpZCBhc3NlcnRfbm90X2VxdWFsczogZ290IGRpc2FsbG93ZWQgdmFsdWUg
LTEKLUZBSUwgQGNvdW50ZXItc3R5bGUgJ3N5bWJvbHM6ICJYIiAiWCInIGlzIHZhbGlkIGFzc2Vy
dF9ub3RfZXF1YWxzOiBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAtMQotRkFJTCBAY291bnRlci1zdHls
ZSAnc3ltYm9sczogaWRlbnQgIlgiJyBpcyB2YWxpZCBhc3NlcnRfbm90X2VxdWFsczogZ290IGRp
c2FsbG93ZWQgdmFsdWUgLTEKK1BBU1MgQGNvdW50ZXItc3R5bGUgJ3N5bWJvbHM6ICJYIicgaXMg
dmFsaWQKK1BBU1MgQGNvdW50ZXItc3R5bGUgJ3N5bWJvbHM6ICJYIiAiWCInIGlzIHZhbGlkCitQ
QVNTIEBjb3VudGVyLXN0eWxlICdzeW1ib2xzOiBpZGVudCAiWCInIGlzIHZhbGlkCiBGQUlMIEBj
b3VudGVyLXN0eWxlICdzeW1ib2xzOiBpZGVudCAiWCIgdXJsKCJmb28uanBnIiknIGlzIHZhbGlk
IGFzc2VydF9ub3RfZXF1YWxzOiBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAtMQogUEFTUyBAY291bnRl
ci1zdHlsZSAnc3ltYm9sczogJyBpcyBpbnZhbGlkCiBQQVNTIEBjb3VudGVyLXN0eWxlICdzeW1i
b2xzOiBpbml0aWFsICJYIiAiWCInIGlzIGludmFsaWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3Jp
ZC1hcmVhLWNvbXB1dGVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3JpZC1hcmVhLWNvbXB1dGVk
LWV4cGVjdGVkLnR4dAppbmRleCA1ZGJiNzVlOGFhYjBhYjE3ZDdkZDMzYWFlMmU3NWMxZmVlNjNk
ZjQyLi4yMDFjNDg5NmQ4MTU4NjM3YzY4ZDBmNmNkODVhMjRiZDgzNDMyNTJlIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3Jp
ZC9wYXJzaW5nL2dyaWQtYXJlYS1jb21wdXRlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvcGFyc2luZy9n
cmlkLWFyZWEtY29tcHV0ZWQtZXhwZWN0ZWQudHh0CkBAIC0yNiw2ICsyNiw2IEBAIFBBU1MgUHJv
cGVydHkgZ3JpZC1hcmVhIHZhbHVlICdhdXRvIC8gaSAvIDIgaicKIFBBU1MgUHJvcGVydHkgZ3Jp
ZC1hcmVhIHZhbHVlICdhdXRvIC8gaSAvIDIgaiAvIHNwYW4gMyBrJwogUEFTUyBQcm9wZXJ0eSBn
cmlkLXJvdyB2YWx1ZSAnYXV0byAvIGknCiBQQVNTIFByb3BlcnR5IGdyaWQtY29sdW1uIHZhbHVl
ICcyIGogLyBzcGFuIDMgaycKLUZBSUwgUHJvcGVydHkgZ3JpZC1jb2x1bW4tZW5kIHZhbHVlICdc
MzFzdCcgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIlxcMzEgc3QiIGJ1dCBnb3QgIlwiMXN0XCIi
Ci1GQUlMIFByb3BlcnR5IGdyaWQtY29sdW1uLWVuZCB2YWx1ZSAnXDMxIHN0JyBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAiXFwzMSBzdCIgYnV0IGdvdCAiXCIxc3RcIiIKK1BBU1MgUHJvcGVydHkg
Z3JpZC1jb2x1bW4tZW5kIHZhbHVlICdcMzFzdCcKK1BBU1MgUHJvcGVydHkgZ3JpZC1jb2x1bW4t
ZW5kIHZhbHVlICdcMzEgc3QnCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3JpZC1hcmVhLXNob3J0
aGFuZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtZ3JpZC9wYXJzaW5nL2dyaWQtYXJlYS1zaG9ydGhhbmQtZXhwZWN0ZWQu
dHh0CmluZGV4IGFmZTIxYzhhZWNkODcxZGY0OGMwOTBkOGI2NzUzMTRhMzI0YWIxM2MuLmNiOTM3
MDQyMDFjMmM3ZTFkNDdjZWZmMjMzNzYzNjI0OTZiNjlmNTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL3BhcnNpbmcv
Z3JpZC1hcmVhLXNob3J0aGFuZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvcGFyc2luZy9ncmlkLWFyZWEt
c2hvcnRoYW5kLWV4cGVjdGVkLnR4dApAQCAtNCwxMCArNCwxMCBAQCBQQVNTIGUuc3R5bGVbJ2dy
aWQtYXJlYSddID0gImF1dG8iIHNob3VsZCBzZXQgZ3JpZC1jb2x1bW4tc3RhcnQKIFBBU1MgZS5z
dHlsZVsnZ3JpZC1hcmVhJ10gPSAiYXV0byIgc2hvdWxkIHNldCBncmlkLXJvdy1lbmQKIFBBU1Mg
ZS5zdHlsZVsnZ3JpZC1hcmVhJ10gPSAiYXV0byIgc2hvdWxkIHNldCBncmlkLXJvdy1zdGFydAog
UEFTUyBlLnN0eWxlWydncmlkLWFyZWEnXSA9ICJhdXRvIiBzaG91bGQgbm90IHNldCB1bnJlbGF0
ZWQgbG9uZ2hhbmRzCi1GQUlMIGUuc3R5bGVbJ2dyaWQtYXJlYSddID0gIi0tYSIgc2hvdWxkIHNl
dCBncmlkLWNvbHVtbi1lbmQgYXNzZXJ0X2VxdWFsczogZ3JpZC1jb2x1bW4tZW5kIHNob3VsZCBi
ZSBjYW5vbmljYWwgZXhwZWN0ZWQgIi0tYSIgYnV0IGdvdCAiXCItLWFcIiIKLUZBSUwgZS5zdHls
ZVsnZ3JpZC1hcmVhJ10gPSAiLS1hIiBzaG91bGQgc2V0IGdyaWQtY29sdW1uLXN0YXJ0IGFzc2Vy
dF9lcXVhbHM6IGdyaWQtY29sdW1uLXN0YXJ0IHNob3VsZCBiZSBjYW5vbmljYWwgZXhwZWN0ZWQg
Ii0tYSIgYnV0IGdvdCAiXCItLWFcIiIKLUZBSUwgZS5zdHlsZVsnZ3JpZC1hcmVhJ10gPSAiLS1h
IiBzaG91bGQgc2V0IGdyaWQtcm93LWVuZCBhc3NlcnRfZXF1YWxzOiBncmlkLXJvdy1lbmQgc2hv
dWxkIGJlIGNhbm9uaWNhbCBleHBlY3RlZCAiLS1hIiBidXQgZ290ICJcIi0tYVwiIgotRkFJTCBl
LnN0eWxlWydncmlkLWFyZWEnXSA9ICItLWEiIHNob3VsZCBzZXQgZ3JpZC1yb3ctc3RhcnQgYXNz
ZXJ0X2VxdWFsczogZ3JpZC1yb3ctc3RhcnQgc2hvdWxkIGJlIGNhbm9uaWNhbCBleHBlY3RlZCAi
LS1hIiBidXQgZ290ICJcIi0tYVwiIgorUEFTUyBlLnN0eWxlWydncmlkLWFyZWEnXSA9ICItLWEi
IHNob3VsZCBzZXQgZ3JpZC1jb2x1bW4tZW5kCitQQVNTIGUuc3R5bGVbJ2dyaWQtYXJlYSddID0g
Ii0tYSIgc2hvdWxkIHNldCBncmlkLWNvbHVtbi1zdGFydAorUEFTUyBlLnN0eWxlWydncmlkLWFy
ZWEnXSA9ICItLWEiIHNob3VsZCBzZXQgZ3JpZC1yb3ctZW5kCitQQVNTIGUuc3R5bGVbJ2dyaWQt
YXJlYSddID0gIi0tYSIgc2hvdWxkIHNldCBncmlkLXJvdy1zdGFydAogUEFTUyBlLnN0eWxlWydn
cmlkLWFyZWEnXSA9ICItLWEiIHNob3VsZCBub3Qgc2V0IHVucmVsYXRlZCBsb25naGFuZHMKIFBB
U1MgZS5zdHlsZVsnZ3JpZC1hcmVhJ10gPSAiYSAvIGIiIHNob3VsZCBzZXQgZ3JpZC1jb2x1bW4t
ZW5kCiBQQVNTIGUuc3R5bGVbJ2dyaWQtYXJlYSddID0gImEgLyBiIiBzaG91bGQgc2V0IGdyaWQt
Y29sdW1uLXN0YXJ0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9wYXJzaW5nL2dyaWQtYXJlYS12YWxpZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtZ3JpZC9wYXJzaW5nL2dyaWQtYXJlYS12YWxpZC1leHBlY3RlZC50eHQKaW5kZXggNjg3YzRi
ZGE5OTgwODJkMWQzOGEyOTU0ZGNmMTI4OTZlMDQ4NTg2Mi4uZGUxZTIzNDRkZTk2ZDM3NjQ4ZTFk
OTQ4ZmVkYTFkNmQxMTI5NTY3NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvcGFyc2luZy9ncmlkLWFyZWEtdmFsaWQt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3JpZC1hcmVhLXZhbGlkLWV4cGVjdGVkLnR4dApA
QCAtNyw3ICs3LDcgQEAgRkFJTCBlLnN0eWxlWydncmlkLWFyZWEnXSA9ICJBdVRvIiBzaG91bGQg
c2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfZXF1YWxzOgogRkFJTCBlLnN0eWxlWydncmlk
LXJvdyddID0gImF1dG8iIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9lcXVh
bHM6IHNlcmlhbGl6YXRpb24gc2hvdWxkIGJlIGNhbm9uaWNhbCBleHBlY3RlZCAiYXV0byIgYnV0
IGdvdCAiYXV0byAvIGF1dG8iCiBGQUlMIGUuc3R5bGVbJ2dyaWQtcm93J10gPSAiYXV0by9hdXRv
IiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfZXF1YWxzOiBzZXJpYWxpemF0
aW9uIHNob3VsZCBiZSBjYW5vbmljYWwgZXhwZWN0ZWQgImF1dG8iIGJ1dCBnb3QgImF1dG8gLyBh
dXRvIgogUEFTUyBlLnN0eWxlWydncmlkLWNvbHVtbi1lbmQnXSA9ICJBdVRvIiBzaG91bGQgc2V0
IHRoZSBwcm9wZXJ0eSB2YWx1ZQotRkFJTCBlLnN0eWxlWydncmlkLWFyZWEnXSA9ICItLWEiIHNo
b3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9lcXVhbHM6IHNlcmlhbGl6YXRpb24g
c2hvdWxkIGJlIGNhbm9uaWNhbCBleHBlY3RlZCAiLS1hIiBidXQgZ290ICJcIi0tYVwiIC8gXCIt
LWFcIiAvIFwiLS1hXCIgLyBcIi0tYVwiIgorRkFJTCBlLnN0eWxlWydncmlkLWFyZWEnXSA9ICIt
LWEiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9lcXVhbHM6IHNlcmlhbGl6
YXRpb24gc2hvdWxkIGJlIGNhbm9uaWNhbCBleHBlY3RlZCAiLS1hIiBidXQgZ290ICItLWEgLyAt
LWEgLyAtLWEgLyAtLWEiCiBGQUlMIGUuc3R5bGVbJ2dyaWQtcm93J10gPSAiLXrPgCIgc2hvdWxk
IHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X2VxdWFsczogc2VyaWFsaXphdGlvbiBzaG91
bGQgYmUgY2Fub25pY2FsIGV4cGVjdGVkICItes+AIiBidXQgZ290ICItes+AIC8gLXrPgCIKIEZB
SUwgZS5zdHlsZVsnZ3JpZC1yb3cnXSA9ICItes+ALy16z4AiIHNob3VsZCBzZXQgdGhlIHByb3Bl
cnR5IHZhbHVlIGFzc2VydF9lcXVhbHM6IHNlcmlhbGl6YXRpb24gc2hvdWxkIGJlIGNhbm9uaWNh
bCBleHBlY3RlZCAiLXrPgCIgYnV0IGdvdCAiLXrPgCAvIC16z4AiCiBGQUlMIGUuc3R5bGVbJ2dy
aWQtcm93J10gPSAiaSAvIGkiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9l
cXVhbHM6IHNlcmlhbGl6YXRpb24gc2hvdWxkIGJlIGNhbm9uaWNhbCBleHBlY3RlZCAiaSIgYnV0
IGdvdCAiaSAvIGkiCkBAIC01Miw3ICs1Miw3IEBAIFBBU1MgZS5zdHlsZVsnZ3JpZC1yb3cnXSA9
ICJpIC8gYXV0byIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUKIEZBSUwgZS5zdHlsZVsn
Z3JpZC1yb3cnXSA9ICIyIGkgLyBhdXRvIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBh
c3NlcnRfZXF1YWxzOiBzZXJpYWxpemF0aW9uIHNob3VsZCBiZSBjYW5vbmljYWwgZXhwZWN0ZWQg
IjIgaSIgYnV0IGdvdCAiMiBpIC8gYXV0byIKIEZBSUwgZS5zdHlsZVsnZ3JpZC1yb3cnXSA9ICIx
IC8gYXV0byIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X2VxdWFsczogc2Vy
aWFsaXphdGlvbiBzaG91bGQgYmUgY2Fub25pY2FsIGV4cGVjdGVkICIxIiBidXQgZ290ICIxIC8g
YXV0byIKIFBBU1MgZS5zdHlsZVsnZ3JpZC1jb2x1bW4nXSA9ICIyIGogLyBzcGFuIDMgayIgc2hv
dWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUKLUZBSUwgZS5zdHlsZVsnZ3JpZC1jb2x1bW4tZW5k
J10gPSAiXFwzMXN0IiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfaW5fYXJy
YXk6IHNlcmlhbGl6YXRpb24gc2hvdWxkIGJlIHNvdW5kIHZhbHVlICJcIjFzdFwiIiBub3QgaW4g
YXJyYXkgWyJcXDMxIHN0IiwgIlxcMzFzdCJdCi1GQUlMIGUuc3R5bGVbJ2dyaWQtY29sdW1uLWVu
ZCddID0gIlxcMzEgc3QiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9pbl9h
cnJheTogc2VyaWFsaXphdGlvbiBzaG91bGQgYmUgc291bmQgdmFsdWUgIlwiMXN0XCIiIG5vdCBp
biBhcnJheSBbIlxcMzEgc3QiLCAiXFwzMXN0Il0KLUZBSUwgZS5zdHlsZVsnZ3JpZC1jb2x1bW4n
XSA9ICJcXDMxc3QgLyBcXDMxIHN0IiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3Nl
cnRfaW5fYXJyYXk6IHNlcmlhbGl6YXRpb24gc2hvdWxkIGJlIHNvdW5kIHZhbHVlICJcIjFzdFwi
IC8gXCIxc3RcIiIgbm90IGluIGFycmF5IFsiXFwzMSBzdCIsICJcXDMxc3QiXQorUEFTUyBlLnN0
eWxlWydncmlkLWNvbHVtbi1lbmQnXSA9ICJcXDMxc3QiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5
IHZhbHVlCitQQVNTIGUuc3R5bGVbJ2dyaWQtY29sdW1uLWVuZCddID0gIlxcMzEgc3QiIHNob3Vs
ZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitGQUlMIGUuc3R5bGVbJ2dyaWQtY29sdW1uJ10gPSAi
XFwzMXN0IC8gXFwzMSBzdCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X2lu
X2FycmF5OiBzZXJpYWxpemF0aW9uIHNob3VsZCBiZSBzb3VuZCB2YWx1ZSAiXFwzMSBzdCAvIFxc
MzEgc3QiIG5vdCBpbiBhcnJheSBbIlxcMzEgc3QiLCAiXFwzMXN0Il0KIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWxpc3Rz
L3BhcnNpbmcvY29udGVudC1pbnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1saXN0cy9wYXJzaW5nL2NvbnRlbnQt
aW52YWxpZC1leHBlY3RlZC50eHQKaW5kZXggMDkxMmE5YmVhNDc0ODdkNDgxZDAwNDRkYTdiZjIz
NDdmYzJkYmJlMS4uNWQ5YjVkYmJmMmUzOTRjNWY2YjYxZGMzYmMyYjQyNWM4ZGY5OTJmNSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLWxpc3RzL3BhcnNpbmcvY29udGVudC1pbnZhbGlkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtbGlzdHMvcGFy
c2luZy9jb250ZW50LWludmFsaWQtZXhwZWN0ZWQudHh0CkBAIC03LDE2ICs3LDE2IEBAIFBBU1Mg
ZS5zdHlsZVsnY29udGVudCddID0gImNvdW50ZXIoZm9vLCBpbml0aWFsKSIgc2hvdWxkIG5vdCBz
ZXQgdGhlIHByb3BlcnR5IHZhCiBQQVNTIGUuc3R5bGVbJ2NvbnRlbnQnXSA9ICJjb3VudGVycyhm
b28sIFwiXCIsIGluaXRpYWwpIiBzaG91bGQgbm90IHNldCB0aGUgcHJvcGVydHkgdmFsdWUKIFBB
U1MgZS5zdHlsZVsnY29udGVudCddID0gImNvdW50ZXIoZm9vLCBpbmhlcml0KSIgc2hvdWxkIG5v
dCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCiBQQVNTIGUuc3R5bGVbJ2NvbnRlbnQnXSA9ICJjb3Vu
dGVycyhmb28sIFwiXCIsIGluaGVyaXQpIiBzaG91bGQgbm90IHNldCB0aGUgcHJvcGVydHkgdmFs
dWUKLUZBSUwgZS5zdHlsZVsnY29udGVudCddID0gIlwielwiIGNvdW50ZXIoZm9vLCBub25lKSIg
c2hvdWxkIG5vdCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
ICIiIGJ1dCBnb3QgInogY291bnRlcihmb28sIG5vbmUpIgotRkFJTCBlLnN0eWxlWydjb250ZW50
J10gPSAiXCJ6XCIgY291bnRlcnMoZm9vLCBcIlwiLCBub25lKSIgc2hvdWxkIG5vdCBzZXQgdGhl
IHByb3BlcnR5IHZhbHVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIiIGJ1dCBnb3QgInogY291
bnRlcihmb28sIG5vbmUpIgorRkFJTCBlLnN0eWxlWydjb250ZW50J10gPSAiXCJ6XCIgY291bnRl
cihmb28sIG5vbmUpIiBzaG91bGQgbm90IHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgIiIgYnV0IGdvdCAiXCJ6XCIgY291bnRlcihmb28sIG5vbmUpIgorRkFJ
TCBlLnN0eWxlWydjb250ZW50J10gPSAiXCJ6XCIgY291bnRlcnMoZm9vLCBcIlwiLCBub25lKSIg
c2hvdWxkIG5vdCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
ICIiIGJ1dCBnb3QgIlwielwiIGNvdW50ZXIoZm9vLCBub25lKSIKIFBBU1MgZS5zdHlsZVsnY29u
dGVudCddID0gIlwielwiIGNvdW50ZXIoZm9vLCB1bnNldCkiIHNob3VsZCBub3Qgc2V0IHRoZSBw
cm9wZXJ0eSB2YWx1ZQogUEFTUyBlLnN0eWxlWydjb250ZW50J10gPSAiXCJ6XCIgY291bnRlcnMo
Zm9vLCBcIlwiLCB1bnNldCkiIHNob3VsZCBub3Qgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQogUEFT
UyBlLnN0eWxlWydjb250ZW50J10gPSAiXCJ6XCIgY291bnRlcihmb28sIGluaXRpYWwpIiBzaG91
bGQgbm90IHNldCB0aGUgcHJvcGVydHkgdmFsdWUKIFBBU1MgZS5zdHlsZVsnY29udGVudCddID0g
IlwielwiIGNvdW50ZXJzKGZvbywgXCJcIiwgaW5pdGlhbCkiIHNob3VsZCBub3Qgc2V0IHRoZSBw
cm9wZXJ0eSB2YWx1ZQogUEFTUyBlLnN0eWxlWydjb250ZW50J10gPSAiXCJ6XCIgY291bnRlcihm
b28sIGluaGVyaXQpIiBzaG91bGQgbm90IHNldCB0aGUgcHJvcGVydHkgdmFsdWUKIFBBU1MgZS5z
dHlsZVsnY29udGVudCddID0gIlwielwiIGNvdW50ZXJzKGZvbywgXCJcIiwgaW5oZXJpdCkiIHNo
b3VsZCBub3Qgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQotRkFJTCBlLnN0eWxlWydjb250ZW50J10g
PSAiY291bnRlcihmb28sIG5vbmUpIFwielwiIiBzaG91bGQgbm90IHNldCB0aGUgcHJvcGVydHkg
dmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIiIgYnV0IGdvdCAiY291bnRlcihmb28sIG5v
bmUpIHoiCi1GQUlMIGUuc3R5bGVbJ2NvbnRlbnQnXSA9ICJjb3VudGVycyhmb28sIFwiXCIsIG5v
bmUpIFwielwiIiBzaG91bGQgbm90IHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgIiIgYnV0IGdvdCAiY291bnRlcihmb28sIG5vbmUpIHoiCitGQUlMIGUuc3R5
bGVbJ2NvbnRlbnQnXSA9ICJjb3VudGVyKGZvbywgbm9uZSkgXCJ6XCIiIHNob3VsZCBub3Qgc2V0
IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiIiBidXQgZ290ICJj
b3VudGVyKGZvbywgbm9uZSkgXCJ6XCIiCitGQUlMIGUuc3R5bGVbJ2NvbnRlbnQnXSA9ICJjb3Vu
dGVycyhmb28sIFwiXCIsIG5vbmUpIFwielwiIiBzaG91bGQgbm90IHNldCB0aGUgcHJvcGVydHkg
dmFsdWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIiIgYnV0IGdvdCAiY291bnRlcihmb28sIG5v
bmUpIFwielwiIgogUEFTUyBlLnN0eWxlWydjb250ZW50J10gPSAiY291bnRlcihmb28sIHVuc2V0
KSBcInpcIiIgc2hvdWxkIG5vdCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCiBQQVNTIGUuc3R5bGVb
J2NvbnRlbnQnXSA9ICJjb3VudGVycyhmb28sIFwiXCIsIHVuc2V0KSBcInpcIiIgc2hvdWxkIG5v
dCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCiBQQVNTIGUuc3R5bGVbJ2NvbnRlbnQnXSA9ICJjb3Vu
dGVyKGZvbywgaW5pdGlhbCkgXCJ6XCIiIHNob3VsZCBub3Qgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1
ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLXRyYW5zaXRpb25zL3RyYW5zaXRpb24tcHJvcGVydHktMDAyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10
cmFuc2l0aW9ucy90cmFuc2l0aW9uLXByb3BlcnR5LTAwMi1leHBlY3RlZC50eHQKaW5kZXggMTUz
ZWY5NDY1ZWRmNGJhZGQyNDY1MDA3YWNiNjI4NGVhODhmOTYwYS4uM2M0ODMwOTk0ZWVhMDA0NTky
Y2ZlY2RiYjJiNTI5N2IwODI4Nzc2ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXRyYW5zaXRpb25zL3RyYW5zaXRpb24tcHJv
cGVydHktMDAyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHJhbnNpdGlvbnMvdHJhbnNpdGlvbi1wcm9wZXJ0eS0w
MDItZXhwZWN0ZWQudHh0CkBAIC0yLDggKzIsOCBAQAogRkFJTCBwYXJzZSAnbm9uZSwgYWxsJyBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAibm9uZSwgYWxsIiBidXQgZ290ICJhbGwiCiBGQUlMIHBh
cnNlICdhbGwsIG5vbmUnIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJhbGwsIG5vbmUiIGJ1dCBn
b3QgImFsbCIKIFBBU1MgcGFyc2UgJ2Zvb2JhcicKLUZBSUwgcGFyc2UgJ2FsbCwgZm9vYmFyJyBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiYWxsLCBmb29iYXIiIGJ1dCBnb3QgImZvb2JhciIKLUZB
SUwgcGFyc2UgJ2Zvb2JhciwgYWxsJyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiZm9vYmFyLCBh
bGwiIGJ1dCBnb3QgImFsbCIKK1BBU1MgcGFyc2UgJ2FsbCwgZm9vYmFyJworUEFTUyBwYXJzZSAn
Zm9vYmFyLCBhbGwnCiBQQVNTIHBhcnNlICdpbmhlcml0JwogUEFTUyBwYXJzZSAnaW5pdGlhbCcK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1wc2V1ZG8tZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0
ZWRTdHlsZS1wc2V1ZG8tZXhwZWN0ZWQudHh0CmluZGV4IGZkMzU3YTg3NDFiODEyMzQ1MWUxNzc2
NzdlZWQxMDY3ZDVkM2NhMjguLmEzYTg5ZWQ3MmIwZWUwYmQ4MWNlODAwM2FmOTE4ZmQ2YWMxNzFi
MzkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtcHNldWRvLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRD
b21wdXRlZFN0eWxlLXBzZXVkby1leHBlY3RlZC50eHQKQEAgLTIsNyArMiw3IEBACiBQQVNTIFJl
c29sdXRpb24gb2Ygd2lkdGggaXMgY29ycmVjdCBmb3IgOjpiZWZvcmUgYW5kIDo6YWZ0ZXIgcHNl
dWRvLWVsZW1lbnRzCiBQQVNTIFJlc29sdXRpb24gb2Ygd2lkdGggaXMgY29ycmVjdCBmb3IgOjpi
ZWZvcmUgYW5kIDo6YWZ0ZXIgcHNldWRvLWVsZW1lbnRzIG9mIGRpc3BsYXk6IGNvbnRlbnRzIGVs
ZW1lbnRzCiBQQVNTIFJlc29sdXRpb24gb2Ygbm9uZXhpc3RlbnQgcHNldWRvLWVsZW1lbnQgc3R5
bGVzCi1GQUlMIFJlc29sdXRpb24gb2YgcHNldWRvLWVsZW1lbnQgc3R5bGVzIGluIGRpc3BsYXk6
IG5vbmUgZWxlbWVudHMgYXNzZXJ0X2VxdWFsczogUHNldWRvLXN0eWxlcyBvZiBkaXNwbGF5OiBu
b25lIGVsZW1lbnRzIHNob3VsZCBiZSBjb3JyZWN0IGV4cGVjdGVkICJcIkZvb1wiIiBidXQgZ290
ICJGb28iCitQQVNTIFJlc29sdXRpb24gb2YgcHNldWRvLWVsZW1lbnQgc3R5bGVzIGluIGRpc3Bs
YXk6IG5vbmUgZWxlbWVudHMKIFBBU1MgSXRlbS1iYXNlZCBibG9ja2lmaWNhdGlvbiBvZiBwc2V1
ZG8tZWxlbWVudHMKIEZBSUwgSXRlbS1iYXNlZCBibG9ja2lmaWNhdGlvbiBvZiBub25leGlzdGVu
dCBwc2V1ZG8tZWxlbWVudHMgYXNzZXJ0X2VxdWFsczogUHNldWRvLXN0eWxlcyBvZiBkaXNwbGF5
OiBmbGV4IGVsZW1lbnRzIHNob3VsZCBnZXQgYmxvY2tpZmllZCBleHBlY3RlZCAiYmxvY2siIGJ1
dCBnb3QgImlubGluZSIKIFBBU1MgZGlzcGxheTogY29udGVudHMgb24gcHNldWRvLWVsZW1lbnRz
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3NvbS9zZXJpYWxpemUtdmFsdWVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL3NlcmlhbGl6ZS12YWx1ZXMt
ZXhwZWN0ZWQudHh0CmluZGV4IDQxYTU5ZDQ1ZDJjZDBiNTVhZjMzNzJhNGRiOTYwYTJiZjgyN2Q3
YWMuLmViMzA4ZWUzMTEzMjNmNWYwZDVhY2VlNGJiYzRmZDYxZWVlNDM1MjMgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL3Nl
cmlhbGl6ZS12YWx1ZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL3NlcmlhbGl6ZS12YWx1ZXMtZXhwZWN0ZWQu
dHh0CkBAIC0zMTUsOCArMzE1LDggQEAgUEFTUyBjb2xvcjogcmdiYSg1LCA3LCAxMCwgMC41KQog
UEFTUyBjb2xvcjogaW5oZXJpdAogUEFTUyBjb250ZW50OiBub3JtYWwKIFBBU1MgY29udGVudDog
bm9uZQotRkFJTCBjb250ZW50OiAic3RyaW5nIiBhc3NlcnRfZXF1YWxzOiBjb250ZW50IHJhdyBp
bmxpbmUgc3R5bGUgZGVjbGFyYXRpb24gZXhwZWN0ZWQgIlwic3RyaW5nXCIiIGJ1dCBnb3QgInN0
cmluZyIKLUZBSUwgY29udGVudDogJ3N0cmluZycgYXNzZXJ0X2VxdWFsczogY29udGVudCByYXcg
aW5saW5lIHN0eWxlIGRlY2xhcmF0aW9uIGV4cGVjdGVkICJcInN0cmluZ1wiIiBidXQgZ290ICJz
dHJpbmciCitQQVNTIGNvbnRlbnQ6ICJzdHJpbmciCitQQVNTIGNvbnRlbnQ6ICdzdHJpbmcnCiBQ
QVNTIGNvbnRlbnQ6IHVybCgiaHR0cDovL2xvY2FsaG9zdC8iKQogUEFTUyBjb250ZW50OiB1cmwo
aHR0cDovL2xvY2FsaG9zdC8pCiBGQUlMIGNvbnRlbnQ6IGNvdW50ZXIocGFyLW51bSkgYXNzZXJ0
X2VxdWFsczogY29udGVudCByYXcgaW5saW5lIHN0eWxlIGRlY2xhcmF0aW9uIGV4cGVjdGVkICJj
b3VudGVyKHBhci1udW0pIiBidXQgZ290ICJjb3VudGVyKHBhci1udW0sIGRlY2ltYWwpIgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9wc2V1ZG8tZWxlbWVudC1tYXRjaGVz
LWZvci1wc2V1ZG8tZWxlbWVudC1ub2RlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3Bl
Y3Rvci9jc3MvcHNldWRvLWVsZW1lbnQtbWF0Y2hlcy1mb3ItcHNldWRvLWVsZW1lbnQtbm9kZS1l
eHBlY3RlZC50eHQKaW5kZXggNWJhZTQ4MzdlMmU3ZDZhODhiYTEzN2QwNzE1YTAwYjZlYzk3N2Uw
Ny4uZDAwYjMxMjIyM2JiZjI4NmYzYWM1YTYxOTA3OTU4Mjg4ZmNhYWIzZSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9wc2V1ZG8tZWxlbWVudC1tYXRjaGVzLWZvci1wc2V1
ZG8tZWxlbWVudC1ub2RlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
Y3NzL3BzZXVkby1lbGVtZW50LW1hdGNoZXMtZm9yLXBzZXVkby1lbGVtZW50LW5vZGUtZXhwZWN0
ZWQudHh0CkBAIC05LDcgKzksNyBAQCBQQVNTOiBObyBBdHRyaWJ1dGUgU3R5bGVzCiBQQVNTOiBO
byBJbmhlcml0ZWQgU3R5bGVzCiBQQVNTOiBObyBQc2V1ZG8gRWxlbWVudCBTdHlsZXMKIFBBU1M6
IEhhcyBDb21wdXRlZCBTdHlsZXMKLVBST1BFUlRZOiBjb250ZW50OiBiZWZvcmU7CitQUk9QRVJU
WTogY29udGVudDogImJlZm9yZSI7CiBQUk9QRVJUWTogY29sb3I6IHJnYigwLCAwLCAyNTUpOwog
TUFUQ0hFRCBSVUxFOgogICBTRUxFQ1RPUjogaW5wdXQ6YmVmb3JlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDViNWE3Yjk3ZDdjNTJiN2RkZjJkNzE4ZDI2
Nzc3MmFjNGQzZWRlZjMuLjRlODMxZjM4MmI5MTJmNDJkMTUzODY4ZTc5ZmM1MDBmNzc0YTQ3Mzkg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCisr
KyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMTI2LDYg
KzIxMjYsNyBAQCB3ZWJraXQub3JnL2IvMjIxMjE4IFsgQmlnU3VyKyBdIGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZAogd2Via2l0Lm9yZy9iLzIyMTEwMCBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhl
LWF1ZGlvd29ya2xldC1pbnRlcmZhY2UvYXVkaW93b3JrbGV0bm9kZS1jaGFubmVsLWNvdW50Lmh0
dHBzLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogCiAjIEBjb3VudGVyLXN0eWxlIFdQVCBmYWlsdXJl
cyBzcGVjaWZpYyB0byBNYWMgcGxhdGZvcm1zCitbIE1vamF2ZSBDYXRhbGluYSBdIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb3VudGVyLXN0eWxlcy9sb3dlci1hcm1l
bmlhbi9jc3MzLWNvdW50ZXItc3R5bGVzLTExMi5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvYmVu
Z2FsaS9jc3MzLWNvdW50ZXItc3R5bGVzLTExNy5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY291bnRlci1zdHlsZXMvZ3Vq
YXJhdGkvY3NzMy1jb3VudGVyLXN0eWxlcy0xMjMuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQog
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvdW50ZXItc3R5bGVzL2d1
cm11a2hpL2NzczMtY291bnRlci1zdHlsZXMtMTI2Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0K
QEAgLTIyNzgsNCArMjI3OSw0IEBAIHdlYmtpdC5vcmcvYi8yMjYyOTkgWyBCaWdTdXIgXSBodHRw
L3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluCiAKIHdlYmtpdC5v
cmcvYi8yMjY1MjAgbWVkaWEvdmlkZW8tcGxheWVkLWNvbGxhcHNlLmh0bWwgWyBQYXNzIFRpbWVv
dXQgRmFpbHVyZSBdCiAKLXdlYmtpdC5vcmcvYi8yMjY1OTggYW5pbWF0aW9ucy9sZWFrLWRvY3Vt
ZW50LXdpdGgtY3NzLWFuaW1hdGlvbi5odG1sIFsgUGFzcyBGYWlsdXJlIF0KXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCit3ZWJraXQub3JnL2IvMjI2NTk4IGFuaW1hdGlvbnMvbGVhay1kb2N1
bWVudC13aXRoLWNzcy1hbmltYXRpb24uaHRtbCBbIFBhc3MgRmFpbHVyZSBdCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>