<?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>160567</bug_id>
          
          <creation_ts>2016-08-04 13:58:19 -0700</creation_ts>
          <short_desc>Move insertAdjacent*() API from HTMLElement to Element</short_desc>
          <delta_ts>2016-08-04 15:45:17 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>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>WebExposed</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kangil.han</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1217573</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-08-04 13:58:19 -0700</bug_when>
    <thetext>Move insertAdjacent*() API from HTMLElement to Element:
- https://w3c.github.io/DOM-Parsing/#extensions-to-the-element-interface
- https://dom.spec.whatwg.org/#element

Firefox and Chrome both have insertAdjacentHTML() on Element.
Chrome has insertAdjacentText() / insertAdjacentElement() on Element as well. Firefox does not have this API at all.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1217582</commentid>
    <comment_count>1</comment_count>
      <attachid>285362</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-08-04 14:05:21 -0700</bug_when>
    <thetext>Created attachment 285362
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1217605</commentid>
    <comment_count>2</comment_count>
      <attachid>285366</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-08-04 14:40:42 -0700</bug_when>
    <thetext>Created attachment 285366
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1217627</commentid>
    <comment_count>3</comment_count>
      <attachid>285366</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-08-04 15:22:15 -0700</bug_when>
    <thetext>Comment on attachment 285366
Patch

Rejecting attachment 285366 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-01&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 285366, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
curity/cross-frame-access-put-expected.txt
Hunk #1 FAILED at 72.
1 out of 1 hunk FAILED -- saving rejects to file LayoutTests/http/tests/security/cross-frame-access-put-expected.txt.rej
patching file LayoutTests/imported/w3c/web-platform-tests/dom/interfaces-expected.txt
patching file LayoutTests/imported/w3c/web-platform-tests/domparsing/insert_adjacent_html-expected.txt

Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: http://webkit-queues.webkit.org/results/1813570</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1217629</commentid>
    <comment_count>4</comment_count>
      <attachid>285372</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-08-04 15:25:11 -0700</bug_when>
    <thetext>Created attachment 285372
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1217636</commentid>
    <comment_count>5</comment_count>
      <attachid>285372</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-08-04 15:45:12 -0700</bug_when>
    <thetext>Comment on attachment 285372
Patch

Clearing flags on attachment: 285372

Committed r204150: &lt;http://trac.webkit.org/changeset/204150&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1217637</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-08-04 15:45:17 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>285362</attachid>
            <date>2016-08-04 14:05:21 -0700</date>
            <delta_ts>2016-08-04 14:40:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-160567-20160804140356.patch</filename>
            <type>text/plain</type>
            <size>23590</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA0MTI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmNmOGU1ODYxMjgyZmRl
MmZmZDNiYTczYjEwNjAyMzYyZWJkZWI1OS4uZGE1ZGYyOGI3NzdkMTg5NGJkMWY5NzY4MDM0M2E1
MjQyNzk3MDMzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQ3IEBACiAyMDE2LTA4LTA0ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKKyAgICAgICAgTW92ZSBpbnNlcnRBZGphY2Vu
dCooKSBBUEkgZnJvbSBIVE1MRWxlbWVudCB0byBFbGVtZW50CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjA1NjcKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNb3ZlIGluc2VydEFkamFjZW50KigpIEFQSSBm
cm9tIEhUTUxFbGVtZW50IHRvIEVsZW1lbnQ6CisgICAgICAgIC0gaHR0cHM6Ly93M2MuZ2l0aHVi
LmlvL0RPTS1QYXJzaW5nLyNleHRlbnNpb25zLXRvLXRoZS1lbGVtZW50LWludGVyZmFjZQorICAg
ICAgICAtIGh0dHBzOi8vZG9tLnNwZWMud2hhdHdnLm9yZy8jZWxlbWVudAorCisgICAgICAgIEZp
cmVmb3ggYW5kIENocm9tZSBib3RoIGhhdmUgaW5zZXJ0QWRqYWNlbnRIVE1MKCkgb24gRWxlbWVu
dC4KKyAgICAgICAgQ2hyb21lIGhhcyBpbnNlcnRBZGphY2VudFRleHQoKSAvIGluc2VydEFkamFj
ZW50RWxlbWVudCgpIG9uIEVsZW1lbnQgYXMKKyAgICAgICAgd2VsbC4gRmlyZWZveCBkb2VzIG5v
dCBoYXZlIHRoaXMgQVBJIGF0IGFsbC4KKworICAgICAgICBBbHNvIGFsaWduIGluc2VydEFkamFj
ZW50SFRNTCgpIHdpdGggdGhlIHNwZWNpZmljYXRpb24gc28gdGhhdCB3ZQorICAgICAgICBub3cg
dGhyb3cgYSBOT19NT0RJRklDQVRJT05fQUxMT1dFRF9FUlIgaWYgY2FsbGVkIHdpdGggImJlZm9y
ZWJlZ2luIiAvCisgICAgICAgICJhZnRlcmVuZCIgb24gYSBwYXJlbnQtbGVzcyBlbGVtZW50LiBU
aGlzIGlzIGFzIHBlcjoKKyAgICAgICAgLSBodHRwczovL3czYy5naXRodWIuaW8vRE9NLVBhcnNp
bmcvI2RvbS1lbGVtZW50LWluc2VydGFkamFjZW50aHRtbAorCisgICAgICAgIFByZXZpb3VzbHks
IFdlYktpdCB3b3VsZCBqdXN0IHNpbGVudGx5IGlnbm9yZSBzdWNoIGNhbGxzLiBUaGUgbmV3Cisg
ICAgICAgIGJlaGF2aW9yIHdpdGggY29uc2lzdGVudCB3aXRoIGJvdGggRmlyZWZveCBhbmQgQ2hy
b21lLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdHMu
CisKKyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50
OjppbnNlcnRBZGphY2VudCk6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjppbnNlcnRBZGph
Y2VudEVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6Y29udGV4dEVsZW1lbnRGb3JJbnNlcnRp
b24pOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6aW5zZXJ0QWRqYWNlbnRIVE1MKToKKyAg
ICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6Omluc2VydEFkamFjZW50VGV4dCk6CisgICAgICAgICog
ZG9tL0VsZW1lbnQuaDoKKyAgICAgICAgKiBkb20vRWxlbWVudC5pZGw6CisgICAgICAgICogaHRt
bC9IVE1MRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRWxlbWVudDo6aW5zZXJ0
QWRqYWNlbnQpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SFRNTEVsZW1lbnQ6Omluc2Vy
dEFkamFjZW50RWxlbWVudCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpjb250ZXh0RWxl
bWVudEZvckluc2VydGlvbik6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpIVE1MRWxlbWVu
dDo6aW5zZXJ0QWRqYWNlbnRIVE1MKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxF
bGVtZW50OjppbnNlcnRBZGphY2VudFRleHQpOiBEZWxldGVkLgorICAgICAgICAqIGh0bWwvSFRN
TEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50LmlkbDoKKworMjAxNi0wOC0w
NCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCiAgICAgICAgIFtbUHJvdG90eXBl
XV0gcHJvcGVydHkgb2YgYW4gaW50ZXJmYWNlIG9iamVjdCBmb3IgYSBjYWxsYmFjayBpbnRlcmZh
Y2UgbXVzdCBiZSB0aGUgT2JqZWN0LnByb3RvdHlwZSBvYmplY3QKICAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MDU1NQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5j
cHAKaW5kZXggZjdlYjVmYmVlNDI4ODVkMmQ3YjExYzVjMDIwNWY0ZTcwZjc5ZDVjZS4uYmQxOGEz
ZjY5MmRmMWNhYzNhZTAxYzg1ZWMxNGQyZjdjNTFjNzM2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNw
cApAQCAtMzQ4MSw0ICszNDgxLDc0IEBAIFN0cmluZyBFbGVtZW50Ojpjb21wbGV0ZVVSTHNJbkF0
dHJpYnV0ZVZhbHVlKGNvbnN0IFVSTCYgYmFzZSwgY29uc3QgQXR0cmlidXRlJiBhCiAgICAgcmV0
dXJuIFVSTChiYXNlLCBhdHRyaWJ1dGUudmFsdWUoKSkuc3RyaW5nKCk7CiB9CiAKKworTm9kZSog
RWxlbWVudDo6aW5zZXJ0QWRqYWNlbnQoY29uc3QgU3RyaW5nJiB3aGVyZSwgUmVmPE5vZGU+JiYg
bmV3Q2hpbGQsIEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIC8vIEluIEludGVybmV0IEV4cGxv
cmVyIGlmIHRoZSBlbGVtZW50IGhhcyBubyBwYXJlbnQgYW5kIHdoZXJlIGlzICJiZWZvcmVCZWdp
biIgb3IgImFmdGVyRW5kIiwKKyAgICAvLyBhIGRvY3VtZW50IGZyYWdtZW50IGlzIGNyZWF0ZWQg
YW5kIHRoZSBlbGVtZW50cyBhcHBlbmRlZCBpbiB0aGUgY29ycmVjdCBvcmRlci4gVGhpcyBkb2N1
bWVudAorICAgIC8vIGZyYWdtZW50IGlzbid0IHJldHVybmVkIGFueXdoZXJlLgorICAgIC8vCisg
ICAgLy8gVGhpcyBpcyBpbXBvc3NpYmxlIGZvciB1cyB0byBpbXBsZW1lbnQgYXMgdGhlIERPTSB0
cmVlIGRvZXMgbm90IGFsbG93IGZvciBzdWNoIHN0cnVjdHVyZXMsCisgICAgLy8gT3BlcmEgYWxz
byBhcHBlYXJzIHRvIGRpc2FsbG93IHN1Y2ggdXNhZ2UuCisKKyAgICBpZiAoZXF1YWxMZXR0ZXJz
SWdub3JpbmdBU0NJSUNhc2Uod2hlcmUsICJiZWZvcmViZWdpbiIpKSB7CisgICAgICAgIENvbnRh
aW5lck5vZGUqIHBhcmVudCA9IHRoaXMtPnBhcmVudE5vZGUoKTsKKyAgICAgICAgcmV0dXJuIChw
YXJlbnQgJiYgcGFyZW50LT5pbnNlcnRCZWZvcmUobmV3Q2hpbGQsIHRoaXMsIGVjKSkgPyBuZXdD
aGlsZC5wdHIoKSA6IG51bGxwdHI7CisgICAgfQorCisgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9y
aW5nQVNDSUlDYXNlKHdoZXJlLCAiYWZ0ZXJiZWdpbiIpKQorICAgICAgICByZXR1cm4gaW5zZXJ0
QmVmb3JlKG5ld0NoaWxkLCBmaXJzdENoaWxkKCksIGVjKSA/IG5ld0NoaWxkLnB0cigpIDogbnVs
bHB0cjsKKworICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh3aGVyZSwgImJl
Zm9yZWVuZCIpKQorICAgICAgICByZXR1cm4gYXBwZW5kQ2hpbGQobmV3Q2hpbGQsIGVjKSA/IG5l
d0NoaWxkLnB0cigpIDogbnVsbHB0cjsKKworICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FT
Q0lJQ2FzZSh3aGVyZSwgImFmdGVyZW5kIikpIHsKKyAgICAgICAgQ29udGFpbmVyTm9kZSogcGFy
ZW50ID0gdGhpcy0+cGFyZW50Tm9kZSgpOworICAgICAgICByZXR1cm4gKHBhcmVudCAmJiBwYXJl
bnQtPmluc2VydEJlZm9yZShuZXdDaGlsZCwgbmV4dFNpYmxpbmcoKSwgZWMpKSA/IG5ld0NoaWxk
LnB0cigpIDogbnVsbHB0cjsKKyAgICB9CisKKyAgICBlYyA9IFNZTlRBWF9FUlI7CisgICAgcmV0
dXJuIG51bGxwdHI7Cit9CisKK0VsZW1lbnQqIEVsZW1lbnQ6Omluc2VydEFkamFjZW50RWxlbWVu
dChjb25zdCBTdHJpbmcmIHdoZXJlLCBFbGVtZW50JiBuZXdDaGlsZCwgRXhjZXB0aW9uQ29kZSYg
ZWMpCit7CisgICAgTm9kZSogcmV0dXJuVmFsdWUgPSBpbnNlcnRBZGphY2VudCh3aGVyZSwgbmV3
Q2hpbGQsIGVjKTsKKyAgICBBU1NFUlRfV0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTighcmV0dXJu
VmFsdWUgfHwgaXM8RWxlbWVudD4oKnJldHVyblZhbHVlKSk7CisgICAgcmV0dXJuIGRvd25jYXN0
PEVsZW1lbnQ+KHJldHVyblZhbHVlKTsKK30KKworLy8gU3RlcCAxIG9mIGh0dHBzOi8vdzNjLmdp
dGh1Yi5pby9ET00tUGFyc2luZy8jZG9tLWVsZW1lbnQtaW5zZXJ0YWRqYWNlbnRodG1sLgorc3Rh
dGljIEVsZW1lbnQqIGNvbnRleHRFbGVtZW50Rm9ySW5zZXJ0aW9uKGNvbnN0IFN0cmluZyYgd2hl
cmUsIEVsZW1lbnQqIGVsZW1lbnQsIEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIGlmIChlcXVh
bExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh3aGVyZSwgImJlZm9yZWJlZ2luIikgfHwgZXF1YWxM
ZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uod2hlcmUsICJhZnRlcmVuZCIpKSB7CisgICAgICAgIGF1
dG8qIHBhcmVudCA9IGVsZW1lbnQtPnBhcmVudEVsZW1lbnQoKTsKKyAgICAgICAgaWYgKCFwYXJl
bnQpIHsKKyAgICAgICAgICAgIGVjID0gTk9fTU9ESUZJQ0FUSU9OX0FMTE9XRURfRVJSOworICAg
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHBhcmVu
dDsKKyAgICB9CisgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHdoZXJlLCAi
YWZ0ZXJiZWdpbiIpIHx8IGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHdoZXJlLCAiYmVm
b3JlZW5kIikpCisgICAgICAgIHJldHVybiBlbGVtZW50OworICAgIGVjID0gIFNZTlRBWF9FUlI7
CisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK3ZvaWQgRWxlbWVudDo6aW5zZXJ0QWRqYWNlbnRI
VE1MKGNvbnN0IFN0cmluZyYgd2hlcmUsIGNvbnN0IFN0cmluZyYgbWFya3VwLCBFeGNlcHRpb25D
b2RlJiBlYykKK3sKKyAgICBFbGVtZW50KiBjb250ZXh0RWxlbWVudCA9IGNvbnRleHRFbGVtZW50
Rm9ySW5zZXJ0aW9uKHdoZXJlLCB0aGlzLCBlYyk7CisgICAgaWYgKCFjb250ZXh0RWxlbWVudCkK
KyAgICAgICAgcmV0dXJuOworICAgIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBmcmFnbWVudCA9
IGNyZWF0ZUZyYWdtZW50Rm9ySW5uZXJPdXRlckhUTUwoKmNvbnRleHRFbGVtZW50LCBtYXJrdXAs
IEFsbG93U2NyaXB0aW5nQ29udGVudCwgZWMpOworICAgIGlmICghZnJhZ21lbnQpCisgICAgICAg
IHJldHVybjsKKyAgICBpbnNlcnRBZGphY2VudCh3aGVyZSwgZnJhZ21lbnQucmVsZWFzZU5vbk51
bGwoKSwgZWMpOworfQorCit2b2lkIEVsZW1lbnQ6Omluc2VydEFkamFjZW50VGV4dChjb25zdCBT
dHJpbmcmIHdoZXJlLCBjb25zdCBTdHJpbmcmIHRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjKQorewor
ICAgIGluc2VydEFkamFjZW50KHdoZXJlLCBkb2N1bWVudCgpLmNyZWF0ZVRleHROb2RlKHRleHQp
LCBlYyk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4
IGRmNTljYjU1OWRiYTRjYmJmMzRhOTBhMTA0YTYzM2JkMjg3ZWEwOTguLjJkODI4NjRlZjUzNjBk
YzVmZjgxNTExZWIxMGU2YjY3YjMxOTk3MzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaApAQCAtMjk1LDYg
KzI5NSwxMCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRUYWJJbmRleChpbnQpOwogICAgIHZpcnR1
YWwgRWxlbWVudCogZm9jdXNEZWxlZ2F0ZSgpOwogCisgICAgRWxlbWVudCogaW5zZXJ0QWRqYWNl
bnRFbGVtZW50KGNvbnN0IFN0cmluZyYgd2hlcmUsIEVsZW1lbnQmIG5ld0NoaWxkLCBFeGNlcHRp
b25Db2RlJik7CisgICAgdm9pZCBpbnNlcnRBZGphY2VudEhUTUwoY29uc3QgU3RyaW5nJiB3aGVy
ZSwgY29uc3QgU3RyaW5nJiBodG1sLCBFeGNlcHRpb25Db2RlJik7CisgICAgdm9pZCBpbnNlcnRB
ZGphY2VudFRleHQoY29uc3QgU3RyaW5nJiB3aGVyZSwgY29uc3QgU3RyaW5nJiB0ZXh0LCBFeGNl
cHRpb25Db2RlJik7CisKICAgICBjb25zdCBSZW5kZXJTdHlsZSogY29tcHV0ZWRTdHlsZShQc2V1
ZG9JZCA9IE5PUFNFVURPKSBvdmVycmlkZTsKIAogICAgIGJvb2wgbmVlZHNTdHlsZUludmFsaWRh
dGlvbigpIGNvbnN0OwpAQCAtNTkwLDYgKzU5NCw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCB1cGRh
dGVJZEZvckRvY3VtZW50KEhUTUxEb2N1bWVudCYsIGNvbnN0IEF0b21pY1N0cmluZyYgb2xkSWQs
IGNvbnN0IEF0b21pY1N0cmluZyYgbmV3SWQsIEhUTUxEb2N1bWVudE5hbWVkSXRlbU1hcHNVcGRh
dGluZ0NvbmRpdGlvbik7CiAgICAgdm9pZCB1cGRhdGVMYWJlbChUcmVlU2NvcGUmLCBjb25zdCBB
dG9taWNTdHJpbmcmIG9sZEZvckF0dHJpYnV0ZVZhbHVlLCBjb25zdCBBdG9taWNTdHJpbmcmIG5l
d0ZvckF0dHJpYnV0ZVZhbHVlKTsKIAorICAgIE5vZGUqIGluc2VydEFkamFjZW50KGNvbnN0IFN0
cmluZyYgd2hlcmUsIFJlZjxOb2RlPiYmIG5ld0NoaWxkLCBFeGNlcHRpb25Db2RlJik7CisKICAg
ICB2b2lkIHNjcm9sbEJ5VW5pdHMoaW50IHVuaXRzLCBTY3JvbGxHcmFudWxhcml0eSk7CiAKICAg
ICB2b2lkIHNldFByZWZpeChjb25zdCBBdG9taWNTdHJpbmcmLCBFeGNlcHRpb25Db2RlJikgZmlu
YWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRWxlbWVudC5pZGwKaW5kZXggNDYxNzM5NTIwYzA5M2RjNWJjZmQ4M2YwODgw
YWZjMmE1ZTYyNjFiMy4uZDY1MzVhNjU1Yjg4N2I0MjlmNjEzMzU5YzI4NjFkOGQwOTYwNjIyNCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9FbGVtZW50LmlkbApAQCAtMTY4LDYgKzE2OCwxMCBAQAogICAgIFtSZWZsZWN0
XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHVpYWN0aW9uczsKICNlbmRpZgogCisgICAgW1JhaXNlc0V4
Y2VwdGlvbl0gRWxlbWVudCBpbnNlcnRBZGphY2VudEVsZW1lbnQoRE9NU3RyaW5nIHdoZXJlLCBF
bGVtZW50IGVsZW1lbnQpOworICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgaW5zZXJ0QWRqYWNl
bnRIVE1MKERPTVN0cmluZyB3aGVyZSwgRE9NU3RyaW5nIGh0bWwpOworICAgIFtSYWlzZXNFeGNl
cHRpb25dIHZvaWQgaW5zZXJ0QWRqYWNlbnRUZXh0KERPTVN0cmluZyB3aGVyZSwgRE9NU3RyaW5n
IHRleHQpOworCiAgICAgW0NvbmRpdGlvbmFsPVBPSU5URVJfTE9DS10gdm9pZCByZXF1ZXN0UG9p
bnRlckxvY2soKTsKIAogICAgIC8vIENTUyBSZWdpb25zIEFQSQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxF
bGVtZW50LmNwcAppbmRleCAyYTlkZTNhOTNmMzkxYzQwMDgyOGZkNTYzNDJjNDBiZmI1ZGEzYTk4
Li5kYzIzYTA1M2Y3MTIyMGJkOWU5YjZhMjU5MzQ1ZDE5OTlmZDUwNDYzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxFbGVtZW50LmNwcApAQCAtNjMwLDc2ICs2MzAsNiBAQCB2b2lkIEhUTUxFbGVtZW50
OjpzZXRPdXRlclRleHQoY29uc3QgU3RyaW5nJiB0ZXh0LCBFeGNlcHRpb25Db2RlJiBlYykKICAg
ICAgICAgbWVyZ2VXaXRoTmV4dFRleHROb2RlKGRvd25jYXN0PFRleHQ+KCpwcmV2KSwgZWMpOwog
fQogCi1Ob2RlKiBIVE1MRWxlbWVudDo6aW5zZXJ0QWRqYWNlbnQoY29uc3QgU3RyaW5nJiB3aGVy
ZSwgUmVmPE5vZGU+JiYgbmV3Q2hpbGQsIEV4Y2VwdGlvbkNvZGUmIGVjKQotewotICAgIC8vIElu
IEludGVybmV0IEV4cGxvcmVyIGlmIHRoZSBlbGVtZW50IGhhcyBubyBwYXJlbnQgYW5kIHdoZXJl
IGlzICJiZWZvcmVCZWdpbiIgb3IgImFmdGVyRW5kIiwKLSAgICAvLyBhIGRvY3VtZW50IGZyYWdt
ZW50IGlzIGNyZWF0ZWQgYW5kIHRoZSBlbGVtZW50cyBhcHBlbmRlZCBpbiB0aGUgY29ycmVjdCBv
cmRlci4gVGhpcyBkb2N1bWVudAotICAgIC8vIGZyYWdtZW50IGlzbid0IHJldHVybmVkIGFueXdo
ZXJlLgotICAgIC8vCi0gICAgLy8gVGhpcyBpcyBpbXBvc3NpYmxlIGZvciB1cyB0byBpbXBsZW1l
bnQgYXMgdGhlIERPTSB0cmVlIGRvZXMgbm90IGFsbG93IGZvciBzdWNoIHN0cnVjdHVyZXMsCi0g
ICAgLy8gT3BlcmEgYWxzbyBhcHBlYXJzIHRvIGRpc2FsbG93IHN1Y2ggdXNhZ2UuCi0KLSAgICBp
ZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uod2hlcmUsICJiZWZvcmViZWdpbiIpKSB7
Ci0gICAgICAgIENvbnRhaW5lck5vZGUqIHBhcmVudCA9IHRoaXMtPnBhcmVudE5vZGUoKTsKLSAg
ICAgICAgcmV0dXJuIChwYXJlbnQgJiYgcGFyZW50LT5pbnNlcnRCZWZvcmUobmV3Q2hpbGQsIHRo
aXMsIGVjKSkgPyBuZXdDaGlsZC5wdHIoKSA6IG51bGxwdHI7Ci0gICAgfQotCi0gICAgaWYgKGVx
dWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHdoZXJlLCAiYWZ0ZXJiZWdpbiIpKQotICAgICAg
ICByZXR1cm4gaW5zZXJ0QmVmb3JlKG5ld0NoaWxkLCBmaXJzdENoaWxkKCksIGVjKSA/IG5ld0No
aWxkLnB0cigpIDogbnVsbHB0cjsKLQotICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJ
Q2FzZSh3aGVyZSwgImJlZm9yZWVuZCIpKQotICAgICAgICByZXR1cm4gYXBwZW5kQ2hpbGQobmV3
Q2hpbGQsIGVjKSA/IG5ld0NoaWxkLnB0cigpIDogbnVsbHB0cjsKLQotICAgIGlmIChlcXVhbExl
dHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh3aGVyZSwgImFmdGVyZW5kIikpIHsKLSAgICAgICAgQ29u
dGFpbmVyTm9kZSogcGFyZW50ID0gdGhpcy0+cGFyZW50Tm9kZSgpOwotICAgICAgICByZXR1cm4g
KHBhcmVudCAmJiBwYXJlbnQtPmluc2VydEJlZm9yZShuZXdDaGlsZCwgbmV4dFNpYmxpbmcoKSwg
ZWMpKSA/IG5ld0NoaWxkLnB0cigpIDogbnVsbHB0cjsKLSAgICB9Ci0gICAgCi0gICAgZWMgPSBT
WU5UQVhfRVJSOwotICAgIHJldHVybiBudWxscHRyOwotfQotCi1FbGVtZW50KiBIVE1MRWxlbWVu
dDo6aW5zZXJ0QWRqYWNlbnRFbGVtZW50KGNvbnN0IFN0cmluZyYgd2hlcmUsIEVsZW1lbnQmIG5l
d0NoaWxkLCBFeGNlcHRpb25Db2RlJiBlYykKLXsKLSAgICBOb2RlKiByZXR1cm5WYWx1ZSA9IGlu
c2VydEFkamFjZW50KHdoZXJlLCBuZXdDaGlsZCwgZWMpOwotICAgIEFTU0VSVF9XSVRIX1NFQ1VS
SVRZX0lNUExJQ0FUSU9OKCFyZXR1cm5WYWx1ZSB8fCBpczxFbGVtZW50PigqcmV0dXJuVmFsdWUp
KTsKLSAgICByZXR1cm4gZG93bmNhc3Q8RWxlbWVudD4ocmV0dXJuVmFsdWUpOyAKLX0KLQotLy8g
U3RlcCAzIG9mIGh0dHA6Ly93d3cud2hhdHdnLm9yZy9zcGVjcy93ZWItYXBwcy9jdXJyZW50LXdv
cmsvbXVsdGlwYWdlL2FwaXMtaW4taHRtbC1kb2N1bWVudHMuaHRtbCNpbnNlcnRhZGphY2VudGh0
bWwoKQotc3RhdGljIEVsZW1lbnQqIGNvbnRleHRFbGVtZW50Rm9ySW5zZXJ0aW9uKGNvbnN0IFN0
cmluZyYgd2hlcmUsIEVsZW1lbnQqIGVsZW1lbnQsIEV4Y2VwdGlvbkNvZGUmIGVjKQotewotICAg
IGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh3aGVyZSwgImJlZm9yZWJlZ2luIikg
fHwgZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uod2hlcmUsICJhZnRlcmVuZCIpKSB7Ci0g
ICAgICAgIENvbnRhaW5lck5vZGUqIHBhcmVudCA9IGVsZW1lbnQtPnBhcmVudE5vZGUoKTsKLSAg
ICAgICAgaWYgKHBhcmVudCAmJiAhaXM8RWxlbWVudD4oKnBhcmVudCkpIHsKLSAgICAgICAgICAg
IGVjID0gTk9fTU9ESUZJQ0FUSU9OX0FMTE9XRURfRVJSOwotICAgICAgICAgICAgcmV0dXJuIG51
bGxwdHI7Ci0gICAgICAgIH0KLSAgICAgICAgQVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJ
T04oIXBhcmVudCB8fCBpczxFbGVtZW50PigqcGFyZW50KSk7Ci0gICAgICAgIHJldHVybiBkb3du
Y2FzdDxFbGVtZW50PihwYXJlbnQpOwotICAgIH0KLSAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3Jp
bmdBU0NJSUNhc2Uod2hlcmUsICJhZnRlcmJlZ2luIikgfHwgZXF1YWxMZXR0ZXJzSWdub3JpbmdB
U0NJSUNhc2Uod2hlcmUsICJiZWZvcmVlbmQiKSkKLSAgICAgICAgcmV0dXJuIGVsZW1lbnQ7Ci0g
ICAgZWMgPSAgU1lOVEFYX0VSUjsKLSAgICByZXR1cm4gbnVsbHB0cjsKLX0KLQotdm9pZCBIVE1M
RWxlbWVudDo6aW5zZXJ0QWRqYWNlbnRIVE1MKGNvbnN0IFN0cmluZyYgd2hlcmUsIGNvbnN0IFN0
cmluZyYgbWFya3VwLCBFeGNlcHRpb25Db2RlJiBlYykKLXsKLSAgICBFbGVtZW50KiBjb250ZXh0
RWxlbWVudCA9IGNvbnRleHRFbGVtZW50Rm9ySW5zZXJ0aW9uKHdoZXJlLCB0aGlzLCBlYyk7Ci0g
ICAgaWYgKCFjb250ZXh0RWxlbWVudCkKLSAgICAgICAgcmV0dXJuOwotICAgIFJlZlB0cjxEb2N1
bWVudEZyYWdtZW50PiBmcmFnbWVudCA9IGNyZWF0ZUZyYWdtZW50Rm9ySW5uZXJPdXRlckhUTUwo
KmNvbnRleHRFbGVtZW50LCBtYXJrdXAsIEFsbG93U2NyaXB0aW5nQ29udGVudCwgZWMpOwotICAg
IGlmICghZnJhZ21lbnQpCi0gICAgICAgIHJldHVybjsKLSAgICBpbnNlcnRBZGphY2VudCh3aGVy
ZSwgZnJhZ21lbnQucmVsZWFzZU5vbk51bGwoKSwgZWMpOwotfQotCi12b2lkIEhUTUxFbGVtZW50
OjppbnNlcnRBZGphY2VudFRleHQoY29uc3QgU3RyaW5nJiB3aGVyZSwgY29uc3QgU3RyaW5nJiB0
ZXh0LCBFeGNlcHRpb25Db2RlJiBlYykKLXsKLSAgICBpbnNlcnRBZGphY2VudCh3aGVyZSwgZG9j
dW1lbnQoKS5jcmVhdGVUZXh0Tm9kZSh0ZXh0KSwgZWMpOwotfQotCiB2b2lkIEhUTUxFbGVtZW50
OjphcHBseUFsaWdubWVudEF0dHJpYnV0ZVRvU3R5bGUoY29uc3QgQXRvbWljU3RyaW5nJiBhbGln
bm1lbnQsIE11dGFibGVTdHlsZVByb3BlcnRpZXMmIHN0eWxlKQogewogICAgIC8vIFZlcnRpY2Fs
IGFsaWdubWVudCB3aXRoIHJlc3BlY3QgdG8gdGhlIGN1cnJlbnQgYmFzZWxpbmUgb2YgdGhlIHRl
eHQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaAppbmRleCBiNGFiYTg4MGQ3NDQxZGUzYjQ3Mjg2
ZGFmNjg4MGRmYzYxNWVjM2U3Li5jZmQ3OTJhZDZiNWViOWRiZmIxMTE3YTAwOTI4NDczNjNjNDdk
MTc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oCkBAIC00OSwxMCArNDksNiBAQCBwdWJs
aWM6CiAgICAgdm9pZCBzZXRJbm5lclRleHQoY29uc3QgU3RyaW5nJiwgRXhjZXB0aW9uQ29kZSYp
OwogICAgIHZvaWQgc2V0T3V0ZXJUZXh0KGNvbnN0IFN0cmluZyYsIEV4Y2VwdGlvbkNvZGUmKTsK
IAotICAgIEVsZW1lbnQqIGluc2VydEFkamFjZW50RWxlbWVudChjb25zdCBTdHJpbmcmIHdoZXJl
LCBFbGVtZW50JiBuZXdDaGlsZCwgRXhjZXB0aW9uQ29kZSYpOwotICAgIHZvaWQgaW5zZXJ0QWRq
YWNlbnRIVE1MKGNvbnN0IFN0cmluZyYgd2hlcmUsIGNvbnN0IFN0cmluZyYgaHRtbCwgRXhjZXB0
aW9uQ29kZSYpOwotICAgIHZvaWQgaW5zZXJ0QWRqYWNlbnRUZXh0KGNvbnN0IFN0cmluZyYgd2hl
cmUsIGNvbnN0IFN0cmluZyYgdGV4dCwgRXhjZXB0aW9uQ29kZSYpOwotCiAgICAgdmlydHVhbCBi
b29sIGhhc0N1c3RvbUZvY3VzTG9naWMoKSBjb25zdDsKICAgICBib29sIHN1cHBvcnRzRm9jdXMo
KSBjb25zdCBvdmVycmlkZTsKIApAQCAtMTMwLDcgKzEyNiw2IEBAIHByaXZhdGU6CiAKICAgICB2
aXJ0dWFsIEhUTUxGb3JtRWxlbWVudCogdmlydHVhbEZvcm0oKSBjb25zdDsKIAotICAgIE5vZGUq
IGluc2VydEFkamFjZW50KGNvbnN0IFN0cmluZyYgd2hlcmUsIFJlZjxOb2RlPiYmIG5ld0NoaWxk
LCBFeGNlcHRpb25Db2RlJik7CiAgICAgUmVmPERvY3VtZW50RnJhZ21lbnQ+IHRleHRUb0ZyYWdt
ZW50KGNvbnN0IFN0cmluZyYsIEV4Y2VwdGlvbkNvZGUmKTsKIAogICAgIHZvaWQgZGlyQXR0cmli
dXRlQ2hhbmdlZChjb25zdCBBdG9taWNTdHJpbmcmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTEVsZW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVu
dC5pZGwKaW5kZXggNmM2Nzc2NDAxYmQzZTU5MmVkYzAzZjYyZWI2MjdhZTM5ZmI1ODYyYi4uZDJi
ZGYzYTg5ZTk1MDc1NGU5ZTNkNmJlYzU1Njc3ZDdkYjI3MTc0YSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MRWxlbWVudC5pZGwKQEAgLTQ0LDExICs0NCw2IEBACiAgICAgW1RyZWF0TnVsbEFzPUVtcHR5
U3RyaW5nLCBTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgaW5uZXJU
ZXh0OwogICAgIFtUcmVhdE51bGxBcz1FbXB0eVN0cmluZywgU2V0dGVyUmFpc2VzRXhjZXB0aW9u
XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG91dGVyVGV4dDsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25d
IEVsZW1lbnQgaW5zZXJ0QWRqYWNlbnRFbGVtZW50KERPTVN0cmluZyB3aGVyZSwgRWxlbWVudCBl
bGVtZW50KTsKLQotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgaW5zZXJ0QWRqYWNlbnRIVE1M
KERPTVN0cmluZyB3aGVyZSwgRE9NU3RyaW5nIGh0bWwpOwotICAgIFtSYWlzZXNFeGNlcHRpb25d
IHZvaWQgaW5zZXJ0QWRqYWNlbnRUZXh0KERPTVN0cmluZyB3aGVyZSwgRE9NU3RyaW5nIHRleHQp
OwotCiAgICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBjb250
ZW50RWRpdGFibGU7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gaXNDb250ZW50RWRp
dGFibGU7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwppbmRleCBmMGY3ZDdmMDYxOGRiYjdhMjhmYjgzYjE5NzM5ZTlhZjdmNDVmNzQy
Li40NjI0OWU0YjVjYjBmMjU2MWQyMWJhZTZhZjE2NDNjY2VmYzRiMzI2IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDUg
KzEsMTggQEAKIDIwMTYtMDgtMDQgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAor
ICAgICAgICBNb3ZlIGluc2VydEFkamFjZW50KigpIEFQSSBmcm9tIEhUTUxFbGVtZW50IHRvIEVs
ZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2
MDU2NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJl
YmFzZWxpbmUgc2V2ZXJhbCB0ZXN0cyB0byByZWZsZWN0IGJlaGF2aW9yIGNoYW5nZS4KKworICAg
ICAgICAqIGZhc3QvZG9tL0hUTUxFbGVtZW50L2luc2VydEFkamFjZW50SFRNTC1lcnJvcnMtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxFbGVtZW50L3NjcmlwdC10ZXN0cy9p
bnNlcnRBZGphY2VudEhUTUwtZXJyb3JzLmpzOgorICAgICAgICAqIGZhc3QvZHluYW1pYy9pbnNl
cnRBZGphY2VudEVsZW1lbnQtZXhwZWN0ZWQudHh0OgorCisyMDE2LTA4LTA0ICBDaHJpcyBEdW1l
eiAgPGNkdW1lekBhcHBsZS5jb20+CisKICAgICAgICAgW1tQcm90b3R5cGVdXSBwcm9wZXJ0eSBv
ZiBhbiBpbnRlcmZhY2Ugb2JqZWN0IGZvciBhIGNhbGxiYWNrIGludGVyZmFjZSBtdXN0IGJlIHRo
ZSBPYmplY3QucHJvdG90eXBlIG9iamVjdAogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTYwNTU1CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmlu
ZGV4IDA0N2NmNDM0ZjRmNTJlZDc1MDMxOTYxZmNkMTg5NjMxZDk2NTliMGUuLjBlNGE5MmE2YjRk
MGI1ODdhNzVhOGI1YzEwODIyNDBhNWJkNmE3NDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5n
ZUxvZwpAQCAtMSw1ICsxLDE3IEBACiAyMDE2LTA4LTA0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBh
cHBsZS5jb20+CiAKKyAgICAgICAgTW92ZSBpbnNlcnRBZGphY2VudCooKSBBUEkgZnJvbSBIVE1M
RWxlbWVudCB0byBFbGVtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNjA1NjcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBSZWJhc2VsaW5lIHNldmVyYWwgVzNDIHRlc3RzIG5vdyB0aGF0IG1vcmUgY2hl
Y2tzIGFyZSBwYXNzaW5nLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9pbnRl
cmZhY2VzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZG9tcGFy
c2luZy9pbnNlcnRfYWRqYWNlbnRfaHRtbC1leHBlY3RlZC50eHQ6CisKKzIwMTYtMDgtMDQgIENo
cmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKwogICAgICAgICBbW1Byb3RvdHlwZV1dIHBy
b3BlcnR5IG9mIGFuIGludGVyZmFjZSBvYmplY3QgZm9yIGEgY2FsbGJhY2sgaW50ZXJmYWNlIG11
c3QgYmUgdGhlIE9iamVjdC5wcm90b3R5cGUgb2JqZWN0CiAgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjA1NTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEVsZW1lbnQvaW5zZXJ0QWRqYWNlbnRIVE1MLWVycm9ycy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9pbnNlcnRBZGphY2VudEhU
TUwtZXJyb3JzLWV4cGVjdGVkLnR4dAppbmRleCBlNjVlZDM1ZGY2ODViOTQ3YWVlNjU0ZjdkOWIz
YmQ2YWIyM2RiYWNjLi4xNzI1ZDFkMmIzYTg4NTdjZjc3N2E4N2Y1MDI3NDI1YWQ4ZGUxMDA4IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9pbnNlcnRBZGphY2Vu
dEhUTUwtZXJyb3JzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1M
RWxlbWVudC9pbnNlcnRBZGphY2VudEhUTUwtZXJyb3JzLWV4cGVjdGVkLnR4dApAQCAtMyw4ICsz
LDggQEAgVGVzdCBpbnNlcnRBZGphY2VudEhUTUwgZXhjZXB0aW9ucyB0byBtYWtlIHN1cmUgdGhl
eSBtYXRjaCBIVE1MNQogT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCiAKLVBBU1MgZGl2Lmlu
c2VydEFkamFjZW50SFRNTCgnYmVmb3JlQmVnaW4nLCAndGV4dCcpIGlzIHVuZGVmaW5lZC4KLVBB
U1MgZGl2Lmluc2VydEFkamFjZW50SFRNTCgnYWZ0ZXJFbmQnLCAndGV4dCcpIGlzIHVuZGVmaW5l
ZC4KK1BBU1MgZGl2Lmluc2VydEFkamFjZW50SFRNTCgnYmVmb3JlQmVnaW4nLCAndGV4dCcpIHRo
cmV3IGV4Y2VwdGlvbiBOb01vZGlmaWNhdGlvbkFsbG93ZWRFcnJvciAoRE9NIEV4Y2VwdGlvbiA3
KTogVGhlIG9iamVjdCBjYW4gbm90IGJlIG1vZGlmaWVkLi4KK1BBU1MgZGl2Lmluc2VydEFkamFj
ZW50SFRNTCgnYWZ0ZXJFbmQnLCAndGV4dCcpIHRocmV3IGV4Y2VwdGlvbiBOb01vZGlmaWNhdGlv
bkFsbG93ZWRFcnJvciAoRE9NIEV4Y2VwdGlvbiA3KTogVGhlIG9iamVjdCBjYW4gbm90IGJlIG1v
ZGlmaWVkLi4KIFBBU1MgZGl2Lmluc2VydEFkamFjZW50SFRNTCgnRk9PJywgJ3RleHQnKSB0aHJl
dyBleGNlcHRpb24gU3ludGF4RXJyb3IgKERPTSBFeGNlcHRpb24gMTIpOiBUaGUgc3RyaW5nIGRp
ZCBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIHBhdHRlcm4uLgogUEFTUyBkb2N1bWVudC5kb2N1bWVu
dEVsZW1lbnQuaW5zZXJ0QWRqYWNlbnRIVE1MKCdhZnRlckVuZCcsICd0ZXh0JykgdGhyZXcgZXhj
ZXB0aW9uIE5vTW9kaWZpY2F0aW9uQWxsb3dlZEVycm9yIChET00gRXhjZXB0aW9uIDcpOiBUaGUg
b2JqZWN0IGNhbiBub3QgYmUgbW9kaWZpZWQuLgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEVsZW1lbnQvc2NyaXB0
LXRlc3RzL2luc2VydEFkamFjZW50SFRNTC1lcnJvcnMuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvaW5zZXJ0QWRqYWNlbnRIVE1MLWVycm9ycy5qcwpp
bmRleCA1N2VlZjM3NzdlOWE3YzE0ZGI3MWY0NmZkNGU0NTM2NTMzZjcxZjEwLi43Y2RlN2UyYTE0
Mzg1ZDdmNDE5YzExOWI0NjJmOTAxMjE0ZGNmMTgyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvaW5zZXJ0QWRqYWNlbnRIVE1MLWVycm9y
cy5qcworKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMv
aW5zZXJ0QWRqYWNlbnRIVE1MLWVycm9ycy5qcwpAQCAtMiw4ICsyLDggQEAgZGVzY3JpcHRpb24o
J1Rlc3QgaW5zZXJ0QWRqYWNlbnRIVE1MIGV4Y2VwdGlvbnMgdG8gbWFrZSBzdXJlIHRoZXkgbWF0
Y2ggSFRNTDUnKTsKIAogdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwog
Ci1zaG91bGRCZVVuZGVmaW5lZCgiZGl2Lmluc2VydEFkamFjZW50SFRNTCgnYmVmb3JlQmVnaW4n
LCAndGV4dCcpIik7Ci1zaG91bGRCZVVuZGVmaW5lZCgiZGl2Lmluc2VydEFkamFjZW50SFRNTCgn
YWZ0ZXJFbmQnLCAndGV4dCcpIik7CitzaG91bGRUaHJvdygiZGl2Lmluc2VydEFkamFjZW50SFRN
TCgnYmVmb3JlQmVnaW4nLCAndGV4dCcpIik7CitzaG91bGRUaHJvdygiZGl2Lmluc2VydEFkamFj
ZW50SFRNTCgnYWZ0ZXJFbmQnLCAndGV4dCcpIik7CiAKIHNob3VsZFRocm93KCJkaXYuaW5zZXJ0
QWRqYWNlbnRIVE1MKCdGT08nLCAndGV4dCcpIiwgJyJTeW50YXhFcnJvciAoRE9NIEV4Y2VwdGlv
biAxMik6IFRoZSBzdHJpbmcgZGlkIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgcGF0dGVybi4iJyk7
CiBzaG91bGRUaHJvdygiZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Lmluc2VydEFkamFjZW50SFRN
TCgnYWZ0ZXJFbmQnLCAndGV4dCcpIiwgJyJOb01vZGlmaWNhdGlvbkFsbG93ZWRFcnJvciAoRE9N
IEV4Y2VwdGlvbiA3KTogVGhlIG9iamVjdCBjYW4gbm90IGJlIG1vZGlmaWVkLiInKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZHluYW1pYy9pbnNlcnRBZGphY2VudEVsZW1lbnQtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9keW5hbWljL2luc2VydEFkamFjZW50RWxlbWVu
dC1leHBlY3RlZC50eHQKaW5kZXggNzViMTc5OTdmODQ4MGE2NTM4M2Y0MzBjN2M1MjZkNjdiZmVh
YWE4ZS4uZmViZGRiOGNjMGE2OTRhY2E0N2JjZWM0ZGM2YzdmZjExNzNlMTQ5ZiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9keW5hbWljL2luc2VydEFkamFjZW50RWxlbWVudC1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9keW5hbWljL2luc2VydEFkamFjZW50RWxlbWVu
dC1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiBDYXVnaHQgZXhwZWN0ZWQgZXhjZXB0aW9u
OiBTeW50YXhFcnJvciAoRE9NIEV4Y2VwdGlvbiAxMik6IFRoZSBzdHJpbmcgZGlkIG5vdCBtYXRj
aCB0aGUgZXhwZWN0ZWQgcGF0dGVybi4KLUNhdWdodCBleHBlY3RlZCBleGNlcHRpb246IFR5cGVF
cnJvcjogQXJndW1lbnQgMiAoJ2VsZW1lbnQnKSB0byBIVE1MRWxlbWVudC5pbnNlcnRBZGphY2Vu
dEVsZW1lbnQgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBFbGVtZW50CitDYXVnaHQgZXhwZWN0ZWQg
ZXhjZXB0aW9uOiBUeXBlRXJyb3I6IEFyZ3VtZW50IDIgKCdlbGVtZW50JykgdG8gRWxlbWVudC5p
bnNlcnRBZGphY2VudEVsZW1lbnQgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBFbGVtZW50CiAxIChi
bGFjaykgMiAoZ3JlZW4pIDMgKGdyZWVuKSA0IChibGFjaykgCiAKIFBBU1MKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2ludGVyZmFj
ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9kb20vaW50ZXJmYWNlcy1leHBlY3RlZC50eHQKaW5kZXggMDgwMGUyMDEzZTA3MTQ2MTFm
ZDRlYzBlMjA5YjRlN2I3ZDlkNzY1NC4uMTAwNGE5NWU1ZWIwNGE4YTUzMmRiNGRmMTY4NDA3N2Qx
ZWQ4NWY3MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9kb20vaW50ZXJmYWNlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vaW50ZXJmYWNlcy1leHBlY3RlZC50eHQK
QEAgLTc2NCw4ICs3NjQsOCBAQCBQQVNTIEVsZW1lbnQgaW50ZXJmYWNlOiBvcGVyYXRpb24gd2Vi
a2l0TWF0Y2hlc1NlbGVjdG9yKERPTVN0cmluZykKIFBBU1MgRWxlbWVudCBpbnRlcmZhY2U6IG9w
ZXJhdGlvbiBnZXRFbGVtZW50c0J5VGFnTmFtZShET01TdHJpbmcpIAogUEFTUyBFbGVtZW50IGlu
dGVyZmFjZTogb3BlcmF0aW9uIGdldEVsZW1lbnRzQnlUYWdOYW1lTlMoRE9NU3RyaW5nLERPTVN0
cmluZykgCiBQQVNTIEVsZW1lbnQgaW50ZXJmYWNlOiBvcGVyYXRpb24gZ2V0RWxlbWVudHNCeUNs
YXNzTmFtZShET01TdHJpbmcpIAotRkFJTCBFbGVtZW50IGludGVyZmFjZTogb3BlcmF0aW9uIGlu
c2VydEFkamFjZW50RWxlbWVudChET01TdHJpbmcsRWxlbWVudCkgYXNzZXJ0X293bl9wcm9wZXJ0
eTogaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QgbWlzc2luZyBub24tc3RhdGljIG9wZXJhdGlv
biBleHBlY3RlZCBwcm9wZXJ0eSAiaW5zZXJ0QWRqYWNlbnRFbGVtZW50IiBtaXNzaW5nCi1GQUlM
IEVsZW1lbnQgaW50ZXJmYWNlOiBvcGVyYXRpb24gaW5zZXJ0QWRqYWNlbnRUZXh0KERPTVN0cmlu
ZyxET01TdHJpbmcpIGFzc2VydF9vd25fcHJvcGVydHk6IGludGVyZmFjZSBwcm90b3R5cGUgb2Jq
ZWN0IG1pc3Npbmcgbm9uLXN0YXRpYyBvcGVyYXRpb24gZXhwZWN0ZWQgcHJvcGVydHkgImluc2Vy
dEFkamFjZW50VGV4dCIgbWlzc2luZworUEFTUyBFbGVtZW50IGludGVyZmFjZTogb3BlcmF0aW9u
IGluc2VydEFkamFjZW50RWxlbWVudChET01TdHJpbmcsRWxlbWVudCkgCitQQVNTIEVsZW1lbnQg
aW50ZXJmYWNlOiBvcGVyYXRpb24gaW5zZXJ0QWRqYWNlbnRUZXh0KERPTVN0cmluZyxET01TdHJp
bmcpIAogUEFTUyBFbGVtZW50IGludGVyZmFjZTogYXR0cmlidXRlIGNoaWxkcmVuIAogUEFTUyBF
bGVtZW50IGludGVyZmFjZTogYXR0cmlidXRlIGZpcnN0RWxlbWVudENoaWxkIAogUEFTUyBFbGVt
ZW50IGludGVyZmFjZTogYXR0cmlidXRlIGxhc3RFbGVtZW50Q2hpbGQgCkBAIC04MzUsMTAgKzgz
NSwxMCBAQCBQQVNTIEVsZW1lbnQgaW50ZXJmYWNlOiBlbGVtZW50IG11c3QgaW5oZXJpdCBwcm9w
ZXJ0eSAiZ2V0RWxlbWVudHNCeVRhZ05hbWVOUyIgdwogUEFTUyBFbGVtZW50IGludGVyZmFjZTog
Y2FsbGluZyBnZXRFbGVtZW50c0J5VGFnTmFtZU5TKERPTVN0cmluZyxET01TdHJpbmcpIG9uIGVs
ZW1lbnQgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKIFBBU1Mg
RWxlbWVudCBpbnRlcmZhY2U6IGVsZW1lbnQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJnZXRFbGVt
ZW50c0J5Q2xhc3NOYW1lIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAoMzEpIAogUEFTUyBFbGVtZW50
IGludGVyZmFjZTogY2FsbGluZyBnZXRFbGVtZW50c0J5Q2xhc3NOYW1lKERPTVN0cmluZykgb24g
ZWxlbWVudCB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAotRkFJ
TCBFbGVtZW50IGludGVyZmFjZTogZWxlbWVudCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImluc2Vy
dEFkamFjZW50RWxlbWVudCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgKDMyKSBhc3NlcnRfaW5oZXJp
dHM6IHByb3BlcnR5ICJpbnNlcnRBZGphY2VudEVsZW1lbnQiIG5vdCBmb3VuZCBpbiBwcm90b3R5
cGUgY2hhaW4KLUZBSUwgRWxlbWVudCBpbnRlcmZhY2U6IGNhbGxpbmcgaW5zZXJ0QWRqYWNlbnRF
bGVtZW50KERPTVN0cmluZyxFbGVtZW50KSBvbiBlbGVtZW50IHdpdGggdG9vIGZldyBhcmd1bWVu
dHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2luaGVyaXRzOiBwcm9wZXJ0eSAiaW5zZXJ0
QWRqYWNlbnRFbGVtZW50IiBub3QgZm91bmQgaW4gcHJvdG90eXBlIGNoYWluCi1GQUlMIEVsZW1l
bnQgaW50ZXJmYWNlOiBlbGVtZW50IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiaW5zZXJ0QWRqYWNl
bnRUZXh0IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAoMzMpIGFzc2VydF9pbmhlcml0czogcHJvcGVy
dHkgImluc2VydEFkamFjZW50VGV4dCIgbm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgotRkFJ
TCBFbGVtZW50IGludGVyZmFjZTogY2FsbGluZyBpbnNlcnRBZGphY2VudFRleHQoRE9NU3RyaW5n
LERPTVN0cmluZykgb24gZWxlbWVudCB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cg
VHlwZUVycm9yIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkgImluc2VydEFkamFjZW50VGV4dCIg
bm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgorUEFTUyBFbGVtZW50IGludGVyZmFjZTogZWxl
bWVudCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImluc2VydEFkamFjZW50RWxlbWVudCIgd2l0aCB0
aGUgcHJvcGVyIHR5cGUgKDMyKSAKK1BBU1MgRWxlbWVudCBpbnRlcmZhY2U6IGNhbGxpbmcgaW5z
ZXJ0QWRqYWNlbnRFbGVtZW50KERPTVN0cmluZyxFbGVtZW50KSBvbiBlbGVtZW50IHdpdGggdG9v
IGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCitQQVNTIEVsZW1lbnQgaW50ZXJm
YWNlOiBlbGVtZW50IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiaW5zZXJ0QWRqYWNlbnRUZXh0IiB3
aXRoIHRoZSBwcm9wZXIgdHlwZSAoMzMpIAorUEFTUyBFbGVtZW50IGludGVyZmFjZTogY2FsbGlu
ZyBpbnNlcnRBZGphY2VudFRleHQoRE9NU3RyaW5nLERPTVN0cmluZykgb24gZWxlbWVudCB3aXRo
IHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAogUEFTUyBFbGVtZW50IGlu
dGVyZmFjZTogZWxlbWVudCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNoaWxkcmVuIiB3aXRoIHRo
ZSBwcm9wZXIgdHlwZSAoMzQpIAogUEFTUyBFbGVtZW50IGludGVyZmFjZTogZWxlbWVudCBtdXN0
IGluaGVyaXQgcHJvcGVydHkgImZpcnN0RWxlbWVudENoaWxkIiB3aXRoIHRoZSBwcm9wZXIgdHlw
ZSAoMzUpIAogUEFTUyBFbGVtZW50IGludGVyZmFjZTogZWxlbWVudCBtdXN0IGluaGVyaXQgcHJv
cGVydHkgImxhc3RFbGVtZW50Q2hpbGQiIHdpdGggdGhlIHByb3BlciB0eXBlICgzNikgCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbXBh
cnNpbmcvaW5zZXJ0X2FkamFjZW50X2h0bWwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb21wYXJzaW5nL2luc2VydF9hZGphY2VudF9o
dG1sLWV4cGVjdGVkLnR4dAppbmRleCAyYTIwNGM3MjZmM2E5MWQwMTBmMzY5NTVkMWNhM2ZmZmZl
NDZjZGY3Li44NDdkNzQ3YjgxYjU1M2M5ZTY0NWNiZTQ3N2FmY2YxZDZhZWYyZWM5IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbXBhcnNp
bmcvaW5zZXJ0X2FkamFjZW50X2h0bWwtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tcGFyc2luZy9pbnNlcnRfYWRqYWNlbnRf
aHRtbC1leHBlY3RlZC50eHQKQEAgLTgsOSArOCw5IEBAIFBBU1MgQWZ0ZXJiZWdpbiBjb250ZW50
IGFnYWluLCB3aXRoIG5leHQgc2libGluZwogUEFTUyBCZWZvcmVFbmQgY29udGVudCBhZ2Fpbiwg
d2l0aCBuZXh0IHNpYmxpbmcgCiBQQVNTIGFmdGVyZW5kIGNvbnRlbnQgYWdhaW4sIHdpdGggbmV4
dCBzaWJsaW5nIAogUEFTUyBTaG91bGQgdGhyb3cgd2hlbiBpbnNlcnRpbmcgd2l0aCBpbnZhbGlk
IHBvc2l0aW9uIHN0cmluZyAKLUZBSUwgV2hlbiB0aGUgcGFyZW50IG5vZGUgaXMgbnVsbCwgaW5z
ZXJ0QWRqYWNlbnRIVE1MIHNob3VsZCB0aHJvdyBmb3IgYmVmb3JlYmVnaW4gYW5kIGFmdGVyZW5k
ICh0ZXh0KSBhc3NlcnRfdGhyb3dzOiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgeyBlbGVtZW50Lmlu
c2VydEFkamFjZW50SFRNTCgiYWZ0ZXJlbmQiLCAiIikgfSIgZGlkIG5vdCB0aHJvdwotRkFJTCBX
aGVuIHRoZSBwYXJlbnQgbm9kZSBpcyBudWxsLCBpbnNlcnRBZGphY2VudEhUTUwgc2hvdWxkIHRo
cm93IGZvciBiZWZvcmViZWdpbiBhbmQgYWZ0ZXJlbmQgKGNvbW1lbnRzKSBhc3NlcnRfdGhyb3dz
OiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgeyBlbGVtZW50Lmluc2VydEFkamFjZW50SFRNTCgiYWZ0
ZXJlbmQiLCAiPCEtLi4uIiBkaWQgbm90IHRocm93Ci1GQUlMIFdoZW4gdGhlIHBhcmVudCBub2Rl
IGlzIG51bGwsIGluc2VydEFkamFjZW50SFRNTCBzaG91bGQgdGhyb3cgZm9yIGJlZm9yZWJlZ2lu
IGFuZCBhZnRlcmVuZCAoZWxlbWVudHMpIGFzc2VydF90aHJvd3M6IGZ1bmN0aW9uICJmdW5jdGlv
biAoKSB7IGVsZW1lbnQuaW5zZXJ0QWRqYWNlbnRIVE1MKCJhZnRlcmVuZCIsICI8ZGkuLi4iIGRp
ZCBub3QgdGhyb3cKK1BBU1MgV2hlbiB0aGUgcGFyZW50IG5vZGUgaXMgbnVsbCwgaW5zZXJ0QWRq
YWNlbnRIVE1MIHNob3VsZCB0aHJvdyBmb3IgYmVmb3JlYmVnaW4gYW5kIGFmdGVyZW5kICh0ZXh0
KSAKK1BBU1MgV2hlbiB0aGUgcGFyZW50IG5vZGUgaXMgbnVsbCwgaW5zZXJ0QWRqYWNlbnRIVE1M
IHNob3VsZCB0aHJvdyBmb3IgYmVmb3JlYmVnaW4gYW5kIGFmdGVyZW5kIChjb21tZW50cykgCitQ
QVNTIFdoZW4gdGhlIHBhcmVudCBub2RlIGlzIG51bGwsIGluc2VydEFkamFjZW50SFRNTCBzaG91
bGQgdGhyb3cgZm9yIGJlZm9yZWJlZ2luIGFuZCBhZnRlcmVuZCAoZWxlbWVudHMpIAogUEFTUyBX
aGVuIHRoZSBwYXJlbnQgbm9kZSBpcyBhIGRvY3VtZW50LCBpbnNlcnRBZGphY2VudEhUTUwgc2hv
dWxkIHRocm93IGZvciBiZWZvcmViZWdpbiBhbmQgYWZ0ZXJlbmQgKHRleHQpIAogUEFTUyBXaGVu
IHRoZSBwYXJlbnQgbm9kZSBpcyBhIGRvY3VtZW50LCBpbnNlcnRBZGphY2VudEhUTUwgc2hvdWxk
IHRocm93IGZvciBiZWZvcmViZWdpbiBhbmQgYWZ0ZXJlbmQgKGNvbW1lbnRzKSAKIFBBU1MgV2hl
biB0aGUgcGFyZW50IG5vZGUgaXMgYSBkb2N1bWVudCwgaW5zZXJ0QWRqYWNlbnRIVE1MIHNob3Vs
ZCB0aHJvdyBmb3IgYmVmb3JlYmVnaW4gYW5kIGFmdGVyZW5kIChlbGVtZW50cykgCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>285366</attachid>
            <date>2016-08-04 14:40:42 -0700</date>
            <delta_ts>2016-08-04 15:25:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-160567-20160804143917.patch</filename>
            <type>text/plain</type>
            <size>24815</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA0MTI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmNmOGU1ODYxMjgyZmRl
MmZmZDNiYTczYjEwNjAyMzYyZWJkZWI1OS4uYmEwNGYzNmEwNGQ4ZmU1Y2ZlYzZiYmE4ZTdmOWM2
ODAzYzc0YTc3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQ3IEBACiAyMDE2LTA4LTA0ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKKyAgICAgICAgTW92ZSBpbnNlcnRBZGphY2Vu
dCooKSBBUEkgZnJvbSBIVE1MRWxlbWVudCB0byBFbGVtZW50CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjA1NjcKKworICAgICAgICBSZXZpZXdlZCBi
eSBTYW0gV2VpbmlnLgorCisgICAgICAgIE1vdmUgaW5zZXJ0QWRqYWNlbnQqKCkgQVBJIGZyb20g
SFRNTEVsZW1lbnQgdG8gRWxlbWVudDoKKyAgICAgICAgLSBodHRwczovL3czYy5naXRodWIuaW8v
RE9NLVBhcnNpbmcvI2V4dGVuc2lvbnMtdG8tdGhlLWVsZW1lbnQtaW50ZXJmYWNlCisgICAgICAg
IC0gaHR0cHM6Ly9kb20uc3BlYy53aGF0d2cub3JnLyNlbGVtZW50CisKKyAgICAgICAgRmlyZWZv
eCBhbmQgQ2hyb21lIGJvdGggaGF2ZSBpbnNlcnRBZGphY2VudEhUTUwoKSBvbiBFbGVtZW50Lgor
ICAgICAgICBDaHJvbWUgaGFzIGluc2VydEFkamFjZW50VGV4dCgpIC8gaW5zZXJ0QWRqYWNlbnRF
bGVtZW50KCkgb24gRWxlbWVudCBhcworICAgICAgICB3ZWxsLiBGaXJlZm94IGRvZXMgbm90IGhh
dmUgdGhpcyBBUEkgYXQgYWxsLgorCisgICAgICAgIEFsc28gYWxpZ24gaW5zZXJ0QWRqYWNlbnRI
VE1MKCkgd2l0aCB0aGUgc3BlY2lmaWNhdGlvbiBzbyB0aGF0IHdlCisgICAgICAgIG5vdyB0aHJv
dyBhIE5PX01PRElGSUNBVElPTl9BTExPV0VEX0VSUiBpZiBjYWxsZWQgd2l0aCAiYmVmb3JlYmVn
aW4iIC8KKyAgICAgICAgImFmdGVyZW5kIiBvbiBhIHBhcmVudC1sZXNzIGVsZW1lbnQuIFRoaXMg
aXMgYXMgcGVyOgorICAgICAgICAtIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9ET00tUGFyc2luZy8j
ZG9tLWVsZW1lbnQtaW5zZXJ0YWRqYWNlbnRodG1sCisKKyAgICAgICAgUHJldmlvdXNseSwgV2Vi
S2l0IHdvdWxkIGp1c3Qgc2lsZW50bHkgaWdub3JlIHN1Y2ggY2FsbHMuIFRoZSBuZXcKKyAgICAg
ICAgYmVoYXZpb3Igd2l0aCBjb25zaXN0ZW50IHdpdGggYm90aCBGaXJlZm94IGFuZCBDaHJvbWUu
CisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCByZWJhc2VsaW5lZCBleGlzdGluZyB0ZXN0cy4KKwor
ICAgICAgICAqIGRvbS9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6Omlu
c2VydEFkamFjZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6Omluc2VydEFkamFjZW50
RWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpjb250ZXh0RWxlbWVudEZvckluc2VydGlvbik6
CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjppbnNlcnRBZGphY2VudEhUTUwpOgorICAgICAg
ICAoV2ViQ29yZTo6RWxlbWVudDo6aW5zZXJ0QWRqYWNlbnRUZXh0KToKKyAgICAgICAgKiBkb20v
RWxlbWVudC5oOgorICAgICAgICAqIGRvbS9FbGVtZW50LmlkbDoKKyAgICAgICAgKiBodG1sL0hU
TUxFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50OjppbnNlcnRBZGph
Y2VudCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpIVE1MRWxlbWVudDo6aW5zZXJ0QWRq
YWNlbnRFbGVtZW50KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmNvbnRleHRFbGVtZW50
Rm9ySW5zZXJ0aW9uKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50Ojpp
bnNlcnRBZGphY2VudEhUTUwpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SFRNTEVsZW1l
bnQ6Omluc2VydEFkamFjZW50VGV4dCk6IERlbGV0ZWQuCisgICAgICAgICogaHRtbC9IVE1MRWxl
bWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTEVsZW1lbnQuaWRsOgorCisyMDE2LTA4LTA0ICBD
aHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKICAgICAgICAgW1tQcm90b3R5cGVdXSBw
cm9wZXJ0eSBvZiBhbiBpbnRlcmZhY2Ugb2JqZWN0IGZvciBhIGNhbGxiYWNrIGludGVyZmFjZSBt
dXN0IGJlIHRoZSBPYmplY3QucHJvdG90eXBlIG9iamVjdAogICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYwNTU1CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApp
bmRleCBmN2ViNWZiZWU0Mjg4NWQyZDdiMTFjNWMwMjA1ZjRlNzBmNzlkNWNlLi5iZDE4YTNmNjky
ZGYxY2FjM2FlMDFjODVlYzE0ZDJmN2M1MWM3MzY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCkBA
IC0zNDgxLDQgKzM0ODEsNzQgQEAgU3RyaW5nIEVsZW1lbnQ6OmNvbXBsZXRlVVJMc0luQXR0cmli
dXRlVmFsdWUoY29uc3QgVVJMJiBiYXNlLCBjb25zdCBBdHRyaWJ1dGUmIGEKICAgICByZXR1cm4g
VVJMKGJhc2UsIGF0dHJpYnV0ZS52YWx1ZSgpKS5zdHJpbmcoKTsKIH0KIAorCitOb2RlKiBFbGVt
ZW50OjppbnNlcnRBZGphY2VudChjb25zdCBTdHJpbmcmIHdoZXJlLCBSZWY8Tm9kZT4mJiBuZXdD
aGlsZCwgRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgLy8gSW4gSW50ZXJuZXQgRXhwbG9yZXIg
aWYgdGhlIGVsZW1lbnQgaGFzIG5vIHBhcmVudCBhbmQgd2hlcmUgaXMgImJlZm9yZUJlZ2luIiBv
ciAiYWZ0ZXJFbmQiLAorICAgIC8vIGEgZG9jdW1lbnQgZnJhZ21lbnQgaXMgY3JlYXRlZCBhbmQg
dGhlIGVsZW1lbnRzIGFwcGVuZGVkIGluIHRoZSBjb3JyZWN0IG9yZGVyLiBUaGlzIGRvY3VtZW50
CisgICAgLy8gZnJhZ21lbnQgaXNuJ3QgcmV0dXJuZWQgYW55d2hlcmUuCisgICAgLy8KKyAgICAv
LyBUaGlzIGlzIGltcG9zc2libGUgZm9yIHVzIHRvIGltcGxlbWVudCBhcyB0aGUgRE9NIHRyZWUg
ZG9lcyBub3QgYWxsb3cgZm9yIHN1Y2ggc3RydWN0dXJlcywKKyAgICAvLyBPcGVyYSBhbHNvIGFw
cGVhcnMgdG8gZGlzYWxsb3cgc3VjaCB1c2FnZS4KKworICAgIGlmIChlcXVhbExldHRlcnNJZ25v
cmluZ0FTQ0lJQ2FzZSh3aGVyZSwgImJlZm9yZWJlZ2luIikpIHsKKyAgICAgICAgQ29udGFpbmVy
Tm9kZSogcGFyZW50ID0gdGhpcy0+cGFyZW50Tm9kZSgpOworICAgICAgICByZXR1cm4gKHBhcmVu
dCAmJiBwYXJlbnQtPmluc2VydEJlZm9yZShuZXdDaGlsZCwgdGhpcywgZWMpKSA/IG5ld0NoaWxk
LnB0cigpIDogbnVsbHB0cjsKKyAgICB9CisKKyAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdB
U0NJSUNhc2Uod2hlcmUsICJhZnRlcmJlZ2luIikpCisgICAgICAgIHJldHVybiBpbnNlcnRCZWZv
cmUobmV3Q2hpbGQsIGZpcnN0Q2hpbGQoKSwgZWMpID8gbmV3Q2hpbGQucHRyKCkgOiBudWxscHRy
OworCisgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHdoZXJlLCAiYmVmb3Jl
ZW5kIikpCisgICAgICAgIHJldHVybiBhcHBlbmRDaGlsZChuZXdDaGlsZCwgZWMpID8gbmV3Q2hp
bGQucHRyKCkgOiBudWxscHRyOworCisgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlD
YXNlKHdoZXJlLCAiYWZ0ZXJlbmQiKSkgeworICAgICAgICBDb250YWluZXJOb2RlKiBwYXJlbnQg
PSB0aGlzLT5wYXJlbnROb2RlKCk7CisgICAgICAgIHJldHVybiAocGFyZW50ICYmIHBhcmVudC0+
aW5zZXJ0QmVmb3JlKG5ld0NoaWxkLCBuZXh0U2libGluZygpLCBlYykpID8gbmV3Q2hpbGQucHRy
KCkgOiBudWxscHRyOworICAgIH0KKworICAgIGVjID0gU1lOVEFYX0VSUjsKKyAgICByZXR1cm4g
bnVsbHB0cjsKK30KKworRWxlbWVudCogRWxlbWVudDo6aW5zZXJ0QWRqYWNlbnRFbGVtZW50KGNv
bnN0IFN0cmluZyYgd2hlcmUsIEVsZW1lbnQmIG5ld0NoaWxkLCBFeGNlcHRpb25Db2RlJiBlYykK
K3sKKyAgICBOb2RlKiByZXR1cm5WYWx1ZSA9IGluc2VydEFkamFjZW50KHdoZXJlLCBuZXdDaGls
ZCwgZWMpOworICAgIEFTU0VSVF9XSVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKCFyZXR1cm5WYWx1
ZSB8fCBpczxFbGVtZW50PigqcmV0dXJuVmFsdWUpKTsKKyAgICByZXR1cm4gZG93bmNhc3Q8RWxl
bWVudD4ocmV0dXJuVmFsdWUpOworfQorCisvLyBTdGVwIDEgb2YgaHR0cHM6Ly93M2MuZ2l0aHVi
LmlvL0RPTS1QYXJzaW5nLyNkb20tZWxlbWVudC1pbnNlcnRhZGphY2VudGh0bWwuCitzdGF0aWMg
RWxlbWVudCogY29udGV4dEVsZW1lbnRGb3JJbnNlcnRpb24oY29uc3QgU3RyaW5nJiB3aGVyZSwg
RWxlbWVudCogZWxlbWVudCwgRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgaWYgKGVxdWFsTGV0
dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHdoZXJlLCAiYmVmb3JlYmVnaW4iKSB8fCBlcXVhbExldHRl
cnNJZ25vcmluZ0FTQ0lJQ2FzZSh3aGVyZSwgImFmdGVyZW5kIikpIHsKKyAgICAgICAgYXV0byog
cGFyZW50ID0gZWxlbWVudC0+cGFyZW50RWxlbWVudCgpOworICAgICAgICBpZiAoIXBhcmVudCkg
eworICAgICAgICAgICAgZWMgPSBOT19NT0RJRklDQVRJT05fQUxMT1dFRF9FUlI7CisgICAgICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gcGFyZW50Owor
ICAgIH0KKyAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uod2hlcmUsICJhZnRl
cmJlZ2luIikgfHwgZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uod2hlcmUsICJiZWZvcmVl
bmQiKSkKKyAgICAgICAgcmV0dXJuIGVsZW1lbnQ7CisgICAgZWMgPSAgU1lOVEFYX0VSUjsKKyAg
ICByZXR1cm4gbnVsbHB0cjsKK30KKwordm9pZCBFbGVtZW50OjppbnNlcnRBZGphY2VudEhUTUwo
Y29uc3QgU3RyaW5nJiB3aGVyZSwgY29uc3QgU3RyaW5nJiBtYXJrdXAsIEV4Y2VwdGlvbkNvZGUm
IGVjKQoreworICAgIEVsZW1lbnQqIGNvbnRleHRFbGVtZW50ID0gY29udGV4dEVsZW1lbnRGb3JJ
bnNlcnRpb24od2hlcmUsIHRoaXMsIGVjKTsKKyAgICBpZiAoIWNvbnRleHRFbGVtZW50KQorICAg
ICAgICByZXR1cm47CisgICAgUmVmUHRyPERvY3VtZW50RnJhZ21lbnQ+IGZyYWdtZW50ID0gY3Jl
YXRlRnJhZ21lbnRGb3JJbm5lck91dGVySFRNTCgqY29udGV4dEVsZW1lbnQsIG1hcmt1cCwgQWxs
b3dTY3JpcHRpbmdDb250ZW50LCBlYyk7CisgICAgaWYgKCFmcmFnbWVudCkKKyAgICAgICAgcmV0
dXJuOworICAgIGluc2VydEFkamFjZW50KHdoZXJlLCBmcmFnbWVudC5yZWxlYXNlTm9uTnVsbCgp
LCBlYyk7Cit9CisKK3ZvaWQgRWxlbWVudDo6aW5zZXJ0QWRqYWNlbnRUZXh0KGNvbnN0IFN0cmlu
ZyYgd2hlcmUsIGNvbnN0IFN0cmluZyYgdGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAg
aW5zZXJ0QWRqYWNlbnQod2hlcmUsIGRvY3VtZW50KCkuY3JlYXRlVGV4dE5vZGUodGV4dCksIGVj
KTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZG9tL0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKaW5kZXggZGY1
OWNiNTU5ZGJhNGNiYmYzNGE5MGExMDRhNjMzYmQyODdlYTA5OC4uMmQ4Mjg2NGVmNTM2MGRjNWZm
ODE1MTFlYjEwZTZiNjdiMzE5OTczOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0Vs
ZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCkBAIC0yOTUsNiArMjk1
LDEwIEBAIHB1YmxpYzoKICAgICB2b2lkIHNldFRhYkluZGV4KGludCk7CiAgICAgdmlydHVhbCBF
bGVtZW50KiBmb2N1c0RlbGVnYXRlKCk7CiAKKyAgICBFbGVtZW50KiBpbnNlcnRBZGphY2VudEVs
ZW1lbnQoY29uc3QgU3RyaW5nJiB3aGVyZSwgRWxlbWVudCYgbmV3Q2hpbGQsIEV4Y2VwdGlvbkNv
ZGUmKTsKKyAgICB2b2lkIGluc2VydEFkamFjZW50SFRNTChjb25zdCBTdHJpbmcmIHdoZXJlLCBj
b25zdCBTdHJpbmcmIGh0bWwsIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lkIGluc2VydEFkamFj
ZW50VGV4dChjb25zdCBTdHJpbmcmIHdoZXJlLCBjb25zdCBTdHJpbmcmIHRleHQsIEV4Y2VwdGlv
bkNvZGUmKTsKKwogICAgIGNvbnN0IFJlbmRlclN0eWxlKiBjb21wdXRlZFN0eWxlKFBzZXVkb0lk
ID0gTk9QU0VVRE8pIG92ZXJyaWRlOwogCiAgICAgYm9vbCBuZWVkc1N0eWxlSW52YWxpZGF0aW9u
KCkgY29uc3Q7CkBAIC01OTAsNiArNTk0LDggQEAgcHJpdmF0ZToKICAgICB2b2lkIHVwZGF0ZUlk
Rm9yRG9jdW1lbnQoSFRNTERvY3VtZW50JiwgY29uc3QgQXRvbWljU3RyaW5nJiBvbGRJZCwgY29u
c3QgQXRvbWljU3RyaW5nJiBuZXdJZCwgSFRNTERvY3VtZW50TmFtZWRJdGVtTWFwc1VwZGF0aW5n
Q29uZGl0aW9uKTsKICAgICB2b2lkIHVwZGF0ZUxhYmVsKFRyZWVTY29wZSYsIGNvbnN0IEF0b21p
Y1N0cmluZyYgb2xkRm9yQXR0cmlidXRlVmFsdWUsIGNvbnN0IEF0b21pY1N0cmluZyYgbmV3Rm9y
QXR0cmlidXRlVmFsdWUpOwogCisgICAgTm9kZSogaW5zZXJ0QWRqYWNlbnQoY29uc3QgU3RyaW5n
JiB3aGVyZSwgUmVmPE5vZGU+JiYgbmV3Q2hpbGQsIEV4Y2VwdGlvbkNvZGUmKTsKKwogICAgIHZv
aWQgc2Nyb2xsQnlVbml0cyhpbnQgdW5pdHMsIFNjcm9sbEdyYW51bGFyaXR5KTsKIAogICAgIHZv
aWQgc2V0UHJlZml4KGNvbnN0IEF0b21pY1N0cmluZyYsIEV4Y2VwdGlvbkNvZGUmKSBmaW5hbDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9FbGVtZW50LmlkbAppbmRleCA0NjE3Mzk1MjBjMDkzZGM1YmNmZDgzZjA4ODBhZmMy
YTVlNjI2MWIzLi5kNjUzNWE2NTViODg3YjQyOWY2MTMzNTljMjg2MWQ4ZDA5NjA2MjI0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL0VsZW1lbnQuaWRsCkBAIC0xNjgsNiArMTY4LDEwIEBACiAgICAgW1JlZmxlY3RdIGF0
dHJpYnV0ZSBET01TdHJpbmcgdWlhY3Rpb25zOwogI2VuZGlmCiAKKyAgICBbUmFpc2VzRXhjZXB0
aW9uXSBFbGVtZW50IGluc2VydEFkamFjZW50RWxlbWVudChET01TdHJpbmcgd2hlcmUsIEVsZW1l
bnQgZWxlbWVudCk7CisgICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBpbnNlcnRBZGphY2VudEhU
TUwoRE9NU3RyaW5nIHdoZXJlLCBET01TdHJpbmcgaHRtbCk7CisgICAgW1JhaXNlc0V4Y2VwdGlv
bl0gdm9pZCBpbnNlcnRBZGphY2VudFRleHQoRE9NU3RyaW5nIHdoZXJlLCBET01TdHJpbmcgdGV4
dCk7CisKICAgICBbQ29uZGl0aW9uYWw9UE9JTlRFUl9MT0NLXSB2b2lkIHJlcXVlc3RQb2ludGVy
TG9jaygpOwogCiAgICAgLy8gQ1NTIFJlZ2lvbnMgQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1l
bnQuY3BwCmluZGV4IDJhOWRlM2E5M2YzOTFjNDAwODI4ZmQ1NjM0MmM0MGJmYjVkYTNhOTguLmRj
MjNhMDUzZjcxMjIwYmQ5ZTliNmEyNTkzNDVkMTk5OWZkNTA0NjMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTEVsZW1lbnQuY3BwCkBAIC02MzAsNzYgKzYzMCw2IEBAIHZvaWQgSFRNTEVsZW1lbnQ6OnNl
dE91dGVyVGV4dChjb25zdCBTdHJpbmcmIHRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjKQogICAgICAg
ICBtZXJnZVdpdGhOZXh0VGV4dE5vZGUoZG93bmNhc3Q8VGV4dD4oKnByZXYpLCBlYyk7CiB9CiAK
LU5vZGUqIEhUTUxFbGVtZW50OjppbnNlcnRBZGphY2VudChjb25zdCBTdHJpbmcmIHdoZXJlLCBS
ZWY8Tm9kZT4mJiBuZXdDaGlsZCwgRXhjZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAgLy8gSW4gSW50
ZXJuZXQgRXhwbG9yZXIgaWYgdGhlIGVsZW1lbnQgaGFzIG5vIHBhcmVudCBhbmQgd2hlcmUgaXMg
ImJlZm9yZUJlZ2luIiBvciAiYWZ0ZXJFbmQiLAotICAgIC8vIGEgZG9jdW1lbnQgZnJhZ21lbnQg
aXMgY3JlYXRlZCBhbmQgdGhlIGVsZW1lbnRzIGFwcGVuZGVkIGluIHRoZSBjb3JyZWN0IG9yZGVy
LiBUaGlzIGRvY3VtZW50Ci0gICAgLy8gZnJhZ21lbnQgaXNuJ3QgcmV0dXJuZWQgYW55d2hlcmUu
Ci0gICAgLy8KLSAgICAvLyBUaGlzIGlzIGltcG9zc2libGUgZm9yIHVzIHRvIGltcGxlbWVudCBh
cyB0aGUgRE9NIHRyZWUgZG9lcyBub3QgYWxsb3cgZm9yIHN1Y2ggc3RydWN0dXJlcywKLSAgICAv
LyBPcGVyYSBhbHNvIGFwcGVhcnMgdG8gZGlzYWxsb3cgc3VjaCB1c2FnZS4KLQotICAgIGlmIChl
cXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh3aGVyZSwgImJlZm9yZWJlZ2luIikpIHsKLSAg
ICAgICAgQ29udGFpbmVyTm9kZSogcGFyZW50ID0gdGhpcy0+cGFyZW50Tm9kZSgpOwotICAgICAg
ICByZXR1cm4gKHBhcmVudCAmJiBwYXJlbnQtPmluc2VydEJlZm9yZShuZXdDaGlsZCwgdGhpcywg
ZWMpKSA/IG5ld0NoaWxkLnB0cigpIDogbnVsbHB0cjsKLSAgICB9Ci0KLSAgICBpZiAoZXF1YWxM
ZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uod2hlcmUsICJhZnRlcmJlZ2luIikpCi0gICAgICAgIHJl
dHVybiBpbnNlcnRCZWZvcmUobmV3Q2hpbGQsIGZpcnN0Q2hpbGQoKSwgZWMpID8gbmV3Q2hpbGQu
cHRyKCkgOiBudWxscHRyOwotCi0gICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNl
KHdoZXJlLCAiYmVmb3JlZW5kIikpCi0gICAgICAgIHJldHVybiBhcHBlbmRDaGlsZChuZXdDaGls
ZCwgZWMpID8gbmV3Q2hpbGQucHRyKCkgOiBudWxscHRyOwotCi0gICAgaWYgKGVxdWFsTGV0dGVy
c0lnbm9yaW5nQVNDSUlDYXNlKHdoZXJlLCAiYWZ0ZXJlbmQiKSkgewotICAgICAgICBDb250YWlu
ZXJOb2RlKiBwYXJlbnQgPSB0aGlzLT5wYXJlbnROb2RlKCk7Ci0gICAgICAgIHJldHVybiAocGFy
ZW50ICYmIHBhcmVudC0+aW5zZXJ0QmVmb3JlKG5ld0NoaWxkLCBuZXh0U2libGluZygpLCBlYykp
ID8gbmV3Q2hpbGQucHRyKCkgOiBudWxscHRyOwotICAgIH0KLSAgICAKLSAgICBlYyA9IFNZTlRB
WF9FUlI7Ci0gICAgcmV0dXJuIG51bGxwdHI7Ci19Ci0KLUVsZW1lbnQqIEhUTUxFbGVtZW50Ojpp
bnNlcnRBZGphY2VudEVsZW1lbnQoY29uc3QgU3RyaW5nJiB3aGVyZSwgRWxlbWVudCYgbmV3Q2hp
bGQsIEV4Y2VwdGlvbkNvZGUmIGVjKQotewotICAgIE5vZGUqIHJldHVyblZhbHVlID0gaW5zZXJ0
QWRqYWNlbnQod2hlcmUsIG5ld0NoaWxkLCBlYyk7Ci0gICAgQVNTRVJUX1dJVEhfU0VDVVJJVFlf
SU1QTElDQVRJT04oIXJldHVyblZhbHVlIHx8IGlzPEVsZW1lbnQ+KCpyZXR1cm5WYWx1ZSkpOwot
ICAgIHJldHVybiBkb3duY2FzdDxFbGVtZW50PihyZXR1cm5WYWx1ZSk7IAotfQotCi0vLyBTdGVw
IDMgb2YgaHR0cDovL3d3dy53aGF0d2cub3JnL3NwZWNzL3dlYi1hcHBzL2N1cnJlbnQtd29yay9t
dWx0aXBhZ2UvYXBpcy1pbi1odG1sLWRvY3VtZW50cy5odG1sI2luc2VydGFkamFjZW50aHRtbCgp
Ci1zdGF0aWMgRWxlbWVudCogY29udGV4dEVsZW1lbnRGb3JJbnNlcnRpb24oY29uc3QgU3RyaW5n
JiB3aGVyZSwgRWxlbWVudCogZWxlbWVudCwgRXhjZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAgaWYg
KGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHdoZXJlLCAiYmVmb3JlYmVnaW4iKSB8fCBl
cXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh3aGVyZSwgImFmdGVyZW5kIikpIHsKLSAgICAg
ICAgQ29udGFpbmVyTm9kZSogcGFyZW50ID0gZWxlbWVudC0+cGFyZW50Tm9kZSgpOwotICAgICAg
ICBpZiAocGFyZW50ICYmICFpczxFbGVtZW50PigqcGFyZW50KSkgewotICAgICAgICAgICAgZWMg
PSBOT19NT0RJRklDQVRJT05fQUxMT1dFRF9FUlI7Ci0gICAgICAgICAgICByZXR1cm4gbnVsbHB0
cjsKLSAgICAgICAgfQotICAgICAgICBBU1NFUlRfV0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTigh
cGFyZW50IHx8IGlzPEVsZW1lbnQ+KCpwYXJlbnQpKTsKLSAgICAgICAgcmV0dXJuIGRvd25jYXN0
PEVsZW1lbnQ+KHBhcmVudCk7Ci0gICAgfQotICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FT
Q0lJQ2FzZSh3aGVyZSwgImFmdGVyYmVnaW4iKSB8fCBlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJ
Q2FzZSh3aGVyZSwgImJlZm9yZWVuZCIpKQotICAgICAgICByZXR1cm4gZWxlbWVudDsKLSAgICBl
YyA9ICBTWU5UQVhfRVJSOwotICAgIHJldHVybiBudWxscHRyOwotfQotCi12b2lkIEhUTUxFbGVt
ZW50OjppbnNlcnRBZGphY2VudEhUTUwoY29uc3QgU3RyaW5nJiB3aGVyZSwgY29uc3QgU3RyaW5n
JiBtYXJrdXAsIEV4Y2VwdGlvbkNvZGUmIGVjKQotewotICAgIEVsZW1lbnQqIGNvbnRleHRFbGVt
ZW50ID0gY29udGV4dEVsZW1lbnRGb3JJbnNlcnRpb24od2hlcmUsIHRoaXMsIGVjKTsKLSAgICBp
ZiAoIWNvbnRleHRFbGVtZW50KQotICAgICAgICByZXR1cm47Ci0gICAgUmVmUHRyPERvY3VtZW50
RnJhZ21lbnQ+IGZyYWdtZW50ID0gY3JlYXRlRnJhZ21lbnRGb3JJbm5lck91dGVySFRNTCgqY29u
dGV4dEVsZW1lbnQsIG1hcmt1cCwgQWxsb3dTY3JpcHRpbmdDb250ZW50LCBlYyk7Ci0gICAgaWYg
KCFmcmFnbWVudCkKLSAgICAgICAgcmV0dXJuOwotICAgIGluc2VydEFkamFjZW50KHdoZXJlLCBm
cmFnbWVudC5yZWxlYXNlTm9uTnVsbCgpLCBlYyk7Ci19Ci0KLXZvaWQgSFRNTEVsZW1lbnQ6Omlu
c2VydEFkamFjZW50VGV4dChjb25zdCBTdHJpbmcmIHdoZXJlLCBjb25zdCBTdHJpbmcmIHRleHQs
IEV4Y2VwdGlvbkNvZGUmIGVjKQotewotICAgIGluc2VydEFkamFjZW50KHdoZXJlLCBkb2N1bWVu
dCgpLmNyZWF0ZVRleHROb2RlKHRleHQpLCBlYyk7Ci19Ci0KIHZvaWQgSFRNTEVsZW1lbnQ6OmFw
cGx5QWxpZ25tZW50QXR0cmlidXRlVG9TdHlsZShjb25zdCBBdG9taWNTdHJpbmcmIGFsaWdubWVu
dCwgTXV0YWJsZVN0eWxlUHJvcGVydGllcyYgc3R5bGUpCiB7CiAgICAgLy8gVmVydGljYWwgYWxp
Z25tZW50IHdpdGggcmVzcGVjdCB0byB0aGUgY3VycmVudCBiYXNlbGluZSBvZiB0aGUgdGV4dApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oCmluZGV4IGI0YWJhODgwZDc0NDFkZTNiNDcyODZkYWY2
ODgwZGZjNjE1ZWMzZTcuLmNmZDc5MmFkNmI1ZWI5ZGJmYjExMTdhMDA5Mjg0NzM2M2M0N2QxNzcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmgKQEAgLTQ5LDEwICs0OSw2IEBAIHB1YmxpYzoK
ICAgICB2b2lkIHNldElubmVyVGV4dChjb25zdCBTdHJpbmcmLCBFeGNlcHRpb25Db2RlJik7CiAg
ICAgdm9pZCBzZXRPdXRlclRleHQoY29uc3QgU3RyaW5nJiwgRXhjZXB0aW9uQ29kZSYpOwogCi0g
ICAgRWxlbWVudCogaW5zZXJ0QWRqYWNlbnRFbGVtZW50KGNvbnN0IFN0cmluZyYgd2hlcmUsIEVs
ZW1lbnQmIG5ld0NoaWxkLCBFeGNlcHRpb25Db2RlJik7Ci0gICAgdm9pZCBpbnNlcnRBZGphY2Vu
dEhUTUwoY29uc3QgU3RyaW5nJiB3aGVyZSwgY29uc3QgU3RyaW5nJiBodG1sLCBFeGNlcHRpb25D
b2RlJik7Ci0gICAgdm9pZCBpbnNlcnRBZGphY2VudFRleHQoY29uc3QgU3RyaW5nJiB3aGVyZSwg
Y29uc3QgU3RyaW5nJiB0ZXh0LCBFeGNlcHRpb25Db2RlJik7Ci0KICAgICB2aXJ0dWFsIGJvb2wg
aGFzQ3VzdG9tRm9jdXNMb2dpYygpIGNvbnN0OwogICAgIGJvb2wgc3VwcG9ydHNGb2N1cygpIGNv
bnN0IG92ZXJyaWRlOwogCkBAIC0xMzAsNyArMTI2LDYgQEAgcHJpdmF0ZToKIAogICAgIHZpcnR1
YWwgSFRNTEZvcm1FbGVtZW50KiB2aXJ0dWFsRm9ybSgpIGNvbnN0OwogCi0gICAgTm9kZSogaW5z
ZXJ0QWRqYWNlbnQoY29uc3QgU3RyaW5nJiB3aGVyZSwgUmVmPE5vZGU+JiYgbmV3Q2hpbGQsIEV4
Y2VwdGlvbkNvZGUmKTsKICAgICBSZWY8RG9jdW1lbnRGcmFnbWVudD4gdGV4dFRvRnJhZ21lbnQo
Y29uc3QgU3RyaW5nJiwgRXhjZXB0aW9uQ29kZSYpOwogCiAgICAgdm9pZCBkaXJBdHRyaWJ1dGVD
aGFuZ2VkKGNvbnN0IEF0b21pY1N0cmluZyYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MRWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50Lmlk
bAppbmRleCA2YzY3NzY0MDFiZDNlNTkyZWRjMDNmNjJlYjYyN2FlMzlmYjU4NjJiLi5kMmJkZjNh
ODllOTUwNzU0ZTllM2Q2YmVjNTU2NzdkN2RiMjcxNzRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxFbGVtZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxF
bGVtZW50LmlkbApAQCAtNDQsMTEgKzQ0LDYgQEAKICAgICBbVHJlYXROdWxsQXM9RW1wdHlTdHJp
bmcsIFNldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBpbm5lclRleHQ7
CiAgICAgW1RyZWF0TnVsbEFzPUVtcHR5U3RyaW5nLCBTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0
dHJpYnV0ZSBET01TdHJpbmcgb3V0ZXJUZXh0OwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gRWxl
bWVudCBpbnNlcnRBZGphY2VudEVsZW1lbnQoRE9NU3RyaW5nIHdoZXJlLCBFbGVtZW50IGVsZW1l
bnQpOwotCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBpbnNlcnRBZGphY2VudEhUTUwoRE9N
U3RyaW5nIHdoZXJlLCBET01TdHJpbmcgaHRtbCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9p
ZCBpbnNlcnRBZGphY2VudFRleHQoRE9NU3RyaW5nIHdoZXJlLCBET01TdHJpbmcgdGV4dCk7Ci0K
ICAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGNvbnRlbnRF
ZGl0YWJsZTsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBpc0NvbnRlbnRFZGl0YWJs
ZTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCmluZGV4IGYwZjdkN2YwNjE4ZGJiN2EyOGZiODNiMTk3MzllOWFmN2Y0NWY3NDIuLjcw
NTU3NzE1ZjAwODg3ZDAwMGQ5OTY5OGVmZDZmNDdlMjZiNjQ2ZjYgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsNSArMSwx
OCBAQAogMjAxNi0wOC0wNCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCisgICAg
ICAgIE1vdmUgaW5zZXJ0QWRqYWNlbnQqKCkgQVBJIGZyb20gSFRNTEVsZW1lbnQgdG8gRWxlbWVu
dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYwNTY3
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKworICAgICAgICBSZWJhc2VsaW5l
IHNldmVyYWwgdGVzdHMgdG8gcmVmbGVjdCBiZWhhdmlvciBjaGFuZ2UuCisKKyAgICAgICAgKiBm
YXN0L2RvbS9IVE1MRWxlbWVudC9pbnNlcnRBZGphY2VudEhUTUwtZXJyb3JzLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvaW5zZXJ0QWRq
YWNlbnRIVE1MLWVycm9ycy5qczoKKyAgICAgICAgKiBmYXN0L2R5bmFtaWMvaW5zZXJ0QWRqYWNl
bnRFbGVtZW50LWV4cGVjdGVkLnR4dDoKKworMjAxNi0wOC0wNCAgQ2hyaXMgRHVtZXogIDxjZHVt
ZXpAYXBwbGUuY29tPgorCiAgICAgICAgIFtbUHJvdG90eXBlXV0gcHJvcGVydHkgb2YgYW4gaW50
ZXJmYWNlIG9iamVjdCBmb3IgYSBjYWxsYmFjayBpbnRlcmZhY2UgbXVzdCBiZSB0aGUgT2JqZWN0
LnByb3RvdHlwZSBvYmplY3QKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE2MDU1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCAwNDdj
ZjQzNGY0ZjUyZWQ3NTAzMTk2MWZjZDE4OTYzMWQ5NjU5YjBlLi41MGFiY2ZmYTQ5MGJkNGE5NGE4
NDE1NGRlMDQ5YWQ0YjE1MGViNzFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAg
LTEsNSArMSwxNyBAQAogMjAxNi0wOC0wNCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29t
PgogCisgICAgICAgIE1vdmUgaW5zZXJ0QWRqYWNlbnQqKCkgQVBJIGZyb20gSFRNTEVsZW1lbnQg
dG8gRWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTYwNTY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKworICAgICAgICBS
ZWJhc2VsaW5lIHNldmVyYWwgVzNDIHRlc3RzIG5vdyB0aGF0IG1vcmUgY2hlY2tzIGFyZSBwYXNz
aW5nLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9pbnRlcmZhY2VzLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZG9tcGFyc2luZy9pbnNlcnRf
YWRqYWNlbnRfaHRtbC1leHBlY3RlZC50eHQ6CisKKzIwMTYtMDgtMDQgIENocmlzIER1bWV6ICA8
Y2R1bWV6QGFwcGxlLmNvbT4KKwogICAgICAgICBbW1Byb3RvdHlwZV1dIHByb3BlcnR5IG9mIGFu
IGludGVyZmFjZSBvYmplY3QgZm9yIGEgY2FsbGJhY2sgaW50ZXJmYWNlIG11c3QgYmUgdGhlIE9i
amVjdC5wcm90b3R5cGUgb2JqZWN0CiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNjA1NTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20v
SFRNTEVsZW1lbnQvaW5zZXJ0QWRqYWNlbnRIVE1MLWVycm9ycy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9pbnNlcnRBZGphY2VudEhUTUwtZXJyb3JzLWV4
cGVjdGVkLnR4dAppbmRleCBlNjVlZDM1ZGY2ODViOTQ3YWVlNjU0ZjdkOWIzYmQ2YWIyM2RiYWNj
Li4xNzI1ZDFkMmIzYTg4NTdjZjc3N2E4N2Y1MDI3NDI1YWQ4ZGUxMDA4IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9pbnNlcnRBZGphY2VudEhUTUwtZXJyb3Jz
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9pbnNl
cnRBZGphY2VudEhUTUwtZXJyb3JzLWV4cGVjdGVkLnR4dApAQCAtMyw4ICszLDggQEAgVGVzdCBp
bnNlcnRBZGphY2VudEhUTUwgZXhjZXB0aW9ucyB0byBtYWtlIHN1cmUgdGhleSBtYXRjaCBIVE1M
NQogT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCiAKLVBBU1MgZGl2Lmluc2VydEFkamFjZW50
SFRNTCgnYmVmb3JlQmVnaW4nLCAndGV4dCcpIGlzIHVuZGVmaW5lZC4KLVBBU1MgZGl2Lmluc2Vy
dEFkamFjZW50SFRNTCgnYWZ0ZXJFbmQnLCAndGV4dCcpIGlzIHVuZGVmaW5lZC4KK1BBU1MgZGl2
Lmluc2VydEFkamFjZW50SFRNTCgnYmVmb3JlQmVnaW4nLCAndGV4dCcpIHRocmV3IGV4Y2VwdGlv
biBOb01vZGlmaWNhdGlvbkFsbG93ZWRFcnJvciAoRE9NIEV4Y2VwdGlvbiA3KTogVGhlIG9iamVj
dCBjYW4gbm90IGJlIG1vZGlmaWVkLi4KK1BBU1MgZGl2Lmluc2VydEFkamFjZW50SFRNTCgnYWZ0
ZXJFbmQnLCAndGV4dCcpIHRocmV3IGV4Y2VwdGlvbiBOb01vZGlmaWNhdGlvbkFsbG93ZWRFcnJv
ciAoRE9NIEV4Y2VwdGlvbiA3KTogVGhlIG9iamVjdCBjYW4gbm90IGJlIG1vZGlmaWVkLi4KIFBB
U1MgZGl2Lmluc2VydEFkamFjZW50SFRNTCgnRk9PJywgJ3RleHQnKSB0aHJldyBleGNlcHRpb24g
U3ludGF4RXJyb3IgKERPTSBFeGNlcHRpb24gMTIpOiBUaGUgc3RyaW5nIGRpZCBub3QgbWF0Y2gg
dGhlIGV4cGVjdGVkIHBhdHRlcm4uLgogUEFTUyBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuaW5z
ZXJ0QWRqYWNlbnRIVE1MKCdhZnRlckVuZCcsICd0ZXh0JykgdGhyZXcgZXhjZXB0aW9uIE5vTW9k
aWZpY2F0aW9uQWxsb3dlZEVycm9yIChET00gRXhjZXB0aW9uIDcpOiBUaGUgb2JqZWN0IGNhbiBu
b3QgYmUgbW9kaWZpZWQuLgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEVsZW1lbnQvc2NyaXB0LXRlc3RzL2luc2Vy
dEFkamFjZW50SFRNTC1lcnJvcnMuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVu
dC9zY3JpcHQtdGVzdHMvaW5zZXJ0QWRqYWNlbnRIVE1MLWVycm9ycy5qcwppbmRleCA1N2VlZjM3
NzdlOWE3YzE0ZGI3MWY0NmZkNGU0NTM2NTMzZjcxZjEwLi43Y2RlN2UyYTE0Mzg1ZDdmNDE5YzEx
OWI0NjJmOTAxMjE0ZGNmMTgyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1M
RWxlbWVudC9zY3JpcHQtdGVzdHMvaW5zZXJ0QWRqYWNlbnRIVE1MLWVycm9ycy5qcworKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvaW5zZXJ0QWRqYWNl
bnRIVE1MLWVycm9ycy5qcwpAQCAtMiw4ICsyLDggQEAgZGVzY3JpcHRpb24oJ1Rlc3QgaW5zZXJ0
QWRqYWNlbnRIVE1MIGV4Y2VwdGlvbnMgdG8gbWFrZSBzdXJlIHRoZXkgbWF0Y2ggSFRNTDUnKTsK
IAogdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwogCi1zaG91bGRCZVVu
ZGVmaW5lZCgiZGl2Lmluc2VydEFkamFjZW50SFRNTCgnYmVmb3JlQmVnaW4nLCAndGV4dCcpIik7
Ci1zaG91bGRCZVVuZGVmaW5lZCgiZGl2Lmluc2VydEFkamFjZW50SFRNTCgnYWZ0ZXJFbmQnLCAn
dGV4dCcpIik7CitzaG91bGRUaHJvdygiZGl2Lmluc2VydEFkamFjZW50SFRNTCgnYmVmb3JlQmVn
aW4nLCAndGV4dCcpIik7CitzaG91bGRUaHJvdygiZGl2Lmluc2VydEFkamFjZW50SFRNTCgnYWZ0
ZXJFbmQnLCAndGV4dCcpIik7CiAKIHNob3VsZFRocm93KCJkaXYuaW5zZXJ0QWRqYWNlbnRIVE1M
KCdGT08nLCAndGV4dCcpIiwgJyJTeW50YXhFcnJvciAoRE9NIEV4Y2VwdGlvbiAxMik6IFRoZSBz
dHJpbmcgZGlkIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgcGF0dGVybi4iJyk7CiBzaG91bGRUaHJv
dygiZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Lmluc2VydEFkamFjZW50SFRNTCgnYWZ0ZXJFbmQn
LCAndGV4dCcpIiwgJyJOb01vZGlmaWNhdGlvbkFsbG93ZWRFcnJvciAoRE9NIEV4Y2VwdGlvbiA3
KTogVGhlIG9iamVjdCBjYW4gbm90IGJlIG1vZGlmaWVkLiInKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvZHluYW1pYy9pbnNlcnRBZGphY2VudEVsZW1lbnQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9keW5hbWljL2luc2VydEFkamFjZW50RWxlbWVudC1leHBlY3RlZC50
eHQKaW5kZXggNzViMTc5OTdmODQ4MGE2NTM4M2Y0MzBjN2M1MjZkNjdiZmVhYWE4ZS4uZmViZGRi
OGNjMGE2OTRhY2E0N2JjZWM0ZGM2YzdmZjExNzNlMTQ5ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvZmFzdC9keW5hbWljL2luc2VydEFkamFjZW50RWxlbWVudC1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9keW5hbWljL2luc2VydEFkamFjZW50RWxlbWVudC1leHBlY3RlZC50
eHQKQEAgLTEsNSArMSw1IEBACiBDYXVnaHQgZXhwZWN0ZWQgZXhjZXB0aW9uOiBTeW50YXhFcnJv
ciAoRE9NIEV4Y2VwdGlvbiAxMik6IFRoZSBzdHJpbmcgZGlkIG5vdCBtYXRjaCB0aGUgZXhwZWN0
ZWQgcGF0dGVybi4KLUNhdWdodCBleHBlY3RlZCBleGNlcHRpb246IFR5cGVFcnJvcjogQXJndW1l
bnQgMiAoJ2VsZW1lbnQnKSB0byBIVE1MRWxlbWVudC5pbnNlcnRBZGphY2VudEVsZW1lbnQgbXVz
dCBiZSBhbiBpbnN0YW5jZSBvZiBFbGVtZW50CitDYXVnaHQgZXhwZWN0ZWQgZXhjZXB0aW9uOiBU
eXBlRXJyb3I6IEFyZ3VtZW50IDIgKCdlbGVtZW50JykgdG8gRWxlbWVudC5pbnNlcnRBZGphY2Vu
dEVsZW1lbnQgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBFbGVtZW50CiAxIChibGFjaykgMiAoZ3Jl
ZW4pIDMgKGdyZWVuKSA0IChibGFjaykgCiAKIFBBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3MtZnJhbWUtYWNjZXNzLXB1dC1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLWZyYW1lLWFjY2Vzcy1wdXQt
ZXhwZWN0ZWQudHh0CmluZGV4IDQ4NzY1MGFlNTZlYjk5ODFhMGUzYjM3NzVlOTU1NGVjZDc1MDhm
ZDYuLjQwYmJlNDdhMDFhZTc5MGNkYTJkZmFkN2VkZDU0YTc3MGUxY2FhZTEgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3MtZnJhbWUtYWNjZXNzLXB1dC1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1m
cmFtZS1hY2Nlc3MtcHV0LWV4cGVjdGVkLnR4dApAQCAtNzIsNyArNzIsNyBAQCBBTEVSVDogUEFT
Uzogd2luZG93LkhUTUxUaXRsZUVsZW1lbnQgc2hvdWxkIGJlICdmdW5jdGlvbiBIVE1MVGl0bGVF
bGVtZW50KCkgewogQUxFUlQ6IFBBU1M6IHdpbmRvdy5IVE1MVUxpc3RFbGVtZW50IHNob3VsZCBi
ZSAnZnVuY3Rpb24gSFRNTFVMaXN0RWxlbWVudCgpIHsgICAgW25hdGl2ZSBjb2RlXX0nIGFuZCBp
cy4KIEFMRVJUOiBQQVNTOiB3aW5kb3cuTXV0YXRpb25FdmVudCBzaG91bGQgYmUgJ2Z1bmN0aW9u
IE11dGF0aW9uRXZlbnQoKSB7ICAgIFtuYXRpdmUgY29kZV19JyBhbmQgaXMuCiBBTEVSVDogUEFT
Uzogd2luZG93Lk5vZGUgc2hvdWxkIGJlICdmdW5jdGlvbiBOb2RlKCkgeyAgICBbbmF0aXZlIGNv
ZGVdfScgYW5kIGlzLgotQUxFUlQ6IFBBU1M6IHdpbmRvdy5Ob2RlRmlsdGVyIHNob3VsZCBiZSAn
ZnVuY3Rpb24gTm9kZUZpbHRlcigpIHsgICAgW25hdGl2ZSBjb2RlXX0nIGFuZCBpcy4KK0FMRVJU
OiBQQVNTOiB3aW5kb3cuTm9kZUZpbHRlciBzaG91bGQgYmUgJ1tvYmplY3QgRnVuY3Rpb25dJyBh
bmQgaXMuCiBBTEVSVDogUEFTUzogd2luZG93LlByb2Nlc3NpbmdJbnN0cnVjdGlvbiBzaG91bGQg
YmUgJ2Z1bmN0aW9uIFByb2Nlc3NpbmdJbnN0cnVjdGlvbigpIHsgICAgW25hdGl2ZSBjb2RlXX0n
IGFuZCBpcy4KIEFMRVJUOiBQQVNTOiB3aW5kb3cuUmFuZ2Ugc2hvdWxkIGJlICdmdW5jdGlvbiBS
YW5nZSgpIHsgICAgW25hdGl2ZSBjb2RlXX0nIGFuZCBpcy4KIEFMRVJUOiBQQVNTOiB3aW5kb3cu
UmFuZ2VFcnJvciBzaG91bGQgYmUgJ2Z1bmN0aW9uIFJhbmdlRXJyb3IoKSB7ICAgIFtuYXRpdmUg
Y29kZV19JyBhbmQgaXMuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2RvbS9pbnRlcmZhY2VzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2ludGVyZmFjZXMtZXhwZWN0ZWQu
dHh0CmluZGV4IDA4MDBlMjAxM2UwNzE0NjExZmQ0ZWMwZTIwOWI0ZTdiN2Q5ZDc2NTQuLjEwMDRh
OTVlNWViMDRhOGE1MzJkYjRkZjE2ODQwNzdkMWVkODVmNzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2ludGVyZmFjZXMtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tL2ludGVyZmFjZXMtZXhwZWN0ZWQudHh0CkBAIC03NjQsOCArNzY0LDggQEAgUEFTUyBFbGVt
ZW50IGludGVyZmFjZTogb3BlcmF0aW9uIHdlYmtpdE1hdGNoZXNTZWxlY3RvcihET01TdHJpbmcp
CiBQQVNTIEVsZW1lbnQgaW50ZXJmYWNlOiBvcGVyYXRpb24gZ2V0RWxlbWVudHNCeVRhZ05hbWUo
RE9NU3RyaW5nKSAKIFBBU1MgRWxlbWVudCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBnZXRFbGVtZW50
c0J5VGFnTmFtZU5TKERPTVN0cmluZyxET01TdHJpbmcpIAogUEFTUyBFbGVtZW50IGludGVyZmFj
ZTogb3BlcmF0aW9uIGdldEVsZW1lbnRzQnlDbGFzc05hbWUoRE9NU3RyaW5nKSAKLUZBSUwgRWxl
bWVudCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBpbnNlcnRBZGphY2VudEVsZW1lbnQoRE9NU3RyaW5n
LEVsZW1lbnQpIGFzc2VydF9vd25fcHJvcGVydHk6IGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0
IG1pc3Npbmcgbm9uLXN0YXRpYyBvcGVyYXRpb24gZXhwZWN0ZWQgcHJvcGVydHkgImluc2VydEFk
amFjZW50RWxlbWVudCIgbWlzc2luZwotRkFJTCBFbGVtZW50IGludGVyZmFjZTogb3BlcmF0aW9u
IGluc2VydEFkamFjZW50VGV4dChET01TdHJpbmcsRE9NU3RyaW5nKSBhc3NlcnRfb3duX3Byb3Bl
cnR5OiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCBtaXNzaW5nIG5vbi1zdGF0aWMgb3BlcmF0
aW9uIGV4cGVjdGVkIHByb3BlcnR5ICJpbnNlcnRBZGphY2VudFRleHQiIG1pc3NpbmcKK1BBU1Mg
RWxlbWVudCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBpbnNlcnRBZGphY2VudEVsZW1lbnQoRE9NU3Ry
aW5nLEVsZW1lbnQpIAorUEFTUyBFbGVtZW50IGludGVyZmFjZTogb3BlcmF0aW9uIGluc2VydEFk
amFjZW50VGV4dChET01TdHJpbmcsRE9NU3RyaW5nKSAKIFBBU1MgRWxlbWVudCBpbnRlcmZhY2U6
IGF0dHJpYnV0ZSBjaGlsZHJlbiAKIFBBU1MgRWxlbWVudCBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBm
aXJzdEVsZW1lbnRDaGlsZCAKIFBBU1MgRWxlbWVudCBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBsYXN0
RWxlbWVudENoaWxkIApAQCAtODM1LDEwICs4MzUsMTAgQEAgUEFTUyBFbGVtZW50IGludGVyZmFj
ZTogZWxlbWVudCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImdldEVsZW1lbnRzQnlUYWdOYW1lTlMi
IHcKIFBBU1MgRWxlbWVudCBpbnRlcmZhY2U6IGNhbGxpbmcgZ2V0RWxlbWVudHNCeVRhZ05hbWVO
UyhET01TdHJpbmcsRE9NU3RyaW5nKSBvbiBlbGVtZW50IHdpdGggdG9vIGZldyBhcmd1bWVudHMg
bXVzdCB0aHJvdyBUeXBlRXJyb3IgCiBQQVNTIEVsZW1lbnQgaW50ZXJmYWNlOiBlbGVtZW50IG11
c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSIgd2l0aCB0aGUgcHJv
cGVyIHR5cGUgKDMxKSAKIFBBU1MgRWxlbWVudCBpbnRlcmZhY2U6IGNhbGxpbmcgZ2V0RWxlbWVu
dHNCeUNsYXNzTmFtZShET01TdHJpbmcpIG9uIGVsZW1lbnQgd2l0aCB0b28gZmV3IGFyZ3VtZW50
cyBtdXN0IHRocm93IFR5cGVFcnJvciAKLUZBSUwgRWxlbWVudCBpbnRlcmZhY2U6IGVsZW1lbnQg
bXVzdCBpbmhlcml0IHByb3BlcnR5ICJpbnNlcnRBZGphY2VudEVsZW1lbnQiIHdpdGggdGhlIHBy
b3BlciB0eXBlICgzMikgYXNzZXJ0X2luaGVyaXRzOiBwcm9wZXJ0eSAiaW5zZXJ0QWRqYWNlbnRF
bGVtZW50IiBub3QgZm91bmQgaW4gcHJvdG90eXBlIGNoYWluCi1GQUlMIEVsZW1lbnQgaW50ZXJm
YWNlOiBjYWxsaW5nIGluc2VydEFkamFjZW50RWxlbWVudChET01TdHJpbmcsRWxlbWVudCkgb24g
ZWxlbWVudCB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2Vy
dF9pbmhlcml0czogcHJvcGVydHkgImluc2VydEFkamFjZW50RWxlbWVudCIgbm90IGZvdW5kIGlu
IHByb3RvdHlwZSBjaGFpbgotRkFJTCBFbGVtZW50IGludGVyZmFjZTogZWxlbWVudCBtdXN0IGlu
aGVyaXQgcHJvcGVydHkgImluc2VydEFkamFjZW50VGV4dCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUg
KDMzKSBhc3NlcnRfaW5oZXJpdHM6IHByb3BlcnR5ICJpbnNlcnRBZGphY2VudFRleHQiIG5vdCBm
b3VuZCBpbiBwcm90b3R5cGUgY2hhaW4KLUZBSUwgRWxlbWVudCBpbnRlcmZhY2U6IGNhbGxpbmcg
aW5zZXJ0QWRqYWNlbnRUZXh0KERPTVN0cmluZyxET01TdHJpbmcpIG9uIGVsZW1lbnQgd2l0aCB0
b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfaW5oZXJpdHM6IHBy
b3BlcnR5ICJpbnNlcnRBZGphY2VudFRleHQiIG5vdCBmb3VuZCBpbiBwcm90b3R5cGUgY2hhaW4K
K1BBU1MgRWxlbWVudCBpbnRlcmZhY2U6IGVsZW1lbnQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJp
bnNlcnRBZGphY2VudEVsZW1lbnQiIHdpdGggdGhlIHByb3BlciB0eXBlICgzMikgCitQQVNTIEVs
ZW1lbnQgaW50ZXJmYWNlOiBjYWxsaW5nIGluc2VydEFkamFjZW50RWxlbWVudChET01TdHJpbmcs
RWxlbWVudCkgb24gZWxlbWVudCB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlw
ZUVycm9yIAorUEFTUyBFbGVtZW50IGludGVyZmFjZTogZWxlbWVudCBtdXN0IGluaGVyaXQgcHJv
cGVydHkgImluc2VydEFkamFjZW50VGV4dCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgKDMzKSAKK1BB
U1MgRWxlbWVudCBpbnRlcmZhY2U6IGNhbGxpbmcgaW5zZXJ0QWRqYWNlbnRUZXh0KERPTVN0cmlu
ZyxET01TdHJpbmcpIG9uIGVsZW1lbnQgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93
IFR5cGVFcnJvciAKIFBBU1MgRWxlbWVudCBpbnRlcmZhY2U6IGVsZW1lbnQgbXVzdCBpbmhlcml0
IHByb3BlcnR5ICJjaGlsZHJlbiIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgKDM0KSAKIFBBU1MgRWxl
bWVudCBpbnRlcmZhY2U6IGVsZW1lbnQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJmaXJzdEVsZW1l
bnRDaGlsZCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgKDM1KSAKIFBBU1MgRWxlbWVudCBpbnRlcmZh
Y2U6IGVsZW1lbnQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJsYXN0RWxlbWVudENoaWxkIiB3aXRo
IHRoZSBwcm9wZXIgdHlwZSAoMzYpIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb21wYXJzaW5nL2luc2VydF9hZGphY2VudF9odG1sLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tcGFyc2luZy9pbnNlcnRfYWRqYWNlbnRfaHRtbC1leHBlY3RlZC50eHQKaW5kZXggMmEyMDRj
NzI2ZjNhOTFkMDEwZjM2OTU1ZDFjYTNmZmZmZTQ2Y2RmNy4uODQ3ZDc0N2I4MWI1NTNjOWU2NDVj
YmU0NzdhZmNmMWQ2YWVmMmVjOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9kb21wYXJzaW5nL2luc2VydF9hZGphY2VudF9odG1sLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2RvbXBhcnNpbmcvaW5zZXJ0X2FkamFjZW50X2h0bWwtZXhwZWN0ZWQudHh0CkBAIC04LDkgKzgs
OSBAQCBQQVNTIEFmdGVyYmVnaW4gY29udGVudCBhZ2Fpbiwgd2l0aCBuZXh0IHNpYmxpbmcKIFBB
U1MgQmVmb3JlRW5kIGNvbnRlbnQgYWdhaW4sIHdpdGggbmV4dCBzaWJsaW5nIAogUEFTUyBhZnRl
cmVuZCBjb250ZW50IGFnYWluLCB3aXRoIG5leHQgc2libGluZyAKIFBBU1MgU2hvdWxkIHRocm93
IHdoZW4gaW5zZXJ0aW5nIHdpdGggaW52YWxpZCBwb3NpdGlvbiBzdHJpbmcgCi1GQUlMIFdoZW4g
dGhlIHBhcmVudCBub2RlIGlzIG51bGwsIGluc2VydEFkamFjZW50SFRNTCBzaG91bGQgdGhyb3cg
Zm9yIGJlZm9yZWJlZ2luIGFuZCBhZnRlcmVuZCAodGV4dCkgYXNzZXJ0X3Rocm93czogZnVuY3Rp
b24gImZ1bmN0aW9uICgpIHsgZWxlbWVudC5pbnNlcnRBZGphY2VudEhUTUwoImFmdGVyZW5kIiwg
IiIpIH0iIGRpZCBub3QgdGhyb3cKLUZBSUwgV2hlbiB0aGUgcGFyZW50IG5vZGUgaXMgbnVsbCwg
aW5zZXJ0QWRqYWNlbnRIVE1MIHNob3VsZCB0aHJvdyBmb3IgYmVmb3JlYmVnaW4gYW5kIGFmdGVy
ZW5kIChjb21tZW50cykgYXNzZXJ0X3Rocm93czogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsgZWxl
bWVudC5pbnNlcnRBZGphY2VudEhUTUwoImFmdGVyZW5kIiwgIjwhLS4uLiIgZGlkIG5vdCB0aHJv
dwotRkFJTCBXaGVuIHRoZSBwYXJlbnQgbm9kZSBpcyBudWxsLCBpbnNlcnRBZGphY2VudEhUTUwg
c2hvdWxkIHRocm93IGZvciBiZWZvcmViZWdpbiBhbmQgYWZ0ZXJlbmQgKGVsZW1lbnRzKSBhc3Nl
cnRfdGhyb3dzOiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgeyBlbGVtZW50Lmluc2VydEFkamFjZW50
SFRNTCgiYWZ0ZXJlbmQiLCAiPGRpLi4uIiBkaWQgbm90IHRocm93CitQQVNTIFdoZW4gdGhlIHBh
cmVudCBub2RlIGlzIG51bGwsIGluc2VydEFkamFjZW50SFRNTCBzaG91bGQgdGhyb3cgZm9yIGJl
Zm9yZWJlZ2luIGFuZCBhZnRlcmVuZCAodGV4dCkgCitQQVNTIFdoZW4gdGhlIHBhcmVudCBub2Rl
IGlzIG51bGwsIGluc2VydEFkamFjZW50SFRNTCBzaG91bGQgdGhyb3cgZm9yIGJlZm9yZWJlZ2lu
IGFuZCBhZnRlcmVuZCAoY29tbWVudHMpIAorUEFTUyBXaGVuIHRoZSBwYXJlbnQgbm9kZSBpcyBu
dWxsLCBpbnNlcnRBZGphY2VudEhUTUwgc2hvdWxkIHRocm93IGZvciBiZWZvcmViZWdpbiBhbmQg
YWZ0ZXJlbmQgKGVsZW1lbnRzKSAKIFBBU1MgV2hlbiB0aGUgcGFyZW50IG5vZGUgaXMgYSBkb2N1
bWVudCwgaW5zZXJ0QWRqYWNlbnRIVE1MIHNob3VsZCB0aHJvdyBmb3IgYmVmb3JlYmVnaW4gYW5k
IGFmdGVyZW5kICh0ZXh0KSAKIFBBU1MgV2hlbiB0aGUgcGFyZW50IG5vZGUgaXMgYSBkb2N1bWVu
dCwgaW5zZXJ0QWRqYWNlbnRIVE1MIHNob3VsZCB0aHJvdyBmb3IgYmVmb3JlYmVnaW4gYW5kIGFm
dGVyZW5kIChjb21tZW50cykgCiBQQVNTIFdoZW4gdGhlIHBhcmVudCBub2RlIGlzIGEgZG9jdW1l
bnQsIGluc2VydEFkamFjZW50SFRNTCBzaG91bGQgdGhyb3cgZm9yIGJlZm9yZWJlZ2luIGFuZCBh
ZnRlcmVuZCAoZWxlbWVudHMpIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>285372</attachid>
            <date>2016-08-04 15:25:11 -0700</date>
            <delta_ts>2016-08-04 15:45:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-160567-20160804152346.patch</filename>
            <type>text/plain</type>
            <size>23359</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA0MTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjIyZjQ3ZWFkMDU2MzEz
ZjI3YzY4YmMyNjYzMDc2MmJhOTAxMDNiMS4uMWVlZjMyYjRhZDllZDFhOGU2YjU4MzgzMTk3Nzg1
ZDRjMjFjZjNhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDE2LTA4LTA0ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgTW92ZSBpbnNlcnRBZGphY2Vu
dCooKSBBUEkgZnJvbSBIVE1MRWxlbWVudCB0byBFbGVtZW50CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjA1NjcKKworICAgICAgICBSZXZpZXdlZCBi
eSBTYW0gV2VpbmlnLgorCisgICAgICAgIE1vdmUgaW5zZXJ0QWRqYWNlbnQqKCkgQVBJIGZyb20g
SFRNTEVsZW1lbnQgdG8gRWxlbWVudDoKKyAgICAgICAgLSBodHRwczovL3czYy5naXRodWIuaW8v
RE9NLVBhcnNpbmcvI2V4dGVuc2lvbnMtdG8tdGhlLWVsZW1lbnQtaW50ZXJmYWNlCisgICAgICAg
IC0gaHR0cHM6Ly9kb20uc3BlYy53aGF0d2cub3JnLyNlbGVtZW50CisKKyAgICAgICAgRmlyZWZv
eCBhbmQgQ2hyb21lIGJvdGggaGF2ZSBpbnNlcnRBZGphY2VudEhUTUwoKSBvbiBFbGVtZW50Lgor
ICAgICAgICBDaHJvbWUgaGFzIGluc2VydEFkamFjZW50VGV4dCgpIC8gaW5zZXJ0QWRqYWNlbnRF
bGVtZW50KCkgb24gRWxlbWVudCBhcworICAgICAgICB3ZWxsLiBGaXJlZm94IGRvZXMgbm90IGhh
dmUgdGhpcyBBUEkgYXQgYWxsLgorCisgICAgICAgIEFsc28gYWxpZ24gaW5zZXJ0QWRqYWNlbnRI
VE1MKCkgd2l0aCB0aGUgc3BlY2lmaWNhdGlvbiBzbyB0aGF0IHdlCisgICAgICAgIG5vdyB0aHJv
dyBhIE5PX01PRElGSUNBVElPTl9BTExPV0VEX0VSUiBpZiBjYWxsZWQgd2l0aCAiYmVmb3JlYmVn
aW4iIC8KKyAgICAgICAgImFmdGVyZW5kIiBvbiBhIHBhcmVudC1sZXNzIGVsZW1lbnQuIFRoaXMg
aXMgYXMgcGVyOgorICAgICAgICAtIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9ET00tUGFyc2luZy8j
ZG9tLWVsZW1lbnQtaW5zZXJ0YWRqYWNlbnRodG1sCisKKyAgICAgICAgUHJldmlvdXNseSwgV2Vi
S2l0IHdvdWxkIGp1c3Qgc2lsZW50bHkgaWdub3JlIHN1Y2ggY2FsbHMuIFRoZSBuZXcKKyAgICAg
ICAgYmVoYXZpb3Igd2l0aCBjb25zaXN0ZW50IHdpdGggYm90aCBGaXJlZm94IGFuZCBDaHJvbWUu
CisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCByZWJhc2VsaW5lZCBleGlzdGluZyB0ZXN0cy4KKwor
ICAgICAgICAqIGRvbS9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6Omlu
c2VydEFkamFjZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6Omluc2VydEFkamFjZW50
RWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpjb250ZXh0RWxlbWVudEZvckluc2VydGlvbik6
CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjppbnNlcnRBZGphY2VudEhUTUwpOgorICAgICAg
ICAoV2ViQ29yZTo6RWxlbWVudDo6aW5zZXJ0QWRqYWNlbnRUZXh0KToKKyAgICAgICAgKiBkb20v
RWxlbWVudC5oOgorICAgICAgICAqIGRvbS9FbGVtZW50LmlkbDoKKyAgICAgICAgKiBodG1sL0hU
TUxFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50OjppbnNlcnRBZGph
Y2VudCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpIVE1MRWxlbWVudDo6aW5zZXJ0QWRq
YWNlbnRFbGVtZW50KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmNvbnRleHRFbGVtZW50
Rm9ySW5zZXJ0aW9uKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50Ojpp
bnNlcnRBZGphY2VudEhUTUwpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SFRNTEVsZW1l
bnQ6Omluc2VydEFkamFjZW50VGV4dCk6IERlbGV0ZWQuCisgICAgICAgICogaHRtbC9IVE1MRWxl
bWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTEVsZW1lbnQuaWRsOgorCiAyMDE2LTA4LTA0ICBB
bmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKICAgICAgICAgVHJ5IHRvIGZp
eCB0aGUgR1RLKyBidWlsZC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAppbmRleCBmN2ViNWZiZWU0Mjg4
NWQyZDdiMTFjNWMwMjA1ZjRlNzBmNzlkNWNlLi5iZDE4YTNmNjkyZGYxY2FjM2FlMDFjODVlYzE0
ZDJmN2M1MWM3MzY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCkBAIC0zNDgxLDQgKzM0ODEsNzQg
QEAgU3RyaW5nIEVsZW1lbnQ6OmNvbXBsZXRlVVJMc0luQXR0cmlidXRlVmFsdWUoY29uc3QgVVJM
JiBiYXNlLCBjb25zdCBBdHRyaWJ1dGUmIGEKICAgICByZXR1cm4gVVJMKGJhc2UsIGF0dHJpYnV0
ZS52YWx1ZSgpKS5zdHJpbmcoKTsKIH0KIAorCitOb2RlKiBFbGVtZW50OjppbnNlcnRBZGphY2Vu
dChjb25zdCBTdHJpbmcmIHdoZXJlLCBSZWY8Tm9kZT4mJiBuZXdDaGlsZCwgRXhjZXB0aW9uQ29k
ZSYgZWMpCit7CisgICAgLy8gSW4gSW50ZXJuZXQgRXhwbG9yZXIgaWYgdGhlIGVsZW1lbnQgaGFz
IG5vIHBhcmVudCBhbmQgd2hlcmUgaXMgImJlZm9yZUJlZ2luIiBvciAiYWZ0ZXJFbmQiLAorICAg
IC8vIGEgZG9jdW1lbnQgZnJhZ21lbnQgaXMgY3JlYXRlZCBhbmQgdGhlIGVsZW1lbnRzIGFwcGVu
ZGVkIGluIHRoZSBjb3JyZWN0IG9yZGVyLiBUaGlzIGRvY3VtZW50CisgICAgLy8gZnJhZ21lbnQg
aXNuJ3QgcmV0dXJuZWQgYW55d2hlcmUuCisgICAgLy8KKyAgICAvLyBUaGlzIGlzIGltcG9zc2li
bGUgZm9yIHVzIHRvIGltcGxlbWVudCBhcyB0aGUgRE9NIHRyZWUgZG9lcyBub3QgYWxsb3cgZm9y
IHN1Y2ggc3RydWN0dXJlcywKKyAgICAvLyBPcGVyYSBhbHNvIGFwcGVhcnMgdG8gZGlzYWxsb3cg
c3VjaCB1c2FnZS4KKworICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh3aGVy
ZSwgImJlZm9yZWJlZ2luIikpIHsKKyAgICAgICAgQ29udGFpbmVyTm9kZSogcGFyZW50ID0gdGhp
cy0+cGFyZW50Tm9kZSgpOworICAgICAgICByZXR1cm4gKHBhcmVudCAmJiBwYXJlbnQtPmluc2Vy
dEJlZm9yZShuZXdDaGlsZCwgdGhpcywgZWMpKSA/IG5ld0NoaWxkLnB0cigpIDogbnVsbHB0cjsK
KyAgICB9CisKKyAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uod2hlcmUsICJh
ZnRlcmJlZ2luIikpCisgICAgICAgIHJldHVybiBpbnNlcnRCZWZvcmUobmV3Q2hpbGQsIGZpcnN0
Q2hpbGQoKSwgZWMpID8gbmV3Q2hpbGQucHRyKCkgOiBudWxscHRyOworCisgICAgaWYgKGVxdWFs
TGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHdoZXJlLCAiYmVmb3JlZW5kIikpCisgICAgICAgIHJl
dHVybiBhcHBlbmRDaGlsZChuZXdDaGlsZCwgZWMpID8gbmV3Q2hpbGQucHRyKCkgOiBudWxscHRy
OworCisgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHdoZXJlLCAiYWZ0ZXJl
bmQiKSkgeworICAgICAgICBDb250YWluZXJOb2RlKiBwYXJlbnQgPSB0aGlzLT5wYXJlbnROb2Rl
KCk7CisgICAgICAgIHJldHVybiAocGFyZW50ICYmIHBhcmVudC0+aW5zZXJ0QmVmb3JlKG5ld0No
aWxkLCBuZXh0U2libGluZygpLCBlYykpID8gbmV3Q2hpbGQucHRyKCkgOiBudWxscHRyOworICAg
IH0KKworICAgIGVjID0gU1lOVEFYX0VSUjsKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKworRWxl
bWVudCogRWxlbWVudDo6aW5zZXJ0QWRqYWNlbnRFbGVtZW50KGNvbnN0IFN0cmluZyYgd2hlcmUs
IEVsZW1lbnQmIG5ld0NoaWxkLCBFeGNlcHRpb25Db2RlJiBlYykKK3sKKyAgICBOb2RlKiByZXR1
cm5WYWx1ZSA9IGluc2VydEFkamFjZW50KHdoZXJlLCBuZXdDaGlsZCwgZWMpOworICAgIEFTU0VS
VF9XSVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKCFyZXR1cm5WYWx1ZSB8fCBpczxFbGVtZW50Pigq
cmV0dXJuVmFsdWUpKTsKKyAgICByZXR1cm4gZG93bmNhc3Q8RWxlbWVudD4ocmV0dXJuVmFsdWUp
OworfQorCisvLyBTdGVwIDEgb2YgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL0RPTS1QYXJzaW5nLyNk
b20tZWxlbWVudC1pbnNlcnRhZGphY2VudGh0bWwuCitzdGF0aWMgRWxlbWVudCogY29udGV4dEVs
ZW1lbnRGb3JJbnNlcnRpb24oY29uc3QgU3RyaW5nJiB3aGVyZSwgRWxlbWVudCogZWxlbWVudCwg
RXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlD
YXNlKHdoZXJlLCAiYmVmb3JlYmVnaW4iKSB8fCBlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2Fz
ZSh3aGVyZSwgImFmdGVyZW5kIikpIHsKKyAgICAgICAgYXV0byogcGFyZW50ID0gZWxlbWVudC0+
cGFyZW50RWxlbWVudCgpOworICAgICAgICBpZiAoIXBhcmVudCkgeworICAgICAgICAgICAgZWMg
PSBOT19NT0RJRklDQVRJT05fQUxMT1dFRF9FUlI7CisgICAgICAgICAgICByZXR1cm4gbnVsbHB0
cjsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gcGFyZW50OworICAgIH0KKyAgICBpZiAoZXF1
YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uod2hlcmUsICJhZnRlcmJlZ2luIikgfHwgZXF1YWxM
ZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uod2hlcmUsICJiZWZvcmVlbmQiKSkKKyAgICAgICAgcmV0
dXJuIGVsZW1lbnQ7CisgICAgZWMgPSAgU1lOVEFYX0VSUjsKKyAgICByZXR1cm4gbnVsbHB0cjsK
K30KKwordm9pZCBFbGVtZW50OjppbnNlcnRBZGphY2VudEhUTUwoY29uc3QgU3RyaW5nJiB3aGVy
ZSwgY29uc3QgU3RyaW5nJiBtYXJrdXAsIEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIEVsZW1l
bnQqIGNvbnRleHRFbGVtZW50ID0gY29udGV4dEVsZW1lbnRGb3JJbnNlcnRpb24od2hlcmUsIHRo
aXMsIGVjKTsKKyAgICBpZiAoIWNvbnRleHRFbGVtZW50KQorICAgICAgICByZXR1cm47CisgICAg
UmVmUHRyPERvY3VtZW50RnJhZ21lbnQ+IGZyYWdtZW50ID0gY3JlYXRlRnJhZ21lbnRGb3JJbm5l
ck91dGVySFRNTCgqY29udGV4dEVsZW1lbnQsIG1hcmt1cCwgQWxsb3dTY3JpcHRpbmdDb250ZW50
LCBlYyk7CisgICAgaWYgKCFmcmFnbWVudCkKKyAgICAgICAgcmV0dXJuOworICAgIGluc2VydEFk
amFjZW50KHdoZXJlLCBmcmFnbWVudC5yZWxlYXNlTm9uTnVsbCgpLCBlYyk7Cit9CisKK3ZvaWQg
RWxlbWVudDo6aW5zZXJ0QWRqYWNlbnRUZXh0KGNvbnN0IFN0cmluZyYgd2hlcmUsIGNvbnN0IFN0
cmluZyYgdGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgaW5zZXJ0QWRqYWNlbnQod2hl
cmUsIGRvY3VtZW50KCkuY3JlYXRlVGV4dE5vZGUodGV4dCksIGVjKTsKK30KKwogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKaW5kZXggZGY1OWNiNTU5ZGJhNGNiYmYzNGE5
MGExMDRhNjMzYmQyODdlYTA5OC4uMmQ4Mjg2NGVmNTM2MGRjNWZmODE1MTFlYjEwZTZiNjdiMzE5
OTczOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCkBAIC0yOTUsNiArMjk1LDEwIEBAIHB1YmxpYzoKICAg
ICB2b2lkIHNldFRhYkluZGV4KGludCk7CiAgICAgdmlydHVhbCBFbGVtZW50KiBmb2N1c0RlbGVn
YXRlKCk7CiAKKyAgICBFbGVtZW50KiBpbnNlcnRBZGphY2VudEVsZW1lbnQoY29uc3QgU3RyaW5n
JiB3aGVyZSwgRWxlbWVudCYgbmV3Q2hpbGQsIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lkIGlu
c2VydEFkamFjZW50SFRNTChjb25zdCBTdHJpbmcmIHdoZXJlLCBjb25zdCBTdHJpbmcmIGh0bWws
IEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lkIGluc2VydEFkamFjZW50VGV4dChjb25zdCBTdHJp
bmcmIHdoZXJlLCBjb25zdCBTdHJpbmcmIHRleHQsIEV4Y2VwdGlvbkNvZGUmKTsKKwogICAgIGNv
bnN0IFJlbmRlclN0eWxlKiBjb21wdXRlZFN0eWxlKFBzZXVkb0lkID0gTk9QU0VVRE8pIG92ZXJy
aWRlOwogCiAgICAgYm9vbCBuZWVkc1N0eWxlSW52YWxpZGF0aW9uKCkgY29uc3Q7CkBAIC01OTAs
NiArNTk0LDggQEAgcHJpdmF0ZToKICAgICB2b2lkIHVwZGF0ZUlkRm9yRG9jdW1lbnQoSFRNTERv
Y3VtZW50JiwgY29uc3QgQXRvbWljU3RyaW5nJiBvbGRJZCwgY29uc3QgQXRvbWljU3RyaW5nJiBu
ZXdJZCwgSFRNTERvY3VtZW50TmFtZWRJdGVtTWFwc1VwZGF0aW5nQ29uZGl0aW9uKTsKICAgICB2
b2lkIHVwZGF0ZUxhYmVsKFRyZWVTY29wZSYsIGNvbnN0IEF0b21pY1N0cmluZyYgb2xkRm9yQXR0
cmlidXRlVmFsdWUsIGNvbnN0IEF0b21pY1N0cmluZyYgbmV3Rm9yQXR0cmlidXRlVmFsdWUpOwog
CisgICAgTm9kZSogaW5zZXJ0QWRqYWNlbnQoY29uc3QgU3RyaW5nJiB3aGVyZSwgUmVmPE5vZGU+
JiYgbmV3Q2hpbGQsIEV4Y2VwdGlvbkNvZGUmKTsKKwogICAgIHZvaWQgc2Nyb2xsQnlVbml0cyhp
bnQgdW5pdHMsIFNjcm9sbEdyYW51bGFyaXR5KTsKIAogICAgIHZvaWQgc2V0UHJlZml4KGNvbnN0
IEF0b21pY1N0cmluZyYsIEV4Y2VwdGlvbkNvZGUmKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50Lmlk
bAppbmRleCA5YmNhMzk2YjU1MTM5MWJhZTY3NjJkN2ViZjQxZWUwNzk2Y2Y1MjdhLi4wNTQ1MTQz
MWExNDJlNGYwOTEwMzE0NmFiZTZlYzU5YzEzYjQ1YTQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vRWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaWRs
CkBAIC0xNDMsNiArMTQzLDEwIEBACiAgICAgW1JlZmxlY3RdIGF0dHJpYnV0ZSBET01TdHJpbmcg
dWlhY3Rpb25zOwogI2VuZGlmCiAKKyAgICBbUmFpc2VzRXhjZXB0aW9uXSBFbGVtZW50IGluc2Vy
dEFkamFjZW50RWxlbWVudChET01TdHJpbmcgd2hlcmUsIEVsZW1lbnQgZWxlbWVudCk7CisgICAg
W1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBpbnNlcnRBZGphY2VudEhUTUwoRE9NU3RyaW5nIHdoZXJl
LCBET01TdHJpbmcgaHRtbCk7CisgICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBpbnNlcnRBZGph
Y2VudFRleHQoRE9NU3RyaW5nIHdoZXJlLCBET01TdHJpbmcgdGV4dCk7CisKICAgICBbQ29uZGl0
aW9uYWw9UE9JTlRFUl9MT0NLXSB2b2lkIHJlcXVlc3RQb2ludGVyTG9jaygpOwogCiAgICAgLy8g
Q1NTIFJlZ2lvbnMgQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVt
ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCmluZGV4IDJhOWRl
M2E5M2YzOTFjNDAwODI4ZmQ1NjM0MmM0MGJmYjVkYTNhOTguLmRjMjNhMDUzZjcxMjIwYmQ5ZTli
NmEyNTkzNDVkMTk5OWZkNTA0NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCkBA
IC02MzAsNzYgKzYzMCw2IEBAIHZvaWQgSFRNTEVsZW1lbnQ6OnNldE91dGVyVGV4dChjb25zdCBT
dHJpbmcmIHRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjKQogICAgICAgICBtZXJnZVdpdGhOZXh0VGV4
dE5vZGUoZG93bmNhc3Q8VGV4dD4oKnByZXYpLCBlYyk7CiB9CiAKLU5vZGUqIEhUTUxFbGVtZW50
OjppbnNlcnRBZGphY2VudChjb25zdCBTdHJpbmcmIHdoZXJlLCBSZWY8Tm9kZT4mJiBuZXdDaGls
ZCwgRXhjZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAgLy8gSW4gSW50ZXJuZXQgRXhwbG9yZXIgaWYg
dGhlIGVsZW1lbnQgaGFzIG5vIHBhcmVudCBhbmQgd2hlcmUgaXMgImJlZm9yZUJlZ2luIiBvciAi
YWZ0ZXJFbmQiLAotICAgIC8vIGEgZG9jdW1lbnQgZnJhZ21lbnQgaXMgY3JlYXRlZCBhbmQgdGhl
IGVsZW1lbnRzIGFwcGVuZGVkIGluIHRoZSBjb3JyZWN0IG9yZGVyLiBUaGlzIGRvY3VtZW50Ci0g
ICAgLy8gZnJhZ21lbnQgaXNuJ3QgcmV0dXJuZWQgYW55d2hlcmUuCi0gICAgLy8KLSAgICAvLyBU
aGlzIGlzIGltcG9zc2libGUgZm9yIHVzIHRvIGltcGxlbWVudCBhcyB0aGUgRE9NIHRyZWUgZG9l
cyBub3QgYWxsb3cgZm9yIHN1Y2ggc3RydWN0dXJlcywKLSAgICAvLyBPcGVyYSBhbHNvIGFwcGVh
cnMgdG8gZGlzYWxsb3cgc3VjaCB1c2FnZS4KLQotICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmlu
Z0FTQ0lJQ2FzZSh3aGVyZSwgImJlZm9yZWJlZ2luIikpIHsKLSAgICAgICAgQ29udGFpbmVyTm9k
ZSogcGFyZW50ID0gdGhpcy0+cGFyZW50Tm9kZSgpOwotICAgICAgICByZXR1cm4gKHBhcmVudCAm
JiBwYXJlbnQtPmluc2VydEJlZm9yZShuZXdDaGlsZCwgdGhpcywgZWMpKSA/IG5ld0NoaWxkLnB0
cigpIDogbnVsbHB0cjsKLSAgICB9Ci0KLSAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJ
SUNhc2Uod2hlcmUsICJhZnRlcmJlZ2luIikpCi0gICAgICAgIHJldHVybiBpbnNlcnRCZWZvcmUo
bmV3Q2hpbGQsIGZpcnN0Q2hpbGQoKSwgZWMpID8gbmV3Q2hpbGQucHRyKCkgOiBudWxscHRyOwot
Ci0gICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHdoZXJlLCAiYmVmb3JlZW5k
IikpCi0gICAgICAgIHJldHVybiBhcHBlbmRDaGlsZChuZXdDaGlsZCwgZWMpID8gbmV3Q2hpbGQu
cHRyKCkgOiBudWxscHRyOwotCi0gICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNl
KHdoZXJlLCAiYWZ0ZXJlbmQiKSkgewotICAgICAgICBDb250YWluZXJOb2RlKiBwYXJlbnQgPSB0
aGlzLT5wYXJlbnROb2RlKCk7Ci0gICAgICAgIHJldHVybiAocGFyZW50ICYmIHBhcmVudC0+aW5z
ZXJ0QmVmb3JlKG5ld0NoaWxkLCBuZXh0U2libGluZygpLCBlYykpID8gbmV3Q2hpbGQucHRyKCkg
OiBudWxscHRyOwotICAgIH0KLSAgICAKLSAgICBlYyA9IFNZTlRBWF9FUlI7Ci0gICAgcmV0dXJu
IG51bGxwdHI7Ci19Ci0KLUVsZW1lbnQqIEhUTUxFbGVtZW50OjppbnNlcnRBZGphY2VudEVsZW1l
bnQoY29uc3QgU3RyaW5nJiB3aGVyZSwgRWxlbWVudCYgbmV3Q2hpbGQsIEV4Y2VwdGlvbkNvZGUm
IGVjKQotewotICAgIE5vZGUqIHJldHVyblZhbHVlID0gaW5zZXJ0QWRqYWNlbnQod2hlcmUsIG5l
d0NoaWxkLCBlYyk7Ci0gICAgQVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04oIXJldHVy
blZhbHVlIHx8IGlzPEVsZW1lbnQ+KCpyZXR1cm5WYWx1ZSkpOwotICAgIHJldHVybiBkb3duY2Fz
dDxFbGVtZW50PihyZXR1cm5WYWx1ZSk7IAotfQotCi0vLyBTdGVwIDMgb2YgaHR0cDovL3d3dy53
aGF0d2cub3JnL3NwZWNzL3dlYi1hcHBzL2N1cnJlbnQtd29yay9tdWx0aXBhZ2UvYXBpcy1pbi1o
dG1sLWRvY3VtZW50cy5odG1sI2luc2VydGFkamFjZW50aHRtbCgpCi1zdGF0aWMgRWxlbWVudCog
Y29udGV4dEVsZW1lbnRGb3JJbnNlcnRpb24oY29uc3QgU3RyaW5nJiB3aGVyZSwgRWxlbWVudCog
ZWxlbWVudCwgRXhjZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9y
aW5nQVNDSUlDYXNlKHdoZXJlLCAiYmVmb3JlYmVnaW4iKSB8fCBlcXVhbExldHRlcnNJZ25vcmlu
Z0FTQ0lJQ2FzZSh3aGVyZSwgImFmdGVyZW5kIikpIHsKLSAgICAgICAgQ29udGFpbmVyTm9kZSog
cGFyZW50ID0gZWxlbWVudC0+cGFyZW50Tm9kZSgpOwotICAgICAgICBpZiAocGFyZW50ICYmICFp
czxFbGVtZW50PigqcGFyZW50KSkgewotICAgICAgICAgICAgZWMgPSBOT19NT0RJRklDQVRJT05f
QUxMT1dFRF9FUlI7Ci0gICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgfQotICAg
ICAgICBBU1NFUlRfV0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTighcGFyZW50IHx8IGlzPEVsZW1l
bnQ+KCpwYXJlbnQpKTsKLSAgICAgICAgcmV0dXJuIGRvd25jYXN0PEVsZW1lbnQ+KHBhcmVudCk7
Ci0gICAgfQotICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh3aGVyZSwgImFm
dGVyYmVnaW4iKSB8fCBlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh3aGVyZSwgImJlZm9y
ZWVuZCIpKQotICAgICAgICByZXR1cm4gZWxlbWVudDsKLSAgICBlYyA9ICBTWU5UQVhfRVJSOwot
ICAgIHJldHVybiBudWxscHRyOwotfQotCi12b2lkIEhUTUxFbGVtZW50OjppbnNlcnRBZGphY2Vu
dEhUTUwoY29uc3QgU3RyaW5nJiB3aGVyZSwgY29uc3QgU3RyaW5nJiBtYXJrdXAsIEV4Y2VwdGlv
bkNvZGUmIGVjKQotewotICAgIEVsZW1lbnQqIGNvbnRleHRFbGVtZW50ID0gY29udGV4dEVsZW1l
bnRGb3JJbnNlcnRpb24od2hlcmUsIHRoaXMsIGVjKTsKLSAgICBpZiAoIWNvbnRleHRFbGVtZW50
KQotICAgICAgICByZXR1cm47Ci0gICAgUmVmUHRyPERvY3VtZW50RnJhZ21lbnQ+IGZyYWdtZW50
ID0gY3JlYXRlRnJhZ21lbnRGb3JJbm5lck91dGVySFRNTCgqY29udGV4dEVsZW1lbnQsIG1hcmt1
cCwgQWxsb3dTY3JpcHRpbmdDb250ZW50LCBlYyk7Ci0gICAgaWYgKCFmcmFnbWVudCkKLSAgICAg
ICAgcmV0dXJuOwotICAgIGluc2VydEFkamFjZW50KHdoZXJlLCBmcmFnbWVudC5yZWxlYXNlTm9u
TnVsbCgpLCBlYyk7Ci19Ci0KLXZvaWQgSFRNTEVsZW1lbnQ6Omluc2VydEFkamFjZW50VGV4dChj
b25zdCBTdHJpbmcmIHdoZXJlLCBjb25zdCBTdHJpbmcmIHRleHQsIEV4Y2VwdGlvbkNvZGUmIGVj
KQotewotICAgIGluc2VydEFkamFjZW50KHdoZXJlLCBkb2N1bWVudCgpLmNyZWF0ZVRleHROb2Rl
KHRleHQpLCBlYyk7Ci19Ci0KIHZvaWQgSFRNTEVsZW1lbnQ6OmFwcGx5QWxpZ25tZW50QXR0cmli
dXRlVG9TdHlsZShjb25zdCBBdG9taWNTdHJpbmcmIGFsaWdubWVudCwgTXV0YWJsZVN0eWxlUHJv
cGVydGllcyYgc3R5bGUpCiB7CiAgICAgLy8gVmVydGljYWwgYWxpZ25tZW50IHdpdGggcmVzcGVj
dCB0byB0aGUgY3VycmVudCBiYXNlbGluZSBvZiB0aGUgdGV4dApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxl
bWVudC5oCmluZGV4IGI0YWJhODgwZDc0NDFkZTNiNDcyODZkYWY2ODgwZGZjNjE1ZWMzZTcuLmNm
ZDc5MmFkNmI1ZWI5ZGJmYjExMTdhMDA5Mjg0NzM2M2M0N2QxNzcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxFbGVtZW50LmgKQEAgLTQ5LDEwICs0OSw2IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldElubmVy
VGV4dChjb25zdCBTdHJpbmcmLCBFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzZXRPdXRlclRl
eHQoY29uc3QgU3RyaW5nJiwgRXhjZXB0aW9uQ29kZSYpOwogCi0gICAgRWxlbWVudCogaW5zZXJ0
QWRqYWNlbnRFbGVtZW50KGNvbnN0IFN0cmluZyYgd2hlcmUsIEVsZW1lbnQmIG5ld0NoaWxkLCBF
eGNlcHRpb25Db2RlJik7Ci0gICAgdm9pZCBpbnNlcnRBZGphY2VudEhUTUwoY29uc3QgU3RyaW5n
JiB3aGVyZSwgY29uc3QgU3RyaW5nJiBodG1sLCBFeGNlcHRpb25Db2RlJik7Ci0gICAgdm9pZCBp
bnNlcnRBZGphY2VudFRleHQoY29uc3QgU3RyaW5nJiB3aGVyZSwgY29uc3QgU3RyaW5nJiB0ZXh0
LCBFeGNlcHRpb25Db2RlJik7Ci0KICAgICB2aXJ0dWFsIGJvb2wgaGFzQ3VzdG9tRm9jdXNMb2dp
YygpIGNvbnN0OwogICAgIGJvb2wgc3VwcG9ydHNGb2N1cygpIGNvbnN0IG92ZXJyaWRlOwogCkBA
IC0xMzAsNyArMTI2LDYgQEAgcHJpdmF0ZToKIAogICAgIHZpcnR1YWwgSFRNTEZvcm1FbGVtZW50
KiB2aXJ0dWFsRm9ybSgpIGNvbnN0OwogCi0gICAgTm9kZSogaW5zZXJ0QWRqYWNlbnQoY29uc3Qg
U3RyaW5nJiB3aGVyZSwgUmVmPE5vZGU+JiYgbmV3Q2hpbGQsIEV4Y2VwdGlvbkNvZGUmKTsKICAg
ICBSZWY8RG9jdW1lbnRGcmFnbWVudD4gdGV4dFRvRnJhZ21lbnQoY29uc3QgU3RyaW5nJiwgRXhj
ZXB0aW9uQ29kZSYpOwogCiAgICAgdm9pZCBkaXJBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IEF0b21p
Y1N0cmluZyYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmlkbAppbmRleCA2YzY3NzY0MDFi
ZDNlNTkyZWRjMDNmNjJlYjYyN2FlMzlmYjU4NjJiLi5kMmJkZjNhODllOTUwNzU0ZTllM2Q2YmVj
NTU2NzdkN2RiMjcxNzRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVt
ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmlkbApAQCAtNDQs
MTEgKzQ0LDYgQEAKICAgICBbVHJlYXROdWxsQXM9RW1wdHlTdHJpbmcsIFNldHRlclJhaXNlc0V4
Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBpbm5lclRleHQ7CiAgICAgW1RyZWF0TnVsbEFz
PUVtcHR5U3RyaW5nLCBTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcg
b3V0ZXJUZXh0OwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gRWxlbWVudCBpbnNlcnRBZGphY2Vu
dEVsZW1lbnQoRE9NU3RyaW5nIHdoZXJlLCBFbGVtZW50IGVsZW1lbnQpOwotCi0gICAgW1JhaXNl
c0V4Y2VwdGlvbl0gdm9pZCBpbnNlcnRBZGphY2VudEhUTUwoRE9NU3RyaW5nIHdoZXJlLCBET01T
dHJpbmcgaHRtbCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBpbnNlcnRBZGphY2VudFRl
eHQoRE9NU3RyaW5nIHdoZXJlLCBET01TdHJpbmcgdGV4dCk7Ci0KICAgICBbU2V0dGVyUmFpc2Vz
RXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGNvbnRlbnRFZGl0YWJsZTsKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgYm9vbGVhbiBpc0NvbnRlbnRFZGl0YWJsZTsKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGU3NDVh
MWRlNTZlOWNiNTMxZDc5YjI2MjlhYWYxYzQ2OGY1OGI4NzQuLjdhYjRmYTM0ZGMwZmVjOGFkYTQw
ZTdmNTBhZWI5NDFmNGUxMjViNmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxNi0wOC0wNCAg
Q2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgaW5zZXJ0QWRq
YWNlbnQqKCkgQVBJIGZyb20gSFRNTEVsZW1lbnQgdG8gRWxlbWVudAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYwNTY3CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgU2FtIFdlaW5pZy4KKworICAgICAgICBSZWJhc2VsaW5lIHNldmVyYWwgdGVzdHMgdG8g
cmVmbGVjdCBiZWhhdmlvciBjaGFuZ2UuCisKKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MRWxlbWVu
dC9pbnNlcnRBZGphY2VudEhUTUwtZXJyb3JzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0
L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvaW5zZXJ0QWRqYWNlbnRIVE1MLWVycm9ycy5q
czoKKyAgICAgICAgKiBmYXN0L2R5bmFtaWMvaW5zZXJ0QWRqYWNlbnRFbGVtZW50LWV4cGVjdGVk
LnR4dDoKKwogMjAxNi0wOC0wNCAgUnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFkQGFwcGxlLmNvbT4K
IAogICAgICAgICBSZWJhc2VsaW5lIGh0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3MtZnJhbWUtYWNj
ZXNzLXB1dC5odG1sIGFmdGVyIHIyMDQxMjYuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpp
bmRleCAwNDdjZjQzNGY0ZjUyZWQ3NTAzMTk2MWZjZDE4OTYzMWQ5NjU5YjBlLi41MGFiY2ZmYTQ5
MGJkNGE5NGE4NDE1NGRlMDQ5YWQ0YjE1MGViNzFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cKQEAgLTEsNSArMSwxNyBAQAogMjAxNi0wOC0wNCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpA
YXBwbGUuY29tPgogCisgICAgICAgIE1vdmUgaW5zZXJ0QWRqYWNlbnQqKCkgQVBJIGZyb20gSFRN
TEVsZW1lbnQgdG8gRWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTYwNTY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKwor
ICAgICAgICBSZWJhc2VsaW5lIHNldmVyYWwgVzNDIHRlc3RzIG5vdyB0aGF0IG1vcmUgY2hlY2tz
IGFyZSBwYXNzaW5nLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9pbnRlcmZh
Y2VzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZG9tcGFyc2lu
Zy9pbnNlcnRfYWRqYWNlbnRfaHRtbC1leHBlY3RlZC50eHQ6CisKKzIwMTYtMDgtMDQgIENocmlz
IER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKwogICAgICAgICBbW1Byb3RvdHlwZV1dIHByb3Bl
cnR5IG9mIGFuIGludGVyZmFjZSBvYmplY3QgZm9yIGEgY2FsbGJhY2sgaW50ZXJmYWNlIG11c3Qg
YmUgdGhlIE9iamVjdC5wcm90b3R5cGUgb2JqZWN0CiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjA1NTUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEVsZW1lbnQvaW5zZXJ0QWRqYWNlbnRIVE1MLWVycm9ycy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9pbnNlcnRBZGphY2VudEhUTUwt
ZXJyb3JzLWV4cGVjdGVkLnR4dAppbmRleCBlNjVlZDM1ZGY2ODViOTQ3YWVlNjU0ZjdkOWIzYmQ2
YWIyM2RiYWNjLi4xNzI1ZDFkMmIzYTg4NTdjZjc3N2E4N2Y1MDI3NDI1YWQ4ZGUxMDA4IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9pbnNlcnRBZGphY2VudEhU
TUwtZXJyb3JzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxl
bWVudC9pbnNlcnRBZGphY2VudEhUTUwtZXJyb3JzLWV4cGVjdGVkLnR4dApAQCAtMyw4ICszLDgg
QEAgVGVzdCBpbnNlcnRBZGphY2VudEhUTUwgZXhjZXB0aW9ucyB0byBtYWtlIHN1cmUgdGhleSBt
YXRjaCBIVE1MNQogT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBt
ZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCiAKLVBBU1MgZGl2Lmluc2Vy
dEFkamFjZW50SFRNTCgnYmVmb3JlQmVnaW4nLCAndGV4dCcpIGlzIHVuZGVmaW5lZC4KLVBBU1Mg
ZGl2Lmluc2VydEFkamFjZW50SFRNTCgnYWZ0ZXJFbmQnLCAndGV4dCcpIGlzIHVuZGVmaW5lZC4K
K1BBU1MgZGl2Lmluc2VydEFkamFjZW50SFRNTCgnYmVmb3JlQmVnaW4nLCAndGV4dCcpIHRocmV3
IGV4Y2VwdGlvbiBOb01vZGlmaWNhdGlvbkFsbG93ZWRFcnJvciAoRE9NIEV4Y2VwdGlvbiA3KTog
VGhlIG9iamVjdCBjYW4gbm90IGJlIG1vZGlmaWVkLi4KK1BBU1MgZGl2Lmluc2VydEFkamFjZW50
SFRNTCgnYWZ0ZXJFbmQnLCAndGV4dCcpIHRocmV3IGV4Y2VwdGlvbiBOb01vZGlmaWNhdGlvbkFs
bG93ZWRFcnJvciAoRE9NIEV4Y2VwdGlvbiA3KTogVGhlIG9iamVjdCBjYW4gbm90IGJlIG1vZGlm
aWVkLi4KIFBBU1MgZGl2Lmluc2VydEFkamFjZW50SFRNTCgnRk9PJywgJ3RleHQnKSB0aHJldyBl
eGNlcHRpb24gU3ludGF4RXJyb3IgKERPTSBFeGNlcHRpb24gMTIpOiBUaGUgc3RyaW5nIGRpZCBu
b3QgbWF0Y2ggdGhlIGV4cGVjdGVkIHBhdHRlcm4uLgogUEFTUyBkb2N1bWVudC5kb2N1bWVudEVs
ZW1lbnQuaW5zZXJ0QWRqYWNlbnRIVE1MKCdhZnRlckVuZCcsICd0ZXh0JykgdGhyZXcgZXhjZXB0
aW9uIE5vTW9kaWZpY2F0aW9uQWxsb3dlZEVycm9yIChET00gRXhjZXB0aW9uIDcpOiBUaGUgb2Jq
ZWN0IGNhbiBub3QgYmUgbW9kaWZpZWQuLgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEVsZW1lbnQvc2NyaXB0LXRl
c3RzL2luc2VydEFkamFjZW50SFRNTC1lcnJvcnMuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvaW5zZXJ0QWRqYWNlbnRIVE1MLWVycm9ycy5qcwppbmRl
eCA1N2VlZjM3NzdlOWE3YzE0ZGI3MWY0NmZkNGU0NTM2NTMzZjcxZjEwLi43Y2RlN2UyYTE0Mzg1
ZDdmNDE5YzExOWI0NjJmOTAxMjE0ZGNmMTgyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvaW5zZXJ0QWRqYWNlbnRIVE1MLWVycm9ycy5q
cworKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvaW5z
ZXJ0QWRqYWNlbnRIVE1MLWVycm9ycy5qcwpAQCAtMiw4ICsyLDggQEAgZGVzY3JpcHRpb24oJ1Rl
c3QgaW5zZXJ0QWRqYWNlbnRIVE1MIGV4Y2VwdGlvbnMgdG8gbWFrZSBzdXJlIHRoZXkgbWF0Y2gg
SFRNTDUnKTsKIAogdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwogCi1z
aG91bGRCZVVuZGVmaW5lZCgiZGl2Lmluc2VydEFkamFjZW50SFRNTCgnYmVmb3JlQmVnaW4nLCAn
dGV4dCcpIik7Ci1zaG91bGRCZVVuZGVmaW5lZCgiZGl2Lmluc2VydEFkamFjZW50SFRNTCgnYWZ0
ZXJFbmQnLCAndGV4dCcpIik7CitzaG91bGRUaHJvdygiZGl2Lmluc2VydEFkamFjZW50SFRNTCgn
YmVmb3JlQmVnaW4nLCAndGV4dCcpIik7CitzaG91bGRUaHJvdygiZGl2Lmluc2VydEFkamFjZW50
SFRNTCgnYWZ0ZXJFbmQnLCAndGV4dCcpIik7CiAKIHNob3VsZFRocm93KCJkaXYuaW5zZXJ0QWRq
YWNlbnRIVE1MKCdGT08nLCAndGV4dCcpIiwgJyJTeW50YXhFcnJvciAoRE9NIEV4Y2VwdGlvbiAx
Mik6IFRoZSBzdHJpbmcgZGlkIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgcGF0dGVybi4iJyk7CiBz
aG91bGRUaHJvdygiZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Lmluc2VydEFkamFjZW50SFRNTCgn
YWZ0ZXJFbmQnLCAndGV4dCcpIiwgJyJOb01vZGlmaWNhdGlvbkFsbG93ZWRFcnJvciAoRE9NIEV4
Y2VwdGlvbiA3KTogVGhlIG9iamVjdCBjYW4gbm90IGJlIG1vZGlmaWVkLiInKTsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvZHluYW1pYy9pbnNlcnRBZGphY2VudEVsZW1lbnQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9keW5hbWljL2luc2VydEFkamFjZW50RWxlbWVudC1l
eHBlY3RlZC50eHQKaW5kZXggNzViMTc5OTdmODQ4MGE2NTM4M2Y0MzBjN2M1MjZkNjdiZmVhYWE4
ZS4uZmViZGRiOGNjMGE2OTRhY2E0N2JjZWM0ZGM2YzdmZjExNzNlMTQ5ZiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvZmFzdC9keW5hbWljL2luc2VydEFkamFjZW50RWxlbWVudC1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9keW5hbWljL2luc2VydEFkamFjZW50RWxlbWVudC1l
eHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiBDYXVnaHQgZXhwZWN0ZWQgZXhjZXB0aW9uOiBT
eW50YXhFcnJvciAoRE9NIEV4Y2VwdGlvbiAxMik6IFRoZSBzdHJpbmcgZGlkIG5vdCBtYXRjaCB0
aGUgZXhwZWN0ZWQgcGF0dGVybi4KLUNhdWdodCBleHBlY3RlZCBleGNlcHRpb246IFR5cGVFcnJv
cjogQXJndW1lbnQgMiAoJ2VsZW1lbnQnKSB0byBIVE1MRWxlbWVudC5pbnNlcnRBZGphY2VudEVs
ZW1lbnQgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBFbGVtZW50CitDYXVnaHQgZXhwZWN0ZWQgZXhj
ZXB0aW9uOiBUeXBlRXJyb3I6IEFyZ3VtZW50IDIgKCdlbGVtZW50JykgdG8gRWxlbWVudC5pbnNl
cnRBZGphY2VudEVsZW1lbnQgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBFbGVtZW50CiAxIChibGFj
aykgMiAoZ3JlZW4pIDMgKGdyZWVuKSA0IChibGFjaykgCiAKIFBBU1MKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2ludGVyZmFjZXMt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9kb20vaW50ZXJmYWNlcy1leHBlY3RlZC50eHQKaW5kZXggMDgwMGUyMDEzZTA3MTQ2MTFmZDRl
YzBlMjA5YjRlN2I3ZDlkNzY1NC4uMTAwNGE5NWU1ZWIwNGE4YTUzMmRiNGRmMTY4NDA3N2QxZWQ4
NWY3MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9kb20vaW50ZXJmYWNlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vaW50ZXJmYWNlcy1leHBlY3RlZC50eHQKQEAg
LTc2NCw4ICs3NjQsOCBAQCBQQVNTIEVsZW1lbnQgaW50ZXJmYWNlOiBvcGVyYXRpb24gd2Via2l0
TWF0Y2hlc1NlbGVjdG9yKERPTVN0cmluZykKIFBBU1MgRWxlbWVudCBpbnRlcmZhY2U6IG9wZXJh
dGlvbiBnZXRFbGVtZW50c0J5VGFnTmFtZShET01TdHJpbmcpIAogUEFTUyBFbGVtZW50IGludGVy
ZmFjZTogb3BlcmF0aW9uIGdldEVsZW1lbnRzQnlUYWdOYW1lTlMoRE9NU3RyaW5nLERPTVN0cmlu
ZykgCiBQQVNTIEVsZW1lbnQgaW50ZXJmYWNlOiBvcGVyYXRpb24gZ2V0RWxlbWVudHNCeUNsYXNz
TmFtZShET01TdHJpbmcpIAotRkFJTCBFbGVtZW50IGludGVyZmFjZTogb3BlcmF0aW9uIGluc2Vy
dEFkamFjZW50RWxlbWVudChET01TdHJpbmcsRWxlbWVudCkgYXNzZXJ0X293bl9wcm9wZXJ0eTog
aW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QgbWlzc2luZyBub24tc3RhdGljIG9wZXJhdGlvbiBl
eHBlY3RlZCBwcm9wZXJ0eSAiaW5zZXJ0QWRqYWNlbnRFbGVtZW50IiBtaXNzaW5nCi1GQUlMIEVs
ZW1lbnQgaW50ZXJmYWNlOiBvcGVyYXRpb24gaW5zZXJ0QWRqYWNlbnRUZXh0KERPTVN0cmluZyxE
T01TdHJpbmcpIGFzc2VydF9vd25fcHJvcGVydHk6IGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0
IG1pc3Npbmcgbm9uLXN0YXRpYyBvcGVyYXRpb24gZXhwZWN0ZWQgcHJvcGVydHkgImluc2VydEFk
amFjZW50VGV4dCIgbWlzc2luZworUEFTUyBFbGVtZW50IGludGVyZmFjZTogb3BlcmF0aW9uIGlu
c2VydEFkamFjZW50RWxlbWVudChET01TdHJpbmcsRWxlbWVudCkgCitQQVNTIEVsZW1lbnQgaW50
ZXJmYWNlOiBvcGVyYXRpb24gaW5zZXJ0QWRqYWNlbnRUZXh0KERPTVN0cmluZyxET01TdHJpbmcp
IAogUEFTUyBFbGVtZW50IGludGVyZmFjZTogYXR0cmlidXRlIGNoaWxkcmVuIAogUEFTUyBFbGVt
ZW50IGludGVyZmFjZTogYXR0cmlidXRlIGZpcnN0RWxlbWVudENoaWxkIAogUEFTUyBFbGVtZW50
IGludGVyZmFjZTogYXR0cmlidXRlIGxhc3RFbGVtZW50Q2hpbGQgCkBAIC04MzUsMTAgKzgzNSwx
MCBAQCBQQVNTIEVsZW1lbnQgaW50ZXJmYWNlOiBlbGVtZW50IG11c3QgaW5oZXJpdCBwcm9wZXJ0
eSAiZ2V0RWxlbWVudHNCeVRhZ05hbWVOUyIgdwogUEFTUyBFbGVtZW50IGludGVyZmFjZTogY2Fs
bGluZyBnZXRFbGVtZW50c0J5VGFnTmFtZU5TKERPTVN0cmluZyxET01TdHJpbmcpIG9uIGVsZW1l
bnQgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKIFBBU1MgRWxl
bWVudCBpbnRlcmZhY2U6IGVsZW1lbnQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJnZXRFbGVtZW50
c0J5Q2xhc3NOYW1lIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAoMzEpIAogUEFTUyBFbGVtZW50IGlu
dGVyZmFjZTogY2FsbGluZyBnZXRFbGVtZW50c0J5Q2xhc3NOYW1lKERPTVN0cmluZykgb24gZWxl
bWVudCB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAotRkFJTCBF
bGVtZW50IGludGVyZmFjZTogZWxlbWVudCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImluc2VydEFk
amFjZW50RWxlbWVudCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgKDMyKSBhc3NlcnRfaW5oZXJpdHM6
IHByb3BlcnR5ICJpbnNlcnRBZGphY2VudEVsZW1lbnQiIG5vdCBmb3VuZCBpbiBwcm90b3R5cGUg
Y2hhaW4KLUZBSUwgRWxlbWVudCBpbnRlcmZhY2U6IGNhbGxpbmcgaW5zZXJ0QWRqYWNlbnRFbGVt
ZW50KERPTVN0cmluZyxFbGVtZW50KSBvbiBlbGVtZW50IHdpdGggdG9vIGZldyBhcmd1bWVudHMg
bXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2luaGVyaXRzOiBwcm9wZXJ0eSAiaW5zZXJ0QWRq
YWNlbnRFbGVtZW50IiBub3QgZm91bmQgaW4gcHJvdG90eXBlIGNoYWluCi1GQUlMIEVsZW1lbnQg
aW50ZXJmYWNlOiBlbGVtZW50IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiaW5zZXJ0QWRqYWNlbnRU
ZXh0IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAoMzMpIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkg
Imluc2VydEFkamFjZW50VGV4dCIgbm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgotRkFJTCBF
bGVtZW50IGludGVyZmFjZTogY2FsbGluZyBpbnNlcnRBZGphY2VudFRleHQoRE9NU3RyaW5nLERP
TVN0cmluZykgb24gZWxlbWVudCB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlw
ZUVycm9yIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkgImluc2VydEFkamFjZW50VGV4dCIgbm90
IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgorUEFTUyBFbGVtZW50IGludGVyZmFjZTogZWxlbWVu
dCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImluc2VydEFkamFjZW50RWxlbWVudCIgd2l0aCB0aGUg
cHJvcGVyIHR5cGUgKDMyKSAKK1BBU1MgRWxlbWVudCBpbnRlcmZhY2U6IGNhbGxpbmcgaW5zZXJ0
QWRqYWNlbnRFbGVtZW50KERPTVN0cmluZyxFbGVtZW50KSBvbiBlbGVtZW50IHdpdGggdG9vIGZl
dyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCitQQVNTIEVsZW1lbnQgaW50ZXJmYWNl
OiBlbGVtZW50IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiaW5zZXJ0QWRqYWNlbnRUZXh0IiB3aXRo
IHRoZSBwcm9wZXIgdHlwZSAoMzMpIAorUEFTUyBFbGVtZW50IGludGVyZmFjZTogY2FsbGluZyBp
bnNlcnRBZGphY2VudFRleHQoRE9NU3RyaW5nLERPTVN0cmluZykgb24gZWxlbWVudCB3aXRoIHRv
byBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAogUEFTUyBFbGVtZW50IGludGVy
ZmFjZTogZWxlbWVudCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNoaWxkcmVuIiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSAoMzQpIAogUEFTUyBFbGVtZW50IGludGVyZmFjZTogZWxlbWVudCBtdXN0IGlu
aGVyaXQgcHJvcGVydHkgImZpcnN0RWxlbWVudENoaWxkIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAo
MzUpIAogUEFTUyBFbGVtZW50IGludGVyZmFjZTogZWxlbWVudCBtdXN0IGluaGVyaXQgcHJvcGVy
dHkgImxhc3RFbGVtZW50Q2hpbGQiIHdpdGggdGhlIHByb3BlciB0eXBlICgzNikgCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbXBhcnNp
bmcvaW5zZXJ0X2FkamFjZW50X2h0bWwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb21wYXJzaW5nL2luc2VydF9hZGphY2VudF9odG1s
LWV4cGVjdGVkLnR4dAppbmRleCAyYTIwNGM3MjZmM2E5MWQwMTBmMzY5NTVkMWNhM2ZmZmZlNDZj
ZGY3Li44NDdkNzQ3YjgxYjU1M2M5ZTY0NWNiZTQ3N2FmY2YxZDZhZWYyZWM5IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbXBhcnNpbmcv
aW5zZXJ0X2FkamFjZW50X2h0bWwtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tcGFyc2luZy9pbnNlcnRfYWRqYWNlbnRfaHRt
bC1leHBlY3RlZC50eHQKQEAgLTgsOSArOCw5IEBAIFBBU1MgQWZ0ZXJiZWdpbiBjb250ZW50IGFn
YWluLCB3aXRoIG5leHQgc2libGluZwogUEFTUyBCZWZvcmVFbmQgY29udGVudCBhZ2Fpbiwgd2l0
aCBuZXh0IHNpYmxpbmcgCiBQQVNTIGFmdGVyZW5kIGNvbnRlbnQgYWdhaW4sIHdpdGggbmV4dCBz
aWJsaW5nIAogUEFTUyBTaG91bGQgdGhyb3cgd2hlbiBpbnNlcnRpbmcgd2l0aCBpbnZhbGlkIHBv
c2l0aW9uIHN0cmluZyAKLUZBSUwgV2hlbiB0aGUgcGFyZW50IG5vZGUgaXMgbnVsbCwgaW5zZXJ0
QWRqYWNlbnRIVE1MIHNob3VsZCB0aHJvdyBmb3IgYmVmb3JlYmVnaW4gYW5kIGFmdGVyZW5kICh0
ZXh0KSBhc3NlcnRfdGhyb3dzOiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgeyBlbGVtZW50Lmluc2Vy
dEFkamFjZW50SFRNTCgiYWZ0ZXJlbmQiLCAiIikgfSIgZGlkIG5vdCB0aHJvdwotRkFJTCBXaGVu
IHRoZSBwYXJlbnQgbm9kZSBpcyBudWxsLCBpbnNlcnRBZGphY2VudEhUTUwgc2hvdWxkIHRocm93
IGZvciBiZWZvcmViZWdpbiBhbmQgYWZ0ZXJlbmQgKGNvbW1lbnRzKSBhc3NlcnRfdGhyb3dzOiBm
dW5jdGlvbiAiZnVuY3Rpb24gKCkgeyBlbGVtZW50Lmluc2VydEFkamFjZW50SFRNTCgiYWZ0ZXJl
bmQiLCAiPCEtLi4uIiBkaWQgbm90IHRocm93Ci1GQUlMIFdoZW4gdGhlIHBhcmVudCBub2RlIGlz
IG51bGwsIGluc2VydEFkamFjZW50SFRNTCBzaG91bGQgdGhyb3cgZm9yIGJlZm9yZWJlZ2luIGFu
ZCBhZnRlcmVuZCAoZWxlbWVudHMpIGFzc2VydF90aHJvd3M6IGZ1bmN0aW9uICJmdW5jdGlvbiAo
KSB7IGVsZW1lbnQuaW5zZXJ0QWRqYWNlbnRIVE1MKCJhZnRlcmVuZCIsICI8ZGkuLi4iIGRpZCBu
b3QgdGhyb3cKK1BBU1MgV2hlbiB0aGUgcGFyZW50IG5vZGUgaXMgbnVsbCwgaW5zZXJ0QWRqYWNl
bnRIVE1MIHNob3VsZCB0aHJvdyBmb3IgYmVmb3JlYmVnaW4gYW5kIGFmdGVyZW5kICh0ZXh0KSAK
K1BBU1MgV2hlbiB0aGUgcGFyZW50IG5vZGUgaXMgbnVsbCwgaW5zZXJ0QWRqYWNlbnRIVE1MIHNo
b3VsZCB0aHJvdyBmb3IgYmVmb3JlYmVnaW4gYW5kIGFmdGVyZW5kIChjb21tZW50cykgCitQQVNT
IFdoZW4gdGhlIHBhcmVudCBub2RlIGlzIG51bGwsIGluc2VydEFkamFjZW50SFRNTCBzaG91bGQg
dGhyb3cgZm9yIGJlZm9yZWJlZ2luIGFuZCBhZnRlcmVuZCAoZWxlbWVudHMpIAogUEFTUyBXaGVu
IHRoZSBwYXJlbnQgbm9kZSBpcyBhIGRvY3VtZW50LCBpbnNlcnRBZGphY2VudEhUTUwgc2hvdWxk
IHRocm93IGZvciBiZWZvcmViZWdpbiBhbmQgYWZ0ZXJlbmQgKHRleHQpIAogUEFTUyBXaGVuIHRo
ZSBwYXJlbnQgbm9kZSBpcyBhIGRvY3VtZW50LCBpbnNlcnRBZGphY2VudEhUTUwgc2hvdWxkIHRo
cm93IGZvciBiZWZvcmViZWdpbiBhbmQgYWZ0ZXJlbmQgKGNvbW1lbnRzKSAKIFBBU1MgV2hlbiB0
aGUgcGFyZW50IG5vZGUgaXMgYSBkb2N1bWVudCwgaW5zZXJ0QWRqYWNlbnRIVE1MIHNob3VsZCB0
aHJvdyBmb3IgYmVmb3JlYmVnaW4gYW5kIGFmdGVyZW5kIChlbGVtZW50cykgCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>