<?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>238345</bug_id>
          
          <creation_ts>2022-03-24 13:06:36 -0700</creation_ts>
          <short_desc>[css-cascade] makeprop.pl should sort deferred properties at the end</short_desc>
          <delta_ts>2022-04-08 15:48:23 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=238888</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>
          <dependson>238350</dependson>
          <blocked>238260</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Oriol Brufau">obrufau</reporter>
          <assigned_to name="Oriol Brufau">obrufau</assigned_to>
          <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>joepeck</cc>
    
    <cc>koivisto</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1854824</commentid>
    <comment_count>0</comment_count>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-24 13:06:36 -0700</bug_when>
    <thetext>Currently, the CSSPropertyID enum is sorted like this:

1. Special meaning: CSSPropertyInvalid and CSSPropertyCustom
2. High priority properties: firstCSSProperty..lastHighPriorityProperty
3. Low priority properties: (lastHighPriorityProperty+1)..lastCSSProperty

However, among low priority ones, there are some that are not cascaded with the others, they are deferred and applied in parse order.
These should be sorted into their own category at the end:

1. Special meaning: CSSPropertyInvalid and CSSPropertyCustom
2. High priority properties: firstCSSProperty..lastHighPriorityProperty
3. Low priority properties: (lastHighPriorityProperty+1)..lastLowPriorityProperty
4. Deferred properties: (lastLowPriorityProperty+1)..lastCSSProperty

This would help bug 238260.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854840</commentid>
    <comment_count>1</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-03-24 13:55:44 -0700</bug_when>
    <thetext>Since this is a generated file, I suggest we generate first/last constants for each section.

    first/lastCSSProperty
    first/lastHighPriorityCSSProperty
    first/lastLowPriorityCSSProperty
    first/lastDeferredCSSProperty

That way, most code that wants to make checks can be written without depending on the ordering at all; the few places that do depend on the ordering can be written in the clearest fashion possible.

Somewhere we could even put functions so we don&apos;t have to use these constants directly so often:

    bool isHighPriority(CSSPropertyID);
    bool isLowPriority(CSSPropertyID);
    bool isDeferred(CSSPropertyID);

Or whatever predicates we need. I think it helps when code can write such things so they read cleanly even if they are just expanding to &lt; and &gt; checks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854856</commentid>
    <comment_count>2</comment_count>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-24 14:22:34 -0700</bug_when>
    <thetext>Yes, actually StyleBuilder.cpp already has

  static const CSSPropertyID firstLowPriorityProperty = static_cast&lt;CSSPropertyID&gt;(lastHighPriorityProperty + 1);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854898</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-03-24 16:06:24 -0700</bug_when>
    <thetext>&lt;rdar://problem/90799486&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1855170</commentid>
    <comment_count>4</comment_count>
      <attachid>455784</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-25 10:52:16 -0700</bug_when>
    <thetext>Created attachment 455784
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1855171</commentid>
    <comment_count>5</comment_count>
      <attachid>455785</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-25 10:53:03 -0700</bug_when>
    <thetext>Created attachment 455785
Patch for EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1855183</commentid>
    <comment_count>6</comment_count>
      <attachid>455789</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-25 11:49:18 -0700</bug_when>
    <thetext>Created attachment 455789
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1855185</commentid>
    <comment_count>7</comment_count>
      <attachid>455791</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-25 11:50:01 -0700</bug_when>
    <thetext>Created attachment 455791
Patch for EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1859918</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-04-08 15:48:20 -0700</bug_when>
    <thetext>Committed r292639 (249459@main): &lt;https://commits.webkit.org/249459@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 455789.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455784</attachid>
            <date>2022-03-25 10:52:16 -0700</date>
            <delta_ts>2022-03-25 11:49:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238345-20220325185215.patch</filename>
            <type>text/plain</type>
            <size>15342</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNzQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWI4MDczNzFkZjdlNzky
NDFmODIzYTkzMzdjM2YwMGI2NTBiODA3OC4uYzI5MDljMmE0NWY3OWVhY2VjZWU5YTRlMDkxNjIx
NWUxYzY4ZDVhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY2IEBACisyMDIyLTAzLTI1ICBPcmlv
bCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzcy1jYXNjYWRlXSBT
b3J0IGRlZmVycmVkIHByb3BlcnRpZXMgYXQgdGhlIGVuZCBvZiBDU1NQcm9wZXJ0eUlEIGVudW0K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzODM0NQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEJ1ZyAyMzgy
NjAgd2lsbCBvcHRpbWl6ZSB0aGUgbG9naWMgZm9yIGNhc2NhZGluZyBkZWZlcnJlZCBwcm9wZXJ0
aWVzLgorICAgICAgICBUaGlzIHNvcnRzIHRoZW0gYXQgdGhlIGVuZCwgYWZ0ZXIgbG93IHByaW9y
aXR5IG9uZXMsIHdoaWNoIHdpbGwgYWxsb3cKKyAgICAgICAgc29tZSBmdXJ0aGVyIG9wdGltaXph
dGlvbnMuCisgICAgICAgIFRoaXMgaXMgaW4gcHJlcGFyYXRpb24gb2YgYnVnIDIzODI2MCwgd2hp
Y2ggcGxhbnMgdG8gdHVybiBhbGwgbG9naWNhbAorICAgICAgICBhbmQgcGh5c2ljYWwgcHJvcGVy
dGllcyBpbnRvIGRlZmVycmVkLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyBzaW5jZSB0aGVyZSBz
aG91bGQgYmUgbm8gY2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgICogY3NzL21ha2Vwcm9w
LnBsOgorICAgICAgICAoc29ydEJ5RGVzY2VuZGluZ1ByaW9yaXR5QW5kTmFtZSk6CisgICAgICAg
IFNvcnQgZGVmZXJyZWQgcHJvcGVydGllcyBhdCB0aGUgZW5kIG9mIENTU1Byb3BlcnR5SUQgZW51
bS4KKyAgICAgICAgQWRkIGZpcnN0SGlnaFByaW9yaXR5UHJvcGVydHksIGZpcnN0TG93UHJpb3Jp
dHlQcm9wZXJ0eSwKKyAgICAgICAgbGFzdExvd1ByaW9yaXR5UHJvcGVydHksIGZpcnN0RGVmZXJy
ZWRQcm9wZXJ0eSBhbmQgbGFzdERlZmVycmVkUHJvcGVydHkuCisKKyAgICAgICAgKiBzdHlsZS9Q
cm9wZXJ0eUNhc2NhZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlByb3BlcnR5Q2Fz
Y2FkZTo6c2V0KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpQcm9wZXJ0eUNhc2NhZGU6OnNl
dERlZmVycmVkKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpQcm9wZXJ0eUNhc2NhZGU6OmFk
ZE1hdGNoKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpzaG91bGRBcHBseVByb3BlcnR5SW5Q
YXJzZU9yZGVyKTogRGVsZXRlZC4KKyAgICAgICAgRGVsZXRlIHNob3VsZEFwcGx5UHJvcGVydHlJ
blBhcnNlT3JkZXIoKSwgc2luY2UgaW5zdGVhZCB3ZSBjYW4ganVzdAorICAgICAgICBjb21wYXJl
IHRoZSBDU1NQcm9wZXJ0eUlkIGFuZCBmaXJzdERlZmVycmVkUHJvcGVydHkgd2l0aCA8IG9yID49
LgorCisgICAgICAgICogc3R5bGUvUHJvcGVydHlDYXNjYWRlLmg6CisgICAgICAgIChXZWJDb3Jl
OjpTdHlsZTo6UHJvcGVydHlDYXNjYWRlOjpoYXNOb3JtYWxQcm9wZXJ0eSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpTdHlsZTo6UHJvcGVydHlDYXNjYWRlOjpub3JtYWxQcm9wZXJ0eSBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UHJvcGVydHlDYXNjYWRlOjpoYXNEZWZlcnJl
ZFByb3BlcnR5IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpQcm9wZXJ0eUNhc2Nh
ZGU6Omhhc1Byb3BlcnR5IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlN0eWxl
OjpQcm9wZXJ0eUNhc2NhZGU6OnByb3BlcnR5IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgUmVu
YW1lIGhhc1Byb3BlcnR5KCkgYW5kIHByb3BlcnR5KCkgdG8gaGFzTm9ybWFsUHJvcGVydHkoKSBh
bmQKKyAgICAgICAgbm9ybWFsUHJvcGVydHkoKSwgdG8gbWFrZSBpdCBjbGVhciB0aGV5IGFyZSBu
b3QgZm9yIGRlZmVycmVkIHByb3BlcnRpZXMuCisgICAgICAgIFJlZHVjZSB0aGUgc2l6ZSBvZiBt
X3Byb3BlcnRpZXMgYXJyYXkgYW5kIG1fcHJvcGVydHlJc1ByZXNlbnQgYml0c2V0LAorICAgICAg
ICBzaW5jZSB0aGV5IGRvbid0IG5lZWQgdG8gaW5jbHVkZSBkZWZlcnJlZCBwcm9wZXJ0aWVzLgor
CisgICAgICAgICogc3R5bGUvU3R5bGVCdWlsZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0
eWxlOjpCdWlsZGVyOjphcHBseUFsbFByb3BlcnRpZXMpOgorICAgICAgICAoV2ViQ29yZTo6U3R5
bGU6OkJ1aWxkZXI6OmFwcGx5SGlnaFByaW9yaXR5UHJvcGVydGllcyk6CisgICAgICAgIChXZWJD
b3JlOjpTdHlsZTo6QnVpbGRlcjo6YXBwbHlOb25IaWdoUHJpb3JpdHlQcm9wZXJ0aWVzKToKKyAg
ICAgICAgKFdlYkNvcmU6OlN0eWxlOjpCdWlsZGVyOjphcHBseVByb3BlcnRpZXNJbXBsKToKKyAg
ICAgICAgKFdlYkNvcmU6OlN0eWxlOjpCdWlsZGVyOjphcHBseVByb3BlcnR5KToKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlOjpCdWlsZGVyOjphcHBseUxvd1ByaW9yaXR5UHJvcGVydGllcyk6IERl
bGV0ZWQuCisgICAgICAgIFJlbmFtZSBhcHBseUxvd1ByaW9yaXR5UHJvcGVydGllcygpIHRvIGFw
cGx5Tm9uSGlnaFByaW9yaXR5UHJvcGVydGllcygpCisgICAgICAgIHRvIG1ha2UgaXQgY2xlYXIg
dGhhdCBpdCBpbmNsdWRlcyBjdXN0b20gYW5kIGRlZmVycmVkIHByb3BlcnRpZXMuCisgICAgICAg
IFVzZSB0aGUgbmV3IGZpcnN0SGlnaFByaW9yaXR5UHJvcGVydHkgYW5kIGxhc3RMb3dQcmlvcml0
eVByb3BlcnR5CisgICAgICAgIGNvbnN0YW50cyBmb3IgY2xhcml0eSBhbmQgdG8gc2tpcCBkZWZl
cnJlZCBwcm9wZXJ0aWVzLgorICAgICAgICBSZW5hbWUgaGFzUHJvcGVydHkoKSBhbmQgcHJvcGVy
dHkoKSB0byBoYXNOb3JtYWxQcm9wZXJ0eSgpIGFuZAorICAgICAgICBub3JtYWxQcm9wZXJ0eSgp
LCB0byBtYWtlIGl0IGNsZWFyIHRoZXkgYXJlIG5vdCBmb3IgZGVmZXJyZWQgcHJvcGVydGllcy4K
KworICAgICAgICAqIHN0eWxlL1N0eWxlQnVpbGRlci5oOgorICAgICAgICBSZW5hbWUgYXBwbHlM
b3dQcmlvcml0eVByb3BlcnRpZXMoKSB0byBhcHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMo
KQorICAgICAgICB0byBtYWtlIGl0IGNsZWFyIHRoYXQgaXQgaW5jbHVkZXMgY3VzdG9tIGFuZCBk
ZWZlcnJlZCBwcm9wZXJ0aWVzLgorCisgICAgICAgICogc3R5bGUvU3R5bGVSZXNvbHZlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UmVzb2x2ZXI6OmFwcGx5TWF0Y2hlZFByb3BlcnRp
ZXMpOgorICAgICAgICBSZW5hbWUgYXBwbHlMb3dQcmlvcml0eVByb3BlcnRpZXMoKSB0byBhcHBs
eU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMoKQorICAgICAgICB0byBtYWtlIGl0IGNsZWFyIHRo
YXQgaXQgaW5jbHVkZXMgY3VzdG9tIGFuZCBkZWZlcnJlZCBwcm9wZXJ0aWVzLgorCiAyMDIyLTAz
LTI1ICBPcmlvbCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CiAKICAgICAgICAgW2Nzcy1j
YXNjYWRlXSBNZXJnZSBnZXRSZWxhdGVkUHJvcGVydHlJZCgpIGFuZCBzaG91bGRBcHBseVByb3Bl
cnR5SW5QYXJzZU9yZGVyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9tYWtlcHJv
cC5wbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9tYWtlcHJvcC5wbAppbmRleCBjOTFmYWU2MTUzZDg4
ZjY3NGY3YTg3ZWIyNDYyOGI5MTAxMDA0MGYwLi4zN2EyMTQ1Njk0NzZhMDJjMDhjMzg3MmRkYmRj
NjM0YjdjODJlNzg0IDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvbWFrZXByb3AucGwK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL21ha2Vwcm9wLnBsCkBAIC0zNTksNiArMzU5LDE0IEBA
IHN1YiBzb3J0QnlEZXNjZW5kaW5nUHJpb3JpdHlBbmROYW1lCiAgICAgaWYgKCEhJG5hbWVJc0hp
Z2hQcmlvcml0eXskYX0gPiAhISRuYW1lSXNIaWdoUHJpb3JpdHl7JGJ9KSB7CiAgICAgICAgIHJl
dHVybiAtMTsKICAgICB9CisgICAgIyBEZWZlciBuYW1lcyB3aXRoIGEgcmVsYXRlZCBwcm9wZXJ0
eSB0byB0aGUgYmFjaworICAgIGlmICghISRyZWxhdGVkUHJvcGVydHl7JGF9IDwgISEkcmVsYXRl
ZFByb3BlcnR5eyRifSkgeworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmICghISRy
ZWxhdGVkUHJvcGVydHl7JGF9ID4gISEkcmVsYXRlZFByb3BlcnR5eyRifSkgeworICAgICAgICBy
ZXR1cm4gMTsKKyAgICB9CisgICAgIyBTb3J0IHN1bmtlbiBuYW1lcyBhdCB0aGUgZW5kIG9mIHRo
ZWlyIHByaW9yaXR5IGJ1Y2tldAogICAgIGlmICghISRuYW1lUHJpb3JpdHlTaG91bGRTaW5reyRh
fSA8ICEhJG5hbWVQcmlvcml0eVNob3VsZFNpbmt7JGJ9KSB7CiAgICAgICAgIHJldHVybiAtMTsK
ICAgICB9CkBAIC04MzIsOSArODQwLDI0IEBAIEVPRgogbXkgJGZpcnN0ID0gJG51bVByZWRlZmlu
ZWRQcm9wZXJ0aWVzOwogbXkgJGkgPSAkbnVtUHJlZGVmaW5lZFByb3BlcnRpZXM7CiBteSAkbWF4
TGVuID0gMDsKK215ICRmaXJzdEhpZ2hQcmlvcml0eVByb3BlcnR5TmFtZTsKIG15ICRsYXN0SGln
aFByaW9yaXR5UHJvcGVydHlOYW1lOworbXkgJGZpcnN0TG93UHJpb3JpdHlQcm9wZXJ0eU5hbWU7
CitteSAkbGFzdExvd1ByaW9yaXR5UHJvcGVydHlOYW1lOworbXkgJGZpcnN0RGVmZXJyZWRQcm9w
ZXJ0eU5hbWU7CitteSAkbGFzdERlZmVycmVkUHJvcGVydHlOYW1lOwogZm9yZWFjaCBteSAkbmFt
ZSAoQG5hbWVzKSB7Ci0gICRsYXN0SGlnaFByaW9yaXR5UHJvcGVydHlOYW1lID0gJG5hbWUgaWYg
JG5hbWVJc0hpZ2hQcmlvcml0eXskbmFtZX07ICMgQXNzdW1lcyB0aGF0IEBuYW1lcyBpcyBzb3J0
ZWQgYnkgZGVzY2VuZGluZyBwcmlvcml0aWVzLgorICAjIEFzc3VtZXMgdGhhdCBAbmFtZXMgaXMg
c29ydGVkIGJ5IGRlc2NlbmRpbmcgcHJpb3JpdGllcy4KKyAgaWYgKCRuYW1lSXNIaWdoUHJpb3Jp
dHl7JG5hbWV9KSB7CisgICAgJGZpcnN0SGlnaFByaW9yaXR5UHJvcGVydHlOYW1lID0gJG5hbWUg
aWYgISRmaXJzdEhpZ2hQcmlvcml0eVByb3BlcnR5TmFtZTsKKyAgICAkbGFzdEhpZ2hQcmlvcml0
eVByb3BlcnR5TmFtZSA9ICRuYW1lOworICB9IGVsc2lmICghJHJlbGF0ZWRQcm9wZXJ0eXskbmFt
ZX0pIHsKKyAgICAkZmlyc3RMb3dQcmlvcml0eVByb3BlcnR5TmFtZSA9ICRuYW1lIGlmICEkZmly
c3RMb3dQcmlvcml0eVByb3BlcnR5TmFtZTsKKyAgICAkbGFzdExvd1ByaW9yaXR5UHJvcGVydHlO
YW1lID0gJG5hbWU7CisgIH0gZWxzZSB7CisgICAgJGZpcnN0RGVmZXJyZWRQcm9wZXJ0eU5hbWUg
PSAkbmFtZSBpZiAhJGZpcnN0RGVmZXJyZWRQcm9wZXJ0eU5hbWU7CisgICAgJGxhc3REZWZlcnJl
ZFByb3BlcnR5TmFtZSA9ICRuYW1lOworICB9CiAgIHByaW50IEhFQURFUiAiICAgIENTU1Byb3Bl
cnR5IiAuICRuYW1lVG9JZHskbmFtZX0gLiAiID0gIiAuICRpIC4gIixcbiI7CiAgICRpID0gJGkg
KyAxOwogICBpZiAobGVuZ3RoKCRuYW1lKSA+ICRtYXhMZW4pIHsKQEAgLTg0OSw3ICs4NzIsMTIg
QEAgcHJpbnQgSEVBREVSICJjb25zdCBpbnQgZmlyc3RDU1NQcm9wZXJ0eSA9ICRmaXJzdDtcbiI7
CiBwcmludCBIRUFERVIgImNvbnN0IGludCBudW1DU1NQcm9wZXJ0aWVzID0gJG51bTtcbiI7CiBw
cmludCBIRUFERVIgImNvbnN0IGludCBsYXN0Q1NTUHJvcGVydHkgPSAkbGFzdDtcbiI7CiBwcmlu
dCBIRUFERVIgImNvbnN0IHNpemVfdCBtYXhDU1NQcm9wZXJ0eU5hbWVMZW5ndGggPSAkbWF4TGVu
O1xuIjsKLXByaW50IEhFQURFUiAiY29uc3QgQ1NTUHJvcGVydHlJRCBsYXN0SGlnaFByaW9yaXR5
UHJvcGVydHkgPSBDU1NQcm9wZXJ0eSIgLiAkbmFtZVRvSWR7JGxhc3RIaWdoUHJpb3JpdHlQcm9w
ZXJ0eU5hbWV9IC4gIjtcblxuIjsKK3ByaW50IEhFQURFUiAiY29uc3QgQ1NTUHJvcGVydHlJRCBm
aXJzdEhpZ2hQcmlvcml0eVByb3BlcnR5ID0gQ1NTUHJvcGVydHkiIC4gJG5hbWVUb0lkeyRmaXJz
dEhpZ2hQcmlvcml0eVByb3BlcnR5TmFtZX0gLiAiO1xuIjsKK3ByaW50IEhFQURFUiAiY29uc3Qg
Q1NTUHJvcGVydHlJRCBsYXN0SGlnaFByaW9yaXR5UHJvcGVydHkgPSBDU1NQcm9wZXJ0eSIgLiAk
bmFtZVRvSWR7JGxhc3RIaWdoUHJpb3JpdHlQcm9wZXJ0eU5hbWV9IC4gIjtcbiI7CitwcmludCBI
RUFERVIgImNvbnN0IENTU1Byb3BlcnR5SUQgZmlyc3RMb3dQcmlvcml0eVByb3BlcnR5ID0gQ1NT
UHJvcGVydHkiIC4gJG5hbWVUb0lkeyRmaXJzdExvd1ByaW9yaXR5UHJvcGVydHlOYW1lfSAuICI7
XG4iOworcHJpbnQgSEVBREVSICJjb25zdCBDU1NQcm9wZXJ0eUlEIGxhc3RMb3dQcmlvcml0eVBy
b3BlcnR5ID0gQ1NTUHJvcGVydHkiIC4gJG5hbWVUb0lkeyRsYXN0TG93UHJpb3JpdHlQcm9wZXJ0
eU5hbWV9IC4gIjtcbiI7CitwcmludCBIRUFERVIgImNvbnN0IENTU1Byb3BlcnR5SUQgZmlyc3RE
ZWZlcnJlZFByb3BlcnR5ID0gQ1NTUHJvcGVydHkiIC4gJG5hbWVUb0lkeyRmaXJzdERlZmVycmVk
UHJvcGVydHlOYW1lfSAuICI7XG4iOworcHJpbnQgSEVBREVSICJjb25zdCBDU1NQcm9wZXJ0eUlE
IGxhc3REZWZlcnJlZFByb3BlcnR5ID0gQ1NTUHJvcGVydHkiIC4gJG5hbWVUb0lkeyRsYXN0RGVm
ZXJyZWRQcm9wZXJ0eU5hbWV9IC4gIjtcblxuIjsKIAogcHJpbnQgSEVBREVSICJzdGF0aWMgY29u
c3QgQ1NTUHJvcGVydHlJRCBjb21wdXRlZFByb3BlcnR5SURzW10gPSB7XG4iOwogbXkgJG51bUNv
bXB1dGVkUHJvcGVydHlJRHMgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUv
UHJvcGVydHlDYXNjYWRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2Fk
ZS5jcHAKaW5kZXggNWQ0NDc3NzgwYjkzYTQ5YzAxNjRkM2IzMzkxMzE5YTkwYzEyMDZhMi4uNTg5
ODk4ZjU4NDQxYWFmM2U4ODcwMDNjZWFhNmQzNGJlODQ5MGRiOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwCkBAIC0zOCwxMSArMzgsNiBAQAogbmFtZXNwYWNlIFdl
YkNvcmUgewogbmFtZXNwYWNlIFN0eWxlIHsKIAotc3RhdGljIGlubGluZSBib29sIHNob3VsZEFw
cGx5UHJvcGVydHlJblBhcnNlT3JkZXIoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlEKQotewotICAg
IHJldHVybiBnZXRSZWxhdGVkUHJvcGVydHlJZChwcm9wZXJ0eUlEKSAhPSBDU1NQcm9wZXJ0eUlu
dmFsaWQ7Ci19Ci0KIFByb3BlcnR5Q2FzY2FkZTo6UHJvcGVydHlDYXNjYWRlKGNvbnN0IE1hdGNo
UmVzdWx0JiBtYXRjaFJlc3VsdCwgQ2FzY2FkZUxldmVsIG1heGltdW1DYXNjYWRlTGV2ZWwsIElu
Y2x1ZGVkUHJvcGVydGllcyBpbmNsdWRlZFByb3BlcnRpZXMsIERpcmVjdGlvbiBkaXJlY3Rpb24p
CiAgICAgOiBtX21hdGNoUmVzdWx0KG1hdGNoUmVzdWx0KQogICAgICwgbV9pbmNsdWRlZFByb3Bl
cnRpZXMoaW5jbHVkZWRQcm9wZXJ0aWVzKQpAQCAtMTA4LDcgKzEwMyw3IEBAIHZvaWQgUHJvcGVy
dHlDYXNjYWRlOjpzZXQoQ1NTUHJvcGVydHlJRCBpZCwgQ1NTVmFsdWUmIGNzc1ZhbHVlLCBjb25z
dCBNYXRjaGVkUHJvCiAgICAgICAgIGlkID0gQ1NTUHJvcGVydHk6OnJlc29sdmVEaXJlY3Rpb25B
d2FyZVByb3BlcnR5KGlkLCBkaXJlY3Rpb24udGV4dERpcmVjdGlvbiwgZGlyZWN0aW9uLndyaXRp
bmdNb2RlKTsKICAgICB9CiAKLSAgICBBU1NFUlQoIXNob3VsZEFwcGx5UHJvcGVydHlJblBhcnNl
T3JkZXIoaWQpKTsKKyAgICBBU1NFUlQoaWQgPCBmaXJzdERlZmVycmVkUHJvcGVydHkpOwogCiAg
ICAgYXV0byYgcHJvcGVydHkgPSBtX3Byb3BlcnRpZXNbaWRdOwogICAgIEFTU0VSVChpZCA8IG1f
cHJvcGVydHlJc1ByZXNlbnQuc2l6ZSgpKTsKQEAgLTEzOSw3ICsxMzQsNyBAQCB2b2lkIFByb3Bl
cnR5Q2FzY2FkZTo6c2V0KENTU1Byb3BlcnR5SUQgaWQsIENTU1ZhbHVlJiBjc3NWYWx1ZSwgY29u
c3QgTWF0Y2hlZFBybwogdm9pZCBQcm9wZXJ0eUNhc2NhZGU6OnNldERlZmVycmVkKENTU1Byb3Bl
cnR5SUQgaWQsIENTU1ZhbHVlJiBjc3NWYWx1ZSwgY29uc3QgTWF0Y2hlZFByb3BlcnRpZXMmIG1h
dGNoZWRQcm9wZXJ0aWVzLCBDYXNjYWRlTGV2ZWwgY2FzY2FkZUxldmVsKQogewogICAgIEFTU0VS
VCghQ1NTUHJvcGVydHk6OmlzRGlyZWN0aW9uQXdhcmVQcm9wZXJ0eShpZCkpOwotICAgIEFTU0VS
VChzaG91bGRBcHBseVByb3BlcnR5SW5QYXJzZU9yZGVyKGlkKSk7CisgICAgQVNTRVJUKGlkID49
IGZpcnN0RGVmZXJyZWRQcm9wZXJ0eSk7CiAKICAgICBQcm9wZXJ0eSBwcm9wZXJ0eTsKICAgICBt
ZW1zZXQocHJvcGVydHkuY3NzVmFsdWUsIDAsIHNpemVvZihwcm9wZXJ0eS5jc3NWYWx1ZSkpOwpA
QCAtMTkyLDEwICsxODcsMTAgQEAgYm9vbCBQcm9wZXJ0eUNhc2NhZGU6OmFkZE1hdGNoKGNvbnN0
IE1hdGNoZWRQcm9wZXJ0aWVzJiBtYXRjaGVkUHJvcGVydGllcywgQ2FzY2EKICAgICAgICAgaWYg
KHByb3BlcnR5QWxsb3dsaXN0ID09IFByb3BlcnR5QWxsb3dsaXN0OjpNYXJrZXIgJiYgIWlzVmFs
aWRNYXJrZXJTdHlsZVByb3BlcnR5KHByb3BlcnR5SUQpKQogICAgICAgICAgICAgY29udGludWU7
CiAKLSAgICAgICAgaWYgKHNob3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIocHJvcGVydHlJ
RCkpCi0gICAgICAgICAgICBzZXREZWZlcnJlZChwcm9wZXJ0eUlELCAqY3VycmVudC52YWx1ZSgp
LCBtYXRjaGVkUHJvcGVydGllcywgY2FzY2FkZUxldmVsKTsKLSAgICAgICAgZWxzZQorICAgICAg
ICBpZiAocHJvcGVydHlJRCA8IGZpcnN0RGVmZXJyZWRQcm9wZXJ0eSkKICAgICAgICAgICAgIHNl
dChwcm9wZXJ0eUlELCAqY3VycmVudC52YWx1ZSgpLCBtYXRjaGVkUHJvcGVydGllcywgY2FzY2Fk
ZUxldmVsKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgc2V0RGVmZXJyZWQocHJvcGVydHlJ
RCwgKmN1cnJlbnQudmFsdWUoKSwgbWF0Y2hlZFByb3BlcnRpZXMsIGNhc2NhZGVMZXZlbCk7CiAg
ICAgfQogCiAgICAgcmV0dXJuIGhhc0ltcG9ydGFudFByb3BlcnRpZXM7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuaCBiL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1Byb3BlcnR5Q2FzY2FkZS5oCmluZGV4IDNlZTZkZjMzZDUzOTVkZTVmNWI5NGE0M2Y2MTAz
NDc4MDIwN2VlZmMuLjM5MmVlYzRmYWZmYzgxNTE5YmY1YTM3Yzg4YmRhNDExYzNiNDg0YjggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5oCkBAIC01OSw4ICs1OSw4IEBAIHB1
YmxpYzoKICAgICAgICAgQ1NTVmFsdWUqIGNzc1ZhbHVlWzNdOyAvLyBWYWx1ZXMgZm9yIGxpbmsg
bWF0Y2ggc3RhdGVzIE1hdGNoRGVmYXVsdCwgTWF0Y2hMaW5rIGFuZCBNYXRjaFZpc2l0ZWQKICAg
ICB9OwogCi0gICAgYm9vbCBoYXNQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEKSBjb25zdDsKLSAgICBj
b25zdCBQcm9wZXJ0eSYgcHJvcGVydHkoQ1NTUHJvcGVydHlJRCkgY29uc3Q7CisgICAgYm9vbCBo
YXNOb3JtYWxQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEKSBjb25zdDsKKyAgICBjb25zdCBQcm9wZXJ0
eSYgbm9ybWFsUHJvcGVydHkoQ1NTUHJvcGVydHlJRCkgY29uc3Q7CiAKICAgICBib29sIGhhc0Rl
ZmVycmVkUHJvcGVydHkoQ1NTUHJvcGVydHlJRCkgY29uc3Q7CiAgICAgY29uc3QgUHJvcGVydHkm
IGRlZmVycmVkUHJvcGVydHkoQ1NTUHJvcGVydHlJRCkgY29uc3Q7CkBAIC05Miw4ICs5Miw4IEBA
IHByaXZhdGU6CiAgICAgbXV0YWJsZSBEaXJlY3Rpb24gbV9kaXJlY3Rpb247CiAgICAgbXV0YWJs
ZSBib29sIG1fZGlyZWN0aW9uSXNVbnJlc29sdmVkIHsgdHJ1ZSB9OwogCi0gICAgUHJvcGVydHkg
bV9wcm9wZXJ0aWVzW251bUNTU1Byb3BlcnRpZXMgKyAyXTsKLSAgICBzdGQ6OmJpdHNldDxudW1D
U1NQcm9wZXJ0aWVzICsgMj4gbV9wcm9wZXJ0eUlzUHJlc2VudDsKKyAgICBQcm9wZXJ0eSBtX3By
b3BlcnRpZXNbZmlyc3REZWZlcnJlZFByb3BlcnR5XTsKKyAgICBzdGQ6OmJpdHNldDxmaXJzdERl
ZmVycmVkUHJvcGVydHk+IG1fcHJvcGVydHlJc1ByZXNlbnQ7CiAKICAgICBWZWN0b3I8UHJvcGVy
dHksIDg+IG1fZGVmZXJyZWRQcm9wZXJ0aWVzOwogICAgIEhhc2hNYXA8Q1NTUHJvcGVydHlJRCwg
dW5zaWduZWQ+IG1fZGVmZXJyZWRQcm9wZXJ0aWVzSW5kaWNlczsKQEAgLTEwMSwxOSArMTAxLDIx
IEBAIHByaXZhdGU6CiAgICAgSGFzaE1hcDxBdG9tU3RyaW5nLCBQcm9wZXJ0eT4gbV9jdXN0b21Q
cm9wZXJ0aWVzOwogfTsKIAotaW5saW5lIGJvb2wgUHJvcGVydHlDYXNjYWRlOjpoYXNQcm9wZXJ0
eShDU1NQcm9wZXJ0eUlEIGlkKSBjb25zdAoraW5saW5lIGJvb2wgUHJvcGVydHlDYXNjYWRlOjpo
YXNOb3JtYWxQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIGlkKSBjb25zdAogewotICAgIEFTU0VSVChp
ZCA8IG1fcHJvcGVydHlJc1ByZXNlbnQuc2l6ZSgpKTsKKyAgICBBU1NFUlQoaWQgPCBmaXJzdERl
ZmVycmVkUHJvcGVydHkpOwogICAgIHJldHVybiBtX3Byb3BlcnR5SXNQcmVzZW50W2lkXTsKIH0K
IAotaW5saW5lIGNvbnN0IFByb3BlcnR5Q2FzY2FkZTo6UHJvcGVydHkmIFByb3BlcnR5Q2FzY2Fk
ZTo6cHJvcGVydHkoQ1NTUHJvcGVydHlJRCBpZCkgY29uc3QKK2lubGluZSBjb25zdCBQcm9wZXJ0
eUNhc2NhZGU6OlByb3BlcnR5JiBQcm9wZXJ0eUNhc2NhZGU6Om5vcm1hbFByb3BlcnR5KENTU1By
b3BlcnR5SUQgaWQpIGNvbnN0CiB7CisgICAgQVNTRVJUKGhhc1Byb3BlcnR5KGlkKSk7CiAgICAg
cmV0dXJuIG1fcHJvcGVydGllc1tpZF07CiB9CiAKIGlubGluZSBib29sIFByb3BlcnR5Q2FzY2Fk
ZTo6aGFzRGVmZXJyZWRQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIGlkKSBjb25zdAogeworICAgIEFT
U0VSVChpZCA+PSBmaXJzdERlZmVycmVkUHJvcGVydHkpOwogICAgIHJldHVybiBtX2RlZmVycmVk
UHJvcGVydGllc0luZGljZXMuY29udGFpbnMoaWQpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5
bGVCdWlsZGVyLmNwcAppbmRleCA1NDNkYzAyZDEzNjFhOGE1YTE5Y2ZmYzIwMGZlMTFhN2I4Y2Rl
OGJkLi44NzNhZWNlMjlmNGQ4YjY1YTZmYzAxN2M0ZTQ0MDIyMjYyMGQ5ZWVhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3N0eWxlL1N0eWxlQnVpbGRlci5jcHAKQEAgLTkxLDcgKzkxLDcgQEAgQnVpbGRlcjo6fkJ1
aWxkZXIoKSA9IGRlZmF1bHQ7CiB2b2lkIEJ1aWxkZXI6OmFwcGx5QWxsUHJvcGVydGllcygpCiB7
CiAgICAgYXBwbHlIaWdoUHJpb3JpdHlQcm9wZXJ0aWVzKCk7Ci0gICAgYXBwbHlMb3dQcmlvcml0
eVByb3BlcnRpZXMoKTsKKyAgICBhcHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMoKTsKIH0K
IAogLy8gSGlnaCBwcmlvcml0eSBwcm9wZXJ0aWVzIG1heSBhZmZlY3QgcmVzb2x1dGlvbiBvZiBv
dGhlciBwcm9wZXJ0aWVzICh0aGV5IGFyZSBtb3N0bHkgZm9udCByZWxhdGVkKS4KQEAgLTEwNSwx
NyArMTA1LDE3IEBAIHZvaWQgQnVpbGRlcjo6YXBwbHlIaWdoUHJpb3JpdHlQcm9wZXJ0aWVzKCkK
ICAgICBhcHBseVByb3BlcnRpZXMoQ1NTUHJvcGVydHlDb2xvclNjaGVtZSwgQ1NTUHJvcGVydHlD
b2xvclNjaGVtZSk7CiAjZW5kaWYKIAotICAgIGFwcGx5UHJvcGVydGllcyhmaXJzdENTU1Byb3Bl
cnR5LCBsYXN0SGlnaFByaW9yaXR5UHJvcGVydHkpOworICAgIGFwcGx5UHJvcGVydGllcyhmaXJz
dEhpZ2hQcmlvcml0eVByb3BlcnR5LCBsYXN0SGlnaFByaW9yaXR5UHJvcGVydHkpOwogCiAgICAg
bV9zdGF0ZS51cGRhdGVGb250KCk7CiB9CiAKLXZvaWQgQnVpbGRlcjo6YXBwbHlMb3dQcmlvcml0
eVByb3BlcnRpZXMoKQordm9pZCBCdWlsZGVyOjphcHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRp
ZXMoKQogewogICAgIEFTU0VSVCghbV9zdGF0ZS5mb250RGlydHkoKSk7CiAKICAgICBhcHBseUN1
c3RvbVByb3BlcnRpZXMoKTsKLSAgICBhcHBseVByb3BlcnRpZXMoZmlyc3RMb3dQcmlvcml0eVBy
b3BlcnR5LCBsYXN0Q1NTUHJvcGVydHkpOworICAgIGFwcGx5UHJvcGVydGllcyhmaXJzdExvd1By
aW9yaXR5UHJvcGVydHksIGxhc3RMb3dQcmlvcml0eVByb3BlcnR5KTsKICAgICBhcHBseURlZmVy
cmVkUHJvcGVydGllcygpOwogCiAgICAgQVNTRVJUKCFtX3N0YXRlLmZvbnREaXJ0eSgpKTsKQEAg
LTE0MCwxMCArMTQwLDEwIEBAIGlubGluZSB2b2lkIEJ1aWxkZXI6OmFwcGx5UHJvcGVydGllc0lt
cGwoaW50IGZpcnN0UHJvcGVydHksIGludCBsYXN0UHJvcGVydHkpCiB7CiAgICAgZm9yIChpbnQg
aWQgPSBmaXJzdFByb3BlcnR5OyBpZCA8PSBsYXN0UHJvcGVydHk7ICsraWQpIHsKICAgICAgICAg
Q1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlEID0gc3RhdGljX2Nhc3Q8Q1NTUHJvcGVydHlJRD4oaWQp
OwotICAgICAgICBpZiAoIW1fY2FzY2FkZS5oYXNQcm9wZXJ0eShwcm9wZXJ0eUlEKSkKKyAgICAg
ICAgaWYgKCFtX2Nhc2NhZGUuaGFzTm9ybWFsUHJvcGVydHkocHJvcGVydHlJRCkpCiAgICAgICAg
ICAgICBjb250aW51ZTsKICAgICAgICAgQVNTRVJUKHByb3BlcnR5SUQgIT0gQ1NTUHJvcGVydHlD
dXN0b20pOwotICAgICAgICBhdXRvJiBwcm9wZXJ0eSA9IG1fY2FzY2FkZS5wcm9wZXJ0eShwcm9w
ZXJ0eUlEKTsKKyAgICAgICAgYXV0byYgcHJvcGVydHkgPSBtX2Nhc2NhZGUubm9ybWFsUHJvcGVy
dHkocHJvcGVydHlJRCk7CiAKICAgICAgICAgaWYgKHRyYWNrQ3ljbGVzID09IEN1c3RvbVByb3Bl
cnR5Q3ljbGVUcmFja2luZzo6RW5hYmxlZCkgewogICAgICAgICAgICAgaWYgKFVOTElLRUxZKG1f
c3RhdGUubV9pblByb2dyZXNzUHJvcGVydGllcy5nZXQocHJvcGVydHlJRCkpKSB7CkBAIC0zMTYs
MTAgKzMxNiwxMiBAQCB2b2lkIEJ1aWxkZXI6OmFwcGx5UHJvcGVydHkoQ1NTUHJvcGVydHlJRCBp
ZCwgQ1NTVmFsdWUmIHZhbHVlLCBTZWxlY3RvckNoZWNrZXI6OgogICAgICAgICAgICAgICAgICAg
ICBhcHBseVJvbGxiYWNrQ2FzY2FkZVByb3BlcnR5KHByb3BlcnR5LCBsaW5rTWF0Y2hNYXNrKTsK
ICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIH0gZWxzZSBpZiAocm9sbGJhY2tDYXNjYWRlLT5oYXNQcm9wZXJ0eShpZCkpIHsKLSAgICAg
ICAgICAgICAgICBhdXRvJiBwcm9wZXJ0eSA9IHJvbGxiYWNrQ2FzY2FkZS0+cHJvcGVydHkoaWQp
OwotICAgICAgICAgICAgICAgIGFwcGx5Um9sbGJhY2tDYXNjYWRlUHJvcGVydHkocHJvcGVydHks
IGxpbmtNYXRjaE1hc2spOwotICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0g
ZWxzZSBpZiAoaWQgPCBmaXJzdERlZmVycmVkUHJvcGVydHkpIHsKKyAgICAgICAgICAgICAgICBp
ZiAocm9sbGJhY2tDYXNjYWRlLT5oYXNOb3JtYWxQcm9wZXJ0eShpZCkpIHsKKyAgICAgICAgICAg
ICAgICAgICAgYXV0byYgcHJvcGVydHkgPSByb2xsYmFja0Nhc2NhZGUtPm5vcm1hbFByb3BlcnR5
KGlkKTsKKyAgICAgICAgICAgICAgICAgICAgYXBwbHlSb2xsYmFja0Nhc2NhZGVQcm9wZXJ0eShw
cm9wZXJ0eSwgbGlua01hdGNoTWFzayk7CisgICAgICAgICAgICAgICAgICAgIHJldHVybjsKKyAg
ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9IGVsc2UgaWYgKHJvbGxiYWNrQ2FzY2FkZS0+
aGFzRGVmZXJyZWRQcm9wZXJ0eShpZCkpIHsKICAgICAgICAgICAgICAgICBhdXRvJiBwcm9wZXJ0
eSA9IHJvbGxiYWNrQ2FzY2FkZS0+ZGVmZXJyZWRQcm9wZXJ0eShpZCk7CiAgICAgICAgICAgICAg
ICAgYXBwbHlSb2xsYmFja0Nhc2NhZGVQcm9wZXJ0eShwcm9wZXJ0eSwgbGlua01hdGNoTWFzayk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlci5oCmluZGV4IDYzMjVmM2JmN2Y4MWMyNjIyMjA3
ZWUwMjE4Nzk0ODNiYTY3M2Q2YmUuLjdjNzFmZDVhYzFjZDQ0NGMwNzkwZmUzYzNhMzBmOTdkYmUz
YTMwMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlci5oCkBAIC00MCw3ICs0MCw3IEBA
IHB1YmxpYzoKIAogICAgIHZvaWQgYXBwbHlBbGxQcm9wZXJ0aWVzKCk7CiAgICAgdm9pZCBhcHBs
eUhpZ2hQcmlvcml0eVByb3BlcnRpZXMoKTsKLSAgICB2b2lkIGFwcGx5TG93UHJpb3JpdHlQcm9w
ZXJ0aWVzKCk7CisgICAgdm9pZCBhcHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMoKTsKIAog
ICAgIHZvaWQgYXBwbHlQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQpIHsgYXBwbHlQ
cm9wZXJ0aWVzKHByb3BlcnR5SUQsIHByb3BlcnR5SUQpOyB9CiAgICAgdm9pZCBhcHBseUN1c3Rv
bVByb3BlcnR5KGNvbnN0IFN0cmluZyYgbmFtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9zdHlsZS9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUmVz
b2x2ZXIuY3BwCmluZGV4IGM2M2QwZTU5MzQyMjY4Nzc4MjhlNmYwZjFjMmFlMTdjY2U0OGRmYTAu
LjUwZDZjNTQ3MjkwNDI4YzFmMjEwNDU3NzljNDEwODhlOTYwODc3ZjAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3N0eWxlL1N0eWxlUmVzb2x2ZXIuY3BwCkBAIC02MjMsNyArNjIzLDcgQEAgdm9pZCBSZXNvbHZl
cjo6YXBwbHlNYXRjaGVkUHJvcGVydGllcyhTdGF0ZSYgc3RhdGUsIGNvbnN0IE1hdGNoUmVzdWx0
JiBtYXRjaFJlc3UKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGJ1aWxkZXIuYXBwbHlM
b3dQcmlvcml0eVByb3BlcnRpZXMoKTsKKyAgICBidWlsZGVyLmFwcGx5Tm9uSGlnaFByaW9yaXR5
UHJvcGVydGllcygpOwogCiAgICAgZm9yIChhdXRvJiBjb250ZW50QXR0cmlidXRlIDogYnVpbGRl
ci5zdGF0ZSgpLnJlZ2lzdGVyZWRDb250ZW50QXR0cmlidXRlcygpKQogICAgICAgICBydWxlU2V0
cygpLm11dGFibGVGZWF0dXJlcygpLnJlZ2lzdGVyQ29udGVudEF0dHJpYnV0ZShjb250ZW50QXR0
cmlidXRlKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455785</attachid>
            <date>2022-03-25 10:53:03 -0700</date>
            <delta_ts>2022-03-25 11:49:12 -0700</delta_ts>
            <desc>Patch for EWS</desc>
            <filename>bug-238345-20220325185302.patch</filename>
            <type>text/plain</type>
            <size>49305</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNzQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzI5OTFmYTkzYjc0MWRh
MDc2ZTk4MTFmYTYxMDExZGQ2MzdiNWYyMC4uYzI5MDljMmE0NWY3OWVhY2VjZWU5YTRlMDkxNjIx
NWUxYzY4ZDVhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4MSBAQAorMjAyMi0wMy0yNSAgT3Jp
b2wgQnJ1ZmF1ICA8b2JydWZhdUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3MtY2FzY2FkZV0g
U29ydCBkZWZlcnJlZCBwcm9wZXJ0aWVzIGF0IHRoZSBlbmQgb2YgQ1NTUHJvcGVydHlJRCBlbnVt
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzgzNDUK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCdWcgMjM4
MjYwIHdpbGwgb3B0aW1pemUgdGhlIGxvZ2ljIGZvciBjYXNjYWRpbmcgZGVmZXJyZWQgcHJvcGVy
dGllcy4KKyAgICAgICAgVGhpcyBzb3J0cyB0aGVtIGF0IHRoZSBlbmQsIGFmdGVyIGxvdyBwcmlv
cml0eSBvbmVzLCB3aGljaCB3aWxsIGFsbG93CisgICAgICAgIHNvbWUgZnVydGhlciBvcHRpbWl6
YXRpb25zLgorICAgICAgICBUaGlzIGlzIGluIHByZXBhcmF0aW9uIG9mIGJ1ZyAyMzgyNjAsIHdo
aWNoIHBsYW5zIHRvIHR1cm4gYWxsIGxvZ2ljYWwKKyAgICAgICAgYW5kIHBoeXNpY2FsIHByb3Bl
cnRpZXMgaW50byBkZWZlcnJlZC4KKworICAgICAgICBObyBuZXcgdGVzdHMgc2luY2UgdGhlcmUg
c2hvdWxkIGJlIG5vIGNoYW5nZSBpbiBiZWhhdmlvci4KKworICAgICAgICAqIGNzcy9tYWtlcHJv
cC5wbDoKKyAgICAgICAgKHNvcnRCeURlc2NlbmRpbmdQcmlvcml0eUFuZE5hbWUpOgorICAgICAg
ICBTb3J0IGRlZmVycmVkIHByb3BlcnRpZXMgYXQgdGhlIGVuZCBvZiBDU1NQcm9wZXJ0eUlEIGVu
dW0uCisgICAgICAgIEFkZCBmaXJzdEhpZ2hQcmlvcml0eVByb3BlcnR5LCBmaXJzdExvd1ByaW9y
aXR5UHJvcGVydHksCisgICAgICAgIGxhc3RMb3dQcmlvcml0eVByb3BlcnR5LCBmaXJzdERlZmVy
cmVkUHJvcGVydHkgYW5kIGxhc3REZWZlcnJlZFByb3BlcnR5LgorCisgICAgICAgICogc3R5bGUv
UHJvcGVydHlDYXNjYWRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpQcm9wZXJ0eUNh
c2NhZGU6OnNldCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UHJvcGVydHlDYXNjYWRlOjpz
ZXREZWZlcnJlZCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UHJvcGVydHlDYXNjYWRlOjph
ZGRNYXRjaCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6c2hvdWxkQXBwbHlQcm9wZXJ0eUlu
UGFyc2VPcmRlcik6IERlbGV0ZWQuCisgICAgICAgIERlbGV0ZSBzaG91bGRBcHBseVByb3BlcnR5
SW5QYXJzZU9yZGVyKCksIHNpbmNlIGluc3RlYWQgd2UgY2FuIGp1c3QKKyAgICAgICAgY29tcGFy
ZSB0aGUgQ1NTUHJvcGVydHlJZCBhbmQgZmlyc3REZWZlcnJlZFByb3BlcnR5IHdpdGggPCBvciA+
PS4KKworICAgICAgICAqIHN0eWxlL1Byb3BlcnR5Q2FzY2FkZS5oOgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGU6OlByb3BlcnR5Q2FzY2FkZTo6aGFzTm9ybWFsUHJvcGVydHkgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6U3R5bGU6OlByb3BlcnR5Q2FzY2FkZTo6bm9ybWFsUHJvcGVydHkgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlByb3BlcnR5Q2FzY2FkZTo6aGFzRGVmZXJy
ZWRQcm9wZXJ0eSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UHJvcGVydHlDYXNj
YWRlOjpoYXNQcm9wZXJ0eSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTdHls
ZTo6UHJvcGVydHlDYXNjYWRlOjpwcm9wZXJ0eSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIFJl
bmFtZSBoYXNQcm9wZXJ0eSgpIGFuZCBwcm9wZXJ0eSgpIHRvIGhhc05vcm1hbFByb3BlcnR5KCkg
YW5kCisgICAgICAgIG5vcm1hbFByb3BlcnR5KCksIHRvIG1ha2UgaXQgY2xlYXIgdGhleSBhcmUg
bm90IGZvciBkZWZlcnJlZCBwcm9wZXJ0aWVzLgorICAgICAgICBSZWR1Y2UgdGhlIHNpemUgb2Yg
bV9wcm9wZXJ0aWVzIGFycmF5IGFuZCBtX3Byb3BlcnR5SXNQcmVzZW50IGJpdHNldCwKKyAgICAg
ICAgc2luY2UgdGhleSBkb24ndCBuZWVkIHRvIGluY2x1ZGUgZGVmZXJyZWQgcHJvcGVydGllcy4K
KworICAgICAgICAqIHN0eWxlL1N0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
dHlsZTo6QnVpbGRlcjo6YXBwbHlBbGxQcm9wZXJ0aWVzKToKKyAgICAgICAgKFdlYkNvcmU6OlN0
eWxlOjpCdWlsZGVyOjphcHBseUhpZ2hQcmlvcml0eVByb3BlcnRpZXMpOgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGU6OkJ1aWxkZXI6OmFwcGx5Tm9uSGlnaFByaW9yaXR5UHJvcGVydGllcyk6Cisg
ICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlcjo6YXBwbHlQcm9wZXJ0aWVzSW1wbCk6Cisg
ICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlcjo6YXBwbHlQcm9wZXJ0eSk6CisgICAgICAg
IChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlcjo6YXBwbHlMb3dQcmlvcml0eVByb3BlcnRpZXMpOiBE
ZWxldGVkLgorICAgICAgICBSZW5hbWUgYXBwbHlMb3dQcmlvcml0eVByb3BlcnRpZXMoKSB0byBh
cHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMoKQorICAgICAgICB0byBtYWtlIGl0IGNsZWFy
IHRoYXQgaXQgaW5jbHVkZXMgY3VzdG9tIGFuZCBkZWZlcnJlZCBwcm9wZXJ0aWVzLgorICAgICAg
ICBVc2UgdGhlIG5ldyBmaXJzdEhpZ2hQcmlvcml0eVByb3BlcnR5IGFuZCBsYXN0TG93UHJpb3Jp
dHlQcm9wZXJ0eQorICAgICAgICBjb25zdGFudHMgZm9yIGNsYXJpdHkgYW5kIHRvIHNraXAgZGVm
ZXJyZWQgcHJvcGVydGllcy4KKyAgICAgICAgUmVuYW1lIGhhc1Byb3BlcnR5KCkgYW5kIHByb3Bl
cnR5KCkgdG8gaGFzTm9ybWFsUHJvcGVydHkoKSBhbmQKKyAgICAgICAgbm9ybWFsUHJvcGVydHko
KSwgdG8gbWFrZSBpdCBjbGVhciB0aGV5IGFyZSBub3QgZm9yIGRlZmVycmVkIHByb3BlcnRpZXMu
CisKKyAgICAgICAgKiBzdHlsZS9TdHlsZUJ1aWxkZXIuaDoKKyAgICAgICAgUmVuYW1lIGFwcGx5
TG93UHJpb3JpdHlQcm9wZXJ0aWVzKCkgdG8gYXBwbHlOb25IaWdoUHJpb3JpdHlQcm9wZXJ0aWVz
KCkKKyAgICAgICAgdG8gbWFrZSBpdCBjbGVhciB0aGF0IGl0IGluY2x1ZGVzIGN1c3RvbSBhbmQg
ZGVmZXJyZWQgcHJvcGVydGllcy4KKworICAgICAgICAqIHN0eWxlL1N0eWxlUmVzb2x2ZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlJlc29sdmVyOjphcHBseU1hdGNoZWRQcm9wZXJ0
aWVzKToKKyAgICAgICAgUmVuYW1lIGFwcGx5TG93UHJpb3JpdHlQcm9wZXJ0aWVzKCkgdG8gYXBw
bHlOb25IaWdoUHJpb3JpdHlQcm9wZXJ0aWVzKCkKKyAgICAgICAgdG8gbWFrZSBpdCBjbGVhciB0
aGF0IGl0IGluY2x1ZGVzIGN1c3RvbSBhbmQgZGVmZXJyZWQgcHJvcGVydGllcy4KKworMjAyMi0w
My0yNSAgT3Jpb2wgQnJ1ZmF1ICA8b2JydWZhdUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3Mt
Y2FzY2FkZV0gTWVyZ2UgZ2V0UmVsYXRlZFByb3BlcnR5SWQoKSBhbmQgc2hvdWxkQXBwbHlQcm9w
ZXJ0eUluUGFyc2VPcmRlcigpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMzgzNTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBnZXRSZWxhdGVkUHJvcGVydHlJZCgpIGlzIGF1dG9tYXRpY2FsbHkgZ2VuZXJh
dGVkIGZyb20gdGhlICJyZWxhdGVkLXByb3BlcnR5IiBmbGFnIGluIENTU1Byb3BlcnRpZXMuanNv
bgorCisgICAgICAgIHNob3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIoKSBpcyBoYXJkY29k
ZWQgaW4gUHJvcGVydHlDYXNjYWRlLmNwcAorCisgICAgICAgIEJvdGggZ2V0UmVsYXRlZFByb3Bl
cnR5SWQoKSBhbmQgc2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcigpIHB1cnN1ZQorICAg
ICAgICB0aGUgc2FtZSB0aGluZzogaWYgdGhlcmUgYXJlIHR3byBwcm9wZXJ0aWVzICh0eXBpY2Fs
bHkgYSBzdGFuZGFyZCBvbmUKKyAgICAgICAgYW5kIGEgLXdlYmtpdC0gcHJlZml4ZWQgb25lKSB3
aGljaCBzaGFyZSB0aGUgc2FtZSBmaWVsZCBpbiBSZW5kZXJTdHlsZSwKKyAgICAgICAgdGhlbiB3
ZSBzaG91bGQgdGFrZSBzcGVjaWZpZWQgb3JkZXIgaW50byBhY2NvdW50IHdoZW4gYXBwbHlpbmcg
dGhlbS4KKworICAgICAgICBUaGUgcHJvYmxlbSBpcyB0aGF0IHRoZSBsb2dpYyBmb3IgZ2V0UmVs
YXRlZFByb3BlcnR5SWQoKSBkb2Vzbid0IHdvcmsKKyAgICAgICAgd2VsbCBpbiBhbGwgY2FzZXMu
IEl0IHdhcyBvbmx5IHVzZWQgZm9yIC13ZWJraXQtdGV4dC1vcmllbnRhdGlvbiBhbmQKKyAgICAg
ICAgdGV4dC1vcmllbnRhdGlvbiwgYnV0IGJ1ZyAyMzgzNTYgaW1wbGVtZW50ZWQgdGhlIGZvcm1l
ciBhcyBhIHNob3J0aGFuZC4KKyAgICAgICAgU28gbm93IHRoZXJlIGlzIG5vIGNvbnN1bWVyIG9m
IGdldFJlbGF0ZWRQcm9wZXJ0eUlkKCkuCisKKyAgICAgICAgT24gdGhlIG90aGVyIGhhbmQsIHNo
b3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIoKSB3b3JrcyBiZXR0ZXIsIGJ1dAorICAgICAg
ICBpdCB3aWxsIG5lZWQgdG8gYmUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZm9yIGJ1ZyAyMzgz
NDUsIGFuZCBidWcKKyAgICAgICAgMjM4MTI1IHdpbGwgbmVlZCB0byBrbm93IHdoaWNoIHByb3Bl
cnR5IHNoYXJlcyBhIGNvbXB1dGVkIHZhbHVlIHdpdGggYQorICAgICAgICBnaXZlbiBvbmUuCisK
KyAgICAgICAgU28gdGhpcyBwYXRjaCByZW1vdmVzIHRoZSBjb25zdW1lcnMgb2YgdGhlIG9sZCBn
ZXRSZWxhdGVkUHJvcGVydHlJZCgpLAorICAgICAgICBhbmQgY2hhbmdlcyBzaG91bGRBcHBseVBy
b3BlcnR5SW5QYXJzZU9yZGVyKCkgdG8gYmUgYmFzZWQgb24gaXQuCisKKyAgICAgICAgTm8gbmV3
IHRlc3RzIHNpbmNlIHRoZXJlIGlzIG5vIGNoYW5nZSBpbiBiZWhhdmlvci4KKworICAgICAgICAq
IGNzcy9DU1NQcm9wZXJ0aWVzLmpzb246CisgICAgICAgIE1hcmsgcHJvcGVydGllcyBmb3Igd2hp
Y2ggc2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcigpIHJldHVybmVkCisgICAgICAgIHRy
dWUgd2l0aCB0aGUgInJlbGF0ZWQtcHJvcGVydHkiIGZsYWcuCisKKyAgICAgICAgKiBjc3MvUHJv
cGVydHlTZXRDU1NTdHlsZURlY2xhcmF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlByb3Bl
cnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6Z2V0UHJvcGVydHlWYWx1ZUludGVybmFsKToKKyAg
ICAgICAgUmVtb3ZlIG9sZCBnZXRSZWxhdGVkUHJvcGVydHlJZCgpIGxvZ2ljIHdoaWNoIHdhcyB1
bnVzZWQuCisKKyAgICAgICAgKiBjc3MvbWFrZXByb3AucGw6CisgICAgICAgIFRocm93IGVycm9y
cyBpZiAicmVsYXRlZC1wcm9wZXJ0eSIgZmxhZyBpcyBpbnZhbGlkLgorCisgICAgICAgICogY3Nz
L3BhcnNlci9DU1NQYXJzZXJJbXBsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmZpbHRlclByb3Bl
cnRpZXMpOgorICAgICAgICBSZW1vdmUgb2xkIGdldFJlbGF0ZWRQcm9wZXJ0eUlkKCkgbG9naWMg
d2hpY2ggd2FzIHVudXNlZC4KKworICAgICAgICAqIHN0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6c2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRl
cik6CisgICAgICAgIEJhc2Ugc2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcigpIG9uIGdl
dFJlbGF0ZWRQcm9wZXJ0eUlkKCkuCisKKzIwMjItMDMtMjUgIE9yaW9sIEJydWZhdSAgPG9icnVm
YXVAaWdhbGlhLmNvbT4KKworICAgICAgICBbY3NzXSBUdXJuIC13ZWJraXQtdGV4dC1vcmllbnRh
dGlvbiBpbnRvIGEgbGVnYWN5IHNob3J0aGFuZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM4MzU2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgYC13ZWJraXQtdGV4dC1vcmllbnRhdGlvbmAgYW5kIGB0ZXh0
LW9yaWVudGF0aW9uYCB3ZXJlIGJvdGggaW1wbGVtZW50ZWQKKyAgICAgICAgYXMgbG9uZ2hhbmRz
LCBqdXN0IHdpdGggYSBgcmVsYXRlZC1wcm9wZXJ0eWAgZmxhZyBzbyB0aGF0IGRlY2xhcmF0aW9u
CisgICAgICAgIGJsb2NrcyB3aXRoIGJvdGggb2YgdGhlbSB3b3VsZCB1c2UgdGhlIG9uZSBhcHBl
YXJpbmcgbGFzdC4KKworICAgICAgICBIb3dldmVyLCB0aGUgbG9naWMgZm9yIGByZWxhdGVkLXBy
b3BlcnR5YCB3YXNuJ3QgYWx3YXlzIHdvcmtpbmcgd2VsbC4KKyAgICAgICAgSW4gYnVnIDIzODM1
MCBJIHBsYW4gdG8gbWVyZ2UgaXQgd2l0aCBzaG91bGRBcHBseVByb3BlcnR5SW5QYXJzZU9yZGVy
KCksCisgICAgICAgIHdoaWNoIGhhcyB0aGUgc2FtZSBwdXJwb3NlIGFuZCB3b3JrcyBiZXR0ZXIu
IEJ1dCBpdCdzIG5vdCBzdWl0YWJsZSBmb3IKKyAgICAgICAgaGlnaCBwcmlvcml0eSBwcm9wZXJ0
aWVzIGxpa2UgYHRleHQtb3JpZW50YXRpb25gLgorCisgICAgICAgIFNvIHRoaXMgcGF0Y2ggdHVy
bnMgYC13ZWJraXQtdGV4dC1vcmllbnRhdGlvbmAgaW50byBhIHNob3J0aGFuZCB0aGF0CisgICAg
ICAgIGV4cGFuZHMgaW50byBgdGV4dC1vcmllbnRhdGlvbmAuCisKKyAgICAgICAgYC13ZWJraXQt
dGV4dC1vcmllbnRhdGlvbmAgY29udGludWVzIGFjY2VwdGluZyB0aGUgbGVnYWN5IHZhbHVlCisg
ICAgICAgIGBzaWRld2F5cy1yaWdodGAsIHdoaWNoIGlzIG5vdyBtYXBwZWQgaW50byBgc2lkZXdh
eXNgIGF0IHBhcnNlIHRpbWUuCisgICAgICAgIFByZXZpb3VzbHkgdGhpcyBoYXBwZW5lZCBhdCBj
b21wdXRlZC12YWx1ZSB0aW1lLCBidXQgaXQgaW1wbGllZCB0aGF0CisgICAgICAgIHNlcmlhbGl6
aW5nIGB0ZXh0LWRlY29yYXRpb25gIGNvdWxkIHlpZWxkIGFuIGludmFsaWQgdmFsdWUuCisKKyAg
ICAgICAgVGVzdHM6IGZhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLWNvbXBldGl0aW9u
Lmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLXN0
eWxlc2hlZXQuaHRtbAorCisgICAgICAgICogY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3Mu
aDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBUZXh0T3Jp
ZW50YXRpb24gY29uc3QpOgorICAgICAgICBSZW1vdmUgbWFwcGluZyBvZiBgc2lkZXdheXMtcmln
aHRgIGludG8gYHNpZGV3YXlzYCwgdGhpcyBpcyBub3cKKyAgICAgICAgZG9uZSBhdCBwYXJzZSB0
aW1lLiBBbHNvIHJlbW92ZSBtYXBwaW5nIG9mIGB2ZXJ0aWNhbC1yaWdodGAgaW50byBgbWl4ZWRg
CisgICAgICAgIHNpbmNlIGB2ZXJ0aWNhbC1yaWdodGAgaXMgYSByZW1uYW50IG9mIHRoZSBwYXN0
IHdoaWNoIGhhcyBub3QgYmVlbgorICAgICAgICBjb25zaWRlcmVkIHZhbGlkIHN5bnRheCBmb3Ig
eWVhcnMuCisKKyAgICAgICAgKiBjc3MvQ1NTUHJvcGVydGllcy5qc29uOgorICAgICAgICBUdXJu
IGAtd2Via2l0LXRleHQtb3JpZW50YXRpb25gIGludG8gYSBzaG9ydGhhbmQgb2YgYHRleHQtb3Jp
ZW50YXRpb25gLgorICAgICAgICBSZW1vdmUgdGhlaXIgYHJlbGF0ZWQtcHJvcGVydHlgIGZsYWdz
IGFuZCBhIHJlbW5hbnQgb2YgYHZlcnRpY2FsLXJpZ2h0YC4KKworICAgICAgICAqIGNzcy9TdHls
ZVByb3BlcnRpZXMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzOjpnZXRQ
cm9wZXJ0eVZhbHVlIGNvbnN0KToKKyAgICAgICAgQWRkIGNvZGUgZm9yIHNlcmlhbGl6aW5nIHRo
ZSBgLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uYCBzaG9ydGhhbmQuCisKKyAgICAgICAgKiBjc3Mv
bWFrZXByb3AucGw6CisgICAgICAgIEF2b2lkIGEgY29tcGlsZSB3YXJuaW5nIGluIGdldFJlbGF0
ZWRQcm9wZXJ0eUlkKCkgd2hlbiBubyBwcm9wZXJ0eSBoYXMKKyAgICAgICAgdGhlIGByZWxhdGVk
LXByb3BlcnR5YCBmbGFnLgorCisgICAgICAgICogY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0UGF0
aHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyRmFzdFBhdGhzOjppc1ZhbGlkS2V5
d29yZFByb3BlcnR5QW5kVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyRmFzdFBh
dGhzOjppc0tleXdvcmRQcm9wZXJ0eUlEKToKKyAgICAgICAgUmVtb3ZlIGAtd2Via2l0LXRleHQt
b3JpZW50YXRpb25gIGZyb20gY29kZSB3aGljaCBpcyBvbmx5IHJlbGV2YW50IGZvcgorICAgICAg
ICBsb25naGFuZHMuCisKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5UGFyc2VyOjpjb25zdW1lTGVnYWN5VGV4
dE9yaWVudGF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5UGFyc2VyOjpwYXJz
ZVNob3J0aGFuZCk6CisgICAgICAgIEFkZCBwYXJzaW5nIGxvZ2ljIGZvciBgLXdlYmtpdC10ZXh0
LW9yaWVudGF0aW9uYCBhcyBhIHNob3J0aGFuZC4KKworICAgICAgICAqIGNzcy9wYXJzZXIvQ1NT
UHJvcGVydHlQYXJzZXIuaDoKKyAgICAgICAgQWRkIHBhcnNpbmcgbG9naWMgZm9yIGAtd2Via2l0
LXRleHQtb3JpZW50YXRpb25gIGFzIGEgc2hvcnRoYW5kLgorCisgICAgICAgICogc3R5bGUvU3R5
bGVCdWlsZGVyQ3VzdG9tLmg6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlckN1c3Rv
bTo6YXBwbHlWYWx1ZVdlYmtpdFRleHRPcmllbnRhdGlvbik6IERlbGV0ZWQuCisgICAgICAgIFJl
bW92ZSBgLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uYCBmcm9tIGNvZGUgd2hpY2ggaXMgb25seSBy
ZWxldmFudCBmb3IKKyAgICAgICAgbG9uZ2hhbmRzLgorCiAyMDIyLTAzLTIzICBZb3Vlbm4gRmFi
bGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBWaWRlb0ZyYW1lIGRvZXMgbm90IG5l
ZWQgdG8gaW5oZXJpdCBmcm9tIE1lZGlhU2FtcGxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAppbmRleCA1MDczZWNhYjRiOTg0N2Y4YjZlYjBjYTM4
NDdhZjQ3MDU0ZTNhMzZmLi5lODU3OGQwMDYyMjM4NTdjZjQ5ZGE3NjJlNjE5NTM4MGJmNDhlMTE1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5n
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgK
QEAgLTMzMDQsMTAgKzMzMDQsNiBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1
ZTo6b3BlcmF0b3IgVGV4dE9yaWVudGF0aW9uKCkgY29uc3QKICAgICBzd2l0Y2ggKG1fdmFsdWUu
dmFsdWVJRCkgewogICAgIGNhc2UgQ1NTVmFsdWVTaWRld2F5czoKICAgICAgICAgcmV0dXJuIFRl
eHRPcmllbnRhdGlvbjo6U2lkZXdheXM7Ci0gICAgY2FzZSBDU1NWYWx1ZVNpZGV3YXlzUmlnaHQ6
Ci0gICAgICAgIHJldHVybiBUZXh0T3JpZW50YXRpb246OlNpZGV3YXlzOwotICAgIGNhc2UgQ1NT
VmFsdWVWZXJ0aWNhbFJpZ2h0OgotICAgICAgICByZXR1cm4gVGV4dE9yaWVudGF0aW9uOjpNaXhl
ZDsKICAgICBjYXNlIENTU1ZhbHVlTWl4ZWQ6CiAgICAgICAgIHJldHVybiBUZXh0T3JpZW50YXRp
b246Ok1peGVkOwogICAgIGNhc2UgQ1NTVmFsdWVVcHJpZ2h0OgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQ
cm9wZXJ0aWVzLmpzb24KaW5kZXggNzk2OWUyYmUxMThkOWU1NDY4ZjYzNjM5OWExMjk1ZjAxNjNj
NjdiZi4uMDE2NmQyMDIyYTI0NmYzODU0ZjU0YjAzY2M5YWMzZGI2YjEyNjEyMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uCkBAIC0xNDIsMTEgKzE0MiwxMyBAQAogICAgICAg
ICAiaW4gQ1NTIGNhc2NhZGluZyBvcmRlci4iLAogICAgICAgICAiIiwKICAgICAgICAgIiogcmVs
YXRlZC1wcm9wZXJ0eToiLAotICAgICAgICAiSW5kaWNhdGVzIHRoZSBwcmVmaXhlZCBvciB1bnBy
ZWZpeGVkIHZlcnNpb24gb2YgdGhlIHNhbWUgcHJvcGVydHksIiwKLSAgICAgICAgImUuZy4gLXdl
YmtpdC10ZXh0LW9yaWVudGF0aW9uIGhhcyBhIHJlbGF0ZWQgcHJvcGVydHkgdGV4dC1vcmllbnRh
dGlvbiIsCi0gICAgICAgICJXaGVuIHBhcnNpbmcgaGlnaCBwcmlvcml0eSBDU1MgcHJvcGVydGll
cyB3aXRoIGJvdGggcHJlZml4ZWQgYW5kIHVucHJlZml4ZWQiLAotICAgICAgICAidmVyc2lvbnMs
IHRoaXMgZmxpZyB3aWxsIGhlbHAgdGhlIHBhcnNlciB0byBtYXJrIGFsbCByZWxhdGVkIHByb3Bl
cnRpZXMgIiwKLSAgICAgICAgImFzIHNlZW4gd2hlbiBvbmUgaXMgc2Vlbi4gVGhpcyBjb3VsZCBl
bmZvcmNlIHRoZSAnbGFzdC1vbmUtd2lucycgcnVsZS4iLAorICAgICAgICAiSW5kaWNhdGVzIGFu
b3RoZXIgcHJvcGVydHkgd2hpY2ggc2hhcmVzIGEgY29tcHV0ZWQgc3R5bGUgd2l0aCB0aGUgY3Vy
cmVudCBvbmUuIiwKKyAgICAgICAgIlR5cGljYWxseSB1c2VkIGZvciB0aGUgcHJlZml4ZWQgb3Ig
dW5wcmVmaXhlZCB2ZXJzaW9uIG9mIHRoZSBzYW1lIHByb3BlcnR5LCBlLmcuIiwKKyAgICAgICAg
Ii13ZWJraXQtYm94LXNoYWRvdyBoYXMgYm94LXNoYWRvdyBhcyB0aGUgcmVsYXRlZCBwcm9wZXJ0
eSwgYW5kIHZpY2UgdmVyc2EuIiwKKyAgICAgICAgIlByb3BlcnRpZXMgd2l0aCB0aGlzIGZsYWcg
Y2FuJ3QgYmUgaGlnaC1wcmlvcml0eSwgdGhleSBhcmUgZGVmZXJyZWQgdG8gYmUgYXBwbGllZCIs
CisgICAgICAgICJhZnRlciBsb3ctcHJpb3JpdHkgb25lcywgYW5kIHRoZXkgYXJlIHNwZWNpYWxs
eSBoYW5kbGVkIHRvIGFwcGx5IGluIHBhcnNlIG9yZGVyLiIsCisgICAgICAgICJTbyBpZiBhIGRl
Y2xhcmF0aW9uIGJsb2NrIGNvbnRhaW5zIGJvdGggcHJvcGVydGllcywgdGhleSB3aWxsIGJlIGFw
cGxpZWQgaW4gdGhlIiwKKyAgICAgICAgInNwZWNpZmllZCBvcmRlciwgbm90IGFscGhhYmV0aWNh
bGx5IHdpdGhpbiB0aGVpciBwcmlvcml0eSBidWNrZXQgYXMgdXN1YWwuIiwKICAgICAgICAgIiIs
CiAgICAgICAgICIqIGFsaWFzZXM6IiwKICAgICAgICAgIkFuIGFycmF5IG9mIHRoZSBhbHRlcm5h
dGl2ZSBuYW1lcyBmb3IgdGhpcyBwcm9wZXJ0eS4gQWxpYXNlcyBhcmUgZm9sZGVkIGF0IiwKQEAg
LTY5MCw3ICs2OTIsNiBAQAogICAgICAgICAgICAgXSwKICAgICAgICAgICAgICJjb2RlZ2VuLXBy
b3BlcnRpZXMiOiB7CiAgICAgICAgICAgICAgICAgImN1c3RvbSI6ICJWYWx1ZSIsCi0gICAgICAg
ICAgICAgICAgInJlbGF0ZWQtcHJvcGVydHkiOiAiLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uIiwK
ICAgICAgICAgICAgICAgICAiaGlnaC1wcmlvcml0eSI6IHRydWUKICAgICAgICAgICAgIH0sCiAg
ICAgICAgICAgICAic3BlY2lmaWNhdGlvbiI6IHsKQEAgLTcwNiwxMCArNzA3LDYgQEAKICAgICAg
ICAgICAgICAgICAgICAgInZhbHVlIjogInNpZGV3YXlzLXJpZ2h0IiwKICAgICAgICAgICAgICAg
ICAgICAgInN0YXR1cyI6ICJkZXByZWNhdGVkIgogICAgICAgICAgICAgICAgIH0sCi0gICAgICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAidmVydGljYWwtcmlnaHQi
LAotICAgICAgICAgICAgICAgICAgICAic3RhdHVzIjogIm5vbi1zdGFuZGFyZCIKLSAgICAgICAg
ICAgICAgICB9LAogICAgICAgICAgICAgICAgICJtaXhlZCIsCiAgICAgICAgICAgICAgICAgInVw
cmlnaHQiCiAgICAgICAgICAgICBdLApAQCAtNzE3LDkgKzcxNCw5IEBACiAgICAgICAgICAgICAg
ICAgImFsaWFzZXMiOiBbCiAgICAgICAgICAgICAgICAgICAgICItZXB1Yi10ZXh0LW9yaWVudGF0
aW9uIgogICAgICAgICAgICAgICAgIF0sCi0gICAgICAgICAgICAgICAgInJlbGF0ZWQtcHJvcGVy
dHkiOiAidGV4dC1vcmllbnRhdGlvbiIsCi0gICAgICAgICAgICAgICAgImN1c3RvbSI6ICJWYWx1
ZSIsCi0gICAgICAgICAgICAgICAgImhpZ2gtcHJpb3JpdHkiOiB0cnVlCisgICAgICAgICAgICAg
ICAgImxvbmdoYW5kcyI6IFsKKyAgICAgICAgICAgICAgICAgICAgInRleHQtb3JpZW50YXRpb24i
CisgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgfSwKICAgICAgICAgICAgICJzcGVjaWZp
Y2F0aW9uIjogewogICAgICAgICAgICAgICAgICJjYXRlZ29yeSI6ICJjc3Mtd3JpdGluZy1tb2Rl
cyIsCkBAIC0xMTI5LDYgKzExMjYsNyBAQAogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
IF0sCiAgICAgICAgICAgICAiY29kZWdlbi1wcm9wZXJ0aWVzIjogeworICAgICAgICAgICAgICAg
ICJyZWxhdGVkLXByb3BlcnR5IjogIi13ZWJraXQtYmFja2dyb3VuZC1jbGlwIiwKICAgICAgICAg
ICAgICAgICAibmFtZS1mb3ItbWV0aG9kcyI6ICJDbGlwIiwKICAgICAgICAgICAgICAgICAiZmls
bC1sYXllci1wcm9wZXJ0eSI6IHRydWUKICAgICAgICAgICAgIH0sCkBAIC0xMTU5LDYgKzExNTcs
NyBAQAogICAgICAgICB9LAogICAgICAgICAiYmFja2dyb3VuZC1vcmlnaW4iOiB7CiAgICAgICAg
ICAgICAiY29kZWdlbi1wcm9wZXJ0aWVzIjogeworICAgICAgICAgICAgICAgICJyZWxhdGVkLXBy
b3BlcnR5IjogIi13ZWJraXQtYmFja2dyb3VuZC1vcmlnaW4iLAogICAgICAgICAgICAgICAgICJu
YW1lLWZvci1tZXRob2RzIjogIk9yaWdpbiIsCiAgICAgICAgICAgICAgICAgImZpbGwtbGF5ZXIt
cHJvcGVydHkiOiB0cnVlCiAgICAgICAgICAgICB9LApAQCAtMTI0OSw2ICsxMjQ4LDcgQEAKICAg
ICAgICAgfSwKICAgICAgICAgImJhY2tncm91bmQtc2l6ZSI6IHsKICAgICAgICAgICAgICJjb2Rl
Z2VuLXByb3BlcnRpZXMiOiB7CisgICAgICAgICAgICAgICAgInJlbGF0ZWQtcHJvcGVydHkiOiAi
LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemUiLAogICAgICAgICAgICAgICAgICJuYW1lLWZvci1tZXRo
b2RzIjogIlNpemUiLAogICAgICAgICAgICAgICAgICJmaWxsLWxheWVyLXByb3BlcnR5IjogdHJ1
ZQogICAgICAgICAgICAgfSwKQEAgLTE2OTAsNiArMTY5MCw3IEBACiAgICAgICAgIH0sCiAgICAg
ICAgICJib3JkZXItaW1hZ2Utb3V0c2V0IjogewogICAgICAgICAgICAgImNvZGVnZW4tcHJvcGVy
dGllcyI6IHsKKyAgICAgICAgICAgICAgICAicmVsYXRlZC1wcm9wZXJ0eSI6ICItd2Via2l0LWJv
cmRlci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgImN1c3RvbSI6ICJBbGwiCiAgICAgICAgICAg
ICB9LAogICAgICAgICAgICAgInNwZWNpZmljYXRpb24iOiB7CkBAIC0xNjk5LDYgKzE3MDAsNyBA
QAogICAgICAgICB9LAogICAgICAgICAiYm9yZGVyLWltYWdlLXJlcGVhdCI6IHsKICAgICAgICAg
ICAgICJjb2RlZ2VuLXByb3BlcnRpZXMiOiB7CisgICAgICAgICAgICAgICAgInJlbGF0ZWQtcHJv
cGVydHkiOiAiLXdlYmtpdC1ib3JkZXItaW1hZ2UiLAogICAgICAgICAgICAgICAgICJjdXN0b20i
OiAiQWxsIgogICAgICAgICAgICAgfSwKICAgICAgICAgICAgICJzcGVjaWZpY2F0aW9uIjogewpA
QCAtMTcwOCw2ICsxNzEwLDcgQEAKICAgICAgICAgfSwKICAgICAgICAgImJvcmRlci1pbWFnZS1z
bGljZSI6IHsKICAgICAgICAgICAgICJjb2RlZ2VuLXByb3BlcnRpZXMiOiB7CisgICAgICAgICAg
ICAgICAgInJlbGF0ZWQtcHJvcGVydHkiOiAiLXdlYmtpdC1ib3JkZXItaW1hZ2UiLAogICAgICAg
ICAgICAgICAgICJjdXN0b20iOiAiQWxsIgogICAgICAgICAgICAgfSwKICAgICAgICAgICAgICJz
cGVjaWZpY2F0aW9uIjogewpAQCAtMTcxNyw2ICsxNzIwLDcgQEAKICAgICAgICAgfSwKICAgICAg
ICAgImJvcmRlci1pbWFnZS1zb3VyY2UiOiB7CiAgICAgICAgICAgICAiY29kZWdlbi1wcm9wZXJ0
aWVzIjogeworICAgICAgICAgICAgICAgICJyZWxhdGVkLXByb3BlcnR5IjogIi13ZWJraXQtYm9y
ZGVyLWltYWdlIiwKICAgICAgICAgICAgICAgICAiY29udmVydGVyIjogIlN0eWxlSW1hZ2U8Q1NT
UHJvcGVydHlCb3JkZXJJbWFnZVNvdXJjZT4iCiAgICAgICAgICAgICB9LAogICAgICAgICAgICAg
InNwZWNpZmljYXRpb24iOiB7CkBAIC0xNzI2LDYgKzE3MzAsNyBAQAogICAgICAgICB9LAogICAg
ICAgICAiYm9yZGVyLWltYWdlLXdpZHRoIjogewogICAgICAgICAgICAgImNvZGVnZW4tcHJvcGVy
dGllcyI6IHsKKyAgICAgICAgICAgICAgICAicmVsYXRlZC1wcm9wZXJ0eSI6ICItd2Via2l0LWJv
cmRlci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgImN1c3RvbSI6ICJBbGwiCiAgICAgICAgICAg
ICB9LAogICAgICAgICAgICAgInNwZWNpZmljYXRpb24iOiB7CkBAIC0yMjg5LDYgKzIyOTQsNyBA
QAogICAgICAgICB9LAogICAgICAgICAiYm94LXNoYWRvdyI6IHsKICAgICAgICAgICAgICJjb2Rl
Z2VuLXByb3BlcnRpZXMiOiB7CisgICAgICAgICAgICAgICAgInJlbGF0ZWQtcHJvcGVydHkiOiAi
LXdlYmtpdC1ib3gtc2hhZG93IiwKICAgICAgICAgICAgICAgICAiY3VzdG9tIjogIkFsbCIKICAg
ICAgICAgICAgIH0sCiAgICAgICAgICAgICAic3BlY2lmaWNhdGlvbiI6IHsKQEAgLTUzNDEsMTgg
KzUzNDcsMjEgQEAKICAgICAgICAgfSwKICAgICAgICAgIi13ZWJraXQtYmFja2dyb3VuZC1jbGlw
IjogewogICAgICAgICAgICAgImNvZGVnZW4tcHJvcGVydGllcyI6IHsKKyAgICAgICAgICAgICAg
ICAicmVsYXRlZC1wcm9wZXJ0eSI6ICJiYWNrZ3JvdW5kLWNsaXAiLAogICAgICAgICAgICAgICAg
ICJuYW1lLWZvci1tZXRob2RzIjogIkNsaXAiLAogICAgICAgICAgICAgICAgICJmaWxsLWxheWVy
LXByb3BlcnR5IjogdHJ1ZQogICAgICAgICAgICAgfQogICAgICAgICB9LAogICAgICAgICAiLXdl
YmtpdC1iYWNrZ3JvdW5kLW9yaWdpbiI6IHsKICAgICAgICAgICAgICJjb2RlZ2VuLXByb3BlcnRp
ZXMiOiB7CisgICAgICAgICAgICAgICAgInJlbGF0ZWQtcHJvcGVydHkiOiAiYmFja2dyb3VuZC1v
cmlnaW4iLAogICAgICAgICAgICAgICAgICJuYW1lLWZvci1tZXRob2RzIjogIk9yaWdpbiIsCiAg
ICAgICAgICAgICAgICAgImZpbGwtbGF5ZXItcHJvcGVydHkiOiB0cnVlCiAgICAgICAgICAgICB9
CiAgICAgICAgIH0sCiAgICAgICAgICItd2Via2l0LWJhY2tncm91bmQtc2l6ZSI6IHsKICAgICAg
ICAgICAgICJjb2RlZ2VuLXByb3BlcnRpZXMiOiB7CisgICAgICAgICAgICAgICAgInJlbGF0ZWQt
cHJvcGVydHkiOiAiYmFja2dyb3VuZC1zaXplIiwKICAgICAgICAgICAgICAgICAibmFtZS1mb3It
bWV0aG9kcyI6ICJTaXplIiwKICAgICAgICAgICAgICAgICAiZmlsbC1sYXllci1wcm9wZXJ0eSI6
IHRydWUKICAgICAgICAgICAgIH0sCkBAIC01MzcwLDYgKzUzNzksNyBAQAogICAgICAgICB9LAog
ICAgICAgICAiLXdlYmtpdC1ib3JkZXItaW1hZ2UiOiB7CiAgICAgICAgICAgICAiY29kZWdlbi1w
cm9wZXJ0aWVzIjogeworICAgICAgICAgICAgICAgICJyZWxhdGVkLXByb3BlcnR5IjogImJvcmRl
ci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgImluaXRpYWwiOiAiaW5pdGlhbE5pbmVQaWVjZUlt
YWdlIiwKICAgICAgICAgICAgICAgICAiY29udmVydGVyIjogIkJvcmRlckltYWdlPENTU1Byb3Bl
cnR5V2Via2l0Qm9yZGVySW1hZ2U+IgogICAgICAgICAgICAgfQpAQCAtNTQ4OSw2ICs1NDk5LDcg
QEAKICAgICAgICAgfSwKICAgICAgICAgIi13ZWJraXQtYm94LXNoYWRvdyI6IHsKICAgICAgICAg
ICAgICJjb2RlZ2VuLXByb3BlcnRpZXMiOiB7CisgICAgICAgICAgICAgICAgInJlbGF0ZWQtcHJv
cGVydHkiOiAiYm94LXNoYWRvdyIsCiAgICAgICAgICAgICAgICAgImN1c3RvbSI6ICJBbGwiCiAg
ICAgICAgICAgICB9LAogICAgICAgICAgICAgInN0YXR1cyI6IHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9Qcm9wZXJ0eVNldENTU1N0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNl
L1dlYkNvcmUvY3NzL1Byb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbi5jcHAKaW5kZXggMTU3
Y2JiMDdkNjBiNmZkZWJkNzFkM2Y5OTlhNTA4M2YxYzM0NjRkMy4uNWE3MjlkYWRkNTg5MmJiNzM5
YThhNzFmNjRjYzIyMGJlMmIyZGIwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1By
b3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L1Byb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAgLTMwMCwxNCArMzAwLDEwIEBA
IFJlZlB0cjxDU1NWYWx1ZT4gUHJvcGVydHlTZXRDU1NTdHlsZURlY2xhcmF0aW9uOjpnZXRQcm9w
ZXJ0eUNTU1ZhbHVlSW50ZXJuYWwoQ1NTCiBTdHJpbmcgUHJvcGVydHlTZXRDU1NTdHlsZURlY2xh
cmF0aW9uOjpnZXRQcm9wZXJ0eVZhbHVlSW50ZXJuYWwoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlE
KQogewogICAgIFN0cmluZyB2YWx1ZSA9IG1fcHJvcGVydHlTZXQtPmdldFByb3BlcnR5VmFsdWUo
cHJvcGVydHlJRCk7Ci0gICAgQ1NTUHJvcGVydHlJRCByZWxhdGVkUHJvcGVydHlJRCA9IGdldFJl
bGF0ZWRQcm9wZXJ0eUlkKHByb3BlcnR5SUQpOwotICAgIFN0cmluZyByZWxhdGVkVmFsdWUgPSBt
X3Byb3BlcnR5U2V0LT5nZXRQcm9wZXJ0eVZhbHVlKHJlbGF0ZWRQcm9wZXJ0eUlEKTsKLSAgICAg
ICAgCisKICAgICBpZiAoIXZhbHVlLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIHZhbHVlOwot
ICAgIGlmICghcmVsYXRlZFZhbHVlLmlzRW1wdHkoKSkKLSAgICAgICAgcmV0dXJuIHJlbGF0ZWRW
YWx1ZTsKLSAgICAKKwogICAgIHJldHVybiB7IH07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxl
UHJvcGVydGllcy5jcHAKaW5kZXggZjA0MTNjMTdmZmZhMjgzODExZmUyNTE3ZmRmZDYxYmNkY2Y4
YjI1OS4uOTkyZmYxZTcwZTllYjgzZmUyYmI4YjA0OWMwZmMxNTNhMDg0NDRmZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydGllcy5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvY3NzL1N0eWxlUHJvcGVydGllcy5jcHAKQEAgLTM0OSw2ICszNDksOCBAQCBTdHJpbmcg
U3R5bGVQcm9wZXJ0aWVzOjpnZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJ
RCkgY29uc3QKICAgICAgICAgcmV0dXJuIGdldDJWYWx1ZXMoc2Nyb2xsUGFkZGluZ0Jsb2NrU2hv
cnRoYW5kKCkpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlTY3JvbGxQYWRkaW5nSW5saW5lOgogICAg
ICAgICByZXR1cm4gZ2V0MlZhbHVlcyhzY3JvbGxQYWRkaW5nSW5saW5lU2hvcnRoYW5kKCkpOwor
ICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRUZXh0T3JpZW50YXRpb246CisgICAgICAgIHJldHVy
biBnZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5VGV4dE9yaWVudGF0aW9uKTsKICAgICBkZWZh
dWx0OgogICAgICAgICByZXR1cm4gU3RyaW5nKCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL21ha2Vwcm9wLnBsIGIvU291cmNlL1dlYkNvcmUvY3NzL21ha2Vwcm9wLnBs
CmluZGV4IDA4ZmUwOWY0ZGIxNGZiM2FkNzhiOWQ3OGUzZGZlMmFhMmEyOTk0YWMuLjM3YTIxNDU2
OTQ3NmEwMmMwOGMzODcyZGRiZGM2MzRiN2M4MmU3ODQgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9tYWtlcHJvcC5wbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvbWFrZXByb3AucGwK
QEAgLTM1OSw2ICszNTksMTQgQEAgc3ViIHNvcnRCeURlc2NlbmRpbmdQcmlvcml0eUFuZE5hbWUK
ICAgICBpZiAoISEkbmFtZUlzSGlnaFByaW9yaXR5eyRhfSA+ICEhJG5hbWVJc0hpZ2hQcmlvcml0
eXskYn0pIHsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KKyAgICAjIERlZmVyIG5hbWVzIHdp
dGggYSByZWxhdGVkIHByb3BlcnR5IHRvIHRoZSBiYWNrCisgICAgaWYgKCEhJHJlbGF0ZWRQcm9w
ZXJ0eXskYX0gPCAhISRyZWxhdGVkUHJvcGVydHl7JGJ9KSB7CisgICAgICAgIHJldHVybiAtMTsK
KyAgICB9CisgICAgaWYgKCEhJHJlbGF0ZWRQcm9wZXJ0eXskYX0gPiAhISRyZWxhdGVkUHJvcGVy
dHl7JGJ9KSB7CisgICAgICAgIHJldHVybiAxOworICAgIH0KKyAgICAjIFNvcnQgc3Vua2VuIG5h
bWVzIGF0IHRoZSBlbmQgb2YgdGhlaXIgcHJpb3JpdHkgYnVja2V0CiAgICAgaWYgKCEhJG5hbWVQ
cmlvcml0eVNob3VsZFNpbmt7JGF9IDwgISEkbmFtZVByaW9yaXR5U2hvdWxkU2lua3skYn0pIHsK
ICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KQEAgLTU4NywyMyArNTk1LDQwIEBAIGJvb2wgQ1NT
UHJvcGVydHk6OmlzSW5oZXJpdGVkUHJvcGVydHkoQ1NTUHJvcGVydHlJRCBpZCkKICAgICBBU1NF
UlQoaWQgIT0gQ1NTUHJvcGVydHlJbnZhbGlkKTsKICAgICByZXR1cm4gaXNJbmhlcml0ZWRQcm9w
ZXJ0eVRhYmxlW2lkXTsKIH0KLSAgICAKLUNTU1Byb3BlcnR5SUQgZ2V0UmVsYXRlZFByb3BlcnR5
SWQoQ1NTUHJvcGVydHlJRCBpZCkKKworRU9GCisKK2lmICglcmVsYXRlZFByb3BlcnR5KSB7Cisg
ICAgcHJpbnQgR1BFUkYgPDwgIkVPRiI7CitDU1NQcm9wZXJ0eUlEIGdldFJlbGF0ZWRQcm9wZXJ0
eUlkKGNvbnN0IENTU1Byb3BlcnR5SUQgaWQpCiB7CiAgICAgc3dpdGNoIChpZCkgewogRU9GCi1m
b3IgbXkgJG5hbWUgKEBuYW1lcykgewotICAgIGlmICghJHJlbGF0ZWRQcm9wZXJ0eXskbmFtZX0p
IHsKLSAgICAgICAgbmV4dDsKKyAgICBmb3IgbXkgJG5hbWUgKEBuYW1lcykgeworICAgICAgICBp
ZiAoISRyZWxhdGVkUHJvcGVydHl7JG5hbWV9KSB7CisgICAgICAgICAgICBuZXh0OworICAgICAg
ICB9CisgICAgICAgIG15ICRyZWxhdGVkID0gJHJlbGF0ZWRQcm9wZXJ0eXskbmFtZX07CisgICAg
ICAgIGRpZSAiUHJvcGVydHkgJG5hbWUgaGFzIGFuIHVua25vd24gcmVsYXRlZCBwcm9wZXJ0eTog
JHJlbGF0ZWQiIGlmICFleGlzdHMoJG5hbWVUb0lkeyRyZWxhdGVkfSk7CisgICAgICAgIGRpZSAi
SGlnaCBwcmlvcml0eSBwcm9wZXJ0eSAkbmFtZSBjYW4ndCBoYXZlIGEgcmVsYXRlZCBwcm9wZXJ0
eTogJHJlbGF0ZWQiIGlmICRuYW1lSXNIaWdoUHJpb3JpdHl7JG5hbWV9OworICAgICAgICBkaWUg
IlNob3J0aGFuZCBwcm9wZXJ0eSAkbmFtZSBjYW4ndCBoYXZlIGEgcmVsYXRlZCBwcm9wZXJ0eTog
JHJlbGF0ZWQiIGlmIGV4aXN0cyAkcHJvcGVydGllc1dpdGhTdHlsZUJ1aWxkZXJPcHRpb25zeyRu
YW1lfXsibG9uZ2hhbmRzIn07CisgICAgICAgIHByaW50IEdQRVJGICIgICAgY2FzZSBDU1NQcm9w
ZXJ0eUlEOjpDU1NQcm9wZXJ0eSIgLiAkbmFtZVRvSWR7JG5hbWV9IC4gIjpcbiI7CisgICAgICAg
IHByaW50IEdQRVJGICIgICAgICAgIHJldHVybiBDU1NQcm9wZXJ0eUlEOjpDU1NQcm9wZXJ0eSIg
LiAkbmFtZVRvSWR7JHJlbGF0ZWR9IC4gIjtcbiI7CiAgICAgfQotICAgIHByaW50IEdQRVJGICIg
ICAgY2FzZSBDU1NQcm9wZXJ0eUlEOjpDU1NQcm9wZXJ0eSIgLiAkbmFtZVRvSWR7JG5hbWV9IC4g
IjpcbiI7Ci0gICAgcHJpbnQgR1BFUkYgIiAgICAgICAgcmV0dXJuIENTU1Byb3BlcnR5SUQ6OkNT
U1Byb3BlcnR5IiAuICRuYW1lVG9JZHskcmVsYXRlZFByb3BlcnR5eyRuYW1lfX0gLiAiO1xuIjsK
LX0KLSAgICAgICAgCi1wcmludCBHUEVSRiA8PCAiRU9GIjsKKyAgICBwcmludCBHUEVSRiA8PCAi
RU9GIjsKICAgICBkZWZhdWx0OgogICAgICAgICByZXR1cm4gQ1NTUHJvcGVydHlJRDo6Q1NTUHJv
cGVydHlJbnZhbGlkOwogICAgIH0KK0VPRgorfSBlbHNlIHsKKyAgICBwcmludCBHUEVSRiA8PCAi
RU9GIjsKK0NTU1Byb3BlcnR5SUQgZ2V0UmVsYXRlZFByb3BlcnR5SWQoY29uc3QgQ1NTUHJvcGVy
dHlJRCkKK3sKKyAgICByZXR1cm4gQ1NTUHJvcGVydHlJRDo6Q1NTUHJvcGVydHlJbnZhbGlkOwor
RU9GCit9CisKK3ByaW50IEdQRVJGIDw8ICJFT0YiOwogfQogCiBWZWN0b3I8U3RyaW5nPiBDU1NQ
cm9wZXJ0eTo6YWxpYXNlc0ZvclByb3BlcnR5KENTU1Byb3BlcnR5SUQgaWQpCkBAIC04MTUsOSAr
ODQwLDI0IEBAIEVPRgogbXkgJGZpcnN0ID0gJG51bVByZWRlZmluZWRQcm9wZXJ0aWVzOwogbXkg
JGkgPSAkbnVtUHJlZGVmaW5lZFByb3BlcnRpZXM7CiBteSAkbWF4TGVuID0gMDsKK215ICRmaXJz
dEhpZ2hQcmlvcml0eVByb3BlcnR5TmFtZTsKIG15ICRsYXN0SGlnaFByaW9yaXR5UHJvcGVydHlO
YW1lOworbXkgJGZpcnN0TG93UHJpb3JpdHlQcm9wZXJ0eU5hbWU7CitteSAkbGFzdExvd1ByaW9y
aXR5UHJvcGVydHlOYW1lOworbXkgJGZpcnN0RGVmZXJyZWRQcm9wZXJ0eU5hbWU7CitteSAkbGFz
dERlZmVycmVkUHJvcGVydHlOYW1lOwogZm9yZWFjaCBteSAkbmFtZSAoQG5hbWVzKSB7Ci0gICRs
YXN0SGlnaFByaW9yaXR5UHJvcGVydHlOYW1lID0gJG5hbWUgaWYgJG5hbWVJc0hpZ2hQcmlvcml0
eXskbmFtZX07ICMgQXNzdW1lcyB0aGF0IEBuYW1lcyBpcyBzb3J0ZWQgYnkgZGVzY2VuZGluZyBw
cmlvcml0aWVzLgorICAjIEFzc3VtZXMgdGhhdCBAbmFtZXMgaXMgc29ydGVkIGJ5IGRlc2NlbmRp
bmcgcHJpb3JpdGllcy4KKyAgaWYgKCRuYW1lSXNIaWdoUHJpb3JpdHl7JG5hbWV9KSB7CisgICAg
JGZpcnN0SGlnaFByaW9yaXR5UHJvcGVydHlOYW1lID0gJG5hbWUgaWYgISRmaXJzdEhpZ2hQcmlv
cml0eVByb3BlcnR5TmFtZTsKKyAgICAkbGFzdEhpZ2hQcmlvcml0eVByb3BlcnR5TmFtZSA9ICRu
YW1lOworICB9IGVsc2lmICghJHJlbGF0ZWRQcm9wZXJ0eXskbmFtZX0pIHsKKyAgICAkZmlyc3RM
b3dQcmlvcml0eVByb3BlcnR5TmFtZSA9ICRuYW1lIGlmICEkZmlyc3RMb3dQcmlvcml0eVByb3Bl
cnR5TmFtZTsKKyAgICAkbGFzdExvd1ByaW9yaXR5UHJvcGVydHlOYW1lID0gJG5hbWU7CisgIH0g
ZWxzZSB7CisgICAgJGZpcnN0RGVmZXJyZWRQcm9wZXJ0eU5hbWUgPSAkbmFtZSBpZiAhJGZpcnN0
RGVmZXJyZWRQcm9wZXJ0eU5hbWU7CisgICAgJGxhc3REZWZlcnJlZFByb3BlcnR5TmFtZSA9ICRu
YW1lOworICB9CiAgIHByaW50IEhFQURFUiAiICAgIENTU1Byb3BlcnR5IiAuICRuYW1lVG9JZHsk
bmFtZX0gLiAiID0gIiAuICRpIC4gIixcbiI7CiAgICRpID0gJGkgKyAxOwogICBpZiAobGVuZ3Ro
KCRuYW1lKSA+ICRtYXhMZW4pIHsKQEAgLTgzMiw3ICs4NzIsMTIgQEAgcHJpbnQgSEVBREVSICJj
b25zdCBpbnQgZmlyc3RDU1NQcm9wZXJ0eSA9ICRmaXJzdDtcbiI7CiBwcmludCBIRUFERVIgImNv
bnN0IGludCBudW1DU1NQcm9wZXJ0aWVzID0gJG51bTtcbiI7CiBwcmludCBIRUFERVIgImNvbnN0
IGludCBsYXN0Q1NTUHJvcGVydHkgPSAkbGFzdDtcbiI7CiBwcmludCBIRUFERVIgImNvbnN0IHNp
emVfdCBtYXhDU1NQcm9wZXJ0eU5hbWVMZW5ndGggPSAkbWF4TGVuO1xuIjsKLXByaW50IEhFQURF
UiAiY29uc3QgQ1NTUHJvcGVydHlJRCBsYXN0SGlnaFByaW9yaXR5UHJvcGVydHkgPSBDU1NQcm9w
ZXJ0eSIgLiAkbmFtZVRvSWR7JGxhc3RIaWdoUHJpb3JpdHlQcm9wZXJ0eU5hbWV9IC4gIjtcblxu
IjsKK3ByaW50IEhFQURFUiAiY29uc3QgQ1NTUHJvcGVydHlJRCBmaXJzdEhpZ2hQcmlvcml0eVBy
b3BlcnR5ID0gQ1NTUHJvcGVydHkiIC4gJG5hbWVUb0lkeyRmaXJzdEhpZ2hQcmlvcml0eVByb3Bl
cnR5TmFtZX0gLiAiO1xuIjsKK3ByaW50IEhFQURFUiAiY29uc3QgQ1NTUHJvcGVydHlJRCBsYXN0
SGlnaFByaW9yaXR5UHJvcGVydHkgPSBDU1NQcm9wZXJ0eSIgLiAkbmFtZVRvSWR7JGxhc3RIaWdo
UHJpb3JpdHlQcm9wZXJ0eU5hbWV9IC4gIjtcbiI7CitwcmludCBIRUFERVIgImNvbnN0IENTU1By
b3BlcnR5SUQgZmlyc3RMb3dQcmlvcml0eVByb3BlcnR5ID0gQ1NTUHJvcGVydHkiIC4gJG5hbWVU
b0lkeyRmaXJzdExvd1ByaW9yaXR5UHJvcGVydHlOYW1lfSAuICI7XG4iOworcHJpbnQgSEVBREVS
ICJjb25zdCBDU1NQcm9wZXJ0eUlEIGxhc3RMb3dQcmlvcml0eVByb3BlcnR5ID0gQ1NTUHJvcGVy
dHkiIC4gJG5hbWVUb0lkeyRsYXN0TG93UHJpb3JpdHlQcm9wZXJ0eU5hbWV9IC4gIjtcbiI7Citw
cmludCBIRUFERVIgImNvbnN0IENTU1Byb3BlcnR5SUQgZmlyc3REZWZlcnJlZFByb3BlcnR5ID0g
Q1NTUHJvcGVydHkiIC4gJG5hbWVUb0lkeyRmaXJzdERlZmVycmVkUHJvcGVydHlOYW1lfSAuICI7
XG4iOworcHJpbnQgSEVBREVSICJjb25zdCBDU1NQcm9wZXJ0eUlEIGxhc3REZWZlcnJlZFByb3Bl
cnR5ID0gQ1NTUHJvcGVydHkiIC4gJG5hbWVUb0lkeyRsYXN0RGVmZXJyZWRQcm9wZXJ0eU5hbWV9
IC4gIjtcblxuIjsKIAogcHJpbnQgSEVBREVSICJzdGF0aWMgY29uc3QgQ1NTUHJvcGVydHlJRCBj
b21wdXRlZFByb3BlcnR5SURzW10gPSB7XG4iOwogbXkgJG51bUNvbXB1dGVkUHJvcGVydHlJRHMg
PSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0
UGF0aHMuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0UGF0aHMu
Y3BwCmluZGV4IGFhM2MyODcxYzFkZjc4NGNlYjk3Nzk3ZDRkYTAyNmFiYjM3Y2M2NjguLjM4NmQ4
MWM2ZTA2YzA1NjhmMDhiYzYyMzMyYmNjNWI5ZmU2NGYzMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2VyRmFzdFBhdGhzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlckZhc3RQYXRocy5jcHAKQEAgLTczNSw5ICs3MzUsOCBA
QCBib29sIENTU1BhcnNlckZhc3RQYXRoczo6aXNWYWxpZEtleXdvcmRQcm9wZXJ0eUFuZFZhbHVl
KENTU1Byb3BlcnR5SUQgcHJvcGVydHlJZAogICAgICAgICAvLyBhdXRvIHwgbm9uZSB8IGludGVy
LXdvcmQgfCBkaXN0cmlidXRlCiAgICAgICAgIHJldHVybiB2YWx1ZUlEID09IENTU1ZhbHVlSW50
ZXJXb3JkIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVEaXN0cmlidXRlIHx8IHZhbHVlSUQgPT0gQ1NT
VmFsdWVBdXRvIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVOb25lOwogI2VuZGlmCi0gICAgY2FzZSBD
U1NQcm9wZXJ0eVdlYmtpdFRleHRPcmllbnRhdGlvbjogLy8gbWl4ZWQgfCB1cHJpZ2h0IHwgc2lk
ZXdheXMgfCBzaWRld2F5cy1yaWdodAotICAgICAgICByZXR1cm4gdmFsdWVJRCA9PSBDU1NWYWx1
ZU1peGVkIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVVcHJpZ2h0IHx8IHZhbHVlSUQgPT0gQ1NTVmFs
dWVTaWRld2F5cyB8fCB2YWx1ZUlEID09IENTU1ZhbHVlU2lkZXdheXNSaWdodDsKICAgICBjYXNl
IENTU1Byb3BlcnR5VGV4dE9yaWVudGF0aW9uOgorICAgICAgICAvLyBtaXhlZCB8IHVwcmlnaHQg
fCBzaWRld2F5cwogICAgICAgICByZXR1cm4gdmFsdWVJRCA9PSBDU1NWYWx1ZU1peGVkIHx8IHZh
bHVlSUQgPT0gQ1NTVmFsdWVVcHJpZ2h0IHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVTaWRld2F5czsK
ICAgICBjYXNlIENTU1Byb3BlcnR5VGV4dE92ZXJmbG93OiAvLyBjbGlwIHwgZWxsaXBzaXMKICAg
ICAgICAgcmV0dXJuIHZhbHVlSUQgPT0gQ1NTVmFsdWVDbGlwIHx8IHZhbHVlSUQgPT0gQ1NTVmFs
dWVFbGxpcHNpczsKQEAgLTk4OSw3ICs5ODgsNiBAQCBib29sIENTU1BhcnNlckZhc3RQYXRoczo6
aXNLZXl3b3JkUHJvcGVydHlJRChDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SWQpCiAgICAgY2FzZSBD
U1NQcm9wZXJ0eVdlYmtpdFRleHRDb21iaW5lOgogICAgIGNhc2UgQ1NTUHJvcGVydHlUZXh0Q29t
YmluZVVwcmlnaHQ6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVRleHREZWNvcmF0aW9uU3R5bGU6Ci0g
ICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFRleHRPcmllbnRhdGlvbjoKICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0VGV4dFNlY3VyaXR5OgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRUZXh0
Wm9vbToKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0VHJhbnNmb3JtU3R5bGU6CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlckltcGwuY3BwIGIvU291cmNl
L1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXJJbXBsLmNwcAppbmRleCBjYjhmNGM4YWJiYjBl
NjNmMmQxZDI2NDZjMWFjNDc3YWZhOTU2YjUxLi5mZjRjNTUzOWE2Y2E0Zjg0ZTg0YzIyNDdmNzg0
ODZlYzI5ZWM2MGVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Bh
cnNlckltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2VySW1w
bC5jcHAKQEAgLTEyNywxMyArMTI3LDcgQEAgc3RhdGljIGlubGluZSB2b2lkIGZpbHRlclByb3Bl
cnRpZXMoYm9vbCBpbXBvcnRhbnQsIGNvbnN0IFBhcnNlZFByb3BlcnR5VmVjdG9yJgogCiAgICAg
ICAgIGlmIChzZWVuUHJvcGVydGllcy50ZXN0KHByb3BlcnR5SURJbmRleCkpCiAgICAgICAgICAg
ICBjb250aW51ZTsKLSAgICAgICAgY29uc3QgdW5zaWduZWQgcmVsYXRlZFByb3BlcnR5SWQgPSBn
ZXRSZWxhdGVkUHJvcGVydHlJZChwcm9wZXJ0eS5pZCgpKTsKLSAgICAgICAgaWYgKHByb3BlcnR5
LmlkKCkgIT0gQ1NTUHJvcGVydHlJbnZhbGlkICYmIHJlbGF0ZWRQcm9wZXJ0eUlkICE9IENTU1By
b3BlcnR5SW52YWxpZCkgewotICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgcmVsYXRlZFByb3Bl
cnR5SURJbmRleCA9IHJlbGF0ZWRQcm9wZXJ0eUlkIC0gZmlyc3RDU1NQcm9wZXJ0eTsKLSAgICAg
ICAgICAgIHNlZW5Qcm9wZXJ0aWVzLnNldChyZWxhdGVkUHJvcGVydHlJREluZGV4KTsKLSAgICAg
ICAgICAgIHNlZW5Qcm9wZXJ0aWVzLnNldChwcm9wZXJ0eUlESW5kZXgpOwotICAgICAgICB9IGVs
c2UKLSAgICAgICAgICAgIHNlZW5Qcm9wZXJ0aWVzLnNldChwcm9wZXJ0eUlESW5kZXgpOworICAg
ICAgICBzZWVuUHJvcGVydGllcy5zZXQocHJvcGVydHlJREluZGV4KTsKIAogICAgICAgICBvdXRw
dXRbLS11bnVzZWRFbnRyaWVzXSA9IHByb3BlcnR5OwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAKaW5kZXggYzVmMzQ0MTY1ZjQ2MTYy
ZmY4ZWQxMTAzYTgwYjg4YWUxOTA2MjM3Zi4uMzU5Zjg0MTI4ZGJmZTliZDUxN2ZiMzBjNmExOTIx
NGY5NWY3NzA3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9w
ZXJ0eVBhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0
eVBhcnNlci5jcHAKQEAgLTU2NDIsNiArNTY0MiwyNSBAQCBib29sIENTU1Byb3BlcnR5UGFyc2Vy
Ojpjb25zdW1lTGVnYWN5QnJlYWtQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBib29s
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK2Jvb2wgQ1NTUHJvcGVydHlQYXJzZXI6OmNvbnN1bWVM
ZWdhY3lUZXh0T3JpZW50YXRpb24oYm9vbCBpbXBvcnRhbnQpCit7CisgICAgLy8gLXdlYmtpdC10
ZXh0LW9yaWVudGF0aW9uIGlzIGEgbGVnYWN5IHNob3J0aGFuZCBmb3IgdGV4dC1vcmllbnRhdGlv
bi4KKyAgICAvLyBUaGUgb25seSBkaWZmZXJlbmNlIGlzIHRoYXQgaXQgYWNjZXB0cyAnc2lkZXdh
eXMtcmlnaHQnLCB3aGljaCBpcyBtYXBwZWQgaW50byAnc2lkZXdheXMnLgorICAgIFJlZlB0cjxD
U1NQcmltaXRpdmVWYWx1ZT4ga2V5d29yZDsKKyAgICBhdXRvIHZhbHVlSUQgPSBtX3JhbmdlLnBl
ZWsoKS5pZCgpOworICAgIGlmICh2YWx1ZUlEID09IENTU1ZhbHVlU2lkZXdheXNSaWdodCkgewor
ICAgICAgICBrZXl3b3JkID0gQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVJZGVudGlm
aWVyVmFsdWUoQ1NTVmFsdWVTaWRld2F5cyk7CisgICAgICAgIGNvbnN1bWVJZGVudFJhdyhtX3Jh
bmdlKTsKKyAgICB9IGVsc2UgaWYgKENTU1BhcnNlckZhc3RQYXRoczo6aXNWYWxpZEtleXdvcmRQ
cm9wZXJ0eUFuZFZhbHVlKENTU1Byb3BlcnR5VGV4dE9yaWVudGF0aW9uLCB2YWx1ZUlELCBtX2Nv
bnRleHQpKQorICAgICAgICBrZXl3b3JkID0gY29uc3VtZUlkZW50KG1fcmFuZ2UpOworICAgIGVs
c2UKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlmICgha2V5d29yZCB8fCAhbV9yYW5nZS5h
dEVuZCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgYWRkUHJvcGVydHkoQ1NTUHJvcGVy
dHlUZXh0T3JpZW50YXRpb24sIENTU1Byb3BlcnR5V2Via2l0VGV4dE9yaWVudGF0aW9uLCBrZXl3
b3JkLnJlbGVhc2VOb25OdWxsKCksIGltcG9ydGFudCk7CisgICAgcmV0dXJuIHRydWU7Cit9CisK
IHN0YXRpYyBib29sIGNvbnN1bWVCYWNrZ3JvdW5kUG9zaXRpb24oQ1NTUGFyc2VyVG9rZW5SYW5n
ZSYgcmFuZ2UsIGNvbnN0IENTU1BhcnNlckNvbnRleHQmIGNvbnRleHQsIENTU1Byb3BlcnR5SUQg
cHJvcGVydHksIFJlZlB0cjxDU1NWYWx1ZT4mIHJlc3VsdFgsIFJlZlB0cjxDU1NWYWx1ZT4mIHJl
c3VsdFkpCiB7CiAgICAgZG8gewpAQCAtNjQ1MCw2ICs2NDY5LDggQEAgYm9vbCBDU1NQcm9wZXJ0
eVBhcnNlcjo6cGFyc2VTaG9ydGhhbmQoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgYm9vbCBpbXBv
cnRhbnQpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdENvbHVtbkJyZWFrQmVmb3JlOgogICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRDb2x1bW5CcmVha0luc2lkZToKICAgICAgICAgcmV0dXJu
IGNvbnN1bWVMZWdhY3lCcmVha1Byb3BlcnR5KHByb3BlcnR5LCBpbXBvcnRhbnQpOworICAgIGNh
c2UgQ1NTUHJvcGVydHlXZWJraXRUZXh0T3JpZW50YXRpb246CisgICAgICAgIHJldHVybiBjb25z
dW1lTGVnYWN5VGV4dE9yaWVudGF0aW9uKGltcG9ydGFudCk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0
eU1hc2tQb3NpdGlvbjoKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWFza1Bvc2l0aW9uOgog
ICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kUG9zaXRpb246IHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuaAppbmRleCAwNDNmMjExMWRkODU0ZmI2
ODg4M2Q2ZjkyNDE0M2I1NDhiMjVmNjhmLi5lZTZjNDg3ZWFiZGM2NWZjODQ0NGMzOWQ5NzJjNzFk
YmM5Nzk3NzIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3Bl
cnR5UGFyc2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBh
cnNlci5oCkBAIC0xMTcsNiArMTE3LDcgQEAgcHJpdmF0ZToKICAgICBib29sIGNvbnN1bWVGbGV4
KGJvb2wgaW1wb3J0YW50KTsKIAogICAgIGJvb2wgY29uc3VtZUxlZ2FjeUJyZWFrUHJvcGVydHko
Q1NTUHJvcGVydHlJRCwgYm9vbCBpbXBvcnRhbnQpOworICAgIGJvb2wgY29uc3VtZUxlZ2FjeVRl
eHRPcmllbnRhdGlvbihib29sIGltcG9ydGFudCk7CiAKICAgICBib29sIGNvbnN1bWVUcmFuc2Zv
cm1PcmlnaW4oYm9vbCBpbXBvcnRhbnQpOwogICAgIGJvb2wgY29uc3VtZVBlcnNwZWN0aXZlT3Jp
Z2luKGJvb2wgaW1wb3J0YW50KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1By
b3BlcnR5Q2FzY2FkZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUu
Y3BwCmluZGV4IDkwZmVkNjE3YWY3NTZlNzczOGJjOWI1MzVkZGRhMTI4ZWUwYzAxMmYuLjU4OTg5
OGY1ODQ0MWFhZjNlODg3MDAzY2VhYTZkMzRiZTg0OTBkYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5
bGUvUHJvcGVydHlDYXNjYWRlLmNwcApAQCAtMzgsMzAgKzM4LDYgQEAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIG5hbWVzcGFjZSBTdHlsZSB7CiAKLXN0YXRpYyBpbmxpbmUgYm9vbCBzaG91bGRBcHBs
eVByb3BlcnR5SW5QYXJzZU9yZGVyKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkKLXsKLSAgICBz
d2l0Y2ggKHByb3BlcnR5SUQpIHsKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0QmFja2dyb3Vu
ZENsaXA6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRDbGlwOgotICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRCYWNrZ3JvdW5kT3JpZ2luOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNr
Z3JvdW5kT3JpZ2luOgotICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCYWNrZ3JvdW5kU2l6ZToK
LSAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZFNpemU6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0
eVdlYmtpdEJvcmRlckltYWdlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZToKLSAg
ICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VTbGljZToKLSAgICBjYXNlIENTU1Byb3BlcnR5
Qm9yZGVySW1hZ2VTb3VyY2U6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlT3V0c2V0
OgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVJlcGVhdDoKLSAgICBjYXNlIENTU1By
b3BlcnR5Qm9yZGVySW1hZ2VXaWR0aDoKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm94U2hh
ZG93OgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3hTaGFkb3c6Ci0gICAgICAgIHJldHVybiB0cnVl
OwotICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci19Ci0KIFByb3Bl
cnR5Q2FzY2FkZTo6UHJvcGVydHlDYXNjYWRlKGNvbnN0IE1hdGNoUmVzdWx0JiBtYXRjaFJlc3Vs
dCwgQ2FzY2FkZUxldmVsIG1heGltdW1DYXNjYWRlTGV2ZWwsIEluY2x1ZGVkUHJvcGVydGllcyBp
bmNsdWRlZFByb3BlcnRpZXMsIERpcmVjdGlvbiBkaXJlY3Rpb24pCiAgICAgOiBtX21hdGNoUmVz
dWx0KG1hdGNoUmVzdWx0KQogICAgICwgbV9pbmNsdWRlZFByb3BlcnRpZXMoaW5jbHVkZWRQcm9w
ZXJ0aWVzKQpAQCAtMTI3LDcgKzEwMyw3IEBAIHZvaWQgUHJvcGVydHlDYXNjYWRlOjpzZXQoQ1NT
UHJvcGVydHlJRCBpZCwgQ1NTVmFsdWUmIGNzc1ZhbHVlLCBjb25zdCBNYXRjaGVkUHJvCiAgICAg
ICAgIGlkID0gQ1NTUHJvcGVydHk6OnJlc29sdmVEaXJlY3Rpb25Bd2FyZVByb3BlcnR5KGlkLCBk
aXJlY3Rpb24udGV4dERpcmVjdGlvbiwgZGlyZWN0aW9uLndyaXRpbmdNb2RlKTsKICAgICB9CiAK
LSAgICBBU1NFUlQoIXNob3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIoaWQpKTsKKyAgICBB
U1NFUlQoaWQgPCBmaXJzdERlZmVycmVkUHJvcGVydHkpOwogCiAgICAgYXV0byYgcHJvcGVydHkg
PSBtX3Byb3BlcnRpZXNbaWRdOwogICAgIEFTU0VSVChpZCA8IG1fcHJvcGVydHlJc1ByZXNlbnQu
c2l6ZSgpKTsKQEAgLTE1OCw3ICsxMzQsNyBAQCB2b2lkIFByb3BlcnR5Q2FzY2FkZTo6c2V0KENT
U1Byb3BlcnR5SUQgaWQsIENTU1ZhbHVlJiBjc3NWYWx1ZSwgY29uc3QgTWF0Y2hlZFBybwogdm9p
ZCBQcm9wZXJ0eUNhc2NhZGU6OnNldERlZmVycmVkKENTU1Byb3BlcnR5SUQgaWQsIENTU1ZhbHVl
JiBjc3NWYWx1ZSwgY29uc3QgTWF0Y2hlZFByb3BlcnRpZXMmIG1hdGNoZWRQcm9wZXJ0aWVzLCBD
YXNjYWRlTGV2ZWwgY2FzY2FkZUxldmVsKQogewogICAgIEFTU0VSVCghQ1NTUHJvcGVydHk6Omlz
RGlyZWN0aW9uQXdhcmVQcm9wZXJ0eShpZCkpOwotICAgIEFTU0VSVChzaG91bGRBcHBseVByb3Bl
cnR5SW5QYXJzZU9yZGVyKGlkKSk7CisgICAgQVNTRVJUKGlkID49IGZpcnN0RGVmZXJyZWRQcm9w
ZXJ0eSk7CiAKICAgICBQcm9wZXJ0eSBwcm9wZXJ0eTsKICAgICBtZW1zZXQocHJvcGVydHkuY3Nz
VmFsdWUsIDAsIHNpemVvZihwcm9wZXJ0eS5jc3NWYWx1ZSkpOwpAQCAtMjExLDEwICsxODcsMTAg
QEAgYm9vbCBQcm9wZXJ0eUNhc2NhZGU6OmFkZE1hdGNoKGNvbnN0IE1hdGNoZWRQcm9wZXJ0aWVz
JiBtYXRjaGVkUHJvcGVydGllcywgQ2FzY2EKICAgICAgICAgaWYgKHByb3BlcnR5QWxsb3dsaXN0
ID09IFByb3BlcnR5QWxsb3dsaXN0OjpNYXJrZXIgJiYgIWlzVmFsaWRNYXJrZXJTdHlsZVByb3Bl
cnR5KHByb3BlcnR5SUQpKQogICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAgaWYgKHNo
b3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIocHJvcGVydHlJRCkpCi0gICAgICAgICAgICBz
ZXREZWZlcnJlZChwcm9wZXJ0eUlELCAqY3VycmVudC52YWx1ZSgpLCBtYXRjaGVkUHJvcGVydGll
cywgY2FzY2FkZUxldmVsKTsKLSAgICAgICAgZWxzZQorICAgICAgICBpZiAocHJvcGVydHlJRCA8
IGZpcnN0RGVmZXJyZWRQcm9wZXJ0eSkKICAgICAgICAgICAgIHNldChwcm9wZXJ0eUlELCAqY3Vy
cmVudC52YWx1ZSgpLCBtYXRjaGVkUHJvcGVydGllcywgY2FzY2FkZUxldmVsKTsKKyAgICAgICAg
ZWxzZQorICAgICAgICAgICAgc2V0RGVmZXJyZWQocHJvcGVydHlJRCwgKmN1cnJlbnQudmFsdWUo
KSwgbWF0Y2hlZFByb3BlcnRpZXMsIGNhc2NhZGVMZXZlbCk7CiAgICAgfQogCiAgICAgcmV0dXJu
IGhhc0ltcG9ydGFudFByb3BlcnRpZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHls
ZS9Qcm9wZXJ0eUNhc2NhZGUuaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2Fk
ZS5oCmluZGV4IDNlZTZkZjMzZDUzOTVkZTVmNWI5NGE0M2Y2MTAzNDc4MDIwN2VlZmMuLjM5MmVl
YzRmYWZmYzgxNTE5YmY1YTM3Yzg4YmRhNDExYzNiNDg0YjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxl
L1Byb3BlcnR5Q2FzY2FkZS5oCkBAIC01OSw4ICs1OSw4IEBAIHB1YmxpYzoKICAgICAgICAgQ1NT
VmFsdWUqIGNzc1ZhbHVlWzNdOyAvLyBWYWx1ZXMgZm9yIGxpbmsgbWF0Y2ggc3RhdGVzIE1hdGNo
RGVmYXVsdCwgTWF0Y2hMaW5rIGFuZCBNYXRjaFZpc2l0ZWQKICAgICB9OwogCi0gICAgYm9vbCBo
YXNQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEKSBjb25zdDsKLSAgICBjb25zdCBQcm9wZXJ0eSYgcHJv
cGVydHkoQ1NTUHJvcGVydHlJRCkgY29uc3Q7CisgICAgYm9vbCBoYXNOb3JtYWxQcm9wZXJ0eShD
U1NQcm9wZXJ0eUlEKSBjb25zdDsKKyAgICBjb25zdCBQcm9wZXJ0eSYgbm9ybWFsUHJvcGVydHko
Q1NTUHJvcGVydHlJRCkgY29uc3Q7CiAKICAgICBib29sIGhhc0RlZmVycmVkUHJvcGVydHkoQ1NT
UHJvcGVydHlJRCkgY29uc3Q7CiAgICAgY29uc3QgUHJvcGVydHkmIGRlZmVycmVkUHJvcGVydHko
Q1NTUHJvcGVydHlJRCkgY29uc3Q7CkBAIC05Miw4ICs5Miw4IEBAIHByaXZhdGU6CiAgICAgbXV0
YWJsZSBEaXJlY3Rpb24gbV9kaXJlY3Rpb247CiAgICAgbXV0YWJsZSBib29sIG1fZGlyZWN0aW9u
SXNVbnJlc29sdmVkIHsgdHJ1ZSB9OwogCi0gICAgUHJvcGVydHkgbV9wcm9wZXJ0aWVzW251bUNT
U1Byb3BlcnRpZXMgKyAyXTsKLSAgICBzdGQ6OmJpdHNldDxudW1DU1NQcm9wZXJ0aWVzICsgMj4g
bV9wcm9wZXJ0eUlzUHJlc2VudDsKKyAgICBQcm9wZXJ0eSBtX3Byb3BlcnRpZXNbZmlyc3REZWZl
cnJlZFByb3BlcnR5XTsKKyAgICBzdGQ6OmJpdHNldDxmaXJzdERlZmVycmVkUHJvcGVydHk+IG1f
cHJvcGVydHlJc1ByZXNlbnQ7CiAKICAgICBWZWN0b3I8UHJvcGVydHksIDg+IG1fZGVmZXJyZWRQ
cm9wZXJ0aWVzOwogICAgIEhhc2hNYXA8Q1NTUHJvcGVydHlJRCwgdW5zaWduZWQ+IG1fZGVmZXJy
ZWRQcm9wZXJ0aWVzSW5kaWNlczsKQEAgLTEwMSwxOSArMTAxLDIxIEBAIHByaXZhdGU6CiAgICAg
SGFzaE1hcDxBdG9tU3RyaW5nLCBQcm9wZXJ0eT4gbV9jdXN0b21Qcm9wZXJ0aWVzOwogfTsKIAot
aW5saW5lIGJvb2wgUHJvcGVydHlDYXNjYWRlOjpoYXNQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIGlk
KSBjb25zdAoraW5saW5lIGJvb2wgUHJvcGVydHlDYXNjYWRlOjpoYXNOb3JtYWxQcm9wZXJ0eShD
U1NQcm9wZXJ0eUlEIGlkKSBjb25zdAogewotICAgIEFTU0VSVChpZCA8IG1fcHJvcGVydHlJc1By
ZXNlbnQuc2l6ZSgpKTsKKyAgICBBU1NFUlQoaWQgPCBmaXJzdERlZmVycmVkUHJvcGVydHkpOwog
ICAgIHJldHVybiBtX3Byb3BlcnR5SXNQcmVzZW50W2lkXTsKIH0KIAotaW5saW5lIGNvbnN0IFBy
b3BlcnR5Q2FzY2FkZTo6UHJvcGVydHkmIFByb3BlcnR5Q2FzY2FkZTo6cHJvcGVydHkoQ1NTUHJv
cGVydHlJRCBpZCkgY29uc3QKK2lubGluZSBjb25zdCBQcm9wZXJ0eUNhc2NhZGU6OlByb3BlcnR5
JiBQcm9wZXJ0eUNhc2NhZGU6Om5vcm1hbFByb3BlcnR5KENTU1Byb3BlcnR5SUQgaWQpIGNvbnN0
CiB7CisgICAgQVNTRVJUKGhhc1Byb3BlcnR5KGlkKSk7CiAgICAgcmV0dXJuIG1fcHJvcGVydGll
c1tpZF07CiB9CiAKIGlubGluZSBib29sIFByb3BlcnR5Q2FzY2FkZTo6aGFzRGVmZXJyZWRQcm9w
ZXJ0eShDU1NQcm9wZXJ0eUlEIGlkKSBjb25zdAogeworICAgIEFTU0VSVChpZCA+PSBmaXJzdERl
ZmVycmVkUHJvcGVydHkpOwogICAgIHJldHVybiBtX2RlZmVycmVkUHJvcGVydGllc0luZGljZXMu
Y29udGFpbnMoaWQpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyLmNwcAppbmRl
eCA1NDNkYzAyZDEzNjFhOGE1YTE5Y2ZmYzIwMGZlMTFhN2I4Y2RlOGJkLi44NzNhZWNlMjlmNGQ4
YjY1YTZmYzAxN2M0ZTQ0MDIyMjYyMGQ5ZWVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9TdHlsZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVp
bGRlci5jcHAKQEAgLTkxLDcgKzkxLDcgQEAgQnVpbGRlcjo6fkJ1aWxkZXIoKSA9IGRlZmF1bHQ7
CiB2b2lkIEJ1aWxkZXI6OmFwcGx5QWxsUHJvcGVydGllcygpCiB7CiAgICAgYXBwbHlIaWdoUHJp
b3JpdHlQcm9wZXJ0aWVzKCk7Ci0gICAgYXBwbHlMb3dQcmlvcml0eVByb3BlcnRpZXMoKTsKKyAg
ICBhcHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMoKTsKIH0KIAogLy8gSGlnaCBwcmlvcml0
eSBwcm9wZXJ0aWVzIG1heSBhZmZlY3QgcmVzb2x1dGlvbiBvZiBvdGhlciBwcm9wZXJ0aWVzICh0
aGV5IGFyZSBtb3N0bHkgZm9udCByZWxhdGVkKS4KQEAgLTEwNSwxNyArMTA1LDE3IEBAIHZvaWQg
QnVpbGRlcjo6YXBwbHlIaWdoUHJpb3JpdHlQcm9wZXJ0aWVzKCkKICAgICBhcHBseVByb3BlcnRp
ZXMoQ1NTUHJvcGVydHlDb2xvclNjaGVtZSwgQ1NTUHJvcGVydHlDb2xvclNjaGVtZSk7CiAjZW5k
aWYKIAotICAgIGFwcGx5UHJvcGVydGllcyhmaXJzdENTU1Byb3BlcnR5LCBsYXN0SGlnaFByaW9y
aXR5UHJvcGVydHkpOworICAgIGFwcGx5UHJvcGVydGllcyhmaXJzdEhpZ2hQcmlvcml0eVByb3Bl
cnR5LCBsYXN0SGlnaFByaW9yaXR5UHJvcGVydHkpOwogCiAgICAgbV9zdGF0ZS51cGRhdGVGb250
KCk7CiB9CiAKLXZvaWQgQnVpbGRlcjo6YXBwbHlMb3dQcmlvcml0eVByb3BlcnRpZXMoKQordm9p
ZCBCdWlsZGVyOjphcHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMoKQogewogICAgIEFTU0VS
VCghbV9zdGF0ZS5mb250RGlydHkoKSk7CiAKICAgICBhcHBseUN1c3RvbVByb3BlcnRpZXMoKTsK
LSAgICBhcHBseVByb3BlcnRpZXMoZmlyc3RMb3dQcmlvcml0eVByb3BlcnR5LCBsYXN0Q1NTUHJv
cGVydHkpOworICAgIGFwcGx5UHJvcGVydGllcyhmaXJzdExvd1ByaW9yaXR5UHJvcGVydHksIGxh
c3RMb3dQcmlvcml0eVByb3BlcnR5KTsKICAgICBhcHBseURlZmVycmVkUHJvcGVydGllcygpOwog
CiAgICAgQVNTRVJUKCFtX3N0YXRlLmZvbnREaXJ0eSgpKTsKQEAgLTE0MCwxMCArMTQwLDEwIEBA
IGlubGluZSB2b2lkIEJ1aWxkZXI6OmFwcGx5UHJvcGVydGllc0ltcGwoaW50IGZpcnN0UHJvcGVy
dHksIGludCBsYXN0UHJvcGVydHkpCiB7CiAgICAgZm9yIChpbnQgaWQgPSBmaXJzdFByb3BlcnR5
OyBpZCA8PSBsYXN0UHJvcGVydHk7ICsraWQpIHsKICAgICAgICAgQ1NTUHJvcGVydHlJRCBwcm9w
ZXJ0eUlEID0gc3RhdGljX2Nhc3Q8Q1NTUHJvcGVydHlJRD4oaWQpOwotICAgICAgICBpZiAoIW1f
Y2FzY2FkZS5oYXNQcm9wZXJ0eShwcm9wZXJ0eUlEKSkKKyAgICAgICAgaWYgKCFtX2Nhc2NhZGUu
aGFzTm9ybWFsUHJvcGVydHkocHJvcGVydHlJRCkpCiAgICAgICAgICAgICBjb250aW51ZTsKICAg
ICAgICAgQVNTRVJUKHByb3BlcnR5SUQgIT0gQ1NTUHJvcGVydHlDdXN0b20pOwotICAgICAgICBh
dXRvJiBwcm9wZXJ0eSA9IG1fY2FzY2FkZS5wcm9wZXJ0eShwcm9wZXJ0eUlEKTsKKyAgICAgICAg
YXV0byYgcHJvcGVydHkgPSBtX2Nhc2NhZGUubm9ybWFsUHJvcGVydHkocHJvcGVydHlJRCk7CiAK
ICAgICAgICAgaWYgKHRyYWNrQ3ljbGVzID09IEN1c3RvbVByb3BlcnR5Q3ljbGVUcmFja2luZzo6
RW5hYmxlZCkgewogICAgICAgICAgICAgaWYgKFVOTElLRUxZKG1fc3RhdGUubV9pblByb2dyZXNz
UHJvcGVydGllcy5nZXQocHJvcGVydHlJRCkpKSB7CkBAIC0zMTYsMTAgKzMxNiwxMiBAQCB2b2lk
IEJ1aWxkZXI6OmFwcGx5UHJvcGVydHkoQ1NTUHJvcGVydHlJRCBpZCwgQ1NTVmFsdWUmIHZhbHVl
LCBTZWxlY3RvckNoZWNrZXI6OgogICAgICAgICAgICAgICAgICAgICBhcHBseVJvbGxiYWNrQ2Fz
Y2FkZVByb3BlcnR5KHByb3BlcnR5LCBsaW5rTWF0Y2hNYXNrKTsKICAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0gZWxzZSBpZiAocm9s
bGJhY2tDYXNjYWRlLT5oYXNQcm9wZXJ0eShpZCkpIHsKLSAgICAgICAgICAgICAgICBhdXRvJiBw
cm9wZXJ0eSA9IHJvbGxiYWNrQ2FzY2FkZS0+cHJvcGVydHkoaWQpOwotICAgICAgICAgICAgICAg
IGFwcGx5Um9sbGJhY2tDYXNjYWRlUHJvcGVydHkocHJvcGVydHksIGxpbmtNYXRjaE1hc2spOwot
ICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAoaWQgPCBmaXJz
dERlZmVycmVkUHJvcGVydHkpIHsKKyAgICAgICAgICAgICAgICBpZiAocm9sbGJhY2tDYXNjYWRl
LT5oYXNOb3JtYWxQcm9wZXJ0eShpZCkpIHsKKyAgICAgICAgICAgICAgICAgICAgYXV0byYgcHJv
cGVydHkgPSByb2xsYmFja0Nhc2NhZGUtPm5vcm1hbFByb3BlcnR5KGlkKTsKKyAgICAgICAgICAg
ICAgICAgICAgYXBwbHlSb2xsYmFja0Nhc2NhZGVQcm9wZXJ0eShwcm9wZXJ0eSwgbGlua01hdGNo
TWFzayk7CisgICAgICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgICAgICB9CiAg
ICAgICAgICAgICB9IGVsc2UgaWYgKHJvbGxiYWNrQ2FzY2FkZS0+aGFzRGVmZXJyZWRQcm9wZXJ0
eShpZCkpIHsKICAgICAgICAgICAgICAgICBhdXRvJiBwcm9wZXJ0eSA9IHJvbGxiYWNrQ2FzY2Fk
ZS0+ZGVmZXJyZWRQcm9wZXJ0eShpZCk7CiAgICAgICAgICAgICAgICAgYXBwbHlSb2xsYmFja0Nh
c2NhZGVQcm9wZXJ0eShwcm9wZXJ0eSwgbGlua01hdGNoTWFzayk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0
eWxlQnVpbGRlci5oCmluZGV4IDYzMjVmM2JmN2Y4MWMyNjIyMjA3ZWUwMjE4Nzk0ODNiYTY3M2Q2
YmUuLjdjNzFmZDVhYzFjZDQ0NGMwNzkwZmUzYzNhMzBmOTdkYmUzYTMwMjUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3N0eWxlL1N0eWxlQnVpbGRlci5oCkBAIC00MCw3ICs0MCw3IEBAIHB1YmxpYzoKIAogICAgIHZv
aWQgYXBwbHlBbGxQcm9wZXJ0aWVzKCk7CiAgICAgdm9pZCBhcHBseUhpZ2hQcmlvcml0eVByb3Bl
cnRpZXMoKTsKLSAgICB2b2lkIGFwcGx5TG93UHJpb3JpdHlQcm9wZXJ0aWVzKCk7CisgICAgdm9p
ZCBhcHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMoKTsKIAogICAgIHZvaWQgYXBwbHlQcm9w
ZXJ0eShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQpIHsgYXBwbHlQcm9wZXJ0aWVzKHByb3BlcnR5
SUQsIHByb3BlcnR5SUQpOyB9CiAgICAgdm9pZCBhcHBseUN1c3RvbVByb3BlcnR5KGNvbnN0IFN0
cmluZyYgbmFtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxk
ZXJDdXN0b20uaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckN1c3RvbS5oCmlu
ZGV4IGU3YWFkZGQwNGJkMjFjYjY2MDczYjMxZjI5MWFkYjc3YjgyYzAxMjUuLjYzOWUwYWFlZGM2
MjRkN2NlYzlmNjZiOWY1ZTlmODhlZTJiMjE0MWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3N0eWxlL1N0eWxlQnVpbGRlckN1c3RvbS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0
eWxlQnVpbGRlckN1c3RvbS5oCkBAIC0xNDgsNyArMTQ4LDYgQEAgcHVibGljOgogICAgIHN0YXRp
YyB2b2lkIGFwcGx5SW5pdGlhbFRleHRBbGlnbihCdWlsZGVyU3RhdGUmKTsKICAgICBzdGF0aWMg
dm9pZCBhcHBseVZhbHVlVGV4dEFsaWduKEJ1aWxkZXJTdGF0ZSYsIENTU1ZhbHVlJik7CiAgICAg
c3RhdGljIHZvaWQgYXBwbHlWYWx1ZVdlYmtpdExvY2FsZShCdWlsZGVyU3RhdGUmLCBDU1NWYWx1
ZSYpOwotICAgIHN0YXRpYyB2b2lkIGFwcGx5VmFsdWVXZWJraXRUZXh0T3JpZW50YXRpb24oQnVp
bGRlclN0YXRlJiwgQ1NTVmFsdWUmKTsKICAgICBzdGF0aWMgdm9pZCBhcHBseVZhbHVlVGV4dE9y
aWVudGF0aW9uKEJ1aWxkZXJTdGF0ZSYsIENTU1ZhbHVlJik7CiAjaWYgRU5BQkxFKFRFWFRfQVVU
T1NJWklORykKICAgICBzdGF0aWMgdm9pZCBhcHBseVZhbHVlV2Via2l0VGV4dFNpemVBZGp1c3Qo
QnVpbGRlclN0YXRlJiwgQ1NTVmFsdWUmKTsKQEAgLTg5MCwxMSArODg5LDYgQEAgaW5saW5lIHZv
aWQgQnVpbGRlckN1c3RvbTo6YXBwbHlWYWx1ZVdyaXRpbmdNb2RlKEJ1aWxkZXJTdGF0ZSYgYnVp
bGRlclN0YXRlLCBDU1MKICAgICBidWlsZGVyU3RhdGUuc3R5bGUoKS5zZXRIYXNFeHBsaWNpdGx5
U2V0V3JpdGluZ01vZGUodHJ1ZSk7CiB9CiAKLWlubGluZSB2b2lkIEJ1aWxkZXJDdXN0b206OmFw
cGx5VmFsdWVXZWJraXRUZXh0T3JpZW50YXRpb24oQnVpbGRlclN0YXRlJiBidWlsZGVyU3RhdGUs
IENTU1ZhbHVlJiB2YWx1ZSkKLXsKLSAgICBidWlsZGVyU3RhdGUuc2V0VGV4dE9yaWVudGF0aW9u
KGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPih2YWx1ZSkpOwotfQotCiBpbmxpbmUgdm9pZCBC
dWlsZGVyQ3VzdG9tOjphcHBseVZhbHVlVGV4dE9yaWVudGF0aW9uKEJ1aWxkZXJTdGF0ZSYgYnVp
bGRlclN0YXRlLCBDU1NWYWx1ZSYgdmFsdWUpCiB7CiAgICAgYnVpbGRlclN0YXRlLnNldFRleHRP
cmllbnRhdGlvbihkb3duY2FzdDxDU1NQcmltaXRpdmVWYWx1ZT4odmFsdWUpKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvc3R5bGUvU3R5bGVSZXNvbHZlci5jcHAKaW5kZXggYzYzZDBlNTkzNDIyNjg3NzgyOGU2ZjBm
MWMyYWUxN2NjZTQ4ZGZhMC4uNTBkNmM1NDcyOTA0MjhjMWYyMTA0NTc3OWM0MTA4OGU5NjA4Nzdm
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVSZXNvbHZlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVSZXNvbHZlci5jcHAKQEAgLTYyMyw3ICs2MjMs
NyBAQCB2b2lkIFJlc29sdmVyOjphcHBseU1hdGNoZWRQcm9wZXJ0aWVzKFN0YXRlJiBzdGF0ZSwg
Y29uc3QgTWF0Y2hSZXN1bHQmIG1hdGNoUmVzdQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0g
ICAgYnVpbGRlci5hcHBseUxvd1ByaW9yaXR5UHJvcGVydGllcygpOworICAgIGJ1aWxkZXIuYXBw
bHlOb25IaWdoUHJpb3JpdHlQcm9wZXJ0aWVzKCk7CiAKICAgICBmb3IgKGF1dG8mIGNvbnRlbnRB
dHRyaWJ1dGUgOiBidWlsZGVyLnN0YXRlKCkucmVnaXN0ZXJlZENvbnRlbnRBdHRyaWJ1dGVzKCkp
CiAgICAgICAgIHJ1bGVTZXRzKCkubXV0YWJsZUZlYXR1cmVzKCkucmVnaXN0ZXJDb250ZW50QXR0
cmlidXRlKGNvbnRlbnRBdHRyaWJ1dGUpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGE0ODc3ZDY5NDQzMTk4Y2E4MDRlZDkx
ZmYzOTVhMTY5NGYyYTI2MzYuLjc4NmE5ZGI3ZDU2MzgyYjI1YTZhN2JkYWM2YzU2ZjlmYjBhM2Fi
OGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAyMi0wMy0yNSAgT3Jpb2wgQnJ1ZmF1ICA8b2Jy
dWZhdUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3NdIFR1cm4gLXdlYmtpdC10ZXh0LW9yaWVu
dGF0aW9uIGludG8gYSBsZWdhY3kgc2hvcnRoYW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzgzNTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNl
LWNvbXBldGl0aW9uLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L3RleHQvdGV4dC1vcmll
bnRhdGlvbi1wYXJzZS1jb21wZXRpdGlvbi5odG1sOgorICAgICAgICBDaGVjayB0aGF0IGlmIGEg
c3R5bGVzaGVldCBzcGVjaWZpZXMgYm90aCAtd2Via2l0LXRleHQtb3JpZW50YXRpb24gYW5kCisg
ICAgICAgIHRleHQtb3JpZW50YXRpb24gZm9yIHRoZSBzYW1lIGVsZW1lbnQsIHRoZSBsYXN0IHNw
ZWNpZmllZCBvbmUgd2lucy4KKworICAgICAgICAqIGZhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9u
LXBhcnNlLXN0eWxlc2hlZXQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvdGV4dC90ZXh0
LW9yaWVudGF0aW9uLXBhcnNlLXN0eWxlc2hlZXQuaHRtbDoKKyAgICAgICAgQ2hlY2sgdGhhdCBv
bmx5IC13ZWJraXQtdGV4dC1vcmllbnRhdGlvbiBhY2NlcHRzIGBzaWRld2F5cy1yaWdodGAsIGFu
ZAorICAgICAgICB0aGF0IGl0J3MgbWFwcGVkIHRvIGBzaWRld2F5c2AgYXQgcGFyc2UgdGltZS4K
KwogMjAyMi0wMy0yMyAgWmlyYW4gU3VuICA8enN1bkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtJ
bnB1dEVsZW1lbnRdIEFkZCBIVE1MSW5wdXRFbGVtZW50OjpzaG93UGlja2VyKCkgbWV0aG9kCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdGV4dC1vcmllbnRhdGlvbi1wYXJzZS1j
b21wZXRpdGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdGV4dC1vcmll
bnRhdGlvbi1wYXJzZS1jb21wZXRpdGlvbi1leHBlY3RlZC50eHQKaW5kZXggNmE2YWIxZDU0MmY2
NmJhYjc3ZGY5MjEyMmFlNDkwNWIzNzY0Mzk2NS4uNmFlMGQ2NmZkMGUwMGI5ODc1MTc1MzJkNWYw
N2MyNjAyMjNkYzYzNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3RleHQtb3Jp
ZW50YXRpb24tcGFyc2UtY29tcGV0aXRpb24tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLWNvbXBldGl0aW9uLWV4cGVjdGVkLnR4
dApAQCAtMSw5ICsxLDIxIEBACiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCd0ZXN0MScpKS53ZWJraXRUZXh0T3JpZW50YXRpb24gaXMgInVwcmln
aHQiCiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCd0ZXN0MicpKS53ZWJraXRUZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQiCitQQVNTIHdpbmRv
dy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MycpKS53ZWJr
aXRUZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0
eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NCcpKS53ZWJraXRUZXh0T3JpZW50YXRp
b24gaXMgInVwcmlnaHQiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCd0ZXN0NScpKS53ZWJraXRUZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQi
CitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0
ZXN0NicpKS53ZWJraXRUZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQiCiBQQVNTIHdpbmRvdy5n
ZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MScpKS50ZXh0T3Jp
ZW50YXRpb24gaXMgInVwcmlnaHQiCiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MicpKS50ZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQi
CitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0
ZXN0MycpKS50ZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQiCitQQVNTIHdpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NCcpKS50ZXh0T3JpZW50YXRp
b24gaXMgInVwcmlnaHQiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCd0ZXN0NScpKS50ZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQiCitQQVNT
IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0Nicp
KS50ZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQiCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKIOS9oOWlvUFCQwog5L2g5aW9QUJDCivkvaDlpb1BQkMK
K+S9oOWlvUFCQwor5L2g5aW9QUJDCivkvaDlpb1BQkMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLWNvbXBldGl0aW9uLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L3RleHQvdGV4dC1vcmllbnRhdGlvbi1wYXJzZS1jb21wZXRpdGlvbi5odG1s
CmluZGV4IDEwODBiNzIzMjA0YjZiOTQ2NjE0NWQzOWJlMzM3YzA4NWJlNzJiYzEuLjk3MWMxYjEz
MzAwYjkzMWJkYjk5ZmZjNGI2YWRiYThmNzhkYzk5MDkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLWNvbXBldGl0aW9uLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC90ZXh0L3RleHQtb3JpZW50YXRpb24tcGFyc2UtY29tcGV0aXRpb24u
aHRtbApAQCAtMiwxNiArMiwzOSBAQAogPGh0bWw+CiAJPGhlYWQ+CiAJPG1ldGEgY2hhcnNldD0i
dXRmLTgiPgorCTxzdHlsZT4KKwkJI3Rlc3QzIHsgLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uOiBz
aWRld2F5czsgdGV4dC1vcmllbnRhdGlvbjogdXByaWdodDsgfQorCisJCSN0ZXN0NCB7IHRleHQt
b3JpZW50YXRpb246IHNpZGV3YXlzOyAtd2Via2l0LXRleHQtb3JpZW50YXRpb246IHVwcmlnaHQ7
IH0KKworCQkjdGVzdDUgeyAtd2Via2l0LXRleHQtb3JpZW50YXRpb246IHNpZGV3YXlzOyB9CisJ
CSN0ZXN0NSB7IHRleHQtb3JpZW50YXRpb246IHVwcmlnaHQ7IH0KKworCQkjdGVzdDYgeyB0ZXh0
LW9yaWVudGF0aW9uOiBzaWRld2F5czsgfQorCQkjdGVzdDYgeyAtd2Via2l0LXRleHQtb3JpZW50
YXRpb246IHVwcmlnaHQ7IH0KKwk8L3N0eWxlPgogCTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgogCTwvaGVhZD4KIAk8Ym9keT4KIAkJPGRpdiBp
ZD0idGVzdDEiIHN0eWxlPSItd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7IC13ZWJr
aXQtdGV4dC1vcmllbnRhdGlvbjogc2lkZXdheXM7IHRleHQtb3JpZW50YXRpb246IHVwcmlnaHQi
PuS9oOWlvUFCQzwvZGl2PgogCQk8ZGl2IGlkPSJ0ZXN0MiIgc3R5bGU9Ii13ZWJraXQtd3JpdGlu
Zy1tb2RlOiB2ZXJ0aWNhbC1ybDsgdGV4dC1vcmllbnRhdGlvbjogc2lkZXdheXM7IC13ZWJraXQt
dGV4dC1vcmllbnRhdGlvbjogdXByaWdodCI+5L2g5aW9QUJDPC9kaXY+CisJCTxkaXYgaWQ9InRl
c3QzIiBzdHlsZT0iLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsIj7kvaDlpb1BQkM8
L2Rpdj4KKwkJPGRpdiBpZD0idGVzdDQiIHN0eWxlPSItd2Via2l0LXdyaXRpbmctbW9kZTogdmVy
dGljYWwtcmwiPuS9oOWlvUFCQzwvZGl2PgorCQk8ZGl2IGlkPSJ0ZXN0NSIgc3R5bGU9Ii13ZWJr
aXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybCI+5L2g5aW9QUJDPC9kaXY+CisJCTxkaXYgaWQ9
InRlc3Q2IiBzdHlsZT0iLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsIj7kvaDlpb1B
QkM8L2Rpdj4KIAkJPHNjcmlwdD4KIAkJCXNob3VsZEJlRXF1YWxUb1N0cmluZygid2luZG93Lmdl
dENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3QxJykpLndlYmtpdFRl
eHRPcmllbnRhdGlvbiIsICJ1cHJpZ2h0Iik7CiAJCQlzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndp
bmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MicpKS53
ZWJraXRUZXh0T3JpZW50YXRpb24iLCAidXByaWdodCIpOworCQkJc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVz
dDMnKSkud2Via2l0VGV4dE9yaWVudGF0aW9uIiwgInVwcmlnaHQiKTsKKwkJCXNob3VsZEJlRXF1
YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ3Rlc3Q0JykpLndlYmtpdFRleHRPcmllbnRhdGlvbiIsICJ1cHJpZ2h0Iik7CisJCQlzaG91
bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCd0ZXN0NScpKS53ZWJraXRUZXh0T3JpZW50YXRpb24iLCAidXByaWdodCIpOwor
CQkJc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgndGVzdDYnKSkud2Via2l0VGV4dE9yaWVudGF0aW9uIiwgInVwcmln
aHQiKTsKIAkJCXNob3VsZEJlRXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5bGUo
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3QxJykpLnRleHRPcmllbnRhdGlvbiIsICJ1cHJp
Z2h0Iik7CiAJCQlzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxl
KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MicpKS50ZXh0T3JpZW50YXRpb24iLCAidXBy
aWdodCIpOworCQkJc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHls
ZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdDMnKSkudGV4dE9yaWVudGF0aW9uIiwgInVw
cmlnaHQiKTsKKwkJCXNob3VsZEJlRXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5
bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q0JykpLnRleHRPcmllbnRhdGlvbiIsICJ1
cHJpZ2h0Iik7CisJCQlzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0
eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NScpKS50ZXh0T3JpZW50YXRpb24iLCAi
dXByaWdodCIpOworCQkJc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRT
dHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdDYnKSkudGV4dE9yaWVudGF0aW9uIiwg
InVwcmlnaHQiKTsKIAkJPC9zY3JpcHQ+CiAJCTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KIAk8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3RleHQvdGV4dC1vcmllbnRhdGlvbi1wYXJzZS1zdHlsZXNoZWV0LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLXN0eWxl
c2hlZXQtZXhwZWN0ZWQudHh0CmluZGV4IGE1MjUyNDEwZjY4YjMxY2I0NDdiNTJlMjAzM2JjYzVj
NjI0YzU1ZWMuLjZmY2JkNWRhZGM2Y2U1ZmE0NTA4OGZkYzg1MTYxMDBkNmI2MjdlMWQgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLXN0eWxl
c2hlZXQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LW9yaWVu
dGF0aW9uLXBhcnNlLXN0eWxlc2hlZXQtZXhwZWN0ZWQudHh0CkBAIC0zLDEzICszLDE3IEBAIFBB
U1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3QyJykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5
bGUuZ2V0UHJvcGVydHlWYWx1ZSgnCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0
MycpLnNoZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ3RleHQtb3JpZW50
YXRpb24nKSBpcyAidXByaWdodCIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q0
Jykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgndGV4dC1vcmllbnRh
dGlvbicpIGlzICJtaXhlZCIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q1Jyku
c2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgndGV4dC1vcmllbnRhdGlv
bicpIGlzICJtaXhlZCIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q2Jykuc2hl
ZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgndGV4dC1vcmllbnRhdGlvbicp
IGlzICJzaWRld2F5cyIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q3Jykuc2hl
ZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgndGV4dC1vcmllbnRhdGlvbicp
IGlzICJzaWRld2F5cyIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q4Jykuc2hl
ZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgndGV4dC1vcmllbnRhdGlvbicp
IGlzICIiCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MScpLnNoZWV0LmNzc1J1
bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtdGV4dC1vcmllbnRhdGlvbicp
IGlzICJ1cHJpZ2h0IgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdDInKS5zaGVl
dC5jc3NSdWxlc1swXS5zdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXRleHQtb3JpZW50
YXRpb24nKSBpcyAidXByaWdodCIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Qz
Jykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC10ZXh0
LW9yaWVudGF0aW9uJykgaXMgInVwcmlnaHQiCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCd0ZXN0NCcpLnNoZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtdGV4dC1vcmllbnRhdGlvbicpIGlzICJtaXhlZCIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3Rlc3Q1Jykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uJykgaXMgIm1peGVkIgogUEFTUyBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgndGVzdDYnKS5zaGVldC5jc3NSdWxlc1swXS5zdHlsZS5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LXRleHQtb3JpZW50YXRpb24nKSBpcyAic2lkZXdheXMiCi1QQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NicpLnNoZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJ3RleHQtb3JpZW50YXRpb24nKSBpcyAic2lkZXdheXMiCitQQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NycpLnNoZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtdGV4dC1vcmllbnRhdGlvbicpIGlzICJzaWRld2F5cyIKK1BB
U1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q4Jykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5
bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uJykgaXMgIiIKIFBB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3RleHQtb3JpZW50YXRpb24tcGFyc2Utc3R5bGVzaGVl
dC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3RleHQtb3JpZW50YXRpb24tcGFyc2Utc3R5
bGVzaGVldC5odG1sCmluZGV4IDVjNTI0MjNhODBjNWZhYjg2YTkwMWJlZGU0Y2U4ZmY4OTllZjk1
NDUuLjM4NGQ3MjkwYjNlMDM0NjJjMGE3NzJkNTU2MzExYTZlNDhkNTM0NDUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLXN0eWxlc2hlZXQu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdGV4dC1vcmllbnRhdGlvbi1wYXJzZS1z
dHlsZXNoZWV0Lmh0bWwKQEAgLTExLDYgKzExLDkgQEAKIAkJPHN0eWxlIGlkPSJ0ZXN0NCI+IGR1
bW15IHsgdGV4dC1vcmllbnRhdGlvbjogdXByaWdodDsgLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9u
OiBtaXhlZDt9IDwvc3R5bGU+CiAJCTxzdHlsZSBpZD0idGVzdDUiPiBkdW1teSB7IC13ZWJraXQt
dGV4dC1vcmllbnRhdGlvbjogdXByaWdodDsgdGV4dC1vcmllbnRhdGlvbjogbWl4ZWQ7fSA8L3N0
eWxlPgogCQk8c3R5bGUgaWQ9InRlc3Q2Ij4gZHVtbXkgeyAtd2Via2l0LXRleHQtb3JpZW50YXRp
b246IHVwcmlnaHQ7IHRleHQtb3JpZW50YXRpb246IG1peGVkOyAtd2Via2l0LXRleHQtb3JpZW50
YXRpb246IHNpZGV3YXlzO30gPC9zdHlsZT4KKwkJPHN0eWxlIGlkPSJ0ZXN0NyI+IGR1bW15IHsg
LXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uOiBzaWRld2F5cy1yaWdodDt9IDwvc3R5bGU+CisJCTxz
dHlsZSBpZD0idGVzdDgiPiBkdW1teSB7IHRleHQtb3JpZW50YXRpb246IHNpZGV3YXlzLXJpZ2h0
O30gPC9zdHlsZT4KKwogCiAJCTxzY3JpcHQ+CiAJCQlzaG91bGRCZUVxdWFsVG9TdHJpbmcoImRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MScpLnNoZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdl
dFByb3BlcnR5VmFsdWUoJ3RleHQtb3JpZW50YXRpb24nKSIsICJ1cHJpZ2h0Iik7CkBAIC0xOCwx
NyArMjEsMTggQEAKIAkJCXNob3VsZEJlRXF1YWxUb1N0cmluZygiZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3Rlc3QzJykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgn
dGV4dC1vcmllbnRhdGlvbicpIiwgInVwcmlnaHQiKTsKIAkJCXNob3VsZEJlRXF1YWxUb1N0cmlu
ZygiZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q0Jykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5
bGUuZ2V0UHJvcGVydHlWYWx1ZSgndGV4dC1vcmllbnRhdGlvbicpIiwgIm1peGVkIik7CiAJCQlz
aG91bGRCZUVxdWFsVG9TdHJpbmcoImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NScpLnNo
ZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ3RleHQtb3JpZW50YXRpb24n
KSIsICJtaXhlZCIpOworCQkJc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgndGVzdDYnKS5zaGVldC5jc3NSdWxlc1swXS5zdHlsZS5nZXRQcm9wZXJ0eVZhbHVl
KCd0ZXh0LW9yaWVudGF0aW9uJykiLCAic2lkZXdheXMiKTsKKwkJCXNob3VsZEJlRXF1YWxUb1N0
cmluZygiZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q3Jykuc2hlZXQuY3NzUnVsZXNbMF0u
c3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgndGV4dC1vcmllbnRhdGlvbicpIiwgInNpZGV3YXlzIik7
CisJCQlzaG91bGRCZUVxdWFsVG9TdHJpbmcoImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0
OCcpLnNoZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ3RleHQtb3JpZW50
YXRpb24nKSIsICIiKTsKIAogCQkJc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgndGVzdDEnKS5zaGVldC5jc3NSdWxlc1swXS5zdHlsZS5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LXRleHQtb3JpZW50YXRpb24nKSIsICJ1cHJpZ2h0Iik7CiAJCQlzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MicpLnNoZWV0LmNz
c1J1bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtdGV4dC1vcmllbnRhdGlv
bicpIiwgInVwcmlnaHQiKTsKIAkJCXNob3VsZEJlRXF1YWxUb1N0cmluZygiZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3Rlc3QzJykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uJykiLCAidXByaWdodCIpOwogCQkJc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdDQnKS5zaGVldC5j
c3NSdWxlc1swXS5zdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXRleHQtb3JpZW50YXRp
b24nKSIsICJtaXhlZCIpOwogCQkJc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgndGVzdDUnKS5zaGVldC5jc3NSdWxlc1swXS5zdHlsZS5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LXRleHQtb3JpZW50YXRpb24nKSIsICJtaXhlZCIpOwotCiAJCQlzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NicpLnNoZWV0LmNz
c1J1bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtdGV4dC1vcmllbnRhdGlv
bicpIiwgInNpZGV3YXlzIik7Ci0JCQlzaG91bGRCZUVxdWFsVG9TdHJpbmcoImRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCd0ZXN0NicpLnNoZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5
VmFsdWUoJ3RleHQtb3JpZW50YXRpb24nKSIsICJzaWRld2F5cyIpOwotCi0KKwkJCXNob3VsZEJl
RXF1YWxUb1N0cmluZygiZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q3Jykuc2hlZXQuY3Nz
UnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9u
JykiLCAic2lkZXdheXMiKTsKKwkJCXNob3VsZEJlRXF1YWxUb1N0cmluZygiZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3Rlc3Q4Jykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uJykiLCAiIik7CiAJCTwvc2NyaXB0PgogCiAJ
CTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455789</attachid>
            <date>2022-03-25 11:49:18 -0700</date>
            <delta_ts>2022-04-08 15:48:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238345-20220325194916.patch</filename>
            <type>text/plain</type>
            <size>15348</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNzQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWI4MDczNzFkZjdlNzky
NDFmODIzYTkzMzdjM2YwMGI2NTBiODA3OC4uYzI5MDljMmE0NWY3OWVhY2VjZWU5YTRlMDkxNjIx
NWUxYzY4ZDVhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY2IEBACisyMDIyLTAzLTI1ICBPcmlv
bCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzcy1jYXNjYWRlXSBT
b3J0IGRlZmVycmVkIHByb3BlcnRpZXMgYXQgdGhlIGVuZCBvZiBDU1NQcm9wZXJ0eUlEIGVudW0K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzODM0NQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEJ1ZyAyMzgy
NjAgd2lsbCBvcHRpbWl6ZSB0aGUgbG9naWMgZm9yIGNhc2NhZGluZyBkZWZlcnJlZCBwcm9wZXJ0
aWVzLgorICAgICAgICBUaGlzIHNvcnRzIHRoZW0gYXQgdGhlIGVuZCwgYWZ0ZXIgbG93IHByaW9y
aXR5IG9uZXMsIHdoaWNoIHdpbGwgYWxsb3cKKyAgICAgICAgc29tZSBmdXJ0aGVyIG9wdGltaXph
dGlvbnMuCisgICAgICAgIFRoaXMgaXMgaW4gcHJlcGFyYXRpb24gb2YgYnVnIDIzODI2MCwgd2hp
Y2ggcGxhbnMgdG8gdHVybiBhbGwgbG9naWNhbAorICAgICAgICBhbmQgcGh5c2ljYWwgcHJvcGVy
dGllcyBpbnRvIGRlZmVycmVkLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyBzaW5jZSB0aGVyZSBz
aG91bGQgYmUgbm8gY2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgICogY3NzL21ha2Vwcm9w
LnBsOgorICAgICAgICAoc29ydEJ5RGVzY2VuZGluZ1ByaW9yaXR5QW5kTmFtZSk6CisgICAgICAg
IFNvcnQgZGVmZXJyZWQgcHJvcGVydGllcyBhdCB0aGUgZW5kIG9mIENTU1Byb3BlcnR5SUQgZW51
bS4KKyAgICAgICAgQWRkIGZpcnN0SGlnaFByaW9yaXR5UHJvcGVydHksIGZpcnN0TG93UHJpb3Jp
dHlQcm9wZXJ0eSwKKyAgICAgICAgbGFzdExvd1ByaW9yaXR5UHJvcGVydHksIGZpcnN0RGVmZXJy
ZWRQcm9wZXJ0eSBhbmQgbGFzdERlZmVycmVkUHJvcGVydHkuCisKKyAgICAgICAgKiBzdHlsZS9Q
cm9wZXJ0eUNhc2NhZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlByb3BlcnR5Q2Fz
Y2FkZTo6c2V0KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpQcm9wZXJ0eUNhc2NhZGU6OnNl
dERlZmVycmVkKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpQcm9wZXJ0eUNhc2NhZGU6OmFk
ZE1hdGNoKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpzaG91bGRBcHBseVByb3BlcnR5SW5Q
YXJzZU9yZGVyKTogRGVsZXRlZC4KKyAgICAgICAgRGVsZXRlIHNob3VsZEFwcGx5UHJvcGVydHlJ
blBhcnNlT3JkZXIoKSwgc2luY2UgaW5zdGVhZCB3ZSBjYW4ganVzdAorICAgICAgICBjb21wYXJl
IHRoZSBDU1NQcm9wZXJ0eUlkIGFuZCBmaXJzdERlZmVycmVkUHJvcGVydHkgd2l0aCA8IG9yID49
LgorCisgICAgICAgICogc3R5bGUvUHJvcGVydHlDYXNjYWRlLmg6CisgICAgICAgIChXZWJDb3Jl
OjpTdHlsZTo6UHJvcGVydHlDYXNjYWRlOjpoYXNOb3JtYWxQcm9wZXJ0eSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpTdHlsZTo6UHJvcGVydHlDYXNjYWRlOjpub3JtYWxQcm9wZXJ0eSBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UHJvcGVydHlDYXNjYWRlOjpoYXNEZWZlcnJl
ZFByb3BlcnR5IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpQcm9wZXJ0eUNhc2Nh
ZGU6Omhhc1Byb3BlcnR5IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlN0eWxl
OjpQcm9wZXJ0eUNhc2NhZGU6OnByb3BlcnR5IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgUmVu
YW1lIGhhc1Byb3BlcnR5KCkgYW5kIHByb3BlcnR5KCkgdG8gaGFzTm9ybWFsUHJvcGVydHkoKSBh
bmQKKyAgICAgICAgbm9ybWFsUHJvcGVydHkoKSwgdG8gbWFrZSBpdCBjbGVhciB0aGV5IGFyZSBu
b3QgZm9yIGRlZmVycmVkIHByb3BlcnRpZXMuCisgICAgICAgIFJlZHVjZSB0aGUgc2l6ZSBvZiBt
X3Byb3BlcnRpZXMgYXJyYXkgYW5kIG1fcHJvcGVydHlJc1ByZXNlbnQgYml0c2V0LAorICAgICAg
ICBzaW5jZSB0aGV5IGRvbid0IG5lZWQgdG8gaW5jbHVkZSBkZWZlcnJlZCBwcm9wZXJ0aWVzLgor
CisgICAgICAgICogc3R5bGUvU3R5bGVCdWlsZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0
eWxlOjpCdWlsZGVyOjphcHBseUFsbFByb3BlcnRpZXMpOgorICAgICAgICAoV2ViQ29yZTo6U3R5
bGU6OkJ1aWxkZXI6OmFwcGx5SGlnaFByaW9yaXR5UHJvcGVydGllcyk6CisgICAgICAgIChXZWJD
b3JlOjpTdHlsZTo6QnVpbGRlcjo6YXBwbHlOb25IaWdoUHJpb3JpdHlQcm9wZXJ0aWVzKToKKyAg
ICAgICAgKFdlYkNvcmU6OlN0eWxlOjpCdWlsZGVyOjphcHBseVByb3BlcnRpZXNJbXBsKToKKyAg
ICAgICAgKFdlYkNvcmU6OlN0eWxlOjpCdWlsZGVyOjphcHBseVByb3BlcnR5KToKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlOjpCdWlsZGVyOjphcHBseUxvd1ByaW9yaXR5UHJvcGVydGllcyk6IERl
bGV0ZWQuCisgICAgICAgIFJlbmFtZSBhcHBseUxvd1ByaW9yaXR5UHJvcGVydGllcygpIHRvIGFw
cGx5Tm9uSGlnaFByaW9yaXR5UHJvcGVydGllcygpCisgICAgICAgIHRvIG1ha2UgaXQgY2xlYXIg
dGhhdCBpdCBpbmNsdWRlcyBjdXN0b20gYW5kIGRlZmVycmVkIHByb3BlcnRpZXMuCisgICAgICAg
IFVzZSB0aGUgbmV3IGZpcnN0SGlnaFByaW9yaXR5UHJvcGVydHkgYW5kIGxhc3RMb3dQcmlvcml0
eVByb3BlcnR5CisgICAgICAgIGNvbnN0YW50cyBmb3IgY2xhcml0eSBhbmQgdG8gc2tpcCBkZWZl
cnJlZCBwcm9wZXJ0aWVzLgorICAgICAgICBSZW5hbWUgaGFzUHJvcGVydHkoKSBhbmQgcHJvcGVy
dHkoKSB0byBoYXNOb3JtYWxQcm9wZXJ0eSgpIGFuZAorICAgICAgICBub3JtYWxQcm9wZXJ0eSgp
LCB0byBtYWtlIGl0IGNsZWFyIHRoZXkgYXJlIG5vdCBmb3IgZGVmZXJyZWQgcHJvcGVydGllcy4K
KworICAgICAgICAqIHN0eWxlL1N0eWxlQnVpbGRlci5oOgorICAgICAgICBSZW5hbWUgYXBwbHlM
b3dQcmlvcml0eVByb3BlcnRpZXMoKSB0byBhcHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMo
KQorICAgICAgICB0byBtYWtlIGl0IGNsZWFyIHRoYXQgaXQgaW5jbHVkZXMgY3VzdG9tIGFuZCBk
ZWZlcnJlZCBwcm9wZXJ0aWVzLgorCisgICAgICAgICogc3R5bGUvU3R5bGVSZXNvbHZlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UmVzb2x2ZXI6OmFwcGx5TWF0Y2hlZFByb3BlcnRp
ZXMpOgorICAgICAgICBSZW5hbWUgYXBwbHlMb3dQcmlvcml0eVByb3BlcnRpZXMoKSB0byBhcHBs
eU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMoKQorICAgICAgICB0byBtYWtlIGl0IGNsZWFyIHRo
YXQgaXQgaW5jbHVkZXMgY3VzdG9tIGFuZCBkZWZlcnJlZCBwcm9wZXJ0aWVzLgorCiAyMDIyLTAz
LTI1ICBPcmlvbCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CiAKICAgICAgICAgW2Nzcy1j
YXNjYWRlXSBNZXJnZSBnZXRSZWxhdGVkUHJvcGVydHlJZCgpIGFuZCBzaG91bGRBcHBseVByb3Bl
cnR5SW5QYXJzZU9yZGVyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9tYWtlcHJv
cC5wbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9tYWtlcHJvcC5wbAppbmRleCBjOTFmYWU2MTUzZDg4
ZjY3NGY3YTg3ZWIyNDYyOGI5MTAxMDA0MGYwLi4zN2EyMTQ1Njk0NzZhMDJjMDhjMzg3MmRkYmRj
NjM0YjdjODJlNzg0IDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvbWFrZXByb3AucGwK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL21ha2Vwcm9wLnBsCkBAIC0zNTksNiArMzU5LDE0IEBA
IHN1YiBzb3J0QnlEZXNjZW5kaW5nUHJpb3JpdHlBbmROYW1lCiAgICAgaWYgKCEhJG5hbWVJc0hp
Z2hQcmlvcml0eXskYX0gPiAhISRuYW1lSXNIaWdoUHJpb3JpdHl7JGJ9KSB7CiAgICAgICAgIHJl
dHVybiAtMTsKICAgICB9CisgICAgIyBEZWZlciBuYW1lcyB3aXRoIGEgcmVsYXRlZCBwcm9wZXJ0
eSB0byB0aGUgYmFjaworICAgIGlmICghISRyZWxhdGVkUHJvcGVydHl7JGF9IDwgISEkcmVsYXRl
ZFByb3BlcnR5eyRifSkgeworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmICghISRy
ZWxhdGVkUHJvcGVydHl7JGF9ID4gISEkcmVsYXRlZFByb3BlcnR5eyRifSkgeworICAgICAgICBy
ZXR1cm4gMTsKKyAgICB9CisgICAgIyBTb3J0IHN1bmtlbiBuYW1lcyBhdCB0aGUgZW5kIG9mIHRo
ZWlyIHByaW9yaXR5IGJ1Y2tldAogICAgIGlmICghISRuYW1lUHJpb3JpdHlTaG91bGRTaW5reyRh
fSA8ICEhJG5hbWVQcmlvcml0eVNob3VsZFNpbmt7JGJ9KSB7CiAgICAgICAgIHJldHVybiAtMTsK
ICAgICB9CkBAIC04MzIsOSArODQwLDI0IEBAIEVPRgogbXkgJGZpcnN0ID0gJG51bVByZWRlZmlu
ZWRQcm9wZXJ0aWVzOwogbXkgJGkgPSAkbnVtUHJlZGVmaW5lZFByb3BlcnRpZXM7CiBteSAkbWF4
TGVuID0gMDsKK215ICRmaXJzdEhpZ2hQcmlvcml0eVByb3BlcnR5TmFtZTsKIG15ICRsYXN0SGln
aFByaW9yaXR5UHJvcGVydHlOYW1lOworbXkgJGZpcnN0TG93UHJpb3JpdHlQcm9wZXJ0eU5hbWU7
CitteSAkbGFzdExvd1ByaW9yaXR5UHJvcGVydHlOYW1lOworbXkgJGZpcnN0RGVmZXJyZWRQcm9w
ZXJ0eU5hbWU7CitteSAkbGFzdERlZmVycmVkUHJvcGVydHlOYW1lOwogZm9yZWFjaCBteSAkbmFt
ZSAoQG5hbWVzKSB7Ci0gICRsYXN0SGlnaFByaW9yaXR5UHJvcGVydHlOYW1lID0gJG5hbWUgaWYg
JG5hbWVJc0hpZ2hQcmlvcml0eXskbmFtZX07ICMgQXNzdW1lcyB0aGF0IEBuYW1lcyBpcyBzb3J0
ZWQgYnkgZGVzY2VuZGluZyBwcmlvcml0aWVzLgorICAjIEFzc3VtZXMgdGhhdCBAbmFtZXMgaXMg
c29ydGVkIGJ5IGRlc2NlbmRpbmcgcHJpb3JpdGllcy4KKyAgaWYgKCRuYW1lSXNIaWdoUHJpb3Jp
dHl7JG5hbWV9KSB7CisgICAgJGZpcnN0SGlnaFByaW9yaXR5UHJvcGVydHlOYW1lID0gJG5hbWUg
aWYgISRmaXJzdEhpZ2hQcmlvcml0eVByb3BlcnR5TmFtZTsKKyAgICAkbGFzdEhpZ2hQcmlvcml0
eVByb3BlcnR5TmFtZSA9ICRuYW1lOworICB9IGVsc2lmICghJHJlbGF0ZWRQcm9wZXJ0eXskbmFt
ZX0pIHsKKyAgICAkZmlyc3RMb3dQcmlvcml0eVByb3BlcnR5TmFtZSA9ICRuYW1lIGlmICEkZmly
c3RMb3dQcmlvcml0eVByb3BlcnR5TmFtZTsKKyAgICAkbGFzdExvd1ByaW9yaXR5UHJvcGVydHlO
YW1lID0gJG5hbWU7CisgIH0gZWxzZSB7CisgICAgJGZpcnN0RGVmZXJyZWRQcm9wZXJ0eU5hbWUg
PSAkbmFtZSBpZiAhJGZpcnN0RGVmZXJyZWRQcm9wZXJ0eU5hbWU7CisgICAgJGxhc3REZWZlcnJl
ZFByb3BlcnR5TmFtZSA9ICRuYW1lOworICB9CiAgIHByaW50IEhFQURFUiAiICAgIENTU1Byb3Bl
cnR5IiAuICRuYW1lVG9JZHskbmFtZX0gLiAiID0gIiAuICRpIC4gIixcbiI7CiAgICRpID0gJGkg
KyAxOwogICBpZiAobGVuZ3RoKCRuYW1lKSA+ICRtYXhMZW4pIHsKQEAgLTg0OSw3ICs4NzIsMTIg
QEAgcHJpbnQgSEVBREVSICJjb25zdCBpbnQgZmlyc3RDU1NQcm9wZXJ0eSA9ICRmaXJzdDtcbiI7
CiBwcmludCBIRUFERVIgImNvbnN0IGludCBudW1DU1NQcm9wZXJ0aWVzID0gJG51bTtcbiI7CiBw
cmludCBIRUFERVIgImNvbnN0IGludCBsYXN0Q1NTUHJvcGVydHkgPSAkbGFzdDtcbiI7CiBwcmlu
dCBIRUFERVIgImNvbnN0IHNpemVfdCBtYXhDU1NQcm9wZXJ0eU5hbWVMZW5ndGggPSAkbWF4TGVu
O1xuIjsKLXByaW50IEhFQURFUiAiY29uc3QgQ1NTUHJvcGVydHlJRCBsYXN0SGlnaFByaW9yaXR5
UHJvcGVydHkgPSBDU1NQcm9wZXJ0eSIgLiAkbmFtZVRvSWR7JGxhc3RIaWdoUHJpb3JpdHlQcm9w
ZXJ0eU5hbWV9IC4gIjtcblxuIjsKK3ByaW50IEhFQURFUiAiY29uc3QgQ1NTUHJvcGVydHlJRCBm
aXJzdEhpZ2hQcmlvcml0eVByb3BlcnR5ID0gQ1NTUHJvcGVydHkiIC4gJG5hbWVUb0lkeyRmaXJz
dEhpZ2hQcmlvcml0eVByb3BlcnR5TmFtZX0gLiAiO1xuIjsKK3ByaW50IEhFQURFUiAiY29uc3Qg
Q1NTUHJvcGVydHlJRCBsYXN0SGlnaFByaW9yaXR5UHJvcGVydHkgPSBDU1NQcm9wZXJ0eSIgLiAk
bmFtZVRvSWR7JGxhc3RIaWdoUHJpb3JpdHlQcm9wZXJ0eU5hbWV9IC4gIjtcbiI7CitwcmludCBI
RUFERVIgImNvbnN0IENTU1Byb3BlcnR5SUQgZmlyc3RMb3dQcmlvcml0eVByb3BlcnR5ID0gQ1NT
UHJvcGVydHkiIC4gJG5hbWVUb0lkeyRmaXJzdExvd1ByaW9yaXR5UHJvcGVydHlOYW1lfSAuICI7
XG4iOworcHJpbnQgSEVBREVSICJjb25zdCBDU1NQcm9wZXJ0eUlEIGxhc3RMb3dQcmlvcml0eVBy
b3BlcnR5ID0gQ1NTUHJvcGVydHkiIC4gJG5hbWVUb0lkeyRsYXN0TG93UHJpb3JpdHlQcm9wZXJ0
eU5hbWV9IC4gIjtcbiI7CitwcmludCBIRUFERVIgImNvbnN0IENTU1Byb3BlcnR5SUQgZmlyc3RE
ZWZlcnJlZFByb3BlcnR5ID0gQ1NTUHJvcGVydHkiIC4gJG5hbWVUb0lkeyRmaXJzdERlZmVycmVk
UHJvcGVydHlOYW1lfSAuICI7XG4iOworcHJpbnQgSEVBREVSICJjb25zdCBDU1NQcm9wZXJ0eUlE
IGxhc3REZWZlcnJlZFByb3BlcnR5ID0gQ1NTUHJvcGVydHkiIC4gJG5hbWVUb0lkeyRsYXN0RGVm
ZXJyZWRQcm9wZXJ0eU5hbWV9IC4gIjtcblxuIjsKIAogcHJpbnQgSEVBREVSICJzdGF0aWMgY29u
c3QgQ1NTUHJvcGVydHlJRCBjb21wdXRlZFByb3BlcnR5SURzW10gPSB7XG4iOwogbXkgJG51bUNv
bXB1dGVkUHJvcGVydHlJRHMgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUv
UHJvcGVydHlDYXNjYWRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2Fk
ZS5jcHAKaW5kZXggNWQ0NDc3NzgwYjkzYTQ5YzAxNjRkM2IzMzkxMzE5YTkwYzEyMDZhMi4uNTg5
ODk4ZjU4NDQxYWFmM2U4ODcwMDNjZWFhNmQzNGJlODQ5MGRiOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwCkBAIC0zOCwxMSArMzgsNiBAQAogbmFtZXNwYWNlIFdl
YkNvcmUgewogbmFtZXNwYWNlIFN0eWxlIHsKIAotc3RhdGljIGlubGluZSBib29sIHNob3VsZEFw
cGx5UHJvcGVydHlJblBhcnNlT3JkZXIoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlEKQotewotICAg
IHJldHVybiBnZXRSZWxhdGVkUHJvcGVydHlJZChwcm9wZXJ0eUlEKSAhPSBDU1NQcm9wZXJ0eUlu
dmFsaWQ7Ci19Ci0KIFByb3BlcnR5Q2FzY2FkZTo6UHJvcGVydHlDYXNjYWRlKGNvbnN0IE1hdGNo
UmVzdWx0JiBtYXRjaFJlc3VsdCwgQ2FzY2FkZUxldmVsIG1heGltdW1DYXNjYWRlTGV2ZWwsIElu
Y2x1ZGVkUHJvcGVydGllcyBpbmNsdWRlZFByb3BlcnRpZXMsIERpcmVjdGlvbiBkaXJlY3Rpb24p
CiAgICAgOiBtX21hdGNoUmVzdWx0KG1hdGNoUmVzdWx0KQogICAgICwgbV9pbmNsdWRlZFByb3Bl
cnRpZXMoaW5jbHVkZWRQcm9wZXJ0aWVzKQpAQCAtMTA4LDcgKzEwMyw3IEBAIHZvaWQgUHJvcGVy
dHlDYXNjYWRlOjpzZXQoQ1NTUHJvcGVydHlJRCBpZCwgQ1NTVmFsdWUmIGNzc1ZhbHVlLCBjb25z
dCBNYXRjaGVkUHJvCiAgICAgICAgIGlkID0gQ1NTUHJvcGVydHk6OnJlc29sdmVEaXJlY3Rpb25B
d2FyZVByb3BlcnR5KGlkLCBkaXJlY3Rpb24udGV4dERpcmVjdGlvbiwgZGlyZWN0aW9uLndyaXRp
bmdNb2RlKTsKICAgICB9CiAKLSAgICBBU1NFUlQoIXNob3VsZEFwcGx5UHJvcGVydHlJblBhcnNl
T3JkZXIoaWQpKTsKKyAgICBBU1NFUlQoaWQgPCBmaXJzdERlZmVycmVkUHJvcGVydHkpOwogCiAg
ICAgYXV0byYgcHJvcGVydHkgPSBtX3Byb3BlcnRpZXNbaWRdOwogICAgIEFTU0VSVChpZCA8IG1f
cHJvcGVydHlJc1ByZXNlbnQuc2l6ZSgpKTsKQEAgLTEzOSw3ICsxMzQsNyBAQCB2b2lkIFByb3Bl
cnR5Q2FzY2FkZTo6c2V0KENTU1Byb3BlcnR5SUQgaWQsIENTU1ZhbHVlJiBjc3NWYWx1ZSwgY29u
c3QgTWF0Y2hlZFBybwogdm9pZCBQcm9wZXJ0eUNhc2NhZGU6OnNldERlZmVycmVkKENTU1Byb3Bl
cnR5SUQgaWQsIENTU1ZhbHVlJiBjc3NWYWx1ZSwgY29uc3QgTWF0Y2hlZFByb3BlcnRpZXMmIG1h
dGNoZWRQcm9wZXJ0aWVzLCBDYXNjYWRlTGV2ZWwgY2FzY2FkZUxldmVsKQogewogICAgIEFTU0VS
VCghQ1NTUHJvcGVydHk6OmlzRGlyZWN0aW9uQXdhcmVQcm9wZXJ0eShpZCkpOwotICAgIEFTU0VS
VChzaG91bGRBcHBseVByb3BlcnR5SW5QYXJzZU9yZGVyKGlkKSk7CisgICAgQVNTRVJUKGlkID49
IGZpcnN0RGVmZXJyZWRQcm9wZXJ0eSk7CiAKICAgICBQcm9wZXJ0eSBwcm9wZXJ0eTsKICAgICBt
ZW1zZXQocHJvcGVydHkuY3NzVmFsdWUsIDAsIHNpemVvZihwcm9wZXJ0eS5jc3NWYWx1ZSkpOwpA
QCAtMTkyLDEwICsxODcsMTAgQEAgYm9vbCBQcm9wZXJ0eUNhc2NhZGU6OmFkZE1hdGNoKGNvbnN0
IE1hdGNoZWRQcm9wZXJ0aWVzJiBtYXRjaGVkUHJvcGVydGllcywgQ2FzY2EKICAgICAgICAgaWYg
KHByb3BlcnR5QWxsb3dsaXN0ID09IFByb3BlcnR5QWxsb3dsaXN0OjpNYXJrZXIgJiYgIWlzVmFs
aWRNYXJrZXJTdHlsZVByb3BlcnR5KHByb3BlcnR5SUQpKQogICAgICAgICAgICAgY29udGludWU7
CiAKLSAgICAgICAgaWYgKHNob3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIocHJvcGVydHlJ
RCkpCi0gICAgICAgICAgICBzZXREZWZlcnJlZChwcm9wZXJ0eUlELCAqY3VycmVudC52YWx1ZSgp
LCBtYXRjaGVkUHJvcGVydGllcywgY2FzY2FkZUxldmVsKTsKLSAgICAgICAgZWxzZQorICAgICAg
ICBpZiAocHJvcGVydHlJRCA8IGZpcnN0RGVmZXJyZWRQcm9wZXJ0eSkKICAgICAgICAgICAgIHNl
dChwcm9wZXJ0eUlELCAqY3VycmVudC52YWx1ZSgpLCBtYXRjaGVkUHJvcGVydGllcywgY2FzY2Fk
ZUxldmVsKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgc2V0RGVmZXJyZWQocHJvcGVydHlJ
RCwgKmN1cnJlbnQudmFsdWUoKSwgbWF0Y2hlZFByb3BlcnRpZXMsIGNhc2NhZGVMZXZlbCk7CiAg
ICAgfQogCiAgICAgcmV0dXJuIGhhc0ltcG9ydGFudFByb3BlcnRpZXM7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuaCBiL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1Byb3BlcnR5Q2FzY2FkZS5oCmluZGV4IDNlZTZkZjMzZDUzOTVkZTVmNWI5NGE0M2Y2MTAz
NDc4MDIwN2VlZmMuLjczMDg1YTRkZDhmOTZmNmRlNGZlYjYwMjY3ODFkMzIxMDJkNmRhNTcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5oCkBAIC01OSw4ICs1OSw4IEBAIHB1
YmxpYzoKICAgICAgICAgQ1NTVmFsdWUqIGNzc1ZhbHVlWzNdOyAvLyBWYWx1ZXMgZm9yIGxpbmsg
bWF0Y2ggc3RhdGVzIE1hdGNoRGVmYXVsdCwgTWF0Y2hMaW5rIGFuZCBNYXRjaFZpc2l0ZWQKICAg
ICB9OwogCi0gICAgYm9vbCBoYXNQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEKSBjb25zdDsKLSAgICBj
b25zdCBQcm9wZXJ0eSYgcHJvcGVydHkoQ1NTUHJvcGVydHlJRCkgY29uc3Q7CisgICAgYm9vbCBo
YXNOb3JtYWxQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEKSBjb25zdDsKKyAgICBjb25zdCBQcm9wZXJ0
eSYgbm9ybWFsUHJvcGVydHkoQ1NTUHJvcGVydHlJRCkgY29uc3Q7CiAKICAgICBib29sIGhhc0Rl
ZmVycmVkUHJvcGVydHkoQ1NTUHJvcGVydHlJRCkgY29uc3Q7CiAgICAgY29uc3QgUHJvcGVydHkm
IGRlZmVycmVkUHJvcGVydHkoQ1NTUHJvcGVydHlJRCkgY29uc3Q7CkBAIC05Miw4ICs5Miw4IEBA
IHByaXZhdGU6CiAgICAgbXV0YWJsZSBEaXJlY3Rpb24gbV9kaXJlY3Rpb247CiAgICAgbXV0YWJs
ZSBib29sIG1fZGlyZWN0aW9uSXNVbnJlc29sdmVkIHsgdHJ1ZSB9OwogCi0gICAgUHJvcGVydHkg
bV9wcm9wZXJ0aWVzW251bUNTU1Byb3BlcnRpZXMgKyAyXTsKLSAgICBzdGQ6OmJpdHNldDxudW1D
U1NQcm9wZXJ0aWVzICsgMj4gbV9wcm9wZXJ0eUlzUHJlc2VudDsKKyAgICBQcm9wZXJ0eSBtX3By
b3BlcnRpZXNbZmlyc3REZWZlcnJlZFByb3BlcnR5XTsKKyAgICBzdGQ6OmJpdHNldDxmaXJzdERl
ZmVycmVkUHJvcGVydHk+IG1fcHJvcGVydHlJc1ByZXNlbnQ7CiAKICAgICBWZWN0b3I8UHJvcGVy
dHksIDg+IG1fZGVmZXJyZWRQcm9wZXJ0aWVzOwogICAgIEhhc2hNYXA8Q1NTUHJvcGVydHlJRCwg
dW5zaWduZWQ+IG1fZGVmZXJyZWRQcm9wZXJ0aWVzSW5kaWNlczsKQEAgLTEwMSwxOSArMTAxLDIx
IEBAIHByaXZhdGU6CiAgICAgSGFzaE1hcDxBdG9tU3RyaW5nLCBQcm9wZXJ0eT4gbV9jdXN0b21Q
cm9wZXJ0aWVzOwogfTsKIAotaW5saW5lIGJvb2wgUHJvcGVydHlDYXNjYWRlOjpoYXNQcm9wZXJ0
eShDU1NQcm9wZXJ0eUlEIGlkKSBjb25zdAoraW5saW5lIGJvb2wgUHJvcGVydHlDYXNjYWRlOjpo
YXNOb3JtYWxQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIGlkKSBjb25zdAogewotICAgIEFTU0VSVChp
ZCA8IG1fcHJvcGVydHlJc1ByZXNlbnQuc2l6ZSgpKTsKKyAgICBBU1NFUlQoaWQgPCBmaXJzdERl
ZmVycmVkUHJvcGVydHkpOwogICAgIHJldHVybiBtX3Byb3BlcnR5SXNQcmVzZW50W2lkXTsKIH0K
IAotaW5saW5lIGNvbnN0IFByb3BlcnR5Q2FzY2FkZTo6UHJvcGVydHkmIFByb3BlcnR5Q2FzY2Fk
ZTo6cHJvcGVydHkoQ1NTUHJvcGVydHlJRCBpZCkgY29uc3QKK2lubGluZSBjb25zdCBQcm9wZXJ0
eUNhc2NhZGU6OlByb3BlcnR5JiBQcm9wZXJ0eUNhc2NhZGU6Om5vcm1hbFByb3BlcnR5KENTU1By
b3BlcnR5SUQgaWQpIGNvbnN0CiB7CisgICAgQVNTRVJUKGhhc05vcm1hbFByb3BlcnR5KGlkKSk7
CiAgICAgcmV0dXJuIG1fcHJvcGVydGllc1tpZF07CiB9CiAKIGlubGluZSBib29sIFByb3BlcnR5
Q2FzY2FkZTo6aGFzRGVmZXJyZWRQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIGlkKSBjb25zdAogewor
ICAgIEFTU0VSVChpZCA+PSBmaXJzdERlZmVycmVkUHJvcGVydHkpOwogICAgIHJldHVybiBtX2Rl
ZmVycmVkUHJvcGVydGllc0luZGljZXMuY29udGFpbnMoaWQpOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5
bGUvU3R5bGVCdWlsZGVyLmNwcAppbmRleCA1NDNkYzAyZDEzNjFhOGE1YTE5Y2ZmYzIwMGZlMTFh
N2I4Y2RlOGJkLi44NzNhZWNlMjlmNGQ4YjY1YTZmYzAxN2M0ZTQ0MDIyMjYyMGQ5ZWVhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlci5jcHAKQEAgLTkxLDcgKzkxLDcgQEAgQnVpbGRl
cjo6fkJ1aWxkZXIoKSA9IGRlZmF1bHQ7CiB2b2lkIEJ1aWxkZXI6OmFwcGx5QWxsUHJvcGVydGll
cygpCiB7CiAgICAgYXBwbHlIaWdoUHJpb3JpdHlQcm9wZXJ0aWVzKCk7Ci0gICAgYXBwbHlMb3dQ
cmlvcml0eVByb3BlcnRpZXMoKTsKKyAgICBhcHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMo
KTsKIH0KIAogLy8gSGlnaCBwcmlvcml0eSBwcm9wZXJ0aWVzIG1heSBhZmZlY3QgcmVzb2x1dGlv
biBvZiBvdGhlciBwcm9wZXJ0aWVzICh0aGV5IGFyZSBtb3N0bHkgZm9udCByZWxhdGVkKS4KQEAg
LTEwNSwxNyArMTA1LDE3IEBAIHZvaWQgQnVpbGRlcjo6YXBwbHlIaWdoUHJpb3JpdHlQcm9wZXJ0
aWVzKCkKICAgICBhcHBseVByb3BlcnRpZXMoQ1NTUHJvcGVydHlDb2xvclNjaGVtZSwgQ1NTUHJv
cGVydHlDb2xvclNjaGVtZSk7CiAjZW5kaWYKIAotICAgIGFwcGx5UHJvcGVydGllcyhmaXJzdENT
U1Byb3BlcnR5LCBsYXN0SGlnaFByaW9yaXR5UHJvcGVydHkpOworICAgIGFwcGx5UHJvcGVydGll
cyhmaXJzdEhpZ2hQcmlvcml0eVByb3BlcnR5LCBsYXN0SGlnaFByaW9yaXR5UHJvcGVydHkpOwog
CiAgICAgbV9zdGF0ZS51cGRhdGVGb250KCk7CiB9CiAKLXZvaWQgQnVpbGRlcjo6YXBwbHlMb3dQ
cmlvcml0eVByb3BlcnRpZXMoKQordm9pZCBCdWlsZGVyOjphcHBseU5vbkhpZ2hQcmlvcml0eVBy
b3BlcnRpZXMoKQogewogICAgIEFTU0VSVCghbV9zdGF0ZS5mb250RGlydHkoKSk7CiAKICAgICBh
cHBseUN1c3RvbVByb3BlcnRpZXMoKTsKLSAgICBhcHBseVByb3BlcnRpZXMoZmlyc3RMb3dQcmlv
cml0eVByb3BlcnR5LCBsYXN0Q1NTUHJvcGVydHkpOworICAgIGFwcGx5UHJvcGVydGllcyhmaXJz
dExvd1ByaW9yaXR5UHJvcGVydHksIGxhc3RMb3dQcmlvcml0eVByb3BlcnR5KTsKICAgICBhcHBs
eURlZmVycmVkUHJvcGVydGllcygpOwogCiAgICAgQVNTRVJUKCFtX3N0YXRlLmZvbnREaXJ0eSgp
KTsKQEAgLTE0MCwxMCArMTQwLDEwIEBAIGlubGluZSB2b2lkIEJ1aWxkZXI6OmFwcGx5UHJvcGVy
dGllc0ltcGwoaW50IGZpcnN0UHJvcGVydHksIGludCBsYXN0UHJvcGVydHkpCiB7CiAgICAgZm9y
IChpbnQgaWQgPSBmaXJzdFByb3BlcnR5OyBpZCA8PSBsYXN0UHJvcGVydHk7ICsraWQpIHsKICAg
ICAgICAgQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlEID0gc3RhdGljX2Nhc3Q8Q1NTUHJvcGVydHlJ
RD4oaWQpOwotICAgICAgICBpZiAoIW1fY2FzY2FkZS5oYXNQcm9wZXJ0eShwcm9wZXJ0eUlEKSkK
KyAgICAgICAgaWYgKCFtX2Nhc2NhZGUuaGFzTm9ybWFsUHJvcGVydHkocHJvcGVydHlJRCkpCiAg
ICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgQVNTRVJUKHByb3BlcnR5SUQgIT0gQ1NTUHJv
cGVydHlDdXN0b20pOwotICAgICAgICBhdXRvJiBwcm9wZXJ0eSA9IG1fY2FzY2FkZS5wcm9wZXJ0
eShwcm9wZXJ0eUlEKTsKKyAgICAgICAgYXV0byYgcHJvcGVydHkgPSBtX2Nhc2NhZGUubm9ybWFs
UHJvcGVydHkocHJvcGVydHlJRCk7CiAKICAgICAgICAgaWYgKHRyYWNrQ3ljbGVzID09IEN1c3Rv
bVByb3BlcnR5Q3ljbGVUcmFja2luZzo6RW5hYmxlZCkgewogICAgICAgICAgICAgaWYgKFVOTElL
RUxZKG1fc3RhdGUubV9pblByb2dyZXNzUHJvcGVydGllcy5nZXQocHJvcGVydHlJRCkpKSB7CkBA
IC0zMTYsMTAgKzMxNiwxMiBAQCB2b2lkIEJ1aWxkZXI6OmFwcGx5UHJvcGVydHkoQ1NTUHJvcGVy
dHlJRCBpZCwgQ1NTVmFsdWUmIHZhbHVlLCBTZWxlY3RvckNoZWNrZXI6OgogICAgICAgICAgICAg
ICAgICAgICBhcHBseVJvbGxiYWNrQ2FzY2FkZVByb3BlcnR5KHByb3BlcnR5LCBsaW5rTWF0Y2hN
YXNrKTsKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgIH0gZWxzZSBpZiAocm9sbGJhY2tDYXNjYWRlLT5oYXNQcm9wZXJ0eShpZCkpIHsK
LSAgICAgICAgICAgICAgICBhdXRvJiBwcm9wZXJ0eSA9IHJvbGxiYWNrQ2FzY2FkZS0+cHJvcGVy
dHkoaWQpOwotICAgICAgICAgICAgICAgIGFwcGx5Um9sbGJhY2tDYXNjYWRlUHJvcGVydHkocHJv
cGVydHksIGxpbmtNYXRjaE1hc2spOwotICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAg
ICAgIH0gZWxzZSBpZiAoaWQgPCBmaXJzdERlZmVycmVkUHJvcGVydHkpIHsKKyAgICAgICAgICAg
ICAgICBpZiAocm9sbGJhY2tDYXNjYWRlLT5oYXNOb3JtYWxQcm9wZXJ0eShpZCkpIHsKKyAgICAg
ICAgICAgICAgICAgICAgYXV0byYgcHJvcGVydHkgPSByb2xsYmFja0Nhc2NhZGUtPm5vcm1hbFBy
b3BlcnR5KGlkKTsKKyAgICAgICAgICAgICAgICAgICAgYXBwbHlSb2xsYmFja0Nhc2NhZGVQcm9w
ZXJ0eShwcm9wZXJ0eSwgbGlua01hdGNoTWFzayk7CisgICAgICAgICAgICAgICAgICAgIHJldHVy
bjsKKyAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9IGVsc2UgaWYgKHJvbGxiYWNrQ2Fz
Y2FkZS0+aGFzRGVmZXJyZWRQcm9wZXJ0eShpZCkpIHsKICAgICAgICAgICAgICAgICBhdXRvJiBw
cm9wZXJ0eSA9IHJvbGxiYWNrQ2FzY2FkZS0+ZGVmZXJyZWRQcm9wZXJ0eShpZCk7CiAgICAgICAg
ICAgICAgICAgYXBwbHlSb2xsYmFja0Nhc2NhZGVQcm9wZXJ0eShwcm9wZXJ0eSwgbGlua01hdGNo
TWFzayk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXIuaCBi
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlci5oCmluZGV4IDYzMjVmM2JmN2Y4MWMy
NjIyMjA3ZWUwMjE4Nzk0ODNiYTY3M2Q2YmUuLjdjNzFmZDVhYzFjZDQ0NGMwNzkwZmUzYzNhMzBm
OTdkYmUzYTMwMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlci5oCkBAIC00MCw3ICs0
MCw3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgYXBwbHlBbGxQcm9wZXJ0aWVzKCk7CiAgICAgdm9p
ZCBhcHBseUhpZ2hQcmlvcml0eVByb3BlcnRpZXMoKTsKLSAgICB2b2lkIGFwcGx5TG93UHJpb3Jp
dHlQcm9wZXJ0aWVzKCk7CisgICAgdm9pZCBhcHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMo
KTsKIAogICAgIHZvaWQgYXBwbHlQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQpIHsg
YXBwbHlQcm9wZXJ0aWVzKHByb3BlcnR5SUQsIHByb3BlcnR5SUQpOyB9CiAgICAgdm9pZCBhcHBs
eUN1c3RvbVByb3BlcnR5KGNvbnN0IFN0cmluZyYgbmFtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9zdHlsZS9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0
eWxlUmVzb2x2ZXIuY3BwCmluZGV4IGM2M2QwZTU5MzQyMjY4Nzc4MjhlNmYwZjFjMmFlMTdjY2U0
OGRmYTAuLjUwZDZjNTQ3MjkwNDI4YzFmMjEwNDU3NzljNDEwODhlOTYwODc3ZjAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1N0eWxlUmVzb2x2ZXIuY3BwCkBAIC02MjMsNyArNjIzLDcgQEAgdm9pZCBS
ZXNvbHZlcjo6YXBwbHlNYXRjaGVkUHJvcGVydGllcyhTdGF0ZSYgc3RhdGUsIGNvbnN0IE1hdGNo
UmVzdWx0JiBtYXRjaFJlc3UKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGJ1aWxkZXIu
YXBwbHlMb3dQcmlvcml0eVByb3BlcnRpZXMoKTsKKyAgICBidWlsZGVyLmFwcGx5Tm9uSGlnaFBy
aW9yaXR5UHJvcGVydGllcygpOwogCiAgICAgZm9yIChhdXRvJiBjb250ZW50QXR0cmlidXRlIDog
YnVpbGRlci5zdGF0ZSgpLnJlZ2lzdGVyZWRDb250ZW50QXR0cmlidXRlcygpKQogICAgICAgICBy
dWxlU2V0cygpLm11dGFibGVGZWF0dXJlcygpLnJlZ2lzdGVyQ29udGVudEF0dHJpYnV0ZShjb250
ZW50QXR0cmlidXRlKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455791</attachid>
            <date>2022-03-25 11:50:01 -0700</date>
            <delta_ts>2022-03-29 09:01:43 -0700</delta_ts>
            <desc>Patch for EWS</desc>
            <filename>bug-238345-20220325194959.patch</filename>
            <type>text/plain</type>
            <size>49311</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNzQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzI5OTFmYTkzYjc0MWRh
MDc2ZTk4MTFmYTYxMDExZGQ2MzdiNWYyMC4uYzI5MDljMmE0NWY3OWVhY2VjZWU5YTRlMDkxNjIx
NWUxYzY4ZDVhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4MSBAQAorMjAyMi0wMy0yNSAgT3Jp
b2wgQnJ1ZmF1ICA8b2JydWZhdUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3MtY2FzY2FkZV0g
U29ydCBkZWZlcnJlZCBwcm9wZXJ0aWVzIGF0IHRoZSBlbmQgb2YgQ1NTUHJvcGVydHlJRCBlbnVt
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzgzNDUK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCdWcgMjM4
MjYwIHdpbGwgb3B0aW1pemUgdGhlIGxvZ2ljIGZvciBjYXNjYWRpbmcgZGVmZXJyZWQgcHJvcGVy
dGllcy4KKyAgICAgICAgVGhpcyBzb3J0cyB0aGVtIGF0IHRoZSBlbmQsIGFmdGVyIGxvdyBwcmlv
cml0eSBvbmVzLCB3aGljaCB3aWxsIGFsbG93CisgICAgICAgIHNvbWUgZnVydGhlciBvcHRpbWl6
YXRpb25zLgorICAgICAgICBUaGlzIGlzIGluIHByZXBhcmF0aW9uIG9mIGJ1ZyAyMzgyNjAsIHdo
aWNoIHBsYW5zIHRvIHR1cm4gYWxsIGxvZ2ljYWwKKyAgICAgICAgYW5kIHBoeXNpY2FsIHByb3Bl
cnRpZXMgaW50byBkZWZlcnJlZC4KKworICAgICAgICBObyBuZXcgdGVzdHMgc2luY2UgdGhlcmUg
c2hvdWxkIGJlIG5vIGNoYW5nZSBpbiBiZWhhdmlvci4KKworICAgICAgICAqIGNzcy9tYWtlcHJv
cC5wbDoKKyAgICAgICAgKHNvcnRCeURlc2NlbmRpbmdQcmlvcml0eUFuZE5hbWUpOgorICAgICAg
ICBTb3J0IGRlZmVycmVkIHByb3BlcnRpZXMgYXQgdGhlIGVuZCBvZiBDU1NQcm9wZXJ0eUlEIGVu
dW0uCisgICAgICAgIEFkZCBmaXJzdEhpZ2hQcmlvcml0eVByb3BlcnR5LCBmaXJzdExvd1ByaW9y
aXR5UHJvcGVydHksCisgICAgICAgIGxhc3RMb3dQcmlvcml0eVByb3BlcnR5LCBmaXJzdERlZmVy
cmVkUHJvcGVydHkgYW5kIGxhc3REZWZlcnJlZFByb3BlcnR5LgorCisgICAgICAgICogc3R5bGUv
UHJvcGVydHlDYXNjYWRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpQcm9wZXJ0eUNh
c2NhZGU6OnNldCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UHJvcGVydHlDYXNjYWRlOjpz
ZXREZWZlcnJlZCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UHJvcGVydHlDYXNjYWRlOjph
ZGRNYXRjaCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6c2hvdWxkQXBwbHlQcm9wZXJ0eUlu
UGFyc2VPcmRlcik6IERlbGV0ZWQuCisgICAgICAgIERlbGV0ZSBzaG91bGRBcHBseVByb3BlcnR5
SW5QYXJzZU9yZGVyKCksIHNpbmNlIGluc3RlYWQgd2UgY2FuIGp1c3QKKyAgICAgICAgY29tcGFy
ZSB0aGUgQ1NTUHJvcGVydHlJZCBhbmQgZmlyc3REZWZlcnJlZFByb3BlcnR5IHdpdGggPCBvciA+
PS4KKworICAgICAgICAqIHN0eWxlL1Byb3BlcnR5Q2FzY2FkZS5oOgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGU6OlByb3BlcnR5Q2FzY2FkZTo6aGFzTm9ybWFsUHJvcGVydHkgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6U3R5bGU6OlByb3BlcnR5Q2FzY2FkZTo6bm9ybWFsUHJvcGVydHkgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlByb3BlcnR5Q2FzY2FkZTo6aGFzRGVmZXJy
ZWRQcm9wZXJ0eSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UHJvcGVydHlDYXNj
YWRlOjpoYXNQcm9wZXJ0eSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTdHls
ZTo6UHJvcGVydHlDYXNjYWRlOjpwcm9wZXJ0eSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIFJl
bmFtZSBoYXNQcm9wZXJ0eSgpIGFuZCBwcm9wZXJ0eSgpIHRvIGhhc05vcm1hbFByb3BlcnR5KCkg
YW5kCisgICAgICAgIG5vcm1hbFByb3BlcnR5KCksIHRvIG1ha2UgaXQgY2xlYXIgdGhleSBhcmUg
bm90IGZvciBkZWZlcnJlZCBwcm9wZXJ0aWVzLgorICAgICAgICBSZWR1Y2UgdGhlIHNpemUgb2Yg
bV9wcm9wZXJ0aWVzIGFycmF5IGFuZCBtX3Byb3BlcnR5SXNQcmVzZW50IGJpdHNldCwKKyAgICAg
ICAgc2luY2UgdGhleSBkb24ndCBuZWVkIHRvIGluY2x1ZGUgZGVmZXJyZWQgcHJvcGVydGllcy4K
KworICAgICAgICAqIHN0eWxlL1N0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
dHlsZTo6QnVpbGRlcjo6YXBwbHlBbGxQcm9wZXJ0aWVzKToKKyAgICAgICAgKFdlYkNvcmU6OlN0
eWxlOjpCdWlsZGVyOjphcHBseUhpZ2hQcmlvcml0eVByb3BlcnRpZXMpOgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGU6OkJ1aWxkZXI6OmFwcGx5Tm9uSGlnaFByaW9yaXR5UHJvcGVydGllcyk6Cisg
ICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlcjo6YXBwbHlQcm9wZXJ0aWVzSW1wbCk6Cisg
ICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlcjo6YXBwbHlQcm9wZXJ0eSk6CisgICAgICAg
IChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlcjo6YXBwbHlMb3dQcmlvcml0eVByb3BlcnRpZXMpOiBE
ZWxldGVkLgorICAgICAgICBSZW5hbWUgYXBwbHlMb3dQcmlvcml0eVByb3BlcnRpZXMoKSB0byBh
cHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMoKQorICAgICAgICB0byBtYWtlIGl0IGNsZWFy
IHRoYXQgaXQgaW5jbHVkZXMgY3VzdG9tIGFuZCBkZWZlcnJlZCBwcm9wZXJ0aWVzLgorICAgICAg
ICBVc2UgdGhlIG5ldyBmaXJzdEhpZ2hQcmlvcml0eVByb3BlcnR5IGFuZCBsYXN0TG93UHJpb3Jp
dHlQcm9wZXJ0eQorICAgICAgICBjb25zdGFudHMgZm9yIGNsYXJpdHkgYW5kIHRvIHNraXAgZGVm
ZXJyZWQgcHJvcGVydGllcy4KKyAgICAgICAgUmVuYW1lIGhhc1Byb3BlcnR5KCkgYW5kIHByb3Bl
cnR5KCkgdG8gaGFzTm9ybWFsUHJvcGVydHkoKSBhbmQKKyAgICAgICAgbm9ybWFsUHJvcGVydHko
KSwgdG8gbWFrZSBpdCBjbGVhciB0aGV5IGFyZSBub3QgZm9yIGRlZmVycmVkIHByb3BlcnRpZXMu
CisKKyAgICAgICAgKiBzdHlsZS9TdHlsZUJ1aWxkZXIuaDoKKyAgICAgICAgUmVuYW1lIGFwcGx5
TG93UHJpb3JpdHlQcm9wZXJ0aWVzKCkgdG8gYXBwbHlOb25IaWdoUHJpb3JpdHlQcm9wZXJ0aWVz
KCkKKyAgICAgICAgdG8gbWFrZSBpdCBjbGVhciB0aGF0IGl0IGluY2x1ZGVzIGN1c3RvbSBhbmQg
ZGVmZXJyZWQgcHJvcGVydGllcy4KKworICAgICAgICAqIHN0eWxlL1N0eWxlUmVzb2x2ZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlJlc29sdmVyOjphcHBseU1hdGNoZWRQcm9wZXJ0
aWVzKToKKyAgICAgICAgUmVuYW1lIGFwcGx5TG93UHJpb3JpdHlQcm9wZXJ0aWVzKCkgdG8gYXBw
bHlOb25IaWdoUHJpb3JpdHlQcm9wZXJ0aWVzKCkKKyAgICAgICAgdG8gbWFrZSBpdCBjbGVhciB0
aGF0IGl0IGluY2x1ZGVzIGN1c3RvbSBhbmQgZGVmZXJyZWQgcHJvcGVydGllcy4KKworMjAyMi0w
My0yNSAgT3Jpb2wgQnJ1ZmF1ICA8b2JydWZhdUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3Mt
Y2FzY2FkZV0gTWVyZ2UgZ2V0UmVsYXRlZFByb3BlcnR5SWQoKSBhbmQgc2hvdWxkQXBwbHlQcm9w
ZXJ0eUluUGFyc2VPcmRlcigpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMzgzNTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBnZXRSZWxhdGVkUHJvcGVydHlJZCgpIGlzIGF1dG9tYXRpY2FsbHkgZ2VuZXJh
dGVkIGZyb20gdGhlICJyZWxhdGVkLXByb3BlcnR5IiBmbGFnIGluIENTU1Byb3BlcnRpZXMuanNv
bgorCisgICAgICAgIHNob3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIoKSBpcyBoYXJkY29k
ZWQgaW4gUHJvcGVydHlDYXNjYWRlLmNwcAorCisgICAgICAgIEJvdGggZ2V0UmVsYXRlZFByb3Bl
cnR5SWQoKSBhbmQgc2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcigpIHB1cnN1ZQorICAg
ICAgICB0aGUgc2FtZSB0aGluZzogaWYgdGhlcmUgYXJlIHR3byBwcm9wZXJ0aWVzICh0eXBpY2Fs
bHkgYSBzdGFuZGFyZCBvbmUKKyAgICAgICAgYW5kIGEgLXdlYmtpdC0gcHJlZml4ZWQgb25lKSB3
aGljaCBzaGFyZSB0aGUgc2FtZSBmaWVsZCBpbiBSZW5kZXJTdHlsZSwKKyAgICAgICAgdGhlbiB3
ZSBzaG91bGQgdGFrZSBzcGVjaWZpZWQgb3JkZXIgaW50byBhY2NvdW50IHdoZW4gYXBwbHlpbmcg
dGhlbS4KKworICAgICAgICBUaGUgcHJvYmxlbSBpcyB0aGF0IHRoZSBsb2dpYyBmb3IgZ2V0UmVs
YXRlZFByb3BlcnR5SWQoKSBkb2Vzbid0IHdvcmsKKyAgICAgICAgd2VsbCBpbiBhbGwgY2FzZXMu
IEl0IHdhcyBvbmx5IHVzZWQgZm9yIC13ZWJraXQtdGV4dC1vcmllbnRhdGlvbiBhbmQKKyAgICAg
ICAgdGV4dC1vcmllbnRhdGlvbiwgYnV0IGJ1ZyAyMzgzNTYgaW1wbGVtZW50ZWQgdGhlIGZvcm1l
ciBhcyBhIHNob3J0aGFuZC4KKyAgICAgICAgU28gbm93IHRoZXJlIGlzIG5vIGNvbnN1bWVyIG9m
IGdldFJlbGF0ZWRQcm9wZXJ0eUlkKCkuCisKKyAgICAgICAgT24gdGhlIG90aGVyIGhhbmQsIHNo
b3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIoKSB3b3JrcyBiZXR0ZXIsIGJ1dAorICAgICAg
ICBpdCB3aWxsIG5lZWQgdG8gYmUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZm9yIGJ1ZyAyMzgz
NDUsIGFuZCBidWcKKyAgICAgICAgMjM4MTI1IHdpbGwgbmVlZCB0byBrbm93IHdoaWNoIHByb3Bl
cnR5IHNoYXJlcyBhIGNvbXB1dGVkIHZhbHVlIHdpdGggYQorICAgICAgICBnaXZlbiBvbmUuCisK
KyAgICAgICAgU28gdGhpcyBwYXRjaCByZW1vdmVzIHRoZSBjb25zdW1lcnMgb2YgdGhlIG9sZCBn
ZXRSZWxhdGVkUHJvcGVydHlJZCgpLAorICAgICAgICBhbmQgY2hhbmdlcyBzaG91bGRBcHBseVBy
b3BlcnR5SW5QYXJzZU9yZGVyKCkgdG8gYmUgYmFzZWQgb24gaXQuCisKKyAgICAgICAgTm8gbmV3
IHRlc3RzIHNpbmNlIHRoZXJlIGlzIG5vIGNoYW5nZSBpbiBiZWhhdmlvci4KKworICAgICAgICAq
IGNzcy9DU1NQcm9wZXJ0aWVzLmpzb246CisgICAgICAgIE1hcmsgcHJvcGVydGllcyBmb3Igd2hp
Y2ggc2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcigpIHJldHVybmVkCisgICAgICAgIHRy
dWUgd2l0aCB0aGUgInJlbGF0ZWQtcHJvcGVydHkiIGZsYWcuCisKKyAgICAgICAgKiBjc3MvUHJv
cGVydHlTZXRDU1NTdHlsZURlY2xhcmF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlByb3Bl
cnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6Z2V0UHJvcGVydHlWYWx1ZUludGVybmFsKToKKyAg
ICAgICAgUmVtb3ZlIG9sZCBnZXRSZWxhdGVkUHJvcGVydHlJZCgpIGxvZ2ljIHdoaWNoIHdhcyB1
bnVzZWQuCisKKyAgICAgICAgKiBjc3MvbWFrZXByb3AucGw6CisgICAgICAgIFRocm93IGVycm9y
cyBpZiAicmVsYXRlZC1wcm9wZXJ0eSIgZmxhZyBpcyBpbnZhbGlkLgorCisgICAgICAgICogY3Nz
L3BhcnNlci9DU1NQYXJzZXJJbXBsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmZpbHRlclByb3Bl
cnRpZXMpOgorICAgICAgICBSZW1vdmUgb2xkIGdldFJlbGF0ZWRQcm9wZXJ0eUlkKCkgbG9naWMg
d2hpY2ggd2FzIHVudXNlZC4KKworICAgICAgICAqIHN0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6c2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRl
cik6CisgICAgICAgIEJhc2Ugc2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcigpIG9uIGdl
dFJlbGF0ZWRQcm9wZXJ0eUlkKCkuCisKKzIwMjItMDMtMjUgIE9yaW9sIEJydWZhdSAgPG9icnVm
YXVAaWdhbGlhLmNvbT4KKworICAgICAgICBbY3NzXSBUdXJuIC13ZWJraXQtdGV4dC1vcmllbnRh
dGlvbiBpbnRvIGEgbGVnYWN5IHNob3J0aGFuZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM4MzU2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgYC13ZWJraXQtdGV4dC1vcmllbnRhdGlvbmAgYW5kIGB0ZXh0
LW9yaWVudGF0aW9uYCB3ZXJlIGJvdGggaW1wbGVtZW50ZWQKKyAgICAgICAgYXMgbG9uZ2hhbmRz
LCBqdXN0IHdpdGggYSBgcmVsYXRlZC1wcm9wZXJ0eWAgZmxhZyBzbyB0aGF0IGRlY2xhcmF0aW9u
CisgICAgICAgIGJsb2NrcyB3aXRoIGJvdGggb2YgdGhlbSB3b3VsZCB1c2UgdGhlIG9uZSBhcHBl
YXJpbmcgbGFzdC4KKworICAgICAgICBIb3dldmVyLCB0aGUgbG9naWMgZm9yIGByZWxhdGVkLXBy
b3BlcnR5YCB3YXNuJ3QgYWx3YXlzIHdvcmtpbmcgd2VsbC4KKyAgICAgICAgSW4gYnVnIDIzODM1
MCBJIHBsYW4gdG8gbWVyZ2UgaXQgd2l0aCBzaG91bGRBcHBseVByb3BlcnR5SW5QYXJzZU9yZGVy
KCksCisgICAgICAgIHdoaWNoIGhhcyB0aGUgc2FtZSBwdXJwb3NlIGFuZCB3b3JrcyBiZXR0ZXIu
IEJ1dCBpdCdzIG5vdCBzdWl0YWJsZSBmb3IKKyAgICAgICAgaGlnaCBwcmlvcml0eSBwcm9wZXJ0
aWVzIGxpa2UgYHRleHQtb3JpZW50YXRpb25gLgorCisgICAgICAgIFNvIHRoaXMgcGF0Y2ggdHVy
bnMgYC13ZWJraXQtdGV4dC1vcmllbnRhdGlvbmAgaW50byBhIHNob3J0aGFuZCB0aGF0CisgICAg
ICAgIGV4cGFuZHMgaW50byBgdGV4dC1vcmllbnRhdGlvbmAuCisKKyAgICAgICAgYC13ZWJraXQt
dGV4dC1vcmllbnRhdGlvbmAgY29udGludWVzIGFjY2VwdGluZyB0aGUgbGVnYWN5IHZhbHVlCisg
ICAgICAgIGBzaWRld2F5cy1yaWdodGAsIHdoaWNoIGlzIG5vdyBtYXBwZWQgaW50byBgc2lkZXdh
eXNgIGF0IHBhcnNlIHRpbWUuCisgICAgICAgIFByZXZpb3VzbHkgdGhpcyBoYXBwZW5lZCBhdCBj
b21wdXRlZC12YWx1ZSB0aW1lLCBidXQgaXQgaW1wbGllZCB0aGF0CisgICAgICAgIHNlcmlhbGl6
aW5nIGB0ZXh0LWRlY29yYXRpb25gIGNvdWxkIHlpZWxkIGFuIGludmFsaWQgdmFsdWUuCisKKyAg
ICAgICAgVGVzdHM6IGZhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLWNvbXBldGl0aW9u
Lmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLXN0
eWxlc2hlZXQuaHRtbAorCisgICAgICAgICogY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3Mu
aDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBUZXh0T3Jp
ZW50YXRpb24gY29uc3QpOgorICAgICAgICBSZW1vdmUgbWFwcGluZyBvZiBgc2lkZXdheXMtcmln
aHRgIGludG8gYHNpZGV3YXlzYCwgdGhpcyBpcyBub3cKKyAgICAgICAgZG9uZSBhdCBwYXJzZSB0
aW1lLiBBbHNvIHJlbW92ZSBtYXBwaW5nIG9mIGB2ZXJ0aWNhbC1yaWdodGAgaW50byBgbWl4ZWRg
CisgICAgICAgIHNpbmNlIGB2ZXJ0aWNhbC1yaWdodGAgaXMgYSByZW1uYW50IG9mIHRoZSBwYXN0
IHdoaWNoIGhhcyBub3QgYmVlbgorICAgICAgICBjb25zaWRlcmVkIHZhbGlkIHN5bnRheCBmb3Ig
eWVhcnMuCisKKyAgICAgICAgKiBjc3MvQ1NTUHJvcGVydGllcy5qc29uOgorICAgICAgICBUdXJu
IGAtd2Via2l0LXRleHQtb3JpZW50YXRpb25gIGludG8gYSBzaG9ydGhhbmQgb2YgYHRleHQtb3Jp
ZW50YXRpb25gLgorICAgICAgICBSZW1vdmUgdGhlaXIgYHJlbGF0ZWQtcHJvcGVydHlgIGZsYWdz
IGFuZCBhIHJlbW5hbnQgb2YgYHZlcnRpY2FsLXJpZ2h0YC4KKworICAgICAgICAqIGNzcy9TdHls
ZVByb3BlcnRpZXMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzOjpnZXRQ
cm9wZXJ0eVZhbHVlIGNvbnN0KToKKyAgICAgICAgQWRkIGNvZGUgZm9yIHNlcmlhbGl6aW5nIHRo
ZSBgLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uYCBzaG9ydGhhbmQuCisKKyAgICAgICAgKiBjc3Mv
bWFrZXByb3AucGw6CisgICAgICAgIEF2b2lkIGEgY29tcGlsZSB3YXJuaW5nIGluIGdldFJlbGF0
ZWRQcm9wZXJ0eUlkKCkgd2hlbiBubyBwcm9wZXJ0eSBoYXMKKyAgICAgICAgdGhlIGByZWxhdGVk
LXByb3BlcnR5YCBmbGFnLgorCisgICAgICAgICogY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0UGF0
aHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyRmFzdFBhdGhzOjppc1ZhbGlkS2V5
d29yZFByb3BlcnR5QW5kVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyRmFzdFBh
dGhzOjppc0tleXdvcmRQcm9wZXJ0eUlEKToKKyAgICAgICAgUmVtb3ZlIGAtd2Via2l0LXRleHQt
b3JpZW50YXRpb25gIGZyb20gY29kZSB3aGljaCBpcyBvbmx5IHJlbGV2YW50IGZvcgorICAgICAg
ICBsb25naGFuZHMuCisKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5UGFyc2VyOjpjb25zdW1lTGVnYWN5VGV4
dE9yaWVudGF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5UGFyc2VyOjpwYXJz
ZVNob3J0aGFuZCk6CisgICAgICAgIEFkZCBwYXJzaW5nIGxvZ2ljIGZvciBgLXdlYmtpdC10ZXh0
LW9yaWVudGF0aW9uYCBhcyBhIHNob3J0aGFuZC4KKworICAgICAgICAqIGNzcy9wYXJzZXIvQ1NT
UHJvcGVydHlQYXJzZXIuaDoKKyAgICAgICAgQWRkIHBhcnNpbmcgbG9naWMgZm9yIGAtd2Via2l0
LXRleHQtb3JpZW50YXRpb25gIGFzIGEgc2hvcnRoYW5kLgorCisgICAgICAgICogc3R5bGUvU3R5
bGVCdWlsZGVyQ3VzdG9tLmg6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlckN1c3Rv
bTo6YXBwbHlWYWx1ZVdlYmtpdFRleHRPcmllbnRhdGlvbik6IERlbGV0ZWQuCisgICAgICAgIFJl
bW92ZSBgLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uYCBmcm9tIGNvZGUgd2hpY2ggaXMgb25seSBy
ZWxldmFudCBmb3IKKyAgICAgICAgbG9uZ2hhbmRzLgorCiAyMDIyLTAzLTIzICBZb3Vlbm4gRmFi
bGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBWaWRlb0ZyYW1lIGRvZXMgbm90IG5l
ZWQgdG8gaW5oZXJpdCBmcm9tIE1lZGlhU2FtcGxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAppbmRleCA1MDczZWNhYjRiOTg0N2Y4YjZlYjBjYTM4
NDdhZjQ3MDU0ZTNhMzZmLi5lODU3OGQwMDYyMjM4NTdjZjQ5ZGE3NjJlNjE5NTM4MGJmNDhlMTE1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5n
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgK
QEAgLTMzMDQsMTAgKzMzMDQsNiBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1
ZTo6b3BlcmF0b3IgVGV4dE9yaWVudGF0aW9uKCkgY29uc3QKICAgICBzd2l0Y2ggKG1fdmFsdWUu
dmFsdWVJRCkgewogICAgIGNhc2UgQ1NTVmFsdWVTaWRld2F5czoKICAgICAgICAgcmV0dXJuIFRl
eHRPcmllbnRhdGlvbjo6U2lkZXdheXM7Ci0gICAgY2FzZSBDU1NWYWx1ZVNpZGV3YXlzUmlnaHQ6
Ci0gICAgICAgIHJldHVybiBUZXh0T3JpZW50YXRpb246OlNpZGV3YXlzOwotICAgIGNhc2UgQ1NT
VmFsdWVWZXJ0aWNhbFJpZ2h0OgotICAgICAgICByZXR1cm4gVGV4dE9yaWVudGF0aW9uOjpNaXhl
ZDsKICAgICBjYXNlIENTU1ZhbHVlTWl4ZWQ6CiAgICAgICAgIHJldHVybiBUZXh0T3JpZW50YXRp
b246Ok1peGVkOwogICAgIGNhc2UgQ1NTVmFsdWVVcHJpZ2h0OgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQ
cm9wZXJ0aWVzLmpzb24KaW5kZXggNzk2OWUyYmUxMThkOWU1NDY4ZjYzNjM5OWExMjk1ZjAxNjNj
NjdiZi4uMDE2NmQyMDIyYTI0NmYzODU0ZjU0YjAzY2M5YWMzZGI2YjEyNjEyMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uCkBAIC0xNDIsMTEgKzE0MiwxMyBAQAogICAgICAg
ICAiaW4gQ1NTIGNhc2NhZGluZyBvcmRlci4iLAogICAgICAgICAiIiwKICAgICAgICAgIiogcmVs
YXRlZC1wcm9wZXJ0eToiLAotICAgICAgICAiSW5kaWNhdGVzIHRoZSBwcmVmaXhlZCBvciB1bnBy
ZWZpeGVkIHZlcnNpb24gb2YgdGhlIHNhbWUgcHJvcGVydHksIiwKLSAgICAgICAgImUuZy4gLXdl
YmtpdC10ZXh0LW9yaWVudGF0aW9uIGhhcyBhIHJlbGF0ZWQgcHJvcGVydHkgdGV4dC1vcmllbnRh
dGlvbiIsCi0gICAgICAgICJXaGVuIHBhcnNpbmcgaGlnaCBwcmlvcml0eSBDU1MgcHJvcGVydGll
cyB3aXRoIGJvdGggcHJlZml4ZWQgYW5kIHVucHJlZml4ZWQiLAotICAgICAgICAidmVyc2lvbnMs
IHRoaXMgZmxpZyB3aWxsIGhlbHAgdGhlIHBhcnNlciB0byBtYXJrIGFsbCByZWxhdGVkIHByb3Bl
cnRpZXMgIiwKLSAgICAgICAgImFzIHNlZW4gd2hlbiBvbmUgaXMgc2Vlbi4gVGhpcyBjb3VsZCBl
bmZvcmNlIHRoZSAnbGFzdC1vbmUtd2lucycgcnVsZS4iLAorICAgICAgICAiSW5kaWNhdGVzIGFu
b3RoZXIgcHJvcGVydHkgd2hpY2ggc2hhcmVzIGEgY29tcHV0ZWQgc3R5bGUgd2l0aCB0aGUgY3Vy
cmVudCBvbmUuIiwKKyAgICAgICAgIlR5cGljYWxseSB1c2VkIGZvciB0aGUgcHJlZml4ZWQgb3Ig
dW5wcmVmaXhlZCB2ZXJzaW9uIG9mIHRoZSBzYW1lIHByb3BlcnR5LCBlLmcuIiwKKyAgICAgICAg
Ii13ZWJraXQtYm94LXNoYWRvdyBoYXMgYm94LXNoYWRvdyBhcyB0aGUgcmVsYXRlZCBwcm9wZXJ0
eSwgYW5kIHZpY2UgdmVyc2EuIiwKKyAgICAgICAgIlByb3BlcnRpZXMgd2l0aCB0aGlzIGZsYWcg
Y2FuJ3QgYmUgaGlnaC1wcmlvcml0eSwgdGhleSBhcmUgZGVmZXJyZWQgdG8gYmUgYXBwbGllZCIs
CisgICAgICAgICJhZnRlciBsb3ctcHJpb3JpdHkgb25lcywgYW5kIHRoZXkgYXJlIHNwZWNpYWxs
eSBoYW5kbGVkIHRvIGFwcGx5IGluIHBhcnNlIG9yZGVyLiIsCisgICAgICAgICJTbyBpZiBhIGRl
Y2xhcmF0aW9uIGJsb2NrIGNvbnRhaW5zIGJvdGggcHJvcGVydGllcywgdGhleSB3aWxsIGJlIGFw
cGxpZWQgaW4gdGhlIiwKKyAgICAgICAgInNwZWNpZmllZCBvcmRlciwgbm90IGFscGhhYmV0aWNh
bGx5IHdpdGhpbiB0aGVpciBwcmlvcml0eSBidWNrZXQgYXMgdXN1YWwuIiwKICAgICAgICAgIiIs
CiAgICAgICAgICIqIGFsaWFzZXM6IiwKICAgICAgICAgIkFuIGFycmF5IG9mIHRoZSBhbHRlcm5h
dGl2ZSBuYW1lcyBmb3IgdGhpcyBwcm9wZXJ0eS4gQWxpYXNlcyBhcmUgZm9sZGVkIGF0IiwKQEAg
LTY5MCw3ICs2OTIsNiBAQAogICAgICAgICAgICAgXSwKICAgICAgICAgICAgICJjb2RlZ2VuLXBy
b3BlcnRpZXMiOiB7CiAgICAgICAgICAgICAgICAgImN1c3RvbSI6ICJWYWx1ZSIsCi0gICAgICAg
ICAgICAgICAgInJlbGF0ZWQtcHJvcGVydHkiOiAiLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uIiwK
ICAgICAgICAgICAgICAgICAiaGlnaC1wcmlvcml0eSI6IHRydWUKICAgICAgICAgICAgIH0sCiAg
ICAgICAgICAgICAic3BlY2lmaWNhdGlvbiI6IHsKQEAgLTcwNiwxMCArNzA3LDYgQEAKICAgICAg
ICAgICAgICAgICAgICAgInZhbHVlIjogInNpZGV3YXlzLXJpZ2h0IiwKICAgICAgICAgICAgICAg
ICAgICAgInN0YXR1cyI6ICJkZXByZWNhdGVkIgogICAgICAgICAgICAgICAgIH0sCi0gICAgICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAidmVydGljYWwtcmlnaHQi
LAotICAgICAgICAgICAgICAgICAgICAic3RhdHVzIjogIm5vbi1zdGFuZGFyZCIKLSAgICAgICAg
ICAgICAgICB9LAogICAgICAgICAgICAgICAgICJtaXhlZCIsCiAgICAgICAgICAgICAgICAgInVw
cmlnaHQiCiAgICAgICAgICAgICBdLApAQCAtNzE3LDkgKzcxNCw5IEBACiAgICAgICAgICAgICAg
ICAgImFsaWFzZXMiOiBbCiAgICAgICAgICAgICAgICAgICAgICItZXB1Yi10ZXh0LW9yaWVudGF0
aW9uIgogICAgICAgICAgICAgICAgIF0sCi0gICAgICAgICAgICAgICAgInJlbGF0ZWQtcHJvcGVy
dHkiOiAidGV4dC1vcmllbnRhdGlvbiIsCi0gICAgICAgICAgICAgICAgImN1c3RvbSI6ICJWYWx1
ZSIsCi0gICAgICAgICAgICAgICAgImhpZ2gtcHJpb3JpdHkiOiB0cnVlCisgICAgICAgICAgICAg
ICAgImxvbmdoYW5kcyI6IFsKKyAgICAgICAgICAgICAgICAgICAgInRleHQtb3JpZW50YXRpb24i
CisgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgfSwKICAgICAgICAgICAgICJzcGVjaWZp
Y2F0aW9uIjogewogICAgICAgICAgICAgICAgICJjYXRlZ29yeSI6ICJjc3Mtd3JpdGluZy1tb2Rl
cyIsCkBAIC0xMTI5LDYgKzExMjYsNyBAQAogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
IF0sCiAgICAgICAgICAgICAiY29kZWdlbi1wcm9wZXJ0aWVzIjogeworICAgICAgICAgICAgICAg
ICJyZWxhdGVkLXByb3BlcnR5IjogIi13ZWJraXQtYmFja2dyb3VuZC1jbGlwIiwKICAgICAgICAg
ICAgICAgICAibmFtZS1mb3ItbWV0aG9kcyI6ICJDbGlwIiwKICAgICAgICAgICAgICAgICAiZmls
bC1sYXllci1wcm9wZXJ0eSI6IHRydWUKICAgICAgICAgICAgIH0sCkBAIC0xMTU5LDYgKzExNTcs
NyBAQAogICAgICAgICB9LAogICAgICAgICAiYmFja2dyb3VuZC1vcmlnaW4iOiB7CiAgICAgICAg
ICAgICAiY29kZWdlbi1wcm9wZXJ0aWVzIjogeworICAgICAgICAgICAgICAgICJyZWxhdGVkLXBy
b3BlcnR5IjogIi13ZWJraXQtYmFja2dyb3VuZC1vcmlnaW4iLAogICAgICAgICAgICAgICAgICJu
YW1lLWZvci1tZXRob2RzIjogIk9yaWdpbiIsCiAgICAgICAgICAgICAgICAgImZpbGwtbGF5ZXIt
cHJvcGVydHkiOiB0cnVlCiAgICAgICAgICAgICB9LApAQCAtMTI0OSw2ICsxMjQ4LDcgQEAKICAg
ICAgICAgfSwKICAgICAgICAgImJhY2tncm91bmQtc2l6ZSI6IHsKICAgICAgICAgICAgICJjb2Rl
Z2VuLXByb3BlcnRpZXMiOiB7CisgICAgICAgICAgICAgICAgInJlbGF0ZWQtcHJvcGVydHkiOiAi
LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemUiLAogICAgICAgICAgICAgICAgICJuYW1lLWZvci1tZXRo
b2RzIjogIlNpemUiLAogICAgICAgICAgICAgICAgICJmaWxsLWxheWVyLXByb3BlcnR5IjogdHJ1
ZQogICAgICAgICAgICAgfSwKQEAgLTE2OTAsNiArMTY5MCw3IEBACiAgICAgICAgIH0sCiAgICAg
ICAgICJib3JkZXItaW1hZ2Utb3V0c2V0IjogewogICAgICAgICAgICAgImNvZGVnZW4tcHJvcGVy
dGllcyI6IHsKKyAgICAgICAgICAgICAgICAicmVsYXRlZC1wcm9wZXJ0eSI6ICItd2Via2l0LWJv
cmRlci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgImN1c3RvbSI6ICJBbGwiCiAgICAgICAgICAg
ICB9LAogICAgICAgICAgICAgInNwZWNpZmljYXRpb24iOiB7CkBAIC0xNjk5LDYgKzE3MDAsNyBA
QAogICAgICAgICB9LAogICAgICAgICAiYm9yZGVyLWltYWdlLXJlcGVhdCI6IHsKICAgICAgICAg
ICAgICJjb2RlZ2VuLXByb3BlcnRpZXMiOiB7CisgICAgICAgICAgICAgICAgInJlbGF0ZWQtcHJv
cGVydHkiOiAiLXdlYmtpdC1ib3JkZXItaW1hZ2UiLAogICAgICAgICAgICAgICAgICJjdXN0b20i
OiAiQWxsIgogICAgICAgICAgICAgfSwKICAgICAgICAgICAgICJzcGVjaWZpY2F0aW9uIjogewpA
QCAtMTcwOCw2ICsxNzEwLDcgQEAKICAgICAgICAgfSwKICAgICAgICAgImJvcmRlci1pbWFnZS1z
bGljZSI6IHsKICAgICAgICAgICAgICJjb2RlZ2VuLXByb3BlcnRpZXMiOiB7CisgICAgICAgICAg
ICAgICAgInJlbGF0ZWQtcHJvcGVydHkiOiAiLXdlYmtpdC1ib3JkZXItaW1hZ2UiLAogICAgICAg
ICAgICAgICAgICJjdXN0b20iOiAiQWxsIgogICAgICAgICAgICAgfSwKICAgICAgICAgICAgICJz
cGVjaWZpY2F0aW9uIjogewpAQCAtMTcxNyw2ICsxNzIwLDcgQEAKICAgICAgICAgfSwKICAgICAg
ICAgImJvcmRlci1pbWFnZS1zb3VyY2UiOiB7CiAgICAgICAgICAgICAiY29kZWdlbi1wcm9wZXJ0
aWVzIjogeworICAgICAgICAgICAgICAgICJyZWxhdGVkLXByb3BlcnR5IjogIi13ZWJraXQtYm9y
ZGVyLWltYWdlIiwKICAgICAgICAgICAgICAgICAiY29udmVydGVyIjogIlN0eWxlSW1hZ2U8Q1NT
UHJvcGVydHlCb3JkZXJJbWFnZVNvdXJjZT4iCiAgICAgICAgICAgICB9LAogICAgICAgICAgICAg
InNwZWNpZmljYXRpb24iOiB7CkBAIC0xNzI2LDYgKzE3MzAsNyBAQAogICAgICAgICB9LAogICAg
ICAgICAiYm9yZGVyLWltYWdlLXdpZHRoIjogewogICAgICAgICAgICAgImNvZGVnZW4tcHJvcGVy
dGllcyI6IHsKKyAgICAgICAgICAgICAgICAicmVsYXRlZC1wcm9wZXJ0eSI6ICItd2Via2l0LWJv
cmRlci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgImN1c3RvbSI6ICJBbGwiCiAgICAgICAgICAg
ICB9LAogICAgICAgICAgICAgInNwZWNpZmljYXRpb24iOiB7CkBAIC0yMjg5LDYgKzIyOTQsNyBA
QAogICAgICAgICB9LAogICAgICAgICAiYm94LXNoYWRvdyI6IHsKICAgICAgICAgICAgICJjb2Rl
Z2VuLXByb3BlcnRpZXMiOiB7CisgICAgICAgICAgICAgICAgInJlbGF0ZWQtcHJvcGVydHkiOiAi
LXdlYmtpdC1ib3gtc2hhZG93IiwKICAgICAgICAgICAgICAgICAiY3VzdG9tIjogIkFsbCIKICAg
ICAgICAgICAgIH0sCiAgICAgICAgICAgICAic3BlY2lmaWNhdGlvbiI6IHsKQEAgLTUzNDEsMTgg
KzUzNDcsMjEgQEAKICAgICAgICAgfSwKICAgICAgICAgIi13ZWJraXQtYmFja2dyb3VuZC1jbGlw
IjogewogICAgICAgICAgICAgImNvZGVnZW4tcHJvcGVydGllcyI6IHsKKyAgICAgICAgICAgICAg
ICAicmVsYXRlZC1wcm9wZXJ0eSI6ICJiYWNrZ3JvdW5kLWNsaXAiLAogICAgICAgICAgICAgICAg
ICJuYW1lLWZvci1tZXRob2RzIjogIkNsaXAiLAogICAgICAgICAgICAgICAgICJmaWxsLWxheWVy
LXByb3BlcnR5IjogdHJ1ZQogICAgICAgICAgICAgfQogICAgICAgICB9LAogICAgICAgICAiLXdl
YmtpdC1iYWNrZ3JvdW5kLW9yaWdpbiI6IHsKICAgICAgICAgICAgICJjb2RlZ2VuLXByb3BlcnRp
ZXMiOiB7CisgICAgICAgICAgICAgICAgInJlbGF0ZWQtcHJvcGVydHkiOiAiYmFja2dyb3VuZC1v
cmlnaW4iLAogICAgICAgICAgICAgICAgICJuYW1lLWZvci1tZXRob2RzIjogIk9yaWdpbiIsCiAg
ICAgICAgICAgICAgICAgImZpbGwtbGF5ZXItcHJvcGVydHkiOiB0cnVlCiAgICAgICAgICAgICB9
CiAgICAgICAgIH0sCiAgICAgICAgICItd2Via2l0LWJhY2tncm91bmQtc2l6ZSI6IHsKICAgICAg
ICAgICAgICJjb2RlZ2VuLXByb3BlcnRpZXMiOiB7CisgICAgICAgICAgICAgICAgInJlbGF0ZWQt
cHJvcGVydHkiOiAiYmFja2dyb3VuZC1zaXplIiwKICAgICAgICAgICAgICAgICAibmFtZS1mb3It
bWV0aG9kcyI6ICJTaXplIiwKICAgICAgICAgICAgICAgICAiZmlsbC1sYXllci1wcm9wZXJ0eSI6
IHRydWUKICAgICAgICAgICAgIH0sCkBAIC01MzcwLDYgKzUzNzksNyBAQAogICAgICAgICB9LAog
ICAgICAgICAiLXdlYmtpdC1ib3JkZXItaW1hZ2UiOiB7CiAgICAgICAgICAgICAiY29kZWdlbi1w
cm9wZXJ0aWVzIjogeworICAgICAgICAgICAgICAgICJyZWxhdGVkLXByb3BlcnR5IjogImJvcmRl
ci1pbWFnZSIsCiAgICAgICAgICAgICAgICAgImluaXRpYWwiOiAiaW5pdGlhbE5pbmVQaWVjZUlt
YWdlIiwKICAgICAgICAgICAgICAgICAiY29udmVydGVyIjogIkJvcmRlckltYWdlPENTU1Byb3Bl
cnR5V2Via2l0Qm9yZGVySW1hZ2U+IgogICAgICAgICAgICAgfQpAQCAtNTQ4OSw2ICs1NDk5LDcg
QEAKICAgICAgICAgfSwKICAgICAgICAgIi13ZWJraXQtYm94LXNoYWRvdyI6IHsKICAgICAgICAg
ICAgICJjb2RlZ2VuLXByb3BlcnRpZXMiOiB7CisgICAgICAgICAgICAgICAgInJlbGF0ZWQtcHJv
cGVydHkiOiAiYm94LXNoYWRvdyIsCiAgICAgICAgICAgICAgICAgImN1c3RvbSI6ICJBbGwiCiAg
ICAgICAgICAgICB9LAogICAgICAgICAgICAgInN0YXR1cyI6IHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9Qcm9wZXJ0eVNldENTU1N0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNl
L1dlYkNvcmUvY3NzL1Byb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbi5jcHAKaW5kZXggMTU3
Y2JiMDdkNjBiNmZkZWJkNzFkM2Y5OTlhNTA4M2YxYzM0NjRkMy4uNWE3MjlkYWRkNTg5MmJiNzM5
YThhNzFmNjRjYzIyMGJlMmIyZGIwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1By
b3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L1Byb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAgLTMwMCwxNCArMzAwLDEwIEBA
IFJlZlB0cjxDU1NWYWx1ZT4gUHJvcGVydHlTZXRDU1NTdHlsZURlY2xhcmF0aW9uOjpnZXRQcm9w
ZXJ0eUNTU1ZhbHVlSW50ZXJuYWwoQ1NTCiBTdHJpbmcgUHJvcGVydHlTZXRDU1NTdHlsZURlY2xh
cmF0aW9uOjpnZXRQcm9wZXJ0eVZhbHVlSW50ZXJuYWwoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlE
KQogewogICAgIFN0cmluZyB2YWx1ZSA9IG1fcHJvcGVydHlTZXQtPmdldFByb3BlcnR5VmFsdWUo
cHJvcGVydHlJRCk7Ci0gICAgQ1NTUHJvcGVydHlJRCByZWxhdGVkUHJvcGVydHlJRCA9IGdldFJl
bGF0ZWRQcm9wZXJ0eUlkKHByb3BlcnR5SUQpOwotICAgIFN0cmluZyByZWxhdGVkVmFsdWUgPSBt
X3Byb3BlcnR5U2V0LT5nZXRQcm9wZXJ0eVZhbHVlKHJlbGF0ZWRQcm9wZXJ0eUlEKTsKLSAgICAg
ICAgCisKICAgICBpZiAoIXZhbHVlLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIHZhbHVlOwot
ICAgIGlmICghcmVsYXRlZFZhbHVlLmlzRW1wdHkoKSkKLSAgICAgICAgcmV0dXJuIHJlbGF0ZWRW
YWx1ZTsKLSAgICAKKwogICAgIHJldHVybiB7IH07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxl
UHJvcGVydGllcy5jcHAKaW5kZXggZjA0MTNjMTdmZmZhMjgzODExZmUyNTE3ZmRmZDYxYmNkY2Y4
YjI1OS4uOTkyZmYxZTcwZTllYjgzZmUyYmI4YjA0OWMwZmMxNTNhMDg0NDRmZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydGllcy5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvY3NzL1N0eWxlUHJvcGVydGllcy5jcHAKQEAgLTM0OSw2ICszNDksOCBAQCBTdHJpbmcg
U3R5bGVQcm9wZXJ0aWVzOjpnZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJ
RCkgY29uc3QKICAgICAgICAgcmV0dXJuIGdldDJWYWx1ZXMoc2Nyb2xsUGFkZGluZ0Jsb2NrU2hv
cnRoYW5kKCkpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlTY3JvbGxQYWRkaW5nSW5saW5lOgogICAg
ICAgICByZXR1cm4gZ2V0MlZhbHVlcyhzY3JvbGxQYWRkaW5nSW5saW5lU2hvcnRoYW5kKCkpOwor
ICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRUZXh0T3JpZW50YXRpb246CisgICAgICAgIHJldHVy
biBnZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5VGV4dE9yaWVudGF0aW9uKTsKICAgICBkZWZh
dWx0OgogICAgICAgICByZXR1cm4gU3RyaW5nKCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL21ha2Vwcm9wLnBsIGIvU291cmNlL1dlYkNvcmUvY3NzL21ha2Vwcm9wLnBs
CmluZGV4IDA4ZmUwOWY0ZGIxNGZiM2FkNzhiOWQ3OGUzZGZlMmFhMmEyOTk0YWMuLjM3YTIxNDU2
OTQ3NmEwMmMwOGMzODcyZGRiZGM2MzRiN2M4MmU3ODQgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9tYWtlcHJvcC5wbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvbWFrZXByb3AucGwK
QEAgLTM1OSw2ICszNTksMTQgQEAgc3ViIHNvcnRCeURlc2NlbmRpbmdQcmlvcml0eUFuZE5hbWUK
ICAgICBpZiAoISEkbmFtZUlzSGlnaFByaW9yaXR5eyRhfSA+ICEhJG5hbWVJc0hpZ2hQcmlvcml0
eXskYn0pIHsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KKyAgICAjIERlZmVyIG5hbWVzIHdp
dGggYSByZWxhdGVkIHByb3BlcnR5IHRvIHRoZSBiYWNrCisgICAgaWYgKCEhJHJlbGF0ZWRQcm9w
ZXJ0eXskYX0gPCAhISRyZWxhdGVkUHJvcGVydHl7JGJ9KSB7CisgICAgICAgIHJldHVybiAtMTsK
KyAgICB9CisgICAgaWYgKCEhJHJlbGF0ZWRQcm9wZXJ0eXskYX0gPiAhISRyZWxhdGVkUHJvcGVy
dHl7JGJ9KSB7CisgICAgICAgIHJldHVybiAxOworICAgIH0KKyAgICAjIFNvcnQgc3Vua2VuIG5h
bWVzIGF0IHRoZSBlbmQgb2YgdGhlaXIgcHJpb3JpdHkgYnVja2V0CiAgICAgaWYgKCEhJG5hbWVQ
cmlvcml0eVNob3VsZFNpbmt7JGF9IDwgISEkbmFtZVByaW9yaXR5U2hvdWxkU2lua3skYn0pIHsK
ICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KQEAgLTU4NywyMyArNTk1LDQwIEBAIGJvb2wgQ1NT
UHJvcGVydHk6OmlzSW5oZXJpdGVkUHJvcGVydHkoQ1NTUHJvcGVydHlJRCBpZCkKICAgICBBU1NF
UlQoaWQgIT0gQ1NTUHJvcGVydHlJbnZhbGlkKTsKICAgICByZXR1cm4gaXNJbmhlcml0ZWRQcm9w
ZXJ0eVRhYmxlW2lkXTsKIH0KLSAgICAKLUNTU1Byb3BlcnR5SUQgZ2V0UmVsYXRlZFByb3BlcnR5
SWQoQ1NTUHJvcGVydHlJRCBpZCkKKworRU9GCisKK2lmICglcmVsYXRlZFByb3BlcnR5KSB7Cisg
ICAgcHJpbnQgR1BFUkYgPDwgIkVPRiI7CitDU1NQcm9wZXJ0eUlEIGdldFJlbGF0ZWRQcm9wZXJ0
eUlkKGNvbnN0IENTU1Byb3BlcnR5SUQgaWQpCiB7CiAgICAgc3dpdGNoIChpZCkgewogRU9GCi1m
b3IgbXkgJG5hbWUgKEBuYW1lcykgewotICAgIGlmICghJHJlbGF0ZWRQcm9wZXJ0eXskbmFtZX0p
IHsKLSAgICAgICAgbmV4dDsKKyAgICBmb3IgbXkgJG5hbWUgKEBuYW1lcykgeworICAgICAgICBp
ZiAoISRyZWxhdGVkUHJvcGVydHl7JG5hbWV9KSB7CisgICAgICAgICAgICBuZXh0OworICAgICAg
ICB9CisgICAgICAgIG15ICRyZWxhdGVkID0gJHJlbGF0ZWRQcm9wZXJ0eXskbmFtZX07CisgICAg
ICAgIGRpZSAiUHJvcGVydHkgJG5hbWUgaGFzIGFuIHVua25vd24gcmVsYXRlZCBwcm9wZXJ0eTog
JHJlbGF0ZWQiIGlmICFleGlzdHMoJG5hbWVUb0lkeyRyZWxhdGVkfSk7CisgICAgICAgIGRpZSAi
SGlnaCBwcmlvcml0eSBwcm9wZXJ0eSAkbmFtZSBjYW4ndCBoYXZlIGEgcmVsYXRlZCBwcm9wZXJ0
eTogJHJlbGF0ZWQiIGlmICRuYW1lSXNIaWdoUHJpb3JpdHl7JG5hbWV9OworICAgICAgICBkaWUg
IlNob3J0aGFuZCBwcm9wZXJ0eSAkbmFtZSBjYW4ndCBoYXZlIGEgcmVsYXRlZCBwcm9wZXJ0eTog
JHJlbGF0ZWQiIGlmIGV4aXN0cyAkcHJvcGVydGllc1dpdGhTdHlsZUJ1aWxkZXJPcHRpb25zeyRu
YW1lfXsibG9uZ2hhbmRzIn07CisgICAgICAgIHByaW50IEdQRVJGICIgICAgY2FzZSBDU1NQcm9w
ZXJ0eUlEOjpDU1NQcm9wZXJ0eSIgLiAkbmFtZVRvSWR7JG5hbWV9IC4gIjpcbiI7CisgICAgICAg
IHByaW50IEdQRVJGICIgICAgICAgIHJldHVybiBDU1NQcm9wZXJ0eUlEOjpDU1NQcm9wZXJ0eSIg
LiAkbmFtZVRvSWR7JHJlbGF0ZWR9IC4gIjtcbiI7CiAgICAgfQotICAgIHByaW50IEdQRVJGICIg
ICAgY2FzZSBDU1NQcm9wZXJ0eUlEOjpDU1NQcm9wZXJ0eSIgLiAkbmFtZVRvSWR7JG5hbWV9IC4g
IjpcbiI7Ci0gICAgcHJpbnQgR1BFUkYgIiAgICAgICAgcmV0dXJuIENTU1Byb3BlcnR5SUQ6OkNT
U1Byb3BlcnR5IiAuICRuYW1lVG9JZHskcmVsYXRlZFByb3BlcnR5eyRuYW1lfX0gLiAiO1xuIjsK
LX0KLSAgICAgICAgCi1wcmludCBHUEVSRiA8PCAiRU9GIjsKKyAgICBwcmludCBHUEVSRiA8PCAi
RU9GIjsKICAgICBkZWZhdWx0OgogICAgICAgICByZXR1cm4gQ1NTUHJvcGVydHlJRDo6Q1NTUHJv
cGVydHlJbnZhbGlkOwogICAgIH0KK0VPRgorfSBlbHNlIHsKKyAgICBwcmludCBHUEVSRiA8PCAi
RU9GIjsKK0NTU1Byb3BlcnR5SUQgZ2V0UmVsYXRlZFByb3BlcnR5SWQoY29uc3QgQ1NTUHJvcGVy
dHlJRCkKK3sKKyAgICByZXR1cm4gQ1NTUHJvcGVydHlJRDo6Q1NTUHJvcGVydHlJbnZhbGlkOwor
RU9GCit9CisKK3ByaW50IEdQRVJGIDw8ICJFT0YiOwogfQogCiBWZWN0b3I8U3RyaW5nPiBDU1NQ
cm9wZXJ0eTo6YWxpYXNlc0ZvclByb3BlcnR5KENTU1Byb3BlcnR5SUQgaWQpCkBAIC04MTUsOSAr
ODQwLDI0IEBAIEVPRgogbXkgJGZpcnN0ID0gJG51bVByZWRlZmluZWRQcm9wZXJ0aWVzOwogbXkg
JGkgPSAkbnVtUHJlZGVmaW5lZFByb3BlcnRpZXM7CiBteSAkbWF4TGVuID0gMDsKK215ICRmaXJz
dEhpZ2hQcmlvcml0eVByb3BlcnR5TmFtZTsKIG15ICRsYXN0SGlnaFByaW9yaXR5UHJvcGVydHlO
YW1lOworbXkgJGZpcnN0TG93UHJpb3JpdHlQcm9wZXJ0eU5hbWU7CitteSAkbGFzdExvd1ByaW9y
aXR5UHJvcGVydHlOYW1lOworbXkgJGZpcnN0RGVmZXJyZWRQcm9wZXJ0eU5hbWU7CitteSAkbGFz
dERlZmVycmVkUHJvcGVydHlOYW1lOwogZm9yZWFjaCBteSAkbmFtZSAoQG5hbWVzKSB7Ci0gICRs
YXN0SGlnaFByaW9yaXR5UHJvcGVydHlOYW1lID0gJG5hbWUgaWYgJG5hbWVJc0hpZ2hQcmlvcml0
eXskbmFtZX07ICMgQXNzdW1lcyB0aGF0IEBuYW1lcyBpcyBzb3J0ZWQgYnkgZGVzY2VuZGluZyBw
cmlvcml0aWVzLgorICAjIEFzc3VtZXMgdGhhdCBAbmFtZXMgaXMgc29ydGVkIGJ5IGRlc2NlbmRp
bmcgcHJpb3JpdGllcy4KKyAgaWYgKCRuYW1lSXNIaWdoUHJpb3JpdHl7JG5hbWV9KSB7CisgICAg
JGZpcnN0SGlnaFByaW9yaXR5UHJvcGVydHlOYW1lID0gJG5hbWUgaWYgISRmaXJzdEhpZ2hQcmlv
cml0eVByb3BlcnR5TmFtZTsKKyAgICAkbGFzdEhpZ2hQcmlvcml0eVByb3BlcnR5TmFtZSA9ICRu
YW1lOworICB9IGVsc2lmICghJHJlbGF0ZWRQcm9wZXJ0eXskbmFtZX0pIHsKKyAgICAkZmlyc3RM
b3dQcmlvcml0eVByb3BlcnR5TmFtZSA9ICRuYW1lIGlmICEkZmlyc3RMb3dQcmlvcml0eVByb3Bl
cnR5TmFtZTsKKyAgICAkbGFzdExvd1ByaW9yaXR5UHJvcGVydHlOYW1lID0gJG5hbWU7CisgIH0g
ZWxzZSB7CisgICAgJGZpcnN0RGVmZXJyZWRQcm9wZXJ0eU5hbWUgPSAkbmFtZSBpZiAhJGZpcnN0
RGVmZXJyZWRQcm9wZXJ0eU5hbWU7CisgICAgJGxhc3REZWZlcnJlZFByb3BlcnR5TmFtZSA9ICRu
YW1lOworICB9CiAgIHByaW50IEhFQURFUiAiICAgIENTU1Byb3BlcnR5IiAuICRuYW1lVG9JZHsk
bmFtZX0gLiAiID0gIiAuICRpIC4gIixcbiI7CiAgICRpID0gJGkgKyAxOwogICBpZiAobGVuZ3Ro
KCRuYW1lKSA+ICRtYXhMZW4pIHsKQEAgLTgzMiw3ICs4NzIsMTIgQEAgcHJpbnQgSEVBREVSICJj
b25zdCBpbnQgZmlyc3RDU1NQcm9wZXJ0eSA9ICRmaXJzdDtcbiI7CiBwcmludCBIRUFERVIgImNv
bnN0IGludCBudW1DU1NQcm9wZXJ0aWVzID0gJG51bTtcbiI7CiBwcmludCBIRUFERVIgImNvbnN0
IGludCBsYXN0Q1NTUHJvcGVydHkgPSAkbGFzdDtcbiI7CiBwcmludCBIRUFERVIgImNvbnN0IHNp
emVfdCBtYXhDU1NQcm9wZXJ0eU5hbWVMZW5ndGggPSAkbWF4TGVuO1xuIjsKLXByaW50IEhFQURF
UiAiY29uc3QgQ1NTUHJvcGVydHlJRCBsYXN0SGlnaFByaW9yaXR5UHJvcGVydHkgPSBDU1NQcm9w
ZXJ0eSIgLiAkbmFtZVRvSWR7JGxhc3RIaWdoUHJpb3JpdHlQcm9wZXJ0eU5hbWV9IC4gIjtcblxu
IjsKK3ByaW50IEhFQURFUiAiY29uc3QgQ1NTUHJvcGVydHlJRCBmaXJzdEhpZ2hQcmlvcml0eVBy
b3BlcnR5ID0gQ1NTUHJvcGVydHkiIC4gJG5hbWVUb0lkeyRmaXJzdEhpZ2hQcmlvcml0eVByb3Bl
cnR5TmFtZX0gLiAiO1xuIjsKK3ByaW50IEhFQURFUiAiY29uc3QgQ1NTUHJvcGVydHlJRCBsYXN0
SGlnaFByaW9yaXR5UHJvcGVydHkgPSBDU1NQcm9wZXJ0eSIgLiAkbmFtZVRvSWR7JGxhc3RIaWdo
UHJpb3JpdHlQcm9wZXJ0eU5hbWV9IC4gIjtcbiI7CitwcmludCBIRUFERVIgImNvbnN0IENTU1By
b3BlcnR5SUQgZmlyc3RMb3dQcmlvcml0eVByb3BlcnR5ID0gQ1NTUHJvcGVydHkiIC4gJG5hbWVU
b0lkeyRmaXJzdExvd1ByaW9yaXR5UHJvcGVydHlOYW1lfSAuICI7XG4iOworcHJpbnQgSEVBREVS
ICJjb25zdCBDU1NQcm9wZXJ0eUlEIGxhc3RMb3dQcmlvcml0eVByb3BlcnR5ID0gQ1NTUHJvcGVy
dHkiIC4gJG5hbWVUb0lkeyRsYXN0TG93UHJpb3JpdHlQcm9wZXJ0eU5hbWV9IC4gIjtcbiI7Citw
cmludCBIRUFERVIgImNvbnN0IENTU1Byb3BlcnR5SUQgZmlyc3REZWZlcnJlZFByb3BlcnR5ID0g
Q1NTUHJvcGVydHkiIC4gJG5hbWVUb0lkeyRmaXJzdERlZmVycmVkUHJvcGVydHlOYW1lfSAuICI7
XG4iOworcHJpbnQgSEVBREVSICJjb25zdCBDU1NQcm9wZXJ0eUlEIGxhc3REZWZlcnJlZFByb3Bl
cnR5ID0gQ1NTUHJvcGVydHkiIC4gJG5hbWVUb0lkeyRsYXN0RGVmZXJyZWRQcm9wZXJ0eU5hbWV9
IC4gIjtcblxuIjsKIAogcHJpbnQgSEVBREVSICJzdGF0aWMgY29uc3QgQ1NTUHJvcGVydHlJRCBj
b21wdXRlZFByb3BlcnR5SURzW10gPSB7XG4iOwogbXkgJG51bUNvbXB1dGVkUHJvcGVydHlJRHMg
PSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0
UGF0aHMuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0UGF0aHMu
Y3BwCmluZGV4IGFhM2MyODcxYzFkZjc4NGNlYjk3Nzk3ZDRkYTAyNmFiYjM3Y2M2NjguLjM4NmQ4
MWM2ZTA2YzA1NjhmMDhiYzYyMzMyYmNjNWI5ZmU2NGYzMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2VyRmFzdFBhdGhzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlckZhc3RQYXRocy5jcHAKQEAgLTczNSw5ICs3MzUsOCBA
QCBib29sIENTU1BhcnNlckZhc3RQYXRoczo6aXNWYWxpZEtleXdvcmRQcm9wZXJ0eUFuZFZhbHVl
KENTU1Byb3BlcnR5SUQgcHJvcGVydHlJZAogICAgICAgICAvLyBhdXRvIHwgbm9uZSB8IGludGVy
LXdvcmQgfCBkaXN0cmlidXRlCiAgICAgICAgIHJldHVybiB2YWx1ZUlEID09IENTU1ZhbHVlSW50
ZXJXb3JkIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVEaXN0cmlidXRlIHx8IHZhbHVlSUQgPT0gQ1NT
VmFsdWVBdXRvIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVOb25lOwogI2VuZGlmCi0gICAgY2FzZSBD
U1NQcm9wZXJ0eVdlYmtpdFRleHRPcmllbnRhdGlvbjogLy8gbWl4ZWQgfCB1cHJpZ2h0IHwgc2lk
ZXdheXMgfCBzaWRld2F5cy1yaWdodAotICAgICAgICByZXR1cm4gdmFsdWVJRCA9PSBDU1NWYWx1
ZU1peGVkIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVVcHJpZ2h0IHx8IHZhbHVlSUQgPT0gQ1NTVmFs
dWVTaWRld2F5cyB8fCB2YWx1ZUlEID09IENTU1ZhbHVlU2lkZXdheXNSaWdodDsKICAgICBjYXNl
IENTU1Byb3BlcnR5VGV4dE9yaWVudGF0aW9uOgorICAgICAgICAvLyBtaXhlZCB8IHVwcmlnaHQg
fCBzaWRld2F5cwogICAgICAgICByZXR1cm4gdmFsdWVJRCA9PSBDU1NWYWx1ZU1peGVkIHx8IHZh
bHVlSUQgPT0gQ1NTVmFsdWVVcHJpZ2h0IHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVTaWRld2F5czsK
ICAgICBjYXNlIENTU1Byb3BlcnR5VGV4dE92ZXJmbG93OiAvLyBjbGlwIHwgZWxsaXBzaXMKICAg
ICAgICAgcmV0dXJuIHZhbHVlSUQgPT0gQ1NTVmFsdWVDbGlwIHx8IHZhbHVlSUQgPT0gQ1NTVmFs
dWVFbGxpcHNpczsKQEAgLTk4OSw3ICs5ODgsNiBAQCBib29sIENTU1BhcnNlckZhc3RQYXRoczo6
aXNLZXl3b3JkUHJvcGVydHlJRChDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SWQpCiAgICAgY2FzZSBD
U1NQcm9wZXJ0eVdlYmtpdFRleHRDb21iaW5lOgogICAgIGNhc2UgQ1NTUHJvcGVydHlUZXh0Q29t
YmluZVVwcmlnaHQ6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVRleHREZWNvcmF0aW9uU3R5bGU6Ci0g
ICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFRleHRPcmllbnRhdGlvbjoKICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0VGV4dFNlY3VyaXR5OgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRUZXh0
Wm9vbToKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0VHJhbnNmb3JtU3R5bGU6CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlckltcGwuY3BwIGIvU291cmNl
L1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXJJbXBsLmNwcAppbmRleCBjYjhmNGM4YWJiYjBl
NjNmMmQxZDI2NDZjMWFjNDc3YWZhOTU2YjUxLi5mZjRjNTUzOWE2Y2E0Zjg0ZTg0YzIyNDdmNzg0
ODZlYzI5ZWM2MGVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Bh
cnNlckltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2VySW1w
bC5jcHAKQEAgLTEyNywxMyArMTI3LDcgQEAgc3RhdGljIGlubGluZSB2b2lkIGZpbHRlclByb3Bl
cnRpZXMoYm9vbCBpbXBvcnRhbnQsIGNvbnN0IFBhcnNlZFByb3BlcnR5VmVjdG9yJgogCiAgICAg
ICAgIGlmIChzZWVuUHJvcGVydGllcy50ZXN0KHByb3BlcnR5SURJbmRleCkpCiAgICAgICAgICAg
ICBjb250aW51ZTsKLSAgICAgICAgY29uc3QgdW5zaWduZWQgcmVsYXRlZFByb3BlcnR5SWQgPSBn
ZXRSZWxhdGVkUHJvcGVydHlJZChwcm9wZXJ0eS5pZCgpKTsKLSAgICAgICAgaWYgKHByb3BlcnR5
LmlkKCkgIT0gQ1NTUHJvcGVydHlJbnZhbGlkICYmIHJlbGF0ZWRQcm9wZXJ0eUlkICE9IENTU1By
b3BlcnR5SW52YWxpZCkgewotICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgcmVsYXRlZFByb3Bl
cnR5SURJbmRleCA9IHJlbGF0ZWRQcm9wZXJ0eUlkIC0gZmlyc3RDU1NQcm9wZXJ0eTsKLSAgICAg
ICAgICAgIHNlZW5Qcm9wZXJ0aWVzLnNldChyZWxhdGVkUHJvcGVydHlJREluZGV4KTsKLSAgICAg
ICAgICAgIHNlZW5Qcm9wZXJ0aWVzLnNldChwcm9wZXJ0eUlESW5kZXgpOwotICAgICAgICB9IGVs
c2UKLSAgICAgICAgICAgIHNlZW5Qcm9wZXJ0aWVzLnNldChwcm9wZXJ0eUlESW5kZXgpOworICAg
ICAgICBzZWVuUHJvcGVydGllcy5zZXQocHJvcGVydHlJREluZGV4KTsKIAogICAgICAgICBvdXRw
dXRbLS11bnVzZWRFbnRyaWVzXSA9IHByb3BlcnR5OwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAKaW5kZXggYzVmMzQ0MTY1ZjQ2MTYy
ZmY4ZWQxMTAzYTgwYjg4YWUxOTA2MjM3Zi4uMzU5Zjg0MTI4ZGJmZTliZDUxN2ZiMzBjNmExOTIx
NGY5NWY3NzA3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9w
ZXJ0eVBhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0
eVBhcnNlci5jcHAKQEAgLTU2NDIsNiArNTY0MiwyNSBAQCBib29sIENTU1Byb3BlcnR5UGFyc2Vy
Ojpjb25zdW1lTGVnYWN5QnJlYWtQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBib29s
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK2Jvb2wgQ1NTUHJvcGVydHlQYXJzZXI6OmNvbnN1bWVM
ZWdhY3lUZXh0T3JpZW50YXRpb24oYm9vbCBpbXBvcnRhbnQpCit7CisgICAgLy8gLXdlYmtpdC10
ZXh0LW9yaWVudGF0aW9uIGlzIGEgbGVnYWN5IHNob3J0aGFuZCBmb3IgdGV4dC1vcmllbnRhdGlv
bi4KKyAgICAvLyBUaGUgb25seSBkaWZmZXJlbmNlIGlzIHRoYXQgaXQgYWNjZXB0cyAnc2lkZXdh
eXMtcmlnaHQnLCB3aGljaCBpcyBtYXBwZWQgaW50byAnc2lkZXdheXMnLgorICAgIFJlZlB0cjxD
U1NQcmltaXRpdmVWYWx1ZT4ga2V5d29yZDsKKyAgICBhdXRvIHZhbHVlSUQgPSBtX3JhbmdlLnBl
ZWsoKS5pZCgpOworICAgIGlmICh2YWx1ZUlEID09IENTU1ZhbHVlU2lkZXdheXNSaWdodCkgewor
ICAgICAgICBrZXl3b3JkID0gQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVJZGVudGlm
aWVyVmFsdWUoQ1NTVmFsdWVTaWRld2F5cyk7CisgICAgICAgIGNvbnN1bWVJZGVudFJhdyhtX3Jh
bmdlKTsKKyAgICB9IGVsc2UgaWYgKENTU1BhcnNlckZhc3RQYXRoczo6aXNWYWxpZEtleXdvcmRQ
cm9wZXJ0eUFuZFZhbHVlKENTU1Byb3BlcnR5VGV4dE9yaWVudGF0aW9uLCB2YWx1ZUlELCBtX2Nv
bnRleHQpKQorICAgICAgICBrZXl3b3JkID0gY29uc3VtZUlkZW50KG1fcmFuZ2UpOworICAgIGVs
c2UKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlmICgha2V5d29yZCB8fCAhbV9yYW5nZS5h
dEVuZCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgYWRkUHJvcGVydHkoQ1NTUHJvcGVy
dHlUZXh0T3JpZW50YXRpb24sIENTU1Byb3BlcnR5V2Via2l0VGV4dE9yaWVudGF0aW9uLCBrZXl3
b3JkLnJlbGVhc2VOb25OdWxsKCksIGltcG9ydGFudCk7CisgICAgcmV0dXJuIHRydWU7Cit9CisK
IHN0YXRpYyBib29sIGNvbnN1bWVCYWNrZ3JvdW5kUG9zaXRpb24oQ1NTUGFyc2VyVG9rZW5SYW5n
ZSYgcmFuZ2UsIGNvbnN0IENTU1BhcnNlckNvbnRleHQmIGNvbnRleHQsIENTU1Byb3BlcnR5SUQg
cHJvcGVydHksIFJlZlB0cjxDU1NWYWx1ZT4mIHJlc3VsdFgsIFJlZlB0cjxDU1NWYWx1ZT4mIHJl
c3VsdFkpCiB7CiAgICAgZG8gewpAQCAtNjQ1MCw2ICs2NDY5LDggQEAgYm9vbCBDU1NQcm9wZXJ0
eVBhcnNlcjo6cGFyc2VTaG9ydGhhbmQoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgYm9vbCBpbXBv
cnRhbnQpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdENvbHVtbkJyZWFrQmVmb3JlOgogICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRDb2x1bW5CcmVha0luc2lkZToKICAgICAgICAgcmV0dXJu
IGNvbnN1bWVMZWdhY3lCcmVha1Byb3BlcnR5KHByb3BlcnR5LCBpbXBvcnRhbnQpOworICAgIGNh
c2UgQ1NTUHJvcGVydHlXZWJraXRUZXh0T3JpZW50YXRpb246CisgICAgICAgIHJldHVybiBjb25z
dW1lTGVnYWN5VGV4dE9yaWVudGF0aW9uKGltcG9ydGFudCk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0
eU1hc2tQb3NpdGlvbjoKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWFza1Bvc2l0aW9uOgog
ICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kUG9zaXRpb246IHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuaAppbmRleCAwNDNmMjExMWRkODU0ZmI2
ODg4M2Q2ZjkyNDE0M2I1NDhiMjVmNjhmLi5lZTZjNDg3ZWFiZGM2NWZjODQ0NGMzOWQ5NzJjNzFk
YmM5Nzk3NzIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3Bl
cnR5UGFyc2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBh
cnNlci5oCkBAIC0xMTcsNiArMTE3LDcgQEAgcHJpdmF0ZToKICAgICBib29sIGNvbnN1bWVGbGV4
KGJvb2wgaW1wb3J0YW50KTsKIAogICAgIGJvb2wgY29uc3VtZUxlZ2FjeUJyZWFrUHJvcGVydHko
Q1NTUHJvcGVydHlJRCwgYm9vbCBpbXBvcnRhbnQpOworICAgIGJvb2wgY29uc3VtZUxlZ2FjeVRl
eHRPcmllbnRhdGlvbihib29sIGltcG9ydGFudCk7CiAKICAgICBib29sIGNvbnN1bWVUcmFuc2Zv
cm1PcmlnaW4oYm9vbCBpbXBvcnRhbnQpOwogICAgIGJvb2wgY29uc3VtZVBlcnNwZWN0aXZlT3Jp
Z2luKGJvb2wgaW1wb3J0YW50KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1By
b3BlcnR5Q2FzY2FkZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUu
Y3BwCmluZGV4IDkwZmVkNjE3YWY3NTZlNzczOGJjOWI1MzVkZGRhMTI4ZWUwYzAxMmYuLjU4OTg5
OGY1ODQ0MWFhZjNlODg3MDAzY2VhYTZkMzRiZTg0OTBkYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5
bGUvUHJvcGVydHlDYXNjYWRlLmNwcApAQCAtMzgsMzAgKzM4LDYgQEAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIG5hbWVzcGFjZSBTdHlsZSB7CiAKLXN0YXRpYyBpbmxpbmUgYm9vbCBzaG91bGRBcHBs
eVByb3BlcnR5SW5QYXJzZU9yZGVyKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkKLXsKLSAgICBz
d2l0Y2ggKHByb3BlcnR5SUQpIHsKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0QmFja2dyb3Vu
ZENsaXA6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRDbGlwOgotICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRCYWNrZ3JvdW5kT3JpZ2luOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNr
Z3JvdW5kT3JpZ2luOgotICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCYWNrZ3JvdW5kU2l6ZToK
LSAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZFNpemU6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0
eVdlYmtpdEJvcmRlckltYWdlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZToKLSAg
ICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VTbGljZToKLSAgICBjYXNlIENTU1Byb3BlcnR5
Qm9yZGVySW1hZ2VTb3VyY2U6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlT3V0c2V0
OgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVJlcGVhdDoKLSAgICBjYXNlIENTU1By
b3BlcnR5Qm9yZGVySW1hZ2VXaWR0aDoKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm94U2hh
ZG93OgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3hTaGFkb3c6Ci0gICAgICAgIHJldHVybiB0cnVl
OwotICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci19Ci0KIFByb3Bl
cnR5Q2FzY2FkZTo6UHJvcGVydHlDYXNjYWRlKGNvbnN0IE1hdGNoUmVzdWx0JiBtYXRjaFJlc3Vs
dCwgQ2FzY2FkZUxldmVsIG1heGltdW1DYXNjYWRlTGV2ZWwsIEluY2x1ZGVkUHJvcGVydGllcyBp
bmNsdWRlZFByb3BlcnRpZXMsIERpcmVjdGlvbiBkaXJlY3Rpb24pCiAgICAgOiBtX21hdGNoUmVz
dWx0KG1hdGNoUmVzdWx0KQogICAgICwgbV9pbmNsdWRlZFByb3BlcnRpZXMoaW5jbHVkZWRQcm9w
ZXJ0aWVzKQpAQCAtMTI3LDcgKzEwMyw3IEBAIHZvaWQgUHJvcGVydHlDYXNjYWRlOjpzZXQoQ1NT
UHJvcGVydHlJRCBpZCwgQ1NTVmFsdWUmIGNzc1ZhbHVlLCBjb25zdCBNYXRjaGVkUHJvCiAgICAg
ICAgIGlkID0gQ1NTUHJvcGVydHk6OnJlc29sdmVEaXJlY3Rpb25Bd2FyZVByb3BlcnR5KGlkLCBk
aXJlY3Rpb24udGV4dERpcmVjdGlvbiwgZGlyZWN0aW9uLndyaXRpbmdNb2RlKTsKICAgICB9CiAK
LSAgICBBU1NFUlQoIXNob3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIoaWQpKTsKKyAgICBB
U1NFUlQoaWQgPCBmaXJzdERlZmVycmVkUHJvcGVydHkpOwogCiAgICAgYXV0byYgcHJvcGVydHkg
PSBtX3Byb3BlcnRpZXNbaWRdOwogICAgIEFTU0VSVChpZCA8IG1fcHJvcGVydHlJc1ByZXNlbnQu
c2l6ZSgpKTsKQEAgLTE1OCw3ICsxMzQsNyBAQCB2b2lkIFByb3BlcnR5Q2FzY2FkZTo6c2V0KENT
U1Byb3BlcnR5SUQgaWQsIENTU1ZhbHVlJiBjc3NWYWx1ZSwgY29uc3QgTWF0Y2hlZFBybwogdm9p
ZCBQcm9wZXJ0eUNhc2NhZGU6OnNldERlZmVycmVkKENTU1Byb3BlcnR5SUQgaWQsIENTU1ZhbHVl
JiBjc3NWYWx1ZSwgY29uc3QgTWF0Y2hlZFByb3BlcnRpZXMmIG1hdGNoZWRQcm9wZXJ0aWVzLCBD
YXNjYWRlTGV2ZWwgY2FzY2FkZUxldmVsKQogewogICAgIEFTU0VSVCghQ1NTUHJvcGVydHk6Omlz
RGlyZWN0aW9uQXdhcmVQcm9wZXJ0eShpZCkpOwotICAgIEFTU0VSVChzaG91bGRBcHBseVByb3Bl
cnR5SW5QYXJzZU9yZGVyKGlkKSk7CisgICAgQVNTRVJUKGlkID49IGZpcnN0RGVmZXJyZWRQcm9w
ZXJ0eSk7CiAKICAgICBQcm9wZXJ0eSBwcm9wZXJ0eTsKICAgICBtZW1zZXQocHJvcGVydHkuY3Nz
VmFsdWUsIDAsIHNpemVvZihwcm9wZXJ0eS5jc3NWYWx1ZSkpOwpAQCAtMjExLDEwICsxODcsMTAg
QEAgYm9vbCBQcm9wZXJ0eUNhc2NhZGU6OmFkZE1hdGNoKGNvbnN0IE1hdGNoZWRQcm9wZXJ0aWVz
JiBtYXRjaGVkUHJvcGVydGllcywgQ2FzY2EKICAgICAgICAgaWYgKHByb3BlcnR5QWxsb3dsaXN0
ID09IFByb3BlcnR5QWxsb3dsaXN0OjpNYXJrZXIgJiYgIWlzVmFsaWRNYXJrZXJTdHlsZVByb3Bl
cnR5KHByb3BlcnR5SUQpKQogICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAgaWYgKHNo
b3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIocHJvcGVydHlJRCkpCi0gICAgICAgICAgICBz
ZXREZWZlcnJlZChwcm9wZXJ0eUlELCAqY3VycmVudC52YWx1ZSgpLCBtYXRjaGVkUHJvcGVydGll
cywgY2FzY2FkZUxldmVsKTsKLSAgICAgICAgZWxzZQorICAgICAgICBpZiAocHJvcGVydHlJRCA8
IGZpcnN0RGVmZXJyZWRQcm9wZXJ0eSkKICAgICAgICAgICAgIHNldChwcm9wZXJ0eUlELCAqY3Vy
cmVudC52YWx1ZSgpLCBtYXRjaGVkUHJvcGVydGllcywgY2FzY2FkZUxldmVsKTsKKyAgICAgICAg
ZWxzZQorICAgICAgICAgICAgc2V0RGVmZXJyZWQocHJvcGVydHlJRCwgKmN1cnJlbnQudmFsdWUo
KSwgbWF0Y2hlZFByb3BlcnRpZXMsIGNhc2NhZGVMZXZlbCk7CiAgICAgfQogCiAgICAgcmV0dXJu
IGhhc0ltcG9ydGFudFByb3BlcnRpZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHls
ZS9Qcm9wZXJ0eUNhc2NhZGUuaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2Fk
ZS5oCmluZGV4IDNlZTZkZjMzZDUzOTVkZTVmNWI5NGE0M2Y2MTAzNDc4MDIwN2VlZmMuLjczMDg1
YTRkZDhmOTZmNmRlNGZlYjYwMjY3ODFkMzIxMDJkNmRhNTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxl
L1Byb3BlcnR5Q2FzY2FkZS5oCkBAIC01OSw4ICs1OSw4IEBAIHB1YmxpYzoKICAgICAgICAgQ1NT
VmFsdWUqIGNzc1ZhbHVlWzNdOyAvLyBWYWx1ZXMgZm9yIGxpbmsgbWF0Y2ggc3RhdGVzIE1hdGNo
RGVmYXVsdCwgTWF0Y2hMaW5rIGFuZCBNYXRjaFZpc2l0ZWQKICAgICB9OwogCi0gICAgYm9vbCBo
YXNQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEKSBjb25zdDsKLSAgICBjb25zdCBQcm9wZXJ0eSYgcHJv
cGVydHkoQ1NTUHJvcGVydHlJRCkgY29uc3Q7CisgICAgYm9vbCBoYXNOb3JtYWxQcm9wZXJ0eShD
U1NQcm9wZXJ0eUlEKSBjb25zdDsKKyAgICBjb25zdCBQcm9wZXJ0eSYgbm9ybWFsUHJvcGVydHko
Q1NTUHJvcGVydHlJRCkgY29uc3Q7CiAKICAgICBib29sIGhhc0RlZmVycmVkUHJvcGVydHkoQ1NT
UHJvcGVydHlJRCkgY29uc3Q7CiAgICAgY29uc3QgUHJvcGVydHkmIGRlZmVycmVkUHJvcGVydHko
Q1NTUHJvcGVydHlJRCkgY29uc3Q7CkBAIC05Miw4ICs5Miw4IEBAIHByaXZhdGU6CiAgICAgbXV0
YWJsZSBEaXJlY3Rpb24gbV9kaXJlY3Rpb247CiAgICAgbXV0YWJsZSBib29sIG1fZGlyZWN0aW9u
SXNVbnJlc29sdmVkIHsgdHJ1ZSB9OwogCi0gICAgUHJvcGVydHkgbV9wcm9wZXJ0aWVzW251bUNT
U1Byb3BlcnRpZXMgKyAyXTsKLSAgICBzdGQ6OmJpdHNldDxudW1DU1NQcm9wZXJ0aWVzICsgMj4g
bV9wcm9wZXJ0eUlzUHJlc2VudDsKKyAgICBQcm9wZXJ0eSBtX3Byb3BlcnRpZXNbZmlyc3REZWZl
cnJlZFByb3BlcnR5XTsKKyAgICBzdGQ6OmJpdHNldDxmaXJzdERlZmVycmVkUHJvcGVydHk+IG1f
cHJvcGVydHlJc1ByZXNlbnQ7CiAKICAgICBWZWN0b3I8UHJvcGVydHksIDg+IG1fZGVmZXJyZWRQ
cm9wZXJ0aWVzOwogICAgIEhhc2hNYXA8Q1NTUHJvcGVydHlJRCwgdW5zaWduZWQ+IG1fZGVmZXJy
ZWRQcm9wZXJ0aWVzSW5kaWNlczsKQEAgLTEwMSwxOSArMTAxLDIxIEBAIHByaXZhdGU6CiAgICAg
SGFzaE1hcDxBdG9tU3RyaW5nLCBQcm9wZXJ0eT4gbV9jdXN0b21Qcm9wZXJ0aWVzOwogfTsKIAot
aW5saW5lIGJvb2wgUHJvcGVydHlDYXNjYWRlOjpoYXNQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIGlk
KSBjb25zdAoraW5saW5lIGJvb2wgUHJvcGVydHlDYXNjYWRlOjpoYXNOb3JtYWxQcm9wZXJ0eShD
U1NQcm9wZXJ0eUlEIGlkKSBjb25zdAogewotICAgIEFTU0VSVChpZCA8IG1fcHJvcGVydHlJc1By
ZXNlbnQuc2l6ZSgpKTsKKyAgICBBU1NFUlQoaWQgPCBmaXJzdERlZmVycmVkUHJvcGVydHkpOwog
ICAgIHJldHVybiBtX3Byb3BlcnR5SXNQcmVzZW50W2lkXTsKIH0KIAotaW5saW5lIGNvbnN0IFBy
b3BlcnR5Q2FzY2FkZTo6UHJvcGVydHkmIFByb3BlcnR5Q2FzY2FkZTo6cHJvcGVydHkoQ1NTUHJv
cGVydHlJRCBpZCkgY29uc3QKK2lubGluZSBjb25zdCBQcm9wZXJ0eUNhc2NhZGU6OlByb3BlcnR5
JiBQcm9wZXJ0eUNhc2NhZGU6Om5vcm1hbFByb3BlcnR5KENTU1Byb3BlcnR5SUQgaWQpIGNvbnN0
CiB7CisgICAgQVNTRVJUKGhhc05vcm1hbFByb3BlcnR5KGlkKSk7CiAgICAgcmV0dXJuIG1fcHJv
cGVydGllc1tpZF07CiB9CiAKIGlubGluZSBib29sIFByb3BlcnR5Q2FzY2FkZTo6aGFzRGVmZXJy
ZWRQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIGlkKSBjb25zdAogeworICAgIEFTU0VSVChpZCA+PSBm
aXJzdERlZmVycmVkUHJvcGVydHkpOwogICAgIHJldHVybiBtX2RlZmVycmVkUHJvcGVydGllc0lu
ZGljZXMuY29udGFpbnMoaWQpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHls
ZS9TdHlsZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyLmNw
cAppbmRleCA1NDNkYzAyZDEzNjFhOGE1YTE5Y2ZmYzIwMGZlMTFhN2I4Y2RlOGJkLi44NzNhZWNl
MjlmNGQ4YjY1YTZmYzAxN2M0ZTQ0MDIyMjYyMGQ5ZWVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9TdHlsZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0
eWxlQnVpbGRlci5jcHAKQEAgLTkxLDcgKzkxLDcgQEAgQnVpbGRlcjo6fkJ1aWxkZXIoKSA9IGRl
ZmF1bHQ7CiB2b2lkIEJ1aWxkZXI6OmFwcGx5QWxsUHJvcGVydGllcygpCiB7CiAgICAgYXBwbHlI
aWdoUHJpb3JpdHlQcm9wZXJ0aWVzKCk7Ci0gICAgYXBwbHlMb3dQcmlvcml0eVByb3BlcnRpZXMo
KTsKKyAgICBhcHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMoKTsKIH0KIAogLy8gSGlnaCBw
cmlvcml0eSBwcm9wZXJ0aWVzIG1heSBhZmZlY3QgcmVzb2x1dGlvbiBvZiBvdGhlciBwcm9wZXJ0
aWVzICh0aGV5IGFyZSBtb3N0bHkgZm9udCByZWxhdGVkKS4KQEAgLTEwNSwxNyArMTA1LDE3IEBA
IHZvaWQgQnVpbGRlcjo6YXBwbHlIaWdoUHJpb3JpdHlQcm9wZXJ0aWVzKCkKICAgICBhcHBseVBy
b3BlcnRpZXMoQ1NTUHJvcGVydHlDb2xvclNjaGVtZSwgQ1NTUHJvcGVydHlDb2xvclNjaGVtZSk7
CiAjZW5kaWYKIAotICAgIGFwcGx5UHJvcGVydGllcyhmaXJzdENTU1Byb3BlcnR5LCBsYXN0SGln
aFByaW9yaXR5UHJvcGVydHkpOworICAgIGFwcGx5UHJvcGVydGllcyhmaXJzdEhpZ2hQcmlvcml0
eVByb3BlcnR5LCBsYXN0SGlnaFByaW9yaXR5UHJvcGVydHkpOwogCiAgICAgbV9zdGF0ZS51cGRh
dGVGb250KCk7CiB9CiAKLXZvaWQgQnVpbGRlcjo6YXBwbHlMb3dQcmlvcml0eVByb3BlcnRpZXMo
KQordm9pZCBCdWlsZGVyOjphcHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMoKQogewogICAg
IEFTU0VSVCghbV9zdGF0ZS5mb250RGlydHkoKSk7CiAKICAgICBhcHBseUN1c3RvbVByb3BlcnRp
ZXMoKTsKLSAgICBhcHBseVByb3BlcnRpZXMoZmlyc3RMb3dQcmlvcml0eVByb3BlcnR5LCBsYXN0
Q1NTUHJvcGVydHkpOworICAgIGFwcGx5UHJvcGVydGllcyhmaXJzdExvd1ByaW9yaXR5UHJvcGVy
dHksIGxhc3RMb3dQcmlvcml0eVByb3BlcnR5KTsKICAgICBhcHBseURlZmVycmVkUHJvcGVydGll
cygpOwogCiAgICAgQVNTRVJUKCFtX3N0YXRlLmZvbnREaXJ0eSgpKTsKQEAgLTE0MCwxMCArMTQw
LDEwIEBAIGlubGluZSB2b2lkIEJ1aWxkZXI6OmFwcGx5UHJvcGVydGllc0ltcGwoaW50IGZpcnN0
UHJvcGVydHksIGludCBsYXN0UHJvcGVydHkpCiB7CiAgICAgZm9yIChpbnQgaWQgPSBmaXJzdFBy
b3BlcnR5OyBpZCA8PSBsYXN0UHJvcGVydHk7ICsraWQpIHsKICAgICAgICAgQ1NTUHJvcGVydHlJ
RCBwcm9wZXJ0eUlEID0gc3RhdGljX2Nhc3Q8Q1NTUHJvcGVydHlJRD4oaWQpOwotICAgICAgICBp
ZiAoIW1fY2FzY2FkZS5oYXNQcm9wZXJ0eShwcm9wZXJ0eUlEKSkKKyAgICAgICAgaWYgKCFtX2Nh
c2NhZGUuaGFzTm9ybWFsUHJvcGVydHkocHJvcGVydHlJRCkpCiAgICAgICAgICAgICBjb250aW51
ZTsKICAgICAgICAgQVNTRVJUKHByb3BlcnR5SUQgIT0gQ1NTUHJvcGVydHlDdXN0b20pOwotICAg
ICAgICBhdXRvJiBwcm9wZXJ0eSA9IG1fY2FzY2FkZS5wcm9wZXJ0eShwcm9wZXJ0eUlEKTsKKyAg
ICAgICAgYXV0byYgcHJvcGVydHkgPSBtX2Nhc2NhZGUubm9ybWFsUHJvcGVydHkocHJvcGVydHlJ
RCk7CiAKICAgICAgICAgaWYgKHRyYWNrQ3ljbGVzID09IEN1c3RvbVByb3BlcnR5Q3ljbGVUcmFj
a2luZzo6RW5hYmxlZCkgewogICAgICAgICAgICAgaWYgKFVOTElLRUxZKG1fc3RhdGUubV9pblBy
b2dyZXNzUHJvcGVydGllcy5nZXQocHJvcGVydHlJRCkpKSB7CkBAIC0zMTYsMTAgKzMxNiwxMiBA
QCB2b2lkIEJ1aWxkZXI6OmFwcGx5UHJvcGVydHkoQ1NTUHJvcGVydHlJRCBpZCwgQ1NTVmFsdWUm
IHZhbHVlLCBTZWxlY3RvckNoZWNrZXI6OgogICAgICAgICAgICAgICAgICAgICBhcHBseVJvbGxi
YWNrQ2FzY2FkZVByb3BlcnR5KHByb3BlcnR5LCBsaW5rTWF0Y2hNYXNrKTsKICAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0gZWxzZSBp
ZiAocm9sbGJhY2tDYXNjYWRlLT5oYXNQcm9wZXJ0eShpZCkpIHsKLSAgICAgICAgICAgICAgICBh
dXRvJiBwcm9wZXJ0eSA9IHJvbGxiYWNrQ2FzY2FkZS0+cHJvcGVydHkoaWQpOwotICAgICAgICAg
ICAgICAgIGFwcGx5Um9sbGJhY2tDYXNjYWRlUHJvcGVydHkocHJvcGVydHksIGxpbmtNYXRjaE1h
c2spOwotICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAoaWQg
PCBmaXJzdERlZmVycmVkUHJvcGVydHkpIHsKKyAgICAgICAgICAgICAgICBpZiAocm9sbGJhY2tD
YXNjYWRlLT5oYXNOb3JtYWxQcm9wZXJ0eShpZCkpIHsKKyAgICAgICAgICAgICAgICAgICAgYXV0
byYgcHJvcGVydHkgPSByb2xsYmFja0Nhc2NhZGUtPm5vcm1hbFByb3BlcnR5KGlkKTsKKyAgICAg
ICAgICAgICAgICAgICAgYXBwbHlSb2xsYmFja0Nhc2NhZGVQcm9wZXJ0eShwcm9wZXJ0eSwgbGlu
a01hdGNoTWFzayk7CisgICAgICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICB9IGVsc2UgaWYgKHJvbGxiYWNrQ2FzY2FkZS0+aGFzRGVmZXJyZWRQ
cm9wZXJ0eShpZCkpIHsKICAgICAgICAgICAgICAgICBhdXRvJiBwcm9wZXJ0eSA9IHJvbGxiYWNr
Q2FzY2FkZS0+ZGVmZXJyZWRQcm9wZXJ0eShpZCk7CiAgICAgICAgICAgICAgICAgYXBwbHlSb2xs
YmFja0Nhc2NhZGVQcm9wZXJ0eShwcm9wZXJ0eSwgbGlua01hdGNoTWFzayk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1N0eWxlQnVpbGRlci5oCmluZGV4IDYzMjVmM2JmN2Y4MWMyNjIyMjA3ZWUwMjE4Nzk0ODNi
YTY3M2Q2YmUuLjdjNzFmZDVhYzFjZDQ0NGMwNzkwZmUzYzNhMzBmOTdkYmUzYTMwMjUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlci5oCkBAIC00MCw3ICs0MCw3IEBAIHB1YmxpYzoKIAog
ICAgIHZvaWQgYXBwbHlBbGxQcm9wZXJ0aWVzKCk7CiAgICAgdm9pZCBhcHBseUhpZ2hQcmlvcml0
eVByb3BlcnRpZXMoKTsKLSAgICB2b2lkIGFwcGx5TG93UHJpb3JpdHlQcm9wZXJ0aWVzKCk7Cisg
ICAgdm9pZCBhcHBseU5vbkhpZ2hQcmlvcml0eVByb3BlcnRpZXMoKTsKIAogICAgIHZvaWQgYXBw
bHlQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQpIHsgYXBwbHlQcm9wZXJ0aWVzKHBy
b3BlcnR5SUQsIHByb3BlcnR5SUQpOyB9CiAgICAgdm9pZCBhcHBseUN1c3RvbVByb3BlcnR5KGNv
bnN0IFN0cmluZyYgbmFtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZUJ1aWxkZXJDdXN0b20uaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckN1c3Rv
bS5oCmluZGV4IGU3YWFkZGQwNGJkMjFjYjY2MDczYjMxZjI5MWFkYjc3YjgyYzAxMjUuLjYzOWUw
YWFlZGM2MjRkN2NlYzlmNjZiOWY1ZTlmODhlZTJiMjE0MWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckN1c3RvbS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1N0eWxlQnVpbGRlckN1c3RvbS5oCkBAIC0xNDgsNyArMTQ4LDYgQEAgcHVibGljOgogICAg
IHN0YXRpYyB2b2lkIGFwcGx5SW5pdGlhbFRleHRBbGlnbihCdWlsZGVyU3RhdGUmKTsKICAgICBz
dGF0aWMgdm9pZCBhcHBseVZhbHVlVGV4dEFsaWduKEJ1aWxkZXJTdGF0ZSYsIENTU1ZhbHVlJik7
CiAgICAgc3RhdGljIHZvaWQgYXBwbHlWYWx1ZVdlYmtpdExvY2FsZShCdWlsZGVyU3RhdGUmLCBD
U1NWYWx1ZSYpOwotICAgIHN0YXRpYyB2b2lkIGFwcGx5VmFsdWVXZWJraXRUZXh0T3JpZW50YXRp
b24oQnVpbGRlclN0YXRlJiwgQ1NTVmFsdWUmKTsKICAgICBzdGF0aWMgdm9pZCBhcHBseVZhbHVl
VGV4dE9yaWVudGF0aW9uKEJ1aWxkZXJTdGF0ZSYsIENTU1ZhbHVlJik7CiAjaWYgRU5BQkxFKFRF
WFRfQVVUT1NJWklORykKICAgICBzdGF0aWMgdm9pZCBhcHBseVZhbHVlV2Via2l0VGV4dFNpemVB
ZGp1c3QoQnVpbGRlclN0YXRlJiwgQ1NTVmFsdWUmKTsKQEAgLTg5MCwxMSArODg5LDYgQEAgaW5s
aW5lIHZvaWQgQnVpbGRlckN1c3RvbTo6YXBwbHlWYWx1ZVdyaXRpbmdNb2RlKEJ1aWxkZXJTdGF0
ZSYgYnVpbGRlclN0YXRlLCBDU1MKICAgICBidWlsZGVyU3RhdGUuc3R5bGUoKS5zZXRIYXNFeHBs
aWNpdGx5U2V0V3JpdGluZ01vZGUodHJ1ZSk7CiB9CiAKLWlubGluZSB2b2lkIEJ1aWxkZXJDdXN0
b206OmFwcGx5VmFsdWVXZWJraXRUZXh0T3JpZW50YXRpb24oQnVpbGRlclN0YXRlJiBidWlsZGVy
U3RhdGUsIENTU1ZhbHVlJiB2YWx1ZSkKLXsKLSAgICBidWlsZGVyU3RhdGUuc2V0VGV4dE9yaWVu
dGF0aW9uKGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPih2YWx1ZSkpOwotfQotCiBpbmxpbmUg
dm9pZCBCdWlsZGVyQ3VzdG9tOjphcHBseVZhbHVlVGV4dE9yaWVudGF0aW9uKEJ1aWxkZXJTdGF0
ZSYgYnVpbGRlclN0YXRlLCBDU1NWYWx1ZSYgdmFsdWUpCiB7CiAgICAgYnVpbGRlclN0YXRlLnNl
dFRleHRPcmllbnRhdGlvbihkb3duY2FzdDxDU1NQcmltaXRpdmVWYWx1ZT4odmFsdWUpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUmVzb2x2ZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvc3R5bGUvU3R5bGVSZXNvbHZlci5jcHAKaW5kZXggYzYzZDBlNTkzNDIyNjg3Nzgy
OGU2ZjBmMWMyYWUxN2NjZTQ4ZGZhMC4uNTBkNmM1NDcyOTA0MjhjMWYyMTA0NTc3OWM0MTA4OGU5
NjA4NzdmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVSZXNvbHZlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVSZXNvbHZlci5jcHAKQEAgLTYyMyw3
ICs2MjMsNyBAQCB2b2lkIFJlc29sdmVyOjphcHBseU1hdGNoZWRQcm9wZXJ0aWVzKFN0YXRlJiBz
dGF0ZSwgY29uc3QgTWF0Y2hSZXN1bHQmIG1hdGNoUmVzdQogICAgICAgICByZXR1cm47CiAgICAg
fQogCi0gICAgYnVpbGRlci5hcHBseUxvd1ByaW9yaXR5UHJvcGVydGllcygpOworICAgIGJ1aWxk
ZXIuYXBwbHlOb25IaWdoUHJpb3JpdHlQcm9wZXJ0aWVzKCk7CiAKICAgICBmb3IgKGF1dG8mIGNv
bnRlbnRBdHRyaWJ1dGUgOiBidWlsZGVyLnN0YXRlKCkucmVnaXN0ZXJlZENvbnRlbnRBdHRyaWJ1
dGVzKCkpCiAgICAgICAgIHJ1bGVTZXRzKCkubXV0YWJsZUZlYXR1cmVzKCkucmVnaXN0ZXJDb250
ZW50QXR0cmlidXRlKGNvbnRlbnRBdHRyaWJ1dGUpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGE0ODc3ZDY5NDQzMTk4Y2E4
MDRlZDkxZmYzOTVhMTY5NGYyYTI2MzYuLjc4NmE5ZGI3ZDU2MzgyYjI1YTZhN2JkYWM2YzU2Zjlm
YjBhM2FiOGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAyMi0wMy0yNSAgT3Jpb2wgQnJ1ZmF1
ICA8b2JydWZhdUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3NdIFR1cm4gLXdlYmtpdC10ZXh0
LW9yaWVudGF0aW9uIGludG8gYSBsZWdhY3kgc2hvcnRoYW5kCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzgzNTYKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9u
LXBhcnNlLWNvbXBldGl0aW9uLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L3RleHQvdGV4
dC1vcmllbnRhdGlvbi1wYXJzZS1jb21wZXRpdGlvbi5odG1sOgorICAgICAgICBDaGVjayB0aGF0
IGlmIGEgc3R5bGVzaGVldCBzcGVjaWZpZXMgYm90aCAtd2Via2l0LXRleHQtb3JpZW50YXRpb24g
YW5kCisgICAgICAgIHRleHQtb3JpZW50YXRpb24gZm9yIHRoZSBzYW1lIGVsZW1lbnQsIHRoZSBs
YXN0IHNwZWNpZmllZCBvbmUgd2lucy4KKworICAgICAgICAqIGZhc3QvdGV4dC90ZXh0LW9yaWVu
dGF0aW9uLXBhcnNlLXN0eWxlc2hlZXQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvdGV4
dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLXN0eWxlc2hlZXQuaHRtbDoKKyAgICAgICAgQ2hlY2sg
dGhhdCBvbmx5IC13ZWJraXQtdGV4dC1vcmllbnRhdGlvbiBhY2NlcHRzIGBzaWRld2F5cy1yaWdo
dGAsIGFuZAorICAgICAgICB0aGF0IGl0J3MgbWFwcGVkIHRvIGBzaWRld2F5c2AgYXQgcGFyc2Ug
dGltZS4KKwogMjAyMi0wMy0yMyAgWmlyYW4gU3VuICA8enN1bkBpZ2FsaWEuY29tPgogCiAgICAg
ICAgIFtJbnB1dEVsZW1lbnRdIEFkZCBIVE1MSW5wdXRFbGVtZW50OjpzaG93UGlja2VyKCkgbWV0
aG9kCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdGV4dC1vcmllbnRhdGlvbi1w
YXJzZS1jb21wZXRpdGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdGV4
dC1vcmllbnRhdGlvbi1wYXJzZS1jb21wZXRpdGlvbi1leHBlY3RlZC50eHQKaW5kZXggNmE2YWIx
ZDU0MmY2NmJhYjc3ZGY5MjEyMmFlNDkwNWIzNzY0Mzk2NS4uNmFlMGQ2NmZkMGUwMGI5ODc1MTc1
MzJkNWYwN2MyNjAyMjNkYzYzNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3Rl
eHQtb3JpZW50YXRpb24tcGFyc2UtY29tcGV0aXRpb24tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLWNvbXBldGl0aW9uLWV4cGVj
dGVkLnR4dApAQCAtMSw5ICsxLDIxIEBACiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MScpKS53ZWJraXRUZXh0T3JpZW50YXRpb24gaXMg
InVwcmlnaHQiCiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCd0ZXN0MicpKS53ZWJraXRUZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQiCitQQVNT
IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0Mycp
KS53ZWJraXRUZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQiCitQQVNTIHdpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NCcpKS53ZWJraXRUZXh0T3Jp
ZW50YXRpb24gaXMgInVwcmlnaHQiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NScpKS53ZWJraXRUZXh0T3JpZW50YXRpb24gaXMgInVw
cmlnaHQiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd0ZXN0NicpKS53ZWJraXRUZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQiCiBQQVNTIHdp
bmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MScpKS50
ZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQiCiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxl
KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MicpKS50ZXh0T3JpZW50YXRpb24gaXMgInVw
cmlnaHQiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd0ZXN0MycpKS50ZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQiCitQQVNTIHdpbmRvdy5n
ZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NCcpKS50ZXh0T3Jp
ZW50YXRpb24gaXMgInVwcmlnaHQiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NScpKS50ZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQi
CitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0
ZXN0NicpKS50ZXh0T3JpZW50YXRpb24gaXMgInVwcmlnaHQiCiBQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKIOS9oOWlvUFCQwog5L2g5aW9QUJDCivkvaDl
pb1BQkMKK+S9oOWlvUFCQwor5L2g5aW9QUJDCivkvaDlpb1BQkMKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLWNvbXBldGl0aW9uLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdGV4dC1vcmllbnRhdGlvbi1wYXJzZS1jb21wZXRpdGlv
bi5odG1sCmluZGV4IDEwODBiNzIzMjA0YjZiOTQ2NjE0NWQzOWJlMzM3YzA4NWJlNzJiYzEuLjk3
MWMxYjEzMzAwYjkzMWJkYjk5ZmZjNGI2YWRiYThmNzhkYzk5MDkgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLWNvbXBldGl0aW9uLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3RleHQtb3JpZW50YXRpb24tcGFyc2UtY29tcGV0
aXRpb24uaHRtbApAQCAtMiwxNiArMiwzOSBAQAogPGh0bWw+CiAJPGhlYWQ+CiAJPG1ldGEgY2hh
cnNldD0idXRmLTgiPgorCTxzdHlsZT4KKwkJI3Rlc3QzIHsgLXdlYmtpdC10ZXh0LW9yaWVudGF0
aW9uOiBzaWRld2F5czsgdGV4dC1vcmllbnRhdGlvbjogdXByaWdodDsgfQorCisJCSN0ZXN0NCB7
IHRleHQtb3JpZW50YXRpb246IHNpZGV3YXlzOyAtd2Via2l0LXRleHQtb3JpZW50YXRpb246IHVw
cmlnaHQ7IH0KKworCQkjdGVzdDUgeyAtd2Via2l0LXRleHQtb3JpZW50YXRpb246IHNpZGV3YXlz
OyB9CisJCSN0ZXN0NSB7IHRleHQtb3JpZW50YXRpb246IHVwcmlnaHQ7IH0KKworCQkjdGVzdDYg
eyB0ZXh0LW9yaWVudGF0aW9uOiBzaWRld2F5czsgfQorCQkjdGVzdDYgeyAtd2Via2l0LXRleHQt
b3JpZW50YXRpb246IHVwcmlnaHQ7IH0KKwk8L3N0eWxlPgogCTxzY3JpcHQgc3JjPSIuLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgogCTwvaGVhZD4KIAk8Ym9keT4KIAkJ
PGRpdiBpZD0idGVzdDEiIHN0eWxlPSItd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7
IC13ZWJraXQtdGV4dC1vcmllbnRhdGlvbjogc2lkZXdheXM7IHRleHQtb3JpZW50YXRpb246IHVw
cmlnaHQiPuS9oOWlvUFCQzwvZGl2PgogCQk8ZGl2IGlkPSJ0ZXN0MiIgc3R5bGU9Ii13ZWJraXQt
d3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDsgdGV4dC1vcmllbnRhdGlvbjogc2lkZXdheXM7IC13
ZWJraXQtdGV4dC1vcmllbnRhdGlvbjogdXByaWdodCI+5L2g5aW9QUJDPC9kaXY+CisJCTxkaXYg
aWQ9InRlc3QzIiBzdHlsZT0iLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsIj7kvaDl
pb1BQkM8L2Rpdj4KKwkJPGRpdiBpZD0idGVzdDQiIHN0eWxlPSItd2Via2l0LXdyaXRpbmctbW9k
ZTogdmVydGljYWwtcmwiPuS9oOWlvUFCQzwvZGl2PgorCQk8ZGl2IGlkPSJ0ZXN0NSIgc3R5bGU9
Ii13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybCI+5L2g5aW9QUJDPC9kaXY+CisJCTxk
aXYgaWQ9InRlc3Q2IiBzdHlsZT0iLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsIj7k
vaDlpb1BQkM8L2Rpdj4KIAkJPHNjcmlwdD4KIAkJCXNob3VsZEJlRXF1YWxUb1N0cmluZygid2lu
ZG93LmdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3QxJykpLndl
YmtpdFRleHRPcmllbnRhdGlvbiIsICJ1cHJpZ2h0Iik7CiAJCQlzaG91bGRCZUVxdWFsVG9TdHJp
bmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0
MicpKS53ZWJraXRUZXh0T3JpZW50YXRpb24iLCAidXByaWdodCIpOworCQkJc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgndGVzdDMnKSkud2Via2l0VGV4dE9yaWVudGF0aW9uIiwgInVwcmlnaHQiKTsKKwkJCXNob3Vs
ZEJlRXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ3Rlc3Q0JykpLndlYmtpdFRleHRPcmllbnRhdGlvbiIsICJ1cHJpZ2h0Iik7CisJ
CQlzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCd0ZXN0NScpKS53ZWJraXRUZXh0T3JpZW50YXRpb24iLCAidXByaWdo
dCIpOworCQkJc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdDYnKSkud2Via2l0VGV4dE9yaWVudGF0aW9uIiwg
InVwcmlnaHQiKTsKIAkJCXNob3VsZEJlRXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVk
U3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3QxJykpLnRleHRPcmllbnRhdGlvbiIs
ICJ1cHJpZ2h0Iik7CiAJCQlzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRl
ZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MicpKS50ZXh0T3JpZW50YXRpb24i
LCAidXByaWdodCIpOworCQkJc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0
ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdDMnKSkudGV4dE9yaWVudGF0aW9u
IiwgInVwcmlnaHQiKTsKKwkJCXNob3VsZEJlRXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1
dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q0JykpLnRleHRPcmllbnRhdGlv
biIsICJ1cHJpZ2h0Iik7CisJCQlzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NScpKS50ZXh0T3JpZW50YXRp
b24iLCAidXByaWdodCIpOworCQkJc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29t
cHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdDYnKSkudGV4dE9yaWVudGF0
aW9uIiwgInVwcmlnaHQiKTsKIAkJPC9zY3JpcHQ+CiAJCTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KIAk8L2JvZHk+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3RleHQvdGV4dC1vcmllbnRhdGlvbi1wYXJzZS1zdHlsZXNoZWV0LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNl
LXN0eWxlc2hlZXQtZXhwZWN0ZWQudHh0CmluZGV4IGE1MjUyNDEwZjY4YjMxY2I0NDdiNTJlMjAz
M2JjYzVjNjI0YzU1ZWMuLjZmY2JkNWRhZGM2Y2U1ZmE0NTA4OGZkYzg1MTYxMDBkNmI2MjdlMWQg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNl
LXN0eWxlc2hlZXQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0
LW9yaWVudGF0aW9uLXBhcnNlLXN0eWxlc2hlZXQtZXhwZWN0ZWQudHh0CkBAIC0zLDEzICszLDE3
IEBAIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3QyJykuc2hlZXQuY3NzUnVsZXNb
MF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCd0ZXN0MycpLnNoZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ3RleHQt
b3JpZW50YXRpb24nKSBpcyAidXByaWdodCIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3Rlc3Q0Jykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgndGV4dC1v
cmllbnRhdGlvbicpIGlzICJtaXhlZCIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rl
c3Q1Jykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgndGV4dC1vcmll
bnRhdGlvbicpIGlzICJtaXhlZCIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q2
Jykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgndGV4dC1vcmllbnRh
dGlvbicpIGlzICJzaWRld2F5cyIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q3
Jykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgndGV4dC1vcmllbnRh
dGlvbicpIGlzICJzaWRld2F5cyIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q4
Jykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgndGV4dC1vcmllbnRh
dGlvbicpIGlzICIiCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MScpLnNoZWV0
LmNzc1J1bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtdGV4dC1vcmllbnRh
dGlvbicpIGlzICJ1cHJpZ2h0IgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdDIn
KS5zaGVldC5jc3NSdWxlc1swXS5zdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXRleHQt
b3JpZW50YXRpb24nKSBpcyAidXByaWdodCIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3Rlc3QzJykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC10ZXh0LW9yaWVudGF0aW9uJykgaXMgInVwcmlnaHQiCiBQQVNTIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCd0ZXN0NCcpLnNoZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtdGV4dC1vcmllbnRhdGlvbicpIGlzICJtaXhlZCIKIFBBU1MgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3Rlc3Q1Jykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uJykgaXMgIm1peGVkIgogUEFTUyBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgndGVzdDYnKS5zaGVldC5jc3NSdWxlc1swXS5zdHlsZS5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LXRleHQtb3JpZW50YXRpb24nKSBpcyAic2lkZXdheXMiCi1QQVNT
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NicpLnNoZWV0LmNzc1J1bGVzWzBdLnN0eWxl
LmdldFByb3BlcnR5VmFsdWUoJ3RleHQtb3JpZW50YXRpb24nKSBpcyAic2lkZXdheXMiCitQQVNT
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NycpLnNoZWV0LmNzc1J1bGVzWzBdLnN0eWxl
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtdGV4dC1vcmllbnRhdGlvbicpIGlzICJzaWRld2F5
cyIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q4Jykuc2hlZXQuY3NzUnVsZXNb
MF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uJykgaXMg
IiIKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3RleHQtb3JpZW50YXRpb24tcGFyc2Utc3R5
bGVzaGVldC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3RleHQtb3JpZW50YXRpb24tcGFy
c2Utc3R5bGVzaGVldC5odG1sCmluZGV4IDVjNTI0MjNhODBjNWZhYjg2YTkwMWJlZGU0Y2U4ZmY4
OTllZjk1NDUuLjM4NGQ3MjkwYjNlMDM0NjJjMGE3NzJkNTU2MzExYTZlNDhkNTM0NDUgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LW9yaWVudGF0aW9uLXBhcnNlLXN0eWxl
c2hlZXQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdGV4dC1vcmllbnRhdGlvbi1w
YXJzZS1zdHlsZXNoZWV0Lmh0bWwKQEAgLTExLDYgKzExLDkgQEAKIAkJPHN0eWxlIGlkPSJ0ZXN0
NCI+IGR1bW15IHsgdGV4dC1vcmllbnRhdGlvbjogdXByaWdodDsgLXdlYmtpdC10ZXh0LW9yaWVu
dGF0aW9uOiBtaXhlZDt9IDwvc3R5bGU+CiAJCTxzdHlsZSBpZD0idGVzdDUiPiBkdW1teSB7IC13
ZWJraXQtdGV4dC1vcmllbnRhdGlvbjogdXByaWdodDsgdGV4dC1vcmllbnRhdGlvbjogbWl4ZWQ7
fSA8L3N0eWxlPgogCQk8c3R5bGUgaWQ9InRlc3Q2Ij4gZHVtbXkgeyAtd2Via2l0LXRleHQtb3Jp
ZW50YXRpb246IHVwcmlnaHQ7IHRleHQtb3JpZW50YXRpb246IG1peGVkOyAtd2Via2l0LXRleHQt
b3JpZW50YXRpb246IHNpZGV3YXlzO30gPC9zdHlsZT4KKwkJPHN0eWxlIGlkPSJ0ZXN0NyI+IGR1
bW15IHsgLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uOiBzaWRld2F5cy1yaWdodDt9IDwvc3R5bGU+
CisJCTxzdHlsZSBpZD0idGVzdDgiPiBkdW1teSB7IHRleHQtb3JpZW50YXRpb246IHNpZGV3YXlz
LXJpZ2h0O30gPC9zdHlsZT4KKwogCiAJCTxzY3JpcHQ+CiAJCQlzaG91bGRCZUVxdWFsVG9TdHJp
bmcoImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MScpLnNoZWV0LmNzc1J1bGVzWzBdLnN0
eWxlLmdldFByb3BlcnR5VmFsdWUoJ3RleHQtb3JpZW50YXRpb24nKSIsICJ1cHJpZ2h0Iik7CkBA
IC0xOCwxNyArMjEsMTggQEAKIAkJCXNob3VsZEJlRXF1YWxUb1N0cmluZygiZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3Rlc3QzJykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgndGV4dC1vcmllbnRhdGlvbicpIiwgInVwcmlnaHQiKTsKIAkJCXNob3VsZEJlRXF1YWxU
b1N0cmluZygiZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q0Jykuc2hlZXQuY3NzUnVsZXNb
MF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgndGV4dC1vcmllbnRhdGlvbicpIiwgIm1peGVkIik7
CiAJCQlzaG91bGRCZUVxdWFsVG9TdHJpbmcoImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0
NScpLnNoZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ3RleHQtb3JpZW50
YXRpb24nKSIsICJtaXhlZCIpOworCQkJc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgndGVzdDYnKS5zaGVldC5jc3NSdWxlc1swXS5zdHlsZS5nZXRQcm9wZXJ0
eVZhbHVlKCd0ZXh0LW9yaWVudGF0aW9uJykiLCAic2lkZXdheXMiKTsKKwkJCXNob3VsZEJlRXF1
YWxUb1N0cmluZygiZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q3Jykuc2hlZXQuY3NzUnVs
ZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgndGV4dC1vcmllbnRhdGlvbicpIiwgInNpZGV3
YXlzIik7CisJCQlzaG91bGRCZUVxdWFsVG9TdHJpbmcoImRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCd0ZXN0OCcpLnNoZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ3RleHQt
b3JpZW50YXRpb24nKSIsICIiKTsKIAogCQkJc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgndGVzdDEnKS5zaGVldC5jc3NSdWxlc1swXS5zdHlsZS5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LXRleHQtb3JpZW50YXRpb24nKSIsICJ1cHJpZ2h0Iik7CiAJCQlz
aG91bGRCZUVxdWFsVG9TdHJpbmcoImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0MicpLnNo
ZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtdGV4dC1vcmll
bnRhdGlvbicpIiwgInVwcmlnaHQiKTsKIAkJCXNob3VsZEJlRXF1YWxUb1N0cmluZygiZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3QzJykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uJykiLCAidXByaWdodCIpOwogCQkJ
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdDQnKS5z
aGVldC5jc3NSdWxlc1swXS5zdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXRleHQtb3Jp
ZW50YXRpb24nKSIsICJtaXhlZCIpOwogCQkJc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgndGVzdDUnKS5zaGVldC5jc3NSdWxlc1swXS5zdHlsZS5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LXRleHQtb3JpZW50YXRpb24nKSIsICJtaXhlZCIpOwotCiAJCQlz
aG91bGRCZUVxdWFsVG9TdHJpbmcoImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NicpLnNo
ZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtdGV4dC1vcmll
bnRhdGlvbicpIiwgInNpZGV3YXlzIik7Ci0JCQlzaG91bGRCZUVxdWFsVG9TdHJpbmcoImRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0NicpLnNoZWV0LmNzc1J1bGVzWzBdLnN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJ3RleHQtb3JpZW50YXRpb24nKSIsICJzaWRld2F5cyIpOwotCi0KKwkJCXNo
b3VsZEJlRXF1YWxUb1N0cmluZygiZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q3Jykuc2hl
ZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC10ZXh0LW9yaWVu
dGF0aW9uJykiLCAic2lkZXdheXMiKTsKKwkJCXNob3VsZEJlRXF1YWxUb1N0cmluZygiZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q4Jykuc2hlZXQuY3NzUnVsZXNbMF0uc3R5bGUuZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC10ZXh0LW9yaWVudGF0aW9uJykiLCAiIik7CiAJCTwvc2NyaXB0
PgogCiAJCTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>