<?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>113165</bug_id>
          
          <creation_ts>2013-03-24 18:49:36 -0700</creation_ts>
          <short_desc>Custom Elements Refactoring: The name V8CustomElement is confusing.</short_desc>
          <delta_ts>2013-03-26 02:39:47 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>99688</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Hajime Morrita">morrita</reporter>
          <assigned_to name="Hajime Morrita">morrita</assigned_to>
          <cc>abarth</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>webcomponents-bugzilla</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>862462</commentid>
    <comment_count>0</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2013-03-24 18:49:36 -0700</bug_when>
    <thetext>From bug 112191.
There is no CustomElement class in C++ side. So having this name breaks the convention
that expects the C++ class without &quot;V8&quot; prefix. It should have another name and
should be got rid of.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863366</commentid>
    <comment_count>1</comment_count>
      <attachid>195006</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2013-03-25 22:26:57 -0700</bug_when>
    <thetext>Created attachment 195006
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863368</commentid>
    <comment_count>2</comment_count>
      <attachid>195006</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2013-03-25 22:30:36 -0700</bug_when>
    <thetext>Comment on attachment 195006
Patch

rubber stamped</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863402</commentid>
    <comment_count>3</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2013-03-25 23:38:25 -0700</bug_when>
    <thetext>Committed r146851: &lt;http://trac.webkit.org/changeset/146851&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>195006</attachid>
            <date>2013-03-25 22:26:57 -0700</date>
            <delta_ts>2013-03-26 02:39:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-113165-20130326142240.patch</filename>
            <type>text/plain</type>
            <size>16644</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ2ODQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjExMTAyNzM5Y2NkZmMw
OTUwOWZkMmEyZTMzZGE3YTlkN2I0YTM5ZS4uNzJkZGUwMjhkYmI1MTc0ZjczNjg3YTc2YjZjMjgy
MTE5OWVhZTE1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEzLTAzLTI1ICBIYWpp
bWUgTW9ycml0YSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4KKworICAgICAgICBDdXN0b20gRWxlbWVu
dHMgUmVmYWN0b3Jpbmc6IFRoZSBuYW1lIFY4Q3VzdG9tRWxlbWVudCBpcyBjb25mdXNpbmcuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTMxNjUKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGNoYW5n
ZSBtb3ZlcyBmdW5jdGlvbnMgZnJvbSBWOEN1c3RvbUVsZW1lbnQgdG8gQ3VzdG9tRWxlbWVudEhl
bHBlcnMgYW5kCisgICAgICAgIHJlbW92ZXMgVjhDdXN0b21FbGVtZW50LiBWOEN1c3RvbUVsZW1l
bnQgaXMganVzdCBhIGhlcml0YWdlIG9mIG9sZCBkZXNpZ24KKyAgICAgICAgYW5kIG5vIGxvbmdl
ciBtYWtlcyBzZW5zZS4KKworICAgICAgICBObyBuZXcgdGVzdHMuIE5vIGJlaGF2aW9yIGNoYW5n
ZS4KKworICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9DdXN0
b21FbGVtZW50SGVscGVycy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDdXN0b21FbGVtZW50SGVs
cGVyczo6Y3JlYXRlV3JhcHBlcik6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBiaW5k
aW5ncy92OC9DdXN0b21FbGVtZW50SGVscGVycy5oOgorICAgICAgICAoQ3VzdG9tRWxlbWVudEhl
bHBlcnMpOgorICAgICAgICAoV2ViQ29yZTo6Q3VzdG9tRWxlbWVudEhlbHBlcnM6OndyYXApOgor
ICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpDdXN0b21FbGVtZW50SGVscGVy
czo6Y29uc3RydWN0b3JPZik6CisgICAgICAgICogYmluZGluZ3MvdjgvVjhDdXN0b21FbGVtZW50
LmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOEN1c3RvbUVsZW1lbnQuaDog
UmVtb3ZlZC4KKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhDdXN0b21FbGVtZW50Q29u
c3RydWN0b3JDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhDdXN0b21FbGVtZW50Q29u
c3RydWN0b3I6OmNhbGxBc0Z1bmN0aW9uQ2FsbGJhY2spOgorICAgICAgICAqIGRvbS9tYWtlX25h
bWVzLnBsOgorICAgICAgICAocHJpbnRXcmFwcGVyRmFjdG9yeUNwcEZpbGUpOgorCiAyMDEzLTAz
LTI1ICBFdWdlbmUgS2x5dWNobmlrb3YgIDxldXN0YXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAg
IFdlYiBJbnNwZWN0b3I6IFtUaW1lbGluZV0gUmVjb3JkcyBzaWRlYmFyIGlzIGNsaXBwZWQuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmd5cGkKaW5kZXggYzYyNWExMGNiMzg1ZTJlNGM3OTI5ZmExODAzMDgyYjBhMjBhMDIy
My4uNThlMWY2Y2Y0ODFmZTg0ZGJlOWFhZWIxMmJhODJmZTRlYTM2NjIzMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
Z3lwaQpAQCAtMTM3Miw4ICsxMzcyLDYgQEAKICAgICAgICAgICAgICdiaW5kaW5ncy92OC9WOENh
bGxiYWNrLmgnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L1Y4Q29sbGVjdGlvbi5jcHAnLAog
ICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L1Y4Q29sbGVjdGlvbi5oJywKLSAgICAgICAgICAgICdi
aW5kaW5ncy92OC9WOEN1c3RvbUVsZW1lbnQuY3BwJywKLSAgICAgICAgICAgICdiaW5kaW5ncy92
OC9WOEN1c3RvbUVsZW1lbnQuaCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvdjgvVjhET01Db25m
aWd1cmF0aW9uLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvdjgvVjhET01Db25maWd1cmF0
aW9uLmgnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L1Y4RE9NQWN0aXZpdHlMb2dnZXIuaCcs
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9DdXN0b21FbGVtZW50SGVs
cGVycy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9DdXN0b21FbGVtZW50SGVscGVy
cy5jcHAKaW5kZXggZWZhNjQzN2NiYTI4MmUwY2QyMWYzMjY1MTgxNzNlNmRlYmFhOGMxNy4uOTA5
OTBjN2UyNTViOWVhZWFmNTQ4YzUyYTVhMDBhNmI0ZjdkNzY4MCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvdjgvQ3VzdG9tRWxlbWVudEhlbHBlcnMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0N1c3RvbUVsZW1lbnRIZWxwZXJzLmNwcApAQCAtNDMsNiAr
NDMsMzggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAjaWYgRU5BQkxFKENVU1RPTV9FTEVNRU5U
UykKIAordjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBDdXN0b21FbGVtZW50SGVscGVyczo6Y3JlYXRl
V3JhcHBlcihQYXNzUmVmUHRyPEVsZW1lbnQ+IGltcGwsIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4g
Y3JlYXRpb25Db250ZXh0LCBQYXNzUmVmUHRyPEN1c3RvbUVsZW1lbnRDb25zdHJ1Y3Rvcj4gY29u
c3RydWN0b3IsIHY4OjpJc29sYXRlKiBpc29sYXRlKQoreworICAgIEFTU0VSVChpbXBsKTsKKwor
ICAgIC8vIFRoZSBjb25zdHJ1Y3RvciBhbmQgcmVnaXN0ZXJlZCBsaWZlY3ljbGUgY2FsbGJhY2tz
IHNob3VsZCBiZSB2aXNpYmxlIG9ubHkgZnJvbSBtYWluIHdvcmxkLgorICAgIC8vIEZJWE1FOiBU
aGlzIHNob3VsZG4ndCBiZSBuZWVkZWQgb25jZSBlYWNoIGN1c3RvbSBlbGVtZW50IGhhcyBpdHMg
b3duIEZ1bmN0aW9uVGVtcGxhdGUKKyAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTA4MTM4CisgICAgaWYgKCFDdXN0b21FbGVtZW50SGVscGVyczo6aXNGZWF0
dXJlQWxsb3dlZChjcmVhdGlvbkNvbnRleHQtPkNyZWF0aW9uQ29udGV4dCgpKSkgeworICAgICAg
ICB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHdyYXBwZXIgPSBWOERPTVdyYXBwZXI6OmNyZWF0ZVdy
YXBwZXIoY3JlYXRpb25Db250ZXh0LCAmVjhIVE1MRWxlbWVudDo6aW5mbywgaW1wbC5nZXQoKSwg
aXNvbGF0ZSk7CisgICAgICAgIGlmICghd3JhcHBlci5Jc0VtcHR5KCkpCisgICAgICAgICAgICBW
OERPTVdyYXBwZXI6OmFzc29jaWF0ZU9iamVjdFdpdGhXcmFwcGVyKGltcGwsICZWOEhUTUxFbGVt
ZW50OjppbmZvLCB3cmFwcGVyLCBpc29sYXRlLCBXcmFwcGVyQ29uZmlndXJhdGlvbjo6RGVwZW5k
ZW50KTsKKyAgICAgICAgcmV0dXJuIHdyYXBwZXI7CisgICAgfQorCisgICAgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IGNvbnN0cnVjdG9yVmFsdWUgPSBXZWJDb3JlOjp0b1Y4KGNvbnN0cnVjdG9yLmdl
dCgpLCBjcmVhdGlvbkNvbnRleHQsIGlzb2xhdGUpOworICAgIGlmIChjb25zdHJ1Y3RvclZhbHVl
LklzRW1wdHkoKSB8fCAhY29uc3RydWN0b3JWYWx1ZS0+SXNPYmplY3QoKSkKKyAgICAgICAgcmV0
dXJuIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4oKTsKKyAgICB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+
IGNvbnN0cnVjdG9yV2FwcGVyID0gdjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChjb25zdHJ1
Y3RvclZhbHVlKTsKKyAgICB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHByb3RvdHlwZSA9IHY4OjpI
YW5kbGU8djg6Ok9iamVjdD46OkNhc3QoY29uc3RydWN0b3JXYXBwZXItPkdldCh2ODo6U3RyaW5n
OjpOZXdTeW1ib2woInByb3RvdHlwZSIpKSk7CisgICAgV3JhcHBlclR5cGVJbmZvKiB0eXBlSW5m
byA9IEN1c3RvbUVsZW1lbnRIZWxwZXJzOjpmaW5kV3JhcHBlclR5cGUocHJvdG90eXBlKTsKKyAg
ICBpZiAoIXR5cGVJbmZvKQorICAgICAgICByZXR1cm4gdjg6OkhhbmRsZTx2ODo6T2JqZWN0Pigp
OworCisgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gVjhET01XcmFwcGVyOjpj
cmVhdGVXcmFwcGVyKGNyZWF0aW9uQ29udGV4dCwgdHlwZUluZm8sIGltcGwuZ2V0KCksIGlzb2xh
dGUpOworICAgIGlmICh3cmFwcGVyLklzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIHY4OjpIYW5k
bGU8djg6Ok9iamVjdD4oKTsKKworICAgIHdyYXBwZXItPlNldFByb3RvdHlwZShwcm90b3R5cGUp
OworICAgIFY4RE9NV3JhcHBlcjo6YXNzb2NpYXRlT2JqZWN0V2l0aFdyYXBwZXIoaW1wbCwgdHlw
ZUluZm8sIHdyYXBwZXIsIGlzb2xhdGUsIFdyYXBwZXJDb25maWd1cmF0aW9uOjpEZXBlbmRlbnQp
OworICAgIHJldHVybiB3cmFwcGVyOworfQorCiBib29sIEN1c3RvbUVsZW1lbnRIZWxwZXJzOjpp
bml0aWFsaXplQ29uc3RydWN0b3JXcmFwcGVyKEN1c3RvbUVsZW1lbnRDb25zdHJ1Y3RvciogY29u
c3RydWN0b3IsIGNvbnN0IFNjcmlwdFZhbHVlJiBwcm90b3R5cGUsIFNjcmlwdFN0YXRlKiBzdGF0
ZSkKIHsKICAgICBBU1NFUlQoaXNGZWF0dXJlQWxsb3dlZChzdGF0ZSkpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvQ3VzdG9tRWxlbWVudEhlbHBlcnMuaCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0N1c3RvbUVsZW1lbnRIZWxwZXJzLmgKaW5kZXggODYxMTgx
OWU4NzVmNjJmZDc0ZmYzYzk4OTUyYWM4ODExYzZlNzRhZi4uZGNmZTlmYjcxOWE4NDE2NjlhZjQ5
YTE4MGUzYzEyNmViZTFlZjgzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
djgvQ3VzdG9tRWxlbWVudEhlbHBlcnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92
OC9DdXN0b21FbGVtZW50SGVscGVycy5oCkBAIC0zMSw5ICszMSwxNyBAQAogI2lmbmRlZiBDdXN0
b21FbGVtZW50SGVscGVyc19oCiAjZGVmaW5lIEN1c3RvbUVsZW1lbnRIZWxwZXJzX2gKIAorI2lu
Y2x1ZGUgIkN1c3RvbUVsZW1lbnRDb25zdHJ1Y3Rvci5oIgorI2luY2x1ZGUgIkN1c3RvbUVsZW1l
bnRSZWdpc3RyeS5oIgorI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRXhjZXB0aW9u
Q29kZS5oIgogI2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCisjaW5jbHVkZSAiVjhCaW5kaW5nLmgi
CisjaW5jbHVkZSAiVjhET01XcmFwcGVyLmgiCisjaW5jbHVkZSAiVjhIVE1MRWxlbWVudC5oIgor
I2luY2x1ZGUgIlY4SFRNTFVua25vd25FbGVtZW50LmgiCiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQu
aD4KKyNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
QEAgLTU4LDEwICs2NiwzMyBAQCBwdWJsaWM6CiAKICAgICBzdGF0aWMgdm9pZCBpbnZva2VSZWFk
eUNhbGxiYWNrc0lmTmVlZGVkKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBWZWN0b3I8
Q3VzdG9tRWxlbWVudEludm9jYXRpb24+Jik7CiAKKyAgICAvLworICAgIC8vIFlvdSBjYW4ganVz
dCB1c2UgdG9WOChOb2RlKikgdG8gZ2V0IGNvcnJlY3Qgd3JhcHBlciBvYmplY3RzLCBldmVuIGZv
ciBjdXN0b20gZWxlbWVudHMuCisgICAgLy8gVGhlbiBnZW5lcmF0ZWQgRWxlbWVudFdyYXBwZXJG
YWN0b3JpZXMgY2FsbCBWOEN1c3RvbUVsZW1lbnQ6OndyYXAoKSB3aXRoIHByb3BlciBDdXN0b21F
bGVtZW50Q29uc3RydWN0b3IgaW5zdGFuY2VzCisgICAgLy8gYWNjb3JkaW5nbHkuCisgICAgLy8K
KyAgICBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwKEVsZW1lbnQqLCB2ODo6SGFu
ZGxlPHY4OjpPYmplY3Q+IGNyZWF0aW9uQ29udGV4dCwgUGFzc1JlZlB0cjxDdXN0b21FbGVtZW50
Q29uc3RydWN0b3I+LCB2ODo6SXNvbGF0ZSopOworICAgIHN0YXRpYyBQYXNzUmVmUHRyPEN1c3Rv
bUVsZW1lbnRDb25zdHJ1Y3Rvcj4gY29uc3RydWN0b3JPZihFbGVtZW50Kik7CisKIHByaXZhdGU6
CiAgICAgc3RhdGljIHZvaWQgaW52b2tlUmVhZHlDYWxsYmFja0lmTmVlZGVkKEVsZW1lbnQqLCB2
ODo6SGFuZGxlPHY4OjpDb250ZXh0Pik7CisgICAgc3RhdGljIHY4OjpIYW5kbGU8djg6Ok9iamVj
dD4gY3JlYXRlV3JhcHBlcihQYXNzUmVmUHRyPEVsZW1lbnQ+LCB2ODo6SGFuZGxlPHY4OjpPYmpl
Y3Q+LCBQYXNzUmVmUHRyPEN1c3RvbUVsZW1lbnRDb25zdHJ1Y3Rvcj4sIHY4OjpJc29sYXRlKik7
CiB9OwogCitpbmxpbmUgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBDdXN0b21FbGVtZW50SGVscGVy
czo6d3JhcChFbGVtZW50KiBpbXBsLCB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGNyZWF0aW9uQ29u
dGV4dCwgUGFzc1JlZlB0cjxDdXN0b21FbGVtZW50Q29uc3RydWN0b3I+IGNvbnN0cnVjdG9yLCB2
ODo6SXNvbGF0ZSogaXNvbGF0ZSkKK3sKKyAgICBBU1NFUlQoaW1wbCk7CisgICAgQVNTRVJUKERP
TURhdGFTdG9yZTo6Z2V0V3JhcHBlcihpbXBsLCBpc29sYXRlKS5Jc0VtcHR5KCkpOworICAgIHJl
dHVybiBDdXN0b21FbGVtZW50SGVscGVyczo6Y3JlYXRlV3JhcHBlcihpbXBsLCBjcmVhdGlvbkNv
bnRleHQsIGNvbnN0cnVjdG9yLCBpc29sYXRlKTsKK30KKworaW5saW5lIFBhc3NSZWZQdHI8Q3Vz
dG9tRWxlbWVudENvbnN0cnVjdG9yPiBDdXN0b21FbGVtZW50SGVscGVyczo6Y29uc3RydWN0b3JP
ZihFbGVtZW50KiBlbGVtZW50KQoreworICAgIGlmIChDdXN0b21FbGVtZW50UmVnaXN0cnkqIHJl
Z2lzdHJ5ID0gZWxlbWVudC0+ZG9jdW1lbnQoKS0+cmVnaXN0cnkoKSkKKyAgICAgICAgcmV0dXJu
IHJlZ2lzdHJ5LT5maW5kRm9yKGVsZW1lbnQpOworICAgIHJldHVybiAwOworfQorCiAjZW5kaWYg
Ly8gRU5BQkxFKENVU1RPTV9FTEVNRU5UUykKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhDdXN0b21FbGVtZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4Q3VzdG9tRWxlbWVudC5jcHAKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBlNmE4ZjgyOWFhMjAzYTZmMDU4ZGExNzFhZDM3OTUwMzNk
Y2M0OTEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhDdXN0b21FbGVtZW50LmNwcAorKysgL2Rldi9udWxs
CkBAIC0xLDc5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUK
LSAqIG1ldDoKLSAqCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICAgICogUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lcgotICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZQotICogZGlzdHJpYnV0aW9uLgotICogICAgICogTmVpdGhlciB0aGUg
bmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwotICogY29udHJpYnV0b3Jz
IG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20K
LSAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Np
b24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgotICog
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRI
RSBDT1BZUklHSFQKLSAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
Ci0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1VTVE9N
X0VMRU1FTlRTKQotCi0jaW5jbHVkZSAiVjhDdXN0b21FbGVtZW50LmgiCi0KLSNpbmNsdWRlICJD
dXN0b21FbGVtZW50SGVscGVycy5oIgotI2luY2x1ZGUgIkN1c3RvbUVsZW1lbnRSZWdpc3RyeS5o
IgotI2luY2x1ZGUgIkVsZW1lbnQuaCIKLSNpbmNsdWRlICJWOEN1c3RvbUVsZW1lbnRDb25zdHJ1
Y3Rvci5oIgotI2luY2x1ZGUgIlY4SFRNTFVua25vd25FbGVtZW50LmgiCi0KLW5hbWVzcGFjZSBX
ZWJDb3JlIHsKLQotdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBWOEN1c3RvbUVsZW1lbnQ6OmNyZWF0
ZVdyYXBwZXIoUGFzc1JlZlB0cjxFbGVtZW50PiBpbXBsLCB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+
IGNyZWF0aW9uQ29udGV4dCwgUGFzc1JlZlB0cjxDdXN0b21FbGVtZW50Q29uc3RydWN0b3I+IGNv
bnN0cnVjdG9yLCB2ODo6SXNvbGF0ZSogaXNvbGF0ZSkKLXsKLSAgICBBU1NFUlQoaW1wbCk7Ci0K
LSAgICAvLyBUaGUgY29uc3RydWN0b3IgYW5kIHJlZ2lzdGVyZWQgbGlmZWN5Y2xlIGNhbGxiYWNr
cyBzaG91bGQgYmUgdmlzaWJsZSBvbmx5IGZyb20gbWFpbiB3b3JsZC4KLSAgICAvLyBGSVhNRTog
VGhpcyBzaG91bGRuJ3QgYmUgbmVlZGVkIG9uY2UgZWFjaCBjdXN0b20gZWxlbWVudCBoYXMgaXRz
IG93biBGdW5jdGlvblRlbXBsYXRlCi0gICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEwODEzOAotICAgIGlmICghQ3VzdG9tRWxlbWVudEhlbHBlcnM6OmlzRmVh
dHVyZUFsbG93ZWQoY3JlYXRpb25Db250ZXh0LT5DcmVhdGlvbkNvbnRleHQoKSkpIHsKLSAgICAg
ICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gVjhET01XcmFwcGVyOjpjcmVhdGVX
cmFwcGVyKGNyZWF0aW9uQ29udGV4dCwgJlY4SFRNTEVsZW1lbnQ6OmluZm8sIGltcGwuZ2V0KCks
IGlzb2xhdGUpOwotICAgICAgICBpZiAoIXdyYXBwZXIuSXNFbXB0eSgpKQotICAgICAgICAgICAg
VjhET01XcmFwcGVyOjphc3NvY2lhdGVPYmplY3RXaXRoV3JhcHBlcihpbXBsLCAmVjhIVE1MRWxl
bWVudDo6aW5mbywgd3JhcHBlciwgaXNvbGF0ZSwgV3JhcHBlckNvbmZpZ3VyYXRpb246OkRlcGVu
ZGVudCk7Ci0gICAgICAgIHJldHVybiB3cmFwcGVyOwotICAgIH0KLQotICAgIHY4OjpIYW5kbGU8
djg6OlZhbHVlPiBjb25zdHJ1Y3RvclZhbHVlID0gV2ViQ29yZTo6dG9WOChjb25zdHJ1Y3Rvci5n
ZXQoKSwgY3JlYXRpb25Db250ZXh0LCBpc29sYXRlKTsKLSAgICBpZiAoY29uc3RydWN0b3JWYWx1
ZS5Jc0VtcHR5KCkgfHwgIWNvbnN0cnVjdG9yVmFsdWUtPklzT2JqZWN0KCkpCi0gICAgICAgIHJl
dHVybiB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+KCk7Ci0gICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0
PiBjb25zdHJ1Y3RvcldhcHBlciA9IHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QoY29uc3Ry
dWN0b3JWYWx1ZSk7Ci0gICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBwcm90b3R5cGUgPSB2ODo6
SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KGNvbnN0cnVjdG9yV2FwcGVyLT5HZXQodjg6OlN0cmlu
Zzo6TmV3U3ltYm9sKCJwcm90b3R5cGUiKSkpOwotICAgIFdyYXBwZXJUeXBlSW5mbyogdHlwZUlu
Zm8gPSBDdXN0b21FbGVtZW50SGVscGVyczo6ZmluZFdyYXBwZXJUeXBlKHByb3RvdHlwZSk7Ci0g
ICAgaWYgKCF0eXBlSW5mbykKLSAgICAgICAgcmV0dXJuIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4o
KTsKLQotICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBlciA9IFY4RE9NV3JhcHBlcjo6
Y3JlYXRlV3JhcHBlcihjcmVhdGlvbkNvbnRleHQsIHR5cGVJbmZvLCBpbXBsLmdldCgpLCBpc29s
YXRlKTsKLSAgICBpZiAod3JhcHBlci5Jc0VtcHR5KCkpCi0gICAgICAgIHJldHVybiB2ODo6SGFu
ZGxlPHY4OjpPYmplY3Q+KCk7Ci0KLSAgICB3cmFwcGVyLT5TZXRQcm90b3R5cGUocHJvdG90eXBl
KTsKLSAgICBWOERPTVdyYXBwZXI6OmFzc29jaWF0ZU9iamVjdFdpdGhXcmFwcGVyKGltcGwsIHR5
cGVJbmZvLCB3cmFwcGVyLCBpc29sYXRlLCBXcmFwcGVyQ29uZmlndXJhdGlvbjo6RGVwZW5kZW50
KTsKLSAgICByZXR1cm4gd3JhcHBlcjsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKENVU1RPTV9FTEVNRU5UUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L1Y4Q3VzdG9tRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvdjgvVjhDdXN0b21FbGVtZW50LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDcy
YjBmNzJkYmNlNDVkNTAzY2FmM2RmMTRkMDY3OWM0MWNlYmE2MzcuLjAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvdjgv
VjhDdXN0b21FbGVtZW50LmgKKysrIC9kZXYvbnVsbApAQCAtMSw4MiArMCwwIEBACi0vKgotICog
Q29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgot
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCi0gKiBtZXQ6Ci0gKgotICogICAgICogUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKLSAqIGluIHRoZSBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqIGRpc3Ry
aWJ1dGlvbi4KLSAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRo
ZSBuYW1lcyBvZiBpdHMKLSAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9y
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCi0gKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQg
c3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAq
ICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLSAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0gKiBPV05FUiBPUiBD
T05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwKLSAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBW
OEN1c3RvbUVsZW1lbnRfaAotI2RlZmluZSBWOEN1c3RvbUVsZW1lbnRfaAotCi0jaW5jbHVkZSAi
Q3VzdG9tRWxlbWVudENvbnN0cnVjdG9yLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRWxlbWVudFJlZ2lz
dHJ5LmgiCi0jaW5jbHVkZSAiRG9jdW1lbnQuaCIKLSNpbmNsdWRlICJWOEJpbmRpbmcuaCIKLSNp
bmNsdWRlICJWOERPTVdyYXBwZXIuaCIKLSNpbmNsdWRlICJWOEhUTUxFbGVtZW50LmgiCi0jaW5j
bHVkZSAiVjhIVE1MVW5rbm93bkVsZW1lbnQuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5o
PgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEVsZW1lbnQ7Ci1jbGFzcyBDdXN0b21F
bGVtZW50Q29uc3RydWN0b3I7Ci0KLSNpZiBFTkFCTEUoQ1VTVE9NX0VMRU1FTlRTKQotCi1jbGFz
cyBWOEN1c3RvbUVsZW1lbnQgewotcHVibGljOgotICAgIC8vCi0gICAgLy8gWW91IGNhbiBqdXN0
IHVzZSB0b1Y4KE5vZGUqKSB0byBnZXQgY29ycmVjdCB3cmFwcGVyIG9iamVjdHMsIGV2ZW4gZm9y
IGN1c3RvbSBlbGVtZW50cy4KLSAgICAvLyBUaGVuIGdlbmVyYXRlZCBFbGVtZW50V3JhcHBlckZh
Y3RvcmllcyBjYWxsIFY4Q3VzdG9tRWxlbWVudDo6d3JhcCgpIHdpdGggcHJvcGVyIEN1c3RvbUVs
ZW1lbnRDb25zdHJ1Y3RvciBpbnN0YW5jZXMKLSAgICAvLyBhY2NvcmRpbmdseS4KLSAgICAvLwot
ICAgIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHdyYXAoRWxlbWVudCosIHY4OjpIYW5k
bGU8djg6Ok9iamVjdD4gY3JlYXRpb25Db250ZXh0LCBQYXNzUmVmUHRyPEN1c3RvbUVsZW1lbnRD
b25zdHJ1Y3Rvcj4sIHY4OjpJc29sYXRlKik7Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8Q3VzdG9t
RWxlbWVudENvbnN0cnVjdG9yPiBjb25zdHJ1Y3Rvck9mKEVsZW1lbnQqKTsKLQotcHJpdmF0ZToK
LSAgICBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBjcmVhdGVXcmFwcGVyKFBhc3NSZWZQ
dHI8RWxlbWVudD4sIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4sIFBhc3NSZWZQdHI8Q3VzdG9tRWxl
bWVudENvbnN0cnVjdG9yPiwgdjg6Oklzb2xhdGUqKTsKLX07Ci0KLWlubGluZSB2ODo6SGFuZGxl
PHY4OjpPYmplY3Q+IFY4Q3VzdG9tRWxlbWVudDo6d3JhcChFbGVtZW50KiBpbXBsLCB2ODo6SGFu
ZGxlPHY4OjpPYmplY3Q+IGNyZWF0aW9uQ29udGV4dCwgUGFzc1JlZlB0cjxDdXN0b21FbGVtZW50
Q29uc3RydWN0b3I+IGNvbnN0cnVjdG9yLCB2ODo6SXNvbGF0ZSogaXNvbGF0ZSkKLXsKLSAgICBB
U1NFUlQoaW1wbCk7Ci0gICAgQVNTRVJUKERPTURhdGFTdG9yZTo6Z2V0V3JhcHBlcihpbXBsLCBp
c29sYXRlKS5Jc0VtcHR5KCkpOwotICAgIHJldHVybiBWOEN1c3RvbUVsZW1lbnQ6OmNyZWF0ZVdy
YXBwZXIoaW1wbCwgY3JlYXRpb25Db250ZXh0LCBjb25zdHJ1Y3RvciwgaXNvbGF0ZSk7Ci19Ci0K
LWlubGluZSBQYXNzUmVmUHRyPEN1c3RvbUVsZW1lbnRDb25zdHJ1Y3Rvcj4gVjhDdXN0b21FbGVt
ZW50Ojpjb25zdHJ1Y3Rvck9mKEVsZW1lbnQqIGVsZW1lbnQpCi17Ci0gICAgaWYgKEN1c3RvbUVs
ZW1lbnRSZWdpc3RyeSogcmVnaXN0cnkgPSBlbGVtZW50LT5kb2N1bWVudCgpLT5yZWdpc3RyeSgp
KQotICAgICAgICByZXR1cm4gcmVnaXN0cnktPmZpbmRGb3IoZWxlbWVudCk7Ci0gICAgcmV0dXJu
IDA7Ci19Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1VTVE9NX0VMRU1FTlRTKQotCi19IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBWOEN1c3RvbUVsZW1lbnRfaApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4Q3VzdG9tRWxlbWVudENvbnN0cnVj
dG9yQ3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEN1c3Rv
bUVsZW1lbnRDb25zdHJ1Y3RvckN1c3RvbS5jcHAKaW5kZXggNTVlMzhjZTk5NWY5M2ZmZTZhNTJk
MmVjZWY0ZGVmMDk2NGY5NTYyZi4uMmVkYWY5ZDljZTcxNjU2ZmExOGYzM2NkNzAzMzk3MWE3M2Zk
YWU1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4Q3Vz
dG9tRWxlbWVudENvbnN0cnVjdG9yQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9jdXN0b20vVjhDdXN0b21FbGVtZW50Q29uc3RydWN0b3JDdXN0b20uY3BwCkBAIC0z
Miw4ICszMiw4IEBACiAjaW5jbHVkZSAiVjhDdXN0b21FbGVtZW50Q29uc3RydWN0b3IuaCIKIAog
I2luY2x1ZGUgIkN1c3RvbUVsZW1lbnRDb25zdHJ1Y3Rvci5oIgorI2luY2x1ZGUgIkN1c3RvbUVs
ZW1lbnRIZWxwZXJzLmgiCiAjaW5jbHVkZSAiVjhCaW5kaW5nLmgiCi0jaW5jbHVkZSAiVjhDdXN0
b21FbGVtZW50LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNDgsNyArNDgsNyBAQCB2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhDdXN0b21FbGVtZW50Q29uc3RydWN0b3I6OmNhbGxBc0Z1
bmN0aW9uQ2FsbGJhY2soY29uc3QgdgogICAgIFJlZlB0cjxFbGVtZW50PiBlbGVtZW50ID0gaW1w
bC0+Y3JlYXRlRWxlbWVudCgpOwogICAgIGlmICghZWxlbWVudCkKICAgICAgICAgcmV0dXJuIHY4
VW5kZWZpbmVkKCk7Ci0gICAgcmV0dXJuIFY4Q3VzdG9tRWxlbWVudDo6d3JhcChlbGVtZW50Lmdl
dCgpLCBhcmdzLkhvbGRlcigpLCBpbXBsLCBhcmdzLkdldElzb2xhdGUoKSk7CisgICAgcmV0dXJu
IEN1c3RvbUVsZW1lbnRIZWxwZXJzOjp3cmFwKGVsZW1lbnQuZ2V0KCksIGFyZ3MuSG9sZGVyKCks
IGltcGwsIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL21ha2VfbmFtZXMucGwgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vbWFrZV9uYW1lcy5wbAppbmRleCAwMTcwMjc1MjdmM2IyN2Y1ZTE2MjE4ODBiMjE1
Y2ZlYWY2ZjNhNzI3Li5mYmJmODY3YzU0YTFjYjdkNGM2ZjJlZjUxMjM1MGI5M2Q3YzBmY2JiIDEw
MDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vbWFrZV9uYW1lcy5wbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vbWFrZV9uYW1lcy5wbApAQCAtMTIxOSw3ICsxMjE5LDcgQEAgRU5ECiAjaW5j
bHVkZSAiVjgkcGFyYW1ldGVyc3tuYW1lc3BhY2V9RWxlbWVudC5oIgogCiAjaWYgRU5BQkxFKENV
U1RPTV9FTEVNRU5UUykKLSNpbmNsdWRlICJWOEN1c3RvbUVsZW1lbnQuaCIKKyNpbmNsdWRlICJD
dXN0b21FbGVtZW50SGVscGVycy5oIgogI2VuZGlmCiAKICNpbmNsdWRlIDx2OC5oPgpAQCAtMTI5
Niw4ICsxMjk2LDggQEAgRU5ECiAgICAgaWYgKCR3cmFwcGVyRmFjdG9yeVR5cGUgZXEgIlY4Iikg
ewogICAgICAgICBwcmludCBGIDw8RU5ECiAjaWYgRU5BQkxFKENVU1RPTV9FTEVNRU5UUykKLSAg
ICBpZiAoUGFzc1JlZlB0cjxDdXN0b21FbGVtZW50Q29uc3RydWN0b3I+IGNvbnN0cnVjdG9yID0g
VjhDdXN0b21FbGVtZW50Ojpjb25zdHJ1Y3Rvck9mKGVsZW1lbnQpKQotICAgICAgICByZXR1cm4g
VjhDdXN0b21FbGVtZW50Ojp3cmFwKGVsZW1lbnQsIGNyZWF0aW9uQ29udGV4dCwgY29uc3RydWN0
b3IsIGlzb2xhdGUpOworICAgIGlmIChQYXNzUmVmUHRyPEN1c3RvbUVsZW1lbnRDb25zdHJ1Y3Rv
cj4gY29uc3RydWN0b3IgPSBDdXN0b21FbGVtZW50SGVscGVyczo6Y29uc3RydWN0b3JPZihlbGVt
ZW50KSkKKyAgICAgICAgcmV0dXJuIEN1c3RvbUVsZW1lbnRIZWxwZXJzOjp3cmFwKGVsZW1lbnQs
IGNyZWF0aW9uQ29udGV4dCwgY29uc3RydWN0b3IsIGlzb2xhdGUpOwogI2VuZGlmCiBFTkQKIDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>