<?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>191453</bug_id>
          
          <creation_ts>2018-11-08 20:53:01 -0800</creation_ts>
          <short_desc>MediaPlayerPrivateMediaFoundation.h: warning: &apos;GetService&apos; overrides a member function but is not marked &apos;override&apos; [-Winconsistent-missing-override]</short_desc>
          <delta_ts>2018-11-09 10:20:31 -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>Platform</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Fujii Hironori">fujii</reporter>
          <assigned_to name="Fujii Hironori">fujii</assigned_to>
          <cc>achristensen</cc>
    
    <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>don.olmstead</cc>
    
    <cc>pvollan</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1476786</commentid>
    <comment_count>0</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-11-08 20:53:01 -0800</bug_when>
    <thetext>Clang-cl reports following compilation warnings while building WinCairo port:

&gt; [5097/6223] Building CXX object Source\WebCore\CMakeFiles\WebCore.dir\platform\graphics\win\MediaPlayerPrivateMediaFoundation.cpp.obj
&gt; In file included from ..\..\Source\WebCore\platform\graphics\win\MediaPlayerPrivateMediaFoundation.cpp:28:
&gt; ..\..\Source\WebCore\platform\graphics\win/MediaPlayerPrivateMediaFoundation.h(361,43):  warning: &apos;GetService&apos; overrides a member function but is not marked &apos;override&apos; [-Winconsistent-missing-override]
&gt;         virtual HRESULT STDMETHODCALLTYPE GetService(REFGUID guidService, REFIID riid, LPVOID *ppvObject);
&gt;                                           ^
&gt; C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um/mfidl.h(4891,43):  note: overridden virtual function is here
&gt;         virtual HRESULT STDMETHODCALLTYPE GetService( 
&gt;                                           ^
&gt; In file included from ..\..\Source\WebCore\platform\graphics\win\MediaPlayerPrivateMediaFoundation.cpp:28:
&gt; ..\..\Source\WebCore\platform\graphics\win/MediaPlayerPrivateMediaFoundation.h(364,43):  warning: &apos;ActivateObject&apos; overrides a member function but is not marked &apos;override&apos; [-Winconsistent-missing-override]
&gt;         virtual HRESULT STDMETHODCALLTYPE ActivateObject(REFIID riid, void **ppv);
&gt;                                           ^
&gt; C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um/mfobjects.h(5264,43):  note: overridden virtual function is here
&gt;         virtual HRESULT STDMETHODCALLTYPE ActivateObject( 
&gt;                                           ^
&gt; In file included from ..\..\Source\WebCore\platform\graphics\win\MediaPlayerPrivateMediaFoundation.cpp:28:
&gt; ..\..\Source\WebCore\platform\graphics\win/MediaPlayerPrivateMediaFoundation.h(365,43):  warning: &apos;DetachObject&apos; overrides a member function but is not marked &apos;override&apos; [-Winconsistent-missing-override]
&gt;         virtual HRESULT STDMETHODCALLTYPE DetachObject();
&gt;                                           ^
&gt; C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um/mfobjects.h(5270,43):  note: overridden virtual function is here
&gt;         virtual HRESULT STDMETHODCALLTYPE DetachObject( void) = 0;
&gt;                                           ^
&gt; In file included from ..\..\Source\WebCore\platform\graphics\win\MediaPlayerPrivateMediaFoundation.cpp:28:
&gt; ..\..\Source\WebCore\platform\graphics\win/MediaPlayerPrivateMediaFoundation.h(366,43):  warning: &apos;ShutdownObject&apos; overrides a member function but is not marked &apos;override&apos; [-Winconsistent-missing-override]
&gt;         virtual HRESULT STDMETHODCALLTYPE ShutdownObject();
&gt;                                           ^
&gt; C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um/mfobjects.h(5268,43):  note: overridden virtual function is here
&gt;         virtual HRESULT STDMETHODCALLTYPE ShutdownObject( void) = 0;
&gt;                                           ^</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1476789</commentid>
    <comment_count>1</comment_count>
      <attachid>354310</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-11-08 21:01:26 -0800</bug_when>
    <thetext>Created attachment 354310
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1476800</commentid>
    <comment_count>2</comment_count>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2018-11-08 21:35:15 -0800</bug_when>
    <thetext>LGTM

It would probably save you some time to look into running clang tidy now that you have clang cl working. There’s a modernize lint https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-override.html and most of the modernize lints have an associated fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1476916</commentid>
    <comment_count>3</comment_count>
      <attachid>354310</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2018-11-09 08:26:41 -0800</bug_when>
    <thetext>Comment on attachment 354310
Patch

r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1476967</commentid>
    <comment_count>4</comment_count>
      <attachid>354310</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-09 10:19:16 -0800</bug_when>
    <thetext>Comment on attachment 354310
Patch

Clearing flags on attachment: 354310

Committed r238040: &lt;https://trac.webkit.org/changeset/238040&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1476968</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-09 10:19:17 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1476970</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-11-09 10:20:31 -0800</bug_when>
    <thetext>&lt;rdar://problem/45947797&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354310</attachid>
            <date>2018-11-08 21:01:26 -0800</date>
            <delta_ts>2018-11-09 10:19:16 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-191453-20181109140125.patch</filename>
            <type>text/plain</type>
            <size>14313</size>
            <attacher name="Fujii Hironori">fujii</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MDE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGFjMGViNTliYWIzYmZj
YTk1ZDc3Yzg5NjFhOGViMWU1MTA5MWEyYS4uZTJhM2MxN2FlZDEwOTVmYmVjZjdlNTEzMmZjOGE2
Mjg5MzI4ZDM1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE4LTExLTA4ICBGdWpp
aSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29tPgorCisgICAgICAgIE1lZGlhUGxh
eWVyUHJpdmF0ZU1lZGlhRm91bmRhdGlvbi5oOiB3YXJuaW5nOiAnR2V0U2VydmljZScgb3ZlcnJp
ZGVzIGEgbWVtYmVyIGZ1bmN0aW9uIGJ1dCBpcyBub3QgbWFya2VkICdvdmVycmlkZScgWy1XaW5j
b25zaXN0ZW50LW1pc3Npbmctb3ZlcnJpZGVdCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE0NTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMgYmVjYXVzZSB0aGVyZSBpcyBubyBiZWhh
dmlvciBjaGFuZ2UuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy93aW4vTWVkaWFQbGF5
ZXJQcml2YXRlTWVkaWFGb3VuZGF0aW9uLmg6IE1hcmtlZCB3aXRoICdvdmVycmlkZScgYW5kIHJl
bW92ZWQgJ3ZpcnR1YWwnLgorCiAyMDE4LTExLTA4ICBNZWdhbiBHYXJkbmVyICA8bWVnYW5fZ2Fy
ZG5lckBhcHBsZS5jb20+CiAKICAgICAgICAgQWRvcHQgUmV2ZWFsIEZyYW1ld29yayB0byByZXBs
YWNlIExvb2t1cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
d2luL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhRm91bmRhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3Mvd2luL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhRm91bmRhdGlvbi5o
CmluZGV4IGZjY2VlMWMxMjVjZjg4MDA2NzZjNjNjOTJhZjc0YWZlNWE0YmFjOGMuLjM4NWMyM2Vj
MzIyOTAwMTE3MmVkZTRlODgwMGJkNmM3NmQ0ZmFiN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dpbi9NZWRpYVBsYXllclByaXZhdGVNZWRpYUZvdW5kYXRp
b24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW4vTWVkaWFQbGF5
ZXJQcml2YXRlTWVkaWFGb3VuZGF0aW9uLmgKQEAgLTM1OCw2NiArMzU4LDY2IEBAIHByaXZhdGU6
CiAgICAgICAgIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgUmVsZWFzZVNlcnZpY2VQb2ludGVy
cyh2b2lkKSBvdmVycmlkZTsKIAogICAgICAgICAvLyBJTUZHZXRTZXJ2aWNlCi0gICAgICAgIHZp
cnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBHZXRTZXJ2aWNlKFJFRkdVSUQgZ3VpZFNl
cnZpY2UsIFJFRklJRCByaWlkLCBMUFZPSUQgKnBwdk9iamVjdCk7CisgICAgICAgIEhSRVNVTFQg
U1RETUVUSE9EQ0FMTFRZUEUgR2V0U2VydmljZShSRUZHVUlEIGd1aWRTZXJ2aWNlLCBSRUZJSUQg
cmlpZCwgTFBWT0lEICpwcHZPYmplY3QpIG92ZXJyaWRlOwogCiAgICAgICAgIC8vIElNRkFjdGl2
YXRlCi0gICAgICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBBY3RpdmF0ZU9i
amVjdChSRUZJSUQgcmlpZCwgdm9pZCAqKnBwdik7Ci0gICAgICAgIHZpcnR1YWwgSFJFU1VMVCBT
VERNRVRIT0RDQUxMVFlQRSBEZXRhY2hPYmplY3QoKTsKLSAgICAgICAgdmlydHVhbCBIUkVTVUxU
IFNURE1FVEhPRENBTExUWVBFIFNodXRkb3duT2JqZWN0KCk7CisgICAgICAgIEhSRVNVTFQgU1RE
TUVUSE9EQ0FMTFRZUEUgQWN0aXZhdGVPYmplY3QoUkVGSUlEIHJpaWQsIHZvaWQgKipwcHYpIG92
ZXJyaWRlOworICAgICAgICBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIERldGFjaE9iamVjdCgp
IG92ZXJyaWRlOworICAgICAgICBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFNodXRkb3duT2Jq
ZWN0KCkgb3ZlcnJpZGU7CiAKICAgICAgICAgLy8gSU1GQXR0cmlidXRlcwotICAgICAgICB2aXJ0
dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgR2V0SXRlbShfX1JQQ19faW4gUkVGR1VJRCBn
dWlkS2V5LCBfX1JQQ19faW5vdXRfb3B0IFBST1BWQVJJQU5UICpwVmFsdWUpIHsgcmV0dXJuIEVf
Tk9USU1QTDsgfQotICAgICAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgR2V0
SXRlbVR5cGUoX19SUENfX2luIFJFRkdVSUQgZ3VpZEtleSwgX19SUENfX291dCBNRl9BVFRSSUJV
VEVfVFlQRSAqcFR5cGUpIHsgcmV0dXJuIEVfTk9USU1QTDsgfQotICAgICAgICB2aXJ0dWFsIEhS
RVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgQ29tcGFyZUl0ZW0oX19SUENfX2luIFJFRkdVSUQgZ3Vp
ZEtleSwgX19SUENfX2luIFJFRlBST1BWQVJJQU5UIFZhbHVlLCBfX1JQQ19fb3V0IEJPT0wgKnBi
UmVzdWx0KSB7IHJldHVybiBFX05PVElNUEw7IH0KLSAgICAgICAgdmlydHVhbCBIUkVTVUxUIFNU
RE1FVEhPRENBTExUWVBFIENvbXBhcmUoX19SUENfX2luX29wdCBJTUZBdHRyaWJ1dGVzICpwVGhl
aXJzLCBNRl9BVFRSSUJVVEVTX01BVENIX1RZUEUgTWF0Y2hUeXBlLCBfX1JQQ19fb3V0IEJPT0wg
KnBiUmVzdWx0KSB7IHJldHVybiBFX05PVElNUEw7IH0KLSAgICAgICAgdmlydHVhbCBIUkVTVUxU
IFNURE1FVEhPRENBTExUWVBFIEdldFVJTlQzMihfX1JQQ19faW4gUkVGR1VJRCBndWlkS2V5LCBf
X1JQQ19fb3V0IFVJTlQzMiAqcHVuVmFsdWUpIHsgcmV0dXJuIEVfTk9USU1QTDsgfQotICAgICAg
ICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgR2V0VUlOVDY0KF9fUlBDX19pbiBS
RUZHVUlEIGd1aWRLZXksIF9fUlBDX19vdXQgVUlOVDY0ICpwdW5WYWx1ZSkgeyByZXR1cm4gRV9O
T1RJTVBMOyB9Ci0gICAgICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBHZXRE
b3VibGUoX19SUENfX2luIFJFRkdVSUQgZ3VpZEtleSwgX19SUENfX291dCBkb3VibGUgKnBmVmFs
dWUpIHsgcmV0dXJuIEVfTk9USU1QTDsgfQotICAgICAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVU
SE9EQ0FMTFRZUEUgR2V0R1VJRChfX1JQQ19faW4gUkVGR1VJRCBndWlkS2V5LCBfX1JQQ19fb3V0
IEdVSUQgKnBndWlkVmFsdWUpIHsgcmV0dXJuIEVfTk9USU1QTDsgfQotICAgICAgICB2aXJ0dWFs
IEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgR2V0U3RyaW5nTGVuZ3RoKF9fUlBDX19pbiBSRUZH
VUlEIGd1aWRLZXksIF9fUlBDX19vdXQgVUlOVDMyICpwY2NoTGVuZ3RoKSB7IHJldHVybiBFX05P
VElNUEw7IH0KLSAgICAgICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIEdldFN0
cmluZyhfX1JQQ19faW4gUkVGR1VJRCBndWlkS2V5LCBfX1JQQ19fb3V0X2Vjb3VudF9mdWxsKGNj
aEJ1ZlNpemUpIExQV1NUUiBwd3N6VmFsdWUsIFVJTlQzMiBjY2hCdWZTaXplLCBfX1JQQ19faW5v
dXRfb3B0IFVJTlQzMiAqcGNjaExlbmd0aCkgeyByZXR1cm4gRV9OT1RJTVBMOyB9Ci0gICAgICAg
IHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBHZXRBbGxvY2F0ZWRTdHJpbmcoX19S
UENfX2luIFJFRkdVSUQgZ3VpZEtleSwgX19SUENfX2RlcmVmX291dF9lY291bnRfZnVsbF9vcHQo
KCpwY2NoTGVuZ3RoICsgMSkpIExQV1NUUiAqcHB3c3pWYWx1ZSwgX19SUENfX291dCBVSU5UMzIg
KnBjY2hMZW5ndGgpIHsgcmV0dXJuIEVfTk9USU1QTDsgfQotICAgICAgICB2aXJ0dWFsIEhSRVNV
TFQgU1RETUVUSE9EQ0FMTFRZUEUgR2V0QmxvYlNpemUoX19SUENfX2luIFJFRkdVSUQgZ3VpZEtl
eSwgX19SUENfX291dCBVSU5UMzIgKnBjYkJsb2JTaXplKSB7IHJldHVybiBFX05PVElNUEw7IH0K
LSAgICAgICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIEdldEJsb2IoX19SUENf
X2luIFJFRkdVSUQgZ3VpZEtleSwgX19SUENfX291dF9lY291bnRfZnVsbChjYkJ1ZlNpemUpIFVJ
TlQ4ICpwQnVmLCBVSU5UMzIgY2JCdWZTaXplLCBfX1JQQ19faW5vdXRfb3B0IFVJTlQzMiAqcGNi
QmxvYlNpemUpIHsgcmV0dXJuIEVfTk9USU1QTDsgfQotICAgICAgICB2aXJ0dWFsIEhSRVNVTFQg
U1RETUVUSE9EQ0FMTFRZUEUgR2V0QWxsb2NhdGVkQmxvYihfX1JQQ19faW4gUkVGR1VJRCBndWlk
S2V5LCBfX1JQQ19fZGVyZWZfb3V0X2Vjb3VudF9mdWxsX29wdCgqcGNiU2l6ZSkgVUlOVDggKipw
cEJ1ZiwgX19SUENfX291dCBVSU5UMzIgKnBjYlNpemUpIHsgcmV0dXJuIEVfTk9USU1QTDsgfQot
ICAgICAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgR2V0VW5rbm93bihfX1JQ
Q19faW4gUkVGR1VJRCBndWlkS2V5LCBfX1JQQ19faW4gUkVGSUlEIHJpaWQsIF9fUlBDX19kZXJl
Zl9vdXRfb3B0IExQVk9JRCAqcHB2KSB7IHJldHVybiBFX05PVElNUEw7IH0KLSAgICAgICAgdmly
dHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFNldEl0ZW0oX19SUENfX2luIFJFRkdVSUQg
Z3VpZEtleSwgX19SUENfX2luIFJFRlBST1BWQVJJQU5UIFZhbHVlKSB7IHJldHVybiBFX05PVElN
UEw7IH0KLSAgICAgICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIERlbGV0ZUl0
ZW0oX19SUENfX2luIFJFRkdVSUQgZ3VpZEtleSkgeyByZXR1cm4gRV9OT1RJTVBMOyB9Ci0gICAg
ICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBEZWxldGVBbGxJdGVtcyh2b2lk
KSB7IHJldHVybiBFX05PVElNUEw7IH0KLSAgICAgICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhP
RENBTExUWVBFIFNldFVJTlQzMihfX1JQQ19faW4gUkVGR1VJRCBndWlkS2V5LCBVSU5UMzIgdW5W
YWx1ZSkgeyByZXR1cm4gRV9OT1RJTVBMOyB9Ci0gICAgICAgIHZpcnR1YWwgSFJFU1VMVCBTVERN
RVRIT0RDQUxMVFlQRSBTZXRVSU5UNjQoX19SUENfX2luIFJFRkdVSUQgZ3VpZEtleSwgVUlOVDY0
IHVuVmFsdWUpIHsgcmV0dXJuIEVfTk9USU1QTDsgfQotICAgICAgICB2aXJ0dWFsIEhSRVNVTFQg
U1RETUVUSE9EQ0FMTFRZUEUgU2V0RG91YmxlKF9fUlBDX19pbiBSRUZHVUlEIGd1aWRLZXksIGRv
dWJsZSBmVmFsdWUpIHsgcmV0dXJuIEVfTk9USU1QTDsgfQotICAgICAgICB2aXJ0dWFsIEhSRVNV
TFQgU1RETUVUSE9EQ0FMTFRZUEUgU2V0R1VJRChfX1JQQ19faW4gUkVGR1VJRCBndWlkS2V5LCBf
X1JQQ19faW4gUkVGR1VJRCBndWlkVmFsdWUpIHsgcmV0dXJuIEVfTk9USU1QTDsgfQotICAgICAg
ICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgU2V0U3RyaW5nKF9fUlBDX19pbiBS
RUZHVUlEIGd1aWRLZXksIF9fUlBDX19pbl9zdHJpbmcgTFBDV1NUUiB3c3pWYWx1ZSkgeyByZXR1
cm4gRV9OT1RJTVBMOyB9Ci0gICAgICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQ
RSBTZXRCbG9iKF9fUlBDX19pbiBSRUZHVUlEIGd1aWRLZXksIF9fUlBDX19pbl9lY291bnRfZnVs
bChjYkJ1ZlNpemUpIGNvbnN0IFVJTlQ4ICpwQnVmLCBVSU5UMzIgY2JCdWZTaXplKSB7IHJldHVy
biBFX05PVElNUEw7IH0KLSAgICAgICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBF
IFNldFVua25vd24oX19SUENfX2luIFJFRkdVSUQgZ3VpZEtleSwgX19SUENfX2luX29wdCBJVW5r
bm93biAqcFVua25vd24pIHsgcmV0dXJuIEVfTk9USU1QTDsgfQotICAgICAgICB2aXJ0dWFsIEhS
RVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgTG9ja1N0b3JlKHZvaWQpIHsgcmV0dXJuIEVfTk9USU1Q
TDsgfQotICAgICAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgVW5sb2NrU3Rv
cmUodm9pZCkgeyByZXR1cm4gRV9OT1RJTVBMOyB9Ci0gICAgICAgIHZpcnR1YWwgSFJFU1VMVCBT
VERNRVRIT0RDQUxMVFlQRSBHZXRDb3VudChfX1JQQ19fb3V0IFVJTlQzMiAqcGNJdGVtcykgeyBy
ZXR1cm4gRV9OT1RJTVBMOyB9Ci0gICAgICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxM
VFlQRSBHZXRJdGVtQnlJbmRleChVSU5UMzIgdW5JbmRleCwgX19SUENfX291dCBHVUlEICpwZ3Vp
ZEtleSwgX19SUENfX2lub3V0X29wdCBQUk9QVkFSSUFOVCAqcFZhbHVlKSB7IHJldHVybiBFX05P
VElNUEw7IH0KLSAgICAgICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIENvcHlB
bGxJdGVtcyhfX1JQQ19faW5fb3B0IElNRkF0dHJpYnV0ZXMgKnBEZXN0KSB7IHJldHVybiBFX05P
VElNUEw7IH0KKyAgICAgICAgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBHZXRJdGVtKF9fUlBD
X19pbiBSRUZHVUlEIGd1aWRLZXksIF9fUlBDX19pbm91dF9vcHQgUFJPUFZBUklBTlQgKnBWYWx1
ZSkgb3ZlcnJpZGUgeyByZXR1cm4gRV9OT1RJTVBMOyB9CisgICAgICAgIEhSRVNVTFQgU1RETUVU
SE9EQ0FMTFRZUEUgR2V0SXRlbVR5cGUoX19SUENfX2luIFJFRkdVSUQgZ3VpZEtleSwgX19SUENf
X291dCBNRl9BVFRSSUJVVEVfVFlQRSAqcFR5cGUpIG92ZXJyaWRlIHsgcmV0dXJuIEVfTk9USU1Q
TDsgfQorICAgICAgICBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIENvbXBhcmVJdGVtKF9fUlBD
X19pbiBSRUZHVUlEIGd1aWRLZXksIF9fUlBDX19pbiBSRUZQUk9QVkFSSUFOVCBWYWx1ZSwgX19S
UENfX291dCBCT09MICpwYlJlc3VsdCkgb3ZlcnJpZGUgeyByZXR1cm4gRV9OT1RJTVBMOyB9Cisg
ICAgICAgIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgQ29tcGFyZShfX1JQQ19faW5fb3B0IElN
RkF0dHJpYnV0ZXMgKnBUaGVpcnMsIE1GX0FUVFJJQlVURVNfTUFUQ0hfVFlQRSBNYXRjaFR5cGUs
IF9fUlBDX19vdXQgQk9PTCAqcGJSZXN1bHQpIG92ZXJyaWRlIHsgcmV0dXJuIEVfTk9USU1QTDsg
fQorICAgICAgICBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIEdldFVJTlQzMihfX1JQQ19faW4g
UkVGR1VJRCBndWlkS2V5LCBfX1JQQ19fb3V0IFVJTlQzMiAqcHVuVmFsdWUpIG92ZXJyaWRlIHsg
cmV0dXJuIEVfTk9USU1QTDsgfQorICAgICAgICBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIEdl
dFVJTlQ2NChfX1JQQ19faW4gUkVGR1VJRCBndWlkS2V5LCBfX1JQQ19fb3V0IFVJTlQ2NCAqcHVu
VmFsdWUpIG92ZXJyaWRlIHsgcmV0dXJuIEVfTk9USU1QTDsgfQorICAgICAgICBIUkVTVUxUIFNU
RE1FVEhPRENBTExUWVBFIEdldERvdWJsZShfX1JQQ19faW4gUkVGR1VJRCBndWlkS2V5LCBfX1JQ
Q19fb3V0IGRvdWJsZSAqcGZWYWx1ZSkgb3ZlcnJpZGUgeyByZXR1cm4gRV9OT1RJTVBMOyB9Cisg
ICAgICAgIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgR2V0R1VJRChfX1JQQ19faW4gUkVGR1VJ
RCBndWlkS2V5LCBfX1JQQ19fb3V0IEdVSUQgKnBndWlkVmFsdWUpIG92ZXJyaWRlIHsgcmV0dXJu
IEVfTk9USU1QTDsgfQorICAgICAgICBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIEdldFN0cmlu
Z0xlbmd0aChfX1JQQ19faW4gUkVGR1VJRCBndWlkS2V5LCBfX1JQQ19fb3V0IFVJTlQzMiAqcGNj
aExlbmd0aCkgb3ZlcnJpZGUgeyByZXR1cm4gRV9OT1RJTVBMOyB9CisgICAgICAgIEhSRVNVTFQg
U1RETUVUSE9EQ0FMTFRZUEUgR2V0U3RyaW5nKF9fUlBDX19pbiBSRUZHVUlEIGd1aWRLZXksIF9f
UlBDX19vdXRfZWNvdW50X2Z1bGwoY2NoQnVmU2l6ZSkgTFBXU1RSIHB3c3pWYWx1ZSwgVUlOVDMy
IGNjaEJ1ZlNpemUsIF9fUlBDX19pbm91dF9vcHQgVUlOVDMyICpwY2NoTGVuZ3RoKSBvdmVycmlk
ZSB7IHJldHVybiBFX05PVElNUEw7IH0KKyAgICAgICAgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQ
RSBHZXRBbGxvY2F0ZWRTdHJpbmcoX19SUENfX2luIFJFRkdVSUQgZ3VpZEtleSwgX19SUENfX2Rl
cmVmX291dF9lY291bnRfZnVsbF9vcHQoKCpwY2NoTGVuZ3RoICsgMSkpIExQV1NUUiAqcHB3c3pW
YWx1ZSwgX19SUENfX291dCBVSU5UMzIgKnBjY2hMZW5ndGgpIG92ZXJyaWRlIHsgcmV0dXJuIEVf
Tk9USU1QTDsgfQorICAgICAgICBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIEdldEJsb2JTaXpl
KF9fUlBDX19pbiBSRUZHVUlEIGd1aWRLZXksIF9fUlBDX19vdXQgVUlOVDMyICpwY2JCbG9iU2l6
ZSkgb3ZlcnJpZGUgeyByZXR1cm4gRV9OT1RJTVBMOyB9CisgICAgICAgIEhSRVNVTFQgU1RETUVU
SE9EQ0FMTFRZUEUgR2V0QmxvYihfX1JQQ19faW4gUkVGR1VJRCBndWlkS2V5LCBfX1JQQ19fb3V0
X2Vjb3VudF9mdWxsKGNiQnVmU2l6ZSkgVUlOVDggKnBCdWYsIFVJTlQzMiBjYkJ1ZlNpemUsIF9f
UlBDX19pbm91dF9vcHQgVUlOVDMyICpwY2JCbG9iU2l6ZSkgb3ZlcnJpZGUgeyByZXR1cm4gRV9O
T1RJTVBMOyB9CisgICAgICAgIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgR2V0QWxsb2NhdGVk
QmxvYihfX1JQQ19faW4gUkVGR1VJRCBndWlkS2V5LCBfX1JQQ19fZGVyZWZfb3V0X2Vjb3VudF9m
dWxsX29wdCgqcGNiU2l6ZSkgVUlOVDggKipwcEJ1ZiwgX19SUENfX291dCBVSU5UMzIgKnBjYlNp
emUpIG92ZXJyaWRlIHsgcmV0dXJuIEVfTk9USU1QTDsgfQorICAgICAgICBIUkVTVUxUIFNURE1F
VEhPRENBTExUWVBFIEdldFVua25vd24oX19SUENfX2luIFJFRkdVSUQgZ3VpZEtleSwgX19SUENf
X2luIFJFRklJRCByaWlkLCBfX1JQQ19fZGVyZWZfb3V0X29wdCBMUFZPSUQgKnBwdikgb3ZlcnJp
ZGUgeyByZXR1cm4gRV9OT1RJTVBMOyB9CisgICAgICAgIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZ
UEUgU2V0SXRlbShfX1JQQ19faW4gUkVGR1VJRCBndWlkS2V5LCBfX1JQQ19faW4gUkVGUFJPUFZB
UklBTlQgVmFsdWUpIG92ZXJyaWRlIHsgcmV0dXJuIEVfTk9USU1QTDsgfQorICAgICAgICBIUkVT
VUxUIFNURE1FVEhPRENBTExUWVBFIERlbGV0ZUl0ZW0oX19SUENfX2luIFJFRkdVSUQgZ3VpZEtl
eSkgb3ZlcnJpZGUgeyByZXR1cm4gRV9OT1RJTVBMOyB9CisgICAgICAgIEhSRVNVTFQgU1RETUVU
SE9EQ0FMTFRZUEUgRGVsZXRlQWxsSXRlbXModm9pZCkgb3ZlcnJpZGUgeyByZXR1cm4gRV9OT1RJ
TVBMOyB9CisgICAgICAgIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgU2V0VUlOVDMyKF9fUlBD
X19pbiBSRUZHVUlEIGd1aWRLZXksIFVJTlQzMiB1blZhbHVlKSBvdmVycmlkZSB7IHJldHVybiBF
X05PVElNUEw7IH0KKyAgICAgICAgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBTZXRVSU5UNjQo
X19SUENfX2luIFJFRkdVSUQgZ3VpZEtleSwgVUlOVDY0IHVuVmFsdWUpIG92ZXJyaWRlIHsgcmV0
dXJuIEVfTk9USU1QTDsgfQorICAgICAgICBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFNldERv
dWJsZShfX1JQQ19faW4gUkVGR1VJRCBndWlkS2V5LCBkb3VibGUgZlZhbHVlKSBvdmVycmlkZSB7
IHJldHVybiBFX05PVElNUEw7IH0KKyAgICAgICAgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBT
ZXRHVUlEKF9fUlBDX19pbiBSRUZHVUlEIGd1aWRLZXksIF9fUlBDX19pbiBSRUZHVUlEIGd1aWRW
YWx1ZSkgb3ZlcnJpZGUgeyByZXR1cm4gRV9OT1RJTVBMOyB9CisgICAgICAgIEhSRVNVTFQgU1RE
TUVUSE9EQ0FMTFRZUEUgU2V0U3RyaW5nKF9fUlBDX19pbiBSRUZHVUlEIGd1aWRLZXksIF9fUlBD
X19pbl9zdHJpbmcgTFBDV1NUUiB3c3pWYWx1ZSkgb3ZlcnJpZGUgeyByZXR1cm4gRV9OT1RJTVBM
OyB9CisgICAgICAgIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgU2V0QmxvYihfX1JQQ19faW4g
UkVGR1VJRCBndWlkS2V5LCBfX1JQQ19faW5fZWNvdW50X2Z1bGwoY2JCdWZTaXplKSBjb25zdCBV
SU5UOCAqcEJ1ZiwgVUlOVDMyIGNiQnVmU2l6ZSkgb3ZlcnJpZGUgeyByZXR1cm4gRV9OT1RJTVBM
OyB9CisgICAgICAgIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgU2V0VW5rbm93bihfX1JQQ19f
aW4gUkVGR1VJRCBndWlkS2V5LCBfX1JQQ19faW5fb3B0IElVbmtub3duICpwVW5rbm93bikgb3Zl
cnJpZGUgeyByZXR1cm4gRV9OT1RJTVBMOyB9CisgICAgICAgIEhSRVNVTFQgU1RETUVUSE9EQ0FM
TFRZUEUgTG9ja1N0b3JlKHZvaWQpIG92ZXJyaWRlIHsgcmV0dXJuIEVfTk9USU1QTDsgfQorICAg
ICAgICBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFVubG9ja1N0b3JlKHZvaWQpIG92ZXJyaWRl
IHsgcmV0dXJuIEVfTk9USU1QTDsgfQorICAgICAgICBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBF
IEdldENvdW50KF9fUlBDX19vdXQgVUlOVDMyICpwY0l0ZW1zKSBvdmVycmlkZSB7IHJldHVybiBF
X05PVElNUEw7IH0KKyAgICAgICAgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBHZXRJdGVtQnlJ
bmRleChVSU5UMzIgdW5JbmRleCwgX19SUENfX291dCBHVUlEICpwZ3VpZEtleSwgX19SUENfX2lu
b3V0X29wdCBQUk9QVkFSSUFOVCAqcFZhbHVlKSBvdmVycmlkZSB7IHJldHVybiBFX05PVElNUEw7
IH0KKyAgICAgICAgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBDb3B5QWxsSXRlbXMoX19SUENf
X2luX29wdCBJTUZBdHRyaWJ1dGVzICpwRGVzdCkgb3ZlcnJpZGUgeyByZXR1cm4gRV9OT1RJTVBM
OyB9CiAKICAgICAgICAgLy8gSU1GVmlkZW9EaXNwbGF5Q29udHJvbAotICAgICAgICB2aXJ0dWFs
IEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgR2V0TmF0aXZlVmlkZW9TaXplKFNJWkUqIHBzelZp
ZGVvLCBTSVpFKiBwc3pBUlZpZGVvKSB7IHJldHVybiBFX05PVElNUEw7IH0KLSAgICAgICAgdmly
dHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIEdldElkZWFsVmlkZW9TaXplKFNJWkUqIHBz
ek1pbiwgU0laRSogcHN6TWF4KSB7IHJldHVybiBFX05PVElNUEw7IH0KLSAgICAgICAgdmlydHVh
bCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFNldFZpZGVvUG9zaXRpb24oY29uc3QgTUZWaWRl
b05vcm1hbGl6ZWRSZWN0KiBwbnJjU291cmNlLCBjb25zdCBMUFJFQ1QgcHJjRGVzdCk7Ci0gICAg
ICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBHZXRWaWRlb1Bvc2l0aW9uKE1G
VmlkZW9Ob3JtYWxpemVkUmVjdCogcG5yY1NvdXJjZSwgTFBSRUNUIHByY0Rlc3QpOwotICAgICAg
ICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgU2V0QXNwZWN0UmF0aW9Nb2RlKERX
T1JEIGR3QXNwZWN0UmF0aW9Nb2RlKSB7IHJldHVybiBFX05PVElNUEw7IH0KLSAgICAgICAgdmly
dHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIEdldEFzcGVjdFJhdGlvTW9kZShEV09SRCog
cGR3QXNwZWN0UmF0aW9Nb2RlKSB7IHJldHVybiBFX05PVElNUEw7IH0KLSAgICAgICAgdmlydHVh
bCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFNldFZpZGVvV2luZG93KEhXTkQgaHduZFZpZGVv
KTsKLSAgICAgICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIEdldFZpZGVvV2lu
ZG93KEhXTkQqIHBod25kVmlkZW8pOwotICAgICAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9E
Q0FMTFRZUEUgUmVwYWludFZpZGVvKCk7Ci0gICAgICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRI
T0RDQUxMVFlQRSBHZXRDdXJyZW50SW1hZ2UoQklUTUFQSU5GT0hFQURFUiogcEJpaCwgQllURSoq
IHBEaWIsIERXT1JEKiBwY2JEaWIsIExPTkdMT05HKiBwVGltZVN0YW1wKSB7IHJldHVybiBFX05P
VElNUEw7IH0KLSAgICAgICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFNldEJv
cmRlckNvbG9yKENPTE9SUkVGIENscikgeyByZXR1cm4gRV9OT1RJTVBMOyB9Ci0gICAgICAgIHZp
cnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBHZXRCb3JkZXJDb2xvcihDT0xPUlJFRiog
cENscikgeyByZXR1cm4gRV9OT1RJTVBMOyB9Ci0gICAgICAgIHZpcnR1YWwgSFJFU1VMVCBTVERN
RVRIT0RDQUxMVFlQRSBTZXRSZW5kZXJpbmdQcmVmcyhEV09SRCBkd1JlbmRlckZsYWdzKSB7IHJl
dHVybiBFX05PVElNUEw7IH0KLSAgICAgICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExU
WVBFIEdldFJlbmRlcmluZ1ByZWZzKERXT1JEKiBwZHdSZW5kZXJGbGFncykgeyByZXR1cm4gRV9O
T1RJTVBMOyB9Ci0gICAgICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBTZXRG
dWxsc2NyZWVuKEJPT0wgYkZ1bGxzY3JlZW4pIHsgcmV0dXJuIEVfTk9USU1QTDsgfQotICAgICAg
ICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgR2V0RnVsbHNjcmVlbihCT09MKiBw
YkZ1bGxzY3JlZW4pIHsgcmV0dXJuIEVfTk9USU1QTDsgfQorICAgICAgICBIUkVTVUxUIFNURE1F
VEhPRENBTExUWVBFIEdldE5hdGl2ZVZpZGVvU2l6ZShTSVpFKiBwc3pWaWRlbywgU0laRSogcHN6
QVJWaWRlbykgb3ZlcnJpZGUgeyByZXR1cm4gRV9OT1RJTVBMOyB9CisgICAgICAgIEhSRVNVTFQg
U1RETUVUSE9EQ0FMTFRZUEUgR2V0SWRlYWxWaWRlb1NpemUoU0laRSogcHN6TWluLCBTSVpFKiBw
c3pNYXgpIG92ZXJyaWRlIHsgcmV0dXJuIEVfTk9USU1QTDsgfQorICAgICAgICBIUkVTVUxUIFNU
RE1FVEhPRENBTExUWVBFIFNldFZpZGVvUG9zaXRpb24oY29uc3QgTUZWaWRlb05vcm1hbGl6ZWRS
ZWN0KiBwbnJjU291cmNlLCBjb25zdCBMUFJFQ1QgcHJjRGVzdCkgb3ZlcnJpZGU7CisgICAgICAg
IEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgR2V0VmlkZW9Qb3NpdGlvbihNRlZpZGVvTm9ybWFs
aXplZFJlY3QqIHBucmNTb3VyY2UsIExQUkVDVCBwcmNEZXN0KSBvdmVycmlkZTsKKyAgICAgICAg
SFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBTZXRBc3BlY3RSYXRpb01vZGUoRFdPUkQgZHdBc3Bl
Y3RSYXRpb01vZGUpIG92ZXJyaWRlIHsgcmV0dXJuIEVfTk9USU1QTDsgfQorICAgICAgICBIUkVT
VUxUIFNURE1FVEhPRENBTExUWVBFIEdldEFzcGVjdFJhdGlvTW9kZShEV09SRCogcGR3QXNwZWN0
UmF0aW9Nb2RlKSBvdmVycmlkZSB7IHJldHVybiBFX05PVElNUEw7IH0KKyAgICAgICAgSFJFU1VM
VCBTVERNRVRIT0RDQUxMVFlQRSBTZXRWaWRlb1dpbmRvdyhIV05EIGh3bmRWaWRlbykgb3ZlcnJp
ZGU7CisgICAgICAgIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgR2V0VmlkZW9XaW5kb3coSFdO
RCogcGh3bmRWaWRlbykgb3ZlcnJpZGU7CisgICAgICAgIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZ
UEUgUmVwYWludFZpZGVvKCkgb3ZlcnJpZGU7CisgICAgICAgIEhSRVNVTFQgU1RETUVUSE9EQ0FM
TFRZUEUgR2V0Q3VycmVudEltYWdlKEJJVE1BUElORk9IRUFERVIqIHBCaWgsIEJZVEUqKiBwRGli
LCBEV09SRCogcGNiRGliLCBMT05HTE9ORyogcFRpbWVTdGFtcCkgb3ZlcnJpZGUgeyByZXR1cm4g
RV9OT1RJTVBMOyB9CisgICAgICAgIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgU2V0Qm9yZGVy
Q29sb3IoQ09MT1JSRUYgQ2xyKSBvdmVycmlkZSB7IHJldHVybiBFX05PVElNUEw7IH0KKyAgICAg
ICAgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBHZXRCb3JkZXJDb2xvcihDT0xPUlJFRiogcENs
cikgb3ZlcnJpZGUgeyByZXR1cm4gRV9OT1RJTVBMOyB9CisgICAgICAgIEhSRVNVTFQgU1RETUVU
SE9EQ0FMTFRZUEUgU2V0UmVuZGVyaW5nUHJlZnMoRFdPUkQgZHdSZW5kZXJGbGFncykgb3ZlcnJp
ZGUgeyByZXR1cm4gRV9OT1RJTVBMOyB9CisgICAgICAgIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZ
UEUgR2V0UmVuZGVyaW5nUHJlZnMoRFdPUkQqIHBkd1JlbmRlckZsYWdzKSBvdmVycmlkZSB7IHJl
dHVybiBFX05PVElNUEw7IH0KKyAgICAgICAgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBTZXRG
dWxsc2NyZWVuKEJPT0wgYkZ1bGxzY3JlZW4pIG92ZXJyaWRlIHsgcmV0dXJuIEVfTk9USU1QTDsg
fQorICAgICAgICBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIEdldEZ1bGxzY3JlZW4oQk9PTCog
cGJGdWxsc2NyZWVuKSBvdmVycmlkZSB7IHJldHVybiBFX05PVElNUEw7IH0KIAogICAgICAgICAv
LyBJTUZBc3luY0NhbGxiYWNrIG1ldGhvZHMKLSAgICAgICAgdmlydHVhbCBIUkVTVUxUIFNURE1F
VEhPRENBTExUWVBFIEdldFBhcmFtZXRlcnMoRFdPUkQqLCBEV09SRCopIHsgcmV0dXJuIEVfTk9U
SU1QTDsgfQotICAgICAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgSW52b2tl
KElNRkFzeW5jUmVzdWx0KiBwQXN5bmNSZXN1bHQpOworICAgICAgICBIUkVTVUxUIFNURE1FVEhP
RENBTExUWVBFIEdldFBhcmFtZXRlcnMoRFdPUkQqLCBEV09SRCopIG92ZXJyaWRlIHsgcmV0dXJu
IEVfTk9USU1QTDsgfQorICAgICAgICBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIEludm9rZShJ
TUZBc3luY1Jlc3VsdCogcEFzeW5jUmVzdWx0KSBvdmVycmlkZTsKIAogICAgICAgICAvLyBNZWRp
YVBsYXllckxpc3RlbmVyCiAgICAgICAgIHZvaWQgb25NZWRpYVBsYXllckRlbGV0ZWQoKSBvdmVy
cmlkZTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>