<?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>185600</bug_id>
          
          <creation_ts>2018-05-13 20:55:48 -0700</creation_ts>
          <short_desc>Make all SVG shape interfaces inherit from SVGGeometryElement</short_desc>
          <delta_ts>2018-05-18 08:24: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>SVG</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>184767</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dirk Schulze">krit</reporter>
          <assigned_to name="Dirk Schulze">krit</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>koivisto</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1423494</commentid>
    <comment_count>0</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2018-05-13 20:55:48 -0700</bug_when>
    <thetext>Make all SVG shape interfaces inherit from SVGGeometryElement as defined by SVG2.

https://svgwg.org/svg2-draft/shapes.html#DOMInterfaces</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423495</commentid>
    <comment_count>1</comment_count>
      <attachid>340288</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2018-05-13 21:17:41 -0700</bug_when>
    <thetext>Created attachment 340288
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424627</commentid>
    <comment_count>2</comment_count>
      <attachid>340288</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2018-05-16 23:35:38 -0700</bug_when>
    <thetext>Comment on attachment 340288
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424628</commentid>
    <comment_count>3</comment_count>
      <attachid>340288</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2018-05-16 23:37:40 -0700</bug_when>
    <thetext>Comment on attachment 340288
Patch

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

&gt; Source/WebCore/rendering/svg/RenderSVGShape.cpp:362
&gt; +    bool isValid;
&gt; +    point = m_path-&gt;pointAtLength(distance, isValid);

What happens when the point is not valid? Is this covered by the tests?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1425109</commentid>
    <comment_count>4</comment_count>
      <attachid>340694</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2018-05-18 07:38:07 -0700</bug_when>
    <thetext>Created attachment 340694
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1425116</commentid>
    <comment_count>5</comment_count>
      <attachid>340694</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-05-18 08:23:01 -0700</bug_when>
    <thetext>Comment on attachment 340694
Patch for landing

Clearing flags on attachment: 340694

Committed r231955: &lt;https://trac.webkit.org/changeset/231955&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1425117</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-05-18 08:23:02 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1425118</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-05-18 08:24:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/40365807&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>340288</attachid>
            <date>2018-05-13 21:17:41 -0700</date>
            <delta_ts>2018-05-18 07:37:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-185600-20180514061739.patch</filename>
            <type>text/plain</type>
            <size>51970</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMxNzM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2Y1NDBhZWMyYTczNTAz
YmVhM2JiMGQzZDliYTM0OTcyM2I4ODMzNy4uNDU2YjU4NmRlYTk5MjlhNDAxZDJhMGEyM2MzMDE3
NDlmZWNhZTEzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDE4LTA1LTEzICBEaXJr
IFNjaHVsemUgIDxkc2NodWx6ZUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgTWFrZSBhbGwgU1ZH
IHNoYXBlIGludGVyZmFjZXMgaW5oZXJpdCBmcm9tIFNWR0dlb21ldHJ5RWxlbWVudAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg1NjAwCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdHM6IHN2Zy9kb20v
U1ZHR2VvbWV0cnktY2lyY2xlLnhodG1sCisgICAgICAgICAgICAgICBzdmcvZG9tL1NWR0dlb21l
dHJ5LWVsbGlwc2UueGh0bWwKKyAgICAgICAgICAgICAgIHN2Zy9kb20vU1ZHR2VvbWV0cnktbGlu
ZS54aHRtbAorICAgICAgICAgICAgICAgc3ZnL2RvbS9TVkdHZW9tZXRyeS1wb2x5Z29uLnhodG1s
CisgICAgICAgICAgICAgICBzdmcvZG9tL1NWR0dlb21ldHJ5LXBvbHlsaW5lLnhodG1sCisgICAg
ICAgICAgICAgICBzdmcvZG9tL1NWR0dlb21ldHJ5LXJlY3QueGh0bWwKKworICAgICAgICAqIHJl
bmRlcmluZy9zdmcvUmVuZGVyU1ZHU2hhcGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
U1ZHU2hhcGU6OmdldFRvdGFsTGVuZ3RoIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
clNWR1NoYXBlOjpnZXRQb2ludEF0TGVuZ3RoIGNvbnN0KToKKyAgICAgICAgKiByZW5kZXJpbmcv
c3ZnL1JlbmRlclNWR1NoYXBlLmg6CisgICAgICAgICogc3ZnL1NWR0NpcmNsZUVsZW1lbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U1ZHQ2lyY2xlRWxlbWVudDo6U1ZHQ2lyY2xlRWxlbWVudCk6
CisgICAgICAgICogc3ZnL1NWR0NpcmNsZUVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHQ2ly
Y2xlRWxlbWVudC5pZGw6CisgICAgICAgICogc3ZnL1NWR0VsbGlwc2VFbGVtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNWR0VsbGlwc2VFbGVtZW50OjpTVkdFbGxpcHNlRWxlbWVudCk6Cisg
ICAgICAgICogc3ZnL1NWR0VsbGlwc2VFbGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR0VsbGlw
c2VFbGVtZW50LmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHR2VvbWV0cnlFbGVtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNWR0dlb21ldHJ5RWxlbWVudDo6Z2V0VG90YWxMZW5ndGggY29uc3Qp
OgorICAgICAgICAoV2ViQ29yZTo6U1ZHR2VvbWV0cnlFbGVtZW50OjpnZXRQb2ludEF0TGVuZ3Ro
IGNvbnN0KToKKyAgICAgICAgKiBzdmcvU1ZHR2VvbWV0cnlFbGVtZW50Lmg6CisgICAgICAgICog
c3ZnL1NWR0xpbmVFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0xpbmVFbGVtZW50
OjpTVkdMaW5lRWxlbWVudCk6CisgICAgICAgICogc3ZnL1NWR0xpbmVFbGVtZW50Lmg6CisgICAg
ICAgICogc3ZnL1NWR0xpbmVFbGVtZW50LmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUG9seUVsZW1l
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHUG9seUVsZW1lbnQ6OlNWR1BvbHlFbGVtZW50
KToKKyAgICAgICAgKiBzdmcvU1ZHUG9seUVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHUG9s
eWdvbkVsZW1lbnQuaWRsOgorICAgICAgICAqIHN2Zy9TVkdQb2x5bGluZUVsZW1lbnQuaWRsOgor
ICAgICAgICAqIHN2Zy9TVkdSZWN0RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdS
ZWN0RWxlbWVudDo6U1ZHUmVjdEVsZW1lbnQpOgorICAgICAgICAqIHN2Zy9TVkdSZWN0RWxlbWVu
dC5oOgorICAgICAgICAqIHN2Zy9TVkdSZWN0RWxlbWVudC5pZGw6CisKIDIwMTgtMDUtMTMgIERp
cmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9yZz4KIAogICAgICAgICBJbXBsZW1lbnQgU1ZHR2Vv
bWV0cnlFbGVtZW50J3MgaXNQb2ludEluRmlsbCBhbmQgaXNQb2ludEluU3Ryb2tlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1NoYXBlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHU2hhcGUuY3BwCmluZGV4IGJmMDY1
M2Q2MDU1MWFiZDRjZWRlNjhiZjBjOTljZTU1MTZhNjdlNzIuLjA5ZjkxZTk0MmM0NDcxMGRmNGEx
ODY5NDI3ZDRmNjBjZmJmOTc0OGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdmcvUmVuZGVyU1ZHU2hhcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dmcvUmVuZGVyU1ZHU2hhcGUuY3BwCkBAIC0zNDUsNiArMzQ1LDIzIEBAIGJvb2wgUmVuZGVyU1ZH
U2hhcGU6OmlzUG9pbnRJblN0cm9rZShjb25zdCBGbG9hdFBvaW50JiBwb2ludCkKICAgICByZXR1
cm4gc2hhcGVEZXBlbmRlbnRTdHJva2VDb250YWlucyhwb2ludCwgTG9jYWxDb29yZGluYXRlU3Bh
Y2UpOwogfQogCitmbG9hdCBSZW5kZXJTVkdTaGFwZTo6Z2V0VG90YWxMZW5ndGgoKSBjb25zdAor
eworICAgIGlmIChtX3BhdGgpCisgICAgICAgIHJldHVybiBtX3BhdGgtPmxlbmd0aCgpOworCisg
ICAgcmV0dXJuIDA7Cit9CisKK3ZvaWQgUmVuZGVyU1ZHU2hhcGU6OmdldFBvaW50QXRMZW5ndGgo
RmxvYXRQb2ludCYgcG9pbnQsIGZsb2F0IGRpc3RhbmNlKSBjb25zdAoreworICAgIGlmICghbV9w
YXRoKQorICAgICAgICByZXR1cm47CisKKyAgICBib29sIGlzVmFsaWQ7CisgICAgcG9pbnQgPSBt
X3BhdGgtPnBvaW50QXRMZW5ndGgoZGlzdGFuY2UsIGlzVmFsaWQpOworfQorCiBib29sIFJlbmRl
clNWR1NoYXBlOjpub2RlQXRGbG9hdFBvaW50KGNvbnN0IEhpdFRlc3RSZXF1ZXN0JiByZXF1ZXN0
LCBIaXRUZXN0UmVzdWx0JiByZXN1bHQsIGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50SW5QYXJlbnQs
IEhpdFRlc3RBY3Rpb24gaGl0VGVzdEFjdGlvbikKIHsKICAgICAvLyBXZSBvbmx5IGRyYXcgaW4g
dGhlIGZvcmdyb3VuZCBwaGFzZSwgc28gd2Ugb25seSBoaXQtdGVzdCB0aGVuLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdTaGFwZS5oIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdTaGFwZS5oCmluZGV4IGQ4YzJlNTZhZWIy
YWIyYjZiMjRhMDYyYWFiMmM3MzExMDYyMTExMzEuLjRmMGE3OGY1OGYxZDVhMWM0YzI1MDcyMGI4
ZTNhZDJhM2MwYjdhYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcv
UmVuZGVyU1ZHU2hhcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRl
clNWR1NoYXBlLmgKQEAgLTY1LDYgKzY1LDkgQEAgcHVibGljOgogICAgIGJvb2wgaXNQb2ludElu
RmlsbChjb25zdCBGbG9hdFBvaW50Jik7CiAgICAgYm9vbCBpc1BvaW50SW5TdHJva2UoY29uc3Qg
RmxvYXRQb2ludCYpOwogCisgICAgZmxvYXQgZ2V0VG90YWxMZW5ndGgoKSBjb25zdDsKKyAgICB2
b2lkIGdldFBvaW50QXRMZW5ndGgoRmxvYXRQb2ludCYsIGZsb2F0IGRpc3RhbmNlKSBjb25zdDsK
KwogICAgIGJvb2wgaGFzUGF0aCgpIGNvbnN0IHsgcmV0dXJuIG1fcGF0aC5nZXQoKTsgfQogICAg
IFBhdGgmIHBhdGgoKSBjb25zdAogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdDaXJjbGVFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdDaXJjbGVFbGVt
ZW50LmNwcAppbmRleCA1M2VkMjAyOWU2ZTkzY2ZhNmViYjM1ZjJmMmJlNWZhMGVkZmQzNmViLi4y
OTI4NjUzNjkwZmI0ZjkzNzk4MmE1NzJhZTM2MDFmZmEyMmUzYTViIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHQ2lyY2xlRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR0NpcmNsZUVsZW1lbnQuY3BwCkBAIC00NCwxMSArNDQsMTEgQEAgQkVHSU5fUkVHSVNU
RVJfQU5JTUFURURfUFJPUEVSVElFUyhTVkdDaXJjbGVFbGVtZW50KQogICAgIFJFR0lTVEVSX0xP
Q0FMX0FOSU1BVEVEX1BST1BFUlRZKGN5KQogICAgIFJFR0lTVEVSX0xPQ0FMX0FOSU1BVEVEX1BS
T1BFUlRZKHIpCiAgICAgUkVHSVNURVJfTE9DQUxfQU5JTUFURURfUFJPUEVSVFkoZXh0ZXJuYWxS
ZXNvdXJjZXNSZXF1aXJlZCkKLSAgICBSRUdJU1RFUl9QQVJFTlRfQU5JTUFURURfUFJPUEVSVElF
UyhTVkdHcmFwaGljc0VsZW1lbnQpCisgICAgUkVHSVNURVJfUEFSRU5UX0FOSU1BVEVEX1BST1BF
UlRJRVMoU1ZHR2VvbWV0cnlFbGVtZW50KQogRU5EX1JFR0lTVEVSX0FOSU1BVEVEX1BST1BFUlRJ
RVMKIAogaW5saW5lIFNWR0NpcmNsZUVsZW1lbnQ6OlNWR0NpcmNsZUVsZW1lbnQoY29uc3QgUXVh
bGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQmIGRvY3VtZW50KQotICAgIDogU1ZHR3JhcGhp
Y3NFbGVtZW50KHRhZ05hbWUsIGRvY3VtZW50KQorICAgIDogU1ZHR2VvbWV0cnlFbGVtZW50KHRh
Z05hbWUsIGRvY3VtZW50KQogICAgICwgbV9jeChMZW5ndGhNb2RlV2lkdGgpCiAgICAgLCBtX2N5
KExlbmd0aE1vZGVIZWlnaHQpCiAgICAgLCBtX3IoTGVuZ3RoTW9kZU90aGVyKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdDaXJjbGVFbGVtZW50LmgKaW5kZXggOTlhMjc3OWVjMTEzZTY5NGUyMjVlZmU3ZDdi
N2Q1MzAyNmU1ZmU3OS4uYWMzYmJiMTUyYTE3MTgwNmJkZmRmYjI4YjcyNTJkZTA2NjY4NGMwMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ2lyY2xlRWxlbWVudC5oCkBAIC0yMywxMSArMjMsMTEgQEAK
ICNpbmNsdWRlICJTVkdBbmltYXRlZEJvb2xlYW4uaCIKICNpbmNsdWRlICJTVkdBbmltYXRlZExl
bmd0aC5oIgogI2luY2x1ZGUgIlNWR0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQuaCIKLSNpbmNs
dWRlICJTVkdHcmFwaGljc0VsZW1lbnQuaCIKKyNpbmNsdWRlICJTVkdHZW9tZXRyeUVsZW1lbnQu
aCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBTVkdDaXJjbGVFbGVtZW50IGZpbmFs
IDogcHVibGljIFNWR0dyYXBoaWNzRWxlbWVudCwgcHVibGljIFNWR0V4dGVybmFsUmVzb3VyY2Vz
UmVxdWlyZWQgeworY2xhc3MgU1ZHQ2lyY2xlRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBTVkdHZW9t
ZXRyeUVsZW1lbnQsIHB1YmxpYyBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkIHsKICAgICBX
VEZfTUFLRV9JU09fQUxMT0NBVEVEKFNWR0NpcmNsZUVsZW1lbnQpOwogcHVibGljOgogICAgIHN0
YXRpYyBSZWY8U1ZHQ2lyY2xlRWxlbWVudD4gY3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmLCBE
b2N1bWVudCYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1l
bnQuaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuaWRsCmluZGV4IDI2
ZTllZjZkYTQ4OTFlMzc4ODgxN2FhYTRjMTg0YWRkY2Q2NmQ0ZTguLjU0ZTFhYjRmMGYxMmE3MzQ0
YTYwMDI1MGM1MTRjMjI4YjE0YWM4M2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdDaXJjbGVFbGVtZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ2lyY2xlRWxl
bWVudC5pZGwKQEAgLTI0LDcgKzI0LDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLWludGVy
ZmFjZSBTVkdDaXJjbGVFbGVtZW50IDogU1ZHR3JhcGhpY3NFbGVtZW50IHsKK2ludGVyZmFjZSBT
VkdDaXJjbGVFbGVtZW50IDogU1ZHR2VvbWV0cnlFbGVtZW50IHsKICAgICByZWFkb25seSBhdHRy
aWJ1dGUgU1ZHQW5pbWF0ZWRMZW5ndGggY3g7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFNWR0Fu
aW1hdGVkTGVuZ3RoIGN5OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdBbmltYXRlZExlbmd0
aCByOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsbGlwc2VFbGVtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGxpcHNlRWxlbWVudC5jcHAKaW5kZXggZmJjYjQ3
NWIzYTVlNjVjZTI2MWY1Nzk5YmFiZmE1ODNlZGFkOTQwMS4uOTZhNjc3NDUzNWVlMzBlODZiZTZi
Njk4Y2I0ODhlMDkzYzdiNTRmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0Vs
bGlwc2VFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRWxsaXBzZUVsZW1l
bnQuY3BwCkBAIC00NiwxMSArNDYsMTEgQEAgQkVHSU5fUkVHSVNURVJfQU5JTUFURURfUFJPUEVS
VElFUyhTVkdFbGxpcHNlRWxlbWVudCkKICAgICBSRUdJU1RFUl9MT0NBTF9BTklNQVRFRF9QUk9Q
RVJUWShyeCkKICAgICBSRUdJU1RFUl9MT0NBTF9BTklNQVRFRF9QUk9QRVJUWShyeSkKICAgICBS
RUdJU1RFUl9MT0NBTF9BTklNQVRFRF9QUk9QRVJUWShleHRlcm5hbFJlc291cmNlc1JlcXVpcmVk
KQotICAgIFJFR0lTVEVSX1BBUkVOVF9BTklNQVRFRF9QUk9QRVJUSUVTKFNWR0dyYXBoaWNzRWxl
bWVudCkKKyAgICBSRUdJU1RFUl9QQVJFTlRfQU5JTUFURURfUFJPUEVSVElFUyhTVkdHZW9tZXRy
eUVsZW1lbnQpCiBFTkRfUkVHSVNURVJfQU5JTUFURURfUFJPUEVSVElFUwogCiBpbmxpbmUgU1ZH
RWxsaXBzZUVsZW1lbnQ6OlNWR0VsbGlwc2VFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRh
Z05hbWUsIERvY3VtZW50JiBkb2N1bWVudCkKLSAgICA6IFNWR0dyYXBoaWNzRWxlbWVudCh0YWdO
YW1lLCBkb2N1bWVudCkKKyAgICA6IFNWR0dlb21ldHJ5RWxlbWVudCh0YWdOYW1lLCBkb2N1bWVu
dCkKICAgICAsIG1fY3goTGVuZ3RoTW9kZVdpZHRoKQogICAgICwgbV9jeShMZW5ndGhNb2RlSGVp
Z2h0KQogICAgICwgbV9yeChMZW5ndGhNb2RlV2lkdGgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHRWxsaXBzZUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGxp
cHNlRWxlbWVudC5oCmluZGV4IDU1Y2M1ODBjMTAyMjhkZjljN2JiODMwMTIwMjhmYWM3ZDk4ZDM1
YjIuLjI1NzAzMjdmZmQ2ZDU3ZjVjMDFjZjg2YWE0YmFkMGZhYTk3MGYzYzcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGxpcHNlRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdFbGxpcHNlRWxlbWVudC5oCkBAIC0yMywxMSArMjMsMTEgQEAKICNpbmNsdWRl
ICJTVkdBbmltYXRlZEJvb2xlYW4uaCIKICNpbmNsdWRlICJTVkdBbmltYXRlZExlbmd0aC5oIgog
I2luY2x1ZGUgIlNWR0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQuaCIKLSNpbmNsdWRlICJTVkdH
cmFwaGljc0VsZW1lbnQuaCIKKyNpbmNsdWRlICJTVkdHZW9tZXRyeUVsZW1lbnQuaCIKIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBTVkdFbGxpcHNlRWxlbWVudCBmaW5hbCA6IHB1Ymxp
YyBTVkdHcmFwaGljc0VsZW1lbnQsIHB1YmxpYyBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVk
IHsKK2NsYXNzIFNWR0VsbGlwc2VFbGVtZW50IGZpbmFsIDogcHVibGljIFNWR0dlb21ldHJ5RWxl
bWVudCwgcHVibGljIFNWR0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQgewogICAgIFdURl9NQUtF
X0lTT19BTExPQ0FURUQoU1ZHRWxsaXBzZUVsZW1lbnQpOwogcHVibGljOgogICAgIHN0YXRpYyBS
ZWY8U1ZHRWxsaXBzZUVsZW1lbnQ+IGNyZWF0ZShjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1l
bnQmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGxpcHNlRWxlbWVudC5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRWxsaXBzZUVsZW1lbnQuaWRsCmluZGV4IDE2YTU5
ODhlYTUyZTBhOGQwZTRhZjY2NzM1MTZlYTY0NzdiMWZiYTIuLjdkMDlhNjVjNThjY2UyOWMwZGY2
NTM3ODI2ODJlOTUwYWNiYzM4ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdF
bGxpcHNlRWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsbGlwc2VFbGVt
ZW50LmlkbApAQCAtMjMsNyArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotaW50ZXJm
YWNlIFNWR0VsbGlwc2VFbGVtZW50IDogU1ZHR3JhcGhpY3NFbGVtZW50IHsKK2ludGVyZmFjZSBT
VkdFbGxpcHNlRWxlbWVudCA6IFNWR0dlb21ldHJ5RWxlbWVudCB7CiAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIFNWR0FuaW1hdGVkTGVuZ3RoIGN4OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdB
bmltYXRlZExlbmd0aCBjeTsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgU1ZHQW5pbWF0ZWRMZW5n
dGggcng7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHR2VvbWV0cnlFbGVtZW50
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdHZW9tZXRyeUVsZW1lbnQuY3BwCmluZGV4IDFh
ZmI1N2UyN2EwMDBjZjBlZTc2OTQ0NDIyZTZjYjkyNDkyNmVjM2YuLjg2YTQ1NDRjZDE5YzgxOGFk
YWZkZWE0YWYzN2JiNzFhZWFkNGZlNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdHZW9tZXRyeUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdHZW9tZXRy
eUVsZW1lbnQuY3BwCkBAIC01Miw2ICs1MiwzMCBAQCBTVkdHZW9tZXRyeUVsZW1lbnQ6OlNWR0dl
b21ldHJ5RWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCYgZAog
ICAgIHJlZ2lzdGVyQW5pbWF0ZWRQcm9wZXJ0aWVzRm9yU1ZHR2VvbWV0cnlFbGVtZW50KCk7CiB9
CiAKK2Zsb2F0IFNWR0dlb21ldHJ5RWxlbWVudDo6Z2V0VG90YWxMZW5ndGgoKSBjb25zdAorewor
ICAgIGRvY3VtZW50KCkudXBkYXRlTGF5b3V0SWdub3JlUGVuZGluZ1N0eWxlc2hlZXRzKCk7CisK
KyAgICBhdXRvKiByZW5kZXJlciA9IGRvd25jYXN0PFJlbmRlclNWR1NoYXBlPih0aGlzLT5yZW5k
ZXJlcigpKTsKKyAgICBpZiAoIXJlbmRlcmVyKQorICAgICAgICByZXR1cm4gMDsKKworICAgIHJl
dHVybiByZW5kZXJlci0+Z2V0VG90YWxMZW5ndGgoKTsKK30KKworUmVmPFNWR1BvaW50PiBTVkdH
ZW9tZXRyeUVsZW1lbnQ6OmdldFBvaW50QXRMZW5ndGgoZmxvYXQgZGlzdGFuY2UpIGNvbnN0Cit7
CisgICAgRmxvYXRQb2ludCBwb2ludCB7IH07CisKKyAgICBkb2N1bWVudCgpLnVwZGF0ZUxheW91
dElnbm9yZVBlbmRpbmdTdHlsZXNoZWV0cygpOworCisgICAgYXV0byogcmVuZGVyZXIgPSBkb3du
Y2FzdDxSZW5kZXJTVkdTaGFwZT4odGhpcy0+cmVuZGVyZXIoKSk7CisgICAgaWYgKHJlbmRlcmVy
KQorICAgICAgICByZW5kZXJlci0+Z2V0UG9pbnRBdExlbmd0aChwb2ludCwgZGlzdGFuY2UpOwor
CisgICAgcmV0dXJuIFNWR1BvaW50OjpjcmVhdGUocG9pbnQpOworfQorCiBib29sIFNWR0dlb21l
dHJ5RWxlbWVudDo6aXNQb2ludEluRmlsbChET01Qb2ludEluaXQmJiBwb2ludEluaXQpCiB7CiAg
ICAgZG9jdW1lbnQoKS51cGRhdGVMYXlvdXRJZ25vcmVQZW5kaW5nU3R5bGVzaGVldHMoKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdHZW9tZXRyeUVsZW1lbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdHZW9tZXRyeUVsZW1lbnQuaAppbmRleCBmZmYwMjYyMzk2NTNkOTU3
OGNlMGRlMzA3NjM1NGE5NjAzN2RlNWQ5Li45MmQ4NjQ1OGM1NDU1YjM5NDJkMjc5YWJiNzc4NmIx
M2Q0MWQyZWNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHR2VvbWV0cnlFbGVt
ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0dlb21ldHJ5RWxlbWVudC5oCkBAIC0z
Nyw4ICszNyw4IEBAIGNsYXNzIFNWR0dlb21ldHJ5RWxlbWVudCA6IHB1YmxpYyBTVkdHcmFwaGlj
c0VsZW1lbnQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoU1ZHR2VvbWV0cnlFbGVtZW50
KTsKIHB1YmxpYzoKICAgICAKLSAgICB2aXJ0dWFsIGZsb2F0IGdldFRvdGFsTGVuZ3RoKCkgY29u
c3QgPSAwOwotICAgIHZpcnR1YWwgUmVmPFNWR1BvaW50PiBnZXRQb2ludEF0TGVuZ3RoKGZsb2F0
IGRpc3RhbmNlKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBmbG9hdCBnZXRUb3RhbExlbmd0aCgp
IGNvbnN0OworICAgIHZpcnR1YWwgUmVmPFNWR1BvaW50PiBnZXRQb2ludEF0TGVuZ3RoKGZsb2F0
IGRpc3RhbmNlKSBjb25zdDsKIAogICAgIGJvb2wgaXNQb2ludEluRmlsbChET01Qb2ludEluaXQm
Jik7CiAgICAgYm9vbCBpc1BvaW50SW5TdHJva2UoRE9NUG9pbnRJbml0JiYpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0xpbmVFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdMaW5lRWxlbWVudC5jcHAKaW5kZXggNDA2ZmFiYzgxZGU3ZDk3OTM5MDg0NDVkZjAy
NjU5YTk3OGE3MjcxYS4uMzQ4MTVkZjE2MzI1YThkY2MzZTJiY2NmYTE0MzE3YTUyZDk1MTgwYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0xpbmVFbGVtZW50LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHTGluZUVsZW1lbnQuY3BwCkBAIC00NiwxMSArNDYsMTEgQEAg
QkVHSU5fUkVHSVNURVJfQU5JTUFURURfUFJPUEVSVElFUyhTVkdMaW5lRWxlbWVudCkKICAgICBS
RUdJU1RFUl9MT0NBTF9BTklNQVRFRF9QUk9QRVJUWSh4MikKICAgICBSRUdJU1RFUl9MT0NBTF9B
TklNQVRFRF9QUk9QRVJUWSh5MikKICAgICBSRUdJU1RFUl9MT0NBTF9BTklNQVRFRF9QUk9QRVJU
WShleHRlcm5hbFJlc291cmNlc1JlcXVpcmVkKQotICAgIFJFR0lTVEVSX1BBUkVOVF9BTklNQVRF
RF9QUk9QRVJUSUVTKFNWR0dyYXBoaWNzRWxlbWVudCkKKyAgICBSRUdJU1RFUl9QQVJFTlRfQU5J
TUFURURfUFJPUEVSVElFUyhTVkdHZW9tZXRyeUVsZW1lbnQpCiBFTkRfUkVHSVNURVJfQU5JTUFU
RURfUFJPUEVSVElFUwogCiBpbmxpbmUgU1ZHTGluZUVsZW1lbnQ6OlNWR0xpbmVFbGVtZW50KGNv
bnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50JiBkb2N1bWVudCkKLSAgICA6IFNW
R0dyYXBoaWNzRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkKKyAgICA6IFNWR0dlb21ldHJ5RWxl
bWVudCh0YWdOYW1lLCBkb2N1bWVudCkKICAgICAsIG1feDEoTGVuZ3RoTW9kZVdpZHRoKQogICAg
ICwgbV95MShMZW5ndGhNb2RlSGVpZ2h0KQogICAgICwgbV94MihMZW5ndGhNb2RlV2lkdGgpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTGluZUVsZW1lbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdMaW5lRWxlbWVudC5oCmluZGV4IGY0OTBiNTA4MGI0M2E2YTg3OTgzNTBj
ODlmNmMzN2M3NjBlNDZjMDguLjYwOWI2ZDkzZDA0YzcxYTk4MjY5M2M0YTRkNmFkMmNkZTFiMzE5
NDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdMaW5lRWxlbWVudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdMaW5lRWxlbWVudC5oCkBAIC0yMywxMSArMjMsMTEgQEAK
ICNpbmNsdWRlICJTVkdBbmltYXRlZEJvb2xlYW4uaCIKICNpbmNsdWRlICJTVkdBbmltYXRlZExl
bmd0aC5oIgogI2luY2x1ZGUgIlNWR0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQuaCIKLSNpbmNs
dWRlICJTVkdHcmFwaGljc0VsZW1lbnQuaCIKKyNpbmNsdWRlICJTVkdHZW9tZXRyeUVsZW1lbnQu
aCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBTVkdMaW5lRWxlbWVudCBmaW5hbCA6
IHB1YmxpYyBTVkdHcmFwaGljc0VsZW1lbnQsIHB1YmxpYyBTVkdFeHRlcm5hbFJlc291cmNlc1Jl
cXVpcmVkIHsKK2NsYXNzIFNWR0xpbmVFbGVtZW50IGZpbmFsIDogcHVibGljIFNWR0dlb21ldHJ5
RWxlbWVudCwgcHVibGljIFNWR0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQgewogICAgIFdURl9N
QUtFX0lTT19BTExPQ0FURUQoU1ZHTGluZUVsZW1lbnQpOwogcHVibGljOgogICAgIHN0YXRpYyBS
ZWY8U1ZHTGluZUVsZW1lbnQ+IGNyZWF0ZShjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQm
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdMaW5lRWxlbWVudC5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHTGluZUVsZW1lbnQuaWRsCmluZGV4IDZjOGRlNjZlYzg4MGNj
MmRiODRiZGQ0YjRiZTMwMjEyN2MyY2E0ZmIuLjhkMDg0NTEzMGZkNDIyZGI0YzA2YjhmYTk5MmQx
N2QzYTNkMWM4YzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdMaW5lRWxlbWVu
dC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0xpbmVFbGVtZW50LmlkbApAQCAtMjMs
NyArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotaW50ZXJmYWNlIFNWR0xpbmVFbGVt
ZW50IDogU1ZHR3JhcGhpY3NFbGVtZW50IHsKK2ludGVyZmFjZSBTVkdMaW5lRWxlbWVudCA6IFNW
R0dlb21ldHJ5RWxlbWVudCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFNWR0FuaW1hdGVkTGVu
Z3RoIHgxOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdBbmltYXRlZExlbmd0aCB5MTsKICAg
ICByZWFkb25seSBhdHRyaWJ1dGUgU1ZHQW5pbWF0ZWRMZW5ndGggeDI7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHUG9seUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR1BvbHlFbGVtZW50LmNwcAppbmRleCA5MWRlY2JmYzVlOTM2N2U5NDBiNWI2MjM4NDZjZTZm
Yzg1YmU0M2MzLi42MjhkM2NkMjE2MDkxNzZkMzYxYTUyODcxNWVjMjU3MmE5OTYwMjgyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUG9seUVsZW1lbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdQb2x5RWxlbWVudC5jcHAKQEAgLTU3LDExICs1NywxMSBAQCBERUZJ
TkVfQU5JTUFURURfQk9PTEVBTihTVkdQb2x5RWxlbWVudCwgU1ZHTmFtZXM6OmV4dGVybmFsUmVz
b3VyY2VzUmVxdWlyZWRBdHRyLAogQkVHSU5fUkVHSVNURVJfQU5JTUFURURfUFJPUEVSVElFUyhT
VkdQb2x5RWxlbWVudCkKICAgICBSRUdJU1RFUl9MT0NBTF9BTklNQVRFRF9QUk9QRVJUWShwb2lu
dHMpCiAgICAgUkVHSVNURVJfTE9DQUxfQU5JTUFURURfUFJPUEVSVFkoZXh0ZXJuYWxSZXNvdXJj
ZXNSZXF1aXJlZCkKLSAgICBSRUdJU1RFUl9QQVJFTlRfQU5JTUFURURfUFJPUEVSVElFUyhTVkdH
cmFwaGljc0VsZW1lbnQpCisgICAgUkVHSVNURVJfUEFSRU5UX0FOSU1BVEVEX1BST1BFUlRJRVMo
U1ZHR2VvbWV0cnlFbGVtZW50KQogRU5EX1JFR0lTVEVSX0FOSU1BVEVEX1BST1BFUlRJRVMKIAog
U1ZHUG9seUVsZW1lbnQ6OlNWR1BvbHlFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05h
bWUsIERvY3VtZW50JiBkb2N1bWVudCkKLSAgICA6IFNWR0dyYXBoaWNzRWxlbWVudCh0YWdOYW1l
LCBkb2N1bWVudCkKKyAgICA6IFNWR0dlb21ldHJ5RWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkK
IHsKICAgICByZWdpc3RlckFuaW1hdGVkUHJvcGVydGllc0ZvclNWR1BvbHlFbGVtZW50KCk7ICAg
IAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BvbHlFbGVtZW50LmggYi9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHUG9seUVsZW1lbnQuaAppbmRleCA2YjZiOTVkZTkxNTg0MTFj
OTMxN2Q3OWM2MjU2MGI1YjEwMzI4ZDk4Li5kZjc2MGUwYjA4MGRjMTYxZGEzMTk3YjRiOTI5Njg3
NGY3OTRjNmI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUG9seUVsZW1lbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUG9seUVsZW1lbnQuaApAQCAtMjIsMTMgKzIy
LDEzIEBACiAKICNpbmNsdWRlICJTVkdBbmltYXRlZEJvb2xlYW4uaCIKICNpbmNsdWRlICJTVkdF
eHRlcm5hbFJlc291cmNlc1JlcXVpcmVkLmgiCi0jaW5jbHVkZSAiU1ZHR3JhcGhpY3NFbGVtZW50
LmgiCisjaW5jbHVkZSAiU1ZHR2VvbWV0cnlFbGVtZW50LmgiCiAjaW5jbHVkZSAiU1ZHTmFtZXMu
aCIKICNpbmNsdWRlICJTVkdQb2ludExpc3RWYWx1ZXMuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCi1jbGFzcyBTVkdQb2x5RWxlbWVudCA6IHB1YmxpYyBTVkdHcmFwaGljc0VsZW1lbnQsIHB1
YmxpYyBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkIHsKK2NsYXNzIFNWR1BvbHlFbGVtZW50
IDogcHVibGljIFNWR0dlb21ldHJ5RWxlbWVudCwgcHVibGljIFNWR0V4dGVybmFsUmVzb3VyY2Vz
UmVxdWlyZWQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoU1ZHUG9seUVsZW1lbnQpOwog
cHVibGljOgogICAgIFJlZjxTVkdQb2ludExpc3Q+IHBvaW50cygpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvc3ZnL1NWR1BvbHlnb25FbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdQb2x5Z29uRWxlbWVudC5pZGwKaW5kZXggODE1ODM2NTAxMjMxZmM0MmViNWFlMWZhYjBh
ZGYzZDkwODg5MWM4Yi4uZTMxYjkyYmUwZGY3MWM1ZmRiMWM3MWUyY2QzOTRlODgxMWE0YmJlOCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BvbHlnb25FbGVtZW50LmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUG9seWdvbkVsZW1lbnQuaWRsCkBAIC0yMyw3ICsyMyw3
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi1pbnRlcmZhY2UgU1ZHUG9seWdvbkVsZW1lbnQg
OiBTVkdHcmFwaGljc0VsZW1lbnQgeworaW50ZXJmYWNlIFNWR1BvbHlnb25FbGVtZW50IDogU1ZH
R2VvbWV0cnlFbGVtZW50IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgU1ZHUG9pbnRMaXN0IHBv
aW50czsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgU1ZHUG9pbnRMaXN0IGFuaW1hdGVkUG9pbnRz
OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQb2x5bGluZUVsZW1lbnQu
aWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BvbHlsaW5lRWxlbWVudC5pZGwKaW5kZXggOTg2
NDU0YjNiMjAwNmExOTU0MGM2MmI1YThkMTQ2ZWFjMzFjYzkyYy4uYWU0ZDU2NzIxMTc1MzZkMTNh
YTU5ZDI4MmFlZDc3OTIyOWMyMTYyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R1BvbHlsaW5lRWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BvbHlsaW5l
RWxlbWVudC5pZGwKQEAgLTIzLDcgKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLWlu
dGVyZmFjZSBTVkdQb2x5bGluZUVsZW1lbnQgOiBTVkdHcmFwaGljc0VsZW1lbnQgeworaW50ZXJm
YWNlIFNWR1BvbHlsaW5lRWxlbWVudCA6IFNWR0dlb21ldHJ5RWxlbWVudCB7CiAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIFNWR1BvaW50TGlzdCBwb2ludHM7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IFNWR1BvaW50TGlzdCBhbmltYXRlZFBvaW50czsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHUmVjdEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1JlY3RF
bGVtZW50LmNwcAppbmRleCAxODhkY2YzZmQ0OWU0MDkyN2YyZDhiNDA0NzEwN2M1ODljZWU5OTM4
Li5hMDVmMmFiYjVjN2Q3YTk3MmNmMjM0MDQxNDI3OTUxNzZlYzE4NjFjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHUmVjdEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdSZWN0RWxlbWVudC5jcHAKQEAgLTUwLDExICs1MCwxMSBAQCBCRUdJTl9SRUdJU1RF
Ul9BTklNQVRFRF9QUk9QRVJUSUVTKFNWR1JlY3RFbGVtZW50KQogICAgIFJFR0lTVEVSX0xPQ0FM
X0FOSU1BVEVEX1BST1BFUlRZKHJ4KQogICAgIFJFR0lTVEVSX0xPQ0FMX0FOSU1BVEVEX1BST1BF
UlRZKHJ5KQogICAgIFJFR0lTVEVSX0xPQ0FMX0FOSU1BVEVEX1BST1BFUlRZKGV4dGVybmFsUmVz
b3VyY2VzUmVxdWlyZWQpCi0gICAgUkVHSVNURVJfUEFSRU5UX0FOSU1BVEVEX1BST1BFUlRJRVMo
U1ZHR3JhcGhpY3NFbGVtZW50KQorICAgIFJFR0lTVEVSX1BBUkVOVF9BTklNQVRFRF9QUk9QRVJU
SUVTKFNWR0dlb21ldHJ5RWxlbWVudCkKIEVORF9SRUdJU1RFUl9BTklNQVRFRF9QUk9QRVJUSUVT
CiAKIGlubGluZSBTVkdSZWN0RWxlbWVudDo6U1ZHUmVjdEVsZW1lbnQoY29uc3QgUXVhbGlmaWVk
TmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQmIGRvY3VtZW50KQotICAgIDogU1ZHR3JhcGhpY3NFbGVt
ZW50KHRhZ05hbWUsIGRvY3VtZW50KQorICAgIDogU1ZHR2VvbWV0cnlFbGVtZW50KHRhZ05hbWUs
IGRvY3VtZW50KQogICAgICwgbV94KExlbmd0aE1vZGVXaWR0aCkKICAgICAsIG1feShMZW5ndGhN
b2RlSGVpZ2h0KQogICAgICwgbV93aWR0aChMZW5ndGhNb2RlV2lkdGgpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHUmVjdEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdSZWN0RWxlbWVudC5oCmluZGV4IGI0Njg4MzBmZDU2NGQ3ZDM4MThmNDFmYTFhMzExZTZhOTBj
MmYxMDUuLmQyNDA4NjQzZjA0ZWE3YWI3OGVmZTZiMDY3ZTQwZDMzYTQ5YzJiZTQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdSZWN0RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdSZWN0RWxlbWVudC5oCkBAIC0yMywxMiArMjMsMTIgQEAKICNpbmNsdWRlICJT
VkdBbmltYXRlZEJvb2xlYW4uaCIKICNpbmNsdWRlICJTVkdBbmltYXRlZExlbmd0aC5oIgogI2lu
Y2x1ZGUgIlNWR0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQuaCIKLSNpbmNsdWRlICJTVkdHcmFw
aGljc0VsZW1lbnQuaCIKKyNpbmNsdWRlICJTVkdHZW9tZXRyeUVsZW1lbnQuaCIKICNpbmNsdWRl
ICJTVkdOYW1lcy5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFNWR1JlY3RFbGVt
ZW50IGZpbmFsIDogcHVibGljIFNWR0dyYXBoaWNzRWxlbWVudCwgcHVibGljIFNWR0V4dGVybmFs
UmVzb3VyY2VzUmVxdWlyZWQgeworY2xhc3MgU1ZHUmVjdEVsZW1lbnQgZmluYWwgOiBwdWJsaWMg
U1ZHR2VvbWV0cnlFbGVtZW50LCBwdWJsaWMgU1ZHRXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZCB7
CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChTVkdSZWN0RWxlbWVudCk7CiBwdWJsaWM6CiAg
ICAgc3RhdGljIFJlZjxTVkdSZWN0RWxlbWVudD4gY3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUm
LCBEb2N1bWVudCYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1JlY3RFbGVt
ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdSZWN0RWxlbWVudC5pZGwKaW5kZXggMDIz
OWU4MGMwNzNhMGY5NzE1NTAzYjBmMDg1MjlkNzQ0NGJiMDk1Ny4uZWNmY2VlNjlmY2ZkZWExYzUw
N2EzNWRjMzgyYzQzNWU0ZGViYTFhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R1JlY3RFbGVtZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUmVjdEVsZW1lbnQu
aWRsCkBAIC0yNCw3ICsyNCw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi1pbnRlcmZhY2Ug
U1ZHUmVjdEVsZW1lbnQgOiBTVkdHcmFwaGljc0VsZW1lbnQgeworaW50ZXJmYWNlIFNWR1JlY3RF
bGVtZW50IDogU1ZHR2VvbWV0cnlFbGVtZW50IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgU1ZH
QW5pbWF0ZWRMZW5ndGggeDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgU1ZHQW5pbWF0ZWRMZW5n
dGggeTsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgU1ZHQW5pbWF0ZWRMZW5ndGggd2lkdGg7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggOTg5MTZiZjI4MmNkZDVmZjQ4YTczZjI5OWRlYjQyZGY4Njc5MDJlNS4uNTNjYmZjODUx
ZGJiOWMyYjg5ZTViYmZjMzYzOWQ4NTFmNzZjNmFmMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisy
MDE4LTA1LTEzICBEaXJrIFNjaHVsemUgIDxkc2NodWx6ZUBjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgTWFrZSBhbGwgU1ZHIHNoYXBlIGludGVyZmFjZXMgaW5oZXJpdCBmcm9tIFNWR0dlb21ldHJ5
RWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTg1NjAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBzdmcvZG9tL1NWR0dlb21ldHJ5LWNpcmNsZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIHN2Zy9kb20vU1ZHR2VvbWV0cnktY2lyY2xlLnhodG1sOiBBZGRlZC4KKyAgICAgICAgKiBz
dmcvZG9tL1NWR0dlb21ldHJ5LWVsbGlwc2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBzdmcvZG9tL1NWR0dlb21ldHJ5LWVsbGlwc2UueGh0bWw6IEFkZGVkLgorICAgICAgICAqIHN2
Zy9kb20vU1ZHR2VvbWV0cnktbGluZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHN2
Zy9kb20vU1ZHR2VvbWV0cnktbGluZS54aHRtbDogQWRkZWQuCisgICAgICAgICogc3ZnL2RvbS9T
VkdHZW9tZXRyeS1wb2x5Z29uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogc3ZnL2Rv
bS9TVkdHZW9tZXRyeS1wb2x5Z29uLnhodG1sOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvZG9tL1NW
R0dlb21ldHJ5LXBvbHlsaW5lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogc3ZnL2Rv
bS9TVkdHZW9tZXRyeS1wb2x5bGluZS54aHRtbDogQWRkZWQuCisgICAgICAgICogc3ZnL2RvbS9T
VkdHZW9tZXRyeS1yZWN0LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogc3ZnL2RvbS9T
VkdHZW9tZXRyeS1yZWN0LnhodG1sOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvZG9tL3N2ZzItaW5o
ZXJpdGFuY2UtZXhwZWN0ZWQudHh0OgorCiAyMDE4LTA1LTEzICBEaXJrIFNjaHVsemUgIDxrcml0
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgSW1wbGVtZW50IFNWR0dlb21ldHJ5RWxlbWVudCdzIGlz
UG9pbnRJbkZpbGwgYW5kIGlzUG9pbnRJblN0cm9rZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
c3ZnL2RvbS9TVkdHZW9tZXRyeS1jaXJjbGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3Zn
L2RvbS9TVkdHZW9tZXRyeS1jaXJjbGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBlNzZhZGFj
NzkyNmJlZDc2NjJjMTBhMzc1MWMxNGZmOTFmNWI1YmMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9zdmcvZG9tL1NWR0dlb21ldHJ5LWNpcmNsZS1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSw0OSBAQAorVGVzdCBTVkdHZW9tZXRyeUVsZW1lbnQgQVBJcyBmb3IgY2lyY2xlLgorCitPbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCitUZXN0IGlzUG9pbnRJbkZpbGwoKQorUEFTUyBj
MS5pc1BvaW50SW5GaWxsKHt9KSBpcyBmYWxzZQorUEFTUyBjMS5pc1BvaW50SW5GaWxsKHt4OiA1
MCwgeTogNTB9KSBpcyB0cnVlCitQQVNTIGMxLmlzUG9pbnRJbkZpbGwoe3g6IDAsIHk6IDUwfSkg
aXMgdHJ1ZQorUEFTUyBjMS5pc1BvaW50SW5GaWxsKHt4OiAxMDAsIHk6IDUwfSkgaXMgdHJ1ZQor
UEFTUyBjMS5pc1BvaW50SW5GaWxsKHt4OiA1MCwgeTogMH0pIGlzIHRydWUKK1BBU1MgYzEuaXNQ
b2ludEluRmlsbCh7eDogNTAsIHk6IDEwMH0pIGlzIHRydWUKK1BBU1MgYzEuaXNQb2ludEluRmls
bCh7eDogLTEsIHk6IDUwfSkgaXMgZmFsc2UKK1BBU1MgYzEuaXNQb2ludEluRmlsbCh7eDogMTAx
LCB5OiA1MH0pIGlzIGZhbHNlCitQQVNTIGMxLmlzUG9pbnRJbkZpbGwoe3g6IDUwLCB5OiAtMX0p
IGlzIGZhbHNlCitQQVNTIGMxLmlzUG9pbnRJbkZpbGwoe3g6IDUwLCB5OiAxMDF9KSBpcyBmYWxz
ZQorUEFTUyBjMS5pc1BvaW50SW5GaWxsKHt4OiA5MCwgeTogOTB9KSBpcyBmYWxzZQorUEFTUyBj
MS5pc1BvaW50SW5GaWxsKHt4OiAxMCwgeTogMTB9KSBpcyBmYWxzZQorUEFTUyBjMS5pc1BvaW50
SW5GaWxsKHt4OiA5MCwgeTogMTB9KSBpcyBmYWxzZQorUEFTUyBjMS5pc1BvaW50SW5GaWxsKHt4
OiAxMCwgeTogOTB9KSBpcyBmYWxzZQorCitUZXN0IGlzUG9pbnRJblN0cm9rZSgpCitQQVNTIGMx
LmlzUG9pbnRJblN0cm9rZSh7fSkgaXMgZmFsc2UKK1BBU1MgYzEuaXNQb2ludEluU3Ryb2tlKHt4
OiA1MCwgeTogNTB9KSBpcyBmYWxzZQorUEFTUyBjMS5pc1BvaW50SW5TdHJva2Uoe3g6IDEwMCwg
eTogNTF9KSBpcyBmYWxzZQorUEFTUyBjMS5pc1BvaW50SW5TdHJva2Uoe3g6IDEwMCwgeTogNDl9
KSBpcyB0cnVlCitQQVNTIGMxLmlzUG9pbnRJblN0cm9rZSh7eDogMCwgeTogNTB9KSBpcyB0cnVl
CitQQVNTIGMxLmlzUG9pbnRJblN0cm9rZSh7eDogNTIsIHk6IDEwMH0pIGlzIHRydWUKK1BBU1Mg
YzEuaXNQb2ludEluU3Ryb2tlKHt4OiA0OCwgeTogMTAwfSkgaXMgZmFsc2UKKworVGVzdCBnZXRU
b3RhbExlbmd0aCgpCitQQVNTIGMxLmdldFRvdGFsTGVuZ3RoKCkgaXMgd2l0aGluIDAuMSBvZiAz
MTQuMTU5MjY1MzU4OTc5MworCitUZXN0IGdldFBvaW50QXRMZW5ndGgoKQorUEFTUyBjMS5nZXRQ
b2ludEF0TGVuZ3RoKDApLnggaXMgd2l0aGluIDAuMSBvZiAxMDAKK1BBU1MgYzEuZ2V0UG9pbnRB
dExlbmd0aCgwKS55IGlzIHdpdGhpbiAwLjEgb2YgNTAKK1BBU1MgYzEuZ2V0UG9pbnRBdExlbmd0
aChNYXRoLlBJICogMTAwIC8gNCkueCBpcyB3aXRoaW4gMC4xIG9mIDUwCitQQVNTIGMxLmdldFBv
aW50QXRMZW5ndGgoTWF0aC5QSSAqIDEwMCAvIDQpLnkgaXMgd2l0aGluIDAuMSBvZiAxMDAKK1BB
U1MgYzEuZ2V0UG9pbnRBdExlbmd0aChNYXRoLlBJICogMTAwIC8gMikueCBpcyB3aXRoaW4gMC4x
IG9mIDAKK1BBU1MgYzEuZ2V0UG9pbnRBdExlbmd0aChNYXRoLlBJICogMTAwIC8gMikueSBpcyB3
aXRoaW4gMC4xIG9mIDUwCitQQVNTIGMxLmdldFBvaW50QXRMZW5ndGgoTWF0aC5QSSAqIDEwMCAv
IDgpLnggaXMgd2l0aGluIDEgb2YgODUuMzUKK1BBU1MgYzEuZ2V0UG9pbnRBdExlbmd0aChNYXRo
LlBJICogMTAwIC8gOCkueSBpcyB3aXRoaW4gMSBvZiA4NS4zNQorUEFTUyBjMS5nZXRQb2ludEF0
TGVuZ3RoKE1hdGguUEkgKiAxMDAgKiAyKS54IGlzIHdpdGhpbiAwLjEgb2YgMTAwCitQQVNTIGMx
LmdldFBvaW50QXRMZW5ndGgoTWF0aC5QSSAqIDEwMCAqIDIpLnkgaXMgd2l0aGluIDAuMSBvZiA1
MAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktY2lyY2xlLnhodG1sIGIv
TGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1jaXJjbGUueGh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NzY0MTkxMTM1MGU3NGJmMjMyMWFhN2IzYjdjODU4Y2FiZjUxN2Q0NQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktY2lyY2xlLnhodG1sCkBAIC0wLDAg
KzEsNzAgQEAKKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKzxo
ZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1bigpIj4KKzxzdmcgaWQ9InN2ZyIgeG1sbnM9
Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+Cisg
ICAgPGNpcmNsZSBpZD0iYzEiIGN4PSI1MCIgY3k9IjUwIiByPSI1MCIgZmlsbD0ibm9uZSIgc3Ry
b2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyMCIgc3Ryb2tlLWRhc2hvZmZzZXQ9IjIwIiBzdHJv
a2UtZGFzaGFycmF5PSIyMCAyMCIvPgorPC9zdmc+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4K
KzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
PgorPCFbQ0RBVEFbCit3aW5kb3cuZW5hYmxlUGl4ZWxUZXN0aW5nID0gZmFsc2U7Cit3aW5kb3cu
anNUZXN0SXNBc3luYyA9IHRydWU7Cit2YXIgYzEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
YzEiKTsKKworZnVuY3Rpb24gcnVuKCkgeworICAgIGRlc2NyaXB0aW9uKCJUZXN0IFNWR0dlb21l
dHJ5RWxlbWVudCBBUElzIGZvciBjaXJjbGUuIik7CisKKyAgICBkZWJ1ZygiIik7CisgICAgZGVi
dWcoIlRlc3QgaXNQb2ludEluRmlsbCgpIik7CisgICAgc2hvdWxkQmUoImMxLmlzUG9pbnRJbkZp
bGwoe30pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoImMxLmlzUG9pbnRJbkZpbGwoe3g6IDUw
LCB5OiA1MH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgiYzEuaXNQb2ludEluRmlsbCh7eDog
MCwgeTogNTB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoImMxLmlzUG9pbnRJbkZpbGwoe3g6
IDEwMCwgeTogNTB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoImMxLmlzUG9pbnRJbkZpbGwo
e3g6IDUwLCB5OiAwfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJjMS5pc1BvaW50SW5GaWxs
KHt4OiA1MCwgeTogMTAwfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJjMS5pc1BvaW50SW5G
aWxsKHt4OiAtMSwgeTogNTB9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJjMS5pc1BvaW50
SW5GaWxsKHt4OiAxMDEsIHk6IDUwfSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgiYzEuaXNQ
b2ludEluRmlsbCh7eDogNTAsIHk6IC0xfSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgiYzEu
aXNQb2ludEluRmlsbCh7eDogNTAsIHk6IDEwMX0pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUo
ImMxLmlzUG9pbnRJbkZpbGwoe3g6IDkwLCB5OiA5MH0pIiwgImZhbHNlIik7CisgICAgc2hvdWxk
QmUoImMxLmlzUG9pbnRJbkZpbGwoe3g6IDEwLCB5OiAxMH0pIiwgImZhbHNlIik7CisgICAgc2hv
dWxkQmUoImMxLmlzUG9pbnRJbkZpbGwoe3g6IDkwLCB5OiAxMH0pIiwgImZhbHNlIik7CisgICAg
c2hvdWxkQmUoImMxLmlzUG9pbnRJbkZpbGwoe3g6IDEwLCB5OiA5MH0pIiwgImZhbHNlIik7CisK
KyAgICBkZWJ1ZygiIik7CisgICAgZGVidWcoIlRlc3QgaXNQb2ludEluU3Ryb2tlKCkiKTsKKyAg
ICBzaG91bGRCZSgiYzEuaXNQb2ludEluU3Ryb2tlKHt9KSIsICJmYWxzZSIpOworICAgIHNob3Vs
ZEJlKCJjMS5pc1BvaW50SW5TdHJva2Uoe3g6IDUwLCB5OiA1MH0pIiwgImZhbHNlIik7CisgICAg
c2hvdWxkQmUoImMxLmlzUG9pbnRJblN0cm9rZSh7eDogMTAwLCB5OiA1MX0pIiwgImZhbHNlIik7
CisgICAgc2hvdWxkQmUoImMxLmlzUG9pbnRJblN0cm9rZSh7eDogMTAwLCB5OiA0OX0pIiwgInRy
dWUiKTsKKyAgICBzaG91bGRCZSgiYzEuaXNQb2ludEluU3Ryb2tlKHt4OiAwLCB5OiA1MH0pIiwg
InRydWUiKTsKKyAgICBzaG91bGRCZSgiYzEuaXNQb2ludEluU3Ryb2tlKHt4OiA1MiwgeTogMTAw
fSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJjMS5pc1BvaW50SW5TdHJva2Uoe3g6IDQ4LCB5
OiAxMDB9KSIsICJmYWxzZSIpOworCisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJUZXN0IGdl
dFRvdGFsTGVuZ3RoKCkiKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oImMxLmdldFRvdGFsTGVuZ3Ro
KCkiLCBNYXRoLlBJICogMTAwLCAwLjEpOworCisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJU
ZXN0IGdldFBvaW50QXRMZW5ndGgoKSIpOworICAgIHNob3VsZEJlQ2xvc2VUbygiYzEuZ2V0UG9p
bnRBdExlbmd0aCgwKS54IiwgMTAwLCAwLjEpOworICAgIHNob3VsZEJlQ2xvc2VUbygiYzEuZ2V0
UG9pbnRBdExlbmd0aCgwKS55IiwgNTAsIDAuMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJjMS5n
ZXRQb2ludEF0TGVuZ3RoKE1hdGguUEkgKiAxMDAgLyA0KS54IiwgNTAsIDAuMSk7CisgICAgc2hv
dWxkQmVDbG9zZVRvKCJjMS5nZXRQb2ludEF0TGVuZ3RoKE1hdGguUEkgKiAxMDAgLyA0KS55Iiwg
MTAwLCAwLjEpOworICAgIHNob3VsZEJlQ2xvc2VUbygiYzEuZ2V0UG9pbnRBdExlbmd0aChNYXRo
LlBJICogMTAwIC8gMikueCIsIDAsIDAuMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJjMS5nZXRQ
b2ludEF0TGVuZ3RoKE1hdGguUEkgKiAxMDAgLyAyKS55IiwgNTAsIDAuMSk7CisgICAgc2hvdWxk
QmVDbG9zZVRvKCJjMS5nZXRQb2ludEF0TGVuZ3RoKE1hdGguUEkgKiAxMDAgLyA4KS54IiwgODUu
MzUsIDEpOworICAgIHNob3VsZEJlQ2xvc2VUbygiYzEuZ2V0UG9pbnRBdExlbmd0aChNYXRoLlBJ
ICogMTAwIC8gOCkueSIsIDg1LjM1LCAxKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oImMxLmdldFBv
aW50QXRMZW5ndGgoTWF0aC5QSSAqIDEwMCAqIDIpLngiLCAxMDAsIDAuMSk7CisgICAgc2hvdWxk
QmVDbG9zZVRvKCJjMS5nZXRQb2ludEF0TGVuZ3RoKE1hdGguUEkgKiAxMDAgKiAyKS55IiwgNTAs
IDAuMSk7CisKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30KK11dPgorPC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvZG9tL1NWR0dlb21ldHJ5LWVs
bGlwc2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1lbGxp
cHNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNmE0OTYxNjM5MWI0MWMxOWQyMGM1MDExYWEx
ZDM1ZDFmMGY2OWE3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdH
ZW9tZXRyeS1lbGxpcHNlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUwIEBACitUZXN0IFNWR0dl
b21ldHJ5RWxlbWVudCBBUElzIGZvciBlbGxpcHNlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCisKKworCitUZXN0IGlzUG9pbnRJbkZpbGwoKQorUEFTUyBlMS5pc1BvaW50SW5GaWxsKHt9
KSBpcyBmYWxzZQorUEFTUyBlMS5pc1BvaW50SW5GaWxsKHt4OiA3NSwgeTogNTB9KSBpcyB0cnVl
CitQQVNTIGUxLmlzUG9pbnRJbkZpbGwoe3g6IDAsIHk6IDUwfSkgaXMgdHJ1ZQorUEFTUyBlMS5p
c1BvaW50SW5GaWxsKHt4OiAxNTAsIHk6IDUwfSkgaXMgdHJ1ZQorUEFTUyBlMS5pc1BvaW50SW5G
aWxsKHt4OiA3NSwgeTogMH0pIGlzIHRydWUKK1BBU1MgZTEuaXNQb2ludEluRmlsbCh7eDogNzUs
IHk6IDEwMH0pIGlzIHRydWUKK1BBU1MgZTEuaXNQb2ludEluRmlsbCh7eDogLTEsIHk6IDUwfSkg
aXMgZmFsc2UKK1BBU1MgZTEuaXNQb2ludEluRmlsbCh7eDogMTUxLCB5OiA1MH0pIGlzIGZhbHNl
CitQQVNTIGUxLmlzUG9pbnRJbkZpbGwoe3g6IDc1LCB5OiAtMX0pIGlzIGZhbHNlCitQQVNTIGUx
LmlzUG9pbnRJbkZpbGwoe3g6IDc1LCB5OiAxMDF9KSBpcyBmYWxzZQorUEFTUyBlMS5pc1BvaW50
SW5GaWxsKHt4OiAxNDAsIHk6IDkwfSkgaXMgZmFsc2UKK1BBU1MgZTEuaXNQb2ludEluRmlsbCh7
eDogMTAsIHk6IDEwfSkgaXMgZmFsc2UKK1BBU1MgZTEuaXNQb2ludEluRmlsbCh7eDogMTQwLCB5
OiAxMH0pIGlzIGZhbHNlCitQQVNTIGUxLmlzUG9pbnRJbkZpbGwoe3g6IDEwLCB5OiA5MH0pIGlz
IGZhbHNlCisKK1Rlc3QgaXNQb2ludEluU3Ryb2tlKCkKK1BBU1MgZTEuaXNQb2ludEluU3Ryb2tl
KHt9KSBpcyBmYWxzZQorUEFTUyBlMS5pc1BvaW50SW5TdHJva2Uoe3g6IDc1LCB5OiA1MH0pIGlz
IGZhbHNlCitQQVNTIGUxLmlzUG9pbnRJblN0cm9rZSh7eDogMTUwLCB5OiA1MX0pIGlzIGZhbHNl
CitQQVNTIGUxLmlzUG9pbnRJblN0cm9rZSh7eDogMTUwLCB5OiA0OX0pIGlzIHRydWUKK1BBU1Mg
ZTEuaXNQb2ludEluU3Ryb2tlKHt4OiAwLCB5OiA1Mn0pIGlzIHRydWUKK1BBU1MgZTEuaXNQb2lu
dEluU3Ryb2tlKHt4OiAwLCB5OiA0OH0pIGlzIGZhbHNlCitQQVNTIGUxLmlzUG9pbnRJblN0cm9r
ZSh7eDogNzcsIHk6IDEwMH0pIGlzIGZhbHNlCitQQVNTIGUxLmlzUG9pbnRJblN0cm9rZSh7eDog
NzMsIHk6IDEwMH0pIGlzIHRydWUKKworVGVzdCBnZXRUb3RhbExlbmd0aCgpCitQQVNTIGUxLmdl
dFRvdGFsTGVuZ3RoKCkgaXMgd2l0aGluIDUgb2YgMzkyLjY5OTA4MTY5ODcyNDEKKworVGVzdCBn
ZXRQb2ludEF0TGVuZ3RoKCkKK1BBU1MgZTEuZ2V0UG9pbnRBdExlbmd0aCgwKS54IGlzIHdpdGhp
biAwLjEgb2YgMTUwCitQQVNTIGUxLmdldFBvaW50QXRMZW5ndGgoMCkueSBpcyB3aXRoaW4gMC4x
IG9mIDUwCitQQVNTIGUxLmdldFBvaW50QXRMZW5ndGgoTWF0aC5QSSAqICg3NSArIDUwKSAvIDQp
LnggaXMgd2l0aGluIDMgb2YgNzUKK1BBU1MgZTEuZ2V0UG9pbnRBdExlbmd0aChNYXRoLlBJICog
KDc1ICsgNTApIC8gNCkueSBpcyB3aXRoaW4gMyBvZiAxMDAKK1BBU1MgZTEuZ2V0UG9pbnRBdExl
bmd0aChNYXRoLlBJICogKDc1ICsgNTApIC8gMikueCBpcyB3aXRoaW4gMyBvZiAwCitQQVNTIGUx
LmdldFBvaW50QXRMZW5ndGgoTWF0aC5QSSAqICg3NSArIDUwKSAvIDIpLnkgaXMgd2l0aGluIDMg
b2YgNTAKK1BBU1MgZTEuZ2V0UG9pbnRBdExlbmd0aChNYXRoLlBJICogKDc1ICsgNTApIC8gOCku
eCBpcyB3aXRoaW4gMyBvZiAxMjMKK1BBU1MgZTEuZ2V0UG9pbnRBdExlbmd0aChNYXRoLlBJICog
KDc1ICsgNTApIC8gOCkueSBpcyB3aXRoaW4gMyBvZiA4OAorUEFTUyBlMS5nZXRQb2ludEF0TGVu
Z3RoKE1hdGguUEkgKiAoNzUgKyA1MCkgKiAyKS54IGlzIHdpdGhpbiAzIG9mIDE1MAorUEFTUyBl
MS5nZXRQb2ludEF0TGVuZ3RoKE1hdGguUEkgKiAoNzUgKyA1MCkgKiAyKS55IGlzIHdpdGhpbiAz
IG9mIDUwCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1lbGxpcHNlLnho
dG1sIGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1lbGxpcHNlLnhodG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjE5YWJlYzViMWE1NDJjZmJhODYyNGQ4NWY5OGMxOWRiOTk3ZTFjYzgKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcvZG9tL1NWR0dlb21ldHJ5LWVsbGlwc2UueGh0bWwK
QEAgLTAsMCArMSw3MSBAQAorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0
bWwiPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0icnVuKCkiPgorPHN2ZyBpZD0ic3Zn
IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDAiIGhlaWdodD0i
MjAwIj4KKyAgICA8ZWxsaXBzZSBpZD0iZTEiIGN4PSI3NSIgY3k9IjUwIiByeD0iNzUiIHJ5PSI1
MCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyMCIgc3Ryb2tlLWRh
c2hvZmZzZXQ9IjIwIiBzdHJva2UtZGFzaGFycmF5PSIyMCAyMCIvPgorPC9zdmc+Cis8cCBpZD0i
ZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCB0eXBl
PSJ0ZXh0L2phdmFzY3JpcHQiPgorPCFbQ0RBVEFbCit3aW5kb3cuZW5hYmxlUGl4ZWxUZXN0aW5n
ID0gZmFsc2U7Cit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Cit2YXIgZTEgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgiZTEiKTsKKworZnVuY3Rpb24gcnVuKCkgeworICAgIGRlc2NyaXB0
aW9uKCJUZXN0IFNWR0dlb21ldHJ5RWxlbWVudCBBUElzIGZvciBlbGxpcHNlLiIpOworCisgICAg
ZGVidWcoIiIpOworICAgIGRlYnVnKCJUZXN0IGlzUG9pbnRJbkZpbGwoKSIpOworICAgIHNob3Vs
ZEJlKCJlMS5pc1BvaW50SW5GaWxsKHt9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJlMS5p
c1BvaW50SW5GaWxsKHt4OiA3NSwgeTogNTB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoImUx
LmlzUG9pbnRJbkZpbGwoe3g6IDAsIHk6IDUwfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJl
MS5pc1BvaW50SW5GaWxsKHt4OiAxNTAsIHk6IDUwfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJl
KCJlMS5pc1BvaW50SW5GaWxsKHt4OiA3NSwgeTogMH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRC
ZSgiZTEuaXNQb2ludEluRmlsbCh7eDogNzUsIHk6IDEwMH0pIiwgInRydWUiKTsKKyAgICBzaG91
bGRCZSgiZTEuaXNQb2ludEluRmlsbCh7eDogLTEsIHk6IDUwfSkiLCAiZmFsc2UiKTsKKyAgICBz
aG91bGRCZSgiZTEuaXNQb2ludEluRmlsbCh7eDogMTUxLCB5OiA1MH0pIiwgImZhbHNlIik7Cisg
ICAgc2hvdWxkQmUoImUxLmlzUG9pbnRJbkZpbGwoe3g6IDc1LCB5OiAtMX0pIiwgImZhbHNlIik7
CisgICAgc2hvdWxkQmUoImUxLmlzUG9pbnRJbkZpbGwoe3g6IDc1LCB5OiAxMDF9KSIsICJmYWxz
ZSIpOworICAgIHNob3VsZEJlKCJlMS5pc1BvaW50SW5GaWxsKHt4OiAxNDAsIHk6IDkwfSkiLCAi
ZmFsc2UiKTsKKyAgICBzaG91bGRCZSgiZTEuaXNQb2ludEluRmlsbCh7eDogMTAsIHk6IDEwfSki
LCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgiZTEuaXNQb2ludEluRmlsbCh7eDogMTQwLCB5OiAx
MH0pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoImUxLmlzUG9pbnRJbkZpbGwoe3g6IDEwLCB5
OiA5MH0pIiwgImZhbHNlIik7CisKKyAgICBkZWJ1ZygiIik7CisgICAgZGVidWcoIlRlc3QgaXNQ
b2ludEluU3Ryb2tlKCkiKTsKKyAgICBzaG91bGRCZSgiZTEuaXNQb2ludEluU3Ryb2tlKHt9KSIs
ICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJlMS5pc1BvaW50SW5TdHJva2Uoe3g6IDc1LCB5OiA1
MH0pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoImUxLmlzUG9pbnRJblN0cm9rZSh7eDogMTUw
LCB5OiA1MX0pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoImUxLmlzUG9pbnRJblN0cm9rZSh7
eDogMTUwLCB5OiA0OX0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgiZTEuaXNQb2ludEluU3Ry
b2tlKHt4OiAwLCB5OiA1Mn0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgiZTEuaXNQb2ludElu
U3Ryb2tlKHt4OiAwLCB5OiA0OH0pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoImUxLmlzUG9p
bnRJblN0cm9rZSh7eDogNzcsIHk6IDEwMH0pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoImUx
LmlzUG9pbnRJblN0cm9rZSh7eDogNzMsIHk6IDEwMH0pIiwgInRydWUiKTsKKworICAgIGRlYnVn
KCIiKTsKKyAgICBkZWJ1ZygiVGVzdCBnZXRUb3RhbExlbmd0aCgpIik7CisgICAgc2hvdWxkQmVD
bG9zZVRvKCJlMS5nZXRUb3RhbExlbmd0aCgpIiwgTWF0aC5QSSAqICg3NSArIDUwKSwgNSk7CisK
KyAgICBkZWJ1ZygiIik7CisgICAgZGVidWcoIlRlc3QgZ2V0UG9pbnRBdExlbmd0aCgpIik7Cisg
ICAgc2hvdWxkQmVDbG9zZVRvKCJlMS5nZXRQb2ludEF0TGVuZ3RoKDApLngiLCAxNTAsIDAuMSk7
CisgICAgc2hvdWxkQmVDbG9zZVRvKCJlMS5nZXRQb2ludEF0TGVuZ3RoKDApLnkiLCA1MCwgMC4x
KTsKKyAgICBzaG91bGRCZUNsb3NlVG8oImUxLmdldFBvaW50QXRMZW5ndGgoTWF0aC5QSSAqICg3
NSArIDUwKSAvIDQpLngiLCA3NSwgMyk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJlMS5nZXRQb2lu
dEF0TGVuZ3RoKE1hdGguUEkgKiAoNzUgKyA1MCkgLyA0KS55IiwgMTAwLCAzKTsKKyAgICBzaG91
bGRCZUNsb3NlVG8oImUxLmdldFBvaW50QXRMZW5ndGgoTWF0aC5QSSAqICg3NSArIDUwKSAvIDIp
LngiLCAwLCAzKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oImUxLmdldFBvaW50QXRMZW5ndGgoTWF0
aC5QSSAqICg3NSArIDUwKSAvIDIpLnkiLCA1MCwgMyk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJl
MS5nZXRQb2ludEF0TGVuZ3RoKE1hdGguUEkgKiAoNzUgKyA1MCkgLyA4KS54IiwgMTIzLCAzKTsK
KyAgICBzaG91bGRCZUNsb3NlVG8oImUxLmdldFBvaW50QXRMZW5ndGgoTWF0aC5QSSAqICg3NSAr
IDUwKSAvIDgpLnkiLCA4OCwgMyk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJlMS5nZXRQb2ludEF0
TGVuZ3RoKE1hdGguUEkgKiAoNzUgKyA1MCkgKiAyKS54IiwgMTUwLCAzKTsKKyAgICBzaG91bGRC
ZUNsb3NlVG8oImUxLmdldFBvaW50QXRMZW5ndGgoTWF0aC5QSSAqICg3NSArIDUwKSAqIDIpLnki
LCA1MCwgMyk7CisKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30KK11dPgorPC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvZG9tL1NWR0dlb21ldHJ5
LWxpbmUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1saW5l
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iYmE0YTIyZTJjYmY3MDRlMDExMjhmZmYwM2MyMjE0
Y2RhZGFiZmI5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9t
ZXRyeS1saW5lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDM3IEBACitUZXN0IFNWR0dlb21ldHJ5
RWxlbWVudCBBUElzIGZvciBsaW5lLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKwor
CitUZXN0IGlzUG9pbnRJbkZpbGwoKQorUEFTUyBsMS5pc1BvaW50SW5GaWxsKHt9KSBpcyBmYWxz
ZQorUEFTUyBsMS5pc1BvaW50SW5GaWxsKHt4OiAwLCB5OiA1MH0pIGlzIHRydWUKK1BBU1MgbDEu
aXNQb2ludEluRmlsbCh7eDogNTAsIHk6IDUwfSkgaXMgdHJ1ZQorUEFTUyBsMS5pc1BvaW50SW5G
aWxsKHt4OiAxMDAsIHk6IDUwfSkgaXMgdHJ1ZQorUEFTUyBsMS5pc1BvaW50SW5GaWxsKHt4OiA1
MCwgeTogNDl9KSBpcyBmYWxzZQorUEFTUyBsMS5pc1BvaW50SW5GaWxsKHt4OiA1MCwgeTogNTF9
KSBpcyBmYWxzZQorCitUZXN0IGlzUG9pbnRJblN0cm9rZSgpCitQQVNTIGwxLmlzUG9pbnRJblN0
cm9rZSh7eDogMTksIHk6IDUwfSkgaXMgZmFsc2UKK1BBU1MgbDEuaXNQb2ludEluU3Ryb2tlKHt4
OiAyMCwgeTogNTB9KSBpcyB0cnVlCitQQVNTIGwxLmlzUG9pbnRJblN0cm9rZSh7eDogMzksIHk6
IDUwfSkgaXMgdHJ1ZQorUEFTUyBsMS5pc1BvaW50SW5TdHJva2Uoe3g6IDQwLCB5OiA1MH0pIGlz
IHRydWUKK1BBU1MgbDEuaXNQb2ludEluU3Ryb2tlKHt4OiA0MSwgeTogNTB9KSBpcyBmYWxzZQor
CitUZXN0IGdldFRvdGFsTGVuZ3RoKCkKK1BBU1MgbDEuZ2V0VG90YWxMZW5ndGgoKSBpcyB3aXRo
aW4gMSBvZiAxMDAKKworVGVzdCBnZXRQb2ludEF0TGVuZ3RoKCkKK1BBU1MgbDEuZ2V0UG9pbnRB
dExlbmd0aCgwKS54IGlzIHdpdGhpbiAwLjEgb2YgMAorUEFTUyBsMS5nZXRQb2ludEF0TGVuZ3Ro
KDApLnkgaXMgd2l0aGluIDAuMSBvZiA1MAorUEFTUyBsMS5nZXRQb2ludEF0TGVuZ3RoKDUwKS54
IGlzIHdpdGhpbiAwLjEgb2YgNTAKK1BBU1MgbDEuZ2V0UG9pbnRBdExlbmd0aCg1MCkueSBpcyB3
aXRoaW4gMC4xIG9mIDUwCitQQVNTIGwxLmdldFBvaW50QXRMZW5ndGgoMTAwKS54IGlzIHdpdGhp
biAwLjEgb2YgMTAwCitQQVNTIGwxLmdldFBvaW50QXRMZW5ndGgoMTAwKS55IGlzIHdpdGhpbiAw
LjEgb2YgNTAKK1BBU1MgbDEuZ2V0UG9pbnRBdExlbmd0aCgxNTApLnggaXMgd2l0aGluIDAuMSBv
ZiAxMDAKK1BBU1MgbDEuZ2V0UG9pbnRBdExlbmd0aCgxNTApLnkgaXMgd2l0aGluIDAuMSBvZiA1
MAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktbGluZS54aHRtbCBiL0xh
eW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktbGluZS54aHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kOGRk
ODhlOGYyMmIyNDJjYTE5MTY5MWZiYzE2MDNmYzRmM2VmN2M1Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1saW5lLnhodG1sCkBAIC0wLDAgKzEsNTgg
QEAKKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKzxoZWFkPgor
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8
L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1bigpIj4KKzxzdmcgaWQ9InN2ZyIgeG1sbnM9Imh0dHA6
Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+CisgICAgPGxp
bmUgaWQ9ImwxIiB4MT0iMCIgeTE9IjUwIiB4Mj0iMTAwIiB5Mj0iNTAiIGZpbGw9Im5vbmUiIHN0
cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMjAiIHN0cm9rZS1kYXNob2Zmc2V0PSIyMCIgc3Ry
b2tlLWRhc2hhcnJheT0iMjAgMjAiLz4KKzwvc3ZnPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+
Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0
Ij4KKzwhW0NEQVRBWword2luZG93LmVuYWJsZVBpeGVsVGVzdGluZyA9IGZhbHNlOword2luZG93
LmpzVGVzdElzQXN5bmMgPSB0cnVlOwordmFyIGwxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImwxIik7CisKK2Z1bmN0aW9uIHJ1bigpIHsKKyAgICBkZXNjcmlwdGlvbigiVGVzdCBTVkdHZW9t
ZXRyeUVsZW1lbnQgQVBJcyBmb3IgbGluZS4iKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1
ZygiVGVzdCBpc1BvaW50SW5GaWxsKCkiKTsKKyAgICBzaG91bGRCZSgibDEuaXNQb2ludEluRmls
bCh7fSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgibDEuaXNQb2ludEluRmlsbCh7eDogMCwg
eTogNTB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoImwxLmlzUG9pbnRJbkZpbGwoe3g6IDUw
LCB5OiA1MH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgibDEuaXNQb2ludEluRmlsbCh7eDog
MTAwLCB5OiA1MH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgibDEuaXNQb2ludEluRmlsbCh7
eDogNTAsIHk6IDQ5fSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgibDEuaXNQb2ludEluRmls
bCh7eDogNTAsIHk6IDUxfSkiLCAiZmFsc2UiKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1
ZygiVGVzdCBpc1BvaW50SW5TdHJva2UoKSIpOworICAgIHNob3VsZEJlKCJsMS5pc1BvaW50SW5T
dHJva2Uoe3g6IDE5LCB5OiA1MH0pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoImwxLmlzUG9p
bnRJblN0cm9rZSh7eDogMjAsIHk6IDUwfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJsMS5p
c1BvaW50SW5TdHJva2Uoe3g6IDM5LCB5OiA1MH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgi
bDEuaXNQb2ludEluU3Ryb2tlKHt4OiA0MCwgeTogNTB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxk
QmUoImwxLmlzUG9pbnRJblN0cm9rZSh7eDogNDEsIHk6IDUwfSkiLCAiZmFsc2UiKTsKKworICAg
IGRlYnVnKCIiKTsKKyAgICBkZWJ1ZygiVGVzdCBnZXRUb3RhbExlbmd0aCgpIik7CisgICAgc2hv
dWxkQmVDbG9zZVRvKCJsMS5nZXRUb3RhbExlbmd0aCgpIiwgMTAwLCAxKTsKKworICAgIGRlYnVn
KCIiKTsKKyAgICBkZWJ1ZygiVGVzdCBnZXRQb2ludEF0TGVuZ3RoKCkiKTsKKyAgICBzaG91bGRC
ZUNsb3NlVG8oImwxLmdldFBvaW50QXRMZW5ndGgoMCkueCIsIDAsIDAuMSk7CisgICAgc2hvdWxk
QmVDbG9zZVRvKCJsMS5nZXRQb2ludEF0TGVuZ3RoKDApLnkiLCA1MCwgMC4xKTsKKyAgICBzaG91
bGRCZUNsb3NlVG8oImwxLmdldFBvaW50QXRMZW5ndGgoNTApLngiLCA1MCwgMC4xKTsKKyAgICBz
aG91bGRCZUNsb3NlVG8oImwxLmdldFBvaW50QXRMZW5ndGgoNTApLnkiLCA1MCwgMC4xKTsKKyAg
ICBzaG91bGRCZUNsb3NlVG8oImwxLmdldFBvaW50QXRMZW5ndGgoMTAwKS54IiwgMTAwLCAwLjEp
OworICAgIHNob3VsZEJlQ2xvc2VUbygibDEuZ2V0UG9pbnRBdExlbmd0aCgxMDApLnkiLCA1MCwg
MC4xKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oImwxLmdldFBvaW50QXRMZW5ndGgoMTUwKS54Iiwg
MTAwLCAwLjEpOworICAgIHNob3VsZEJlQ2xvc2VUbygibDEuZ2V0UG9pbnRBdExlbmd0aCgxNTAp
LnkiLCA1MCwgMC4xKTsKKworICAgIGZpbmlzaEpTVGVzdCgpOworfQorXV0+Cis8L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
KzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2Vv
bWV0cnktcG9seWdvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdmcvZG9tL1NWR0dlb21l
dHJ5LXBvbHlnb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhkZGY4NmFiYzA2MmQ5NTU5MzVk
YTFmMjc0OTg4ZDBmNTAyYWRlODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcv
ZG9tL1NWR0dlb21ldHJ5LXBvbHlnb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDEgQEAKK1Rl
c3QgU1ZHR2VvbWV0cnlFbGVtZW50IEFQSXMgZm9yIHBvbHlnb24uCisKK09uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KKworCisKK1Rlc3QgaXNQb2ludEluRmlsbCgpCitQQVNTIHAxLmlzUG9pbnRJ
bkZpbGwoe30pIGlzIHRydWUKK1BBU1MgcDEuaXNQb2ludEluRmlsbCh7eDogMTAwLCB5OiAwfSkg
aXMgdHJ1ZQorUEFTUyBwMS5pc1BvaW50SW5GaWxsKHt4OiAxNTIsIHk6IDB9KSBpcyBmYWxzZQor
UEFTUyBwMS5pc1BvaW50SW5GaWxsKHt4OiAxNTAsIHk6IDUwfSkgaXMgdHJ1ZQorUEFTUyBwMS5p
c1BvaW50SW5GaWxsKHt4OiAxNTAsIHk6IDEwMH0pIGlzIHRydWUKK1BBU1MgcDEuaXNQb2ludElu
RmlsbCh7eDogMTUwLCB5OiAxMDF9KSBpcyBmYWxzZQorUEFTUyBwMS5pc1BvaW50SW5GaWxsKHt4
OiAxMDAsIHk6IDEwMH0pIGlzIHRydWUKK1BBU1MgcDEuaXNQb2ludEluRmlsbCh7eDogNzUsIHk6
IDUwfSkgaXMgdHJ1ZQorCitUZXN0IGlzUG9pbnRJblN0cm9rZSgpCitQQVNTIHAxLmlzUG9pbnRJ
blN0cm9rZSh7eDogMCwgeTogMH0pIGlzIGZhbHNlCitQQVNTIHAxLmlzUG9pbnRJblN0cm9rZSh7
eDogMjAsIHk6IDB9KSBpcyB0cnVlCitQQVNTIHAxLmlzUG9pbnRJblN0cm9rZSh7eDogMTUwLCB5
OiAwfSkgaXMgdHJ1ZQorUEFTUyBwMS5pc1BvaW50SW5TdHJva2Uoe3g6IDE1MCwgeTogMzV9KSBp
cyB0cnVlCitQQVNTIHAxLmlzUG9pbnRJblN0cm9rZSh7eDogNzUsIHk6IDUwfSkgaXMgZmFsc2UK
KworVGVzdCBnZXRUb3RhbExlbmd0aCgpCitQQVNTIHAxLmdldFRvdGFsTGVuZ3RoKCkgaXMgd2l0
aGluIDEgb2YgNTAwCisKK1Rlc3QgZ2V0UG9pbnRBdExlbmd0aCgpCitQQVNTIHAxLmdldFBvaW50
QXRMZW5ndGgoMCkueCBpcyB3aXRoaW4gMC4xIG9mIDAKK1BBU1MgcDEuZ2V0UG9pbnRBdExlbmd0
aCgwKS55IGlzIHdpdGhpbiAwLjEgb2YgMAorUEFTUyBwMS5nZXRQb2ludEF0TGVuZ3RoKDE1MCku
eCBpcyB3aXRoaW4gMC4xIG9mIDE1MAorUEFTUyBwMS5nZXRQb2ludEF0TGVuZ3RoKDE1MCkueSBp
cyB3aXRoaW4gMC4xIG9mIDAKK1BBU1MgcDEuZ2V0UG9pbnRBdExlbmd0aCgyMDApLnggaXMgd2l0
aGluIDAuMSBvZiAxNTAKK1BBU1MgcDEuZ2V0UG9pbnRBdExlbmd0aCgyMDApLnkgaXMgd2l0aGlu
IDAuMSBvZiA1MAorUEFTUyBwMS5nZXRQb2ludEF0TGVuZ3RoKDMwMCkueCBpcyB3aXRoaW4gMC4x
IG9mIDEwMAorUEFTUyBwMS5nZXRQb2ludEF0TGVuZ3RoKDMwMCkueSBpcyB3aXRoaW4gMC4xIG9m
IDEwMAorUEFTUyBwMS5nZXRQb2ludEF0TGVuZ3RoKDQ1MCkueCBpcyB3aXRoaW4gMC4xIG9mIDAK
K1BBU1MgcDEuZ2V0UG9pbnRBdExlbmd0aCg0NTApLnkgaXMgd2l0aGluIDAuMSBvZiA1MAorUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktcG9seWdvbi54aHRtbCBiL0xheW91
dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktcG9seWdvbi54aHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42Yzlm
MDU5ZTA4OTk3YTZlYzk0MDEwZTc3YmNkOTFkOTk4ZGNmZjIxCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1wb2x5Z29uLnhodG1sCkBAIC0wLDAgKzEs
NjIgQEAKKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKzxoZWFk
PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1bigpIj4KKzxzdmcgaWQ9InN2ZyIgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+CisgICAg
PHBvbHlnb24gaWQ9InAxIiBwb2ludHM9IjAsMCAxNTAsMCAxNTAsMTAwIDAsMTAwIiBmaWxsPSJu
b25lIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjIwIiBzdHJva2UtZGFzaG9mZnNldD0i
MjAiIHN0cm9rZS1kYXNoYXJyYXk9IjIwIDIwIi8+Cis8L3N2Zz4KKzxwIGlkPSJkZXNjcmlwdGlv
biI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHR5cGU9InRleHQvamF2
YXNjcmlwdCI+Cis8IVtDREFUQVsKK3dpbmRvdy5lbmFibGVQaXhlbFRlc3RpbmcgPSBmYWxzZTsK
K3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK3ZhciBwMSA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJwMSIpOworCitmdW5jdGlvbiBydW4oKSB7CisgICAgZGVzY3JpcHRpb24oIlRlc3Qg
U1ZHR2VvbWV0cnlFbGVtZW50IEFQSXMgZm9yIHBvbHlnb24uIik7CisKKyAgICBkZWJ1ZygiIik7
CisgICAgZGVidWcoIlRlc3QgaXNQb2ludEluRmlsbCgpIik7CisgICAgc2hvdWxkQmUoInAxLmlz
UG9pbnRJbkZpbGwoe30pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgicDEuaXNQb2ludEluRmls
bCh7eDogMTAwLCB5OiAwfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJwMS5pc1BvaW50SW5G
aWxsKHt4OiAxNTIsIHk6IDB9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJwMS5pc1BvaW50
SW5GaWxsKHt4OiAxNTAsIHk6IDUwfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJwMS5pc1Bv
aW50SW5GaWxsKHt4OiAxNTAsIHk6IDEwMH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgicDEu
aXNQb2ludEluRmlsbCh7eDogMTUwLCB5OiAxMDF9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJl
KCJwMS5pc1BvaW50SW5GaWxsKHt4OiAxMDAsIHk6IDEwMH0pIiwgInRydWUiKTsKKyAgICBzaG91
bGRCZSgicDEuaXNQb2ludEluRmlsbCh7eDogNzUsIHk6IDUwfSkiLCAidHJ1ZSIpOworCisgICAg
ZGVidWcoIiIpOworICAgIGRlYnVnKCJUZXN0IGlzUG9pbnRJblN0cm9rZSgpIik7CisgICAgc2hv
dWxkQmUoInAxLmlzUG9pbnRJblN0cm9rZSh7eDogMCwgeTogMH0pIiwgImZhbHNlIik7CisgICAg
c2hvdWxkQmUoInAxLmlzUG9pbnRJblN0cm9rZSh7eDogMjAsIHk6IDB9KSIsICJ0cnVlIik7Cisg
ICAgc2hvdWxkQmUoInAxLmlzUG9pbnRJblN0cm9rZSh7eDogMTUwLCB5OiAwfSkiLCAidHJ1ZSIp
OworICAgIHNob3VsZEJlKCJwMS5pc1BvaW50SW5TdHJva2Uoe3g6IDE1MCwgeTogMzV9KSIsICJ0
cnVlIik7CisgICAgc2hvdWxkQmUoInAxLmlzUG9pbnRJblN0cm9rZSh7eDogNzUsIHk6IDUwfSki
LCAiZmFsc2UiKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1ZygiVGVzdCBnZXRUb3RhbExl
bmd0aCgpIik7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJwMS5nZXRUb3RhbExlbmd0aCgpIiwgNTAw
LCAxKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1ZygiVGVzdCBnZXRQb2ludEF0TGVuZ3Ro
KCkiKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oInAxLmdldFBvaW50QXRMZW5ndGgoMCkueCIsIDAs
IDAuMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJwMS5nZXRQb2ludEF0TGVuZ3RoKDApLnkiLCAw
LCAwLjEpOworICAgIHNob3VsZEJlQ2xvc2VUbygicDEuZ2V0UG9pbnRBdExlbmd0aCgxNTApLngi
LCAxNTAsIDAuMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJwMS5nZXRQb2ludEF0TGVuZ3RoKDE1
MCkueSIsIDAsIDAuMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJwMS5nZXRQb2ludEF0TGVuZ3Ro
KDIwMCkueCIsIDE1MCwgMC4xKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oInAxLmdldFBvaW50QXRM
ZW5ndGgoMjAwKS55IiwgNTAsIDAuMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJwMS5nZXRQb2lu
dEF0TGVuZ3RoKDMwMCkueCIsIDEwMCwgMC4xKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oInAxLmdl
dFBvaW50QXRMZW5ndGgoMzAwKS55IiwgMTAwLCAwLjEpOworICAgIHNob3VsZEJlQ2xvc2VUbygi
cDEuZ2V0UG9pbnRBdExlbmd0aCg0NTApLngiLCAwLCAwLjEpOworICAgIHNob3VsZEJlQ2xvc2VU
bygicDEuZ2V0UG9pbnRBdExlbmd0aCg0NTApLnkiLCA1MCwgMC4xKTsKKworICAgIGZpbmlzaEpT
VGVzdCgpOworfQorXV0+Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktcG9seWxpbmUtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1wb2x5bGluZS1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uOWU2YmQ1MDVkNTllYzgxN2Q5MjhkYzE4ZWE2MTYwZjY3MTM5YTRiYQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktcG9seWxpbmUtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDEgQEAKK1Rlc3QgU1ZHR2VvbWV0cnlFbGVtZW50IEFQSXMg
Zm9yIHBvbHlsaW5lLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCitUZXN0IGlz
UG9pbnRJbkZpbGwoKQorUEFTUyBwMS5pc1BvaW50SW5GaWxsKHt9KSBpcyB0cnVlCitQQVNTIHAx
LmlzUG9pbnRJbkZpbGwoe3g6IDEwMCwgeTogMH0pIGlzIHRydWUKK1BBU1MgcDEuaXNQb2ludElu
RmlsbCh7eDogMTUyLCB5OiAwfSkgaXMgZmFsc2UKK1BBU1MgcDEuaXNQb2ludEluRmlsbCh7eDog
MTUwLCB5OiA1MH0pIGlzIHRydWUKK1BBU1MgcDEuaXNQb2ludEluRmlsbCh7eDogMTUwLCB5OiAx
MDB9KSBpcyB0cnVlCitQQVNTIHAxLmlzUG9pbnRJbkZpbGwoe3g6IDE1MCwgeTogMTAxfSkgaXMg
ZmFsc2UKK1BBU1MgcDEuaXNQb2ludEluRmlsbCh7eDogMTAwLCB5OiAxMDB9KSBpcyB0cnVlCitQ
QVNTIHAxLmlzUG9pbnRJbkZpbGwoe3g6IDc1LCB5OiA1MH0pIGlzIHRydWUKKworVGVzdCBpc1Bv
aW50SW5TdHJva2UoKQorUEFTUyBwMS5pc1BvaW50SW5TdHJva2Uoe3g6IDAsIHk6IDB9KSBpcyBm
YWxzZQorUEFTUyBwMS5pc1BvaW50SW5TdHJva2Uoe3g6IDIwLCB5OiAwfSkgaXMgdHJ1ZQorUEFT
UyBwMS5pc1BvaW50SW5TdHJva2Uoe3g6IDE1MCwgeTogMH0pIGlzIHRydWUKK1BBU1MgcDEuaXNQ
b2ludEluU3Ryb2tlKHt4OiAxNTAsIHk6IDM1fSkgaXMgdHJ1ZQorUEFTUyBwMS5pc1BvaW50SW5T
dHJva2Uoe3g6IDc1LCB5OiA1MH0pIGlzIGZhbHNlCisKK1Rlc3QgZ2V0VG90YWxMZW5ndGgoKQor
UEFTUyBwMS5nZXRUb3RhbExlbmd0aCgpIGlzIHdpdGhpbiAxIG9mIDQwMAorCitUZXN0IGdldFBv
aW50QXRMZW5ndGgoKQorUEFTUyBwMS5nZXRQb2ludEF0TGVuZ3RoKDApLnggaXMgd2l0aGluIDAu
MSBvZiAwCitQQVNTIHAxLmdldFBvaW50QXRMZW5ndGgoMCkueSBpcyB3aXRoaW4gMC4xIG9mIDAK
K1BBU1MgcDEuZ2V0UG9pbnRBdExlbmd0aCgxNTApLnggaXMgd2l0aGluIDAuMSBvZiAxNTAKK1BB
U1MgcDEuZ2V0UG9pbnRBdExlbmd0aCgxNTApLnkgaXMgd2l0aGluIDAuMSBvZiAwCitQQVNTIHAx
LmdldFBvaW50QXRMZW5ndGgoMjAwKS54IGlzIHdpdGhpbiAwLjEgb2YgMTUwCitQQVNTIHAxLmdl
dFBvaW50QXRMZW5ndGgoMjAwKS55IGlzIHdpdGhpbiAwLjEgb2YgNTAKK1BBU1MgcDEuZ2V0UG9p
bnRBdExlbmd0aCgzMDApLnggaXMgd2l0aGluIDAuMSBvZiAxMDAKK1BBU1MgcDEuZ2V0UG9pbnRB
dExlbmd0aCgzMDApLnkgaXMgd2l0aGluIDAuMSBvZiAxMDAKK1BBU1MgcDEuZ2V0UG9pbnRBdExl
bmd0aCg0NTApLnggaXMgd2l0aGluIDAuMSBvZiAwCitQQVNTIHAxLmdldFBvaW50QXRMZW5ndGgo
NDUwKS55IGlzIHdpdGhpbiAwLjEgb2YgMTAwCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2RvbS9T
VkdHZW9tZXRyeS1wb2x5bGluZS54aHRtbCBiL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0
cnktcG9seWxpbmUueGh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU0OWYxODQ4ZjNkZTRjMzk3YzkzMGFhYmQy
MmNiOThjYmNkMWVmYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZH
R2VvbWV0cnktcG9seWxpbmUueGh0bWwKQEAgLTAsMCArMSw2MiBAQAorPGh0bWwgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IG9ubG9h
ZD0icnVuKCkiPgorPHN2ZyBpZD0ic3ZnIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9z
dmciIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIj4KKyAgICA8cG9seWxpbmUgaWQ9InAxIiBwb2lu
dHM9IjAsMCAxNTAsMCAxNTAsMTAwIDAsMTAwIiBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBz
dHJva2Utd2lkdGg9IjIwIiBzdHJva2UtZGFzaG9mZnNldD0iMjAiIHN0cm9rZS1kYXNoYXJyYXk9
IjIwIDIwIi8+Cis8L3N2Zz4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29u
c29sZSI+PC9kaXY+Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Cis8IVtDREFUQVsK
K3dpbmRvdy5lbmFibGVQaXhlbFRlc3RpbmcgPSBmYWxzZTsKK3dpbmRvdy5qc1Rlc3RJc0FzeW5j
ID0gdHJ1ZTsKK3ZhciBwMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpOworCitmdW5j
dGlvbiBydW4oKSB7CisgICAgZGVzY3JpcHRpb24oIlRlc3QgU1ZHR2VvbWV0cnlFbGVtZW50IEFQ
SXMgZm9yIHBvbHlsaW5lLiIpOworCisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJUZXN0IGlz
UG9pbnRJbkZpbGwoKSIpOworICAgIHNob3VsZEJlKCJwMS5pc1BvaW50SW5GaWxsKHt9KSIsICJ0
cnVlIik7CisgICAgc2hvdWxkQmUoInAxLmlzUG9pbnRJbkZpbGwoe3g6IDEwMCwgeTogMH0pIiwg
InRydWUiKTsKKyAgICBzaG91bGRCZSgicDEuaXNQb2ludEluRmlsbCh7eDogMTUyLCB5OiAwfSki
LCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgicDEuaXNQb2ludEluRmlsbCh7eDogMTUwLCB5OiA1
MH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgicDEuaXNQb2ludEluRmlsbCh7eDogMTUwLCB5
OiAxMDB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoInAxLmlzUG9pbnRJbkZpbGwoe3g6IDE1
MCwgeTogMTAxfSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgicDEuaXNQb2ludEluRmlsbCh7
eDogMTAwLCB5OiAxMDB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoInAxLmlzUG9pbnRJbkZp
bGwoe3g6IDc1LCB5OiA1MH0pIiwgInRydWUiKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1
ZygiVGVzdCBpc1BvaW50SW5TdHJva2UoKSIpOworICAgIHNob3VsZEJlKCJwMS5pc1BvaW50SW5T
dHJva2Uoe3g6IDAsIHk6IDB9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJwMS5pc1BvaW50
SW5TdHJva2Uoe3g6IDIwLCB5OiAwfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJwMS5pc1Bv
aW50SW5TdHJva2Uoe3g6IDE1MCwgeTogMH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgicDEu
aXNQb2ludEluU3Ryb2tlKHt4OiAxNTAsIHk6IDM1fSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJl
KCJwMS5pc1BvaW50SW5TdHJva2Uoe3g6IDc1LCB5OiA1MH0pIiwgImZhbHNlIik7CisKKyAgICBk
ZWJ1ZygiIik7CisgICAgZGVidWcoIlRlc3QgZ2V0VG90YWxMZW5ndGgoKSIpOworICAgIHNob3Vs
ZEJlQ2xvc2VUbygicDEuZ2V0VG90YWxMZW5ndGgoKSIsIDQwMCwgMSk7CisKKyAgICBkZWJ1Zygi
Iik7CisgICAgZGVidWcoIlRlc3QgZ2V0UG9pbnRBdExlbmd0aCgpIik7CisgICAgc2hvdWxkQmVD
bG9zZVRvKCJwMS5nZXRQb2ludEF0TGVuZ3RoKDApLngiLCAwLCAwLjEpOworICAgIHNob3VsZEJl
Q2xvc2VUbygicDEuZ2V0UG9pbnRBdExlbmd0aCgwKS55IiwgMCwgMC4xKTsKKyAgICBzaG91bGRC
ZUNsb3NlVG8oInAxLmdldFBvaW50QXRMZW5ndGgoMTUwKS54IiwgMTUwLCAwLjEpOworICAgIHNo
b3VsZEJlQ2xvc2VUbygicDEuZ2V0UG9pbnRBdExlbmd0aCgxNTApLnkiLCAwLCAwLjEpOworICAg
IHNob3VsZEJlQ2xvc2VUbygicDEuZ2V0UG9pbnRBdExlbmd0aCgyMDApLngiLCAxNTAsIDAuMSk7
CisgICAgc2hvdWxkQmVDbG9zZVRvKCJwMS5nZXRQb2ludEF0TGVuZ3RoKDIwMCkueSIsIDUwLCAw
LjEpOworICAgIHNob3VsZEJlQ2xvc2VUbygicDEuZ2V0UG9pbnRBdExlbmd0aCgzMDApLngiLCAx
MDAsIDAuMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJwMS5nZXRQb2ludEF0TGVuZ3RoKDMwMCku
eSIsIDEwMCwgMC4xKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oInAxLmdldFBvaW50QXRMZW5ndGgo
NDUwKS54IiwgMCwgMC4xKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oInAxLmdldFBvaW50QXRMZW5n
dGgoNDUwKS55IiwgMTAwLCAwLjEpOworCisgICAgZmluaXNoSlNUZXN0KCk7Cit9CitdXT4KKzwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2Rv
bS9TVkdHZW9tZXRyeS1yZWN0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZH
R2VvbWV0cnktcmVjdC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzJiMzI2MDk0MzZiNzM5ZWVm
MWQxMDI4YTQyMDU4MmQ2MjVmMjY2YwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2
Zy9kb20vU1ZHR2VvbWV0cnktcmVjdC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1MCBAQAorVGVz
dCBTVkdHZW9tZXRyeUVsZW1lbnQgQVBJcyBmb3IgcmVjdC4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKKworVGVzdCBpc1BvaW50SW5GaWxsKCkKK1BBU1MgcjEuaXNQb2ludEluRmls
bCh7fSkgaXMgZmFsc2UKK1BBU1MgcjEuaXNQb2ludEluRmlsbCh7eDogNDgsIHk6IDB9KSBpcyBm
YWxzZQorUEFTUyByMS5pc1BvaW50SW5GaWxsKHt4OiA1MiwgeTogMH0pIGlzIHRydWUKK1BBU1Mg
cjEuaXNQb2ludEluRmlsbCh7eDogOTgsIHk6IDB9KSBpcyB0cnVlCitQQVNTIHIxLmlzUG9pbnRJ
bkZpbGwoe3g6IDEwMiwgeTogMH0pIGlzIGZhbHNlCitQQVNTIHIxLmlzUG9pbnRJbkZpbGwoe3g6
IDE1MCwgeTogMzh9KSBpcyBmYWxzZQorUEFTUyByMS5pc1BvaW50SW5GaWxsKHt4OiAxNTAsIHk6
IDQyfSkgaXMgdHJ1ZQorUEFTUyByMS5pc1BvaW50SW5GaWxsKHt4OiAxNTAsIHk6IDU4fSkgaXMg
dHJ1ZQorUEFTUyByMS5pc1BvaW50SW5GaWxsKHt4OiAxNTAsIHk6IDYyfSkgaXMgZmFsc2UKK1BB
U1MgcjEuaXNQb2ludEluRmlsbCh7eDogNDgsIHk6IDEwMH0pIGlzIGZhbHNlCitQQVNTIHIxLmlz
UG9pbnRJbkZpbGwoe3g6IDUyLCB5OiAxMDB9KSBpcyB0cnVlCitQQVNTIHIxLmlzUG9pbnRJbkZp
bGwoe3g6IDk4LCB5OiAxMDB9KSBpcyB0cnVlCitQQVNTIHIxLmlzUG9pbnRJbkZpbGwoe3g6IDEw
MiwgeTogMTAwfSkgaXMgZmFsc2UKK1BBU1MgcjEuaXNQb2ludEluRmlsbCh7eDogMCwgeTogMzh9
KSBpcyBmYWxzZQorUEFTUyByMS5pc1BvaW50SW5GaWxsKHt4OiAwLCB5OiA0Mn0pIGlzIHRydWUK
K1BBU1MgcjEuaXNQb2ludEluRmlsbCh7eDogMCwgeTogNTh9KSBpcyB0cnVlCitQQVNTIHIxLmlz
UG9pbnRJbkZpbGwoe3g6IDAsIHk6IDYyfSkgaXMgZmFsc2UKK1BBU1MgcjEuaXNQb2ludEluRmls
bCh7eDogNzUsIHk6IDUwfSkgaXMgdHJ1ZQorCitUZXN0IGlzUG9pbnRJblN0cm9rZSgpCitQQVNT
IHIxLmlzUG9pbnRJblN0cm9rZSh7eDogNTIsIHk6IDB9KSBpcyBmYWxzZQorUEFTUyByMS5pc1Bv
aW50SW5TdHJva2Uoe3g6IDcyLCB5OiAwfSkgaXMgdHJ1ZQorUEFTUyByMS5pc1BvaW50SW5TdHJv
a2Uoe3g6IDkyLCB5OiAwfSkgaXMgZmFsc2UKK1BBU1MgcjEuaXNQb2ludEluU3Ryb2tlKHt4OiAx
MTIsIHk6IDEwfSkgaXMgdHJ1ZQorCitUZXN0IGdldFRvdGFsTGVuZ3RoKCkKK1BBU1MgcjEuZ2V0
VG90YWxMZW5ndGgoKSBpcyB3aXRoaW4gMSBvZiA0MjQKKworVGVzdCBnZXRQb2ludEF0TGVuZ3Ro
KCkKK1BBU1MgcjEuZ2V0UG9pbnRBdExlbmd0aCgwKS54IGlzIHdpdGhpbiAxIG9mIDUwCitQQVNT
IHIxLmdldFBvaW50QXRMZW5ndGgoMCkueSBpcyB3aXRoaW4gMSBvZiAwCitQQVNTIHIxLmdldFBv
aW50QXRMZW5ndGgoMjUpLnggaXMgd2l0aGluIDEgb2YgNzUKK1BBU1MgcjEuZ2V0UG9pbnRBdExl
bmd0aCgyNSkueSBpcyB3aXRoaW4gMSBvZiAwCitQQVNTIHIxLmdldFBvaW50QXRMZW5ndGgoMjAw
KS54IGlzIHdpdGhpbiAzIG9mIDExMgorUEFTUyByMS5nZXRQb2ludEF0TGVuZ3RoKDIwMCkueSBp
cyB3aXRoaW4gMyBvZiAxMDAKK1BBU1MgcjEuZ2V0UG9pbnRBdExlbmd0aCgzMDApLnggaXMgd2l0
aGluIDMgb2YgMTQKK1BBU1MgcjEuZ2V0UG9pbnRBdExlbmd0aCgzMDApLnkgaXMgd2l0aGluIDMg
b2YgODgKK1BBU1MgcjEuZ2V0UG9pbnRBdExlbmd0aCg0MDApLnggaXMgd2l0aGluIDMgb2YgMjcK
K1BBU1MgcjEuZ2V0UG9pbnRBdExlbmd0aCg0MDApLnkgaXMgd2l0aGluIDMgb2YgNQorUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktcmVjdC54aHRtbCBiL0xheW91dFRlc3Rz
L3N2Zy9kb20vU1ZHR2VvbWV0cnktcmVjdC54aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mODNmOWEyZTUxZDdh
YTYwZGNhMWEyODBiYjQ3ZDdhZThiNzFkZGZjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1yZWN0LnhodG1sCkBAIC0wLDAgKzEsNzEgQEAKKzxodG1s
IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKzxoZWFkPgorPHNjcmlwdCBz
cmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8
Ym9keSBvbmxvYWQ9InJ1bigpIj4KKzxzdmcgaWQ9InN2ZyIgeG1sbnM9Imh0dHA6Ly93d3cudzMu
b3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+CisgICAgPHJlY3QgaWQ9InIx
IiByeD0iNTAiIHJ5PSI0MCIgd2lkdGg9IjE1MCIgaGVpZ2h0PSIxMDAiIGZpbGw9Im5vbmUiIHN0
cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMjAiIHN0cm9rZS1kYXNob2Zmc2V0PSIyMCIgc3Ry
b2tlLWRhc2hhcnJheT0iMjAgMjAiLz4KKzwvc3ZnPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+
Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0
Ij4KKzwhW0NEQVRBWword2luZG93LmVuYWJsZVBpeGVsVGVzdGluZyA9IGZhbHNlOword2luZG93
LmpzVGVzdElzQXN5bmMgPSB0cnVlOwordmFyIHIxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InIxIik7CisKK2Z1bmN0aW9uIHJ1bigpIHsKKyAgICBkZXNjcmlwdGlvbigiVGVzdCBTVkdHZW9t
ZXRyeUVsZW1lbnQgQVBJcyBmb3IgcmVjdC4iKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1
ZygiVGVzdCBpc1BvaW50SW5GaWxsKCkiKTsKKyAgICBzaG91bGRCZSgicjEuaXNQb2ludEluRmls
bCh7fSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgicjEuaXNQb2ludEluRmlsbCh7eDogNDgs
IHk6IDB9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJyMS5pc1BvaW50SW5GaWxsKHt4OiA1
MiwgeTogMH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgicjEuaXNQb2ludEluRmlsbCh7eDog
OTgsIHk6IDB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoInIxLmlzUG9pbnRJbkZpbGwoe3g6
IDEwMiwgeTogMH0pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoInIxLmlzUG9pbnRJbkZpbGwo
e3g6IDE1MCwgeTogMzh9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJyMS5pc1BvaW50SW5G
aWxsKHt4OiAxNTAsIHk6IDQyfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJyMS5pc1BvaW50
SW5GaWxsKHt4OiAxNTAsIHk6IDU4fSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJyMS5pc1Bv
aW50SW5GaWxsKHt4OiAxNTAsIHk6IDYyfSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgicjEu
aXNQb2ludEluRmlsbCh7eDogNDgsIHk6IDEwMH0pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUo
InIxLmlzUG9pbnRJbkZpbGwoe3g6IDUyLCB5OiAxMDB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxk
QmUoInIxLmlzUG9pbnRJbkZpbGwoe3g6IDk4LCB5OiAxMDB9KSIsICJ0cnVlIik7CisgICAgc2hv
dWxkQmUoInIxLmlzUG9pbnRJbkZpbGwoe3g6IDEwMiwgeTogMTAwfSkiLCAiZmFsc2UiKTsKKyAg
ICBzaG91bGRCZSgicjEuaXNQb2ludEluRmlsbCh7eDogMCwgeTogMzh9KSIsICJmYWxzZSIpOwor
ICAgIHNob3VsZEJlKCJyMS5pc1BvaW50SW5GaWxsKHt4OiAwLCB5OiA0Mn0pIiwgInRydWUiKTsK
KyAgICBzaG91bGRCZSgicjEuaXNQb2ludEluRmlsbCh7eDogMCwgeTogNTh9KSIsICJ0cnVlIik7
CisgICAgc2hvdWxkQmUoInIxLmlzUG9pbnRJbkZpbGwoe3g6IDAsIHk6IDYyfSkiLCAiZmFsc2Ui
KTsKKyAgICBzaG91bGRCZSgicjEuaXNQb2ludEluRmlsbCh7eDogNzUsIHk6IDUwfSkiLCAidHJ1
ZSIpOworCisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJUZXN0IGlzUG9pbnRJblN0cm9rZSgp
Iik7CisgICAgc2hvdWxkQmUoInIxLmlzUG9pbnRJblN0cm9rZSh7eDogNTIsIHk6IDB9KSIsICJm
YWxzZSIpOworICAgIHNob3VsZEJlKCJyMS5pc1BvaW50SW5TdHJva2Uoe3g6IDcyLCB5OiAwfSki
LCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJyMS5pc1BvaW50SW5TdHJva2Uoe3g6IDkyLCB5OiAw
fSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgicjEuaXNQb2ludEluU3Ryb2tlKHt4OiAxMTIs
IHk6IDEwfSkiLCAidHJ1ZSIpOworCisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJUZXN0IGdl
dFRvdGFsTGVuZ3RoKCkiKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oInIxLmdldFRvdGFsTGVuZ3Ro
KCkiLCA0MjQsIDEpOworCisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJUZXN0IGdldFBvaW50
QXRMZW5ndGgoKSIpOworICAgIHNob3VsZEJlQ2xvc2VUbygicjEuZ2V0UG9pbnRBdExlbmd0aCgw
KS54IiwgNTAsIDEpOworICAgIHNob3VsZEJlQ2xvc2VUbygicjEuZ2V0UG9pbnRBdExlbmd0aCgw
KS55IiwgMCwgMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJyMS5nZXRQb2ludEF0TGVuZ3RoKDI1
KS54IiwgNzUsIDEpOworICAgIHNob3VsZEJlQ2xvc2VUbygicjEuZ2V0UG9pbnRBdExlbmd0aCgy
NSkueSIsIDAsIDEpOworICAgIHNob3VsZEJlQ2xvc2VUbygicjEuZ2V0UG9pbnRBdExlbmd0aCgy
MDApLngiLCAxMTIsIDMpOworICAgIHNob3VsZEJlQ2xvc2VUbygicjEuZ2V0UG9pbnRBdExlbmd0
aCgyMDApLnkiLCAxMDAsIDMpOworICAgIHNob3VsZEJlQ2xvc2VUbygicjEuZ2V0UG9pbnRBdExl
bmd0aCgzMDApLngiLCAxNCwgMyk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJyMS5nZXRQb2ludEF0
TGVuZ3RoKDMwMCkueSIsIDg4LCAzKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oInIxLmdldFBvaW50
QXRMZW5ndGgoNDAwKS54IiwgMjcsIDMpOworICAgIHNob3VsZEJlQ2xvc2VUbygicjEuZ2V0UG9p
bnRBdExlbmd0aCg0MDApLnkiLCA1LCAzKTsKKworICAgIGZpbmlzaEpTVGVzdCgpOworfQorXV0+
Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2
Zy9kb20vc3ZnMi1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdmcvZG9t
L3N2ZzItaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0CmluZGV4IGE0MWMyYWMwMDA1NDc5ODE3MDI3
YmNkNDkwNmQ4NjM4N2I2MzEyMTIuLjYzZWZhZWVhMzI3MmJhYzA1OWMyNDFhOGY4ZGMyODExMTcx
MjI2ODIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N2Zy9kb20vc3ZnMi1pbmhlcml0YW5jZS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9zdmcyLWluaGVyaXRhbmNlLWV4
cGVjdGVkLnR4dApAQCAtMjcsNyArMjcsNyBAQCBQQVNTIFNWR0FuaW1hdGVkU3RyaW5nIGluaGVy
aXRzIE9iamVjdAogUEFTUyBTVkdBbmltYXRlZFRyYW5zZm9ybUxpc3QgaW5oZXJpdHMgT2JqZWN0
CiBQQVNTIFNWR0FuaW1hdGlvbkVsZW1lbnQgaW5oZXJpdHMgU1ZHRWxlbWVudAogRkFJTCBTVkdD
U1NSdWxlIGlzIG5vdCBkZWZpbmVkCi1GQUlMIFNWR0NpcmNsZUVsZW1lbnQgc2hvdWxkIGluaGVy
aXQgU1ZHR2VvbWV0cnlFbGVtZW50IGJ1dCBnb3QgU1ZHR3JhcGhpY3NFbGVtZW50IGluc3RlYWQK
K1BBU1MgU1ZHQ2lyY2xlRWxlbWVudCBpbmhlcml0cyBTVkdHZW9tZXRyeUVsZW1lbnQKIEZBSUwg
U1ZHQ2xpcFBhdGhFbGVtZW50IHNob3VsZCBpbmhlcml0IFNWR0RlZmluaXRpb25FbGVtZW50IGJ1
dCBnb3QgU1ZHR3JhcGhpY3NFbGVtZW50IGluc3RlYWQKIEZBSUwgU1ZHQ29sb3JQcm9maWxlRWxl
bWVudCBpcyBub3QgZGVmaW5lZAogRkFJTCBTVkdDb2xvclByb2ZpbGVSdWxlIGlzIG5vdCBkZWZp
bmVkCkBAIC0zNSw3ICszNSw3IEBAIFBBU1MgU1ZHQ3Vyc29yRWxlbWVudCBpbmhlcml0cyBTVkdF
bGVtZW50CiBQQVNTIFNWR0RlZnNFbGVtZW50IGluaGVyaXRzIFNWR0dyYXBoaWNzRWxlbWVudAog
UEFTUyBTVkdEZXNjRWxlbWVudCBpbmhlcml0cyBTVkdFbGVtZW50CiBQQVNTIFNWR0VsZW1lbnQg
aW5oZXJpdHMgRWxlbWVudAotRkFJTCBTVkdFbGxpcHNlRWxlbWVudCBzaG91bGQgaW5oZXJpdCBT
VkdHZW9tZXRyeUVsZW1lbnQgYnV0IGdvdCBTVkdHcmFwaGljc0VsZW1lbnQgaW5zdGVhZAorUEFT
UyBTVkdFbGxpcHNlRWxlbWVudCBpbmhlcml0cyBTVkdHZW9tZXRyeUVsZW1lbnQKIFBBU1MgU1ZH
Rm9udEVsZW1lbnQgaW5oZXJpdHMgU1ZHRWxlbWVudAogUEFTUyBTVkdGb250RmFjZUVsZW1lbnQg
aW5oZXJpdHMgU1ZHRWxlbWVudAogUEFTUyBTVkdGb250RmFjZUZvcm1hdEVsZW1lbnQgaW5oZXJp
dHMgU1ZHRWxlbWVudApAQCAtNTMsNyArNTMsNyBAQCBQQVNTIFNWR0hLZXJuRWxlbWVudCBpbmhl
cml0cyBTVkdFbGVtZW50CiBQQVNTIFNWR0ltYWdlRWxlbWVudCBpbmhlcml0cyBTVkdHcmFwaGlj
c0VsZW1lbnQKIFBBU1MgU1ZHTGVuZ3RoIGluaGVyaXRzIE9iamVjdAogUEFTUyBTVkdMZW5ndGhM
aXN0IGluaGVyaXRzIE9iamVjdAotRkFJTCBTVkdMaW5lRWxlbWVudCBzaG91bGQgaW5oZXJpdCBT
VkdHZW9tZXRyeUVsZW1lbnQgYnV0IGdvdCBTVkdHcmFwaGljc0VsZW1lbnQgaW5zdGVhZAorUEFT
UyBTVkdMaW5lRWxlbWVudCBpbmhlcml0cyBTVkdHZW9tZXRyeUVsZW1lbnQKIFBBU1MgU1ZHTGlu
ZWFyR3JhZGllbnRFbGVtZW50IGluaGVyaXRzIFNWR0dyYWRpZW50RWxlbWVudAogUEFTUyBTVkdN
UGF0aEVsZW1lbnQgaW5oZXJpdHMgU1ZHRWxlbWVudAogUEFTUyBTVkdNYXJrZXJFbGVtZW50IGlu
aGVyaXRzIFNWR0VsZW1lbnQKQEAgLTkzLDEyICs5MywxMiBAQCBQQVNTIFNWR1BhdGhTZWdNb3Zl
dG9SZWwgaW5oZXJpdHMgU1ZHUGF0aFNlZwogUEFTUyBTVkdQYXR0ZXJuRWxlbWVudCBpbmhlcml0
cyBTVkdFbGVtZW50CiBQQVNTIFNWR1BvaW50IGluaGVyaXRzIE9iamVjdAogUEFTUyBTVkdQb2lu
dExpc3QgaW5oZXJpdHMgT2JqZWN0Ci1GQUlMIFNWR1BvbHlnb25FbGVtZW50IHNob3VsZCBpbmhl
cml0IFNWR0dlb21ldHJ5RWxlbWVudCBidXQgZ290IFNWR0dyYXBoaWNzRWxlbWVudCBpbnN0ZWFk
Ci1GQUlMIFNWR1BvbHlsaW5lRWxlbWVudCBzaG91bGQgaW5oZXJpdCBTVkdHZW9tZXRyeUVsZW1l
bnQgYnV0IGdvdCBTVkdHcmFwaGljc0VsZW1lbnQgaW5zdGVhZAorUEFTUyBTVkdQb2x5Z29uRWxl
bWVudCBpbmhlcml0cyBTVkdHZW9tZXRyeUVsZW1lbnQKK1BBU1MgU1ZHUG9seWxpbmVFbGVtZW50
IGluaGVyaXRzIFNWR0dlb21ldHJ5RWxlbWVudAogUEFTUyBTVkdQcmVzZXJ2ZUFzcGVjdFJhdGlv
IGluaGVyaXRzIE9iamVjdAogUEFTUyBTVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQgaW5oZXJpdHMg
U1ZHR3JhZGllbnRFbGVtZW50CiBQQVNTIFNWR1JlY3QgaW5oZXJpdHMgT2JqZWN0Ci1GQUlMIFNW
R1JlY3RFbGVtZW50IHNob3VsZCBpbmhlcml0IFNWR0dlb21ldHJ5RWxlbWVudCBidXQgZ290IFNW
R0dyYXBoaWNzRWxlbWVudCBpbnN0ZWFkCitQQVNTIFNWR1JlY3RFbGVtZW50IGluaGVyaXRzIFNW
R0dlb21ldHJ5RWxlbWVudAogUEFTUyBTVkdTVkdFbGVtZW50IGluaGVyaXRzIFNWR0dyYXBoaWNz
RWxlbWVudAogUEFTUyBTVkdTY3JpcHRFbGVtZW50IGluaGVyaXRzIFNWR0VsZW1lbnQKIFBBU1Mg
U1ZHU2V0RWxlbWVudCBpbmhlcml0cyBTVkdBbmltYXRpb25FbGVtZW50Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>340694</attachid>
            <date>2018-05-18 07:38:07 -0700</date>
            <delta_ts>2018-05-18 08:23:01 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-185600-20180518163802.patch</filename>
            <type>text/plain</type>
            <size>54193</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMxNzM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2Y1NDBhZWMyYTczNTAz
YmVhM2JiMGQzZDliYTM0OTcyM2I4ODMzNy4uMTI2YTg2NzQ2NjhiNDVmYWU1NDUyOGY1MDM4OTNh
NDJiYjM3NzdhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU4IEBACisyMDE4LTA1LTEzICBEaXJr
IFNjaHVsemUgIDxrcml0QHdlYmtpdC5vcmc+CisKKyAgICAgICAgTWFrZSBhbGwgU1ZHIHNoYXBl
IGludGVyZmFjZXMgaW5oZXJpdCBmcm9tIFNWR0dlb21ldHJ5RWxlbWVudAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg1NjAwCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgQW50dGkgS29pdmlzdG8uCisKKyAgICAgICAgTWFrZSBhbGwgU1ZHIHNoYXBlIGlu
dGVyZmFjZXMgaW5oZXJpdCBmcm9tIFNWR0dlb21ldHJ5RWxlbWVudAorICAgICAgICBhcyBkZWZp
bmVkIGJ5IFNWRzI6CisKKyAgICAgICAgaHR0cHM6Ly9zdmd3Zy5vcmcvc3ZnMi1kcmFmdC9zaGFw
ZXMuaHRtbCNET01JbnRlcmZhY2VzCisKKyAgICAgICAgVGVzdHM6IHN2Zy9kb20vU1ZHR2VvbWV0
cnktY2lyY2xlLnhodG1sCisgICAgICAgICAgICAgICBzdmcvZG9tL1NWR0dlb21ldHJ5LWVsbGlw
c2UueGh0bWwKKyAgICAgICAgICAgICAgIHN2Zy9kb20vU1ZHR2VvbWV0cnktbGluZS54aHRtbAor
ICAgICAgICAgICAgICAgc3ZnL2RvbS9TVkdHZW9tZXRyeS1wb2x5Z29uLnhodG1sCisgICAgICAg
ICAgICAgICBzdmcvZG9tL1NWR0dlb21ldHJ5LXBvbHlsaW5lLnhodG1sCisgICAgICAgICAgICAg
ICBzdmcvZG9tL1NWR0dlb21ldHJ5LXJlY3QueGh0bWwKKworICAgICAgICAqIHJlbmRlcmluZy9z
dmcvUmVuZGVyU1ZHU2hhcGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU1ZHU2hhcGU6
OmdldFRvdGFsTGVuZ3RoIGNvbnN0KTogQWRkZWQgc2hhcGUKKyAgICAgICAgICAgICAgICBpbmRl
cGVuZGVudCBpbXBsZW1lbnRhdGlvbiBmb3IgYWxsIG1ldGhvZHMgZGVmaW5lZAorICAgICAgICAg
ICAgICAgIGJ5IFNWR0dlb21ldHJ5RWxlbWVudCBpbnRlcmZhY2UuIENhbGN1bGF0aW9ucyBhcmUK
KyAgICAgICAgICAgICAgICBiYXNlZCBvbiB0aGUgUGF0aCBvYmplY3QgY3JlYXRlZCBhbmQgcmVm
ZXJlbmNlZCBieQorICAgICAgICAgICAgICAgIFJlbmRlclNWR1NoYXBlLgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyU1ZHU2hhcGU6OmdldFBvaW50QXRMZW5ndGggY29uc3QpOgorICAgICAgICAq
IHJlbmRlcmluZy9zdmcvUmVuZGVyU1ZHU2hhcGUuaDoKKyAgICAgICAgKiBzdmcvU1ZHQ2lyY2xl
RWxlbWVudC5jcHA6CisgICAgICAgICAgICAgICAgUmVwZWF0aW5nIHBhdHRlcm46IENoYW5nZSBp
bmhlcml0YW5jZSBmcm9tCisgICAgICAgICAgICAgICAgU1ZHR3JhcGhpY3NFbGVtZW50IHRvIFNW
R0dlb21ldHJ5RWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OlNWR0NpcmNsZUVsZW1lbnQ6OlNW
R0NpcmNsZUVsZW1lbnQpOgorICAgICAgICAqIHN2Zy9TVkdDaXJjbGVFbGVtZW50Lmg6CisgICAg
ICAgICogc3ZnL1NWR0NpcmNsZUVsZW1lbnQuaWRsOgorICAgICAgICAqIHN2Zy9TVkdFbGxpcHNl
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdFbGxpcHNlRWxlbWVudDo6U1ZHRWxs
aXBzZUVsZW1lbnQpOgorICAgICAgICAqIHN2Zy9TVkdFbGxpcHNlRWxlbWVudC5oOgorICAgICAg
ICAqIHN2Zy9TVkdFbGxpcHNlRWxlbWVudC5pZGw6CisgICAgICAgICogc3ZnL1NWR0dlb21ldHJ5
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdHZW9tZXRyeUVsZW1lbnQ6OmdldFRv
dGFsTGVuZ3RoIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlNWR0dlb21ldHJ5RWxlbWVudDo6
Z2V0UG9pbnRBdExlbmd0aCBjb25zdCk6CisgICAgICAgICogc3ZnL1NWR0dlb21ldHJ5RWxlbWVu
dC5oOgorICAgICAgICAqIHN2Zy9TVkdMaW5lRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTVkdMaW5lRWxlbWVudDo6U1ZHTGluZUVsZW1lbnQpOgorICAgICAgICAqIHN2Zy9TVkdMaW5l
RWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdMaW5lRWxlbWVudC5pZGw6CisgICAgICAgICog
c3ZnL1NWR1BvbHlFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1BvbHlFbGVtZW50
OjpTVkdQb2x5RWxlbWVudCk6CisgICAgICAgICogc3ZnL1NWR1BvbHlFbGVtZW50Lmg6CisgICAg
ICAgICogc3ZnL1NWR1BvbHlnb25FbGVtZW50LmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUG9seWxp
bmVFbGVtZW50LmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUmVjdEVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6U1ZHUmVjdEVsZW1lbnQ6OlNWR1JlY3RFbGVtZW50KToKKyAgICAgICAgKiBz
dmcvU1ZHUmVjdEVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHUmVjdEVsZW1lbnQuaWRsOgor
CiAyMDE4LTA1LTEzICBEaXJrIFNjaHVsemUgIDxrcml0QHdlYmtpdC5vcmc+CiAKICAgICAgICAg
SW1wbGVtZW50IFNWR0dlb21ldHJ5RWxlbWVudCdzIGlzUG9pbnRJbkZpbGwgYW5kIGlzUG9pbnRJ
blN0cm9rZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJT
VkdTaGFwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1NoYXBl
LmNwcAppbmRleCBiZjA2NTNkNjA1NTFhYmQ0Y2VkZTY4YmYwYzk5Y2U1NTE2YTY3ZTcyLi4wOWY5
MWU5NDJjNDQ3MTBkZjRhMTg2OTQyN2Q0ZjYwY2ZiZjk3NDhlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1NoYXBlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1NoYXBlLmNwcApAQCAtMzQ1LDYgKzM0NSwyMyBA
QCBib29sIFJlbmRlclNWR1NoYXBlOjppc1BvaW50SW5TdHJva2UoY29uc3QgRmxvYXRQb2ludCYg
cG9pbnQpCiAgICAgcmV0dXJuIHNoYXBlRGVwZW5kZW50U3Ryb2tlQ29udGFpbnMocG9pbnQsIExv
Y2FsQ29vcmRpbmF0ZVNwYWNlKTsKIH0KIAorZmxvYXQgUmVuZGVyU1ZHU2hhcGU6OmdldFRvdGFs
TGVuZ3RoKCkgY29uc3QKK3sKKyAgICBpZiAobV9wYXRoKQorICAgICAgICByZXR1cm4gbV9wYXRo
LT5sZW5ndGgoKTsKKworICAgIHJldHVybiAwOworfQorCit2b2lkIFJlbmRlclNWR1NoYXBlOjpn
ZXRQb2ludEF0TGVuZ3RoKEZsb2F0UG9pbnQmIHBvaW50LCBmbG9hdCBkaXN0YW5jZSkgY29uc3QK
K3sKKyAgICBpZiAoIW1fcGF0aCkKKyAgICAgICAgcmV0dXJuOworCisgICAgYm9vbCBpc1ZhbGlk
OworICAgIHBvaW50ID0gbV9wYXRoLT5wb2ludEF0TGVuZ3RoKGRpc3RhbmNlLCBpc1ZhbGlkKTsK
K30KKwogYm9vbCBSZW5kZXJTVkdTaGFwZTo6bm9kZUF0RmxvYXRQb2ludChjb25zdCBIaXRUZXN0
UmVxdWVzdCYgcmVxdWVzdCwgSGl0VGVzdFJlc3VsdCYgcmVzdWx0LCBjb25zdCBGbG9hdFBvaW50
JiBwb2ludEluUGFyZW50LCBIaXRUZXN0QWN0aW9uIGhpdFRlc3RBY3Rpb24pCiB7CiAgICAgLy8g
V2Ugb25seSBkcmF3IGluIHRoZSBmb3Jncm91bmQgcGhhc2UsIHNvIHdlIG9ubHkgaGl0LXRlc3Qg
dGhlbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZH
U2hhcGUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHU2hhcGUuaApp
bmRleCBkOGMyZTU2YWViMmFiMmI2YjI0YTA2MmFhYjJjNzMxMTA2MjExMTMxLi40ZjBhNzhmNThm
MWQ1YTFjNGMyNTA3MjBiOGUzYWQyYTNjMGI3YWMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1NoYXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N2Zy9SZW5kZXJTVkdTaGFwZS5oCkBAIC02NSw2ICs2NSw5IEBAIHB1YmxpYzoKICAg
ICBib29sIGlzUG9pbnRJbkZpbGwoY29uc3QgRmxvYXRQb2ludCYpOwogICAgIGJvb2wgaXNQb2lu
dEluU3Ryb2tlKGNvbnN0IEZsb2F0UG9pbnQmKTsKIAorICAgIGZsb2F0IGdldFRvdGFsTGVuZ3Ro
KCkgY29uc3Q7CisgICAgdm9pZCBnZXRQb2ludEF0TGVuZ3RoKEZsb2F0UG9pbnQmLCBmbG9hdCBk
aXN0YW5jZSkgY29uc3Q7CisKICAgICBib29sIGhhc1BhdGgoKSBjb25zdCB7IHJldHVybiBtX3Bh
dGguZ2V0KCk7IH0KICAgICBQYXRoJiBwYXRoKCkgY29uc3QKICAgICB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ2lyY2xlRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHQ2lyY2xlRWxlbWVudC5jcHAKaW5kZXggNTNlZDIwMjllNmU5M2NmYTZlYmIzNWYyZjJi
ZTVmYTBlZGZkMzZlYi4uMjkyODY1MzY5MGZiNGY5Mzc5ODJhNTcyYWUzNjAxZmZhMjJlM2E1YiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdDaXJjbGVFbGVtZW50LmNwcApAQCAtNDQsMTEgKzQ0LDEx
IEBAIEJFR0lOX1JFR0lTVEVSX0FOSU1BVEVEX1BST1BFUlRJRVMoU1ZHQ2lyY2xlRWxlbWVudCkK
ICAgICBSRUdJU1RFUl9MT0NBTF9BTklNQVRFRF9QUk9QRVJUWShjeSkKICAgICBSRUdJU1RFUl9M
T0NBTF9BTklNQVRFRF9QUk9QRVJUWShyKQogICAgIFJFR0lTVEVSX0xPQ0FMX0FOSU1BVEVEX1BS
T1BFUlRZKGV4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQpCi0gICAgUkVHSVNURVJfUEFSRU5UX0FO
SU1BVEVEX1BST1BFUlRJRVMoU1ZHR3JhcGhpY3NFbGVtZW50KQorICAgIFJFR0lTVEVSX1BBUkVO
VF9BTklNQVRFRF9QUk9QRVJUSUVTKFNWR0dlb21ldHJ5RWxlbWVudCkKIEVORF9SRUdJU1RFUl9B
TklNQVRFRF9QUk9QRVJUSUVTCiAKIGlubGluZSBTVkdDaXJjbGVFbGVtZW50OjpTVkdDaXJjbGVF
bGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50JiBkb2N1bWVudCkK
LSAgICA6IFNWR0dyYXBoaWNzRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkKKyAgICA6IFNWR0dl
b21ldHJ5RWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkKICAgICAsIG1fY3goTGVuZ3RoTW9kZVdp
ZHRoKQogICAgICwgbV9jeShMZW5ndGhNb2RlSGVpZ2h0KQogICAgICwgbV9yKExlbmd0aE1vZGVP
dGhlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdDaXJjbGVFbGVtZW50Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ2lyY2xlRWxlbWVudC5oCmluZGV4IDk5YTI3NzllYzEx
M2U2OTRlMjI1ZWZlN2Q3YjdkNTMwMjZlNWZlNzkuLmFjM2JiYjE1MmExNzE4MDZiZGZkZmIyOGI3
MjUyZGUwNjY2ODRjMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdDaXJjbGVF
bGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuaApAQCAt
MjMsMTEgKzIzLDExIEBACiAjaW5jbHVkZSAiU1ZHQW5pbWF0ZWRCb29sZWFuLmgiCiAjaW5jbHVk
ZSAiU1ZHQW5pbWF0ZWRMZW5ndGguaCIKICNpbmNsdWRlICJTVkdFeHRlcm5hbFJlc291cmNlc1Jl
cXVpcmVkLmgiCi0jaW5jbHVkZSAiU1ZHR3JhcGhpY3NFbGVtZW50LmgiCisjaW5jbHVkZSAiU1ZH
R2VvbWV0cnlFbGVtZW50LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgU1ZHQ2ly
Y2xlRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBTVkdHcmFwaGljc0VsZW1lbnQsIHB1YmxpYyBTVkdF
eHRlcm5hbFJlc291cmNlc1JlcXVpcmVkIHsKK2NsYXNzIFNWR0NpcmNsZUVsZW1lbnQgZmluYWwg
OiBwdWJsaWMgU1ZHR2VvbWV0cnlFbGVtZW50LCBwdWJsaWMgU1ZHRXh0ZXJuYWxSZXNvdXJjZXNS
ZXF1aXJlZCB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChTVkdDaXJjbGVFbGVtZW50KTsK
IHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPFNWR0NpcmNsZUVsZW1lbnQ+IGNyZWF0ZShjb25zdCBR
dWFsaWZpZWROYW1lJiwgRG9jdW1lbnQmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdDaXJjbGVFbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdDaXJjbGVFbGVt
ZW50LmlkbAppbmRleCAyNmU5ZWY2ZGE0ODkxZTM3ODg4MTdhYWE0YzE4NGFkZGNkNjZkNGU4Li41
NGUxYWI0ZjBmMTJhNzM0NGE2MDAyNTBjNTE0YzIyOGIxNGFjODNhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHQ2lyY2xlRWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR0NpcmNsZUVsZW1lbnQuaWRsCkBAIC0yNCw3ICsyNCw3IEBACiAgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LiAKICAqLwogCi1pbnRlcmZhY2UgU1ZHQ2lyY2xlRWxlbWVudCA6IFNWR0dyYXBoaWNzRWxlbWVu
dCB7CitpbnRlcmZhY2UgU1ZHQ2lyY2xlRWxlbWVudCA6IFNWR0dlb21ldHJ5RWxlbWVudCB7CiAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIFNWR0FuaW1hdGVkTGVuZ3RoIGN4OwogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBTVkdBbmltYXRlZExlbmd0aCBjeTsKICAgICByZWFkb25seSBhdHRyaWJ1dGUg
U1ZHQW5pbWF0ZWRMZW5ndGggcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdF
bGxpcHNlRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRWxsaXBzZUVsZW1lbnQu
Y3BwCmluZGV4IGZiY2I0NzViM2E1ZTY1Y2UyNjFmNTc5OWJhYmZhNTgzZWRhZDk0MDEuLjk2YTY3
NzQ1MzVlZTMwZTg2YmU2YjY5OGNiNDg4ZTA5M2M3YjU0ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdFbGxpcHNlRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR0VsbGlwc2VFbGVtZW50LmNwcApAQCAtNDYsMTEgKzQ2LDExIEBAIEJFR0lOX1JFR0lTVEVS
X0FOSU1BVEVEX1BST1BFUlRJRVMoU1ZHRWxsaXBzZUVsZW1lbnQpCiAgICAgUkVHSVNURVJfTE9D
QUxfQU5JTUFURURfUFJPUEVSVFkocngpCiAgICAgUkVHSVNURVJfTE9DQUxfQU5JTUFURURfUFJP
UEVSVFkocnkpCiAgICAgUkVHSVNURVJfTE9DQUxfQU5JTUFURURfUFJPUEVSVFkoZXh0ZXJuYWxS
ZXNvdXJjZXNSZXF1aXJlZCkKLSAgICBSRUdJU1RFUl9QQVJFTlRfQU5JTUFURURfUFJPUEVSVElF
UyhTVkdHcmFwaGljc0VsZW1lbnQpCisgICAgUkVHSVNURVJfUEFSRU5UX0FOSU1BVEVEX1BST1BF
UlRJRVMoU1ZHR2VvbWV0cnlFbGVtZW50KQogRU5EX1JFR0lTVEVSX0FOSU1BVEVEX1BST1BFUlRJ
RVMKIAogaW5saW5lIFNWR0VsbGlwc2VFbGVtZW50OjpTVkdFbGxpcHNlRWxlbWVudChjb25zdCBR
dWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCYgZG9jdW1lbnQpCi0gICAgOiBTVkdHcmFw
aGljc0VsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCisgICAgOiBTVkdHZW9tZXRyeUVsZW1lbnQo
dGFnTmFtZSwgZG9jdW1lbnQpCiAgICAgLCBtX2N4KExlbmd0aE1vZGVXaWR0aCkKICAgICAsIG1f
Y3koTGVuZ3RoTW9kZUhlaWdodCkKICAgICAsIG1fcngoTGVuZ3RoTW9kZVdpZHRoKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsbGlwc2VFbGVtZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHRWxsaXBzZUVsZW1lbnQuaAppbmRleCA1NWNjNTgwYzEwMjI4ZGY5YzdiYjgz
MDEyMDI4ZmFjN2Q5OGQzNWIyLi4yNTcwMzI3ZmZkNmQ1N2Y1YzAxY2Y4NmFhNGJhZDBmYWE5NzBm
M2M3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRWxsaXBzZUVsZW1lbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRWxsaXBzZUVsZW1lbnQuaApAQCAtMjMsMTEgKzIz
LDExIEBACiAjaW5jbHVkZSAiU1ZHQW5pbWF0ZWRCb29sZWFuLmgiCiAjaW5jbHVkZSAiU1ZHQW5p
bWF0ZWRMZW5ndGguaCIKICNpbmNsdWRlICJTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkLmgi
Ci0jaW5jbHVkZSAiU1ZHR3JhcGhpY3NFbGVtZW50LmgiCisjaW5jbHVkZSAiU1ZHR2VvbWV0cnlF
bGVtZW50LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgU1ZHRWxsaXBzZUVsZW1l
bnQgZmluYWwgOiBwdWJsaWMgU1ZHR3JhcGhpY3NFbGVtZW50LCBwdWJsaWMgU1ZHRXh0ZXJuYWxS
ZXNvdXJjZXNSZXF1aXJlZCB7CitjbGFzcyBTVkdFbGxpcHNlRWxlbWVudCBmaW5hbCA6IHB1Ymxp
YyBTVkdHZW9tZXRyeUVsZW1lbnQsIHB1YmxpYyBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVk
IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFNWR0VsbGlwc2VFbGVtZW50KTsKIHB1Ymxp
YzoKICAgICBzdGF0aWMgUmVmPFNWR0VsbGlwc2VFbGVtZW50PiBjcmVhdGUoY29uc3QgUXVhbGlm
aWVkTmFtZSYsIERvY3VtZW50Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
RWxsaXBzZUVsZW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsbGlwc2VFbGVtZW50
LmlkbAppbmRleCAxNmE1OTg4ZWE1MmUwYThkMGU0YWY2NjczNTE2ZWE2NDc3YjFmYmEyLi43ZDA5
YTY1YzU4Y2NlMjljMGRmNjUzNzgyNjgyZTk1MGFjYmMzOGQ5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHRWxsaXBzZUVsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdFbGxpcHNlRWxlbWVudC5pZGwKQEAgLTIzLDcgKzIzLDcgQEAKICAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
IAogICovCiAKLWludGVyZmFjZSBTVkdFbGxpcHNlRWxlbWVudCA6IFNWR0dyYXBoaWNzRWxlbWVu
dCB7CitpbnRlcmZhY2UgU1ZHRWxsaXBzZUVsZW1lbnQgOiBTVkdHZW9tZXRyeUVsZW1lbnQgewog
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdBbmltYXRlZExlbmd0aCBjeDsKICAgICByZWFkb25s
eSBhdHRyaWJ1dGUgU1ZHQW5pbWF0ZWRMZW5ndGggY3k7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IFNWR0FuaW1hdGVkTGVuZ3RoIHJ4OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R0dlb21ldHJ5RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHR2VvbWV0cnlFbGVt
ZW50LmNwcAppbmRleCAxYWZiNTdlMjdhMDAwY2YwZWU3Njk0NDQyMmU2Y2I5MjQ5MjZlYzNmLi44
NmE0NTQ0Y2QxOWM4MThhZGFmZGVhNGFmMzdiYjcxYWVhZDRmZTc1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHR2VvbWV0cnlFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHR2VvbWV0cnlFbGVtZW50LmNwcApAQCAtNTIsNiArNTIsMzAgQEAgU1ZHR2VvbWV0
cnlFbGVtZW50OjpTVkdHZW9tZXRyeUVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFt
ZSwgRG9jdW1lbnQmIGQKICAgICByZWdpc3RlckFuaW1hdGVkUHJvcGVydGllc0ZvclNWR0dlb21l
dHJ5RWxlbWVudCgpOwogfQogCitmbG9hdCBTVkdHZW9tZXRyeUVsZW1lbnQ6OmdldFRvdGFsTGVu
Z3RoKCkgY29uc3QKK3sKKyAgICBkb2N1bWVudCgpLnVwZGF0ZUxheW91dElnbm9yZVBlbmRpbmdT
dHlsZXNoZWV0cygpOworCisgICAgYXV0byogcmVuZGVyZXIgPSBkb3duY2FzdDxSZW5kZXJTVkdT
aGFwZT4odGhpcy0+cmVuZGVyZXIoKSk7CisgICAgaWYgKCFyZW5kZXJlcikKKyAgICAgICAgcmV0
dXJuIDA7CisKKyAgICByZXR1cm4gcmVuZGVyZXItPmdldFRvdGFsTGVuZ3RoKCk7Cit9CisKK1Jl
ZjxTVkdQb2ludD4gU1ZHR2VvbWV0cnlFbGVtZW50OjpnZXRQb2ludEF0TGVuZ3RoKGZsb2F0IGRp
c3RhbmNlKSBjb25zdAoreworICAgIEZsb2F0UG9pbnQgcG9pbnQgeyB9OworCisgICAgZG9jdW1l
bnQoKS51cGRhdGVMYXlvdXRJZ25vcmVQZW5kaW5nU3R5bGVzaGVldHMoKTsKKworICAgIGF1dG8q
IHJlbmRlcmVyID0gZG93bmNhc3Q8UmVuZGVyU1ZHU2hhcGU+KHRoaXMtPnJlbmRlcmVyKCkpOwor
ICAgIGlmIChyZW5kZXJlcikKKyAgICAgICAgcmVuZGVyZXItPmdldFBvaW50QXRMZW5ndGgocG9p
bnQsIGRpc3RhbmNlKTsKKworICAgIHJldHVybiBTVkdQb2ludDo6Y3JlYXRlKHBvaW50KTsKK30K
KwogYm9vbCBTVkdHZW9tZXRyeUVsZW1lbnQ6OmlzUG9pbnRJbkZpbGwoRE9NUG9pbnRJbml0JiYg
cG9pbnRJbml0KQogewogICAgIGRvY3VtZW50KCkudXBkYXRlTGF5b3V0SWdub3JlUGVuZGluZ1N0
eWxlc2hlZXRzKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHR2VvbWV0cnlF
bGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHR2VvbWV0cnlFbGVtZW50LmgKaW5kZXgg
ZmZmMDI2MjM5NjUzZDk1NzhjZTBkZTMwNzYzNTRhOTYwMzdkZTVkOS4uOTJkODY0NThjNTQ1NWIz
OTQyZDI3OWFiYjc3ODZiMTNkNDFkMmVjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR0dlb21ldHJ5RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdHZW9tZXRy
eUVsZW1lbnQuaApAQCAtMzcsOCArMzcsOCBAQCBjbGFzcyBTVkdHZW9tZXRyeUVsZW1lbnQgOiBw
dWJsaWMgU1ZHR3JhcGhpY3NFbGVtZW50IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFNW
R0dlb21ldHJ5RWxlbWVudCk7CiBwdWJsaWM6CiAgICAgCi0gICAgdmlydHVhbCBmbG9hdCBnZXRU
b3RhbExlbmd0aCgpIGNvbnN0ID0gMDsKLSAgICB2aXJ0dWFsIFJlZjxTVkdQb2ludD4gZ2V0UG9p
bnRBdExlbmd0aChmbG9hdCBkaXN0YW5jZSkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgZmxvYXQg
Z2V0VG90YWxMZW5ndGgoKSBjb25zdDsKKyAgICB2aXJ0dWFsIFJlZjxTVkdQb2ludD4gZ2V0UG9p
bnRBdExlbmd0aChmbG9hdCBkaXN0YW5jZSkgY29uc3Q7CiAKICAgICBib29sIGlzUG9pbnRJbkZp
bGwoRE9NUG9pbnRJbml0JiYpOwogICAgIGJvb2wgaXNQb2ludEluU3Ryb2tlKERPTVBvaW50SW5p
dCYmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdMaW5lRWxlbWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTGluZUVsZW1lbnQuY3BwCmluZGV4IDQwNmZhYmM4MWRl
N2Q5NzkzOTA4NDQ1ZGYwMjY1OWE5NzhhNzI3MWEuLjM0ODE1ZGYxNjMyNWE4ZGNjM2UyYmNjZmEx
NDMxN2E1MmQ5NTE4MGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdMaW5lRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0xpbmVFbGVtZW50LmNwcApAQCAt
NDYsMTEgKzQ2LDExIEBAIEJFR0lOX1JFR0lTVEVSX0FOSU1BVEVEX1BST1BFUlRJRVMoU1ZHTGlu
ZUVsZW1lbnQpCiAgICAgUkVHSVNURVJfTE9DQUxfQU5JTUFURURfUFJPUEVSVFkoeDIpCiAgICAg
UkVHSVNURVJfTE9DQUxfQU5JTUFURURfUFJPUEVSVFkoeTIpCiAgICAgUkVHSVNURVJfTE9DQUxf
QU5JTUFURURfUFJPUEVSVFkoZXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZCkKLSAgICBSRUdJU1RF
Ul9QQVJFTlRfQU5JTUFURURfUFJPUEVSVElFUyhTVkdHcmFwaGljc0VsZW1lbnQpCisgICAgUkVH
SVNURVJfUEFSRU5UX0FOSU1BVEVEX1BST1BFUlRJRVMoU1ZHR2VvbWV0cnlFbGVtZW50KQogRU5E
X1JFR0lTVEVSX0FOSU1BVEVEX1BST1BFUlRJRVMKIAogaW5saW5lIFNWR0xpbmVFbGVtZW50OjpT
VkdMaW5lRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCYgZG9j
dW1lbnQpCi0gICAgOiBTVkdHcmFwaGljc0VsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCisgICAg
OiBTVkdHZW9tZXRyeUVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCiAgICAgLCBtX3gxKExlbmd0
aE1vZGVXaWR0aCkKICAgICAsIG1feTEoTGVuZ3RoTW9kZUhlaWdodCkKICAgICAsIG1feDIoTGVu
Z3RoTW9kZVdpZHRoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0xpbmVFbGVt
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTGluZUVsZW1lbnQuaAppbmRleCBmNDkwYjUw
ODBiNDNhNmE4Nzk4MzUwYzg5ZjZjMzdjNzYwZTQ2YzA4Li42MDliNmQ5M2QwNGM3MWE5ODI2OTNj
NGE0ZDZhZDJjZGUxYjMxOTQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTGlu
ZUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTGluZUVsZW1lbnQuaApAQCAt
MjMsMTEgKzIzLDExIEBACiAjaW5jbHVkZSAiU1ZHQW5pbWF0ZWRCb29sZWFuLmgiCiAjaW5jbHVk
ZSAiU1ZHQW5pbWF0ZWRMZW5ndGguaCIKICNpbmNsdWRlICJTVkdFeHRlcm5hbFJlc291cmNlc1Jl
cXVpcmVkLmgiCi0jaW5jbHVkZSAiU1ZHR3JhcGhpY3NFbGVtZW50LmgiCisjaW5jbHVkZSAiU1ZH
R2VvbWV0cnlFbGVtZW50LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgU1ZHTGlu
ZUVsZW1lbnQgZmluYWwgOiBwdWJsaWMgU1ZHR3JhcGhpY3NFbGVtZW50LCBwdWJsaWMgU1ZHRXh0
ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZCB7CitjbGFzcyBTVkdMaW5lRWxlbWVudCBmaW5hbCA6IHB1
YmxpYyBTVkdHZW9tZXRyeUVsZW1lbnQsIHB1YmxpYyBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVp
cmVkIHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFNWR0xpbmVFbGVtZW50KTsKIHB1Ymxp
YzoKICAgICBzdGF0aWMgUmVmPFNWR0xpbmVFbGVtZW50PiBjcmVhdGUoY29uc3QgUXVhbGlmaWVk
TmFtZSYsIERvY3VtZW50Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTGlu
ZUVsZW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0xpbmVFbGVtZW50LmlkbAppbmRl
eCA2YzhkZTY2ZWM4ODBjYzJkYjg0YmRkNGI0YmUzMDIxMjdjMmNhNGZiLi44ZDA4NDUxMzBmZDQy
MmRiNGMwNmI4ZmE5OTJkMTdkM2EzZDFjOGM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHTGluZUVsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdMaW5lRWxl
bWVudC5pZGwKQEAgLTIzLDcgKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLWludGVy
ZmFjZSBTVkdMaW5lRWxlbWVudCA6IFNWR0dyYXBoaWNzRWxlbWVudCB7CitpbnRlcmZhY2UgU1ZH
TGluZUVsZW1lbnQgOiBTVkdHZW9tZXRyeUVsZW1lbnQgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBTVkdBbmltYXRlZExlbmd0aCB4MTsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgU1ZHQW5pbWF0
ZWRMZW5ndGggeTE7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFNWR0FuaW1hdGVkTGVuZ3RoIHgy
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BvbHlFbGVtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdQb2x5RWxlbWVudC5jcHAKaW5kZXggOTFkZWNiZmM1ZTkzNjdl
OTQwYjViNjIzODQ2Y2U2ZmM4NWJlNDNjMy4uNjI4ZDNjZDIxNjA5MTc2ZDM2MWE1Mjg3MTVlYzI1
NzJhOTk2MDI4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BvbHlFbGVtZW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUG9seUVsZW1lbnQuY3BwCkBAIC01Nywx
MSArNTcsMTEgQEAgREVGSU5FX0FOSU1BVEVEX0JPT0xFQU4oU1ZHUG9seUVsZW1lbnQsIFNWR05h
bWVzOjpleHRlcm5hbFJlc291cmNlc1JlcXVpcmVkQXR0ciwKIEJFR0lOX1JFR0lTVEVSX0FOSU1B
VEVEX1BST1BFUlRJRVMoU1ZHUG9seUVsZW1lbnQpCiAgICAgUkVHSVNURVJfTE9DQUxfQU5JTUFU
RURfUFJPUEVSVFkocG9pbnRzKQogICAgIFJFR0lTVEVSX0xPQ0FMX0FOSU1BVEVEX1BST1BFUlRZ
KGV4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQpCi0gICAgUkVHSVNURVJfUEFSRU5UX0FOSU1BVEVE
X1BST1BFUlRJRVMoU1ZHR3JhcGhpY3NFbGVtZW50KQorICAgIFJFR0lTVEVSX1BBUkVOVF9BTklN
QVRFRF9QUk9QRVJUSUVTKFNWR0dlb21ldHJ5RWxlbWVudCkKIEVORF9SRUdJU1RFUl9BTklNQVRF
RF9QUk9QRVJUSUVTCiAKIFNWR1BvbHlFbGVtZW50OjpTVkdQb2x5RWxlbWVudChjb25zdCBRdWFs
aWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCYgZG9jdW1lbnQpCi0gICAgOiBTVkdHcmFwaGlj
c0VsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCisgICAgOiBTVkdHZW9tZXRyeUVsZW1lbnQodGFn
TmFtZSwgZG9jdW1lbnQpCiB7CiAgICAgcmVnaXN0ZXJBbmltYXRlZFByb3BlcnRpZXNGb3JTVkdQ
b2x5RWxlbWVudCgpOyAgICAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQ
b2x5RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BvbHlFbGVtZW50LmgKaW5kZXgg
NmI2Yjk1ZGU5MTU4NDExYzkzMTdkNzljNjI1NjBiNWIxMDMyOGQ5OC4uZGY3NjBlMGIwODBkYzE2
MWRhMzE5N2I0YjkyOTY4NzRmNzk0YzZiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR1BvbHlFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BvbHlFbGVtZW50
LmgKQEAgLTIyLDEzICsyMiwxMyBAQAogCiAjaW5jbHVkZSAiU1ZHQW5pbWF0ZWRCb29sZWFuLmgi
CiAjaW5jbHVkZSAiU1ZHRXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZC5oIgotI2luY2x1ZGUgIlNW
R0dyYXBoaWNzRWxlbWVudC5oIgorI2luY2x1ZGUgIlNWR0dlb21ldHJ5RWxlbWVudC5oIgogI2lu
Y2x1ZGUgIlNWR05hbWVzLmgiCiAjaW5jbHVkZSAiU1ZHUG9pbnRMaXN0VmFsdWVzLmgiCiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgU1ZHUG9seUVsZW1lbnQgOiBwdWJsaWMgU1ZHR3Jh
cGhpY3NFbGVtZW50LCBwdWJsaWMgU1ZHRXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZCB7CitjbGFz
cyBTVkdQb2x5RWxlbWVudCA6IHB1YmxpYyBTVkdHZW9tZXRyeUVsZW1lbnQsIHB1YmxpYyBTVkdF
eHRlcm5hbFJlc291cmNlc1JlcXVpcmVkIHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFNW
R1BvbHlFbGVtZW50KTsKIHB1YmxpYzoKICAgICBSZWY8U1ZHUG9pbnRMaXN0PiBwb2ludHMoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQb2x5Z29uRWxlbWVudC5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHUG9seWdvbkVsZW1lbnQuaWRsCmluZGV4IDgxNTgzNjUwMTIz
MWZjNDJlYjVhZTFmYWIwYWRmM2Q5MDg4OTFjOGIuLmUzMWI5MmJlMGRmNzFjNWZkYjFjNzFlMmNk
Mzk0ZTg4MTFhNGJiZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQb2x5Z29u
RWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BvbHlnb25FbGVtZW50Lmlk
bApAQCAtMjMsNyArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotaW50ZXJmYWNlIFNW
R1BvbHlnb25FbGVtZW50IDogU1ZHR3JhcGhpY3NFbGVtZW50IHsKK2ludGVyZmFjZSBTVkdQb2x5
Z29uRWxlbWVudCA6IFNWR0dlb21ldHJ5RWxlbWVudCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IFNWR1BvaW50TGlzdCBwb2ludHM7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFNWR1BvaW50TGlz
dCBhbmltYXRlZFBvaW50czsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
UG9seWxpbmVFbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQb2x5bGluZUVsZW1l
bnQuaWRsCmluZGV4IDk4NjQ1NGIzYjIwMDZhMTk1NDBjNjJiNWE4ZDE0NmVhYzMxY2M5MmMuLmFl
NGQ1NjcyMTE3NTM2ZDEzYWE1OWQyODJhZWQ3NzkyMjljMjE2MmEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdQb2x5bGluZUVsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdQb2x5bGluZUVsZW1lbnQuaWRsCkBAIC0yMyw3ICsyMyw3IEBACiAgKiBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLiAKICAqLwogCi1pbnRlcmZhY2UgU1ZHUG9seWxpbmVFbGVtZW50IDogU1ZHR3JhcGhpY3NF
bGVtZW50IHsKK2ludGVyZmFjZSBTVkdQb2x5bGluZUVsZW1lbnQgOiBTVkdHZW9tZXRyeUVsZW1l
bnQgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdQb2ludExpc3QgcG9pbnRzOwogICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBTVkdQb2ludExpc3QgYW5pbWF0ZWRQb2ludHM7CiB9OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1JlY3RFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdSZWN0RWxlbWVudC5jcHAKaW5kZXggMTg4ZGNmM2ZkNDllNDA5MjdmMmQ4YjQw
NDcxMDdjNTg5Y2VlOTkzOC4uYTA1ZjJhYmI1YzdkN2E5NzJjZjIzNDA0MTQyNzk1MTc2ZWMxODYx
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1JlY3RFbGVtZW50LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUmVjdEVsZW1lbnQuY3BwCkBAIC01MCwxMSArNTAsMTEg
QEAgQkVHSU5fUkVHSVNURVJfQU5JTUFURURfUFJPUEVSVElFUyhTVkdSZWN0RWxlbWVudCkKICAg
ICBSRUdJU1RFUl9MT0NBTF9BTklNQVRFRF9QUk9QRVJUWShyeCkKICAgICBSRUdJU1RFUl9MT0NB
TF9BTklNQVRFRF9QUk9QRVJUWShyeSkKICAgICBSRUdJU1RFUl9MT0NBTF9BTklNQVRFRF9QUk9Q
RVJUWShleHRlcm5hbFJlc291cmNlc1JlcXVpcmVkKQotICAgIFJFR0lTVEVSX1BBUkVOVF9BTklN
QVRFRF9QUk9QRVJUSUVTKFNWR0dyYXBoaWNzRWxlbWVudCkKKyAgICBSRUdJU1RFUl9QQVJFTlRf
QU5JTUFURURfUFJPUEVSVElFUyhTVkdHZW9tZXRyeUVsZW1lbnQpCiBFTkRfUkVHSVNURVJfQU5J
TUFURURfUFJPUEVSVElFUwogCiBpbmxpbmUgU1ZHUmVjdEVsZW1lbnQ6OlNWR1JlY3RFbGVtZW50
KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50JiBkb2N1bWVudCkKLSAgICA6
IFNWR0dyYXBoaWNzRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkKKyAgICA6IFNWR0dlb21ldHJ5
RWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkKICAgICAsIG1feChMZW5ndGhNb2RlV2lkdGgpCiAg
ICAgLCBtX3koTGVuZ3RoTW9kZUhlaWdodCkKICAgICAsIG1fd2lkdGgoTGVuZ3RoTW9kZVdpZHRo
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1JlY3RFbGVtZW50LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHUmVjdEVsZW1lbnQuaAppbmRleCBiNDY4ODMwZmQ1NjRkN2QzODE4
ZjQxZmExYTMxMWU2YTkwYzJmMTA1Li5kMjQwODY0M2YwNGVhN2FiNzhlZmU2YjA2N2U0MGQzM2E0
OWMyYmU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUmVjdEVsZW1lbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUmVjdEVsZW1lbnQuaApAQCAtMjMsMTIgKzIzLDEy
IEBACiAjaW5jbHVkZSAiU1ZHQW5pbWF0ZWRCb29sZWFuLmgiCiAjaW5jbHVkZSAiU1ZHQW5pbWF0
ZWRMZW5ndGguaCIKICNpbmNsdWRlICJTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkLmgiCi0j
aW5jbHVkZSAiU1ZHR3JhcGhpY3NFbGVtZW50LmgiCisjaW5jbHVkZSAiU1ZHR2VvbWV0cnlFbGVt
ZW50LmgiCiAjaW5jbHVkZSAiU1ZHTmFtZXMuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1j
bGFzcyBTVkdSZWN0RWxlbWVudCBmaW5hbCA6IHB1YmxpYyBTVkdHcmFwaGljc0VsZW1lbnQsIHB1
YmxpYyBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkIHsKK2NsYXNzIFNWR1JlY3RFbGVtZW50
IGZpbmFsIDogcHVibGljIFNWR0dlb21ldHJ5RWxlbWVudCwgcHVibGljIFNWR0V4dGVybmFsUmVz
b3VyY2VzUmVxdWlyZWQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoU1ZHUmVjdEVsZW1l
bnQpOwogcHVibGljOgogICAgIHN0YXRpYyBSZWY8U1ZHUmVjdEVsZW1lbnQ+IGNyZWF0ZShjb25z
dCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdSZWN0RWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUmVjdEVsZW1l
bnQuaWRsCmluZGV4IDAyMzllODBjMDczYTBmOTcxNTUwM2IwZjA4NTI5ZDc0NDRiYjA5NTcuLmVj
ZmNlZTY5ZmNmZGVhMWM1MDdhMzVkYzM4MmM0MzVlNGRlYmExYWYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdSZWN0RWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR1JlY3RFbGVtZW50LmlkbApAQCAtMjQsNyArMjQsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAg
Ki8KIAotaW50ZXJmYWNlIFNWR1JlY3RFbGVtZW50IDogU1ZHR3JhcGhpY3NFbGVtZW50IHsKK2lu
dGVyZmFjZSBTVkdSZWN0RWxlbWVudCA6IFNWR0dlb21ldHJ5RWxlbWVudCB7CiAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIFNWR0FuaW1hdGVkTGVuZ3RoIHg7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IFNWR0FuaW1hdGVkTGVuZ3RoIHk7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFNWR0FuaW1hdGVk
TGVuZ3RoIHdpZHRoOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDk4OTE2YmYyODJjZGQ1ZmY0OGE3M2YyOTlkZWI0MmRmODY3
OTAyZTUuLmNjMmQzNGU4NTM0MDUzMmYxN2MxOTYzNjcyY2YwZTc2YjQ0MzY1ZDcgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyOSBAQAorMjAxOC0wNS0xMyAgRGlyayBTY2h1bHplICA8a3JpdEB3ZWJraXQub3Jn
PgorCisgICAgICAgIE1ha2UgYWxsIFNWRyBzaGFwZSBpbnRlcmZhY2VzIGluaGVyaXQgZnJvbSBT
VkdHZW9tZXRyeUVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE4NTYwMAorCisgICAgICAgIFJldmlld2VkIGJ5IEFudHRpIEtvaXZpc3RvLgor
CisgICAgICAgIFVwZGF0ZSB0ZXN0IGZvciBpbmhlcml0YW5jZSBvZiBTVkcgc2hhcGUgaW50ZXJm
YWNlcyAobW9yZSBwYXNzZXMpLgorICAgICAgICBBZGQgaW5kaXZpZHVhbCB0ZXN0cyBmb3IgU1ZH
R2VvbWV0cnlFbGVtZW50IGludGVyZmFjZXMgZm9yIGVhY2gKKyAgICAgICAgU1ZHIHNoYXBlLiBU
aGVyZSBhbHJlYWR5IGFyZSBtb3JlIGRldGFpbGVkIHRlc3RzIGZvciB0aGUgbWV0aG9kcworICAg
ICAgICBhbmQgdGhlIFNWR1BhdGhFbGVtZW50IGludGVyZmFjZS4KKworICAgICAgICAqIHN2Zy9k
b20vU1ZHR2VvbWV0cnktY2lyY2xlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogc3Zn
L2RvbS9TVkdHZW9tZXRyeS1jaXJjbGUueGh0bWw6IEFkZGVkLgorICAgICAgICAqIHN2Zy9kb20v
U1ZHR2VvbWV0cnktZWxsaXBzZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHN2Zy9k
b20vU1ZHR2VvbWV0cnktZWxsaXBzZS54aHRtbDogQWRkZWQuCisgICAgICAgICogc3ZnL2RvbS9T
VkdHZW9tZXRyeS1saW5lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogc3ZnL2RvbS9T
VkdHZW9tZXRyeS1saW5lLnhodG1sOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvZG9tL1NWR0dlb21l
dHJ5LXBvbHlnb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBzdmcvZG9tL1NWR0dl
b21ldHJ5LXBvbHlnb24ueGh0bWw6IEFkZGVkLgorICAgICAgICAqIHN2Zy9kb20vU1ZHR2VvbWV0
cnktcG9seWxpbmUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBzdmcvZG9tL1NWR0dl
b21ldHJ5LXBvbHlsaW5lLnhodG1sOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvZG9tL1NWR0dlb21l
dHJ5LXJlY3QtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBzdmcvZG9tL1NWR0dlb21l
dHJ5LXJlY3QueGh0bWw6IEFkZGVkLgorICAgICAgICAqIHN2Zy9kb20vc3ZnMi1pbmhlcml0YW5j
ZS1leHBlY3RlZC50eHQ6CisKIDIwMTgtMDUtMTMgIERpcmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0
Lm9yZz4KIAogICAgICAgICBJbXBsZW1lbnQgU1ZHR2VvbWV0cnlFbGVtZW50J3MgaXNQb2ludElu
RmlsbCBhbmQgaXNQb2ludEluU3Ryb2tlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvZG9t
L1NWR0dlb21ldHJ5LWNpcmNsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdmcvZG9tL1NW
R0dlb21ldHJ5LWNpcmNsZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGU3NmFkYWM3OTI2YmVk
NzY2MmMxMGEzNzUxYzE0ZmY5MWY1YjViYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L3N2Zy9kb20vU1ZHR2VvbWV0cnktY2lyY2xlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQ5IEBA
CitUZXN0IFNWR0dlb21ldHJ5RWxlbWVudCBBUElzIGZvciBjaXJjbGUuCisKK09uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KKworCisKK1Rlc3QgaXNQb2ludEluRmlsbCgpCitQQVNTIGMxLmlzUG9p
bnRJbkZpbGwoe30pIGlzIGZhbHNlCitQQVNTIGMxLmlzUG9pbnRJbkZpbGwoe3g6IDUwLCB5OiA1
MH0pIGlzIHRydWUKK1BBU1MgYzEuaXNQb2ludEluRmlsbCh7eDogMCwgeTogNTB9KSBpcyB0cnVl
CitQQVNTIGMxLmlzUG9pbnRJbkZpbGwoe3g6IDEwMCwgeTogNTB9KSBpcyB0cnVlCitQQVNTIGMx
LmlzUG9pbnRJbkZpbGwoe3g6IDUwLCB5OiAwfSkgaXMgdHJ1ZQorUEFTUyBjMS5pc1BvaW50SW5G
aWxsKHt4OiA1MCwgeTogMTAwfSkgaXMgdHJ1ZQorUEFTUyBjMS5pc1BvaW50SW5GaWxsKHt4OiAt
MSwgeTogNTB9KSBpcyBmYWxzZQorUEFTUyBjMS5pc1BvaW50SW5GaWxsKHt4OiAxMDEsIHk6IDUw
fSkgaXMgZmFsc2UKK1BBU1MgYzEuaXNQb2ludEluRmlsbCh7eDogNTAsIHk6IC0xfSkgaXMgZmFs
c2UKK1BBU1MgYzEuaXNQb2ludEluRmlsbCh7eDogNTAsIHk6IDEwMX0pIGlzIGZhbHNlCitQQVNT
IGMxLmlzUG9pbnRJbkZpbGwoe3g6IDkwLCB5OiA5MH0pIGlzIGZhbHNlCitQQVNTIGMxLmlzUG9p
bnRJbkZpbGwoe3g6IDEwLCB5OiAxMH0pIGlzIGZhbHNlCitQQVNTIGMxLmlzUG9pbnRJbkZpbGwo
e3g6IDkwLCB5OiAxMH0pIGlzIGZhbHNlCitQQVNTIGMxLmlzUG9pbnRJbkZpbGwoe3g6IDEwLCB5
OiA5MH0pIGlzIGZhbHNlCisKK1Rlc3QgaXNQb2ludEluU3Ryb2tlKCkKK1BBU1MgYzEuaXNQb2lu
dEluU3Ryb2tlKHt9KSBpcyBmYWxzZQorUEFTUyBjMS5pc1BvaW50SW5TdHJva2Uoe3g6IDUwLCB5
OiA1MH0pIGlzIGZhbHNlCitQQVNTIGMxLmlzUG9pbnRJblN0cm9rZSh7eDogMTAwLCB5OiA1MX0p
IGlzIGZhbHNlCitQQVNTIGMxLmlzUG9pbnRJblN0cm9rZSh7eDogMTAwLCB5OiA0OX0pIGlzIHRy
dWUKK1BBU1MgYzEuaXNQb2ludEluU3Ryb2tlKHt4OiAwLCB5OiA1MH0pIGlzIHRydWUKK1BBU1Mg
YzEuaXNQb2ludEluU3Ryb2tlKHt4OiA1MiwgeTogMTAwfSkgaXMgdHJ1ZQorUEFTUyBjMS5pc1Bv
aW50SW5TdHJva2Uoe3g6IDQ4LCB5OiAxMDB9KSBpcyBmYWxzZQorCitUZXN0IGdldFRvdGFsTGVu
Z3RoKCkKK1BBU1MgYzEuZ2V0VG90YWxMZW5ndGgoKSBpcyB3aXRoaW4gMC4xIG9mIDMxNC4xNTky
NjUzNTg5NzkzCisKK1Rlc3QgZ2V0UG9pbnRBdExlbmd0aCgpCitQQVNTIGMxLmdldFBvaW50QXRM
ZW5ndGgoMCkueCBpcyB3aXRoaW4gMC4xIG9mIDEwMAorUEFTUyBjMS5nZXRQb2ludEF0TGVuZ3Ro
KDApLnkgaXMgd2l0aGluIDAuMSBvZiA1MAorUEFTUyBjMS5nZXRQb2ludEF0TGVuZ3RoKE1hdGgu
UEkgKiAxMDAgLyA0KS54IGlzIHdpdGhpbiAwLjEgb2YgNTAKK1BBU1MgYzEuZ2V0UG9pbnRBdExl
bmd0aChNYXRoLlBJICogMTAwIC8gNCkueSBpcyB3aXRoaW4gMC4xIG9mIDEwMAorUEFTUyBjMS5n
ZXRQb2ludEF0TGVuZ3RoKE1hdGguUEkgKiAxMDAgLyAyKS54IGlzIHdpdGhpbiAwLjEgb2YgMAor
UEFTUyBjMS5nZXRQb2ludEF0TGVuZ3RoKE1hdGguUEkgKiAxMDAgLyAyKS55IGlzIHdpdGhpbiAw
LjEgb2YgNTAKK1BBU1MgYzEuZ2V0UG9pbnRBdExlbmd0aChNYXRoLlBJICogMTAwIC8gOCkueCBp
cyB3aXRoaW4gMSBvZiA4NS4zNQorUEFTUyBjMS5nZXRQb2ludEF0TGVuZ3RoKE1hdGguUEkgKiAx
MDAgLyA4KS55IGlzIHdpdGhpbiAxIG9mIDg1LjM1CitQQVNTIGMxLmdldFBvaW50QXRMZW5ndGgo
TWF0aC5QSSAqIDEwMCAqIDIpLnggaXMgd2l0aGluIDAuMSBvZiAxMDAKK1BBU1MgYzEuZ2V0UG9p
bnRBdExlbmd0aChNYXRoLlBJICogMTAwICogMikueSBpcyB3aXRoaW4gMC4xIG9mIDUwCitQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1jaXJjbGUueGh0bWwgYi9MYXlvdXRU
ZXN0cy9zdmcvZG9tL1NWR0dlb21ldHJ5LWNpcmNsZS54aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43NjQxOTEx
MzUwZTc0YmYyMzIxYWE3YjNiN2M4NThjYWJmNTE3ZDQ1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1jaXJjbGUueGh0bWwKQEAgLTAsMCArMSw3MCBA
QAorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorPGhlYWQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwv
aGVhZD4KKzxib2R5IG9ubG9hZD0icnVuKCkiPgorPHN2ZyBpZD0ic3ZnIiB4bWxucz0iaHR0cDov
L3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIj4KKyAgICA8Y2ly
Y2xlIGlkPSJjMSIgY3g9IjUwIiBjeT0iNTAiIHI9IjUwIiBmaWxsPSJub25lIiBzdHJva2U9ImJs
YWNrIiBzdHJva2Utd2lkdGg9IjIwIiBzdHJva2UtZGFzaG9mZnNldD0iMjAiIHN0cm9rZS1kYXNo
YXJyYXk9IjIwIDIwIi8+Cis8L3N2Zz4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBp
ZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Cis8IVtD
REFUQVsKK3dpbmRvdy5lbmFibGVQaXhlbFRlc3RpbmcgPSBmYWxzZTsKK3dpbmRvdy5qc1Rlc3RJ
c0FzeW5jID0gdHJ1ZTsKK3ZhciBjMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjMSIpOwor
CitmdW5jdGlvbiBydW4oKSB7CisgICAgZGVzY3JpcHRpb24oIlRlc3QgU1ZHR2VvbWV0cnlFbGVt
ZW50IEFQSXMgZm9yIGNpcmNsZS4iKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1ZygiVGVz
dCBpc1BvaW50SW5GaWxsKCkiKTsKKyAgICBzaG91bGRCZSgiYzEuaXNQb2ludEluRmlsbCh7fSki
LCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgiYzEuaXNQb2ludEluRmlsbCh7eDogNTAsIHk6IDUw
fSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJjMS5pc1BvaW50SW5GaWxsKHt4OiAwLCB5OiA1
MH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgiYzEuaXNQb2ludEluRmlsbCh7eDogMTAwLCB5
OiA1MH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgiYzEuaXNQb2ludEluRmlsbCh7eDogNTAs
IHk6IDB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoImMxLmlzUG9pbnRJbkZpbGwoe3g6IDUw
LCB5OiAxMDB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoImMxLmlzUG9pbnRJbkZpbGwoe3g6
IC0xLCB5OiA1MH0pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoImMxLmlzUG9pbnRJbkZpbGwo
e3g6IDEwMSwgeTogNTB9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJjMS5pc1BvaW50SW5G
aWxsKHt4OiA1MCwgeTogLTF9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJjMS5pc1BvaW50
SW5GaWxsKHt4OiA1MCwgeTogMTAxfSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgiYzEuaXNQ
b2ludEluRmlsbCh7eDogOTAsIHk6IDkwfSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgiYzEu
aXNQb2ludEluRmlsbCh7eDogMTAsIHk6IDEwfSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgi
YzEuaXNQb2ludEluRmlsbCh7eDogOTAsIHk6IDEwfSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRC
ZSgiYzEuaXNQb2ludEluRmlsbCh7eDogMTAsIHk6IDkwfSkiLCAiZmFsc2UiKTsKKworICAgIGRl
YnVnKCIiKTsKKyAgICBkZWJ1ZygiVGVzdCBpc1BvaW50SW5TdHJva2UoKSIpOworICAgIHNob3Vs
ZEJlKCJjMS5pc1BvaW50SW5TdHJva2Uoe30pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoImMx
LmlzUG9pbnRJblN0cm9rZSh7eDogNTAsIHk6IDUwfSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRC
ZSgiYzEuaXNQb2ludEluU3Ryb2tlKHt4OiAxMDAsIHk6IDUxfSkiLCAiZmFsc2UiKTsKKyAgICBz
aG91bGRCZSgiYzEuaXNQb2ludEluU3Ryb2tlKHt4OiAxMDAsIHk6IDQ5fSkiLCAidHJ1ZSIpOwor
ICAgIHNob3VsZEJlKCJjMS5pc1BvaW50SW5TdHJva2Uoe3g6IDAsIHk6IDUwfSkiLCAidHJ1ZSIp
OworICAgIHNob3VsZEJlKCJjMS5pc1BvaW50SW5TdHJva2Uoe3g6IDUyLCB5OiAxMDB9KSIsICJ0
cnVlIik7CisgICAgc2hvdWxkQmUoImMxLmlzUG9pbnRJblN0cm9rZSh7eDogNDgsIHk6IDEwMH0p
IiwgImZhbHNlIik7CisKKyAgICBkZWJ1ZygiIik7CisgICAgZGVidWcoIlRlc3QgZ2V0VG90YWxM
ZW5ndGgoKSIpOworICAgIHNob3VsZEJlQ2xvc2VUbygiYzEuZ2V0VG90YWxMZW5ndGgoKSIsIE1h
dGguUEkgKiAxMDAsIDAuMSk7CisKKyAgICBkZWJ1ZygiIik7CisgICAgZGVidWcoIlRlc3QgZ2V0
UG9pbnRBdExlbmd0aCgpIik7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJjMS5nZXRQb2ludEF0TGVu
Z3RoKDApLngiLCAxMDAsIDAuMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJjMS5nZXRQb2ludEF0
TGVuZ3RoKDApLnkiLCA1MCwgMC4xKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oImMxLmdldFBvaW50
QXRMZW5ndGgoTWF0aC5QSSAqIDEwMCAvIDQpLngiLCA1MCwgMC4xKTsKKyAgICBzaG91bGRCZUNs
b3NlVG8oImMxLmdldFBvaW50QXRMZW5ndGgoTWF0aC5QSSAqIDEwMCAvIDQpLnkiLCAxMDAsIDAu
MSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJjMS5nZXRQb2ludEF0TGVuZ3RoKE1hdGguUEkgKiAx
MDAgLyAyKS54IiwgMCwgMC4xKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oImMxLmdldFBvaW50QXRM
ZW5ndGgoTWF0aC5QSSAqIDEwMCAvIDIpLnkiLCA1MCwgMC4xKTsKKyAgICBzaG91bGRCZUNsb3Nl
VG8oImMxLmdldFBvaW50QXRMZW5ndGgoTWF0aC5QSSAqIDEwMCAvIDgpLngiLCA4NS4zNSwgMSk7
CisgICAgc2hvdWxkQmVDbG9zZVRvKCJjMS5nZXRQb2ludEF0TGVuZ3RoKE1hdGguUEkgKiAxMDAg
LyA4KS55IiwgODUuMzUsIDEpOworICAgIHNob3VsZEJlQ2xvc2VUbygiYzEuZ2V0UG9pbnRBdExl
bmd0aChNYXRoLlBJICogMTAwICogMikueCIsIDEwMCwgMC4xKTsKKyAgICBzaG91bGRCZUNsb3Nl
VG8oImMxLmdldFBvaW50QXRMZW5ndGgoTWF0aC5QSSAqIDEwMCAqIDIpLnkiLCA1MCwgMC4xKTsK
KworICAgIGZpbmlzaEpTVGVzdCgpOworfQorXV0+Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktZWxsaXBzZS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdmcvZG9tL1NWR0dlb21ldHJ5LWVsbGlwc2UtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM2YTQ5NjE2MzkxYjQxYzE5ZDIwYzUwMTFhYTFkMzVkMWYw
ZjY5YTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcvZG9tL1NWR0dlb21ldHJ5
LWVsbGlwc2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNTAgQEAKK1Rlc3QgU1ZHR2VvbWV0cnlF
bGVtZW50IEFQSXMgZm9yIGVsbGlwc2UuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
CisKK1Rlc3QgaXNQb2ludEluRmlsbCgpCitQQVNTIGUxLmlzUG9pbnRJbkZpbGwoe30pIGlzIGZh
bHNlCitQQVNTIGUxLmlzUG9pbnRJbkZpbGwoe3g6IDc1LCB5OiA1MH0pIGlzIHRydWUKK1BBU1Mg
ZTEuaXNQb2ludEluRmlsbCh7eDogMCwgeTogNTB9KSBpcyB0cnVlCitQQVNTIGUxLmlzUG9pbnRJ
bkZpbGwoe3g6IDE1MCwgeTogNTB9KSBpcyB0cnVlCitQQVNTIGUxLmlzUG9pbnRJbkZpbGwoe3g6
IDc1LCB5OiAwfSkgaXMgdHJ1ZQorUEFTUyBlMS5pc1BvaW50SW5GaWxsKHt4OiA3NSwgeTogMTAw
fSkgaXMgdHJ1ZQorUEFTUyBlMS5pc1BvaW50SW5GaWxsKHt4OiAtMSwgeTogNTB9KSBpcyBmYWxz
ZQorUEFTUyBlMS5pc1BvaW50SW5GaWxsKHt4OiAxNTEsIHk6IDUwfSkgaXMgZmFsc2UKK1BBU1Mg
ZTEuaXNQb2ludEluRmlsbCh7eDogNzUsIHk6IC0xfSkgaXMgZmFsc2UKK1BBU1MgZTEuaXNQb2lu
dEluRmlsbCh7eDogNzUsIHk6IDEwMX0pIGlzIGZhbHNlCitQQVNTIGUxLmlzUG9pbnRJbkZpbGwo
e3g6IDE0MCwgeTogOTB9KSBpcyBmYWxzZQorUEFTUyBlMS5pc1BvaW50SW5GaWxsKHt4OiAxMCwg
eTogMTB9KSBpcyBmYWxzZQorUEFTUyBlMS5pc1BvaW50SW5GaWxsKHt4OiAxNDAsIHk6IDEwfSkg
aXMgZmFsc2UKK1BBU1MgZTEuaXNQb2ludEluRmlsbCh7eDogMTAsIHk6IDkwfSkgaXMgZmFsc2UK
KworVGVzdCBpc1BvaW50SW5TdHJva2UoKQorUEFTUyBlMS5pc1BvaW50SW5TdHJva2Uoe30pIGlz
IGZhbHNlCitQQVNTIGUxLmlzUG9pbnRJblN0cm9rZSh7eDogNzUsIHk6IDUwfSkgaXMgZmFsc2UK
K1BBU1MgZTEuaXNQb2ludEluU3Ryb2tlKHt4OiAxNTAsIHk6IDUxfSkgaXMgZmFsc2UKK1BBU1Mg
ZTEuaXNQb2ludEluU3Ryb2tlKHt4OiAxNTAsIHk6IDQ5fSkgaXMgdHJ1ZQorUEFTUyBlMS5pc1Bv
aW50SW5TdHJva2Uoe3g6IDAsIHk6IDUyfSkgaXMgdHJ1ZQorUEFTUyBlMS5pc1BvaW50SW5TdHJv
a2Uoe3g6IDAsIHk6IDQ4fSkgaXMgZmFsc2UKK1BBU1MgZTEuaXNQb2ludEluU3Ryb2tlKHt4OiA3
NywgeTogMTAwfSkgaXMgZmFsc2UKK1BBU1MgZTEuaXNQb2ludEluU3Ryb2tlKHt4OiA3MywgeTog
MTAwfSkgaXMgdHJ1ZQorCitUZXN0IGdldFRvdGFsTGVuZ3RoKCkKK1BBU1MgZTEuZ2V0VG90YWxM
ZW5ndGgoKSBpcyB3aXRoaW4gNSBvZiAzOTIuNjk5MDgxNjk4NzI0MQorCitUZXN0IGdldFBvaW50
QXRMZW5ndGgoKQorUEFTUyBlMS5nZXRQb2ludEF0TGVuZ3RoKDApLnggaXMgd2l0aGluIDAuMSBv
ZiAxNTAKK1BBU1MgZTEuZ2V0UG9pbnRBdExlbmd0aCgwKS55IGlzIHdpdGhpbiAwLjEgb2YgNTAK
K1BBU1MgZTEuZ2V0UG9pbnRBdExlbmd0aChNYXRoLlBJICogKDc1ICsgNTApIC8gNCkueCBpcyB3
aXRoaW4gMyBvZiA3NQorUEFTUyBlMS5nZXRQb2ludEF0TGVuZ3RoKE1hdGguUEkgKiAoNzUgKyA1
MCkgLyA0KS55IGlzIHdpdGhpbiAzIG9mIDEwMAorUEFTUyBlMS5nZXRQb2ludEF0TGVuZ3RoKE1h
dGguUEkgKiAoNzUgKyA1MCkgLyAyKS54IGlzIHdpdGhpbiAzIG9mIDAKK1BBU1MgZTEuZ2V0UG9p
bnRBdExlbmd0aChNYXRoLlBJICogKDc1ICsgNTApIC8gMikueSBpcyB3aXRoaW4gMyBvZiA1MAor
UEFTUyBlMS5nZXRQb2ludEF0TGVuZ3RoKE1hdGguUEkgKiAoNzUgKyA1MCkgLyA4KS54IGlzIHdp
dGhpbiAzIG9mIDEyMworUEFTUyBlMS5nZXRQb2ludEF0TGVuZ3RoKE1hdGguUEkgKiAoNzUgKyA1
MCkgLyA4KS55IGlzIHdpdGhpbiAzIG9mIDg4CitQQVNTIGUxLmdldFBvaW50QXRMZW5ndGgoTWF0
aC5QSSAqICg3NSArIDUwKSAqIDIpLnggaXMgd2l0aGluIDMgb2YgMTUwCitQQVNTIGUxLmdldFBv
aW50QXRMZW5ndGgoTWF0aC5QSSAqICg3NSArIDUwKSAqIDIpLnkgaXMgd2l0aGluIDMgb2YgNTAK
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvZG9tL1NWR0dlb21ldHJ5LWVsbGlwc2UueGh0bWwgYi9M
YXlvdXRUZXN0cy9zdmcvZG9tL1NWR0dlb21ldHJ5LWVsbGlwc2UueGh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MTlhYmVjNWIxYTU0MmNmYmE4NjI0ZDg1Zjk4YzE5ZGI5OTdlMWNjOAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktZWxsaXBzZS54aHRtbApAQCAtMCww
ICsxLDcxIEBACis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Cis8
aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJydW4oKSI+Cis8c3ZnIGlkPSJzdmciIHhtbG5z
PSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjIwMCIgaGVpZ2h0PSIyMDAiPgor
ICAgIDxlbGxpcHNlIGlkPSJlMSIgY3g9Ijc1IiBjeT0iNTAiIHJ4PSI3NSIgcnk9IjUwIiBmaWxs
PSJub25lIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjIwIiBzdHJva2UtZGFzaG9mZnNl
dD0iMjAiIHN0cm9rZS1kYXNoYXJyYXk9IjIwIDIwIi8+Cis8L3N2Zz4KKzxwIGlkPSJkZXNjcmlw
dGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHR5cGU9InRleHQv
amF2YXNjcmlwdCI+Cis8IVtDREFUQVsKK3dpbmRvdy5lbmFibGVQaXhlbFRlc3RpbmcgPSBmYWxz
ZTsKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK3ZhciBlMSA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJlMSIpOworCitmdW5jdGlvbiBydW4oKSB7CisgICAgZGVzY3JpcHRpb24oIlRl
c3QgU1ZHR2VvbWV0cnlFbGVtZW50IEFQSXMgZm9yIGVsbGlwc2UuIik7CisKKyAgICBkZWJ1Zygi
Iik7CisgICAgZGVidWcoIlRlc3QgaXNQb2ludEluRmlsbCgpIik7CisgICAgc2hvdWxkQmUoImUx
LmlzUG9pbnRJbkZpbGwoe30pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoImUxLmlzUG9pbnRJ
bkZpbGwoe3g6IDc1LCB5OiA1MH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgiZTEuaXNQb2lu
dEluRmlsbCh7eDogMCwgeTogNTB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoImUxLmlzUG9p
bnRJbkZpbGwoe3g6IDE1MCwgeTogNTB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoImUxLmlz
UG9pbnRJbkZpbGwoe3g6IDc1LCB5OiAwfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJlMS5p
c1BvaW50SW5GaWxsKHt4OiA3NSwgeTogMTAwfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJl
MS5pc1BvaW50SW5GaWxsKHt4OiAtMSwgeTogNTB9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJl
KCJlMS5pc1BvaW50SW5GaWxsKHt4OiAxNTEsIHk6IDUwfSkiLCAiZmFsc2UiKTsKKyAgICBzaG91
bGRCZSgiZTEuaXNQb2ludEluRmlsbCh7eDogNzUsIHk6IC0xfSkiLCAiZmFsc2UiKTsKKyAgICBz
aG91bGRCZSgiZTEuaXNQb2ludEluRmlsbCh7eDogNzUsIHk6IDEwMX0pIiwgImZhbHNlIik7Cisg
ICAgc2hvdWxkQmUoImUxLmlzUG9pbnRJbkZpbGwoe3g6IDE0MCwgeTogOTB9KSIsICJmYWxzZSIp
OworICAgIHNob3VsZEJlKCJlMS5pc1BvaW50SW5GaWxsKHt4OiAxMCwgeTogMTB9KSIsICJmYWxz
ZSIpOworICAgIHNob3VsZEJlKCJlMS5pc1BvaW50SW5GaWxsKHt4OiAxNDAsIHk6IDEwfSkiLCAi
ZmFsc2UiKTsKKyAgICBzaG91bGRCZSgiZTEuaXNQb2ludEluRmlsbCh7eDogMTAsIHk6IDkwfSki
LCAiZmFsc2UiKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1ZygiVGVzdCBpc1BvaW50SW5T
dHJva2UoKSIpOworICAgIHNob3VsZEJlKCJlMS5pc1BvaW50SW5TdHJva2Uoe30pIiwgImZhbHNl
Iik7CisgICAgc2hvdWxkQmUoImUxLmlzUG9pbnRJblN0cm9rZSh7eDogNzUsIHk6IDUwfSkiLCAi
ZmFsc2UiKTsKKyAgICBzaG91bGRCZSgiZTEuaXNQb2ludEluU3Ryb2tlKHt4OiAxNTAsIHk6IDUx
fSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgiZTEuaXNQb2ludEluU3Ryb2tlKHt4OiAxNTAs
IHk6IDQ5fSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJlMS5pc1BvaW50SW5TdHJva2Uoe3g6
IDAsIHk6IDUyfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJlMS5pc1BvaW50SW5TdHJva2Uo
e3g6IDAsIHk6IDQ4fSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgiZTEuaXNQb2ludEluU3Ry
b2tlKHt4OiA3NywgeTogMTAwfSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgiZTEuaXNQb2lu
dEluU3Ryb2tlKHt4OiA3MywgeTogMTAwfSkiLCAidHJ1ZSIpOworCisgICAgZGVidWcoIiIpOwor
ICAgIGRlYnVnKCJUZXN0IGdldFRvdGFsTGVuZ3RoKCkiKTsKKyAgICBzaG91bGRCZUNsb3NlVG8o
ImUxLmdldFRvdGFsTGVuZ3RoKCkiLCBNYXRoLlBJICogKDc1ICsgNTApLCA1KTsKKworICAgIGRl
YnVnKCIiKTsKKyAgICBkZWJ1ZygiVGVzdCBnZXRQb2ludEF0TGVuZ3RoKCkiKTsKKyAgICBzaG91
bGRCZUNsb3NlVG8oImUxLmdldFBvaW50QXRMZW5ndGgoMCkueCIsIDE1MCwgMC4xKTsKKyAgICBz
aG91bGRCZUNsb3NlVG8oImUxLmdldFBvaW50QXRMZW5ndGgoMCkueSIsIDUwLCAwLjEpOworICAg
IHNob3VsZEJlQ2xvc2VUbygiZTEuZ2V0UG9pbnRBdExlbmd0aChNYXRoLlBJICogKDc1ICsgNTAp
IC8gNCkueCIsIDc1LCAzKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oImUxLmdldFBvaW50QXRMZW5n
dGgoTWF0aC5QSSAqICg3NSArIDUwKSAvIDQpLnkiLCAxMDAsIDMpOworICAgIHNob3VsZEJlQ2xv
c2VUbygiZTEuZ2V0UG9pbnRBdExlbmd0aChNYXRoLlBJICogKDc1ICsgNTApIC8gMikueCIsIDAs
IDMpOworICAgIHNob3VsZEJlQ2xvc2VUbygiZTEuZ2V0UG9pbnRBdExlbmd0aChNYXRoLlBJICog
KDc1ICsgNTApIC8gMikueSIsIDUwLCAzKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oImUxLmdldFBv
aW50QXRMZW5ndGgoTWF0aC5QSSAqICg3NSArIDUwKSAvIDgpLngiLCAxMjMsIDMpOworICAgIHNo
b3VsZEJlQ2xvc2VUbygiZTEuZ2V0UG9pbnRBdExlbmd0aChNYXRoLlBJICogKDc1ICsgNTApIC8g
OCkueSIsIDg4LCAzKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oImUxLmdldFBvaW50QXRMZW5ndGgo
TWF0aC5QSSAqICg3NSArIDUwKSAqIDIpLngiLCAxNTAsIDMpOworICAgIHNob3VsZEJlQ2xvc2VU
bygiZTEuZ2V0UG9pbnRBdExlbmd0aChNYXRoLlBJICogKDc1ICsgNTApICogMikueSIsIDUwLCAz
KTsKKworICAgIGZpbmlzaEpTVGVzdCgpOworfQorXV0+Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktaXNQb2lu
dEluRmlsbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdmcvZG9tL1NWR0dlb21ldHJ5LWlz
UG9pbnRJbkZpbGwtZXhwZWN0ZWQudHh0CmluZGV4IGNjMDA3NzMzZDljMjQ0MzE4YTc0ZTNkY2M1
Y2FjZDMxNTEwNzI1ODguLjdhMDZjNjFkZDk0NGRmODI5M2Y5OTFlMjQ5NjIzOWQzYjgyNTlkZmYg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktaXNQb2ludEluRmls
bC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1pc1Bv
aW50SW5GaWxsLWV4cGVjdGVkLnR4dApAQCAtMjAsNiArMjAsNyBAQCBQQVNTIHAxLmlzUG9pbnRJ
bkZpbGwoc3ZnUG9pbnQpIGlzIHRydWUKIFBBU1MgcDEuaXNQb2ludEluRmlsbChzdmdQb2ludCkg
aXMgZmFsc2UKIFBBU1MgcDEuaXNQb2ludEluRmlsbChuZXcgRE9NUG9pbnQoTmFOKSkgaXMgZmFs
c2UKIFBBU1MgcDEuaXNQb2ludEluRmlsbChuZXcgRE9NUG9pbnQoSW5maW5pdHkpKSBpcyBmYWxz
ZQorUEFTUyBwMS5pc1BvaW50SW5GaWxsKHt4OiAnc3RyaW5nJywgeTogJ3N0cmluZyd9KSBpcyBm
YWxzZQogUEFTUyBwMS5pc1BvaW50SW5GaWxsKCdzdHJpbmcnKSB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yOiBUeXBlIGVycm9yLgogCiBUZXN0IHRoYXQgdHJhbnNmb3JtIGRvZXNuJ3QgYWZmZWN0
IHJlc3VsdApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1pc1Bv
aW50SW5GaWxsLnhodG1sIGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1pc1BvaW50
SW5GaWxsLnhodG1sCmluZGV4IDQzZjkzMzZiMGRlNWJkYWZhMDA2Y2I0MDE4NTIxYTQyN2I5NzE1
NmQuLmUwODZhMDk0ZTgzNjQ1YjBhMDhjN2EzMWJhYzgwNGI4ODM0ODA5MTcgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktaXNQb2ludEluRmlsbC54aHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9zdmcvZG9tL1NWR0dlb21ldHJ5LWlzUG9pbnRJbkZpbGwueGh0bWwKQEAg
LTY0LDYgKzY0LDcgQEAgZnVuY3Rpb24gcnVuKCkgewogICAgIHNob3VsZEJlKCJwMS5pc1BvaW50
SW5GaWxsKHN2Z1BvaW50KSIsICJmYWxzZSIpOwogICAgIHNob3VsZEJlKCJwMS5pc1BvaW50SW5G
aWxsKG5ldyBET01Qb2ludChOYU4pKSIsICJmYWxzZSIpOwogICAgIHNob3VsZEJlKCJwMS5pc1Bv
aW50SW5GaWxsKG5ldyBET01Qb2ludChJbmZpbml0eSkpIiwgImZhbHNlIik7CisgICAgc2hvdWxk
QmUoInAxLmlzUG9pbnRJbkZpbGwoe3g6ICdzdHJpbmcnLCB5OiAnc3RyaW5nJ30pIiwgImZhbHNl
Iik7CiAgICAgc2hvdWxkVGhyb3coInAxLmlzUG9pbnRJbkZpbGwoJ3N0cmluZycpIik7CiAKICAg
ICBkZWJ1ZygiIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvZG9tL1NWR0dlb21ldHJ5
LWxpbmUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1saW5l
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iYmE0YTIyZTJjYmY3MDRlMDExMjhmZmYwM2MyMjE0
Y2RhZGFiZmI5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9t
ZXRyeS1saW5lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDM3IEBACitUZXN0IFNWR0dlb21ldHJ5
RWxlbWVudCBBUElzIGZvciBsaW5lLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKwor
CitUZXN0IGlzUG9pbnRJbkZpbGwoKQorUEFTUyBsMS5pc1BvaW50SW5GaWxsKHt9KSBpcyBmYWxz
ZQorUEFTUyBsMS5pc1BvaW50SW5GaWxsKHt4OiAwLCB5OiA1MH0pIGlzIHRydWUKK1BBU1MgbDEu
aXNQb2ludEluRmlsbCh7eDogNTAsIHk6IDUwfSkgaXMgdHJ1ZQorUEFTUyBsMS5pc1BvaW50SW5G
aWxsKHt4OiAxMDAsIHk6IDUwfSkgaXMgdHJ1ZQorUEFTUyBsMS5pc1BvaW50SW5GaWxsKHt4OiA1
MCwgeTogNDl9KSBpcyBmYWxzZQorUEFTUyBsMS5pc1BvaW50SW5GaWxsKHt4OiA1MCwgeTogNTF9
KSBpcyBmYWxzZQorCitUZXN0IGlzUG9pbnRJblN0cm9rZSgpCitQQVNTIGwxLmlzUG9pbnRJblN0
cm9rZSh7eDogMTksIHk6IDUwfSkgaXMgZmFsc2UKK1BBU1MgbDEuaXNQb2ludEluU3Ryb2tlKHt4
OiAyMCwgeTogNTB9KSBpcyB0cnVlCitQQVNTIGwxLmlzUG9pbnRJblN0cm9rZSh7eDogMzksIHk6
IDUwfSkgaXMgdHJ1ZQorUEFTUyBsMS5pc1BvaW50SW5TdHJva2Uoe3g6IDQwLCB5OiA1MH0pIGlz
IHRydWUKK1BBU1MgbDEuaXNQb2ludEluU3Ryb2tlKHt4OiA0MSwgeTogNTB9KSBpcyBmYWxzZQor
CitUZXN0IGdldFRvdGFsTGVuZ3RoKCkKK1BBU1MgbDEuZ2V0VG90YWxMZW5ndGgoKSBpcyB3aXRo
aW4gMSBvZiAxMDAKKworVGVzdCBnZXRQb2ludEF0TGVuZ3RoKCkKK1BBU1MgbDEuZ2V0UG9pbnRB
dExlbmd0aCgwKS54IGlzIHdpdGhpbiAwLjEgb2YgMAorUEFTUyBsMS5nZXRQb2ludEF0TGVuZ3Ro
KDApLnkgaXMgd2l0aGluIDAuMSBvZiA1MAorUEFTUyBsMS5nZXRQb2ludEF0TGVuZ3RoKDUwKS54
IGlzIHdpdGhpbiAwLjEgb2YgNTAKK1BBU1MgbDEuZ2V0UG9pbnRBdExlbmd0aCg1MCkueSBpcyB3
aXRoaW4gMC4xIG9mIDUwCitQQVNTIGwxLmdldFBvaW50QXRMZW5ndGgoMTAwKS54IGlzIHdpdGhp
biAwLjEgb2YgMTAwCitQQVNTIGwxLmdldFBvaW50QXRMZW5ndGgoMTAwKS55IGlzIHdpdGhpbiAw
LjEgb2YgNTAKK1BBU1MgbDEuZ2V0UG9pbnRBdExlbmd0aCgxNTApLnggaXMgd2l0aGluIDAuMSBv
ZiAxMDAKK1BBU1MgbDEuZ2V0UG9pbnRBdExlbmd0aCgxNTApLnkgaXMgd2l0aGluIDAuMSBvZiA1
MAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktbGluZS54aHRtbCBiL0xh
eW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktbGluZS54aHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kOGRk
ODhlOGYyMmIyNDJjYTE5MTY5MWZiYzE2MDNmYzRmM2VmN2M1Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1saW5lLnhodG1sCkBAIC0wLDAgKzEsNTgg
QEAKKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKzxoZWFkPgor
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8
L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1bigpIj4KKzxzdmcgaWQ9InN2ZyIgeG1sbnM9Imh0dHA6
Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+CisgICAgPGxp
bmUgaWQ9ImwxIiB4MT0iMCIgeTE9IjUwIiB4Mj0iMTAwIiB5Mj0iNTAiIGZpbGw9Im5vbmUiIHN0
cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMjAiIHN0cm9rZS1kYXNob2Zmc2V0PSIyMCIgc3Ry
b2tlLWRhc2hhcnJheT0iMjAgMjAiLz4KKzwvc3ZnPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+
Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0
Ij4KKzwhW0NEQVRBWword2luZG93LmVuYWJsZVBpeGVsVGVzdGluZyA9IGZhbHNlOword2luZG93
LmpzVGVzdElzQXN5bmMgPSB0cnVlOwordmFyIGwxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImwxIik7CisKK2Z1bmN0aW9uIHJ1bigpIHsKKyAgICBkZXNjcmlwdGlvbigiVGVzdCBTVkdHZW9t
ZXRyeUVsZW1lbnQgQVBJcyBmb3IgbGluZS4iKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1
ZygiVGVzdCBpc1BvaW50SW5GaWxsKCkiKTsKKyAgICBzaG91bGRCZSgibDEuaXNQb2ludEluRmls
bCh7fSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgibDEuaXNQb2ludEluRmlsbCh7eDogMCwg
eTogNTB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoImwxLmlzUG9pbnRJbkZpbGwoe3g6IDUw
LCB5OiA1MH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgibDEuaXNQb2ludEluRmlsbCh7eDog
MTAwLCB5OiA1MH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgibDEuaXNQb2ludEluRmlsbCh7
eDogNTAsIHk6IDQ5fSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgibDEuaXNQb2ludEluRmls
bCh7eDogNTAsIHk6IDUxfSkiLCAiZmFsc2UiKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1
ZygiVGVzdCBpc1BvaW50SW5TdHJva2UoKSIpOworICAgIHNob3VsZEJlKCJsMS5pc1BvaW50SW5T
dHJva2Uoe3g6IDE5LCB5OiA1MH0pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoImwxLmlzUG9p
bnRJblN0cm9rZSh7eDogMjAsIHk6IDUwfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJsMS5p
c1BvaW50SW5TdHJva2Uoe3g6IDM5LCB5OiA1MH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgi
bDEuaXNQb2ludEluU3Ryb2tlKHt4OiA0MCwgeTogNTB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxk
QmUoImwxLmlzUG9pbnRJblN0cm9rZSh7eDogNDEsIHk6IDUwfSkiLCAiZmFsc2UiKTsKKworICAg
IGRlYnVnKCIiKTsKKyAgICBkZWJ1ZygiVGVzdCBnZXRUb3RhbExlbmd0aCgpIik7CisgICAgc2hv
dWxkQmVDbG9zZVRvKCJsMS5nZXRUb3RhbExlbmd0aCgpIiwgMTAwLCAxKTsKKworICAgIGRlYnVn
KCIiKTsKKyAgICBkZWJ1ZygiVGVzdCBnZXRQb2ludEF0TGVuZ3RoKCkiKTsKKyAgICBzaG91bGRC
ZUNsb3NlVG8oImwxLmdldFBvaW50QXRMZW5ndGgoMCkueCIsIDAsIDAuMSk7CisgICAgc2hvdWxk
QmVDbG9zZVRvKCJsMS5nZXRQb2ludEF0TGVuZ3RoKDApLnkiLCA1MCwgMC4xKTsKKyAgICBzaG91
bGRCZUNsb3NlVG8oImwxLmdldFBvaW50QXRMZW5ndGgoNTApLngiLCA1MCwgMC4xKTsKKyAgICBz
aG91bGRCZUNsb3NlVG8oImwxLmdldFBvaW50QXRMZW5ndGgoNTApLnkiLCA1MCwgMC4xKTsKKyAg
ICBzaG91bGRCZUNsb3NlVG8oImwxLmdldFBvaW50QXRMZW5ndGgoMTAwKS54IiwgMTAwLCAwLjEp
OworICAgIHNob3VsZEJlQ2xvc2VUbygibDEuZ2V0UG9pbnRBdExlbmd0aCgxMDApLnkiLCA1MCwg
MC4xKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oImwxLmdldFBvaW50QXRMZW5ndGgoMTUwKS54Iiwg
MTAwLCAwLjEpOworICAgIHNob3VsZEJlQ2xvc2VUbygibDEuZ2V0UG9pbnRBdExlbmd0aCgxNTAp
LnkiLCA1MCwgMC4xKTsKKworICAgIGZpbmlzaEpTVGVzdCgpOworfQorXV0+Cis8L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
KzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2Vv
bWV0cnktcG9seWdvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdmcvZG9tL1NWR0dlb21l
dHJ5LXBvbHlnb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhkZGY4NmFiYzA2MmQ5NTU5MzVk
YTFmMjc0OTg4ZDBmNTAyYWRlODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcv
ZG9tL1NWR0dlb21ldHJ5LXBvbHlnb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDEgQEAKK1Rl
c3QgU1ZHR2VvbWV0cnlFbGVtZW50IEFQSXMgZm9yIHBvbHlnb24uCisKK09uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KKworCisKK1Rlc3QgaXNQb2ludEluRmlsbCgpCitQQVNTIHAxLmlzUG9pbnRJ
bkZpbGwoe30pIGlzIHRydWUKK1BBU1MgcDEuaXNQb2ludEluRmlsbCh7eDogMTAwLCB5OiAwfSkg
aXMgdHJ1ZQorUEFTUyBwMS5pc1BvaW50SW5GaWxsKHt4OiAxNTIsIHk6IDB9KSBpcyBmYWxzZQor
UEFTUyBwMS5pc1BvaW50SW5GaWxsKHt4OiAxNTAsIHk6IDUwfSkgaXMgdHJ1ZQorUEFTUyBwMS5p
c1BvaW50SW5GaWxsKHt4OiAxNTAsIHk6IDEwMH0pIGlzIHRydWUKK1BBU1MgcDEuaXNQb2ludElu
RmlsbCh7eDogMTUwLCB5OiAxMDF9KSBpcyBmYWxzZQorUEFTUyBwMS5pc1BvaW50SW5GaWxsKHt4
OiAxMDAsIHk6IDEwMH0pIGlzIHRydWUKK1BBU1MgcDEuaXNQb2ludEluRmlsbCh7eDogNzUsIHk6
IDUwfSkgaXMgdHJ1ZQorCitUZXN0IGlzUG9pbnRJblN0cm9rZSgpCitQQVNTIHAxLmlzUG9pbnRJ
blN0cm9rZSh7eDogMCwgeTogMH0pIGlzIGZhbHNlCitQQVNTIHAxLmlzUG9pbnRJblN0cm9rZSh7
eDogMjAsIHk6IDB9KSBpcyB0cnVlCitQQVNTIHAxLmlzUG9pbnRJblN0cm9rZSh7eDogMTUwLCB5
OiAwfSkgaXMgdHJ1ZQorUEFTUyBwMS5pc1BvaW50SW5TdHJva2Uoe3g6IDE1MCwgeTogMzV9KSBp
cyB0cnVlCitQQVNTIHAxLmlzUG9pbnRJblN0cm9rZSh7eDogNzUsIHk6IDUwfSkgaXMgZmFsc2UK
KworVGVzdCBnZXRUb3RhbExlbmd0aCgpCitQQVNTIHAxLmdldFRvdGFsTGVuZ3RoKCkgaXMgd2l0
aGluIDEgb2YgNTAwCisKK1Rlc3QgZ2V0UG9pbnRBdExlbmd0aCgpCitQQVNTIHAxLmdldFBvaW50
QXRMZW5ndGgoMCkueCBpcyB3aXRoaW4gMC4xIG9mIDAKK1BBU1MgcDEuZ2V0UG9pbnRBdExlbmd0
aCgwKS55IGlzIHdpdGhpbiAwLjEgb2YgMAorUEFTUyBwMS5nZXRQb2ludEF0TGVuZ3RoKDE1MCku
eCBpcyB3aXRoaW4gMC4xIG9mIDE1MAorUEFTUyBwMS5nZXRQb2ludEF0TGVuZ3RoKDE1MCkueSBp
cyB3aXRoaW4gMC4xIG9mIDAKK1BBU1MgcDEuZ2V0UG9pbnRBdExlbmd0aCgyMDApLnggaXMgd2l0
aGluIDAuMSBvZiAxNTAKK1BBU1MgcDEuZ2V0UG9pbnRBdExlbmd0aCgyMDApLnkgaXMgd2l0aGlu
IDAuMSBvZiA1MAorUEFTUyBwMS5nZXRQb2ludEF0TGVuZ3RoKDMwMCkueCBpcyB3aXRoaW4gMC4x
IG9mIDEwMAorUEFTUyBwMS5nZXRQb2ludEF0TGVuZ3RoKDMwMCkueSBpcyB3aXRoaW4gMC4xIG9m
IDEwMAorUEFTUyBwMS5nZXRQb2ludEF0TGVuZ3RoKDQ1MCkueCBpcyB3aXRoaW4gMC4xIG9mIDAK
K1BBU1MgcDEuZ2V0UG9pbnRBdExlbmd0aCg0NTApLnkgaXMgd2l0aGluIDAuMSBvZiA1MAorUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktcG9seWdvbi54aHRtbCBiL0xheW91
dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktcG9seWdvbi54aHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42Yzlm
MDU5ZTA4OTk3YTZlYzk0MDEwZTc3YmNkOTFkOTk4ZGNmZjIxCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1wb2x5Z29uLnhodG1sCkBAIC0wLDAgKzEs
NjIgQEAKKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKzxoZWFk
PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1bigpIj4KKzxzdmcgaWQ9InN2ZyIgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+CisgICAg
PHBvbHlnb24gaWQ9InAxIiBwb2ludHM9IjAsMCAxNTAsMCAxNTAsMTAwIDAsMTAwIiBmaWxsPSJu
b25lIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjIwIiBzdHJva2UtZGFzaG9mZnNldD0i
MjAiIHN0cm9rZS1kYXNoYXJyYXk9IjIwIDIwIi8+Cis8L3N2Zz4KKzxwIGlkPSJkZXNjcmlwdGlv
biI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHR5cGU9InRleHQvamF2
YXNjcmlwdCI+Cis8IVtDREFUQVsKK3dpbmRvdy5lbmFibGVQaXhlbFRlc3RpbmcgPSBmYWxzZTsK
K3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK3ZhciBwMSA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJwMSIpOworCitmdW5jdGlvbiBydW4oKSB7CisgICAgZGVzY3JpcHRpb24oIlRlc3Qg
U1ZHR2VvbWV0cnlFbGVtZW50IEFQSXMgZm9yIHBvbHlnb24uIik7CisKKyAgICBkZWJ1ZygiIik7
CisgICAgZGVidWcoIlRlc3QgaXNQb2ludEluRmlsbCgpIik7CisgICAgc2hvdWxkQmUoInAxLmlz
UG9pbnRJbkZpbGwoe30pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgicDEuaXNQb2ludEluRmls
bCh7eDogMTAwLCB5OiAwfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJwMS5pc1BvaW50SW5G
aWxsKHt4OiAxNTIsIHk6IDB9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJwMS5pc1BvaW50
SW5GaWxsKHt4OiAxNTAsIHk6IDUwfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJwMS5pc1Bv
aW50SW5GaWxsKHt4OiAxNTAsIHk6IDEwMH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgicDEu
aXNQb2ludEluRmlsbCh7eDogMTUwLCB5OiAxMDF9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJl
KCJwMS5pc1BvaW50SW5GaWxsKHt4OiAxMDAsIHk6IDEwMH0pIiwgInRydWUiKTsKKyAgICBzaG91
bGRCZSgicDEuaXNQb2ludEluRmlsbCh7eDogNzUsIHk6IDUwfSkiLCAidHJ1ZSIpOworCisgICAg
ZGVidWcoIiIpOworICAgIGRlYnVnKCJUZXN0IGlzUG9pbnRJblN0cm9rZSgpIik7CisgICAgc2hv
dWxkQmUoInAxLmlzUG9pbnRJblN0cm9rZSh7eDogMCwgeTogMH0pIiwgImZhbHNlIik7CisgICAg
c2hvdWxkQmUoInAxLmlzUG9pbnRJblN0cm9rZSh7eDogMjAsIHk6IDB9KSIsICJ0cnVlIik7Cisg
ICAgc2hvdWxkQmUoInAxLmlzUG9pbnRJblN0cm9rZSh7eDogMTUwLCB5OiAwfSkiLCAidHJ1ZSIp
OworICAgIHNob3VsZEJlKCJwMS5pc1BvaW50SW5TdHJva2Uoe3g6IDE1MCwgeTogMzV9KSIsICJ0
cnVlIik7CisgICAgc2hvdWxkQmUoInAxLmlzUG9pbnRJblN0cm9rZSh7eDogNzUsIHk6IDUwfSki
LCAiZmFsc2UiKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1ZygiVGVzdCBnZXRUb3RhbExl
bmd0aCgpIik7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJwMS5nZXRUb3RhbExlbmd0aCgpIiwgNTAw
LCAxKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1ZygiVGVzdCBnZXRQb2ludEF0TGVuZ3Ro
KCkiKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oInAxLmdldFBvaW50QXRMZW5ndGgoMCkueCIsIDAs
IDAuMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJwMS5nZXRQb2ludEF0TGVuZ3RoKDApLnkiLCAw
LCAwLjEpOworICAgIHNob3VsZEJlQ2xvc2VUbygicDEuZ2V0UG9pbnRBdExlbmd0aCgxNTApLngi
LCAxNTAsIDAuMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJwMS5nZXRQb2ludEF0TGVuZ3RoKDE1
MCkueSIsIDAsIDAuMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJwMS5nZXRQb2ludEF0TGVuZ3Ro
KDIwMCkueCIsIDE1MCwgMC4xKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oInAxLmdldFBvaW50QXRM
ZW5ndGgoMjAwKS55IiwgNTAsIDAuMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJwMS5nZXRQb2lu
dEF0TGVuZ3RoKDMwMCkueCIsIDEwMCwgMC4xKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oInAxLmdl
dFBvaW50QXRMZW5ndGgoMzAwKS55IiwgMTAwLCAwLjEpOworICAgIHNob3VsZEJlQ2xvc2VUbygi
cDEuZ2V0UG9pbnRBdExlbmd0aCg0NTApLngiLCAwLCAwLjEpOworICAgIHNob3VsZEJlQ2xvc2VU
bygicDEuZ2V0UG9pbnRBdExlbmd0aCg0NTApLnkiLCA1MCwgMC4xKTsKKworICAgIGZpbmlzaEpT
VGVzdCgpOworfQorXV0+Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktcG9seWxpbmUtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1wb2x5bGluZS1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uOWU2YmQ1MDVkNTllYzgxN2Q5MjhkYzE4ZWE2MTYwZjY3MTM5YTRiYQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktcG9seWxpbmUtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDEgQEAKK1Rlc3QgU1ZHR2VvbWV0cnlFbGVtZW50IEFQSXMg
Zm9yIHBvbHlsaW5lLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCitUZXN0IGlz
UG9pbnRJbkZpbGwoKQorUEFTUyBwMS5pc1BvaW50SW5GaWxsKHt9KSBpcyB0cnVlCitQQVNTIHAx
LmlzUG9pbnRJbkZpbGwoe3g6IDEwMCwgeTogMH0pIGlzIHRydWUKK1BBU1MgcDEuaXNQb2ludElu
RmlsbCh7eDogMTUyLCB5OiAwfSkgaXMgZmFsc2UKK1BBU1MgcDEuaXNQb2ludEluRmlsbCh7eDog
MTUwLCB5OiA1MH0pIGlzIHRydWUKK1BBU1MgcDEuaXNQb2ludEluRmlsbCh7eDogMTUwLCB5OiAx
MDB9KSBpcyB0cnVlCitQQVNTIHAxLmlzUG9pbnRJbkZpbGwoe3g6IDE1MCwgeTogMTAxfSkgaXMg
ZmFsc2UKK1BBU1MgcDEuaXNQb2ludEluRmlsbCh7eDogMTAwLCB5OiAxMDB9KSBpcyB0cnVlCitQ
QVNTIHAxLmlzUG9pbnRJbkZpbGwoe3g6IDc1LCB5OiA1MH0pIGlzIHRydWUKKworVGVzdCBpc1Bv
aW50SW5TdHJva2UoKQorUEFTUyBwMS5pc1BvaW50SW5TdHJva2Uoe3g6IDAsIHk6IDB9KSBpcyBm
YWxzZQorUEFTUyBwMS5pc1BvaW50SW5TdHJva2Uoe3g6IDIwLCB5OiAwfSkgaXMgdHJ1ZQorUEFT
UyBwMS5pc1BvaW50SW5TdHJva2Uoe3g6IDE1MCwgeTogMH0pIGlzIHRydWUKK1BBU1MgcDEuaXNQ
b2ludEluU3Ryb2tlKHt4OiAxNTAsIHk6IDM1fSkgaXMgdHJ1ZQorUEFTUyBwMS5pc1BvaW50SW5T
dHJva2Uoe3g6IDc1LCB5OiA1MH0pIGlzIGZhbHNlCisKK1Rlc3QgZ2V0VG90YWxMZW5ndGgoKQor
UEFTUyBwMS5nZXRUb3RhbExlbmd0aCgpIGlzIHdpdGhpbiAxIG9mIDQwMAorCitUZXN0IGdldFBv
aW50QXRMZW5ndGgoKQorUEFTUyBwMS5nZXRQb2ludEF0TGVuZ3RoKDApLnggaXMgd2l0aGluIDAu
MSBvZiAwCitQQVNTIHAxLmdldFBvaW50QXRMZW5ndGgoMCkueSBpcyB3aXRoaW4gMC4xIG9mIDAK
K1BBU1MgcDEuZ2V0UG9pbnRBdExlbmd0aCgxNTApLnggaXMgd2l0aGluIDAuMSBvZiAxNTAKK1BB
U1MgcDEuZ2V0UG9pbnRBdExlbmd0aCgxNTApLnkgaXMgd2l0aGluIDAuMSBvZiAwCitQQVNTIHAx
LmdldFBvaW50QXRMZW5ndGgoMjAwKS54IGlzIHdpdGhpbiAwLjEgb2YgMTUwCitQQVNTIHAxLmdl
dFBvaW50QXRMZW5ndGgoMjAwKS55IGlzIHdpdGhpbiAwLjEgb2YgNTAKK1BBU1MgcDEuZ2V0UG9p
bnRBdExlbmd0aCgzMDApLnggaXMgd2l0aGluIDAuMSBvZiAxMDAKK1BBU1MgcDEuZ2V0UG9pbnRB
dExlbmd0aCgzMDApLnkgaXMgd2l0aGluIDAuMSBvZiAxMDAKK1BBU1MgcDEuZ2V0UG9pbnRBdExl
bmd0aCg0NTApLnggaXMgd2l0aGluIDAuMSBvZiAwCitQQVNTIHAxLmdldFBvaW50QXRMZW5ndGgo
NDUwKS55IGlzIHdpdGhpbiAwLjEgb2YgMTAwCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2RvbS9T
VkdHZW9tZXRyeS1wb2x5bGluZS54aHRtbCBiL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0
cnktcG9seWxpbmUueGh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU0OWYxODQ4ZjNkZTRjMzk3YzkzMGFhYmQy
MmNiOThjYmNkMWVmYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZH
R2VvbWV0cnktcG9seWxpbmUueGh0bWwKQEAgLTAsMCArMSw2MiBAQAorPGh0bWwgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IG9ubG9h
ZD0icnVuKCkiPgorPHN2ZyBpZD0ic3ZnIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9z
dmciIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIj4KKyAgICA8cG9seWxpbmUgaWQ9InAxIiBwb2lu
dHM9IjAsMCAxNTAsMCAxNTAsMTAwIDAsMTAwIiBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBz
dHJva2Utd2lkdGg9IjIwIiBzdHJva2UtZGFzaG9mZnNldD0iMjAiIHN0cm9rZS1kYXNoYXJyYXk9
IjIwIDIwIi8+Cis8L3N2Zz4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29u
c29sZSI+PC9kaXY+Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Cis8IVtDREFUQVsK
K3dpbmRvdy5lbmFibGVQaXhlbFRlc3RpbmcgPSBmYWxzZTsKK3dpbmRvdy5qc1Rlc3RJc0FzeW5j
ID0gdHJ1ZTsKK3ZhciBwMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpOworCitmdW5j
dGlvbiBydW4oKSB7CisgICAgZGVzY3JpcHRpb24oIlRlc3QgU1ZHR2VvbWV0cnlFbGVtZW50IEFQ
SXMgZm9yIHBvbHlsaW5lLiIpOworCisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJUZXN0IGlz
UG9pbnRJbkZpbGwoKSIpOworICAgIHNob3VsZEJlKCJwMS5pc1BvaW50SW5GaWxsKHt9KSIsICJ0
cnVlIik7CisgICAgc2hvdWxkQmUoInAxLmlzUG9pbnRJbkZpbGwoe3g6IDEwMCwgeTogMH0pIiwg
InRydWUiKTsKKyAgICBzaG91bGRCZSgicDEuaXNQb2ludEluRmlsbCh7eDogMTUyLCB5OiAwfSki
LCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgicDEuaXNQb2ludEluRmlsbCh7eDogMTUwLCB5OiA1
MH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgicDEuaXNQb2ludEluRmlsbCh7eDogMTUwLCB5
OiAxMDB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoInAxLmlzUG9pbnRJbkZpbGwoe3g6IDE1
MCwgeTogMTAxfSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgicDEuaXNQb2ludEluRmlsbCh7
eDogMTAwLCB5OiAxMDB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoInAxLmlzUG9pbnRJbkZp
bGwoe3g6IDc1LCB5OiA1MH0pIiwgInRydWUiKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1
ZygiVGVzdCBpc1BvaW50SW5TdHJva2UoKSIpOworICAgIHNob3VsZEJlKCJwMS5pc1BvaW50SW5T
dHJva2Uoe3g6IDAsIHk6IDB9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJwMS5pc1BvaW50
SW5TdHJva2Uoe3g6IDIwLCB5OiAwfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJwMS5pc1Bv
aW50SW5TdHJva2Uoe3g6IDE1MCwgeTogMH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgicDEu
aXNQb2ludEluU3Ryb2tlKHt4OiAxNTAsIHk6IDM1fSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJl
KCJwMS5pc1BvaW50SW5TdHJva2Uoe3g6IDc1LCB5OiA1MH0pIiwgImZhbHNlIik7CisKKyAgICBk
ZWJ1ZygiIik7CisgICAgZGVidWcoIlRlc3QgZ2V0VG90YWxMZW5ndGgoKSIpOworICAgIHNob3Vs
ZEJlQ2xvc2VUbygicDEuZ2V0VG90YWxMZW5ndGgoKSIsIDQwMCwgMSk7CisKKyAgICBkZWJ1Zygi
Iik7CisgICAgZGVidWcoIlRlc3QgZ2V0UG9pbnRBdExlbmd0aCgpIik7CisgICAgc2hvdWxkQmVD
bG9zZVRvKCJwMS5nZXRQb2ludEF0TGVuZ3RoKDApLngiLCAwLCAwLjEpOworICAgIHNob3VsZEJl
Q2xvc2VUbygicDEuZ2V0UG9pbnRBdExlbmd0aCgwKS55IiwgMCwgMC4xKTsKKyAgICBzaG91bGRC
ZUNsb3NlVG8oInAxLmdldFBvaW50QXRMZW5ndGgoMTUwKS54IiwgMTUwLCAwLjEpOworICAgIHNo
b3VsZEJlQ2xvc2VUbygicDEuZ2V0UG9pbnRBdExlbmd0aCgxNTApLnkiLCAwLCAwLjEpOworICAg
IHNob3VsZEJlQ2xvc2VUbygicDEuZ2V0UG9pbnRBdExlbmd0aCgyMDApLngiLCAxNTAsIDAuMSk7
CisgICAgc2hvdWxkQmVDbG9zZVRvKCJwMS5nZXRQb2ludEF0TGVuZ3RoKDIwMCkueSIsIDUwLCAw
LjEpOworICAgIHNob3VsZEJlQ2xvc2VUbygicDEuZ2V0UG9pbnRBdExlbmd0aCgzMDApLngiLCAx
MDAsIDAuMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJwMS5nZXRQb2ludEF0TGVuZ3RoKDMwMCku
eSIsIDEwMCwgMC4xKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oInAxLmdldFBvaW50QXRMZW5ndGgo
NDUwKS54IiwgMCwgMC4xKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oInAxLmdldFBvaW50QXRMZW5n
dGgoNDUwKS55IiwgMTAwLCAwLjEpOworCisgICAgZmluaXNoSlNUZXN0KCk7Cit9CitdXT4KKzwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2Rv
bS9TVkdHZW9tZXRyeS1yZWN0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZH
R2VvbWV0cnktcmVjdC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzJiMzI2MDk0MzZiNzM5ZWVm
MWQxMDI4YTQyMDU4MmQ2MjVmMjY2YwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2
Zy9kb20vU1ZHR2VvbWV0cnktcmVjdC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1MCBAQAorVGVz
dCBTVkdHZW9tZXRyeUVsZW1lbnQgQVBJcyBmb3IgcmVjdC4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKKworVGVzdCBpc1BvaW50SW5GaWxsKCkKK1BBU1MgcjEuaXNQb2ludEluRmls
bCh7fSkgaXMgZmFsc2UKK1BBU1MgcjEuaXNQb2ludEluRmlsbCh7eDogNDgsIHk6IDB9KSBpcyBm
YWxzZQorUEFTUyByMS5pc1BvaW50SW5GaWxsKHt4OiA1MiwgeTogMH0pIGlzIHRydWUKK1BBU1Mg
cjEuaXNQb2ludEluRmlsbCh7eDogOTgsIHk6IDB9KSBpcyB0cnVlCitQQVNTIHIxLmlzUG9pbnRJ
bkZpbGwoe3g6IDEwMiwgeTogMH0pIGlzIGZhbHNlCitQQVNTIHIxLmlzUG9pbnRJbkZpbGwoe3g6
IDE1MCwgeTogMzh9KSBpcyBmYWxzZQorUEFTUyByMS5pc1BvaW50SW5GaWxsKHt4OiAxNTAsIHk6
IDQyfSkgaXMgdHJ1ZQorUEFTUyByMS5pc1BvaW50SW5GaWxsKHt4OiAxNTAsIHk6IDU4fSkgaXMg
dHJ1ZQorUEFTUyByMS5pc1BvaW50SW5GaWxsKHt4OiAxNTAsIHk6IDYyfSkgaXMgZmFsc2UKK1BB
U1MgcjEuaXNQb2ludEluRmlsbCh7eDogNDgsIHk6IDEwMH0pIGlzIGZhbHNlCitQQVNTIHIxLmlz
UG9pbnRJbkZpbGwoe3g6IDUyLCB5OiAxMDB9KSBpcyB0cnVlCitQQVNTIHIxLmlzUG9pbnRJbkZp
bGwoe3g6IDk4LCB5OiAxMDB9KSBpcyB0cnVlCitQQVNTIHIxLmlzUG9pbnRJbkZpbGwoe3g6IDEw
MiwgeTogMTAwfSkgaXMgZmFsc2UKK1BBU1MgcjEuaXNQb2ludEluRmlsbCh7eDogMCwgeTogMzh9
KSBpcyBmYWxzZQorUEFTUyByMS5pc1BvaW50SW5GaWxsKHt4OiAwLCB5OiA0Mn0pIGlzIHRydWUK
K1BBU1MgcjEuaXNQb2ludEluRmlsbCh7eDogMCwgeTogNTh9KSBpcyB0cnVlCitQQVNTIHIxLmlz
UG9pbnRJbkZpbGwoe3g6IDAsIHk6IDYyfSkgaXMgZmFsc2UKK1BBU1MgcjEuaXNQb2ludEluRmls
bCh7eDogNzUsIHk6IDUwfSkgaXMgdHJ1ZQorCitUZXN0IGlzUG9pbnRJblN0cm9rZSgpCitQQVNT
IHIxLmlzUG9pbnRJblN0cm9rZSh7eDogNTIsIHk6IDB9KSBpcyBmYWxzZQorUEFTUyByMS5pc1Bv
aW50SW5TdHJva2Uoe3g6IDcyLCB5OiAwfSkgaXMgdHJ1ZQorUEFTUyByMS5pc1BvaW50SW5TdHJv
a2Uoe3g6IDkyLCB5OiAwfSkgaXMgZmFsc2UKK1BBU1MgcjEuaXNQb2ludEluU3Ryb2tlKHt4OiAx
MTIsIHk6IDEwfSkgaXMgdHJ1ZQorCitUZXN0IGdldFRvdGFsTGVuZ3RoKCkKK1BBU1MgcjEuZ2V0
VG90YWxMZW5ndGgoKSBpcyB3aXRoaW4gMSBvZiA0MjQKKworVGVzdCBnZXRQb2ludEF0TGVuZ3Ro
KCkKK1BBU1MgcjEuZ2V0UG9pbnRBdExlbmd0aCgwKS54IGlzIHdpdGhpbiAxIG9mIDUwCitQQVNT
IHIxLmdldFBvaW50QXRMZW5ndGgoMCkueSBpcyB3aXRoaW4gMSBvZiAwCitQQVNTIHIxLmdldFBv
aW50QXRMZW5ndGgoMjUpLnggaXMgd2l0aGluIDEgb2YgNzUKK1BBU1MgcjEuZ2V0UG9pbnRBdExl
bmd0aCgyNSkueSBpcyB3aXRoaW4gMSBvZiAwCitQQVNTIHIxLmdldFBvaW50QXRMZW5ndGgoMjAw
KS54IGlzIHdpdGhpbiAzIG9mIDExMgorUEFTUyByMS5nZXRQb2ludEF0TGVuZ3RoKDIwMCkueSBp
cyB3aXRoaW4gMyBvZiAxMDAKK1BBU1MgcjEuZ2V0UG9pbnRBdExlbmd0aCgzMDApLnggaXMgd2l0
aGluIDMgb2YgMTQKK1BBU1MgcjEuZ2V0UG9pbnRBdExlbmd0aCgzMDApLnkgaXMgd2l0aGluIDMg
b2YgODgKK1BBU1MgcjEuZ2V0UG9pbnRBdExlbmd0aCg0MDApLnggaXMgd2l0aGluIDMgb2YgMjcK
K1BBU1MgcjEuZ2V0UG9pbnRBdExlbmd0aCg0MDApLnkgaXMgd2l0aGluIDMgb2YgNQorUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHR2VvbWV0cnktcmVjdC54aHRtbCBiL0xheW91dFRlc3Rz
L3N2Zy9kb20vU1ZHR2VvbWV0cnktcmVjdC54aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mODNmOWEyZTUxZDdh
YTYwZGNhMWEyODBiYjQ3ZDdhZThiNzFkZGZjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvc3ZnL2RvbS9TVkdHZW9tZXRyeS1yZWN0LnhodG1sCkBAIC0wLDAgKzEsNzEgQEAKKzxodG1s
IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKzxoZWFkPgorPHNjcmlwdCBz
cmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8
Ym9keSBvbmxvYWQ9InJ1bigpIj4KKzxzdmcgaWQ9InN2ZyIgeG1sbnM9Imh0dHA6Ly93d3cudzMu
b3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+CisgICAgPHJlY3QgaWQ9InIx
IiByeD0iNTAiIHJ5PSI0MCIgd2lkdGg9IjE1MCIgaGVpZ2h0PSIxMDAiIGZpbGw9Im5vbmUiIHN0
cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMjAiIHN0cm9rZS1kYXNob2Zmc2V0PSIyMCIgc3Ry
b2tlLWRhc2hhcnJheT0iMjAgMjAiLz4KKzwvc3ZnPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+
Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0
Ij4KKzwhW0NEQVRBWword2luZG93LmVuYWJsZVBpeGVsVGVzdGluZyA9IGZhbHNlOword2luZG93
LmpzVGVzdElzQXN5bmMgPSB0cnVlOwordmFyIHIxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InIxIik7CisKK2Z1bmN0aW9uIHJ1bigpIHsKKyAgICBkZXNjcmlwdGlvbigiVGVzdCBTVkdHZW9t
ZXRyeUVsZW1lbnQgQVBJcyBmb3IgcmVjdC4iKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1
ZygiVGVzdCBpc1BvaW50SW5GaWxsKCkiKTsKKyAgICBzaG91bGRCZSgicjEuaXNQb2ludEluRmls
bCh7fSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgicjEuaXNQb2ludEluRmlsbCh7eDogNDgs
IHk6IDB9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJyMS5pc1BvaW50SW5GaWxsKHt4OiA1
MiwgeTogMH0pIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgicjEuaXNQb2ludEluRmlsbCh7eDog
OTgsIHk6IDB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoInIxLmlzUG9pbnRJbkZpbGwoe3g6
IDEwMiwgeTogMH0pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoInIxLmlzUG9pbnRJbkZpbGwo
e3g6IDE1MCwgeTogMzh9KSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJyMS5pc1BvaW50SW5G
aWxsKHt4OiAxNTAsIHk6IDQyfSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJyMS5pc1BvaW50
SW5GaWxsKHt4OiAxNTAsIHk6IDU4fSkiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJyMS5pc1Bv
aW50SW5GaWxsKHt4OiAxNTAsIHk6IDYyfSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgicjEu
aXNQb2ludEluRmlsbCh7eDogNDgsIHk6IDEwMH0pIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUo
InIxLmlzUG9pbnRJbkZpbGwoe3g6IDUyLCB5OiAxMDB9KSIsICJ0cnVlIik7CisgICAgc2hvdWxk
QmUoInIxLmlzUG9pbnRJbkZpbGwoe3g6IDk4LCB5OiAxMDB9KSIsICJ0cnVlIik7CisgICAgc2hv
dWxkQmUoInIxLmlzUG9pbnRJbkZpbGwoe3g6IDEwMiwgeTogMTAwfSkiLCAiZmFsc2UiKTsKKyAg
ICBzaG91bGRCZSgicjEuaXNQb2ludEluRmlsbCh7eDogMCwgeTogMzh9KSIsICJmYWxzZSIpOwor
ICAgIHNob3VsZEJlKCJyMS5pc1BvaW50SW5GaWxsKHt4OiAwLCB5OiA0Mn0pIiwgInRydWUiKTsK
KyAgICBzaG91bGRCZSgicjEuaXNQb2ludEluRmlsbCh7eDogMCwgeTogNTh9KSIsICJ0cnVlIik7
CisgICAgc2hvdWxkQmUoInIxLmlzUG9pbnRJbkZpbGwoe3g6IDAsIHk6IDYyfSkiLCAiZmFsc2Ui
KTsKKyAgICBzaG91bGRCZSgicjEuaXNQb2ludEluRmlsbCh7eDogNzUsIHk6IDUwfSkiLCAidHJ1
ZSIpOworCisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJUZXN0IGlzUG9pbnRJblN0cm9rZSgp
Iik7CisgICAgc2hvdWxkQmUoInIxLmlzUG9pbnRJblN0cm9rZSh7eDogNTIsIHk6IDB9KSIsICJm
YWxzZSIpOworICAgIHNob3VsZEJlKCJyMS5pc1BvaW50SW5TdHJva2Uoe3g6IDcyLCB5OiAwfSki
LCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJyMS5pc1BvaW50SW5TdHJva2Uoe3g6IDkyLCB5OiAw
fSkiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgicjEuaXNQb2ludEluU3Ryb2tlKHt4OiAxMTIs
IHk6IDEwfSkiLCAidHJ1ZSIpOworCisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJUZXN0IGdl
dFRvdGFsTGVuZ3RoKCkiKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oInIxLmdldFRvdGFsTGVuZ3Ro
KCkiLCA0MjQsIDEpOworCisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJUZXN0IGdldFBvaW50
QXRMZW5ndGgoKSIpOworICAgIHNob3VsZEJlQ2xvc2VUbygicjEuZ2V0UG9pbnRBdExlbmd0aCgw
KS54IiwgNTAsIDEpOworICAgIHNob3VsZEJlQ2xvc2VUbygicjEuZ2V0UG9pbnRBdExlbmd0aCgw
KS55IiwgMCwgMSk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJyMS5nZXRQb2ludEF0TGVuZ3RoKDI1
KS54IiwgNzUsIDEpOworICAgIHNob3VsZEJlQ2xvc2VUbygicjEuZ2V0UG9pbnRBdExlbmd0aCgy
NSkueSIsIDAsIDEpOworICAgIHNob3VsZEJlQ2xvc2VUbygicjEuZ2V0UG9pbnRBdExlbmd0aCgy
MDApLngiLCAxMTIsIDMpOworICAgIHNob3VsZEJlQ2xvc2VUbygicjEuZ2V0UG9pbnRBdExlbmd0
aCgyMDApLnkiLCAxMDAsIDMpOworICAgIHNob3VsZEJlQ2xvc2VUbygicjEuZ2V0UG9pbnRBdExl
bmd0aCgzMDApLngiLCAxNCwgMyk7CisgICAgc2hvdWxkQmVDbG9zZVRvKCJyMS5nZXRQb2ludEF0
TGVuZ3RoKDMwMCkueSIsIDg4LCAzKTsKKyAgICBzaG91bGRCZUNsb3NlVG8oInIxLmdldFBvaW50
QXRMZW5ndGgoNDAwKS54IiwgMjcsIDMpOworICAgIHNob3VsZEJlQ2xvc2VUbygicjEuZ2V0UG9p
bnRBdExlbmd0aCg0MDApLnkiLCA1LCAzKTsKKworICAgIGZpbmlzaEpTVGVzdCgpOworfQorXV0+
Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2
Zy9kb20vc3ZnMi1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdmcvZG9t
L3N2ZzItaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0CmluZGV4IGE0MWMyYWMwMDA1NDc5ODE3MDI3
YmNkNDkwNmQ4NjM4N2I2MzEyMTIuLjYzZWZhZWVhMzI3MmJhYzA1OWMyNDFhOGY4ZGMyODExMTcx
MjI2ODIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N2Zy9kb20vc3ZnMi1pbmhlcml0YW5jZS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9zdmcyLWluaGVyaXRhbmNlLWV4
cGVjdGVkLnR4dApAQCAtMjcsNyArMjcsNyBAQCBQQVNTIFNWR0FuaW1hdGVkU3RyaW5nIGluaGVy
aXRzIE9iamVjdAogUEFTUyBTVkdBbmltYXRlZFRyYW5zZm9ybUxpc3QgaW5oZXJpdHMgT2JqZWN0
CiBQQVNTIFNWR0FuaW1hdGlvbkVsZW1lbnQgaW5oZXJpdHMgU1ZHRWxlbWVudAogRkFJTCBTVkdD
U1NSdWxlIGlzIG5vdCBkZWZpbmVkCi1GQUlMIFNWR0NpcmNsZUVsZW1lbnQgc2hvdWxkIGluaGVy
aXQgU1ZHR2VvbWV0cnlFbGVtZW50IGJ1dCBnb3QgU1ZHR3JhcGhpY3NFbGVtZW50IGluc3RlYWQK
K1BBU1MgU1ZHQ2lyY2xlRWxlbWVudCBpbmhlcml0cyBTVkdHZW9tZXRyeUVsZW1lbnQKIEZBSUwg
U1ZHQ2xpcFBhdGhFbGVtZW50IHNob3VsZCBpbmhlcml0IFNWR0RlZmluaXRpb25FbGVtZW50IGJ1
dCBnb3QgU1ZHR3JhcGhpY3NFbGVtZW50IGluc3RlYWQKIEZBSUwgU1ZHQ29sb3JQcm9maWxlRWxl
bWVudCBpcyBub3QgZGVmaW5lZAogRkFJTCBTVkdDb2xvclByb2ZpbGVSdWxlIGlzIG5vdCBkZWZp
bmVkCkBAIC0zNSw3ICszNSw3IEBAIFBBU1MgU1ZHQ3Vyc29yRWxlbWVudCBpbmhlcml0cyBTVkdF
bGVtZW50CiBQQVNTIFNWR0RlZnNFbGVtZW50IGluaGVyaXRzIFNWR0dyYXBoaWNzRWxlbWVudAog
UEFTUyBTVkdEZXNjRWxlbWVudCBpbmhlcml0cyBTVkdFbGVtZW50CiBQQVNTIFNWR0VsZW1lbnQg
aW5oZXJpdHMgRWxlbWVudAotRkFJTCBTVkdFbGxpcHNlRWxlbWVudCBzaG91bGQgaW5oZXJpdCBT
VkdHZW9tZXRyeUVsZW1lbnQgYnV0IGdvdCBTVkdHcmFwaGljc0VsZW1lbnQgaW5zdGVhZAorUEFT
UyBTVkdFbGxpcHNlRWxlbWVudCBpbmhlcml0cyBTVkdHZW9tZXRyeUVsZW1lbnQKIFBBU1MgU1ZH
Rm9udEVsZW1lbnQgaW5oZXJpdHMgU1ZHRWxlbWVudAogUEFTUyBTVkdGb250RmFjZUVsZW1lbnQg
aW5oZXJpdHMgU1ZHRWxlbWVudAogUEFTUyBTVkdGb250RmFjZUZvcm1hdEVsZW1lbnQgaW5oZXJp
dHMgU1ZHRWxlbWVudApAQCAtNTMsNyArNTMsNyBAQCBQQVNTIFNWR0hLZXJuRWxlbWVudCBpbmhl
cml0cyBTVkdFbGVtZW50CiBQQVNTIFNWR0ltYWdlRWxlbWVudCBpbmhlcml0cyBTVkdHcmFwaGlj
c0VsZW1lbnQKIFBBU1MgU1ZHTGVuZ3RoIGluaGVyaXRzIE9iamVjdAogUEFTUyBTVkdMZW5ndGhM
aXN0IGluaGVyaXRzIE9iamVjdAotRkFJTCBTVkdMaW5lRWxlbWVudCBzaG91bGQgaW5oZXJpdCBT
VkdHZW9tZXRyeUVsZW1lbnQgYnV0IGdvdCBTVkdHcmFwaGljc0VsZW1lbnQgaW5zdGVhZAorUEFT
UyBTVkdMaW5lRWxlbWVudCBpbmhlcml0cyBTVkdHZW9tZXRyeUVsZW1lbnQKIFBBU1MgU1ZHTGlu
ZWFyR3JhZGllbnRFbGVtZW50IGluaGVyaXRzIFNWR0dyYWRpZW50RWxlbWVudAogUEFTUyBTVkdN
UGF0aEVsZW1lbnQgaW5oZXJpdHMgU1ZHRWxlbWVudAogUEFTUyBTVkdNYXJrZXJFbGVtZW50IGlu
aGVyaXRzIFNWR0VsZW1lbnQKQEAgLTkzLDEyICs5MywxMiBAQCBQQVNTIFNWR1BhdGhTZWdNb3Zl
dG9SZWwgaW5oZXJpdHMgU1ZHUGF0aFNlZwogUEFTUyBTVkdQYXR0ZXJuRWxlbWVudCBpbmhlcml0
cyBTVkdFbGVtZW50CiBQQVNTIFNWR1BvaW50IGluaGVyaXRzIE9iamVjdAogUEFTUyBTVkdQb2lu
dExpc3QgaW5oZXJpdHMgT2JqZWN0Ci1GQUlMIFNWR1BvbHlnb25FbGVtZW50IHNob3VsZCBpbmhl
cml0IFNWR0dlb21ldHJ5RWxlbWVudCBidXQgZ290IFNWR0dyYXBoaWNzRWxlbWVudCBpbnN0ZWFk
Ci1GQUlMIFNWR1BvbHlsaW5lRWxlbWVudCBzaG91bGQgaW5oZXJpdCBTVkdHZW9tZXRyeUVsZW1l
bnQgYnV0IGdvdCBTVkdHcmFwaGljc0VsZW1lbnQgaW5zdGVhZAorUEFTUyBTVkdQb2x5Z29uRWxl
bWVudCBpbmhlcml0cyBTVkdHZW9tZXRyeUVsZW1lbnQKK1BBU1MgU1ZHUG9seWxpbmVFbGVtZW50
IGluaGVyaXRzIFNWR0dlb21ldHJ5RWxlbWVudAogUEFTUyBTVkdQcmVzZXJ2ZUFzcGVjdFJhdGlv
IGluaGVyaXRzIE9iamVjdAogUEFTUyBTVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQgaW5oZXJpdHMg
U1ZHR3JhZGllbnRFbGVtZW50CiBQQVNTIFNWR1JlY3QgaW5oZXJpdHMgT2JqZWN0Ci1GQUlMIFNW
R1JlY3RFbGVtZW50IHNob3VsZCBpbmhlcml0IFNWR0dlb21ldHJ5RWxlbWVudCBidXQgZ290IFNW
R0dyYXBoaWNzRWxlbWVudCBpbnN0ZWFkCitQQVNTIFNWR1JlY3RFbGVtZW50IGluaGVyaXRzIFNW
R0dlb21ldHJ5RWxlbWVudAogUEFTUyBTVkdTVkdFbGVtZW50IGluaGVyaXRzIFNWR0dyYXBoaWNz
RWxlbWVudAogUEFTUyBTVkdTY3JpcHRFbGVtZW50IGluaGVyaXRzIFNWR0VsZW1lbnQKIFBBU1Mg
U1ZHU2V0RWxlbWVudCBpbmhlcml0cyBTVkdBbmltYXRpb25FbGVtZW50Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>