<?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>181147</bug_id>
          
          <creation_ts>2017-12-23 19:58:19 -0800</creation_ts>
          <short_desc>SVG lighting filter lights are in the wrong coordinate system</short_desc>
          <delta_ts>2018-01-03 09:59:40 -0800</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>https://codepen.io/smfr/pen/aEWgXj</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>181196</dependson>
          <blocked>181197</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1384644</commentid>
    <comment_count>0</comment_count>
      <attachid>330168</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-12-23 19:58:19 -0800</bug_when>
    <thetext>Created attachment 330168
Testcase

Compare rendering of attachment between browsers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1385023</commentid>
    <comment_count>1</comment_count>
      <attachid>330274</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-12-31 19:35:40 -0800</bug_when>
    <thetext>Created attachment 330274
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1385073</commentid>
    <comment_count>2</comment_count>
      <attachid>330295</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2018-01-01 12:41:43 -0800</bug_when>
    <thetext>Created attachment 330295
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1385484</commentid>
    <comment_count>3</comment_count>
      <attachid>330295</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-01-03 09:58:08 -0800</bug_when>
    <thetext>Comment on attachment 330295
Patch

Clearing flags on attachment: 330295

Committed r226363: &lt;https://trac.webkit.org/changeset/226363&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1385485</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-01-03 09:58:10 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1385486</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-01-03 09:59:40 -0800</bug_when>
    <thetext>&lt;rdar://problem/36277252&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>330168</attachid>
            <date>2017-12-23 19:58:19 -0800</date>
            <delta_ts>2017-12-23 19:58:19 -0800</delta_ts>
            <desc>Testcase</desc>
            <filename>lighting-diffuse-spot.html</filename>
            <type>text/html</type>
            <size>1069</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgogICAgPGhlYWQ+CiAgICAgICAgPG1ldGEgbmFtZT0idmll
d3BvcnQiIGNvbnRlbnQ9ImluaXRpYWwtc2NhbGU9MS4wIj4KICAgICAgICA8c3R5bGU+CiAgICAg
ICAgYm9keSB7CiAgICAgICAgICAgIG1hcmdpbjogMDsKICAgICAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogZ3JheTsKICAgICAgICB9CiAgICAgICAgc3ZnIHsKICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogd2hpdGU7CiAgICAgICAgfQogICAgICAgIDwvc3R5bGU+CiAgICA8L2hlYWQ+CiAg
ICA8Ym9keT4KICAgIDxzdmcgd2lkdGg9IjQ4MHB4IiBoZWlnaHQ9IjYwMHB4IiB4bWxucz0iaHR0
cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogICAgPGRlZnM+CiAgICAgICAgPGZpbHRlciBpZD0i
ZmlsdGVyIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIHg9IjAiIHk9IjAiIHdpZHRo
PSIxMDAlIiBoZWlnaHQ9IjEwMCUiPgogICAgICAgICAgICA8ZmVGbG9vZCBmbG9vZC1jb2xvcj0i
Z3JlZW4iIGZsb29kLW9wYWNpdHk9IjAuNSIgLz4KICAgICAgICAgICAgPGZlRGlmZnVzZUxpZ2h0
aW5nIGRpZmZ1c2VDb25zdGFudD0iMSIgc3VyZmFjZVNjYWxlPSI0IiBrZXJuZWxVbml0TGVuZ3Ro
PSIxIiBsaWdodGluZy1jb2xvcj0icmdiKDIwMCwgMTI4LCA1MCkiPgogICAgICAgICAgICAgICAg
PGZlU3BvdExpZ2h0IHg9IjEwIiB5PSIyMCIgej0iMjAwIiBwb2ludHNBdFg9IjEwIiBwb2ludHNB
dFk9IjIwIiBwb2ludHNBdFo9IjEwIiBsaW1pdGluZ0NvbmVBbmdsZT0iMTkiIC8+CiAgICAgICAg
ICAgIDwvZmVEaWZmdXNlTGlnaHRpbmc+CiAgICAgICAgPC9maWx0ZXI+CiAgICA8L2RlZnM+CiAg
ICA8cmVjdCBpZD0idGFyZ2V0IiB4PSIxMCIgeT0iMjAiIHdpZHRoPSI0MDAiIGhlaWdodD0iNDAw
IiBmaWx0ZXI9InVybCgjZmlsdGVyKSIvPgogICAgPHJlY3QgICAgICAgICAgICAgeD0iMTAiIHk9
IjIwIiB3aWR0aD0iNDAwIiBoZWlnaHQ9IjQwMCIgZmlsbD0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIx
IiBzdHJva2U9ImJsYWNrIiAvPgo8L3N2Zz4KPC9ib2R5Pgo8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>330274</attachid>
            <date>2017-12-31 19:35:40 -0800</date>
            <delta_ts>2018-01-01 12:41:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181147-20171231193539.patch</filename>
            <type>text/plain</type>
            <size>34892</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MTUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmJkMWQ0Yjk0NGFhNjg0
YmJjNDczZjExOTBiMjU4Mzk3Y2E3MzBkMi4uYWRlNWRmOTkzN2VkM2U1YjBkODlmZjBlNzZkYjA4
OWQwNGE0MGFkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDc2IEBACisyMDE3LTEyLTMxICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFNWRyBsaWdodGlu
ZyBmaWx0ZXIgbGlnaHRzIGFyZSBpbiB0aGUgd3JvbmcgY29vcmRpbmF0ZSBzeXN0ZW0KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTE0NworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBvaW50IGFuZCBzcG90
IGxpZ2h0IGNvb3JkaW5hdGVzIHdlcmVuJ3QgYmVpbmcgY29udmVydGVkIGludG8gYnVmZmVyLXJl
bGF0aXZlCisgICAgICAgIGNvb3JkaW5hdGVzIGJlZm9yZSBiZWluZyBmZWQgaW50byB0aGUgbGln
aHRpbmcgbWF0aCwgcmVzdWx0aW5nIGluIGluY29ycmVjdCBsaWdodAorICAgICAgICByZW5kZXJp
bmcgb24gUmV0aW5hIGRldmljZXMsIGFuZCB3aGVuIHRoZSBmaWx0ZXIgcHJpbWl0aXZlIHJlZ2lv
biB3YXMgY2xpcHBlZC4KKworICAgICAgICBGaXggYnkgc3RvcmluZyBhYnNvbHV0ZVVuY2xpcHBl
ZFN1YnJlZ2lvbiBvbiBGaWx0ZXJFZmZlY3QsIHdoaWNoIGFsbG93cyB1cyB0byBtYXAKKyAgICAg
ICAgbGlnaHRpbmcgcG9pbnRzIGZyb20gdXNlciBzcGFjZSBjb29yZGluYXRlcyBpbnRvIHRoZSBj
b29yZGluYXRlcyBvZiB0aGUgYnVmZmVyIGJlaW5nCisgICAgICAgIHVzZWQgZm9yIHJlbmRlcmlu
Zy4gQWxzbyBzY2FsZSB0aGUgbGlnaHQgeiBjb29yZGluYXRlIGJ5IGRvaW5nIGEgZHVtbXkgcG9p
bnQgbWFwcGluZyBpbiB4LgorCisgICAgICAgIFJlbmFtZSBtZW1iZXJzIG9mIFBvaW50TGlnaHRT
b3VyY2UgYW5kIFNwb3RMaWdodFNvdXJjZSB0byBtYWtlIGl0IGNsZWFyIHdoaWNoIGNvb3JkaW5h
dGUKKyAgICAgICAgc3lzdGVtIHRoZXkgYXJlIGluLgorCisgICAgICAgIFRlc3RzIGluY2x1ZGUg
SGlEUEkgdGVzdHMuCisKKyAgICAgICAgVGVzdHM6IHN2Zy9maWx0ZXJzL2ZlUG9pbnRMaWdodC1j
b29yZGluYXRlcy1leHBlY3RlZC5zdmcKKyAgICAgICAgICAgICAgIHN2Zy9maWx0ZXJzL2ZlUG9p
bnRMaWdodC1jb29yZGluYXRlcy5zdmcKKyAgICAgICAgICAgICAgIHN2Zy9maWx0ZXJzL2ZlU3Bv
dExpZ2h0LWNvb3JkaW5hdGVzLWV4cGVjdGVkLnN2ZworICAgICAgICAgICAgICAgc3ZnL2ZpbHRl
cnMvZmVTcG90TGlnaHQtY29vcmRpbmF0ZXMuc3ZnCisgICAgICAgICAgICAgICBzdmcvZmlsdGVy
cy9oaWRwaS9mZVBvaW50TGlnaHQtY29vcmRpbmF0ZXMtZXhwZWN0ZWQuc3ZnCisgICAgICAgICAg
ICAgICBzdmcvZmlsdGVycy9oaWRwaS9mZVBvaW50TGlnaHQtY29vcmRpbmF0ZXMuc3ZnCisgICAg
ICAgICAgICAgICBzdmcvZmlsdGVycy9oaWRwaS9mZVNwb3RMaWdodC1jb29yZGluYXRlcy1leHBl
Y3RlZC5zdmcKKyAgICAgICAgICAgICAgIHN2Zy9maWx0ZXJzL2hpZHBpL2ZlU3BvdExpZ2h0LWNv
b3JkaW5hdGVzLnN2ZworCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRQb2ludDNE
Lmg6IE1ha2UgaXQgZWFzeSB0byBnZXQgYW5kIHNldCB0aGUgWCBhbmQgWSBjb29yZHMgYXMgYSBG
bG9hdFBvaW50LgorICAgICAgICAoV2ViQ29yZTo6RmxvYXRQb2ludDNEOjp4eSBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpGbG9hdFBvaW50M0Q6OnNldFhZKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5jcHA6CisgICAgICAgIChXZWJDb3JlOjptYXBQ
b2ludCk6CisgICAgICAgIChXZWJDb3JlOjptYXBSZWN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5oOiBIZWxwZXIgdG8gbWFrZSBhIHBvaW50IGJldHdl
ZW4gcmVjdHMuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9EaXN0YW50TGln
aHRTb3VyY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGlzdGFudExpZ2h0U291cmNlOjppbml0
UGFpbnRpbmdEYXRhKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0Rpc3Rh
bnRMaWdodFNvdXJjZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVM
aWdodGluZy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGRUxpZ2h0aW5nOjpkcmF3TGlnaHRpbmcp
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyRWZmZWN0LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkZpbHRlckVmZmVjdDo6bWFwUG9pbnRGcm9tVXNlclNwYWNlVG9C
dWZmZXIgY29uc3QpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVy
RWZmZWN0Lmg6CisgICAgICAgIChXZWJDb3JlOjpGaWx0ZXJFZmZlY3Q6OnNldFVuY2xpcHBlZEFi
c29sdXRlU3VicmVnaW9uKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0xp
Z2h0U291cmNlLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9Qb2ludExp
Z2h0U291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50TGlnaHRTb3VyY2U6OmluaXRQ
YWludGluZ0RhdGEpOgorICAgICAgICAoV2ViQ29yZTo6UG9pbnRMaWdodFNvdXJjZTo6Y29tcHV0
ZVBpeGVsTGlnaHRpbmdEYXRhIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50TGlnaHRT
b3VyY2U6OnNldFgpOgorICAgICAgICAoV2ViQ29yZTo6UG9pbnRMaWdodFNvdXJjZTo6c2V0WSk6
CisgICAgICAgIChXZWJDb3JlOjpQb2ludExpZ2h0U291cmNlOjpzZXRaKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1BvaW50TGlnaHRTb3VyY2UuaDoKKyAgICAgICAgKFdl
YkNvcmU6OlBvaW50TGlnaHRTb3VyY2U6OnBvc2l0aW9uIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlBvaW50TGlnaHRTb3VyY2U6OlBvaW50TGlnaHRTb3VyY2UpOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvU3BvdExpZ2h0U291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlNwb3RMaWdodFNvdXJjZTo6aW5pdFBhaW50aW5nRGF0YSk6CisgICAgICAgIChXZWJDb3Jl
OjpTcG90TGlnaHRTb3VyY2U6OmNvbXB1dGVQaXhlbExpZ2h0aW5nRGF0YSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpTcG90TGlnaHRTb3VyY2U6OnNldFgpOgorICAgICAgICAoV2ViQ29yZTo6
U3BvdExpZ2h0U291cmNlOjpzZXRZKToKKyAgICAgICAgKFdlYkNvcmU6OlNwb3RMaWdodFNvdXJj
ZTo6c2V0Wik6CisgICAgICAgIChXZWJDb3JlOjpTcG90TGlnaHRTb3VyY2U6OnNldFBvaW50c0F0
WCk6CisgICAgICAgIChXZWJDb3JlOjpTcG90TGlnaHRTb3VyY2U6OnNldFBvaW50c0F0WSk6Cisg
ICAgICAgIChXZWJDb3JlOjpTcG90TGlnaHRTb3VyY2U6OnNldFBvaW50c0F0Wik6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9TcG90TGlnaHRTb3VyY2UuaDoKKyAgICAgICAg
KFdlYkNvcmU6OlNwb3RMaWdodFNvdXJjZTo6cG9zaXRpb24gY29uc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6U3BvdExpZ2h0U291cmNlOjpkaXJlY3Rpb24gY29uc3QpOgorICAgICAgICAoV2ViQ29y
ZTo6U3BvdExpZ2h0U291cmNlOjpTcG90TGlnaHRTb3VyY2UpOgorICAgICAgICAqIHJlbmRlcmlu
Zy9zdmcvUmVuZGVyU1ZHUmVzb3VyY2VGaWx0ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyU1ZHUmVzb3VyY2VGaWx0ZXI6OmJ1aWxkUHJpbWl0aXZlcyBjb25zdCk6CisgICAgICAgICog
cmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdSZXNvdXJjZUZpbHRlclByaW1pdGl2ZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJTVkdSZXNvdXJjZUZpbHRlclByaW1pdGl2ZTo6ZGV0ZXJtaW5l
RmlsdGVyUHJpbWl0aXZlU3VicmVnaW9uKToKKwogMjAxNy0xMi0zMCAgU2ltb24gRnJhc2VyICA8
c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjI1MTIyKTog
ZmVQb2ludExpZ2h0cyBkb24ndCB3b3JrCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9GbG9hdFBvaW50M0QuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0Zsb2F0UG9pbnQzRC5oCmluZGV4IGY5NzNkOGQ1OGJjODNiMzEyMDAxYmFlMmIwNGVk
YjUzYjMwMGI5NWEuLmQwOTM3ODE1MmViNDJkMzVlYzc2MjYwMDhmMWU1ZjVhOTZmNWE2OTggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9pbnQzRC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9pbnQzRC5oCkBA
IC02Miw2ICs2MiwxMyBAQCBwdWJsaWM6CiAKICAgICBmbG9hdCB5KCkgY29uc3QgeyByZXR1cm4g
bV95OyB9CiAgICAgdm9pZCBzZXRZKGZsb2F0IHkpIHsgbV95ID0geTsgfQorICAgIAorICAgIEZs
b2F0UG9pbnQgeHkoKSBjb25zdCB7IHJldHVybiB7IG1feCwgbV95IH07IH0KKyAgICB2b2lkIHNl
dFhZKEZsb2F0UG9pbnQgcCkKKyAgICB7CisgICAgICAgIG1feCA9IHAueCgpOworICAgICAgICBt
X3kgPSBwLnkoKTsKKyAgICB9CiAKICAgICBmbG9hdCB6KCkgY29uc3QgeyByZXR1cm4gbV96OyB9
CiAgICAgdm9pZCBzZXRaKGZsb2F0IHopIHsgbV96ID0gejsgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR2VvbWV0cnlVdGlsaXRpZXMuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR2VvbWV0cnlVdGlsaXRpZXMuY3BwCmluZGV4IGIz
M2ZhMmEyZDMwOGU2OThjYWU1NTExMzkzNWY4OWUwMDVlYTQ2OTAuLjAwOTljZWZhMDYzODUwMDE0
MGEwYzdlZDIzZTE2YjY4ZWQ0NDEzNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0dlb21ldHJ5VXRpbGl0aWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5jcHAKQEAgLTk2LDYgKzk2LDIwIEBA
IEZsb2F0UmVjdCB1bmlvblJlY3QoY29uc3QgVmVjdG9yPEZsb2F0UmVjdD4mIHJlY3RzKQogICAg
IHJldHVybiByZXN1bHQ7CiB9CiAKK0Zsb2F0UG9pbnQgbWFwUG9pbnQoRmxvYXRQb2ludCBwLCBj
b25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNvbnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QpCit7Cisg
ICAgaWYgKCFzcmNSZWN0LndpZHRoKCkgfHwgIXNyY1JlY3QuaGVpZ2h0KCkpCisgICAgICAgIHJl
dHVybiBwOworCisgICAgZmxvYXQgd2lkdGhTY2FsZSA9IGRlc3RSZWN0LndpZHRoKCkgLyBzcmNS
ZWN0LndpZHRoKCk7CisgICAgZmxvYXQgaGVpZ2h0U2NhbGUgPSBkZXN0UmVjdC5oZWlnaHQoKSAv
IHNyY1JlY3QuaGVpZ2h0KCk7CisKKyAgICByZXR1cm4geworICAgICAgICBkZXN0UmVjdC54KCkg
KyAocC54KCkgLSBzcmNSZWN0LngoKSkgKiB3aWR0aFNjYWxlLAorICAgICAgICBkZXN0UmVjdC55
KCkgKyAocC55KCkgLSBzcmNSZWN0LnkoKSkgKiBoZWlnaHRTY2FsZQorICAgIH07Cit9CisKIEZs
b2F0UmVjdCBtYXBSZWN0KGNvbnN0IEZsb2F0UmVjdCYgciwgY29uc3QgRmxvYXRSZWN0JiBzcmNS
ZWN0LCBjb25zdCBGbG9hdFJlY3QmIGRlc3RSZWN0KQogewogICAgIGlmICghc3JjUmVjdC53aWR0
aCgpIHx8ICFzcmNSZWN0LmhlaWdodCgpKQpAQCAtMTAzLDkgKzExNywxMiBAQCBGbG9hdFJlY3Qg
bWFwUmVjdChjb25zdCBGbG9hdFJlY3QmIHIsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgY29u
c3QgRmxvYXRSZWN0JgogCiAgICAgZmxvYXQgd2lkdGhTY2FsZSA9IGRlc3RSZWN0LndpZHRoKCkg
LyBzcmNSZWN0LndpZHRoKCk7CiAgICAgZmxvYXQgaGVpZ2h0U2NhbGUgPSBkZXN0UmVjdC5oZWln
aHQoKSAvIHNyY1JlY3QuaGVpZ2h0KCk7Ci0gICAgcmV0dXJuIEZsb2F0UmVjdChkZXN0UmVjdC54
KCkgKyAoci54KCkgLSBzcmNSZWN0LngoKSkgKiB3aWR0aFNjYWxlLAorICAgIHJldHVybiB7Cisg
ICAgICAgIGRlc3RSZWN0LngoKSArIChyLngoKSAtIHNyY1JlY3QueCgpKSAqIHdpZHRoU2NhbGUs
CiAgICAgICAgIGRlc3RSZWN0LnkoKSArIChyLnkoKSAtIHNyY1JlY3QueSgpKSAqIGhlaWdodFNj
YWxlLAotICAgICAgICByLndpZHRoKCkgKiB3aWR0aFNjYWxlLCByLmhlaWdodCgpICogaGVpZ2h0
U2NhbGUpOworICAgICAgICByLndpZHRoKCkgKiB3aWR0aFNjYWxlLAorICAgICAgICByLmhlaWdo
dCgpICogaGVpZ2h0U2NhbGUKKyAgICB9OwogfQogCiBGbG9hdFJlY3QgbGFyZ2VzdFJlY3RXaXRo
QXNwZWN0UmF0aW9JbnNpZGVSZWN0KGZsb2F0IGFzcGVjdFJhdGlvLCBjb25zdCBGbG9hdFJlY3Qm
IHNyY1JlY3QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9H
ZW9tZXRyeVV0aWxpdGllcy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR2Vv
bWV0cnlVdGlsaXRpZXMuaAppbmRleCBhYTVjNzZiZjE1MzkwOTZhYTEzM2Y3NDU5MmNlYzlkOGY3
NmU2NzNkLi4wZGRkNmMyZWE3MjAyNDNmMzAxNWZhZmU0ZjY4OGU0YmU1MDA0ZjI2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dlb21ldHJ5VXRpbGl0aWVz
LmgKQEAgLTQxLDcgKzQxLDEwIEBAIFdFQkNPUkVfRVhQT1JUIGJvb2wgZmluZEludGVyc2VjdGlv
bihjb25zdCBGbG9hdFBvaW50JiBwMSwgY29uc3QgRmxvYXRQb2ludCYgcDIsCiBJbnRSZWN0IHVu
aW9uUmVjdChjb25zdCBWZWN0b3I8SW50UmVjdD4mKTsKIFdFQkNPUkVfRVhQT1JUIEZsb2F0UmVj
dCB1bmlvblJlY3QoY29uc3QgVmVjdG9yPEZsb2F0UmVjdD4mKTsKIAotLy8gTWFwIHJlY3QgciBm
cm9tIHNyY1JlY3QgdG8gYW4gZXF1aXZhbGVudCByZWN0IGluIGRlc3RSZWN0LgorLy8gTWFwIHBv
aW50IGZyb20gc3JjUmVjdCB0byBhbiBlcXVpdmFsZW50IHBvaW50IGluIGRlc3RSZWN0LgorRmxv
YXRQb2ludCBtYXBQb2ludChGbG9hdFBvaW50LCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNv
bnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QpOworCisvLyBNYXAgcmVjdCBmcm9tIHNyY1JlY3QgdG8g
YW4gZXF1aXZhbGVudCByZWN0IGluIGRlc3RSZWN0LgogRmxvYXRSZWN0IG1hcFJlY3QoY29uc3Qg
RmxvYXRSZWN0JiwgY29uc3QgRmxvYXRSZWN0JiBzcmNSZWN0LCBjb25zdCBGbG9hdFJlY3QmIGRl
c3RSZWN0KTsKIAogV0VCQ09SRV9FWFBPUlQgRmxvYXRSZWN0IGxhcmdlc3RSZWN0V2l0aEFzcGVj
dFJhdGlvSW5zaWRlUmVjdChmbG9hdCBhc3BlY3RSYXRpbywgY29uc3QgRmxvYXRSZWN0Jik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0Rpc3Rh
bnRMaWdodFNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0Rpc3RhbnRMaWdodFNvdXJjZS5jcHAKaW5kZXggZjA1OTc5ZTZiNGQyNzczYThlNjU4ZTk4
YzZhOTJjNzliNjY2NTJmOC4uZTVmYjFmZjY2NWQzZWIwN2Y0OGVlMWQwMmJiZmZjYzZiMDQ0MWY4
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9E
aXN0YW50TGlnaHRTb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvRGlzdGFudExpZ2h0U291cmNlLmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKLXZvaWQgRGlzdGFudExpZ2h0U291cmNlOjppbml0UGFpbnRp
bmdEYXRhKFBhaW50aW5nRGF0YSYgcGFpbnRpbmdEYXRhKQordm9pZCBEaXN0YW50TGlnaHRTb3Vy
Y2U6OmluaXRQYWludGluZ0RhdGEoY29uc3QgRmlsdGVyRWZmZWN0JiwgUGFpbnRpbmdEYXRhJiBw
YWludGluZ0RhdGEpCiB7CiAgICAgZmxvYXQgYXppbXV0aCA9IGRlZzJyYWQobV9hemltdXRoKTsK
ICAgICBmbG9hdCBlbGV2YXRpb24gPSBkZWcycmFkKG1fZWxldmF0aW9uKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRGlzdGFudExpZ2h0U291
cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0Rpc3RhbnRM
aWdodFNvdXJjZS5oCmluZGV4IGMwMGU1MjQ4MDdiODM1ZTU1M2I1Nzc0NTQ2MTUyMzlkMGMxY2Qy
NTQuLmMxZTMwZWRlNzU5ODM3MjhhNjMyYmNjZmZiMDk5NzNhM2E0ZTcyZmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRGlzdGFudExpZ2h0U291
cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9EaXN0
YW50TGlnaHRTb3VyY2UuaApAQCAtNDEsNyArNDEsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBzZXRB
emltdXRoKGZsb2F0KSBvdmVycmlkZTsKICAgICBib29sIHNldEVsZXZhdGlvbihmbG9hdCkgb3Zl
cnJpZGU7CiAKLSAgICB2b2lkIGluaXRQYWludGluZ0RhdGEoUGFpbnRpbmdEYXRhJikgb3ZlcnJp
ZGU7CisgICAgdm9pZCBpbml0UGFpbnRpbmdEYXRhKGNvbnN0IEZpbHRlckVmZmVjdCYsIFBhaW50
aW5nRGF0YSYpIG92ZXJyaWRlOwogICAgIENvbXB1dGVkTGlnaHRpbmdEYXRhIGNvbXB1dGVQaXhl
bExpZ2h0aW5nRGF0YShjb25zdCBQYWludGluZ0RhdGEmLCBpbnQgeCwgaW50IHksIGZsb2F0IHop
IGNvbnN0IGZpbmFsOwogCiAgICAgV1RGOjpUZXh0U3RyZWFtJiBleHRlcm5hbFJlcHJlc2VudGF0
aW9uKFdURjo6VGV4dFN0cmVhbSYpIGNvbnN0IG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUxpZ2h0aW5nLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVMaWdodGluZy5jcHAKaW5kZXgg
MzVhMzE4ZWFjYzM0OGRlMmQwMmU5MDU2OWJlN2M3MGZlZWEyZWEyOC4uMDc3YjVjYWNhNzc1MmZj
MzVjM2M1NTk3NWIxN2E0ZWQxYWQxOTZiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUxpZ2h0aW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFTGlnaHRpbmcuY3BwCkBAIC00MDEsNyArNDAx
LDcgQEAgYm9vbCBGRUxpZ2h0aW5nOjpkcmF3TGlnaHRpbmcoVWludDhDbGFtcGVkQXJyYXkmIHBp
eGVscywgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KQogICAgIAogICAgIENvbG9yIGxpZ2h0Q29sb3Ig
PSAob3BlcmF0aW5nQ29sb3JTcGFjZSgpID09IENvbG9yU3BhY2VMaW5lYXJSR0IpID8gc1JHQlRv
TGluZWFyQ29sb3IobV9saWdodGluZ0NvbG9yKSA6IG1fbGlnaHRpbmdDb2xvcjsKICAgICBwYWlu
dGluZ0RhdGEuaW5pdGlhbExpZ2h0aW5nRGF0YS5jb2xvclZlY3RvciA9IEZsb2F0UG9pbnQzRChs
aWdodENvbG9yLnJlZCgpLCBsaWdodENvbG9yLmdyZWVuKCksIGxpZ2h0Q29sb3IuYmx1ZSgpKTsK
LSAgICBtX2xpZ2h0U291cmNlLT5pbml0UGFpbnRpbmdEYXRhKHBhaW50aW5nRGF0YSk7CisgICAg
bV9saWdodFNvdXJjZS0+aW5pdFBhaW50aW5nRGF0YSgqdGhpcywgcGFpbnRpbmdEYXRhKTsKIAog
ICAgIC8vIFRvcCBsZWZ0LgogICAgIGludCBvZmZzZXQgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJFZmZlY3QuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJFZmZlY3QuY3BwCmlu
ZGV4IDJiM2NlMjk3YTkyNTgwNzI1OGNjZmUzZTg2NWQzZGYzMTlmYTRlNjcuLjkzNTRiZTAzOGIz
MGM0ZTFlZDlhNzk4NTIwYWZmNjgyODU2NGZmOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyRWZmZWN0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlckVmZmVjdC5jcHAKQEAgLTI1
LDYgKzI1LDcgQEAKICNpbmNsdWRlICJGaWx0ZXJFZmZlY3QuaCIKIAogI2luY2x1ZGUgIkZpbHRl
ci5oIgorI2luY2x1ZGUgIkdlb21ldHJ5VXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiSW1hZ2VCdWZm
ZXIuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCiAjaW5jbHVkZSA8cnVudGltZS9KU0NJbmxpbmVz
Lmg+CkBAIC02Niw2ICs2NywxMyBAQCB2b2lkIEZpbHRlckVmZmVjdDo6Y2xpcEFic29sdXRlUGFp
bnRSZWN0KCkKICAgICAgICAgbV9hYnNvbHV0ZVBhaW50UmVjdC51bml0ZShlbmNsb3NpbmdJbnRS
ZWN0KG1fbWF4RWZmZWN0UmVjdCkpOwogfQogCitGbG9hdFBvaW50IEZpbHRlckVmZmVjdDo6bWFw
UG9pbnRGcm9tVXNlclNwYWNlVG9CdWZmZXIoRmxvYXRQb2ludCB1c2VyU3BhY2VQb2ludCkgY29u
c3QKK3sKKyAgICBGbG9hdFBvaW50IGFic29sdXRlUG9pbnQgPSBtYXBQb2ludCh1c2VyU3BhY2VQ
b2ludCwgbV9maWx0ZXJQcmltaXRpdmVTdWJyZWdpb24sIG1fYWJzb2x1dGVVbmNsaXBwZWRTdWJy
ZWdpb24pOworICAgIGFic29sdXRlUG9pbnQubW92ZUJ5KC1tX2Fic29sdXRlUGFpbnRSZWN0Lmxv
Y2F0aW9uKCkpOworICAgIHJldHVybiBhYnNvbHV0ZVBvaW50OworfQorCiBJbnRSZWN0IEZpbHRl
ckVmZmVjdDo6cmVxdWVzdGVkUmVnaW9uT2ZJbnB1dEltYWdlRGF0YShjb25zdCBJbnRSZWN0JiBl
ZmZlY3RSZWN0KSBjb25zdAogewogICAgIEFTU0VSVChoYXNSZXN1bHQoKSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlckVmZmVjdC5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJFZmZlY3Qu
aAppbmRleCA1NmYwODI5M2QzMzEzYzFkYzBlYTJmNzdlOTQ4NzBmZjkzMjhmN2RiLi42NDlmY2Jm
ZjA0NDAzNmJkMmM0NGFhYjAwMzBhMjk2YWJlYjE2MDFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlckVmZmVjdC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyRWZmZWN0LmgKQEAgLTEz
Niw2ICsxMzYsMTAgQEAgcHVibGljOgogCiAgICAgRmxvYXRSZWN0IGVmZmVjdEJvdW5kYXJpZXMo
KSBjb25zdCB7IHJldHVybiBtX2VmZmVjdEJvdW5kYXJpZXM7IH0KICAgICB2b2lkIHNldEVmZmVj
dEJvdW5kYXJpZXMoY29uc3QgRmxvYXRSZWN0JiBlZmZlY3RCb3VuZGFyaWVzKSB7IG1fZWZmZWN0
Qm91bmRhcmllcyA9IGVmZmVjdEJvdW5kYXJpZXM7IH0KKyAgICAKKyAgICB2b2lkIHNldFVuY2xp
cHBlZEFic29sdXRlU3VicmVnaW9uKGNvbnN0IEZsb2F0UmVjdCYgcikgeyBtX2Fic29sdXRlVW5j
bGlwcGVkU3VicmVnaW9uID0gcjsgfQorICAgIAorICAgIEZsb2F0UG9pbnQgbWFwUG9pbnRGcm9t
VXNlclNwYWNlVG9CdWZmZXIoRmxvYXRQb2ludCkgY29uc3Q7CiAKICAgICBGaWx0ZXImIGZpbHRl
cigpIHsgcmV0dXJuIG1fZmlsdGVyOyB9CiAgICAgY29uc3QgRmlsdGVyJiBmaWx0ZXIoKSBjb25z
dCB7IHJldHVybiBtX2ZpbHRlcjsgfQpAQCAtMjA4LDYgKzIxMiw5IEBAIHByaXZhdGU6CiAgICAg
Ly8geCwgeSwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgYWN0dWFsIFNWR0ZFKkVsZW1lbnQuIElz
IG5lZWRlZCB0byBkZXRlcm1pbmUgdGhlIHN1YnJlZ2lvbiBvZiB0aGUKICAgICAvLyBmaWx0ZXIg
cHJpbWl0aXZlIG9uIGEgbGF0ZXIgc3RlcC4KICAgICBGbG9hdFJlY3QgbV9lZmZlY3RCb3VuZGFy
aWVzOworICAgIAorICAgIC8vIGZpbHRlclByaW1pdGl2ZVN1YnJlZ2lvbiBtYXBwZWQgdG8gYWJz
b2x1dGUgY29vcmRpbmF0ZXMgYmVmb3JlIGNsaXBwaW5nLgorICAgIEZsb2F0UmVjdCBtX2Fic29s
dXRlVW5jbGlwcGVkU3VicmVnaW9uOwogCiAgICAgYm9vbCBtX2FscGhhSW1hZ2UgeyBmYWxzZSB9
OwogICAgIGJvb2wgbV9oYXNYIHsgZmFsc2UgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvTGlnaHRTb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvTGlnaHRTb3VyY2UuaAppbmRleCBjNDMyYTViNGI0
ZGIwMzBlZjRmMjgzYzNlNWEwY2Y0ZTJhNjAyODc2Li45NGQxOTUwMTM5ZDZkMjQzYTg2NjFlNWVh
NTVkMjM1YTczODlmNWQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9maWx0ZXJzL0xpZ2h0U291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9MaWdodFNvdXJjZS5oCkBAIC0zOCw2ICszOCw4IEBAIGVudW0gTGln
aHRUeXBlIHsKICAgICBMU19TUE9UCiB9OwogCitjbGFzcyBGaWx0ZXJFZmZlY3Q7CisKIGNsYXNz
IExpZ2h0U291cmNlIDogcHVibGljIFJlZkNvdW50ZWQ8TGlnaHRTb3VyY2U+IHsKIHB1YmxpYzoK
ICAgICBzdHJ1Y3QgQ29tcHV0ZWRMaWdodGluZ0RhdGEgewpAQCAtNjMsMTkgKzY1LDIzIEBAIHB1
YmxpYzoKICAgICBMaWdodFR5cGUgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZTsgfQogICAg
IHZpcnR1YWwgV1RGOjpUZXh0U3RyZWFtJiBleHRlcm5hbFJlcHJlc2VudGF0aW9uKFdURjo6VGV4
dFN0cmVhbSYpIGNvbnN0ID0gMDsKIAotICAgIHZpcnR1YWwgdm9pZCBpbml0UGFpbnRpbmdEYXRh
KFBhaW50aW5nRGF0YSYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgaW5pdFBhaW50aW5nRGF0YShj
b25zdCBGaWx0ZXJFZmZlY3QmLCBQYWludGluZ0RhdGEmKSA9IDA7CiAgICAgLy8geiBpcyBhIGZs
b2F0IG51bWJlciwgc2luY2UgaXQgaXMgdGhlIGFscGhhIHZhbHVlIHNjYWxlZCBieSBhIHVzZXIK
LSAgICAvLyBzcGVjaWZpZWQgInN1cmZhY2VTY2FsZSIgY29uc3RhbnQsIHdoaWNoIHR5cGUgaXMg
PG51bWJlcj4gaW4gdGhlIFNWRyBzdGFuZGFyZAorICAgIC8vIHNwZWNpZmllZCAic3VyZmFjZVNj
YWxlIiBjb25zdGFudCwgd2hpY2ggdHlwZSBpcyA8bnVtYmVyPiBpbiB0aGUgU1ZHIHN0YW5kYXJk
LgorICAgIC8vIHggYW5kIHkgYXJlIGluIHRoZSBjb29yZGluYXRlcyBvZiB0aGUgRmlsdGVyRWZm
ZWN0J3MgYnVmZmVyLgogICAgIHZpcnR1YWwgQ29tcHV0ZWRMaWdodGluZ0RhdGEgY29tcHV0ZVBp
eGVsTGlnaHRpbmdEYXRhKGNvbnN0IFBhaW50aW5nRGF0YSYsIGludCB4LCBpbnQgeSwgZmxvYXQg
eikgY29uc3QgPSAwOwogCiAgICAgdmlydHVhbCBib29sIHNldEF6aW11dGgoZmxvYXQpIHsgcmV0
dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29sIHNldEVsZXZhdGlvbihmbG9hdCkgeyByZXR1
cm4gZmFsc2U7IH0KKyAgICAKKyAgICAvLyBUaGVzZSBhcmUgaW4gdXNlciBzcGFjZSBjb29yZGlu
YXRlcy4KICAgICB2aXJ0dWFsIGJvb2wgc2V0WChmbG9hdCkgeyByZXR1cm4gZmFsc2U7IH0KICAg
ICB2aXJ0dWFsIGJvb2wgc2V0WShmbG9hdCkgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFs
IGJvb2wgc2V0WihmbG9hdCkgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIGJvb2wgc2V0
UG9pbnRzQXRYKGZsb2F0KSB7IHJldHVybiBmYWxzZTsgfQogICAgIHZpcnR1YWwgYm9vbCBzZXRQ
b2ludHNBdFkoZmxvYXQpIHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29sIHNldFBv
aW50c0F0WihmbG9hdCkgeyByZXR1cm4gZmFsc2U7IH0KKyAgICAKICAgICB2aXJ0dWFsIGJvb2wg
c2V0U3BlY3VsYXJFeHBvbmVudChmbG9hdCkgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFs
IGJvb2wgc2V0TGltaXRpbmdDb25lQW5nbGUoZmxvYXQpIHsgcmV0dXJuIGZhbHNlOyB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvUG9pbnRM
aWdodFNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L1BvaW50TGlnaHRTb3VyY2UuY3BwCmluZGV4IGIxMzEzZGI0ZWUwMzNmYjFkODNiMWQ1M2Q2NTRh
MjU3NWQxZTNhZjcuLjhlM2MxMTM1NWI4ODU1MWVkZDE3YmZmOWU0MDc4OTczZTA4MjAxNzcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvUG9pbnRM
aWdodFNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmls
dGVycy9Qb2ludExpZ2h0U291cmNlLmNwcApAQCAtMzUsMTYgKzM1LDIwIEBACiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAotdm9pZCBQb2ludExpZ2h0U291cmNlOjppbml0UGFpbnRpbmdEYXRhKFBh
aW50aW5nRGF0YSYpCit2b2lkIFBvaW50TGlnaHRTb3VyY2U6OmluaXRQYWludGluZ0RhdGEoY29u
c3QgRmlsdGVyRWZmZWN0JiBmaWx0ZXJFZmZlY3QsIFBhaW50aW5nRGF0YSYpCiB7CisgICAgbV9i
dWZmZXJQb3NpdGlvbi5zZXRYWShmaWx0ZXJFZmZlY3QubWFwUG9pbnRGcm9tVXNlclNwYWNlVG9C
dWZmZXIobV91c2VyU3BhY2VQb3NpdGlvbi54eSgpKSk7CisgICAgLy8gVG8gc2NhbGUgWiwgbWFw
IGEgcG9pbnQgb2Zmc2V0IGZyb20gbV91c2VyU3BhY2VQb3NpdGlvbiBpbiB0aGUgeCBkaXJlY3Rp
b24gYnkgei4KKyAgICBGbG9hdFBvaW50IG1hcHBlZFogPSBmaWx0ZXJFZmZlY3QubWFwUG9pbnRG
cm9tVXNlclNwYWNlVG9CdWZmZXIoeyBtX3VzZXJTcGFjZVBvc2l0aW9uLngoKSArIG1fdXNlclNw
YWNlUG9zaXRpb24ueigpLCBtX3VzZXJTcGFjZVBvc2l0aW9uLnkoKSB9KTsKKyAgICBtX2J1ZmZl
clBvc2l0aW9uLnNldFoobWFwcGVkWi54KCkgLSBtX2J1ZmZlclBvc2l0aW9uLngoKSk7CiB9CiAK
IExpZ2h0U291cmNlOjpDb21wdXRlZExpZ2h0aW5nRGF0YSBQb2ludExpZ2h0U291cmNlOjpjb21w
dXRlUGl4ZWxMaWdodGluZ0RhdGEoY29uc3QgUGFpbnRpbmdEYXRhJiBwYWludGluZ0RhdGEsIGlu
dCB4LCBpbnQgeSwgZmxvYXQgeikgY29uc3QKIHsKICAgICBGbG9hdFBvaW50M0QgbGlnaHRWZWN0
b3IgPSB7Ci0gICAgICAgIG1fcG9zaXRpb24ueCgpIC0geCwKLSAgICAgICAgbV9wb3NpdGlvbi55
KCkgLSB5LAotICAgICAgICBtX3Bvc2l0aW9uLnooKSAtIHoKKyAgICAgICAgbV9idWZmZXJQb3Np
dGlvbi54KCkgLSB4LAorICAgICAgICBtX2J1ZmZlclBvc2l0aW9uLnkoKSAtIHksCisgICAgICAg
IG1fYnVmZmVyUG9zaXRpb24ueigpIC0gegogICAgIH07CiAKICAgICByZXR1cm4geyBsaWdodFZl
Y3RvciwgcGFpbnRpbmdEYXRhLmluaXRpYWxMaWdodGluZ0RhdGEuY29sb3JWZWN0b3IsIGxpZ2h0
VmVjdG9yLmxlbmd0aCgpIH07CkBAIC01MiwyNSArNTYsMjUgQEAgTGlnaHRTb3VyY2U6OkNvbXB1
dGVkTGlnaHRpbmdEYXRhIFBvaW50TGlnaHRTb3VyY2U6OmNvbXB1dGVQaXhlbExpZ2h0aW5nRGF0
YShjb24KIAogYm9vbCBQb2ludExpZ2h0U291cmNlOjpzZXRYKGZsb2F0IHgpCiB7Ci0gICAgaWYg
KG1fcG9zaXRpb24ueCgpID09IHgpCisgICAgaWYgKG1fdXNlclNwYWNlUG9zaXRpb24ueCgpID09
IHgpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBtX3Bvc2l0aW9uLnNldFgoeCk7CisgICAg
bV91c2VyU3BhY2VQb3NpdGlvbi5zZXRYKHgpOwogICAgIHJldHVybiB0cnVlOwogfQogCiBib29s
IFBvaW50TGlnaHRTb3VyY2U6OnNldFkoZmxvYXQgeSkKIHsKLSAgICBpZiAobV9wb3NpdGlvbi55
KCkgPT0geSkKKyAgICBpZiAobV91c2VyU3BhY2VQb3NpdGlvbi55KCkgPT0geSkKICAgICAgICAg
cmV0dXJuIGZhbHNlOwotICAgIG1fcG9zaXRpb24uc2V0WSh5KTsKKyAgICBtX3VzZXJTcGFjZVBv
c2l0aW9uLnNldFkoeSk7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgUG9pbnRMaWdodFNv
dXJjZTo6c2V0WihmbG9hdCB6KQogewotICAgIGlmIChtX3Bvc2l0aW9uLnooKSA9PSB6KQorICAg
IGlmIChtX3VzZXJTcGFjZVBvc2l0aW9uLnooKSA9PSB6KQogICAgICAgICByZXR1cm4gZmFsc2U7
Ci0gICAgbV9wb3NpdGlvbi5zZXRaKHopOworICAgIG1fdXNlclNwYWNlUG9zaXRpb24uc2V0Wih6
KTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9Qb2ludExpZ2h0U291cmNlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1BvaW50TGlnaHRTb3VyY2UuaAppbmRleCBlZTcz
ZGQ2ZDIwYTZhYjFiOGQ0ODVhZTJlODJkNWQ1NjkzMmUzMDg5Li42N2EzYTBiZDM5YThhOWNjMTk1
NDM0OTg1OTZkNzExNWY0YmI5NWE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL1BvaW50TGlnaHRTb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1BvaW50TGlnaHRTb3VyY2UuaApAQCAtMzQsMTIg
KzM0LDEyIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUG9pbnRMaWdo
dFNvdXJjZShwb3NpdGlvbikpOwogICAgIH0KIAotICAgIGNvbnN0IEZsb2F0UG9pbnQzRCYgcG9z
aXRpb24oKSBjb25zdCB7IHJldHVybiBtX3Bvc2l0aW9uOyB9CisgICAgY29uc3QgRmxvYXRQb2lu
dDNEJiBwb3NpdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fdXNlclNwYWNlUG9zaXRpb247IH0KICAg
ICBib29sIHNldFgoZmxvYXQpIG92ZXJyaWRlOwogICAgIGJvb2wgc2V0WShmbG9hdCkgb3ZlcnJp
ZGU7CiAgICAgYm9vbCBzZXRaKGZsb2F0KSBvdmVycmlkZTsKIAotICAgIHZvaWQgaW5pdFBhaW50
aW5nRGF0YShQYWludGluZ0RhdGEmKSBvdmVycmlkZTsKKyAgICB2b2lkIGluaXRQYWludGluZ0Rh
dGEoY29uc3QgRmlsdGVyRWZmZWN0JiwgUGFpbnRpbmdEYXRhJikgb3ZlcnJpZGU7CiAgICAgQ29t
cHV0ZWRMaWdodGluZ0RhdGEgY29tcHV0ZVBpeGVsTGlnaHRpbmdEYXRhKGNvbnN0IFBhaW50aW5n
RGF0YSYsIGludCB4LCBpbnQgeSwgZmxvYXQgeikgY29uc3QgZmluYWw7CiAKICAgICBXVEY6OlRl
eHRTdHJlYW0mIGV4dGVybmFsUmVwcmVzZW50YXRpb24oV1RGOjpUZXh0U3RyZWFtJikgY29uc3Qg
b3ZlcnJpZGU7CkBAIC00NywxMSArNDcsMTIgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBQb2lu
dExpZ2h0U291cmNlKGNvbnN0IEZsb2F0UG9pbnQzRCYgcG9zaXRpb24pCiAgICAgICAgIDogTGln
aHRTb3VyY2UoTFNfUE9JTlQpCi0gICAgICAgICwgbV9wb3NpdGlvbihwb3NpdGlvbikKKyAgICAg
ICAgLCBtX3VzZXJTcGFjZVBvc2l0aW9uKHBvc2l0aW9uKQogICAgIHsKICAgICB9CiAKLSAgICBG
bG9hdFBvaW50M0QgbV9wb3NpdGlvbjsKKyAgICBGbG9hdFBvaW50M0QgbV91c2VyU3BhY2VQb3Np
dGlvbjsKKyAgICBGbG9hdFBvaW50M0QgbV9idWZmZXJQb3NpdGlvbjsKIH07CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvU3BvdExpZ2h0U291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvU3BvdExpZ2h0U291cmNlLmNwcAppbmRleCBmM2Q4NTkxNDYyY2Yw
OTRiNWJhN2M5MWU3N2M5MjNhMDAzYmI0ZDBkLi44NmExMWY5YzM0MzA1ODNhYmIxNzNhYzQ5MzZi
YWEzMDI4NzdkNWY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL1Nwb3RMaWdodFNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9TcG90TGlnaHRTb3VyY2UuY3BwCkBAIC00MCw5ICs0MCwxNCBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBhY2NvcmRpbmcgdG8gdGhlIFNWRyAxLjEgU0UgbGln
aHQgcmVncmVzc2lvbiB0ZXN0cwogc3RhdGljIGNvbnN0IGZsb2F0IGFudGlBbGlhc1RyZXNob2xk
ID0gMC4wMTZmOwogCi12b2lkIFNwb3RMaWdodFNvdXJjZTo6aW5pdFBhaW50aW5nRGF0YShQYWlu
dGluZ0RhdGEmIHBhaW50aW5nRGF0YSkKK3ZvaWQgU3BvdExpZ2h0U291cmNlOjppbml0UGFpbnRp
bmdEYXRhKGNvbnN0IEZpbHRlckVmZmVjdCYgZmlsdGVyRWZmZWN0LCBQYWludGluZ0RhdGEmIHBh
aW50aW5nRGF0YSkKIHsKLSAgICBwYWludGluZ0RhdGEuZGlyZWN0aW9uVmVjdG9yID0gbV9kaXJl
Y3Rpb24gLSBtX3Bvc2l0aW9uOworICAgIG1fYnVmZmVyUG9zaXRpb24uc2V0WFkoZmlsdGVyRWZm
ZWN0Lm1hcFBvaW50RnJvbVVzZXJTcGFjZVRvQnVmZmVyKG1fdXNlclNwYWNlUG9zaXRpb24ueHko
KSkpOworICAgIC8vIFRvIHNjYWxlIFosIG1hcCBhIHBvaW50IG9mZnNldCBmcm9tIG1fdXNlclNw
YWNlUG9zaXRpb24gaW4gdGhlIHggZGlyZWN0aW9uIGJ5IHouCisgICAgRmxvYXRQb2ludCBtYXBw
ZWRaID0gZmlsdGVyRWZmZWN0Lm1hcFBvaW50RnJvbVVzZXJTcGFjZVRvQnVmZmVyKHsgbV91c2Vy
U3BhY2VQb3NpdGlvbi54KCkgKyBtX3VzZXJTcGFjZVBvc2l0aW9uLnooKSwgbV91c2VyU3BhY2VQ
b3NpdGlvbi55KCkgfSk7CisgICAgbV9idWZmZXJQb3NpdGlvbi5zZXRaKG1hcHBlZFoueCgpIC0g
bV9idWZmZXJQb3NpdGlvbi54KCkpOworICAgIAorICAgIHBhaW50aW5nRGF0YS5kaXJlY3Rpb25W
ZWN0b3IgPSBtX3VzZXJTcGFjZVBvaW50c0F0IC0gbV91c2VyU3BhY2VQb3NpdGlvbjsKICAgICBw
YWludGluZ0RhdGEuZGlyZWN0aW9uVmVjdG9yLm5vcm1hbGl6ZSgpOwogCiAgICAgaWYgKCFtX2xp
bWl0aW5nQ29uZUFuZ2xlKSB7CkBAIC03MCw5ICs3NSw5IEBAIHZvaWQgU3BvdExpZ2h0U291cmNl
Ojppbml0UGFpbnRpbmdEYXRhKFBhaW50aW5nRGF0YSYgcGFpbnRpbmdEYXRhKQogTGlnaHRTb3Vy
Y2U6OkNvbXB1dGVkTGlnaHRpbmdEYXRhIFNwb3RMaWdodFNvdXJjZTo6Y29tcHV0ZVBpeGVsTGln
aHRpbmdEYXRhKGNvbnN0IFBhaW50aW5nRGF0YSYgcGFpbnRpbmdEYXRhLCBpbnQgeCwgaW50IHks
IGZsb2F0IHopIGNvbnN0CiB7CiAgICAgRmxvYXRQb2ludDNEIGxpZ2h0VmVjdG9yID0gewotICAg
ICAgICBtX3Bvc2l0aW9uLngoKSAtIHgsCi0gICAgICAgIG1fcG9zaXRpb24ueSgpIC0geSwKLSAg
ICAgICAgbV9wb3NpdGlvbi56KCkgLSB6CisgICAgICAgIG1fYnVmZmVyUG9zaXRpb24ueCgpIC0g
eCwKKyAgICAgICAgbV9idWZmZXJQb3NpdGlvbi55KCkgLSB5LAorICAgICAgICBtX2J1ZmZlclBv
c2l0aW9uLnooKSAtIHoKICAgICB9OwogICAgIGZsb2F0IGxpZ2h0VmVjdG9yTGVuZ3RoID0gbGln
aHRWZWN0b3IubGVuZ3RoKCk7CiAKQEAgLTExMSw0OSArMTE2LDQ5IEBAIExpZ2h0U291cmNlOjpD
b21wdXRlZExpZ2h0aW5nRGF0YSBTcG90TGlnaHRTb3VyY2U6OmNvbXB1dGVQaXhlbExpZ2h0aW5n
RGF0YShjb25zCiAKIGJvb2wgU3BvdExpZ2h0U291cmNlOjpzZXRYKGZsb2F0IHgpCiB7Ci0gICAg
aWYgKG1fcG9zaXRpb24ueCgpID09IHgpCisgICAgaWYgKG1fdXNlclNwYWNlUG9zaXRpb24ueCgp
ID09IHgpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBtX3Bvc2l0aW9uLnNldFgoeCk7Cisg
ICAgbV91c2VyU3BhY2VQb3NpdGlvbi5zZXRYKHgpOwogICAgIHJldHVybiB0cnVlOwogfQogCiBi
b29sIFNwb3RMaWdodFNvdXJjZTo6c2V0WShmbG9hdCB5KQogewotICAgIGlmIChtX3Bvc2l0aW9u
LnkoKSA9PSB5KQorICAgIGlmIChtX3VzZXJTcGFjZVBvc2l0aW9uLnkoKSA9PSB5KQogICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0gICAgbV9wb3NpdGlvbi5zZXRZKHkpOworICAgIG1fdXNlclNwYWNl
UG9zaXRpb24uc2V0WSh5KTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAogYm9vbCBTcG90TGlnaHRT
b3VyY2U6OnNldFooZmxvYXQgeikKIHsKLSAgICBpZiAobV9wb3NpdGlvbi56KCkgPT0geikKKyAg
ICBpZiAobV91c2VyU3BhY2VQb3NpdGlvbi56KCkgPT0geikKICAgICAgICAgcmV0dXJuIGZhbHNl
OwotICAgIG1fcG9zaXRpb24uc2V0Wih6KTsKKyAgICBtX3VzZXJTcGFjZVBvc2l0aW9uLnNldFoo
eik7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgU3BvdExpZ2h0U291cmNlOjpzZXRQb2lu
dHNBdFgoZmxvYXQgcG9pbnRzQXRYKQogewotICAgIGlmIChtX2RpcmVjdGlvbi54KCkgPT0gcG9p
bnRzQXRYKQorICAgIGlmIChtX3VzZXJTcGFjZVBvaW50c0F0LngoKSA9PSBwb2ludHNBdFgpCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBtX2RpcmVjdGlvbi5zZXRYKHBvaW50c0F0WCk7Cisg
ICAgbV91c2VyU3BhY2VQb2ludHNBdC5zZXRYKHBvaW50c0F0WCk7CiAgICAgcmV0dXJuIHRydWU7
CiB9CiAKIGJvb2wgU3BvdExpZ2h0U291cmNlOjpzZXRQb2ludHNBdFkoZmxvYXQgcG9pbnRzQXRZ
KQogewotICAgIGlmIChtX2RpcmVjdGlvbi55KCkgPT0gcG9pbnRzQXRZKQorICAgIGlmIChtX3Vz
ZXJTcGFjZVBvaW50c0F0LnkoKSA9PSBwb2ludHNBdFkpCiAgICAgICAgIHJldHVybiBmYWxzZTsK
LSAgICBtX2RpcmVjdGlvbi5zZXRZKHBvaW50c0F0WSk7CisgICAgbV91c2VyU3BhY2VQb2ludHNB
dC5zZXRZKHBvaW50c0F0WSk7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgU3BvdExpZ2h0
U291cmNlOjpzZXRQb2ludHNBdFooZmxvYXQgcG9pbnRzQXRaKQogewotICAgIGlmIChtX2RpcmVj
dGlvbi56KCkgPT0gcG9pbnRzQXRaKQorICAgIGlmIChtX3VzZXJTcGFjZVBvaW50c0F0LnooKSA9
PSBwb2ludHNBdFopCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBtX2RpcmVjdGlvbi5zZXRa
KHBvaW50c0F0Wik7CisgICAgbV91c2VyU3BhY2VQb2ludHNBdC5zZXRaKHBvaW50c0F0Wik7CiAg
ICAgcmV0dXJuIHRydWU7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvU3BvdExpZ2h0U291cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1Nwb3RMaWdodFNvdXJjZS5oCmluZGV4IDQxOTkxYWY3ZmI5
ODlhOTZmN2Q5MzU5NTYyMTA1Yzg2Nzg0ODcyNTUuLjM1MTUxNjM1MDc3ZWVmMGU3M2MyNmFlNDQy
YTVlYTUzNGZkMWYzYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvU3BvdExpZ2h0U291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9TcG90TGlnaHRTb3VyY2UuaApAQCAtMzUsOCArMzUsOCBAQCBw
dWJsaWM6CiAgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFNwb3RMaWdodFNvdXJjZShwb3Np
dGlvbiwgZGlyZWN0aW9uLCBzcGVjdWxhckV4cG9uZW50LCBsaW1pdGluZ0NvbmVBbmdsZSkpOwog
ICAgIH0KIAotICAgIGNvbnN0IEZsb2F0UG9pbnQzRCYgcG9zaXRpb24oKSBjb25zdCB7IHJldHVy
biBtX3Bvc2l0aW9uOyB9Ci0gICAgY29uc3QgRmxvYXRQb2ludDNEJiBkaXJlY3Rpb24oKSBjb25z
dCB7IHJldHVybiBtX2RpcmVjdGlvbjsgfQorICAgIGNvbnN0IEZsb2F0UG9pbnQzRCYgcG9zaXRp
b24oKSBjb25zdCB7IHJldHVybiBtX3VzZXJTcGFjZVBvc2l0aW9uOyB9CisgICAgY29uc3QgRmxv
YXRQb2ludDNEJiBkaXJlY3Rpb24oKSBjb25zdCB7IHJldHVybiBtX3VzZXJTcGFjZVBvaW50c0F0
OyB9CiAgICAgZmxvYXQgc3BlY3VsYXJFeHBvbmVudCgpIGNvbnN0IHsgcmV0dXJuIG1fc3BlY3Vs
YXJFeHBvbmVudDsgfQogICAgIGZsb2F0IGxpbWl0aW5nQ29uZUFuZ2xlKCkgY29uc3QgeyByZXR1
cm4gbV9saW1pdGluZ0NvbmVBbmdsZTsgfQogCkBAIC01MCwyNCArNTAsMjUgQEAgcHVibGljOgog
ICAgIGJvb2wgc2V0U3BlY3VsYXJFeHBvbmVudChmbG9hdCkgb3ZlcnJpZGU7CiAgICAgYm9vbCBz
ZXRMaW1pdGluZ0NvbmVBbmdsZShmbG9hdCkgb3ZlcnJpZGU7CiAKLSAgICB2b2lkIGluaXRQYWlu
dGluZ0RhdGEoUGFpbnRpbmdEYXRhJikgb3ZlcnJpZGU7CisgICAgdm9pZCBpbml0UGFpbnRpbmdE
YXRhKGNvbnN0IEZpbHRlckVmZmVjdCYsIFBhaW50aW5nRGF0YSYpIG92ZXJyaWRlOwogICAgIENv
bXB1dGVkTGlnaHRpbmdEYXRhIGNvbXB1dGVQaXhlbExpZ2h0aW5nRGF0YShjb25zdCBQYWludGlu
Z0RhdGEmLCBpbnQgeCwgaW50IHksIGZsb2F0IHopIGNvbnN0IGZpbmFsOwogCiAgICAgV1RGOjpU
ZXh0U3RyZWFtJiBleHRlcm5hbFJlcHJlc2VudGF0aW9uKFdURjo6VGV4dFN0cmVhbSYpIGNvbnN0
IG92ZXJyaWRlOwogCiBwcml2YXRlOgotICAgIFNwb3RMaWdodFNvdXJjZShjb25zdCBGbG9hdFBv
aW50M0QmIHBvc2l0aW9uLCBjb25zdCBGbG9hdFBvaW50M0QmIGRpcmVjdGlvbiwKLSAgICAgICAg
ZmxvYXQgc3BlY3VsYXJFeHBvbmVudCwgZmxvYXQgbGltaXRpbmdDb25lQW5nbGUpCisgICAgU3Bv
dExpZ2h0U291cmNlKGNvbnN0IEZsb2F0UG9pbnQzRCYgcG9zaXRpb24sIGNvbnN0IEZsb2F0UG9p
bnQzRCYgZGlyZWN0aW9uLCBmbG9hdCBzcGVjdWxhckV4cG9uZW50LCBmbG9hdCBsaW1pdGluZ0Nv
bmVBbmdsZSkKICAgICAgICAgOiBMaWdodFNvdXJjZShMU19TUE9UKQotICAgICAgICAsIG1fcG9z
aXRpb24ocG9zaXRpb24pCi0gICAgICAgICwgbV9kaXJlY3Rpb24oZGlyZWN0aW9uKQorICAgICAg
ICAsIG1fdXNlclNwYWNlUG9zaXRpb24ocG9zaXRpb24pCisgICAgICAgICwgbV91c2VyU3BhY2VQ
b2ludHNBdChkaXJlY3Rpb24pCiAgICAgICAgICwgbV9zcGVjdWxhckV4cG9uZW50KHNwZWN1bGFy
RXhwb25lbnQpCiAgICAgICAgICwgbV9saW1pdGluZ0NvbmVBbmdsZShsaW1pdGluZ0NvbmVBbmds
ZSkKICAgICB7CiAgICAgfQogCi0gICAgRmxvYXRQb2ludDNEIG1fcG9zaXRpb247Ci0gICAgRmxv
YXRQb2ludDNEIG1fZGlyZWN0aW9uOworICAgIEZsb2F0UG9pbnQzRCBtX3VzZXJTcGFjZVBvc2l0
aW9uOworICAgIEZsb2F0UG9pbnQzRCBtX3VzZXJTcGFjZVBvaW50c0F0OworCisgICAgRmxvYXRQ
b2ludDNEIG1fYnVmZmVyUG9zaXRpb247CiAKICAgICBmbG9hdCBtX3NwZWN1bGFyRXhwb25lbnQ7
CiAgICAgZmxvYXQgbV9saW1pdGluZ0NvbmVBbmdsZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHUmVzb3VyY2VGaWx0ZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdSZXNvdXJjZUZpbHRlci5jcHAKaW5kZXggMWEx
N2Y0MWQxYWI2NjUyMjQxMWU3YTU2MGQ5ZjIyZGY4ZTc4YzQ1NC4uYjUzNGY3ZmY4OWQ2NDQzM2Uy
ZGI4ZTZjNjNhNjU1MTY4ZTI0ZTAyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N2Zy9SZW5kZXJTVkdSZXNvdXJjZUZpbHRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdSZXNvdXJjZUZpbHRlci5jcHAKQEAgLTk4LDYgKzk4LDcg
QEAgc3RkOjp1bmlxdWVfcHRyPFNWR0ZpbHRlckJ1aWxkZXI+IFJlbmRlclNWR1Jlc291cmNlRmls
dGVyOjpidWlsZFByaW1pdGl2ZXMoU1ZHRmkKICAgICAgICAgYnVpbGRlci0+YXBwZW5kRWZmZWN0
VG9FZmZlY3RSZWZlcmVuY2VzKGVmZmVjdC5jb3B5UmVmKCksIGVsZW1lbnQucmVuZGVyZXIoKSk7
CiAgICAgICAgIGVsZW1lbnQuc2V0U3RhbmRhcmRBdHRyaWJ1dGVzKGVmZmVjdC5nZXQoKSk7CiAg
ICAgICAgIGVmZmVjdC0+c2V0RWZmZWN0Qm91bmRhcmllcyhTVkdMZW5ndGhDb250ZXh0OjpyZXNv
bHZlUmVjdGFuZ2xlPFNWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcz4oJmVsZW1l
bnQsIGZpbHRlckVsZW1lbnQoKS5wcmltaXRpdmVVbml0cygpLCB0YXJnZXRCb3VuZGluZ0JveCkp
OworCiAgICAgICAgIGlmIChlbGVtZW50LnJlbmRlcmVyKCkpCiAgICAgICAgICAgICBlZmZlY3Qt
PnNldE9wZXJhdGluZ0NvbG9yU3BhY2UoZWxlbWVudC5yZW5kZXJlcigpLT5zdHlsZSgpLnN2Z1N0
eWxlKCkuY29sb3JJbnRlcnBvbGF0aW9uRmlsdGVycygpID09IENJX0xJTkVBUlJHQiA/IENvbG9y
U3BhY2VMaW5lYXJSR0IgOiBDb2xvclNwYWNlU1JHQik7CiAgICAgICAgIGJ1aWxkZXItPmFkZChl
bGVtZW50LnJlc3VsdCgpLCBXVEZNb3ZlKGVmZmVjdCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdSZXNvdXJjZUZpbHRlclByaW1pdGl2ZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1Jlc291cmNlRmlsdGVyUHJp
bWl0aXZlLmNwcAppbmRleCAwZTYyYjc5MTkyYzAwNmZlY2Q5NDJiM2E3M2FiMGUzNmRiNGQ5ZDAz
Li5jNWI5MDQxMDFkYTFjMDNjN2Q4YTYwY2VlMDQzMjY3MDYyZjAxNDZmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1Jlc291cmNlRmlsdGVyUHJpbWl0
aXZlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1Jlc291
cmNlRmlsdGVyUHJpbWl0aXZlLmNwcApAQCAtMTA0LDE0ICsxMDQsMTcgQEAgRmxvYXRSZWN0IFJl
bmRlclNWR1Jlc291cmNlRmlsdGVyUHJpbWl0aXZlOjpkZXRlcm1pbmVGaWx0ZXJQcmltaXRpdmVT
dWJyZWdpb24oRmkKIAogICAgIEZsb2F0UmVjdCBhYnNvbHV0ZVN1YnJlZ2lvbiA9IGZpbHRlci5h
YnNvbHV0ZVRyYW5zZm9ybSgpLm1hcFJlY3Qoc3VicmVnaW9uKTsKICAgICBGbG9hdFNpemUgZmls
dGVyUmVzb2x1dGlvbiA9IGZpbHRlci5maWx0ZXJSZXNvbHV0aW9uKCk7Ci0gICAgYWJzb2x1dGVT
dWJyZWdpb24uc2NhbGUoZmlsdGVyUmVzb2x1dGlvbi53aWR0aCgpLCBmaWx0ZXJSZXNvbHV0aW9u
LmhlaWdodCgpKTsKKyAgICBhYnNvbHV0ZVN1YnJlZ2lvbi5zY2FsZShmaWx0ZXJSZXNvbHV0aW9u
KTsKKyAgICAvLyBTYXZlIHRoaXMgYmVmb3JlIGNsaXBwaW5nIHNvIHdlIGNhbiB1c2UgaXQgdG8g
bWFwIGxpZ2h0aW5nIHBvaW50cyBmcm9tIHVzZXIgc3BhY2UgdG8gYnVmZmVyIGNvb3JkaW5hdGVz
LgorICAgIGVmZmVjdC5zZXRVbmNsaXBwZWRBYnNvbHV0ZVN1YnJlZ2lvbihhYnNvbHV0ZVN1YnJl
Z2lvbik7CiAKICAgICAvLyBDbGlwIGV2ZXJ5IGZpbHRlciBlZmZlY3QgdG8gdGhlIGZpbHRlciBy
ZWdpb24uCiAgICAgRmxvYXRSZWN0IGFic29sdXRlU2NhbGVkRmlsdGVyUmVnaW9uID0gZmlsdGVy
LmZpbHRlclJlZ2lvbigpOwotICAgIGFic29sdXRlU2NhbGVkRmlsdGVyUmVnaW9uLnNjYWxlKGZp
bHRlclJlc29sdXRpb24ud2lkdGgoKSwgZmlsdGVyUmVzb2x1dGlvbi5oZWlnaHQoKSk7CisgICAg
YWJzb2x1dGVTY2FsZWRGaWx0ZXJSZWdpb24uc2NhbGUoZmlsdGVyUmVzb2x1dGlvbik7CiAgICAg
YWJzb2x1dGVTdWJyZWdpb24uaW50ZXJzZWN0KGFic29sdXRlU2NhbGVkRmlsdGVyUmVnaW9uKTsK
IAogICAgIGVmZmVjdC5zZXRNYXhFZmZlY3RSZWN0KGFic29sdXRlU3VicmVnaW9uKTsKKwogICAg
IHJldHVybiBzdWJyZWdpb247CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA0ZmZiNzk4MGFjMjE2MjU1OTI2NTE0ODcz
Mzc0MGQ1NzU2ZWM0MGY3Li4xMTM5OTM1YWQ2MTljYTNkM2I2OTk4ZDQ1NGI2MTYxZDJiOTRmOTli
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTctMTItMzEgIFNpbW9uIEZyYXNlciAgPHNpbW9u
LmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgU1ZHIGxpZ2h0aW5nIGZpbHRlciBsaWdodHMg
YXJlIGluIHRoZSB3cm9uZyBjb29yZGluYXRlIHN5c3RlbQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxMTQ3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdmcvZmlsdGVycy9mZVBvaW50TGlnaHQtY29v
cmRpbmF0ZXMtZXhwZWN0ZWQuc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvZmlsdGVycy9mZVBv
aW50TGlnaHQtY29vcmRpbmF0ZXMuc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvZmlsdGVycy9m
ZVNwb3RMaWdodC1jb29yZGluYXRlcy1leHBlY3RlZC5zdmc6IEFkZGVkLgorICAgICAgICAqIHN2
Zy9maWx0ZXJzL2ZlU3BvdExpZ2h0LWNvb3JkaW5hdGVzLnN2ZzogQWRkZWQuCisgICAgICAgICog
c3ZnL2ZpbHRlcnMvaGlkcGkvZmVQb2ludExpZ2h0LWNvb3JkaW5hdGVzLWV4cGVjdGVkLnN2Zzog
QWRkZWQuCisgICAgICAgICogc3ZnL2ZpbHRlcnMvaGlkcGkvZmVQb2ludExpZ2h0LWNvb3JkaW5h
dGVzLnN2ZzogQWRkZWQuCisgICAgICAgICogc3ZnL2ZpbHRlcnMvaGlkcGkvZmVTcG90TGlnaHQt
Y29vcmRpbmF0ZXMtZXhwZWN0ZWQuc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvZmlsdGVycy9o
aWRwaS9mZVNwb3RMaWdodC1jb29yZGluYXRlcy5zdmc6IEFkZGVkLgorCiAyMDE3LTEyLTMwICBT
aW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJ
T04gKHIyMjUxMjIpOiBmZVBvaW50TGlnaHRzIGRvbid0IHdvcmsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3N2Zy9maWx0ZXJzL2ZlUG9pbnRMaWdodC1jb29yZGluYXRlcy1leHBlY3RlZC5zdmcg
Yi9MYXlvdXRUZXN0cy9zdmcvZmlsdGVycy9mZVBvaW50TGlnaHQtY29vcmRpbmF0ZXMtZXhwZWN0
ZWQuc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmFkY2I0Nzc2Y2M3MzY4MTZmMDY4ZmIyMWFkZTQ5OTlhYTEwYTBm
MmUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcvZmlsdGVycy9mZVBvaW50TGln
aHQtY29vcmRpbmF0ZXMtZXhwZWN0ZWQuc3ZnCkBAIC0wLDAgKzEsMTMgQEAKKworPHN2ZyB3aWR0
aD0iNTAwcHgiIGhlaWdodD0iNjEwcHgiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2
ZyI+Cis8ZGVmcz4KKyAgICA8ZmlsdGVyIGlkPSJmaWx0ZXIiIGZpbHRlclVuaXRzPSJvYmplY3RC
b3VuZGluZ0JveCI+CisgICAgICAgIDxmZUZsb29kIHg9Ii0xMjAiIHk9Ijg1Ii8+CisgICAgPC9m
aWx0ZXI+Cis8L2RlZnM+Cis8cmVjdCB4PSIxMTAiIHk9IjE1MCIgd2lkdGg9IjQwMCIgaGVpZ2h0
PSIzMjAiIGZpbGw9Im5vbmUiIGZpbHRlcj0idXJsKCNmaWx0ZXIpIi8+Cis8Y2lyY2xlIGN4PSIy
NTAiIGN5PSIyMDAiIHI9IjgwIiBmaWxsPSJyZ2IoMCwgMjU1LCAwKSIvPgorPGNpcmNsZSBjeD0i
MjUwIiBjeT0iMjAwIiByPSI4NSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJncmF5IiBzdHJva2Utd2lk
dGg9IjIwIi8+Cis8cmVjdCB4PSIzNTUiIHk9IjQ2NSIgd2lkdGg9IjEwIiBoZWlnaHQ9IjEwIiBm
aWxsPSJncmF5Ii8+CisKKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2ZpbHRl
cnMvZmVQb2ludExpZ2h0LWNvb3JkaW5hdGVzLnN2ZyBiL0xheW91dFRlc3RzL3N2Zy9maWx0ZXJz
L2ZlUG9pbnRMaWdodC1jb29yZGluYXRlcy5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWMzYWQwMjA4NTBmYjhh
NTczNjU2MTYyNzlmM2FjZDgzYzNlMzM5ZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L3N2Zy9maWx0ZXJzL2ZlUG9pbnRMaWdodC1jb29yZGluYXRlcy5zdmcKQEAgLTAsMCArMSwxOCBA
QAorPHN2ZyB3aWR0aD0iNTAwcHgiIGhlaWdodD0iNjEwcHgiIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8yMDAwL3N2ZyI+Cis8ZGVmcz4KKyAgICA8ZmlsdGVyIGlkPSJmaWx0ZXIiIGZpbHRlclVu
aXRzPSJvYmplY3RCb3VuZGluZ0JveCI+CisgICAgICAgIDxmZUZsb29kLz4KKyAgICAgICAgPGZl
RGlmZnVzZUxpZ2h0aW5nIGxpZ2h0aW5nLWNvbG9yPSJyZ2IoMCwgMjU1LCAwKSIgeD0iLTEyMCIg
eT0iODUiPgorICAgICAgICAgICAgPGZlUG9pbnRMaWdodCB4PSIyNTAiIHk9IjIwMCIgej0iNTAi
Lz4KKyAgICAgICAgPC9mZURpZmZ1c2VMaWdodGluZz4KKyAgICAgICAgPGZlQ29tcG9uZW50VHJh
bnNmZXI+CisgICAgICAgICAgICA8ZmVGdW5jRyB0eXBlPSJkaXNjcmV0ZSIgdGFibGVWYWx1ZXM9
IjAgMSIvPgorICAgICAgICA8L2ZlQ29tcG9uZW50VHJhbnNmZXI+CisgICAgPC9maWx0ZXI+Cis8
L2RlZnM+Cis8cmVjdCB4PSIxMTAiIHk9IjE1MCIgd2lkdGg9IjQwMCIgaGVpZ2h0PSIzMjAiIGZp
bGw9Im5vbmUiIGZpbHRlcj0idXJsKCNmaWx0ZXIpIi8+Cis8IS0tIE1hc2sgb2ZmIHNsaWdodCBk
aWZmZXJlbmNlcyBpbiBwb2ludCBsaWdodCByYWRpdXMgLS0+Cis8Y2lyY2xlIGN4PSIyNTAiIGN5
PSIyMDAiIHI9Ijg1IiBmaWxsPSJub25lIiBzdHJva2U9ImdyYXkiIHN0cm9rZS13aWR0aD0iMjAi
Lz4KKzwhLS0gTWFzayBvZmYgYm90dG9tIHJpZ2h0IGNvcm5lciBvZiBsaWdodGluZywgd2hpY2gg
c2VlbXMgdG8gaGF2ZSBhIGJhZCB2YWx1ZSAtLT4KKzxyZWN0IHg9IjM1NSIgeT0iNDY1IiB3aWR0
aD0iMTAiIGhlaWdodD0iMTAiIGZpbGw9ImdyYXkiLz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvc3ZnL2ZpbHRlcnMvZmVTcG90TGlnaHQtY29vcmRpbmF0ZXMtZXhwZWN0ZWQuc3Zn
IGIvTGF5b3V0VGVzdHMvc3ZnL2ZpbHRlcnMvZmVTcG90TGlnaHQtY29vcmRpbmF0ZXMtZXhwZWN0
ZWQuc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmM0MTkxMzg2NWU0NjFhNDBjOTczZmI2N2IwODk0NjFmZWMzN2E0
MTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcvZmlsdGVycy9mZVNwb3RMaWdo
dC1jb29yZGluYXRlcy1leHBlY3RlZC5zdmcKQEAgLTAsMCArMSwxMCBAQAorPHN2ZyB3aWR0aD0i
NTAwcHgiIGhlaWdodD0iNjEwcHgiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+
Cis8ZGVmcz4KKyAgICA8ZmlsdGVyIGlkPSJmaWx0ZXIiIGZpbHRlclVuaXRzPSJvYmplY3RCb3Vu
ZGluZ0JveCI+CisgICAgICAgIDxmZUZsb29kIHg9Ii0xMjAiIHk9Ijg1Ii8+CisgICAgPC9maWx0
ZXI+Cis8L2RlZnM+Cis8cmVjdCB4PSIxMTAiIHk9IjE1MCIgd2lkdGg9IjQ1MCIgaGVpZ2h0PSIz
MjAiIGZpbGw9Im5vbmUiIGZpbHRlcj0idXJsKCNmaWx0ZXIpIi8+Cis8ZWxsaXBzZSBjeD0iMjIw
IiBjeT0iMjcwIiByeD0iOTUiIHJ5PSI1NSIgZmlsbD0icmdiKDAsIDI1NSwgMCkiIHN0eWxlPSJ0
cmFuc2Zvcm06IHJvdGF0ZSg1MGRlZyk7IHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7IHRyYW5z
Zm9ybS1ib3g6IGZpbGwtYm94OyIvPgorPGVsbGlwc2UgY3g9IjIyMCIgY3k9IjI3MCIgcng9IjEw
MCIgcnk9IjYwIiBmaWxsPSJub25lIiBzdHJva2U9ImdyYXkiIHN0cm9rZS13aWR0aD0iMjAiIHN0
eWxlPSJ0cmFuc2Zvcm06IHJvdGF0ZSg1MGRlZyk7IHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7
IHRyYW5zZm9ybS1ib3g6IGZpbGwtYm94OyIvPgorPC9zdmc+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9zdmcvZmlsdGVycy9mZVNwb3RMaWdodC1jb29yZGluYXRlcy5zdmcgYi9MYXlvdXRUZXN0
cy9zdmcvZmlsdGVycy9mZVNwb3RMaWdodC1jb29yZGluYXRlcy5zdmcKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTdm
ODEzNDdhZmNlMjljNTg0ZjMwNGJlOGUwMGRkODM3MGIyYmRmOQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL3N2Zy9maWx0ZXJzL2ZlU3BvdExpZ2h0LWNvb3JkaW5hdGVzLnN2ZwpAQCAt
MCwwICsxLDE1IEBACis8c3ZnIHdpZHRoPSI1MDBweCIgaGVpZ2h0PSI2MTBweCIgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKzxkZWZzPgorICAgIDxmaWx0ZXIgaWQ9ImZpbHRl
ciIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94Ij4KKyAgICAgICAgPGZlRmxvb2QvPgor
ICAgICAgICA8ZmVEaWZmdXNlTGlnaHRpbmcgbGlnaHRpbmctY29sb3I9InJnYigwLCAyNTUsIDAp
IiB4PSItMTIwIiB5PSI4NSI+CisgICAgICAgICAgICA8ZmVTcG90TGlnaHQgeD0iLTEwIiB5PSIt
MjAiIHo9IjMwMCIgcG9pbnRzQXRYPSIxODAiIHBvaW50c0F0WT0iMjIwIiBwb2ludHNBdFo9IjUw
IiBsaW1pdGluZ0NvbmVBbmdsZT0iMTIiIC8+CisgICAgICAgIDwvZmVEaWZmdXNlTGlnaHRpbmc+
CisgICAgICAgIDxmZUNvbXBvbmVudFRyYW5zZmVyPgorICAgICAgICAgICAgPGZlRnVuY0cgdHlw
ZT0iZGlzY3JldGUiIHRhYmxlVmFsdWVzPSIwIDEiLz4KKyAgICAgICAgPC9mZUNvbXBvbmVudFRy
YW5zZmVyPgorICAgIDwvZmlsdGVyPgorPC9kZWZzPgorPHJlY3QgeD0iMTEwIiB5PSIxNTAiIHdp
ZHRoPSI0NTAiIGhlaWdodD0iMzIwIiBmaWxsPSJub25lIiBmaWx0ZXI9InVybCgjZmlsdGVyKSIv
PgorPGVsbGlwc2UgY3g9IjIyMCIgY3k9IjI3MCIgcng9IjEwMCIgcnk9IjYwIiBmaWxsPSJub25l
IiBzdHJva2U9ImdyYXkiIHN0cm9rZS13aWR0aD0iMjAiIHN0eWxlPSJ0cmFuc2Zvcm06IHJvdGF0
ZSg1MGRlZyk7IHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7IHRyYW5zZm9ybS1ib3g6IGZpbGwt
Ym94OyIvPgorPC9zdmc+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvZmlsdGVycy9oaWRw
aS9mZVBvaW50TGlnaHQtY29vcmRpbmF0ZXMtZXhwZWN0ZWQuc3ZnIGIvTGF5b3V0VGVzdHMvc3Zn
L2ZpbHRlcnMvaGlkcGkvZmVQb2ludExpZ2h0LWNvb3JkaW5hdGVzLWV4cGVjdGVkLnN2ZwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5hZGNiNDc3NmNjNzM2ODE2ZjA2OGZiMjFhZGU0OTk5YWExMGEwZjJlCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2ZpbHRlcnMvaGlkcGkvZmVQb2ludExpZ2h0LWNv
b3JkaW5hdGVzLWV4cGVjdGVkLnN2ZwpAQCAtMCwwICsxLDEzIEBACisKKzxzdmcgd2lkdGg9IjUw
MHB4IiBoZWlnaHQ9IjYxMHB4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgor
PGRlZnM+CisgICAgPGZpbHRlciBpZD0iZmlsdGVyIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRp
bmdCb3giPgorICAgICAgICA8ZmVGbG9vZCB4PSItMTIwIiB5PSI4NSIvPgorICAgIDwvZmlsdGVy
PgorPC9kZWZzPgorPHJlY3QgeD0iMTEwIiB5PSIxNTAiIHdpZHRoPSI0MDAiIGhlaWdodD0iMzIw
IiBmaWxsPSJub25lIiBmaWx0ZXI9InVybCgjZmlsdGVyKSIvPgorPGNpcmNsZSBjeD0iMjUwIiBj
eT0iMjAwIiByPSI4MCIgZmlsbD0icmdiKDAsIDI1NSwgMCkiLz4KKzxjaXJjbGUgY3g9IjI1MCIg
Y3k9IjIwMCIgcj0iODUiIGZpbGw9Im5vbmUiIHN0cm9rZT0iZ3JheSIgc3Ryb2tlLXdpZHRoPSIy
MCIvPgorPHJlY3QgeD0iMzU1IiB5PSI0NjUiIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgZmlsbD0i
Z3JheSIvPgorCis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9maWx0ZXJzL2hp
ZHBpL2ZlUG9pbnRMaWdodC1jb29yZGluYXRlcy5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvZmlsdGVy
cy9oaWRwaS9mZVBvaW50TGlnaHQtY29vcmRpbmF0ZXMuc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVjM2FkMDIw
ODUwZmI4YTU3MzY1NjE2Mjc5ZjNhY2Q4M2MzZTMzOWQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9zdmcvZmlsdGVycy9oaWRwaS9mZVBvaW50TGlnaHQtY29vcmRpbmF0ZXMuc3ZnCkBA
IC0wLDAgKzEsMTggQEAKKzxzdmcgd2lkdGg9IjUwMHB4IiBoZWlnaHQ9IjYxMHB4IiB4bWxucz0i
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorPGRlZnM+CisgICAgPGZpbHRlciBpZD0iZmls
dGVyIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giPgorICAgICAgICA8ZmVGbG9vZC8+
CisgICAgICAgIDxmZURpZmZ1c2VMaWdodGluZyBsaWdodGluZy1jb2xvcj0icmdiKDAsIDI1NSwg
MCkiIHg9Ii0xMjAiIHk9Ijg1Ij4KKyAgICAgICAgICAgIDxmZVBvaW50TGlnaHQgeD0iMjUwIiB5
PSIyMDAiIHo9IjUwIi8+CisgICAgICAgIDwvZmVEaWZmdXNlTGlnaHRpbmc+CisgICAgICAgIDxm
ZUNvbXBvbmVudFRyYW5zZmVyPgorICAgICAgICAgICAgPGZlRnVuY0cgdHlwZT0iZGlzY3JldGUi
IHRhYmxlVmFsdWVzPSIwIDEiLz4KKyAgICAgICAgPC9mZUNvbXBvbmVudFRyYW5zZmVyPgorICAg
IDwvZmlsdGVyPgorPC9kZWZzPgorPHJlY3QgeD0iMTEwIiB5PSIxNTAiIHdpZHRoPSI0MDAiIGhl
aWdodD0iMzIwIiBmaWxsPSJub25lIiBmaWx0ZXI9InVybCgjZmlsdGVyKSIvPgorPCEtLSBNYXNr
IG9mZiBzbGlnaHQgZGlmZmVyZW5jZXMgaW4gcG9pbnQgbGlnaHQgcmFkaXVzIC0tPgorPGNpcmNs
ZSBjeD0iMjUwIiBjeT0iMjAwIiByPSI4NSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJncmF5IiBzdHJv
a2Utd2lkdGg9IjIwIi8+Cis8IS0tIE1hc2sgb2ZmIGJvdHRvbSByaWdodCBjb3JuZXIgb2YgbGln
aHRpbmcsIHdoaWNoIHNlZW1zIHRvIGhhdmUgYSBiYWQgdmFsdWUgLS0+Cis8cmVjdCB4PSIzNTUi
IHk9IjQ2NSIgd2lkdGg9IjEwIiBoZWlnaHQ9IjEwIiBmaWxsPSJncmF5Ii8+Cis8L3N2Zz4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9maWx0ZXJzL2hpZHBpL2ZlU3BvdExpZ2h0LWNvb3Jk
aW5hdGVzLWV4cGVjdGVkLnN2ZyBiL0xheW91dFRlc3RzL3N2Zy9maWx0ZXJzL2hpZHBpL2ZlU3Bv
dExpZ2h0LWNvb3JkaW5hdGVzLWV4cGVjdGVkLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNDE5MTM4NjVlNDYx
YTQwYzk3M2ZiNjdiMDg5NDYxZmVjMzdhNDE2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvc3ZnL2ZpbHRlcnMvaGlkcGkvZmVTcG90TGlnaHQtY29vcmRpbmF0ZXMtZXhwZWN0ZWQuc3Zn
CkBAIC0wLDAgKzEsMTAgQEAKKzxzdmcgd2lkdGg9IjUwMHB4IiBoZWlnaHQ9IjYxMHB4IiB4bWxu
cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorPGRlZnM+CisgICAgPGZpbHRlciBpZD0i
ZmlsdGVyIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giPgorICAgICAgICA8ZmVGbG9v
ZCB4PSItMTIwIiB5PSI4NSIvPgorICAgIDwvZmlsdGVyPgorPC9kZWZzPgorPHJlY3QgeD0iMTEw
IiB5PSIxNTAiIHdpZHRoPSI0NTAiIGhlaWdodD0iMzIwIiBmaWxsPSJub25lIiBmaWx0ZXI9InVy
bCgjZmlsdGVyKSIvPgorPGVsbGlwc2UgY3g9IjIyMCIgY3k9IjI3MCIgcng9Ijk1IiByeT0iNTUi
IGZpbGw9InJnYigwLCAyNTUsIDApIiBzdHlsZT0idHJhbnNmb3JtOiByb3RhdGUoNTBkZWcpOyB0
cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOyB0cmFuc2Zvcm0tYm94OiBmaWxsLWJveDsiLz4KKzxl
bGxpcHNlIGN4PSIyMjAiIGN5PSIyNzAiIHJ4PSIxMDAiIHJ5PSI2MCIgZmlsbD0ibm9uZSIgc3Ry
b2tlPSJncmF5IiBzdHJva2Utd2lkdGg9IjIwIiBzdHlsZT0idHJhbnNmb3JtOiByb3RhdGUoNTBk
ZWcpOyB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOyB0cmFuc2Zvcm0tYm94OiBmaWxsLWJveDsi
Lz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2ZpbHRlcnMvaGlkcGkvZmVT
cG90TGlnaHQtY29vcmRpbmF0ZXMuc3ZnIGIvTGF5b3V0VGVzdHMvc3ZnL2ZpbHRlcnMvaGlkcGkv
ZmVTcG90TGlnaHQtY29vcmRpbmF0ZXMuc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE3ZjgxMzQ3YWZjZTI5YzU4
NGYzMDRiZThlMDBkZDgzNzBiMmJkZjkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9z
dmcvZmlsdGVycy9oaWRwaS9mZVNwb3RMaWdodC1jb29yZGluYXRlcy5zdmcKQEAgLTAsMCArMSwx
NSBAQAorPHN2ZyB3aWR0aD0iNTAwcHgiIGhlaWdodD0iNjEwcHgiIHhtbG5zPSJodHRwOi8vd3d3
LnczLm9yZy8yMDAwL3N2ZyI+Cis8ZGVmcz4KKyAgICA8ZmlsdGVyIGlkPSJmaWx0ZXIiIGZpbHRl
clVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCI+CisgICAgICAgIDxmZUZsb29kLz4KKyAgICAgICAg
PGZlRGlmZnVzZUxpZ2h0aW5nIGxpZ2h0aW5nLWNvbG9yPSJyZ2IoMCwgMjU1LCAwKSIgeD0iLTEy
MCIgeT0iODUiPgorICAgICAgICAgICAgPGZlU3BvdExpZ2h0IHg9Ii0xMCIgeT0iLTIwIiB6PSIz
MDAiIHBvaW50c0F0WD0iMTgwIiBwb2ludHNBdFk9IjIyMCIgcG9pbnRzQXRaPSI1MCIgbGltaXRp
bmdDb25lQW5nbGU9IjEyIiAvPgorICAgICAgICA8L2ZlRGlmZnVzZUxpZ2h0aW5nPgorICAgICAg
ICA8ZmVDb21wb25lbnRUcmFuc2Zlcj4KKyAgICAgICAgICAgIDxmZUZ1bmNHIHR5cGU9ImRpc2Ny
ZXRlIiB0YWJsZVZhbHVlcz0iMCAxIi8+CisgICAgICAgIDwvZmVDb21wb25lbnRUcmFuc2Zlcj4K
KyAgICA8L2ZpbHRlcj4KKzwvZGVmcz4KKzxyZWN0IHg9IjExMCIgeT0iMTUwIiB3aWR0aD0iNDUw
IiBoZWlnaHQ9IjMyMCIgZmlsbD0ibm9uZSIgZmlsdGVyPSJ1cmwoI2ZpbHRlcikiLz4KKzxlbGxp
cHNlIGN4PSIyMjAiIGN5PSIyNzAiIHJ4PSIxMDAiIHJ5PSI2MCIgZmlsbD0ibm9uZSIgc3Ryb2tl
PSJncmF5IiBzdHJva2Utd2lkdGg9IjIwIiBzdHlsZT0idHJhbnNmb3JtOiByb3RhdGUoNTBkZWcp
OyB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOyB0cmFuc2Zvcm0tYm94OiBmaWxsLWJveDsiLz4K
Kzwvc3ZnPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>330295</attachid>
            <date>2018-01-01 12:41:43 -0800</date>
            <delta_ts>2018-01-03 09:58:08 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181147-20180101124142.patch</filename>
            <type>text/plain</type>
            <size>33426</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MzE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjNhZDBkZDU0MmVlM2Fi
N2IyMzY3ZmMzYjAyMDY0ODRkYWQ0ZmQ4Mi4uNGRiMTIyYTUzNzAwNzI2ODdiZjAwMmZkZTIyMGFk
MDRjY2VhNjQ4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDc2IEBACisyMDE3LTEyLTMxICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFNWRyBsaWdodGlu
ZyBmaWx0ZXIgbGlnaHRzIGFyZSBpbiB0aGUgd3JvbmcgY29vcmRpbmF0ZSBzeXN0ZW0KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTE0NworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBvaW50IGFuZCBzcG90
IGxpZ2h0IGNvb3JkaW5hdGVzIHdlcmVuJ3QgYmVpbmcgY29udmVydGVkIGludG8gYnVmZmVyLXJl
bGF0aXZlCisgICAgICAgIGNvb3JkaW5hdGVzIGJlZm9yZSBiZWluZyBmZWQgaW50byB0aGUgbGln
aHRpbmcgbWF0aCwgcmVzdWx0aW5nIGluIGluY29ycmVjdCBsaWdodAorICAgICAgICByZW5kZXJp
bmcgb24gUmV0aW5hIGRldmljZXMsIGFuZCB3aGVuIHRoZSBmaWx0ZXIgcHJpbWl0aXZlIHJlZ2lv
biB3YXMgY2xpcHBlZC4KKworICAgICAgICBGaXggYnkgc3RvcmluZyBhYnNvbHV0ZVVuY2xpcHBl
ZFN1YnJlZ2lvbiBvbiBGaWx0ZXJFZmZlY3QsIHdoaWNoIGFsbG93cyB1cyB0byBtYXAKKyAgICAg
ICAgbGlnaHRpbmcgcG9pbnRzIGZyb20gdXNlciBzcGFjZSBjb29yZGluYXRlcyBpbnRvIHRoZSBj
b29yZGluYXRlcyBvZiB0aGUgYnVmZmVyIGJlaW5nCisgICAgICAgIHVzZWQgZm9yIHJlbmRlcmlu
Zy4gQWxzbyBzY2FsZSB0aGUgbGlnaHQgeiBjb29yZGluYXRlIGJ5IGRvaW5nIGEgZHVtbXkgcG9p
bnQgbWFwcGluZyBpbiB4LgorCisgICAgICAgIFJlbmFtZSBtZW1iZXJzIG9mIFBvaW50TGlnaHRT
b3VyY2UgYW5kIFNwb3RMaWdodFNvdXJjZSB0byBtYWtlIGl0IGNsZWFyIHdoaWNoIGNvb3JkaW5h
dGUKKyAgICAgICAgc3lzdGVtIHRoZXkgYXJlIGluLgorCisgICAgICAgIFRlc3RzIGluY2x1ZGUg
SGlEUEkgdGVzdHMuCisKKyAgICAgICAgVGVzdHM6IHN2Zy9maWx0ZXJzL2ZlUG9pbnRMaWdodC1j
b29yZGluYXRlcy1leHBlY3RlZC5zdmcKKyAgICAgICAgICAgICAgIHN2Zy9maWx0ZXJzL2ZlUG9p
bnRMaWdodC1jb29yZGluYXRlcy5zdmcKKyAgICAgICAgICAgICAgIHN2Zy9maWx0ZXJzL2ZlU3Bv
dExpZ2h0LWNvb3JkaW5hdGVzLWV4cGVjdGVkLnN2ZworICAgICAgICAgICAgICAgc3ZnL2ZpbHRl
cnMvZmVTcG90TGlnaHQtY29vcmRpbmF0ZXMuc3ZnCisgICAgICAgICAgICAgICBzdmcvZmlsdGVy
cy9oaWRwaS9mZVBvaW50TGlnaHQtY29vcmRpbmF0ZXMtZXhwZWN0ZWQuc3ZnCisgICAgICAgICAg
ICAgICBzdmcvZmlsdGVycy9oaWRwaS9mZVBvaW50TGlnaHQtY29vcmRpbmF0ZXMuc3ZnCisgICAg
ICAgICAgICAgICBzdmcvZmlsdGVycy9oaWRwaS9mZVNwb3RMaWdodC1jb29yZGluYXRlcy1leHBl
Y3RlZC5zdmcKKyAgICAgICAgICAgICAgIHN2Zy9maWx0ZXJzL2hpZHBpL2ZlU3BvdExpZ2h0LWNv
b3JkaW5hdGVzLnN2ZworCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRQb2ludDNE
Lmg6IE1ha2UgaXQgZWFzeSB0byBnZXQgYW5kIHNldCB0aGUgWCBhbmQgWSBjb29yZHMgYXMgYSBG
bG9hdFBvaW50LgorICAgICAgICAoV2ViQ29yZTo6RmxvYXRQb2ludDNEOjp4eSBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpGbG9hdFBvaW50M0Q6OnNldFhZKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5jcHA6CisgICAgICAgIChXZWJDb3JlOjptYXBQ
b2ludCk6CisgICAgICAgIChXZWJDb3JlOjptYXBSZWN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5oOiBIZWxwZXIgdG8gbWFrZSBhIHBvaW50IGJldHdl
ZW4gcmVjdHMuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9EaXN0YW50TGln
aHRTb3VyY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGlzdGFudExpZ2h0U291cmNlOjppbml0
UGFpbnRpbmdEYXRhKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0Rpc3Rh
bnRMaWdodFNvdXJjZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVM
aWdodGluZy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGRUxpZ2h0aW5nOjpkcmF3TGlnaHRpbmcp
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyRWZmZWN0LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkZpbHRlckVmZmVjdDo6bWFwUG9pbnRGcm9tVXNlclNwYWNlVG9C
dWZmZXIgY29uc3QpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVy
RWZmZWN0Lmg6CisgICAgICAgIChXZWJDb3JlOjpGaWx0ZXJFZmZlY3Q6OnNldFVuY2xpcHBlZEFi
c29sdXRlU3VicmVnaW9uKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0xp
Z2h0U291cmNlLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9Qb2ludExp
Z2h0U291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50TGlnaHRTb3VyY2U6OmluaXRQ
YWludGluZ0RhdGEpOgorICAgICAgICAoV2ViQ29yZTo6UG9pbnRMaWdodFNvdXJjZTo6Y29tcHV0
ZVBpeGVsTGlnaHRpbmdEYXRhIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50TGlnaHRT
b3VyY2U6OnNldFgpOgorICAgICAgICAoV2ViQ29yZTo6UG9pbnRMaWdodFNvdXJjZTo6c2V0WSk6
CisgICAgICAgIChXZWJDb3JlOjpQb2ludExpZ2h0U291cmNlOjpzZXRaKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1BvaW50TGlnaHRTb3VyY2UuaDoKKyAgICAgICAgKFdl
YkNvcmU6OlBvaW50TGlnaHRTb3VyY2U6OnBvc2l0aW9uIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlBvaW50TGlnaHRTb3VyY2U6OlBvaW50TGlnaHRTb3VyY2UpOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvU3BvdExpZ2h0U291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlNwb3RMaWdodFNvdXJjZTo6aW5pdFBhaW50aW5nRGF0YSk6CisgICAgICAgIChXZWJDb3Jl
OjpTcG90TGlnaHRTb3VyY2U6OmNvbXB1dGVQaXhlbExpZ2h0aW5nRGF0YSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpTcG90TGlnaHRTb3VyY2U6OnNldFgpOgorICAgICAgICAoV2ViQ29yZTo6
U3BvdExpZ2h0U291cmNlOjpzZXRZKToKKyAgICAgICAgKFdlYkNvcmU6OlNwb3RMaWdodFNvdXJj
ZTo6c2V0Wik6CisgICAgICAgIChXZWJDb3JlOjpTcG90TGlnaHRTb3VyY2U6OnNldFBvaW50c0F0
WCk6CisgICAgICAgIChXZWJDb3JlOjpTcG90TGlnaHRTb3VyY2U6OnNldFBvaW50c0F0WSk6Cisg
ICAgICAgIChXZWJDb3JlOjpTcG90TGlnaHRTb3VyY2U6OnNldFBvaW50c0F0Wik6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9TcG90TGlnaHRTb3VyY2UuaDoKKyAgICAgICAg
KFdlYkNvcmU6OlNwb3RMaWdodFNvdXJjZTo6cG9zaXRpb24gY29uc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6U3BvdExpZ2h0U291cmNlOjpkaXJlY3Rpb24gY29uc3QpOgorICAgICAgICAoV2ViQ29y
ZTo6U3BvdExpZ2h0U291cmNlOjpTcG90TGlnaHRTb3VyY2UpOgorICAgICAgICAqIHJlbmRlcmlu
Zy9zdmcvUmVuZGVyU1ZHUmVzb3VyY2VGaWx0ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyU1ZHUmVzb3VyY2VGaWx0ZXI6OmJ1aWxkUHJpbWl0aXZlcyBjb25zdCk6CisgICAgICAgICog
cmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdSZXNvdXJjZUZpbHRlclByaW1pdGl2ZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJTVkdSZXNvdXJjZUZpbHRlclByaW1pdGl2ZTo6ZGV0ZXJtaW5l
RmlsdGVyUHJpbWl0aXZlU3VicmVnaW9uKToKKwogMjAxNy0xMi0zMCAgU2ltb24gRnJhc2VyICA8
c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjI1MTIyKTog
ZmVQb2ludExpZ2h0cyBkb24ndCB3b3JrCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9GbG9hdFBvaW50M0QuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0Zsb2F0UG9pbnQzRC5oCmluZGV4IGY5NzNkOGQ1OGJjODNiMzEyMDAxYmFlMmIwNGVk
YjUzYjMwMGI5NWEuLmQwOTM3ODE1MmViNDJkMzVlYzc2MjYwMDhmMWU1ZjVhOTZmNWE2OTggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9pbnQzRC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0UG9pbnQzRC5oCkBA
IC02Miw2ICs2MiwxMyBAQCBwdWJsaWM6CiAKICAgICBmbG9hdCB5KCkgY29uc3QgeyByZXR1cm4g
bV95OyB9CiAgICAgdm9pZCBzZXRZKGZsb2F0IHkpIHsgbV95ID0geTsgfQorICAgIAorICAgIEZs
b2F0UG9pbnQgeHkoKSBjb25zdCB7IHJldHVybiB7IG1feCwgbV95IH07IH0KKyAgICB2b2lkIHNl
dFhZKEZsb2F0UG9pbnQgcCkKKyAgICB7CisgICAgICAgIG1feCA9IHAueCgpOworICAgICAgICBt
X3kgPSBwLnkoKTsKKyAgICB9CiAKICAgICBmbG9hdCB6KCkgY29uc3QgeyByZXR1cm4gbV96OyB9
CiAgICAgdm9pZCBzZXRaKGZsb2F0IHopIHsgbV96ID0gejsgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR2VvbWV0cnlVdGlsaXRpZXMuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR2VvbWV0cnlVdGlsaXRpZXMuY3BwCmluZGV4IGIz
M2ZhMmEyZDMwOGU2OThjYWU1NTExMzkzNWY4OWUwMDVlYTQ2OTAuLjAwOTljZWZhMDYzODUwMDE0
MGEwYzdlZDIzZTE2YjY4ZWQ0NDEzNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0dlb21ldHJ5VXRpbGl0aWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5jcHAKQEAgLTk2LDYgKzk2LDIwIEBA
IEZsb2F0UmVjdCB1bmlvblJlY3QoY29uc3QgVmVjdG9yPEZsb2F0UmVjdD4mIHJlY3RzKQogICAg
IHJldHVybiByZXN1bHQ7CiB9CiAKK0Zsb2F0UG9pbnQgbWFwUG9pbnQoRmxvYXRQb2ludCBwLCBj
b25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNvbnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QpCit7Cisg
ICAgaWYgKCFzcmNSZWN0LndpZHRoKCkgfHwgIXNyY1JlY3QuaGVpZ2h0KCkpCisgICAgICAgIHJl
dHVybiBwOworCisgICAgZmxvYXQgd2lkdGhTY2FsZSA9IGRlc3RSZWN0LndpZHRoKCkgLyBzcmNS
ZWN0LndpZHRoKCk7CisgICAgZmxvYXQgaGVpZ2h0U2NhbGUgPSBkZXN0UmVjdC5oZWlnaHQoKSAv
IHNyY1JlY3QuaGVpZ2h0KCk7CisKKyAgICByZXR1cm4geworICAgICAgICBkZXN0UmVjdC54KCkg
KyAocC54KCkgLSBzcmNSZWN0LngoKSkgKiB3aWR0aFNjYWxlLAorICAgICAgICBkZXN0UmVjdC55
KCkgKyAocC55KCkgLSBzcmNSZWN0LnkoKSkgKiBoZWlnaHRTY2FsZQorICAgIH07Cit9CisKIEZs
b2F0UmVjdCBtYXBSZWN0KGNvbnN0IEZsb2F0UmVjdCYgciwgY29uc3QgRmxvYXRSZWN0JiBzcmNS
ZWN0LCBjb25zdCBGbG9hdFJlY3QmIGRlc3RSZWN0KQogewogICAgIGlmICghc3JjUmVjdC53aWR0
aCgpIHx8ICFzcmNSZWN0LmhlaWdodCgpKQpAQCAtMTAzLDkgKzExNywxMiBAQCBGbG9hdFJlY3Qg
bWFwUmVjdChjb25zdCBGbG9hdFJlY3QmIHIsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgY29u
c3QgRmxvYXRSZWN0JgogCiAgICAgZmxvYXQgd2lkdGhTY2FsZSA9IGRlc3RSZWN0LndpZHRoKCkg
LyBzcmNSZWN0LndpZHRoKCk7CiAgICAgZmxvYXQgaGVpZ2h0U2NhbGUgPSBkZXN0UmVjdC5oZWln
aHQoKSAvIHNyY1JlY3QuaGVpZ2h0KCk7Ci0gICAgcmV0dXJuIEZsb2F0UmVjdChkZXN0UmVjdC54
KCkgKyAoci54KCkgLSBzcmNSZWN0LngoKSkgKiB3aWR0aFNjYWxlLAorICAgIHJldHVybiB7Cisg
ICAgICAgIGRlc3RSZWN0LngoKSArIChyLngoKSAtIHNyY1JlY3QueCgpKSAqIHdpZHRoU2NhbGUs
CiAgICAgICAgIGRlc3RSZWN0LnkoKSArIChyLnkoKSAtIHNyY1JlY3QueSgpKSAqIGhlaWdodFNj
YWxlLAotICAgICAgICByLndpZHRoKCkgKiB3aWR0aFNjYWxlLCByLmhlaWdodCgpICogaGVpZ2h0
U2NhbGUpOworICAgICAgICByLndpZHRoKCkgKiB3aWR0aFNjYWxlLAorICAgICAgICByLmhlaWdo
dCgpICogaGVpZ2h0U2NhbGUKKyAgICB9OwogfQogCiBGbG9hdFJlY3QgbGFyZ2VzdFJlY3RXaXRo
QXNwZWN0UmF0aW9JbnNpZGVSZWN0KGZsb2F0IGFzcGVjdFJhdGlvLCBjb25zdCBGbG9hdFJlY3Qm
IHNyY1JlY3QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9H
ZW9tZXRyeVV0aWxpdGllcy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR2Vv
bWV0cnlVdGlsaXRpZXMuaAppbmRleCBhYTVjNzZiZjE1MzkwOTZhYTEzM2Y3NDU5MmNlYzlkOGY3
NmU2NzNkLi4wZGRkNmMyZWE3MjAyNDNmMzAxNWZhZmU0ZjY4OGU0YmU1MDA0ZjI2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HZW9tZXRyeVV0aWxpdGllcy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dlb21ldHJ5VXRpbGl0aWVz
LmgKQEAgLTQxLDcgKzQxLDEwIEBAIFdFQkNPUkVfRVhQT1JUIGJvb2wgZmluZEludGVyc2VjdGlv
bihjb25zdCBGbG9hdFBvaW50JiBwMSwgY29uc3QgRmxvYXRQb2ludCYgcDIsCiBJbnRSZWN0IHVu
aW9uUmVjdChjb25zdCBWZWN0b3I8SW50UmVjdD4mKTsKIFdFQkNPUkVfRVhQT1JUIEZsb2F0UmVj
dCB1bmlvblJlY3QoY29uc3QgVmVjdG9yPEZsb2F0UmVjdD4mKTsKIAotLy8gTWFwIHJlY3QgciBm
cm9tIHNyY1JlY3QgdG8gYW4gZXF1aXZhbGVudCByZWN0IGluIGRlc3RSZWN0LgorLy8gTWFwIHBv
aW50IGZyb20gc3JjUmVjdCB0byBhbiBlcXVpdmFsZW50IHBvaW50IGluIGRlc3RSZWN0LgorRmxv
YXRQb2ludCBtYXBQb2ludChGbG9hdFBvaW50LCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNv
bnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QpOworCisvLyBNYXAgcmVjdCBmcm9tIHNyY1JlY3QgdG8g
YW4gZXF1aXZhbGVudCByZWN0IGluIGRlc3RSZWN0LgogRmxvYXRSZWN0IG1hcFJlY3QoY29uc3Qg
RmxvYXRSZWN0JiwgY29uc3QgRmxvYXRSZWN0JiBzcmNSZWN0LCBjb25zdCBGbG9hdFJlY3QmIGRl
c3RSZWN0KTsKIAogV0VCQ09SRV9FWFBPUlQgRmxvYXRSZWN0IGxhcmdlc3RSZWN0V2l0aEFzcGVj
dFJhdGlvSW5zaWRlUmVjdChmbG9hdCBhc3BlY3RSYXRpbywgY29uc3QgRmxvYXRSZWN0Jik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0Rpc3Rh
bnRMaWdodFNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0Rpc3RhbnRMaWdodFNvdXJjZS5jcHAKaW5kZXggZjA1OTc5ZTZiNGQyNzczYThlNjU4ZTk4
YzZhOTJjNzliNjY2NTJmOC4uZTVmYjFmZjY2NWQzZWIwN2Y0OGVlMWQwMmJiZmZjYzZiMDQ0MWY4
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9E
aXN0YW50TGlnaHRTb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvRGlzdGFudExpZ2h0U291cmNlLmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKLXZvaWQgRGlzdGFudExpZ2h0U291cmNlOjppbml0UGFpbnRp
bmdEYXRhKFBhaW50aW5nRGF0YSYgcGFpbnRpbmdEYXRhKQordm9pZCBEaXN0YW50TGlnaHRTb3Vy
Y2U6OmluaXRQYWludGluZ0RhdGEoY29uc3QgRmlsdGVyRWZmZWN0JiwgUGFpbnRpbmdEYXRhJiBw
YWludGluZ0RhdGEpCiB7CiAgICAgZmxvYXQgYXppbXV0aCA9IGRlZzJyYWQobV9hemltdXRoKTsK
ICAgICBmbG9hdCBlbGV2YXRpb24gPSBkZWcycmFkKG1fZWxldmF0aW9uKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRGlzdGFudExpZ2h0U291
cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0Rpc3RhbnRM
aWdodFNvdXJjZS5oCmluZGV4IGMwMGU1MjQ4MDdiODM1ZTU1M2I1Nzc0NTQ2MTUyMzlkMGMxY2Qy
NTQuLmMxZTMwZWRlNzU5ODM3MjhhNjMyYmNjZmZiMDk5NzNhM2E0ZTcyZmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRGlzdGFudExpZ2h0U291
cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9EaXN0
YW50TGlnaHRTb3VyY2UuaApAQCAtNDEsNyArNDEsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBzZXRB
emltdXRoKGZsb2F0KSBvdmVycmlkZTsKICAgICBib29sIHNldEVsZXZhdGlvbihmbG9hdCkgb3Zl
cnJpZGU7CiAKLSAgICB2b2lkIGluaXRQYWludGluZ0RhdGEoUGFpbnRpbmdEYXRhJikgb3ZlcnJp
ZGU7CisgICAgdm9pZCBpbml0UGFpbnRpbmdEYXRhKGNvbnN0IEZpbHRlckVmZmVjdCYsIFBhaW50
aW5nRGF0YSYpIG92ZXJyaWRlOwogICAgIENvbXB1dGVkTGlnaHRpbmdEYXRhIGNvbXB1dGVQaXhl
bExpZ2h0aW5nRGF0YShjb25zdCBQYWludGluZ0RhdGEmLCBpbnQgeCwgaW50IHksIGZsb2F0IHop
IGNvbnN0IGZpbmFsOwogCiAgICAgV1RGOjpUZXh0U3RyZWFtJiBleHRlcm5hbFJlcHJlc2VudGF0
aW9uKFdURjo6VGV4dFN0cmVhbSYpIGNvbnN0IG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUxpZ2h0aW5nLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVMaWdodGluZy5jcHAKaW5kZXgg
NjBiNTliYzliY2FlZjg0ZjMwZDQ4ZmNhNDZmNmI5MjdhY2JmODJmYS4uMDBkNTNmNWEzM2MzZTI3
MjU4OTAxODY1OGVmZmIwZjI5ODg4ZGM5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUxpZ2h0aW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFTGlnaHRpbmcuY3BwCkBAIC00MDEsNyArNDAx
LDcgQEAgYm9vbCBGRUxpZ2h0aW5nOjpkcmF3TGlnaHRpbmcoVWludDhDbGFtcGVkQXJyYXkmIHBp
eGVscywgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KQogICAgIAogICAgIENvbG9yIGxpZ2h0Q29sb3Ig
PSAob3BlcmF0aW5nQ29sb3JTcGFjZSgpID09IENvbG9yU3BhY2VMaW5lYXJSR0IpID8gc1JHQlRv
TGluZWFyQ29sb3IobV9saWdodGluZ0NvbG9yKSA6IG1fbGlnaHRpbmdDb2xvcjsKICAgICBwYWlu
dGluZ0RhdGEuaW5pdGlhbExpZ2h0aW5nRGF0YS5jb2xvclZlY3RvciA9IEZsb2F0UG9pbnQzRChs
aWdodENvbG9yLnJlZCgpLCBsaWdodENvbG9yLmdyZWVuKCksIGxpZ2h0Q29sb3IuYmx1ZSgpKTsK
LSAgICBtX2xpZ2h0U291cmNlLT5pbml0UGFpbnRpbmdEYXRhKHBhaW50aW5nRGF0YSk7CisgICAg
bV9saWdodFNvdXJjZS0+aW5pdFBhaW50aW5nRGF0YSgqdGhpcywgcGFpbnRpbmdEYXRhKTsKIAog
ICAgIC8vIFRvcCBsZWZ0LgogICAgIGludCBvZmZzZXQgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJFZmZlY3QuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJFZmZlY3QuY3BwCmlu
ZGV4IDJiM2NlMjk3YTkyNTgwNzI1OGNjZmUzZTg2NWQzZGYzMTlmYTRlNjcuLjkzNTRiZTAzOGIz
MGM0ZTFlZDlhNzk4NTIwYWZmNjgyODU2NGZmOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyRWZmZWN0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlckVmZmVjdC5jcHAKQEAgLTI1
LDYgKzI1LDcgQEAKICNpbmNsdWRlICJGaWx0ZXJFZmZlY3QuaCIKIAogI2luY2x1ZGUgIkZpbHRl
ci5oIgorI2luY2x1ZGUgIkdlb21ldHJ5VXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiSW1hZ2VCdWZm
ZXIuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCiAjaW5jbHVkZSA8cnVudGltZS9KU0NJbmxpbmVz
Lmg+CkBAIC02Niw2ICs2NywxMyBAQCB2b2lkIEZpbHRlckVmZmVjdDo6Y2xpcEFic29sdXRlUGFp
bnRSZWN0KCkKICAgICAgICAgbV9hYnNvbHV0ZVBhaW50UmVjdC51bml0ZShlbmNsb3NpbmdJbnRS
ZWN0KG1fbWF4RWZmZWN0UmVjdCkpOwogfQogCitGbG9hdFBvaW50IEZpbHRlckVmZmVjdDo6bWFw
UG9pbnRGcm9tVXNlclNwYWNlVG9CdWZmZXIoRmxvYXRQb2ludCB1c2VyU3BhY2VQb2ludCkgY29u
c3QKK3sKKyAgICBGbG9hdFBvaW50IGFic29sdXRlUG9pbnQgPSBtYXBQb2ludCh1c2VyU3BhY2VQ
b2ludCwgbV9maWx0ZXJQcmltaXRpdmVTdWJyZWdpb24sIG1fYWJzb2x1dGVVbmNsaXBwZWRTdWJy
ZWdpb24pOworICAgIGFic29sdXRlUG9pbnQubW92ZUJ5KC1tX2Fic29sdXRlUGFpbnRSZWN0Lmxv
Y2F0aW9uKCkpOworICAgIHJldHVybiBhYnNvbHV0ZVBvaW50OworfQorCiBJbnRSZWN0IEZpbHRl
ckVmZmVjdDo6cmVxdWVzdGVkUmVnaW9uT2ZJbnB1dEltYWdlRGF0YShjb25zdCBJbnRSZWN0JiBl
ZmZlY3RSZWN0KSBjb25zdAogewogICAgIEFTU0VSVChoYXNSZXN1bHQoKSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlckVmZmVjdC5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJFZmZlY3Qu
aAppbmRleCA1NmYwODI5M2QzMzEzYzFkYzBlYTJmNzdlOTQ4NzBmZjkzMjhmN2RiLi42NDlmY2Jm
ZjA0NDAzNmJkMmM0NGFhYjAwMzBhMjk2YWJlYjE2MDFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlckVmZmVjdC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyRWZmZWN0LmgKQEAgLTEz
Niw2ICsxMzYsMTAgQEAgcHVibGljOgogCiAgICAgRmxvYXRSZWN0IGVmZmVjdEJvdW5kYXJpZXMo
KSBjb25zdCB7IHJldHVybiBtX2VmZmVjdEJvdW5kYXJpZXM7IH0KICAgICB2b2lkIHNldEVmZmVj
dEJvdW5kYXJpZXMoY29uc3QgRmxvYXRSZWN0JiBlZmZlY3RCb3VuZGFyaWVzKSB7IG1fZWZmZWN0
Qm91bmRhcmllcyA9IGVmZmVjdEJvdW5kYXJpZXM7IH0KKyAgICAKKyAgICB2b2lkIHNldFVuY2xp
cHBlZEFic29sdXRlU3VicmVnaW9uKGNvbnN0IEZsb2F0UmVjdCYgcikgeyBtX2Fic29sdXRlVW5j
bGlwcGVkU3VicmVnaW9uID0gcjsgfQorICAgIAorICAgIEZsb2F0UG9pbnQgbWFwUG9pbnRGcm9t
VXNlclNwYWNlVG9CdWZmZXIoRmxvYXRQb2ludCkgY29uc3Q7CiAKICAgICBGaWx0ZXImIGZpbHRl
cigpIHsgcmV0dXJuIG1fZmlsdGVyOyB9CiAgICAgY29uc3QgRmlsdGVyJiBmaWx0ZXIoKSBjb25z
dCB7IHJldHVybiBtX2ZpbHRlcjsgfQpAQCAtMjA4LDYgKzIxMiw5IEBAIHByaXZhdGU6CiAgICAg
Ly8geCwgeSwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgYWN0dWFsIFNWR0ZFKkVsZW1lbnQuIElz
IG5lZWRlZCB0byBkZXRlcm1pbmUgdGhlIHN1YnJlZ2lvbiBvZiB0aGUKICAgICAvLyBmaWx0ZXIg
cHJpbWl0aXZlIG9uIGEgbGF0ZXIgc3RlcC4KICAgICBGbG9hdFJlY3QgbV9lZmZlY3RCb3VuZGFy
aWVzOworICAgIAorICAgIC8vIGZpbHRlclByaW1pdGl2ZVN1YnJlZ2lvbiBtYXBwZWQgdG8gYWJz
b2x1dGUgY29vcmRpbmF0ZXMgYmVmb3JlIGNsaXBwaW5nLgorICAgIEZsb2F0UmVjdCBtX2Fic29s
dXRlVW5jbGlwcGVkU3VicmVnaW9uOwogCiAgICAgYm9vbCBtX2FscGhhSW1hZ2UgeyBmYWxzZSB9
OwogICAgIGJvb2wgbV9oYXNYIHsgZmFsc2UgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvTGlnaHRTb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvTGlnaHRTb3VyY2UuaAppbmRleCBjNDMyYTViNGI0
ZGIwMzBlZjRmMjgzYzNlNWEwY2Y0ZTJhNjAyODc2Li45NGQxOTUwMTM5ZDZkMjQzYTg2NjFlNWVh
NTVkMjM1YTczODlmNWQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9maWx0ZXJzL0xpZ2h0U291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9MaWdodFNvdXJjZS5oCkBAIC0zOCw2ICszOCw4IEBAIGVudW0gTGln
aHRUeXBlIHsKICAgICBMU19TUE9UCiB9OwogCitjbGFzcyBGaWx0ZXJFZmZlY3Q7CisKIGNsYXNz
IExpZ2h0U291cmNlIDogcHVibGljIFJlZkNvdW50ZWQ8TGlnaHRTb3VyY2U+IHsKIHB1YmxpYzoK
ICAgICBzdHJ1Y3QgQ29tcHV0ZWRMaWdodGluZ0RhdGEgewpAQCAtNjMsMTkgKzY1LDIzIEBAIHB1
YmxpYzoKICAgICBMaWdodFR5cGUgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZTsgfQogICAg
IHZpcnR1YWwgV1RGOjpUZXh0U3RyZWFtJiBleHRlcm5hbFJlcHJlc2VudGF0aW9uKFdURjo6VGV4
dFN0cmVhbSYpIGNvbnN0ID0gMDsKIAotICAgIHZpcnR1YWwgdm9pZCBpbml0UGFpbnRpbmdEYXRh
KFBhaW50aW5nRGF0YSYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgaW5pdFBhaW50aW5nRGF0YShj
b25zdCBGaWx0ZXJFZmZlY3QmLCBQYWludGluZ0RhdGEmKSA9IDA7CiAgICAgLy8geiBpcyBhIGZs
b2F0IG51bWJlciwgc2luY2UgaXQgaXMgdGhlIGFscGhhIHZhbHVlIHNjYWxlZCBieSBhIHVzZXIK
LSAgICAvLyBzcGVjaWZpZWQgInN1cmZhY2VTY2FsZSIgY29uc3RhbnQsIHdoaWNoIHR5cGUgaXMg
PG51bWJlcj4gaW4gdGhlIFNWRyBzdGFuZGFyZAorICAgIC8vIHNwZWNpZmllZCAic3VyZmFjZVNj
YWxlIiBjb25zdGFudCwgd2hpY2ggdHlwZSBpcyA8bnVtYmVyPiBpbiB0aGUgU1ZHIHN0YW5kYXJk
LgorICAgIC8vIHggYW5kIHkgYXJlIGluIHRoZSBjb29yZGluYXRlcyBvZiB0aGUgRmlsdGVyRWZm
ZWN0J3MgYnVmZmVyLgogICAgIHZpcnR1YWwgQ29tcHV0ZWRMaWdodGluZ0RhdGEgY29tcHV0ZVBp
eGVsTGlnaHRpbmdEYXRhKGNvbnN0IFBhaW50aW5nRGF0YSYsIGludCB4LCBpbnQgeSwgZmxvYXQg
eikgY29uc3QgPSAwOwogCiAgICAgdmlydHVhbCBib29sIHNldEF6aW11dGgoZmxvYXQpIHsgcmV0
dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29sIHNldEVsZXZhdGlvbihmbG9hdCkgeyByZXR1
cm4gZmFsc2U7IH0KKyAgICAKKyAgICAvLyBUaGVzZSBhcmUgaW4gdXNlciBzcGFjZSBjb29yZGlu
YXRlcy4KICAgICB2aXJ0dWFsIGJvb2wgc2V0WChmbG9hdCkgeyByZXR1cm4gZmFsc2U7IH0KICAg
ICB2aXJ0dWFsIGJvb2wgc2V0WShmbG9hdCkgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFs
IGJvb2wgc2V0WihmbG9hdCkgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIGJvb2wgc2V0
UG9pbnRzQXRYKGZsb2F0KSB7IHJldHVybiBmYWxzZTsgfQogICAgIHZpcnR1YWwgYm9vbCBzZXRQ
b2ludHNBdFkoZmxvYXQpIHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29sIHNldFBv
aW50c0F0WihmbG9hdCkgeyByZXR1cm4gZmFsc2U7IH0KKyAgICAKICAgICB2aXJ0dWFsIGJvb2wg
c2V0U3BlY3VsYXJFeHBvbmVudChmbG9hdCkgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFs
IGJvb2wgc2V0TGltaXRpbmdDb25lQW5nbGUoZmxvYXQpIHsgcmV0dXJuIGZhbHNlOyB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvUG9pbnRM
aWdodFNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L1BvaW50TGlnaHRTb3VyY2UuY3BwCmluZGV4IGIxMzEzZGI0ZWUwMzNmYjFkODNiMWQ1M2Q2NTRh
MjU3NWQxZTNhZjcuLjhlM2MxMTM1NWI4ODU1MWVkZDE3YmZmOWU0MDc4OTczZTA4MjAxNzcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvUG9pbnRM
aWdodFNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmls
dGVycy9Qb2ludExpZ2h0U291cmNlLmNwcApAQCAtMzUsMTYgKzM1LDIwIEBACiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAotdm9pZCBQb2ludExpZ2h0U291cmNlOjppbml0UGFpbnRpbmdEYXRhKFBh
aW50aW5nRGF0YSYpCit2b2lkIFBvaW50TGlnaHRTb3VyY2U6OmluaXRQYWludGluZ0RhdGEoY29u
c3QgRmlsdGVyRWZmZWN0JiBmaWx0ZXJFZmZlY3QsIFBhaW50aW5nRGF0YSYpCiB7CisgICAgbV9i
dWZmZXJQb3NpdGlvbi5zZXRYWShmaWx0ZXJFZmZlY3QubWFwUG9pbnRGcm9tVXNlclNwYWNlVG9C
dWZmZXIobV91c2VyU3BhY2VQb3NpdGlvbi54eSgpKSk7CisgICAgLy8gVG8gc2NhbGUgWiwgbWFw
IGEgcG9pbnQgb2Zmc2V0IGZyb20gbV91c2VyU3BhY2VQb3NpdGlvbiBpbiB0aGUgeCBkaXJlY3Rp
b24gYnkgei4KKyAgICBGbG9hdFBvaW50IG1hcHBlZFogPSBmaWx0ZXJFZmZlY3QubWFwUG9pbnRG
cm9tVXNlclNwYWNlVG9CdWZmZXIoeyBtX3VzZXJTcGFjZVBvc2l0aW9uLngoKSArIG1fdXNlclNw
YWNlUG9zaXRpb24ueigpLCBtX3VzZXJTcGFjZVBvc2l0aW9uLnkoKSB9KTsKKyAgICBtX2J1ZmZl
clBvc2l0aW9uLnNldFoobWFwcGVkWi54KCkgLSBtX2J1ZmZlclBvc2l0aW9uLngoKSk7CiB9CiAK
IExpZ2h0U291cmNlOjpDb21wdXRlZExpZ2h0aW5nRGF0YSBQb2ludExpZ2h0U291cmNlOjpjb21w
dXRlUGl4ZWxMaWdodGluZ0RhdGEoY29uc3QgUGFpbnRpbmdEYXRhJiBwYWludGluZ0RhdGEsIGlu
dCB4LCBpbnQgeSwgZmxvYXQgeikgY29uc3QKIHsKICAgICBGbG9hdFBvaW50M0QgbGlnaHRWZWN0
b3IgPSB7Ci0gICAgICAgIG1fcG9zaXRpb24ueCgpIC0geCwKLSAgICAgICAgbV9wb3NpdGlvbi55
KCkgLSB5LAotICAgICAgICBtX3Bvc2l0aW9uLnooKSAtIHoKKyAgICAgICAgbV9idWZmZXJQb3Np
dGlvbi54KCkgLSB4LAorICAgICAgICBtX2J1ZmZlclBvc2l0aW9uLnkoKSAtIHksCisgICAgICAg
IG1fYnVmZmVyUG9zaXRpb24ueigpIC0gegogICAgIH07CiAKICAgICByZXR1cm4geyBsaWdodFZl
Y3RvciwgcGFpbnRpbmdEYXRhLmluaXRpYWxMaWdodGluZ0RhdGEuY29sb3JWZWN0b3IsIGxpZ2h0
VmVjdG9yLmxlbmd0aCgpIH07CkBAIC01MiwyNSArNTYsMjUgQEAgTGlnaHRTb3VyY2U6OkNvbXB1
dGVkTGlnaHRpbmdEYXRhIFBvaW50TGlnaHRTb3VyY2U6OmNvbXB1dGVQaXhlbExpZ2h0aW5nRGF0
YShjb24KIAogYm9vbCBQb2ludExpZ2h0U291cmNlOjpzZXRYKGZsb2F0IHgpCiB7Ci0gICAgaWYg
KG1fcG9zaXRpb24ueCgpID09IHgpCisgICAgaWYgKG1fdXNlclNwYWNlUG9zaXRpb24ueCgpID09
IHgpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBtX3Bvc2l0aW9uLnNldFgoeCk7CisgICAg
bV91c2VyU3BhY2VQb3NpdGlvbi5zZXRYKHgpOwogICAgIHJldHVybiB0cnVlOwogfQogCiBib29s
IFBvaW50TGlnaHRTb3VyY2U6OnNldFkoZmxvYXQgeSkKIHsKLSAgICBpZiAobV9wb3NpdGlvbi55
KCkgPT0geSkKKyAgICBpZiAobV91c2VyU3BhY2VQb3NpdGlvbi55KCkgPT0geSkKICAgICAgICAg
cmV0dXJuIGZhbHNlOwotICAgIG1fcG9zaXRpb24uc2V0WSh5KTsKKyAgICBtX3VzZXJTcGFjZVBv
c2l0aW9uLnNldFkoeSk7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgUG9pbnRMaWdodFNv
dXJjZTo6c2V0WihmbG9hdCB6KQogewotICAgIGlmIChtX3Bvc2l0aW9uLnooKSA9PSB6KQorICAg
IGlmIChtX3VzZXJTcGFjZVBvc2l0aW9uLnooKSA9PSB6KQogICAgICAgICByZXR1cm4gZmFsc2U7
Ci0gICAgbV9wb3NpdGlvbi5zZXRaKHopOworICAgIG1fdXNlclNwYWNlUG9zaXRpb24uc2V0Wih6
KTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9Qb2ludExpZ2h0U291cmNlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1BvaW50TGlnaHRTb3VyY2UuaAppbmRleCBlZTcz
ZGQ2ZDIwYTZhYjFiOGQ0ODVhZTJlODJkNWQ1NjkzMmUzMDg5Li42N2EzYTBiZDM5YThhOWNjMTk1
NDM0OTg1OTZkNzExNWY0YmI5NWE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL1BvaW50TGlnaHRTb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1BvaW50TGlnaHRTb3VyY2UuaApAQCAtMzQsMTIg
KzM0LDEyIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUG9pbnRMaWdo
dFNvdXJjZShwb3NpdGlvbikpOwogICAgIH0KIAotICAgIGNvbnN0IEZsb2F0UG9pbnQzRCYgcG9z
aXRpb24oKSBjb25zdCB7IHJldHVybiBtX3Bvc2l0aW9uOyB9CisgICAgY29uc3QgRmxvYXRQb2lu
dDNEJiBwb3NpdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fdXNlclNwYWNlUG9zaXRpb247IH0KICAg
ICBib29sIHNldFgoZmxvYXQpIG92ZXJyaWRlOwogICAgIGJvb2wgc2V0WShmbG9hdCkgb3ZlcnJp
ZGU7CiAgICAgYm9vbCBzZXRaKGZsb2F0KSBvdmVycmlkZTsKIAotICAgIHZvaWQgaW5pdFBhaW50
aW5nRGF0YShQYWludGluZ0RhdGEmKSBvdmVycmlkZTsKKyAgICB2b2lkIGluaXRQYWludGluZ0Rh
dGEoY29uc3QgRmlsdGVyRWZmZWN0JiwgUGFpbnRpbmdEYXRhJikgb3ZlcnJpZGU7CiAgICAgQ29t
cHV0ZWRMaWdodGluZ0RhdGEgY29tcHV0ZVBpeGVsTGlnaHRpbmdEYXRhKGNvbnN0IFBhaW50aW5n
RGF0YSYsIGludCB4LCBpbnQgeSwgZmxvYXQgeikgY29uc3QgZmluYWw7CiAKICAgICBXVEY6OlRl
eHRTdHJlYW0mIGV4dGVybmFsUmVwcmVzZW50YXRpb24oV1RGOjpUZXh0U3RyZWFtJikgY29uc3Qg
b3ZlcnJpZGU7CkBAIC00NywxMSArNDcsMTIgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBQb2lu
dExpZ2h0U291cmNlKGNvbnN0IEZsb2F0UG9pbnQzRCYgcG9zaXRpb24pCiAgICAgICAgIDogTGln
aHRTb3VyY2UoTFNfUE9JTlQpCi0gICAgICAgICwgbV9wb3NpdGlvbihwb3NpdGlvbikKKyAgICAg
ICAgLCBtX3VzZXJTcGFjZVBvc2l0aW9uKHBvc2l0aW9uKQogICAgIHsKICAgICB9CiAKLSAgICBG
bG9hdFBvaW50M0QgbV9wb3NpdGlvbjsKKyAgICBGbG9hdFBvaW50M0QgbV91c2VyU3BhY2VQb3Np
dGlvbjsKKyAgICBGbG9hdFBvaW50M0QgbV9idWZmZXJQb3NpdGlvbjsKIH07CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvU3BvdExpZ2h0U291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvU3BvdExpZ2h0U291cmNlLmNwcAppbmRleCBmM2Q4NTkxNDYyY2Yw
OTRiNWJhN2M5MWU3N2M5MjNhMDAzYmI0ZDBkLi44NmExMWY5YzM0MzA1ODNhYmIxNzNhYzQ5MzZi
YWEzMDI4NzdkNWY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL1Nwb3RMaWdodFNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9TcG90TGlnaHRTb3VyY2UuY3BwCkBAIC00MCw5ICs0MCwxNCBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBhY2NvcmRpbmcgdG8gdGhlIFNWRyAxLjEgU0UgbGln
aHQgcmVncmVzc2lvbiB0ZXN0cwogc3RhdGljIGNvbnN0IGZsb2F0IGFudGlBbGlhc1RyZXNob2xk
ID0gMC4wMTZmOwogCi12b2lkIFNwb3RMaWdodFNvdXJjZTo6aW5pdFBhaW50aW5nRGF0YShQYWlu
dGluZ0RhdGEmIHBhaW50aW5nRGF0YSkKK3ZvaWQgU3BvdExpZ2h0U291cmNlOjppbml0UGFpbnRp
bmdEYXRhKGNvbnN0IEZpbHRlckVmZmVjdCYgZmlsdGVyRWZmZWN0LCBQYWludGluZ0RhdGEmIHBh
aW50aW5nRGF0YSkKIHsKLSAgICBwYWludGluZ0RhdGEuZGlyZWN0aW9uVmVjdG9yID0gbV9kaXJl
Y3Rpb24gLSBtX3Bvc2l0aW9uOworICAgIG1fYnVmZmVyUG9zaXRpb24uc2V0WFkoZmlsdGVyRWZm
ZWN0Lm1hcFBvaW50RnJvbVVzZXJTcGFjZVRvQnVmZmVyKG1fdXNlclNwYWNlUG9zaXRpb24ueHko
KSkpOworICAgIC8vIFRvIHNjYWxlIFosIG1hcCBhIHBvaW50IG9mZnNldCBmcm9tIG1fdXNlclNw
YWNlUG9zaXRpb24gaW4gdGhlIHggZGlyZWN0aW9uIGJ5IHouCisgICAgRmxvYXRQb2ludCBtYXBw
ZWRaID0gZmlsdGVyRWZmZWN0Lm1hcFBvaW50RnJvbVVzZXJTcGFjZVRvQnVmZmVyKHsgbV91c2Vy
U3BhY2VQb3NpdGlvbi54KCkgKyBtX3VzZXJTcGFjZVBvc2l0aW9uLnooKSwgbV91c2VyU3BhY2VQ
b3NpdGlvbi55KCkgfSk7CisgICAgbV9idWZmZXJQb3NpdGlvbi5zZXRaKG1hcHBlZFoueCgpIC0g
bV9idWZmZXJQb3NpdGlvbi54KCkpOworICAgIAorICAgIHBhaW50aW5nRGF0YS5kaXJlY3Rpb25W
ZWN0b3IgPSBtX3VzZXJTcGFjZVBvaW50c0F0IC0gbV91c2VyU3BhY2VQb3NpdGlvbjsKICAgICBw
YWludGluZ0RhdGEuZGlyZWN0aW9uVmVjdG9yLm5vcm1hbGl6ZSgpOwogCiAgICAgaWYgKCFtX2xp
bWl0aW5nQ29uZUFuZ2xlKSB7CkBAIC03MCw5ICs3NSw5IEBAIHZvaWQgU3BvdExpZ2h0U291cmNl
Ojppbml0UGFpbnRpbmdEYXRhKFBhaW50aW5nRGF0YSYgcGFpbnRpbmdEYXRhKQogTGlnaHRTb3Vy
Y2U6OkNvbXB1dGVkTGlnaHRpbmdEYXRhIFNwb3RMaWdodFNvdXJjZTo6Y29tcHV0ZVBpeGVsTGln
aHRpbmdEYXRhKGNvbnN0IFBhaW50aW5nRGF0YSYgcGFpbnRpbmdEYXRhLCBpbnQgeCwgaW50IHks
IGZsb2F0IHopIGNvbnN0CiB7CiAgICAgRmxvYXRQb2ludDNEIGxpZ2h0VmVjdG9yID0gewotICAg
ICAgICBtX3Bvc2l0aW9uLngoKSAtIHgsCi0gICAgICAgIG1fcG9zaXRpb24ueSgpIC0geSwKLSAg
ICAgICAgbV9wb3NpdGlvbi56KCkgLSB6CisgICAgICAgIG1fYnVmZmVyUG9zaXRpb24ueCgpIC0g
eCwKKyAgICAgICAgbV9idWZmZXJQb3NpdGlvbi55KCkgLSB5LAorICAgICAgICBtX2J1ZmZlclBv
c2l0aW9uLnooKSAtIHoKICAgICB9OwogICAgIGZsb2F0IGxpZ2h0VmVjdG9yTGVuZ3RoID0gbGln
aHRWZWN0b3IubGVuZ3RoKCk7CiAKQEAgLTExMSw0OSArMTE2LDQ5IEBAIExpZ2h0U291cmNlOjpD
b21wdXRlZExpZ2h0aW5nRGF0YSBTcG90TGlnaHRTb3VyY2U6OmNvbXB1dGVQaXhlbExpZ2h0aW5n
RGF0YShjb25zCiAKIGJvb2wgU3BvdExpZ2h0U291cmNlOjpzZXRYKGZsb2F0IHgpCiB7Ci0gICAg
aWYgKG1fcG9zaXRpb24ueCgpID09IHgpCisgICAgaWYgKG1fdXNlclNwYWNlUG9zaXRpb24ueCgp
ID09IHgpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBtX3Bvc2l0aW9uLnNldFgoeCk7Cisg
ICAgbV91c2VyU3BhY2VQb3NpdGlvbi5zZXRYKHgpOwogICAgIHJldHVybiB0cnVlOwogfQogCiBi
b29sIFNwb3RMaWdodFNvdXJjZTo6c2V0WShmbG9hdCB5KQogewotICAgIGlmIChtX3Bvc2l0aW9u
LnkoKSA9PSB5KQorICAgIGlmIChtX3VzZXJTcGFjZVBvc2l0aW9uLnkoKSA9PSB5KQogICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0gICAgbV9wb3NpdGlvbi5zZXRZKHkpOworICAgIG1fdXNlclNwYWNl
UG9zaXRpb24uc2V0WSh5KTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAogYm9vbCBTcG90TGlnaHRT
b3VyY2U6OnNldFooZmxvYXQgeikKIHsKLSAgICBpZiAobV9wb3NpdGlvbi56KCkgPT0geikKKyAg
ICBpZiAobV91c2VyU3BhY2VQb3NpdGlvbi56KCkgPT0geikKICAgICAgICAgcmV0dXJuIGZhbHNl
OwotICAgIG1fcG9zaXRpb24uc2V0Wih6KTsKKyAgICBtX3VzZXJTcGFjZVBvc2l0aW9uLnNldFoo
eik7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgU3BvdExpZ2h0U291cmNlOjpzZXRQb2lu
dHNBdFgoZmxvYXQgcG9pbnRzQXRYKQogewotICAgIGlmIChtX2RpcmVjdGlvbi54KCkgPT0gcG9p
bnRzQXRYKQorICAgIGlmIChtX3VzZXJTcGFjZVBvaW50c0F0LngoKSA9PSBwb2ludHNBdFgpCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBtX2RpcmVjdGlvbi5zZXRYKHBvaW50c0F0WCk7Cisg
ICAgbV91c2VyU3BhY2VQb2ludHNBdC5zZXRYKHBvaW50c0F0WCk7CiAgICAgcmV0dXJuIHRydWU7
CiB9CiAKIGJvb2wgU3BvdExpZ2h0U291cmNlOjpzZXRQb2ludHNBdFkoZmxvYXQgcG9pbnRzQXRZ
KQogewotICAgIGlmIChtX2RpcmVjdGlvbi55KCkgPT0gcG9pbnRzQXRZKQorICAgIGlmIChtX3Vz
ZXJTcGFjZVBvaW50c0F0LnkoKSA9PSBwb2ludHNBdFkpCiAgICAgICAgIHJldHVybiBmYWxzZTsK
LSAgICBtX2RpcmVjdGlvbi5zZXRZKHBvaW50c0F0WSk7CisgICAgbV91c2VyU3BhY2VQb2ludHNB
dC5zZXRZKHBvaW50c0F0WSk7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgU3BvdExpZ2h0
U291cmNlOjpzZXRQb2ludHNBdFooZmxvYXQgcG9pbnRzQXRaKQogewotICAgIGlmIChtX2RpcmVj
dGlvbi56KCkgPT0gcG9pbnRzQXRaKQorICAgIGlmIChtX3VzZXJTcGFjZVBvaW50c0F0LnooKSA9
PSBwb2ludHNBdFopCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBtX2RpcmVjdGlvbi5zZXRa
KHBvaW50c0F0Wik7CisgICAgbV91c2VyU3BhY2VQb2ludHNBdC5zZXRaKHBvaW50c0F0Wik7CiAg
ICAgcmV0dXJuIHRydWU7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvU3BvdExpZ2h0U291cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1Nwb3RMaWdodFNvdXJjZS5oCmluZGV4IDQxOTkxYWY3ZmI5
ODlhOTZmN2Q5MzU5NTYyMTA1Yzg2Nzg0ODcyNTUuLjM1MTUxNjM1MDc3ZWVmMGU3M2MyNmFlNDQy
YTVlYTUzNGZkMWYzYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvU3BvdExpZ2h0U291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9TcG90TGlnaHRTb3VyY2UuaApAQCAtMzUsOCArMzUsOCBAQCBw
dWJsaWM6CiAgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFNwb3RMaWdodFNvdXJjZShwb3Np
dGlvbiwgZGlyZWN0aW9uLCBzcGVjdWxhckV4cG9uZW50LCBsaW1pdGluZ0NvbmVBbmdsZSkpOwog
ICAgIH0KIAotICAgIGNvbnN0IEZsb2F0UG9pbnQzRCYgcG9zaXRpb24oKSBjb25zdCB7IHJldHVy
biBtX3Bvc2l0aW9uOyB9Ci0gICAgY29uc3QgRmxvYXRQb2ludDNEJiBkaXJlY3Rpb24oKSBjb25z
dCB7IHJldHVybiBtX2RpcmVjdGlvbjsgfQorICAgIGNvbnN0IEZsb2F0UG9pbnQzRCYgcG9zaXRp
b24oKSBjb25zdCB7IHJldHVybiBtX3VzZXJTcGFjZVBvc2l0aW9uOyB9CisgICAgY29uc3QgRmxv
YXRQb2ludDNEJiBkaXJlY3Rpb24oKSBjb25zdCB7IHJldHVybiBtX3VzZXJTcGFjZVBvaW50c0F0
OyB9CiAgICAgZmxvYXQgc3BlY3VsYXJFeHBvbmVudCgpIGNvbnN0IHsgcmV0dXJuIG1fc3BlY3Vs
YXJFeHBvbmVudDsgfQogICAgIGZsb2F0IGxpbWl0aW5nQ29uZUFuZ2xlKCkgY29uc3QgeyByZXR1
cm4gbV9saW1pdGluZ0NvbmVBbmdsZTsgfQogCkBAIC01MCwyNCArNTAsMjUgQEAgcHVibGljOgog
ICAgIGJvb2wgc2V0U3BlY3VsYXJFeHBvbmVudChmbG9hdCkgb3ZlcnJpZGU7CiAgICAgYm9vbCBz
ZXRMaW1pdGluZ0NvbmVBbmdsZShmbG9hdCkgb3ZlcnJpZGU7CiAKLSAgICB2b2lkIGluaXRQYWlu
dGluZ0RhdGEoUGFpbnRpbmdEYXRhJikgb3ZlcnJpZGU7CisgICAgdm9pZCBpbml0UGFpbnRpbmdE
YXRhKGNvbnN0IEZpbHRlckVmZmVjdCYsIFBhaW50aW5nRGF0YSYpIG92ZXJyaWRlOwogICAgIENv
bXB1dGVkTGlnaHRpbmdEYXRhIGNvbXB1dGVQaXhlbExpZ2h0aW5nRGF0YShjb25zdCBQYWludGlu
Z0RhdGEmLCBpbnQgeCwgaW50IHksIGZsb2F0IHopIGNvbnN0IGZpbmFsOwogCiAgICAgV1RGOjpU
ZXh0U3RyZWFtJiBleHRlcm5hbFJlcHJlc2VudGF0aW9uKFdURjo6VGV4dFN0cmVhbSYpIGNvbnN0
IG92ZXJyaWRlOwogCiBwcml2YXRlOgotICAgIFNwb3RMaWdodFNvdXJjZShjb25zdCBGbG9hdFBv
aW50M0QmIHBvc2l0aW9uLCBjb25zdCBGbG9hdFBvaW50M0QmIGRpcmVjdGlvbiwKLSAgICAgICAg
ZmxvYXQgc3BlY3VsYXJFeHBvbmVudCwgZmxvYXQgbGltaXRpbmdDb25lQW5nbGUpCisgICAgU3Bv
dExpZ2h0U291cmNlKGNvbnN0IEZsb2F0UG9pbnQzRCYgcG9zaXRpb24sIGNvbnN0IEZsb2F0UG9p
bnQzRCYgZGlyZWN0aW9uLCBmbG9hdCBzcGVjdWxhckV4cG9uZW50LCBmbG9hdCBsaW1pdGluZ0Nv
bmVBbmdsZSkKICAgICAgICAgOiBMaWdodFNvdXJjZShMU19TUE9UKQotICAgICAgICAsIG1fcG9z
aXRpb24ocG9zaXRpb24pCi0gICAgICAgICwgbV9kaXJlY3Rpb24oZGlyZWN0aW9uKQorICAgICAg
ICAsIG1fdXNlclNwYWNlUG9zaXRpb24ocG9zaXRpb24pCisgICAgICAgICwgbV91c2VyU3BhY2VQ
b2ludHNBdChkaXJlY3Rpb24pCiAgICAgICAgICwgbV9zcGVjdWxhckV4cG9uZW50KHNwZWN1bGFy
RXhwb25lbnQpCiAgICAgICAgICwgbV9saW1pdGluZ0NvbmVBbmdsZShsaW1pdGluZ0NvbmVBbmds
ZSkKICAgICB7CiAgICAgfQogCi0gICAgRmxvYXRQb2ludDNEIG1fcG9zaXRpb247Ci0gICAgRmxv
YXRQb2ludDNEIG1fZGlyZWN0aW9uOworICAgIEZsb2F0UG9pbnQzRCBtX3VzZXJTcGFjZVBvc2l0
aW9uOworICAgIEZsb2F0UG9pbnQzRCBtX3VzZXJTcGFjZVBvaW50c0F0OworCisgICAgRmxvYXRQ
b2ludDNEIG1fYnVmZmVyUG9zaXRpb247CiAKICAgICBmbG9hdCBtX3NwZWN1bGFyRXhwb25lbnQ7
CiAgICAgZmxvYXQgbV9saW1pdGluZ0NvbmVBbmdsZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHUmVzb3VyY2VGaWx0ZXJQcmltaXRpdmUuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdSZXNvdXJjZUZpbHRlclByaW1p
dGl2ZS5jcHAKaW5kZXggMGU2MmI3OTE5MmMwMDZmZWNkOTQyYjNhNzNhYjBlMzZkYjRkOWQwMy4u
MjBkNWE0YzBmMGYwMzI0YmVlNTY5NzUwN2Q2N2JiN2FiNjUxNjQyNSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdSZXNvdXJjZUZpbHRlclByaW1pdGl2
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdSZXNvdXJj
ZUZpbHRlclByaW1pdGl2ZS5jcHAKQEAgLTEwNCwxMSArMTA0LDEzIEBAIEZsb2F0UmVjdCBSZW5k
ZXJTVkdSZXNvdXJjZUZpbHRlclByaW1pdGl2ZTo6ZGV0ZXJtaW5lRmlsdGVyUHJpbWl0aXZlU3Vi
cmVnaW9uKEZpCiAKICAgICBGbG9hdFJlY3QgYWJzb2x1dGVTdWJyZWdpb24gPSBmaWx0ZXIuYWJz
b2x1dGVUcmFuc2Zvcm0oKS5tYXBSZWN0KHN1YnJlZ2lvbik7CiAgICAgRmxvYXRTaXplIGZpbHRl
clJlc29sdXRpb24gPSBmaWx0ZXIuZmlsdGVyUmVzb2x1dGlvbigpOwotICAgIGFic29sdXRlU3Vi
cmVnaW9uLnNjYWxlKGZpbHRlclJlc29sdXRpb24ud2lkdGgoKSwgZmlsdGVyUmVzb2x1dGlvbi5o
ZWlnaHQoKSk7CisgICAgYWJzb2x1dGVTdWJyZWdpb24uc2NhbGUoZmlsdGVyUmVzb2x1dGlvbik7
CisgICAgLy8gU2F2ZSB0aGlzIGJlZm9yZSBjbGlwcGluZyBzbyB3ZSBjYW4gdXNlIGl0IHRvIG1h
cCBsaWdodGluZyBwb2ludHMgZnJvbSB1c2VyIHNwYWNlIHRvIGJ1ZmZlciBjb29yZGluYXRlcy4K
KyAgICBlZmZlY3Quc2V0VW5jbGlwcGVkQWJzb2x1dGVTdWJyZWdpb24oYWJzb2x1dGVTdWJyZWdp
b24pOwogCiAgICAgLy8gQ2xpcCBldmVyeSBmaWx0ZXIgZWZmZWN0IHRvIHRoZSBmaWx0ZXIgcmVn
aW9uLgogICAgIEZsb2F0UmVjdCBhYnNvbHV0ZVNjYWxlZEZpbHRlclJlZ2lvbiA9IGZpbHRlci5m
aWx0ZXJSZWdpb24oKTsKLSAgICBhYnNvbHV0ZVNjYWxlZEZpbHRlclJlZ2lvbi5zY2FsZShmaWx0
ZXJSZXNvbHV0aW9uLndpZHRoKCksIGZpbHRlclJlc29sdXRpb24uaGVpZ2h0KCkpOworICAgIGFi
c29sdXRlU2NhbGVkRmlsdGVyUmVnaW9uLnNjYWxlKGZpbHRlclJlc29sdXRpb24pOwogICAgIGFi
c29sdXRlU3VicmVnaW9uLmludGVyc2VjdChhYnNvbHV0ZVNjYWxlZEZpbHRlclJlZ2lvbik7CiAK
ICAgICBlZmZlY3Quc2V0TWF4RWZmZWN0UmVjdChhYnNvbHV0ZVN1YnJlZ2lvbik7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXgg
YWJiZjUxYjFiM2JhYzE0ZGZmMzUyZmM2MDZkNmI3ZjMxNTk5NjBhNy4uZGUyZDA0Mzg1Mjg1MjI2
OTJmY2YxYWRkMzFjMmViOGY3NzZjYjc5OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE3LTEy
LTMxICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFNW
RyBsaWdodGluZyBmaWx0ZXIgbGlnaHRzIGFyZSBpbiB0aGUgd3JvbmcgY29vcmRpbmF0ZSBzeXN0
ZW0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTE0
NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogc3Zn
L2ZpbHRlcnMvZmVQb2ludExpZ2h0LWNvb3JkaW5hdGVzLWV4cGVjdGVkLnN2ZzogQWRkZWQuCisg
ICAgICAgICogc3ZnL2ZpbHRlcnMvZmVQb2ludExpZ2h0LWNvb3JkaW5hdGVzLnN2ZzogQWRkZWQu
CisgICAgICAgICogc3ZnL2ZpbHRlcnMvZmVTcG90TGlnaHQtY29vcmRpbmF0ZXMtZXhwZWN0ZWQu
c3ZnOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvZmlsdGVycy9mZVNwb3RMaWdodC1jb29yZGluYXRl
cy5zdmc6IEFkZGVkLgorICAgICAgICAqIHN2Zy9maWx0ZXJzL2hpZHBpL2ZlUG9pbnRMaWdodC1j
b29yZGluYXRlcy1leHBlY3RlZC5zdmc6IEFkZGVkLgorICAgICAgICAqIHN2Zy9maWx0ZXJzL2hp
ZHBpL2ZlUG9pbnRMaWdodC1jb29yZGluYXRlcy5zdmc6IEFkZGVkLgorICAgICAgICAqIHN2Zy9m
aWx0ZXJzL2hpZHBpL2ZlU3BvdExpZ2h0LWNvb3JkaW5hdGVzLWV4cGVjdGVkLnN2ZzogQWRkZWQu
CisgICAgICAgICogc3ZnL2ZpbHRlcnMvaGlkcGkvZmVTcG90TGlnaHQtY29vcmRpbmF0ZXMuc3Zn
OiBBZGRlZC4KKwogMjAxNy0xMi0zMCAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxl
LmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjI1MTIyKTogZmVQb2ludExpZ2h0cyBkb24n
dCB3b3JrCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvZmlsdGVycy9mZVBvaW50TGlnaHQt
Y29vcmRpbmF0ZXMtZXhwZWN0ZWQuc3ZnIGIvTGF5b3V0VGVzdHMvc3ZnL2ZpbHRlcnMvZmVQb2lu
dExpZ2h0LWNvb3JkaW5hdGVzLWV4cGVjdGVkLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZDE4OTE4N2Q1MTA5
N2IyYzcxYWRhNzUzNWM4Mjk0ZDg2ZmI4MmM4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvc3ZnL2ZpbHRlcnMvZmVQb2ludExpZ2h0LWNvb3JkaW5hdGVzLWV4cGVjdGVkLnN2ZwpAQCAt
MCwwICsxLDEyIEBACisKKzxzdmcgd2lkdGg9IjUwMHB4IiBoZWlnaHQ9IjYxMHB4IiB4bWxucz0i
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorPGRlZnM+CisgICAgPGZpbHRlciBpZD0iZmls
dGVyIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giPgorICAgICAgICA8ZmVGbG9vZCB4
PSItMTIwIiB5PSI4NSIvPgorICAgIDwvZmlsdGVyPgorPC9kZWZzPgorPHJlY3QgeD0iMTEwIiB5
PSIxNTAiIHdpZHRoPSI0MDAiIGhlaWdodD0iMzIwIiBmaWxsPSJub25lIiBmaWx0ZXI9InVybCgj
ZmlsdGVyKSIvPgorPGNpcmNsZSBjeD0iMjUwIiBjeT0iMjAwIiByPSI4MCIgZmlsbD0icmdiKDAs
IDI1NSwgMCkiLz4KKzxjaXJjbGUgY3g9IjI1MCIgY3k9IjIwMCIgcj0iODUiIGZpbGw9Im5vbmUi
IHN0cm9rZT0iZ3JheSIgc3Ryb2tlLXdpZHRoPSIyMCIvPgorCis8L3N2Zz4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3N2Zy9maWx0ZXJzL2ZlUG9pbnRMaWdodC1jb29yZGluYXRlcy5zdmcgYi9M
YXlvdXRUZXN0cy9zdmcvZmlsdGVycy9mZVBvaW50TGlnaHQtY29vcmRpbmF0ZXMuc3ZnCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjZhOTQwMjYyNWNjNmMwNmQ1YWJhNWY1NjMyZjgzZDk4YzFmNmNhYzUKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcvZmlsdGVycy9mZVBvaW50TGlnaHQtY29vcmRpbmF0
ZXMuc3ZnCkBAIC0wLDAgKzEsMTYgQEAKKzxzdmcgd2lkdGg9IjUwMHB4IiBoZWlnaHQ9IjYxMHB4
IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorPGRlZnM+CisgICAgPGZpbHRl
ciBpZD0iZmlsdGVyIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giPgorICAgICAgICA8
ZmVGbG9vZC8+CisgICAgICAgIDxmZURpZmZ1c2VMaWdodGluZyBsaWdodGluZy1jb2xvcj0icmdi
KDAsIDI1NSwgMCkiIHg9Ii0xMjAiIHk9Ijg1Ij4KKyAgICAgICAgICAgIDxmZVBvaW50TGlnaHQg
eD0iMjUwIiB5PSIyMDAiIHo9IjUwIi8+CisgICAgICAgIDwvZmVEaWZmdXNlTGlnaHRpbmc+Cisg
ICAgICAgIDxmZUNvbXBvbmVudFRyYW5zZmVyPgorICAgICAgICAgICAgPGZlRnVuY0cgdHlwZT0i
ZGlzY3JldGUiIHRhYmxlVmFsdWVzPSIwIDEiLz4KKyAgICAgICAgPC9mZUNvbXBvbmVudFRyYW5z
ZmVyPgorICAgIDwvZmlsdGVyPgorPC9kZWZzPgorPHJlY3QgeD0iMTEwIiB5PSIxNTAiIHdpZHRo
PSI0MDAiIGhlaWdodD0iMzIwIiBmaWxsPSJub25lIiBmaWx0ZXI9InVybCgjZmlsdGVyKSIvPgor
PCEtLSBNYXNrIG9mZiBzbGlnaHQgZGlmZmVyZW5jZXMgaW4gcG9pbnQgbGlnaHQgcmFkaXVzIC0t
PgorPGNpcmNsZSBjeD0iMjUwIiBjeT0iMjAwIiByPSI4NSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJn
cmF5IiBzdHJva2Utd2lkdGg9IjIwIi8+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3N2Zy9maWx0ZXJzL2ZlU3BvdExpZ2h0LWNvb3JkaW5hdGVzLWV4cGVjdGVkLnN2ZyBiL0xheW91
dFRlc3RzL3N2Zy9maWx0ZXJzL2ZlU3BvdExpZ2h0LWNvb3JkaW5hdGVzLWV4cGVjdGVkLnN2Zwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5jNDE5MTM4NjVlNDYxYTQwYzk3M2ZiNjdiMDg5NDYxZmVjMzdhNDE2Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2ZpbHRlcnMvZmVTcG90TGlnaHQtY29vcmRp
bmF0ZXMtZXhwZWN0ZWQuc3ZnCkBAIC0wLDAgKzEsMTAgQEAKKzxzdmcgd2lkdGg9IjUwMHB4IiBo
ZWlnaHQ9IjYxMHB4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorPGRlZnM+
CisgICAgPGZpbHRlciBpZD0iZmlsdGVyIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3gi
PgorICAgICAgICA8ZmVGbG9vZCB4PSItMTIwIiB5PSI4NSIvPgorICAgIDwvZmlsdGVyPgorPC9k
ZWZzPgorPHJlY3QgeD0iMTEwIiB5PSIxNTAiIHdpZHRoPSI0NTAiIGhlaWdodD0iMzIwIiBmaWxs
PSJub25lIiBmaWx0ZXI9InVybCgjZmlsdGVyKSIvPgorPGVsbGlwc2UgY3g9IjIyMCIgY3k9IjI3
MCIgcng9Ijk1IiByeT0iNTUiIGZpbGw9InJnYigwLCAyNTUsIDApIiBzdHlsZT0idHJhbnNmb3Jt
OiByb3RhdGUoNTBkZWcpOyB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOyB0cmFuc2Zvcm0tYm94
OiBmaWxsLWJveDsiLz4KKzxlbGxpcHNlIGN4PSIyMjAiIGN5PSIyNzAiIHJ4PSIxMDAiIHJ5PSI2
MCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJncmF5IiBzdHJva2Utd2lkdGg9IjIwIiBzdHlsZT0idHJh
bnNmb3JtOiByb3RhdGUoNTBkZWcpOyB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOyB0cmFuc2Zv
cm0tYm94OiBmaWxsLWJveDsiLz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3Zn
L2ZpbHRlcnMvZmVTcG90TGlnaHQtY29vcmRpbmF0ZXMuc3ZnIGIvTGF5b3V0VGVzdHMvc3ZnL2Zp
bHRlcnMvZmVTcG90TGlnaHQtY29vcmRpbmF0ZXMuc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE3ZjgxMzQ3YWZj
ZTI5YzU4NGYzMDRiZThlMDBkZDgzNzBiMmJkZjkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9zdmcvZmlsdGVycy9mZVNwb3RMaWdodC1jb29yZGluYXRlcy5zdmcKQEAgLTAsMCArMSwx
NSBAQAorPHN2ZyB3aWR0aD0iNTAwcHgiIGhlaWdodD0iNjEwcHgiIHhtbG5zPSJodHRwOi8vd3d3
LnczLm9yZy8yMDAwL3N2ZyI+Cis8ZGVmcz4KKyAgICA8ZmlsdGVyIGlkPSJmaWx0ZXIiIGZpbHRl
clVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCI+CisgICAgICAgIDxmZUZsb29kLz4KKyAgICAgICAg
PGZlRGlmZnVzZUxpZ2h0aW5nIGxpZ2h0aW5nLWNvbG9yPSJyZ2IoMCwgMjU1LCAwKSIgeD0iLTEy
MCIgeT0iODUiPgorICAgICAgICAgICAgPGZlU3BvdExpZ2h0IHg9Ii0xMCIgeT0iLTIwIiB6PSIz
MDAiIHBvaW50c0F0WD0iMTgwIiBwb2ludHNBdFk9IjIyMCIgcG9pbnRzQXRaPSI1MCIgbGltaXRp
bmdDb25lQW5nbGU9IjEyIiAvPgorICAgICAgICA8L2ZlRGlmZnVzZUxpZ2h0aW5nPgorICAgICAg
ICA8ZmVDb21wb25lbnRUcmFuc2Zlcj4KKyAgICAgICAgICAgIDxmZUZ1bmNHIHR5cGU9ImRpc2Ny
ZXRlIiB0YWJsZVZhbHVlcz0iMCAxIi8+CisgICAgICAgIDwvZmVDb21wb25lbnRUcmFuc2Zlcj4K
KyAgICA8L2ZpbHRlcj4KKzwvZGVmcz4KKzxyZWN0IHg9IjExMCIgeT0iMTUwIiB3aWR0aD0iNDUw
IiBoZWlnaHQ9IjMyMCIgZmlsbD0ibm9uZSIgZmlsdGVyPSJ1cmwoI2ZpbHRlcikiLz4KKzxlbGxp
cHNlIGN4PSIyMjAiIGN5PSIyNzAiIHJ4PSIxMDAiIHJ5PSI2MCIgZmlsbD0ibm9uZSIgc3Ryb2tl
PSJncmF5IiBzdHJva2Utd2lkdGg9IjIwIiBzdHlsZT0idHJhbnNmb3JtOiByb3RhdGUoNTBkZWcp
OyB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOyB0cmFuc2Zvcm0tYm94OiBmaWxsLWJveDsiLz4K
Kzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2ZpbHRlcnMvaGlkcGkvZmVQb2lu
dExpZ2h0LWNvb3JkaW5hdGVzLWV4cGVjdGVkLnN2ZyBiL0xheW91dFRlc3RzL3N2Zy9maWx0ZXJz
L2hpZHBpL2ZlUG9pbnRMaWdodC1jb29yZGluYXRlcy1leHBlY3RlZC5zdmcKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
ZmQxODkxODdkNTEwOTdiMmM3MWFkYTc1MzVjODI5NGQ4NmZiODJjOAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL3N2Zy9maWx0ZXJzL2hpZHBpL2ZlUG9pbnRMaWdodC1jb29yZGluYXRl
cy1leHBlY3RlZC5zdmcKQEAgLTAsMCArMSwxMiBAQAorCis8c3ZnIHdpZHRoPSI1MDBweCIgaGVp
Z2h0PSI2MTBweCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKzxkZWZzPgor
ICAgIDxmaWx0ZXIgaWQ9ImZpbHRlciIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94Ij4K
KyAgICAgICAgPGZlRmxvb2QgeD0iLTEyMCIgeT0iODUiLz4KKyAgICA8L2ZpbHRlcj4KKzwvZGVm
cz4KKzxyZWN0IHg9IjExMCIgeT0iMTUwIiB3aWR0aD0iNDAwIiBoZWlnaHQ9IjMyMCIgZmlsbD0i
bm9uZSIgZmlsdGVyPSJ1cmwoI2ZpbHRlcikiLz4KKzxjaXJjbGUgY3g9IjI1MCIgY3k9IjIwMCIg
cj0iODAiIGZpbGw9InJnYigwLCAyNTUsIDApIi8+Cis8Y2lyY2xlIGN4PSIyNTAiIGN5PSIyMDAi
IHI9Ijg1IiBmaWxsPSJub25lIiBzdHJva2U9ImdyYXkiIHN0cm9rZS13aWR0aD0iMjAiLz4KKwor
PC9zdmc+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvZmlsdGVycy9oaWRwaS9mZVBvaW50
TGlnaHQtY29vcmRpbmF0ZXMuc3ZnIGIvTGF5b3V0VGVzdHMvc3ZnL2ZpbHRlcnMvaGlkcGkvZmVQ
b2ludExpZ2h0LWNvb3JkaW5hdGVzLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42YTk0MDI2MjVjYzZjMDZkNWFi
YTVmNTYzMmY4M2Q5OGMxZjZjYWM1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3Zn
L2ZpbHRlcnMvaGlkcGkvZmVQb2ludExpZ2h0LWNvb3JkaW5hdGVzLnN2ZwpAQCAtMCwwICsxLDE2
IEBACis8c3ZnIHdpZHRoPSI1MDBweCIgaGVpZ2h0PSI2MTBweCIgeG1sbnM9Imh0dHA6Ly93d3cu
dzMub3JnLzIwMDAvc3ZnIj4KKzxkZWZzPgorICAgIDxmaWx0ZXIgaWQ9ImZpbHRlciIgZmlsdGVy
VW5pdHM9Im9iamVjdEJvdW5kaW5nQm94Ij4KKyAgICAgICAgPGZlRmxvb2QvPgorICAgICAgICA8
ZmVEaWZmdXNlTGlnaHRpbmcgbGlnaHRpbmctY29sb3I9InJnYigwLCAyNTUsIDApIiB4PSItMTIw
IiB5PSI4NSI+CisgICAgICAgICAgICA8ZmVQb2ludExpZ2h0IHg9IjI1MCIgeT0iMjAwIiB6PSI1
MCIvPgorICAgICAgICA8L2ZlRGlmZnVzZUxpZ2h0aW5nPgorICAgICAgICA8ZmVDb21wb25lbnRU
cmFuc2Zlcj4KKyAgICAgICAgICAgIDxmZUZ1bmNHIHR5cGU9ImRpc2NyZXRlIiB0YWJsZVZhbHVl
cz0iMCAxIi8+CisgICAgICAgIDwvZmVDb21wb25lbnRUcmFuc2Zlcj4KKyAgICA8L2ZpbHRlcj4K
KzwvZGVmcz4KKzxyZWN0IHg9IjExMCIgeT0iMTUwIiB3aWR0aD0iNDAwIiBoZWlnaHQ9IjMyMCIg
ZmlsbD0ibm9uZSIgZmlsdGVyPSJ1cmwoI2ZpbHRlcikiLz4KKzwhLS0gTWFzayBvZmYgc2xpZ2h0
IGRpZmZlcmVuY2VzIGluIHBvaW50IGxpZ2h0IHJhZGl1cyAtLT4KKzxjaXJjbGUgY3g9IjI1MCIg
Y3k9IjIwMCIgcj0iODUiIGZpbGw9Im5vbmUiIHN0cm9rZT0iZ3JheSIgc3Ryb2tlLXdpZHRoPSIy
MCIvPgorPC9zdmc+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvZmlsdGVycy9oaWRwaS9m
ZVNwb3RMaWdodC1jb29yZGluYXRlcy1leHBlY3RlZC5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvZmls
dGVycy9oaWRwaS9mZVNwb3RMaWdodC1jb29yZGluYXRlcy1leHBlY3RlZC5zdmcKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYzQxOTEzODY1ZTQ2MWE0MGM5NzNmYjY3YjA4OTQ2MWZlYzM3YTQxNgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL3N2Zy9maWx0ZXJzL2hpZHBpL2ZlU3BvdExpZ2h0LWNvb3JkaW5h
dGVzLWV4cGVjdGVkLnN2ZwpAQCAtMCwwICsxLDEwIEBACis8c3ZnIHdpZHRoPSI1MDBweCIgaGVp
Z2h0PSI2MTBweCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKzxkZWZzPgor
ICAgIDxmaWx0ZXIgaWQ9ImZpbHRlciIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94Ij4K
KyAgICAgICAgPGZlRmxvb2QgeD0iLTEyMCIgeT0iODUiLz4KKyAgICA8L2ZpbHRlcj4KKzwvZGVm
cz4KKzxyZWN0IHg9IjExMCIgeT0iMTUwIiB3aWR0aD0iNDUwIiBoZWlnaHQ9IjMyMCIgZmlsbD0i
bm9uZSIgZmlsdGVyPSJ1cmwoI2ZpbHRlcikiLz4KKzxlbGxpcHNlIGN4PSIyMjAiIGN5PSIyNzAi
IHJ4PSI5NSIgcnk9IjU1IiBmaWxsPSJyZ2IoMCwgMjU1LCAwKSIgc3R5bGU9InRyYW5zZm9ybTog
cm90YXRlKDUwZGVnKTsgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsgdHJhbnNmb3JtLWJveDog
ZmlsbC1ib3g7Ii8+Cis8ZWxsaXBzZSBjeD0iMjIwIiBjeT0iMjcwIiByeD0iMTAwIiByeT0iNjAi
IGZpbGw9Im5vbmUiIHN0cm9rZT0iZ3JheSIgc3Ryb2tlLXdpZHRoPSIyMCIgc3R5bGU9InRyYW5z
Zm9ybTogcm90YXRlKDUwZGVnKTsgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsgdHJhbnNmb3Jt
LWJveDogZmlsbC1ib3g7Ii8+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9m
aWx0ZXJzL2hpZHBpL2ZlU3BvdExpZ2h0LWNvb3JkaW5hdGVzLnN2ZyBiL0xheW91dFRlc3RzL3N2
Zy9maWx0ZXJzL2hpZHBpL2ZlU3BvdExpZ2h0LWNvb3JkaW5hdGVzLnN2ZwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5h
N2Y4MTM0N2FmY2UyOWM1ODRmMzA0YmU4ZTAwZGQ4MzcwYjJiZGY5Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvc3ZnL2ZpbHRlcnMvaGlkcGkvZmVTcG90TGlnaHQtY29vcmRpbmF0ZXMu
c3ZnCkBAIC0wLDAgKzEsMTUgQEAKKzxzdmcgd2lkdGg9IjUwMHB4IiBoZWlnaHQ9IjYxMHB4IiB4
bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorPGRlZnM+CisgICAgPGZpbHRlciBp
ZD0iZmlsdGVyIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giPgorICAgICAgICA8ZmVG
bG9vZC8+CisgICAgICAgIDxmZURpZmZ1c2VMaWdodGluZyBsaWdodGluZy1jb2xvcj0icmdiKDAs
IDI1NSwgMCkiIHg9Ii0xMjAiIHk9Ijg1Ij4KKyAgICAgICAgICAgIDxmZVNwb3RMaWdodCB4PSIt
MTAiIHk9Ii0yMCIgej0iMzAwIiBwb2ludHNBdFg9IjE4MCIgcG9pbnRzQXRZPSIyMjAiIHBvaW50
c0F0Wj0iNTAiIGxpbWl0aW5nQ29uZUFuZ2xlPSIxMiIgLz4KKyAgICAgICAgPC9mZURpZmZ1c2VM
aWdodGluZz4KKyAgICAgICAgPGZlQ29tcG9uZW50VHJhbnNmZXI+CisgICAgICAgICAgICA8ZmVG
dW5jRyB0eXBlPSJkaXNjcmV0ZSIgdGFibGVWYWx1ZXM9IjAgMSIvPgorICAgICAgICA8L2ZlQ29t
cG9uZW50VHJhbnNmZXI+CisgICAgPC9maWx0ZXI+Cis8L2RlZnM+Cis8cmVjdCB4PSIxMTAiIHk9
IjE1MCIgd2lkdGg9IjQ1MCIgaGVpZ2h0PSIzMjAiIGZpbGw9Im5vbmUiIGZpbHRlcj0idXJsKCNm
aWx0ZXIpIi8+Cis8ZWxsaXBzZSBjeD0iMjIwIiBjeT0iMjcwIiByeD0iMTAwIiByeT0iNjAiIGZp
bGw9Im5vbmUiIHN0cm9rZT0iZ3JheSIgc3Ryb2tlLXdpZHRoPSIyMCIgc3R5bGU9InRyYW5zZm9y
bTogcm90YXRlKDUwZGVnKTsgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsgdHJhbnNmb3JtLWJv
eDogZmlsbC1ib3g7Ii8+Cis8L3N2Zz4K
</data>

          </attachment>
      

    </bug>

</bugzilla>