<?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>182081</bug_id>
          
          <creation_ts>2018-01-24 18:27:44 -0800</creation_ts>
          <short_desc>[Win] MSVC doesn&apos;t seem to like &quot;friend class NeverDestroyed&lt;Foo&gt;&quot;</short_desc>
          <delta_ts>2018-02-02 11:40:18 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>177202</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Fujii Hironori">fujii</reporter>
          <assigned_to name="Fujii Hironori">fujii</assigned_to>
          <cc>achristensen</cc>
    
    <cc>basuke</cc>
    
    <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jiewen_tan</cc>
    
    <cc>pvollan</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>Yousuke.Kimoto</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1392877</commentid>
    <comment_count>0</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-01-24 18:27:44 -0800</bug_when>
    <thetext>[Win] MSVC doesn&apos;t seem to like &quot;friend class NeverDestroyed&lt;Foo&gt;&quot;

While trying to build WebKit2 for Windows (Bug 181885), I see a lot of compilation errors that NeverDestroyed is not a friend like following:

&gt; 1&gt;------ Build started: Project: WebKit (WebKit\WebKit), Configuration: Debug x64 ------
&gt; 1&gt;NetworkProcess.cpp
&gt; 1&gt;C:\webkit\gb\WebKitBuild\Debug\DerivedSources\ForwardingHeaders\wtf/NeverDestroyed.h(50): error C2248: &apos;WebKit::NetworkProcess::NetworkProcess&apos;: cannot access private member declared in class &apos;WebKit::NetworkProcess&apos;
&gt; 1&gt;C:\webkit\gb\Source\WebKit\NetworkProcess\NetworkProcess.cpp(104): note: see declaration of &apos;WebKit::NetworkProcess::NetworkProcess&apos;
&gt; 1&gt;c:\webkit\gb\source\webkit\networkprocess\NetworkProcess.h(79): note: see declaration of &apos;WebKit::NetworkProcess&apos;
&gt; 1&gt;C:\webkit\gb\Source\WebKit\NetworkProcess\NetworkProcess.cpp(100): note: see reference to function template instantiation &apos;WTF::NeverDestroyed&lt;WebKit::NetworkProcess&gt;::NeverDestroyed&lt;&gt;(void)&apos; being compiled
&gt; 1&gt;C:\webkit\gb\Source\WebKit\NetworkProcess\NetworkProcess.cpp(100): note: see reference to function template instantiation &apos;WTF::NeverDestroyed&lt;WebKit::NetworkProcess&gt;::NeverDestroyed&lt;&gt;(void)&apos; being compiled
&gt; 1&gt;Done building project &quot;WebKit.vcxproj&quot; -- FAILED.
&gt; ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

If I apply a following patch, it can build:

&gt; diff --git a/Source/WebKit/NetworkProcess/NetworkProcess.h b/Source/WebKit/NetworkProcess/NetworkProcess.h
&gt; index a9c9818dd03..15a7469cb23 100644
&gt; --- a/Source/WebKit/NetworkProcess/NetworkProcess.h
&gt; +++ b/Source/WebKit/NetworkProcess/NetworkProcess.h
&gt; @@ -78,8 +78,8 @@ class Cache;
&gt;  
&gt;  class NetworkProcess : public ChildProcess, private DownloadManager::Client {
&gt;      WTF_MAKE_NONCOPYABLE(NetworkProcess);
&gt; -    friend class NeverDestroyed&lt;NetworkProcess&gt;;
&gt; -    friend class NeverDestroyed&lt;DownloadManager&gt;;
&gt; +    friend NeverDestroyed&lt;NetworkProcess&gt;;
&gt; +    friend NeverDestroyed&lt;DownloadManager&gt;;
&gt;  public:
&gt;      static NetworkProcess&amp; singleton();
&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392878</commentid>
    <comment_count>1</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-01-24 18:29:33 -0800</bug_when>
    <thetext>(In reply to Fujii Hironori from comment #0)
&gt; [Win] MSVC doesn&apos;t seem to like &quot;friend class NeverDestroyed&lt;Foo&gt;&quot;
&gt; 
&gt; While trying to build WebKit2 for Windows (Bug 181885), 

Incorrect bug id. it&apos;s Bug 177202.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392882</commentid>
    <comment_count>2</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-01-24 18:52:06 -0800</bug_when>
    <thetext>I can&apos;t find an answer in this page.

friend declaration - cppreference.com
http://en.cppreference.com/w/cpp/language/friend</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392890</commentid>
    <comment_count>3</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-01-24 19:22:13 -0800</bug_when>
    <thetext>https://timsong-cpp.github.io/cppwp/n4140/temp.friend

&gt; template&lt;class T&gt; class task;
&gt; template&lt;class T&gt; task&lt;T&gt;* preempt(task&lt;T&gt;*);
&gt; 
&gt; template&lt;class T&gt; class task {
&gt;   friend void next_time();
&gt;   friend void process(task&lt;T&gt;*);
&gt;   friend task&lt;T&gt;* preempt&lt;T&gt;(task&lt;T&gt;*);
&gt;   template&lt;class C&gt; friend int func(C);
&gt; 
&gt;   friend class task&lt;int&gt;;
&gt;   template&lt;class P&gt; friend class frd;
&gt; };
[...]
&gt; [...] Similarly, each specialization of the task class template has the class template specialization task&lt;int&gt; as a friend, [...]

If I understand correctly, &quot;friend class NeverDestroyed&lt;Foo&gt;&quot; is a valid style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392892</commentid>
    <comment_count>4</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-01-24 19:26:58 -0800</bug_when>
    <thetext>Specifying command line switch /std:c++14, /std:c++17 or /std:c++latest doesn&apos;t help at all. (I&apos;m using VS 2017 version 15.5.2)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392920</commentid>
    <comment_count>5</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-01-24 21:09:31 -0800</bug_when>
    <thetext>Repro: &lt;https://gist.github.com/fujii/fea40827887237053b537f48807a8963&gt;
The template friend class, which belongs to a different namespace, can&apos;t access private member if its friend declaration is specified without the namespace and with class keyword.
I sent a bug report to MS compiler team.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1393391</commentid>
    <comment_count>6</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-01-25 18:53:37 -0800</bug_when>
    <thetext>I got their reply:

&gt; Looks like this is already fixed with VS2017 15.6 preview 3.

I also confirmed this problem was fixed by it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1395708</commentid>
    <comment_count>7</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-02-01 17:26:57 -0800</bug_when>
    <thetext>can&apos;t wait VS2017 15.6 release. reopen.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1395712</commentid>
    <comment_count>8</comment_count>
      <attachid>332926</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-02-01 17:43:26 -0800</bug_when>
    <thetext>Created attachment 332926
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1395882</commentid>
    <comment_count>9</comment_count>
      <attachid>332926</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-02-02 09:13:40 -0800</bug_when>
    <thetext>Comment on attachment 332926
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1395926</commentid>
    <comment_count>10</comment_count>
      <attachid>332926</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-02 11:38:11 -0800</bug_when>
    <thetext>Comment on attachment 332926
Patch

Clearing flags on attachment: 332926

Committed r228021: &lt;https://trac.webkit.org/changeset/228021&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1395927</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-02 11:38:14 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1395928</commentid>
    <comment_count>12</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-02-02 11:40:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/37164230&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>332926</attachid>
            <date>2018-02-01 17:43:26 -0800</date>
            <delta_ts>2018-02-02 11:38:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-182081-20180202104324.patch</filename>
            <type>text/plain</type>
            <size>14055</size>
            <attacher name="Fujii Hironori">fujii</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI3OTkxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDQ3MzU1Mjk4NDI4NmMwZWRi
Yjk3YWNmODllZjNmMjQ4MDJkNzk5Y2QuLjFmZGJmYjhiZWU2MTg0YzQ0YThhMjc1Zjc4ZjY3ODUx
YWVhNDI4NTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYgQEAKKzIwMTgtMDItMDEgIEZ1amlpIEhp
cm9ub3JpICA8SGlyb25vcmkuRnVqaWlAc29ueS5jb20+CisKKyAgICAgICAgW1dpbl0gTVNWQyBk
b2Vzbid0IHNlZW0gdG8gbGlrZSAiZnJpZW5kIGNsYXNzIE5ldmVyRGVzdHJveWVkPEZvbz4iCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODIwODEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgdGVtcGxh
dGUgZnJpZW5kIGNsYXNzLCB3aGljaCBiZWxvbmdzIHRvIGEgZGlmZmVyZW50IG5hbWVzcGFjZSwK
KyAgICAgICAgY2FuJ3QgYWNjZXNzIHByaXZhdGUgbWVtYmVyIGlmIGl0cyBmcmllbmQgZGVjbGFy
YXRpb24gaXMgc3BlY2lmaWVkCisgICAgICAgIHdpdGhvdXQgdGhlIG5hbWVzcGFjZSBhbmQgd2l0
aCBjbGFzcyBrZXl3b3JkLgorCisgICAgICAgIFJlcGxhY2VkICJmcmllbmQgY2xhc3MgTmV2ZXJE
ZXN0cm95ZWQ8Rm9vPiIgd2l0aCAiZnJpZW5kIE5ldmVyRGVzdHJveWVkPEZvbz4iLgorCisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaDoKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy9jYXB0dXJlL05ldHdvcmtDYXB0dXJlTWFuYWdlci5oOgorICAgICAgICAqIFBsdWdp
blByb2Nlc3MvUGx1Z2luUHJvY2Vzcy5oOgorICAgICAgICAqIFNoYXJlZC9DYWxsYmFja0lELmg6
CisgICAgICAgICogU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvdGhyZWFkZWRjb21wb3NpdG9y
L0NvbXBvc2l0aW5nUnVuTG9vcC5jcHA6CisgICAgICAgICogU3RvcmFnZVByb2Nlc3MvU3RvcmFn
ZVByb2Nlc3MuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzTWFu
YWdlci5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9QbHVnaW5zL2d0ay9QbHVnaW5JbmZvQ2FjaGUu
aDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvV2ViUGFzdGVib2FyZFByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL2d0ay9BY2Nl
bGVyYXRlZEJhY2tpbmdTdG9yZVgxMS5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL2d0ay9IYXJk
d2FyZUFjY2VsZXJhdGlvbk1hbmFnZXIuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvZ3RrL1dheWxh
bmRDb21wb3NpdG9yLmg6CisgICAgICAgICogVUlQcm9jZXNzL2xpbnV4L01lbW9yeVByZXNzdXJl
TW9uaXRvci5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9tYWMvU2VydmljZXNDb250cm9sbGVyLmg6
CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvZ2xpYi9XZWJLaXRFeHRl
bnNpb25NYW5hZ2VyLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL1dlYlBsdWdpbklu
Zm9Qcm92aWRlci5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUGFz
dGVib2FyZE92ZXJyaWRlcy5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViUGxhdGZvcm1TdHJhdGVnaWVzLmg6CisKIDIwMTgtMDItMDEgIEJyZW50IEZ1bGdoYW0gIDxi
ZnVsZ2hhbUBhcHBsZS5jb20+CiAKICAgICAgICAgSW1wcm92ZSBOZXR3b3JrUmVzb3VyY2VMb2dn
ZXIgdG8gcmVwb3J0IGJsb2NrZWQgKHZlcnN1cyBub24tcGFydGl0aW9uZWQpIGNvb2tpZXMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaCBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaAppbmRleCBhOWM5
ODE4ZGQwMzljOGE5NTdkMjIyZGQwYmIwZTJiYzdhZGFlZWNhLi4xNWE3NDY5Y2IyM2I2NWZhYTRl
MGZjNDdhZmYxMzQ4NzA5NDIwNzI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL05ldHdvcmtQcm9jZXNzLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9OZXR3b3JrUHJvY2Vzcy5oCkBAIC03OCw4ICs3OCw4IEBAIGNsYXNzIENhY2hlOwogCiBjbGFz
cyBOZXR3b3JrUHJvY2VzcyA6IHB1YmxpYyBDaGlsZFByb2Nlc3MsIHByaXZhdGUgRG93bmxvYWRN
YW5hZ2VyOjpDbGllbnQgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKE5ldHdvcmtQcm9jZXNz
KTsKLSAgICBmcmllbmQgY2xhc3MgTmV2ZXJEZXN0cm95ZWQ8TmV0d29ya1Byb2Nlc3M+OwotICAg
IGZyaWVuZCBjbGFzcyBOZXZlckRlc3Ryb3llZDxEb3dubG9hZE1hbmFnZXI+OworICAgIGZyaWVu
ZCBOZXZlckRlc3Ryb3llZDxOZXR3b3JrUHJvY2Vzcz47CisgICAgZnJpZW5kIE5ldmVyRGVzdHJv
eWVkPERvd25sb2FkTWFuYWdlcj47CiBwdWJsaWM6CiAgICAgc3RhdGljIE5ldHdvcmtQcm9jZXNz
JiBzaW5nbGV0b24oKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9jYXB0dXJlL05ldHdvcmtDYXB0dXJlTWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9jYXB0dXJlL05ldHdvcmtDYXB0dXJlTWFuYWdlci5oCmluZGV4IDUwZWQ1ZTIzZDE4
NTIxZDU4N2U5ODdiMWRkMjczMmYxZTA1YWIwY2MuLjNjNmI1MDEwZGEyMzQxZTY4MmNiMWNhMjQw
MWEwNjYwZjM5Yzc0MWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
Y2FwdHVyZS9OZXR3b3JrQ2FwdHVyZU1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL2NhcHR1cmUvTmV0d29ya0NhcHR1cmVNYW5hZ2VyLmgKQEAgLTU1LDcgKzU1LDcg
QEAgY2xhc3MgUmVzb3VyY2U7CiAgKi8KIGNsYXNzIE1hbmFnZXIgewogICAgIFdURl9NQUtFX05P
TkNPUFlBQkxFKE1hbmFnZXIpOwotICAgIGZyaWVuZCBjbGFzcyBXVEY6Ok5ldmVyRGVzdHJveWVk
PE1hbmFnZXI+OworICAgIGZyaWVuZCBOZXZlckRlc3Ryb3llZDxNYW5hZ2VyPjsKIAogcHVibGlj
OgogICAgIGVudW0gUmVjb3JkUmVwbGF5TW9kZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1BsdWdpblByb2Nlc3MvUGx1Z2luUHJvY2Vzcy5oIGIvU291cmNlL1dlYktpdC9QbHVnaW5Qcm9j
ZXNzL1BsdWdpblByb2Nlc3MuaAppbmRleCBkZWE1MGFmZTUwMDBjNWYyOTBjY2JhNmVmM2U2NGQw
NzcyN2NlYzM0Li43YTI3Y2Q1YzExOTEzYzQ0OGQ5NjA5ODM0OTUzNDE5MWU0ZGEzNTlkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsdWdpblByb2Nlc3MvUGx1Z2luUHJvY2Vzcy5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvUGx1Z2luUHJvY2Vzcy9QbHVnaW5Qcm9jZXNzLmgKQEAgLTQ1LDcgKzQ1
LDggQEAgc3RydWN0IFBsdWdpblByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM7CiBjbGFzcyBQbHVn
aW5Qcm9jZXNzIDogcHVibGljIENoaWxkUHJvY2VzcwogewogICAgIFdURl9NQUtFX05PTkNPUFlB
QkxFKFBsdWdpblByb2Nlc3MpOwotICAgIGZyaWVuZCBjbGFzcyBOZXZlckRlc3Ryb3llZDxQbHVn
aW5Qcm9jZXNzPjsKKyAgICBmcmllbmQgTmV2ZXJEZXN0cm95ZWQ8UGx1Z2luUHJvY2Vzcz47CisK
IHB1YmxpYzoKICAgICBzdGF0aWMgUGx1Z2luUHJvY2VzcyYgc2luZ2xldG9uKCk7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NhbGxiYWNrSUQuaCBiL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL0NhbGxiYWNrSUQuaAppbmRleCBjNWQ5M2RjNzQ0OThhOWUwYWIxZTk1NGI2NGIwYTM3
OWVkOGYyOTk0Li44ZjE4ZDRkY2Y3NzBjYjkwMWE5OWY2M2E5YWY1NWE0NmY2YzVjZWUzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9DYWxsYmFja0lELmgKKysrIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvQ2FsbGJhY2tJRC5oCkBAIC05Niw3ICs5Niw3IEBAIHByaXZhdGU6CiAgICAg
dGVtcGxhdGUgPHR5cGVuYW1lIENhbGxiYWNrVHlwZT4gZnJpZW5kIGNsYXNzIFNwZWNpZmljQ2Fs
bGJhY2tNYXA7CiAgICAgZnJpZW5kIGNsYXNzIE9wdGlvbmFsQ2FsbGJhY2tJRDsKICAgICBmcmll
bmQgc3RydWN0IFdURjo6Q2FsbGJhY2tJREhhc2g7Ci0gICAgZnJpZW5kIHN0cnVjdCBIYXNoVHJh
aXRzPFdlYktpdDo6Q2FsbGJhY2tJRD47CisgICAgZnJpZW5kIEhhc2hUcmFpdHM8V2ViS2l0OjpD
YWxsYmFja0lEPjsKIAogICAgIHVpbnQ2NF90IG1faWQgeyBIYXNoVHJhaXRzPHVpbnQ2NF90Pjo6
ZW1wdHlWYWx1ZSgpIH07CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQ29v
cmRpbmF0ZWRHcmFwaGljcy90aHJlYWRlZGNvbXBvc2l0b3IvQ29tcG9zaXRpbmdSdW5Mb29wLmNw
cCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvdGhyZWFkZWRjb21w
b3NpdG9yL0NvbXBvc2l0aW5nUnVuTG9vcC5jcHAKaW5kZXggMDg4NGNjOTkyNDI3N2Y0MmJlZDdi
ZTZhNDgwOTQ4NjJjZDMwMDVhYi4uNjExMTY5NGQ4NGY4MzY1Y2VjYjQwMzhlZTQ3ZGI5NTFkNDM4
MTI0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGlj
cy90aHJlYWRlZGNvbXBvc2l0b3IvQ29tcG9zaXRpbmdSdW5Mb29wLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL3RocmVhZGVkY29tcG9zaXRvci9Db21w
b3NpdGluZ1J1bkxvb3AuY3BwCkBAIC00MSw3ICs0MSw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewog
CiBjbGFzcyBXb3JrUXVldWVQb29sIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShXb3JrUXVl
dWVQb29sKTsKLSAgICBmcmllbmQgY2xhc3MgTmV2ZXJEZXN0cm95ZWQ8V29ya1F1ZXVlUG9vbD47
CisgICAgZnJpZW5kIE5ldmVyRGVzdHJveWVkPFdvcmtRdWV1ZVBvb2w+OwogcHVibGljOgogICAg
IHN0YXRpYyBXb3JrUXVldWVQb29sJiBzaW5nbGV0b24oKQogICAgIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvU3RvcmFnZVByb2Nlc3MvU3RvcmFnZVByb2Nlc3MuaCBiL1NvdXJjZS9XZWJL
aXQvU3RvcmFnZVByb2Nlc3MvU3RvcmFnZVByb2Nlc3MuaAppbmRleCA5Yzc2OWQxMDA2MjhjNTc5
NWNjOGU0MjBlNjlmY2UzOWJiMjc4N2E5Li4xZTUxNjVkOTllZmJlYjkxOWJjMTFiZmM3NWMxZTg2
OTUzMWQwNzMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1N0b3JhZ2VQcm9jZXNzL1N0b3Jh
Z2VQcm9jZXNzLmgKKysrIGIvU291cmNlL1dlYktpdC9TdG9yYWdlUHJvY2Vzcy9TdG9yYWdlUHJv
Y2Vzcy5oCkBAIC02Niw3ICs2Niw3IEBAIGNsYXNzIFN0b3JhZ2VQcm9jZXNzIDogcHVibGljIENo
aWxkUHJvY2VzcwogI2VuZGlmCiB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoU3RvcmFnZVBy
b2Nlc3MpOwotICAgIGZyaWVuZCBjbGFzcyBOZXZlckRlc3Ryb3llZDxTdG9yYWdlUHJvY2Vzcz47
CisgICAgZnJpZW5kIE5ldmVyRGVzdHJveWVkPFN0b3JhZ2VQcm9jZXNzPjsKIHB1YmxpYzoKICAg
ICBzdGF0aWMgU3RvcmFnZVByb2Nlc3MmIHNpbmdsZXRvbigpOwogICAgIH5TdG9yYWdlUHJvY2Vz
cygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Q
cm9jZXNzTWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Q
cm9jZXNzTWFuYWdlci5oCmluZGV4IDZmNjcwOTYyYzA3NjUzZDJkOWIxNzY4M2U5NDJhYTZmODkx
ZTY2MzMuLjZmNzFkMDc3NjYzMGJjYTkxNzEyMDdlMTA1YTNjODE3ZTkwMmU4ZjAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc01hbmFnZXIu
aAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NNYW5h
Z2VyLmgKQEAgLTUxLDcgKzUxLDcgQEAgZW51bSBjbGFzcyBXZWJzaXRlRGF0YUZldGNoT3B0aW9u
OwogCiBjbGFzcyBQbHVnaW5Qcm9jZXNzTWFuYWdlciB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFC
TEUoUGx1Z2luUHJvY2Vzc01hbmFnZXIpOwotICAgIGZyaWVuZCBjbGFzcyBOZXZlckRlc3Ryb3ll
ZDxQbHVnaW5Qcm9jZXNzTWFuYWdlcj47CisgICAgZnJpZW5kIE5ldmVyRGVzdHJveWVkPFBsdWdp
blByb2Nlc3NNYW5hZ2VyPjsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGx1Z2luUHJvY2Vzc01hbmFn
ZXImIHNpbmdsZXRvbigpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Q
bHVnaW5zL2d0ay9QbHVnaW5JbmZvQ2FjaGUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Bs
dWdpbnMvZ3RrL1BsdWdpbkluZm9DYWNoZS5oCmluZGV4IDFhZjcwODVlMjU3MGMwMTQyMDgxMGIw
NDIxNTMzZTljYzc1NmUwOGUuLjA1YWIxY2ZhMTVhYTA3MDBkMTlmOTc1ODJjZjdjMzNmOTRlYzEz
ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1BsdWdpbnMvZ3RrL1BsdWdp
bkluZm9DYWNoZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1BsdWdpbnMvZ3RrL1Bs
dWdpbkluZm9DYWNoZS5oCkBAIC0zNyw3ICszNyw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiBj
bGFzcyBQbHVnaW5JbmZvQ2FjaGUgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFBsdWdpbklu
Zm9DYWNoZSk7Ci0gICAgZnJpZW5kIGNsYXNzIE5ldmVyRGVzdHJveWVkPFBsdWdpbkluZm9DYWNo
ZT47CisgICAgZnJpZW5kIE5ldmVyRGVzdHJveWVkPFBsdWdpbkluZm9DYWNoZT47CiBwdWJsaWM6
CiAgICAgc3RhdGljIFBsdWdpbkluZm9DYWNoZSYgc2luZ2xldG9uKCk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IGY5MjZiOWVhZDU1YTZkZjE0MTM5MmY0
YTdhMGU2OGNkZGRjMzdiNmMuLjQ4MTc2Yzk3YTkxYjRmZjA1MGM4MzM0OWVjMTc5OTYyYjAwZGY1
NWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApAQCAtMjE0LDcg
KzIxNCw3IEBAIERFRklORV9ERUJVR19PTkxZX0dMT0JBTChXVEY6OlJlZkNvdW50ZWRMZWFrQ291
bnRlciwgd2ViUGFnZVByb3h5Q291bnRlciwgKCJXZWJQCiAKIGNsYXNzIEV4Y2VlZGVkRGF0YWJh
c2VRdW90YVJlY29yZHMgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEV4Y2VlZGVkRGF0YWJh
c2VRdW90YVJlY29yZHMpOyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKLSAgICBmcmllbmQgY2xh
c3MgTmV2ZXJEZXN0cm95ZWQ8RXhjZWVkZWREYXRhYmFzZVF1b3RhUmVjb3Jkcz47CisgICAgZnJp
ZW5kIE5ldmVyRGVzdHJveWVkPEV4Y2VlZGVkRGF0YWJhc2VRdW90YVJlY29yZHM+OwogcHVibGlj
OgogICAgIHN0cnVjdCBSZWNvcmQgewogICAgICAgICB1aW50NjRfdCBmcmFtZUlEOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFzdGVib2FyZFByb3h5LmggYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYXN0ZWJvYXJkUHJveHkuaAppbmRleCBhZjI3MDVkNjcx
NWUwNzA5ZDY0N2Y4YjAwNWRmZjJkMTI3MGRiYTMyLi5lODRmOGZlNGRjZjkzZDZmNzU1NDdhMzU2
NWVkYWIyNjEwOGJjMjRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
YXN0ZWJvYXJkUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYXN0ZWJv
YXJkUHJveHkuaApAQCAtNDgsNyArNDgsNyBAQCBzdHJ1Y3QgV2ViU2VsZWN0aW9uRGF0YTsKIAog
Y2xhc3MgV2ViUGFzdGVib2FyZFByb3h5IDogcHVibGljIElQQzo6TWVzc2FnZVJlY2VpdmVyIHsK
ICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShXZWJQYXN0ZWJvYXJkUHJveHkpOwotICAgIGZyaWVu
ZCBjbGFzcyBMYXp5TmV2ZXJEZXN0cm95ZWQ8V2ViUGFzdGVib2FyZFByb3h5PjsKKyAgICBmcmll
bmQgTGF6eU5ldmVyRGVzdHJveWVkPFdlYlBhc3RlYm9hcmRQcm94eT47CiBwdWJsaWM6CiAgICAg
c3RhdGljIFdlYlBhc3RlYm9hcmRQcm94eSYgc2luZ2xldG9uKCk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL2d0ay9BY2NlbGVyYXRlZEJhY2tpbmdTdG9yZVgxMS5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9ndGsvQWNjZWxlcmF0ZWRCYWNraW5nU3RvcmVYMTEu
Y3BwCmluZGV4IGJlZGE3NWU5YjNlODE0Y2FhNjNlMDZiNmM0MTg2MmQ2ZTBhMzI5NDMuLmI1Y2U4
MGY2NTUwZWNhZmM1YTRmMmFkODM5NDRmMDRjOTE0NjdjYTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL2d0ay9BY2NlbGVyYXRlZEJhY2tpbmdTdG9yZVgxMS5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvZ3RrL0FjY2VsZXJhdGVkQmFja2luZ1N0b3JlWDExLmNw
cApAQCAtNTEsNyArNTEsNyBAQCBzdGF0aWMgc3RkOjpvcHRpb25hbDxpbnQ+IHNfZGFtYWdlRXJy
b3JCYXNlOwogCiBjbGFzcyBYRGFtYWdlTm90aWZpZXIgewogICAgIFdURl9NQUtFX05PTkNPUFlB
QkxFKFhEYW1hZ2VOb3RpZmllcik7Ci0gICAgZnJpZW5kIGNsYXNzIE5ldmVyRGVzdHJveWVkPFhE
YW1hZ2VOb3RpZmllcj47CisgICAgZnJpZW5kIE5ldmVyRGVzdHJveWVkPFhEYW1hZ2VOb3RpZmll
cj47CiBwdWJsaWM6CiAgICAgc3RhdGljIFhEYW1hZ2VOb3RpZmllciYgc2luZ2xldG9uKCkKICAg
ICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9ndGsvSGFyZHdhcmVBY2Nl
bGVyYXRpb25NYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9ndGsvSGFyZHdhcmVB
Y2NlbGVyYXRpb25NYW5hZ2VyLmgKaW5kZXggNGZhMjMzYjVhODY3NWY0MGZiYzVhYzc4OThmZjlk
NmE2YTA0Yjc4Ny4uZDdjMzI2MTI0Mjk4Y2E5NjBlNDI2NDQ5NzdmNWMzMGU5MzNlOTMxNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvZ3RrL0hhcmR3YXJlQWNjZWxlcmF0aW9u
TWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2d0ay9IYXJkd2FyZUFjY2Vs
ZXJhdGlvbk1hbmFnZXIuaApAQCAtMzEsNyArMzEsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIAog
Y2xhc3MgSGFyZHdhcmVBY2NlbGVyYXRpb25NYW5hZ2VyIHsKICAgICBXVEZfTUFLRV9OT05DT1BZ
QUJMRShIYXJkd2FyZUFjY2VsZXJhdGlvbk1hbmFnZXIpOwotICAgIGZyaWVuZCBjbGFzcyBOZXZl
ckRlc3Ryb3llZDxIYXJkd2FyZUFjY2VsZXJhdGlvbk1hbmFnZXI+OworICAgIGZyaWVuZCBOZXZl
ckRlc3Ryb3llZDxIYXJkd2FyZUFjY2VsZXJhdGlvbk1hbmFnZXI+OwogcHVibGljOgogICAgIHN0
YXRpYyBIYXJkd2FyZUFjY2VsZXJhdGlvbk1hbmFnZXImIHNpbmdsZXRvbigpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9ndGsvV2F5bGFuZENvbXBvc2l0b3IuaCBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL2d0ay9XYXlsYW5kQ29tcG9zaXRvci5oCmluZGV4IGE3ZmM0
ZGNiZWI5YzMzMTJiNDU3YTUwMjUwMzQ5MzZhODdhOTM4ZjQuLmZlYTcwMzZhMDUwYTkxM2M0NjFi
OTMxMDMxNTk4NmZjNzI1ODA3MWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L2d0ay9XYXlsYW5kQ29tcG9zaXRvci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2d0
ay9XYXlsYW5kQ29tcG9zaXRvci5oCkBAIC01MCw3ICs1MCw3IEBAIGNsYXNzIFdlYlBhZ2VQcm94
eTsKIAogY2xhc3MgV2F5bGFuZENvbXBvc2l0b3IgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxF
KFdheWxhbmRDb21wb3NpdG9yKTsKLSAgICBmcmllbmQgY2xhc3MgTmV2ZXJEZXN0cm95ZWQ8V2F5
bGFuZENvbXBvc2l0b3I+OworICAgIGZyaWVuZCBOZXZlckRlc3Ryb3llZDxXYXlsYW5kQ29tcG9z
aXRvcj47CiBwdWJsaWM6CiAgICAgc3RhdGljIFdheWxhbmRDb21wb3NpdG9yJiBzaW5nbGV0b24o
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbGludXgvTWVtb3J5UHJl
c3N1cmVNb25pdG9yLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9saW51eC9NZW1vcnlQcmVz
c3VyZU1vbml0b3IuaAppbmRleCAzODc0ZDkwNTE0Mzk4M2UxOGM5NjMwOGE1NzY2NDdjMmRjZTVk
ZDZiLi5lMjUwYzg1NTE3MWY4MzlmNDM4OTY2YTdiNmQ4NWM5OTVkZmE1ZmMwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9saW51eC9NZW1vcnlQcmVzc3VyZU1vbml0b3IuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9saW51eC9NZW1vcnlQcmVzc3VyZU1vbml0b3Iu
aApAQCAtMzgsNyArMzgsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgTWVtb3J5UHJl
c3N1cmVNb25pdG9yIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShNZW1vcnlQcmVzc3VyZU1v
bml0b3IpOwotICAgIGZyaWVuZCBjbGFzcyBOZXZlckRlc3Ryb3llZDxNZW1vcnlQcmVzc3VyZU1v
bml0b3I+OworICAgIGZyaWVuZCBOZXZlckRlc3Ryb3llZDxNZW1vcnlQcmVzc3VyZU1vbml0b3I+
OwogcHVibGljOgogICAgIHN0YXRpYyBNZW1vcnlQcmVzc3VyZU1vbml0b3ImIHNpbmdsZXRvbigp
OwogICAgIHN0YXRpYyBib29sIGlzRW5hYmxlZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvbWFjL1NlcnZpY2VzQ29udHJvbGxlci5oIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvbWFjL1NlcnZpY2VzQ29udHJvbGxlci5oCmluZGV4IDNkZjdhYTk2MWVmNDQ1ZjQ1ODg2
ZTMzYTlhMDE2MTBhMjViZDcxNDEuLjY3YzYwZWU5ZGRiYjc2MzQyNzMyNTE2YmIyYzEyMjZkN2Jm
NDZhMzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9TZXJ2aWNlc0Nv
bnRyb2xsZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvU2VydmljZXNDb250
cm9sbGVyLmgKQEAgLTM2LDcgKzM2LDcgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIFNl
cnZpY2VzQ29udHJvbGxlciB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoU2VydmljZXNDb250
cm9sbGVyKTsKLSAgICBmcmllbmQgY2xhc3MgTmV2ZXJEZXN0cm95ZWQ8U2VydmljZXNDb250cm9s
bGVyPjsKKyAgICBmcmllbmQgTmV2ZXJEZXN0cm95ZWQ8U2VydmljZXNDb250cm9sbGVyPjsKIHB1
YmxpYzoKICAgICBzdGF0aWMgU2VydmljZXNDb250cm9sbGVyJiBzaW5nbGV0b24oKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9nbGli
L1dlYktpdEV4dGVuc2lvbk1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9BUEkvZ2xpYi9XZWJLaXRFeHRlbnNpb25NYW5hZ2VyLmgKaW5kZXggYjVlNDhj
NTcwYTMyYzM4OTc2MTJlNjBkNzg1YWM4NTdkMDNlOWI1Yi4uOTg0YzNhOTQ3NTIxOGRjNjg1MmYz
YWMyZDJmNjgyZGJkNDFlM2NmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0FQSS9nbGliL1dlYktpdEV4dGVuc2lvbk1hbmFnZXIuaAorKysgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2dsaWIvV2ViS2l0RXh0
ZW5zaW9uTWFuYWdlci5oCkBAIC01MSw3ICs1MSw3IEBAIHByaXZhdGU6CiAgICAgVmVjdG9yPE1v
ZHVsZSo+IG1fZXh0ZW5zaW9uTW9kdWxlczsKICAgICBHUmVmUHRyPFdlYktpdFdlYkV4dGVuc2lv
bj4gbV9leHRlbnNpb247CiAKLSAgICBmcmllbmQgY2xhc3MgTmV2ZXJEZXN0cm95ZWQ8V2ViS2l0
RXh0ZW5zaW9uTWFuYWdlcj47CisgICAgZnJpZW5kIE5ldmVyRGVzdHJveWVkPFdlYktpdEV4dGVu
c2lvbk1hbmFnZXI+OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvUGx1Z2lucy9XZWJQbHVnaW5JbmZvUHJvdmlkZXIuaCBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1dlYlBsdWdpbkluZm9Qcm92aWRlci5o
CmluZGV4IDMwZmRhNGY1Mjc2ODI5Y2Q3ZmM5ZWY5YjU0ZjYxNmFmMGFlZjliZjMuLjQ5ZjQwNTRm
NzdmNDQ3N2JiNDg3OWU4YzkxNmY1NzdhYjkzN2ZlMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1dlYlBsdWdpbkluZm9Qcm92aWRlci5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1dlYlBsdWdpbkluZm9Qcm92aWRlci5oCkBAIC0z
MSw3ICszMSw3IEBACiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgV2ViUGx1Z2luSW5mb1By
b3ZpZGVyIGZpbmFsIDogcHVibGljIFdlYkNvcmU6OlBsdWdpbkluZm9Qcm92aWRlciB7Ci0gICAg
ZnJpZW5kIGNsYXNzIE5ldmVyRGVzdHJveWVkPFdlYlBsdWdpbkluZm9Qcm92aWRlcj47CisgICAg
ZnJpZW5kIE5ldmVyRGVzdHJveWVkPFdlYlBsdWdpbkluZm9Qcm92aWRlcj47CiAKIHB1YmxpYzoK
ICAgICBzdGF0aWMgV2ViUGx1Z2luSW5mb1Byb3ZpZGVyJiBzaW5nbGV0b24oKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQYXN0ZWJvYXJk
T3ZlcnJpZGVzLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
UGFzdGVib2FyZE92ZXJyaWRlcy5oCmluZGV4IDcyNmU0Y2M2MGVjZjQ5ZTk4MThkNzgzMGVlZTYw
Y2M5MjA1OGI5MWEuLmVjMDkzM2U1MTI1ZTc5NjA0NGNiODJjMzhiMjRjNWIyMmVkZWI2YzcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQYXN0
ZWJvYXJkT3ZlcnJpZGVzLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYlBhc3RlYm9hcmRPdmVycmlkZXMuaApAQCAtMzMsNyArMzMsNyBAQAogbmFtZXNw
YWNlIFdlYktpdCB7CiAKIGNsYXNzIFdlYlBhc3RlYm9hcmRPdmVycmlkZXMgewotICAgIGZyaWVu
ZCBjbGFzcyBOZXZlckRlc3Ryb3llZDxXZWJQYXN0ZWJvYXJkT3ZlcnJpZGVzPjsKKyAgICBmcmll
bmQgTmV2ZXJEZXN0cm95ZWQ8V2ViUGFzdGVib2FyZE92ZXJyaWRlcz47CiBwdWJsaWM6CiAgICAg
c3RhdGljIFdlYlBhc3RlYm9hcmRPdmVycmlkZXMmIHNoYXJlZFBhc3RlYm9hcmRPdmVycmlkZXMo
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oCmluZGV4IGNkMzBmYzE1ZGEzN2YzNWQ3
NjZjNTM2MWE5M2ZlMmRmMzcwMzU4MzkuLjE5NjRhOGY5ZmNiOTUzYmQ4MDQ0ODI1YjY3YzI4NDA0
ZmIyMWMwMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKQEAgLTMzLDcgKzMzLDcg
QEAKIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXMgOiBw
dWJsaWMgV2ViQ29yZTo6UGxhdGZvcm1TdHJhdGVnaWVzLCBwcml2YXRlIFdlYkNvcmU6OkNvb2tp
ZXNTdHJhdGVneSwgcHJpdmF0ZSBXZWJDb3JlOjpQYXN0ZWJvYXJkU3RyYXRlZ3kgewotICAgIGZy
aWVuZCBjbGFzcyBOZXZlckRlc3Ryb3llZDxXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM+OworICAgIGZy
aWVuZCBOZXZlckRlc3Ryb3llZDxXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM+OwogcHVibGljOgogICAg
IHN0YXRpYyB2b2lkIGluaXRpYWxpemUoKTsKICAgICAK
</data>

          </attachment>
      

    </bug>

</bugzilla>