<?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>195342</bug_id>
          
          <creation_ts>2019-03-05 14:47:47 -0800</creation_ts>
          <short_desc>[iOS] Block the accessibility server when accessibility is not enabled.</short_desc>
          <delta_ts>2019-03-17 19:08:43 -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>benjamin</cc>
    
    <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>cfleizach</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fujii</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>tsavell</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1512850</commentid>
    <comment_count>0</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-05 14:47:47 -0800</bug_when>
    <thetext>There is no need to allow connections to the accessibility server when accessibility is turned off.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1512851</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-03-05 14:48:36 -0800</bug_when>
    <thetext>&lt;rdar://problem/48615720&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1512852</commentid>
    <comment_count>2</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2019-03-05 14:49:07 -0800</bug_when>
    <thetext>might depend how we&apos;re checking accessibility. this could be a bit risky given all the ways AX can be turned on</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1512853</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-03-05 14:51:34 -0800</bug_when>
    <thetext>&lt;rdar://problem/48615865&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1512863</commentid>
    <comment_count>4</comment_count>
      <attachid>363694</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-05 15:27:26 -0800</bug_when>
    <thetext>Created attachment 363694
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1512865</commentid>
    <comment_count>5</comment_count>
      <attachid>363694</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2019-03-05 15:30:48 -0800</bug_when>
    <thetext>Comment on attachment 363694
Patch

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

&gt; Source/WebKit/UIProcess/ios/WebProcessProxyIOS.mm:56
&gt; +    SandboxExtension::Handle handle;

are you handling when AX turns off after process launched by monitoring kAXSApplicationAccessibilityEnabledNotification</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1512875</commentid>
    <comment_count>6</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-05 15:36:15 -0800</bug_when>
    <thetext>(In reply to chris fleizach from comment #5)
&gt; Comment on attachment 363694 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=363694&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/UIProcess/ios/WebProcessProxyIOS.mm:56
&gt; &gt; +    SandboxExtension::Handle handle;
&gt; 
&gt; are you handling when AX turns off after process launched by monitoring
&gt; kAXSApplicationAccessibilityEnabledNotification

Would you prefer to revoke the mach extension when AX is turned off? For simplicity, I don&apos;t think it is strictly needed to revoke the extension when AX is being turned off, since the main purpose of this patch is to block the AX server, when AX is already off.

Thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1512880</commentid>
    <comment_count>7</comment_count>
      <attachid>363694</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2019-03-05 15:37:34 -0800</bug_when>
    <thetext>Comment on attachment 363694
Patch

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

&gt;&gt;&gt; Source/WebKit/UIProcess/ios/WebProcessProxyIOS.mm:56
&gt;&gt;&gt; +    SandboxExtension::Handle handle;
&gt;&gt; 
&gt;&gt; are you handling when AX turns off after process launched by monitoring kAXSApplicationAccessibilityEnabledNotification
&gt; 
&gt; Would you prefer to revoke the mach extension when AX is turned off? For simplicity, I don&apos;t think it is strictly needed to revoke the extension when AX is being turned off, since the main purpose of this patch is to block the AX server, when AX is already off.
&gt; 
&gt; Thanks for reviewing!

I was thinking if AX turns on after the web process has already started</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1512885</commentid>
    <comment_count>8</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-05 15:40:53 -0800</bug_when>
    <thetext>(In reply to chris fleizach from comment #7)
&gt; Comment on attachment 363694 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=363694&amp;action=review
&gt; 
&gt; &gt;&gt;&gt; Source/WebKit/UIProcess/ios/WebProcessProxyIOS.mm:56
&gt; &gt;&gt;&gt; +    SandboxExtension::Handle handle;
&gt; &gt;&gt; 
&gt; &gt;&gt; are you handling when AX turns off after process launched by monitoring kAXSApplicationAccessibilityEnabledNotification
&gt; &gt; 
&gt; &gt; Would you prefer to revoke the mach extension when AX is turned off? For simplicity, I don&apos;t think it is strictly needed to revoke the extension when AX is being turned off, since the main purpose of this patch is to block the AX server, when AX is already off.
&gt; &gt; 
&gt; &gt; Thanks for reviewing!
&gt; 
&gt; I was thinking if AX turns on after the web process has already started

Ah, right. The AX server will be unblocked (if AX is on) whenever Safari becomes the front application. Is that sufficient?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1512898</commentid>
    <comment_count>9</comment_count>
      <attachid>363694</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2019-03-05 16:23:25 -0800</bug_when>
    <thetext>Comment on attachment 363694
Patch

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

&gt;&gt;&gt;&gt;&gt; Source/WebKit/UIProcess/ios/WebProcessProxyIOS.mm:56
&gt;&gt;&gt;&gt;&gt; +    SandboxExtension::Handle handle;
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; are you handling when AX turns off after process launched by monitoring kAXSApplicationAccessibilityEnabledNotification
&gt;&gt;&gt; 
&gt;&gt;&gt; Would you prefer to revoke the mach extension when AX is turned off? For simplicity, I don&apos;t think it is strictly needed to revoke the extension when AX is being turned off, since the main purpose of this patch is to block the AX server, when AX is already off.
&gt;&gt;&gt; 
&gt;&gt;&gt; Thanks for reviewing!
&gt;&gt; 
&gt;&gt; I was thinking if AX turns on after the web process has already started
&gt; 
&gt; Ah, right. The AX server will be unblocked (if AX is on) whenever Safari becomes the front application. Is that sufficient?

no I don&apos;t think so. if you launch safari, then you turn on AX, this will fail.. you need to listen for that notification too and unblock</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513102</commentid>
    <comment_count>10</comment_count>
      <attachid>363765</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-06 11:39:31 -0800</bug_when>
    <thetext>Created attachment 363765
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513103</commentid>
    <comment_count>11</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-06 11:40:07 -0800</bug_when>
    <thetext>(In reply to chris fleizach from comment #9)
&gt; Comment on attachment 363694 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=363694&amp;action=review
&gt; 
&gt; &gt;&gt;&gt;&gt;&gt; Source/WebKit/UIProcess/ios/WebProcessProxyIOS.mm:56
&gt; &gt;&gt;&gt;&gt;&gt; +    SandboxExtension::Handle handle;
&gt; &gt;&gt;&gt;&gt; 
&gt; &gt;&gt;&gt;&gt; are you handling when AX turns off after process launched by monitoring kAXSApplicationAccessibilityEnabledNotification
&gt; &gt;&gt;&gt; 
&gt; &gt;&gt;&gt; Would you prefer to revoke the mach extension when AX is turned off? For simplicity, I don&apos;t think it is strictly needed to revoke the extension when AX is being turned off, since the main purpose of this patch is to block the AX server, when AX is already off.
&gt; &gt;&gt;&gt; 
&gt; &gt;&gt;&gt; Thanks for reviewing!
&gt; &gt;&gt; 
&gt; &gt;&gt; I was thinking if AX turns on after the web process has already started
&gt; &gt; 
&gt; &gt; Ah, right. The AX server will be unblocked (if AX is on) whenever Safari becomes the front application. Is that sufficient?
&gt; 
&gt; no I don&apos;t think so. if you launch safari, then you turn on AX, this will
&gt; fail.. you need to listen for that notification too and unblock

Thanks, Chris! I have updated the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513105</commentid>
    <comment_count>12</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-03-06 11:42:20 -0800</bug_when>
    <thetext>Attachment 363765 did not pass style-queue:


ERROR: Source/WebKit/Platform/spi/ios/AccessibilitySupportSPI.h:44:  _AXSApplicationAccessibilityEnabled is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
Total errors found: 1 in 15 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513106</commentid>
    <comment_count>13</comment_count>
      <attachid>363765</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2019-03-06 11:49:46 -0800</bug_when>
    <thetext>Comment on attachment 363765
Patch

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

looks ok from ax perspective.

&gt; Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm:431
&gt; +            WebProcessProxy* process = m_processes[i].get();

could probably reduce this to one line

m_processes[I]-&gt;unblockAccessibilityServerIfNeeded();</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513113</commentid>
    <comment_count>14</comment_count>
      <attachid>363769</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-06 12:06:13 -0800</bug_when>
    <thetext>Created attachment 363769
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513115</commentid>
    <comment_count>15</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-03-06 12:08:06 -0800</bug_when>
    <thetext>Attachment 363769 did not pass style-queue:


ERROR: Source/WebKit/Platform/spi/ios/AccessibilitySupportSPI.h:44:  _AXSApplicationAccessibilityEnabled is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
ERROR: Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm:432:  Tab found; better to use spaces  [whitespace/tab] [1]
Total errors found: 2 in 15 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513117</commentid>
    <comment_count>16</comment_count>
      <attachid>363771</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-06 12:16:25 -0800</bug_when>
    <thetext>Created attachment 363771
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513122</commentid>
    <comment_count>17</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-03-06 12:18:16 -0800</bug_when>
    <thetext>Attachment 363771 did not pass style-queue:


ERROR: Source/WebKit/Platform/spi/ios/AccessibilitySupportSPI.h:44:  _AXSApplicationAccessibilityEnabled is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
Total errors found: 1 in 15 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513123</commentid>
    <comment_count>18</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2019-03-06 12:20:08 -0800</bug_when>
    <thetext>LGTM, but I&apos;m not a WK2 reviewer</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513124</commentid>
    <comment_count>19</comment_count>
      <attachid>363771</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2019-03-06 12:23:52 -0800</bug_when>
    <thetext>Comment on attachment 363771
Patch

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

&gt; Source/WebKit/Shared/mac/SandboxExtensionMac.mm:93
&gt; +            return sandbox_extension_issue_mach_to_process_by_pid(&quot;com.apple.webkit.extension.mach&quot;, path, 0, pid.value());

Should this be &quot;com.apple.webkit.extensions.mach&quot;_s, since it&apos;s a String being passed?

&gt; Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm:429
&gt; +    m_accessibilityEnabledObserver = [[NSNotificationCenter defaultCenter] addObserverForName:(__bridge id)kAXSApplicationAccessibilityEnabledNotification object:nil queue:[NSOperationQueue currentQueue] usingBlock:^(NSNotification *note) {

Should we add an UNUSED_PARAM(note) here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513125</commentid>
    <comment_count>20</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2019-03-06 12:24:30 -0800</bug_when>
    <thetext>iOS build failure:

/Volumes/Data/EWS/WebKit/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm:431:108: error: use of undeclared identifier &apos;kAXSApplicationAccessibilityEnabledNotification&apos;
    m_accessibilityEnabledObserver = [[NSNotificationCenter defaultCenter] addObserverForName:(__bridge id)kAXSApplicationAccessibilityEnabledNotification object:nil queue:[NSOperationQueue currentQueue] usingBlock:^(NSNotification *note) {
                                                                                                           ^
1 error generated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513138</commentid>
    <comment_count>21</comment_count>
      <attachid>363775</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-06 13:00:06 -0800</bug_when>
    <thetext>Created attachment 363775
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513143</commentid>
    <comment_count>22</comment_count>
      <attachid>363777</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-06 13:06:45 -0800</bug_when>
    <thetext>Created attachment 363777
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513144</commentid>
    <comment_count>23</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-06 13:07:24 -0800</bug_when>
    <thetext>Thanks for reviewing, all! I have updated the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513147</commentid>
    <comment_count>24</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-03-06 13:10:14 -0800</bug_when>
    <thetext>Attachment 363777 did not pass style-queue:


ERROR: Source/WebKit/Platform/spi/ios/AccessibilitySupportSPI.h:44:  _AXSApplicationAccessibilityEnabled is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
Total errors found: 1 in 15 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513159</commentid>
    <comment_count>25</comment_count>
      <attachid>363777</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2019-03-06 13:20:43 -0800</bug_when>
    <thetext>Comment on attachment 363777
Patch

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

&gt; Source/WebKit/Shared/mac/SandboxExtensionMac.mm:65
&gt; +            LOG_ERROR(&quot;Could not create a sandbox extension for &apos;%s&apos;, errno = %d&quot;, m_token, errno);

Perhaps this should an early return?

&gt; Source/WebKit/Shared/mac/SandboxExtensionMac.mm:69
&gt; +        return m_handle != -1;

Is m_handle == 0 a valid response? It didn&apos;t used to be.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513175</commentid>
    <comment_count>26</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-06 13:35:48 -0800</bug_when>
    <thetext>(In reply to Brent Fulgham from comment #25)
&gt; Comment on attachment 363777 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=363777&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/Shared/mac/SandboxExtensionMac.mm:65
&gt; &gt; +            LOG_ERROR(&quot;Could not create a sandbox extension for &apos;%s&apos;, errno = %d&quot;, m_token, errno);
&gt; 
&gt; Perhaps this should an early return?
&gt; 
&gt; &gt; Source/WebKit/Shared/mac/SandboxExtensionMac.mm:69
&gt; &gt; +        return m_handle != -1;
&gt; 
&gt; Is m_handle == 0 a valid response? It didn&apos;t used to be.

According to the documentation, the function returns -1 on failure, but I don&apos;t think I have seen a return value of 0. Perhaps we should change this to &apos;return m_handle &gt; 0&apos;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513294</commentid>
    <comment_count>27</comment_count>
      <attachid>363777</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2019-03-06 16:54:05 -0800</bug_when>
    <thetext>Comment on attachment 363777
Patch

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

&gt;&gt;&gt; Source/WebKit/Shared/mac/SandboxExtensionMac.mm:65
&gt;&gt;&gt; +            LOG_ERROR(&quot;Could not create a sandbox extension for &apos;%s&apos;, errno = %d&quot;, m_token, errno);
&gt;&gt; 
&gt;&gt; Perhaps this should an early return?
&gt; 
&gt; According to the documentation, the function returns -1 on failure, but I don&apos;t think I have seen a return value of 0. Perhaps we should change this to &apos;return m_handle &gt; 0&apos;?

I suggest you do an early return here with &apos;false&apos;, and leave the &quot;return m_handle&quot; below unchanged from existing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513525</commentid>
    <comment_count>28</comment_count>
      <attachid>363882</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-07 09:11:18 -0800</bug_when>
    <thetext>Created attachment 363882
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513526</commentid>
    <comment_count>29</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-07 09:13:09 -0800</bug_when>
    <thetext>(In reply to Brent Fulgham from comment #27)
&gt; Comment on attachment 363777 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=363777&amp;action=review
&gt; 
&gt; &gt;&gt;&gt; Source/WebKit/Shared/mac/SandboxExtensionMac.mm:65
&gt; &gt;&gt;&gt; +            LOG_ERROR(&quot;Could not create a sandbox extension for &apos;%s&apos;, errno = %d&quot;, m_token, errno);
&gt; &gt;&gt; 
&gt; &gt;&gt; Perhaps this should an early return?
&gt; &gt; 
&gt; &gt; According to the documentation, the function returns -1 on failure, but I don&apos;t think I have seen a return value of 0. Perhaps we should change this to &apos;return m_handle &gt; 0&apos;?
&gt; 
&gt; I suggest you do an early return here with &apos;false&apos;, and leave the &quot;return
&gt; m_handle&quot; below unchanged from existing.

Sounds good, thanks! I have updated the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1513528</commentid>
    <comment_count>30</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-03-07 09:14:31 -0800</bug_when>
    <thetext>Attachment 363882 did not pass style-queue:


ERROR: Source/WebKit/Platform/spi/ios/AccessibilitySupportSPI.h:44:  _AXSApplicationAccessibilityEnabled is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
Total errors found: 1 in 15 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1514823</commentid>
    <comment_count>31</comment_count>
      <attachid>363882</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2019-03-11 09:51:30 -0700</bug_when>
    <thetext>Comment on attachment 363882
Patch

Looks good! r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1514907</commentid>
    <comment_count>32</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-11 12:00:30 -0700</bug_when>
    <thetext>(In reply to Brent Fulgham from comment #31)
&gt; Comment on attachment 363882 [details]
&gt; Patch
&gt; 
&gt; Looks good! r=me

Thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1516649</commentid>
    <comment_count>33</comment_count>
      <attachid>364688</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-14 14:34:43 -0700</bug_when>
    <thetext>Created attachment 364688
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1516650</commentid>
    <comment_count>34</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-14 14:35:51 -0700</bug_when>
    <thetext>(In reply to Per Arne Vollan from comment #33)
&gt; Created attachment 364688 [details]
&gt; Patch

Rebased.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1516652</commentid>
    <comment_count>35</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-03-14 14:37:26 -0700</bug_when>
    <thetext>Attachment 364688 did not pass style-queue:


ERROR: Source/WebKit/Platform/spi/ios/AccessibilitySupportSPI.h:44:  _AXSApplicationAccessibilityEnabled is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
Total errors found: 1 in 15 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1517015</commentid>
    <comment_count>36</comment_count>
      <attachid>364812</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-15 10:58:57 -0700</bug_when>
    <thetext>Created attachment 364812
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1517016</commentid>
    <comment_count>37</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-03-15 11:00:58 -0700</bug_when>
    <thetext>Attachment 364812 did not pass style-queue:


ERROR: Source/WebKit/Platform/spi/ios/AccessibilitySupportSPI.h:44:  _AXSApplicationAccessibilityEnabled is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
Total errors found: 1 in 15 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1517092</commentid>
    <comment_count>38</comment_count>
      <attachid>364812</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-03-15 13:27:30 -0700</bug_when>
    <thetext>Comment on attachment 364812
Patch

Clearing flags on attachment: 364812

Committed r243008: &lt;https://trac.webkit.org/changeset/243008&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1517277</commentid>
    <comment_count>39</comment_count>
    <who name="Truitt Savell">tsavell</who>
    <bug_when>2019-03-15 16:49:22 -0700</bug_when>
    <thetext>Reverted r243008 for reason:

This revision broke High Sierra builders

Committed r243027: &lt;https://trac.webkit.org/changeset/243027&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1517286</commentid>
    <comment_count>40</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2019-03-15 16:56:25 -0700</bug_when>
    <thetext>(In reply to Truitt Savell from comment #39)
&gt; Reverted r243008 for reason:
&gt; 
&gt; This revision broke High Sierra builders
&gt; 
&gt; Committed r243027: &lt;https://trac.webkit.org/changeset/243027&gt;

Undefined symbols for architecture x86_64:
  &quot;_sandbox_extension_issue_mach_to_process_by_pid&quot;, referenced from:
      WebKit::SandboxExtensionImpl::sandboxExtensionForType(char const*, WebKit::SandboxExtension::Type, WTF::Optional&lt;int&gt;) in UnifiedSource16-mm.o
ld: symbol(s) not found for architecture x86_64

https://build.webkit.org/builders/Apple%20High%20Sierra%20Release%20%28Build%29/builds/13030/steps/compile-webkit/logs/stdio</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1517344</commentid>
    <comment_count>41</comment_count>
      <attachid>364905</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-15 20:41:14 -0700</bug_when>
    <thetext>Created attachment 364905
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1517345</commentid>
    <comment_count>42</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-03-15 20:42:45 -0700</bug_when>
    <thetext>Attachment 364905 did not pass style-queue:


ERROR: Source/WebKit/Platform/spi/ios/AccessibilitySupportSPI.h:44:  _AXSApplicationAccessibilityEnabled is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
Total errors found: 1 in 16 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1517352</commentid>
    <comment_count>43</comment_count>
      <attachid>364910</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2019-03-15 21:14:04 -0700</bug_when>
    <thetext>Created attachment 364910
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1517353</commentid>
    <comment_count>44</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-03-15 21:15:52 -0700</bug_when>
    <thetext>Attachment 364910 did not pass style-queue:


ERROR: Source/WebKit/Platform/spi/ios/AccessibilitySupportSPI.h:44:  _AXSApplicationAccessibilityEnabled is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
Total errors found: 1 in 16 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1517377</commentid>
    <comment_count>45</comment_count>
      <attachid>364910</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-03-15 22:44:27 -0700</bug_when>
    <thetext>Comment on attachment 364910
Patch

Clearing flags on attachment: 364910

Committed r243034: &lt;https://trac.webkit.org/changeset/243034&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1517597</commentid>
    <comment_count>46</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2019-03-17 19:08:43 -0700</bug_when>
    <thetext>Committed r243054: &lt;https://trac.webkit.org/changeset/243054&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363694</attachid>
            <date>2019-03-05 15:27:26 -0800</date>
            <delta_ts>2019-03-06 11:39:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195342-20190305152725.patch</filename>
            <type>text/plain</type>
            <size>13497</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE5LTAzLTA1ICBQZXIgQXJuZSBWb2xsYW4gIDxw
dm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0
eSBzZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIFNQSSB0byBpc3N1ZSBhIG1h
Y2ggZXh0ZW5zaW9uIHRvIGEgcHJvY2VzcyBieSBwaWQuCisKKyAgICAgICAgKiB3dGYvc3BpL2Rh
cndpbi9TYW5kYm94U1BJLmg6CisKIDIwMTktMDItMjggIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdl
YmtpdC5vcmc+CiAKICAgICAgICAgQWRkIFdlYWtIYXNoU2V0CkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9zcGkvZGFyd2luL1NhbmRib3hTUEkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9z
cGkvZGFyd2luL1NhbmRib3hTUEkuaAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dURi93
dGYvc3BpL2Rhcndpbi9TYW5kYm94U1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTYzLDYgKzYzLDcg
QEAgZXh0ZXJuIGNvbnN0IGVudW0gc2FuZGJveF9maWx0ZXJfdHlwZSBTQQogCiBjaGFyICpzYW5k
Ym94X2V4dGVuc2lvbl9pc3N1ZV9maWxlKGNvbnN0IGNoYXIgKmV4dGVuc2lvbl9jbGFzcywgY29u
c3QgY2hhciAqcGF0aCwgdWludDMyX3QgZmxhZ3MpOwogY2hhciAqc2FuZGJveF9leHRlbnNpb25f
aXNzdWVfZ2VuZXJpYyhjb25zdCBjaGFyICpleHRlbnNpb25fY2xhc3MsIHVpbnQzMl90IGZsYWdz
KTsKK2NoYXIgKnNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX21hY2hfdG9fcHJvY2Vzc19ieV9waWQo
Y29uc3QgY2hhciAqZXh0ZW5zaW9uX2NsYXNzLCBjb25zdCBjaGFyICpuYW1lLCB1aW50MzJfdCBm
bGFncywgcGlkX3QpOwogaW50IHNhbmRib3hfY2hlY2socGlkX3QsIGNvbnN0IGNoYXIgKm9wZXJh
dGlvbiwgZW51bSBzYW5kYm94X2ZpbHRlcl90eXBlLCAuLi4pOwogaW50IHNhbmRib3hfY2hlY2tf
YnlfYXVkaXRfdG9rZW4oYXVkaXRfdG9rZW5fdCwgY29uc3QgY2hhciAqb3BlcmF0aW9uLCBlbnVt
IHNhbmRib3hfZmlsdGVyX3R5cGUsIC4uLik7CiBpbnQgc2FuZGJveF9jb250YWluZXJfcGF0aF9m
b3JfcGlkKHBpZF90LCBjaGFyICpidWZmZXIsIHNpemVfdCBidWZzaXplKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNDI1MTQpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDMzIEBACisyMDE5LTAzLTA1ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9s
bGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0eSBz
ZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQnkgZGVmYXVsdCwgYmxvY2sgdGhlIGlP
UyBhY2Nlc3NpYmlsaXR5IHNlcnZlciBpbiB0aGUgc2FuZGJveC4gSWYgYWNjZXNzaWJpbGl0eSBp
cyBlbmFibGVkLAorICAgICAgICBsZXQgdGhlIFVJIHByb2Nlc3MgaXNzdWUgYSBtYWNoIGV4dGVu
c2lvbiB0byB0aGUgV2ViQ29udGVudCBwcm9jZXNzLiBUaGUgc2FuZGJveCBleHRlbnNpb24KKyAg
ICAgICAgaXMgc2VudCB0byB0aGUgV2ViQ29udGVudCBwcm9jZXNzIHRvIGJlIGNvbnN1bWVkLgor
CisgICAgICAgICogUmVzb3VyY2VzL1NhbmRib3hQcm9maWxlcy9pb3MvY29tLmFwcGxlLldlYktp
dC5XZWJDb250ZW50LnNiOgorICAgICAgICAqIFNoYXJlZC9TYW5kYm94RXh0ZW5zaW9uLmg6Cisg
ICAgICAgICogU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tOgorICAgICAgICAoV2Vi
S2l0OjpTYW5kYm94RXh0ZW5zaW9uSW1wbDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6U2Fu
ZGJveEV4dGVuc2lvbkltcGw6OnNhbmRib3hFeHRlbnNpb25Gb3JUeXBlKToKKyAgICAgICAgKFdl
YktpdDo6U2FuZGJveEV4dGVuc2lvbkltcGw6OlNhbmRib3hFeHRlbnNpb25JbXBsKToKKyAgICAg
ICAgKFdlYktpdDo6U2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cEJ5
UGlkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcDoKKyAgICAgICAg
KFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVuY2hpbmcpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dl
YlBhZ2VQcm94eUlPUy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjphcHBsaWNh
dGlvbldpbGxFbnRlckZvcmVncm91bmQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV2ViUHJv
Y2Vzc1Byb3h5SU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUHJveHk6OnVuYmxv
Y2tBY2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2Vi
UHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3M6OnVuYmxvY2tBY2Nlc3Np
YmlsaXR5U2VydmVyKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MuaDoKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVzc2FnZXMuaW46CisKIDIwMTktMDMtMDUgIFlv
dWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEludHJvZHVjZSBTZXJ2
aWNlV29ya2VyRmV0Y2hUYXNrCkluZGV4OiBTb3VyY2UvV2ViS2l0L1Jlc291cmNlcy9TYW5kYm94
UHJvZmlsZXMvaW9zL2NvbS5hcHBsZS5XZWJLaXQuV2ViQ29udGVudC5zYgo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L1Jlc291cmNlcy9TYW5kYm94UHJvZmlsZXMvaW9zL2NvbS5hcHBsZS5X
ZWJLaXQuV2ViQ29udGVudC5zYgkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9S
ZXNvdXJjZXMvU2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQu
c2IJKHdvcmtpbmcgY29weSkKQEAgLTE4Nyw3ICsxODcsNiBAQAogICAgIChnbG9iYWwtbmFtZSAi
Y29tLmFwcGxlLmJhY2tib2FyZC5oaWQuZm9jdXMiKQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFw
cGxlLmJhY2tib2FyZC5oaWQuc2VydmljZXMiKQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxl
LmlvaGlkZXZlbnRzeXN0ZW0iKQotICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmlwaG9uZS5h
eHNlcnZlci1zeXN0ZW13aWRlIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5mcm9udGJv
YXJkLndvcmtzcGFjZSIpCiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuZnJvbnRib2FyZC5z
eXN0ZW1hcHBzZXJ2aWNlcyIpKQogCkBAIC00NTAsNiArNDQ5LDggQEAKICAgICAoZ2xvYmFsLW5h
bWUgImNvbS5hcHBsZS5jb3JlbWVkaWEuZGVjb21wcmVzc2lvbnNlc3Npb24iKQogICAgIChnbG9i
YWwtbmFtZSAiY29tLmFwcGxlLmNvcmVtZWRpYS52aWRlb3F1ZXVlIikpCiAKKyhhbGxvdyBtYWNo
LWxvb2t1cCAoZXh0ZW5zaW9uICJjb20uYXBwbGUud2Via2l0LmV4dGVuc2lvbi5tYWNoIikpCisK
IDs7IFRoZXNlIHNlcnZpY2VzIGhhdmUgYmVlbiBpZGVudGlmaWVkIGFzIHVudXNlZCBkdXJpbmcg
bGl2aW5nLW9uLgogOzsgVGhpcyBsaXN0IG92ZXJyaWRlcyBzb21lIGRlZmluaXRpb25zIGFib3Zl
IGFuZCBpbiBjb21tb24uc2IuCiA7OyBGSVhNRTogcmVtb3ZlIG92ZXJyaWRkZW4gcnVsZXMgb25j
ZSB0aGUgZmluYWwgbGlzdCBoYXMgYmVlbgpAQCAtNDc1LDcgKzQ3Niw2IEBACiAgICAgKGdsb2Jh
bC1uYW1lICJjb20uYXBwbGUuYWNjZXNzaWJpbGl0eS5BY2Nlc3NpYmlsaXR5VUlTZXJ2ZXIiKQog
ICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFjY2Vzc2liaWxpdHkuaGVhcmQiKQogICAgIChn
bG9iYWwtbmFtZSAiY29tLmFwcGxlLmFjY291bnRzZC5hY2NvdW50bWFuYWdlciIpCi0gICAgKGds
b2JhbC1uYW1lICJjb20uYXBwbGUuYXBwLXNhbmRib3gubWFjaCIpCiAgICAgKGdsb2JhbC1uYW1l
ICJjb20uYXBwbGUuYXBwc3VwcG9ydC5jcGxvZ2QiKQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFw
cGxlLmFzc2VydGlvbmQuYXBwbGljYXRpb25zdGF0ZWNvbm5lY3Rpb24iKQogICAgIChnbG9iYWwt
bmFtZSAiY29tLmFwcGxlLmFzc2VydGlvbmQuZXhwaXJhdGlvbiIpCkluZGV4OiBTb3VyY2UvV2Vi
S2l0L1NoYXJlZC9TYW5kYm94RXh0ZW5zaW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9TaGFyZWQvU2FuZGJveEV4dGVuc2lvbi5oCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2Uv
V2ViS2l0L1NoYXJlZC9TYW5kYm94RXh0ZW5zaW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ2LDYg
KzQ2LDcgQEAgcHVibGljOgogICAgIGVudW0gY2xhc3MgVHlwZSB7CiAgICAgICAgIFJlYWRPbmx5
LAogICAgICAgICBSZWFkV3JpdGUsCisgICAgICAgIE1hY2gsCiAgICAgICAgIEdlbmVyaWMsCiAg
ICAgfTsKIApAQCAtMTAxLDYgKzEwMiw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgYm9vbCBjcmVh
dGVIYW5kbGVGb3JSZWFkV3JpdGVEaXJlY3RvcnkoY29uc3QgU3RyaW5nJiBwYXRoLCBIYW5kbGUm
KTsgLy8gV2lsbCBhdHRlbXB0IHRvIGNyZWF0ZSB0aGUgZGlyZWN0b3J5LgogICAgIHN0YXRpYyBT
dHJpbmcgY3JlYXRlSGFuZGxlRm9yVGVtcG9yYXJ5RmlsZShjb25zdCBTdHJpbmcmIHByZWZpeCwg
VHlwZSwgSGFuZGxlJik7CiAgICAgc3RhdGljIGJvb2wgY3JlYXRlSGFuZGxlRm9yR2VuZXJpY0V4
dGVuc2lvbihjb25zdCBTdHJpbmcmIGV4dGVuc2lvbkNsYXNzLCBIYW5kbGUmKTsKKyAgICBzdGF0
aWMgYm9vbCBjcmVhdGVIYW5kbGVGb3JNYWNoTG9va3VwQnlQaWQoY29uc3QgU3RyaW5nJiBzZXJ2
aWNlLCBwaWRfdCwgSGFuZGxlJik7CiAgICAgflNhbmRib3hFeHRlbnNpb24oKTsKIAogICAgIGJv
b2wgY29uc3VtZSgpOwpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL1NhbmRib3hFeHRl
bnNpb25NYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL1NhbmRi
b3hFeHRlbnNpb25NYWMubW0JKHJldmlzaW9uIDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvU2hh
cmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC00MCw5ICs0
MCw5IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBTYW5kYm94RXh0ZW5zaW9uSW1wbCB7
CiBwdWJsaWM6Ci0gICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxTYW5kYm94RXh0ZW5zaW9uSW1w
bD4gY3JlYXRlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRib3hFeHRlbnNpb246OlR5cGUgdHlwZSkK
KyAgICBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPFNhbmRib3hFeHRlbnNpb25JbXBsPiBjcmVhdGUo
Y29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlLCBPcHRpb25hbDxw
aWRfdD4gcGlkID0gV1RGOjpudWxsb3B0KQogICAgIHsKLSAgICAgICAgc3RkOjp1bmlxdWVfcHRy
PFNhbmRib3hFeHRlbnNpb25JbXBsPiBpbXBsIHsgbmV3IFNhbmRib3hFeHRlbnNpb25JbXBsKHBh
dGgsIHR5cGUpIH07CisgICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxTYW5kYm94RXh0ZW5zaW9uSW1w
bD4gaW1wbCB7IG5ldyBTYW5kYm94RXh0ZW5zaW9uSW1wbChwYXRoLCB0eXBlLCBwaWQpIH07CiAg
ICAgICAgIGlmICghaW1wbC0+bV90b2tlbikKICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwog
ICAgICAgICByZXR1cm4gaW1wbDsKQEAgLTYxLDEwICs2MSwxMiBAQCBwdWJsaWM6CiAgICAgYm9v
bCBjb25zdW1lKCkgV0FSTl9VTlVTRURfUkVUVVJOCiAgICAgewogICAgICAgICBtX2hhbmRsZSA9
IHNhbmRib3hfZXh0ZW5zaW9uX2NvbnN1bWUobV90b2tlbik7CisgICAgICAgIGlmIChtX2hhbmRs
ZSA9PSAtMSkKKyAgICAgICAgICAgIExPR19FUlJPUigiQ291bGQgbm90IGNyZWF0ZSBhIHNhbmRi
b3ggZXh0ZW5zaW9uIGZvciAnJXMnLCBlcnJubyA9ICVkIiwgbV90b2tlbiwgZXJybm8pOwogI2lm
IFBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9SKQogICAgICAgICByZXR1cm4gIXNhbmRib3hf
Y2hlY2soZ2V0cGlkKCksIDAsIFNBTkRCT1hfRklMVEVSX05PTkUpOwogI2Vsc2UKLSAgICAgICAg
cmV0dXJuIG1faGFuZGxlOworICAgICAgICByZXR1cm4gbV9oYW5kbGUgIT0gLTE7CiAjZW5kaWYK
ICAgICB9CiAKQEAgLTgwLDIwICs4MiwyMiBAQCBwdWJsaWM6CiAgICAgfQogCiBwcml2YXRlOgot
ICAgIGNoYXIqIHNhbmRib3hFeHRlbnNpb25Gb3JUeXBlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRi
b3hFeHRlbnNpb246OlR5cGUgdHlwZSkKKyAgICBjaGFyKiBzYW5kYm94RXh0ZW5zaW9uRm9yVHlw
ZShjb25zdCBjaGFyKiBwYXRoLCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUsIE9wdGlvbmFs
PHBpZF90PiBwaWQgPSBXVEY6Om51bGxvcHQpCiAgICAgewogICAgICAgICBzd2l0Y2ggKHR5cGUp
IHsKICAgICAgICAgY2FzZSBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpSZWFkT25seToKICAgICAg
ICAgICAgIHJldHVybiBzYW5kYm94X2V4dGVuc2lvbl9pc3N1ZV9maWxlKEFQUF9TQU5EQk9YX1JF
QUQsIHBhdGgsIDApOwogICAgICAgICBjYXNlIFNhbmRib3hFeHRlbnNpb246OlR5cGU6OlJlYWRX
cml0ZToKICAgICAgICAgICAgIHJldHVybiBzYW5kYm94X2V4dGVuc2lvbl9pc3N1ZV9maWxlKEFQ
UF9TQU5EQk9YX1JFQURfV1JJVEUsIHBhdGgsIDApOworICAgICAgICBjYXNlIFNhbmRib3hFeHRl
bnNpb246OlR5cGU6Ok1hY2g6CisgICAgICAgICAgICByZXR1cm4gc2FuZGJveF9leHRlbnNpb25f
aXNzdWVfbWFjaF90b19wcm9jZXNzX2J5X3BpZCgiY29tLmFwcGxlLndlYmtpdC5leHRlbnNpb24u
bWFjaCIsIHBhdGgsIDAsIHBpZC52YWx1ZSgpKTsKICAgICAgICAgY2FzZSBTYW5kYm94RXh0ZW5z
aW9uOjpUeXBlOjpHZW5lcmljOgogICAgICAgICAgICAgcmV0dXJuIHNhbmRib3hfZXh0ZW5zaW9u
X2lzc3VlX2dlbmVyaWMocGF0aCwgMCk7CiAgICAgICAgIH0KICAgICB9CiAKLSAgICBTYW5kYm94
RXh0ZW5zaW9uSW1wbChjb25zdCBjaGFyKiBwYXRoLCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5
cGUpCi0gICAgICAgIDogbV90b2tlbiB7IHNhbmRib3hFeHRlbnNpb25Gb3JUeXBlKHBhdGgsIHR5
cGUpIH0KKyAgICBTYW5kYm94RXh0ZW5zaW9uSW1wbChjb25zdCBjaGFyKiBwYXRoLCBTYW5kYm94
RXh0ZW5zaW9uOjpUeXBlIHR5cGUsIE9wdGlvbmFsPHBpZF90PiBwaWQgPSBXVEY6Om51bGxvcHQp
CisgICAgICAgIDogbV90b2tlbiB7IHNhbmRib3hFeHRlbnNpb25Gb3JUeXBlKHBhdGgsIHR5cGUs
IHBpZCkgfQogICAgIHsKICAgICB9CiAKQEAgLTM1Nyw2ICszNjEsMTkgQEAgYm9vbCBTYW5kYm94
RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JHZQogICAgIHJldHVybiB0cnVlOwogfQogCitib29s
IFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXBCeVBpZChjb25zdCBT
dHJpbmcmIHNlcnZpY2UsIHBpZF90IHBpZCwgSGFuZGxlJiBoYW5kbGUpCit7CisgICAgQVNTRVJU
KCFoYW5kbGUubV9zYW5kYm94RXh0ZW5zaW9uKTsKKyAgICAKKyAgICBoYW5kbGUubV9zYW5kYm94
RXh0ZW5zaW9uID0gU2FuZGJveEV4dGVuc2lvbkltcGw6OmNyZWF0ZShzZXJ2aWNlLnV0ZjgoKS5k
YXRhKCksIFR5cGU6Ok1hY2gsIHBpZCk7CisgICAgaWYgKCFoYW5kbGUubV9zYW5kYm94RXh0ZW5z
aW9uKSB7CisgICAgICAgIFdURkxvZ0Fsd2F5cygiQ291bGQgbm90IGNyZWF0ZSBhICclcycgc2Fu
ZGJveCBleHRlbnNpb24iLCBzZXJ2aWNlLnV0ZjgoKS5kYXRhKCkpOworICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgfQorICAgIAorICAgIHJldHVybiB0cnVlOworfQorCiBTYW5kYm94RXh0ZW5z
aW9uOjpTYW5kYm94RXh0ZW5zaW9uKGNvbnN0IEhhbmRsZSYgaGFuZGxlKQogICAgIDogbV9zYW5k
Ym94RXh0ZW5zaW9uKFdURk1vdmUoaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbikpCiB7CkluZGV4
OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAJKHJldmlzaW9u
IDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTc1OSw2ICs3NTksOCBAQCB2b2lkIFdlYlByb2Nlc3NQcm94eTo6
ZGlkRmluaXNoTGF1bmNoaW5nCiAgICAgICAgIGlmICh4cGNfY29ubmVjdGlvbl90IHhwY0Nvbm5l
Y3Rpb24gPSBjb25uZWN0aW9uKCktPnhwY0Nvbm5lY3Rpb24oKSkKICAgICAgICAgICAgIG1fdGhy
b3R0bGVyLmRpZENvbm5lY3RUb1Byb2Nlc3MoeHBjX2Nvbm5lY3Rpb25fZ2V0X3BpZCh4cGNDb25u
ZWN0aW9uKSk7CiAgICAgfQorCisgICAgdW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXJJZk5lZWRl
ZCgpOwogI2VuZGlmCiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nl
c3NQcm94eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nl
c3NQcm94eS5oCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQcm9jZXNzUHJveHkuaAkod29ya2luZyBjb3B5KQpAQCAtMjkyLDYgKzI5MiwxMCBAQCBwdWJs
aWM6CiAgICAgdm9pZCByZXZva2VBdWRpb0NhcHR1cmVFeHRlbnNpb24oKSB7IG1fbWVkaWFDYXB0
dXJlU2FuZGJveEV4dGVuc2lvbnMgJj0gfkF1ZGlvOyB9CiAjZW5kaWYKIAorI2lmIFBMQVRGT1JN
KElPU19GQU1JTFkpCisgICAgdm9pZCB1bmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVk
KCk7CisjZW5kaWYKKwogcHJvdGVjdGVkOgogICAgIHN0YXRpYyB1aW50NjRfdCBnZW5lcmF0ZVBh
Z2VJRCgpOwogICAgIFdlYlByb2Nlc3NQcm94eShXZWJQcm9jZXNzUG9vbCYsIFdlYnNpdGVEYXRh
U3RvcmUmLCBJc1ByZXdhcm1lZCk7CkBAIC00MzAsNiArNDM0LDcgQEAgcHJpdmF0ZToKICNpZiBQ
TEFURk9STShJT1NfRkFNSUxZKQogICAgIEZvcmVncm91bmRXZWJQcm9jZXNzVG9rZW4gbV9mb3Jl
Z3JvdW5kVG9rZW47CiAgICAgQmFja2dyb3VuZFdlYlByb2Nlc3NUb2tlbiBtX2JhY2tncm91bmRU
b2tlbjsKKyAgICBib29sIG1faGFzU2VudE1lc3NhZ2VUb1VuYmxvY2tBY2Nlc3NpYmlsaXR5U2Vy
dmVyIHsgZmFsc2UgfTsKICNlbmRpZgogCiAgICAgSGFzaE1hcDxTdHJpbmcsIHVpbnQ2NF90PiBt
X3BhZ2VVUkxSZXRhaW5Db3VudE1hcDsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lv
cy9XZWJQYWdlUHJveHlJT1MubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5tbQkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5tbQkod29ya2luZyBjb3B5KQpAQCAt
NjczLDYgKzY3Myw3IEBAIHZvaWQgV2ViUGFnZVByb3h5OjphcHBsaWNhdGlvbldpbGxFbnRlckYK
ICAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkFwcGxpY2F0aW9uV2lsbEVu
dGVyRm9yZWdyb3VuZChpc1N1c3BlbmRlZFVuZGVyTG9jayksIG1fcGFnZUlEKTsKICAgICBtX3By
b2Nlc3MtPnNldEtleWJvYXJkSXNBdHRhY2hlZChbVUlLZXlib2FyZCBpc0luSGFyZHdhcmVLZXli
b2FyZE1vZGVdKTsKICAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkhhcmR3
YXJlS2V5Ym9hcmRBdmFpbGFiaWxpdHlDaGFuZ2VkKG1fcHJvY2Vzcy0+a2V5Ym9hcmRJc0F0dGFj
aGVkKCkpLCBtX3BhZ2VJRCk7CisgICAgbV9wcm9jZXNzLT51bmJsb2NrQWNjZXNzaWJpbGl0eVNl
cnZlcklmTmVlZGVkKCk7CiB9CiAKIHZvaWQgV2ViUGFnZVByb3h5OjphcHBsaWNhdGlvbldpbGxS
ZXNpZ25BY3RpdmUoKQpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dlYlByb2Nl
c3NQcm94eUlPUy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
V2ViUHJvY2Vzc1Byb3h5SU9TLm1tCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9pb3MvV2ViUHJvY2Vzc1Byb3h5SU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0z
MSw2ICszMSw4IEBACiAjaW1wb3J0ICJXS0Z1bGxLZXlib2FyZEFjY2Vzc1dhdGNoZXIuaCIKICNp
bXBvcnQgIldlYlByb2Nlc3NNZXNzYWdlcy5oIgogCisjaW1wb3J0IDxBY2Nlc3NpYmlsaXR5U3Vw
cG9ydC5oPgorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogYm9vbCBXZWJQcm9jZXNzUHJveHk6OmZ1
bGxLZXlib2FyZEFjY2Vzc0VuYWJsZWQoKQpAQCAtNDIsNiArNDQsMjMgQEAgYm9vbCBXZWJQcm9j
ZXNzUHJveHk6OmZ1bGxLZXlib2FyZEFjY2VzcwogI2VuZGlmCiB9CiAKK3ZvaWQgV2ViUHJvY2Vz
c1Byb3h5Ojp1bmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKCkKK3sKKyAgICBpZiAo
bV9oYXNTZW50TWVzc2FnZVRvVW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIpCisgICAgICAgIHJl
dHVybjsKKyAgICBpZiAoIV9BWFNBcHBsaWNhdGlvbkFjY2Vzc2liaWxpdHlFbmFibGVkKCkpCisg
ICAgICAgIHJldHVybjsKKyAgICBpZiAoIXByb2Nlc3NJZGVudGlmaWVyKCkpCisgICAgICAgIHJl
dHVybjsKKworICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBoYW5kbGU7CisgICAgaWYgKCFT
YW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JNYWNoTG9va3VwQnlQaWQoImNvbS5hcHBs
ZS5pcGhvbmUuYXhzZXJ2ZXItc3lzdGVtd2lkZSIsIHByb2Nlc3NJZGVudGlmaWVyKCksIGhhbmRs
ZSkpCisgICAgICAgIHJldHVybjsKKworICAgIHNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3M6OlVu
YmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyKGhhbmRsZSksIDApOworICAgIG1faGFzU2VudE1lc3Nh
Z2VUb1VuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyID0gdHJ1ZTsKK30KKwogfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CiAKICNlbmRpZiAvLyBQTEFURk9STShJT1NfRkFNSUxZKQpJbmRleDogU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAkocmV2aXNpb24gMjQyNDAzKQorKysgU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0x
ODYwLDQgKzE4NjAsMTIgQEAgdm9pZCBXZWJQcm9jZXNzOjpjbGVhckN1cnJlbnRNb2RpZmllclN0
YQogICAgIFBsYXRmb3JtS2V5Ym9hcmRFdmVudDo6c2V0Q3VycmVudE1vZGlmaWVyU3RhdGUoeyB9
KTsKIH0KIAorI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCit2b2lkIFdlYlByb2Nlc3M6OnVuYmxv
Y2tBY2Nlc3NpYmlsaXR5U2VydmVyKGNvbnN0IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSYgaGFu
ZGxlKQoreworICAgIGJvb2wgb2sgPSBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50
bHkoaGFuZGxlKTsKKyAgICBBU1NFUlRfVU5VU0VEKG9rLCBvayk7Cit9CisjZW5kaWYKKwogfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJv
Y2Vzcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNz
LmgJKHJldmlzaW9uIDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9j
ZXNzLmgJKHdvcmtpbmcgY29weSkKQEAgLTI0NCw2ICsyNDQsOCBAQCBwdWJsaWM6CiAKICNpZiBQ
TEFURk9STShJT1NfRkFNSUxZKQogICAgIHZvaWQgYWNjZXNzaWJpbGl0eVByb2Nlc3NTdXNwZW5k
ZWROb3RpZmljYXRpb24oYm9vbCk7CisgICAgCisgICAgdm9pZCB1bmJsb2NrQWNjZXNzaWJpbGl0
eVNlcnZlcihjb25zdCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmKTsKICNlbmRpZgogCiAjaWYg
UExBVEZPUk0oQ09DT0EpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vz
cy5tZXNzYWdlcy5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UHJvY2Vzcy5tZXNzYWdlcy5pbgkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVzc2FnZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTE1Myw0
ICsxNTMsOCBAQCBtZXNzYWdlcyAtPiBXZWJQcm9jZXNzIExlZ2FjeVJlY2VpdmVyIHsKICNlbmRp
ZgogCiAgICAgQ2xlYXJDdXJyZW50TW9kaWZpZXJTdGF0ZUZvclRlc3RpbmcoKQorCisjaWYgUExB
VEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBVbmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcihXZWJLaXQ6
OlNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBoYW5kbGUpCisjZW5kaWYKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363765</attachid>
            <date>2019-03-06 11:39:31 -0800</date>
            <delta_ts>2019-03-06 12:06:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195342-20190306113930.patch</filename>
            <type>text/plain</type>
            <size>15650</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE5LTAzLTA1ICBQZXIgQXJuZSBWb2xsYW4gIDxw
dm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0
eSBzZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIFNQSSB0byBpc3N1ZSBhIG1h
Y2ggZXh0ZW5zaW9uIHRvIGEgcHJvY2VzcyBieSBwaWQuCisKKyAgICAgICAgKiB3dGYvc3BpL2Rh
cndpbi9TYW5kYm94U1BJLmg6CisKIDIwMTktMDItMjggIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdl
YmtpdC5vcmc+CiAKICAgICAgICAgQWRkIFdlYWtIYXNoU2V0CkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9zcGkvZGFyd2luL1NhbmRib3hTUEkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9z
cGkvZGFyd2luL1NhbmRib3hTUEkuaAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dURi93
dGYvc3BpL2Rhcndpbi9TYW5kYm94U1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTYzLDYgKzYzLDcg
QEAgZXh0ZXJuIGNvbnN0IGVudW0gc2FuZGJveF9maWx0ZXJfdHlwZSBTQQogCiBjaGFyICpzYW5k
Ym94X2V4dGVuc2lvbl9pc3N1ZV9maWxlKGNvbnN0IGNoYXIgKmV4dGVuc2lvbl9jbGFzcywgY29u
c3QgY2hhciAqcGF0aCwgdWludDMyX3QgZmxhZ3MpOwogY2hhciAqc2FuZGJveF9leHRlbnNpb25f
aXNzdWVfZ2VuZXJpYyhjb25zdCBjaGFyICpleHRlbnNpb25fY2xhc3MsIHVpbnQzMl90IGZsYWdz
KTsKK2NoYXIgKnNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX21hY2hfdG9fcHJvY2Vzc19ieV9waWQo
Y29uc3QgY2hhciAqZXh0ZW5zaW9uX2NsYXNzLCBjb25zdCBjaGFyICpuYW1lLCB1aW50MzJfdCBm
bGFncywgcGlkX3QpOwogaW50IHNhbmRib3hfY2hlY2socGlkX3QsIGNvbnN0IGNoYXIgKm9wZXJh
dGlvbiwgZW51bSBzYW5kYm94X2ZpbHRlcl90eXBlLCAuLi4pOwogaW50IHNhbmRib3hfY2hlY2tf
YnlfYXVkaXRfdG9rZW4oYXVkaXRfdG9rZW5fdCwgY29uc3QgY2hhciAqb3BlcmF0aW9uLCBlbnVt
IHNhbmRib3hfZmlsdGVyX3R5cGUsIC4uLik7CiBpbnQgc2FuZGJveF9jb250YWluZXJfcGF0aF9m
b3JfcGlkKHBpZF90LCBjaGFyICpidWZmZXIsIHNpemVfdCBidWZzaXplKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNDI1NTYpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDM2IEBACisyMDE5LTAzLTA2ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9s
bGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0eSBz
ZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQnkgZGVmYXVsdCwgYmxvY2sgdGhlIGlP
UyBhY2Nlc3NpYmlsaXR5IHNlcnZlciBpbiB0aGUgc2FuZGJveC4gSWYgYWNjZXNzaWJpbGl0eSBp
cyBlbmFibGVkLAorICAgICAgICBsZXQgdGhlIFVJIHByb2Nlc3MgaXNzdWUgYSBtYWNoIGV4dGVu
c2lvbiB0byB0aGUgV2ViQ29udGVudCBwcm9jZXNzLiBUaGUgc2FuZGJveCBleHRlbnNpb24KKyAg
ICAgICAgaXMgc2VudCB0byB0aGUgV2ViQ29udGVudCBwcm9jZXNzIHRvIGJlIGNvbnN1bWVkLgor
CisgICAgICAgICogUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3VwcG9ydFNQSS5oOgor
ICAgICAgICAqIFJlc291cmNlcy9TYW5kYm94UHJvZmlsZXMvaW9zL2NvbS5hcHBsZS5XZWJLaXQu
V2ViQ29udGVudC5zYjoKKyAgICAgICAgKiBTaGFyZWQvU2FuZGJveEV4dGVuc2lvbi5oOgorICAg
ICAgICAqIFNoYXJlZC9tYWMvU2FuZGJveEV4dGVuc2lvbk1hYy5tbToKKyAgICAgICAgKFdlYktp
dDo6U2FuZGJveEV4dGVuc2lvbkltcGw6OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OlNhbmRi
b3hFeHRlbnNpb25JbXBsOjpzYW5kYm94RXh0ZW5zaW9uRm9yVHlwZSk6CisgICAgICAgIChXZWJL
aXQ6OlNhbmRib3hFeHRlbnNpb25JbXBsOjpTYW5kYm94RXh0ZW5zaW9uSW1wbCk6CisgICAgICAg
IChXZWJLaXQ6OlNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXBCeVBp
ZCk6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW06Cisg
ICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjpyZWdpc3Rlck5vdGlmaWNhdGlvbk9ic2Vy
dmVycyk6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjp1bnJlZ2lzdGVyTm90aWZp
Y2F0aW9uT2JzZXJ2ZXJzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViUHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVuY2hpbmcpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJQcm9jZXNzUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dlYlByb2Nl
c3NQcm94eUlPUy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5Ojp1bmJsb2Nr
QWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBy
b2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzOjp1bmJsb2NrQWNjZXNzaWJp
bGl0eVNlcnZlcik6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmg6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluOgorCiAyMDE5LTAzLTA2ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjIzODQ5
MCk6IFlvdVR1YmUuY29tOiBSZXR1cm5pbmcgUGlQIHRvIFNhZmFyaSBhZnRlciBzbGVlcGluZyBk
ZXZpY2UgbG9zZXMgcGFnZQpJbmRleDogU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkvaW9zL0Fj
Y2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9QbGF0
Zm9ybS9zcGkvaW9zL0FjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgJKHJldmlzaW9uIDI0MjQwMykK
KysrIFNvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3VwcG9ydFNQ
SS5oCSh3b3JraW5nIGNvcHkpCkBAIC00MSw2ICs0MSw4IEBAIFdURl9FWFRFUk5fQ19CRUdJTgog
I2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiBleHRlcm4gQm9vbGVhbiBfQVhTS2V5UmVwZWF0RW5h
YmxlZCgpOwogZXh0ZXJuIENGVGltZUludGVydmFsIF9BWFNLZXlSZXBlYXREZWxheSgpOworZXh0
ZXJuIEJvb2xlYW4gX0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVuYWJsZWQoKTsKK2V4dGVy
biBDRlN0cmluZ1JlZiBrQVhTQXBwbGljYXRpb25BY2Nlc3NpYmlsaXR5RW5hYmxlZE5vdGlmaWNh
dGlvbjsKICNlbmRpZgogCiAjaWYgRU5BQkxFKEFDQ0VTU0lCSUxJVFlfRVZFTlRTKQpJbmRleDog
U291cmNlL1dlYktpdC9SZXNvdXJjZXMvU2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2Vi
S2l0LldlYkNvbnRlbnQuc2IKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9SZXNvdXJjZXMv
U2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuc2IJKHJldmlz
aW9uIDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvUmVzb3VyY2VzL1NhbmRib3hQcm9maWxlcy9p
b3MvY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LnNiCSh3b3JraW5nIGNvcHkpCkBAIC0xODcs
NyArMTg3LDYgQEAKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQuaGlkLmZv
Y3VzIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQuaGlkLnNlcnZpY2Vz
IikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pb2hpZGV2ZW50c3lzdGVtIikKLSAgICAo
Z2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pcGhvbmUuYXhzZXJ2ZXItc3lzdGVtd2lkZSIpCiAgICAg
KGdsb2JhbC1uYW1lICJjb20uYXBwbGUuZnJvbnRib2FyZC53b3Jrc3BhY2UiKQogICAgIChnbG9i
YWwtbmFtZSAiY29tLmFwcGxlLmZyb250Ym9hcmQuc3lzdGVtYXBwc2VydmljZXMiKSkKIApAQCAt
NDUwLDYgKzQ0OSw4IEBACiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuY29yZW1lZGlhLmRl
Y29tcHJlc3Npb25zZXNzaW9uIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5jb3JlbWVk
aWEudmlkZW9xdWV1ZSIpKQogCisoYWxsb3cgbWFjaC1sb29rdXAgKGV4dGVuc2lvbiAiY29tLmFw
cGxlLndlYmtpdC5leHRlbnNpb24ubWFjaCIpKQorCiA7OyBUaGVzZSBzZXJ2aWNlcyBoYXZlIGJl
ZW4gaWRlbnRpZmllZCBhcyB1bnVzZWQgZHVyaW5nIGxpdmluZy1vbi4KIDs7IFRoaXMgbGlzdCBv
dmVycmlkZXMgc29tZSBkZWZpbml0aW9ucyBhYm92ZSBhbmQgaW4gY29tbW9uLnNiLgogOzsgRklY
TUU6IHJlbW92ZSBvdmVycmlkZGVuIHJ1bGVzIG9uY2UgdGhlIGZpbmFsIGxpc3QgaGFzIGJlZW4K
QEAgLTQ3NSw3ICs0NzYsNiBAQAogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFjY2Vzc2li
aWxpdHkuQWNjZXNzaWJpbGl0eVVJU2VydmVyIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBs
ZS5hY2Nlc3NpYmlsaXR5LmhlYXJkIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hY2Nv
dW50c2QuYWNjb3VudG1hbmFnZXIiKQotICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFwcC1z
YW5kYm94Lm1hY2giKQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFwcHN1cHBvcnQuY3Bs
b2dkIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hc3NlcnRpb25kLmFwcGxpY2F0aW9u
c3RhdGVjb25uZWN0aW9uIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hc3NlcnRpb25k
LmV4cGlyYXRpb24iKQpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVuc2lv
bi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1NhbmRib3hFeHRlbnNpb24u
aAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVu
c2lvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC00Niw2ICs0Niw3IEBAIHB1YmxpYzoKICAgICBlbnVt
IGNsYXNzIFR5cGUgewogICAgICAgICBSZWFkT25seSwKICAgICAgICAgUmVhZFdyaXRlLAorICAg
ICAgICBNYWNoLAogICAgICAgICBHZW5lcmljLAogICAgIH07CiAKQEAgLTEwMSw2ICsxMDIsNyBA
QCBwdWJsaWM6CiAgICAgc3RhdGljIGJvb2wgY3JlYXRlSGFuZGxlRm9yUmVhZFdyaXRlRGlyZWN0
b3J5KGNvbnN0IFN0cmluZyYgcGF0aCwgSGFuZGxlJik7IC8vIFdpbGwgYXR0ZW1wdCB0byBjcmVh
dGUgdGhlIGRpcmVjdG9yeS4KICAgICBzdGF0aWMgU3RyaW5nIGNyZWF0ZUhhbmRsZUZvclRlbXBv
cmFyeUZpbGUoY29uc3QgU3RyaW5nJiBwcmVmaXgsIFR5cGUsIEhhbmRsZSYpOwogICAgIHN0YXRp
YyBib29sIGNyZWF0ZUhhbmRsZUZvckdlbmVyaWNFeHRlbnNpb24oY29uc3QgU3RyaW5nJiBleHRl
bnNpb25DbGFzcywgSGFuZGxlJik7CisgICAgc3RhdGljIGJvb2wgY3JlYXRlSGFuZGxlRm9yTWFj
aExvb2t1cEJ5UGlkKGNvbnN0IFN0cmluZyYgc2VydmljZSwgcGlkX3QsIEhhbmRsZSYpOwogICAg
IH5TYW5kYm94RXh0ZW5zaW9uKCk7CiAKICAgICBib29sIGNvbnN1bWUoKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCShyZXZpc2lv
biAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvU2FuZGJveEV4dGVuc2lvbk1h
Yy5tbQkod29ya2luZyBjb3B5KQpAQCAtNDAsOSArNDAsOSBAQCBuYW1lc3BhY2UgV2ViS2l0IHsK
IAogY2xhc3MgU2FuZGJveEV4dGVuc2lvbkltcGwgewogcHVibGljOgotICAgIHN0YXRpYyBzdGQ6
OnVuaXF1ZV9wdHI8U2FuZGJveEV4dGVuc2lvbkltcGw+IGNyZWF0ZShjb25zdCBjaGFyKiBwYXRo
LCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUpCisgICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0
cjxTYW5kYm94RXh0ZW5zaW9uSW1wbD4gY3JlYXRlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRib3hF
eHRlbnNpb246OlR5cGUgdHlwZSwgT3B0aW9uYWw8cGlkX3Q+IHBpZCA9IFdURjo6bnVsbG9wdCkK
ICAgICB7Ci0gICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxTYW5kYm94RXh0ZW5zaW9uSW1wbD4gaW1w
bCB7IG5ldyBTYW5kYm94RXh0ZW5zaW9uSW1wbChwYXRoLCB0eXBlKSB9OworICAgICAgICBzdGQ6
OnVuaXF1ZV9wdHI8U2FuZGJveEV4dGVuc2lvbkltcGw+IGltcGwgeyBuZXcgU2FuZGJveEV4dGVu
c2lvbkltcGwocGF0aCwgdHlwZSwgcGlkKSB9OwogICAgICAgICBpZiAoIWltcGwtPm1fdG9rZW4p
CiAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAgICAgcmV0dXJuIGltcGw7CkBAIC02
MSwxMCArNjEsMTIgQEAgcHVibGljOgogICAgIGJvb2wgY29uc3VtZSgpIFdBUk5fVU5VU0VEX1JF
VFVSTgogICAgIHsKICAgICAgICAgbV9oYW5kbGUgPSBzYW5kYm94X2V4dGVuc2lvbl9jb25zdW1l
KG1fdG9rZW4pOworICAgICAgICBpZiAobV9oYW5kbGUgPT0gLTEpCisgICAgICAgICAgICBMT0df
RVJST1IoIkNvdWxkIG5vdCBjcmVhdGUgYSBzYW5kYm94IGV4dGVuc2lvbiBmb3IgJyVzJywgZXJy
bm8gPSAlZCIsIG1fdG9rZW4sIGVycm5vKTsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZX1NJTVVM
QVRPUikKICAgICAgICAgcmV0dXJuICFzYW5kYm94X2NoZWNrKGdldHBpZCgpLCAwLCBTQU5EQk9Y
X0ZJTFRFUl9OT05FKTsKICNlbHNlCi0gICAgICAgIHJldHVybiBtX2hhbmRsZTsKKyAgICAgICAg
cmV0dXJuIG1faGFuZGxlICE9IC0xOwogI2VuZGlmCiAgICAgfQogCkBAIC04MCwyMCArODIsMjIg
QEAgcHVibGljOgogICAgIH0KIAogcHJpdmF0ZToKLSAgICBjaGFyKiBzYW5kYm94RXh0ZW5zaW9u
Rm9yVHlwZShjb25zdCBjaGFyKiBwYXRoLCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUpCisg
ICAgY2hhciogc2FuZGJveEV4dGVuc2lvbkZvclR5cGUoY29uc3QgY2hhciogcGF0aCwgU2FuZGJv
eEV4dGVuc2lvbjo6VHlwZSB0eXBlLCBPcHRpb25hbDxwaWRfdD4gcGlkID0gV1RGOjpudWxsb3B0
KQogICAgIHsKICAgICAgICAgc3dpdGNoICh0eXBlKSB7CiAgICAgICAgIGNhc2UgU2FuZGJveEV4
dGVuc2lvbjo6VHlwZTo6UmVhZE9ubHk6CiAgICAgICAgICAgICByZXR1cm4gc2FuZGJveF9leHRl
bnNpb25faXNzdWVfZmlsZShBUFBfU0FOREJPWF9SRUFELCBwYXRoLCAwKTsKICAgICAgICAgY2Fz
ZSBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpSZWFkV3JpdGU6CiAgICAgICAgICAgICByZXR1cm4g
c2FuZGJveF9leHRlbnNpb25faXNzdWVfZmlsZShBUFBfU0FOREJPWF9SRUFEX1dSSVRFLCBwYXRo
LCAwKTsKKyAgICAgICAgY2FzZSBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpNYWNoOgorICAgICAg
ICAgICAgcmV0dXJuIHNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX21hY2hfdG9fcHJvY2Vzc19ieV9w
aWQoImNvbS5hcHBsZS53ZWJraXQuZXh0ZW5zaW9uLm1hY2giLCBwYXRoLCAwLCBwaWQudmFsdWUo
KSk7CiAgICAgICAgIGNhc2UgU2FuZGJveEV4dGVuc2lvbjo6VHlwZTo6R2VuZXJpYzoKICAgICAg
ICAgICAgIHJldHVybiBzYW5kYm94X2V4dGVuc2lvbl9pc3N1ZV9nZW5lcmljKHBhdGgsIDApOwog
ICAgICAgICB9CiAgICAgfQogCi0gICAgU2FuZGJveEV4dGVuc2lvbkltcGwoY29uc3QgY2hhciog
cGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlKQotICAgICAgICA6IG1fdG9rZW4geyBz
YW5kYm94RXh0ZW5zaW9uRm9yVHlwZShwYXRoLCB0eXBlKSB9CisgICAgU2FuZGJveEV4dGVuc2lv
bkltcGwoY29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlLCBPcHRp
b25hbDxwaWRfdD4gcGlkID0gV1RGOjpudWxsb3B0KQorICAgICAgICA6IG1fdG9rZW4geyBzYW5k
Ym94RXh0ZW5zaW9uRm9yVHlwZShwYXRoLCB0eXBlLCBwaWQpIH0KICAgICB7CiAgICAgfQogCkBA
IC0zNTcsNiArMzYxLDE5IEBAIGJvb2wgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9y
R2UKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorYm9vbCBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVI
YW5kbGVGb3JNYWNoTG9va3VwQnlQaWQoY29uc3QgU3RyaW5nJiBzZXJ2aWNlLCBwaWRfdCBwaWQs
IEhhbmRsZSYgaGFuZGxlKQoreworICAgIEFTU0VSVCghaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lv
bik7CisgICAgCisgICAgaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbiA9IFNhbmRib3hFeHRlbnNp
b25JbXBsOjpjcmVhdGUoc2VydmljZS51dGY4KCkuZGF0YSgpLCBUeXBlOjpNYWNoLCBwaWQpOwor
ICAgIGlmICghaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbikgeworICAgICAgICBXVEZMb2dBbHdh
eXMoIkNvdWxkIG5vdCBjcmVhdGUgYSAnJXMnIHNhbmRib3ggZXh0ZW5zaW9uIiwgc2VydmljZS51
dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICAKKyAgICBy
ZXR1cm4gdHJ1ZTsKK30KKwogU2FuZGJveEV4dGVuc2lvbjo6U2FuZGJveEV4dGVuc2lvbihjb25z
dCBIYW5kbGUmIGhhbmRsZSkKICAgICA6IG1fc2FuZGJveEV4dGVuc2lvbihXVEZNb3ZlKGhhbmRs
ZS5tX3NhbmRib3hFeHRlbnNpb24pKQogewpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Bvb2wuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQcm9jZXNzUG9vbC5oCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQcm9jZXNzUG9vbC5oCSh3b3JraW5nIGNvcHkpCkBAIC02NjIsNiArNjYyLDEwIEBA
IHByaXZhdGU6CiAgICAgc3RkOjp1bmlxdWVfcHRyPFBlckFjdGl2aXR5U3RhdGVDUFVVc2FnZVNh
bXBsZXI+IG1fcGVyQWN0aXZpdHlTdGF0ZUNQVVVzYWdlU2FtcGxlcjsKICNlbmRpZgogCisjaWYg
UExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBSZXRhaW5QdHI8TlNPYmplY3Q+IG1fYWNjZXNzaWJp
bGl0eUVuYWJsZWRPYnNlcnZlcjsKKyNlbmRpZgorCiAgICAgYm9vbCBtX3Nob3VsZFVzZVRlc3Rp
bmdOZXR3b3JrU2Vzc2lvbiB7IGZhbHNlIH07CiAKICAgICBib29sIG1fcHJvY2Vzc1Rlcm1pbmF0
aW9uRW5hYmxlZCB7IHRydWUgfTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBy
b2Nlc3NQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Byb3h5LmNwcAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzU5LDYgKzc1OSw4
IEBAIHZvaWQgV2ViUHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVuY2hpbmcKICAgICAgICAgaWYg
KHhwY19jb25uZWN0aW9uX3QgeHBjQ29ubmVjdGlvbiA9IGNvbm5lY3Rpb24oKS0+eHBjQ29ubmVj
dGlvbigpKQogICAgICAgICAgICAgbV90aHJvdHRsZXIuZGlkQ29ubmVjdFRvUHJvY2Vzcyh4cGNf
Y29ubmVjdGlvbl9nZXRfcGlkKHhwY0Nvbm5lY3Rpb24pKTsKICAgICB9CisKKyAgICB1bmJsb2Nr
QWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKCk7CiAjZW5kaWYKIH0KIApJbmRleDogU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgJKHJldmlzaW9uIDI0MjQwMykKKysr
IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yOTIsNiArMjkyLDEwIEBAIHB1YmxpYzoKICAgICB2b2lkIHJldm9rZUF1ZGlvQ2FwdHVy
ZUV4dGVuc2lvbigpIHsgbV9tZWRpYUNhcHR1cmVTYW5kYm94RXh0ZW5zaW9ucyAmPSB+QXVkaW87
IH0KICNlbmRpZgogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICB2b2lkIHVuYmxvY2tB
Y2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQoKTsKKyNlbmRpZgorCiBwcm90ZWN0ZWQ6CiAgICAg
c3RhdGljIHVpbnQ2NF90IGdlbmVyYXRlUGFnZUlEKCk7CiAgICAgV2ViUHJvY2Vzc1Byb3h5KFdl
YlByb2Nlc3NQb29sJiwgV2Vic2l0ZURhdGFTdG9yZSYsIElzUHJld2FybWVkKTsKQEAgLTQzMCw2
ICs0MzQsNyBAQCBwcml2YXRlOgogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgRm9yZWdy
b3VuZFdlYlByb2Nlc3NUb2tlbiBtX2ZvcmVncm91bmRUb2tlbjsKICAgICBCYWNrZ3JvdW5kV2Vi
UHJvY2Vzc1Rva2VuIG1fYmFja2dyb3VuZFRva2VuOworICAgIGJvb2wgbV9oYXNTZW50TWVzc2Fn
ZVRvVW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIgeyBmYWxzZSB9OwogI2VuZGlmCiAKICAgICBI
YXNoTWFwPFN0cmluZywgdWludDY0X3Q+IG1fcGFnZVVSTFJldGFpbkNvdW50TWFwOwpJbmRleDog
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xDb2NvYS5tbQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQcm9jZXNzUG9vbENv
Y29hLm1tCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9XZWJQcm9jZXNzUG9vbENvY29hLm1tCSh3b3JraW5nIGNvcHkpCkBAIC00MjUsNyArNDI1LDEz
IEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnJlZ2lzdGVyTm90aWZpY2F0aW8KICAgICBtX2RlYWN0
aXZhdGlvbk9ic2VydmVyID0gW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBh
ZGRPYnNlcnZlckZvck5hbWU6TlNBcHBsaWNhdGlvbkRpZFJlc2lnbkFjdGl2ZU5vdGlmaWNhdGlv
biBvYmplY3Q6TlNBcHAgcXVldWU6W05TT3BlcmF0aW9uUXVldWUgY3VycmVudFF1ZXVlXSB1c2lu
Z0Jsb2NrOl4oTlNOb3RpZmljYXRpb24gKm5vdGlmaWNhdGlvbikgewogICAgICAgICBzZXRBcHBs
aWNhdGlvbklzQWN0aXZlKGZhbHNlKTsKICAgICB9XTsKLQorI2Vsc2UKKyAgICBtX2FjY2Vzc2li
aWxpdHlFbmFibGVkT2JzZXJ2ZXIgPSBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50
ZXJdIGFkZE9ic2VydmVyRm9yTmFtZTooX19icmlkZ2UgaWQpa0FYU0FwcGxpY2F0aW9uQWNjZXNz
aWJpbGl0eUVuYWJsZWROb3RpZmljYXRpb24gb2JqZWN0Om5pbCBxdWV1ZTpbTlNPcGVyYXRpb25R
dWV1ZSBjdXJyZW50UXVldWVdIHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlvbiAqbm90ZSkgewor
ICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fcHJvY2Vzc2VzLnNpemUoKTsgKytpKSB7
CisgICAgICAgICAgICBXZWJQcm9jZXNzUHJveHkqIHByb2Nlc3MgPSBtX3Byb2Nlc3Nlc1tpXS5n
ZXQoKTsKKyAgICAgICAgICAgIHByb2Nlc3MtPnVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVySWZO
ZWVkZWQoKTsKKyAgICAgICAgfQorICAgIH1dOwogI2VuZGlmIC8vICFQTEFURk9STShJT1NfRkFN
SUxZKQogfQogCkBAIC00NDMsNiArNDQ5LDggQEAgdm9pZCBXZWJQcm9jZXNzUG9vbDo6dW5yZWdp
c3Rlck5vdGlmaWNhdAogI2VuZGlmCiAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0
Q2VudGVyXSByZW1vdmVPYnNlcnZlcjptX2FjdGl2YXRpb25PYnNlcnZlci5nZXQoKV07CiAgICAg
W1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNlcnZlcjptX2Rl
YWN0aXZhdGlvbk9ic2VydmVyLmdldCgpXTsKKyNlbHNlCisgICAgW1tOU05vdGlmaWNhdGlvbkNl
bnRlciBkZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNlcnZlcjptX2FjY2Vzc2liaWxpdHlFbmFibGVk
T2JzZXJ2ZXIuZ2V0KCldOwogI2VuZGlmIC8vICFQTEFURk9STShJT1NfRkFNSUxZKQogfQogCklu
ZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV2ViUHJvY2Vzc1Byb3h5SU9TLm1tCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQcm9jZXNzUHJveHlJ
T1MubW0JKHJldmlzaW9uIDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9X
ZWJQcm9jZXNzUHJveHlJT1MubW0JKHdvcmtpbmcgY29weSkKQEAgLTI4LDYgKzI4LDcgQEAKIAog
I2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAKKyNpbXBvcnQgIkFjY2Vzc2liaWxpdHlTdXBwb3J0
U1BJLmgiCiAjaW1wb3J0ICJXS0Z1bGxLZXlib2FyZEFjY2Vzc1dhdGNoZXIuaCIKICNpbXBvcnQg
IldlYlByb2Nlc3NNZXNzYWdlcy5oIgogCkBAIC00Miw2ICs0MywyNSBAQCBib29sIFdlYlByb2Nl
c3NQcm94eTo6ZnVsbEtleWJvYXJkQWNjZXNzCiAjZW5kaWYKIH0KIAordm9pZCBXZWJQcm9jZXNz
UHJveHk6OnVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQoKQoreworICAgIGlmICht
X2hhc1NlbnRNZXNzYWdlVG9VbmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcikKKyAgICAgICAgcmV0
dXJuOworICAgIGlmICghX0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVuYWJsZWQoKSkKKyAg
ICAgICAgcmV0dXJuOworICAgIGlmICghcHJvY2Vzc0lkZW50aWZpZXIoKSkKKyAgICAgICAgcmV0
dXJuOworICAgIGlmICghY2FuU2VuZE1lc3NhZ2UoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAg
U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGhhbmRsZTsKKyAgICBpZiAoIVNhbmRib3hFeHRlbnNp
b246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXBCeVBpZCgiY29tLmFwcGxlLmlwaG9uZS5heHNl
cnZlci1zeXN0ZW13aWRlIiwgcHJvY2Vzc0lkZW50aWZpZXIoKSwgaGFuZGxlKSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgc2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzczo6VW5ibG9ja0FjY2Vzc2li
aWxpdHlTZXJ2ZXIoaGFuZGxlKSwgMCk7CisgICAgbV9oYXNTZW50TWVzc2FnZVRvVW5ibG9ja0Fj
Y2Vzc2liaWxpdHlTZXJ2ZXIgPSB0cnVlOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKIAog
I2VuZGlmIC8vIFBMQVRGT1JNKElPU19GQU1JTFkpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUHJvY2Vzcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlByb2Nlc3MuY3BwCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4NjAsNCArMTg2MCwx
MiBAQCB2b2lkIFdlYlByb2Nlc3M6OmNsZWFyQ3VycmVudE1vZGlmaWVyU3RhCiAgICAgUGxhdGZv
cm1LZXlib2FyZEV2ZW50OjpzZXRDdXJyZW50TW9kaWZpZXJTdGF0ZSh7IH0pOwogfQogCisjaWYg
UExBVEZPUk0oSU9TX0ZBTUlMWSkKK3ZvaWQgV2ViUHJvY2Vzczo6dW5ibG9ja0FjY2Vzc2liaWxp
dHlTZXJ2ZXIoY29uc3QgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiBoYW5kbGUpCit7CisgICAg
Ym9vbCBvayA9IFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShoYW5kbGUpOwor
ICAgIEFTU0VSVF9VTlVTRUQob2ssIG9rKTsKK30KKyNlbmRpZgorCiB9IC8vIG5hbWVzcGFjZSBX
ZWJLaXQKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAkocmV2aXNpb24g
MjQyNDAzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjQ0LDYgKzI0NCw4IEBAIHB1YmxpYzoKIAogI2lmIFBMQVRGT1JNKElPU19G
QU1JTFkpCiAgICAgdm9pZCBhY2Nlc3NpYmlsaXR5UHJvY2Vzc1N1c3BlbmRlZE5vdGlmaWNhdGlv
bihib29sKTsKKyAgICAKKyAgICB2b2lkIHVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyKGNvbnN0
IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSYpOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShDT0NP
QSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmlu
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3Nh
Z2VzLmluCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UHJvY2Vzcy5tZXNzYWdlcy5pbgkod29ya2luZyBjb3B5KQpAQCAtMTUzLDQgKzE1Myw4IEBAIG1l
c3NhZ2VzIC0+IFdlYlByb2Nlc3MgTGVnYWN5UmVjZWl2ZXIgewogI2VuZGlmCiAKICAgICBDbGVh
ckN1cnJlbnRNb2RpZmllclN0YXRlRm9yVGVzdGluZygpCisKKyNpZiBQTEFURk9STShJT1NfRkFN
SUxZKQorICAgIFVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyKFdlYktpdDo6U2FuZGJveEV4dGVu
c2lvbjo6SGFuZGxlIGhhbmRsZSkKKyNlbmRpZgogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363769</attachid>
            <date>2019-03-06 12:06:13 -0800</date>
            <delta_ts>2019-03-06 12:16:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195342-20190306120612.patch</filename>
            <type>text/plain</type>
            <size>15584</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE5LTAzLTA1ICBQZXIgQXJuZSBWb2xsYW4gIDxw
dm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0
eSBzZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIFNQSSB0byBpc3N1ZSBhIG1h
Y2ggZXh0ZW5zaW9uIHRvIGEgcHJvY2VzcyBieSBwaWQuCisKKyAgICAgICAgKiB3dGYvc3BpL2Rh
cndpbi9TYW5kYm94U1BJLmg6CisKIDIwMTktMDItMjggIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdl
YmtpdC5vcmc+CiAKICAgICAgICAgQWRkIFdlYWtIYXNoU2V0CkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9zcGkvZGFyd2luL1NhbmRib3hTUEkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9z
cGkvZGFyd2luL1NhbmRib3hTUEkuaAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dURi93
dGYvc3BpL2Rhcndpbi9TYW5kYm94U1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTYzLDYgKzYzLDcg
QEAgZXh0ZXJuIGNvbnN0IGVudW0gc2FuZGJveF9maWx0ZXJfdHlwZSBTQQogCiBjaGFyICpzYW5k
Ym94X2V4dGVuc2lvbl9pc3N1ZV9maWxlKGNvbnN0IGNoYXIgKmV4dGVuc2lvbl9jbGFzcywgY29u
c3QgY2hhciAqcGF0aCwgdWludDMyX3QgZmxhZ3MpOwogY2hhciAqc2FuZGJveF9leHRlbnNpb25f
aXNzdWVfZ2VuZXJpYyhjb25zdCBjaGFyICpleHRlbnNpb25fY2xhc3MsIHVpbnQzMl90IGZsYWdz
KTsKK2NoYXIgKnNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX21hY2hfdG9fcHJvY2Vzc19ieV9waWQo
Y29uc3QgY2hhciAqZXh0ZW5zaW9uX2NsYXNzLCBjb25zdCBjaGFyICpuYW1lLCB1aW50MzJfdCBm
bGFncywgcGlkX3QpOwogaW50IHNhbmRib3hfY2hlY2socGlkX3QsIGNvbnN0IGNoYXIgKm9wZXJh
dGlvbiwgZW51bSBzYW5kYm94X2ZpbHRlcl90eXBlLCAuLi4pOwogaW50IHNhbmRib3hfY2hlY2tf
YnlfYXVkaXRfdG9rZW4oYXVkaXRfdG9rZW5fdCwgY29uc3QgY2hhciAqb3BlcmF0aW9uLCBlbnVt
IHNhbmRib3hfZmlsdGVyX3R5cGUsIC4uLik7CiBpbnQgc2FuZGJveF9jb250YWluZXJfcGF0aF9m
b3JfcGlkKHBpZF90LCBjaGFyICpidWZmZXIsIHNpemVfdCBidWZzaXplKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNDI1NTYpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDM2IEBACisyMDE5LTAzLTA2ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9s
bGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0eSBz
ZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQnkgZGVmYXVsdCwgYmxvY2sgdGhlIGlP
UyBhY2Nlc3NpYmlsaXR5IHNlcnZlciBpbiB0aGUgc2FuZGJveC4gSWYgYWNjZXNzaWJpbGl0eSBp
cyBlbmFibGVkLAorICAgICAgICBsZXQgdGhlIFVJIHByb2Nlc3MgaXNzdWUgYSBtYWNoIGV4dGVu
c2lvbiB0byB0aGUgV2ViQ29udGVudCBwcm9jZXNzLiBUaGUgc2FuZGJveCBleHRlbnNpb24KKyAg
ICAgICAgaXMgc2VudCB0byB0aGUgV2ViQ29udGVudCBwcm9jZXNzIHRvIGJlIGNvbnN1bWVkLgor
CisgICAgICAgICogUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3VwcG9ydFNQSS5oOgor
ICAgICAgICAqIFJlc291cmNlcy9TYW5kYm94UHJvZmlsZXMvaW9zL2NvbS5hcHBsZS5XZWJLaXQu
V2ViQ29udGVudC5zYjoKKyAgICAgICAgKiBTaGFyZWQvU2FuZGJveEV4dGVuc2lvbi5oOgorICAg
ICAgICAqIFNoYXJlZC9tYWMvU2FuZGJveEV4dGVuc2lvbk1hYy5tbToKKyAgICAgICAgKFdlYktp
dDo6U2FuZGJveEV4dGVuc2lvbkltcGw6OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OlNhbmRi
b3hFeHRlbnNpb25JbXBsOjpzYW5kYm94RXh0ZW5zaW9uRm9yVHlwZSk6CisgICAgICAgIChXZWJL
aXQ6OlNhbmRib3hFeHRlbnNpb25JbXBsOjpTYW5kYm94RXh0ZW5zaW9uSW1wbCk6CisgICAgICAg
IChXZWJLaXQ6OlNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXBCeVBp
ZCk6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW06Cisg
ICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjpyZWdpc3Rlck5vdGlmaWNhdGlvbk9ic2Vy
dmVycyk6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjp1bnJlZ2lzdGVyTm90aWZp
Y2F0aW9uT2JzZXJ2ZXJzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViUHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVuY2hpbmcpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJQcm9jZXNzUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dlYlByb2Nl
c3NQcm94eUlPUy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5Ojp1bmJsb2Nr
QWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBy
b2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzOjp1bmJsb2NrQWNjZXNzaWJp
bGl0eVNlcnZlcik6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmg6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluOgorCiAyMDE5LTAzLTA2ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjIzODQ5
MCk6IFlvdVR1YmUuY29tOiBSZXR1cm5pbmcgUGlQIHRvIFNhZmFyaSBhZnRlciBzbGVlcGluZyBk
ZXZpY2UgbG9zZXMgcGFnZQpJbmRleDogU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkvaW9zL0Fj
Y2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9QbGF0
Zm9ybS9zcGkvaW9zL0FjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgJKHJldmlzaW9uIDI0MjQwMykK
KysrIFNvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3VwcG9ydFNQ
SS5oCSh3b3JraW5nIGNvcHkpCkBAIC00MSw2ICs0MSw4IEBAIFdURl9FWFRFUk5fQ19CRUdJTgog
I2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiBleHRlcm4gQm9vbGVhbiBfQVhTS2V5UmVwZWF0RW5h
YmxlZCgpOwogZXh0ZXJuIENGVGltZUludGVydmFsIF9BWFNLZXlSZXBlYXREZWxheSgpOworZXh0
ZXJuIEJvb2xlYW4gX0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVuYWJsZWQoKTsKK2V4dGVy
biBDRlN0cmluZ1JlZiBrQVhTQXBwbGljYXRpb25BY2Nlc3NpYmlsaXR5RW5hYmxlZE5vdGlmaWNh
dGlvbjsKICNlbmRpZgogCiAjaWYgRU5BQkxFKEFDQ0VTU0lCSUxJVFlfRVZFTlRTKQpJbmRleDog
U291cmNlL1dlYktpdC9SZXNvdXJjZXMvU2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2Vi
S2l0LldlYkNvbnRlbnQuc2IKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9SZXNvdXJjZXMv
U2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuc2IJKHJldmlz
aW9uIDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvUmVzb3VyY2VzL1NhbmRib3hQcm9maWxlcy9p
b3MvY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LnNiCSh3b3JraW5nIGNvcHkpCkBAIC0xODcs
NyArMTg3LDYgQEAKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQuaGlkLmZv
Y3VzIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQuaGlkLnNlcnZpY2Vz
IikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pb2hpZGV2ZW50c3lzdGVtIikKLSAgICAo
Z2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pcGhvbmUuYXhzZXJ2ZXItc3lzdGVtd2lkZSIpCiAgICAg
KGdsb2JhbC1uYW1lICJjb20uYXBwbGUuZnJvbnRib2FyZC53b3Jrc3BhY2UiKQogICAgIChnbG9i
YWwtbmFtZSAiY29tLmFwcGxlLmZyb250Ym9hcmQuc3lzdGVtYXBwc2VydmljZXMiKSkKIApAQCAt
NDUwLDYgKzQ0OSw4IEBACiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuY29yZW1lZGlhLmRl
Y29tcHJlc3Npb25zZXNzaW9uIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5jb3JlbWVk
aWEudmlkZW9xdWV1ZSIpKQogCisoYWxsb3cgbWFjaC1sb29rdXAgKGV4dGVuc2lvbiAiY29tLmFw
cGxlLndlYmtpdC5leHRlbnNpb24ubWFjaCIpKQorCiA7OyBUaGVzZSBzZXJ2aWNlcyBoYXZlIGJl
ZW4gaWRlbnRpZmllZCBhcyB1bnVzZWQgZHVyaW5nIGxpdmluZy1vbi4KIDs7IFRoaXMgbGlzdCBv
dmVycmlkZXMgc29tZSBkZWZpbml0aW9ucyBhYm92ZSBhbmQgaW4gY29tbW9uLnNiLgogOzsgRklY
TUU6IHJlbW92ZSBvdmVycmlkZGVuIHJ1bGVzIG9uY2UgdGhlIGZpbmFsIGxpc3QgaGFzIGJlZW4K
QEAgLTQ3NSw3ICs0NzYsNiBAQAogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFjY2Vzc2li
aWxpdHkuQWNjZXNzaWJpbGl0eVVJU2VydmVyIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBs
ZS5hY2Nlc3NpYmlsaXR5LmhlYXJkIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hY2Nv
dW50c2QuYWNjb3VudG1hbmFnZXIiKQotICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFwcC1z
YW5kYm94Lm1hY2giKQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFwcHN1cHBvcnQuY3Bs
b2dkIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hc3NlcnRpb25kLmFwcGxpY2F0aW9u
c3RhdGVjb25uZWN0aW9uIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hc3NlcnRpb25k
LmV4cGlyYXRpb24iKQpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVuc2lv
bi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1NhbmRib3hFeHRlbnNpb24u
aAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVu
c2lvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC00Niw2ICs0Niw3IEBAIHB1YmxpYzoKICAgICBlbnVt
IGNsYXNzIFR5cGUgewogICAgICAgICBSZWFkT25seSwKICAgICAgICAgUmVhZFdyaXRlLAorICAg
ICAgICBNYWNoLAogICAgICAgICBHZW5lcmljLAogICAgIH07CiAKQEAgLTEwMSw2ICsxMDIsNyBA
QCBwdWJsaWM6CiAgICAgc3RhdGljIGJvb2wgY3JlYXRlSGFuZGxlRm9yUmVhZFdyaXRlRGlyZWN0
b3J5KGNvbnN0IFN0cmluZyYgcGF0aCwgSGFuZGxlJik7IC8vIFdpbGwgYXR0ZW1wdCB0byBjcmVh
dGUgdGhlIGRpcmVjdG9yeS4KICAgICBzdGF0aWMgU3RyaW5nIGNyZWF0ZUhhbmRsZUZvclRlbXBv
cmFyeUZpbGUoY29uc3QgU3RyaW5nJiBwcmVmaXgsIFR5cGUsIEhhbmRsZSYpOwogICAgIHN0YXRp
YyBib29sIGNyZWF0ZUhhbmRsZUZvckdlbmVyaWNFeHRlbnNpb24oY29uc3QgU3RyaW5nJiBleHRl
bnNpb25DbGFzcywgSGFuZGxlJik7CisgICAgc3RhdGljIGJvb2wgY3JlYXRlSGFuZGxlRm9yTWFj
aExvb2t1cEJ5UGlkKGNvbnN0IFN0cmluZyYgc2VydmljZSwgcGlkX3QsIEhhbmRsZSYpOwogICAg
IH5TYW5kYm94RXh0ZW5zaW9uKCk7CiAKICAgICBib29sIGNvbnN1bWUoKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCShyZXZpc2lv
biAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvU2FuZGJveEV4dGVuc2lvbk1h
Yy5tbQkod29ya2luZyBjb3B5KQpAQCAtNDAsOSArNDAsOSBAQCBuYW1lc3BhY2UgV2ViS2l0IHsK
IAogY2xhc3MgU2FuZGJveEV4dGVuc2lvbkltcGwgewogcHVibGljOgotICAgIHN0YXRpYyBzdGQ6
OnVuaXF1ZV9wdHI8U2FuZGJveEV4dGVuc2lvbkltcGw+IGNyZWF0ZShjb25zdCBjaGFyKiBwYXRo
LCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUpCisgICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0
cjxTYW5kYm94RXh0ZW5zaW9uSW1wbD4gY3JlYXRlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRib3hF
eHRlbnNpb246OlR5cGUgdHlwZSwgT3B0aW9uYWw8cGlkX3Q+IHBpZCA9IFdURjo6bnVsbG9wdCkK
ICAgICB7Ci0gICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxTYW5kYm94RXh0ZW5zaW9uSW1wbD4gaW1w
bCB7IG5ldyBTYW5kYm94RXh0ZW5zaW9uSW1wbChwYXRoLCB0eXBlKSB9OworICAgICAgICBzdGQ6
OnVuaXF1ZV9wdHI8U2FuZGJveEV4dGVuc2lvbkltcGw+IGltcGwgeyBuZXcgU2FuZGJveEV4dGVu
c2lvbkltcGwocGF0aCwgdHlwZSwgcGlkKSB9OwogICAgICAgICBpZiAoIWltcGwtPm1fdG9rZW4p
CiAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAgICAgcmV0dXJuIGltcGw7CkBAIC02
MSwxMCArNjEsMTIgQEAgcHVibGljOgogICAgIGJvb2wgY29uc3VtZSgpIFdBUk5fVU5VU0VEX1JF
VFVSTgogICAgIHsKICAgICAgICAgbV9oYW5kbGUgPSBzYW5kYm94X2V4dGVuc2lvbl9jb25zdW1l
KG1fdG9rZW4pOworICAgICAgICBpZiAobV9oYW5kbGUgPT0gLTEpCisgICAgICAgICAgICBMT0df
RVJST1IoIkNvdWxkIG5vdCBjcmVhdGUgYSBzYW5kYm94IGV4dGVuc2lvbiBmb3IgJyVzJywgZXJy
bm8gPSAlZCIsIG1fdG9rZW4sIGVycm5vKTsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZX1NJTVVM
QVRPUikKICAgICAgICAgcmV0dXJuICFzYW5kYm94X2NoZWNrKGdldHBpZCgpLCAwLCBTQU5EQk9Y
X0ZJTFRFUl9OT05FKTsKICNlbHNlCi0gICAgICAgIHJldHVybiBtX2hhbmRsZTsKKyAgICAgICAg
cmV0dXJuIG1faGFuZGxlICE9IC0xOwogI2VuZGlmCiAgICAgfQogCkBAIC04MCwyMCArODIsMjIg
QEAgcHVibGljOgogICAgIH0KIAogcHJpdmF0ZToKLSAgICBjaGFyKiBzYW5kYm94RXh0ZW5zaW9u
Rm9yVHlwZShjb25zdCBjaGFyKiBwYXRoLCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUpCisg
ICAgY2hhciogc2FuZGJveEV4dGVuc2lvbkZvclR5cGUoY29uc3QgY2hhciogcGF0aCwgU2FuZGJv
eEV4dGVuc2lvbjo6VHlwZSB0eXBlLCBPcHRpb25hbDxwaWRfdD4gcGlkID0gV1RGOjpudWxsb3B0
KQogICAgIHsKICAgICAgICAgc3dpdGNoICh0eXBlKSB7CiAgICAgICAgIGNhc2UgU2FuZGJveEV4
dGVuc2lvbjo6VHlwZTo6UmVhZE9ubHk6CiAgICAgICAgICAgICByZXR1cm4gc2FuZGJveF9leHRl
bnNpb25faXNzdWVfZmlsZShBUFBfU0FOREJPWF9SRUFELCBwYXRoLCAwKTsKICAgICAgICAgY2Fz
ZSBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpSZWFkV3JpdGU6CiAgICAgICAgICAgICByZXR1cm4g
c2FuZGJveF9leHRlbnNpb25faXNzdWVfZmlsZShBUFBfU0FOREJPWF9SRUFEX1dSSVRFLCBwYXRo
LCAwKTsKKyAgICAgICAgY2FzZSBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpNYWNoOgorICAgICAg
ICAgICAgcmV0dXJuIHNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX21hY2hfdG9fcHJvY2Vzc19ieV9w
aWQoImNvbS5hcHBsZS53ZWJraXQuZXh0ZW5zaW9uLm1hY2giLCBwYXRoLCAwLCBwaWQudmFsdWUo
KSk7CiAgICAgICAgIGNhc2UgU2FuZGJveEV4dGVuc2lvbjo6VHlwZTo6R2VuZXJpYzoKICAgICAg
ICAgICAgIHJldHVybiBzYW5kYm94X2V4dGVuc2lvbl9pc3N1ZV9nZW5lcmljKHBhdGgsIDApOwog
ICAgICAgICB9CiAgICAgfQogCi0gICAgU2FuZGJveEV4dGVuc2lvbkltcGwoY29uc3QgY2hhciog
cGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlKQotICAgICAgICA6IG1fdG9rZW4geyBz
YW5kYm94RXh0ZW5zaW9uRm9yVHlwZShwYXRoLCB0eXBlKSB9CisgICAgU2FuZGJveEV4dGVuc2lv
bkltcGwoY29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlLCBPcHRp
b25hbDxwaWRfdD4gcGlkID0gV1RGOjpudWxsb3B0KQorICAgICAgICA6IG1fdG9rZW4geyBzYW5k
Ym94RXh0ZW5zaW9uRm9yVHlwZShwYXRoLCB0eXBlLCBwaWQpIH0KICAgICB7CiAgICAgfQogCkBA
IC0zNTcsNiArMzYxLDE5IEBAIGJvb2wgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9y
R2UKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorYm9vbCBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVI
YW5kbGVGb3JNYWNoTG9va3VwQnlQaWQoY29uc3QgU3RyaW5nJiBzZXJ2aWNlLCBwaWRfdCBwaWQs
IEhhbmRsZSYgaGFuZGxlKQoreworICAgIEFTU0VSVCghaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lv
bik7CisgICAgCisgICAgaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbiA9IFNhbmRib3hFeHRlbnNp
b25JbXBsOjpjcmVhdGUoc2VydmljZS51dGY4KCkuZGF0YSgpLCBUeXBlOjpNYWNoLCBwaWQpOwor
ICAgIGlmICghaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbikgeworICAgICAgICBXVEZMb2dBbHdh
eXMoIkNvdWxkIG5vdCBjcmVhdGUgYSAnJXMnIHNhbmRib3ggZXh0ZW5zaW9uIiwgc2VydmljZS51
dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICAKKyAgICBy
ZXR1cm4gdHJ1ZTsKK30KKwogU2FuZGJveEV4dGVuc2lvbjo6U2FuZGJveEV4dGVuc2lvbihjb25z
dCBIYW5kbGUmIGhhbmRsZSkKICAgICA6IG1fc2FuZGJveEV4dGVuc2lvbihXVEZNb3ZlKGhhbmRs
ZS5tX3NhbmRib3hFeHRlbnNpb24pKQogewpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Bvb2wuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQcm9jZXNzUG9vbC5oCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQcm9jZXNzUG9vbC5oCSh3b3JraW5nIGNvcHkpCkBAIC02NjIsNiArNjYyLDEwIEBA
IHByaXZhdGU6CiAgICAgc3RkOjp1bmlxdWVfcHRyPFBlckFjdGl2aXR5U3RhdGVDUFVVc2FnZVNh
bXBsZXI+IG1fcGVyQWN0aXZpdHlTdGF0ZUNQVVVzYWdlU2FtcGxlcjsKICNlbmRpZgogCisjaWYg
UExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBSZXRhaW5QdHI8TlNPYmplY3Q+IG1fYWNjZXNzaWJp
bGl0eUVuYWJsZWRPYnNlcnZlcjsKKyNlbmRpZgorCiAgICAgYm9vbCBtX3Nob3VsZFVzZVRlc3Rp
bmdOZXR3b3JrU2Vzc2lvbiB7IGZhbHNlIH07CiAKICAgICBib29sIG1fcHJvY2Vzc1Rlcm1pbmF0
aW9uRW5hYmxlZCB7IHRydWUgfTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBy
b2Nlc3NQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Byb3h5LmNwcAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzU5LDYgKzc1OSw4
IEBAIHZvaWQgV2ViUHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVuY2hpbmcKICAgICAgICAgaWYg
KHhwY19jb25uZWN0aW9uX3QgeHBjQ29ubmVjdGlvbiA9IGNvbm5lY3Rpb24oKS0+eHBjQ29ubmVj
dGlvbigpKQogICAgICAgICAgICAgbV90aHJvdHRsZXIuZGlkQ29ubmVjdFRvUHJvY2Vzcyh4cGNf
Y29ubmVjdGlvbl9nZXRfcGlkKHhwY0Nvbm5lY3Rpb24pKTsKICAgICB9CisKKyAgICB1bmJsb2Nr
QWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKCk7CiAjZW5kaWYKIH0KIApJbmRleDogU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgJKHJldmlzaW9uIDI0MjQwMykKKysr
IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yOTIsNiArMjkyLDEwIEBAIHB1YmxpYzoKICAgICB2b2lkIHJldm9rZUF1ZGlvQ2FwdHVy
ZUV4dGVuc2lvbigpIHsgbV9tZWRpYUNhcHR1cmVTYW5kYm94RXh0ZW5zaW9ucyAmPSB+QXVkaW87
IH0KICNlbmRpZgogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICB2b2lkIHVuYmxvY2tB
Y2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQoKTsKKyNlbmRpZgorCiBwcm90ZWN0ZWQ6CiAgICAg
c3RhdGljIHVpbnQ2NF90IGdlbmVyYXRlUGFnZUlEKCk7CiAgICAgV2ViUHJvY2Vzc1Byb3h5KFdl
YlByb2Nlc3NQb29sJiwgV2Vic2l0ZURhdGFTdG9yZSYsIElzUHJld2FybWVkKTsKQEAgLTQzMCw2
ICs0MzQsNyBAQCBwcml2YXRlOgogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgRm9yZWdy
b3VuZFdlYlByb2Nlc3NUb2tlbiBtX2ZvcmVncm91bmRUb2tlbjsKICAgICBCYWNrZ3JvdW5kV2Vi
UHJvY2Vzc1Rva2VuIG1fYmFja2dyb3VuZFRva2VuOworICAgIGJvb2wgbV9oYXNTZW50TWVzc2Fn
ZVRvVW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIgeyBmYWxzZSB9OwogI2VuZGlmCiAKICAgICBI
YXNoTWFwPFN0cmluZywgdWludDY0X3Q+IG1fcGFnZVVSTFJldGFpbkNvdW50TWFwOwpJbmRleDog
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xDb2NvYS5tbQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQcm9jZXNzUG9vbENv
Y29hLm1tCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9XZWJQcm9jZXNzUG9vbENvY29hLm1tCSh3b3JraW5nIGNvcHkpCkBAIC00MjUsNyArNDI1LDEx
IEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnJlZ2lzdGVyTm90aWZpY2F0aW8KICAgICBtX2RlYWN0
aXZhdGlvbk9ic2VydmVyID0gW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBh
ZGRPYnNlcnZlckZvck5hbWU6TlNBcHBsaWNhdGlvbkRpZFJlc2lnbkFjdGl2ZU5vdGlmaWNhdGlv
biBvYmplY3Q6TlNBcHAgcXVldWU6W05TT3BlcmF0aW9uUXVldWUgY3VycmVudFF1ZXVlXSB1c2lu
Z0Jsb2NrOl4oTlNOb3RpZmljYXRpb24gKm5vdGlmaWNhdGlvbikgewogICAgICAgICBzZXRBcHBs
aWNhdGlvbklzQWN0aXZlKGZhbHNlKTsKICAgICB9XTsKLQorI2Vsc2UKKyAgICBtX2FjY2Vzc2li
aWxpdHlFbmFibGVkT2JzZXJ2ZXIgPSBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50
ZXJdIGFkZE9ic2VydmVyRm9yTmFtZTooX19icmlkZ2UgaWQpa0FYU0FwcGxpY2F0aW9uQWNjZXNz
aWJpbGl0eUVuYWJsZWROb3RpZmljYXRpb24gb2JqZWN0Om5pbCBxdWV1ZTpbTlNPcGVyYXRpb25R
dWV1ZSBjdXJyZW50UXVldWVdIHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlvbiAqbm90ZSkgewor
ICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fcHJvY2Vzc2VzLnNpemUoKTsgKytpKQkK
KyAgICAgICAgICAgIG1fcHJvY2Vzc2VzW2ldLi0+dW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXJJ
Zk5lZWRlZCgpOworICAgIH1dOwogI2VuZGlmIC8vICFQTEFURk9STShJT1NfRkFNSUxZKQogfQog
CkBAIC00NDMsNiArNDQ3LDggQEAgdm9pZCBXZWJQcm9jZXNzUG9vbDo6dW5yZWdpc3Rlck5vdGlm
aWNhdAogI2VuZGlmCiAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBy
ZW1vdmVPYnNlcnZlcjptX2FjdGl2YXRpb25PYnNlcnZlci5nZXQoKV07CiAgICAgW1tOU05vdGlm
aWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNlcnZlcjptX2RlYWN0aXZhdGlv
bk9ic2VydmVyLmdldCgpXTsKKyNlbHNlCisgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZh
dWx0Q2VudGVyXSByZW1vdmVPYnNlcnZlcjptX2FjY2Vzc2liaWxpdHlFbmFibGVkT2JzZXJ2ZXIu
Z2V0KCldOwogI2VuZGlmIC8vICFQTEFURk9STShJT1NfRkFNSUxZKQogfQogCkluZGV4OiBTb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV2ViUHJvY2Vzc1Byb3h5SU9TLm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQcm9jZXNzUHJveHlJT1MubW0JKHJl
dmlzaW9uIDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQcm9jZXNz
UHJveHlJT1MubW0JKHdvcmtpbmcgY29weSkKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCiAKKyNpbXBvcnQgIkFjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgiCiAj
aW1wb3J0ICJXS0Z1bGxLZXlib2FyZEFjY2Vzc1dhdGNoZXIuaCIKICNpbXBvcnQgIldlYlByb2Nl
c3NNZXNzYWdlcy5oIgogCkBAIC00Miw2ICs0MywyNSBAQCBib29sIFdlYlByb2Nlc3NQcm94eTo6
ZnVsbEtleWJvYXJkQWNjZXNzCiAjZW5kaWYKIH0KIAordm9pZCBXZWJQcm9jZXNzUHJveHk6OnVu
YmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQoKQoreworICAgIGlmIChtX2hhc1NlbnRN
ZXNzYWdlVG9VbmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcikKKyAgICAgICAgcmV0dXJuOworICAg
IGlmICghX0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVuYWJsZWQoKSkKKyAgICAgICAgcmV0
dXJuOworICAgIGlmICghcHJvY2Vzc0lkZW50aWZpZXIoKSkKKyAgICAgICAgcmV0dXJuOworICAg
IGlmICghY2FuU2VuZE1lc3NhZ2UoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgU2FuZGJveEV4
dGVuc2lvbjo6SGFuZGxlIGhhbmRsZTsKKyAgICBpZiAoIVNhbmRib3hFeHRlbnNpb246OmNyZWF0
ZUhhbmRsZUZvck1hY2hMb29rdXBCeVBpZCgiY29tLmFwcGxlLmlwaG9uZS5heHNlcnZlci1zeXN0
ZW13aWRlIiwgcHJvY2Vzc0lkZW50aWZpZXIoKSwgaGFuZGxlKSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgc2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzczo6VW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2
ZXIoaGFuZGxlKSwgMCk7CisgICAgbV9oYXNTZW50TWVzc2FnZVRvVW5ibG9ja0FjY2Vzc2liaWxp
dHlTZXJ2ZXIgPSB0cnVlOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKIAogI2VuZGlmIC8v
IFBMQVRGT1JNKElPU19GQU1JTFkpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UHJvY2Vzcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBy
b2Nlc3MuY3BwCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUHJvY2Vzcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4NjAsNCArMTg2MCwxMiBAQCB2b2lk
IFdlYlByb2Nlc3M6OmNsZWFyQ3VycmVudE1vZGlmaWVyU3RhCiAgICAgUGxhdGZvcm1LZXlib2Fy
ZEV2ZW50OjpzZXRDdXJyZW50TW9kaWZpZXJTdGF0ZSh7IH0pOwogfQogCisjaWYgUExBVEZPUk0o
SU9TX0ZBTUlMWSkKK3ZvaWQgV2ViUHJvY2Vzczo6dW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIo
Y29uc3QgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiBoYW5kbGUpCit7CisgICAgYm9vbCBvayA9
IFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShoYW5kbGUpOworICAgIEFTU0VS
VF9VTlVTRUQob2ssIG9rKTsKK30KKyNlbmRpZgorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKSW5k
ZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAkocmV2aXNpb24gMjQyNDAzKQor
KysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAkod29ya2luZyBjb3B5KQpA
QCAtMjQ0LDYgKzI0NCw4IEBAIHB1YmxpYzoKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAg
ICAgdm9pZCBhY2Nlc3NpYmlsaXR5UHJvY2Vzc1N1c3BlbmRlZE5vdGlmaWNhdGlvbihib29sKTsK
KyAgICAKKyAgICB2b2lkIHVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyKGNvbnN0IFNhbmRib3hF
eHRlbnNpb246OkhhbmRsZSYpOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShDT0NPQSkKSW5kZXg6
IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCShy
ZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5t
ZXNzYWdlcy5pbgkod29ya2luZyBjb3B5KQpAQCAtMTUzLDQgKzE1Myw4IEBAIG1lc3NhZ2VzIC0+
IFdlYlByb2Nlc3MgTGVnYWN5UmVjZWl2ZXIgewogI2VuZGlmCiAKICAgICBDbGVhckN1cnJlbnRN
b2RpZmllclN0YXRlRm9yVGVzdGluZygpCisKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAg
IFVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyKFdlYktpdDo6U2FuZGJveEV4dGVuc2lvbjo6SGFu
ZGxlIGhhbmRsZSkKKyNlbmRpZgogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363771</attachid>
            <date>2019-03-06 12:16:25 -0800</date>
            <delta_ts>2019-03-06 13:00:05 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195342-20190306121625.patch</filename>
            <type>text/plain</type>
            <size>15582</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE5LTAzLTA1ICBQZXIgQXJuZSBWb2xsYW4gIDxw
dm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0
eSBzZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIFNQSSB0byBpc3N1ZSBhIG1h
Y2ggZXh0ZW5zaW9uIHRvIGEgcHJvY2VzcyBieSBwaWQuCisKKyAgICAgICAgKiB3dGYvc3BpL2Rh
cndpbi9TYW5kYm94U1BJLmg6CisKIDIwMTktMDItMjggIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdl
YmtpdC5vcmc+CiAKICAgICAgICAgQWRkIFdlYWtIYXNoU2V0CkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9zcGkvZGFyd2luL1NhbmRib3hTUEkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9z
cGkvZGFyd2luL1NhbmRib3hTUEkuaAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dURi93
dGYvc3BpL2Rhcndpbi9TYW5kYm94U1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTYzLDYgKzYzLDcg
QEAgZXh0ZXJuIGNvbnN0IGVudW0gc2FuZGJveF9maWx0ZXJfdHlwZSBTQQogCiBjaGFyICpzYW5k
Ym94X2V4dGVuc2lvbl9pc3N1ZV9maWxlKGNvbnN0IGNoYXIgKmV4dGVuc2lvbl9jbGFzcywgY29u
c3QgY2hhciAqcGF0aCwgdWludDMyX3QgZmxhZ3MpOwogY2hhciAqc2FuZGJveF9leHRlbnNpb25f
aXNzdWVfZ2VuZXJpYyhjb25zdCBjaGFyICpleHRlbnNpb25fY2xhc3MsIHVpbnQzMl90IGZsYWdz
KTsKK2NoYXIgKnNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX21hY2hfdG9fcHJvY2Vzc19ieV9waWQo
Y29uc3QgY2hhciAqZXh0ZW5zaW9uX2NsYXNzLCBjb25zdCBjaGFyICpuYW1lLCB1aW50MzJfdCBm
bGFncywgcGlkX3QpOwogaW50IHNhbmRib3hfY2hlY2socGlkX3QsIGNvbnN0IGNoYXIgKm9wZXJh
dGlvbiwgZW51bSBzYW5kYm94X2ZpbHRlcl90eXBlLCAuLi4pOwogaW50IHNhbmRib3hfY2hlY2tf
YnlfYXVkaXRfdG9rZW4oYXVkaXRfdG9rZW5fdCwgY29uc3QgY2hhciAqb3BlcmF0aW9uLCBlbnVt
IHNhbmRib3hfZmlsdGVyX3R5cGUsIC4uLik7CiBpbnQgc2FuZGJveF9jb250YWluZXJfcGF0aF9m
b3JfcGlkKHBpZF90LCBjaGFyICpidWZmZXIsIHNpemVfdCBidWZzaXplKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNDI1NTYpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDM2IEBACisyMDE5LTAzLTA2ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9s
bGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0eSBz
ZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQnkgZGVmYXVsdCwgYmxvY2sgdGhlIGlP
UyBhY2Nlc3NpYmlsaXR5IHNlcnZlciBpbiB0aGUgc2FuZGJveC4gSWYgYWNjZXNzaWJpbGl0eSBp
cyBlbmFibGVkLAorICAgICAgICBsZXQgdGhlIFVJIHByb2Nlc3MgaXNzdWUgYSBtYWNoIGV4dGVu
c2lvbiB0byB0aGUgV2ViQ29udGVudCBwcm9jZXNzLiBUaGUgc2FuZGJveCBleHRlbnNpb24KKyAg
ICAgICAgaXMgc2VudCB0byB0aGUgV2ViQ29udGVudCBwcm9jZXNzIHRvIGJlIGNvbnN1bWVkLgor
CisgICAgICAgICogUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3VwcG9ydFNQSS5oOgor
ICAgICAgICAqIFJlc291cmNlcy9TYW5kYm94UHJvZmlsZXMvaW9zL2NvbS5hcHBsZS5XZWJLaXQu
V2ViQ29udGVudC5zYjoKKyAgICAgICAgKiBTaGFyZWQvU2FuZGJveEV4dGVuc2lvbi5oOgorICAg
ICAgICAqIFNoYXJlZC9tYWMvU2FuZGJveEV4dGVuc2lvbk1hYy5tbToKKyAgICAgICAgKFdlYktp
dDo6U2FuZGJveEV4dGVuc2lvbkltcGw6OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OlNhbmRi
b3hFeHRlbnNpb25JbXBsOjpzYW5kYm94RXh0ZW5zaW9uRm9yVHlwZSk6CisgICAgICAgIChXZWJL
aXQ6OlNhbmRib3hFeHRlbnNpb25JbXBsOjpTYW5kYm94RXh0ZW5zaW9uSW1wbCk6CisgICAgICAg
IChXZWJLaXQ6OlNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXBCeVBp
ZCk6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW06Cisg
ICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjpyZWdpc3Rlck5vdGlmaWNhdGlvbk9ic2Vy
dmVycyk6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjp1bnJlZ2lzdGVyTm90aWZp
Y2F0aW9uT2JzZXJ2ZXJzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViUHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVuY2hpbmcpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJQcm9jZXNzUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dlYlByb2Nl
c3NQcm94eUlPUy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5Ojp1bmJsb2Nr
QWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBy
b2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzOjp1bmJsb2NrQWNjZXNzaWJp
bGl0eVNlcnZlcik6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmg6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluOgorCiAyMDE5LTAzLTA2ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjIzODQ5
MCk6IFlvdVR1YmUuY29tOiBSZXR1cm5pbmcgUGlQIHRvIFNhZmFyaSBhZnRlciBzbGVlcGluZyBk
ZXZpY2UgbG9zZXMgcGFnZQpJbmRleDogU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkvaW9zL0Fj
Y2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9QbGF0
Zm9ybS9zcGkvaW9zL0FjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgJKHJldmlzaW9uIDI0MjQwMykK
KysrIFNvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3VwcG9ydFNQ
SS5oCSh3b3JraW5nIGNvcHkpCkBAIC00MSw2ICs0MSw4IEBAIFdURl9FWFRFUk5fQ19CRUdJTgog
I2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiBleHRlcm4gQm9vbGVhbiBfQVhTS2V5UmVwZWF0RW5h
YmxlZCgpOwogZXh0ZXJuIENGVGltZUludGVydmFsIF9BWFNLZXlSZXBlYXREZWxheSgpOworZXh0
ZXJuIEJvb2xlYW4gX0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVuYWJsZWQoKTsKK2V4dGVy
biBDRlN0cmluZ1JlZiBrQVhTQXBwbGljYXRpb25BY2Nlc3NpYmlsaXR5RW5hYmxlZE5vdGlmaWNh
dGlvbjsKICNlbmRpZgogCiAjaWYgRU5BQkxFKEFDQ0VTU0lCSUxJVFlfRVZFTlRTKQpJbmRleDog
U291cmNlL1dlYktpdC9SZXNvdXJjZXMvU2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2Vi
S2l0LldlYkNvbnRlbnQuc2IKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9SZXNvdXJjZXMv
U2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuc2IJKHJldmlz
aW9uIDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvUmVzb3VyY2VzL1NhbmRib3hQcm9maWxlcy9p
b3MvY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LnNiCSh3b3JraW5nIGNvcHkpCkBAIC0xODcs
NyArMTg3LDYgQEAKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQuaGlkLmZv
Y3VzIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQuaGlkLnNlcnZpY2Vz
IikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pb2hpZGV2ZW50c3lzdGVtIikKLSAgICAo
Z2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pcGhvbmUuYXhzZXJ2ZXItc3lzdGVtd2lkZSIpCiAgICAg
KGdsb2JhbC1uYW1lICJjb20uYXBwbGUuZnJvbnRib2FyZC53b3Jrc3BhY2UiKQogICAgIChnbG9i
YWwtbmFtZSAiY29tLmFwcGxlLmZyb250Ym9hcmQuc3lzdGVtYXBwc2VydmljZXMiKSkKIApAQCAt
NDUwLDYgKzQ0OSw4IEBACiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuY29yZW1lZGlhLmRl
Y29tcHJlc3Npb25zZXNzaW9uIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5jb3JlbWVk
aWEudmlkZW9xdWV1ZSIpKQogCisoYWxsb3cgbWFjaC1sb29rdXAgKGV4dGVuc2lvbiAiY29tLmFw
cGxlLndlYmtpdC5leHRlbnNpb24ubWFjaCIpKQorCiA7OyBUaGVzZSBzZXJ2aWNlcyBoYXZlIGJl
ZW4gaWRlbnRpZmllZCBhcyB1bnVzZWQgZHVyaW5nIGxpdmluZy1vbi4KIDs7IFRoaXMgbGlzdCBv
dmVycmlkZXMgc29tZSBkZWZpbml0aW9ucyBhYm92ZSBhbmQgaW4gY29tbW9uLnNiLgogOzsgRklY
TUU6IHJlbW92ZSBvdmVycmlkZGVuIHJ1bGVzIG9uY2UgdGhlIGZpbmFsIGxpc3QgaGFzIGJlZW4K
QEAgLTQ3NSw3ICs0NzYsNiBAQAogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFjY2Vzc2li
aWxpdHkuQWNjZXNzaWJpbGl0eVVJU2VydmVyIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBs
ZS5hY2Nlc3NpYmlsaXR5LmhlYXJkIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hY2Nv
dW50c2QuYWNjb3VudG1hbmFnZXIiKQotICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFwcC1z
YW5kYm94Lm1hY2giKQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFwcHN1cHBvcnQuY3Bs
b2dkIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hc3NlcnRpb25kLmFwcGxpY2F0aW9u
c3RhdGVjb25uZWN0aW9uIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hc3NlcnRpb25k
LmV4cGlyYXRpb24iKQpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVuc2lv
bi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1NhbmRib3hFeHRlbnNpb24u
aAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVu
c2lvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC00Niw2ICs0Niw3IEBAIHB1YmxpYzoKICAgICBlbnVt
IGNsYXNzIFR5cGUgewogICAgICAgICBSZWFkT25seSwKICAgICAgICAgUmVhZFdyaXRlLAorICAg
ICAgICBNYWNoLAogICAgICAgICBHZW5lcmljLAogICAgIH07CiAKQEAgLTEwMSw2ICsxMDIsNyBA
QCBwdWJsaWM6CiAgICAgc3RhdGljIGJvb2wgY3JlYXRlSGFuZGxlRm9yUmVhZFdyaXRlRGlyZWN0
b3J5KGNvbnN0IFN0cmluZyYgcGF0aCwgSGFuZGxlJik7IC8vIFdpbGwgYXR0ZW1wdCB0byBjcmVh
dGUgdGhlIGRpcmVjdG9yeS4KICAgICBzdGF0aWMgU3RyaW5nIGNyZWF0ZUhhbmRsZUZvclRlbXBv
cmFyeUZpbGUoY29uc3QgU3RyaW5nJiBwcmVmaXgsIFR5cGUsIEhhbmRsZSYpOwogICAgIHN0YXRp
YyBib29sIGNyZWF0ZUhhbmRsZUZvckdlbmVyaWNFeHRlbnNpb24oY29uc3QgU3RyaW5nJiBleHRl
bnNpb25DbGFzcywgSGFuZGxlJik7CisgICAgc3RhdGljIGJvb2wgY3JlYXRlSGFuZGxlRm9yTWFj
aExvb2t1cEJ5UGlkKGNvbnN0IFN0cmluZyYgc2VydmljZSwgcGlkX3QsIEhhbmRsZSYpOwogICAg
IH5TYW5kYm94RXh0ZW5zaW9uKCk7CiAKICAgICBib29sIGNvbnN1bWUoKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCShyZXZpc2lv
biAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvU2FuZGJveEV4dGVuc2lvbk1h
Yy5tbQkod29ya2luZyBjb3B5KQpAQCAtNDAsOSArNDAsOSBAQCBuYW1lc3BhY2UgV2ViS2l0IHsK
IAogY2xhc3MgU2FuZGJveEV4dGVuc2lvbkltcGwgewogcHVibGljOgotICAgIHN0YXRpYyBzdGQ6
OnVuaXF1ZV9wdHI8U2FuZGJveEV4dGVuc2lvbkltcGw+IGNyZWF0ZShjb25zdCBjaGFyKiBwYXRo
LCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUpCisgICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0
cjxTYW5kYm94RXh0ZW5zaW9uSW1wbD4gY3JlYXRlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRib3hF
eHRlbnNpb246OlR5cGUgdHlwZSwgT3B0aW9uYWw8cGlkX3Q+IHBpZCA9IFdURjo6bnVsbG9wdCkK
ICAgICB7Ci0gICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxTYW5kYm94RXh0ZW5zaW9uSW1wbD4gaW1w
bCB7IG5ldyBTYW5kYm94RXh0ZW5zaW9uSW1wbChwYXRoLCB0eXBlKSB9OworICAgICAgICBzdGQ6
OnVuaXF1ZV9wdHI8U2FuZGJveEV4dGVuc2lvbkltcGw+IGltcGwgeyBuZXcgU2FuZGJveEV4dGVu
c2lvbkltcGwocGF0aCwgdHlwZSwgcGlkKSB9OwogICAgICAgICBpZiAoIWltcGwtPm1fdG9rZW4p
CiAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAgICAgcmV0dXJuIGltcGw7CkBAIC02
MSwxMCArNjEsMTIgQEAgcHVibGljOgogICAgIGJvb2wgY29uc3VtZSgpIFdBUk5fVU5VU0VEX1JF
VFVSTgogICAgIHsKICAgICAgICAgbV9oYW5kbGUgPSBzYW5kYm94X2V4dGVuc2lvbl9jb25zdW1l
KG1fdG9rZW4pOworICAgICAgICBpZiAobV9oYW5kbGUgPT0gLTEpCisgICAgICAgICAgICBMT0df
RVJST1IoIkNvdWxkIG5vdCBjcmVhdGUgYSBzYW5kYm94IGV4dGVuc2lvbiBmb3IgJyVzJywgZXJy
bm8gPSAlZCIsIG1fdG9rZW4sIGVycm5vKTsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZX1NJTVVM
QVRPUikKICAgICAgICAgcmV0dXJuICFzYW5kYm94X2NoZWNrKGdldHBpZCgpLCAwLCBTQU5EQk9Y
X0ZJTFRFUl9OT05FKTsKICNlbHNlCi0gICAgICAgIHJldHVybiBtX2hhbmRsZTsKKyAgICAgICAg
cmV0dXJuIG1faGFuZGxlICE9IC0xOwogI2VuZGlmCiAgICAgfQogCkBAIC04MCwyMCArODIsMjIg
QEAgcHVibGljOgogICAgIH0KIAogcHJpdmF0ZToKLSAgICBjaGFyKiBzYW5kYm94RXh0ZW5zaW9u
Rm9yVHlwZShjb25zdCBjaGFyKiBwYXRoLCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUpCisg
ICAgY2hhciogc2FuZGJveEV4dGVuc2lvbkZvclR5cGUoY29uc3QgY2hhciogcGF0aCwgU2FuZGJv
eEV4dGVuc2lvbjo6VHlwZSB0eXBlLCBPcHRpb25hbDxwaWRfdD4gcGlkID0gV1RGOjpudWxsb3B0
KQogICAgIHsKICAgICAgICAgc3dpdGNoICh0eXBlKSB7CiAgICAgICAgIGNhc2UgU2FuZGJveEV4
dGVuc2lvbjo6VHlwZTo6UmVhZE9ubHk6CiAgICAgICAgICAgICByZXR1cm4gc2FuZGJveF9leHRl
bnNpb25faXNzdWVfZmlsZShBUFBfU0FOREJPWF9SRUFELCBwYXRoLCAwKTsKICAgICAgICAgY2Fz
ZSBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpSZWFkV3JpdGU6CiAgICAgICAgICAgICByZXR1cm4g
c2FuZGJveF9leHRlbnNpb25faXNzdWVfZmlsZShBUFBfU0FOREJPWF9SRUFEX1dSSVRFLCBwYXRo
LCAwKTsKKyAgICAgICAgY2FzZSBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpNYWNoOgorICAgICAg
ICAgICAgcmV0dXJuIHNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX21hY2hfdG9fcHJvY2Vzc19ieV9w
aWQoImNvbS5hcHBsZS53ZWJraXQuZXh0ZW5zaW9uLm1hY2giLCBwYXRoLCAwLCBwaWQudmFsdWUo
KSk7CiAgICAgICAgIGNhc2UgU2FuZGJveEV4dGVuc2lvbjo6VHlwZTo6R2VuZXJpYzoKICAgICAg
ICAgICAgIHJldHVybiBzYW5kYm94X2V4dGVuc2lvbl9pc3N1ZV9nZW5lcmljKHBhdGgsIDApOwog
ICAgICAgICB9CiAgICAgfQogCi0gICAgU2FuZGJveEV4dGVuc2lvbkltcGwoY29uc3QgY2hhciog
cGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlKQotICAgICAgICA6IG1fdG9rZW4geyBz
YW5kYm94RXh0ZW5zaW9uRm9yVHlwZShwYXRoLCB0eXBlKSB9CisgICAgU2FuZGJveEV4dGVuc2lv
bkltcGwoY29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlLCBPcHRp
b25hbDxwaWRfdD4gcGlkID0gV1RGOjpudWxsb3B0KQorICAgICAgICA6IG1fdG9rZW4geyBzYW5k
Ym94RXh0ZW5zaW9uRm9yVHlwZShwYXRoLCB0eXBlLCBwaWQpIH0KICAgICB7CiAgICAgfQogCkBA
IC0zNTcsNiArMzYxLDE5IEBAIGJvb2wgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9y
R2UKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorYm9vbCBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVI
YW5kbGVGb3JNYWNoTG9va3VwQnlQaWQoY29uc3QgU3RyaW5nJiBzZXJ2aWNlLCBwaWRfdCBwaWQs
IEhhbmRsZSYgaGFuZGxlKQoreworICAgIEFTU0VSVCghaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lv
bik7CisgICAgCisgICAgaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbiA9IFNhbmRib3hFeHRlbnNp
b25JbXBsOjpjcmVhdGUoc2VydmljZS51dGY4KCkuZGF0YSgpLCBUeXBlOjpNYWNoLCBwaWQpOwor
ICAgIGlmICghaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbikgeworICAgICAgICBXVEZMb2dBbHdh
eXMoIkNvdWxkIG5vdCBjcmVhdGUgYSAnJXMnIHNhbmRib3ggZXh0ZW5zaW9uIiwgc2VydmljZS51
dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICAKKyAgICBy
ZXR1cm4gdHJ1ZTsKK30KKwogU2FuZGJveEV4dGVuc2lvbjo6U2FuZGJveEV4dGVuc2lvbihjb25z
dCBIYW5kbGUmIGhhbmRsZSkKICAgICA6IG1fc2FuZGJveEV4dGVuc2lvbihXVEZNb3ZlKGhhbmRs
ZS5tX3NhbmRib3hFeHRlbnNpb24pKQogewpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Bvb2wuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQcm9jZXNzUG9vbC5oCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQcm9jZXNzUG9vbC5oCSh3b3JraW5nIGNvcHkpCkBAIC02NjIsNiArNjYyLDEwIEBA
IHByaXZhdGU6CiAgICAgc3RkOjp1bmlxdWVfcHRyPFBlckFjdGl2aXR5U3RhdGVDUFVVc2FnZVNh
bXBsZXI+IG1fcGVyQWN0aXZpdHlTdGF0ZUNQVVVzYWdlU2FtcGxlcjsKICNlbmRpZgogCisjaWYg
UExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBSZXRhaW5QdHI8TlNPYmplY3Q+IG1fYWNjZXNzaWJp
bGl0eUVuYWJsZWRPYnNlcnZlcjsKKyNlbmRpZgorCiAgICAgYm9vbCBtX3Nob3VsZFVzZVRlc3Rp
bmdOZXR3b3JrU2Vzc2lvbiB7IGZhbHNlIH07CiAKICAgICBib29sIG1fcHJvY2Vzc1Rlcm1pbmF0
aW9uRW5hYmxlZCB7IHRydWUgfTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBy
b2Nlc3NQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Byb3h5LmNwcAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzU5LDYgKzc1OSw4
IEBAIHZvaWQgV2ViUHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVuY2hpbmcKICAgICAgICAgaWYg
KHhwY19jb25uZWN0aW9uX3QgeHBjQ29ubmVjdGlvbiA9IGNvbm5lY3Rpb24oKS0+eHBjQ29ubmVj
dGlvbigpKQogICAgICAgICAgICAgbV90aHJvdHRsZXIuZGlkQ29ubmVjdFRvUHJvY2Vzcyh4cGNf
Y29ubmVjdGlvbl9nZXRfcGlkKHhwY0Nvbm5lY3Rpb24pKTsKICAgICB9CisKKyAgICB1bmJsb2Nr
QWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKCk7CiAjZW5kaWYKIH0KIApJbmRleDogU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgJKHJldmlzaW9uIDI0MjQwMykKKysr
IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yOTIsNiArMjkyLDEwIEBAIHB1YmxpYzoKICAgICB2b2lkIHJldm9rZUF1ZGlvQ2FwdHVy
ZUV4dGVuc2lvbigpIHsgbV9tZWRpYUNhcHR1cmVTYW5kYm94RXh0ZW5zaW9ucyAmPSB+QXVkaW87
IH0KICNlbmRpZgogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICB2b2lkIHVuYmxvY2tB
Y2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQoKTsKKyNlbmRpZgorCiBwcm90ZWN0ZWQ6CiAgICAg
c3RhdGljIHVpbnQ2NF90IGdlbmVyYXRlUGFnZUlEKCk7CiAgICAgV2ViUHJvY2Vzc1Byb3h5KFdl
YlByb2Nlc3NQb29sJiwgV2Vic2l0ZURhdGFTdG9yZSYsIElzUHJld2FybWVkKTsKQEAgLTQzMCw2
ICs0MzQsNyBAQCBwcml2YXRlOgogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgRm9yZWdy
b3VuZFdlYlByb2Nlc3NUb2tlbiBtX2ZvcmVncm91bmRUb2tlbjsKICAgICBCYWNrZ3JvdW5kV2Vi
UHJvY2Vzc1Rva2VuIG1fYmFja2dyb3VuZFRva2VuOworICAgIGJvb2wgbV9oYXNTZW50TWVzc2Fn
ZVRvVW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIgeyBmYWxzZSB9OwogI2VuZGlmCiAKICAgICBI
YXNoTWFwPFN0cmluZywgdWludDY0X3Q+IG1fcGFnZVVSTFJldGFpbkNvdW50TWFwOwpJbmRleDog
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xDb2NvYS5tbQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQcm9jZXNzUG9vbENv
Y29hLm1tCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9XZWJQcm9jZXNzUG9vbENvY29hLm1tCSh3b3JraW5nIGNvcHkpCkBAIC00MjUsNyArNDI1LDEx
IEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnJlZ2lzdGVyTm90aWZpY2F0aW8KICAgICBtX2RlYWN0
aXZhdGlvbk9ic2VydmVyID0gW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBh
ZGRPYnNlcnZlckZvck5hbWU6TlNBcHBsaWNhdGlvbkRpZFJlc2lnbkFjdGl2ZU5vdGlmaWNhdGlv
biBvYmplY3Q6TlNBcHAgcXVldWU6W05TT3BlcmF0aW9uUXVldWUgY3VycmVudFF1ZXVlXSB1c2lu
Z0Jsb2NrOl4oTlNOb3RpZmljYXRpb24gKm5vdGlmaWNhdGlvbikgewogICAgICAgICBzZXRBcHBs
aWNhdGlvbklzQWN0aXZlKGZhbHNlKTsKICAgICB9XTsKLQorI2Vsc2UKKyAgICBtX2FjY2Vzc2li
aWxpdHlFbmFibGVkT2JzZXJ2ZXIgPSBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50
ZXJdIGFkZE9ic2VydmVyRm9yTmFtZTooX19icmlkZ2UgaWQpa0FYU0FwcGxpY2F0aW9uQWNjZXNz
aWJpbGl0eUVuYWJsZWROb3RpZmljYXRpb24gb2JqZWN0Om5pbCBxdWV1ZTpbTlNPcGVyYXRpb25R
dWV1ZSBjdXJyZW50UXVldWVdIHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlvbiAqbm90ZSkgewor
ICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fcHJvY2Vzc2VzLnNpemUoKTsgKytpKQor
ICAgICAgICAgICAgbV9wcm9jZXNzZXNbaV0tPnVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVySWZO
ZWVkZWQoKTsKKyAgICB9XTsKICNlbmRpZiAvLyAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKIH0KIApA
QCAtNDQzLDYgKzQ0Nyw4IEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnVucmVnaXN0ZXJOb3RpZmlj
YXQKICNlbmRpZgogICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gcmVt
b3ZlT2JzZXJ2ZXI6bV9hY3RpdmF0aW9uT2JzZXJ2ZXIuZ2V0KCldOwogICAgIFtbTlNOb3RpZmlj
YXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6bV9kZWFjdGl2YXRpb25P
YnNlcnZlci5nZXQoKV07CisjZWxzZQorICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVs
dENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6bV9hY2Nlc3NpYmlsaXR5RW5hYmxlZE9ic2VydmVyLmdl
dCgpXTsKICNlbmRpZiAvLyAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKIH0KIApJbmRleDogU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvaW9zL1dlYlByb2Nlc3NQcm94eUlPUy5tbQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV2ViUHJvY2Vzc1Byb3h5SU9TLm1tCShyZXZp
c2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV2ViUHJvY2Vzc1By
b3h5SU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw2ICsyOCw3IEBACiAKICNpZiBQTEFURk9S
TShJT1NfRkFNSUxZKQogCisjaW1wb3J0ICJBY2Nlc3NpYmlsaXR5U3VwcG9ydFNQSS5oIgogI2lt
cG9ydCAiV0tGdWxsS2V5Ym9hcmRBY2Nlc3NXYXRjaGVyLmgiCiAjaW1wb3J0ICJXZWJQcm9jZXNz
TWVzc2FnZXMuaCIKIApAQCAtNDIsNiArNDMsMjUgQEAgYm9vbCBXZWJQcm9jZXNzUHJveHk6OmZ1
bGxLZXlib2FyZEFjY2VzcwogI2VuZGlmCiB9CiAKK3ZvaWQgV2ViUHJvY2Vzc1Byb3h5Ojp1bmJs
b2NrQWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKCkKK3sKKyAgICBpZiAobV9oYXNTZW50TWVz
c2FnZVRvVW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIpCisgICAgICAgIHJldHVybjsKKyAgICBp
ZiAoIV9BWFNBcHBsaWNhdGlvbkFjY2Vzc2liaWxpdHlFbmFibGVkKCkpCisgICAgICAgIHJldHVy
bjsKKyAgICBpZiAoIXByb2Nlc3NJZGVudGlmaWVyKCkpCisgICAgICAgIHJldHVybjsKKyAgICBp
ZiAoIWNhblNlbmRNZXNzYWdlKCkpCisgICAgICAgIHJldHVybjsKKworICAgIFNhbmRib3hFeHRl
bnNpb246OkhhbmRsZSBoYW5kbGU7CisgICAgaWYgKCFTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVI
YW5kbGVGb3JNYWNoTG9va3VwQnlQaWQoImNvbS5hcHBsZS5pcGhvbmUuYXhzZXJ2ZXItc3lzdGVt
d2lkZSIsIHByb2Nlc3NJZGVudGlmaWVyKCksIGhhbmRsZSkpCisgICAgICAgIHJldHVybjsKKwor
ICAgIHNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3M6OlVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVy
KGhhbmRsZSksIDApOworICAgIG1faGFzU2VudE1lc3NhZ2VUb1VuYmxvY2tBY2Nlc3NpYmlsaXR5
U2VydmVyID0gdHJ1ZTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAKICNlbmRpZiAvLyBQ
TEFURk9STShJT1NfRkFNSUxZKQpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBy
b2Nlc3MuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9j
ZXNzLmNwcAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlByb2Nlc3MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODYwLDQgKzE4NjAsMTIgQEAgdm9pZCBX
ZWJQcm9jZXNzOjpjbGVhckN1cnJlbnRNb2RpZmllclN0YQogICAgIFBsYXRmb3JtS2V5Ym9hcmRF
dmVudDo6c2V0Q3VycmVudE1vZGlmaWVyU3RhdGUoeyB9KTsKIH0KIAorI2lmIFBMQVRGT1JNKElP
U19GQU1JTFkpCit2b2lkIFdlYlByb2Nlc3M6OnVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyKGNv
bnN0IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSYgaGFuZGxlKQoreworICAgIGJvb2wgb2sgPSBT
YW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkoaGFuZGxlKTsKKyAgICBBU1NFUlRf
VU5VU0VEKG9rLCBvayk7Cit9CisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CkluZGV4
OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgJKHJldmlzaW9uIDI0MjQwMykKKysr
IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgJKHdvcmtpbmcgY29weSkKQEAg
LTI0NCw2ICsyNDQsOCBAQCBwdWJsaWM6CiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAg
IHZvaWQgYWNjZXNzaWJpbGl0eVByb2Nlc3NTdXNwZW5kZWROb3RpZmljYXRpb24oYm9vbCk7Cisg
ICAgCisgICAgdm9pZCB1bmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcihjb25zdCBTYW5kYm94RXh0
ZW5zaW9uOjpIYW5kbGUmKTsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oQ09DT0EpCkluZGV4OiBT
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbgo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbgkocmV2
aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVz
c2FnZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTE1Myw0ICsxNTMsOCBAQCBtZXNzYWdlcyAtPiBX
ZWJQcm9jZXNzIExlZ2FjeVJlY2VpdmVyIHsKICNlbmRpZgogCiAgICAgQ2xlYXJDdXJyZW50TW9k
aWZpZXJTdGF0ZUZvclRlc3RpbmcoKQorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBV
bmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcihXZWJLaXQ6OlNhbmRib3hFeHRlbnNpb246OkhhbmRs
ZSBoYW5kbGUpCisjZW5kaWYKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363775</attachid>
            <date>2019-03-06 13:00:06 -0800</date>
            <delta_ts>2019-03-06 13:06:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195342-20190306130006.patch</filename>
            <type>text/plain</type>
            <size>15814</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE5LTAzLTA1ICBQZXIgQXJuZSBWb2xsYW4gIDxw
dm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0
eSBzZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIFNQSSB0byBpc3N1ZSBhIG1h
Y2ggZXh0ZW5zaW9uIHRvIGEgcHJvY2VzcyBieSBwaWQuCisKKyAgICAgICAgKiB3dGYvc3BpL2Rh
cndpbi9TYW5kYm94U1BJLmg6CisKIDIwMTktMDItMjggIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdl
YmtpdC5vcmc+CiAKICAgICAgICAgQWRkIFdlYWtIYXNoU2V0CkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9zcGkvZGFyd2luL1NhbmRib3hTUEkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9z
cGkvZGFyd2luL1NhbmRib3hTUEkuaAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dURi93
dGYvc3BpL2Rhcndpbi9TYW5kYm94U1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTYzLDYgKzYzLDcg
QEAgZXh0ZXJuIGNvbnN0IGVudW0gc2FuZGJveF9maWx0ZXJfdHlwZSBTQQogCiBjaGFyICpzYW5k
Ym94X2V4dGVuc2lvbl9pc3N1ZV9maWxlKGNvbnN0IGNoYXIgKmV4dGVuc2lvbl9jbGFzcywgY29u
c3QgY2hhciAqcGF0aCwgdWludDMyX3QgZmxhZ3MpOwogY2hhciAqc2FuZGJveF9leHRlbnNpb25f
aXNzdWVfZ2VuZXJpYyhjb25zdCBjaGFyICpleHRlbnNpb25fY2xhc3MsIHVpbnQzMl90IGZsYWdz
KTsKK2NoYXIgKnNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX21hY2hfdG9fcHJvY2Vzc19ieV9waWQo
Y29uc3QgY2hhciAqZXh0ZW5zaW9uX2NsYXNzLCBjb25zdCBjaGFyICpuYW1lLCB1aW50MzJfdCBm
bGFncywgcGlkX3QpOwogaW50IHNhbmRib3hfY2hlY2socGlkX3QsIGNvbnN0IGNoYXIgKm9wZXJh
dGlvbiwgZW51bSBzYW5kYm94X2ZpbHRlcl90eXBlLCAuLi4pOwogaW50IHNhbmRib3hfY2hlY2tf
YnlfYXVkaXRfdG9rZW4oYXVkaXRfdG9rZW5fdCwgY29uc3QgY2hhciAqb3BlcmF0aW9uLCBlbnVt
IHNhbmRib3hfZmlsdGVyX3R5cGUsIC4uLik7CiBpbnQgc2FuZGJveF9jb250YWluZXJfcGF0aF9m
b3JfcGlkKHBpZF90LCBjaGFyICpidWZmZXIsIHNpemVfdCBidWZzaXplKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNDI1NTYpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDM2IEBACisyMDE5LTAzLTA2ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9s
bGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0eSBz
ZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQnkgZGVmYXVsdCwgYmxvY2sgdGhlIGlP
UyBhY2Nlc3NpYmlsaXR5IHNlcnZlciBpbiB0aGUgc2FuZGJveC4gSWYgYWNjZXNzaWJpbGl0eSBp
cyBlbmFibGVkLAorICAgICAgICBsZXQgdGhlIFVJIHByb2Nlc3MgaXNzdWUgYSBtYWNoIGV4dGVu
c2lvbiB0byB0aGUgV2ViQ29udGVudCBwcm9jZXNzLiBUaGUgc2FuZGJveCBleHRlbnNpb24KKyAg
ICAgICAgaXMgc2VudCB0byB0aGUgV2ViQ29udGVudCBwcm9jZXNzIHRvIGJlIGNvbnN1bWVkLgor
CisgICAgICAgICogUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3VwcG9ydFNQSS5oOgor
ICAgICAgICAqIFJlc291cmNlcy9TYW5kYm94UHJvZmlsZXMvaW9zL2NvbS5hcHBsZS5XZWJLaXQu
V2ViQ29udGVudC5zYjoKKyAgICAgICAgKiBTaGFyZWQvU2FuZGJveEV4dGVuc2lvbi5oOgorICAg
ICAgICAqIFNoYXJlZC9tYWMvU2FuZGJveEV4dGVuc2lvbk1hYy5tbToKKyAgICAgICAgKFdlYktp
dDo6U2FuZGJveEV4dGVuc2lvbkltcGw6OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OlNhbmRi
b3hFeHRlbnNpb25JbXBsOjpzYW5kYm94RXh0ZW5zaW9uRm9yVHlwZSk6CisgICAgICAgIChXZWJL
aXQ6OlNhbmRib3hFeHRlbnNpb25JbXBsOjpTYW5kYm94RXh0ZW5zaW9uSW1wbCk6CisgICAgICAg
IChXZWJLaXQ6OlNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXBCeVBp
ZCk6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW06Cisg
ICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjpyZWdpc3Rlck5vdGlmaWNhdGlvbk9ic2Vy
dmVycyk6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjp1bnJlZ2lzdGVyTm90aWZp
Y2F0aW9uT2JzZXJ2ZXJzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViUHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVuY2hpbmcpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJQcm9jZXNzUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dlYlByb2Nl
c3NQcm94eUlPUy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5Ojp1bmJsb2Nr
QWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBy
b2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzOjp1bmJsb2NrQWNjZXNzaWJp
bGl0eVNlcnZlcik6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmg6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluOgorCiAyMDE5LTAzLTA2ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjIzODQ5
MCk6IFlvdVR1YmUuY29tOiBSZXR1cm5pbmcgUGlQIHRvIFNhZmFyaSBhZnRlciBzbGVlcGluZyBk
ZXZpY2UgbG9zZXMgcGFnZQpJbmRleDogU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkvaW9zL0Fj
Y2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9QbGF0
Zm9ybS9zcGkvaW9zL0FjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgJKHJldmlzaW9uIDI0MjQwMykK
KysrIFNvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3VwcG9ydFNQ
SS5oCSh3b3JraW5nIGNvcHkpCkBAIC00MSw2ICs0MSw4IEBAIFdURl9FWFRFUk5fQ19CRUdJTgog
I2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiBleHRlcm4gQm9vbGVhbiBfQVhTS2V5UmVwZWF0RW5h
YmxlZCgpOwogZXh0ZXJuIENGVGltZUludGVydmFsIF9BWFNLZXlSZXBlYXREZWxheSgpOworZXh0
ZXJuIEJvb2xlYW4gX0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVuYWJsZWQoKTsKK2V4dGVy
biBDRlN0cmluZ1JlZiBrQVhTQXBwbGljYXRpb25BY2Nlc3NpYmlsaXR5RW5hYmxlZE5vdGlmaWNh
dGlvbjsKICNlbmRpZgogCiAjaWYgRU5BQkxFKEFDQ0VTU0lCSUxJVFlfRVZFTlRTKQpJbmRleDog
U291cmNlL1dlYktpdC9SZXNvdXJjZXMvU2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2Vi
S2l0LldlYkNvbnRlbnQuc2IKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9SZXNvdXJjZXMv
U2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuc2IJKHJldmlz
aW9uIDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvUmVzb3VyY2VzL1NhbmRib3hQcm9maWxlcy9p
b3MvY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LnNiCSh3b3JraW5nIGNvcHkpCkBAIC0xODcs
NyArMTg3LDYgQEAKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQuaGlkLmZv
Y3VzIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQuaGlkLnNlcnZpY2Vz
IikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pb2hpZGV2ZW50c3lzdGVtIikKLSAgICAo
Z2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pcGhvbmUuYXhzZXJ2ZXItc3lzdGVtd2lkZSIpCiAgICAg
KGdsb2JhbC1uYW1lICJjb20uYXBwbGUuZnJvbnRib2FyZC53b3Jrc3BhY2UiKQogICAgIChnbG9i
YWwtbmFtZSAiY29tLmFwcGxlLmZyb250Ym9hcmQuc3lzdGVtYXBwc2VydmljZXMiKSkKIApAQCAt
NDUwLDYgKzQ0OSw4IEBACiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuY29yZW1lZGlhLmRl
Y29tcHJlc3Npb25zZXNzaW9uIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5jb3JlbWVk
aWEudmlkZW9xdWV1ZSIpKQogCisoYWxsb3cgbWFjaC1sb29rdXAgKGV4dGVuc2lvbiAiY29tLmFw
cGxlLndlYmtpdC5leHRlbnNpb24ubWFjaCIpKQorCiA7OyBUaGVzZSBzZXJ2aWNlcyBoYXZlIGJl
ZW4gaWRlbnRpZmllZCBhcyB1bnVzZWQgZHVyaW5nIGxpdmluZy1vbi4KIDs7IFRoaXMgbGlzdCBv
dmVycmlkZXMgc29tZSBkZWZpbml0aW9ucyBhYm92ZSBhbmQgaW4gY29tbW9uLnNiLgogOzsgRklY
TUU6IHJlbW92ZSBvdmVycmlkZGVuIHJ1bGVzIG9uY2UgdGhlIGZpbmFsIGxpc3QgaGFzIGJlZW4K
QEAgLTQ3NSw3ICs0NzYsNiBAQAogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFjY2Vzc2li
aWxpdHkuQWNjZXNzaWJpbGl0eVVJU2VydmVyIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBs
ZS5hY2Nlc3NpYmlsaXR5LmhlYXJkIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hY2Nv
dW50c2QuYWNjb3VudG1hbmFnZXIiKQotICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFwcC1z
YW5kYm94Lm1hY2giKQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFwcHN1cHBvcnQuY3Bs
b2dkIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hc3NlcnRpb25kLmFwcGxpY2F0aW9u
c3RhdGVjb25uZWN0aW9uIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hc3NlcnRpb25k
LmV4cGlyYXRpb24iKQpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVuc2lv
bi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1NhbmRib3hFeHRlbnNpb24u
aAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVu
c2lvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC00Niw2ICs0Niw3IEBAIHB1YmxpYzoKICAgICBlbnVt
IGNsYXNzIFR5cGUgewogICAgICAgICBSZWFkT25seSwKICAgICAgICAgUmVhZFdyaXRlLAorICAg
ICAgICBNYWNoLAogICAgICAgICBHZW5lcmljLAogICAgIH07CiAKQEAgLTEwMSw2ICsxMDIsNyBA
QCBwdWJsaWM6CiAgICAgc3RhdGljIGJvb2wgY3JlYXRlSGFuZGxlRm9yUmVhZFdyaXRlRGlyZWN0
b3J5KGNvbnN0IFN0cmluZyYgcGF0aCwgSGFuZGxlJik7IC8vIFdpbGwgYXR0ZW1wdCB0byBjcmVh
dGUgdGhlIGRpcmVjdG9yeS4KICAgICBzdGF0aWMgU3RyaW5nIGNyZWF0ZUhhbmRsZUZvclRlbXBv
cmFyeUZpbGUoY29uc3QgU3RyaW5nJiBwcmVmaXgsIFR5cGUsIEhhbmRsZSYpOwogICAgIHN0YXRp
YyBib29sIGNyZWF0ZUhhbmRsZUZvckdlbmVyaWNFeHRlbnNpb24oY29uc3QgU3RyaW5nJiBleHRl
bnNpb25DbGFzcywgSGFuZGxlJik7CisgICAgc3RhdGljIGJvb2wgY3JlYXRlSGFuZGxlRm9yTWFj
aExvb2t1cEJ5UGlkKGNvbnN0IFN0cmluZyYgc2VydmljZSwgcGlkX3QsIEhhbmRsZSYpOwogICAg
IH5TYW5kYm94RXh0ZW5zaW9uKCk7CiAKICAgICBib29sIGNvbnN1bWUoKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCShyZXZpc2lv
biAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvU2FuZGJveEV4dGVuc2lvbk1h
Yy5tbQkod29ya2luZyBjb3B5KQpAQCAtNDAsOSArNDAsOSBAQCBuYW1lc3BhY2UgV2ViS2l0IHsK
IAogY2xhc3MgU2FuZGJveEV4dGVuc2lvbkltcGwgewogcHVibGljOgotICAgIHN0YXRpYyBzdGQ6
OnVuaXF1ZV9wdHI8U2FuZGJveEV4dGVuc2lvbkltcGw+IGNyZWF0ZShjb25zdCBjaGFyKiBwYXRo
LCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUpCisgICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0
cjxTYW5kYm94RXh0ZW5zaW9uSW1wbD4gY3JlYXRlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRib3hF
eHRlbnNpb246OlR5cGUgdHlwZSwgT3B0aW9uYWw8cGlkX3Q+IHBpZCA9IFdURjo6bnVsbG9wdCkK
ICAgICB7Ci0gICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxTYW5kYm94RXh0ZW5zaW9uSW1wbD4gaW1w
bCB7IG5ldyBTYW5kYm94RXh0ZW5zaW9uSW1wbChwYXRoLCB0eXBlKSB9OworICAgICAgICBzdGQ6
OnVuaXF1ZV9wdHI8U2FuZGJveEV4dGVuc2lvbkltcGw+IGltcGwgeyBuZXcgU2FuZGJveEV4dGVu
c2lvbkltcGwocGF0aCwgdHlwZSwgcGlkKSB9OwogICAgICAgICBpZiAoIWltcGwtPm1fdG9rZW4p
CiAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAgICAgcmV0dXJuIGltcGw7CkBAIC02
MSwxMCArNjEsMTIgQEAgcHVibGljOgogICAgIGJvb2wgY29uc3VtZSgpIFdBUk5fVU5VU0VEX1JF
VFVSTgogICAgIHsKICAgICAgICAgbV9oYW5kbGUgPSBzYW5kYm94X2V4dGVuc2lvbl9jb25zdW1l
KG1fdG9rZW4pOworICAgICAgICBpZiAobV9oYW5kbGUgPT0gLTEpCisgICAgICAgICAgICBMT0df
RVJST1IoIkNvdWxkIG5vdCBjcmVhdGUgYSBzYW5kYm94IGV4dGVuc2lvbiBmb3IgJyVzJywgZXJy
bm8gPSAlZCIsIG1fdG9rZW4sIGVycm5vKTsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZX1NJTVVM
QVRPUikKICAgICAgICAgcmV0dXJuICFzYW5kYm94X2NoZWNrKGdldHBpZCgpLCAwLCBTQU5EQk9Y
X0ZJTFRFUl9OT05FKTsKICNlbHNlCi0gICAgICAgIHJldHVybiBtX2hhbmRsZTsKKyAgICAgICAg
cmV0dXJuIG1faGFuZGxlICE9IC0xOwogI2VuZGlmCiAgICAgfQogCkBAIC04MCwyMCArODIsMjIg
QEAgcHVibGljOgogICAgIH0KIAogcHJpdmF0ZToKLSAgICBjaGFyKiBzYW5kYm94RXh0ZW5zaW9u
Rm9yVHlwZShjb25zdCBjaGFyKiBwYXRoLCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUpCisg
ICAgY2hhciogc2FuZGJveEV4dGVuc2lvbkZvclR5cGUoY29uc3QgY2hhciogcGF0aCwgU2FuZGJv
eEV4dGVuc2lvbjo6VHlwZSB0eXBlLCBPcHRpb25hbDxwaWRfdD4gcGlkID0gV1RGOjpudWxsb3B0
KQogICAgIHsKICAgICAgICAgc3dpdGNoICh0eXBlKSB7CiAgICAgICAgIGNhc2UgU2FuZGJveEV4
dGVuc2lvbjo6VHlwZTo6UmVhZE9ubHk6CiAgICAgICAgICAgICByZXR1cm4gc2FuZGJveF9leHRl
bnNpb25faXNzdWVfZmlsZShBUFBfU0FOREJPWF9SRUFELCBwYXRoLCAwKTsKICAgICAgICAgY2Fz
ZSBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpSZWFkV3JpdGU6CiAgICAgICAgICAgICByZXR1cm4g
c2FuZGJveF9leHRlbnNpb25faXNzdWVfZmlsZShBUFBfU0FOREJPWF9SRUFEX1dSSVRFLCBwYXRo
LCAwKTsKKyAgICAgICAgY2FzZSBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpNYWNoOgorICAgICAg
ICAgICAgcmV0dXJuIHNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX21hY2hfdG9fcHJvY2Vzc19ieV9w
aWQoImNvbS5hcHBsZS53ZWJraXQuZXh0ZW5zaW9uLm1hY2giLCBwYXRoLCAwLCBwaWQudmFsdWUo
KSk7CiAgICAgICAgIGNhc2UgU2FuZGJveEV4dGVuc2lvbjo6VHlwZTo6R2VuZXJpYzoKICAgICAg
ICAgICAgIHJldHVybiBzYW5kYm94X2V4dGVuc2lvbl9pc3N1ZV9nZW5lcmljKHBhdGgsIDApOwog
ICAgICAgICB9CiAgICAgfQogCi0gICAgU2FuZGJveEV4dGVuc2lvbkltcGwoY29uc3QgY2hhciog
cGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlKQotICAgICAgICA6IG1fdG9rZW4geyBz
YW5kYm94RXh0ZW5zaW9uRm9yVHlwZShwYXRoLCB0eXBlKSB9CisgICAgU2FuZGJveEV4dGVuc2lv
bkltcGwoY29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlLCBPcHRp
b25hbDxwaWRfdD4gcGlkID0gV1RGOjpudWxsb3B0KQorICAgICAgICA6IG1fdG9rZW4geyBzYW5k
Ym94RXh0ZW5zaW9uRm9yVHlwZShwYXRoLCB0eXBlLCBwaWQpIH0KICAgICB7CiAgICAgfQogCkBA
IC0zNTcsNiArMzYxLDE5IEBAIGJvb2wgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9y
R2UKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorYm9vbCBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVI
YW5kbGVGb3JNYWNoTG9va3VwQnlQaWQoY29uc3QgU3RyaW5nJiBzZXJ2aWNlLCBwaWRfdCBwaWQs
IEhhbmRsZSYgaGFuZGxlKQoreworICAgIEFTU0VSVCghaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lv
bik7CisgICAgCisgICAgaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbiA9IFNhbmRib3hFeHRlbnNp
b25JbXBsOjpjcmVhdGUoc2VydmljZS51dGY4KCkuZGF0YSgpLCBUeXBlOjpNYWNoLCBwaWQpOwor
ICAgIGlmICghaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbikgeworICAgICAgICBXVEZMb2dBbHdh
eXMoIkNvdWxkIG5vdCBjcmVhdGUgYSAnJXMnIHNhbmRib3ggZXh0ZW5zaW9uIiwgc2VydmljZS51
dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICAKKyAgICBy
ZXR1cm4gdHJ1ZTsKK30KKwogU2FuZGJveEV4dGVuc2lvbjo6U2FuZGJveEV4dGVuc2lvbihjb25z
dCBIYW5kbGUmIGhhbmRsZSkKICAgICA6IG1fc2FuZGJveEV4dGVuc2lvbihXVEZNb3ZlKGhhbmRs
ZS5tX3NhbmRib3hFeHRlbnNpb24pKQogewpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Bvb2wuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQcm9jZXNzUG9vbC5oCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQcm9jZXNzUG9vbC5oCSh3b3JraW5nIGNvcHkpCkBAIC02NjIsNiArNjYyLDEwIEBA
IHByaXZhdGU6CiAgICAgc3RkOjp1bmlxdWVfcHRyPFBlckFjdGl2aXR5U3RhdGVDUFVVc2FnZVNh
bXBsZXI+IG1fcGVyQWN0aXZpdHlTdGF0ZUNQVVVzYWdlU2FtcGxlcjsKICNlbmRpZgogCisjaWYg
UExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBSZXRhaW5QdHI8TlNPYmplY3Q+IG1fYWNjZXNzaWJp
bGl0eUVuYWJsZWRPYnNlcnZlcjsKKyNlbmRpZgorCiAgICAgYm9vbCBtX3Nob3VsZFVzZVRlc3Rp
bmdOZXR3b3JrU2Vzc2lvbiB7IGZhbHNlIH07CiAKICAgICBib29sIG1fcHJvY2Vzc1Rlcm1pbmF0
aW9uRW5hYmxlZCB7IHRydWUgfTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBy
b2Nlc3NQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Byb3h5LmNwcAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzU5LDYgKzc1OSw4
IEBAIHZvaWQgV2ViUHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVuY2hpbmcKICAgICAgICAgaWYg
KHhwY19jb25uZWN0aW9uX3QgeHBjQ29ubmVjdGlvbiA9IGNvbm5lY3Rpb24oKS0+eHBjQ29ubmVj
dGlvbigpKQogICAgICAgICAgICAgbV90aHJvdHRsZXIuZGlkQ29ubmVjdFRvUHJvY2Vzcyh4cGNf
Y29ubmVjdGlvbl9nZXRfcGlkKHhwY0Nvbm5lY3Rpb24pKTsKICAgICB9CisKKyAgICB1bmJsb2Nr
QWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKCk7CiAjZW5kaWYKIH0KIApJbmRleDogU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgJKHJldmlzaW9uIDI0MjQwMykKKysr
IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yOTIsNiArMjkyLDEwIEBAIHB1YmxpYzoKICAgICB2b2lkIHJldm9rZUF1ZGlvQ2FwdHVy
ZUV4dGVuc2lvbigpIHsgbV9tZWRpYUNhcHR1cmVTYW5kYm94RXh0ZW5zaW9ucyAmPSB+QXVkaW87
IH0KICNlbmRpZgogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICB2b2lkIHVuYmxvY2tB
Y2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQoKTsKKyNlbmRpZgorCiBwcm90ZWN0ZWQ6CiAgICAg
c3RhdGljIHVpbnQ2NF90IGdlbmVyYXRlUGFnZUlEKCk7CiAgICAgV2ViUHJvY2Vzc1Byb3h5KFdl
YlByb2Nlc3NQb29sJiwgV2Vic2l0ZURhdGFTdG9yZSYsIElzUHJld2FybWVkKTsKQEAgLTQzMCw2
ICs0MzQsNyBAQCBwcml2YXRlOgogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgRm9yZWdy
b3VuZFdlYlByb2Nlc3NUb2tlbiBtX2ZvcmVncm91bmRUb2tlbjsKICAgICBCYWNrZ3JvdW5kV2Vi
UHJvY2Vzc1Rva2VuIG1fYmFja2dyb3VuZFRva2VuOworICAgIGJvb2wgbV9oYXNTZW50TWVzc2Fn
ZVRvVW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIgeyBmYWxzZSB9OwogI2VuZGlmCiAKICAgICBI
YXNoTWFwPFN0cmluZywgdWludDY0X3Q+IG1fcGFnZVVSTFJldGFpbkNvdW50TWFwOwpJbmRleDog
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xDb2NvYS5tbQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQcm9jZXNzUG9vbENv
Y29hLm1tCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9XZWJQcm9jZXNzUG9vbENvY29hLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw2ICsyNiw3IEBA
CiAjaW1wb3J0ICJjb25maWcuaCIKICNpbXBvcnQgIldlYlByb2Nlc3NQb29sLmgiCiAKKyNpbXBv
cnQgIkFjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgiCiAjaW1wb3J0ICJDb29raWVTdG9yYWdlVXRp
bHNDRi5oIgogI2ltcG9ydCAiTGVnYWN5Q3VzdG9tUHJvdG9jb2xNYW5hZ2VyQ2xpZW50LmgiCiAj
aW1wb3J0ICJOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oIgpAQCAtNDI1LDcgKzQy
NiwxMSBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjpyZWdpc3Rlck5vdGlmaWNhdGlvCiAgICAgbV9k
ZWFjdGl2YXRpb25PYnNlcnZlciA9IFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRl
cl0gYWRkT2JzZXJ2ZXJGb3JOYW1lOk5TQXBwbGljYXRpb25EaWRSZXNpZ25BY3RpdmVOb3RpZmlj
YXRpb24gb2JqZWN0Ok5TQXBwIHF1ZXVlOltOU09wZXJhdGlvblF1ZXVlIGN1cnJlbnRRdWV1ZV0g
dXNpbmdCbG9jazpeKE5TTm90aWZpY2F0aW9uICpub3RpZmljYXRpb24pIHsKICAgICAgICAgc2V0
QXBwbGljYXRpb25Jc0FjdGl2ZShmYWxzZSk7CiAgICAgfV07Ci0KKyNlbHNlCisgICAgbV9hY2Nl
c3NpYmlsaXR5RW5hYmxlZE9ic2VydmVyID0gW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0
Q2VudGVyXSBhZGRPYnNlcnZlckZvck5hbWU6KF9fYnJpZGdlIGlkKWtBWFNBcHBsaWNhdGlvbkFj
Y2Vzc2liaWxpdHlFbmFibGVkTm90aWZpY2F0aW9uIG9iamVjdDpuaWwgcXVldWU6W05TT3BlcmF0
aW9uUXVldWUgY3VycmVudFF1ZXVlXSB1c2luZ0Jsb2NrOl4oTlNOb3RpZmljYXRpb24gKm5vdGUp
IHsKKyAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX3Byb2Nlc3Nlcy5zaXplKCk7ICsr
aSkKKyAgICAgICAgICAgIG1fcHJvY2Vzc2VzW2ldLT51bmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZl
cklmTmVlZGVkKCk7CisgICAgfV07CiAjZW5kaWYgLy8gIVBMQVRGT1JNKElPU19GQU1JTFkpCiB9
CiAKQEAgLTQ0Myw2ICs0NDgsOCBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjp1bnJlZ2lzdGVyTm90
aWZpY2F0CiAjZW5kaWYKICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJd
IHJlbW92ZU9ic2VydmVyOm1fYWN0aXZhdGlvbk9ic2VydmVyLmdldCgpXTsKICAgICBbW05TTm90
aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9ic2VydmVyOm1fZGVhY3RpdmF0
aW9uT2JzZXJ2ZXIuZ2V0KCldOworI2Vsc2UKKyAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRl
ZmF1bHRDZW50ZXJdIHJlbW92ZU9ic2VydmVyOm1fYWNjZXNzaWJpbGl0eUVuYWJsZWRPYnNlcnZl
ci5nZXQoKV07CiAjZW5kaWYgLy8gIVBMQVRGT1JNKElPU19GQU1JTFkpCiB9CiAKSW5kZXg6IFNv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQcm9jZXNzUHJveHlJT1MubW0KPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dlYlByb2Nlc3NQcm94eUlPUy5tbQko
cmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dlYlByb2Nl
c3NQcm94eUlPUy5tbQkod29ya2luZyBjb3B5KQpAQCAtMjgsNiArMjgsNyBAQAogCiAjaWYgUExB
VEZPUk0oSU9TX0ZBTUlMWSkKIAorI2ltcG9ydCAiQWNjZXNzaWJpbGl0eVN1cHBvcnRTUEkuaCIK
ICNpbXBvcnQgIldLRnVsbEtleWJvYXJkQWNjZXNzV2F0Y2hlci5oIgogI2ltcG9ydCAiV2ViUHJv
Y2Vzc01lc3NhZ2VzLmgiCiAKQEAgLTQyLDYgKzQzLDI1IEBAIGJvb2wgV2ViUHJvY2Vzc1Byb3h5
OjpmdWxsS2V5Ym9hcmRBY2Nlc3MKICNlbmRpZgogfQogCit2b2lkIFdlYlByb2Nlc3NQcm94eTo6
dW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXJJZk5lZWRlZCgpCit7CisgICAgaWYgKG1faGFzU2Vu
dE1lc3NhZ2VUb1VuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyKQorICAgICAgICByZXR1cm47Cisg
ICAgaWYgKCFfQVhTQXBwbGljYXRpb25BY2Nlc3NpYmlsaXR5RW5hYmxlZCgpKQorICAgICAgICBy
ZXR1cm47CisgICAgaWYgKCFwcm9jZXNzSWRlbnRpZmllcigpKQorICAgICAgICByZXR1cm47Cisg
ICAgaWYgKCFjYW5TZW5kTWVzc2FnZSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBTYW5kYm94
RXh0ZW5zaW9uOjpIYW5kbGUgaGFuZGxlOworICAgIGlmICghU2FuZGJveEV4dGVuc2lvbjo6Y3Jl
YXRlSGFuZGxlRm9yTWFjaExvb2t1cEJ5UGlkKCJjb20uYXBwbGUuaXBob25lLmF4c2VydmVyLXN5
c3RlbXdpZGUiLCBwcm9jZXNzSWRlbnRpZmllcigpLCBoYW5kbGUpKQorICAgICAgICByZXR1cm47
CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzOjpVbmJsb2NrQWNjZXNzaWJpbGl0eVNl
cnZlcihoYW5kbGUpLCAwKTsKKyAgICBtX2hhc1NlbnRNZXNzYWdlVG9VbmJsb2NrQWNjZXNzaWJp
bGl0eVNlcnZlciA9IHRydWU7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYg
Ly8gUExBVEZPUk0oSU9TX0ZBTUlMWSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQcm9jZXNzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UHJvY2Vzcy5jcHAJKHJldmlzaW9uIDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQcm9jZXNzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTg2MCw0ICsxODYwLDEyIEBAIHZv
aWQgV2ViUHJvY2Vzczo6Y2xlYXJDdXJyZW50TW9kaWZpZXJTdGEKICAgICBQbGF0Zm9ybUtleWJv
YXJkRXZlbnQ6OnNldEN1cnJlbnRNb2RpZmllclN0YXRlKHsgfSk7CiB9CiAKKyNpZiBQTEFURk9S
TShJT1NfRkFNSUxZKQordm9pZCBXZWJQcm9jZXNzOjp1bmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZl
cihjb25zdCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmIGhhbmRsZSkKK3sKKyAgICBib29sIG9r
ID0gU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KGhhbmRsZSk7CisgICAgQVNT
RVJUX1VOVVNFRChvaywgb2spOworfQorI2VuZGlmCisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApJ
bmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCShyZXZpc2lvbiAyNDI0MDMp
CisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNDQsNiArMjQ0LDggQEAgcHVibGljOgogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkK
ICAgICB2b2lkIGFjY2Vzc2liaWxpdHlQcm9jZXNzU3VzcGVuZGVkTm90aWZpY2F0aW9uKGJvb2wp
OworICAgIAorICAgIHZvaWQgdW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIoY29uc3QgU2FuZGJv
eEV4dGVuc2lvbjo6SGFuZGxlJik7CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKENPQ09BKQpJbmRl
eDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVzc2FnZXMuaW4KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVzc2FnZXMuaW4J
KHJldmlzaW9uIDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNz
Lm1lc3NhZ2VzLmluCSh3b3JraW5nIGNvcHkpCkBAIC0xNTMsNCArMTUzLDggQEAgbWVzc2FnZXMg
LT4gV2ViUHJvY2VzcyBMZWdhY3lSZWNlaXZlciB7CiAjZW5kaWYKIAogICAgIENsZWFyQ3VycmVu
dE1vZGlmaWVyU3RhdGVGb3JUZXN0aW5nKCkKKworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisg
ICAgVW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIoV2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uOjpI
YW5kbGUgaGFuZGxlKQorI2VuZGlmCiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363777</attachid>
            <date>2019-03-06 13:06:45 -0800</date>
            <delta_ts>2019-03-07 09:11:17 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195342-20190306130644.patch</filename>
            <type>text/plain</type>
            <size>15812</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE5LTAzLTA1ICBQZXIgQXJuZSBWb2xsYW4gIDxw
dm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0
eSBzZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIFNQSSB0byBpc3N1ZSBhIG1h
Y2ggZXh0ZW5zaW9uIHRvIGEgcHJvY2VzcyBieSBwaWQuCisKKyAgICAgICAgKiB3dGYvc3BpL2Rh
cndpbi9TYW5kYm94U1BJLmg6CisKIDIwMTktMDItMjggIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdl
YmtpdC5vcmc+CiAKICAgICAgICAgQWRkIFdlYWtIYXNoU2V0CkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9zcGkvZGFyd2luL1NhbmRib3hTUEkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9z
cGkvZGFyd2luL1NhbmRib3hTUEkuaAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dURi93
dGYvc3BpL2Rhcndpbi9TYW5kYm94U1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTYzLDYgKzYzLDcg
QEAgZXh0ZXJuIGNvbnN0IGVudW0gc2FuZGJveF9maWx0ZXJfdHlwZSBTQQogCiBjaGFyICpzYW5k
Ym94X2V4dGVuc2lvbl9pc3N1ZV9maWxlKGNvbnN0IGNoYXIgKmV4dGVuc2lvbl9jbGFzcywgY29u
c3QgY2hhciAqcGF0aCwgdWludDMyX3QgZmxhZ3MpOwogY2hhciAqc2FuZGJveF9leHRlbnNpb25f
aXNzdWVfZ2VuZXJpYyhjb25zdCBjaGFyICpleHRlbnNpb25fY2xhc3MsIHVpbnQzMl90IGZsYWdz
KTsKK2NoYXIgKnNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX21hY2hfdG9fcHJvY2Vzc19ieV9waWQo
Y29uc3QgY2hhciAqZXh0ZW5zaW9uX2NsYXNzLCBjb25zdCBjaGFyICpuYW1lLCB1aW50MzJfdCBm
bGFncywgcGlkX3QpOwogaW50IHNhbmRib3hfY2hlY2socGlkX3QsIGNvbnN0IGNoYXIgKm9wZXJh
dGlvbiwgZW51bSBzYW5kYm94X2ZpbHRlcl90eXBlLCAuLi4pOwogaW50IHNhbmRib3hfY2hlY2tf
YnlfYXVkaXRfdG9rZW4oYXVkaXRfdG9rZW5fdCwgY29uc3QgY2hhciAqb3BlcmF0aW9uLCBlbnVt
IHNhbmRib3hfZmlsdGVyX3R5cGUsIC4uLik7CiBpbnQgc2FuZGJveF9jb250YWluZXJfcGF0aF9m
b3JfcGlkKHBpZF90LCBjaGFyICpidWZmZXIsIHNpemVfdCBidWZzaXplKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNDI1NTYpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDM2IEBACisyMDE5LTAzLTA2ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9s
bGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0eSBz
ZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQnkgZGVmYXVsdCwgYmxvY2sgdGhlIGlP
UyBhY2Nlc3NpYmlsaXR5IHNlcnZlciBpbiB0aGUgc2FuZGJveC4gSWYgYWNjZXNzaWJpbGl0eSBp
cyBlbmFibGVkLAorICAgICAgICBsZXQgdGhlIFVJIHByb2Nlc3MgaXNzdWUgYSBtYWNoIGV4dGVu
c2lvbiB0byB0aGUgV2ViQ29udGVudCBwcm9jZXNzLiBUaGUgc2FuZGJveCBleHRlbnNpb24KKyAg
ICAgICAgaXMgc2VudCB0byB0aGUgV2ViQ29udGVudCBwcm9jZXNzIHRvIGJlIGNvbnN1bWVkLgor
CisgICAgICAgICogUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3VwcG9ydFNQSS5oOgor
ICAgICAgICAqIFJlc291cmNlcy9TYW5kYm94UHJvZmlsZXMvaW9zL2NvbS5hcHBsZS5XZWJLaXQu
V2ViQ29udGVudC5zYjoKKyAgICAgICAgKiBTaGFyZWQvU2FuZGJveEV4dGVuc2lvbi5oOgorICAg
ICAgICAqIFNoYXJlZC9tYWMvU2FuZGJveEV4dGVuc2lvbk1hYy5tbToKKyAgICAgICAgKFdlYktp
dDo6U2FuZGJveEV4dGVuc2lvbkltcGw6OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OlNhbmRi
b3hFeHRlbnNpb25JbXBsOjpzYW5kYm94RXh0ZW5zaW9uRm9yVHlwZSk6CisgICAgICAgIChXZWJL
aXQ6OlNhbmRib3hFeHRlbnNpb25JbXBsOjpTYW5kYm94RXh0ZW5zaW9uSW1wbCk6CisgICAgICAg
IChXZWJLaXQ6OlNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXBCeVBp
ZCk6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW06Cisg
ICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjpyZWdpc3Rlck5vdGlmaWNhdGlvbk9ic2Vy
dmVycyk6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjp1bnJlZ2lzdGVyTm90aWZp
Y2F0aW9uT2JzZXJ2ZXJzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViUHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVuY2hpbmcpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJQcm9jZXNzUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dlYlByb2Nl
c3NQcm94eUlPUy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5Ojp1bmJsb2Nr
QWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBy
b2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzOjp1bmJsb2NrQWNjZXNzaWJp
bGl0eVNlcnZlcik6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmg6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluOgorCiAyMDE5LTAzLTA2ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjIzODQ5
MCk6IFlvdVR1YmUuY29tOiBSZXR1cm5pbmcgUGlQIHRvIFNhZmFyaSBhZnRlciBzbGVlcGluZyBk
ZXZpY2UgbG9zZXMgcGFnZQpJbmRleDogU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkvaW9zL0Fj
Y2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9QbGF0
Zm9ybS9zcGkvaW9zL0FjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgJKHJldmlzaW9uIDI0MjQwMykK
KysrIFNvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3VwcG9ydFNQ
SS5oCSh3b3JraW5nIGNvcHkpCkBAIC00MSw2ICs0MSw4IEBAIFdURl9FWFRFUk5fQ19CRUdJTgog
I2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiBleHRlcm4gQm9vbGVhbiBfQVhTS2V5UmVwZWF0RW5h
YmxlZCgpOwogZXh0ZXJuIENGVGltZUludGVydmFsIF9BWFNLZXlSZXBlYXREZWxheSgpOworZXh0
ZXJuIEJvb2xlYW4gX0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVuYWJsZWQoKTsKK2V4dGVy
biBDRlN0cmluZ1JlZiBrQVhTQXBwbGljYXRpb25BY2Nlc3NpYmlsaXR5RW5hYmxlZE5vdGlmaWNh
dGlvbjsKICNlbmRpZgogCiAjaWYgRU5BQkxFKEFDQ0VTU0lCSUxJVFlfRVZFTlRTKQpJbmRleDog
U291cmNlL1dlYktpdC9SZXNvdXJjZXMvU2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2Vi
S2l0LldlYkNvbnRlbnQuc2IKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9SZXNvdXJjZXMv
U2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuc2IJKHJldmlz
aW9uIDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvUmVzb3VyY2VzL1NhbmRib3hQcm9maWxlcy9p
b3MvY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LnNiCSh3b3JraW5nIGNvcHkpCkBAIC0xODcs
NyArMTg3LDYgQEAKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQuaGlkLmZv
Y3VzIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQuaGlkLnNlcnZpY2Vz
IikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pb2hpZGV2ZW50c3lzdGVtIikKLSAgICAo
Z2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pcGhvbmUuYXhzZXJ2ZXItc3lzdGVtd2lkZSIpCiAgICAg
KGdsb2JhbC1uYW1lICJjb20uYXBwbGUuZnJvbnRib2FyZC53b3Jrc3BhY2UiKQogICAgIChnbG9i
YWwtbmFtZSAiY29tLmFwcGxlLmZyb250Ym9hcmQuc3lzdGVtYXBwc2VydmljZXMiKSkKIApAQCAt
NDUwLDYgKzQ0OSw4IEBACiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuY29yZW1lZGlhLmRl
Y29tcHJlc3Npb25zZXNzaW9uIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5jb3JlbWVk
aWEudmlkZW9xdWV1ZSIpKQogCisoYWxsb3cgbWFjaC1sb29rdXAgKGV4dGVuc2lvbiAiY29tLmFw
cGxlLndlYmtpdC5leHRlbnNpb24ubWFjaCIpKQorCiA7OyBUaGVzZSBzZXJ2aWNlcyBoYXZlIGJl
ZW4gaWRlbnRpZmllZCBhcyB1bnVzZWQgZHVyaW5nIGxpdmluZy1vbi4KIDs7IFRoaXMgbGlzdCBv
dmVycmlkZXMgc29tZSBkZWZpbml0aW9ucyBhYm92ZSBhbmQgaW4gY29tbW9uLnNiLgogOzsgRklY
TUU6IHJlbW92ZSBvdmVycmlkZGVuIHJ1bGVzIG9uY2UgdGhlIGZpbmFsIGxpc3QgaGFzIGJlZW4K
QEAgLTQ3NSw3ICs0NzYsNiBAQAogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFjY2Vzc2li
aWxpdHkuQWNjZXNzaWJpbGl0eVVJU2VydmVyIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBs
ZS5hY2Nlc3NpYmlsaXR5LmhlYXJkIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hY2Nv
dW50c2QuYWNjb3VudG1hbmFnZXIiKQotICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFwcC1z
YW5kYm94Lm1hY2giKQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmFwcHN1cHBvcnQuY3Bs
b2dkIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hc3NlcnRpb25kLmFwcGxpY2F0aW9u
c3RhdGVjb25uZWN0aW9uIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5hc3NlcnRpb25k
LmV4cGlyYXRpb24iKQpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVuc2lv
bi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1NhbmRib3hFeHRlbnNpb24u
aAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVu
c2lvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC00Niw2ICs0Niw3IEBAIHB1YmxpYzoKICAgICBlbnVt
IGNsYXNzIFR5cGUgewogICAgICAgICBSZWFkT25seSwKICAgICAgICAgUmVhZFdyaXRlLAorICAg
ICAgICBNYWNoLAogICAgICAgICBHZW5lcmljLAogICAgIH07CiAKQEAgLTEwMSw2ICsxMDIsNyBA
QCBwdWJsaWM6CiAgICAgc3RhdGljIGJvb2wgY3JlYXRlSGFuZGxlRm9yUmVhZFdyaXRlRGlyZWN0
b3J5KGNvbnN0IFN0cmluZyYgcGF0aCwgSGFuZGxlJik7IC8vIFdpbGwgYXR0ZW1wdCB0byBjcmVh
dGUgdGhlIGRpcmVjdG9yeS4KICAgICBzdGF0aWMgU3RyaW5nIGNyZWF0ZUhhbmRsZUZvclRlbXBv
cmFyeUZpbGUoY29uc3QgU3RyaW5nJiBwcmVmaXgsIFR5cGUsIEhhbmRsZSYpOwogICAgIHN0YXRp
YyBib29sIGNyZWF0ZUhhbmRsZUZvckdlbmVyaWNFeHRlbnNpb24oY29uc3QgU3RyaW5nJiBleHRl
bnNpb25DbGFzcywgSGFuZGxlJik7CisgICAgc3RhdGljIGJvb2wgY3JlYXRlSGFuZGxlRm9yTWFj
aExvb2t1cEJ5UGlkKGNvbnN0IFN0cmluZyYgc2VydmljZSwgcGlkX3QsIEhhbmRsZSYpOwogICAg
IH5TYW5kYm94RXh0ZW5zaW9uKCk7CiAKICAgICBib29sIGNvbnN1bWUoKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCShyZXZpc2lv
biAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvU2FuZGJveEV4dGVuc2lvbk1h
Yy5tbQkod29ya2luZyBjb3B5KQpAQCAtNDAsOSArNDAsOSBAQCBuYW1lc3BhY2UgV2ViS2l0IHsK
IAogY2xhc3MgU2FuZGJveEV4dGVuc2lvbkltcGwgewogcHVibGljOgotICAgIHN0YXRpYyBzdGQ6
OnVuaXF1ZV9wdHI8U2FuZGJveEV4dGVuc2lvbkltcGw+IGNyZWF0ZShjb25zdCBjaGFyKiBwYXRo
LCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUpCisgICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0
cjxTYW5kYm94RXh0ZW5zaW9uSW1wbD4gY3JlYXRlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRib3hF
eHRlbnNpb246OlR5cGUgdHlwZSwgT3B0aW9uYWw8cGlkX3Q+IHBpZCA9IFdURjo6bnVsbG9wdCkK
ICAgICB7Ci0gICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxTYW5kYm94RXh0ZW5zaW9uSW1wbD4gaW1w
bCB7IG5ldyBTYW5kYm94RXh0ZW5zaW9uSW1wbChwYXRoLCB0eXBlKSB9OworICAgICAgICBzdGQ6
OnVuaXF1ZV9wdHI8U2FuZGJveEV4dGVuc2lvbkltcGw+IGltcGwgeyBuZXcgU2FuZGJveEV4dGVu
c2lvbkltcGwocGF0aCwgdHlwZSwgcGlkKSB9OwogICAgICAgICBpZiAoIWltcGwtPm1fdG9rZW4p
CiAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAgICAgcmV0dXJuIGltcGw7CkBAIC02
MSwxMCArNjEsMTIgQEAgcHVibGljOgogICAgIGJvb2wgY29uc3VtZSgpIFdBUk5fVU5VU0VEX1JF
VFVSTgogICAgIHsKICAgICAgICAgbV9oYW5kbGUgPSBzYW5kYm94X2V4dGVuc2lvbl9jb25zdW1l
KG1fdG9rZW4pOworICAgICAgICBpZiAobV9oYW5kbGUgPT0gLTEpCisgICAgICAgICAgICBMT0df
RVJST1IoIkNvdWxkIG5vdCBjcmVhdGUgYSBzYW5kYm94IGV4dGVuc2lvbiBmb3IgJyVzJywgZXJy
bm8gPSAlZCIsIG1fdG9rZW4sIGVycm5vKTsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZX1NJTVVM
QVRPUikKICAgICAgICAgcmV0dXJuICFzYW5kYm94X2NoZWNrKGdldHBpZCgpLCAwLCBTQU5EQk9Y
X0ZJTFRFUl9OT05FKTsKICNlbHNlCi0gICAgICAgIHJldHVybiBtX2hhbmRsZTsKKyAgICAgICAg
cmV0dXJuIG1faGFuZGxlICE9IC0xOwogI2VuZGlmCiAgICAgfQogCkBAIC04MCwyMCArODIsMjIg
QEAgcHVibGljOgogICAgIH0KIAogcHJpdmF0ZToKLSAgICBjaGFyKiBzYW5kYm94RXh0ZW5zaW9u
Rm9yVHlwZShjb25zdCBjaGFyKiBwYXRoLCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUpCisg
ICAgY2hhciogc2FuZGJveEV4dGVuc2lvbkZvclR5cGUoY29uc3QgY2hhciogcGF0aCwgU2FuZGJv
eEV4dGVuc2lvbjo6VHlwZSB0eXBlLCBPcHRpb25hbDxwaWRfdD4gcGlkID0gV1RGOjpudWxsb3B0
KQogICAgIHsKICAgICAgICAgc3dpdGNoICh0eXBlKSB7CiAgICAgICAgIGNhc2UgU2FuZGJveEV4
dGVuc2lvbjo6VHlwZTo6UmVhZE9ubHk6CiAgICAgICAgICAgICByZXR1cm4gc2FuZGJveF9leHRl
bnNpb25faXNzdWVfZmlsZShBUFBfU0FOREJPWF9SRUFELCBwYXRoLCAwKTsKICAgICAgICAgY2Fz
ZSBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpSZWFkV3JpdGU6CiAgICAgICAgICAgICByZXR1cm4g
c2FuZGJveF9leHRlbnNpb25faXNzdWVfZmlsZShBUFBfU0FOREJPWF9SRUFEX1dSSVRFLCBwYXRo
LCAwKTsKKyAgICAgICAgY2FzZSBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpNYWNoOgorICAgICAg
ICAgICAgcmV0dXJuIHNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX21hY2hfdG9fcHJvY2Vzc19ieV9w
aWQoImNvbS5hcHBsZS53ZWJraXQuZXh0ZW5zaW9uLm1hY2giX3MsIHBhdGgsIDAsIHBpZC52YWx1
ZSgpKTsKICAgICAgICAgY2FzZSBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpHZW5lcmljOgogICAg
ICAgICAgICAgcmV0dXJuIHNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX2dlbmVyaWMocGF0aCwgMCk7
CiAgICAgICAgIH0KICAgICB9CiAKLSAgICBTYW5kYm94RXh0ZW5zaW9uSW1wbChjb25zdCBjaGFy
KiBwYXRoLCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUpCi0gICAgICAgIDogbV90b2tlbiB7
IHNhbmRib3hFeHRlbnNpb25Gb3JUeXBlKHBhdGgsIHR5cGUpIH0KKyAgICBTYW5kYm94RXh0ZW5z
aW9uSW1wbChjb25zdCBjaGFyKiBwYXRoLCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUsIE9w
dGlvbmFsPHBpZF90PiBwaWQgPSBXVEY6Om51bGxvcHQpCisgICAgICAgIDogbV90b2tlbiB7IHNh
bmRib3hFeHRlbnNpb25Gb3JUeXBlKHBhdGgsIHR5cGUsIHBpZCkgfQogICAgIHsKICAgICB9CiAK
QEAgLTM1Nyw2ICszNjEsMTkgQEAgYm9vbCBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVG
b3JHZQogICAgIHJldHVybiB0cnVlOwogfQogCitib29sIFNhbmRib3hFeHRlbnNpb246OmNyZWF0
ZUhhbmRsZUZvck1hY2hMb29rdXBCeVBpZChjb25zdCBTdHJpbmcmIHNlcnZpY2UsIHBpZF90IHBp
ZCwgSGFuZGxlJiBoYW5kbGUpCit7CisgICAgQVNTRVJUKCFoYW5kbGUubV9zYW5kYm94RXh0ZW5z
aW9uKTsKKyAgICAKKyAgICBoYW5kbGUubV9zYW5kYm94RXh0ZW5zaW9uID0gU2FuZGJveEV4dGVu
c2lvbkltcGw6OmNyZWF0ZShzZXJ2aWNlLnV0ZjgoKS5kYXRhKCksIFR5cGU6Ok1hY2gsIHBpZCk7
CisgICAgaWYgKCFoYW5kbGUubV9zYW5kYm94RXh0ZW5zaW9uKSB7CisgICAgICAgIFdURkxvZ0Fs
d2F5cygiQ291bGQgbm90IGNyZWF0ZSBhICclcycgc2FuZGJveCBleHRlbnNpb24iLCBzZXJ2aWNl
LnV0ZjgoKS5kYXRhKCkpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICAgIAorICAg
IHJldHVybiB0cnVlOworfQorCiBTYW5kYm94RXh0ZW5zaW9uOjpTYW5kYm94RXh0ZW5zaW9uKGNv
bnN0IEhhbmRsZSYgaGFuZGxlKQogICAgIDogbV9zYW5kYm94RXh0ZW5zaW9uKFdURk1vdmUoaGFu
ZGxlLm1fc2FuZGJveEV4dGVuc2lvbikpCiB7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQcm9jZXNzUG9vbC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlByb2Nlc3NQb29sLmgJKHJldmlzaW9uIDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQb29sLmgJKHdvcmtpbmcgY29weSkKQEAgLTY2Miw2ICs2NjIsMTAg
QEAgcHJpdmF0ZToKICAgICBzdGQ6OnVuaXF1ZV9wdHI8UGVyQWN0aXZpdHlTdGF0ZUNQVVVzYWdl
U2FtcGxlcj4gbV9wZXJBY3Rpdml0eVN0YXRlQ1BVVXNhZ2VTYW1wbGVyOwogI2VuZGlmCiAKKyNp
ZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIFJldGFpblB0cjxOU09iamVjdD4gbV9hY2Nlc3Np
YmlsaXR5RW5hYmxlZE9ic2VydmVyOworI2VuZGlmCisKICAgICBib29sIG1fc2hvdWxkVXNlVGVz
dGluZ05ldHdvcmtTZXNzaW9uIHsgZmFsc2UgfTsKIAogICAgIGJvb2wgbV9wcm9jZXNzVGVybWlu
YXRpb25FbmFibGVkIHsgdHJ1ZSB9OwpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Byb3h5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQcm9jZXNzUHJveHkuY3BwCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03NTksNiArNzU5
LDggQEAgdm9pZCBXZWJQcm9jZXNzUHJveHk6OmRpZEZpbmlzaExhdW5jaGluZwogICAgICAgICBp
ZiAoeHBjX2Nvbm5lY3Rpb25fdCB4cGNDb25uZWN0aW9uID0gY29ubmVjdGlvbigpLT54cGNDb25u
ZWN0aW9uKCkpCiAgICAgICAgICAgICBtX3Rocm90dGxlci5kaWRDb25uZWN0VG9Qcm9jZXNzKHhw
Y19jb25uZWN0aW9uX2dldF9waWQoeHBjQ29ubmVjdGlvbikpOwogICAgIH0KKworICAgIHVuYmxv
Y2tBY2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQoKTsKICNlbmRpZgogfQogCkluZGV4OiBTb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuaAkocmV2aXNpb24gMjQyNDAzKQor
KysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI5Miw2ICsyOTIsMTAgQEAgcHVibGljOgogICAgIHZvaWQgcmV2b2tlQXVkaW9DYXB0
dXJlRXh0ZW5zaW9uKCkgeyBtX21lZGlhQ2FwdHVyZVNhbmRib3hFeHRlbnNpb25zICY9IH5BdWRp
bzsgfQogI2VuZGlmCiAKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIHZvaWQgdW5ibG9j
a0FjY2Vzc2liaWxpdHlTZXJ2ZXJJZk5lZWRlZCgpOworI2VuZGlmCisKIHByb3RlY3RlZDoKICAg
ICBzdGF0aWMgdWludDY0X3QgZ2VuZXJhdGVQYWdlSUQoKTsKICAgICBXZWJQcm9jZXNzUHJveHko
V2ViUHJvY2Vzc1Bvb2wmLCBXZWJzaXRlRGF0YVN0b3JlJiwgSXNQcmV3YXJtZWQpOwpAQCAtNDMw
LDYgKzQzNCw3IEBAIHByaXZhdGU6CiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBGb3Jl
Z3JvdW5kV2ViUHJvY2Vzc1Rva2VuIG1fZm9yZWdyb3VuZFRva2VuOwogICAgIEJhY2tncm91bmRX
ZWJQcm9jZXNzVG9rZW4gbV9iYWNrZ3JvdW5kVG9rZW47CisgICAgYm9vbCBtX2hhc1NlbnRNZXNz
YWdlVG9VbmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlciB7IGZhbHNlIH07CiAjZW5kaWYKIAogICAg
IEhhc2hNYXA8U3RyaW5nLCB1aW50NjRfdD4gbV9wYWdlVVJMUmV0YWluQ291bnRNYXA7CkluZGV4
OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQcm9jZXNzUG9vbENvY29hLm1tCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29s
Q29jb2EubW0JKHJldmlzaW9uIDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0Nv
Y29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0JKHdvcmtpbmcgY29weSkKQEAgLTI2LDYgKzI2LDcg
QEAKICNpbXBvcnQgImNvbmZpZy5oIgogI2ltcG9ydCAiV2ViUHJvY2Vzc1Bvb2wuaCIKIAorI2lt
cG9ydCAiQWNjZXNzaWJpbGl0eVN1cHBvcnRTUEkuaCIKICNpbXBvcnQgIkNvb2tpZVN0b3JhZ2VV
dGlsc0NGLmgiCiAjaW1wb3J0ICJMZWdhY3lDdXN0b21Qcm90b2NvbE1hbmFnZXJDbGllbnQuaCIK
ICNpbXBvcnQgIk5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgiCkBAIC00MjUsNyAr
NDI2LDExIEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnJlZ2lzdGVyTm90aWZpY2F0aW8KICAgICBt
X2RlYWN0aXZhdGlvbk9ic2VydmVyID0gW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2Vu
dGVyXSBhZGRPYnNlcnZlckZvck5hbWU6TlNBcHBsaWNhdGlvbkRpZFJlc2lnbkFjdGl2ZU5vdGlm
aWNhdGlvbiBvYmplY3Q6TlNBcHAgcXVldWU6W05TT3BlcmF0aW9uUXVldWUgY3VycmVudFF1ZXVl
XSB1c2luZ0Jsb2NrOl4oTlNOb3RpZmljYXRpb24gKm5vdGlmaWNhdGlvbikgewogICAgICAgICBz
ZXRBcHBsaWNhdGlvbklzQWN0aXZlKGZhbHNlKTsKICAgICB9XTsKLQorI2Vsc2UKKyAgICBtX2Fj
Y2Vzc2liaWxpdHlFbmFibGVkT2JzZXJ2ZXIgPSBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1
bHRDZW50ZXJdIGFkZE9ic2VydmVyRm9yTmFtZTooX19icmlkZ2UgaWQpa0FYU0FwcGxpY2F0aW9u
QWNjZXNzaWJpbGl0eUVuYWJsZWROb3RpZmljYXRpb24gb2JqZWN0Om5pbCBxdWV1ZTpbTlNPcGVy
YXRpb25RdWV1ZSBjdXJyZW50UXVldWVdIHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlvbiAqKSB7
CisgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9wcm9jZXNzZXMuc2l6ZSgpOyArK2kp
CisgICAgICAgICAgICBtX3Byb2Nlc3Nlc1tpXS0+dW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXJJ
Zk5lZWRlZCgpOworICAgIH1dOwogI2VuZGlmIC8vICFQTEFURk9STShJT1NfRkFNSUxZKQogfQog
CkBAIC00NDMsNiArNDQ4LDggQEAgdm9pZCBXZWJQcm9jZXNzUG9vbDo6dW5yZWdpc3Rlck5vdGlm
aWNhdAogI2VuZGlmCiAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBy
ZW1vdmVPYnNlcnZlcjptX2FjdGl2YXRpb25PYnNlcnZlci5nZXQoKV07CiAgICAgW1tOU05vdGlm
aWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNlcnZlcjptX2RlYWN0aXZhdGlv
bk9ic2VydmVyLmdldCgpXTsKKyNlbHNlCisgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZh
dWx0Q2VudGVyXSByZW1vdmVPYnNlcnZlcjptX2FjY2Vzc2liaWxpdHlFbmFibGVkT2JzZXJ2ZXIu
Z2V0KCldOwogI2VuZGlmIC8vICFQTEFURk9STShJT1NfRkFNSUxZKQogfQogCkluZGV4OiBTb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV2ViUHJvY2Vzc1Byb3h5SU9TLm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQcm9jZXNzUHJveHlJT1MubW0JKHJl
dmlzaW9uIDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQcm9jZXNz
UHJveHlJT1MubW0JKHdvcmtpbmcgY29weSkKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCiAKKyNpbXBvcnQgIkFjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgiCiAj
aW1wb3J0ICJXS0Z1bGxLZXlib2FyZEFjY2Vzc1dhdGNoZXIuaCIKICNpbXBvcnQgIldlYlByb2Nl
c3NNZXNzYWdlcy5oIgogCkBAIC00Miw2ICs0MywyNSBAQCBib29sIFdlYlByb2Nlc3NQcm94eTo6
ZnVsbEtleWJvYXJkQWNjZXNzCiAjZW5kaWYKIH0KIAordm9pZCBXZWJQcm9jZXNzUHJveHk6OnVu
YmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQoKQoreworICAgIGlmIChtX2hhc1NlbnRN
ZXNzYWdlVG9VbmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcikKKyAgICAgICAgcmV0dXJuOworICAg
IGlmICghX0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVuYWJsZWQoKSkKKyAgICAgICAgcmV0
dXJuOworICAgIGlmICghcHJvY2Vzc0lkZW50aWZpZXIoKSkKKyAgICAgICAgcmV0dXJuOworICAg
IGlmICghY2FuU2VuZE1lc3NhZ2UoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgU2FuZGJveEV4
dGVuc2lvbjo6SGFuZGxlIGhhbmRsZTsKKyAgICBpZiAoIVNhbmRib3hFeHRlbnNpb246OmNyZWF0
ZUhhbmRsZUZvck1hY2hMb29rdXBCeVBpZCgiY29tLmFwcGxlLmlwaG9uZS5heHNlcnZlci1zeXN0
ZW13aWRlIiwgcHJvY2Vzc0lkZW50aWZpZXIoKSwgaGFuZGxlKSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgc2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzczo6VW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2
ZXIoaGFuZGxlKSwgMCk7CisgICAgbV9oYXNTZW50TWVzc2FnZVRvVW5ibG9ja0FjY2Vzc2liaWxp
dHlTZXJ2ZXIgPSB0cnVlOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKIAogI2VuZGlmIC8v
IFBMQVRGT1JNKElPU19GQU1JTFkpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UHJvY2Vzcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBy
b2Nlc3MuY3BwCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUHJvY2Vzcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4NjAsNCArMTg2MCwxMiBAQCB2b2lk
IFdlYlByb2Nlc3M6OmNsZWFyQ3VycmVudE1vZGlmaWVyU3RhCiAgICAgUGxhdGZvcm1LZXlib2Fy
ZEV2ZW50OjpzZXRDdXJyZW50TW9kaWZpZXJTdGF0ZSh7IH0pOwogfQogCisjaWYgUExBVEZPUk0o
SU9TX0ZBTUlMWSkKK3ZvaWQgV2ViUHJvY2Vzczo6dW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIo
Y29uc3QgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiBoYW5kbGUpCit7CisgICAgYm9vbCBvayA9
IFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShoYW5kbGUpOworICAgIEFTU0VS
VF9VTlVTRUQob2ssIG9rKTsKK30KKyNlbmRpZgorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKSW5k
ZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAkocmV2aXNpb24gMjQyNDAzKQor
KysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAkod29ya2luZyBjb3B5KQpA
QCAtMjQ0LDYgKzI0NCw4IEBAIHB1YmxpYzoKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAg
ICAgdm9pZCBhY2Nlc3NpYmlsaXR5UHJvY2Vzc1N1c3BlbmRlZE5vdGlmaWNhdGlvbihib29sKTsK
KyAgICAKKyAgICB2b2lkIHVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyKGNvbnN0IFNhbmRib3hF
eHRlbnNpb246OkhhbmRsZSYpOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShDT0NPQSkKSW5kZXg6
IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCShy
ZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5t
ZXNzYWdlcy5pbgkod29ya2luZyBjb3B5KQpAQCAtMTUzLDQgKzE1Myw4IEBAIG1lc3NhZ2VzIC0+
IFdlYlByb2Nlc3MgTGVnYWN5UmVjZWl2ZXIgewogI2VuZGlmCiAKICAgICBDbGVhckN1cnJlbnRN
b2RpZmllclN0YXRlRm9yVGVzdGluZygpCisKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAg
IFVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyKFdlYktpdDo6U2FuZGJveEV4dGVuc2lvbjo6SGFu
ZGxlIGhhbmRsZSkKKyNlbmRpZgogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363882</attachid>
            <date>2019-03-07 09:11:18 -0800</date>
            <delta_ts>2019-03-11 09:51:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195342-20190307091117.patch</filename>
            <type>text/plain</type>
            <size>15537</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE5LTAzLTA1ICBQZXIgQXJuZSBWb2xsYW4gIDxw
dm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0
eSBzZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIFNQSSB0byBpc3N1ZSBhIG1h
Y2ggZXh0ZW5zaW9uIHRvIGEgcHJvY2VzcyBieSBwaWQuCisKKyAgICAgICAgKiB3dGYvc3BpL2Rh
cndpbi9TYW5kYm94U1BJLmg6CisKIDIwMTktMDItMjggIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdl
YmtpdC5vcmc+CiAKICAgICAgICAgQWRkIFdlYWtIYXNoU2V0CkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9zcGkvZGFyd2luL1NhbmRib3hTUEkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9z
cGkvZGFyd2luL1NhbmRib3hTUEkuaAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dURi93
dGYvc3BpL2Rhcndpbi9TYW5kYm94U1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTYzLDYgKzYzLDcg
QEAgZXh0ZXJuIGNvbnN0IGVudW0gc2FuZGJveF9maWx0ZXJfdHlwZSBTQQogCiBjaGFyICpzYW5k
Ym94X2V4dGVuc2lvbl9pc3N1ZV9maWxlKGNvbnN0IGNoYXIgKmV4dGVuc2lvbl9jbGFzcywgY29u
c3QgY2hhciAqcGF0aCwgdWludDMyX3QgZmxhZ3MpOwogY2hhciAqc2FuZGJveF9leHRlbnNpb25f
aXNzdWVfZ2VuZXJpYyhjb25zdCBjaGFyICpleHRlbnNpb25fY2xhc3MsIHVpbnQzMl90IGZsYWdz
KTsKK2NoYXIgKnNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX21hY2hfdG9fcHJvY2Vzc19ieV9waWQo
Y29uc3QgY2hhciAqZXh0ZW5zaW9uX2NsYXNzLCBjb25zdCBjaGFyICpuYW1lLCB1aW50MzJfdCBm
bGFncywgcGlkX3QpOwogaW50IHNhbmRib3hfY2hlY2socGlkX3QsIGNvbnN0IGNoYXIgKm9wZXJh
dGlvbiwgZW51bSBzYW5kYm94X2ZpbHRlcl90eXBlLCAuLi4pOwogaW50IHNhbmRib3hfY2hlY2tf
YnlfYXVkaXRfdG9rZW4oYXVkaXRfdG9rZW5fdCwgY29uc3QgY2hhciAqb3BlcmF0aW9uLCBlbnVt
IHNhbmRib3hfZmlsdGVyX3R5cGUsIC4uLik7CiBpbnQgc2FuZGJveF9jb250YWluZXJfcGF0aF9m
b3JfcGlkKHBpZF90LCBjaGFyICpidWZmZXIsIHNpemVfdCBidWZzaXplKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNDI1NTYpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDM4IEBACisyMDE5LTAzLTA2ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9s
bGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0eSBz
ZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQnkgZGVmYXVsdCwgYmxvY2sgdGhlIGlP
UyBhY2Nlc3NpYmlsaXR5IHNlcnZlciBpbiB0aGUgc2FuZGJveC4gSWYgYWNjZXNzaWJpbGl0eSBp
cyBlbmFibGVkLAorICAgICAgICBsZXQgdGhlIFVJIHByb2Nlc3MgaXNzdWUgYSBtYWNoIGV4dGVu
c2lvbiB0byB0aGUgV2ViQ29udGVudCBwcm9jZXNzLiBUaGUgVUkgcHJvY2VzcyB3aWxsCisgICAg
ICAgIGlzc3VlIHRoZSBtYWNoIGV4dGVuc2lvbiB0aGUgdGhlIFdlYkNvbnRlbnQgcHJvY2VzcyBi
eSBpdHMgcHJvY2VzcyBpZGVudGlmaWVyLiBUaGUgc2FuZGJveAorICAgICAgICBleHRlbnNpb24g
aGFuZGxlIGlzIHNlbnQgdG8gdGhlIFdlYkNvbnRlbnQgcHJvY2VzcyB0byBiZSBjb25zdW1lZC4g
VGhlIG1lc3NhZ2Ugd2lsbCBiZSBzZW50CisgICAgICAgIHdoZW4gdGhlIFdlYlByb2Nlc3MgaGFz
IGZpbmlzaGVkIGxhdW5jaGluZywgYW5kIGFsc28gd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIHR1cm5l
ZCBvbi4KKworICAgICAgICAqIFBsYXRmb3JtL3NwaS9pb3MvQWNjZXNzaWJpbGl0eVN1cHBvcnRT
UEkuaDoKKyAgICAgICAgKiBSZXNvdXJjZXMvU2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUu
V2ViS2l0LldlYkNvbnRlbnQuc2I6CisgICAgICAgICogU2hhcmVkL1NhbmRib3hFeHRlbnNpb24u
aDoKKyAgICAgICAgKiBTaGFyZWQvbWFjL1NhbmRib3hFeHRlbnNpb25NYWMubW06CisgICAgICAg
IChXZWJLaXQ6OlNhbmRib3hFeHRlbnNpb25JbXBsOjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0
OjpTYW5kYm94RXh0ZW5zaW9uSW1wbDo6c2FuZGJveEV4dGVuc2lvbkZvclR5cGUpOgorICAgICAg
ICAoV2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uSW1wbDo6U2FuZGJveEV4dGVuc2lvbkltcGwpOgor
ICAgICAgICAoV2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JNYWNoTG9v
a3VwQnlQaWQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9XZWJQcm9jZXNzUG9vbENvY29h
Lm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6cmVnaXN0ZXJOb3RpZmljYXRp
b25PYnNlcnZlcnMpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6dW5yZWdpc3Rl
ck5vdGlmaWNhdGlvbk9ic2VydmVycyk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlByb2Nlc3NQ
b29sLmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6ZGlkRmluaXNoTGF1bmNoaW5nKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9X
ZWJQcm9jZXNzUHJveHlJT1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6
dW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXJJZk5lZWRlZCk6CisgICAgICAgICogV2ViUHJvY2Vz
cy9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6dW5ibG9ja0Fj
Y2Vzc2liaWxpdHlTZXJ2ZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbjoKKwogMjAxOS0wMy0w
NiAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04g
KHIyMzg0OTApOiBZb3VUdWJlLmNvbTogUmV0dXJuaW5nIFBpUCB0byBTYWZhcmkgYWZ0ZXIgc2xl
ZXBpbmcgZGV2aWNlIGxvc2VzIHBhZ2UKSW5kZXg6IFNvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3Bp
L2lvcy9BY2Nlc3NpYmlsaXR5U3VwcG9ydFNQSS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3VwcG9ydFNQSS5oCShyZXZpc2lvbiAy
NDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvQWNjZXNzaWJpbGl0eVN1
cHBvcnRTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtNDEsNiArNDEsOCBAQCBXVEZfRVhURVJOX0Nf
QkVHSU4KICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogZXh0ZXJuIEJvb2xlYW4gX0FYU0tleVJl
cGVhdEVuYWJsZWQoKTsKIGV4dGVybiBDRlRpbWVJbnRlcnZhbCBfQVhTS2V5UmVwZWF0RGVsYXko
KTsKK2V4dGVybiBCb29sZWFuIF9BWFNBcHBsaWNhdGlvbkFjY2Vzc2liaWxpdHlFbmFibGVkKCk7
CitleHRlcm4gQ0ZTdHJpbmdSZWYga0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVuYWJsZWRO
b3RpZmljYXRpb247CiAjZW5kaWYKIAogI2lmIEVOQUJMRShBQ0NFU1NJQklMSVRZX0VWRU5UUykK
SW5kZXg6IFNvdXJjZS9XZWJLaXQvUmVzb3VyY2VzL1NhbmRib3hQcm9maWxlcy9pb3MvY29tLmFw
cGxlLldlYktpdC5XZWJDb250ZW50LnNiCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvUmVz
b3VyY2VzL1NhbmRib3hQcm9maWxlcy9pb3MvY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LnNi
CShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1Jlc291cmNlcy9TYW5kYm94UHJv
ZmlsZXMvaW9zL2NvbS5hcHBsZS5XZWJLaXQuV2ViQ29udGVudC5zYgkod29ya2luZyBjb3B5KQpA
QCAtMTg3LDcgKzE4Nyw2IEBACiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuYmFja2JvYXJk
LmhpZC5mb2N1cyIpCiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuYmFja2JvYXJkLmhpZC5z
ZXJ2aWNlcyIpCiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuaW9oaWRldmVudHN5c3RlbSIp
Ci0gICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuaXBob25lLmF4c2VydmVyLXN5c3RlbXdpZGUi
KQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmZyb250Ym9hcmQud29ya3NwYWNlIikKICAg
ICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5mcm9udGJvYXJkLnN5c3RlbWFwcHNlcnZpY2VzIikp
CiAKQEAgLTQ1MCw2ICs0NDksOCBAQAogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmNvcmVt
ZWRpYS5kZWNvbXByZXNzaW9uc2Vzc2lvbiIpCiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUu
Y29yZW1lZGlhLnZpZGVvcXVldWUiKSkKIAorKGFsbG93IG1hY2gtbG9va3VwIChleHRlbnNpb24g
ImNvbS5hcHBsZS53ZWJraXQuZXh0ZW5zaW9uLm1hY2giKSkKKwogOzsgVGhlc2Ugc2VydmljZXMg
aGF2ZSBiZWVuIGlkZW50aWZpZWQgYXMgdW51c2VkIGR1cmluZyBsaXZpbmctb24uCiA7OyBUaGlz
IGxpc3Qgb3ZlcnJpZGVzIHNvbWUgZGVmaW5pdGlvbnMgYWJvdmUgYW5kIGluIGNvbW1vbi5zYi4K
IDs7IEZJWE1FOiByZW1vdmUgb3ZlcnJpZGRlbiBydWxlcyBvbmNlIHRoZSBmaW5hbCBsaXN0IGhh
cyBiZWVuCkluZGV4OiBTb3VyY2UvV2ViS2l0L1NoYXJlZC9TYW5kYm94RXh0ZW5zaW9uLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVuc2lvbi5oCShyZXZp
c2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9TYW5kYm94RXh0ZW5zaW9uLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTQ2LDYgKzQ2LDcgQEAgcHVibGljOgogICAgIGVudW0gY2xhc3Mg
VHlwZSB7CiAgICAgICAgIFJlYWRPbmx5LAogICAgICAgICBSZWFkV3JpdGUsCisgICAgICAgIE1h
Y2gsCiAgICAgICAgIEdlbmVyaWMsCiAgICAgfTsKIApAQCAtMTAxLDYgKzEwMiw3IEBAIHB1Ymxp
YzoKICAgICBzdGF0aWMgYm9vbCBjcmVhdGVIYW5kbGVGb3JSZWFkV3JpdGVEaXJlY3RvcnkoY29u
c3QgU3RyaW5nJiBwYXRoLCBIYW5kbGUmKTsgLy8gV2lsbCBhdHRlbXB0IHRvIGNyZWF0ZSB0aGUg
ZGlyZWN0b3J5LgogICAgIHN0YXRpYyBTdHJpbmcgY3JlYXRlSGFuZGxlRm9yVGVtcG9yYXJ5Rmls
ZShjb25zdCBTdHJpbmcmIHByZWZpeCwgVHlwZSwgSGFuZGxlJik7CiAgICAgc3RhdGljIGJvb2wg
Y3JlYXRlSGFuZGxlRm9yR2VuZXJpY0V4dGVuc2lvbihjb25zdCBTdHJpbmcmIGV4dGVuc2lvbkNs
YXNzLCBIYW5kbGUmKTsKKyAgICBzdGF0aWMgYm9vbCBjcmVhdGVIYW5kbGVGb3JNYWNoTG9va3Vw
QnlQaWQoY29uc3QgU3RyaW5nJiBzZXJ2aWNlLCBwaWRfdCwgSGFuZGxlJik7CiAgICAgflNhbmRi
b3hFeHRlbnNpb24oKTsKIAogICAgIGJvb2wgY29uc3VtZSgpOwpJbmRleDogU291cmNlL1dlYktp
dC9TaGFyZWQvbWFjL1NhbmRib3hFeHRlbnNpb25NYWMubW0KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9TaGFyZWQvbWFjL1NhbmRib3hFeHRlbnNpb25NYWMubW0JKHJldmlzaW9uIDI0MjQw
MykKKysrIFNvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCSh3
b3JraW5nIGNvcHkpCkBAIC00MCw5ICs0MCw5IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFz
cyBTYW5kYm94RXh0ZW5zaW9uSW1wbCB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIHN0ZDo6dW5pcXVl
X3B0cjxTYW5kYm94RXh0ZW5zaW9uSW1wbD4gY3JlYXRlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRi
b3hFeHRlbnNpb246OlR5cGUgdHlwZSkKKyAgICBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPFNhbmRi
b3hFeHRlbnNpb25JbXBsPiBjcmVhdGUoY29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lv
bjo6VHlwZSB0eXBlLCBPcHRpb25hbDxwaWRfdD4gcGlkID0gV1RGOjpudWxsb3B0KQogICAgIHsK
LSAgICAgICAgc3RkOjp1bmlxdWVfcHRyPFNhbmRib3hFeHRlbnNpb25JbXBsPiBpbXBsIHsgbmV3
IFNhbmRib3hFeHRlbnNpb25JbXBsKHBhdGgsIHR5cGUpIH07CisgICAgICAgIHN0ZDo6dW5pcXVl
X3B0cjxTYW5kYm94RXh0ZW5zaW9uSW1wbD4gaW1wbCB7IG5ldyBTYW5kYm94RXh0ZW5zaW9uSW1w
bChwYXRoLCB0eXBlLCBwaWQpIH07CiAgICAgICAgIGlmICghaW1wbC0+bV90b2tlbikKICAgICAg
ICAgICAgIHJldHVybiBudWxscHRyOwogICAgICAgICByZXR1cm4gaW1wbDsKQEAgLTY0LDYgKzY0
LDEwIEBAIHB1YmxpYzoKICNpZiBQTEFURk9STShJT1NfRkFNSUxZX1NJTVVMQVRPUikKICAgICAg
ICAgcmV0dXJuICFzYW5kYm94X2NoZWNrKGdldHBpZCgpLCAwLCBTQU5EQk9YX0ZJTFRFUl9OT05F
KTsKICNlbHNlCisgICAgICAgIGlmIChtX2hhbmRsZSA9PSAtMSkgeworICAgICAgICAgICAgTE9H
X0VSUk9SKCJDb3VsZCBub3QgY3JlYXRlIGEgc2FuZGJveCBleHRlbnNpb24gZm9yICclcycsIGVy
cm5vID0gJWQiLCBtX3Rva2VuLCBlcnJubyk7CisgICAgICAgICAgICByZXR1cm4gZmFsc2U7Cisg
ICAgICAgIH0KICAgICAgICAgcmV0dXJuIG1faGFuZGxlOwogI2VuZGlmCiAgICAgfQpAQCAtODAs
MjAgKzg0LDIyIEBAIHB1YmxpYzoKICAgICB9CiAKIHByaXZhdGU6Ci0gICAgY2hhciogc2FuZGJv
eEV4dGVuc2lvbkZvclR5cGUoY29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlw
ZSB0eXBlKQorICAgIGNoYXIqIHNhbmRib3hFeHRlbnNpb25Gb3JUeXBlKGNvbnN0IGNoYXIqIHBh
dGgsIFNhbmRib3hFeHRlbnNpb246OlR5cGUgdHlwZSwgT3B0aW9uYWw8cGlkX3Q+IHBpZCA9IFdU
Rjo6bnVsbG9wdCkKICAgICB7CiAgICAgICAgIHN3aXRjaCAodHlwZSkgewogICAgICAgICBjYXNl
IFNhbmRib3hFeHRlbnNpb246OlR5cGU6OlJlYWRPbmx5OgogICAgICAgICAgICAgcmV0dXJuIHNh
bmRib3hfZXh0ZW5zaW9uX2lzc3VlX2ZpbGUoQVBQX1NBTkRCT1hfUkVBRCwgcGF0aCwgMCk7CiAg
ICAgICAgIGNhc2UgU2FuZGJveEV4dGVuc2lvbjo6VHlwZTo6UmVhZFdyaXRlOgogICAgICAgICAg
ICAgcmV0dXJuIHNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX2ZpbGUoQVBQX1NBTkRCT1hfUkVBRF9X
UklURSwgcGF0aCwgMCk7CisgICAgICAgIGNhc2UgU2FuZGJveEV4dGVuc2lvbjo6VHlwZTo6TWFj
aDoKKyAgICAgICAgICAgIHJldHVybiBzYW5kYm94X2V4dGVuc2lvbl9pc3N1ZV9tYWNoX3RvX3By
b2Nlc3NfYnlfcGlkKCJjb20uYXBwbGUud2Via2l0LmV4dGVuc2lvbi5tYWNoIl9zLCBwYXRoLCAw
LCBwaWQudmFsdWUoKSk7CiAgICAgICAgIGNhc2UgU2FuZGJveEV4dGVuc2lvbjo6VHlwZTo6R2Vu
ZXJpYzoKICAgICAgICAgICAgIHJldHVybiBzYW5kYm94X2V4dGVuc2lvbl9pc3N1ZV9nZW5lcmlj
KHBhdGgsIDApOwogICAgICAgICB9CiAgICAgfQogCi0gICAgU2FuZGJveEV4dGVuc2lvbkltcGwo
Y29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlKQotICAgICAgICA6
IG1fdG9rZW4geyBzYW5kYm94RXh0ZW5zaW9uRm9yVHlwZShwYXRoLCB0eXBlKSB9CisgICAgU2Fu
ZGJveEV4dGVuc2lvbkltcGwoY29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlw
ZSB0eXBlLCBPcHRpb25hbDxwaWRfdD4gcGlkID0gV1RGOjpudWxsb3B0KQorICAgICAgICA6IG1f
dG9rZW4geyBzYW5kYm94RXh0ZW5zaW9uRm9yVHlwZShwYXRoLCB0eXBlLCBwaWQpIH0KICAgICB7
CiAgICAgfQogCkBAIC0zNTcsNiArMzYzLDE5IEBAIGJvb2wgU2FuZGJveEV4dGVuc2lvbjo6Y3Jl
YXRlSGFuZGxlRm9yR2UKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorYm9vbCBTYW5kYm94RXh0ZW5z
aW9uOjpjcmVhdGVIYW5kbGVGb3JNYWNoTG9va3VwQnlQaWQoY29uc3QgU3RyaW5nJiBzZXJ2aWNl
LCBwaWRfdCBwaWQsIEhhbmRsZSYgaGFuZGxlKQoreworICAgIEFTU0VSVCghaGFuZGxlLm1fc2Fu
ZGJveEV4dGVuc2lvbik7CisgICAgCisgICAgaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbiA9IFNh
bmRib3hFeHRlbnNpb25JbXBsOjpjcmVhdGUoc2VydmljZS51dGY4KCkuZGF0YSgpLCBUeXBlOjpN
YWNoLCBwaWQpOworICAgIGlmICghaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbikgeworICAgICAg
ICBXVEZMb2dBbHdheXMoIkNvdWxkIG5vdCBjcmVhdGUgYSAnJXMnIHNhbmRib3ggZXh0ZW5zaW9u
Iiwgc2VydmljZS51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0K
KyAgICAKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwogU2FuZGJveEV4dGVuc2lvbjo6U2FuZGJveEV4
dGVuc2lvbihjb25zdCBIYW5kbGUmIGhhbmRsZSkKICAgICA6IG1fc2FuZGJveEV4dGVuc2lvbihX
VEZNb3ZlKGhhbmRsZS5tX3NhbmRib3hFeHRlbnNpb24pKQogewpJbmRleDogU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCSh3b3JraW5nIGNvcHkpCkBAIC02NjIs
NiArNjYyLDEwIEBAIHByaXZhdGU6CiAgICAgc3RkOjp1bmlxdWVfcHRyPFBlckFjdGl2aXR5U3Rh
dGVDUFVVc2FnZVNhbXBsZXI+IG1fcGVyQWN0aXZpdHlTdGF0ZUNQVVVzYWdlU2FtcGxlcjsKICNl
bmRpZgogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBSZXRhaW5QdHI8TlNPYmplY3Q+
IG1fYWNjZXNzaWJpbGl0eUVuYWJsZWRPYnNlcnZlcjsKKyNlbmRpZgorCiAgICAgYm9vbCBtX3No
b3VsZFVzZVRlc3RpbmdOZXR3b3JrU2Vzc2lvbiB7IGZhbHNlIH07CiAKICAgICBib29sIG1fcHJv
Y2Vzc1Rlcm1pbmF0aW9uRW5hYmxlZCB7IHRydWUgfTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAt
NzU5LDYgKzc1OSw4IEBAIHZvaWQgV2ViUHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVuY2hpbmcK
ICAgICAgICAgaWYgKHhwY19jb25uZWN0aW9uX3QgeHBjQ29ubmVjdGlvbiA9IGNvbm5lY3Rpb24o
KS0+eHBjQ29ubmVjdGlvbigpKQogICAgICAgICAgICAgbV90aHJvdHRsZXIuZGlkQ29ubmVjdFRv
UHJvY2Vzcyh4cGNfY29ubmVjdGlvbl9nZXRfcGlkKHhwY0Nvbm5lY3Rpb24pKTsKICAgICB9CisK
KyAgICB1bmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKCk7CiAjZW5kaWYKIH0KIApJ
bmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgJKHJldmlzaW9u
IDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yOTIsNiArMjkyLDEwIEBAIHB1YmxpYzoKICAgICB2b2lkIHJldm9r
ZUF1ZGlvQ2FwdHVyZUV4dGVuc2lvbigpIHsgbV9tZWRpYUNhcHR1cmVTYW5kYm94RXh0ZW5zaW9u
cyAmPSB+QXVkaW87IH0KICNlbmRpZgogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICB2
b2lkIHVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQoKTsKKyNlbmRpZgorCiBwcm90
ZWN0ZWQ6CiAgICAgc3RhdGljIHVpbnQ2NF90IGdlbmVyYXRlUGFnZUlEKCk7CiAgICAgV2ViUHJv
Y2Vzc1Byb3h5KFdlYlByb2Nlc3NQb29sJiwgV2Vic2l0ZURhdGFTdG9yZSYsIElzUHJld2FybWVk
KTsKQEAgLTQzMCw2ICs0MzQsNyBAQCBwcml2YXRlOgogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkp
CiAgICAgRm9yZWdyb3VuZFdlYlByb2Nlc3NUb2tlbiBtX2ZvcmVncm91bmRUb2tlbjsKICAgICBC
YWNrZ3JvdW5kV2ViUHJvY2Vzc1Rva2VuIG1fYmFja2dyb3VuZFRva2VuOworICAgIGJvb2wgbV9o
YXNTZW50TWVzc2FnZVRvVW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIgeyBmYWxzZSB9OwogI2Vu
ZGlmCiAKICAgICBIYXNoTWFwPFN0cmluZywgdWludDY0X3Q+IG1fcGFnZVVSTFJldGFpbkNvdW50
TWFwOwpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xD
b2NvYS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQ
cm9jZXNzUG9vbENvY29hLm1tCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9Db2NvYS9XZWJQcm9jZXNzUG9vbENvY29hLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0y
Niw2ICsyNiw3IEBACiAjaW1wb3J0ICJjb25maWcuaCIKICNpbXBvcnQgIldlYlByb2Nlc3NQb29s
LmgiCiAKKyNpbXBvcnQgIkFjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgiCiAjaW1wb3J0ICJDb29r
aWVTdG9yYWdlVXRpbHNDRi5oIgogI2ltcG9ydCAiTGVnYWN5Q3VzdG9tUHJvdG9jb2xNYW5hZ2Vy
Q2xpZW50LmgiCiAjaW1wb3J0ICJOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oIgpA
QCAtNDI1LDcgKzQyNiwxMSBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjpyZWdpc3Rlck5vdGlmaWNh
dGlvCiAgICAgbV9kZWFjdGl2YXRpb25PYnNlcnZlciA9IFtbTlNOb3RpZmljYXRpb25DZW50ZXIg
ZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXJGb3JOYW1lOk5TQXBwbGljYXRpb25EaWRSZXNpZ25B
Y3RpdmVOb3RpZmljYXRpb24gb2JqZWN0Ok5TQXBwIHF1ZXVlOltOU09wZXJhdGlvblF1ZXVlIGN1
cnJlbnRRdWV1ZV0gdXNpbmdCbG9jazpeKE5TTm90aWZpY2F0aW9uICpub3RpZmljYXRpb24pIHsK
ICAgICAgICAgc2V0QXBwbGljYXRpb25Jc0FjdGl2ZShmYWxzZSk7CiAgICAgfV07Ci0KKyNlbHNl
CisgICAgbV9hY2Nlc3NpYmlsaXR5RW5hYmxlZE9ic2VydmVyID0gW1tOU05vdGlmaWNhdGlvbkNl
bnRlciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlckZvck5hbWU6KF9fYnJpZGdlIGlkKWtBWFNB
cHBsaWNhdGlvbkFjY2Vzc2liaWxpdHlFbmFibGVkTm90aWZpY2F0aW9uIG9iamVjdDpuaWwgcXVl
dWU6W05TT3BlcmF0aW9uUXVldWUgY3VycmVudFF1ZXVlXSB1c2luZ0Jsb2NrOl4oTlNOb3RpZmlj
YXRpb24gKikgeworICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fcHJvY2Vzc2VzLnNp
emUoKTsgKytpKQorICAgICAgICAgICAgbV9wcm9jZXNzZXNbaV0tPnVuYmxvY2tBY2Nlc3NpYmls
aXR5U2VydmVySWZOZWVkZWQoKTsKKyAgICB9XTsKICNlbmRpZiAvLyAhUExBVEZPUk0oSU9TX0ZB
TUlMWSkKIH0KIApAQCAtNDQzLDYgKzQ0OCw4IEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnVucmVn
aXN0ZXJOb3RpZmljYXQKICNlbmRpZgogICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVs
dENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6bV9hY3RpdmF0aW9uT2JzZXJ2ZXIuZ2V0KCldOwogICAg
IFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6bV9k
ZWFjdGl2YXRpb25PYnNlcnZlci5nZXQoKV07CisjZWxzZQorICAgIFtbTlNOb3RpZmljYXRpb25D
ZW50ZXIgZGVmYXVsdENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6bV9hY2Nlc3NpYmlsaXR5RW5hYmxl
ZE9ic2VydmVyLmdldCgpXTsKICNlbmRpZiAvLyAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKIH0KIApJ
bmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dlYlByb2Nlc3NQcm94eUlPUy5tbQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV2ViUHJvY2Vzc1Byb3h5
SU9TLm1tCShyZXZpc2lvbiAyNDI0MDMpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
V2ViUHJvY2Vzc1Byb3h5SU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw2ICsyOCw3IEBACiAK
ICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogCisjaW1wb3J0ICJBY2Nlc3NpYmlsaXR5U3VwcG9y
dFNQSS5oIgogI2ltcG9ydCAiV0tGdWxsS2V5Ym9hcmRBY2Nlc3NXYXRjaGVyLmgiCiAjaW1wb3J0
ICJXZWJQcm9jZXNzTWVzc2FnZXMuaCIKIApAQCAtNDIsNiArNDMsMjUgQEAgYm9vbCBXZWJQcm9j
ZXNzUHJveHk6OmZ1bGxLZXlib2FyZEFjY2VzcwogI2VuZGlmCiB9CiAKK3ZvaWQgV2ViUHJvY2Vz
c1Byb3h5Ojp1bmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKCkKK3sKKyAgICBpZiAo
bV9oYXNTZW50TWVzc2FnZVRvVW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIpCisgICAgICAgIHJl
dHVybjsKKyAgICBpZiAoIV9BWFNBcHBsaWNhdGlvbkFjY2Vzc2liaWxpdHlFbmFibGVkKCkpCisg
ICAgICAgIHJldHVybjsKKyAgICBpZiAoIXByb2Nlc3NJZGVudGlmaWVyKCkpCisgICAgICAgIHJl
dHVybjsKKyAgICBpZiAoIWNhblNlbmRNZXNzYWdlKCkpCisgICAgICAgIHJldHVybjsKKworICAg
IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBoYW5kbGU7CisgICAgaWYgKCFTYW5kYm94RXh0ZW5z
aW9uOjpjcmVhdGVIYW5kbGVGb3JNYWNoTG9va3VwQnlQaWQoImNvbS5hcHBsZS5pcGhvbmUuYXhz
ZXJ2ZXItc3lzdGVtd2lkZSIsIHByb2Nlc3NJZGVudGlmaWVyKCksIGhhbmRsZSkpCisgICAgICAg
IHJldHVybjsKKworICAgIHNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3M6OlVuYmxvY2tBY2Nlc3Np
YmlsaXR5U2VydmVyKGhhbmRsZSksIDApOworICAgIG1faGFzU2VudE1lc3NhZ2VUb1VuYmxvY2tB
Y2Nlc3NpYmlsaXR5U2VydmVyID0gdHJ1ZTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAK
ICNlbmRpZiAvLyBQTEFURk9STShJT1NfRkFNSUxZKQpJbmRleDogU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlByb2Nlc3MuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQcm9jZXNzLmNwcAkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODYwLDQgKzE4NjAs
MTIgQEAgdm9pZCBXZWJQcm9jZXNzOjpjbGVhckN1cnJlbnRNb2RpZmllclN0YQogICAgIFBsYXRm
b3JtS2V5Ym9hcmRFdmVudDo6c2V0Q3VycmVudE1vZGlmaWVyU3RhdGUoeyB9KTsKIH0KIAorI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpCit2b2lkIFdlYlByb2Nlc3M6OnVuYmxvY2tBY2Nlc3NpYmls
aXR5U2VydmVyKGNvbnN0IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSYgaGFuZGxlKQoreworICAg
IGJvb2wgb2sgPSBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkoaGFuZGxlKTsK
KyAgICBBU1NFUlRfVU5VU0VEKG9rLCBvayk7Cit9CisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2Ug
V2ViS2l0CkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgJKHJldmlzaW9u
IDI0MjQwMykKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgJKHdvcmtp
bmcgY29weSkKQEAgLTI0NCw2ICsyNDQsOCBAQCBwdWJsaWM6CiAKICNpZiBQTEFURk9STShJT1Nf
RkFNSUxZKQogICAgIHZvaWQgYWNjZXNzaWJpbGl0eVByb2Nlc3NTdXNwZW5kZWROb3RpZmljYXRp
b24oYm9vbCk7CisgICAgCisgICAgdm9pZCB1bmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcihjb25z
dCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmKTsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oQ09D
T0EpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5tZXNzYWdlcy5p
bgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5tZXNz
YWdlcy5pbgkocmV2aXNpb24gMjQyNDAzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlByb2Nlc3MubWVzc2FnZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTE1Myw0ICsxNTMsOCBAQCBt
ZXNzYWdlcyAtPiBXZWJQcm9jZXNzIExlZ2FjeVJlY2VpdmVyIHsKICNlbmRpZgogCiAgICAgQ2xl
YXJDdXJyZW50TW9kaWZpZXJTdGF0ZUZvclRlc3RpbmcoKQorCisjaWYgUExBVEZPUk0oSU9TX0ZB
TUlMWSkKKyAgICBVbmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcihXZWJLaXQ6OlNhbmRib3hFeHRl
bnNpb246OkhhbmRsZSBoYW5kbGUpCisjZW5kaWYKIH0K
</data>
<flag name="review"
          id="380443"
          type_id="1"
          status="+"
          setter="bfulgham"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>364688</attachid>
            <date>2019-03-14 14:34:43 -0700</date>
            <delta_ts>2019-03-15 11:02:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195342-20190314143441.patch</filename>
            <type>text/plain</type>
            <size>15645</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDI5NjQpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE5LTAzLTEyICBQZXIgQXJuZSBWb2xsYW4gIDxw
dm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0
eSBzZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgQnJlbnQgRnVsZ2hhbS4KKworICAgICAgICBBZGQgU1BJIHRvIGlzc3VlIGEgbWFj
aCBleHRlbnNpb24gdG8gYSBwcm9jZXNzIGJ5IHBpZC4KKworICAgICAgICAqIHd0Zi9zcGkvZGFy
d2luL1NhbmRib3hTUEkuaDoKKwogMjAxOS0wMy0xMyAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQu
b3JnPgogCiAgICAgICAgIEFkZCB1dGlsaXR5IGZ1bmN0aW9uIHRvIGFsbG93IGVhc3kgcmV2ZXJz
ZSByYW5nZS1iYXNlZCBpdGVyYXRpb24gb2YgYSBjb250YWluZXIKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL3NwaS9kYXJ3aW4vU2FuZGJveFNQSS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L3NwaS9kYXJ3aW4vU2FuZGJveFNQSS5oCShyZXZpc2lvbiAyNDI5NjQpCisrKyBTb3VyY2UvV1RG
L3d0Zi9zcGkvZGFyd2luL1NhbmRib3hTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtNjMsNiArNjMs
NyBAQCBleHRlcm4gY29uc3QgZW51bSBzYW5kYm94X2ZpbHRlcl90eXBlIFNBCiAKIGNoYXIgKnNh
bmRib3hfZXh0ZW5zaW9uX2lzc3VlX2ZpbGUoY29uc3QgY2hhciAqZXh0ZW5zaW9uX2NsYXNzLCBj
b25zdCBjaGFyICpwYXRoLCB1aW50MzJfdCBmbGFncyk7CiBjaGFyICpzYW5kYm94X2V4dGVuc2lv
bl9pc3N1ZV9nZW5lcmljKGNvbnN0IGNoYXIgKmV4dGVuc2lvbl9jbGFzcywgdWludDMyX3QgZmxh
Z3MpOworY2hhciAqc2FuZGJveF9leHRlbnNpb25faXNzdWVfbWFjaF90b19wcm9jZXNzX2J5X3Bp
ZChjb25zdCBjaGFyICpleHRlbnNpb25fY2xhc3MsIGNvbnN0IGNoYXIgKm5hbWUsIHVpbnQzMl90
IGZsYWdzLCBwaWRfdCk7CiBpbnQgc2FuZGJveF9jaGVjayhwaWRfdCwgY29uc3QgY2hhciAqb3Bl
cmF0aW9uLCBlbnVtIHNhbmRib3hfZmlsdGVyX3R5cGUsIC4uLik7CiBpbnQgc2FuZGJveF9jaGVj
a19ieV9hdWRpdF90b2tlbihhdWRpdF90b2tlbl90LCBjb25zdCBjaGFyICpvcGVyYXRpb24sIGVu
dW0gc2FuZGJveF9maWx0ZXJfdHlwZSwgLi4uKTsKIGludCBzYW5kYm94X2NvbnRhaW5lcl9wYXRo
X2Zvcl9waWQocGlkX3QsIGNoYXIgKmJ1ZmZlciwgc2l6ZV90IGJ1ZnNpemUpOwpJbmRleDogU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9DaGFuZ2VM
b2cJKHJldmlzaW9uIDI0Mjk2NCkKKysrIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMzggQEAKKzIwMTktMDMtMTIgIFBlciBBcm5lIFZvbGxhbiAgPHB2
b2xsYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIEJsb2NrIHRoZSBhY2Nlc3NpYmlsaXR5
IHNlcnZlciB3aGVuIGFjY2Vzc2liaWxpdHkgaXMgbm90IGVuYWJsZWQuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUzNDIKKworICAgICAgICBSZXZp
ZXdlZCBieSBCcmVudCBGdWxnaGFtLgorCisgICAgICAgIEJ5IGRlZmF1bHQsIGJsb2NrIHRoZSBp
T1MgYWNjZXNzaWJpbGl0eSBzZXJ2ZXIgaW4gdGhlIHNhbmRib3guIElmIGFjY2Vzc2liaWxpdHkg
aXMgZW5hYmxlZCwKKyAgICAgICAgbGV0IHRoZSBVSSBwcm9jZXNzIGlzc3VlIGEgbWFjaCBleHRl
bnNpb24gdG8gdGhlIFdlYkNvbnRlbnQgcHJvY2Vzcy4gVGhlIFVJIHByb2Nlc3Mgd2lsbAorICAg
ICAgICBpc3N1ZSB0aGUgbWFjaCBleHRlbnNpb24gdGhlIHRoZSBXZWJDb250ZW50IHByb2Nlc3Mg
YnkgaXRzIHByb2Nlc3MgaWRlbnRpZmllci4gVGhlIHNhbmRib3gKKyAgICAgICAgZXh0ZW5zaW9u
IGhhbmRsZSBpcyBzZW50IHRvIHRoZSBXZWJDb250ZW50IHByb2Nlc3MgdG8gYmUgY29uc3VtZWQu
IFRoZSBtZXNzYWdlIHdpbGwgYmUgc2VudAorICAgICAgICB3aGVuIHRoZSBXZWJQcm9jZXNzIGhh
cyBmaW5pc2hlZCBsYXVuY2hpbmcsIGFuZCBhbHNvIHdoZW4gYWNjZXNzaWJpbGl0eSBpcyB0dXJu
ZWQgb24uCisKKyAgICAgICAgKiBQbGF0Zm9ybS9zcGkvaW9zL0FjY2Vzc2liaWxpdHlTdXBwb3J0
U1BJLmg6CisgICAgICAgICogUmVzb3VyY2VzL1NhbmRib3hQcm9maWxlcy9pb3MvY29tLmFwcGxl
LldlYktpdC5XZWJDb250ZW50LnNiOgorICAgICAgICAqIFNoYXJlZC9TYW5kYm94RXh0ZW5zaW9u
Lmg6CisgICAgICAgICogU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tOgorICAgICAg
ICAoV2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uSW1wbDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktp
dDo6U2FuZGJveEV4dGVuc2lvbkltcGw6OnNhbmRib3hFeHRlbnNpb25Gb3JUeXBlKToKKyAgICAg
ICAgKFdlYktpdDo6U2FuZGJveEV4dGVuc2lvbkltcGw6OlNhbmRib3hFeHRlbnNpb25JbXBsKToK
KyAgICAgICAgKFdlYktpdDo6U2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExv
b2t1cEJ5UGlkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xDb2Nv
YS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OnJlZ2lzdGVyTm90aWZpY2F0
aW9uT2JzZXJ2ZXJzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OnVucmVnaXN0
ZXJOb3RpZmljYXRpb25PYnNlcnZlcnMpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNz
UG9vbC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJQcm9jZXNzUHJveHk6OmRpZEZpbmlzaExhdW5jaGluZyk6CisgICAgICAg
ICogVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3Mv
V2ViUHJvY2Vzc1Byb3h5SU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUHJveHk6
OnVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQpOgorICAgICAgICAqIFdlYlByb2Nl
c3MvV2ViUHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3M6OnVuYmxvY2tB
Y2Nlc3NpYmlsaXR5U2VydmVyKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MuaDoK
KyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVzc2FnZXMuaW46CisKIDIwMTktMDMt
MTQgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgV2Vic2l0
ZVBvbGljeSBmb3IgdGhlIGNsaWVudCB0byBzcGVjaWZ5IHRoZSBkZXZpY2Ugb3JpZW50YXRpb24g
JiBtb3Rpb24gYWNjZXNzIHBvbGljeQpJbmRleDogU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkv
aW9zL0FjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9QbGF0Zm9ybS9zcGkvaW9zL0FjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgJKHJldmlzaW9uIDI0
Mjk2NCkKKysrIFNvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3Vw
cG9ydFNQSS5oCSh3b3JraW5nIGNvcHkpCkBAIC00MSw2ICs0MSw4IEBAIFdURl9FWFRFUk5fQ19C
RUdJTgogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiBleHRlcm4gQm9vbGVhbiBfQVhTS2V5UmVw
ZWF0RW5hYmxlZCgpOwogZXh0ZXJuIENGVGltZUludGVydmFsIF9BWFNLZXlSZXBlYXREZWxheSgp
OworZXh0ZXJuIEJvb2xlYW4gX0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVuYWJsZWQoKTsK
K2V4dGVybiBDRlN0cmluZ1JlZiBrQVhTQXBwbGljYXRpb25BY2Nlc3NpYmlsaXR5RW5hYmxlZE5v
dGlmaWNhdGlvbjsKICNlbmRpZgogCiAjaWYgRU5BQkxFKEFDQ0VTU0lCSUxJVFlfRVZFTlRTKQpJ
bmRleDogU291cmNlL1dlYktpdC9SZXNvdXJjZXMvU2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBw
bGUuV2ViS2l0LldlYkNvbnRlbnQuc2IKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9SZXNv
dXJjZXMvU2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuc2IJ
KHJldmlzaW9uIDI0Mjk2NCkKKysrIFNvdXJjZS9XZWJLaXQvUmVzb3VyY2VzL1NhbmRib3hQcm9m
aWxlcy9pb3MvY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LnNiCSh3b3JraW5nIGNvcHkpCkBA
IC0xODcsNyArMTg3LDYgQEAKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQu
aGlkLmZvY3VzIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQuaGlkLnNl
cnZpY2VzIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pb2hpZGV2ZW50c3lzdGVtIikK
LSAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pcGhvbmUuYXhzZXJ2ZXItc3lzdGVtd2lkZSIp
CiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuZnJvbnRib2FyZC53b3Jrc3BhY2UiKQogICAg
IChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmZyb250Ym9hcmQuc3lzdGVtYXBwc2VydmljZXMiKSkK
IApAQCAtNDU0LDYgKzQ1Myw4IEBACiAoZGVueSBtYWNoLWxvb2t1cCAod2l0aCBzZW5kLXNpZ25h
bCBTSUdLSUxMKQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmJhY2tib2FyZC5oaWQuc2Vy
dmljZXMiKSkKIAorKGFsbG93IG1hY2gtbG9va3VwIChleHRlbnNpb24gImNvbS5hcHBsZS53ZWJr
aXQuZXh0ZW5zaW9uLm1hY2giKSkKKwogOzsgVGhlc2Ugc2VydmljZXMgaGF2ZSBiZWVuIGlkZW50
aWZpZWQgYXMgdW51c2VkIGR1cmluZyBsaXZpbmctb24uCiA7OyBUaGlzIGxpc3Qgb3ZlcnJpZGVz
IHNvbWUgZGVmaW5pdGlvbnMgYWJvdmUgYW5kIGluIGNvbW1vbi5zYi4KIDs7IEZJWE1FOiByZW1v
dmUgb3ZlcnJpZGRlbiBydWxlcyBvbmNlIHRoZSBmaW5hbCBsaXN0IGhhcyBiZWVuCkluZGV4OiBT
b3VyY2UvV2ViS2l0L1NoYXJlZC9TYW5kYm94RXh0ZW5zaW9uLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVuc2lvbi5oCShyZXZpc2lvbiAyNDI5NjQpCisr
KyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9TYW5kYm94RXh0ZW5zaW9uLmgJKHdvcmtpbmcgY29weSkK
QEAgLTQ2LDYgKzQ2LDcgQEAgcHVibGljOgogICAgIGVudW0gY2xhc3MgVHlwZSB7CiAgICAgICAg
IFJlYWRPbmx5LAogICAgICAgICBSZWFkV3JpdGUsCisgICAgICAgIE1hY2gsCiAgICAgICAgIEdl
bmVyaWMsCiAgICAgfTsKIApAQCAtMTAxLDYgKzEwMiw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMg
Ym9vbCBjcmVhdGVIYW5kbGVGb3JSZWFkV3JpdGVEaXJlY3RvcnkoY29uc3QgU3RyaW5nJiBwYXRo
LCBIYW5kbGUmKTsgLy8gV2lsbCBhdHRlbXB0IHRvIGNyZWF0ZSB0aGUgZGlyZWN0b3J5LgogICAg
IHN0YXRpYyBTdHJpbmcgY3JlYXRlSGFuZGxlRm9yVGVtcG9yYXJ5RmlsZShjb25zdCBTdHJpbmcm
IHByZWZpeCwgVHlwZSwgSGFuZGxlJik7CiAgICAgc3RhdGljIGJvb2wgY3JlYXRlSGFuZGxlRm9y
R2VuZXJpY0V4dGVuc2lvbihjb25zdCBTdHJpbmcmIGV4dGVuc2lvbkNsYXNzLCBIYW5kbGUmKTsK
KyAgICBzdGF0aWMgYm9vbCBjcmVhdGVIYW5kbGVGb3JNYWNoTG9va3VwQnlQaWQoY29uc3QgU3Ry
aW5nJiBzZXJ2aWNlLCBwaWRfdCwgSGFuZGxlJik7CiAgICAgflNhbmRib3hFeHRlbnNpb24oKTsK
IAogICAgIGJvb2wgY29uc3VtZSgpOwpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL1Nh
bmRib3hFeHRlbnNpb25NYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9TaGFyZWQv
bWFjL1NhbmRib3hFeHRlbnNpb25NYWMubW0JKHJldmlzaW9uIDI0Mjk2NCkKKysrIFNvdXJjZS9X
ZWJLaXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBA
IC00MCw5ICs0MCw5IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBTYW5kYm94RXh0ZW5z
aW9uSW1wbCB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxTYW5kYm94RXh0
ZW5zaW9uSW1wbD4gY3JlYXRlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRib3hFeHRlbnNpb246OlR5
cGUgdHlwZSkKKyAgICBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPFNhbmRib3hFeHRlbnNpb25JbXBs
PiBjcmVhdGUoY29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlLCBP
cHRpb25hbDxwaWRfdD4gcGlkID0gV1RGOjpudWxsb3B0KQogICAgIHsKLSAgICAgICAgc3RkOjp1
bmlxdWVfcHRyPFNhbmRib3hFeHRlbnNpb25JbXBsPiBpbXBsIHsgbmV3IFNhbmRib3hFeHRlbnNp
b25JbXBsKHBhdGgsIHR5cGUpIH07CisgICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxTYW5kYm94RXh0
ZW5zaW9uSW1wbD4gaW1wbCB7IG5ldyBTYW5kYm94RXh0ZW5zaW9uSW1wbChwYXRoLCB0eXBlLCBw
aWQpIH07CiAgICAgICAgIGlmICghaW1wbC0+bV90b2tlbikKICAgICAgICAgICAgIHJldHVybiBu
dWxscHRyOwogICAgICAgICByZXR1cm4gaW1wbDsKQEAgLTY0LDYgKzY0LDEwIEBAIHB1YmxpYzoK
ICNpZiBQTEFURk9STShJT1NfRkFNSUxZX1NJTVVMQVRPUikKICAgICAgICAgcmV0dXJuICFzYW5k
Ym94X2NoZWNrKGdldHBpZCgpLCAwLCBTQU5EQk9YX0ZJTFRFUl9OT05FKTsKICNlbHNlCisgICAg
ICAgIGlmIChtX2hhbmRsZSA9PSAtMSkgeworICAgICAgICAgICAgTE9HX0VSUk9SKCJDb3VsZCBu
b3QgY3JlYXRlIGEgc2FuZGJveCBleHRlbnNpb24gZm9yICclcycsIGVycm5vID0gJWQiLCBtX3Rv
a2VuLCBlcnJubyk7CisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIH0KICAgICAg
ICAgcmV0dXJuIG1faGFuZGxlOwogI2VuZGlmCiAgICAgfQpAQCAtODAsMjAgKzg0LDIyIEBAIHB1
YmxpYzoKICAgICB9CiAKIHByaXZhdGU6Ci0gICAgY2hhciogc2FuZGJveEV4dGVuc2lvbkZvclR5
cGUoY29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlKQorICAgIGNo
YXIqIHNhbmRib3hFeHRlbnNpb25Gb3JUeXBlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRib3hFeHRl
bnNpb246OlR5cGUgdHlwZSwgT3B0aW9uYWw8cGlkX3Q+IHBpZCA9IFdURjo6bnVsbG9wdCkKICAg
ICB7CiAgICAgICAgIHN3aXRjaCAodHlwZSkgewogICAgICAgICBjYXNlIFNhbmRib3hFeHRlbnNp
b246OlR5cGU6OlJlYWRPbmx5OgogICAgICAgICAgICAgcmV0dXJuIHNhbmRib3hfZXh0ZW5zaW9u
X2lzc3VlX2ZpbGUoQVBQX1NBTkRCT1hfUkVBRCwgcGF0aCwgMCk7CiAgICAgICAgIGNhc2UgU2Fu
ZGJveEV4dGVuc2lvbjo6VHlwZTo6UmVhZFdyaXRlOgogICAgICAgICAgICAgcmV0dXJuIHNhbmRi
b3hfZXh0ZW5zaW9uX2lzc3VlX2ZpbGUoQVBQX1NBTkRCT1hfUkVBRF9XUklURSwgcGF0aCwgMCk7
CisgICAgICAgIGNhc2UgU2FuZGJveEV4dGVuc2lvbjo6VHlwZTo6TWFjaDoKKyAgICAgICAgICAg
IHJldHVybiBzYW5kYm94X2V4dGVuc2lvbl9pc3N1ZV9tYWNoX3RvX3Byb2Nlc3NfYnlfcGlkKCJj
b20uYXBwbGUud2Via2l0LmV4dGVuc2lvbi5tYWNoIl9zLCBwYXRoLCAwLCBwaWQudmFsdWUoKSk7
CiAgICAgICAgIGNhc2UgU2FuZGJveEV4dGVuc2lvbjo6VHlwZTo6R2VuZXJpYzoKICAgICAgICAg
ICAgIHJldHVybiBzYW5kYm94X2V4dGVuc2lvbl9pc3N1ZV9nZW5lcmljKHBhdGgsIDApOwogICAg
ICAgICB9CiAgICAgfQogCi0gICAgU2FuZGJveEV4dGVuc2lvbkltcGwoY29uc3QgY2hhciogcGF0
aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlKQotICAgICAgICA6IG1fdG9rZW4geyBzYW5k
Ym94RXh0ZW5zaW9uRm9yVHlwZShwYXRoLCB0eXBlKSB9CisgICAgU2FuZGJveEV4dGVuc2lvbklt
cGwoY29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlLCBPcHRpb25h
bDxwaWRfdD4gcGlkID0gV1RGOjpudWxsb3B0KQorICAgICAgICA6IG1fdG9rZW4geyBzYW5kYm94
RXh0ZW5zaW9uRm9yVHlwZShwYXRoLCB0eXBlLCBwaWQpIH0KICAgICB7CiAgICAgfQogCkBAIC0z
NTcsNiArMzYzLDE5IEBAIGJvb2wgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yR2UK
ICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorYm9vbCBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5k
bGVGb3JNYWNoTG9va3VwQnlQaWQoY29uc3QgU3RyaW5nJiBzZXJ2aWNlLCBwaWRfdCBwaWQsIEhh
bmRsZSYgaGFuZGxlKQoreworICAgIEFTU0VSVCghaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbik7
CisgICAgCisgICAgaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbiA9IFNhbmRib3hFeHRlbnNpb25J
bXBsOjpjcmVhdGUoc2VydmljZS51dGY4KCkuZGF0YSgpLCBUeXBlOjpNYWNoLCBwaWQpOworICAg
IGlmICghaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbikgeworICAgICAgICBXVEZMb2dBbHdheXMo
IkNvdWxkIG5vdCBjcmVhdGUgYSAnJXMnIHNhbmRib3ggZXh0ZW5zaW9uIiwgc2VydmljZS51dGY4
KCkuZGF0YSgpKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICAKKyAgICByZXR1
cm4gdHJ1ZTsKK30KKwogU2FuZGJveEV4dGVuc2lvbjo6U2FuZGJveEV4dGVuc2lvbihjb25zdCBI
YW5kbGUmIGhhbmRsZSkKICAgICA6IG1fc2FuZGJveEV4dGVuc2lvbihXVEZNb3ZlKGhhbmRsZS5t
X3NhbmRib3hFeHRlbnNpb24pKQogewpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Bvb2wuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
cm9jZXNzUG9vbC5oCShyZXZpc2lvbiAyNDI5NjQpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQcm9jZXNzUG9vbC5oCSh3b3JraW5nIGNvcHkpCkBAIC02NzMsNiArNjczLDEwIEBAIHBy
aXZhdGU6CiAgICAgc3RkOjp1bmlxdWVfcHRyPFBlckFjdGl2aXR5U3RhdGVDUFVVc2FnZVNhbXBs
ZXI+IG1fcGVyQWN0aXZpdHlTdGF0ZUNQVVVzYWdlU2FtcGxlcjsKICNlbmRpZgogCisjaWYgUExB
VEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBSZXRhaW5QdHI8TlNPYmplY3Q+IG1fYWNjZXNzaWJpbGl0
eUVuYWJsZWRPYnNlcnZlcjsKKyNlbmRpZgorCiAgICAgYm9vbCBtX3Nob3VsZFVzZVRlc3RpbmdO
ZXR3b3JrU2Vzc2lvbiB7IGZhbHNlIH07CiAKICAgICBib29sIG1fcHJvY2Vzc1Rlcm1pbmF0aW9u
RW5hYmxlZCB7IHRydWUgfTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nl
c3NQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJv
Y2Vzc1Byb3h5LmNwcAkocmV2aXNpb24gMjQyOTY0KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzU5LDYgKzc1OSw4IEBA
IHZvaWQgV2ViUHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVuY2hpbmcKICAgICAgICAgaWYgKHhw
Y19jb25uZWN0aW9uX3QgeHBjQ29ubmVjdGlvbiA9IGNvbm5lY3Rpb24oKS0+eHBjQ29ubmVjdGlv
bigpKQogICAgICAgICAgICAgbV90aHJvdHRsZXIuZGlkQ29ubmVjdFRvUHJvY2Vzcyh4cGNfY29u
bmVjdGlvbl9nZXRfcGlkKHhwY0Nvbm5lY3Rpb24pKTsKICAgICB9CisKKyAgICB1bmJsb2NrQWNj
ZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKCk7CiAjZW5kaWYKIH0KIApJbmRleDogU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgJKHJldmlzaW9uIDI0Mjk2NCkKKysrIFNv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yOTMsNiArMjkzLDEwIEBAIHB1YmxpYzoKICAgICB2b2lkIHJldm9rZUF1ZGlvQ2FwdHVyZUV4
dGVuc2lvbigpIHsgbV9tZWRpYUNhcHR1cmVTYW5kYm94RXh0ZW5zaW9ucyAmPSB+QXVkaW87IH0K
ICNlbmRpZgogCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICB2b2lkIHVuYmxvY2tBY2Nl
c3NpYmlsaXR5U2VydmVySWZOZWVkZWQoKTsKKyNlbmRpZgorCiBwcm90ZWN0ZWQ6CiAgICAgc3Rh
dGljIHVpbnQ2NF90IGdlbmVyYXRlUGFnZUlEKCk7CiAgICAgV2ViUHJvY2Vzc1Byb3h5KFdlYlBy
b2Nlc3NQb29sJiwgV2Vic2l0ZURhdGFTdG9yZSYsIElzUHJld2FybWVkKTsKQEAgLTQzMSw2ICs0
MzUsNyBAQCBwcml2YXRlOgogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgRm9yZWdyb3Vu
ZFdlYlByb2Nlc3NUb2tlbiBtX2ZvcmVncm91bmRUb2tlbjsKICAgICBCYWNrZ3JvdW5kV2ViUHJv
Y2Vzc1Rva2VuIG1fYmFja2dyb3VuZFRva2VuOworICAgIGJvb2wgbV9oYXNTZW50TWVzc2FnZVRv
VW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIgeyBmYWxzZSB9OwogI2VuZGlmCiAKICAgICBIYXNo
TWFwPFN0cmluZywgdWludDY0X3Q+IG1fcGFnZVVSTFJldGFpbkNvdW50TWFwOwpJbmRleDogU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xDb2NvYS5tbQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQcm9jZXNzUG9vbENvY29h
Lm1tCShyZXZpc2lvbiAyNDI5NjQpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9X
ZWJQcm9jZXNzUG9vbENvY29hLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw2ICsyNiw3IEBACiAj
aW1wb3J0ICJjb25maWcuaCIKICNpbXBvcnQgIldlYlByb2Nlc3NQb29sLmgiCiAKKyNpbXBvcnQg
IkFjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgiCiAjaW1wb3J0ICJDb29raWVTdG9yYWdlVXRpbHND
Ri5oIgogI2ltcG9ydCAiTGVnYWN5Q3VzdG9tUHJvdG9jb2xNYW5hZ2VyQ2xpZW50LmgiCiAjaW1w
b3J0ICJOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oIgpAQCAtNDQ3LDYgKzQ0OCwx
MCBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjpyZWdpc3Rlck5vdGlmaWNhdGlvCiAgICAgfV07CiAj
ZWxpZiBQTEFURk9STShJT1MpCiAgICAgQ0ZOb3RpZmljYXRpb25DZW50ZXJBZGRPYnNlcnZlcihD
Rk5vdGlmaWNhdGlvbkNlbnRlckdldERhcndpbk5vdGlmeUNlbnRlcigpLCB0aGlzLCBiYWNrbGln
aHRMZXZlbERpZENoYW5nZUNhbGxiYWNrLCBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oVUlCYWNr
bGlnaHRMZXZlbENoYW5nZWROb3RpZmljYXRpb24pLCBudWxscHRyLCBDRk5vdGlmaWNhdGlvblN1
c3BlbnNpb25CZWhhdmlvckNvYWxlc2NlKTsKKyAgICBtX2FjY2Vzc2liaWxpdHlFbmFibGVkT2Jz
ZXJ2ZXIgPSBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVy
Rm9yTmFtZTooX19icmlkZ2UgaWQpa0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVuYWJsZWRO
b3RpZmljYXRpb24gb2JqZWN0Om5pbCBxdWV1ZTpbTlNPcGVyYXRpb25RdWV1ZSBjdXJyZW50UXVl
dWVdIHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlvbiAqKSB7CisgICAgICAgIGZvciAoc2l6ZV90
IGkgPSAwOyBpIDwgbV9wcm9jZXNzZXMuc2l6ZSgpOyArK2kpCisgICAgICAgICAgICBtX3Byb2Nl
c3Nlc1tpXS0+dW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXJJZk5lZWRlZCgpOworICAgIH1dOwog
I2VuZGlmIC8vICFQTEFURk9STShJT1NfRkFNSUxZKQogfQogCkBAIC00NjYsNiArNDcxLDcgQEAg
dm9pZCBXZWJQcm9jZXNzUG9vbDo6dW5yZWdpc3Rlck5vdGlmaWNhdAogICAgIFtbTlNOb3RpZmlj
YXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6bV9kZWFjdGl2YXRpb25P
YnNlcnZlci5nZXQoKV07CiAjZWxpZiBQTEFURk9STShJT1MpCiAgICAgQ0ZOb3RpZmljYXRpb25D
ZW50ZXJSZW1vdmVPYnNlcnZlcihDRk5vdGlmaWNhdGlvbkNlbnRlckdldERhcndpbk5vdGlmeUNl
bnRlcigpLCB0aGlzLCBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oVUlCYWNrbGlnaHRMZXZlbENo
YW5nZWROb3RpZmljYXRpb24pICwgbnVsbHB0cik7CisgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRl
ciBkZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNlcnZlcjptX2FjY2Vzc2liaWxpdHlFbmFibGVkT2Jz
ZXJ2ZXIuZ2V0KCldOwogI2VuZGlmIC8vICFQTEFURk9STShJT1NfRkFNSUxZKQogfQogCkluZGV4
OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV2ViUHJvY2Vzc1Byb3h5SU9TLm1tCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQcm9jZXNzUHJveHlJT1Mu
bW0JKHJldmlzaW9uIDI0Mjk2NCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQ
cm9jZXNzUHJveHlJT1MubW0JKHdvcmtpbmcgY29weSkKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpCiAKKyNpbXBvcnQgIkFjY2Vzc2liaWxpdHlTdXBwb3J0U1BJ
LmgiCiAjaW1wb3J0ICJXS0Z1bGxLZXlib2FyZEFjY2Vzc1dhdGNoZXIuaCIKICNpbXBvcnQgIldl
YlByb2Nlc3NNZXNzYWdlcy5oIgogCkBAIC00Miw2ICs0MywyNSBAQCBib29sIFdlYlByb2Nlc3NQ
cm94eTo6ZnVsbEtleWJvYXJkQWNjZXNzCiAjZW5kaWYKIH0KIAordm9pZCBXZWJQcm9jZXNzUHJv
eHk6OnVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQoKQoreworICAgIGlmIChtX2hh
c1NlbnRNZXNzYWdlVG9VbmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcikKKyAgICAgICAgcmV0dXJu
OworICAgIGlmICghX0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVuYWJsZWQoKSkKKyAgICAg
ICAgcmV0dXJuOworICAgIGlmICghcHJvY2Vzc0lkZW50aWZpZXIoKSkKKyAgICAgICAgcmV0dXJu
OworICAgIGlmICghY2FuU2VuZE1lc3NhZ2UoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgU2Fu
ZGJveEV4dGVuc2lvbjo6SGFuZGxlIGhhbmRsZTsKKyAgICBpZiAoIVNhbmRib3hFeHRlbnNpb246
OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXBCeVBpZCgiY29tLmFwcGxlLmlwaG9uZS5heHNlcnZl
ci1zeXN0ZW13aWRlIiwgcHJvY2Vzc0lkZW50aWZpZXIoKSwgaGFuZGxlKSkKKyAgICAgICAgcmV0
dXJuOworCisgICAgc2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzczo6VW5ibG9ja0FjY2Vzc2liaWxp
dHlTZXJ2ZXIoaGFuZGxlKSwgMCk7CisgICAgbV9oYXNTZW50TWVzc2FnZVRvVW5ibG9ja0FjY2Vz
c2liaWxpdHlTZXJ2ZXIgPSB0cnVlOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKIAogI2Vu
ZGlmIC8vIFBMQVRGT1JNKElPU19GQU1JTFkpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUHJvY2Vzcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlByb2Nlc3MuY3BwCShyZXZpc2lvbiAyNDI5NjQpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUHJvY2Vzcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4NjcsNCArMTg2NywxMiBA
QCB2b2lkIFdlYlByb2Nlc3M6OmNsZWFyQ3VycmVudE1vZGlmaWVyU3RhCiAgICAgUGxhdGZvcm1L
ZXlib2FyZEV2ZW50OjpzZXRDdXJyZW50TW9kaWZpZXJTdGF0ZSh7IH0pOwogfQogCisjaWYgUExB
VEZPUk0oSU9TX0ZBTUlMWSkKK3ZvaWQgV2ViUHJvY2Vzczo6dW5ibG9ja0FjY2Vzc2liaWxpdHlT
ZXJ2ZXIoY29uc3QgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiBoYW5kbGUpCit7CisgICAgYm9v
bCBvayA9IFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShoYW5kbGUpOworICAg
IEFTU0VSVF9VTlVTRUQob2ssIG9rKTsKK30KKyNlbmRpZgorCiB9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAkocmV2aXNpb24gMjQy
OTY0KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAkod29ya2luZyBj
b3B5KQpAQCAtMjQ1LDYgKzI0NSw4IEBAIHB1YmxpYzoKIAogI2lmIFBMQVRGT1JNKElPU19GQU1J
TFkpCiAgICAgdm9pZCBhY2Nlc3NpYmlsaXR5UHJvY2Vzc1N1c3BlbmRlZE5vdGlmaWNhdGlvbihi
b29sKTsKKyAgICAKKyAgICB2b2lkIHVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyKGNvbnN0IFNh
bmRib3hFeHRlbnNpb246OkhhbmRsZSYpOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1MpCklu
ZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbgo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5tZXNzYWdlcy5p
bgkocmV2aXNpb24gMjQyOTY0KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nl
c3MubWVzc2FnZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTE1Nyw0ICsxNTcsOCBAQCBtZXNzYWdl
cyAtPiBXZWJQcm9jZXNzIExlZ2FjeVJlY2VpdmVyIHsKICNlbmRpZgogCiAgICAgQ2xlYXJDdXJy
ZW50TW9kaWZpZXJTdGF0ZUZvclRlc3RpbmcoKQorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkK
KyAgICBVbmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcihXZWJLaXQ6OlNhbmRib3hFeHRlbnNpb246
OkhhbmRsZSBoYW5kbGUpCisjZW5kaWYKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>364812</attachid>
            <date>2019-03-15 10:58:57 -0700</date>
            <delta_ts>2019-03-15 13:27:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195342-20190315105856.patch</filename>
            <type>text/plain</type>
            <size>15848</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDI5NjQpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE5LTAzLTEyICBQZXIgQXJuZSBWb2xsYW4gIDxw
dm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0
eSBzZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgQnJlbnQgRnVsZ2hhbS4KKworICAgICAgICBBZGQgU1BJIHRvIGlzc3VlIGEgbWFj
aCBleHRlbnNpb24gdG8gYSBwcm9jZXNzIGJ5IHBpZC4KKworICAgICAgICAqIHd0Zi9zcGkvZGFy
d2luL1NhbmRib3hTUEkuaDoKKwogMjAxOS0wMy0xMyAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQu
b3JnPgogCiAgICAgICAgIEFkZCB1dGlsaXR5IGZ1bmN0aW9uIHRvIGFsbG93IGVhc3kgcmV2ZXJz
ZSByYW5nZS1iYXNlZCBpdGVyYXRpb24gb2YgYSBjb250YWluZXIKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL3NwaS9kYXJ3aW4vU2FuZGJveFNQSS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L3NwaS9kYXJ3aW4vU2FuZGJveFNQSS5oCShyZXZpc2lvbiAyNDI5NjQpCisrKyBTb3VyY2UvV1RG
L3d0Zi9zcGkvZGFyd2luL1NhbmRib3hTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtNjMsNiArNjMs
NyBAQCBleHRlcm4gY29uc3QgZW51bSBzYW5kYm94X2ZpbHRlcl90eXBlIFNBCiAKIGNoYXIgKnNh
bmRib3hfZXh0ZW5zaW9uX2lzc3VlX2ZpbGUoY29uc3QgY2hhciAqZXh0ZW5zaW9uX2NsYXNzLCBj
b25zdCBjaGFyICpwYXRoLCB1aW50MzJfdCBmbGFncyk7CiBjaGFyICpzYW5kYm94X2V4dGVuc2lv
bl9pc3N1ZV9nZW5lcmljKGNvbnN0IGNoYXIgKmV4dGVuc2lvbl9jbGFzcywgdWludDMyX3QgZmxh
Z3MpOworY2hhciAqc2FuZGJveF9leHRlbnNpb25faXNzdWVfbWFjaF90b19wcm9jZXNzX2J5X3Bp
ZChjb25zdCBjaGFyICpleHRlbnNpb25fY2xhc3MsIGNvbnN0IGNoYXIgKm5hbWUsIHVpbnQzMl90
IGZsYWdzLCBwaWRfdCk7CiBpbnQgc2FuZGJveF9jaGVjayhwaWRfdCwgY29uc3QgY2hhciAqb3Bl
cmF0aW9uLCBlbnVtIHNhbmRib3hfZmlsdGVyX3R5cGUsIC4uLik7CiBpbnQgc2FuZGJveF9jaGVj
a19ieV9hdWRpdF90b2tlbihhdWRpdF90b2tlbl90LCBjb25zdCBjaGFyICpvcGVyYXRpb24sIGVu
dW0gc2FuZGJveF9maWx0ZXJfdHlwZSwgLi4uKTsKIGludCBzYW5kYm94X2NvbnRhaW5lcl9wYXRo
X2Zvcl9waWQocGlkX3QsIGNoYXIgKmJ1ZmZlciwgc2l6ZV90IGJ1ZnNpemUpOwpJbmRleDogU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9DaGFuZ2VM
b2cJKHJldmlzaW9uIDI0Mjk2NCkKKysrIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMzggQEAKKzIwMTktMDMtMTIgIFBlciBBcm5lIFZvbGxhbiAgPHB2
b2xsYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIEJsb2NrIHRoZSBhY2Nlc3NpYmlsaXR5
IHNlcnZlciB3aGVuIGFjY2Vzc2liaWxpdHkgaXMgbm90IGVuYWJsZWQuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUzNDIKKworICAgICAgICBSZXZp
ZXdlZCBieSBCcmVudCBGdWxnaGFtLgorCisgICAgICAgIEJ5IGRlZmF1bHQsIGJsb2NrIHRoZSBp
T1MgYWNjZXNzaWJpbGl0eSBzZXJ2ZXIgaW4gdGhlIHNhbmRib3guIElmIGFjY2Vzc2liaWxpdHkg
aXMgZW5hYmxlZCwKKyAgICAgICAgbGV0IHRoZSBVSSBwcm9jZXNzIGlzc3VlIGEgbWFjaCBleHRl
bnNpb24gdG8gdGhlIFdlYkNvbnRlbnQgcHJvY2Vzcy4gVGhlIFVJIHByb2Nlc3Mgd2lsbAorICAg
ICAgICBpc3N1ZSB0aGUgbWFjaCBleHRlbnNpb24gdGhlIHRoZSBXZWJDb250ZW50IHByb2Nlc3Mg
YnkgaXRzIHByb2Nlc3MgaWRlbnRpZmllci4gVGhlIHNhbmRib3gKKyAgICAgICAgZXh0ZW5zaW9u
IGhhbmRsZSBpcyBzZW50IHRvIHRoZSBXZWJDb250ZW50IHByb2Nlc3MgdG8gYmUgY29uc3VtZWQu
IFRoZSBtZXNzYWdlIHdpbGwgYmUgc2VudAorICAgICAgICB3aGVuIHRoZSBXZWJQcm9jZXNzIGhh
cyBmaW5pc2hlZCBsYXVuY2hpbmcsIGFuZCBhbHNvIHdoZW4gYWNjZXNzaWJpbGl0eSBpcyB0dXJu
ZWQgb24uCisKKyAgICAgICAgKiBQbGF0Zm9ybS9zcGkvaW9zL0FjY2Vzc2liaWxpdHlTdXBwb3J0
U1BJLmg6CisgICAgICAgICogUmVzb3VyY2VzL1NhbmRib3hQcm9maWxlcy9pb3MvY29tLmFwcGxl
LldlYktpdC5XZWJDb250ZW50LnNiOgorICAgICAgICAqIFNoYXJlZC9TYW5kYm94RXh0ZW5zaW9u
Lmg6CisgICAgICAgICogU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tOgorICAgICAg
ICAoV2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uSW1wbDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktp
dDo6U2FuZGJveEV4dGVuc2lvbkltcGw6OnNhbmRib3hFeHRlbnNpb25Gb3JUeXBlKToKKyAgICAg
ICAgKFdlYktpdDo6U2FuZGJveEV4dGVuc2lvbkltcGw6OlNhbmRib3hFeHRlbnNpb25JbXBsKToK
KyAgICAgICAgKFdlYktpdDo6U2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExv
b2t1cEJ5UGlkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xDb2Nv
YS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OnJlZ2lzdGVyTm90aWZpY2F0
aW9uT2JzZXJ2ZXJzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OnVucmVnaXN0
ZXJOb3RpZmljYXRpb25PYnNlcnZlcnMpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNz
UG9vbC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJQcm9jZXNzUHJveHk6OmRpZEZpbmlzaExhdW5jaGluZyk6CisgICAgICAg
ICogVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3Mv
V2ViUHJvY2Vzc1Byb3h5SU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUHJveHk6
OnVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQpOgorICAgICAgICAqIFdlYlByb2Nl
c3MvV2ViUHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3M6OnVuYmxvY2tB
Y2Nlc3NpYmlsaXR5U2VydmVyKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MuaDoK
KyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVzc2FnZXMuaW46CisKIDIwMTktMDMt
MTQgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgV2Vic2l0
ZVBvbGljeSBmb3IgdGhlIGNsaWVudCB0byBzcGVjaWZ5IHRoZSBkZXZpY2Ugb3JpZW50YXRpb24g
JiBtb3Rpb24gYWNjZXNzIHBvbGljeQpJbmRleDogU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkv
aW9zL0FjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9QbGF0Zm9ybS9zcGkvaW9zL0FjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgJKHJldmlzaW9uIDI0
Mjk2NCkKKysrIFNvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3Vw
cG9ydFNQSS5oCSh3b3JraW5nIGNvcHkpCkBAIC00MSw2ICs0MSw4IEBAIFdURl9FWFRFUk5fQ19C
RUdJTgogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiBleHRlcm4gQm9vbGVhbiBfQVhTS2V5UmVw
ZWF0RW5hYmxlZCgpOwogZXh0ZXJuIENGVGltZUludGVydmFsIF9BWFNLZXlSZXBlYXREZWxheSgp
OworZXh0ZXJuIEJvb2xlYW4gX0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVuYWJsZWQoKTsK
K2V4dGVybiBDRlN0cmluZ1JlZiBrQVhTQXBwbGljYXRpb25BY2Nlc3NpYmlsaXR5RW5hYmxlZE5v
dGlmaWNhdGlvbjsKICNlbmRpZgogCiAjaWYgRU5BQkxFKEFDQ0VTU0lCSUxJVFlfRVZFTlRTKQpJ
bmRleDogU291cmNlL1dlYktpdC9SZXNvdXJjZXMvU2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBw
bGUuV2ViS2l0LldlYkNvbnRlbnQuc2IKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9SZXNv
dXJjZXMvU2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuc2IJ
KHJldmlzaW9uIDI0Mjk2NCkKKysrIFNvdXJjZS9XZWJLaXQvUmVzb3VyY2VzL1NhbmRib3hQcm9m
aWxlcy9pb3MvY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LnNiCSh3b3JraW5nIGNvcHkpCkBA
IC0xODcsNyArMTg3LDYgQEAKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQu
aGlkLmZvY3VzIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQuaGlkLnNl
cnZpY2VzIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pb2hpZGV2ZW50c3lzdGVtIikK
LSAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pcGhvbmUuYXhzZXJ2ZXItc3lzdGVtd2lkZSIp
CiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuZnJvbnRib2FyZC53b3Jrc3BhY2UiKQogICAg
IChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmZyb250Ym9hcmQuc3lzdGVtYXBwc2VydmljZXMiKSkK
IApAQCAtNDU0LDYgKzQ1Myw4IEBACiAoZGVueSBtYWNoLWxvb2t1cCAod2l0aCBzZW5kLXNpZ25h
bCBTSUdLSUxMKQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmJhY2tib2FyZC5oaWQuc2Vy
dmljZXMiKSkKIAorKGFsbG93IG1hY2gtbG9va3VwIChleHRlbnNpb24gImNvbS5hcHBsZS53ZWJr
aXQuZXh0ZW5zaW9uLm1hY2giKSkKKwogOzsgVGhlc2Ugc2VydmljZXMgaGF2ZSBiZWVuIGlkZW50
aWZpZWQgYXMgdW51c2VkIGR1cmluZyBsaXZpbmctb24uCiA7OyBUaGlzIGxpc3Qgb3ZlcnJpZGVz
IHNvbWUgZGVmaW5pdGlvbnMgYWJvdmUgYW5kIGluIGNvbW1vbi5zYi4KIDs7IEZJWE1FOiByZW1v
dmUgb3ZlcnJpZGRlbiBydWxlcyBvbmNlIHRoZSBmaW5hbCBsaXN0IGhhcyBiZWVuCkluZGV4OiBT
b3VyY2UvV2ViS2l0L1NoYXJlZC9TYW5kYm94RXh0ZW5zaW9uLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVuc2lvbi5oCShyZXZpc2lvbiAyNDI5NjQpCisr
KyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9TYW5kYm94RXh0ZW5zaW9uLmgJKHdvcmtpbmcgY29weSkK
QEAgLTI3LDYgKzI3LDcgQEAKIAogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8
d3RmL05vbmNvcHlhYmxlLmg+CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUg
PHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0
Zi9WZWN0b3IuaD4KQEAgLTQ2LDYgKzQ3LDcgQEAgcHVibGljOgogICAgIGVudW0gY2xhc3MgVHlw
ZSB7CiAgICAgICAgIFJlYWRPbmx5LAogICAgICAgICBSZWFkV3JpdGUsCisgICAgICAgIE1hY2gs
CiAgICAgICAgIEdlbmVyaWMsCiAgICAgfTsKIApAQCAtMTAxLDYgKzEwMyw3IEBAIHB1YmxpYzoK
ICAgICBzdGF0aWMgYm9vbCBjcmVhdGVIYW5kbGVGb3JSZWFkV3JpdGVEaXJlY3RvcnkoY29uc3Qg
U3RyaW5nJiBwYXRoLCBIYW5kbGUmKTsgLy8gV2lsbCBhdHRlbXB0IHRvIGNyZWF0ZSB0aGUgZGly
ZWN0b3J5LgogICAgIHN0YXRpYyBTdHJpbmcgY3JlYXRlSGFuZGxlRm9yVGVtcG9yYXJ5RmlsZShj
b25zdCBTdHJpbmcmIHByZWZpeCwgVHlwZSwgSGFuZGxlJik7CiAgICAgc3RhdGljIGJvb2wgY3Jl
YXRlSGFuZGxlRm9yR2VuZXJpY0V4dGVuc2lvbihjb25zdCBTdHJpbmcmIGV4dGVuc2lvbkNsYXNz
LCBIYW5kbGUmKTsKKyAgICBzdGF0aWMgYm9vbCBjcmVhdGVIYW5kbGVGb3JNYWNoTG9va3VwQnlQ
aWQoY29uc3QgU3RyaW5nJiBzZXJ2aWNlLCBQcm9jZXNzSUQsIEhhbmRsZSYpOwogICAgIH5TYW5k
Ym94RXh0ZW5zaW9uKCk7CiAKICAgICBib29sIGNvbnN1bWUoKTsKSW5kZXg6IFNvdXJjZS9XZWJL
aXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCShyZXZpc2lvbiAyNDI5
NjQpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvU2FuZGJveEV4dGVuc2lvbk1hYy5tbQko
d29ya2luZyBjb3B5KQpAQCAtNDAsOSArNDAsOSBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xh
c3MgU2FuZGJveEV4dGVuc2lvbkltcGwgewogcHVibGljOgotICAgIHN0YXRpYyBzdGQ6OnVuaXF1
ZV9wdHI8U2FuZGJveEV4dGVuc2lvbkltcGw+IGNyZWF0ZShjb25zdCBjaGFyKiBwYXRoLCBTYW5k
Ym94RXh0ZW5zaW9uOjpUeXBlIHR5cGUpCisgICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxTYW5k
Ym94RXh0ZW5zaW9uSW1wbD4gY3JlYXRlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRib3hFeHRlbnNp
b246OlR5cGUgdHlwZSwgT3B0aW9uYWw8UHJvY2Vzc0lEPiBwaWQgPSBXVEY6Om51bGxvcHQpCiAg
ICAgewotICAgICAgICBzdGQ6OnVuaXF1ZV9wdHI8U2FuZGJveEV4dGVuc2lvbkltcGw+IGltcGwg
eyBuZXcgU2FuZGJveEV4dGVuc2lvbkltcGwocGF0aCwgdHlwZSkgfTsKKyAgICAgICAgc3RkOjp1
bmlxdWVfcHRyPFNhbmRib3hFeHRlbnNpb25JbXBsPiBpbXBsIHsgbmV3IFNhbmRib3hFeHRlbnNp
b25JbXBsKHBhdGgsIHR5cGUsIHBpZCkgfTsKICAgICAgICAgaWYgKCFpbXBsLT5tX3Rva2VuKQog
ICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgICAgIHJldHVybiBpbXBsOwpAQCAtNjQs
NiArNjQsMTAgQEAgcHVibGljOgogI2lmIFBMQVRGT1JNKElPU19GQU1JTFlfU0lNVUxBVE9SKQog
ICAgICAgICByZXR1cm4gIXNhbmRib3hfY2hlY2soZ2V0cGlkKCksIDAsIFNBTkRCT1hfRklMVEVS
X05PTkUpOwogI2Vsc2UKKyAgICAgICAgaWYgKG1faGFuZGxlID09IC0xKSB7CisgICAgICAgICAg
ICBMT0dfRVJST1IoIkNvdWxkIG5vdCBjcmVhdGUgYSBzYW5kYm94IGV4dGVuc2lvbiBmb3IgJyVz
JywgZXJybm8gPSAlZCIsIG1fdG9rZW4sIGVycm5vKTsKKyAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKKyAgICAgICAgfQogICAgICAgICByZXR1cm4gbV9oYW5kbGU7CiAjZW5kaWYKICAgICB9CkBA
IC04MCwyMCArODQsMjIgQEAgcHVibGljOgogICAgIH0KIAogcHJpdmF0ZToKLSAgICBjaGFyKiBz
YW5kYm94RXh0ZW5zaW9uRm9yVHlwZShjb25zdCBjaGFyKiBwYXRoLCBTYW5kYm94RXh0ZW5zaW9u
OjpUeXBlIHR5cGUpCisgICAgY2hhciogc2FuZGJveEV4dGVuc2lvbkZvclR5cGUoY29uc3QgY2hh
ciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlLCBPcHRpb25hbDxQcm9jZXNzSUQ+
IHBpZCA9IFdURjo6bnVsbG9wdCkKICAgICB7CiAgICAgICAgIHN3aXRjaCAodHlwZSkgewogICAg
ICAgICBjYXNlIFNhbmRib3hFeHRlbnNpb246OlR5cGU6OlJlYWRPbmx5OgogICAgICAgICAgICAg
cmV0dXJuIHNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX2ZpbGUoQVBQX1NBTkRCT1hfUkVBRCwgcGF0
aCwgMCk7CiAgICAgICAgIGNhc2UgU2FuZGJveEV4dGVuc2lvbjo6VHlwZTo6UmVhZFdyaXRlOgog
ICAgICAgICAgICAgcmV0dXJuIHNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX2ZpbGUoQVBQX1NBTkRC
T1hfUkVBRF9XUklURSwgcGF0aCwgMCk7CisgICAgICAgIGNhc2UgU2FuZGJveEV4dGVuc2lvbjo6
VHlwZTo6TWFjaDoKKyAgICAgICAgICAgIHJldHVybiBzYW5kYm94X2V4dGVuc2lvbl9pc3N1ZV9t
YWNoX3RvX3Byb2Nlc3NfYnlfcGlkKCJjb20uYXBwbGUud2Via2l0LmV4dGVuc2lvbi5tYWNoIl9z
LCBwYXRoLCAwLCBwaWQudmFsdWUoKSk7CiAgICAgICAgIGNhc2UgU2FuZGJveEV4dGVuc2lvbjo6
VHlwZTo6R2VuZXJpYzoKICAgICAgICAgICAgIHJldHVybiBzYW5kYm94X2V4dGVuc2lvbl9pc3N1
ZV9nZW5lcmljKHBhdGgsIDApOwogICAgICAgICB9CiAgICAgfQogCi0gICAgU2FuZGJveEV4dGVu
c2lvbkltcGwoY29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlKQot
ICAgICAgICA6IG1fdG9rZW4geyBzYW5kYm94RXh0ZW5zaW9uRm9yVHlwZShwYXRoLCB0eXBlKSB9
CisgICAgU2FuZGJveEV4dGVuc2lvbkltcGwoY29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVu
c2lvbjo6VHlwZSB0eXBlLCBPcHRpb25hbDxQcm9jZXNzSUQ+IHBpZCA9IFdURjo6bnVsbG9wdCkK
KyAgICAgICAgOiBtX3Rva2VuIHsgc2FuZGJveEV4dGVuc2lvbkZvclR5cGUocGF0aCwgdHlwZSwg
cGlkKSB9CiAgICAgewogICAgIH0KIApAQCAtMzU3LDYgKzM2MywxOSBAQCBib29sIFNhbmRib3hF
eHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvckdlCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK2Jvb2wg
U2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cEJ5UGlkKGNvbnN0IFN0
cmluZyYgc2VydmljZSwgUHJvY2Vzc0lEIHBpZCwgSGFuZGxlJiBoYW5kbGUpCit7CisgICAgQVNT
RVJUKCFoYW5kbGUubV9zYW5kYm94RXh0ZW5zaW9uKTsKKyAgICAKKyAgICBoYW5kbGUubV9zYW5k
Ym94RXh0ZW5zaW9uID0gU2FuZGJveEV4dGVuc2lvbkltcGw6OmNyZWF0ZShzZXJ2aWNlLnV0Zjgo
KS5kYXRhKCksIFR5cGU6Ok1hY2gsIHBpZCk7CisgICAgaWYgKCFoYW5kbGUubV9zYW5kYm94RXh0
ZW5zaW9uKSB7CisgICAgICAgIFdURkxvZ0Fsd2F5cygiQ291bGQgbm90IGNyZWF0ZSBhICclcycg
c2FuZGJveCBleHRlbnNpb24iLCBzZXJ2aWNlLnV0ZjgoKS5kYXRhKCkpOworICAgICAgICByZXR1
cm4gZmFsc2U7CisgICAgfQorICAgIAorICAgIHJldHVybiB0cnVlOworfQorCiBTYW5kYm94RXh0
ZW5zaW9uOjpTYW5kYm94RXh0ZW5zaW9uKGNvbnN0IEhhbmRsZSYgaGFuZGxlKQogICAgIDogbV9z
YW5kYm94RXh0ZW5zaW9uKFdURk1vdmUoaGFuZGxlLm1fc2FuZGJveEV4dGVuc2lvbikpCiB7Cklu
ZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmgJKHJldmlzaW9uIDI0
Mjk2NCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmgJKHdvcmtp
bmcgY29weSkKQEAgLTY3Myw2ICs2NzMsMTAgQEAgcHJpdmF0ZToKICAgICBzdGQ6OnVuaXF1ZV9w
dHI8UGVyQWN0aXZpdHlTdGF0ZUNQVVVzYWdlU2FtcGxlcj4gbV9wZXJBY3Rpdml0eVN0YXRlQ1BV
VXNhZ2VTYW1wbGVyOwogI2VuZGlmCiAKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIFJl
dGFpblB0cjxOU09iamVjdD4gbV9hY2Nlc3NpYmlsaXR5RW5hYmxlZE9ic2VydmVyOworI2VuZGlm
CisKICAgICBib29sIG1fc2hvdWxkVXNlVGVzdGluZ05ldHdvcmtTZXNzaW9uIHsgZmFsc2UgfTsK
IAogICAgIGJvb2wgbV9wcm9jZXNzVGVybWluYXRpb25FbmFibGVkIHsgdHJ1ZSB9OwpJbmRleDog
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCShyZXZpc2lvbiAy
NDI5NjQpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC03NTksNiArNzU5LDggQEAgdm9pZCBXZWJQcm9jZXNzUHJveHk6OmRp
ZEZpbmlzaExhdW5jaGluZwogICAgICAgICBpZiAoeHBjX2Nvbm5lY3Rpb25fdCB4cGNDb25uZWN0
aW9uID0gY29ubmVjdGlvbigpLT54cGNDb25uZWN0aW9uKCkpCiAgICAgICAgICAgICBtX3Rocm90
dGxlci5kaWRDb25uZWN0VG9Qcm9jZXNzKHhwY19jb25uZWN0aW9uX2dldF9waWQoeHBjQ29ubmVj
dGlvbikpOwogICAgIH0KKworICAgIHVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQo
KTsKICNlbmRpZgogfQogCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNz
UHJveHkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNz
UHJveHkuaAkocmV2aXNpb24gMjQyOTY0KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Byb3h5LmgJKHdvcmtpbmcgY29weSkKQEAgLTI5Myw2ICsyOTMsMTAgQEAgcHVibGlj
OgogICAgIHZvaWQgcmV2b2tlQXVkaW9DYXB0dXJlRXh0ZW5zaW9uKCkgeyBtX21lZGlhQ2FwdHVy
ZVNhbmRib3hFeHRlbnNpb25zICY9IH5BdWRpbzsgfQogI2VuZGlmCiAKKyNpZiBQTEFURk9STShJ
T1NfRkFNSUxZKQorICAgIHZvaWQgdW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXJJZk5lZWRlZCgp
OworI2VuZGlmCisKIHByb3RlY3RlZDoKICAgICBzdGF0aWMgdWludDY0X3QgZ2VuZXJhdGVQYWdl
SUQoKTsKICAgICBXZWJQcm9jZXNzUHJveHkoV2ViUHJvY2Vzc1Bvb2wmLCBXZWJzaXRlRGF0YVN0
b3JlJiwgSXNQcmV3YXJtZWQpOwpAQCAtNDMxLDYgKzQzNSw3IEBAIHByaXZhdGU6CiAjaWYgUExB
VEZPUk0oSU9TX0ZBTUlMWSkKICAgICBGb3JlZ3JvdW5kV2ViUHJvY2Vzc1Rva2VuIG1fZm9yZWdy
b3VuZFRva2VuOwogICAgIEJhY2tncm91bmRXZWJQcm9jZXNzVG9rZW4gbV9iYWNrZ3JvdW5kVG9r
ZW47CisgICAgYm9vbCBtX2hhc1NlbnRNZXNzYWdlVG9VbmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZl
ciB7IGZhbHNlIH07CiAjZW5kaWYKIAogICAgIEhhc2hNYXA8U3RyaW5nLCB1aW50NjRfdD4gbV9w
YWdlVVJMUmV0YWluQ291bnRNYXA7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9XZWJQcm9jZXNzUG9vbENvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0JKHJldmlzaW9uIDI0Mjk2NCkKKysr
IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0JKHdv
cmtpbmcgY29weSkKQEAgLTI2LDYgKzI2LDcgQEAKICNpbXBvcnQgImNvbmZpZy5oIgogI2ltcG9y
dCAiV2ViUHJvY2Vzc1Bvb2wuaCIKIAorI2ltcG9ydCAiQWNjZXNzaWJpbGl0eVN1cHBvcnRTUEku
aCIKICNpbXBvcnQgIkNvb2tpZVN0b3JhZ2VVdGlsc0NGLmgiCiAjaW1wb3J0ICJMZWdhY3lDdXN0
b21Qcm90b2NvbE1hbmFnZXJDbGllbnQuaCIKICNpbXBvcnQgIk5ldHdvcmtQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzLmgiCkBAIC00NDcsNiArNDQ4LDEwIEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6
OnJlZ2lzdGVyTm90aWZpY2F0aW8KICAgICB9XTsKICNlbGlmIFBMQVRGT1JNKElPUykKICAgICBD
Rk5vdGlmaWNhdGlvbkNlbnRlckFkZE9ic2VydmVyKENGTm90aWZpY2F0aW9uQ2VudGVyR2V0RGFy
d2luTm90aWZ5Q2VudGVyKCksIHRoaXMsIGJhY2tsaWdodExldmVsRGlkQ2hhbmdlQ2FsbGJhY2ss
IHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihVSUJhY2tsaWdodExldmVsQ2hhbmdlZE5vdGlmaWNh
dGlvbiksIG51bGxwdHIsIENGTm90aWZpY2F0aW9uU3VzcGVuc2lvbkJlaGF2aW9yQ29hbGVzY2Up
OworICAgIG1fYWNjZXNzaWJpbGl0eUVuYWJsZWRPYnNlcnZlciA9IFtbTlNOb3RpZmljYXRpb25D
ZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXJGb3JOYW1lOihfX2JyaWRnZSBpZClrQVhT
QXBwbGljYXRpb25BY2Nlc3NpYmlsaXR5RW5hYmxlZE5vdGlmaWNhdGlvbiBvYmplY3Q6bmlsIHF1
ZXVlOltOU09wZXJhdGlvblF1ZXVlIGN1cnJlbnRRdWV1ZV0gdXNpbmdCbG9jazpeKE5TTm90aWZp
Y2F0aW9uICopIHsKKyAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX3Byb2Nlc3Nlcy5z
aXplKCk7ICsraSkKKyAgICAgICAgICAgIG1fcHJvY2Vzc2VzW2ldLT51bmJsb2NrQWNjZXNzaWJp
bGl0eVNlcnZlcklmTmVlZGVkKCk7CisgICAgfV07CiAjZW5kaWYgLy8gIVBMQVRGT1JNKElPU19G
QU1JTFkpCiB9CiAKQEAgLTQ2Niw2ICs0NzEsNyBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjp1bnJl
Z2lzdGVyTm90aWZpY2F0CiAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVy
XSByZW1vdmVPYnNlcnZlcjptX2RlYWN0aXZhdGlvbk9ic2VydmVyLmdldCgpXTsKICNlbGlmIFBM
QVRGT1JNKElPUykKICAgICBDRk5vdGlmaWNhdGlvbkNlbnRlclJlbW92ZU9ic2VydmVyKENGTm90
aWZpY2F0aW9uQ2VudGVyR2V0RGFyd2luTm90aWZ5Q2VudGVyKCksIHRoaXMsIHN0YXRpY19jYXN0
PENGU3RyaW5nUmVmPihVSUJhY2tsaWdodExldmVsQ2hhbmdlZE5vdGlmaWNhdGlvbikgLCBudWxs
cHRyKTsKKyAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9i
c2VydmVyOm1fYWNjZXNzaWJpbGl0eUVuYWJsZWRPYnNlcnZlci5nZXQoKV07CiAjZW5kaWYgLy8g
IVBMQVRGT1JNKElPU19GQU1JTFkpCiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L2lvcy9XZWJQcm9jZXNzUHJveHlJT1MubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvaW9zL1dlYlByb2Nlc3NQcm94eUlPUy5tbQkocmV2aXNpb24gMjQyOTY0KQorKysg
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dlYlByb2Nlc3NQcm94eUlPUy5tbQkod29ya2lu
ZyBjb3B5KQpAQCAtMjgsNiArMjgsNyBAQAogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKIAor
I2ltcG9ydCAiQWNjZXNzaWJpbGl0eVN1cHBvcnRTUEkuaCIKICNpbXBvcnQgIldLRnVsbEtleWJv
YXJkQWNjZXNzV2F0Y2hlci5oIgogI2ltcG9ydCAiV2ViUHJvY2Vzc01lc3NhZ2VzLmgiCiAKQEAg
LTQyLDYgKzQzLDI1IEBAIGJvb2wgV2ViUHJvY2Vzc1Byb3h5OjpmdWxsS2V5Ym9hcmRBY2Nlc3MK
ICNlbmRpZgogfQogCit2b2lkIFdlYlByb2Nlc3NQcm94eTo6dW5ibG9ja0FjY2Vzc2liaWxpdHlT
ZXJ2ZXJJZk5lZWRlZCgpCit7CisgICAgaWYgKG1faGFzU2VudE1lc3NhZ2VUb1VuYmxvY2tBY2Nl
c3NpYmlsaXR5U2VydmVyKQorICAgICAgICByZXR1cm47CisgICAgaWYgKCFfQVhTQXBwbGljYXRp
b25BY2Nlc3NpYmlsaXR5RW5hYmxlZCgpKQorICAgICAgICByZXR1cm47CisgICAgaWYgKCFwcm9j
ZXNzSWRlbnRpZmllcigpKQorICAgICAgICByZXR1cm47CisgICAgaWYgKCFjYW5TZW5kTWVzc2Fn
ZSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgaGFu
ZGxlOworICAgIGlmICghU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1
cEJ5UGlkKCJjb20uYXBwbGUuaXBob25lLmF4c2VydmVyLXN5c3RlbXdpZGUiLCBwcm9jZXNzSWRl
bnRpZmllcigpLCBoYW5kbGUpKQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2Vz
OjpXZWJQcm9jZXNzOjpVbmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcihoYW5kbGUpLCAwKTsKKyAg
ICBtX2hhc1NlbnRNZXNzYWdlVG9VbmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlciA9IHRydWU7Cit9
CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlM
WSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAJKHJldmlzaW9u
IDI0Mjk2NCkKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMTg2Nyw0ICsxODY3LDEyIEBAIHZvaWQgV2ViUHJvY2Vzczo6Y2xlYXJD
dXJyZW50TW9kaWZpZXJTdGEKICAgICBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OnNldEN1cnJlbnRN
b2RpZmllclN0YXRlKHsgfSk7CiB9CiAKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQordm9pZCBX
ZWJQcm9jZXNzOjp1bmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcihjb25zdCBTYW5kYm94RXh0ZW5z
aW9uOjpIYW5kbGUmIGhhbmRsZSkKK3sKKyAgICBib29sIG9rID0gU2FuZGJveEV4dGVuc2lvbjo6
Y29uc3VtZVBlcm1hbmVudGx5KGhhbmRsZSk7CisgICAgQVNTRVJUX1VOVVNFRChvaywgb2spOwor
fQorI2VuZGlmCisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApJbmRleDogU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUHJvY2Vzcy5oCShyZXZpc2lvbiAyNDI5NjQpCisrKyBTb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUHJvY2Vzcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNDUsNiArMjQ1LDggQEAg
cHVibGljOgogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICB2b2lkIGFjY2Vzc2liaWxp
dHlQcm9jZXNzU3VzcGVuZGVkTm90aWZpY2F0aW9uKGJvb2wpOworICAgIAorICAgIHZvaWQgdW5i
bG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIoY29uc3QgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJik7
CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKElPUykKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCShyZXZpc2lvbiAyNDI5NjQpCisrKyBT
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbgkod29ya2luZyBj
b3B5KQpAQCAtMTU3LDQgKzE1Nyw4IEBAIG1lc3NhZ2VzIC0+IFdlYlByb2Nlc3MgTGVnYWN5UmVj
ZWl2ZXIgewogI2VuZGlmCiAKICAgICBDbGVhckN1cnJlbnRNb2RpZmllclN0YXRlRm9yVGVzdGlu
ZygpCisKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIFVuYmxvY2tBY2Nlc3NpYmlsaXR5
U2VydmVyKFdlYktpdDo6U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGhhbmRsZSkKKyNlbmRpZgog
fQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>364905</attachid>
            <date>2019-03-15 20:41:14 -0700</date>
            <delta_ts>2019-03-15 21:11:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195342-20190315204113.patch</filename>
            <type>text/plain</type>
            <size>16448</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDMwMzEpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDE5LTAzLTE1ICBQZXIgQXJuZSBWb2xsYW4gIDxw
dm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0
eSBzZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgQnJlbnQgRnVsZ2hhbS4KKworICAgICAgICBBZGQgU1BJIHRvIGlzc3VlIGEgbWFj
aCBleHRlbnNpb24gdG8gYSBwcm9jZXNzIGJ5IHBpZC4gQWxzbywgYWRkIGEgbWFjcm8gZm9yCisg
ICAgICAgIHRoZSBhdmFpbGFiaWxpdHkgb2YgdGhpcyBTUEkuCisKKyAgICAgICAgKiB3dGYvUGxh
dGZvcm0uaDoKKyAgICAgICAgKiB3dGYvc3BpL2Rhcndpbi9TYW5kYm94U1BJLmg6CisKIDIwMTkt
MDMtMTUgIFRydWl0dCBTYXZlbGwgIDx0c2F2ZWxsQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJl
dmlld2VkLCByb2xsaW5nIG91dCByMjQzMDA4LgpJbmRleDogU291cmNlL1dURi93dGYvUGxhdGZv
cm0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCShyZXZpc2lvbiAy
NDMwMzEpCisrKyBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCSh3b3JraW5nIGNvcHkpCkBAIC0x
NTA1LDYgKzE1MDUsMTAgQEAKICNkZWZpbmUgSEFWRV9DU0NIRUNLRklYRElTQUJMRSAxCiAjZW5k
aWYKIAorI2lmIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlS
RUQgPj0gMTAxNDAwKSB8fCAoUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgX19JUEhPTkVfT1NfVkVS
U0lPTl9NSU5fUkVRVUlSRUQgPj0gMTMwMDAwKQorI2RlZmluZSBIQVZFX1NBTkRCT1hfSVNTVUVf
TUFDSF9FWFRFTlNUSU9OX1RPX1BST0NFU1NfQllfUElEIDEKKyNlbmRpZgorCiAjaWYgUExBVEZP
Uk0oTUFDKQogI2RlZmluZSBFTkFCTEVfTU9OT1NQQUNFX0ZPTlRfRVhDRVBUSU9OIChfX01BQ19P
U19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTAxNTAwKQogI2VsaWYgUExBVEZPUk0oSU9TX0ZB
TUlMWSkKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3NwaS9kYXJ3aW4vU2FuZGJveFNQSS5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3NwaS9kYXJ3aW4vU2FuZGJveFNQSS5oCShyZXZpc2lv
biAyNDMwMzEpCisrKyBTb3VyY2UvV1RGL3d0Zi9zcGkvZGFyd2luL1NhbmRib3hTUEkuaAkod29y
a2luZyBjb3B5KQpAQCAtNjMsNiArNjMsNyBAQCBleHRlcm4gY29uc3QgZW51bSBzYW5kYm94X2Zp
bHRlcl90eXBlIFNBCiAKIGNoYXIgKnNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX2ZpbGUoY29uc3Qg
Y2hhciAqZXh0ZW5zaW9uX2NsYXNzLCBjb25zdCBjaGFyICpwYXRoLCB1aW50MzJfdCBmbGFncyk7
CiBjaGFyICpzYW5kYm94X2V4dGVuc2lvbl9pc3N1ZV9nZW5lcmljKGNvbnN0IGNoYXIgKmV4dGVu
c2lvbl9jbGFzcywgdWludDMyX3QgZmxhZ3MpOworY2hhciAqc2FuZGJveF9leHRlbnNpb25faXNz
dWVfbWFjaF90b19wcm9jZXNzX2J5X3BpZChjb25zdCBjaGFyICpleHRlbnNpb25fY2xhc3MsIGNv
bnN0IGNoYXIgKm5hbWUsIHVpbnQzMl90IGZsYWdzLCBwaWRfdCk7CiBpbnQgc2FuZGJveF9jaGVj
ayhwaWRfdCwgY29uc3QgY2hhciAqb3BlcmF0aW9uLCBlbnVtIHNhbmRib3hfZmlsdGVyX3R5cGUs
IC4uLik7CiBpbnQgc2FuZGJveF9jaGVja19ieV9hdWRpdF90b2tlbihhdWRpdF90b2tlbl90LCBj
b25zdCBjaGFyICpvcGVyYXRpb24sIGVudW0gc2FuZGJveF9maWx0ZXJfdHlwZSwgLi4uKTsKIGlu
dCBzYW5kYm94X2NvbnRhaW5lcl9wYXRoX2Zvcl9waWQocGlkX3QsIGNoYXIgKmJ1ZmZlciwgc2l6
ZV90IGJ1ZnNpemUpOwpJbmRleDogU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0MzAzMSkKKysrIFNvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzggQEAKKzIwMTktMDMt
MTUgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1Nd
IEJsb2NrIHRoZSBhY2Nlc3NpYmlsaXR5IHNlcnZlciB3aGVuIGFjY2Vzc2liaWxpdHkgaXMgbm90
IGVuYWJsZWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xOTUzNDIKKworICAgICAgICBSZXZpZXdlZCBieSBCcmVudCBGdWxnaGFtLgorCisgICAgICAg
IEJ5IGRlZmF1bHQsIGJsb2NrIHRoZSBpT1MgYWNjZXNzaWJpbGl0eSBzZXJ2ZXIgaW4gdGhlIHNh
bmRib3guIElmIGFjY2Vzc2liaWxpdHkgaXMgZW5hYmxlZCwKKyAgICAgICAgbGV0IHRoZSBVSSBw
cm9jZXNzIGlzc3VlIGEgbWFjaCBleHRlbnNpb24gdG8gdGhlIFdlYkNvbnRlbnQgcHJvY2Vzcy4g
VGhlIFVJIHByb2Nlc3Mgd2lsbAorICAgICAgICBpc3N1ZSB0aGUgbWFjaCBleHRlbnNpb24gdGhl
IHRoZSBXZWJDb250ZW50IHByb2Nlc3MgYnkgaXRzIHByb2Nlc3MgaWRlbnRpZmllci4gVGhlIHNh
bmRib3gKKyAgICAgICAgZXh0ZW5zaW9uIGhhbmRsZSBpcyBzZW50IHRvIHRoZSBXZWJDb250ZW50
IHByb2Nlc3MgdG8gYmUgY29uc3VtZWQuIFRoZSBtZXNzYWdlIHdpbGwgYmUgc2VudAorICAgICAg
ICB3aGVuIHRoZSBXZWJQcm9jZXNzIGhhcyBmaW5pc2hlZCBsYXVuY2hpbmcsIGFuZCBhbHNvIHdo
ZW4gYWNjZXNzaWJpbGl0eSBpcyB0dXJuZWQgb24uCisKKyAgICAgICAgKiBQbGF0Zm9ybS9zcGkv
aW9zL0FjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmg6CisgICAgICAgICogUmVzb3VyY2VzL1NhbmRi
b3hQcm9maWxlcy9pb3MvY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LnNiOgorICAgICAgICAq
IFNoYXJlZC9TYW5kYm94RXh0ZW5zaW9uLmg6CisgICAgICAgICogU2hhcmVkL21hYy9TYW5kYm94
RXh0ZW5zaW9uTWFjLm1tOgorICAgICAgICAoV2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uSW1wbDo6
Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6U2FuZGJveEV4dGVuc2lvbkltcGw6OnNhbmRib3hF
eHRlbnNpb25Gb3JUeXBlKToKKyAgICAgICAgKFdlYktpdDo6U2FuZGJveEV4dGVuc2lvbkltcGw6
OlNhbmRib3hFeHRlbnNpb25JbXBsKToKKyAgICAgICAgKFdlYktpdDo6U2FuZGJveEV4dGVuc2lv
bjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cEJ5UGlkKToKKyAgICAgICAgKiBVSVByb2Nlc3Mv
Q29jb2EvV2ViUHJvY2Vzc1Bvb2xDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vz
c1Bvb2w6OnJlZ2lzdGVyTm90aWZpY2F0aW9uT2JzZXJ2ZXJzKToKKyAgICAgICAgKFdlYktpdDo6
V2ViUHJvY2Vzc1Bvb2w6OnVucmVnaXN0ZXJOb3RpZmljYXRpb25PYnNlcnZlcnMpOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQ
cm9jZXNzUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUHJveHk6OmRpZEZp
bmlzaExhdW5jaGluZyk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV2ViUHJvY2Vzc1Byb3h5SU9TLm1tOgorICAgICAgICAo
V2ViS2l0OjpXZWJQcm9jZXNzUHJveHk6OnVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVySWZOZWVk
ZWQpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYlByb2Nlc3M6OnVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyKToKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYlByb2Nlc3MuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3Mu
bWVzc2FnZXMuaW46CisKIDIwMTktMDMtMTUgIFRpbW90aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBw
bGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgc3BlY3VsYXRpdmUgYnVpbGQgZml4IGZvciBu
b24tQ29jb2EgcG9ydHMgYWZ0ZXIgcjI0MzAxMi4KSW5kZXg6IFNvdXJjZS9XZWJLaXQvUGxhdGZv
cm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3VwcG9ydFNQSS5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQvUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmlsaXR5U3VwcG9ydFNQSS5oCShyZXZp
c2lvbiAyNDMwMzEpCisrKyBTb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvQWNjZXNzaWJp
bGl0eVN1cHBvcnRTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtNDEsNiArNDEsOCBAQCBXVEZfRVhU
RVJOX0NfQkVHSU4KICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogZXh0ZXJuIEJvb2xlYW4gX0FY
U0tleVJlcGVhdEVuYWJsZWQoKTsKIGV4dGVybiBDRlRpbWVJbnRlcnZhbCBfQVhTS2V5UmVwZWF0
RGVsYXkoKTsKK2V4dGVybiBCb29sZWFuIF9BWFNBcHBsaWNhdGlvbkFjY2Vzc2liaWxpdHlFbmFi
bGVkKCk7CitleHRlcm4gQ0ZTdHJpbmdSZWYga0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVu
YWJsZWROb3RpZmljYXRpb247CiAjZW5kaWYKIAogI2lmIEVOQUJMRShBQ0NFU1NJQklMSVRZX0VW
RU5UUykKSW5kZXg6IFNvdXJjZS9XZWJLaXQvUmVzb3VyY2VzL1NhbmRib3hQcm9maWxlcy9pb3Mv
Y29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LnNiCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvUmVzb3VyY2VzL1NhbmRib3hQcm9maWxlcy9pb3MvY29tLmFwcGxlLldlYktpdC5XZWJDb250
ZW50LnNiCShyZXZpc2lvbiAyNDMwMzEpCisrKyBTb3VyY2UvV2ViS2l0L1Jlc291cmNlcy9TYW5k
Ym94UHJvZmlsZXMvaW9zL2NvbS5hcHBsZS5XZWJLaXQuV2ViQ29udGVudC5zYgkod29ya2luZyBj
b3B5KQpAQCAtMTg4LDcgKzE4OCw2IEBACiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuYmFj
a2JvYXJkLmhpZC5mb2N1cyIpCiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuYmFja2JvYXJk
LmhpZC5zZXJ2aWNlcyIpCiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuaW9oaWRldmVudHN5
c3RlbSIpCi0gICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuaXBob25lLmF4c2VydmVyLXN5c3Rl
bXdpZGUiKQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmZyb250Ym9hcmQud29ya3NwYWNl
IikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5mcm9udGJvYXJkLnN5c3RlbWFwcHNlcnZp
Y2VzIikpCiAKQEAgLTQ1MSw2ICs0NTAsOCBAQAogKGRlbnkgbWFjaC1sb29rdXAgKHdpdGggc2Vu
ZC1zaWduYWwgU0lHS0lMTCkKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQu
aGlkLnNlcnZpY2VzIikpCiAKKyhhbGxvdyBtYWNoLWxvb2t1cCAoZXh0ZW5zaW9uICJjb20uYXBw
bGUud2Via2l0LmV4dGVuc2lvbi5tYWNoIikpCisKIDs7IFRoZXNlIHNlcnZpY2VzIGhhdmUgYmVl
biBpZGVudGlmaWVkIGFzIHVudXNlZCBkdXJpbmcgbGl2aW5nLW9uLgogOzsgVGhpcyBsaXN0IG92
ZXJyaWRlcyBzb21lIGRlZmluaXRpb25zIGFib3ZlIGFuZCBpbiBjb21tb24uc2IuCiA7OyBGSVhN
RTogcmVtb3ZlIG92ZXJyaWRkZW4gcnVsZXMgb25jZSB0aGUgZmluYWwgbGlzdCBoYXMgYmVlbgpJ
bmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVuc2lvbi5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1NhbmRib3hFeHRlbnNpb24uaAkocmV2aXNpb24gMjQz
MDMxKQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVuc2lvbi5oCSh3b3JraW5n
IGNvcHkpCkBAIC00Niw2ICs0Niw3IEBAIHB1YmxpYzoKICAgICBlbnVtIGNsYXNzIFR5cGUgewog
ICAgICAgICBSZWFkT25seSwKICAgICAgICAgUmVhZFdyaXRlLAorICAgICAgICBNYWNoLAogICAg
ICAgICBHZW5lcmljLAogICAgIH07CiAKQEAgLTEwMSw2ICsxMDIsNyBAQCBwdWJsaWM6CiAgICAg
c3RhdGljIGJvb2wgY3JlYXRlSGFuZGxlRm9yUmVhZFdyaXRlRGlyZWN0b3J5KGNvbnN0IFN0cmlu
ZyYgcGF0aCwgSGFuZGxlJik7IC8vIFdpbGwgYXR0ZW1wdCB0byBjcmVhdGUgdGhlIGRpcmVjdG9y
eS4KICAgICBzdGF0aWMgU3RyaW5nIGNyZWF0ZUhhbmRsZUZvclRlbXBvcmFyeUZpbGUoY29uc3Qg
U3RyaW5nJiBwcmVmaXgsIFR5cGUsIEhhbmRsZSYpOwogICAgIHN0YXRpYyBib29sIGNyZWF0ZUhh
bmRsZUZvckdlbmVyaWNFeHRlbnNpb24oY29uc3QgU3RyaW5nJiBleHRlbnNpb25DbGFzcywgSGFu
ZGxlJik7CisgICAgc3RhdGljIGJvb2wgY3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cEJ5UGlkKGNv
bnN0IFN0cmluZyYgc2VydmljZSwgcGlkX3QsIEhhbmRsZSYpOwogICAgIH5TYW5kYm94RXh0ZW5z
aW9uKCk7CiAKICAgICBib29sIGNvbnN1bWUoKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvU2hhcmVk
L21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
U2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCShyZXZpc2lvbiAyNDMwMzEpCisrKyBT
b3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvU2FuZGJveEV4dGVuc2lvbk1hYy5tbQkod29ya2luZyBj
b3B5KQpAQCAtNDAsOSArNDAsOSBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgU2FuZGJv
eEV4dGVuc2lvbkltcGwgewogcHVibGljOgotICAgIHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8U2Fu
ZGJveEV4dGVuc2lvbkltcGw+IGNyZWF0ZShjb25zdCBjaGFyKiBwYXRoLCBTYW5kYm94RXh0ZW5z
aW9uOjpUeXBlIHR5cGUpCisgICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxTYW5kYm94RXh0ZW5z
aW9uSW1wbD4gY3JlYXRlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRib3hFeHRlbnNpb246OlR5cGUg
dHlwZSwgT3B0aW9uYWw8cGlkX3Q+IHBpZCA9IFdURjo6bnVsbG9wdCkKICAgICB7Ci0gICAgICAg
IHN0ZDo6dW5pcXVlX3B0cjxTYW5kYm94RXh0ZW5zaW9uSW1wbD4gaW1wbCB7IG5ldyBTYW5kYm94
RXh0ZW5zaW9uSW1wbChwYXRoLCB0eXBlKSB9OworICAgICAgICBzdGQ6OnVuaXF1ZV9wdHI8U2Fu
ZGJveEV4dGVuc2lvbkltcGw+IGltcGwgeyBuZXcgU2FuZGJveEV4dGVuc2lvbkltcGwocGF0aCwg
dHlwZSwgcGlkKSB9OwogICAgICAgICBpZiAoIWltcGwtPm1fdG9rZW4pCiAgICAgICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKICAgICAgICAgcmV0dXJuIGltcGw7CkBAIC02NCw2ICs2NCwxMCBAQCBw
dWJsaWM6CiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWV9TSU1VTEFUT1IpCiAgICAgICAgIHJldHVy
biAhc2FuZGJveF9jaGVjayhnZXRwaWQoKSwgMCwgU0FOREJPWF9GSUxURVJfTk9ORSk7CiAjZWxz
ZQorICAgICAgICBpZiAobV9oYW5kbGUgPT0gLTEpIHsKKyAgICAgICAgICAgIExPR19FUlJPUigi
Q291bGQgbm90IGNyZWF0ZSBhIHNhbmRib3ggZXh0ZW5zaW9uIGZvciAnJXMnLCBlcnJubyA9ICVk
IiwgbV90b2tlbiwgZXJybm8pOworICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9
CiAgICAgICAgIHJldHVybiBtX2hhbmRsZTsKICNlbmRpZgogICAgIH0KQEAgLTgwLDIwICs4NCwy
OCBAQCBwdWJsaWM6CiAgICAgfQogCiBwcml2YXRlOgotICAgIGNoYXIqIHNhbmRib3hFeHRlbnNp
b25Gb3JUeXBlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRib3hFeHRlbnNpb246OlR5cGUgdHlwZSkK
KyAgICBjaGFyKiBzYW5kYm94RXh0ZW5zaW9uRm9yVHlwZShjb25zdCBjaGFyKiBwYXRoLCBTYW5k
Ym94RXh0ZW5zaW9uOjpUeXBlIHR5cGUsIE9wdGlvbmFsPHBpZF90PiBwaWQgPSBXVEY6Om51bGxv
cHQpCiAgICAgewogICAgICAgICBzd2l0Y2ggKHR5cGUpIHsKICAgICAgICAgY2FzZSBTYW5kYm94
RXh0ZW5zaW9uOjpUeXBlOjpSZWFkT25seToKICAgICAgICAgICAgIHJldHVybiBzYW5kYm94X2V4
dGVuc2lvbl9pc3N1ZV9maWxlKEFQUF9TQU5EQk9YX1JFQUQsIHBhdGgsIDApOwogICAgICAgICBj
YXNlIFNhbmRib3hFeHRlbnNpb246OlR5cGU6OlJlYWRXcml0ZToKICAgICAgICAgICAgIHJldHVy
biBzYW5kYm94X2V4dGVuc2lvbl9pc3N1ZV9maWxlKEFQUF9TQU5EQk9YX1JFQURfV1JJVEUsIHBh
dGgsIDApOworICAgICAgICBjYXNlIFNhbmRib3hFeHRlbnNpb246OlR5cGU6Ok1hY2g6CisjaWYg
SEFWRV9TQU5EQk9YX0lTU1VFX01BQ0hfRVhURU5TVElPTl9UT19QUk9DRVNTX0JZX1BJRAorICAg
ICAgICAgICAgcmV0dXJuIHNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX21hY2hfdG9fcHJvY2Vzc19i
eV9waWQoImNvbS5hcHBsZS53ZWJraXQuZXh0ZW5zaW9uLm1hY2giX3MsIHBhdGgsIDAsIHBpZC52
YWx1ZSgpKTsKKyNlbHNlCisgICAgICAgICAgICBVTlVTRURfUEFSQU0ocGlkKTsKKyAgICAgICAg
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7Cisj
ZW5kaWYKICAgICAgICAgY2FzZSBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpHZW5lcmljOgogICAg
ICAgICAgICAgcmV0dXJuIHNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX2dlbmVyaWMocGF0aCwgMCk7
CiAgICAgICAgIH0KICAgICB9CiAKLSAgICBTYW5kYm94RXh0ZW5zaW9uSW1wbChjb25zdCBjaGFy
KiBwYXRoLCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUpCi0gICAgICAgIDogbV90b2tlbiB7
IHNhbmRib3hFeHRlbnNpb25Gb3JUeXBlKHBhdGgsIHR5cGUpIH0KKyAgICBTYW5kYm94RXh0ZW5z
aW9uSW1wbChjb25zdCBjaGFyKiBwYXRoLCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlIHR5cGUsIE9w
dGlvbmFsPHBpZF90PiBwaWQgPSBXVEY6Om51bGxvcHQpCisgICAgICAgIDogbV90b2tlbiB7IHNh
bmRib3hFeHRlbnNpb25Gb3JUeXBlKHBhdGgsIHR5cGUsIHBpZCkgfQogICAgIHsKICAgICB9CiAK
QEAgLTM1Nyw2ICszNjksMTkgQEAgYm9vbCBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVG
b3JHZQogICAgIHJldHVybiB0cnVlOwogfQogCitib29sIFNhbmRib3hFeHRlbnNpb246OmNyZWF0
ZUhhbmRsZUZvck1hY2hMb29rdXBCeVBpZChjb25zdCBTdHJpbmcmIHNlcnZpY2UsIHBpZF90IHBp
ZCwgSGFuZGxlJiBoYW5kbGUpCit7CisgICAgQVNTRVJUKCFoYW5kbGUubV9zYW5kYm94RXh0ZW5z
aW9uKTsKKyAgICAKKyAgICBoYW5kbGUubV9zYW5kYm94RXh0ZW5zaW9uID0gU2FuZGJveEV4dGVu
c2lvbkltcGw6OmNyZWF0ZShzZXJ2aWNlLnV0ZjgoKS5kYXRhKCksIFR5cGU6Ok1hY2gsIHBpZCk7
CisgICAgaWYgKCFoYW5kbGUubV9zYW5kYm94RXh0ZW5zaW9uKSB7CisgICAgICAgIFdURkxvZ0Fs
d2F5cygiQ291bGQgbm90IGNyZWF0ZSBhICclcycgc2FuZGJveCBleHRlbnNpb24iLCBzZXJ2aWNl
LnV0ZjgoKS5kYXRhKCkpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICAgIAorICAg
IHJldHVybiB0cnVlOworfQorCiBTYW5kYm94RXh0ZW5zaW9uOjpTYW5kYm94RXh0ZW5zaW9uKGNv
bnN0IEhhbmRsZSYgaGFuZGxlKQogICAgIDogbV9zYW5kYm94RXh0ZW5zaW9uKFdURk1vdmUoaGFu
ZGxlLm1fc2FuZGJveEV4dGVuc2lvbikpCiB7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQcm9jZXNzUG9vbC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlByb2Nlc3NQb29sLmgJKHJldmlzaW9uIDI0MzAzMSkKKysrIFNvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQb29sLmgJKHdvcmtpbmcgY29weSkKQEAgLTY3Myw2ICs2NzMsMTAg
QEAgcHJpdmF0ZToKICAgICBzdGQ6OnVuaXF1ZV9wdHI8UGVyQWN0aXZpdHlTdGF0ZUNQVVVzYWdl
U2FtcGxlcj4gbV9wZXJBY3Rpdml0eVN0YXRlQ1BVVXNhZ2VTYW1wbGVyOwogI2VuZGlmCiAKKyNp
ZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIFJldGFpblB0cjxOU09iamVjdD4gbV9hY2Nlc3Np
YmlsaXR5RW5hYmxlZE9ic2VydmVyOworI2VuZGlmCisKICAgICBib29sIG1fc2hvdWxkVXNlVGVz
dGluZ05ldHdvcmtTZXNzaW9uIHsgZmFsc2UgfTsKIAogICAgIGJvb2wgbV9wcm9jZXNzVGVybWlu
YXRpb25FbmFibGVkIHsgdHJ1ZSB9OwpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Byb3h5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQcm9jZXNzUHJveHkuY3BwCShyZXZpc2lvbiAyNDMwMzEpCisrKyBTb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03NTksNiArNzU5
LDggQEAgdm9pZCBXZWJQcm9jZXNzUHJveHk6OmRpZEZpbmlzaExhdW5jaGluZwogICAgICAgICBp
ZiAoeHBjX2Nvbm5lY3Rpb25fdCB4cGNDb25uZWN0aW9uID0gY29ubmVjdGlvbigpLT54cGNDb25u
ZWN0aW9uKCkpCiAgICAgICAgICAgICBtX3Rocm90dGxlci5kaWRDb25uZWN0VG9Qcm9jZXNzKHhw
Y19jb25uZWN0aW9uX2dldF9waWQoeHBjQ29ubmVjdGlvbikpOwogICAgIH0KKworICAgIHVuYmxv
Y2tBY2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQoKTsKICNlbmRpZgogfQogCkluZGV4OiBTb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuaAkocmV2aXNpb24gMjQzMDMxKQor
KysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI5Myw2ICsyOTMsMTAgQEAgcHVibGljOgogICAgIHZvaWQgcmV2b2tlQXVkaW9DYXB0
dXJlRXh0ZW5zaW9uKCkgeyBtX21lZGlhQ2FwdHVyZVNhbmRib3hFeHRlbnNpb25zICY9IH5BdWRp
bzsgfQogI2VuZGlmCiAKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIHZvaWQgdW5ibG9j
a0FjY2Vzc2liaWxpdHlTZXJ2ZXJJZk5lZWRlZCgpOworI2VuZGlmCisKIHByb3RlY3RlZDoKICAg
ICBzdGF0aWMgdWludDY0X3QgZ2VuZXJhdGVQYWdlSUQoKTsKICAgICBXZWJQcm9jZXNzUHJveHko
V2ViUHJvY2Vzc1Bvb2wmLCBXZWJzaXRlRGF0YVN0b3JlJiwgSXNQcmV3YXJtZWQpOwpAQCAtNDMx
LDYgKzQzNSw3IEBAIHByaXZhdGU6CiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBGb3Jl
Z3JvdW5kV2ViUHJvY2Vzc1Rva2VuIG1fZm9yZWdyb3VuZFRva2VuOwogICAgIEJhY2tncm91bmRX
ZWJQcm9jZXNzVG9rZW4gbV9iYWNrZ3JvdW5kVG9rZW47CisgICAgYm9vbCBtX2hhc1NlbnRNZXNz
YWdlVG9VbmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlciB7IGZhbHNlIH07CiAjZW5kaWYKIAogICAg
IEhhc2hNYXA8U3RyaW5nLCB1aW50NjRfdD4gbV9wYWdlVVJMUmV0YWluQ291bnRNYXA7CkluZGV4
OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQcm9jZXNzUG9vbENvY29hLm1tCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29s
Q29jb2EubW0JKHJldmlzaW9uIDI0MzAzMSkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0Nv
Y29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0JKHdvcmtpbmcgY29weSkKQEAgLTI2LDYgKzI2LDcg
QEAKICNpbXBvcnQgImNvbmZpZy5oIgogI2ltcG9ydCAiV2ViUHJvY2Vzc1Bvb2wuaCIKIAorI2lt
cG9ydCAiQWNjZXNzaWJpbGl0eVN1cHBvcnRTUEkuaCIKICNpbXBvcnQgIkNvb2tpZVN0b3JhZ2VV
dGlsc0NGLmgiCiAjaW1wb3J0ICJMZWdhY3lDdXN0b21Qcm90b2NvbE1hbmFnZXJDbGllbnQuaCIK
ICNpbXBvcnQgIk5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgiCkBAIC00NDcsNiAr
NDQ4LDEwIEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnJlZ2lzdGVyTm90aWZpY2F0aW8KICAgICB9
XTsKICNlbGlmIFBMQVRGT1JNKElPUykKICAgICBDRk5vdGlmaWNhdGlvbkNlbnRlckFkZE9ic2Vy
dmVyKENGTm90aWZpY2F0aW9uQ2VudGVyR2V0RGFyd2luTm90aWZ5Q2VudGVyKCksIHRoaXMsIGJh
Y2tsaWdodExldmVsRGlkQ2hhbmdlQ2FsbGJhY2ssIHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihV
SUJhY2tsaWdodExldmVsQ2hhbmdlZE5vdGlmaWNhdGlvbiksIG51bGxwdHIsIENGTm90aWZpY2F0
aW9uU3VzcGVuc2lvbkJlaGF2aW9yQ29hbGVzY2UpOworICAgIG1fYWNjZXNzaWJpbGl0eUVuYWJs
ZWRPYnNlcnZlciA9IFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2Jz
ZXJ2ZXJGb3JOYW1lOihfX2JyaWRnZSBpZClrQVhTQXBwbGljYXRpb25BY2Nlc3NpYmlsaXR5RW5h
YmxlZE5vdGlmaWNhdGlvbiBvYmplY3Q6bmlsIHF1ZXVlOltOU09wZXJhdGlvblF1ZXVlIGN1cnJl
bnRRdWV1ZV0gdXNpbmdCbG9jazpeKE5TTm90aWZpY2F0aW9uICopIHsKKyAgICAgICAgZm9yIChz
aXplX3QgaSA9IDA7IGkgPCBtX3Byb2Nlc3Nlcy5zaXplKCk7ICsraSkKKyAgICAgICAgICAgIG1f
cHJvY2Vzc2VzW2ldLT51bmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKCk7CisgICAg
fV07CiAjZW5kaWYgLy8gIVBMQVRGT1JNKElPU19GQU1JTFkpCiB9CiAKQEAgLTQ2Niw2ICs0NzEs
NyBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjp1bnJlZ2lzdGVyTm90aWZpY2F0CiAgICAgW1tOU05v
dGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNlcnZlcjptX2RlYWN0aXZh
dGlvbk9ic2VydmVyLmdldCgpXTsKICNlbGlmIFBMQVRGT1JNKElPUykKICAgICBDRk5vdGlmaWNh
dGlvbkNlbnRlclJlbW92ZU9ic2VydmVyKENGTm90aWZpY2F0aW9uQ2VudGVyR2V0RGFyd2luTm90
aWZ5Q2VudGVyKCksIHRoaXMsIHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihVSUJhY2tsaWdodExl
dmVsQ2hhbmdlZE5vdGlmaWNhdGlvbikgLCBudWxscHRyKTsKKyAgICBbW05TTm90aWZpY2F0aW9u
Q2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9ic2VydmVyOm1fYWNjZXNzaWJpbGl0eUVuYWJs
ZWRPYnNlcnZlci5nZXQoKV07CiAjZW5kaWYgLy8gIVBMQVRGT1JNKElPU19GQU1JTFkpCiB9CiAK
SW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQcm9jZXNzUHJveHlJT1MubW0K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dlYlByb2Nlc3NQcm94
eUlPUy5tbQkocmV2aXNpb24gMjQzMDMxKQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9z
L1dlYlByb2Nlc3NQcm94eUlPUy5tbQkod29ya2luZyBjb3B5KQpAQCAtMjgsNiArMjgsNyBAQAog
CiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKIAorI2ltcG9ydCAiQWNjZXNzaWJpbGl0eVN1cHBv
cnRTUEkuaCIKICNpbXBvcnQgIldLRnVsbEtleWJvYXJkQWNjZXNzV2F0Y2hlci5oIgogI2ltcG9y
dCAiV2ViUHJvY2Vzc01lc3NhZ2VzLmgiCiAKQEAgLTQyLDYgKzQzLDI1IEBAIGJvb2wgV2ViUHJv
Y2Vzc1Byb3h5OjpmdWxsS2V5Ym9hcmRBY2Nlc3MKICNlbmRpZgogfQogCit2b2lkIFdlYlByb2Nl
c3NQcm94eTo6dW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXJJZk5lZWRlZCgpCit7CisgICAgaWYg
KG1faGFzU2VudE1lc3NhZ2VUb1VuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyKQorICAgICAgICBy
ZXR1cm47CisgICAgaWYgKCFfQVhTQXBwbGljYXRpb25BY2Nlc3NpYmlsaXR5RW5hYmxlZCgpKQor
ICAgICAgICByZXR1cm47CisgICAgaWYgKCFwcm9jZXNzSWRlbnRpZmllcigpKQorICAgICAgICBy
ZXR1cm47CisgICAgaWYgKCFjYW5TZW5kTWVzc2FnZSgpKQorICAgICAgICByZXR1cm47CisKKyAg
ICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgaGFuZGxlOworICAgIGlmICghU2FuZGJveEV4dGVu
c2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cEJ5UGlkKCJjb20uYXBwbGUuaXBob25lLmF4
c2VydmVyLXN5c3RlbXdpZGUiLCBwcm9jZXNzSWRlbnRpZmllcigpLCBoYW5kbGUpKQorICAgICAg
ICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzOjpVbmJsb2NrQWNjZXNz
aWJpbGl0eVNlcnZlcihoYW5kbGUpLCAwKTsKKyAgICBtX2hhc1NlbnRNZXNzYWdlVG9VbmJsb2Nr
QWNjZXNzaWJpbGl0eVNlcnZlciA9IHRydWU7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAog
CiAjZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlMWSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUHJvY2Vzcy5jcHAJKHJldmlzaW9uIDI0MzAzMSkKKysrIFNvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTg2Nyw0ICsxODY3
LDEyIEBAIHZvaWQgV2ViUHJvY2Vzczo6Y2xlYXJDdXJyZW50TW9kaWZpZXJTdGEKICAgICBQbGF0
Zm9ybUtleWJvYXJkRXZlbnQ6OnNldEN1cnJlbnRNb2RpZmllclN0YXRlKHsgfSk7CiB9CiAKKyNp
ZiBQTEFURk9STShJT1NfRkFNSUxZKQordm9pZCBXZWJQcm9jZXNzOjp1bmJsb2NrQWNjZXNzaWJp
bGl0eVNlcnZlcihjb25zdCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmIGhhbmRsZSkKK3sKKyAg
ICBib29sIG9rID0gU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KGhhbmRsZSk7
CisgICAgQVNTRVJUX1VOVVNFRChvaywgb2spOworfQorI2VuZGlmCisKIH0gLy8gbmFtZXNwYWNl
IFdlYktpdApJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCShyZXZpc2lv
biAyNDMwMzEpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNDUsNiArMjQ1LDggQEAgcHVibGljOgogCiAjaWYgUExBVEZPUk0oSU9T
X0ZBTUlMWSkKICAgICB2b2lkIGFjY2Vzc2liaWxpdHlQcm9jZXNzU3VzcGVuZGVkTm90aWZpY2F0
aW9uKGJvb2wpOworICAgIAorICAgIHZvaWQgdW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIoY29u
c3QgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJik7CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKElP
UykKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmlu
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3Nh
Z2VzLmluCShyZXZpc2lvbiAyNDMwMzEpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UHJvY2Vzcy5tZXNzYWdlcy5pbgkod29ya2luZyBjb3B5KQpAQCAtMTU3LDQgKzE1Nyw4IEBAIG1l
c3NhZ2VzIC0+IFdlYlByb2Nlc3MgTGVnYWN5UmVjZWl2ZXIgewogI2VuZGlmCiAKICAgICBDbGVh
ckN1cnJlbnRNb2RpZmllclN0YXRlRm9yVGVzdGluZygpCisKKyNpZiBQTEFURk9STShJT1NfRkFN
SUxZKQorICAgIFVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyKFdlYktpdDo6U2FuZGJveEV4dGVu
c2lvbjo6SGFuZGxlIGhhbmRsZSkKKyNlbmRpZgogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>364910</attachid>
            <date>2019-03-15 21:14:04 -0700</date>
            <delta_ts>2019-03-15 22:44:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195342-20190315211403.patch</filename>
            <type>text/plain</type>
            <size>16447</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDMwMzEpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDE5LTAzLTE1ICBQZXIgQXJuZSBWb2xsYW4gIDxw
dm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBCbG9jayB0aGUgYWNjZXNzaWJpbGl0
eSBzZXJ2ZXIgd2hlbiBhY2Nlc3NpYmlsaXR5IGlzIG5vdCBlbmFibGVkLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MzQyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgQnJlbnQgRnVsZ2hhbS4KKworICAgICAgICBBZGQgU1BJIHRvIGlzc3VlIGEgbWFj
aCBleHRlbnNpb24gdG8gYSBwcm9jZXNzIGJ5IHBpZC4gQWxzbywgYWRkIGEgbWFjcm8gZm9yCisg
ICAgICAgIHRoZSBhdmFpbGFiaWxpdHkgb2YgdGhpcyBTUEkuCisKKyAgICAgICAgKiB3dGYvUGxh
dGZvcm0uaDoKKyAgICAgICAgKiB3dGYvc3BpL2Rhcndpbi9TYW5kYm94U1BJLmg6CisKIDIwMTkt
MDMtMTUgIFRydWl0dCBTYXZlbGwgIDx0c2F2ZWxsQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJl
dmlld2VkLCByb2xsaW5nIG91dCByMjQzMDA4LgpJbmRleDogU291cmNlL1dURi93dGYvUGxhdGZv
cm0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCShyZXZpc2lvbiAy
NDMwMzEpCisrKyBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCSh3b3JraW5nIGNvcHkpCkBAIC0x
NTA1LDYgKzE1MDUsMTAgQEAKICNkZWZpbmUgSEFWRV9DU0NIRUNLRklYRElTQUJMRSAxCiAjZW5k
aWYKIAorI2lmIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlS
RUQgPj0gMTAxNDAwKSB8fCAoUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgX19JUEhPTkVfT1NfVkVS
U0lPTl9NSU5fUkVRVUlSRUQgPj0gMTMwMDAwKQorI2RlZmluZSBIQVZFX1NBTkRCT1hfSVNTVUVf
TUFDSF9FWFRFTlNJT05fVE9fUFJPQ0VTU19CWV9QSUQgMQorI2VuZGlmCisKICNpZiBQTEFURk9S
TShNQUMpCiAjZGVmaW5lIEVOQUJMRV9NT05PU1BBQ0VfRk9OVF9FWENFUFRJT04gKF9fTUFDX09T
X1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPCAxMDE1MDApCiAjZWxpZiBQTEFURk9STShJT1NfRkFN
SUxZKQpJbmRleDogU291cmNlL1dURi93dGYvc3BpL2Rhcndpbi9TYW5kYm94U1BJLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvc3BpL2Rhcndpbi9TYW5kYm94U1BJLmgJKHJldmlzaW9u
IDI0MzAzMSkKKysrIFNvdXJjZS9XVEYvd3RmL3NwaS9kYXJ3aW4vU2FuZGJveFNQSS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC02Myw2ICs2Myw3IEBAIGV4dGVybiBjb25zdCBlbnVtIHNhbmRib3hfZmls
dGVyX3R5cGUgU0EKIAogY2hhciAqc2FuZGJveF9leHRlbnNpb25faXNzdWVfZmlsZShjb25zdCBj
aGFyICpleHRlbnNpb25fY2xhc3MsIGNvbnN0IGNoYXIgKnBhdGgsIHVpbnQzMl90IGZsYWdzKTsK
IGNoYXIgKnNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX2dlbmVyaWMoY29uc3QgY2hhciAqZXh0ZW5z
aW9uX2NsYXNzLCB1aW50MzJfdCBmbGFncyk7CitjaGFyICpzYW5kYm94X2V4dGVuc2lvbl9pc3N1
ZV9tYWNoX3RvX3Byb2Nlc3NfYnlfcGlkKGNvbnN0IGNoYXIgKmV4dGVuc2lvbl9jbGFzcywgY29u
c3QgY2hhciAqbmFtZSwgdWludDMyX3QgZmxhZ3MsIHBpZF90KTsKIGludCBzYW5kYm94X2NoZWNr
KHBpZF90LCBjb25zdCBjaGFyICpvcGVyYXRpb24sIGVudW0gc2FuZGJveF9maWx0ZXJfdHlwZSwg
Li4uKTsKIGludCBzYW5kYm94X2NoZWNrX2J5X2F1ZGl0X3Rva2VuKGF1ZGl0X3Rva2VuX3QsIGNv
bnN0IGNoYXIgKm9wZXJhdGlvbiwgZW51bSBzYW5kYm94X2ZpbHRlcl90eXBlLCAuLi4pOwogaW50
IHNhbmRib3hfY29udGFpbmVyX3BhdGhfZm9yX3BpZChwaWRfdCwgY2hhciAqYnVmZmVyLCBzaXpl
X3QgYnVmc2l6ZSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkocmV2aXNpb24gMjQzMDMxKQorKysgU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwzOCBAQAorMjAxOS0wMy0x
NSAgUGVyIEFybmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10g
QmxvY2sgdGhlIGFjY2Vzc2liaWxpdHkgc2VydmVyIHdoZW4gYWNjZXNzaWJpbGl0eSBpcyBub3Qg
ZW5hYmxlZC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE5NTM0MgorCisgICAgICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisKKyAgICAgICAg
QnkgZGVmYXVsdCwgYmxvY2sgdGhlIGlPUyBhY2Nlc3NpYmlsaXR5IHNlcnZlciBpbiB0aGUgc2Fu
ZGJveC4gSWYgYWNjZXNzaWJpbGl0eSBpcyBlbmFibGVkLAorICAgICAgICBsZXQgdGhlIFVJIHBy
b2Nlc3MgaXNzdWUgYSBtYWNoIGV4dGVuc2lvbiB0byB0aGUgV2ViQ29udGVudCBwcm9jZXNzLiBU
aGUgVUkgcHJvY2VzcyB3aWxsCisgICAgICAgIGlzc3VlIHRoZSBtYWNoIGV4dGVuc2lvbiB0aGUg
dGhlIFdlYkNvbnRlbnQgcHJvY2VzcyBieSBpdHMgcHJvY2VzcyBpZGVudGlmaWVyLiBUaGUgc2Fu
ZGJveAorICAgICAgICBleHRlbnNpb24gaGFuZGxlIGlzIHNlbnQgdG8gdGhlIFdlYkNvbnRlbnQg
cHJvY2VzcyB0byBiZSBjb25zdW1lZC4gVGhlIG1lc3NhZ2Ugd2lsbCBiZSBzZW50CisgICAgICAg
IHdoZW4gdGhlIFdlYlByb2Nlc3MgaGFzIGZpbmlzaGVkIGxhdW5jaGluZywgYW5kIGFsc28gd2hl
biBhY2Nlc3NpYmlsaXR5IGlzIHR1cm5lZCBvbi4KKworICAgICAgICAqIFBsYXRmb3JtL3NwaS9p
b3MvQWNjZXNzaWJpbGl0eVN1cHBvcnRTUEkuaDoKKyAgICAgICAgKiBSZXNvdXJjZXMvU2FuZGJv
eFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuc2I6CisgICAgICAgICog
U2hhcmVkL1NhbmRib3hFeHRlbnNpb24uaDoKKyAgICAgICAgKiBTaGFyZWQvbWFjL1NhbmRib3hF
eHRlbnNpb25NYWMubW06CisgICAgICAgIChXZWJLaXQ6OlNhbmRib3hFeHRlbnNpb25JbXBsOjpj
cmVhdGUpOgorICAgICAgICAoV2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uSW1wbDo6c2FuZGJveEV4
dGVuc2lvbkZvclR5cGUpOgorICAgICAgICAoV2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uSW1wbDo6
U2FuZGJveEV4dGVuc2lvbkltcGwpOgorICAgICAgICAoV2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9u
OjpjcmVhdGVIYW5kbGVGb3JNYWNoTG9va3VwQnlQaWQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9D
b2NvYS9XZWJQcm9jZXNzUG9vbENvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNz
UG9vbDo6cmVnaXN0ZXJOb3RpZmljYXRpb25PYnNlcnZlcnMpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQcm9jZXNzUG9vbDo6dW5yZWdpc3Rlck5vdGlmaWNhdGlvbk9ic2VydmVycyk6CisgICAgICAg
ICogVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBy
b2Nlc3NQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6ZGlkRmlu
aXNoTGF1bmNoaW5nKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5Lmg6Cisg
ICAgICAgICogVUlQcm9jZXNzL2lvcy9XZWJQcm9jZXNzUHJveHlJT1MubW06CisgICAgICAgIChX
ZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6dW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXJJZk5lZWRl
ZCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViUHJvY2Vzczo6dW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIpOgorICAgICAgICAqIFdl
YlByb2Nlc3MvV2ViUHJvY2Vzcy5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUHJvY2Vzcy5t
ZXNzYWdlcy5pbjoKKwogMjAxOS0wMy0xNSAgVGltb3RoeSBIYXRjaGVyICA8dGltb3RoeUBhcHBs
ZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBzcGVjdWxhdGl2ZSBidWlsZCBmaXggZm9yIG5v
bi1Db2NvYSBwb3J0cyBhZnRlciByMjQzMDEyLgpJbmRleDogU291cmNlL1dlYktpdC9QbGF0Zm9y
bS9zcGkvaW9zL0FjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9QbGF0Zm9ybS9zcGkvaW9zL0FjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmgJKHJldmlz
aW9uIDI0MzAzMSkKKysrIFNvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL2lvcy9BY2Nlc3NpYmls
aXR5U3VwcG9ydFNQSS5oCSh3b3JraW5nIGNvcHkpCkBAIC00MSw2ICs0MSw4IEBAIFdURl9FWFRF
Uk5fQ19CRUdJTgogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiBleHRlcm4gQm9vbGVhbiBfQVhT
S2V5UmVwZWF0RW5hYmxlZCgpOwogZXh0ZXJuIENGVGltZUludGVydmFsIF9BWFNLZXlSZXBlYXRE
ZWxheSgpOworZXh0ZXJuIEJvb2xlYW4gX0FYU0FwcGxpY2F0aW9uQWNjZXNzaWJpbGl0eUVuYWJs
ZWQoKTsKK2V4dGVybiBDRlN0cmluZ1JlZiBrQVhTQXBwbGljYXRpb25BY2Nlc3NpYmlsaXR5RW5h
YmxlZE5vdGlmaWNhdGlvbjsKICNlbmRpZgogCiAjaWYgRU5BQkxFKEFDQ0VTU0lCSUxJVFlfRVZF
TlRTKQpJbmRleDogU291cmNlL1dlYktpdC9SZXNvdXJjZXMvU2FuZGJveFByb2ZpbGVzL2lvcy9j
b20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuc2IKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9SZXNvdXJjZXMvU2FuZGJveFByb2ZpbGVzL2lvcy9jb20uYXBwbGUuV2ViS2l0LldlYkNvbnRl
bnQuc2IJKHJldmlzaW9uIDI0MzAzMSkKKysrIFNvdXJjZS9XZWJLaXQvUmVzb3VyY2VzL1NhbmRi
b3hQcm9maWxlcy9pb3MvY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LnNiCSh3b3JraW5nIGNv
cHkpCkBAIC0xODgsNyArMTg4LDYgQEAKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNr
Ym9hcmQuaGlkLmZvY3VzIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5iYWNrYm9hcmQu
aGlkLnNlcnZpY2VzIikKICAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pb2hpZGV2ZW50c3lz
dGVtIikKLSAgICAoZ2xvYmFsLW5hbWUgImNvbS5hcHBsZS5pcGhvbmUuYXhzZXJ2ZXItc3lzdGVt
d2lkZSIpCiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuZnJvbnRib2FyZC53b3Jrc3BhY2Ui
KQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmZyb250Ym9hcmQuc3lzdGVtYXBwc2Vydmlj
ZXMiKSkKIApAQCAtNDUxLDYgKzQ1MCw4IEBACiAoZGVueSBtYWNoLWxvb2t1cCAod2l0aCBzZW5k
LXNpZ25hbCBTSUdLSUxMKQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmJhY2tib2FyZC5o
aWQuc2VydmljZXMiKSkKIAorKGFsbG93IG1hY2gtbG9va3VwIChleHRlbnNpb24gImNvbS5hcHBs
ZS53ZWJraXQuZXh0ZW5zaW9uLm1hY2giKSkKKwogOzsgVGhlc2Ugc2VydmljZXMgaGF2ZSBiZWVu
IGlkZW50aWZpZWQgYXMgdW51c2VkIGR1cmluZyBsaXZpbmctb24uCiA7OyBUaGlzIGxpc3Qgb3Zl
cnJpZGVzIHNvbWUgZGVmaW5pdGlvbnMgYWJvdmUgYW5kIGluIGNvbW1vbi5zYi4KIDs7IEZJWE1F
OiByZW1vdmUgb3ZlcnJpZGRlbiBydWxlcyBvbmNlIHRoZSBmaW5hbCBsaXN0IGhhcyBiZWVuCklu
ZGV4OiBTb3VyY2UvV2ViS2l0L1NoYXJlZC9TYW5kYm94RXh0ZW5zaW9uLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYktpdC9TaGFyZWQvU2FuZGJveEV4dGVuc2lvbi5oCShyZXZpc2lvbiAyNDMw
MzEpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9TYW5kYm94RXh0ZW5zaW9uLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTQ2LDYgKzQ2LDcgQEAgcHVibGljOgogICAgIGVudW0gY2xhc3MgVHlwZSB7CiAg
ICAgICAgIFJlYWRPbmx5LAogICAgICAgICBSZWFkV3JpdGUsCisgICAgICAgIE1hY2gsCiAgICAg
ICAgIEdlbmVyaWMsCiAgICAgfTsKIApAQCAtMTAxLDYgKzEwMiw3IEBAIHB1YmxpYzoKICAgICBz
dGF0aWMgYm9vbCBjcmVhdGVIYW5kbGVGb3JSZWFkV3JpdGVEaXJlY3RvcnkoY29uc3QgU3RyaW5n
JiBwYXRoLCBIYW5kbGUmKTsgLy8gV2lsbCBhdHRlbXB0IHRvIGNyZWF0ZSB0aGUgZGlyZWN0b3J5
LgogICAgIHN0YXRpYyBTdHJpbmcgY3JlYXRlSGFuZGxlRm9yVGVtcG9yYXJ5RmlsZShjb25zdCBT
dHJpbmcmIHByZWZpeCwgVHlwZSwgSGFuZGxlJik7CiAgICAgc3RhdGljIGJvb2wgY3JlYXRlSGFu
ZGxlRm9yR2VuZXJpY0V4dGVuc2lvbihjb25zdCBTdHJpbmcmIGV4dGVuc2lvbkNsYXNzLCBIYW5k
bGUmKTsKKyAgICBzdGF0aWMgYm9vbCBjcmVhdGVIYW5kbGVGb3JNYWNoTG9va3VwQnlQaWQoY29u
c3QgU3RyaW5nJiBzZXJ2aWNlLCBwaWRfdCwgSGFuZGxlJik7CiAgICAgflNhbmRib3hFeHRlbnNp
b24oKTsKIAogICAgIGJvb2wgY29uc3VtZSgpOwpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQv
bWFjL1NhbmRib3hFeHRlbnNpb25NYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9T
aGFyZWQvbWFjL1NhbmRib3hFeHRlbnNpb25NYWMubW0JKHJldmlzaW9uIDI0MzAzMSkKKysrIFNv
dXJjZS9XZWJLaXQvU2hhcmVkL21hYy9TYW5kYm94RXh0ZW5zaW9uTWFjLm1tCSh3b3JraW5nIGNv
cHkpCkBAIC00MCw5ICs0MCw5IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBTYW5kYm94
RXh0ZW5zaW9uSW1wbCB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxTYW5k
Ym94RXh0ZW5zaW9uSW1wbD4gY3JlYXRlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRib3hFeHRlbnNp
b246OlR5cGUgdHlwZSkKKyAgICBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPFNhbmRib3hFeHRlbnNp
b25JbXBsPiBjcmVhdGUoY29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0
eXBlLCBPcHRpb25hbDxwaWRfdD4gcGlkID0gV1RGOjpudWxsb3B0KQogICAgIHsKLSAgICAgICAg
c3RkOjp1bmlxdWVfcHRyPFNhbmRib3hFeHRlbnNpb25JbXBsPiBpbXBsIHsgbmV3IFNhbmRib3hF
eHRlbnNpb25JbXBsKHBhdGgsIHR5cGUpIH07CisgICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxTYW5k
Ym94RXh0ZW5zaW9uSW1wbD4gaW1wbCB7IG5ldyBTYW5kYm94RXh0ZW5zaW9uSW1wbChwYXRoLCB0
eXBlLCBwaWQpIH07CiAgICAgICAgIGlmICghaW1wbC0+bV90b2tlbikKICAgICAgICAgICAgIHJl
dHVybiBudWxscHRyOwogICAgICAgICByZXR1cm4gaW1wbDsKQEAgLTY0LDYgKzY0LDEwIEBAIHB1
YmxpYzoKICNpZiBQTEFURk9STShJT1NfRkFNSUxZX1NJTVVMQVRPUikKICAgICAgICAgcmV0dXJu
ICFzYW5kYm94X2NoZWNrKGdldHBpZCgpLCAwLCBTQU5EQk9YX0ZJTFRFUl9OT05FKTsKICNlbHNl
CisgICAgICAgIGlmIChtX2hhbmRsZSA9PSAtMSkgeworICAgICAgICAgICAgTE9HX0VSUk9SKCJD
b3VsZCBub3QgY3JlYXRlIGEgc2FuZGJveCBleHRlbnNpb24gZm9yICclcycsIGVycm5vID0gJWQi
LCBtX3Rva2VuLCBlcnJubyk7CisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIH0K
ICAgICAgICAgcmV0dXJuIG1faGFuZGxlOwogI2VuZGlmCiAgICAgfQpAQCAtODAsMjAgKzg0LDI4
IEBAIHB1YmxpYzoKICAgICB9CiAKIHByaXZhdGU6Ci0gICAgY2hhciogc2FuZGJveEV4dGVuc2lv
bkZvclR5cGUoY29uc3QgY2hhciogcGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZSB0eXBlKQor
ICAgIGNoYXIqIHNhbmRib3hFeHRlbnNpb25Gb3JUeXBlKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRi
b3hFeHRlbnNpb246OlR5cGUgdHlwZSwgT3B0aW9uYWw8cGlkX3Q+IHBpZCA9IFdURjo6bnVsbG9w
dCkKICAgICB7CiAgICAgICAgIHN3aXRjaCAodHlwZSkgewogICAgICAgICBjYXNlIFNhbmRib3hF
eHRlbnNpb246OlR5cGU6OlJlYWRPbmx5OgogICAgICAgICAgICAgcmV0dXJuIHNhbmRib3hfZXh0
ZW5zaW9uX2lzc3VlX2ZpbGUoQVBQX1NBTkRCT1hfUkVBRCwgcGF0aCwgMCk7CiAgICAgICAgIGNh
c2UgU2FuZGJveEV4dGVuc2lvbjo6VHlwZTo6UmVhZFdyaXRlOgogICAgICAgICAgICAgcmV0dXJu
IHNhbmRib3hfZXh0ZW5zaW9uX2lzc3VlX2ZpbGUoQVBQX1NBTkRCT1hfUkVBRF9XUklURSwgcGF0
aCwgMCk7CisgICAgICAgIGNhc2UgU2FuZGJveEV4dGVuc2lvbjo6VHlwZTo6TWFjaDoKKyNpZiBI
QVZFKFNBTkRCT1hfSVNTVUVfTUFDSF9FWFRFTlNJT05fVE9fUFJPQ0VTU19CWV9QSUQpCisgICAg
ICAgICAgICByZXR1cm4gc2FuZGJveF9leHRlbnNpb25faXNzdWVfbWFjaF90b19wcm9jZXNzX2J5
X3BpZCgiY29tLmFwcGxlLndlYmtpdC5leHRlbnNpb24ubWFjaCJfcywgcGF0aCwgMCwgcGlkLnZh
bHVlKCkpOworI2Vsc2UKKyAgICAgICAgICAgIFVOVVNFRF9QQVJBTShwaWQpOworICAgICAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyNl
bmRpZgogICAgICAgICBjYXNlIFNhbmRib3hFeHRlbnNpb246OlR5cGU6OkdlbmVyaWM6CiAgICAg
ICAgICAgICByZXR1cm4gc2FuZGJveF9leHRlbnNpb25faXNzdWVfZ2VuZXJpYyhwYXRoLCAwKTsK
ICAgICAgICAgfQogICAgIH0KIAotICAgIFNhbmRib3hFeHRlbnNpb25JbXBsKGNvbnN0IGNoYXIq
IHBhdGgsIFNhbmRib3hFeHRlbnNpb246OlR5cGUgdHlwZSkKLSAgICAgICAgOiBtX3Rva2VuIHsg
c2FuZGJveEV4dGVuc2lvbkZvclR5cGUocGF0aCwgdHlwZSkgfQorICAgIFNhbmRib3hFeHRlbnNp
b25JbXBsKGNvbnN0IGNoYXIqIHBhdGgsIFNhbmRib3hFeHRlbnNpb246OlR5cGUgdHlwZSwgT3B0
aW9uYWw8cGlkX3Q+IHBpZCA9IFdURjo6bnVsbG9wdCkKKyAgICAgICAgOiBtX3Rva2VuIHsgc2Fu
ZGJveEV4dGVuc2lvbkZvclR5cGUocGF0aCwgdHlwZSwgcGlkKSB9CiAgICAgewogICAgIH0KIApA
QCAtMzU3LDYgKzM2OSwxOSBAQCBib29sIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZv
ckdlCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK2Jvb2wgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRl
SGFuZGxlRm9yTWFjaExvb2t1cEJ5UGlkKGNvbnN0IFN0cmluZyYgc2VydmljZSwgcGlkX3QgcGlk
LCBIYW5kbGUmIGhhbmRsZSkKK3sKKyAgICBBU1NFUlQoIWhhbmRsZS5tX3NhbmRib3hFeHRlbnNp
b24pOworICAgIAorICAgIGhhbmRsZS5tX3NhbmRib3hFeHRlbnNpb24gPSBTYW5kYm94RXh0ZW5z
aW9uSW1wbDo6Y3JlYXRlKHNlcnZpY2UudXRmOCgpLmRhdGEoKSwgVHlwZTo6TWFjaCwgcGlkKTsK
KyAgICBpZiAoIWhhbmRsZS5tX3NhbmRib3hFeHRlbnNpb24pIHsKKyAgICAgICAgV1RGTG9nQWx3
YXlzKCJDb3VsZCBub3QgY3JlYXRlIGEgJyVzJyBzYW5kYm94IGV4dGVuc2lvbiIsIHNlcnZpY2Uu
dXRmOCgpLmRhdGEoKSk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgICAgCisgICAg
cmV0dXJuIHRydWU7Cit9CisKIFNhbmRib3hFeHRlbnNpb246OlNhbmRib3hFeHRlbnNpb24oY29u
c3QgSGFuZGxlJiBoYW5kbGUpCiAgICAgOiBtX3NhbmRib3hFeHRlbnNpb24oV1RGTW92ZShoYW5k
bGUubV9zYW5kYm94RXh0ZW5zaW9uKSkKIHsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlByb2Nlc3NQb29sLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Bvb2wuaAkocmV2aXNpb24gMjQzMDMxKQorKysgU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaAkod29ya2luZyBjb3B5KQpAQCAtNjczLDYgKzY3MywxMCBA
QCBwcml2YXRlOgogICAgIHN0ZDo6dW5pcXVlX3B0cjxQZXJBY3Rpdml0eVN0YXRlQ1BVVXNhZ2VT
YW1wbGVyPiBtX3BlckFjdGl2aXR5U3RhdGVDUFVVc2FnZVNhbXBsZXI7CiAjZW5kaWYKIAorI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgUmV0YWluUHRyPE5TT2JqZWN0PiBtX2FjY2Vzc2li
aWxpdHlFbmFibGVkT2JzZXJ2ZXI7CisjZW5kaWYKKwogICAgIGJvb2wgbV9zaG91bGRVc2VUZXN0
aW5nTmV0d29ya1Nlc3Npb24geyBmYWxzZSB9OwogCiAgICAgYm9vbCBtX3Byb2Nlc3NUZXJtaW5h
dGlvbkVuYWJsZWQgeyB0cnVlIH07CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
cm9jZXNzUHJveHkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlByb2Nlc3NQcm94eS5jcHAJKHJldmlzaW9uIDI0MzAzMSkKKysrIFNvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc1OSw2ICs3NTks
OCBAQCB2b2lkIFdlYlByb2Nlc3NQcm94eTo6ZGlkRmluaXNoTGF1bmNoaW5nCiAgICAgICAgIGlm
ICh4cGNfY29ubmVjdGlvbl90IHhwY0Nvbm5lY3Rpb24gPSBjb25uZWN0aW9uKCktPnhwY0Nvbm5l
Y3Rpb24oKSkKICAgICAgICAgICAgIG1fdGhyb3R0bGVyLmRpZENvbm5lY3RUb1Byb2Nlc3MoeHBj
X2Nvbm5lY3Rpb25fZ2V0X3BpZCh4cGNDb25uZWN0aW9uKSk7CiAgICAgfQorCisgICAgdW5ibG9j
a0FjY2Vzc2liaWxpdHlTZXJ2ZXJJZk5lZWRlZCgpOwogI2VuZGlmCiB9CiAKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oCShyZXZpc2lvbiAyNDMwMzEpCisr
KyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuaAkod29ya2luZyBjb3B5
KQpAQCAtMjkzLDYgKzI5MywxMCBAQCBwdWJsaWM6CiAgICAgdm9pZCByZXZva2VBdWRpb0NhcHR1
cmVFeHRlbnNpb24oKSB7IG1fbWVkaWFDYXB0dXJlU2FuZGJveEV4dGVuc2lvbnMgJj0gfkF1ZGlv
OyB9CiAjZW5kaWYKIAorI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgdm9pZCB1bmJsb2Nr
QWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKCk7CisjZW5kaWYKKwogcHJvdGVjdGVkOgogICAg
IHN0YXRpYyB1aW50NjRfdCBnZW5lcmF0ZVBhZ2VJRCgpOwogICAgIFdlYlByb2Nlc3NQcm94eShX
ZWJQcm9jZXNzUG9vbCYsIFdlYnNpdGVEYXRhU3RvcmUmLCBJc1ByZXdhcm1lZCk7CkBAIC00MzEs
NiArNDM1LDcgQEAgcHJpdmF0ZToKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEZvcmVn
cm91bmRXZWJQcm9jZXNzVG9rZW4gbV9mb3JlZ3JvdW5kVG9rZW47CiAgICAgQmFja2dyb3VuZFdl
YlByb2Nlc3NUb2tlbiBtX2JhY2tncm91bmRUb2tlbjsKKyAgICBib29sIG1faGFzU2VudE1lc3Nh
Z2VUb1VuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVyIHsgZmFsc2UgfTsKICNlbmRpZgogCiAgICAg
SGFzaE1hcDxTdHJpbmcsIHVpbnQ2NF90PiBtX3BhZ2VVUkxSZXRhaW5Db3VudE1hcDsKSW5kZXg6
IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xD
b2NvYS5tbQkocmV2aXNpb24gMjQzMDMxKQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29j
b2EvV2ViUHJvY2Vzc1Bvb2xDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAtMjYsNiArMjYsNyBA
QAogI2ltcG9ydCAiY29uZmlnLmgiCiAjaW1wb3J0ICJXZWJQcm9jZXNzUG9vbC5oIgogCisjaW1w
b3J0ICJBY2Nlc3NpYmlsaXR5U3VwcG9ydFNQSS5oIgogI2ltcG9ydCAiQ29va2llU3RvcmFnZVV0
aWxzQ0YuaCIKICNpbXBvcnQgIkxlZ2FjeUN1c3RvbVByb3RvY29sTWFuYWdlckNsaWVudC5oIgog
I2ltcG9ydCAiTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaCIKQEAgLTQ0Nyw2ICs0
NDgsMTAgQEAgdm9pZCBXZWJQcm9jZXNzUG9vbDo6cmVnaXN0ZXJOb3RpZmljYXRpbwogICAgIH1d
OwogI2VsaWYgUExBVEZPUk0oSU9TKQogICAgIENGTm90aWZpY2F0aW9uQ2VudGVyQWRkT2JzZXJ2
ZXIoQ0ZOb3RpZmljYXRpb25DZW50ZXJHZXREYXJ3aW5Ob3RpZnlDZW50ZXIoKSwgdGhpcywgYmFj
a2xpZ2h0TGV2ZWxEaWRDaGFuZ2VDYWxsYmFjaywgc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KFVJ
QmFja2xpZ2h0TGV2ZWxDaGFuZ2VkTm90aWZpY2F0aW9uKSwgbnVsbHB0ciwgQ0ZOb3RpZmljYXRp
b25TdXNwZW5zaW9uQmVoYXZpb3JDb2FsZXNjZSk7CisgICAgbV9hY2Nlc3NpYmlsaXR5RW5hYmxl
ZE9ic2VydmVyID0gW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNl
cnZlckZvck5hbWU6KF9fYnJpZGdlIGlkKWtBWFNBcHBsaWNhdGlvbkFjY2Vzc2liaWxpdHlFbmFi
bGVkTm90aWZpY2F0aW9uIG9iamVjdDpuaWwgcXVldWU6W05TT3BlcmF0aW9uUXVldWUgY3VycmVu
dFF1ZXVlXSB1c2luZ0Jsb2NrOl4oTlNOb3RpZmljYXRpb24gKikgeworICAgICAgICBmb3IgKHNp
emVfdCBpID0gMDsgaSA8IG1fcHJvY2Vzc2VzLnNpemUoKTsgKytpKQorICAgICAgICAgICAgbV9w
cm9jZXNzZXNbaV0tPnVuYmxvY2tBY2Nlc3NpYmlsaXR5U2VydmVySWZOZWVkZWQoKTsKKyAgICB9
XTsKICNlbmRpZiAvLyAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKIH0KIApAQCAtNDY2LDYgKzQ3MSw3
IEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnVucmVnaXN0ZXJOb3RpZmljYXQKICAgICBbW05TTm90
aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9ic2VydmVyOm1fZGVhY3RpdmF0
aW9uT2JzZXJ2ZXIuZ2V0KCldOwogI2VsaWYgUExBVEZPUk0oSU9TKQogICAgIENGTm90aWZpY2F0
aW9uQ2VudGVyUmVtb3ZlT2JzZXJ2ZXIoQ0ZOb3RpZmljYXRpb25DZW50ZXJHZXREYXJ3aW5Ob3Rp
ZnlDZW50ZXIoKSwgdGhpcywgc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KFVJQmFja2xpZ2h0TGV2
ZWxDaGFuZ2VkTm90aWZpY2F0aW9uKSAsIG51bGxwdHIpOworICAgIFtbTlNOb3RpZmljYXRpb25D
ZW50ZXIgZGVmYXVsdENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6bV9hY2Nlc3NpYmlsaXR5RW5hYmxl
ZE9ic2VydmVyLmdldCgpXTsKICNlbmRpZiAvLyAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKIH0KIApJ
bmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dlYlByb2Nlc3NQcm94eUlPUy5tbQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV2ViUHJvY2Vzc1Byb3h5
SU9TLm1tCShyZXZpc2lvbiAyNDMwMzEpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
V2ViUHJvY2Vzc1Byb3h5SU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw2ICsyOCw3IEBACiAK
ICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogCisjaW1wb3J0ICJBY2Nlc3NpYmlsaXR5U3VwcG9y
dFNQSS5oIgogI2ltcG9ydCAiV0tGdWxsS2V5Ym9hcmRBY2Nlc3NXYXRjaGVyLmgiCiAjaW1wb3J0
ICJXZWJQcm9jZXNzTWVzc2FnZXMuaCIKIApAQCAtNDIsNiArNDMsMjUgQEAgYm9vbCBXZWJQcm9j
ZXNzUHJveHk6OmZ1bGxLZXlib2FyZEFjY2VzcwogI2VuZGlmCiB9CiAKK3ZvaWQgV2ViUHJvY2Vz
c1Byb3h5Ojp1bmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcklmTmVlZGVkKCkKK3sKKyAgICBpZiAo
bV9oYXNTZW50TWVzc2FnZVRvVW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIpCisgICAgICAgIHJl
dHVybjsKKyAgICBpZiAoIV9BWFNBcHBsaWNhdGlvbkFjY2Vzc2liaWxpdHlFbmFibGVkKCkpCisg
ICAgICAgIHJldHVybjsKKyAgICBpZiAoIXByb2Nlc3NJZGVudGlmaWVyKCkpCisgICAgICAgIHJl
dHVybjsKKyAgICBpZiAoIWNhblNlbmRNZXNzYWdlKCkpCisgICAgICAgIHJldHVybjsKKworICAg
IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBoYW5kbGU7CisgICAgaWYgKCFTYW5kYm94RXh0ZW5z
aW9uOjpjcmVhdGVIYW5kbGVGb3JNYWNoTG9va3VwQnlQaWQoImNvbS5hcHBsZS5pcGhvbmUuYXhz
ZXJ2ZXItc3lzdGVtd2lkZSIsIHByb2Nlc3NJZGVudGlmaWVyKCksIGhhbmRsZSkpCisgICAgICAg
IHJldHVybjsKKworICAgIHNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3M6OlVuYmxvY2tBY2Nlc3Np
YmlsaXR5U2VydmVyKGhhbmRsZSksIDApOworICAgIG1faGFzU2VudE1lc3NhZ2VUb1VuYmxvY2tB
Y2Nlc3NpYmlsaXR5U2VydmVyID0gdHJ1ZTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAK
ICNlbmRpZiAvLyBQTEFURk9STShJT1NfRkFNSUxZKQpJbmRleDogU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlByb2Nlc3MuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQcm9jZXNzLmNwcAkocmV2aXNpb24gMjQzMDMxKQorKysgU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODY3LDQgKzE4Njcs
MTIgQEAgdm9pZCBXZWJQcm9jZXNzOjpjbGVhckN1cnJlbnRNb2RpZmllclN0YQogICAgIFBsYXRm
b3JtS2V5Ym9hcmRFdmVudDo6c2V0Q3VycmVudE1vZGlmaWVyU3RhdGUoeyB9KTsKIH0KIAorI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpCit2b2lkIFdlYlByb2Nlc3M6OnVuYmxvY2tBY2Nlc3NpYmls
aXR5U2VydmVyKGNvbnN0IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSYgaGFuZGxlKQoreworICAg
IGJvb2wgb2sgPSBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkoaGFuZGxlKTsK
KyAgICBBU1NFUlRfVU5VU0VEKG9rLCBvayk7Cit9CisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2Ug
V2ViS2l0CkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgJKHJldmlzaW9u
IDI0MzAzMSkKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgJKHdvcmtp
bmcgY29weSkKQEAgLTI0NSw2ICsyNDUsOCBAQCBwdWJsaWM6CiAKICNpZiBQTEFURk9STShJT1Nf
RkFNSUxZKQogICAgIHZvaWQgYWNjZXNzaWJpbGl0eVByb2Nlc3NTdXNwZW5kZWROb3RpZmljYXRp
b24oYm9vbCk7CisgICAgCisgICAgdm9pZCB1bmJsb2NrQWNjZXNzaWJpbGl0eVNlcnZlcihjb25z
dCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmKTsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9T
KQpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVzc2FnZXMuaW4K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVzc2Fn
ZXMuaW4JKHJldmlzaW9uIDI0MzAzMSkKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
cm9jZXNzLm1lc3NhZ2VzLmluCSh3b3JraW5nIGNvcHkpCkBAIC0xNTcsNCArMTU3LDggQEAgbWVz
c2FnZXMgLT4gV2ViUHJvY2VzcyBMZWdhY3lSZWNlaXZlciB7CiAjZW5kaWYKIAogICAgIENsZWFy
Q3VycmVudE1vZGlmaWVyU3RhdGVGb3JUZXN0aW5nKCkKKworI2lmIFBMQVRGT1JNKElPU19GQU1J
TFkpCisgICAgVW5ibG9ja0FjY2Vzc2liaWxpdHlTZXJ2ZXIoV2ViS2l0OjpTYW5kYm94RXh0ZW5z
aW9uOjpIYW5kbGUgaGFuZGxlKQorI2VuZGlmCiB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>