<?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>243756</bug_id>
          
          <creation_ts>2022-08-09 16:45:13 -0700</creation_ts>
          <short_desc>[Painting] Used style should be passed in to TextDecorationPainter::paintBackgroundDecorations/paintForegroundDecorations</short_desc>
          <delta_ts>2022-08-14 14:06:25 -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>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>
          
          <blocked>243766</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>koivisto</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>1890145</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2022-08-09 16:45:13 -0700</bug_when>
    <thetext>ssia</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1890148</commentid>
    <comment_count>1</comment_count>
      <attachid>461511</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-08-09 16:48:34 -0700</bug_when>
    <thetext>Created attachment 461511
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1890387</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-08-10 14:07:38 -0700</bug_when>
    <thetext>Committed 253306@main (25a76203cbf8): &lt;https://commits.webkit.org/253306@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 461511.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1890388</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-08-10 14:08:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/98470568&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>461511</attachid>
            <date>2022-08-09 16:48:34 -0700</date>
            <delta_ts>2022-08-10 14:07:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-243756-20220809164833.patch</filename>
            <type>text/plain</type>
            <size>23740</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSAwNzBmYThkNjYwMGFmZGI3NWIxNGEwY2RlZmQ4YzQ3MWRmZWNhOTAxIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJ1anRhcyA8emFsYW5AYXBwbGUuY29tPgpEYXRlOiBU
dWUsIDkgQXVnIDIwMjIgMTY6NDU6MjMgLTA3MDAKU3ViamVjdDogW1BBVENIXSBbUGFpbnRpbmdd
IFVzZWQgc3R5bGUgc2hvdWxkIGJlIHBhc3NlZCBpbiB0bwogVGV4dERlY29yYXRpb25QYWludGVy
OjpwYWludEJhY2tncm91bmREZWNvcmF0aW9ucy9wYWludEZvcmVncm91bmREZWNvcmF0aW9ucwog
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI0Mzc1NgoKUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCgpMZXQncyBwYXNzIGluIHRoZSB1c2VkIHN0eWxlIHRvIHRoZSBw
YWludCBmdW5jdGlvbnMgaW5zdGVhZCBvZiB0byB0aGUgY29uc3RydWN0b3IuIFRoaXMgZW5hYmxl
cyB1cyB0byBwYWludCBkZWNvcmF0aW9uIHVzaW5nIGEgZGlmZmVyZW50IChhbmNlc3RvcikgaW5s
aW5lIGJveCdzIHN0eWxlICh0aGlzIGlzIGluIHByZXBhcmF0aW9uIGZvciBzdXBwb3J0aW5nIHVu
ZGVybGluZSBwYWludGluZyBvbiBtdWx0aXBsZSAobmVzdGVkKSBpbmxpbmUgYm94ZXMpLgoKKiBT
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvVGV4dEJveFBhaW50ZXIuY3BwOgooV2ViQ29yZTo6VGV4
dEJveFBhaW50ZXI8VGV4dEJveFBhdGg+OjpwYWludEZvcmVncm91bmRBbmREZWNvcmF0aW9ucyk6
CihXZWJDb3JlOjpUZXh0Qm94UGFpbnRlcjxUZXh0Qm94UGF0aD46OmNyZWF0ZURlY29yYXRpb25Q
YWludGVyKToKKFdlYkNvcmU6OlRleHRCb3hQYWludGVyPFRleHRCb3hQYXRoPjo6cGFpbnRCYWNr
Z3JvdW5kRGVjb3JhdGlvbnMpOgooV2ViQ29yZTo6VGV4dEJveFBhaW50ZXI8VGV4dEJveFBhdGg+
OjpwYWludEZvcmVncm91bmREZWNvcmF0aW9ucyk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1RleHRCb3hQYWludGVyLmg6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHREZWNvcmF0
aW9uUGFpbnRlci5jcHA6CihXZWJDb3JlOjpUZXh0RGVjb3JhdGlvblBhaW50ZXI6OlRleHREZWNv
cmF0aW9uUGFpbnRlcik6CihXZWJDb3JlOjpUZXh0RGVjb3JhdGlvblBhaW50ZXI6OnBhaW50QmFj
a2dyb3VuZERlY29yYXRpb25zKToKKFdlYkNvcmU6OlRleHREZWNvcmF0aW9uUGFpbnRlcjo6cGFp
bnRGb3JlZ3JvdW5kRGVjb3JhdGlvbnMpOgooV2ViQ29yZTo6VGV4dERlY29yYXRpb25QYWludGVy
OjpwYWludExpbmVUaHJvdWdoKToKKFdlYkNvcmU6OlRleHREZWNvcmF0aW9uUGFpbnRlcjo6dGV4
dERlY29yYXRpb25zSW5FZmZlY3RGb3JTdHlsZSk6CihXZWJDb3JlOjp0ZXh0RGVjb3JhdGlvbnNJ
bkVmZmVjdEZvclN0eWxlKTogRGVsZXRlZC4KKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvVGV4
dERlY29yYXRpb25QYWludGVyLmg6CihXZWJDb3JlOjpUZXh0RGVjb3JhdGlvblBhaW50ZXI6Om92
ZXJyaWRlU3R5bGVzIGNvbnN0KTogRGVsZXRlZC4KKFdlYkNvcmU6OlRleHREZWNvcmF0aW9uUGFp
bnRlcjo6dGV4dERlY29yYXRpb25zIGNvbnN0KTogRGVsZXRlZC4KLS0tCiBTb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvVGV4dEJveFBhaW50ZXIuY3BwICAgfCAzNSArKysrKy0tLQogU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1RleHRCb3hQYWludGVyLmggICAgIHwgIDIgKy0KIC4uLi9yZW5kZXJp
bmcvVGV4dERlY29yYXRpb25QYWludGVyLmNwcCAgICAgICB8IDc5ICsrKysrKysrKy0tLS0tLS0t
LS0KIC4uLi9XZWJDb3JlL3JlbmRlcmluZy9UZXh0RGVjb3JhdGlvblBhaW50ZXIuaCB8IDM2ICsr
KystLS0tLQogNCBmaWxlcyBjaGFuZ2VkLCA3OCBpbnNlcnRpb25zKCspLCA3NCBkZWxldGlvbnMo
LSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvVGV4dEJveFBhaW50ZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHRCb3hQYWludGVyLmNwcAppbmRleCBj
MGZhYmZlODdkYWMuLmNjM2MxNmU5NzYyMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1RleHRCb3hQYWludGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
VGV4dEJveFBhaW50ZXIuY3BwCkBAIC0yOTIsNyArMjkyLDcgQEAgdm9pZCBUZXh0Qm94UGFpbnRl
cjxUZXh0Qm94UGF0aD46OnBhaW50Rm9yZWdyb3VuZEFuZERlY29yYXRpb25zKCkKICAgICAgICAg
ICAgICAgICBUZXh0RGVjb3JhdGlvblBhaW50ZXIgZGVjb3JhdGlvblBhaW50ZXIgPSBjcmVhdGVE
ZWNvcmF0aW9uUGFpbnRlcihtYXJrZWRUZXh0LCB0ZXh0RGVjb3JhdGlvblNlbGVjdGlvbkNsaXBP
dXRSZWN0KTsKICAgICAgICAgICAgICAgICBwYWludEJhY2tncm91bmREZWNvcmF0aW9ucyhkZWNv
cmF0aW9uUGFpbnRlciwgbWFya2VkVGV4dCwgc25hcHBlZFNlbGVjdGlvblJlY3QpOwogICAgICAg
ICAgICAgICAgIHBhaW50Rm9yZWdyb3VuZChtYXJrZWRUZXh0KTsKLSAgICAgICAgICAgICAgICBw
YWludEZvcmVncm91bmREZWNvcmF0aW9ucyhkZWNvcmF0aW9uUGFpbnRlciwgc25hcHBlZFNlbGVj
dGlvblJlY3QpOworICAgICAgICAgICAgICAgIHBhaW50Rm9yZWdyb3VuZERlY29yYXRpb25zKGRl
Y29yYXRpb25QYWludGVyLCBtYXJrZWRUZXh0LCBzbmFwcGVkU2VsZWN0aW9uUmVjdCk7CiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0KICAgICB9IGVsc2UgewpAQCAtNDM4LDcgKzQzOCw3IEBAIFRl
eHREZWNvcmF0aW9uUGFpbnRlciBUZXh0Qm94UGFpbnRlcjxUZXh0Qm94UGF0aD46OmNyZWF0ZURl
Y29yYXRpb25QYWludGVyKGNvbnN0CiAgICAgYXV0byogY29sb3JGaWx0ZXIgPSBtYXJrZWRUZXh0
LnN0eWxlLnRleHRTaGFkb3cgJiYgbV9zdHlsZS5oYXNBcHBsZUNvbG9yRmlsdGVyKCkgPyAmbV9z
dHlsZS5hcHBsZUNvbG9yRmlsdGVyKCkgOiBudWxscHRyOwogICAgIGF1dG8mIGRvY3VtZW50ID0g
bV9yZW5kZXJlci5kb2N1bWVudCgpOwogICAgIGF1dG8mIHN0eWxlVG9Vc2UgPSBtX2lzRmlyc3RM
aW5lID8gbV9yZW5kZXJlci5maXJzdExpbmVTdHlsZSgpIDogbV9yZW5kZXJlci5zdHlsZSgpOwot
ICAgIHJldHVybiB7IGNvbnRleHQsIHN0eWxlVG9Vc2UsIGZvbnRDYXNjYWRlKCksIHNoYWRvdywg
Y29sb3JGaWx0ZXIsIG1hcmtlZFRleHQuc3R5bGUudGV4dERlY29yYXRpb25TdHlsZXMsIGRvY3Vt
ZW50LnByaW50aW5nKCksIG1fcmVuZGVyZXIuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSwgZG9j
dW1lbnQuZGV2aWNlU2NhbGVGYWN0b3IoKSB9OworICAgIHJldHVybiB7IGNvbnRleHQsIHN0eWxl
VG9Vc2UsIGZvbnRDYXNjYWRlKCksIHNoYWRvdywgY29sb3JGaWx0ZXIsIGRvY3VtZW50LnByaW50
aW5nKCksIG1fcmVuZGVyZXIuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSwgZG9jdW1lbnQuZGV2
aWNlU2NhbGVGYWN0b3IoKSB9OwogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBUZXh0Qm94UGF0aD4K
QEAgLTQ0OCwyNiArNDQ4LDMwIEBAIHZvaWQgVGV4dEJveFBhaW50ZXI8VGV4dEJveFBhdGg+Ojpw
YWludEJhY2tncm91bmREZWNvcmF0aW9ucyhUZXh0RGVjb3JhdGlvblBhaW50CiAgICAgICAgIG1f
cGFpbnRJbmZvLmNvbnRleHQoKS5jb25jYXRDVE0ocm90YXRpb24obV9wYWludFJlY3QsIENsb2Nr
d2lzZSkpOwogCiAgICAgYXV0byB0ZXh0UnVuID0gbV9wYWludFRleHRSdW4uc3ViUnVuKG1hcmtl
ZFRleHQuc3RhcnRPZmZzZXQsIG1hcmtlZFRleHQuZW5kT2Zmc2V0IC0gbWFya2VkVGV4dC5zdGFy
dE9mZnNldCk7CisgICAgYXV0byYgc3R5bGVUb1VzZSA9IG1faXNGaXJzdExpbmUgPyBtX3JlbmRl
cmVyLmZpcnN0TGluZVN0eWxlKCkgOiBtX3JlbmRlcmVyLnN0eWxlKCk7CisgICAgY29uc3QgYXV0
byYgdGV4dERlY29yYXRpb25TdHlsZXMgPSBtYXJrZWRUZXh0LnN0eWxlLnRleHREZWNvcmF0aW9u
U3R5bGVzOworICAgIGF1dG8gY29tcHV0ZWRUZXh0RGVjb3JhdGlvblR5cGUgPSBbJl0geworICAg
ICAgICBhdXRvIHRleHREZWNvcmF0aW9ucyA9IHN0eWxlVG9Vc2UudGV4dERlY29yYXRpb25zSW5F
ZmZlY3QoKTsKKyAgICAgICAgdGV4dERlY29yYXRpb25zLmFkZChUZXh0RGVjb3JhdGlvblBhaW50
ZXI6OnRleHREZWNvcmF0aW9uc0luRWZmZWN0Rm9yU3R5bGUodGV4dERlY29yYXRpb25TdHlsZXMp
KTsKKyAgICAgICAgcmV0dXJuIHRleHREZWNvcmF0aW9uczsKKyAgICB9KCk7CiAgICAgYXV0byBj
b21wdXRlZEJhY2tncm91bmREZWNvcmF0aW9uR2VvbWV0cnkgPSBbJl0gewogICAgICAgICBhdXRv
IGRldmljZVNjYWxlRmFjdG9yID0gbV9yZW5kZXJlci5kb2N1bWVudCgpLmRldmljZVNjYWxlRmFj
dG9yKCk7Ci0gICAgICAgIGF1dG8mIHN0eWxlVG9Vc2UgPSBtX2lzRmlyc3RMaW5lID8gbV9yZW5k
ZXJlci5maXJzdExpbmVTdHlsZSgpIDogbV9yZW5kZXJlci5zdHlsZSgpOwogICAgICAgICBhdXRv
JiBmb250TWV0cmljcyA9IHN0eWxlVG9Vc2UubWV0cmljc09mUHJpbWFyeUZvbnQoKTsKLSAgICAg
ICAgYXV0byB0ZXh0RGVjb3JhdGlvbnMgPSBkZWNvcmF0aW9uUGFpbnRlci50ZXh0RGVjb3JhdGlv
bnMoKTsKLSAgICAgICAgYXV0byYgb3ZlcnJpZGVTdHlsZXMgPSBkZWNvcmF0aW9uUGFpbnRlci5v
dmVycmlkZVN0eWxlcygpOwogCiAgICAgICAgIGF1dG8gdGV4dERlY29yYXRpb25UaGlja25lc3Mg
PSBjZWlsVG9EZXZpY2VQaXhlbChzdHlsZVRvVXNlLnRleHREZWNvcmF0aW9uVGhpY2tuZXNzKCku
cmVzb2x2ZShzdHlsZVRvVXNlLmNvbXB1dGVkRm9udFNpemUoKSwgZm9udE1ldHJpY3MpLCBkZXZp
Y2VTY2FsZUZhY3Rvcik7CiAgICAgICAgIGF1dG8gdW5kZXJsaW5lT2Zmc2V0ID0gWyZdIHsKLSAg
ICAgICAgICAgIGlmICghdGV4dERlY29yYXRpb25zLmNvbnRhaW5zKFRleHREZWNvcmF0aW9uTGlu
ZTo6VW5kZXJsaW5lKSkKKyAgICAgICAgICAgIGlmICghY29tcHV0ZWRUZXh0RGVjb3JhdGlvblR5
cGUuY29udGFpbnMoVGV4dERlY29yYXRpb25MaW5lOjpVbmRlcmxpbmUpKQogICAgICAgICAgICAg
ICAgIHJldHVybiAwLmY7CiAgICAgICAgICAgICBhdXRvIGJhc2VPZmZzZXQgPSB1bmRlcmxpbmVP
ZmZzZXRGb3JUZXh0Qm94UGFpbnRpbmcoc3R5bGVUb1VzZSwgbWFrZUl0ZXJhdG9yKCkpOwotICAg
ICAgICAgICAgYXV0byB3YXZ5T2Zmc2V0ID0gb3ZlcnJpZGVTdHlsZXMudW5kZXJsaW5lLmRlY29y
YXRpb25TdHlsZSA9PSBUZXh0RGVjb3JhdGlvblN0eWxlOjpXYXZ5ID8gd2F2eU9mZnNldEZyb21E
ZWNvcmF0aW9uKCkgOiAwLmY7CisgICAgICAgICAgICBhdXRvIHdhdnlPZmZzZXQgPSB0ZXh0RGVj
b3JhdGlvblN0eWxlcy51bmRlcmxpbmUuZGVjb3JhdGlvblN0eWxlID09IFRleHREZWNvcmF0aW9u
U3R5bGU6OldhdnkgPyB3YXZ5T2Zmc2V0RnJvbURlY29yYXRpb24oKSA6IDAuZjsKICAgICAgICAg
ICAgIHJldHVybiBiYXNlT2Zmc2V0ICsgd2F2eU9mZnNldDsKICAgICAgICAgfTsKICAgICAgICAg
YXV0byBvdmVybGluZU9mZnNldCA9IFsmXSB7Ci0gICAgICAgICAgICBpZiAoIXRleHREZWNvcmF0
aW9ucy5jb250YWlucyhUZXh0RGVjb3JhdGlvbkxpbmU6Ok92ZXJsaW5lKSkKKyAgICAgICAgICAg
IGlmICghY29tcHV0ZWRUZXh0RGVjb3JhdGlvblR5cGUuY29udGFpbnMoVGV4dERlY29yYXRpb25M
aW5lOjpPdmVybGluZSkpCiAgICAgICAgICAgICAgICAgcmV0dXJuIDAuZjsKICAgICAgICAgICAg
IGF1dG8gYXV0b1RleHREZWNvcmF0aW9uVGhpY2tuZXNzID0gY2VpbFRvRGV2aWNlUGl4ZWwoVGV4
dERlY29yYXRpb25UaGlja25lc3M6OmNyZWF0ZVdpdGhBdXRvKCkucmVzb2x2ZShzdHlsZVRvVXNl
LmNvbXB1dGVkRm9udFNpemUoKSwgZm9udE1ldHJpY3MpLCBkZXZpY2VTY2FsZUZhY3Rvcik7Ci0g
ICAgICAgICAgICByZXR1cm4gYXV0b1RleHREZWNvcmF0aW9uVGhpY2tuZXNzIC0gdGV4dERlY29y
YXRpb25UaGlja25lc3MgLSAob3ZlcnJpZGVTdHlsZXMub3ZlcmxpbmUuZGVjb3JhdGlvblN0eWxl
ID09IFRleHREZWNvcmF0aW9uU3R5bGU6OldhdnkgPyB3YXZ5T2Zmc2V0RnJvbURlY29yYXRpb24o
KSA6IDAuZik7CisgICAgICAgICAgICByZXR1cm4gYXV0b1RleHREZWNvcmF0aW9uVGhpY2tuZXNz
IC0gdGV4dERlY29yYXRpb25UaGlja25lc3MgLSAodGV4dERlY29yYXRpb25TdHlsZXMub3Zlcmxp
bmUuZGVjb3JhdGlvblN0eWxlID09IFRleHREZWNvcmF0aW9uU3R5bGU6OldhdnkgPyB3YXZ5T2Zm
c2V0RnJvbURlY29yYXRpb24oKSA6IDAuZik7CiAgICAgICAgIH07CiAKICAgICAgICAgcmV0dXJu
IFRleHREZWNvcmF0aW9uUGFpbnRlcjo6QmFja2dyb3VuZERlY29yYXRpb25HZW9tZXRyeSB7CkBA
IC00NzksMTkgKzQ4MywyNiBAQCB2b2lkIFRleHRCb3hQYWludGVyPFRleHRCb3hQYXRoPjo6cGFp
bnRCYWNrZ3JvdW5kRGVjb3JhdGlvbnMoVGV4dERlY29yYXRpb25QYWludAogICAgICAgICAgICAg
b3ZlcmxpbmVPZmZzZXQoKQogICAgICAgICB9OwogICAgIH07Ci0gICAgZGVjb3JhdGlvblBhaW50
ZXIucGFpbnRCYWNrZ3JvdW5kRGVjb3JhdGlvbnModGV4dFJ1biwgY29tcHV0ZWRCYWNrZ3JvdW5k
RGVjb3JhdGlvbkdlb21ldHJ5KCkpOworCisgICAgZGVjb3JhdGlvblBhaW50ZXIucGFpbnRCYWNr
Z3JvdW5kRGVjb3JhdGlvbnModGV4dFJ1biwgY29tcHV0ZWRCYWNrZ3JvdW5kRGVjb3JhdGlvbkdl
b21ldHJ5KCksIGNvbXB1dGVkVGV4dERlY29yYXRpb25UeXBlLCB0ZXh0RGVjb3JhdGlvblN0eWxl
cyk7CiAKICAgICBpZiAobV9pc0NvbWJpbmVkVGV4dCkKICAgICAgICAgbV9wYWludEluZm8uY29u
dGV4dCgpLmNvbmNhdENUTShyb3RhdGlvbihtX3BhaW50UmVjdCwgQ291bnRlcmNsb2Nrd2lzZSkp
OwogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBUZXh0Qm94UGF0aD4KLXZvaWQgVGV4dEJveFBhaW50
ZXI8VGV4dEJveFBhdGg+OjpwYWludEZvcmVncm91bmREZWNvcmF0aW9ucyhUZXh0RGVjb3JhdGlv
blBhaW50ZXImIGRlY29yYXRpb25QYWludGVyLCBjb25zdCBGbG9hdFJlY3QmIHNuYXBwZWRTZWxl
Y3Rpb25SZWN0KQordm9pZCBUZXh0Qm94UGFpbnRlcjxUZXh0Qm94UGF0aD46OnBhaW50Rm9yZWdy
b3VuZERlY29yYXRpb25zKFRleHREZWNvcmF0aW9uUGFpbnRlciYgZGVjb3JhdGlvblBhaW50ZXIs
IGNvbnN0IFN0eWxlZE1hcmtlZFRleHQmIG1hcmtlZFRleHQsIGNvbnN0IEZsb2F0UmVjdCYgc25h
cHBlZFNlbGVjdGlvblJlY3QpCiB7CiAgICAgaWYgKG1faXNDb21iaW5lZFRleHQpCiAgICAgICAg
IG1fcGFpbnRJbmZvLmNvbnRleHQoKS5jb25jYXRDVE0ocm90YXRpb24obV9wYWludFJlY3QsIENs
b2Nrd2lzZSkpOwogCi0gICAgZGVjb3JhdGlvblBhaW50ZXIucGFpbnRGb3JlZ3JvdW5kRGVjb3Jh
dGlvbnMoc25hcHBlZFNlbGVjdGlvblJlY3QubG9jYXRpb24oKSwgc25hcHBlZFNlbGVjdGlvblJl
Y3Qud2lkdGgoKSk7CisgICAgYXV0byBjb21wdXRlZFRleHREZWNvcmF0aW9uVHlwZSA9IFsmXSB7
CisgICAgICAgIGF1dG8mIHN0eWxlVG9Vc2UgPSBtX2lzRmlyc3RMaW5lID8gbV9yZW5kZXJlci5m
aXJzdExpbmVTdHlsZSgpIDogbV9yZW5kZXJlci5zdHlsZSgpOworICAgICAgICBhdXRvIHRleHRE
ZWNvcmF0aW9ucyA9IHN0eWxlVG9Vc2UudGV4dERlY29yYXRpb25zSW5FZmZlY3QoKTsKKyAgICAg
ICAgdGV4dERlY29yYXRpb25zLmFkZChUZXh0RGVjb3JhdGlvblBhaW50ZXI6OnRleHREZWNvcmF0
aW9uc0luRWZmZWN0Rm9yU3R5bGUobWFya2VkVGV4dC5zdHlsZS50ZXh0RGVjb3JhdGlvblN0eWxl
cykpOworICAgICAgICByZXR1cm4gdGV4dERlY29yYXRpb25zOworICAgIH07CisgICAgZGVjb3Jh
dGlvblBhaW50ZXIucGFpbnRGb3JlZ3JvdW5kRGVjb3JhdGlvbnMoc25hcHBlZFNlbGVjdGlvblJl
Y3QubG9jYXRpb24oKSwgc25hcHBlZFNlbGVjdGlvblJlY3Qud2lkdGgoKSwgY29tcHV0ZWRUZXh0
RGVjb3JhdGlvblR5cGUoKSwgbWFya2VkVGV4dC5zdHlsZS50ZXh0RGVjb3JhdGlvblN0eWxlcyk7
CiAKICAgICBpZiAobV9pc0NvbWJpbmVkVGV4dCkKICAgICAgICAgbV9wYWludEluZm8uY29udGV4
dCgpLmNvbmNhdENUTShyb3RhdGlvbihtX3BhaW50UmVjdCwgQ291bnRlcmNsb2Nrd2lzZSkpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHRCb3hQYWludGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvVGV4dEJveFBhaW50ZXIuaAppbmRleCBhMzY1NmMwMjhk
Y2IuLjAwM2QzNDgyNjlhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Rl
eHRCb3hQYWludGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHRCb3hQYWlu
dGVyLmgKQEAgLTY5LDcgKzY5LDcgQEAgcHJvdGVjdGVkOgogICAgIHZvaWQgcGFpbnRGb3JlZ3Jv
dW5kKGNvbnN0IFN0eWxlZE1hcmtlZFRleHQmKTsKICAgICBUZXh0RGVjb3JhdGlvblBhaW50ZXIg
Y3JlYXRlRGVjb3JhdGlvblBhaW50ZXIoY29uc3QgU3R5bGVkTWFya2VkVGV4dCYsIGNvbnN0IEZs
b2F0UmVjdCYpOwogICAgIHZvaWQgcGFpbnRCYWNrZ3JvdW5kRGVjb3JhdGlvbnMoVGV4dERlY29y
YXRpb25QYWludGVyJiwgY29uc3QgU3R5bGVkTWFya2VkVGV4dCYsIGNvbnN0IEZsb2F0UmVjdCYp
OwotICAgIHZvaWQgcGFpbnRGb3JlZ3JvdW5kRGVjb3JhdGlvbnMoVGV4dERlY29yYXRpb25QYWlu
dGVyJiwgY29uc3QgRmxvYXRSZWN0Jik7CisgICAgdm9pZCBwYWludEZvcmVncm91bmREZWNvcmF0
aW9ucyhUZXh0RGVjb3JhdGlvblBhaW50ZXImLCBjb25zdCBTdHlsZWRNYXJrZWRUZXh0JiwgY29u
c3QgRmxvYXRSZWN0Jik7CiAgICAgdm9pZCBwYWludENvbXBvc2l0aW9uVW5kZXJsaW5lKGNvbnN0
IENvbXBvc2l0aW9uVW5kZXJsaW5lJik7CiAgICAgdm9pZCBwYWludFBsYXRmb3JtRG9jdW1lbnRN
YXJrZXIoY29uc3QgTWFya2VkVGV4dCYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvVGV4dERlY29yYXRpb25QYWludGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9UZXh0RGVjb3JhdGlvblBhaW50ZXIuY3BwCmluZGV4IDE1NjRkMjQyYTY5NS4uMDdiZjk5
YzEyOTI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvVGV4dERlY29yYXRp
b25QYWludGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvVGV4dERlY29yYXRp
b25QYWludGVyLmNwcApAQCAtMTg1LDI1ICsxODUsMTMgQEAgc3RhdGljIFN0cm9rZVN0eWxlIHRl
eHREZWNvcmF0aW9uU3R5bGVUb1N0cm9rZVN0eWxlKFRleHREZWNvcmF0aW9uU3R5bGUgZGVjb3Jh
dGkKICAgICByZXR1cm4gc3Ryb2tlU3R5bGU7CiB9CiAKLXN0YXRpYyBpbmxpbmUgT3B0aW9uU2V0
PFRleHREZWNvcmF0aW9uTGluZT4gdGV4dERlY29yYXRpb25zSW5FZmZlY3RGb3JTdHlsZShjb25z
dCBUZXh0RGVjb3JhdGlvblBhaW50ZXI6OlN0eWxlcyYgc3R5bGUpCi17Ci0gICAgT3B0aW9uU2V0
PFRleHREZWNvcmF0aW9uTGluZT4gZGVjb3JhdGlvbnM7Ci0gICAgaWYgKHN0eWxlLnVuZGVybGlu
ZS5jb2xvci5pc1ZhbGlkKCkpCi0gICAgICAgIGRlY29yYXRpb25zLmFkZChUZXh0RGVjb3JhdGlv
bkxpbmU6OlVuZGVybGluZSk7Ci0gICAgaWYgKHN0eWxlLm92ZXJsaW5lLmNvbG9yLmlzVmFsaWQo
KSkKLSAgICAgICAgZGVjb3JhdGlvbnMuYWRkKFRleHREZWNvcmF0aW9uTGluZTo6T3ZlcmxpbmUp
OwotICAgIGlmIChzdHlsZS5saW5ldGhyb3VnaC5jb2xvci5pc1ZhbGlkKCkpCi0gICAgICAgIGRl
Y29yYXRpb25zLmFkZChUZXh0RGVjb3JhdGlvbkxpbmU6OkxpbmVUaHJvdWdoKTsKLSAgICByZXR1
cm4gZGVjb3JhdGlvbnM7Ci19Ci0KIGJvb2wgVGV4dERlY29yYXRpb25QYWludGVyOjpTdHlsZXM6
Om9wZXJhdG9yPT0oY29uc3QgU3R5bGVzJiBvdGhlcikgY29uc3QKIHsKICAgICByZXR1cm4gdW5k
ZXJsaW5lLmNvbG9yID09IG90aGVyLnVuZGVybGluZS5jb2xvciAmJiBvdmVybGluZS5jb2xvciA9
PSBvdGhlci5vdmVybGluZS5jb2xvciAmJiBsaW5ldGhyb3VnaC5jb2xvciA9PSBvdGhlci5saW5l
dGhyb3VnaC5jb2xvcgogICAgICAgICAmJiB1bmRlcmxpbmUuZGVjb3JhdGlvblN0eWxlID09IG90
aGVyLnVuZGVybGluZS5kZWNvcmF0aW9uU3R5bGUgJiYgb3ZlcmxpbmUuZGVjb3JhdGlvblN0eWxl
ID09IG90aGVyLm92ZXJsaW5lLmRlY29yYXRpb25TdHlsZSAmJiBsaW5ldGhyb3VnaC5kZWNvcmF0
aW9uU3R5bGUgPT0gb3RoZXIubGluZXRocm91Z2guZGVjb3JhdGlvblN0eWxlOwogfQogCi1UZXh0
RGVjb3JhdGlvblBhaW50ZXI6OlRleHREZWNvcmF0aW9uUGFpbnRlcihHcmFwaGljc0NvbnRleHQm
IGNvbnRleHQsIGNvbnN0IFJlbmRlclN0eWxlJiBkZWNvcmF0aW9uU3R5bGUsIGNvbnN0IEZvbnRD
YXNjYWRlJiBmb250LCBjb25zdCBTaGFkb3dEYXRhKiBzaGFkb3csIGNvbnN0IEZpbHRlck9wZXJh
dGlvbnMqIGNvbG9yRmlsdGVyLCBTdHlsZXMgc3R5bGVPdmVycmlkZSwgYm9vbCBpc1ByaW50aW5n
LCBib29sIGlzSG9yaXpvbnRhbCwgZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IpCitUZXh0RGVjb3Jh
dGlvblBhaW50ZXI6OlRleHREZWNvcmF0aW9uUGFpbnRlcihHcmFwaGljc0NvbnRleHQmIGNvbnRl
eHQsIGNvbnN0IFJlbmRlclN0eWxlJiByZW5kZXJUZXh0U3R5bGUsIGNvbnN0IEZvbnRDYXNjYWRl
JiBmb250LCBjb25zdCBTaGFkb3dEYXRhKiBzaGFkb3csIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMq
IGNvbG9yRmlsdGVyLCBib29sIGlzUHJpbnRpbmcsIGJvb2wgaXNIb3Jpem9udGFsLCBmbG9hdCBk
ZXZpY2VTY2FsZUZhY3RvcikKICAgICA6IG1fY29udGV4dChjb250ZXh0KQogICAgICwgbV9pc1By
aW50aW5nKGlzUHJpbnRpbmcpCiAgICAgLCBtX2lzSG9yaXpvbnRhbChpc0hvcml6b250YWwpCkBA
IC0yMTEsMTUgKzE5OSwxMiBAQCBUZXh0RGVjb3JhdGlvblBhaW50ZXI6OlRleHREZWNvcmF0aW9u
UGFpbnRlcihHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IFJlbgogICAgICwgbV9zaGFk
b3dDb2xvckZpbHRlcihjb2xvckZpbHRlcikKICAgICAsIG1fZm9udChmb250KQogICAgICwgbV9k
ZXZpY2VTY2FsZUZhY3RvcihkZXZpY2VTY2FsZUZhY3RvcikKLSAgICAsIG1fc3R5bGVzKHN0eWxl
T3ZlcnJpZGUpCi0gICAgLCBtX3RleHREZWNvcmF0aW9uU3R5bGUoZGVjb3JhdGlvblN0eWxlKQor
ICAgICwgbV9yZW5kZXJUZXh0U3R5bGUocmVuZGVyVGV4dFN0eWxlKQogewotICAgIG1fdGV4dERl
Y29yYXRpb25zID0gbV90ZXh0RGVjb3JhdGlvblN0eWxlLnRleHREZWNvcmF0aW9uc0luRWZmZWN0
KCk7Ci0gICAgbV90ZXh0RGVjb3JhdGlvbnMuYWRkKHRleHREZWNvcmF0aW9uc0luRWZmZWN0Rm9y
U3R5bGUoc3R5bGVPdmVycmlkZSkpOwogfQogCiAvLyBQYWludCB0ZXh0LXNoYWRvdywgdW5kZXJs
aW5lLCBvdmVybGluZQotdm9pZCBUZXh0RGVjb3JhdGlvblBhaW50ZXI6OnBhaW50QmFja2dyb3Vu
ZERlY29yYXRpb25zKGNvbnN0IFRleHRSdW4mIHRleHRSdW4sIGNvbnN0IEJhY2tncm91bmREZWNv
cmF0aW9uR2VvbWV0cnkmIGRlY29yYXRpb25HZW9tZXRyeSkKK3ZvaWQgVGV4dERlY29yYXRpb25Q
YWludGVyOjpwYWludEJhY2tncm91bmREZWNvcmF0aW9ucyhjb25zdCBUZXh0UnVuJiB0ZXh0UnVu
LCBjb25zdCBCYWNrZ3JvdW5kRGVjb3JhdGlvbkdlb21ldHJ5JiBkZWNvcmF0aW9uR2VvbWV0cnks
IE9wdGlvblNldDxUZXh0RGVjb3JhdGlvbkxpbmU+IGRlY29yYXRpb25UeXBlLCBjb25zdCBTdHls
ZXMmIGRlY29yYXRpb25TdHlsZSkKIHsKICAgICBhdXRvIHBhaW50RGVjb3JhdGlvbiA9IFsmXSAo
YXV0byBkZWNvcmF0aW9uLCBhdXRvIHN0eWxlLCBhdXRvJiBjb2xvciwgYXV0byYgcmVjdCkgewog
ICAgICAgICBtX2NvbnRleHQuc2V0U3Ryb2tlQ29sb3IoY29sb3IpOwpAQCAtMjI3LDkgKzIxMiw5
IEBAIHZvaWQgVGV4dERlY29yYXRpb25QYWludGVyOjpwYWludEJhY2tncm91bmREZWNvcmF0aW9u
cyhjb25zdCBUZXh0UnVuJiB0ZXh0UnVuLCBjCiAgICAgICAgIGF1dG8gc3Ryb2tlU3R5bGUgPSB0
ZXh0RGVjb3JhdGlvblN0eWxlVG9TdHJva2VTdHlsZShzdHlsZSk7CiAKICAgICAgICAgaWYgKHN0
eWxlID09IFRleHREZWNvcmF0aW9uU3R5bGU6OldhdnkpCi0gICAgICAgICAgICBzdHJva2VXYXZ5
VGV4dERlY29yYXRpb24obV9jb250ZXh0LCByZWN0LCBtX3RleHREZWNvcmF0aW9uU3R5bGUuY29t
cHV0ZWRGb250UGl4ZWxTaXplKCkpOworICAgICAgICAgICAgc3Ryb2tlV2F2eVRleHREZWNvcmF0
aW9uKG1fY29udGV4dCwgcmVjdCwgbV9yZW5kZXJUZXh0U3R5bGUuY29tcHV0ZWRGb250UGl4ZWxT
aXplKCkpOwogICAgICAgICBlbHNlIGlmIChkZWNvcmF0aW9uID09IFRleHREZWNvcmF0aW9uTGlu
ZTo6VW5kZXJsaW5lIHx8IGRlY29yYXRpb24gPT0gVGV4dERlY29yYXRpb25MaW5lOjpPdmVybGlu
ZSkgewotICAgICAgICAgICAgaWYgKChtX3RleHREZWNvcmF0aW9uU3R5bGUudGV4dERlY29yYXRp
b25Ta2lwSW5rKCkgPT0gVGV4dERlY29yYXRpb25Ta2lwSW5rOjpBdXRvIHx8IG1fdGV4dERlY29y
YXRpb25TdHlsZS50ZXh0RGVjb3JhdGlvblNraXBJbmsoKSA9PSBUZXh0RGVjb3JhdGlvblNraXBJ
bms6OkFsbCkgJiYgbV9pc0hvcml6b250YWwpIHsKKyAgICAgICAgICAgIGlmICgobV9yZW5kZXJU
ZXh0U3R5bGUudGV4dERlY29yYXRpb25Ta2lwSW5rKCkgPT0gVGV4dERlY29yYXRpb25Ta2lwSW5r
OjpBdXRvIHx8IG1fcmVuZGVyVGV4dFN0eWxlLnRleHREZWNvcmF0aW9uU2tpcEluaygpID09IFRl
eHREZWNvcmF0aW9uU2tpcEluazo6QWxsKSAmJiBtX2lzSG9yaXpvbnRhbCkgewogICAgICAgICAg
ICAgICAgIGlmICghbV9jb250ZXh0LnBhaW50aW5nRGlzYWJsZWQoKSkgewogICAgICAgICAgICAg
ICAgICAgICBhdXRvIHVuZGVybGluZUJvdW5kaW5nQm94ID0gbV9jb250ZXh0LmNvbXB1dGVVbmRl
cmxpbmVCb3VuZHNGb3JUZXh0KHJlY3QsIG1faXNQcmludGluZyk7CiAgICAgICAgICAgICAgICAg
ICAgIERhc2hBcnJheSBpbnRlcnNlY3Rpb25zID0gbV9mb250LmRhc2hlc0ZvckludGVyc2VjdGlv
bnNXaXRoUmVjdCh0ZXh0UnVuLCBkZWNvcmF0aW9uR2VvbWV0cnkudGV4dE9yaWdpbiwgdW5kZXJs
aW5lQm91bmRpbmdCb3gpOwpAQCAtMjQ2LDE1ICsyMzEsMTUgQEAgdm9pZCBUZXh0RGVjb3JhdGlv
blBhaW50ZXI6OnBhaW50QmFja2dyb3VuZERlY29yYXRpb25zKGNvbnN0IFRleHRSdW4mIHRleHRS
dW4sIGMKICAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIH07CiAKLSAgICBh
dXRvIGFyZUxpbmVzT3BhcXVlID0gIW1faXNQcmludGluZyAmJiAoIW1fdGV4dERlY29yYXRpb25z
LmNvbnRhaW5zKFRleHREZWNvcmF0aW9uTGluZTo6VW5kZXJsaW5lKSB8fCBtX3N0eWxlcy51bmRl
cmxpbmUuY29sb3IuaXNPcGFxdWUoKSkKLSAgICAgICAgJiYgKCFtX3RleHREZWNvcmF0aW9ucy5j
b250YWlucyhUZXh0RGVjb3JhdGlvbkxpbmU6Ok92ZXJsaW5lKSB8fCBtX3N0eWxlcy5vdmVybGlu
ZS5jb2xvci5pc09wYXF1ZSgpKQotICAgICAgICAmJiAoIW1fdGV4dERlY29yYXRpb25zLmNvbnRh
aW5zKFRleHREZWNvcmF0aW9uTGluZTo6TGluZVRocm91Z2gpIHx8IG1fc3R5bGVzLmxpbmV0aHJv
dWdoLmNvbG9yLmlzT3BhcXVlKCkpOworICAgIGF1dG8gYXJlTGluZXNPcGFxdWUgPSAhbV9pc1By
aW50aW5nICYmICghZGVjb3JhdGlvblR5cGUuY29udGFpbnMoVGV4dERlY29yYXRpb25MaW5lOjpV
bmRlcmxpbmUpIHx8IGRlY29yYXRpb25TdHlsZS51bmRlcmxpbmUuY29sb3IuaXNPcGFxdWUoKSkK
KyAgICAgICAgJiYgKCFkZWNvcmF0aW9uVHlwZS5jb250YWlucyhUZXh0RGVjb3JhdGlvbkxpbmU6
Ok92ZXJsaW5lKSB8fCBkZWNvcmF0aW9uU3R5bGUub3ZlcmxpbmUuY29sb3IuaXNPcGFxdWUoKSkK
KyAgICAgICAgJiYgKCFkZWNvcmF0aW9uVHlwZS5jb250YWlucyhUZXh0RGVjb3JhdGlvbkxpbmU6
OkxpbmVUaHJvdWdoKSB8fCBkZWNvcmF0aW9uU3R5bGUubGluZXRocm91Z2guY29sb3IuaXNPcGFx
dWUoKSk7CiAKICAgICBmbG9hdCBleHRyYU9mZnNldCA9IDAuZjsKICAgICBhdXRvIGJveE9yaWdp
biA9IGRlY29yYXRpb25HZW9tZXRyeS5ib3hPcmlnaW47CiAgICAgYm9vbCBjbGlwcGluZyA9IG1f
c2hhZG93ICYmIG1fc2hhZG93LT5uZXh0KCkgJiYgIWFyZUxpbmVzT3BhcXVlOwogICAgIGlmIChj
bGlwcGluZykgewotICAgICAgICBhdXRvJiBmb250TWV0cmljcyA9IG1fdGV4dERlY29yYXRpb25T
dHlsZS5tZXRyaWNzT2ZQcmltYXJ5Rm9udCgpOworICAgICAgICBhdXRvJiBmb250TWV0cmljcyA9
IG1fcmVuZGVyVGV4dFN0eWxlLm1ldHJpY3NPZlByaW1hcnlGb250KCk7CiAgICAgICAgIGF1dG8g
Y2xpcFJlY3QgPSBGbG9hdFJlY3QgeyBib3hPcmlnaW4sIEZsb2F0U2l6ZSB7IGRlY29yYXRpb25H
ZW9tZXRyeS50ZXh0Qm94V2lkdGgsIGZvbnRNZXRyaWNzLmFzY2VudCgpICsgMi5mIH0gfTsKICAg
ICAgICAgZm9yIChjb25zdCBTaGFkb3dEYXRhKiBzaGFkb3cgPSBtX3NoYWRvdzsgc2hhZG93OyBz
aGFkb3cgPSBzaGFkb3ctPm5leHQoKSkgewogICAgICAgICAgICAgYXV0byBzaGFkb3dFeHRlbnQg
PSBzaGFkb3ctPnBhaW50aW5nRXh0ZW50KCk7CkBAIC0yNzUsOSArMjYwLDkgQEAgdm9pZCBUZXh0
RGVjb3JhdGlvblBhaW50ZXI6OnBhaW50QmFja2dyb3VuZERlY29yYXRpb25zKGNvbnN0IFRleHRS
dW4mIHRleHRSdW4sIGMKICAgICAvLyBUaGVzZSBkZWNvcmF0aW9ucyBzaG91bGQgbWF0Y2ggdGhl
IHZpc3VhbCBvdmVyZmxvd3MgY29tcHV0ZWQgaW4gdmlzdWFsT3ZlcmZsb3dGb3JEZWNvcmF0aW9u
cygpLgogICAgIGF1dG8gdW5kZXJsaW5lUmVjdCA9IEZsb2F0UmVjdCB7IGJveE9yaWdpbiwgRmxv
YXRTaXplIHsgZGVjb3JhdGlvbkdlb21ldHJ5LnRleHRCb3hXaWR0aCwgZGVjb3JhdGlvbkdlb21l
dHJ5LnRleHREZWNvcmF0aW9uVGhpY2tuZXNzIH0gfTsKICAgICBhdXRvIG92ZXJsaW5lUmVjdCA9
IHVuZGVybGluZVJlY3Q7Ci0gICAgaWYgKG1fdGV4dERlY29yYXRpb25zLmNvbnRhaW5zKFRleHRE
ZWNvcmF0aW9uTGluZTo6VW5kZXJsaW5lKSkKKyAgICBpZiAoZGVjb3JhdGlvblR5cGUuY29udGFp
bnMoVGV4dERlY29yYXRpb25MaW5lOjpVbmRlcmxpbmUpKQogICAgICAgICB1bmRlcmxpbmVSZWN0
Lm1vdmUoMC5mLCBkZWNvcmF0aW9uR2VvbWV0cnkudW5kZXJsaW5lT2Zmc2V0KTsKLSAgICBpZiAo
bV90ZXh0RGVjb3JhdGlvbnMuY29udGFpbnMoVGV4dERlY29yYXRpb25MaW5lOjpPdmVybGluZSkp
CisgICAgaWYgKGRlY29yYXRpb25UeXBlLmNvbnRhaW5zKFRleHREZWNvcmF0aW9uTGluZTo6T3Zl
cmxpbmUpKQogICAgICAgICBvdmVybGluZVJlY3QubW92ZSgwLmYsIGRlY29yYXRpb25HZW9tZXRy
eS5vdmVybGluZU9mZnNldCk7CiAKICAgICBhdXRvKiBzaGFkb3cgPSBtX3NoYWRvdzsKQEAgLTMw
MSwxNCArMjg2LDE0IEBAIHZvaWQgVGV4dERlY29yYXRpb25QYWludGVyOjpwYWludEJhY2tncm91
bmREZWNvcmF0aW9ucyhjb25zdCBUZXh0UnVuJiB0ZXh0UnVuLCBjCiAgICAgICAgIH07CiAgICAg
ICAgIGFwcGx5U2hhZG93SWZOZWVkZWQoKTsKIAotICAgICAgICBpZiAobV90ZXh0RGVjb3JhdGlv
bnMuY29udGFpbnMoVGV4dERlY29yYXRpb25MaW5lOjpVbmRlcmxpbmUpKQotICAgICAgICAgICAg
cGFpbnREZWNvcmF0aW9uKFRleHREZWNvcmF0aW9uTGluZTo6VW5kZXJsaW5lLCBtX3N0eWxlcy51
bmRlcmxpbmUuZGVjb3JhdGlvblN0eWxlLCBtX3N0eWxlcy51bmRlcmxpbmUuY29sb3IsIHVuZGVy
bGluZVJlY3QpOwotICAgICAgICBpZiAobV90ZXh0RGVjb3JhdGlvbnMuY29udGFpbnMoVGV4dERl
Y29yYXRpb25MaW5lOjpPdmVybGluZSkpCi0gICAgICAgICAgICBwYWludERlY29yYXRpb24oVGV4
dERlY29yYXRpb25MaW5lOjpPdmVybGluZSwgbV9zdHlsZXMub3ZlcmxpbmUuZGVjb3JhdGlvblN0
eWxlLCBtX3N0eWxlcy5vdmVybGluZS5jb2xvciwgb3ZlcmxpbmVSZWN0KTsKKyAgICAgICAgaWYg
KGRlY29yYXRpb25UeXBlLmNvbnRhaW5zKFRleHREZWNvcmF0aW9uTGluZTo6VW5kZXJsaW5lKSkK
KyAgICAgICAgICAgIHBhaW50RGVjb3JhdGlvbihUZXh0RGVjb3JhdGlvbkxpbmU6OlVuZGVybGlu
ZSwgZGVjb3JhdGlvblN0eWxlLnVuZGVybGluZS5kZWNvcmF0aW9uU3R5bGUsIGRlY29yYXRpb25T
dHlsZS51bmRlcmxpbmUuY29sb3IsIHVuZGVybGluZVJlY3QpOworICAgICAgICBpZiAoZGVjb3Jh
dGlvblR5cGUuY29udGFpbnMoVGV4dERlY29yYXRpb25MaW5lOjpPdmVybGluZSkpCisgICAgICAg
ICAgICBwYWludERlY29yYXRpb24oVGV4dERlY29yYXRpb25MaW5lOjpPdmVybGluZSwgZGVjb3Jh
dGlvblN0eWxlLm92ZXJsaW5lLmRlY29yYXRpb25TdHlsZSwgZGVjb3JhdGlvblN0eWxlLm92ZXJs
aW5lLmNvbG9yLCBvdmVybGluZVJlY3QpOwogICAgICAgICAvLyBXZSBvbmx5IHdhbnQgdG8gcGFp
bnQgdGhlIHNoYWRvdywgaGVuY2UgdGhlIHRyYW5zcGFyZW50IGNvbG9yLCBub3QgdGhlIGFjdHVh
bCBsaW5lLXRocm91Z2gsCiAgICAgICAgIC8vIHdoaWNoIHdpbGwgYmUgcGFpbnRlZCBpbiBwYWlu
dEZvcmVncm91bmREZWNvcmF0aW9ucygpLgotICAgICAgICBpZiAoc2hhZG93ICYmIG1fdGV4dERl
Y29yYXRpb25zLmNvbnRhaW5zKFRleHREZWNvcmF0aW9uTGluZTo6TGluZVRocm91Z2gpKQotICAg
ICAgICAgICAgcGFpbnRMaW5lVGhyb3VnaChDb2xvcjo6dHJhbnNwYXJlbnRCbGFjaywgZGVjb3Jh
dGlvbkdlb21ldHJ5LnRleHREZWNvcmF0aW9uVGhpY2tuZXNzLCBib3hPcmlnaW4sIGRlY29yYXRp
b25HZW9tZXRyeS50ZXh0Qm94V2lkdGgpOworICAgICAgICBpZiAoc2hhZG93ICYmIGRlY29yYXRp
b25UeXBlLmNvbnRhaW5zKFRleHREZWNvcmF0aW9uTGluZTo6TGluZVRocm91Z2gpKQorICAgICAg
ICAgICAgcGFpbnRMaW5lVGhyb3VnaChDb2xvcjo6dHJhbnNwYXJlbnRCbGFjaywgZGVjb3JhdGlv
bkdlb21ldHJ5LnRleHREZWNvcmF0aW9uVGhpY2tuZXNzLCBib3hPcmlnaW4sIGRlY29yYXRpb25H
ZW9tZXRyeS50ZXh0Qm94V2lkdGgsIGRlY29yYXRpb25TdHlsZSk7CiAgICAgfSB3aGlsZSAoc2hh
ZG93KTsKIAogICAgIGlmIChjbGlwcGluZykKQEAgLTMxNywzMCArMzAyLDMwIEBAIHZvaWQgVGV4
dERlY29yYXRpb25QYWludGVyOjpwYWludEJhY2tncm91bmREZWNvcmF0aW9ucyhjb25zdCBUZXh0
UnVuJiB0ZXh0UnVuLCBjCiAgICAgICAgIG1fY29udGV4dC5jbGVhclNoYWRvdygpOwogfQogCi12
b2lkIFRleHREZWNvcmF0aW9uUGFpbnRlcjo6cGFpbnRGb3JlZ3JvdW5kRGVjb3JhdGlvbnMoY29u
c3QgRmxvYXRQb2ludCYgYm94T3JpZ2luLCBmbG9hdCB3aWR0aCkKK3ZvaWQgVGV4dERlY29yYXRp
b25QYWludGVyOjpwYWludEZvcmVncm91bmREZWNvcmF0aW9ucyhjb25zdCBGbG9hdFBvaW50JiBi
b3hPcmlnaW4sIGZsb2F0IHdpZHRoLCBPcHRpb25TZXQ8VGV4dERlY29yYXRpb25MaW5lPiBkZWNv
cmF0aW9uVHlwZSwgY29uc3QgU3R5bGVzJiBkZWNvcmF0aW9uU3R5bGUpCiB7Ci0gICAgaWYgKCFt
X3RleHREZWNvcmF0aW9ucy5jb250YWlucyhUZXh0RGVjb3JhdGlvbkxpbmU6OkxpbmVUaHJvdWdo
KSkKKyAgICBpZiAoIWRlY29yYXRpb25UeXBlLmNvbnRhaW5zKFRleHREZWNvcmF0aW9uTGluZTo6
TGluZVRocm91Z2gpKQogICAgICAgICByZXR1cm47CiAKLSAgICBhdXRvIHRleHREZWNvcmF0aW9u
VGhpY2tuZXNzID0gY2VpbFRvRGV2aWNlUGl4ZWwobV90ZXh0RGVjb3JhdGlvblN0eWxlLnRleHRE
ZWNvcmF0aW9uVGhpY2tuZXNzKCkucmVzb2x2ZShtX3RleHREZWNvcmF0aW9uU3R5bGUuY29tcHV0
ZWRGb250U2l6ZSgpLCBtX3RleHREZWNvcmF0aW9uU3R5bGUubWV0cmljc09mUHJpbWFyeUZvbnQo
KSksIG1fZGV2aWNlU2NhbGVGYWN0b3IpOwotICAgIHBhaW50TGluZVRocm91Z2gobV9zdHlsZXMu
bGluZXRocm91Z2guY29sb3IsIHRleHREZWNvcmF0aW9uVGhpY2tuZXNzLCBib3hPcmlnaW4sIHdp
ZHRoKTsKKyAgICBhdXRvIHRleHREZWNvcmF0aW9uVGhpY2tuZXNzID0gY2VpbFRvRGV2aWNlUGl4
ZWwobV9yZW5kZXJUZXh0U3R5bGUudGV4dERlY29yYXRpb25UaGlja25lc3MoKS5yZXNvbHZlKG1f
cmVuZGVyVGV4dFN0eWxlLmNvbXB1dGVkRm9udFNpemUoKSwgbV9yZW5kZXJUZXh0U3R5bGUubWV0
cmljc09mUHJpbWFyeUZvbnQoKSksIG1fZGV2aWNlU2NhbGVGYWN0b3IpOworICAgIHBhaW50TGlu
ZVRocm91Z2goZGVjb3JhdGlvblN0eWxlLmxpbmV0aHJvdWdoLmNvbG9yLCB0ZXh0RGVjb3JhdGlv
blRoaWNrbmVzcywgYm94T3JpZ2luLCB3aWR0aCwgZGVjb3JhdGlvblN0eWxlKTsKIH0KIAotdm9p
ZCBUZXh0RGVjb3JhdGlvblBhaW50ZXI6OnBhaW50TGluZVRocm91Z2goY29uc3QgQ29sb3ImIGNv
bG9yLCBmbG9hdCB0aGlja25lc3MsIGNvbnN0IEZsb2F0UG9pbnQmIGxvY2FsT3JpZ2luLCBmbG9h
dCB3aWR0aCkKK3ZvaWQgVGV4dERlY29yYXRpb25QYWludGVyOjpwYWludExpbmVUaHJvdWdoKGNv
bnN0IENvbG9yJiBjb2xvciwgZmxvYXQgdGhpY2tuZXNzLCBjb25zdCBGbG9hdFBvaW50JiBsb2Nh
bE9yaWdpbiwgZmxvYXQgd2lkdGgsIGNvbnN0IFN0eWxlcyYgZGVjb3JhdGlvblN0eWxlKQogewot
ICAgIGNvbnN0IGF1dG8mIGZvbnRNZXRyaWNzID0gbV90ZXh0RGVjb3JhdGlvblN0eWxlLm1ldHJp
Y3NPZlByaW1hcnlGb250KCk7CisgICAgY29uc3QgYXV0byYgZm9udE1ldHJpY3MgPSBtX3JlbmRl
clRleHRTdHlsZS5tZXRyaWNzT2ZQcmltYXJ5Rm9udCgpOwogICAgIEZsb2F0UmVjdCByZWN0KGxv
Y2FsT3JpZ2luLCBGbG9hdFNpemUod2lkdGgsIHRoaWNrbmVzcykpOwotICAgIGF1dG8gYXV0b1Rl
eHREZWNvcmF0aW9uVGhpY2tuZXNzID0gY2VpbFRvRGV2aWNlUGl4ZWwoVGV4dERlY29yYXRpb25U
aGlja25lc3M6OmNyZWF0ZVdpdGhBdXRvKCkucmVzb2x2ZShtX3RleHREZWNvcmF0aW9uU3R5bGUu
Y29tcHV0ZWRGb250U2l6ZSgpLCBmb250TWV0cmljcyksIG1fZGV2aWNlU2NhbGVGYWN0b3IpOwor
ICAgIGF1dG8gYXV0b1RleHREZWNvcmF0aW9uVGhpY2tuZXNzID0gY2VpbFRvRGV2aWNlUGl4ZWwo
VGV4dERlY29yYXRpb25UaGlja25lc3M6OmNyZWF0ZVdpdGhBdXRvKCkucmVzb2x2ZShtX3JlbmRl
clRleHRTdHlsZS5jb21wdXRlZEZvbnRTaXplKCksIGZvbnRNZXRyaWNzKSwgbV9kZXZpY2VTY2Fs
ZUZhY3Rvcik7CiAgICAgYXV0byBjZW50ZXIgPSAyICogZm9udE1ldHJpY3MuZmxvYXRBc2NlbnQo
KSAvIDMgKyBhdXRvVGV4dERlY29yYXRpb25UaGlja25lc3MgLyAyOwogICAgIHJlY3QubW92ZSgw
LCBjZW50ZXIgLSB0aGlja25lc3MgLyAyKTsKIAogICAgIG1fY29udGV4dC5zZXRTdHJva2VDb2xv
cihjb2xvcik7CiAKLSAgICBUZXh0RGVjb3JhdGlvblN0eWxlIHN0eWxlID0gbV9zdHlsZXMubGlu
ZXRocm91Z2guZGVjb3JhdGlvblN0eWxlOworICAgIFRleHREZWNvcmF0aW9uU3R5bGUgc3R5bGUg
PSBkZWNvcmF0aW9uU3R5bGUubGluZXRocm91Z2guZGVjb3JhdGlvblN0eWxlOwogICAgIGF1dG8g
c3Ryb2tlU3R5bGUgPSB0ZXh0RGVjb3JhdGlvblN0eWxlVG9TdHJva2VTdHlsZShzdHlsZSk7CiAK
ICAgICBpZiAoc3R5bGUgPT0gVGV4dERlY29yYXRpb25TdHlsZTo6V2F2eSkKLSAgICAgICAgc3Ry
b2tlV2F2eVRleHREZWNvcmF0aW9uKG1fY29udGV4dCwgcmVjdCwgbV90ZXh0RGVjb3JhdGlvblN0
eWxlLmNvbXB1dGVkRm9udFBpeGVsU2l6ZSgpKTsKKyAgICAgICAgc3Ryb2tlV2F2eVRleHREZWNv
cmF0aW9uKG1fY29udGV4dCwgcmVjdCwgbV9yZW5kZXJUZXh0U3R5bGUuY29tcHV0ZWRGb250UGl4
ZWxTaXplKCkpOwogICAgIGVsc2UKICAgICAgICAgbV9jb250ZXh0LmRyYXdMaW5lRm9yVGV4dChy
ZWN0LCBtX2lzUHJpbnRpbmcsIHN0eWxlID09IFRleHREZWNvcmF0aW9uU3R5bGU6OkRvdWJsZSwg
c3Ryb2tlU3R5bGUpOwogfQpAQCAtNDE5LDQgKzQwNCwxNiBAQCBhdXRvIFRleHREZWNvcmF0aW9u
UGFpbnRlcjo6c3R5bGVzRm9yUmVuZGVyZXIoY29uc3QgUmVuZGVyT2JqZWN0JiByZW5kZXJlciwg
T3B0aQogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKK09wdGlvblNldDxUZXh0RGVjb3JhdGlvbkxp
bmU+IFRleHREZWNvcmF0aW9uUGFpbnRlcjo6dGV4dERlY29yYXRpb25zSW5FZmZlY3RGb3JTdHls
ZShjb25zdCBUZXh0RGVjb3JhdGlvblBhaW50ZXI6OlN0eWxlcyYgc3R5bGUpCit7CisgICAgT3B0
aW9uU2V0PFRleHREZWNvcmF0aW9uTGluZT4gZGVjb3JhdGlvbnM7CisgICAgaWYgKHN0eWxlLnVu
ZGVybGluZS5jb2xvci5pc1ZhbGlkKCkpCisgICAgICAgIGRlY29yYXRpb25zLmFkZChUZXh0RGVj
b3JhdGlvbkxpbmU6OlVuZGVybGluZSk7CisgICAgaWYgKHN0eWxlLm92ZXJsaW5lLmNvbG9yLmlz
VmFsaWQoKSkKKyAgICAgICAgZGVjb3JhdGlvbnMuYWRkKFRleHREZWNvcmF0aW9uTGluZTo6T3Zl
cmxpbmUpOworICAgIGlmIChzdHlsZS5saW5ldGhyb3VnaC5jb2xvci5pc1ZhbGlkKCkpCisgICAg
ICAgIGRlY29yYXRpb25zLmFkZChUZXh0RGVjb3JhdGlvbkxpbmU6OkxpbmVUaHJvdWdoKTsKKyAg
ICByZXR1cm4gZGVjb3JhdGlvbnM7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9UZXh0RGVjb3JhdGlvblBhaW50ZXIuaCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9UZXh0RGVjb3JhdGlvblBhaW50ZXIuaAppbmRleCAw
MWJlZDA4NWRiNWEuLmU4ZTkxY2QwNmI3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1RleHREZWNvcmF0aW9uUGFpbnRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9UZXh0RGVjb3JhdGlvblBhaW50ZXIuaApAQCAtMzksMTkgKzM5LDcgQEAgY2xhc3MgVGV4
dFJ1bjsKICAgICAKIGNsYXNzIFRleHREZWNvcmF0aW9uUGFpbnRlciB7CiBwdWJsaWM6Ci0gICAg
c3RydWN0IFN0eWxlczsKLSAgICBUZXh0RGVjb3JhdGlvblBhaW50ZXIoR3JhcGhpY3NDb250ZXh0
JiwgY29uc3QgUmVuZGVyU3R5bGUmLCBjb25zdCBGb250Q2FzY2FkZSYsIGNvbnN0IFNoYWRvd0Rh
dGEqLCBjb25zdCBGaWx0ZXJPcGVyYXRpb25zKiwgU3R5bGVzLCBib29sIGlzUHJpbnRpbmcsIGJv
b2wgaXNIb3Jpem9udGFsLCBmbG9hdCBkZXZpY2VTY2FsZUZhY3Rvcik7Ci0KLSAgICBzdHJ1Y3Qg
QmFja2dyb3VuZERlY29yYXRpb25HZW9tZXRyeSB7Ci0gICAgICAgIEZsb2F0UG9pbnQgdGV4dE9y
aWdpbjsKLSAgICAgICAgRmxvYXRQb2ludCBib3hPcmlnaW47Ci0gICAgICAgIGZsb2F0IHRleHRC
b3hXaWR0aCB7IDAuZiB9OwotICAgICAgICBmbG9hdCB0ZXh0RGVjb3JhdGlvblRoaWNrbmVzcyB7
IDAuZiB9OwotICAgICAgICBmbG9hdCB1bmRlcmxpbmVPZmZzZXQgeyAwLmYgfTsKLSAgICAgICAg
ZmxvYXQgb3ZlcmxpbmVPZmZzZXQgeyAwLmYgfTsKLSAgICB9OwotICAgIHZvaWQgcGFpbnRCYWNr
Z3JvdW5kRGVjb3JhdGlvbnMoY29uc3QgVGV4dFJ1biYsIGNvbnN0IEJhY2tncm91bmREZWNvcmF0
aW9uR2VvbWV0cnkmKTsKLSAgICB2b2lkIHBhaW50Rm9yZWdyb3VuZERlY29yYXRpb25zKGNvbnN0
IEZsb2F0UG9pbnQmIGJveE9yaWdpbiwgZmxvYXQgd2lkdGgpOworICAgIFRleHREZWNvcmF0aW9u
UGFpbnRlcihHcmFwaGljc0NvbnRleHQmLCBjb25zdCBSZW5kZXJTdHlsZSYsIGNvbnN0IEZvbnRD
YXNjYWRlJiwgY29uc3QgU2hhZG93RGF0YSosIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMqLCBib29s
IGlzUHJpbnRpbmcsIGJvb2wgaXNIb3Jpem9udGFsLCBmbG9hdCBkZXZpY2VTY2FsZUZhY3Rvcik7
CiAKICAgICBzdHJ1Y3QgU3R5bGVzIHsKICAgICAgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IFN0
eWxlcyYpIGNvbnN0OwpAQCAtNjUsMTYgKzUzLDI1IEBAIHB1YmxpYzoKICAgICAgICAgRGVjb3Jh
dGlvblN0eWxlQW5kQ29sb3Igb3ZlcmxpbmU7CiAgICAgICAgIERlY29yYXRpb25TdHlsZUFuZENv
bG9yIGxpbmV0aHJvdWdoOwogICAgIH07Ci0gICAgY29uc3QgU3R5bGVzJiBvdmVycmlkZVN0eWxl
cygpIGNvbnN0IHsgcmV0dXJuIG1fc3R5bGVzOyB9Ci0gICAgT3B0aW9uU2V0PFRleHREZWNvcmF0
aW9uTGluZT4gdGV4dERlY29yYXRpb25zKCkgY29uc3QgeyByZXR1cm4gbV90ZXh0RGVjb3JhdGlv
bnM7IH0KKyAgICBzdHJ1Y3QgQmFja2dyb3VuZERlY29yYXRpb25HZW9tZXRyeSB7CisgICAgICAg
IEZsb2F0UG9pbnQgdGV4dE9yaWdpbjsKKyAgICAgICAgRmxvYXRQb2ludCBib3hPcmlnaW47Cisg
ICAgICAgIGZsb2F0IHRleHRCb3hXaWR0aCB7IDAuZiB9OworICAgICAgICBmbG9hdCB0ZXh0RGVj
b3JhdGlvblRoaWNrbmVzcyB7IDAuZiB9OworICAgICAgICBmbG9hdCB1bmRlcmxpbmVPZmZzZXQg
eyAwLmYgfTsKKyAgICAgICAgZmxvYXQgb3ZlcmxpbmVPZmZzZXQgeyAwLmYgfTsKKyAgICB9Owor
ICAgIHZvaWQgcGFpbnRCYWNrZ3JvdW5kRGVjb3JhdGlvbnMoY29uc3QgVGV4dFJ1biYsIGNvbnN0
IEJhY2tncm91bmREZWNvcmF0aW9uR2VvbWV0cnkmLCBPcHRpb25TZXQ8VGV4dERlY29yYXRpb25M
aW5lPiwgY29uc3QgU3R5bGVzJik7CisgICAgdm9pZCBwYWludEZvcmVncm91bmREZWNvcmF0aW9u
cyhjb25zdCBGbG9hdFBvaW50JiBib3hPcmlnaW4sIGZsb2F0IHdpZHRoLCBPcHRpb25TZXQ8VGV4
dERlY29yYXRpb25MaW5lPiwgY29uc3QgU3R5bGVzJik7CisKICAgICBzdGF0aWMgQ29sb3IgZGVj
b3JhdGlvbkNvbG9yKGNvbnN0IFJlbmRlclN0eWxlJik7CiAgICAgc3RhdGljIFN0eWxlcyBzdHls
ZXNGb3JSZW5kZXJlcihjb25zdCBSZW5kZXJPYmplY3QmLCBPcHRpb25TZXQ8VGV4dERlY29yYXRp
b25MaW5lPiByZXF1ZXN0ZWREZWNvcmF0aW9ucywgYm9vbCBmaXJzdExpbmVTdHlsZSA9IGZhbHNl
LCBQc2V1ZG9JZCA9IFBzZXVkb0lkOjpOb25lKTsKKyAgICBzdGF0aWMgT3B0aW9uU2V0PFRleHRE
ZWNvcmF0aW9uTGluZT4gdGV4dERlY29yYXRpb25zSW5FZmZlY3RGb3JTdHlsZShjb25zdCBUZXh0
RGVjb3JhdGlvblBhaW50ZXI6OlN0eWxlcyYpOwogCiBwcml2YXRlOgotICAgIHZvaWQgcGFpbnRM
aW5lVGhyb3VnaChjb25zdCBDb2xvciYsIGZsb2F0IHRoaWNrbmVzcywgY29uc3QgRmxvYXRQb2lu
dCYgbG9jYWxPcmlnaW4sIGZsb2F0IHdpZHRoKTsKKyAgICB2b2lkIHBhaW50TGluZVRocm91Z2go
Y29uc3QgQ29sb3ImLCBmbG9hdCB0aGlja25lc3MsIGNvbnN0IEZsb2F0UG9pbnQmIGxvY2FsT3Jp
Z2luLCBmbG9hdCB3aWR0aCwgY29uc3QgU3R5bGVzJik7CiAKICAgICBHcmFwaGljc0NvbnRleHQm
IG1fY29udGV4dDsKLSAgICBPcHRpb25TZXQ8VGV4dERlY29yYXRpb25MaW5lPiBtX3RleHREZWNv
cmF0aW9uczsKICAgICBib29sIG1faXNQcmludGluZyB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2lz
SG9yaXpvbnRhbCB7IHRydWUgfTsKICAgICBjb25zdCBTaGFkb3dEYXRhKiBtX3NoYWRvdyB7IG51
bGxwdHIgfTsKQEAgLTgyLDggKzc5LDcgQEAgcHJpdmF0ZToKICAgICBjb25zdCBGb250Q2FzY2Fk
ZSYgbV9mb250OwogICAgIGZsb2F0IG1fZGV2aWNlU2NhbGVGYWN0b3IgeyAwIH07CiAKLSAgICBT
dHlsZXMgbV9zdHlsZXM7Ci0gICAgY29uc3QgUmVuZGVyU3R5bGUmIG1fdGV4dERlY29yYXRpb25T
dHlsZTsKKyAgICBjb25zdCBSZW5kZXJTdHlsZSYgbV9yZW5kZXJUZXh0U3R5bGU7CiB9OwotICAg
IAorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>