<?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>210622</bug_id>
          
          <creation_ts>2020-04-16 15:23:36 -0700</creation_ts>
          <short_desc>Oversized caret and selection rects in text fields on ganji.com and netflix.com/login</short_desc>
          <delta_ts>2022-06-01 08:28:45 -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>HTML Editing</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>bdakin</cc>
    
    <cc>bfulgham</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>pdr</cc>
    
    <cc>rniwa</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1642453</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-04-16 15:23:36 -0700</bug_when>
    <thetext>&lt;rdar://problem/45945636&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642456</commentid>
    <comment_count>1</comment_count>
      <attachid>396709</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-04-16 15:28:49 -0700</bug_when>
    <thetext>Created attachment 396709
Not for review</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642962</commentid>
    <comment_count>2</comment_count>
      <attachid>396840</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-04-18 00:29:26 -0700</bug_when>
    <thetext>Created attachment 396840
Fixes the bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642972</commentid>
    <comment_count>3</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-04-18 06:52:43 -0700</bug_when>
    <thetext>Could you attach a simple test case, please (I can&apos;t tell from the test case which div is behaving correctly and which one is not)? I&apos;d like to debug this a bit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642980</commentid>
    <comment_count>4</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-04-18 07:47:25 -0700</bug_when>
    <thetext>(In reply to zalan from comment #3)
&gt; Could you attach a simple test case, please (I can&apos;t tell from the test case
&gt; which div is behaving correctly and which one is not)? I&apos;d like to debug
&gt; this a bit.

Sure! There’s not much to the minimal repro case; it’s just an editable root with a line height larger than the font size.

E.g., data:text/html,&lt;input style=&quot;line-height: 10em&quot;&gt;

Both when the field is initially focused and when it has text, the caret height should be about the same as the font size. Currently, it is not (the height when the field is empty is the height of the field, and then it changes to be come ≈ font height + (line height / 2) once text is entered.

In my test case, all text fields except for id=&quot;vertical” exhibit the undesired behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642981</commentid>
    <comment_count>5</comment_count>
      <attachid>396847</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-04-18 07:48:52 -0700</bug_when>
    <thetext>Created attachment 396847
Minimal repro case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642982</commentid>
    <comment_count>6</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-04-18 07:51:36 -0700</bug_when>
    <thetext>It looks like the caret is not sitting on the baseline (initially).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642991</commentid>
    <comment_count>7</comment_count>
      <attachid>396850</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-04-18 08:17:51 -0700</bug_when>
    <thetext>Created attachment 396850
More rebaselining</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642992</commentid>
    <comment_count>8</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-04-18 08:18:59 -0700</bug_when>
    <thetext>(In reply to zalan from comment #6)
&gt; It looks like the caret is not sitting on the baseline (initially).

If it helps at all, we go through a different codepath (RenderBoxModelObject::localCaretRectForEmptyElement) when computing the caret rect in this case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643463</commentid>
    <comment_count>9</comment_count>
      <attachid>396850</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-04-20 08:44:07 -0700</bug_when>
    <thetext>Comment on attachment 396850
More rebaselining

Thanks for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643464</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-20 08:53:53 -0700</bug_when>
    <thetext>Committed r260367: &lt;https://trac.webkit.org/changeset/260367&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 396850.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1873309</commentid>
    <comment_count>11</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2022-06-01 08:28:45 -0700</bug_when>
    <thetext>*** Bug 126193 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396709</attachid>
            <date>2020-04-16 15:28:49 -0700</date>
            <delta_ts>2020-04-16 16:58:18 -0700</delta_ts>
            <desc>Not for review</desc>
            <filename>bug-210622-20200416152849.patch</filename>
            <type>text/plain</type>
            <size>4427</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwMTU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTJmNTQ0MThjZDBhOTVi
NmNkMTdjNDljNzNhMDc2NTBhNWRiMzAwYi4uMDNiZjE2MzE1ZGU5MmE4MjE5Y2U4NzNkN2ZkYjQ1
OWEyODI5NGY1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIwLTA0LTE2ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIE92ZXJzaXplZCBj
YXJldCBhbmQgc2VsZWN0aW9uIHJlY3RzIGluIHRleHQgZmllbGRzIG9uIGdhbmppLmNvbSBhbmQg
bmV0ZmxpeC5jb20vbG9naW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxMDYyMgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDU5NDU2MzY+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdCBwYXRjaCBm
b3IgRVdTLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyAodGhpcyBpcyBnb2luZyB0byBuZWVkIHRv
bnMgb2YgcmViYXNlbGluaW5nKS4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCb3hNb2Rl
bE9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3hNb2RlbE9iamVjdDo6bG9j
YWxDYXJldFJlY3RGb3JFbXB0eUVsZW1lbnQpOgorICAgICAgICAqIHJlbmRlcmluZy9Sb290SW5s
aW5lQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJvb3RJbmxpbmVCb3g6OmNvbXB1dGVDYXJl
dFJlY3QgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Um9vdElubGluZUJveDo6c2VsZWN0aW9u
VG9wIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJvb3RJbmxpbmVCb3g6OnNlbGVjdGlvbkJv
dHRvbSBjb25zdCk6CisKIDIwMjAtMDQtMTUgIEphY2sgTGVlICA8c2hpaGNoaWVoX2xlZUBhcHBs
ZS5jb20+CiAKICAgICAgICAgQVNTRVJUSU9OIEZBSUxFRDogIXNlbGVjdGlvblRvRGVsZXRlLmlz
Tm9uZSgpIGluIFR5cGluZ0NvbW1hbmQ6OmZvcndhcmREZWxldGVLZXlQcmVzc2VkCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcAppbmRleCBi
OWY5YjRhYzY5Zjk1Yzc5OGIwN2U3ZjU3MWU5MTkyM2Q4ZGI1NWI1Li5iZDY0YzU1M2I3ZTk0NjQx
MDI2MDE0NjdjYTA0ZjI3MWFlNTZmOWRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAKQEAgLTI1OTcsNyArMjU5Nyw2IEBAIExheW91
dFJlY3QgUmVuZGVyQm94TW9kZWxPYmplY3Q6OmxvY2FsQ2FyZXRSZWN0Rm9yRW1wdHlFbGVtZW50
KExheW91dFVuaXQgd2lkdGgsCiAgICAgLy8gY29uc3RydWN0ZWQgYW5kIHRoaXMga2x1ZGdlIGlz
IG5vdCBjYWxsZWQgYW55IG1vcmUuIFNvIG9ubHkgdGhlIGNhcmV0IHNpemUKICAgICAvLyBvZiBh
biBlbXB0eSA6Zmlyc3QtbGluZSdkIGJsb2NrIGlzIHdyb25nLiBJIHRoaW5rIHdlIGNhbiBsaXZl
IHdpdGggdGhhdC4KICAgICBjb25zdCBSZW5kZXJTdHlsZSYgY3VycmVudFN0eWxlID0gZmlyc3RM
aW5lU3R5bGUoKTsKLSAgICBMYXlvdXRVbml0IGhlaWdodCA9IGxpbmVIZWlnaHQodHJ1ZSwgY3Vy
cmVudFN0eWxlLmlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkgPyBIb3Jpem9udGFsTGluZSA6IFZl
cnRpY2FsTGluZSk7CiAKICAgICBlbnVtIENhcmV0QWxpZ25tZW50IHsgYWxpZ25MZWZ0LCBhbGln
blJpZ2h0LCBhbGlnbkNlbnRlciB9OwogCkBAIC0yNjQ5LDcgKzI2NDgsOSBAQCBMYXlvdXRSZWN0
IFJlbmRlckJveE1vZGVsT2JqZWN0Ojpsb2NhbENhcmV0UmVjdEZvckVtcHR5RWxlbWVudChMYXlv
dXRVbml0IHdpZHRoLAogICAgIH0KICAgICB4ID0gc3RkOjptaW4oeCwgc3RkOjptYXg8TGF5b3V0
VW5pdD4obWF4WCAtIGNhcmV0V2lkdGgsIDApKTsKIAotICAgIExheW91dFVuaXQgeSA9IHBhZGRp
bmdUb3AoKSArIGJvcmRlclRvcCgpOworICAgIGF1dG8gaGVpZ2h0ID0gY3VycmVudFN0eWxlLmZv
bnRNZXRyaWNzKCkuaGVpZ2h0KCk7CisgICAgYXV0byBsaW5lSGVpZ2h0ID0gdGhpcy0+bGluZUhl
aWdodCh0cnVlLCBjdXJyZW50U3R5bGUuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSA/IEhvcml6
b250YWxMaW5lIDogVmVydGljYWxMaW5lKTsKKyAgICBhdXRvIHkgPSBwYWRkaW5nVG9wKCkgKyBi
b3JkZXJUb3AoKSArIGxpbmVIZWlnaHQgPiBoZWlnaHQgPyAobGluZUhlaWdodCAtIGhlaWdodCkg
LyAyIDogTGF5b3V0VW5pdCB7IH07CiAKICAgICByZXR1cm4gY3VycmVudFN0eWxlLmlzSG9yaXpv
bnRhbFdyaXRpbmdNb2RlKCkgPyBMYXlvdXRSZWN0KHgsIHksIGNhcmV0V2lkdGgsIGhlaWdodCkg
OiBMYXlvdXRSZWN0KHksIHgsIGhlaWdodCwgY2FyZXRXaWR0aCk7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUm9vdElubGluZUJveC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUm9vdElubGluZUJveC5jcHAKaW5kZXggMzY0OTI2MzM4NTY5YTExYmZlZDM3
NTkyMDI4NzkzODU4ZTg1NTlmZi4uNzllMzk2YjFlNjRjNmExYjE1ZGU1NDY3NTZjN2I5NzU2ZTRm
OGQwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVCb3gu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9Sb290SW5saW5lQm94LmNwcApAQCAt
NDc2LDggKzQ3Niw5IEBAIEdhcFJlY3RzIFJvb3RJbmxpbmVCb3g6OmxpbmVTZWxlY3Rpb25HYXAo
UmVuZGVyQmxvY2smIHJvb3RCbG9jaywgY29uc3QgTGF5b3V0UG9pCiAKIEludFJlY3QgUm9vdElu
bGluZUJveDo6Y29tcHV0ZUNhcmV0UmVjdChmbG9hdCBsb2dpY2FsTGVmdFBvc2l0aW9uLCB1bnNp
Z25lZCBjYXJldFdpZHRoLCBMYXlvdXRVbml0KiBleHRyYVdpZHRoVG9FbmRPZkxpbmUpIGNvbnN0
CiB7Ci0gICAgaW50IGhlaWdodCA9IHNlbGVjdGlvbkhlaWdodCgpOwotICAgIGludCB0b3AgPSBz
ZWxlY3Rpb25Ub3AoKTsKKyAgICBhdXRvJiBibG9ja1N0eWxlID0gYmxvY2tGbG93KCkuc3R5bGUo
KTsKKyAgICBpbnQgaGVpZ2h0ID0gYmxvY2tTdHlsZS5mb250TWV0cmljcygpLmhlaWdodCgpOwor
ICAgIGludCB0b3AgPSBsb2dpY2FsVG9wKCk7CiAKICAgICAvLyBEaXN0cmlidXRlIHRoZSBjYXJl
dCdzIHdpZHRoIHRvIGVpdGhlciBzaWRlIG9mIHRoZSBvZmZzZXQuCiAgICAgZmxvYXQgbGVmdCA9
IGxvZ2ljYWxMZWZ0UG9zaXRpb247CkBAIC00OTIsOCArNDkzLDYgQEAgSW50UmVjdCBSb290SW5s
aW5lQm94Ojpjb21wdXRlQ2FyZXRSZWN0KGZsb2F0IGxvZ2ljYWxMZWZ0UG9zaXRpb24sIHVuc2ln
bmVkIGNhcmUKICAgICBpZiAoZXh0cmFXaWR0aFRvRW5kT2ZMaW5lKQogICAgICAgICAqZXh0cmFX
aWR0aFRvRW5kT2ZMaW5lID0gKGxvZ2ljYWxXaWR0aCgpICsgcm9vdExlZnQpIC0gKGxlZnQgKyBj
YXJldFdpZHRoKTsKIAotICAgIGNvbnN0IFJlbmRlclN0eWxlJiBibG9ja1N0eWxlID0gYmxvY2tG
bG93KCkuc3R5bGUoKTsKLQogICAgIGJvb2wgcmlnaHRBbGlnbmVkID0gZmFsc2U7CiAgICAgc3dp
dGNoIChibG9ja1N0eWxlLnRleHRBbGlnbigpKSB7CiAgICAgY2FzZSBUZXh0QWxpZ25Nb2RlOjpS
aWdodDoKQEAgLTYyMiw3ICs2MjEsNyBAQCBMYXlvdXRVbml0IFJvb3RJbmxpbmVCb3g6OnNlbGVj
dGlvblRvcCgpIGNvbnN0CiAgICAgICAgICAgICByZXR1cm4gc2VsZWN0aW9uVG9wOwogICAgIH0K
IAotICAgIHJldHVybiBwcmV2Qm90dG9tOworICAgIHJldHVybiBwcmV2Um9vdEJveCgpID8gc3Rk
OjptaW4oc2VsZWN0aW9uVG9wLCBwcmV2Qm90dG9tKSA6IHNlbGVjdGlvblRvcDsKIH0KIAogc3Rh
dGljIFJlbmRlckJsb2NrKiBibG9ja0JlZm9yZVdpdGhpblNlbGVjdGlvblJvb3QoY29uc3QgUmVu
ZGVyQmxvY2tGbG93JiBibG9ja0Zsb3csIExheW91dFNpemUmIG9mZnNldCkKQEAgLTc0MCw3ICs3
MzksNyBAQCBMYXlvdXRVbml0IFJvb3RJbmxpbmVCb3g6OnNlbGVjdGlvbkJvdHRvbSgpIGNvbnN0
CiAgICAgICAgICAgICByZXR1cm4gc2VsZWN0aW9uQm90dG9tOwogICAgIH0KIAotICAgIHJldHVy
biBuZXh0VG9wOworICAgIHJldHVybiBuZXh0Um9vdEJveCgpID8gc3RkOjptYXgoc2VsZWN0aW9u
Qm90dG9tLCBuZXh0VG9wKSA6IHNlbGVjdGlvbkJvdHRvbTsKIH0KIAogaW50IFJvb3RJbmxpbmVC
b3g6OmJsb2NrRGlyZWN0aW9uUG9pbnRJbkxpbmUoKSBjb25zdAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396840</attachid>
            <date>2020-04-18 00:29:26 -0700</date>
            <delta_ts>2020-04-18 08:17:14 -0700</delta_ts>
            <desc>Fixes the bug</desc>
            <filename>bug-210622-20200418002925.patch</filename>
            <type>text/plain</type>
            <size>32009</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwMTU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTJmNTQ0MThjZDBhOTVi
NmNkMTdjNDljNzNhMDc2NTBhNWRiMzAwYi4uMzk0ZDliNTQwNGY2ZjA4MzZmMGU1OGZkM2Q3ZWRm
NzBhNmRjNTI1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYwIEBACisyMDIwLTA0LTE3ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIE92ZXJzaXplZCBj
YXJldCBhbmQgc2VsZWN0aW9uIHJlY3RzIGluIHRleHQgZmllbGRzIG9uIGdhbmppLmNvbSBhbmQg
bmV0ZmxpeC5jb20vbG9naW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxMDYyMgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDU5NDU2MzY+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ3VycmVudGx5LCBz
ZWxlY3Rpb24gYW5kIGNhcmV0IHJlY3RzIGluIHRleHQgZmllbGRzIG9uIHNvbWUgd2ViIHBhZ2Vz
IGNhbiBiZSBleGNlc3NpdmVseSB0YWxsLiBUaGlzIHBhdGNoIG1ha2VzCisgICAgICAgIGEgc21h
bGwgYWRqdXN0bWVudCB0byBhbGxvdyB0aGUgdG9wIG9mIHRoZSBjYXJldCBvciBzZWxlY3Rpb24g
cmVjdCB0byBzbmFwIHRvIHRoZSB0b3Agb2YgdGhlIGlubGluZSBib3ggaW5zdGVhZAorICAgICAg
ICBvZiBiZWluZyBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBsaW5lLCBpbiB0aGUgY2FzZSB3
aGVyZSB0aGVyZSBpcyBubyBwcmV2aW91cyBpbmxpbmUgYm94LgorCisgICAgICAgIEluIHRoZSBj
YXNlIHdoZXJlIHdlIGNvbXB1dGUgdGhlIGNhcmV0IHJlY3QgZm9yIGFuIGVtcHR5IHJlbmRlcmVy
IChpLmUuIG5vIGNoaWxkcmVuKSwgd2UgbWFrZSBhbiBhZGRpdGlvbmFsCisgICAgICAgIHR3ZWFr
IHNvIHRoYXQgdGhlIGNhcmV0IHJlY3QncyBoZWlnaHQgaXMgYmFzZWQgb24gdGhlIGNvbXB1dGVk
IGZvbnQgaGVpZ2h0IGluc3RlYWQgb2YgbGluZSBoZWlnaHQsIGFuZCB0aGVuIHdlCisgICAgICAg
IGVuc3VyZSB0aGF0IHRoZSBjYXJldCBpcyAobG9naWNhbGx5KSB2ZXJ0aWNhbGx5IGNlbnRlcmVk
LgorCisgICAgICAgIFNlZSBiZWxvdyBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAgICAgIFRlc3Q6
IGVkaXRpbmcvc2VsZWN0aW9uL3NlbGVjdGlvbi1hbmQtY2FyZXQtZG8tbm90LWV4dGVuZC10by1s
aW5lLWhlaWdodC5odG1sCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrRmxvdzo6cG9zaXRpb25Gb3JQb2ludFdp
dGhJbmxpbmVDaGlsZHJlbik6CisKKyAgICAgICAgU3BlY2lmeSBGb3JIaXRUZXN0aW5nOjpZZXMg
d2hlbiBhc2tpbmcgZm9yIHNlbGVjdGlvblRvcCgpLgorCisgICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlckJveE1vZGVsT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveE1vZGVs
T2JqZWN0Ojpsb2NhbENhcmV0UmVjdEZvckVtcHR5RWxlbWVudCk6CisKKyAgICAgICAgVXNlIEZv
bnRNZXRyaWMncyBoZWlnaHQgd2hlbiBjb21wdXRpbmcgdGhlIGhlaWdodCBvZiB0aGUgY2FyZXQg
cmVjdCwgYW5kIHRoZW4gY2VudGVyIGl0IHZlcnRpY2FsbHkgaW4gdGhlCisgICAgICAgIHJlbmRl
cmVyLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclJlcGxhY2VkOjpwb3NpdGlvbkZvclBvaW50KToKKworICAgICAgICBT
cGVjaWZ5IEZvckhpdFRlc3Rpbmc6OlllcyB3aGVuIGFza2luZyBmb3Igc2VsZWN0aW9uVG9wKCku
IFNlZSBiZWxvdyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KKworICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJUZXh0TGluZUJveGVzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRleHRMaW5l
Qm94ZXM6OnBvc2l0aW9uRm9yUG9pbnQgY29uc3QpOgorICAgICAgICAqIHJlbmRlcmluZy9Sb290
SW5saW5lQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJvb3RJbmxpbmVCb3g6OnNlbGVjdGlv
blRvcCBjb25zdCk6CisKKyAgICAgICAgV2hlbiBjb21wdXRpbmcgc2VsZWN0aW9uVG9wKCksIHdl
IGN1cnJlbnRseSBmYWxsIGJhY2sgdG8gdXNpbmcgdGhlIHRvcCBvZiB0aGUgY29udGFpbmluZyBS
ZW5kZXJCbG9ja0Zsb3cKKyAgICAgICAgKGBibG9ja0Zsb3coKS5ib3JkZXJBbmRQYWRkaW5nQmVm
b3JlKClgKSBpbiB0aGUgY2FzZSB3aGVyZSB0aGVyZSBpcyBubyBwcmV2aW91cyByb290IGJveC4g
SG93ZXZlciwgdGhpcyBjYW4gbGVhZAorICAgICAgICB0byBzZWxlY3Rpb24gYW5kIGNhcmV0IHJl
Y3RzIGJlaW5nIHRhbGxlciB0aGFuIGV4cGVjdGVkOyBpbnN0ZWFkLCB3ZSBjYW4gdXNlIHRoZSBt
YXggb2YgdGhlIGBzZWxlY3Rpb25Ub3BgCisgICAgICAgICh0aGF0IGlzLCB0aGUgdG9wIG9mIHRo
ZSBsaW5lIGJveCwgYWRqdXN0ZWQgZm9yIGFubm90YXRpb25zKSBhbmQgdGhlIHRvcCBvZiB0aGUg
UmVuZGVyQmxvY2tGbG93LiBUaGlzIGhhcyB0aGUKKyAgICAgICAgZWZmZWN0IG9mIGFsbG93aW5n
IHRoZSBjYXJldCBhbmQgc2VsZWN0aW9uIHRvIHZpc3VhbGx5IHNuYXAgdG8gdGhlIHRvcCBvZiBh
IHJ1biBvZiB0ZXh0LCBwcm92aWRlZCB0aGVyZSBpcyBub3QKKyAgICAgICAgYWxyZWFkeSBhIGxp
bmUgb2YgdGV4dCB0aGF0IHByZWNlZGVzIGl0LiBUYWtpbmcgdGhlIG1heGltdW0gb2YgdGhlIHR3
byB2YWx1ZXMgZW5zdXJlcyB0aGF0IHdlIGRvbid0CisgICAgICAgIHVuaW50ZW50aW9uYWxseSBt
YWtlIHRoZSBzZWxlY3Rpb24gb3IgY2FyZXQgcmVjdHMgZXZlbiBsYXJnZXIsIGlmIHRoZSBsaW5l
IHRvcCBpcyBhYm92ZSB0aGUgdG9wIG9mIHRoZSBibG9jay4KKworICAgICAgICBOb3RlIHRoYXQg
d2UgYWxzbyBhdm9pZCBzaHJpbmtpbmcgdGhlIHNlbGVjdGlvbiBhbmQgY2FyZXQgcmVjdHMgd2hl
biBoaXQtdGVzdGluZyByZW5kZXJlcnMgZm9yIHBvc2l0aW9ucyBhbmQKKyAgICAgICAgcmFuZ2Vz
LiBUaGlzIGFsbG93cyB1c2VycyB0byBzdGlsbCBjbGljayBhbmQgZHJhZyB0byBzZWxlY3QgdGV4
dCBpbiB0aGUgZXh0cmEgbGluZS1oZWlnaHQgYXJlYSBhYm92ZSBhIHBpZWNlIG9mCisgICAgICAg
IHRleHQsIGV2ZW4gaWYgdGhlIHNlbGVjdGlvbiBpcyBvbmx5IHBhaW50ZWQgb3ZlciB0aGUgdGV4
dCAoYW5kIG5vdCBpbiB0aGUgcmVnaW9uIGNvbnRhaW5pbmcgdGhlIGxpbmUtaGVpZ2h0KS4KKyAg
ICAgICAgVGhpcyBiZWhhdmlvciB3YXMgZXN0YWJsaXNoZWQgaW4gdGhlIGZpeCBmb3Igd2Via2l0
Lm9yZy9iLzE0OTExLCBhbmQgaXMgY292ZXJlZCBieSB0aGUgbGF5b3V0IHRlc3QKKyAgICAgICAg
YGVkaXRpbmcvc2VsZWN0aW9uL2lubGluZS1jbG9zZXN0LWxlYWYtY2hpbGQuaHRtbGAuCisKKyAg
ICAgICAgKiByZW5kZXJpbmcvUm9vdElubGluZUJveC5oOgorCiAyMDIwLTA0LTE1ICBKYWNrIExl
ZSAgPHNoaWhjaGllaF9sZWVAYXBwbGUuY29tPgogCiAgICAgICAgIEFTU0VSVElPTiBGQUlMRUQ6
ICFzZWxlY3Rpb25Ub0RlbGV0ZS5pc05vbmUoKSBpbiBUeXBpbmdDb21tYW5kOjpmb3J3YXJkRGVs
ZXRlS2V5UHJlc3NlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckJsb2NrRmxvdy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93
LmNwcAppbmRleCBkMDliMWM4ZmQ0ZDMzNzU2MGY3Y2RkZmZlZDVjNmJkMjU2NWQxMTRiLi40MDRk
ZTEzNzdlY2UyMDFkYWU5MzBkYzQ2ODMzNDk1MWQzOGMxOWQyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmNwcApAQCAtMzUzNyw3ICszNTM3LDcgQEAgVmlz
aWJsZVBvc2l0aW9uIFJlbmRlckJsb2NrRmxvdzo6cG9zaXRpb25Gb3JQb2ludFdpdGhJbmxpbmVD
aGlsZHJlbihjb25zdCBMYXlvdXQKIAogICAgIGlmIChjbG9zZXN0Qm94KSB7CiAgICAgICAgIGlm
IChtb3ZlQ2FyZXRUb0JvdW5kYXJ5KSB7Ci0gICAgICAgICAgICBMYXlvdXRVbml0IGZpcnN0Um9v
dEJveFdpdGhDaGlsZHJlblRvcCA9IHN0ZDo6bWluKGZpcnN0Um9vdEJveFdpdGhDaGlsZHJlbi0+
c2VsZWN0aW9uVG9wKCksIExheW91dFVuaXQoZmlyc3RSb290Qm94V2l0aENoaWxkcmVuLT5sb2dp
Y2FsVG9wKCkpKTsKKyAgICAgICAgICAgIExheW91dFVuaXQgZmlyc3RSb290Qm94V2l0aENoaWxk
cmVuVG9wID0gc3RkOjptaW4oZmlyc3RSb290Qm94V2l0aENoaWxkcmVuLT5zZWxlY3Rpb25Ub3Ao
Um9vdElubGluZUJveDo6Rm9ySGl0VGVzdGluZzo6WWVzKSwgTGF5b3V0VW5pdChmaXJzdFJvb3RC
b3hXaXRoQ2hpbGRyZW4tPmxvZ2ljYWxUb3AoKSkpOwogICAgICAgICAgICAgaWYgKHBvaW50SW5M
b2dpY2FsQ29udGVudHMueSgpIDwgZmlyc3RSb290Qm94V2l0aENoaWxkcmVuVG9wCiAgICAgICAg
ICAgICAgICAgfHwgKGJsb2Nrc0FyZUZsaXBwZWQgJiYgcG9pbnRJbkxvZ2ljYWxDb250ZW50cy55
KCkgPT0gZmlyc3RSb290Qm94V2l0aENoaWxkcmVuVG9wKSkgewogICAgICAgICAgICAgICAgIElu
bGluZUJveCogYm94ID0gZmlyc3RSb290Qm94V2l0aENoaWxkcmVuLT5maXJzdExlYWZEZXNjZW5k
YW50KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9k
ZWxPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2Jq
ZWN0LmNwcAppbmRleCBiOWY5YjRhYzY5Zjk1Yzc5OGIwN2U3ZjU3MWU5MTkyM2Q4ZGI1NWI1Li5h
YzY1OTc5MjI2MmM0YTY3YWQ0MzM2NWE0ZDQyMzNiMDRiNTA0ZDdmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAKQEAgLTI1OTcsNyAr
MjU5Nyw2IEBAIExheW91dFJlY3QgUmVuZGVyQm94TW9kZWxPYmplY3Q6OmxvY2FsQ2FyZXRSZWN0
Rm9yRW1wdHlFbGVtZW50KExheW91dFVuaXQgd2lkdGgsCiAgICAgLy8gY29uc3RydWN0ZWQgYW5k
IHRoaXMga2x1ZGdlIGlzIG5vdCBjYWxsZWQgYW55IG1vcmUuIFNvIG9ubHkgdGhlIGNhcmV0IHNp
emUKICAgICAvLyBvZiBhbiBlbXB0eSA6Zmlyc3QtbGluZSdkIGJsb2NrIGlzIHdyb25nLiBJIHRo
aW5rIHdlIGNhbiBsaXZlIHdpdGggdGhhdC4KICAgICBjb25zdCBSZW5kZXJTdHlsZSYgY3VycmVu
dFN0eWxlID0gZmlyc3RMaW5lU3R5bGUoKTsKLSAgICBMYXlvdXRVbml0IGhlaWdodCA9IGxpbmVI
ZWlnaHQodHJ1ZSwgY3VycmVudFN0eWxlLmlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkgPyBIb3Jp
em9udGFsTGluZSA6IFZlcnRpY2FsTGluZSk7CiAKICAgICBlbnVtIENhcmV0QWxpZ25tZW50IHsg
YWxpZ25MZWZ0LCBhbGlnblJpZ2h0LCBhbGlnbkNlbnRlciB9OwogCkBAIC0yNjQ5LDggKzI2NDgs
OSBAQCBMYXlvdXRSZWN0IFJlbmRlckJveE1vZGVsT2JqZWN0Ojpsb2NhbENhcmV0UmVjdEZvckVt
cHR5RWxlbWVudChMYXlvdXRVbml0IHdpZHRoLAogICAgIH0KICAgICB4ID0gc3RkOjptaW4oeCwg
c3RkOjptYXg8TGF5b3V0VW5pdD4obWF4WCAtIGNhcmV0V2lkdGgsIDApKTsKIAotICAgIExheW91
dFVuaXQgeSA9IHBhZGRpbmdUb3AoKSArIGJvcmRlclRvcCgpOwotCisgICAgYXV0byBsaW5lSGVp
Z2h0ID0gdGhpcy0+bGluZUhlaWdodCh0cnVlLCBjdXJyZW50U3R5bGUuaXNIb3Jpem9udGFsV3Jp
dGluZ01vZGUoKSA/IEhvcml6b250YWxMaW5lIDogVmVydGljYWxMaW5lLCBQb3NpdGlvbk9mSW50
ZXJpb3JMaW5lQm94ZXMpOworICAgIGF1dG8gaGVpZ2h0ID0gc3RkOjptaW4obGluZUhlaWdodCwg
TGF5b3V0VW5pdCB7IGN1cnJlbnRTdHlsZS5mb250TWV0cmljcygpLmhlaWdodCgpIH0pOworICAg
IGF1dG8geSA9IHBhZGRpbmdUb3AoKSArIGJvcmRlclRvcCgpICsgKGxpbmVIZWlnaHQgPiBoZWln
aHQgPyAobGluZUhlaWdodCAtIGhlaWdodCkgLyAyIDogTGF5b3V0VW5pdCB7IH0pOwogICAgIHJl
dHVybiBjdXJyZW50U3R5bGUuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSA/IExheW91dFJlY3Qo
eCwgeSwgY2FyZXRXaWR0aCwgaGVpZ2h0KSA6IExheW91dFJlY3QoeSwgeCwgaGVpZ2h0LCBjYXJl
dFdpZHRoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clJlcGxhY2VkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5j
cHAKaW5kZXggMDBiNjFmN2YwMGM4M2FkNTMyYWM1N2EyZGJlODBiNjJiYTQ4ZjE3ZC4uNWIzYmFk
MDY2ZTA3MGE0Y2NhODNlMGM0NzVlODE0MWNlOTRmM2MwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyUmVwbGFjZWQuY3BwCkBAIC02MjAsNyArNjIwLDcgQEAgVmlzaWJsZVBv
c2l0aW9uIFJlbmRlclJlcGxhY2VkOjpwb3NpdGlvbkZvclBvaW50KGNvbnN0IExheW91dFBvaW50
JiBwb2ludCwgY29uc3QKICAgICBJbmxpbmVCb3gqIGJveCA9IGlubGluZUJveFdyYXBwZXIoKTsK
ICAgICBjb25zdCBSb290SW5saW5lQm94KiByb290Qm94ID0gYm94ID8gJmJveC0+cm9vdCgpIDog
MDsKICAgICAKLSAgICBMYXlvdXRVbml0IHRvcCA9IHJvb3RCb3ggPyByb290Qm94LT5zZWxlY3Rp
b25Ub3AoKSA6IGxvZ2ljYWxUb3AoKTsKKyAgICBMYXlvdXRVbml0IHRvcCA9IHJvb3RCb3ggPyBy
b290Qm94LT5zZWxlY3Rpb25Ub3AoUm9vdElubGluZUJveDo6Rm9ySGl0VGVzdGluZzo6WWVzKSA6
IGxvZ2ljYWxUb3AoKTsKICAgICBMYXlvdXRVbml0IGJvdHRvbSA9IHJvb3RCb3ggPyByb290Qm94
LT5zZWxlY3Rpb25Cb3R0b20oKSA6IGxvZ2ljYWxCb3R0b20oKTsKICAgICAKICAgICBMYXlvdXRV
bml0IGJsb2NrRGlyZWN0aW9uUG9zaXRpb24gPSBpc0hvcml6b250YWxXcml0aW5nTW9kZSgpID8g
cG9pbnQueSgpICsgeSgpIDogcG9pbnQueCgpICsgeCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHRMaW5lQm94ZXMuY3BwIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRleHRMaW5lQm94ZXMuY3BwCmluZGV4IDVlZTU1OWMyNTIxNTE0Y2Zl
ZDI2YjMxNjFiZjQ0MzZiNWE0YzNjNjkuLjI5ZGQyNzM0YWJjNTEyZTA5NzIyYjQ0ZDBjZjZiODM4
MmQ3YTI0OTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0
TGluZUJveGVzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dExp
bmVCb3hlcy5jcHAKQEAgLTMxMiw3ICszMTIsNyBAQCBWaXNpYmxlUG9zaXRpb24gUmVuZGVyVGV4
dExpbmVCb3hlczo6cG9zaXRpb25Gb3JQb2ludChjb25zdCBSZW5kZXJUZXh0JiByZW5kZXJlcgog
ICAgICAgICAgICAgYm94ID0gYm94LT5uZXh0VGV4dEJveCgpOwogCiAgICAgICAgIGF1dG8mIHJv
b3RCb3ggPSBib3gtPnJvb3QoKTsKLSAgICAgICAgTGF5b3V0VW5pdCB0b3AgPSBzdGQ6Om1pbihy
b290Qm94LnNlbGVjdGlvblRvcCgpLCByb290Qm94LmxpbmVUb3AoKSk7CisgICAgICAgIExheW91
dFVuaXQgdG9wID0gc3RkOjptaW4ocm9vdEJveC5zZWxlY3Rpb25Ub3AoUm9vdElubGluZUJveDo6
Rm9ySGl0VGVzdGluZzo6WWVzKSwgcm9vdEJveC5saW5lVG9wKCkpOwogICAgICAgICBpZiAocG9p
bnRCbG9ja0RpcmVjdGlvbiA+IHRvcCB8fCAoIWJsb2Nrc0FyZUZsaXBwZWQgJiYgcG9pbnRCbG9j
a0RpcmVjdGlvbiA9PSB0b3ApKSB7CiAgICAgICAgICAgICBMYXlvdXRVbml0IGJvdHRvbSA9IHJv
b3RCb3guc2VsZWN0aW9uQm90dG9tKCk7CiAgICAgICAgICAgICBpZiAocm9vdEJveC5uZXh0Um9v
dEJveCgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVC
b3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVCb3guY3BwCmluZGV4
IDM2NDkyNjMzODU2OWExMWJmZWQzNzU5MjAyODc5Mzg1OGU4NTU5ZmYuLmZhNjRhODg3ODNhODJl
ZTExYjAwM2IxNGYxOTQzZGRjMzg5ODkwNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9Sb290SW5saW5lQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
Um9vdElubGluZUJveC5jcHAKQEAgLTU2OCw3ICs1NjgsNyBAQCBJbmxpbmVCb3gqIFJvb3RJbmxp
bmVCb3g6Omxhc3RTZWxlY3RlZEJveCgpCiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLUxheW91
dFVuaXQgUm9vdElubGluZUJveDo6c2VsZWN0aW9uVG9wKCkgY29uc3QKK0xheW91dFVuaXQgUm9v
dElubGluZUJveDo6c2VsZWN0aW9uVG9wKEZvckhpdFRlc3RpbmcgZm9ySGl0VGVzdGluZykgY29u
c3QKIHsKICAgICBMYXlvdXRVbml0IHNlbGVjdGlvblRvcCA9IG1fbGluZVRvcDsKICAgICAKQEAg
LTYwOSw3ICs2MDksMTQgQEAgTGF5b3V0VW5pdCBSb290SW5saW5lQm94OjpzZWxlY3Rpb25Ub3Ao
KSBjb25zdAogICAgIH0KICNlbmRpZgogCi0gICAgTGF5b3V0VW5pdCBwcmV2Qm90dG9tID0gcHJl
dlJvb3RCb3goKSA/IHByZXZSb290Qm94KCktPnNlbGVjdGlvbkJvdHRvbSgpIDogYmxvY2tGbG93
KCkuYm9yZGVyQW5kUGFkZGluZ0JlZm9yZSgpOworICAgIExheW91dFVuaXQgcHJldkJvdHRvbTsK
KyAgICBpZiAoYXV0byogcHJldmlvdXNCb3ggPSBwcmV2Um9vdEJveCgpKQorICAgICAgICBwcmV2
Qm90dG9tID0gcHJldmlvdXNCb3gtPnNlbGVjdGlvbkJvdHRvbSgpOworICAgIGVsc2UgeworICAg
ICAgICBhdXRvIGJvcmRlckFuZFBhZGRpbmdCZWZvcmUgPSBibG9ja0Zsb3coKS5ib3JkZXJBbmRQ
YWRkaW5nQmVmb3JlKCk7CisgICAgICAgIHByZXZCb3R0b20gPSBmb3JIaXRUZXN0aW5nID09IEZv
ckhpdFRlc3Rpbmc6OlllcyA/IGJvcmRlckFuZFBhZGRpbmdCZWZvcmUgOiBzdGQ6Om1heChib3Jk
ZXJBbmRQYWRkaW5nQmVmb3JlLCBzZWxlY3Rpb25Ub3ApOworICAgIH0KKwogICAgIGlmIChwcmV2
Qm90dG9tIDwgc2VsZWN0aW9uVG9wICYmIGJsb2NrRmxvdygpLmNvbnRhaW5zRmxvYXRzKCkpIHsK
ICAgICAgICAgLy8gVGhpcyBsaW5lIGhhcyBhY3R1YWxseSBiZWVuIG1vdmVkIGZ1cnRoZXIgZG93
biwgcHJvYmFibHkgZnJvbSBhIGxhcmdlIGxpbmUtaGVpZ2h0LCBidXQgcG9zc2libHkgYmVjYXVz
ZSB0aGUKICAgICAgICAgLy8gbGluZSB3YXMgZm9yY2VkIHRvIGNsZWFyIGZsb2F0cy4gIElmIHNv
LCBsZXQncyBjaGVjayB0aGUgb2Zmc2V0cywgYW5kIG9ubHkgYmUgd2lsbGluZyB0byB1c2UgdGhl
IHByZXZpb3VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUm9vdElubGlu
ZUJveC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVCb3guaAppbmRleCBm
ODk3NmM2YTdkNGE2OTczNDg3NDk5M2YzOWRmMzZmNDc4N2FlOTVhLi4wMjAxZGNlN2VjMjcxNjk3
NGI1NzU1ZDg3ZGUwOWZmNzkzYTRjNjcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUm9vdElubGluZUJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9Sb290
SW5saW5lQm94LmgKQEAgLTcyLDcgKzcyLDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0Q29udGFp
bmluZ0ZyYWdtZW50KFJlbmRlckZyYWdtZW50Q29udGFpbmVyJik7CiAgICAgdm9pZCBjbGVhckNv
bnRhaW5pbmdGcmFnbWVudCgpOwogCi0gICAgTGF5b3V0VW5pdCBzZWxlY3Rpb25Ub3AoKSBjb25z
dDsKKyAgICBlbnVtIGNsYXNzIEZvckhpdFRlc3RpbmcgOiBib29sIHsgTm8sIFllcyB9OworICAg
IExheW91dFVuaXQgc2VsZWN0aW9uVG9wKEZvckhpdFRlc3RpbmcgPSBGb3JIaXRUZXN0aW5nOjpO
bykgY29uc3Q7CiAgICAgTGF5b3V0VW5pdCBzZWxlY3Rpb25Cb3R0b20oKSBjb25zdDsKICAgICBM
YXlvdXRVbml0IHNlbGVjdGlvbkhlaWdodCgpIGNvbnN0IHsgcmV0dXJuIHN0ZDo6bWF4PExheW91
dFVuaXQ+KDAsIHNlbGVjdGlvbkJvdHRvbSgpIC0gc2VsZWN0aW9uVG9wKCkpOyB9CiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRl
eCBhZmI3MmJiYTk4ODlhMjhhZmI5NDJlNmMwYjc1NDk3MzA3ZjZkZGRiLi41MWFmOTc0MDUzOWFk
MDMxMzRjOGQ2ZjhjZjUzZGRiMTllYTYzZDBhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMjAt
MDQtMTcgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAg
T3ZlcnNpemVkIGNhcmV0IGFuZCBzZWxlY3Rpb24gcmVjdHMgaW4gdGV4dCBmaWVsZHMgb24gZ2Fu
amkuY29tIGFuZCBuZXRmbGl4LmNvbS9sb2dpbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwNjIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80NTk0
NTYzNj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBS
ZWJhc2VsaW5lIGV4aXN0aW5nIHRlc3RzLCBhbmQgYWRkIGEgbmV3IHRlc3QgdG8gdmVyaWZ5IHRo
YXQgY2FyZXQgYW5kIHNlbGVjdGlvbiByZWN0cyBkbyBub3QgZXh0ZW5kIHRvIG1hdGNoCisgICAg
ICAgIHRoZSBsaW5lIGhlaWdodCBpbiBlbXB0eSBhbmQgbm9uLWVtcHR5IGVkaXRhYmxlIGVsZW1l
bnRzLCBpbiBib3RoIGhvcml6b250YWwgYW5kIHZlcnRpY2FsIHdyaXRpbmcgbW9kZXMuCisKKyAg
ICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9pb3MvYWJzb2x1dGUtc2VsZWN0aW9uLWFmdGVyLXNj
cm9sbC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vaW9zL2Fic29s
dXRlLXNlbGVjdGlvbi1hZnRlci1zY3JvbGwuaHRtbDoKKyAgICAgICAgKiBlZGl0aW5nL3NlbGVj
dGlvbi9pb3MvY2hhbmdlLXNlbGVjdGlvbi1hZnRlci10YXBwaW5nLWZvY3VzZWQtZWxlbWVudC1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vaW9zL2NoYW5nZS1zZWxl
Y3Rpb24tYWZ0ZXItdGFwcGluZy1mb2N1c2VkLWVsZW1lbnQuaHRtbDoKKyAgICAgICAgKiBlZGl0
aW5nL3NlbGVjdGlvbi9pb3MvZml4ZWQtc2VsZWN0aW9uLWFmdGVyLXNjcm9sbC1leHBlY3RlZC50
eHQ6CisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vaW9zL2ZpeGVkLXNlbGVjdGlvbi1hZnRl
ci1zY3JvbGwuaHRtbDoKKyAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9pb3Mvc2VsZWN0aW9u
LWFmdGVyLWNoYW5naW5nLXRleHQtd2l0aC1jYWxsb3V0LW1lbnUtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIGVkaXRpbmcvc2VsZWN0aW9uL2lvcy9zZWxlY3Rpb24tYWZ0ZXItY2hhbmdpbmctdGV4
dC13aXRoLWNhbGxvdXQtbWVudS5odG1sOgorICAgICAgICAqIGVkaXRpbmcvc2VsZWN0aW9uL2lv
cy9zZWxlY3Rpb24taGFuZGxlcy1hZnRlci10b3VjaC1lbmQtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIGVkaXRpbmcvc2VsZWN0aW9uL2lvcy91cGRhdGUtc2VsZWN0aW9uLWFmdGVyLW92ZXJmbG93
LXNjcm9sbC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vaW9zL3Vw
ZGF0ZS1zZWxlY3Rpb24tYWZ0ZXItb3ZlcmZsb3ctc2Nyb2xsLmh0bWw6CisgICAgICAgICogZWRp
dGluZy9zZWxlY3Rpb24vc2VsZWN0aW9uLWFuZC1jYXJldC1kby1ub3QtZXh0ZW5kLXRvLWxpbmUt
aGVpZ2h0LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24v
c2VsZWN0aW9uLWFuZC1jYXJldC1kby1ub3QtZXh0ZW5kLXRvLWxpbmUtaGVpZ2h0Lmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvcmVwYWludC9mb2N1cy1yaW5nLXJlcGFpbnQtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9lZGl0aW5nL3NlbGVjdGlvbi9pb3Mvc2VsZWN0
aW9uLWhhbmRsZXMtYWZ0ZXItdG91Y2gtZW5kLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKworICAg
ICAgICBEZWxldGUgdGhpcyByZWR1bmRhbnQgdGVzdCBleHBlY3RhdGlvbi4KKwogMjAyMC0wNC0x
NSAgRGllZ28gUGlubyBHYXJjaWEgIDxkcGlub0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtd
IEdhcmRlbmluZywgZW1pdCBiYXNlbGluZXMgYWZ0ZXIgcjI2MDEzOQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2Fic29sdXRlLXNlbGVjdGlvbi1hZnRlci1z
Y3JvbGwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2Fi
c29sdXRlLXNlbGVjdGlvbi1hZnRlci1zY3JvbGwtZXhwZWN0ZWQudHh0CmluZGV4IGI5YzlkZjNk
YjI5ODBmNGYzMWE5MzRjN2RiM2IxM2U0NDU4MTZlZmUuLjhmNzc2MDEzM2RlMGFmOWEyZjljZDQy
OTJhYjA3OWZiNzExMDFhMjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0
aW9uL2lvcy9hYnNvbHV0ZS1zZWxlY3Rpb24tYWZ0ZXItc2Nyb2xsLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvYWJzb2x1dGUtc2VsZWN0aW9uLWFm
dGVyLXNjcm9sbC1leHBlY3RlZC50eHQKQEAgLTEsMTMgKzEsMTMgQEAKIFBBU1MgaW5pdGlhbFNl
bGVjdGlvblJlY3RzLmxlbmd0aCBpcyAxCiBQQVNTIGluaXRpYWxTZWxlY3Rpb25SZWN0c1swXS5s
ZWZ0IGlzIDAKLVBBU1MgaW5pdGlhbFNlbGVjdGlvblJlY3RzWzBdLnRvcCBpcyAwCitQQVNTIGlu
aXRpYWxTZWxlY3Rpb25SZWN0c1swXS50b3AgaXMgMgogUEFTUyBpbml0aWFsU2VsZWN0aW9uUmVj
dHNbMF0ud2lkdGggaXMgMzA5Ci1QQVNTIGluaXRpYWxTZWxlY3Rpb25SZWN0c1swXS5oZWlnaHQg
aXMgMTE0CitQQVNTIGluaXRpYWxTZWxlY3Rpb25SZWN0c1swXS5oZWlnaHQgaXMgMTEyCiBQQVNT
IGZpbmFsU2VsZWN0aW9uUmVjdHMubGVuZ3RoIGlzIDEKIFBBU1MgZmluYWxTZWxlY3Rpb25SZWN0
c1swXS5sZWZ0IGlzIDAKLVBBU1MgZmluYWxTZWxlY3Rpb25SZWN0c1swXS50b3AgaXMgMAorUEFT
UyBmaW5hbFNlbGVjdGlvblJlY3RzWzBdLnRvcCBpcyAyCiBQQVNTIGZpbmFsU2VsZWN0aW9uUmVj
dHNbMF0ud2lkdGggaXMgMzA5Ci1QQVNTIGZpbmFsU2VsZWN0aW9uUmVjdHNbMF0uaGVpZ2h0IGlz
IDExNAorUEFTUyBmaW5hbFNlbGVjdGlvblJlY3RzWzBdLmhlaWdodCBpcyAxMTIKIFBBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2Fic29sdXRlLXNlbGVjdGlvbi1hZnRlci1z
Y3JvbGwuaHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9hYnNvbHV0ZS1z
ZWxlY3Rpb24tYWZ0ZXItc2Nyb2xsLmh0bWwKaW5kZXggYmQ1MmVjZjJmYjAwMmNhZDdmZGYwMTg4
NmMzYjg5MDBkZDY3MGQ4Zi4uM2I4NTAyYTY1MTNmOTUwYTM3YzhlMmQ1NDc4ZDVjYmUxYWI3ZWM3
NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2Fic29sdXRl
LXNlbGVjdGlvbi1hZnRlci1zY3JvbGwuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Nl
bGVjdGlvbi9pb3MvYWJzb2x1dGUtc2VsZWN0aW9uLWFmdGVyLXNjcm9sbC5odG1sCkBAIC01MSw5
ICs1MSw5IEBACiAgICAgICAgICAgICBpbml0aWFsU2VsZWN0aW9uUmVjdHMgPSByZWN0czsKICAg
ICAgICAgICAgIHNob3VsZEJlKCJpbml0aWFsU2VsZWN0aW9uUmVjdHMubGVuZ3RoIiwgIjEiKTsK
ICAgICAgICAgICAgIHNob3VsZEJlKCJpbml0aWFsU2VsZWN0aW9uUmVjdHNbMF0ubGVmdCIsICIw
Iik7Ci0gICAgICAgICAgICBzaG91bGRCZSgiaW5pdGlhbFNlbGVjdGlvblJlY3RzWzBdLnRvcCIs
ICIwIik7CisgICAgICAgICAgICBzaG91bGRCZSgiaW5pdGlhbFNlbGVjdGlvblJlY3RzWzBdLnRv
cCIsICIyIik7CiAgICAgICAgICAgICBzaG91bGRCZSgiaW5pdGlhbFNlbGVjdGlvblJlY3RzWzBd
LndpZHRoIiwgIjMwOSIpOwotICAgICAgICAgICAgc2hvdWxkQmUoImluaXRpYWxTZWxlY3Rpb25S
ZWN0c1swXS5oZWlnaHQiLCAiMTE0Iik7CisgICAgICAgICAgICBzaG91bGRCZSgiaW5pdGlhbFNl
bGVjdGlvblJlY3RzWzBdLmhlaWdodCIsICIxMTIiKTsKICAgICAgICAgICAgIGRvY3VtZW50LnNj
cm9sbGluZ0VsZW1lbnQuc2Nyb2xsVG9wICs9IDUwMDA7CiAgICAgICAgICAgICByZXR1cm4gVUlI
ZWxwZXIuZ2V0VUlTZWxlY3Rpb25SZWN0cygpOwogICAgICAgICB9KQpAQCAtNjEsOSArNjEsOSBA
QAogICAgICAgICAgICAgZmluYWxTZWxlY3Rpb25SZWN0cyA9IHJlY3RzOwogICAgICAgICAgICAg
c2hvdWxkQmUoImZpbmFsU2VsZWN0aW9uUmVjdHMubGVuZ3RoIiwgIjEiKTsKICAgICAgICAgICAg
IHNob3VsZEJlKCJmaW5hbFNlbGVjdGlvblJlY3RzWzBdLmxlZnQiLCAiMCIpOwotICAgICAgICAg
ICAgc2hvdWxkQmUoImZpbmFsU2VsZWN0aW9uUmVjdHNbMF0udG9wIiwgIjAiKTsKKyAgICAgICAg
ICAgIHNob3VsZEJlKCJmaW5hbFNlbGVjdGlvblJlY3RzWzBdLnRvcCIsICIyIik7CiAgICAgICAg
ICAgICBzaG91bGRCZSgiZmluYWxTZWxlY3Rpb25SZWN0c1swXS53aWR0aCIsICIzMDkiKTsKLSAg
ICAgICAgICAgIHNob3VsZEJlKCJmaW5hbFNlbGVjdGlvblJlY3RzWzBdLmhlaWdodCIsICIxMTQi
KTsKKyAgICAgICAgICAgIHNob3VsZEJlKCJmaW5hbFNlbGVjdGlvblJlY3RzWzBdLmhlaWdodCIs
ICIxMTIiKTsKICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOwogICAgICAgICB9KTsKICAgICB9
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdlLXNl
bGVjdGlvbi1hZnRlci10YXBwaW5nLWZvY3VzZWQtZWxlbWVudC1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdlLXNlbGVjdGlvbi1hZnRlci10YXBw
aW5nLWZvY3VzZWQtZWxlbWVudC1leHBlY3RlZC50eHQKaW5kZXggMjhlZDE4NTQ0NzgxZTYwN2Jk
OGJhNThkYmNkMmI4NjIwYjMyMGQ2OC4uOTJmMjllNjY3MTc4MjY2ZjdhNGVlYzNmMGUzNDJmNjkz
NDU0YTY5MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2No
YW5nZS1zZWxlY3Rpb24tYWZ0ZXItdGFwcGluZy1mb2N1c2VkLWVsZW1lbnQtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9jaGFuZ2Utc2VsZWN0aW9u
LWFmdGVyLXRhcHBpbmctZm9jdXNlZC1lbGVtZW50LWV4cGVjdGVkLnR4dApAQCAtNSw5ICs1LDkg
QEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUKIAogUEFTUyBzZWxlY3Rpb25SZWN0cy5sZW5ndGgg
aXMgMQogUEFTUyBzZWxlY3Rpb25SZWN0c1swXS5sZWZ0IGlzIDIKLVBBU1Mgc2VsZWN0aW9uUmVj
dHNbMF0udG9wIGlzIDIKK1BBU1Mgc2VsZWN0aW9uUmVjdHNbMF0udG9wIGlzIDQKIFBBU1Mgc2Vs
ZWN0aW9uUmVjdHNbMF0ud2lkdGggaXMgMzA5Ci1QQVNTIHNlbGVjdGlvblJlY3RzWzBdLmhlaWdo
dCBpcyAxMTQKK1BBU1Mgc2VsZWN0aW9uUmVjdHNbMF0uaGVpZ2h0IGlzIDExMgogUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdlLXNlbGVjdGlvbi1hZnRlci10YXBw
aW5nLWZvY3VzZWQtZWxlbWVudC5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24v
aW9zL2NoYW5nZS1zZWxlY3Rpb24tYWZ0ZXItdGFwcGluZy1mb2N1c2VkLWVsZW1lbnQuaHRtbApp
bmRleCA5ZjliZWU1MmM1YjUwZTM4Yzc5ZjkxNzM1OGIzZGVjZjc4YjUxNDEyLi41MjViYTk0NTA0
M2FjNzM1NTI4YzRiYmU1NzE2YmQ4YjNlYmI5OWUxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9l
ZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdlLXNlbGVjdGlvbi1hZnRlci10YXBwaW5nLWZvY3Vz
ZWQtZWxlbWVudC5odG1sCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9j
aGFuZ2Utc2VsZWN0aW9uLWFmdGVyLXRhcHBpbmctZm9jdXNlZC1lbGVtZW50Lmh0bWwKQEAgLTU0
LDkgKzU0LDkgQEAKICAgICAgICAgICAgIHdpbmRvdy5zZWxlY3Rpb25SZWN0cyA9IHNlbGVjdGlv
blJlY3RzOwogICAgICAgICAgICAgc2hvdWxkQmUoInNlbGVjdGlvblJlY3RzLmxlbmd0aCIsICIx
Iik7CiAgICAgICAgICAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHNbMF0ubGVmdCIsICIyIik7
Ci0gICAgICAgICAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHNbMF0udG9wIiwgIjIiKTsKKyAg
ICAgICAgICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c1swXS50b3AiLCAiNCIpOwogICAgICAg
ICAgICAgc2hvdWxkQmUoInNlbGVjdGlvblJlY3RzWzBdLndpZHRoIiwgIjMwOSIpOwotICAgICAg
ICAgICAgc2hvdWxkQmUoInNlbGVjdGlvblJlY3RzWzBdLmhlaWdodCIsICIxMTQiKTsKKyAgICAg
ICAgICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c1swXS5oZWlnaHQiLCAiMTEyIik7CiAgICAg
ICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKICAgICAgICAgfSk7CiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9maXhlZC1zZWxlY3Rpb24tYWZ0ZXItc2Nyb2xs
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9maXhlZC1z
ZWxlY3Rpb24tYWZ0ZXItc2Nyb2xsLWV4cGVjdGVkLnR4dAppbmRleCA5OTE3Yjk2NDljNGI5NmY3
YTYyZDZmNzBmODc5OTk4OWRhNDk2MjVlLi45Njk3MmNiMzY0MTIyYjc0ZThlMDRhMzVhODkxMTA1
MzNkODcxNTI4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3Mv
Zml4ZWQtc2VsZWN0aW9uLWFmdGVyLXNjcm9sbC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2ZpeGVkLXNlbGVjdGlvbi1hZnRlci1zY3JvbGwtZXhw
ZWN0ZWQudHh0CkBAIC0xLDEzICsxLDEzIEBACiBQQVNTIGluaXRpYWxTZWxlY3Rpb25SZWN0cy5s
ZW5ndGggaXMgMQogUEFTUyBpbml0aWFsU2VsZWN0aW9uUmVjdHNbMF0ubGVmdCBpcyAwCi1QQVNT
IGluaXRpYWxTZWxlY3Rpb25SZWN0c1swXS50b3AgaXMgMAorUEFTUyBpbml0aWFsU2VsZWN0aW9u
UmVjdHNbMF0udG9wIGlzIDIKIFBBU1MgaW5pdGlhbFNlbGVjdGlvblJlY3RzWzBdLndpZHRoIGlz
IDMwOQotUEFTUyBpbml0aWFsU2VsZWN0aW9uUmVjdHNbMF0uaGVpZ2h0IGlzIDExNAorUEFTUyBp
bml0aWFsU2VsZWN0aW9uUmVjdHNbMF0uaGVpZ2h0IGlzIDExMgogUEFTUyBmaW5hbFNlbGVjdGlv
blJlY3RzLmxlbmd0aCBpcyAxCiBQQVNTIGZpbmFsU2VsZWN0aW9uUmVjdHNbMF0ubGVmdCBpcyAw
Ci1QQVNTIGZpbmFsU2VsZWN0aW9uUmVjdHNbMF0udG9wIGlzIDUwMDAKK1BBU1MgZmluYWxTZWxl
Y3Rpb25SZWN0c1swXS50b3AgaXMgNTAwMgogUEFTUyBmaW5hbFNlbGVjdGlvblJlY3RzWzBdLndp
ZHRoIGlzIDMwOQotUEFTUyBmaW5hbFNlbGVjdGlvblJlY3RzWzBdLmhlaWdodCBpcyAxMTQKK1BB
U1MgZmluYWxTZWxlY3Rpb25SZWN0c1swXS5oZWlnaHQgaXMgMTEyCiBQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9maXhlZC1zZWxlY3Rpb24tYWZ0ZXItc2Nyb2xsLmh0bWwg
Yi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvZml4ZWQtc2VsZWN0aW9uLWFmdGVy
LXNjcm9sbC5odG1sCmluZGV4IDUwNzZmNTJmOGYyYmI1YzMyZGFlYTY5YjlkODBiNzQzNTg3YTVh
NWQuLjE0YjI2ZDU4MDI0ODE2ZjMzNDNhZWQxZTg3Mjk1YWMxMDRiNWNiOWQgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9maXhlZC1zZWxlY3Rpb24tYWZ0ZXIt
c2Nyb2xsLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2ZpeGVk
LXNlbGVjdGlvbi1hZnRlci1zY3JvbGwuaHRtbApAQCAtNTEsOSArNTEsOSBAQAogICAgICAgICAg
ICAgaW5pdGlhbFNlbGVjdGlvblJlY3RzID0gcmVjdHM7CiAgICAgICAgICAgICBzaG91bGRCZSgi
aW5pdGlhbFNlbGVjdGlvblJlY3RzLmxlbmd0aCIsICIxIik7CiAgICAgICAgICAgICBzaG91bGRC
ZSgiaW5pdGlhbFNlbGVjdGlvblJlY3RzWzBdLmxlZnQiLCAiMCIpOwotICAgICAgICAgICAgc2hv
dWxkQmUoImluaXRpYWxTZWxlY3Rpb25SZWN0c1swXS50b3AiLCAiMCIpOworICAgICAgICAgICAg
c2hvdWxkQmUoImluaXRpYWxTZWxlY3Rpb25SZWN0c1swXS50b3AiLCAiMiIpOwogICAgICAgICAg
ICAgc2hvdWxkQmUoImluaXRpYWxTZWxlY3Rpb25SZWN0c1swXS53aWR0aCIsICIzMDkiKTsKLSAg
ICAgICAgICAgIHNob3VsZEJlKCJpbml0aWFsU2VsZWN0aW9uUmVjdHNbMF0uaGVpZ2h0IiwgIjEx
NCIpOworICAgICAgICAgICAgc2hvdWxkQmUoImluaXRpYWxTZWxlY3Rpb25SZWN0c1swXS5oZWln
aHQiLCAiMTEyIik7CiAgICAgICAgICAgICBkb2N1bWVudC5zY3JvbGxpbmdFbGVtZW50LnNjcm9s
bFRvcCArPSA1MDAwOwogICAgICAgICAgICAgcmV0dXJuIFVJSGVscGVyLmdldFVJU2VsZWN0aW9u
UmVjdHMoKTsKICAgICAgICAgfSkKQEAgLTYxLDkgKzYxLDkgQEAKICAgICAgICAgICAgIGZpbmFs
U2VsZWN0aW9uUmVjdHMgPSByZWN0czsKICAgICAgICAgICAgIHNob3VsZEJlKCJmaW5hbFNlbGVj
dGlvblJlY3RzLmxlbmd0aCIsICIxIik7CiAgICAgICAgICAgICBzaG91bGRCZSgiZmluYWxTZWxl
Y3Rpb25SZWN0c1swXS5sZWZ0IiwgIjAiKTsKLSAgICAgICAgICAgIHNob3VsZEJlKCJmaW5hbFNl
bGVjdGlvblJlY3RzWzBdLnRvcCIsICI1MDAwIik7CisgICAgICAgICAgICBzaG91bGRCZSgiZmlu
YWxTZWxlY3Rpb25SZWN0c1swXS50b3AiLCAiNTAwMiIpOwogICAgICAgICAgICAgc2hvdWxkQmUo
ImZpbmFsU2VsZWN0aW9uUmVjdHNbMF0ud2lkdGgiLCAiMzA5Iik7Ci0gICAgICAgICAgICBzaG91
bGRCZSgiZmluYWxTZWxlY3Rpb25SZWN0c1swXS5oZWlnaHQiLCAiMTE0Iik7CisgICAgICAgICAg
ICBzaG91bGRCZSgiZmluYWxTZWxlY3Rpb25SZWN0c1swXS5oZWlnaHQiLCAiMTEyIik7CiAgICAg
ICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKICAgICAgICAgfSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL3NlbGVjdGlvbi1hZnRlci1jaGFuZ2lu
Zy10ZXh0LXdpdGgtY2FsbG91dC1tZW51LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2VkaXRp
bmcvc2VsZWN0aW9uL2lvcy9zZWxlY3Rpb24tYWZ0ZXItY2hhbmdpbmctdGV4dC13aXRoLWNhbGxv
dXQtbWVudS1leHBlY3RlZC50eHQKaW5kZXggYjU4YjlmODA2YjNiYjdkNzBjZmVlNThlYmZlMTdm
NjlhNzlmMWQ5Ny4uZTNjM2Y1NDBmMWE2ODE4YjdkZGQ5MzFmNTFmNTk4OTM5ODZhYzRiOCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL3NlbGVjdGlvbi1hZnRl
ci1jaGFuZ2luZy10ZXh0LXdpdGgtY2FsbG91dC1tZW51LWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3Mvc2VsZWN0aW9uLWFmdGVyLWNoYW5naW5nLXRl
eHQtd2l0aC1jYWxsb3V0LW1lbnUtZXhwZWN0ZWQudHh0CkBAIC0zLDEwICszLDEwIEBAIFRoaXMg
dGVzdCB2ZXJpZmllcyB0aGF0IGludGVyYWN0aW5nIHdpdGggYSBtZW51IGFjdGlvbiBpdGVtIG9u
IGlPUyB0aGF0IGlzIG1hcmtlCiAKIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KIAotUEFTUyBz
ZWxlY3Rpb25SZWN0c1swXS50b3AgaXMgMTAxCitQQVNTIHNlbGVjdGlvblJlY3RzWzBdLnRvcCBp
cyAxMDIKIFBBU1Mgc2VsZWN0aW9uUmVjdHNbMF0ud2lkdGggaXMgMzIwCiBQQVNTIHNlbGVjdGlv
blJlY3RzWzBdLmxlZnQgaXMgMQotUEFTUyBzZWxlY3Rpb25SZWN0c1swXS5oZWlnaHQgaXMgMjkK
K1BBU1Mgc2VsZWN0aW9uUmVjdHNbMF0uaGVpZ2h0IGlzIDI4CiBQQVNTIHNlbGVjdGlvblJlY3Rz
WzFdLnRvcCBpcyAxMzAKIFBBU1Mgc2VsZWN0aW9uUmVjdHNbMV0ud2lkdGggaXMgMTcyCiBQQVNT
IHNlbGVjdGlvblJlY3RzWzFdLmxlZnQgaXMgMQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRp
dGluZy9zZWxlY3Rpb24vaW9zL3NlbGVjdGlvbi1hZnRlci1jaGFuZ2luZy10ZXh0LXdpdGgtY2Fs
bG91dC1tZW51Lmh0bWwgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3Mvc2VsZWN0
aW9uLWFmdGVyLWNoYW5naW5nLXRleHQtd2l0aC1jYWxsb3V0LW1lbnUuaHRtbAppbmRleCBmN2Y0
MDkwNjAyZTg3ZjIwZjE0NTBmODI4NTRhOTk0MDRhZmU3NzFmLi45NTk0MDJhODg1MzQ2MWM3NGVh
MTM5N2Y5ODVhZDNhNzk0ODJjODI2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3Nl
bGVjdGlvbi9pb3Mvc2VsZWN0aW9uLWFmdGVyLWNoYW5naW5nLXRleHQtd2l0aC1jYWxsb3V0LW1l
bnUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3Mvc2VsZWN0aW9u
LWFmdGVyLWNoYW5naW5nLXRleHQtd2l0aC1jYWxsb3V0LW1lbnUuaHRtbApAQCAtNTMsMTAgKzUz
LDEwIEBAIGFzeW5jIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CiAgICAgZGlzbWlzc2luZ01lbnUgPSBh
d2FpdCBVSUhlbHBlci5pc0Rpc21pc3NpbmdNZW51KCk7CiAgICAgc2hvd2luZ01lbnUgPSBhd2Fp
dCBVSUhlbHBlci5pc1Nob3dpbmdNZW51KCk7CiAKLSAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVj
dHNbMF0udG9wIiwgIjEwMSIpOworICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c1swXS50b3Ai
LCAiMTAyIik7CiAgICAgc2hvdWxkQmUoInNlbGVjdGlvblJlY3RzWzBdLndpZHRoIiwgIjMyMCIp
OwogICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c1swXS5sZWZ0IiwgIjEiKTsKLSAgICBzaG91
bGRCZSgic2VsZWN0aW9uUmVjdHNbMF0uaGVpZ2h0IiwgIjI5Iik7CisgICAgc2hvdWxkQmUoInNl
bGVjdGlvblJlY3RzWzBdLmhlaWdodCIsICIyOCIpOwogICAgIHNob3VsZEJlKCJzZWxlY3Rpb25S
ZWN0c1sxXS50b3AiLCAiMTMwIik7CiAgICAgc2hvdWxkQmUoInNlbGVjdGlvblJlY3RzWzFdLndp
ZHRoIiwgIjE3MiIpOwogICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c1sxXS5sZWZ0IiwgIjEi
KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9zZWxlY3Rp
b24taGFuZGxlcy1hZnRlci10b3VjaC1lbmQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZWRp
dGluZy9zZWxlY3Rpb24vaW9zL3NlbGVjdGlvbi1oYW5kbGVzLWFmdGVyLXRvdWNoLWVuZC1leHBl
Y3RlZC50eHQKaW5kZXggNzg2MjBhNWMxNTQzODNhZGMzMzlmMmYzYTgyYzc3ZTA1YjZiMTcwYi4u
ZTg2NjM3NjkxNGQxODZlNzU2OTJhYmVlMDMwOTRmY2E0NmFjMTRkNCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL3NlbGVjdGlvbi1oYW5kbGVzLWFmdGVyLXRv
dWNoLWVuZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24v
aW9zL3NlbGVjdGlvbi1oYW5kbGVzLWFmdGVyLXRvdWNoLWVuZC1leHBlY3RlZC50eHQKQEAgLTEs
MTEgKzEsMTEgQEAKIFdLCiAKIFNlbGVjdGlvbiByZWN0cyBiZWZvcmUgdG91Y2hlbmQ6Ci17IGxl
ZnQgPSAwLCB0b3AgPSAwLCB3aWR0aCA9IDI1MCwgaGVpZ2h0ID0gMTcwIH0KK3sgbGVmdCA9IDAs
IHRvcCA9IDMsIHdpZHRoID0gMjUwLCBoZWlnaHQgPSAxNjcgfQogU2VsZWN0aW9uIHN0YXJ0IGhh
bmRsZSBiZWZvcmUgdG91Y2hlbmQ6IHsgbGVmdCA9IDAsIHRvcCA9IDAsIHdpZHRoID0gMCwgaGVp
Z2h0ID0gMCB9CiBTZWxlY3Rpb24gZW5kIGhhbmRsZSBiZWZvcmUgdG91Y2hlbmQ6IHsgbGVmdCA9
IDAsIHRvcCA9IDAsIHdpZHRoID0gMCwgaGVpZ2h0ID0gMCB9CiAKIFNlbGVjdGlvbiByZWN0cyBh
ZnRlciB0b3VjaGVuZDoKLXsgbGVmdCA9IDAsIHRvcCA9IDAsIHdpZHRoID0gMjUwLCBoZWlnaHQg
PSAxNzAgfQotU2VsZWN0aW9uIHN0YXJ0IGhhbmRsZSBhZnRlciB0b3VjaGVuZDogeyBsZWZ0ID0g
MCwgdG9wID0gMCwgd2lkdGggPSAyLCBoZWlnaHQgPSAxNzAgfQotU2VsZWN0aW9uIGVuZCBoYW5k
bGUgYWZ0ZXIgdG91Y2hlbmQ6IHsgbGVmdCA9IDI0OSwgdG9wID0gMCwgd2lkdGggPSAyLCBoZWln
aHQgPSAxNzAgfQoreyBsZWZ0ID0gMCwgdG9wID0gMywgd2lkdGggPSAyNTAsIGhlaWdodCA9IDE2
NyB9CitTZWxlY3Rpb24gc3RhcnQgaGFuZGxlIGFmdGVyIHRvdWNoZW5kOiB7IGxlZnQgPSAwLCB0
b3AgPSAzLCB3aWR0aCA9IDIsIGhlaWdodCA9IDE2NyB9CitTZWxlY3Rpb24gZW5kIGhhbmRsZSBh
ZnRlciB0b3VjaGVuZDogeyBsZWZ0ID0gMjQ5LCB0b3AgPSAzLCB3aWR0aCA9IDIsIGhlaWdodCA9
IDE2NyB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvdXBk
YXRlLXNlbGVjdGlvbi1hZnRlci1vdmVyZmxvdy1zY3JvbGwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL3VwZGF0ZS1zZWxlY3Rpb24tYWZ0ZXItb3ZlcmZs
b3ctc2Nyb2xsLWV4cGVjdGVkLnR4dAppbmRleCBjMGYzZGE4YzQ0YmIyYTA1NTAxNjc1NjY5ZjUw
NmFhOTg2NzQ3ZTRjLi4xMzFhYjA3MjYyMWYyNjkxYzc3NzhjZjZkZDBiODZhOTA0NTA2MmEwIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvdXBkYXRlLXNlbGVj
dGlvbi1hZnRlci1vdmVyZmxvdy1zY3JvbGwtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2VkaXRpbmcvc2VsZWN0aW9uL2lvcy91cGRhdGUtc2VsZWN0aW9uLWFmdGVyLW92ZXJmbG93LXNj
cm9sbC1leHBlY3RlZC50eHQKQEAgLTIsMTggKzIsMTggQEAgVGhpcyB0ZXN0IHZlcmlmaWVzIHRo
YXQgYSBzZWxlY3Rpb24gaW4gYSBmYXN0IHNjcm9sbGFibGUgYXJlYSBpcyBrZXB0IHVwIHRvIGRh
dGUKIAogT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCi1QQVNTIHNlbGVjdGlvblJlY3RzQmVm
b3JlWzBdLnRvcCBpcyAxMDgKK1BBU1Mgc2VsZWN0aW9uUmVjdHNCZWZvcmVbMF0udG9wIGlzIDEw
OQogUEFTUyBzZWxlY3Rpb25SZWN0c0JlZm9yZVswXS53aWR0aCBpcyAzMjAKIFBBU1Mgc2VsZWN0
aW9uUmVjdHNCZWZvcmVbMF0ubGVmdCBpcyAwCi1QQVNTIHNlbGVjdGlvblJlY3RzQmVmb3JlWzBd
LmhlaWdodCBpcyAyOQorUEFTUyBzZWxlY3Rpb25SZWN0c0JlZm9yZVswXS5oZWlnaHQgaXMgMjgK
IFBBU1Mgc2VsZWN0aW9uUmVjdHNCZWZvcmVbMV0udG9wIGlzIDEzNwogUEFTUyBzZWxlY3Rpb25S
ZWN0c0JlZm9yZVsxXS53aWR0aCBpcyAxNzIKIFBBU1Mgc2VsZWN0aW9uUmVjdHNCZWZvcmVbMV0u
bGVmdCBpcyAwCiBQQVNTIHNlbGVjdGlvblJlY3RzQmVmb3JlWzFdLmhlaWdodCBpcyAzMAotUEFT
UyBzZWxlY3Rpb25SZWN0c0FmdGVyWzBdLnRvcCBpcyA1OAorUEFTUyBzZWxlY3Rpb25SZWN0c0Fm
dGVyWzBdLnRvcCBpcyA1OQogUEFTUyBzZWxlY3Rpb25SZWN0c0FmdGVyWzBdLndpZHRoIGlzIDMy
MAogUEFTUyBzZWxlY3Rpb25SZWN0c0FmdGVyWzBdLmxlZnQgaXMgMAotUEFTUyBzZWxlY3Rpb25S
ZWN0c0FmdGVyWzBdLmhlaWdodCBpcyAyOQorUEFTUyBzZWxlY3Rpb25SZWN0c0FmdGVyWzBdLmhl
aWdodCBpcyAyOAogUEFTUyBzZWxlY3Rpb25SZWN0c0FmdGVyWzFdLnRvcCBpcyA4NwogUEFTUyBz
ZWxlY3Rpb25SZWN0c0FmdGVyWzFdLndpZHRoIGlzIDE3MgogUEFTUyBzZWxlY3Rpb25SZWN0c0Fm
dGVyWzFdLmxlZnQgaXMgMApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rp
b24vaW9zL3VwZGF0ZS1zZWxlY3Rpb24tYWZ0ZXItb3ZlcmZsb3ctc2Nyb2xsLmh0bWwgYi9MYXlv
dXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvdXBkYXRlLXNlbGVjdGlvbi1hZnRlci1vdmVy
Zmxvdy1zY3JvbGwuaHRtbAppbmRleCBhMmJkYjZkMTA0NjcwOGQwYzhlZjI0MDM4Yjk4NzlkYWU3
ZTRjZmM3Li40MWJmOTMxNDkwY2MxNjRhMzYxMTIxODg5MDI3ZDhmZDQxZGUxZjY1IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvdXBkYXRlLXNlbGVjdGlvbi1h
ZnRlci1vdmVyZmxvdy1zY3JvbGwuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVj
dGlvbi9pb3MvdXBkYXRlLXNlbGVjdGlvbi1hZnRlci1vdmVyZmxvdy1zY3JvbGwuaHRtbApAQCAt
NjYsMTkgKzY2LDE5IEBAIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBhc3luYyBmdW5jdGlvbigp
IHsKICAgICBhd2FpdCBVSUhlbHBlci5pbW1lZGlhdGVTY3JvbGxFbGVtZW50QXRDb250ZW50UG9p
bnRUb09mZnNldCgxNTAsIDEwMCwgMCwgNTApOwogICAgIHNlbGVjdGlvblJlY3RzQWZ0ZXIgPSBh
d2FpdCB3YWl0Rm9yU2VsZWN0aW9uUmVjdHNUb0NoYW5nZShzZWxlY3Rpb25SZWN0c0JlZm9yZSk7
CiAKLSAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHNCZWZvcmVbMF0udG9wIiwgIjEwOCIpOwor
ICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c0JlZm9yZVswXS50b3AiLCAiMTA5Iik7CiAgICAg
c2hvdWxkQmUoInNlbGVjdGlvblJlY3RzQmVmb3JlWzBdLndpZHRoIiwgIjMyMCIpOwogICAgIHNo
b3VsZEJlKCJzZWxlY3Rpb25SZWN0c0JlZm9yZVswXS5sZWZ0IiwgIjAiKTsKLSAgICBzaG91bGRC
ZSgic2VsZWN0aW9uUmVjdHNCZWZvcmVbMF0uaGVpZ2h0IiwgIjI5Iik7CisgICAgc2hvdWxkQmUo
InNlbGVjdGlvblJlY3RzQmVmb3JlWzBdLmhlaWdodCIsICIyOCIpOwogICAgIHNob3VsZEJlKCJz
ZWxlY3Rpb25SZWN0c0JlZm9yZVsxXS50b3AiLCAiMTM3Iik7CiAgICAgc2hvdWxkQmUoInNlbGVj
dGlvblJlY3RzQmVmb3JlWzFdLndpZHRoIiwgIjE3MiIpOwogICAgIHNob3VsZEJlKCJzZWxlY3Rp
b25SZWN0c0JlZm9yZVsxXS5sZWZ0IiwgIjAiKTsKICAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVj
dHNCZWZvcmVbMV0uaGVpZ2h0IiwgIjMwIik7CiAKLSAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVj
dHNBZnRlclswXS50b3AiLCAiNTgiKTsKKyAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHNBZnRl
clswXS50b3AiLCAiNTkiKTsKICAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHNBZnRlclswXS53
aWR0aCIsICIzMjAiKTsKICAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHNBZnRlclswXS5sZWZ0
IiwgIjAiKTsKLSAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHNBZnRlclswXS5oZWlnaHQiLCAi
MjkiKTsKKyAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHNBZnRlclswXS5oZWlnaHQiLCAiMjgi
KTsKICAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHNBZnRlclsxXS50b3AiLCAiODciKTsKICAg
ICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHNBZnRlclsxXS53aWR0aCIsICIxNzIiKTsKICAgICBz
aG91bGRCZSgic2VsZWN0aW9uUmVjdHNBZnRlclsxXS5sZWZ0IiwgIjAiKTsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL3NlbGVjdGlvbi1hbmQtY2FyZXQtZG8tbm90
LWV4dGVuZC10by1saW5lLWhlaWdodC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9lZGl0aW5n
L3NlbGVjdGlvbi9zZWxlY3Rpb24tYW5kLWNhcmV0LWRvLW5vdC1leHRlbmQtdG8tbGluZS1oZWln
aHQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE5NTIxNGVlY2IxYWRlZmZhNGRkZDU5ZWQ1OTA5
OWVhZmY1Y2E1MTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVj
dGlvbi9zZWxlY3Rpb24tYW5kLWNhcmV0LWRvLW5vdC1leHRlbmQtdG8tbGluZS1oZWlnaHQtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTggQEAKK1RoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IGNhcmV0
IGFuZCBzZWxlY3Rpb24gaGVpZ2h0cyBkbyBub3QgZXh0ZW5kIHRvIG1hdGNoIGxpbmUgaGVpZ2h0
IChvciBwYXJ0IG9mIGxpbmUgaGVpZ2h0KS4gVG8gcnVuIHRoZSB0ZXN0IG1hbnVhbGx5LCBmb2N1
cyBlYWNoIG9mIHRoZSBlZGl0YWJsZSBlbGVtZW50cyBhbmQgbWFrZSBzdXJlIHRoYXQgdGhlIGNh
cmV0IHJvdWdobHkgbWF0Y2hlcyB0aGUgZm9udCBzaXplIGluIGVhY2ggZWRpdGFibGUgZWxlbWVu
dC4gVGhlbiBzZWxlY3QgdGV4dCBpbiBlYWNoIG9mIHRoZSBlbGVtZW50cyB3aXRoIHRleHQgYW5k
IHZlcmlmeSB0aGF0IHRoZSBzZWxlY3Rpb24gaGVpZ2h0IGFsc28gbWF0Y2hlcyB0aGUgZm9udCBz
aXplLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBMb2dpY2FsIHNlbGVj
dGlvbiBoZWlnaHQgaW4gI2hvcml6b250YWwgZGlkIG5vdCBleHRlbmQgdG8gbGluZSBoZWlnaHQu
CitQQVNTIExvZ2ljYWwgc2VsZWN0aW9uIGhlaWdodCBpbiAjdmVydGljYWwgZGlkIG5vdCBleHRl
bmQgdG8gbGluZSBoZWlnaHQuCitQQVNTIExvZ2ljYWwgY2FyZXQgaGVpZ2h0IGluICNob3Jpem9u
dGFsIGRpZCBub3QgZXh0ZW5kIHRvIGxpbmUgaGVpZ2h0LgorUEFTUyBMb2dpY2FsIGNhcmV0IGhl
aWdodCBpbiAjaG9yaXpvbnRhbC1lbXB0eSBkaWQgbm90IGV4dGVuZCB0byBsaW5lIGhlaWdodC4K
K1BBU1MgTG9naWNhbCBjYXJldCBoZWlnaHQgaW4gI3ZlcnRpY2FsIGRpZCBub3QgZXh0ZW5kIHRv
IGxpbmUgaGVpZ2h0LgorUEFTUyBMb2dpY2FsIGNhcmV0IGhlaWdodCBpbiAjdmVydGljYWwtZW1w
dHkgZGlkIG5vdCBleHRlbmQgdG8gbGluZSBoZWlnaHQuCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK0ZvbworCitCYXIKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vc2VsZWN0aW9uLWFuZC1jYXJldC1kby1ub3QtZXh0
ZW5kLXRvLWxpbmUtaGVpZ2h0Lmh0bWwgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9z
ZWxlY3Rpb24tYW5kLWNhcmV0LWRvLW5vdC1leHRlbmQtdG8tbGluZS1oZWlnaHQuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5kYzhkZWQyMTU5OGFhYmZkOWY4NjY3YzY3OGVlZGYzZDM5ZTkwYWZjCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vc2VsZWN0aW9uLWFuZC1j
YXJldC1kby1ub3QtZXh0ZW5kLXRvLWxpbmUtaGVpZ2h0Lmh0bWwKQEAgLTAsMCArMSw3NyBAQAor
PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KKyNob3Jpem9udGFsLCAjaG9yaXpv
bnRhbC1lbXB0eSwgI3ZlcnRpY2FsLCAjdmVydGljYWwtZW1wdHkgeworICAgIGZvbnQtc2l6ZTog
MjBweDsKKyAgICBsaW5lLWhlaWdodDogMTAwcHg7CisgICAgb3V0bGluZTogbm9uZTsKK30KKwor
I2hvcml6b250YWwgeworICAgIGJvcmRlcjogMXB4IHNvbGlkIHRvbWF0bzsKK30KKworI2hvcml6
b250YWwtZW1wdHkgeworICAgIGJvcmRlcjogMXB4IHNvbGlkIGxpZ2h0Ymx1ZTsKK30KKworI3Zl
cnRpY2FsIHsKKyAgICBib3JkZXI6IDFweCBzb2xpZCBvcmFuZ2U7Cit9CisKKyN2ZXJ0aWNhbC1l
bXB0eSB7CisgICAgbWFyZ2luLXRvcDogMWVtOworICAgIGhlaWdodDogNDRweDsKKyAgICBib3Jk
ZXI6IDFweCBzb2xpZCBjeWFuOworfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9
Imhvcml6b250YWwiIGNvbnRlbnRlZGl0YWJsZT5Gb288L3A+Cis8cCBpZD0iaG9yaXpvbnRhbC1l
bXB0eSIgY29udGVudGVkaXRhYmxlPjwvcD4KKzxkaXYgaWQ9InZlcnRpY2FsIiBzdHlsZT0id3Jp
dGluZy1tb2RlOiB2ZXJ0aWNhbC1scjsiIGNvbnRlbnRlZGl0YWJsZT5CYXI8L2Rpdj4KKzxkaXYg
aWQ9InZlcnRpY2FsLWVtcHR5IiBzdHlsZT0id3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1scjsiIGNv
bnRlbnRlZGl0YWJsZT48L2Rpdj4KKzxzY3JpcHQ+CitmdW5jdGlvbiBsb2dpY2FsSGVpZ2h0T2ZS
ZWN0KGVsZW1lbnQsIHJlY3QpIHsKKyAgICByZXR1cm4gZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50
KS53cml0aW5nTW9kZS5zdGFydHNXaXRoKCJ2ZXJ0aWNhbCIpID8gcmVjdC53aWR0aCA6IHJlY3Qu
aGVpZ2h0OworfQorCitmdW5jdGlvbiB0ZXN0TG9naWNhbEhlaWdodE9mU2VsZWN0aW9uKGVsZW1l
bnRJRCkgeworICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChlbGVt
ZW50SUQpOworICAgIGVsZW1lbnQuZm9jdXMoKTsKKyAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgi
U2VsZWN0QWxsIik7CisKKyAgICBjb25zdCBoZWlnaHQgPSBsb2dpY2FsSGVpZ2h0T2ZSZWN0KGVs
ZW1lbnQsIGludGVybmFscy5zZWxlY3Rpb25Cb3VuZHMoKSk7CisgICAgaWYgKGhlaWdodCA8IDI1
KQorICAgICAgICB0ZXN0UGFzc2VkKGBMb2dpY2FsIHNlbGVjdGlvbiBoZWlnaHQgaW4gIyR7ZWxl
bWVudElEfSBkaWQgbm90IGV4dGVuZCB0byBsaW5lIGhlaWdodC5gKTsKKyAgICBlbHNlCisgICAg
ICAgIHRlc3RGYWlsZWQoYExvZ2ljYWwgc2VsZWN0aW9uIGhlaWdodCBpbiAjJHtlbGVtZW50SUR9
IHdhcyB0b28gdGFsbCAob2JzZXJ2ZWQ6ICR7aGVpZ2h0fSkuYCk7CisgICAgZWxlbWVudC5ibHVy
KCk7Cit9CisKK2Z1bmN0aW9uIHRlc3RMb2dpY2FsSGVpZ2h0T2ZDYXJldChlbGVtZW50SUQpIHsK
KyAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZWxlbWVudElEKTsK
KyAgICBlbGVtZW50LmZvY3VzKCk7CisKKyAgICBjb25zdCBoZWlnaHQgPSBsb2dpY2FsSGVpZ2h0
T2ZSZWN0KGVsZW1lbnQsIGludGVybmFscy5hYnNvbHV0ZUNhcmV0Qm91bmRzKCkpOworICAgIGlm
IChoZWlnaHQgPCAyNSkKKyAgICAgICAgdGVzdFBhc3NlZChgTG9naWNhbCBjYXJldCBoZWlnaHQg
aW4gIyR7ZWxlbWVudElEfSBkaWQgbm90IGV4dGVuZCB0byBsaW5lIGhlaWdodC5gKTsKKyAgICBl
bHNlCisgICAgICAgIHRlc3RGYWlsZWQoYExvZ2ljYWwgY2FyZXQgaGVpZ2h0IGluICMke2VsZW1l
bnRJRH0gd2FzIHRvbyB0YWxsIChvYnNlcnZlZDogJHtoZWlnaHR9KS5gKTsKKyAgICBlbGVtZW50
LmJsdXIoKTsKK30KKworZGVzY3JpcHRpb24oIlRoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IGNhcmV0
IGFuZCBzZWxlY3Rpb24gaGVpZ2h0cyBkbyBub3QgZXh0ZW5kIHRvIG1hdGNoIGxpbmUgaGVpZ2h0
IChvciBwYXJ0IG9mIGxpbmUgaGVpZ2h0KS4gVG8gcnVuIHRoZSB0ZXN0IG1hbnVhbGx5LCBmb2N1
cyBlYWNoIG9mIHRoZSBlZGl0YWJsZSBlbGVtZW50cyBhbmQgbWFrZSBzdXJlIHRoYXQgdGhlIGNh
cmV0IHJvdWdobHkgbWF0Y2hlcyB0aGUgZm9udCBzaXplIGluIGVhY2ggZWRpdGFibGUgZWxlbWVu
dC4gVGhlbiBzZWxlY3QgdGV4dCBpbiBlYWNoIG9mIHRoZSBlbGVtZW50cyB3aXRoIHRleHQgYW5k
IHZlcmlmeSB0aGF0IHRoZSBzZWxlY3Rpb24gaGVpZ2h0IGFsc28gbWF0Y2hlcyB0aGUgZm9udCBz
aXplLiIpOworaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgdGVzdExvZ2ljYWxIZWlnaHRP
ZlNlbGVjdGlvbigiaG9yaXpvbnRhbCIpOworICAgIHRlc3RMb2dpY2FsSGVpZ2h0T2ZTZWxlY3Rp
b24oInZlcnRpY2FsIik7CisgICAgdGVzdExvZ2ljYWxIZWlnaHRPZkNhcmV0KCJob3Jpem9udGFs
Iik7CisgICAgdGVzdExvZ2ljYWxIZWlnaHRPZkNhcmV0KCJob3Jpem9udGFsLWVtcHR5Iik7Cisg
ICAgdGVzdExvZ2ljYWxIZWlnaHRPZkNhcmV0KCJ2ZXJ0aWNhbCIpOworICAgIHRlc3RMb2dpY2Fs
SGVpZ2h0T2ZDYXJldCgidmVydGljYWwtZW1wdHkiKTsKK30KKzwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZXBhaW50L2ZvY3VzLXJpbmct
cmVwYWludC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlcGFpbnQvZm9jdXMtcmlu
Zy1yZXBhaW50LWV4cGVjdGVkLnR4dAppbmRleCA3ODJmMmZiMDQ2MGIxOTFhMTczZThkZTJmZDFi
OTNiM2E4YmUwNzUzLi4zZTY1NGNiNDAxOTU1NzZiY2FjNzI5ZmY2OGM1OTA0MGM0MDIxYzA5IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlcGFpbnQvZm9jdXMtcmluZy1yZXBhaW50LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlcGFpbnQvZm9jdXMtcmluZy1yZXBh
aW50LWV4cGVjdGVkLnR4dApAQCAtMTAsOCArMTAsOCBAQAogICAocmVjdCA1IDQ1NyAxMDMgNjcp
CiAgIChyZWN0IDUgNDU3IDEwNiA3MCkKICAgKHJlY3QgNSA1NDIgMTA2IDcwKQotICAocmVjdCAx
NSAzMiAzNiA3MCkKLSAgKHJlY3QgMTggMzUgMzAgNjQpCisgIChyZWN0IDE1IDYyIDM2IDQwKQor
ICAocmVjdCAxOCA2NSAzMCAzNCkKICAgKHJlY3QgNSA4OSA1NiAxMCkKICAgKHJlY3QgNSAzNSA1
NiA2NCkKICAgKHJlY3QgNSAxMTcgMzYgNjApCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9pb3MvZWRpdGluZy9zZWxlY3Rpb24vaW9zL3NlbGVjdGlvbi1oYW5kbGVzLWFmdGVyLXRv
dWNoLWVuZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvZWRpdGluZy9z
ZWxlY3Rpb24vaW9zL3NlbGVjdGlvbi1oYW5kbGVzLWFmdGVyLXRvdWNoLWVuZC1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFhMDA0NjAyZjgwZmUyNzRkNTIwMTVm
MjU5ZDJkNTkzY2JlODZlZmUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9z
ZWxlY3Rpb24taGFuZGxlcy1hZnRlci10b3VjaC1lbmQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251
bGwKQEAgLTEsMTEgKzAsMCBAQAotV0sKLQotU2VsZWN0aW9uIHJlY3RzIGJlZm9yZSB0b3VjaGVu
ZDoKLXsgbGVmdCA9IDAsIHRvcCA9IDAsIHdpZHRoID0gMjUwLCBoZWlnaHQgPSAxNzAgfQotU2Vs
ZWN0aW9uIHN0YXJ0IGhhbmRsZSBiZWZvcmUgdG91Y2hlbmQ6IHsgbGVmdCA9IDAsIHRvcCA9IDAs
IHdpZHRoID0gMiwgaGVpZ2h0ID0gMTcwIH0KLVNlbGVjdGlvbiBlbmQgaGFuZGxlIGJlZm9yZSB0
b3VjaGVuZDogeyBsZWZ0ID0gMjQ5LCB0b3AgPSAwLCB3aWR0aCA9IDIsIGhlaWdodCA9IDE3MCB9
Ci0KLVNlbGVjdGlvbiByZWN0cyBhZnRlciB0b3VjaGVuZDoKLXsgbGVmdCA9IDAsIHRvcCA9IDAs
IHdpZHRoID0gMjUwLCBoZWlnaHQgPSAxNzAgfQotU2VsZWN0aW9uIHN0YXJ0IGhhbmRsZSBhZnRl
ciB0b3VjaGVuZDogeyBsZWZ0ID0gMCwgdG9wID0gMCwgd2lkdGggPSAyLCBoZWlnaHQgPSAxNzAg
fQotU2VsZWN0aW9uIGVuZCBoYW5kbGUgYWZ0ZXIgdG91Y2hlbmQ6IHsgbGVmdCA9IDI0OSwgdG9w
ID0gMCwgd2lkdGggPSAyLCBoZWlnaHQgPSAxNzAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>396847</attachid>
            <date>2020-04-18 07:48:52 -0700</date>
            <delta_ts>2020-04-18 07:48:52 -0700</delta_ts>
            <desc>Minimal repro case</desc>
            <filename>minimal-repro.html</filename>
            <type>text/html</type>
            <size>33</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">PGlucHV0IHN0eWxlPSJsaW5lLWhlaWdodDogMTBlbSI+
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396850</attachid>
            <date>2020-04-18 08:17:51 -0700</date>
            <delta_ts>2020-04-20 08:53:53 -0700</delta_ts>
            <desc>More rebaselining</desc>
            <filename>bug-210622-20200418081750.patch</filename>
            <type>text/plain</type>
            <size>37021</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwMTU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTJmNTQ0MThjZDBhOTVi
NmNkMTdjNDljNzNhMDc2NTBhNWRiMzAwYi4uMzk0ZDliNTQwNGY2ZjA4MzZmMGU1OGZkM2Q3ZWRm
NzBhNmRjNTI1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYwIEBACisyMDIwLTA0LTE3ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIE92ZXJzaXplZCBj
YXJldCBhbmQgc2VsZWN0aW9uIHJlY3RzIGluIHRleHQgZmllbGRzIG9uIGdhbmppLmNvbSBhbmQg
bmV0ZmxpeC5jb20vbG9naW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxMDYyMgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDU5NDU2MzY+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ3VycmVudGx5LCBz
ZWxlY3Rpb24gYW5kIGNhcmV0IHJlY3RzIGluIHRleHQgZmllbGRzIG9uIHNvbWUgd2ViIHBhZ2Vz
IGNhbiBiZSBleGNlc3NpdmVseSB0YWxsLiBUaGlzIHBhdGNoIG1ha2VzCisgICAgICAgIGEgc21h
bGwgYWRqdXN0bWVudCB0byBhbGxvdyB0aGUgdG9wIG9mIHRoZSBjYXJldCBvciBzZWxlY3Rpb24g
cmVjdCB0byBzbmFwIHRvIHRoZSB0b3Agb2YgdGhlIGlubGluZSBib3ggaW5zdGVhZAorICAgICAg
ICBvZiBiZWluZyBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBsaW5lLCBpbiB0aGUgY2FzZSB3
aGVyZSB0aGVyZSBpcyBubyBwcmV2aW91cyBpbmxpbmUgYm94LgorCisgICAgICAgIEluIHRoZSBj
YXNlIHdoZXJlIHdlIGNvbXB1dGUgdGhlIGNhcmV0IHJlY3QgZm9yIGFuIGVtcHR5IHJlbmRlcmVy
IChpLmUuIG5vIGNoaWxkcmVuKSwgd2UgbWFrZSBhbiBhZGRpdGlvbmFsCisgICAgICAgIHR3ZWFr
IHNvIHRoYXQgdGhlIGNhcmV0IHJlY3QncyBoZWlnaHQgaXMgYmFzZWQgb24gdGhlIGNvbXB1dGVk
IGZvbnQgaGVpZ2h0IGluc3RlYWQgb2YgbGluZSBoZWlnaHQsIGFuZCB0aGVuIHdlCisgICAgICAg
IGVuc3VyZSB0aGF0IHRoZSBjYXJldCBpcyAobG9naWNhbGx5KSB2ZXJ0aWNhbGx5IGNlbnRlcmVk
LgorCisgICAgICAgIFNlZSBiZWxvdyBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAgICAgIFRlc3Q6
IGVkaXRpbmcvc2VsZWN0aW9uL3NlbGVjdGlvbi1hbmQtY2FyZXQtZG8tbm90LWV4dGVuZC10by1s
aW5lLWhlaWdodC5odG1sCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrRmxvdzo6cG9zaXRpb25Gb3JQb2ludFdp
dGhJbmxpbmVDaGlsZHJlbik6CisKKyAgICAgICAgU3BlY2lmeSBGb3JIaXRUZXN0aW5nOjpZZXMg
d2hlbiBhc2tpbmcgZm9yIHNlbGVjdGlvblRvcCgpLgorCisgICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlckJveE1vZGVsT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveE1vZGVs
T2JqZWN0Ojpsb2NhbENhcmV0UmVjdEZvckVtcHR5RWxlbWVudCk6CisKKyAgICAgICAgVXNlIEZv
bnRNZXRyaWMncyBoZWlnaHQgd2hlbiBjb21wdXRpbmcgdGhlIGhlaWdodCBvZiB0aGUgY2FyZXQg
cmVjdCwgYW5kIHRoZW4gY2VudGVyIGl0IHZlcnRpY2FsbHkgaW4gdGhlCisgICAgICAgIHJlbmRl
cmVyLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclJlcGxhY2VkOjpwb3NpdGlvbkZvclBvaW50KToKKworICAgICAgICBT
cGVjaWZ5IEZvckhpdFRlc3Rpbmc6OlllcyB3aGVuIGFza2luZyBmb3Igc2VsZWN0aW9uVG9wKCku
IFNlZSBiZWxvdyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KKworICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJUZXh0TGluZUJveGVzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRleHRMaW5l
Qm94ZXM6OnBvc2l0aW9uRm9yUG9pbnQgY29uc3QpOgorICAgICAgICAqIHJlbmRlcmluZy9Sb290
SW5saW5lQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJvb3RJbmxpbmVCb3g6OnNlbGVjdGlv
blRvcCBjb25zdCk6CisKKyAgICAgICAgV2hlbiBjb21wdXRpbmcgc2VsZWN0aW9uVG9wKCksIHdl
IGN1cnJlbnRseSBmYWxsIGJhY2sgdG8gdXNpbmcgdGhlIHRvcCBvZiB0aGUgY29udGFpbmluZyBS
ZW5kZXJCbG9ja0Zsb3cKKyAgICAgICAgKGBibG9ja0Zsb3coKS5ib3JkZXJBbmRQYWRkaW5nQmVm
b3JlKClgKSBpbiB0aGUgY2FzZSB3aGVyZSB0aGVyZSBpcyBubyBwcmV2aW91cyByb290IGJveC4g
SG93ZXZlciwgdGhpcyBjYW4gbGVhZAorICAgICAgICB0byBzZWxlY3Rpb24gYW5kIGNhcmV0IHJl
Y3RzIGJlaW5nIHRhbGxlciB0aGFuIGV4cGVjdGVkOyBpbnN0ZWFkLCB3ZSBjYW4gdXNlIHRoZSBt
YXggb2YgdGhlIGBzZWxlY3Rpb25Ub3BgCisgICAgICAgICh0aGF0IGlzLCB0aGUgdG9wIG9mIHRo
ZSBsaW5lIGJveCwgYWRqdXN0ZWQgZm9yIGFubm90YXRpb25zKSBhbmQgdGhlIHRvcCBvZiB0aGUg
UmVuZGVyQmxvY2tGbG93LiBUaGlzIGhhcyB0aGUKKyAgICAgICAgZWZmZWN0IG9mIGFsbG93aW5n
IHRoZSBjYXJldCBhbmQgc2VsZWN0aW9uIHRvIHZpc3VhbGx5IHNuYXAgdG8gdGhlIHRvcCBvZiBh
IHJ1biBvZiB0ZXh0LCBwcm92aWRlZCB0aGVyZSBpcyBub3QKKyAgICAgICAgYWxyZWFkeSBhIGxp
bmUgb2YgdGV4dCB0aGF0IHByZWNlZGVzIGl0LiBUYWtpbmcgdGhlIG1heGltdW0gb2YgdGhlIHR3
byB2YWx1ZXMgZW5zdXJlcyB0aGF0IHdlIGRvbid0CisgICAgICAgIHVuaW50ZW50aW9uYWxseSBt
YWtlIHRoZSBzZWxlY3Rpb24gb3IgY2FyZXQgcmVjdHMgZXZlbiBsYXJnZXIsIGlmIHRoZSBsaW5l
IHRvcCBpcyBhYm92ZSB0aGUgdG9wIG9mIHRoZSBibG9jay4KKworICAgICAgICBOb3RlIHRoYXQg
d2UgYWxzbyBhdm9pZCBzaHJpbmtpbmcgdGhlIHNlbGVjdGlvbiBhbmQgY2FyZXQgcmVjdHMgd2hl
biBoaXQtdGVzdGluZyByZW5kZXJlcnMgZm9yIHBvc2l0aW9ucyBhbmQKKyAgICAgICAgcmFuZ2Vz
LiBUaGlzIGFsbG93cyB1c2VycyB0byBzdGlsbCBjbGljayBhbmQgZHJhZyB0byBzZWxlY3QgdGV4
dCBpbiB0aGUgZXh0cmEgbGluZS1oZWlnaHQgYXJlYSBhYm92ZSBhIHBpZWNlIG9mCisgICAgICAg
IHRleHQsIGV2ZW4gaWYgdGhlIHNlbGVjdGlvbiBpcyBvbmx5IHBhaW50ZWQgb3ZlciB0aGUgdGV4
dCAoYW5kIG5vdCBpbiB0aGUgcmVnaW9uIGNvbnRhaW5pbmcgdGhlIGxpbmUtaGVpZ2h0KS4KKyAg
ICAgICAgVGhpcyBiZWhhdmlvciB3YXMgZXN0YWJsaXNoZWQgaW4gdGhlIGZpeCBmb3Igd2Via2l0
Lm9yZy9iLzE0OTExLCBhbmQgaXMgY292ZXJlZCBieSB0aGUgbGF5b3V0IHRlc3QKKyAgICAgICAg
YGVkaXRpbmcvc2VsZWN0aW9uL2lubGluZS1jbG9zZXN0LWxlYWYtY2hpbGQuaHRtbGAuCisKKyAg
ICAgICAgKiByZW5kZXJpbmcvUm9vdElubGluZUJveC5oOgorCiAyMDIwLTA0LTE1ICBKYWNrIExl
ZSAgPHNoaWhjaGllaF9sZWVAYXBwbGUuY29tPgogCiAgICAgICAgIEFTU0VSVElPTiBGQUlMRUQ6
ICFzZWxlY3Rpb25Ub0RlbGV0ZS5pc05vbmUoKSBpbiBUeXBpbmdDb21tYW5kOjpmb3J3YXJkRGVs
ZXRlS2V5UHJlc3NlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckJsb2NrRmxvdy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93
LmNwcAppbmRleCBkMDliMWM4ZmQ0ZDMzNzU2MGY3Y2RkZmZlZDVjNmJkMjU2NWQxMTRiLi40MDRk
ZTEzNzdlY2UyMDFkYWU5MzBkYzQ2ODMzNDk1MWQzOGMxOWQyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmNwcApAQCAtMzUzNyw3ICszNTM3LDcgQEAgVmlz
aWJsZVBvc2l0aW9uIFJlbmRlckJsb2NrRmxvdzo6cG9zaXRpb25Gb3JQb2ludFdpdGhJbmxpbmVD
aGlsZHJlbihjb25zdCBMYXlvdXQKIAogICAgIGlmIChjbG9zZXN0Qm94KSB7CiAgICAgICAgIGlm
IChtb3ZlQ2FyZXRUb0JvdW5kYXJ5KSB7Ci0gICAgICAgICAgICBMYXlvdXRVbml0IGZpcnN0Um9v
dEJveFdpdGhDaGlsZHJlblRvcCA9IHN0ZDo6bWluKGZpcnN0Um9vdEJveFdpdGhDaGlsZHJlbi0+
c2VsZWN0aW9uVG9wKCksIExheW91dFVuaXQoZmlyc3RSb290Qm94V2l0aENoaWxkcmVuLT5sb2dp
Y2FsVG9wKCkpKTsKKyAgICAgICAgICAgIExheW91dFVuaXQgZmlyc3RSb290Qm94V2l0aENoaWxk
cmVuVG9wID0gc3RkOjptaW4oZmlyc3RSb290Qm94V2l0aENoaWxkcmVuLT5zZWxlY3Rpb25Ub3Ao
Um9vdElubGluZUJveDo6Rm9ySGl0VGVzdGluZzo6WWVzKSwgTGF5b3V0VW5pdChmaXJzdFJvb3RC
b3hXaXRoQ2hpbGRyZW4tPmxvZ2ljYWxUb3AoKSkpOwogICAgICAgICAgICAgaWYgKHBvaW50SW5M
b2dpY2FsQ29udGVudHMueSgpIDwgZmlyc3RSb290Qm94V2l0aENoaWxkcmVuVG9wCiAgICAgICAg
ICAgICAgICAgfHwgKGJsb2Nrc0FyZUZsaXBwZWQgJiYgcG9pbnRJbkxvZ2ljYWxDb250ZW50cy55
KCkgPT0gZmlyc3RSb290Qm94V2l0aENoaWxkcmVuVG9wKSkgewogICAgICAgICAgICAgICAgIElu
bGluZUJveCogYm94ID0gZmlyc3RSb290Qm94V2l0aENoaWxkcmVuLT5maXJzdExlYWZEZXNjZW5k
YW50KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9k
ZWxPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2Jq
ZWN0LmNwcAppbmRleCBiOWY5YjRhYzY5Zjk1Yzc5OGIwN2U3ZjU3MWU5MTkyM2Q4ZGI1NWI1Li5h
YzY1OTc5MjI2MmM0YTY3YWQ0MzM2NWE0ZDQyMzNiMDRiNTA0ZDdmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAKQEAgLTI1OTcsNyAr
MjU5Nyw2IEBAIExheW91dFJlY3QgUmVuZGVyQm94TW9kZWxPYmplY3Q6OmxvY2FsQ2FyZXRSZWN0
Rm9yRW1wdHlFbGVtZW50KExheW91dFVuaXQgd2lkdGgsCiAgICAgLy8gY29uc3RydWN0ZWQgYW5k
IHRoaXMga2x1ZGdlIGlzIG5vdCBjYWxsZWQgYW55IG1vcmUuIFNvIG9ubHkgdGhlIGNhcmV0IHNp
emUKICAgICAvLyBvZiBhbiBlbXB0eSA6Zmlyc3QtbGluZSdkIGJsb2NrIGlzIHdyb25nLiBJIHRo
aW5rIHdlIGNhbiBsaXZlIHdpdGggdGhhdC4KICAgICBjb25zdCBSZW5kZXJTdHlsZSYgY3VycmVu
dFN0eWxlID0gZmlyc3RMaW5lU3R5bGUoKTsKLSAgICBMYXlvdXRVbml0IGhlaWdodCA9IGxpbmVI
ZWlnaHQodHJ1ZSwgY3VycmVudFN0eWxlLmlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkgPyBIb3Jp
em9udGFsTGluZSA6IFZlcnRpY2FsTGluZSk7CiAKICAgICBlbnVtIENhcmV0QWxpZ25tZW50IHsg
YWxpZ25MZWZ0LCBhbGlnblJpZ2h0LCBhbGlnbkNlbnRlciB9OwogCkBAIC0yNjQ5LDggKzI2NDgs
OSBAQCBMYXlvdXRSZWN0IFJlbmRlckJveE1vZGVsT2JqZWN0Ojpsb2NhbENhcmV0UmVjdEZvckVt
cHR5RWxlbWVudChMYXlvdXRVbml0IHdpZHRoLAogICAgIH0KICAgICB4ID0gc3RkOjptaW4oeCwg
c3RkOjptYXg8TGF5b3V0VW5pdD4obWF4WCAtIGNhcmV0V2lkdGgsIDApKTsKIAotICAgIExheW91
dFVuaXQgeSA9IHBhZGRpbmdUb3AoKSArIGJvcmRlclRvcCgpOwotCisgICAgYXV0byBsaW5lSGVp
Z2h0ID0gdGhpcy0+bGluZUhlaWdodCh0cnVlLCBjdXJyZW50U3R5bGUuaXNIb3Jpem9udGFsV3Jp
dGluZ01vZGUoKSA/IEhvcml6b250YWxMaW5lIDogVmVydGljYWxMaW5lLCBQb3NpdGlvbk9mSW50
ZXJpb3JMaW5lQm94ZXMpOworICAgIGF1dG8gaGVpZ2h0ID0gc3RkOjptaW4obGluZUhlaWdodCwg
TGF5b3V0VW5pdCB7IGN1cnJlbnRTdHlsZS5mb250TWV0cmljcygpLmhlaWdodCgpIH0pOworICAg
IGF1dG8geSA9IHBhZGRpbmdUb3AoKSArIGJvcmRlclRvcCgpICsgKGxpbmVIZWlnaHQgPiBoZWln
aHQgPyAobGluZUhlaWdodCAtIGhlaWdodCkgLyAyIDogTGF5b3V0VW5pdCB7IH0pOwogICAgIHJl
dHVybiBjdXJyZW50U3R5bGUuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSA/IExheW91dFJlY3Qo
eCwgeSwgY2FyZXRXaWR0aCwgaGVpZ2h0KSA6IExheW91dFJlY3QoeSwgeCwgaGVpZ2h0LCBjYXJl
dFdpZHRoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clJlcGxhY2VkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5j
cHAKaW5kZXggMDBiNjFmN2YwMGM4M2FkNTMyYWM1N2EyZGJlODBiNjJiYTQ4ZjE3ZC4uNWIzYmFk
MDY2ZTA3MGE0Y2NhODNlMGM0NzVlODE0MWNlOTRmM2MwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyUmVwbGFjZWQuY3BwCkBAIC02MjAsNyArNjIwLDcgQEAgVmlzaWJsZVBv
c2l0aW9uIFJlbmRlclJlcGxhY2VkOjpwb3NpdGlvbkZvclBvaW50KGNvbnN0IExheW91dFBvaW50
JiBwb2ludCwgY29uc3QKICAgICBJbmxpbmVCb3gqIGJveCA9IGlubGluZUJveFdyYXBwZXIoKTsK
ICAgICBjb25zdCBSb290SW5saW5lQm94KiByb290Qm94ID0gYm94ID8gJmJveC0+cm9vdCgpIDog
MDsKICAgICAKLSAgICBMYXlvdXRVbml0IHRvcCA9IHJvb3RCb3ggPyByb290Qm94LT5zZWxlY3Rp
b25Ub3AoKSA6IGxvZ2ljYWxUb3AoKTsKKyAgICBMYXlvdXRVbml0IHRvcCA9IHJvb3RCb3ggPyBy
b290Qm94LT5zZWxlY3Rpb25Ub3AoUm9vdElubGluZUJveDo6Rm9ySGl0VGVzdGluZzo6WWVzKSA6
IGxvZ2ljYWxUb3AoKTsKICAgICBMYXlvdXRVbml0IGJvdHRvbSA9IHJvb3RCb3ggPyByb290Qm94
LT5zZWxlY3Rpb25Cb3R0b20oKSA6IGxvZ2ljYWxCb3R0b20oKTsKICAgICAKICAgICBMYXlvdXRV
bml0IGJsb2NrRGlyZWN0aW9uUG9zaXRpb24gPSBpc0hvcml6b250YWxXcml0aW5nTW9kZSgpID8g
cG9pbnQueSgpICsgeSgpIDogcG9pbnQueCgpICsgeCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHRMaW5lQm94ZXMuY3BwIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRleHRMaW5lQm94ZXMuY3BwCmluZGV4IDVlZTU1OWMyNTIxNTE0Y2Zl
ZDI2YjMxNjFiZjQ0MzZiNWE0YzNjNjkuLjI5ZGQyNzM0YWJjNTEyZTA5NzIyYjQ0ZDBjZjZiODM4
MmQ3YTI0OTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0
TGluZUJveGVzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dExp
bmVCb3hlcy5jcHAKQEAgLTMxMiw3ICszMTIsNyBAQCBWaXNpYmxlUG9zaXRpb24gUmVuZGVyVGV4
dExpbmVCb3hlczo6cG9zaXRpb25Gb3JQb2ludChjb25zdCBSZW5kZXJUZXh0JiByZW5kZXJlcgog
ICAgICAgICAgICAgYm94ID0gYm94LT5uZXh0VGV4dEJveCgpOwogCiAgICAgICAgIGF1dG8mIHJv
b3RCb3ggPSBib3gtPnJvb3QoKTsKLSAgICAgICAgTGF5b3V0VW5pdCB0b3AgPSBzdGQ6Om1pbihy
b290Qm94LnNlbGVjdGlvblRvcCgpLCByb290Qm94LmxpbmVUb3AoKSk7CisgICAgICAgIExheW91
dFVuaXQgdG9wID0gc3RkOjptaW4ocm9vdEJveC5zZWxlY3Rpb25Ub3AoUm9vdElubGluZUJveDo6
Rm9ySGl0VGVzdGluZzo6WWVzKSwgcm9vdEJveC5saW5lVG9wKCkpOwogICAgICAgICBpZiAocG9p
bnRCbG9ja0RpcmVjdGlvbiA+IHRvcCB8fCAoIWJsb2Nrc0FyZUZsaXBwZWQgJiYgcG9pbnRCbG9j
a0RpcmVjdGlvbiA9PSB0b3ApKSB7CiAgICAgICAgICAgICBMYXlvdXRVbml0IGJvdHRvbSA9IHJv
b3RCb3guc2VsZWN0aW9uQm90dG9tKCk7CiAgICAgICAgICAgICBpZiAocm9vdEJveC5uZXh0Um9v
dEJveCgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVC
b3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVCb3guY3BwCmluZGV4
IDM2NDkyNjMzODU2OWExMWJmZWQzNzU5MjAyODc5Mzg1OGU4NTU5ZmYuLmZhNjRhODg3ODNhODJl
ZTExYjAwM2IxNGYxOTQzZGRjMzg5ODkwNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9Sb290SW5saW5lQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
Um9vdElubGluZUJveC5jcHAKQEAgLTU2OCw3ICs1NjgsNyBAQCBJbmxpbmVCb3gqIFJvb3RJbmxp
bmVCb3g6Omxhc3RTZWxlY3RlZEJveCgpCiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLUxheW91
dFVuaXQgUm9vdElubGluZUJveDo6c2VsZWN0aW9uVG9wKCkgY29uc3QKK0xheW91dFVuaXQgUm9v
dElubGluZUJveDo6c2VsZWN0aW9uVG9wKEZvckhpdFRlc3RpbmcgZm9ySGl0VGVzdGluZykgY29u
c3QKIHsKICAgICBMYXlvdXRVbml0IHNlbGVjdGlvblRvcCA9IG1fbGluZVRvcDsKICAgICAKQEAg
LTYwOSw3ICs2MDksMTQgQEAgTGF5b3V0VW5pdCBSb290SW5saW5lQm94OjpzZWxlY3Rpb25Ub3Ao
KSBjb25zdAogICAgIH0KICNlbmRpZgogCi0gICAgTGF5b3V0VW5pdCBwcmV2Qm90dG9tID0gcHJl
dlJvb3RCb3goKSA/IHByZXZSb290Qm94KCktPnNlbGVjdGlvbkJvdHRvbSgpIDogYmxvY2tGbG93
KCkuYm9yZGVyQW5kUGFkZGluZ0JlZm9yZSgpOworICAgIExheW91dFVuaXQgcHJldkJvdHRvbTsK
KyAgICBpZiAoYXV0byogcHJldmlvdXNCb3ggPSBwcmV2Um9vdEJveCgpKQorICAgICAgICBwcmV2
Qm90dG9tID0gcHJldmlvdXNCb3gtPnNlbGVjdGlvbkJvdHRvbSgpOworICAgIGVsc2UgeworICAg
ICAgICBhdXRvIGJvcmRlckFuZFBhZGRpbmdCZWZvcmUgPSBibG9ja0Zsb3coKS5ib3JkZXJBbmRQ
YWRkaW5nQmVmb3JlKCk7CisgICAgICAgIHByZXZCb3R0b20gPSBmb3JIaXRUZXN0aW5nID09IEZv
ckhpdFRlc3Rpbmc6OlllcyA/IGJvcmRlckFuZFBhZGRpbmdCZWZvcmUgOiBzdGQ6Om1heChib3Jk
ZXJBbmRQYWRkaW5nQmVmb3JlLCBzZWxlY3Rpb25Ub3ApOworICAgIH0KKwogICAgIGlmIChwcmV2
Qm90dG9tIDwgc2VsZWN0aW9uVG9wICYmIGJsb2NrRmxvdygpLmNvbnRhaW5zRmxvYXRzKCkpIHsK
ICAgICAgICAgLy8gVGhpcyBsaW5lIGhhcyBhY3R1YWxseSBiZWVuIG1vdmVkIGZ1cnRoZXIgZG93
biwgcHJvYmFibHkgZnJvbSBhIGxhcmdlIGxpbmUtaGVpZ2h0LCBidXQgcG9zc2libHkgYmVjYXVz
ZSB0aGUKICAgICAgICAgLy8gbGluZSB3YXMgZm9yY2VkIHRvIGNsZWFyIGZsb2F0cy4gIElmIHNv
LCBsZXQncyBjaGVjayB0aGUgb2Zmc2V0cywgYW5kIG9ubHkgYmUgd2lsbGluZyB0byB1c2UgdGhl
IHByZXZpb3VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUm9vdElubGlu
ZUJveC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVCb3guaAppbmRleCBm
ODk3NmM2YTdkNGE2OTczNDg3NDk5M2YzOWRmMzZmNDc4N2FlOTVhLi4wMjAxZGNlN2VjMjcxNjk3
NGI1NzU1ZDg3ZGUwOWZmNzkzYTRjNjcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUm9vdElubGluZUJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9Sb290
SW5saW5lQm94LmgKQEAgLTcyLDcgKzcyLDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0Q29udGFp
bmluZ0ZyYWdtZW50KFJlbmRlckZyYWdtZW50Q29udGFpbmVyJik7CiAgICAgdm9pZCBjbGVhckNv
bnRhaW5pbmdGcmFnbWVudCgpOwogCi0gICAgTGF5b3V0VW5pdCBzZWxlY3Rpb25Ub3AoKSBjb25z
dDsKKyAgICBlbnVtIGNsYXNzIEZvckhpdFRlc3RpbmcgOiBib29sIHsgTm8sIFllcyB9OworICAg
IExheW91dFVuaXQgc2VsZWN0aW9uVG9wKEZvckhpdFRlc3RpbmcgPSBGb3JIaXRUZXN0aW5nOjpO
bykgY29uc3Q7CiAgICAgTGF5b3V0VW5pdCBzZWxlY3Rpb25Cb3R0b20oKSBjb25zdDsKICAgICBM
YXlvdXRVbml0IHNlbGVjdGlvbkhlaWdodCgpIGNvbnN0IHsgcmV0dXJuIHN0ZDo6bWF4PExheW91
dFVuaXQ+KDAsIHNlbGVjdGlvbkJvdHRvbSgpIC0gc2VsZWN0aW9uVG9wKCkpOyB9CiAKZGlmZiAt
LWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBkZjQ1ZDg4M2Nm
ZTUyZWY4MzU0Mjg5YTBmMWNmNGM3YzJkNmEyZDlkLi42NWYxMzY4YWUyNjA0OGFlZTI0Y2FhMzI2
NjY4ODRiNjg3NmIzM2I3IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjAtMDQtMTggIFdlbnNvbiBIc2llaCAgPHdl
bnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgT3ZlcnNpemVkIGNhcmV0IGFuZCBzZWxl
Y3Rpb24gcmVjdHMgaW4gdGV4dCBmaWVsZHMgb24gZ2FuamkuY29tIGFuZCBuZXRmbGl4LmNvbS9s
b2dpbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEw
NjIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80NTk0NTYzNj4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZWJhc2VsaW5lIHNvbWUgZXhwZWN0ZWQg
c2VsZWN0aW9uIGFuZCBjYXJldCByZWN0cyBpbiBzb21lIGlPUyBBUEkgdGVzdHMuCisKKyAgICAg
ICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL2lvcy9BY2Nlc3NpYmlsaXR5VGVzdHNJT1MubW06Cisg
ICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rl
c3RzL2lvcy9BdXRvY29ycmVjdGlvblRlc3RzSU9TLm1tOgorICAgICAgICAoVEVTVCk6CisgICAg
ICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9pb3MvRHJhZ0FuZERyb3BUZXN0c0lPUy5tbToKKyAg
ICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorCiAyMDIwLTA0LTE1ICBCcmVudCBGdWxnaGFt
ICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIFtDb2NvYV0gUmVtb3ZlIGdlbmVyaWMg
cGFyYW1ldGVyIHNlcmlhbGl6YXRpb24gZmFsbGJhY2sKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvaW9zL0FjY2Vzc2liaWxpdHlUZXN0c0lPUy5tbSBiL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvaW9zL0FjY2Vzc2liaWxpdHlUZXN0c0lPUy5tbQppbmRleCA0MzkwMzI4
NmE3OGJhMzQyNzQ2M2FlYmY0MmM2ZjgwNGFiZjE1ZWQ4Li4zMzAzZTAxNmE3NDRjNzA4ZDcwZjll
MTZmOWZiNGQ5ZmE3YjMyYmExIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L2lvcy9BY2Nlc3NpYmlsaXR5VGVzdHNJT1MubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9pb3MvQWNjZXNzaWJpbGl0eVRlc3RzSU9TLm1tCkBAIC05MywxMyArOTMsMTMgQEAgVEVT
VChBY2Nlc3NpYmlsaXR5VGVzdHMsIFJlY3RzRm9yU3BlYWtpbmdTZWxlY3Rpb25XaXRoTGluZVdy
YXBwaW5nKQogCiAgICAgTlNBcnJheTxOU1ZhbHVlICo+ICpyZWN0cyA9IFt3ZWJWaWV3IHJlY3Rz
QXRTZWxlY3Rpb25PZmZzZXQ6MCB3aXRoVGV4dDpAImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6
Il07CiAjaWYgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCi0gICAgY2hlY2tDR1JlY3RWYWx1ZUF0SW5k
ZXgocmVjdHMsIENHUmVjdE1ha2UoOCwgOCwgMzA0LCAxMTYpLCAwKTsKKyAgICBjaGVja0NHUmVj
dFZhbHVlQXRJbmRleChyZWN0cywgQ0dSZWN0TWFrZSg4LCAxMCwgMzA0LCAxMTQpLCAwKTsKICAg
ICBjaGVja0NHUmVjdFZhbHVlQXRJbmRleChyZWN0cywgQ0dSZWN0TWFrZSg4LCAxMjQsIDMwNCwg
MTE2KSwgMSk7CiAgICAgY2hlY2tDR1JlY3RWYWx1ZUF0SW5kZXgocmVjdHMsIENHUmVjdE1ha2Uo
OCwgMjQwLCAzMDQsIDExNiksIDIpOwogICAgIGNoZWNrQ0dSZWN0VmFsdWVBdEluZGV4KHJlY3Rz
LCBDR1JlY3RNYWtlKDgsIDM1NiwgMzA0LCAxMTYpLCAzKTsKICAgICBjaGVja0NHUmVjdFZhbHVl
QXRJbmRleChyZWN0cywgQ0dSZWN0TWFrZSg4LCA0NzIsIDE0NSwgMTE2KSwgNCk7CiAjZWxzZQot
ICAgIGNoZWNrQ0dSZWN0VmFsdWVBdEluZGV4KHJlY3RzLCBDR1JlY3RNYWtlKDgsIDgsIDMwNCwg
MTE0KSwgMCk7CisgICAgY2hlY2tDR1JlY3RWYWx1ZUF0SW5kZXgocmVjdHMsIENHUmVjdE1ha2Uo
OCwgMTAsIDMwNCwgMTEyKSwgMCk7CiAgICAgY2hlY2tDR1JlY3RWYWx1ZUF0SW5kZXgocmVjdHMs
IENHUmVjdE1ha2UoOCwgMTIyLCAzMDQsIDExNyksIDEpOwogICAgIGNoZWNrQ0dSZWN0VmFsdWVB
dEluZGV4KHJlY3RzLCBDR1JlY3RNYWtlKDgsIDIzOSwgMzA0LCAxMTcpLCAyKTsKICAgICBjaGVj
a0NHUmVjdFZhbHVlQXRJbmRleChyZWN0cywgQ0dSZWN0TWFrZSg4LCAzNTYsIDMwNCwgMTE3KSwg
Myk7CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL2lvcy9BdXRvY29ycmVj
dGlvblRlc3RzSU9TLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9pb3MvQXV0b2NvcnJl
Y3Rpb25UZXN0c0lPUy5tbQppbmRleCBlMjQ0ZmEzZjIzNDg4Mzc3OTE5ZTg4YjBmNDMyMDhiMmQz
NzFkYjU0Li40MTA0MzNkNmQ5ZWE4NGI5ODQwN2QwZTQ1MTQzOWY0NjNhNTg5M2VmIDEwMDY0NAot
LS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL2lvcy9BdXRvY29ycmVjdGlvblRlc3RzSU9T
Lm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvaW9zL0F1dG9jb3JyZWN0aW9uVGVz
dHNJT1MubW0KQEAgLTc3LDggKzc3LDggQEAgVEVTVChBdXRvY29ycmVjdGlvblRlc3RzLCBGb250
QXRDYXJldFdoZW5Vc2luZ1VJQ1RGb250VGV4dFN0eWxlKQogICAgIFt3ZWJWaWV3IF9leGVjdXRl
RWRpdENvbW1hbmQ6QCJNb3ZlVG9FbmRPZkxpbmUiIGFyZ3VtZW50Om5pbCBjb21wbGV0aW9uOm5p
bF07CiAKICAgICBhdXRvIGF1dG9jb3JyZWN0aW9uUmVjdHMgPSByZXRhaW5QdHIoW3dlYlZpZXcg
YXV0b2NvcnJlY3Rpb25SZWN0c0ZvclN0cmluZzpAIld1bGsiXSk7Ci0gICAgY2hlY2tDR1JlY3RJ
c0VxdWFsVG9DR1JlY3RXaXRoTG9nZ2luZyhDR1JlY3RNYWtlKDgsIDgsIDM2LCAyMSksIFthdXRv
Y29ycmVjdGlvblJlY3RzIGZpcnN0UmVjdF0pOwotICAgIGNoZWNrQ0dSZWN0SXNFcXVhbFRvQ0dS
ZWN0V2l0aExvZ2dpbmcoQ0dSZWN0TWFrZSg4LCA4LCAzNiwgMjEpLCBbYXV0b2NvcnJlY3Rpb25S
ZWN0cyBsYXN0UmVjdF0pOworICAgIGNoZWNrQ0dSZWN0SXNFcXVhbFRvQ0dSZWN0V2l0aExvZ2dp
bmcoQ0dSZWN0TWFrZSg4LCA5LCAzNiwgMjApLCBbYXV0b2NvcnJlY3Rpb25SZWN0cyBmaXJzdFJl
Y3RdKTsKKyAgICBjaGVja0NHUmVjdElzRXF1YWxUb0NHUmVjdFdpdGhMb2dnaW5nKENHUmVjdE1h
a2UoOCwgOSwgMzYsIDIwKSwgW2F1dG9jb3JyZWN0aW9uUmVjdHMgbGFzdFJlY3RdKTsKIAogICAg
IGF1dG8gY29udGVudFZpZXcgPSBbd2ViVmlldyB0ZXh0SW5wdXRDb250ZW50Vmlld107CiAgICAg
VUlGb250ICpmb250QmVmb3JlU2NhbGluZyA9IFtjb250ZW50VmlldyBmb250Rm9yQ2FyZXRTZWxl
Y3Rpb25dOwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9pb3MvRHJhZ0Fu
ZERyb3BUZXN0c0lPUy5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvaW9zL0RyYWdBbmRE
cm9wVGVzdHNJT1MubW0KaW5kZXggMTEzZDNmZGViMjQwOTA0YzRiN2FlM2RmZGZkYjE2ZGJkZjgx
ZTBhYy4uODNmODZjOWRlMmE3OTU4MTQ4NzAyMDNkMDVkZTcyMmYwZjAyMTU3ZSAxMDA2NDQKLS0t
IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9pb3MvRHJhZ0FuZERyb3BUZXN0c0lPUy5tbQor
KysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL2lvcy9EcmFnQW5kRHJvcFRlc3RzSU9TLm1t
CkBAIC0zNjEsNyArMzYxLDcgQEAgVEVTVChEcmFnQW5kRHJvcFRlc3RzLCBDb250ZW50RWRpdGFi
bGVUb0NvbnRlbnRFZGl0YWJsZSkKICAgICBFWFBFQ1RfVFJVRShbb2JzZXJ2ZWRFdmVudE5hbWVz
IGNvbnRhaW5zT2JqZWN0OkAiZHJhZ2VudGVyIl0pOwogICAgIEVYUEVDVF9UUlVFKFtvYnNlcnZl
ZEV2ZW50TmFtZXMgY29udGFpbnNPYmplY3Q6QCJkcmFnb3ZlciJdKTsKICAgICBFWFBFQ1RfVFJV
RShbb2JzZXJ2ZWRFdmVudE5hbWVzIGNvbnRhaW5zT2JqZWN0OkAiZHJvcCJdKTsKLSAgICBjaGVj
a0NHUmVjdElzRXF1YWxUb0NHUmVjdFdpdGhMb2dnaW5nKENHUmVjdE1ha2UoOTYwLCAyMDEsIDIs
IDIyNyksIFtzaW11bGF0b3IgZmluYWxTZWxlY3Rpb25TdGFydFJlY3RdKTsKKyAgICBjaGVja0NH
UmVjdElzRXF1YWxUb0NHUmVjdFdpdGhMb2dnaW5nKENHUmVjdE1ha2UoOTYwLCAyMDUsIDIsIDIy
MyksIFtzaW11bGF0b3IgZmluYWxTZWxlY3Rpb25TdGFydFJlY3RdKTsKICAgICBjaGVja1JpY2hU
ZXh0VHlwZVByZWNlZGVzUGxhaW5UZXh0VHlwZShzaW11bGF0b3IuZ2V0KCkpOwogICAgIEVYUEVD
VF9UUlVFKFtzaW11bGF0b3IgbGFzdEtub3duRHJvcFByb3Bvc2FsXS5wcmVjaXNlKTsKIApAQCAt
OTg5LDcgKzk4OSw3IEBAIFRFU1QoRHJhZ0FuZERyb3BUZXN0cywgRXh0ZXJuYWxTb3VyY2VVVEY4
UGxhaW5UZXh0T25seSkKICAgICBbc2ltdWxhdG9yIHNldEV4dGVybmFsSXRlbVByb3ZpZGVyczpA
WyBzaW11bGF0ZWRJdGVtUHJvdmlkZXIuZ2V0KCkgXV07CiAgICAgW3NpbXVsYXRvciBydW5Gcm9t
OkNHUG9pbnRNYWtlKDMwMCwgNDAwKSB0bzpDR1BvaW50TWFrZSgxMDAsIDMwMCldOwogICAgIEVY
UEVDVF9XS19TVFJFUSh0ZXh0UGF5bG9hZC5VVEY4U3RyaW5nLCBbd2ViVmlldyBzdHJpbmdCeUV2
YWx1YXRpbmdKYXZhU2NyaXB0OkAiZWRpdG9yLnRleHRDb250ZW50Il0uVVRGOFN0cmluZyk7Ci0g
ICAgY2hlY2tDR1JlY3RJc0VxdWFsVG9DR1JlY3RXaXRoTG9nZ2luZyhDR1JlY3RNYWtlKDE5MzUs
IDIwMSwgMiwgMjI3KSwgW3NpbXVsYXRvciBmaW5hbFNlbGVjdGlvblN0YXJ0UmVjdF0pOworICAg
IGNoZWNrQ0dSZWN0SXNFcXVhbFRvQ0dSZWN0V2l0aExvZ2dpbmcoQ0dSZWN0TWFrZSgxOTM1LCAy
MDUsIDIsIDIyMyksIFtzaW11bGF0b3IgZmluYWxTZWxlY3Rpb25TdGFydFJlY3RdKTsKIH0KIAog
VEVTVChEcmFnQW5kRHJvcFRlc3RzLCBFeHRlcm5hbFNvdXJjZUpQRUdPbmx5KQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGFm
YjcyYmJhOTg4OWEyOGFmYjk0MmU2YzBiNzU0OTczMDdmNmRkZGIuLjUxYWY5NzQwNTM5YWQwMzEz
NGM4ZDZmOGNmNTNkZGIxOWVhNjNkMGEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMiBAQAorMjAyMC0wNC0x
NyAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAgICBPdmVy
c2l6ZWQgY2FyZXQgYW5kIHNlbGVjdGlvbiByZWN0cyBpbiB0ZXh0IGZpZWxkcyBvbiBnYW5qaS5j
b20gYW5kIG5ldGZsaXguY29tL2xvZ2luCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTA2MjIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ1OTQ1NjM2
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlYmFz
ZWxpbmUgZXhpc3RpbmcgdGVzdHMsIGFuZCBhZGQgYSBuZXcgdGVzdCB0byB2ZXJpZnkgdGhhdCBj
YXJldCBhbmQgc2VsZWN0aW9uIHJlY3RzIGRvIG5vdCBleHRlbmQgdG8gbWF0Y2gKKyAgICAgICAg
dGhlIGxpbmUgaGVpZ2h0IGluIGVtcHR5IGFuZCBub24tZW1wdHkgZWRpdGFibGUgZWxlbWVudHMs
IGluIGJvdGggaG9yaXpvbnRhbCBhbmQgdmVydGljYWwgd3JpdGluZyBtb2Rlcy4KKworICAgICAg
ICAqIGVkaXRpbmcvc2VsZWN0aW9uL2lvcy9hYnNvbHV0ZS1zZWxlY3Rpb24tYWZ0ZXItc2Nyb2xs
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9pb3MvYWJzb2x1dGUt
c2VsZWN0aW9uLWFmdGVyLXNjcm9sbC5odG1sOgorICAgICAgICAqIGVkaXRpbmcvc2VsZWN0aW9u
L2lvcy9jaGFuZ2Utc2VsZWN0aW9uLWFmdGVyLXRhcHBpbmctZm9jdXNlZC1lbGVtZW50LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdlLXNlbGVjdGlv
bi1hZnRlci10YXBwaW5nLWZvY3VzZWQtZWxlbWVudC5odG1sOgorICAgICAgICAqIGVkaXRpbmcv
c2VsZWN0aW9uL2lvcy9maXhlZC1zZWxlY3Rpb24tYWZ0ZXItc2Nyb2xsLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9pb3MvZml4ZWQtc2VsZWN0aW9uLWFmdGVyLXNj
cm9sbC5odG1sOgorICAgICAgICAqIGVkaXRpbmcvc2VsZWN0aW9uL2lvcy9zZWxlY3Rpb24tYWZ0
ZXItY2hhbmdpbmctdGV4dC13aXRoLWNhbGxvdXQtbWVudS1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogZWRpdGluZy9zZWxlY3Rpb24vaW9zL3NlbGVjdGlvbi1hZnRlci1jaGFuZ2luZy10ZXh0LXdp
dGgtY2FsbG91dC1tZW51Lmh0bWw6CisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vaW9zL3Nl
bGVjdGlvbi1oYW5kbGVzLWFmdGVyLXRvdWNoLWVuZC1leHBlY3RlZC50eHQ6CisgICAgICAgICog
ZWRpdGluZy9zZWxlY3Rpb24vaW9zL3VwZGF0ZS1zZWxlY3Rpb24tYWZ0ZXItb3ZlcmZsb3ctc2Ny
b2xsLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9pb3MvdXBkYXRl
LXNlbGVjdGlvbi1hZnRlci1vdmVyZmxvdy1zY3JvbGwuaHRtbDoKKyAgICAgICAgKiBlZGl0aW5n
L3NlbGVjdGlvbi9zZWxlY3Rpb24tYW5kLWNhcmV0LWRvLW5vdC1leHRlbmQtdG8tbGluZS1oZWln
aHQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9zZWxl
Y3Rpb24tYW5kLWNhcmV0LWRvLW5vdC1leHRlbmQtdG8tbGluZS1oZWlnaHQuaHRtbDogQWRkZWQu
CisgICAgICAgICogZmFzdC9yZXBhaW50L2ZvY3VzLXJpbmctcmVwYWludC1leHBlY3RlZC50eHQ6
CisgICAgICAgICogcGxhdGZvcm0vaW9zL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9zZWxlY3Rpb24t
aGFuZGxlcy1hZnRlci10b3VjaC1lbmQtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorCisgICAgICAg
IERlbGV0ZSB0aGlzIHJlZHVuZGFudCB0ZXN0IGV4cGVjdGF0aW9uLgorCiAyMDIwLTA0LTE1ICBE
aWVnbyBQaW5vIEdhcmNpYSAgPGRwaW5vQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gR2Fy
ZGVuaW5nLCBlbWl0IGJhc2VsaW5lcyBhZnRlciByMjYwMTM5CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvYWJzb2x1dGUtc2VsZWN0aW9uLWFmdGVyLXNjcm9s
bC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvYWJzb2x1
dGUtc2VsZWN0aW9uLWFmdGVyLXNjcm9sbC1leHBlY3RlZC50eHQKaW5kZXggYjljOWRmM2RiMjk4
MGY0ZjMxYTkzNGM3ZGIzYjEzZTQ0NTgxNmVmZS4uOGY3NzYwMTMzZGUwYWY5YTJmOWNkNDI5MmFi
MDc5ZmI3MTEwMWEyMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24v
aW9zL2Fic29sdXRlLXNlbGVjdGlvbi1hZnRlci1zY3JvbGwtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9hYnNvbHV0ZS1zZWxlY3Rpb24tYWZ0ZXIt
c2Nyb2xsLWV4cGVjdGVkLnR4dApAQCAtMSwxMyArMSwxMyBAQAogUEFTUyBpbml0aWFsU2VsZWN0
aW9uUmVjdHMubGVuZ3RoIGlzIDEKIFBBU1MgaW5pdGlhbFNlbGVjdGlvblJlY3RzWzBdLmxlZnQg
aXMgMAotUEFTUyBpbml0aWFsU2VsZWN0aW9uUmVjdHNbMF0udG9wIGlzIDAKK1BBU1MgaW5pdGlh
bFNlbGVjdGlvblJlY3RzWzBdLnRvcCBpcyAyCiBQQVNTIGluaXRpYWxTZWxlY3Rpb25SZWN0c1sw
XS53aWR0aCBpcyAzMDkKLVBBU1MgaW5pdGlhbFNlbGVjdGlvblJlY3RzWzBdLmhlaWdodCBpcyAx
MTQKK1BBU1MgaW5pdGlhbFNlbGVjdGlvblJlY3RzWzBdLmhlaWdodCBpcyAxMTIKIFBBU1MgZmlu
YWxTZWxlY3Rpb25SZWN0cy5sZW5ndGggaXMgMQogUEFTUyBmaW5hbFNlbGVjdGlvblJlY3RzWzBd
LmxlZnQgaXMgMAotUEFTUyBmaW5hbFNlbGVjdGlvblJlY3RzWzBdLnRvcCBpcyAwCitQQVNTIGZp
bmFsU2VsZWN0aW9uUmVjdHNbMF0udG9wIGlzIDIKIFBBU1MgZmluYWxTZWxlY3Rpb25SZWN0c1sw
XS53aWR0aCBpcyAzMDkKLVBBU1MgZmluYWxTZWxlY3Rpb25SZWN0c1swXS5oZWlnaHQgaXMgMTE0
CitQQVNTIGZpbmFsU2VsZWN0aW9uUmVjdHNbMF0uaGVpZ2h0IGlzIDExMgogUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvYWJzb2x1dGUtc2VsZWN0aW9uLWFmdGVyLXNjcm9s
bC5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2Fic29sdXRlLXNlbGVj
dGlvbi1hZnRlci1zY3JvbGwuaHRtbAppbmRleCBiZDUyZWNmMmZiMDAyY2FkN2ZkZjAxODg2YzNi
ODkwMGRkNjcwZDhmLi4zYjg1MDJhNjUxM2Y5NTBhMzdjOGUyZDU0NzhkNWNiZTFhYjdlYzc2IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvYWJzb2x1dGUtc2Vs
ZWN0aW9uLWFmdGVyLXNjcm9sbC5odG1sCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0
aW9uL2lvcy9hYnNvbHV0ZS1zZWxlY3Rpb24tYWZ0ZXItc2Nyb2xsLmh0bWwKQEAgLTUxLDkgKzUx
LDkgQEAKICAgICAgICAgICAgIGluaXRpYWxTZWxlY3Rpb25SZWN0cyA9IHJlY3RzOwogICAgICAg
ICAgICAgc2hvdWxkQmUoImluaXRpYWxTZWxlY3Rpb25SZWN0cy5sZW5ndGgiLCAiMSIpOwogICAg
ICAgICAgICAgc2hvdWxkQmUoImluaXRpYWxTZWxlY3Rpb25SZWN0c1swXS5sZWZ0IiwgIjAiKTsK
LSAgICAgICAgICAgIHNob3VsZEJlKCJpbml0aWFsU2VsZWN0aW9uUmVjdHNbMF0udG9wIiwgIjAi
KTsKKyAgICAgICAgICAgIHNob3VsZEJlKCJpbml0aWFsU2VsZWN0aW9uUmVjdHNbMF0udG9wIiwg
IjIiKTsKICAgICAgICAgICAgIHNob3VsZEJlKCJpbml0aWFsU2VsZWN0aW9uUmVjdHNbMF0ud2lk
dGgiLCAiMzA5Iik7Ci0gICAgICAgICAgICBzaG91bGRCZSgiaW5pdGlhbFNlbGVjdGlvblJlY3Rz
WzBdLmhlaWdodCIsICIxMTQiKTsKKyAgICAgICAgICAgIHNob3VsZEJlKCJpbml0aWFsU2VsZWN0
aW9uUmVjdHNbMF0uaGVpZ2h0IiwgIjExMiIpOwogICAgICAgICAgICAgZG9jdW1lbnQuc2Nyb2xs
aW5nRWxlbWVudC5zY3JvbGxUb3AgKz0gNTAwMDsKICAgICAgICAgICAgIHJldHVybiBVSUhlbHBl
ci5nZXRVSVNlbGVjdGlvblJlY3RzKCk7CiAgICAgICAgIH0pCkBAIC02MSw5ICs2MSw5IEBACiAg
ICAgICAgICAgICBmaW5hbFNlbGVjdGlvblJlY3RzID0gcmVjdHM7CiAgICAgICAgICAgICBzaG91
bGRCZSgiZmluYWxTZWxlY3Rpb25SZWN0cy5sZW5ndGgiLCAiMSIpOwogICAgICAgICAgICAgc2hv
dWxkQmUoImZpbmFsU2VsZWN0aW9uUmVjdHNbMF0ubGVmdCIsICIwIik7Ci0gICAgICAgICAgICBz
aG91bGRCZSgiZmluYWxTZWxlY3Rpb25SZWN0c1swXS50b3AiLCAiMCIpOworICAgICAgICAgICAg
c2hvdWxkQmUoImZpbmFsU2VsZWN0aW9uUmVjdHNbMF0udG9wIiwgIjIiKTsKICAgICAgICAgICAg
IHNob3VsZEJlKCJmaW5hbFNlbGVjdGlvblJlY3RzWzBdLndpZHRoIiwgIjMwOSIpOwotICAgICAg
ICAgICAgc2hvdWxkQmUoImZpbmFsU2VsZWN0aW9uUmVjdHNbMF0uaGVpZ2h0IiwgIjExNCIpOwor
ICAgICAgICAgICAgc2hvdWxkQmUoImZpbmFsU2VsZWN0aW9uUmVjdHNbMF0uaGVpZ2h0IiwgIjEx
MiIpOwogICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7CiAgICAgICAgIH0pOwogICAgIH0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9jaGFuZ2Utc2VsZWN0
aW9uLWFmdGVyLXRhcHBpbmctZm9jdXNlZC1lbGVtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9jaGFuZ2Utc2VsZWN0aW9uLWFmdGVyLXRhcHBpbmct
Zm9jdXNlZC1lbGVtZW50LWV4cGVjdGVkLnR4dAppbmRleCAyOGVkMTg1NDQ3ODFlNjA3YmQ4YmE1
OGRiY2QyYjg2MjBiMzIwZDY4Li45MmYyOWU2NjcxNzgyNjZmN2E0ZWVjM2YwZTM0MmY2OTM0NTRh
NjkxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdl
LXNlbGVjdGlvbi1hZnRlci10YXBwaW5nLWZvY3VzZWQtZWxlbWVudC1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2NoYW5nZS1zZWxlY3Rpb24tYWZ0
ZXItdGFwcGluZy1mb2N1c2VkLWVsZW1lbnQtZXhwZWN0ZWQudHh0CkBAIC01LDkgKzUsOSBAQCBP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURQogCiBQQVNTIHNlbGVjdGlvblJlY3RzLmxlbmd0aCBpcyAx
CiBQQVNTIHNlbGVjdGlvblJlY3RzWzBdLmxlZnQgaXMgMgotUEFTUyBzZWxlY3Rpb25SZWN0c1sw
XS50b3AgaXMgMgorUEFTUyBzZWxlY3Rpb25SZWN0c1swXS50b3AgaXMgNAogUEFTUyBzZWxlY3Rp
b25SZWN0c1swXS53aWR0aCBpcyAzMDkKLVBBU1Mgc2VsZWN0aW9uUmVjdHNbMF0uaGVpZ2h0IGlz
IDExNAorUEFTUyBzZWxlY3Rpb25SZWN0c1swXS5oZWlnaHQgaXMgMTEyCiBQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9jaGFuZ2Utc2VsZWN0aW9uLWFmdGVyLXRhcHBpbmct
Zm9jdXNlZC1lbGVtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3Mv
Y2hhbmdlLXNlbGVjdGlvbi1hZnRlci10YXBwaW5nLWZvY3VzZWQtZWxlbWVudC5odG1sCmluZGV4
IDlmOWJlZTUyYzViNTBlMzhjNzlmOTE3MzU4YjNkZWNmNzhiNTE0MTIuLjUyNWJhOTQ1MDQzYWM3
MzU1MjhjNGJiZTU3MTZiZDhiM2ViYjk5ZTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRp
bmcvc2VsZWN0aW9uL2lvcy9jaGFuZ2Utc2VsZWN0aW9uLWFmdGVyLXRhcHBpbmctZm9jdXNlZC1l
bGVtZW50Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2NoYW5n
ZS1zZWxlY3Rpb24tYWZ0ZXItdGFwcGluZy1mb2N1c2VkLWVsZW1lbnQuaHRtbApAQCAtNTQsOSAr
NTQsOSBAQAogICAgICAgICAgICAgd2luZG93LnNlbGVjdGlvblJlY3RzID0gc2VsZWN0aW9uUmVj
dHM7CiAgICAgICAgICAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHMubGVuZ3RoIiwgIjEiKTsK
ICAgICAgICAgICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c1swXS5sZWZ0IiwgIjIiKTsKLSAg
ICAgICAgICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c1swXS50b3AiLCAiMiIpOworICAgICAg
ICAgICAgc2hvdWxkQmUoInNlbGVjdGlvblJlY3RzWzBdLnRvcCIsICI0Iik7CiAgICAgICAgICAg
ICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHNbMF0ud2lkdGgiLCAiMzA5Iik7Ci0gICAgICAgICAg
ICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHNbMF0uaGVpZ2h0IiwgIjExNCIpOworICAgICAgICAg
ICAgc2hvdWxkQmUoInNlbGVjdGlvblJlY3RzWzBdLmhlaWdodCIsICIxMTIiKTsKICAgICAgICAg
ICAgIGZpbmlzaEpTVGVzdCgpOwogICAgICAgICB9KTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2ZpeGVkLXNlbGVjdGlvbi1hZnRlci1zY3JvbGwtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2ZpeGVkLXNlbGVj
dGlvbi1hZnRlci1zY3JvbGwtZXhwZWN0ZWQudHh0CmluZGV4IDk5MTdiOTY0OWM0Yjk2ZjdhNjJk
NmY3MGY4Nzk5OTg5ZGE0OTYyNWUuLjk2OTcyY2IzNjQxMjJiNzRlOGUwNGEzNWE4OTExMDUzM2Q4
NzE1MjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9maXhl
ZC1zZWxlY3Rpb24tYWZ0ZXItc2Nyb2xsLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9l
ZGl0aW5nL3NlbGVjdGlvbi9pb3MvZml4ZWQtc2VsZWN0aW9uLWFmdGVyLXNjcm9sbC1leHBlY3Rl
ZC50eHQKQEAgLTEsMTMgKzEsMTMgQEAKIFBBU1MgaW5pdGlhbFNlbGVjdGlvblJlY3RzLmxlbmd0
aCBpcyAxCiBQQVNTIGluaXRpYWxTZWxlY3Rpb25SZWN0c1swXS5sZWZ0IGlzIDAKLVBBU1MgaW5p
dGlhbFNlbGVjdGlvblJlY3RzWzBdLnRvcCBpcyAwCitQQVNTIGluaXRpYWxTZWxlY3Rpb25SZWN0
c1swXS50b3AgaXMgMgogUEFTUyBpbml0aWFsU2VsZWN0aW9uUmVjdHNbMF0ud2lkdGggaXMgMzA5
Ci1QQVNTIGluaXRpYWxTZWxlY3Rpb25SZWN0c1swXS5oZWlnaHQgaXMgMTE0CitQQVNTIGluaXRp
YWxTZWxlY3Rpb25SZWN0c1swXS5oZWlnaHQgaXMgMTEyCiBQQVNTIGZpbmFsU2VsZWN0aW9uUmVj
dHMubGVuZ3RoIGlzIDEKIFBBU1MgZmluYWxTZWxlY3Rpb25SZWN0c1swXS5sZWZ0IGlzIDAKLVBB
U1MgZmluYWxTZWxlY3Rpb25SZWN0c1swXS50b3AgaXMgNTAwMAorUEFTUyBmaW5hbFNlbGVjdGlv
blJlY3RzWzBdLnRvcCBpcyA1MDAyCiBQQVNTIGZpbmFsU2VsZWN0aW9uUmVjdHNbMF0ud2lkdGgg
aXMgMzA5Ci1QQVNTIGZpbmFsU2VsZWN0aW9uUmVjdHNbMF0uaGVpZ2h0IGlzIDExNAorUEFTUyBm
aW5hbFNlbGVjdGlvblJlY3RzWzBdLmhlaWdodCBpcyAxMTIKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRp
dGluZy9zZWxlY3Rpb24vaW9zL2ZpeGVkLXNlbGVjdGlvbi1hZnRlci1zY3JvbGwuaHRtbCBiL0xh
eW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9maXhlZC1zZWxlY3Rpb24tYWZ0ZXItc2Ny
b2xsLmh0bWwKaW5kZXggNTA3NmY1MmY4ZjJiYjVjMzJkYWVhNjliOWQ4MGI3NDM1ODdhNWE1ZC4u
MTRiMjZkNTgwMjQ4MTZmMzM0M2FlZDFlODcyOTVhYzEwNGI1Y2I5ZCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2ZpeGVkLXNlbGVjdGlvbi1hZnRlci1zY3Jv
bGwuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvZml4ZWQtc2Vs
ZWN0aW9uLWFmdGVyLXNjcm9sbC5odG1sCkBAIC01MSw5ICs1MSw5IEBACiAgICAgICAgICAgICBp
bml0aWFsU2VsZWN0aW9uUmVjdHMgPSByZWN0czsKICAgICAgICAgICAgIHNob3VsZEJlKCJpbml0
aWFsU2VsZWN0aW9uUmVjdHMubGVuZ3RoIiwgIjEiKTsKICAgICAgICAgICAgIHNob3VsZEJlKCJp
bml0aWFsU2VsZWN0aW9uUmVjdHNbMF0ubGVmdCIsICIwIik7Ci0gICAgICAgICAgICBzaG91bGRC
ZSgiaW5pdGlhbFNlbGVjdGlvblJlY3RzWzBdLnRvcCIsICIwIik7CisgICAgICAgICAgICBzaG91
bGRCZSgiaW5pdGlhbFNlbGVjdGlvblJlY3RzWzBdLnRvcCIsICIyIik7CiAgICAgICAgICAgICBz
aG91bGRCZSgiaW5pdGlhbFNlbGVjdGlvblJlY3RzWzBdLndpZHRoIiwgIjMwOSIpOwotICAgICAg
ICAgICAgc2hvdWxkQmUoImluaXRpYWxTZWxlY3Rpb25SZWN0c1swXS5oZWlnaHQiLCAiMTE0Iik7
CisgICAgICAgICAgICBzaG91bGRCZSgiaW5pdGlhbFNlbGVjdGlvblJlY3RzWzBdLmhlaWdodCIs
ICIxMTIiKTsKICAgICAgICAgICAgIGRvY3VtZW50LnNjcm9sbGluZ0VsZW1lbnQuc2Nyb2xsVG9w
ICs9IDUwMDA7CiAgICAgICAgICAgICByZXR1cm4gVUlIZWxwZXIuZ2V0VUlTZWxlY3Rpb25SZWN0
cygpOwogICAgICAgICB9KQpAQCAtNjEsOSArNjEsOSBAQAogICAgICAgICAgICAgZmluYWxTZWxl
Y3Rpb25SZWN0cyA9IHJlY3RzOwogICAgICAgICAgICAgc2hvdWxkQmUoImZpbmFsU2VsZWN0aW9u
UmVjdHMubGVuZ3RoIiwgIjEiKTsKICAgICAgICAgICAgIHNob3VsZEJlKCJmaW5hbFNlbGVjdGlv
blJlY3RzWzBdLmxlZnQiLCAiMCIpOwotICAgICAgICAgICAgc2hvdWxkQmUoImZpbmFsU2VsZWN0
aW9uUmVjdHNbMF0udG9wIiwgIjUwMDAiKTsKKyAgICAgICAgICAgIHNob3VsZEJlKCJmaW5hbFNl
bGVjdGlvblJlY3RzWzBdLnRvcCIsICI1MDAyIik7CiAgICAgICAgICAgICBzaG91bGRCZSgiZmlu
YWxTZWxlY3Rpb25SZWN0c1swXS53aWR0aCIsICIzMDkiKTsKLSAgICAgICAgICAgIHNob3VsZEJl
KCJmaW5hbFNlbGVjdGlvblJlY3RzWzBdLmhlaWdodCIsICIxMTQiKTsKKyAgICAgICAgICAgIHNo
b3VsZEJlKCJmaW5hbFNlbGVjdGlvblJlY3RzWzBdLmhlaWdodCIsICIxMTIiKTsKICAgICAgICAg
ICAgIGZpbmlzaEpTVGVzdCgpOwogICAgICAgICB9KTsKICAgICB9CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3Mvc2VsZWN0aW9uLWFmdGVyLWNoYW5naW5nLXRl
eHQtd2l0aC1jYWxsb3V0LW1lbnUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZWRpdGluZy9z
ZWxlY3Rpb24vaW9zL3NlbGVjdGlvbi1hZnRlci1jaGFuZ2luZy10ZXh0LXdpdGgtY2FsbG91dC1t
ZW51LWV4cGVjdGVkLnR4dAppbmRleCBiNThiOWY4MDZiM2JiN2Q3MGNmZWU1OGViZmUxN2Y2OWE3
OWYxZDk3Li5lM2MzZjU0MGYxYTY4MThiN2RkZDkzMWY1MWY1OTg5Mzk4NmFjNGI4IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3Mvc2VsZWN0aW9uLWFmdGVyLWNo
YW5naW5nLXRleHQtd2l0aC1jYWxsb3V0LW1lbnUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9zZWxlY3Rpb24tYWZ0ZXItY2hhbmdpbmctdGV4dC13
aXRoLWNhbGxvdXQtbWVudS1leHBlY3RlZC50eHQKQEAgLTMsMTAgKzMsMTAgQEAgVGhpcyB0ZXN0
IHZlcmlmaWVzIHRoYXQgaW50ZXJhY3Rpbmcgd2l0aCBhIG1lbnUgYWN0aW9uIGl0ZW0gb24gaU9T
IHRoYXQgaXMgbWFya2UKIAogT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCi1QQVNTIHNlbGVj
dGlvblJlY3RzWzBdLnRvcCBpcyAxMDEKK1BBU1Mgc2VsZWN0aW9uUmVjdHNbMF0udG9wIGlzIDEw
MgogUEFTUyBzZWxlY3Rpb25SZWN0c1swXS53aWR0aCBpcyAzMjAKIFBBU1Mgc2VsZWN0aW9uUmVj
dHNbMF0ubGVmdCBpcyAxCi1QQVNTIHNlbGVjdGlvblJlY3RzWzBdLmhlaWdodCBpcyAyOQorUEFT
UyBzZWxlY3Rpb25SZWN0c1swXS5oZWlnaHQgaXMgMjgKIFBBU1Mgc2VsZWN0aW9uUmVjdHNbMV0u
dG9wIGlzIDEzMAogUEFTUyBzZWxlY3Rpb25SZWN0c1sxXS53aWR0aCBpcyAxNzIKIFBBU1Mgc2Vs
ZWN0aW9uUmVjdHNbMV0ubGVmdCBpcyAxCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5n
L3NlbGVjdGlvbi9pb3Mvc2VsZWN0aW9uLWFmdGVyLWNoYW5naW5nLXRleHQtd2l0aC1jYWxsb3V0
LW1lbnUuaHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9zZWxlY3Rpb24t
YWZ0ZXItY2hhbmdpbmctdGV4dC13aXRoLWNhbGxvdXQtbWVudS5odG1sCmluZGV4IGY3ZjQwOTA2
MDJlODdmMjBmMTQ1MGY4Mjg1NGE5OTQwNGFmZTc3MWYuLjk1OTQwMmE4ODUzNDYxYzc0ZWExMzk3
Zjk4NWFkM2E3OTQ4MmM4MjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0
aW9uL2lvcy9zZWxlY3Rpb24tYWZ0ZXItY2hhbmdpbmctdGV4dC13aXRoLWNhbGxvdXQtbWVudS5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9zZWxlY3Rpb24tYWZ0
ZXItY2hhbmdpbmctdGV4dC13aXRoLWNhbGxvdXQtbWVudS5odG1sCkBAIC01MywxMCArNTMsMTAg
QEAgYXN5bmMgZnVuY3Rpb24gcnVuVGVzdCgpIHsKICAgICBkaXNtaXNzaW5nTWVudSA9IGF3YWl0
IFVJSGVscGVyLmlzRGlzbWlzc2luZ01lbnUoKTsKICAgICBzaG93aW5nTWVudSA9IGF3YWl0IFVJ
SGVscGVyLmlzU2hvd2luZ01lbnUoKTsKIAotICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c1sw
XS50b3AiLCAiMTAxIik7CisgICAgc2hvdWxkQmUoInNlbGVjdGlvblJlY3RzWzBdLnRvcCIsICIx
MDIiKTsKICAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHNbMF0ud2lkdGgiLCAiMzIwIik7CiAg
ICAgc2hvdWxkQmUoInNlbGVjdGlvblJlY3RzWzBdLmxlZnQiLCAiMSIpOwotICAgIHNob3VsZEJl
KCJzZWxlY3Rpb25SZWN0c1swXS5oZWlnaHQiLCAiMjkiKTsKKyAgICBzaG91bGRCZSgic2VsZWN0
aW9uUmVjdHNbMF0uaGVpZ2h0IiwgIjI4Iik7CiAgICAgc2hvdWxkQmUoInNlbGVjdGlvblJlY3Rz
WzFdLnRvcCIsICIxMzAiKTsKICAgICBzaG91bGRCZSgic2VsZWN0aW9uUmVjdHNbMV0ud2lkdGgi
LCAiMTcyIik7CiAgICAgc2hvdWxkQmUoInNlbGVjdGlvblJlY3RzWzFdLmxlZnQiLCAiMSIpOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL3NlbGVjdGlvbi1o
YW5kbGVzLWFmdGVyLXRvdWNoLWVuZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9lZGl0aW5n
L3NlbGVjdGlvbi9pb3Mvc2VsZWN0aW9uLWhhbmRsZXMtYWZ0ZXItdG91Y2gtZW5kLWV4cGVjdGVk
LnR4dAppbmRleCA3ODYyMGE1YzE1NDM4M2FkYzMzOWYyZjNhODJjNzdlMDViNmIxNzBiLi5lODY2
Mzc2OTE0ZDE4NmU3NTY5MmFiZWUwMzA5NGZjYTQ2YWMxNGQ0IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3Mvc2VsZWN0aW9uLWhhbmRsZXMtYWZ0ZXItdG91Y2gt
ZW5kLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3Mv
c2VsZWN0aW9uLWhhbmRsZXMtYWZ0ZXItdG91Y2gtZW5kLWV4cGVjdGVkLnR4dApAQCAtMSwxMSAr
MSwxMSBAQAogV0sKIAogU2VsZWN0aW9uIHJlY3RzIGJlZm9yZSB0b3VjaGVuZDoKLXsgbGVmdCA9
IDAsIHRvcCA9IDAsIHdpZHRoID0gMjUwLCBoZWlnaHQgPSAxNzAgfQoreyBsZWZ0ID0gMCwgdG9w
ID0gMywgd2lkdGggPSAyNTAsIGhlaWdodCA9IDE2NyB9CiBTZWxlY3Rpb24gc3RhcnQgaGFuZGxl
IGJlZm9yZSB0b3VjaGVuZDogeyBsZWZ0ID0gMCwgdG9wID0gMCwgd2lkdGggPSAwLCBoZWlnaHQg
PSAwIH0KIFNlbGVjdGlvbiBlbmQgaGFuZGxlIGJlZm9yZSB0b3VjaGVuZDogeyBsZWZ0ID0gMCwg
dG9wID0gMCwgd2lkdGggPSAwLCBoZWlnaHQgPSAwIH0KIAogU2VsZWN0aW9uIHJlY3RzIGFmdGVy
IHRvdWNoZW5kOgoteyBsZWZ0ID0gMCwgdG9wID0gMCwgd2lkdGggPSAyNTAsIGhlaWdodCA9IDE3
MCB9Ci1TZWxlY3Rpb24gc3RhcnQgaGFuZGxlIGFmdGVyIHRvdWNoZW5kOiB7IGxlZnQgPSAwLCB0
b3AgPSAwLCB3aWR0aCA9IDIsIGhlaWdodCA9IDE3MCB9Ci1TZWxlY3Rpb24gZW5kIGhhbmRsZSBh
ZnRlciB0b3VjaGVuZDogeyBsZWZ0ID0gMjQ5LCB0b3AgPSAwLCB3aWR0aCA9IDIsIGhlaWdodCA9
IDE3MCB9Cit7IGxlZnQgPSAwLCB0b3AgPSAzLCB3aWR0aCA9IDI1MCwgaGVpZ2h0ID0gMTY3IH0K
K1NlbGVjdGlvbiBzdGFydCBoYW5kbGUgYWZ0ZXIgdG91Y2hlbmQ6IHsgbGVmdCA9IDAsIHRvcCA9
IDMsIHdpZHRoID0gMiwgaGVpZ2h0ID0gMTY3IH0KK1NlbGVjdGlvbiBlbmQgaGFuZGxlIGFmdGVy
IHRvdWNoZW5kOiB7IGxlZnQgPSAyNDksIHRvcCA9IDMsIHdpZHRoID0gMiwgaGVpZ2h0ID0gMTY3
IH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy91cGRhdGUt
c2VsZWN0aW9uLWFmdGVyLW92ZXJmbG93LXNjcm9sbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvdXBkYXRlLXNlbGVjdGlvbi1hZnRlci1vdmVyZmxvdy1z
Y3JvbGwtZXhwZWN0ZWQudHh0CmluZGV4IGMwZjNkYThjNDRiYjJhMDU1MDE2NzU2NjlmNTA2YWE5
ODY3NDdlNGMuLjEzMWFiMDcyNjIxZjI2OTFjNzc3OGNmNmRkMGI4NmE5MDQ1MDYyYTAgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy91cGRhdGUtc2VsZWN0aW9u
LWFmdGVyLW92ZXJmbG93LXNjcm9sbC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZWRp
dGluZy9zZWxlY3Rpb24vaW9zL3VwZGF0ZS1zZWxlY3Rpb24tYWZ0ZXItb3ZlcmZsb3ctc2Nyb2xs
LWV4cGVjdGVkLnR4dApAQCAtMiwxOCArMiwxOCBAQCBUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBh
IHNlbGVjdGlvbiBpbiBhIGZhc3Qgc2Nyb2xsYWJsZSBhcmVhIGlzIGtlcHQgdXAgdG8gZGF0ZQog
CiBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCiAKLVBBU1Mgc2VsZWN0aW9uUmVjdHNCZWZvcmVb
MF0udG9wIGlzIDEwOAorUEFTUyBzZWxlY3Rpb25SZWN0c0JlZm9yZVswXS50b3AgaXMgMTA5CiBQ
QVNTIHNlbGVjdGlvblJlY3RzQmVmb3JlWzBdLndpZHRoIGlzIDMyMAogUEFTUyBzZWxlY3Rpb25S
ZWN0c0JlZm9yZVswXS5sZWZ0IGlzIDAKLVBBU1Mgc2VsZWN0aW9uUmVjdHNCZWZvcmVbMF0uaGVp
Z2h0IGlzIDI5CitQQVNTIHNlbGVjdGlvblJlY3RzQmVmb3JlWzBdLmhlaWdodCBpcyAyOAogUEFT
UyBzZWxlY3Rpb25SZWN0c0JlZm9yZVsxXS50b3AgaXMgMTM3CiBQQVNTIHNlbGVjdGlvblJlY3Rz
QmVmb3JlWzFdLndpZHRoIGlzIDE3MgogUEFTUyBzZWxlY3Rpb25SZWN0c0JlZm9yZVsxXS5sZWZ0
IGlzIDAKIFBBU1Mgc2VsZWN0aW9uUmVjdHNCZWZvcmVbMV0uaGVpZ2h0IGlzIDMwCi1QQVNTIHNl
bGVjdGlvblJlY3RzQWZ0ZXJbMF0udG9wIGlzIDU4CitQQVNTIHNlbGVjdGlvblJlY3RzQWZ0ZXJb
MF0udG9wIGlzIDU5CiBQQVNTIHNlbGVjdGlvblJlY3RzQWZ0ZXJbMF0ud2lkdGggaXMgMzIwCiBQ
QVNTIHNlbGVjdGlvblJlY3RzQWZ0ZXJbMF0ubGVmdCBpcyAwCi1QQVNTIHNlbGVjdGlvblJlY3Rz
QWZ0ZXJbMF0uaGVpZ2h0IGlzIDI5CitQQVNTIHNlbGVjdGlvblJlY3RzQWZ0ZXJbMF0uaGVpZ2h0
IGlzIDI4CiBQQVNTIHNlbGVjdGlvblJlY3RzQWZ0ZXJbMV0udG9wIGlzIDg3CiBQQVNTIHNlbGVj
dGlvblJlY3RzQWZ0ZXJbMV0ud2lkdGggaXMgMTcyCiBQQVNTIHNlbGVjdGlvblJlY3RzQWZ0ZXJb
MV0ubGVmdCBpcyAwCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9p
b3MvdXBkYXRlLXNlbGVjdGlvbi1hZnRlci1vdmVyZmxvdy1zY3JvbGwuaHRtbCBiL0xheW91dFRl
c3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy91cGRhdGUtc2VsZWN0aW9uLWFmdGVyLW92ZXJmbG93
LXNjcm9sbC5odG1sCmluZGV4IGEyYmRiNmQxMDQ2NzA4ZDBjOGVmMjQwMzhiOTg3OWRhZTdlNGNm
YzcuLjQxYmY5MzE0OTBjYzE2NGEzNjExMjE4ODkwMjdkOGZkNDFkZTFmNjUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy91cGRhdGUtc2VsZWN0aW9uLWFmdGVy
LW92ZXJmbG93LXNjcm9sbC5odG1sCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9u
L2lvcy91cGRhdGUtc2VsZWN0aW9uLWFmdGVyLW92ZXJmbG93LXNjcm9sbC5odG1sCkBAIC02Niwx
OSArNjYsMTkgQEAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGFzeW5jIGZ1bmN0aW9uKCkgewog
ICAgIGF3YWl0IFVJSGVscGVyLmltbWVkaWF0ZVNjcm9sbEVsZW1lbnRBdENvbnRlbnRQb2ludFRv
T2Zmc2V0KDE1MCwgMTAwLCAwLCA1MCk7CiAgICAgc2VsZWN0aW9uUmVjdHNBZnRlciA9IGF3YWl0
IHdhaXRGb3JTZWxlY3Rpb25SZWN0c1RvQ2hhbmdlKHNlbGVjdGlvblJlY3RzQmVmb3JlKTsKIAot
ICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c0JlZm9yZVswXS50b3AiLCAiMTA4Iik7CisgICAg
c2hvdWxkQmUoInNlbGVjdGlvblJlY3RzQmVmb3JlWzBdLnRvcCIsICIxMDkiKTsKICAgICBzaG91
bGRCZSgic2VsZWN0aW9uUmVjdHNCZWZvcmVbMF0ud2lkdGgiLCAiMzIwIik7CiAgICAgc2hvdWxk
QmUoInNlbGVjdGlvblJlY3RzQmVmb3JlWzBdLmxlZnQiLCAiMCIpOwotICAgIHNob3VsZEJlKCJz
ZWxlY3Rpb25SZWN0c0JlZm9yZVswXS5oZWlnaHQiLCAiMjkiKTsKKyAgICBzaG91bGRCZSgic2Vs
ZWN0aW9uUmVjdHNCZWZvcmVbMF0uaGVpZ2h0IiwgIjI4Iik7CiAgICAgc2hvdWxkQmUoInNlbGVj
dGlvblJlY3RzQmVmb3JlWzFdLnRvcCIsICIxMzciKTsKICAgICBzaG91bGRCZSgic2VsZWN0aW9u
UmVjdHNCZWZvcmVbMV0ud2lkdGgiLCAiMTcyIik7CiAgICAgc2hvdWxkQmUoInNlbGVjdGlvblJl
Y3RzQmVmb3JlWzFdLmxlZnQiLCAiMCIpOwogICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c0Jl
Zm9yZVsxXS5oZWlnaHQiLCAiMzAiKTsKIAotICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c0Fm
dGVyWzBdLnRvcCIsICI1OCIpOworICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c0FmdGVyWzBd
LnRvcCIsICI1OSIpOwogICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c0FmdGVyWzBdLndpZHRo
IiwgIjMyMCIpOwogICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c0FmdGVyWzBdLmxlZnQiLCAi
MCIpOwotICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c0FmdGVyWzBdLmhlaWdodCIsICIyOSIp
OworICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c0FmdGVyWzBdLmhlaWdodCIsICIyOCIpOwog
ICAgIHNob3VsZEJlKCJzZWxlY3Rpb25SZWN0c0FmdGVyWzFdLnRvcCIsICI4NyIpOwogICAgIHNo
b3VsZEJlKCJzZWxlY3Rpb25SZWN0c0FmdGVyWzFdLndpZHRoIiwgIjE3MiIpOwogICAgIHNob3Vs
ZEJlKCJzZWxlY3Rpb25SZWN0c0FmdGVyWzFdLmxlZnQiLCAiMCIpOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vc2VsZWN0aW9uLWFuZC1jYXJldC1kby1ub3QtZXh0
ZW5kLXRvLWxpbmUtaGVpZ2h0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2Vs
ZWN0aW9uL3NlbGVjdGlvbi1hbmQtY2FyZXQtZG8tbm90LWV4dGVuZC10by1saW5lLWhlaWdodC1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTk1MjE0ZWVjYjFhZGVmZmE0ZGRkNTllZDU5MDk5ZWFm
ZjVjYTUxOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9u
L3NlbGVjdGlvbi1hbmQtY2FyZXQtZG8tbm90LWV4dGVuZC10by1saW5lLWhlaWdodC1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxOCBAQAorVGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgY2FyZXQgYW5k
IHNlbGVjdGlvbiBoZWlnaHRzIGRvIG5vdCBleHRlbmQgdG8gbWF0Y2ggbGluZSBoZWlnaHQgKG9y
IHBhcnQgb2YgbGluZSBoZWlnaHQpLiBUbyBydW4gdGhlIHRlc3QgbWFudWFsbHksIGZvY3VzIGVh
Y2ggb2YgdGhlIGVkaXRhYmxlIGVsZW1lbnRzIGFuZCBtYWtlIHN1cmUgdGhhdCB0aGUgY2FyZXQg
cm91Z2hseSBtYXRjaGVzIHRoZSBmb250IHNpemUgaW4gZWFjaCBlZGl0YWJsZSBlbGVtZW50LiBU
aGVuIHNlbGVjdCB0ZXh0IGluIGVhY2ggb2YgdGhlIGVsZW1lbnRzIHdpdGggdGV4dCBhbmQgdmVy
aWZ5IHRoYXQgdGhlIHNlbGVjdGlvbiBoZWlnaHQgYWxzbyBtYXRjaGVzIHRoZSBmb250IHNpemUu
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIExvZ2ljYWwgc2VsZWN0aW9u
IGhlaWdodCBpbiAjaG9yaXpvbnRhbCBkaWQgbm90IGV4dGVuZCB0byBsaW5lIGhlaWdodC4KK1BB
U1MgTG9naWNhbCBzZWxlY3Rpb24gaGVpZ2h0IGluICN2ZXJ0aWNhbCBkaWQgbm90IGV4dGVuZCB0
byBsaW5lIGhlaWdodC4KK1BBU1MgTG9naWNhbCBjYXJldCBoZWlnaHQgaW4gI2hvcml6b250YWwg
ZGlkIG5vdCBleHRlbmQgdG8gbGluZSBoZWlnaHQuCitQQVNTIExvZ2ljYWwgY2FyZXQgaGVpZ2h0
IGluICNob3Jpem9udGFsLWVtcHR5IGRpZCBub3QgZXh0ZW5kIHRvIGxpbmUgaGVpZ2h0LgorUEFT
UyBMb2dpY2FsIGNhcmV0IGhlaWdodCBpbiAjdmVydGljYWwgZGlkIG5vdCBleHRlbmQgdG8gbGlu
ZSBoZWlnaHQuCitQQVNTIExvZ2ljYWwgY2FyZXQgaGVpZ2h0IGluICN2ZXJ0aWNhbC1lbXB0eSBk
aWQgbm90IGV4dGVuZCB0byBsaW5lIGhlaWdodC4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKKworVEVTVCBDT01QTEVURQorRm9vCisKK0JhcgorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9zZWxlY3Rpb24tYW5kLWNhcmV0LWRvLW5vdC1leHRlbmQt
dG8tbGluZS1oZWlnaHQuaHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL3NlbGVj
dGlvbi1hbmQtY2FyZXQtZG8tbm90LWV4dGVuZC10by1saW5lLWhlaWdodC5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmRjOGRlZDIxNTk4YWFiZmQ5Zjg2NjdjNjc4ZWVkZjNkMzllOTBhZmMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9zZWxlY3Rpb24tYW5kLWNhcmV0
LWRvLW5vdC1leHRlbmQtdG8tbGluZS1oZWlnaHQuaHRtbApAQCAtMCwwICsxLDc3IEBACis8IURP
Q1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorI2hvcml6b250YWwsICNob3Jpem9udGFs
LWVtcHR5LCAjdmVydGljYWwsICN2ZXJ0aWNhbC1lbXB0eSB7CisgICAgZm9udC1zaXplOiAyMHB4
OworICAgIGxpbmUtaGVpZ2h0OiAxMDBweDsKKyAgICBvdXRsaW5lOiBub25lOworfQorCisjaG9y
aXpvbnRhbCB7CisgICAgYm9yZGVyOiAxcHggc29saWQgdG9tYXRvOworfQorCisjaG9yaXpvbnRh
bC1lbXB0eSB7CisgICAgYm9yZGVyOiAxcHggc29saWQgbGlnaHRibHVlOworfQorCisjdmVydGlj
YWwgeworICAgIGJvcmRlcjogMXB4IHNvbGlkIG9yYW5nZTsKK30KKworI3ZlcnRpY2FsLWVtcHR5
IHsKKyAgICBtYXJnaW4tdG9wOiAxZW07CisgICAgaGVpZ2h0OiA0NHB4OworICAgIGJvcmRlcjog
MXB4IHNvbGlkIGN5YW47Cit9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iaG9y
aXpvbnRhbCIgY29udGVudGVkaXRhYmxlPkZvbzwvcD4KKzxwIGlkPSJob3Jpem9udGFsLWVtcHR5
IiBjb250ZW50ZWRpdGFibGU+PC9wPgorPGRpdiBpZD0idmVydGljYWwiIHN0eWxlPSJ3cml0aW5n
LW1vZGU6IHZlcnRpY2FsLWxyOyIgY29udGVudGVkaXRhYmxlPkJhcjwvZGl2PgorPGRpdiBpZD0i
dmVydGljYWwtZW1wdHkiIHN0eWxlPSJ3cml0aW5nLW1vZGU6IHZlcnRpY2FsLWxyOyIgY29udGVu
dGVkaXRhYmxlPjwvZGl2PgorPHNjcmlwdD4KK2Z1bmN0aW9uIGxvZ2ljYWxIZWlnaHRPZlJlY3Qo
ZWxlbWVudCwgcmVjdCkgeworICAgIHJldHVybiBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpLndy
aXRpbmdNb2RlLnN0YXJ0c1dpdGgoInZlcnRpY2FsIikgPyByZWN0LndpZHRoIDogcmVjdC5oZWln
aHQ7Cit9CisKK2Z1bmN0aW9uIHRlc3RMb2dpY2FsSGVpZ2h0T2ZTZWxlY3Rpb24oZWxlbWVudElE
KSB7CisgICAgY29uc3QgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGVsZW1lbnRJ
RCk7CisgICAgZWxlbWVudC5mb2N1cygpOworICAgIGRvY3VtZW50LmV4ZWNDb21tYW5kKCJTZWxl
Y3RBbGwiKTsKKworICAgIGNvbnN0IGhlaWdodCA9IGxvZ2ljYWxIZWlnaHRPZlJlY3QoZWxlbWVu
dCwgaW50ZXJuYWxzLnNlbGVjdGlvbkJvdW5kcygpKTsKKyAgICBpZiAoaGVpZ2h0IDwgMjUpCisg
ICAgICAgIHRlc3RQYXNzZWQoYExvZ2ljYWwgc2VsZWN0aW9uIGhlaWdodCBpbiAjJHtlbGVtZW50
SUR9IGRpZCBub3QgZXh0ZW5kIHRvIGxpbmUgaGVpZ2h0LmApOworICAgIGVsc2UKKyAgICAgICAg
dGVzdEZhaWxlZChgTG9naWNhbCBzZWxlY3Rpb24gaGVpZ2h0IGluICMke2VsZW1lbnRJRH0gd2Fz
IHRvbyB0YWxsIChvYnNlcnZlZDogJHtoZWlnaHR9KS5gKTsKKyAgICBlbGVtZW50LmJsdXIoKTsK
K30KKworZnVuY3Rpb24gdGVzdExvZ2ljYWxIZWlnaHRPZkNhcmV0KGVsZW1lbnRJRCkgeworICAg
IGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChlbGVtZW50SUQpOworICAg
IGVsZW1lbnQuZm9jdXMoKTsKKworICAgIGNvbnN0IGhlaWdodCA9IGxvZ2ljYWxIZWlnaHRPZlJl
Y3QoZWxlbWVudCwgaW50ZXJuYWxzLmFic29sdXRlQ2FyZXRCb3VuZHMoKSk7CisgICAgaWYgKGhl
aWdodCA8IDI1KQorICAgICAgICB0ZXN0UGFzc2VkKGBMb2dpY2FsIGNhcmV0IGhlaWdodCBpbiAj
JHtlbGVtZW50SUR9IGRpZCBub3QgZXh0ZW5kIHRvIGxpbmUgaGVpZ2h0LmApOworICAgIGVsc2UK
KyAgICAgICAgdGVzdEZhaWxlZChgTG9naWNhbCBjYXJldCBoZWlnaHQgaW4gIyR7ZWxlbWVudElE
fSB3YXMgdG9vIHRhbGwgKG9ic2VydmVkOiAke2hlaWdodH0pLmApOworICAgIGVsZW1lbnQuYmx1
cigpOworfQorCitkZXNjcmlwdGlvbigiVGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgY2FyZXQgYW5k
IHNlbGVjdGlvbiBoZWlnaHRzIGRvIG5vdCBleHRlbmQgdG8gbWF0Y2ggbGluZSBoZWlnaHQgKG9y
IHBhcnQgb2YgbGluZSBoZWlnaHQpLiBUbyBydW4gdGhlIHRlc3QgbWFudWFsbHksIGZvY3VzIGVh
Y2ggb2YgdGhlIGVkaXRhYmxlIGVsZW1lbnRzIGFuZCBtYWtlIHN1cmUgdGhhdCB0aGUgY2FyZXQg
cm91Z2hseSBtYXRjaGVzIHRoZSBmb250IHNpemUgaW4gZWFjaCBlZGl0YWJsZSBlbGVtZW50LiBU
aGVuIHNlbGVjdCB0ZXh0IGluIGVhY2ggb2YgdGhlIGVsZW1lbnRzIHdpdGggdGV4dCBhbmQgdmVy
aWZ5IHRoYXQgdGhlIHNlbGVjdGlvbiBoZWlnaHQgYWxzbyBtYXRjaGVzIHRoZSBmb250IHNpemUu
Iik7CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB0ZXN0TG9naWNhbEhlaWdodE9mU2Vs
ZWN0aW9uKCJob3Jpem9udGFsIik7CisgICAgdGVzdExvZ2ljYWxIZWlnaHRPZlNlbGVjdGlvbigi
dmVydGljYWwiKTsKKyAgICB0ZXN0TG9naWNhbEhlaWdodE9mQ2FyZXQoImhvcml6b250YWwiKTsK
KyAgICB0ZXN0TG9naWNhbEhlaWdodE9mQ2FyZXQoImhvcml6b250YWwtZW1wdHkiKTsKKyAgICB0
ZXN0TG9naWNhbEhlaWdodE9mQ2FyZXQoInZlcnRpY2FsIik7CisgICAgdGVzdExvZ2ljYWxIZWln
aHRPZkNhcmV0KCJ2ZXJ0aWNhbC1lbXB0eSIpOworfQorPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlcGFpbnQvZm9jdXMtcmluZy1yZXBh
aW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVwYWludC9mb2N1cy1yaW5nLXJl
cGFpbnQtZXhwZWN0ZWQudHh0CmluZGV4IDc4MmYyZmIwNDYwYjE5MWExNzNlOGRlMmZkMWI5M2Iz
YThiZTA3NTMuLjNlNjU0Y2I0MDE5NTU3NmJjYWM3MjlmZjY4YzU5MDQwYzQwMjFjMDkgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVwYWludC9mb2N1cy1yaW5nLXJlcGFpbnQtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVwYWludC9mb2N1cy1yaW5nLXJlcGFpbnQt
ZXhwZWN0ZWQudHh0CkBAIC0xMCw4ICsxMCw4IEBACiAgIChyZWN0IDUgNDU3IDEwMyA2NykKICAg
KHJlY3QgNSA0NTcgMTA2IDcwKQogICAocmVjdCA1IDU0MiAxMDYgNzApCi0gIChyZWN0IDE1IDMy
IDM2IDcwKQotICAocmVjdCAxOCAzNSAzMCA2NCkKKyAgKHJlY3QgMTUgNjIgMzYgNDApCisgIChy
ZWN0IDE4IDY1IDMwIDM0KQogICAocmVjdCA1IDg5IDU2IDEwKQogICAocmVjdCA1IDM1IDU2IDY0
KQogICAocmVjdCA1IDExNyAzNiA2MCkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2lvcy9lZGl0aW5nL3NlbGVjdGlvbi9pb3Mvc2VsZWN0aW9uLWhhbmRsZXMtYWZ0ZXItdG91Y2gt
ZW5kLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9lZGl0aW5nL3NlbGVj
dGlvbi9pb3Mvc2VsZWN0aW9uLWhhbmRsZXMtYWZ0ZXItdG91Y2gtZW5kLWV4cGVjdGVkLnR4dApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWEwMDQ2MDJmODBmZTI3NGQ1MjAxNWYyNTlk
MmQ1OTNjYmU4NmVmZS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvZWRpdGluZy9zZWxlY3Rpb24vaW9zL3NlbGVj
dGlvbi1oYW5kbGVzLWFmdGVyLXRvdWNoLWVuZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApA
QCAtMSwxMSArMCwwIEBACi1XSwotCi1TZWxlY3Rpb24gcmVjdHMgYmVmb3JlIHRvdWNoZW5kOgot
eyBsZWZ0ID0gMCwgdG9wID0gMCwgd2lkdGggPSAyNTAsIGhlaWdodCA9IDE3MCB9Ci1TZWxlY3Rp
b24gc3RhcnQgaGFuZGxlIGJlZm9yZSB0b3VjaGVuZDogeyBsZWZ0ID0gMCwgdG9wID0gMCwgd2lk
dGggPSAyLCBoZWlnaHQgPSAxNzAgfQotU2VsZWN0aW9uIGVuZCBoYW5kbGUgYmVmb3JlIHRvdWNo
ZW5kOiB7IGxlZnQgPSAyNDksIHRvcCA9IDAsIHdpZHRoID0gMiwgaGVpZ2h0ID0gMTcwIH0KLQot
U2VsZWN0aW9uIHJlY3RzIGFmdGVyIHRvdWNoZW5kOgoteyBsZWZ0ID0gMCwgdG9wID0gMCwgd2lk
dGggPSAyNTAsIGhlaWdodCA9IDE3MCB9Ci1TZWxlY3Rpb24gc3RhcnQgaGFuZGxlIGFmdGVyIHRv
dWNoZW5kOiB7IGxlZnQgPSAwLCB0b3AgPSAwLCB3aWR0aCA9IDIsIGhlaWdodCA9IDE3MCB9Ci1T
ZWxlY3Rpb24gZW5kIGhhbmRsZSBhZnRlciB0b3VjaGVuZDogeyBsZWZ0ID0gMjQ5LCB0b3AgPSAw
LCB3aWR0aCA9IDIsIGhlaWdodCA9IDE3MCB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>