<?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>180886</bug_id>
          
          <creation_ts>2017-12-15 14:55:23 -0800</creation_ts>
          <short_desc>Implement getting ServiceWorker registrations for the WKWebsiteDataStore API</short_desc>
          <delta_ts>2017-12-16 17:17:14 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1382319</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-12-15 14:55:23 -0800</bug_when>
    <thetext>Implement getting ServiceWorker registrations for the WKWebsiteDataStore API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382336</commentid>
    <comment_count>1</comment_count>
      <attachid>329525</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-12-15 15:28:35 -0800</bug_when>
    <thetext>Created attachment 329525
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382351</commentid>
    <comment_count>2</comment_count>
      <attachid>329531</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-12-15 15:53:06 -0800</bug_when>
    <thetext>Created attachment 329531
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382353</commentid>
    <comment_count>3</comment_count>
      <attachid>329525</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2017-12-15 15:57:41 -0800</bug_when>
    <thetext>Comment on attachment 329525
Patch

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

r=me with comments. Also please fix GTK/WPE build.

&gt; Source/WebCore/workers/service/server/SWServer.cpp:796
&gt; +    while (!m_getOriginsWithRegistrationsCallbacks.isEmpty())

Why bother we the container mutations? How about we make m_getOriginsWithRegistrationsCallbacks a Vector and use:
auto getOriginsWithRegistrationsCallbacks = WTFMove(m_getOriginsWithRegistrationsCallbacks);
for (auto&amp; callback : getOriginsWithRegistrationsCallbacks)
    callback(originsWithRegistrations);

Seems like this would be more efficient.

&gt; Source/WebCore/workers/service/server/SWServer.h:238
&gt; +    Deque&lt;WTF::Function&lt;void(const HashSet&lt;SecurityOriginData&gt;&amp;)&gt;&gt; m_getOriginsWithRegistrationsCallbacks;

Seems like this could be a Vector.

&gt; Source/WebKit/StorageProcess/StorageProcess.cpp:273
&gt; +        for (auto&amp; origin : *originsWithServiceWorkers)

Why isn&apos;t this in the swServerForSession(sessionID).getOriginsWithRegistrations() lambda? Similarly to what is done for IndexedDB? Then we do not need originsWithServiceWorkers / rawOrigins either.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382354</commentid>
    <comment_count>4</comment_count>
      <attachid>329532</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-12-15 15:58:39 -0800</bug_when>
    <thetext>Created attachment 329532
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382361</commentid>
    <comment_count>5</comment_count>
      <attachid>329535</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-12-15 16:15:32 -0800</bug_when>
    <thetext>Created attachment 329535
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382515</commentid>
    <comment_count>6</comment_count>
      <attachid>329535</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-12-16 10:54:09 -0800</bug_when>
    <thetext>Comment on attachment 329535
Patch

Clearing flags on attachment: 329535

Committed r226003: &lt;https://trac.webkit.org/changeset/226003&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382516</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-12-16 10:54:10 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382517</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-12-16 10:56:41 -0800</bug_when>
    <thetext>&lt;rdar://problem/36091505&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382552</commentid>
    <comment_count>9</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-12-16 17:17:14 -0800</bug_when>
    <thetext>The code landed in this patch begins to be tested over in https://bugs.webkit.org/show_bug.cgi?id=180911 \o/</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329525</attachid>
            <date>2017-12-15 15:28:35 -0800</date>
            <delta_ts>2017-12-15 15:58:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180886-20171215152834.patch</filename>
            <type>text/plain</type>
            <size>9241</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI1OTgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTQ1NWE3ZTg5MTU2ZWEy
NzgyZTQ5NTUxYTZlOWFhODc2MmM2NWQ1OC4uOTNjNzk2ZGY4YmY4ZDM1NzI0MjA5Nzg0YjQ1Nzli
MGVhOTU3N2FiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE3LTEyLTE1ICBCcmFk
eSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgZ2V0dGlu
ZyBTZXJ2aWNlV29ya2VyIHJlZ2lzdHJhdGlvbnMgZm9yIHRoZSBXS1dlYnNpdGVEYXRhU3RvcmUg
QVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA4
ODYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBu
ZXcgdGVzdHMgKEFQSSB0ZXN0IGNvbWluZyBzb29uKS4KKworICAgICAgICAqIHdvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6OnJl
Z2lzdHJhdGlvblN0b3JlSW1wb3J0Q29tcGxldGUpOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2
ZXI6OlNXU2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjpnZXRPcmlnaW5zV2l0
aFJlZ2lzdHJhdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6OnBlcmZvcm1HZXRP
cmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3MpOgorICAgICAgICAqIHdvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaDoKKwogMjAxNy0xMi0xNSAgQ2hyaXMgRHVtZXogIDxjZHVt
ZXpAYXBwbGUuY29tPgogCiAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS5odHRwcy5odG1sIGlzIHNvbWV0
aW1lcyBjcmFzaGluZyBpbiBEZWJ1ZyBidWlsZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZmM4YTAwNWMyZGZhMWM4
YzA1YzMwMDg1YjFhYmFiMGIzOWE3NmUzOS4uMjFiNjhjODQxMGUyMGFhN2NiMWZlYmE3Y2ZlMDgy
Y2E0YmE3MGEzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxNy0xMi0xNSAgQnJhZHkg
RWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IGdldHRpbmcg
U2VydmljZVdvcmtlciByZWdpc3RyYXRpb25zIGZvciB0aGUgV0tXZWJzaXRlRGF0YVN0b3JlIEFQ
SQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgwODg2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTdG9y
YWdlUHJvY2Vzcy9TdG9yYWdlUHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6OlN0b3JhZ2VQ
cm9jZXNzOjpmZXRjaFdlYnNpdGVEYXRhKToKKwogMjAxNy0xMi0xNSAgQnJhZHkgRWlkc29uICA8
YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSBzdXJlIG9ubHkgV2Vic2l0ZURhdGFT
dG9yZXMgd2l0aCB2YWxpZCBTZXNzaW9uSURzIHJlZ2lzdGVyIHRoZW1zZWx2ZXMuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCmluZGV4
IDdmMTY4Njg0MTlkMmEzMmY5ZjA4NmNkZDk5NGVjYjIzZWFlMmM3ZGMuLmEwNTM2MTA0MDRkZTJi
MjZiNzJlMDNiZTkyMTBhNWQzNDIxMDNiNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCkBAIC0xMDgsNyArMTA4LDEwIEBAIFNX
U2VydmVyUmVnaXN0cmF0aW9uKiBTV1NlcnZlcjo6Z2V0UmVnaXN0cmF0aW9uKGNvbnN0IFNlcnZp
Y2VXb3JrZXJSZWdpc3RyYXRpb25LCiAKIHZvaWQgU1dTZXJ2ZXI6OnJlZ2lzdHJhdGlvblN0b3Jl
SW1wb3J0Q29tcGxldGUoKQogeworICAgIEFTU0VSVCghbV9pbXBvcnRDb21wbGV0ZWQpOworICAg
IG1faW1wb3J0Q29tcGxldGVkID0gdHJ1ZTsKICAgICBtX29yaWdpblN0b3JlLT5pbXBvcnRDb21w
bGV0ZSgpOworICAgIHBlcmZvcm1HZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3Mo
KTsKIH0KIAogdm9pZCBTV1NlcnZlcjo6YWRkUmVnaXN0cmF0aW9uRnJvbVN0b3JlKFNlcnZpY2VX
b3JrZXJDb250ZXh0RGF0YSYmIGRhdGEpCkBAIC0yMjgsNyArMjMxLDcgQEAgdm9pZCBTV1NlcnZl
cjo6Q29ubmVjdGlvbjo6c3luY1Rlcm1pbmF0ZVdvcmtlcihTZXJ2aWNlV29ya2VySWRlbnRpZmll
ciBpZGVudGlmaWUKICAgICAgICAgbV9zZXJ2ZXIuc3luY1Rlcm1pbmF0ZVdvcmtlcigqd29ya2Vy
KTsKIH0KIAotICAgIFNXU2VydmVyOjpTV1NlcnZlcihVbmlxdWVSZWY8U1dPcmlnaW5TdG9yZT4m
JiBvcmlnaW5TdG9yZSwgU3RyaW5nJiYgcmVnaXN0cmF0aW9uRGF0YWJhc2VEaXJlY3RvcnksIFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKK1NXU2VydmVyOjpTV1NlcnZlcihVbmlxdWVSZWY8U1dP
cmlnaW5TdG9yZT4mJiBvcmlnaW5TdG9yZSwgU3RyaW5nJiYgcmVnaXN0cmF0aW9uRGF0YWJhc2VE
aXJlY3RvcnksIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKICAgICA6IG1fb3JpZ2luU3RvcmUo
V1RGTW92ZShvcmlnaW5TdG9yZSkpCiAgICAgLCBtX3JlZ2lzdHJhdGlvblN0b3JlKCp0aGlzLCBX
VEZNb3ZlKHJlZ2lzdHJhdGlvbkRhdGFiYXNlRGlyZWN0b3J5KSkKICAgICAsIG1fc2Vzc2lvbklE
KHNlc3Npb25JRCkKQEAgLTc2OCw2ICs3NzEsMzIgQEAgdm9pZCBTV1NlcnZlcjo6Q29ubmVjdGlv
bjo6cmVzb2x2ZVJlZ2lzdHJhdGlvblJlYWR5UmVxdWVzdHMoU1dTZXJ2ZXJSZWdpc3RyYXRpb24K
ICAgICB9KTsKIH0KIAordm9pZCBTV1NlcnZlcjo6Z2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25z
KFdURjo6RnVuY3Rpb248dm9pZChjb25zdCBIYXNoU2V0PFNlY3VyaXR5T3JpZ2luRGF0YT4mKT4g
Y2FsbGJhY2spCit7CisgICAgbV9nZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3Mu
YXBwZW5kKFdURk1vdmUoY2FsbGJhY2spKTsKKworICAgIGlmIChtX2ltcG9ydENvbXBsZXRlZCkK
KyAgICAgICAgcGVyZm9ybUdldE9yaWdpbnNXaXRoUmVnaXN0cmF0aW9uc0NhbGxiYWNrcygpOwor
fQorCit2b2lkIFNXU2VydmVyOjpwZXJmb3JtR2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zQ2Fs
bGJhY2tzKCkKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIEFTU0VSVChtX2lt
cG9ydENvbXBsZXRlZCk7CisKKyAgICBpZiAobV9nZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnND
YWxsYmFja3MuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBIYXNoU2V0PFNlY3Vy
aXR5T3JpZ2luRGF0YT4gb3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zOworICAgIGZvciAoYXV0byYg
a2V5IDogbV9yZWdpc3RyYXRpb25zLmtleXMoKSkgeworICAgICAgICBvcmlnaW5zV2l0aFJlZ2lz
dHJhdGlvbnMuYWRkKGtleS50b3BPcmlnaW4oKSk7CisgICAgICAgIG9yaWdpbnNXaXRoUmVnaXN0
cmF0aW9ucy5hZGQoU2VjdXJpdHlPcmlnaW5EYXRhIHsga2V5LnNjb3BlKCkucHJvdG9jb2woKS50
b1N0cmluZygpLCBrZXkuc2NvcGUoKS5ob3N0KCksIGtleS5zY29wZSgpLnBvcnQoKSB9KTsKKyAg
ICB9CisKKyAgICB3aGlsZSAoIW1fZ2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zQ2FsbGJhY2tz
LmlzRW1wdHkoKSkKKyAgICAgICAgbV9nZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFj
a3MudGFrZUZpcnN0KCkob3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zKTsKK30KKwogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oIGIv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oCmluZGV4IGM0
NmFhZTQ5NGQ5YzNkMzUxZGI5YWJiNmE1MTE5ZmNhOTU2OTg2OGUuLjJmODZkMjZkNWIyYzg5YzVl
MzNiNzZjYmMwODM2OTYyNGQwNTc3OGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmgKQEAgLTE3Myw2ICsxNzMsOCBAQCBwdWJsaWM6CiAg
ICAgdm9pZCBhZGRSZWdpc3RyYXRpb25Gcm9tU3RvcmUoU2VydmljZVdvcmtlckNvbnRleHREYXRh
JiYpOwogICAgIHZvaWQgcmVnaXN0cmF0aW9uU3RvcmVJbXBvcnRDb21wbGV0ZSgpOwogCisgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCBnZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnMoV1RGOjpGdW5j
dGlvbjx2b2lkKGNvbnN0IEhhc2hTZXQ8U2VjdXJpdHlPcmlnaW5EYXRhPiYpPik7CisKIHByaXZh
dGU6CiAgICAgdm9pZCByZWdpc3RlckNvbm5lY3Rpb24oQ29ubmVjdGlvbiYpOwogICAgIHZvaWQg
dW5yZWdpc3RlckNvbm5lY3Rpb24oQ29ubmVjdGlvbiYpOwpAQCAtMTk2LDYgKzE5OCw4IEBAIHBy
aXZhdGU6CiAgICAgU1dTZXJ2ZXJSZWdpc3RyYXRpb24qIHJlZ2lzdHJhdGlvbkZyb21TZXJ2aWNl
V29ya2VySWRlbnRpZmllcihTZXJ2aWNlV29ya2VySWRlbnRpZmllcik7CiAgICAgdm9pZCBmb3JF
YWNoQ2xpZW50Rm9yT3JpZ2luKGNvbnN0IENsaWVudE9yaWdpbiYsIGNvbnN0IFdURjo6RnVuY3Rp
b248dm9pZChTZXJ2aWNlV29ya2VyQ2xpZW50RGF0YSYpPiYpOwogCisgICAgdm9pZCBwZXJmb3Jt
R2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zQ2FsbGJhY2tzKCk7CisKICAgICBlbnVtIFRlcm1p
bmF0aW9uTW9kZSB7CiAgICAgICAgIFN5bmNocm9ub3VzLAogICAgICAgICBBc3luY2hyb25vdXMs
CkBAIC0yMzAsNiArMjM0LDggQEAgcHJpdmF0ZToKICAgICBEZXF1ZTxTZXJ2aWNlV29ya2VyQ29u
dGV4dERhdGE+IG1fcGVuZGluZ0NvbnRleHREYXRhczsKICAgICBIYXNoTWFwPFNlcnZpY2VXb3Jr
ZXJJZGVudGlmaWVyLCBWZWN0b3I8UnVuU2VydmljZVdvcmtlckNhbGxiYWNrPj4gbV9zZXJ2aWNl
V29ya2VyUnVuUmVxdWVzdHM7CiAgICAgUEFMOjpTZXNzaW9uSUQgbV9zZXNzaW9uSUQ7CisgICAg
Ym9vbCBtX2ltcG9ydENvbXBsZXRlZCB7IGZhbHNlIH07CisgICAgRGVxdWU8V1RGOjpGdW5jdGlv
bjx2b2lkKGNvbnN0IEhhc2hTZXQ8U2VjdXJpdHlPcmlnaW5EYXRhPiYpPj4gbV9nZXRPcmlnaW5z
V2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3M7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1N0b3JhZ2VQcm9jZXNzL1N0b3JhZ2VQcm9jZXNz
LmNwcCBiL1NvdXJjZS9XZWJLaXQvU3RvcmFnZVByb2Nlc3MvU3RvcmFnZVByb2Nlc3MuY3BwCmlu
ZGV4IDllMjU5MGM2ZTFiMTY3MzVjZDk1OTg1N2RmMWIzZmIzNTA4NDNmNDIuLjAzYzUwM2FhMjc2
MmE4M2I2ZmJlMGY0MGM2NmIyM2Q0YTAyMTA3ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
U3RvcmFnZVByb2Nlc3MvU3RvcmFnZVByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU3Rv
cmFnZVByb2Nlc3MvU3RvcmFnZVByb2Nlc3MuY3BwCkBAIC0yNjUsMzMgKzI2NSwzOSBAQCB2b2lk
IFN0b3JhZ2VQcm9jZXNzOjpjcmVhdGVTdG9yYWdlVG9XZWJQcm9jZXNzQ29ubmVjdGlvbihib29s
IGlzU2VydmljZVdvcmtlclBybwogCiB2b2lkIFN0b3JhZ2VQcm9jZXNzOjpmZXRjaFdlYnNpdGVE
YXRhKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4g
d2Vic2l0ZURhdGFUeXBlcywgdWludDY0X3QgY2FsbGJhY2tJRCkKIHsKLSAgICBhdXRvIGNvbXBs
ZXRpb25IYW5kbGVyID0gW3RoaXMsIGNhbGxiYWNrSURdKGNvbnN0IFdlYnNpdGVEYXRhJiB3ZWJz
aXRlRGF0YSkgewotICAgICAgICBwYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3Nh
Z2VzOjpTdG9yYWdlUHJvY2Vzc1Byb3h5OjpEaWRGZXRjaFdlYnNpdGVEYXRhKGNhbGxiYWNrSUQs
IHdlYnNpdGVEYXRhKSwgMCk7Ci0gICAgfTsKKyAgICBhdXRvIG9yaWdpbnNXaXRoU2VydmljZVdv
cmtlcnMgPSBzdGQ6Om1ha2VfdW5pcXVlPEhhc2hTZXQ8U2VjdXJpdHlPcmlnaW5EYXRhPj4oKTsK
KyAgICBIYXNoU2V0PFNlY3VyaXR5T3JpZ2luRGF0YT4qIHJhd09yaWdpbnMgPSBvcmlnaW5zV2l0
aFNlcnZpY2VXb3JrZXJzLmdldCgpOworICAgIGF1dG8gd2Vic2l0ZURhdGEgPSBzdGQ6Om1ha2Vf
dW5pcXVlPFdlYnNpdGVEYXRhPigpOworICAgIFdlYnNpdGVEYXRhKiByYXdXZWJzaXRlRGF0YSA9
IHdlYnNpdGVEYXRhLmdldCgpOworICAgIGF1dG8gY2FsbGJhY2tBZ2dyZWdhdG9yID0gQ2FsbGJh
Y2tBZ2dyZWdhdG9yOjpjcmVhdGUoW3RoaXMsIG9yaWdpbnNXaXRoU2VydmljZVdvcmtlcnMgPSBX
VEZNb3ZlKG9yaWdpbnNXaXRoU2VydmljZVdvcmtlcnMpLCB3ZWJzaXRlRGF0YSA9IFdURk1vdmUo
d2Vic2l0ZURhdGEpLCBjYWxsYmFja0lEXSgpIHsKKyAgICAgICAgZm9yIChhdXRvJiBvcmlnaW4g
OiAqb3JpZ2luc1dpdGhTZXJ2aWNlV29ya2VycykKKyAgICAgICAgICAgIHdlYnNpdGVEYXRhLT5l
bnRyaWVzLmFwcGVuZCh7IG9yaWdpbiwgV2Vic2l0ZURhdGFUeXBlOjpTZXJ2aWNlV29ya2VyUmVn
aXN0cmF0aW9ucywgMCB9KTsKKworICAgICAgICBwYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kKE1lc3NhZ2VzOjpTdG9yYWdlUHJvY2Vzc1Byb3h5OjpEaWRGZXRjaFdlYnNpdGVEYXRhKGNh
bGxiYWNrSUQsICp3ZWJzaXRlRGF0YSksIDApOworICAgIH0pOwogCiAjaWYgRU5BQkxFKFNFUlZJ
Q0VfV09SS0VSKQotICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRh
VHlwZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbnMpKQotICAgICAgICBub3RJbXBsZW1lbnRl
ZCgpOworICAgIFN0cmluZyBwYXRoID0gbV9zd0RhdGFiYXNlUGF0aHMuZ2V0KHNlc3Npb25JRCk7
CisgICAgaWYgKCFwYXRoLmlzRW1wdHkoKSAmJiB3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdl
YnNpdGVEYXRhVHlwZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbnMpKSB7CisgICAgICAgIHN3
U2VydmVyRm9yU2Vzc2lvbihzZXNzaW9uSUQpLmdldE9yaWdpbnNXaXRoUmVnaXN0cmF0aW9ucyhb
cmF3T3JpZ2lucywgY2FsbGJhY2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdhdG9yLmNvcHlS
ZWYoKV0oY29uc3QgSGFzaFNldDxTZWN1cml0eU9yaWdpbkRhdGE+JiBvcmlnaW5zKSBtdXRhYmxl
IHsKKyAgICAgICAgICAgIGZvciAoY29uc3QgYXV0byYgb3JpZ2luIDogb3JpZ2lucykKKyAgICAg
ICAgICAgICAgICByYXdPcmlnaW5zLT5hZGQob3JpZ2luKTsKKyAgICAgICAgfSk7CisgICAgfQog
I2VuZGlmCiAKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLSAgICBTdHJpbmcgcGF0aCA9
IG1faWRiRGF0YWJhc2VQYXRocy5nZXQoc2Vzc2lvbklEKTsKKyAgICBwYXRoID0gbV9pZGJEYXRh
YmFzZVBhdGhzLmdldChzZXNzaW9uSUQpOwogICAgIGlmICghcGF0aC5pc0VtcHR5KCkgJiYgd2Vi
c2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkluZGV4ZWREQkRhdGFiYXNl
cykpIHsKICAgICAgICAgLy8gRklYTUU6IFBpY2sgdGhlIHJpZ2h0IGRhdGFiYXNlIHN0b3JlIGJh
c2VkIG9uIHRoZSBzZXNzaW9uIElELgotICAgICAgICBwb3N0U3RvcmFnZVRhc2soQ3Jvc3NUaHJl
YWRUYXNrKFt0aGlzLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRs
ZXIpLCBwYXRoID0gV1RGTW92ZShwYXRoKV0oKSBtdXRhYmxlIHsKLSAgICAgICAgICAgIFJ1bkxv
b3A6Om1haW4oKS5kaXNwYXRjaChbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRp
b25IYW5kbGVyKSwgc2VjdXJpdHlPcmlnaW5zID0gaW5kZXhlZERhdGFiYXNlT3JpZ2lucyhwYXRo
KV0gewotICAgICAgICAgICAgICAgIFdlYnNpdGVEYXRhIHdlYnNpdGVEYXRhOworICAgICAgICBw
b3N0U3RvcmFnZVRhc2soQ3Jvc3NUaHJlYWRUYXNrKFt0aGlzLCBjYWxsYmFja0FnZ3JlZ2F0b3Ig
PSBjYWxsYmFja0FnZ3JlZ2F0b3IuY29weVJlZigpLCBwYXRoID0gV1RGTW92ZShwYXRoKSwgcmF3
V2Vic2l0ZURhdGFdKCkgbXV0YWJsZSB7CisgICAgICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlz
cGF0Y2goW2NhbGxiYWNrQWdncmVnYXRvciA9IFdURk1vdmUoY2FsbGJhY2tBZ2dyZWdhdG9yKSwg
cmF3V2Vic2l0ZURhdGEsIHNlY3VyaXR5T3JpZ2lucyA9IGluZGV4ZWREYXRhYmFzZU9yaWdpbnMo
cGF0aCldIHsKICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGF1dG8mIHNlY3VyaXR5T3JpZ2lu
IDogc2VjdXJpdHlPcmlnaW5zKQotICAgICAgICAgICAgICAgICAgICB3ZWJzaXRlRGF0YS5lbnRy
aWVzLmFwcGVuZCh7IHNlY3VyaXR5T3JpZ2luLCBXZWJzaXRlRGF0YVR5cGU6OkluZGV4ZWREQkRh
dGFiYXNlcywgMCB9KTsKLQotICAgICAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKHdlYnNp
dGVEYXRhKTsKKyAgICAgICAgICAgICAgICAgICAgcmF3V2Vic2l0ZURhdGEtPmVudHJpZXMuYXBw
ZW5kKHsgc2VjdXJpdHlPcmlnaW4sIFdlYnNpdGVEYXRhVHlwZTo6SW5kZXhlZERCRGF0YWJhc2Vz
LCAwIH0pOwogICAgICAgICAgICAgfSk7CiAgICAgICAgIH0pKTsKLSAgICAgICAgcmV0dXJuOwog
ICAgIH0KICNlbmRpZgotCi0gICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsKIH0KIAogdm9pZCBT
dG9yYWdlUHJvY2Vzczo6ZGVsZXRlV2Vic2l0ZURhdGEoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklE
LCBPcHRpb25TZXQ8V2Vic2l0ZURhdGFUeXBlPiB3ZWJzaXRlRGF0YVR5cGVzLCBzdGQ6OmNocm9u
bzo6c3lzdGVtX2Nsb2NrOjp0aW1lX3BvaW50IG1vZGlmaWVkU2luY2UsIHVpbnQ2NF90IGNhbGxi
YWNrSUQpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329531</attachid>
            <date>2017-12-15 15:53:06 -0800</date>
            <delta_ts>2017-12-15 15:58:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180886-20171215155305.patch</filename>
            <type>text/plain</type>
            <size>9315</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI1OTgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTQ1NWE3ZTg5MTU2ZWEy
NzgyZTQ5NTUxYTZlOWFhODc2MmM2NWQ1OC4uOTNjNzk2ZGY4YmY4ZDM1NzI0MjA5Nzg0YjQ1Nzli
MGVhOTU3N2FiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE3LTEyLTE1ICBCcmFk
eSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgZ2V0dGlu
ZyBTZXJ2aWNlV29ya2VyIHJlZ2lzdHJhdGlvbnMgZm9yIHRoZSBXS1dlYnNpdGVEYXRhU3RvcmUg
QVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA4
ODYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBu
ZXcgdGVzdHMgKEFQSSB0ZXN0IGNvbWluZyBzb29uKS4KKworICAgICAgICAqIHdvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6OnJl
Z2lzdHJhdGlvblN0b3JlSW1wb3J0Q29tcGxldGUpOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2
ZXI6OlNXU2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjpnZXRPcmlnaW5zV2l0
aFJlZ2lzdHJhdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6OnBlcmZvcm1HZXRP
cmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3MpOgorICAgICAgICAqIHdvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaDoKKwogMjAxNy0xMi0xNSAgQ2hyaXMgRHVtZXogIDxjZHVt
ZXpAYXBwbGUuY29tPgogCiAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS5odHRwcy5odG1sIGlzIHNvbWV0
aW1lcyBjcmFzaGluZyBpbiBEZWJ1ZyBidWlsZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZmM4YTAwNWMyZGZhMWM4
YzA1YzMwMDg1YjFhYmFiMGIzOWE3NmUzOS4uMjFiNjhjODQxMGUyMGFhN2NiMWZlYmE3Y2ZlMDgy
Y2E0YmE3MGEzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxNy0xMi0xNSAgQnJhZHkg
RWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IGdldHRpbmcg
U2VydmljZVdvcmtlciByZWdpc3RyYXRpb25zIGZvciB0aGUgV0tXZWJzaXRlRGF0YVN0b3JlIEFQ
SQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgwODg2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTdG9y
YWdlUHJvY2Vzcy9TdG9yYWdlUHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6OlN0b3JhZ2VQ
cm9jZXNzOjpmZXRjaFdlYnNpdGVEYXRhKToKKwogMjAxNy0xMi0xNSAgQnJhZHkgRWlkc29uICA8
YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSBzdXJlIG9ubHkgV2Vic2l0ZURhdGFT
dG9yZXMgd2l0aCB2YWxpZCBTZXNzaW9uSURzIHJlZ2lzdGVyIHRoZW1zZWx2ZXMuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCmluZGV4
IDdmMTY4Njg0MTlkMmEzMmY5ZjA4NmNkZDk5NGVjYjIzZWFlMmM3ZGMuLmEwNTM2MTA0MDRkZTJi
MjZiNzJlMDNiZTkyMTBhNWQzNDIxMDNiNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCkBAIC0xMDgsNyArMTA4LDEwIEBAIFNX
U2VydmVyUmVnaXN0cmF0aW9uKiBTV1NlcnZlcjo6Z2V0UmVnaXN0cmF0aW9uKGNvbnN0IFNlcnZp
Y2VXb3JrZXJSZWdpc3RyYXRpb25LCiAKIHZvaWQgU1dTZXJ2ZXI6OnJlZ2lzdHJhdGlvblN0b3Jl
SW1wb3J0Q29tcGxldGUoKQogeworICAgIEFTU0VSVCghbV9pbXBvcnRDb21wbGV0ZWQpOworICAg
IG1faW1wb3J0Q29tcGxldGVkID0gdHJ1ZTsKICAgICBtX29yaWdpblN0b3JlLT5pbXBvcnRDb21w
bGV0ZSgpOworICAgIHBlcmZvcm1HZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3Mo
KTsKIH0KIAogdm9pZCBTV1NlcnZlcjo6YWRkUmVnaXN0cmF0aW9uRnJvbVN0b3JlKFNlcnZpY2VX
b3JrZXJDb250ZXh0RGF0YSYmIGRhdGEpCkBAIC0yMjgsNyArMjMxLDcgQEAgdm9pZCBTV1NlcnZl
cjo6Q29ubmVjdGlvbjo6c3luY1Rlcm1pbmF0ZVdvcmtlcihTZXJ2aWNlV29ya2VySWRlbnRpZmll
ciBpZGVudGlmaWUKICAgICAgICAgbV9zZXJ2ZXIuc3luY1Rlcm1pbmF0ZVdvcmtlcigqd29ya2Vy
KTsKIH0KIAotICAgIFNXU2VydmVyOjpTV1NlcnZlcihVbmlxdWVSZWY8U1dPcmlnaW5TdG9yZT4m
JiBvcmlnaW5TdG9yZSwgU3RyaW5nJiYgcmVnaXN0cmF0aW9uRGF0YWJhc2VEaXJlY3RvcnksIFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKK1NXU2VydmVyOjpTV1NlcnZlcihVbmlxdWVSZWY8U1dP
cmlnaW5TdG9yZT4mJiBvcmlnaW5TdG9yZSwgU3RyaW5nJiYgcmVnaXN0cmF0aW9uRGF0YWJhc2VE
aXJlY3RvcnksIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKICAgICA6IG1fb3JpZ2luU3RvcmUo
V1RGTW92ZShvcmlnaW5TdG9yZSkpCiAgICAgLCBtX3JlZ2lzdHJhdGlvblN0b3JlKCp0aGlzLCBX
VEZNb3ZlKHJlZ2lzdHJhdGlvbkRhdGFiYXNlRGlyZWN0b3J5KSkKICAgICAsIG1fc2Vzc2lvbklE
KHNlc3Npb25JRCkKQEAgLTc2OCw2ICs3NzEsMzIgQEAgdm9pZCBTV1NlcnZlcjo6Q29ubmVjdGlv
bjo6cmVzb2x2ZVJlZ2lzdHJhdGlvblJlYWR5UmVxdWVzdHMoU1dTZXJ2ZXJSZWdpc3RyYXRpb24K
ICAgICB9KTsKIH0KIAordm9pZCBTV1NlcnZlcjo6Z2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25z
KFdURjo6RnVuY3Rpb248dm9pZChjb25zdCBIYXNoU2V0PFNlY3VyaXR5T3JpZ2luRGF0YT4mKT4g
Y2FsbGJhY2spCit7CisgICAgbV9nZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3Mu
YXBwZW5kKFdURk1vdmUoY2FsbGJhY2spKTsKKworICAgIGlmIChtX2ltcG9ydENvbXBsZXRlZCkK
KyAgICAgICAgcGVyZm9ybUdldE9yaWdpbnNXaXRoUmVnaXN0cmF0aW9uc0NhbGxiYWNrcygpOwor
fQorCit2b2lkIFNXU2VydmVyOjpwZXJmb3JtR2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zQ2Fs
bGJhY2tzKCkKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIEFTU0VSVChtX2lt
cG9ydENvbXBsZXRlZCk7CisKKyAgICBpZiAobV9nZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnND
YWxsYmFja3MuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBIYXNoU2V0PFNlY3Vy
aXR5T3JpZ2luRGF0YT4gb3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zOworICAgIGZvciAoYXV0byYg
a2V5IDogbV9yZWdpc3RyYXRpb25zLmtleXMoKSkgeworICAgICAgICBvcmlnaW5zV2l0aFJlZ2lz
dHJhdGlvbnMuYWRkKGtleS50b3BPcmlnaW4oKSk7CisgICAgICAgIG9yaWdpbnNXaXRoUmVnaXN0
cmF0aW9ucy5hZGQoU2VjdXJpdHlPcmlnaW5EYXRhIHsga2V5LnNjb3BlKCkucHJvdG9jb2woKS50
b1N0cmluZygpLCBrZXkuc2NvcGUoKS5ob3N0KCksIGtleS5zY29wZSgpLnBvcnQoKSB9KTsKKyAg
ICB9CisKKyAgICB3aGlsZSAoIW1fZ2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zQ2FsbGJhY2tz
LmlzRW1wdHkoKSkKKyAgICAgICAgbV9nZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFj
a3MudGFrZUZpcnN0KCkob3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zKTsKK30KKwogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oIGIv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oCmluZGV4IGM0
NmFhZTQ5NGQ5YzNkMzUxZGI5YWJiNmE1MTE5ZmNhOTU2OTg2OGUuLjJmODZkMjZkNWIyYzg5YzVl
MzNiNzZjYmMwODM2OTYyNGQwNTc3OGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmgKQEAgLTE3Myw2ICsxNzMsOCBAQCBwdWJsaWM6CiAg
ICAgdm9pZCBhZGRSZWdpc3RyYXRpb25Gcm9tU3RvcmUoU2VydmljZVdvcmtlckNvbnRleHREYXRh
JiYpOwogICAgIHZvaWQgcmVnaXN0cmF0aW9uU3RvcmVJbXBvcnRDb21wbGV0ZSgpOwogCisgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCBnZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnMoV1RGOjpGdW5j
dGlvbjx2b2lkKGNvbnN0IEhhc2hTZXQ8U2VjdXJpdHlPcmlnaW5EYXRhPiYpPik7CisKIHByaXZh
dGU6CiAgICAgdm9pZCByZWdpc3RlckNvbm5lY3Rpb24oQ29ubmVjdGlvbiYpOwogICAgIHZvaWQg
dW5yZWdpc3RlckNvbm5lY3Rpb24oQ29ubmVjdGlvbiYpOwpAQCAtMTk2LDYgKzE5OCw4IEBAIHBy
aXZhdGU6CiAgICAgU1dTZXJ2ZXJSZWdpc3RyYXRpb24qIHJlZ2lzdHJhdGlvbkZyb21TZXJ2aWNl
V29ya2VySWRlbnRpZmllcihTZXJ2aWNlV29ya2VySWRlbnRpZmllcik7CiAgICAgdm9pZCBmb3JF
YWNoQ2xpZW50Rm9yT3JpZ2luKGNvbnN0IENsaWVudE9yaWdpbiYsIGNvbnN0IFdURjo6RnVuY3Rp
b248dm9pZChTZXJ2aWNlV29ya2VyQ2xpZW50RGF0YSYpPiYpOwogCisgICAgdm9pZCBwZXJmb3Jt
R2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zQ2FsbGJhY2tzKCk7CisKICAgICBlbnVtIFRlcm1p
bmF0aW9uTW9kZSB7CiAgICAgICAgIFN5bmNocm9ub3VzLAogICAgICAgICBBc3luY2hyb25vdXMs
CkBAIC0yMzAsNiArMjM0LDggQEAgcHJpdmF0ZToKICAgICBEZXF1ZTxTZXJ2aWNlV29ya2VyQ29u
dGV4dERhdGE+IG1fcGVuZGluZ0NvbnRleHREYXRhczsKICAgICBIYXNoTWFwPFNlcnZpY2VXb3Jr
ZXJJZGVudGlmaWVyLCBWZWN0b3I8UnVuU2VydmljZVdvcmtlckNhbGxiYWNrPj4gbV9zZXJ2aWNl
V29ya2VyUnVuUmVxdWVzdHM7CiAgICAgUEFMOjpTZXNzaW9uSUQgbV9zZXNzaW9uSUQ7CisgICAg
Ym9vbCBtX2ltcG9ydENvbXBsZXRlZCB7IGZhbHNlIH07CisgICAgRGVxdWU8V1RGOjpGdW5jdGlv
bjx2b2lkKGNvbnN0IEhhc2hTZXQ8U2VjdXJpdHlPcmlnaW5EYXRhPiYpPj4gbV9nZXRPcmlnaW5z
V2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3M7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1N0b3JhZ2VQcm9jZXNzL1N0b3JhZ2VQcm9jZXNz
LmNwcCBiL1NvdXJjZS9XZWJLaXQvU3RvcmFnZVByb2Nlc3MvU3RvcmFnZVByb2Nlc3MuY3BwCmlu
ZGV4IDllMjU5MGM2ZTFiMTY3MzVjZDk1OTg1N2RmMWIzZmIzNTA4NDNmNDIuLjA3MjM0ODllOTk2
MjVlZmE3NzZmMmE1NTcyMzFkZGQ1Y2IzMDc5YmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
U3RvcmFnZVByb2Nlc3MvU3RvcmFnZVByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU3Rv
cmFnZVByb2Nlc3MvU3RvcmFnZVByb2Nlc3MuY3BwCkBAIC0yNjUsMzMgKzI2NSw0NCBAQCB2b2lk
IFN0b3JhZ2VQcm9jZXNzOjpjcmVhdGVTdG9yYWdlVG9XZWJQcm9jZXNzQ29ubmVjdGlvbihib29s
IGlzU2VydmljZVdvcmtlclBybwogCiB2b2lkIFN0b3JhZ2VQcm9jZXNzOjpmZXRjaFdlYnNpdGVE
YXRhKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4g
d2Vic2l0ZURhdGFUeXBlcywgdWludDY0X3QgY2FsbGJhY2tJRCkKIHsKLSAgICBhdXRvIGNvbXBs
ZXRpb25IYW5kbGVyID0gW3RoaXMsIGNhbGxiYWNrSURdKGNvbnN0IFdlYnNpdGVEYXRhJiB3ZWJz
aXRlRGF0YSkgewotICAgICAgICBwYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3Nh
Z2VzOjpTdG9yYWdlUHJvY2Vzc1Byb3h5OjpEaWRGZXRjaFdlYnNpdGVEYXRhKGNhbGxiYWNrSUQs
IHdlYnNpdGVEYXRhKSwgMCk7Ci0gICAgfTsKKyAgICBhdXRvIG9yaWdpbnNXaXRoU2VydmljZVdv
cmtlcnMgPSBzdGQ6Om1ha2VfdW5pcXVlPEhhc2hTZXQ8U2VjdXJpdHlPcmlnaW5EYXRhPj4oKTsK
KyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAgSGFzaFNldDxTZWN1cml0eU9yaWdpbkRh
dGE+KiByYXdPcmlnaW5zID0gb3JpZ2luc1dpdGhTZXJ2aWNlV29ya2Vycy5nZXQoKTsKKyNlbmRp
ZgogCisgICAgYXV0byB3ZWJzaXRlRGF0YSA9IHN0ZDo6bWFrZV91bmlxdWU8V2Vic2l0ZURhdGE+
KCk7CisgICAgV2Vic2l0ZURhdGEqIHJhd1dlYnNpdGVEYXRhID0gd2Vic2l0ZURhdGEuZ2V0KCk7
CisgICAgYXV0byBjYWxsYmFja0FnZ3JlZ2F0b3IgPSBDYWxsYmFja0FnZ3JlZ2F0b3I6OmNyZWF0
ZShbdGhpcywgb3JpZ2luc1dpdGhTZXJ2aWNlV29ya2VycyA9IFdURk1vdmUob3JpZ2luc1dpdGhT
ZXJ2aWNlV29ya2VycyksIHdlYnNpdGVEYXRhID0gV1RGTW92ZSh3ZWJzaXRlRGF0YSksIGNhbGxi
YWNrSURdKCkgewogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKLSAgICBpZiAod2Vic2l0ZURh
dGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRp
b25zKSkKLSAgICAgICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICAgICAgZm9yIChhdXRvJiBvcmln
aW4gOiAqb3JpZ2luc1dpdGhTZXJ2aWNlV29ya2VycykKKyAgICAgICAgICAgIHdlYnNpdGVEYXRh
LT5lbnRyaWVzLmFwcGVuZCh7IG9yaWdpbiwgV2Vic2l0ZURhdGFUeXBlOjpTZXJ2aWNlV29ya2Vy
UmVnaXN0cmF0aW9ucywgMCB9KTsKKyNlbmRpZgorCisgICAgICAgIHBhcmVudFByb2Nlc3NDb25u
ZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OlN0b3JhZ2VQcm9jZXNzUHJveHk6OkRpZEZldGNoV2Vi
c2l0ZURhdGEoY2FsbGJhY2tJRCwgKndlYnNpdGVEYXRhKSwgMCk7CisgICAgfSk7CisKKyNpZiBF
TkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAgU3RyaW5nIHBhdGggPSBtX3N3RGF0YWJhc2VQYXRo
cy5nZXQoc2Vzc2lvbklEKTsKKyAgICBpZiAoIXBhdGguaXNFbXB0eSgpICYmIHdlYnNpdGVEYXRh
VHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9u
cykpIHsKKyAgICAgICAgc3dTZXJ2ZXJGb3JTZXNzaW9uKHNlc3Npb25JRCkuZ2V0T3JpZ2luc1dp
dGhSZWdpc3RyYXRpb25zKFtyYXdPcmlnaW5zLCBjYWxsYmFja0FnZ3JlZ2F0b3IgPSBjYWxsYmFj
a0FnZ3JlZ2F0b3IuY29weVJlZigpXShjb25zdCBIYXNoU2V0PFNlY3VyaXR5T3JpZ2luRGF0YT4m
IG9yaWdpbnMpIG11dGFibGUgeworICAgICAgICAgICAgZm9yIChjb25zdCBhdXRvJiBvcmlnaW4g
OiBvcmlnaW5zKQorICAgICAgICAgICAgICAgIHJhd09yaWdpbnMtPmFkZChvcmlnaW4pOworICAg
ICAgICB9KTsKKyAgICB9CiAjZW5kaWYKIAogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQot
ICAgIFN0cmluZyBwYXRoID0gbV9pZGJEYXRhYmFzZVBhdGhzLmdldChzZXNzaW9uSUQpOworICAg
IHBhdGggPSBtX2lkYkRhdGFiYXNlUGF0aHMuZ2V0KHNlc3Npb25JRCk7CiAgICAgaWYgKCFwYXRo
LmlzRW1wdHkoKSAmJiB3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6
SW5kZXhlZERCRGF0YWJhc2VzKSkgewogICAgICAgICAvLyBGSVhNRTogUGljayB0aGUgcmlnaHQg
ZGF0YWJhc2Ugc3RvcmUgYmFzZWQgb24gdGhlIHNlc3Npb24gSUQuCi0gICAgICAgIHBvc3RTdG9y
YWdlVGFzayhDcm9zc1RocmVhZFRhc2soW3RoaXMsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92
ZShjb21wbGV0aW9uSGFuZGxlciksIHBhdGggPSBXVEZNb3ZlKHBhdGgpXSgpIG11dGFibGUgewot
ICAgICAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFtjb21wbGV0aW9uSGFuZGxlciA9
IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpLCBzZWN1cml0eU9yaWdpbnMgPSBpbmRleGVkRGF0
YWJhc2VPcmlnaW5zKHBhdGgpXSB7Ci0gICAgICAgICAgICAgICAgV2Vic2l0ZURhdGEgd2Vic2l0
ZURhdGE7CisgICAgICAgIHBvc3RTdG9yYWdlVGFzayhDcm9zc1RocmVhZFRhc2soW3RoaXMsIGNh
bGxiYWNrQWdncmVnYXRvciA9IGNhbGxiYWNrQWdncmVnYXRvci5jb3B5UmVmKCksIHBhdGggPSBX
VEZNb3ZlKHBhdGgpLCByYXdXZWJzaXRlRGF0YV0oKSBtdXRhYmxlIHsKKyAgICAgICAgICAgIFJ1
bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbY2FsbGJhY2tBZ2dyZWdhdG9yID0gV1RGTW92ZShjYWxs
YmFja0FnZ3JlZ2F0b3IpLCByYXdXZWJzaXRlRGF0YSwgc2VjdXJpdHlPcmlnaW5zID0gaW5kZXhl
ZERhdGFiYXNlT3JpZ2lucyhwYXRoKV0gewogICAgICAgICAgICAgICAgIGZvciAoY29uc3QgYXV0
byYgc2VjdXJpdHlPcmlnaW4gOiBzZWN1cml0eU9yaWdpbnMpCi0gICAgICAgICAgICAgICAgICAg
IHdlYnNpdGVEYXRhLmVudHJpZXMuYXBwZW5kKHsgc2VjdXJpdHlPcmlnaW4sIFdlYnNpdGVEYXRh
VHlwZTo6SW5kZXhlZERCRGF0YWJhc2VzLCAwIH0pOwotCi0gICAgICAgICAgICAgICAgY29tcGxl
dGlvbkhhbmRsZXIod2Vic2l0ZURhdGEpOworICAgICAgICAgICAgICAgICAgICByYXdXZWJzaXRl
RGF0YS0+ZW50cmllcy5hcHBlbmQoeyBzZWN1cml0eU9yaWdpbiwgV2Vic2l0ZURhdGFUeXBlOjpJ
bmRleGVkREJEYXRhYmFzZXMsIDAgfSk7CiAgICAgICAgICAgICB9KTsKICAgICAgICAgfSkpOwot
ICAgICAgICByZXR1cm47CiAgICAgfQogI2VuZGlmCi0KLSAgICBjb21wbGV0aW9uSGFuZGxlcih7
IH0pOwogfQogCiB2b2lkIFN0b3JhZ2VQcm9jZXNzOjpkZWxldGVXZWJzaXRlRGF0YShQQUw6OlNl
c3Npb25JRCBzZXNzaW9uSUQsIE9wdGlvblNldDxXZWJzaXRlRGF0YVR5cGU+IHdlYnNpdGVEYXRh
VHlwZXMsIHN0ZDo6Y2hyb25vOjpzeXN0ZW1fY2xvY2s6OnRpbWVfcG9pbnQgbW9kaWZpZWRTaW5j
ZSwgdWludDY0X3QgY2FsbGJhY2tJRCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329532</attachid>
            <date>2017-12-15 15:58:39 -0800</date>
            <delta_ts>2017-12-15 16:15:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180886-20171215155839.patch</filename>
            <type>text/plain</type>
            <size>9326</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI1OTgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTQ1NWE3ZTg5MTU2ZWEy
NzgyZTQ5NTUxYTZlOWFhODc2MmM2NWQ1OC4uOTNjNzk2ZGY4YmY4ZDM1NzI0MjA5Nzg0YjQ1Nzli
MGVhOTU3N2FiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE3LTEyLTE1ICBCcmFk
eSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgZ2V0dGlu
ZyBTZXJ2aWNlV29ya2VyIHJlZ2lzdHJhdGlvbnMgZm9yIHRoZSBXS1dlYnNpdGVEYXRhU3RvcmUg
QVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA4
ODYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBu
ZXcgdGVzdHMgKEFQSSB0ZXN0IGNvbWluZyBzb29uKS4KKworICAgICAgICAqIHdvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6OnJl
Z2lzdHJhdGlvblN0b3JlSW1wb3J0Q29tcGxldGUpOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2
ZXI6OlNXU2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjpnZXRPcmlnaW5zV2l0
aFJlZ2lzdHJhdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6OnBlcmZvcm1HZXRP
cmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3MpOgorICAgICAgICAqIHdvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaDoKKwogMjAxNy0xMi0xNSAgQ2hyaXMgRHVtZXogIDxjZHVt
ZXpAYXBwbGUuY29tPgogCiAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS5odHRwcy5odG1sIGlzIHNvbWV0
aW1lcyBjcmFzaGluZyBpbiBEZWJ1ZyBidWlsZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZmM4YTAwNWMyZGZhMWM4
YzA1YzMwMDg1YjFhYmFiMGIzOWE3NmUzOS4uMjFiNjhjODQxMGUyMGFhN2NiMWZlYmE3Y2ZlMDgy
Y2E0YmE3MGEzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxNy0xMi0xNSAgQnJhZHkg
RWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IGdldHRpbmcg
U2VydmljZVdvcmtlciByZWdpc3RyYXRpb25zIGZvciB0aGUgV0tXZWJzaXRlRGF0YVN0b3JlIEFQ
SQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgwODg2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTdG9y
YWdlUHJvY2Vzcy9TdG9yYWdlUHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6OlN0b3JhZ2VQ
cm9jZXNzOjpmZXRjaFdlYnNpdGVEYXRhKToKKwogMjAxNy0xMi0xNSAgQnJhZHkgRWlkc29uICA8
YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSBzdXJlIG9ubHkgV2Vic2l0ZURhdGFT
dG9yZXMgd2l0aCB2YWxpZCBTZXNzaW9uSURzIHJlZ2lzdGVyIHRoZW1zZWx2ZXMuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCmluZGV4
IDdmMTY4Njg0MTlkMmEzMmY5ZjA4NmNkZDk5NGVjYjIzZWFlMmM3ZGMuLmEwNTM2MTA0MDRkZTJi
MjZiNzJlMDNiZTkyMTBhNWQzNDIxMDNiNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCkBAIC0xMDgsNyArMTA4LDEwIEBAIFNX
U2VydmVyUmVnaXN0cmF0aW9uKiBTV1NlcnZlcjo6Z2V0UmVnaXN0cmF0aW9uKGNvbnN0IFNlcnZp
Y2VXb3JrZXJSZWdpc3RyYXRpb25LCiAKIHZvaWQgU1dTZXJ2ZXI6OnJlZ2lzdHJhdGlvblN0b3Jl
SW1wb3J0Q29tcGxldGUoKQogeworICAgIEFTU0VSVCghbV9pbXBvcnRDb21wbGV0ZWQpOworICAg
IG1faW1wb3J0Q29tcGxldGVkID0gdHJ1ZTsKICAgICBtX29yaWdpblN0b3JlLT5pbXBvcnRDb21w
bGV0ZSgpOworICAgIHBlcmZvcm1HZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3Mo
KTsKIH0KIAogdm9pZCBTV1NlcnZlcjo6YWRkUmVnaXN0cmF0aW9uRnJvbVN0b3JlKFNlcnZpY2VX
b3JrZXJDb250ZXh0RGF0YSYmIGRhdGEpCkBAIC0yMjgsNyArMjMxLDcgQEAgdm9pZCBTV1NlcnZl
cjo6Q29ubmVjdGlvbjo6c3luY1Rlcm1pbmF0ZVdvcmtlcihTZXJ2aWNlV29ya2VySWRlbnRpZmll
ciBpZGVudGlmaWUKICAgICAgICAgbV9zZXJ2ZXIuc3luY1Rlcm1pbmF0ZVdvcmtlcigqd29ya2Vy
KTsKIH0KIAotICAgIFNXU2VydmVyOjpTV1NlcnZlcihVbmlxdWVSZWY8U1dPcmlnaW5TdG9yZT4m
JiBvcmlnaW5TdG9yZSwgU3RyaW5nJiYgcmVnaXN0cmF0aW9uRGF0YWJhc2VEaXJlY3RvcnksIFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKK1NXU2VydmVyOjpTV1NlcnZlcihVbmlxdWVSZWY8U1dP
cmlnaW5TdG9yZT4mJiBvcmlnaW5TdG9yZSwgU3RyaW5nJiYgcmVnaXN0cmF0aW9uRGF0YWJhc2VE
aXJlY3RvcnksIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKICAgICA6IG1fb3JpZ2luU3RvcmUo
V1RGTW92ZShvcmlnaW5TdG9yZSkpCiAgICAgLCBtX3JlZ2lzdHJhdGlvblN0b3JlKCp0aGlzLCBX
VEZNb3ZlKHJlZ2lzdHJhdGlvbkRhdGFiYXNlRGlyZWN0b3J5KSkKICAgICAsIG1fc2Vzc2lvbklE
KHNlc3Npb25JRCkKQEAgLTc2OCw2ICs3NzEsMzIgQEAgdm9pZCBTV1NlcnZlcjo6Q29ubmVjdGlv
bjo6cmVzb2x2ZVJlZ2lzdHJhdGlvblJlYWR5UmVxdWVzdHMoU1dTZXJ2ZXJSZWdpc3RyYXRpb24K
ICAgICB9KTsKIH0KIAordm9pZCBTV1NlcnZlcjo6Z2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25z
KFdURjo6RnVuY3Rpb248dm9pZChjb25zdCBIYXNoU2V0PFNlY3VyaXR5T3JpZ2luRGF0YT4mKT4g
Y2FsbGJhY2spCit7CisgICAgbV9nZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3Mu
YXBwZW5kKFdURk1vdmUoY2FsbGJhY2spKTsKKworICAgIGlmIChtX2ltcG9ydENvbXBsZXRlZCkK
KyAgICAgICAgcGVyZm9ybUdldE9yaWdpbnNXaXRoUmVnaXN0cmF0aW9uc0NhbGxiYWNrcygpOwor
fQorCit2b2lkIFNXU2VydmVyOjpwZXJmb3JtR2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zQ2Fs
bGJhY2tzKCkKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIEFTU0VSVChtX2lt
cG9ydENvbXBsZXRlZCk7CisKKyAgICBpZiAobV9nZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnND
YWxsYmFja3MuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBIYXNoU2V0PFNlY3Vy
aXR5T3JpZ2luRGF0YT4gb3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zOworICAgIGZvciAoYXV0byYg
a2V5IDogbV9yZWdpc3RyYXRpb25zLmtleXMoKSkgeworICAgICAgICBvcmlnaW5zV2l0aFJlZ2lz
dHJhdGlvbnMuYWRkKGtleS50b3BPcmlnaW4oKSk7CisgICAgICAgIG9yaWdpbnNXaXRoUmVnaXN0
cmF0aW9ucy5hZGQoU2VjdXJpdHlPcmlnaW5EYXRhIHsga2V5LnNjb3BlKCkucHJvdG9jb2woKS50
b1N0cmluZygpLCBrZXkuc2NvcGUoKS5ob3N0KCksIGtleS5zY29wZSgpLnBvcnQoKSB9KTsKKyAg
ICB9CisKKyAgICB3aGlsZSAoIW1fZ2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zQ2FsbGJhY2tz
LmlzRW1wdHkoKSkKKyAgICAgICAgbV9nZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFj
a3MudGFrZUZpcnN0KCkob3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zKTsKK30KKwogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oIGIv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oCmluZGV4IGM0
NmFhZTQ5NGQ5YzNkMzUxZGI5YWJiNmE1MTE5ZmNhOTU2OTg2OGUuLjJmODZkMjZkNWIyYzg5YzVl
MzNiNzZjYmMwODM2OTYyNGQwNTc3OGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmgKQEAgLTE3Myw2ICsxNzMsOCBAQCBwdWJsaWM6CiAg
ICAgdm9pZCBhZGRSZWdpc3RyYXRpb25Gcm9tU3RvcmUoU2VydmljZVdvcmtlckNvbnRleHREYXRh
JiYpOwogICAgIHZvaWQgcmVnaXN0cmF0aW9uU3RvcmVJbXBvcnRDb21wbGV0ZSgpOwogCisgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCBnZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnMoV1RGOjpGdW5j
dGlvbjx2b2lkKGNvbnN0IEhhc2hTZXQ8U2VjdXJpdHlPcmlnaW5EYXRhPiYpPik7CisKIHByaXZh
dGU6CiAgICAgdm9pZCByZWdpc3RlckNvbm5lY3Rpb24oQ29ubmVjdGlvbiYpOwogICAgIHZvaWQg
dW5yZWdpc3RlckNvbm5lY3Rpb24oQ29ubmVjdGlvbiYpOwpAQCAtMTk2LDYgKzE5OCw4IEBAIHBy
aXZhdGU6CiAgICAgU1dTZXJ2ZXJSZWdpc3RyYXRpb24qIHJlZ2lzdHJhdGlvbkZyb21TZXJ2aWNl
V29ya2VySWRlbnRpZmllcihTZXJ2aWNlV29ya2VySWRlbnRpZmllcik7CiAgICAgdm9pZCBmb3JF
YWNoQ2xpZW50Rm9yT3JpZ2luKGNvbnN0IENsaWVudE9yaWdpbiYsIGNvbnN0IFdURjo6RnVuY3Rp
b248dm9pZChTZXJ2aWNlV29ya2VyQ2xpZW50RGF0YSYpPiYpOwogCisgICAgdm9pZCBwZXJmb3Jt
R2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zQ2FsbGJhY2tzKCk7CisKICAgICBlbnVtIFRlcm1p
bmF0aW9uTW9kZSB7CiAgICAgICAgIFN5bmNocm9ub3VzLAogICAgICAgICBBc3luY2hyb25vdXMs
CkBAIC0yMzAsNiArMjM0LDggQEAgcHJpdmF0ZToKICAgICBEZXF1ZTxTZXJ2aWNlV29ya2VyQ29u
dGV4dERhdGE+IG1fcGVuZGluZ0NvbnRleHREYXRhczsKICAgICBIYXNoTWFwPFNlcnZpY2VXb3Jr
ZXJJZGVudGlmaWVyLCBWZWN0b3I8UnVuU2VydmljZVdvcmtlckNhbGxiYWNrPj4gbV9zZXJ2aWNl
V29ya2VyUnVuUmVxdWVzdHM7CiAgICAgUEFMOjpTZXNzaW9uSUQgbV9zZXNzaW9uSUQ7CisgICAg
Ym9vbCBtX2ltcG9ydENvbXBsZXRlZCB7IGZhbHNlIH07CisgICAgRGVxdWU8V1RGOjpGdW5jdGlv
bjx2b2lkKGNvbnN0IEhhc2hTZXQ8U2VjdXJpdHlPcmlnaW5EYXRhPiYpPj4gbV9nZXRPcmlnaW5z
V2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3M7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1N0b3JhZ2VQcm9jZXNzL1N0b3JhZ2VQcm9jZXNz
LmNwcCBiL1NvdXJjZS9XZWJLaXQvU3RvcmFnZVByb2Nlc3MvU3RvcmFnZVByb2Nlc3MuY3BwCmlu
ZGV4IDllMjU5MGM2ZTFiMTY3MzVjZDk1OTg1N2RmMWIzZmIzNTA4NDNmNDIuLmNmYTY0ZDRiMWE3
Y2UzY2IzZGFlODI4YzM0ODI4MTkyN2MxMjA4YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
U3RvcmFnZVByb2Nlc3MvU3RvcmFnZVByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU3Rv
cmFnZVByb2Nlc3MvU3RvcmFnZVByb2Nlc3MuY3BwCkBAIC0yNjUsMzMgKzI2NSw0NSBAQCB2b2lk
IFN0b3JhZ2VQcm9jZXNzOjpjcmVhdGVTdG9yYWdlVG9XZWJQcm9jZXNzQ29ubmVjdGlvbihib29s
IGlzU2VydmljZVdvcmtlclBybwogCiB2b2lkIFN0b3JhZ2VQcm9jZXNzOjpmZXRjaFdlYnNpdGVE
YXRhKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4g
d2Vic2l0ZURhdGFUeXBlcywgdWludDY0X3QgY2FsbGJhY2tJRCkKIHsKLSAgICBhdXRvIGNvbXBs
ZXRpb25IYW5kbGVyID0gW3RoaXMsIGNhbGxiYWNrSURdKGNvbnN0IFdlYnNpdGVEYXRhJiB3ZWJz
aXRlRGF0YSkgewotICAgICAgICBwYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3Nh
Z2VzOjpTdG9yYWdlUHJvY2Vzc1Byb3h5OjpEaWRGZXRjaFdlYnNpdGVEYXRhKGNhbGxiYWNrSUQs
IHdlYnNpdGVEYXRhKSwgMCk7Ci0gICAgfTsKKyAgICBhdXRvIG9yaWdpbnNXaXRoU2VydmljZVdv
cmtlcnMgPSBzdGQ6Om1ha2VfdW5pcXVlPEhhc2hTZXQ8U2VjdXJpdHlPcmlnaW5EYXRhPj4oKTsK
KyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAgSGFzaFNldDxTZWN1cml0eU9yaWdpbkRh
dGE+KiByYXdPcmlnaW5zID0gb3JpZ2luc1dpdGhTZXJ2aWNlV29ya2Vycy5nZXQoKTsKKyNlbmRp
ZgogCisgICAgYXV0byB3ZWJzaXRlRGF0YSA9IHN0ZDo6bWFrZV91bmlxdWU8V2Vic2l0ZURhdGE+
KCk7CisgICAgV2Vic2l0ZURhdGEqIHJhd1dlYnNpdGVEYXRhID0gd2Vic2l0ZURhdGEuZ2V0KCk7
CisgICAgYXV0byBjYWxsYmFja0FnZ3JlZ2F0b3IgPSBDYWxsYmFja0FnZ3JlZ2F0b3I6OmNyZWF0
ZShbdGhpcywgb3JpZ2luc1dpdGhTZXJ2aWNlV29ya2VycyA9IFdURk1vdmUob3JpZ2luc1dpdGhT
ZXJ2aWNlV29ya2VycyksIHdlYnNpdGVEYXRhID0gV1RGTW92ZSh3ZWJzaXRlRGF0YSksIGNhbGxi
YWNrSURdKCkgewogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKLSAgICBpZiAod2Vic2l0ZURh
dGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRp
b25zKSkKLSAgICAgICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICAgICAgZm9yIChhdXRvJiBvcmln
aW4gOiAqb3JpZ2luc1dpdGhTZXJ2aWNlV29ya2VycykKKyAgICAgICAgICAgIHdlYnNpdGVEYXRh
LT5lbnRyaWVzLmFwcGVuZCh7IG9yaWdpbiwgV2Vic2l0ZURhdGFUeXBlOjpTZXJ2aWNlV29ya2Vy
UmVnaXN0cmF0aW9ucywgMCB9KTsKKyNlbmRpZgorCisgICAgICAgIHBhcmVudFByb2Nlc3NDb25u
ZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OlN0b3JhZ2VQcm9jZXNzUHJveHk6OkRpZEZldGNoV2Vi
c2l0ZURhdGEoY2FsbGJhY2tJRCwgKndlYnNpdGVEYXRhKSwgMCk7CisgICAgfSk7CisKKyAgICBT
dHJpbmcgcGF0aDsKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAgcGF0aCA9IG1fc3dE
YXRhYmFzZVBhdGhzLmdldChzZXNzaW9uSUQpOworICAgIGlmICghcGF0aC5pc0VtcHR5KCkgJiYg
d2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OlNlcnZpY2VXb3JrZXJS
ZWdpc3RyYXRpb25zKSkgeworICAgICAgICBzd1NlcnZlckZvclNlc3Npb24oc2Vzc2lvbklEKS5n
ZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnMoW3Jhd09yaWdpbnMsIGNhbGxiYWNrQWdncmVnYXRv
ciA9IGNhbGxiYWNrQWdncmVnYXRvci5jb3B5UmVmKCldKGNvbnN0IEhhc2hTZXQ8U2VjdXJpdHlP
cmlnaW5EYXRhPiYgb3JpZ2lucykgbXV0YWJsZSB7CisgICAgICAgICAgICBmb3IgKGNvbnN0IGF1
dG8mIG9yaWdpbiA6IG9yaWdpbnMpCisgICAgICAgICAgICAgICAgcmF3T3JpZ2lucy0+YWRkKG9y
aWdpbik7CisgICAgICAgIH0pOworICAgIH0KICNlbmRpZgogCiAjaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCi0gICAgU3RyaW5nIHBhdGggPSBtX2lkYkRhdGFiYXNlUGF0aHMuZ2V0KHNlc3Np
b25JRCk7CisgICAgcGF0aCA9IG1faWRiRGF0YWJhc2VQYXRocy5nZXQoc2Vzc2lvbklEKTsKICAg
ICBpZiAoIXBhdGguaXNFbXB0eSgpICYmIHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0
ZURhdGFUeXBlOjpJbmRleGVkREJEYXRhYmFzZXMpKSB7CiAgICAgICAgIC8vIEZJWE1FOiBQaWNr
IHRoZSByaWdodCBkYXRhYmFzZSBzdG9yZSBiYXNlZCBvbiB0aGUgc2Vzc2lvbiBJRC4KLSAgICAg
ICAgcG9zdFN0b3JhZ2VUYXNrKENyb3NzVGhyZWFkVGFzayhbdGhpcywgY29tcGxldGlvbkhhbmRs
ZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSwgcGF0aCA9IFdURk1vdmUocGF0aCldKCkg
bXV0YWJsZSB7Ci0gICAgICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW2NvbXBsZXRp
b25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlciksIHNlY3VyaXR5T3JpZ2lucyA9
IGluZGV4ZWREYXRhYmFzZU9yaWdpbnMocGF0aCldIHsKLSAgICAgICAgICAgICAgICBXZWJzaXRl
RGF0YSB3ZWJzaXRlRGF0YTsKKyAgICAgICAgcG9zdFN0b3JhZ2VUYXNrKENyb3NzVGhyZWFkVGFz
ayhbdGhpcywgY2FsbGJhY2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdhdG9yLmNvcHlSZWYo
KSwgcGF0aCA9IFdURk1vdmUocGF0aCksIHJhd1dlYnNpdGVEYXRhXSgpIG11dGFibGUgeworICAg
ICAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFtjYWxsYmFja0FnZ3JlZ2F0b3IgPSBX
VEZNb3ZlKGNhbGxiYWNrQWdncmVnYXRvciksIHJhd1dlYnNpdGVEYXRhLCBzZWN1cml0eU9yaWdp
bnMgPSBpbmRleGVkRGF0YWJhc2VPcmlnaW5zKHBhdGgpXSB7CiAgICAgICAgICAgICAgICAgZm9y
IChjb25zdCBhdXRvJiBzZWN1cml0eU9yaWdpbiA6IHNlY3VyaXR5T3JpZ2lucykKLSAgICAgICAg
ICAgICAgICAgICAgd2Vic2l0ZURhdGEuZW50cmllcy5hcHBlbmQoeyBzZWN1cml0eU9yaWdpbiwg
V2Vic2l0ZURhdGFUeXBlOjpJbmRleGVkREJEYXRhYmFzZXMsIDAgfSk7Ci0KLSAgICAgICAgICAg
ICAgICBjb21wbGV0aW9uSGFuZGxlcih3ZWJzaXRlRGF0YSk7CisgICAgICAgICAgICAgICAgICAg
IHJhd1dlYnNpdGVEYXRhLT5lbnRyaWVzLmFwcGVuZCh7IHNlY3VyaXR5T3JpZ2luLCBXZWJzaXRl
RGF0YVR5cGU6OkluZGV4ZWREQkRhdGFiYXNlcywgMCB9KTsKICAgICAgICAgICAgIH0pOwogICAg
ICAgICB9KSk7Ci0gICAgICAgIHJldHVybjsKICAgICB9CiAjZW5kaWYKLQotICAgIGNvbXBsZXRp
b25IYW5kbGVyKHsgfSk7CiB9CiAKIHZvaWQgU3RvcmFnZVByb2Nlc3M6OmRlbGV0ZVdlYnNpdGVE
YXRhKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4g
d2Vic2l0ZURhdGFUeXBlcywgc3RkOjpjaHJvbm86OnN5c3RlbV9jbG9jazo6dGltZV9wb2ludCBt
b2RpZmllZFNpbmNlLCB1aW50NjRfdCBjYWxsYmFja0lEKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329535</attachid>
            <date>2017-12-15 16:15:32 -0800</date>
            <delta_ts>2017-12-16 10:54:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180886-20171215161532.patch</filename>
            <type>text/plain</type>
            <size>8924</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI1OTgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTQ1NWE3ZTg5MTU2ZWEy
NzgyZTQ5NTUxYTZlOWFhODc2MmM2NWQ1OC4uZTk2NWE0NTQ5ZmM0NDE2ODcwMjA5YzE4MWQ3YjUz
NDMyZjAyMDU0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE3LTEyLTE1ICBCcmFk
eSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgZ2V0dGlu
ZyBTZXJ2aWNlV29ya2VyIHJlZ2lzdHJhdGlvbnMgZm9yIHRoZSBXS1dlYnNpdGVEYXRhU3RvcmUg
QVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA4
ODYKKworICAgICAgICBSZXZpZXdlZCBieSBDaHJpcyBEdW1lei4KKworICAgICAgICBObyBuZXcg
dGVzdHMgKEFQSSB0ZXN0IGNvbWluZyBzb29uKS4KKworICAgICAgICAqIHdvcmtlcnMvc2Vydmlj
ZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6OnJlZ2lz
dHJhdGlvblN0b3JlSW1wb3J0Q29tcGxldGUpOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6
OlNXU2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjpnZXRPcmlnaW5zV2l0aFJl
Z2lzdHJhdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6OnBlcmZvcm1HZXRPcmln
aW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3MpOgorICAgICAgICAqIHdvcmtlcnMvc2Vydmlj
ZS9zZXJ2ZXIvU1dTZXJ2ZXIuaDoKKwogMjAxNy0xMi0xNSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpA
YXBwbGUuY29tPgogCiAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS5odHRwcy5odG1sIGlzIHNvbWV0aW1l
cyBjcmFzaGluZyBpbiBEZWJ1ZyBidWlsZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZmM4YTAwNWMyZGZhMWM4YzA1
YzMwMDg1YjFhYmFiMGIzOWE3NmUzOS4uMmIxYTIzN2E4ZTk3NDgyNjYwZWM0MWU2MWZjMGE2OWE0
NTgyMGNlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxNy0xMi0xNSAgQnJhZHkgRWlk
c29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IGdldHRpbmcgU2Vy
dmljZVdvcmtlciByZWdpc3RyYXRpb25zIGZvciB0aGUgV0tXZWJzaXRlRGF0YVN0b3JlIEFQSQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgwODg2CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgQ2hyaXMgRHVtZXouCisKKyAgICAgICAgKiBTdG9yYWdlUHJv
Y2Vzcy9TdG9yYWdlUHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6OlN0b3JhZ2VQcm9jZXNz
OjpmZXRjaFdlYnNpdGVEYXRhKToKKwogMjAxNy0xMi0xNSAgQnJhZHkgRWlkc29uICA8YmVpZHNv
bkBhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSBzdXJlIG9ubHkgV2Vic2l0ZURhdGFTdG9yZXMg
d2l0aCB2YWxpZCBTZXNzaW9uSURzIHJlZ2lzdGVyIHRoZW1zZWx2ZXMuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCmluZGV4IDdmMTY4
Njg0MTlkMmEzMmY5ZjA4NmNkZDk5NGVjYjIzZWFlMmM3ZGMuLjViMGQxYTY3YmJhNmM2NTNhMGYx
MjQxNTgxMDQ0NmQwMmI0MjU2NzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
c2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
c2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCkBAIC0xMDgsNyArMTA4LDEwIEBAIFNXU2VydmVy
UmVnaXN0cmF0aW9uKiBTV1NlcnZlcjo6Z2V0UmVnaXN0cmF0aW9uKGNvbnN0IFNlcnZpY2VXb3Jr
ZXJSZWdpc3RyYXRpb25LCiAKIHZvaWQgU1dTZXJ2ZXI6OnJlZ2lzdHJhdGlvblN0b3JlSW1wb3J0
Q29tcGxldGUoKQogeworICAgIEFTU0VSVCghbV9pbXBvcnRDb21wbGV0ZWQpOworICAgIG1faW1w
b3J0Q29tcGxldGVkID0gdHJ1ZTsKICAgICBtX29yaWdpblN0b3JlLT5pbXBvcnRDb21wbGV0ZSgp
OworICAgIHBlcmZvcm1HZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3MoKTsKIH0K
IAogdm9pZCBTV1NlcnZlcjo6YWRkUmVnaXN0cmF0aW9uRnJvbVN0b3JlKFNlcnZpY2VXb3JrZXJD
b250ZXh0RGF0YSYmIGRhdGEpCkBAIC0yMjgsNyArMjMxLDcgQEAgdm9pZCBTV1NlcnZlcjo6Q29u
bmVjdGlvbjo6c3luY1Rlcm1pbmF0ZVdvcmtlcihTZXJ2aWNlV29ya2VySWRlbnRpZmllciBpZGVu
dGlmaWUKICAgICAgICAgbV9zZXJ2ZXIuc3luY1Rlcm1pbmF0ZVdvcmtlcigqd29ya2VyKTsKIH0K
IAotICAgIFNXU2VydmVyOjpTV1NlcnZlcihVbmlxdWVSZWY8U1dPcmlnaW5TdG9yZT4mJiBvcmln
aW5TdG9yZSwgU3RyaW5nJiYgcmVnaXN0cmF0aW9uRGF0YWJhc2VEaXJlY3RvcnksIFBBTDo6U2Vz
c2lvbklEIHNlc3Npb25JRCkKK1NXU2VydmVyOjpTV1NlcnZlcihVbmlxdWVSZWY8U1dPcmlnaW5T
dG9yZT4mJiBvcmlnaW5TdG9yZSwgU3RyaW5nJiYgcmVnaXN0cmF0aW9uRGF0YWJhc2VEaXJlY3Rv
cnksIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKICAgICA6IG1fb3JpZ2luU3RvcmUoV1RGTW92
ZShvcmlnaW5TdG9yZSkpCiAgICAgLCBtX3JlZ2lzdHJhdGlvblN0b3JlKCp0aGlzLCBXVEZNb3Zl
KHJlZ2lzdHJhdGlvbkRhdGFiYXNlRGlyZWN0b3J5KSkKICAgICAsIG1fc2Vzc2lvbklEKHNlc3Np
b25JRCkKQEAgLTc2OCw2ICs3NzEsMzMgQEAgdm9pZCBTV1NlcnZlcjo6Q29ubmVjdGlvbjo6cmVz
b2x2ZVJlZ2lzdHJhdGlvblJlYWR5UmVxdWVzdHMoU1dTZXJ2ZXJSZWdpc3RyYXRpb24KICAgICB9
KTsKIH0KIAordm9pZCBTV1NlcnZlcjo6Z2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zKFdURjo6
RnVuY3Rpb248dm9pZChjb25zdCBIYXNoU2V0PFNlY3VyaXR5T3JpZ2luRGF0YT4mKT4gY2FsbGJh
Y2spCit7CisgICAgbV9nZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFja3MuYXBwZW5k
KFdURk1vdmUoY2FsbGJhY2spKTsKKworICAgIGlmIChtX2ltcG9ydENvbXBsZXRlZCkKKyAgICAg
ICAgcGVyZm9ybUdldE9yaWdpbnNXaXRoUmVnaXN0cmF0aW9uc0NhbGxiYWNrcygpOworfQorCit2
b2lkIFNXU2VydmVyOjpwZXJmb3JtR2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zQ2FsbGJhY2tz
KCkKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIEFTU0VSVChtX2ltcG9ydENv
bXBsZXRlZCk7CisKKyAgICBpZiAobV9nZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlvbnNDYWxsYmFj
a3MuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBIYXNoU2V0PFNlY3VyaXR5T3Jp
Z2luRGF0YT4gb3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zOworICAgIGZvciAoYXV0byYga2V5IDog
bV9yZWdpc3RyYXRpb25zLmtleXMoKSkgeworICAgICAgICBvcmlnaW5zV2l0aFJlZ2lzdHJhdGlv
bnMuYWRkKGtleS50b3BPcmlnaW4oKSk7CisgICAgICAgIG9yaWdpbnNXaXRoUmVnaXN0cmF0aW9u
cy5hZGQoU2VjdXJpdHlPcmlnaW5EYXRhIHsga2V5LnNjb3BlKCkucHJvdG9jb2woKS50b1N0cmlu
ZygpLCBrZXkuc2NvcGUoKS5ob3N0KCksIGtleS5zY29wZSgpLnBvcnQoKSB9KTsKKyAgICB9CisK
KyAgICBhdXRvIGNhbGxiYWNrcyA9IFdURk1vdmUobV9nZXRPcmlnaW5zV2l0aFJlZ2lzdHJhdGlv
bnNDYWxsYmFja3MpOworICAgIGZvciAoYXV0byYgY2FsbGJhY2sgOiBjYWxsYmFja3MpCisgICAg
ICAgIGNhbGxiYWNrKG9yaWdpbnNXaXRoUmVnaXN0cmF0aW9ucyk7Cit9CisKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShTRVJWSUNFX1dPUktFUikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaAppbmRleCBjNDZh
YWU0OTRkOWMzZDM1MWRiOWFiYjZhNTExOWZjYTk1Njk4NjhlLi4zMjBlNmFmYmQ0Mjg5YjZhMDcz
NThmNThlOTU1ZmFmYjExNjBjZjEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9z
ZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oCkBAIC0xNzMsNiArMTczLDggQEAgcHVibGljOgogICAg
IHZvaWQgYWRkUmVnaXN0cmF0aW9uRnJvbVN0b3JlKFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYm
KTsKICAgICB2b2lkIHJlZ2lzdHJhdGlvblN0b3JlSW1wb3J0Q29tcGxldGUoKTsKIAorICAgIFdF
QkNPUkVfRVhQT1JUIHZvaWQgZ2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zKFdURjo6RnVuY3Rp
b248dm9pZChjb25zdCBIYXNoU2V0PFNlY3VyaXR5T3JpZ2luRGF0YT4mKT4pOworCiBwcml2YXRl
OgogICAgIHZvaWQgcmVnaXN0ZXJDb25uZWN0aW9uKENvbm5lY3Rpb24mKTsKICAgICB2b2lkIHVu
cmVnaXN0ZXJDb25uZWN0aW9uKENvbm5lY3Rpb24mKTsKQEAgLTE5Niw2ICsxOTgsOCBAQCBwcml2
YXRlOgogICAgIFNXU2VydmVyUmVnaXN0cmF0aW9uKiByZWdpc3RyYXRpb25Gcm9tU2VydmljZVdv
cmtlcklkZW50aWZpZXIoU2VydmljZVdvcmtlcklkZW50aWZpZXIpOwogICAgIHZvaWQgZm9yRWFj
aENsaWVudEZvck9yaWdpbihjb25zdCBDbGllbnRPcmlnaW4mLCBjb25zdCBXVEY6OkZ1bmN0aW9u
PHZvaWQoU2VydmljZVdvcmtlckNsaWVudERhdGEmKT4mKTsKIAorICAgIHZvaWQgcGVyZm9ybUdl
dE9yaWdpbnNXaXRoUmVnaXN0cmF0aW9uc0NhbGxiYWNrcygpOworCiAgICAgZW51bSBUZXJtaW5h
dGlvbk1vZGUgewogICAgICAgICBTeW5jaHJvbm91cywKICAgICAgICAgQXN5bmNocm9ub3VzLApA
QCAtMjMwLDYgKzIzNCw4IEBAIHByaXZhdGU6CiAgICAgRGVxdWU8U2VydmljZVdvcmtlckNvbnRl
eHREYXRhPiBtX3BlbmRpbmdDb250ZXh0RGF0YXM7CiAgICAgSGFzaE1hcDxTZXJ2aWNlV29ya2Vy
SWRlbnRpZmllciwgVmVjdG9yPFJ1blNlcnZpY2VXb3JrZXJDYWxsYmFjaz4+IG1fc2VydmljZVdv
cmtlclJ1blJlcXVlc3RzOwogICAgIFBBTDo6U2Vzc2lvbklEIG1fc2Vzc2lvbklEOworICAgIGJv
b2wgbV9pbXBvcnRDb21wbGV0ZWQgeyBmYWxzZSB9OworICAgIFZlY3RvcjxXVEY6OkZ1bmN0aW9u
PHZvaWQoY29uc3QgSGFzaFNldDxTZWN1cml0eU9yaWdpbkRhdGE+Jik+PiBtX2dldE9yaWdpbnNX
aXRoUmVnaXN0cmF0aW9uc0NhbGxiYWNrczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU3RvcmFnZVByb2Nlc3MvU3RvcmFnZVByb2Nlc3Mu
Y3BwIGIvU291cmNlL1dlYktpdC9TdG9yYWdlUHJvY2Vzcy9TdG9yYWdlUHJvY2Vzcy5jcHAKaW5k
ZXggOWUyNTkwYzZlMWIxNjczNWNkOTU5ODU3ZGYxYjNmYjM1MDg0M2Y0Mi4uMTcyZTJhYzM3ZTRh
YThkODAzZWVkNWRiOWRiOGYwNmRjMTFhMGVjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9T
dG9yYWdlUHJvY2Vzcy9TdG9yYWdlUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TdG9y
YWdlUHJvY2Vzcy9TdG9yYWdlUHJvY2Vzcy5jcHAKQEAgLTI2NSwzMyArMjY1LDM1IEBAIHZvaWQg
U3RvcmFnZVByb2Nlc3M6OmNyZWF0ZVN0b3JhZ2VUb1dlYlByb2Nlc3NDb25uZWN0aW9uKGJvb2wg
aXNTZXJ2aWNlV29ya2VyUHJvCiAKIHZvaWQgU3RvcmFnZVByb2Nlc3M6OmZldGNoV2Vic2l0ZURh
dGEoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBPcHRpb25TZXQ8V2Vic2l0ZURhdGFUeXBlPiB3
ZWJzaXRlRGF0YVR5cGVzLCB1aW50NjRfdCBjYWxsYmFja0lEKQogewotICAgIGF1dG8gY29tcGxl
dGlvbkhhbmRsZXIgPSBbdGhpcywgY2FsbGJhY2tJRF0oY29uc3QgV2Vic2l0ZURhdGEmIHdlYnNp
dGVEYXRhKSB7Ci0gICAgICAgIHBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQoTWVzc2Fn
ZXM6OlN0b3JhZ2VQcm9jZXNzUHJveHk6OkRpZEZldGNoV2Vic2l0ZURhdGEoY2FsbGJhY2tJRCwg
d2Vic2l0ZURhdGEpLCAwKTsKLSAgICB9OworICAgIGF1dG8gd2Vic2l0ZURhdGEgPSBzdGQ6Om1h
a2VfdW5pcXVlPFdlYnNpdGVEYXRhPigpOworICAgIFdlYnNpdGVEYXRhKiByYXdXZWJzaXRlRGF0
YSA9IHdlYnNpdGVEYXRhLmdldCgpOworICAgIGF1dG8gY2FsbGJhY2tBZ2dyZWdhdG9yID0gQ2Fs
bGJhY2tBZ2dyZWdhdG9yOjpjcmVhdGUoW3RoaXMsIHdlYnNpdGVEYXRhID0gV1RGTW92ZSh3ZWJz
aXRlRGF0YSksIGNhbGxiYWNrSURdKCkgeworICAgICAgICBwYXJlbnRQcm9jZXNzQ29ubmVjdGlv
bigpLT5zZW5kKE1lc3NhZ2VzOjpTdG9yYWdlUHJvY2Vzc1Byb3h5OjpEaWRGZXRjaFdlYnNpdGVE
YXRhKGNhbGxiYWNrSUQsICp3ZWJzaXRlRGF0YSksIDApOworICAgIH0pOwogCisgICAgU3RyaW5n
IHBhdGg7CiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQotICAgIGlmICh3ZWJzaXRlRGF0YVR5
cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbnMp
KQotICAgICAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIHBhdGggPSBtX3N3RGF0YWJhc2VQYXRo
cy5nZXQoc2Vzc2lvbklEKTsKKyAgICBpZiAoIXBhdGguaXNFbXB0eSgpICYmIHdlYnNpdGVEYXRh
VHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9u
cykpIHsKKyAgICAgICAgc3dTZXJ2ZXJGb3JTZXNzaW9uKHNlc3Npb25JRCkuZ2V0T3JpZ2luc1dp
dGhSZWdpc3RyYXRpb25zKFtyYXdXZWJzaXRlRGF0YSwgY2FsbGJhY2tBZ2dyZWdhdG9yID0gY2Fs
bGJhY2tBZ2dyZWdhdG9yLmNvcHlSZWYoKV0oY29uc3QgSGFzaFNldDxTZWN1cml0eU9yaWdpbkRh
dGE+JiBvcmlnaW5zKSBtdXRhYmxlIHsKKyAgICAgICAgICAgIGZvciAoYXV0byYgb3JpZ2luIDog
b3JpZ2lucykKKyAgICAgICAgICAgICAgICByYXdXZWJzaXRlRGF0YS0+ZW50cmllcy5hcHBlbmQo
eyBvcmlnaW4sIFdlYnNpdGVEYXRhVHlwZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbnMsIDAg
fSk7CisgICAgICAgIH0pOworICAgIH0KICNlbmRpZgogCiAjaWYgRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCi0gICAgU3RyaW5nIHBhdGggPSBtX2lkYkRhdGFiYXNlUGF0aHMuZ2V0KHNlc3Npb25J
RCk7CisgICAgcGF0aCA9IG1faWRiRGF0YWJhc2VQYXRocy5nZXQoc2Vzc2lvbklEKTsKICAgICBp
ZiAoIXBhdGguaXNFbXB0eSgpICYmIHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURh
dGFUeXBlOjpJbmRleGVkREJEYXRhYmFzZXMpKSB7CiAgICAgICAgIC8vIEZJWE1FOiBQaWNrIHRo
ZSByaWdodCBkYXRhYmFzZSBzdG9yZSBiYXNlZCBvbiB0aGUgc2Vzc2lvbiBJRC4KLSAgICAgICAg
cG9zdFN0b3JhZ2VUYXNrKENyb3NzVGhyZWFkVGFzayhbdGhpcywgY29tcGxldGlvbkhhbmRsZXIg
PSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSwgcGF0aCA9IFdURk1vdmUocGF0aCldKCkgbXV0
YWJsZSB7Ci0gICAgICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW2NvbXBsZXRpb25I
YW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlciksIHNlY3VyaXR5T3JpZ2lucyA9IGlu
ZGV4ZWREYXRhYmFzZU9yaWdpbnMocGF0aCldIHsKLSAgICAgICAgICAgICAgICBXZWJzaXRlRGF0
YSB3ZWJzaXRlRGF0YTsKKyAgICAgICAgcG9zdFN0b3JhZ2VUYXNrKENyb3NzVGhyZWFkVGFzayhb
dGhpcywgY2FsbGJhY2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdhdG9yLmNvcHlSZWYoKSwg
cGF0aCA9IFdURk1vdmUocGF0aCksIHJhd1dlYnNpdGVEYXRhXSgpIG11dGFibGUgeworICAgICAg
ICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFtjYWxsYmFja0FnZ3JlZ2F0b3IgPSBXVEZN
b3ZlKGNhbGxiYWNrQWdncmVnYXRvciksIHJhd1dlYnNpdGVEYXRhLCBzZWN1cml0eU9yaWdpbnMg
PSBpbmRleGVkRGF0YWJhc2VPcmlnaW5zKHBhdGgpXSB7CiAgICAgICAgICAgICAgICAgZm9yIChj
b25zdCBhdXRvJiBzZWN1cml0eU9yaWdpbiA6IHNlY3VyaXR5T3JpZ2lucykKLSAgICAgICAgICAg
ICAgICAgICAgd2Vic2l0ZURhdGEuZW50cmllcy5hcHBlbmQoeyBzZWN1cml0eU9yaWdpbiwgV2Vi
c2l0ZURhdGFUeXBlOjpJbmRleGVkREJEYXRhYmFzZXMsIDAgfSk7Ci0KLSAgICAgICAgICAgICAg
ICBjb21wbGV0aW9uSGFuZGxlcih3ZWJzaXRlRGF0YSk7CisgICAgICAgICAgICAgICAgICAgIHJh
d1dlYnNpdGVEYXRhLT5lbnRyaWVzLmFwcGVuZCh7IHNlY3VyaXR5T3JpZ2luLCBXZWJzaXRlRGF0
YVR5cGU6OkluZGV4ZWREQkRhdGFiYXNlcywgMCB9KTsKICAgICAgICAgICAgIH0pOwogICAgICAg
ICB9KSk7Ci0gICAgICAgIHJldHVybjsKICAgICB9CiAjZW5kaWYKLQotICAgIGNvbXBsZXRpb25I
YW5kbGVyKHsgfSk7CiB9CiAKIHZvaWQgU3RvcmFnZVByb2Nlc3M6OmRlbGV0ZVdlYnNpdGVEYXRh
KFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4gd2Vi
c2l0ZURhdGFUeXBlcywgc3RkOjpjaHJvbm86OnN5c3RlbV9jbG9jazo6dGltZV9wb2ludCBtb2Rp
ZmllZFNpbmNlLCB1aW50NjRfdCBjYWxsYmFja0lEKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>