<?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>202306</bug_id>
          
          <creation_ts>2019-09-27 05:15:52 -0700</creation_ts>
          <short_desc>[Nicosia] Add overflow, overflow proxy node implementations</short_desc>
          <delta_ts>2019-09-29 01:57:16 -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>New Bugs</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>198475</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Zan Dobersek">zan</reporter>
          <assigned_to name="Zan Dobersek">zan</assigned_to>
          <cc>cgarcia</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fred.wang</cc>
    
    <cc>jamesr</cc>
    
    <cc>luiz</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1574782</commentid>
    <comment_count>0</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2019-09-27 05:15:52 -0700</bug_when>
    <thetext>[Nicosia] Add overflow, overflow proxy node implementations</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1574783</commentid>
    <comment_count>1</comment_count>
      <attachid>379718</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2019-09-27 05:18:46 -0700</bug_when>
    <thetext>Created attachment 379718
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1575135</commentid>
    <comment_count>2</comment_count>
      <attachid>379718</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2019-09-29 01:56:36 -0700</bug_when>
    <thetext>Comment on attachment 379718
Patch

Clearing flags on attachment: 379718

Committed r250489: &lt;https://trac.webkit.org/changeset/250489&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1575136</commentid>
    <comment_count>3</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2019-09-29 01:56:40 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1575137</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-09-29 01:57:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/55816277&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>379718</attachid>
            <date>2019-09-27 05:18:46 -0700</date>
            <delta_ts>2019-09-29 01:56:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202306-20190927141845.patch</filename>
            <type>text/plain</type>
            <size>18921</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUwNDIwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTEzNTJhYTllYmZjODM0
NzRhOGFmODEzZmI5MTZlZTk5MTgzNWFlZC4uZTBjMzM0YWI3M2ZkYzg1YTIyNmZiOTBhNzQ1ZTI4
MjBmNDZiMGIxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE5LTA5LTI3ICBaYW4g
RG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KKworICAgICAgICBbTmljb3NpYV0gQWRk
IG92ZXJmbG93LCBvdmVyZmxvdyBwcm94eSBub2RlIGltcGxlbWVudGF0aW9ucworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyMzA2CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIHRoZSBTY3JvbGxpbmdU
cmVlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGUgYW5kCisgICAgICAgIFNjcm9sbGluZ1RyZWVPdmVy
Zmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhIGNsYXNzZXMsIGltcGxlbWVudGluZyB0aGUKKyAgICAg
ICAgbWlzc2luZyBvdmVybGZvdyBub2RlIHR5cGVzLiBCb3RoIGltcGxlbWVudGF0aW9ucyBhcmUg
YmFzZWQgb24gdGhlCisgICAgICAgIGNvcnJlc3BvbnNpbmcgY2xhc3NlcyBmb3IgQ29jb2EvTWFj
IHBsYXRmb3JtcyBhbmQgc2hvdWxkIGlkZWFsbHkKKyAgICAgICAgc2hhcmUgbW9zdCBvZiB0aGUg
cGxhdGZvcm0tYWdub3N0aWMgbG9naWMuCisKKyAgICAgICAgKiBTb3VyY2VzV1BFLnR4dDoKKyAg
ICAgICAgKiBwYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9s
bFByb3h5Tm9kZS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nVHJlZU92
ZXJmbG93U2Nyb2xsUHJveHlOb2RlOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
aW5nVHJlZU92ZXJmbG93U2Nyb2xsUHJveHlOb2RlOjpTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3Jv
bGxQcm94eU5vZGUpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Ny
b2xsUHJveHlOb2RlOjpjb21taXRTdGF0ZUJlZm9yZUNoaWxkcmVuKToKKyAgICAgICAgKFdlYkNv
cmU6OlNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbFByb3h5Tm9kZTo6YXBwbHlMYXllclBvc2l0
aW9ucyk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxQcm94
eU5vZGU6OmR1bXBQcm9wZXJ0aWVzIGNvbnN0KToKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9u
aWNvc2lhL1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbFByb3h5Tm9kZS5oOiBBZGRlZC4KKyAg
ICAgICAgKiBwYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9s
bGluZ05vZGVOaWNvc2lhLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdU
cmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNv
cmU6OlNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhOjpTY3JvbGxpbmdU
cmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYSk6CisgICAgICAgIChXZWJDb3JlOjpTY3Jv
bGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYTo6Y29tbWl0U3RhdGVBZnRlckNo
aWxkcmVuKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGlu
Z05vZGVOaWNvc2lhOjphZGp1c3RlZFNjcm9sbFBvc2l0aW9uIGNvbnN0KToKKyAgICAgICAgKFdl
YkNvcmU6OlNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhOjpyZXBvc2l0
aW9uU2Nyb2xsaW5nTGF5ZXJzKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVPdmVy
Zmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhOjpoYW5kbGVXaGVlbEV2ZW50KToKKyAgICAgICAgKiBw
YWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVO
aWNvc2lhLmg6IEFkZGVkLgorCiAyMDE5LTA5LTI3ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtA
aWdhbGlhLmNvbT4KIAogICAgICAgICBbTmljb3NpYV0gSW1wbGVtZW50IGZyYW1lIHNjcm9sbGlu
ZyBmdW5jdGlvbmFsaXR5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzV1BFLnR4
dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXNXUEUudHh0CmluZGV4IDk5OThiNzZhZThiNjYzNThh
ZTc5ZDliZWI3NjYzYTQyZDQzODExMjcuLjVhYjIxMTk0ZTdjNDA0ZDRmMjgwMTk4MzlmMzI4ZDY1
NjY2ZjRhZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXNXUEUudHh0CisrKyBi
L1NvdXJjZS9XZWJDb3JlL1NvdXJjZXNXUEUudHh0CkBAIC01Miw2ICs1Miw4IEBAIHBhZ2Uvc2Ny
b2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nU3RhdGVOb2RlTmljb3NpYS5jcHAKIHBhZ2Uvc2Nyb2xs
aW5nL25pY29zaWEvU2Nyb2xsaW5nVHJlZUZpeGVkTm9kZS5jcHAKIHBhZ2Uvc2Nyb2xsaW5nL25p
Y29zaWEvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU5pY29zaWEuY3BwCiBwYWdlL3Nj
cm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVOaWNvc2lhLmNwcAorcGFnZS9zY3JvbGxpbmcv
bmljb3NpYS9TY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGUuY3BwCitwYWdlL3Nj
cm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lh
LmNwcAogcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlUG9zaXRpb25lZE5vZGUu
Y3BwCiBwYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVTdGlja3lOb2RlLmNwcAog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9s
bGluZ1RyZWVPdmVyZmxvd1Njcm9sbFByb3h5Tm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbFByb3h5Tm9kZS5j
cHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMjFjZTM0NjBiYmNkYWVhN2EzOTFlNWRhOGQyMjRmYjhiYWU2YjQ5YQot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEv
U2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsUHJveHlOb2RlLmNwcApAQCAtMCwwICsxLDExMSBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTkgSWdhbGlhIFMuTC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENP
TlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIlNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbFByb3h5
Tm9kZS5oIgorCisjaWYgRU5BQkxFKEFTWU5DX1NDUk9MTElORykgJiYgVVNFKE5JQ09TSUEpCisK
KyNpbmNsdWRlICJMb2dnaW5nLmgiCisjaW5jbHVkZSAiTmljb3NpYVBsYXRmb3JtTGF5ZXIuaCIK
KyNpbmNsdWRlICJTY3JvbGxpbmdTdGF0ZU92ZXJmbG93U2Nyb2xsUHJveHlOb2RlLmgiCisjaW5j
bHVkZSAiU2Nyb2xsaW5nU3RhdGVUcmVlLmgiCisjaW5jbHVkZSAiU2Nyb2xsaW5nVHJlZS5oIgor
I2luY2x1ZGUgIlNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGUuaCIKKyNpbmNsdWRl
IDx3dGYvdGV4dC9UZXh0U3RyZWFtLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworUmVmPFNj
cm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbFByb3h5Tm9kZT4gU2Nyb2xsaW5nVHJlZU92ZXJmbG93
U2Nyb2xsUHJveHlOb2RlOjpjcmVhdGUoU2Nyb2xsaW5nVHJlZSYgc2Nyb2xsaW5nVHJlZSwgU2Ny
b2xsaW5nTm9kZUlEIG5vZGVJRCkKK3sKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBTY3JvbGxp
bmdUcmVlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGUoc2Nyb2xsaW5nVHJlZSwgbm9kZUlEKSk7Cit9
CisKK1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbFByb3h5Tm9kZTo6U2Nyb2xsaW5nVHJlZU92
ZXJmbG93U2Nyb2xsUHJveHlOb2RlKFNjcm9sbGluZ1RyZWUmIHNjcm9sbGluZ1RyZWUsIFNjcm9s
bGluZ05vZGVJRCBub2RlSUQpCisgICAgOiBTY3JvbGxpbmdUcmVlTm9kZShzY3JvbGxpbmdUcmVl
LCBTY3JvbGxpbmdOb2RlVHlwZTo6T3ZlcmZsb3dQcm94eSwgbm9kZUlEKQoreworfQorCitTY3Jv
bGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGU6On5TY3JvbGxpbmdUcmVlT3ZlcmZsb3dT
Y3JvbGxQcm94eU5vZGUoKSA9IGRlZmF1bHQ7CisKK3ZvaWQgU2Nyb2xsaW5nVHJlZU92ZXJmbG93
U2Nyb2xsUHJveHlOb2RlOjpjb21taXRTdGF0ZUJlZm9yZUNoaWxkcmVuKGNvbnN0IFNjcm9sbGlu
Z1N0YXRlTm9kZSYgc3RhdGVOb2RlKQoreworICAgIGNvbnN0IFNjcm9sbGluZ1N0YXRlT3ZlcmZs
b3dTY3JvbGxQcm94eU5vZGUmIG92ZXJmbG93UHJveHlTdGF0ZU5vZGUgPSBkb3duY2FzdDxTY3Jv
bGxpbmdTdGF0ZU92ZXJmbG93U2Nyb2xsUHJveHlOb2RlPihzdGF0ZU5vZGUpOworCisgICAgaWYg
KG92ZXJmbG93UHJveHlTdGF0ZU5vZGUuaGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRl
Tm9kZTo6TGF5ZXIpKSB7CisgICAgICAgIE5pY29zaWE6OlBsYXRmb3JtTGF5ZXIqIGxheWVyID0g
c3RhdGVOb2RlLmxheWVyKCk7CisgICAgICAgIG1fbGF5ZXIgPSBkb3duY2FzdDxOaWNvc2lhOjpD
b21wb3NpdGlvbkxheWVyPihsYXllcik7CisgICAgfQorCisgICAgaWYgKG92ZXJmbG93UHJveHlT
dGF0ZU5vZGUuaGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlT3ZlcmZsb3dTY3JvbGxQ
cm94eU5vZGU6Ok92ZXJmbG93U2Nyb2xsaW5nTm9kZSkpCisgICAgICAgIG1fb3ZlcmZsb3dTY3Jv
bGxpbmdOb2RlSUQgPSBvdmVyZmxvd1Byb3h5U3RhdGVOb2RlLm92ZXJmbG93U2Nyb2xsaW5nTm9k
ZSgpOworCisgICAgaWYgKG1fb3ZlcmZsb3dTY3JvbGxpbmdOb2RlSUQpIHsKKyAgICAgICAgc2Ny
b2xsaW5nVHJlZSgpLm92ZXJmbG93UmVsYXRlZE5vZGVzKCkuZW5zdXJlKG1fb3ZlcmZsb3dTY3Jv
bGxpbmdOb2RlSUQsCisgICAgICAgICAgICBbXSB7CisgICAgICAgICAgICAgICAgcmV0dXJuIFZl
Y3RvcjxTY3JvbGxpbmdOb2RlSUQ+KCk7CisgICAgICAgICAgICB9KS5pdGVyYXRvci0+dmFsdWUu
YXBwZW5kKHNjcm9sbGluZ05vZGVJRCgpKTsKKworICAgICAgICBzY3JvbGxpbmdUcmVlKCkuYWN0
aXZlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGVzKCkuYWRkKCp0aGlzKTsKKyAgICB9Cit9CisKK3Zv
aWQgU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsUHJveHlOb2RlOjphcHBseUxheWVyUG9zaXRp
b25zKCkKK3sKKyAgICBGbG9hdFBvaW50IHNjcm9sbE9mZnNldDsKKyAgICBpZiAoYXV0byogbm9k
ZSA9IHNjcm9sbGluZ1RyZWUoKS5ub2RlRm9ySUQobV9vdmVyZmxvd1Njcm9sbGluZ05vZGVJRCkp
IHsKKyAgICAgICAgaWYgKGlzPFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGU+KG5v
ZGUpKSB7CisgICAgICAgICAgICBhdXRvJiBvdmVyZmxvd05vZGUgPSBkb3duY2FzdDxTY3JvbGxp
bmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlPigqbm9kZSk7CisgICAgICAgICAgICBzY3JvbGxP
ZmZzZXQgPSBvdmVyZmxvd05vZGUuY3VycmVudFNjcm9sbE9mZnNldCgpOworICAgICAgICB9Cisg
ICAgfQorCisgICAgTE9HX1dJVEhfU1RSRUFNKFNjcm9sbGluZywgc3RyZWFtIDw8ICJTY3JvbGxp
bmdUcmVlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGUgIiA8PCBzY3JvbGxpbmdOb2RlSUQoKSA8PCAi
IGFwcGx5TGF5ZXJQb3NpdGlvbnM6IHNldHRpbmcgYm91bmRzIG9yaWdpbiB0byAiIDw8IHNjcm9s
bE9mZnNldCk7CisgICAgbV9sYXllci0+YWNjZXNzU3RhZ2luZygKKyAgICAgICAgWyZzY3JvbGxP
ZmZzZXRdKE5pY29zaWE6OkNvbXBvc2l0aW9uTGF5ZXI6OkxheWVyU3RhdGUmIHN0YXRlKQorICAg
ICAgICB7CisgICAgICAgICAgICBzdGF0ZS5ib3VuZHNPcmlnaW4gPSBzY3JvbGxPZmZzZXQ7Cisg
ICAgICAgICAgICBzdGF0ZS5kZWx0YS5ib3VuZHNPcmlnaW5DaGFuZ2VkID0gdHJ1ZTsKKyAgICAg
ICAgfSk7Cit9CisKK3ZvaWQgU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsUHJveHlOb2RlOjpk
dW1wUHJvcGVydGllcyhUZXh0U3RyZWFtJiB0cywgU2Nyb2xsaW5nU3RhdGVUcmVlQXNUZXh0QmVo
YXZpb3IgYmVoYXZpb3IpIGNvbnN0Cit7CisgICAgdHMgPDwgIm92ZXJmbG93IHNjcm9sbCBwcm94
eSBub2RlIjsKKyAgICBTY3JvbGxpbmdUcmVlTm9kZTo6ZHVtcFByb3BlcnRpZXModHMsIGJlaGF2
aW9yKTsKKworICAgIGlmIChhdXRvKiByZWxhdGVkT3ZlcmZsb3dOb2RlID0gc2Nyb2xsaW5nVHJl
ZSgpLm5vZGVGb3JJRChtX292ZXJmbG93U2Nyb2xsaW5nTm9kZUlEKSkgeworICAgICAgICBhdXRv
IHNjcm9sbFBvc2l0aW9uID0gZG93bmNhc3Q8U2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5n
Tm9kZT4oKnJlbGF0ZWRPdmVyZmxvd05vZGUpLmN1cnJlbnRTY3JvbGxQb3NpdGlvbigpOworICAg
ICAgICB0cy5kdW1wUHJvcGVydHkoInJlbGF0ZWQgb3ZlcmZsb3cgc2Nyb2xsaW5nIG5vZGUgc2Ny
b2xsIHBvc2l0aW9uIiwgc2Nyb2xsUG9zaXRpb24pOworICAgIH0KKworICAgIGlmIChiZWhhdmlv
ciAmIFNjcm9sbGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2aW9ySW5jbHVkZU5vZGVJRHMpCisgICAg
ICAgIHRzLmR1bXBQcm9wZXJ0eSgib3ZlcmZsb3cgc2Nyb2xsaW5nIG5vZGUiLCBtX292ZXJmbG93
U2Nyb2xsaW5nTm9kZUlEKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYg
Ly8gRU5BQkxFKEFTWU5DX1NDUk9MTElORykgJiYgVVNFKE5JQ09TSUEpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVPdmVyZmxv
d1Njcm9sbFByb3h5Tm9kZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbmljb3Np
YS9TY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGUuaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41OGRm
ZjQ1YTQ4YWEwMTg3MTA3ZTM0YTZiYzg1NDk2NjM0OGM2YThjCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlT3ZlcmZs
b3dTY3JvbGxQcm94eU5vZGUuaApAQCAtMCwwICsxLDY0IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDE5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykg
MjAxOSBJZ2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIEVOQUJMRShB
U1lOQ19TQ1JPTExJTkcpICYmIFVTRShOSUNPU0lBKQorCisjaW5jbHVkZSAiU2Nyb2xsaW5nVHJl
ZU5vZGUuaCIKKworI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KKworbmFtZXNwYWNlIE5pY29zaWEg
eworY2xhc3MgQ29tcG9zaXRpb25MYXllcjsKK30KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitj
bGFzcyBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGUgZmluYWwgOiBwdWJsaWMg
U2Nyb2xsaW5nVHJlZU5vZGUgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8U2Nyb2xsaW5nVHJl
ZU92ZXJmbG93U2Nyb2xsUHJveHlOb2RlPiBjcmVhdGUoU2Nyb2xsaW5nVHJlZSYsIFNjcm9sbGlu
Z05vZGVJRCk7CisgICAgdmlydHVhbCB+U2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsUHJveHlO
b2RlKCk7CisKKyAgICBTY3JvbGxpbmdOb2RlSUQgb3ZlcmZsb3dTY3JvbGxpbmdOb2RlSUQoKSBj
b25zdCB7IHJldHVybiBtX292ZXJmbG93U2Nyb2xsaW5nTm9kZUlEOyB9CisKK3Byb3RlY3RlZDoK
KyAgICBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGUoU2Nyb2xsaW5nVHJlZSYs
IFNjcm9sbGluZ05vZGVJRCk7CisKKyAgICB2b2lkIGNvbW1pdFN0YXRlQmVmb3JlQ2hpbGRyZW4o
Y29uc3QgU2Nyb2xsaW5nU3RhdGVOb2RlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBhcHBseUxheWVy
UG9zaXRpb25zKCkgb3ZlcnJpZGU7CisKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGR1bXBQcm9w
ZXJ0aWVzKFRleHRTdHJlYW0mLCBTY3JvbGxpbmdTdGF0ZVRyZWVBc1RleHRCZWhhdmlvcikgY29u
c3Qgb3ZlcnJpZGU7CisKKyAgICBTY3JvbGxpbmdOb2RlSUQgbV9vdmVyZmxvd1Njcm9sbGluZ05v
ZGVJRCB7IDAgfTsKKyAgICBSZWZQdHI8Tmljb3NpYTo6Q29tcG9zaXRpb25MYXllcj4gbV9sYXll
cjsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworU1BFQ0lBTElaRV9UWVBFX1RSQUlU
U19TQ1JPTExJTkdfTk9ERShTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGUsIGlz
T3ZlcmZsb3dTY3JvbGxQcm94eU5vZGUoKSkKKworI2VuZGlmIC8vIEVOQUJMRShBU1lOQ19TQ1JP
TExJTkcpICYmIFVTRShOSUNPU0lBKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9z
Y3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3Np
YS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9uaWNvc2lhL1Njcm9sbGluZ1Ry
ZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zYzdiMTcyYjA1
M2Q3NTcwNWYyMWU4ODJlZDI3OWZlODkxZTYzMjQ1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3Jv
bGxpbmdOb2RlTmljb3NpYS5jcHAKQEAgLTAsMCArMSwxMDUgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDE5IElnYWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqICAgIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCisgKiAg
ICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQKKyAqICAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JT
CisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogSE9MREVS
IE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAq
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5n
Tm9kZU5pY29zaWEuaCIKKworI2lmIEVOQUJMRShBU1lOQ19TQ1JPTExJTkcpICYmIFVTRShOSUNP
U0lBKQorCisjaW5jbHVkZSAiTmljb3NpYVBsYXRmb3JtTGF5ZXIuaCIKKyNpbmNsdWRlICJTY3Jv
bGxpbmdTdGF0ZU92ZXJmbG93U2Nyb2xsaW5nTm9kZS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7
CisKK1JlZjxTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlPiBTY3JvbGxpbmdUcmVl
T3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYTo6Y3JlYXRlKFNjcm9sbGluZ1RyZWUmIHNjcm9s
bGluZ1RyZWUsIFNjcm9sbGluZ05vZGVJRCBub2RlSUQpCit7CisgICAgcmV0dXJuIGFkb3B0UmVm
KCpuZXcgU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pY29zaWEoc2Nyb2xsaW5n
VHJlZSwgbm9kZUlEKSk7Cit9CisKK1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVO
aWNvc2lhOjpTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYShTY3JvbGxp
bmdUcmVlJiBzY3JvbGxpbmdUcmVlLCBTY3JvbGxpbmdOb2RlSUQgbm9kZUlEKQorICAgIDogU2Ny
b2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZShzY3JvbGxpbmdUcmVlLCBub2RlSUQpCit7
Cit9CisKK1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhOjp+U2Nyb2xs
aW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pY29zaWEoKSA9IGRlZmF1bHQ7CisKK3ZvaWQg
U2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pY29zaWE6OmNvbW1pdFN0YXRlQWZ0
ZXJDaGlsZHJlbihjb25zdCBTY3JvbGxpbmdTdGF0ZU5vZGUmIHN0YXRlTm9kZSkKK3sKKyAgICBT
Y3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlOjpjb21taXRTdGF0ZUFmdGVyQ2hpbGRy
ZW4oc3RhdGVOb2RlKTsKKworICAgIGNvbnN0IGF1dG8mIG92ZXJmbG93U3RhdGVOb2RlID0gZG93
bmNhc3Q8U2Nyb2xsaW5nU3RhdGVPdmVyZmxvd1Njcm9sbGluZ05vZGU+KHN0YXRlTm9kZSk7Cisg
ICAgaWYgKG92ZXJmbG93U3RhdGVOb2RlLmhhc0NoYW5nZWRQcm9wZXJ0eShTY3JvbGxpbmdTdGF0
ZVNjcm9sbGluZ05vZGU6OlJlcXVlc3RlZFNjcm9sbFBvc2l0aW9uKSkgeworICAgICAgICBhdXRv
IHNjcm9sbFR5cGUgPSBvdmVyZmxvd1N0YXRlTm9kZS5yZXF1ZXN0ZWRTY3JvbGxQb3NpdGlvblJl
cHJlc2VudHNQcm9ncmFtbWF0aWNTY3JvbGwoKSA/IFNjcm9sbFR5cGU6OlByb2dyYW1tYXRpYyA6
IFNjcm9sbFR5cGU6OlVzZXI7CisgICAgICAgIHNjcm9sbFRvKG92ZXJmbG93U3RhdGVOb2RlLnJl
cXVlc3RlZFNjcm9sbFBvc2l0aW9uKCksIHNjcm9sbFR5cGUpOworICAgIH0KK30KKworRmxvYXRQ
b2ludCBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYTo6YWRqdXN0ZWRT
Y3JvbGxQb3NpdGlvbihjb25zdCBGbG9hdFBvaW50JiBwb3NpdGlvbiwgU2Nyb2xsUG9zaXRpb25D
bGFtcCBjbGFtcCkgY29uc3QKK3sKKyAgICBGbG9hdFBvaW50IHNjcm9sbFBvc2l0aW9uKHJvdW5k
Zihwb3NpdGlvbi54KCkpLCByb3VuZGYocG9zaXRpb24ueSgpKSk7CisgICAgcmV0dXJuIFNjcm9s
bGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGU6OmFkanVzdGVkU2Nyb2xsUG9zaXRpb24oc2Ny
b2xsUG9zaXRpb24sIGNsYW1wKTsKK30KKwordm9pZCBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3Jv
bGxpbmdOb2RlTmljb3NpYTo6cmVwb3NpdGlvblNjcm9sbGluZ0xheWVycygpCit7CisgICAgTmlj
b3NpYTo6UGxhdGZvcm1MYXllciogc2Nyb2xsTGF5ZXIgPSBzY3JvbGxlZENvbnRlbnRzTGF5ZXIo
KTsKKyAgICBBU1NFUlQoc2Nyb2xsTGF5ZXIpOworICAgIGF1dG8mIGNvbXBvc2l0aW9uTGF5ZXIg
PSBkb3duY2FzdDxOaWNvc2lhOjpDb21wb3NpdGlvbkxheWVyPigqc2Nyb2xsTGF5ZXIpOworCisg
ICAgYXV0byBzY3JvbGxPZmZzZXQgPSBjdXJyZW50U2Nyb2xsT2Zmc2V0KCk7CisKKyAgICBjb21w
b3NpdGlvbkxheWVyLmFjY2Vzc1N0YWdpbmcoCisgICAgICAgIFsmc2Nyb2xsT2Zmc2V0XShOaWNv
c2lhOjpDb21wb3NpdGlvbkxheWVyOjpMYXllclN0YXRlJiBzdGF0ZSkKKyAgICAgICAgeworICAg
ICAgICAgICAgc3RhdGUuYm91bmRzT3JpZ2luID0gc2Nyb2xsT2Zmc2V0OworICAgICAgICAgICAg
c3RhdGUuZGVsdGEuYm91bmRzT3JpZ2luQ2hhbmdlZCA9IHRydWU7CisgICAgICAgIH0pOworfQor
CitTY3JvbGxpbmdFdmVudFJlc3VsdCBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2Rl
Tmljb3NpYTo6aGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVs
RXZlbnQpCit7CisgICAgaWYgKCFjYW5IYXZlU2Nyb2xsYmFycygpKQorICAgICAgICByZXR1cm4g
U2Nyb2xsaW5nRXZlbnRSZXN1bHQ6OkRpZE5vdEhhbmRsZUV2ZW50OworCisgICAgaWYgKHdoZWVs
RXZlbnQuZGVsdGFYKCkgfHwgd2hlZWxFdmVudC5kZWx0YVkoKSkgeworICAgICAgICBOaWNvc2lh
OjpQbGF0Zm9ybUxheWVyKiBzY3JvbGxMYXllciA9IHNjcm9sbENvbnRhaW5lckxheWVyKCk7Cisg
ICAgICAgIEFTU0VSVChzY3JvbGxMYXllcik7CisgICAgICAgIGF1dG8mIGNvbXBvc2l0aW9uTGF5
ZXIgPSBkb3duY2FzdDxOaWNvc2lhOjpDb21wb3NpdGlvbkxheWVyPigqc2Nyb2xsTGF5ZXIpOwor
CisgICAgICAgIGF1dG8gdXBkYXRlU2NvcGUgPSBjb21wb3NpdGlvbkxheWVyLmNyZWF0ZVVwZGF0
ZVNjb3BlKCk7CisgICAgICAgIHNjcm9sbEJ5KHsgd2hlZWxFdmVudC5kZWx0YVgoKSwgLXdoZWVs
RXZlbnQuZGVsdGFZKCkgfSk7CisgICAgfQorCisgICAgc2Nyb2xsaW5nVHJlZSgpLnNldE9yQ2xl
YXJMYXRjaGVkTm9kZSh3aGVlbEV2ZW50LCBzY3JvbGxpbmdOb2RlSUQoKSk7CisKKyAgICByZXR1
cm4gU2Nyb2xsaW5nRXZlbnRSZXN1bHQ6OkRpZEhhbmRsZUV2ZW50OworfQorCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoQVNZTkNfU0NST0xMSU5HKSAmJiBVU0Uo
TklDT1NJQSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25pY29z
aWEvU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pY29zaWEuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xs
aW5nTm9kZU5pY29zaWEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMDNkYjU5NjVjMTk1MjNlMTJkZDUzNTVkMjI1
N2Q5MGIwOTU5ZjcyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3Jv
bGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTmljb3NpYS5o
CkBAIC0wLDAgKzEsNTYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTkgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDE5IElnYWxpYSBTLkwuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCisgKiAgICBkaXNjbGFpbWVyIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKKyAqICAgIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI
RSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElN
SVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAor
ICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIEVOQUJM
RShBU1lOQ19TQ1JPTExJTkcpICYmIFVTRShOSUNPU0lBKQorCisjaW5jbHVkZSAiU2Nyb2xsaW5n
VHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2Ns
YXNzIFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhIGZpbmFsIDogcHVi
bGljIFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGUgeworcHVibGljOgorICAgIHN0
YXRpYyBSZWY8U2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZT4gY3JlYXRlKFNjcm9s
bGluZ1RyZWUmLCBTY3JvbGxpbmdOb2RlSUQpOworICAgIHZpcnR1YWwgflNjcm9sbGluZ1RyZWVP
dmVyZmxvd1Njcm9sbGluZ05vZGVOaWNvc2lhKCk7CisKK3ByaXZhdGU6CisgICAgU2Nyb2xsaW5n
VHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU5pY29zaWEoU2Nyb2xsaW5nVHJlZSYsIFNjcm9sbGlu
Z05vZGVJRCk7CisKKyAgICB2b2lkIGNvbW1pdFN0YXRlQWZ0ZXJDaGlsZHJlbihjb25zdCBTY3Jv
bGxpbmdTdGF0ZU5vZGUmKSBvdmVycmlkZTsKKworICAgIEZsb2F0UG9pbnQgYWRqdXN0ZWRTY3Jv
bGxQb3NpdGlvbihjb25zdCBGbG9hdFBvaW50JiwgU2Nyb2xsUG9zaXRpb25DbGFtcCkgY29uc3Qg
b3ZlcnJpZGU7CisKKyAgICB2b2lkIHJlcG9zaXRpb25TY3JvbGxpbmdMYXllcnMoKSBvdmVycmlk
ZTsKKworICAgIFNjcm9sbGluZ0V2ZW50UmVzdWx0IGhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxh
dGZvcm1XaGVlbEV2ZW50Jikgb3ZlcnJpZGU7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CisKKyNlbmRpZiAvLyBFTkFCTEUoQVNZTkNfU0NST0xMSU5HKSAmJiBVU0UoTklDT1NJQSkK
</data>

          </attachment>
      

    </bug>

</bugzilla>