<?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>203278</bug_id>
          
          <creation_ts>2019-10-22 15:45:19 -0700</creation_ts>
          <short_desc>[SVG2] Fix SVGSVGElement to conform with SVG2</short_desc>
          <delta_ts>2019-10-23 20:44:14 -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>191292</blocked>
    
    <blocked>200143</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fmalita</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>schenney</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1582631</commentid>
    <comment_count>0</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2019-10-22 15:45:19 -0700</bug_when>
    <thetext>The interface of SVGSVGElement is defined here: https://www.w3.org/TR/SVG2/struct.html#InterfaceSVGSVGElement.

Related WPT tests: https://wpt.fyi/results/svg/historical.html?label=experimental&amp;label=master&amp;aligned.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1582685</commentid>
    <comment_count>1</comment_count>
      <attachid>381638</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2019-10-22 17:42:17 -0700</bug_when>
    <thetext>Created attachment 381638
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1582970</commentid>
    <comment_count>2</comment_count>
      <attachid>381638</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2019-10-23 13:07:57 -0700</bug_when>
    <thetext>Comment on attachment 381638
Patch

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

&gt; Source/WebCore/svg/SVGSVGElement.cpp:266
&gt; +    element.document().updateLayoutIgnorePendingStylesheets();

You can&apos;t call updateLayoutIgnorePendingStylesheets() and guarantee that the element is still valid. This function should keep a Ref&lt;SVGElement&gt; around.

&gt; Source/WebCore/svg/SVGSVGElement.cpp:272
&gt; +    element.document().updateLayoutIgnorePendingStylesheets();

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1583174</commentid>
    <comment_count>3</comment_count>
      <attachid>381758</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2019-10-23 17:56:41 -0700</bug_when>
    <thetext>Created attachment 381758
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1583216</commentid>
    <comment_count>4</comment_count>
      <attachid>381758</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-10-23 20:43:06 -0700</bug_when>
    <thetext>Comment on attachment 381758
Patch

Clearing flags on attachment: 381758

Committed r251527: &lt;https://trac.webkit.org/changeset/251527&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1583217</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-10-23 20:43:08 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1583218</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-10-23 20:44:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/56566735&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>381638</attachid>
            <date>2019-10-22 17:42:17 -0700</date>
            <delta_ts>2019-10-23 17:56:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-203278-20191022174216.patch</filename>
            <type>text/plain</type>
            <size>20738</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUxNDY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzQ1ZjYxYWU0NzZmMmY2
MTgxZTgwOGVjYjFhMmNjNWU3NDFmZTkxMS4uOTRhZjM5OGY0Y2U5NjhmNmJmODYyZmZmNDhkYmRh
MzE2ZDkxZWU3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDE5LTEwLTIyICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgW1NWRzJd
IEZpeCBTVkdTVkdFbGVtZW50IHRvIGNvbmZvcm0gd2l0aCBTVkcyCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDMyNzgKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgaW50ZXJmYWNlIG9mIFNWR1NWR0Vs
ZW1lbnQgaXMgZGVmaW5lZCBoZXJlOgorICAgICAgICAgICAgaHR0cHM6Ly93d3cudzMub3JnL1RS
L1NWRzIvc3RydWN0Lmh0bWwjSW50ZXJmYWNlU1ZHU1ZHRWxlbWVudAorCisgICAgICAgIC0tIERl
bGV0ZSB0aGUgdmlld3BvcnQgYXR0cmlidXRlLgorICAgICAgICAtLSBEZWxldGUgdGhlIGF0dHJp
YnV0ZXMgY29udGVudFNjcmlwdFR5cGUgYW5kIGNvbnRlbnRTdHlsZVR5cGUuCisgICAgICAgIC0t
IERlbGV0ZSBwaXhlbFVuaXR4eHgoKSBhbmQgc2NyZWVuUGl4ZWx4eHgoKSBmdW5jdGlvbnMuCisg
ICAgICAgIC0tIE1ha2UgdGhlIFNWR0VsZW1lbnQgYXJndW1lbnQgdG8gY2hlY2tJbnRlcnNlY3Rp
b24oKSBhbmQgCisgICAgICAgICAgIGNoZWNrRW5jbG9zdXJlKCkgYmUgbm9uLW9wdGlvbmFsLgor
CisgICAgICAgICogc3ZnL1NWR1NWR0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZH
U1ZHRWxlbWVudDo6Y2hlY2tJbnRlcnNlY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6U1ZHU1ZH
RWxlbWVudDo6Y2hlY2tFbmNsb3N1cmUpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHU1ZHRWxlbWVu
dDo6Y29udGVudFNjcmlwdFR5cGUgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6
U1ZHU1ZHRWxlbWVudDo6c2V0Q29udGVudFNjcmlwdFR5cGUpOiBEZWxldGVkLgorICAgICAgICAo
V2ViQ29yZTo6U1ZHU1ZHRWxlbWVudDo6Y29udGVudFN0eWxlVHlwZSBjb25zdCk6IERlbGV0ZWQu
CisgICAgICAgIChXZWJDb3JlOjpTVkdTVkdFbGVtZW50OjpzZXRDb250ZW50U3R5bGVUeXBlKTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNWR1NWR0VsZW1lbnQ6OnZpZXdwb3J0IGNvbnN0
KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNWR1NWR0VsZW1lbnQ6OnBpeGVsVW5pdFRv
TWlsbGltZXRlclggY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U1ZHU1ZHRWxl
bWVudDo6cGl4ZWxVbml0VG9NaWxsaW1ldGVyWSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpTVkdTVkdFbGVtZW50OjpzY3JlZW5QaXhlbFRvTWlsbGltZXRlclggY29uc3QpOiBE
ZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U1ZHU1ZHRWxlbWVudDo6c2NyZWVuUGl4ZWxUb01p
bGxpbWV0ZXJZIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNWR1NWR0VsZW1l
bnQ6OnN1c3BlbmRSZWRyYXcpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U1ZHU1ZHRWxl
bWVudDo6dW5zdXNwZW5kUmVkcmF3KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNWR1NW
R0VsZW1lbnQ6OnVuc3VzcGVuZFJlZHJhd0FsbCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3Jl
OjpTVkdTVkdFbGVtZW50Ojpmb3JjZVJlZHJhdyk6IERlbGV0ZWQuCisgICAgICAgICogc3ZnL1NW
R1NWR0VsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHU1ZHRWxlbWVudC5pZGw6CisKIDIwMTkt
MTAtMjIgIFNhaWQgQWJvdS1IYWxsYXdhICA8c2Fib3VoYWxsYXdhQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbU1ZHMl0gUmVtb3ZlIHRoZSAndmlld1RhcmdldCcgcHJvcGVydHkgb2YgU1ZHVmlld0Vs
ZW1lbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdTVkdFbGVtZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdTVkdFbGVtZW50LmNwcAppbmRleCA3ZDIwMjZlNTg0NDRi
MzhkZmI4Njk5YTQzOTNkMWRlZjc0YTRiMzczLi41ODk4MGUyNWNiYzE4MzgwOWEyNTQyM2QwOGUz
NGQzZTBiYzAxM2Q2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU1ZHRWxlbWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1NWR0VsZW1lbnQuY3BwCkBAIC05NCw1
OCArOTQsNiBAQCB2b2lkIFNWR1NWR0VsZW1lbnQ6OmRpZE1vdmVUb05ld0RvY3VtZW50KERvY3Vt
ZW50JiBvbGREb2N1bWVudCwgRG9jdW1lbnQmIG5ld0RvYwogICAgIFNWR0dyYXBoaWNzRWxlbWVu
dDo6ZGlkTW92ZVRvTmV3RG9jdW1lbnQob2xkRG9jdW1lbnQsIG5ld0RvY3VtZW50KTsKIH0KIAot
Y29uc3QgQXRvbVN0cmluZyYgU1ZHU1ZHRWxlbWVudDo6Y29udGVudFNjcmlwdFR5cGUoKSBjb25z
dAotewotICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxBdG9tU3RyaW5nPiBkZWZhdWx0U2NyaXB0
VHlwZSB7ICJ0ZXh0L2VjbWFzY3JpcHQiIH07Ci0gICAgY29uc3QgQXRvbVN0cmluZyYgdHlwZSA9
IGF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oU1ZHTmFtZXM6OmNvbnRlbnRTY3JpcHRU
eXBlQXR0cik7Ci0gICAgcmV0dXJuIHR5cGUuaXNOdWxsKCkgPyBkZWZhdWx0U2NyaXB0VHlwZS5n
ZXQoKSA6IHR5cGU7Ci19Ci0KLXZvaWQgU1ZHU1ZHRWxlbWVudDo6c2V0Q29udGVudFNjcmlwdFR5
cGUoY29uc3QgQXRvbVN0cmluZyYgdHlwZSkKLXsKLSAgICBzZXRBdHRyaWJ1dGVXaXRob3V0U3lu
Y2hyb25pemF0aW9uKFNWR05hbWVzOjpjb250ZW50U2NyaXB0VHlwZUF0dHIsIHR5cGUpOwotfQot
Ci1jb25zdCBBdG9tU3RyaW5nJiBTVkdTVkdFbGVtZW50Ojpjb250ZW50U3R5bGVUeXBlKCkgY29u
c3QKLXsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbVN0cmluZz4gZGVmYXVsdFN0eWxl
VHlwZSB7ICJ0ZXh0L2NzcyIgfTsKLSAgICBjb25zdCBBdG9tU3RyaW5nJiB0eXBlID0gYXR0cmli
dXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihTVkdOYW1lczo6Y29udGVudFN0eWxlVHlwZUF0dHIp
OwotICAgIHJldHVybiB0eXBlLmlzTnVsbCgpID8gZGVmYXVsdFN0eWxlVHlwZS5nZXQoKSA6IHR5
cGU7Ci19Ci0KLXZvaWQgU1ZHU1ZHRWxlbWVudDo6c2V0Q29udGVudFN0eWxlVHlwZShjb25zdCBB
dG9tU3RyaW5nJiB0eXBlKQotewotICAgIHNldEF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRp
b24oU1ZHTmFtZXM6OmNvbnRlbnRTdHlsZVR5cGVBdHRyLCB0eXBlKTsKLX0KLQotUmVmPFNWR1Jl
Y3Q+IFNWR1NWR0VsZW1lbnQ6OnZpZXdwb3J0KCkgY29uc3QKLXsKLSAgICAvLyBGSVhNRTogTm90
IGltcGxlbWVudGVkLgotICAgIHJldHVybiBTVkdSZWN0OjpjcmVhdGUoKTsKLX0KLQotZmxvYXQg
U1ZHU1ZHRWxlbWVudDo6cGl4ZWxVbml0VG9NaWxsaW1ldGVyWCgpIGNvbnN0Ci17Ci0gICAgLy8g
VGhlcmUgYXJlIDI1LjQgbWlsbGltZXRlcnMgaW4gYW4gaW5jaC4KLSAgICByZXR1cm4gMjUuNGYg
LyBjc3NQaXhlbHNQZXJJbmNoOwotfQotCi1mbG9hdCBTVkdTVkdFbGVtZW50OjpwaXhlbFVuaXRU
b01pbGxpbWV0ZXJZKCkgY29uc3QKLXsKLSAgICAvLyBUaGVyZSBhcmUgMjUuNCBtaWxsaW1ldGVy
cyBpbiBhbiBpbmNoLgotICAgIHJldHVybiAyNS40ZiAvIGNzc1BpeGVsc1BlckluY2g7Ci19Ci0K
LWZsb2F0IFNWR1NWR0VsZW1lbnQ6OnNjcmVlblBpeGVsVG9NaWxsaW1ldGVyWCgpIGNvbnN0Ci17
Ci0gICAgcmV0dXJuIHBpeGVsVW5pdFRvTWlsbGltZXRlclgoKTsKLX0KLQotZmxvYXQgU1ZHU1ZH
RWxlbWVudDo6c2NyZWVuUGl4ZWxUb01pbGxpbWV0ZXJZKCkgY29uc3QKLXsKLSAgICByZXR1cm4g
cGl4ZWxVbml0VG9NaWxsaW1ldGVyWSgpOwotfQotCiBTVkdWaWV3U3BlYyYgU1ZHU1ZHRWxlbWVu
dDo6Y3VycmVudFZpZXcoKQogewogICAgIGlmICghbV92aWV3U3BlYykKQEAgLTI4MSwyMyArMjI5
LDYgQEAgdm9pZCBTVkdTVkdFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxp
ZmllZE5hbWUmIGF0dHJOYW1lKQogICAgIFNWR0dyYXBoaWNzRWxlbWVudDo6c3ZnQXR0cmlidXRl
Q2hhbmdlZChhdHRyTmFtZSk7CiB9CiAKLXVuc2lnbmVkIFNWR1NWR0VsZW1lbnQ6OnN1c3BlbmRS
ZWRyYXcodW5zaWduZWQpCi17Ci0gICAgcmV0dXJuIDA7Ci19Ci0KLXZvaWQgU1ZHU1ZHRWxlbWVu
dDo6dW5zdXNwZW5kUmVkcmF3KHVuc2lnbmVkKQotewotfQotCi12b2lkIFNWR1NWR0VsZW1lbnQ6
OnVuc3VzcGVuZFJlZHJhd0FsbCgpCi17Ci19Ci0KLXZvaWQgU1ZHU1ZHRWxlbWVudDo6Zm9yY2VS
ZWRyYXcoKQotewotfQotCiBSZWY8Tm9kZUxpc3Q+IFNWR1NWR0VsZW1lbnQ6OmNvbGxlY3RJbnRl
cnNlY3Rpb25PckVuY2xvc3VyZUxpc3QoU1ZHUmVjdCYgcmVjdCwgU1ZHRWxlbWVudCogcmVmZXJl
bmNlRWxlbWVudCwgYm9vbCAoKmNoZWNrRnVuY3Rpb24pKFNWR0VsZW1lbnQmLCBTVkdSZWN0Jikp
CiB7CiAgICAgVmVjdG9yPFJlZjxFbGVtZW50Pj4gZWxlbWVudHM7CkBAIC0zMzAsMjAgKzI2MSwx
NiBAQCBSZWY8Tm9kZUxpc3Q+IFNWR1NWR0VsZW1lbnQ6OmdldEVuY2xvc3VyZUxpc3QoU1ZHUmVj
dCYgcmVjdCwgU1ZHRWxlbWVudCogcmVmZXJlbgogICAgIHJldHVybiBjb2xsZWN0SW50ZXJzZWN0
aW9uT3JFbmNsb3N1cmVMaXN0KHJlY3QsIHJlZmVyZW5jZUVsZW1lbnQsIGNoZWNrRW5jbG9zdXJl
V2l0aG91dFVwZGF0aW5nTGF5b3V0KTsKIH0KIAotYm9vbCBTVkdTVkdFbGVtZW50OjpjaGVja0lu
dGVyc2VjdGlvbihSZWZQdHI8U1ZHRWxlbWVudD4mJiBlbGVtZW50LCBTVkdSZWN0JiByZWN0KQor
Ym9vbCBTVkdTVkdFbGVtZW50OjpjaGVja0ludGVyc2VjdGlvbihTVkdFbGVtZW50JiBlbGVtZW50
LCBTVkdSZWN0JiByZWN0KQogewotICAgIGlmICghZWxlbWVudCkKLSAgICAgICAgcmV0dXJuIGZh
bHNlOwotICAgIGVsZW1lbnQtPmRvY3VtZW50KCkudXBkYXRlTGF5b3V0SWdub3JlUGVuZGluZ1N0
eWxlc2hlZXRzKCk7Ci0gICAgcmV0dXJuIGNoZWNrSW50ZXJzZWN0aW9uV2l0aG91dFVwZGF0aW5n
TGF5b3V0KCplbGVtZW50LCByZWN0KTsKKyAgICBlbGVtZW50LmRvY3VtZW50KCkudXBkYXRlTGF5
b3V0SWdub3JlUGVuZGluZ1N0eWxlc2hlZXRzKCk7CisgICAgcmV0dXJuIGNoZWNrSW50ZXJzZWN0
aW9uV2l0aG91dFVwZGF0aW5nTGF5b3V0KGVsZW1lbnQsIHJlY3QpOwogfQogCi1ib29sIFNWR1NW
R0VsZW1lbnQ6OmNoZWNrRW5jbG9zdXJlKFJlZlB0cjxTVkdFbGVtZW50PiYmIGVsZW1lbnQsIFNW
R1JlY3QmIHJlY3QpCitib29sIFNWR1NWR0VsZW1lbnQ6OmNoZWNrRW5jbG9zdXJlKFNWR0VsZW1l
bnQmIGVsZW1lbnQsIFNWR1JlY3QmIHJlY3QpCiB7Ci0gICAgaWYgKCFlbGVtZW50KQotICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0gICAgZWxlbWVudC0+ZG9jdW1lbnQoKS51cGRhdGVMYXlvdXRJZ25v
cmVQZW5kaW5nU3R5bGVzaGVldHMoKTsKLSAgICByZXR1cm4gY2hlY2tFbmNsb3N1cmVXaXRob3V0
VXBkYXRpbmdMYXlvdXQoKmVsZW1lbnQsIHJlY3QpOworICAgIGVsZW1lbnQuZG9jdW1lbnQoKS51
cGRhdGVMYXlvdXRJZ25vcmVQZW5kaW5nU3R5bGVzaGVldHMoKTsKKyAgICByZXR1cm4gY2hlY2tF
bmNsb3N1cmVXaXRob3V0VXBkYXRpbmdMYXlvdXQoZWxlbWVudCwgcmVjdCk7CiB9CiAKIHZvaWQg
U1ZHU1ZHRWxlbWVudDo6ZGVzZWxlY3RBbGwoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR1NWR0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdTVkdFbGVtZW50LmgK
aW5kZXggNWJhYTBiNTEzYzU0MWQ5MzdhYTUxYjQ1YmYwMzZhN2M1Njc2Y2RmNi4uYzdkOWIxMzUx
ZDY0OWE2YjNiMDQ0ZDE2ZGMyYzU2Y2FjZjdiNzBlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvc3ZnL1NWR1NWR0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU1ZHRWxl
bWVudC5oCkBAIC00Miw0NSArNDIsMjAgQEAgY2xhc3MgU1ZHVmlld1NwZWM7CiBjbGFzcyBTVkdT
VkdFbGVtZW50IGZpbmFsIDogcHVibGljIFNWR0dyYXBoaWNzRWxlbWVudCwgcHVibGljIFNWR0Zp
dFRvVmlld0JveCwgcHVibGljIFNWR1pvb21BbmRQYW4gewogICAgIFdURl9NQUtFX0lTT19BTExP
Q0FURUQoU1ZHU1ZHRWxlbWVudCk7CiBwdWJsaWM6IC8vIERPTQotICAgIGNvbnN0IEF0b21TdHJp
bmcmIGNvbnRlbnRTY3JpcHRUeXBlKCkgY29uc3Q7Ci0gICAgdm9pZCBzZXRDb250ZW50U2NyaXB0
VHlwZShjb25zdCBBdG9tU3RyaW5nJik7Ci0KLSAgICBjb25zdCBBdG9tU3RyaW5nJiBjb250ZW50
U3R5bGVUeXBlKCkgY29uc3Q7Ci0gICAgdm9pZCBzZXRDb250ZW50U3R5bGVUeXBlKGNvbnN0IEF0
b21TdHJpbmcmKTsKLQotICAgIFJlZjxTVkdSZWN0PiB2aWV3cG9ydCgpIGNvbnN0OwotCi0gICAg
ZmxvYXQgcGl4ZWxVbml0VG9NaWxsaW1ldGVyWCgpIGNvbnN0OwotICAgIGZsb2F0IHBpeGVsVW5p
dFRvTWlsbGltZXRlclkoKSBjb25zdDsKLSAgICBmbG9hdCBzY3JlZW5QaXhlbFRvTWlsbGltZXRl
clgoKSBjb25zdDsKLSAgICBmbG9hdCBzY3JlZW5QaXhlbFRvTWlsbGltZXRlclkoKSBjb25zdDsK
LQotICAgIGJvb2wgdXNlQ3VycmVudFZpZXcoKSBjb25zdCB7IHJldHVybiBtX3VzZUN1cnJlbnRW
aWV3OyB9Ci0gICAgU1ZHVmlld1NwZWMmIGN1cnJlbnRWaWV3KCk7Ci0KICAgICBmbG9hdCBjdXJy
ZW50U2NhbGUoKSBjb25zdDsKICAgICB2b2lkIHNldEN1cnJlbnRTY2FsZShmbG9hdCk7CiAKICAg
ICBTVkdQb2ludCYgY3VycmVudFRyYW5zbGF0ZSgpIHsgcmV0dXJuIG1fY3VycmVudFRyYW5zbGF0
ZTsgfQogICAgIEZsb2F0UG9pbnQgY3VycmVudFRyYW5zbGF0ZVZhbHVlKCkgY29uc3QgeyByZXR1
cm4gbV9jdXJyZW50VHJhbnNsYXRlLT52YWx1ZSgpOyB9CiAKLSAgICB1bnNpZ25lZCBzdXNwZW5k
UmVkcmF3KHVuc2lnbmVkIG1heFdhaXRNaWxsaXNlY29uZHMpOwotICAgIHZvaWQgdW5zdXNwZW5k
UmVkcmF3KHVuc2lnbmVkIHN1c3BlbmRIYW5kbGVJZCk7Ci0gICAgdm9pZCB1bnN1c3BlbmRSZWRy
YXdBbGwoKTsKLSAgICB2b2lkIGZvcmNlUmVkcmF3KCk7Ci0KLSAgICB2b2lkIHBhdXNlQW5pbWF0
aW9ucygpOwotICAgIHZvaWQgdW5wYXVzZUFuaW1hdGlvbnMoKTsKLSAgICBib29sIGFuaW1hdGlv
bnNQYXVzZWQoKSBjb25zdDsKLSAgICBib29sIGhhc0FjdGl2ZUFuaW1hdGlvbigpIGNvbnN0Owot
Ci0gICAgZmxvYXQgZ2V0Q3VycmVudFRpbWUoKSBjb25zdDsKLSAgICB2b2lkIHNldEN1cnJlbnRU
aW1lKGZsb2F0KTsKKyAgICBib29sIHVzZUN1cnJlbnRWaWV3KCkgY29uc3QgeyByZXR1cm4gbV91
c2VDdXJyZW50VmlldzsgfQorICAgIFNWR1ZpZXdTcGVjJiBjdXJyZW50VmlldygpOwogCiAgICAg
UmVmPE5vZGVMaXN0PiBnZXRJbnRlcnNlY3Rpb25MaXN0KFNWR1JlY3QmLCBTVkdFbGVtZW50KiBy
ZWZlcmVuY2VFbGVtZW50KTsKICAgICBSZWY8Tm9kZUxpc3Q+IGdldEVuY2xvc3VyZUxpc3QoU1ZH
UmVjdCYsIFNWR0VsZW1lbnQqIHJlZmVyZW5jZUVsZW1lbnQpOwotICAgIHN0YXRpYyBib29sIGNo
ZWNrSW50ZXJzZWN0aW9uKFJlZlB0cjxTVkdFbGVtZW50PiYmLCBTVkdSZWN0Jik7Ci0gICAgc3Rh
dGljIGJvb2wgY2hlY2tFbmNsb3N1cmUoUmVmUHRyPFNWR0VsZW1lbnQ+JiYsIFNWR1JlY3QmKTsK
KyAgICBzdGF0aWMgYm9vbCBjaGVja0ludGVyc2VjdGlvbihTVkdFbGVtZW50JiwgU1ZHUmVjdCYp
OworICAgIHN0YXRpYyBib29sIGNoZWNrRW5jbG9zdXJlKFNWR0VsZW1lbnQmLCBTVkdSZWN0Jik7
CisKICAgICB2b2lkIGRlc2VsZWN0QWxsKCk7CiAKICAgICBzdGF0aWMgUmVmPFNWR051bWJlcj4g
Y3JlYXRlU1ZHTnVtYmVyKCk7CkBAIC05NCw2ICs2OSwxOCBAQCBwdWJsaWM6IC8vIERPTQogCiAg
ICAgRWxlbWVudCogZ2V0RWxlbWVudEJ5SWQoY29uc3QgQXRvbVN0cmluZyYpOwogCisgICAgdm9p
ZCBwYXVzZUFuaW1hdGlvbnMoKTsKKyAgICB2b2lkIHVucGF1c2VBbmltYXRpb25zKCk7CisgICAg
Ym9vbCBhbmltYXRpb25zUGF1c2VkKCkgY29uc3Q7CisgICAgYm9vbCBoYXNBY3RpdmVBbmltYXRp
b24oKSBjb25zdDsKKyAgICBmbG9hdCBnZXRDdXJyZW50VGltZSgpIGNvbnN0OworICAgIHZvaWQg
c2V0Q3VycmVudFRpbWUoZmxvYXQpOworICAgIAorICAgIHVuc2lnbmVkIHN1c3BlbmRSZWRyYXco
dW5zaWduZWQpIHsgcmV0dXJuIDA7IH0KKyAgICB2b2lkIHVuc3VzcGVuZFJlZHJhdyh1bnNpZ25l
ZCkgeyB9CisgICAgdm9pZCB1bnN1c3BlbmRSZWRyYXdBbGwoKSB7IH0KKyAgICB2b2lkIGZvcmNl
UmVkcmF3KCkgeyB9CisKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPFNWR1NWR0VsZW1lbnQ+IGNy
ZWF0ZShjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQmKTsKICAgICBzdGF0aWMgUmVmPFNW
R1NWR0VsZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvc3ZnL1NWR1NWR0VsZW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1NWR0VsZW1l
bnQuaWRsCmluZGV4IGQ0YTYyZTVkN2UxMjgwODc2YWRmYTg0YzkwZjI4OTA1OGY0YTM5ZTEuLjY4
MzQxNGRkZDE4YWFhYTQzZjFkMDMzNThmMjlkNDk5ZjBjYzgxMTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdTVkdFbGVtZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHU1ZHRWxlbWVudC5pZGwKQEAgLTIsNyArMiw3IEBACiAgKiBDb3B5cmlnaHQgKEMpIDIwMDQs
IDIwMDUgTmlrb2xhcyBaaW1tZXJtYW5uIDx6aW1tZXJtYW5uQGtkZS5vcmc+CiAgKiBDb3B5cmln
aHQgKEMpIDIwMDQsIDIwMDUsIDIwMTAgUm9iIEJ1aXMgPGJ1aXNAa2RlLm9yZz4KICAqIENvcHly
aWdodCAoQykgMjAwNiBTYW11ZWwgV2VpbmlnIDxzYW0ud2VpbmlnQGdtYWlsLmNvbT4KLSAqIENv
cHlyaWdodCAoQykgMjAwNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMDYtMjAxOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgog
ICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0
IGFuZC9vcgogICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkg
R2VuZXJhbCBQdWJsaWMKQEAgLTI4LDQwICsyOCwyMSBAQAogICAgIEpTR2VuZXJhdGVUb05hdGl2
ZU9iamVjdCwKICAgICBFeHBvcnRNYWNybz1XRUJDT1JFX0VYUE9SVCwKIF0gaW50ZXJmYWNlIFNW
R1NWR0VsZW1lbnQgOiBTVkdHcmFwaGljc0VsZW1lbnQgewotICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBTVkdBbmltYXRlZExlbmd0aCB4OwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdBbmltYXRl
ZExlbmd0aCB5OwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdBbmltYXRlZExlbmd0aCB3aWR0
aDsKLSAgICByZWFkb25seSBhdHRyaWJ1dGUgU1ZHQW5pbWF0ZWRMZW5ndGggaGVpZ2h0OwotICAg
IGF0dHJpYnV0ZSBET01TdHJpbmcgY29udGVudFNjcmlwdFR5cGU7Ci0gICAgYXR0cmlidXRlIERP
TVN0cmluZyBjb250ZW50U3R5bGVUeXBlOwotICAgIFtOZXdPYmplY3RdIHJlYWRvbmx5IGF0dHJp
YnV0ZSBTVkdSZWN0IHZpZXdwb3J0OwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnJlc3RyaWN0
ZWQgZmxvYXQgcGl4ZWxVbml0VG9NaWxsaW1ldGVyWDsKLSAgICByZWFkb25seSBhdHRyaWJ1dGUg
dW5yZXN0cmljdGVkIGZsb2F0IHBpeGVsVW5pdFRvTWlsbGltZXRlclk7Ci0gICAgcmVhZG9ubHkg
YXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCBzY3JlZW5QaXhlbFRvTWlsbGltZXRlclg7Ci0g
ICAgcmVhZG9ubHkgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCBzY3JlZW5QaXhlbFRvTWls
bGltZXRlclk7CisgICAgW1NhbWVPYmplY3RdIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdBbmltYXRl
ZExlbmd0aCB4OworICAgIFtTYW1lT2JqZWN0XSByZWFkb25seSBhdHRyaWJ1dGUgU1ZHQW5pbWF0
ZWRMZW5ndGggeTsKKyAgICBbU2FtZU9iamVjdF0gcmVhZG9ubHkgYXR0cmlidXRlIFNWR0FuaW1h
dGVkTGVuZ3RoIHdpZHRoOworICAgIFtTYW1lT2JqZWN0XSByZWFkb25seSBhdHRyaWJ1dGUgU1ZH
QW5pbWF0ZWRMZW5ndGggaGVpZ2h0OworCisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9h
dCBjdXJyZW50U2NhbGU7CisgICAgW1NhbWVPYmplY3RdIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdQ
b2ludCBjdXJyZW50VHJhbnNsYXRlOworICAgIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29s
ZWFuIHVzZUN1cnJlbnRWaWV3OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdWaWV3U3BlYyBj
dXJyZW50VmlldzsKLSAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IGN1cnJlbnRTY2Fs
ZTsKLSAgICByZWFkb25seSBhdHRyaWJ1dGUgU1ZHUG9pbnQgY3VycmVudFRyYW5zbGF0ZTsKLQot
ICAgIHVuc2lnbmVkIGxvbmcgc3VzcGVuZFJlZHJhdyhvcHRpb25hbCB1bnNpZ25lZCBsb25nIG1h
eFdhaXRNaWxsaXNlY29uZHMgPSAwKTsKLSAgICB2b2lkIHVuc3VzcGVuZFJlZHJhdyhvcHRpb25h
bCB1bnNpZ25lZCBsb25nIHN1c3BlbmRIYW5kbGVJZCA9IDApOwotICAgIHZvaWQgdW5zdXNwZW5k
UmVkcmF3QWxsKCk7Ci0gICAgdm9pZCBmb3JjZVJlZHJhdygpOwotICAgIHZvaWQgcGF1c2VBbmlt
YXRpb25zKCk7Ci0gICAgdm9pZCB1bnBhdXNlQW5pbWF0aW9ucygpOwotICAgIGJvb2xlYW4gYW5p
bWF0aW9uc1BhdXNlZCgpOwotICAgIHVucmVzdHJpY3RlZCBmbG9hdCBnZXRDdXJyZW50VGltZSgp
OwotICAgIHZvaWQgc2V0Q3VycmVudFRpbWUob3B0aW9uYWwgdW5yZXN0cmljdGVkIGZsb2F0IHNl
Y29uZHMgPSBOYU4pOwogCi0gICAgLy8gRklYTUU6IHJlZmVyZW5jZUVsZW1lbnQgc2hvdWxkIG5v
dCBiZSBvcHRpb25hbC4KLSAgICBOb2RlTGlzdCBnZXRJbnRlcnNlY3Rpb25MaXN0KFNWR1JlY3Qg
cmVjdCwgb3B0aW9uYWwgU1ZHRWxlbWVudD8gcmVmZXJlbmNlRWxlbWVudCA9IG51bGwpOwotCi0g
ICAgLy8gRklYTUU6IHJlZmVyZW5jZUVsZW1lbnQgc2hvdWxkIG5vdCBiZSBvcHRpb25hbC4KLSAg
ICBOb2RlTGlzdCBnZXRFbmNsb3N1cmVMaXN0KFNWR1JlY3QgcmVjdCwgb3B0aW9uYWwgU1ZHRWxl
bWVudD8gcmVmZXJlbmNlRWxlbWVudCA9IG51bGwpOwotCi0gICAgYm9vbGVhbiBjaGVja0ludGVy
c2VjdGlvbihTVkdFbGVtZW50PyBlbGVtZW50LCBTVkdSZWN0IHJlY3QpOyAvLyBlbGVtZW50IHNo
b3VsZCBub3QgYmUgbnVsbGFibGUuCi0gICAgYm9vbGVhbiBjaGVja0VuY2xvc3VyZShTVkdFbGVt
ZW50PyBlbGVtZW50LCBTVkdSZWN0IHJlY3QpOyAvLyBlbGVtZW50IHNob3VsZCBub3QgYmUgbnVs
bGFibGUuCisgICAgTm9kZUxpc3QgZ2V0SW50ZXJzZWN0aW9uTGlzdChTVkdSZWN0IHJlY3QsIFNW
R0VsZW1lbnQ/IHJlZmVyZW5jZUVsZW1lbnQpOworICAgIE5vZGVMaXN0IGdldEVuY2xvc3VyZUxp
c3QoU1ZHUmVjdCByZWN0LCBTVkdFbGVtZW50PyByZWZlcmVuY2VFbGVtZW50KTsKKyAgICBib29s
ZWFuIGNoZWNrSW50ZXJzZWN0aW9uKFNWR0VsZW1lbnQgZWxlbWVudCwgU1ZHUmVjdCByZWN0KTsK
KyAgICBib29sZWFuIGNoZWNrRW5jbG9zdXJlKFNWR0VsZW1lbnQgZWxlbWVudCwgU1ZHUmVjdCBy
ZWN0KTsKIAogICAgIHZvaWQgZGVzZWxlY3RBbGwoKTsKIApAQCAtNzUsNiArNTYsMjAgQEAKICAg
ICBbTmV3T2JqZWN0XSBTVkdUcmFuc2Zvcm0gY3JlYXRlU1ZHVHJhbnNmb3JtRnJvbU1hdHJpeChv
cHRpb25hbCBET01NYXRyaXgyREluaXQgbWF0cml4KTsKIAogICAgIEVsZW1lbnQgZ2V0RWxlbWVu
dEJ5SWQoW1JlcXVpcmVzRXhpc3RpbmdBdG9tU3RyaW5nXSBET01TdHJpbmcgZWxlbWVudElkKTsK
KworICAgIC8vIFNWRyBhbmltYXRpb25zIGV4dGVuc2lvbnMKKyAgICAvLyBodHRwczovL3N2Z3dn
Lm9yZy9zcGVjcy9hbmltYXRpb25zLyNJbnRlcmZhY2VTVkdTVkdFbGVtZW50CisgICAgdm9pZCBw
YXVzZUFuaW1hdGlvbnMoKTsKKyAgICB2b2lkIHVucGF1c2VBbmltYXRpb25zKCk7CisgICAgYm9v
bGVhbiBhbmltYXRpb25zUGF1c2VkKCk7CisgICAgdW5yZXN0cmljdGVkIGZsb2F0IGdldEN1cnJl
bnRUaW1lKCk7CisgICAgdm9pZCBzZXRDdXJyZW50VGltZShvcHRpb25hbCB1bnJlc3RyaWN0ZWQg
ZmxvYXQgc2Vjb25kcyA9IE5hTik7CisKKyAgICAvLyBEZXByZWNhdGVkIFNWRyByZWRyYXdpbmcK
KyAgICB1bnNpZ25lZCBsb25nIHN1c3BlbmRSZWRyYXcob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBt
YXhXYWl0TWlsbGlzZWNvbmRzID0gMCk7CisgICAgdm9pZCB1bnN1c3BlbmRSZWRyYXcob3B0aW9u
YWwgdW5zaWduZWQgbG9uZyBzdXNwZW5kSGFuZGxlSWQgPSAwKTsKKyAgICB2b2lkIHVuc3VzcGVu
ZFJlZHJhd0FsbCgpOworICAgIHZvaWQgZm9yY2VSZWRyYXcoKTsKIH07CiAKIFNWR1NWR0VsZW1l
bnQgaW1wbGVtZW50cyBTVkdGaXRUb1ZpZXdCb3g7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMmE1NmNhY2IyMTQ3ZWMxZGM2
MWMxMGYwMjU0YzA2ZWE5NTFlMTlhOC4uNzI1N2RmODRlNTJiNjkwZjJlYWIxYWViMTNkYzY0YmVk
OWQ3ZTZiYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE5LTEwLTIyICBTYWlkIEFib3UtSGFs
bGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgW1NWRzJdIEZpeCBTVkdT
VkdFbGVtZW50IHRvIGNvbmZvcm0gd2l0aCBTVkcyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDMyNzgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIHN2Zy9jdXN0b20vaW1tdXRhYmxlLXByb3BlcnRpZXMt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN2Zy9jdXN0b20vaW1tdXRhYmxlLXByb3BlcnRpZXMu
aHRtbDoKKyAgICAgICAgU1ZHU1ZHRWxlbWVudC52aWV3cG9ydCBoYXMgdG8gYmUgcmVtb3ZlZC4K
KworICAgICAgICAqIHN2Zy9jdXN0b20vaW50ZXJzZWN0aW9uLWxpc3QtbnVsbC1leHBlY3RlZC50
eHQ6IFJlbW92ZWQuCisgICAgICAgICogc3ZnL2N1c3RvbS9pbnRlcnNlY3Rpb24tbGlzdC1udWxs
LnN2ZzogUmVtb3ZlZC4KKyAgICAgICAgVGhlIHNwZWNzIHN0YXRlIHRoYXQgdGhlIFNWR0VsZW1l
bnQgYXJndW1lbnQgdG8gY2hlY2tJbnRlcnNlY3Rpb24oKSBhbmQKKyAgICAgICAgY2hlY2tFbmNs
b3N1cmUoKSBpcyBub3Qgb3B0aW9uYWwuIFRoaXMgdGVzdCB3YXMgdGVzdGluZyB0aGUgYXJndW1l
bnQgCisgICAgICAgIG9wdGlvbmFsIGNhc2UuCisKIDIwMTktMTAtMjIgIENoYXJsaWUgVHVybmVy
ICA8Y3R1cm5lckBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHU3RyZWFtZXJdIFNraXAgaHR0cC90
ZXN0cy9tZWRpYS9obHMvaGxzLXZpZGVvLXJlc2l6ZS5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0No
YW5nZUxvZwppbmRleCAzNWI2NGM2ZWVhMjE3Yjg0NzMyNTQ5YjBmODNjMzIwYjQ4NThiY2NkLi5j
YTllYWI5YTQxODQyNmNhZjYwOGQzOGU1NTc4ZTk3OWRlYTE4M2RjIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOS0xMC0yMiAgU2FpZCBBYm91LUhh
bGxhd2EgIDxzYWJvdWhhbGxhd2FAYXBwbGUuY29tPgorCisgICAgICAgIFtTVkcyXSBGaXggU1ZH
U1ZHRWxlbWVudCB0byBjb25mb3JtIHdpdGggU1ZHMgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAzMjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvc3ZnL2hpc3Rvcmlj
YWwtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zdmcvaWRsaGFy
bmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICBTb21lIHN1Yi10ZXN0cyBhcmUgcGFz
c2luZyBub3cgd2l0aCB0aGlzIGNoYW5nZS4KKwogMjAxOS0xMC0yMiAgU2FpZCBBYm91LUhhbGxh
d2EgIDxzYWJvdWhhbGxhd2FAYXBwbGUuY29tPgogCiAgICAgICAgIFtTVkcyXSBSZW1vdmUgdGhl
ICd2aWV3VGFyZ2V0JyBwcm9wZXJ0eSBvZiBTVkdWaWV3RWxlbWVudApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zdmcvaGlzdG9yaWNhbC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3N2Zy9oaXN0b3JpY2FsLWV4cGVjdGVkLnR4dAppbmRleCA3OWUyOWFhZjk3Y2U4OTBjY2MwNGJm
N2RiOWJmMGMwMzRjYWFjZGU5Li5iZTMyNDUxY2QyNWM0NDhmNTg1NmI3YTBjMTE0ZDE0MzEzYTAw
ZjhjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3N2Zy9oaXN0b3JpY2FsLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3N2Zy9oaXN0b3JpY2FsLWV4cGVjdGVkLnR4dApAQCAt
MjksMTIgKzI5LDEyIEBAIEZBSUwgU1ZHR3JhcGhpY3NFbGVtZW50LnByb3RvdHlwZS5nZXRUcmFu
c2Zvcm1Ub0VsZW1lbnQgbXVzdCBiZSByZW1vdmVkIGFzc2VydF9mCiBGQUlMIFNWR0dyYXBoaWNz
RWxlbWVudC5wcm90b3R5cGUuaGFzRXh0ZW5zaW9uIG11c3QgYmUgcmVtb3ZlZCBhc3NlcnRfZmFs
c2U6IGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCiBGQUlMIFNWR0dyYXBoaWNzRWxlbWVudC5wcm90
b3R5cGUucmVxdWlyZWRGZWF0dXJlcyBtdXN0IGJlIHJlbW92ZWQgYXNzZXJ0X2ZhbHNlOiBleHBl
Y3RlZCBmYWxzZSBnb3QgdHJ1ZQogRkFJTCBTVkdTVkdFbGVtZW50LnByb3RvdHlwZS5jdXJyZW50
VmlldyBtdXN0IGJlIHJlbW92ZWQgYXNzZXJ0X2ZhbHNlOiBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1
ZQotRkFJTCBTVkdTVkdFbGVtZW50LnByb3RvdHlwZS5waXhlbFVuaXRUb01pbGxpbWV0ZXJYIG11
c3QgYmUgcmVtb3ZlZCBhc3NlcnRfZmFsc2U6IGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlM
IFNWR1NWR0VsZW1lbnQucHJvdG90eXBlLnBpeGVsVW5pdFRvTWlsbGltZXRlclkgbXVzdCBiZSBy
ZW1vdmVkIGFzc2VydF9mYWxzZTogZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgU1ZHU1ZH
RWxlbWVudC5wcm90b3R5cGUuc2NyZWVuUGl4ZWxUb01pbGxpbWV0ZXJYIG11c3QgYmUgcmVtb3Zl
ZCBhc3NlcnRfZmFsc2U6IGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIFNWR1NWR0VsZW1l
bnQucHJvdG90eXBlLnNjcmVlblBpeGVsVG9NaWxsaW1ldGVyWSBtdXN0IGJlIHJlbW92ZWQgYXNz
ZXJ0X2ZhbHNlOiBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQorUEFTUyBTVkdTVkdFbGVtZW50LnBy
b3RvdHlwZS5waXhlbFVuaXRUb01pbGxpbWV0ZXJYIG11c3QgYmUgcmVtb3ZlZCAKK1BBU1MgU1ZH
U1ZHRWxlbWVudC5wcm90b3R5cGUucGl4ZWxVbml0VG9NaWxsaW1ldGVyWSBtdXN0IGJlIHJlbW92
ZWQgCitQQVNTIFNWR1NWR0VsZW1lbnQucHJvdG90eXBlLnNjcmVlblBpeGVsVG9NaWxsaW1ldGVy
WCBtdXN0IGJlIHJlbW92ZWQgCitQQVNTIFNWR1NWR0VsZW1lbnQucHJvdG90eXBlLnNjcmVlblBp
eGVsVG9NaWxsaW1ldGVyWSBtdXN0IGJlIHJlbW92ZWQgCiBGQUlMIFNWR1NWR0VsZW1lbnQucHJv
dG90eXBlLnVzZUN1cnJlbnRWaWV3IG11c3QgYmUgcmVtb3ZlZCBhc3NlcnRfZmFsc2U6IGV4cGVj
dGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIFNWR1NWR0VsZW1lbnQucHJvdG90eXBlLnZpZXdwb3J0
IG11c3QgYmUgcmVtb3ZlZCBhc3NlcnRfZmFsc2U6IGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCitQ
QVNTIFNWR1NWR0VsZW1lbnQucHJvdG90eXBlLnZpZXdwb3J0IG11c3QgYmUgcmVtb3ZlZCAKIFBB
U1MgU1ZHVmlld0VsZW1lbnQucHJvdG90eXBlLnZpZXdUYXJnZXQgbXVzdCBiZSByZW1vdmVkIAog
UEFTUyBTVkdQYXRoRWxlbWVudC5wcm90b3R5cGUuZ2V0UG9pbnRBdExlbmd0aCBtdXN0IGJlIG1v
dmVkIHRvIFNWR0dlb21ldHJ5RWxlbWVudC5wcm90b3R5cGUgCiBQQVNTIFNWR1BhdGhFbGVtZW50
LnByb3RvdHlwZS5nZXRUb3RhbExlbmd0aCBtdXN0IGJlIG1vdmVkIHRvIFNWR0dlb21ldHJ5RWxl
bWVudC5wcm90b3R5cGUgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3N2Zy9pZGxoYXJuZXNzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3N2Zy9pZGxoYXJuZXNzLndp
bmRvdy1leHBlY3RlZC50eHQKaW5kZXggMDkwNWNkZTA5N2Y2MTUyM2JmYzU2Y2JhYmY4YmEzNmI5
ZTJkZmI0Yi4uYzE3ZWM0YTc0YTJlYmNiMjk3Y2IxZGQ4ZTYyNzkzMTFlYjcwZTRkZCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zdmcvaWRs
aGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc3ZnL2lkbGhhcm5lc3Mud2luZG93LWV4cGVjdGVkLnR4dApA
QCAtMzYwLDggKzM2MCw4IEBAIFBBU1MgU1ZHU1ZHRWxlbWVudCBpbnRlcmZhY2U6IGF0dHJpYnV0
ZSB3aWR0aAogUEFTUyBTVkdTVkdFbGVtZW50IGludGVyZmFjZTogYXR0cmlidXRlIGhlaWdodCAK
IFBBU1MgU1ZHU1ZHRWxlbWVudCBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBjdXJyZW50U2NhbGUgCiBQ
QVNTIFNWR1NWR0VsZW1lbnQgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgY3VycmVudFRyYW5zbGF0ZSAK
LUZBSUwgU1ZHU1ZHRWxlbWVudCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBnZXRJbnRlcnNlY3Rpb25M
aXN0KERPTVJlY3RSZWFkT25seSwgU1ZHRWxlbWVudCkgYXNzZXJ0X2VxdWFsczogcHJvcGVydHkg
aGFzIHdyb25nIC5sZW5ndGggZXhwZWN0ZWQgMiBidXQgZ290IDEKLUZBSUwgU1ZHU1ZHRWxlbWVu
dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBnZXRFbmNsb3N1cmVMaXN0KERPTVJlY3RSZWFkT25seSwg
U1ZHRWxlbWVudCkgYXNzZXJ0X2VxdWFsczogcHJvcGVydHkgaGFzIHdyb25nIC5sZW5ndGggZXhw
ZWN0ZWQgMiBidXQgZ290IDEKK1BBU1MgU1ZHU1ZHRWxlbWVudCBpbnRlcmZhY2U6IG9wZXJhdGlv
biBnZXRJbnRlcnNlY3Rpb25MaXN0KERPTVJlY3RSZWFkT25seSwgU1ZHRWxlbWVudCkgCitQQVNT
IFNWR1NWR0VsZW1lbnQgaW50ZXJmYWNlOiBvcGVyYXRpb24gZ2V0RW5jbG9zdXJlTGlzdChET01S
ZWN0UmVhZE9ubHksIFNWR0VsZW1lbnQpIAogUEFTUyBTVkdTVkdFbGVtZW50IGludGVyZmFjZTog
b3BlcmF0aW9uIGNoZWNrSW50ZXJzZWN0aW9uKFNWR0VsZW1lbnQsIERPTVJlY3RSZWFkT25seSkg
CiBQQVNTIFNWR1NWR0VsZW1lbnQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY2hlY2tFbmNsb3N1cmUo
U1ZHRWxlbWVudCwgRE9NUmVjdFJlYWRPbmx5KSAKIFBBU1MgU1ZHU1ZHRWxlbWVudCBpbnRlcmZh
Y2U6IG9wZXJhdGlvbiBkZXNlbGVjdEFsbCgpIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3Zn
L2N1c3RvbS9pbW11dGFibGUtcHJvcGVydGllcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9z
dmcvY3VzdG9tL2ltbXV0YWJsZS1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dAppbmRleCA1ODA3OTcy
NzRiNTdhYmQzZTIzMWZmZDZlZGU5ZWY2ZmJhNmE2NmQ3Li5jZDMzOGVjYmY5NDZlM2Q1ZGM5ZTc0
ZGEwMjFhMTY0Zjk0ZmUyNDRiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2lt
bXV0YWJsZS1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdmcvY3Vz
dG9tL2ltbXV0YWJsZS1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dApAQCAtMyw5ICszLDYgQEAgVGVz
dHMgd2hldGhlciBpbW11dGFibGUgcHJvcGVydGllcyBjYW4gbm90IGJlIG1vZGlmaWVkLgogT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCiAKLVBBU1Mgdmlld3BvcnQueCBpcyAwCi1QQVNTIHZp
ZXdwb3J0LnggaXMgMTAwCi1QQVNTIHN2Z0RvYy5kb2N1bWVudEVsZW1lbnQudmlld3BvcnQueCBp
cyAwCiBQQVNTIHpvb21SZWN0U2NyZWVuLnggaXMgMAogUEFTUyB6b29tUmVjdFNjcmVlbi54IGlz
IDEwMAogUEFTUyB6b29tRXZlbnQuem9vbVJlY3RTY3JlZW4ueCBpcyAwCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9zdmcvY3VzdG9tL2ltbXV0YWJsZS1wcm9wZXJ0aWVzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9zdmcvY3VzdG9tL2ltbXV0YWJsZS1wcm9wZXJ0aWVzLmh0bWwKaW5kZXggYTFiMjk0MDM2
YzkwODEzNDU0YzAxNWMxN2I1NGQ3OWNhZGIyMjgwZi4uMjQ3NWFhZjU0YmMwNTNkYzEzMGZmNjk3
ZjEyMTBjZDE2N2IwMDQ2NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9pbW11
dGFibGUtcHJvcGVydGllcy5odG1sCisrKyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vaW1tdXRh
YmxlLXByb3BlcnRpZXMuaHRtbApAQCAtMTEsMTUgKzExLDYgQEAgZGVzY3JpcHRpb24oIlRlc3Rz
IHdoZXRoZXIgaW1tdXRhYmxlIHByb3BlcnRpZXMgY2FuIG5vdCBiZSBtb2RpZmllZC4iKTsKIAog
dmFyIHN2Z0RvYyA9IGRvY3VtZW50LmltcGxlbWVudGF0aW9uLmNyZWF0ZURvY3VtZW50KCJodHRw
Oi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsICJzdmciLCBudWxsKTsKIAotLy8gJ3ZpZXdwb3J0JyBh
dHRyaWJ1dGUgaXMgaW1tdXRhYmxlIChTcGVjOiBUaGUgb2JqZWN0IGl0c2VsZiBhbmQgaXRzIGNv
bnRlbnRzIGFyZSBib3RoIHJlYWRvbmx5LikKLXZhciB2aWV3cG9ydCA9IHN2Z0RvYy5kb2N1bWVu
dEVsZW1lbnQudmlld3BvcnQ7Ci0KLXNob3VsZEJlKCJ2aWV3cG9ydC54IiwgIjAiKTsKLXZpZXdw
b3J0LnggPSAxMDA7Ci0KLXNob3VsZEJlKCJ2aWV3cG9ydC54IiwgIjEwMCIpOwotc2hvdWxkQmUo
InN2Z0RvYy5kb2N1bWVudEVsZW1lbnQudmlld3BvcnQueCIsICIwIik7Ci0KIC8vIEV2ZXJ5IGF0
dHJpYnV0ZSBvZiBTVkdab29tRXZlbnQgaXMgaW1tdXRhYmxlIChTcGVjOiBUaGUgb2JqZWN0IGl0
c2VsZiBhbmQgaXRzIGNvbnRlbnRzIGFyZSBib3RoIHJlYWRvbmx5LikKIHZhciB6b29tRXZlbnQg
PSBzdmdEb2MuY3JlYXRlRXZlbnQoIlNWR1pvb21FdmVudHMiKTsKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvc3ZnL2N1c3RvbS9pbnRlcnNlY3Rpb24tbGlzdC1udWxsLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL3N2Zy9jdXN0b20vaW50ZXJzZWN0aW9uLWxpc3QtbnVsbC1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdlZjIyZTlhNDMxYWQwMjcyNzEzYjcx
ZmRjODc5NDAxNmM4ZWYxMmYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9pbnRlcnNlY3Rpb24tbGlzdC1udWxsLWV4
cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLVBBU1MKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3N2Zy9jdXN0b20vaW50ZXJzZWN0aW9uLWxpc3QtbnVsbC5zdmcgYi9MYXlv
dXRUZXN0cy9zdmcvY3VzdG9tL2ludGVyc2VjdGlvbi1saXN0LW51bGwuc3ZnCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA0MmQ2MmNmNGY4YjU0NGYwNWZlMzdlMDQ5ZWMxOWQwMWVhOTQx
ZjViLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL3N2Zy9jdXN0b20vaW50ZXJzZWN0aW9uLWxpc3QtbnVsbC5zdmcKKysrIC9kZXYvbnVs
bApAQCAtMSwxNCArMCwwIEBACi08P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/
PgotPHN2ZyBpZD0icm9vdCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBvbmxv
YWQ9InJ1blRlc3QoKSI+Ci0gIDxzY3JpcHQ+Ci0gICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKLSAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7Ci0gICAgICAgIHZhciByb290ID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Owot
ICAgICAgICByb290LmNoZWNrSW50ZXJzZWN0aW9uKG51bGwsIHJvb3QuY3JlYXRlU1ZHUmVjdCgp
KTsKLSAgICAgICAgcm9vdC5jaGVja0VuY2xvc3VyZShudWxsLCByb290LmNyZWF0ZVNWR1JlY3Qo
KSk7Ci0gICAgfQotICA8L3NjcmlwdD4KLSAgPCEtLSBUaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRv
ZXMgbm90IGNyYXNoLiAtLT4KLSAgPHRleHQ+UEFTUzwvdGV4dD4KLTwvc3ZnPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>381758</attachid>
            <date>2019-10-23 17:56:41 -0700</date>
            <delta_ts>2019-10-23 20:43:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-203278-20191023175640.patch</filename>
            <type>text/plain</type>
            <size>19789</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1MTUwMSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM4IEBACisyMDE5LTEwLTIzICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgW1NWRzJdIEZp
eCBTVkdTVkdFbGVtZW50IHRvIGNvbmZvcm0gd2l0aCBTVkcyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDMyNzgKKworICAgICAgICBSZXZpZXdlZCBi
eSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgVGhlIGludGVyZmFjZSBvZiBTVkdTVkdFbGVtZW50
IGlzIGRlZmluZWQgaGVyZToKKyAgICAgICAgICAgIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9TVkcy
L3N0cnVjdC5odG1sI0ludGVyZmFjZVNWR1NWR0VsZW1lbnQKKworICAgICAgICAtLSBEZWxldGUg
dGhlIHZpZXdwb3J0IGF0dHJpYnV0ZS4KKyAgICAgICAgLS0gRGVsZXRlIHRoZSBhdHRyaWJ1dGVz
IGNvbnRlbnRTY3JpcHRUeXBlIGFuZCBjb250ZW50U3R5bGVUeXBlLgorICAgICAgICAtLSBEZWxl
dGUgcGl4ZWxVbml0eHh4KCkgYW5kIHNjcmVlblBpeGVseHh4KCkgZnVuY3Rpb25zLgorICAgICAg
ICAtLSBNYWtlIHRoZSBTVkdFbGVtZW50IGFyZ3VtZW50IHRvIGNoZWNrSW50ZXJzZWN0aW9uKCkg
YW5kIAorICAgICAgICAgICBjaGVja0VuY2xvc3VyZSgpIGJlIG5vbi1vcHRpb25hbC4KKworICAg
ICAgICAqIHN2Zy9TVkdTVkdFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1NWR0Vs
ZW1lbnQ6OmNoZWNrSW50ZXJzZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR1NWR0VsZW1l
bnQ6OmNoZWNrRW5jbG9zdXJlKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR1NWR0VsZW1lbnQ6OmNv
bnRlbnRTY3JpcHRUeXBlIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNWR1NW
R0VsZW1lbnQ6OnNldENvbnRlbnRTY3JpcHRUeXBlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OlNWR1NWR0VsZW1lbnQ6OmNvbnRlbnRTdHlsZVR5cGUgY29uc3QpOiBEZWxldGVkLgorICAg
ICAgICAoV2ViQ29yZTo6U1ZHU1ZHRWxlbWVudDo6c2V0Q29udGVudFN0eWxlVHlwZSk6IERlbGV0
ZWQuCisgICAgICAgIChXZWJDb3JlOjpTVkdTVkdFbGVtZW50Ojp2aWV3cG9ydCBjb25zdCk6IERl
bGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTVkdTVkdFbGVtZW50OjpwaXhlbFVuaXRUb01pbGxp
bWV0ZXJYIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNWR1NWR0VsZW1lbnQ6
OnBpeGVsVW5pdFRvTWlsbGltZXRlclkgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29y
ZTo6U1ZHU1ZHRWxlbWVudDo6c2NyZWVuUGl4ZWxUb01pbGxpbWV0ZXJYIGNvbnN0KTogRGVsZXRl
ZC4KKyAgICAgICAgKFdlYkNvcmU6OlNWR1NWR0VsZW1lbnQ6OnNjcmVlblBpeGVsVG9NaWxsaW1l
dGVyWSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTVkdTVkdFbGVtZW50Ojpz
dXNwZW5kUmVkcmF3KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNWR1NWR0VsZW1lbnQ6
OnVuc3VzcGVuZFJlZHJhdyk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTVkdTVkdFbGVt
ZW50Ojp1bnN1c3BlbmRSZWRyYXdBbGwpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U1ZH
U1ZHRWxlbWVudDo6Zm9yY2VSZWRyYXcpOiBEZWxldGVkLgorICAgICAgICAqIHN2Zy9TVkdTVkdF
bGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR1NWR0VsZW1lbnQuaWRsOgorCiAyMDE5LTEwLTIx
ICBKaWV3ZW4gVGFuICA8amlld2VuX3RhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW1dlYkF1dGhu
XSBXYXJuIHVzZXJzIHdoZW4gbXVsdGlwbGUgTkZDIHRhZ3MgcHJlc2VudApJbmRleDogU291cmNl
L1dlYkNvcmUvc3ZnL1NWR1NWR0VsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdTVkdFbGVtZW50LmNwcAkocmV2aXNpb24gMjUxNTAxKQorKysgU291cmNlL1dl
YkNvcmUvc3ZnL1NWR1NWR0VsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05NCw1OCArOTQs
NiBAQCB2b2lkIFNWR1NWR0VsZW1lbnQ6OmRpZE1vdmVUb05ld0RvY3VtZW50CiAgICAgU1ZHR3Jh
cGhpY3NFbGVtZW50OjpkaWRNb3ZlVG9OZXdEb2N1bWVudChvbGREb2N1bWVudCwgbmV3RG9jdW1l
bnQpOwogfQogCi1jb25zdCBBdG9tU3RyaW5nJiBTVkdTVkdFbGVtZW50Ojpjb250ZW50U2NyaXB0
VHlwZSgpIGNvbnN0Ci17Ci0gICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEF0b21TdHJpbmc+IGRl
ZmF1bHRTY3JpcHRUeXBlIHsgInRleHQvZWNtYXNjcmlwdCIgfTsKLSAgICBjb25zdCBBdG9tU3Ry
aW5nJiB0eXBlID0gYXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihTVkdOYW1lczo6Y29u
dGVudFNjcmlwdFR5cGVBdHRyKTsKLSAgICByZXR1cm4gdHlwZS5pc051bGwoKSA/IGRlZmF1bHRT
Y3JpcHRUeXBlLmdldCgpIDogdHlwZTsKLX0KLQotdm9pZCBTVkdTVkdFbGVtZW50OjpzZXRDb250
ZW50U2NyaXB0VHlwZShjb25zdCBBdG9tU3RyaW5nJiB0eXBlKQotewotICAgIHNldEF0dHJpYnV0
ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oU1ZHTmFtZXM6OmNvbnRlbnRTY3JpcHRUeXBlQXR0ciwg
dHlwZSk7Ci19Ci0KLWNvbnN0IEF0b21TdHJpbmcmIFNWR1NWR0VsZW1lbnQ6OmNvbnRlbnRTdHls
ZVR5cGUoKSBjb25zdAotewotICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxBdG9tU3RyaW5nPiBk
ZWZhdWx0U3R5bGVUeXBlIHsgInRleHQvY3NzIiB9OwotICAgIGNvbnN0IEF0b21TdHJpbmcmIHR5
cGUgPSBhdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKFNWR05hbWVzOjpjb250ZW50U3R5
bGVUeXBlQXR0cik7Ci0gICAgcmV0dXJuIHR5cGUuaXNOdWxsKCkgPyBkZWZhdWx0U3R5bGVUeXBl
LmdldCgpIDogdHlwZTsKLX0KLQotdm9pZCBTVkdTVkdFbGVtZW50OjpzZXRDb250ZW50U3R5bGVU
eXBlKGNvbnN0IEF0b21TdHJpbmcmIHR5cGUpCi17Ci0gICAgc2V0QXR0cmlidXRlV2l0aG91dFN5
bmNocm9uaXphdGlvbihTVkdOYW1lczo6Y29udGVudFN0eWxlVHlwZUF0dHIsIHR5cGUpOwotfQot
Ci1SZWY8U1ZHUmVjdD4gU1ZHU1ZHRWxlbWVudDo6dmlld3BvcnQoKSBjb25zdAotewotICAgIC8v
IEZJWE1FOiBOb3QgaW1wbGVtZW50ZWQuCi0gICAgcmV0dXJuIFNWR1JlY3Q6OmNyZWF0ZSgpOwot
fQotCi1mbG9hdCBTVkdTVkdFbGVtZW50OjpwaXhlbFVuaXRUb01pbGxpbWV0ZXJYKCkgY29uc3QK
LXsKLSAgICAvLyBUaGVyZSBhcmUgMjUuNCBtaWxsaW1ldGVycyBpbiBhbiBpbmNoLgotICAgIHJl
dHVybiAyNS40ZiAvIGNzc1BpeGVsc1BlckluY2g7Ci19Ci0KLWZsb2F0IFNWR1NWR0VsZW1lbnQ6
OnBpeGVsVW5pdFRvTWlsbGltZXRlclkoKSBjb25zdAotewotICAgIC8vIFRoZXJlIGFyZSAyNS40
IG1pbGxpbWV0ZXJzIGluIGFuIGluY2guCi0gICAgcmV0dXJuIDI1LjRmIC8gY3NzUGl4ZWxzUGVy
SW5jaDsKLX0KLQotZmxvYXQgU1ZHU1ZHRWxlbWVudDo6c2NyZWVuUGl4ZWxUb01pbGxpbWV0ZXJY
KCkgY29uc3QKLXsKLSAgICByZXR1cm4gcGl4ZWxVbml0VG9NaWxsaW1ldGVyWCgpOwotfQotCi1m
bG9hdCBTVkdTVkdFbGVtZW50OjpzY3JlZW5QaXhlbFRvTWlsbGltZXRlclkoKSBjb25zdAotewot
ICAgIHJldHVybiBwaXhlbFVuaXRUb01pbGxpbWV0ZXJZKCk7Ci19Ci0KIFNWR1ZpZXdTcGVjJiBT
VkdTVkdFbGVtZW50OjpjdXJyZW50VmlldygpCiB7CiAgICAgaWYgKCFtX3ZpZXdTcGVjKQpAQCAt
MjgxLDIzICsyMjksNiBAQCB2b2lkIFNWR1NWR0VsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQo
CiAgICAgU1ZHR3JhcGhpY3NFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGF0dHJOYW1lKTsK
IH0KIAotdW5zaWduZWQgU1ZHU1ZHRWxlbWVudDo6c3VzcGVuZFJlZHJhdyh1bnNpZ25lZCkKLXsK
LSAgICByZXR1cm4gMDsKLX0KLQotdm9pZCBTVkdTVkdFbGVtZW50Ojp1bnN1c3BlbmRSZWRyYXco
dW5zaWduZWQpCi17Ci19Ci0KLXZvaWQgU1ZHU1ZHRWxlbWVudDo6dW5zdXNwZW5kUmVkcmF3QWxs
KCkKLXsKLX0KLQotdm9pZCBTVkdTVkdFbGVtZW50Ojpmb3JjZVJlZHJhdygpCi17Ci19Ci0KIFJl
ZjxOb2RlTGlzdD4gU1ZHU1ZHRWxlbWVudDo6Y29sbGVjdEludGVyc2VjdGlvbk9yRW5jbG9zdXJl
TGlzdChTVkdSZWN0JiByZWN0LCBTVkdFbGVtZW50KiByZWZlcmVuY2VFbGVtZW50LCBib29sICgq
Y2hlY2tGdW5jdGlvbikoU1ZHRWxlbWVudCYsIFNWR1JlY3QmKSkKIHsKICAgICBWZWN0b3I8UmVm
PEVsZW1lbnQ+PiBlbGVtZW50czsKQEAgLTMzMCwyMCArMjYxLDE2IEBAIFJlZjxOb2RlTGlzdD4g
U1ZHU1ZHRWxlbWVudDo6Z2V0RW5jbG9zdXIKICAgICByZXR1cm4gY29sbGVjdEludGVyc2VjdGlv
bk9yRW5jbG9zdXJlTGlzdChyZWN0LCByZWZlcmVuY2VFbGVtZW50LCBjaGVja0VuY2xvc3VyZVdp
dGhvdXRVcGRhdGluZ0xheW91dCk7CiB9CiAKLWJvb2wgU1ZHU1ZHRWxlbWVudDo6Y2hlY2tJbnRl
cnNlY3Rpb24oUmVmUHRyPFNWR0VsZW1lbnQ+JiYgZWxlbWVudCwgU1ZHUmVjdCYgcmVjdCkKK2Jv
b2wgU1ZHU1ZHRWxlbWVudDo6Y2hlY2tJbnRlcnNlY3Rpb24oUmVmPFNWR0VsZW1lbnQ+JiYgZWxl
bWVudCwgU1ZHUmVjdCYgcmVjdCkKIHsKLSAgICBpZiAoIWVsZW1lbnQpCi0gICAgICAgIHJldHVy
biBmYWxzZTsKICAgICBlbGVtZW50LT5kb2N1bWVudCgpLnVwZGF0ZUxheW91dElnbm9yZVBlbmRp
bmdTdHlsZXNoZWV0cygpOwotICAgIHJldHVybiBjaGVja0ludGVyc2VjdGlvbldpdGhvdXRVcGRh
dGluZ0xheW91dCgqZWxlbWVudCwgcmVjdCk7CisgICAgcmV0dXJuIGNoZWNrSW50ZXJzZWN0aW9u
V2l0aG91dFVwZGF0aW5nTGF5b3V0KGVsZW1lbnQsIHJlY3QpOwogfQogCi1ib29sIFNWR1NWR0Vs
ZW1lbnQ6OmNoZWNrRW5jbG9zdXJlKFJlZlB0cjxTVkdFbGVtZW50PiYmIGVsZW1lbnQsIFNWR1Jl
Y3QmIHJlY3QpCitib29sIFNWR1NWR0VsZW1lbnQ6OmNoZWNrRW5jbG9zdXJlKFJlZjxTVkdFbGVt
ZW50PiYmIGVsZW1lbnQsIFNWR1JlY3QmIHJlY3QpCiB7Ci0gICAgaWYgKCFlbGVtZW50KQotICAg
ICAgICByZXR1cm4gZmFsc2U7CiAgICAgZWxlbWVudC0+ZG9jdW1lbnQoKS51cGRhdGVMYXlvdXRJ
Z25vcmVQZW5kaW5nU3R5bGVzaGVldHMoKTsKLSAgICByZXR1cm4gY2hlY2tFbmNsb3N1cmVXaXRo
b3V0VXBkYXRpbmdMYXlvdXQoKmVsZW1lbnQsIHJlY3QpOworICAgIHJldHVybiBjaGVja0VuY2xv
c3VyZVdpdGhvdXRVcGRhdGluZ0xheW91dChlbGVtZW50LCByZWN0KTsKIH0KIAogdm9pZCBTVkdT
VkdFbGVtZW50OjpkZXNlbGVjdEFsbCgpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU1ZH
RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3N2Zy9TVkdTVkdFbGVtZW50
LmgJKHJldmlzaW9uIDI1MTUwMSkKKysrIFNvdXJjZS9XZWJDb3JlL3N2Zy9TVkdTVkdFbGVtZW50
LmgJKHdvcmtpbmcgY29weSkKQEAgLTQyLDQ1ICs0MiwyMCBAQCBjbGFzcyBTVkdWaWV3U3BlYzsK
IGNsYXNzIFNWR1NWR0VsZW1lbnQgZmluYWwgOiBwdWJsaWMgU1ZHR3JhcGhpY3NFbGVtZW50LCBw
dWJsaWMgU1ZHRml0VG9WaWV3Qm94LCBwdWJsaWMgU1ZHWm9vbUFuZFBhbiB7CiAgICAgV1RGX01B
S0VfSVNPX0FMTE9DQVRFRChTVkdTVkdFbGVtZW50KTsKIHB1YmxpYzogLy8gRE9NCi0gICAgY29u
c3QgQXRvbVN0cmluZyYgY29udGVudFNjcmlwdFR5cGUoKSBjb25zdDsKLSAgICB2b2lkIHNldENv
bnRlbnRTY3JpcHRUeXBlKGNvbnN0IEF0b21TdHJpbmcmKTsKLQotICAgIGNvbnN0IEF0b21TdHJp
bmcmIGNvbnRlbnRTdHlsZVR5cGUoKSBjb25zdDsKLSAgICB2b2lkIHNldENvbnRlbnRTdHlsZVR5
cGUoY29uc3QgQXRvbVN0cmluZyYpOwotCi0gICAgUmVmPFNWR1JlY3Q+IHZpZXdwb3J0KCkgY29u
c3Q7Ci0KLSAgICBmbG9hdCBwaXhlbFVuaXRUb01pbGxpbWV0ZXJYKCkgY29uc3Q7Ci0gICAgZmxv
YXQgcGl4ZWxVbml0VG9NaWxsaW1ldGVyWSgpIGNvbnN0OwotICAgIGZsb2F0IHNjcmVlblBpeGVs
VG9NaWxsaW1ldGVyWCgpIGNvbnN0OwotICAgIGZsb2F0IHNjcmVlblBpeGVsVG9NaWxsaW1ldGVy
WSgpIGNvbnN0OwotCi0gICAgYm9vbCB1c2VDdXJyZW50VmlldygpIGNvbnN0IHsgcmV0dXJuIG1f
dXNlQ3VycmVudFZpZXc7IH0KLSAgICBTVkdWaWV3U3BlYyYgY3VycmVudFZpZXcoKTsKLQogICAg
IGZsb2F0IGN1cnJlbnRTY2FsZSgpIGNvbnN0OwogICAgIHZvaWQgc2V0Q3VycmVudFNjYWxlKGZs
b2F0KTsKIAogICAgIFNWR1BvaW50JiBjdXJyZW50VHJhbnNsYXRlKCkgeyByZXR1cm4gbV9jdXJy
ZW50VHJhbnNsYXRlOyB9CiAgICAgRmxvYXRQb2ludCBjdXJyZW50VHJhbnNsYXRlVmFsdWUoKSBj
b25zdCB7IHJldHVybiBtX2N1cnJlbnRUcmFuc2xhdGUtPnZhbHVlKCk7IH0KIAotICAgIHVuc2ln
bmVkIHN1c3BlbmRSZWRyYXcodW5zaWduZWQgbWF4V2FpdE1pbGxpc2Vjb25kcyk7Ci0gICAgdm9p
ZCB1bnN1c3BlbmRSZWRyYXcodW5zaWduZWQgc3VzcGVuZEhhbmRsZUlkKTsKLSAgICB2b2lkIHVu
c3VzcGVuZFJlZHJhd0FsbCgpOwotICAgIHZvaWQgZm9yY2VSZWRyYXcoKTsKLQotICAgIHZvaWQg
cGF1c2VBbmltYXRpb25zKCk7Ci0gICAgdm9pZCB1bnBhdXNlQW5pbWF0aW9ucygpOwotICAgIGJv
b2wgYW5pbWF0aW9uc1BhdXNlZCgpIGNvbnN0OwotICAgIGJvb2wgaGFzQWN0aXZlQW5pbWF0aW9u
KCkgY29uc3Q7Ci0KLSAgICBmbG9hdCBnZXRDdXJyZW50VGltZSgpIGNvbnN0OwotICAgIHZvaWQg
c2V0Q3VycmVudFRpbWUoZmxvYXQpOworICAgIGJvb2wgdXNlQ3VycmVudFZpZXcoKSBjb25zdCB7
IHJldHVybiBtX3VzZUN1cnJlbnRWaWV3OyB9CisgICAgU1ZHVmlld1NwZWMmIGN1cnJlbnRWaWV3
KCk7CiAKICAgICBSZWY8Tm9kZUxpc3Q+IGdldEludGVyc2VjdGlvbkxpc3QoU1ZHUmVjdCYsIFNW
R0VsZW1lbnQqIHJlZmVyZW5jZUVsZW1lbnQpOwogICAgIFJlZjxOb2RlTGlzdD4gZ2V0RW5jbG9z
dXJlTGlzdChTVkdSZWN0JiwgU1ZHRWxlbWVudCogcmVmZXJlbmNlRWxlbWVudCk7Ci0gICAgc3Rh
dGljIGJvb2wgY2hlY2tJbnRlcnNlY3Rpb24oUmVmUHRyPFNWR0VsZW1lbnQ+JiYsIFNWR1JlY3Qm
KTsKLSAgICBzdGF0aWMgYm9vbCBjaGVja0VuY2xvc3VyZShSZWZQdHI8U1ZHRWxlbWVudD4mJiwg
U1ZHUmVjdCYpOworICAgIHN0YXRpYyBib29sIGNoZWNrSW50ZXJzZWN0aW9uKFJlZjxTVkdFbGVt
ZW50PiYmLCBTVkdSZWN0Jik7CisgICAgc3RhdGljIGJvb2wgY2hlY2tFbmNsb3N1cmUoUmVmPFNW
R0VsZW1lbnQ+JiYsIFNWR1JlY3QmKTsKKwogICAgIHZvaWQgZGVzZWxlY3RBbGwoKTsKIAogICAg
IHN0YXRpYyBSZWY8U1ZHTnVtYmVyPiBjcmVhdGVTVkdOdW1iZXIoKTsKQEAgLTk0LDYgKzY5LDE4
IEBAIHB1YmxpYzogLy8gRE9NCiAKICAgICBFbGVtZW50KiBnZXRFbGVtZW50QnlJZChjb25zdCBB
dG9tU3RyaW5nJik7CiAKKyAgICB2b2lkIHBhdXNlQW5pbWF0aW9ucygpOworICAgIHZvaWQgdW5w
YXVzZUFuaW1hdGlvbnMoKTsKKyAgICBib29sIGFuaW1hdGlvbnNQYXVzZWQoKSBjb25zdDsKKyAg
ICBib29sIGhhc0FjdGl2ZUFuaW1hdGlvbigpIGNvbnN0OworICAgIGZsb2F0IGdldEN1cnJlbnRU
aW1lKCkgY29uc3Q7CisgICAgdm9pZCBzZXRDdXJyZW50VGltZShmbG9hdCk7CisgICAgCisgICAg
dW5zaWduZWQgc3VzcGVuZFJlZHJhdyh1bnNpZ25lZCkgeyByZXR1cm4gMDsgfQorICAgIHZvaWQg
dW5zdXNwZW5kUmVkcmF3KHVuc2lnbmVkKSB7IH0KKyAgICB2b2lkIHVuc3VzcGVuZFJlZHJhd0Fs
bCgpIHsgfQorICAgIHZvaWQgZm9yY2VSZWRyYXcoKSB7IH0KKwogcHVibGljOgogICAgIHN0YXRp
YyBSZWY8U1ZHU1ZHRWxlbWVudD4gY3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVu
dCYpOwogICAgIHN0YXRpYyBSZWY8U1ZHU1ZHRWxlbWVudD4gY3JlYXRlKERvY3VtZW50Jik7Cklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU1ZHRWxlbWVudC5pZGwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvc3ZnL1NWR1NWR0VsZW1lbnQuaWRsCShyZXZpc2lvbiAyNTE1MDEpCisr
KyBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU1ZHRWxlbWVudC5pZGwJKHdvcmtpbmcgY29weSkKQEAg
LTIsNyArMiw3IEBACiAgKiBDb3B5cmlnaHQgKEMpIDIwMDQsIDIwMDUgTmlrb2xhcyBaaW1tZXJt
YW5uIDx6aW1tZXJtYW5uQGtkZS5vcmc+CiAgKiBDb3B5cmlnaHQgKEMpIDIwMDQsIDIwMDUsIDIw
MTAgUm9iIEJ1aXMgPGJ1aXNAa2RlLm9yZz4KICAqIENvcHlyaWdodCAoQykgMjAwNiBTYW11ZWwg
V2VpbmlnIDxzYW0ud2VpbmlnQGdtYWlsLmNvbT4KLSAqIENvcHlyaWdodCAoQykgMjAwNiBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxOSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogVGhpcyBsaWJyYXJ5IGlzIGZy
ZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogICogbW9kaWZ5IGl0
IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKQEAgLTI4
LDQwICsyOCwyMSBAQAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKICAgICBFeHBvcnRN
YWNybz1XRUJDT1JFX0VYUE9SVCwKIF0gaW50ZXJmYWNlIFNWR1NWR0VsZW1lbnQgOiBTVkdHcmFw
aGljc0VsZW1lbnQgewotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdBbmltYXRlZExlbmd0aCB4
OwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdBbmltYXRlZExlbmd0aCB5OwotICAgIHJlYWRv
bmx5IGF0dHJpYnV0ZSBTVkdBbmltYXRlZExlbmd0aCB3aWR0aDsKLSAgICByZWFkb25seSBhdHRy
aWJ1dGUgU1ZHQW5pbWF0ZWRMZW5ndGggaGVpZ2h0OwotICAgIGF0dHJpYnV0ZSBET01TdHJpbmcg
Y29udGVudFNjcmlwdFR5cGU7Ci0gICAgYXR0cmlidXRlIERPTVN0cmluZyBjb250ZW50U3R5bGVU
eXBlOwotICAgIFtOZXdPYmplY3RdIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdSZWN0IHZpZXdwb3J0
OwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgcGl4ZWxVbml0VG9N
aWxsaW1ldGVyWDsKLSAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHBp
eGVsVW5pdFRvTWlsbGltZXRlclk7Ci0gICAgcmVhZG9ubHkgYXR0cmlidXRlIHVucmVzdHJpY3Rl
ZCBmbG9hdCBzY3JlZW5QaXhlbFRvTWlsbGltZXRlclg7Ci0gICAgcmVhZG9ubHkgYXR0cmlidXRl
IHVucmVzdHJpY3RlZCBmbG9hdCBzY3JlZW5QaXhlbFRvTWlsbGltZXRlclk7CisgICAgW1NhbWVP
YmplY3RdIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdBbmltYXRlZExlbmd0aCB4OworICAgIFtTYW1l
T2JqZWN0XSByZWFkb25seSBhdHRyaWJ1dGUgU1ZHQW5pbWF0ZWRMZW5ndGggeTsKKyAgICBbU2Ft
ZU9iamVjdF0gcmVhZG9ubHkgYXR0cmlidXRlIFNWR0FuaW1hdGVkTGVuZ3RoIHdpZHRoOworICAg
IFtTYW1lT2JqZWN0XSByZWFkb25seSBhdHRyaWJ1dGUgU1ZHQW5pbWF0ZWRMZW5ndGggaGVpZ2h0
OworCisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCBjdXJyZW50U2NhbGU7CisgICAg
W1NhbWVPYmplY3RdIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdQb2ludCBjdXJyZW50VHJhbnNsYXRl
OworICAgIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIHVzZUN1cnJlbnRWaWV3Owog
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTVkdWaWV3U3BlYyBjdXJyZW50VmlldzsKLSAgICBhdHRy
aWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IGN1cnJlbnRTY2FsZTsKLSAgICByZWFkb25seSBhdHRy
aWJ1dGUgU1ZHUG9pbnQgY3VycmVudFRyYW5zbGF0ZTsKLQotICAgIHVuc2lnbmVkIGxvbmcgc3Vz
cGVuZFJlZHJhdyhvcHRpb25hbCB1bnNpZ25lZCBsb25nIG1heFdhaXRNaWxsaXNlY29uZHMgPSAw
KTsKLSAgICB2b2lkIHVuc3VzcGVuZFJlZHJhdyhvcHRpb25hbCB1bnNpZ25lZCBsb25nIHN1c3Bl
bmRIYW5kbGVJZCA9IDApOwotICAgIHZvaWQgdW5zdXNwZW5kUmVkcmF3QWxsKCk7Ci0gICAgdm9p
ZCBmb3JjZVJlZHJhdygpOwotICAgIHZvaWQgcGF1c2VBbmltYXRpb25zKCk7Ci0gICAgdm9pZCB1
bnBhdXNlQW5pbWF0aW9ucygpOwotICAgIGJvb2xlYW4gYW5pbWF0aW9uc1BhdXNlZCgpOwotICAg
IHVucmVzdHJpY3RlZCBmbG9hdCBnZXRDdXJyZW50VGltZSgpOwotICAgIHZvaWQgc2V0Q3VycmVu
dFRpbWUob3B0aW9uYWwgdW5yZXN0cmljdGVkIGZsb2F0IHNlY29uZHMgPSBOYU4pOwogCi0gICAg
Ly8gRklYTUU6IHJlZmVyZW5jZUVsZW1lbnQgc2hvdWxkIG5vdCBiZSBvcHRpb25hbC4KLSAgICBO
b2RlTGlzdCBnZXRJbnRlcnNlY3Rpb25MaXN0KFNWR1JlY3QgcmVjdCwgb3B0aW9uYWwgU1ZHRWxl
bWVudD8gcmVmZXJlbmNlRWxlbWVudCA9IG51bGwpOwotCi0gICAgLy8gRklYTUU6IHJlZmVyZW5j
ZUVsZW1lbnQgc2hvdWxkIG5vdCBiZSBvcHRpb25hbC4KLSAgICBOb2RlTGlzdCBnZXRFbmNsb3N1
cmVMaXN0KFNWR1JlY3QgcmVjdCwgb3B0aW9uYWwgU1ZHRWxlbWVudD8gcmVmZXJlbmNlRWxlbWVu
dCA9IG51bGwpOwotCi0gICAgYm9vbGVhbiBjaGVja0ludGVyc2VjdGlvbihTVkdFbGVtZW50PyBl
bGVtZW50LCBTVkdSZWN0IHJlY3QpOyAvLyBlbGVtZW50IHNob3VsZCBub3QgYmUgbnVsbGFibGUu
Ci0gICAgYm9vbGVhbiBjaGVja0VuY2xvc3VyZShTVkdFbGVtZW50PyBlbGVtZW50LCBTVkdSZWN0
IHJlY3QpOyAvLyBlbGVtZW50IHNob3VsZCBub3QgYmUgbnVsbGFibGUuCisgICAgTm9kZUxpc3Qg
Z2V0SW50ZXJzZWN0aW9uTGlzdChTVkdSZWN0IHJlY3QsIFNWR0VsZW1lbnQ/IHJlZmVyZW5jZUVs
ZW1lbnQpOworICAgIE5vZGVMaXN0IGdldEVuY2xvc3VyZUxpc3QoU1ZHUmVjdCByZWN0LCBTVkdF
bGVtZW50PyByZWZlcmVuY2VFbGVtZW50KTsKKyAgICBib29sZWFuIGNoZWNrSW50ZXJzZWN0aW9u
KFNWR0VsZW1lbnQgZWxlbWVudCwgU1ZHUmVjdCByZWN0KTsKKyAgICBib29sZWFuIGNoZWNrRW5j
bG9zdXJlKFNWR0VsZW1lbnQgZWxlbWVudCwgU1ZHUmVjdCByZWN0KTsKIAogICAgIHZvaWQgZGVz
ZWxlY3RBbGwoKTsKIApAQCAtNzUsNiArNTYsMjAgQEAKICAgICBbTmV3T2JqZWN0XSBTVkdUcmFu
c2Zvcm0gY3JlYXRlU1ZHVHJhbnNmb3JtRnJvbU1hdHJpeChvcHRpb25hbCBET01NYXRyaXgyRElu
aXQgbWF0cml4KTsKIAogICAgIEVsZW1lbnQgZ2V0RWxlbWVudEJ5SWQoW1JlcXVpcmVzRXhpc3Rp
bmdBdG9tU3RyaW5nXSBET01TdHJpbmcgZWxlbWVudElkKTsKKworICAgIC8vIFNWRyBhbmltYXRp
b25zIGV4dGVuc2lvbnMKKyAgICAvLyBodHRwczovL3N2Z3dnLm9yZy9zcGVjcy9hbmltYXRpb25z
LyNJbnRlcmZhY2VTVkdTVkdFbGVtZW50CisgICAgdm9pZCBwYXVzZUFuaW1hdGlvbnMoKTsKKyAg
ICB2b2lkIHVucGF1c2VBbmltYXRpb25zKCk7CisgICAgYm9vbGVhbiBhbmltYXRpb25zUGF1c2Vk
KCk7CisgICAgdW5yZXN0cmljdGVkIGZsb2F0IGdldEN1cnJlbnRUaW1lKCk7CisgICAgdm9pZCBz
ZXRDdXJyZW50VGltZShvcHRpb25hbCB1bnJlc3RyaWN0ZWQgZmxvYXQgc2Vjb25kcyA9IE5hTik7
CisKKyAgICAvLyBEZXByZWNhdGVkIFNWRyByZWRyYXdpbmcKKyAgICB1bnNpZ25lZCBsb25nIHN1
c3BlbmRSZWRyYXcob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBtYXhXYWl0TWlsbGlzZWNvbmRzID0g
MCk7CisgICAgdm9pZCB1bnN1c3BlbmRSZWRyYXcob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBzdXNw
ZW5kSGFuZGxlSWQgPSAwKTsKKyAgICB2b2lkIHVuc3VzcGVuZFJlZHJhd0FsbCgpOworICAgIHZv
aWQgZm9yY2VSZWRyYXcoKTsKIH07CiAKIFNWR1NWR0VsZW1lbnQgaW1wbGVtZW50cyBTVkdGaXRU
b1ZpZXdCb3g7CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNTE1MDEpCisrKyBMYXlvdXRUZXN0cy9DaGFu
Z2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyMCBAQAorMjAxOS0xMC0yMyAgU2FpZCBB
Ym91LUhhbGxhd2EgIDxzYWJvdWhhbGxhd2FAYXBwbGUuY29tPgorCisgICAgICAgIFtTVkcyXSBG
aXggU1ZHU1ZHRWxlbWVudCB0byBjb25mb3JtIHdpdGggU1ZHMgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAzMjc4CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgU2ltb24gRnJhc2VyLgorCisgICAgICAgICogc3ZnL2N1c3RvbS9pbW11dGFibGUtcHJvcGVy
dGllcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogc3ZnL2N1c3RvbS9pbW11dGFibGUtcHJvcGVy
dGllcy5odG1sOgorICAgICAgICBTVkdTVkdFbGVtZW50LnZpZXdwb3J0IGhhcyB0byBiZSByZW1v
dmVkLgorCisgICAgICAgICogc3ZnL2N1c3RvbS9pbnRlcnNlY3Rpb24tbGlzdC1udWxsLWV4cGVj
dGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBzdmcvY3VzdG9tL2ludGVyc2VjdGlvbi1saXN0
LW51bGwuc3ZnOiBSZW1vdmVkLgorICAgICAgICBUaGUgc3BlY3Mgc3RhdGUgdGhhdCB0aGUgU1ZH
RWxlbWVudCBhcmd1bWVudCB0byBjaGVja0ludGVyc2VjdGlvbigpIGFuZAorICAgICAgICBjaGVj
a0VuY2xvc3VyZSgpIGlzIG5vdCBvcHRpb25hbC4gVGhpcyB0ZXN0IHdhcyB0ZXN0aW5nIHRoZSBh
cmd1bWVudCAKKyAgICAgICAgb3B0aW9uYWwgY2FzZS4KKwogMjAxOS0xMC0yMyAgS2F0ZSBDaGVu
ZXkgIDxrYXRoZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQgZHVt
cFJlc291cmNlTG9hZFN0YXRpc3RpY3MgaW4gU1FMaXRlIElUUCBEYXRhYmFzZQpJbmRleDogTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNTE1MDEpCisrKyBMYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAK
KzIwMTktMTAtMjMgIFNhaWQgQWJvdS1IYWxsYXdhICA8c2Fib3VoYWxsYXdhQGFwcGxlLmNvbT4K
KworICAgICAgICBbU1ZHMl0gRml4IFNWR1NWR0VsZW1lbnQgdG8gY29uZm9ybSB3aXRoIFNWRzIK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMzI3OAor
CisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9zdmcvaGlzdG9yaWNhbC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3N2Zy9pZGxoYXJuZXNzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAg
IFNvbWUgc3ViLXRlc3RzIGFyZSBwYXNzaW5nIG5vdyB3aXRoIHRoaXMgY2hhbmdlLgorCiAyMDE5
LTEwLTIzICBTYWlkIEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CiAKICAg
ICAgICAgW1NWRzJdIEZpeCBTVkdFbGVtZW50IHRvIGNvbmZvcm0gd2l0aCBTVkcyCkluZGV4OiBM
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3N2Zy9oaXN0b3JpY2Fs
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3N2Zy9oaXN0b3JpY2FsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjUx
NTAxKQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zdmcv
aGlzdG9yaWNhbC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTI5LDEyICsyOSwxMiBA
QCBGQUlMIFNWR0dyYXBoaWNzRWxlbWVudC5wcm90b3R5cGUuZ2V0VHJhCiBGQUlMIFNWR0dyYXBo
aWNzRWxlbWVudC5wcm90b3R5cGUuaGFzRXh0ZW5zaW9uIG11c3QgYmUgcmVtb3ZlZCBhc3NlcnRf
ZmFsc2U6IGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCiBGQUlMIFNWR0dyYXBoaWNzRWxlbWVudC5w
cm90b3R5cGUucmVxdWlyZWRGZWF0dXJlcyBtdXN0IGJlIHJlbW92ZWQgYXNzZXJ0X2ZhbHNlOiBl
eHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQogRkFJTCBTVkdTVkdFbGVtZW50LnByb3RvdHlwZS5jdXJy
ZW50VmlldyBtdXN0IGJlIHJlbW92ZWQgYXNzZXJ0X2ZhbHNlOiBleHBlY3RlZCBmYWxzZSBnb3Qg
dHJ1ZQotRkFJTCBTVkdTVkdFbGVtZW50LnByb3RvdHlwZS5waXhlbFVuaXRUb01pbGxpbWV0ZXJY
IG11c3QgYmUgcmVtb3ZlZCBhc3NlcnRfZmFsc2U6IGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1G
QUlMIFNWR1NWR0VsZW1lbnQucHJvdG90eXBlLnBpeGVsVW5pdFRvTWlsbGltZXRlclkgbXVzdCBi
ZSByZW1vdmVkIGFzc2VydF9mYWxzZTogZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKLUZBSUwgU1ZH
U1ZHRWxlbWVudC5wcm90b3R5cGUuc2NyZWVuUGl4ZWxUb01pbGxpbWV0ZXJYIG11c3QgYmUgcmVt
b3ZlZCBhc3NlcnRfZmFsc2U6IGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIFNWR1NWR0Vs
ZW1lbnQucHJvdG90eXBlLnNjcmVlblBpeGVsVG9NaWxsaW1ldGVyWSBtdXN0IGJlIHJlbW92ZWQg
YXNzZXJ0X2ZhbHNlOiBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQorUEFTUyBTVkdTVkdFbGVtZW50
LnByb3RvdHlwZS5waXhlbFVuaXRUb01pbGxpbWV0ZXJYIG11c3QgYmUgcmVtb3ZlZCAKK1BBU1Mg
U1ZHU1ZHRWxlbWVudC5wcm90b3R5cGUucGl4ZWxVbml0VG9NaWxsaW1ldGVyWSBtdXN0IGJlIHJl
bW92ZWQgCitQQVNTIFNWR1NWR0VsZW1lbnQucHJvdG90eXBlLnNjcmVlblBpeGVsVG9NaWxsaW1l
dGVyWCBtdXN0IGJlIHJlbW92ZWQgCitQQVNTIFNWR1NWR0VsZW1lbnQucHJvdG90eXBlLnNjcmVl
blBpeGVsVG9NaWxsaW1ldGVyWSBtdXN0IGJlIHJlbW92ZWQgCiBGQUlMIFNWR1NWR0VsZW1lbnQu
cHJvdG90eXBlLnVzZUN1cnJlbnRWaWV3IG11c3QgYmUgcmVtb3ZlZCBhc3NlcnRfZmFsc2U6IGV4
cGVjdGVkIGZhbHNlIGdvdCB0cnVlCi1GQUlMIFNWR1NWR0VsZW1lbnQucHJvdG90eXBlLnZpZXdw
b3J0IG11c3QgYmUgcmVtb3ZlZCBhc3NlcnRfZmFsc2U6IGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVl
CitQQVNTIFNWR1NWR0VsZW1lbnQucHJvdG90eXBlLnZpZXdwb3J0IG11c3QgYmUgcmVtb3ZlZCAK
IFBBU1MgU1ZHVmlld0VsZW1lbnQucHJvdG90eXBlLnZpZXdUYXJnZXQgbXVzdCBiZSByZW1vdmVk
IAogUEFTUyBTVkdQYXRoRWxlbWVudC5wcm90b3R5cGUuZ2V0UG9pbnRBdExlbmd0aCBtdXN0IGJl
IG1vdmVkIHRvIFNWR0dlb21ldHJ5RWxlbWVudC5wcm90b3R5cGUgCiBQQVNTIFNWR1BhdGhFbGVt
ZW50LnByb3RvdHlwZS5nZXRUb3RhbExlbmd0aCBtdXN0IGJlIG1vdmVkIHRvIFNWR0dlb21ldHJ5
RWxlbWVudC5wcm90b3R5cGUgCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3N2Zy9pZGxoYXJuZXNzLndpbmRvdy1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zdmcvaWRs
aGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNTE1MDEpCisrKyBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3N2Zy9pZGxoYXJuZXNzLndpbmRv
dy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTM2MCw4ICszNjAsOCBAQCBQQVNTIFNW
R1NWR0VsZW1lbnQgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgCiBQQVNTIFNWR1NWR0VsZW1lbnQgaW50
ZXJmYWNlOiBhdHRyaWJ1dGUgaGVpZ2h0IAogUEFTUyBTVkdTVkdFbGVtZW50IGludGVyZmFjZTog
YXR0cmlidXRlIGN1cnJlbnRTY2FsZSAKIFBBU1MgU1ZHU1ZHRWxlbWVudCBpbnRlcmZhY2U6IGF0
dHJpYnV0ZSBjdXJyZW50VHJhbnNsYXRlIAotRkFJTCBTVkdTVkdFbGVtZW50IGludGVyZmFjZTog
b3BlcmF0aW9uIGdldEludGVyc2VjdGlvbkxpc3QoRE9NUmVjdFJlYWRPbmx5LCBTVkdFbGVtZW50
KSBhc3NlcnRfZXF1YWxzOiBwcm9wZXJ0eSBoYXMgd3JvbmcgLmxlbmd0aCBleHBlY3RlZCAyIGJ1
dCBnb3QgMQotRkFJTCBTVkdTVkdFbGVtZW50IGludGVyZmFjZTogb3BlcmF0aW9uIGdldEVuY2xv
c3VyZUxpc3QoRE9NUmVjdFJlYWRPbmx5LCBTVkdFbGVtZW50KSBhc3NlcnRfZXF1YWxzOiBwcm9w
ZXJ0eSBoYXMgd3JvbmcgLmxlbmd0aCBleHBlY3RlZCAyIGJ1dCBnb3QgMQorUEFTUyBTVkdTVkdF
bGVtZW50IGludGVyZmFjZTogb3BlcmF0aW9uIGdldEludGVyc2VjdGlvbkxpc3QoRE9NUmVjdFJl
YWRPbmx5LCBTVkdFbGVtZW50KSAKK1BBU1MgU1ZHU1ZHRWxlbWVudCBpbnRlcmZhY2U6IG9wZXJh
dGlvbiBnZXRFbmNsb3N1cmVMaXN0KERPTVJlY3RSZWFkT25seSwgU1ZHRWxlbWVudCkgCiBQQVNT
IFNWR1NWR0VsZW1lbnQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY2hlY2tJbnRlcnNlY3Rpb24oU1ZH
RWxlbWVudCwgRE9NUmVjdFJlYWRPbmx5KSAKIFBBU1MgU1ZHU1ZHRWxlbWVudCBpbnRlcmZhY2U6
IG9wZXJhdGlvbiBjaGVja0VuY2xvc3VyZShTVkdFbGVtZW50LCBET01SZWN0UmVhZE9ubHkpIAog
UEFTUyBTVkdTVkdFbGVtZW50IGludGVyZmFjZTogb3BlcmF0aW9uIGRlc2VsZWN0QWxsKCkgCklu
ZGV4OiBMYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2ltbXV0YWJsZS1wcm9wZXJ0aWVzLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2ltbXV0YWJsZS1wcm9w
ZXJ0aWVzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjUxNTAxKQorKysgTGF5b3V0VGVzdHMvc3Zn
L2N1c3RvbS9pbW11dGFibGUtcHJvcGVydGllcy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkK
QEAgLTMsOSArMyw2IEBAIFRlc3RzIHdoZXRoZXIgaW1tdXRhYmxlIHByb3BlcnRpZXMgY2FuIG4K
IE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KIAogCi1QQVNTIHZpZXdwb3J0LnggaXMgMAotUEFT
UyB2aWV3cG9ydC54IGlzIDEwMAotUEFTUyBzdmdEb2MuZG9jdW1lbnRFbGVtZW50LnZpZXdwb3J0
LnggaXMgMAogUEFTUyB6b29tUmVjdFNjcmVlbi54IGlzIDAKIFBBU1Mgem9vbVJlY3RTY3JlZW4u
eCBpcyAxMDAKIFBBU1Mgem9vbUV2ZW50Lnpvb21SZWN0U2NyZWVuLnggaXMgMApJbmRleDogTGF5
b3V0VGVzdHMvc3ZnL2N1c3RvbS9pbW11dGFibGUtcHJvcGVydGllcy5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL3N2Zy9jdXN0b20vaW1tdXRhYmxlLXByb3BlcnRpZXMuaHRtbAkocmV2
aXNpb24gMjUxNTAxKQorKysgTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9pbW11dGFibGUtcHJvcGVy
dGllcy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMSwxNSArMTEsNiBAQCBkZXNjcmlwdGlvbigi
VGVzdHMgd2hldGhlciBpbW11dGFibGUgcHJvCiAKIHZhciBzdmdEb2MgPSBkb2N1bWVudC5pbXBs
ZW1lbnRhdGlvbi5jcmVhdGVEb2N1bWVudCgiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLCAi
c3ZnIiwgbnVsbCk7CiAKLS8vICd2aWV3cG9ydCcgYXR0cmlidXRlIGlzIGltbXV0YWJsZSAoU3Bl
YzogVGhlIG9iamVjdCBpdHNlbGYgYW5kIGl0cyBjb250ZW50cyBhcmUgYm90aCByZWFkb25seS4p
Ci12YXIgdmlld3BvcnQgPSBzdmdEb2MuZG9jdW1lbnRFbGVtZW50LnZpZXdwb3J0OwotCi1zaG91
bGRCZSgidmlld3BvcnQueCIsICIwIik7Ci12aWV3cG9ydC54ID0gMTAwOwotCi1zaG91bGRCZSgi
dmlld3BvcnQueCIsICIxMDAiKTsKLXNob3VsZEJlKCJzdmdEb2MuZG9jdW1lbnRFbGVtZW50LnZp
ZXdwb3J0LngiLCAiMCIpOwotCiAvLyBFdmVyeSBhdHRyaWJ1dGUgb2YgU1ZHWm9vbUV2ZW50IGlz
IGltbXV0YWJsZSAoU3BlYzogVGhlIG9iamVjdCBpdHNlbGYgYW5kIGl0cyBjb250ZW50cyBhcmUg
Ym90aCByZWFkb25seS4pCiB2YXIgem9vbUV2ZW50ID0gc3ZnRG9jLmNyZWF0ZUV2ZW50KCJTVkda
b29tRXZlbnRzIik7CiAKSW5kZXg6IExheW91dFRlc3RzL3N2Zy9jdXN0b20vaW50ZXJzZWN0aW9u
LWxpc3QtbnVsbC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvc3ZnL2N1
c3RvbS9pbnRlcnNlY3Rpb24tbGlzdC1udWxsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjUxNTAx
KQorKysgTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9pbnRlcnNlY3Rpb24tbGlzdC1udWxsLWV4cGVj
dGVkLnR4dAkobm9uZXhpc3RlbnQpCkBAIC0xICswLDAgQEAKLVBBU1MKSW5kZXg6IExheW91dFRl
c3RzL3N2Zy9jdXN0b20vaW50ZXJzZWN0aW9uLWxpc3QtbnVsbC5zdmcKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9pbnRlcnNlY3Rpb24tbGlzdC1udWxsLnN2ZwkocmV2aXNp
b24gMjUxNTAxKQorKysgTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9pbnRlcnNlY3Rpb24tbGlzdC1u
dWxsLnN2Zwkobm9uZXhpc3RlbnQpCkBAIC0xLDE0ICswLDAgQEAKLTw/eG1sIHZlcnNpb249IjEu
MCIgZW5jb2Rpbmc9IlVURi04Ij8+Ci08c3ZnIGlkPSJyb290IiB4bWxucz0iaHR0cDovL3d3dy53
My5vcmcvMjAwMC9zdmciIG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgPHNjcmlwdD4KLSAgICBmdW5j
dGlvbiBydW5UZXN0KCkgewotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAg
ICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgdmFyIHJvb3QgPSBkb2N1bWVu
dC5kb2N1bWVudEVsZW1lbnQ7Ci0gICAgICAgIHJvb3QuY2hlY2tJbnRlcnNlY3Rpb24obnVsbCwg
cm9vdC5jcmVhdGVTVkdSZWN0KCkpOwotICAgICAgICByb290LmNoZWNrRW5jbG9zdXJlKG51bGws
IHJvb3QuY3JlYXRlU1ZHUmVjdCgpKTsKLSAgICB9Ci0gIDwvc2NyaXB0PgotICA8IS0tIFRoaXMg
dGVzdCBwYXNzZXMgaWYgaXQgZG9lcyBub3QgY3Jhc2guIC0tPgotICA8dGV4dD5QQVNTPC90ZXh0
PgotPC9zdmc+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>