<?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>182679</bug_id>
          
          <creation_ts>2018-02-11 20:25:22 -0800</creation_ts>
          <short_desc>[WinCairo] Fix build errors which come from including headers and not suitable implementation for windows</short_desc>
          <delta_ts>2018-02-14 17:43:45 -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>WebKit2</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=182797</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=182810</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>182681</dependson>
          <blocked>174003</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Yousuke Kimoto">Yousuke.Kimoto</reporter>
          <assigned_to name="Yousuke Kimoto">Yousuke.Kimoto</assigned_to>
          <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>don.olmstead</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>ross.kirsling</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wilander</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1398299</commentid>
    <comment_count>0</comment_count>
    <who name="Yousuke Kimoto">Yousuke.Kimoto</who>
    <bug_when>2018-02-11 20:25:22 -0800</bug_when>
    <thetext>For WinCairo WebKit build, some build errors which come from including headers must be fixed.
Those headers are not supported by the Windows SDK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398300</commentid>
    <comment_count>1</comment_count>
      <attachid>333576</attachid>
    <who name="Yousuke Kimoto">Yousuke.Kimoto</who>
    <bug_when>2018-02-11 20:31:28 -0800</bug_when>
    <thetext>Created attachment 333576
bz182679-1.patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398306</commentid>
    <comment_count>2</comment_count>
    <who name="Yousuke Kimoto">Yousuke.Kimoto</who>
    <bug_when>2018-02-11 21:24:34 -0800</bug_when>
    <thetext>A patch for bug 182681 is required before landing this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398642</commentid>
    <comment_count>3</comment_count>
      <attachid>333682</attachid>
    <who name="Yousuke Kimoto">Yousuke.Kimoto</who>
    <bug_when>2018-02-13 04:56:51 -0800</bug_when>
    <thetext>Created attachment 333682
bz182679-2.patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398737</commentid>
    <comment_count>4</comment_count>
      <attachid>333716</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2018-02-13 13:05:26 -0800</bug_when>
    <thetext>Created attachment 333716
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398739</commentid>
    <comment_count>5</comment_count>
      <attachid>333716</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2018-02-13 13:08:44 -0800</bug_when>
    <thetext>Comment on attachment 333716
Patch

Fixed the #include guard in WKBase.h.

Seems like something other than the C preprocessor is running over this file, so even `#if 0` doesn&apos;t remove anything. #elifs did the trick though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398846</commentid>
    <comment_count>6</comment_count>
      <attachid>333716</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-02-13 16:31:57 -0800</bug_when>
    <thetext>Comment on attachment 333716
Patch

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

&gt; Source/WebKit/NetworkProcess/cache/NetworkCacheBlobStorage.cpp:37
&gt; +#if !OS(WINDOWS)
&gt;  #include &lt;sys/mman.h&gt;
&gt;  #include &lt;sys/stat.h&gt;
&gt;  #include &lt;unistd.h&gt;
&gt; +#endif

Style: please move these down beneath the other #includes, and leave one blank like before #if !OS(WINDOWS). You got it right *almost* everywhere else.

&gt; Source/WebKit/WebProcess/WebProcess.cpp:122
&gt; +#if !OS(WINDOWS)
&gt;  #include &lt;unistd.h&gt;
&gt; +#endif

Here too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398851</commentid>
    <comment_count>7</comment_count>
      <attachid>333744</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2018-02-13 16:46:37 -0800</bug_when>
    <thetext>Created attachment 333744
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398940</commentid>
    <comment_count>8</comment_count>
      <attachid>333744</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-02-13 21:00:03 -0800</bug_when>
    <thetext>Comment on attachment 333744
Patch

OK. Since there are no changes to the cross-platform code, I don&apos;t think this needs an owner. Consider adding FIXMEs for the stuff you&apos;ve disabled in NetworkCache.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398958</commentid>
    <comment_count>9</comment_count>
      <attachid>333744</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-13 22:01:42 -0800</bug_when>
    <thetext>Comment on attachment 333744
Patch

Clearing flags on attachment: 333744

Committed r228455: &lt;https://trac.webkit.org/changeset/228455&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398959</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-13 22:01:43 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398960</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-02-13 22:02:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/37525619&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399156</commentid>
    <comment_count>12</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2018-02-14 10:47:54 -0800</bug_when>
    <thetext>This causes an iOS build failure for me when building with -Wunused-lambda-capture:

Sources/WebKit2/NetworkProcess/cache/NetworkCacheStorage.cpp:911:79: error: lambda capture &apos;maximumParallelReadCount&apos; is not required to be captured for this use [-Werror,-Wunused-lambda-capture]
            traverseOperation.activeCondition.wait(lock, [&amp;traverseOperation, maximumParallelReadCount] {
                                                                              ^
1 error generated.

I will get a patch up removing this capture.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399174</commentid>
    <comment_count>13</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2018-02-14 11:13:48 -0800</bug_when>
    <thetext>Build fix patch: https://bugs.webkit.org/show_bug.cgi?id=182797

BTW, this should not have been landed as an unreviewed WinCairo fix when it changed platform independent code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399187</commentid>
    <comment_count>14</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-02-14 11:30:36 -0800</bug_when>
    <thetext>(In reply to John Wilander from comment #13)
&gt; BTW, this should not have been landed as an unreviewed WinCairo fix when it
&gt; changed platform independent code.

The change was reviewed by Michael. It is reflected in the changelog and commit message for https://trac.webkit.org/changeset/228455/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399191</commentid>
    <comment_count>15</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2018-02-14 11:32:16 -0800</bug_when>
    <thetext>(In reply to Ryan Haddad from comment #14)
&gt; (In reply to John Wilander from comment #13)
&gt; &gt; BTW, this should not have been landed as an unreviewed WinCairo fix when it
&gt; &gt; changed platform independent code.
&gt; 
&gt; The change was reviewed by Michael. It is reflected in the changelog and
&gt; commit message for https://trac.webkit.org/changeset/228455/webkit

Got it. I was looking at the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399205</commentid>
    <comment_count>16</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-02-14 12:04:16 -0800</bug_when>
    <thetext>Eh, actually I should not have approved it because I&apos;m not an owner. I just missed that that line was changed outside the #if. Sorry.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399268</commentid>
    <comment_count>17</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2018-02-14 14:51:27 -0800</bug_when>
    <thetext>An even more trivial follow-up fix (which I probably should&apos;ve noticed while helping get this patch landed):
https://bugs.webkit.org/show_bug.cgi?id=182810</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>333576</attachid>
            <date>2018-02-11 20:31:28 -0800</date>
            <delta_ts>2018-02-13 05:48:29 -0800</delta_ts>
            <desc>bz182679-1.patch</desc>
            <filename>bz182679-1.ptch</filename>
            <type>text/plain</type>
            <size>13257</size>
            <attacher name="Yousuke Kimoto">Yousuke.Kimoto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggMmU2NTQxYy4uZTUxOTRiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNSBAQAor
MjAxOC0wMi0xMSAgWW91c3VrZSBLaW1vdG8gIDx5b3VzdWtlLmtpbW90b0Bzb255LmNvbT4KKwor
ICAgICAgICBbV2luQ2Fpcm9dIEZpeCBidWlsZCBlcnJvcnMgd2hpY2ggY29tZSBmcm9tIGluY2x1
ZGluZyBoZWFkZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xODI2NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIE5ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZUJsb2JTdG9yYWdlLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpCbG9iU3RvcmFnZTo6YWRkKToKKyAgICAg
ICAgKiBOZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVEYXRhLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya0NhY2hlOjpEYXRhOjptYXBUb0ZpbGUgY29uc3QpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrQ2FjaGU6Om1hcEZpbGUpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
Q2FjaGU6OmFkb3B0QW5kTWFwRmlsZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6
cmVhZE9yTWFrZVNhbHQpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtD
YWNoZUZpbGVTeXN0ZW0uY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OmRpcmVj
dG9yeUVudHJ5VHlwZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6dHJhdmVyc2VE
aXJlY3RvcnkpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OmZpbGVUaW1lcyk6Cisg
ICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6dXBkYXRlRmlsZU1vZGlmaWNhdGlvblRpbWVJ
Zk5lZWRlZCk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3Rv
cmFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6U3RvcmFnZTo6dHJhdmVy
c2UpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3dpbi9TeXN0ZW1Qcm94eVdpbi5oOgorICAg
ICAgICAqIFBsYXRmb3JtL01vZHVsZS5oOgorICAgICAgICAqIFBsYXRmb3JtL1NoYXJlZE1lbW9y
eS5oOgorICAgICAgICAqIFBsdWdpblByb2Nlc3MvV2ViUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwOgor
ICAgICAgICAqIFNoYXJlZC9BUEkvYy9XS0Jhc2UuaDoKKyAgICAgICAgKiBTaGFyZWQvQ2FsbGJh
Y2tJRC5oOgorICAgICAgICAqIFNoYXJlZC9DaGlsZFByb2Nlc3MuY3BwOgorICAgICAgICAqIFNo
YXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvUHJvY2Vz
c0Fzc2VydGlvbi5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0
ZWRCdW5kbGUuaDoKKwogMjAxOC0wMi0wNiAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxl
LmNvbT4KIAogICAgICAgICBbbWFjT1NdIENvcnJlY3Qgc2FuZGJveCB2aW9sYXRpb24gdHJpZ2dl
cmVkIGJ5IENoYXNlLmNvbQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9jYWNoZS9OZXR3b3JrQ2FjaGVCbG9iU3RvcmFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZUJsb2JTdG9yYWdlLmNwcAppbmRleCA5OTNhZjBl
Li5iNTI5NDY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hl
L05ldHdvcmtDYWNoZUJsb2JTdG9yYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZUJsb2JTdG9yYWdlLmNwcApAQCAtMzAsOSArMzAsMTEg
QEAKICNpbmNsdWRlICJOZXR3b3JrQ2FjaGVGaWxlU3lzdGVtLmgiCiAjaW5jbHVkZSA8V2ViQ29y
ZS9GaWxlU3lzdGVtLmg+CiAjaW5jbHVkZSA8ZmNudGwuaD4KKyNpZiAhT1MoV0lORE9XUykKICNp
bmNsdWRlIDxzeXMvbW1hbi5oPgogI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CiAjaW5jbHVkZSA8dW5p
c3RkLmg+CisjZW5kaWYKICNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgogI2luY2x1ZGUgPHd0Zi9T
SEExLmg+CiAKQEAgLTgzLDYgKzg1LDcgQEAgU3RyaW5nIEJsb2JTdG9yYWdlOjpibG9iUGF0aEZv
ckhhc2goY29uc3QgU0hBMTo6RGlnZXN0JiBoYXNoKSBjb25zdAogCiBCbG9iU3RvcmFnZTo6Qmxv
YiBCbG9iU3RvcmFnZTo6YWRkKGNvbnN0IFN0cmluZyYgcGF0aCwgY29uc3QgRGF0YSYgZGF0YSkK
IHsKKyNpZiAhT1MoV0lORE9XUykKICAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKIAog
ICAgIGF1dG8gaGFzaCA9IGNvbXB1dGVTSEExKGRhdGEsIG1fc2FsdCk7CkBAIC0xMTQsNiArMTE3
LDkgQEAgQmxvYlN0b3JhZ2U6OkJsb2IgQmxvYlN0b3JhZ2U6OmFkZChjb25zdCBTdHJpbmcmIHBh
dGgsIGNvbnN0IERhdGEmIGRhdGEpCiAgICAgbV9hcHByb3hpbWF0ZVNpemUgKz0gbWFwcGVkRGF0
YS5zaXplKCk7CiAKICAgICByZXR1cm4geyBtYXBwZWREYXRhLCBoYXNoIH07CisjZWxzZQorICAg
IHJldHVybiB7IERhdGEoKSwgY29tcHV0ZVNIQTEoZGF0YSwgbV9zYWx0KSB9OworI2VuZGlmCiB9
CiAKIEJsb2JTdG9yYWdlOjpCbG9iIEJsb2JTdG9yYWdlOjpnZXQoY29uc3QgU3RyaW5nJiBwYXRo
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3Jr
Q2FjaGVEYXRhLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29y
a0NhY2hlRGF0YS5jcHAKaW5kZXggY2Y2MzdhNy4uYTZlMzdiZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVEYXRhLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZURhdGEuY3BwCkBA
IC0yOCwxNiArMjgsMjAgQEAKIAogI2luY2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3RlbS5oPgogI2lu
Y2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8d3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVt
YmVyLmg+CisKKyNpZiAhT1MoV0lORE9XUykKICNpbmNsdWRlIDxzeXMvbW1hbi5oPgogI2luY2x1
ZGUgPHN5cy9zdGF0Lmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+Ci0jaW5jbHVkZSA8d3RmL0NyeXB0
b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmg+CisjZW5kaWYKIAogbmFtZXNwYWNlIFdlYktpdCB7
CiBuYW1lc3BhY2UgTmV0d29ya0NhY2hlIHsKIAogRGF0YSBEYXRhOjptYXBUb0ZpbGUoY29uc3Qg
Y2hhciogcGF0aCkgY29uc3QKIHsKKyNpZiAhT1MoV0lORE9XUykKICAgICBpbnQgZmQgPSBvcGVu
KHBhdGgsIE9fQ1JFQVQgfCBPX0VYQ0wgfCBPX1JEV1IgLCBTX0lSVVNSIHwgU19JV1VTUik7CiAg
ICAgaWYgKGZkIDwgMCkKICAgICAgICAgcmV0dXJuIHsgfTsKQEAgLTY3LDEwICs3MSwxNCBAQCBE
YXRhIERhdGE6Om1hcFRvRmlsZShjb25zdCBjaGFyKiBwYXRoKSBjb25zdAogICAgIG1zeW5jKG1h
cCwgbV9zaXplLCBNU19BU1lOQyk7CiAKICAgICByZXR1cm4gRGF0YTo6YWRvcHRNYXAobWFwLCBt
X3NpemUsIGZkKTsKKyNlbHNlCisgICAgcmV0dXJuIERhdGEoKTsKKyNlbmRpZgogfQogCiBEYXRh
IG1hcEZpbGUoY29uc3QgY2hhciogcGF0aCkKIHsKKyNpZiAhT1MoV0lORE9XUykKICAgICBpbnQg
ZmQgPSBvcGVuKHBhdGgsIE9fUkRPTkxZLCAwKTsKICAgICBpZiAoZmQgPCAwKQogICAgICAgICBy
ZXR1cm4geyB9OwpAQCAtODYsMTAgKzk0LDE0IEBAIERhdGEgbWFwRmlsZShjb25zdCBjaGFyKiBw
YXRoKQogICAgIH0KIAogICAgIHJldHVybiBhZG9wdEFuZE1hcEZpbGUoZmQsIDAsIHNpemUpOwor
I2Vsc2UKKyAgICByZXR1cm4gRGF0YSgpOworI2VuZGlmCiB9CiAKIERhdGEgYWRvcHRBbmRNYXBG
aWxlKGludCBmZCwgc2l6ZV90IG9mZnNldCwgc2l6ZV90IHNpemUpCiB7CisjaWYgIU9TKFdJTkRP
V1MpCiAgICAgaWYgKCFzaXplKSB7CiAgICAgICAgIGNsb3NlKGZkKTsKICAgICAgICAgcmV0dXJu
IERhdGE6OmVtcHR5KCk7CkBAIC0xMDIsNiArMTE0LDkgQEAgRGF0YSBhZG9wdEFuZE1hcEZpbGUo
aW50IGZkLCBzaXplX3Qgb2Zmc2V0LCBzaXplX3Qgc2l6ZSkKICAgICB9CiAKICAgICByZXR1cm4g
RGF0YTo6YWRvcHRNYXAobWFwLCBzaXplLCBmZCk7CisjZWxzZQorICAgIHJldHVybiBEYXRhKCk7
CisjZW5kaWYKIH0KIAogU0hBMTo6RGlnZXN0IGNvbXB1dGVTSEExKGNvbnN0IERhdGEmIGRhdGEs
IGNvbnN0IFNhbHQmIHNhbHQpCkBAIC0xMzgsNiArMTUzLDcgQEAgc3RhdGljIFNhbHQgbWFrZVNh
bHQoKQogCiBzdGQ6Om9wdGlvbmFsPFNhbHQ+IHJlYWRPck1ha2VTYWx0KGNvbnN0IFN0cmluZyYg
cGF0aCkKIHsKKyNpZiAhT1MoV0lORE9XUykKICAgICBhdXRvIGNwYXRoID0gV2ViQ29yZTo6Rmls
ZVN5c3RlbTo6ZmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKHBhdGgpOwogICAgIGF1dG8gZmQgPSBv
cGVuKGNwYXRoLmRhdGEoKSwgT19SRE9OTFksIDApOwogICAgIFNhbHQgc2FsdDsKQEAgLTE1NCw2
ICsxNzAsOSBAQCBzdGQ6Om9wdGlvbmFsPFNhbHQ+IHJlYWRPck1ha2VTYWx0KGNvbnN0IFN0cmlu
ZyYgcGF0aCkKICAgICAgICAgICAgIHJldHVybiB7IH07CiAgICAgfQogICAgIHJldHVybiBzYWx0
OworI2Vsc2UKKyAgICByZXR1cm4gU2FsdCgpOworI2VuZGlmCiB9CiAKIH0gLy8gbmFtZXNwYWNl
IE5ldHdvcmtDYWNoZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9j
YWNoZS9OZXR3b3JrQ2FjaGVGaWxlU3lzdGVtLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlRmlsZVN5c3RlbS5jcHAKaW5kZXggYjhmYjdjOS4uZjY1
ZDk5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3
b3JrQ2FjaGVGaWxlU3lzdGVtLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L2NhY2hlL05ldHdvcmtDYWNoZUZpbGVTeXN0ZW0uY3BwCkBAIC0yOCwxMyArMjgsMTYgQEAKIAog
I2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0ZpbGVTeXN0ZW0uaD4KLSNp
bmNsdWRlIDxkaXJlbnQuaD4KLSNpbmNsdWRlIDxzeXMvc3RhdC5oPgotI2luY2x1ZGUgPHN5cy90
aW1lLmg+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvRnVuY3Rp
b24uaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAKKyNpZiAhT1MoV0lORE9XUykK
KyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorI2luY2x1ZGUgPHN5
cy90aW1lLmg+CisjZW5kaWYKKwogI2lmIFBMQVRGT1JNKElPUykgJiYgIVBMQVRGT1JNKElPU19T
SU1VTEFUT1IpCiAjaW5jbHVkZSA8c3lzL2F0dHIuaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4KQEAg
LTUwLDYgKzUzLDcgQEAgbmFtZXNwYWNlIE5ldHdvcmtDYWNoZSB7CiAKIHN0YXRpYyBEaXJlY3Rv
cnlFbnRyeVR5cGUgZGlyZWN0b3J5RW50cnlUeXBlKHVpbnQ4X3QgZHR5cGUpCiB7CisjaWYgIU9T
KFdJTkRPV1MpCiAgICAgc3dpdGNoIChkdHlwZSkgewogICAgIGNhc2UgRFRfRElSOgogICAgICAg
ICByZXR1cm4gRGlyZWN0b3J5RW50cnlUeXBlOjpEaXJlY3Rvcnk7CkBAIC01OSwxMCArNjMsMTQg
QEAgc3RhdGljIERpcmVjdG9yeUVudHJ5VHlwZSBkaXJlY3RvcnlFbnRyeVR5cGUodWludDhfdCBk
dHlwZSkKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgICAgIHJldHVybiBEaXJl
Y3RvcnlFbnRyeVR5cGU6OkZpbGU7CiAgICAgfQorI2Vsc2UKKyAgICByZXR1cm4gRGlyZWN0b3J5
RW50cnlUeXBlOjpGaWxlOworI2VuZGlmCiB9CiAKIHZvaWQgdHJhdmVyc2VEaXJlY3RvcnkoY29u
c3QgU3RyaW5nJiBwYXRoLCBjb25zdCBGdW5jdGlvbjx2b2lkIChjb25zdCBTdHJpbmcmLCBEaXJl
Y3RvcnlFbnRyeVR5cGUpPiYgZnVuY3Rpb24pCiB7CisjaWYgIU9TKFdJTkRPV1MpCiAgICAgRElS
KiBkaXIgPSBvcGVuZGlyKFdlYkNvcmU6OkZpbGVTeXN0ZW06OmZpbGVTeXN0ZW1SZXByZXNlbnRh
dGlvbihwYXRoKS5kYXRhKCkpOwogICAgIGlmICghZGlyKQogICAgICAgICByZXR1cm47CkBAIC03
OSw2ICs4Nyw5IEBAIHZvaWQgdHJhdmVyc2VEaXJlY3RvcnkoY29uc3QgU3RyaW5nJiBwYXRoLCBj
b25zdCBGdW5jdGlvbjx2b2lkIChjb25zdCBTdHJpbmcmLCBECiAgICAgICAgIGZ1bmN0aW9uKG5h
bWVTdHJpbmcsIGRpcmVjdG9yeUVudHJ5VHlwZShkcC0+ZF90eXBlKSk7CiAgICAgfQogICAgIGNs
b3NlZGlyKGRpcik7CisjZWxzZQorICAgIGZ1bmN0aW9uKFN0cmluZygpLCBEaXJlY3RvcnlFbnRy
eVR5cGU6OkZpbGUpOworI2VuZGlmCiB9CiAKIHZvaWQgZGVsZXRlRGlyZWN0b3J5UmVjdXJzaXZl
bHkoY29uc3QgU3RyaW5nJiBwYXRoKQpAQCAtMTE2LDYgKzEyNyw4IEBAIEZpbGVUaW1lcyBmaWxl
VGltZXMoY29uc3QgU3RyaW5nJiBwYXRoKQogICAgICAgICByZXR1cm4geyB9OwogICAgIHJldHVy
biB7IFdhbGxUaW1lOjpmcm9tUmF3U2Vjb25kcyhnX2FzY2lpX3N0cnRvdWxsKGJpcnRodGltZVN0
cmluZywgbnVsbHB0ciwgMTApKSwKICAgICAgICAgV2FsbFRpbWU6OmZyb21SYXdTZWNvbmRzKGdf
ZmlsZV9pbmZvX2dldF9hdHRyaWJ1dGVfdWludDY0KGZpbGVJbmZvLmdldCgpLCAidGltZTo6bW9k
aWZpZWQiKSkgfTsKKyNlbGlmIE9TKFdJTkRPV1MpCisgICAgcmV0dXJuIEZpbGVUaW1lcygpOwog
I2VuZGlmCiB9CiAKQEAgLTEyNyw4ICsxNDAsMTAgQEAgdm9pZCB1cGRhdGVGaWxlTW9kaWZpY2F0
aW9uVGltZUlmTmVlZGVkKGNvbnN0IFN0cmluZyYgcGF0aCkKICAgICAgICAgaWYgKFdhbGxUaW1l
Ojpub3coKSAtIHRpbWVzLm1vZGlmaWNhdGlvbiA8IDFfaCkKICAgICAgICAgICAgIHJldHVybjsK
ICAgICB9CisjaWYgIU9TKFdJTkRPV1MpCiAgICAgLy8gVGhpcyByZWFsbHkgdXBkYXRlcyBib3Ro
IHRoZSBhY2Nlc3MgdGltZSBhbmQgdGhlIG1vZGlmaWNhdGlvbiB0aW1lLgogICAgIHV0aW1lcyhX
ZWJDb3JlOjpGaWxlU3lzdGVtOjpmaWxlU3lzdGVtUmVwcmVzZW50YXRpb24ocGF0aCkuZGF0YSgp
LCBudWxscHRyKTsKKyNlbmRpZgogfQogCiBib29sIGNhblVzZVNoYXJlZE1lbW9yeUZvclBhdGgo
Y29uc3QgU3RyaW5nJiBwYXRoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5jcHAKaW5kZXggNzA1ZTgzNS4uYWFi
Y2VkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3
b3JrQ2FjaGVTdG9yYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2Nh
Y2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwCkBAIC05MDgsNyArOTA4LDcgQEAgdm9pZCBTdG9y
YWdlOjp0cmF2ZXJzZShjb25zdCBTdHJpbmcmIHR5cGUsIFRyYXZlcnNlRmxhZ3MgZmxhZ3MsIFRy
YXZlcnNlSGFuZGxlciYKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgICAgICBjb25zdCB1bnNp
Z25lZCBtYXhpbXVtUGFyYWxsZWxSZWFkQ291bnQgPSA1OwotICAgICAgICAgICAgdHJhdmVyc2VP
cGVyYXRpb24uYWN0aXZlQ29uZGl0aW9uLndhaXQobG9jaywgWyZ0cmF2ZXJzZU9wZXJhdGlvbl0g
eworICAgICAgICAgICAgdHJhdmVyc2VPcGVyYXRpb24uYWN0aXZlQ29uZGl0aW9uLndhaXQobG9j
aywgWyZ0cmF2ZXJzZU9wZXJhdGlvbiwgbWF4aW11bVBhcmFsbGVsUmVhZENvdW50XSB7CiAgICAg
ICAgICAgICAgICAgcmV0dXJuIHRyYXZlcnNlT3BlcmF0aW9uLmFjdGl2ZUNvdW50IDw9IG1heGlt
dW1QYXJhbGxlbFJlYWRDb3VudDsKICAgICAgICAgICAgIH0pOwogICAgICAgICB9KTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2luL1N5c3RlbVByb3h5V2luLmgg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dpbi9TeXN0ZW1Qcm94eVdpbi5oCmluZGV4
IGRhZDkzYjkuLjk1NjA5MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvd2luL1N5c3RlbVByb3h5V2luLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy93aW4vU3lzdGVtUHJveHlXaW4uaApAQCAtMjMsNiArMjMsMTAgQEAKICAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHdp
bmRvd3MuaD4KKwogY2xhc3MgV2luZG93c1N5c3RlbVByb3h5IHsKICAgICBzdGF0aWMgY29uc3Qg
aW50IFByb3h5U2VydmVyTmFtZUxlbmd0aCA9IDUxMjsKIHB1YmxpYzoKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvUGxhdGZvcm0vTW9kdWxlLmggYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL01v
ZHVsZS5oCmluZGV4IDkwMzI4YmYuLjc2OGFhMTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
UGxhdGZvcm0vTW9kdWxlLmgKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9Nb2R1bGUuaApA
QCAtMzcsNiArMzcsMTAgQEAKIHR5cGVkZWYgc3RydWN0IF9HTW9kdWxlIEdNb2R1bGU7CiAjZW5k
aWYKIAorI2lmIE9TKFdJTkRPV1MpCisjaW5jbHVkZSA8d2luZG93cy5oPgorI2VuZGlmCisKIG5h
bWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBNb2R1bGUgewpAQCAtNjQsNyArNjgsNyBAQCBwcml2
YXRlOgogICAgIHZvaWQqIHBsYXRmb3JtRnVuY3Rpb25Qb2ludGVyKGNvbnN0IGNoYXIqIGZ1bmN0
aW9uTmFtZSkgY29uc3Q7CiAKICAgICBTdHJpbmcgbV9wYXRoOwotI2lmIFBMQVRGT1JNKFdJTikK
KyNpZiBPUyhXSU5ET1dTKQogICAgIEhNT0RVTEUgbV9tb2R1bGU7CiAjZW5kaWYKICNpZiBVU0Uo
Q0YpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL1NoYXJlZE1lbW9yeS5oIGIv
U291cmNlL1dlYktpdC9QbGF0Zm9ybS9TaGFyZWRNZW1vcnkuaAppbmRleCBjNzJlMGQ0Li40Mjhm
YmY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL1NoYXJlZE1lbW9yeS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vU2hhcmVkTWVtb3J5LmgKQEAgLTM1LDYgKzM1LDEw
IEBACiAjaW5jbHVkZSA8d3RmL09wdGlvbmFsLmg+CiAjZW5kaWYKIAorI2lmIE9TKFdJTkRPV1Mp
CisjaW5jbHVkZSA8d2luZG93cy5oPgorI2VuZGlmCisKIG5hbWVzcGFjZSBJUEMgewogY2xhc3Mg
RGVjb2RlcjsKIGNsYXNzIEVuY29kZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsdWdp
blByb2Nlc3MvV2ViUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9QbHVnaW5Q
cm9jZXNzL1dlYlByb2Nlc3NDb25uZWN0aW9uLmNwcAppbmRleCBlNzM2NjNlLi4xMmEzNDFkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsdWdpblByb2Nlc3MvV2ViUHJvY2Vzc0Nvbm5lY3Rp
b24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvUGx1Z2luUHJvY2Vzcy9XZWJQcm9jZXNzQ29ubmVj
dGlvbi5jcHAKQEAgLTM4LDkgKzM4LDEyIEBACiAjaW5jbHVkZSAiUGx1Z2luUHJvY2Vzc0Nvbm5l
Y3Rpb25NZXNzYWdlcy5oIgogI2luY2x1ZGUgIlBsdWdpblByb3h5TWVzc2FnZXMuaCIKICNpbmNs
dWRlICJXZWJQcm9jZXNzQ29ubmVjdGlvbk1lc3NhZ2VzLmgiCi0jaW5jbHVkZSA8dW5pc3RkLmg+
CiAjaW5jbHVkZSA8d3RmL1NldEZvclNjb3BlLmg+CiAKKyNpZiAhT1MoV0lORE9XUykKKyNpbmNs
dWRlIDx1bmlzdGQuaD4KKyNlbmRpZgorCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFt
ZXNwYWNlIFdlYktpdCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvYy9X
S0Jhc2UuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLQmFzZS5oCmluZGV4IDFjNzdi
ZDYuLjIwNDQ1N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLQmFz
ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLQmFzZS5oCkBAIC00Miw2ICs0
MiwxMCBAQAogI2luY2x1ZGUgPFdlYktpdC9XS0Jhc2VXUEUuaD4KICNlbmRpZgogCisjaWYgZGVm
aW5lZChXSU4zMikKKyNpbmNsdWRlIDxXZWJLaXQvV0tCYXNlV2luLmg+CisjZW5kaWYKKwogLyog
V2ViS2l0MiBzaGFyZWQgdHlwZXMgKi8KIAogdHlwZWRlZiB1aW50MzJfdCBXS1R5cGVJRDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NhbGxiYWNrSUQuaCBiL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL0NhbGxiYWNrSUQuaAppbmRleCA4ZjE4ZDRkLi4zMTQ0YWIyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9DYWxsYmFja0lELmgKKysrIGIvU291cmNlL1dlYktpdC9T
aGFyZWQvQ2FsbGJhY2tJRC5oCkBAIC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykg
MjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTggU29ueSBJbnRlcmFjdGl2ZSBFbnRlcnRhaW5tZW50IEluYy4KICAqCiAgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
ICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwpAQCAtODUsNyArODYsOSBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBm
cm9tSW50ZWdlcigqaWRlbnRpZmllcik7CiAgICAgfQogCisjaWYgIUNPTVBJTEVSKE1TVkMpCiBw
cml2YXRlOgorI2VuZGlmCiAgICAgQUxXQVlTX0lOTElORSBleHBsaWNpdCBDYWxsYmFja0lEKHVp
bnQ2NF90IG5ld0lEKQogICAgICAgICA6IG1faWQobmV3SUQpCiAgICAgewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9TaGFyZWQvQ2hpbGRQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL0NoaWxkUHJvY2Vzcy5jcHAKaW5kZXggNjk5NGQzZC4uYjU1ZDg2ZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9TaGFyZWQvQ2hpbGRQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9DaGlsZFByb2Nlc3MuY3BwCkBAIC0zMCw3ICszMCwxMCBAQAogI2luY2x1ZGUgIlNh
bmRib3hJbml0aWFsaXphdGlvblBhcmFtZXRlcnMuaCIKICNpbmNsdWRlIDxXZWJDb3JlL1NjaGVt
ZVJlZ2lzdHJ5Lmg+CiAjaW5jbHVkZSA8cGFsL1Nlc3Npb25JRC5oPgorCisjaWYgIU9TKFdJTkRP
V1MpCiAjaW5jbHVkZSA8dW5pc3RkLmg+CisjZW5kaWYKIAogdXNpbmcgbmFtZXNwYWNlIFdlYkNv
cmU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENv
ZGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgKaW5k
ZXggNmIxYzQzYS4uNjkxNGM3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vi
Q29yZUFyZ3VtZW50Q29kZXJzLmgKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFy
Z3VtZW50Q29kZXJzLmgKQEAgLTM1LDEzICszNSwxNiBAQAogI2luY2x1ZGUgPFdlYkNvcmUvTWVk
aWFTZWxlY3Rpb25PcHRpb24uaD4KICNpbmNsdWRlIDxXZWJDb3JlL05ldHdvcmtMb2FkTWV0cmlj
cy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvTm90aWZpY2F0aW9uRGlyZWN0aW9uLmg+Ci0jaW5jbHVk
ZSA8V2ViQ29yZS9QYXltZW50SGVhZGVycy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUmVhbHRpbWVN
ZWRpYVNvdXJjZS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2Nyb2xsU25hcE9mZnNldHNJbmZvLmg+
CiAjaW5jbHVkZSA8V2ViQ29yZS9TZXJ2aWNlV29ya2VyVHlwZXMuaD4KICNpbmNsdWRlIDxXZWJD
b3JlL1N0b3JlZENyZWRlbnRpYWxzUG9saWN5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Xb3JrZXJU
eXBlLmg+CiAKKyNpZiBFTkFCTEUoQVBQTEVfUEFZKQorI2luY2x1ZGUgPFdlYkNvcmUvUGF5bWVu
dEhlYWRlcnMuaD4KKyNlbmRpZgorCiBuYW1lc3BhY2UgV1RGIHsKIGNsYXNzIE1vbm90b25pY1Rp
bWU7CiBjbGFzcyBTZWNvbmRzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
UHJvY2Vzc0Fzc2VydGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2Vy
dGlvbi5oCmluZGV4IDRkNGRjNjYuLmRjOWFmZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9Qcm9jZXNzQXNzZXJ0aW9uLmgKQEAgLTI2LDEwICsyNiwxMyBAQAogI2lmbmRlZiBQcm9jZXNz
QXNzZXJ0aW9uX2gKICNkZWZpbmUgUHJvY2Vzc0Fzc2VydGlvbl9oCiAKLSNpbmNsdWRlIDx1bmlz
dGQuaD4KICNpbmNsdWRlIDx3dGYvRnVuY3Rpb24uaD4KICNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lE
Lmg+CiAKKyNpZiAhT1MoV0lORE9XUykKKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNlbmRpZgorCiAj
aWYgUExBVEZPUk0oSU9TKSAmJiAhUExBVEZPUk0oSU9TX1NJTVVMQVRPUikKICNpbmNsdWRlIDx3
dGYvUmV0YWluUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmgK
aW5kZXggZmMxNTM0Zi4uZWRkYWY2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmgKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmgKQEAgLTYyLDYgKzYyLDgg
QEAgbmFtZXNwYWNlIFdlYktpdCB7CiB0eXBlZGVmIE5TQnVuZGxlICpQbGF0Zm9ybUJ1bmRsZTsK
ICNlbGlmIFVTRShHTElCKQogdHlwZWRlZiA6OkdNb2R1bGUqIFBsYXRmb3JtQnVuZGxlOworI2Vs
aWYgT1MoV0lORE9XUykKK3R5cGVkZWYgdm9pZCogUGxhdGZvcm1CdW5kbGU7CiAjZW5kaWYKIAog
Y2xhc3MgSW5qZWN0ZWRCdW5kbGVTY3JpcHRXb3JsZDsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>333682</attachid>
            <date>2018-02-13 04:56:51 -0800</date>
            <delta_ts>2018-02-13 13:05:23 -0800</delta_ts>
            <desc>bz182679-2.patch</desc>
            <filename>bz182679-2.patch</filename>
            <type>text/plain</type>
            <size>13525</size>
            <attacher name="Yousuke Kimoto">Yousuke.Kimoto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggNjJjMmQxZS4uZGNjNmQxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNiBAQAor
MjAxOC0wMi0xMyAgWW91c3VrZSBLaW1vdG8gIDx5b3VzdWtlLmtpbW90b0Bzb255LmNvbT4KKwor
ICAgICAgICBbV2luQ2Fpcm9dIEZpeCBidWlsZCBlcnJvcnMgd2hpY2ggY29tZSBmcm9tIGluY2x1
ZGluZyBoZWFkZXJzIGFuZCBub3Qgc3VpdGFibGUgaW1wbGVtZW50YXRpb24gZm9yIHdpbmRvd3MK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MjY3OQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTmV0d29y
a1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlQmxvYlN0b3JhZ2UuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrQ2FjaGU6OkJsb2JTdG9yYWdlOjphZGQpOgorICAgICAgICAqIE5ldHdvcmtQ
cm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZURhdGEuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrQ2FjaGU6OkRhdGE6Om1hcFRvRmlsZSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdv
cmtDYWNoZTo6bWFwRmlsZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6YWRvcHRB
bmRNYXBGaWxlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpyZWFkT3JNYWtlU2Fs
dCk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlRmlsZVN5c3Rl
bS5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6ZGlyZWN0b3J5RW50cnlUeXBl
KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjp0cmF2ZXJzZURpcmVjdG9yeSk6Cisg
ICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6ZmlsZVRpbWVzKToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya0NhY2hlOjp1cGRhdGVGaWxlTW9kaWZpY2F0aW9uVGltZUlmTmVlZGVkKToKKyAg
ICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpTdG9yYWdlOjp0cmF2ZXJzZSk6CisgICAgICAg
ICogTmV0d29ya1Byb2Nlc3Mvd2luL1N5c3RlbVByb3h5V2luLmg6CisgICAgICAgICogUGxhdGZv
cm0vSVBDL0F0dGFjaG1lbnQuaDoKKyAgICAgICAgKiBQbGF0Zm9ybS9Nb2R1bGUuaDoKKyAgICAg
ICAgKiBQbGF0Zm9ybS9TaGFyZWRNZW1vcnkuaDoKKyAgICAgICAgKiBQbHVnaW5Qcm9jZXNzL1dl
YlByb2Nlc3NDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKiBTaGFyZWQvQVBJL2MvV0tCYXNlLmg6
CisgICAgICAgICogU2hhcmVkL0NoaWxkUHJvY2Vzcy5jcHA6CisgICAgICAgICogU2hhcmVkL1dl
YkNvcmVBcmd1bWVudENvZGVycy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0
aW9uLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRs
ZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHA6CisKIDIwMTgtMDItMTIg
IFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgW0V4dHJh
IHpvb20gbW9kZV0gQWRkIHN1cHBvcnQgZm9yIDxpbnB1dCB0eXBlPSd0aW1lJz4gdXNpbmcgdGlt
ZSBwaWNrZXIgVUkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2Fj
aGUvTmV0d29ya0NhY2hlQmxvYlN0b3JhZ2UuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVCbG9iU3RvcmFnZS5jcHAKaW5kZXggOTkzYWYwZS4uYjUy
OTQ2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3
b3JrQ2FjaGVCbG9iU3RvcmFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9jYWNoZS9OZXR3b3JrQ2FjaGVCbG9iU3RvcmFnZS5jcHAKQEAgLTMwLDkgKzMwLDExIEBACiAj
aW5jbHVkZSAiTmV0d29ya0NhY2hlRmlsZVN5c3RlbS5oIgogI2luY2x1ZGUgPFdlYkNvcmUvRmls
ZVN5c3RlbS5oPgogI2luY2x1ZGUgPGZjbnRsLmg+CisjaWYgIU9TKFdJTkRPV1MpCiAjaW5jbHVk
ZSA8c3lzL21tYW4uaD4KICNpbmNsdWRlIDxzeXMvc3RhdC5oPgogI2luY2x1ZGUgPHVuaXN0ZC5o
PgorI2VuZGlmCiAjaW5jbHVkZSA8d3RmL1J1bkxvb3AuaD4KICNpbmNsdWRlIDx3dGYvU0hBMS5o
PgogCkBAIC04Myw2ICs4NSw3IEBAIFN0cmluZyBCbG9iU3RvcmFnZTo6YmxvYlBhdGhGb3JIYXNo
KGNvbnN0IFNIQTE6OkRpZ2VzdCYgaGFzaCkgY29uc3QKIAogQmxvYlN0b3JhZ2U6OkJsb2IgQmxv
YlN0b3JhZ2U6OmFkZChjb25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IERhdGEmIGRhdGEpCiB7Cisj
aWYgIU9TKFdJTkRPV1MpCiAgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CiAKICAgICBh
dXRvIGhhc2ggPSBjb21wdXRlU0hBMShkYXRhLCBtX3NhbHQpOwpAQCAtMTE0LDYgKzExNyw5IEBA
IEJsb2JTdG9yYWdlOjpCbG9iIEJsb2JTdG9yYWdlOjphZGQoY29uc3QgU3RyaW5nJiBwYXRoLCBj
b25zdCBEYXRhJiBkYXRhKQogICAgIG1fYXBwcm94aW1hdGVTaXplICs9IG1hcHBlZERhdGEuc2l6
ZSgpOwogCiAgICAgcmV0dXJuIHsgbWFwcGVkRGF0YSwgaGFzaCB9OworI2Vsc2UKKyAgICByZXR1
cm4geyBEYXRhKCksIGNvbXB1dGVTSEExKGRhdGEsIG1fc2FsdCkgfTsKKyNlbmRpZgogfQogCiBC
bG9iU3RvcmFnZTo6QmxvYiBCbG9iU3RvcmFnZTo6Z2V0KGNvbnN0IFN0cmluZyYgcGF0aCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hl
RGF0YS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNo
ZURhdGEuY3BwCmluZGV4IGNmNjM3YTcuLmE2ZTM3YmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlRGF0YS5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVEYXRhLmNwcApAQCAtMjgs
MTYgKzI4LDIwIEBACiAKICNpbmNsdWRlIDxXZWJDb3JlL0ZpbGVTeXN0ZW0uaD4KICNpbmNsdWRl
IDxmY250bC5oPgorI2luY2x1ZGUgPHd0Zi9DcnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlci5o
PgorCisjaWYgIU9TKFdJTkRPV1MpCiAjaW5jbHVkZSA8c3lzL21tYW4uaD4KICNpbmNsdWRlIDxz
eXMvc3RhdC5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgotI2luY2x1ZGUgPHd0Zi9DcnlwdG9ncmFw
aGljYWxseVJhbmRvbU51bWJlci5oPgorI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJLaXQgewogbmFt
ZXNwYWNlIE5ldHdvcmtDYWNoZSB7CiAKIERhdGEgRGF0YTo6bWFwVG9GaWxlKGNvbnN0IGNoYXIq
IHBhdGgpIGNvbnN0CiB7CisjaWYgIU9TKFdJTkRPV1MpCiAgICAgaW50IGZkID0gb3BlbihwYXRo
LCBPX0NSRUFUIHwgT19FWENMIHwgT19SRFdSICwgU19JUlVTUiB8IFNfSVdVU1IpOwogICAgIGlm
IChmZCA8IDApCiAgICAgICAgIHJldHVybiB7IH07CkBAIC02NywxMCArNzEsMTQgQEAgRGF0YSBE
YXRhOjptYXBUb0ZpbGUoY29uc3QgY2hhciogcGF0aCkgY29uc3QKICAgICBtc3luYyhtYXAsIG1f
c2l6ZSwgTVNfQVNZTkMpOwogCiAgICAgcmV0dXJuIERhdGE6OmFkb3B0TWFwKG1hcCwgbV9zaXpl
LCBmZCk7CisjZWxzZQorICAgIHJldHVybiBEYXRhKCk7CisjZW5kaWYKIH0KIAogRGF0YSBtYXBG
aWxlKGNvbnN0IGNoYXIqIHBhdGgpCiB7CisjaWYgIU9TKFdJTkRPV1MpCiAgICAgaW50IGZkID0g
b3BlbihwYXRoLCBPX1JET05MWSwgMCk7CiAgICAgaWYgKGZkIDwgMCkKICAgICAgICAgcmV0dXJu
IHsgfTsKQEAgLTg2LDEwICs5NCwxNCBAQCBEYXRhIG1hcEZpbGUoY29uc3QgY2hhciogcGF0aCkK
ICAgICB9CiAKICAgICByZXR1cm4gYWRvcHRBbmRNYXBGaWxlKGZkLCAwLCBzaXplKTsKKyNlbHNl
CisgICAgcmV0dXJuIERhdGEoKTsKKyNlbmRpZgogfQogCiBEYXRhIGFkb3B0QW5kTWFwRmlsZShp
bnQgZmQsIHNpemVfdCBvZmZzZXQsIHNpemVfdCBzaXplKQogeworI2lmICFPUyhXSU5ET1dTKQog
ICAgIGlmICghc2l6ZSkgewogICAgICAgICBjbG9zZShmZCk7CiAgICAgICAgIHJldHVybiBEYXRh
OjplbXB0eSgpOwpAQCAtMTAyLDYgKzExNCw5IEBAIERhdGEgYWRvcHRBbmRNYXBGaWxlKGludCBm
ZCwgc2l6ZV90IG9mZnNldCwgc2l6ZV90IHNpemUpCiAgICAgfQogCiAgICAgcmV0dXJuIERhdGE6
OmFkb3B0TWFwKG1hcCwgc2l6ZSwgZmQpOworI2Vsc2UKKyAgICByZXR1cm4gRGF0YSgpOworI2Vu
ZGlmCiB9CiAKIFNIQTE6OkRpZ2VzdCBjb21wdXRlU0hBMShjb25zdCBEYXRhJiBkYXRhLCBjb25z
dCBTYWx0JiBzYWx0KQpAQCAtMTM4LDYgKzE1Myw3IEBAIHN0YXRpYyBTYWx0IG1ha2VTYWx0KCkK
IAogc3RkOjpvcHRpb25hbDxTYWx0PiByZWFkT3JNYWtlU2FsdChjb25zdCBTdHJpbmcmIHBhdGgp
CiB7CisjaWYgIU9TKFdJTkRPV1MpCiAgICAgYXV0byBjcGF0aCA9IFdlYkNvcmU6OkZpbGVTeXN0
ZW06OmZpbGVTeXN0ZW1SZXByZXNlbnRhdGlvbihwYXRoKTsKICAgICBhdXRvIGZkID0gb3Blbihj
cGF0aC5kYXRhKCksIE9fUkRPTkxZLCAwKTsKICAgICBTYWx0IHNhbHQ7CkBAIC0xNTQsNiArMTcw
LDkgQEAgc3RkOjpvcHRpb25hbDxTYWx0PiByZWFkT3JNYWtlU2FsdChjb25zdCBTdHJpbmcmIHBh
dGgpCiAgICAgICAgICAgICByZXR1cm4geyB9OwogICAgIH0KICAgICByZXR1cm4gc2FsdDsKKyNl
bHNlCisgICAgcmV0dXJuIFNhbHQoKTsKKyNlbmRpZgogfQogCiB9IC8vIG5hbWVzcGFjZSBOZXR3
b3JrQ2FjaGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUv
TmV0d29ya0NhY2hlRmlsZVN5c3RlbS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L2NhY2hlL05ldHdvcmtDYWNoZUZpbGVTeXN0ZW0uY3BwCmluZGV4IGI4ZmI3YzkuLmY2NWQ5OWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0Nh
Y2hlRmlsZVN5c3RlbS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNo
ZS9OZXR3b3JrQ2FjaGVGaWxlU3lzdGVtLmNwcApAQCAtMjgsMTMgKzI4LDE2IEBACiAKICNpbmNs
dWRlICJMb2dnaW5nLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9GaWxlU3lzdGVtLmg+Ci0jaW5jbHVk
ZSA8ZGlyZW50Lmg+Ci0jaW5jbHVkZSA8c3lzL3N0YXQuaD4KLSNpbmNsdWRlIDxzeXMvdGltZS5o
PgogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL0Z1bmN0aW9uLmg+
CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogCisjaWYgIU9TKFdJTkRPV1MpCisjaW5j
bHVkZSA8ZGlyZW50Lmg+CisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKyNpbmNsdWRlIDxzeXMvdGlt
ZS5oPgorI2VuZGlmCisKICNpZiBQTEFURk9STShJT1MpICYmICFQTEFURk9STShJT1NfU0lNVUxB
VE9SKQogI2luY2x1ZGUgPHN5cy9hdHRyLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CkBAIC01MCw2
ICs1Myw3IEBAIG5hbWVzcGFjZSBOZXR3b3JrQ2FjaGUgewogCiBzdGF0aWMgRGlyZWN0b3J5RW50
cnlUeXBlIGRpcmVjdG9yeUVudHJ5VHlwZSh1aW50OF90IGR0eXBlKQogeworI2lmICFPUyhXSU5E
T1dTKQogICAgIHN3aXRjaCAoZHR5cGUpIHsKICAgICBjYXNlIERUX0RJUjoKICAgICAgICAgcmV0
dXJuIERpcmVjdG9yeUVudHJ5VHlwZTo6RGlyZWN0b3J5OwpAQCAtNTksMTAgKzYzLDE0IEBAIHN0
YXRpYyBEaXJlY3RvcnlFbnRyeVR5cGUgZGlyZWN0b3J5RW50cnlUeXBlKHVpbnQ4X3QgZHR5cGUp
CiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgICAgICByZXR1cm4gRGlyZWN0b3J5
RW50cnlUeXBlOjpGaWxlOwogICAgIH0KKyNlbHNlCisgICAgcmV0dXJuIERpcmVjdG9yeUVudHJ5
VHlwZTo6RmlsZTsKKyNlbmRpZgogfQogCiB2b2lkIHRyYXZlcnNlRGlyZWN0b3J5KGNvbnN0IFN0
cmluZyYgcGF0aCwgY29uc3QgRnVuY3Rpb248dm9pZCAoY29uc3QgU3RyaW5nJiwgRGlyZWN0b3J5
RW50cnlUeXBlKT4mIGZ1bmN0aW9uKQogeworI2lmICFPUyhXSU5ET1dTKQogICAgIERJUiogZGly
ID0gb3BlbmRpcihXZWJDb3JlOjpGaWxlU3lzdGVtOjpmaWxlU3lzdGVtUmVwcmVzZW50YXRpb24o
cGF0aCkuZGF0YSgpKTsKICAgICBpZiAoIWRpcikKICAgICAgICAgcmV0dXJuOwpAQCAtNzksNiAr
ODcsOSBAQCB2b2lkIHRyYXZlcnNlRGlyZWN0b3J5KGNvbnN0IFN0cmluZyYgcGF0aCwgY29uc3Qg
RnVuY3Rpb248dm9pZCAoY29uc3QgU3RyaW5nJiwgRAogICAgICAgICBmdW5jdGlvbihuYW1lU3Ry
aW5nLCBkaXJlY3RvcnlFbnRyeVR5cGUoZHAtPmRfdHlwZSkpOwogICAgIH0KICAgICBjbG9zZWRp
cihkaXIpOworI2Vsc2UKKyAgICBmdW5jdGlvbihTdHJpbmcoKSwgRGlyZWN0b3J5RW50cnlUeXBl
OjpGaWxlKTsKKyNlbmRpZgogfQogCiB2b2lkIGRlbGV0ZURpcmVjdG9yeVJlY3Vyc2l2ZWx5KGNv
bnN0IFN0cmluZyYgcGF0aCkKQEAgLTExNiw2ICsxMjcsOCBAQCBGaWxlVGltZXMgZmlsZVRpbWVz
KGNvbnN0IFN0cmluZyYgcGF0aCkKICAgICAgICAgcmV0dXJuIHsgfTsKICAgICByZXR1cm4geyBX
YWxsVGltZTo6ZnJvbVJhd1NlY29uZHMoZ19hc2NpaV9zdHJ0b3VsbChiaXJ0aHRpbWVTdHJpbmcs
IG51bGxwdHIsIDEwKSksCiAgICAgICAgIFdhbGxUaW1lOjpmcm9tUmF3U2Vjb25kcyhnX2ZpbGVf
aW5mb19nZXRfYXR0cmlidXRlX3VpbnQ2NChmaWxlSW5mby5nZXQoKSwgInRpbWU6Om1vZGlmaWVk
IikpIH07CisjZWxpZiBPUyhXSU5ET1dTKQorICAgIHJldHVybiBGaWxlVGltZXMoKTsKICNlbmRp
ZgogfQogCkBAIC0xMjcsOCArMTQwLDEwIEBAIHZvaWQgdXBkYXRlRmlsZU1vZGlmaWNhdGlvblRp
bWVJZk5lZWRlZChjb25zdCBTdHJpbmcmIHBhdGgpCiAgICAgICAgIGlmIChXYWxsVGltZTo6bm93
KCkgLSB0aW1lcy5tb2RpZmljYXRpb24gPCAxX2gpCiAgICAgICAgICAgICByZXR1cm47CiAgICAg
fQorI2lmICFPUyhXSU5ET1dTKQogICAgIC8vIFRoaXMgcmVhbGx5IHVwZGF0ZXMgYm90aCB0aGUg
YWNjZXNzIHRpbWUgYW5kIHRoZSBtb2RpZmljYXRpb24gdGltZS4KICAgICB1dGltZXMoV2ViQ29y
ZTo6RmlsZVN5c3RlbTo6ZmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKHBhdGgpLmRhdGEoKSwgbnVs
bHB0cik7CisjZW5kaWYKIH0KIAogYm9vbCBjYW5Vc2VTaGFyZWRNZW1vcnlGb3JQYXRoKGNvbnN0
IFN0cmluZyYgcGF0aCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
Y2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwCmluZGV4IDcwNWU4MzUuLmFhYmNlZDAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0Nh
Y2hlU3RvcmFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9O
ZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcApAQCAtOTA4LDcgKzkwOCw3IEBAIHZvaWQgU3RvcmFnZTo6
dHJhdmVyc2UoY29uc3QgU3RyaW5nJiB0eXBlLCBUcmF2ZXJzZUZsYWdzIGZsYWdzLCBUcmF2ZXJz
ZUhhbmRsZXImCiAgICAgICAgICAgICB9KTsKIAogICAgICAgICAgICAgY29uc3QgdW5zaWduZWQg
bWF4aW11bVBhcmFsbGVsUmVhZENvdW50ID0gNTsKLSAgICAgICAgICAgIHRyYXZlcnNlT3BlcmF0
aW9uLmFjdGl2ZUNvbmRpdGlvbi53YWl0KGxvY2ssIFsmdHJhdmVyc2VPcGVyYXRpb25dIHsKKyAg
ICAgICAgICAgIHRyYXZlcnNlT3BlcmF0aW9uLmFjdGl2ZUNvbmRpdGlvbi53YWl0KGxvY2ssIFsm
dHJhdmVyc2VPcGVyYXRpb24sIG1heGltdW1QYXJhbGxlbFJlYWRDb3VudF0gewogICAgICAgICAg
ICAgICAgIHJldHVybiB0cmF2ZXJzZU9wZXJhdGlvbi5hY3RpdmVDb3VudCA8PSBtYXhpbXVtUGFy
YWxsZWxSZWFkQ291bnQ7CiAgICAgICAgICAgICB9KTsKICAgICAgICAgfSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dpbi9TeXN0ZW1Qcm94eVdpbi5oIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93aW4vU3lzdGVtUHJveHlXaW4uaAppbmRleCBkYWQ5
M2I5Li45NTYwOTI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dp
bi9TeXN0ZW1Qcm94eVdpbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2lu
L1N5c3RlbVByb3h5V2luLmgKQEAgLTIzLDYgKzIzLDEwIEBACiAgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3aW5kb3dz
Lmg+CisKIGNsYXNzIFdpbmRvd3NTeXN0ZW1Qcm94eSB7CiAgICAgc3RhdGljIGNvbnN0IGludCBQ
cm94eVNlcnZlck5hbWVMZW5ndGggPSA1MTI7CiBwdWJsaWM6CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1BsYXRmb3JtL0lQQy9BdHRhY2htZW50LmggYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3Jt
L0lQQy9BdHRhY2htZW50LmgKaW5kZXggMzkyOWRiMi4uM2ZlOTg4NyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvQXR0YWNobWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
UGxhdGZvcm0vSVBDL0F0dGFjaG1lbnQuaApAQCAtMzEsNiArMzEsMTAgQEAKICNpbmNsdWRlIDxt
YWNoL21hY2hfdHJhcHMuaD4KICNlbmRpZgogCisjaWYgT1MoV0lORE9XUykKKyNpbmNsdWRlIDx3
aW5kb3dzLmg+CisjZW5kaWYKKwogbmFtZXNwYWNlIElQQyB7CiAKIGNsYXNzIERlY29kZXI7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL01vZHVsZS5oIGIvU291cmNlL1dlYktp
dC9QbGF0Zm9ybS9Nb2R1bGUuaAppbmRleCA5MDMyOGJmLi43NjhhYTEyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1BsYXRmb3JtL01vZHVsZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvUGxhdGZv
cm0vTW9kdWxlLmgKQEAgLTM3LDYgKzM3LDEwIEBACiB0eXBlZGVmIHN0cnVjdCBfR01vZHVsZSBH
TW9kdWxlOwogI2VuZGlmCiAKKyNpZiBPUyhXSU5ET1dTKQorI2luY2x1ZGUgPHdpbmRvd3MuaD4K
KyNlbmRpZgorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgTW9kdWxlIHsKQEAgLTY0LDcg
KzY4LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkKiBwbGF0Zm9ybUZ1bmN0aW9uUG9pbnRlcihjb25z
dCBjaGFyKiBmdW5jdGlvbk5hbWUpIGNvbnN0OwogCiAgICAgU3RyaW5nIG1fcGF0aDsKLSNpZiBQ
TEFURk9STShXSU4pCisjaWYgT1MoV0lORE9XUykKICAgICBITU9EVUxFIG1fbW9kdWxlOwogI2Vu
ZGlmCiAjaWYgVVNFKENGKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9TaGFy
ZWRNZW1vcnkuaCBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vU2hhcmVkTWVtb3J5LmgKaW5kZXgg
YzcyZTBkNC4uNDI4ZmJmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9TaGFy
ZWRNZW1vcnkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL1NoYXJlZE1lbW9yeS5oCkBA
IC0zNSw2ICszNSwxMCBAQAogI2luY2x1ZGUgPHd0Zi9PcHRpb25hbC5oPgogI2VuZGlmCiAKKyNp
ZiBPUyhXSU5ET1dTKQorI2luY2x1ZGUgPHdpbmRvd3MuaD4KKyNlbmRpZgorCiBuYW1lc3BhY2Ug
SVBDIHsKIGNsYXNzIERlY29kZXI7CiBjbGFzcyBFbmNvZGVyOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9QbHVnaW5Qcm9jZXNzL1dlYlByb2Nlc3NDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvUGx1Z2luUHJvY2Vzcy9XZWJQcm9jZXNzQ29ubmVjdGlvbi5jcHAKaW5kZXggZTczNjYz
ZS4uMTJhMzQxZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9QbHVnaW5Qcm9jZXNzL1dlYlBy
b2Nlc3NDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1BsdWdpblByb2Nlc3MvV2Vi
UHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCkBAIC0zOCw5ICszOCwxMiBAQAogI2luY2x1ZGUgIlBsdWdp
blByb2Nlc3NDb25uZWN0aW9uTWVzc2FnZXMuaCIKICNpbmNsdWRlICJQbHVnaW5Qcm94eU1lc3Nh
Z2VzLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzc0Nvbm5lY3Rpb25NZXNzYWdlcy5oIgotI2luY2x1
ZGUgPHVuaXN0ZC5oPgogI2luY2x1ZGUgPHd0Zi9TZXRGb3JTY29wZS5oPgogCisjaWYgIU9TKFdJ
TkRPV1MpCisjaW5jbHVkZSA8dW5pc3RkLmg+CisjZW5kaWYKKwogdXNpbmcgbmFtZXNwYWNlIFdl
YkNvcmU7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9T
aGFyZWQvQVBJL2MvV0tCYXNlLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvYy9XS0Jhc2Uu
aAppbmRleCAxYzc3YmQ2Li4yMDQ0NTdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9BUEkvYy9XS0Jhc2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvYy9XS0Jhc2Uu
aApAQCAtNDIsNiArNDIsMTAgQEAKICNpbmNsdWRlIDxXZWJLaXQvV0tCYXNlV1BFLmg+CiAjZW5k
aWYKIAorI2lmIGRlZmluZWQoV0lOMzIpCisjaW5jbHVkZSA8V2ViS2l0L1dLQmFzZVdpbi5oPgor
I2VuZGlmCisKIC8qIFdlYktpdDIgc2hhcmVkIHR5cGVzICovCiAKIHR5cGVkZWYgdWludDMyX3Qg
V0tUeXBlSUQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9DaGlsZFByb2Nlc3Mu
Y3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ2hpbGRQcm9jZXNzLmNwcAppbmRleCA2OTk0ZDNk
Li5iNTVkODZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9DaGlsZFByb2Nlc3Mu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NoaWxkUHJvY2Vzcy5jcHAKQEAgLTMwLDcg
KzMwLDEwIEBACiAjaW5jbHVkZSAiU2FuZGJveEluaXRpYWxpemF0aW9uUGFyYW1ldGVycy5oIgog
I2luY2x1ZGUgPFdlYkNvcmUvU2NoZW1lUmVnaXN0cnkuaD4KICNpbmNsdWRlIDxwYWwvU2Vzc2lv
bklELmg+CisKKyNpZiAhT1MoV0lORE9XUykKICNpbmNsdWRlIDx1bmlzdGQuaD4KKyNlbmRpZgog
CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9T
aGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJD
b3JlQXJndW1lbnRDb2RlcnMuaAppbmRleCA2YjFjNDNhLi42OTE0YzdkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaApAQCAtMzUsMTMgKzM1LDE2IEBA
CiAjaW5jbHVkZSA8V2ViQ29yZS9NZWRpYVNlbGVjdGlvbk9wdGlvbi5oPgogI2luY2x1ZGUgPFdl
YkNvcmUvTmV0d29ya0xvYWRNZXRyaWNzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Ob3RpZmljYXRp
b25EaXJlY3Rpb24uaD4KLSNpbmNsdWRlIDxXZWJDb3JlL1BheW1lbnRIZWFkZXJzLmg+CiAjaW5j
bHVkZSA8V2ViQ29yZS9SZWFsdGltZU1lZGlhU291cmNlLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9T
Y3JvbGxTbmFwT2Zmc2V0c0luZm8uaD4KICNpbmNsdWRlIDxXZWJDb3JlL1NlcnZpY2VXb3JrZXJU
eXBlcy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU3RvcmVkQ3JlZGVudGlhbHNQb2xpY3kuaD4KICNp
bmNsdWRlIDxXZWJDb3JlL1dvcmtlclR5cGUuaD4KIAorI2lmIEVOQUJMRShBUFBMRV9QQVkpCisj
aW5jbHVkZSA8V2ViQ29yZS9QYXltZW50SGVhZGVycy5oPgorI2VuZGlmCisKIG5hbWVzcGFjZSBX
VEYgewogY2xhc3MgTW9ub3RvbmljVGltZTsKIGNsYXNzIFNlY29uZHM7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmggYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmgKaW5kZXggNGQ0ZGM2Ni4uZGM5YWZkOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaApAQCAtMjYsMTAgKzI2
LDEzIEBACiAjaWZuZGVmIFByb2Nlc3NBc3NlcnRpb25faAogI2RlZmluZSBQcm9jZXNzQXNzZXJ0
aW9uX2gKIAotI2luY2x1ZGUgPHVuaXN0ZC5oPgogI2luY2x1ZGUgPHd0Zi9GdW5jdGlvbi5oPgog
I2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KIAorI2lmICFPUyhXSU5ET1dTKQorI2luY2x1ZGUg
PHVuaXN0ZC5oPgorI2VuZGlmCisKICNpZiBQTEFURk9STShJT1MpICYmICFQTEFURk9STShJT1Nf
U0lNVUxBVE9SKQogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KICNpbmNsdWRlIDx3dGYvV2Vh
a1B0ci5oPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVu
ZGxlL0luamVjdGVkQnVuZGxlLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvSW5qZWN0ZWRCdW5kbGUuaAppbmRleCBmYzE1MzRmLi5lZGRhZjZiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUu
aAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRC
dW5kbGUuaApAQCAtNjIsNiArNjIsOCBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIHR5cGVkZWYgTlNC
dW5kbGUgKlBsYXRmb3JtQnVuZGxlOwogI2VsaWYgVVNFKEdMSUIpCiB0eXBlZGVmIDo6R01vZHVs
ZSogUGxhdGZvcm1CdW5kbGU7CisjZWxpZiBPUyhXSU5ET1dTKQordHlwZWRlZiB2b2lkKiBQbGF0
Zm9ybUJ1bmRsZTsKICNlbmRpZgogCiBjbGFzcyBJbmplY3RlZEJ1bmRsZVNjcmlwdFdvcmxkOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCmluZGV4IDI1Nzg1YjQuLjU4ZjU0
ZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKQEAgLTExNyw3ICsx
MTcsOSBAQAogI2luY2x1ZGUgPFdlYkNvcmUvU2V0dGluZ3MuaD4KICNpbmNsdWRlIDxXZWJDb3Jl
L1VSTFBhcnNlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVXNlckdlc3R1cmVJbmRpY2F0b3IuaD4K
KyNpZiAhT1MoV0lORE9XUykKICNpbmNsdWRlIDx1bmlzdGQuaD4KKyNlbmRpZgogI2luY2x1ZGUg
PHd0Zi9DdXJyZW50VGltZS5oPgogI2luY2x1ZGUgPHd0Zi9MYW5ndWFnZS5oPgogI2luY2x1ZGUg
PHd0Zi9SdW5Mb29wLmg+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>333716</attachid>
            <date>2018-02-13 13:05:26 -0800</date>
            <delta_ts>2018-02-13 16:46:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-182679-20180213130529.patch</filename>
            <type>text/plain</type>
            <size>14814</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4NDIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDE5OWFmNmUzOGE4YzczM2U4
MzQzODMzZTllOTNiYWZmOWZhMGEyNTAuLjUyZWY2ZDRhMzM4NzM4ZTE5ZGY0MTg2YmJhN2NiYTdk
NTMxZjE3M2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYgQEAKKzIwMTgtMDItMTMgIFlvdXN1a2Ug
S2ltb3RvICA8eW91c3VrZS5raW1vdG9Ac29ueS5jb20+CisKKyAgICAgICAgW1dpbkNhaXJvXSBG
aXggYnVpbGQgZXJyb3JzIHdoaWNoIGNvbWUgZnJvbSBpbmNsdWRpbmcgaGVhZGVycyBhbmQgbm90
IHN1aXRhYmxlIGltcGxlbWVudGF0aW9uIGZvciB3aW5kb3dzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODI2NzkKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdv
cmtDYWNoZUJsb2JTdG9yYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpC
bG9iU3RvcmFnZTo6YWRkKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3Jr
Q2FjaGVEYXRhLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpEYXRhOjptYXBU
b0ZpbGUgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6Om1hcEZpbGUpOgor
ICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OmFkb3B0QW5kTWFwRmlsZSk6CisgICAgICAg
IChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6cmVhZE9yTWFrZVNhbHQpOgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZUZpbGVTeXN0ZW0uY3BwOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrQ2FjaGU6OmRpcmVjdG9yeUVudHJ5VHlwZSk6CisgICAgICAgIChXZWJLaXQ6
Ok5ldHdvcmtDYWNoZTo6dHJhdmVyc2VEaXJlY3RvcnkpOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrQ2FjaGU6OmZpbGVUaW1lcyk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6dXBk
YXRlRmlsZU1vZGlmaWNhdGlvblRpbWVJZk5lZWRlZCk6CisgICAgICAgICogTmV0d29ya1Byb2Nl
c3MvY2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdv
cmtDYWNoZTo6U3RvcmFnZTo6dHJhdmVyc2UpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3dp
bi9TeXN0ZW1Qcm94eVdpbi5oOgorICAgICAgICAqIFBsYXRmb3JtL0lQQy9BdHRhY2htZW50Lmg6
CisgICAgICAgICogUGxhdGZvcm0vTW9kdWxlLmg6CisgICAgICAgICogUGxhdGZvcm0vU2hhcmVk
TWVtb3J5Lmg6CisgICAgICAgICogUGx1Z2luUHJvY2Vzcy9XZWJQcm9jZXNzQ29ubmVjdGlvbi5j
cHA6CisgICAgICAgICogU2hhcmVkL0FQSS9jL1dLQmFzZS5oOgorICAgICAgICAqIFNoYXJlZC9D
aGlsZFByb2Nlc3MuY3BwOgorICAgICAgICAqIFNoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMu
aDoKKyAgICAgICAgKiBVSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oOgorICAgICAgICAqIFdl
YlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuaDoKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1dlYlByb2Nlc3MuY3BwOgorCiAyMDE4LTAyLTEzICBCcmVudCBGdWxnaGFtICA8YmZ1
bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIFtpT1NdIHdoaXRlbGlzdCBpb2tpdC1nZXQtcHJv
cGVydGllcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9O
ZXR3b3JrQ2FjaGVCbG9iU3RvcmFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L2NhY2hlL05ldHdvcmtDYWNoZUJsb2JTdG9yYWdlLmNwcAppbmRleCA5OTNhZjBlMmQ4OTJhNTRl
MGRhMmMwN2ExYmJjOTY0YmVjNDkyZjQyLi5iNTI5NDY4NTQ4ZmJiNzdkMjllODc5ZmUyNmRmY2E1
ZWRhZTUxOWEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hl
L05ldHdvcmtDYWNoZUJsb2JTdG9yYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZUJsb2JTdG9yYWdlLmNwcApAQCAtMzAsOSArMzAsMTEg
QEAKICNpbmNsdWRlICJOZXR3b3JrQ2FjaGVGaWxlU3lzdGVtLmgiCiAjaW5jbHVkZSA8V2ViQ29y
ZS9GaWxlU3lzdGVtLmg+CiAjaW5jbHVkZSA8ZmNudGwuaD4KKyNpZiAhT1MoV0lORE9XUykKICNp
bmNsdWRlIDxzeXMvbW1hbi5oPgogI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CiAjaW5jbHVkZSA8dW5p
c3RkLmg+CisjZW5kaWYKICNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgogI2luY2x1ZGUgPHd0Zi9T
SEExLmg+CiAKQEAgLTgzLDYgKzg1LDcgQEAgU3RyaW5nIEJsb2JTdG9yYWdlOjpibG9iUGF0aEZv
ckhhc2goY29uc3QgU0hBMTo6RGlnZXN0JiBoYXNoKSBjb25zdAogCiBCbG9iU3RvcmFnZTo6Qmxv
YiBCbG9iU3RvcmFnZTo6YWRkKGNvbnN0IFN0cmluZyYgcGF0aCwgY29uc3QgRGF0YSYgZGF0YSkK
IHsKKyNpZiAhT1MoV0lORE9XUykKICAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKIAog
ICAgIGF1dG8gaGFzaCA9IGNvbXB1dGVTSEExKGRhdGEsIG1fc2FsdCk7CkBAIC0xMTQsNiArMTE3
LDkgQEAgQmxvYlN0b3JhZ2U6OkJsb2IgQmxvYlN0b3JhZ2U6OmFkZChjb25zdCBTdHJpbmcmIHBh
dGgsIGNvbnN0IERhdGEmIGRhdGEpCiAgICAgbV9hcHByb3hpbWF0ZVNpemUgKz0gbWFwcGVkRGF0
YS5zaXplKCk7CiAKICAgICByZXR1cm4geyBtYXBwZWREYXRhLCBoYXNoIH07CisjZWxzZQorICAg
IHJldHVybiB7IERhdGEoKSwgY29tcHV0ZVNIQTEoZGF0YSwgbV9zYWx0KSB9OworI2VuZGlmCiB9
CiAKIEJsb2JTdG9yYWdlOjpCbG9iIEJsb2JTdG9yYWdlOjpnZXQoY29uc3QgU3RyaW5nJiBwYXRo
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3Jr
Q2FjaGVEYXRhLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29y
a0NhY2hlRGF0YS5jcHAKaW5kZXggY2Y2MzdhNzUwY2I0ZjE3MTA5YjcyMzUzNjI0MjM3OWM4ODlk
MTY5Yy4uYTZlMzdiZTQ5MTI4NTY0MDkxYWZiNTQyMDgzYjc1NWU3MTBhZjEwMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVEYXRhLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZURh
dGEuY3BwCkBAIC0yOCwxNiArMjgsMjAgQEAKIAogI2luY2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3Rl
bS5oPgogI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8d3RmL0NyeXB0b2dyYXBoaWNhbGx5
UmFuZG9tTnVtYmVyLmg+CisKKyNpZiAhT1MoV0lORE9XUykKICNpbmNsdWRlIDxzeXMvbW1hbi5o
PgogI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+Ci0jaW5jbHVkZSA8
d3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmg+CisjZW5kaWYKIAogbmFtZXNwYWNl
IFdlYktpdCB7CiBuYW1lc3BhY2UgTmV0d29ya0NhY2hlIHsKIAogRGF0YSBEYXRhOjptYXBUb0Zp
bGUoY29uc3QgY2hhciogcGF0aCkgY29uc3QKIHsKKyNpZiAhT1MoV0lORE9XUykKICAgICBpbnQg
ZmQgPSBvcGVuKHBhdGgsIE9fQ1JFQVQgfCBPX0VYQ0wgfCBPX1JEV1IgLCBTX0lSVVNSIHwgU19J
V1VTUik7CiAgICAgaWYgKGZkIDwgMCkKICAgICAgICAgcmV0dXJuIHsgfTsKQEAgLTY3LDEwICs3
MSwxNCBAQCBEYXRhIERhdGE6Om1hcFRvRmlsZShjb25zdCBjaGFyKiBwYXRoKSBjb25zdAogICAg
IG1zeW5jKG1hcCwgbV9zaXplLCBNU19BU1lOQyk7CiAKICAgICByZXR1cm4gRGF0YTo6YWRvcHRN
YXAobWFwLCBtX3NpemUsIGZkKTsKKyNlbHNlCisgICAgcmV0dXJuIERhdGEoKTsKKyNlbmRpZgog
fQogCiBEYXRhIG1hcEZpbGUoY29uc3QgY2hhciogcGF0aCkKIHsKKyNpZiAhT1MoV0lORE9XUykK
ICAgICBpbnQgZmQgPSBvcGVuKHBhdGgsIE9fUkRPTkxZLCAwKTsKICAgICBpZiAoZmQgPCAwKQog
ICAgICAgICByZXR1cm4geyB9OwpAQCAtODYsMTAgKzk0LDE0IEBAIERhdGEgbWFwRmlsZShjb25z
dCBjaGFyKiBwYXRoKQogICAgIH0KIAogICAgIHJldHVybiBhZG9wdEFuZE1hcEZpbGUoZmQsIDAs
IHNpemUpOworI2Vsc2UKKyAgICByZXR1cm4gRGF0YSgpOworI2VuZGlmCiB9CiAKIERhdGEgYWRv
cHRBbmRNYXBGaWxlKGludCBmZCwgc2l6ZV90IG9mZnNldCwgc2l6ZV90IHNpemUpCiB7CisjaWYg
IU9TKFdJTkRPV1MpCiAgICAgaWYgKCFzaXplKSB7CiAgICAgICAgIGNsb3NlKGZkKTsKICAgICAg
ICAgcmV0dXJuIERhdGE6OmVtcHR5KCk7CkBAIC0xMDIsNiArMTE0LDkgQEAgRGF0YSBhZG9wdEFu
ZE1hcEZpbGUoaW50IGZkLCBzaXplX3Qgb2Zmc2V0LCBzaXplX3Qgc2l6ZSkKICAgICB9CiAKICAg
ICByZXR1cm4gRGF0YTo6YWRvcHRNYXAobWFwLCBzaXplLCBmZCk7CisjZWxzZQorICAgIHJldHVy
biBEYXRhKCk7CisjZW5kaWYKIH0KIAogU0hBMTo6RGlnZXN0IGNvbXB1dGVTSEExKGNvbnN0IERh
dGEmIGRhdGEsIGNvbnN0IFNhbHQmIHNhbHQpCkBAIC0xMzgsNiArMTUzLDcgQEAgc3RhdGljIFNh
bHQgbWFrZVNhbHQoKQogCiBzdGQ6Om9wdGlvbmFsPFNhbHQ+IHJlYWRPck1ha2VTYWx0KGNvbnN0
IFN0cmluZyYgcGF0aCkKIHsKKyNpZiAhT1MoV0lORE9XUykKICAgICBhdXRvIGNwYXRoID0gV2Vi
Q29yZTo6RmlsZVN5c3RlbTo6ZmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKHBhdGgpOwogICAgIGF1
dG8gZmQgPSBvcGVuKGNwYXRoLmRhdGEoKSwgT19SRE9OTFksIDApOwogICAgIFNhbHQgc2FsdDsK
QEAgLTE1NCw2ICsxNzAsOSBAQCBzdGQ6Om9wdGlvbmFsPFNhbHQ+IHJlYWRPck1ha2VTYWx0KGNv
bnN0IFN0cmluZyYgcGF0aCkKICAgICAgICAgICAgIHJldHVybiB7IH07CiAgICAgfQogICAgIHJl
dHVybiBzYWx0OworI2Vsc2UKKyAgICByZXR1cm4gU2FsdCgpOworI2VuZGlmCiB9CiAKIH0gLy8g
bmFtZXNwYWNlIE5ldHdvcmtDYWNoZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVGaWxlU3lzdGVtLmNwcCBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlRmlsZVN5c3RlbS5jcHAKaW5kZXggYjhm
YjdjOTA3MWZlN2YxMzRkZDcyMDdmNDhkYmJkNmNiMGQ3OTUxMi4uZjY1ZDk5ZWQ2NzQ1N2MxNjAy
MDM1ZGFmZjY2MTkzOTcxYjdjYzEyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVGaWxlU3lzdGVtLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZUZpbGVTeXN0ZW0uY3BwCkBAIC0y
OCwxMyArMjgsMTYgQEAKIAogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNpbmNsdWRlIDxXZWJDb3Jl
L0ZpbGVTeXN0ZW0uaD4KLSNpbmNsdWRlIDxkaXJlbnQuaD4KLSNpbmNsdWRlIDxzeXMvc3RhdC5o
PgotI2luY2x1ZGUgPHN5cy90aW1lLmg+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KICNp
bmNsdWRlIDx3dGYvRnVuY3Rpb24uaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAK
KyNpZiAhT1MoV0lORE9XUykKKyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDxzeXMvc3Rh
dC5oPgorI2luY2x1ZGUgPHN5cy90aW1lLmg+CisjZW5kaWYKKwogI2lmIFBMQVRGT1JNKElPUykg
JiYgIVBMQVRGT1JNKElPU19TSU1VTEFUT1IpCiAjaW5jbHVkZSA8c3lzL2F0dHIuaD4KICNpbmNs
dWRlIDx1bmlzdGQuaD4KQEAgLTUwLDYgKzUzLDcgQEAgbmFtZXNwYWNlIE5ldHdvcmtDYWNoZSB7
CiAKIHN0YXRpYyBEaXJlY3RvcnlFbnRyeVR5cGUgZGlyZWN0b3J5RW50cnlUeXBlKHVpbnQ4X3Qg
ZHR5cGUpCiB7CisjaWYgIU9TKFdJTkRPV1MpCiAgICAgc3dpdGNoIChkdHlwZSkgewogICAgIGNh
c2UgRFRfRElSOgogICAgICAgICByZXR1cm4gRGlyZWN0b3J5RW50cnlUeXBlOjpEaXJlY3Rvcnk7
CkBAIC01OSwxMCArNjMsMTQgQEAgc3RhdGljIERpcmVjdG9yeUVudHJ5VHlwZSBkaXJlY3RvcnlF
bnRyeVR5cGUodWludDhfdCBkdHlwZSkKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAg
ICAgICAgIHJldHVybiBEaXJlY3RvcnlFbnRyeVR5cGU6OkZpbGU7CiAgICAgfQorI2Vsc2UKKyAg
ICByZXR1cm4gRGlyZWN0b3J5RW50cnlUeXBlOjpGaWxlOworI2VuZGlmCiB9CiAKIHZvaWQgdHJh
dmVyc2VEaXJlY3RvcnkoY29uc3QgU3RyaW5nJiBwYXRoLCBjb25zdCBGdW5jdGlvbjx2b2lkIChj
b25zdCBTdHJpbmcmLCBEaXJlY3RvcnlFbnRyeVR5cGUpPiYgZnVuY3Rpb24pCiB7CisjaWYgIU9T
KFdJTkRPV1MpCiAgICAgRElSKiBkaXIgPSBvcGVuZGlyKFdlYkNvcmU6OkZpbGVTeXN0ZW06OmZp
bGVTeXN0ZW1SZXByZXNlbnRhdGlvbihwYXRoKS5kYXRhKCkpOwogICAgIGlmICghZGlyKQogICAg
ICAgICByZXR1cm47CkBAIC03OSw2ICs4Nyw5IEBAIHZvaWQgdHJhdmVyc2VEaXJlY3RvcnkoY29u
c3QgU3RyaW5nJiBwYXRoLCBjb25zdCBGdW5jdGlvbjx2b2lkIChjb25zdCBTdHJpbmcmLCBECiAg
ICAgICAgIGZ1bmN0aW9uKG5hbWVTdHJpbmcsIGRpcmVjdG9yeUVudHJ5VHlwZShkcC0+ZF90eXBl
KSk7CiAgICAgfQogICAgIGNsb3NlZGlyKGRpcik7CisjZWxzZQorICAgIGZ1bmN0aW9uKFN0cmlu
ZygpLCBEaXJlY3RvcnlFbnRyeVR5cGU6OkZpbGUpOworI2VuZGlmCiB9CiAKIHZvaWQgZGVsZXRl
RGlyZWN0b3J5UmVjdXJzaXZlbHkoY29uc3QgU3RyaW5nJiBwYXRoKQpAQCAtMTE2LDYgKzEyNyw4
IEBAIEZpbGVUaW1lcyBmaWxlVGltZXMoY29uc3QgU3RyaW5nJiBwYXRoKQogICAgICAgICByZXR1
cm4geyB9OwogICAgIHJldHVybiB7IFdhbGxUaW1lOjpmcm9tUmF3U2Vjb25kcyhnX2FzY2lpX3N0
cnRvdWxsKGJpcnRodGltZVN0cmluZywgbnVsbHB0ciwgMTApKSwKICAgICAgICAgV2FsbFRpbWU6
OmZyb21SYXdTZWNvbmRzKGdfZmlsZV9pbmZvX2dldF9hdHRyaWJ1dGVfdWludDY0KGZpbGVJbmZv
LmdldCgpLCAidGltZTo6bW9kaWZpZWQiKSkgfTsKKyNlbGlmIE9TKFdJTkRPV1MpCisgICAgcmV0
dXJuIEZpbGVUaW1lcygpOwogI2VuZGlmCiB9CiAKQEAgLTEyNyw4ICsxNDAsMTAgQEAgdm9pZCB1
cGRhdGVGaWxlTW9kaWZpY2F0aW9uVGltZUlmTmVlZGVkKGNvbnN0IFN0cmluZyYgcGF0aCkKICAg
ICAgICAgaWYgKFdhbGxUaW1lOjpub3coKSAtIHRpbWVzLm1vZGlmaWNhdGlvbiA8IDFfaCkKICAg
ICAgICAgICAgIHJldHVybjsKICAgICB9CisjaWYgIU9TKFdJTkRPV1MpCiAgICAgLy8gVGhpcyBy
ZWFsbHkgdXBkYXRlcyBib3RoIHRoZSBhY2Nlc3MgdGltZSBhbmQgdGhlIG1vZGlmaWNhdGlvbiB0
aW1lLgogICAgIHV0aW1lcyhXZWJDb3JlOjpGaWxlU3lzdGVtOjpmaWxlU3lzdGVtUmVwcmVzZW50
YXRpb24ocGF0aCkuZGF0YSgpLCBudWxscHRyKTsKKyNlbmRpZgogfQogCiBib29sIGNhblVzZVNo
YXJlZE1lbW9yeUZvclBhdGgoY29uc3QgU3RyaW5nJiBwYXRoKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5jcHAK
aW5kZXggNzA1ZTgzNTZjNzlkNWQwOWE4OTJjNDg0YWFlOGJmODY5NTQ0M2I0Yi4uYWFiY2VkMDYx
MWU4OTc5NzM2MzM3ODQ5ZjBkNjc1NWU0NDk2YTU0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwCkBA
IC05MDgsNyArOTA4LDcgQEAgdm9pZCBTdG9yYWdlOjp0cmF2ZXJzZShjb25zdCBTdHJpbmcmIHR5
cGUsIFRyYXZlcnNlRmxhZ3MgZmxhZ3MsIFRyYXZlcnNlSGFuZGxlciYKICAgICAgICAgICAgIH0p
OwogCiAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBtYXhpbXVtUGFyYWxsZWxSZWFkQ291bnQg
PSA1OwotICAgICAgICAgICAgdHJhdmVyc2VPcGVyYXRpb24uYWN0aXZlQ29uZGl0aW9uLndhaXQo
bG9jaywgWyZ0cmF2ZXJzZU9wZXJhdGlvbl0geworICAgICAgICAgICAgdHJhdmVyc2VPcGVyYXRp
b24uYWN0aXZlQ29uZGl0aW9uLndhaXQobG9jaywgWyZ0cmF2ZXJzZU9wZXJhdGlvbiwgbWF4aW11
bVBhcmFsbGVsUmVhZENvdW50XSB7CiAgICAgICAgICAgICAgICAgcmV0dXJuIHRyYXZlcnNlT3Bl
cmF0aW9uLmFjdGl2ZUNvdW50IDw9IG1heGltdW1QYXJhbGxlbFJlYWRDb3VudDsKICAgICAgICAg
ICAgIH0pOwogICAgICAgICB9KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvd2luL1N5c3RlbVByb3h5V2luLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L3dpbi9TeXN0ZW1Qcm94eVdpbi5oCmluZGV4IGRhZDkzYjlkYTQzZDczZWViNDkwOWI5ZWEzMWRi
MWMzZjZlMTljYWYuLjk1NjA5Mjg4YmU2Yzk0M2JiYmU3OTY2MmViNmYzMjRkNjVjNGQ1OWEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2luL1N5c3RlbVByb3h5V2lu
LmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93aW4vU3lzdGVtUHJveHlXaW4u
aApAQCAtMjMsNiArMjMsMTAgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHdpbmRvd3MuaD4KKwogY2xhc3MgV2lu
ZG93c1N5c3RlbVByb3h5IHsKICAgICBzdGF0aWMgY29uc3QgaW50IFByb3h5U2VydmVyTmFtZUxl
bmd0aCA9IDUxMjsKIHB1YmxpYzoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0v
SVBDL0F0dGFjaG1lbnQuaCBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL0F0dGFjaG1lbnQu
aAppbmRleCAzOTI5ZGIyNzMwODA0MWMwZjYyZjVjOWE0MzI0Y2Q0MGFiYmJkZDYyLi4zZmU5ODg3
ZWY0ZTk4YjIwZGI0MDI0ZGE1MzU3ZWQwMzQ3MWI5YmFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1BsYXRmb3JtL0lQQy9BdHRhY2htZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9y
bS9JUEMvQXR0YWNobWVudC5oCkBAIC0zMSw2ICszMSwxMCBAQAogI2luY2x1ZGUgPG1hY2gvbWFj
aF90cmFwcy5oPgogI2VuZGlmCiAKKyNpZiBPUyhXSU5ET1dTKQorI2luY2x1ZGUgPHdpbmRvd3Mu
aD4KKyNlbmRpZgorCiBuYW1lc3BhY2UgSVBDIHsKIAogY2xhc3MgRGVjb2RlcjsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vTW9kdWxlLmggYi9Tb3VyY2UvV2ViS2l0L1BsYXRm
b3JtL01vZHVsZS5oCmluZGV4IDkwMzI4YmZlNjliODE5NzlkOTE0MGZjMjk0NGM1OGVkNWZiOWRj
NjMuLjc2OGFhMTJkM2IxODc3N2RjNjQ1MTFiZDE3ZTdlZTRjMGUyZTc2ODAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vTW9kdWxlLmgKKysrIGIvU291cmNlL1dlYktpdC9QbGF0
Zm9ybS9Nb2R1bGUuaApAQCAtMzcsNiArMzcsMTAgQEAKIHR5cGVkZWYgc3RydWN0IF9HTW9kdWxl
IEdNb2R1bGU7CiAjZW5kaWYKIAorI2lmIE9TKFdJTkRPV1MpCisjaW5jbHVkZSA8d2luZG93cy5o
PgorI2VuZGlmCisKIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBNb2R1bGUgewpAQCAtNjQs
NyArNjgsNyBAQCBwcml2YXRlOgogICAgIHZvaWQqIHBsYXRmb3JtRnVuY3Rpb25Qb2ludGVyKGNv
bnN0IGNoYXIqIGZ1bmN0aW9uTmFtZSkgY29uc3Q7CiAKICAgICBTdHJpbmcgbV9wYXRoOwotI2lm
IFBMQVRGT1JNKFdJTikKKyNpZiBPUyhXSU5ET1dTKQogICAgIEhNT0RVTEUgbV9tb2R1bGU7CiAj
ZW5kaWYKICNpZiBVU0UoQ0YpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL1No
YXJlZE1lbW9yeS5oIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9TaGFyZWRNZW1vcnkuaAppbmRl
eCBjNzJlMGQ0YjBhYjg3MjA2YmNmNTI3NTUzNzk5ZGMzYmVmY2JhMWMwLi40MjhmYmY5MjdiOTU4
ZDM2Y2RlOTJmZThhNDExM2MwN2Q1OTIzYjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1Bs
YXRmb3JtL1NoYXJlZE1lbW9yeS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vU2hhcmVk
TWVtb3J5LmgKQEAgLTM1LDYgKzM1LDEwIEBACiAjaW5jbHVkZSA8d3RmL09wdGlvbmFsLmg+CiAj
ZW5kaWYKIAorI2lmIE9TKFdJTkRPV1MpCisjaW5jbHVkZSA8d2luZG93cy5oPgorI2VuZGlmCisK
IG5hbWVzcGFjZSBJUEMgewogY2xhc3MgRGVjb2RlcjsKIGNsYXNzIEVuY29kZXI7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1BsdWdpblByb2Nlc3MvV2ViUHJvY2Vzc0Nvbm5lY3Rpb24uY3Bw
IGIvU291cmNlL1dlYktpdC9QbHVnaW5Qcm9jZXNzL1dlYlByb2Nlc3NDb25uZWN0aW9uLmNwcApp
bmRleCBlNzM2NjNlOTNhMmIwYjYyYjg1NDFlYzk0MTk5YmM4NDVhZGRlMDg3Li4xMmEzNDFkZTRk
ZjlmNDYyNjRlZTNkZmRjZTRjOWYwZjQ3ZTgzM2E0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1BsdWdpblByb2Nlc3MvV2ViUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvUGx1Z2luUHJvY2Vzcy9XZWJQcm9jZXNzQ29ubmVjdGlvbi5jcHAKQEAgLTM4LDkgKzM4LDEy
IEBACiAjaW5jbHVkZSAiUGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25NZXNzYWdlcy5oIgogI2luY2x1
ZGUgIlBsdWdpblByb3h5TWVzc2FnZXMuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzQ29ubmVjdGlv
bk1lc3NhZ2VzLmgiCi0jaW5jbHVkZSA8dW5pc3RkLmg+CiAjaW5jbHVkZSA8d3RmL1NldEZvclNj
b3BlLmg+CiAKKyNpZiAhT1MoV0lORE9XUykKKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNlbmRpZgor
CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNwYWNlIFdlYktpdCB7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvYy9XS0Jhc2UuaCBiL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL0FQSS9jL1dLQmFzZS5oCmluZGV4IDFjNzdiZDY2MmFiYzI5ODg2NDcyMjU1MWE0NjUy
ZDk1NjkyYjU1NjEuLmM5OTVjYmM1ODE4ODM2MzE2ZGZjZDkyNDhkZDA3OTQyNTA2NWY4ZWQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLQmFzZS5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLQmFzZS5oCkBAIC0zMiwxNCArMzIsMTIgQEAKIAogI2lm
IGRlZmluZWQoQlVJTERJTkdfR1RLX18pCiAjaW5jbHVkZSA8V2ViS2l0L1dLQmFzZUd0ay5oPgot
I2VuZGlmCi0KLSNpZiBkZWZpbmVkKF9fQVBQTEVfXykgJiYgIWRlZmluZWQoQlVJTERJTkdfR1RL
X18pCi0jaW5jbHVkZSA8V2ViS2l0L1dLQmFzZU1hYy5oPgotI2VuZGlmCi0KLSNpZiBkZWZpbmVk
KEJVSUxESU5HX1dQRV9fKQorI2VsaWYgZGVmaW5lZChCVUlMRElOR19XUEVfXykKICNpbmNsdWRl
IDxXZWJLaXQvV0tCYXNlV1BFLmg+CisjZWxpZiBkZWZpbmVkKF9fQVBQTEVfXykKKyNpbmNsdWRl
IDxXZWJLaXQvV0tCYXNlTWFjLmg+CisjZWxpZiBkZWZpbmVkKF9XSU4zMikKKyNpbmNsdWRlIDxX
ZWJLaXQvV0tCYXNlV2luLmg+CiAjZW5kaWYKIAogLyogV2ViS2l0MiBzaGFyZWQgdHlwZXMgKi8K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NoaWxkUHJvY2Vzcy5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1NoYXJlZC9DaGlsZFByb2Nlc3MuY3BwCmluZGV4IDY5OTRkM2RmOTUwZjE3M2Fk
Nzg4OTI5MGNmZTcwZDZkOGNiNjYwNGQuLmI1NWQ4NmZkNjVkYTcyNzkwZDU2MzgwYTcxMWQ0YzY5
Zjg0MTFmMDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NoaWxkUHJvY2Vzcy5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ2hpbGRQcm9jZXNzLmNwcApAQCAtMzAsNyAr
MzAsMTAgQEAKICNpbmNsdWRlICJTYW5kYm94SW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzLmgiCiAj
aW5jbHVkZSA8V2ViQ29yZS9TY2hlbWVSZWdpc3RyeS5oPgogI2luY2x1ZGUgPHBhbC9TZXNzaW9u
SUQuaD4KKworI2lmICFPUyhXSU5ET1dTKQogI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2VuZGlmCiAK
IHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1No
YXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNv
cmVBcmd1bWVudENvZGVycy5oCmluZGV4IDZiMWM0M2E1OGY4NTQ4ZTAyZDA5N2ZkOWQxZjcwMmNm
OTY2NmUyZDguLjY5MTRjN2Q5N2NmMTI2M2RiNjI2Yzc3YTQ4MGEwNjQ3M2U4YmQyMTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5oCkBAIC0zNSwxMyAr
MzUsMTYgQEAKICNpbmNsdWRlIDxXZWJDb3JlL01lZGlhU2VsZWN0aW9uT3B0aW9uLmg+CiAjaW5j
bHVkZSA8V2ViQ29yZS9OZXR3b3JrTG9hZE1ldHJpY3MuaD4KICNpbmNsdWRlIDxXZWJDb3JlL05v
dGlmaWNhdGlvbkRpcmVjdGlvbi5oPgotI2luY2x1ZGUgPFdlYkNvcmUvUGF5bWVudEhlYWRlcnMu
aD4KICNpbmNsdWRlIDxXZWJDb3JlL1JlYWx0aW1lTWVkaWFTb3VyY2UuaD4KICNpbmNsdWRlIDxX
ZWJDb3JlL1Njcm9sbFNuYXBPZmZzZXRzSW5mby5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2Vydmlj
ZVdvcmtlclR5cGVzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TdG9yZWRDcmVkZW50aWFsc1BvbGlj
eS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvV29ya2VyVHlwZS5oPgogCisjaWYgRU5BQkxFKEFQUExF
X1BBWSkKKyNpbmNsdWRlIDxXZWJDb3JlL1BheW1lbnRIZWFkZXJzLmg+CisjZW5kaWYKKwogbmFt
ZXNwYWNlIFdURiB7CiBjbGFzcyBNb25vdG9uaWNUaW1lOwogY2xhc3MgU2Vjb25kczsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAppbmRleCA0ZDRkYzY2ZjI1NWVh
NmZjYzQwY2UzYTNjYmIzNWU0ZDgxMjJmOGNiLi5kYzlhZmQ4MDk0MzljNzVhMDM5ZWNlYmU4NjU4
YzhlYTM0ZGNjM2YyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNz
QXNzZXJ0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlv
bi5oCkBAIC0yNiwxMCArMjYsMTMgQEAKICNpZm5kZWYgUHJvY2Vzc0Fzc2VydGlvbl9oCiAjZGVm
aW5lIFByb2Nlc3NBc3NlcnRpb25faAogCi0jaW5jbHVkZSA8dW5pc3RkLmg+CiAjaW5jbHVkZSA8
d3RmL0Z1bmN0aW9uLmg+CiAjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogCisjaWYgIU9TKFdJ
TkRPV1MpCisjaW5jbHVkZSA8dW5pc3RkLmg+CisjZW5kaWYKKwogI2lmIFBMQVRGT1JNKElPUykg
JiYgIVBMQVRGT1JNKElPU19TSU1VTEFUT1IpCiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgog
I2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuaCBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oCmluZGV4IGZjMTUzNGY2NTZm
ZWJiMGFmYjQ2ZGYzMzEwOWY3NGZlZTNkODU4MjAuLmVkZGFmNmI5ZjEzODAyN2YwMjMwYWU4NjJi
ZTA3ZGJmZmYxMTMzYjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oCkBAIC02Miw2ICs2Miw4IEBAIG5hbWVz
cGFjZSBXZWJLaXQgewogdHlwZWRlZiBOU0J1bmRsZSAqUGxhdGZvcm1CdW5kbGU7CiAjZWxpZiBV
U0UoR0xJQikKIHR5cGVkZWYgOjpHTW9kdWxlKiBQbGF0Zm9ybUJ1bmRsZTsKKyNlbGlmIE9TKFdJ
TkRPV1MpCit0eXBlZGVmIHZvaWQqIFBsYXRmb3JtQnVuZGxlOwogI2VuZGlmCiAKIGNsYXNzIElu
amVjdGVkQnVuZGxlU2NyaXB0V29ybGQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vz
cy5jcHAKaW5kZXggMjU3ODViNDJlYTM1YjBmODc3MWVjZjdiMGJkNDAyOWE3MjUzMmUwZC4uNThm
NTRlYWE2MDRmYzIwZDlkMWRmMzkyNzYzNDRlMmUzZTcwMTljMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQcm9jZXNzLmNwcApAQCAtMTE3LDcgKzExNyw5IEBACiAjaW5jbHVkZSA8V2Vi
Q29yZS9TZXR0aW5ncy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVVJMUGFyc2VyLmg+CiAjaW5jbHVk
ZSA8V2ViQ29yZS9Vc2VyR2VzdHVyZUluZGljYXRvci5oPgorI2lmICFPUyhXSU5ET1dTKQogI2lu
Y2x1ZGUgPHVuaXN0ZC5oPgorI2VuZGlmCiAjaW5jbHVkZSA8d3RmL0N1cnJlbnRUaW1lLmg+CiAj
aW5jbHVkZSA8d3RmL0xhbmd1YWdlLmg+CiAjaW5jbHVkZSA8d3RmL1J1bkxvb3AuaD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>333744</attachid>
            <date>2018-02-13 16:46:37 -0800</date>
            <delta_ts>2018-02-13 22:01:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-182679-20180213164640.patch</filename>
            <type>text/plain</type>
            <size>15044</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4NDMyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDQxYjBlYWFlOTM5YzNmMDY1
YWZkOGM1NWM3YTE4YjRlOTQ5Y2JhN2QuLmI4N2VhYTEwMmM4ZjY5ZTMzYTM4NDA4YWRkZGZhNjg3
YTg1Y2Q1ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYgQEAKKzIwMTgtMDItMTMgIFlvdXN1a2Ug
S2ltb3RvICA8eW91c3VrZS5raW1vdG9Ac29ueS5jb20+CisKKyAgICAgICAgW1dpbkNhaXJvXSBG
aXggYnVpbGQgZXJyb3JzIHdoaWNoIGNvbWUgZnJvbSBpbmNsdWRpbmcgaGVhZGVycyBhbmQgbm90
IHN1aXRhYmxlIGltcGxlbWVudGF0aW9uIGZvciB3aW5kb3dzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODI2NzkKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdv
cmtDYWNoZUJsb2JTdG9yYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpC
bG9iU3RvcmFnZTo6YWRkKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3Jr
Q2FjaGVEYXRhLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpEYXRhOjptYXBU
b0ZpbGUgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6Om1hcEZpbGUpOgor
ICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OmFkb3B0QW5kTWFwRmlsZSk6CisgICAgICAg
IChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6cmVhZE9yTWFrZVNhbHQpOgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZUZpbGVTeXN0ZW0uY3BwOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrQ2FjaGU6OmRpcmVjdG9yeUVudHJ5VHlwZSk6CisgICAgICAgIChXZWJLaXQ6
Ok5ldHdvcmtDYWNoZTo6dHJhdmVyc2VEaXJlY3RvcnkpOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrQ2FjaGU6OmZpbGVUaW1lcyk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6dXBk
YXRlRmlsZU1vZGlmaWNhdGlvblRpbWVJZk5lZWRlZCk6CisgICAgICAgICogTmV0d29ya1Byb2Nl
c3MvY2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdv
cmtDYWNoZTo6U3RvcmFnZTo6dHJhdmVyc2UpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3dp
bi9TeXN0ZW1Qcm94eVdpbi5oOgorICAgICAgICAqIFBsYXRmb3JtL0lQQy9BdHRhY2htZW50Lmg6
CisgICAgICAgICogUGxhdGZvcm0vTW9kdWxlLmg6CisgICAgICAgICogUGxhdGZvcm0vU2hhcmVk
TWVtb3J5Lmg6CisgICAgICAgICogUGx1Z2luUHJvY2Vzcy9XZWJQcm9jZXNzQ29ubmVjdGlvbi5j
cHA6CisgICAgICAgICogU2hhcmVkL0FQSS9jL1dLQmFzZS5oOgorICAgICAgICAqIFNoYXJlZC9D
aGlsZFByb2Nlc3MuY3BwOgorICAgICAgICAqIFNoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMu
aDoKKyAgICAgICAgKiBVSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oOgorICAgICAgICAqIFdl
YlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuaDoKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1dlYlByb2Nlc3MuY3BwOgorCiAyMDE4LTAyLTEzICBEb24gT2xtc3RlYWQgIDxkb24u
b2xtc3RlYWRAc29ueS5jb20+CiAKICAgICAgICAgW0NNYWtlXSBNYWtlIFdlYkNvcmUgaGVhZGVy
cyBjb3BpZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUv
TmV0d29ya0NhY2hlQmxvYlN0b3JhZ2UuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9jYWNoZS9OZXR3b3JrQ2FjaGVCbG9iU3RvcmFnZS5jcHAKaW5kZXggOTkzYWYwZTJkODkyYTU0
ZTBkYTJjMDdhMWJiYzk2NGJlYzQ5MmY0Mi4uZjczYzUwZGExOTQ3OTMzNjVkNmY1MWUwNjE0MWI1
MjM3MjdlNzFlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNo
ZS9OZXR3b3JrQ2FjaGVCbG9iU3RvcmFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVCbG9iU3RvcmFnZS5jcHAKQEAgLTMwLDExICszMCwx
NCBAQAogI2luY2x1ZGUgIk5ldHdvcmtDYWNoZUZpbGVTeXN0ZW0uaCIKICNpbmNsdWRlIDxXZWJD
b3JlL0ZpbGVTeXN0ZW0uaD4KICNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHd0Zi9SdW5M
b29wLmg+CisjaW5jbHVkZSA8d3RmL1NIQTEuaD4KKworI2lmICFPUyhXSU5ET1dTKQogI2luY2x1
ZGUgPHN5cy9tbWFuLmg+CiAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KICNpbmNsdWRlIDx1bmlzdGQu
aD4KLSNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgotI2luY2x1ZGUgPHd0Zi9TSEExLmg+CisjZW5k
aWYKIAogbmFtZXNwYWNlIFdlYktpdCB7CiBuYW1lc3BhY2UgTmV0d29ya0NhY2hlIHsKQEAgLTgz
LDYgKzg2LDcgQEAgU3RyaW5nIEJsb2JTdG9yYWdlOjpibG9iUGF0aEZvckhhc2goY29uc3QgU0hB
MTo6RGlnZXN0JiBoYXNoKSBjb25zdAogCiBCbG9iU3RvcmFnZTo6QmxvYiBCbG9iU3RvcmFnZTo6
YWRkKGNvbnN0IFN0cmluZyYgcGF0aCwgY29uc3QgRGF0YSYgZGF0YSkKIHsKKyNpZiAhT1MoV0lO
RE9XUykKICAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKIAogICAgIGF1dG8gaGFzaCA9
IGNvbXB1dGVTSEExKGRhdGEsIG1fc2FsdCk7CkBAIC0xMTQsNiArMTE4LDkgQEAgQmxvYlN0b3Jh
Z2U6OkJsb2IgQmxvYlN0b3JhZ2U6OmFkZChjb25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IERhdGEm
IGRhdGEpCiAgICAgbV9hcHByb3hpbWF0ZVNpemUgKz0gbWFwcGVkRGF0YS5zaXplKCk7CiAKICAg
ICByZXR1cm4geyBtYXBwZWREYXRhLCBoYXNoIH07CisjZWxzZQorICAgIHJldHVybiB7IERhdGEo
KSwgY29tcHV0ZVNIQTEoZGF0YSwgbV9zYWx0KSB9OworI2VuZGlmCiB9CiAKIEJsb2JTdG9yYWdl
OjpCbG9iIEJsb2JTdG9yYWdlOjpnZXQoY29uc3QgU3RyaW5nJiBwYXRoKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVEYXRhLmNwcCBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlRGF0YS5jcHAK
aW5kZXggY2Y2MzdhNzUwY2I0ZjE3MTA5YjcyMzUzNjI0MjM3OWM4ODlkMTY5Yy4uYTZlMzdiZTQ5
MTI4NTY0MDkxYWZiNTQyMDgzYjc1NWU3MTBhZjEwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVEYXRhLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZURhdGEuY3BwCkBAIC0yOCwx
NiArMjgsMjAgQEAKIAogI2luY2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3RlbS5oPgogI2luY2x1ZGUg
PGZjbnRsLmg+CisjaW5jbHVkZSA8d3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmg+
CisKKyNpZiAhT1MoV0lORE9XUykKICNpbmNsdWRlIDxzeXMvbW1hbi5oPgogI2luY2x1ZGUgPHN5
cy9zdGF0Lmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+Ci0jaW5jbHVkZSA8d3RmL0NyeXB0b2dyYXBo
aWNhbGx5UmFuZG9tTnVtYmVyLmg+CisjZW5kaWYKIAogbmFtZXNwYWNlIFdlYktpdCB7CiBuYW1l
c3BhY2UgTmV0d29ya0NhY2hlIHsKIAogRGF0YSBEYXRhOjptYXBUb0ZpbGUoY29uc3QgY2hhciog
cGF0aCkgY29uc3QKIHsKKyNpZiAhT1MoV0lORE9XUykKICAgICBpbnQgZmQgPSBvcGVuKHBhdGgs
IE9fQ1JFQVQgfCBPX0VYQ0wgfCBPX1JEV1IgLCBTX0lSVVNSIHwgU19JV1VTUik7CiAgICAgaWYg
KGZkIDwgMCkKICAgICAgICAgcmV0dXJuIHsgfTsKQEAgLTY3LDEwICs3MSwxNCBAQCBEYXRhIERh
dGE6Om1hcFRvRmlsZShjb25zdCBjaGFyKiBwYXRoKSBjb25zdAogICAgIG1zeW5jKG1hcCwgbV9z
aXplLCBNU19BU1lOQyk7CiAKICAgICByZXR1cm4gRGF0YTo6YWRvcHRNYXAobWFwLCBtX3NpemUs
IGZkKTsKKyNlbHNlCisgICAgcmV0dXJuIERhdGEoKTsKKyNlbmRpZgogfQogCiBEYXRhIG1hcEZp
bGUoY29uc3QgY2hhciogcGF0aCkKIHsKKyNpZiAhT1MoV0lORE9XUykKICAgICBpbnQgZmQgPSBv
cGVuKHBhdGgsIE9fUkRPTkxZLCAwKTsKICAgICBpZiAoZmQgPCAwKQogICAgICAgICByZXR1cm4g
eyB9OwpAQCAtODYsMTAgKzk0LDE0IEBAIERhdGEgbWFwRmlsZShjb25zdCBjaGFyKiBwYXRoKQog
ICAgIH0KIAogICAgIHJldHVybiBhZG9wdEFuZE1hcEZpbGUoZmQsIDAsIHNpemUpOworI2Vsc2UK
KyAgICByZXR1cm4gRGF0YSgpOworI2VuZGlmCiB9CiAKIERhdGEgYWRvcHRBbmRNYXBGaWxlKGlu
dCBmZCwgc2l6ZV90IG9mZnNldCwgc2l6ZV90IHNpemUpCiB7CisjaWYgIU9TKFdJTkRPV1MpCiAg
ICAgaWYgKCFzaXplKSB7CiAgICAgICAgIGNsb3NlKGZkKTsKICAgICAgICAgcmV0dXJuIERhdGE6
OmVtcHR5KCk7CkBAIC0xMDIsNiArMTE0LDkgQEAgRGF0YSBhZG9wdEFuZE1hcEZpbGUoaW50IGZk
LCBzaXplX3Qgb2Zmc2V0LCBzaXplX3Qgc2l6ZSkKICAgICB9CiAKICAgICByZXR1cm4gRGF0YTo6
YWRvcHRNYXAobWFwLCBzaXplLCBmZCk7CisjZWxzZQorICAgIHJldHVybiBEYXRhKCk7CisjZW5k
aWYKIH0KIAogU0hBMTo6RGlnZXN0IGNvbXB1dGVTSEExKGNvbnN0IERhdGEmIGRhdGEsIGNvbnN0
IFNhbHQmIHNhbHQpCkBAIC0xMzgsNiArMTUzLDcgQEAgc3RhdGljIFNhbHQgbWFrZVNhbHQoKQog
CiBzdGQ6Om9wdGlvbmFsPFNhbHQ+IHJlYWRPck1ha2VTYWx0KGNvbnN0IFN0cmluZyYgcGF0aCkK
IHsKKyNpZiAhT1MoV0lORE9XUykKICAgICBhdXRvIGNwYXRoID0gV2ViQ29yZTo6RmlsZVN5c3Rl
bTo6ZmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKHBhdGgpOwogICAgIGF1dG8gZmQgPSBvcGVuKGNw
YXRoLmRhdGEoKSwgT19SRE9OTFksIDApOwogICAgIFNhbHQgc2FsdDsKQEAgLTE1NCw2ICsxNzAs
OSBAQCBzdGQ6Om9wdGlvbmFsPFNhbHQ+IHJlYWRPck1ha2VTYWx0KGNvbnN0IFN0cmluZyYgcGF0
aCkKICAgICAgICAgICAgIHJldHVybiB7IH07CiAgICAgfQogICAgIHJldHVybiBzYWx0OworI2Vs
c2UKKyAgICByZXR1cm4gU2FsdCgpOworI2VuZGlmCiB9CiAKIH0gLy8gbmFtZXNwYWNlIE5ldHdv
cmtDYWNoZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9O
ZXR3b3JrQ2FjaGVGaWxlU3lzdGVtLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
Y2FjaGUvTmV0d29ya0NhY2hlRmlsZVN5c3RlbS5jcHAKaW5kZXggYjhmYjdjOTA3MWZlN2YxMzRk
ZDcyMDdmNDhkYmJkNmNiMGQ3OTUxMi4uZjY1ZDk5ZWQ2NzQ1N2MxNjAyMDM1ZGFmZjY2MTkzOTcx
YjdjYzEyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9O
ZXR3b3JrQ2FjaGVGaWxlU3lzdGVtLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL2NhY2hlL05ldHdvcmtDYWNoZUZpbGVTeXN0ZW0uY3BwCkBAIC0yOCwxMyArMjgsMTYgQEAK
IAogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0ZpbGVTeXN0ZW0uaD4K
LSNpbmNsdWRlIDxkaXJlbnQuaD4KLSNpbmNsdWRlIDxzeXMvc3RhdC5oPgotI2luY2x1ZGUgPHN5
cy90aW1lLmg+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvRnVu
Y3Rpb24uaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAKKyNpZiAhT1MoV0lORE9X
UykKKyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorI2luY2x1ZGUg
PHN5cy90aW1lLmg+CisjZW5kaWYKKwogI2lmIFBMQVRGT1JNKElPUykgJiYgIVBMQVRGT1JNKElP
U19TSU1VTEFUT1IpCiAjaW5jbHVkZSA8c3lzL2F0dHIuaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4K
QEAgLTUwLDYgKzUzLDcgQEAgbmFtZXNwYWNlIE5ldHdvcmtDYWNoZSB7CiAKIHN0YXRpYyBEaXJl
Y3RvcnlFbnRyeVR5cGUgZGlyZWN0b3J5RW50cnlUeXBlKHVpbnQ4X3QgZHR5cGUpCiB7CisjaWYg
IU9TKFdJTkRPV1MpCiAgICAgc3dpdGNoIChkdHlwZSkgewogICAgIGNhc2UgRFRfRElSOgogICAg
ICAgICByZXR1cm4gRGlyZWN0b3J5RW50cnlUeXBlOjpEaXJlY3Rvcnk7CkBAIC01OSwxMCArNjMs
MTQgQEAgc3RhdGljIERpcmVjdG9yeUVudHJ5VHlwZSBkaXJlY3RvcnlFbnRyeVR5cGUodWludDhf
dCBkdHlwZSkKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgICAgIHJldHVybiBE
aXJlY3RvcnlFbnRyeVR5cGU6OkZpbGU7CiAgICAgfQorI2Vsc2UKKyAgICByZXR1cm4gRGlyZWN0
b3J5RW50cnlUeXBlOjpGaWxlOworI2VuZGlmCiB9CiAKIHZvaWQgdHJhdmVyc2VEaXJlY3Rvcnko
Y29uc3QgU3RyaW5nJiBwYXRoLCBjb25zdCBGdW5jdGlvbjx2b2lkIChjb25zdCBTdHJpbmcmLCBE
aXJlY3RvcnlFbnRyeVR5cGUpPiYgZnVuY3Rpb24pCiB7CisjaWYgIU9TKFdJTkRPV1MpCiAgICAg
RElSKiBkaXIgPSBvcGVuZGlyKFdlYkNvcmU6OkZpbGVTeXN0ZW06OmZpbGVTeXN0ZW1SZXByZXNl
bnRhdGlvbihwYXRoKS5kYXRhKCkpOwogICAgIGlmICghZGlyKQogICAgICAgICByZXR1cm47CkBA
IC03OSw2ICs4Nyw5IEBAIHZvaWQgdHJhdmVyc2VEaXJlY3RvcnkoY29uc3QgU3RyaW5nJiBwYXRo
LCBjb25zdCBGdW5jdGlvbjx2b2lkIChjb25zdCBTdHJpbmcmLCBECiAgICAgICAgIGZ1bmN0aW9u
KG5hbWVTdHJpbmcsIGRpcmVjdG9yeUVudHJ5VHlwZShkcC0+ZF90eXBlKSk7CiAgICAgfQogICAg
IGNsb3NlZGlyKGRpcik7CisjZWxzZQorICAgIGZ1bmN0aW9uKFN0cmluZygpLCBEaXJlY3RvcnlF
bnRyeVR5cGU6OkZpbGUpOworI2VuZGlmCiB9CiAKIHZvaWQgZGVsZXRlRGlyZWN0b3J5UmVjdXJz
aXZlbHkoY29uc3QgU3RyaW5nJiBwYXRoKQpAQCAtMTE2LDYgKzEyNyw4IEBAIEZpbGVUaW1lcyBm
aWxlVGltZXMoY29uc3QgU3RyaW5nJiBwYXRoKQogICAgICAgICByZXR1cm4geyB9OwogICAgIHJl
dHVybiB7IFdhbGxUaW1lOjpmcm9tUmF3U2Vjb25kcyhnX2FzY2lpX3N0cnRvdWxsKGJpcnRodGlt
ZVN0cmluZywgbnVsbHB0ciwgMTApKSwKICAgICAgICAgV2FsbFRpbWU6OmZyb21SYXdTZWNvbmRz
KGdfZmlsZV9pbmZvX2dldF9hdHRyaWJ1dGVfdWludDY0KGZpbGVJbmZvLmdldCgpLCAidGltZTo6
bW9kaWZpZWQiKSkgfTsKKyNlbGlmIE9TKFdJTkRPV1MpCisgICAgcmV0dXJuIEZpbGVUaW1lcygp
OwogI2VuZGlmCiB9CiAKQEAgLTEyNyw4ICsxNDAsMTAgQEAgdm9pZCB1cGRhdGVGaWxlTW9kaWZp
Y2F0aW9uVGltZUlmTmVlZGVkKGNvbnN0IFN0cmluZyYgcGF0aCkKICAgICAgICAgaWYgKFdhbGxU
aW1lOjpub3coKSAtIHRpbWVzLm1vZGlmaWNhdGlvbiA8IDFfaCkKICAgICAgICAgICAgIHJldHVy
bjsKICAgICB9CisjaWYgIU9TKFdJTkRPV1MpCiAgICAgLy8gVGhpcyByZWFsbHkgdXBkYXRlcyBi
b3RoIHRoZSBhY2Nlc3MgdGltZSBhbmQgdGhlIG1vZGlmaWNhdGlvbiB0aW1lLgogICAgIHV0aW1l
cyhXZWJDb3JlOjpGaWxlU3lzdGVtOjpmaWxlU3lzdGVtUmVwcmVzZW50YXRpb24ocGF0aCkuZGF0
YSgpLCBudWxscHRyKTsKKyNlbmRpZgogfQogCiBib29sIGNhblVzZVNoYXJlZE1lbW9yeUZvclBh
dGgoY29uc3QgU3RyaW5nJiBwYXRoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5jcHAKaW5kZXggNzA1ZTgzNTZj
NzlkNWQwOWE4OTJjNDg0YWFlOGJmODY5NTQ0M2I0Yi4uYWFiY2VkMDYxMWU4OTc5NzM2MzM3ODQ5
ZjBkNjc1NWU0NDk2YTU0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwCkBAIC05MDgsNyArOTA4LDcg
QEAgdm9pZCBTdG9yYWdlOjp0cmF2ZXJzZShjb25zdCBTdHJpbmcmIHR5cGUsIFRyYXZlcnNlRmxh
Z3MgZmxhZ3MsIFRyYXZlcnNlSGFuZGxlciYKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgICAg
ICBjb25zdCB1bnNpZ25lZCBtYXhpbXVtUGFyYWxsZWxSZWFkQ291bnQgPSA1OwotICAgICAgICAg
ICAgdHJhdmVyc2VPcGVyYXRpb24uYWN0aXZlQ29uZGl0aW9uLndhaXQobG9jaywgWyZ0cmF2ZXJz
ZU9wZXJhdGlvbl0geworICAgICAgICAgICAgdHJhdmVyc2VPcGVyYXRpb24uYWN0aXZlQ29uZGl0
aW9uLndhaXQobG9jaywgWyZ0cmF2ZXJzZU9wZXJhdGlvbiwgbWF4aW11bVBhcmFsbGVsUmVhZENv
dW50XSB7CiAgICAgICAgICAgICAgICAgcmV0dXJuIHRyYXZlcnNlT3BlcmF0aW9uLmFjdGl2ZUNv
dW50IDw9IG1heGltdW1QYXJhbGxlbFJlYWRDb3VudDsKICAgICAgICAgICAgIH0pOwogICAgICAg
ICB9KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2luL1N5c3Rl
bVByb3h5V2luLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dpbi9TeXN0ZW1Qcm94
eVdpbi5oCmluZGV4IGRhZDkzYjlkYTQzZDczZWViNDkwOWI5ZWEzMWRiMWMzZjZlMTljYWYuLjk1
NjA5Mjg4YmU2Yzk0M2JiYmU3OTY2MmViNmYzMjRkNjVjNGQ1OWEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2luL1N5c3RlbVByb3h5V2luLmgKKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93aW4vU3lzdGVtUHJveHlXaW4uaApAQCAtMjMsNiArMjMs
MTAgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjcHJhZ21h
IG9uY2UKKworI2luY2x1ZGUgPHdpbmRvd3MuaD4KKwogY2xhc3MgV2luZG93c1N5c3RlbVByb3h5
IHsKICAgICBzdGF0aWMgY29uc3QgaW50IFByb3h5U2VydmVyTmFtZUxlbmd0aCA9IDUxMjsKIHB1
YmxpYzoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL0F0dGFjaG1lbnQu
aCBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL0F0dGFjaG1lbnQuaAppbmRleCAzOTI5ZGIy
NzMwODA0MWMwZjYyZjVjOWE0MzI0Y2Q0MGFiYmJkZDYyLi4zZmU5ODg3ZWY0ZTk4YjIwZGI0MDI0
ZGE1MzU3ZWQwMzQ3MWI5YmFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQ
Qy9BdHRhY2htZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvQXR0YWNobWVu
dC5oCkBAIC0zMSw2ICszMSwxMCBAQAogI2luY2x1ZGUgPG1hY2gvbWFjaF90cmFwcy5oPgogI2Vu
ZGlmCiAKKyNpZiBPUyhXSU5ET1dTKQorI2luY2x1ZGUgPHdpbmRvd3MuaD4KKyNlbmRpZgorCiBu
YW1lc3BhY2UgSVBDIHsKIAogY2xhc3MgRGVjb2RlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvUGxhdGZvcm0vTW9kdWxlLmggYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL01vZHVsZS5oCmlu
ZGV4IDkwMzI4YmZlNjliODE5NzlkOTE0MGZjMjk0NGM1OGVkNWZiOWRjNjMuLjc2OGFhMTJkM2Ix
ODc3N2RjNjQ1MTFiZDE3ZTdlZTRjMGUyZTc2ODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
UGxhdGZvcm0vTW9kdWxlLmgKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9Nb2R1bGUuaApA
QCAtMzcsNiArMzcsMTAgQEAKIHR5cGVkZWYgc3RydWN0IF9HTW9kdWxlIEdNb2R1bGU7CiAjZW5k
aWYKIAorI2lmIE9TKFdJTkRPV1MpCisjaW5jbHVkZSA8d2luZG93cy5oPgorI2VuZGlmCisKIG5h
bWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBNb2R1bGUgewpAQCAtNjQsNyArNjgsNyBAQCBwcml2
YXRlOgogICAgIHZvaWQqIHBsYXRmb3JtRnVuY3Rpb25Qb2ludGVyKGNvbnN0IGNoYXIqIGZ1bmN0
aW9uTmFtZSkgY29uc3Q7CiAKICAgICBTdHJpbmcgbV9wYXRoOwotI2lmIFBMQVRGT1JNKFdJTikK
KyNpZiBPUyhXSU5ET1dTKQogICAgIEhNT0RVTEUgbV9tb2R1bGU7CiAjZW5kaWYKICNpZiBVU0Uo
Q0YpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL1NoYXJlZE1lbW9yeS5oIGIv
U291cmNlL1dlYktpdC9QbGF0Zm9ybS9TaGFyZWRNZW1vcnkuaAppbmRleCBjNzJlMGQ0YjBhYjg3
MjA2YmNmNTI3NTUzNzk5ZGMzYmVmY2JhMWMwLi40MjhmYmY5MjdiOTU4ZDM2Y2RlOTJmZThhNDEx
M2MwN2Q1OTIzYjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL1NoYXJlZE1l
bW9yeS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vU2hhcmVkTWVtb3J5LmgKQEAgLTM1
LDYgKzM1LDEwIEBACiAjaW5jbHVkZSA8d3RmL09wdGlvbmFsLmg+CiAjZW5kaWYKIAorI2lmIE9T
KFdJTkRPV1MpCisjaW5jbHVkZSA8d2luZG93cy5oPgorI2VuZGlmCisKIG5hbWVzcGFjZSBJUEMg
ewogY2xhc3MgRGVjb2RlcjsKIGNsYXNzIEVuY29kZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1BsdWdpblByb2Nlc3MvV2ViUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktp
dC9QbHVnaW5Qcm9jZXNzL1dlYlByb2Nlc3NDb25uZWN0aW9uLmNwcAppbmRleCBlNzM2NjNlOTNh
MmIwYjYyYjg1NDFlYzk0MTk5YmM4NDVhZGRlMDg3Li4xMmEzNDFkZTRkZjlmNDYyNjRlZTNkZmRj
ZTRjOWYwZjQ3ZTgzM2E0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsdWdpblByb2Nlc3Mv
V2ViUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvUGx1Z2luUHJvY2Vz
cy9XZWJQcm9jZXNzQ29ubmVjdGlvbi5jcHAKQEAgLTM4LDkgKzM4LDEyIEBACiAjaW5jbHVkZSAi
UGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25NZXNzYWdlcy5oIgogI2luY2x1ZGUgIlBsdWdpblByb3h5
TWVzc2FnZXMuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzQ29ubmVjdGlvbk1lc3NhZ2VzLmgiCi0j
aW5jbHVkZSA8dW5pc3RkLmg+CiAjaW5jbHVkZSA8d3RmL1NldEZvclNjb3BlLmg+CiAKKyNpZiAh
T1MoV0lORE9XUykKKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNlbmRpZgorCiB1c2luZyBuYW1lc3Bh
Y2UgV2ViQ29yZTsKIAogbmFtZXNwYWNlIFdlYktpdCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC9BUEkvYy9XS0Jhc2UuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dL
QmFzZS5oCmluZGV4IDFjNzdiZDY2MmFiYzI5ODg2NDcyMjU1MWE0NjUyZDk1NjkyYjU1NjEuLmM5
OTVjYmM1ODE4ODM2MzE2ZGZjZDkyNDhkZDA3OTQyNTA2NWY4ZWQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLQmFzZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L0FQSS9jL1dLQmFzZS5oCkBAIC0zMiwxNCArMzIsMTIgQEAKIAogI2lmIGRlZmluZWQoQlVJTERJ
TkdfR1RLX18pCiAjaW5jbHVkZSA8V2ViS2l0L1dLQmFzZUd0ay5oPgotI2VuZGlmCi0KLSNpZiBk
ZWZpbmVkKF9fQVBQTEVfXykgJiYgIWRlZmluZWQoQlVJTERJTkdfR1RLX18pCi0jaW5jbHVkZSA8
V2ViS2l0L1dLQmFzZU1hYy5oPgotI2VuZGlmCi0KLSNpZiBkZWZpbmVkKEJVSUxESU5HX1dQRV9f
KQorI2VsaWYgZGVmaW5lZChCVUlMRElOR19XUEVfXykKICNpbmNsdWRlIDxXZWJLaXQvV0tCYXNl
V1BFLmg+CisjZWxpZiBkZWZpbmVkKF9fQVBQTEVfXykKKyNpbmNsdWRlIDxXZWJLaXQvV0tCYXNl
TWFjLmg+CisjZWxpZiBkZWZpbmVkKF9XSU4zMikKKyNpbmNsdWRlIDxXZWJLaXQvV0tCYXNlV2lu
Lmg+CiAjZW5kaWYKIAogLyogV2ViS2l0MiBzaGFyZWQgdHlwZXMgKi8KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL0NoaWxkUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9DaGlsZFByb2Nlc3MuY3BwCmluZGV4IDY5OTRkM2RmOTUwZjE3M2FkNzg4OTI5MGNmZTcwZDZk
OGNiNjYwNGQuLmI1NWQ4NmZkNjVkYTcyNzkwZDU2MzgwYTcxMWQ0YzY5Zjg0MTFmMDMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NoaWxkUHJvY2Vzcy5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9TaGFyZWQvQ2hpbGRQcm9jZXNzLmNwcApAQCAtMzAsNyArMzAsMTAgQEAKICNpbmNs
dWRlICJTYW5kYm94SW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzLmgiCiAjaW5jbHVkZSA8V2ViQ29y
ZS9TY2hlbWVSZWdpc3RyeS5oPgogI2luY2x1ZGUgPHBhbC9TZXNzaW9uSUQuaD4KKworI2lmICFP
UyhXSU5ET1dTKQogI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2VuZGlmCiAKIHVzaW5nIG5hbWVzcGFj
ZSBXZWJDb3JlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJn
dW1lbnRDb2RlcnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVy
cy5oCmluZGV4IDZiMWM0M2E1OGY4NTQ4ZTAyZDA5N2ZkOWQxZjcwMmNmOTY2NmUyZDguLjY5MTRj
N2Q5N2NmMTI2M2RiNjI2Yzc3YTQ4MGEwNjQ3M2U4YmQyMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5oCkBAIC0zNSwxMyArMzUsMTYgQEAKICNpbmNs
dWRlIDxXZWJDb3JlL01lZGlhU2VsZWN0aW9uT3B0aW9uLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9O
ZXR3b3JrTG9hZE1ldHJpY3MuaD4KICNpbmNsdWRlIDxXZWJDb3JlL05vdGlmaWNhdGlvbkRpcmVj
dGlvbi5oPgotI2luY2x1ZGUgPFdlYkNvcmUvUGF5bWVudEhlYWRlcnMuaD4KICNpbmNsdWRlIDxX
ZWJDb3JlL1JlYWx0aW1lTWVkaWFTb3VyY2UuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1Njcm9sbFNu
YXBPZmZzZXRzSW5mby5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2VydmljZVdvcmtlclR5cGVzLmg+
CiAjaW5jbHVkZSA8V2ViQ29yZS9TdG9yZWRDcmVkZW50aWFsc1BvbGljeS5oPgogI2luY2x1ZGUg
PFdlYkNvcmUvV29ya2VyVHlwZS5oPgogCisjaWYgRU5BQkxFKEFQUExFX1BBWSkKKyNpbmNsdWRl
IDxXZWJDb3JlL1BheW1lbnRIZWFkZXJzLmg+CisjZW5kaWYKKwogbmFtZXNwYWNlIFdURiB7CiBj
bGFzcyBNb25vdG9uaWNUaW1lOwogY2xhc3MgU2Vjb25kczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAppbmRleCA0ZDRkYzY2ZjI1NWVhNmZjYzQwY2UzYTNjYmIz
NWU0ZDgxMjJmOGNiLi5kYzlhZmQ4MDk0MzljNzVhMDM5ZWNlYmU4NjU4YzhlYTM0ZGNjM2YyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmgKKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oCkBAIC0yNiwxMCAr
MjYsMTMgQEAKICNpZm5kZWYgUHJvY2Vzc0Fzc2VydGlvbl9oCiAjZGVmaW5lIFByb2Nlc3NBc3Nl
cnRpb25faAogCi0jaW5jbHVkZSA8dW5pc3RkLmg+CiAjaW5jbHVkZSA8d3RmL0Z1bmN0aW9uLmg+
CiAjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogCisjaWYgIU9TKFdJTkRPV1MpCisjaW5jbHVk
ZSA8dW5pc3RkLmg+CisjZW5kaWYKKwogI2lmIFBMQVRGT1JNKElPUykgJiYgIVBMQVRGT1JNKElP
U19TSU1VTEFUT1IpCiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2luY2x1ZGUgPHd0Zi9X
ZWFrUHRyLmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvSW5qZWN0ZWRCdW5kbGUuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3Rl
ZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oCmluZGV4IGZjMTUzNGY2NTZmZWJiMGFmYjQ2ZGYzMzEw
OWY3NGZlZTNkODU4MjAuLmVkZGFmNmI5ZjEzODAyN2YwMjMwYWU4NjJiZTA3ZGJmZmYxMTMzYjAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9Jbmpl
Y3RlZEJ1bmRsZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRs
ZS9JbmplY3RlZEJ1bmRsZS5oCkBAIC02Miw2ICs2Miw4IEBAIG5hbWVzcGFjZSBXZWJLaXQgewog
dHlwZWRlZiBOU0J1bmRsZSAqUGxhdGZvcm1CdW5kbGU7CiAjZWxpZiBVU0UoR0xJQikKIHR5cGVk
ZWYgOjpHTW9kdWxlKiBQbGF0Zm9ybUJ1bmRsZTsKKyNlbGlmIE9TKFdJTkRPV1MpCit0eXBlZGVm
IHZvaWQqIFBsYXRmb3JtQnVuZGxlOwogI2VuZGlmCiAKIGNsYXNzIEluamVjdGVkQnVuZGxlU2Ny
aXB0V29ybGQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vz
cy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKaW5kZXggMjU3
ODViNDJlYTM1YjBmODc3MWVjZjdiMGJkNDAyOWE3MjUzMmUwZC4uMWMxZWQxY2Q3OTVlZTBhOTk0
ZjljMWQ5ZjA1NjdiY2ExMTBhNGVmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9j
ZXNzLmNwcApAQCAtMTE3LDEyICsxMTcsMTUgQEAKICNpbmNsdWRlIDxXZWJDb3JlL1NldHRpbmdz
Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9VUkxQYXJzZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1Vz
ZXJHZXN0dXJlSW5kaWNhdG9yLmg+Ci0jaW5jbHVkZSA8dW5pc3RkLmg+CiAjaW5jbHVkZSA8d3Rm
L0N1cnJlbnRUaW1lLmg+CiAjaW5jbHVkZSA8d3RmL0xhbmd1YWdlLmg+CiAjaW5jbHVkZSA8d3Rm
L1J1bkxvb3AuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CiAKKyNpZiAhT1Mo
V0lORE9XUykKKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNlbmRpZgorCiAjaWYgUExBVEZPUk0oV0FZ
TEFORCkKICNpbmNsdWRlICJXYXlsYW5kQ29tcG9zaXRvckRpc3BsYXkuaCIKICNlbmRpZgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>