<?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>243765</bug_id>
          
          <creation_ts>2022-08-09 20:24:58 -0700</creation_ts>
          <short_desc>[Painting] TextDecorationPainter should not take RenderStyle</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>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mmaxfield</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>1890186</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2022-08-09 20:24:58 -0700</bug_when>
    <thetext>ssia</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1890187</commentid>
    <comment_count>1</comment_count>
      <attachid>461516</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-08-09 20:29:36 -0700</bug_when>
    <thetext>Created attachment 461516
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1890571</commentid>
    <comment_count>2</comment_count>
      <attachid>461542</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-08-11 07:07:55 -0700</bug_when>
    <thetext>Created attachment 461542
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1890735</commentid>
    <comment_count>3</comment_count>
      <attachid>461550</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-08-11 16:11:47 -0700</bug_when>
    <thetext>Created attachment 461550
[fast-cq]Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1890749</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-08-11 16:31:39 -0700</bug_when>
    <thetext>Committed 253353@main (cc23f291cc1f): &lt;https://commits.webkit.org/253353@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 461550.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1890750</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-08-11 16:32:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/98537188&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>461516</attachid>
            <date>2022-08-09 20:29:36 -0700</date>
            <delta_ts>2022-08-11 07:07:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-243765-20220809202935.patch</filename>
            <type>text/plain</type>
            <size>14196</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSA4Mjg3NWIwZDc1ZjE1OGM4OWExODA3OTRkY2M0MmEzNTdlMjdkOTJjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJ1anRhcyA8emFsYW5AYXBwbGUuY29tPgpEYXRlOiBU
dWUsIDkgQXVnIDIwMjIgMjA6MjU6MDkgLTA3MDAKU3ViamVjdDogW1BBVENIXSBbUGFpbnRpbmdd
IFRleHREZWNvcmF0aW9uUGFpbnRlciBzaG91bGQgbm90IHRha2UgUmVuZGVyU3R5bGUKIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDM3NjUKClJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgoKVGhpcyBlbmFibGVzIHVzIHRvIHJldXNlIHRoZSBUZXh0RGVjb3JhdGlv
blBhaW50ZXIgb2JqZWN0IHdoZW4gd2UgbmVlZCB0byBwYWludCBtdWx0aXBsZSBpbmxpbmUgYm94
IGRlY29yYXRpb25zIGZvciBhIGdpdmVuIHRleHQgYm94LgoKKiBTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvVGV4dEJveFBhaW50ZXIuY3BwOgooV2ViQ29yZTo6VGV4dEJveFBhaW50ZXI8VGV4dEJv
eFBhdGg+OjpjcmVhdGVEZWNvcmF0aW9uUGFpbnRlcik6CihXZWJDb3JlOjpUZXh0Qm94UGFpbnRl
cjxUZXh0Qm94UGF0aD46OnBhaW50QmFja2dyb3VuZERlY29yYXRpb25zKToKKFdlYkNvcmU6OlRl
eHRCb3hQYWludGVyPFRleHRCb3hQYXRoPjo6cGFpbnRGb3JlZ3JvdW5kRGVjb3JhdGlvbnMpOgoq
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9UZXh0RGVjb3JhdGlvblBhaW50ZXIuY3BwOgooV2Vi
Q29yZTo6c3Ryb2tlV2F2eVRleHREZWNvcmF0aW9uKToKKFdlYkNvcmU6OlRleHREZWNvcmF0aW9u
UGFpbnRlcjo6VGV4dERlY29yYXRpb25QYWludGVyKToKKFdlYkNvcmU6OlRleHREZWNvcmF0aW9u
UGFpbnRlcjo6cGFpbnRCYWNrZ3JvdW5kRGVjb3JhdGlvbnMpOgooV2ViQ29yZTo6VGV4dERlY29y
YXRpb25QYWludGVyOjpwYWludExpbmVUaHJvdWdoKToKKFdlYkNvcmU6OlRleHREZWNvcmF0aW9u
UGFpbnRlcjo6c3R5bGVzRm9yUmVuZGVyZXIpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9U
ZXh0RGVjb3JhdGlvblBhaW50ZXIuaDoKKiBTb3VyY2UvV2ViQ29yZS9zdHlsZS9JbmxpbmVUZXh0
Qm94U3R5bGUuY3BwOgooV2ViQ29yZTo6d2F2eVN0cm9rZVBhcmFtZXRlcnMpOgooV2ViQ29yZTo6
Y29tcHV0ZWRWaXN1YWxPdmVyZmxvd0ZvckRlY29yYXRpb25zKToKKFdlYkNvcmU6OmdldFdhdnlT
dHJva2VQYXJhbWV0ZXJzKTogRGVsZXRlZC4KKiBTb3VyY2UvV2ViQ29yZS9zdHlsZS9JbmxpbmVU
ZXh0Qm94U3R5bGUuaDoKLS0tCiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvVGV4dEJveFBhaW50
ZXIuY3BwICAgfCAxMyArKysrKysrKy0tLS0KIC4uLi9yZW5kZXJpbmcvVGV4dERlY29yYXRpb25Q
YWludGVyLmNwcCAgICAgICB8IDIxICsrKysrKysrLS0tLS0tLS0tLS0KIC4uLi9XZWJDb3JlL3Jl
bmRlcmluZy9UZXh0RGVjb3JhdGlvblBhaW50ZXIuaCB8IDEyICsrKysrKystLS0tCiBTb3VyY2Uv
V2ViQ29yZS9zdHlsZS9JbmxpbmVUZXh0Qm94U3R5bGUuY3BwICAgfCAgNCArKy0tCiBTb3VyY2Uv
V2ViQ29yZS9zdHlsZS9JbmxpbmVUZXh0Qm94U3R5bGUuaCAgICAgfCAgMiArLQogNSBmaWxlcyBj
aGFuZ2VkLCAyOSBpbnNlcnRpb25zKCspLCAyMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvVGV4dEJveFBhaW50ZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1RleHRCb3hQYWludGVyLmNwcAppbmRleCAxNmYwOWRhMmYyZmQuLjVlZTYx
MmI4MTA0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHRCb3hQYWlu
dGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvVGV4dEJveFBhaW50ZXIuY3Bw
CkBAIC00MzYsOCArNDM2LDcgQEAgVGV4dERlY29yYXRpb25QYWludGVyIFRleHRCb3hQYWludGVy
PFRleHRCb3hQYXRoPjo6Y3JlYXRlRGVjb3JhdGlvblBhaW50ZXIoY29uc3QKICAgICAvLyBDcmVh
dGUgcGFpbnRlcgogICAgIGF1dG8qIHNoYWRvdyA9IG1hcmtlZFRleHQuc3R5bGUudGV4dFNoYWRv
dyA/ICZtYXJrZWRUZXh0LnN0eWxlLnRleHRTaGFkb3cudmFsdWUoKSA6IG51bGxwdHI7CiAgICAg
YXV0byogY29sb3JGaWx0ZXIgPSBtYXJrZWRUZXh0LnN0eWxlLnRleHRTaGFkb3cgJiYgbV9zdHls
ZS5oYXNBcHBsZUNvbG9yRmlsdGVyKCkgPyAmbV9zdHlsZS5hcHBsZUNvbG9yRmlsdGVyKCkgOiBu
dWxscHRyOwotICAgIGF1dG8mIHN0eWxlVG9Vc2UgPSBtX2lzRmlyc3RMaW5lID8gbV9yZW5kZXJl
ci5maXJzdExpbmVTdHlsZSgpIDogbV9yZW5kZXJlci5zdHlsZSgpOwotICAgIHJldHVybiB7IGNv
bnRleHQsIHN0eWxlVG9Vc2UsIGZvbnRDYXNjYWRlKCksIHNoYWRvdywgY29sb3JGaWx0ZXIsIG1f
ZG9jdW1lbnQucHJpbnRpbmcoKSwgbV9yZW5kZXJlci5pc0hvcml6b250YWxXcml0aW5nTW9kZSgp
IH07CisgICAgcmV0dXJuIHsgY29udGV4dCwgZm9udENhc2NhZGUoKSwgc2hhZG93LCBjb2xvckZp
bHRlciwgbV9kb2N1bWVudC5wcmludGluZygpLCBtX3JlbmRlcmVyLmlzSG9yaXpvbnRhbFdyaXRp
bmdNb2RlKCkgfTsKIH0KIAogc3RhdGljIGlubGluZSBmbG9hdCBjb21wdXRlZFRleHREZWNvcmF0
aW9uVGhpY2tuZXNzKGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZVRvVXNlLCBmbG9hdCBkZXZpY2VT
Y2FsZUZhY3RvcikKQEAgLTQ5NSw3ICs0OTQsOSBAQCB2b2lkIFRleHRCb3hQYWludGVyPFRleHRC
b3hQYXRoPjo6cGFpbnRCYWNrZ3JvdW5kRGVjb3JhdGlvbnMoVGV4dERlY29yYXRpb25QYWludAog
ICAgICAgICAgICAgdGV4dERlY29yYXRpb25UaGlja25lc3MsCiAgICAgICAgICAgICB1bmRlcmxp
bmVPZmZzZXQoKSwKICAgICAgICAgICAgIG92ZXJsaW5lT2Zmc2V0KCksCi0gICAgICAgICAgICBj
b21wdXRlZExpbmV0aHJvdWdoQ2VudGVyKHN0eWxlVG9Vc2UsIHRleHREZWNvcmF0aW9uVGhpY2tu
ZXNzLCBhdXRvVGV4dERlY29yYXRpb25UaGlja25lc3MpCisgICAgICAgICAgICBjb21wdXRlZExp
bmV0aHJvdWdoQ2VudGVyKHN0eWxlVG9Vc2UsIHRleHREZWNvcmF0aW9uVGhpY2tuZXNzLCBhdXRv
VGV4dERlY29yYXRpb25UaGlja25lc3MpLAorICAgICAgICAgICAgc3R5bGVUb1VzZS5tZXRyaWNz
T2ZQcmltYXJ5Rm9udCgpLmFzY2VudCgpICsgMi5mLAorICAgICAgICAgICAgd2F2eVN0cm9rZVBh
cmFtZXRlcnMoc3R5bGVUb1VzZS5jb21wdXRlZEZvbnRQaXhlbFNpemUoKSkKICAgICAgICAgfTsK
ICAgICB9OwogCkBAIC01MjQsNyArNTI1LDExIEBAIHZvaWQgVGV4dEJveFBhaW50ZXI8VGV4dEJv
eFBhdGg+OjpwYWludEZvcmVncm91bmREZWNvcmF0aW9ucyhUZXh0RGVjb3JhdGlvblBhaW50CiAg
ICAgYXV0byBkZXZpY2VTY2FsZUZhY3RvciA9IG1fZG9jdW1lbnQuZGV2aWNlU2NhbGVGYWN0b3Io
KTsKICAgICBhdXRvIHRleHREZWNvcmF0aW9uVGhpY2tuZXNzID0gY29tcHV0ZWRUZXh0RGVjb3Jh
dGlvblRoaWNrbmVzcyhzdHlsZVRvVXNlLCBkZXZpY2VTY2FsZUZhY3Rvcik7CiAgICAgYXV0byBs
aW5ldGhyb3VnaENlbnRlciA9IGNvbXB1dGVkTGluZXRocm91Z2hDZW50ZXIoc3R5bGVUb1VzZSwg
dGV4dERlY29yYXRpb25UaGlja25lc3MsIGNvbXB1dGVkQXV0b1RleHREZWNvcmF0aW9uVGhpY2tu
ZXNzKHN0eWxlVG9Vc2UsIGRldmljZVNjYWxlRmFjdG9yKSk7Ci0gICAgZGVjb3JhdGlvblBhaW50
ZXIucGFpbnRGb3JlZ3JvdW5kRGVjb3JhdGlvbnMoeyBzbmFwcGVkU2VsZWN0aW9uUmVjdC5sb2Nh
dGlvbigpLCBzbmFwcGVkU2VsZWN0aW9uUmVjdC53aWR0aCgpLCB0ZXh0RGVjb3JhdGlvblRoaWNr
bmVzcywgbGluZXRocm91Z2hDZW50ZXIgfSwgY29tcHV0ZWRUZXh0RGVjb3JhdGlvblR5cGUsIG1h
cmtlZFRleHQuc3R5bGUudGV4dERlY29yYXRpb25TdHlsZXMpOworICAgIGRlY29yYXRpb25QYWlu
dGVyLnBhaW50Rm9yZWdyb3VuZERlY29yYXRpb25zKHsgc25hcHBlZFNlbGVjdGlvblJlY3QubG9j
YXRpb24oKQorICAgICAgICAsIHNuYXBwZWRTZWxlY3Rpb25SZWN0LndpZHRoKCkKKyAgICAgICAg
LCB0ZXh0RGVjb3JhdGlvblRoaWNrbmVzcworICAgICAgICAsIGxpbmV0aHJvdWdoQ2VudGVyCisg
ICAgICAgICwgd2F2eVN0cm9rZVBhcmFtZXRlcnMoc3R5bGVUb1VzZS5jb21wdXRlZEZvbnRQaXhl
bFNpemUoKSkgfSwgY29tcHV0ZWRUZXh0RGVjb3JhdGlvblR5cGUsIG1hcmtlZFRleHQuc3R5bGUu
dGV4dERlY29yYXRpb25TdHlsZXMpOwogCiAgICAgaWYgKG1faXNDb21iaW5lZFRleHQpCiAgICAg
ICAgIG1fcGFpbnRJbmZvLmNvbnRleHQoKS5jb25jYXRDVE0ocm90YXRpb24obV9wYWludFJlY3Qs
IENvdW50ZXJjbG9ja3dpc2UpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9UZXh0RGVjb3JhdGlvblBhaW50ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Rl
eHREZWNvcmF0aW9uUGFpbnRlci5jcHAKaW5kZXggYTI3YTdiNjFkZWU4Li5lYTY5N2QzYjFlZDgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9UZXh0RGVjb3JhdGlvblBhaW50
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9UZXh0RGVjb3JhdGlvblBhaW50
ZXIuY3BwCkBAIC02NSwxMCArNjUsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgKiAgICAgICAg
ICAgICB8LS0tLS0tLS0tLS18CiAgKiAgICAgICAgICAgICAgICAgc3RlcAogICovCi1zdGF0aWMg
dm9pZCBzdHJva2VXYXZ5VGV4dERlY29yYXRpb24oR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBj
b25zdCBGbG9hdFJlY3QmIHJlY3QsIGZsb2F0IGZvbnRTaXplKQorc3RhdGljIHZvaWQgc3Ryb2tl
V2F2eVRleHREZWNvcmF0aW9uKEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgRmxvYXRS
ZWN0JiByZWN0LCBXYXZ5U3Ryb2tlUGFyYW1ldGVycyB3YXZ5U3Ryb2tlUGFyYW1ldGVycykKIHsK
LSAgICBhdXRvIHdhdnlTdHJva2VQYXJhbWV0ZXJzID0gZ2V0V2F2eVN0cm9rZVBhcmFtZXRlcnMo
Zm9udFNpemUpOwotCiAgICAgRmxvYXRQb2ludCBwMSA9IHJlY3QubWluWE1pbllDb3JuZXIoKTsK
ICAgICBGbG9hdFBvaW50IHAyID0gcmVjdC5tYXhYTWluWUNvcm5lcigpOwogCkBAIC0xOTEsMTQg
KzE4OSwxMyBAQCBib29sIFRleHREZWNvcmF0aW9uUGFpbnRlcjo6U3R5bGVzOjpvcGVyYXRvcj09
KGNvbnN0IFN0eWxlcyYgb3RoZXIpIGNvbnN0CiAgICAgICAgICYmIHVuZGVybGluZS5kZWNvcmF0
aW9uU3R5bGUgPT0gb3RoZXIudW5kZXJsaW5lLmRlY29yYXRpb25TdHlsZSAmJiBvdmVybGluZS5k
ZWNvcmF0aW9uU3R5bGUgPT0gb3RoZXIub3ZlcmxpbmUuZGVjb3JhdGlvblN0eWxlICYmIGxpbmV0
aHJvdWdoLmRlY29yYXRpb25TdHlsZSA9PSBvdGhlci5saW5ldGhyb3VnaC5kZWNvcmF0aW9uU3R5
bGU7CiB9CiAKLVRleHREZWNvcmF0aW9uUGFpbnRlcjo6VGV4dERlY29yYXRpb25QYWludGVyKEdy
YXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgUmVuZGVyU3R5bGUmIHJlbmRlclRleHRTdHls
ZSwgY29uc3QgRm9udENhc2NhZGUmIGZvbnQsIGNvbnN0IFNoYWRvd0RhdGEqIHNoYWRvdywgY29u
c3QgRmlsdGVyT3BlcmF0aW9ucyogY29sb3JGaWx0ZXIsIGJvb2wgaXNQcmludGluZywgYm9vbCBp
c0hvcml6b250YWwpCitUZXh0RGVjb3JhdGlvblBhaW50ZXI6OlRleHREZWNvcmF0aW9uUGFpbnRl
cihHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZvbnRDYXNjYWRlJiBmb250LCBjb25z
dCBTaGFkb3dEYXRhKiBzaGFkb3csIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMqIGNvbG9yRmlsdGVy
LCBib29sIGlzUHJpbnRpbmcsIGJvb2wgaXNIb3Jpem9udGFsKQogICAgIDogbV9jb250ZXh0KGNv
bnRleHQpCiAgICAgLCBtX2lzUHJpbnRpbmcoaXNQcmludGluZykKICAgICAsIG1faXNIb3Jpem9u
dGFsKGlzSG9yaXpvbnRhbCkKICAgICAsIG1fc2hhZG93KHNoYWRvdykKICAgICAsIG1fc2hhZG93
Q29sb3JGaWx0ZXIoY29sb3JGaWx0ZXIpCiAgICAgLCBtX2ZvbnQoZm9udCkKLSAgICAsIG1fcmVu
ZGVyVGV4dFN0eWxlKHJlbmRlclRleHRTdHlsZSkKIHsKIH0KIApAQCAtMjExLDkgKzIwOCw5IEBA
IHZvaWQgVGV4dERlY29yYXRpb25QYWludGVyOjpwYWludEJhY2tncm91bmREZWNvcmF0aW9ucyhj
b25zdCBUZXh0UnVuJiB0ZXh0UnVuLCBjCiAgICAgICAgIGF1dG8gc3Ryb2tlU3R5bGUgPSB0ZXh0
RGVjb3JhdGlvblN0eWxlVG9TdHJva2VTdHlsZShzdHlsZSk7CiAKICAgICAgICAgaWYgKHN0eWxl
ID09IFRleHREZWNvcmF0aW9uU3R5bGU6OldhdnkpCi0gICAgICAgICAgICBzdHJva2VXYXZ5VGV4
dERlY29yYXRpb24obV9jb250ZXh0LCByZWN0LCBtX3JlbmRlclRleHRTdHlsZS5jb21wdXRlZEZv
bnRQaXhlbFNpemUoKSk7CisgICAgICAgICAgICBzdHJva2VXYXZ5VGV4dERlY29yYXRpb24obV9j
b250ZXh0LCByZWN0LCBkZWNvcmF0aW9uR2VvbWV0cnkud2F2eVN0cm9rZVBhcmFtZXRlcnMpOwog
ICAgICAgICBlbHNlIGlmIChkZWNvcmF0aW9uID09IFRleHREZWNvcmF0aW9uTGluZTo6VW5kZXJs
aW5lIHx8IGRlY29yYXRpb24gPT0gVGV4dERlY29yYXRpb25MaW5lOjpPdmVybGluZSkgewotICAg
ICAgICAgICAgaWYgKChtX3JlbmRlclRleHRTdHlsZS50ZXh0RGVjb3JhdGlvblNraXBJbmsoKSA9
PSBUZXh0RGVjb3JhdGlvblNraXBJbms6OkF1dG8gfHwgbV9yZW5kZXJUZXh0U3R5bGUudGV4dERl
Y29yYXRpb25Ta2lwSW5rKCkgPT0gVGV4dERlY29yYXRpb25Ta2lwSW5rOjpBbGwpICYmIG1faXNI
b3Jpem9udGFsKSB7CisgICAgICAgICAgICBpZiAoKGRlY29yYXRpb25TdHlsZS5za2lwSW5rID09
IFRleHREZWNvcmF0aW9uU2tpcEluazo6QXV0byB8fCBkZWNvcmF0aW9uU3R5bGUuc2tpcEluayA9
PSBUZXh0RGVjb3JhdGlvblNraXBJbms6OkFsbCkgJiYgbV9pc0hvcml6b250YWwpIHsKICAgICAg
ICAgICAgICAgICBpZiAoIW1fY29udGV4dC5wYWludGluZ0Rpc2FibGVkKCkpIHsKICAgICAgICAg
ICAgICAgICAgICAgYXV0byB1bmRlcmxpbmVCb3VuZGluZ0JveCA9IG1fY29udGV4dC5jb21wdXRl
VW5kZXJsaW5lQm91bmRzRm9yVGV4dChyZWN0LCBtX2lzUHJpbnRpbmcpOwogICAgICAgICAgICAg
ICAgICAgICBEYXNoQXJyYXkgaW50ZXJzZWN0aW9ucyA9IG1fZm9udC5kYXNoZXNGb3JJbnRlcnNl
Y3Rpb25zV2l0aFJlY3QodGV4dFJ1biwgZGVjb3JhdGlvbkdlb21ldHJ5LnRleHRPcmlnaW4sIHVu
ZGVybGluZUJvdW5kaW5nQm94KTsKQEAgLTIzOCw4ICsyMzUsNyBAQCB2b2lkIFRleHREZWNvcmF0
aW9uUGFpbnRlcjo6cGFpbnRCYWNrZ3JvdW5kRGVjb3JhdGlvbnMoY29uc3QgVGV4dFJ1biYgdGV4
dFJ1biwgYwogICAgIGF1dG8gYm94T3JpZ2luID0gZGVjb3JhdGlvbkdlb21ldHJ5LmJveE9yaWdp
bjsKICAgICBib29sIGNsaXBwaW5nID0gbV9zaGFkb3cgJiYgbV9zaGFkb3ctPm5leHQoKSAmJiAh
YXJlTGluZXNPcGFxdWU7CiAgICAgaWYgKGNsaXBwaW5nKSB7Ci0gICAgICAgIGF1dG8mIGZvbnRN
ZXRyaWNzID0gbV9yZW5kZXJUZXh0U3R5bGUubWV0cmljc09mUHJpbWFyeUZvbnQoKTsKLSAgICAg
ICAgYXV0byBjbGlwUmVjdCA9IEZsb2F0UmVjdCB7IGJveE9yaWdpbiwgRmxvYXRTaXplIHsgZGVj
b3JhdGlvbkdlb21ldHJ5LnRleHRCb3hXaWR0aCwgZm9udE1ldHJpY3MuYXNjZW50KCkgKyAyLmYg
fSB9OworICAgICAgICBhdXRvIGNsaXBSZWN0ID0gRmxvYXRSZWN0IHsgYm94T3JpZ2luLCBGbG9h
dFNpemUgeyBkZWNvcmF0aW9uR2VvbWV0cnkudGV4dEJveFdpZHRoLCBkZWNvcmF0aW9uR2VvbWV0
cnkuY2xpcHBpbmdPZmZzZXQgfSB9OwogICAgICAgICBmb3IgKGNvbnN0IFNoYWRvd0RhdGEqIHNo
YWRvdyA9IG1fc2hhZG93OyBzaGFkb3c7IHNoYWRvdyA9IHNoYWRvdy0+bmV4dCgpKSB7CiAgICAg
ICAgICAgICBhdXRvIHNoYWRvd0V4dGVudCA9IHNoYWRvdy0+cGFpbnRpbmdFeHRlbnQoKTsKICAg
ICAgICAgICAgIGF1dG8gc2hhZG93UmVjdCA9IGNsaXBSZWN0OwpAQCAtMjUyLDcgKzI0OCw3IEBA
IHZvaWQgVGV4dERlY29yYXRpb25QYWludGVyOjpwYWludEJhY2tncm91bmREZWNvcmF0aW9ucyhj
b25zdCBUZXh0UnVuJiB0ZXh0UnVuLCBjCiAgICAgICAgIH0KICAgICAgICAgbV9jb250ZXh0LnNh
dmUoKTsKICAgICAgICAgbV9jb250ZXh0LmNsaXAoY2xpcFJlY3QpOwotICAgICAgICBleHRyYU9m
ZnNldCArPSBmb250TWV0cmljcy5hc2NlbnQoKSArIDI7CisgICAgICAgIGV4dHJhT2Zmc2V0ICs9
IGRlY29yYXRpb25HZW9tZXRyeS5jbGlwcGluZ09mZnNldDsKICAgICAgICAgYm94T3JpZ2luLm1v
dmUoMC5mLCBleHRyYU9mZnNldCk7CiAgICAgfQogCkBAIC0yOTIsNyArMjg4LDcgQEAgdm9pZCBU
ZXh0RGVjb3JhdGlvblBhaW50ZXI6OnBhaW50QmFja2dyb3VuZERlY29yYXRpb25zKGNvbnN0IFRl
eHRSdW4mIHRleHRSdW4sIGMKICAgICAgICAgLy8gV2Ugb25seSB3YW50IHRvIHBhaW50IHRoZSBz
aGFkb3csIGhlbmNlIHRoZSB0cmFuc3BhcmVudCBjb2xvciwgbm90IHRoZSBhY3R1YWwgbGluZS10
aHJvdWdoLAogICAgICAgICAvLyB3aGljaCB3aWxsIGJlIHBhaW50ZWQgaW4gcGFpbnRGb3JlZ3Jv
dW5kRGVjb3JhdGlvbnMoKS4KICAgICAgICAgaWYgKHNoYWRvdyAmJiBkZWNvcmF0aW9uVHlwZS5j
b250YWlucyhUZXh0RGVjb3JhdGlvbkxpbmU6OkxpbmVUaHJvdWdoKSkKLSAgICAgICAgICAgIHBh
aW50TGluZVRocm91Z2goeyBib3hPcmlnaW4sIGRlY29yYXRpb25HZW9tZXRyeS50ZXh0Qm94V2lk
dGgsIGRlY29yYXRpb25HZW9tZXRyeS50ZXh0RGVjb3JhdGlvblRoaWNrbmVzcywgZGVjb3JhdGlv
bkdlb21ldHJ5LmxpbmV0aHJvdWdoQ2VudGVyIH0sIENvbG9yOjp0cmFuc3BhcmVudEJsYWNrLCBk
ZWNvcmF0aW9uU3R5bGUpOworICAgICAgICAgICAgcGFpbnRMaW5lVGhyb3VnaCh7IGJveE9yaWdp
biwgZGVjb3JhdGlvbkdlb21ldHJ5LnRleHRCb3hXaWR0aCwgZGVjb3JhdGlvbkdlb21ldHJ5LnRl
eHREZWNvcmF0aW9uVGhpY2tuZXNzLCBkZWNvcmF0aW9uR2VvbWV0cnkubGluZXRocm91Z2hDZW50
ZXIsIGRlY29yYXRpb25HZW9tZXRyeS53YXZ5U3Ryb2tlUGFyYW1ldGVycyB9LCBDb2xvcjo6dHJh
bnNwYXJlbnRCbGFjaywgZGVjb3JhdGlvblN0eWxlKTsKICAgICB9IHdoaWxlIChzaGFkb3cpOwog
CiAgICAgaWYgKGNsaXBwaW5nKQpAQCAtMzE4LDcgKzMxNCw3IEBAIHZvaWQgVGV4dERlY29yYXRp
b25QYWludGVyOjpwYWludExpbmVUaHJvdWdoKGNvbnN0IEZvcmVncm91bmREZWNvcmF0aW9uR2Vv
bWV0cnkmCiAgICAgYXV0byBzdHJva2VTdHlsZSA9IHRleHREZWNvcmF0aW9uU3R5bGVUb1N0cm9r
ZVN0eWxlKHN0eWxlKTsKIAogICAgIGlmIChzdHlsZSA9PSBUZXh0RGVjb3JhdGlvblN0eWxlOjpX
YXZ5KQotICAgICAgICBzdHJva2VXYXZ5VGV4dERlY29yYXRpb24obV9jb250ZXh0LCByZWN0LCBt
X3JlbmRlclRleHRTdHlsZS5jb21wdXRlZEZvbnRQaXhlbFNpemUoKSk7CisgICAgICAgIHN0cm9r
ZVdhdnlUZXh0RGVjb3JhdGlvbihtX2NvbnRleHQsIHJlY3QsIGZvcmVncm91bmREZWNvcmF0aW9u
R2VvbWV0cnkud2F2eVN0cm9rZVBhcmFtZXRlcnMpOwogICAgIGVsc2UKICAgICAgICAgbV9jb250
ZXh0LmRyYXdMaW5lRm9yVGV4dChyZWN0LCBtX2lzUHJpbnRpbmcsIHN0eWxlID09IFRleHREZWNv
cmF0aW9uU3R5bGU6OkRvdWJsZSwgc3Ryb2tlU3R5bGUpOwogfQpAQCAtMzk0LDYgKzM5MCw3IEBA
IGF1dG8gVGV4dERlY29yYXRpb25QYWludGVyOjpzdHlsZXNGb3JSZW5kZXJlcihjb25zdCBSZW5k
ZXJPYmplY3QmIHJlbmRlcmVyLCBPcHRpCiAgICAgY29sbGVjdFN0eWxlc0ZvclJlbmRlcmVyKHJl
c3VsdCwgcmVuZGVyZXIsIHJlcXVlc3RlZERlY29yYXRpb25zLCBmYWxzZSwgcHNldWRvSWQpOwog
ICAgIGlmIChmaXJzdExpbmVTdHlsZSkKICAgICAgICAgY29sbGVjdFN0eWxlc0ZvclJlbmRlcmVy
KHJlc3VsdCwgcmVuZGVyZXIsIHJlcXVlc3RlZERlY29yYXRpb25zLCB0cnVlLCBwc2V1ZG9JZCk7
CisgICAgcmVzdWx0LnNraXBJbmsgPSByZW5kZXJlci5zdHlsZSgpLnRleHREZWNvcmF0aW9uU2tp
cEluaygpOwogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9UZXh0RGVjb3JhdGlvblBhaW50ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9UZXh0RGVjb3JhdGlvblBhaW50ZXIuaAppbmRleCA0MzQxYjRmYWVjNjguLjY5YzNk
MmY1NjMzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHREZWNvcmF0
aW9uUGFpbnRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9UZXh0RGVjb3JhdGlv
blBhaW50ZXIuaApAQCAtMjQsNiArMjQsNyBAQAogCiAjaW5jbHVkZSAiQ29sb3IuaCIKICNpbmNs
dWRlICJGbG9hdFBvaW50LmgiCisjaW5jbHVkZSAiSW5saW5lVGV4dEJveFN0eWxlLmgiCiAjaW5j
bHVkZSAiUmVuZGVyU3R5bGVDb25zdGFudHMuaCIKICNpbmNsdWRlIDx3dGYvT3B0aW9uU2V0Lmg+
CiAKQEAgLTM5LDcgKzQwLDcgQEAgY2xhc3MgVGV4dFJ1bjsKICAgICAKIGNsYXNzIFRleHREZWNv
cmF0aW9uUGFpbnRlciB7CiBwdWJsaWM6Ci0gICAgVGV4dERlY29yYXRpb25QYWludGVyKEdyYXBo
aWNzQ29udGV4dCYsIGNvbnN0IFJlbmRlclN0eWxlJiwgY29uc3QgRm9udENhc2NhZGUmLCBjb25z
dCBTaGFkb3dEYXRhKiwgY29uc3QgRmlsdGVyT3BlcmF0aW9ucyosIGJvb2wgaXNQcmludGluZywg
Ym9vbCBpc0hvcml6b250YWwpOworICAgIFRleHREZWNvcmF0aW9uUGFpbnRlcihHcmFwaGljc0Nv
bnRleHQmLCBjb25zdCBGb250Q2FzY2FkZSYsIGNvbnN0IFNoYWRvd0RhdGEqLCBjb25zdCBGaWx0
ZXJPcGVyYXRpb25zKiwgYm9vbCBpc1ByaW50aW5nLCBib29sIGlzSG9yaXpvbnRhbCk7CiAKICAg
ICBzdHJ1Y3QgU3R5bGVzIHsKICAgICAgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IFN0eWxlcyYp
IGNvbnN0OwpAQCAtNDcsMTEgKzQ4LDEzIEBAIHB1YmxpYzoKIAogICAgICAgICBzdHJ1Y3QgRGVj
b3JhdGlvblN0eWxlQW5kQ29sb3IgewogICAgICAgICAgICAgQ29sb3IgY29sb3I7Ci0gICAgICAg
ICAgICBUZXh0RGVjb3JhdGlvblN0eWxlIGRlY29yYXRpb25TdHlsZTsKKyAgICAgICAgICAgIFRl
eHREZWNvcmF0aW9uU3R5bGUgZGVjb3JhdGlvblN0eWxlIHsgVGV4dERlY29yYXRpb25TdHlsZTo6
U29saWQgfTsKICAgICAgICAgfTsKICAgICAgICAgRGVjb3JhdGlvblN0eWxlQW5kQ29sb3IgdW5k
ZXJsaW5lOwogICAgICAgICBEZWNvcmF0aW9uU3R5bGVBbmRDb2xvciBvdmVybGluZTsKICAgICAg
ICAgRGVjb3JhdGlvblN0eWxlQW5kQ29sb3IgbGluZXRocm91Z2g7CisKKyAgICAgICAgVGV4dERl
Y29yYXRpb25Ta2lwSW5rIHNraXBJbmsgeyBUZXh0RGVjb3JhdGlvblNraXBJbms6Ok5vbmUgfTsK
ICAgICB9OwogICAgIHN0cnVjdCBCYWNrZ3JvdW5kRGVjb3JhdGlvbkdlb21ldHJ5IHsKICAgICAg
ICAgRmxvYXRQb2ludCB0ZXh0T3JpZ2luOwpAQCAtNjEsNiArNjQsOCBAQCBwdWJsaWM6CiAgICAg
ICAgIGZsb2F0IHVuZGVybGluZU9mZnNldCB7IDAuZiB9OwogICAgICAgICBmbG9hdCBvdmVybGlu
ZU9mZnNldCB7IDAuZiB9OwogICAgICAgICBmbG9hdCBsaW5ldGhyb3VnaENlbnRlciB7IDAuZiB9
OworICAgICAgICBmbG9hdCBjbGlwcGluZ09mZnNldCB7IDAuZiB9OworICAgICAgICBXYXZ5U3Ry
b2tlUGFyYW1ldGVycyB3YXZ5U3Ryb2tlUGFyYW1ldGVyczsKICAgICB9OwogICAgIHZvaWQgcGFp
bnRCYWNrZ3JvdW5kRGVjb3JhdGlvbnMoY29uc3QgVGV4dFJ1biYsIGNvbnN0IEJhY2tncm91bmRE
ZWNvcmF0aW9uR2VvbWV0cnkmLCBPcHRpb25TZXQ8VGV4dERlY29yYXRpb25MaW5lPiwgY29uc3Qg
U3R5bGVzJik7CiAKQEAgLTY5LDYgKzc0LDcgQEAgcHVibGljOgogICAgICAgICBmbG9hdCB0ZXh0
Qm94V2lkdGggeyAwLmYgfTsKICAgICAgICAgZmxvYXQgdGV4dERlY29yYXRpb25UaGlja25lc3Mg
eyAwLmYgfTsKICAgICAgICAgZmxvYXQgbGluZXRocm91Z2hDZW50ZXIgeyAwLmYgfTsKKyAgICAg
ICAgV2F2eVN0cm9rZVBhcmFtZXRlcnMgd2F2eVN0cm9rZVBhcmFtZXRlcnM7CiAgICAgfTsKICAg
ICB2b2lkIHBhaW50Rm9yZWdyb3VuZERlY29yYXRpb25zKGNvbnN0IEZvcmVncm91bmREZWNvcmF0
aW9uR2VvbWV0cnkmLCBPcHRpb25TZXQ8VGV4dERlY29yYXRpb25MaW5lPiwgY29uc3QgU3R5bGVz
Jik7CiAKQEAgLTg1LDggKzkxLDYgQEAgcHJpdmF0ZToKICAgICBjb25zdCBTaGFkb3dEYXRhKiBt
X3NoYWRvdyB7IG51bGxwdHIgfTsKICAgICBjb25zdCBGaWx0ZXJPcGVyYXRpb25zKiBtX3NoYWRv
d0NvbG9yRmlsdGVyIHsgbnVsbHB0ciB9OwogICAgIGNvbnN0IEZvbnRDYXNjYWRlJiBtX2ZvbnQ7
Ci0KLSAgICBjb25zdCBSZW5kZXJTdHlsZSYgbV9yZW5kZXJUZXh0U3R5bGU7CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Jbmxp
bmVUZXh0Qm94U3R5bGUuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvSW5saW5lVGV4dEJveFN0
eWxlLmNwcAppbmRleCAzYjAwOWIzMWU0MTkuLjAwMjc3ODI3NmY5MCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvc3R5bGUvSW5saW5lVGV4dEJveFN0eWxlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9JbmxpbmVUZXh0Qm94U3R5bGUuY3BwCkBAIC0xODYsNyArMTg2LDcgQEAgc3Rh
dGljIGZsb2F0IGNvbXB1dGVkVW5kZXJsaW5lT2Zmc2V0KGNvbnN0IFVuZGVybGluZU9mZnNldEFy
Z3VtZW50cyYgY29udGV4dCkKICAgICByZXR1cm4gY29tcHV0ZWRVbmRlcmxpbmVPZmZzZXQ7CiB9
CiAKLVdhdnlTdHJva2VQYXJhbWV0ZXJzIGdldFdhdnlTdHJva2VQYXJhbWV0ZXJzKGZsb2F0IGZv
bnRTaXplKQorV2F2eVN0cm9rZVBhcmFtZXRlcnMgd2F2eVN0cm9rZVBhcmFtZXRlcnMoZmxvYXQg
Zm9udFNpemUpCiB7CiAgICAgV2F2eVN0cm9rZVBhcmFtZXRlcnMgcmVzdWx0OwogICAgIC8vIE1v
cmUgaW5mb3JtYXRpb24gaXMgaW4gdGhlIFdhdnlTdHJva2VQYXJhbWV0ZXJzIGRlZmluaXRpb24u
CkBAIC0yMTQsNyArMjE0LDcgQEAgc3RhdGljIEdseXBoT3ZlcmZsb3cgY29tcHV0ZWRWaXN1YWxP
dmVyZmxvd0ZvckRlY29yYXRpb25zKGNvbnN0IFJlbmRlclN0eWxlJiBsaW4KICAgICBHbHlwaE92
ZXJmbG93IG92ZXJmbG93UmVzdWx0OwogCiAgICAgaWYgKGRlY29yYXRpb25TdHlsZSA9PSBUZXh0
RGVjb3JhdGlvblN0eWxlOjpXYXZ5KSB7Ci0gICAgICAgIHdhdnlTdHJva2VQYXJhbWV0ZXJzID0g
Z2V0V2F2eVN0cm9rZVBhcmFtZXRlcnMobGluZVN0eWxlLmNvbXB1dGVkRm9udFBpeGVsU2l6ZSgp
KTsKKyAgICAgICAgd2F2eVN0cm9rZVBhcmFtZXRlcnMgPSBXZWJDb3JlOjp3YXZ5U3Ryb2tlUGFy
YW1ldGVycyhsaW5lU3R5bGUuY29tcHV0ZWRGb250UGl4ZWxTaXplKCkpOwogICAgICAgICB3YXZ5
T2Zmc2V0ID0gd2F2eU9mZnNldEZyb21EZWNvcmF0aW9uKCk7CiAgICAgICAgIG92ZXJmbG93UmVz
dWx0LmxlZnQgPSBzdHJva2VUaGlja25lc3M7CiAgICAgICAgIG92ZXJmbG93UmVzdWx0LnJpZ2h0
ID0gc3Ryb2tlVGhpY2tuZXNzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvSW5s
aW5lVGV4dEJveFN0eWxlLmggYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9JbmxpbmVUZXh0Qm94U3R5
bGUuaAppbmRleCBkNjI2Y2M1NzA3YTcuLjczZTFlOGM1YTA1MiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvc3R5bGUvSW5saW5lVGV4dEJveFN0eWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
c3R5bGUvSW5saW5lVGV4dEJveFN0eWxlLmgKQEAgLTUzLDcgKzUzLDcgQEAgc3RydWN0IFdhdnlT
dHJva2VQYXJhbWV0ZXJzIHsKICAgICAvLyB3aWRlciBhcyBmb250IHNpemUgaW5jcmVhc2VzLgog
ICAgIGZsb2F0IHN0ZXAgeyAwLmYgfTsKIH07Ci1XYXZ5U3Ryb2tlUGFyYW1ldGVycyBnZXRXYXZ5
U3Ryb2tlUGFyYW1ldGVycyhmbG9hdCBmb250U2l6ZSk7CitXYXZ5U3Ryb2tlUGFyYW1ldGVycyB3
YXZ5U3Ryb2tlUGFyYW1ldGVycyhmbG9hdCBmb250U2l6ZSk7CiAKIHN0cnVjdCBUZXh0VW5kZXJs
aW5lUG9zaXRpb25VbmRlciB7CiAgICAgZmxvYXQgdGV4dFJ1bkxvZ2ljYWxIZWlnaHQgeyAwLmYg
fTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>461542</attachid>
            <date>2022-08-11 07:07:55 -0700</date>
            <delta_ts>2022-08-11 16:11:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-243765-20220811070754.patch</filename>
            <type>text/plain</type>
            <size>14110</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSBlMjJiYmJhYWMyMjgwMmU0ZmEyOWNlYjU4NTk4MDgzODMwMTliYzcwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJ1anRhcyA8emFsYW5AYXBwbGUuY29tPgpEYXRlOiBU
aHUsIDExIEF1ZyAyMDIyIDA3OjA2OjQwIC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gW1BhaW50aW5n
XSBUZXh0RGVjb3JhdGlvblBhaW50ZXIgc2hvdWxkIG5vdCB0YWtlIFJlbmRlclN0eWxlCiBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQzNzY1CgpSZXZpZXdlZCBieSBB
bnR0aSBLb2l2aXN0by4KClRoaXMgZW5hYmxlcyB1cyB0byByZXVzZSB0aGUgVGV4dERlY29yYXRp
b25QYWludGVyIG9iamVjdCB3aGVuIHdlIG5lZWQgdG8gcGFpbnQgbXVsdGlwbGUgaW5saW5lIGJv
eCBkZWNvcmF0aW9ucyBmb3IgYSBnaXZlbiB0ZXh0IGJveC4KCiogU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1RleHRCb3hQYWludGVyLmNwcDoKKFdlYkNvcmU6OlRleHRCb3hQYWludGVyPFRleHRC
b3hQYXRoPjo6Y3JlYXRlRGVjb3JhdGlvblBhaW50ZXIpOgooV2ViQ29yZTo6VGV4dEJveFBhaW50
ZXI8VGV4dEJveFBhdGg+OjpwYWludEJhY2tncm91bmREZWNvcmF0aW9ucyk6CihXZWJDb3JlOjpU
ZXh0Qm94UGFpbnRlcjxUZXh0Qm94UGF0aD46OnBhaW50Rm9yZWdyb3VuZERlY29yYXRpb25zKToK
KiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvVGV4dERlY29yYXRpb25QYWludGVyLmNwcDoKKFdl
YkNvcmU6OnN0cm9rZVdhdnlUZXh0RGVjb3JhdGlvbik6CihXZWJDb3JlOjpUZXh0RGVjb3JhdGlv
blBhaW50ZXI6OlRleHREZWNvcmF0aW9uUGFpbnRlcik6CihXZWJDb3JlOjpUZXh0RGVjb3JhdGlv
blBhaW50ZXI6OnBhaW50QmFja2dyb3VuZERlY29yYXRpb25zKToKKFdlYkNvcmU6OlRleHREZWNv
cmF0aW9uUGFpbnRlcjo6cGFpbnRMaW5lVGhyb3VnaCk6CihXZWJDb3JlOjpUZXh0RGVjb3JhdGlv
blBhaW50ZXI6OnN0eWxlc0ZvclJlbmRlcmVyKToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
VGV4dERlY29yYXRpb25QYWludGVyLmg6CiogU291cmNlL1dlYkNvcmUvc3R5bGUvSW5saW5lVGV4
dEJveFN0eWxlLmNwcDoKKFdlYkNvcmU6OndhdnlTdHJva2VQYXJhbWV0ZXJzKToKKFdlYkNvcmU6
OmNvbXB1dGVkVmlzdWFsT3ZlcmZsb3dGb3JEZWNvcmF0aW9ucyk6CihXZWJDb3JlOjpnZXRXYXZ5
U3Ryb2tlUGFyYW1ldGVycyk6IERlbGV0ZWQuCiogU291cmNlL1dlYkNvcmUvc3R5bGUvSW5saW5l
VGV4dEJveFN0eWxlLmg6Ci0tLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHRCb3hQYWlu
dGVyLmNwcCAgIHwgMTMgKysrKysrKystLS0tCiAuLi4vcmVuZGVyaW5nL1RleHREZWNvcmF0aW9u
UGFpbnRlci5jcHAgICAgICAgfCAyMSArKysrKysrKy0tLS0tLS0tLS0tCiAuLi4vV2ViQ29yZS9y
ZW5kZXJpbmcvVGV4dERlY29yYXRpb25QYWludGVyLmggfCAxMiArKysrKysrLS0tLQogU291cmNl
L1dlYkNvcmUvc3R5bGUvSW5saW5lVGV4dEJveFN0eWxlLmNwcCAgIHwgIDQgKystLQogU291cmNl
L1dlYkNvcmUvc3R5bGUvSW5saW5lVGV4dEJveFN0eWxlLmggICAgIHwgIDIgKy0KIDUgZmlsZXMg
Y2hhbmdlZCwgMjkgaW5zZXJ0aW9ucygrKSwgMjMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHRCb3hQYWludGVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9UZXh0Qm94UGFpbnRlci5jcHAKaW5kZXggMGRjMDJmNGQyMDViLi44NTRh
YmZhZDVmNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9UZXh0Qm94UGFp
bnRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHRCb3hQYWludGVyLmNw
cApAQCAtNDM2LDggKzQzNiw3IEBAIFRleHREZWNvcmF0aW9uUGFpbnRlciBUZXh0Qm94UGFpbnRl
cjxUZXh0Qm94UGF0aD46OmNyZWF0ZURlY29yYXRpb25QYWludGVyKGNvbnN0CiAgICAgLy8gQ3Jl
YXRlIHBhaW50ZXIKICAgICBhdXRvKiBzaGFkb3cgPSBtYXJrZWRUZXh0LnN0eWxlLnRleHRTaGFk
b3cgPyAmbWFya2VkVGV4dC5zdHlsZS50ZXh0U2hhZG93LnZhbHVlKCkgOiBudWxscHRyOwogICAg
IGF1dG8qIGNvbG9yRmlsdGVyID0gbWFya2VkVGV4dC5zdHlsZS50ZXh0U2hhZG93ICYmIG1fc3R5
bGUuaGFzQXBwbGVDb2xvckZpbHRlcigpID8gJm1fc3R5bGUuYXBwbGVDb2xvckZpbHRlcigpIDog
bnVsbHB0cjsKLSAgICBhdXRvJiBzdHlsZVRvVXNlID0gbV9pc0ZpcnN0TGluZSA/IG1fcmVuZGVy
ZXIuZmlyc3RMaW5lU3R5bGUoKSA6IG1fcmVuZGVyZXIuc3R5bGUoKTsKLSAgICByZXR1cm4geyBj
b250ZXh0LCBzdHlsZVRvVXNlLCBmb250Q2FzY2FkZSgpLCBzaGFkb3csIGNvbG9yRmlsdGVyLCBt
X2RvY3VtZW50LnByaW50aW5nKCksIG1fcmVuZGVyZXIuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUo
KSB9OworICAgIHJldHVybiB7IGNvbnRleHQsIGZvbnRDYXNjYWRlKCksIHNoYWRvdywgY29sb3JG
aWx0ZXIsIG1fZG9jdW1lbnQucHJpbnRpbmcoKSwgbV9yZW5kZXJlci5pc0hvcml6b250YWxXcml0
aW5nTW9kZSgpIH07CiB9CiAKIHN0YXRpYyBpbmxpbmUgZmxvYXQgY29tcHV0ZWRUZXh0RGVjb3Jh
dGlvblRoaWNrbmVzcyhjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGVUb1VzZSwgZmxvYXQgZGV2aWNl
U2NhbGVGYWN0b3IpCkBAIC00OTUsNyArNDk0LDkgQEAgdm9pZCBUZXh0Qm94UGFpbnRlcjxUZXh0
Qm94UGF0aD46OnBhaW50QmFja2dyb3VuZERlY29yYXRpb25zKFRleHREZWNvcmF0aW9uUGFpbnQK
ICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uVGhpY2tuZXNzLAogICAgICAgICAgICAgdW5kZXJs
aW5lT2Zmc2V0KCksCiAgICAgICAgICAgICBvdmVybGluZU9mZnNldCgpLAotICAgICAgICAgICAg
Y29tcHV0ZWRMaW5ldGhyb3VnaENlbnRlcihzdHlsZVRvVXNlLCB0ZXh0RGVjb3JhdGlvblRoaWNr
bmVzcywgYXV0b1RleHREZWNvcmF0aW9uVGhpY2tuZXNzKQorICAgICAgICAgICAgY29tcHV0ZWRM
aW5ldGhyb3VnaENlbnRlcihzdHlsZVRvVXNlLCB0ZXh0RGVjb3JhdGlvblRoaWNrbmVzcywgYXV0
b1RleHREZWNvcmF0aW9uVGhpY2tuZXNzKSwKKyAgICAgICAgICAgIHN0eWxlVG9Vc2UubWV0cmlj
c09mUHJpbWFyeUZvbnQoKS5hc2NlbnQoKSArIDIuZiwKKyAgICAgICAgICAgIHdhdnlTdHJva2VQ
YXJhbWV0ZXJzKHN0eWxlVG9Vc2UuY29tcHV0ZWRGb250UGl4ZWxTaXplKCkpCiAgICAgICAgIH07
CiAgICAgfTsKIApAQCAtNTI0LDcgKzUyNSwxMSBAQCB2b2lkIFRleHRCb3hQYWludGVyPFRleHRC
b3hQYXRoPjo6cGFpbnRGb3JlZ3JvdW5kRGVjb3JhdGlvbnMoVGV4dERlY29yYXRpb25QYWludAog
ICAgIGF1dG8gZGV2aWNlU2NhbGVGYWN0b3IgPSBtX2RvY3VtZW50LmRldmljZVNjYWxlRmFjdG9y
KCk7CiAgICAgYXV0byB0ZXh0RGVjb3JhdGlvblRoaWNrbmVzcyA9IGNvbXB1dGVkVGV4dERlY29y
YXRpb25UaGlja25lc3Moc3R5bGVUb1VzZSwgZGV2aWNlU2NhbGVGYWN0b3IpOwogICAgIGF1dG8g
bGluZXRocm91Z2hDZW50ZXIgPSBjb21wdXRlZExpbmV0aHJvdWdoQ2VudGVyKHN0eWxlVG9Vc2Us
IHRleHREZWNvcmF0aW9uVGhpY2tuZXNzLCBjb21wdXRlZEF1dG9UZXh0RGVjb3JhdGlvblRoaWNr
bmVzcyhzdHlsZVRvVXNlLCBkZXZpY2VTY2FsZUZhY3RvcikpOwotICAgIGRlY29yYXRpb25QYWlu
dGVyLnBhaW50Rm9yZWdyb3VuZERlY29yYXRpb25zKHsgc25hcHBlZFNlbGVjdGlvblJlY3QubG9j
YXRpb24oKSwgc25hcHBlZFNlbGVjdGlvblJlY3Qud2lkdGgoKSwgdGV4dERlY29yYXRpb25UaGlj
a25lc3MsIGxpbmV0aHJvdWdoQ2VudGVyIH0sIG1hcmtlZFRleHQuc3R5bGUudGV4dERlY29yYXRp
b25TdHlsZXMpOworICAgIGRlY29yYXRpb25QYWludGVyLnBhaW50Rm9yZWdyb3VuZERlY29yYXRp
b25zKHsgc25hcHBlZFNlbGVjdGlvblJlY3QubG9jYXRpb24oKQorICAgICAgICAsIHNuYXBwZWRT
ZWxlY3Rpb25SZWN0LndpZHRoKCkKKyAgICAgICAgLCB0ZXh0RGVjb3JhdGlvblRoaWNrbmVzcwor
ICAgICAgICAsIGxpbmV0aHJvdWdoQ2VudGVyCisgICAgICAgICwgd2F2eVN0cm9rZVBhcmFtZXRl
cnMoc3R5bGVUb1VzZS5jb21wdXRlZEZvbnRQaXhlbFNpemUoKSkgfSwgbWFya2VkVGV4dC5zdHls
ZS50ZXh0RGVjb3JhdGlvblN0eWxlcyk7CiAKICAgICBpZiAobV9pc0NvbWJpbmVkVGV4dCkKICAg
ICAgICAgbV9wYWludEluZm8uY29udGV4dCgpLmNvbmNhdENUTShyb3RhdGlvbihtX3BhaW50UmVj
dCwgQ291bnRlcmNsb2Nrd2lzZSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1RleHREZWNvcmF0aW9uUGFpbnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
VGV4dERlY29yYXRpb25QYWludGVyLmNwcAppbmRleCBhOWUxYmFiMDM4NWYuLmNkYzYxYzlhODRj
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHREZWNvcmF0aW9uUGFp
bnRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHREZWNvcmF0aW9uUGFp
bnRlci5jcHAKQEAgLTY1LDEwICs2NSw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAqICAgICAg
ICAgICAgIHwtLS0tLS0tLS0tLXwKICAqICAgICAgICAgICAgICAgICBzdGVwCiAgKi8KLXN0YXRp
YyB2b2lkIHN0cm9rZVdhdnlUZXh0RGVjb3JhdGlvbihHcmFwaGljc0NvbnRleHQmIGNvbnRleHQs
IGNvbnN0IEZsb2F0UmVjdCYgcmVjdCwgZmxvYXQgZm9udFNpemUpCitzdGF0aWMgdm9pZCBzdHJv
a2VXYXZ5VGV4dERlY29yYXRpb24oR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBGbG9h
dFJlY3QmIHJlY3QsIFdhdnlTdHJva2VQYXJhbWV0ZXJzIHdhdnlTdHJva2VQYXJhbWV0ZXJzKQog
ewotICAgIGF1dG8gd2F2eVN0cm9rZVBhcmFtZXRlcnMgPSBnZXRXYXZ5U3Ryb2tlUGFyYW1ldGVy
cyhmb250U2l6ZSk7Ci0KICAgICBGbG9hdFBvaW50IHAxID0gcmVjdC5taW5YTWluWUNvcm5lcigp
OwogICAgIEZsb2F0UG9pbnQgcDIgPSByZWN0Lm1heFhNaW5ZQ29ybmVyKCk7CiAKQEAgLTE5MSwx
NCArMTg5LDEzIEBAIGJvb2wgVGV4dERlY29yYXRpb25QYWludGVyOjpTdHlsZXM6Om9wZXJhdG9y
PT0oY29uc3QgU3R5bGVzJiBvdGhlcikgY29uc3QKICAgICAgICAgJiYgdW5kZXJsaW5lLmRlY29y
YXRpb25TdHlsZSA9PSBvdGhlci51bmRlcmxpbmUuZGVjb3JhdGlvblN0eWxlICYmIG92ZXJsaW5l
LmRlY29yYXRpb25TdHlsZSA9PSBvdGhlci5vdmVybGluZS5kZWNvcmF0aW9uU3R5bGUgJiYgbGlu
ZXRocm91Z2guZGVjb3JhdGlvblN0eWxlID09IG90aGVyLmxpbmV0aHJvdWdoLmRlY29yYXRpb25T
dHlsZTsKIH0KIAotVGV4dERlY29yYXRpb25QYWludGVyOjpUZXh0RGVjb3JhdGlvblBhaW50ZXIo
R3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBSZW5kZXJTdHlsZSYgcmVuZGVyVGV4dFN0
eWxlLCBjb25zdCBGb250Q2FzY2FkZSYgZm9udCwgY29uc3QgU2hhZG93RGF0YSogc2hhZG93LCBj
b25zdCBGaWx0ZXJPcGVyYXRpb25zKiBjb2xvckZpbHRlciwgYm9vbCBpc1ByaW50aW5nLCBib29s
IGlzSG9yaXpvbnRhbCkKK1RleHREZWNvcmF0aW9uUGFpbnRlcjo6VGV4dERlY29yYXRpb25QYWlu
dGVyKEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgRm9udENhc2NhZGUmIGZvbnQsIGNv
bnN0IFNoYWRvd0RhdGEqIHNoYWRvdywgY29uc3QgRmlsdGVyT3BlcmF0aW9ucyogY29sb3JGaWx0
ZXIsIGJvb2wgaXNQcmludGluZywgYm9vbCBpc0hvcml6b250YWwpCiAgICAgOiBtX2NvbnRleHQo
Y29udGV4dCkKICAgICAsIG1faXNQcmludGluZyhpc1ByaW50aW5nKQogICAgICwgbV9pc0hvcml6
b250YWwoaXNIb3Jpem9udGFsKQogICAgICwgbV9zaGFkb3coc2hhZG93KQogICAgICwgbV9zaGFk
b3dDb2xvckZpbHRlcihjb2xvckZpbHRlcikKICAgICAsIG1fZm9udChmb250KQotICAgICwgbV9y
ZW5kZXJUZXh0U3R5bGUocmVuZGVyVGV4dFN0eWxlKQogewogfQogCkBAIC0yMTEsOSArMjA4LDkg
QEAgdm9pZCBUZXh0RGVjb3JhdGlvblBhaW50ZXI6OnBhaW50QmFja2dyb3VuZERlY29yYXRpb25z
KGNvbnN0IFRleHRSdW4mIHRleHRSdW4sIGMKICAgICAgICAgYXV0byBzdHJva2VTdHlsZSA9IHRl
eHREZWNvcmF0aW9uU3R5bGVUb1N0cm9rZVN0eWxlKHN0eWxlKTsKIAogICAgICAgICBpZiAoc3R5
bGUgPT0gVGV4dERlY29yYXRpb25TdHlsZTo6V2F2eSkKLSAgICAgICAgICAgIHN0cm9rZVdhdnlU
ZXh0RGVjb3JhdGlvbihtX2NvbnRleHQsIHJlY3QsIG1fcmVuZGVyVGV4dFN0eWxlLmNvbXB1dGVk
Rm9udFBpeGVsU2l6ZSgpKTsKKyAgICAgICAgICAgIHN0cm9rZVdhdnlUZXh0RGVjb3JhdGlvbiht
X2NvbnRleHQsIHJlY3QsIGRlY29yYXRpb25HZW9tZXRyeS53YXZ5U3Ryb2tlUGFyYW1ldGVycyk7
CiAgICAgICAgIGVsc2UgaWYgKGRlY29yYXRpb24gPT0gVGV4dERlY29yYXRpb25MaW5lOjpVbmRl
cmxpbmUgfHwgZGVjb3JhdGlvbiA9PSBUZXh0RGVjb3JhdGlvbkxpbmU6Ok92ZXJsaW5lKSB7Ci0g
ICAgICAgICAgICBpZiAoKG1fcmVuZGVyVGV4dFN0eWxlLnRleHREZWNvcmF0aW9uU2tpcEluaygp
ID09IFRleHREZWNvcmF0aW9uU2tpcEluazo6QXV0byB8fCBtX3JlbmRlclRleHRTdHlsZS50ZXh0
RGVjb3JhdGlvblNraXBJbmsoKSA9PSBUZXh0RGVjb3JhdGlvblNraXBJbms6OkFsbCkgJiYgbV9p
c0hvcml6b250YWwpIHsKKyAgICAgICAgICAgIGlmICgoZGVjb3JhdGlvblN0eWxlLnNraXBJbmsg
PT0gVGV4dERlY29yYXRpb25Ta2lwSW5rOjpBdXRvIHx8IGRlY29yYXRpb25TdHlsZS5za2lwSW5r
ID09IFRleHREZWNvcmF0aW9uU2tpcEluazo6QWxsKSAmJiBtX2lzSG9yaXpvbnRhbCkgewogICAg
ICAgICAgICAgICAgIGlmICghbV9jb250ZXh0LnBhaW50aW5nRGlzYWJsZWQoKSkgewogICAgICAg
ICAgICAgICAgICAgICBhdXRvIHVuZGVybGluZUJvdW5kaW5nQm94ID0gbV9jb250ZXh0LmNvbXB1
dGVVbmRlcmxpbmVCb3VuZHNGb3JUZXh0KHJlY3QsIG1faXNQcmludGluZyk7CiAgICAgICAgICAg
ICAgICAgICAgIERhc2hBcnJheSBpbnRlcnNlY3Rpb25zID0gbV9mb250LmRhc2hlc0ZvckludGVy
c2VjdGlvbnNXaXRoUmVjdCh0ZXh0UnVuLCBkZWNvcmF0aW9uR2VvbWV0cnkudGV4dE9yaWdpbiwg
dW5kZXJsaW5lQm91bmRpbmdCb3gpOwpAQCAtMjM4LDggKzIzNSw3IEBAIHZvaWQgVGV4dERlY29y
YXRpb25QYWludGVyOjpwYWludEJhY2tncm91bmREZWNvcmF0aW9ucyhjb25zdCBUZXh0UnVuJiB0
ZXh0UnVuLCBjCiAgICAgYXV0byBib3hPcmlnaW4gPSBkZWNvcmF0aW9uR2VvbWV0cnkuYm94T3Jp
Z2luOwogICAgIGJvb2wgY2xpcHBpbmcgPSBtX3NoYWRvdyAmJiBtX3NoYWRvdy0+bmV4dCgpICYm
ICFhcmVMaW5lc09wYXF1ZTsKICAgICBpZiAoY2xpcHBpbmcpIHsKLSAgICAgICAgYXV0byYgZm9u
dE1ldHJpY3MgPSBtX3JlbmRlclRleHRTdHlsZS5tZXRyaWNzT2ZQcmltYXJ5Rm9udCgpOwotICAg
ICAgICBhdXRvIGNsaXBSZWN0ID0gRmxvYXRSZWN0IHsgYm94T3JpZ2luLCBGbG9hdFNpemUgeyBk
ZWNvcmF0aW9uR2VvbWV0cnkudGV4dEJveFdpZHRoLCBmb250TWV0cmljcy5hc2NlbnQoKSArIDIu
ZiB9IH07CisgICAgICAgIGF1dG8gY2xpcFJlY3QgPSBGbG9hdFJlY3QgeyBib3hPcmlnaW4sIEZs
b2F0U2l6ZSB7IGRlY29yYXRpb25HZW9tZXRyeS50ZXh0Qm94V2lkdGgsIGRlY29yYXRpb25HZW9t
ZXRyeS5jbGlwcGluZ09mZnNldCB9IH07CiAgICAgICAgIGZvciAoY29uc3QgU2hhZG93RGF0YSog
c2hhZG93ID0gbV9zaGFkb3c7IHNoYWRvdzsgc2hhZG93ID0gc2hhZG93LT5uZXh0KCkpIHsKICAg
ICAgICAgICAgIGF1dG8gc2hhZG93RXh0ZW50ID0gc2hhZG93LT5wYWludGluZ0V4dGVudCgpOwog
ICAgICAgICAgICAgYXV0byBzaGFkb3dSZWN0ID0gY2xpcFJlY3Q7CkBAIC0yNTIsNyArMjQ4LDcg
QEAgdm9pZCBUZXh0RGVjb3JhdGlvblBhaW50ZXI6OnBhaW50QmFja2dyb3VuZERlY29yYXRpb25z
KGNvbnN0IFRleHRSdW4mIHRleHRSdW4sIGMKICAgICAgICAgfQogICAgICAgICBtX2NvbnRleHQu
c2F2ZSgpOwogICAgICAgICBtX2NvbnRleHQuY2xpcChjbGlwUmVjdCk7Ci0gICAgICAgIGV4dHJh
T2Zmc2V0ICs9IGZvbnRNZXRyaWNzLmFzY2VudCgpICsgMjsKKyAgICAgICAgZXh0cmFPZmZzZXQg
Kz0gZGVjb3JhdGlvbkdlb21ldHJ5LmNsaXBwaW5nT2Zmc2V0OwogICAgICAgICBib3hPcmlnaW4u
bW92ZSgwLmYsIGV4dHJhT2Zmc2V0KTsKICAgICB9CiAKQEAgLTI5Miw3ICsyODgsNyBAQCB2b2lk
IFRleHREZWNvcmF0aW9uUGFpbnRlcjo6cGFpbnRCYWNrZ3JvdW5kRGVjb3JhdGlvbnMoY29uc3Qg
VGV4dFJ1biYgdGV4dFJ1biwgYwogICAgICAgICAvLyBXZSBvbmx5IHdhbnQgdG8gcGFpbnQgdGhl
IHNoYWRvdywgaGVuY2UgdGhlIHRyYW5zcGFyZW50IGNvbG9yLCBub3QgdGhlIGFjdHVhbCBsaW5l
LXRocm91Z2gsCiAgICAgICAgIC8vIHdoaWNoIHdpbGwgYmUgcGFpbnRlZCBpbiBwYWludEZvcmVn
cm91bmREZWNvcmF0aW9ucygpLgogICAgICAgICBpZiAoc2hhZG93ICYmIGRlY29yYXRpb25UeXBl
LmNvbnRhaW5zKFRleHREZWNvcmF0aW9uTGluZTo6TGluZVRocm91Z2gpKQotICAgICAgICAgICAg
cGFpbnRMaW5lVGhyb3VnaCh7IGJveE9yaWdpbiwgZGVjb3JhdGlvbkdlb21ldHJ5LnRleHRCb3hX
aWR0aCwgZGVjb3JhdGlvbkdlb21ldHJ5LnRleHREZWNvcmF0aW9uVGhpY2tuZXNzLCBkZWNvcmF0
aW9uR2VvbWV0cnkubGluZXRocm91Z2hDZW50ZXIgfSwgQ29sb3I6OnRyYW5zcGFyZW50QmxhY2ss
IGRlY29yYXRpb25TdHlsZSk7CisgICAgICAgICAgICBwYWludExpbmVUaHJvdWdoKHsgYm94T3Jp
Z2luLCBkZWNvcmF0aW9uR2VvbWV0cnkudGV4dEJveFdpZHRoLCBkZWNvcmF0aW9uR2VvbWV0cnku
dGV4dERlY29yYXRpb25UaGlja25lc3MsIGRlY29yYXRpb25HZW9tZXRyeS5saW5ldGhyb3VnaENl
bnRlciwgZGVjb3JhdGlvbkdlb21ldHJ5LndhdnlTdHJva2VQYXJhbWV0ZXJzIH0sIENvbG9yOjp0
cmFuc3BhcmVudEJsYWNrLCBkZWNvcmF0aW9uU3R5bGUpOwogICAgIH0gd2hpbGUgKHNoYWRvdyk7
CiAKICAgICBpZiAoY2xpcHBpbmcpCkBAIC0zMTcsNyArMzEzLDcgQEAgdm9pZCBUZXh0RGVjb3Jh
dGlvblBhaW50ZXI6OnBhaW50TGluZVRocm91Z2goY29uc3QgRm9yZWdyb3VuZERlY29yYXRpb25H
ZW9tZXRyeSYKICAgICBhdXRvIHN0cm9rZVN0eWxlID0gdGV4dERlY29yYXRpb25TdHlsZVRvU3Ry
b2tlU3R5bGUoc3R5bGUpOwogCiAgICAgaWYgKHN0eWxlID09IFRleHREZWNvcmF0aW9uU3R5bGU6
OldhdnkpCi0gICAgICAgIHN0cm9rZVdhdnlUZXh0RGVjb3JhdGlvbihtX2NvbnRleHQsIHJlY3Qs
IG1fcmVuZGVyVGV4dFN0eWxlLmNvbXB1dGVkRm9udFBpeGVsU2l6ZSgpKTsKKyAgICAgICAgc3Ry
b2tlV2F2eVRleHREZWNvcmF0aW9uKG1fY29udGV4dCwgcmVjdCwgZm9yZWdyb3VuZERlY29yYXRp
b25HZW9tZXRyeS53YXZ5U3Ryb2tlUGFyYW1ldGVycyk7CiAgICAgZWxzZQogICAgICAgICBtX2Nv
bnRleHQuZHJhd0xpbmVGb3JUZXh0KHJlY3QsIG1faXNQcmludGluZywgc3R5bGUgPT0gVGV4dERl
Y29yYXRpb25TdHlsZTo6RG91YmxlLCBzdHJva2VTdHlsZSk7CiB9CkBAIC0zOTMsNiArMzg5LDcg
QEAgYXV0byBUZXh0RGVjb3JhdGlvblBhaW50ZXI6OnN0eWxlc0ZvclJlbmRlcmVyKGNvbnN0IFJl
bmRlck9iamVjdCYgcmVuZGVyZXIsIE9wdGkKICAgICBjb2xsZWN0U3R5bGVzRm9yUmVuZGVyZXIo
cmVzdWx0LCByZW5kZXJlciwgcmVxdWVzdGVkRGVjb3JhdGlvbnMsIGZhbHNlLCBwc2V1ZG9JZCk7
CiAgICAgaWYgKGZpcnN0TGluZVN0eWxlKQogICAgICAgICBjb2xsZWN0U3R5bGVzRm9yUmVuZGVy
ZXIocmVzdWx0LCByZW5kZXJlciwgcmVxdWVzdGVkRGVjb3JhdGlvbnMsIHRydWUsIHBzZXVkb0lk
KTsKKyAgICByZXN1bHQuc2tpcEluayA9IHJlbmRlcmVyLnN0eWxlKCkudGV4dERlY29yYXRpb25T
a2lwSW5rKCk7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1RleHREZWNvcmF0aW9uUGFpbnRlci5oIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1RleHREZWNvcmF0aW9uUGFpbnRlci5oCmluZGV4IDk3YjJjMWEwMDRhNi4uMjc0
MTU3NzMzMmM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvVGV4dERlY29y
YXRpb25QYWludGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHREZWNvcmF0
aW9uUGFpbnRlci5oCkBAIC0yNCw2ICsyNCw3IEBACiAKICNpbmNsdWRlICJDb2xvci5oIgogI2lu
Y2x1ZGUgIkZsb2F0UG9pbnQuaCIKKyNpbmNsdWRlICJJbmxpbmVUZXh0Qm94U3R5bGUuaCIKICNp
bmNsdWRlICJSZW5kZXJTdHlsZUNvbnN0YW50cy5oIgogI2luY2x1ZGUgPHd0Zi9PcHRpb25TZXQu
aD4KIApAQCAtMzksNyArNDAsNyBAQCBjbGFzcyBUZXh0UnVuOwogICAgIAogY2xhc3MgVGV4dERl
Y29yYXRpb25QYWludGVyIHsKIHB1YmxpYzoKLSAgICBUZXh0RGVjb3JhdGlvblBhaW50ZXIoR3Jh
cGhpY3NDb250ZXh0JiwgY29uc3QgUmVuZGVyU3R5bGUmLCBjb25zdCBGb250Q2FzY2FkZSYsIGNv
bnN0IFNoYWRvd0RhdGEqLCBjb25zdCBGaWx0ZXJPcGVyYXRpb25zKiwgYm9vbCBpc1ByaW50aW5n
LCBib29sIGlzSG9yaXpvbnRhbCk7CisgICAgVGV4dERlY29yYXRpb25QYWludGVyKEdyYXBoaWNz
Q29udGV4dCYsIGNvbnN0IEZvbnRDYXNjYWRlJiwgY29uc3QgU2hhZG93RGF0YSosIGNvbnN0IEZp
bHRlck9wZXJhdGlvbnMqLCBib29sIGlzUHJpbnRpbmcsIGJvb2wgaXNIb3Jpem9udGFsKTsKIAog
ICAgIHN0cnVjdCBTdHlsZXMgewogICAgICAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgU3R5bGVz
JikgY29uc3Q7CkBAIC00NywxMSArNDgsMTMgQEAgcHVibGljOgogCiAgICAgICAgIHN0cnVjdCBE
ZWNvcmF0aW9uU3R5bGVBbmRDb2xvciB7CiAgICAgICAgICAgICBDb2xvciBjb2xvcjsKLSAgICAg
ICAgICAgIFRleHREZWNvcmF0aW9uU3R5bGUgZGVjb3JhdGlvblN0eWxlOworICAgICAgICAgICAg
VGV4dERlY29yYXRpb25TdHlsZSBkZWNvcmF0aW9uU3R5bGUgeyBUZXh0RGVjb3JhdGlvblN0eWxl
OjpTb2xpZCB9OwogICAgICAgICB9OwogICAgICAgICBEZWNvcmF0aW9uU3R5bGVBbmRDb2xvciB1
bmRlcmxpbmU7CiAgICAgICAgIERlY29yYXRpb25TdHlsZUFuZENvbG9yIG92ZXJsaW5lOwogICAg
ICAgICBEZWNvcmF0aW9uU3R5bGVBbmRDb2xvciBsaW5ldGhyb3VnaDsKKworICAgICAgICBUZXh0
RGVjb3JhdGlvblNraXBJbmsgc2tpcEluayB7IFRleHREZWNvcmF0aW9uU2tpcEluazo6Tm9uZSB9
OwogICAgIH07CiAgICAgc3RydWN0IEJhY2tncm91bmREZWNvcmF0aW9uR2VvbWV0cnkgewogICAg
ICAgICBGbG9hdFBvaW50IHRleHRPcmlnaW47CkBAIC02MSw2ICs2NCw4IEBAIHB1YmxpYzoKICAg
ICAgICAgZmxvYXQgdW5kZXJsaW5lT2Zmc2V0IHsgMC5mIH07CiAgICAgICAgIGZsb2F0IG92ZXJs
aW5lT2Zmc2V0IHsgMC5mIH07CiAgICAgICAgIGZsb2F0IGxpbmV0aHJvdWdoQ2VudGVyIHsgMC5m
IH07CisgICAgICAgIGZsb2F0IGNsaXBwaW5nT2Zmc2V0IHsgMC5mIH07CisgICAgICAgIFdhdnlT
dHJva2VQYXJhbWV0ZXJzIHdhdnlTdHJva2VQYXJhbWV0ZXJzOwogICAgIH07CiAgICAgdm9pZCBw
YWludEJhY2tncm91bmREZWNvcmF0aW9ucyhjb25zdCBUZXh0UnVuJiwgY29uc3QgQmFja2dyb3Vu
ZERlY29yYXRpb25HZW9tZXRyeSYsIE9wdGlvblNldDxUZXh0RGVjb3JhdGlvbkxpbmU+LCBjb25z
dCBTdHlsZXMmKTsKIApAQCAtNjksNiArNzQsNyBAQCBwdWJsaWM6CiAgICAgICAgIGZsb2F0IHRl
eHRCb3hXaWR0aCB7IDAuZiB9OwogICAgICAgICBmbG9hdCB0ZXh0RGVjb3JhdGlvblRoaWNrbmVz
cyB7IDAuZiB9OwogICAgICAgICBmbG9hdCBsaW5ldGhyb3VnaENlbnRlciB7IDAuZiB9OworICAg
ICAgICBXYXZ5U3Ryb2tlUGFyYW1ldGVycyB3YXZ5U3Ryb2tlUGFyYW1ldGVyczsKICAgICB9Owog
ICAgIHZvaWQgcGFpbnRGb3JlZ3JvdW5kRGVjb3JhdGlvbnMoY29uc3QgRm9yZWdyb3VuZERlY29y
YXRpb25HZW9tZXRyeSYsIGNvbnN0IFN0eWxlcyYpOwogCkBAIC04NSw4ICs5MSw2IEBAIHByaXZh
dGU6CiAgICAgY29uc3QgU2hhZG93RGF0YSogbV9zaGFkb3cgeyBudWxscHRyIH07CiAgICAgY29u
c3QgRmlsdGVyT3BlcmF0aW9ucyogbV9zaGFkb3dDb2xvckZpbHRlciB7IG51bGxwdHIgfTsKICAg
ICBjb25zdCBGb250Q2FzY2FkZSYgbV9mb250OwotCi0gICAgY29uc3QgUmVuZGVyU3R5bGUmIG1f
cmVuZGVyVGV4dFN0eWxlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvSW5saW5lVGV4dEJveFN0eWxlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL0lubGluZVRleHRCb3hTdHlsZS5jcHAKaW5kZXggM2IwMDliMzFlNDE5Li4w
MDI3NzgyNzZmOTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0lubGluZVRleHRC
b3hTdHlsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvSW5saW5lVGV4dEJveFN0eWxl
LmNwcApAQCAtMTg2LDcgKzE4Niw3IEBAIHN0YXRpYyBmbG9hdCBjb21wdXRlZFVuZGVybGluZU9m
ZnNldChjb25zdCBVbmRlcmxpbmVPZmZzZXRBcmd1bWVudHMmIGNvbnRleHQpCiAgICAgcmV0dXJu
IGNvbXB1dGVkVW5kZXJsaW5lT2Zmc2V0OwogfQogCi1XYXZ5U3Ryb2tlUGFyYW1ldGVycyBnZXRX
YXZ5U3Ryb2tlUGFyYW1ldGVycyhmbG9hdCBmb250U2l6ZSkKK1dhdnlTdHJva2VQYXJhbWV0ZXJz
IHdhdnlTdHJva2VQYXJhbWV0ZXJzKGZsb2F0IGZvbnRTaXplKQogewogICAgIFdhdnlTdHJva2VQ
YXJhbWV0ZXJzIHJlc3VsdDsKICAgICAvLyBNb3JlIGluZm9ybWF0aW9uIGlzIGluIHRoZSBXYXZ5
U3Ryb2tlUGFyYW1ldGVycyBkZWZpbml0aW9uLgpAQCAtMjE0LDcgKzIxNCw3IEBAIHN0YXRpYyBH
bHlwaE92ZXJmbG93IGNvbXB1dGVkVmlzdWFsT3ZlcmZsb3dGb3JEZWNvcmF0aW9ucyhjb25zdCBS
ZW5kZXJTdHlsZSYgbGluCiAgICAgR2x5cGhPdmVyZmxvdyBvdmVyZmxvd1Jlc3VsdDsKIAogICAg
IGlmIChkZWNvcmF0aW9uU3R5bGUgPT0gVGV4dERlY29yYXRpb25TdHlsZTo6V2F2eSkgewotICAg
ICAgICB3YXZ5U3Ryb2tlUGFyYW1ldGVycyA9IGdldFdhdnlTdHJva2VQYXJhbWV0ZXJzKGxpbmVT
dHlsZS5jb21wdXRlZEZvbnRQaXhlbFNpemUoKSk7CisgICAgICAgIHdhdnlTdHJva2VQYXJhbWV0
ZXJzID0gV2ViQ29yZTo6d2F2eVN0cm9rZVBhcmFtZXRlcnMobGluZVN0eWxlLmNvbXB1dGVkRm9u
dFBpeGVsU2l6ZSgpKTsKICAgICAgICAgd2F2eU9mZnNldCA9IHdhdnlPZmZzZXRGcm9tRGVjb3Jh
dGlvbigpOwogICAgICAgICBvdmVyZmxvd1Jlc3VsdC5sZWZ0ID0gc3Ryb2tlVGhpY2tuZXNzOwog
ICAgICAgICBvdmVyZmxvd1Jlc3VsdC5yaWdodCA9IHN0cm9rZVRoaWNrbmVzczsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0lubGluZVRleHRCb3hTdHlsZS5oIGIvU291cmNlL1dl
YkNvcmUvc3R5bGUvSW5saW5lVGV4dEJveFN0eWxlLmgKaW5kZXggZDYyNmNjNTcwN2E3Li43M2Ux
ZThjNWEwNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0lubGluZVRleHRCb3hT
dHlsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0lubGluZVRleHRCb3hTdHlsZS5oCkBA
IC01Myw3ICs1Myw3IEBAIHN0cnVjdCBXYXZ5U3Ryb2tlUGFyYW1ldGVycyB7CiAgICAgLy8gd2lk
ZXIgYXMgZm9udCBzaXplIGluY3JlYXNlcy4KICAgICBmbG9hdCBzdGVwIHsgMC5mIH07CiB9Owot
V2F2eVN0cm9rZVBhcmFtZXRlcnMgZ2V0V2F2eVN0cm9rZVBhcmFtZXRlcnMoZmxvYXQgZm9udFNp
emUpOworV2F2eVN0cm9rZVBhcmFtZXRlcnMgd2F2eVN0cm9rZVBhcmFtZXRlcnMoZmxvYXQgZm9u
dFNpemUpOwogCiBzdHJ1Y3QgVGV4dFVuZGVybGluZVBvc2l0aW9uVW5kZXIgewogICAgIGZsb2F0
IHRleHRSdW5Mb2dpY2FsSGVpZ2h0IHsgMC5mIH07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>461550</attachid>
            <date>2022-08-11 16:11:47 -0700</date>
            <delta_ts>2022-08-11 16:31:41 -0700</delta_ts>
            <desc>[fast-cq]Patch</desc>
            <filename>bug-243765-20220811161146.patch</filename>
            <type>text/plain</type>
            <size>14110</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSBjMWE2NDJiNDNhZWRiNTkzMTU2ZjBlNGQ3YzkxYjgwNDljOGJjM2NkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJ1anRhcyA8emFsYW5AYXBwbGUuY29tPgpEYXRlOiBU
aHUsIDExIEF1ZyAyMDIyIDA3OjA2OjQwIC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gW1BhaW50aW5n
XSBUZXh0RGVjb3JhdGlvblBhaW50ZXIgc2hvdWxkIG5vdCB0YWtlIFJlbmRlclN0eWxlCiBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQzNzY1CgpSZXZpZXdlZCBieSBB
bnR0aSBLb2l2aXN0by4KClRoaXMgZW5hYmxlcyB1cyB0byByZXVzZSB0aGUgVGV4dERlY29yYXRp
b25QYWludGVyIG9iamVjdCB3aGVuIHdlIG5lZWQgdG8gcGFpbnQgbXVsdGlwbGUgaW5saW5lIGJv
eCBkZWNvcmF0aW9ucyBmb3IgYSBnaXZlbiB0ZXh0IGJveC4KCiogU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1RleHRCb3hQYWludGVyLmNwcDoKKFdlYkNvcmU6OlRleHRCb3hQYWludGVyPFRleHRC
b3hQYXRoPjo6Y3JlYXRlRGVjb3JhdGlvblBhaW50ZXIpOgooV2ViQ29yZTo6VGV4dEJveFBhaW50
ZXI8VGV4dEJveFBhdGg+OjpwYWludEJhY2tncm91bmREZWNvcmF0aW9ucyk6CihXZWJDb3JlOjpU
ZXh0Qm94UGFpbnRlcjxUZXh0Qm94UGF0aD46OnBhaW50Rm9yZWdyb3VuZERlY29yYXRpb25zKToK
KiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvVGV4dERlY29yYXRpb25QYWludGVyLmNwcDoKKFdl
YkNvcmU6OnN0cm9rZVdhdnlUZXh0RGVjb3JhdGlvbik6CihXZWJDb3JlOjpUZXh0RGVjb3JhdGlv
blBhaW50ZXI6OlRleHREZWNvcmF0aW9uUGFpbnRlcik6CihXZWJDb3JlOjpUZXh0RGVjb3JhdGlv
blBhaW50ZXI6OnBhaW50QmFja2dyb3VuZERlY29yYXRpb25zKToKKFdlYkNvcmU6OlRleHREZWNv
cmF0aW9uUGFpbnRlcjo6cGFpbnRMaW5lVGhyb3VnaCk6CihXZWJDb3JlOjpUZXh0RGVjb3JhdGlv
blBhaW50ZXI6OnN0eWxlc0ZvclJlbmRlcmVyKToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
VGV4dERlY29yYXRpb25QYWludGVyLmg6CiogU291cmNlL1dlYkNvcmUvc3R5bGUvSW5saW5lVGV4
dEJveFN0eWxlLmNwcDoKKFdlYkNvcmU6OndhdnlTdHJva2VQYXJhbWV0ZXJzKToKKFdlYkNvcmU6
OmNvbXB1dGVkVmlzdWFsT3ZlcmZsb3dGb3JEZWNvcmF0aW9ucyk6CihXZWJDb3JlOjpnZXRXYXZ5
U3Ryb2tlUGFyYW1ldGVycyk6IERlbGV0ZWQuCiogU291cmNlL1dlYkNvcmUvc3R5bGUvSW5saW5l
VGV4dEJveFN0eWxlLmg6Ci0tLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHRCb3hQYWlu
dGVyLmNwcCAgIHwgMTMgKysrKysrKystLS0tCiAuLi4vcmVuZGVyaW5nL1RleHREZWNvcmF0aW9u
UGFpbnRlci5jcHAgICAgICAgfCAyMSArKysrKysrKy0tLS0tLS0tLS0tCiAuLi4vV2ViQ29yZS9y
ZW5kZXJpbmcvVGV4dERlY29yYXRpb25QYWludGVyLmggfCAxMiArKysrKysrLS0tLQogU291cmNl
L1dlYkNvcmUvc3R5bGUvSW5saW5lVGV4dEJveFN0eWxlLmNwcCAgIHwgIDQgKystLQogU291cmNl
L1dlYkNvcmUvc3R5bGUvSW5saW5lVGV4dEJveFN0eWxlLmggICAgIHwgIDIgKy0KIDUgZmlsZXMg
Y2hhbmdlZCwgMjkgaW5zZXJ0aW9ucygrKSwgMjMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHRCb3hQYWludGVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9UZXh0Qm94UGFpbnRlci5jcHAKaW5kZXggMGRjMDJmNGQyMDViLi44NTRh
YmZhZDVmNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9UZXh0Qm94UGFp
bnRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHRCb3hQYWludGVyLmNw
cApAQCAtNDM2LDggKzQzNiw3IEBAIFRleHREZWNvcmF0aW9uUGFpbnRlciBUZXh0Qm94UGFpbnRl
cjxUZXh0Qm94UGF0aD46OmNyZWF0ZURlY29yYXRpb25QYWludGVyKGNvbnN0CiAgICAgLy8gQ3Jl
YXRlIHBhaW50ZXIKICAgICBhdXRvKiBzaGFkb3cgPSBtYXJrZWRUZXh0LnN0eWxlLnRleHRTaGFk
b3cgPyAmbWFya2VkVGV4dC5zdHlsZS50ZXh0U2hhZG93LnZhbHVlKCkgOiBudWxscHRyOwogICAg
IGF1dG8qIGNvbG9yRmlsdGVyID0gbWFya2VkVGV4dC5zdHlsZS50ZXh0U2hhZG93ICYmIG1fc3R5
bGUuaGFzQXBwbGVDb2xvckZpbHRlcigpID8gJm1fc3R5bGUuYXBwbGVDb2xvckZpbHRlcigpIDog
bnVsbHB0cjsKLSAgICBhdXRvJiBzdHlsZVRvVXNlID0gbV9pc0ZpcnN0TGluZSA/IG1fcmVuZGVy
ZXIuZmlyc3RMaW5lU3R5bGUoKSA6IG1fcmVuZGVyZXIuc3R5bGUoKTsKLSAgICByZXR1cm4geyBj
b250ZXh0LCBzdHlsZVRvVXNlLCBmb250Q2FzY2FkZSgpLCBzaGFkb3csIGNvbG9yRmlsdGVyLCBt
X2RvY3VtZW50LnByaW50aW5nKCksIG1fcmVuZGVyZXIuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUo
KSB9OworICAgIHJldHVybiB7IGNvbnRleHQsIGZvbnRDYXNjYWRlKCksIHNoYWRvdywgY29sb3JG
aWx0ZXIsIG1fZG9jdW1lbnQucHJpbnRpbmcoKSwgbV9yZW5kZXJlci5pc0hvcml6b250YWxXcml0
aW5nTW9kZSgpIH07CiB9CiAKIHN0YXRpYyBpbmxpbmUgZmxvYXQgY29tcHV0ZWRUZXh0RGVjb3Jh
dGlvblRoaWNrbmVzcyhjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGVUb1VzZSwgZmxvYXQgZGV2aWNl
U2NhbGVGYWN0b3IpCkBAIC00OTUsNyArNDk0LDkgQEAgdm9pZCBUZXh0Qm94UGFpbnRlcjxUZXh0
Qm94UGF0aD46OnBhaW50QmFja2dyb3VuZERlY29yYXRpb25zKFRleHREZWNvcmF0aW9uUGFpbnQK
ICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uVGhpY2tuZXNzLAogICAgICAgICAgICAgdW5kZXJs
aW5lT2Zmc2V0KCksCiAgICAgICAgICAgICBvdmVybGluZU9mZnNldCgpLAotICAgICAgICAgICAg
Y29tcHV0ZWRMaW5ldGhyb3VnaENlbnRlcihzdHlsZVRvVXNlLCB0ZXh0RGVjb3JhdGlvblRoaWNr
bmVzcywgYXV0b1RleHREZWNvcmF0aW9uVGhpY2tuZXNzKQorICAgICAgICAgICAgY29tcHV0ZWRM
aW5ldGhyb3VnaENlbnRlcihzdHlsZVRvVXNlLCB0ZXh0RGVjb3JhdGlvblRoaWNrbmVzcywgYXV0
b1RleHREZWNvcmF0aW9uVGhpY2tuZXNzKSwKKyAgICAgICAgICAgIHN0eWxlVG9Vc2UubWV0cmlj
c09mUHJpbWFyeUZvbnQoKS5hc2NlbnQoKSArIDIuZiwKKyAgICAgICAgICAgIHdhdnlTdHJva2VQ
YXJhbWV0ZXJzKHN0eWxlVG9Vc2UuY29tcHV0ZWRGb250UGl4ZWxTaXplKCkpCiAgICAgICAgIH07
CiAgICAgfTsKIApAQCAtNTI0LDcgKzUyNSwxMSBAQCB2b2lkIFRleHRCb3hQYWludGVyPFRleHRC
b3hQYXRoPjo6cGFpbnRGb3JlZ3JvdW5kRGVjb3JhdGlvbnMoVGV4dERlY29yYXRpb25QYWludAog
ICAgIGF1dG8gZGV2aWNlU2NhbGVGYWN0b3IgPSBtX2RvY3VtZW50LmRldmljZVNjYWxlRmFjdG9y
KCk7CiAgICAgYXV0byB0ZXh0RGVjb3JhdGlvblRoaWNrbmVzcyA9IGNvbXB1dGVkVGV4dERlY29y
YXRpb25UaGlja25lc3Moc3R5bGVUb1VzZSwgZGV2aWNlU2NhbGVGYWN0b3IpOwogICAgIGF1dG8g
bGluZXRocm91Z2hDZW50ZXIgPSBjb21wdXRlZExpbmV0aHJvdWdoQ2VudGVyKHN0eWxlVG9Vc2Us
IHRleHREZWNvcmF0aW9uVGhpY2tuZXNzLCBjb21wdXRlZEF1dG9UZXh0RGVjb3JhdGlvblRoaWNr
bmVzcyhzdHlsZVRvVXNlLCBkZXZpY2VTY2FsZUZhY3RvcikpOwotICAgIGRlY29yYXRpb25QYWlu
dGVyLnBhaW50Rm9yZWdyb3VuZERlY29yYXRpb25zKHsgc25hcHBlZFNlbGVjdGlvblJlY3QubG9j
YXRpb24oKSwgc25hcHBlZFNlbGVjdGlvblJlY3Qud2lkdGgoKSwgdGV4dERlY29yYXRpb25UaGlj
a25lc3MsIGxpbmV0aHJvdWdoQ2VudGVyIH0sIG1hcmtlZFRleHQuc3R5bGUudGV4dERlY29yYXRp
b25TdHlsZXMpOworICAgIGRlY29yYXRpb25QYWludGVyLnBhaW50Rm9yZWdyb3VuZERlY29yYXRp
b25zKHsgc25hcHBlZFNlbGVjdGlvblJlY3QubG9jYXRpb24oKQorICAgICAgICAsIHNuYXBwZWRT
ZWxlY3Rpb25SZWN0LndpZHRoKCkKKyAgICAgICAgLCB0ZXh0RGVjb3JhdGlvblRoaWNrbmVzcwor
ICAgICAgICAsIGxpbmV0aHJvdWdoQ2VudGVyCisgICAgICAgICwgd2F2eVN0cm9rZVBhcmFtZXRl
cnMoc3R5bGVUb1VzZS5jb21wdXRlZEZvbnRQaXhlbFNpemUoKSkgfSwgbWFya2VkVGV4dC5zdHls
ZS50ZXh0RGVjb3JhdGlvblN0eWxlcyk7CiAKICAgICBpZiAobV9pc0NvbWJpbmVkVGV4dCkKICAg
ICAgICAgbV9wYWludEluZm8uY29udGV4dCgpLmNvbmNhdENUTShyb3RhdGlvbihtX3BhaW50UmVj
dCwgQ291bnRlcmNsb2Nrd2lzZSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1RleHREZWNvcmF0aW9uUGFpbnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
VGV4dERlY29yYXRpb25QYWludGVyLmNwcAppbmRleCBhOWUxYmFiMDM4NWYuLmNkYzYxYzlhODRj
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHREZWNvcmF0aW9uUGFp
bnRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHREZWNvcmF0aW9uUGFp
bnRlci5jcHAKQEAgLTY1LDEwICs2NSw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAqICAgICAg
ICAgICAgIHwtLS0tLS0tLS0tLXwKICAqICAgICAgICAgICAgICAgICBzdGVwCiAgKi8KLXN0YXRp
YyB2b2lkIHN0cm9rZVdhdnlUZXh0RGVjb3JhdGlvbihHcmFwaGljc0NvbnRleHQmIGNvbnRleHQs
IGNvbnN0IEZsb2F0UmVjdCYgcmVjdCwgZmxvYXQgZm9udFNpemUpCitzdGF0aWMgdm9pZCBzdHJv
a2VXYXZ5VGV4dERlY29yYXRpb24oR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBGbG9h
dFJlY3QmIHJlY3QsIFdhdnlTdHJva2VQYXJhbWV0ZXJzIHdhdnlTdHJva2VQYXJhbWV0ZXJzKQog
ewotICAgIGF1dG8gd2F2eVN0cm9rZVBhcmFtZXRlcnMgPSBnZXRXYXZ5U3Ryb2tlUGFyYW1ldGVy
cyhmb250U2l6ZSk7Ci0KICAgICBGbG9hdFBvaW50IHAxID0gcmVjdC5taW5YTWluWUNvcm5lcigp
OwogICAgIEZsb2F0UG9pbnQgcDIgPSByZWN0Lm1heFhNaW5ZQ29ybmVyKCk7CiAKQEAgLTE5MSwx
NCArMTg5LDEzIEBAIGJvb2wgVGV4dERlY29yYXRpb25QYWludGVyOjpTdHlsZXM6Om9wZXJhdG9y
PT0oY29uc3QgU3R5bGVzJiBvdGhlcikgY29uc3QKICAgICAgICAgJiYgdW5kZXJsaW5lLmRlY29y
YXRpb25TdHlsZSA9PSBvdGhlci51bmRlcmxpbmUuZGVjb3JhdGlvblN0eWxlICYmIG92ZXJsaW5l
LmRlY29yYXRpb25TdHlsZSA9PSBvdGhlci5vdmVybGluZS5kZWNvcmF0aW9uU3R5bGUgJiYgbGlu
ZXRocm91Z2guZGVjb3JhdGlvblN0eWxlID09IG90aGVyLmxpbmV0aHJvdWdoLmRlY29yYXRpb25T
dHlsZTsKIH0KIAotVGV4dERlY29yYXRpb25QYWludGVyOjpUZXh0RGVjb3JhdGlvblBhaW50ZXIo
R3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBSZW5kZXJTdHlsZSYgcmVuZGVyVGV4dFN0
eWxlLCBjb25zdCBGb250Q2FzY2FkZSYgZm9udCwgY29uc3QgU2hhZG93RGF0YSogc2hhZG93LCBj
b25zdCBGaWx0ZXJPcGVyYXRpb25zKiBjb2xvckZpbHRlciwgYm9vbCBpc1ByaW50aW5nLCBib29s
IGlzSG9yaXpvbnRhbCkKK1RleHREZWNvcmF0aW9uUGFpbnRlcjo6VGV4dERlY29yYXRpb25QYWlu
dGVyKEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgRm9udENhc2NhZGUmIGZvbnQsIGNv
bnN0IFNoYWRvd0RhdGEqIHNoYWRvdywgY29uc3QgRmlsdGVyT3BlcmF0aW9ucyogY29sb3JGaWx0
ZXIsIGJvb2wgaXNQcmludGluZywgYm9vbCBpc0hvcml6b250YWwpCiAgICAgOiBtX2NvbnRleHQo
Y29udGV4dCkKICAgICAsIG1faXNQcmludGluZyhpc1ByaW50aW5nKQogICAgICwgbV9pc0hvcml6
b250YWwoaXNIb3Jpem9udGFsKQogICAgICwgbV9zaGFkb3coc2hhZG93KQogICAgICwgbV9zaGFk
b3dDb2xvckZpbHRlcihjb2xvckZpbHRlcikKICAgICAsIG1fZm9udChmb250KQotICAgICwgbV9y
ZW5kZXJUZXh0U3R5bGUocmVuZGVyVGV4dFN0eWxlKQogewogfQogCkBAIC0yMTEsOSArMjA4LDkg
QEAgdm9pZCBUZXh0RGVjb3JhdGlvblBhaW50ZXI6OnBhaW50QmFja2dyb3VuZERlY29yYXRpb25z
KGNvbnN0IFRleHRSdW4mIHRleHRSdW4sIGMKICAgICAgICAgYXV0byBzdHJva2VTdHlsZSA9IHRl
eHREZWNvcmF0aW9uU3R5bGVUb1N0cm9rZVN0eWxlKHN0eWxlKTsKIAogICAgICAgICBpZiAoc3R5
bGUgPT0gVGV4dERlY29yYXRpb25TdHlsZTo6V2F2eSkKLSAgICAgICAgICAgIHN0cm9rZVdhdnlU
ZXh0RGVjb3JhdGlvbihtX2NvbnRleHQsIHJlY3QsIG1fcmVuZGVyVGV4dFN0eWxlLmNvbXB1dGVk
Rm9udFBpeGVsU2l6ZSgpKTsKKyAgICAgICAgICAgIHN0cm9rZVdhdnlUZXh0RGVjb3JhdGlvbiht
X2NvbnRleHQsIHJlY3QsIGRlY29yYXRpb25HZW9tZXRyeS53YXZ5U3Ryb2tlUGFyYW1ldGVycyk7
CiAgICAgICAgIGVsc2UgaWYgKGRlY29yYXRpb24gPT0gVGV4dERlY29yYXRpb25MaW5lOjpVbmRl
cmxpbmUgfHwgZGVjb3JhdGlvbiA9PSBUZXh0RGVjb3JhdGlvbkxpbmU6Ok92ZXJsaW5lKSB7Ci0g
ICAgICAgICAgICBpZiAoKG1fcmVuZGVyVGV4dFN0eWxlLnRleHREZWNvcmF0aW9uU2tpcEluaygp
ID09IFRleHREZWNvcmF0aW9uU2tpcEluazo6QXV0byB8fCBtX3JlbmRlclRleHRTdHlsZS50ZXh0
RGVjb3JhdGlvblNraXBJbmsoKSA9PSBUZXh0RGVjb3JhdGlvblNraXBJbms6OkFsbCkgJiYgbV9p
c0hvcml6b250YWwpIHsKKyAgICAgICAgICAgIGlmICgoZGVjb3JhdGlvblN0eWxlLnNraXBJbmsg
PT0gVGV4dERlY29yYXRpb25Ta2lwSW5rOjpBdXRvIHx8IGRlY29yYXRpb25TdHlsZS5za2lwSW5r
ID09IFRleHREZWNvcmF0aW9uU2tpcEluazo6QWxsKSAmJiBtX2lzSG9yaXpvbnRhbCkgewogICAg
ICAgICAgICAgICAgIGlmICghbV9jb250ZXh0LnBhaW50aW5nRGlzYWJsZWQoKSkgewogICAgICAg
ICAgICAgICAgICAgICBhdXRvIHVuZGVybGluZUJvdW5kaW5nQm94ID0gbV9jb250ZXh0LmNvbXB1
dGVVbmRlcmxpbmVCb3VuZHNGb3JUZXh0KHJlY3QsIG1faXNQcmludGluZyk7CiAgICAgICAgICAg
ICAgICAgICAgIERhc2hBcnJheSBpbnRlcnNlY3Rpb25zID0gbV9mb250LmRhc2hlc0ZvckludGVy
c2VjdGlvbnNXaXRoUmVjdCh0ZXh0UnVuLCBkZWNvcmF0aW9uR2VvbWV0cnkudGV4dE9yaWdpbiwg
dW5kZXJsaW5lQm91bmRpbmdCb3gpOwpAQCAtMjM4LDggKzIzNSw3IEBAIHZvaWQgVGV4dERlY29y
YXRpb25QYWludGVyOjpwYWludEJhY2tncm91bmREZWNvcmF0aW9ucyhjb25zdCBUZXh0UnVuJiB0
ZXh0UnVuLCBjCiAgICAgYXV0byBib3hPcmlnaW4gPSBkZWNvcmF0aW9uR2VvbWV0cnkuYm94T3Jp
Z2luOwogICAgIGJvb2wgY2xpcHBpbmcgPSBtX3NoYWRvdyAmJiBtX3NoYWRvdy0+bmV4dCgpICYm
ICFhcmVMaW5lc09wYXF1ZTsKICAgICBpZiAoY2xpcHBpbmcpIHsKLSAgICAgICAgYXV0byYgZm9u
dE1ldHJpY3MgPSBtX3JlbmRlclRleHRTdHlsZS5tZXRyaWNzT2ZQcmltYXJ5Rm9udCgpOwotICAg
ICAgICBhdXRvIGNsaXBSZWN0ID0gRmxvYXRSZWN0IHsgYm94T3JpZ2luLCBGbG9hdFNpemUgeyBk
ZWNvcmF0aW9uR2VvbWV0cnkudGV4dEJveFdpZHRoLCBmb250TWV0cmljcy5hc2NlbnQoKSArIDIu
ZiB9IH07CisgICAgICAgIGF1dG8gY2xpcFJlY3QgPSBGbG9hdFJlY3QgeyBib3hPcmlnaW4sIEZs
b2F0U2l6ZSB7IGRlY29yYXRpb25HZW9tZXRyeS50ZXh0Qm94V2lkdGgsIGRlY29yYXRpb25HZW9t
ZXRyeS5jbGlwcGluZ09mZnNldCB9IH07CiAgICAgICAgIGZvciAoY29uc3QgU2hhZG93RGF0YSog
c2hhZG93ID0gbV9zaGFkb3c7IHNoYWRvdzsgc2hhZG93ID0gc2hhZG93LT5uZXh0KCkpIHsKICAg
ICAgICAgICAgIGF1dG8gc2hhZG93RXh0ZW50ID0gc2hhZG93LT5wYWludGluZ0V4dGVudCgpOwog
ICAgICAgICAgICAgYXV0byBzaGFkb3dSZWN0ID0gY2xpcFJlY3Q7CkBAIC0yNTIsNyArMjQ4LDcg
QEAgdm9pZCBUZXh0RGVjb3JhdGlvblBhaW50ZXI6OnBhaW50QmFja2dyb3VuZERlY29yYXRpb25z
KGNvbnN0IFRleHRSdW4mIHRleHRSdW4sIGMKICAgICAgICAgfQogICAgICAgICBtX2NvbnRleHQu
c2F2ZSgpOwogICAgICAgICBtX2NvbnRleHQuY2xpcChjbGlwUmVjdCk7Ci0gICAgICAgIGV4dHJh
T2Zmc2V0ICs9IGZvbnRNZXRyaWNzLmFzY2VudCgpICsgMjsKKyAgICAgICAgZXh0cmFPZmZzZXQg
Kz0gZGVjb3JhdGlvbkdlb21ldHJ5LmNsaXBwaW5nT2Zmc2V0OwogICAgICAgICBib3hPcmlnaW4u
bW92ZSgwLmYsIGV4dHJhT2Zmc2V0KTsKICAgICB9CiAKQEAgLTI5Miw3ICsyODgsNyBAQCB2b2lk
IFRleHREZWNvcmF0aW9uUGFpbnRlcjo6cGFpbnRCYWNrZ3JvdW5kRGVjb3JhdGlvbnMoY29uc3Qg
VGV4dFJ1biYgdGV4dFJ1biwgYwogICAgICAgICAvLyBXZSBvbmx5IHdhbnQgdG8gcGFpbnQgdGhl
IHNoYWRvdywgaGVuY2UgdGhlIHRyYW5zcGFyZW50IGNvbG9yLCBub3QgdGhlIGFjdHVhbCBsaW5l
LXRocm91Z2gsCiAgICAgICAgIC8vIHdoaWNoIHdpbGwgYmUgcGFpbnRlZCBpbiBwYWludEZvcmVn
cm91bmREZWNvcmF0aW9ucygpLgogICAgICAgICBpZiAoc2hhZG93ICYmIGRlY29yYXRpb25UeXBl
LmNvbnRhaW5zKFRleHREZWNvcmF0aW9uTGluZTo6TGluZVRocm91Z2gpKQotICAgICAgICAgICAg
cGFpbnRMaW5lVGhyb3VnaCh7IGJveE9yaWdpbiwgZGVjb3JhdGlvbkdlb21ldHJ5LnRleHRCb3hX
aWR0aCwgZGVjb3JhdGlvbkdlb21ldHJ5LnRleHREZWNvcmF0aW9uVGhpY2tuZXNzLCBkZWNvcmF0
aW9uR2VvbWV0cnkubGluZXRocm91Z2hDZW50ZXIgfSwgQ29sb3I6OnRyYW5zcGFyZW50QmxhY2ss
IGRlY29yYXRpb25TdHlsZSk7CisgICAgICAgICAgICBwYWludExpbmVUaHJvdWdoKHsgYm94T3Jp
Z2luLCBkZWNvcmF0aW9uR2VvbWV0cnkudGV4dEJveFdpZHRoLCBkZWNvcmF0aW9uR2VvbWV0cnku
dGV4dERlY29yYXRpb25UaGlja25lc3MsIGRlY29yYXRpb25HZW9tZXRyeS5saW5ldGhyb3VnaENl
bnRlciwgZGVjb3JhdGlvbkdlb21ldHJ5LndhdnlTdHJva2VQYXJhbWV0ZXJzIH0sIENvbG9yOjp0
cmFuc3BhcmVudEJsYWNrLCBkZWNvcmF0aW9uU3R5bGUpOwogICAgIH0gd2hpbGUgKHNoYWRvdyk7
CiAKICAgICBpZiAoY2xpcHBpbmcpCkBAIC0zMTcsNyArMzEzLDcgQEAgdm9pZCBUZXh0RGVjb3Jh
dGlvblBhaW50ZXI6OnBhaW50TGluZVRocm91Z2goY29uc3QgRm9yZWdyb3VuZERlY29yYXRpb25H
ZW9tZXRyeSYKICAgICBhdXRvIHN0cm9rZVN0eWxlID0gdGV4dERlY29yYXRpb25TdHlsZVRvU3Ry
b2tlU3R5bGUoc3R5bGUpOwogCiAgICAgaWYgKHN0eWxlID09IFRleHREZWNvcmF0aW9uU3R5bGU6
OldhdnkpCi0gICAgICAgIHN0cm9rZVdhdnlUZXh0RGVjb3JhdGlvbihtX2NvbnRleHQsIHJlY3Qs
IG1fcmVuZGVyVGV4dFN0eWxlLmNvbXB1dGVkRm9udFBpeGVsU2l6ZSgpKTsKKyAgICAgICAgc3Ry
b2tlV2F2eVRleHREZWNvcmF0aW9uKG1fY29udGV4dCwgcmVjdCwgZm9yZWdyb3VuZERlY29yYXRp
b25HZW9tZXRyeS53YXZ5U3Ryb2tlUGFyYW1ldGVycyk7CiAgICAgZWxzZQogICAgICAgICBtX2Nv
bnRleHQuZHJhd0xpbmVGb3JUZXh0KHJlY3QsIG1faXNQcmludGluZywgc3R5bGUgPT0gVGV4dERl
Y29yYXRpb25TdHlsZTo6RG91YmxlLCBzdHJva2VTdHlsZSk7CiB9CkBAIC0zOTMsNiArMzg5LDcg
QEAgYXV0byBUZXh0RGVjb3JhdGlvblBhaW50ZXI6OnN0eWxlc0ZvclJlbmRlcmVyKGNvbnN0IFJl
bmRlck9iamVjdCYgcmVuZGVyZXIsIE9wdGkKICAgICBjb2xsZWN0U3R5bGVzRm9yUmVuZGVyZXIo
cmVzdWx0LCByZW5kZXJlciwgcmVxdWVzdGVkRGVjb3JhdGlvbnMsIGZhbHNlLCBwc2V1ZG9JZCk7
CiAgICAgaWYgKGZpcnN0TGluZVN0eWxlKQogICAgICAgICBjb2xsZWN0U3R5bGVzRm9yUmVuZGVy
ZXIocmVzdWx0LCByZW5kZXJlciwgcmVxdWVzdGVkRGVjb3JhdGlvbnMsIHRydWUsIHBzZXVkb0lk
KTsKKyAgICByZXN1bHQuc2tpcEluayA9IHJlbmRlcmVyLnN0eWxlKCkudGV4dERlY29yYXRpb25T
a2lwSW5rKCk7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1RleHREZWNvcmF0aW9uUGFpbnRlci5oIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1RleHREZWNvcmF0aW9uUGFpbnRlci5oCmluZGV4IDk3YjJjMWEwMDRhNi4uMjc0
MTU3NzMzMmM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvVGV4dERlY29y
YXRpb25QYWludGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1RleHREZWNvcmF0
aW9uUGFpbnRlci5oCkBAIC0yNCw2ICsyNCw3IEBACiAKICNpbmNsdWRlICJDb2xvci5oIgogI2lu
Y2x1ZGUgIkZsb2F0UG9pbnQuaCIKKyNpbmNsdWRlICJJbmxpbmVUZXh0Qm94U3R5bGUuaCIKICNp
bmNsdWRlICJSZW5kZXJTdHlsZUNvbnN0YW50cy5oIgogI2luY2x1ZGUgPHd0Zi9PcHRpb25TZXQu
aD4KIApAQCAtMzksNyArNDAsNyBAQCBjbGFzcyBUZXh0UnVuOwogICAgIAogY2xhc3MgVGV4dERl
Y29yYXRpb25QYWludGVyIHsKIHB1YmxpYzoKLSAgICBUZXh0RGVjb3JhdGlvblBhaW50ZXIoR3Jh
cGhpY3NDb250ZXh0JiwgY29uc3QgUmVuZGVyU3R5bGUmLCBjb25zdCBGb250Q2FzY2FkZSYsIGNv
bnN0IFNoYWRvd0RhdGEqLCBjb25zdCBGaWx0ZXJPcGVyYXRpb25zKiwgYm9vbCBpc1ByaW50aW5n
LCBib29sIGlzSG9yaXpvbnRhbCk7CisgICAgVGV4dERlY29yYXRpb25QYWludGVyKEdyYXBoaWNz
Q29udGV4dCYsIGNvbnN0IEZvbnRDYXNjYWRlJiwgY29uc3QgU2hhZG93RGF0YSosIGNvbnN0IEZp
bHRlck9wZXJhdGlvbnMqLCBib29sIGlzUHJpbnRpbmcsIGJvb2wgaXNIb3Jpem9udGFsKTsKIAog
ICAgIHN0cnVjdCBTdHlsZXMgewogICAgICAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgU3R5bGVz
JikgY29uc3Q7CkBAIC00NywxMSArNDgsMTMgQEAgcHVibGljOgogCiAgICAgICAgIHN0cnVjdCBE
ZWNvcmF0aW9uU3R5bGVBbmRDb2xvciB7CiAgICAgICAgICAgICBDb2xvciBjb2xvcjsKLSAgICAg
ICAgICAgIFRleHREZWNvcmF0aW9uU3R5bGUgZGVjb3JhdGlvblN0eWxlOworICAgICAgICAgICAg
VGV4dERlY29yYXRpb25TdHlsZSBkZWNvcmF0aW9uU3R5bGUgeyBUZXh0RGVjb3JhdGlvblN0eWxl
OjpTb2xpZCB9OwogICAgICAgICB9OwogICAgICAgICBEZWNvcmF0aW9uU3R5bGVBbmRDb2xvciB1
bmRlcmxpbmU7CiAgICAgICAgIERlY29yYXRpb25TdHlsZUFuZENvbG9yIG92ZXJsaW5lOwogICAg
ICAgICBEZWNvcmF0aW9uU3R5bGVBbmRDb2xvciBsaW5ldGhyb3VnaDsKKworICAgICAgICBUZXh0
RGVjb3JhdGlvblNraXBJbmsgc2tpcEluayB7IFRleHREZWNvcmF0aW9uU2tpcEluazo6Tm9uZSB9
OwogICAgIH07CiAgICAgc3RydWN0IEJhY2tncm91bmREZWNvcmF0aW9uR2VvbWV0cnkgewogICAg
ICAgICBGbG9hdFBvaW50IHRleHRPcmlnaW47CkBAIC02MSw2ICs2NCw4IEBAIHB1YmxpYzoKICAg
ICAgICAgZmxvYXQgdW5kZXJsaW5lT2Zmc2V0IHsgMC5mIH07CiAgICAgICAgIGZsb2F0IG92ZXJs
aW5lT2Zmc2V0IHsgMC5mIH07CiAgICAgICAgIGZsb2F0IGxpbmV0aHJvdWdoQ2VudGVyIHsgMC5m
IH07CisgICAgICAgIGZsb2F0IGNsaXBwaW5nT2Zmc2V0IHsgMC5mIH07CisgICAgICAgIFdhdnlT
dHJva2VQYXJhbWV0ZXJzIHdhdnlTdHJva2VQYXJhbWV0ZXJzOwogICAgIH07CiAgICAgdm9pZCBw
YWludEJhY2tncm91bmREZWNvcmF0aW9ucyhjb25zdCBUZXh0UnVuJiwgY29uc3QgQmFja2dyb3Vu
ZERlY29yYXRpb25HZW9tZXRyeSYsIE9wdGlvblNldDxUZXh0RGVjb3JhdGlvbkxpbmU+LCBjb25z
dCBTdHlsZXMmKTsKIApAQCAtNjksNiArNzQsNyBAQCBwdWJsaWM6CiAgICAgICAgIGZsb2F0IHRl
eHRCb3hXaWR0aCB7IDAuZiB9OwogICAgICAgICBmbG9hdCB0ZXh0RGVjb3JhdGlvblRoaWNrbmVz
cyB7IDAuZiB9OwogICAgICAgICBmbG9hdCBsaW5ldGhyb3VnaENlbnRlciB7IDAuZiB9OworICAg
ICAgICBXYXZ5U3Ryb2tlUGFyYW1ldGVycyB3YXZ5U3Ryb2tlUGFyYW1ldGVyczsKICAgICB9Owog
ICAgIHZvaWQgcGFpbnRGb3JlZ3JvdW5kRGVjb3JhdGlvbnMoY29uc3QgRm9yZWdyb3VuZERlY29y
YXRpb25HZW9tZXRyeSYsIGNvbnN0IFN0eWxlcyYpOwogCkBAIC04NSw4ICs5MSw2IEBAIHByaXZh
dGU6CiAgICAgY29uc3QgU2hhZG93RGF0YSogbV9zaGFkb3cgeyBudWxscHRyIH07CiAgICAgY29u
c3QgRmlsdGVyT3BlcmF0aW9ucyogbV9zaGFkb3dDb2xvckZpbHRlciB7IG51bGxwdHIgfTsKICAg
ICBjb25zdCBGb250Q2FzY2FkZSYgbV9mb250OwotCi0gICAgY29uc3QgUmVuZGVyU3R5bGUmIG1f
cmVuZGVyVGV4dFN0eWxlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvSW5saW5lVGV4dEJveFN0eWxlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL0lubGluZVRleHRCb3hTdHlsZS5jcHAKaW5kZXggM2IwMDliMzFlNDE5Li4w
MDI3NzgyNzZmOTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0lubGluZVRleHRC
b3hTdHlsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvSW5saW5lVGV4dEJveFN0eWxl
LmNwcApAQCAtMTg2LDcgKzE4Niw3IEBAIHN0YXRpYyBmbG9hdCBjb21wdXRlZFVuZGVybGluZU9m
ZnNldChjb25zdCBVbmRlcmxpbmVPZmZzZXRBcmd1bWVudHMmIGNvbnRleHQpCiAgICAgcmV0dXJu
IGNvbXB1dGVkVW5kZXJsaW5lT2Zmc2V0OwogfQogCi1XYXZ5U3Ryb2tlUGFyYW1ldGVycyBnZXRX
YXZ5U3Ryb2tlUGFyYW1ldGVycyhmbG9hdCBmb250U2l6ZSkKK1dhdnlTdHJva2VQYXJhbWV0ZXJz
IHdhdnlTdHJva2VQYXJhbWV0ZXJzKGZsb2F0IGZvbnRTaXplKQogewogICAgIFdhdnlTdHJva2VQ
YXJhbWV0ZXJzIHJlc3VsdDsKICAgICAvLyBNb3JlIGluZm9ybWF0aW9uIGlzIGluIHRoZSBXYXZ5
U3Ryb2tlUGFyYW1ldGVycyBkZWZpbml0aW9uLgpAQCAtMjE0LDcgKzIxNCw3IEBAIHN0YXRpYyBH
bHlwaE92ZXJmbG93IGNvbXB1dGVkVmlzdWFsT3ZlcmZsb3dGb3JEZWNvcmF0aW9ucyhjb25zdCBS
ZW5kZXJTdHlsZSYgbGluCiAgICAgR2x5cGhPdmVyZmxvdyBvdmVyZmxvd1Jlc3VsdDsKIAogICAg
IGlmIChkZWNvcmF0aW9uU3R5bGUgPT0gVGV4dERlY29yYXRpb25TdHlsZTo6V2F2eSkgewotICAg
ICAgICB3YXZ5U3Ryb2tlUGFyYW1ldGVycyA9IGdldFdhdnlTdHJva2VQYXJhbWV0ZXJzKGxpbmVT
dHlsZS5jb21wdXRlZEZvbnRQaXhlbFNpemUoKSk7CisgICAgICAgIHdhdnlTdHJva2VQYXJhbWV0
ZXJzID0gV2ViQ29yZTo6d2F2eVN0cm9rZVBhcmFtZXRlcnMobGluZVN0eWxlLmNvbXB1dGVkRm9u
dFBpeGVsU2l6ZSgpKTsKICAgICAgICAgd2F2eU9mZnNldCA9IHdhdnlPZmZzZXRGcm9tRGVjb3Jh
dGlvbigpOwogICAgICAgICBvdmVyZmxvd1Jlc3VsdC5sZWZ0ID0gc3Ryb2tlVGhpY2tuZXNzOwog
ICAgICAgICBvdmVyZmxvd1Jlc3VsdC5yaWdodCA9IHN0cm9rZVRoaWNrbmVzczsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0lubGluZVRleHRCb3hTdHlsZS5oIGIvU291cmNlL1dl
YkNvcmUvc3R5bGUvSW5saW5lVGV4dEJveFN0eWxlLmgKaW5kZXggZDYyNmNjNTcwN2E3Li43M2Ux
ZThjNWEwNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0lubGluZVRleHRCb3hT
dHlsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0lubGluZVRleHRCb3hTdHlsZS5oCkBA
IC01Myw3ICs1Myw3IEBAIHN0cnVjdCBXYXZ5U3Ryb2tlUGFyYW1ldGVycyB7CiAgICAgLy8gd2lk
ZXIgYXMgZm9udCBzaXplIGluY3JlYXNlcy4KICAgICBmbG9hdCBzdGVwIHsgMC5mIH07CiB9Owot
V2F2eVN0cm9rZVBhcmFtZXRlcnMgZ2V0V2F2eVN0cm9rZVBhcmFtZXRlcnMoZmxvYXQgZm9udFNp
emUpOworV2F2eVN0cm9rZVBhcmFtZXRlcnMgd2F2eVN0cm9rZVBhcmFtZXRlcnMoZmxvYXQgZm9u
dFNpemUpOwogCiBzdHJ1Y3QgVGV4dFVuZGVybGluZVBvc2l0aW9uVW5kZXIgewogICAgIGZsb2F0
IHRleHRSdW5Mb2dpY2FsSGVpZ2h0IHsgMC5mIH07Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>