<?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>215664</bug_id>
          
          <creation_ts>2020-08-19 14:47:52 -0700</creation_ts>
          <short_desc>[macOS] Web pages are not responding correctly to changes in &quot;Reduce motion&quot; setting</short_desc>
          <delta_ts>2020-08-21 09:16:53 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Per Arne Vollan">pvollan</reporter>
          <assigned_to name="Per Arne Vollan">pvollan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>darin</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1681482</commentid>
    <comment_count>0</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-19 14:47:52 -0700</bug_when>
    <thetext>Web pages are not responding correctly to changes in the &quot;Reduce motion&quot; accessibility setting under System Preferences &gt; Accessibility &gt; Display. This can for example be seen on https://webkit.org/blog-files/prefers-reduced-motion/prm.htm, while changing the setting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681483</commentid>
    <comment_count>1</comment_count>
      <attachid>406875</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-19 14:59:21 -0700</bug_when>
    <thetext>Created attachment 406875
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681505</commentid>
    <comment_count>2</comment_count>
      <attachid>406880</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-19 15:51:58 -0700</bug_when>
    <thetext>Created attachment 406880
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681506</commentid>
    <comment_count>3</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-19 15:52:46 -0700</bug_when>
    <thetext>&lt;rdar://problem/66343795&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681518</commentid>
    <comment_count>4</comment_count>
      <attachid>406880</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-08-19 16:17:26 -0700</bug_when>
    <thetext>Comment on attachment 406880
Patch

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

&gt; Source/WebKit/ChangeLog:3
&gt; +        [macOS] Web pages are not responding correctly to changes in &quot;Reduce motion&quot; setting

How did we happen to overlook this one but not others? Are there any more of these?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681527</commentid>
    <comment_count>5</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-19 16:43:28 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #4)
&gt; Comment on attachment 406880 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=406880&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/ChangeLog:3
&gt; &gt; +        [macOS] Web pages are not responding correctly to changes in &quot;Reduce motion&quot; setting
&gt; 
&gt; How did we happen to overlook this one but not others? Are there any more of
&gt; these?

Yes, there are potentially more of these cases, since this race is a general issue when updating preferences from the UI process, where the race is usually won by the notification. It might be possible to solve this in a more general way, but I have not been able to think of a way to do that so far. I will try to think of a more general solution.

Thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681687</commentid>
    <comment_count>6</comment_count>
      <attachid>406930</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-20 07:31:42 -0700</bug_when>
    <thetext>Created attachment 406930
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681689</commentid>
    <comment_count>7</comment_count>
      <attachid>406931</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-20 08:08:17 -0700</bug_when>
    <thetext>Created attachment 406931
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681698</commentid>
    <comment_count>8</comment_count>
      <attachid>406935</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-20 08:58:07 -0700</bug_when>
    <thetext>Created attachment 406935
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681700</commentid>
    <comment_count>9</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-20 09:06:40 -0700</bug_when>
    <thetext>The new API test is succeeding locally, but failing on the bots.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681709</commentid>
    <comment_count>10</comment_count>
      <attachid>406937</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-20 09:30:09 -0700</bug_when>
    <thetext>Created attachment 406937
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681761</commentid>
    <comment_count>11</comment_count>
      <attachid>406953</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-20 12:13:57 -0700</bug_when>
    <thetext>Created attachment 406953
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681773</commentid>
    <comment_count>12</comment_count>
      <attachid>406955</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-20 12:40:16 -0700</bug_when>
    <thetext>Created attachment 406955
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681840</commentid>
    <comment_count>13</comment_count>
      <attachid>406975</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-20 15:31:01 -0700</bug_when>
    <thetext>Created attachment 406975
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681864</commentid>
    <comment_count>14</comment_count>
      <attachid>406978</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-20 16:48:12 -0700</bug_when>
    <thetext>Created attachment 406978
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681875</commentid>
    <comment_count>15</comment_count>
      <attachid>406981</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-20 17:21:51 -0700</bug_when>
    <thetext>Created attachment 406981
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681895</commentid>
    <comment_count>16</comment_count>
      <attachid>406988</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-20 17:51:31 -0700</bug_when>
    <thetext>Created attachment 406988
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681909</commentid>
    <comment_count>17</comment_count>
      <attachid>406995</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-20 18:37:54 -0700</bug_when>
    <thetext>Created attachment 406995
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681912</commentid>
    <comment_count>18</comment_count>
      <attachid>406997</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-08-20 19:03:29 -0700</bug_when>
    <thetext>Created attachment 406997
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681916</commentid>
    <comment_count>19</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-08-20 19:31:45 -0700</bug_when>
    <thetext>Committed r265996: &lt;https://trac.webkit.org/changeset/265996&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 406997.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681923</commentid>
    <comment_count>20</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-08-20 20:23:19 -0700</bug_when>
    <thetext>How many other preferences are going to suffer from this same bug?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681972</commentid>
    <comment_count>21</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-08-21 09:16:53 -0700</bug_when>
    <thetext>I asked the same question and the answer is in comment #5.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406875</attachid>
            <date>2020-08-19 14:59:21 -0700</date>
            <delta_ts>2020-08-19 15:51:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215664-20200819145920.patch</filename>
            <type>text/plain</type>
            <size>5012</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjY1ODk4KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4
LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMgaW4g
IlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERlY2xhcmUgbm90aWZpY2F0aW9uIHNlbnQgd2hlbiB0aGUgIlJlZHVj
ZSBtb3Rpb24iIHNldHRpbmcgaXMgY2hhbmdlZC4KKyAKKyAgICAgICAgKiBwYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmg6CisKIDIwMjAtMDgtMTkgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlA
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gTW92ZSBzdGVwcGVyIHBhaW50aW5nIGNvZGUg
b2ZmIG9mIENhcmJvbiBBUEkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
bWFjL0hJU2VydmljZXNTUEkuaAkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ5LDYg
KzE0OSw4IEBAIEFYQ2xpZW50VHlwZSBfQVhHZXRDbGllbnRGb3JDdXJyZW50UmVxdWUKIHZvaWQg
X0FYU2V0Q2xpZW50SWRlbnRpZmljYXRpb25PdmVycmlkZShBWENsaWVudFR5cGUpOwogI2VuZGlm
IC8vIEhBVkUoQVhfQ0xJRU5UX1RZUEUpCiAKK2V4dGVybiBDRlN0cmluZ1JlZiBrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRpb247CisKIFdURl9FWFRFUk5f
Q19FTkQKIAogI2VuZGlmIC8vIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCkluZGV4OiBTb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwko
cmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0wOC0xOSAgUGVyIEFybmUgVm9sbGFuICA8cHZvbGxh
bkBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBXZWIgcGFnZXMgYXJlIG5vdCByZXNwb25k
aW5nIGNvcnJlY3RseSB0byBjaGFuZ2VzIGluICJSZWR1Y2UgbW90aW9uIiBzZXR0aW5nCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU2NjQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGhhcHBlbnMg
YmVjYXVzZSB0aGVyZSBpcyBhIHJhY2UgYmV0d2VlbiB0aGUgcHJlZmVyZW5jZSBjaGFuZ2UgYW5k
IG5vdGlmaWNhdGlvbiBiZWluZyByZWNlaXZlZCBpbiB0aGUgV2ViQ29udGVudAorICAgICAgICBw
cm9jZXNzLiBUaGlzIHJhY2UgaXMgdXN1YWxseSB3b24gYnkgdGhlIG5vdGlmaWNhdGlvbiwgd2hp
Y2ggdGhlbiByZWFkcyB0aGUgd3JvbmcgcHJlZmVyZW5jZSB2YWx1ZSB3aGVuIGJlaW5nIGhhbmRs
ZWQuCisgICAgICAgIFRoaXMgYnVnIHdhcyBpbnRyb2R1Y2VkIHdoZW4gYWNjZXNzIHRvIHRoZSBw
cmVmZXJlbmNlIGRhZW1vbiB3YXMgY2xvc2VkIGluIHRoZSBXZWJDb250ZW50IHByb2Nlc3MsIGFu
ZCBwcmVmZXJlbmNlcworICAgICAgICB3ZXJlIHVwZGF0ZWQgZnJvbSB0aGUgVUkgcHJvY2Vzcy4g
VGhpcyBwYXRjaCBhZGRyZXNzZXMgdGhpcyBpc3N1ZSBieSByZS1wb3N0aW5nIHRoZSBub3RpZmlj
YXRpb24gd2hlbiB0aGUgcHJlZmVyZW5jZQorICAgICAgICB2YWx1ZSBpcyB1cGRhdGVkIGluIHRo
ZSBXZWJDb250ZW50IHByb2Nlc3MuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLgorCisgICAgICAg
ICogV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6
OnJlZHVjZU1vdGlvblByZWZlcmVuY2VLZXkpOgorICAgICAgICAoV2ViS2l0OjpkaXNwYXRjaFNp
bXVsYXRlZE5vdGlmaWNhdGlvbnNGb3JQcmVmZXJlbmNlQ2hhbmdlKToKKwogMjAyMC0wOC0xNyAg
Q2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIEF1ZGlvQ29udGV4dC5n
ZXRPdXRwdXRUaW1lc3RhbXAoKSBpcyBtaXNzaW5nCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHJldmlzaW9uIDI2NTgxMSkK
KysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHdv
cmtpbmcgY29weSkKQEAgLTEyNCw2ICsxMjQsNyBAQAogI2ltcG9ydCAiV2ViU3dpdGNoaW5nR1BV
Q2xpZW50LmgiCiAjaW1wb3J0IDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMTWFuYWdl
ci5oPgogI2ltcG9ydCA8V2ViQ29yZS9TY3JvbGxiYXJUaGVtZU1hYy5oPgorI2ltcG9ydCA8cGFs
L3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNTY3JvbGxl
ckltcFNQSS5oPgogI2VuZGlmCiAKQEAgLTkxMCw2ICs5MTEsMTIgQEAgc3RhdGljIGNvbnN0IFdU
Rjo6U3RyaW5nJiB1c2VySGlnaGxpZ2h0QwogICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxXVEY6
OlN0cmluZz4gdXNlckhpZ2hsaWdodENvbG9yUHJlZmVyZW5jZUtleShNQUtFX1NUQVRJQ19TVFJJ
TkdfSU1QTCgiQXBwbGVIaWdobGlnaHRDb2xvciIpKTsKICAgICByZXR1cm4gdXNlckhpZ2hsaWdo
dENvbG9yUHJlZmVyZW5jZUtleTsKIH0KKworc3RhdGljIGNvbnN0IFdURjo6U3RyaW5nJiByZWR1
Y2VNb3Rpb25QcmVmZXJlbmNlS2V5KCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8V1RG
OjpTdHJpbmc+IGtleShNQUtFX1NUQVRJQ19TVFJJTkdfSU1QTCgicmVkdWNlTW90aW9uIikpOwor
ICAgIHJldHVybiBrZXk7Cit9CiAjZW5kaWYKIAogc3RhdGljIHZvaWQgZGlzcGF0Y2hTaW11bGF0
ZWROb3RpZmljYXRpb25zRm9yUHJlZmVyZW5jZUNoYW5nZShjb25zdCBTdHJpbmcmIGtleSkKQEAg
LTkyMCwxNSArOTI3LDE3IEBAIHN0YXRpYyB2b2lkIGRpc3BhdGNoU2ltdWxhdGVkTm90aWZpY2F0
aW8KICAgICAvLyBvZiB0aGUgc3lzdGVtLCB3ZSBtdXN0IHJlLXBvc3QgdGhlIG5vdGlmaWNhdGlv
biBpbiB0aGUgV2ViIENvbnRlbnQgcHJvY2VzcyBhZnRlciB1cGRhdGluZyB0aGUgZGVmYXVsdC4K
ICAgICAKICAgICBpZiAoa2V5ID09IHVzZXJBY2NlbnRDb2xvclByZWZlcmVuY2VLZXkoKSkgewot
ICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90
aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAgICAgICBhdXRvIG5vdGlmaWNhdGlv
bkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKICAgICAgICAg
W25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9uTmFtZTpAImtDVUlOb3RpZmljYXRp
b25BcXVhQ29sb3JWYXJpYW50Q2hhbmdlZCIgb2JqZWN0Om5pbF07CiAgICAgICAgIFtub3RpZmlj
YXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6QCJOU1N5c3RlbUNvbG9yc1dpbGxDaGFu
Z2VOb3RpZmljYXRpb24iIG9iamVjdDpuaWxdOwogICAgICAgICBbbm90aWZpY2F0aW9uQ2VudGVy
IHBvc3ROb3RpZmljYXRpb25OYW1lOk5TU3lzdGVtQ29sb3JzRGlkQ2hhbmdlTm90aWZpY2F0aW9u
IG9iamVjdDpuaWxdOwotICAgIH0KLSAgICBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclBy
ZWZlcmVuY2VLZXkoKSkgewotICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0
aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAgIH0g
ZWxzZSBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclByZWZlcmVuY2VLZXkoKSkgeworICAg
ICAgICBhdXRvIG5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZh
dWx0Q2VudGVyXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9u
TmFtZTpAIk5TU3lzdGVtQ29sb3JzV2lsbENoYW5nZU5vdGlmaWNhdGlvbiIgb2JqZWN0Om5pbF07
CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6TlNTeXN0
ZW1Db2xvcnNEaWRDaGFuZ2VOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07CisgICAgfSBlbHNlIGlm
IChrZXkgPT0gcmVkdWNlTW90aW9uUHJlZmVyZW5jZUtleSgpKSB7CisgICAgICAgIGF1dG8gbm90
aWZpY2F0aW9uQ2VudGVyID0gQ0ZOb3RpZmljYXRpb25DZW50ZXJHZXREaXN0cmlidXRlZENlbnRl
cigpOworICAgICAgICBDRk5vdGlmaWNhdGlvbkNlbnRlclBvc3ROb3RpZmljYXRpb24obm90aWZp
Y2F0aW9uQ2VudGVyLCBrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3Rp
ZmljYXRpb24sIG51bGxwdHIsIG51bGxwdHIsIHRydWUpOwogICAgIH0KICNlbmRpZgogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406880</attachid>
            <date>2020-08-19 15:51:58 -0700</date>
            <delta_ts>2020-08-19 16:17:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215664-20200819155158.patch</filename>
            <type>text/plain</type>
            <size>13214</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjY1ODk4KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4
LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMgaW4g
IlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERlY2xhcmUgbm90aWZpY2F0aW9uIHNlbnQgd2hlbiB0aGUgIlJlZHVj
ZSBtb3Rpb24iIHNldHRpbmcgaXMgY2hhbmdlZC4KKyAKKyAgICAgICAgKiBwYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmg6CisKIDIwMjAtMDgtMTkgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlA
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gTW92ZSBzdGVwcGVyIHBhaW50aW5nIGNvZGUg
b2ZmIG9mIENhcmJvbiBBUEkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
bWFjL0hJU2VydmljZXNTUEkuaAkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ5LDYg
KzE0OSw4IEBAIEFYQ2xpZW50VHlwZSBfQVhHZXRDbGllbnRGb3JDdXJyZW50UmVxdWUKIHZvaWQg
X0FYU2V0Q2xpZW50SWRlbnRpZmljYXRpb25PdmVycmlkZShBWENsaWVudFR5cGUpOwogI2VuZGlm
IC8vIEhBVkUoQVhfQ0xJRU5UX1RZUEUpCiAKK2V4dGVybiBDRlN0cmluZ1JlZiBrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRpb247CisKIFdURl9FWFRFUk5f
Q19FTkQKIAogI2VuZGlmIC8vIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCkluZGV4OiBTb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwko
cmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0wOC0xOSAgUGVyIEFybmUgVm9sbGFuICA8cHZvbGxh
bkBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBXZWIgcGFnZXMgYXJlIG5vdCByZXNwb25k
aW5nIGNvcnJlY3RseSB0byBjaGFuZ2VzIGluICJSZWR1Y2UgbW90aW9uIiBzZXR0aW5nCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU2NjQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGhhcHBlbnMg
YmVjYXVzZSB0aGVyZSBpcyBhIHJhY2UgYmV0d2VlbiB0aGUgcHJlZmVyZW5jZSBjaGFuZ2UgYW5k
IG5vdGlmaWNhdGlvbiBiZWluZyByZWNlaXZlZCBpbiB0aGUgV2ViQ29udGVudAorICAgICAgICBw
cm9jZXNzLiBUaGlzIHJhY2UgaXMgdXN1YWxseSB3b24gYnkgdGhlIG5vdGlmaWNhdGlvbiwgd2hp
Y2ggdGhlbiByZWFkcyB0aGUgd3JvbmcgcHJlZmVyZW5jZSB2YWx1ZSB3aGVuIGJlaW5nIGhhbmRs
ZWQuCisgICAgICAgIFRoaXMgYnVnIHdhcyBpbnRyb2R1Y2VkIHdoZW4gYWNjZXNzIHRvIHRoZSBw
cmVmZXJlbmNlIGRhZW1vbiB3YXMgY2xvc2VkIGluIHRoZSBXZWJDb250ZW50IHByb2Nlc3MsIGFu
ZCBwcmVmZXJlbmNlcworICAgICAgICB3ZXJlIHVwZGF0ZWQgZnJvbSB0aGUgVUkgcHJvY2Vzcy4g
VGhpcyBwYXRjaCBhZGRyZXNzZXMgdGhpcyBpc3N1ZSBieSByZS1wb3N0aW5nIHRoZSBub3RpZmlj
YXRpb24gd2hlbiB0aGUgcHJlZmVyZW5jZQorICAgICAgICB2YWx1ZSBpcyB1cGRhdGVkIGluIHRo
ZSBXZWJDb250ZW50IHByb2Nlc3MuCisKKyAgICAgICAgQVBJIHRlc3Q6IFdlYktpdC5BY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nl
c3NDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6cmVkdWNlTW90aW9uUHJlZmVyZW5jZUtleSk6
CisgICAgICAgIChXZWJLaXQ6OmRpc3BhdGNoU2ltdWxhdGVkTm90aWZpY2F0aW9uc0ZvclByZWZl
cmVuY2VDaGFuZ2UpOgorCiAyMDIwLTA4LTE3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5j
b20+CiAKICAgICAgICAgQXVkaW9Db250ZXh0LmdldE91dHB1dFRpbWVzdGFtcCgpIGlzIG1pc3Np
bmcKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nl
c3NDb2NvYS5tbQkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAtMTI0LDYgKzEyNCw3
IEBACiAjaW1wb3J0ICJXZWJTd2l0Y2hpbmdHUFVDbGllbnQuaCIKICNpbXBvcnQgPFdlYkNvcmUv
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0xNYW5hZ2VyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Njcm9s
bGJhclRoZW1lTWFjLmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9ISVNlcnZpY2VzU1BJLmg+CiAj
aW1wb3J0IDxwYWwvc3BpL21hYy9OU1Njcm9sbGVySW1wU1BJLmg+CiAjZW5kaWYKIApAQCAtOTEw
LDYgKzkxMSwxMiBAQCBzdGF0aWMgY29uc3QgV1RGOjpTdHJpbmcmIHVzZXJIaWdobGlnaHRDCiAg
ICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPFdURjo6U3RyaW5nPiB1c2VySGlnaGxpZ2h0Q29sb3JQ
cmVmZXJlbmNlS2V5KE1BS0VfU1RBVElDX1NUUklOR19JTVBMKCJBcHBsZUhpZ2hsaWdodENvbG9y
IikpOwogICAgIHJldHVybiB1c2VySGlnaGxpZ2h0Q29sb3JQcmVmZXJlbmNlS2V5OwogfQorCitz
dGF0aWMgY29uc3QgV1RGOjpTdHJpbmcmIHJlZHVjZU1vdGlvblByZWZlcmVuY2VLZXkoKQorewor
ICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxXVEY6OlN0cmluZz4ga2V5KE1BS0VfU1RBVElDX1NU
UklOR19JTVBMKCJyZWR1Y2VNb3Rpb24iKSk7CisgICAgcmV0dXJuIGtleTsKK30KICNlbmRpZgog
CiBzdGF0aWMgdm9pZCBkaXNwYXRjaFNpbXVsYXRlZE5vdGlmaWNhdGlvbnNGb3JQcmVmZXJlbmNl
Q2hhbmdlKGNvbnN0IFN0cmluZyYga2V5KQpAQCAtOTIwLDE1ICs5MjcsMTcgQEAgc3RhdGljIHZv
aWQgZGlzcGF0Y2hTaW11bGF0ZWROb3RpZmljYXRpbwogICAgIC8vIG9mIHRoZSBzeXN0ZW0sIHdl
IG11c3QgcmUtcG9zdCB0aGUgbm90aWZpY2F0aW9uIGluIHRoZSBXZWIgQ29udGVudCBwcm9jZXNz
IGFmdGVyIHVwZGF0aW5nIHRoZSBkZWZhdWx0LgogICAgIAogICAgIGlmIChrZXkgPT0gdXNlckFj
Y2VudENvbG9yUHJlZmVyZW5jZUtleSgpKSB7Ci0gICAgICAgIE5TTm90aWZpY2F0aW9uQ2VudGVy
ICpub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRl
cl07CisgICAgICAgIGF1dG8gbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2Vu
dGVyIGRlZmF1bHRDZW50ZXJdOwogICAgICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHBvc3ROb3Rp
ZmljYXRpb25OYW1lOkAia0NVSU5vdGlmaWNhdGlvbkFxdWFDb2xvclZhcmlhbnRDaGFuZ2VkIiBv
YmplY3Q6bmlsXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9u
TmFtZTpAIk5TU3lzdGVtQ29sb3JzV2lsbENoYW5nZU5vdGlmaWNhdGlvbiIgb2JqZWN0Om5pbF07
CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6TlNTeXN0
ZW1Db2xvcnNEaWRDaGFuZ2VOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07Ci0gICAgfQotICAgIGlm
IChrZXkgPT0gdXNlckhpZ2hsaWdodENvbG9yUHJlZmVyZW5jZUtleSgpKSB7Ci0gICAgICAgIE5T
Tm90aWZpY2F0aW9uQ2VudGVyICpub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25D
ZW50ZXIgZGVmYXVsdENlbnRlcl07CisgICAgfSBlbHNlIGlmIChrZXkgPT0gdXNlckhpZ2hsaWdo
dENvbG9yUHJlZmVyZW5jZUtleSgpKSB7CisgICAgICAgIGF1dG8gbm90aWZpY2F0aW9uQ2VudGVy
ID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOwogICAgICAgICBbbm90aWZp
Y2F0aW9uQ2VudGVyIHBvc3ROb3RpZmljYXRpb25OYW1lOkAiTlNTeXN0ZW1Db2xvcnNXaWxsQ2hh
bmdlTm90aWZpY2F0aW9uIiBvYmplY3Q6bmlsXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRl
ciBwb3N0Tm90aWZpY2F0aW9uTmFtZTpOU1N5c3RlbUNvbG9yc0RpZENoYW5nZU5vdGlmaWNhdGlv
biBvYmplY3Q6bmlsXTsKKyAgICB9IGVsc2UgaWYgKGtleSA9PSByZWR1Y2VNb3Rpb25QcmVmZXJl
bmNlS2V5KCkpIHsKKyAgICAgICAgYXV0byBub3RpZmljYXRpb25DZW50ZXIgPSBDRk5vdGlmaWNh
dGlvbkNlbnRlckdldERpc3RyaWJ1dGVkQ2VudGVyKCk7CisgICAgICAgIENGTm90aWZpY2F0aW9u
Q2VudGVyUG9zdE5vdGlmaWNhdGlvbihub3RpZmljYXRpb25DZW50ZXIsIGtBWEludGVyZmFjZVJl
ZHVjZU1vdGlvblN0YXR1c0RpZENoYW5nZU5vdGlmaWNhdGlvbiwgbnVsbHB0ciwgbnVsbHB0ciwg
dHJ1ZSk7CiAgICAgfQogI2VuZGlmCiB9CkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjU5MDUpCisrKyBUb29scy9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wOC0xOSAgUGVyIEFybmUg
Vm9sbGFuICA8cHZvbGxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBXZWIgcGFnZXMg
YXJlIG5vdCByZXNwb25kaW5nIGNvcnJlY3RseSB0byBjaGFuZ2VzIGluICJSZWR1Y2UgbW90aW9u
IiBzZXR0aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMTU2NjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
OgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1
Y2VNb3Rpb24ubW06IEFkZGVkLgorICAgICAgICAoVEVTVCk6CisKIDIwMjAtMDgtMTkgIEpvbmF0
aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIFt3ZWJraXRjb3JlcHld
IEZhaWx1cmUgdG8gc2V0IGluZGV4IHNob3VsZCBub3QgYmUgZmF0YWwKSW5kZXg6IFRvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCShyZXZpc2lvbiAyNjU4MTEpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAt
OTMzLDYgKzkzMyw3IEBACiAJCUMxNUNCQjMwMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGlnaHRM
ZXZlbE5vdGlmaWNhdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGlnaHRMZXZlbE5vdGlm
aWNhdGlvbi5tbSAqLzsgfTsKIAkJQzE1Q0JCM0YyM0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVu
Y2VDaGFuZ2VzLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQzE1Q0JCM0UyM0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1tICovOyB9
OwogCQlDMTY5MkRDQTIzRDEwREFFMDA2RTg4RjcgLyogQmF0dGVyeS5tbSBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxNjkyREM5MjNEMTBEQUUwMDZFODhG
NyAvKiBCYXR0ZXJ5Lm1tICovOyB9OworCQlDMUY0ODQwNzI0RUREQjQwMDA1M0VDQjggLyogQWNj
ZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEMxRjQ4NDA2MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3NpYmlsaXR5
UmVkdWNlTW90aW9uLm1tICovOyB9OwogCQlDMUY3QjczOTI0NDkwODNGMDAxMjQ1NTcgLyogQUdY
Q29tcGlsZXJTZXJ2aWNlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQzFGN0I3MzgyNDQ5MDgzRjAwMTI0NTU3IC8qIEFHWENvbXBpbGVyU2VydmljZS5t
bSAqLzsgfTsKIAkJQzFGRjlFREIyNDQ2NDRGMDAwODM5QUU0IC8qIFdlYkZpbHRlci5tbSBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRkY5RURBMjQ0NjQ0
RjAwMDgzOUFFNCAvKiBXZWJGaWx0ZXIubW0gKi87IH07CiAJCUMyMEY4OEE3MjI5NUI5NjcwMEQ2
MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDMjBGODhBNjIyOTVCOTY3MDBENjEwRkEgLyogQ29yZVRleHQu
ZnJhbWV3b3JrICovOyB9OwpAQCAtMjYwNyw2ICsyNjA4LDcgQEAKIAkJQzE1Q0JCM0UyM0ZCMTc3
QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gUHJlZmVyZW5jZUNoYW5nZXMubW07IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUMxNjkyREM5MjNEMTBEQUUwMDZFODhGNyAvKiBCYXR0ZXJ5Lm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gQmF0dGVyeS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQzFEOEVFMjEyMDI4RThFMzAwOEVCMTQxIC8qIFdlYlByb2Nlc3NUZXJtaW5hdGUubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJQcm9jZXNzVGVybWluYXRl
Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMUY0ODQwNjI0RUREQjQwMDA1M0VD
QjggLyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9
IEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUMxRjdCNzM4MjQ0OTA4M0YwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2UubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IHBhdGggPSBBR1hDb21waWxlclNlcnZpY2UubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUMxRkY5RURBMjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0ZXIubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJGaWx0ZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUMyMEY4OEE2MjI5NUI5NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3cmFwcGVy
LmZyYW1ld29yazsgbmFtZSA9IENvcmVUZXh0LmZyYW1ld29yazsgcGF0aCA9IFN5c3RlbS9MaWJy
YXJ5L0ZyYW1ld29ya3MvQ29yZVRleHQuZnJhbWV3b3JrOyBzb3VyY2VUcmVlID0gU0RLUk9PVDsg
fTsKQEAgLTMwODQsNiArMzA4Niw3IEBACiAJCTBGMTM5RTc0MUE0MjNBNDYwMEY1OTBGNSAvKiBj
b2NvYSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJQzFG
NDg0MDYyNEVEREI0MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0gKi8s
CiAJCQkJRTNGOEFCOTEyNDFBQjlDRTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1vdGVVSUFw
cC5tbSAqLywKIAkJCQlDMUY3QjczODI0NDkwODNGMDAxMjQ1NTcgLyogQUdYQ29tcGlsZXJTZXJ2
aWNlLm1tICovLAogCQkJCUMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGlnaHRMZXZl
bE5vdGlmaWNhdGlvbi5tbSAqLywKQEAgLTQ4NjUsOSArNDg2OCw5IEBACiAJCQkJN0M4M0RFRDIx
RDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hNYXAuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0M4M0RF
RDQxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hTZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0M4
QkZGNzEyM0MwMTA3QTAwQzAwOUIzIC8qIEhleE51bWJlci5jcHAgaW4gU291cmNlcyAqLywKKwkJ
CQkzMzk3NkQ4MzI0REM0NzlCMDA4MTIzMDQgLyogSW5kZXhTcGFyc2VTZXQuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJN0M4M0RFRTAxRDBBNTkwQzAwRkVCQ0YzIC8qIEludGVnZXJUb1N0cmluZ0Nv
bnZlcnNpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTNGQ0RFNkIyMjlFRkZCOTAwNTk4RUNG
IC8qIElzb0hlYXAuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMzM5NzZEODMyNERDNDc5QjAwODEy
MzA0IC8qIEluZGV4U3BhcnNlU2V0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdDRUI2MkFCMjIz
NjA5REUwMDY5Q0JCMCAvKiBJdGVyYXRvclJhbmdlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdB
MDUwOTQxMUZCOUYwNjQwMEIzM0ZCOCAvKiBKU09OVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJNTMxQzFEOEUxREY4RUY3MjAwNkU5NzlGIC8qIExFQkRlY29kZXIuY3BwIGluIFNvdXJjZXMg
Ki8sCkBAIC00OTU0LDYgKzQ5NTcsNyBAQAogCQkJCTU3QzYyNDRFMjM0NkJDRkEwMDM4M0ZFNyAv
KiBfV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJN0NDRTdF
RTQxQTQxMUFFNjAwNDQ3QzRDIC8qIEFib3V0QmxhbmtMb2FkLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTdDQ0U3RUIzMUE0MTFBN0UwMDQ0N0M0QyAvKiBBY2NlcHRzRmlyc3RNb3VzZS5tbSBpbiBT
b3VyY2VzICovLAorCQkJCUMxRjQ4NDA3MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3NpYmlsaXR5
UmVkdWNlTW90aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRTNGOEFCOTIyNDFBQjlDRTAwM0Uy
QTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1vdGVVSUFwcC5tbSBpbiBTb3VyY2VzICovLAogCQkJCTJF
MjA1QkE0MUY1Mjc3NDYwMDU5NTJERCAvKiBBY2Nlc3NpYmlsaXR5VGVzdHNJT1MubW0gaW4gU291
cmNlcyAqLywKIAkJCQk5QkQ1MTExQzFGRThFMTE2MDBEMkI2MzAgLyogQWNjZXNzaW5nUGFzdGVk
SW1hZ2UubW0gaW4gU291cmNlcyAqLywKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbQko
bm9uZXhpc3RlbnQpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9BY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNjUgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaW1wb3J0ICJjb25maWcuaCIKKworI2ltcG9ydCAiUGxhdGZvcm1VdGlsaXRp
ZXMuaCIKKyNpbXBvcnQgIlRlc3RXS1dlYlZpZXcuaCIKKyNpbXBvcnQgPFdlYktpdC9XS1Byb2Nl
c3NQb29sUHJpdmF0ZS5oPgorI2ltcG9ydCA8V2ViS2l0L19XS1Byb2Nlc3NQb29sQ29uZmlndXJh
dGlvbi5oPgorCisjaW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKworU09GVF9MSU5LX0ZSQU1F
V09SSyhBcHBsaWNhdGlvblNlcnZpY2VzKQorU09GVF9MSU5LKEFwcGxpY2F0aW9uU2VydmljZXMs
IF9BWEludGVyZmFjZVNldFJlZHVjZU1vdGlvbkVuYWJsZWQsIHZvaWQsIChCb29sZWFuIGVuYWJs
ZSksIChlbmFibGUpKTsKKworI2lmIFdLX0hBVkVfQ19TUEkKKworVEVTVChXZWJLaXQsIEFjY2Vz
c2liaWxpdHlSZWR1Y2VNb3Rpb24pCit7CisgICAgYXV0byBjb25maWd1cmF0aW9uID0gYWRvcHRO
UyhbW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gYWxsb2NdIGluaXRdKTsKKyAgICBXS1JldGFpblB0
cjxXS0NvbnRleHRSZWY+IGNvbnRleHQgPSBhZG9wdFdLKFRlc3RXZWJLaXRBUEk6OlV0aWw6OmNy
ZWF0ZUNvbnRleHRGb3JJbmplY3RlZEJ1bmRsZVRlc3QoIkludGVybmFsc0luamVjdGVkQnVuZGxl
VGVzdCIpKTsKKyAgICBjb25maWd1cmF0aW9uLmdldCgpLnByb2Nlc3NQb29sID0gKFdLUHJvY2Vz
c1Bvb2wgKiljb250ZXh0LmdldCgpOworICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0
V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgMzAwLCAzMDAp
IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbi5nZXQoKSBhZGRUb1dpbmRvdzpZRVNdKTsKKwor
ICAgIC8vIE5lZWQgdG8gYWN0aXZhdGUgdGhlIGFwcCB0byBpbml0aWF0ZSB0aGUgUHJlZmVyZW5j
ZSBvYnNlcnZlcgorICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gcG9z
dE5vdGlmaWNhdGlvbk5hbWU6TlNBcHBsaWNhdGlvbkRpZEJlY29tZUFjdGl2ZU5vdGlmaWNhdGlv
biBvYmplY3Q6TlNBcHAgdXNlckluZm86bmlsXTsKKworICAgIFt3ZWJWaWV3IHN5bmNocm9ub3Vz
bHlMb2FkVGVzdFBhZ2VOYW1lZDpAInNpbXBsZSJdOworCisgICAgX0FYSW50ZXJmYWNlU2V0UmVk
dWNlTW90aW9uRW5hYmxlZChZRVMpOworCisgICAgYXV0byByZWR1Y2VNb3Rpb24gPSBbJl0gewor
ICAgICAgICByZXR1cm4gW3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdDpAIndp
bmRvdy5pbnRlcm5hbHMudXNlclByZWZlcnNSZWR1Y2VkTW90aW9uKCkiXS5ib29sVmFsdWU7Cisg
ICAgfTsKKworICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkVGVzdFBhZ2VOYW1lZDpAInNp
bXBsZSJdOworCisgICAgQVNTRVJUX1RSVUUocmVkdWNlTW90aW9uKCkpOworCisgICAgX0FYSW50
ZXJmYWNlU2V0UmVkdWNlTW90aW9uRW5hYmxlZChOTyk7Cit9CisKKyNlbmRpZgo=
</data>
<flag name="review"
          id="422256"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406930</attachid>
            <date>2020-08-20 07:31:42 -0700</date>
            <delta_ts>2020-08-20 09:05:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215664-20200820073141.patch</filename>
            <type>text/plain</type>
            <size>14646</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjY1ODk4KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4
LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMgaW4g
IlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERlY2xhcmUgbm90aWZpY2F0aW9uIHNlbnQgd2hlbiB0aGUgIlJlZHVj
ZSBtb3Rpb24iIHNldHRpbmcgaXMgY2hhbmdlZC4KKyAKKyAgICAgICAgKiBwYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmg6CisKIDIwMjAtMDgtMTkgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlA
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gTW92ZSBzdGVwcGVyIHBhaW50aW5nIGNvZGUg
b2ZmIG9mIENhcmJvbiBBUEkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
bWFjL0hJU2VydmljZXNTUEkuaAkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ5LDYg
KzE0OSw4IEBAIEFYQ2xpZW50VHlwZSBfQVhHZXRDbGllbnRGb3JDdXJyZW50UmVxdWUKIHZvaWQg
X0FYU2V0Q2xpZW50SWRlbnRpZmljYXRpb25PdmVycmlkZShBWENsaWVudFR5cGUpOwogI2VuZGlm
IC8vIEhBVkUoQVhfQ0xJRU5UX1RZUEUpCiAKK2V4dGVybiBDRlN0cmluZ1JlZiBrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRpb247CisKIFdURl9FWFRFUk5f
Q19FTkQKIAogI2VuZGlmIC8vIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCkluZGV4OiBTb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwko
cmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0wOC0xOSAgUGVyIEFybmUgVm9sbGFuICA8cHZvbGxh
bkBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBXZWIgcGFnZXMgYXJlIG5vdCByZXNwb25k
aW5nIGNvcnJlY3RseSB0byBjaGFuZ2VzIGluICJSZWR1Y2UgbW90aW9uIiBzZXR0aW5nCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU2NjQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGhhcHBlbnMg
YmVjYXVzZSB0aGVyZSBpcyBhIHJhY2UgYmV0d2VlbiB0aGUgcHJlZmVyZW5jZSBjaGFuZ2UgYW5k
IG5vdGlmaWNhdGlvbiBiZWluZyByZWNlaXZlZCBpbiB0aGUgV2ViQ29udGVudAorICAgICAgICBw
cm9jZXNzLiBUaGlzIHJhY2UgaXMgdXN1YWxseSB3b24gYnkgdGhlIG5vdGlmaWNhdGlvbiwgd2hp
Y2ggdGhlbiByZWFkcyB0aGUgd3JvbmcgcHJlZmVyZW5jZSB2YWx1ZSB3aGVuIGJlaW5nIGhhbmRs
ZWQuCisgICAgICAgIFRoaXMgYnVnIHdhcyBpbnRyb2R1Y2VkIHdoZW4gYWNjZXNzIHRvIHRoZSBw
cmVmZXJlbmNlIGRhZW1vbiB3YXMgY2xvc2VkIGluIHRoZSBXZWJDb250ZW50IHByb2Nlc3MsIGFu
ZCBwcmVmZXJlbmNlcworICAgICAgICB3ZXJlIHVwZGF0ZWQgZnJvbSB0aGUgVUkgcHJvY2Vzcy4g
VGhpcyBwYXRjaCBhZGRyZXNzZXMgdGhpcyBpc3N1ZSBieSByZS1wb3N0aW5nIHRoZSBub3RpZmlj
YXRpb24gd2hlbiB0aGUgcHJlZmVyZW5jZQorICAgICAgICB2YWx1ZSBpcyB1cGRhdGVkIGluIHRo
ZSBXZWJDb250ZW50IHByb2Nlc3MuCisKKyAgICAgICAgQVBJIHRlc3Q6IFdlYktpdC5BY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nl
c3NDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6cmVkdWNlTW90aW9uUHJlZmVyZW5jZUtleSk6
CisgICAgICAgIChXZWJLaXQ6OmRpc3BhdGNoU2ltdWxhdGVkTm90aWZpY2F0aW9uc0ZvclByZWZl
cmVuY2VDaGFuZ2UpOgorCiAyMDIwLTA4LTE3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5j
b20+CiAKICAgICAgICAgQXVkaW9Db250ZXh0LmdldE91dHB1dFRpbWVzdGFtcCgpIGlzIG1pc3Np
bmcKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nl
c3NDb2NvYS5tbQkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAtMTI0LDYgKzEyNCw3
IEBACiAjaW1wb3J0ICJXZWJTd2l0Y2hpbmdHUFVDbGllbnQuaCIKICNpbXBvcnQgPFdlYkNvcmUv
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0xNYW5hZ2VyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Njcm9s
bGJhclRoZW1lTWFjLmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9ISVNlcnZpY2VzU1BJLmg+CiAj
aW1wb3J0IDxwYWwvc3BpL21hYy9OU1Njcm9sbGVySW1wU1BJLmg+CiAjZW5kaWYKIApAQCAtOTEw
LDYgKzkxMSwxMiBAQCBzdGF0aWMgY29uc3QgV1RGOjpTdHJpbmcmIHVzZXJIaWdobGlnaHRDCiAg
ICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPFdURjo6U3RyaW5nPiB1c2VySGlnaGxpZ2h0Q29sb3JQ
cmVmZXJlbmNlS2V5KE1BS0VfU1RBVElDX1NUUklOR19JTVBMKCJBcHBsZUhpZ2hsaWdodENvbG9y
IikpOwogICAgIHJldHVybiB1c2VySGlnaGxpZ2h0Q29sb3JQcmVmZXJlbmNlS2V5OwogfQorCitz
dGF0aWMgY29uc3QgV1RGOjpTdHJpbmcmIHJlZHVjZU1vdGlvblByZWZlcmVuY2VLZXkoKQorewor
ICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxXVEY6OlN0cmluZz4ga2V5KE1BS0VfU1RBVElDX1NU
UklOR19JTVBMKCJyZWR1Y2VNb3Rpb24iKSk7CisgICAgcmV0dXJuIGtleTsKK30KICNlbmRpZgog
CiBzdGF0aWMgdm9pZCBkaXNwYXRjaFNpbXVsYXRlZE5vdGlmaWNhdGlvbnNGb3JQcmVmZXJlbmNl
Q2hhbmdlKGNvbnN0IFN0cmluZyYga2V5KQpAQCAtOTIwLDE1ICs5MjcsMTggQEAgc3RhdGljIHZv
aWQgZGlzcGF0Y2hTaW11bGF0ZWROb3RpZmljYXRpbwogICAgIC8vIG9mIHRoZSBzeXN0ZW0sIHdl
IG11c3QgcmUtcG9zdCB0aGUgbm90aWZpY2F0aW9uIGluIHRoZSBXZWIgQ29udGVudCBwcm9jZXNz
IGFmdGVyIHVwZGF0aW5nIHRoZSBkZWZhdWx0LgogICAgIAogICAgIGlmIChrZXkgPT0gdXNlckFj
Y2VudENvbG9yUHJlZmVyZW5jZUtleSgpKSB7Ci0gICAgICAgIE5TTm90aWZpY2F0aW9uQ2VudGVy
ICpub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRl
cl07CisgICAgICAgIGF1dG8gbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2Vu
dGVyIGRlZmF1bHRDZW50ZXJdOwogICAgICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHBvc3ROb3Rp
ZmljYXRpb25OYW1lOkAia0NVSU5vdGlmaWNhdGlvbkFxdWFDb2xvclZhcmlhbnRDaGFuZ2VkIiBv
YmplY3Q6bmlsXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9u
TmFtZTpAIk5TU3lzdGVtQ29sb3JzV2lsbENoYW5nZU5vdGlmaWNhdGlvbiIgb2JqZWN0Om5pbF07
CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6TlNTeXN0
ZW1Db2xvcnNEaWRDaGFuZ2VOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07Ci0gICAgfQotICAgIGlm
IChrZXkgPT0gdXNlckhpZ2hsaWdodENvbG9yUHJlZmVyZW5jZUtleSgpKSB7Ci0gICAgICAgIE5T
Tm90aWZpY2F0aW9uQ2VudGVyICpub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25D
ZW50ZXIgZGVmYXVsdENlbnRlcl07CisgICAgfSBlbHNlIGlmIChrZXkgPT0gdXNlckhpZ2hsaWdo
dENvbG9yUHJlZmVyZW5jZUtleSgpKSB7CisgICAgICAgIGF1dG8gbm90aWZpY2F0aW9uQ2VudGVy
ID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOwogICAgICAgICBbbm90aWZp
Y2F0aW9uQ2VudGVyIHBvc3ROb3RpZmljYXRpb25OYW1lOkAiTlNTeXN0ZW1Db2xvcnNXaWxsQ2hh
bmdlTm90aWZpY2F0aW9uIiBvYmplY3Q6bmlsXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRl
ciBwb3N0Tm90aWZpY2F0aW9uTmFtZTpOU1N5c3RlbUNvbG9yc0RpZENoYW5nZU5vdGlmaWNhdGlv
biBvYmplY3Q6bmlsXTsKKyAgICB9IGVsc2UgaWYgKGtleSA9PSByZWR1Y2VNb3Rpb25QcmVmZXJl
bmNlS2V5KCkpIHsKKyAgICAgICAgV1RGTG9nQWx3YXlzKCJSZWR1Y2UgbW90aW9uIHByZWZlcmVu
Y2UgY2hhbmdlZC4iKTsKKyAgICAgICAgYXV0byBub3RpZmljYXRpb25DZW50ZXIgPSBDRk5vdGlm
aWNhdGlvbkNlbnRlckdldERpc3RyaWJ1dGVkQ2VudGVyKCk7CisgICAgICAgIENGTm90aWZpY2F0
aW9uQ2VudGVyUG9zdE5vdGlmaWNhdGlvbihub3RpZmljYXRpb25DZW50ZXIsIGtBWEludGVyZmFj
ZVJlZHVjZU1vdGlvblN0YXR1c0RpZENoYW5nZU5vdGlmaWNhdGlvbiwgbnVsbHB0ciwgbnVsbHB0
ciwgdHJ1ZSk7CiAgICAgfQogI2VuZGlmCiB9CkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjU5MDUpCisrKyBUb29scy9DaGFu
Z2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wOC0xOSAgUGVyIEFy
bmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBXZWIgcGFn
ZXMgYXJlIG5vdCByZXNwb25kaW5nIGNvcnJlY3RseSB0byBjaGFuZ2VzIGluICJSZWR1Y2UgbW90
aW9uIiBzZXR0aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTU2NjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlS
ZWR1Y2VNb3Rpb24ubW06IEFkZGVkLgorICAgICAgICAoVEVTVCk6CisKIDIwMjAtMDgtMTkgIEpv
bmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIFt3ZWJraXRjb3Jl
cHldIEZhaWx1cmUgdG8gc2V0IGluZGV4IHNob3VsZCBub3QgYmUgZmF0YWwKSW5kZXg6IFRvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAyNjU4MTEpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpA
QCAtOTMzLDYgKzkzMyw3IEBACiAJCUMxNUNCQjMwMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGln
aHRMZXZlbE5vdGlmaWNhdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGlnaHRMZXZlbE5v
dGlmaWNhdGlvbi5tbSAqLzsgfTsKIAkJQzE1Q0JCM0YyM0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZl
cmVuY2VDaGFuZ2VzLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQzE1Q0JCM0UyM0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1tICov
OyB9OwogCQlDMTY5MkRDQTIzRDEwREFFMDA2RTg4RjcgLyogQmF0dGVyeS5tbSBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxNjkyREM5MjNEMTBEQUUwMDZF
ODhGNyAvKiBCYXR0ZXJ5Lm1tICovOyB9OworCQlDMUY0ODQwNzI0RUREQjQwMDA1M0VDQjggLyog
QWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEMxRjQ4NDA2MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3NpYmls
aXR5UmVkdWNlTW90aW9uLm1tICovOyB9OwogCQlDMUY3QjczOTI0NDkwODNGMDAxMjQ1NTcgLyog
QUdYQ29tcGlsZXJTZXJ2aWNlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQzFGN0I3MzgyNDQ5MDgzRjAwMTI0NTU3IC8qIEFHWENvbXBpbGVyU2Vydmlj
ZS5tbSAqLzsgfTsKIAkJQzFGRjlFREIyNDQ2NDRGMDAwODM5QUU0IC8qIFdlYkZpbHRlci5tbSBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRkY5RURBMjQ0
NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0ZXIubW0gKi87IH07CiAJCUMyMEY4OEE3MjI5NUI5Njcw
MEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMjBGODhBNjIyOTVCOTY3MDBENjEwRkEgLyogQ29yZVRl
eHQuZnJhbWV3b3JrICovOyB9OwpAQCAtMjYwNyw2ICsyNjA4LDcgQEAKIAkJQzE1Q0JCM0UyM0ZC
MTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gUHJlZmVyZW5jZUNoYW5nZXMubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUMxNjkyREM5MjNEMTBEQUUwMDZFODhGNyAvKiBCYXR0ZXJ5Lm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gQmF0dGVyeS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQzFEOEVFMjEyMDI4RThFMzAwOEVCMTQxIC8qIFdlYlByb2Nlc3NUZXJtaW5hdGUubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJQcm9jZXNzVGVybWlu
YXRlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMUY0ODQwNjI0RUREQjQwMDA1
M0VDQjggLyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUMxRjdCNzM4MjQ0OTA4M0YwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2UubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBR1hDb21waWxlclNlcnZpY2UubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUMxRkY5RURBMjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0ZXIu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJGaWx0ZXIubW07IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUMyMEY4OEE2MjI5NUI5NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdv
cmsgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3cmFw
cGVyLmZyYW1ld29yazsgbmFtZSA9IENvcmVUZXh0LmZyYW1ld29yazsgcGF0aCA9IFN5c3RlbS9M
aWJyYXJ5L0ZyYW1ld29ya3MvQ29yZVRleHQuZnJhbWV3b3JrOyBzb3VyY2VUcmVlID0gU0RLUk9P
VDsgfTsKQEAgLTMwODQsNiArMzA4Niw3IEBACiAJCTBGMTM5RTc0MUE0MjNBNDYwMEY1OTBGNSAv
KiBjb2NvYSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJ
QzFGNDg0MDYyNEVEREI0MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0g
Ki8sCiAJCQkJRTNGOEFCOTEyNDFBQjlDRTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1vdGVV
SUFwcC5tbSAqLywKIAkJCQlDMUY3QjczODI0NDkwODNGMDAxMjQ1NTcgLyogQUdYQ29tcGlsZXJT
ZXJ2aWNlLm1tICovLAogCQkJCUMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGlnaHRM
ZXZlbE5vdGlmaWNhdGlvbi5tbSAqLywKQEAgLTQ4NjUsOSArNDg2OCw5IEBACiAJCQkJN0M4M0RF
RDIxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hNYXAuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0M4
M0RFRDQxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hTZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
N0M4QkZGNzEyM0MwMTA3QTAwQzAwOUIzIC8qIEhleE51bWJlci5jcHAgaW4gU291cmNlcyAqLywK
KwkJCQkzMzk3NkQ4MzI0REM0NzlCMDA4MTIzMDQgLyogSW5kZXhTcGFyc2VTZXQuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJN0M4M0RFRTAxRDBBNTkwQzAwRkVCQ0YzIC8qIEludGVnZXJUb1N0cmlu
Z0NvbnZlcnNpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTNGQ0RFNkIyMjlFRkZCOTAwNTk4
RUNGIC8qIElzb0hlYXAuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMzM5NzZEODMyNERDNDc5QjAw
ODEyMzA0IC8qIEluZGV4U3BhcnNlU2V0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdDRUI2MkFC
MjIzNjA5REUwMDY5Q0JCMCAvKiBJdGVyYXRvclJhbmdlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTdBMDUwOTQxMUZCOUYwNjQwMEIzM0ZCOCAvKiBKU09OVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJNTMxQzFEOEUxREY4RUY3MjAwNkU5NzlGIC8qIExFQkRlY29kZXIuY3BwIGluIFNvdXJj
ZXMgKi8sCkBAIC00OTU0LDYgKzQ5NTcsNyBAQAogCQkJCTU3QzYyNDRFMjM0NkJDRkEwMDM4M0ZF
NyAvKiBfV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJN0ND
RTdFRTQxQTQxMUFFNjAwNDQ3QzRDIC8qIEFib3V0QmxhbmtMb2FkLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTdDQ0U3RUIzMUE0MTFBN0UwMDQ0N0M0QyAvKiBBY2NlcHRzRmlyc3RNb3VzZS5tbSBp
biBTb3VyY2VzICovLAorCQkJCUMxRjQ4NDA3MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3NpYmls
aXR5UmVkdWNlTW90aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRTNGOEFCOTIyNDFBQjlDRTAw
M0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1vdGVVSUFwcC5tbSBpbiBTb3VyY2VzICovLAogCQkJ
CTJFMjA1QkE0MUY1Mjc3NDYwMDU5NTJERCAvKiBBY2Nlc3NpYmlsaXR5VGVzdHNJT1MubW0gaW4g
U291cmNlcyAqLywKIAkJCQk5QkQ1MTExQzFGRThFMTE2MDBEMkI2MzAgLyogQWNjZXNzaW5nUGFz
dGVkSW1hZ2UubW0gaW4gU291cmNlcyAqLywKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5t
bQkobm9uZXhpc3RlbnQpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9BY2Nl
c3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNjggQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjaW1wb3J0ICJjb25maWcuaCIKKworI2ltcG9ydCAiUGxhdGZvcm1VdGls
aXRpZXMuaCIKKyNpbXBvcnQgIlRlc3RXS1dlYlZpZXcuaCIKKyNpbXBvcnQgPFdlYktpdC9XS1By
b2Nlc3NQb29sUHJpdmF0ZS5oPgorI2ltcG9ydCA8V2ViS2l0L19XS1Byb2Nlc3NQb29sQ29uZmln
dXJhdGlvbi5oPgorCisjaW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKworU09GVF9MSU5LX0ZS
QU1FV09SSyhBcHBsaWNhdGlvblNlcnZpY2VzKQorU09GVF9MSU5LKEFwcGxpY2F0aW9uU2Vydmlj
ZXMsIF9BWEludGVyZmFjZVNldFJlZHVjZU1vdGlvbkVuYWJsZWQsIHZvaWQsIChCb29sZWFuIGVu
YWJsZSksIChlbmFibGUpKTsKK1NPRlRfTElOSyhBcHBsaWNhdGlvblNlcnZpY2VzLCBfQVhJbnRl
cmZhY2VHZXRSZWR1Y2VNb3Rpb25FbmFibGVkLCBCb29sZWFuLCAoKSwgKCkpOworCisjaWYgV0tf
SEFWRV9DX1NQSQorCitURVNUKFdlYktpdCwgQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbikKK3sK
KyAgICBhdXRvIGNvbmZpZ3VyYXRpb24gPSBhZG9wdE5TKFtbV0tXZWJWaWV3Q29uZmlndXJhdGlv
biBhbGxvY10gaW5pdF0pOworICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dCA9
IGFkb3B0V0soVGVzdFdlYktpdEFQSTo6VXRpbDo6Y3JlYXRlQ29udGV4dEZvckluamVjdGVkQnVu
ZGxlVGVzdCgiSW50ZXJuYWxzSW5qZWN0ZWRCdW5kbGVUZXN0IikpOworICAgIGNvbmZpZ3VyYXRp
b24uZ2V0KCkucHJvY2Vzc1Bvb2wgPSAoV0tQcm9jZXNzUG9vbCAqKWNvbnRleHQuZ2V0KCk7Cisg
ICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRo
RnJhbWU6TlNNYWtlUmVjdCgwLCAwLCAzMDAsIDMwMCkgY29uZmlndXJhdGlvbjpjb25maWd1cmF0
aW9uLmdldCgpIGFkZFRvV2luZG93OllFU10pOworCisgICAgLy8gTmVlZCB0byBhY3RpdmF0ZSB0
aGUgYXBwIHRvIGluaXRpYXRlIHRoZSBQcmVmZXJlbmNlIG9ic2VydmVyCisgICAgW1tOU05vdGlm
aWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBwb3N0Tm90aWZpY2F0aW9uTmFtZTpOU0FwcGxp
Y2F0aW9uRGlkQmVjb21lQWN0aXZlTm90aWZpY2F0aW9uIG9iamVjdDpOU0FwcCB1c2VySW5mbzpu
aWxdOworCisgICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRUZXN0UGFnZU5hbWVkOkAic2lt
cGxlIl07CisKKyAgICBfQVhJbnRlcmZhY2VTZXRSZWR1Y2VNb3Rpb25FbmFibGVkKFlFUyk7CisK
KyAgICBBU1NFUlRfVFJVRShfQVhJbnRlcmZhY2VHZXRSZWR1Y2VNb3Rpb25FbmFibGVkKCkpOwor
CisgICAgYXV0byByZWR1Y2VNb3Rpb24gPSBbJl0geworICAgICAgICByZXR1cm4gW3dlYlZpZXcg
c3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdDpAIndpbmRvdy5pbnRlcm5hbHMudXNlclByZWZl
cnNSZWR1Y2VkTW90aW9uKCkiXS5ib29sVmFsdWU7CisgICAgfTsKKworICAgIFt3ZWJWaWV3IHN5
bmNocm9ub3VzbHlMb2FkVGVzdFBhZ2VOYW1lZDpAInNpbXBsZSJdOworCisgICAgQVNTRVJUX1RS
VUUocmVkdWNlTW90aW9uKCkpOworCisgICAgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90aW9uRW5h
YmxlZChOTyk7Cit9CisKKyNlbmRpZgpJbmRleDogV2ViS2l0Lnhjd29ya3NwYWNlL3hjc2hhcmVk
ZGF0YS94Y3NjaGVtZXMvQWxsIFRvb2xzLnhjc2NoZW1lCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC54
Y3dvcmtzcGFjZS94Y3NoYXJlZGRhdGEveGNzY2hlbWVzL0FsbCBUb29scy54Y3NjaGVtZQkocmV2
aXNpb24gMjY1ODExKQorKysgV2ViS2l0Lnhjd29ya3NwYWNlL3hjc2hhcmVkZGF0YS94Y3NjaGVt
ZXMvQWxsIFRvb2xzLnhjc2NoZW1lCSh3b3JraW5nIGNvcHkpCkBAIC04MywyMCArODMsMTEgQEAK
ICAgICAgIHNlbGVjdGVkRGVidWdnZXJJZGVudGlmaWVyID0gIlhjb2RlLkRlYnVnZ2VyRm91bmRh
dGlvbi5EZWJ1Z2dlci5MTERCIgogICAgICAgc2VsZWN0ZWRMYXVuY2hlcklkZW50aWZpZXIgPSAi
WGNvZGUuRGVidWdnZXJGb3VuZGF0aW9uLkxhdW5jaGVyLkxMREIiCiAgICAgICBzaG91bGRVc2VM
YXVuY2hTY2hlbWVBcmdzRW52ID0gIllFUyI+Ci0gICAgICA8TWFjcm9FeHBhbnNpb24+Ci0gICAg
ICAgICA8QnVpbGRhYmxlUmVmZXJlbmNlCi0gICAgICAgICAgICBCdWlsZGFibGVJZGVudGlmaWVy
ID0gInByaW1hcnkiCi0gICAgICAgICAgICBCbHVlcHJpbnRJZGVudGlmaWVyID0gIkE4NEY2MDhE
MDhCMTM3MDYwMEU5NzQ1RiIKLSAgICAgICAgICAgIEJ1aWxkYWJsZU5hbWUgPSAiQWxsIgotICAg
ICAgICAgICAgQmx1ZXByaW50TmFtZSA9ICJBbGwiCi0gICAgICAgICAgICBSZWZlcmVuY2VkQ29u
dGFpbmVyID0gImNvbnRhaW5lcjpUb29scy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS54
Y29kZXByb2oiPgotICAgICAgICAgPC9CdWlsZGFibGVSZWZlcmVuY2U+Ci0gICAgICA8L01hY3Jv
RXhwYW5zaW9uPgogICAgICAgPFRlc3RhYmxlcz4KICAgICAgIDwvVGVzdGFibGVzPgogICAgPC9U
ZXN0QWN0aW9uPgogICAgPExhdW5jaEFjdGlvbgotICAgICAgYnVpbGRDb25maWd1cmF0aW9uID0g
IkRlYnVnIgorICAgICAgYnVpbGRDb25maWd1cmF0aW9uID0gIlJlbGVhc2UiCiAgICAgICBzZWxl
Y3RlZERlYnVnZ2VySWRlbnRpZmllciA9ICJYY29kZS5EZWJ1Z2dlckZvdW5kYXRpb24uRGVidWdn
ZXIuTExEQiIKICAgICAgIHNlbGVjdGVkTGF1bmNoZXJJZGVudGlmaWVyID0gIlhjb2RlLkRlYnVn
Z2VyRm91bmRhdGlvbi5MYXVuY2hlci5MTERCIgogICAgICAgbGF1bmNoU3R5bGUgPSAiMCIK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406931</attachid>
            <date>2020-08-20 08:08:17 -0700</date>
            <delta_ts>2020-08-20 09:06:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215664-20200820080816.patch</filename>
            <type>text/plain</type>
            <size>15338</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjY1ODk4KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4
LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMgaW4g
IlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERlY2xhcmUgbm90aWZpY2F0aW9uIHNlbnQgd2hlbiB0aGUgIlJlZHVj
ZSBtb3Rpb24iIHNldHRpbmcgaXMgY2hhbmdlZC4KKyAKKyAgICAgICAgKiBwYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmg6CisKIDIwMjAtMDgtMTkgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlA
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gTW92ZSBzdGVwcGVyIHBhaW50aW5nIGNvZGUg
b2ZmIG9mIENhcmJvbiBBUEkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
bWFjL0hJU2VydmljZXNTUEkuaAkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ5LDYg
KzE0OSw4IEBAIEFYQ2xpZW50VHlwZSBfQVhHZXRDbGllbnRGb3JDdXJyZW50UmVxdWUKIHZvaWQg
X0FYU2V0Q2xpZW50SWRlbnRpZmljYXRpb25PdmVycmlkZShBWENsaWVudFR5cGUpOwogI2VuZGlm
IC8vIEhBVkUoQVhfQ0xJRU5UX1RZUEUpCiAKK2V4dGVybiBDRlN0cmluZ1JlZiBrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRpb247CisKIFdURl9FWFRFUk5f
Q19FTkQKIAogI2VuZGlmIC8vIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCkluZGV4OiBTb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwko
cmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0wOC0xOSAgUGVyIEFybmUgVm9sbGFuICA8cHZvbGxh
bkBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBXZWIgcGFnZXMgYXJlIG5vdCByZXNwb25k
aW5nIGNvcnJlY3RseSB0byBjaGFuZ2VzIGluICJSZWR1Y2UgbW90aW9uIiBzZXR0aW5nCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU2NjQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGhhcHBlbnMg
YmVjYXVzZSB0aGVyZSBpcyBhIHJhY2UgYmV0d2VlbiB0aGUgcHJlZmVyZW5jZSBjaGFuZ2UgYW5k
IG5vdGlmaWNhdGlvbiBiZWluZyByZWNlaXZlZCBpbiB0aGUgV2ViQ29udGVudAorICAgICAgICBw
cm9jZXNzLiBUaGlzIHJhY2UgaXMgdXN1YWxseSB3b24gYnkgdGhlIG5vdGlmaWNhdGlvbiwgd2hp
Y2ggdGhlbiByZWFkcyB0aGUgd3JvbmcgcHJlZmVyZW5jZSB2YWx1ZSB3aGVuIGJlaW5nIGhhbmRs
ZWQuCisgICAgICAgIFRoaXMgYnVnIHdhcyBpbnRyb2R1Y2VkIHdoZW4gYWNjZXNzIHRvIHRoZSBw
cmVmZXJlbmNlIGRhZW1vbiB3YXMgY2xvc2VkIGluIHRoZSBXZWJDb250ZW50IHByb2Nlc3MsIGFu
ZCBwcmVmZXJlbmNlcworICAgICAgICB3ZXJlIHVwZGF0ZWQgZnJvbSB0aGUgVUkgcHJvY2Vzcy4g
VGhpcyBwYXRjaCBhZGRyZXNzZXMgdGhpcyBpc3N1ZSBieSByZS1wb3N0aW5nIHRoZSBub3RpZmlj
YXRpb24gd2hlbiB0aGUgcHJlZmVyZW5jZQorICAgICAgICB2YWx1ZSBpcyB1cGRhdGVkIGluIHRo
ZSBXZWJDb250ZW50IHByb2Nlc3MuCisKKyAgICAgICAgQVBJIHRlc3Q6IFdlYktpdC5BY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nl
c3NDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6cmVkdWNlTW90aW9uUHJlZmVyZW5jZUtleSk6
CisgICAgICAgIChXZWJLaXQ6OmRpc3BhdGNoU2ltdWxhdGVkTm90aWZpY2F0aW9uc0ZvclByZWZl
cmVuY2VDaGFuZ2UpOgorCiAyMDIwLTA4LTE3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5j
b20+CiAKICAgICAgICAgQXVkaW9Db250ZXh0LmdldE91dHB1dFRpbWVzdGFtcCgpIGlzIG1pc3Np
bmcKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nl
c3NDb2NvYS5tbQkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAtMTI0LDYgKzEyNCw3
IEBACiAjaW1wb3J0ICJXZWJTd2l0Y2hpbmdHUFVDbGllbnQuaCIKICNpbXBvcnQgPFdlYkNvcmUv
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0xNYW5hZ2VyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Njcm9s
bGJhclRoZW1lTWFjLmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9ISVNlcnZpY2VzU1BJLmg+CiAj
aW1wb3J0IDxwYWwvc3BpL21hYy9OU1Njcm9sbGVySW1wU1BJLmg+CiAjZW5kaWYKIApAQCAtOTEw
LDYgKzkxMSwxMiBAQCBzdGF0aWMgY29uc3QgV1RGOjpTdHJpbmcmIHVzZXJIaWdobGlnaHRDCiAg
ICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPFdURjo6U3RyaW5nPiB1c2VySGlnaGxpZ2h0Q29sb3JQ
cmVmZXJlbmNlS2V5KE1BS0VfU1RBVElDX1NUUklOR19JTVBMKCJBcHBsZUhpZ2hsaWdodENvbG9y
IikpOwogICAgIHJldHVybiB1c2VySGlnaGxpZ2h0Q29sb3JQcmVmZXJlbmNlS2V5OwogfQorCitz
dGF0aWMgY29uc3QgV1RGOjpTdHJpbmcmIHJlZHVjZU1vdGlvblByZWZlcmVuY2VLZXkoKQorewor
ICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxXVEY6OlN0cmluZz4ga2V5KE1BS0VfU1RBVElDX1NU
UklOR19JTVBMKCJyZWR1Y2VNb3Rpb24iKSk7CisgICAgcmV0dXJuIGtleTsKK30KICNlbmRpZgog
CiBzdGF0aWMgdm9pZCBkaXNwYXRjaFNpbXVsYXRlZE5vdGlmaWNhdGlvbnNGb3JQcmVmZXJlbmNl
Q2hhbmdlKGNvbnN0IFN0cmluZyYga2V5KQpAQCAtOTIwLDE3ICs5MjcsMjAgQEAgc3RhdGljIHZv
aWQgZGlzcGF0Y2hTaW11bGF0ZWROb3RpZmljYXRpbwogICAgIC8vIG9mIHRoZSBzeXN0ZW0sIHdl
IG11c3QgcmUtcG9zdCB0aGUgbm90aWZpY2F0aW9uIGluIHRoZSBXZWIgQ29udGVudCBwcm9jZXNz
IGFmdGVyIHVwZGF0aW5nIHRoZSBkZWZhdWx0LgogICAgIAogICAgIGlmIChrZXkgPT0gdXNlckFj
Y2VudENvbG9yUHJlZmVyZW5jZUtleSgpKSB7Ci0gICAgICAgIE5TTm90aWZpY2F0aW9uQ2VudGVy
ICpub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRl
cl07CisgICAgICAgIGF1dG8gbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2Vu
dGVyIGRlZmF1bHRDZW50ZXJdOwogICAgICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHBvc3ROb3Rp
ZmljYXRpb25OYW1lOkAia0NVSU5vdGlmaWNhdGlvbkFxdWFDb2xvclZhcmlhbnRDaGFuZ2VkIiBv
YmplY3Q6bmlsXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9u
TmFtZTpAIk5TU3lzdGVtQ29sb3JzV2lsbENoYW5nZU5vdGlmaWNhdGlvbiIgb2JqZWN0Om5pbF07
CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6TlNTeXN0
ZW1Db2xvcnNEaWRDaGFuZ2VOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07Ci0gICAgfQotICAgIGlm
IChrZXkgPT0gdXNlckhpZ2hsaWdodENvbG9yUHJlZmVyZW5jZUtleSgpKSB7Ci0gICAgICAgIE5T
Tm90aWZpY2F0aW9uQ2VudGVyICpub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25D
ZW50ZXIgZGVmYXVsdENlbnRlcl07CisgICAgfSBlbHNlIGlmIChrZXkgPT0gdXNlckhpZ2hsaWdo
dENvbG9yUHJlZmVyZW5jZUtleSgpKSB7CisgICAgICAgIGF1dG8gbm90aWZpY2F0aW9uQ2VudGVy
ID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOwogICAgICAgICBbbm90aWZp
Y2F0aW9uQ2VudGVyIHBvc3ROb3RpZmljYXRpb25OYW1lOkAiTlNTeXN0ZW1Db2xvcnNXaWxsQ2hh
bmdlTm90aWZpY2F0aW9uIiBvYmplY3Q6bmlsXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRl
ciBwb3N0Tm90aWZpY2F0aW9uTmFtZTpOU1N5c3RlbUNvbG9yc0RpZENoYW5nZU5vdGlmaWNhdGlv
biBvYmplY3Q6bmlsXTsKKyAgICB9IGVsc2UgaWYgKGtleSA9PSByZWR1Y2VNb3Rpb25QcmVmZXJl
bmNlS2V5KCkpIHsKKyAgICAgICAgYXV0byBub3RpZmljYXRpb25DZW50ZXIgPSBDRk5vdGlmaWNh
dGlvbkNlbnRlckdldERpc3RyaWJ1dGVkQ2VudGVyKCk7CisgICAgICAgIENGTm90aWZpY2F0aW9u
Q2VudGVyUG9zdE5vdGlmaWNhdGlvbihub3RpZmljYXRpb25DZW50ZXIsIGtBWEludGVyZmFjZVJl
ZHVjZU1vdGlvblN0YXR1c0RpZENoYW5nZU5vdGlmaWNhdGlvbiwgbnVsbHB0ciwgbnVsbHB0ciwg
dHJ1ZSk7CiAgICAgfQogI2VuZGlmCisgICAgV1RGTG9nQWx3YXlzKCJQcmVmZXJlbmNlICVzIGNo
YW5nZWQuIiwga2V5LnV0ZjgoKS5kYXRhKCkpOwogfQogCiBzdGF0aWMgdm9pZCBzZXRQcmVmZXJl
bmNlVmFsdWUoY29uc3QgU3RyaW5nJiBkb21haW4sIGNvbnN0IFN0cmluZyYga2V5LCBpZCB2YWx1
ZSkKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJ
KHJldmlzaW9uIDI2NTkwNSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAt
MSwzICsxLDE0IEBACisyMDIwLTA4LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxl
LmNvbT4KKworICAgICAgICBbbWFjT1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29y
cmVjdGx5IHRvIGNoYW5nZXMgaW4gIlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0
V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogVGVzdFdlYktp
dEFQSS9UZXN0cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbTogQWRkZWQuCisg
ICAgICAgIChURVNUKToKKwogMjAyMC0wOC0xOSAgSm9uYXRoYW4gQmVkYXJkICA8amJlZGFyZEBh
cHBsZS5jb20+CiAKICAgICAgICAgW3dlYmtpdGNvcmVweV0gRmFpbHVyZSB0byBzZXQgaW5kZXgg
c2hvdWxkIG5vdCBiZSBmYXRhbApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0
QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9u
IDI2NTgxMSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC05MzMsNiArOTMzLDcgQEAKIAkJQzE1
Q0JCMzAyM0YxRkYxQTAwMzAwQ0M3IC8qIEJhY2tsaWdodExldmVsTm90aWZpY2F0aW9uLm1tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzE1Q0JCMkYyM0Yx
RkYxQTAwMzAwQ0M3IC8qIEJhY2tsaWdodExldmVsTm90aWZpY2F0aW9uLm1tICovOyB9OwogCQlD
MTVDQkIzRjIzRkIxNzdBMDAzMDBDQzcgLyogUHJlZmVyZW5jZUNoYW5nZXMubW0gaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMTVDQkIzRTIzRkIxNzdBMDAz
MDBDQzcgLyogUHJlZmVyZW5jZUNoYW5nZXMubW0gKi87IH07CiAJCUMxNjkyRENBMjNEMTBEQUUw
MDZFODhGNyAvKiBCYXR0ZXJ5Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQzE2OTJEQzkyM0QxMERBRTAwNkU4OEY3IC8qIEJhdHRlcnkubW0gKi87IH07
CisJCUMxRjQ4NDA3MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9u
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzFGNDg0
MDYyNEVEREI0MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0gKi87IH07
CiAJCUMxRjdCNzM5MjQ0OTA4M0YwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2UubW0gaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMUY3QjczODI0NDkw
ODNGMDAxMjQ1NTcgLyogQUdYQ29tcGlsZXJTZXJ2aWNlLm1tICovOyB9OwogCQlDMUZGOUVEQjI0
NDY0NEYwMDA4MzlBRTQgLyogV2ViRmlsdGVyLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQzFGRjlFREEyNDQ2NDRGMDAwODM5QUU0IC8qIFdlYkZpbHRl
ci5tbSAqLzsgfTsKIAkJQzIwRjg4QTcyMjk1Qjk2NzAwRDYxMEZBIC8qIENvcmVUZXh0LmZyYW1l
d29yayBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMy
MEY4OEE2MjI5NUI5NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsgKi87IH07CkBAIC0y
NjA3LDYgKzI2MDgsNyBAQAogCQlDMTVDQkIzRTIzRkIxNzdBMDAzMDBDQzcgLyogUHJlZmVyZW5j
ZUNoYW5nZXMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQcmVm
ZXJlbmNlQ2hhbmdlcy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzE2OTJEQzky
M0QxMERBRTAwNkU4OEY3IC8qIEJhdHRlcnkubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBCYXR0
ZXJ5Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDMUQ4RUUyMTIwMjhFOEUzMDA4
RUIxNDEgLyogV2ViUHJvY2Vzc1Rlcm1pbmF0ZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lm9iamNwcDsgcGF0aCA9IFdlYlByb2Nlc3NUZXJtaW5hdGUubW07IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUMxRjQ4NDA2MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3NpYmlsaXR5UmVk
dWNlTW90aW9uLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQWNjZXNzaWJpbGl0eVJlZHVjZU1v
dGlvbi5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzFGN0I3MzgyNDQ5MDgzRjAw
MTI0NTU3IC8qIEFHWENvbXBpbGVyU2VydmljZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEFH
WENvbXBpbGVyU2VydmljZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzFGRjlF
REEyNDQ2NDRGMDAwODM5QUU0IC8qIFdlYkZpbHRlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9
IFdlYkZpbHRlci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzIwRjg4QTYyMjk1
Qjk2NzAwRDYxMEZBIC8qIENvcmVUZXh0LmZyYW1ld29yayAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHdyYXBwZXIuZnJhbWV3b3JrOyBuYW1lID0gQ29y
ZVRleHQuZnJhbWV3b3JrOyBwYXRoID0gU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlVGV4
dC5mcmFtZXdvcms7IHNvdXJjZVRyZWUgPSBTREtST09UOyB9OwpAQCAtMzA4NCw2ICszMDg2LDcg
QEAKIAkJMEYxMzlFNzQxQTQyM0E0NjAwRjU5MEY1IC8qIGNvY29hICovID0gewogCQkJaXNhID0g
UEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQlDMUY0ODQwNjI0RUREQjQwMDA1M0VDQjgg
LyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSAqLywKIAkJCQlFM0Y4QUI5MTI0MUFCOUNF
MDAzRTJBN0UgLyogQWNjZXNzaWJpbGl0eVJlbW90ZVVJQXBwLm1tICovLAogCQkJCUMxRjdCNzM4
MjQ0OTA4M0YwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2UubW0gKi8sCiAJCQkJQzE1Q0JC
MkYyM0YxRkYxQTAwMzAwQ0M3IC8qIEJhY2tsaWdodExldmVsTm90aWZpY2F0aW9uLm1tICovLApA
QCAtNDg2NSw5ICs0ODY4LDkgQEAKIAkJCQk3QzgzREVEMjFEMEE1OTBDMDBGRUJDRjMgLyogSGFz
aE1hcC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3QzgzREVENDFEMEE1OTBDMDBGRUJDRjMgLyog
SGFzaFNldC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3QzhCRkY3MTIzQzAxMDdBMDBDMDA5QjMg
LyogSGV4TnVtYmVyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMzOTc2RDgzMjREQzQ3OUIwMDgx
MjMwNCAvKiBJbmRleFNwYXJzZVNldC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3QzgzREVFMDFE
MEE1OTBDMDBGRUJDRjMgLyogSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk1M0ZDREU2QjIyOUVGRkI5MDA1OThFQ0YgLyogSXNvSGVhcC5jcHAgaW4gU291
cmNlcyAqLywKLQkJCQkzMzk3NkQ4MzI0REM0NzlCMDA4MTIzMDQgLyogSW5kZXhTcGFyc2VTZXQu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0NFQjYyQUIyMjM2MDlERTAwNjlDQkIwIC8qIEl0ZXJh
dG9yUmFuZ2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0EwNTA5NDExRkI5RjA2NDAwQjMzRkI4
IC8qIEpTT05WYWx1ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1MzFDMUQ4RTFERjhFRjcyMDA2
RTk3OUYgLyogTEVCRGVjb2Rlci5jcHAgaW4gU291cmNlcyAqLywKQEAgLTQ5NTQsNiArNDk1Nyw3
IEBACiAJCQkJNTdDNjI0NEUyMzQ2QkNGQTAwMzgzRkU3IC8qIF9XS1dlYkF1dGhlbnRpY2F0aW9u
UGFuZWwubW0gaW4gU291cmNlcyAqLywKIAkJCQk3Q0NFN0VFNDFBNDExQUU2MDA0NDdDNEMgLyog
QWJvdXRCbGFua0xvYWQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0NDRTdFQjMxQTQxMUE3RTAw
NDQ3QzRDIC8qIEFjY2VwdHNGaXJzdE1vdXNlLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJQzFGNDg0
MDcyNEVEREI0MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0gaW4gU291
cmNlcyAqLywKIAkJCQlFM0Y4QUI5MjI0MUFCOUNFMDAzRTJBN0UgLyogQWNjZXNzaWJpbGl0eVJl
bW90ZVVJQXBwLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkUyMDVCQTQxRjUyNzc0NjAwNTk1MkRE
IC8qIEFjY2Vzc2liaWxpdHlUZXN0c0lPUy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTlCRDUxMTFD
MUZFOEUxMTYwMEQyQjYzMCAvKiBBY2Nlc3NpbmdQYXN0ZWRJbWFnZS5tbSBpbiBTb3VyY2VzICov
LApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJl
ZHVjZU1vdGlvbi5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdC9BY2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tCShub25leGlzdGVudCkKKysrIFRvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0J
KHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw4MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNv
bmZpZy5oIgorCisjaW1wb3J0ICJQbGF0Zm9ybVV0aWxpdGllcy5oIgorI2ltcG9ydCAiVGVzdFdL
V2ViVmlldy5oIgorI2ltcG9ydCA8V2ViS2l0L1dLUHJvY2Vzc1Bvb2xQcml2YXRlLmg+CisjaW1w
b3J0IDxXZWJLaXQvX1dLUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmg+CisKKyNpbXBvcnQgPHBh
bC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaD4KKyNpbXBvcnQgPHd0Zi9Tb2Z0TGlua2luZy5oPgor
CitTT0ZUX0xJTktfRlJBTUVXT1JLKEFwcGxpY2F0aW9uU2VydmljZXMpCitTT0ZUX0xJTksoQXBw
bGljYXRpb25TZXJ2aWNlcywgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90aW9uRW5hYmxlZCwgdm9p
ZCwgKEJvb2xlYW4gZW5hYmxlKSwgKGVuYWJsZSkpOworU09GVF9MSU5LKEFwcGxpY2F0aW9uU2Vy
dmljZXMsIF9BWEludGVyZmFjZUdldFJlZHVjZU1vdGlvbkVuYWJsZWQsIEJvb2xlYW4sICgpLCAo
KSk7CisKKyNpZiBXS19IQVZFX0NfU1BJCisKK3N0YXRpYyBpbnQgcmVkdWNlTW90aW9uTm90aWZp
Y2F0aW9uQ291bnQgPSAwOworc3RhdGljIGJvb2wgZG9uZSA9IGZhbHNlOworCitURVNUKFdlYktp
dCwgQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbikKK3sKKyAgICBSZXRhaW5QdHI8TlNPYmplY3Q+
IGFjY2Vzc2liaWxpdHlPYnNlcnZlciA9IFtbTlNEaXN0cmlidXRlZE5vdGlmaWNhdGlvbkNlbnRl
ciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlckZvck5hbWU6KF9fYnJpZGdlIGlkKWtBWEludGVy
ZmFjZVJlZHVjZU1vdGlvblN0YXR1c0RpZENoYW5nZU5vdGlmaWNhdGlvbiBvYmplY3Q6bmlsIHF1
ZXVlOltOU09wZXJhdGlvblF1ZXVlIGN1cnJlbnRRdWV1ZV0gdXNpbmdCbG9jazpeKE5TTm90aWZp
Y2F0aW9uICpub3RlKSB7CisgICAgICAgIFdURkxvZ0Fsd2F5cygiUmVjZWl2ZWQgbm90aWZpY2F0
aW9uIik7CisgICAgICAgIHJlZHVjZU1vdGlvbk5vdGlmaWNhdGlvbkNvdW50Kys7CisgICAgICAg
IGlmIChyZWR1Y2VNb3Rpb25Ob3RpZmljYXRpb25Db3VudCA9PSAyKQorICAgICAgICAgICAgZG9u
ZSA9IHRydWU7CisgICAgfV07CisKKyAgICBhdXRvIGNvbmZpZ3VyYXRpb24gPSBhZG9wdE5TKFtb
V0tXZWJWaWV3Q29uZmlndXJhdGlvbiBhbGxvY10gaW5pdF0pOworICAgIFdLUmV0YWluUHRyPFdL
Q29udGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0soVGVzdFdlYktpdEFQSTo6VXRpbDo6Y3JlYXRl
Q29udGV4dEZvckluamVjdGVkQnVuZGxlVGVzdCgiSW50ZXJuYWxzSW5qZWN0ZWRCdW5kbGVUZXN0
IikpOworICAgIGNvbmZpZ3VyYXRpb24uZ2V0KCkucHJvY2Vzc1Bvb2wgPSAoV0tQcm9jZXNzUG9v
bCAqKWNvbnRleHQuZ2V0KCk7CisgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dl
YlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCAzMDAsIDMwMCkgY29u
ZmlndXJhdGlvbjpjb25maWd1cmF0aW9uLmdldCgpIGFkZFRvV2luZG93OllFU10pOworCisgICAg
Ly8gTmVlZCB0byBhY3RpdmF0ZSB0aGUgYXBwIHRvIGluaXRpYXRlIHRoZSBQcmVmZXJlbmNlIG9i
c2VydmVyCisgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBwb3N0Tm90
aWZpY2F0aW9uTmFtZTpOU0FwcGxpY2F0aW9uRGlkQmVjb21lQWN0aXZlTm90aWZpY2F0aW9uIG9i
amVjdDpOU0FwcCB1c2VySW5mbzpuaWxdOworCisgICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxv
YWRUZXN0UGFnZU5hbWVkOkAic2ltcGxlIl07CisKKyAgICBfQVhJbnRlcmZhY2VTZXRSZWR1Y2VN
b3Rpb25FbmFibGVkKFlFUyk7CisKKyAgICBBU1NFUlRfVFJVRShfQVhJbnRlcmZhY2VHZXRSZWR1
Y2VNb3Rpb25FbmFibGVkKCkpOworCisgICAgYXV0byByZWR1Y2VNb3Rpb24gPSBbJl0geworICAg
ICAgICByZXR1cm4gW3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdDpAIndpbmRv
dy5pbnRlcm5hbHMudXNlclByZWZlcnNSZWR1Y2VkTW90aW9uKCkiXS5ib29sVmFsdWU7CisgICAg
fTsKKyAgICAKKyAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZFRlc3RQYWdlTmFtZWQ6QCJz
aW1wbGUiXTsKKworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmZG9uZSk7CisKKyAgICBB
U1NFUlRfVFJVRShyZWR1Y2VNb3Rpb24oKSk7CisKKyAgICBfQVhJbnRlcmZhY2VTZXRSZWR1Y2VN
b3Rpb25FbmFibGVkKE5PKTsKK30KKworI2VuZGlmCkluZGV4OiBXZWJLaXQueGN3b3Jrc3BhY2Uv
eGNzaGFyZWRkYXRhL3hjc2NoZW1lcy9BbGwgVG9vbHMueGNzY2hlbWUKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViS2l0Lnhjd29ya3NwYWNlL3hjc2hhcmVkZGF0YS94Y3NjaGVtZXMvQWxsIFRvb2xzLnhjc2No
ZW1lCShyZXZpc2lvbiAyNjU4MTEpCisrKyBXZWJLaXQueGN3b3Jrc3BhY2UveGNzaGFyZWRkYXRh
L3hjc2NoZW1lcy9BbGwgVG9vbHMueGNzY2hlbWUJKHdvcmtpbmcgY29weSkKQEAgLTgzLDIwICs4
MywxMSBAQAogICAgICAgc2VsZWN0ZWREZWJ1Z2dlcklkZW50aWZpZXIgPSAiWGNvZGUuRGVidWdn
ZXJGb3VuZGF0aW9uLkRlYnVnZ2VyLkxMREIiCiAgICAgICBzZWxlY3RlZExhdW5jaGVySWRlbnRp
ZmllciA9ICJYY29kZS5EZWJ1Z2dlckZvdW5kYXRpb24uTGF1bmNoZXIuTExEQiIKICAgICAgIHNo
b3VsZFVzZUxhdW5jaFNjaGVtZUFyZ3NFbnYgPSAiWUVTIj4KLSAgICAgIDxNYWNyb0V4cGFuc2lv
bj4KLSAgICAgICAgIDxCdWlsZGFibGVSZWZlcmVuY2UKLSAgICAgICAgICAgIEJ1aWxkYWJsZUlk
ZW50aWZpZXIgPSAicHJpbWFyeSIKLSAgICAgICAgICAgIEJsdWVwcmludElkZW50aWZpZXIgPSAi
QTg0RjYwOEQwOEIxMzcwNjAwRTk3NDVGIgotICAgICAgICAgICAgQnVpbGRhYmxlTmFtZSA9ICJB
bGwiCi0gICAgICAgICAgICBCbHVlcHJpbnROYW1lID0gIkFsbCIKLSAgICAgICAgICAgIFJlZmVy
ZW5jZWRDb250YWluZXIgPSAiY29udGFpbmVyOlRvb2xzL0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5k
ZXJUcmVlLnhjb2RlcHJvaiI+Ci0gICAgICAgICA8L0J1aWxkYWJsZVJlZmVyZW5jZT4KLSAgICAg
IDwvTWFjcm9FeHBhbnNpb24+CiAgICAgICA8VGVzdGFibGVzPgogICAgICAgPC9UZXN0YWJsZXM+
CiAgICA8L1Rlc3RBY3Rpb24+CiAgICA8TGF1bmNoQWN0aW9uCi0gICAgICBidWlsZENvbmZpZ3Vy
YXRpb24gPSAiRGVidWciCisgICAgICBidWlsZENvbmZpZ3VyYXRpb24gPSAiUmVsZWFzZSIKICAg
ICAgIHNlbGVjdGVkRGVidWdnZXJJZGVudGlmaWVyID0gIlhjb2RlLkRlYnVnZ2VyRm91bmRhdGlv
bi5EZWJ1Z2dlci5MTERCIgogICAgICAgc2VsZWN0ZWRMYXVuY2hlcklkZW50aWZpZXIgPSAiWGNv
ZGUuRGVidWdnZXJGb3VuZGF0aW9uLkxhdW5jaGVyLkxMREIiCiAgICAgICBsYXVuY2hTdHlsZSA9
ICIwIgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406935</attachid>
            <date>2020-08-20 08:58:07 -0700</date>
            <delta_ts>2020-08-20 09:39:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215664-20200820085806.patch</filename>
            <type>text/plain</type>
            <size>15945</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjY1ODk4KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4
LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMgaW4g
IlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERlY2xhcmUgbm90aWZpY2F0aW9uIHNlbnQgd2hlbiB0aGUgIlJlZHVj
ZSBtb3Rpb24iIHNldHRpbmcgaXMgY2hhbmdlZC4KKyAKKyAgICAgICAgKiBwYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmg6CisKIDIwMjAtMDgtMTkgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlA
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gTW92ZSBzdGVwcGVyIHBhaW50aW5nIGNvZGUg
b2ZmIG9mIENhcmJvbiBBUEkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
bWFjL0hJU2VydmljZXNTUEkuaAkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ5LDYg
KzE0OSw4IEBAIEFYQ2xpZW50VHlwZSBfQVhHZXRDbGllbnRGb3JDdXJyZW50UmVxdWUKIHZvaWQg
X0FYU2V0Q2xpZW50SWRlbnRpZmljYXRpb25PdmVycmlkZShBWENsaWVudFR5cGUpOwogI2VuZGlm
IC8vIEhBVkUoQVhfQ0xJRU5UX1RZUEUpCiAKK2V4dGVybiBDRlN0cmluZ1JlZiBrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRpb247CisKIFdURl9FWFRFUk5f
Q19FTkQKIAogI2VuZGlmIC8vIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCkluZGV4OiBTb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwko
cmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0wOC0xOSAgUGVyIEFybmUgVm9sbGFuICA8cHZvbGxh
bkBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBXZWIgcGFnZXMgYXJlIG5vdCByZXNwb25k
aW5nIGNvcnJlY3RseSB0byBjaGFuZ2VzIGluICJSZWR1Y2UgbW90aW9uIiBzZXR0aW5nCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU2NjQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGhhcHBlbnMg
YmVjYXVzZSB0aGVyZSBpcyBhIHJhY2UgYmV0d2VlbiB0aGUgcHJlZmVyZW5jZSBjaGFuZ2UgYW5k
IG5vdGlmaWNhdGlvbiBiZWluZyByZWNlaXZlZCBpbiB0aGUgV2ViQ29udGVudAorICAgICAgICBw
cm9jZXNzLiBUaGlzIHJhY2UgaXMgdXN1YWxseSB3b24gYnkgdGhlIG5vdGlmaWNhdGlvbiwgd2hp
Y2ggdGhlbiByZWFkcyB0aGUgd3JvbmcgcHJlZmVyZW5jZSB2YWx1ZSB3aGVuIGJlaW5nIGhhbmRs
ZWQuCisgICAgICAgIFRoaXMgYnVnIHdhcyBpbnRyb2R1Y2VkIHdoZW4gYWNjZXNzIHRvIHRoZSBw
cmVmZXJlbmNlIGRhZW1vbiB3YXMgY2xvc2VkIGluIHRoZSBXZWJDb250ZW50IHByb2Nlc3MsIGFu
ZCBwcmVmZXJlbmNlcworICAgICAgICB3ZXJlIHVwZGF0ZWQgZnJvbSB0aGUgVUkgcHJvY2Vzcy4g
VGhpcyBwYXRjaCBhZGRyZXNzZXMgdGhpcyBpc3N1ZSBieSByZS1wb3N0aW5nIHRoZSBub3RpZmlj
YXRpb24gd2hlbiB0aGUgcHJlZmVyZW5jZQorICAgICAgICB2YWx1ZSBpcyB1cGRhdGVkIGluIHRo
ZSBXZWJDb250ZW50IHByb2Nlc3MuCisKKyAgICAgICAgQVBJIHRlc3Q6IFdlYktpdC5BY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nl
c3NDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6cmVkdWNlTW90aW9uUHJlZmVyZW5jZUtleSk6
CisgICAgICAgIChXZWJLaXQ6OmRpc3BhdGNoU2ltdWxhdGVkTm90aWZpY2F0aW9uc0ZvclByZWZl
cmVuY2VDaGFuZ2UpOgorCiAyMDIwLTA4LTE3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5j
b20+CiAKICAgICAgICAgQXVkaW9Db250ZXh0LmdldE91dHB1dFRpbWVzdGFtcCgpIGlzIG1pc3Np
bmcKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nl
c3NDb2NvYS5tbQkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAtMTI0LDYgKzEyNCw3
IEBACiAjaW1wb3J0ICJXZWJTd2l0Y2hpbmdHUFVDbGllbnQuaCIKICNpbXBvcnQgPFdlYkNvcmUv
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0xNYW5hZ2VyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Njcm9s
bGJhclRoZW1lTWFjLmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9ISVNlcnZpY2VzU1BJLmg+CiAj
aW1wb3J0IDxwYWwvc3BpL21hYy9OU1Njcm9sbGVySW1wU1BJLmg+CiAjZW5kaWYKIApAQCAtOTEw
LDYgKzkxMSwxMiBAQCBzdGF0aWMgY29uc3QgV1RGOjpTdHJpbmcmIHVzZXJIaWdobGlnaHRDCiAg
ICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPFdURjo6U3RyaW5nPiB1c2VySGlnaGxpZ2h0Q29sb3JQ
cmVmZXJlbmNlS2V5KE1BS0VfU1RBVElDX1NUUklOR19JTVBMKCJBcHBsZUhpZ2hsaWdodENvbG9y
IikpOwogICAgIHJldHVybiB1c2VySGlnaGxpZ2h0Q29sb3JQcmVmZXJlbmNlS2V5OwogfQorCitz
dGF0aWMgY29uc3QgV1RGOjpTdHJpbmcmIHJlZHVjZU1vdGlvblByZWZlcmVuY2VLZXkoKQorewor
ICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxXVEY6OlN0cmluZz4ga2V5KE1BS0VfU1RBVElDX1NU
UklOR19JTVBMKCJyZWR1Y2VNb3Rpb24iKSk7CisgICAgcmV0dXJuIGtleTsKK30KICNlbmRpZgog
CiBzdGF0aWMgdm9pZCBkaXNwYXRjaFNpbXVsYXRlZE5vdGlmaWNhdGlvbnNGb3JQcmVmZXJlbmNl
Q2hhbmdlKGNvbnN0IFN0cmluZyYga2V5KQpAQCAtOTIwLDE3ICs5MjcsMjAgQEAgc3RhdGljIHZv
aWQgZGlzcGF0Y2hTaW11bGF0ZWROb3RpZmljYXRpbwogICAgIC8vIG9mIHRoZSBzeXN0ZW0sIHdl
IG11c3QgcmUtcG9zdCB0aGUgbm90aWZpY2F0aW9uIGluIHRoZSBXZWIgQ29udGVudCBwcm9jZXNz
IGFmdGVyIHVwZGF0aW5nIHRoZSBkZWZhdWx0LgogICAgIAogICAgIGlmIChrZXkgPT0gdXNlckFj
Y2VudENvbG9yUHJlZmVyZW5jZUtleSgpKSB7Ci0gICAgICAgIE5TTm90aWZpY2F0aW9uQ2VudGVy
ICpub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRl
cl07CisgICAgICAgIGF1dG8gbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2Vu
dGVyIGRlZmF1bHRDZW50ZXJdOwogICAgICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHBvc3ROb3Rp
ZmljYXRpb25OYW1lOkAia0NVSU5vdGlmaWNhdGlvbkFxdWFDb2xvclZhcmlhbnRDaGFuZ2VkIiBv
YmplY3Q6bmlsXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9u
TmFtZTpAIk5TU3lzdGVtQ29sb3JzV2lsbENoYW5nZU5vdGlmaWNhdGlvbiIgb2JqZWN0Om5pbF07
CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6TlNTeXN0
ZW1Db2xvcnNEaWRDaGFuZ2VOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07Ci0gICAgfQotICAgIGlm
IChrZXkgPT0gdXNlckhpZ2hsaWdodENvbG9yUHJlZmVyZW5jZUtleSgpKSB7Ci0gICAgICAgIE5T
Tm90aWZpY2F0aW9uQ2VudGVyICpub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25D
ZW50ZXIgZGVmYXVsdENlbnRlcl07CisgICAgfSBlbHNlIGlmIChrZXkgPT0gdXNlckhpZ2hsaWdo
dENvbG9yUHJlZmVyZW5jZUtleSgpKSB7CisgICAgICAgIGF1dG8gbm90aWZpY2F0aW9uQ2VudGVy
ID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOwogICAgICAgICBbbm90aWZp
Y2F0aW9uQ2VudGVyIHBvc3ROb3RpZmljYXRpb25OYW1lOkAiTlNTeXN0ZW1Db2xvcnNXaWxsQ2hh
bmdlTm90aWZpY2F0aW9uIiBvYmplY3Q6bmlsXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRl
ciBwb3N0Tm90aWZpY2F0aW9uTmFtZTpOU1N5c3RlbUNvbG9yc0RpZENoYW5nZU5vdGlmaWNhdGlv
biBvYmplY3Q6bmlsXTsKKyAgICB9IGVsc2UgaWYgKGtleSA9PSByZWR1Y2VNb3Rpb25QcmVmZXJl
bmNlS2V5KCkpIHsKKyAgICAgICAgYXV0byBub3RpZmljYXRpb25DZW50ZXIgPSBDRk5vdGlmaWNh
dGlvbkNlbnRlckdldERpc3RyaWJ1dGVkQ2VudGVyKCk7CisgICAgICAgIENGTm90aWZpY2F0aW9u
Q2VudGVyUG9zdE5vdGlmaWNhdGlvbihub3RpZmljYXRpb25DZW50ZXIsIGtBWEludGVyZmFjZVJl
ZHVjZU1vdGlvblN0YXR1c0RpZENoYW5nZU5vdGlmaWNhdGlvbiwgbnVsbHB0ciwgbnVsbHB0ciwg
dHJ1ZSk7CiAgICAgfQogI2VuZGlmCisgICAgV1RGTG9nQWx3YXlzKCJQcmVmZXJlbmNlICVzIGNo
YW5nZWQuIiwga2V5LnV0ZjgoKS5kYXRhKCkpOwogfQogCiBzdGF0aWMgdm9pZCBzZXRQcmVmZXJl
bmNlVmFsdWUoY29uc3QgU3RyaW5nJiBkb21haW4sIGNvbnN0IFN0cmluZyYga2V5LCBpZCB2YWx1
ZSkKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJ
KHJldmlzaW9uIDI2NTkwNSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAt
MSwzICsxLDE0IEBACisyMDIwLTA4LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxl
LmNvbT4KKworICAgICAgICBbbWFjT1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29y
cmVjdGx5IHRvIGNoYW5nZXMgaW4gIlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0
V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogVGVzdFdlYktp
dEFQSS9UZXN0cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbTogQWRkZWQuCisg
ICAgICAgIChURVNUKToKKwogMjAyMC0wOC0xOSAgSm9uYXRoYW4gQmVkYXJkICA8amJlZGFyZEBh
cHBsZS5jb20+CiAKICAgICAgICAgW3dlYmtpdGNvcmVweV0gRmFpbHVyZSB0byBzZXQgaW5kZXgg
c2hvdWxkIG5vdCBiZSBmYXRhbApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0
QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9u
IDI2NTgxMSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC05MzMsNiArOTMzLDcgQEAKIAkJQzE1
Q0JCMzAyM0YxRkYxQTAwMzAwQ0M3IC8qIEJhY2tsaWdodExldmVsTm90aWZpY2F0aW9uLm1tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzE1Q0JCMkYyM0Yx
RkYxQTAwMzAwQ0M3IC8qIEJhY2tsaWdodExldmVsTm90aWZpY2F0aW9uLm1tICovOyB9OwogCQlD
MTVDQkIzRjIzRkIxNzdBMDAzMDBDQzcgLyogUHJlZmVyZW5jZUNoYW5nZXMubW0gaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMTVDQkIzRTIzRkIxNzdBMDAz
MDBDQzcgLyogUHJlZmVyZW5jZUNoYW5nZXMubW0gKi87IH07CiAJCUMxNjkyRENBMjNEMTBEQUUw
MDZFODhGNyAvKiBCYXR0ZXJ5Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQzE2OTJEQzkyM0QxMERBRTAwNkU4OEY3IC8qIEJhdHRlcnkubW0gKi87IH07
CisJCUMxRjQ4NDA3MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9u
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzFGNDg0
MDYyNEVEREI0MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0gKi87IH07
CiAJCUMxRjdCNzM5MjQ0OTA4M0YwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2UubW0gaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMUY3QjczODI0NDkw
ODNGMDAxMjQ1NTcgLyogQUdYQ29tcGlsZXJTZXJ2aWNlLm1tICovOyB9OwogCQlDMUZGOUVEQjI0
NDY0NEYwMDA4MzlBRTQgLyogV2ViRmlsdGVyLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQzFGRjlFREEyNDQ2NDRGMDAwODM5QUU0IC8qIFdlYkZpbHRl
ci5tbSAqLzsgfTsKIAkJQzIwRjg4QTcyMjk1Qjk2NzAwRDYxMEZBIC8qIENvcmVUZXh0LmZyYW1l
d29yayBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMy
MEY4OEE2MjI5NUI5NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsgKi87IH07CkBAIC0y
NjA3LDYgKzI2MDgsNyBAQAogCQlDMTVDQkIzRTIzRkIxNzdBMDAzMDBDQzcgLyogUHJlZmVyZW5j
ZUNoYW5nZXMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQcmVm
ZXJlbmNlQ2hhbmdlcy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzE2OTJEQzky
M0QxMERBRTAwNkU4OEY3IC8qIEJhdHRlcnkubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBCYXR0
ZXJ5Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDMUQ4RUUyMTIwMjhFOEUzMDA4
RUIxNDEgLyogV2ViUHJvY2Vzc1Rlcm1pbmF0ZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lm9iamNwcDsgcGF0aCA9IFdlYlByb2Nlc3NUZXJtaW5hdGUubW07IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUMxRjQ4NDA2MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3NpYmlsaXR5UmVk
dWNlTW90aW9uLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQWNjZXNzaWJpbGl0eVJlZHVjZU1v
dGlvbi5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzFGN0I3MzgyNDQ5MDgzRjAw
MTI0NTU3IC8qIEFHWENvbXBpbGVyU2VydmljZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEFH
WENvbXBpbGVyU2VydmljZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzFGRjlF
REEyNDQ2NDRGMDAwODM5QUU0IC8qIFdlYkZpbHRlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9
IFdlYkZpbHRlci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzIwRjg4QTYyMjk1
Qjk2NzAwRDYxMEZBIC8qIENvcmVUZXh0LmZyYW1ld29yayAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHdyYXBwZXIuZnJhbWV3b3JrOyBuYW1lID0gQ29y
ZVRleHQuZnJhbWV3b3JrOyBwYXRoID0gU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlVGV4
dC5mcmFtZXdvcms7IHNvdXJjZVRyZWUgPSBTREtST09UOyB9OwpAQCAtMzA4NCw2ICszMDg2LDcg
QEAKIAkJMEYxMzlFNzQxQTQyM0E0NjAwRjU5MEY1IC8qIGNvY29hICovID0gewogCQkJaXNhID0g
UEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQlDMUY0ODQwNjI0RUREQjQwMDA1M0VDQjgg
LyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSAqLywKIAkJCQlFM0Y4QUI5MTI0MUFCOUNF
MDAzRTJBN0UgLyogQWNjZXNzaWJpbGl0eVJlbW90ZVVJQXBwLm1tICovLAogCQkJCUMxRjdCNzM4
MjQ0OTA4M0YwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2UubW0gKi8sCiAJCQkJQzE1Q0JC
MkYyM0YxRkYxQTAwMzAwQ0M3IC8qIEJhY2tsaWdodExldmVsTm90aWZpY2F0aW9uLm1tICovLApA
QCAtNDg2NSw5ICs0ODY4LDkgQEAKIAkJCQk3QzgzREVEMjFEMEE1OTBDMDBGRUJDRjMgLyogSGFz
aE1hcC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3QzgzREVENDFEMEE1OTBDMDBGRUJDRjMgLyog
SGFzaFNldC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3QzhCRkY3MTIzQzAxMDdBMDBDMDA5QjMg
LyogSGV4TnVtYmVyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMzOTc2RDgzMjREQzQ3OUIwMDgx
MjMwNCAvKiBJbmRleFNwYXJzZVNldC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3QzgzREVFMDFE
MEE1OTBDMDBGRUJDRjMgLyogSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk1M0ZDREU2QjIyOUVGRkI5MDA1OThFQ0YgLyogSXNvSGVhcC5jcHAgaW4gU291
cmNlcyAqLywKLQkJCQkzMzk3NkQ4MzI0REM0NzlCMDA4MTIzMDQgLyogSW5kZXhTcGFyc2VTZXQu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0NFQjYyQUIyMjM2MDlERTAwNjlDQkIwIC8qIEl0ZXJh
dG9yUmFuZ2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0EwNTA5NDExRkI5RjA2NDAwQjMzRkI4
IC8qIEpTT05WYWx1ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1MzFDMUQ4RTFERjhFRjcyMDA2
RTk3OUYgLyogTEVCRGVjb2Rlci5jcHAgaW4gU291cmNlcyAqLywKQEAgLTQ5NTQsNiArNDk1Nyw3
IEBACiAJCQkJNTdDNjI0NEUyMzQ2QkNGQTAwMzgzRkU3IC8qIF9XS1dlYkF1dGhlbnRpY2F0aW9u
UGFuZWwubW0gaW4gU291cmNlcyAqLywKIAkJCQk3Q0NFN0VFNDFBNDExQUU2MDA0NDdDNEMgLyog
QWJvdXRCbGFua0xvYWQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0NDRTdFQjMxQTQxMUE3RTAw
NDQ3QzRDIC8qIEFjY2VwdHNGaXJzdE1vdXNlLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJQzFGNDg0
MDcyNEVEREI0MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0gaW4gU291
cmNlcyAqLywKIAkJCQlFM0Y4QUI5MjI0MUFCOUNFMDAzRTJBN0UgLyogQWNjZXNzaWJpbGl0eVJl
bW90ZVVJQXBwLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkUyMDVCQTQxRjUyNzc0NjAwNTk1MkRE
IC8qIEFjY2Vzc2liaWxpdHlUZXN0c0lPUy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTlCRDUxMTFD
MUZFOEUxMTYwMEQyQjYzMCAvKiBBY2Nlc3NpbmdQYXN0ZWRJbWFnZS5tbSBpbiBTb3VyY2VzICov
LApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJl
ZHVjZU1vdGlvbi5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdC9BY2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tCShub25leGlzdGVudCkKKysrIFRvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0J
KHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw5OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNv
bmZpZy5oIgorCisjaWYgV0tfSEFWRV9DX1NQSQorCisjaW1wb3J0ICJQbGF0Zm9ybVV0aWxpdGll
cy5oIgorI2ltcG9ydCAiVGVzdFdLV2ViVmlldy5oIgorI2ltcG9ydCA8V2ViS2l0L1ByZWZlcmVu
Y2VPYnNlcnZlci5oPgorI2ltcG9ydCA8V2ViS2l0L1dLUHJvY2Vzc1Bvb2xQcml2YXRlLmg+Cisj
aW1wb3J0IDxXZWJLaXQvX1dLUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmg+CisKKyNpbXBvcnQg
PHBhbC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaD4KKyNpbXBvcnQgPHd0Zi9Tb2Z0TGlua2luZy5o
PgorCitTT0ZUX0xJTktfRlJBTUVXT1JLKEFwcGxpY2F0aW9uU2VydmljZXMpCitTT0ZUX0xJTkso
QXBwbGljYXRpb25TZXJ2aWNlcywgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90aW9uRW5hYmxlZCwg
dm9pZCwgKEJvb2xlYW4gZW5hYmxlKSwgKGVuYWJsZSkpOworU09GVF9MSU5LKEFwcGxpY2F0aW9u
U2VydmljZXMsIF9BWEludGVyZmFjZUdldFJlZHVjZU1vdGlvbkVuYWJsZWQsIEJvb2xlYW4sICgp
LCAoKSk7CisKK3N0YXRpYyBpbnQgcmVkdWNlTW90aW9uTm90aWZpY2F0aW9uQ291bnQgPSAwOwor
c3RhdGljIGJvb2wgZG9uZSA9IGZhbHNlOworCitzdGF0aWMgYm9vbCByZWNlaXZlZFByZWZlcmVu
Y2VOb3RpZmljYXRpb24gPSBmYWxzZTsKKworQGludGVyZmFjZSBXS1ByZWZlcmVuY2VPYnNlcnZl
ckZvclRlc3RpbmcgOiBXS1ByZWZlcmVuY2VPYnNlcnZlcgorLSAodm9pZClwcmVmZXJlbmNlRGlk
Q2hhbmdlOihOU1N0cmluZyAqKWRvbWFpbiBrZXk6KE5TU3RyaW5nICopa2V5IGVuY29kZWRWYWx1
ZTooTlNTdHJpbmcgKillbmNvZGVkVmFsdWU7CitAZW5kCisKK0BpbXBsZW1lbnRhdGlvbiBXS1By
ZWZlcmVuY2VPYnNlcnZlckZvclRlc3RpbmcKKy0gKHZvaWQpcHJlZmVyZW5jZURpZENoYW5nZToo
TlNTdHJpbmcgKilkb21haW4ga2V5OihOU1N0cmluZyAqKWtleSBlbmNvZGVkVmFsdWU6KE5TU3Ry
aW5nICopZW5jb2RlZFZhbHVlCit7CisgICAgcmVjZWl2ZWRQcmVmZXJlbmNlTm90aWZpY2F0aW9u
ID0gdHJ1ZTsKKyAgICBXVEZMb2dBbHdheXMoIlByZWZlcmVuY2UgY2hhbmdlZCAlcyAlcyIsIFN0
cmluZyhkb21haW4pLnV0ZjgoKS5kYXRhKCksIFN0cmluZyhrZXkpLnV0ZjgoKS5kYXRhKCkpOwor
ICAgIFtzdXBlciBwcmVmZXJlbmNlRGlkQ2hhbmdlOmRvbWFpbiBrZXk6a2V5IGVuY29kZWRWYWx1
ZTplbmNvZGVkVmFsdWVdOworfQorQGVuZAorCitURVNUKFdlYktpdCwgQWNjZXNzaWJpbGl0eVJl
ZHVjZU1vdGlvbikKK3sKKyAgICBSZXRhaW5QdHI8TlNPYmplY3Q+IGFjY2Vzc2liaWxpdHlPYnNl
cnZlciA9IFtbTlNEaXN0cmlidXRlZE5vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBh
ZGRPYnNlcnZlckZvck5hbWU6KF9fYnJpZGdlIGlkKWtBWEludGVyZmFjZVJlZHVjZU1vdGlvblN0
YXR1c0RpZENoYW5nZU5vdGlmaWNhdGlvbiBvYmplY3Q6bmlsIHF1ZXVlOltOU09wZXJhdGlvblF1
ZXVlIGN1cnJlbnRRdWV1ZV0gdXNpbmdCbG9jazpeKE5TTm90aWZpY2F0aW9uICpub3RlKSB7Cisg
ICAgICAgIFdURkxvZ0Fsd2F5cygiUmVjZWl2ZWQgbm90aWZpY2F0aW9uIik7CisgICAgICAgIHJl
ZHVjZU1vdGlvbk5vdGlmaWNhdGlvbkNvdW50Kys7CisgICAgICAgIGlmIChyZWR1Y2VNb3Rpb25O
b3RpZmljYXRpb25Db3VudCA9PSAyKQorICAgICAgICAgICAgZG9uZSA9IHRydWU7CisgICAgfV07
CisKKyAgICBhdXRvIGNvbmZpZ3VyYXRpb24gPSBhZG9wdE5TKFtbV0tXZWJWaWV3Q29uZmlndXJh
dGlvbiBhbGxvY10gaW5pdF0pOworICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4
dCA9IGFkb3B0V0soVGVzdFdlYktpdEFQSTo6VXRpbDo6Y3JlYXRlQ29udGV4dEZvckluamVjdGVk
QnVuZGxlVGVzdCgiSW50ZXJuYWxzSW5qZWN0ZWRCdW5kbGVUZXN0IikpOworICAgIGNvbmZpZ3Vy
YXRpb24uZ2V0KCkucHJvY2Vzc1Bvb2wgPSAoV0tQcm9jZXNzUG9vbCAqKWNvbnRleHQuZ2V0KCk7
CisgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRX
aXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCAzMDAsIDMwMCkgY29uZmlndXJhdGlvbjpjb25maWd1
cmF0aW9uLmdldCgpIGFkZFRvV2luZG93OllFU10pOworCisgICAgYXV0byBvYnNlcnZlciA9IGFk
b3B0TlMoW1tXS1ByZWZlcmVuY2VPYnNlcnZlckZvclRlc3RpbmcgYWxsb2NdIGluaXRdKTsKKwor
ICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkVGVzdFBhZ2VOYW1lZDpAInNpbXBsZSJdOwor
CisgICAgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90aW9uRW5hYmxlZChZRVMpOworCisgICAgQVNT
RVJUX1RSVUUoX0FYSW50ZXJmYWNlR2V0UmVkdWNlTW90aW9uRW5hYmxlZCgpKTsKKworICAgIFRl
c3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmcmVjZWl2ZWRQcmVmZXJlbmNlTm90aWZpY2F0aW9uKTsK
KworICAgIGF1dG8gcmVkdWNlTW90aW9uID0gWyZdIHsKKyAgICAgICAgcmV0dXJuIFt3ZWJWaWV3
IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJ3aW5kb3cuaW50ZXJuYWxzLnVzZXJQcmVm
ZXJzUmVkdWNlZE1vdGlvbigpIl0uYm9vbFZhbHVlOworICAgIH07CisgICAgCisgICAgW3dlYlZp
ZXcgc3luY2hyb25vdXNseUxvYWRUZXN0UGFnZU5hbWVkOkAic2ltcGxlIl07CisKKyAgICBUZXN0
V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRvbmUpOworCisgICAgQVNTRVJUX1RSVUUocmVkdWNlTW90
aW9uKCkpOworCisgICAgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90aW9uRW5hYmxlZChOTyk7Cit9
CisKKyNlbmRpZgpJbmRleDogV2ViS2l0Lnhjd29ya3NwYWNlL3hjc2hhcmVkZGF0YS94Y3NjaGVt
ZXMvQWxsIFRvb2xzLnhjc2NoZW1lCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC54Y3dvcmtzcGFjZS94
Y3NoYXJlZGRhdGEveGNzY2hlbWVzL0FsbCBUb29scy54Y3NjaGVtZQkocmV2aXNpb24gMjY1ODEx
KQorKysgV2ViS2l0Lnhjd29ya3NwYWNlL3hjc2hhcmVkZGF0YS94Y3NjaGVtZXMvQWxsIFRvb2xz
Lnhjc2NoZW1lCSh3b3JraW5nIGNvcHkpCkBAIC04MywyMCArODMsMTEgQEAKICAgICAgIHNlbGVj
dGVkRGVidWdnZXJJZGVudGlmaWVyID0gIlhjb2RlLkRlYnVnZ2VyRm91bmRhdGlvbi5EZWJ1Z2dl
ci5MTERCIgogICAgICAgc2VsZWN0ZWRMYXVuY2hlcklkZW50aWZpZXIgPSAiWGNvZGUuRGVidWdn
ZXJGb3VuZGF0aW9uLkxhdW5jaGVyLkxMREIiCiAgICAgICBzaG91bGRVc2VMYXVuY2hTY2hlbWVB
cmdzRW52ID0gIllFUyI+Ci0gICAgICA8TWFjcm9FeHBhbnNpb24+Ci0gICAgICAgICA8QnVpbGRh
YmxlUmVmZXJlbmNlCi0gICAgICAgICAgICBCdWlsZGFibGVJZGVudGlmaWVyID0gInByaW1hcnki
Ci0gICAgICAgICAgICBCbHVlcHJpbnRJZGVudGlmaWVyID0gIkE4NEY2MDhEMDhCMTM3MDYwMEU5
NzQ1RiIKLSAgICAgICAgICAgIEJ1aWxkYWJsZU5hbWUgPSAiQWxsIgotICAgICAgICAgICAgQmx1
ZXByaW50TmFtZSA9ICJBbGwiCi0gICAgICAgICAgICBSZWZlcmVuY2VkQ29udGFpbmVyID0gImNv
bnRhaW5lcjpUb29scy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS54Y29kZXByb2oiPgot
ICAgICAgICAgPC9CdWlsZGFibGVSZWZlcmVuY2U+Ci0gICAgICA8L01hY3JvRXhwYW5zaW9uPgog
ICAgICAgPFRlc3RhYmxlcz4KICAgICAgIDwvVGVzdGFibGVzPgogICAgPC9UZXN0QWN0aW9uPgog
ICAgPExhdW5jaEFjdGlvbgotICAgICAgYnVpbGRDb25maWd1cmF0aW9uID0gIkRlYnVnIgorICAg
ICAgYnVpbGRDb25maWd1cmF0aW9uID0gIlJlbGVhc2UiCiAgICAgICBzZWxlY3RlZERlYnVnZ2Vy
SWRlbnRpZmllciA9ICJYY29kZS5EZWJ1Z2dlckZvdW5kYXRpb24uRGVidWdnZXIuTExEQiIKICAg
ICAgIHNlbGVjdGVkTGF1bmNoZXJJZGVudGlmaWVyID0gIlhjb2RlLkRlYnVnZ2VyRm91bmRhdGlv
bi5MYXVuY2hlci5MTERCIgogICAgICAgbGF1bmNoU3R5bGUgPSAiMCIK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406937</attachid>
            <date>2020-08-20 09:30:09 -0700</date>
            <delta_ts>2020-08-20 12:36:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215664-20200820093008.patch</filename>
            <type>text/plain</type>
            <size>15371</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjY1ODk4KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4
LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMgaW4g
IlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERlY2xhcmUgbm90aWZpY2F0aW9uIHNlbnQgd2hlbiB0aGUgIlJlZHVj
ZSBtb3Rpb24iIHNldHRpbmcgaXMgY2hhbmdlZC4KKyAKKyAgICAgICAgKiBwYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmg6CisKIDIwMjAtMDgtMTkgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlA
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gTW92ZSBzdGVwcGVyIHBhaW50aW5nIGNvZGUg
b2ZmIG9mIENhcmJvbiBBUEkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
bWFjL0hJU2VydmljZXNTUEkuaAkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ5LDYg
KzE0OSw5IEBAIEFYQ2xpZW50VHlwZSBfQVhHZXRDbGllbnRGb3JDdXJyZW50UmVxdWUKIHZvaWQg
X0FYU2V0Q2xpZW50SWRlbnRpZmljYXRpb25PdmVycmlkZShBWENsaWVudFR5cGUpOwogI2VuZGlm
IC8vIEhBVkUoQVhfQ0xJRU5UX1RZUEUpCiAKK2V4dGVybiBDRlN0cmluZ1JlZiBrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRpb247CitleHRlcm4gQ0ZTdHJp
bmdSZWYga0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5OworCiBXVEZfRVhURVJOX0NfRU5ECiAK
ICNlbmRpZiAvLyBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQpJbmRleDogU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9u
IDI2NTgxMSkKKysrIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMjIgQEAKKzIwMjAtMDgtMTkgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFttYWNPU10gV2ViIHBhZ2VzIGFyZSBub3QgcmVzcG9uZGluZyBjb3Jy
ZWN0bHkgdG8gY2hhbmdlcyBpbiAiUmVkdWNlIG1vdGlvbiIgc2V0dGluZworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NjY0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBoYXBwZW5zIGJlY2F1c2Ug
dGhlcmUgaXMgYSByYWNlIGJldHdlZW4gdGhlIHByZWZlcmVuY2UgY2hhbmdlIGFuZCBub3RpZmlj
YXRpb24gYmVpbmcgcmVjZWl2ZWQgaW4gdGhlIFdlYkNvbnRlbnQKKyAgICAgICAgcHJvY2Vzcy4g
VGhpcyByYWNlIGlzIHVzdWFsbHkgd29uIGJ5IHRoZSBub3RpZmljYXRpb24sIHdoaWNoIHRoZW4g
cmVhZHMgdGhlIHdyb25nIHByZWZlcmVuY2UgdmFsdWUgd2hlbiBiZWluZyBoYW5kbGVkLgorICAg
ICAgICBUaGlzIGJ1ZyB3YXMgaW50cm9kdWNlZCB3aGVuIGFjY2VzcyB0byB0aGUgcHJlZmVyZW5j
ZSBkYWVtb24gd2FzIGNsb3NlZCBpbiB0aGUgV2ViQ29udGVudCBwcm9jZXNzLCBhbmQgcHJlZmVy
ZW5jZXMKKyAgICAgICAgd2VyZSB1cGRhdGVkIGZyb20gdGhlIFVJIHByb2Nlc3MuIFRoaXMgcGF0
Y2ggYWRkcmVzc2VzIHRoaXMgaXNzdWUgYnkgcmUtcG9zdGluZyB0aGUgbm90aWZpY2F0aW9uIHdo
ZW4gdGhlIHByZWZlcmVuY2UKKyAgICAgICAgdmFsdWUgaXMgdXBkYXRlZCBpbiB0aGUgV2ViQ29u
dGVudCBwcm9jZXNzLgorCisgICAgICAgIEFQSSB0ZXN0OiBXZWJLaXQuQWNjZXNzaWJpbGl0eVJl
ZHVjZU1vdGlvbgorCisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW06CisgICAgICAgIChXZWJLaXQ6OnJlZHVjZU1vdGlvblByZWZlcmVuY2VLZXkpOgorICAgICAg
ICAoV2ViS2l0OjpkaXNwYXRjaFNpbXVsYXRlZE5vdGlmaWNhdGlvbnNGb3JQcmVmZXJlbmNlQ2hh
bmdlKToKKwogMjAyMC0wOC0xNyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAg
ICAgICAgIEF1ZGlvQ29udGV4dC5nZXRPdXRwdXRUaW1lc3RhbXAoKSBpcyBtaXNzaW5nCkluZGV4
OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW0JKHJldmlzaW9uIDI2NTgxMSkKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9X
ZWJQcm9jZXNzQ29jb2EubW0JKHdvcmtpbmcgY29weSkKQEAgLTEyNCw2ICsxMjQsNyBAQAogI2lt
cG9ydCAiV2ViU3dpdGNoaW5nR1BVQ2xpZW50LmgiCiAjaW1wb3J0IDxXZWJDb3JlL0dyYXBoaWNz
Q29udGV4dEdMT3BlbkdMTWFuYWdlci5oPgogI2ltcG9ydCA8V2ViQ29yZS9TY3JvbGxiYXJUaGVt
ZU1hYy5oPgorI2ltcG9ydCA8cGFsL3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5oPgogI2ltcG9ydCA8
cGFsL3NwaS9tYWMvTlNTY3JvbGxlckltcFNQSS5oPgogI2VuZGlmCiAKQEAgLTkxMCw2ICs5MTEs
MTIgQEAgc3RhdGljIGNvbnN0IFdURjo6U3RyaW5nJiB1c2VySGlnaGxpZ2h0QwogICAgIHN0YXRp
YyBOZXZlckRlc3Ryb3llZDxXVEY6OlN0cmluZz4gdXNlckhpZ2hsaWdodENvbG9yUHJlZmVyZW5j
ZUtleShNQUtFX1NUQVRJQ19TVFJJTkdfSU1QTCgiQXBwbGVIaWdobGlnaHRDb2xvciIpKTsKICAg
ICByZXR1cm4gdXNlckhpZ2hsaWdodENvbG9yUHJlZmVyZW5jZUtleTsKIH0KKworc3RhdGljIGNv
bnN0IFdURjo6U3RyaW5nJiByZWR1Y2VNb3Rpb25QcmVmZXJlbmNlS2V5KCkKK3sKKyAgICBzdGF0
aWMgTmV2ZXJEZXN0cm95ZWQ8V1RGOjpTdHJpbmc+IGtleShNQUtFX1NUQVRJQ19TVFJJTkdfSU1Q
TCgicmVkdWNlTW90aW9uIikpOworICAgIHJldHVybiBrZXk7Cit9CiAjZW5kaWYKIAogc3RhdGlj
IHZvaWQgZGlzcGF0Y2hTaW11bGF0ZWROb3RpZmljYXRpb25zRm9yUHJlZmVyZW5jZUNoYW5nZShj
b25zdCBTdHJpbmcmIGtleSkKQEAgLTkyMCwxNyArOTI3LDIwIEBAIHN0YXRpYyB2b2lkIGRpc3Bh
dGNoU2ltdWxhdGVkTm90aWZpY2F0aW8KICAgICAvLyBvZiB0aGUgc3lzdGVtLCB3ZSBtdXN0IHJl
LXBvc3QgdGhlIG5vdGlmaWNhdGlvbiBpbiB0aGUgV2ViIENvbnRlbnQgcHJvY2VzcyBhZnRlciB1
cGRhdGluZyB0aGUgZGVmYXVsdC4KICAgICAKICAgICBpZiAoa2V5ID09IHVzZXJBY2NlbnRDb2xv
clByZWZlcmVuY2VLZXkoKSkgewotICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZp
Y2F0aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAg
ICAgICBhdXRvIG5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZh
dWx0Q2VudGVyXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9u
TmFtZTpAImtDVUlOb3RpZmljYXRpb25BcXVhQ29sb3JWYXJpYW50Q2hhbmdlZCIgb2JqZWN0Om5p
bF07CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6QCJO
U1N5c3RlbUNvbG9yc1dpbGxDaGFuZ2VOb3RpZmljYXRpb24iIG9iamVjdDpuaWxdOwogICAgICAg
ICBbbm90aWZpY2F0aW9uQ2VudGVyIHBvc3ROb3RpZmljYXRpb25OYW1lOk5TU3lzdGVtQ29sb3Jz
RGlkQ2hhbmdlTm90aWZpY2F0aW9uIG9iamVjdDpuaWxdOwotICAgIH0KLSAgICBpZiAoa2V5ID09
IHVzZXJIaWdobGlnaHRDb2xvclByZWZlcmVuY2VLZXkoKSkgewotICAgICAgICBOU05vdGlmaWNh
dGlvbkNlbnRlciAqbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRl
ZmF1bHRDZW50ZXJdOworICAgIH0gZWxzZSBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclBy
ZWZlcmVuY2VLZXkoKSkgeworICAgICAgICBhdXRvIG5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05v
dGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNl
bnRlciBwb3N0Tm90aWZpY2F0aW9uTmFtZTpAIk5TU3lzdGVtQ29sb3JzV2lsbENoYW5nZU5vdGlm
aWNhdGlvbiIgb2JqZWN0Om5pbF07CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5v
dGlmaWNhdGlvbk5hbWU6TlNTeXN0ZW1Db2xvcnNEaWRDaGFuZ2VOb3RpZmljYXRpb24gb2JqZWN0
Om5pbF07CisgICAgfSBlbHNlIGlmIChrZXkgPT0gcmVkdWNlTW90aW9uUHJlZmVyZW5jZUtleSgp
KSB7CisgICAgICAgIGF1dG8gbm90aWZpY2F0aW9uQ2VudGVyID0gQ0ZOb3RpZmljYXRpb25DZW50
ZXJHZXREaXN0cmlidXRlZENlbnRlcigpOworICAgICAgICBDRk5vdGlmaWNhdGlvbkNlbnRlclBv
c3ROb3RpZmljYXRpb24obm90aWZpY2F0aW9uQ2VudGVyLCBrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rp
b25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRpb24sIG51bGxwdHIsIG51bGxwdHIsIHRydWUpOwog
ICAgIH0KICNlbmRpZgorICAgIFdURkxvZ0Fsd2F5cygiUHJlZmVyZW5jZSAlcyBjaGFuZ2VkLiIs
IGtleS51dGY4KCkuZGF0YSgpKTsKIH0KIAogc3RhdGljIHZvaWQgc2V0UHJlZmVyZW5jZVZhbHVl
KGNvbnN0IFN0cmluZyYgZG9tYWluLCBjb25zdCBTdHJpbmcmIGtleSwgaWQgdmFsdWUpCkluZGV4
OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lv
biAyNjU5MDUpCisrKyBUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwx
NCBAQAorMjAyMC0wOC0xOSAgUGVyIEFybmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5jb20+CisK
KyAgICAgICAgW21hY09TXSBXZWIgcGFnZXMgYXJlIG5vdCByZXNwb25kaW5nIGNvcnJlY3RseSB0
byBjaGFuZ2VzIGluICJSZWR1Y2UgbW90aW9uIiBzZXR0aW5nCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU2NjQKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQ
SS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW06IEFkZGVkLgorICAgICAgICAo
VEVTVCk6CisKIDIwMjAtMDgtMTkgIEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29t
PgogCiAgICAgICAgIFt3ZWJraXRjb3JlcHldIEZhaWx1cmUgdG8gc2V0IGluZGV4IHNob3VsZCBu
b3QgYmUgZmF0YWwKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAyNjU4MTEp
CisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtOTMzLDYgKzkzMyw3IEBACiAJCUMxNUNCQjMwMjNG
MUZGMUEwMDMwMENDNyAvKiBCYWNrbGlnaHRMZXZlbE5vdGlmaWNhdGlvbi5tbSBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxNUNCQjJGMjNGMUZGMUEwMDMw
MENDNyAvKiBCYWNrbGlnaHRMZXZlbE5vdGlmaWNhdGlvbi5tbSAqLzsgfTsKIAkJQzE1Q0JCM0Yy
M0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1tIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzE1Q0JCM0UyM0ZCMTc3QTAwMzAwQ0M3IC8q
IFByZWZlcmVuY2VDaGFuZ2VzLm1tICovOyB9OwogCQlDMTY5MkRDQTIzRDEwREFFMDA2RTg4Rjcg
LyogQmF0dGVyeS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEMxNjkyREM5MjNEMTBEQUUwMDZFODhGNyAvKiBCYXR0ZXJ5Lm1tICovOyB9OworCQlDMUY0
ODQwNzI0RUREQjQwMDA1M0VDQjggLyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRjQ4NDA2MjRFRERC
NDAwMDUzRUNCOCAvKiBBY2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tICovOyB9OwogCQlDMUY3
QjczOTI0NDkwODNGMDAxMjQ1NTcgLyogQUdYQ29tcGlsZXJTZXJ2aWNlLm1tIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzFGN0I3MzgyNDQ5MDgzRjAwMTI0
NTU3IC8qIEFHWENvbXBpbGVyU2VydmljZS5tbSAqLzsgfTsKIAkJQzFGRjlFREIyNDQ2NDRGMDAw
ODM5QUU0IC8qIFdlYkZpbHRlci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEMxRkY5RURBMjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0ZXIubW0gKi87
IH07CiAJCUMyMEY4OEE3MjI5NUI5NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsgaW4g
RnJhbWV3b3JrcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMjBGODhBNjIy
OTVCOTY3MDBENjEwRkEgLyogQ29yZVRleHQuZnJhbWV3b3JrICovOyB9OwpAQCAtMjYwNyw2ICsy
NjA4LDcgQEAKIAkJQzE1Q0JCM0UyM0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2Vz
Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUHJlZmVyZW5jZUNo
YW5nZXMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUMxNjkyREM5MjNEMTBEQUUw
MDZFODhGNyAvKiBCYXR0ZXJ5Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQmF0dGVyeS5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzFEOEVFMjEyMDI4RThFMzAwOEVCMTQxIC8q
IFdlYlByb2Nlc3NUZXJtaW5hdGUubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IHBhdGggPSBXZWJQcm9jZXNzVGVybWluYXRlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDMUY0ODQwNjI0RUREQjQwMDA1M0VDQjggLyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlv
bi5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUMxRjdCNzM4MjQ0OTA4M0YwMDEyNDU1NyAv
KiBBR1hDb21waWxlclNlcnZpY2UubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBR1hDb21waWxl
clNlcnZpY2UubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUMxRkY5RURBMjQ0NjQ0
RjAwMDgzOUFFNCAvKiBXZWJGaWx0ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJGaWx0
ZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUMyMEY4OEE2MjI5NUI5NjcwMEQ2
MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSB3cmFwcGVyLmZyYW1ld29yazsgbmFtZSA9IENvcmVUZXh0LmZy
YW1ld29yazsgcGF0aCA9IFN5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29yZVRleHQuZnJhbWV3
b3JrOyBzb3VyY2VUcmVlID0gU0RLUk9PVDsgfTsKQEAgLTMwODQsNiArMzA4Niw3IEBACiAJCTBG
MTM5RTc0MUE0MjNBNDYwMEY1OTBGNSAvKiBjb2NvYSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3Vw
OwogCQkJY2hpbGRyZW4gPSAoCisJCQkJQzFGNDg0MDYyNEVEREI0MDAwNTNFQ0I4IC8qIEFjY2Vz
c2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0gKi8sCiAJCQkJRTNGOEFCOTEyNDFBQjlDRTAwM0UyQTdF
IC8qIEFjY2Vzc2liaWxpdHlSZW1vdGVVSUFwcC5tbSAqLywKIAkJCQlDMUY3QjczODI0NDkwODNG
MDAxMjQ1NTcgLyogQUdYQ29tcGlsZXJTZXJ2aWNlLm1tICovLAogCQkJCUMxNUNCQjJGMjNGMUZG
MUEwMDMwMENDNyAvKiBCYWNrbGlnaHRMZXZlbE5vdGlmaWNhdGlvbi5tbSAqLywKQEAgLTQ4NjUs
OSArNDg2OCw5IEBACiAJCQkJN0M4M0RFRDIxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hNYXAuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJN0M4M0RFRDQxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hTZXQu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0M4QkZGNzEyM0MwMTA3QTAwQzAwOUIzIC8qIEhleE51
bWJlci5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkzMzk3NkQ4MzI0REM0NzlCMDA4MTIzMDQgLyog
SW5kZXhTcGFyc2VTZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0M4M0RFRTAxRDBBNTkwQzAw
RkVCQ0YzIC8qIEludGVnZXJUb1N0cmluZ0NvbnZlcnNpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJNTNGQ0RFNkIyMjlFRkZCOTAwNTk4RUNGIC8qIElzb0hlYXAuY3BwIGluIFNvdXJjZXMgKi8s
Ci0JCQkJMzM5NzZEODMyNERDNDc5QjAwODEyMzA0IC8qIEluZGV4U3BhcnNlU2V0LmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTdDRUI2MkFCMjIzNjA5REUwMDY5Q0JCMCAvKiBJdGVyYXRvclJhbmdl
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdBMDUwOTQxMUZCOUYwNjQwMEIzM0ZCOCAvKiBKU09O
VmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTMxQzFEOEUxREY4RUY3MjAwNkU5NzlGIC8q
IExFQkRlY29kZXIuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00OTU0LDYgKzQ5NTcsNyBAQAogCQkJ
CTU3QzYyNDRFMjM0NkJDRkEwMDM4M0ZFNyAvKiBfV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJN0NDRTdFRTQxQTQxMUFFNjAwNDQ3QzRDIC8qIEFib3V0Qmxh
bmtMb2FkLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdDQ0U3RUIzMUE0MTFBN0UwMDQ0N0M0QyAv
KiBBY2NlcHRzRmlyc3RNb3VzZS5tbSBpbiBTb3VyY2VzICovLAorCQkJCUMxRjQ4NDA3MjRFRERC
NDAwMDUzRUNCOCAvKiBBY2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tIGluIFNvdXJjZXMgKi8s
CiAJCQkJRTNGOEFCOTIyNDFBQjlDRTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1vdGVVSUFw
cC5tbSBpbiBTb3VyY2VzICovLAogCQkJCTJFMjA1QkE0MUY1Mjc3NDYwMDU5NTJERCAvKiBBY2Nl
c3NpYmlsaXR5VGVzdHNJT1MubW0gaW4gU291cmNlcyAqLywKIAkJCQk5QkQ1MTExQzFGRThFMTE2
MDBEMkI2MzAgLyogQWNjZXNzaW5nUGFzdGVkSW1hZ2UubW0gaW4gU291cmNlcyAqLywKSW5kZXg6
IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rp
b24ubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWNj
ZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbQkobm9uZXhpc3RlbnQpCisrKyBUb29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdC9BY2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tCSh3b3JraW5n
IGNvcHkpCkBAIC0wLDAgKzEsMTA0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
CisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwor
ICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICog
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCAiY29uZmlnLmgi
CisKKyNpZiBXS19IQVZFX0NfU1BJCisKKyNpbXBvcnQgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCisj
aW1wb3J0ICJUZXN0V0tXZWJWaWV3LmgiCisjaW1wb3J0IDxXZWJLaXQvUHJlZmVyZW5jZU9ic2Vy
dmVyLmg+CisjaW1wb3J0IDxXZWJLaXQvV0tQcm9jZXNzUG9vbFByaXZhdGUuaD4KKyNpbXBvcnQg
PFdlYktpdC9fV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaD4KKworI2ltcG9ydCA8cGFsL3Nw
aS9tYWMvSElTZXJ2aWNlc1NQSS5oPgorI2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NP
RlRfTElOS19GUkFNRVdPUksoQXBwbGljYXRpb25TZXJ2aWNlcykKK1NPRlRfTElOSyhBcHBsaWNh
dGlvblNlcnZpY2VzLCBfQVhJbnRlcmZhY2VTZXRSZWR1Y2VNb3Rpb25FbmFibGVkLCB2b2lkLCAo
Qm9vbGVhbiBlbmFibGUpLCAoZW5hYmxlKSk7CitTT0ZUX0xJTksoQXBwbGljYXRpb25TZXJ2aWNl
cywgX0FYSW50ZXJmYWNlR2V0UmVkdWNlTW90aW9uRW5hYmxlZCwgQm9vbGVhbiwgKCksICgpKTsK
Kworc3RhdGljIGludCByZWR1Y2VNb3Rpb25Ob3RpZmljYXRpb25Db3VudCA9IDA7CitzdGF0aWMg
Ym9vbCBkb25lID0gZmFsc2U7CisKK3N0YXRpYyBib29sIHJlY2VpdmVkUHJlZmVyZW5jZU5vdGlm
aWNhdGlvbiA9IGZhbHNlOworCitAaW50ZXJmYWNlIFdLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVz
dGluZyA6IFdLUHJlZmVyZW5jZU9ic2VydmVyCistICh2b2lkKXByZWZlcmVuY2VEaWRDaGFuZ2U6
KE5TU3RyaW5nICopZG9tYWluIGtleTooTlNTdHJpbmcgKilrZXkgZW5jb2RlZFZhbHVlOihOU1N0
cmluZyAqKWVuY29kZWRWYWx1ZTsKK0BlbmQKKworQGltcGxlbWVudGF0aW9uIFdLUHJlZmVyZW5j
ZU9ic2VydmVyRm9yVGVzdGluZworLSAodm9pZClwcmVmZXJlbmNlRGlkQ2hhbmdlOihOU1N0cmlu
ZyAqKWRvbWFpbiBrZXk6KE5TU3RyaW5nICopa2V5IGVuY29kZWRWYWx1ZTooTlNTdHJpbmcgKill
bmNvZGVkVmFsdWUKK3sKKyAgICByZWNlaXZlZFByZWZlcmVuY2VOb3RpZmljYXRpb24gPSB0cnVl
OworICAgIFdURkxvZ0Fsd2F5cygiUHJlZmVyZW5jZSBjaGFuZ2VkICVzICVzIiwgU3RyaW5nKGRv
bWFpbikudXRmOCgpLmRhdGEoKSwgU3RyaW5nKGtleSkudXRmOCgpLmRhdGEoKSk7CisgICAgW3N1
cGVyIHByZWZlcmVuY2VEaWRDaGFuZ2U6ZG9tYWluIGtleTprZXkgZW5jb2RlZFZhbHVlOmVuY29k
ZWRWYWx1ZV07Cit9CitAZW5kCisKK1RFU1QoV2ViS2l0LCBBY2Nlc3NpYmlsaXR5UmVkdWNlTW90
aW9uKQoreworICAgIFJldGFpblB0cjxOU09iamVjdD4gYWNjZXNzaWJpbGl0eU9ic2VydmVyID0g
W1tOU0Rpc3RyaWJ1dGVkTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9ic2Vy
dmVyRm9yTmFtZTooX19icmlkZ2UgaWQpa0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uU3RhdHVzRGlk
Q2hhbmdlTm90aWZpY2F0aW9uIG9iamVjdDpuaWwgcXVldWU6W05TT3BlcmF0aW9uUXVldWUgY3Vy
cmVudFF1ZXVlXSB1c2luZ0Jsb2NrOl4oTlNOb3RpZmljYXRpb24gKm5vdGUpIHsKKyAgICAgICAg
V1RGTG9nQWx3YXlzKCJSZWNlaXZlZCBub3RpZmljYXRpb24iKTsKKyAgICAgICAgcmVkdWNlTW90
aW9uTm90aWZpY2F0aW9uQ291bnQrKzsKKyAgICAgICAgaWYgKHJlZHVjZU1vdGlvbk5vdGlmaWNh
dGlvbkNvdW50ID09IDIpCisgICAgICAgICAgICBkb25lID0gdHJ1ZTsKKyAgICB9XTsKKworICAg
IGF1dG8gY29uZmlndXJhdGlvbiA9IGFkb3B0TlMoW1tXS1dlYlZpZXdDb25maWd1cmF0aW9uIGFs
bG9jXSBpbml0XSk7CisgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0ID0gYWRv
cHRXSyhUZXN0V2ViS2l0QVBJOjpVdGlsOjpjcmVhdGVDb250ZXh0Rm9ySW5qZWN0ZWRCdW5kbGVU
ZXN0KCJJbnRlcm5hbHNJbmplY3RlZEJ1bmRsZVRlc3QiKSk7CisgICAgY29uZmlndXJhdGlvbi5n
ZXQoKS5wcm9jZXNzUG9vbCA9IChXS1Byb2Nlc3NQb29sICopY29udGV4dC5nZXQoKTsKKyAgICBh
dXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFt
ZTpOU01ha2VSZWN0KDAsIDAsIDMwMCwgMzAwKSBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb24u
Z2V0KCkgYWRkVG9XaW5kb3c6WUVTXSk7CisKKyAgICBhdXRvIG9ic2VydmVyID0gYWRvcHROUyhb
W1dLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZyBhbGxvY10gaW5pdF0pOworCisgICAgW3dl
YlZpZXcgc3luY2hyb25vdXNseUxvYWRUZXN0UGFnZU5hbWVkOkAic2ltcGxlIl07CisKKyAgICBB
U1NFUlRfRkFMU0UoX0FYSW50ZXJmYWNlR2V0UmVkdWNlTW90aW9uRW5hYmxlZCgpKTsKKworICAg
IC8vX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90aW9uRW5hYmxlZChZRVMpOworICAgIENGUHJlZmVy
ZW5jZXNTZXRBcHBWYWx1ZShrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25LZXksIGtDRkJvb2xlYW5U
cnVlLCBDRlNUUigiY29tLmFwcGxlLnVuaXZlcnNhbGFjY2VzcyIpKTsKKyAgICBDRk5vdGlmaWNh
dGlvbkNlbnRlclBvc3ROb3RpZmljYXRpb24oQ0ZOb3RpZmljYXRpb25DZW50ZXJHZXREaXN0cmli
dXRlZENlbnRlcigpLCBrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3Rp
ZmljYXRpb24sIE5VTEwsIE5VTEwsIHRydWUpOworCisgICAgQVNTRVJUX1RSVUUoX0FYSW50ZXJm
YWNlR2V0UmVkdWNlTW90aW9uRW5hYmxlZCgpKTsKKworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6
OnJ1bigmcmVjZWl2ZWRQcmVmZXJlbmNlTm90aWZpY2F0aW9uKTsKKworICAgIGF1dG8gcmVkdWNl
TW90aW9uID0gWyZdIHsKKyAgICAgICAgcmV0dXJuIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGlu
Z0phdmFTY3JpcHQ6QCJ3aW5kb3cuaW50ZXJuYWxzLnVzZXJQcmVmZXJzUmVkdWNlZE1vdGlvbigp
Il0uYm9vbFZhbHVlOworICAgIH07CisgICAgCisgICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxv
YWRUZXN0UGFnZU5hbWVkOkAic2ltcGxlIl07CisKKyAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpy
dW4oJmRvbmUpOworCisgICAgQVNTRVJUX1RSVUUocmVkdWNlTW90aW9uKCkpOworCisgICAgLy9f
QVhJbnRlcmZhY2VTZXRSZWR1Y2VNb3Rpb25FbmFibGVkKE5PKTsKKyAgICBDRlByZWZlcmVuY2Vz
U2V0QXBwVmFsdWUoa0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5LCBrQ0ZCb29sZWFuRmFsc2Us
IENGU1RSKCJjb20uYXBwbGUudW5pdmVyc2FsYWNjZXNzIikpOworICAgIENGTm90aWZpY2F0aW9u
Q2VudGVyUG9zdE5vdGlmaWNhdGlvbihDRk5vdGlmaWNhdGlvbkNlbnRlckdldERpc3RyaWJ1dGVk
Q2VudGVyKCksIGtBWEludGVyZmFjZVJlZHVjZU1vdGlvblN0YXR1c0RpZENoYW5nZU5vdGlmaWNh
dGlvbiwgTlVMTCwgTlVMTCwgdHJ1ZSk7Cit9CisKKyNlbmRpZgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406953</attachid>
            <date>2020-08-20 12:13:57 -0700</date>
            <delta_ts>2020-08-20 12:51:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215664-20200820121356.patch</filename>
            <type>text/plain</type>
            <size>16623</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjY1ODk4KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4
LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMgaW4g
IlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERlY2xhcmUgbm90aWZpY2F0aW9uIHNlbnQgd2hlbiB0aGUgIlJlZHVj
ZSBtb3Rpb24iIHNldHRpbmcgaXMgY2hhbmdlZC4KKyAKKyAgICAgICAgKiBwYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmg6CisKIDIwMjAtMDgtMTkgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlA
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gTW92ZSBzdGVwcGVyIHBhaW50aW5nIGNvZGUg
b2ZmIG9mIENhcmJvbiBBUEkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
bWFjL0hJU2VydmljZXNTUEkuaAkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ5LDYg
KzE0OSw5IEBAIEFYQ2xpZW50VHlwZSBfQVhHZXRDbGllbnRGb3JDdXJyZW50UmVxdWUKIHZvaWQg
X0FYU2V0Q2xpZW50SWRlbnRpZmljYXRpb25PdmVycmlkZShBWENsaWVudFR5cGUpOwogI2VuZGlm
IC8vIEhBVkUoQVhfQ0xJRU5UX1RZUEUpCiAKK2V4dGVybiBDRlN0cmluZ1JlZiBrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRpb247CitleHRlcm4gQ0ZTdHJp
bmdSZWYga0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5OworCiBXVEZfRVhURVJOX0NfRU5ECiAK
ICNlbmRpZiAvLyBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQpJbmRleDogU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9u
IDI2NTgxMSkKKysrIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMjIgQEAKKzIwMjAtMDgtMTkgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFttYWNPU10gV2ViIHBhZ2VzIGFyZSBub3QgcmVzcG9uZGluZyBjb3Jy
ZWN0bHkgdG8gY2hhbmdlcyBpbiAiUmVkdWNlIG1vdGlvbiIgc2V0dGluZworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NjY0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBoYXBwZW5zIGJlY2F1c2Ug
dGhlcmUgaXMgYSByYWNlIGJldHdlZW4gdGhlIHByZWZlcmVuY2UgY2hhbmdlIGFuZCBub3RpZmlj
YXRpb24gYmVpbmcgcmVjZWl2ZWQgaW4gdGhlIFdlYkNvbnRlbnQKKyAgICAgICAgcHJvY2Vzcy4g
VGhpcyByYWNlIGlzIHVzdWFsbHkgd29uIGJ5IHRoZSBub3RpZmljYXRpb24sIHdoaWNoIHRoZW4g
cmVhZHMgdGhlIHdyb25nIHByZWZlcmVuY2UgdmFsdWUgd2hlbiBiZWluZyBoYW5kbGVkLgorICAg
ICAgICBUaGlzIGJ1ZyB3YXMgaW50cm9kdWNlZCB3aGVuIGFjY2VzcyB0byB0aGUgcHJlZmVyZW5j
ZSBkYWVtb24gd2FzIGNsb3NlZCBpbiB0aGUgV2ViQ29udGVudCBwcm9jZXNzLCBhbmQgcHJlZmVy
ZW5jZXMKKyAgICAgICAgd2VyZSB1cGRhdGVkIGZyb20gdGhlIFVJIHByb2Nlc3MuIFRoaXMgcGF0
Y2ggYWRkcmVzc2VzIHRoaXMgaXNzdWUgYnkgcmUtcG9zdGluZyB0aGUgbm90aWZpY2F0aW9uIHdo
ZW4gdGhlIHByZWZlcmVuY2UKKyAgICAgICAgdmFsdWUgaXMgdXBkYXRlZCBpbiB0aGUgV2ViQ29u
dGVudCBwcm9jZXNzLgorCisgICAgICAgIEFQSSB0ZXN0OiBXZWJLaXQuQWNjZXNzaWJpbGl0eVJl
ZHVjZU1vdGlvbgorCisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW06CisgICAgICAgIChXZWJLaXQ6OnJlZHVjZU1vdGlvblByZWZlcmVuY2VLZXkpOgorICAgICAg
ICAoV2ViS2l0OjpkaXNwYXRjaFNpbXVsYXRlZE5vdGlmaWNhdGlvbnNGb3JQcmVmZXJlbmNlQ2hh
bmdlKToKKwogMjAyMC0wOC0xNyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAg
ICAgICAgIEF1ZGlvQ29udGV4dC5nZXRPdXRwdXRUaW1lc3RhbXAoKSBpcyBtaXNzaW5nCkluZGV4
OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QcmVmZXJlbmNlT2JzZXJ2ZXIubW0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9ic2Vy
dmVyLm1tCShyZXZpc2lvbiAyNjU4MTEpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9QcmVmZXJlbmNlT2JzZXJ2ZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTQ3LDYgKzQ3LDcgQEAg
QGludGVyZmFjZSBXS1ByZWZlcmVuY2VPYnNlcnZlciAoKSB7CiAKIC0gKHZvaWQpX25vdGlmeU9i
c2VydmVyc09mQ2hhbmdlRnJvbVZhbHVlc0ZvcktleXM6KE5TRGljdGlvbmFyeTxOU1N0cmluZyAq
LCBpZD4gKilvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOihOU0RpY3Rpb25hcnk8TlNTdHJpbmcg
KiwgaWQ+ICopbmV3VmFsdWVzCiB7CisgICAgV1RGTG9nQWx3YXlzKCJfbm90aWZ5T2JzZXJ2ZXJz
T2ZDaGFuZ2VGcm9tVmFsdWVzRm9yS2V5cyIpOwogICAgIFtzdXBlciBfbm90aWZ5T2JzZXJ2ZXJz
T2ZDaGFuZ2VGcm9tVmFsdWVzRm9yS2V5czpvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOm5ld1Zh
bHVlc107CiAKICAgICBpZiAoIW1fb2JzZXJ2ZXIpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHJldmlzaW9uIDI2NTgxMSkK
KysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHdv
cmtpbmcgY29weSkKQEAgLTEyNCw2ICsxMjQsNyBAQAogI2ltcG9ydCAiV2ViU3dpdGNoaW5nR1BV
Q2xpZW50LmgiCiAjaW1wb3J0IDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMTWFuYWdl
ci5oPgogI2ltcG9ydCA8V2ViQ29yZS9TY3JvbGxiYXJUaGVtZU1hYy5oPgorI2ltcG9ydCA8cGFs
L3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNTY3JvbGxl
ckltcFNQSS5oPgogI2VuZGlmCiAKQEAgLTkxMCw2ICs5MTEsMTIgQEAgc3RhdGljIGNvbnN0IFdU
Rjo6U3RyaW5nJiB1c2VySGlnaGxpZ2h0QwogICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxXVEY6
OlN0cmluZz4gdXNlckhpZ2hsaWdodENvbG9yUHJlZmVyZW5jZUtleShNQUtFX1NUQVRJQ19TVFJJ
TkdfSU1QTCgiQXBwbGVIaWdobGlnaHRDb2xvciIpKTsKICAgICByZXR1cm4gdXNlckhpZ2hsaWdo
dENvbG9yUHJlZmVyZW5jZUtleTsKIH0KKworc3RhdGljIGNvbnN0IFdURjo6U3RyaW5nJiByZWR1
Y2VNb3Rpb25QcmVmZXJlbmNlS2V5KCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8V1RG
OjpTdHJpbmc+IGtleShNQUtFX1NUQVRJQ19TVFJJTkdfSU1QTCgicmVkdWNlTW90aW9uIikpOwor
ICAgIHJldHVybiBrZXk7Cit9CiAjZW5kaWYKIAogc3RhdGljIHZvaWQgZGlzcGF0Y2hTaW11bGF0
ZWROb3RpZmljYXRpb25zRm9yUHJlZmVyZW5jZUNoYW5nZShjb25zdCBTdHJpbmcmIGtleSkKQEAg
LTkyMCwxNyArOTI3LDIwIEBAIHN0YXRpYyB2b2lkIGRpc3BhdGNoU2ltdWxhdGVkTm90aWZpY2F0
aW8KICAgICAvLyBvZiB0aGUgc3lzdGVtLCB3ZSBtdXN0IHJlLXBvc3QgdGhlIG5vdGlmaWNhdGlv
biBpbiB0aGUgV2ViIENvbnRlbnQgcHJvY2VzcyBhZnRlciB1cGRhdGluZyB0aGUgZGVmYXVsdC4K
ICAgICAKICAgICBpZiAoa2V5ID09IHVzZXJBY2NlbnRDb2xvclByZWZlcmVuY2VLZXkoKSkgewot
ICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90
aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAgICAgICBhdXRvIG5vdGlmaWNhdGlv
bkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKICAgICAgICAg
W25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9uTmFtZTpAImtDVUlOb3RpZmljYXRp
b25BcXVhQ29sb3JWYXJpYW50Q2hhbmdlZCIgb2JqZWN0Om5pbF07CiAgICAgICAgIFtub3RpZmlj
YXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6QCJOU1N5c3RlbUNvbG9yc1dpbGxDaGFu
Z2VOb3RpZmljYXRpb24iIG9iamVjdDpuaWxdOwogICAgICAgICBbbm90aWZpY2F0aW9uQ2VudGVy
IHBvc3ROb3RpZmljYXRpb25OYW1lOk5TU3lzdGVtQ29sb3JzRGlkQ2hhbmdlTm90aWZpY2F0aW9u
IG9iamVjdDpuaWxdOwotICAgIH0KLSAgICBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclBy
ZWZlcmVuY2VLZXkoKSkgewotICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0
aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAgIH0g
ZWxzZSBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclByZWZlcmVuY2VLZXkoKSkgeworICAg
ICAgICBhdXRvIG5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZh
dWx0Q2VudGVyXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9u
TmFtZTpAIk5TU3lzdGVtQ29sb3JzV2lsbENoYW5nZU5vdGlmaWNhdGlvbiIgb2JqZWN0Om5pbF07
CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6TlNTeXN0
ZW1Db2xvcnNEaWRDaGFuZ2VOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07CisgICAgfSBlbHNlIGlm
IChrZXkgPT0gcmVkdWNlTW90aW9uUHJlZmVyZW5jZUtleSgpKSB7CisgICAgICAgIGF1dG8gbm90
aWZpY2F0aW9uQ2VudGVyID0gQ0ZOb3RpZmljYXRpb25DZW50ZXJHZXREaXN0cmlidXRlZENlbnRl
cigpOworICAgICAgICBDRk5vdGlmaWNhdGlvbkNlbnRlclBvc3ROb3RpZmljYXRpb24obm90aWZp
Y2F0aW9uQ2VudGVyLCBrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3Rp
ZmljYXRpb24sIG51bGxwdHIsIG51bGxwdHIsIHRydWUpOwogICAgIH0KICNlbmRpZgorICAgIFdU
RkxvZ0Fsd2F5cygiUHJlZmVyZW5jZSAlcyBjaGFuZ2VkLiIsIGtleS51dGY4KCkuZGF0YSgpKTsK
IH0KIAogc3RhdGljIHZvaWQgc2V0UHJlZmVyZW5jZVZhbHVlKGNvbnN0IFN0cmluZyYgZG9tYWlu
LCBjb25zdCBTdHJpbmcmIGtleSwgaWQgdmFsdWUpCkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjU5MDUpCisrKyBUb29scy9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wOC0xOSAgUGVy
IEFybmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBXZWIg
cGFnZXMgYXJlIG5vdCByZXNwb25kaW5nIGNvcnJlY3RseSB0byBjaGFuZ2VzIGluICJSZWR1Y2Ug
bW90aW9uIiBzZXR0aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTU2NjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxp
dHlSZWR1Y2VNb3Rpb24ubW06IEFkZGVkLgorICAgICAgICAoVEVTVCk6CisKIDIwMjAtMDgtMTkg
IEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIFt3ZWJraXRj
b3JlcHldIEZhaWx1cmUgdG8gc2V0IGluZGV4IHNob3VsZCBub3QgYmUgZmF0YWwKSW5kZXg6IFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAyNjU4MTEpCisrKyBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5
KQpAQCAtOTMzLDYgKzkzMyw3IEBACiAJCUMxNUNCQjMwMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNr
bGlnaHRMZXZlbE5vdGlmaWNhdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGlnaHRMZXZl
bE5vdGlmaWNhdGlvbi5tbSAqLzsgfTsKIAkJQzE1Q0JCM0YyM0ZCMTc3QTAwMzAwQ0M3IC8qIFBy
ZWZlcmVuY2VDaGFuZ2VzLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQzE1Q0JCM0UyM0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1t
ICovOyB9OwogCQlDMTY5MkRDQTIzRDEwREFFMDA2RTg4RjcgLyogQmF0dGVyeS5tbSBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxNjkyREM5MjNEMTBEQUUw
MDZFODhGNyAvKiBCYXR0ZXJ5Lm1tICovOyB9OworCQlDMUY0ODQwNzI0RUREQjQwMDA1M0VDQjgg
LyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRjQ4NDA2MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uLm1tICovOyB9OwogCQlDMUY3QjczOTI0NDkwODNGMDAxMjQ1NTcg
LyogQUdYQ29tcGlsZXJTZXJ2aWNlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQzFGN0I3MzgyNDQ5MDgzRjAwMTI0NTU3IC8qIEFHWENvbXBpbGVyU2Vy
dmljZS5tbSAqLzsgfTsKIAkJQzFGRjlFREIyNDQ2NDRGMDAwODM5QUU0IC8qIFdlYkZpbHRlci5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRkY5RURB
MjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0ZXIubW0gKi87IH07CiAJCUMyMEY4OEE3MjI5NUI5
NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMjBGODhBNjIyOTVCOTY3MDBENjEwRkEgLyogQ29y
ZVRleHQuZnJhbWV3b3JrICovOyB9OwpAQCAtMjYwNyw2ICsyNjA4LDcgQEAKIAkJQzE1Q0JCM0Uy
M0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gUHJlZmVyZW5jZUNoYW5nZXMubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUMxNjkyREM5MjNEMTBEQUUwMDZFODhGNyAvKiBCYXR0ZXJ5Lm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gQmF0dGVyeS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQzFEOEVFMjEyMDI4RThFMzAwOEVCMTQxIC8qIFdlYlByb2Nlc3NUZXJtaW5hdGUu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJQcm9jZXNzVGVy
bWluYXRlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMUY0ODQwNjI0RUREQjQw
MDA1M0VDQjggLyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUMxRjdCNzM4MjQ0OTA4M0YwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2Uu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBR1hDb21waWxlclNlcnZpY2UubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUMxRkY5RURBMjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0
ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJGaWx0ZXIubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUMyMEY4OEE2MjI5NUI5NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFt
ZXdvcmsgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3
cmFwcGVyLmZyYW1ld29yazsgbmFtZSA9IENvcmVUZXh0LmZyYW1ld29yazsgcGF0aCA9IFN5c3Rl
bS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29yZVRleHQuZnJhbWV3b3JrOyBzb3VyY2VUcmVlID0gU0RL
Uk9PVDsgfTsKQEAgLTMwODQsNiArMzA4Niw3IEBACiAJCTBGMTM5RTc0MUE0MjNBNDYwMEY1OTBG
NSAvKiBjb2NvYSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJ
CQkJQzFGNDg0MDYyNEVEREI0MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24u
bW0gKi8sCiAJCQkJRTNGOEFCOTEyNDFBQjlDRTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1v
dGVVSUFwcC5tbSAqLywKIAkJCQlDMUY3QjczODI0NDkwODNGMDAxMjQ1NTcgLyogQUdYQ29tcGls
ZXJTZXJ2aWNlLm1tICovLAogCQkJCUMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGln
aHRMZXZlbE5vdGlmaWNhdGlvbi5tbSAqLywKQEAgLTQ4NjUsOSArNDg2OCw5IEBACiAJCQkJN0M4
M0RFRDIxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hNYXAuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
N0M4M0RFRDQxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hTZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJN0M4QkZGNzEyM0MwMTA3QTAwQzAwOUIzIC8qIEhleE51bWJlci5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQkzMzk3NkQ4MzI0REM0NzlCMDA4MTIzMDQgLyogSW5kZXhTcGFyc2VTZXQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJN0M4M0RFRTAxRDBBNTkwQzAwRkVCQ0YzIC8qIEludGVnZXJUb1N0
cmluZ0NvbnZlcnNpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTNGQ0RFNkIyMjlFRkZCOTAw
NTk4RUNGIC8qIElzb0hlYXAuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMzM5NzZEODMyNERDNDc5
QjAwODEyMzA0IC8qIEluZGV4U3BhcnNlU2V0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdDRUI2
MkFCMjIzNjA5REUwMDY5Q0JCMCAvKiBJdGVyYXRvclJhbmdlLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTdBMDUwOTQxMUZCOUYwNjQwMEIzM0ZCOCAvKiBKU09OVmFsdWUuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJNTMxQzFEOEUxREY4RUY3MjAwNkU5NzlGIC8qIExFQkRlY29kZXIuY3BwIGluIFNv
dXJjZXMgKi8sCkBAIC00OTU0LDYgKzQ5NTcsNyBAQAogCQkJCTU3QzYyNDRFMjM0NkJDRkEwMDM4
M0ZFNyAvKiBfV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
N0NDRTdFRTQxQTQxMUFFNjAwNDQ3QzRDIC8qIEFib3V0QmxhbmtMb2FkLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTdDQ0U3RUIzMUE0MTFBN0UwMDQ0N0M0QyAvKiBBY2NlcHRzRmlyc3RNb3VzZS5t
bSBpbiBTb3VyY2VzICovLAorCQkJCUMxRjQ4NDA3MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRTNGOEFCOTIyNDFBQjlD
RTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1vdGVVSUFwcC5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTJFMjA1QkE0MUY1Mjc3NDYwMDU5NTJERCAvKiBBY2Nlc3NpYmlsaXR5VGVzdHNJT1MubW0g
aW4gU291cmNlcyAqLywKIAkJCQk5QkQ1MTExQzFGRThFMTE2MDBEMkI2MzAgLyogQWNjZXNzaW5n
UGFzdGVkSW1hZ2UubW0gaW4gU291cmNlcyAqLywKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlv
bi5tbQkobm9uZXhpc3RlbnQpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9B
Y2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTEw
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCAiY29uZmlnLmgiCisKKyNpZiBXS19IQVZFX0NfU1BJ
CisKKyNpbXBvcnQgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCisjaW1wb3J0ICJUZXN0V0tXZWJWaWV3
LmgiCisjaW1wb3J0IDxXZWJLaXQvUHJlZmVyZW5jZU9ic2VydmVyLmg+CisjaW1wb3J0IDxXZWJL
aXQvV0tQcm9jZXNzUG9vbFByaXZhdGUuaD4KKyNpbXBvcnQgPFdlYktpdC9fV0tQcm9jZXNzUG9v
bENvbmZpZ3VyYXRpb24uaD4KKworI2ltcG9ydCA8cGFsL3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5o
PgorI2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19GUkFNRVdPUksoQXBw
bGljYXRpb25TZXJ2aWNlcykKK1NPRlRfTElOSyhBcHBsaWNhdGlvblNlcnZpY2VzLCBfQVhJbnRl
cmZhY2VTZXRSZWR1Y2VNb3Rpb25FbmFibGVkLCB2b2lkLCAoQm9vbGVhbiBlbmFibGUpLCAoZW5h
YmxlKSk7CitTT0ZUX0xJTksoQXBwbGljYXRpb25TZXJ2aWNlcywgX0FYSW50ZXJmYWNlR2V0UmVk
dWNlTW90aW9uRW5hYmxlZCwgQm9vbGVhbiwgKCksICgpKTsKKworc3RhdGljIGludCByZWR1Y2VN
b3Rpb25Ob3RpZmljYXRpb25Db3VudCA9IDA7CitzdGF0aWMgYm9vbCBkb25lID0gZmFsc2U7CisK
K3N0YXRpYyBib29sIHJlY2VpdmVkUHJlZmVyZW5jZU5vdGlmaWNhdGlvbiA9IGZhbHNlOworCitA
aW50ZXJmYWNlIFdLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZyA6IFdLUHJlZmVyZW5jZU9i
c2VydmVyCistICh2b2lkKXByZWZlcmVuY2VEaWRDaGFuZ2U6KE5TU3RyaW5nICopZG9tYWluIGtl
eTooTlNTdHJpbmcgKilrZXkgZW5jb2RlZFZhbHVlOihOU1N0cmluZyAqKWVuY29kZWRWYWx1ZTsK
K0BlbmQKKworQGltcGxlbWVudGF0aW9uIFdLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZwor
LSAodm9pZClwcmVmZXJlbmNlRGlkQ2hhbmdlOihOU1N0cmluZyAqKWRvbWFpbiBrZXk6KE5TU3Ry
aW5nICopa2V5IGVuY29kZWRWYWx1ZTooTlNTdHJpbmcgKillbmNvZGVkVmFsdWUKK3sKKyAgICBy
ZWNlaXZlZFByZWZlcmVuY2VOb3RpZmljYXRpb24gPSB0cnVlOworICAgIFdURkxvZ0Fsd2F5cygi
UHJlZmVyZW5jZSBjaGFuZ2VkICVzICVzIiwgU3RyaW5nKGRvbWFpbikudXRmOCgpLmRhdGEoKSwg
U3RyaW5nKGtleSkudXRmOCgpLmRhdGEoKSk7CisgICAgW3N1cGVyIHByZWZlcmVuY2VEaWRDaGFu
Z2U6ZG9tYWluIGtleTprZXkgZW5jb2RlZFZhbHVlOmVuY29kZWRWYWx1ZV07Cit9CitAZW5kCisK
K1RFU1QoV2ViS2l0LCBBY2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uKQoreworICAgIFJldGFpblB0
cjxOU09iamVjdD4gYWNjZXNzaWJpbGl0eU9ic2VydmVyID0gW1tOU0Rpc3RyaWJ1dGVkTm90aWZp
Y2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVyRm9yTmFtZTooX19icmlkZ2Ug
aWQpa0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uU3RhdHVzRGlkQ2hhbmdlTm90aWZpY2F0aW9uIG9i
amVjdDpuaWwgcXVldWU6W05TT3BlcmF0aW9uUXVldWUgY3VycmVudFF1ZXVlXSB1c2luZ0Jsb2Nr
Ol4oTlNOb3RpZmljYXRpb24gKm5vdGUpIHsKKyAgICAgICAgV1RGTG9nQWx3YXlzKCJSZWNlaXZl
ZCBub3RpZmljYXRpb24iKTsKKyAgICAgICAgcmVkdWNlTW90aW9uTm90aWZpY2F0aW9uQ291bnQr
KzsKKyAgICAgICAgaWYgKHJlZHVjZU1vdGlvbk5vdGlmaWNhdGlvbkNvdW50ID09IDIpCisgICAg
ICAgICAgICBkb25lID0gdHJ1ZTsKKyAgICB9XTsKKworICAgIGF1dG8gY29uZmlndXJhdGlvbiA9
IGFkb3B0TlMoW1tXS1dlYlZpZXdDb25maWd1cmF0aW9uIGFsbG9jXSBpbml0XSk7CisgICAgV0tS
ZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0ID0gYWRvcHRXSyhUZXN0V2ViS2l0QVBJOjpV
dGlsOjpjcmVhdGVDb250ZXh0Rm9ySW5qZWN0ZWRCdW5kbGVUZXN0KCJJbnRlcm5hbHNJbmplY3Rl
ZEJ1bmRsZVRlc3QiKSk7CisgICAgY29uZmlndXJhdGlvbi5nZXQoKS5wcm9jZXNzUG9vbCA9IChX
S1Byb2Nlc3NQb29sICopY29udGV4dC5nZXQoKTsKKyAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5T
KFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDMw
MCwgMzAwKSBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb24uZ2V0KCkgYWRkVG9XaW5kb3c6WUVT
XSk7CisKKyAgICAvLyBDRlByZWZlcmVuY2VzU2V0QXBwVmFsdWUoa0FYSW50ZXJmYWNlUmVkdWNl
TW90aW9uS2V5LCBrQ0ZCb29sZWFuRmFsc2UsIENGU1RSKCJjb20uYXBwbGUudW5pdmVyc2FsYWNj
ZXNzIikpOworICAgIC8vIENGTm90aWZpY2F0aW9uQ2VudGVyUG9zdE5vdGlmaWNhdGlvbihDRk5v
dGlmaWNhdGlvbkNlbnRlckdldERpc3RyaWJ1dGVkQ2VudGVyKCksIGtBWEludGVyZmFjZVJlZHVj
ZU1vdGlvblN0YXR1c0RpZENoYW5nZU5vdGlmaWNhdGlvbiwgTlVMTCwgTlVMTCwgdHJ1ZSk7Cisg
ICAgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90aW9uRW5hYmxlZChOTyk7CisgICAgQ0ZQcmVmZXJl
bmNlc1NldFZhbHVlKGtBWEludGVyZmFjZVJlZHVjZU1vdGlvbktleSwgbnVsbHB0ciwgQ0ZTVFIo
ImNvbS5hcHBsZS51bml2ZXJzYWxhY2Nlc3MiKSwga0NGUHJlZmVyZW5jZXNDdXJyZW50VXNlciwg
a0NGUHJlZmVyZW5jZXNDdXJyZW50SG9zdCk7CisKKyAgICBhdXRvIG9ic2VydmVyID0gYWRvcHRO
UyhbW1dLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZyBhbGxvY10gaW5pdF0pOworCisgICAg
W3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRUZXN0UGFnZU5hbWVkOkAic2ltcGxlIl07CisKKyAg
ICBBU1NFUlRfRkFMU0UoX0FYSW50ZXJmYWNlR2V0UmVkdWNlTW90aW9uRW5hYmxlZCgpKTsKKwor
ICAgIF9BWEludGVyZmFjZVNldFJlZHVjZU1vdGlvbkVuYWJsZWQoWUVTKTsKKyAgICAvLyBDRlBy
ZWZlcmVuY2VzU3luY2hyb25pemUoQ0ZTVFIoImNvbS5hcHBsZS51bml2ZXJzYWxhY2Nlc3MiKSwg
a0NGUHJlZmVyZW5jZXNDdXJyZW50VXNlciwga0NGUHJlZmVyZW5jZXNBbnlIb3N0KTsKKyAgICAv
LyBDRk5vdGlmaWNhdGlvbkNlbnRlclBvc3ROb3RpZmljYXRpb24oQ0ZOb3RpZmljYXRpb25DZW50
ZXJHZXREaXN0cmlidXRlZENlbnRlcigpLCBrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25TdGF0dXNE
aWRDaGFuZ2VOb3RpZmljYXRpb24sIE5VTEwsIE5VTEwsIHRydWUpOworCisgICAgQVNTRVJUX1RS
VUUoX0FYSW50ZXJmYWNlR2V0UmVkdWNlTW90aW9uRW5hYmxlZCgpKTsKKworICAgIFRlc3RXZWJL
aXRBUEk6OlV0aWw6OnJ1bigmcmVjZWl2ZWRQcmVmZXJlbmNlTm90aWZpY2F0aW9uKTsKKworICAg
IGF1dG8gcmVkdWNlTW90aW9uID0gWyZdIHsKKyAgICAgICAgcmV0dXJuIFt3ZWJWaWV3IHN0cmlu
Z0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJ3aW5kb3cuaW50ZXJuYWxzLnVzZXJQcmVmZXJzUmVk
dWNlZE1vdGlvbigpIl0uYm9vbFZhbHVlOworICAgIH07CisgICAgCisgICAgW3dlYlZpZXcgc3lu
Y2hyb25vdXNseUxvYWRUZXN0UGFnZU5hbWVkOkAic2ltcGxlIl07CisKKyAgICBUZXN0V2ViS2l0
QVBJOjpVdGlsOjpydW4oJmRvbmUpOworCisgICAgQVNTRVJUX1RSVUUocmVkdWNlTW90aW9uKCkp
OworCisgICAgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90aW9uRW5hYmxlZChOTyk7CisgICAgQVNT
RVJUX0ZBTFNFKF9BWEludGVyZmFjZUdldFJlZHVjZU1vdGlvbkVuYWJsZWQoKSk7CisgICAgLy8g
Q0ZQcmVmZXJlbmNlc1NldFZhbHVlKGtBWEludGVyZmFjZVJlZHVjZU1vdGlvbktleSwgbnVsbHB0
ciwgQ0ZTVFIoImNvbS5hcHBsZS51bml2ZXJzYWxhY2Nlc3MiKSwga0NGUHJlZmVyZW5jZXNDdXJy
ZW50VXNlciwga0NGUHJlZmVyZW5jZXNBbnlIb3N0KTsKKyAgICAvLyBDRk5vdGlmaWNhdGlvbkNl
bnRlclBvc3ROb3RpZmljYXRpb24oQ0ZOb3RpZmljYXRpb25DZW50ZXJHZXREaXN0cmlidXRlZENl
bnRlcigpLCBrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRp
b24sIE5VTEwsIE5VTEwsIHRydWUpOworfQorCisjZW5kaWYK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406955</attachid>
            <date>2020-08-20 12:40:16 -0700</date>
            <delta_ts>2020-08-20 15:32:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215664-20200820124015.patch</filename>
            <type>text/plain</type>
            <size>16874</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjY1ODk4KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4
LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMgaW4g
IlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERlY2xhcmUgbm90aWZpY2F0aW9uIHNlbnQgd2hlbiB0aGUgIlJlZHVj
ZSBtb3Rpb24iIHNldHRpbmcgaXMgY2hhbmdlZC4KKyAKKyAgICAgICAgKiBwYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmg6CisKIDIwMjAtMDgtMTkgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlA
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gTW92ZSBzdGVwcGVyIHBhaW50aW5nIGNvZGUg
b2ZmIG9mIENhcmJvbiBBUEkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
bWFjL0hJU2VydmljZXNTUEkuaAkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ5LDYg
KzE0OSw5IEBAIEFYQ2xpZW50VHlwZSBfQVhHZXRDbGllbnRGb3JDdXJyZW50UmVxdWUKIHZvaWQg
X0FYU2V0Q2xpZW50SWRlbnRpZmljYXRpb25PdmVycmlkZShBWENsaWVudFR5cGUpOwogI2VuZGlm
IC8vIEhBVkUoQVhfQ0xJRU5UX1RZUEUpCiAKK2V4dGVybiBDRlN0cmluZ1JlZiBrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRpb247CitleHRlcm4gQ0ZTdHJp
bmdSZWYga0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5OworCiBXVEZfRVhURVJOX0NfRU5ECiAK
ICNlbmRpZiAvLyBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQpJbmRleDogU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9u
IDI2NTgxMSkKKysrIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMjIgQEAKKzIwMjAtMDgtMTkgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFttYWNPU10gV2ViIHBhZ2VzIGFyZSBub3QgcmVzcG9uZGluZyBjb3Jy
ZWN0bHkgdG8gY2hhbmdlcyBpbiAiUmVkdWNlIG1vdGlvbiIgc2V0dGluZworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NjY0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBoYXBwZW5zIGJlY2F1c2Ug
dGhlcmUgaXMgYSByYWNlIGJldHdlZW4gdGhlIHByZWZlcmVuY2UgY2hhbmdlIGFuZCBub3RpZmlj
YXRpb24gYmVpbmcgcmVjZWl2ZWQgaW4gdGhlIFdlYkNvbnRlbnQKKyAgICAgICAgcHJvY2Vzcy4g
VGhpcyByYWNlIGlzIHVzdWFsbHkgd29uIGJ5IHRoZSBub3RpZmljYXRpb24sIHdoaWNoIHRoZW4g
cmVhZHMgdGhlIHdyb25nIHByZWZlcmVuY2UgdmFsdWUgd2hlbiBiZWluZyBoYW5kbGVkLgorICAg
ICAgICBUaGlzIGJ1ZyB3YXMgaW50cm9kdWNlZCB3aGVuIGFjY2VzcyB0byB0aGUgcHJlZmVyZW5j
ZSBkYWVtb24gd2FzIGNsb3NlZCBpbiB0aGUgV2ViQ29udGVudCBwcm9jZXNzLCBhbmQgcHJlZmVy
ZW5jZXMKKyAgICAgICAgd2VyZSB1cGRhdGVkIGZyb20gdGhlIFVJIHByb2Nlc3MuIFRoaXMgcGF0
Y2ggYWRkcmVzc2VzIHRoaXMgaXNzdWUgYnkgcmUtcG9zdGluZyB0aGUgbm90aWZpY2F0aW9uIHdo
ZW4gdGhlIHByZWZlcmVuY2UKKyAgICAgICAgdmFsdWUgaXMgdXBkYXRlZCBpbiB0aGUgV2ViQ29u
dGVudCBwcm9jZXNzLgorCisgICAgICAgIEFQSSB0ZXN0OiBXZWJLaXQuQWNjZXNzaWJpbGl0eVJl
ZHVjZU1vdGlvbgorCisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW06CisgICAgICAgIChXZWJLaXQ6OnJlZHVjZU1vdGlvblByZWZlcmVuY2VLZXkpOgorICAgICAg
ICAoV2ViS2l0OjpkaXNwYXRjaFNpbXVsYXRlZE5vdGlmaWNhdGlvbnNGb3JQcmVmZXJlbmNlQ2hh
bmdlKToKKwogMjAyMC0wOC0xNyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAg
ICAgICAgIEF1ZGlvQ29udGV4dC5nZXRPdXRwdXRUaW1lc3RhbXAoKSBpcyBtaXNzaW5nCkluZGV4
OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QcmVmZXJlbmNlT2JzZXJ2ZXIubW0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9ic2Vy
dmVyLm1tCShyZXZpc2lvbiAyNjU4MTEpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9QcmVmZXJlbmNlT2JzZXJ2ZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTQ3LDYgKzQ3LDcgQEAg
QGludGVyZmFjZSBXS1ByZWZlcmVuY2VPYnNlcnZlciAoKSB7CiAKIC0gKHZvaWQpX25vdGlmeU9i
c2VydmVyc09mQ2hhbmdlRnJvbVZhbHVlc0ZvcktleXM6KE5TRGljdGlvbmFyeTxOU1N0cmluZyAq
LCBpZD4gKilvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOihOU0RpY3Rpb25hcnk8TlNTdHJpbmcg
KiwgaWQ+ICopbmV3VmFsdWVzCiB7CisgICAgV1RGTG9nQWx3YXlzKCJfbm90aWZ5T2JzZXJ2ZXJz
T2ZDaGFuZ2VGcm9tVmFsdWVzRm9yS2V5cyIpOwogICAgIFtzdXBlciBfbm90aWZ5T2JzZXJ2ZXJz
T2ZDaGFuZ2VGcm9tVmFsdWVzRm9yS2V5czpvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOm5ld1Zh
bHVlc107CiAKICAgICBpZiAoIW1fb2JzZXJ2ZXIpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHJldmlzaW9uIDI2NTgxMSkK
KysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHdv
cmtpbmcgY29weSkKQEAgLTEyNCw2ICsxMjQsNyBAQAogI2ltcG9ydCAiV2ViU3dpdGNoaW5nR1BV
Q2xpZW50LmgiCiAjaW1wb3J0IDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMTWFuYWdl
ci5oPgogI2ltcG9ydCA8V2ViQ29yZS9TY3JvbGxiYXJUaGVtZU1hYy5oPgorI2ltcG9ydCA8cGFs
L3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNTY3JvbGxl
ckltcFNQSS5oPgogI2VuZGlmCiAKQEAgLTkxMCw2ICs5MTEsMTIgQEAgc3RhdGljIGNvbnN0IFdU
Rjo6U3RyaW5nJiB1c2VySGlnaGxpZ2h0QwogICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxXVEY6
OlN0cmluZz4gdXNlckhpZ2hsaWdodENvbG9yUHJlZmVyZW5jZUtleShNQUtFX1NUQVRJQ19TVFJJ
TkdfSU1QTCgiQXBwbGVIaWdobGlnaHRDb2xvciIpKTsKICAgICByZXR1cm4gdXNlckhpZ2hsaWdo
dENvbG9yUHJlZmVyZW5jZUtleTsKIH0KKworc3RhdGljIGNvbnN0IFdURjo6U3RyaW5nJiByZWR1
Y2VNb3Rpb25QcmVmZXJlbmNlS2V5KCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8V1RG
OjpTdHJpbmc+IGtleShNQUtFX1NUQVRJQ19TVFJJTkdfSU1QTCgicmVkdWNlTW90aW9uIikpOwor
ICAgIHJldHVybiBrZXk7Cit9CiAjZW5kaWYKIAogc3RhdGljIHZvaWQgZGlzcGF0Y2hTaW11bGF0
ZWROb3RpZmljYXRpb25zRm9yUHJlZmVyZW5jZUNoYW5nZShjb25zdCBTdHJpbmcmIGtleSkKQEAg
LTkyMCwxNyArOTI3LDIwIEBAIHN0YXRpYyB2b2lkIGRpc3BhdGNoU2ltdWxhdGVkTm90aWZpY2F0
aW8KICAgICAvLyBvZiB0aGUgc3lzdGVtLCB3ZSBtdXN0IHJlLXBvc3QgdGhlIG5vdGlmaWNhdGlv
biBpbiB0aGUgV2ViIENvbnRlbnQgcHJvY2VzcyBhZnRlciB1cGRhdGluZyB0aGUgZGVmYXVsdC4K
ICAgICAKICAgICBpZiAoa2V5ID09IHVzZXJBY2NlbnRDb2xvclByZWZlcmVuY2VLZXkoKSkgewot
ICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90
aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAgICAgICBhdXRvIG5vdGlmaWNhdGlv
bkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKICAgICAgICAg
W25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9uTmFtZTpAImtDVUlOb3RpZmljYXRp
b25BcXVhQ29sb3JWYXJpYW50Q2hhbmdlZCIgb2JqZWN0Om5pbF07CiAgICAgICAgIFtub3RpZmlj
YXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6QCJOU1N5c3RlbUNvbG9yc1dpbGxDaGFu
Z2VOb3RpZmljYXRpb24iIG9iamVjdDpuaWxdOwogICAgICAgICBbbm90aWZpY2F0aW9uQ2VudGVy
IHBvc3ROb3RpZmljYXRpb25OYW1lOk5TU3lzdGVtQ29sb3JzRGlkQ2hhbmdlTm90aWZpY2F0aW9u
IG9iamVjdDpuaWxdOwotICAgIH0KLSAgICBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclBy
ZWZlcmVuY2VLZXkoKSkgewotICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0
aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAgIH0g
ZWxzZSBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclByZWZlcmVuY2VLZXkoKSkgeworICAg
ICAgICBhdXRvIG5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZh
dWx0Q2VudGVyXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9u
TmFtZTpAIk5TU3lzdGVtQ29sb3JzV2lsbENoYW5nZU5vdGlmaWNhdGlvbiIgb2JqZWN0Om5pbF07
CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6TlNTeXN0
ZW1Db2xvcnNEaWRDaGFuZ2VOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07CisgICAgfSBlbHNlIGlm
IChrZXkgPT0gcmVkdWNlTW90aW9uUHJlZmVyZW5jZUtleSgpKSB7CisgICAgICAgIGF1dG8gbm90
aWZpY2F0aW9uQ2VudGVyID0gQ0ZOb3RpZmljYXRpb25DZW50ZXJHZXREaXN0cmlidXRlZENlbnRl
cigpOworICAgICAgICBDRk5vdGlmaWNhdGlvbkNlbnRlclBvc3ROb3RpZmljYXRpb24obm90aWZp
Y2F0aW9uQ2VudGVyLCBrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3Rp
ZmljYXRpb24sIG51bGxwdHIsIG51bGxwdHIsIHRydWUpOwogICAgIH0KICNlbmRpZgorICAgIFdU
RkxvZ0Fsd2F5cygiUHJlZmVyZW5jZSAlcyBjaGFuZ2VkLiIsIGtleS51dGY4KCkuZGF0YSgpKTsK
IH0KIAogc3RhdGljIHZvaWQgc2V0UHJlZmVyZW5jZVZhbHVlKGNvbnN0IFN0cmluZyYgZG9tYWlu
LCBjb25zdCBTdHJpbmcmIGtleSwgaWQgdmFsdWUpCkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjU5MDUpCisrKyBUb29scy9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wOC0xOSAgUGVy
IEFybmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBXZWIg
cGFnZXMgYXJlIG5vdCByZXNwb25kaW5nIGNvcnJlY3RseSB0byBjaGFuZ2VzIGluICJSZWR1Y2Ug
bW90aW9uIiBzZXR0aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTU2NjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxp
dHlSZWR1Y2VNb3Rpb24ubW06IEFkZGVkLgorICAgICAgICAoVEVTVCk6CisKIDIwMjAtMDgtMTkg
IEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIFt3ZWJraXRj
b3JlcHldIEZhaWx1cmUgdG8gc2V0IGluZGV4IHNob3VsZCBub3QgYmUgZmF0YWwKSW5kZXg6IFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAyNjU4MTEpCisrKyBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5
KQpAQCAtOTMzLDYgKzkzMyw3IEBACiAJCUMxNUNCQjMwMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNr
bGlnaHRMZXZlbE5vdGlmaWNhdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGlnaHRMZXZl
bE5vdGlmaWNhdGlvbi5tbSAqLzsgfTsKIAkJQzE1Q0JCM0YyM0ZCMTc3QTAwMzAwQ0M3IC8qIFBy
ZWZlcmVuY2VDaGFuZ2VzLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQzE1Q0JCM0UyM0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1t
ICovOyB9OwogCQlDMTY5MkRDQTIzRDEwREFFMDA2RTg4RjcgLyogQmF0dGVyeS5tbSBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxNjkyREM5MjNEMTBEQUUw
MDZFODhGNyAvKiBCYXR0ZXJ5Lm1tICovOyB9OworCQlDMUY0ODQwNzI0RUREQjQwMDA1M0VDQjgg
LyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRjQ4NDA2MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uLm1tICovOyB9OwogCQlDMUY3QjczOTI0NDkwODNGMDAxMjQ1NTcg
LyogQUdYQ29tcGlsZXJTZXJ2aWNlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQzFGN0I3MzgyNDQ5MDgzRjAwMTI0NTU3IC8qIEFHWENvbXBpbGVyU2Vy
dmljZS5tbSAqLzsgfTsKIAkJQzFGRjlFREIyNDQ2NDRGMDAwODM5QUU0IC8qIFdlYkZpbHRlci5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRkY5RURB
MjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0ZXIubW0gKi87IH07CiAJCUMyMEY4OEE3MjI5NUI5
NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMjBGODhBNjIyOTVCOTY3MDBENjEwRkEgLyogQ29y
ZVRleHQuZnJhbWV3b3JrICovOyB9OwpAQCAtMjYwNyw2ICsyNjA4LDcgQEAKIAkJQzE1Q0JCM0Uy
M0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gUHJlZmVyZW5jZUNoYW5nZXMubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUMxNjkyREM5MjNEMTBEQUUwMDZFODhGNyAvKiBCYXR0ZXJ5Lm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gQmF0dGVyeS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQzFEOEVFMjEyMDI4RThFMzAwOEVCMTQxIC8qIFdlYlByb2Nlc3NUZXJtaW5hdGUu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJQcm9jZXNzVGVy
bWluYXRlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMUY0ODQwNjI0RUREQjQw
MDA1M0VDQjggLyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUMxRjdCNzM4MjQ0OTA4M0YwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2Uu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBR1hDb21waWxlclNlcnZpY2UubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUMxRkY5RURBMjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0
ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJGaWx0ZXIubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUMyMEY4OEE2MjI5NUI5NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFt
ZXdvcmsgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3
cmFwcGVyLmZyYW1ld29yazsgbmFtZSA9IENvcmVUZXh0LmZyYW1ld29yazsgcGF0aCA9IFN5c3Rl
bS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29yZVRleHQuZnJhbWV3b3JrOyBzb3VyY2VUcmVlID0gU0RL
Uk9PVDsgfTsKQEAgLTMwODQsNiArMzA4Niw3IEBACiAJCTBGMTM5RTc0MUE0MjNBNDYwMEY1OTBG
NSAvKiBjb2NvYSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJ
CQkJQzFGNDg0MDYyNEVEREI0MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24u
bW0gKi8sCiAJCQkJRTNGOEFCOTEyNDFBQjlDRTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1v
dGVVSUFwcC5tbSAqLywKIAkJCQlDMUY3QjczODI0NDkwODNGMDAxMjQ1NTcgLyogQUdYQ29tcGls
ZXJTZXJ2aWNlLm1tICovLAogCQkJCUMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGln
aHRMZXZlbE5vdGlmaWNhdGlvbi5tbSAqLywKQEAgLTQ4NjUsOSArNDg2OCw5IEBACiAJCQkJN0M4
M0RFRDIxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hNYXAuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
N0M4M0RFRDQxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hTZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJN0M4QkZGNzEyM0MwMTA3QTAwQzAwOUIzIC8qIEhleE51bWJlci5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQkzMzk3NkQ4MzI0REM0NzlCMDA4MTIzMDQgLyogSW5kZXhTcGFyc2VTZXQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJN0M4M0RFRTAxRDBBNTkwQzAwRkVCQ0YzIC8qIEludGVnZXJUb1N0
cmluZ0NvbnZlcnNpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTNGQ0RFNkIyMjlFRkZCOTAw
NTk4RUNGIC8qIElzb0hlYXAuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMzM5NzZEODMyNERDNDc5
QjAwODEyMzA0IC8qIEluZGV4U3BhcnNlU2V0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdDRUI2
MkFCMjIzNjA5REUwMDY5Q0JCMCAvKiBJdGVyYXRvclJhbmdlLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTdBMDUwOTQxMUZCOUYwNjQwMEIzM0ZCOCAvKiBKU09OVmFsdWUuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJNTMxQzFEOEUxREY4RUY3MjAwNkU5NzlGIC8qIExFQkRlY29kZXIuY3BwIGluIFNv
dXJjZXMgKi8sCkBAIC00OTU0LDYgKzQ5NTcsNyBAQAogCQkJCTU3QzYyNDRFMjM0NkJDRkEwMDM4
M0ZFNyAvKiBfV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
N0NDRTdFRTQxQTQxMUFFNjAwNDQ3QzRDIC8qIEFib3V0QmxhbmtMb2FkLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTdDQ0U3RUIzMUE0MTFBN0UwMDQ0N0M0QyAvKiBBY2NlcHRzRmlyc3RNb3VzZS5t
bSBpbiBTb3VyY2VzICovLAorCQkJCUMxRjQ4NDA3MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRTNGOEFCOTIyNDFBQjlD
RTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1vdGVVSUFwcC5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTJFMjA1QkE0MUY1Mjc3NDYwMDU5NTJERCAvKiBBY2Nlc3NpYmlsaXR5VGVzdHNJT1MubW0g
aW4gU291cmNlcyAqLywKIAkJCQk5QkQ1MTExQzFGRThFMTE2MDBEMkI2MzAgLyogQWNjZXNzaW5n
UGFzdGVkSW1hZ2UubW0gaW4gU291cmNlcyAqLywKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlv
bi5tbQkobm9uZXhpc3RlbnQpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9B
Y2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTEy
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCAiY29uZmlnLmgiCisKKyNpZiBXS19IQVZFX0NfU1BJ
CisKKyNpbXBvcnQgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCisjaW1wb3J0ICJUZXN0V0tXZWJWaWV3
LmgiCisjaW1wb3J0IDxXZWJLaXQvUHJlZmVyZW5jZU9ic2VydmVyLmg+CisjaW1wb3J0IDxXZWJL
aXQvV0tQcm9jZXNzUG9vbFByaXZhdGUuaD4KKyNpbXBvcnQgPFdlYktpdC9fV0tQcm9jZXNzUG9v
bENvbmZpZ3VyYXRpb24uaD4KKworI2ltcG9ydCA8cGFsL3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5o
PgorI2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19GUkFNRVdPUksoQXBw
bGljYXRpb25TZXJ2aWNlcykKK1NPRlRfTElOSyhBcHBsaWNhdGlvblNlcnZpY2VzLCBfQVhJbnRl
cmZhY2VTZXRSZWR1Y2VNb3Rpb25FbmFibGVkLCB2b2lkLCAoQm9vbGVhbiBlbmFibGUpLCAoZW5h
YmxlKSk7CitTT0ZUX0xJTksoQXBwbGljYXRpb25TZXJ2aWNlcywgX0FYSW50ZXJmYWNlR2V0UmVk
dWNlTW90aW9uRW5hYmxlZCwgQm9vbGVhbiwgKCksICgpKTsKKworc3RhdGljIGludCByZWR1Y2VN
b3Rpb25Ob3RpZmljYXRpb25Db3VudCA9IDA7CitzdGF0aWMgYm9vbCBkb25lID0gZmFsc2U7CisK
K3N0YXRpYyBib29sIHJlY2VpdmVkUHJlZmVyZW5jZU5vdGlmaWNhdGlvbiA9IGZhbHNlOworCitA
aW50ZXJmYWNlIFdLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZyA6IFdLUHJlZmVyZW5jZU9i
c2VydmVyCistICh2b2lkKXByZWZlcmVuY2VEaWRDaGFuZ2U6KE5TU3RyaW5nICopZG9tYWluIGtl
eTooTlNTdHJpbmcgKilrZXkgZW5jb2RlZFZhbHVlOihOU1N0cmluZyAqKWVuY29kZWRWYWx1ZTsK
K0BlbmQKKworQGltcGxlbWVudGF0aW9uIFdLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZwor
LSAodm9pZClwcmVmZXJlbmNlRGlkQ2hhbmdlOihOU1N0cmluZyAqKWRvbWFpbiBrZXk6KE5TU3Ry
aW5nICopa2V5IGVuY29kZWRWYWx1ZTooTlNTdHJpbmcgKillbmNvZGVkVmFsdWUKK3sKKyAgICBy
ZWNlaXZlZFByZWZlcmVuY2VOb3RpZmljYXRpb24gPSB0cnVlOworICAgIFdURkxvZ0Fsd2F5cygi
UHJlZmVyZW5jZSBjaGFuZ2VkICVzICVzIiwgU3RyaW5nKGRvbWFpbikudXRmOCgpLmRhdGEoKSwg
U3RyaW5nKGtleSkudXRmOCgpLmRhdGEoKSk7CisgICAgW3N1cGVyIHByZWZlcmVuY2VEaWRDaGFu
Z2U6ZG9tYWluIGtleTprZXkgZW5jb2RlZFZhbHVlOmVuY29kZWRWYWx1ZV07Cit9CitAZW5kCisK
K1RFU1QoV2ViS2l0LCBBY2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uKQoreworICAgIFJldGFpblB0
cjxOU09iamVjdD4gYWNjZXNzaWJpbGl0eU9ic2VydmVyID0gW1tOU0Rpc3RyaWJ1dGVkTm90aWZp
Y2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVyRm9yTmFtZTooX19icmlkZ2Ug
aWQpa0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uU3RhdHVzRGlkQ2hhbmdlTm90aWZpY2F0aW9uIG9i
amVjdDpuaWwgcXVldWU6W05TT3BlcmF0aW9uUXVldWUgY3VycmVudFF1ZXVlXSB1c2luZ0Jsb2Nr
Ol4oTlNOb3RpZmljYXRpb24gKm5vdGUpIHsKKyAgICAgICAgV1RGTG9nQWx3YXlzKCJSZWNlaXZl
ZCBub3RpZmljYXRpb24iKTsKKyAgICAgICAgcmVkdWNlTW90aW9uTm90aWZpY2F0aW9uQ291bnQr
KzsKKyAgICAgICAgaWYgKHJlZHVjZU1vdGlvbk5vdGlmaWNhdGlvbkNvdW50ID09IDIpCisgICAg
ICAgICAgICBkb25lID0gdHJ1ZTsKKyAgICB9XTsKKworICAgIGF1dG8gY29uZmlndXJhdGlvbiA9
IGFkb3B0TlMoW1tXS1dlYlZpZXdDb25maWd1cmF0aW9uIGFsbG9jXSBpbml0XSk7CisgICAgV0tS
ZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0ID0gYWRvcHRXSyhUZXN0V2ViS2l0QVBJOjpV
dGlsOjpjcmVhdGVDb250ZXh0Rm9ySW5qZWN0ZWRCdW5kbGVUZXN0KCJJbnRlcm5hbHNJbmplY3Rl
ZEJ1bmRsZVRlc3QiKSk7CisgICAgY29uZmlndXJhdGlvbi5nZXQoKS5wcm9jZXNzUG9vbCA9IChX
S1Byb2Nlc3NQb29sICopY29udGV4dC5nZXQoKTsKKyAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5T
KFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDMw
MCwgMzAwKSBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb24uZ2V0KCkgYWRkVG9XaW5kb3c6WUVT
XSk7CisKKyAgICAvLyBDRlByZWZlcmVuY2VzU2V0QXBwVmFsdWUoa0FYSW50ZXJmYWNlUmVkdWNl
TW90aW9uS2V5LCBrQ0ZCb29sZWFuRmFsc2UsIENGU1RSKCJjb20uYXBwbGUudW5pdmVyc2FsYWNj
ZXNzIikpOworICAgIC8vIENGTm90aWZpY2F0aW9uQ2VudGVyUG9zdE5vdGlmaWNhdGlvbihDRk5v
dGlmaWNhdGlvbkNlbnRlckdldERpc3RyaWJ1dGVkQ2VudGVyKCksIGtBWEludGVyZmFjZVJlZHVj
ZU1vdGlvblN0YXR1c0RpZENoYW5nZU5vdGlmaWNhdGlvbiwgTlVMTCwgTlVMTCwgdHJ1ZSk7Cisg
ICAgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90aW9uRW5hYmxlZChOTyk7CisgICAgQ0ZQcmVmZXJl
bmNlc1NldFZhbHVlKGtBWEludGVyZmFjZVJlZHVjZU1vdGlvbktleSwgbnVsbHB0ciwgQ0ZTVFIo
ImNvbS5hcHBsZS51bml2ZXJzYWxhY2Nlc3MiKSwga0NGUHJlZmVyZW5jZXNDdXJyZW50VXNlciwg
a0NGUHJlZmVyZW5jZXNDdXJyZW50SG9zdCk7CisKKyAgICBhdXRvIG9ic2VydmVyID0gYWRvcHRO
UyhbW1dLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZyBhbGxvY10gaW5pdF0pOworCisgICAg
W3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRUZXN0UGFnZU5hbWVkOkAic2ltcGxlIl07CisKKyAg
ICBBU1NFUlRfRkFMU0UoX0FYSW50ZXJmYWNlR2V0UmVkdWNlTW90aW9uRW5hYmxlZCgpKTsKKyAg
ICBBU1NFUlRfRkFMU0UoQ0ZQcmVmZXJlbmNlc0dldEFwcEJvb2xlYW5WYWx1ZShrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25LZXksIENGU1RSKCJjb20uYXBwbGUudW5pdmVyc2FsYWNjZXNzIiksIG51
bGxwdHIpKTsKKworICAgIF9BWEludGVyZmFjZVNldFJlZHVjZU1vdGlvbkVuYWJsZWQoWUVTKTsK
KyAgICAvLyBDRlByZWZlcmVuY2VzU3luY2hyb25pemUoQ0ZTVFIoImNvbS5hcHBsZS51bml2ZXJz
YWxhY2Nlc3MiKSwga0NGUHJlZmVyZW5jZXNDdXJyZW50VXNlciwga0NGUHJlZmVyZW5jZXNBbnlI
b3N0KTsKKyAgICAvLyBDRk5vdGlmaWNhdGlvbkNlbnRlclBvc3ROb3RpZmljYXRpb24oQ0ZOb3Rp
ZmljYXRpb25DZW50ZXJHZXREaXN0cmlidXRlZENlbnRlcigpLCBrQVhJbnRlcmZhY2VSZWR1Y2VN
b3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRpb24sIE5VTEwsIE5VTEwsIHRydWUpOworCisg
ICAgQVNTRVJUX1RSVUUoX0FYSW50ZXJmYWNlR2V0UmVkdWNlTW90aW9uRW5hYmxlZCgpKTsKKyAg
ICBBU1NFUlRfVFJVRShDRlByZWZlcmVuY2VzR2V0QXBwQm9vbGVhblZhbHVlKGtBWEludGVyZmFj
ZVJlZHVjZU1vdGlvbktleSwgQ0ZTVFIoImNvbS5hcHBsZS51bml2ZXJzYWxhY2Nlc3MiKSwgbnVs
bHB0cikpOworCisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZyZWNlaXZlZFByZWZlcmVu
Y2VOb3RpZmljYXRpb24pOworCisgICAgYXV0byByZWR1Y2VNb3Rpb24gPSBbJl0geworICAgICAg
ICByZXR1cm4gW3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdDpAIndpbmRvdy5p
bnRlcm5hbHMudXNlclByZWZlcnNSZWR1Y2VkTW90aW9uKCkiXS5ib29sVmFsdWU7CisgICAgfTsK
KyAgICAKKyAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZFRlc3RQYWdlTmFtZWQ6QCJzaW1w
bGUiXTsKKworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmZG9uZSk7CisKKyAgICBBU1NF
UlRfVFJVRShyZWR1Y2VNb3Rpb24oKSk7CisKKyAgICBfQVhJbnRlcmZhY2VTZXRSZWR1Y2VNb3Rp
b25FbmFibGVkKE5PKTsKKyAgICBBU1NFUlRfRkFMU0UoX0FYSW50ZXJmYWNlR2V0UmVkdWNlTW90
aW9uRW5hYmxlZCgpKTsKKyAgICAvLyBDRlByZWZlcmVuY2VzU2V0VmFsdWUoa0FYSW50ZXJmYWNl
UmVkdWNlTW90aW9uS2V5LCBudWxscHRyLCBDRlNUUigiY29tLmFwcGxlLnVuaXZlcnNhbGFjY2Vz
cyIpLCBrQ0ZQcmVmZXJlbmNlc0N1cnJlbnRVc2VyLCBrQ0ZQcmVmZXJlbmNlc0FueUhvc3QpOwor
ICAgIC8vIENGTm90aWZpY2F0aW9uQ2VudGVyUG9zdE5vdGlmaWNhdGlvbihDRk5vdGlmaWNhdGlv
bkNlbnRlckdldERpc3RyaWJ1dGVkQ2VudGVyKCksIGtBWEludGVyZmFjZVJlZHVjZU1vdGlvblN0
YXR1c0RpZENoYW5nZU5vdGlmaWNhdGlvbiwgTlVMTCwgTlVMTCwgdHJ1ZSk7Cit9CisKKyNlbmRp
Zgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406975</attachid>
            <date>2020-08-20 15:31:01 -0700</date>
            <delta_ts>2020-08-20 17:09:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215664-20200820153059.patch</filename>
            <type>text/plain</type>
            <size>18297</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjY1ODk4KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4
LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMgaW4g
IlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERlY2xhcmUgbm90aWZpY2F0aW9uIHNlbnQgd2hlbiB0aGUgIlJlZHVj
ZSBtb3Rpb24iIHNldHRpbmcgaXMgY2hhbmdlZC4KKyAKKyAgICAgICAgKiBwYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmg6CisKIDIwMjAtMDgtMTkgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlA
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gTW92ZSBzdGVwcGVyIHBhaW50aW5nIGNvZGUg
b2ZmIG9mIENhcmJvbiBBUEkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
bWFjL0hJU2VydmljZXNTUEkuaAkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ5LDYg
KzE0OSw5IEBAIEFYQ2xpZW50VHlwZSBfQVhHZXRDbGllbnRGb3JDdXJyZW50UmVxdWUKIHZvaWQg
X0FYU2V0Q2xpZW50SWRlbnRpZmljYXRpb25PdmVycmlkZShBWENsaWVudFR5cGUpOwogI2VuZGlm
IC8vIEhBVkUoQVhfQ0xJRU5UX1RZUEUpCiAKK2V4dGVybiBDRlN0cmluZ1JlZiBrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRpb247CitleHRlcm4gQ0ZTdHJp
bmdSZWYga0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5OworCiBXVEZfRVhURVJOX0NfRU5ECiAK
ICNlbmRpZiAvLyBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQpJbmRleDogU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9u
IDI2NTgxMSkKKysrIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMjIgQEAKKzIwMjAtMDgtMTkgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFttYWNPU10gV2ViIHBhZ2VzIGFyZSBub3QgcmVzcG9uZGluZyBjb3Jy
ZWN0bHkgdG8gY2hhbmdlcyBpbiAiUmVkdWNlIG1vdGlvbiIgc2V0dGluZworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NjY0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBoYXBwZW5zIGJlY2F1c2Ug
dGhlcmUgaXMgYSByYWNlIGJldHdlZW4gdGhlIHByZWZlcmVuY2UgY2hhbmdlIGFuZCBub3RpZmlj
YXRpb24gYmVpbmcgcmVjZWl2ZWQgaW4gdGhlIFdlYkNvbnRlbnQKKyAgICAgICAgcHJvY2Vzcy4g
VGhpcyByYWNlIGlzIHVzdWFsbHkgd29uIGJ5IHRoZSBub3RpZmljYXRpb24sIHdoaWNoIHRoZW4g
cmVhZHMgdGhlIHdyb25nIHByZWZlcmVuY2UgdmFsdWUgd2hlbiBiZWluZyBoYW5kbGVkLgorICAg
ICAgICBUaGlzIGJ1ZyB3YXMgaW50cm9kdWNlZCB3aGVuIGFjY2VzcyB0byB0aGUgcHJlZmVyZW5j
ZSBkYWVtb24gd2FzIGNsb3NlZCBpbiB0aGUgV2ViQ29udGVudCBwcm9jZXNzLCBhbmQgcHJlZmVy
ZW5jZXMKKyAgICAgICAgd2VyZSB1cGRhdGVkIGZyb20gdGhlIFVJIHByb2Nlc3MuIFRoaXMgcGF0
Y2ggYWRkcmVzc2VzIHRoaXMgaXNzdWUgYnkgcmUtcG9zdGluZyB0aGUgbm90aWZpY2F0aW9uIHdo
ZW4gdGhlIHByZWZlcmVuY2UKKyAgICAgICAgdmFsdWUgaXMgdXBkYXRlZCBpbiB0aGUgV2ViQ29u
dGVudCBwcm9jZXNzLgorCisgICAgICAgIEFQSSB0ZXN0OiBXZWJLaXQuQWNjZXNzaWJpbGl0eVJl
ZHVjZU1vdGlvbgorCisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW06CisgICAgICAgIChXZWJLaXQ6OnJlZHVjZU1vdGlvblByZWZlcmVuY2VLZXkpOgorICAgICAg
ICAoV2ViS2l0OjpkaXNwYXRjaFNpbXVsYXRlZE5vdGlmaWNhdGlvbnNGb3JQcmVmZXJlbmNlQ2hh
bmdlKToKKwogMjAyMC0wOC0xNyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAg
ICAgICAgIEF1ZGlvQ29udGV4dC5nZXRPdXRwdXRUaW1lc3RhbXAoKSBpcyBtaXNzaW5nCkluZGV4
OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QcmVmZXJlbmNlT2JzZXJ2ZXIubW0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9ic2Vy
dmVyLm1tCShyZXZpc2lvbiAyNjU4MTEpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9QcmVmZXJlbmNlT2JzZXJ2ZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTQ3LDYgKzQ3LDcgQEAg
QGludGVyZmFjZSBXS1ByZWZlcmVuY2VPYnNlcnZlciAoKSB7CiAKIC0gKHZvaWQpX25vdGlmeU9i
c2VydmVyc09mQ2hhbmdlRnJvbVZhbHVlc0ZvcktleXM6KE5TRGljdGlvbmFyeTxOU1N0cmluZyAq
LCBpZD4gKilvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOihOU0RpY3Rpb25hcnk8TlNTdHJpbmcg
KiwgaWQ+ICopbmV3VmFsdWVzCiB7CisgICAgV1RGTG9nQWx3YXlzKCJfbm90aWZ5T2JzZXJ2ZXJz
T2ZDaGFuZ2VGcm9tVmFsdWVzRm9yS2V5cyIpOwogICAgIFtzdXBlciBfbm90aWZ5T2JzZXJ2ZXJz
T2ZDaGFuZ2VGcm9tVmFsdWVzRm9yS2V5czpvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOm5ld1Zh
bHVlc107CiAKICAgICBpZiAoIW1fb2JzZXJ2ZXIpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHJldmlzaW9uIDI2NTgxMSkK
KysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHdv
cmtpbmcgY29weSkKQEAgLTEyNCw2ICsxMjQsNyBAQAogI2ltcG9ydCAiV2ViU3dpdGNoaW5nR1BV
Q2xpZW50LmgiCiAjaW1wb3J0IDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMTWFuYWdl
ci5oPgogI2ltcG9ydCA8V2ViQ29yZS9TY3JvbGxiYXJUaGVtZU1hYy5oPgorI2ltcG9ydCA8cGFs
L3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNTY3JvbGxl
ckltcFNQSS5oPgogI2VuZGlmCiAKQEAgLTkxMCw2ICs5MTEsMTIgQEAgc3RhdGljIGNvbnN0IFdU
Rjo6U3RyaW5nJiB1c2VySGlnaGxpZ2h0QwogICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxXVEY6
OlN0cmluZz4gdXNlckhpZ2hsaWdodENvbG9yUHJlZmVyZW5jZUtleShNQUtFX1NUQVRJQ19TVFJJ
TkdfSU1QTCgiQXBwbGVIaWdobGlnaHRDb2xvciIpKTsKICAgICByZXR1cm4gdXNlckhpZ2hsaWdo
dENvbG9yUHJlZmVyZW5jZUtleTsKIH0KKworc3RhdGljIGNvbnN0IFdURjo6U3RyaW5nJiByZWR1
Y2VNb3Rpb25QcmVmZXJlbmNlS2V5KCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8V1RG
OjpTdHJpbmc+IGtleShNQUtFX1NUQVRJQ19TVFJJTkdfSU1QTCgicmVkdWNlTW90aW9uIikpOwor
ICAgIHJldHVybiBrZXk7Cit9CiAjZW5kaWYKIAogc3RhdGljIHZvaWQgZGlzcGF0Y2hTaW11bGF0
ZWROb3RpZmljYXRpb25zRm9yUHJlZmVyZW5jZUNoYW5nZShjb25zdCBTdHJpbmcmIGtleSkKQEAg
LTkyMCwxNyArOTI3LDIwIEBAIHN0YXRpYyB2b2lkIGRpc3BhdGNoU2ltdWxhdGVkTm90aWZpY2F0
aW8KICAgICAvLyBvZiB0aGUgc3lzdGVtLCB3ZSBtdXN0IHJlLXBvc3QgdGhlIG5vdGlmaWNhdGlv
biBpbiB0aGUgV2ViIENvbnRlbnQgcHJvY2VzcyBhZnRlciB1cGRhdGluZyB0aGUgZGVmYXVsdC4K
ICAgICAKICAgICBpZiAoa2V5ID09IHVzZXJBY2NlbnRDb2xvclByZWZlcmVuY2VLZXkoKSkgewot
ICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90
aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAgICAgICBhdXRvIG5vdGlmaWNhdGlv
bkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKICAgICAgICAg
W25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9uTmFtZTpAImtDVUlOb3RpZmljYXRp
b25BcXVhQ29sb3JWYXJpYW50Q2hhbmdlZCIgb2JqZWN0Om5pbF07CiAgICAgICAgIFtub3RpZmlj
YXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6QCJOU1N5c3RlbUNvbG9yc1dpbGxDaGFu
Z2VOb3RpZmljYXRpb24iIG9iamVjdDpuaWxdOwogICAgICAgICBbbm90aWZpY2F0aW9uQ2VudGVy
IHBvc3ROb3RpZmljYXRpb25OYW1lOk5TU3lzdGVtQ29sb3JzRGlkQ2hhbmdlTm90aWZpY2F0aW9u
IG9iamVjdDpuaWxdOwotICAgIH0KLSAgICBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclBy
ZWZlcmVuY2VLZXkoKSkgewotICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0
aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAgIH0g
ZWxzZSBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclByZWZlcmVuY2VLZXkoKSkgeworICAg
ICAgICBhdXRvIG5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZh
dWx0Q2VudGVyXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9u
TmFtZTpAIk5TU3lzdGVtQ29sb3JzV2lsbENoYW5nZU5vdGlmaWNhdGlvbiIgb2JqZWN0Om5pbF07
CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6TlNTeXN0
ZW1Db2xvcnNEaWRDaGFuZ2VOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07CisgICAgfSBlbHNlIGlm
IChrZXkgPT0gcmVkdWNlTW90aW9uUHJlZmVyZW5jZUtleSgpKSB7CisgICAgICAgIGF1dG8gbm90
aWZpY2F0aW9uQ2VudGVyID0gQ0ZOb3RpZmljYXRpb25DZW50ZXJHZXREaXN0cmlidXRlZENlbnRl
cigpOworICAgICAgICBDRk5vdGlmaWNhdGlvbkNlbnRlclBvc3ROb3RpZmljYXRpb24obm90aWZp
Y2F0aW9uQ2VudGVyLCBrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3Rp
ZmljYXRpb24sIG51bGxwdHIsIG51bGxwdHIsIHRydWUpOwogICAgIH0KICNlbmRpZgorICAgIFdU
RkxvZ0Fsd2F5cygiUHJlZmVyZW5jZSAlcyBjaGFuZ2VkLiIsIGtleS51dGY4KCkuZGF0YSgpKTsK
IH0KIAogc3RhdGljIHZvaWQgc2V0UHJlZmVyZW5jZVZhbHVlKGNvbnN0IFN0cmluZyYgZG9tYWlu
LCBjb25zdCBTdHJpbmcmIGtleSwgaWQgdmFsdWUpCkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjU5MDUpCisrKyBUb29scy9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wOC0xOSAgUGVy
IEFybmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBXZWIg
cGFnZXMgYXJlIG5vdCByZXNwb25kaW5nIGNvcnJlY3RseSB0byBjaGFuZ2VzIGluICJSZWR1Y2Ug
bW90aW9uIiBzZXR0aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTU2NjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxp
dHlSZWR1Y2VNb3Rpb24ubW06IEFkZGVkLgorICAgICAgICAoVEVTVCk6CisKIDIwMjAtMDgtMTkg
IEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIFt3ZWJraXRj
b3JlcHldIEZhaWx1cmUgdG8gc2V0IGluZGV4IHNob3VsZCBub3QgYmUgZmF0YWwKSW5kZXg6IFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAyNjU4MTEpCisrKyBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5
KQpAQCAtOTMzLDYgKzkzMyw3IEBACiAJCUMxNUNCQjMwMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNr
bGlnaHRMZXZlbE5vdGlmaWNhdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGlnaHRMZXZl
bE5vdGlmaWNhdGlvbi5tbSAqLzsgfTsKIAkJQzE1Q0JCM0YyM0ZCMTc3QTAwMzAwQ0M3IC8qIFBy
ZWZlcmVuY2VDaGFuZ2VzLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQzE1Q0JCM0UyM0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1t
ICovOyB9OwogCQlDMTY5MkRDQTIzRDEwREFFMDA2RTg4RjcgLyogQmF0dGVyeS5tbSBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxNjkyREM5MjNEMTBEQUUw
MDZFODhGNyAvKiBCYXR0ZXJ5Lm1tICovOyB9OworCQlDMUY0ODQwNzI0RUREQjQwMDA1M0VDQjgg
LyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRjQ4NDA2MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uLm1tICovOyB9OwogCQlDMUY3QjczOTI0NDkwODNGMDAxMjQ1NTcg
LyogQUdYQ29tcGlsZXJTZXJ2aWNlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQzFGN0I3MzgyNDQ5MDgzRjAwMTI0NTU3IC8qIEFHWENvbXBpbGVyU2Vy
dmljZS5tbSAqLzsgfTsKIAkJQzFGRjlFREIyNDQ2NDRGMDAwODM5QUU0IC8qIFdlYkZpbHRlci5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRkY5RURB
MjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0ZXIubW0gKi87IH07CiAJCUMyMEY4OEE3MjI5NUI5
NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMjBGODhBNjIyOTVCOTY3MDBENjEwRkEgLyogQ29y
ZVRleHQuZnJhbWV3b3JrICovOyB9OwpAQCAtMjYwNyw2ICsyNjA4LDcgQEAKIAkJQzE1Q0JCM0Uy
M0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gUHJlZmVyZW5jZUNoYW5nZXMubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUMxNjkyREM5MjNEMTBEQUUwMDZFODhGNyAvKiBCYXR0ZXJ5Lm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gQmF0dGVyeS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQzFEOEVFMjEyMDI4RThFMzAwOEVCMTQxIC8qIFdlYlByb2Nlc3NUZXJtaW5hdGUu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJQcm9jZXNzVGVy
bWluYXRlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMUY0ODQwNjI0RUREQjQw
MDA1M0VDQjggLyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUMxRjdCNzM4MjQ0OTA4M0YwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2Uu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBR1hDb21waWxlclNlcnZpY2UubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUMxRkY5RURBMjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0
ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJGaWx0ZXIubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUMyMEY4OEE2MjI5NUI5NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFt
ZXdvcmsgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3
cmFwcGVyLmZyYW1ld29yazsgbmFtZSA9IENvcmVUZXh0LmZyYW1ld29yazsgcGF0aCA9IFN5c3Rl
bS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29yZVRleHQuZnJhbWV3b3JrOyBzb3VyY2VUcmVlID0gU0RL
Uk9PVDsgfTsKQEAgLTMwODQsNiArMzA4Niw3IEBACiAJCTBGMTM5RTc0MUE0MjNBNDYwMEY1OTBG
NSAvKiBjb2NvYSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJ
CQkJQzFGNDg0MDYyNEVEREI0MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24u
bW0gKi8sCiAJCQkJRTNGOEFCOTEyNDFBQjlDRTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1v
dGVVSUFwcC5tbSAqLywKIAkJCQlDMUY3QjczODI0NDkwODNGMDAxMjQ1NTcgLyogQUdYQ29tcGls
ZXJTZXJ2aWNlLm1tICovLAogCQkJCUMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGln
aHRMZXZlbE5vdGlmaWNhdGlvbi5tbSAqLywKQEAgLTQ4NjUsOSArNDg2OCw5IEBACiAJCQkJN0M4
M0RFRDIxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hNYXAuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
N0M4M0RFRDQxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hTZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJN0M4QkZGNzEyM0MwMTA3QTAwQzAwOUIzIC8qIEhleE51bWJlci5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQkzMzk3NkQ4MzI0REM0NzlCMDA4MTIzMDQgLyogSW5kZXhTcGFyc2VTZXQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJN0M4M0RFRTAxRDBBNTkwQzAwRkVCQ0YzIC8qIEludGVnZXJUb1N0
cmluZ0NvbnZlcnNpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTNGQ0RFNkIyMjlFRkZCOTAw
NTk4RUNGIC8qIElzb0hlYXAuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMzM5NzZEODMyNERDNDc5
QjAwODEyMzA0IC8qIEluZGV4U3BhcnNlU2V0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdDRUI2
MkFCMjIzNjA5REUwMDY5Q0JCMCAvKiBJdGVyYXRvclJhbmdlLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTdBMDUwOTQxMUZCOUYwNjQwMEIzM0ZCOCAvKiBKU09OVmFsdWUuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJNTMxQzFEOEUxREY4RUY3MjAwNkU5NzlGIC8qIExFQkRlY29kZXIuY3BwIGluIFNv
dXJjZXMgKi8sCkBAIC00OTU0LDYgKzQ5NTcsNyBAQAogCQkJCTU3QzYyNDRFMjM0NkJDRkEwMDM4
M0ZFNyAvKiBfV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
N0NDRTdFRTQxQTQxMUFFNjAwNDQ3QzRDIC8qIEFib3V0QmxhbmtMb2FkLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTdDQ0U3RUIzMUE0MTFBN0UwMDQ0N0M0QyAvKiBBY2NlcHRzRmlyc3RNb3VzZS5t
bSBpbiBTb3VyY2VzICovLAorCQkJCUMxRjQ4NDA3MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRTNGOEFCOTIyNDFBQjlD
RTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1vdGVVSUFwcC5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTJFMjA1QkE0MUY1Mjc3NDYwMDU5NTJERCAvKiBBY2Nlc3NpYmlsaXR5VGVzdHNJT1MubW0g
aW4gU291cmNlcyAqLywKIAkJCQk5QkQ1MTExQzFGRThFMTE2MDBEMkI2MzAgLyogQWNjZXNzaW5n
UGFzdGVkSW1hZ2UubW0gaW4gU291cmNlcyAqLywKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlv
bi5tbQkobm9uZXhpc3RlbnQpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9B
Y2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTM2
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCAiY29uZmlnLmgiCisKKyNpZiBXS19IQVZFX0NfU1BJ
CisKKyNpbXBvcnQgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCisjaW1wb3J0ICJUZXN0V0tXZWJWaWV3
LmgiCisjaW1wb3J0IDxXZWJLaXQvUHJlZmVyZW5jZU9ic2VydmVyLmg+CisjaW1wb3J0IDxXZWJL
aXQvV0tQcm9jZXNzUG9vbFByaXZhdGUuaD4KKyNpbXBvcnQgPFdlYktpdC9fV0tQcm9jZXNzUG9v
bENvbmZpZ3VyYXRpb24uaD4KKworI2ltcG9ydCA8cGFsL3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5o
PgorI2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19GUkFNRVdPUksoQXBw
bGljYXRpb25TZXJ2aWNlcykKK1NPRlRfTElOSyhBcHBsaWNhdGlvblNlcnZpY2VzLCBfQVhJbnRl
cmZhY2VTZXRSZWR1Y2VNb3Rpb25FbmFibGVkLCB2b2lkLCAoQm9vbGVhbiBlbmFibGUpLCAoZW5h
YmxlKSk7CitTT0ZUX0xJTksoQXBwbGljYXRpb25TZXJ2aWNlcywgX0FYSW50ZXJmYWNlR2V0UmVk
dWNlTW90aW9uRW5hYmxlZCwgQm9vbGVhbiwgKCksICgpKTsKKworc3RhdGljIGludCByZWR1Y2VN
b3Rpb25Ob3RpZmljYXRpb25Db3VudCA9IDA7CitzdGF0aWMgYm9vbCBkb25lID0gZmFsc2U7CisK
K3N0YXRpYyBib29sIHJlY2VpdmVkUHJlZmVyZW5jZU5vdGlmaWNhdGlvbiA9IGZhbHNlOworCitA
aW50ZXJmYWNlIFdLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZyA6IFdLUHJlZmVyZW5jZU9i
c2VydmVyCistICh2b2lkKXByZWZlcmVuY2VEaWRDaGFuZ2U6KE5TU3RyaW5nICopZG9tYWluIGtl
eTooTlNTdHJpbmcgKilrZXkgZW5jb2RlZFZhbHVlOihOU1N0cmluZyAqKWVuY29kZWRWYWx1ZTsK
K0BlbmQKKworQGltcGxlbWVudGF0aW9uIFdLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZwor
LSAodm9pZClwcmVmZXJlbmNlRGlkQ2hhbmdlOihOU1N0cmluZyAqKWRvbWFpbiBrZXk6KE5TU3Ry
aW5nICopa2V5IGVuY29kZWRWYWx1ZTooTlNTdHJpbmcgKillbmNvZGVkVmFsdWUKK3sKKyAgICBy
ZWNlaXZlZFByZWZlcmVuY2VOb3RpZmljYXRpb24gPSB0cnVlOworICAgIFdURkxvZ0Fsd2F5cygi
UHJlZmVyZW5jZSBjaGFuZ2VkICVzICVzIiwgU3RyaW5nKGRvbWFpbikudXRmOCgpLmRhdGEoKSwg
U3RyaW5nKGtleSkudXRmOCgpLmRhdGEoKSk7CisgICAgW3N1cGVyIHByZWZlcmVuY2VEaWRDaGFu
Z2U6ZG9tYWluIGtleTprZXkgZW5jb2RlZFZhbHVlOmVuY29kZWRWYWx1ZV07Cit9CitAZW5kCisK
K1RFU1QoV2ViS2l0LCBQcmVmZXJlbmNlT2JzZXJ2ZXJSZWR1Y2VNb3Rpb25LZXkpCit7CisgICAg
cmVjZWl2ZWRQcmVmZXJlbmNlTm90aWZpY2F0aW9uID0gZmFsc2U7CisKKyAgICBDRlByZWZlcmVu
Y2VzU2V0QXBwVmFsdWUoa0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5LCBrQ0ZCb29sZWFuRmFs
c2UsIENGU1RSKCJjb20uYXBwbGUudW5pdmVyc2FsYWNjZXNzIikpOworCisgICAgYXV0byBvYnNl
cnZlciA9IGFkb3B0TlMoW1tXS1ByZWZlcmVuY2VPYnNlcnZlckZvclRlc3RpbmcgYWxsb2NdIGlu
aXRdKTsKKworICAgIENGUHJlZmVyZW5jZXNTZXRBcHBWYWx1ZShrQVhJbnRlcmZhY2VSZWR1Y2VN
b3Rpb25LZXksIGtDRkJvb2xlYW5UcnVlLCBDRlNUUigiY29tLmFwcGxlLnVuaXZlcnNhbGFjY2Vz
cyIpKTsKKworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmcmVjZWl2ZWRQcmVmZXJlbmNl
Tm90aWZpY2F0aW9uKTsKKworICAgIENGUHJlZmVyZW5jZXNTZXRBcHBWYWx1ZShrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25LZXksIGtDRkJvb2xlYW5GYWxzZSwgQ0ZTVFIoImNvbS5hcHBsZS51bml2
ZXJzYWxhY2Nlc3MiKSk7Cit9CisKK1RFU1QoV2ViS2l0LCBQcmVmZXJlbmNlT2JzZXJ2ZXJUZXN0
S2V5KQoreworICAgIHJlY2VpdmVkUHJlZmVyZW5jZU5vdGlmaWNhdGlvbiA9IGZhbHNlOworCisg
ICAgQ0ZQcmVmZXJlbmNlc1NldEFwcFZhbHVlKENGU1RSKCJ0ZXN0a2V5IiksIENGU1RSKCIxIiks
IENGU1RSKCJjb20uYXBwbGUuYXZmb3VuZGF0aW9uIikpOworCisgICAgYXV0byBvYnNlcnZlciA9
IGFkb3B0TlMoW1tXS1ByZWZlcmVuY2VPYnNlcnZlckZvclRlc3RpbmcgYWxsb2NdIGluaXRdKTsK
KworICAgIENGUHJlZmVyZW5jZXNTZXRBcHBWYWx1ZShDRlNUUigidGVzdGtleSIpLCBDRlNUUigi
MiIpLCBDRlNUUigiY29tLmFwcGxlLmF2Zm91bmRhdGlvbiIpKTsKKworICAgIFRlc3RXZWJLaXRB
UEk6OlV0aWw6OnJ1bigmcmVjZWl2ZWRQcmVmZXJlbmNlTm90aWZpY2F0aW9uKTsKK30KKworVEVT
VChXZWJLaXQsIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24pCit7CisgICAgcmVjZWl2ZWRQcmVm
ZXJlbmNlTm90aWZpY2F0aW9uID0gZmFsc2U7CisKKyAgICBSZXRhaW5QdHI8TlNPYmplY3Q+IGFj
Y2Vzc2liaWxpdHlPYnNlcnZlciA9IFtbTlNEaXN0cmlidXRlZE5vdGlmaWNhdGlvbkNlbnRlciBk
ZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlckZvck5hbWU6KF9fYnJpZGdlIGlkKWtBWEludGVyZmFj
ZVJlZHVjZU1vdGlvblN0YXR1c0RpZENoYW5nZU5vdGlmaWNhdGlvbiBvYmplY3Q6bmlsIHF1ZXVl
OltOU09wZXJhdGlvblF1ZXVlIGN1cnJlbnRRdWV1ZV0gdXNpbmdCbG9jazpeKE5TTm90aWZpY2F0
aW9uICpub3RlKSB7CisgICAgICAgIFdURkxvZ0Fsd2F5cygiUmVjZWl2ZWQgbm90aWZpY2F0aW9u
Iik7CisgICAgICAgIHJlZHVjZU1vdGlvbk5vdGlmaWNhdGlvbkNvdW50Kys7CisgICAgICAgIGlm
IChyZWR1Y2VNb3Rpb25Ob3RpZmljYXRpb25Db3VudCA9PSAyKQorICAgICAgICAgICAgZG9uZSA9
IHRydWU7CisgICAgfV07CisKKyAgICBhdXRvIGNvbmZpZ3VyYXRpb24gPSBhZG9wdE5TKFtbV0tX
ZWJWaWV3Q29uZmlndXJhdGlvbiBhbGxvY10gaW5pdF0pOworICAgIFdLUmV0YWluUHRyPFdLQ29u
dGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0soVGVzdFdlYktpdEFQSTo6VXRpbDo6Y3JlYXRlQ29u
dGV4dEZvckluamVjdGVkQnVuZGxlVGVzdCgiSW50ZXJuYWxzSW5qZWN0ZWRCdW5kbGVUZXN0Iikp
OworICAgIGNvbmZpZ3VyYXRpb24uZ2V0KCkucHJvY2Vzc1Bvb2wgPSAoV0tQcm9jZXNzUG9vbCAq
KWNvbnRleHQuZ2V0KCk7CisgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZp
ZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCAzMDAsIDMwMCkgY29uZmln
dXJhdGlvbjpjb25maWd1cmF0aW9uLmdldCgpIGFkZFRvV2luZG93OllFU10pOworCisgICAgX0FY
SW50ZXJmYWNlU2V0UmVkdWNlTW90aW9uRW5hYmxlZChOTyk7CisgICAgQ0ZQcmVmZXJlbmNlc1Nl
dFZhbHVlKGtBWEludGVyZmFjZVJlZHVjZU1vdGlvbktleSwgbnVsbHB0ciwgQ0ZTVFIoImNvbS5h
cHBsZS51bml2ZXJzYWxhY2Nlc3MiKSwga0NGUHJlZmVyZW5jZXNDdXJyZW50VXNlciwga0NGUHJl
ZmVyZW5jZXNDdXJyZW50SG9zdCk7CisKKyAgICBhdXRvIG9ic2VydmVyID0gYWRvcHROUyhbW1dL
UHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZyBhbGxvY10gaW5pdF0pOworCisgICAgW3dlYlZp
ZXcgc3luY2hyb25vdXNseUxvYWRUZXN0UGFnZU5hbWVkOkAic2ltcGxlIl07CisKKyAgICBBU1NF
UlRfRkFMU0UoX0FYSW50ZXJmYWNlR2V0UmVkdWNlTW90aW9uRW5hYmxlZCgpKTsKKyAgICBBU1NF
UlRfRkFMU0UoQ0ZQcmVmZXJlbmNlc0dldEFwcEJvb2xlYW5WYWx1ZShrQVhJbnRlcmZhY2VSZWR1
Y2VNb3Rpb25LZXksIENGU1RSKCJjb20uYXBwbGUudW5pdmVyc2FsYWNjZXNzIiksIG51bGxwdHIp
KTsKKworICAgIF9BWEludGVyZmFjZVNldFJlZHVjZU1vdGlvbkVuYWJsZWQoWUVTKTsKKworICAg
IEFTU0VSVF9UUlVFKF9BWEludGVyZmFjZUdldFJlZHVjZU1vdGlvbkVuYWJsZWQoKSk7CisgICAg
QVNTRVJUX1RSVUUoQ0ZQcmVmZXJlbmNlc0dldEFwcEJvb2xlYW5WYWx1ZShrQVhJbnRlcmZhY2VS
ZWR1Y2VNb3Rpb25LZXksIENGU1RSKCJjb20uYXBwbGUudW5pdmVyc2FsYWNjZXNzIiksIG51bGxw
dHIpKTsKKworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmcmVjZWl2ZWRQcmVmZXJlbmNl
Tm90aWZpY2F0aW9uKTsKKworICAgIGF1dG8gcmVkdWNlTW90aW9uID0gWyZdIHsKKyAgICAgICAg
cmV0dXJuIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJ3aW5kb3cuaW50
ZXJuYWxzLnVzZXJQcmVmZXJzUmVkdWNlZE1vdGlvbigpIl0uYm9vbFZhbHVlOworICAgIH07Cisg
ICAgCisgICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRUZXN0UGFnZU5hbWVkOkAic2ltcGxl
Il07CisKKyAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRvbmUpOworCisgICAgQVNTRVJU
X1RSVUUocmVkdWNlTW90aW9uKCkpOworCisgICAgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90aW9u
RW5hYmxlZChOTyk7CisgICAgQVNTRVJUX0ZBTFNFKF9BWEludGVyZmFjZUdldFJlZHVjZU1vdGlv
bkVuYWJsZWQoKSk7Cit9CisKKyNlbmRpZgpJbmRleDogV2ViS2l0Lnhjd29ya3NwYWNlL3hjc2hh
cmVkZGF0YS94Y3NjaGVtZXMvQWxsIFRvb2xzLnhjc2NoZW1lCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktp
dC54Y3dvcmtzcGFjZS94Y3NoYXJlZGRhdGEveGNzY2hlbWVzL0FsbCBUb29scy54Y3NjaGVtZQko
cmV2aXNpb24gMjY1ODExKQorKysgV2ViS2l0Lnhjd29ya3NwYWNlL3hjc2hhcmVkZGF0YS94Y3Nj
aGVtZXMvQWxsIFRvb2xzLnhjc2NoZW1lCSh3b3JraW5nIGNvcHkpCkBAIC04MywyMCArODMsMTEg
QEAKICAgICAgIHNlbGVjdGVkRGVidWdnZXJJZGVudGlmaWVyID0gIlhjb2RlLkRlYnVnZ2VyRm91
bmRhdGlvbi5EZWJ1Z2dlci5MTERCIgogICAgICAgc2VsZWN0ZWRMYXVuY2hlcklkZW50aWZpZXIg
PSAiWGNvZGUuRGVidWdnZXJGb3VuZGF0aW9uLkxhdW5jaGVyLkxMREIiCiAgICAgICBzaG91bGRV
c2VMYXVuY2hTY2hlbWVBcmdzRW52ID0gIllFUyI+Ci0gICAgICA8TWFjcm9FeHBhbnNpb24+Ci0g
ICAgICAgICA8QnVpbGRhYmxlUmVmZXJlbmNlCi0gICAgICAgICAgICBCdWlsZGFibGVJZGVudGlm
aWVyID0gInByaW1hcnkiCi0gICAgICAgICAgICBCbHVlcHJpbnRJZGVudGlmaWVyID0gIkE4NEY2
MDhEMDhCMTM3MDYwMEU5NzQ1RiIKLSAgICAgICAgICAgIEJ1aWxkYWJsZU5hbWUgPSAiQWxsIgot
ICAgICAgICAgICAgQmx1ZXByaW50TmFtZSA9ICJBbGwiCi0gICAgICAgICAgICBSZWZlcmVuY2Vk
Q29udGFpbmVyID0gImNvbnRhaW5lcjpUb29scy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJl
ZS54Y29kZXByb2oiPgotICAgICAgICAgPC9CdWlsZGFibGVSZWZlcmVuY2U+Ci0gICAgICA8L01h
Y3JvRXhwYW5zaW9uPgogICAgICAgPFRlc3RhYmxlcz4KICAgICAgIDwvVGVzdGFibGVzPgogICAg
PC9UZXN0QWN0aW9uPgogICAgPExhdW5jaEFjdGlvbgotICAgICAgYnVpbGRDb25maWd1cmF0aW9u
ID0gIkRlYnVnIgorICAgICAgYnVpbGRDb25maWd1cmF0aW9uID0gIlJlbGVhc2UiCiAgICAgICBz
ZWxlY3RlZERlYnVnZ2VySWRlbnRpZmllciA9ICJYY29kZS5EZWJ1Z2dlckZvdW5kYXRpb24uRGVi
dWdnZXIuTExEQiIKICAgICAgIHNlbGVjdGVkTGF1bmNoZXJJZGVudGlmaWVyID0gIlhjb2RlLkRl
YnVnZ2VyRm91bmRhdGlvbi5MYXVuY2hlci5MTERCIgogICAgICAgbGF1bmNoU3R5bGUgPSAiMCIK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406978</attachid>
            <date>2020-08-20 16:48:12 -0700</date>
            <delta_ts>2020-08-20 17:58:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215664-20200820164811.patch</filename>
            <type>text/plain</type>
            <size>18265</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjY1ODk4KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4
LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMgaW4g
IlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERlY2xhcmUgbm90aWZpY2F0aW9uIHNlbnQgd2hlbiB0aGUgIlJlZHVj
ZSBtb3Rpb24iIHNldHRpbmcgaXMgY2hhbmdlZC4KKyAKKyAgICAgICAgKiBwYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmg6CisKIDIwMjAtMDgtMTkgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlA
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gTW92ZSBzdGVwcGVyIHBhaW50aW5nIGNvZGUg
b2ZmIG9mIENhcmJvbiBBUEkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
bWFjL0hJU2VydmljZXNTUEkuaAkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ5LDYg
KzE0OSw5IEBAIEFYQ2xpZW50VHlwZSBfQVhHZXRDbGllbnRGb3JDdXJyZW50UmVxdWUKIHZvaWQg
X0FYU2V0Q2xpZW50SWRlbnRpZmljYXRpb25PdmVycmlkZShBWENsaWVudFR5cGUpOwogI2VuZGlm
IC8vIEhBVkUoQVhfQ0xJRU5UX1RZUEUpCiAKK2V4dGVybiBDRlN0cmluZ1JlZiBrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRpb247CitleHRlcm4gQ0ZTdHJp
bmdSZWYga0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5OworCiBXVEZfRVhURVJOX0NfRU5ECiAK
ICNlbmRpZiAvLyBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQpJbmRleDogU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9u
IDI2NTgxMSkKKysrIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMjIgQEAKKzIwMjAtMDgtMTkgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFttYWNPU10gV2ViIHBhZ2VzIGFyZSBub3QgcmVzcG9uZGluZyBjb3Jy
ZWN0bHkgdG8gY2hhbmdlcyBpbiAiUmVkdWNlIG1vdGlvbiIgc2V0dGluZworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NjY0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBoYXBwZW5zIGJlY2F1c2Ug
dGhlcmUgaXMgYSByYWNlIGJldHdlZW4gdGhlIHByZWZlcmVuY2UgY2hhbmdlIGFuZCBub3RpZmlj
YXRpb24gYmVpbmcgcmVjZWl2ZWQgaW4gdGhlIFdlYkNvbnRlbnQKKyAgICAgICAgcHJvY2Vzcy4g
VGhpcyByYWNlIGlzIHVzdWFsbHkgd29uIGJ5IHRoZSBub3RpZmljYXRpb24sIHdoaWNoIHRoZW4g
cmVhZHMgdGhlIHdyb25nIHByZWZlcmVuY2UgdmFsdWUgd2hlbiBiZWluZyBoYW5kbGVkLgorICAg
ICAgICBUaGlzIGJ1ZyB3YXMgaW50cm9kdWNlZCB3aGVuIGFjY2VzcyB0byB0aGUgcHJlZmVyZW5j
ZSBkYWVtb24gd2FzIGNsb3NlZCBpbiB0aGUgV2ViQ29udGVudCBwcm9jZXNzLCBhbmQgcHJlZmVy
ZW5jZXMKKyAgICAgICAgd2VyZSB1cGRhdGVkIGZyb20gdGhlIFVJIHByb2Nlc3MuIFRoaXMgcGF0
Y2ggYWRkcmVzc2VzIHRoaXMgaXNzdWUgYnkgcmUtcG9zdGluZyB0aGUgbm90aWZpY2F0aW9uIHdo
ZW4gdGhlIHByZWZlcmVuY2UKKyAgICAgICAgdmFsdWUgaXMgdXBkYXRlZCBpbiB0aGUgV2ViQ29u
dGVudCBwcm9jZXNzLgorCisgICAgICAgIEFQSSB0ZXN0OiBXZWJLaXQuQWNjZXNzaWJpbGl0eVJl
ZHVjZU1vdGlvbgorCisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW06CisgICAgICAgIChXZWJLaXQ6OnJlZHVjZU1vdGlvblByZWZlcmVuY2VLZXkpOgorICAgICAg
ICAoV2ViS2l0OjpkaXNwYXRjaFNpbXVsYXRlZE5vdGlmaWNhdGlvbnNGb3JQcmVmZXJlbmNlQ2hh
bmdlKToKKwogMjAyMC0wOC0xNyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAg
ICAgICAgIEF1ZGlvQ29udGV4dC5nZXRPdXRwdXRUaW1lc3RhbXAoKSBpcyBtaXNzaW5nCkluZGV4
OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QcmVmZXJlbmNlT2JzZXJ2ZXIubW0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9ic2Vy
dmVyLm1tCShyZXZpc2lvbiAyNjU4MTEpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9QcmVmZXJlbmNlT2JzZXJ2ZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTQ3LDYgKzQ3LDcgQEAg
QGludGVyZmFjZSBXS1ByZWZlcmVuY2VPYnNlcnZlciAoKSB7CiAKIC0gKHZvaWQpX25vdGlmeU9i
c2VydmVyc09mQ2hhbmdlRnJvbVZhbHVlc0ZvcktleXM6KE5TRGljdGlvbmFyeTxOU1N0cmluZyAq
LCBpZD4gKilvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOihOU0RpY3Rpb25hcnk8TlNTdHJpbmcg
KiwgaWQ+ICopbmV3VmFsdWVzCiB7CisgICAgV1RGTG9nQWx3YXlzKCJfbm90aWZ5T2JzZXJ2ZXJz
T2ZDaGFuZ2VGcm9tVmFsdWVzRm9yS2V5cyIpOwogICAgIFtzdXBlciBfbm90aWZ5T2JzZXJ2ZXJz
T2ZDaGFuZ2VGcm9tVmFsdWVzRm9yS2V5czpvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOm5ld1Zh
bHVlc107CiAKICAgICBpZiAoIW1fb2JzZXJ2ZXIpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHJldmlzaW9uIDI2NTgxMSkK
KysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHdv
cmtpbmcgY29weSkKQEAgLTEyNCw2ICsxMjQsNyBAQAogI2ltcG9ydCAiV2ViU3dpdGNoaW5nR1BV
Q2xpZW50LmgiCiAjaW1wb3J0IDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMTWFuYWdl
ci5oPgogI2ltcG9ydCA8V2ViQ29yZS9TY3JvbGxiYXJUaGVtZU1hYy5oPgorI2ltcG9ydCA8cGFs
L3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNTY3JvbGxl
ckltcFNQSS5oPgogI2VuZGlmCiAKQEAgLTkxMCw2ICs5MTEsMTIgQEAgc3RhdGljIGNvbnN0IFdU
Rjo6U3RyaW5nJiB1c2VySGlnaGxpZ2h0QwogICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxXVEY6
OlN0cmluZz4gdXNlckhpZ2hsaWdodENvbG9yUHJlZmVyZW5jZUtleShNQUtFX1NUQVRJQ19TVFJJ
TkdfSU1QTCgiQXBwbGVIaWdobGlnaHRDb2xvciIpKTsKICAgICByZXR1cm4gdXNlckhpZ2hsaWdo
dENvbG9yUHJlZmVyZW5jZUtleTsKIH0KKworc3RhdGljIGNvbnN0IFdURjo6U3RyaW5nJiByZWR1
Y2VNb3Rpb25QcmVmZXJlbmNlS2V5KCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8V1RG
OjpTdHJpbmc+IGtleShNQUtFX1NUQVRJQ19TVFJJTkdfSU1QTCgicmVkdWNlTW90aW9uIikpOwor
ICAgIHJldHVybiBrZXk7Cit9CiAjZW5kaWYKIAogc3RhdGljIHZvaWQgZGlzcGF0Y2hTaW11bGF0
ZWROb3RpZmljYXRpb25zRm9yUHJlZmVyZW5jZUNoYW5nZShjb25zdCBTdHJpbmcmIGtleSkKQEAg
LTkyMCwxNyArOTI3LDIwIEBAIHN0YXRpYyB2b2lkIGRpc3BhdGNoU2ltdWxhdGVkTm90aWZpY2F0
aW8KICAgICAvLyBvZiB0aGUgc3lzdGVtLCB3ZSBtdXN0IHJlLXBvc3QgdGhlIG5vdGlmaWNhdGlv
biBpbiB0aGUgV2ViIENvbnRlbnQgcHJvY2VzcyBhZnRlciB1cGRhdGluZyB0aGUgZGVmYXVsdC4K
ICAgICAKICAgICBpZiAoa2V5ID09IHVzZXJBY2NlbnRDb2xvclByZWZlcmVuY2VLZXkoKSkgewot
ICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90
aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAgICAgICBhdXRvIG5vdGlmaWNhdGlv
bkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKICAgICAgICAg
W25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9uTmFtZTpAImtDVUlOb3RpZmljYXRp
b25BcXVhQ29sb3JWYXJpYW50Q2hhbmdlZCIgb2JqZWN0Om5pbF07CiAgICAgICAgIFtub3RpZmlj
YXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6QCJOU1N5c3RlbUNvbG9yc1dpbGxDaGFu
Z2VOb3RpZmljYXRpb24iIG9iamVjdDpuaWxdOwogICAgICAgICBbbm90aWZpY2F0aW9uQ2VudGVy
IHBvc3ROb3RpZmljYXRpb25OYW1lOk5TU3lzdGVtQ29sb3JzRGlkQ2hhbmdlTm90aWZpY2F0aW9u
IG9iamVjdDpuaWxdOwotICAgIH0KLSAgICBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclBy
ZWZlcmVuY2VLZXkoKSkgewotICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0
aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAgIH0g
ZWxzZSBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclByZWZlcmVuY2VLZXkoKSkgeworICAg
ICAgICBhdXRvIG5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZh
dWx0Q2VudGVyXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9u
TmFtZTpAIk5TU3lzdGVtQ29sb3JzV2lsbENoYW5nZU5vdGlmaWNhdGlvbiIgb2JqZWN0Om5pbF07
CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6TlNTeXN0
ZW1Db2xvcnNEaWRDaGFuZ2VOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07CisgICAgfSBlbHNlIGlm
IChrZXkgPT0gcmVkdWNlTW90aW9uUHJlZmVyZW5jZUtleSgpKSB7CisgICAgICAgIGF1dG8gbm90
aWZpY2F0aW9uQ2VudGVyID0gQ0ZOb3RpZmljYXRpb25DZW50ZXJHZXREaXN0cmlidXRlZENlbnRl
cigpOworICAgICAgICBDRk5vdGlmaWNhdGlvbkNlbnRlclBvc3ROb3RpZmljYXRpb24obm90aWZp
Y2F0aW9uQ2VudGVyLCBrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3Rp
ZmljYXRpb24sIG51bGxwdHIsIG51bGxwdHIsIHRydWUpOwogICAgIH0KICNlbmRpZgorICAgIFdU
RkxvZ0Fsd2F5cygiUHJlZmVyZW5jZSAlcyBjaGFuZ2VkLiIsIGtleS51dGY4KCkuZGF0YSgpKTsK
IH0KIAogc3RhdGljIHZvaWQgc2V0UHJlZmVyZW5jZVZhbHVlKGNvbnN0IFN0cmluZyYgZG9tYWlu
LCBjb25zdCBTdHJpbmcmIGtleSwgaWQgdmFsdWUpCkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjU5MDUpCisrKyBUb29scy9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wOC0xOSAgUGVy
IEFybmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBXZWIg
cGFnZXMgYXJlIG5vdCByZXNwb25kaW5nIGNvcnJlY3RseSB0byBjaGFuZ2VzIGluICJSZWR1Y2Ug
bW90aW9uIiBzZXR0aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTU2NjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxp
dHlSZWR1Y2VNb3Rpb24ubW06IEFkZGVkLgorICAgICAgICAoVEVTVCk6CisKIDIwMjAtMDgtMTkg
IEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIFt3ZWJraXRj
b3JlcHldIEZhaWx1cmUgdG8gc2V0IGluZGV4IHNob3VsZCBub3QgYmUgZmF0YWwKSW5kZXg6IFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAyNjU4MTEpCisrKyBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5
KQpAQCAtOTMzLDYgKzkzMyw3IEBACiAJCUMxNUNCQjMwMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNr
bGlnaHRMZXZlbE5vdGlmaWNhdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGlnaHRMZXZl
bE5vdGlmaWNhdGlvbi5tbSAqLzsgfTsKIAkJQzE1Q0JCM0YyM0ZCMTc3QTAwMzAwQ0M3IC8qIFBy
ZWZlcmVuY2VDaGFuZ2VzLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQzE1Q0JCM0UyM0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1t
ICovOyB9OwogCQlDMTY5MkRDQTIzRDEwREFFMDA2RTg4RjcgLyogQmF0dGVyeS5tbSBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxNjkyREM5MjNEMTBEQUUw
MDZFODhGNyAvKiBCYXR0ZXJ5Lm1tICovOyB9OworCQlDMUY0ODQwNzI0RUREQjQwMDA1M0VDQjgg
LyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRjQ4NDA2MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uLm1tICovOyB9OwogCQlDMUY3QjczOTI0NDkwODNGMDAxMjQ1NTcg
LyogQUdYQ29tcGlsZXJTZXJ2aWNlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQzFGN0I3MzgyNDQ5MDgzRjAwMTI0NTU3IC8qIEFHWENvbXBpbGVyU2Vy
dmljZS5tbSAqLzsgfTsKIAkJQzFGRjlFREIyNDQ2NDRGMDAwODM5QUU0IC8qIFdlYkZpbHRlci5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRkY5RURB
MjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0ZXIubW0gKi87IH07CiAJCUMyMEY4OEE3MjI5NUI5
NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMjBGODhBNjIyOTVCOTY3MDBENjEwRkEgLyogQ29y
ZVRleHQuZnJhbWV3b3JrICovOyB9OwpAQCAtMjYwNyw2ICsyNjA4LDcgQEAKIAkJQzE1Q0JCM0Uy
M0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gUHJlZmVyZW5jZUNoYW5nZXMubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUMxNjkyREM5MjNEMTBEQUUwMDZFODhGNyAvKiBCYXR0ZXJ5Lm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gQmF0dGVyeS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQzFEOEVFMjEyMDI4RThFMzAwOEVCMTQxIC8qIFdlYlByb2Nlc3NUZXJtaW5hdGUu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJQcm9jZXNzVGVy
bWluYXRlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMUY0ODQwNjI0RUREQjQw
MDA1M0VDQjggLyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUMxRjdCNzM4MjQ0OTA4M0YwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2Uu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBR1hDb21waWxlclNlcnZpY2UubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUMxRkY5RURBMjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0
ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJGaWx0ZXIubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUMyMEY4OEE2MjI5NUI5NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFt
ZXdvcmsgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3
cmFwcGVyLmZyYW1ld29yazsgbmFtZSA9IENvcmVUZXh0LmZyYW1ld29yazsgcGF0aCA9IFN5c3Rl
bS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29yZVRleHQuZnJhbWV3b3JrOyBzb3VyY2VUcmVlID0gU0RL
Uk9PVDsgfTsKQEAgLTMwODQsNiArMzA4Niw3IEBACiAJCTBGMTM5RTc0MUE0MjNBNDYwMEY1OTBG
NSAvKiBjb2NvYSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJ
CQkJQzFGNDg0MDYyNEVEREI0MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24u
bW0gKi8sCiAJCQkJRTNGOEFCOTEyNDFBQjlDRTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1v
dGVVSUFwcC5tbSAqLywKIAkJCQlDMUY3QjczODI0NDkwODNGMDAxMjQ1NTcgLyogQUdYQ29tcGls
ZXJTZXJ2aWNlLm1tICovLAogCQkJCUMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGln
aHRMZXZlbE5vdGlmaWNhdGlvbi5tbSAqLywKQEAgLTQ4NjUsOSArNDg2OCw5IEBACiAJCQkJN0M4
M0RFRDIxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hNYXAuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
N0M4M0RFRDQxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hTZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJN0M4QkZGNzEyM0MwMTA3QTAwQzAwOUIzIC8qIEhleE51bWJlci5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQkzMzk3NkQ4MzI0REM0NzlCMDA4MTIzMDQgLyogSW5kZXhTcGFyc2VTZXQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJN0M4M0RFRTAxRDBBNTkwQzAwRkVCQ0YzIC8qIEludGVnZXJUb1N0
cmluZ0NvbnZlcnNpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTNGQ0RFNkIyMjlFRkZCOTAw
NTk4RUNGIC8qIElzb0hlYXAuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMzM5NzZEODMyNERDNDc5
QjAwODEyMzA0IC8qIEluZGV4U3BhcnNlU2V0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdDRUI2
MkFCMjIzNjA5REUwMDY5Q0JCMCAvKiBJdGVyYXRvclJhbmdlLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTdBMDUwOTQxMUZCOUYwNjQwMEIzM0ZCOCAvKiBKU09OVmFsdWUuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJNTMxQzFEOEUxREY4RUY3MjAwNkU5NzlGIC8qIExFQkRlY29kZXIuY3BwIGluIFNv
dXJjZXMgKi8sCkBAIC00OTU0LDYgKzQ5NTcsNyBAQAogCQkJCTU3QzYyNDRFMjM0NkJDRkEwMDM4
M0ZFNyAvKiBfV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
N0NDRTdFRTQxQTQxMUFFNjAwNDQ3QzRDIC8qIEFib3V0QmxhbmtMb2FkLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTdDQ0U3RUIzMUE0MTFBN0UwMDQ0N0M0QyAvKiBBY2NlcHRzRmlyc3RNb3VzZS5t
bSBpbiBTb3VyY2VzICovLAorCQkJCUMxRjQ4NDA3MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRTNGOEFCOTIyNDFBQjlD
RTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1vdGVVSUFwcC5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTJFMjA1QkE0MUY1Mjc3NDYwMDU5NTJERCAvKiBBY2Nlc3NpYmlsaXR5VGVzdHNJT1MubW0g
aW4gU291cmNlcyAqLywKIAkJCQk5QkQ1MTExQzFGRThFMTE2MDBEMkI2MzAgLyogQWNjZXNzaW5n
UGFzdGVkSW1hZ2UubW0gaW4gU291cmNlcyAqLywKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlv
bi5tbQkobm9uZXhpc3RlbnQpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9B
Y2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTM4
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCAiY29uZmlnLmgiCisKKyNpZiBXS19IQVZFX0NfU1BJ
CisKKyNpbXBvcnQgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCisjaW1wb3J0ICJUZXN0V0tXZWJWaWV3
LmgiCisjaW1wb3J0IDxXZWJLaXQvUHJlZmVyZW5jZU9ic2VydmVyLmg+CisjaW1wb3J0IDxXZWJL
aXQvV0tQcm9jZXNzUG9vbFByaXZhdGUuaD4KKyNpbXBvcnQgPFdlYktpdC9fV0tQcm9jZXNzUG9v
bENvbmZpZ3VyYXRpb24uaD4KKworI2ltcG9ydCA8cGFsL3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5o
PgorI2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19GUkFNRVdPUksoQXBw
bGljYXRpb25TZXJ2aWNlcykKK1NPRlRfTElOSyhBcHBsaWNhdGlvblNlcnZpY2VzLCBfQVhJbnRl
cmZhY2VTZXRSZWR1Y2VNb3Rpb25FbmFibGVkLCB2b2lkLCAoQm9vbGVhbiBlbmFibGUpLCAoZW5h
YmxlKSk7CitTT0ZUX0xJTksoQXBwbGljYXRpb25TZXJ2aWNlcywgX0FYSW50ZXJmYWNlR2V0UmVk
dWNlTW90aW9uRW5hYmxlZCwgQm9vbGVhbiwgKCksICgpKTsKKworc3RhdGljIGludCByZWR1Y2VN
b3Rpb25Ob3RpZmljYXRpb25Db3VudCA9IDA7CitzdGF0aWMgYm9vbCBkb25lID0gZmFsc2U7CisK
K3N0YXRpYyBib29sIHJlY2VpdmVkUHJlZmVyZW5jZU5vdGlmaWNhdGlvbiA9IGZhbHNlOworCitA
aW50ZXJmYWNlIFdLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZyA6IFdLUHJlZmVyZW5jZU9i
c2VydmVyCistICh2b2lkKXByZWZlcmVuY2VEaWRDaGFuZ2U6KE5TU3RyaW5nICopZG9tYWluIGtl
eTooTlNTdHJpbmcgKilrZXkgZW5jb2RlZFZhbHVlOihOU1N0cmluZyAqKWVuY29kZWRWYWx1ZTsK
K0BlbmQKKworQGltcGxlbWVudGF0aW9uIFdLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZwor
LSAodm9pZClwcmVmZXJlbmNlRGlkQ2hhbmdlOihOU1N0cmluZyAqKWRvbWFpbiBrZXk6KE5TU3Ry
aW5nICopa2V5IGVuY29kZWRWYWx1ZTooTlNTdHJpbmcgKillbmNvZGVkVmFsdWUKK3sKKyAgICBy
ZWNlaXZlZFByZWZlcmVuY2VOb3RpZmljYXRpb24gPSB0cnVlOworICAgIFdURkxvZ0Fsd2F5cygi
UHJlZmVyZW5jZSBjaGFuZ2VkICVzICVzIiwgU3RyaW5nKGRvbWFpbikudXRmOCgpLmRhdGEoKSwg
U3RyaW5nKGtleSkudXRmOCgpLmRhdGEoKSk7CisgICAgW3N1cGVyIHByZWZlcmVuY2VEaWRDaGFu
Z2U6ZG9tYWluIGtleTprZXkgZW5jb2RlZFZhbHVlOmVuY29kZWRWYWx1ZV07Cit9CitAZW5kCisK
K1RFU1QoV2ViS2l0LCBQcmVmZXJlbmNlT2JzZXJ2ZXJSZWR1Y2VNb3Rpb25LZXkpCit7CisgICAg
cmVjZWl2ZWRQcmVmZXJlbmNlTm90aWZpY2F0aW9uID0gZmFsc2U7CisKKyAgICBDRlByZWZlcmVu
Y2VzU2V0QXBwVmFsdWUoa0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5LCBrQ0ZCb29sZWFuRmFs
c2UsIENGU1RSKCJjb20uYXBwbGUudW5pdmVyc2FsYWNjZXNzIikpOworCisgICAgYXV0byBvYnNl
cnZlciA9IGFkb3B0TlMoW1tXS1ByZWZlcmVuY2VPYnNlcnZlckZvclRlc3RpbmcgYWxsb2NdIGlu
aXRdKTsKKworICAgIENGUHJlZmVyZW5jZXNTZXRBcHBWYWx1ZShrQVhJbnRlcmZhY2VSZWR1Y2VN
b3Rpb25LZXksIGtDRkJvb2xlYW5UcnVlLCBDRlNUUigiY29tLmFwcGxlLnVuaXZlcnNhbGFjY2Vz
cyIpKTsKKworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmcmVjZWl2ZWRQcmVmZXJlbmNl
Tm90aWZpY2F0aW9uKTsKKworICAgIENGUHJlZmVyZW5jZXNTZXRBcHBWYWx1ZShrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25LZXksIGtDRkJvb2xlYW5GYWxzZSwgQ0ZTVFIoImNvbS5hcHBsZS51bml2
ZXJzYWxhY2Nlc3MiKSk7Cit9CisKK1RFU1QoV2ViS2l0LCBQcmVmZXJlbmNlT2JzZXJ2ZXJSZWR1
Y2VNb3Rpb25LZXlTZXRXaXRoU1BJKQoreworICAgIHJlY2VpdmVkUHJlZmVyZW5jZU5vdGlmaWNh
dGlvbiA9IGZhbHNlOworCisgICAgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90aW9uRW5hYmxlZChO
Tyk7CisKKyAgICBhdXRvIG9ic2VydmVyID0gYWRvcHROUyhbW1dLUHJlZmVyZW5jZU9ic2VydmVy
Rm9yVGVzdGluZyBhbGxvY10gaW5pdF0pOworCisgICAgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90
aW9uRW5hYmxlZChZRVMpOworCisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZyZWNlaXZl
ZFByZWZlcmVuY2VOb3RpZmljYXRpb24pOworCisgICAgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90
aW9uRW5hYmxlZChOTyk7Cit9CisKK1RFU1QoV2ViS2l0LCBBY2Nlc3NpYmlsaXR5UmVkdWNlTW90
aW9uKQoreworICAgIHJlY2VpdmVkUHJlZmVyZW5jZU5vdGlmaWNhdGlvbiA9IGZhbHNlOworCisg
ICAgUmV0YWluUHRyPE5TT2JqZWN0PiBhY2Nlc3NpYmlsaXR5T2JzZXJ2ZXIgPSBbW05TRGlzdHJp
YnV0ZWROb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXJGb3JOYW1l
OihfX2JyaWRnZSBpZClrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3Rp
ZmljYXRpb24gb2JqZWN0Om5pbCBxdWV1ZTpbTlNPcGVyYXRpb25RdWV1ZSBjdXJyZW50UXVldWVd
IHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlvbiAqbm90ZSkgeworICAgICAgICBXVEZMb2dBbHdh
eXMoIlJlY2VpdmVkIG5vdGlmaWNhdGlvbiIpOworICAgICAgICByZWR1Y2VNb3Rpb25Ob3RpZmlj
YXRpb25Db3VudCsrOworICAgICAgICBpZiAocmVkdWNlTW90aW9uTm90aWZpY2F0aW9uQ291bnQg
PT0gMikKKyAgICAgICAgICAgIGRvbmUgPSB0cnVlOworICAgIH1dOworCisgICAgYXV0byBjb25m
aWd1cmF0aW9uID0gYWRvcHROUyhbW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gYWxsb2NdIGluaXRd
KTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQgPSBhZG9wdFdLKFRlc3RX
ZWJLaXRBUEk6OlV0aWw6OmNyZWF0ZUNvbnRleHRGb3JJbmplY3RlZEJ1bmRsZVRlc3QoIkludGVy
bmFsc0luamVjdGVkQnVuZGxlVGVzdCIpKTsKKyAgICBjb25maWd1cmF0aW9uLmdldCgpLnByb2Nl
c3NQb29sID0gKFdLUHJvY2Vzc1Bvb2wgKiljb250ZXh0LmdldCgpOworICAgIGF1dG8gd2ViVmll
dyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJl
Y3QoMCwgMCwgMzAwLCAzMDApIGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbi5nZXQoKSBhZGRU
b1dpbmRvdzpZRVNdKTsKKworICAgIF9BWEludGVyZmFjZVNldFJlZHVjZU1vdGlvbkVuYWJsZWQo
Tk8pOworICAgIENGUHJlZmVyZW5jZXNTZXRWYWx1ZShrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25L
ZXksIG51bGxwdHIsIENGU1RSKCJjb20uYXBwbGUudW5pdmVyc2FsYWNjZXNzIiksIGtDRlByZWZl
cmVuY2VzQ3VycmVudFVzZXIsIGtDRlByZWZlcmVuY2VzQ3VycmVudEhvc3QpOworCisgICAgYXV0
byBvYnNlcnZlciA9IGFkb3B0TlMoW1tXS1ByZWZlcmVuY2VPYnNlcnZlckZvclRlc3RpbmcgYWxs
b2NdIGluaXRdKTsKKworICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkVGVzdFBhZ2VOYW1l
ZDpAInNpbXBsZSJdOworCisgICAgQVNTRVJUX0ZBTFNFKF9BWEludGVyZmFjZUdldFJlZHVjZU1v
dGlvbkVuYWJsZWQoKSk7CisgICAgQVNTRVJUX0ZBTFNFKENGUHJlZmVyZW5jZXNHZXRBcHBCb29s
ZWFuVmFsdWUoa0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5LCBDRlNUUigiY29tLmFwcGxlLnVu
aXZlcnNhbGFjY2VzcyIpLCBudWxscHRyKSk7CisKKyAgICBfQVhJbnRlcmZhY2VTZXRSZWR1Y2VN
b3Rpb25FbmFibGVkKFlFUyk7CisKKyAgICBBU1NFUlRfVFJVRShfQVhJbnRlcmZhY2VHZXRSZWR1
Y2VNb3Rpb25FbmFibGVkKCkpOworICAgIEFTU0VSVF9UUlVFKENGUHJlZmVyZW5jZXNHZXRBcHBC
b29sZWFuVmFsdWUoa0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5LCBDRlNUUigiY29tLmFwcGxl
LnVuaXZlcnNhbGFjY2VzcyIpLCBudWxscHRyKSk7CisKKyAgICBUZXN0V2ViS2l0QVBJOjpVdGls
OjpydW4oJnJlY2VpdmVkUHJlZmVyZW5jZU5vdGlmaWNhdGlvbik7CisKKyAgICBhdXRvIHJlZHVj
ZU1vdGlvbiA9IFsmXSB7CisgICAgICAgIHJldHVybiBbd2ViVmlldyBzdHJpbmdCeUV2YWx1YXRp
bmdKYXZhU2NyaXB0OkAid2luZG93LmludGVybmFscy51c2VyUHJlZmVyc1JlZHVjZWRNb3Rpb24o
KSJdLmJvb2xWYWx1ZTsKKyAgICB9OworICAgIAorICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlM
b2FkVGVzdFBhZ2VOYW1lZDpAInNpbXBsZSJdOworCisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6
cnVuKCZkb25lKTsKKworICAgIEFTU0VSVF9UUlVFKHJlZHVjZU1vdGlvbigpKTsKKworICAgIF9B
WEludGVyZmFjZVNldFJlZHVjZU1vdGlvbkVuYWJsZWQoTk8pOworICAgIEFTU0VSVF9GQUxTRShf
QVhJbnRlcmZhY2VHZXRSZWR1Y2VNb3Rpb25FbmFibGVkKCkpOworfQorCisjZW5kaWYKSW5kZXg6
IFdlYktpdC54Y3dvcmtzcGFjZS94Y3NoYXJlZGRhdGEveGNzY2hlbWVzL0FsbCBUb29scy54Y3Nj
aGVtZQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQueGN3b3Jrc3BhY2UveGNzaGFyZWRkYXRhL3hjc2No
ZW1lcy9BbGwgVG9vbHMueGNzY2hlbWUJKHJldmlzaW9uIDI2NTgxMSkKKysrIFdlYktpdC54Y3dv
cmtzcGFjZS94Y3NoYXJlZGRhdGEveGNzY2hlbWVzL0FsbCBUb29scy54Y3NjaGVtZQkod29ya2lu
ZyBjb3B5KQpAQCAtODMsMjAgKzgzLDExIEBACiAgICAgICBzZWxlY3RlZERlYnVnZ2VySWRlbnRp
ZmllciA9ICJYY29kZS5EZWJ1Z2dlckZvdW5kYXRpb24uRGVidWdnZXIuTExEQiIKICAgICAgIHNl
bGVjdGVkTGF1bmNoZXJJZGVudGlmaWVyID0gIlhjb2RlLkRlYnVnZ2VyRm91bmRhdGlvbi5MYXVu
Y2hlci5MTERCIgogICAgICAgc2hvdWxkVXNlTGF1bmNoU2NoZW1lQXJnc0VudiA9ICJZRVMiPgot
ICAgICAgPE1hY3JvRXhwYW5zaW9uPgotICAgICAgICAgPEJ1aWxkYWJsZVJlZmVyZW5jZQotICAg
ICAgICAgICAgQnVpbGRhYmxlSWRlbnRpZmllciA9ICJwcmltYXJ5IgotICAgICAgICAgICAgQmx1
ZXByaW50SWRlbnRpZmllciA9ICJBODRGNjA4RDA4QjEzNzA2MDBFOTc0NUYiCi0gICAgICAgICAg
ICBCdWlsZGFibGVOYW1lID0gIkFsbCIKLSAgICAgICAgICAgIEJsdWVwcmludE5hbWUgPSAiQWxs
IgotICAgICAgICAgICAgUmVmZXJlbmNlZENvbnRhaW5lciA9ICJjb250YWluZXI6VG9vbHMvRHVt
cFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUueGNvZGVwcm9qIj4KLSAgICAgICAgIDwvQnVpbGRh
YmxlUmVmZXJlbmNlPgotICAgICAgPC9NYWNyb0V4cGFuc2lvbj4KICAgICAgIDxUZXN0YWJsZXM+
CiAgICAgICA8L1Rlc3RhYmxlcz4KICAgIDwvVGVzdEFjdGlvbj4KICAgIDxMYXVuY2hBY3Rpb24K
LSAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbiA9ICJEZWJ1ZyIKKyAgICAgIGJ1aWxkQ29uZmlndXJh
dGlvbiA9ICJSZWxlYXNlIgogICAgICAgc2VsZWN0ZWREZWJ1Z2dlcklkZW50aWZpZXIgPSAiWGNv
ZGUuRGVidWdnZXJGb3VuZGF0aW9uLkRlYnVnZ2VyLkxMREIiCiAgICAgICBzZWxlY3RlZExhdW5j
aGVySWRlbnRpZmllciA9ICJYY29kZS5EZWJ1Z2dlckZvdW5kYXRpb24uTGF1bmNoZXIuTExEQiIK
ICAgICAgIGxhdW5jaFN0eWxlID0gIjAiCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406981</attachid>
            <date>2020-08-20 17:21:51 -0700</date>
            <delta_ts>2020-08-20 17:59:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215664-20200820172150.patch</filename>
            <type>text/plain</type>
            <size>17886</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjY1ODk4KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4
LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMgaW4g
IlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERlY2xhcmUgbm90aWZpY2F0aW9uIHNlbnQgd2hlbiB0aGUgIlJlZHVj
ZSBtb3Rpb24iIHNldHRpbmcgaXMgY2hhbmdlZC4KKyAKKyAgICAgICAgKiBwYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmg6CisKIDIwMjAtMDgtMTkgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlA
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gTW92ZSBzdGVwcGVyIHBhaW50aW5nIGNvZGUg
b2ZmIG9mIENhcmJvbiBBUEkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
bWFjL0hJU2VydmljZXNTUEkuaAkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ5LDYg
KzE0OSw5IEBAIEFYQ2xpZW50VHlwZSBfQVhHZXRDbGllbnRGb3JDdXJyZW50UmVxdWUKIHZvaWQg
X0FYU2V0Q2xpZW50SWRlbnRpZmljYXRpb25PdmVycmlkZShBWENsaWVudFR5cGUpOwogI2VuZGlm
IC8vIEhBVkUoQVhfQ0xJRU5UX1RZUEUpCiAKK2V4dGVybiBDRlN0cmluZ1JlZiBrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRpb247CitleHRlcm4gQ0ZTdHJp
bmdSZWYga0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5OworCiBXVEZfRVhURVJOX0NfRU5ECiAK
ICNlbmRpZiAvLyBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQpJbmRleDogU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9u
IDI2NTgxMSkKKysrIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMjIgQEAKKzIwMjAtMDgtMTkgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFttYWNPU10gV2ViIHBhZ2VzIGFyZSBub3QgcmVzcG9uZGluZyBjb3Jy
ZWN0bHkgdG8gY2hhbmdlcyBpbiAiUmVkdWNlIG1vdGlvbiIgc2V0dGluZworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NjY0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBoYXBwZW5zIGJlY2F1c2Ug
dGhlcmUgaXMgYSByYWNlIGJldHdlZW4gdGhlIHByZWZlcmVuY2UgY2hhbmdlIGFuZCBub3RpZmlj
YXRpb24gYmVpbmcgcmVjZWl2ZWQgaW4gdGhlIFdlYkNvbnRlbnQKKyAgICAgICAgcHJvY2Vzcy4g
VGhpcyByYWNlIGlzIHVzdWFsbHkgd29uIGJ5IHRoZSBub3RpZmljYXRpb24sIHdoaWNoIHRoZW4g
cmVhZHMgdGhlIHdyb25nIHByZWZlcmVuY2UgdmFsdWUgd2hlbiBiZWluZyBoYW5kbGVkLgorICAg
ICAgICBUaGlzIGJ1ZyB3YXMgaW50cm9kdWNlZCB3aGVuIGFjY2VzcyB0byB0aGUgcHJlZmVyZW5j
ZSBkYWVtb24gd2FzIGNsb3NlZCBpbiB0aGUgV2ViQ29udGVudCBwcm9jZXNzLCBhbmQgcHJlZmVy
ZW5jZXMKKyAgICAgICAgd2VyZSB1cGRhdGVkIGZyb20gdGhlIFVJIHByb2Nlc3MuIFRoaXMgcGF0
Y2ggYWRkcmVzc2VzIHRoaXMgaXNzdWUgYnkgcmUtcG9zdGluZyB0aGUgbm90aWZpY2F0aW9uIHdo
ZW4gdGhlIHByZWZlcmVuY2UKKyAgICAgICAgdmFsdWUgaXMgdXBkYXRlZCBpbiB0aGUgV2ViQ29u
dGVudCBwcm9jZXNzLgorCisgICAgICAgIEFQSSB0ZXN0OiBXZWJLaXQuQWNjZXNzaWJpbGl0eVJl
ZHVjZU1vdGlvbgorCisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW06CisgICAgICAgIChXZWJLaXQ6OnJlZHVjZU1vdGlvblByZWZlcmVuY2VLZXkpOgorICAgICAg
ICAoV2ViS2l0OjpkaXNwYXRjaFNpbXVsYXRlZE5vdGlmaWNhdGlvbnNGb3JQcmVmZXJlbmNlQ2hh
bmdlKToKKwogMjAyMC0wOC0xNyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAg
ICAgICAgIEF1ZGlvQ29udGV4dC5nZXRPdXRwdXRUaW1lc3RhbXAoKSBpcyBtaXNzaW5nCkluZGV4
OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QcmVmZXJlbmNlT2JzZXJ2ZXIubW0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9ic2Vy
dmVyLm1tCShyZXZpc2lvbiAyNjU4MTEpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9QcmVmZXJlbmNlT2JzZXJ2ZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTQ3LDYgKzQ3LDcgQEAg
QGludGVyZmFjZSBXS1ByZWZlcmVuY2VPYnNlcnZlciAoKSB7CiAKIC0gKHZvaWQpX25vdGlmeU9i
c2VydmVyc09mQ2hhbmdlRnJvbVZhbHVlc0ZvcktleXM6KE5TRGljdGlvbmFyeTxOU1N0cmluZyAq
LCBpZD4gKilvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOihOU0RpY3Rpb25hcnk8TlNTdHJpbmcg
KiwgaWQ+ICopbmV3VmFsdWVzCiB7CisgICAgV1RGTG9nQWx3YXlzKCJfbm90aWZ5T2JzZXJ2ZXJz
T2ZDaGFuZ2VGcm9tVmFsdWVzRm9yS2V5cyIpOwogICAgIFtzdXBlciBfbm90aWZ5T2JzZXJ2ZXJz
T2ZDaGFuZ2VGcm9tVmFsdWVzRm9yS2V5czpvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOm5ld1Zh
bHVlc107CiAKICAgICBpZiAoIW1fb2JzZXJ2ZXIpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHJldmlzaW9uIDI2NTgxMSkK
KysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHdv
cmtpbmcgY29weSkKQEAgLTEyNCw2ICsxMjQsNyBAQAogI2ltcG9ydCAiV2ViU3dpdGNoaW5nR1BV
Q2xpZW50LmgiCiAjaW1wb3J0IDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMTWFuYWdl
ci5oPgogI2ltcG9ydCA8V2ViQ29yZS9TY3JvbGxiYXJUaGVtZU1hYy5oPgorI2ltcG9ydCA8cGFs
L3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNTY3JvbGxl
ckltcFNQSS5oPgogI2VuZGlmCiAKQEAgLTkxMCw2ICs5MTEsMTIgQEAgc3RhdGljIGNvbnN0IFdU
Rjo6U3RyaW5nJiB1c2VySGlnaGxpZ2h0QwogICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxXVEY6
OlN0cmluZz4gdXNlckhpZ2hsaWdodENvbG9yUHJlZmVyZW5jZUtleShNQUtFX1NUQVRJQ19TVFJJ
TkdfSU1QTCgiQXBwbGVIaWdobGlnaHRDb2xvciIpKTsKICAgICByZXR1cm4gdXNlckhpZ2hsaWdo
dENvbG9yUHJlZmVyZW5jZUtleTsKIH0KKworc3RhdGljIGNvbnN0IFdURjo6U3RyaW5nJiByZWR1
Y2VNb3Rpb25QcmVmZXJlbmNlS2V5KCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8V1RG
OjpTdHJpbmc+IGtleShNQUtFX1NUQVRJQ19TVFJJTkdfSU1QTCgicmVkdWNlTW90aW9uIikpOwor
ICAgIHJldHVybiBrZXk7Cit9CiAjZW5kaWYKIAogc3RhdGljIHZvaWQgZGlzcGF0Y2hTaW11bGF0
ZWROb3RpZmljYXRpb25zRm9yUHJlZmVyZW5jZUNoYW5nZShjb25zdCBTdHJpbmcmIGtleSkKQEAg
LTkyMCwxNyArOTI3LDIwIEBAIHN0YXRpYyB2b2lkIGRpc3BhdGNoU2ltdWxhdGVkTm90aWZpY2F0
aW8KICAgICAvLyBvZiB0aGUgc3lzdGVtLCB3ZSBtdXN0IHJlLXBvc3QgdGhlIG5vdGlmaWNhdGlv
biBpbiB0aGUgV2ViIENvbnRlbnQgcHJvY2VzcyBhZnRlciB1cGRhdGluZyB0aGUgZGVmYXVsdC4K
ICAgICAKICAgICBpZiAoa2V5ID09IHVzZXJBY2NlbnRDb2xvclByZWZlcmVuY2VLZXkoKSkgewot
ICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90
aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAgICAgICBhdXRvIG5vdGlmaWNhdGlv
bkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKICAgICAgICAg
W25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9uTmFtZTpAImtDVUlOb3RpZmljYXRp
b25BcXVhQ29sb3JWYXJpYW50Q2hhbmdlZCIgb2JqZWN0Om5pbF07CiAgICAgICAgIFtub3RpZmlj
YXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6QCJOU1N5c3RlbUNvbG9yc1dpbGxDaGFu
Z2VOb3RpZmljYXRpb24iIG9iamVjdDpuaWxdOwogICAgICAgICBbbm90aWZpY2F0aW9uQ2VudGVy
IHBvc3ROb3RpZmljYXRpb25OYW1lOk5TU3lzdGVtQ29sb3JzRGlkQ2hhbmdlTm90aWZpY2F0aW9u
IG9iamVjdDpuaWxdOwotICAgIH0KLSAgICBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclBy
ZWZlcmVuY2VLZXkoKSkgewotICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0
aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAgIH0g
ZWxzZSBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclByZWZlcmVuY2VLZXkoKSkgeworICAg
ICAgICBhdXRvIG5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZh
dWx0Q2VudGVyXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9u
TmFtZTpAIk5TU3lzdGVtQ29sb3JzV2lsbENoYW5nZU5vdGlmaWNhdGlvbiIgb2JqZWN0Om5pbF07
CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6TlNTeXN0
ZW1Db2xvcnNEaWRDaGFuZ2VOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07CisgICAgfSBlbHNlIGlm
IChrZXkgPT0gcmVkdWNlTW90aW9uUHJlZmVyZW5jZUtleSgpKSB7CisgICAgICAgIGF1dG8gbm90
aWZpY2F0aW9uQ2VudGVyID0gQ0ZOb3RpZmljYXRpb25DZW50ZXJHZXREaXN0cmlidXRlZENlbnRl
cigpOworICAgICAgICBDRk5vdGlmaWNhdGlvbkNlbnRlclBvc3ROb3RpZmljYXRpb24obm90aWZp
Y2F0aW9uQ2VudGVyLCBrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3Rp
ZmljYXRpb24sIG51bGxwdHIsIG51bGxwdHIsIHRydWUpOwogICAgIH0KICNlbmRpZgorICAgIFdU
RkxvZ0Fsd2F5cygiUHJlZmVyZW5jZSAlcyBjaGFuZ2VkLiIsIGtleS51dGY4KCkuZGF0YSgpKTsK
IH0KIAogc3RhdGljIHZvaWQgc2V0UHJlZmVyZW5jZVZhbHVlKGNvbnN0IFN0cmluZyYgZG9tYWlu
LCBjb25zdCBTdHJpbmcmIGtleSwgaWQgdmFsdWUpCkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjU5MDUpCisrKyBUb29scy9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wOC0xOSAgUGVy
IEFybmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBXZWIg
cGFnZXMgYXJlIG5vdCByZXNwb25kaW5nIGNvcnJlY3RseSB0byBjaGFuZ2VzIGluICJSZWR1Y2Ug
bW90aW9uIiBzZXR0aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTU2NjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxp
dHlSZWR1Y2VNb3Rpb24ubW06IEFkZGVkLgorICAgICAgICAoVEVTVCk6CisKIDIwMjAtMDgtMTkg
IEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIFt3ZWJraXRj
b3JlcHldIEZhaWx1cmUgdG8gc2V0IGluZGV4IHNob3VsZCBub3QgYmUgZmF0YWwKSW5kZXg6IFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAyNjU4MTEpCisrKyBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5
KQpAQCAtOTMzLDYgKzkzMyw3IEBACiAJCUMxNUNCQjMwMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNr
bGlnaHRMZXZlbE5vdGlmaWNhdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGlnaHRMZXZl
bE5vdGlmaWNhdGlvbi5tbSAqLzsgfTsKIAkJQzE1Q0JCM0YyM0ZCMTc3QTAwMzAwQ0M3IC8qIFBy
ZWZlcmVuY2VDaGFuZ2VzLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQzE1Q0JCM0UyM0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1t
ICovOyB9OwogCQlDMTY5MkRDQTIzRDEwREFFMDA2RTg4RjcgLyogQmF0dGVyeS5tbSBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxNjkyREM5MjNEMTBEQUUw
MDZFODhGNyAvKiBCYXR0ZXJ5Lm1tICovOyB9OworCQlDMUY0ODQwNzI0RUREQjQwMDA1M0VDQjgg
LyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRjQ4NDA2MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uLm1tICovOyB9OwogCQlDMUY3QjczOTI0NDkwODNGMDAxMjQ1NTcg
LyogQUdYQ29tcGlsZXJTZXJ2aWNlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQzFGN0I3MzgyNDQ5MDgzRjAwMTI0NTU3IC8qIEFHWENvbXBpbGVyU2Vy
dmljZS5tbSAqLzsgfTsKIAkJQzFGRjlFREIyNDQ2NDRGMDAwODM5QUU0IC8qIFdlYkZpbHRlci5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRkY5RURB
MjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0ZXIubW0gKi87IH07CiAJCUMyMEY4OEE3MjI5NUI5
NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMjBGODhBNjIyOTVCOTY3MDBENjEwRkEgLyogQ29y
ZVRleHQuZnJhbWV3b3JrICovOyB9OwpAQCAtMjYwNyw2ICsyNjA4LDcgQEAKIAkJQzE1Q0JCM0Uy
M0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gUHJlZmVyZW5jZUNoYW5nZXMubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUMxNjkyREM5MjNEMTBEQUUwMDZFODhGNyAvKiBCYXR0ZXJ5Lm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gQmF0dGVyeS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQzFEOEVFMjEyMDI4RThFMzAwOEVCMTQxIC8qIFdlYlByb2Nlc3NUZXJtaW5hdGUu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJQcm9jZXNzVGVy
bWluYXRlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMUY0ODQwNjI0RUREQjQw
MDA1M0VDQjggLyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUMxRjdCNzM4MjQ0OTA4M0YwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2Uu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBR1hDb21waWxlclNlcnZpY2UubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUMxRkY5RURBMjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0
ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJGaWx0ZXIubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUMyMEY4OEE2MjI5NUI5NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFt
ZXdvcmsgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3
cmFwcGVyLmZyYW1ld29yazsgbmFtZSA9IENvcmVUZXh0LmZyYW1ld29yazsgcGF0aCA9IFN5c3Rl
bS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29yZVRleHQuZnJhbWV3b3JrOyBzb3VyY2VUcmVlID0gU0RL
Uk9PVDsgfTsKQEAgLTMwODQsNiArMzA4Niw3IEBACiAJCTBGMTM5RTc0MUE0MjNBNDYwMEY1OTBG
NSAvKiBjb2NvYSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJ
CQkJQzFGNDg0MDYyNEVEREI0MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24u
bW0gKi8sCiAJCQkJRTNGOEFCOTEyNDFBQjlDRTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1v
dGVVSUFwcC5tbSAqLywKIAkJCQlDMUY3QjczODI0NDkwODNGMDAxMjQ1NTcgLyogQUdYQ29tcGls
ZXJTZXJ2aWNlLm1tICovLAogCQkJCUMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGln
aHRMZXZlbE5vdGlmaWNhdGlvbi5tbSAqLywKQEAgLTQ4NjUsOSArNDg2OCw5IEBACiAJCQkJN0M4
M0RFRDIxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hNYXAuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
N0M4M0RFRDQxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hTZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJN0M4QkZGNzEyM0MwMTA3QTAwQzAwOUIzIC8qIEhleE51bWJlci5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQkzMzk3NkQ4MzI0REM0NzlCMDA4MTIzMDQgLyogSW5kZXhTcGFyc2VTZXQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJN0M4M0RFRTAxRDBBNTkwQzAwRkVCQ0YzIC8qIEludGVnZXJUb1N0
cmluZ0NvbnZlcnNpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTNGQ0RFNkIyMjlFRkZCOTAw
NTk4RUNGIC8qIElzb0hlYXAuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMzM5NzZEODMyNERDNDc5
QjAwODEyMzA0IC8qIEluZGV4U3BhcnNlU2V0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdDRUI2
MkFCMjIzNjA5REUwMDY5Q0JCMCAvKiBJdGVyYXRvclJhbmdlLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTdBMDUwOTQxMUZCOUYwNjQwMEIzM0ZCOCAvKiBKU09OVmFsdWUuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJNTMxQzFEOEUxREY4RUY3MjAwNkU5NzlGIC8qIExFQkRlY29kZXIuY3BwIGluIFNv
dXJjZXMgKi8sCkBAIC00OTU0LDYgKzQ5NTcsNyBAQAogCQkJCTU3QzYyNDRFMjM0NkJDRkEwMDM4
M0ZFNyAvKiBfV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
N0NDRTdFRTQxQTQxMUFFNjAwNDQ3QzRDIC8qIEFib3V0QmxhbmtMb2FkLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTdDQ0U3RUIzMUE0MTFBN0UwMDQ0N0M0QyAvKiBBY2NlcHRzRmlyc3RNb3VzZS5t
bSBpbiBTb3VyY2VzICovLAorCQkJCUMxRjQ4NDA3MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRTNGOEFCOTIyNDFBQjlD
RTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1vdGVVSUFwcC5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTJFMjA1QkE0MUY1Mjc3NDYwMDU5NTJERCAvKiBBY2Nlc3NpYmlsaXR5VGVzdHNJT1MubW0g
aW4gU291cmNlcyAqLywKIAkJCQk5QkQ1MTExQzFGRThFMTE2MDBEMkI2MzAgLyogQWNjZXNzaW5n
UGFzdGVkSW1hZ2UubW0gaW4gU291cmNlcyAqLywKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlv
bi5tbQkobm9uZXhpc3RlbnQpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9B
Y2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTMw
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCAiY29uZmlnLmgiCisKKyNpZiBXS19IQVZFX0NfU1BJ
CisKKyNpbXBvcnQgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCisjaW1wb3J0ICJUZXN0V0tXZWJWaWV3
LmgiCisjaW1wb3J0IDxXZWJLaXQvUHJlZmVyZW5jZU9ic2VydmVyLmg+CisjaW1wb3J0IDxXZWJL
aXQvV0tQcm9jZXNzUG9vbFByaXZhdGUuaD4KKyNpbXBvcnQgPFdlYktpdC9fV0tQcm9jZXNzUG9v
bENvbmZpZ3VyYXRpb24uaD4KKworI2ltcG9ydCA8cGFsL3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5o
PgorI2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19GUkFNRVdPUksoQXBw
bGljYXRpb25TZXJ2aWNlcykKK1NPRlRfTElOSyhBcHBsaWNhdGlvblNlcnZpY2VzLCBfQVhJbnRl
cmZhY2VTZXRSZWR1Y2VNb3Rpb25FbmFibGVkLCB2b2lkLCAoQm9vbGVhbiBlbmFibGUpLCAoZW5h
YmxlKSk7CitTT0ZUX0xJTksoQXBwbGljYXRpb25TZXJ2aWNlcywgX0FYSW50ZXJmYWNlR2V0UmVk
dWNlTW90aW9uRW5hYmxlZCwgQm9vbGVhbiwgKCksICgpKTsKKworc3RhdGljIGludCByZWR1Y2VN
b3Rpb25Ob3RpZmljYXRpb25Db3VudCA9IDA7CitzdGF0aWMgYm9vbCBkb25lID0gZmFsc2U7CisK
K3N0YXRpYyBib29sIHJlY2VpdmVkUHJlZmVyZW5jZU5vdGlmaWNhdGlvbiA9IGZhbHNlOworCitA
aW50ZXJmYWNlIFdLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZyA6IFdLUHJlZmVyZW5jZU9i
c2VydmVyCistICh2b2lkKXByZWZlcmVuY2VEaWRDaGFuZ2U6KE5TU3RyaW5nICopZG9tYWluIGtl
eTooTlNTdHJpbmcgKilrZXkgZW5jb2RlZFZhbHVlOihOU1N0cmluZyAqKWVuY29kZWRWYWx1ZTsK
K0BlbmQKKworQGltcGxlbWVudGF0aW9uIFdLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZwor
LSAodm9pZClwcmVmZXJlbmNlRGlkQ2hhbmdlOihOU1N0cmluZyAqKWRvbWFpbiBrZXk6KE5TU3Ry
aW5nICopa2V5IGVuY29kZWRWYWx1ZTooTlNTdHJpbmcgKillbmNvZGVkVmFsdWUKK3sKKyAgICBy
ZWNlaXZlZFByZWZlcmVuY2VOb3RpZmljYXRpb24gPSB0cnVlOworICAgIFdURkxvZ0Fsd2F5cygi
UHJlZmVyZW5jZSBjaGFuZ2VkICVzICVzIiwgU3RyaW5nKGRvbWFpbikudXRmOCgpLmRhdGEoKSwg
U3RyaW5nKGtleSkudXRmOCgpLmRhdGEoKSk7CisgICAgW3N1cGVyIHByZWZlcmVuY2VEaWRDaGFu
Z2U6ZG9tYWluIGtleTprZXkgZW5jb2RlZFZhbHVlOmVuY29kZWRWYWx1ZV07Cit9CitAZW5kCisK
K1RFU1QoV2ViS2l0LCBQcmVmZXJlbmNlT2JzZXJ2ZXJSZWR1Y2VNb3Rpb25LZXkpCit7CisgICAg
cmVjZWl2ZWRQcmVmZXJlbmNlTm90aWZpY2F0aW9uID0gZmFsc2U7CisKKyAgICBDRlByZWZlcmVu
Y2VzU2V0QXBwVmFsdWUoa0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5LCBrQ0ZCb29sZWFuRmFs
c2UsIENGU1RSKCJjb20uYXBwbGUudW5pdmVyc2FsYWNjZXNzIikpOworCisgICAgYXV0byBvYnNl
cnZlciA9IGFkb3B0TlMoW1tXS1ByZWZlcmVuY2VPYnNlcnZlckZvclRlc3RpbmcgYWxsb2NdIGlu
aXRdKTsKKworICAgIENGUHJlZmVyZW5jZXNTZXRBcHBWYWx1ZShrQVhJbnRlcmZhY2VSZWR1Y2VN
b3Rpb25LZXksIGtDRkJvb2xlYW5UcnVlLCBDRlNUUigiY29tLmFwcGxlLnVuaXZlcnNhbGFjY2Vz
cyIpKTsKKworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmcmVjZWl2ZWRQcmVmZXJlbmNl
Tm90aWZpY2F0aW9uKTsKKworICAgIENGUHJlZmVyZW5jZXNTZXRBcHBWYWx1ZShrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25LZXksIGtDRkJvb2xlYW5GYWxzZSwgQ0ZTVFIoImNvbS5hcHBsZS51bml2
ZXJzYWxhY2Nlc3MiKSk7Cit9CisKK1RFU1QoV2ViS2l0LCBQcmVmZXJlbmNlT2JzZXJ2ZXJSZWR1
Y2VNb3Rpb25LZXlTZXRXaXRoU1BJKQoreworICAgIHJlY2VpdmVkUHJlZmVyZW5jZU5vdGlmaWNh
dGlvbiA9IGZhbHNlOworCisgICAgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90aW9uRW5hYmxlZChO
Tyk7CisKKyAgICBhdXRvIG9ic2VydmVyID0gYWRvcHROUyhbW1dLUHJlZmVyZW5jZU9ic2VydmVy
Rm9yVGVzdGluZyBhbGxvY10gaW5pdF0pOworCisgICAgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90
aW9uRW5hYmxlZChZRVMpOworCisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZyZWNlaXZl
ZFByZWZlcmVuY2VOb3RpZmljYXRpb24pOworCisgICAgX0FYSW50ZXJmYWNlU2V0UmVkdWNlTW90
aW9uRW5hYmxlZChOTyk7Cit9CisKK1RFU1QoV2ViS2l0LCBBY2Nlc3NpYmlsaXR5UmVkdWNlTW90
aW9uKQoreworICAgIHJlY2VpdmVkUHJlZmVyZW5jZU5vdGlmaWNhdGlvbiA9IGZhbHNlOworCisg
ICAgUmV0YWluUHRyPE5TT2JqZWN0PiBhY2Nlc3NpYmlsaXR5T2JzZXJ2ZXIgPSBbW05TRGlzdHJp
YnV0ZWROb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXJGb3JOYW1l
OihfX2JyaWRnZSBpZClrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3Rp
ZmljYXRpb24gb2JqZWN0Om5pbCBxdWV1ZTpbTlNPcGVyYXRpb25RdWV1ZSBjdXJyZW50UXVldWVd
IHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlvbiAqbm90ZSkgeworICAgICAgICBXVEZMb2dBbHdh
eXMoIlJlY2VpdmVkIG5vdGlmaWNhdGlvbiIpOworICAgICAgICByZWR1Y2VNb3Rpb25Ob3RpZmlj
YXRpb25Db3VudCsrOworICAgICAgICBpZiAocmVkdWNlTW90aW9uTm90aWZpY2F0aW9uQ291bnQg
PT0gMSkKKyAgICAgICAgICAgIGRvbmUgPSB0cnVlOworICAgIH1dOworCisgICAgYXV0byBjb25m
aWd1cmF0aW9uID0gYWRvcHROUyhbW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gYWxsb2NdIGluaXRd
KTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQgPSBhZG9wdFdLKFRlc3RX
ZWJLaXRBUEk6OlV0aWw6OmNyZWF0ZUNvbnRleHRGb3JJbmplY3RlZEJ1bmRsZVRlc3QoIkludGVy
bmFsc0luamVjdGVkQnVuZGxlVGVzdCIpKTsKKyAgICBjb25maWd1cmF0aW9uLmdldCgpLnByb2Nl
c3NQb29sID0gKFdLUHJvY2Vzc1Bvb2wgKiljb250ZXh0LmdldCgpOworICAgIGF1dG8gd2ViVmll
dyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJl
Y3QoMCwgMCwgMzAwLCAzMDApIGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbi5nZXQoKSBhZGRU
b1dpbmRvdzpZRVNdKTsKKworICAgIENGUHJlZmVyZW5jZXNTZXRBcHBWYWx1ZShrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25LZXksIGtDRkJvb2xlYW5GYWxzZSwgQ0ZTVFIoImNvbS5hcHBsZS51bml2
ZXJzYWxhY2Nlc3MiKSk7CisKKyAgICBhdXRvIG9ic2VydmVyID0gYWRvcHROUyhbW1dLUHJlZmVy
ZW5jZU9ic2VydmVyRm9yVGVzdGluZyBhbGxvY10gaW5pdF0pOworCisgICAgW3dlYlZpZXcgc3lu
Y2hyb25vdXNseUxvYWRUZXN0UGFnZU5hbWVkOkAic2ltcGxlIl07CisKKyAgICBDRlByZWZlcmVu
Y2VzU2V0QXBwVmFsdWUoa0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5LCBrQ0ZCb29sZWFuVHJ1
ZSwgQ0ZTVFIoImNvbS5hcHBsZS51bml2ZXJzYWxhY2Nlc3MiKSk7CisKKyAgICBUZXN0V2ViS2l0
QVBJOjpVdGlsOjpydW4oJnJlY2VpdmVkUHJlZmVyZW5jZU5vdGlmaWNhdGlvbik7CisKKyAgICBh
dXRvIHJlZHVjZU1vdGlvbiA9IFsmXSB7CisgICAgICAgIHJldHVybiBbd2ViVmlldyBzdHJpbmdC
eUV2YWx1YXRpbmdKYXZhU2NyaXB0OkAid2luZG93LmludGVybmFscy51c2VyUHJlZmVyc1JlZHVj
ZWRNb3Rpb24oKSJdLmJvb2xWYWx1ZTsKKyAgICB9OworICAgIAorICAgIFt3ZWJWaWV3IHN5bmNo
cm9ub3VzbHlMb2FkVGVzdFBhZ2VOYW1lZDpAInNpbXBsZSJdOworCisgICAgVGVzdFdlYktpdEFQ
STo6VXRpbDo6cnVuKCZkb25lKTsKKworICAgIEFTU0VSVF9UUlVFKHJlZHVjZU1vdGlvbigpKTsK
KworICAgIENGUHJlZmVyZW5jZXNTZXRBcHBWYWx1ZShrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25L
ZXksIGtDRkJvb2xlYW5GYWxzZSwgQ0ZTVFIoImNvbS5hcHBsZS51bml2ZXJzYWxhY2Nlc3MiKSk7
Cit9CisKKyNlbmRpZgpJbmRleDogV2ViS2l0Lnhjd29ya3NwYWNlL3hjc2hhcmVkZGF0YS94Y3Nj
aGVtZXMvQWxsIFRvb2xzLnhjc2NoZW1lCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC54Y3dvcmtzcGFj
ZS94Y3NoYXJlZGRhdGEveGNzY2hlbWVzL0FsbCBUb29scy54Y3NjaGVtZQkocmV2aXNpb24gMjY1
ODExKQorKysgV2ViS2l0Lnhjd29ya3NwYWNlL3hjc2hhcmVkZGF0YS94Y3NjaGVtZXMvQWxsIFRv
b2xzLnhjc2NoZW1lCSh3b3JraW5nIGNvcHkpCkBAIC04MywyMCArODMsMTEgQEAKICAgICAgIHNl
bGVjdGVkRGVidWdnZXJJZGVudGlmaWVyID0gIlhjb2RlLkRlYnVnZ2VyRm91bmRhdGlvbi5EZWJ1
Z2dlci5MTERCIgogICAgICAgc2VsZWN0ZWRMYXVuY2hlcklkZW50aWZpZXIgPSAiWGNvZGUuRGVi
dWdnZXJGb3VuZGF0aW9uLkxhdW5jaGVyLkxMREIiCiAgICAgICBzaG91bGRVc2VMYXVuY2hTY2hl
bWVBcmdzRW52ID0gIllFUyI+Ci0gICAgICA8TWFjcm9FeHBhbnNpb24+Ci0gICAgICAgICA8QnVp
bGRhYmxlUmVmZXJlbmNlCi0gICAgICAgICAgICBCdWlsZGFibGVJZGVudGlmaWVyID0gInByaW1h
cnkiCi0gICAgICAgICAgICBCbHVlcHJpbnRJZGVudGlmaWVyID0gIkE4NEY2MDhEMDhCMTM3MDYw
MEU5NzQ1RiIKLSAgICAgICAgICAgIEJ1aWxkYWJsZU5hbWUgPSAiQWxsIgotICAgICAgICAgICAg
Qmx1ZXByaW50TmFtZSA9ICJBbGwiCi0gICAgICAgICAgICBSZWZlcmVuY2VkQ29udGFpbmVyID0g
ImNvbnRhaW5lcjpUb29scy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS54Y29kZXByb2oi
PgotICAgICAgICAgPC9CdWlsZGFibGVSZWZlcmVuY2U+Ci0gICAgICA8L01hY3JvRXhwYW5zaW9u
PgogICAgICAgPFRlc3RhYmxlcz4KICAgICAgIDwvVGVzdGFibGVzPgogICAgPC9UZXN0QWN0aW9u
PgogICAgPExhdW5jaEFjdGlvbgotICAgICAgYnVpbGRDb25maWd1cmF0aW9uID0gIkRlYnVnIgor
ICAgICAgYnVpbGRDb25maWd1cmF0aW9uID0gIlJlbGVhc2UiCiAgICAgICBzZWxlY3RlZERlYnVn
Z2VySWRlbnRpZmllciA9ICJYY29kZS5EZWJ1Z2dlckZvdW5kYXRpb24uRGVidWdnZXIuTExEQiIK
ICAgICAgIHNlbGVjdGVkTGF1bmNoZXJJZGVudGlmaWVyID0gIlhjb2RlLkRlYnVnZ2VyRm91bmRh
dGlvbi5MYXVuY2hlci5MTERCIgogICAgICAgbGF1bmNoU3R5bGUgPSAiMCIK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406988</attachid>
            <date>2020-08-20 17:51:31 -0700</date>
            <delta_ts>2020-08-20 18:57:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215664-20200820175130.patch</filename>
            <type>text/plain</type>
            <size>16825</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjY1ODk4KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4
LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMgaW4g
IlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERlY2xhcmUgbm90aWZpY2F0aW9uIHNlbnQgd2hlbiB0aGUgIlJlZHVj
ZSBtb3Rpb24iIHNldHRpbmcgaXMgY2hhbmdlZC4KKyAKKyAgICAgICAgKiBwYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmg6CisKIDIwMjAtMDgtMTkgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlA
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gTW92ZSBzdGVwcGVyIHBhaW50aW5nIGNvZGUg
b2ZmIG9mIENhcmJvbiBBUEkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
bWFjL0hJU2VydmljZXNTUEkuaAkocmV2aXNpb24gMjY1ODExKQorKysgU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ5LDYg
KzE0OSw5IEBAIEFYQ2xpZW50VHlwZSBfQVhHZXRDbGllbnRGb3JDdXJyZW50UmVxdWUKIHZvaWQg
X0FYU2V0Q2xpZW50SWRlbnRpZmljYXRpb25PdmVycmlkZShBWENsaWVudFR5cGUpOwogI2VuZGlm
IC8vIEhBVkUoQVhfQ0xJRU5UX1RZUEUpCiAKK2V4dGVybiBDRlN0cmluZ1JlZiBrQVhJbnRlcmZh
Y2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3RpZmljYXRpb247CitleHRlcm4gQ0ZTdHJp
bmdSZWYga0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5OworCiBXVEZfRVhURVJOX0NfRU5ECiAK
ICNlbmRpZiAvLyBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQpJbmRleDogU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9u
IDI2NTgxMSkKKysrIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMjIgQEAKKzIwMjAtMDgtMTkgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFttYWNPU10gV2ViIHBhZ2VzIGFyZSBub3QgcmVzcG9uZGluZyBjb3Jy
ZWN0bHkgdG8gY2hhbmdlcyBpbiAiUmVkdWNlIG1vdGlvbiIgc2V0dGluZworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NjY0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBoYXBwZW5zIGJlY2F1c2Ug
dGhlcmUgaXMgYSByYWNlIGJldHdlZW4gdGhlIHByZWZlcmVuY2UgY2hhbmdlIGFuZCBub3RpZmlj
YXRpb24gYmVpbmcgcmVjZWl2ZWQgaW4gdGhlIFdlYkNvbnRlbnQKKyAgICAgICAgcHJvY2Vzcy4g
VGhpcyByYWNlIGlzIHVzdWFsbHkgd29uIGJ5IHRoZSBub3RpZmljYXRpb24sIHdoaWNoIHRoZW4g
cmVhZHMgdGhlIHdyb25nIHByZWZlcmVuY2UgdmFsdWUgd2hlbiBiZWluZyBoYW5kbGVkLgorICAg
ICAgICBUaGlzIGJ1ZyB3YXMgaW50cm9kdWNlZCB3aGVuIGFjY2VzcyB0byB0aGUgcHJlZmVyZW5j
ZSBkYWVtb24gd2FzIGNsb3NlZCBpbiB0aGUgV2ViQ29udGVudCBwcm9jZXNzLCBhbmQgcHJlZmVy
ZW5jZXMKKyAgICAgICAgd2VyZSB1cGRhdGVkIGZyb20gdGhlIFVJIHByb2Nlc3MuIFRoaXMgcGF0
Y2ggYWRkcmVzc2VzIHRoaXMgaXNzdWUgYnkgcmUtcG9zdGluZyB0aGUgbm90aWZpY2F0aW9uIHdo
ZW4gdGhlIHByZWZlcmVuY2UKKyAgICAgICAgdmFsdWUgaXMgdXBkYXRlZCBpbiB0aGUgV2ViQ29u
dGVudCBwcm9jZXNzLgorCisgICAgICAgIEFQSSB0ZXN0OiBXZWJLaXQuQWNjZXNzaWJpbGl0eVJl
ZHVjZU1vdGlvbgorCisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW06CisgICAgICAgIChXZWJLaXQ6OnJlZHVjZU1vdGlvblByZWZlcmVuY2VLZXkpOgorICAgICAg
ICAoV2ViS2l0OjpkaXNwYXRjaFNpbXVsYXRlZE5vdGlmaWNhdGlvbnNGb3JQcmVmZXJlbmNlQ2hh
bmdlKToKKwogMjAyMC0wOC0xNyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAg
ICAgICAgIEF1ZGlvQ29udGV4dC5nZXRPdXRwdXRUaW1lc3RhbXAoKSBpcyBtaXNzaW5nCkluZGV4
OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QcmVmZXJlbmNlT2JzZXJ2ZXIubW0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9ic2Vy
dmVyLm1tCShyZXZpc2lvbiAyNjU4MTEpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9QcmVmZXJlbmNlT2JzZXJ2ZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTQ3LDYgKzQ3LDcgQEAg
QGludGVyZmFjZSBXS1ByZWZlcmVuY2VPYnNlcnZlciAoKSB7CiAKIC0gKHZvaWQpX25vdGlmeU9i
c2VydmVyc09mQ2hhbmdlRnJvbVZhbHVlc0ZvcktleXM6KE5TRGljdGlvbmFyeTxOU1N0cmluZyAq
LCBpZD4gKilvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOihOU0RpY3Rpb25hcnk8TlNTdHJpbmcg
KiwgaWQ+ICopbmV3VmFsdWVzCiB7CisgICAgV1RGTG9nQWx3YXlzKCJfbm90aWZ5T2JzZXJ2ZXJz
T2ZDaGFuZ2VGcm9tVmFsdWVzRm9yS2V5cyIpOwogICAgIFtzdXBlciBfbm90aWZ5T2JzZXJ2ZXJz
T2ZDaGFuZ2VGcm9tVmFsdWVzRm9yS2V5czpvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOm5ld1Zh
bHVlc107CiAKICAgICBpZiAoIW1fb2JzZXJ2ZXIpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHJldmlzaW9uIDI2NTgxMSkK
KysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHdv
cmtpbmcgY29weSkKQEAgLTEyNCw2ICsxMjQsNyBAQAogI2ltcG9ydCAiV2ViU3dpdGNoaW5nR1BV
Q2xpZW50LmgiCiAjaW1wb3J0IDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMTWFuYWdl
ci5oPgogI2ltcG9ydCA8V2ViQ29yZS9TY3JvbGxiYXJUaGVtZU1hYy5oPgorI2ltcG9ydCA8cGFs
L3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNTY3JvbGxl
ckltcFNQSS5oPgogI2VuZGlmCiAKQEAgLTkxMCw2ICs5MTEsMTIgQEAgc3RhdGljIGNvbnN0IFdU
Rjo6U3RyaW5nJiB1c2VySGlnaGxpZ2h0QwogICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxXVEY6
OlN0cmluZz4gdXNlckhpZ2hsaWdodENvbG9yUHJlZmVyZW5jZUtleShNQUtFX1NUQVRJQ19TVFJJ
TkdfSU1QTCgiQXBwbGVIaWdobGlnaHRDb2xvciIpKTsKICAgICByZXR1cm4gdXNlckhpZ2hsaWdo
dENvbG9yUHJlZmVyZW5jZUtleTsKIH0KKworc3RhdGljIGNvbnN0IFdURjo6U3RyaW5nJiByZWR1
Y2VNb3Rpb25QcmVmZXJlbmNlS2V5KCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8V1RG
OjpTdHJpbmc+IGtleShNQUtFX1NUQVRJQ19TVFJJTkdfSU1QTCgicmVkdWNlTW90aW9uIikpOwor
ICAgIHJldHVybiBrZXk7Cit9CiAjZW5kaWYKIAogc3RhdGljIHZvaWQgZGlzcGF0Y2hTaW11bGF0
ZWROb3RpZmljYXRpb25zRm9yUHJlZmVyZW5jZUNoYW5nZShjb25zdCBTdHJpbmcmIGtleSkKQEAg
LTkyMCwxNyArOTI3LDIwIEBAIHN0YXRpYyB2b2lkIGRpc3BhdGNoU2ltdWxhdGVkTm90aWZpY2F0
aW8KICAgICAvLyBvZiB0aGUgc3lzdGVtLCB3ZSBtdXN0IHJlLXBvc3QgdGhlIG5vdGlmaWNhdGlv
biBpbiB0aGUgV2ViIENvbnRlbnQgcHJvY2VzcyBhZnRlciB1cGRhdGluZyB0aGUgZGVmYXVsdC4K
ICAgICAKICAgICBpZiAoa2V5ID09IHVzZXJBY2NlbnRDb2xvclByZWZlcmVuY2VLZXkoKSkgewot
ICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90
aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAgICAgICBhdXRvIG5vdGlmaWNhdGlv
bkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKICAgICAgICAg
W25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9uTmFtZTpAImtDVUlOb3RpZmljYXRp
b25BcXVhQ29sb3JWYXJpYW50Q2hhbmdlZCIgb2JqZWN0Om5pbF07CiAgICAgICAgIFtub3RpZmlj
YXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6QCJOU1N5c3RlbUNvbG9yc1dpbGxDaGFu
Z2VOb3RpZmljYXRpb24iIG9iamVjdDpuaWxdOwogICAgICAgICBbbm90aWZpY2F0aW9uQ2VudGVy
IHBvc3ROb3RpZmljYXRpb25OYW1lOk5TU3lzdGVtQ29sb3JzRGlkQ2hhbmdlTm90aWZpY2F0aW9u
IG9iamVjdDpuaWxdOwotICAgIH0KLSAgICBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclBy
ZWZlcmVuY2VLZXkoKSkgewotICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0
aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOworICAgIH0g
ZWxzZSBpZiAoa2V5ID09IHVzZXJIaWdobGlnaHRDb2xvclByZWZlcmVuY2VLZXkoKSkgeworICAg
ICAgICBhdXRvIG5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZh
dWx0Q2VudGVyXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBwb3N0Tm90aWZpY2F0aW9u
TmFtZTpAIk5TU3lzdGVtQ29sb3JzV2lsbENoYW5nZU5vdGlmaWNhdGlvbiIgb2JqZWN0Om5pbF07
CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6TlNTeXN0
ZW1Db2xvcnNEaWRDaGFuZ2VOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07CisgICAgfSBlbHNlIGlm
IChrZXkgPT0gcmVkdWNlTW90aW9uUHJlZmVyZW5jZUtleSgpKSB7CisgICAgICAgIGF1dG8gbm90
aWZpY2F0aW9uQ2VudGVyID0gQ0ZOb3RpZmljYXRpb25DZW50ZXJHZXREaXN0cmlidXRlZENlbnRl
cigpOworICAgICAgICBDRk5vdGlmaWNhdGlvbkNlbnRlclBvc3ROb3RpZmljYXRpb24obm90aWZp
Y2F0aW9uQ2VudGVyLCBrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25TdGF0dXNEaWRDaGFuZ2VOb3Rp
ZmljYXRpb24sIG51bGxwdHIsIG51bGxwdHIsIHRydWUpOwogICAgIH0KICNlbmRpZgorICAgIFdU
RkxvZ0Fsd2F5cygiUHJlZmVyZW5jZSAlcyBjaGFuZ2VkLiIsIGtleS51dGY4KCkuZGF0YSgpKTsK
IH0KIAogc3RhdGljIHZvaWQgc2V0UHJlZmVyZW5jZVZhbHVlKGNvbnN0IFN0cmluZyYgZG9tYWlu
LCBjb25zdCBTdHJpbmcmIGtleSwgaWQgdmFsdWUpCkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjU5MDUpCisrKyBUb29scy9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wOC0xOSAgUGVy
IEFybmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBXZWIg
cGFnZXMgYXJlIG5vdCByZXNwb25kaW5nIGNvcnJlY3RseSB0byBjaGFuZ2VzIGluICJSZWR1Y2Ug
bW90aW9uIiBzZXR0aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTU2NjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxp
dHlSZWR1Y2VNb3Rpb24ubW06IEFkZGVkLgorICAgICAgICAoVEVTVCk6CisKIDIwMjAtMDgtMTkg
IEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIFt3ZWJraXRj
b3JlcHldIEZhaWx1cmUgdG8gc2V0IGluZGV4IHNob3VsZCBub3QgYmUgZmF0YWwKSW5kZXg6IFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAyNjU4MTEpCisrKyBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5
KQpAQCAtOTMzLDYgKzkzMyw3IEBACiAJCUMxNUNCQjMwMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNr
bGlnaHRMZXZlbE5vdGlmaWNhdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGlnaHRMZXZl
bE5vdGlmaWNhdGlvbi5tbSAqLzsgfTsKIAkJQzE1Q0JCM0YyM0ZCMTc3QTAwMzAwQ0M3IC8qIFBy
ZWZlcmVuY2VDaGFuZ2VzLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQzE1Q0JCM0UyM0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1t
ICovOyB9OwogCQlDMTY5MkRDQTIzRDEwREFFMDA2RTg4RjcgLyogQmF0dGVyeS5tbSBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxNjkyREM5MjNEMTBEQUUw
MDZFODhGNyAvKiBCYXR0ZXJ5Lm1tICovOyB9OworCQlDMUY0ODQwNzI0RUREQjQwMDA1M0VDQjgg
LyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRjQ4NDA2MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uLm1tICovOyB9OwogCQlDMUY3QjczOTI0NDkwODNGMDAxMjQ1NTcg
LyogQUdYQ29tcGlsZXJTZXJ2aWNlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQzFGN0I3MzgyNDQ5MDgzRjAwMTI0NTU3IC8qIEFHWENvbXBpbGVyU2Vy
dmljZS5tbSAqLzsgfTsKIAkJQzFGRjlFREIyNDQ2NDRGMDAwODM5QUU0IC8qIFdlYkZpbHRlci5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRkY5RURB
MjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0ZXIubW0gKi87IH07CiAJCUMyMEY4OEE3MjI5NUI5
NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMjBGODhBNjIyOTVCOTY3MDBENjEwRkEgLyogQ29y
ZVRleHQuZnJhbWV3b3JrICovOyB9OwpAQCAtMjYwNyw2ICsyNjA4LDcgQEAKIAkJQzE1Q0JCM0Uy
M0ZCMTc3QTAwMzAwQ0M3IC8qIFByZWZlcmVuY2VDaGFuZ2VzLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gUHJlZmVyZW5jZUNoYW5nZXMubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUMxNjkyREM5MjNEMTBEQUUwMDZFODhGNyAvKiBCYXR0ZXJ5Lm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gQmF0dGVyeS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQzFEOEVFMjEyMDI4RThFMzAwOEVCMTQxIC8qIFdlYlByb2Nlc3NUZXJtaW5hdGUu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJQcm9jZXNzVGVy
bWluYXRlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMUY0ODQwNjI0RUREQjQw
MDA1M0VDQjggLyogQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUMxRjdCNzM4MjQ0OTA4M0YwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2Uu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBR1hDb21waWxlclNlcnZpY2UubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUMxRkY5RURBMjQ0NjQ0RjAwMDgzOUFFNCAvKiBXZWJGaWx0
ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJGaWx0ZXIubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUMyMEY4OEE2MjI5NUI5NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFt
ZXdvcmsgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3
cmFwcGVyLmZyYW1ld29yazsgbmFtZSA9IENvcmVUZXh0LmZyYW1ld29yazsgcGF0aCA9IFN5c3Rl
bS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29yZVRleHQuZnJhbWV3b3JrOyBzb3VyY2VUcmVlID0gU0RL
Uk9PVDsgfTsKQEAgLTMwODQsNiArMzA4Niw3IEBACiAJCTBGMTM5RTc0MUE0MjNBNDYwMEY1OTBG
NSAvKiBjb2NvYSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJ
CQkJQzFGNDg0MDYyNEVEREI0MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24u
bW0gKi8sCiAJCQkJRTNGOEFCOTEyNDFBQjlDRTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1v
dGVVSUFwcC5tbSAqLywKIAkJCQlDMUY3QjczODI0NDkwODNGMDAxMjQ1NTcgLyogQUdYQ29tcGls
ZXJTZXJ2aWNlLm1tICovLAogCQkJCUMxNUNCQjJGMjNGMUZGMUEwMDMwMENDNyAvKiBCYWNrbGln
aHRMZXZlbE5vdGlmaWNhdGlvbi5tbSAqLywKQEAgLTQ4NjUsOSArNDg2OCw5IEBACiAJCQkJN0M4
M0RFRDIxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hNYXAuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
N0M4M0RFRDQxRDBBNTkwQzAwRkVCQ0YzIC8qIEhhc2hTZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJN0M4QkZGNzEyM0MwMTA3QTAwQzAwOUIzIC8qIEhleE51bWJlci5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQkzMzk3NkQ4MzI0REM0NzlCMDA4MTIzMDQgLyogSW5kZXhTcGFyc2VTZXQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJN0M4M0RFRTAxRDBBNTkwQzAwRkVCQ0YzIC8qIEludGVnZXJUb1N0
cmluZ0NvbnZlcnNpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTNGQ0RFNkIyMjlFRkZCOTAw
NTk4RUNGIC8qIElzb0hlYXAuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMzM5NzZEODMyNERDNDc5
QjAwODEyMzA0IC8qIEluZGV4U3BhcnNlU2V0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdDRUI2
MkFCMjIzNjA5REUwMDY5Q0JCMCAvKiBJdGVyYXRvclJhbmdlLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTdBMDUwOTQxMUZCOUYwNjQwMEIzM0ZCOCAvKiBKU09OVmFsdWUuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJNTMxQzFEOEUxREY4RUY3MjAwNkU5NzlGIC8qIExFQkRlY29kZXIuY3BwIGluIFNv
dXJjZXMgKi8sCkBAIC00OTU0LDYgKzQ5NTcsNyBAQAogCQkJCTU3QzYyNDRFMjM0NkJDRkEwMDM4
M0ZFNyAvKiBfV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
N0NDRTdFRTQxQTQxMUFFNjAwNDQ3QzRDIC8qIEFib3V0QmxhbmtMb2FkLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTdDQ0U3RUIzMUE0MTFBN0UwMDQ0N0M0QyAvKiBBY2NlcHRzRmlyc3RNb3VzZS5t
bSBpbiBTb3VyY2VzICovLAorCQkJCUMxRjQ4NDA3MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3Np
YmlsaXR5UmVkdWNlTW90aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRTNGOEFCOTIyNDFBQjlD
RTAwM0UyQTdFIC8qIEFjY2Vzc2liaWxpdHlSZW1vdGVVSUFwcC5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTJFMjA1QkE0MUY1Mjc3NDYwMDU5NTJERCAvKiBBY2Nlc3NpYmlsaXR5VGVzdHNJT1MubW0g
aW4gU291cmNlcyAqLywKIAkJCQk5QkQ1MTExQzFGRThFMTE2MDBEMkI2MzAgLyogQWNjZXNzaW5n
UGFzdGVkSW1hZ2UubW0gaW4gU291cmNlcyAqLywKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlv
bi5tbQkobm9uZXhpc3RlbnQpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9B
Y2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOTcg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCisjaW1wb3J0ICJjb25maWcuaCIKKworI2lmIFdLX0hBVkVfQ19TUEkK
KworI2ltcG9ydCAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKKyNpbXBvcnQgIlRlc3RXS1dlYlZpZXcu
aCIKKyNpbXBvcnQgPFdlYktpdC9QcmVmZXJlbmNlT2JzZXJ2ZXIuaD4KKyNpbXBvcnQgPFdlYktp
dC9XS1Byb2Nlc3NQb29sUHJpdmF0ZS5oPgorI2ltcG9ydCA8V2ViS2l0L19XS1Byb2Nlc3NQb29s
Q29uZmlndXJhdGlvbi5oPgorCisjaW1wb3J0IDxwYWwvc3BpL21hYy9ISVNlcnZpY2VzU1BJLmg+
CisjaW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKworU09GVF9MSU5LX0ZSQU1FV09SSyhBcHBs
aWNhdGlvblNlcnZpY2VzKQorU09GVF9MSU5LKEFwcGxpY2F0aW9uU2VydmljZXMsIF9BWEludGVy
ZmFjZVNldFJlZHVjZU1vdGlvbkVuYWJsZWQsIHZvaWQsIChCb29sZWFuIGVuYWJsZSksIChlbmFi
bGUpKTsKK1NPRlRfTElOSyhBcHBsaWNhdGlvblNlcnZpY2VzLCBfQVhJbnRlcmZhY2VHZXRSZWR1
Y2VNb3Rpb25FbmFibGVkLCBCb29sZWFuLCAoKSwgKCkpOworCitzdGF0aWMgYm9vbCByZWR1Y2VN
b3Rpb25Ob3RpZmljYXRpb25SZWNlaXZlZCA9IDA7CisKK3N0YXRpYyBib29sIHJlY2VpdmVkUHJl
ZmVyZW5jZU5vdGlmaWNhdGlvbiA9IGZhbHNlOworCitAaW50ZXJmYWNlIFdLUHJlZmVyZW5jZU9i
c2VydmVyRm9yVGVzdGluZyA6IFdLUHJlZmVyZW5jZU9ic2VydmVyCistICh2b2lkKXByZWZlcmVu
Y2VEaWRDaGFuZ2U6KE5TU3RyaW5nICopZG9tYWluIGtleTooTlNTdHJpbmcgKilrZXkgZW5jb2Rl
ZFZhbHVlOihOU1N0cmluZyAqKWVuY29kZWRWYWx1ZTsKK0BlbmQKKworQGltcGxlbWVudGF0aW9u
IFdLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZworLSAodm9pZClwcmVmZXJlbmNlRGlkQ2hh
bmdlOihOU1N0cmluZyAqKWRvbWFpbiBrZXk6KE5TU3RyaW5nICopa2V5IGVuY29kZWRWYWx1ZToo
TlNTdHJpbmcgKillbmNvZGVkVmFsdWUKK3sKKyAgICByZWNlaXZlZFByZWZlcmVuY2VOb3RpZmlj
YXRpb24gPSB0cnVlOworICAgIFdURkxvZ0Fsd2F5cygiUHJlZmVyZW5jZSBjaGFuZ2VkICVzICVz
IiwgU3RyaW5nKGRvbWFpbikudXRmOCgpLmRhdGEoKSwgU3RyaW5nKGtleSkudXRmOCgpLmRhdGEo
KSk7CisgICAgW3N1cGVyIHByZWZlcmVuY2VEaWRDaGFuZ2U6ZG9tYWluIGtleTprZXkgZW5jb2Rl
ZFZhbHVlOmVuY29kZWRWYWx1ZV07Cit9CitAZW5kCisKK1RFU1QoV2ViS2l0LCBBY2Nlc3NpYmls
aXR5UmVkdWNlTW90aW9uKQoreworICAgIHJlY2VpdmVkUHJlZmVyZW5jZU5vdGlmaWNhdGlvbiA9
IGZhbHNlOworCisgICAgUmV0YWluUHRyPE5TT2JqZWN0PiBhY2Nlc3NpYmlsaXR5T2JzZXJ2ZXIg
PSBbW05TRGlzdHJpYnV0ZWROb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2Jz
ZXJ2ZXJGb3JOYW1lOihfX2JyaWRnZSBpZClrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25TdGF0dXNE
aWRDaGFuZ2VOb3RpZmljYXRpb24gb2JqZWN0Om5pbCBxdWV1ZTpbTlNPcGVyYXRpb25RdWV1ZSBj
dXJyZW50UXVldWVdIHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlvbiAqbm90ZSkgeworICAgICAg
ICBXVEZMb2dBbHdheXMoIlJlY2VpdmVkIG5vdGlmaWNhdGlvbiIpOworICAgICAgICByZWR1Y2VN
b3Rpb25Ob3RpZmljYXRpb25SZWNlaXZlZCA9IHRydWU7CisgICAgfV07CisKKyAgICBhdXRvIGNv
bmZpZ3VyYXRpb24gPSBhZG9wdE5TKFtbV0tXZWJWaWV3Q29uZmlndXJhdGlvbiBhbGxvY10gaW5p
dF0pOworICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0soVGVz
dFdlYktpdEFQSTo6VXRpbDo6Y3JlYXRlQ29udGV4dEZvckluamVjdGVkQnVuZGxlVGVzdCgiSW50
ZXJuYWxzSW5qZWN0ZWRCdW5kbGVUZXN0IikpOworICAgIGNvbmZpZ3VyYXRpb24uZ2V0KCkucHJv
Y2Vzc1Bvb2wgPSAoV0tQcm9jZXNzUG9vbCAqKWNvbnRleHQuZ2V0KCk7CisgICAgYXV0byB3ZWJW
aWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtl
UmVjdCgwLCAwLCAzMDAsIDMwMCkgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uLmdldCgpIGFk
ZFRvV2luZG93OllFU10pOworCisgICAgQ0ZQcmVmZXJlbmNlc1NldEFwcFZhbHVlKGtBWEludGVy
ZmFjZVJlZHVjZU1vdGlvbktleSwga0NGQm9vbGVhbkZhbHNlLCBDRlNUUigiY29tLmFwcGxlLnVu
aXZlcnNhbGFjY2VzcyIpKTsKKworICAgIGF1dG8gb2JzZXJ2ZXIgPSBhZG9wdE5TKFtbV0tQcmVm
ZXJlbmNlT2JzZXJ2ZXJGb3JUZXN0aW5nIGFsbG9jXSBpbml0XSk7CisKKyAgICBbd2ViVmlldyBz
eW5jaHJvbm91c2x5TG9hZFRlc3RQYWdlTmFtZWQ6QCJzaW1wbGUiXTsKKworICAgIENGUHJlZmVy
ZW5jZXNTZXRBcHBWYWx1ZShrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25LZXksIGtDRkJvb2xlYW5U
cnVlLCBDRlNUUigiY29tLmFwcGxlLnVuaXZlcnNhbGFjY2VzcyIpKTsKKworICAgIFRlc3RXZWJL
aXRBUEk6OlV0aWw6OnJ1bigmcmVjZWl2ZWRQcmVmZXJlbmNlTm90aWZpY2F0aW9uKTsKKworICAg
IGF1dG8gcmVkdWNlTW90aW9uID0gWyZdIHsKKyAgICAgICAgcmV0dXJuIFt3ZWJWaWV3IHN0cmlu
Z0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJ3aW5kb3cuaW50ZXJuYWxzLnVzZXJQcmVmZXJzUmVk
dWNlZE1vdGlvbigpIl0uYm9vbFZhbHVlOworICAgIH07CisgICAgCisgICAgW3dlYlZpZXcgc3lu
Y2hyb25vdXNseUxvYWRUZXN0UGFnZU5hbWVkOkAic2ltcGxlIl07CisKKyAgICBUZXN0V2ViS2l0
QVBJOjpVdGlsOjpydW4oJnJlZHVjZU1vdGlvbk5vdGlmaWNhdGlvblJlY2VpdmVkKTsKKworICAg
IEFTU0VSVF9UUlVFKHJlZHVjZU1vdGlvbigpKTsKKworICAgIENGUHJlZmVyZW5jZXNTZXRBcHBW
YWx1ZShrQVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25LZXksIG51bGxwdHIsIENGU1RSKCJjb20uYXBw
bGUudW5pdmVyc2FsYWNjZXNzIikpOworfQorCisjZW5kaWYKSW5kZXg6IFdlYktpdC54Y3dvcmtz
cGFjZS94Y3NoYXJlZGRhdGEveGNzY2hlbWVzL0FsbCBUb29scy54Y3NjaGVtZQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJLaXQueGN3b3Jrc3BhY2UveGNzaGFyZWRkYXRhL3hjc2NoZW1lcy9BbGwgVG9vbHMu
eGNzY2hlbWUJKHJldmlzaW9uIDI2NTgxMSkKKysrIFdlYktpdC54Y3dvcmtzcGFjZS94Y3NoYXJl
ZGRhdGEveGNzY2hlbWVzL0FsbCBUb29scy54Y3NjaGVtZQkod29ya2luZyBjb3B5KQpAQCAtODMs
MjAgKzgzLDExIEBACiAgICAgICBzZWxlY3RlZERlYnVnZ2VySWRlbnRpZmllciA9ICJYY29kZS5E
ZWJ1Z2dlckZvdW5kYXRpb24uRGVidWdnZXIuTExEQiIKICAgICAgIHNlbGVjdGVkTGF1bmNoZXJJ
ZGVudGlmaWVyID0gIlhjb2RlLkRlYnVnZ2VyRm91bmRhdGlvbi5MYXVuY2hlci5MTERCIgogICAg
ICAgc2hvdWxkVXNlTGF1bmNoU2NoZW1lQXJnc0VudiA9ICJZRVMiPgotICAgICAgPE1hY3JvRXhw
YW5zaW9uPgotICAgICAgICAgPEJ1aWxkYWJsZVJlZmVyZW5jZQotICAgICAgICAgICAgQnVpbGRh
YmxlSWRlbnRpZmllciA9ICJwcmltYXJ5IgotICAgICAgICAgICAgQmx1ZXByaW50SWRlbnRpZmll
ciA9ICJBODRGNjA4RDA4QjEzNzA2MDBFOTc0NUYiCi0gICAgICAgICAgICBCdWlsZGFibGVOYW1l
ID0gIkFsbCIKLSAgICAgICAgICAgIEJsdWVwcmludE5hbWUgPSAiQWxsIgotICAgICAgICAgICAg
UmVmZXJlbmNlZENvbnRhaW5lciA9ICJjb250YWluZXI6VG9vbHMvRHVtcFJlbmRlclRyZWUvRHVt
cFJlbmRlclRyZWUueGNvZGVwcm9qIj4KLSAgICAgICAgIDwvQnVpbGRhYmxlUmVmZXJlbmNlPgot
ICAgICAgPC9NYWNyb0V4cGFuc2lvbj4KICAgICAgIDxUZXN0YWJsZXM+CiAgICAgICA8L1Rlc3Rh
Ymxlcz4KICAgIDwvVGVzdEFjdGlvbj4KICAgIDxMYXVuY2hBY3Rpb24KLSAgICAgIGJ1aWxkQ29u
ZmlndXJhdGlvbiA9ICJEZWJ1ZyIKKyAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbiA9ICJSZWxlYXNl
IgogICAgICAgc2VsZWN0ZWREZWJ1Z2dlcklkZW50aWZpZXIgPSAiWGNvZGUuRGVidWdnZXJGb3Vu
ZGF0aW9uLkRlYnVnZ2VyLkxMREIiCiAgICAgICBzZWxlY3RlZExhdW5jaGVySWRlbnRpZmllciA9
ICJYY29kZS5EZWJ1Z2dlckZvdW5kYXRpb24uTGF1bmNoZXIuTExEQiIKICAgICAgIGxhdW5jaFN0
eWxlID0gIjAiCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406995</attachid>
            <date>2020-08-20 18:37:54 -0700</date>
            <delta_ts>2020-08-20 18:37:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215664-20200820183753.patch</filename>
            <type>text/plain</type>
            <size>14407</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjY1ODk4KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4
LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMgaW4g
IlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVy
LgorCisgICAgICAgIERlY2xhcmUgIlJlZHVjZSBtb3Rpb24iIHByZWZlcmVuY2Uga2V5LCBhcyB3
ZWxsIGFzIG5vdGlmaWNhdGlvbiBzZW50IHdoZW4gdGhlICJSZWR1Y2UgbW90aW9uIiBzZXR0aW5n
IGlzIGNoYW5nZWQuCisgCisgICAgICAgICogcGFsL3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5oOgor
CiAyMDIwLTA4LTE5ICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbbWFjT1NdIE1vdmUgc3RlcHBlciBwYWludGluZyBjb2RlIG9mZiBvZiBDYXJib24gQVBJ
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9ISVNlcnZpY2VzU1BJ
LmgJKHJldmlzaW9uIDI2NTgxMSkKKysrIFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTE0OSw2ICsxNDksOSBAQCBBWENsaWVu
dFR5cGUgX0FYR2V0Q2xpZW50Rm9yQ3VycmVudFJlcXVlCiB2b2lkIF9BWFNldENsaWVudElkZW50
aWZpY2F0aW9uT3ZlcnJpZGUoQVhDbGllbnRUeXBlKTsKICNlbmRpZiAvLyBIQVZFKEFYX0NMSUVO
VF9UWVBFKQogCitleHRlcm4gQ0ZTdHJpbmdSZWYga0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uU3Rh
dHVzRGlkQ2hhbmdlTm90aWZpY2F0aW9uOworZXh0ZXJuIENGU3RyaW5nUmVmIGtBWEludGVyZmFj
ZVJlZHVjZU1vdGlvbktleTsKKwogV1RGX0VYVEVSTl9DX0VORAogCiAjZW5kaWYgLy8gVVNFKEFQ
UExFX0lOVEVSTkFMX1NESykKSW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjU4MTEpCisrKyBTb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDIw
LTA4LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBb
bWFjT1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMg
aW4gIlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFk
bGVyLgorCisgICAgICAgIFRoaXMgaGFwcGVucyBiZWNhdXNlIHRoZXJlIGlzIGEgcmFjZSBiZXR3
ZWVuIHRoZSBwcmVmZXJlbmNlIGNoYW5nZSBhbmQgbm90aWZpY2F0aW9uIGJlaW5nIHJlY2VpdmVk
IGluIHRoZSBXZWJDb250ZW50CisgICAgICAgIHByb2Nlc3MuIFRoaXMgcmFjZSBpcyB1c3VhbGx5
IHdvbiBieSB0aGUgbm90aWZpY2F0aW9uLCB3aGljaCB0aGVuIHJlYWRzIHRoZSB3cm9uZyBwcmVm
ZXJlbmNlIHZhbHVlIHdoZW4gYmVpbmcgaGFuZGxlZC4KKyAgICAgICAgVGhpcyBidWcgd2FzIGlu
dHJvZHVjZWQgd2hlbiBhY2Nlc3MgdG8gdGhlIHByZWZlcmVuY2UgZGFlbW9uIHdhcyBjbG9zZWQg
aW4gdGhlIFdlYkNvbnRlbnQgcHJvY2VzcywgYW5kIHByZWZlcmVuY2VzCisgICAgICAgIHdlcmUg
dXBkYXRlZCBmcm9tIHRoZSBVSSBwcm9jZXNzLiBUaGlzIHBhdGNoIGFkZHJlc3NlcyB0aGlzIGlz
c3VlIGJ5IHJlLXBvc3RpbmcgdGhlIG5vdGlmaWNhdGlvbiB3aGVuIHRoZSBwcmVmZXJlbmNlCisg
ICAgICAgIHZhbHVlIGlzIHVwZGF0ZWQgaW4gdGhlIFdlYkNvbnRlbnQgcHJvY2Vzcy4KKworICAg
ICAgICBBUEkgdGVzdDogV2ViS2l0LkFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24KKworICAgICAg
ICAqIFdlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tOgorICAgICAgICAoV2ViS2l0
OjpyZWR1Y2VNb3Rpb25QcmVmZXJlbmNlS2V5KToKKyAgICAgICAgKFdlYktpdDo6ZGlzcGF0Y2hT
aW11bGF0ZWROb3RpZmljYXRpb25zRm9yUHJlZmVyZW5jZUNoYW5nZSk6CisKIDIwMjAtMDgtMTcg
IENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBBdWRpb0NvbnRleHQu
Z2V0T3V0cHV0VGltZXN0YW1wKCkgaXMgbWlzc2luZwpJbmRleDogU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCShyZXZpc2lvbiAyNjU4MTEp
CisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCSh3
b3JraW5nIGNvcHkpCkBAIC0xMjQsNiArMTI0LDcgQEAKICNpbXBvcnQgIldlYlN3aXRjaGluZ0dQ
VUNsaWVudC5oIgogI2ltcG9ydCA8V2ViQ29yZS9HcmFwaGljc0NvbnRleHRHTE9wZW5HTE1hbmFn
ZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUvU2Nyb2xsYmFyVGhlbWVNYWMuaD4KKyNpbXBvcnQgPHBh
bC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkvbWFjL05TU2Nyb2xs
ZXJJbXBTUEkuaD4KICNlbmRpZgogCkBAIC05MTAsNiArOTExLDEyIEBAIHN0YXRpYyBjb25zdCBX
VEY6OlN0cmluZyYgdXNlckhpZ2hsaWdodEMKICAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8V1RG
OjpTdHJpbmc+IHVzZXJIaWdobGlnaHRDb2xvclByZWZlcmVuY2VLZXkoTUFLRV9TVEFUSUNfU1RS
SU5HX0lNUEwoIkFwcGxlSGlnaGxpZ2h0Q29sb3IiKSk7CiAgICAgcmV0dXJuIHVzZXJIaWdobGln
aHRDb2xvclByZWZlcmVuY2VLZXk7CiB9CisKK3N0YXRpYyBjb25zdCBXVEY6OlN0cmluZyYgcmVk
dWNlTW90aW9uUHJlZmVyZW5jZUtleSgpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPFdU
Rjo6U3RyaW5nPiBrZXkoTUFLRV9TVEFUSUNfU1RSSU5HX0lNUEwoInJlZHVjZU1vdGlvbiIpKTsK
KyAgICByZXR1cm4ga2V5OworfQogI2VuZGlmCiAKIHN0YXRpYyB2b2lkIGRpc3BhdGNoU2ltdWxh
dGVkTm90aWZpY2F0aW9uc0ZvclByZWZlcmVuY2VDaGFuZ2UoY29uc3QgU3RyaW5nJiBrZXkpCkBA
IC05MjAsMTUgKzkyNywxNyBAQCBzdGF0aWMgdm9pZCBkaXNwYXRjaFNpbXVsYXRlZE5vdGlmaWNh
dGlvCiAgICAgLy8gb2YgdGhlIHN5c3RlbSwgd2UgbXVzdCByZS1wb3N0IHRoZSBub3RpZmljYXRp
b24gaW4gdGhlIFdlYiBDb250ZW50IHByb2Nlc3MgYWZ0ZXIgdXBkYXRpbmcgdGhlIGRlZmF1bHQu
CiAgICAgCiAgICAgaWYgKGtleSA9PSB1c2VyQWNjZW50Q29sb3JQcmVmZXJlbmNlS2V5KCkpIHsK
LSAgICAgICAgTlNOb3RpZmljYXRpb25DZW50ZXIgKm5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05v
dGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKKyAgICAgICAgYXV0byBub3RpZmljYXRp
b25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl07CiAgICAgICAg
IFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6QCJrQ1VJTm90aWZpY2F0
aW9uQXF1YUNvbG9yVmFyaWFudENoYW5nZWQiIG9iamVjdDpuaWxdOwogICAgICAgICBbbm90aWZp
Y2F0aW9uQ2VudGVyIHBvc3ROb3RpZmljYXRpb25OYW1lOkAiTlNTeXN0ZW1Db2xvcnNXaWxsQ2hh
bmdlTm90aWZpY2F0aW9uIiBvYmplY3Q6bmlsXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRl
ciBwb3N0Tm90aWZpY2F0aW9uTmFtZTpOU1N5c3RlbUNvbG9yc0RpZENoYW5nZU5vdGlmaWNhdGlv
biBvYmplY3Q6bmlsXTsKLSAgICB9Ci0gICAgaWYgKGtleSA9PSB1c2VySGlnaGxpZ2h0Q29sb3JQ
cmVmZXJlbmNlS2V5KCkpIHsKLSAgICAgICAgTlNOb3RpZmljYXRpb25DZW50ZXIgKm5vdGlmaWNh
dGlvbkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKKyAgICB9
IGVsc2UgaWYgKGtleSA9PSB1c2VySGlnaGxpZ2h0Q29sb3JQcmVmZXJlbmNlS2V5KCkpIHsKKyAg
ICAgICAgYXV0byBub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVm
YXVsdENlbnRlcl07CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlv
bk5hbWU6QCJOU1N5c3RlbUNvbG9yc1dpbGxDaGFuZ2VOb3RpZmljYXRpb24iIG9iamVjdDpuaWxd
OwogICAgICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHBvc3ROb3RpZmljYXRpb25OYW1lOk5TU3lz
dGVtQ29sb3JzRGlkQ2hhbmdlTm90aWZpY2F0aW9uIG9iamVjdDpuaWxdOworICAgIH0gZWxzZSBp
ZiAoa2V5ID09IHJlZHVjZU1vdGlvblByZWZlcmVuY2VLZXkoKSkgeworICAgICAgICBhdXRvIG5v
dGlmaWNhdGlvbkNlbnRlciA9IENGTm90aWZpY2F0aW9uQ2VudGVyR2V0RGlzdHJpYnV0ZWRDZW50
ZXIoKTsKKyAgICAgICAgQ0ZOb3RpZmljYXRpb25DZW50ZXJQb3N0Tm90aWZpY2F0aW9uKG5vdGlm
aWNhdGlvbkNlbnRlciwga0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uU3RhdHVzRGlkQ2hhbmdlTm90
aWZpY2F0aW9uLCBudWxscHRyLCBudWxscHRyLCB0cnVlKTsKICAgICB9CiAjZW5kaWYKIH0KSW5k
ZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlz
aW9uIDI2NTkwNSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDE0IEBACisyMDIwLTA4LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4K
KworICAgICAgICBbbWFjT1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5
IHRvIGNoYW5nZXMgaW4gIlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJ
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbTogQWRkZWQuCisgICAgICAgIChU
RVNUKToKKwogMjAyMC0wOC0xOSAgSm9uYXRoYW4gQmVkYXJkICA8amJlZGFyZEBhcHBsZS5jb20+
CiAKICAgICAgICAgW3dlYmtpdGNvcmVweV0gRmFpbHVyZSB0byBzZXQgaW5kZXggc2hvdWxkIG5v
dCBiZSBmYXRhbApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDI2NTgxMSkK
KysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC05MzMsNiArOTMzLDcgQEAKIAkJQzE1Q0JCMzAyM0Yx
RkYxQTAwMzAwQ0M3IC8qIEJhY2tsaWdodExldmVsTm90aWZpY2F0aW9uLm1tIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzE1Q0JCMkYyM0YxRkYxQTAwMzAw
Q0M3IC8qIEJhY2tsaWdodExldmVsTm90aWZpY2F0aW9uLm1tICovOyB9OwogCQlDMTVDQkIzRjIz
RkIxNzdBMDAzMDBDQzcgLyogUHJlZmVyZW5jZUNoYW5nZXMubW0gaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMTVDQkIzRTIzRkIxNzdBMDAzMDBDQzcgLyog
UHJlZmVyZW5jZUNoYW5nZXMubW0gKi87IH07CiAJCUMxNjkyRENBMjNEMTBEQUUwMDZFODhGNyAv
KiBCYXR0ZXJ5Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQzE2OTJEQzkyM0QxMERBRTAwNkU4OEY3IC8qIEJhdHRlcnkubW0gKi87IH07CisJCUMxRjQ4
NDA3MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzFGNDg0MDYyNEVEREI0
MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0gKi87IH07CiAJCUMxRjdC
NzM5MjQ0OTA4M0YwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2UubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMUY3QjczODI0NDkwODNGMDAxMjQ1
NTcgLyogQUdYQ29tcGlsZXJTZXJ2aWNlLm1tICovOyB9OwogCQlDMUZGOUVEQjI0NDY0NEYwMDA4
MzlBRTQgLyogV2ViRmlsdGVyLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQzFGRjlFREEyNDQ2NDRGMDAwODM5QUU0IC8qIFdlYkZpbHRlci5tbSAqLzsg
fTsKIAkJQzIwRjg4QTcyMjk1Qjk2NzAwRDYxMEZBIC8qIENvcmVUZXh0LmZyYW1ld29yayBpbiBG
cmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMyMEY4OEE2MjI5
NUI5NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsgKi87IH07CkBAIC0yNjA3LDYgKzI2
MDgsNyBAQAogCQlDMTVDQkIzRTIzRkIxNzdBMDAzMDBDQzcgLyogUHJlZmVyZW5jZUNoYW5nZXMu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQcmVmZXJlbmNlQ2hh
bmdlcy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzE2OTJEQzkyM0QxMERBRTAw
NkU4OEY3IC8qIEJhdHRlcnkubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBCYXR0ZXJ5Lm1tOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDMUQ4RUUyMTIwMjhFOEUzMDA4RUIxNDEgLyog
V2ViUHJvY2Vzc1Rlcm1pbmF0ZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IFdlYlByb2Nlc3NUZXJtaW5hdGUubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUMxRjQ4NDA2MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9u
Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzFGN0I3MzgyNDQ5MDgzRjAwMTI0NTU3IC8q
IEFHWENvbXBpbGVyU2VydmljZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEFHWENvbXBpbGVy
U2VydmljZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzFGRjlFREEyNDQ2NDRG
MDAwODM5QUU0IC8qIFdlYkZpbHRlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkZpbHRl
ci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzIwRjg4QTYyMjk1Qjk2NzAwRDYx
MEZBIC8qIENvcmVUZXh0LmZyYW1ld29yayAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHdyYXBwZXIuZnJhbWV3b3JrOyBuYW1lID0gQ29yZVRleHQuZnJh
bWV3b3JrOyBwYXRoID0gU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlVGV4dC5mcmFtZXdv
cms7IHNvdXJjZVRyZWUgPSBTREtST09UOyB9OwpAQCAtMzA4NCw2ICszMDg2LDcgQEAKIAkJMEYx
MzlFNzQxQTQyM0E0NjAwRjU5MEY1IC8qIGNvY29hICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7
CiAJCQljaGlsZHJlbiA9ICgKKwkJCQlDMUY0ODQwNjI0RUREQjQwMDA1M0VDQjggLyogQWNjZXNz
aWJpbGl0eVJlZHVjZU1vdGlvbi5tbSAqLywKIAkJCQlFM0Y4QUI5MTI0MUFCOUNFMDAzRTJBN0Ug
LyogQWNjZXNzaWJpbGl0eVJlbW90ZVVJQXBwLm1tICovLAogCQkJCUMxRjdCNzM4MjQ0OTA4M0Yw
MDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2UubW0gKi8sCiAJCQkJQzE1Q0JCMkYyM0YxRkYx
QTAwMzAwQ0M3IC8qIEJhY2tsaWdodExldmVsTm90aWZpY2F0aW9uLm1tICovLApAQCAtNDg2NSw5
ICs0ODY4LDkgQEAKIAkJCQk3QzgzREVEMjFEMEE1OTBDMDBGRUJDRjMgLyogSGFzaE1hcC5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQk3QzgzREVENDFEMEE1OTBDMDBGRUJDRjMgLyogSGFzaFNldC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk3QzhCRkY3MTIzQzAxMDdBMDBDMDA5QjMgLyogSGV4TnVt
YmVyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMzOTc2RDgzMjREQzQ3OUIwMDgxMjMwNCAvKiBJ
bmRleFNwYXJzZVNldC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3QzgzREVFMDFEMEE1OTBDMDBG
RUJDRjMgLyogSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQk1M0ZDREU2QjIyOUVGRkI5MDA1OThFQ0YgLyogSXNvSGVhcC5jcHAgaW4gU291cmNlcyAqLywK
LQkJCQkzMzk3NkQ4MzI0REM0NzlCMDA4MTIzMDQgLyogSW5kZXhTcGFyc2VTZXQuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJN0NFQjYyQUIyMjM2MDlERTAwNjlDQkIwIC8qIEl0ZXJhdG9yUmFuZ2Uu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0EwNTA5NDExRkI5RjA2NDAwQjMzRkI4IC8qIEpTT05W
YWx1ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1MzFDMUQ4RTFERjhFRjcyMDA2RTk3OUYgLyog
TEVCRGVjb2Rlci5jcHAgaW4gU291cmNlcyAqLywKQEAgLTQ5NTQsNiArNDk1Nyw3IEBACiAJCQkJ
NTdDNjI0NEUyMzQ2QkNGQTAwMzgzRkU3IC8qIF9XS1dlYkF1dGhlbnRpY2F0aW9uUGFuZWwubW0g
aW4gU291cmNlcyAqLywKIAkJCQk3Q0NFN0VFNDFBNDExQUU2MDA0NDdDNEMgLyogQWJvdXRCbGFu
a0xvYWQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0NDRTdFQjMxQTQxMUE3RTAwNDQ3QzRDIC8q
IEFjY2VwdHNGaXJzdE1vdXNlLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJQzFGNDg0MDcyNEVEREI0
MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0gaW4gU291cmNlcyAqLywK
IAkJCQlFM0Y4QUI5MjI0MUFCOUNFMDAzRTJBN0UgLyogQWNjZXNzaWJpbGl0eVJlbW90ZVVJQXBw
Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkUyMDVCQTQxRjUyNzc0NjAwNTk1MkREIC8qIEFjY2Vz
c2liaWxpdHlUZXN0c0lPUy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTlCRDUxMTFDMUZFOEUxMTYw
MEQyQjYzMCAvKiBBY2Nlc3NpbmdQYXN0ZWRJbWFnZS5tbSBpbiBTb3VyY2VzICovLApJbmRleDog
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlv
bi5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9BY2Nl
c3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tCShub25leGlzdGVudCkKKysrIFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0JKHdvcmtpbmcg
Y29weSkKQEAgLTAsMCArMSw4OSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgor
CisjaWYgV0tfSEFWRV9DX1NQSQorCisjaW1wb3J0ICJQbGF0Zm9ybVV0aWxpdGllcy5oIgorI2lt
cG9ydCAiVGVzdFdLV2ViVmlldy5oIgorI2ltcG9ydCA8V2ViS2l0L1ByZWZlcmVuY2VPYnNlcnZl
ci5oPgorI2ltcG9ydCA8V2ViS2l0L1dLUHJvY2Vzc1Bvb2xQcml2YXRlLmg+CisjaW1wb3J0IDxX
ZWJLaXQvX1dLUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmg+CisKKyNpbXBvcnQgPHBhbC9zcGkv
bWFjL0hJU2VydmljZXNTUEkuaD4KKworc3RhdGljIGJvb2wgcmVkdWNlTW90aW9uTm90aWZpY2F0
aW9uUmVjZWl2ZWQgPSBmYWxzZTsKK3N0YXRpYyBib29sIHJlY2VpdmVkUHJlZmVyZW5jZU5vdGlm
aWNhdGlvbiA9IGZhbHNlOworCitAaW50ZXJmYWNlIFdLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVz
dGluZyA6IFdLUHJlZmVyZW5jZU9ic2VydmVyCistICh2b2lkKXByZWZlcmVuY2VEaWRDaGFuZ2U6
KE5TU3RyaW5nICopZG9tYWluIGtleTooTlNTdHJpbmcgKilrZXkgZW5jb2RlZFZhbHVlOihOU1N0
cmluZyAqKWVuY29kZWRWYWx1ZTsKK0BlbmQKKworQGltcGxlbWVudGF0aW9uIFdLUHJlZmVyZW5j
ZU9ic2VydmVyRm9yVGVzdGluZworLSAodm9pZClwcmVmZXJlbmNlRGlkQ2hhbmdlOihOU1N0cmlu
ZyAqKWRvbWFpbiBrZXk6KE5TU3RyaW5nICopa2V5IGVuY29kZWRWYWx1ZTooTlNTdHJpbmcgKill
bmNvZGVkVmFsdWUKK3sKKyAgICByZWNlaXZlZFByZWZlcmVuY2VOb3RpZmljYXRpb24gPSB0cnVl
OworICAgIFtzdXBlciBwcmVmZXJlbmNlRGlkQ2hhbmdlOmRvbWFpbiBrZXk6a2V5IGVuY29kZWRW
YWx1ZTplbmNvZGVkVmFsdWVdOworfQorQGVuZAorCitURVNUKFdlYktpdCwgQWNjZXNzaWJpbGl0
eVJlZHVjZU1vdGlvbikKK3sKKyAgICByZWNlaXZlZFByZWZlcmVuY2VOb3RpZmljYXRpb24gPSBm
YWxzZTsKKworICAgIFJldGFpblB0cjxOU09iamVjdD4gYWNjZXNzaWJpbGl0eU9ic2VydmVyID0g
W1tOU0Rpc3RyaWJ1dGVkTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9ic2Vy
dmVyRm9yTmFtZTooX19icmlkZ2UgaWQpa0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uU3RhdHVzRGlk
Q2hhbmdlTm90aWZpY2F0aW9uIG9iamVjdDpuaWwgcXVldWU6W05TT3BlcmF0aW9uUXVldWUgY3Vy
cmVudFF1ZXVlXSB1c2luZ0Jsb2NrOl4oTlNOb3RpZmljYXRpb24gKm5vdGUpIHsKKyAgICAgICAg
cmVkdWNlTW90aW9uTm90aWZpY2F0aW9uUmVjZWl2ZWQgPSB0cnVlOworICAgIH1dOworCisgICAg
YXV0byBjb25maWd1cmF0aW9uID0gYWRvcHROUyhbW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gYWxs
b2NdIGluaXRdKTsKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQgPSBhZG9w
dFdLKFRlc3RXZWJLaXRBUEk6OlV0aWw6OmNyZWF0ZUNvbnRleHRGb3JJbmplY3RlZEJ1bmRsZVRl
c3QoIkludGVybmFsc0luamVjdGVkQnVuZGxlVGVzdCIpKTsKKyAgICBjb25maWd1cmF0aW9uLmdl
dCgpLnByb2Nlc3NQb29sID0gKFdLUHJvY2Vzc1Bvb2wgKiljb250ZXh0LmdldCgpOworICAgIGF1
dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1l
Ok5TTWFrZVJlY3QoMCwgMCwgMzAwLCAzMDApIGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbi5n
ZXQoKSBhZGRUb1dpbmRvdzpZRVNdKTsKKworICAgIENGUHJlZmVyZW5jZXNTZXRBcHBWYWx1ZShr
QVhJbnRlcmZhY2VSZWR1Y2VNb3Rpb25LZXksIGtDRkJvb2xlYW5GYWxzZSwgQ0ZTVFIoImNvbS5h
cHBsZS51bml2ZXJzYWxhY2Nlc3MiKSk7CisKKyAgICBhdXRvIG9ic2VydmVyID0gYWRvcHROUyhb
W1dLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVzdGluZyBhbGxvY10gaW5pdF0pOworCisgICAgW3dl
YlZpZXcgc3luY2hyb25vdXNseUxvYWRUZXN0UGFnZU5hbWVkOkAic2ltcGxlIl07CisKKyAgICBD
RlByZWZlcmVuY2VzU2V0QXBwVmFsdWUoa0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5LCBrQ0ZC
b29sZWFuVHJ1ZSwgQ0ZTVFIoImNvbS5hcHBsZS51bml2ZXJzYWxhY2Nlc3MiKSk7CisKKyAgICBU
ZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJnJlY2VpdmVkUHJlZmVyZW5jZU5vdGlmaWNhdGlvbik7
CisKKyAgICBhdXRvIHJlZHVjZU1vdGlvbiA9IFsmXSB7CisgICAgICAgIHJldHVybiBbd2ViVmll
dyBzdHJpbmdCeUV2YWx1YXRpbmdKYXZhU2NyaXB0OkAid2luZG93LmludGVybmFscy51c2VyUHJl
ZmVyc1JlZHVjZWRNb3Rpb24oKSJdLmJvb2xWYWx1ZTsKKyAgICB9OworICAgIAorICAgIFt3ZWJW
aWV3IHN5bmNocm9ub3VzbHlMb2FkVGVzdFBhZ2VOYW1lZDpAInNpbXBsZSJdOworCisgICAgVGVz
dFdlYktpdEFQSTo6VXRpbDo6cnVuKCZyZWR1Y2VNb3Rpb25Ob3RpZmljYXRpb25SZWNlaXZlZCk7
CisKKyAgICBBU1NFUlRfVFJVRShyZWR1Y2VNb3Rpb24oKSk7CisKKyAgICBDRlByZWZlcmVuY2Vz
U2V0QXBwVmFsdWUoa0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5LCBudWxscHRyLCBDRlNUUigi
Y29tLmFwcGxlLnVuaXZlcnNhbGFjY2VzcyIpKTsKK30KKworI2VuZGlmCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406997</attachid>
            <date>2020-08-20 19:03:29 -0700</date>
            <delta_ts>2020-08-20 19:31:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215664-20200820190329.patch</filename>
            <type>text/plain</type>
            <size>14450</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjY1ODk4KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4
LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMgaW4g
IlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVy
LgorCisgICAgICAgIERlY2xhcmUgIlJlZHVjZSBtb3Rpb24iIHByZWZlcmVuY2Uga2V5LCBhcyB3
ZWxsIGFzIG5vdGlmaWNhdGlvbiBzZW50IHdoZW4gdGhlICJSZWR1Y2UgbW90aW9uIiBzZXR0aW5n
IGlzIGNoYW5nZWQuCisgCisgICAgICAgICogcGFsL3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5oOgor
CiAyMDIwLTA4LTE5ICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbbWFjT1NdIE1vdmUgc3RlcHBlciBwYWludGluZyBjb2RlIG9mZiBvZiBDYXJib24gQVBJ
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvSElTZXJ2aWNlc1NQSS5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9ISVNlcnZpY2VzU1BJ
LmgJKHJldmlzaW9uIDI2NTgxMSkKKysrIFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9I
SVNlcnZpY2VzU1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTE0OSw2ICsxNDksOSBAQCBBWENsaWVu
dFR5cGUgX0FYR2V0Q2xpZW50Rm9yQ3VycmVudFJlcXVlCiB2b2lkIF9BWFNldENsaWVudElkZW50
aWZpY2F0aW9uT3ZlcnJpZGUoQVhDbGllbnRUeXBlKTsKICNlbmRpZiAvLyBIQVZFKEFYX0NMSUVO
VF9UWVBFKQogCitleHRlcm4gQ0ZTdHJpbmdSZWYga0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5
OworZXh0ZXJuIENGU3RyaW5nUmVmIGtBWEludGVyZmFjZVJlZHVjZU1vdGlvblN0YXR1c0RpZENo
YW5nZU5vdGlmaWNhdGlvbjsKKwogV1RGX0VYVEVSTl9DX0VORAogCiAjZW5kaWYgLy8gVVNFKEFQ
UExFX0lOVEVSTkFMX1NESykKSW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjU4MTEpCisrKyBTb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDIw
LTA4LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBb
bWFjT1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5IHRvIGNoYW5nZXMg
aW4gIlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFk
bGVyLgorCisgICAgICAgIFRoaXMgaGFwcGVucyBiZWNhdXNlIHRoZXJlIGlzIGEgcmFjZSBiZXR3
ZWVuIHRoZSBwcmVmZXJlbmNlIGNoYW5nZSBhbmQgbm90aWZpY2F0aW9uIGJlaW5nIHJlY2VpdmVk
IGluIHRoZSBXZWJDb250ZW50CisgICAgICAgIHByb2Nlc3MuIFRoaXMgcmFjZSBpcyB1c3VhbGx5
IHdvbiBieSB0aGUgbm90aWZpY2F0aW9uLCB3aGljaCB0aGVuIHJlYWRzIHRoZSB3cm9uZyBwcmVm
ZXJlbmNlIHZhbHVlIHdoZW4gYmVpbmcgaGFuZGxlZC4KKyAgICAgICAgVGhpcyBidWcgd2FzIGlu
dHJvZHVjZWQgd2hlbiBhY2Nlc3MgdG8gdGhlIHByZWZlcmVuY2UgZGFlbW9uIHdhcyBjbG9zZWQg
aW4gdGhlIFdlYkNvbnRlbnQgcHJvY2VzcywgYW5kIHByZWZlcmVuY2VzCisgICAgICAgIHdlcmUg
dXBkYXRlZCBmcm9tIHRoZSBVSSBwcm9jZXNzLiBUaGlzIHBhdGNoIGFkZHJlc3NlcyB0aGlzIGlz
c3VlIGJ5IHJlLXBvc3RpbmcgdGhlIG5vdGlmaWNhdGlvbiB3aGVuIHRoZSBwcmVmZXJlbmNlCisg
ICAgICAgIHZhbHVlIGlzIHVwZGF0ZWQgaW4gdGhlIFdlYkNvbnRlbnQgcHJvY2Vzcy4KKworICAg
ICAgICBBUEkgdGVzdDogV2ViS2l0LkFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24KKworICAgICAg
ICAqIFdlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tOgorICAgICAgICAoV2ViS2l0
OjpyZWR1Y2VNb3Rpb25QcmVmZXJlbmNlS2V5KToKKyAgICAgICAgKFdlYktpdDo6ZGlzcGF0Y2hT
aW11bGF0ZWROb3RpZmljYXRpb25zRm9yUHJlZmVyZW5jZUNoYW5nZSk6CisKIDIwMjAtMDgtMTcg
IENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBBdWRpb0NvbnRleHQu
Z2V0T3V0cHV0VGltZXN0YW1wKCkgaXMgbWlzc2luZwpJbmRleDogU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCShyZXZpc2lvbiAyNjU4MTEp
CisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCSh3
b3JraW5nIGNvcHkpCkBAIC0xMjQsNiArMTI0LDcgQEAKICNpbXBvcnQgIldlYlN3aXRjaGluZ0dQ
VUNsaWVudC5oIgogI2ltcG9ydCA8V2ViQ29yZS9HcmFwaGljc0NvbnRleHRHTE9wZW5HTE1hbmFn
ZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUvU2Nyb2xsYmFyVGhlbWVNYWMuaD4KKyNpbXBvcnQgPHBh
bC9zcGkvbWFjL0hJU2VydmljZXNTUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkvbWFjL05TU2Nyb2xs
ZXJJbXBTUEkuaD4KICNlbmRpZgogCkBAIC05MTAsNiArOTExLDEyIEBAIHN0YXRpYyBjb25zdCBX
VEY6OlN0cmluZyYgdXNlckhpZ2hsaWdodEMKICAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8V1RG
OjpTdHJpbmc+IHVzZXJIaWdobGlnaHRDb2xvclByZWZlcmVuY2VLZXkoTUFLRV9TVEFUSUNfU1RS
SU5HX0lNUEwoIkFwcGxlSGlnaGxpZ2h0Q29sb3IiKSk7CiAgICAgcmV0dXJuIHVzZXJIaWdobGln
aHRDb2xvclByZWZlcmVuY2VLZXk7CiB9CisKK3N0YXRpYyBjb25zdCBXVEY6OlN0cmluZyYgcmVk
dWNlTW90aW9uUHJlZmVyZW5jZUtleSgpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPFdU
Rjo6U3RyaW5nPiBrZXkoTUFLRV9TVEFUSUNfU1RSSU5HX0lNUEwoInJlZHVjZU1vdGlvbiIpKTsK
KyAgICByZXR1cm4ga2V5OworfQogI2VuZGlmCiAKIHN0YXRpYyB2b2lkIGRpc3BhdGNoU2ltdWxh
dGVkTm90aWZpY2F0aW9uc0ZvclByZWZlcmVuY2VDaGFuZ2UoY29uc3QgU3RyaW5nJiBrZXkpCkBA
IC05MjAsMTUgKzkyNywxNyBAQCBzdGF0aWMgdm9pZCBkaXNwYXRjaFNpbXVsYXRlZE5vdGlmaWNh
dGlvCiAgICAgLy8gb2YgdGhlIHN5c3RlbSwgd2UgbXVzdCByZS1wb3N0IHRoZSBub3RpZmljYXRp
b24gaW4gdGhlIFdlYiBDb250ZW50IHByb2Nlc3MgYWZ0ZXIgdXBkYXRpbmcgdGhlIGRlZmF1bHQu
CiAgICAgCiAgICAgaWYgKGtleSA9PSB1c2VyQWNjZW50Q29sb3JQcmVmZXJlbmNlS2V5KCkpIHsK
LSAgICAgICAgTlNOb3RpZmljYXRpb25DZW50ZXIgKm5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05v
dGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKKyAgICAgICAgYXV0byBub3RpZmljYXRp
b25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl07CiAgICAgICAg
IFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlvbk5hbWU6QCJrQ1VJTm90aWZpY2F0
aW9uQXF1YUNvbG9yVmFyaWFudENoYW5nZWQiIG9iamVjdDpuaWxdOwogICAgICAgICBbbm90aWZp
Y2F0aW9uQ2VudGVyIHBvc3ROb3RpZmljYXRpb25OYW1lOkAiTlNTeXN0ZW1Db2xvcnNXaWxsQ2hh
bmdlTm90aWZpY2F0aW9uIiBvYmplY3Q6bmlsXTsKICAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRl
ciBwb3N0Tm90aWZpY2F0aW9uTmFtZTpOU1N5c3RlbUNvbG9yc0RpZENoYW5nZU5vdGlmaWNhdGlv
biBvYmplY3Q6bmlsXTsKLSAgICB9Ci0gICAgaWYgKGtleSA9PSB1c2VySGlnaGxpZ2h0Q29sb3JQ
cmVmZXJlbmNlS2V5KCkpIHsKLSAgICAgICAgTlNOb3RpZmljYXRpb25DZW50ZXIgKm5vdGlmaWNh
dGlvbkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKKyAgICB9
IGVsc2UgaWYgKGtleSA9PSB1c2VySGlnaGxpZ2h0Q29sb3JQcmVmZXJlbmNlS2V5KCkpIHsKKyAg
ICAgICAgYXV0byBub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVm
YXVsdENlbnRlcl07CiAgICAgICAgIFtub3RpZmljYXRpb25DZW50ZXIgcG9zdE5vdGlmaWNhdGlv
bk5hbWU6QCJOU1N5c3RlbUNvbG9yc1dpbGxDaGFuZ2VOb3RpZmljYXRpb24iIG9iamVjdDpuaWxd
OwogICAgICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHBvc3ROb3RpZmljYXRpb25OYW1lOk5TU3lz
dGVtQ29sb3JzRGlkQ2hhbmdlTm90aWZpY2F0aW9uIG9iamVjdDpuaWxdOworICAgIH0gZWxzZSBp
ZiAoa2V5ID09IHJlZHVjZU1vdGlvblByZWZlcmVuY2VLZXkoKSkgeworICAgICAgICBhdXRvIG5v
dGlmaWNhdGlvbkNlbnRlciA9IENGTm90aWZpY2F0aW9uQ2VudGVyR2V0RGlzdHJpYnV0ZWRDZW50
ZXIoKTsKKyAgICAgICAgQ0ZOb3RpZmljYXRpb25DZW50ZXJQb3N0Tm90aWZpY2F0aW9uKG5vdGlm
aWNhdGlvbkNlbnRlciwga0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uU3RhdHVzRGlkQ2hhbmdlTm90
aWZpY2F0aW9uLCBudWxscHRyLCBudWxscHRyLCB0cnVlKTsKICAgICB9CiAjZW5kaWYKIH0KSW5k
ZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlz
aW9uIDI2NTkwNSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDE0IEBACisyMDIwLTA4LTE5ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4K
KworICAgICAgICBbbWFjT1NdIFdlYiBwYWdlcyBhcmUgbm90IHJlc3BvbmRpbmcgY29ycmVjdGx5
IHRvIGNoYW5nZXMgaW4gIlJlZHVjZSBtb3Rpb24iIHNldHRpbmcKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNTY2NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJ
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbTogQWRkZWQuCisgICAgICAgIChU
RVNUKToKKwogMjAyMC0wOC0xOSAgSm9uYXRoYW4gQmVkYXJkICA8amJlZGFyZEBhcHBsZS5jb20+
CiAKICAgICAgICAgW3dlYmtpdGNvcmVweV0gRmFpbHVyZSB0byBzZXQgaW5kZXggc2hvdWxkIG5v
dCBiZSBmYXRhbApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDI2NTgxMSkK
KysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC05MzMsNiArOTMzLDcgQEAKIAkJQzE1Q0JCMzAyM0Yx
RkYxQTAwMzAwQ0M3IC8qIEJhY2tsaWdodExldmVsTm90aWZpY2F0aW9uLm1tIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzE1Q0JCMkYyM0YxRkYxQTAwMzAw
Q0M3IC8qIEJhY2tsaWdodExldmVsTm90aWZpY2F0aW9uLm1tICovOyB9OwogCQlDMTVDQkIzRjIz
RkIxNzdBMDAzMDBDQzcgLyogUHJlZmVyZW5jZUNoYW5nZXMubW0gaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMTVDQkIzRTIzRkIxNzdBMDAzMDBDQzcgLyog
UHJlZmVyZW5jZUNoYW5nZXMubW0gKi87IH07CiAJCUMxNjkyRENBMjNEMTBEQUUwMDZFODhGNyAv
KiBCYXR0ZXJ5Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQzE2OTJEQzkyM0QxMERBRTAwNkU4OEY3IC8qIEJhdHRlcnkubW0gKi87IH07CisJCUMxRjQ4
NDA3MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzFGNDg0MDYyNEVEREI0
MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0gKi87IH07CiAJCUMxRjdC
NzM5MjQ0OTA4M0YwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2UubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMUY3QjczODI0NDkwODNGMDAxMjQ1
NTcgLyogQUdYQ29tcGlsZXJTZXJ2aWNlLm1tICovOyB9OwogCQlDMUZGOUVEQjI0NDY0NEYwMDA4
MzlBRTQgLyogV2ViRmlsdGVyLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQzFGRjlFREEyNDQ2NDRGMDAwODM5QUU0IC8qIFdlYkZpbHRlci5tbSAqLzsg
fTsKIAkJQzIwRjg4QTcyMjk1Qjk2NzAwRDYxMEZBIC8qIENvcmVUZXh0LmZyYW1ld29yayBpbiBG
cmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMyMEY4OEE2MjI5
NUI5NjcwMEQ2MTBGQSAvKiBDb3JlVGV4dC5mcmFtZXdvcmsgKi87IH07CkBAIC0yNjA3LDYgKzI2
MDgsNyBAQAogCQlDMTVDQkIzRTIzRkIxNzdBMDAzMDBDQzcgLyogUHJlZmVyZW5jZUNoYW5nZXMu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQcmVmZXJlbmNlQ2hh
bmdlcy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzE2OTJEQzkyM0QxMERBRTAw
NkU4OEY3IC8qIEJhdHRlcnkubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBCYXR0ZXJ5Lm1tOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDMUQ4RUUyMTIwMjhFOEUzMDA4RUIxNDEgLyog
V2ViUHJvY2Vzc1Rlcm1pbmF0ZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IFdlYlByb2Nlc3NUZXJtaW5hdGUubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUMxRjQ4NDA2MjRFRERCNDAwMDUzRUNCOCAvKiBBY2Nlc3NpYmlsaXR5UmVkdWNlTW90aW9u
Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlvbi5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzFGN0I3MzgyNDQ5MDgzRjAwMTI0NTU3IC8q
IEFHWENvbXBpbGVyU2VydmljZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEFHWENvbXBpbGVy
U2VydmljZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzFGRjlFREEyNDQ2NDRG
MDAwODM5QUU0IC8qIFdlYkZpbHRlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkZpbHRl
ci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzIwRjg4QTYyMjk1Qjk2NzAwRDYx
MEZBIC8qIENvcmVUZXh0LmZyYW1ld29yayAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHdyYXBwZXIuZnJhbWV3b3JrOyBuYW1lID0gQ29yZVRleHQuZnJh
bWV3b3JrOyBwYXRoID0gU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlVGV4dC5mcmFtZXdv
cms7IHNvdXJjZVRyZWUgPSBTREtST09UOyB9OwpAQCAtMzA4NCw2ICszMDg2LDcgQEAKIAkJMEYx
MzlFNzQxQTQyM0E0NjAwRjU5MEY1IC8qIGNvY29hICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7
CiAJCQljaGlsZHJlbiA9ICgKKwkJCQlDMUY0ODQwNjI0RUREQjQwMDA1M0VDQjggLyogQWNjZXNz
aWJpbGl0eVJlZHVjZU1vdGlvbi5tbSAqLywKIAkJCQlFM0Y4QUI5MTI0MUFCOUNFMDAzRTJBN0Ug
LyogQWNjZXNzaWJpbGl0eVJlbW90ZVVJQXBwLm1tICovLAogCQkJCUMxRjdCNzM4MjQ0OTA4M0Yw
MDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2UubW0gKi8sCiAJCQkJQzE1Q0JCMkYyM0YxRkYx
QTAwMzAwQ0M3IC8qIEJhY2tsaWdodExldmVsTm90aWZpY2F0aW9uLm1tICovLApAQCAtNDg2NSw5
ICs0ODY4LDkgQEAKIAkJCQk3QzgzREVEMjFEMEE1OTBDMDBGRUJDRjMgLyogSGFzaE1hcC5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQk3QzgzREVENDFEMEE1OTBDMDBGRUJDRjMgLyogSGFzaFNldC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk3QzhCRkY3MTIzQzAxMDdBMDBDMDA5QjMgLyogSGV4TnVt
YmVyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMzOTc2RDgzMjREQzQ3OUIwMDgxMjMwNCAvKiBJ
bmRleFNwYXJzZVNldC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3QzgzREVFMDFEMEE1OTBDMDBG
RUJDRjMgLyogSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQk1M0ZDREU2QjIyOUVGRkI5MDA1OThFQ0YgLyogSXNvSGVhcC5jcHAgaW4gU291cmNlcyAqLywK
LQkJCQkzMzk3NkQ4MzI0REM0NzlCMDA4MTIzMDQgLyogSW5kZXhTcGFyc2VTZXQuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJN0NFQjYyQUIyMjM2MDlERTAwNjlDQkIwIC8qIEl0ZXJhdG9yUmFuZ2Uu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0EwNTA5NDExRkI5RjA2NDAwQjMzRkI4IC8qIEpTT05W
YWx1ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1MzFDMUQ4RTFERjhFRjcyMDA2RTk3OUYgLyog
TEVCRGVjb2Rlci5jcHAgaW4gU291cmNlcyAqLywKQEAgLTQ5NTQsNiArNDk1Nyw3IEBACiAJCQkJ
NTdDNjI0NEUyMzQ2QkNGQTAwMzgzRkU3IC8qIF9XS1dlYkF1dGhlbnRpY2F0aW9uUGFuZWwubW0g
aW4gU291cmNlcyAqLywKIAkJCQk3Q0NFN0VFNDFBNDExQUU2MDA0NDdDNEMgLyogQWJvdXRCbGFu
a0xvYWQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0NDRTdFQjMxQTQxMUE3RTAwNDQ3QzRDIC8q
IEFjY2VwdHNGaXJzdE1vdXNlLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJQzFGNDg0MDcyNEVEREI0
MDAwNTNFQ0I4IC8qIEFjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0gaW4gU291cmNlcyAqLywK
IAkJCQlFM0Y4QUI5MjI0MUFCOUNFMDAzRTJBN0UgLyogQWNjZXNzaWJpbGl0eVJlbW90ZVVJQXBw
Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkUyMDVCQTQxRjUyNzc0NjAwNTk1MkREIC8qIEFjY2Vz
c2liaWxpdHlUZXN0c0lPUy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTlCRDUxMTFDMUZFOEUxMTYw
MEQyQjYzMCAvKiBBY2Nlc3NpbmdQYXN0ZWRJbWFnZS5tbSBpbiBTb3VyY2VzICovLApJbmRleDog
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvQWNjZXNzaWJpbGl0eVJlZHVjZU1vdGlv
bi5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9BY2Nl
c3NpYmlsaXR5UmVkdWNlTW90aW9uLm1tCShub25leGlzdGVudCkKKysrIFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0L0FjY2Vzc2liaWxpdHlSZWR1Y2VNb3Rpb24ubW0JKHdvcmtpbmcg
Y29weSkKQEAgLTAsMCArMSw4OSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgor
CisjaWYgV0tfSEFWRV9DX1NQSQorCisjaW1wb3J0ICJQbGF0Zm9ybVV0aWxpdGllcy5oIgorI2lt
cG9ydCAiVGVzdFdLV2ViVmlldy5oIgorI2ltcG9ydCA8V2ViS2l0L1ByZWZlcmVuY2VPYnNlcnZl
ci5oPgorI2ltcG9ydCA8V2ViS2l0L1dLUHJvY2Vzc1Bvb2xQcml2YXRlLmg+CisjaW1wb3J0IDxX
ZWJLaXQvX1dLUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmg+CisKKyNpbXBvcnQgPHBhbC9zcGkv
bWFjL0hJU2VydmljZXNTUEkuaD4KKworc3RhdGljIGJvb2wgcmVkdWNlTW90aW9uTm90aWZpY2F0
aW9uUmVjZWl2ZWQgPSBmYWxzZTsKK3N0YXRpYyBib29sIHJlY2VpdmVkUHJlZmVyZW5jZU5vdGlm
aWNhdGlvbiA9IGZhbHNlOworCitAaW50ZXJmYWNlIFdLUHJlZmVyZW5jZU9ic2VydmVyRm9yVGVz
dGluZyA6IFdLUHJlZmVyZW5jZU9ic2VydmVyCistICh2b2lkKXByZWZlcmVuY2VEaWRDaGFuZ2U6
KE5TU3RyaW5nICopZG9tYWluIGtleTooTlNTdHJpbmcgKilrZXkgZW5jb2RlZFZhbHVlOihOU1N0
cmluZyAqKWVuY29kZWRWYWx1ZTsKK0BlbmQKKworQGltcGxlbWVudGF0aW9uIFdLUHJlZmVyZW5j
ZU9ic2VydmVyRm9yVGVzdGluZworLSAodm9pZClwcmVmZXJlbmNlRGlkQ2hhbmdlOihOU1N0cmlu
ZyAqKWRvbWFpbiBrZXk6KE5TU3RyaW5nICopa2V5IGVuY29kZWRWYWx1ZTooTlNTdHJpbmcgKill
bmNvZGVkVmFsdWUKK3sKKyAgICByZWNlaXZlZFByZWZlcmVuY2VOb3RpZmljYXRpb24gPSB0cnVl
OworICAgIFtzdXBlciBwcmVmZXJlbmNlRGlkQ2hhbmdlOmRvbWFpbiBrZXk6a2V5IGVuY29kZWRW
YWx1ZTplbmNvZGVkVmFsdWVdOworfQorQGVuZAorCitURVNUKFdlYktpdCwgQWNjZXNzaWJpbGl0
eVJlZHVjZU1vdGlvbikKK3sKKyAgICBSZXRhaW5QdHI8TlNPYmplY3Q+IGFjY2Vzc2liaWxpdHlP
YnNlcnZlciA9IFtbTlNEaXN0cmlidXRlZE5vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVy
XSBhZGRPYnNlcnZlckZvck5hbWU6KF9fYnJpZGdlIGlkKWtBWEludGVyZmFjZVJlZHVjZU1vdGlv
blN0YXR1c0RpZENoYW5nZU5vdGlmaWNhdGlvbiBvYmplY3Q6bmlsIHF1ZXVlOltOU09wZXJhdGlv
blF1ZXVlIGN1cnJlbnRRdWV1ZV0gdXNpbmdCbG9jazpeKE5TTm90aWZpY2F0aW9uICpub3RlKSB7
CisgICAgICAgIHJlZHVjZU1vdGlvbk5vdGlmaWNhdGlvblJlY2VpdmVkID0gdHJ1ZTsKKyAgICB9
XTsKKworICAgIGF1dG8gY29uZmlndXJhdGlvbiA9IGFkb3B0TlMoW1tXS1dlYlZpZXdDb25maWd1
cmF0aW9uIGFsbG9jXSBpbml0XSk7CisgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250
ZXh0ID0gYWRvcHRXSyhUZXN0V2ViS2l0QVBJOjpVdGlsOjpjcmVhdGVDb250ZXh0Rm9ySW5qZWN0
ZWRCdW5kbGVUZXN0KCJJbnRlcm5hbHNJbmplY3RlZEJ1bmRsZVRlc3QiKSk7CisgICAgY29uZmln
dXJhdGlvbi5nZXQoKS5wcm9jZXNzUG9vbCA9IChXS1Byb2Nlc3NQb29sICopY29udGV4dC5nZXQo
KTsKKyAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5p
dFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDMwMCwgMzAwKSBjb25maWd1cmF0aW9uOmNvbmZp
Z3VyYXRpb24uZ2V0KCkgYWRkVG9XaW5kb3c6WUVTXSk7CisKKyAgICBDRlByZWZlcmVuY2VzU2V0
QXBwVmFsdWUoa0FYSW50ZXJmYWNlUmVkdWNlTW90aW9uS2V5LCBrQ0ZCb29sZWFuRmFsc2UsIENG
U1RSKCJjb20uYXBwbGUudW5pdmVyc2FsYWNjZXNzIikpOworCisgICAgYXV0byBvYnNlcnZlciA9
IGFkb3B0TlMoW1tXS1ByZWZlcmVuY2VPYnNlcnZlckZvclRlc3RpbmcgYWxsb2NdIGluaXRdKTsK
KworICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkVGVzdFBhZ2VOYW1lZDpAInNpbXBsZSJd
OworCisgICAgQ0ZQcmVmZXJlbmNlc1NldEFwcFZhbHVlKGtBWEludGVyZmFjZVJlZHVjZU1vdGlv
bktleSwga0NGQm9vbGVhblRydWUsIENGU1RSKCJjb20uYXBwbGUudW5pdmVyc2FsYWNjZXNzIikp
OworCisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZyZWNlaXZlZFByZWZlcmVuY2VOb3Rp
ZmljYXRpb24pOworCisgICAgYXV0byByZWR1Y2VNb3Rpb24gPSBbJl0geworICAgICAgICByZXR1
cm4gW3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdDpAIndpbmRvdy5pbnRlcm5h
bHMudXNlclByZWZlcnNSZWR1Y2VkTW90aW9uKCkiXS5ib29sVmFsdWU7CisgICAgfTsKKyAgICAK
KyAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZFRlc3RQYWdlTmFtZWQ6QCJzaW1wbGUiXTsK
KworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmcmVkdWNlTW90aW9uTm90aWZpY2F0aW9u
UmVjZWl2ZWQpOworCisgICAgQVNTRVJUX1RSVUUocmVkdWNlTW90aW9uKCkpOworCisgICAgQ0ZQ
cmVmZXJlbmNlc1NldEFwcFZhbHVlKGtBWEludGVyZmFjZVJlZHVjZU1vdGlvbktleSwgbnVsbHB0
ciwgQ0ZTVFIoImNvbS5hcHBsZS51bml2ZXJzYWxhY2Nlc3MiKSk7CisKKyAgICBbW05TTm90aWZp
Y2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9ic2VydmVyOmFjY2Vzc2liaWxpdHlP
YnNlcnZlci5nZXQoKV07Cit9CisKKyNlbmRpZgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>