<?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>234939</bug_id>
          
          <creation_ts>2022-01-06 16:11:13 -0800</creation_ts>
          <short_desc>[Cleanup] RenderElement::containingBlockFor*(fixed/absolute/inflow)Position is slightly confusing</short_desc>
          <delta_ts>2022-01-07 07:10:22 -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>Layout and Rendering</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="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>kangil.han</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1828772</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2022-01-06 16:11:13 -0800</bug_when>
    <thetext>The renderer is already has a containingBlock() function which returns the correct containing block. This function is &quot;let&apos;s pretend if the renderer was absolute/fixed/inflow positioned, what would the containing block be&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1828781</commentid>
    <comment_count>1</comment_count>
      <attachid>448547</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-01-06 16:57:05 -0800</bug_when>
    <thetext>Created attachment 448547
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1828886</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-01-07 07:09:08 -0800</bug_when>
    <thetext>Committed r287744 (245814@main): &lt;https://commits.webkit.org/245814@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 448547.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1828888</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-01-07 07:10:22 -0800</bug_when>
    <thetext>&lt;rdar://problem/87249623&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>448547</attachid>
            <date>2022-01-06 16:57:05 -0800</date>
            <delta_ts>2022-01-07 07:09:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234939-20220106165705.patch</filename>
            <type>text/plain</type>
            <size>15276</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3Njk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDYyYTNiNzBiOWRhZDk3
ZmYxNjVmYWViNmUwMmU1MzhiZjQxYmYxZi4uNzUzYjI2MzBjOWJiODU0NjhiNTNhZjc2Mjg4NGM1
ZGUzN2I3ZTEyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDIyLTAxLTA2ICBBbGFu
IEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbQ2xlYW51cF0gUmVuZGVyRWxl
bWVudDo6Y29udGFpbmluZ0Jsb2NrRm9yKihmaXhlZC9hYnNvbHV0ZS9pbmZsb3cpUG9zaXRpb24g
aXMgc2xpZ2h0bHkgY29uZnVzaW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMzQ5MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBUaGVzZSAzIGhlbHBlciBmdW5jdGlvbnMgKGNvbnRhaW5pbmdCbG9ja0Zv
ckZpeGVkUG9zaXRpb24vY29udGFpbmluZ0Jsb2NrRm9yQWJzb2x1dGVQb3NpdGlvbi9jb250YWlu
aW5nQmxvY2tGb3JPYmplY3RJbkZsb3cpCisgICAgICAgIGFyZSBleHBlY3RlZCB0byByZXR1cm4g
YW4gYW5jZXN0b3IgcmVuZGVyZXIgd2hpY2ggd291bGQgYWN0IGFzIHRoZSBjb250YWluaW5nIGJs
b2NrIGlmIHRoZSByZW5kZXJlciB3YXMKKyAgICAgICAgZml4ZWQvYWJzb2x1dGUvaW5mbG93IHBv
c2l0aW9uZWQgKGluIHRoZWlyIGN1cnJlbnQgZm9ybSB0aGV5IHNob3VsZCByZWFkIGFzIGNvbnRh
aW5pbmdCbG9ja0lmVGhlUmVuZGVyZXJXYXNGaXhlZFBvc2l0aW9uZWQuLikKKworICAgICAgICBU
aGVzZSBmdW5jdGlvbnMgd2VyZSBpbnRyb2R1Y2VkIGFzIHBhcnQgb2YgTG9naWNhbFNlbGVjdGlv
bk9mZnNldENhY2hlcyB3aGVyZSB3ZSBjYWNoZSBhbGwgMyB0eXBlcyBvZgorICAgICAgICBjb250
YWluaW5nIGJsb2NrcyAoZml4ZWQvYWJzb2x1dGUvaW5mbG93KSB0byBzYXZlIGNvbnRhaW5pbmdC
bG9jaygpIGNhbGxzIGFzIHRoZSBjYWNoZWQgb2JqZWN0IGdldHMgcHJvcGFnYXRlZAorICAgICAg
ICB0byBhbmNlc3RvciByZW5kZXJlcnMgKHNvIHdlIHJlYWxseSBoYXZlIGEgIndoYXQgaWYiIHR5
cGUgb2YgdXNlIGNhc2UpLgorCisgICAgICAgIEFmdGVyIHNvbWUgcmVmYWN0b3JpbmcgKGFuZCBt
b3ZpbmcgdGhlbSBvdXQgb2YgTG9naWNhbFNlbGVjdGlvbk9mZnNldENhY2hlcyksIHdlIHN0YXJ0
ZWQgaW50cm9kdWNpbmcgbW9yZSBhbmQgbW9yZQorICAgICAgICBjYWxsc2l0ZXMgb2YgdGhlc2Ug
ZnVuY3Rpb25zIHdoZXJlIHRoZSAid2hhdCBpZiIgcXVlc3Rpb24gbWFkZSBsZXNzIHNlbnNlLgor
CisgICAgICAgIFRoaXMgcGF0Y2ggcmVwbGFjZXMgdGhlc2UgMyBmdW5jdGlvbnMgd2l0aCBhIHN0
YXRpYyBoZWxwZXI6CisgICAgICAgICAgc3RhdGljIFJlbmRlckJsb2NrKiBjb250YWluaW5nQmxv
Y2tGb3JQb3NpdGlvblR5cGUoUG9zaXRpb25UeXBlLCBjb25zdCBSZW5kZXJPYmplY3QmKTsKKyAg
ICAgICAgV2hpbGUgaXQgZG9lcyBub3QgbWFrZSB0aGUgY2FsbHNpdGVzIGxvb2sgbXVjaCBjbGVh
bmVyLCBpdCBoZWxwcyB0byBzdG9wIHRoZSBzcHJlYWQgb2YgdGhlIHNwZWNpYWwgY29udGFpbmlu
ZyBibG9jayBoYW5kbGluZyBmb3IgdG9wLWxheWVyL2JhY2tkcm9wIGJveGVzLgorCisgICAgICAg
ICogZG9tL0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6bGF5b3V0T3ZlcmZsb3dSZWN0
Q29udGFpbnNBbGxEZXNjZW5kYW50cyk6CisgICAgICAgICogcmVuZGVyaW5nL0xvZ2ljYWxTZWxl
Y3Rpb25PZmZzZXRDYWNoZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6OkxvZ2ljYWxTZWxlY3Rpb25P
ZmZzZXRDYWNoZXM6OkxvZ2ljYWxTZWxlY3Rpb25PZmZzZXRDYWNoZXMpOgorICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Om5lYXJlc3ROb25B
bm9ueW1vdXNDb250YWluaW5nQmxvY2tJbmNsdWRpbmdTZWxmKTogRGVsZXRlZC4KKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlckVsZW1lbnQ6OmNvbnRhaW5pbmdCbG9ja0ZvckZpeGVkUG9zaXRpb24g
Y29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRWxlbWVudDo6Y29udGFp
bmluZ0Jsb2NrRm9yQWJzb2x1dGVQb3NpdGlvbiBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICog
cmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW5s
aW5lLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlcklubGluZTo6c3R5bGVXaWxsQ2hhbmdl
KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGluZUJyZWFrLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckxpbmVCcmVhazo6Y29sbGVjdFNlbGVjdGlvbkdlb21ldHJpZXMpOgorICAg
ICAgICAqIHJlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6bmVh
cmVzdE5vbkFub255bW91c0NvbnRhaW5pbmdCbG9ja0luY2x1ZGluZ1NlbGYpOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyT2JqZWN0Ojpjb250YWluaW5nQmxvY2tGb3JQb3NpdGlvblR5cGUpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyT2JqZWN0Ojpjb250YWluaW5nQmxvY2sgY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyT2JqZWN0Ojpjb250YWluaW5nQmxvY2tGb3JPYmplY3RJ
bkZsb3cgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJPYmplY3Qu
aDoKKwogMjAyMi0wMS0wNiAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAg
ICAgIERyb3AgaW1wbGVtZW50YXRpb24gZm9yIENPT1AgLyBDT0VQIHZpb2xhdGlvbiByZXBvcnRp
bmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9FbGVtZW50LmNwcAppbmRleCBlZDI2MzU0NDI3OTI5MjI0MmExMWYxNTI2ZDg1
NmVjOThlMzhjZGU5Li43NjM0YmFkZWQ4NDJiMmVlOTQ2NTBhZjFlYTViMzE5NjY3MmFkNzlhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL0VsZW1lbnQuY3BwCkBAIC0xNTg1LDcgKzE1ODUsNyBAQCBzdGF0aWMgYm9vbCBs
YXlvdXRPdmVyZmxvd1JlY3RDb250YWluc0FsbERlc2NlbmRhbnRzKGNvbnN0IFJlbmRlckJveCYg
cmVuZGVyQm94KQogICAgIH0KIAogICAgIC8vIFRoaXMgcmVuZGVyZXIgbWF5IGhhdmUgcG9zaXRp
b25lZCBkZXNjZW5kYW50cyB3aG9zZSBjb250YWluaW5nIGJsb2NrIGlzIHNvbWUgYW5jZXN0b3Iu
Ci0gICAgaWYgKGF1dG8qIGNvbnRhaW5pbmdCbG9jayA9IHJlbmRlckJveC5jb250YWluaW5nQmxv
Y2tGb3JBYnNvbHV0ZVBvc2l0aW9uKCkpIHsKKyAgICBpZiAoYXV0byogY29udGFpbmluZ0Jsb2Nr
ID0gUmVuZGVyT2JqZWN0Ojpjb250YWluaW5nQmxvY2tGb3JQb3NpdGlvblR5cGUoUG9zaXRpb25U
eXBlOjpBYnNvbHV0ZSwgcmVuZGVyQm94KSkgewogICAgICAgICBpZiAoYXV0byogcG9zaXRpb25l
ZE9iamVjdHMgPSBjb250YWluaW5nQmxvY2stPnBvc2l0aW9uZWRPYmplY3RzKCkpIHsKICAgICAg
ICAgICAgIGZvciAoYXV0byogcG9zaXRpb25lZEJveCA6ICpwb3NpdGlvbmVkT2JqZWN0cykgewog
ICAgICAgICAgICAgICAgIGlmIChwb3NpdGlvbmVkQm94ID09ICZyZW5kZXJCb3gpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTG9naWNhbFNlbGVjdGlvbk9mZnNldENhY2hl
cy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xvZ2ljYWxTZWxlY3Rpb25PZmZzZXRDYWNo
ZXMuaAppbmRleCAyYTMwOWViZTZkOThiNDc1ZmEyOTkzN2E3NjM5NjBiM2Y3Mzc4ZDBjLi4zZGMx
ZDQ4YjEyMTkxMTczNGNmNmRhNTM5MWEwOTlhM2JhYzllN2NjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvTG9naWNhbFNlbGVjdGlvbk9mZnNldENhY2hlcy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9Mb2dpY2FsU2VsZWN0aW9uT2Zmc2V0Q2FjaGVzLmgKQEAg
LTg5LDkgKzg5LDkgQEAgcHVibGljOgogICAgICAgICBBU1NFUlQocm9vdEJsb2NrLmlzU2VsZWN0
aW9uUm9vdCgpKTsKICNlbmRpZgogICAgICAgICAvLyBMb2dpY2FsU2VsZWN0aW9uT2Zmc2V0Q2Fj
aGVzIHNob3VsZCBub3QgYmUgdXNlZCBvbiBhbiBvcnBoYW5lZCB0cmVlLgotICAgICAgICBtX2Nv
bnRhaW5pbmdCbG9ja0ZvckZpeGVkUG9zaXRpb24uc2V0QmxvY2socm9vdEJsb2NrLmNvbnRhaW5p
bmdCbG9ja0ZvckZpeGVkUG9zaXRpb24oKSwgbnVsbHB0cik7Ci0gICAgICAgIG1fY29udGFpbmlu
Z0Jsb2NrRm9yQWJzb2x1dGVQb3NpdGlvbi5zZXRCbG9jayhyb290QmxvY2suY29udGFpbmluZ0Js
b2NrRm9yQWJzb2x1dGVQb3NpdGlvbigpLCBudWxscHRyKTsKLSAgICAgICAgbV9jb250YWluaW5n
QmxvY2tGb3JJbmZsb3dQb3NpdGlvbi5zZXRCbG9jayhyb290QmxvY2suY29udGFpbmluZ0Jsb2Nr
Rm9yT2JqZWN0SW5GbG93KCksIG51bGxwdHIpOworICAgICAgICBtX2NvbnRhaW5pbmdCbG9ja0Zv
ckZpeGVkUG9zaXRpb24uc2V0QmxvY2soUmVuZGVyT2JqZWN0Ojpjb250YWluaW5nQmxvY2tGb3JQ
b3NpdGlvblR5cGUoUG9zaXRpb25UeXBlOjpGaXhlZCwgcm9vdEJsb2NrKSwgbnVsbHB0cik7Cisg
ICAgICAgIG1fY29udGFpbmluZ0Jsb2NrRm9yQWJzb2x1dGVQb3NpdGlvbi5zZXRCbG9jayhSZW5k
ZXJPYmplY3Q6OmNvbnRhaW5pbmdCbG9ja0ZvclBvc2l0aW9uVHlwZShQb3NpdGlvblR5cGU6OkFi
c29sdXRlLCByb290QmxvY2spLCBudWxscHRyKTsKKyAgICAgICAgbV9jb250YWluaW5nQmxvY2tG
b3JJbmZsb3dQb3NpdGlvbi5zZXRCbG9jayhSZW5kZXJPYmplY3Q6OmNvbnRhaW5pbmdCbG9ja0Zv
clBvc2l0aW9uVHlwZShQb3NpdGlvblR5cGU6OlN0YXRpYywgcm9vdEJsb2NrKSwgbnVsbHB0cik7
CiAgICAgfQogCiAgICAgTG9naWNhbFNlbGVjdGlvbk9mZnNldENhY2hlcyhSZW5kZXJCbG9jayYg
YmxvY2ssIGNvbnN0IExvZ2ljYWxTZWxlY3Rpb25PZmZzZXRDYWNoZXMmIGNhY2hlKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuY3BwCmluZGV4IGNkNzI4OTYxNmI5NWNm
ZWVhNDMxNjAxOTUwYzVhMjhiYjg5NDRiMmIuLmU3OWUwZmQ3MDVjZGFkNzFiYjFlY2Q0MjYwMjRj
NmNmMTgwMjU0NjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJF
bGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5j
cHAKQEAgLTYzNCwzNSArNjM0LDYgQEAgUmVuZGVyUHRyPFJlbmRlck9iamVjdD4gUmVuZGVyRWxl
bWVudDo6ZGV0YWNoUmVuZGVyZXJJbnRlcm5hbChSZW5kZXJPYmplY3QmIHJlbmQKICAgICByZXR1
cm4gUmVuZGVyUHRyPFJlbmRlck9iamVjdD4oJnJlbmRlcmVyKTsKIH0KIAotc3RhdGljIGlubGlu
ZSBSZW5kZXJCbG9jayogbmVhcmVzdE5vbkFub255bW91c0NvbnRhaW5pbmdCbG9ja0luY2x1ZGlu
Z1NlbGYoUmVuZGVyRWxlbWVudCogcmVuZGVyZXIpCi17Ci0gICAgd2hpbGUgKHJlbmRlcmVyICYm
ICghaXM8UmVuZGVyQmxvY2s+KCpyZW5kZXJlcikgfHwgcmVuZGVyZXItPmlzQW5vbnltb3VzQmxv
Y2soKSkpCi0gICAgICAgIHJlbmRlcmVyID0gcmVuZGVyZXItPmNvbnRhaW5pbmdCbG9jaygpOwot
ICAgIHJldHVybiBkb3duY2FzdDxSZW5kZXJCbG9jaz4ocmVuZGVyZXIpOwotfQotCi1SZW5kZXJC
bG9jayogUmVuZGVyRWxlbWVudDo6Y29udGFpbmluZ0Jsb2NrRm9yRml4ZWRQb3NpdGlvbigpIGNv
bnN0Ci17Ci0gICAgYXV0byogYW5jZXN0b3IgPSBwYXJlbnQoKTsKLSAgICB3aGlsZSAoYW5jZXN0
b3IgJiYgIWFuY2VzdG9yLT5jYW5Db250YWluRml4ZWRQb3NpdGlvbk9iamVjdHMoKSkKLSAgICAg
ICAgYW5jZXN0b3IgPSBhbmNlc3Rvci0+cGFyZW50KCk7Ci0gICAgcmV0dXJuIG5lYXJlc3ROb25B
bm9ueW1vdXNDb250YWluaW5nQmxvY2tJbmNsdWRpbmdTZWxmKGFuY2VzdG9yKTsKLX0KLQotUmVu
ZGVyQmxvY2sqIFJlbmRlckVsZW1lbnQ6OmNvbnRhaW5pbmdCbG9ja0ZvckFic29sdXRlUG9zaXRp
b24oKSBjb25zdAotewotICAgIGlmIChpczxSZW5kZXJJbmxpbmU+KCp0aGlzKSAmJiBzdHlsZSgp
LnBvc2l0aW9uKCkgPT0gUG9zaXRpb25UeXBlOjpSZWxhdGl2ZSkgewotICAgICAgICAvLyBBIHJl
bGF0aXZlbHkgcG9zaXRpb25lZCBSZW5kZXJJbmxpbmUgZm9yd2FyZHMgaXRzIGFic29sdXRlIHBv
c2l0aW9uZWQgZGVzY2VuZGFudHMgdG8KLSAgICAgICAgLy8gaXRzIG5lYXJlc3Qgbm9uLWFub255
bW91cyBjb250YWluaW5nIGJsb2NrICh0byBhdm9pZCBoYXZpbmcgcG9zaXRpb25lZCBvYmplY3Rz
IGxpc3QgaW4gUmVuZGVySW5saW5lcykuCi0gICAgICAgIHJldHVybiBuZWFyZXN0Tm9uQW5vbnlt
b3VzQ29udGFpbmluZ0Jsb2NrSW5jbHVkaW5nU2VsZihwYXJlbnQoKSk7Ci0gICAgfQotICAgIGF1
dG8qIGFuY2VzdG9yID0gcGFyZW50KCk7Ci0gICAgd2hpbGUgKGFuY2VzdG9yICYmICFhbmNlc3Rv
ci0+Y2FuQ29udGFpbkFic29sdXRlbHlQb3NpdGlvbmVkT2JqZWN0cygpKQotICAgICAgICBhbmNl
c3RvciA9IGFuY2VzdG9yLT5wYXJlbnQoKTsKLSAgICAvLyBNYWtlIHN1cmUgd2Ugb25seSByZXR1
cm4gbm9uLWFub255bW91cyBSZW5kZXJCbG9jayBhcyBjb250YWluaW5nIGJsb2NrLgotICAgIHJl
dHVybiBuZWFyZXN0Tm9uQW5vbnltb3VzQ29udGFpbmluZ0Jsb2NrSW5jbHVkaW5nU2VsZihhbmNl
c3Rvcik7Ci19Ci0KIHN0YXRpYyB2b2lkIGFkZExheWVycyhSZW5kZXJFbGVtZW50JiByZW5kZXJl
ciwgUmVuZGVyTGF5ZXIqIHBhcmVudExheWVyLCBSZW5kZXJFbGVtZW50KiYgbmV3T2JqZWN0LCBS
ZW5kZXJMYXllciomIGJlZm9yZUNoaWxkKQogewogICAgIGlmIChyZW5kZXJlci5oYXNMYXllcigp
KSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5o
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuaAppbmRleCBiOGVkYTI0
YzIwMWYxZWY2MzVjZWVjYmJlMjAyYmJjMmY3ODM5MDFkLi4yZjU4ZmJlYWFhM2FhZjU1MWVmMmNi
MDY0ZjhjZGJiNTNjMzIzZjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVt
ZW50LmgKQEAgLTIzNCw4ICsyMzQsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBhZGp1c3RDb21wdXRl
ZEZvbnRTaXplc09uQmxvY2tzKGZsb2F0IHNpemUsIGZsb2F0IHZpc2libGVXaWR0aCk7CiAgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCByZXNldFRleHRBdXRvc2l6aW5nKCk7CiAjZW5kaWYKLSAgICBS
ZW5kZXJCbG9jayogY29udGFpbmluZ0Jsb2NrRm9yRml4ZWRQb3NpdGlvbigpIGNvbnN0OwotICAg
IFJlbmRlckJsb2NrKiBjb250YWluaW5nQmxvY2tGb3JBYnNvbHV0ZVBvc2l0aW9uKCkgY29uc3Q7
CiAKICAgICBXRUJDT1JFX0VYUE9SVCBJbWFnZU9yaWVudGF0aW9uIGltYWdlT3JpZW50YXRpb24o
KSBjb25zdDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcklu
bGluZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW5saW5lLmNwcAppbmRl
eCBkYWZlYzI1YWY5ZGY3ZTA3YWUxNTJkZjE0ZWNmNjVmY2ZmMjE2MjE5Li5kNGQ3YzVjNDQyNmM1
OTJjN2EzNWY2N2M1ZmQyMjA4NjJhZTcyZjY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVySW5saW5lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVySW5saW5lLmNwcApAQCAtMTU5LDcgKzE1OSw3IEBAIHZvaWQgUmVuZGVySW5saW5lOjpz
dHlsZVdpbGxDaGFuZ2UoU3R5bGVEaWZmZXJlbmNlIGRpZmYsIGNvbnN0IFJlbmRlclN0eWxlJiBu
ZXdTCiAgICAgLy8gUmVuZGVySW5saW5lcyBmb3J3YXJkIHRoZWlyIGFic29sdXRlIHBvc2l0aW9u
ZWQgZGVzY2VuZGFudHMgdG8gdGhlaXIgKG5vbi1hbm9ueW1vdXMpIGNvbnRhaW5pbmcgYmxvY2su
CiAgICAgLy8gQ2hlY2sgaWYgdGhpcyBub24tYW5vbnltb3VzIGNvbnRhaW5pbmcgYmxvY2sgY2Fu
IGhvbGQgdGhlIGFic29sdXRlIHBvc2l0aW9uZWQgZWxlbWVudHMgd2hlbiB0aGUgaW5saW5lIGlz
IG5vIGxvbmdlciBwb3NpdGlvbmVkLgogICAgIGlmIChjYW5Db250YWluQWJzb2x1dGVseVBvc2l0
aW9uZWRPYmplY3RzKCkgJiYgbmV3U3R5bGUucG9zaXRpb24oKSA9PSBQb3NpdGlvblR5cGU6OlN0
YXRpYykgewotICAgICAgICBhdXRvKiBjb250YWluZXIgPSBjb250YWluaW5nQmxvY2tGb3JBYnNv
bHV0ZVBvc2l0aW9uKCk7CisgICAgICAgIGF1dG8qIGNvbnRhaW5lciA9IFJlbmRlck9iamVjdDo6
Y29udGFpbmluZ0Jsb2NrRm9yUG9zaXRpb25UeXBlKFBvc2l0aW9uVHlwZTo6QWJzb2x1dGUsICp0
aGlzKTsKICAgICAgICAgaWYgKGNvbnRhaW5lciAmJiAhY29udGFpbmVyLT5jYW5Db250YWluQWJz
b2x1dGVseVBvc2l0aW9uZWRPYmplY3RzKCkpCiAgICAgICAgICAgICBjb250YWluZXItPnJlbW92
ZVBvc2l0aW9uZWRPYmplY3RzKG51bGxwdHIsIE5ld0NvbnRhaW5pbmdCbG9jayk7CiAgICAgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpbmVCcmVhay5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGluZUJyZWFrLmNwcAppbmRleCA5Yzkw
YTc3MDcxYzRhNzEyYTY5MTFmZTdhNzdlNGUyYzM1NjU3YWE0Li5hMjM5NDY1MTVhOGVkYTdjODc5
YTMyYWI5MjBmOWZiYzJjNzQ1YTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTGluZUJyZWFrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyTGluZUJyZWFrLmNwcApAQCAtMTk5LDcgKzE5OSw4IEBAIHZvaWQgUmVuZGVyTGluZUJyZWFr
Ojpjb2xsZWN0U2VsZWN0aW9uR2VvbWV0cmllcyhWZWN0b3I8U2VsZWN0aW9uR2VvbWV0cnk+JiBy
ZWN0CiAgICAgICAgICAgICByZWN0LnNoaWZ0WEVkZ2VUbyhsaW5lLT5saW5lQm94VG9wKCkpOwog
ICAgIH0KIAotICAgIGF1dG8qIGNvbnRhaW5pbmdCbG9jayA9IGNvbnRhaW5pbmdCbG9ja0Zvck9i
amVjdEluRmxvdygpOworICAgIC8vIEZJWE1FOiBPdXQtb2YtZmxvdyBwb3NpdGlvbmVkIGxpbmUg
YnJlYWtzIGRvIG5vdCBmb2xsb3cgbm9ybWFsIGNvbnRhaW5pbmcgYmxvY2sgY2hhaW4uCisgICAg
YXV0byogY29udGFpbmluZ0Jsb2NrID0gUmVuZGVyT2JqZWN0Ojpjb250YWluaW5nQmxvY2tGb3JQ
b3NpdGlvblR5cGUoUG9zaXRpb25UeXBlOjpTdGF0aWMsICp0aGlzKTsKICAgICAvLyBNYXAgcmVj
dCwgZXh0ZW5kZWQgbGVmdCB0byBsZWZ0T2Zmc2V0LCBhbmQgcmlnaHQgdG8gcmlnaHRPZmZzZXQs
IHRocm91Z2ggdHJhbnNmb3JtcyB0byBnZXQgbWluWCBhbmQgbWF4WC4KICAgICBMb2dpY2FsU2Vs
ZWN0aW9uT2Zmc2V0Q2FjaGVzIGNhY2hlKCpjb250YWluaW5nQmxvY2spOwogICAgIExheW91dFVu
aXQgbGVmdE9mZnNldCA9IGNvbnRhaW5pbmdCbG9jay0+bG9naWNhbExlZnRTZWxlY3Rpb25PZmZz
ZXQoKmNvbnRhaW5pbmdCbG9jaywgTGF5b3V0VW5pdChydW4tPmxvZ2ljYWxUb3AoKSksIGNhY2hl
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAKaW5kZXggYzkzMTNl
YmJkZTE2ZmNhN2UxY2M0ZGY3NmUwYmM3MjMyNzNjOGFlMi4uNTA0NTAyNDg4ZDg0ZGE5MTVhNGQy
MTA3N2U4YzhjYTlhOWZmZTRjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlck9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9i
amVjdC5jcHAKQEAgLTY1NiwyMSArNjU2LDY2IEBAIHZvaWQgUmVuZGVyT2JqZWN0OjpzZXRMYXll
ck5lZWRzRnVsbFJlcGFpbnRGb3JQb3NpdGlvbmVkTW92ZW1lbnRMYXlvdXQoKQogICAgIGRvd25j
YXN0PFJlbmRlckxheWVyTW9kZWxPYmplY3Q+KCp0aGlzKS5sYXllcigpLT5zZXRSZXBhaW50U3Rh
dHVzKE5lZWRzRnVsbFJlcGFpbnRGb3JQb3NpdGlvbmVkTW92ZW1lbnRMYXlvdXQpOwogfQogCitz
dGF0aWMgaW5saW5lIFJlbmRlckJsb2NrKiBuZWFyZXN0Tm9uQW5vbnltb3VzQ29udGFpbmluZ0Js
b2NrSW5jbHVkaW5nU2VsZihSZW5kZXJFbGVtZW50KiByZW5kZXJlcikKK3sKKyAgICB3aGlsZSAo
cmVuZGVyZXIgJiYgKCFpczxSZW5kZXJCbG9jaz4oKnJlbmRlcmVyKSB8fCByZW5kZXJlci0+aXNB
bm9ueW1vdXNCbG9jaygpKSkKKyAgICAgICAgcmVuZGVyZXIgPSByZW5kZXJlci0+Y29udGFpbmlu
Z0Jsb2NrKCk7CisgICAgcmV0dXJuIGRvd25jYXN0PFJlbmRlckJsb2NrPihyZW5kZXJlcik7Cit9
CisKK1JlbmRlckJsb2NrKiBSZW5kZXJPYmplY3Q6OmNvbnRhaW5pbmdCbG9ja0ZvclBvc2l0aW9u
VHlwZShQb3NpdGlvblR5cGUgcG9zaXRpb25UeXBlLCBjb25zdCBSZW5kZXJPYmplY3QmIHJlbmRl
cmVyKQoreworICAgIGlmIChwb3NpdGlvblR5cGUgPT0gUG9zaXRpb25UeXBlOjpTdGF0aWMgfHwg
cG9zaXRpb25UeXBlID09IFBvc2l0aW9uVHlwZTo6UmVsYXRpdmUgfHwgcG9zaXRpb25UeXBlID09
IFBvc2l0aW9uVHlwZTo6U3RpY2t5KSB7CisgICAgICAgIGF1dG8gY29udGFpbmluZ0Jsb2NrRm9y
T2JqZWN0SW5GbG93ID0gWyZdIHsKKyAgICAgICAgICAgIGF1dG8qIGFuY2VzdG9yID0gcmVuZGVy
ZXIucGFyZW50KCk7CisgICAgICAgICAgICB3aGlsZSAoYW5jZXN0b3IgJiYgKChhbmNlc3Rvci0+
aXNJbmxpbmUoKSAmJiAhYW5jZXN0b3ItPmlzUmVwbGFjZWQoKSkgfHwgIWFuY2VzdG9yLT5pc1Jl
bmRlckJsb2NrKCkpKQorICAgICAgICAgICAgICAgIGFuY2VzdG9yID0gYW5jZXN0b3ItPnBhcmVu
dCgpOworICAgICAgICAgICAgcmV0dXJuIGRvd25jYXN0PFJlbmRlckJsb2NrPihhbmNlc3Rvcik7
CisgICAgICAgIH07CisgICAgICAgIHJldHVybiBjb250YWluaW5nQmxvY2tGb3JPYmplY3RJbkZs
b3coKTsKKyAgICB9CisKKyAgICBpZiAocG9zaXRpb25UeXBlID09IFBvc2l0aW9uVHlwZTo6QWJz
b2x1dGUpIHsKKyAgICAgICAgYXV0byBjb250YWluaW5nQmxvY2tGb3JBYnNvbHV0ZVBvc2l0aW9u
ID0gWyZdIHsKKyAgICAgICAgICAgIGlmIChpczxSZW5kZXJJbmxpbmU+KHJlbmRlcmVyKSAmJiBy
ZW5kZXJlci5zdHlsZSgpLnBvc2l0aW9uKCkgPT0gUG9zaXRpb25UeXBlOjpSZWxhdGl2ZSkgewor
ICAgICAgICAgICAgICAgIC8vIEEgcmVsYXRpdmVseSBwb3NpdGlvbmVkIFJlbmRlcklubGluZSBm
b3J3YXJkcyBpdHMgYWJzb2x1dGUgcG9zaXRpb25lZCBkZXNjZW5kYW50cyB0bworICAgICAgICAg
ICAgICAgIC8vIGl0cyBuZWFyZXN0IG5vbi1hbm9ueW1vdXMgY29udGFpbmluZyBibG9jayAodG8g
YXZvaWQgaGF2aW5nIHBvc2l0aW9uZWQgb2JqZWN0cyBsaXN0IGluIFJlbmRlcklubGluZXMpLgor
ICAgICAgICAgICAgICAgIHJldHVybiBuZWFyZXN0Tm9uQW5vbnltb3VzQ29udGFpbmluZ0Jsb2Nr
SW5jbHVkaW5nU2VsZihyZW5kZXJlci5wYXJlbnQoKSk7CisgICAgICAgICAgICB9CisgICAgICAg
ICAgICBhdXRvKiBhbmNlc3RvciA9IHJlbmRlcmVyLnBhcmVudCgpOworICAgICAgICAgICAgd2hp
bGUgKGFuY2VzdG9yICYmICFhbmNlc3Rvci0+Y2FuQ29udGFpbkFic29sdXRlbHlQb3NpdGlvbmVk
T2JqZWN0cygpKQorICAgICAgICAgICAgICAgIGFuY2VzdG9yID0gYW5jZXN0b3ItPnBhcmVudCgp
OworICAgICAgICAgICAgLy8gTWFrZSBzdXJlIHdlIG9ubHkgcmV0dXJuIG5vbi1hbm9ueW1vdXMg
UmVuZGVyQmxvY2sgYXMgY29udGFpbmluZyBibG9jay4KKyAgICAgICAgICAgIHJldHVybiBuZWFy
ZXN0Tm9uQW5vbnltb3VzQ29udGFpbmluZ0Jsb2NrSW5jbHVkaW5nU2VsZihhbmNlc3Rvcik7Cisg
ICAgICAgIH07CisgICAgICAgIHJldHVybiBjb250YWluaW5nQmxvY2tGb3JBYnNvbHV0ZVBvc2l0
aW9uKCk7CisgICAgfQorCisgICAgaWYgKHBvc2l0aW9uVHlwZSA9PSBQb3NpdGlvblR5cGU6OkZp
eGVkKSB7CisgICAgICAgIGF1dG8gY29udGFpbmluZ0Jsb2NrRm9yRml4ZWRQb3NpdGlvbiA9IFsm
XSB7CisgICAgICAgICAgICBhdXRvKiBhbmNlc3RvciA9IHJlbmRlcmVyLnBhcmVudCgpOworICAg
ICAgICAgICAgd2hpbGUgKGFuY2VzdG9yICYmICFhbmNlc3Rvci0+Y2FuQ29udGFpbkZpeGVkUG9z
aXRpb25PYmplY3RzKCkpCisgICAgICAgICAgICAgICAgYW5jZXN0b3IgPSBhbmNlc3Rvci0+cGFy
ZW50KCk7CisgICAgICAgICAgICByZXR1cm4gbmVhcmVzdE5vbkFub255bW91c0NvbnRhaW5pbmdC
bG9ja0luY2x1ZGluZ1NlbGYoYW5jZXN0b3IpOworICAgICAgICB9OworICAgICAgICByZXR1cm4g
Y29udGFpbmluZ0Jsb2NrRm9yRml4ZWRQb3NpdGlvbigpOworICAgIH0KKworICAgIEFTU0VSVF9O
T1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBudWxscHRyOworfQorCiBSZW5kZXJCbG9jayogUmVu
ZGVyT2JqZWN0Ojpjb250YWluaW5nQmxvY2soKSBjb25zdAogeworICAgIGlmIChpczxSZW5kZXJU
ZXh0PigqdGhpcykpCisgICAgICAgIHJldHVybiBjb250YWluaW5nQmxvY2tGb3JQb3NpdGlvblR5
cGUoUG9zaXRpb25UeXBlOjpTdGF0aWMsICp0aGlzKTsKKwogICAgIGF1dG8gY29udGFpbmluZ0Js
b2NrRm9yUmVuZGVyZXIgPSBbXShjb25zdCBhdXRvJiByZW5kZXJlcikgLT4gUmVuZGVyQmxvY2sq
IHsKICAgICAgICAgaWYgKGlzSW5Ub3BMYXllck9yQmFja2Ryb3AocmVuZGVyZXIuc3R5bGUoKSwg
cmVuZGVyZXIuZWxlbWVudCgpKSkKICAgICAgICAgICAgIHJldHVybiAmcmVuZGVyZXIudmlldygp
OwotICAgICAgICBpZiAocmVuZGVyZXIuaXNBYnNvbHV0ZWx5UG9zaXRpb25lZCgpKQotICAgICAg
ICAgICAgcmV0dXJuIHJlbmRlcmVyLmNvbnRhaW5pbmdCbG9ja0ZvckFic29sdXRlUG9zaXRpb24o
KTsKLSAgICAgICAgaWYgKHJlbmRlcmVyLmlzRml4ZWRQb3NpdGlvbmVkKCkpCi0gICAgICAgICAg
ICByZXR1cm4gcmVuZGVyZXIuY29udGFpbmluZ0Jsb2NrRm9yRml4ZWRQb3NpdGlvbigpOwotICAg
ICAgICByZXR1cm4gcmVuZGVyZXIuY29udGFpbmluZ0Jsb2NrRm9yT2JqZWN0SW5GbG93KCk7Cisg
ICAgICAgIHJldHVybiBjb250YWluaW5nQmxvY2tGb3JQb3NpdGlvblR5cGUocmVuZGVyZXIuc3R5
bGUoKS5wb3NpdGlvbigpLCByZW5kZXJlcik7CiAgICAgfTsKIAotICAgIGlmIChpczxSZW5kZXJU
ZXh0PigqdGhpcykpCi0gICAgICAgIHJldHVybiBjb250YWluaW5nQmxvY2tGb3JPYmplY3RJbkZs
b3coKTsKLQogICAgIGlmICghcGFyZW50KCkgJiYgaXM8UmVuZGVyU2Nyb2xsYmFyUGFydD4oKnRo
aXMpKSB7CiAgICAgICAgIGlmIChhdXRvKiBzY3JvbGxiYXJQYXJ0ID0gZG93bmNhc3Q8UmVuZGVy
U2Nyb2xsYmFyUGFydD4oKnRoaXMpLnJlbmRlcmVyT3duaW5nU2Nyb2xsYmFyKCkpCiAgICAgICAg
ICAgICByZXR1cm4gY29udGFpbmluZ0Jsb2NrRm9yUmVuZGVyZXIoKnNjcm9sbGJhclBhcnQpOwpA
QCAtNjc5LDE0ICs3MjQsNiBAQCBSZW5kZXJCbG9jayogUmVuZGVyT2JqZWN0Ojpjb250YWluaW5n
QmxvY2soKSBjb25zdAogICAgIHJldHVybiBjb250YWluaW5nQmxvY2tGb3JSZW5kZXJlcihkb3du
Y2FzdDxSZW5kZXJFbGVtZW50PigqdGhpcykpOwogfQogCi1SZW5kZXJCbG9jayogUmVuZGVyT2Jq
ZWN0Ojpjb250YWluaW5nQmxvY2tGb3JPYmplY3RJbkZsb3coKSBjb25zdAotewotICAgIGF1dG8q
IHJlbmRlcmVyID0gcGFyZW50KCk7Ci0gICAgd2hpbGUgKHJlbmRlcmVyICYmICgocmVuZGVyZXIt
PmlzSW5saW5lKCkgJiYgIXJlbmRlcmVyLT5pc1JlcGxhY2VkKCkpIHx8ICFyZW5kZXJlci0+aXNS
ZW5kZXJCbG9jaygpKSkKLSAgICAgICAgcmVuZGVyZXIgPSByZW5kZXJlci0+cGFyZW50KCk7Ci0g
ICAgcmV0dXJuIGRvd25jYXN0PFJlbmRlckJsb2NrPihyZW5kZXJlcik7Ci19Ci0KIHZvaWQgUmVu
ZGVyT2JqZWN0OjphZGRQREZVUkxSZWN0KFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBMYXlv
dXRQb2ludCYgcGFpbnRPZmZzZXQpCiB7CiAgICAgVmVjdG9yPExheW91dFJlY3Q+IGZvY3VzUmlu
Z1JlY3RzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVj
dC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCmluZGV4IDUwYzg1
MTA1MWRhMjRlNWI5Y2UzMTVlZGUzZTU5ODAxNTNlNDViZjIuLmUzNzdiMzU5N2ViYzM2YmE1ZWM4
OGU4NGJkODQ3OGZhYzYwMTYzMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJPYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2Jq
ZWN0LmgKQEAgLTUzOCw3ICs1MzgsNyBAQCBwdWJsaWM6CiAKICAgICAvLyBSZXR1cm5zIHRoZSBj
b250YWluaW5nIGJsb2NrIGxldmVsIGVsZW1lbnQgZm9yIHRoaXMgZWxlbWVudC4KICAgICBXRUJD
T1JFX0VYUE9SVCBSZW5kZXJCbG9jayogY29udGFpbmluZ0Jsb2NrKCkgY29uc3Q7Ci0gICAgUmVu
ZGVyQmxvY2sqIGNvbnRhaW5pbmdCbG9ja0Zvck9iamVjdEluRmxvdygpIGNvbnN0OworICAgIHN0
YXRpYyBSZW5kZXJCbG9jayogY29udGFpbmluZ0Jsb2NrRm9yUG9zaXRpb25UeXBlKFBvc2l0aW9u
VHlwZSwgY29uc3QgUmVuZGVyT2JqZWN0Jik7CiAKICAgICAvLyBDb252ZXJ0IHRoZSBnaXZlbiBs
b2NhbCBwb2ludCB0byBhYnNvbHV0ZSBjb29yZGluYXRlcy4gSWYgT3B0aW9uU2V0PE1hcENvb3Jk
aW5hdGVzTW9kZT4gaW5jbHVkZXMgVXNlVHJhbnNmb3JtcywgdGFrZSB0cmFuc2Zvcm1zIGludG8g
YWNjb3VudC4KICAgICBXRUJDT1JFX0VYUE9SVCBGbG9hdFBvaW50IGxvY2FsVG9BYnNvbHV0ZShj
b25zdCBGbG9hdFBvaW50JiBsb2NhbFBvaW50ID0gRmxvYXRQb2ludCgpLCBPcHRpb25TZXQ8TWFw
Q29vcmRpbmF0ZXNNb2RlPiA9IHsgfSwgYm9vbCogd2FzRml4ZWQgPSBudWxscHRyKSBjb25zdDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>