<?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>207917</bug_id>
          
          <creation_ts>2020-02-18 15:14:11 -0800</creation_ts>
          <short_desc>Re-disable top-level data URL navigations</short_desc>
          <delta_ts>2020-02-19 10:36: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 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>
          <dependson>207719</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brent Fulgham">bfulgham</reporter>
          <assigned_to name="Brent Fulgham">bfulgham</assigned_to>
          <cc>annulen</cc>
    
    <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>japhet</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1620366</commentid>
    <comment_count>0</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-02-18 15:14:11 -0800</bug_when>
    <thetext>Calls to WKPage and WKWebView API used to load data and strings directly should be recognized by the loading code as being from client API calls. This brings these API behaviors into alignment with similar API for loading URLs and URLRequests directly. This change also allows us to enforce stricter handling of Data URLs, and to remove the need to explicitly permit top-level data URL navigation when client APIs are used.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620367</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-02-18 15:15:12 -0800</bug_when>
    <thetext>&lt;rdar://problem/59568037&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620372</commentid>
    <comment_count>2</comment_count>
      <attachid>391103</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-02-18 15:22:19 -0800</bug_when>
    <thetext>Created attachment 391103
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620376</commentid>
    <comment_count>3</comment_count>
      <attachid>391103</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-02-18 15:25:49 -0800</bug_when>
    <thetext>Comment on attachment 391103
Patch

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

&gt; Source/WebKit/UIProcess/ProvisionalPageProxy.cpp:156
&gt; +    m_page.loadDataWithNavigationShared(m_process.copyRef(), m_webPageID, navigation, data, MIMEType, encoding, baseURL, userData, WebCore::ShouldTreatAsContinuingLoad::Yes, WebCore::ShouldTreatAsClientOrUserInput::No, WTFMove(websitePolicies), navigation.lastNavigationAction().shouldOpenExternalURLsPolicy);

@Youenn, @Chris: Should we ever treat ProvisionalPageProxy loads as if they were generated from client API? It doesn&apos;t look like we do for normal load requests, so I don&apos;t think we would for data loads, either.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620385</commentid>
    <comment_count>4</comment_count>
      <attachid>391108</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-02-18 15:29:27 -0800</bug_when>
    <thetext>Created attachment 391108
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620394</commentid>
    <comment_count>5</comment_count>
      <attachid>391108</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-02-18 15:36:20 -0800</bug_when>
    <thetext>Comment on attachment 391108
Patch

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

&gt; Source/WebKit/UIProcess/WebPageProxy.cpp:1385
&gt; +void WebPageProxy::loadDataWithNavigationShared(Ref&lt;WebProcessProxy&gt;&amp;&amp; process, WebCore::PageIdentifier webPageID, API::Navigation&amp; navigation, const IPC::DataReference&amp; data, const String&amp; MIMEType, const String&amp; encoding, const String&amp; baseURL, API::Object* userData, ShouldTreatAsContinuingLoad shouldTreatAsContinuingLoad, ShouldTreatAsClientOrUserInput shouldTreatAsClientOrUserInput, Optional&lt;WebsitePoliciesData&gt;&amp;&amp; websitePolicies, ShouldOpenExternalURLsPolicy shouldOpenExternalURLsPolicy)

This is always called from API so it seems odd to take a ShouldTreatAsClientOrUserInput parameter. When is it ever ShouldTreatAsClientOrUserInput::No?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620401</commentid>
    <comment_count>6</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-02-18 15:49:02 -0800</bug_when>
    <thetext>Note: We allowed top-level navigations to Data URLs in r255961. We can go back to our previous state with this change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620408</commentid>
    <comment_count>7</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-02-18 15:56:30 -0800</bug_when>
    <thetext>(In reply to Chris Dumez from comment #5)
&gt; Comment on attachment 391108 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=391108&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/UIProcess/WebPageProxy.cpp:1385
&gt; &gt; +void WebPageProxy::loadDataWithNavigationShared(Ref&lt;WebProcessProxy&gt;&amp;&amp; process, WebCore::PageIdentifier webPageID, API::Navigation&amp; navigation, const IPC::DataReference&amp; data, const String&amp; MIMEType, const String&amp; encoding, const String&amp; baseURL, API::Object* userData, ShouldTreatAsContinuingLoad shouldTreatAsContinuingLoad, ShouldTreatAsClientOrUserInput shouldTreatAsClientOrUserInput, Optional&lt;WebsitePoliciesData&gt;&amp;&amp; websitePolicies, ShouldOpenExternalURLsPolicy shouldOpenExternalURLsPolicy)
&gt; 
&gt; This is always called from API so it seems odd to take a
&gt; ShouldTreatAsClientOrUserInput parameter. When is it ever
&gt; ShouldTreatAsClientOrUserInput::No?

Excellent -- this can be a much simpler change, then.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620412</commentid>
    <comment_count>8</comment_count>
      <attachid>391113</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-02-18 16:01:25 -0800</bug_when>
    <thetext>Created attachment 391113
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620466</commentid>
    <comment_count>9</comment_count>
      <attachid>391125</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-02-18 18:51:44 -0800</bug_when>
    <thetext>Created attachment 391125
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620487</commentid>
    <comment_count>10</comment_count>
      <attachid>391125</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-02-18 19:57:28 -0800</bug_when>
    <thetext>Comment on attachment 391125
Patch

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

&gt; Source/WebCore/ChangeLog:3
&gt; +        Recognize WKPage and WKWebView calls as generated by client API use

Wrong title here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620655</commentid>
    <comment_count>11</comment_count>
      <attachid>391125</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-02-19 08:21:38 -0800</bug_when>
    <thetext>Comment on attachment 391125
Patch

LGTM too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620721</commentid>
    <comment_count>12</comment_count>
      <attachid>391175</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-02-19 10:04:32 -0800</bug_when>
    <thetext>Created attachment 391175
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620732</commentid>
    <comment_count>13</comment_count>
      <attachid>391175</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-19 10:36:49 -0800</bug_when>
    <thetext>Comment on attachment 391175
Patch for landing

Clearing flags on attachment: 391175

Committed r256925: &lt;https://trac.webkit.org/changeset/256925&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620733</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-19 10:36:51 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>391103</attachid>
            <date>2020-02-18 15:22:19 -0800</date>
            <delta_ts>2020-02-18 15:29:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207917-20200218152219.patch</filename>
            <type>text/plain</type>
            <size>31192</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2Nzc3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjkwZTQ1NDU4OTBlMWQy
YzUzYTk4ZjEyYTEyMGI5MWY1OWQ1ZTIxOC4uM2M3ODg4MTE2MmRkZDQyYWZiZDNjOTQ1NzIyMTMw
MDUwNDcyNTMwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTAyLTE4ICBCcmVu
dCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFJlY29nbml6ZSBXS1Bh
Z2UgYW5kIFdLV2ViVmlldyBjYWxscyBhcyBnZW5lcmF0ZWQgYnkgY2xpZW50IEFQSSB1c2UKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzkxNworICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vNTY3NzA2NzY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQ2FsbHMgdG8gV0tQYWdlIGFuZCBXS1dlYlZpZXcgQVBJ
IHVzZWQgdG8gbG9hZCBkYXRhIGFuZCBzdHJpbmdzIGRpcmVjdGx5IHNob3VsZCBiZSByZWNvZ25p
emVkIGJ5CisgICAgICAgIHRoZSBsb2FkaW5nIGNvZGUgYXMgYmVpbmcgZnJvbSBjbGllbnQgQVBJ
IGNhbGxzLiBUaGlzIGJyaW5ncyB0aGVzZSBBUEkgYmVoYXZpb3JzIGludG8gYWxpZ25tZW50Cisg
ICAgICAgIHdpdGggc2ltaWxhciBBUEkgZm9yIGxvYWRpbmcgVVJMcyBhbmQgVVJMUmVxdWVzdHMg
ZGlyZWN0bHkuIFRoaXMgY2hhbmdlIGFsc28gYWxsb3dzIHVzIHRvIGVuZm9yY2UKKyAgICAgICAg
c3RyaWN0ZXIgaGFuZGxpbmcgb2YgRGF0YSBVUkxzLCBhbmQgdG8gcmVtb3ZlIHRoZSBuZWVkIHRv
IGV4cGxpY2l0bHkgcGVybWl0IHRvcC1sZXZlbCBkYXRhIFVSTAorICAgICAgICBuYXZpZ2F0aW9u
IHdoZW4gY2xpZW50IEFQSXMgYXJlIHVzZWQuCisKKyAgICAgICAgVGVzdGVkIGJ5IFRlc3RXZWJL
aXRBUEkgTmF2aWdhdGlvbiB0ZXN0cy4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6IEFkZCBu
ZXcgZmlsZS4KKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFk
ZCBuZXcgZmlsZS4KKyAgICAgICAgKiBsb2FkZXIvU2hvdWxkVHJlYXRBc0NsaWVudE9yVXNlcklu
cHV0Lmg6IEFkZGVkLgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MueWFtbDoKKwogMjAyMC0wMi0x
NyAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIElubGluZSBib3hl
cyBmb3IgaW1hZ2VzIHRoYXQgcmVwcmVzZW50IG5vdGhpbmcgc2hvdWxkIGNvbGxhcHNlIHRvIGVt
cHR5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZwppbmRleCBhOWNkMTUzZTA5MjE1YTgxZWU1ZDJjYTk2ODBhNGI5ZGIzZWQ3YmQ0
Li44ZmE2ZDBhMGEyNmNhOGNjNTQ3MTA4M2ZkYzlhMGRlZWVjNDQwYWVkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAt
MSwzICsxLDM1IEBACisyMDIwLTAyLTE4ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUu
Y29tPgorCisgICAgICAgIFJlY29nbml6ZSBXS1BhZ2UgYW5kIFdLV2ViVmlldyBjYWxscyBhcyBn
ZW5lcmF0ZWQgYnkgY2xpZW50IEFQSSB1c2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIwNzkxNworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTY3NzA2
NzY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ2Fs
bHMgdG8gV0tQYWdlIGFuZCBXS1dlYlZpZXcgQVBJIHVzZWQgdG8gbG9hZCBkYXRhIGFuZCBzdHJp
bmdzIGRpcmVjdGx5IHNob3VsZCBiZSByZWNvZ25pemVkIGJ5CisgICAgICAgIHRoZSBsb2FkaW5n
IGNvZGUgYXMgYmVpbmcgZnJvbSBjbGllbnQgQVBJIGNhbGxzLiBUaGlzIGJyaW5ncyB0aGVzZSBB
UEkgYmVoYXZpb3JzIGludG8gYWxpZ25tZW50CisgICAgICAgIHdpdGggc2ltaWxhciBBUEkgZm9y
IGxvYWRpbmcgVVJMcyBhbmQgVVJMUmVxdWVzdHMgZGlyZWN0bHkuIFRoaXMgY2hhbmdlIGFsc28g
YWxsb3dzIHVzIHRvIGVuZm9yY2UKKyAgICAgICAgc3RyaWN0ZXIgaGFuZGxpbmcgb2YgRGF0YSBV
UkxzLCBhbmQgdG8gcmVtb3ZlIHRoZSBuZWVkIHRvIGV4cGxpY2l0bHkgcGVybWl0IHRvcC1sZXZl
bCBkYXRhIFVSTAorICAgICAgICBuYXZpZ2F0aW9uIHdoZW4gY2xpZW50IEFQSXMgYXJlIHVzZWQu
CisKKyAgICAgICAgKiBTaGFyZWQvTG9hZFBhcmFtZXRlcnMuY3BwOgorICAgICAgICAoV2ViS2l0
OjpMb2FkUGFyYW1ldGVyczo6ZW5jb2RlIGNvbnN0KTogU2VyaWFsaXplIGZsYWcgaW5kaWNhdGlu
ZyBsb2FkIGlzIGR1ZSB0byBjbGllbnQgQVBJIHVzZS4KKyAgICAgICAgKFdlYktpdDo6TG9hZFBh
cmFtZXRlcnM6OmRlY29kZSk6IERpdHRvLgorICAgICAgICAqIFNoYXJlZC9Mb2FkUGFyYW1ldGVy
cy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlv
bi5tbToKKyAgICAgICAgKC1bV0tXZWJWaWV3Q29uZmlndXJhdGlvbiBpbml0XSk6CisgICAgICAg
ICogVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
UHJvdmlzaW9uYWxQYWdlUHJveHk6OmxvYWREYXRhKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojpsb2FkRGF0YSk6
IFJlY29nbml6ZSBkaXJlY3QgZGF0YSBsb2FkcyBzdGFydGVkIGZyb20gY2xpZW50IEFQSS4KKyAg
ICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojpsb2FkRGF0YVdpdGhOYXZpZ2F0aW9uU2hhcmVk
KTogRGl0dG8uCisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFn
ZTo6bG9hZERhdGFJbXBsKTogUmVjb2duaXplIGRpcmVjdCBkYXRhIGxvYWRzIHN0YXJ0ZWQgZnJv
bSBjbGllbnQgQVBJLgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpsb2FkRGF0YSk6IERpdHRv
LgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpsb2FkQWx0ZXJuYXRlSFRNTCk6IERpdHRvLgor
ICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6CisKIDIwMjAtMDItMTcgIFlv
dWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBXZWJJbnNwZWN0
b3Igc3VwcG9ydCB0byBXZWJLaXQ6OldlYlNvY2tldENoYW5uZWwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCmlu
ZGV4IGY0ODMyYWE3MTYzNjc4NTExZDg2YTQ5NDIwNzMzNWQ1N2VkZjE2MWEuLjY0ODQ0Y2VmOWVj
YWZjZGM0ZDgwZTU3ODM2ZDY1NmM0NmMyYjA1ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L0hlYWRlcnMuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQpAQCAtNzMz
LDYgKzczMyw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICBs
b2FkZXIvUmVzb3VyY2VMb2FkZXJPcHRpb25zLmgKICAgICBsb2FkZXIvUmVzb3VyY2VMb2FkZXJU
eXBlcy5oCiAgICAgbG9hZGVyL1Jlc291cmNlVGltaW5nSW5mb3JtYXRpb24uaAorICAgIGxvYWRl
ci9TaG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQuaAogICAgIGxvYWRlci9TaG91bGRUcmVh
dEFzQ29udGludWluZ0xvYWQuaAogICAgIGxvYWRlci9TdWJmcmFtZUxvYWRlci5oCiAgICAgbG9h
ZGVyL1N1YnJlc291cmNlTG9hZGVyLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAyMjY2ZmM4MWYxZTBmNDVjZDQyNDY4ZjljMjcx
YmY5MjJiYjcyYWUyLi5kN2IzNGRjMWM1YjMzYjZhY2Q4ZGNjMjJiYzc5Nzk3NDE3ODE4OGU4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CkBAIC0yMTg3LDYgKzIxODcsNyBAQAogCQk3QUEzQTZBNDE5NEI1QzIyMDAxQ0JEMjQgLyogVGls
ZUNvdmVyYWdlTWFwLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA3QUEzQTZBMjE5NEI1QzIyMDAxQ0JEMjQgLyogVGlsZUNvdmVyYWdlTWFwLmggKi87IH07
CiAJCTdBQUJBMjVBMTRCQzYxMzMwMEFBOUExMSAvKiBET01FZGl0b3IuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBQUJBMjU4MTRCQzYxMzMwMEFBOUEx
MSAvKiBET01FZGl0b3IuaCAqLzsgfTsKIAkJN0FBRkU4RDAxOUNCODY3MjAwMEY1NkQ4IC8qIFNj
cm9sbExhdGNoaW5nU3RhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDdBQUZFOENFMTlDQjg2NzIwMDBGNTZEOCAvKiBTY3JvbGxMYXRjaGluZ1N0YXRl
LmggKi87IH07CisJCTdBQjAxNzNGMjNGQjczMkYwMDJGODM2NiAvKiBTaG91bGRUcmVhdEFzQ2xp
ZW50T3JVc2VySW5wdXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDdBQjAxNzNEMjNGQjczMTEwMDJGODM2NiAvKiBTaG91bGRUcmVhdEFzQ2xpZW50T3JV
c2VySW5wdXQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwogCQk3QURFNzIyNjEwQ0JCQjlCMDA2QjNCM0EgLyogQ29udGV4dE1lbnVQcm92aWRlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FERTcyMjUxMENC
QkI5QjAwNkIzQjNBIC8qIENvbnRleHRNZW51UHJvdmlkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk3QUUzMzVGMjFBQ0IwOUUyMDBFNDAxRUYg
LyogV2hlZWxFdmVudFRlc3RNb25pdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA3QUUzMzVGMDFBQ0IwOUUyMDBFNDAxRUYgLyogV2hlZWxFdmVudFRl
c3RNb25pdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKIAkJN0FFNkM5M0MxQkUwQzYwMTAwRTE5RTAzIC8qIE1haW5UaHJlYWRTaGFyZWRUaW1lci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FFNkM5M0Ex
QkUwQzYwMTAwRTE5RTAzIC8qIE1haW5UaHJlYWRTaGFyZWRUaW1lci5oICovOyB9OwpAQCAtOTcw
Nyw2ICs5NzA4LDcgQEAKIAkJN0FBQkEyNTgxNEJDNjEzMzAwQUE5QTExIC8qIERPTUVkaXRvci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01FZGl0b3IuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0FBRkU4Q0QxOUNCODY3MjAwMEY1NkQ4IC8qIFNjcm9sbExh
dGNoaW5nU3RhdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Ny
b2xsTGF0Y2hpbmdTdGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdBQUZF
OENFMTlDQjg2NzIwMDBGNTZEOCAvKiBTY3JvbGxMYXRjaGluZ1N0YXRlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbExhdGNoaW5nU3RhdGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJN0FCMDE3M0QyM0ZCNzMxMTAwMkY4MzY2IC8qIFNob3VsZFRyZWF0
QXNDbGllbnRPclVzZXJJbnB1dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaG91bGRUcmVhdEFzQ2xpZW50
T3JVc2VySW5wdXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0FERTcyMjUxMENC
QkI5QjAwNkIzQjNBIC8qIENvbnRleHRNZW51UHJvdmlkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQ29udGV4dE1lbnVQcm92aWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk3QUUzMzVFRjFBQ0IwOUUyMDBFNDAxRUYgLyogV2hlZWxFdmVudFRlc3RNb25p
dG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdoZWVsRXZlbnRU
ZXN0TW9uaXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdBRTMzNUYwMUFD
QjA5RTIwMEU0MDFFRiAvKiBXaGVlbEV2ZW50VGVzdE1vbml0b3IuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gV2hlZWxFdmVudFRlc3RNb25pdG9yLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CkBAIC0yNTc0MSw2ICsyNTc0Myw3IEBACiAJCQkJMjg2RTREQ0MyMDIxMDQ4
ODAwMzE1MjM4IC8qIFNlcnZlclRpbWluZy5oICovLAogCQkJCUE1MkQ4NUNBMjFCMDk4MkYwMDYx
QzFFQiAvKiBTZXJ2ZXJUaW1pbmdQYXJzZXIuY3BwICovLAogCQkJCUE1MkQ4NUNCMjFCMDk4MzAw
MDYxQzFFQiAvKiBTZXJ2ZXJUaW1pbmdQYXJzZXIuaCAqLywKKwkJCQk3QUIwMTczRDIzRkI3MzEx
MDAyRjgzNjYgLyogU2hvdWxkVHJlYXRBc0NsaWVudE9yVXNlcklucHV0LmggKi8sCiAJCQkJODM2
MkU4QkYyMENFRjlDQjAwMjQ1ODg2IC8qIFNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZC5oICov
LAogCQkJCTUxMzI3RDVGMTFBMzNBMkIwMDRGOUQ2NSAvKiBTaW5rRG9jdW1lbnQuY3BwICovLAog
CQkJCTUxMzI3RDVFMTFBMzNBMkIwMDRGOUQ2NSAvKiBTaW5rRG9jdW1lbnQuaCAqLywKQEAgLTMy
Mjg1LDYgKzMyMjg4LDcgQEAKIAkJCQkxQTRBOTU0RTBCNEVEQ0NCMDAyRDhDM0MgLyogU2hhcmVk
QnVmZmVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk4MzRERkFEMDFGN0RBRTVEMDBDMjcyNUIgLyog
U2hhcmVkU3RyaW5nSGFzaC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTMzMDlFQTMwOTlFQjc4QzAw
NTZFNTgxIC8qIFNoYXJlZFRpbWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QUIwMTczRjIzRkI3
MzJGMDAyRjgzNjYgLyogU2hvdWxkVHJlYXRBc0NsaWVudE9yVXNlcklucHV0LmggaW4gSGVhZGVy
cyAqLywKIAkJCQk4MzYyRThDMTIwQ0VGOUNCMDAyNDU4ODYgLyogU2hvdWxkVHJlYXRBc0NvbnRp
bnVpbmdMb2FkLmggaW4gSGVhZGVycyAqLywKIAkJCQlFNDg5NDRBMzE4MEI1N0Q4MDBGMTY1RDgg
LyogU2ltcGxlTGluZUxheW91dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTFFMDY3RUUxRTYyNDZF
NTAwMTYyRDE2IC8qIFNpbXBsZUxpbmVMYXlvdXRDb3ZlcmFnZS5oIGluIEhlYWRlcnMgKi8sCkBA
IC0zMjMxMSw3ICszMjMxNSw2IEBACiAJCQkJNTEwRDRBMzcxMDMxNjVFRTAwNDlFQTU0IC8qIFNv
Y2tldFN0cmVhbUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTEwRDRBMzgxMDMxNjVFRTAw
NDlFQTU0IC8qIFNvY2tldFN0cmVhbUhhbmRsZUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NTFBQkFFMUUxMDNDMTkxMzAwOEM1MjYwIC8qIFNvY2tldFN0cmVhbUhhbmRsZUltcGwuaCBpbiBI
ZWFkZXJzICovLAotCQkJCTQxMTAwQzgwMjNGNzQ1ODMwMDFCQzMzQiAvKiBXZWJTb2NrZXRDaGFu
bmVsSW5zcGVjdG9yLmggaW4gSGVhZGVycyAqLywKIAkJCQk4NEE4MUYzRTBGQzdERkYwMDA5NTUz
MDAgLyogU291cmNlQWxwaGEuaCBpbiBIZWFkZXJzICovLAogCQkJCUNEM0E0OTYyMTdBOUQwMUIw
MDI3NEU0MiAvKiBTb3VyY2VCdWZmZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUNEM0E0OTY1MTdB
OUQwMUIwMDI3NEU0MiAvKiBTb3VyY2VCdWZmZXJMaXN0LmggaW4gSGVhZGVycyAqLywKQEAgLTMy
OTg0LDYgKzMyOTg3LDcgQEAKIAkJCQk5N0FBQkQxQjE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29j
a2V0LmggaW4gSGVhZGVycyAqLywKIAkJCQk5N0FBQkQxRTE0RkEwOUQ1MDA3NDU3QUUgLyogV2Vi
U29ja2V0Q2hhbm5lbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTdBQUJEMUYxNEZBMDlENTAwNzQ1
N0FFIC8qIFdlYlNvY2tldENoYW5uZWxDbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxMTAw
QzgwMjNGNzQ1ODMwMDFCQzMzQiAvKiBXZWJTb2NrZXRDaGFubmVsSW5zcGVjdG9yLmggaW4gSGVh
ZGVycyAqLywKIAkJCQk0QTM4QkY1MTE0RkUxQzA5MDA2MTI1MTIgLyogV2ViU29ja2V0RGVmbGF0
ZUZyYW1lci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTdBQUJEMjExNEZBMDlENTAwNzQ1N0FFIC8q
IFdlYlNvY2tldERlZmxhdGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk5N0FBQkQyMzE0RkEwOUQ1
MDA3NDU3QUUgLyogV2ViU29ja2V0RXh0ZW5zaW9uRGlzcGF0Y2hlci5oIGluIEhlYWRlcnMgKi8s
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU2hvdWxkVHJlYXRBc0NsaWVudE9y
VXNlcklucHV0LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU2hvdWxkVHJlYXRBc0NsaWVudE9y
VXNlcklucHV0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDQyMmYwYzAxYTA2ZWZlMmQ0NTVlM2VjYzdjZjg1N2Qx
NGE4ZDI5MwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TaG91bGRU
cmVhdEFzQ2xpZW50T3JVc2VySW5wdXQuaApAQCAtMCwwICsxLDQ2IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgorCituYW1lc3BhY2UgV2Vi
Q29yZSB7CisKK2VudW0gY2xhc3MgU2hvdWxkVHJlYXRBc0NsaWVudE9yVXNlcklucHV0IDogYm9v
bCB7IE5vLCBZZXMgfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCituYW1lc3BhY2UgV1RG
IHsKKwordGVtcGxhdGU8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJDb3JlOjpTaG91bGRUcmVhdEFz
Q2xpZW50T3JVc2VySW5wdXQ+IHsKKyAgICB1c2luZyB2YWx1ZXMgPSBFbnVtVmFsdWVzPAorICAg
ICAgICBXZWJDb3JlOjpTaG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQsCisgICAgICAgIFdl
YkNvcmU6OlNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dDo6Tm8sCisgICAgICAgIFdlYkNv
cmU6OlNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dDo6WWVzCisgICAgPjsKK307CisKK30g
Ly8gbmFtZXNwYWNlIFdURgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5n
cy55YW1sIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy55YW1sCmluZGV4IGZkOTAxNjQ3
MjBlYzc1OTI5ZmM1Y2RmMmQxMGZkMTg4NWNhZGRmNWUuLjhjYTJiMjBhZGY3M2UxMDMyMWJhN2Vl
NDcyYmFlM2FkZjZkMDVhMGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGlu
Z3MueWFtbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLnlhbWwKQEAgLTEwOCw3
ICsxMDgsNyBAQCBhbGxvd1NldHRpbmdBbnlYSFJIZWFkZXJGcm9tRmlsZVVSTHM6CiBhbGxvd0Ny
b3NzT3JpZ2luU3VicmVzb3VyY2VzVG9Bc2tGb3JDcmVkZW50aWFsczoKICAgaW5pdGlhbDogZmFs
c2UKIGFsbG93VG9wTmF2aWdhdGlvblRvRGF0YVVSTHM6Ci0gIGluaXRpYWw6IHRydWUKKyAgaW5p
dGlhbDogZmFsc2UKIG5lZWRzU3RvcmFnZUFjY2Vzc0Zyb21GaWxlVVJMc1F1aXJrOgogICBpbml0
aWFsOiB0cnVlCiBuZWVkc0ZyYW1lTmFtZUZhbGxiYWNrVG9JZFF1aXJrOgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9TaGFyZWQvTG9hZFBhcmFtZXRlcnMuY3BwIGIvU291cmNlL1dlYktpdC9T
aGFyZWQvTG9hZFBhcmFtZXRlcnMuY3BwCmluZGV4IDA4ODFiOTBiZWFlM2JjNTdmMDJhMzI5MjVi
MmJiMDI3MTk0ZDJmZjUuLjNkZTJmYzRkZDg3ZDMzNWE5ZGRjOGVkMTA1Yzc0ZDYxMjNiMTg2NTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0xvYWRQYXJhbWV0ZXJzLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Mb2FkUGFyYW1ldGVycy5jcHAKQEAgLTEsNSArMSw1IEBA
CiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoQykgMjAxNi0yMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNTEsNiArNTEsNyBAQCB2
b2lkIExvYWRQYXJhbWV0ZXJzOjplbmNvZGUoSVBDOjpFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAog
ICAgIGVuY29kZXIgPDwgcHJvdmlzaW9uYWxMb2FkRXJyb3JVUkxTdHJpbmc7CiAgICAgZW5jb2Rl
ciA8PCB3ZWJzaXRlUG9saWNpZXM7CiAgICAgZW5jb2RlciA8PCBzaG91bGRPcGVuRXh0ZXJuYWxV
UkxzUG9saWN5OworICAgIGVuY29kZXIgPDwgc2hvdWxkVHJlYXRBc0NsaWVudE9yVXNlcklucHV0
OwogICAgIGVuY29kZXIgPDwgc2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkOwogICAgIGVuY29k
ZXIgPDwgdXNlckRhdGE7CiAgICAgZW5jb2Rlci5lbmNvZGVFbnVtKGxvY2tIaXN0b3J5KTsKQEAg
LTExNSw2ICsxMTYsOSBAQCBib29sIExvYWRQYXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjpEZWNvZGVy
JiBkZWNvZGVyLCBMb2FkUGFyYW1ldGVycyYgZGF0YSkKICAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KGRhdGEuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSkpCiAgICAgICAgIHJldHVybiBmYWxz
ZTsKIAorICAgIGlmICghZGVjb2Rlci5kZWNvZGUoZGF0YS5zaG91bGRUcmVhdEFzQ2xpZW50T3JV
c2VySW5wdXQpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgCiAgICAgaWYgKCFkZWNvZGVy
LmRlY29kZShkYXRhLnNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCkpCiAgICAgICAgIHJldHVy
biBmYWxzZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvTG9hZFBhcmFtZXRl
cnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0xvYWRQYXJhbWV0ZXJzLmgKaW5kZXggYjVkMmQy
ODhjZmNlMDEzNWNmOGE0ZDE4YzhjZWIxNjZmYzQ0MjgxYS4uMzljMjE4ZmMzZjBlYmUyYTVmMWY3
MmZiNmRjOTU4MTZmMDQyMDYyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvTG9h
ZFBhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Mb2FkUGFyYW1ldGVycy5o
CkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNiBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTYtMjAyMCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAg
LTMxLDYgKzMxLDcgQEAKICNpbmNsdWRlICJXZWJzaXRlUG9saWNpZXNEYXRhLmgiCiAjaW5jbHVk
ZSA8V2ViQ29yZS9GcmFtZUxvYWRlclR5cGVzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJj
ZVJlcXVlc3QuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1Nob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJ
bnB1dC5oPgogCiBPQkpDX0NMQVNTIE5TRGljdGlvbmFyeTsKIApAQCAtNjUsNiArNjYsNyBAQCBz
dHJ1Y3QgTG9hZFBhcmFtZXRlcnMgewogCiAgICAgV2ViQ29yZTo6U2hvdWxkT3BlbkV4dGVybmFs
VVJMc1BvbGljeSBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IHsgV2ViQ29yZTo6U2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeTo6U2hvdWxkTm90QWxsb3cgfTsKICAgICBib29sIHNob3Vs
ZFRyZWF0QXNDb250aW51aW5nTG9hZCB7IGZhbHNlIH07CisgICAgV2ViQ29yZTo6U2hvdWxkVHJl
YXRBc0NsaWVudE9yVXNlcklucHV0IHNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dCB7IFdl
YkNvcmU6OlNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dDo6Tm8gfTsKICAgICBVc2VyRGF0
YSB1c2VyRGF0YTsKICAgICBXZWJDb3JlOjpMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSB7IFdlYkNv
cmU6OkxvY2tIaXN0b3J5OjpObyB9OwogICAgIFdlYkNvcmU6OkxvY2tCYWNrRm9yd2FyZExpc3Qg
bG9ja0JhY2tGb3J3YXJkTGlzdCB7IFdlYkNvcmU6OkxvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vIH07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3
Q29uZmlndXJhdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dl
YlZpZXdDb25maWd1cmF0aW9uLm1tCmluZGV4IGJlMzhiOWQ3Y2FiNGQwZTVkZDgxYjY5MDc5MTAx
ZWE3OTYzMDNjMjQuLmUxNzEzNjExZWUyYzkxNmQ4ZWM3ZTliNTliMGYzNzYyM2VmY2YyOGIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdDb25m
aWd1cmF0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dl
YlZpZXdDb25maWd1cmF0aW9uLm1tCkBAIC0yMzYsNyArMjM2LDcgQEAgc3RhdGljIGJvb2wgZGVm
YXVsdFNob3VsZERlY2lkZVBvbGljeUJlZm9yZUxvYWRpbmdRdWlja0xvb2tQcmV2aWV3KCkKICAg
ICBfY29udmVydHNQb3NpdGlvblN0eWxlT25Db3B5ID0gTk87CiAgICAgX2FsbG93c01ldGFSZWZy
ZXNoID0gWUVTOwogICAgIF9hbGxvd1VuaXZlcnNhbEFjY2Vzc0Zyb21GaWxlVVJMcyA9IE5POwot
ICAgIF9hbGxvd1RvcE5hdmlnYXRpb25Ub0RhdGFVUkxzID0gWUVTOworICAgIF9hbGxvd1RvcE5h
dmlnYXRpb25Ub0RhdGFVUkxzID0gTk87CiAgICAgX25lZWRzU3RvcmFnZUFjY2Vzc0Zyb21GaWxl
VVJMc1F1aXJrID0gWUVTOwogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmNwcCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmNwcAppbmRleCAzZGFhY2Qw
MWViZTk2NWMxNTAzMTA0MTM2NTA1MTAyZjBjYzg0YWY1Li40YjBkOTRjNGY2MjA4M2I0NDcyNjZh
ODhhOGIyNmE4Y2Y4Zjk5YzhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Q
cm92aXNpb25hbFBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJv
dmlzaW9uYWxQYWdlUHJveHkuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTktMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKQEAgLTQ1LDYgKzQ1LDcgQEAKICNpbmNsdWRlICJXZWJQcm9jZXNz
TWVzc2FnZXMuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzUG9vbC5oIgogI2luY2x1ZGUgIldlYlBy
b2Nlc3NQcm94eS5oIgorI2luY2x1ZGUgPFdlYkNvcmUvU2hvdWxkVHJlYXRBc0NsaWVudE9yVXNl
cklucHV0Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQu
aD4KIAogbmFtZXNwYWNlIFdlYktpdCB7CkBAIC0xNTIsNyArMTUzLDcgQEAgdm9pZCBQcm92aXNp
b25hbFBhZ2VQcm94eTo6bG9hZERhdGEoQVBJOjpOYXZpZ2F0aW9uJiBuYXZpZ2F0aW9uLCBjb25z
dCBJUEM6OkRhdGEKIHsKICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKFByb2Nlc3NTd2FwcGlu
ZywgImxvYWREYXRhOiBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiB3ZWJQYWdlSUQ9JSIgUFJJdTY0
LCBtX3BhZ2UuaWRlbnRpZmllcigpLnRvVUludDY0KCksIG1fd2ViUGFnZUlELnRvVUludDY0KCkp
OwogCi0gICAgbV9wYWdlLmxvYWREYXRhV2l0aE5hdmlnYXRpb25TaGFyZWQobV9wcm9jZXNzLmNv
cHlSZWYoKSwgbV93ZWJQYWdlSUQsIG5hdmlnYXRpb24sIGRhdGEsIE1JTUVUeXBlLCBlbmNvZGlu
ZywgYmFzZVVSTCwgdXNlckRhdGEsIFdlYkNvcmU6OlNob3VsZFRyZWF0QXNDb250aW51aW5nTG9h
ZDo6WWVzLCBXVEZNb3ZlKHdlYnNpdGVQb2xpY2llcyksIG5hdmlnYXRpb24ubGFzdE5hdmlnYXRp
b25BY3Rpb24oKS5zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICBtX3BhZ2UubG9h
ZERhdGFXaXRoTmF2aWdhdGlvblNoYXJlZChtX3Byb2Nlc3MuY29weVJlZigpLCBtX3dlYlBhZ2VJ
RCwgbmF2aWdhdGlvbiwgZGF0YSwgTUlNRVR5cGUsIGVuY29kaW5nLCBiYXNlVVJMLCB1c2VyRGF0
YSwgV2ViQ29yZTo6U2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkOjpZZXMsIFdlYkNvcmU6OlNo
b3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dDo6Tm8sIFdURk1vdmUod2Vic2l0ZVBvbGljaWVz
KSwgbmF2aWdhdGlvbi5sYXN0TmF2aWdhdGlvbkFjdGlvbigpLnNob3VsZE9wZW5FeHRlcm5hbFVS
THNQb2xpY3kpOwogfQogCiB2b2lkIFByb3Zpc2lvbmFsUGFnZVByb3h5Ojpsb2FkUmVxdWVzdChB
UEk6Ok5hdmlnYXRpb24mIG5hdmlnYXRpb24sIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIHJl
cXVlc3QsIEFQSTo6T2JqZWN0KiB1c2VyRGF0YSwgT3B0aW9uYWw8V2Vic2l0ZVBvbGljaWVzRGF0
YT4mJiB3ZWJzaXRlUG9saWNpZXMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcAppbmRleCBkYTdmMjAxZjRlMmI2M2Y2MWQxMzAxOTliMTI0YWNmMmQyMTE2YTg1Li5mZTdm
ZTgxYzEzNjZhNWE5ZGJjY2QzMmVlN2MyYTJlMzFkOTY2MDIxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0
IChDKSAyMDEwLTIwMTkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJp
Z2h0IChDKSAyMDEwLTIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29w
eXJpZ2h0IChDKSAyMDEyIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dApAQCAtMTY4LDYgKzE2OCw3IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9T
ZXJpYWxpemVkQ3J5cHRvS2V5V3JhcC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2hhcmVEYXRhLmg+
CiAjaW5jbHVkZSA8V2ViQ29yZS9TaGFyZWRCdWZmZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1No
b3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2hvdWxk
VHJlYXRBc0NvbnRpbnVpbmdMb2FkLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9UZXh0Q2hlY2tlckNs
aWVudC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVGV4dEluZGljYXRvci5oPgpAQCAtMTM3NywxMSAr
MTM3OCwxMSBAQCBSZWZQdHI8QVBJOjpOYXZpZ2F0aW9uPiBXZWJQYWdlUHJveHk6OmxvYWREYXRh
KGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYgZGF0YSwgYwogICAgIGlmIChzaG91bGRVc2VGb3Jl
Z3JvdW5kUHJpb3JpdHlGb3JDbGllbnROYXZpZ2F0aW9uKCkpCiAgICAgICAgIG5hdmlnYXRpb24t
PnNldEZvcmVncm91bmRBY3Rpdml0eShwcm9jZXNzKCkudGhyb3R0bGVyKCkuZm9yZWdyb3VuZEFj
dGl2aXR5KCJDbGllbnQgbmF2aWdhdGlvbiJfcykubW92ZVRvVW5pcXVlUHRyKCkpOwogCi0gICAg
bG9hZERhdGFXaXRoTmF2aWdhdGlvblNoYXJlZChtX3Byb2Nlc3MuY29weVJlZigpLCBtX3dlYlBh
Z2VJRCwgbmF2aWdhdGlvbiwgZGF0YSwgTUlNRVR5cGUsIGVuY29kaW5nLCBiYXNlVVJMLCB1c2Vy
RGF0YSwgU2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkOjpObywgV1RGOjpudWxsb3B0LCBzaG91
bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICBsb2FkRGF0YVdpdGhOYXZpZ2F0aW9uU2hh
cmVkKG1fcHJvY2Vzcy5jb3B5UmVmKCksIG1fd2ViUGFnZUlELCBuYXZpZ2F0aW9uLCBkYXRhLCBN
SU1FVHlwZSwgZW5jb2RpbmcsIGJhc2VVUkwsIHVzZXJEYXRhLCBTaG91bGRUcmVhdEFzQ29udGlu
dWluZ0xvYWQ6Ok5vLCBTaG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQ6OlllcywgV1RGOjpu
dWxsb3B0LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKICAgICByZXR1cm4gbmF2aWdh
dGlvbjsKIH0KIAotdm9pZCBXZWJQYWdlUHJveHk6OmxvYWREYXRhV2l0aE5hdmlnYXRpb25TaGFy
ZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiBwcm9jZXNzLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmll
ciB3ZWJQYWdlSUQsIEFQSTo6TmF2aWdhdGlvbiYgbmF2aWdhdGlvbiwgY29uc3QgSVBDOjpEYXRh
UmVmZXJlbmNlJiBkYXRhLCBjb25zdCBTdHJpbmcmIE1JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGVu
Y29kaW5nLCBjb25zdCBTdHJpbmcmIGJhc2VVUkwsIEFQSTo6T2JqZWN0KiB1c2VyRGF0YSwgU2hv
dWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkIHNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCwgT3B0
aW9uYWw8V2Vic2l0ZVBvbGljaWVzRGF0YT4mJiB3ZWJzaXRlUG9saWNpZXMsIFNob3VsZE9wZW5F
eHRlcm5hbFVSTHNQb2xpY3kgc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSkKK3ZvaWQgV2Vi
UGFnZVByb3h5Ojpsb2FkRGF0YVdpdGhOYXZpZ2F0aW9uU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJv
eHk+JiYgcHJvY2VzcywgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgd2ViUGFnZUlELCBBUEk6Ok5h
dmlnYXRpb24mIG5hdmlnYXRpb24sIGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYgZGF0YSwgY29u
c3QgU3RyaW5nJiBNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBlbmNvZGluZywgY29uc3QgU3RyaW5n
JiBiYXNlVVJMLCBBUEk6Ok9iamVjdCogdXNlckRhdGEsIFNob3VsZFRyZWF0QXNDb250aW51aW5n
TG9hZCBzaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQsIFNob3VsZFRyZWF0QXNDbGllbnRPclVz
ZXJJbnB1dCBzaG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQsIE9wdGlvbmFsPFdlYnNpdGVQ
b2xpY2llc0RhdGE+JiYgd2Vic2l0ZVBvbGljaWVzLCBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9s
aWN5IHNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpCiB7CiAgICAgUkVMRUFTRV9MT0dfSUZf
QUxMT1dFRChMb2FkaW5nLCAibG9hZERhdGFXaXRoTmF2aWdhdGlvbiIpOwogCkBAIC0xMzk4LDYg
KzEzOTksNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6bG9hZERhdGFXaXRoTmF2aWdhdGlvblNoYXJl
ZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmIHByb2Nlc3MsCiAgICAgbG9hZFBhcmFtZXRlcnMuZW5j
b2RpbmdOYW1lID0gZW5jb2Rpbmc7CiAgICAgbG9hZFBhcmFtZXRlcnMuYmFzZVVSTFN0cmluZyA9
IGJhc2VVUkw7CiAgICAgbG9hZFBhcmFtZXRlcnMuc2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2Fk
ID0gc2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkID09IFNob3VsZFRyZWF0QXNDb250aW51aW5n
TG9hZDo6WWVzOworICAgIGxvYWRQYXJhbWV0ZXJzLnNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJ
bnB1dCA9IHNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dDsKICAgICBsb2FkUGFyYW1ldGVy
cy51c2VyRGF0YSA9IFVzZXJEYXRhKHByb2Nlc3MtPnRyYW5zZm9ybU9iamVjdHNUb0hhbmRsZXMo
dXNlckRhdGEpLmdldCgpKTsKICAgICBsb2FkUGFyYW1ldGVycy53ZWJzaXRlUG9saWNpZXMgPSBX
VEZNb3ZlKHdlYnNpdGVQb2xpY2llcyk7CiAgICAgbG9hZFBhcmFtZXRlcnMuc2hvdWxkT3BlbkV4
dGVybmFsVVJMc1BvbGljeSA9IHNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCmluZGV4IDVmZjY3OTJkODNmYmMwMmIwZjU3NGNj
N2EyMmU4NTdiYTkxZmQ3YWUuLjkxOWFiMzI0Yjc4NjhiMjU5MWQ4Y2UzYTgxNWFhNGI1YTc4ZDJm
YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCkBAIC0xLDUgKzEsNSBA
QAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMC0yMDE5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMC0yMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjE5LDYgKzIx
OSw3IEBAIGVudW0gY2xhc3MgSGFzSW5zZWN1cmVDb250ZW50IDogYm9vbDsKIGVudW0gY2xhc3Mg
Tm90aWZpY2F0aW9uRGlyZWN0aW9uIDogdWludDhfdDsKIGVudW0gY2xhc3MgUm91dGVTaGFyaW5n
UG9saWN5IDogdWludDhfdDsKIGVudW0gY2xhc3MgU2hvdWxkU2FtcGxlIDogYm9vbDsKK2VudW0g
Y2xhc3MgU2hvdWxkVHJlYXRBc0NsaWVudE9yVXNlcklucHV0IDogYm9vbDsKIGVudW0gY2xhc3Mg
U2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkIDogYm9vbDsKIGVudW0gY2xhc3MgV3JpdGluZ0Rp
cmVjdGlvbiA6IHVpbnQ4X3Q7CiAKQEAgLTE2MDgsNyArMTYwOSw3IEBAIHB1YmxpYzoKICAgICB2
b2lkIGRlY2lkZVBvbGljeUZvclJlc3BvbnNlU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYs
IFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIFdlYkNv
cmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYmIGZyYW1lU2VjdXJpdHlPcmlnaW4sIFdlYkNvcmU6OlBv
bGljeUNoZWNrSWRlbnRpZmllciwKICAgICAgICAgdWludDY0X3QgbmF2aWdhdGlvbklELCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRyaWJ1
dGUsIHVpbnQ2NF90IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJik7CiAgICAgdm9pZCBzdGFy
dFVSTFNjaGVtZVRhc2tTaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiwgV2ViQ29yZTo6UGFn
ZUlkZW50aWZpZXIsIFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzJiYpOwotICAgIHZvaWQgbG9hZERh
dGFXaXRoTmF2aWdhdGlvblNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3JlOjpQ
YWdlSWRlbnRpZmllciwgQVBJOjpOYXZpZ2F0aW9uJiwgY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNl
JiwgY29uc3QgU3RyaW5nJiBNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBlbmNvZGluZywgY29uc3Qg
U3RyaW5nJiBiYXNlVVJMLCBBUEk6Ok9iamVjdCogdXNlckRhdGEsIFdlYkNvcmU6OlNob3VsZFRy
ZWF0QXNDb250aW51aW5nTG9hZCwgT3B0aW9uYWw8V2Vic2l0ZVBvbGljaWVzRGF0YT4mJiA9IFdU
Rjo6bnVsbG9wdCwgV2ViQ29yZTo6U2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IFdlYkNv
cmU6OlNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZE5vdEFsbG93KTsKKyAgICB2
b2lkIGxvYWREYXRhV2l0aE5hdmlnYXRpb25TaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiwg
V2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIEFQSTo6TmF2aWdhdGlvbiYsIGNvbnN0IElQQzo6RGF0
YVJlZmVyZW5jZSYsIGNvbnN0IFN0cmluZyYgTUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZW5jb2Rp
bmcsIGNvbnN0IFN0cmluZyYgYmFzZVVSTCwgQVBJOjpPYmplY3QqIHVzZXJEYXRhLCBXZWJDb3Jl
OjpTaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQsIFdlYkNvcmU6OlNob3VsZFRyZWF0QXNDbGll
bnRPclVzZXJJbnB1dCwgT3B0aW9uYWw8V2Vic2l0ZVBvbGljaWVzRGF0YT4mJiA9IFdURjo6bnVs
bG9wdCwgV2ViQ29yZTo6U2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IFdlYkNvcmU6OlNo
b3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZE5vdEFsbG93KTsKICAgICB2b2lkIGxv
YWRSZXF1ZXN0V2l0aE5hdmlnYXRpb25TaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiwgV2Vi
Q29yZTo6UGFnZUlkZW50aWZpZXIsIEFQSTo6TmF2aWdhdGlvbiYsIFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYmLCBXZWJDb3JlOjpTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5LCBBUEk6Ok9i
amVjdCogdXNlckRhdGEsIFdlYkNvcmU6OlNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCwgT3B0
aW9uYWw8V2Vic2l0ZVBvbGljaWVzRGF0YT4mJiA9IFdURjo6bnVsbG9wdCk7CiAgICAgdm9pZCBi
YWNrRm9yd2FyZEdvVG9JdGVtU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYsIGNvbnN0IFdl
YkNvcmU6OkJhY2tGb3J3YXJkSXRlbUlkZW50aWZpZXImLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSYmLCBjb25zdCBXZWJCYWNrRm9yd2FyZExpc3RDb3Vu
dHMmKT4mJik7CiAgICAgdm9pZCBkZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uU3luY1No
YXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIGJv
b2wgaXNNYWluRnJhbWUsIFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYmLCBXZWJDb3JlOjpQ
b2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgTmF2aWdhdGlvbkFj
dGlvbkRhdGEmJiwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHAKaW5kZXggODY4M2MxMDRkYmZhMmMwNWY1ZTg0YjU5NjBmZDY4MmFlMjQ1MWRhZi4uYzFiZjM4
NWRhMzlmZmVmZjY5Y2I4ODllOWRmZjFjZTZkNWFjNGE3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTIyMyw2ICsyMjMsNyBAQAogI2luY2x1
ZGUgPFdlYkNvcmUvU2V0dGluZ3MuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1NoYWRvd1Jvb3QuaD4K
ICNpbmNsdWRlIDxXZWJDb3JlL1NoYXJlZEJ1ZmZlci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvU2hv
dWxkVHJlYXRBc0NsaWVudE9yVXNlcklucHV0Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TdHlsZVBy
b3BlcnRpZXMuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1N1YmZyYW1lTG9hZGVyLmg+CiAjaW5jbHVk
ZSA8V2ViQ29yZS9TdWJzdGl0dXRlRGF0YS5oPgpAQCAtMTYwOSw3ICsxNjEwLDcgQEAgTk9fUkVU
VVJOIHZvaWQgV2ViUGFnZTo6bG9hZFJlcXVlc3RXYWl0aW5nRm9yUHJvY2Vzc0xhdW5jaChMb2Fk
UGFyYW1ldGVycyYmLCBVUkwKICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwogfQog
Ci12b2lkIFdlYlBhZ2U6OmxvYWREYXRhSW1wbCh1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGJvb2wg
c2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLCBPcHRpb25hbDxXZWJzaXRlUG9saWNpZXNEYXRh
PiYmIHdlYnNpdGVQb2xpY2llcywgUmVmPFNoYXJlZEJ1ZmZlcj4mJiBzaGFyZWRCdWZmZXIsIGNv
bnN0IFN0cmluZyYgTUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZW5jb2RpbmdOYW1lLCBjb25zdCBV
UkwmIGJhc2VVUkwsIGNvbnN0IFVSTCYgdW5yZWFjaGFibGVVUkwsIGNvbnN0IFVzZXJEYXRhJiB1
c2VyRGF0YSwgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBzaG91bGRPcGVuRXh0ZXJuYWxV
UkxzUG9saWN5KQordm9pZCBXZWJQYWdlOjpsb2FkRGF0YUltcGwodWludDY0X3QgbmF2aWdhdGlv
bklELCBib29sIHNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCwgV2ViQ29yZTo6U2hvdWxkVHJl
YXRBc0NsaWVudE9yVXNlcklucHV0IHNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dCwgT3B0
aW9uYWw8V2Vic2l0ZVBvbGljaWVzRGF0YT4mJiB3ZWJzaXRlUG9saWNpZXMsIFJlZjxTaGFyZWRC
dWZmZXI+JiYgc2hhcmVkQnVmZmVyLCBjb25zdCBTdHJpbmcmIE1JTUVUeXBlLCBjb25zdCBTdHJp
bmcmIGVuY29kaW5nTmFtZSwgY29uc3QgVVJMJiBiYXNlVVJMLCBjb25zdCBVUkwmIHVucmVhY2hh
YmxlVVJMLCBjb25zdCBVc2VyRGF0YSYgdXNlckRhdGEsIFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQ
b2xpY3kgc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSkKIHsKICAgICBTZW5kU3RvcFJlc3Bv
bnNpdmVuZXNzVGltZXIgc3RvcHBlcjsKIApAQCAtMTYyNyw2ICsxNjI4LDggQEAgdm9pZCBXZWJQ
YWdlOjpsb2FkRGF0YUltcGwodWludDY0X3QgbmF2aWdhdGlvbklELCBib29sIHNob3VsZFRyZWF0
QXNDb250aW51aW5nTG8KICAgICAvLyBJbml0YXRlIHRoZSBsb2FkIGluIFdlYkNvcmUuCiAgICAg
RnJhbWVMb2FkUmVxdWVzdCBmcmFtZUxvYWRSZXF1ZXN0KCptX21haW5GcmFtZS0+Y29yZUZyYW1l
KCksIHJlcXVlc3QsIHNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3ksIHN1YnN0aXR1dGVEYXRh
KTsKICAgICBmcmFtZUxvYWRSZXF1ZXN0LnNldFNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZChz
aG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQpOworICAgIGlmIChzaG91bGRUcmVhdEFzQ2xpZW50
T3JVc2VySW5wdXQgPT0gV2ViQ29yZTo6U2hvdWxkVHJlYXRBc0NsaWVudE9yVXNlcklucHV0OjpZ
ZXMpCisgICAgICAgIGZyYW1lTG9hZFJlcXVlc3Quc2V0SXNSZXF1ZXN0RnJvbUNsaWVudE9yVXNl
cklucHV0KCk7CiAgICAgbV9tYWluRnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5sb2FkKFdU
Rk1vdmUoZnJhbWVMb2FkUmVxdWVzdCkpOwogfQogCkBAIC0xNjM2LDcgKzE2MzksNyBAQCB2b2lk
IFdlYlBhZ2U6OmxvYWREYXRhKExvYWRQYXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRlcnMpCiAKICAg
ICBhdXRvIHNoYXJlZEJ1ZmZlciA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKHJlaW50ZXJwcmV0X2Nh
c3Q8Y29uc3QgY2hhcio+KGxvYWRQYXJhbWV0ZXJzLmRhdGEuZGF0YSgpKSwgbG9hZFBhcmFtZXRl
cnMuZGF0YS5zaXplKCkpOwogICAgIFVSTCBiYXNlVVJMID0gbG9hZFBhcmFtZXRlcnMuYmFzZVVS
TFN0cmluZy5pc0VtcHR5KCkgPyBXVEY6OmJsYW5rVVJMKCkgOiBVUkwoVVJMKCksIGxvYWRQYXJh
bWV0ZXJzLmJhc2VVUkxTdHJpbmcpOwotICAgIGxvYWREYXRhSW1wbChsb2FkUGFyYW1ldGVycy5u
YXZpZ2F0aW9uSUQsIGxvYWRQYXJhbWV0ZXJzLnNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCwg
V1RGTW92ZShsb2FkUGFyYW1ldGVycy53ZWJzaXRlUG9saWNpZXMpLCBXVEZNb3ZlKHNoYXJlZEJ1
ZmZlciksIGxvYWRQYXJhbWV0ZXJzLk1JTUVUeXBlLCBsb2FkUGFyYW1ldGVycy5lbmNvZGluZ05h
bWUsIGJhc2VVUkwsIFVSTCgpLCBsb2FkUGFyYW1ldGVycy51c2VyRGF0YSwgbG9hZFBhcmFtZXRl
cnMuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgbG9hZERhdGFJbXBsKGxvYWRQ
YXJhbWV0ZXJzLm5hdmlnYXRpb25JRCwgbG9hZFBhcmFtZXRlcnMuc2hvdWxkVHJlYXRBc0NvbnRp
bnVpbmdMb2FkLCBsb2FkUGFyYW1ldGVycy5zaG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQs
IFdURk1vdmUobG9hZFBhcmFtZXRlcnMud2Vic2l0ZVBvbGljaWVzKSwgV1RGTW92ZShzaGFyZWRC
dWZmZXIpLCBsb2FkUGFyYW1ldGVycy5NSU1FVHlwZSwgbG9hZFBhcmFtZXRlcnMuZW5jb2RpbmdO
YW1lLCBiYXNlVVJMLCBVUkwoKSwgbG9hZFBhcmFtZXRlcnMudXNlckRhdGEsIGxvYWRQYXJhbWV0
ZXJzLnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOwogfQogCiB2b2lkIFdlYlBhZ2U6Omxv
YWRBbHRlcm5hdGVIVE1MKExvYWRQYXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRlcnMpCkBAIC0xNjQ4
LDcgKzE2NTEsNyBAQCB2b2lkIFdlYlBhZ2U6OmxvYWRBbHRlcm5hdGVIVE1MKExvYWRQYXJhbWV0
ZXJzJiYgbG9hZFBhcmFtZXRlcnMpCiAgICAgVVJMIHByb3Zpc2lvbmFsTG9hZEVycm9yVVJMID0g
bG9hZFBhcmFtZXRlcnMucHJvdmlzaW9uYWxMb2FkRXJyb3JVUkxTdHJpbmcuaXNFbXB0eSgpID8g
VVJMKCkgOiBVUkwoVVJMKCksIGxvYWRQYXJhbWV0ZXJzLnByb3Zpc2lvbmFsTG9hZEVycm9yVVJM
U3RyaW5nKTsKICAgICBhdXRvIHNoYXJlZEJ1ZmZlciA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKHJl
aW50ZXJwcmV0X2Nhc3Q8Y29uc3QgY2hhcio+KGxvYWRQYXJhbWV0ZXJzLmRhdGEuZGF0YSgpKSwg
bG9hZFBhcmFtZXRlcnMuZGF0YS5zaXplKCkpOwogICAgIG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUo
KS0+bG9hZGVyKCkuc2V0UHJvdmlzaW9uYWxMb2FkRXJyb3JCZWluZ0hhbmRsZWRVUkwocHJvdmlz
aW9uYWxMb2FkRXJyb3JVUkwpOyAgICAKLSAgICBsb2FkRGF0YUltcGwobG9hZFBhcmFtZXRlcnMu
bmF2aWdhdGlvbklELCBsb2FkUGFyYW1ldGVycy5zaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQs
IFdURk1vdmUobG9hZFBhcmFtZXRlcnMud2Vic2l0ZVBvbGljaWVzKSwgV1RGTW92ZShzaGFyZWRC
dWZmZXIpLCBsb2FkUGFyYW1ldGVycy5NSU1FVHlwZSwgbG9hZFBhcmFtZXRlcnMuZW5jb2RpbmdO
YW1lLCBiYXNlVVJMLCB1bnJlYWNoYWJsZVVSTCwgbG9hZFBhcmFtZXRlcnMudXNlckRhdGEpOwor
ICAgIGxvYWREYXRhSW1wbChsb2FkUGFyYW1ldGVycy5uYXZpZ2F0aW9uSUQsIGxvYWRQYXJhbWV0
ZXJzLnNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCwgbG9hZFBhcmFtZXRlcnMuc2hvdWxkVHJl
YXRBc0NsaWVudE9yVXNlcklucHV0LCBXVEZNb3ZlKGxvYWRQYXJhbWV0ZXJzLndlYnNpdGVQb2xp
Y2llcyksIFdURk1vdmUoc2hhcmVkQnVmZmVyKSwgbG9hZFBhcmFtZXRlcnMuTUlNRVR5cGUsIGxv
YWRQYXJhbWV0ZXJzLmVuY29kaW5nTmFtZSwgYmFzZVVSTCwgdW5yZWFjaGFibGVVUkwsIGxvYWRQ
YXJhbWV0ZXJzLnVzZXJEYXRhKTsKICAgICBtX21haW5GcmFtZS0+Y29yZUZyYW1lKCktPmxvYWRl
cigpLnNldFByb3Zpc2lvbmFsTG9hZEVycm9yQmVpbmdIYW5kbGVkVVJMKHsgfSk7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAppbmRleCBiMzMxMTNkYzhi
ZGYxMjNlMWZhNjQyMTJlNWRkZDdkNDM1Njc1M2Y1Li40NGIxYjc1NjU3ZmJiOTNjYTMxZGZlZDBk
ODRkOTJlM2NhODAyZjZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMC0yMDE5IEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMC0yMDIw
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwpAQCAtMTkwLDYgKzE5MCw3IEBAIGNsYXNzIFZpc2libGVQb3NpdGlvbjsKIGVudW0g
U3ludGhldGljQ2xpY2tUeXBlIDogaW50OF90OwogZW51bSBjbGFzcyBET01QYXN0ZUFjY2Vzc1Jl
c3BvbnNlIDogdWludDhfdDsKIGVudW0gY2xhc3MgRHJhZ0hhbmRsaW5nTWV0aG9kIDogdWludDhf
dDsKK2VudW0gY2xhc3MgU2hvdWxkVHJlYXRBc0NsaWVudE9yVXNlcklucHV0IDogYm9vbDsKIGVu
dW0gY2xhc3MgU2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkIDogYm9vbDsKIGVudW0gY2xhc3Mg
U3RvcmFnZUFjY2Vzc1Byb21wdFdhc1Nob3duIDogYm9vbDsKIGVudW0gY2xhc3MgU3RvcmFnZUFj
Y2Vzc1dhc0dyYW50ZWQgOiBib29sOwpAQCAtMTM3NSw3ICsxMzc2LDcgQEAgcHJpdmF0ZToKIAog
ICAgIFN0cmluZyBzb3VyY2VGb3JGcmFtZShXZWJGcmFtZSopOwogCi0gICAgdm9pZCBsb2FkRGF0
YUltcGwodWludDY0X3QgbmF2aWdhdGlvbklELCBib29sIHNob3VsZFRyZWF0QXNDb250aW51aW5n
TG9hZCwgT3B0aW9uYWw8V2Vic2l0ZVBvbGljaWVzRGF0YT4mJiwgUmVmPFdlYkNvcmU6OlNoYXJl
ZEJ1ZmZlcj4mJiwgY29uc3QgU3RyaW5nJiBNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBlbmNvZGlu
Z05hbWUsIGNvbnN0IFVSTCYgYmFzZVVSTCwgY29uc3QgVVJMJiBmYWlsaW5nVVJMLCBjb25zdCBV
c2VyRGF0YSYsIFdlYkNvcmU6OlNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBXZWJDb3Jl
OjpTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RBbGxvdyk7CisgICAgdm9p
ZCBsb2FkRGF0YUltcGwodWludDY0X3QgbmF2aWdhdGlvbklELCBib29sIHNob3VsZFRyZWF0QXND
b250aW51aW5nTG9hZCwgV2ViQ29yZTo6U2hvdWxkVHJlYXRBc0NsaWVudE9yVXNlcklucHV0LCBP
cHRpb25hbDxXZWJzaXRlUG9saWNpZXNEYXRhPiYmLCBSZWY8V2ViQ29yZTo6U2hhcmVkQnVmZmVy
PiYmLCBjb25zdCBTdHJpbmcmIE1JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGVuY29kaW5nTmFtZSwg
Y29uc3QgVVJMJiBiYXNlVVJMLCBjb25zdCBVUkwmIGZhaWxpbmdVUkwsIGNvbnN0IFVzZXJEYXRh
JiwgV2ViQ29yZTo6U2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IFdlYkNvcmU6OlNob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZE5vdEFsbG93KTsKIAogICAgIC8vIEFjdGlv
bnMKICAgICB2b2lkIHRyeUNsb3NlKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOwpk
aWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDQ2ZTEz
NDBkNzVhNWM3ZjU0ZGQ3YTViMDM2MTRhNDg0MzZjMmE5NTguLmZhM2M4NzRjYjFmNDIwNmFlZWIy
OTEzYTBiYzFhODk0NDk4NmJkMGMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9U
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAyMC0wMi0xOCAgQnJlbnQgRnVsZ2hh
bSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KKworICAgICAgICBSZWNvZ25pemUgV0tQYWdlIGFuZCBX
S1dlYlZpZXcgY2FsbHMgYXMgZ2VuZXJhdGVkIGJ5IGNsaWVudCBBUEkgdXNlCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc5MTcKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzU2NzcwNjc2PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFJlbW92ZSB1bm5lZWRlZCBleHBsaWNpdCBvcHQtaW4gdG8gZGF0YSBV
UkwgbG9hZGluZyBmb3IgcmVsZXZhbnQgdGVzdHMuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdENvY29hL05hdmlnYXRpb24ubW06CisgICAgICAgIChURVNUKToKKwogMjAy
MC0wMi0xNyAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBV
cGRhdGUgV2ViS2l0IFRvb2xzIHRvIGlzc3VlIG1hY2ggZXh0ZW5zaW9ucyBhcyBuZWVkZWQKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvTmF2aWdhdGlv
bi5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvTmF2aWdhdGlvbi5t
bQppbmRleCBiMTFjZjljZWIyNjBjMWZjNzdlMTc3NmU5NzIwYjExMWEzZDE5ODkzLi4xNGQ0YWI3
YThiZDhhZGYyYmNjZjQ3YTVjZDYyYmIwYzIxODhiNTRhIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL05hdmlnYXRpb24ubW0KKysrIGIvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9OYXZpZ2F0aW9uLm1tCkBAIC0yNzUsNyArMjc1
LDYgQEAgVEVTVChXS05hdmlnYXRpb24sIE5hdmlnYXRpb25BY3Rpb25IYXNOYXZpZ2F0aW9uKQog
VEVTVChXS05hdmlnYXRpb24sIFdlYlZpZXdXaWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0KQogewog
ICAgIGF1dG8gY29uZmlndXJhdGlvbiA9IGFkb3B0TlMoW1tXS1dlYlZpZXdDb25maWd1cmF0aW9u
IGFsbG9jXSBpbml0XSk7Ci0gICAgY29uZmlndXJhdGlvbi5nZXQoKS5fYWxsb3dUb3BOYXZpZ2F0
aW9uVG9EYXRhVVJMcyA9IFlFUzsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbV0tXZWJW
aWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApIGNvbmZp
Z3VyYXRpb246Y29uZmlndXJhdGlvbi5nZXQoKV0pOwogCiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFk
b3B0TlMoW1tDbGllbnRSZWRpcmVjdE5hdmlnYXRpb25EZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwpA
QCAtMzA2LDcgKzMwNSw2IEBAIFRFU1QoV0tOYXZpZ2F0aW9uLCBXZWJWaWV3V2lsbFBlcmZvcm1D
bGllbnRSZWRpcmVjdCkKIFRFU1QoV0tOYXZpZ2F0aW9uLCBXZWJWaWV3RGlkQ2FuY2VsQ2xpZW50
UmVkaXJlY3QpCiB7CiAgICAgYXV0byBjb25maWd1cmF0aW9uID0gYWRvcHROUyhbW1dLV2ViVmll
d0NvbmZpZ3VyYXRpb24gYWxsb2NdIGluaXRdKTsKLSAgICBjb25maWd1cmF0aW9uLmdldCgpLl9h
bGxvd1RvcE5hdmlnYXRpb25Ub0RhdGFVUkxzID0gWUVTOwogICAgIGF1dG8gd2ViVmlldyA9IGFk
b3B0TlMoW1tXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4
MDAsIDYwMCkgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uLmdldCgpXSk7CiAKICAgICBhdXRv
IGRlbGVnYXRlID0gYWRvcHROUyhbW0NsaWVudFJlZGlyZWN0TmF2aWdhdGlvbkRlbGVnYXRlIGFs
bG9jXSBpbml0XSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>391108</attachid>
            <date>2020-02-18 15:29:27 -0800</date>
            <delta_ts>2020-02-18 16:01:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207917-20200218152926.patch</filename>
            <type>text/plain</type>
            <size>31294</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2ODU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTc5MWYyZGNiMjM4OWQ2
MDRiMmMwMTk1NDIyYzE1NTk3ZmEwNTc0Ny4uODJjNGZiYTk3NGM1M2M0MTQ2MWI1NzQ4MjFkZmUx
ZGFjNWU1NGJkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTAyLTE4ICBCcmVu
dCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFJlY29nbml6ZSBXS1Bh
Z2UgYW5kIFdLV2ViVmlldyBjYWxscyBhcyBnZW5lcmF0ZWQgYnkgY2xpZW50IEFQSSB1c2UKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzkxNworICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vNTY3NzA2NzY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQ2FsbHMgdG8gV0tQYWdlIGFuZCBXS1dlYlZpZXcgQVBJ
IHVzZWQgdG8gbG9hZCBkYXRhIGFuZCBzdHJpbmdzIGRpcmVjdGx5IHNob3VsZCBiZSByZWNvZ25p
emVkIGJ5CisgICAgICAgIHRoZSBsb2FkaW5nIGNvZGUgYXMgYmVpbmcgZnJvbSBjbGllbnQgQVBJ
IGNhbGxzLiBUaGlzIGJyaW5ncyB0aGVzZSBBUEkgYmVoYXZpb3JzIGludG8gYWxpZ25tZW50Cisg
ICAgICAgIHdpdGggc2ltaWxhciBBUEkgZm9yIGxvYWRpbmcgVVJMcyBhbmQgVVJMUmVxdWVzdHMg
ZGlyZWN0bHkuIFRoaXMgY2hhbmdlIGFsc28gYWxsb3dzIHVzIHRvIGVuZm9yY2UKKyAgICAgICAg
c3RyaWN0ZXIgaGFuZGxpbmcgb2YgRGF0YSBVUkxzLCBhbmQgdG8gcmVtb3ZlIHRoZSBuZWVkIHRv
IGV4cGxpY2l0bHkgcGVybWl0IHRvcC1sZXZlbCBkYXRhIFVSTAorICAgICAgICBuYXZpZ2F0aW9u
IHdoZW4gY2xpZW50IEFQSXMgYXJlIHVzZWQuCisKKyAgICAgICAgVGVzdGVkIGJ5IFRlc3RXZWJL
aXRBUEkgTmF2aWdhdGlvbiB0ZXN0cy4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6IEFkZCBu
ZXcgZmlsZS4KKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFk
ZCBuZXcgZmlsZS4KKyAgICAgICAgKiBsb2FkZXIvU2hvdWxkVHJlYXRBc0NsaWVudE9yVXNlcklu
cHV0Lmg6IEFkZGVkLgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MueWFtbDoKKwogMjAyMC0wMi0x
OCAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBbbWFj
T1NdIFdlYiBwcm9jZXNzIG1heSBjcmFzaCB1bmRlciBTZXJ2aWNlc092ZXJsYXlDb250cm9sbGVy
OjpidWlsZFBvdGVudGlhbEhpZ2hsaWdodHNJZk5lZWRlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA5ZDViMmI4ODc1
YmI2ODhhNDI4NWNhYWFiMzA0MDI5ZjljOTUwMWUyLi41NWI1NDM5NjRhNTkxZGNmMmRlOTBhZWM1
MmZhYzM0NDRiZGVkZjA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDIwLTAyLTE4ICBC
cmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFJlY29nbml6ZSBX
S1BhZ2UgYW5kIFdLV2ViVmlldyBjYWxscyBhcyBnZW5lcmF0ZWQgYnkgY2xpZW50IEFQSSB1c2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzkxNwor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTY3NzA2NzY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ2FsbHMgdG8gV0tQYWdlIGFuZCBXS1dlYlZpZXcg
QVBJIHVzZWQgdG8gbG9hZCBkYXRhIGFuZCBzdHJpbmdzIGRpcmVjdGx5IHNob3VsZCBiZSByZWNv
Z25pemVkIGJ5CisgICAgICAgIHRoZSBsb2FkaW5nIGNvZGUgYXMgYmVpbmcgZnJvbSBjbGllbnQg
QVBJIGNhbGxzLiBUaGlzIGJyaW5ncyB0aGVzZSBBUEkgYmVoYXZpb3JzIGludG8gYWxpZ25tZW50
CisgICAgICAgIHdpdGggc2ltaWxhciBBUEkgZm9yIGxvYWRpbmcgVVJMcyBhbmQgVVJMUmVxdWVz
dHMgZGlyZWN0bHkuIFRoaXMgY2hhbmdlIGFsc28gYWxsb3dzIHVzIHRvIGVuZm9yY2UKKyAgICAg
ICAgc3RyaWN0ZXIgaGFuZGxpbmcgb2YgRGF0YSBVUkxzLCBhbmQgdG8gcmVtb3ZlIHRoZSBuZWVk
IHRvIGV4cGxpY2l0bHkgcGVybWl0IHRvcC1sZXZlbCBkYXRhIFVSTAorICAgICAgICBuYXZpZ2F0
aW9uIHdoZW4gY2xpZW50IEFQSXMgYXJlIHVzZWQuCisKKyAgICAgICAgKiBTaGFyZWQvTG9hZFBh
cmFtZXRlcnMuY3BwOgorICAgICAgICAoV2ViS2l0OjpMb2FkUGFyYW1ldGVyczo6ZW5jb2RlIGNv
bnN0KTogU2VyaWFsaXplIGZsYWcgaW5kaWNhdGluZyBsb2FkIGlzIGR1ZSB0byBjbGllbnQgQVBJ
IHVzZS4KKyAgICAgICAgKFdlYktpdDo6TG9hZFBhcmFtZXRlcnM6OmRlY29kZSk6IERpdHRvLgor
ICAgICAgICAqIFNoYXJlZC9Mb2FkUGFyYW1ldGVycy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5tbToKKyAgICAgICAgKC1bV0tXZWJWaWV3
Q29uZmlndXJhdGlvbiBpbml0XSk6CisgICAgICAgICogVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFn
ZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UHJvdmlzaW9uYWxQYWdlUHJveHk6OmxvYWRE
YXRhKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdl
YktpdDo6V2ViUGFnZVByb3h5Ojpsb2FkRGF0YSk6IFJlY29nbml6ZSBkaXJlY3QgZGF0YSBsb2Fk
cyBzdGFydGVkIGZyb20gY2xpZW50IEFQSS4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5
Ojpsb2FkRGF0YVdpdGhOYXZpZ2F0aW9uU2hhcmVkKTogRGl0dG8uCisgICAgICAgICogVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdl
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6bG9hZERhdGFJbXBsKTogUmVjb2duaXpl
IGRpcmVjdCBkYXRhIGxvYWRzIHN0YXJ0ZWQgZnJvbSBjbGllbnQgQVBJLgorICAgICAgICAoV2Vi
S2l0OjpXZWJQYWdlOjpsb2FkRGF0YSk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdl
Ojpsb2FkQWx0ZXJuYXRlSFRNTCk6IERpdHRvLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmg6CisKIDIwMjAtMDItMTggIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBh
cHBsZS5jb20+CiAKICAgICAgICAgW21hY09TXSBXZWIgcHJvY2VzcyBtYXkgY3Jhc2ggdW5kZXIg
U2VydmljZXNPdmVybGF5Q29udHJvbGxlcjo6YnVpbGRQb3RlbnRpYWxIaWdobGlnaHRzSWZOZWVk
ZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UgYi9Tb3VyY2UvV2Vi
Q29yZS9IZWFkZXJzLmNtYWtlCmluZGV4IGVkMDdiMDMyZTM3YmJjYWVlNTQ5Y2ExOTM0ZDBiZDJk
OTY5MWQ3MDYuLmQyZGQ2NGEzZjYyZjg2ZWU2Mzk0NWRiYjg3YTQ3NDAzMDdiOTNjZjcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUv
SGVhZGVycy5jbWFrZQpAQCAtNzMyLDYgKzczMiw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJB
TUVXT1JLX0hFQURFUlMKICAgICBsb2FkZXIvUmVzb3VyY2VMb2FkZXJPcHRpb25zLmgKICAgICBs
b2FkZXIvUmVzb3VyY2VMb2FkZXJUeXBlcy5oCiAgICAgbG9hZGVyL1Jlc291cmNlVGltaW5nSW5m
b3JtYXRpb24uaAorICAgIGxvYWRlci9TaG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQuaAog
ICAgIGxvYWRlci9TaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQuaAogICAgIGxvYWRlci9TdWJm
cmFtZUxvYWRlci5oCiAgICAgbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmgKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBmMjBkNTJm
NWYyOTAzNTg1ZTRmOGZiZTg4OTlhNjBiMjQ0MTk3ZTdjLi40YTc4ZmUyNWViMDA0M2JkYjU5ZTA0
ZmYzNjZkMzRjMmNjMmMzNjNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yMTg3LDYgKzIxODcsNyBAQAogCQk3QUEzQTZBNDE5
NEI1QzIyMDAxQ0JEMjQgLyogVGlsZUNvdmVyYWdlTWFwLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QUEzQTZBMjE5NEI1QzIyMDAxQ0JEMjQgLyogVGls
ZUNvdmVyYWdlTWFwLmggKi87IH07CiAJCTdBQUJBMjVBMTRCQzYxMzMwMEFBOUExMSAvKiBET01F
ZGl0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdB
QUJBMjU4MTRCQzYxMzMwMEFBOUExMSAvKiBET01FZGl0b3IuaCAqLzsgfTsKIAkJN0FBRkU4RDAx
OUNCODY3MjAwMEY1NkQ4IC8qIFNjcm9sbExhdGNoaW5nU3RhdGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBQUZFOENFMTlDQjg2NzIwMDBGNTZEOCAv
KiBTY3JvbGxMYXRjaGluZ1N0YXRlLmggKi87IH07CisJCTdBQjAxNzNGMjNGQjczMkYwMDJGODM2
NiAvKiBTaG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBQjAxNzNEMjNGQjczMTEwMDJGODM2NiAvKiBT
aG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk3QURFNzIyNjEwQ0JCQjlCMDA2QjNCM0EgLyogQ29u
dGV4dE1lbnVQcm92aWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gN0FERTcyMjUxMENCQkI5QjAwNkIzQjNBIC8qIENvbnRleHRNZW51UHJvdmlkZXIu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk3QUUz
MzVGMjFBQ0IwOUUyMDBFNDAxRUYgLyogV2hlZWxFdmVudFRlc3RNb25pdG9yLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QUUzMzVGMDFBQ0IwOUUyMDBF
NDAxRUYgLyogV2hlZWxFdmVudFRlc3RNb25pdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJN0FFNkM5M0MxQkUwQzYwMTAwRTE5RTAzIC8qIE1h
aW5UaHJlYWRTaGFyZWRUaW1lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gN0FFNkM5M0ExQkUwQzYwMTAwRTE5RTAzIC8qIE1haW5UaHJlYWRTaGFyZWRU
aW1lci5oICovOyB9OwpAQCAtOTcwOCw2ICs5NzA5LDcgQEAKIAkJN0FBQkEyNTgxNEJDNjEzMzAw
QUE5QTExIC8qIERPTUVkaXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
T01FZGl0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0FBRkU4Q0QxOUNCODY3
MjAwMEY1NkQ4IC8qIFNjcm9sbExhdGNoaW5nU3RhdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xsTGF0Y2hpbmdTdGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTdBQUZFOENFMTlDQjg2NzIwMDBGNTZEOCAvKiBTY3JvbGxMYXRjaGlu
Z1N0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbExhdGNoaW5n
U3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0FCMDE3M0QyM0ZCNzMxMTAw
MkY4MzY2IC8qIFNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTaG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJN0FERTcyMjUxMENCQkI5QjAwNkIzQjNBIC8qIENvbnRleHRNZW51UHJvdmlkZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGV4dE1lbnVQcm92aWRlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QUUzMzVFRjFBQ0IwOUUyMDBFNDAxRUYg
LyogV2hlZWxFdmVudFRlc3RNb25pdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFdoZWVsRXZlbnRUZXN0TW9uaXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTdBRTMzNUYwMUFDQjA5RTIwMEU0MDFFRiAvKiBXaGVlbEV2ZW50VGVzdE1vbml0
b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2hlZWxFdmVudFRlc3RNb25p
dG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0yNTc1MCw2ICsyNTc1Miw3IEBA
CiAJCQkJMjg2RTREQ0MyMDIxMDQ4ODAwMzE1MjM4IC8qIFNlcnZlclRpbWluZy5oICovLAogCQkJ
CUE1MkQ4NUNBMjFCMDk4MkYwMDYxQzFFQiAvKiBTZXJ2ZXJUaW1pbmdQYXJzZXIuY3BwICovLAog
CQkJCUE1MkQ4NUNCMjFCMDk4MzAwMDYxQzFFQiAvKiBTZXJ2ZXJUaW1pbmdQYXJzZXIuaCAqLywK
KwkJCQk3QUIwMTczRDIzRkI3MzExMDAyRjgzNjYgLyogU2hvdWxkVHJlYXRBc0NsaWVudE9yVXNl
cklucHV0LmggKi8sCiAJCQkJODM2MkU4QkYyMENFRjlDQjAwMjQ1ODg2IC8qIFNob3VsZFRyZWF0
QXNDb250aW51aW5nTG9hZC5oICovLAogCQkJCTUxMzI3RDVGMTFBMzNBMkIwMDRGOUQ2NSAvKiBT
aW5rRG9jdW1lbnQuY3BwICovLAogCQkJCTUxMzI3RDVFMTFBMzNBMkIwMDRGOUQ2NSAvKiBTaW5r
RG9jdW1lbnQuaCAqLywKQEAgLTI5NjcwLDYgKzI5NjczLDcgQEAKIAkJCQlBODE4NUY0MDA5NzY1
NzY2MDA1ODI2RDkgLyogRG9jdW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4MTg1RjNEMDk3
NjU3NjYwMDU4MjZEOSAvKiBEb2N1bWVudEZyYWdtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlD
RDkyRjUxMzIyNjBGRkVFMDBGODdCQjMgLyogRG9jdW1lbnRGdWxsc2NyZWVuLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk0MTgyNkJGMjIzRkI1OTc3MDBCOTIyQjEgLyogRG9jdW1lbnRJZGVudGlmaWVy
LmggaW4gSGVhZGVycyAqLywKIAkJCQk2NTZEMzczNjBBREJBNURFMDBBNDU1NEQgLyogRG9jdW1l
bnRMb2FkZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUVEMkJBODNDMDlBMjRCOTEwMDZDMEFDNCAv
KiBEb2N1bWVudE1hcmtlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0UwNTdGQTYxMjIwNzMxMTAw
QTQ3NkQ1IC8qIERvY3VtZW50TWFya2VyQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCkBAIC0z
MDU0MCw3ICszMDU0NCw2IEBACiAJCQkJOTQ3OTQ5MzgxRTA0NTlGQTAwMDE4RDg1IC8qIEpTRGVw
cmVjYXRlZENTU09NVmFsdWUuaCBpbiBIZWFkZXJzICovLAogCQkJCTk0Nzk0OTNBMUUwNDU5RkEw
MDAxOEQ4NSAvKiBKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMzFGQjFBNjYxMjBBNUQzRjAwREMwMkEwIC8qIEpTRGV2aWNlTW90aW9uRXZlbnQuaCBpbiBI
ZWFkZXJzICovLAotCQkJCTQxODI2QkYyMjNGQjU5NzcwMEI5MjJCMSAvKiBEb2N1bWVudElkZW50
aWZpZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTU5QTg2MDA4MTE5REFGQTEwMERFRjFFRiAvKiBK
U0RldmljZU9yaWVudGF0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTY1OUREQzgzMDlF
MTk4QkEwMDFCRjNDNiAvKiBKU0RvY3VtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlBRERBOTRD
MjE5Njg3QUE1MDA0NTMwMjkgLyogSlNEb2N1bWVudEN1c3RvbS5oIGluIEhlYWRlcnMgKi8sCkBA
IC0zMjI5NSw2ICszMjI5OCw3IEBACiAJCQkJMUE0QTk1NEUwQjRFRENDQjAwMkQ4QzNDIC8qIFNo
YXJlZEJ1ZmZlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODM0REZBRDAxRjdEQUU1RDAwQzI3MjVC
IC8qIFNoYXJlZFN0cmluZ0hhc2guaCBpbiBIZWFkZXJzICovLAogCQkJCTkzMzA5RUEzMDk5RUI3
OEMwMDU2RTU4MSAvKiBTaGFyZWRUaW1lci5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0FCMDE3M0Yy
M0ZCNzMyRjAwMkY4MzY2IC8qIFNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dC5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJODM2MkU4QzEyMENFRjlDQjAwMjQ1ODg2IC8qIFNob3VsZFRyZWF0QXND
b250aW51aW5nTG9hZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTQ4OTQ0QTMxODBCNTdEODAwRjE2
NUQ4IC8qIFNpbXBsZUxpbmVMYXlvdXQuaCBpbiBIZWFkZXJzICovLAogCQkJCTExRTA2N0VFMUU2
MjQ2RTUwMDE2MkQxNiAvKiBTaW1wbGVMaW5lTGF5b3V0Q292ZXJhZ2UuaCBpbiBIZWFkZXJzICov
LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Nob3VsZFRyZWF0QXNDbGllbnRP
clVzZXJJbnB1dC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Nob3VsZFRyZWF0QXNDbGllbnRP
clVzZXJJbnB1dC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ0MjJmMGMwMWEwNmVmZTJkNDU1ZTNlY2M3Y2Y4NTdk
MTRhOGQyOTMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU2hvdWxk
VHJlYXRBc0NsaWVudE9yVXNlcklucHV0LmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KKworbmFtZXNwYWNlIFdl
YkNvcmUgeworCitlbnVtIGNsYXNzIFNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dCA6IGJv
b2wgeyBObywgWWVzIH07CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworbmFtZXNwYWNlIFdU
RiB7CisKK3RlbXBsYXRlPD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6U2hvdWxkVHJlYXRB
c0NsaWVudE9yVXNlcklucHV0PiB7CisgICAgdXNpbmcgdmFsdWVzID0gRW51bVZhbHVlczwKKyAg
ICAgICAgV2ViQ29yZTo6U2hvdWxkVHJlYXRBc0NsaWVudE9yVXNlcklucHV0LAorICAgICAgICBX
ZWJDb3JlOjpTaG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQ6Ok5vLAorICAgICAgICBXZWJD
b3JlOjpTaG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQ6OlllcworICAgID47Cit9OworCit9
IC8vIG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGlu
Z3MueWFtbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MueWFtbAppbmRleCBjMjExM2Qx
ZGM0ZTdiMDRjNjFlOTIwMDU0MGNlMGI4ZTM2ZDFhOWE2Li5hNmQzNDI4ZDdkYTNkYmVkYWYwMTMw
MjhhNDQ5MTI3NTE1NzRiNWI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRp
bmdzLnlhbWwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy55YW1sCkBAIC0xMDgs
NyArMTA4LDcgQEAgYWxsb3dTZXR0aW5nQW55WEhSSGVhZGVyRnJvbUZpbGVVUkxzOgogYWxsb3dD
cm9zc09yaWdpblN1YnJlc291cmNlc1RvQXNrRm9yQ3JlZGVudGlhbHM6CiAgIGluaXRpYWw6IGZh
bHNlCiBhbGxvd1RvcE5hdmlnYXRpb25Ub0RhdGFVUkxzOgotICBpbml0aWFsOiB0cnVlCisgIGlu
aXRpYWw6IGZhbHNlCiBuZWVkc1N0b3JhZ2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWlyazoKICAgaW5p
dGlhbDogdHJ1ZQogbmVlZHNGcmFtZU5hbWVGYWxsYmFja1RvSWRRdWlyazoKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0xvYWRQYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL0xvYWRQYXJhbWV0ZXJzLmNwcAppbmRleCAwODgxYjkwYmVhZTNiYzU3ZjAyYTMyOTI1
YjJiYjAyNzE5NGQyZmY1Li4zZGUyZmM0ZGQ4N2QzMzVhOWRkYzhlZDEwNWM3NGQ2MTIzYjE4NjU2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Mb2FkUGFyYW1ldGVycy5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9TaGFyZWQvTG9hZFBhcmFtZXRlcnMuY3BwCkBAIC0xLDUgKzEsNSBA
QAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTUxLDYgKzUxLDcgQEAg
dm9pZCBMb2FkUGFyYW1ldGVyczo6ZW5jb2RlKElQQzo6RW5jb2RlciYgZW5jb2RlcikgY29uc3QK
ICAgICBlbmNvZGVyIDw8IHByb3Zpc2lvbmFsTG9hZEVycm9yVVJMU3RyaW5nOwogICAgIGVuY29k
ZXIgPDwgd2Vic2l0ZVBvbGljaWVzOwogICAgIGVuY29kZXIgPDwgc2hvdWxkT3BlbkV4dGVybmFs
VVJMc1BvbGljeTsKKyAgICBlbmNvZGVyIDw8IHNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1
dDsKICAgICBlbmNvZGVyIDw8IHNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZDsKICAgICBlbmNv
ZGVyIDw8IHVzZXJEYXRhOwogICAgIGVuY29kZXIuZW5jb2RlRW51bShsb2NrSGlzdG9yeSk7CkBA
IC0xMTUsNiArMTE2LDkgQEAgYm9vbCBMb2FkUGFyYW1ldGVyczo6ZGVjb2RlKElQQzo6RGVjb2Rl
ciYgZGVjb2RlciwgTG9hZFBhcmFtZXRlcnMmIGRhdGEpCiAgICAgaWYgKCFkZWNvZGVyLmRlY29k
ZShkYXRhLnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpKQogICAgICAgICByZXR1cm4gZmFs
c2U7CiAKKyAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGRhdGEuc2hvdWxkVHJlYXRBc0NsaWVudE9y
VXNlcklucHV0KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIAogICAgIGlmICghZGVjb2Rl
ci5kZWNvZGUoZGF0YS5zaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQpKQogICAgICAgICByZXR1
cm4gZmFsc2U7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0xvYWRQYXJhbWV0
ZXJzLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Mb2FkUGFyYW1ldGVycy5oCmluZGV4IGI1ZDJk
Mjg4Y2ZjZTAxMzVjZjhhNGQxOGM4Y2ViMTY2ZmM0NDI4MWEuLjM5YzIxOGZjM2YwZWJlMmE1ZjFm
NzJmYjZkYzk1ODE2ZjA0MjA2MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0xv
YWRQYXJhbWV0ZXJzLmgKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvTG9hZFBhcmFtZXRlcnMu
aApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTYgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDE2LTIwMjAgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBA
IC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSAiV2Vic2l0ZVBvbGljaWVzRGF0YS5oIgogI2luY2x1
ZGUgPFdlYkNvcmUvRnJhbWVMb2FkZXJUeXBlcy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3Vy
Y2VSZXF1ZXN0Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9TaG91bGRUcmVhdEFzQ2xpZW50T3JVc2Vy
SW5wdXQuaD4KIAogT0JKQ19DTEFTUyBOU0RpY3Rpb25hcnk7CiAKQEAgLTY1LDYgKzY2LDcgQEAg
c3RydWN0IExvYWRQYXJhbWV0ZXJzIHsKIAogICAgIFdlYkNvcmU6OlNob3VsZE9wZW5FeHRlcm5h
bFVSTHNQb2xpY3kgc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSB7IFdlYkNvcmU6OlNob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZE5vdEFsbG93IH07CiAgICAgYm9vbCBzaG91
bGRUcmVhdEFzQ29udGludWluZ0xvYWQgeyBmYWxzZSB9OworICAgIFdlYkNvcmU6OlNob3VsZFRy
ZWF0QXNDbGllbnRPclVzZXJJbnB1dCBzaG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQgeyBX
ZWJDb3JlOjpTaG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQ6Ok5vIH07CiAgICAgVXNlckRh
dGEgdXNlckRhdGE7CiAgICAgV2ViQ29yZTo6TG9ja0hpc3RvcnkgbG9ja0hpc3RvcnkgeyBXZWJD
b3JlOjpMb2NrSGlzdG9yeTo6Tm8gfTsKICAgICBXZWJDb3JlOjpMb2NrQmFja0ZvcndhcmRMaXN0
IGxvY2tCYWNrRm9yd2FyZExpc3QgeyBXZWJDb3JlOjpMb2NrQmFja0ZvcndhcmRMaXN0OjpObyB9
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmll
d0NvbmZpZ3VyYXRpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tX
ZWJWaWV3Q29uZmlndXJhdGlvbi5tbQppbmRleCBhZDkxMDlhZjM0Y2ViMzM1NWYwNzYxMWQ5NzAw
NWY2MzFkOTE2YTZmLi5mZDIzOTc4OTAzZTNjOWNjZTY3OGUwZDgxODc4M2UwYzBiNzhjNjcwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29u
ZmlndXJhdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tX
ZWJWaWV3Q29uZmlndXJhdGlvbi5tbQpAQCAtMjM2LDcgKzIzNiw3IEBAIHN0YXRpYyBib29sIGRl
ZmF1bHRTaG91bGREZWNpZGVQb2xpY3lCZWZvcmVMb2FkaW5nUXVpY2tMb29rUHJldmlldygpCiAg
ICAgX2NvbnZlcnRzUG9zaXRpb25TdHlsZU9uQ29weSA9IE5POwogICAgIF9hbGxvd3NNZXRhUmVm
cmVzaCA9IFlFUzsKICAgICBfYWxsb3dVbml2ZXJzYWxBY2Nlc3NGcm9tRmlsZVVSTHMgPSBOTzsK
LSAgICBfYWxsb3dUb3BOYXZpZ2F0aW9uVG9EYXRhVVJMcyA9IFlFUzsKKyAgICBfYWxsb3dUb3BO
YXZpZ2F0aW9uVG9EYXRhVVJMcyA9IE5POwogICAgIF9uZWVkc1N0b3JhZ2VBY2Nlc3NGcm9tRmls
ZVVSTHNRdWlyayA9IFlFUzsKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5jcHAKaW5kZXggM2RhYWNk
MDFlYmU5NjVjMTUwMzEwNDEzNjUwNTEwMmYwY2M4NGFmNS4uNGIwZDk0YzRmNjIwODNiNDQ3MjY2
YTg4YThiMjZhOGNmOGY5OWM4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
UHJvdmlzaW9uYWxQYWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1By
b3Zpc2lvbmFsUGFnZVByb3h5LmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMTkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDE5LTIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCkBAIC00NSw2ICs0NSw3IEBACiAjaW5jbHVkZSAiV2ViUHJvY2Vz
c01lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzc1Bvb2wuaCIKICNpbmNsdWRlICJXZWJQ
cm9jZXNzUHJveHkuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL1Nob3VsZFRyZWF0QXNDbGllbnRPclVz
ZXJJbnB1dC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2Fk
Lmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewpAQCAtMTUyLDcgKzE1Myw3IEBAIHZvaWQgUHJvdmlz
aW9uYWxQYWdlUHJveHk6OmxvYWREYXRhKEFQSTo6TmF2aWdhdGlvbiYgbmF2aWdhdGlvbiwgY29u
c3QgSVBDOjpEYXRhCiB7CiAgICAgUkVMRUFTRV9MT0dfSUZfQUxMT1dFRChQcm9jZXNzU3dhcHBp
bmcsICJsb2FkRGF0YTogcGFnZVByb3h5SUQ9JSIgUFJJdTY0ICIgd2ViUGFnZUlEPSUiIFBSSXU2
NCwgbV9wYWdlLmlkZW50aWZpZXIoKS50b1VJbnQ2NCgpLCBtX3dlYlBhZ2VJRC50b1VJbnQ2NCgp
KTsKIAotICAgIG1fcGFnZS5sb2FkRGF0YVdpdGhOYXZpZ2F0aW9uU2hhcmVkKG1fcHJvY2Vzcy5j
b3B5UmVmKCksIG1fd2ViUGFnZUlELCBuYXZpZ2F0aW9uLCBkYXRhLCBNSU1FVHlwZSwgZW5jb2Rp
bmcsIGJhc2VVUkwsIHVzZXJEYXRhLCBXZWJDb3JlOjpTaG91bGRUcmVhdEFzQ29udGludWluZ0xv
YWQ6OlllcywgV1RGTW92ZSh3ZWJzaXRlUG9saWNpZXMpLCBuYXZpZ2F0aW9uLmxhc3ROYXZpZ2F0
aW9uQWN0aW9uKCkuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgbV9wYWdlLmxv
YWREYXRhV2l0aE5hdmlnYXRpb25TaGFyZWQobV9wcm9jZXNzLmNvcHlSZWYoKSwgbV93ZWJQYWdl
SUQsIG5hdmlnYXRpb24sIGRhdGEsIE1JTUVUeXBlLCBlbmNvZGluZywgYmFzZVVSTCwgdXNlckRh
dGEsIFdlYkNvcmU6OlNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZDo6WWVzLCBXZWJDb3JlOjpT
aG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQ6Ok5vLCBXVEZNb3ZlKHdlYnNpdGVQb2xpY2ll
cyksIG5hdmlnYXRpb24ubGFzdE5hdmlnYXRpb25BY3Rpb24oKS5zaG91bGRPcGVuRXh0ZXJuYWxV
UkxzUG9saWN5KTsKIH0KIAogdm9pZCBQcm92aXNpb25hbFBhZ2VQcm94eTo6bG9hZFJlcXVlc3Qo
QVBJOjpOYXZpZ2F0aW9uJiBuYXZpZ2F0aW9uLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiBy
ZXF1ZXN0LCBBUEk6Ok9iamVjdCogdXNlckRhdGEsIE9wdGlvbmFsPFdlYnNpdGVQb2xpY2llc0Rh
dGE+JiYgd2Vic2l0ZVBvbGljaWVzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5jcHAKaW5kZXggNTBlYmVmZDUyM2IwNmJlMmVjNjVlMWYyOTE2N2UxNzEzMzIzZDlkZi4uODEz
Yzc1NzQzODQxMDg1NTU3YTNlMWE4MTQwM2ExNDcwZWQ0NWU0OCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxMC0yMDE5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHly
aWdodCAoQykgMjAxMC0yMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENv
cHlyaWdodCAoQykgMjAxMiBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
ICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKQEAgLTE2OCw2ICsxNjgsNyBAQAogI2luY2x1ZGUgPFdlYkNvcmUv
U2VyaWFsaXplZENyeXB0b0tleVdyYXAuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1NoYXJlRGF0YS5o
PgogI2luY2x1ZGUgPFdlYkNvcmUvU2hhcmVkQnVmZmVyLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9T
aG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1Nob3Vs
ZFRyZWF0QXNDb250aW51aW5nTG9hZC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVGV4dENoZWNrZXJD
bGllbnQuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1RleHRJbmRpY2F0b3IuaD4KQEAgLTEzNzcsMTEg
KzEzNzgsMTEgQEAgUmVmUHRyPEFQSTo6TmF2aWdhdGlvbj4gV2ViUGFnZVByb3h5Ojpsb2FkRGF0
YShjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmIGRhdGEsIGMKICAgICBpZiAoc2hvdWxkVXNlRm9y
ZWdyb3VuZFByaW9yaXR5Rm9yQ2xpZW50TmF2aWdhdGlvbigpKQogICAgICAgICBuYXZpZ2F0aW9u
LT5zZXRGb3JlZ3JvdW5kQWN0aXZpdHkocHJvY2VzcygpLnRocm90dGxlcigpLmZvcmVncm91bmRB
Y3Rpdml0eSgiQ2xpZW50IG5hdmlnYXRpb24iX3MpLm1vdmVUb1VuaXF1ZVB0cigpKTsKIAotICAg
IGxvYWREYXRhV2l0aE5hdmlnYXRpb25TaGFyZWQobV9wcm9jZXNzLmNvcHlSZWYoKSwgbV93ZWJQ
YWdlSUQsIG5hdmlnYXRpb24sIGRhdGEsIE1JTUVUeXBlLCBlbmNvZGluZywgYmFzZVVSTCwgdXNl
ckRhdGEsIFNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZDo6Tm8sIFdURjo6bnVsbG9wdCwgc2hv
dWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgbG9hZERhdGFXaXRoTmF2aWdhdGlvblNo
YXJlZChtX3Byb2Nlc3MuY29weVJlZigpLCBtX3dlYlBhZ2VJRCwgbmF2aWdhdGlvbiwgZGF0YSwg
TUlNRVR5cGUsIGVuY29kaW5nLCBiYXNlVVJMLCB1c2VyRGF0YSwgU2hvdWxkVHJlYXRBc0NvbnRp
bnVpbmdMb2FkOjpObywgU2hvdWxkVHJlYXRBc0NsaWVudE9yVXNlcklucHV0OjpZZXMsIFdURjo6
bnVsbG9wdCwgc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CiAgICAgcmV0dXJuIG5hdmln
YXRpb247CiB9CiAKLXZvaWQgV2ViUGFnZVByb3h5Ojpsb2FkRGF0YVdpdGhOYXZpZ2F0aW9uU2hh
cmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYgcHJvY2VzcywgV2ViQ29yZTo6UGFnZUlkZW50aWZp
ZXIgd2ViUGFnZUlELCBBUEk6Ok5hdmlnYXRpb24mIG5hdmlnYXRpb24sIGNvbnN0IElQQzo6RGF0
YVJlZmVyZW5jZSYgZGF0YSwgY29uc3QgU3RyaW5nJiBNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBl
bmNvZGluZywgY29uc3QgU3RyaW5nJiBiYXNlVVJMLCBBUEk6Ok9iamVjdCogdXNlckRhdGEsIFNo
b3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCBzaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQsIE9w
dGlvbmFsPFdlYnNpdGVQb2xpY2llc0RhdGE+JiYgd2Vic2l0ZVBvbGljaWVzLCBTaG91bGRPcGVu
RXh0ZXJuYWxVUkxzUG9saWN5IHNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpCit2b2lkIFdl
YlBhZ2VQcm94eTo6bG9hZERhdGFXaXRoTmF2aWdhdGlvblNoYXJlZChSZWY8V2ViUHJvY2Vzc1By
b3h5PiYmIHByb2Nlc3MsIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHdlYlBhZ2VJRCwgQVBJOjpO
YXZpZ2F0aW9uJiBuYXZpZ2F0aW9uLCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmIGRhdGEsIGNv
bnN0IFN0cmluZyYgTUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZW5jb2RpbmcsIGNvbnN0IFN0cmlu
ZyYgYmFzZVVSTCwgQVBJOjpPYmplY3QqIHVzZXJEYXRhLCBTaG91bGRUcmVhdEFzQ29udGludWlu
Z0xvYWQgc2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLCBTaG91bGRUcmVhdEFzQ2xpZW50T3JV
c2VySW5wdXQgc2hvdWxkVHJlYXRBc0NsaWVudE9yVXNlcklucHV0LCBPcHRpb25hbDxXZWJzaXRl
UG9saWNpZXNEYXRhPiYmIHdlYnNpdGVQb2xpY2llcywgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1Bv
bGljeSBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KQogewogICAgIFJFTEVBU0VfTE9HX0lG
X0FMTE9XRUQoTG9hZGluZywgImxvYWREYXRhV2l0aE5hdmlnYXRpb24iKTsKIApAQCAtMTM5OCw2
ICsxMzk5LDcgQEAgdm9pZCBXZWJQYWdlUHJveHk6OmxvYWREYXRhV2l0aE5hdmlnYXRpb25TaGFy
ZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiBwcm9jZXNzLAogICAgIGxvYWRQYXJhbWV0ZXJzLmVu
Y29kaW5nTmFtZSA9IGVuY29kaW5nOwogICAgIGxvYWRQYXJhbWV0ZXJzLmJhc2VVUkxTdHJpbmcg
PSBiYXNlVVJMOwogICAgIGxvYWRQYXJhbWV0ZXJzLnNob3VsZFRyZWF0QXNDb250aW51aW5nTG9h
ZCA9IHNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCA9PSBTaG91bGRUcmVhdEFzQ29udGludWlu
Z0xvYWQ6OlllczsKKyAgICBsb2FkUGFyYW1ldGVycy5zaG91bGRUcmVhdEFzQ2xpZW50T3JVc2Vy
SW5wdXQgPSBzaG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQ7CiAgICAgbG9hZFBhcmFtZXRl
cnMudXNlckRhdGEgPSBVc2VyRGF0YShwcm9jZXNzLT50cmFuc2Zvcm1PYmplY3RzVG9IYW5kbGVz
KHVzZXJEYXRhKS5nZXQoKSk7CiAgICAgbG9hZFBhcmFtZXRlcnMud2Vic2l0ZVBvbGljaWVzID0g
V1RGTW92ZSh3ZWJzaXRlUG9saWNpZXMpOwogICAgIGxvYWRQYXJhbWV0ZXJzLnNob3VsZE9wZW5F
eHRlcm5hbFVSTHNQb2xpY3kgPSBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCA2NzhmODFjMGRhZmEwYjFjNTc5YzQy
NTI0ZTJiNjQ5ZDVjZWFkNDEzLi5mZDE4ZmRmYWIwMjcxMjVmMmVlMzYxYzczMWZjMTg1MDI2YTZj
NDBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMSw1ICsxLDUg
QEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTAtMjAxOSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTIxOSw2ICsy
MTksNyBAQCBlbnVtIGNsYXNzIEhhc0luc2VjdXJlQ29udGVudCA6IGJvb2w7CiBlbnVtIGNsYXNz
IE5vdGlmaWNhdGlvbkRpcmVjdGlvbiA6IHVpbnQ4X3Q7CiBlbnVtIGNsYXNzIFJvdXRlU2hhcmlu
Z1BvbGljeSA6IHVpbnQ4X3Q7CiBlbnVtIGNsYXNzIFNob3VsZFNhbXBsZSA6IGJvb2w7CitlbnVt
IGNsYXNzIFNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dCA6IGJvb2w7CiBlbnVtIGNsYXNz
IFNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCA6IGJvb2w7CiBlbnVtIGNsYXNzIFdyaXRpbmdE
aXJlY3Rpb24gOiB1aW50OF90OwogCkBAIC0xNjA4LDcgKzE2MDksNyBAQCBwdWJsaWM6CiAgICAg
dm9pZCBkZWNpZGVQb2xpY3lGb3JSZXNwb25zZVNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYm
LCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBXZWJD
b3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmJiBmcmFtZVNlY3VyaXR5T3JpZ2luLCBXZWJDb3JlOjpQ
b2xpY3lDaGVja0lkZW50aWZpZXIsCiAgICAgICAgIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGRvd25sb2FkQXR0cmli
dXRlLCB1aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYpOwogICAgIHZvaWQgc3Rh
cnRVUkxTY2hlbWVUYXNrU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYsIFdlYkNvcmU6OlBh
Z2VJZGVudGlmaWVyLCBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyYmKTsKLSAgICB2b2lkIGxvYWRE
YXRhV2l0aE5hdmlnYXRpb25TaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiwgV2ViQ29yZTo6
UGFnZUlkZW50aWZpZXIsIEFQSTo6TmF2aWdhdGlvbiYsIGNvbnN0IElQQzo6RGF0YVJlZmVyZW5j
ZSYsIGNvbnN0IFN0cmluZyYgTUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZW5jb2RpbmcsIGNvbnN0
IFN0cmluZyYgYmFzZVVSTCwgQVBJOjpPYmplY3QqIHVzZXJEYXRhLCBXZWJDb3JlOjpTaG91bGRU
cmVhdEFzQ29udGludWluZ0xvYWQsIE9wdGlvbmFsPFdlYnNpdGVQb2xpY2llc0RhdGE+JiYgPSBX
VEY6Om51bGxvcHQsIFdlYkNvcmU6OlNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBXZWJD
b3JlOjpTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RBbGxvdyk7CisgICAg
dm9pZCBsb2FkRGF0YVdpdGhOYXZpZ2F0aW9uU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYs
IFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBBUEk6Ok5hdmlnYXRpb24mLCBjb25zdCBJUEM6OkRh
dGFSZWZlcmVuY2UmLCBjb25zdCBTdHJpbmcmIE1JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGVuY29k
aW5nLCBjb25zdCBTdHJpbmcmIGJhc2VVUkwsIEFQSTo6T2JqZWN0KiB1c2VyRGF0YSwgV2ViQ29y
ZTo6U2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLCBXZWJDb3JlOjpTaG91bGRUcmVhdEFzQ2xp
ZW50T3JVc2VySW5wdXQsIE9wdGlvbmFsPFdlYnNpdGVQb2xpY2llc0RhdGE+JiYgPSBXVEY6Om51
bGxvcHQsIFdlYkNvcmU6OlNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBXZWJDb3JlOjpT
aG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RBbGxvdyk7CiAgICAgdm9pZCBs
b2FkUmVxdWVzdFdpdGhOYXZpZ2F0aW9uU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYsIFdl
YkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBBUEk6Ok5hdmlnYXRpb24mLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmJiwgV2ViQ29yZTo6U2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSwgQVBJOjpP
YmplY3QqIHVzZXJEYXRhLCBXZWJDb3JlOjpTaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQsIE9w
dGlvbmFsPFdlYnNpdGVQb2xpY2llc0RhdGE+JiYgPSBXVEY6Om51bGxvcHQpOwogICAgIHZvaWQg
YmFja0ZvcndhcmRHb1RvSXRlbVNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBjb25zdCBX
ZWJDb3JlOjpCYWNrRm9yd2FyZEl0ZW1JZGVudGlmaWVyJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmJiwgY29uc3QgV2ViQmFja0ZvcndhcmRMaXN0Q291
bnRzJik+JiYpOwogICAgIHZvaWQgZGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvblN5bmNT
aGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBi
b29sIGlzTWFpbkZyYW1lLCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmJiwgV2ViQ29yZTo6
UG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIE5hdmlnYXRpb25B
Y3Rpb25EYXRhJiYsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2Uu
Y3BwCmluZGV4IDUxNDAwMmQxOWM3ZmI3NzExOTIxODQ4NzI2MzFkMTA2MDQyOTkzMzYuLjdmMDBk
YmFjZWZkOTBkYjY5MTlkY2ZkNjc4MDFiOTYxOGM4MGQwNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0yMjMsNiArMjIzLDcgQEAKICNpbmNs
dWRlIDxXZWJDb3JlL1NldHRpbmdzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TaGFkb3dSb290Lmg+
CiAjaW5jbHVkZSA8V2ViQ29yZS9TaGFyZWRCdWZmZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1No
b3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU3R5bGVQ
cm9wZXJ0aWVzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TdWJmcmFtZUxvYWRlci5oPgogI2luY2x1
ZGUgPFdlYkNvcmUvU3Vic3RpdHV0ZURhdGEuaD4KQEAgLTE2MDksNyArMTYxMCw3IEBAIE5PX1JF
VFVSTiB2b2lkIFdlYlBhZ2U6OmxvYWRSZXF1ZXN0V2FpdGluZ0ZvclByb2Nlc3NMYXVuY2goTG9h
ZFBhcmFtZXRlcnMmJiwgVVJMCiAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0K
IAotdm9pZCBXZWJQYWdlOjpsb2FkRGF0YUltcGwodWludDY0X3QgbmF2aWdhdGlvbklELCBib29s
IHNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCwgT3B0aW9uYWw8V2Vic2l0ZVBvbGljaWVzRGF0
YT4mJiB3ZWJzaXRlUG9saWNpZXMsIFJlZjxTaGFyZWRCdWZmZXI+JiYgc2hhcmVkQnVmZmVyLCBj
b25zdCBTdHJpbmcmIE1JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGVuY29kaW5nTmFtZSwgY29uc3Qg
VVJMJiBiYXNlVVJMLCBjb25zdCBVUkwmIHVucmVhY2hhYmxlVVJMLCBjb25zdCBVc2VyRGF0YSYg
dXNlckRhdGEsIFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgc2hvdWxkT3BlbkV4dGVybmFs
VVJMc1BvbGljeSkKK3ZvaWQgV2ViUGFnZTo6bG9hZERhdGFJbXBsKHVpbnQ2NF90IG5hdmlnYXRp
b25JRCwgYm9vbCBzaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQsIFdlYkNvcmU6OlNob3VsZFRy
ZWF0QXNDbGllbnRPclVzZXJJbnB1dCBzaG91bGRUcmVhdEFzQ2xpZW50T3JVc2VySW5wdXQsIE9w
dGlvbmFsPFdlYnNpdGVQb2xpY2llc0RhdGE+JiYgd2Vic2l0ZVBvbGljaWVzLCBSZWY8U2hhcmVk
QnVmZmVyPiYmIHNoYXJlZEJ1ZmZlciwgY29uc3QgU3RyaW5nJiBNSU1FVHlwZSwgY29uc3QgU3Ry
aW5nJiBlbmNvZGluZ05hbWUsIGNvbnN0IFVSTCYgYmFzZVVSTCwgY29uc3QgVVJMJiB1bnJlYWNo
YWJsZVVSTCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhLCBTaG91bGRPcGVuRXh0ZXJuYWxVUkxz
UG9saWN5IHNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpCiB7CiAgICAgU2VuZFN0b3BSZXNw
b25zaXZlbmVzc1RpbWVyIHN0b3BwZXI7CiAKQEAgLTE2MjcsNiArMTYyOCw4IEBAIHZvaWQgV2Vi
UGFnZTo6bG9hZERhdGFJbXBsKHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgYm9vbCBzaG91bGRUcmVh
dEFzQ29udGludWluZ0xvCiAgICAgLy8gSW5pdGF0ZSB0aGUgbG9hZCBpbiBXZWJDb3JlLgogICAg
IEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVMb2FkUmVxdWVzdCgqbV9tYWluRnJhbWUtPmNvcmVGcmFt
ZSgpLCByZXF1ZXN0LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5LCBzdWJzdGl0dXRlRGF0
YSk7CiAgICAgZnJhbWVMb2FkUmVxdWVzdC5zZXRTaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQo
c2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkKTsKKyAgICBpZiAoc2hvdWxkVHJlYXRBc0NsaWVu
dE9yVXNlcklucHV0ID09IFdlYkNvcmU6OlNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dDo6
WWVzKQorICAgICAgICBmcmFtZUxvYWRSZXF1ZXN0LnNldElzUmVxdWVzdEZyb21DbGllbnRPclVz
ZXJJbnB1dCgpOwogICAgIG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKS0+bG9hZGVyKCkubG9hZChX
VEZNb3ZlKGZyYW1lTG9hZFJlcXVlc3QpKTsKIH0KIApAQCAtMTYzNiw3ICsxNjM5LDcgQEAgdm9p
ZCBXZWJQYWdlOjpsb2FkRGF0YShMb2FkUGFyYW1ldGVycyYmIGxvYWRQYXJhbWV0ZXJzKQogCiAg
ICAgYXV0byBzaGFyZWRCdWZmZXIgPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZShyZWludGVycHJldF9j
YXN0PGNvbnN0IGNoYXIqPihsb2FkUGFyYW1ldGVycy5kYXRhLmRhdGEoKSksIGxvYWRQYXJhbWV0
ZXJzLmRhdGEuc2l6ZSgpKTsKICAgICBVUkwgYmFzZVVSTCA9IGxvYWRQYXJhbWV0ZXJzLmJhc2VV
UkxTdHJpbmcuaXNFbXB0eSgpID8gV1RGOjpibGFua1VSTCgpIDogVVJMKFVSTCgpLCBsb2FkUGFy
YW1ldGVycy5iYXNlVVJMU3RyaW5nKTsKLSAgICBsb2FkRGF0YUltcGwobG9hZFBhcmFtZXRlcnMu
bmF2aWdhdGlvbklELCBsb2FkUGFyYW1ldGVycy5zaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQs
IFdURk1vdmUobG9hZFBhcmFtZXRlcnMud2Vic2l0ZVBvbGljaWVzKSwgV1RGTW92ZShzaGFyZWRC
dWZmZXIpLCBsb2FkUGFyYW1ldGVycy5NSU1FVHlwZSwgbG9hZFBhcmFtZXRlcnMuZW5jb2RpbmdO
YW1lLCBiYXNlVVJMLCBVUkwoKSwgbG9hZFBhcmFtZXRlcnMudXNlckRhdGEsIGxvYWRQYXJhbWV0
ZXJzLnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAgIGxvYWREYXRhSW1wbChsb2Fk
UGFyYW1ldGVycy5uYXZpZ2F0aW9uSUQsIGxvYWRQYXJhbWV0ZXJzLnNob3VsZFRyZWF0QXNDb250
aW51aW5nTG9hZCwgbG9hZFBhcmFtZXRlcnMuc2hvdWxkVHJlYXRBc0NsaWVudE9yVXNlcklucHV0
LCBXVEZNb3ZlKGxvYWRQYXJhbWV0ZXJzLndlYnNpdGVQb2xpY2llcyksIFdURk1vdmUoc2hhcmVk
QnVmZmVyKSwgbG9hZFBhcmFtZXRlcnMuTUlNRVR5cGUsIGxvYWRQYXJhbWV0ZXJzLmVuY29kaW5n
TmFtZSwgYmFzZVVSTCwgVVJMKCksIGxvYWRQYXJhbWV0ZXJzLnVzZXJEYXRhLCBsb2FkUGFyYW1l
dGVycy5zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKIH0KIAogdm9pZCBXZWJQYWdlOjps
b2FkQWx0ZXJuYXRlSFRNTChMb2FkUGFyYW1ldGVycyYmIGxvYWRQYXJhbWV0ZXJzKQpAQCAtMTY0
OCw3ICsxNjUxLDcgQEAgdm9pZCBXZWJQYWdlOjpsb2FkQWx0ZXJuYXRlSFRNTChMb2FkUGFyYW1l
dGVycyYmIGxvYWRQYXJhbWV0ZXJzKQogICAgIFVSTCBwcm92aXNpb25hbExvYWRFcnJvclVSTCA9
IGxvYWRQYXJhbWV0ZXJzLnByb3Zpc2lvbmFsTG9hZEVycm9yVVJMU3RyaW5nLmlzRW1wdHkoKSA/
IFVSTCgpIDogVVJMKFVSTCgpLCBsb2FkUGFyYW1ldGVycy5wcm92aXNpb25hbExvYWRFcnJvclVS
TFN0cmluZyk7CiAgICAgYXV0byBzaGFyZWRCdWZmZXIgPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZShy
ZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIqPihsb2FkUGFyYW1ldGVycy5kYXRhLmRhdGEoKSks
IGxvYWRQYXJhbWV0ZXJzLmRhdGEuc2l6ZSgpKTsKICAgICBtX21haW5GcmFtZS0+Y29yZUZyYW1l
KCktPmxvYWRlcigpLnNldFByb3Zpc2lvbmFsTG9hZEVycm9yQmVpbmdIYW5kbGVkVVJMKHByb3Zp
c2lvbmFsTG9hZEVycm9yVVJMKTsgICAgCi0gICAgbG9hZERhdGFJbXBsKGxvYWRQYXJhbWV0ZXJz
Lm5hdmlnYXRpb25JRCwgbG9hZFBhcmFtZXRlcnMuc2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2Fk
LCBXVEZNb3ZlKGxvYWRQYXJhbWV0ZXJzLndlYnNpdGVQb2xpY2llcyksIFdURk1vdmUoc2hhcmVk
QnVmZmVyKSwgbG9hZFBhcmFtZXRlcnMuTUlNRVR5cGUsIGxvYWRQYXJhbWV0ZXJzLmVuY29kaW5n
TmFtZSwgYmFzZVVSTCwgdW5yZWFjaGFibGVVUkwsIGxvYWRQYXJhbWV0ZXJzLnVzZXJEYXRhKTsK
KyAgICBsb2FkRGF0YUltcGwobG9hZFBhcmFtZXRlcnMubmF2aWdhdGlvbklELCBsb2FkUGFyYW1l
dGVycy5zaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQsIGxvYWRQYXJhbWV0ZXJzLnNob3VsZFRy
ZWF0QXNDbGllbnRPclVzZXJJbnB1dCwgV1RGTW92ZShsb2FkUGFyYW1ldGVycy53ZWJzaXRlUG9s
aWNpZXMpLCBXVEZNb3ZlKHNoYXJlZEJ1ZmZlciksIGxvYWRQYXJhbWV0ZXJzLk1JTUVUeXBlLCBs
b2FkUGFyYW1ldGVycy5lbmNvZGluZ05hbWUsIGJhc2VVUkwsIHVucmVhY2hhYmxlVVJMLCBsb2Fk
UGFyYW1ldGVycy51c2VyRGF0YSk7CiAgICAgbV9tYWluRnJhbWUtPmNvcmVGcmFtZSgpLT5sb2Fk
ZXIoKS5zZXRQcm92aXNpb25hbExvYWRFcnJvckJlaW5nSGFuZGxlZFVSTCh7IH0pOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggYjMzMTEzZGM4
YmRmMTIzZTFmYTY0MjEyZTVkZGQ3ZDQzNTY3NTNmNS4uNDRiMWI3NTY1N2ZiYjkzY2EzMWRmZWQw
ZDg0ZDkyZTNjYTgwMmY2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTAtMjAxOSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAtMjAy
MCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKQEAgLTE5MCw2ICsxOTAsNyBAQCBjbGFzcyBWaXNpYmxlUG9zaXRpb247CiBlbnVt
IFN5bnRoZXRpY0NsaWNrVHlwZSA6IGludDhfdDsKIGVudW0gY2xhc3MgRE9NUGFzdGVBY2Nlc3NS
ZXNwb25zZSA6IHVpbnQ4X3Q7CiBlbnVtIGNsYXNzIERyYWdIYW5kbGluZ01ldGhvZCA6IHVpbnQ4
X3Q7CitlbnVtIGNsYXNzIFNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dCA6IGJvb2w7CiBl
bnVtIGNsYXNzIFNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCA6IGJvb2w7CiBlbnVtIGNsYXNz
IFN0b3JhZ2VBY2Nlc3NQcm9tcHRXYXNTaG93biA6IGJvb2w7CiBlbnVtIGNsYXNzIFN0b3JhZ2VB
Y2Nlc3NXYXNHcmFudGVkIDogYm9vbDsKQEAgLTEzNzUsNyArMTM3Niw3IEBAIHByaXZhdGU6CiAK
ICAgICBTdHJpbmcgc291cmNlRm9yRnJhbWUoV2ViRnJhbWUqKTsKIAotICAgIHZvaWQgbG9hZERh
dGFJbXBsKHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgYm9vbCBzaG91bGRUcmVhdEFzQ29udGludWlu
Z0xvYWQsIE9wdGlvbmFsPFdlYnNpdGVQb2xpY2llc0RhdGE+JiYsIFJlZjxXZWJDb3JlOjpTaGFy
ZWRCdWZmZXI+JiYsIGNvbnN0IFN0cmluZyYgTUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZW5jb2Rp
bmdOYW1lLCBjb25zdCBVUkwmIGJhc2VVUkwsIGNvbnN0IFVSTCYgZmFpbGluZ1VSTCwgY29uc3Qg
VXNlckRhdGEmLCBXZWJDb3JlOjpTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5ID0gV2ViQ29y
ZTo6U2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTo6U2hvdWxkTm90QWxsb3cpOworICAgIHZv
aWQgbG9hZERhdGFJbXBsKHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgYm9vbCBzaG91bGRUcmVhdEFz
Q29udGludWluZ0xvYWQsIFdlYkNvcmU6OlNob3VsZFRyZWF0QXNDbGllbnRPclVzZXJJbnB1dCwg
T3B0aW9uYWw8V2Vic2l0ZVBvbGljaWVzRGF0YT4mJiwgUmVmPFdlYkNvcmU6OlNoYXJlZEJ1ZmZl
cj4mJiwgY29uc3QgU3RyaW5nJiBNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBlbmNvZGluZ05hbWUs
IGNvbnN0IFVSTCYgYmFzZVVSTCwgY29uc3QgVVJMJiBmYWlsaW5nVVJMLCBjb25zdCBVc2VyRGF0
YSYsIFdlYkNvcmU6OlNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBXZWJDb3JlOjpTaG91
bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RBbGxvdyk7CiAKICAgICAvLyBBY3Rp
b25zCiAgICAgdm9pZCB0cnlDbG9zZShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsK
ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA5Mjgz
MjBhMjY0NTY1OTI5MjYxMjAwMTFlMDhkMzczMDE5N2ViNjcwLi5hODNlNTBiM2QzYjljYzNjNDFl
NTcxY2RiMTU2MWFhNDZiYzY4MjRmIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIv
VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjAtMDItMTggIEJyZW50IEZ1bGdo
YW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVjb2duaXplIFdLUGFnZSBhbmQg
V0tXZWJWaWV3IGNhbGxzIGFzIGdlbmVyYXRlZCBieSBjbGllbnQgQVBJIHVzZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA3OTE3CisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS81Njc3MDY3Nj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBSZW1vdmUgdW5uZWVkZWQgZXhwbGljaXQgb3B0LWluIHRvIGRhdGEg
VVJMIGxvYWRpbmcgZm9yIHJlbGV2YW50IHRlc3RzLgorCisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXRDb2NvYS9OYXZpZ2F0aW9uLm1tOgorICAgICAgICAoVEVTVCk6CisKIDIw
MjAtMDItMTggIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAg
ICAgW21hY09TXSBXZWIgcHJvY2VzcyBtYXkgY3Jhc2ggdW5kZXIgU2VydmljZXNPdmVybGF5Q29u
dHJvbGxlcjo6YnVpbGRQb3RlbnRpYWxIaWdobGlnaHRzSWZOZWVkZWQKZGlmZiAtLWdpdCBhL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvTmF2aWdhdGlvbi5tbSBiL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvTmF2aWdhdGlvbi5tbQppbmRleCBiMTFj
ZjljZWIyNjBjMWZjNzdlMTc3NmU5NzIwYjExMWEzZDE5ODkzLi4xNGQ0YWI3YThiZDhhZGYyYmNj
ZjQ3YTVjZDYyYmIwYzIxODhiNTRhIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdENvY29hL05hdmlnYXRpb24ubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXRDb2NvYS9OYXZpZ2F0aW9uLm1tCkBAIC0yNzUsNyArMjc1LDYgQEAgVEVTVChX
S05hdmlnYXRpb24sIE5hdmlnYXRpb25BY3Rpb25IYXNOYXZpZ2F0aW9uKQogVEVTVChXS05hdmln
YXRpb24sIFdlYlZpZXdXaWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0KQogewogICAgIGF1dG8gY29u
ZmlndXJhdGlvbiA9IGFkb3B0TlMoW1tXS1dlYlZpZXdDb25maWd1cmF0aW9uIGFsbG9jXSBpbml0
XSk7Ci0gICAgY29uZmlndXJhdGlvbi5nZXQoKS5fYWxsb3dUb3BOYXZpZ2F0aW9uVG9EYXRhVVJM
cyA9IFlFUzsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbV0tXZWJWaWV3IGFsbG9jXSBp
bml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApIGNvbmZpZ3VyYXRpb246Y29u
ZmlndXJhdGlvbi5nZXQoKV0pOwogCiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tDbGll
bnRSZWRpcmVjdE5hdmlnYXRpb25EZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwpAQCAtMzA2LDcgKzMw
NSw2IEBAIFRFU1QoV0tOYXZpZ2F0aW9uLCBXZWJWaWV3V2lsbFBlcmZvcm1DbGllbnRSZWRpcmVj
dCkKIFRFU1QoV0tOYXZpZ2F0aW9uLCBXZWJWaWV3RGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3QpCiB7
CiAgICAgYXV0byBjb25maWd1cmF0aW9uID0gYWRvcHROUyhbW1dLV2ViVmlld0NvbmZpZ3VyYXRp
b24gYWxsb2NdIGluaXRdKTsKLSAgICBjb25maWd1cmF0aW9uLmdldCgpLl9hbGxvd1RvcE5hdmln
YXRpb25Ub0RhdGFVUkxzID0gWUVTOwogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tXS1dl
YlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCkgY29u
ZmlndXJhdGlvbjpjb25maWd1cmF0aW9uLmdldCgpXSk7CiAKICAgICBhdXRvIGRlbGVnYXRlID0g
YWRvcHROUyhbW0NsaWVudFJlZGlyZWN0TmF2aWdhdGlvbkRlbGVnYXRlIGFsbG9jXSBpbml0XSk7
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>391113</attachid>
            <date>2020-02-18 16:01:25 -0800</date>
            <delta_ts>2020-02-18 18:51:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207917-20200218160124.patch</filename>
            <type>text/plain</type>
            <size>6470</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2ODU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTc5MWYyZGNiMjM4OWQ2
MDRiMmMwMTk1NDIyYzE1NTk3ZmEwNTc0Ny4uYTE4NWUzMWE3YTY2ZGNjZjM1NDA2NDBkMmEwNTg1
ZWJjNDhhNmQ0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTAyLTE4ICBCcmVu
dCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFJlY29nbml6ZSBXS1Bh
Z2UgYW5kIFdLV2ViVmlldyBjYWxscyBhcyBnZW5lcmF0ZWQgYnkgY2xpZW50IEFQSSB1c2UKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzkxNworICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vNTY3NzA2NzY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQ2FsbHMgdG8gV0tQYWdlIGFuZCBXS1dlYlZpZXcgQVBJ
IHVzZWQgdG8gbG9hZCBkYXRhIGFuZCBzdHJpbmdzIGRpcmVjdGx5IHNob3VsZCBiZSByZWNvZ25p
emVkIGJ5CisgICAgICAgIHRoZSBsb2FkaW5nIGNvZGUgYXMgYmVpbmcgZnJvbSBjbGllbnQgQVBJ
IGNhbGxzLiBUaGlzIGJyaW5ncyB0aGVzZSBBUEkgYmVoYXZpb3JzIGludG8gYWxpZ25tZW50Cisg
ICAgICAgIHdpdGggc2ltaWxhciBBUEkgZm9yIGxvYWRpbmcgVVJMcyBhbmQgVVJMUmVxdWVzdHMg
ZGlyZWN0bHkuIFRoaXMgY2hhbmdlIGFsc28gYWxsb3dzIHVzIHRvIGVuZm9yY2UKKyAgICAgICAg
c3RyaWN0ZXIgaGFuZGxpbmcgb2YgRGF0YSBVUkxzLCBhbmQgdG8gcmVtb3ZlIHRoZSBuZWVkIHRv
IGV4cGxpY2l0bHkgcGVybWl0IHRvcC1sZXZlbCBkYXRhIFVSTAorICAgICAgICBuYXZpZ2F0aW9u
IHdoZW4gY2xpZW50IEFQSXMgYXJlIHVzZWQuCisKKyAgICAgICAgVGVzdGVkIGJ5IFRlc3RXZWJL
aXRBUEkgTmF2aWdhdGlvbiB0ZXN0cy4KKworICAgICAgICAqIHBhZ2UvU2V0dGluZ3MueWFtbDoK
KwogMjAyMC0wMi0xOCAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAog
ICAgICAgICBbbWFjT1NdIFdlYiBwcm9jZXNzIG1heSBjcmFzaCB1bmRlciBTZXJ2aWNlc092ZXJs
YXlDb250cm9sbGVyOjpidWlsZFBvdGVudGlhbEhpZ2hsaWdodHNJZk5lZWRlZApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRl
eCA5ZDViMmI4ODc1YmI2ODhhNDI4NWNhYWFiMzA0MDI5ZjljOTUwMWUyLi40MWQ1YmQ3MTUzZjZl
MTI5NzZiZmIyY2E5OWU0YmM4ODcwYzk0NjRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisy
MDIwLTAyLTE4ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAg
IFJlLWRpc2FibGUgdG9wLWxldmVsIGRhdGEgVVJMIG5hdmlnYXRpb25zCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc5MTcKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzU2NzcwNjc2PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEluIEJ1ZyAyMDc3MTkgd2UgYWxsb3dlZCB0b3AtbGV2ZWwgbmF2aWdhdGlv
bnMgdG8gZGF0YSBVUkxzIGJ5IGRlZmF1bHQuIFRoaXMKKyAgICAgICAgcGF0Y2ggdXBkYXRlcyBj
bGllbnQgbG9hZGluZyBBUEkgY2FsbHMgc28gdGhhdCB3ZSBjYW4gZ28gYmFjayB0byBhIGRlZmF1
bHQKKyAgICAgICAgYmxvY2sgb2YgdGhlc2UgbG9hZHMgd2l0aG91dCBicmVha2luZyBXZWJLaXQg
Y2xpZW50cy4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmln
dXJhdGlvbi5tbToKKyAgICAgICAgKC1bV0tXZWJWaWV3Q29uZmlndXJhdGlvbiBpbml0XSk6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJQYWdlOjpsb2FkRGF0YUltcGwpOiBSZWNvZ25pemUgZGlyZWN0IGRhdGEgbG9hZHMgc3Rh
cnRlZCBmcm9tIGNsaWVudCBBUEkuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaDoKKwogMjAyMC0wMi0xOCAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNv
bT4KIAogICAgICAgICBbbWFjT1NdIFdlYiBwcm9jZXNzIG1heSBjcmFzaCB1bmRlciBTZXJ2aWNl
c092ZXJsYXlDb250cm9sbGVyOjpidWlsZFBvdGVudGlhbEhpZ2hsaWdodHNJZk5lZWRlZApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy55YW1sIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9TZXR0aW5ncy55YW1sCmluZGV4IGMyMTEzZDFkYzRlN2IwNGM2MWU5MjAwNTQwY2Uw
YjhlMzZkMWE5YTYuLmE2ZDM0MjhkN2RhM2RiZWRhZjAxMzAyOGE0NDkxMjc1MTU3NGI1YjQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MueWFtbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1NldHRpbmdzLnlhbWwKQEAgLTEwOCw3ICsxMDgsNyBAQCBhbGxvd1NldHRp
bmdBbnlYSFJIZWFkZXJGcm9tRmlsZVVSTHM6CiBhbGxvd0Nyb3NzT3JpZ2luU3VicmVzb3VyY2Vz
VG9Bc2tGb3JDcmVkZW50aWFsczoKICAgaW5pdGlhbDogZmFsc2UKIGFsbG93VG9wTmF2aWdhdGlv
blRvRGF0YVVSTHM6Ci0gIGluaXRpYWw6IHRydWUKKyAgaW5pdGlhbDogZmFsc2UKIG5lZWRzU3Rv
cmFnZUFjY2Vzc0Zyb21GaWxlVVJMc1F1aXJrOgogICBpbml0aWFsOiB0cnVlCiBuZWVkc0ZyYW1l
TmFtZUZhbGxiYWNrVG9JZFF1aXJrOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5tbQppbmRleCBhZDkxMDlh
ZjM0Y2ViMzM1NWYwNzYxMWQ5NzAwNWY2MzFkOTE2YTZmLi5mZDIzOTc4OTAzZTNjOWNjZTY3OGUw
ZDgxODc4M2UwYzBiNzhjNjcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5tbQpAQCAtMjM2LDcgKzIz
Niw3IEBAIHN0YXRpYyBib29sIGRlZmF1bHRTaG91bGREZWNpZGVQb2xpY3lCZWZvcmVMb2FkaW5n
UXVpY2tMb29rUHJldmlldygpCiAgICAgX2NvbnZlcnRzUG9zaXRpb25TdHlsZU9uQ29weSA9IE5P
OwogICAgIF9hbGxvd3NNZXRhUmVmcmVzaCA9IFlFUzsKICAgICBfYWxsb3dVbml2ZXJzYWxBY2Nl
c3NGcm9tRmlsZVVSTHMgPSBOTzsKLSAgICBfYWxsb3dUb3BOYXZpZ2F0aW9uVG9EYXRhVVJMcyA9
IFlFUzsKKyAgICBfYWxsb3dUb3BOYXZpZ2F0aW9uVG9EYXRhVVJMcyA9IE5POwogICAgIF9uZWVk
c1N0b3JhZ2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWlyayA9IFlFUzsKIAogI2lmIFBMQVRGT1JNKElP
U19GQU1JTFkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3Bw
CmluZGV4IDUxNDAwMmQxOWM3ZmI3NzExOTIxODQ4NzI2MzFkMTA2MDQyOTkzMzYuLjMyNDhhYTZh
YjllMzQ0OTg1YmNjYTE4NzNiODE2Njc3ZmJhMjBhMTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0xNjI3LDYgKzE2MjcsNyBAQCB2b2lkIFdl
YlBhZ2U6OmxvYWREYXRhSW1wbCh1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGJvb2wgc2hvdWxkVHJl
YXRBc0NvbnRpbnVpbmdMbwogICAgIC8vIEluaXRhdGUgdGhlIGxvYWQgaW4gV2ViQ29yZS4KICAg
ICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lTG9hZFJlcXVlc3QoKm1fbWFpbkZyYW1lLT5jb3JlRnJh
bWUoKSwgcmVxdWVzdCwgc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSwgc3Vic3RpdHV0ZURh
dGEpOwogICAgIGZyYW1lTG9hZFJlcXVlc3Quc2V0U2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2Fk
KHNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCk7CisgICAgZnJhbWVMb2FkUmVxdWVzdC5zZXRJ
c1JlcXVlc3RGcm9tQ2xpZW50T3JVc2VySW5wdXQoKTsKICAgICBtX21haW5GcmFtZS0+Y29yZUZy
YW1lKCktPmxvYWRlcigpLmxvYWQoV1RGTW92ZShmcmFtZUxvYWRSZXF1ZXN0KSk7CiB9CiAKZGlm
ZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA5MjgzMjBh
MjY0NTY1OTI5MjYxMjAwMTFlMDhkMzczMDE5N2ViNjcwLi5iYzBmMzEzZjU1ZWQ3MTdjYzQwM2Zl
MDJlMTc1OTU0ODAzMmU3MzA2IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9v
bHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjAtMDItMTggIEJyZW50IEZ1bGdoYW0g
IDxiZnVsZ2hhbUBhcHBsZS5jb20+CisKKyAgICAgICAgUmUtZGlzYWJsZSB0b3AtbGV2ZWwgZGF0
YSBVUkwgbmF2aWdhdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIwNzkxNworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTY3NzA2NzY+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVtb3ZlIHVubmVl
ZGVkIGV4cGxpY2l0IG9wdC1pbiB0byBkYXRhIFVSTCBsb2FkaW5nIGZvciByZWxldmFudCB0ZXN0
cy4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvTmF2aWdhdGlv
bi5tbToKKyAgICAgICAgKFRFU1QpOgorCiAyMDIwLTAyLTE4ICBXZW5zb24gSHNpZWggIDx3ZW5z
b25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gV2ViIHByb2Nlc3MgbWF5IGNy
YXNoIHVuZGVyIFNlcnZpY2VzT3ZlcmxheUNvbnRyb2xsZXI6OmJ1aWxkUG90ZW50aWFsSGlnaGxp
Z2h0c0lmTmVlZGVkCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dENvY29hL05hdmlnYXRpb24ubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENv
Y29hL05hdmlnYXRpb24ubW0KaW5kZXggYjExY2Y5Y2ViMjYwYzFmYzc3ZTE3NzZlOTcyMGIxMTFh
M2QxOTg5My4uMTRkNGFiN2E4YmQ4YWRmMmJjY2Y0N2E1Y2Q2MmJiMGMyMTg4YjU0YSAxMDA2NDQK
LS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9OYXZpZ2F0aW9uLm1t
CisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvTmF2aWdhdGlvbi5t
bQpAQCAtMjc1LDcgKzI3NSw2IEBAIFRFU1QoV0tOYXZpZ2F0aW9uLCBOYXZpZ2F0aW9uQWN0aW9u
SGFzTmF2aWdhdGlvbikKIFRFU1QoV0tOYXZpZ2F0aW9uLCBXZWJWaWV3V2lsbFBlcmZvcm1DbGll
bnRSZWRpcmVjdCkKIHsKICAgICBhdXRvIGNvbmZpZ3VyYXRpb24gPSBhZG9wdE5TKFtbV0tXZWJW
aWV3Q29uZmlndXJhdGlvbiBhbGxvY10gaW5pdF0pOwotICAgIGNvbmZpZ3VyYXRpb24uZ2V0KCku
X2FsbG93VG9wTmF2aWdhdGlvblRvRGF0YVVSTHMgPSBZRVM7CiAgICAgYXV0byB3ZWJWaWV3ID0g
YWRvcHROUyhbW1dLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAs
IDgwMCwgNjAwKSBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb24uZ2V0KCldKTsKIAogICAgIGF1
dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbQ2xpZW50UmVkaXJlY3ROYXZpZ2F0aW9uRGVsZWdhdGUg
YWxsb2NdIGluaXRdKTsKQEAgLTMwNiw3ICszMDUsNiBAQCBURVNUKFdLTmF2aWdhdGlvbiwgV2Vi
Vmlld1dpbGxQZXJmb3JtQ2xpZW50UmVkaXJlY3QpCiBURVNUKFdLTmF2aWdhdGlvbiwgV2ViVmll
d0RpZENhbmNlbENsaWVudFJlZGlyZWN0KQogewogICAgIGF1dG8gY29uZmlndXJhdGlvbiA9IGFk
b3B0TlMoW1tXS1dlYlZpZXdDb25maWd1cmF0aW9uIGFsbG9jXSBpbml0XSk7Ci0gICAgY29uZmln
dXJhdGlvbi5nZXQoKS5fYWxsb3dUb3BOYXZpZ2F0aW9uVG9EYXRhVVJMcyA9IFlFUzsKICAgICBh
dXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbV0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5T
TWFrZVJlY3QoMCwgMCwgODAwLCA2MDApIGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbi5nZXQo
KV0pOwogCiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tDbGllbnRSZWRpcmVjdE5hdmln
YXRpb25EZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>391125</attachid>
            <date>2020-02-18 18:51:44 -0800</date>
            <delta_ts>2020-02-19 10:04:30 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207917-20200218185143.patch</filename>
            <type>text/plain</type>
            <size>4443</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2ODU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTc5MWYyZGNiMjM4OWQ2
MDRiMmMwMTk1NDIyYzE1NTk3ZmEwNTc0Ny4uYTE4NWUzMWE3YTY2ZGNjZjM1NDA2NDBkMmEwNTg1
ZWJjNDhhNmQ0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTAyLTE4ICBCcmVu
dCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFJlY29nbml6ZSBXS1Bh
Z2UgYW5kIFdLV2ViVmlldyBjYWxscyBhcyBnZW5lcmF0ZWQgYnkgY2xpZW50IEFQSSB1c2UKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzkxNworICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vNTY3NzA2NzY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQ2FsbHMgdG8gV0tQYWdlIGFuZCBXS1dlYlZpZXcgQVBJ
IHVzZWQgdG8gbG9hZCBkYXRhIGFuZCBzdHJpbmdzIGRpcmVjdGx5IHNob3VsZCBiZSByZWNvZ25p
emVkIGJ5CisgICAgICAgIHRoZSBsb2FkaW5nIGNvZGUgYXMgYmVpbmcgZnJvbSBjbGllbnQgQVBJ
IGNhbGxzLiBUaGlzIGJyaW5ncyB0aGVzZSBBUEkgYmVoYXZpb3JzIGludG8gYWxpZ25tZW50Cisg
ICAgICAgIHdpdGggc2ltaWxhciBBUEkgZm9yIGxvYWRpbmcgVVJMcyBhbmQgVVJMUmVxdWVzdHMg
ZGlyZWN0bHkuIFRoaXMgY2hhbmdlIGFsc28gYWxsb3dzIHVzIHRvIGVuZm9yY2UKKyAgICAgICAg
c3RyaWN0ZXIgaGFuZGxpbmcgb2YgRGF0YSBVUkxzLCBhbmQgdG8gcmVtb3ZlIHRoZSBuZWVkIHRv
IGV4cGxpY2l0bHkgcGVybWl0IHRvcC1sZXZlbCBkYXRhIFVSTAorICAgICAgICBuYXZpZ2F0aW9u
IHdoZW4gY2xpZW50IEFQSXMgYXJlIHVzZWQuCisKKyAgICAgICAgVGVzdGVkIGJ5IFRlc3RXZWJL
aXRBUEkgTmF2aWdhdGlvbiB0ZXN0cy4KKworICAgICAgICAqIHBhZ2UvU2V0dGluZ3MueWFtbDoK
KwogMjAyMC0wMi0xOCAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAog
ICAgICAgICBbbWFjT1NdIFdlYiBwcm9jZXNzIG1heSBjcmFzaCB1bmRlciBTZXJ2aWNlc092ZXJs
YXlDb250cm9sbGVyOjpidWlsZFBvdGVudGlhbEhpZ2hsaWdodHNJZk5lZWRlZApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRl
eCA5ZDViMmI4ODc1YmI2ODhhNDI4NWNhYWFiMzA0MDI5ZjljOTUwMWUyLi40MWQ1YmQ3MTUzZjZl
MTI5NzZiZmIyY2E5OWU0YmM4ODcwYzk0NjRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisy
MDIwLTAyLTE4ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAg
IFJlLWRpc2FibGUgdG9wLWxldmVsIGRhdGEgVVJMIG5hdmlnYXRpb25zCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc5MTcKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzU2NzcwNjc2PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEluIEJ1ZyAyMDc3MTkgd2UgYWxsb3dlZCB0b3AtbGV2ZWwgbmF2aWdhdGlv
bnMgdG8gZGF0YSBVUkxzIGJ5IGRlZmF1bHQuIFRoaXMKKyAgICAgICAgcGF0Y2ggdXBkYXRlcyBj
bGllbnQgbG9hZGluZyBBUEkgY2FsbHMgc28gdGhhdCB3ZSBjYW4gZ28gYmFjayB0byBhIGRlZmF1
bHQKKyAgICAgICAgYmxvY2sgb2YgdGhlc2UgbG9hZHMgd2l0aG91dCBicmVha2luZyBXZWJLaXQg
Y2xpZW50cy4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmln
dXJhdGlvbi5tbToKKyAgICAgICAgKC1bV0tXZWJWaWV3Q29uZmlndXJhdGlvbiBpbml0XSk6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJQYWdlOjpsb2FkRGF0YUltcGwpOiBSZWNvZ25pemUgZGlyZWN0IGRhdGEgbG9hZHMgc3Rh
cnRlZCBmcm9tIGNsaWVudCBBUEkuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaDoKKwogMjAyMC0wMi0xOCAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNv
bT4KIAogICAgICAgICBbbWFjT1NdIFdlYiBwcm9jZXNzIG1heSBjcmFzaCB1bmRlciBTZXJ2aWNl
c092ZXJsYXlDb250cm9sbGVyOjpidWlsZFBvdGVudGlhbEhpZ2hsaWdodHNJZk5lZWRlZApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy55YW1sIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9TZXR0aW5ncy55YW1sCmluZGV4IGMyMTEzZDFkYzRlN2IwNGM2MWU5MjAwNTQwY2Uw
YjhlMzZkMWE5YTYuLmE2ZDM0MjhkN2RhM2RiZWRhZjAxMzAyOGE0NDkxMjc1MTU3NGI1YjQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MueWFtbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1NldHRpbmdzLnlhbWwKQEAgLTEwOCw3ICsxMDgsNyBAQCBhbGxvd1NldHRp
bmdBbnlYSFJIZWFkZXJGcm9tRmlsZVVSTHM6CiBhbGxvd0Nyb3NzT3JpZ2luU3VicmVzb3VyY2Vz
VG9Bc2tGb3JDcmVkZW50aWFsczoKICAgaW5pdGlhbDogZmFsc2UKIGFsbG93VG9wTmF2aWdhdGlv
blRvRGF0YVVSTHM6Ci0gIGluaXRpYWw6IHRydWUKKyAgaW5pdGlhbDogZmFsc2UKIG5lZWRzU3Rv
cmFnZUFjY2Vzc0Zyb21GaWxlVVJMc1F1aXJrOgogICBpbml0aWFsOiB0cnVlCiBuZWVkc0ZyYW1l
TmFtZUZhbGxiYWNrVG9JZFF1aXJrOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5tbQppbmRleCBhZDkxMDlh
ZjM0Y2ViMzM1NWYwNzYxMWQ5NzAwNWY2MzFkOTE2YTZmLi5mZDIzOTc4OTAzZTNjOWNjZTY3OGUw
ZDgxODc4M2UwYzBiNzhjNjcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5tbQpAQCAtMjM2LDcgKzIz
Niw3IEBAIHN0YXRpYyBib29sIGRlZmF1bHRTaG91bGREZWNpZGVQb2xpY3lCZWZvcmVMb2FkaW5n
UXVpY2tMb29rUHJldmlldygpCiAgICAgX2NvbnZlcnRzUG9zaXRpb25TdHlsZU9uQ29weSA9IE5P
OwogICAgIF9hbGxvd3NNZXRhUmVmcmVzaCA9IFlFUzsKICAgICBfYWxsb3dVbml2ZXJzYWxBY2Nl
c3NGcm9tRmlsZVVSTHMgPSBOTzsKLSAgICBfYWxsb3dUb3BOYXZpZ2F0aW9uVG9EYXRhVVJMcyA9
IFlFUzsKKyAgICBfYWxsb3dUb3BOYXZpZ2F0aW9uVG9EYXRhVVJMcyA9IE5POwogICAgIF9uZWVk
c1N0b3JhZ2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWlyayA9IFlFUzsKIAogI2lmIFBMQVRGT1JNKElP
U19GQU1JTFkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3Bw
CmluZGV4IDUxNDAwMmQxOWM3ZmI3NzExOTIxODQ4NzI2MzFkMTA2MDQyOTkzMzYuLjMyNDhhYTZh
YjllMzQ0OTg1YmNjYTE4NzNiODE2Njc3ZmJhMjBhMTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0xNjI3LDYgKzE2MjcsNyBAQCB2b2lkIFdl
YlBhZ2U6OmxvYWREYXRhSW1wbCh1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGJvb2wgc2hvdWxkVHJl
YXRBc0NvbnRpbnVpbmdMbwogICAgIC8vIEluaXRhdGUgdGhlIGxvYWQgaW4gV2ViQ29yZS4KICAg
ICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lTG9hZFJlcXVlc3QoKm1fbWFpbkZyYW1lLT5jb3JlRnJh
bWUoKSwgcmVxdWVzdCwgc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSwgc3Vic3RpdHV0ZURh
dGEpOwogICAgIGZyYW1lTG9hZFJlcXVlc3Quc2V0U2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2Fk
KHNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCk7CisgICAgZnJhbWVMb2FkUmVxdWVzdC5zZXRJ
c1JlcXVlc3RGcm9tQ2xpZW50T3JVc2VySW5wdXQoKTsKICAgICBtX21haW5GcmFtZS0+Y29yZUZy
YW1lKCktPmxvYWRlcigpLmxvYWQoV1RGTW92ZShmcmFtZUxvYWRSZXF1ZXN0KSk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>391175</attachid>
            <date>2020-02-19 10:04:32 -0800</date>
            <delta_ts>2020-02-19 10:36:49 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-207917-20200219100431.patch</filename>
            <type>text/plain</type>
            <size>4365</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2OTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWYwNDlhNzk1MWVkZWEw
NTIwMDBmZTMzYTBmNzUzYjA2YWVjZTQ2ZS4uNWEwNWUzMDk3MWRkMDA4ZDliMjYwZDU1OWU3YTc5
NmRjYzIyNzNkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTAyLTE5ICBCcmVu
dCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFJlLWRpc2FibGUgdG9w
LWxldmVsIGRhdGEgVVJMIG5hdmlnYXRpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc5MTcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU5NTY4
MDM3PgorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIENhbGxz
IHRvIFdLUGFnZSBhbmQgV0tXZWJWaWV3IEFQSSB1c2VkIHRvIGxvYWQgZGF0YSBhbmQgc3RyaW5n
cyBkaXJlY3RseSBzaG91bGQgYmUgcmVjb2duaXplZCBieQorICAgICAgICB0aGUgbG9hZGluZyBj
b2RlIGFzIGJlaW5nIGZyb20gY2xpZW50IEFQSSBjYWxscy4gVGhpcyBicmluZ3MgdGhlc2UgQVBJ
IGJlaGF2aW9ycyBpbnRvIGFsaWdubWVudAorICAgICAgICB3aXRoIHNpbWlsYXIgQVBJIGZvciBs
b2FkaW5nIFVSTHMgYW5kIFVSTFJlcXVlc3RzIGRpcmVjdGx5LiBUaGlzIGNoYW5nZSBhbHNvIGFs
bG93cyB1cyB0byBlbmZvcmNlCisgICAgICAgIHN0cmljdGVyIGhhbmRsaW5nIG9mIERhdGEgVVJM
cywgYW5kIHRvIHJlbW92ZSB0aGUgbmVlZCB0byBleHBsaWNpdGx5IHBlcm1pdCB0b3AtbGV2ZWwg
ZGF0YSBVUkwKKyAgICAgICAgbmF2aWdhdGlvbiB3aGVuIGNsaWVudCBBUElzIGFyZSB1c2VkLgor
CisgICAgICAgIFRlc3RlZCBieSBUZXN0V2ViS2l0QVBJIE5hdmlnYXRpb24gdGVzdHMuCisKKyAg
ICAgICAgKiBwYWdlL1NldHRpbmdzLnlhbWw6CisKIDIwMjAtMDItMTkgIE1lZ2FuIEdhcmRuZXIg
IDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBFbnN1cmUgdGhhdCBjb250ZW50
ZWRpdGFibGUgY2FyZXRzIG9uIG1hY0NhdGFseXN0IGFyZSB0aGUgcmlnaHQgY29sb3IsIGVzcGVj
aWFsbHkgaW4gRGFyayBNb2RlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDEyMDg0ZWJjMmI3MGIzYjEwNWFjZGJlNjYw
YjA4MmM4N2JjNjQ2MzEuLjgzN2RmYWJkMWExZGRiYzE4YTdhZGQzYWMxYTc3YjEyMzZkZGZhNDcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMjAtMDItMTkgIEJyZW50IEZ1bGdoYW0gIDxi
ZnVsZ2hhbUBhcHBsZS5jb20+CisKKyAgICAgICAgUmUtZGlzYWJsZSB0b3AtbGV2ZWwgZGF0YSBV
UkwgbmF2aWdhdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIwNzkxNworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTk1NjgwMzc+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgSW4gQnVnIDIwNzcxOSB3ZSBh
bGxvd2VkIHRvcC1sZXZlbCBuYXZpZ2F0aW9ucyB0byBkYXRhIFVSTHMgYnkgZGVmYXVsdC4gVGhp
cworICAgICAgICBwYXRjaCB1cGRhdGVzIGNsaWVudCBsb2FkaW5nIEFQSSBjYWxscyBzbyB0aGF0
IHdlIGNhbiBnbyBiYWNrIHRvIGEgZGVmYXVsdAorICAgICAgICBibG9jayBvZiB0aGVzZSBsb2Fk
cyB3aXRob3V0IGJyZWFraW5nIFdlYktpdCBjbGllbnRzLgorCisgICAgICAgICogVUlQcm9jZXNz
L0FQSS9Db2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uLm1tOgorICAgICAgICAoLVtXS1dlYlZp
ZXdDb25maWd1cmF0aW9uIGluaXRdKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmxvYWREYXRhSW1wbCk6IFJlY29n
bml6ZSBkaXJlY3QgZGF0YSBsb2FkcyBzdGFydGVkIGZyb20gY2xpZW50IEFQSS4KKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oOgorCiAyMDIwLTAyLTE5ICBNZWdhbiBHYXJk
bmVyICA8bWVnYW5fZ2FyZG5lckBhcHBsZS5jb20+CiAKICAgICAgICAgRW5zdXJlIHRoYXQgY29u
dGVudGVkaXRhYmxlIGNhcmV0cyBvbiBtYWNDYXRhbHlzdCBhcmUgdGhlIHJpZ2h0IGNvbG9yLCBl
c3BlY2lhbGx5IGluIERhcmsgTW9kZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9T
ZXR0aW5ncy55YW1sIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy55YW1sCmluZGV4IGMy
MTEzZDFkYzRlN2IwNGM2MWU5MjAwNTQwY2UwYjhlMzZkMWE5YTYuLmE2ZDM0MjhkN2RhM2RiZWRh
ZjAxMzAyOGE0NDkxMjc1MTU3NGI1YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
U2V0dGluZ3MueWFtbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLnlhbWwKQEAg
LTEwOCw3ICsxMDgsNyBAQCBhbGxvd1NldHRpbmdBbnlYSFJIZWFkZXJGcm9tRmlsZVVSTHM6CiBh
bGxvd0Nyb3NzT3JpZ2luU3VicmVzb3VyY2VzVG9Bc2tGb3JDcmVkZW50aWFsczoKICAgaW5pdGlh
bDogZmFsc2UKIGFsbG93VG9wTmF2aWdhdGlvblRvRGF0YVVSTHM6Ci0gIGluaXRpYWw6IHRydWUK
KyAgaW5pdGlhbDogZmFsc2UKIG5lZWRzU3RvcmFnZUFjY2Vzc0Zyb21GaWxlVVJMc1F1aXJrOgog
ICBpbml0aWFsOiB0cnVlCiBuZWVkc0ZyYW1lTmFtZUZhbGxiYWNrVG9JZFF1aXJrOgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3Vy
YXRpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29u
ZmlndXJhdGlvbi5tbQppbmRleCBhZDkxMDlhZjM0Y2ViMzM1NWYwNzYxMWQ5NzAwNWY2MzFkOTE2
YTZmLi5mZDIzOTc4OTAzZTNjOWNjZTY3OGUwZDgxODc4M2UwYzBiNzhjNjcwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlv
bi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29u
ZmlndXJhdGlvbi5tbQpAQCAtMjM2LDcgKzIzNiw3IEBAIC0gKGluc3RhbmNldHlwZSlpbml0CiAg
ICAgX2NvbnZlcnRzUG9zaXRpb25TdHlsZU9uQ29weSA9IE5POwogICAgIF9hbGxvd3NNZXRhUmVm
cmVzaCA9IFlFUzsKICAgICBfYWxsb3dVbml2ZXJzYWxBY2Nlc3NGcm9tRmlsZVVSTHMgPSBOTzsK
LSAgICBfYWxsb3dUb3BOYXZpZ2F0aW9uVG9EYXRhVVJMcyA9IFlFUzsKKyAgICBfYWxsb3dUb3BO
YXZpZ2F0aW9uVG9EYXRhVVJMcyA9IE5POwogICAgIF9uZWVkc1N0b3JhZ2VBY2Nlc3NGcm9tRmls
ZVVSTHNRdWlyayA9IFlFUzsKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IGY4MDVhMjE3YjFiOGFj
MDYwNDYxYmQ2ZDk2YWI2ZjQ3ODY2MWQ3ZmYuLjgzMWVmYWY3MWY5NTA4ZTFmODgxYWIzZmI4ZTQw
M2UzNzkxMDI0YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuY3BwCkBAIC0xNjIyLDYgKzE2MjIsNyBAQCB2b2lkIFdlYlBhZ2U6OmxvYWREYXRhSW1wbCh1
aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGJvb2wgc2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMbwogICAg
IC8vIEluaXRhdGUgdGhlIGxvYWQgaW4gV2ViQ29yZS4KICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZy
YW1lTG9hZFJlcXVlc3QoKm1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKSwgcmVxdWVzdCwgc2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeSwgc3Vic3RpdHV0ZURhdGEpOwogICAgIGZyYW1lTG9hZFJl
cXVlc3Quc2V0U2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkKHNob3VsZFRyZWF0QXNDb250aW51
aW5nTG9hZCk7CisgICAgZnJhbWVMb2FkUmVxdWVzdC5zZXRJc1JlcXVlc3RGcm9tQ2xpZW50T3JV
c2VySW5wdXQoKTsKICAgICBtX21haW5GcmFtZS0+Y29yZUZyYW1lKCktPmxvYWRlcigpLmxvYWQo
V1RGTW92ZShmcmFtZUxvYWRSZXF1ZXN0KSk7CiB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>