<?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>183045</bug_id>
          
          <creation_ts>2018-02-22 10:38:49 -0800</creation_ts>
          <short_desc>Expose still more WKPreferences SPI to match C SPI</short_desc>
          <delta_ts>2018-03-05 15:20:51 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit API</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="Jeff Miller">jeffm</reporter>
          <assigned_to name="Jeff Miller">jeffm</assigned_to>
          <cc>achristensen</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jeffm</cc>
    
    <cc>jer.noble</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1401457</commentid>
    <comment_count>0</comment_count>
    <who name="Jeff Miller">jeffm</who>
    <bug_when>2018-02-22 10:38:49 -0800</bug_when>
    <thetext>Add the following properties to the WKPreferences SPI:

_allowsInlineMediaPlayback
_applePayEnabled
_avFoundationNSURLSessionEnabled
_dnsPrefetchingEnabled
_inlineMediaPlaybackRequiresPlaysInlineAttribute
_invisibleMediaAutoplayNotPermitted
_legacyEncryptedMediaAPIEnabled
_lowPowerVideoAudioBufferSizeEnabled
_mainContentUserGestureOverrideEnabled
_mediaStreamEnabled
_needsStorageAccessFromFileURLsQuirk
_pdfPluginEnabled
_requiresUserActionForAudioPlayback
_requiresUserActionForVideoPlayback
_serviceControlsEnabled
_showsToolTipOverTruncatedText
_textAreasAreResizable
_useGiantTiles
_wantsBalancedSetDefersLoadingBehavior
_webAudioEnabled

Some of these are exposed by the WKPreferencesRef C SPI, but some (like _lowPowerVideoAudioBufferSizeEnabled) are not and are being implicitly set by values in Safari&apos;s Defaults.plist. When using WKWebView, this will no longer work since WebKit won&apos;t read preferences from Safari&apos;s defaults, so they need to be exposed via WKPreferences.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401479</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-02-22 11:26:54 -0800</bug_when>
    <thetext>&lt;rdar://problem/37795169&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401592</commentid>
    <comment_count>2</comment_count>
    <who name="Jeff Miller">jeffm</who>
    <bug_when>2018-02-22 16:29:45 -0800</bug_when>
    <thetext>Correction, change _requiresUserActionForAudioPlayback to _requiresUserGestureForAudioPlayback and _requiresUserActionForVideoPlayback to _requiresUserGestureForVideoPlayback.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401603</commentid>
    <comment_count>3</comment_count>
      <attachid>334486</attachid>
    <who name="Jeff Miller">jeffm</who>
    <bug_when>2018-02-22 16:58:21 -0800</bug_when>
    <thetext>Created attachment 334486
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401734</commentid>
    <comment_count>4</comment_count>
      <attachid>334486</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-02-23 09:32:43 -0800</bug_when>
    <thetext>Comment on attachment 334486
Patch

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

&gt; Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm:1091
&gt; +    WebCore::DeprecatedGlobalSettings::setLowPowerVideoAudioBufferSizeEnabled(enabled);

This is probably setting a bool in the wrong process.

&gt; Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h:166
&gt; +@property (nonatomic, setter=_setAVFoundationNSURLSessionEnabled:) BOOL _avFoundationNSURLSessionEnabled WK_API_AVAILABLE(macosx(WK_MAC_TBA));

This should always be enabled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401738</commentid>
    <comment_count>5</comment_count>
    <who name="Jeff Miller">jeffm</who>
    <bug_when>2018-02-23 09:36:43 -0800</bug_when>
    <thetext>(In reply to Alex Christensen from comment #4)
&gt; Comment on attachment 334486 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=334486&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm:1091
&gt; &gt; +    WebCore::DeprecatedGlobalSettings::setLowPowerVideoAudioBufferSizeEnabled(enabled);
&gt; 
&gt; This is probably setting a bool in the wrong process.

Good point. I don&apos;t think we can easily change this from the UI process. I&apos;ll remove this and talk to Jer about what he wants to do, e.g. maybe this deprecated setting should default to true anyway.

&gt; 
&gt; &gt; Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h:166
&gt; &gt; +@property (nonatomic, setter=_setAVFoundationNSURLSessionEnabled:) BOOL _avFoundationNSURLSessionEnabled WK_API_AVAILABLE(macosx(WK_MAC_TBA));
&gt; 
&gt; This should always be enabled.

OK, I&apos;ll remove this as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401746</commentid>
    <comment_count>6</comment_count>
      <attachid>334537</attachid>
    <who name="Jeff Miller">jeffm</who>
    <bug_when>2018-02-23 10:09:31 -0800</bug_when>
    <thetext>Created attachment 334537
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1403725</commentid>
    <comment_count>7</comment_count>
      <attachid>334537</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-03-05 13:38:32 -0800</bug_when>
    <thetext>Comment on attachment 334537
Patch

Rejecting attachment 334537 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-01&apos;, &apos;land-attachment&apos;, &apos;--force-clean&apos;, &apos;--non-interactive&apos;, &apos;--parent-command=commit-queue&apos;, 334537, &apos;--port=mac&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
rdparty/autoinstalled/mechanize/_urllib2_fork.py&quot;, line 332, in _call_chain
    result = func(*args)
  File &quot;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkitpy/thirdparty/autoinstalled/mechanize/_urllib2_fork.py&quot;, line 1170, in https_open
    return self.do_open(conn_factory, req)
  File &quot;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkitpy/thirdparty/autoinstalled/mechanize/_urllib2_fork.py&quot;, line 1118, in do_open
    raise URLError(err)
urllib2.URLError: &lt;urlopen error [Errno 60] Operation timed out&gt;

Full output: http://webkit-queues.webkit.org/results/6816090</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1403756</commentid>
    <comment_count>8</comment_count>
    <who name="Jeff Miller">jeffm</who>
    <bug_when>2018-03-05 15:20:51 -0800</bug_when>
    <thetext>Committed &lt;https://trac.webkit.org/changeset/229294/webkit&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>334486</attachid>
            <date>2018-02-22 16:58:21 -0800</date>
            <delta_ts>2018-02-23 10:09:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-183045-20180222165821.patch</filename>
            <type>text/plain</type>
            <size>13611</size>
            <attacher name="Jeff Miller">jeffm</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4OTM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDg1NTQ1ZDAzMzczZTkz
YjMwOWFmYzY1NDYzNmY0NGYxOGE3ODNmNy4uMTI4MDZhZTUzNDVkZmQxNTM1ODEzY2FmZTMyZjdj
NDg2ZmFlMWE3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDE4LTAyLTIyICBKZWZm
IE1pbGxlciAgPGplZmZtQGFwcGxlLmNvbT4KKworICAgICAgICBFeHBvc2Ugc3RpbGwgbW9yZSBX
S1ByZWZlcmVuY2VzIFNQSSB0byBtYXRjaCBDIFNQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgzMDQ1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwYWdlL0RlcHJlY2F0ZWRHbG9iYWxTZXR0aW5ncy5o
OgorICAgICAgICBFeHBvcnQgZ0xvd1Bvd2VyVmlkZW9BdWRpb0J1ZmZlclNpemVFbmFibGVkIHNv
IGl0IGNhbiBiZSB1c2VkIGZyb20gV2ViS2l0LgorCiAyMDE4LTAyLTIyICBaYWxhbiBCdWp0YXMg
IDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW1JlbmRlclRyZWVCdWlsZGVyXSBSZW5hbWUg
aW5zZXJ0Q2hpbGQoKSAtPiBhdHRhY2goKSwgdGFrZUNoaWxkKCkgLT4gZGV0YWNoKCkgYW5kIHJl
bW92ZUFuZERlc3Ryb3koKSAtPiBkZXN0cm95KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZTM1MTcwZWJkYWY1OWM1
MWU4ZGVmNWMwYzlkM2UzMTYwOWVkOTViMS4uZGY1MDg0NzlhMGRiNzEyYjdjMmU4MzM3ODdhOTAy
ZTdlOTIwOWNhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSw1NyBAQAorMjAxOC0wMi0yMiAgSmVmZiBN
aWxsZXIgIDxqZWZmbUBhcHBsZS5jb20+CisKKyAgICAgICAgRXhwb3NlIHN0aWxsIG1vcmUgV0tQ
cmVmZXJlbmNlcyBTUEkgdG8gbWF0Y2ggQyBTUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MzA0NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEV4cG9zZSBhZGRpdGlvbmFsIHNldHRpbmdzIGluIFdlYlBy
ZWZlcmVuY2VzLiBJIGFsc28gZXhwb3NlZCBsb3dQb3dlclZpZGVvQXVkaW9CdWZmZXJTaXplRW5h
YmxlZAorICAgICAgICBmcm9tIFdlYkNvcmU6OkRlcHJlY2F0ZWRHbG9iYWxTZXR0aW5ncyBzaW5j
ZSBKZXIgTm9ibGUgc2F5cyBpdCdzIHN0aWxsIGltcG9ydGFudCB0aGF0IFNhZmFyaSBzZXQKKyAg
ICAgICAgdGhpcyB0byB0cnVlLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1By
ZWZlcmVuY2VzLm1tOgorICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9zZXRBbGxvd3NJbmxpbmVN
ZWRpYVBsYXliYWNrOl0pOgorICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9hbGxvd3NJbmxpbmVN
ZWRpYVBsYXliYWNrXSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX3NldEFwcGxlUGF5RW5h
YmxlZDpdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfYXBwbGVQYXlFbmFibGVkXSk6Cisg
ICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX3NldEFWRm91bmRhdGlvbk5TVVJMU2Vzc2lvbkVuYWJs
ZWQ6XSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX2F2Rm91bmRhdGlvbk5TVVJMU2Vzc2lv
bkVuYWJsZWRdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2V0RE5TUHJlZmV0Y2hpbmdF
bmFibGVkOl0pOgorICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9kbnNQcmVmZXRjaGluZ0VuYWJs
ZWRdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2V0SW5saW5lTWVkaWFQbGF5YmFja1Jl
cXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGU6XSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5jZXMg
X2lubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlXSk6CisgICAg
ICAgICgtW1dLUHJlZmVyZW5jZXMgX3NldEludmlzaWJsZU1lZGlhQXV0b3BsYXlOb3RQZXJtaXR0
ZWQ6XSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX2ludmlzaWJsZU1lZGlhQXV0b3BsYXlO
b3RQZXJtaXR0ZWRdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2V0TGVnYWN5RW5jcnlw
dGVkTWVkaWFBUElFbmFibGVkOl0pOgorICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9sZWdhY3lF
bmNyeXB0ZWRNZWRpYUFQSUVuYWJsZWRdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2V0
TG93UG93ZXJWaWRlb0F1ZGlvQnVmZmVyU2l6ZUVuYWJsZWQ6XSk6CisgICAgICAgICgtW1dLUHJl
ZmVyZW5jZXMgX2xvd1Bvd2VyVmlkZW9BdWRpb0J1ZmZlclNpemVFbmFibGVkXSk6CisgICAgICAg
ICgtW1dLUHJlZmVyZW5jZXMgX3NldE1haW5Db250ZW50VXNlckdlc3R1cmVPdmVycmlkZUVuYWJs
ZWQ6XSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX21haW5Db250ZW50VXNlckdlc3R1cmVP
dmVycmlkZUVuYWJsZWRdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2V0TWVkaWFTdHJl
YW1FbmFibGVkOl0pOgorICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9tZWRpYVN0cmVhbUVuYWJs
ZWRdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2V0TmVlZHNTdG9yYWdlQWNjZXNzRnJv
bUZpbGVVUkxzUXVpcms6XSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX25lZWRzU3RvcmFn
ZUFjY2Vzc0Zyb21GaWxlVVJMc1F1aXJrXSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX3Nl
dFBERlBsdWdpbkVuYWJsZWQ6XSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX3BkZlBsdWdp
bkVuYWJsZWRdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2V0UmVxdWlyZXNVc2VyR2Vz
dHVyZUZvckF1ZGlvUGxheWJhY2s6XSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX3JlcXVp
cmVzVXNlckdlc3R1cmVGb3JBdWRpb1BsYXliYWNrXSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5j
ZXMgX3NldFJlcXVpcmVzVXNlckdlc3R1cmVGb3JWaWRlb1BsYXliYWNrOl0pOgorICAgICAgICAo
LVtXS1ByZWZlcmVuY2VzIF9yZXF1aXJlc1VzZXJHZXN0dXJlRm9yVmlkZW9QbGF5YmFja10pOgor
ICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9zZXRTZXJ2aWNlQ29udHJvbHNFbmFibGVkOl0pOgor
ICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9zZXJ2aWNlQ29udHJvbHNFbmFibGVkXSk6CisgICAg
ICAgICgtW1dLUHJlZmVyZW5jZXMgX3NldFNob3dzVG9vbFRpcE92ZXJUcnVuY2F0ZWRUZXh0Ol0p
OgorICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9zaG93c1Rvb2xUaXBPdmVyVHJ1bmNhdGVkVGV4
dF0pOgorICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9zZXRUZXh0QXJlYXNBcmVSZXNpemFibGU6
XSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX3RleHRBcmVhc0FyZVJlc2l6YWJsZV0pOgor
ICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9zZXRVc2VHaWFudFRpbGVzOl0pOgorICAgICAgICAo
LVtXS1ByZWZlcmVuY2VzIF91c2VHaWFudFRpbGVzXSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5j
ZXMgX3NldFdhbnRzQmFsYW5jZWRTZXREZWZlcnNMb2FkaW5nQmVoYXZpb3I6XSk6CisgICAgICAg
ICgtW1dLUHJlZmVyZW5jZXMgX3dhbnRzQmFsYW5jZWRTZXREZWZlcnNMb2FkaW5nQmVoYXZpb3Jd
KToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2V0V2ViQXVkaW9FbmFibGVkOl0pOgorICAg
ICAgICAoLVtXS1ByZWZlcmVuY2VzIF93ZWJBdWRpb0VuYWJsZWRdKToKKyAgICAgICAgKiBVSVBy
b2Nlc3MvQVBJL0NvY29hL1dLUHJlZmVyZW5jZXNQcml2YXRlLmg6CisKIDIwMTgtMDItMjIgIE1h
dHQgQmFrZXIgIDxtYXR0YmFrZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6
IFJFR1JFU1NJT04gKHIyMjgzNDkpOiBJbWFnZUJpdG1hcCBidWlsdGluIGlzIG5vdyBydW50aW1l
IGd1YXJkZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRGVwcmVjYXRlZEdsb2Jh
bFNldHRpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RlcHJlY2F0ZWRHbG9iYWxTZXR0aW5n
cy5oCmluZGV4IGVjNTU4YWJkMGE4MzU0MjUzYjA4MWI2MDk5Njg4NjgyNjFkZjI0ZDkuLjU3OWU5
MDFlNDFmNzllZmQ2MjM3MWE2Zjc1NjFjYjNkMTEwNWU1NmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRGVwcmVjYXRlZEdsb2JhbFNldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9EZXByZWNhdGVkR2xvYmFsU2V0dGluZ3MuaApAQCAtMTQzLDcgKzE0Myw3IEBAIHBy
aXZhdGU6CiAgICAgc3RhdGljIGJvb2wgZ01lZGlhQ2FwdHVyZVJlcXVpcmVzU2VjdXJlQ29ubmVj
dGlvbjsKICNlbmRpZgogCi0gICAgc3RhdGljIGJvb2wgZ0xvd1Bvd2VyVmlkZW9BdWRpb0J1ZmZl
clNpemVFbmFibGVkOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBib29sIGdMb3dQb3dlclZp
ZGVvQXVkaW9CdWZmZXJTaXplRW5hYmxlZDsKICAgICBzdGF0aWMgYm9vbCBnUmVzb3VyY2VMb2Fk
U3RhdGlzdGljc0VuYWJsZWRFbmFibGVkOwogICAgIHN0YXRpYyBib29sIGdBbGxvd3NBbnlTU0xD
ZXJ0aWZpY2F0ZTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
Q29jb2EvV0tQcmVmZXJlbmNlcy5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9XS1ByZWZlcmVuY2VzLm1tCmluZGV4IDc0NTU2OGUyMmJjYzEyZTU4Mjc4ODgwNzFmNjZiNTNj
M2Q4MjBmMGQuLjZhNmFhMzNlMGU0NjlhNWY0YTAwZjNjYzIwZTRhODY0MjE1NDJjOGMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1ByZWZlcmVuY2VzLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1ByZWZlcmVuY2VzLm1t
CkBAIC0zNyw2ICszNywxMCBAQAogI2ltcG9ydCA8V2ViQ29yZS9TZXR0aW5ncy5oPgogI2ltcG9y
dCA8d3RmL1JldGFpblB0ci5oPgogCisjaWYgUExBVEZPUk0oTUFDKQorI2ltcG9ydCA8V2ViQ29y
ZS9EZXByZWNhdGVkR2xvYmFsU2V0dGluZ3MuaD4KKyNlbmRpZgorCiBAaW1wbGVtZW50YXRpb24g
V0tQcmVmZXJlbmNlcwogCiAtIChpbnN0YW5jZXR5cGUpaW5pdApAQCAtMTAxMSw2ICsxMDE1LDIw
NyBAQCAtIChCT09MKV93ZWJHTEVuYWJsZWQKIHsKICAgICByZXR1cm4gX3ByZWZlcmVuY2VzLT53
ZWJHTEVuYWJsZWQoKTsKIH0KKworLSAodm9pZClfc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFj
azooQk9PTCllbmFibGVkCit7CisgICAgX3ByZWZlcmVuY2VzLT5zZXRBbGxvd3NJbmxpbmVNZWRp
YVBsYXliYWNrKGVuYWJsZWQpOworfQorCistIChCT09MKV9hbGxvd3NJbmxpbmVNZWRpYVBsYXli
YWNrCit7CisgICAgcmV0dXJuIF9wcmVmZXJlbmNlcy0+YWxsb3dzSW5saW5lTWVkaWFQbGF5YmFj
aygpOworfQorCistICh2b2lkKV9zZXRBcHBsZVBheUVuYWJsZWQ6KEJPT0wpZW5hYmxlZAorewor
ICAgIF9wcmVmZXJlbmNlcy0+c2V0QXBwbGVQYXlFbmFibGVkKGVuYWJsZWQpOworfQorCistIChC
T09MKV9hcHBsZVBheUVuYWJsZWQKK3sKKyAgICByZXR1cm4gX3ByZWZlcmVuY2VzLT5hcHBsZVBh
eUVuYWJsZWQoKTsKK30KKworLSAodm9pZClfc2V0QVZGb3VuZGF0aW9uTlNVUkxTZXNzaW9uRW5h
YmxlZDooQk9PTCllbmFibGVkCit7CisgICAgX3ByZWZlcmVuY2VzLT5zZXRBVkZvdW5kYXRpb25O
U1VSTFNlc3Npb25FbmFibGVkKGVuYWJsZWQpOworfQorCistIChCT09MKV9hdkZvdW5kYXRpb25O
U1VSTFNlc3Npb25FbmFibGVkCit7CisgICAgcmV0dXJuIF9wcmVmZXJlbmNlcy0+aXNBVkZvdW5k
YXRpb25OU1VSTFNlc3Npb25FbmFibGVkKCk7Cit9CisKKy0gKHZvaWQpX3NldEROU1ByZWZldGNo
aW5nRW5hYmxlZDooQk9PTCllbmFibGVkCit7CisgICAgX3ByZWZlcmVuY2VzLT5zZXRETlNQcmVm
ZXRjaGluZ0VuYWJsZWQoZW5hYmxlZCk7Cit9CisKKy0gKEJPT0wpX2Ruc1ByZWZldGNoaW5nRW5h
YmxlZAoreworICAgIHJldHVybiBfcHJlZmVyZW5jZXMtPmRuc1ByZWZldGNoaW5nRW5hYmxlZCgp
OworfQorCistICh2b2lkKV9zZXRJbmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGlu
ZUF0dHJpYnV0ZTooQk9PTCllbmFibGVkCit7CisgICAgX3ByZWZlcmVuY2VzLT5zZXRJbmxpbmVN
ZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZShlbmFibGVkKTsKK30KKwor
LSAoQk9PTClfaW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUK
K3sKKyAgICByZXR1cm4gX3ByZWZlcmVuY2VzLT5pbmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQ
bGF5c0lubGluZUF0dHJpYnV0ZSgpOworfQorCistICh2b2lkKV9zZXRJbnZpc2libGVNZWRpYUF1
dG9wbGF5Tm90UGVybWl0dGVkOihCT09MKWVuYWJsZWQKK3sKKyAgICBfcHJlZmVyZW5jZXMtPnNl
dEludmlzaWJsZUF1dG9wbGF5Tm90UGVybWl0dGVkKGVuYWJsZWQpOworfQorCistIChCT09MKV9p
bnZpc2libGVNZWRpYUF1dG9wbGF5Tm90UGVybWl0dGVkCit7CisgICAgcmV0dXJuIF9wcmVmZXJl
bmNlcy0+aW52aXNpYmxlQXV0b3BsYXlOb3RQZXJtaXR0ZWQoKTsKK30KKworLSAodm9pZClfc2V0
TGVnYWN5RW5jcnlwdGVkTWVkaWFBUElFbmFibGVkOihCT09MKWVuYWJsZWQKK3sKKyAgICBfcHJl
ZmVyZW5jZXMtPnNldExlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZChlbmFibGVkKTsKK30K
KworLSAoQk9PTClfbGVnYWN5RW5jcnlwdGVkTWVkaWFBUElFbmFibGVkCit7CisgICAgcmV0dXJu
IF9wcmVmZXJlbmNlcy0+bGVnYWN5RW5jcnlwdGVkTWVkaWFBUElFbmFibGVkKCk7Cit9CisKKy0g
KHZvaWQpX3NldExvd1Bvd2VyVmlkZW9BdWRpb0J1ZmZlclNpemVFbmFibGVkOihCT09MKWVuYWJs
ZWQKK3sKKyAgICBXZWJDb3JlOjpEZXByZWNhdGVkR2xvYmFsU2V0dGluZ3M6OnNldExvd1Bvd2Vy
VmlkZW9BdWRpb0J1ZmZlclNpemVFbmFibGVkKGVuYWJsZWQpOworfQorCistIChCT09MKV9sb3dQ
b3dlclZpZGVvQXVkaW9CdWZmZXJTaXplRW5hYmxlZAoreworICAgIHJldHVybiBXZWJDb3JlOjpE
ZXByZWNhdGVkR2xvYmFsU2V0dGluZ3M6Omxvd1Bvd2VyVmlkZW9BdWRpb0J1ZmZlclNpemVFbmFi
bGVkKCk7Cit9CisKKy0gKHZvaWQpX3NldE1haW5Db250ZW50VXNlckdlc3R1cmVPdmVycmlkZUVu
YWJsZWQ6KEJPT0wpZW5hYmxlZAoreworICAgIF9wcmVmZXJlbmNlcy0+c2V0TWFpbkNvbnRlbnRV
c2VyR2VzdHVyZU92ZXJyaWRlRW5hYmxlZChlbmFibGVkKTsKK30KKworLSAoQk9PTClfbWFpbkNv
bnRlbnRVc2VyR2VzdHVyZU92ZXJyaWRlRW5hYmxlZAoreworICAgIHJldHVybiBfcHJlZmVyZW5j
ZXMtPm1haW5Db250ZW50VXNlckdlc3R1cmVPdmVycmlkZUVuYWJsZWQoKTsKK30KKworLSAodm9p
ZClfc2V0TWVkaWFTdHJlYW1FbmFibGVkOihCT09MKWVuYWJsZWQKK3sKKyAgICBfcHJlZmVyZW5j
ZXMtPnNldE1lZGlhU3RyZWFtRW5hYmxlZChlbmFibGVkKTsKK30KKworLSAoQk9PTClfbWVkaWFT
dHJlYW1FbmFibGVkCit7CisgICAgcmV0dXJuIF9wcmVmZXJlbmNlcy0+bWVkaWFTdHJlYW1FbmFi
bGVkKCk7Cit9CisKKy0gKHZvaWQpX3NldE5lZWRzU3RvcmFnZUFjY2Vzc0Zyb21GaWxlVVJMc1F1
aXJrOihCT09MKWVuYWJsZWQKK3sKKyAgICBfcHJlZmVyZW5jZXMtPnNldE5lZWRzU3RvcmFnZUFj
Y2Vzc0Zyb21GaWxlVVJMc1F1aXJrKGVuYWJsZWQpOworfQorCistIChCT09MKV9uZWVkc1N0b3Jh
Z2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWlyaworeworICAgIHJldHVybiBfcHJlZmVyZW5jZXMtPm5l
ZWRzU3RvcmFnZUFjY2Vzc0Zyb21GaWxlVVJMc1F1aXJrKCk7Cit9CisKKy0gKHZvaWQpX3NldFBE
RlBsdWdpbkVuYWJsZWQ6KEJPT0wpZW5hYmxlZAoreworICAgIF9wcmVmZXJlbmNlcy0+c2V0UERG
UGx1Z2luRW5hYmxlZChlbmFibGVkKTsKK30KKworLSAoQk9PTClfcGRmUGx1Z2luRW5hYmxlZAor
eworICAgIHJldHVybiBfcHJlZmVyZW5jZXMtPnBkZlBsdWdpbkVuYWJsZWQoKTsKK30KKworLSAo
dm9pZClfc2V0UmVxdWlyZXNVc2VyR2VzdHVyZUZvckF1ZGlvUGxheWJhY2s6KEJPT0wpZW5hYmxl
ZAoreworICAgIF9wcmVmZXJlbmNlcy0+c2V0UmVxdWlyZXNVc2VyR2VzdHVyZUZvckF1ZGlvUGxh
eWJhY2soZW5hYmxlZCk7Cit9CisKKy0gKEJPT0wpX3JlcXVpcmVzVXNlckdlc3R1cmVGb3JBdWRp
b1BsYXliYWNrCit7CisgICAgcmV0dXJuIF9wcmVmZXJlbmNlcy0+cmVxdWlyZXNVc2VyR2VzdHVy
ZUZvckF1ZGlvUGxheWJhY2soKTsKK30KKworLSAodm9pZClfc2V0UmVxdWlyZXNVc2VyR2VzdHVy
ZUZvclZpZGVvUGxheWJhY2s6KEJPT0wpZW5hYmxlZAoreworICAgIF9wcmVmZXJlbmNlcy0+c2V0
UmVxdWlyZXNVc2VyR2VzdHVyZUZvclZpZGVvUGxheWJhY2soZW5hYmxlZCk7Cit9CisKKy0gKEJP
T0wpX3JlcXVpcmVzVXNlckdlc3R1cmVGb3JWaWRlb1BsYXliYWNrCit7CisgICAgcmV0dXJuIF9w
cmVmZXJlbmNlcy0+cmVxdWlyZXNVc2VyR2VzdHVyZUZvclZpZGVvUGxheWJhY2soKTsKK30KKwor
LSAodm9pZClfc2V0U2VydmljZUNvbnRyb2xzRW5hYmxlZDooQk9PTCllbmFibGVkCit7CisgICAg
X3ByZWZlcmVuY2VzLT5zZXRTZXJ2aWNlQ29udHJvbHNFbmFibGVkKGVuYWJsZWQpOworfQorCist
IChCT09MKV9zZXJ2aWNlQ29udHJvbHNFbmFibGVkCit7CisgICAgcmV0dXJuIF9wcmVmZXJlbmNl
cy0+c2VydmljZUNvbnRyb2xzRW5hYmxlZCgpOworfQorCistICh2b2lkKV9zZXRTaG93c1Rvb2xU
aXBPdmVyVHJ1bmNhdGVkVGV4dDooQk9PTCllbmFibGVkCit7CisgICAgX3ByZWZlcmVuY2VzLT5z
ZXRTaG93c1Rvb2xUaXBPdmVyVHJ1bmNhdGVkVGV4dChlbmFibGVkKTsKK30KKworLSAoQk9PTClf
c2hvd3NUb29sVGlwT3ZlclRydW5jYXRlZFRleHQKK3sKKyAgICByZXR1cm4gX3ByZWZlcmVuY2Vz
LT5zaG93c1Rvb2xUaXBPdmVyVHJ1bmNhdGVkVGV4dCgpOworfQorCistICh2b2lkKV9zZXRUZXh0
QXJlYXNBcmVSZXNpemFibGU6KEJPT0wpZW5hYmxlZAoreworICAgIF9wcmVmZXJlbmNlcy0+c2V0
VGV4dEFyZWFzQXJlUmVzaXphYmxlKGVuYWJsZWQpOworfQorCistIChCT09MKV90ZXh0QXJlYXNB
cmVSZXNpemFibGUKK3sKKyAgICByZXR1cm4gX3ByZWZlcmVuY2VzLT50ZXh0QXJlYXNBcmVSZXNp
emFibGUoKTsKK30KKworLSAodm9pZClfc2V0VXNlR2lhbnRUaWxlczooQk9PTCllbmFibGVkCit7
CisgICAgX3ByZWZlcmVuY2VzLT5zZXRVc2VHaWFudFRpbGVzKGVuYWJsZWQpOworfQorCistIChC
T09MKV91c2VHaWFudFRpbGVzCit7CisgICAgcmV0dXJuIF9wcmVmZXJlbmNlcy0+dXNlR2lhbnRU
aWxlcygpOworfQorCistICh2b2lkKV9zZXRXYW50c0JhbGFuY2VkU2V0RGVmZXJzTG9hZGluZ0Jl
aGF2aW9yOihCT09MKWVuYWJsZWQKK3sKKyAgICBfcHJlZmVyZW5jZXMtPnNldFdhbnRzQmFsYW5j
ZWRTZXREZWZlcnNMb2FkaW5nQmVoYXZpb3IoZW5hYmxlZCk7Cit9CisKKy0gKEJPT0wpX3dhbnRz
QmFsYW5jZWRTZXREZWZlcnNMb2FkaW5nQmVoYXZpb3IKK3sKKyAgICByZXR1cm4gX3ByZWZlcmVu
Y2VzLT53YW50c0JhbGFuY2VkU2V0RGVmZXJzTG9hZGluZ0JlaGF2aW9yKCk7Cit9CisKKy0gKHZv
aWQpX3NldFdlYkF1ZGlvRW5hYmxlZDooQk9PTCllbmFibGVkCit7CisgICAgX3ByZWZlcmVuY2Vz
LT5zZXRXZWJBdWRpb0VuYWJsZWQoZW5hYmxlZCk7Cit9CisKKy0gKEJPT0wpX3dlYkF1ZGlvRW5h
YmxlZAoreworICAgIHJldHVybiBfcHJlZmVyZW5jZXMtPndlYkF1ZGlvRW5hYmxlZCgpOworfQor
CiAjZW5kaWYgLy8gUExBVEZPUk0oTUFDKQogCiAtIChCT09MKV9qYXZhU2NyaXB0Q2FuQWNjZXNz
Q2xpcGJvYXJkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tQcmVmZXJlbmNlc1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oCmluZGV4IDcyMzAzYjNjNWRmZTA4YTkzYzQyOGI2ZDU4
OWRiYmI0Nzg4MWUwODIuLjhmMWI1YWNjN2Q1YzVhZDRlMTViYTM5MjgxNmU3ZGE3MzQ4M2RhZGIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1ByZWZlcmVu
Y2VzUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1By
ZWZlcmVuY2VzUHJpdmF0ZS5oCkBAIC0xNjEsNiArMTYxLDI2IEBAIHR5cGVkZWYgTlNfRU5VTShO
U0ludGVnZXIsIF9XS0VkaXRhYmxlTGlua0JlaGF2aW9yKSB7CiBAcHJvcGVydHkgKG5vbmF0b21p
Yywgc2V0dGVyPV9zZXRTdGFuZGFyZEZvbnRGYW1pbHk6KSBOU1N0cmluZyAqX3N0YW5kYXJkRm9u
dEZhbWlseSBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CiBAcHJvcGVydHkg
KG5vbmF0b21pYywgc2V0dGVyPV9zZXROb3RpZmljYXRpb25zRW5hYmxlZDopIEJPT0wgX25vdGlm
aWNhdGlvbnNFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKIEBw
cm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEJhY2tzcGFjZUtleU5hdmlnYXRpb25FbmFi
bGVkOikgQk9PTCBfYmFja3NwYWNlS2V5TmF2aWdhdGlvbkVuYWJsZWQgV0tfQVBJX0FWQUlMQUJM
RShtYWNvc3goV0tfTUFDX1RCQSkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0
QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFjazopIEJPT0wgX2FsbG93c0lubGluZU1lZGlhUGxheWJh
Y2sgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOworQHByb3BlcnR5IChub25h
dG9taWMsIHNldHRlcj1fc2V0QXBwbGVQYXlFbmFibGVkOikgQk9PTCBfYXBwbGVQYXlFbmFibGVk
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRv
bWljLCBzZXR0ZXI9X3NldEFWRm91bmRhdGlvbk5TVVJMU2Vzc2lvbkVuYWJsZWQ6KSBCT09MIF9h
dkZvdW5kYXRpb25OU1VSTFNlc3Npb25FbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdL
X01BQ19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEROU1ByZWZldGNo
aW5nRW5hYmxlZDopIEJPT0wgX2Ruc1ByZWZldGNoaW5nRW5hYmxlZCBXS19BUElfQVZBSUxBQkxF
KG1hY29zeChXS19NQUNfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRJ
bmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZTopIEJPT0wgX2lu
bGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlIFdLX0FQSV9BVkFJ
TEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9
X3NldEludmlzaWJsZU1lZGlhQXV0b3BsYXlOb3RQZXJtaXR0ZWQ6KSBCT09MIF9pbnZpc2libGVN
ZWRpYUF1dG9wbGF5Tm90UGVybWl0dGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19U
QkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldExlZ2FjeUVuY3J5cHRlZE1l
ZGlhQVBJRW5hYmxlZDopIEJPT0wgX2xlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZCBXS19B
UElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywg
c2V0dGVyPV9zZXRMb3dQb3dlclZpZGVvQXVkaW9CdWZmZXJTaXplRW5hYmxlZDopIEJPT0wgX2xv
d1Bvd2VyVmlkZW9BdWRpb0J1ZmZlclNpemVFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4
KFdLX01BQ19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldE1haW5Db250
ZW50VXNlckdlc3R1cmVPdmVycmlkZUVuYWJsZWQ6KSBCT09MIF9tYWluQ29udGVudFVzZXJHZXN0
dXJlT3ZlcnJpZGVFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsK
K0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldE1lZGlhU3RyZWFtRW5hYmxlZDopIEJP
T0wgX21lZGlhU3RyZWFtRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJB
KSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXROZWVkc1N0b3JhZ2VBY2Nlc3NG
cm9tRmlsZVVSTHNRdWlyazopIEJPT0wgX25lZWRzU3RvcmFnZUFjY2Vzc0Zyb21GaWxlVVJMc1F1
aXJrIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9u
YXRvbWljLCBzZXR0ZXI9X3NldFBERlBsdWdpbkVuYWJsZWQ6KSBCT09MIF9wZGZQbHVnaW5FbmFi
bGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9u
YXRvbWljLCBzZXR0ZXI9X3NldFJlcXVpcmVzVXNlckdlc3R1cmVGb3JBdWRpb1BsYXliYWNrOikg
Qk9PTCBfcmVxdWlyZXNVc2VyR2VzdHVyZUZvckF1ZGlvUGxheWJhY2sgV0tfQVBJX0FWQUlMQUJM
RShtYWNvc3goV0tfTUFDX1RCQSkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0
UmVxdWlyZXNVc2VyR2VzdHVyZUZvclZpZGVvUGxheWJhY2s6KSBCT09MIF9yZXF1aXJlc1VzZXJH
ZXN0dXJlRm9yVmlkZW9QbGF5YmFjayBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJB
KSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRTZXJ2aWNlQ29udHJvbHNFbmFi
bGVkOikgQk9PTCBfc2VydmljZUNvbnRyb2xzRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29z
eChXS19NQUNfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRTaG93c1Rv
b2xUaXBPdmVyVHJ1bmNhdGVkVGV4dDopIEJPT0wgX3Nob3dzVG9vbFRpcE92ZXJUcnVuY2F0ZWRU
ZXh0IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9u
YXRvbWljLCBzZXR0ZXI9X3NldFRleHRBcmVhc0FyZVJlc2l6YWJsZTopIEJPT0wgX3RleHRBcmVh
c0FyZVJlc2l6YWJsZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CitAcHJv
cGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRVc2VHaWFudFRpbGVzOikgQk9PTCBfdXNlR2lh
bnRUaWxlcyBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CitAcHJvcGVydHkg
KG5vbmF0b21pYywgc2V0dGVyPV9zZXRXYW50c0JhbGFuY2VkU2V0RGVmZXJzTG9hZGluZ0JlaGF2
aW9yOikgQk9PTCBfd2FudHNCYWxhbmNlZFNldERlZmVyc0xvYWRpbmdCZWhhdmlvciBXS19BUElf
QVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0
dGVyPV9zZXRXZWJBdWRpb0VuYWJsZWQ6KSBCT09MIF93ZWJBdWRpb0VuYWJsZWQgV0tfQVBJX0FW
QUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOwogI2VuZGlmCiAKIEBlbmQK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>334537</attachid>
            <date>2018-02-23 10:09:31 -0800</date>
            <delta_ts>2018-03-05 13:38:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-183045-20180223100930.patch</filename>
            <type>text/plain</type>
            <size>10694</size>
            <attacher name="Jeff Miller">jeffm</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4OTQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDU5OTAwOTU0NzhmMTI5Yzdm
ZDNmZGZmNTlhMjZkNjk1MmQ5MjVkYmUuLjI4YjBmMTc1NGQyMWIwNDNmNDNhMWNjMmI5NmQzOTdk
OTdjNGM3NjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDkgQEAKKzIwMTgtMDItMjMgIEplZmYgTWls
bGVyICA8amVmZm1AYXBwbGUuY29tPgorCisgICAgICAgIEV4cG9zZSBzdGlsbCBtb3JlIFdLUHJl
ZmVyZW5jZXMgU1BJIHRvIG1hdGNoIEMgU1BJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODMwNDUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tQcmVmZXJlbmNlcy5t
bToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFj
azpdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFj
a10pOgorICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9zZXRBcHBsZVBheUVuYWJsZWQ6XSk6Cisg
ICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX2FwcGxlUGF5RW5hYmxlZF0pOgorICAgICAgICAoLVtX
S1ByZWZlcmVuY2VzIF9zZXRETlNQcmVmZXRjaGluZ0VuYWJsZWQ6XSk6CisgICAgICAgICgtW1dL
UHJlZmVyZW5jZXMgX2Ruc1ByZWZldGNoaW5nRW5hYmxlZF0pOgorICAgICAgICAoLVtXS1ByZWZl
cmVuY2VzIF9zZXRJbmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0
ZTpdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfaW5saW5lTWVkaWFQbGF5YmFja1JlcXVp
cmVzUGxheXNJbmxpbmVBdHRyaWJ1dGVdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2V0
SW52aXNpYmxlTWVkaWFBdXRvcGxheU5vdFBlcm1pdHRlZDpdKToKKyAgICAgICAgKC1bV0tQcmVm
ZXJlbmNlcyBfaW52aXNpYmxlTWVkaWFBdXRvcGxheU5vdFBlcm1pdHRlZF0pOgorICAgICAgICAo
LVtXS1ByZWZlcmVuY2VzIF9zZXRMZWdhY3lFbmNyeXB0ZWRNZWRpYUFQSUVuYWJsZWQ6XSk6Cisg
ICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX2xlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZF0p
OgorICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9zZXRNYWluQ29udGVudFVzZXJHZXN0dXJlT3Zl
cnJpZGVFbmFibGVkOl0pOgorICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9tYWluQ29udGVudFVz
ZXJHZXN0dXJlT3ZlcnJpZGVFbmFibGVkXSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX3Nl
dE1lZGlhU3RyZWFtRW5hYmxlZDpdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfbWVkaWFT
dHJlYW1FbmFibGVkXSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX3NldE5lZWRzU3RvcmFn
ZUFjY2Vzc0Zyb21GaWxlVVJMc1F1aXJrOl0pOgorICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9u
ZWVkc1N0b3JhZ2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWlya10pOgorICAgICAgICAoLVtXS1ByZWZl
cmVuY2VzIF9zZXRQREZQbHVnaW5FbmFibGVkOl0pOgorICAgICAgICAoLVtXS1ByZWZlcmVuY2Vz
IF9wZGZQbHVnaW5FbmFibGVkXSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX3NldFJlcXVp
cmVzVXNlckdlc3R1cmVGb3JBdWRpb1BsYXliYWNrOl0pOgorICAgICAgICAoLVtXS1ByZWZlcmVu
Y2VzIF9yZXF1aXJlc1VzZXJHZXN0dXJlRm9yQXVkaW9QbGF5YmFja10pOgorICAgICAgICAoLVtX
S1ByZWZlcmVuY2VzIF9zZXRSZXF1aXJlc1VzZXJHZXN0dXJlRm9yVmlkZW9QbGF5YmFjazpdKToK
KyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfcmVxdWlyZXNVc2VyR2VzdHVyZUZvclZpZGVvUGxh
eWJhY2tdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2V0U2VydmljZUNvbnRyb2xzRW5h
YmxlZDpdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2VydmljZUNvbnRyb2xzRW5hYmxl
ZF0pOgorICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF9zZXRTaG93c1Rvb2xUaXBPdmVyVHJ1bmNh
dGVkVGV4dDpdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2hvd3NUb29sVGlwT3ZlclRy
dW5jYXRlZFRleHRdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2V0VGV4dEFyZWFzQXJl
UmVzaXphYmxlOl0pOgorICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF90ZXh0QXJlYXNBcmVSZXNp
emFibGVdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfc2V0VXNlR2lhbnRUaWxlczpdKToK
KyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfdXNlR2lhbnRUaWxlc10pOgorICAgICAgICAoLVtX
S1ByZWZlcmVuY2VzIF9zZXRXYW50c0JhbGFuY2VkU2V0RGVmZXJzTG9hZGluZ0JlaGF2aW9yOl0p
OgorICAgICAgICAoLVtXS1ByZWZlcmVuY2VzIF93YW50c0JhbGFuY2VkU2V0RGVmZXJzTG9hZGlu
Z0JlaGF2aW9yXSk6CisgICAgICAgICgtW1dLUHJlZmVyZW5jZXMgX3NldFdlYkF1ZGlvRW5hYmxl
ZDpdKToKKyAgICAgICAgKC1bV0tQcmVmZXJlbmNlcyBfd2ViQXVkaW9FbmFibGVkXSk6CisgICAg
ICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oOgorCiAyMDE4
LTAyLTIzICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAg
ICAgICBbR1N0cmVhbWVyXVtNaW5pQnJvd3Nlcl0gSG9ub3IgR1N0cmVhbWVyIGNvbW1hbmQgbGlu
ZSBwYXJhbWV0ZXJzIGluIE1pbmlCcm93c2VyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvV0tQcmVmZXJlbmNlcy5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9XS1ByZWZlcmVuY2VzLm1tCmluZGV4IDc0NTU2OGUyMmJjYzEyZTU4Mjc4
ODgwNzFmNjZiNTNjM2Q4MjBmMGQuLjUxZjVhZTkxMjQxMWNkMjRmYWZhNTk0YzYzZTk1OTM2OWRj
MjJmNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1By
ZWZlcmVuY2VzLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1By
ZWZlcmVuY2VzLm1tCkBAIC0xMDExLDYgKzEwMTEsMTg3IEBAIC0gKEJPT0wpX3dlYkdMRW5hYmxl
ZAogewogICAgIHJldHVybiBfcHJlZmVyZW5jZXMtPndlYkdMRW5hYmxlZCgpOwogfQorCistICh2
b2lkKV9zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrOihCT09MKWVuYWJsZWQKK3sKKyAgICBf
cHJlZmVyZW5jZXMtPnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2soZW5hYmxlZCk7Cit9CisK
Ky0gKEJPT0wpX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2sKK3sKKyAgICByZXR1cm4gX3ByZWZl
cmVuY2VzLT5hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrKCk7Cit9CisKKy0gKHZvaWQpX3NldEFw
cGxlUGF5RW5hYmxlZDooQk9PTCllbmFibGVkCit7CisgICAgX3ByZWZlcmVuY2VzLT5zZXRBcHBs
ZVBheUVuYWJsZWQoZW5hYmxlZCk7Cit9CisKKy0gKEJPT0wpX2FwcGxlUGF5RW5hYmxlZAorewor
ICAgIHJldHVybiBfcHJlZmVyZW5jZXMtPmFwcGxlUGF5RW5hYmxlZCgpOworfQorCistICh2b2lk
KV9zZXRETlNQcmVmZXRjaGluZ0VuYWJsZWQ6KEJPT0wpZW5hYmxlZAoreworICAgIF9wcmVmZXJl
bmNlcy0+c2V0RE5TUHJlZmV0Y2hpbmdFbmFibGVkKGVuYWJsZWQpOworfQorCistIChCT09MKV9k
bnNQcmVmZXRjaGluZ0VuYWJsZWQKK3sKKyAgICByZXR1cm4gX3ByZWZlcmVuY2VzLT5kbnNQcmVm
ZXRjaGluZ0VuYWJsZWQoKTsKK30KKworLSAodm9pZClfc2V0SW5saW5lTWVkaWFQbGF5YmFja1Jl
cXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGU6KEJPT0wpZW5hYmxlZAoreworICAgIF9wcmVmZXJl
bmNlcy0+c2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUo
ZW5hYmxlZCk7Cit9CisKKy0gKEJPT0wpX2lubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlz
SW5saW5lQXR0cmlidXRlCit7CisgICAgcmV0dXJuIF9wcmVmZXJlbmNlcy0+aW5saW5lTWVkaWFQ
bGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUoKTsKK30KKworLSAodm9pZClfc2V0
SW52aXNpYmxlTWVkaWFBdXRvcGxheU5vdFBlcm1pdHRlZDooQk9PTCllbmFibGVkCit7CisgICAg
X3ByZWZlcmVuY2VzLT5zZXRJbnZpc2libGVBdXRvcGxheU5vdFBlcm1pdHRlZChlbmFibGVkKTsK
K30KKworLSAoQk9PTClfaW52aXNpYmxlTWVkaWFBdXRvcGxheU5vdFBlcm1pdHRlZAoreworICAg
IHJldHVybiBfcHJlZmVyZW5jZXMtPmludmlzaWJsZUF1dG9wbGF5Tm90UGVybWl0dGVkKCk7Cit9
CisKKy0gKHZvaWQpX3NldExlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZDooQk9PTCllbmFi
bGVkCit7CisgICAgX3ByZWZlcmVuY2VzLT5zZXRMZWdhY3lFbmNyeXB0ZWRNZWRpYUFQSUVuYWJs
ZWQoZW5hYmxlZCk7Cit9CisKKy0gKEJPT0wpX2xlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJRW5hYmxl
ZAoreworICAgIHJldHVybiBfcHJlZmVyZW5jZXMtPmxlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJRW5h
YmxlZCgpOworfQorCistICh2b2lkKV9zZXRNYWluQ29udGVudFVzZXJHZXN0dXJlT3ZlcnJpZGVF
bmFibGVkOihCT09MKWVuYWJsZWQKK3sKKyAgICBfcHJlZmVyZW5jZXMtPnNldE1haW5Db250ZW50
VXNlckdlc3R1cmVPdmVycmlkZUVuYWJsZWQoZW5hYmxlZCk7Cit9CisKKy0gKEJPT0wpX21haW5D
b250ZW50VXNlckdlc3R1cmVPdmVycmlkZUVuYWJsZWQKK3sKKyAgICByZXR1cm4gX3ByZWZlcmVu
Y2VzLT5tYWluQ29udGVudFVzZXJHZXN0dXJlT3ZlcnJpZGVFbmFibGVkKCk7Cit9CisKKy0gKHZv
aWQpX3NldE1lZGlhU3RyZWFtRW5hYmxlZDooQk9PTCllbmFibGVkCit7CisgICAgX3ByZWZlcmVu
Y2VzLT5zZXRNZWRpYVN0cmVhbUVuYWJsZWQoZW5hYmxlZCk7Cit9CisKKy0gKEJPT0wpX21lZGlh
U3RyZWFtRW5hYmxlZAoreworICAgIHJldHVybiBfcHJlZmVyZW5jZXMtPm1lZGlhU3RyZWFtRW5h
YmxlZCgpOworfQorCistICh2b2lkKV9zZXROZWVkc1N0b3JhZ2VBY2Nlc3NGcm9tRmlsZVVSTHNR
dWlyazooQk9PTCllbmFibGVkCit7CisgICAgX3ByZWZlcmVuY2VzLT5zZXROZWVkc1N0b3JhZ2VB
Y2Nlc3NGcm9tRmlsZVVSTHNRdWlyayhlbmFibGVkKTsKK30KKworLSAoQk9PTClfbmVlZHNTdG9y
YWdlQWNjZXNzRnJvbUZpbGVVUkxzUXVpcmsKK3sKKyAgICByZXR1cm4gX3ByZWZlcmVuY2VzLT5u
ZWVkc1N0b3JhZ2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWlyaygpOworfQorCistICh2b2lkKV9zZXRQ
REZQbHVnaW5FbmFibGVkOihCT09MKWVuYWJsZWQKK3sKKyAgICBfcHJlZmVyZW5jZXMtPnNldFBE
RlBsdWdpbkVuYWJsZWQoZW5hYmxlZCk7Cit9CisKKy0gKEJPT0wpX3BkZlBsdWdpbkVuYWJsZWQK
K3sKKyAgICByZXR1cm4gX3ByZWZlcmVuY2VzLT5wZGZQbHVnaW5FbmFibGVkKCk7Cit9CisKKy0g
KHZvaWQpX3NldFJlcXVpcmVzVXNlckdlc3R1cmVGb3JBdWRpb1BsYXliYWNrOihCT09MKWVuYWJs
ZWQKK3sKKyAgICBfcHJlZmVyZW5jZXMtPnNldFJlcXVpcmVzVXNlckdlc3R1cmVGb3JBdWRpb1Bs
YXliYWNrKGVuYWJsZWQpOworfQorCistIChCT09MKV9yZXF1aXJlc1VzZXJHZXN0dXJlRm9yQXVk
aW9QbGF5YmFjaworeworICAgIHJldHVybiBfcHJlZmVyZW5jZXMtPnJlcXVpcmVzVXNlckdlc3R1
cmVGb3JBdWRpb1BsYXliYWNrKCk7Cit9CisKKy0gKHZvaWQpX3NldFJlcXVpcmVzVXNlckdlc3R1
cmVGb3JWaWRlb1BsYXliYWNrOihCT09MKWVuYWJsZWQKK3sKKyAgICBfcHJlZmVyZW5jZXMtPnNl
dFJlcXVpcmVzVXNlckdlc3R1cmVGb3JWaWRlb1BsYXliYWNrKGVuYWJsZWQpOworfQorCistIChC
T09MKV9yZXF1aXJlc1VzZXJHZXN0dXJlRm9yVmlkZW9QbGF5YmFjaworeworICAgIHJldHVybiBf
cHJlZmVyZW5jZXMtPnJlcXVpcmVzVXNlckdlc3R1cmVGb3JWaWRlb1BsYXliYWNrKCk7Cit9CisK
Ky0gKHZvaWQpX3NldFNlcnZpY2VDb250cm9sc0VuYWJsZWQ6KEJPT0wpZW5hYmxlZAoreworICAg
IF9wcmVmZXJlbmNlcy0+c2V0U2VydmljZUNvbnRyb2xzRW5hYmxlZChlbmFibGVkKTsKK30KKwor
LSAoQk9PTClfc2VydmljZUNvbnRyb2xzRW5hYmxlZAoreworICAgIHJldHVybiBfcHJlZmVyZW5j
ZXMtPnNlcnZpY2VDb250cm9sc0VuYWJsZWQoKTsKK30KKworLSAodm9pZClfc2V0U2hvd3NUb29s
VGlwT3ZlclRydW5jYXRlZFRleHQ6KEJPT0wpZW5hYmxlZAoreworICAgIF9wcmVmZXJlbmNlcy0+
c2V0U2hvd3NUb29sVGlwT3ZlclRydW5jYXRlZFRleHQoZW5hYmxlZCk7Cit9CisKKy0gKEJPT0wp
X3Nob3dzVG9vbFRpcE92ZXJUcnVuY2F0ZWRUZXh0Cit7CisgICAgcmV0dXJuIF9wcmVmZXJlbmNl
cy0+c2hvd3NUb29sVGlwT3ZlclRydW5jYXRlZFRleHQoKTsKK30KKworLSAodm9pZClfc2V0VGV4
dEFyZWFzQXJlUmVzaXphYmxlOihCT09MKWVuYWJsZWQKK3sKKyAgICBfcHJlZmVyZW5jZXMtPnNl
dFRleHRBcmVhc0FyZVJlc2l6YWJsZShlbmFibGVkKTsKK30KKworLSAoQk9PTClfdGV4dEFyZWFz
QXJlUmVzaXphYmxlCit7CisgICAgcmV0dXJuIF9wcmVmZXJlbmNlcy0+dGV4dEFyZWFzQXJlUmVz
aXphYmxlKCk7Cit9CisKKy0gKHZvaWQpX3NldFVzZUdpYW50VGlsZXM6KEJPT0wpZW5hYmxlZAor
eworICAgIF9wcmVmZXJlbmNlcy0+c2V0VXNlR2lhbnRUaWxlcyhlbmFibGVkKTsKK30KKworLSAo
Qk9PTClfdXNlR2lhbnRUaWxlcworeworICAgIHJldHVybiBfcHJlZmVyZW5jZXMtPnVzZUdpYW50
VGlsZXMoKTsKK30KKworLSAodm9pZClfc2V0V2FudHNCYWxhbmNlZFNldERlZmVyc0xvYWRpbmdC
ZWhhdmlvcjooQk9PTCllbmFibGVkCit7CisgICAgX3ByZWZlcmVuY2VzLT5zZXRXYW50c0JhbGFu
Y2VkU2V0RGVmZXJzTG9hZGluZ0JlaGF2aW9yKGVuYWJsZWQpOworfQorCistIChCT09MKV93YW50
c0JhbGFuY2VkU2V0RGVmZXJzTG9hZGluZ0JlaGF2aW9yCit7CisgICAgcmV0dXJuIF9wcmVmZXJl
bmNlcy0+d2FudHNCYWxhbmNlZFNldERlZmVyc0xvYWRpbmdCZWhhdmlvcigpOworfQorCistICh2
b2lkKV9zZXRXZWJBdWRpb0VuYWJsZWQ6KEJPT0wpZW5hYmxlZAoreworICAgIF9wcmVmZXJlbmNl
cy0+c2V0V2ViQXVkaW9FbmFibGVkKGVuYWJsZWQpOworfQorCistIChCT09MKV93ZWJBdWRpb0Vu
YWJsZWQKK3sKKyAgICByZXR1cm4gX3ByZWZlcmVuY2VzLT53ZWJBdWRpb0VuYWJsZWQoKTsKK30K
KwogI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykKIAogLSAoQk9PTClfamF2YVNjcmlwdENhbkFjY2Vz
c0NsaXBib2FyZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29h
L1dLUHJlZmVyZW5jZXNQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29j
b2EvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaAppbmRleCA3MjMwM2IzYzVkZmUwOGE5M2M0MjhiNmQ1
ODlkYmJiNDc4ODFlMDgyLi4yOWI3NjY5NzdhMzE1Mzk3MGYzMWZlNDY4M2ZhYzI0YTllOGU1Yjc3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tQcmVmZXJl
bmNlc1ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tQ
cmVmZXJlbmNlc1ByaXZhdGUuaApAQCAtMTYxLDYgKzE2MSwyNCBAQCB0eXBlZGVmIE5TX0VOVU0o
TlNJbnRlZ2VyLCBfV0tFZGl0YWJsZUxpbmtCZWhhdmlvcikgewogQHByb3BlcnR5IChub25hdG9t
aWMsIHNldHRlcj1fc2V0U3RhbmRhcmRGb250RmFtaWx5OikgTlNTdHJpbmcgKl9zdGFuZGFyZEZv
bnRGYW1pbHkgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOwogQHByb3BlcnR5
IChub25hdG9taWMsIHNldHRlcj1fc2V0Tm90aWZpY2F0aW9uc0VuYWJsZWQ6KSBCT09MIF9ub3Rp
ZmljYXRpb25zRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CiBA
cHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRCYWNrc3BhY2VLZXlOYXZpZ2F0aW9uRW5h
YmxlZDopIEJPT0wgX2JhY2tzcGFjZUtleU5hdmlnYXRpb25FbmFibGVkIFdLX0FQSV9BVkFJTEFC
TEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3Nl
dEFsbG93c0lubGluZU1lZGlhUGxheWJhY2s6KSBCT09MIF9hbGxvd3NJbmxpbmVNZWRpYVBsYXli
YWNrIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9u
YXRvbWljLCBzZXR0ZXI9X3NldEFwcGxlUGF5RW5hYmxlZDopIEJPT0wgX2FwcGxlUGF5RW5hYmxl
ZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0
b21pYywgc2V0dGVyPV9zZXRETlNQcmVmZXRjaGluZ0VuYWJsZWQ6KSBCT09MIF9kbnNQcmVmZXRj
aGluZ0VuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOworQHByb3Bl
cnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxh
eXNJbmxpbmVBdHRyaWJ1dGU6KSBCT09MIF9pbmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5
c0lubGluZUF0dHJpYnV0ZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CitA
cHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRJbnZpc2libGVNZWRpYUF1dG9wbGF5Tm90
UGVybWl0dGVkOikgQk9PTCBfaW52aXNpYmxlTWVkaWFBdXRvcGxheU5vdFBlcm1pdHRlZCBXS19B
UElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywg
c2V0dGVyPV9zZXRMZWdhY3lFbmNyeXB0ZWRNZWRpYUFQSUVuYWJsZWQ6KSBCT09MIF9sZWdhY3lF
bmNyeXB0ZWRNZWRpYUFQSUVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RC
QSkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0TWFpbkNvbnRlbnRVc2VyR2Vz
dHVyZU92ZXJyaWRlRW5hYmxlZDopIEJPT0wgX21haW5Db250ZW50VXNlckdlc3R1cmVPdmVycmlk
ZUVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOworQHByb3BlcnR5
IChub25hdG9taWMsIHNldHRlcj1fc2V0TWVkaWFTdHJlYW1FbmFibGVkOikgQk9PTCBfbWVkaWFT
dHJlYW1FbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9w
ZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldE5lZWRzU3RvcmFnZUFjY2Vzc0Zyb21GaWxlVVJM
c1F1aXJrOikgQk9PTCBfbmVlZHNTdG9yYWdlQWNjZXNzRnJvbUZpbGVVUkxzUXVpcmsgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNl
dHRlcj1fc2V0UERGUGx1Z2luRW5hYmxlZDopIEJPT0wgX3BkZlBsdWdpbkVuYWJsZWQgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNl
dHRlcj1fc2V0UmVxdWlyZXNVc2VyR2VzdHVyZUZvckF1ZGlvUGxheWJhY2s6KSBCT09MIF9yZXF1
aXJlc1VzZXJHZXN0dXJlRm9yQXVkaW9QbGF5YmFjayBXS19BUElfQVZBSUxBQkxFKG1hY29zeChX
S19NQUNfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRSZXF1aXJlc1Vz
ZXJHZXN0dXJlRm9yVmlkZW9QbGF5YmFjazopIEJPT0wgX3JlcXVpcmVzVXNlckdlc3R1cmVGb3JW
aWRlb1BsYXliYWNrIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9w
ZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFNlcnZpY2VDb250cm9sc0VuYWJsZWQ6KSBCT09M
IF9zZXJ2aWNlQ29udHJvbHNFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19U
QkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFNob3dzVG9vbFRpcE92ZXJU
cnVuY2F0ZWRUZXh0OikgQk9PTCBfc2hvd3NUb29sVGlwT3ZlclRydW5jYXRlZFRleHQgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNl
dHRlcj1fc2V0VGV4dEFyZWFzQXJlUmVzaXphYmxlOikgQk9PTCBfdGV4dEFyZWFzQXJlUmVzaXph
YmxlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9u
YXRvbWljLCBzZXR0ZXI9X3NldFVzZUdpYW50VGlsZXM6KSBCT09MIF91c2VHaWFudFRpbGVzIFdL
X0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWlj
LCBzZXR0ZXI9X3NldFdhbnRzQmFsYW5jZWRTZXREZWZlcnNMb2FkaW5nQmVoYXZpb3I6KSBCT09M
IF93YW50c0JhbGFuY2VkU2V0RGVmZXJzTG9hZGluZ0JlaGF2aW9yIFdLX0FQSV9BVkFJTEFCTEUo
bWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFdl
YkF1ZGlvRW5hYmxlZDopIEJPT0wgX3dlYkF1ZGlvRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1h
Y29zeChXS19NQUNfVEJBKSk7CiAjZW5kaWYKIAogQGVuZAo=
</data>
<flag name="review"
          id="353292"
          type_id="1"
          status="+"
          setter="achristensen"
    />
    <flag name="commit-queue"
          id="353721"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
      

    </bug>

</bugzilla>