<?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>191611</bug_id>
          
          <creation_ts>2018-11-13 16:57:43 -0800</creation_ts>
          <short_desc>[WebRTC] Provide default implementation of LibWebRTCProvider</short_desc>
          <delta_ts>2018-11-13 20:53:00 -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>WebRTC</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>
          
          <blocked>191038</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Don Olmstead">don.olmstead</reporter>
          <assigned_to name="Ross Kirsling">ross.kirsling</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>ross.kirsling</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1478224</commentid>
    <comment_count>0</comment_count>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2018-11-13 16:57:43 -0800</bug_when>
    <thetext>If !USE(LIBWEBRTC) there should be a default disabled LibWebRTCProvider. Currently Windows has one since it has no support but other platforms should be taken into account.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478251</commentid>
    <comment_count>1</comment_count>
      <attachid>354739</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2018-11-13 17:48:01 -0800</bug_when>
    <thetext>Created attachment 354739
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478252</commentid>
    <comment_count>2</comment_count>
      <attachid>354740</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2018-11-13 17:49:46 -0800</bug_when>
    <thetext>Created attachment 354740
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478261</commentid>
    <comment_count>3</comment_count>
      <attachid>354740</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2018-11-13 17:58:43 -0800</bug_when>
    <thetext>Comment on attachment 354740
Patch

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

&gt; Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:71
&gt; +#if !USE(LIBWEBRTC)
&gt; +bool LibWebRTCProvider::webRTCAvailable()
&gt; +{
&gt; +#if PLATFORM(COCOA)
&gt; +    return true;
&gt; +#else
&gt; +    return false;
&gt; +#endif
&gt; +}
&gt; +#endif

I know this was in the original code for cocoa returning true but I have a feeling this is a bug on their end. If so you can just collapse this into one big #if</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478263</commentid>
    <comment_count>4</comment_count>
      <attachid>354740</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-11-13 18:08:44 -0800</bug_when>
    <thetext>Comment on attachment 354740
Patch

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

&gt; Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:55
&gt; -#if !PLATFORM(COCOA) &amp;&amp; !PLATFORM(GTK) &amp;&amp; !PLATFORM(WPE)
&gt; +#if !USE(LIBWEBRTC) || (!PLATFORM(COCOA) &amp;&amp; !USE(GSTREAMER))

Confusing... why not just:

#if !USE(LIBWEBRTC)

&gt;&gt; Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:71
&gt;&gt; +#endif
&gt; 
&gt; I know this was in the original code for cocoa returning true but I have a feeling this is a bug on their end. If so you can just collapse this into one big #if

Yeah Don is right, there&apos;s no way this is supposed to return true. We could do archaeology to figure out where it broke... or just fix it now. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478266</commentid>
    <comment_count>5</comment_count>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2018-11-13 18:12:39 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #4)
&gt; Comment on attachment 354740 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=354740&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:55
&gt; &gt; -#if !PLATFORM(COCOA) &amp;&amp; !PLATFORM(GTK) &amp;&amp; !PLATFORM(WPE)
&gt; &gt; +#if !USE(LIBWEBRTC) || (!PLATFORM(COCOA) &amp;&amp; !USE(GSTREAMER))
&gt; 
&gt; Confusing... why not just:
&gt; 
&gt; #if !USE(LIBWEBRTC)

Technically it seemed like the Glib ports wanted USE(LIBWEBRTC) &amp;&amp; USE(GSTREAMER) to be true.

&gt; &gt;&gt; Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:71
&gt; &gt;&gt; +#endif
&gt; &gt; 
&gt; &gt; I know this was in the original code for cocoa returning true but I have a feeling this is a bug on their end. If so you can just collapse this into one big #if
&gt; 
&gt; Yeah Don is right, there&apos;s no way this is supposed to return true. We could
&gt; do archaeology to figure out where it broke... or just fix it now. :)

Yea its really weird not sure if we should wait for youenn to chime in.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478283</commentid>
    <comment_count>6</comment_count>
      <attachid>354740</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-11-13 19:15:02 -0800</bug_when>
    <thetext>Comment on attachment 354740
Patch

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

&gt;&gt;&gt;&gt; Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:71
&gt;&gt;&gt;&gt; +#endif
&gt;&gt;&gt; 
&gt;&gt;&gt; I know this was in the original code for cocoa returning true but I have a feeling this is a bug on their end. If so you can just collapse this into one big #if
&gt;&gt; 
&gt;&gt; Yeah Don is right, there&apos;s no way this is supposed to return true. We could do archaeology to figure out where it broke... or just fix it now. :)
&gt; 
&gt; Yea its really weird not sure if we should wait for youenn to chime in.

Yep, sounds good to simplify it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478287</commentid>
    <comment_count>7</comment_count>
      <attachid>354756</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2018-11-13 19:30:49 -0800</bug_when>
    <thetext>Created attachment 354756
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478288</commentid>
    <comment_count>8</comment_count>
      <attachid>354757</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2018-11-13 19:32:19 -0800</bug_when>
    <thetext>Created attachment 354757
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478297</commentid>
    <comment_count>9</comment_count>
      <attachid>354757</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-13 19:57:29 -0800</bug_when>
    <thetext>Comment on attachment 354757
Patch for landing

Clearing flags on attachment: 354757

Committed r238159: &lt;https://trac.webkit.org/changeset/238159&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478298</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-13 19:57:31 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478299</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-11-13 19:58:21 -0800</bug_when>
    <thetext>&lt;rdar://problem/46051555&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478300</commentid>
    <comment_count>12</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2018-11-13 20:16:49 -0800</bug_when>
    <thetext>Argh, this is what I get for being impatient -- GTK/WPE build fix incoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478301</commentid>
    <comment_count>13</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2018-11-13 20:23:20 -0800</bug_when>
    <thetext>(In reply to Ross Kirsling from comment #12)
&gt; Argh, this is what I get for being impatient -- GTK/WPE build fix incoming.

Committed r238160: &lt;https://trac.webkit.org/changeset/238160&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478304</commentid>
    <comment_count>14</comment_count>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2018-11-13 20:27:43 -0800</bug_when>
    <thetext>Your unreviewed build fix should be doing USE(GSTREAMER) &amp;&amp; USE(LIBWEBRTC). Of course check the file to see what’s there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478312</commentid>
    <comment_count>15</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2018-11-13 20:53:00 -0800</bug_when>
    <thetext>(In reply to Don Olmstead from comment #14)
&gt; Your unreviewed build fix should be doing USE(GSTREAMER) &amp;&amp; USE(LIBWEBRTC).
&gt; Of course check the file to see what’s there.

Sorry about that.

Committed r238161: &lt;https://trac.webkit.org/changeset/238161&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354739</attachid>
            <date>2018-11-13 17:48:01 -0800</date>
            <delta_ts>2018-11-13 17:48:44 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-191611-20181113174801.patch</filename>
            <type>text/plain</type>
            <size>17264</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MTU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZThhODQzMmViYTI1NzJi
YjJkMmZkMTgyZmZjZDFmYTc1MGY3ZWZiNC4uMTE4NTM2NDBiNzUyMzRmYzczNDlkYjYyN2YzYmM4
NjAwMTAxYmFhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE4LTExLTEzICBSb3Nz
IEtpcnNsaW5nICA8cm9zcy5raXJzbGluZ0Bzb255LmNvbT4KKworICAgICAgICBbV2ViUlRDXSBQ
cm92aWRlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gb2YgTGliV2ViUlRDUHJvdmlkZXIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MTYxMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlZmFjdG9yIExpYldl
YlJUQ1Byb3ZpZGVyIHN1Y2ggdGhhdCBwbGF0Zm9ybS1zcGVjaWZpYyBpbXBsZW1lbnRhdGlvbnMg
bmVlZCBub3Qgd29ycnkgYWJvdXQgc3BlY2lmeWluZyBkZWZhdWx0cy4KKworICAgICAgICAqIFBs
YXRmb3JtV2luLmNtYWtlOgorICAgICAgICAqIHBsYXRmb3JtL0dTdHJlYW1lci5jbWFrZToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9Tb3VyY2VzR0xpYi50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWVk
aWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyLmNwcDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJDb2NvYS5jcHA6Cisg
ICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVy
R1N0cmVhbWVyLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdsaWIuY3BwLgorICAgICAgICAqIHBs
YXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdTdHJlYW1lci5o
OiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2Vi
cnRjL0xpYldlYlJUQ1Byb3ZpZGVyR2xpYi5oLgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3Ry
ZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlcldpbi5jcHA6IFJlbW92ZWQuCisKIDIwMTgt
MTEtMTMgIFRpbW90aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBwbGUuY29tPgogCiAgICAgICAgIFVz
ZSBhIGxpZ2h0IHNjcm9sbGJhciBmb3IgdHJhbnNwYXJlbnQgd2ViIHZpZXdzIGluIGRhcmsgbW9k
ZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtV2luLmNtYWtlIGIvU291cmNl
L1dlYkNvcmUvUGxhdGZvcm1XaW4uY21ha2UKaW5kZXggNWQzOWY2ZDEwOTlmMzNlMDA1YTMxNDM3
OTYxZWNiMDU5OWIxNzM5OS4uMTkzMGViYzM5YWZmNDZlZTlkYjgyMWY0NTlmYzNlY2UwMThlNGJm
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1XaW4uY21ha2UKKysrIGIvU291
cmNlL1dlYkNvcmUvUGxhdGZvcm1XaW4uY21ha2UKQEAgLTcxLDggKzcxLDYgQEAgbGlzdChBUFBF
TkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL1RyYW5zZm9ybWF0
aW9uTWF0cml4V2luLmNwcAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL3dpbi9VbmlzY3JpYmVDb250
cm9sbGVyLmNwcAogCi0gICAgcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJU
Q1Byb3ZpZGVyV2luLmNwcAotCiAgICAgcGxhdGZvcm0vbmV0d29yay93aW4vRG93bmxvYWRCdW5k
bGVXaW4uY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay93aW4vTmV0d29ya1N0YXRlTm90aWZpZXJX
aW4uY3BwCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0dTdHJlYW1lci5j
bWFrZSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0dTdHJlYW1lci5jbWFrZQppbmRleCBkNTM1
NDRhN2RjN2M4MzYyOTljMDBhZDk1M2EwMzQwMWZmNjIwZjA2Li45YWM2N2FlMTY3OTYwZmEzZGQ4
ODNmZWIxMDRjYmZjMjY3ZjQzZTU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9HU3RyZWFtZXIuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vR1N0cmVhbWVy
LmNtYWtlCkBAIC0zNyw2ICszNyw3IEBAIGlmIChFTkFCTEVfVklERU8gT1IgRU5BQkxFX1dFQl9B
VURJTykKICAgICAgICAgcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0dTdHJlYW1lclZp
ZGVvRW5jb2Rlci5jcHAKICAgICAgICAgcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0dT
dHJlYW1lclZpZGVvRW5jb2RlckZhY3RvcnkuY3BwCiAgICAgICAgIHBsYXRmb3JtL21lZGlhc3Ry
ZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENBdWRpb01vZHVsZS5jcHAKKyAgICAgICAgcGxhdGZvcm0v
bWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyR2xpYi5jcHAKIAogICAgICAg
ICBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyQXVkaW9DYXB0dXJlU291
cmNlLmNwcAogICAgICAgICBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVy
QXVkaW9DYXB0dXJlci5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Nv
dXJjZXNHTGliLnR4dCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1NvdXJjZXNHTGliLnR4dApp
bmRleCA1NGM5ODM3ZDM4ZGY3NGYwZGYyMTI3MjFhY2Y4ZTBhYTkwNWQ0ZjZjLi4yNzczYzJhMDg4
YjYwZmIxMzk2OTJkNWY0MGQwYmVmYzNmZWMzY2M0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9Tb3VyY2VzR0xpYi50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
U291cmNlc0dMaWIudHh0CkBAIC0zMyw1ICszMywzIEBAIHBsYXRmb3JtL2dsaWIvU2hhcmVkQnVm
ZmVyR2xpYi5jcHAKIHBsYXRmb3JtL2dsaWIvVXNlckFnZW50R0xpYi5jcHAKIAogcGxhdGZvcm0v
bmV0d29yay9nbGliL05ldHdvcmtTdGF0ZU5vdGlmaWVyR0xpYi5jcHAKLQotcGxhdGZvcm0vbWVk
aWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyR2xpYi5jcHAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQ
cm92aWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJy
dGMvTGliV2ViUlRDUHJvdmlkZXIuY3BwCmluZGV4IGVkYzcwZWI5NDZjM2Q4MDhmNTg2NDRhNWU0
YzFjYmYxZDZlZmUzOTYuLjc4N2E0MjIxYTVmZjk2OGQ3YjQzZWM4YjYzODQwMjkxMzQyZGQ3YTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0
Yy9MaWJXZWJSVENQcm92aWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVk
aWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyLmNwcApAQCAtNTIsMTMgKzUyLDI0
IEBAIEFMTE9XX1VOVVNFRF9QQVJBTUVURVJTX0VORAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LSNpZiAhUExBVEZPUk0oQ09DT0EpICYmICFQTEFURk9STShHVEspICYmICFQTEFURk9STShXUEUp
CisjaWYgIVVTRShMSUJXRUJSVEMpIHx8ICghUExBVEZPUk0oQ09DT0EpICYmICFVU0UoR1NUUkVB
TUVSKSkKIFVuaXF1ZVJlZjxMaWJXZWJSVENQcm92aWRlcj4gTGliV2ViUlRDUHJvdmlkZXI6OmNy
ZWF0ZSgpCiB7CiAgICAgcmV0dXJuIG1ha2VVbmlxdWVSZWY8TGliV2ViUlRDUHJvdmlkZXI+KCk7
CiB9CiAjZW5kaWYKIAorI2lmICFVU0UoTElCV0VCUlRDKQorYm9vbCBMaWJXZWJSVENQcm92aWRl
cjo6d2ViUlRDQXZhaWxhYmxlKCkKK3sKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICByZXR1cm4g
dHJ1ZTsKKyNlbHNlCisgICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCit9CisjZW5kaWYKKwogdm9p
ZCBMaWJXZWJSVENQcm92aWRlcjo6c2V0QWN0aXZlKGJvb2wpCiB7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJv
dmlkZXJDb2NvYS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3
ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJDb2NvYS5jcHAKaW5kZXggMDNkNzM2NjVjZmUzM2E5YTE1
MzBiMDU4MjgzZjFkNzJlNjRmYjJkZi4uMWE0ZDNlNjRlNTUzNjVlY2VlNWI4NDg0NDc5MzM0ZjQx
NjQzNWQyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0v
bGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyQ29jb2EuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckNvY29hLmNw
cApAQCAtMjcsMjUgKzI3LDE5IEBACiAjaW5jbHVkZSAiTGliV2ViUlRDUHJvdmlkZXJDb2NvYS5o
IgogCiAjaWYgVVNFKExJQldFQlJUQykKKwogI2luY2x1ZGUgPHdlYnJ0Yy9tZWRpYS9lbmdpbmUv
d2VicnRjdmlkZW9kZWNvZGVyZmFjdG9yeS5oPgogI2luY2x1ZGUgPHdlYnJ0Yy9tZWRpYS9lbmdp
bmUvd2VicnRjdmlkZW9lbmNvZGVyZmFjdG9yeS5oPgogI2luY2x1ZGUgPHdlYnJ0Yy9zZGsvV2Vi
S2l0L1dlYktpdFV0aWxpdGllcy5oPgogI2luY2x1ZGUgPHd0Zi9kYXJ3aW4vV2Vha0xpbmtpbmcu
aD4KLSNlbmRpZgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFVuaXF1ZVJlZjxMaWJXZWJSVENQ
cm92aWRlcj4gTGliV2ViUlRDUHJvdmlkZXI6OmNyZWF0ZSgpCiB7Ci0jaWYgVVNFKExJQldFQlJU
QykgJiYgUExBVEZPUk0oQ09DT0EpCiAgICAgcmV0dXJuIG1ha2VVbmlxdWVSZWY8TGliV2ViUlRD
UHJvdmlkZXJDb2NvYT4oKTsKLSNlbHNlCi0gICAgcmV0dXJuIG1ha2VVbmlxdWVSZWY8TGliV2Vi
UlRDUHJvdmlkZXI+KCk7Ci0jZW5kaWYKIH0KIAotI2lmIFVTRShMSUJXRUJSVEMpCi0KIExpYldl
YlJUQ1Byb3ZpZGVyQ29jb2E6On5MaWJXZWJSVENQcm92aWRlckNvY29hKCkKIHsKIH0KQEAgLTcy
LDE1ICs2NiwxMSBAQCB2b2lkIExpYldlYlJUQ1Byb3ZpZGVyQ29jb2E6OnNldEFjdGl2ZShib29s
IHZhbHVlKQogICAgIHdlYnJ0Yzo6c2V0QXBwbGljYXRpb25TdGF0dXModmFsdWUpOwogfQogCi0j
ZW5kaWYgLy8gVVNFKExJQldFQlJUQykKLQogYm9vbCBMaWJXZWJSVENQcm92aWRlcjo6d2ViUlRD
QXZhaWxhYmxlKCkKIHsKLSNpZiBVU0UoTElCV0VCUlRDKQogICAgIHJldHVybiAhaXNOdWxsRnVu
Y3Rpb25Qb2ludGVyKHJ0Yzo6TG9nTWVzc2FnZTo6TG9nVG9EZWJ1Zyk7Ci0jZWxzZQotICAgIHJl
dHVybiB0cnVlOwotI2VuZGlmCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlm
IC8vIFVTRShMSUJXRUJSVEMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJHU3RyZWFtZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3Zp
ZGVyR1N0cmVhbWVyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNWUyYTg3ODljMDdmYjBkMGFlYzZmNmMyMGY3
YmIxN2ZhOGRiN2QyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyR1N0cmVhbWVyLmNwcApAQCAt
MCwwICsxLDU3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE3IElnYWxpYSBTLkwuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRl
ICJMaWJXZWJSVENQcm92aWRlckdTdHJlYW1lci5oIgorCisjaWYgVVNFKExJQldFQlJUQykgJiYg
VVNFKEdTVFJFQU1FUikKKworI2luY2x1ZGUgPHd0Zi9VbmlxdWVSZWYuaD4KKworbmFtZXNwYWNl
IFdlYkNvcmUgeworCitVbmlxdWVSZWY8TGliV2ViUlRDUHJvdmlkZXI+IExpYldlYlJUQ1Byb3Zp
ZGVyOjpjcmVhdGUoKQoreworICAgIHJldHVybiBtYWtlVW5pcXVlUmVmPExpYldlYlJUQ1Byb3Zp
ZGVyR1N0cmVhbWVyPigpOworfQorCitib29sIExpYldlYlJUQ1Byb3ZpZGVyOjp3ZWJSVENBdmFp
bGFibGUoKQoreworICAgIHJldHVybiB0cnVlOworfQorCitzdGQ6OnVuaXF1ZV9wdHI8d2VicnRj
OjpWaWRlb0RlY29kZXJGYWN0b3J5PiBMaWJXZWJSVENQcm92aWRlckdTdHJlYW1lcjo6Y3JlYXRl
RGVjb2RlckZhY3RvcnkoKQoreworICAgIHJldHVybiBzdGQ6Om1ha2VfdW5pcXVlPEdTdHJlYW1l
clZpZGVvRGVjb2RlckZhY3Rvcnk+KCk7Cit9CisKK3N0ZDo6dW5pcXVlX3B0cjx3ZWJydGM6OlZp
ZGVvRW5jb2RlckZhY3Rvcnk+IExpYldlYlJUQ1Byb3ZpZGVyR1N0cmVhbWVyOjpjcmVhdGVFbmNv
ZGVyRmFjdG9yeSgpCit7CisgICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8R1N0cmVhbWVyVmlk
ZW9FbmNvZGVyRmFjdG9yeT4oKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5k
aWYgLy8gVVNFKExJQldFQlJUQykgJiYgVVNFKEdTVFJFQU1FUikKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRl
ckdTdHJlYW1lci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2Vi
cnRjL0xpYldlYlJUQ1Byb3ZpZGVyR1N0cmVhbWVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWI5YjMzZjkzMjEw
OGNiYTgzZmYxMzI2MzMxYTRiNjQ3YjlkNTYyMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdT
dHJlYW1lci5oCkBAIC0wLDAgKzEsNDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTcgSWdh
bGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisK
KyNpbmNsdWRlICJMaWJXZWJSVENQcm92aWRlci5oIgorCisjaWYgVVNFKExJQldFQlJUQykgJiYg
VVNFKEdTVFJFQU1FUikKKworI2luY2x1ZGUgIkdTdHJlYW1lclZpZGVvRGVjb2RlckZhY3Rvcnku
aCIKKyNpbmNsdWRlICJHU3RyZWFtZXJWaWRlb0VuY29kZXJGYWN0b3J5LmgiCisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworY2xhc3MgV0VCQ09SRV9FWFBPUlQgTGliV2ViUlRDUHJvdmlkZXJHU3Ry
ZWFtZXIgOiBwdWJsaWMgTGliV2ViUlRDUHJvdmlkZXIgeworcHVibGljOgorICAgIExpYldlYlJU
Q1Byb3ZpZGVyR1N0cmVhbWVyKCkgPSBkZWZhdWx0OworCisgICAgc3RkOjp1bmlxdWVfcHRyPHdl
YnJ0Yzo6VmlkZW9FbmNvZGVyRmFjdG9yeT4gY3JlYXRlRW5jb2RlckZhY3RvcnkoKSBmaW5hbDsK
KyAgICBzdGQ6OnVuaXF1ZV9wdHI8d2VicnRjOjpWaWRlb0RlY29kZXJGYWN0b3J5PiBjcmVhdGVE
ZWNvZGVyRmFjdG9yeSgpIGZpbmFsOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisj
ZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xp
YndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdsaWIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyR2xpYi5jcHAKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQyNTE0YWYwNGRhZmM2MDMwMDM0NTNhNWU3ZjM5N2Fi
NjhlNTMyYjQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1By
b3ZpZGVyR2xpYi5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw2MyArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDE3IElnYWxpYSBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
Ci0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0g
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQot
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICov
Ci0KLSNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJMaWJXZWJSVENQcm92aWRlckdsaWIu
aCIKLQotI2luY2x1ZGUgPHd0Zi9VbmlxdWVSZWYuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewot
Ci1VbmlxdWVSZWY8TGliV2ViUlRDUHJvdmlkZXI+IExpYldlYlJUQ1Byb3ZpZGVyOjpjcmVhdGUo
KQotewotI2lmIFVTRShMSUJXRUJSVEMpICYmIChQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKFdQ
RSkpCi0gICAgcmV0dXJuIG1ha2VVbmlxdWVSZWY8TGliV2ViUlRDUHJvdmlkZXJHbGliPigpOwot
I2Vsc2UKLSAgICByZXR1cm4gbWFrZVVuaXF1ZVJlZjxMaWJXZWJSVENQcm92aWRlcj4oKTsKLSNl
bmRpZgotfQotCi1ib29sIExpYldlYlJUQ1Byb3ZpZGVyOjp3ZWJSVENBdmFpbGFibGUoKQotewot
I2lmIFVTRShMSUJXRUJSVEMpICYmIFVTRShHU1RSRUFNRVIpCi0gICAgcmV0dXJuIHRydWU7Ci0j
ZWxzZQotICAgIHJldHVybiBmYWxzZTsKLSNlbmRpZgotfQotCi0jaWYgVVNFKExJQldFQlJUQykg
JiYgVVNFKEdTVFJFQU1FUikKLXN0ZDo6dW5pcXVlX3B0cjx3ZWJydGM6OlZpZGVvRGVjb2RlckZh
Y3Rvcnk+IExpYldlYlJUQ1Byb3ZpZGVyR2xpYjo6Y3JlYXRlRGVjb2RlckZhY3RvcnkoKQotewot
ICAgIHJldHVybiBzdGQ6Om1ha2VfdW5pcXVlPEdTdHJlYW1lclZpZGVvRGVjb2RlckZhY3Rvcnk+
KCk7Ci19Ci0KLXN0ZDo6dW5pcXVlX3B0cjx3ZWJydGM6OlZpZGVvRW5jb2RlckZhY3Rvcnk+IExp
YldlYlJUQ1Byb3ZpZGVyR2xpYjo6Y3JlYXRlRW5jb2RlckZhY3RvcnkoKQotewotICAgIHJldHVy
biBzdGQ6Om1ha2VfdW5pcXVlPEdTdHJlYW1lclZpZGVvRW5jb2RlckZhY3Rvcnk+KCk7Ci19Ci0j
ZW5kaWYgLy8gVVNFKExJQldFQlJUQykgJiYgVVNFKEdTVFJFQU1FUikKLQotfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyR2xpYi5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyR2xpYi5oCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzNjg3YmZjM2Q5ZjQzYTAwNmZiOGFhMjZhNzQ1ZDdj
MDY4MjU0YTcwLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQ
cm92aWRlckdsaWIuaAorKysgL2Rldi9udWxsCkBAIC0xLDUxICswLDAgQEAKLS8qCi0gKiBDb3B5
cmlnaHQgKEMpIDIwMTcgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
LSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBD
T05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
LSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4g
T1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAq
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0g
KiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8K
LQotI3ByYWdtYSBvbmNlCi0KLSNpZiBVU0UoR1NUUkVBTUVSKQotI2luY2x1ZGUgIkdTdHJlYW1l
clZpZGVvRGVjb2RlckZhY3RvcnkuaCIKLSNpbmNsdWRlICJHU3RyZWFtZXJWaWRlb0VuY29kZXJG
YWN0b3J5LmgiCi0jZW5kaWYKLQotI2luY2x1ZGUgIkxpYldlYlJUQ1Byb3ZpZGVyLmgiCi0KLSNp
ZiBVU0UoTElCV0VCUlRDKQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIFdFQkNPUkVf
RVhQT1JUIExpYldlYlJUQ1Byb3ZpZGVyR2xpYiA6IHB1YmxpYyBMaWJXZWJSVENQcm92aWRlciB7
Ci1wdWJsaWM6Ci0gICAgTGliV2ViUlRDUHJvdmlkZXJHbGliKCkgPSBkZWZhdWx0OwotCi0jaWYg
VVNFKEdTVFJFQU1FUikKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8d2VicnRjOjpWaWRlb0VuY29kZXJG
YWN0b3J5PiBjcmVhdGVFbmNvZGVyRmFjdG9yeSgpIGZpbmFsOwotICAgIHN0ZDo6dW5pcXVlX3B0
cjx3ZWJydGM6OlZpZGVvRGVjb2RlckZhY3Rvcnk+IGNyZWF0ZURlY29kZXJGYWN0b3J5KCkgZmlu
YWw7Ci0jZW5kaWYKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGli
V2ViUlRDUHJvdmlkZXJXaW4uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyV2luLmNwcApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggYjRjNWVmMGJmODVhNGM0ODY3NzhlYWUyMzM2MGEzZDVjN2Y1NDE2My4uMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJXaW4uY3Bw
CisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
OCBTb255IEludGVyYWN0aXZlIEVudGVydGFpbm1lbnQgSW5jLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09O
VFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTGliV2ViUlRDUHJvdmlkZXIuaCIKLQotbmFtZXNwYWNl
IFdlYkNvcmUgewotCi1ib29sIExpYldlYlJUQ1Byb3ZpZGVyOjp3ZWJSVENBdmFpbGFibGUoKQot
ewotICAgIHJldHVybiBmYWxzZTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354740</attachid>
            <date>2018-11-13 17:49:46 -0800</date>
            <delta_ts>2018-11-13 19:30:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-191611-20181113174945.patch</filename>
            <type>text/plain</type>
            <size>17269</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MTU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZThhODQzMmViYTI1NzJi
YjJkMmZkMTgyZmZjZDFmYTc1MGY3ZWZiNC4uMTE4NTM2NDBiNzUyMzRmYzczNDlkYjYyN2YzYmM4
NjAwMTAxYmFhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE4LTExLTEzICBSb3Nz
IEtpcnNsaW5nICA8cm9zcy5raXJzbGluZ0Bzb255LmNvbT4KKworICAgICAgICBbV2ViUlRDXSBQ
cm92aWRlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gb2YgTGliV2ViUlRDUHJvdmlkZXIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MTYxMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlZmFjdG9yIExpYldl
YlJUQ1Byb3ZpZGVyIHN1Y2ggdGhhdCBwbGF0Zm9ybS1zcGVjaWZpYyBpbXBsZW1lbnRhdGlvbnMg
bmVlZCBub3Qgd29ycnkgYWJvdXQgc3BlY2lmeWluZyBkZWZhdWx0cy4KKworICAgICAgICAqIFBs
YXRmb3JtV2luLmNtYWtlOgorICAgICAgICAqIHBsYXRmb3JtL0dTdHJlYW1lci5jbWFrZToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9Tb3VyY2VzR0xpYi50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWVk
aWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyLmNwcDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJDb2NvYS5jcHA6Cisg
ICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVy
R1N0cmVhbWVyLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdsaWIuY3BwLgorICAgICAgICAqIHBs
YXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdTdHJlYW1lci5o
OiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2Vi
cnRjL0xpYldlYlJUQ1Byb3ZpZGVyR2xpYi5oLgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3Ry
ZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlcldpbi5jcHA6IFJlbW92ZWQuCisKIDIwMTgt
MTEtMTMgIFRpbW90aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBwbGUuY29tPgogCiAgICAgICAgIFVz
ZSBhIGxpZ2h0IHNjcm9sbGJhciBmb3IgdHJhbnNwYXJlbnQgd2ViIHZpZXdzIGluIGRhcmsgbW9k
ZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtV2luLmNtYWtlIGIvU291cmNl
L1dlYkNvcmUvUGxhdGZvcm1XaW4uY21ha2UKaW5kZXggNWQzOWY2ZDEwOTlmMzNlMDA1YTMxNDM3
OTYxZWNiMDU5OWIxNzM5OS4uMTkzMGViYzM5YWZmNDZlZTlkYjgyMWY0NTlmYzNlY2UwMThlNGJm
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1XaW4uY21ha2UKKysrIGIvU291
cmNlL1dlYkNvcmUvUGxhdGZvcm1XaW4uY21ha2UKQEAgLTcxLDggKzcxLDYgQEAgbGlzdChBUFBF
TkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL1RyYW5zZm9ybWF0
aW9uTWF0cml4V2luLmNwcAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL3dpbi9VbmlzY3JpYmVDb250
cm9sbGVyLmNwcAogCi0gICAgcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJU
Q1Byb3ZpZGVyV2luLmNwcAotCiAgICAgcGxhdGZvcm0vbmV0d29yay93aW4vRG93bmxvYWRCdW5k
bGVXaW4uY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay93aW4vTmV0d29ya1N0YXRlTm90aWZpZXJX
aW4uY3BwCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0dTdHJlYW1lci5j
bWFrZSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0dTdHJlYW1lci5jbWFrZQppbmRleCBkNTM1
NDRhN2RjN2M4MzYyOTljMDBhZDk1M2EwMzQwMWZmNjIwZjA2Li42YTBlMDMzYzJhMzcxODdkZGQ1
YTY3OGFhOTAwNjQ4NzY1MmI1ODA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9HU3RyZWFtZXIuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vR1N0cmVhbWVy
LmNtYWtlCkBAIC0zNyw2ICszNyw3IEBAIGlmIChFTkFCTEVfVklERU8gT1IgRU5BQkxFX1dFQl9B
VURJTykKICAgICAgICAgcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0dTdHJlYW1lclZp
ZGVvRW5jb2Rlci5jcHAKICAgICAgICAgcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0dT
dHJlYW1lclZpZGVvRW5jb2RlckZhY3RvcnkuY3BwCiAgICAgICAgIHBsYXRmb3JtL21lZGlhc3Ry
ZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENBdWRpb01vZHVsZS5jcHAKKyAgICAgICAgcGxhdGZvcm0v
bWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyR1N0cmVhbWVyLmNwcAogCiAg
ICAgICAgIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJBdWRpb0NhcHR1
cmVTb3VyY2UuY3BwCiAgICAgICAgIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3Ry
ZWFtZXJBdWRpb0NhcHR1cmVyLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vU291cmNlc0dMaWIudHh0IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU291cmNlc0dMaWIu
dHh0CmluZGV4IDU0Yzk4MzdkMzhkZjc0ZjBkZjIxMjcyMWFjZjhlMGFhOTA1ZDRmNmMuLjI3NzNj
MmEwODhiNjBmYjEzOTY5MmQ1ZjQwZDBiZWZjM2ZlYzNjYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL1NvdXJjZXNHTGliLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9Tb3VyY2VzR0xpYi50eHQKQEAgLTMzLDUgKzMzLDMgQEAgcGxhdGZvcm0vZ2xpYi9TaGFy
ZWRCdWZmZXJHbGliLmNwcAogcGxhdGZvcm0vZ2xpYi9Vc2VyQWdlbnRHTGliLmNwcAogCiBwbGF0
Zm9ybS9uZXR3b3JrL2dsaWIvTmV0d29ya1N0YXRlTm90aWZpZXJHTGliLmNwcAotCi1wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJHbGliLmNwcApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldl
YlJUQ1Byb3ZpZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xp
YndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5jcHAKaW5kZXggZWRjNzBlYjk0NmMzZDgwOGY1ODY0
NGE1ZTRjMWNiZjFkNmVmZTM5Ni4uNzg3YTQyMjFhNWZmOTY4ZDdiNDNlYzhiNjM4NDAyOTEzNDJk
ZDdhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGli
d2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXIuY3BwCkBAIC01MiwxMyAr
NTIsMjQgQEAgQUxMT1dfVU5VU0VEX1BBUkFNRVRFUlNfRU5ECiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotI2lmICFQTEFURk9STShDT0NPQSkgJiYgIVBMQVRGT1JNKEdUSykgJiYgIVBMQVRGT1JN
KFdQRSkKKyNpZiAhVVNFKExJQldFQlJUQykgfHwgKCFQTEFURk9STShDT0NPQSkgJiYgIVVTRShH
U1RSRUFNRVIpKQogVW5pcXVlUmVmPExpYldlYlJUQ1Byb3ZpZGVyPiBMaWJXZWJSVENQcm92aWRl
cjo6Y3JlYXRlKCkKIHsKICAgICByZXR1cm4gbWFrZVVuaXF1ZVJlZjxMaWJXZWJSVENQcm92aWRl
cj4oKTsKIH0KICNlbmRpZgogCisjaWYgIVVTRShMSUJXRUJSVEMpCitib29sIExpYldlYlJUQ1By
b3ZpZGVyOjp3ZWJSVENBdmFpbGFibGUoKQoreworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIHJl
dHVybiB0cnVlOworI2Vsc2UKKyAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKK30KKyNlbmRpZgor
CiB2b2lkIExpYldlYlJUQ1Byb3ZpZGVyOjpzZXRBY3RpdmUoYm9vbCkKIHsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJS
VENQcm92aWRlckNvY29hLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckNvY29hLmNwcAppbmRleCAwM2Q3MzY2NWNmZTMz
YTlhMTUzMGIwNTgyODNmMWQ3MmU2NGZiMmRmLi4xYTRkM2U2NGU1NTM2NWVjZWU1Yjg0ODQ0Nzkz
MzRmNDE2NDM1ZDI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0
cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJDb2NvYS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyQ29j
b2EuY3BwCkBAIC0yNywyNSArMjcsMTkgQEAKICNpbmNsdWRlICJMaWJXZWJSVENQcm92aWRlckNv
Y29hLmgiCiAKICNpZiBVU0UoTElCV0VCUlRDKQorCiAjaW5jbHVkZSA8d2VicnRjL21lZGlhL2Vu
Z2luZS93ZWJydGN2aWRlb2RlY29kZXJmYWN0b3J5Lmg+CiAjaW5jbHVkZSA8d2VicnRjL21lZGlh
L2VuZ2luZS93ZWJydGN2aWRlb2VuY29kZXJmYWN0b3J5Lmg+CiAjaW5jbHVkZSA8d2VicnRjL3Nk
ay9XZWJLaXQvV2ViS2l0VXRpbGl0aWVzLmg+CiAjaW5jbHVkZSA8d3RmL2Rhcndpbi9XZWFrTGlu
a2luZy5oPgotI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogVW5pcXVlUmVmPExpYldl
YlJUQ1Byb3ZpZGVyPiBMaWJXZWJSVENQcm92aWRlcjo6Y3JlYXRlKCkKIHsKLSNpZiBVU0UoTElC
V0VCUlRDKSAmJiBQTEFURk9STShDT0NPQSkKICAgICByZXR1cm4gbWFrZVVuaXF1ZVJlZjxMaWJX
ZWJSVENQcm92aWRlckNvY29hPigpOwotI2Vsc2UKLSAgICByZXR1cm4gbWFrZVVuaXF1ZVJlZjxM
aWJXZWJSVENQcm92aWRlcj4oKTsKLSNlbmRpZgogfQogCi0jaWYgVVNFKExJQldFQlJUQykKLQog
TGliV2ViUlRDUHJvdmlkZXJDb2NvYTo6fkxpYldlYlJUQ1Byb3ZpZGVyQ29jb2EoKQogewogfQpA
QCAtNzIsMTUgKzY2LDExIEBAIHZvaWQgTGliV2ViUlRDUHJvdmlkZXJDb2NvYTo6c2V0QWN0aXZl
KGJvb2wgdmFsdWUpCiAgICAgd2VicnRjOjpzZXRBcHBsaWNhdGlvblN0YXR1cyh2YWx1ZSk7CiB9
CiAKLSNlbmRpZiAvLyBVU0UoTElCV0VCUlRDKQotCiBib29sIExpYldlYlJUQ1Byb3ZpZGVyOjp3
ZWJSVENBdmFpbGFibGUoKQogewotI2lmIFVTRShMSUJXRUJSVEMpCiAgICAgcmV0dXJuICFpc051
bGxGdW5jdGlvblBvaW50ZXIocnRjOjpMb2dNZXNzYWdlOjpMb2dUb0RlYnVnKTsKLSNlbHNlCi0g
ICAgcmV0dXJuIHRydWU7Ci0jZW5kaWYKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisj
ZW5kaWYgLy8gVVNFKExJQldFQlJUQykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdTdHJlYW1lci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRD
UHJvdmlkZXJHU3RyZWFtZXIuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE1ZTJhODc4OWMwN2ZiMGQwYWVjNmY2
YzIwZjdiYjE3ZmE4ZGI3ZDIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJHU3RyZWFtZXIuY3Bw
CkBAIC0wLDAgKzEsNTcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTcgSWdhbGlhIFMuTC4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2lu
Y2x1ZGUgIkxpYldlYlJUQ1Byb3ZpZGVyR1N0cmVhbWVyLmgiCisKKyNpZiBVU0UoTElCV0VCUlRD
KSAmJiBVU0UoR1NUUkVBTUVSKQorCisjaW5jbHVkZSA8d3RmL1VuaXF1ZVJlZi5oPgorCituYW1l
c3BhY2UgV2ViQ29yZSB7CisKK1VuaXF1ZVJlZjxMaWJXZWJSVENQcm92aWRlcj4gTGliV2ViUlRD
UHJvdmlkZXI6OmNyZWF0ZSgpCit7CisgICAgcmV0dXJuIG1ha2VVbmlxdWVSZWY8TGliV2ViUlRD
UHJvdmlkZXJHU3RyZWFtZXI+KCk7Cit9CisKK2Jvb2wgTGliV2ViUlRDUHJvdmlkZXI6OndlYlJU
Q0F2YWlsYWJsZSgpCit7CisgICAgcmV0dXJuIHRydWU7Cit9CisKK3N0ZDo6dW5pcXVlX3B0cjx3
ZWJydGM6OlZpZGVvRGVjb2RlckZhY3Rvcnk+IExpYldlYlJUQ1Byb3ZpZGVyR1N0cmVhbWVyOjpj
cmVhdGVEZWNvZGVyRmFjdG9yeSgpCit7CisgICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8R1N0
cmVhbWVyVmlkZW9EZWNvZGVyRmFjdG9yeT4oKTsKK30KKworc3RkOjp1bmlxdWVfcHRyPHdlYnJ0
Yzo6VmlkZW9FbmNvZGVyRmFjdG9yeT4gTGliV2ViUlRDUHJvdmlkZXJHU3RyZWFtZXI6OmNyZWF0
ZUVuY29kZXJGYWN0b3J5KCkKK3sKKyAgICByZXR1cm4gc3RkOjptYWtlX3VuaXF1ZTxHU3RyZWFt
ZXJWaWRlb0VuY29kZXJGYWN0b3J5PigpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisK
KyNlbmRpZiAvLyBVU0UoTElCV0VCUlRDKSAmJiBVU0UoR1NUUkVBTUVSKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1By
b3ZpZGVyR1N0cmVhbWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9s
aWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJHU3RyZWFtZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lYjliMzNm
OTMyMTA4Y2JhODNmZjEzMjYzMzFhNGI2NDdiOWQ1NjIxCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3Zp
ZGVyR1N0cmVhbWVyLmgKQEAgLTAsMCArMSw0NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAx
NyBJZ2FsaWEgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9u
Y2UKKworI2luY2x1ZGUgIkxpYldlYlJUQ1Byb3ZpZGVyLmgiCisKKyNpZiBVU0UoTElCV0VCUlRD
KSAmJiBVU0UoR1NUUkVBTUVSKQorCisjaW5jbHVkZSAiR1N0cmVhbWVyVmlkZW9EZWNvZGVyRmFj
dG9yeS5oIgorI2luY2x1ZGUgIkdTdHJlYW1lclZpZGVvRW5jb2RlckZhY3RvcnkuaCIKKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBXRUJDT1JFX0VYUE9SVCBMaWJXZWJSVENQcm92aWRl
ckdTdHJlYW1lciA6IHB1YmxpYyBMaWJXZWJSVENQcm92aWRlciB7CitwdWJsaWM6CisgICAgTGli
V2ViUlRDUHJvdmlkZXJHU3RyZWFtZXIoKSA9IGRlZmF1bHQ7CisKKyAgICBzdGQ6OnVuaXF1ZV9w
dHI8d2VicnRjOjpWaWRlb0VuY29kZXJGYWN0b3J5PiBjcmVhdGVFbmNvZGVyRmFjdG9yeSgpIGZp
bmFsOworICAgIHN0ZDo6dW5pcXVlX3B0cjx3ZWJydGM6OlZpZGVvRGVjb2RlckZhY3Rvcnk+IGNy
ZWF0ZURlY29kZXJGYWN0b3J5KCkgZmluYWw7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyR2xpYi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJHbGliLmNwcApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDI1MTRhZjA0ZGFmYzYwMzAwMzQ1M2E1ZTdm
Mzk3YWI2OGU1MzJiNC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2Vi
UlRDUHJvdmlkZXJHbGliLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDYzICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTcgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
Ci0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0g
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
Ci0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkxpYldlYlJUQ1Byb3ZpZGVy
R2xpYi5oIgotCi0jaW5jbHVkZSA8d3RmL1VuaXF1ZVJlZi5oPgotCi1uYW1lc3BhY2UgV2ViQ29y
ZSB7Ci0KLVVuaXF1ZVJlZjxMaWJXZWJSVENQcm92aWRlcj4gTGliV2ViUlRDUHJvdmlkZXI6OmNy
ZWF0ZSgpCi17Ci0jaWYgVVNFKExJQldFQlJUQykgJiYgKFBMQVRGT1JNKEdUSykgfHwgUExBVEZP
Uk0oV1BFKSkKLSAgICByZXR1cm4gbWFrZVVuaXF1ZVJlZjxMaWJXZWJSVENQcm92aWRlckdsaWI+
KCk7Ci0jZWxzZQotICAgIHJldHVybiBtYWtlVW5pcXVlUmVmPExpYldlYlJUQ1Byb3ZpZGVyPigp
OwotI2VuZGlmCi19Ci0KLWJvb2wgTGliV2ViUlRDUHJvdmlkZXI6OndlYlJUQ0F2YWlsYWJsZSgp
Ci17Ci0jaWYgVVNFKExJQldFQlJUQykgJiYgVVNFKEdTVFJFQU1FUikKLSAgICByZXR1cm4gdHJ1
ZTsKLSNlbHNlCi0gICAgcmV0dXJuIGZhbHNlOwotI2VuZGlmCi19Ci0KLSNpZiBVU0UoTElCV0VC
UlRDKSAmJiBVU0UoR1NUUkVBTUVSKQotc3RkOjp1bmlxdWVfcHRyPHdlYnJ0Yzo6VmlkZW9EZWNv
ZGVyRmFjdG9yeT4gTGliV2ViUlRDUHJvdmlkZXJHbGliOjpjcmVhdGVEZWNvZGVyRmFjdG9yeSgp
Ci17Ci0gICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8R1N0cmVhbWVyVmlkZW9EZWNvZGVyRmFj
dG9yeT4oKTsKLX0KLQotc3RkOjp1bmlxdWVfcHRyPHdlYnJ0Yzo6VmlkZW9FbmNvZGVyRmFjdG9y
eT4gTGliV2ViUlRDUHJvdmlkZXJHbGliOjpjcmVhdGVFbmNvZGVyRmFjdG9yeSgpCi17Ci0gICAg
cmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8R1N0cmVhbWVyVmlkZW9FbmNvZGVyRmFjdG9yeT4oKTsK
LX0KLSNlbmRpZiAvLyBVU0UoTElCV0VCUlRDKSAmJiBVU0UoR1NUUkVBTUVSKQotCi19IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRp
YXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJHbGliLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJHbGliLmgK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDM2ODdiZmMzZDlmNDNhMDA2ZmI4YWEyNmE3
NDVkN2MwNjgyNTRhNzAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldl
YlJUQ1Byb3ZpZGVyR2xpYi5oCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotLyoKLSAq
IENvcHlyaWdodCAoQykgMjAxNyBJZ2FsaWEgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoK
LSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
LSAqLwotCi0jcHJhZ21hIG9uY2UKLQotI2lmIFVTRShHU1RSRUFNRVIpCi0jaW5jbHVkZSAiR1N0
cmVhbWVyVmlkZW9EZWNvZGVyRmFjdG9yeS5oIgotI2luY2x1ZGUgIkdTdHJlYW1lclZpZGVvRW5j
b2RlckZhY3RvcnkuaCIKLSNlbmRpZgotCi0jaW5jbHVkZSAiTGliV2ViUlRDUHJvdmlkZXIuaCIK
LQotI2lmIFVTRShMSUJXRUJSVEMpCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgV0VC
Q09SRV9FWFBPUlQgTGliV2ViUlRDUHJvdmlkZXJHbGliIDogcHVibGljIExpYldlYlJUQ1Byb3Zp
ZGVyIHsKLXB1YmxpYzoKLSAgICBMaWJXZWJSVENQcm92aWRlckdsaWIoKSA9IGRlZmF1bHQ7Ci0K
LSNpZiBVU0UoR1NUUkVBTUVSKQotICAgIHN0ZDo6dW5pcXVlX3B0cjx3ZWJydGM6OlZpZGVvRW5j
b2RlckZhY3Rvcnk+IGNyZWF0ZUVuY29kZXJGYWN0b3J5KCkgZmluYWw7Ci0gICAgc3RkOjp1bmlx
dWVfcHRyPHdlYnJ0Yzo6VmlkZW9EZWNvZGVyRmFjdG9yeT4gY3JlYXRlRGVjb2RlckZhY3Rvcnko
KSBmaW5hbDsKLSNlbmRpZgotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0
Yy9MaWJXZWJSVENQcm92aWRlcldpbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRp
YXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJXaW4uY3BwCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBiNGM1ZWYwYmY4NWE0YzQ4Njc3OGVhZTIzMzYwYTNkNWM3ZjU0MTYz
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlcldp
bi5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChD
KSAyMDE4IFNvbnkgSW50ZXJhY3RpdmUgRW50ZXJ0YWlubWVudCBJbmMuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNp
bmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJMaWJXZWJSVENQcm92aWRlci5oIgotCi1uYW1l
c3BhY2UgV2ViQ29yZSB7Ci0KLWJvb2wgTGliV2ViUlRDUHJvdmlkZXI6OndlYlJUQ0F2YWlsYWJs
ZSgpCi17Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354756</attachid>
            <date>2018-11-13 19:30:49 -0800</date>
            <delta_ts>2018-11-13 19:32:17 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-191611-20181113193048.patch</filename>
            <type>text/plain</type>
            <size>12310</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MTU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZThhODQzMmViYTI1NzJi
YjJkMmZkMTgyZmZjZDFmYTc1MGY3ZWZiNC4uYjgwNzU5OGNmODhmN2Y0Nzc3MTgyYzU0ODY3NDE2
YzM0MDk5Mjg4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE4LTExLTEzICBSb3Nz
IEtpcnNsaW5nICA8cm9zcy5raXJzbGluZ0Bzb255LmNvbT4KKworICAgICAgICBbV2ViUlRDXSBQ
cm92aWRlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gb2YgTGliV2ViUlRDUHJvdmlkZXIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MTYxMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJvLgorCisgICAgICAgIFJlZmFjdG9yIExp
YldlYlJUQ1Byb3ZpZGVyIHN1Y2ggdGhhdCBwbGF0Zm9ybS1zcGVjaWZpYyBpbXBsZW1lbnRhdGlv
bnMgbmVlZCBub3Qgd29ycnkgYWJvdXQgc3BlY2lmeWluZyBkZWZhdWx0cy4KKworICAgICAgICAq
IFBsYXRmb3JtV2luLmNtYWtlOgorICAgICAgICAqIHBsYXRmb3JtL0dTdHJlYW1lci5jbWFrZToK
KyAgICAgICAgKiBwbGF0Zm9ybS9Tb3VyY2VzR0xpYi50eHQ6CisgICAgICAgICogcGxhdGZvcm0v
bWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyLmNwcDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJDb2NvYS5jcHA6
CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3Zp
ZGVyR1N0cmVhbWVyLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdsaWIuY3BwLgorICAgICAgICAq
IHBsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdTdHJlYW1l
ci5oOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGli
d2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyR2xpYi5oLgorICAgICAgICAqIHBsYXRmb3JtL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlcldpbi5jcHA6IFJlbW92ZWQuCisKIDIw
MTgtMTEtMTMgIFRpbW90aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBwbGUuY29tPgogCiAgICAgICAg
IFVzZSBhIGxpZ2h0IHNjcm9sbGJhciBmb3IgdHJhbnNwYXJlbnQgd2ViIHZpZXdzIGluIGRhcmsg
bW9kZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtV2luLmNtYWtlIGIvU291
cmNlL1dlYkNvcmUvUGxhdGZvcm1XaW4uY21ha2UKaW5kZXggNWQzOWY2ZDEwOTlmMzNlMDA1YTMx
NDM3OTYxZWNiMDU5OWIxNzM5OS4uMTkzMGViYzM5YWZmNDZlZTlkYjgyMWY0NTlmYzNlY2UwMThl
NGJmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1XaW4uY21ha2UKKysrIGIv
U291cmNlL1dlYkNvcmUvUGxhdGZvcm1XaW4uY21ha2UKQEAgLTcxLDggKzcxLDYgQEAgbGlzdChB
UFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL1RyYW5zZm9y
bWF0aW9uTWF0cml4V2luLmNwcAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL3dpbi9VbmlzY3JpYmVD
b250cm9sbGVyLmNwcAogCi0gICAgcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldl
YlJUQ1Byb3ZpZGVyV2luLmNwcAotCiAgICAgcGxhdGZvcm0vbmV0d29yay93aW4vRG93bmxvYWRC
dW5kbGVXaW4uY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay93aW4vTmV0d29ya1N0YXRlTm90aWZp
ZXJXaW4uY3BwCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0dTdHJlYW1l
ci5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0dTdHJlYW1lci5jbWFrZQppbmRleCBk
NTM1NDRhN2RjN2M4MzYyOTljMDBhZDk1M2EwMzQwMWZmNjIwZjA2Li42YTBlMDMzYzJhMzcxODdk
ZGQ1YTY3OGFhOTAwNjQ4NzY1MmI1ODA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9HU3RyZWFtZXIuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vR1N0cmVh
bWVyLmNtYWtlCkBAIC0zNyw2ICszNyw3IEBAIGlmIChFTkFCTEVfVklERU8gT1IgRU5BQkxFX1dF
Ql9BVURJTykKICAgICAgICAgcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0dTdHJlYW1l
clZpZGVvRW5jb2Rlci5jcHAKICAgICAgICAgcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRj
L0dTdHJlYW1lclZpZGVvRW5jb2RlckZhY3RvcnkuY3BwCiAgICAgICAgIHBsYXRmb3JtL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENBdWRpb01vZHVsZS5jcHAKKyAgICAgICAgcGxhdGZv
cm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyR1N0cmVhbWVyLmNwcAog
CiAgICAgICAgIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJBdWRpb0Nh
cHR1cmVTb3VyY2UuY3BwCiAgICAgICAgIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9H
U3RyZWFtZXJBdWRpb0NhcHR1cmVyLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vU291cmNlc0dMaWIudHh0IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU291cmNlc0dM
aWIudHh0CmluZGV4IDU0Yzk4MzdkMzhkZjc0ZjBkZjIxMjcyMWFjZjhlMGFhOTA1ZDRmNmMuLjI3
NzNjMmEwODhiNjBmYjEzOTY5MmQ1ZjQwZDBiZWZjM2ZlYzNjYzQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1NvdXJjZXNHTGliLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9Tb3VyY2VzR0xpYi50eHQKQEAgLTMzLDUgKzMzLDMgQEAgcGxhdGZvcm0vZ2xpYi9T
aGFyZWRCdWZmZXJHbGliLmNwcAogcGxhdGZvcm0vZ2xpYi9Vc2VyQWdlbnRHTGliLmNwcAogCiBw
bGF0Zm9ybS9uZXR3b3JrL2dsaWIvTmV0d29ya1N0YXRlTm90aWZpZXJHTGliLmNwcAotCi1wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJHbGliLmNwcApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xp
YldlYlJUQ1Byb3ZpZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5jcHAKaW5kZXggZWRjNzBlYjk0NmMzZDgwOGY1
ODY0NGE1ZTRjMWNiZjFkNmVmZTM5Ni4uZTVkYWI2NjlkODI4N2ViZDMwZTE0ZWQ2MTUxN2E5OWZi
MTJjMDRmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0v
bGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXIuY3BwCkBAIC01Miwx
MSArNTIsMTYgQEAgQUxMT1dfVU5VU0VEX1BBUkFNRVRFUlNfRU5ECiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAotI2lmICFQTEFURk9STShDT0NPQSkgJiYgIVBMQVRGT1JNKEdUSykgJiYgIVBMQVRG
T1JNKFdQRSkKKyNpZiAhVVNFKExJQldFQlJUQykKIFVuaXF1ZVJlZjxMaWJXZWJSVENQcm92aWRl
cj4gTGliV2ViUlRDUHJvdmlkZXI6OmNyZWF0ZSgpCiB7CiAgICAgcmV0dXJuIG1ha2VVbmlxdWVS
ZWY8TGliV2ViUlRDUHJvdmlkZXI+KCk7CiB9CisKK2Jvb2wgTGliV2ViUlRDUHJvdmlkZXI6Ondl
YlJUQ0F2YWlsYWJsZSgpCit7CisgICAgcmV0dXJuIGZhbHNlOworfQogI2VuZGlmCiAKIHZvaWQg
TGliV2ViUlRDUHJvdmlkZXI6OnNldEFjdGl2ZShib29sKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyQ29j
b2EuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xp
YldlYlJUQ1Byb3ZpZGVyQ29jb2EuY3BwCmluZGV4IDAzZDczNjY1Y2ZlMzNhOWExNTMwYjA1ODI4
M2YxZDcyZTY0ZmIyZGYuLjFhNGQzZTY0ZTU1MzY1ZWNlZTViODQ4NDQ3OTMzNGY0MTY0MzVkMjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0
Yy9MaWJXZWJSVENQcm92aWRlckNvY29hLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJDb2NvYS5jcHAKQEAgLTI3
LDI1ICsyNywxOSBAQAogI2luY2x1ZGUgIkxpYldlYlJUQ1Byb3ZpZGVyQ29jb2EuaCIKIAogI2lm
IFVTRShMSUJXRUJSVEMpCisKICNpbmNsdWRlIDx3ZWJydGMvbWVkaWEvZW5naW5lL3dlYnJ0Y3Zp
ZGVvZGVjb2RlcmZhY3RvcnkuaD4KICNpbmNsdWRlIDx3ZWJydGMvbWVkaWEvZW5naW5lL3dlYnJ0
Y3ZpZGVvZW5jb2RlcmZhY3RvcnkuaD4KICNpbmNsdWRlIDx3ZWJydGMvc2RrL1dlYktpdC9XZWJL
aXRVdGlsaXRpZXMuaD4KICNpbmNsdWRlIDx3dGYvZGFyd2luL1dlYWtMaW5raW5nLmg+Ci0jZW5k
aWYKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBVbmlxdWVSZWY8TGliV2ViUlRDUHJvdmlkZXI+
IExpYldlYlJUQ1Byb3ZpZGVyOjpjcmVhdGUoKQogewotI2lmIFVTRShMSUJXRUJSVEMpICYmIFBM
QVRGT1JNKENPQ09BKQogICAgIHJldHVybiBtYWtlVW5pcXVlUmVmPExpYldlYlJUQ1Byb3ZpZGVy
Q29jb2E+KCk7Ci0jZWxzZQotICAgIHJldHVybiBtYWtlVW5pcXVlUmVmPExpYldlYlJUQ1Byb3Zp
ZGVyPigpOwotI2VuZGlmCiB9CiAKLSNpZiBVU0UoTElCV0VCUlRDKQotCiBMaWJXZWJSVENQcm92
aWRlckNvY29hOjp+TGliV2ViUlRDUHJvdmlkZXJDb2NvYSgpCiB7CiB9CkBAIC03MiwxNSArNjYs
MTEgQEAgdm9pZCBMaWJXZWJSVENQcm92aWRlckNvY29hOjpzZXRBY3RpdmUoYm9vbCB2YWx1ZSkK
ICAgICB3ZWJydGM6OnNldEFwcGxpY2F0aW9uU3RhdHVzKHZhbHVlKTsKIH0KIAotI2VuZGlmIC8v
IFVTRShMSUJXRUJSVEMpCi0KIGJvb2wgTGliV2ViUlRDUHJvdmlkZXI6OndlYlJUQ0F2YWlsYWJs
ZSgpCiB7Ci0jaWYgVVNFKExJQldFQlJUQykKICAgICByZXR1cm4gIWlzTnVsbEZ1bmN0aW9uUG9p
bnRlcihydGM6OkxvZ01lc3NhZ2U6OkxvZ1RvRGVidWcpOwotI2Vsc2UKLSAgICByZXR1cm4gdHJ1
ZTsKLSNlbmRpZgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBVU0Uo
TElCV0VCUlRDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyR2xpYi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJHbGliLmNwcApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDI1MTRhZjA0ZGFmYzYwMzAwMzQ1M2E1ZTdm
Mzk3YWI2OGU1MzJiNC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2Vi
UlRDUHJvdmlkZXJHbGliLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDYzICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTcgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
Ci0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0g
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
Ci0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkxpYldlYlJUQ1Byb3ZpZGVy
R2xpYi5oIgotCi0jaW5jbHVkZSA8d3RmL1VuaXF1ZVJlZi5oPgotCi1uYW1lc3BhY2UgV2ViQ29y
ZSB7Ci0KLVVuaXF1ZVJlZjxMaWJXZWJSVENQcm92aWRlcj4gTGliV2ViUlRDUHJvdmlkZXI6OmNy
ZWF0ZSgpCi17Ci0jaWYgVVNFKExJQldFQlJUQykgJiYgKFBMQVRGT1JNKEdUSykgfHwgUExBVEZP
Uk0oV1BFKSkKLSAgICByZXR1cm4gbWFrZVVuaXF1ZVJlZjxMaWJXZWJSVENQcm92aWRlckdsaWI+
KCk7Ci0jZWxzZQotICAgIHJldHVybiBtYWtlVW5pcXVlUmVmPExpYldlYlJUQ1Byb3ZpZGVyPigp
OwotI2VuZGlmCi19Ci0KLWJvb2wgTGliV2ViUlRDUHJvdmlkZXI6OndlYlJUQ0F2YWlsYWJsZSgp
Ci17Ci0jaWYgVVNFKExJQldFQlJUQykgJiYgVVNFKEdTVFJFQU1FUikKLSAgICByZXR1cm4gdHJ1
ZTsKLSNlbHNlCi0gICAgcmV0dXJuIGZhbHNlOwotI2VuZGlmCi19Ci0KLSNpZiBVU0UoTElCV0VC
UlRDKSAmJiBVU0UoR1NUUkVBTUVSKQotc3RkOjp1bmlxdWVfcHRyPHdlYnJ0Yzo6VmlkZW9EZWNv
ZGVyRmFjdG9yeT4gTGliV2ViUlRDUHJvdmlkZXJHbGliOjpjcmVhdGVEZWNvZGVyRmFjdG9yeSgp
Ci17Ci0gICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8R1N0cmVhbWVyVmlkZW9EZWNvZGVyRmFj
dG9yeT4oKTsKLX0KLQotc3RkOjp1bmlxdWVfcHRyPHdlYnJ0Yzo6VmlkZW9FbmNvZGVyRmFjdG9y
eT4gTGliV2ViUlRDUHJvdmlkZXJHbGliOjpjcmVhdGVFbmNvZGVyRmFjdG9yeSgpCi17Ci0gICAg
cmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8R1N0cmVhbWVyVmlkZW9FbmNvZGVyRmFjdG9yeT4oKTsK
LX0KLSNlbmRpZiAvLyBVU0UoTElCV0VCUlRDKSAmJiBVU0UoR1NUUkVBTUVSKQotCi19IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRp
YXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJHbGliLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJHbGliLmgK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDM2ODdiZmMzZDlmNDNhMDA2ZmI4YWEyNmE3
NDVkN2MwNjgyNTRhNzAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldl
YlJUQ1Byb3ZpZGVyR2xpYi5oCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotLyoKLSAq
IENvcHlyaWdodCAoQykgMjAxNyBJZ2FsaWEgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoK
LSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
LSAqLwotCi0jcHJhZ21hIG9uY2UKLQotI2lmIFVTRShHU1RSRUFNRVIpCi0jaW5jbHVkZSAiR1N0
cmVhbWVyVmlkZW9EZWNvZGVyRmFjdG9yeS5oIgotI2luY2x1ZGUgIkdTdHJlYW1lclZpZGVvRW5j
b2RlckZhY3RvcnkuaCIKLSNlbmRpZgotCi0jaW5jbHVkZSAiTGliV2ViUlRDUHJvdmlkZXIuaCIK
LQotI2lmIFVTRShMSUJXRUJSVEMpCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgV0VC
Q09SRV9FWFBPUlQgTGliV2ViUlRDUHJvdmlkZXJHbGliIDogcHVibGljIExpYldlYlJUQ1Byb3Zp
ZGVyIHsKLXB1YmxpYzoKLSAgICBMaWJXZWJSVENQcm92aWRlckdsaWIoKSA9IGRlZmF1bHQ7Ci0K
LSNpZiBVU0UoR1NUUkVBTUVSKQotICAgIHN0ZDo6dW5pcXVlX3B0cjx3ZWJydGM6OlZpZGVvRW5j
b2RlckZhY3Rvcnk+IGNyZWF0ZUVuY29kZXJGYWN0b3J5KCkgZmluYWw7Ci0gICAgc3RkOjp1bmlx
dWVfcHRyPHdlYnJ0Yzo6VmlkZW9EZWNvZGVyRmFjdG9yeT4gY3JlYXRlRGVjb2RlckZhY3Rvcnko
KSBmaW5hbDsKLSNlbmRpZgotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0
Yy9MaWJXZWJSVENQcm92aWRlcldpbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRp
YXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJXaW4uY3BwCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBiNGM1ZWYwYmY4NWE0YzQ4Njc3OGVhZTIzMzYwYTNkNWM3ZjU0MTYz
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlcldp
bi5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChD
KSAyMDE4IFNvbnkgSW50ZXJhY3RpdmUgRW50ZXJ0YWlubWVudCBJbmMuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNp
bmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJMaWJXZWJSVENQcm92aWRlci5oIgotCi1uYW1l
c3BhY2UgV2ViQ29yZSB7Ci0KLWJvb2wgTGliV2ViUlRDUHJvdmlkZXI6OndlYlJUQ0F2YWlsYWJs
ZSgpCi17Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354757</attachid>
            <date>2018-11-13 19:32:19 -0800</date>
            <delta_ts>2018-11-13 19:57:29 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-191611-20181113193218.patch</filename>
            <type>text/plain</type>
            <size>17142</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MTU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZThhODQzMmViYTI1NzJi
YjJkMmZkMTgyZmZjZDFmYTc1MGY3ZWZiNC4uYjgwNzU5OGNmODhmN2Y0Nzc3MTgyYzU0ODY3NDE2
YzM0MDk5Mjg4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE4LTExLTEzICBSb3Nz
IEtpcnNsaW5nICA8cm9zcy5raXJzbGluZ0Bzb255LmNvbT4KKworICAgICAgICBbV2ViUlRDXSBQ
cm92aWRlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gb2YgTGliV2ViUlRDUHJvdmlkZXIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MTYxMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJvLgorCisgICAgICAgIFJlZmFjdG9yIExp
YldlYlJUQ1Byb3ZpZGVyIHN1Y2ggdGhhdCBwbGF0Zm9ybS1zcGVjaWZpYyBpbXBsZW1lbnRhdGlv
bnMgbmVlZCBub3Qgd29ycnkgYWJvdXQgc3BlY2lmeWluZyBkZWZhdWx0cy4KKworICAgICAgICAq
IFBsYXRmb3JtV2luLmNtYWtlOgorICAgICAgICAqIHBsYXRmb3JtL0dTdHJlYW1lci5jbWFrZToK
KyAgICAgICAgKiBwbGF0Zm9ybS9Tb3VyY2VzR0xpYi50eHQ6CisgICAgICAgICogcGxhdGZvcm0v
bWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyLmNwcDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJDb2NvYS5jcHA6
CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3Zp
ZGVyR1N0cmVhbWVyLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdsaWIuY3BwLgorICAgICAgICAq
IHBsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdTdHJlYW1l
ci5oOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGli
d2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyR2xpYi5oLgorICAgICAgICAqIHBsYXRmb3JtL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlcldpbi5jcHA6IFJlbW92ZWQuCisKIDIw
MTgtMTEtMTMgIFRpbW90aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBwbGUuY29tPgogCiAgICAgICAg
IFVzZSBhIGxpZ2h0IHNjcm9sbGJhciBmb3IgdHJhbnNwYXJlbnQgd2ViIHZpZXdzIGluIGRhcmsg
bW9kZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtV2luLmNtYWtlIGIvU291
cmNlL1dlYkNvcmUvUGxhdGZvcm1XaW4uY21ha2UKaW5kZXggNWQzOWY2ZDEwOTlmMzNlMDA1YTMx
NDM3OTYxZWNiMDU5OWIxNzM5OS4uMTkzMGViYzM5YWZmNDZlZTlkYjgyMWY0NTlmYzNlY2UwMThl
NGJmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1XaW4uY21ha2UKKysrIGIv
U291cmNlL1dlYkNvcmUvUGxhdGZvcm1XaW4uY21ha2UKQEAgLTcxLDggKzcxLDYgQEAgbGlzdChB
UFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL1RyYW5zZm9y
bWF0aW9uTWF0cml4V2luLmNwcAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL3dpbi9VbmlzY3JpYmVD
b250cm9sbGVyLmNwcAogCi0gICAgcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldl
YlJUQ1Byb3ZpZGVyV2luLmNwcAotCiAgICAgcGxhdGZvcm0vbmV0d29yay93aW4vRG93bmxvYWRC
dW5kbGVXaW4uY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay93aW4vTmV0d29ya1N0YXRlTm90aWZp
ZXJXaW4uY3BwCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0dTdHJlYW1l
ci5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0dTdHJlYW1lci5jbWFrZQppbmRleCBk
NTM1NDRhN2RjN2M4MzYyOTljMDBhZDk1M2EwMzQwMWZmNjIwZjA2Li42YTBlMDMzYzJhMzcxODdk
ZGQ1YTY3OGFhOTAwNjQ4NzY1MmI1ODA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9HU3RyZWFtZXIuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vR1N0cmVh
bWVyLmNtYWtlCkBAIC0zNyw2ICszNyw3IEBAIGlmIChFTkFCTEVfVklERU8gT1IgRU5BQkxFX1dF
Ql9BVURJTykKICAgICAgICAgcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0dTdHJlYW1l
clZpZGVvRW5jb2Rlci5jcHAKICAgICAgICAgcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRj
L0dTdHJlYW1lclZpZGVvRW5jb2RlckZhY3RvcnkuY3BwCiAgICAgICAgIHBsYXRmb3JtL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENBdWRpb01vZHVsZS5jcHAKKyAgICAgICAgcGxhdGZv
cm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyR1N0cmVhbWVyLmNwcAog
CiAgICAgICAgIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJBdWRpb0Nh
cHR1cmVTb3VyY2UuY3BwCiAgICAgICAgIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9H
U3RyZWFtZXJBdWRpb0NhcHR1cmVyLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vU291cmNlc0dMaWIudHh0IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU291cmNlc0dM
aWIudHh0CmluZGV4IDU0Yzk4MzdkMzhkZjc0ZjBkZjIxMjcyMWFjZjhlMGFhOTA1ZDRmNmMuLjI3
NzNjMmEwODhiNjBmYjEzOTY5MmQ1ZjQwZDBiZWZjM2ZlYzNjYzQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1NvdXJjZXNHTGliLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9Tb3VyY2VzR0xpYi50eHQKQEAgLTMzLDUgKzMzLDMgQEAgcGxhdGZvcm0vZ2xpYi9T
aGFyZWRCdWZmZXJHbGliLmNwcAogcGxhdGZvcm0vZ2xpYi9Vc2VyQWdlbnRHTGliLmNwcAogCiBw
bGF0Zm9ybS9uZXR3b3JrL2dsaWIvTmV0d29ya1N0YXRlTm90aWZpZXJHTGliLmNwcAotCi1wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJHbGliLmNwcApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xp
YldlYlJUQ1Byb3ZpZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5jcHAKaW5kZXggZWRjNzBlYjk0NmMzZDgwOGY1
ODY0NGE1ZTRjMWNiZjFkNmVmZTM5Ni4uZTVkYWI2NjlkODI4N2ViZDMwZTE0ZWQ2MTUxN2E5OWZi
MTJjMDRmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0v
bGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXIuY3BwCkBAIC01Miwx
MSArNTIsMTYgQEAgQUxMT1dfVU5VU0VEX1BBUkFNRVRFUlNfRU5ECiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAotI2lmICFQTEFURk9STShDT0NPQSkgJiYgIVBMQVRGT1JNKEdUSykgJiYgIVBMQVRG
T1JNKFdQRSkKKyNpZiAhVVNFKExJQldFQlJUQykKIFVuaXF1ZVJlZjxMaWJXZWJSVENQcm92aWRl
cj4gTGliV2ViUlRDUHJvdmlkZXI6OmNyZWF0ZSgpCiB7CiAgICAgcmV0dXJuIG1ha2VVbmlxdWVS
ZWY8TGliV2ViUlRDUHJvdmlkZXI+KCk7CiB9CisKK2Jvb2wgTGliV2ViUlRDUHJvdmlkZXI6Ondl
YlJUQ0F2YWlsYWJsZSgpCit7CisgICAgcmV0dXJuIGZhbHNlOworfQogI2VuZGlmCiAKIHZvaWQg
TGliV2ViUlRDUHJvdmlkZXI6OnNldEFjdGl2ZShib29sKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyQ29j
b2EuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xp
YldlYlJUQ1Byb3ZpZGVyQ29jb2EuY3BwCmluZGV4IDAzZDczNjY1Y2ZlMzNhOWExNTMwYjA1ODI4
M2YxZDcyZTY0ZmIyZGYuLjFhNGQzZTY0ZTU1MzY1ZWNlZTViODQ4NDQ3OTMzNGY0MTY0MzVkMjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0
Yy9MaWJXZWJSVENQcm92aWRlckNvY29hLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJDb2NvYS5jcHAKQEAgLTI3
LDI1ICsyNywxOSBAQAogI2luY2x1ZGUgIkxpYldlYlJUQ1Byb3ZpZGVyQ29jb2EuaCIKIAogI2lm
IFVTRShMSUJXRUJSVEMpCisKICNpbmNsdWRlIDx3ZWJydGMvbWVkaWEvZW5naW5lL3dlYnJ0Y3Zp
ZGVvZGVjb2RlcmZhY3RvcnkuaD4KICNpbmNsdWRlIDx3ZWJydGMvbWVkaWEvZW5naW5lL3dlYnJ0
Y3ZpZGVvZW5jb2RlcmZhY3RvcnkuaD4KICNpbmNsdWRlIDx3ZWJydGMvc2RrL1dlYktpdC9XZWJL
aXRVdGlsaXRpZXMuaD4KICNpbmNsdWRlIDx3dGYvZGFyd2luL1dlYWtMaW5raW5nLmg+Ci0jZW5k
aWYKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBVbmlxdWVSZWY8TGliV2ViUlRDUHJvdmlkZXI+
IExpYldlYlJUQ1Byb3ZpZGVyOjpjcmVhdGUoKQogewotI2lmIFVTRShMSUJXRUJSVEMpICYmIFBM
QVRGT1JNKENPQ09BKQogICAgIHJldHVybiBtYWtlVW5pcXVlUmVmPExpYldlYlJUQ1Byb3ZpZGVy
Q29jb2E+KCk7Ci0jZWxzZQotICAgIHJldHVybiBtYWtlVW5pcXVlUmVmPExpYldlYlJUQ1Byb3Zp
ZGVyPigpOwotI2VuZGlmCiB9CiAKLSNpZiBVU0UoTElCV0VCUlRDKQotCiBMaWJXZWJSVENQcm92
aWRlckNvY29hOjp+TGliV2ViUlRDUHJvdmlkZXJDb2NvYSgpCiB7CiB9CkBAIC03MiwxNSArNjYs
MTEgQEAgdm9pZCBMaWJXZWJSVENQcm92aWRlckNvY29hOjpzZXRBY3RpdmUoYm9vbCB2YWx1ZSkK
ICAgICB3ZWJydGM6OnNldEFwcGxpY2F0aW9uU3RhdHVzKHZhbHVlKTsKIH0KIAotI2VuZGlmIC8v
IFVTRShMSUJXRUJSVEMpCi0KIGJvb2wgTGliV2ViUlRDUHJvdmlkZXI6OndlYlJUQ0F2YWlsYWJs
ZSgpCiB7Ci0jaWYgVVNFKExJQldFQlJUQykKICAgICByZXR1cm4gIWlzTnVsbEZ1bmN0aW9uUG9p
bnRlcihydGM6OkxvZ01lc3NhZ2U6OkxvZ1RvRGVidWcpOwotI2Vsc2UKLSAgICByZXR1cm4gdHJ1
ZTsKLSNlbmRpZgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBVU0Uo
TElCV0VCUlRDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyR1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdTdHJl
YW1lci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMTVlMmE4Nzg5YzA3ZmIwZDBhZWM2ZjZjMjBmN2JiMTdmYThk
YjdkMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdTdHJlYW1lci5jcHAKQEAgLTAsMCArMSw1
NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNyBJZ2FsaWEgUy5MLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisg
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiTGliV2Vi
UlRDUHJvdmlkZXJHU3RyZWFtZXIuaCIKKworI2lmIFVTRShMSUJXRUJSVEMpICYmIFVTRShHU1RS
RUFNRVIpCisKKyNpbmNsdWRlIDx3dGYvVW5pcXVlUmVmLmg+CisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworVW5pcXVlUmVmPExpYldlYlJUQ1Byb3ZpZGVyPiBMaWJXZWJSVENQcm92aWRlcjo6Y3Jl
YXRlKCkKK3sKKyAgICByZXR1cm4gbWFrZVVuaXF1ZVJlZjxMaWJXZWJSVENQcm92aWRlckdTdHJl
YW1lcj4oKTsKK30KKworYm9vbCBMaWJXZWJSVENQcm92aWRlcjo6d2ViUlRDQXZhaWxhYmxlKCkK
K3sKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworc3RkOjp1bmlxdWVfcHRyPHdlYnJ0Yzo6VmlkZW9E
ZWNvZGVyRmFjdG9yeT4gTGliV2ViUlRDUHJvdmlkZXJHU3RyZWFtZXI6OmNyZWF0ZURlY29kZXJG
YWN0b3J5KCkKK3sKKyAgICByZXR1cm4gc3RkOjptYWtlX3VuaXF1ZTxHU3RyZWFtZXJWaWRlb0Rl
Y29kZXJGYWN0b3J5PigpOworfQorCitzdGQ6OnVuaXF1ZV9wdHI8d2VicnRjOjpWaWRlb0VuY29k
ZXJGYWN0b3J5PiBMaWJXZWJSVENQcm92aWRlckdTdHJlYW1lcjo6Y3JlYXRlRW5jb2RlckZhY3Rv
cnkoKQoreworICAgIHJldHVybiBzdGQ6Om1ha2VfdW5pcXVlPEdTdHJlYW1lclZpZGVvRW5jb2Rl
ckZhY3Rvcnk+KCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIFVT
RShMSUJXRUJSVEMpICYmIFVTRShHU1RSRUFNRVIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJHU3RyZWFt
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJX
ZWJSVENQcm92aWRlckdTdHJlYW1lci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmViOWIzM2Y5MzIxMDhjYmE4M2Zm
MTMyNjMzMWE0YjY0N2I5ZDU2MjEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJHU3RyZWFtZXIu
aApAQCAtMCwwICsxLDQ3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE3IElnYWxpYSBTLkwu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVk
ZSAiTGliV2ViUlRDUHJvdmlkZXIuaCIKKworI2lmIFVTRShMSUJXRUJSVEMpICYmIFVTRShHU1RS
RUFNRVIpCisKKyNpbmNsdWRlICJHU3RyZWFtZXJWaWRlb0RlY29kZXJGYWN0b3J5LmgiCisjaW5j
bHVkZSAiR1N0cmVhbWVyVmlkZW9FbmNvZGVyRmFjdG9yeS5oIgorCituYW1lc3BhY2UgV2ViQ29y
ZSB7CisKK2NsYXNzIFdFQkNPUkVfRVhQT1JUIExpYldlYlJUQ1Byb3ZpZGVyR1N0cmVhbWVyIDog
cHVibGljIExpYldlYlJUQ1Byb3ZpZGVyIHsKK3B1YmxpYzoKKyAgICBMaWJXZWJSVENQcm92aWRl
ckdTdHJlYW1lcigpID0gZGVmYXVsdDsKKworICAgIHN0ZDo6dW5pcXVlX3B0cjx3ZWJydGM6OlZp
ZGVvRW5jb2RlckZhY3Rvcnk+IGNyZWF0ZUVuY29kZXJGYWN0b3J5KCkgZmluYWw7CisgICAgc3Rk
Ojp1bmlxdWVfcHRyPHdlYnJ0Yzo6VmlkZW9EZWNvZGVyRmFjdG9yeT4gY3JlYXRlRGVjb2RlckZh
Y3RvcnkoKSBmaW5hbDsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMv
TGliV2ViUlRDUHJvdmlkZXJHbGliLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdsaWIuY3BwCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA0MjUxNGFmMDRkYWZjNjAzMDAzNDUzYTVlN2YzOTdhYjY4ZTUzMmI0
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckds
aWIuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNjMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxNyBJZ2FsaWEgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5j
bHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTGliV2ViUlRDUHJvdmlkZXJHbGliLmgiCi0KLSNp
bmNsdWRlIDx3dGYvVW5pcXVlUmVmLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotVW5pcXVl
UmVmPExpYldlYlJUQ1Byb3ZpZGVyPiBMaWJXZWJSVENQcm92aWRlcjo6Y3JlYXRlKCkKLXsKLSNp
ZiBVU0UoTElCV0VCUlRDKSAmJiAoUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShXUEUpKQotICAg
IHJldHVybiBtYWtlVW5pcXVlUmVmPExpYldlYlJUQ1Byb3ZpZGVyR2xpYj4oKTsKLSNlbHNlCi0g
ICAgcmV0dXJuIG1ha2VVbmlxdWVSZWY8TGliV2ViUlRDUHJvdmlkZXI+KCk7Ci0jZW5kaWYKLX0K
LQotYm9vbCBMaWJXZWJSVENQcm92aWRlcjo6d2ViUlRDQXZhaWxhYmxlKCkKLXsKLSNpZiBVU0Uo
TElCV0VCUlRDKSAmJiBVU0UoR1NUUkVBTUVSKQotICAgIHJldHVybiB0cnVlOwotI2Vsc2UKLSAg
ICByZXR1cm4gZmFsc2U7Ci0jZW5kaWYKLX0KLQotI2lmIFVTRShMSUJXRUJSVEMpICYmIFVTRShH
U1RSRUFNRVIpCi1zdGQ6OnVuaXF1ZV9wdHI8d2VicnRjOjpWaWRlb0RlY29kZXJGYWN0b3J5PiBM
aWJXZWJSVENQcm92aWRlckdsaWI6OmNyZWF0ZURlY29kZXJGYWN0b3J5KCkKLXsKLSAgICByZXR1
cm4gc3RkOjptYWtlX3VuaXF1ZTxHU3RyZWFtZXJWaWRlb0RlY29kZXJGYWN0b3J5PigpOwotfQot
Ci1zdGQ6OnVuaXF1ZV9wdHI8d2VicnRjOjpWaWRlb0VuY29kZXJGYWN0b3J5PiBMaWJXZWJSVENQ
cm92aWRlckdsaWI6OmNyZWF0ZUVuY29kZXJGYWN0b3J5KCkKLXsKLSAgICByZXR1cm4gc3RkOjpt
YWtlX3VuaXF1ZTxHU3RyZWFtZXJWaWRlb0VuY29kZXJGYWN0b3J5PigpOwotfQotI2VuZGlmIC8v
IFVTRShMSUJXRUJSVEMpICYmIFVTRShHU1RSRUFNRVIpCi0KLX0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndl
YnJ0Yy9MaWJXZWJSVENQcm92aWRlckdsaWIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckdsaWIuaApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMzY4N2JmYzNkOWY0M2EwMDZmYjhhYTI2YTc0NWQ3YzA2ODI1NGE3
MC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXJH
bGliLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChD
KSAyMDE3IElnYWxpYSBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNwcmFn
bWEgb25jZQotCi0jaWYgVVNFKEdTVFJFQU1FUikKLSNpbmNsdWRlICJHU3RyZWFtZXJWaWRlb0Rl
Y29kZXJGYWN0b3J5LmgiCi0jaW5jbHVkZSAiR1N0cmVhbWVyVmlkZW9FbmNvZGVyRmFjdG9yeS5o
IgotI2VuZGlmCi0KLSNpbmNsdWRlICJMaWJXZWJSVENQcm92aWRlci5oIgotCi0jaWYgVVNFKExJ
QldFQlJUQykKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBXRUJDT1JFX0VYUE9SVCBM
aWJXZWJSVENQcm92aWRlckdsaWIgOiBwdWJsaWMgTGliV2ViUlRDUHJvdmlkZXIgewotcHVibGlj
OgotICAgIExpYldlYlJUQ1Byb3ZpZGVyR2xpYigpID0gZGVmYXVsdDsKLQotI2lmIFVTRShHU1RS
RUFNRVIpCi0gICAgc3RkOjp1bmlxdWVfcHRyPHdlYnJ0Yzo6VmlkZW9FbmNvZGVyRmFjdG9yeT4g
Y3JlYXRlRW5jb2RlckZhY3RvcnkoKSBmaW5hbDsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8d2VicnRj
OjpWaWRlb0RlY29kZXJGYWN0b3J5PiBjcmVhdGVEZWNvZGVyRmFjdG9yeSgpIGZpbmFsOwotI2Vu
ZGlmCi19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1By
b3ZpZGVyV2luLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2xpYndl
YnJ0Yy9MaWJXZWJSVENQcm92aWRlcldpbi5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGI0YzVlZjBiZjg1YTRjNDg2Nzc4ZWFlMjMzNjBhM2Q1YzdmNTQxNjMuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyV2luLmNwcAorKysgL2Rl
di9udWxsCkBAIC0xLDM2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTggU29ueSBJ
bnRlcmFjdGl2ZSBFbnRlcnRhaW5tZW50IEluYy4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwot
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0g
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZp
Zy5oIgotI2luY2x1ZGUgIkxpYldlYlJUQ1Byb3ZpZGVyLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3Jl
IHsKLQotYm9vbCBMaWJXZWJSVENQcm92aWRlcjo6d2ViUlRDQXZhaWxhYmxlKCkKLXsKLSAgICBy
ZXR1cm4gZmFsc2U7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
      

    </bug>

</bugzilla>