<?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>232917</bug_id>
          
          <creation_ts>2021-11-09 17:21:43 -0800</creation_ts>
          <short_desc>[GPU Process] [iOS] Vertical text is incorrectly displaced</short_desc>
          <delta_ts>2022-04-20 15:12:52 -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>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=234171</see_also>
          <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>
          <dependson>232645</dependson>
          <blocked>239484</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Devin Rousso">hi</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>hi</cc>
    
    <cc>jonlee</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>sabouhallawa</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>1813434</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2021-11-09 17:21:43 -0800</bug_when>
    <thetext>.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1815739</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-11-16 17:22:21 -0800</bug_when>
    <thetext>&lt;rdar://problem/85483031&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1856709</commentid>
    <comment_count>2</comment_count>
      <attachid>456209</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2022-03-31 01:00:50 -0700</bug_when>
    <thetext>Created attachment 456209
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1856711</commentid>
    <comment_count>3</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2022-03-31 01:02:11 -0700</bug_when>
    <thetext>*** Bug 236907 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1856714</commentid>
    <comment_count>4</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2022-03-31 01:03:36 -0700</bug_when>
    <thetext>*** Bug 236908 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1856716</commentid>
    <comment_count>5</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2022-03-31 01:06:45 -0700</bug_when>
    <thetext>*** Bug 236911 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1856718</commentid>
    <comment_count>6</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2022-03-31 01:08:10 -0700</bug_when>
    <thetext>*** Bug 236916 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1856730</commentid>
    <comment_count>7</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2022-03-31 01:30:02 -0700</bug_when>
    <thetext>*** Bug 236921 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1856931</commentid>
    <comment_count>8</comment_count>
      <attachid>456209</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2022-03-31 13:02:01 -0700</bug_when>
    <thetext>Comment on attachment 456209
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=456209&amp;action=review

&gt; Source/WebCore/platform/graphics/coretext/DrawGlyphsRecorderCoreText.cpp:-260
&gt; -        // Keep this in sync as the inverse of `fillVectorWithVerticalGlyphPositions`.

I think I should keep this comment. The new code below does exactly what it says.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857033</commentid>
    <comment_count>9</comment_count>
      <attachid>456209</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-03-31 16:12:50 -0700</bug_when>
    <thetext>Comment on attachment 456209
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=456209&amp;action=review

r=me because this is a step in the right direction, but I think there&apos;s more work to make this function exactly equal to the inverse of fillVectorWithVerticalGlyphPositions().

&gt; Source/WebCore/platform/graphics/coretext/DrawGlyphsRecorderCoreText.cpp:259
&gt; +    auto position = textMatrix.mapPoint(positions[0]);

nit: a better name could be &quot;initialPenPosition&quot; or something

&gt;&gt; Source/WebCore/platform/graphics/coretext/DrawGlyphsRecorderCoreText.cpp:-260
&gt;&gt; -        // Keep this in sync as the inverse of `fillVectorWithVerticalGlyphPositions`.
&gt; 
&gt; I think I should keep this comment. The new code below does exactly what it says.

Agreed. It&apos;s important to keep the reference to fillVectorWithVerticalGlyphPositions().

&gt; Source/WebCore/platform/graphics/coretext/DrawGlyphsRecorderCoreText.cpp:271
&gt; +    m_owner.drawGlyphsAndCacheFont(font, glyphs, computeAdvancesFromPositions(positions, count, textMatrix).data(), count, position, m_smoothingMode);

This doesn&apos;t use rotateLeftTransform(). fillVectorWithVerticalGlyphPositions() does use rotateLeftTransform(), and this is supposed to be the inverse of that function. So I think there&apos;s more work that needs to be done here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857044</commentid>
    <comment_count>10</comment_count>
      <attachid>456209</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2022-03-31 17:01:01 -0700</bug_when>
    <thetext>Comment on attachment 456209
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=456209&amp;action=review

&gt;&gt; Source/WebCore/platform/graphics/coretext/DrawGlyphsRecorderCoreText.cpp:259
&gt;&gt; +    auto position = textMatrix.mapPoint(positions[0]);
&gt; 
&gt; nit: a better name could be &quot;initialPenPosition&quot; or something

The name was changed.

&gt;&gt;&gt; Source/WebCore/platform/graphics/coretext/DrawGlyphsRecorderCoreText.cpp:-260
&gt;&gt;&gt; -        // Keep this in sync as the inverse of `fillVectorWithVerticalGlyphPositions`.
&gt;&gt; 
&gt;&gt; I think I should keep this comment. The new code below does exactly what it says.
&gt; 
&gt; Agreed. It&apos;s important to keep the reference to fillVectorWithVerticalGlyphPositions().

The comment was put back.

&gt;&gt; Source/WebCore/platform/graphics/coretext/DrawGlyphsRecorderCoreText.cpp:271
&gt;&gt; +    m_owner.drawGlyphsAndCacheFont(font, glyphs, computeAdvancesFromPositions(positions, count, textMatrix).data(), count, position, m_smoothingMode);
&gt; 
&gt; This doesn&apos;t use rotateLeftTransform(). fillVectorWithVerticalGlyphPositions() does use rotateLeftTransform(), and this is supposed to be the inverse of that function. So I think there&apos;s more work that needs to be done here.

A FIXME comment was added.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857045</commentid>
    <comment_count>11</comment_count>
      <attachid>456297</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2022-03-31 17:02:41 -0700</bug_when>
    <thetext>Created attachment 456297
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857077</commentid>
    <comment_count>12</comment_count>
      <attachid>456301</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2022-03-31 17:57:50 -0700</bug_when>
    <thetext>Created attachment 456301
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857132</commentid>
    <comment_count>13</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-03-31 20:41:05 -0700</bug_when>
    <thetext>Committed r292198 (249101@main): &lt;https://commits.webkit.org/249101@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 456301.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1863086</commentid>
    <comment_count>14</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-04-20 15:12:44 -0700</bug_when>
    <thetext>Continuing work on this in https://bugs.webkit.org/show_bug.cgi?id=239484</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>456209</attachid>
            <date>2022-03-31 01:00:50 -0700</date>
            <delta_ts>2022-03-31 16:12:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232917-20220331010049.patch</filename>
            <type>text/plain</type>
            <size>9217</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkyMDc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWU2YTg0MDZjZTc4ZmM0
MmQ1NjhmODM1ZTI0MmMxYThlNWU0ODU5My4uMzQ0M2I4MDhkMGQ5ZWU2MzA5NjRjMGViN2ZiOTlh
NTU2ZTYxZjAwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDIyLTAzLTMxICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUgUHJvY2Vzc10g
W2lPU10gVmVydGljYWwgdGV4dCBpcyBpbmNvcnJlY3RseSBkaXNwbGFjZWQKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMjkxNworICAgICAgICByZGFy
Oi8vODU0ODMwMzEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBEcmF3R2x5cGhzUmVjb3JkZXIgY2FsbHMgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMoKSB3
aGljaCBjYWxscyBDb3JlVGV4dAorICAgICAgICB0byBkcmF3IHRoZSB2ZXJ0aWNhbCB0ZXh0IHRv
IGl0cyBpbnRlcm5hbCBjb250ZXh0LiBUaGlzIGludGVybmFsIGNvbnRleHQKKyAgICAgICAgaXMg
c2V0dXAgdG8gYmUgY2FsbGVkIGJhY2sgZm9yIGV2ZXJ5IHNpbmdsZSBydW4uIFdoZW4gQ29yZVRl
eHQgY2FsbHMKKyAgICAgICAgRHJhd0dseXBoc1JlY29yZGVyOjpyZWNvcmREcmF3R2x5cGhzKCks
IGl0IHJlY29yZHMgZHJhd2luZyB0aGUgZ2x5cGggcnVucworICAgICAgICBpbnRvIHRoZSBvd25l
ciByZWNvcmRlci4gVGhlIHByb2JsZW0gaXMgQ29yZVRleHQgcGFzc2VzIHRoZSB0cmFuc2Zvcm1l
ZAorICAgICAgICBwb3NpdGlvbnMgdG8gcmVjb3JkRHJhd0dseXBocygpLiBUbyBjYWxsIGRyYXdH
bHlwaHNBbmRDYWNoZUZvbnQoKSBpbiB0aGUKKyAgICAgICAgcmVjb3JkZXIgd2UgaGF2ZSB0byBw
YXNzIHRoZSB1bi10cmFuc2Zvcm1lZCBhbmNob3IgcG9pbnQuIFRvIGdldCB0aGlzIGFuY2hvcgor
ICAgICAgICBwb2ludCwgd2UgaGF2ZSB0byBhcHBseSB0aGUgaW52ZXJzZSBvZiBmaWxsVmVjdG9y
V2l0aFZlcnRpY2FsR2x5cGhQb3NpdGlvbnMoKQorICAgICAgICB0byB0aGUgZmlyc3QgdHJhbnNm
b3JtZWQgcG9zaXRpb24uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0Nv
bnRleHQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9EcmF3R2x5cGhz
UmVjb3JkZXJDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEcmF3R2x5cGhzUmVjb3Jk
ZXI6OnJlY29yZERyYXdHbHlwaHMpOgorCiAyMDIyLTAzLTI5ICBNYXR0IFdvb2Ryb3cgIDxtYXR0
d29vZHJvd0BhcHBsZS5jb20+CiAKICAgICAgICAgRG9uJ3QgbXV0YXRlIGNoaWxkcmVuIGR1cmlu
ZyBSZW5kZXJHcmlkOjpjb21wdXRlSW50cmluc2ljTG9naWNhbFdpZHRocyB1bmxlc3Mgd2UncmUg
YWJvdXQgdG8gcmUtbGF5b3V0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9HcmFwaGljc0NvbnRleHQuaAppbmRleCBkMzQ0ZDU5ZmI0MTFmNGYxYTZiZDQwNGI4OGJm
Y2U5MjVjZTQ3M2E4Li5mNGM3YTg3ZWMxZGIzNDhjYjM1NGQ5ZTQzNTJiY2U2MjdjNjE2ZDdlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRl
eHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRl
eHQuaApAQCAtNTEsMTYgKzUxLDExIEBAIGNsYXNzIEZsb2F0Um91bmRlZFJlY3Q7CiBjbGFzcyBH
cmFkaWVudDsKIGNsYXNzIEdyYXBoaWNzQ29udGV4dFBsYXRmb3JtUHJpdmF0ZTsKIGNsYXNzIElt
YWdlQnVmZmVyOwotY2xhc3MgSW50UmVjdDsKIGNsYXNzIE1lZGlhUGxheWVyOwotY2xhc3MgUm91
bmRlZFJlY3Q7CiBjbGFzcyBHcmFwaGljc0NvbnRleHRHTDsKIGNsYXNzIFBhdGg7CiBjbGFzcyBT
eXN0ZW1JbWFnZTsKIGNsYXNzIFRleHRSdW47Ci1jbGFzcyBUcmFuc2Zvcm1hdGlvbk1hdHJpeDsK
LQotc3RydWN0IEdyYXBoaWNzQ29udGV4dFN0YXRlQ2hhbmdlOwogCiBjbGFzcyBHcmFwaGljc0Nv
bnRleHQgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEdyYXBoaWNzQ29udGV4dCk7IFdURl9N
QUtFX0ZBU1RfQUxMT0NBVEVEOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29yZXRleHQvRHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRHJhd0dseXBoc1JlY29yZGVyQ29y
ZVRleHQuY3BwCmluZGV4IGExYWVmZDA3MDJmYWQ0N2Y5MTlkYmE4MmY2MjM1NmYyMDUxNTU1ODYu
Ljg4NGJmNjI5N2U5OTZkMDVjNmIyZjM5NjBmZmI3NDk1ODBjYjUyODkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0RyYXdHbHlwaHNSZWNvcmRl
ckNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3Jl
dGV4dC9EcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKQEAgLTI1NiwxMiArMjU2LDE5IEBA
IHZvaWQgRHJhd0dseXBoc1JlY29yZGVyOjpyZWNvcmREcmF3R2x5cGhzKENHUmVuZGVyaW5nU3Rh
dGVSZWYsIENHR1N0YXRlUmVmIGdzdGF0CiAgICAgLy8gYEZvbnRDYXNjYWRlOjpkcmF3R2x5cGhz
YCB3ZSBuZWVkIHRvIHJlY2FsY3VsYXRlIHRoZSBvcmlnaW5hbCBhZHZhbmNlcyBmcm9tIHRoZSBy
ZXN1bHRpbmcKICAgICAvLyBwb3NpdGlvbnMgYnkgaW52ZXJ0aW5nIHRoZSBvcGVyYXRpb25zIGFw
cGxpZWQgdG8gdGhlIG9yaWdpbmFsIGFkdmFuY2VzLgogICAgIGF1dG8gdGV4dE1hdHJpeCA9IG1f
b3JpZ2luYWxUZXh0TWF0cml4OworICAgIGF1dG8gcG9zaXRpb24gPSB0ZXh0TWF0cml4Lm1hcFBv
aW50KHBvc2l0aW9uc1swXSk7CisKICAgICBpZiAoZm9udC0+cGxhdGZvcm1EYXRhKCkub3JpZW50
YXRpb24oKSA9PSBGb250T3JpZW50YXRpb246OlZlcnRpY2FsKSB7Ci0gICAgICAgIC8vIEtlZXAg
dGhpcyBpbiBzeW5jIGFzIHRoZSBpbnZlcnNlIG9mIGBmaWxsVmVjdG9yV2l0aFZlcnRpY2FsR2x5
cGhQb3NpdGlvbnNgLgotICAgICAgICAvLyBGSVhNRTogPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzIz
MjkxNz4gKGBEcmF3R2x5cGhzUmVjb3JkZXJgIHNob3VsZCBiZSBhYmxlIHRvIHJlY29yZCtyZXBs
YXkgdmVydGljYWwgdGV4dCkKKyAgICAgICAgQ0dTaXplIHRyYW5zbGF0aW9uOworICAgICAgICBD
VEZvbnRHZXRWZXJ0aWNhbFRyYW5zbGF0aW9uc0ZvckdseXBocyhmb250LT5wbGF0Zm9ybURhdGEo
KS5jdEZvbnQoKSwgZ2x5cGhzLCAmdHJhbnNsYXRpb24sIDEpOworCisgICAgICAgIHBvc2l0aW9u
ICs9IEZsb2F0U2l6ZSh0cmFuc2xhdGlvbikudHJhbnNwb3NlZFNpemUoKTsKKworICAgICAgICBh
dXRvIGFzY2VudERlbHRhID0gZm9udC0+Zm9udE1ldHJpY3MoKS5mbG9hdEFzY2VudChJZGVvZ3Jh
cGhpY0Jhc2VsaW5lKSAtIGZvbnQtPmZvbnRNZXRyaWNzKCkuZmxvYXRBc2NlbnQoKTsKKyAgICAg
ICAgcG9zaXRpb24ubW92ZSgwLCAtYXNjZW50RGVsdGEpOwogICAgIH0KIAotICAgIG1fb3duZXIu
ZHJhd0dseXBoc0FuZENhY2hlRm9udChmb250LCBnbHlwaHMsIGNvbXB1dGVBZHZhbmNlc0Zyb21Q
b3NpdGlvbnMocG9zaXRpb25zLCBjb3VudCwgdGV4dE1hdHJpeCkuZGF0YSgpLCBjb3VudCwgdGV4
dE1hdHJpeC5tYXBQb2ludChwb3NpdGlvbnNbMF0pLCBtX3Ntb290aGluZ01vZGUpOworICAgIG1f
b3duZXIuZHJhd0dseXBoc0FuZENhY2hlRm9udChmb250LCBnbHlwaHMsIGNvbXB1dGVBZHZhbmNl
c0Zyb21Qb3NpdGlvbnMocG9zaXRpb25zLCBjb3VudCwgdGV4dE1hdHJpeCkuZGF0YSgpLCBjb3Vu
dCwgcG9zaXRpb24sIG1fc21vb3RoaW5nTW9kZSk7CiAKICAgICBtX293bmVyLmNvbmNhdENUTShp
bnZlcnNlQ1RNRml4dXApOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGM4NDUxMjgxMzM4NTRlNWU1OWUzNGRkMDc5MmM3
ZWUxOWIzMTk2NzQuLjgwYWYzMWU4NmMyMjNjMjQyNmE3NGVhZWM1ODk2ZThjNzYwNDE4NjUgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMi0wMy0zMSAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWlk
QGFwcGxlLmNvbT4KKworICAgICAgICBbR1BVIFByb2Nlc3NdIFtpT1NdIFZlcnRpY2FsIHRleHQg
aXMgaW5jb3JyZWN0bHkgZGlzcGxhY2VkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzI5MTcKKyAgICAgICAgcmRhcjovLzg1NDgzMDMxCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVW5za2lwIGZhaWxlZCB2
ZXJ0aWNhbCB0ZXh0IGxheW91dCB0ZXN0cy4KKworICAgICAgICAqIHBsYXRmb3JtL2lvcy13azIv
VGVzdEV4cGVjdGF0aW9uczoKKwogMjAyMi0wMy0yOSAgTWF0dCBXb29kcm93ICA8bWF0dHdvb2Ry
b3dAYXBwbGUuY29tPgogCiAgICAgICAgIERvbid0IG11dGF0ZSBjaGlsZHJlbiBkdXJpbmcgUmVu
ZGVyR3JpZDo6Y29tcHV0ZUludHJpbnNpY0xvZ2ljYWxXaWR0aHMgdW5sZXNzIHdlJ3JlIGFib3V0
IHRvIHJlLWxheW91dC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIv
VGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvVGVzdEV4cGVj
dGF0aW9ucwppbmRleCA5N2VjOWM4MDc3Yzg3MGM3MTc4NzI4MDAxYzU1N2FkMzEzNWJjMjM2Li5j
OGRlMjYyN2Q1OGYzMDU3NDkxYWI0NTFhODFhZWI5ZjBkYzg5NDFiIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vaW9zLXdrMi9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMjA1LDIzICsyMjA1LDEy
IEBAIGh0dHAvd3B0L2h0bWwvc2VtYW50aWNzL3RleHQtbGV2ZWwtc2VtYW50aWNzL3RoZS1hLWVs
ZW1lbnQvYS1kb3dubG9hZC1jbGljay00MDQuCiAjIFRlc3QgZmFpbHVyZXMgZnJvbSB0dXJuaW5n
IEdQVSBQcm9jZXNzIG9uIGJ5IGRlZmF1bHQKIHdlYmtpdC5vcmcvYi8yMzQ1MzYgd2VieHIvaGln
aC1wZXJmb3JtYW5jZS5odG1sIFsgRmFpbHVyZSBdCiAKLSMgVGhlcmUgaXMgdGV4dCBpbi9uZWFy
IHRoZSBib3gKLXdlYmtpdC5vcmcvYi8yMzY5MDcgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWZsZXhib3gvY3NzLWZsZXhib3gtdGVzdDEuaHRtbCBbIEltYWdlT25seUZh
aWx1cmUgXQotCi0jIE1pc3BsYWNlZCB0ZXh0Ci13ZWJraXQub3JnL2IvMjM2OTA4IGZhc3QvdGV4
dC9jamstbXVsdGktY29kZXBvaW50LWNsdXN0ZXItdmVydGljYWwuaHRtbCBbIEltYWdlT25seUZh
aWx1cmUgXQotd2Via2l0Lm9yZy9iLzIzNjkwOCBmYXN0L3RleHQvbXVsdGlwbGUtY29kZXVuaXQt
dmVydGljYWwtdXByaWdodC0yLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcv
Yi8yMzY5MDggZmFzdC90ZXh0L211bHRpcGxlLWNvZGV1bml0LXZlcnRpY2FsLXVwcmlnaHQuaHRt
bCBbIEltYWdlT25seUZhaWx1cmUgXQotCiAjIFRleHQgZGVjb3JhdGlvbiBmYWlsdXJlcwogd2Vi
a2l0Lm9yZy9iLzIzNjkwOSBmYXN0L2NzczMtdGV4dC9jc3MzLXRleHQtZGVjb3JhdGlvbi90ZXh0
LWRlY29yYXRpb24tZGFzaGVkLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcv
Yi8yMzY5MDkgZmFzdC9jc3MzLXRleHQvY3NzMy10ZXh0LWRlY29yYXRpb24vdGV4dC1kZWNvcmF0
aW9uLWRvdHRlZC1kYXNoZWQuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogd2Via2l0Lm9yZy9i
LzIzNjkwOSBmYXN0L2NzczMtdGV4dC9jc3MzLXRleHQtZGVjb3JhdGlvbi90ZXh0LWRlY29yYXRp
b24tZG90dGVkLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8yMzY5MDkg
ZmFzdC9jc3MzLXRleHQvY3NzMy10ZXh0LWRlY29yYXRpb24vdGV4dC11bmRlcmxpbmUtc3R5bGUu
aHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogCi0jIFJlZCB0ZXh0IHBva2VzIG91dAotd2Via2l0
Lm9yZy9iLzIzNjkxMSBmYXN0L3RleHQvaW50ZXJuYXRpb25hbC9zeW50aGVzaXplZC1pdGFsaWMt
dmVydGljYWwuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotCiAjIE5vdCBzdXJlIGlmIHRoZSBv
cmFuZ2UgbGluZSBkaWZmIGlzIG5lZ2xpZ2libGUgb3IgaW1wb3J0YW50CiB3ZWJraXQub3JnL2Iv
MjM2OTEyIGh0dHAvd3B0L2Nzcy9jc3MtaGlnaGxpZ2h0LWFwaS9oaWdobGlnaHQtdGV4dC1kZWNv
cmF0aW9ucy5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiAKQEAgLTIyMjksMjcgKzIyMTgsNiBA
QCB3ZWJraXQub3JnL2IvMjM2OTEyIGh0dHAvd3B0L2Nzcy9jc3MtaGlnaGxpZ2h0LWFwaS9oaWdo
bGlnaHQtdGV4dC1kZWNvcmF0aW9ucy5odAogd2Via2l0Lm9yZy9iLzIzNjkxMyBmYXN0L2Nzcy92
YXJpYWJsZXMvdGVzdC1zdWl0ZS8wMDUuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgUGFzcyBdCiB3
ZWJraXQub3JnL2IvMjM2OTEzIGltcG9ydGVkL2JsaW5rL2Zhc3QvbXVsdGljb2wvdmVydGljYWwt
bHIvZmxvYXQtY29udGVudC1icmVhay5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiAKLSMgVGhl
cmUgYXJlIHNtYWxsIHJlY3RhbmdsZXMgb3IgY2hhcmFjdGVycyBiZWxvdyBtYWluIGNoYXJhY3Rl
cgotd2Via2l0Lm9yZy9iLzIzNjkxNiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtdmFsdWVzL2NoLXVuaXQtMDExLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtp
dC5vcmcvYi8yMzY5MTYgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZh
bHVlcy9pYy11bml0LTAwMi5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2Iv
MjM2OTE2IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy12YWx1ZXMvaWMt
dW5pdC0wMDMuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzIzNjkxNiBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdmFsdWVzL2ljLXVuaXQtMDA5
Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMzY5MTYgaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9pYy11bml0LTAxMC5odG1sIFsg
SW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjM2OTE2IGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy12YWx1ZXMvaWMtdW5pdC0wMTEuaHRtbCBbIEltYWdlT25s
eUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzIzNjkxNiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtdmFsdWVzL2ljLXVuaXQtMDEyLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJl
IF0KLQotIyBXcml0aW5nIG1vZGUgZmFpbHVyZXMKLXdlYmtpdC5vcmcvYi8yMzY5MjEgaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXdyaXRpbmctbW9kZXMvY2VudHJhbC1i
YXNlbGluZS1hbGlnbm1lbnQtMDAyLnhodCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9y
Zy9iLzIzNjkyMSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mtd3JpdGlu
Zy1tb2Rlcy9pbmxpbmUtYmxvY2stYWxpZ25tZW50LTAwNC54aHQgWyBJbWFnZU9ubHlGYWlsdXJl
IF0KLXdlYmtpdC5vcmcvYi8yMzY5MjEgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLXdyaXRpbmctbW9kZXMvaW5saW5lLWJsb2NrLWFsaWdubWVudC1vcnRob2dvbmFsLXZs
ci0wMDUueGh0IFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjM2OTIxIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy13cml0aW5nLW1vZGVzL2lubGluZS1i
bG9jay1hbGlnbm1lbnQtb3J0aG9nb25hbC12cmwtMDA0LnhodCBbIEltYWdlT25seUZhaWx1cmUg
XQotd2Via2l0Lm9yZy9iLzIzNjkyMSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3Mtd3JpdGluZy1tb2Rlcy9pbmxpbmUtdGFibGUtYWxpZ25tZW50LTAwNC54aHQgWyBJbWFn
ZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMzY5MjEgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLXdyaXRpbmctbW9kZXMvdGV4dC1iYXNlbGluZS12bHItMDA1Lnho
dCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzIzNjkyMSBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mtd3JpdGluZy1tb2Rlcy90ZXh0LWJhc2VsaW5lLXZy
bC0wMDQueGh0IFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjM2OTIxIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy13cml0aW5nLW1vZGVzL3RleHQtc2hh
ZG93LW9yaWVudGF0aW9uLXVwcmlnaHQtMDAxLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdl
YmtpdC5vcmcvYi8yMzY5MjEgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LXdyaXRpbmctbW9kZXMvdmVydGljYWwtYWxpZ25tZW50LXZsci0wMjMueGh0IFsgSW1hZ2VPbmx5
RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjM2OTIxIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy13cml0aW5nLW1vZGVzL3ZlcnRpY2FsLWFsaWdubWVudC12cmwtMDIyLnho
dCBbIEltYWdlT25seUZhaWx1cmUgXQotCiAjIE5vL2JhZCBjb2xvcmVkIGJveGVzCiB3ZWJraXQu
b3JnL2IvMjM2OTIzIGZhc3QvY3NzL3BhaW50LW9yZGVyLXNoYWRvdy5odG1sIFsgSW1hZ2VPbmx5
RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMjM2OTIzIGltcG9ydGVkL2JsaW5rL3N2Zy90ZXh0L29i
Yi1wYWludHNlcnZlci5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCg==
</data>
<flag name="review"
          id="484501"
          type_id="1"
          status="+"
          setter="mmaxfield"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>456297</attachid>
            <date>2022-03-31 17:02:41 -0700</date>
            <delta_ts>2022-03-31 17:58:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232917-20220331170240.patch</filename>
            <type>text/plain</type>
            <size>9260</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkyMTg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODdlYTMwN2JmY2NmYzVj
ZTYxZmFjMDE5NTExMmE3YTQ1YmVjN2JiNi4uODU1YWEyZWY0MDg2NzhjY2MwYjYxNTRhZTBhNDNi
MWYwZDY1MmEzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDIyLTAzLTMxICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUgUHJvY2Vzc10g
W2lPU10gVmVydGljYWwgdGV4dCBpcyBpbmNvcnJlY3RseSBkaXNwbGFjZWQKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMjkxNworICAgICAgICByZGFy
Oi8vODU0ODMwMzEKKworICAgICAgICBSZXZpZXdlZCBieSBNeWxlcyBDLiBNYXhmaWVsZC4KKwor
ICAgICAgICBEcmF3R2x5cGhzUmVjb3JkZXIgY2FsbHMgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMo
KSB3aGljaCBjYWxscyBDb3JlVGV4dAorICAgICAgICB0byBkcmF3IHRoZSB2ZXJ0aWNhbCB0ZXh0
IHRvIGl0cyBpbnRlcm5hbCBjb250ZXh0LiBUaGlzIGludGVybmFsIGNvbnRleHQKKyAgICAgICAg
aXMgc2V0dXAgdG8gYmUgY2FsbGVkIGJhY2sgZm9yIGV2ZXJ5IHNpbmdsZSBydW4uIFdoZW4gQ29y
ZVRleHQgY2FsbHMKKyAgICAgICAgRHJhd0dseXBoc1JlY29yZGVyOjpyZWNvcmREcmF3R2x5cGhz
KCksIGl0IHJlY29yZHMgZHJhd2luZyB0aGUgZ2x5cGggcnVucworICAgICAgICBpbnRvIHRoZSBv
d25lciByZWNvcmRlci4gVGhlIHByb2JsZW0gaXMgQ29yZVRleHQgcGFzc2VzIHRoZSB0cmFuc2Zv
cm1lZAorICAgICAgICBwb3NpdGlvbnMgdG8gcmVjb3JkRHJhd0dseXBocygpLiBUbyBjYWxsIGRy
YXdHbHlwaHNBbmRDYWNoZUZvbnQoKSBpbiB0aGUKKyAgICAgICAgcmVjb3JkZXIgd2UgaGF2ZSB0
byBwYXNzIHRoZSB1bi10cmFuc2Zvcm1lZCBhbmNob3IgcG9pbnQuIFRvIGdldCB0aGlzIGFuY2hv
cgorICAgICAgICBwb2ludCwgd2UgaGF2ZSB0byBhcHBseSB0aGUgaW52ZXJzZSBvZiBmaWxsVmVj
dG9yV2l0aFZlcnRpY2FsR2x5cGhQb3NpdGlvbnMoKQorICAgICAgICB0byB0aGUgZmlyc3QgdHJh
bnNmb3JtZWQgcG9zaXRpb24uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGlj
c0NvbnRleHQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9EcmF3R2x5
cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEcmF3R2x5cGhzUmVj
b3JkZXI6OnJlY29yZERyYXdHbHlwaHMpOgorCiAyMDIyLTAzLTMxICBQYXRyaWNrIEFuZ2xlICA8
cGFuZ2xlQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBTdXBwb3J0IENvbnRh
aW5lciBRdWVyaWVzIGluIHRoZSBTdHlsZXMgc2lkZWJhcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0LmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuaAppbmRleCBkMzQ0ZDU5ZmI0MTFm
NGYxYTZiZDQwNGI4OGJmY2U5MjVjZTQ3M2E4Li5mNGM3YTg3ZWMxZGIzNDhjYjM1NGQ5ZTQzNTJi
Y2U2MjdjNjE2ZDdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9HcmFwaGljc0NvbnRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9HcmFwaGljc0NvbnRleHQuaApAQCAtNTEsMTYgKzUxLDExIEBAIGNsYXNzIEZsb2F0Um91bmRl
ZFJlY3Q7CiBjbGFzcyBHcmFkaWVudDsKIGNsYXNzIEdyYXBoaWNzQ29udGV4dFBsYXRmb3JtUHJp
dmF0ZTsKIGNsYXNzIEltYWdlQnVmZmVyOwotY2xhc3MgSW50UmVjdDsKIGNsYXNzIE1lZGlhUGxh
eWVyOwotY2xhc3MgUm91bmRlZFJlY3Q7CiBjbGFzcyBHcmFwaGljc0NvbnRleHRHTDsKIGNsYXNz
IFBhdGg7CiBjbGFzcyBTeXN0ZW1JbWFnZTsKIGNsYXNzIFRleHRSdW47Ci1jbGFzcyBUcmFuc2Zv
cm1hdGlvbk1hdHJpeDsKLQotc3RydWN0IEdyYXBoaWNzQ29udGV4dFN0YXRlQ2hhbmdlOwogCiBj
bGFzcyBHcmFwaGljc0NvbnRleHQgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEdyYXBoaWNz
Q29udGV4dCk7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRHJhd0dseXBoc1JlY29yZGVyQ29yZVRl
eHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRHJhd0ds
eXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCmluZGV4IGExYWVmZDA3MDJmYWQ0N2Y5MTlkYmE4MmY2
MjM1NmYyMDUxNTU1ODYuLjk1YjA4MWI5NjdmOWYzNjA4ODY2OTY5OWU4ZjhmMGQ4MDE4MzA3YjUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0Ry
YXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jb3JldGV4dC9EcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHAKQEAgLTI1
NiwxMiArMjU2LDIxIEBAIHZvaWQgRHJhd0dseXBoc1JlY29yZGVyOjpyZWNvcmREcmF3R2x5cGhz
KENHUmVuZGVyaW5nU3RhdGVSZWYsIENHR1N0YXRlUmVmIGdzdGF0CiAgICAgLy8gYEZvbnRDYXNj
YWRlOjpkcmF3R2x5cGhzYCB3ZSBuZWVkIHRvIHJlY2FsY3VsYXRlIHRoZSBvcmlnaW5hbCBhZHZh
bmNlcyBmcm9tIHRoZSByZXN1bHRpbmcKICAgICAvLyBwb3NpdGlvbnMgYnkgaW52ZXJ0aW5nIHRo
ZSBvcGVyYXRpb25zIGFwcGxpZWQgdG8gdGhlIG9yaWdpbmFsIGFkdmFuY2VzLgogICAgIGF1dG8g
dGV4dE1hdHJpeCA9IG1fb3JpZ2luYWxUZXh0TWF0cml4OworICAgIGF1dG8gaW5pdGlhbFBlblBv
c2l0aW9uID0gdGV4dE1hdHJpeC5tYXBQb2ludChwb3NpdGlvbnNbMF0pOworCiAgICAgaWYgKGZv
bnQtPnBsYXRmb3JtRGF0YSgpLm9yaWVudGF0aW9uKCkgPT0gRm9udE9yaWVudGF0aW9uOjpWZXJ0
aWNhbCkgewogICAgICAgICAvLyBLZWVwIHRoaXMgaW4gc3luYyBhcyB0aGUgaW52ZXJzZSBvZiBg
ZmlsbFZlY3RvcldpdGhWZXJ0aWNhbEdseXBoUG9zaXRpb25zYC4KLSAgICAgICAgLy8gRklYTUU6
IDxodHRwczovL3dlYmtpdC5vcmcvYi8yMzI5MTc+IChgRHJhd0dseXBoc1JlY29yZGVyYCBzaG91
bGQgYmUgYWJsZSB0byByZWNvcmQrcmVwbGF5IHZlcnRpY2FsIHRleHQpCisgICAgICAgIC8vIEZJ
WE1FOiBVc2Ugcm90YXRlTGVmdFRyYW5zZm9ybSgpLCBhcyBmaWxsVmVjdG9yV2l0aFZlcnRpY2Fs
R2x5cGhQb3NpdGlvbnMoKSBkb2VzLCBpbnN0ZWFkIG9mIHVzaW5nIHRyYW5zcG9zZWRTaXplKCku
CisgICAgICAgIENHU2l6ZSB0cmFuc2xhdGlvbjsKKyAgICAgICAgQ1RGb250R2V0VmVydGljYWxU
cmFuc2xhdGlvbnNGb3JHbHlwaHMoZm9udC0+cGxhdGZvcm1EYXRhKCkuY3RGb250KCksIGdseXBo
cywgJnRyYW5zbGF0aW9uLCAxKTsKKworICAgICAgICBpbml0aWFsUGVuUG9zaXRpb24gKz0gRmxv
YXRTaXplKHRyYW5zbGF0aW9uKS50cmFuc3Bvc2VkU2l6ZSgpOworCisgICAgICAgIGF1dG8gYXNj
ZW50RGVsdGEgPSBmb250LT5mb250TWV0cmljcygpLmZsb2F0QXNjZW50KElkZW9ncmFwaGljQmFz
ZWxpbmUpIC0gZm9udC0+Zm9udE1ldHJpY3MoKS5mbG9hdEFzY2VudCgpOworICAgICAgICBpbml0
aWFsUGVuUG9zaXRpb24ubW92ZSgwLCAtYXNjZW50RGVsdGEpOwogICAgIH0KIAotICAgIG1fb3du
ZXIuZHJhd0dseXBoc0FuZENhY2hlRm9udChmb250LCBnbHlwaHMsIGNvbXB1dGVBZHZhbmNlc0Zy
b21Qb3NpdGlvbnMocG9zaXRpb25zLCBjb3VudCwgdGV4dE1hdHJpeCkuZGF0YSgpLCBjb3VudCwg
dGV4dE1hdHJpeC5tYXBQb2ludChwb3NpdGlvbnNbMF0pLCBtX3Ntb290aGluZ01vZGUpOworICAg
IG1fb3duZXIuZHJhd0dseXBoc0FuZENhY2hlRm9udChmb250LCBnbHlwaHMsIGNvbXB1dGVBZHZh
bmNlc0Zyb21Qb3NpdGlvbnMocG9zaXRpb25zLCBjb3VudCwgdGV4dE1hdHJpeCkuZGF0YSgpLCBj
b3VudCwgaW5pdGlhbFBlblBvc2l0aW9uLCBtX3Ntb290aGluZ01vZGUpOwogCiAgICAgbV9vd25l
ci5jb25jYXRDVE0oaW52ZXJzZUNUTUZpeHVwKTsKIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAyMDRlMjgxMTE5ZTE5MGU1
MGNiMzEzZjc3NmJlZjlhMzNmY2FhODhjLi5hNGU3MjQ5YmZkYWMxMzQzZGE5YzgzMDFkNjlmMjli
MzQ4YzZkZWMyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjItMDMtMzEgIFNhaWQgQWJvdS1I
YWxsYXdhICA8c2FpZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQcm9jZXNzXSBbaU9TXSBW
ZXJ0aWNhbCB0ZXh0IGlzIGluY29ycmVjdGx5IGRpc3BsYWNlZAorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMyOTE3CisgICAgICAgIHJkYXI6Ly84NTQ4
MzAzMQorCisgICAgICAgIFJldmlld2VkIGJ5IE15bGVzIEMuIE1heGZpZWxkLgorCisgICAgICAg
IFVuc2tpcCBmYWlsZWQgdmVydGljYWwgdGV4dCBsYXlvdXQgdGVzdHMuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMjItMDMtMzEgIEpvbiBMZWUg
IDxqb25sZWVAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgdGVzdCBnYXJkZW5pbmcu
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlv
bnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXgg
ZTk1MmQyNDI0M2Q3Zjg4ZmY1MWU2ZjhiNDA4ODgwYjBmNGM1MThjZS4uMDcwYWVmM2IwNzg0ODcy
ODhlMzZjNTU3MThjZmNkOGU5ZjkyZjA3MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vaW9zLXdrMi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lv
cy13azIvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjIwNywyMyArMjIwNywxMiBAQCBodHRwL3dwdC9o
dG1sL3NlbWFudGljcy90ZXh0LWxldmVsLXNlbWFudGljcy90aGUtYS1lbGVtZW50L2EtZG93bmxv
YWQtY2xpY2stNDA0LgogIyBUZXN0IGZhaWx1cmVzIGZyb20gdHVybmluZyBHUFUgUHJvY2VzcyBv
biBieSBkZWZhdWx0CiB3ZWJraXQub3JnL2IvMjM0NTM2IHdlYnhyL2hpZ2gtcGVyZm9ybWFuY2Uu
aHRtbCBbIEZhaWx1cmUgXQogCi0jIFRoZXJlIGlzIHRleHQgaW4vbmVhciB0aGUgYm94Ci13ZWJr
aXQub3JnL2IvMjM2OTA3IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1m
bGV4Ym94L2Nzcy1mbGV4Ym94LXRlc3QxLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLQotIyBN
aXNwbGFjZWQgdGV4dAotd2Via2l0Lm9yZy9iLzIzNjkwOCBmYXN0L3RleHQvY2prLW11bHRpLWNv
ZGVwb2ludC1jbHVzdGVyLXZlcnRpY2FsLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtp
dC5vcmcvYi8yMzY5MDggZmFzdC90ZXh0L211bHRpcGxlLWNvZGV1bml0LXZlcnRpY2FsLXVwcmln
aHQtMi5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjM2OTA4IGZhc3Qv
dGV4dC9tdWx0aXBsZS1jb2RldW5pdC12ZXJ0aWNhbC11cHJpZ2h0Lmh0bWwgWyBJbWFnZU9ubHlG
YWlsdXJlIF0KLQogIyBUZXh0IGRlY29yYXRpb24gZmFpbHVyZXMKIHdlYmtpdC5vcmcvYi8yMzY5
MDkgZmFzdC9jc3MzLXRleHQvY3NzMy10ZXh0LWRlY29yYXRpb24vdGV4dC1kZWNvcmF0aW9uLWRh
c2hlZC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMjM2OTA5IGZhc3Qv
Y3NzMy10ZXh0L2NzczMtdGV4dC1kZWNvcmF0aW9uL3RleHQtZGVjb3JhdGlvbi1kb3R0ZWQtZGFz
aGVkLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8yMzY5MDkgZmFzdC9j
c3MzLXRleHQvY3NzMy10ZXh0LWRlY29yYXRpb24vdGV4dC1kZWNvcmF0aW9uLWRvdHRlZC5odG1s
IFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMjM2OTA5IGZhc3QvY3NzMy10ZXh0
L2NzczMtdGV4dC1kZWNvcmF0aW9uL3RleHQtdW5kZXJsaW5lLXN0eWxlLmh0bWwgWyBJbWFnZU9u
bHlGYWlsdXJlIF0KIAotIyBSZWQgdGV4dCBwb2tlcyBvdXQKLXdlYmtpdC5vcmcvYi8yMzY5MTEg
ZmFzdC90ZXh0L2ludGVybmF0aW9uYWwvc3ludGhlc2l6ZWQtaXRhbGljLXZlcnRpY2FsLmh0bWwg
WyBJbWFnZU9ubHlGYWlsdXJlIF0KLQogIyBOb3Qgc3VyZSBpZiB0aGUgb3JhbmdlIGxpbmUgZGlm
ZiBpcyBuZWdsaWdpYmxlIG9yIGltcG9ydGFudAogd2Via2l0Lm9yZy9iLzIzNjkxMiBodHRwL3dw
dC9jc3MvY3NzLWhpZ2hsaWdodC1hcGkvaGlnaGxpZ2h0LXRleHQtZGVjb3JhdGlvbnMuaHRtbCBb
IEltYWdlT25seUZhaWx1cmUgXQogCkBAIC0yMjMxLDI3ICsyMjIwLDYgQEAgd2Via2l0Lm9yZy9i
LzIzNjkxMiBodHRwL3dwdC9jc3MvY3NzLWhpZ2hsaWdodC1hcGkvaGlnaGxpZ2h0LXRleHQtZGVj
b3JhdGlvbnMuaHQKIHdlYmtpdC5vcmcvYi8yMzY5MTMgZmFzdC9jc3MvdmFyaWFibGVzL3Rlc3Qt
c3VpdGUvMDA1Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIFBhc3MgXQogd2Via2l0Lm9yZy9iLzIz
NjkxMyBpbXBvcnRlZC9ibGluay9mYXN0L211bHRpY29sL3ZlcnRpY2FsLWxyL2Zsb2F0LWNvbnRl
bnQtYnJlYWsuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogCi0jIFRoZXJlIGFyZSBzbWFsbCBy
ZWN0YW5nbGVzIG9yIGNoYXJhY3RlcnMgYmVsb3cgbWFpbiBjaGFyYWN0ZXIKLXdlYmtpdC5vcmcv
Yi8yMzY5MTYgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9j
aC11bml0LTAxMS5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjM2OTE2
IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy12YWx1ZXMvaWMtdW5pdC0w
MDIuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzIzNjkxNiBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdmFsdWVzL2ljLXVuaXQtMDAzLmh0bWwg
WyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMzY5MTYgaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9pYy11bml0LTAwOS5odG1sIFsgSW1hZ2VP
bmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjM2OTE2IGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy12YWx1ZXMvaWMtdW5pdC0wMTAuaHRtbCBbIEltYWdlT25seUZhaWx1
cmUgXQotd2Via2l0Lm9yZy9iLzIzNjkxNiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtdmFsdWVzL2ljLXVuaXQtMDExLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdl
YmtpdC5vcmcvYi8yMzY5MTYgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LXZhbHVlcy9pYy11bml0LTAxMi5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi0KLSMgV3JpdGlu
ZyBtb2RlIGZhaWx1cmVzCi13ZWJraXQub3JnL2IvMjM2OTIxIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy13cml0aW5nLW1vZGVzL2NlbnRyYWwtYmFzZWxpbmUtYWxpZ25t
ZW50LTAwMi54aHQgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMzY5MjEgaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXdyaXRpbmctbW9kZXMvaW5saW5l
LWJsb2NrLWFsaWdubWVudC0wMDQueGh0IFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3Jn
L2IvMjM2OTIxIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy13cml0aW5n
LW1vZGVzL2lubGluZS1ibG9jay1hbGlnbm1lbnQtb3J0aG9nb25hbC12bHItMDA1LnhodCBbIElt
YWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzIzNjkyMSBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3Mtd3JpdGluZy1tb2Rlcy9pbmxpbmUtYmxvY2stYWxpZ25tZW50
LW9ydGhvZ29uYWwtdnJsLTAwNC54aHQgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcv
Yi8yMzY5MjEgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXdyaXRpbmct
bW9kZXMvaW5saW5lLXRhYmxlLWFsaWdubWVudC0wMDQueGh0IFsgSW1hZ2VPbmx5RmFpbHVyZSBd
Ci13ZWJraXQub3JnL2IvMjM2OTIxIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy13cml0aW5nLW1vZGVzL3RleHQtYmFzZWxpbmUtdmxyLTAwNS54aHQgWyBJbWFnZU9ubHlG
YWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMzY5MjEgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLXdyaXRpbmctbW9kZXMvdGV4dC1iYXNlbGluZS12cmwtMDA0LnhodCBbIElt
YWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzIzNjkyMSBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3Mtd3JpdGluZy1tb2Rlcy90ZXh0LXNoYWRvdy1vcmllbnRhdGlv
bi11cHJpZ2h0LTAwMS5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjM2
OTIxIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy13cml0aW5nLW1vZGVz
L3ZlcnRpY2FsLWFsaWdubWVudC12bHItMDIzLnhodCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Vi
a2l0Lm9yZy9iLzIzNjkyMSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mt
d3JpdGluZy1tb2Rlcy92ZXJ0aWNhbC1hbGlnbm1lbnQtdnJsLTAyMi54aHQgWyBJbWFnZU9ubHlG
YWlsdXJlIF0KLQogIyBOby9iYWQgY29sb3JlZCBib3hlcwogd2Via2l0Lm9yZy9iLzIzNjkyMyBm
YXN0L2Nzcy9wYWludC1vcmRlci1zaGFkb3cuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogd2Vi
a2l0Lm9yZy9iLzIzNjkyMyBpbXBvcnRlZC9ibGluay9zdmcvdGV4dC9vYmItcGFpbnRzZXJ2ZXIu
aHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>456301</attachid>
            <date>2022-03-31 17:57:50 -0700</date>
            <delta_ts>2022-03-31 20:41:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232917-20220331175750.patch</filename>
            <type>text/plain</type>
            <size>8872</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkyMTkxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDA3MGJiZGMwNDE3M2Rl
YWQ5OGZlMmNkYWM0NTg0OTJkODZhYzI0Yi4uNjFhMmE0MTQ0NzM1ZjE5ZDhmZGUwMmM4MDZlYTYz
MzE1ODYzMzM2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDIyLTAzLTMxICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUgUHJvY2Vzc10g
W2lPU10gVmVydGljYWwgdGV4dCBpcyBpbmNvcnJlY3RseSBkaXNwbGFjZWQKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMjkxNworICAgICAgICByZGFy
Oi8vODU0ODMwMzEKKworICAgICAgICBSZXZpZXdlZCBieSBNeWxlcyBDLiBNYXhmaWVsZC4KKwor
ICAgICAgICBEcmF3R2x5cGhzUmVjb3JkZXIgY2FsbHMgRm9udENhc2NhZGU6OmRyYXdHbHlwaHMo
KSB3aGljaCBjYWxscyBDb3JlVGV4dAorICAgICAgICB0byBkcmF3IHRoZSB2ZXJ0aWNhbCB0ZXh0
IHRvIGl0cyBpbnRlcm5hbCBjb250ZXh0LiBUaGlzIGludGVybmFsIGNvbnRleHQKKyAgICAgICAg
aXMgc2V0dXAgdG8gYmUgY2FsbGVkIGJhY2sgZm9yIGV2ZXJ5IHNpbmdsZSBydW4uIFdoZW4gQ29y
ZVRleHQgY2FsbHMKKyAgICAgICAgRHJhd0dseXBoc1JlY29yZGVyOjpyZWNvcmREcmF3R2x5cGhz
KCksIGl0IHJlY29yZHMgZHJhd2luZyB0aGUgZ2x5cGggcnVucworICAgICAgICBpbnRvIHRoZSBv
d25lciByZWNvcmRlci4gVGhlIHByb2JsZW0gaXMgQ29yZVRleHQgcGFzc2VzIHRoZSB0cmFuc2Zv
cm1lZAorICAgICAgICBwb3NpdGlvbnMgdG8gcmVjb3JkRHJhd0dseXBocygpLiBUbyBjYWxsIGRy
YXdHbHlwaHNBbmRDYWNoZUZvbnQoKSBpbiB0aGUKKyAgICAgICAgcmVjb3JkZXIgd2UgaGF2ZSB0
byBwYXNzIHRoZSB1bi10cmFuc2Zvcm1lZCBhbmNob3IgcG9pbnQuIFRvIGdldCB0aGlzIGFuY2hv
cgorICAgICAgICBwb2ludCwgd2UgaGF2ZSB0byBhcHBseSB0aGUgaW52ZXJzZSBvZiBmaWxsVmVj
dG9yV2l0aFZlcnRpY2FsR2x5cGhQb3NpdGlvbnMoKQorICAgICAgICB0byB0aGUgZmlyc3QgdHJh
bnNmb3JtZWQgcG9zaXRpb24uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGlj
c0NvbnRleHQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9EcmF3R2x5
cGhzUmVjb3JkZXJDb3JlVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEcmF3R2x5cGhzUmVj
b3JkZXI6OnJlY29yZERyYXdHbHlwaHMpOgorCiAyMDIyLTAzLTMxICBTYWlkIEFib3UtSGFsbGF3
YSAgPHNhaWRAYXBwbGUuY29tPgogCiAgICAgICAgIFtHUFUgUHJvY2Vzc10gW2lPU10gVGV4dCBk
ZWNvcmF0aW9uIGlzIGFsd2F5cyBkcmF3biB3aXRoIHNvbGlkIHN0cm9rZSBzdHlsZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuaAppbmRl
eCBkMzQ0ZDU5ZmI0MTFmNGYxYTZiZDQwNGI4OGJmY2U5MjVjZTQ3M2E4Li5mNGM3YTg3ZWMxZGIz
NDhjYjM1NGQ5ZTQzNTJiY2U2MjdjNjE2ZDdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuaApAQCAtNTEsMTYgKzUxLDExIEBAIGNs
YXNzIEZsb2F0Um91bmRlZFJlY3Q7CiBjbGFzcyBHcmFkaWVudDsKIGNsYXNzIEdyYXBoaWNzQ29u
dGV4dFBsYXRmb3JtUHJpdmF0ZTsKIGNsYXNzIEltYWdlQnVmZmVyOwotY2xhc3MgSW50UmVjdDsK
IGNsYXNzIE1lZGlhUGxheWVyOwotY2xhc3MgUm91bmRlZFJlY3Q7CiBjbGFzcyBHcmFwaGljc0Nv
bnRleHRHTDsKIGNsYXNzIFBhdGg7CiBjbGFzcyBTeXN0ZW1JbWFnZTsKIGNsYXNzIFRleHRSdW47
Ci1jbGFzcyBUcmFuc2Zvcm1hdGlvbk1hdHJpeDsKLQotc3RydWN0IEdyYXBoaWNzQ29udGV4dFN0
YXRlQ2hhbmdlOwogCiBjbGFzcyBHcmFwaGljc0NvbnRleHQgewogICAgIFdURl9NQUtFX05PTkNP
UFlBQkxFKEdyYXBoaWNzQ29udGV4dCk7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRHJhd0dseXBo
c1JlY29yZGVyQ29yZVRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y29yZXRleHQvRHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwCmluZGV4IGExYWVmZDA3MDJm
YWQ0N2Y5MTlkYmE4MmY2MjM1NmYyMDUxNTU1ODYuLjk1YjA4MWI5NjdmOWYzNjA4ODY2OTY5OWU4
ZjhmMGQ4MDE4MzA3YjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvcmV0ZXh0L0RyYXdHbHlwaHNSZWNvcmRlckNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9EcmF3R2x5cGhzUmVjb3JkZXJDb3Jl
VGV4dC5jcHAKQEAgLTI1NiwxMiArMjU2LDIxIEBAIHZvaWQgRHJhd0dseXBoc1JlY29yZGVyOjpy
ZWNvcmREcmF3R2x5cGhzKENHUmVuZGVyaW5nU3RhdGVSZWYsIENHR1N0YXRlUmVmIGdzdGF0CiAg
ICAgLy8gYEZvbnRDYXNjYWRlOjpkcmF3R2x5cGhzYCB3ZSBuZWVkIHRvIHJlY2FsY3VsYXRlIHRo
ZSBvcmlnaW5hbCBhZHZhbmNlcyBmcm9tIHRoZSByZXN1bHRpbmcKICAgICAvLyBwb3NpdGlvbnMg
YnkgaW52ZXJ0aW5nIHRoZSBvcGVyYXRpb25zIGFwcGxpZWQgdG8gdGhlIG9yaWdpbmFsIGFkdmFu
Y2VzLgogICAgIGF1dG8gdGV4dE1hdHJpeCA9IG1fb3JpZ2luYWxUZXh0TWF0cml4OworICAgIGF1
dG8gaW5pdGlhbFBlblBvc2l0aW9uID0gdGV4dE1hdHJpeC5tYXBQb2ludChwb3NpdGlvbnNbMF0p
OworCiAgICAgaWYgKGZvbnQtPnBsYXRmb3JtRGF0YSgpLm9yaWVudGF0aW9uKCkgPT0gRm9udE9y
aWVudGF0aW9uOjpWZXJ0aWNhbCkgewogICAgICAgICAvLyBLZWVwIHRoaXMgaW4gc3luYyBhcyB0
aGUgaW52ZXJzZSBvZiBgZmlsbFZlY3RvcldpdGhWZXJ0aWNhbEdseXBoUG9zaXRpb25zYC4KLSAg
ICAgICAgLy8gRklYTUU6IDxodHRwczovL3dlYmtpdC5vcmcvYi8yMzI5MTc+IChgRHJhd0dseXBo
c1JlY29yZGVyYCBzaG91bGQgYmUgYWJsZSB0byByZWNvcmQrcmVwbGF5IHZlcnRpY2FsIHRleHQp
CisgICAgICAgIC8vIEZJWE1FOiBVc2Ugcm90YXRlTGVmdFRyYW5zZm9ybSgpLCBhcyBmaWxsVmVj
dG9yV2l0aFZlcnRpY2FsR2x5cGhQb3NpdGlvbnMoKSBkb2VzLCBpbnN0ZWFkIG9mIHVzaW5nIHRy
YW5zcG9zZWRTaXplKCkuCisgICAgICAgIENHU2l6ZSB0cmFuc2xhdGlvbjsKKyAgICAgICAgQ1RG
b250R2V0VmVydGljYWxUcmFuc2xhdGlvbnNGb3JHbHlwaHMoZm9udC0+cGxhdGZvcm1EYXRhKCku
Y3RGb250KCksIGdseXBocywgJnRyYW5zbGF0aW9uLCAxKTsKKworICAgICAgICBpbml0aWFsUGVu
UG9zaXRpb24gKz0gRmxvYXRTaXplKHRyYW5zbGF0aW9uKS50cmFuc3Bvc2VkU2l6ZSgpOworCisg
ICAgICAgIGF1dG8gYXNjZW50RGVsdGEgPSBmb250LT5mb250TWV0cmljcygpLmZsb2F0QXNjZW50
KElkZW9ncmFwaGljQmFzZWxpbmUpIC0gZm9udC0+Zm9udE1ldHJpY3MoKS5mbG9hdEFzY2VudCgp
OworICAgICAgICBpbml0aWFsUGVuUG9zaXRpb24ubW92ZSgwLCAtYXNjZW50RGVsdGEpOwogICAg
IH0KIAotICAgIG1fb3duZXIuZHJhd0dseXBoc0FuZENhY2hlRm9udChmb250LCBnbHlwaHMsIGNv
bXB1dGVBZHZhbmNlc0Zyb21Qb3NpdGlvbnMocG9zaXRpb25zLCBjb3VudCwgdGV4dE1hdHJpeCku
ZGF0YSgpLCBjb3VudCwgdGV4dE1hdHJpeC5tYXBQb2ludChwb3NpdGlvbnNbMF0pLCBtX3Ntb290
aGluZ01vZGUpOworICAgIG1fb3duZXIuZHJhd0dseXBoc0FuZENhY2hlRm9udChmb250LCBnbHlw
aHMsIGNvbXB1dGVBZHZhbmNlc0Zyb21Qb3NpdGlvbnMocG9zaXRpb25zLCBjb3VudCwgdGV4dE1h
dHJpeCkuZGF0YSgpLCBjb3VudCwgaW5pdGlhbFBlblBvc2l0aW9uLCBtX3Ntb290aGluZ01vZGUp
OwogCiAgICAgbV9vd25lci5jb25jYXRDVE0oaW52ZXJzZUNUTUZpeHVwKTsKIH0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBi
MTI0ZWM2MzE2ZWQ5YTg3MWY2ODE1Yzc1OGFjNTE1OTU1NmM5YzVhLi5lMzFlMmMyZWM1YWEzNWY4
OWZjYzMxMTdkMjA4OTNjMDZiMmU2ZDUwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjItMDMt
MzEgIFNhaWQgQWJvdS1IYWxsYXdhICA8c2FpZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVSBQ
cm9jZXNzXSBbaU9TXSBWZXJ0aWNhbCB0ZXh0IGlzIGluY29ycmVjdGx5IGRpc3BsYWNlZAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMyOTE3CisgICAg
ICAgIHJkYXI6Ly84NTQ4MzAzMQorCisgICAgICAgIFJldmlld2VkIGJ5IE15bGVzIEMuIE1heGZp
ZWxkLgorCisgICAgICAgIFVuc2tpcCBmYWlsZWQgdmVydGljYWwgdGV4dCBsYXlvdXQgdGVzdHMu
CisKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMjIt
MDMtMzEgIFNhaWQgQWJvdS1IYWxsYXdhICA8c2FpZEBhcHBsZS5jb20+CiAKICAgICAgICAgW0dQ
VSBQcm9jZXNzXSBbaU9TXSBUZXh0IGRlY29yYXRpb24gaXMgYWx3YXlzIGRyYXduIHdpdGggc29s
aWQgc3Ryb2tlIHN0eWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2sy
L1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBl
Y3RhdGlvbnMKaW5kZXggYmQyMTA3ZWNmMmQ3OTcxYjU3OTdmMWU3ZTliMDU1ZTNmZGFhZmU2My4u
NzM2OWYyZTM4OTQxNjBjZWZkOTMwMWJkNTdlZDZlYzJkOWVhNWJjMSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL2lvcy13azIvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjIwNywxNyArMjIwNyw2
IEBAIGh0dHAvd3B0L2h0bWwvc2VtYW50aWNzL3RleHQtbGV2ZWwtc2VtYW50aWNzL3RoZS1hLWVs
ZW1lbnQvYS1kb3dubG9hZC1jbGljay00MDQuCiAjIFRlc3QgZmFpbHVyZXMgZnJvbSB0dXJuaW5n
IEdQVSBQcm9jZXNzIG9uIGJ5IGRlZmF1bHQKIHdlYmtpdC5vcmcvYi8yMzQ1MzYgd2VieHIvaGln
aC1wZXJmb3JtYW5jZS5odG1sIFsgRmFpbHVyZSBdCiAKLSMgVGhlcmUgaXMgdGV4dCBpbi9uZWFy
IHRoZSBib3gKLXdlYmtpdC5vcmcvYi8yMzY5MDcgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWZsZXhib3gvY3NzLWZsZXhib3gtdGVzdDEuaHRtbCBbIEltYWdlT25seUZh
aWx1cmUgXQotCi0jIE1pc3BsYWNlZCB0ZXh0Ci13ZWJraXQub3JnL2IvMjM2OTA4IGZhc3QvdGV4
dC9jamstbXVsdGktY29kZXBvaW50LWNsdXN0ZXItdmVydGljYWwuaHRtbCBbIEltYWdlT25seUZh
aWx1cmUgXQotd2Via2l0Lm9yZy9iLzIzNjkwOCBmYXN0L3RleHQvbXVsdGlwbGUtY29kZXVuaXQt
dmVydGljYWwtdXByaWdodC0yLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcv
Yi8yMzY5MDggZmFzdC90ZXh0L211bHRpcGxlLWNvZGV1bml0LXZlcnRpY2FsLXVwcmlnaHQuaHRt
bCBbIEltYWdlT25seUZhaWx1cmUgXQotCi0jIFJlZCB0ZXh0IHBva2VzIG91dAotd2Via2l0Lm9y
Zy9iLzIzNjkxMSBmYXN0L3RleHQvaW50ZXJuYXRpb25hbC9zeW50aGVzaXplZC1pdGFsaWMtdmVy
dGljYWwuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotCiAjIE5vdCBzdXJlIGlmIHRoZSBvcmFu
Z2UgbGluZSBkaWZmIGlzIG5lZ2xpZ2libGUgb3IgaW1wb3J0YW50CiB3ZWJraXQub3JnL2IvMjM2
OTEyIGh0dHAvd3B0L2Nzcy9jc3MtaGlnaGxpZ2h0LWFwaS9oaWdobGlnaHQtdGV4dC1kZWNvcmF0
aW9ucy5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiAKQEAgLTIyMjUsMjcgKzIyMTQsNiBAQCB3
ZWJraXQub3JnL2IvMjM2OTEyIGh0dHAvd3B0L2Nzcy9jc3MtaGlnaGxpZ2h0LWFwaS9oaWdobGln
aHQtdGV4dC1kZWNvcmF0aW9ucy5odAogd2Via2l0Lm9yZy9iLzIzNjkxMyBmYXN0L2Nzcy92YXJp
YWJsZXMvdGVzdC1zdWl0ZS8wMDUuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgUGFzcyBdCiB3ZWJr
aXQub3JnL2IvMjM2OTEzIGltcG9ydGVkL2JsaW5rL2Zhc3QvbXVsdGljb2wvdmVydGljYWwtbHIv
ZmxvYXQtY29udGVudC1icmVhay5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiAKLSMgVGhlcmUg
YXJlIHNtYWxsIHJlY3RhbmdsZXMgb3IgY2hhcmFjdGVycyBiZWxvdyBtYWluIGNoYXJhY3Rlcgot
d2Via2l0Lm9yZy9iLzIzNjkxNiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtdmFsdWVzL2NoLXVuaXQtMDExLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5v
cmcvYi8yMzY5MTYgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVl
cy9pYy11bml0LTAwMi5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjM2
OTE2IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy12YWx1ZXMvaWMtdW5p
dC0wMDMuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzIzNjkxNiBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdmFsdWVzL2ljLXVuaXQtMDA5Lmh0
bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMzY5MTYgaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9pYy11bml0LTAxMC5odG1sIFsgSW1h
Z2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjM2OTE2IGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy12YWx1ZXMvaWMtdW5pdC0wMTEuaHRtbCBbIEltYWdlT25seUZh
aWx1cmUgXQotd2Via2l0Lm9yZy9iLzIzNjkxNiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtdmFsdWVzL2ljLXVuaXQtMDEyLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0K
LQotIyBXcml0aW5nIG1vZGUgZmFpbHVyZXMKLXdlYmtpdC5vcmcvYi8yMzY5MjEgaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXdyaXRpbmctbW9kZXMvY2VudHJhbC1iYXNl
bGluZS1hbGlnbm1lbnQtMDAyLnhodCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9i
LzIzNjkyMSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mtd3JpdGluZy1t
b2Rlcy9pbmxpbmUtYmxvY2stYWxpZ25tZW50LTAwNC54aHQgWyBJbWFnZU9ubHlGYWlsdXJlIF0K
LXdlYmtpdC5vcmcvYi8yMzY5MjEgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLXdyaXRpbmctbW9kZXMvaW5saW5lLWJsb2NrLWFsaWdubWVudC1vcnRob2dvbmFsLXZsci0w
MDUueGh0IFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjM2OTIxIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy13cml0aW5nLW1vZGVzL2lubGluZS1ibG9j
ay1hbGlnbm1lbnQtb3J0aG9nb25hbC12cmwtMDA0LnhodCBbIEltYWdlT25seUZhaWx1cmUgXQot
d2Via2l0Lm9yZy9iLzIzNjkyMSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3Mtd3JpdGluZy1tb2Rlcy9pbmxpbmUtdGFibGUtYWxpZ25tZW50LTAwNC54aHQgWyBJbWFnZU9u
bHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMzY5MjEgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLXdyaXRpbmctbW9kZXMvdGV4dC1iYXNlbGluZS12bHItMDA1LnhodCBb
IEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzIzNjkyMSBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mtd3JpdGluZy1tb2Rlcy90ZXh0LWJhc2VsaW5lLXZybC0w
MDQueGh0IFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjM2OTIxIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy13cml0aW5nLW1vZGVzL3RleHQtc2hhZG93
LW9yaWVudGF0aW9uLXVwcmlnaHQtMDAxLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtp
dC5vcmcvYi8yMzY5MjEgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXdy
aXRpbmctbW9kZXMvdmVydGljYWwtYWxpZ25tZW50LXZsci0wMjMueGh0IFsgSW1hZ2VPbmx5RmFp
bHVyZSBdCi13ZWJraXQub3JnL2IvMjM2OTIxIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy13cml0aW5nLW1vZGVzL3ZlcnRpY2FsLWFsaWdubWVudC12cmwtMDIyLnhodCBb
IEltYWdlT25seUZhaWx1cmUgXQotCiAjIE5vL2JhZCBjb2xvcmVkIGJveGVzCiB3ZWJraXQub3Jn
L2IvMjM2OTIzIGZhc3QvY3NzL3BhaW50LW9yZGVyLXNoYWRvdy5odG1sIFsgSW1hZ2VPbmx5RmFp
bHVyZSBdCiB3ZWJraXQub3JnL2IvMjM2OTIzIGltcG9ydGVkL2JsaW5rL3N2Zy90ZXh0L29iYi1w
YWludHNlcnZlci5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>