<?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>289992</bug_id>
          
          <creation_ts>2025-03-18 14:10:55 -0700</creation_ts>
          <short_desc>[scroll-animations] Presence of an animation with a custom property breaks font-size that depends on rem</short_desc>
          <delta_ts>2025-05-24 12:06:46 -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>CSS</component>
          <version>Safari Technology Preview</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>292328</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Roman Komarov">kizmarh</reporter>
          <assigned_to name="Antti Koivisto">koivisto</assigned_to>
          <cc>graouts</cc>
    
    <cc>graouts</cc>
    
    <cc>koivisto</cc>
    
    <cc>rik</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2104154</commentid>
    <comment_count>0</comment_count>
      <attachid>474617</attachid>
    <who name="Roman Komarov">kizmarh</who>
    <bug_when>2025-03-18 14:10:55 -0700</bug_when>
    <thetext>Created attachment 474617
Saved version of CodePen

Steps to reproduce:

1. Open https://codepen.io/kizu/pen/xbxWxmp in Safari TP 215 with scroll-driven animations feature flag enabled or the attached file.
2. The text should be 1rem in size, but it very big.

The conditions are rather complex, I stumbled upon this bug when testing how scroll-driven animations work in my blog. Saw this issue with my sidenotes (for example, here: https://kizu.dev/scroll-driven-state-transfer/), then reduced to the smallest test case I could.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2105967</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2025-03-25 14:11:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/147872254&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2107787</commentid>
    <comment_count>2</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2025-04-01 07:26:45 -0700</bug_when>
    <thetext>Inspecting the animation&apos;s computed timing and computed keyframes shows nothing unexpected. And indeed, removing the custom property in the 0% keyframe fixes the rendering… but it&apos;s really unclear why that has to do with anything since a custom property that is not used for anything.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2107788</commentid>
    <comment_count>3</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2025-04-01 07:28:01 -0700</bug_when>
    <thetext>It appears the issue is that we&apos;re using the computed style from the parent rather than the one set on the element itself, but only if we have this unregistered custom property set.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2107789</commentid>
    <comment_count>4</comment_count>
      <attachid>474791</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2025-04-01 07:36:43 -0700</bug_when>
    <thetext>Created attachment 474791
Test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2107793</commentid>
    <comment_count>5</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2025-04-01 07:59:41 -0700</bug_when>
    <thetext>The `animatedStyle` computed in the `applyAnimations()` lambda within `Style::TreeResolver::createAnimatedElementUpdate()` has the expected value until `applyCascadeAfterAnimation` is called.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2107806</commentid>
    <comment_count>6</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2025-04-01 08:40:46 -0700</bug_when>
    <thetext>Here&apos;s the call stack when we get to the spot where we compute the value incorrectly in `Style::computeNonCalcLengthDouble()`:

#0	0x00000003072c98f0 in WebCore::Style::computeNonCalcLengthDouble at /Users/antoine/Code/safari/OpenSource/Source/WebCore/style/values/primitives/StyleLengthResolution.cpp:273
#1	0x00000003043ed048 in WebCore::CSSPrimitiveValue::resolveAsLengthDouble at /Users/antoine/Code/safari/OpenSource/Source/WebCore/css/CSSPrimitiveValue.cpp:621
#2	0x00000003043ed178 in WebCore::CSSPrimitiveValue::resolveAsLength&lt;float&gt; at /Users/antoine/Code/safari/OpenSource/Source/WebCore/css/CSSPrimitiveValue.cpp:581
#3	0x0000000302b37b90 in WebCore::Style::BuilderCustom::applyValueFontSize at /Users/antoine/Code/safari/OpenSource/Source/WebCore/style/StyleBuilderCustom.h:1686
#4	0x0000000302b283e0 in WebCore::Style::BuilderGenerated::applyProperty at /Users/antoine/Builds/Debug/DerivedSources/WebCore/StyleBuilderGenerated.cpp:6028
#5	0x0000000307173124 in WebCore::Style::Builder::applyProperty at /Users/antoine/Code/safari/OpenSource/Source/WebCore/style/StyleBuilder.cpp:409
#6	0x00000003071928c4 in WebCore::Style::Builder::applyCascadeProperty(WebCore::Style::PropertyCascade::Property const&amp;)::&apos;lambda&apos;(WebCore::SelectorChecker::LinkMatchMask)::operator()(WebCore::SelectorChecker::LinkMatchMask) const at /Users/antoine/Code/safari/OpenSource/Source/WebCore/style/StyleBuilder.cpp:264
#7	0x0000000307171b38 in WebCore::Style::Builder::applyCascadeProperty at /Users/antoine/Code/safari/OpenSource/Source/WebCore/style/StyleBuilder.cpp:268
#8	0x00000003071b7438 in void WebCore::Style::Builder::applyPropertiesImpl&lt;(WebCore::Style::Builder::CustomPropertyCycleTracking)1&gt;(int, int)::&apos;lambda&apos;(unsigned long)::operator()(unsigned long) const at /Users/antoine/Code/safari/OpenSource/Source/WebCore/style/StyleBuilder.cpp:173
#9	0x0000000307171c94 in WebCore::Style::Builder::applyPropertiesImpl&lt;(WebCore::Style::Builder::CustomPropertyCycleTracking)1&gt; at /Users/antoine/Code/safari/OpenSource/Source/WebCore/style/StyleBuilder.cpp:185
#10	0x0000000307171758 in WebCore::Style::Builder::applyProperties at /Users/antoine/Code/safari/OpenSource/Source/WebCore/style/StyleBuilder.cpp:152
#11	0x00000003071715b8 in WebCore::Style::Builder::applyHighPriorityProperties at /Users/antoine/Code/safari/OpenSource/Source/WebCore/style/StyleBuilder.cpp:124
#12	0x00000003071714cc in WebCore::Style::Builder::applyAllProperties at /Users/antoine/Code/safari/OpenSource/Source/WebCore/style/StyleBuilder.cpp:110
#13	0x00000003071fc314 in WebCore::Style::TreeResolver::applyCascadeAfterAnimation at /Users/antoine/Code/safari/OpenSource/Source/WebCore/style/StyleTreeResolver.cpp:922

While we correctly deal with a `1rem` value we get the incorrect `FontDescription` inside `computeUnzoomedNonCalcLengthDouble` where the value is `96px`, which is the computed value on the parent element, not the root element.

I don&apos;t think animations are really a factor here, this look like a CSS bug with `rem` unit resolution.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2107809</commentid>
    <comment_count>7</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2025-04-01 08:52:39 -0700</bug_when>
    <thetext>I&apos;m not sure why we enter the `applyAnimations()` branch which calls `applyCascadeAfterAnimation()` since in this case animations have no effect at all. This was changed in 271268@main.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2118146</commentid>
    <comment_count>8</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2025-05-19 10:23:05 -0700</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/45596</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2119549</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-05-24 12:06:43 -0700</bug_when>
    <thetext>Committed 295395@main (c7d5be16b583): &lt;https://commits.webkit.org/295395@main&gt;

Reviewed commits have been landed. Closing PR #45596 and removing active labels.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>474617</attachid>
            <date>2025-03-18 14:10:55 -0700</date>
            <delta_ts>2025-03-18 14:10:55 -0700</delta_ts>
            <desc>Saved version of CodePen</desc>
            <filename>Safari weird SDA bug.html</filename>
            <type>text/html</type>
            <size>20702</size>
            <attacher name="Roman Komarov">kizmarh</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIiBkYXRhLWx0LWluc3RhbGxlZD0idHJ1ZSI+
PGhlYWQ+CjxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1s
OyBjaGFyc2V0PVVURi04Ij4KICA8bWV0YSBjaGFyc2V0PSJVVEYtOCI+CiAgCiAgCiAgCgogIDx0
aXRsZT5TYWZhcmkgd2VpcmQgU0RBIGJ1ZzwvdGl0bGU+CgogICAgPGxpbmsgcmVsPSJjYW5vbmlj
YWwiIGhyZWY9Imh0dHBzOi8vY29kZXBlbi5pby9raXp1L3Blbi94YnhXeG1wIj4KICAKICAKICAK
ICAKPHN0eWxlPgpodG1sIHsKICAvKiBVc2luZyBweC9lbSB3b3JrcyBvaywgYnV0IG5vdCByZW0g
Ki8KCS0tcmVtOiAxcmVtOwp9Cgpib2R5IHsKCWZvbnQtc2l6ZTogNmVtOwoJdGltZWxpbmUtc2Nv
cGU6IC0tZm9vOwp9CgoudGVzdCB7Cglmb250LXNpemU6IHZhcigtLXJlbSk7CgogIGFuaW1hdGlv
bjogLS10ZXN0OwogIGFuaW1hdGlvbi10aW1lbGluZTogLS1mb287Cn0KCkBrZXlmcmFtZXMgLS10
ZXN0IHsKCTAlIHsKICAgIC8qCiAgICAgIFNob3VsZCBiZSBhIGN1c3RvbSBwcm9wZXJ0eSwKICAg
ICAgcmVndWxhciBwcm9wZXJ0eSBkb2VzIG5vdCBoYXZlCiAgICAgIHRoaXMgZWZmZWN0LgogICAg
Ki8KCQktLWZvbzogdW51c2VkOwoJfQp9Cjwvc3R5bGU+CgogIAogIAogIAo8L2hlYWQ+Cgo8Ym9k
eT4KICA8ZGl2IGNsYXNzPSJ0ZXN0Ij4KICBXaHkgYW0gSSBiaWcgaW4gU2FmYXJpIFRQIDIxNT8K
PC9kaXY+CiAgCiAgCiAgCgoKCjwvYm9keT48c3R5bGUgY2xhc3M9InN0eWx1cyI+LyoKCVJlYWQg
dGhlIGZ1bGwgd3JpdGUtdXAgYWJvdXQgdGhpcyBtaXhpbjoKCWh0dHBzOi8va2l6dS5kZXYvcHJl
dmlldy1taXhpbi8KCglUaGlzIGlzIGEg4oCcbmF0aXZl4oCdIENTUyBtaXhpbi4gSXQgcmVsaWVz
IG9uCglhIGZldyBzcGVjaWZpYyBDU1MgaW50ZXJhY3Rpb25zLCBzZWUKCWh0dHBzOi8va2l6dS5k
ZXYvaW5kaXJlY3QtY3ljbGljLWNvbmRpdGlvbnMvCglmb3IgdGhlIGRldGFpbHMgd2hpY2ggY292
ZXIgdGhpcyBgLS1XSEVOYCBjdXN0b20KCXByb3BlcnR5LCB3aHkgd2UgdXNlIGN1c3RvbSBjYXNj
YWRlIGxheWVycywgZXRjLgoqLwo6cm9vdCB7IC0tV0hFTjogfQoKLyoKCU1vc3Qgb2YgdGhlIGN1
c3RvbSBwcm9wZXJ0aWVzIGluc2lkZSBhcmUgcmVnaXN0ZXJlZCwKCXNlZSB0aGUgbGlzdCBhZnRl
ciB0aGUgbWl4aW4uCiovCkBsYXllciBtaXhpbnMucHJldmlldyB7CgkvKgoJCVRoZSBtaXhpbiBj
YW4gYmUgdXNlZCBvbiBhbnkgZWxlbWVudCBpdHNlbGYsCgkJb3Igb24gYSBwc2V1ZG8tZWxlbWVu
dCBkaXJlY3RseS4KCQlBbiBgOjphZnRlcmAgd2lsbCBvdmVycmlkZSB0aGUgZWxlbWVudCBpdHNl
bGYuCgkqLwoJKiwKCSo6OmJlZm9yZSwKCSo6OmFmdGVyIHsKCQkvKgoJCQlUaGUga2V5IGN1c3Rv
bSBwcm9wZXJ0eSBhZGRpbmcgd2hpY2ggdG8KCQkJYW55IGVsZW1lbnQgdHVybnMgdGhlIG1peGlu
IG9uLgoJCSovCgkJLS1wcmV2aWV3OgoJCQkvKgoJCQkJV2UgbmVlZCB0byBjcm9zcy1yZWZlcmVu
Y2UgdGhlc2UgdG8gY3JlYXRlCgkJCQl0aGUgaW5pdGlhbCBjeWNsaWMgZGVwcy4gU2VlCgkJCQlo
dHRwczovL2tpenUuZGV2L2luZGlyZWN0LWN5Y2xpYy1jb25kaXRpb25zLwoJCQkqLwoJCQl2YXIo
LS1fcC1yZXNldCkKCQkJdmFyKC0tX3AtY29udGVudCkKCQkJdmFyKC0tX3AtY29sb3IpCgkJCXZh
cigtLV9wLXJlc2V0LXZhbHVlKQoJCQl2YXIoLS1fcC1jb250ZW50LXZhbHVlKQoJCQl2YXIoLS1f
cC1jb2xvci12YWx1ZSkKCgkJCS8qIE5vdCB1c2VkIGluIHRoZSBtaXhpbiwgYWxsb3dzIGV4dGVu
c2lvbnMuICovCgkJCXZhcigtLXByZXZpZXctLXRvZ2dsZSkKCQkJLyoKCQkJCU5vdCB1c2VkLCBi
dXQgY2FuIGJlIGFzc2lnbmVkIHRvIHNob3J0CgkJCQljaXJjdWl0IHRoZSBgLS1wcmV2aWV3YCB0
byBzb21ldGhpbmcgZWxzZS4KCQkJKi8KCQkJdmFyKC0tcHJldmlldy1jeWNsZS1leHRlbnNpb24s
KQoJCTsKCgkJLyoKCQkJQSBzcGFjZSB0b2dnbGUgdGhhdCBjb3VsZCBiZSB1c2VkIGFzIGFuIEFQ
SS4KCQkJLSBgaW5pdGlhbGAgd2hlbiBtaXhpbiBpcyBvZmYuCgkJCS0gZW1wdHkgd2hlbiBpdCBp
cyBvbi4KCQkqLwoJCS0tcHJldmlldy0tdG9nZ2xlOiB2YXIoLS1XSEVOLCB2YXIoLS1wcmV2aWV3
KSk7CgoJCS8qIENhcHR1cmluZyBgPGRpbWVuc2lvbj5gLWxpa2UgdHlwZXMuICovCgkJLyoKCQkJ
V2UgbmVlZCBgY2FsYygpYCB0byBjYXRjaCBhbnkgc3RyYXkgbWF0aAoJCQlsaWtlIGBwaWAsIGAy
ICsgMmAgZXRjLgoJCSovCgkJLS1fcC1jYXB0dXJlZDogY2FsYyh2YXIoLS1wcmV2aWV3KSk7CgoJ
CS8qCgkJCVRoZSBuZXh0IDUgZGVjbGFyYXRpb25zIGF0dGVtcHQgdG8gY2FzdCB0aGUKCQkJdmFs
dWUgYXMgYDxudW1iZXI+YCBmcm9tIGRpZmZlcmVudCBvdGhlciB0eXBlcy4KCQkqLwoJCS8qCgkJ
CU5vdGhpbmcgc3BlY2lhbCBpcyByZXF1aXJlZCBmb3IgY2F0aW5nCgkJCWZyb20gYDxudW1iZXI+
YAoJCSovCgkJLS1fcC1mcm9tLW51bWJlcjogdmFyKC0tX3AtY2FwdHVyZWQpOwoKCQkvKgoJCQlU
byBjYXN0IG90aGVyIGRpbWVuc2lvbi1saWtlIHZhbHVlcyB3ZSBuZWVkIHRvCgkJCeKAnGRpdmlk
ZeKAnSB0aGVtIGJ5IHRoZSB0aGUgc2FtZSB1bml0IHRvIGdldCB0aGUKCQkJYDxudW1iZXI+YCBp
biB0aGUgZW5kLiBTZWUKCQkJaHR0cHM6Ly9kZXYudG8vamFuZW9yaS9jc3MtdHlwZS1jYXN0aW5n
LXRvLW51bWVyaWMtdGFuYXRhbjItc2NhbGFycy01ODJqCgoJCQlUaGUgYWRkaXRpb25hbCBkaXZp
c2lvbiBhbmQgbXVsdGlwbGljYXRpb24KCQkJMTAwMDAgaXMgYSB3b3JrYXJvdW5kIGZvciBhIEZp
cmVmb3ggYnVnOgoJCQlodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xOTM5MzUzCgoJCQlJbiB0aGUgZnV0dXJlLCB3ZSBjb3VsZCBqdXN0IGRvCgkJCWBjYWxjKHZh
cigtLV9wLWNhcHR1cmVkKSAvIDFweClgIGV0Yy4KCQkqLwoJCS0tX3AtZnJvbS1sZW5ndGg6IGNh
bGMoCgkJCTEwMDAwCgkJCSoKCQkJdGFuKGF0YW4yKHZhcigtLV9wLWNhcHR1cmVkKSwgMTAwMDBw
eCkpCgkJKTsKCgkJLS1fcC1mcm9tLWFuZ2xlOiBjYWxjKAoJCQkxMDAwMAoJCQkqCgkJCXRhbihh
dGFuMih2YXIoLS1fcC1jYXB0dXJlZCksIDEwMDAwZGVnKSkKCQkpOwoKCQkvKgoJCQlJIGZpbmQg
aXQgZWFzaWVyIHRvIHdvcmsgd2l0aCBgbXNgLAoJCQlzbyB3ZSdyZSBhY2NvdW50aW5nIGZvciB0
aGlzIGhlcmUuCgkJKi8KCQktLV9wLWZyb20tdGltZTogY2FsYygKCQkJMTAwMDAwMDAKCQkJKgoJ
CQl0YW4oYXRhbjIodmFyKC0tX3AtY2FwdHVyZWQpLCAxMDAwMHMpKQoJCSk7CgoJCS0tX3AtZnJv
bS1wZXJjZW50YWdlOiBjYWxjKAoJCQkxMDAwMAoJCQkqCgkJCXRhbihhdGFuMih2YXIoLS1fcC1j
YXB0dXJlZCksIDEwMDAwJSkpCgkJKTsKCgkJLyoKCQkJVGhlIGZpbmFsIOKAnHZhbHVl4oCdIHdp
bGwgaGF2ZSBvbmx5IG9uZSBvZgoJCQl0aGUgY29tcG9uZW50cyAhPT0gMC4KCQkqLwoJCS0tX3At
dmFsdWU6ICgKCQkJdmFyKC0tX3AtZnJvbS1sZW5ndGgpCgkJCSsKCQkJdmFyKC0tX3AtZnJvbS1u
dW1iZXIpCgkJCSsKCQkJdmFyKC0tX3AtZnJvbS1hbmdsZSkKCQkJKwoJCQl2YXIoLS1fcC1mcm9t
LXRpbWUpCgkJCSsKCQkJdmFyKC0tX3AtZnJvbS1wZXJjZW50YWdlKQoJCSk7CgoJCS8qCgkJCVdo
ZW4gdHJ5aW5nIHRvIG91dHB1dCB0aGUgZnJhY3Rpb25hbCB2YWx1ZSB3aXRoCgkJCWNvdW50ZXJz
LCBpdCBpcyBtb3JlIGNvbnZlbmllbnQgdG8gd29yayB3aXRoCgkJCXRoZSBhYnNvbHV0ZSB2YWx1
ZXMsIGFuZCBzZXBhcmF0ZSB0aGUgc2lnbi4KCgkJCUluIHRoZSBmdXR1cmUsIGl0IGNvdWxkIGJl
IGp1c3QgYGFicygpYCBhbmQKCQkJYHNpZ24oKWAgKENocm9tZSwgaGVsbG8/KS4KCQkqLwoJCS0t
X3AtdmFsdWUtYWJzOgoJCQltYXgodmFyKC0tX3AtdmFsdWUpLCAtMSAqIHZhcigtLV9wLXZhbHVl
KSk7CgoJCS0tX3Atc2lnbjoKCQkJY2FsYyh2YXIoLS1fcC12YWx1ZSkgLyB2YXIoLS1fcC12YWx1
ZS1hYnMpKTsKCgkJLyoKCQkJSGVyZSB3ZSBzcGxpdCBvdXIgdmFsdWUgdG8gY29udGFpbiB0aGUg
aW50ZWdlcgoJCQlhbmQgdGhlIGRlY2ltYWwgcGFydHMuIEZvciB0aGUgaW50ZWdlciwgd2UgdXNl
CgkJCWByb3VuZCgpYC4gVGhlIGAwLjAwMDFgIHRoZXJlIGlzIGEgd29ya2Fyb3VuZAoJCQlmb3Ig
YSBGaXJlZm94IGJ1ZzoKCQkJaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTkyNDM2MwoJCSovCgkJLS1fcC1wYXJ0MToKCQkJcm91bmQoZG93biwgdmFyKC0tX3At
dmFsdWUtYWJzKSArIDAuMDAwMSwgMSk7CgoJCS0tX3AtcGFydDI6IHJvdW5kKAoJCQkodmFyKC0t
X3AtdmFsdWUtYWJzKSAtIHZhcigtLV9wLXBhcnQxKSkKCQkJKgoJCQkvKgoJCQkJV2hpbGUgd2Ug
Y291bGQgaW1wbGVtZW50IG1vcmUgdGhhbiAzIGRpZ2l0cwoJCQkJYWZ0ZXIgdGhlIGRvdCwgaXQg
aXMgbXVjaCBtb3JlIGNvbnZlbmllbnQKCQkJCXRvIHdvcmsgd2l0aCBmZXdlciBvZiB0aGVtLCBh
bmQgd2UgcmFyZWx5CgkJCQluZWVkIG1vcmUuCgkJCSovCgkJCTEwMDAsCgkJCS8qCgkJCQlXaGVu
IHJvdW5kaW5nLCB3ZSBhbHdheXMga2VlcCB0aGUgYDFgLAoJCQkJd2hpY2ggaXMgcmVxdWlyZWQg
Zm9yIFNhZmFyaSwgYXMgaXQgZGlkIG5vdAoJCQkJeWV0IGltcGxlbWVudCB0aGUgaW1wbGljaXQg
YDFgIGFyZ3VtZW50LgoJCQkqLwoJCQkxCgkJKTsKCgkJLyoKCQkJV2UgbmVlZCB0byBmdXJ0aGVy
IHNwbGl0IHRoZSBmcmFjdGlvbmFsIHBhcnQKCQkJaW50byBzZXBhcmF0ZSBkaWdpdHMsIGFzIG90
aGVyd2lzZSB3ZSBjb3VsZG7igJl0CgkJCXByb3Blcmx5IG91dHB1dCB2YWx1ZXMgbGlrZSBgMDAx
YCB3aXRoIGNvdW50ZXJzLgoJCSovCgkJLS1fcC1kMTogcm91bmQoZG93biwgdmFyKC0tX3AtcGFy
dDIpIC8gMTAwLCAxKTsKCgkJLS1fcC1kMjogcm91bmQoCgkJCWRvd24sCgkJCXZhcigtLV9wLXBh
cnQyKSAvIDEwIC0gdmFyKC0tX3AtZDEpICogMTAsCgkJCTEKCQkpOwoKCQktLV9wLWQzOiByb3Vu
ZCgKCQkJdmFyKC0tX3AtcGFydDIpCgkJCS0KCQkJdmFyKC0tX3AtZDEpICogMTAwCgkJCS0KCQkJ
dmFyKC0tX3AtZDIpICogMTAKCQkJLAoJCQkxCgkJKTsKCgkJLyoKCQkJTW9zdCBvdGhlciBjYWxj
dWxhdGlvbnMgd2VyZSBtb3ZlZCBpbnRvIHRoZQoJCQlgY291bnRlci1yZXNldGAgaXRzZWxmLCBi
dXQgd2hlbiB3ZSBuZWVkIHRvCgkJCXJldXNlIHRoZSB2YWx1ZSwgaXQgbWlnaHQgYmUgcHJlc2Vu
dCBhcyBhCgkJCXZhcmlhYmxlLgoKCQkJVGhlIHNwZWNpZmljcyBhYm91dCB3aGF0IHRoaXMgYW5k
IHNvbWUKCQkJb3RoZXIgY2FsY3VsYXRpb25zIGRvIGFyZSBpbiB0aGUgZnVsbCB3cml0ZS11cDoK
CQkJaHR0cHM6Ly9raXp1LmRldi9wcmV2aWV3LW1peGluLwoKCQkJSW4gc2hvcnQsIHRoaXMgY2hl
Y2tzIGlmIHdlIG5lZWQgdG8gZGlzcGxheSB0aGUKCQkJemVybyBzeW1ib2wgYWZ0ZXIgdGhlIGRv
dC4KCQkqLwoJCS0tX3AtemVybzE6IGNhbGMoCgkJCXZhcigtLV9wLWQxKSArIG1heCgwLCAxIC0g
dmFyKC0tX3AtcGFydDIpKQoJCSk7CgoJCS8qCgkJCUNoZWNraW5nIGlmIHRoZSB2YWx1ZSBpcyBl
bXB0eTogYDFgIHdoZW4gaXQgaXMsCgkJCXdpbGwgdXNlIGluaXRpYWwgdmFsdWUgd2hpY2ggaXMg
YDBgIG90aGVyd2lzZS4KCQkqLwoJCS0tX3AtaXMtZW1wdHk6IDEgdmFyKC0tcHJldmlldyk7CgoJ
CS8qCgkJCUNoZWNraW5nIGlmIHRoZSB2YWx1ZSBpcyBgaW5pdGlhbGAv4oCcSUFDVlTigJ0uCgkJ
CUFzIGl0IHdpbGwgYWxzbyBjYXRjaCB0aGUgZW1wdHkgdmFsdWUsIGFuZCB3ZQoJCQlhbHJlYWR5
IGNoZWNrZWQgaXQsIHdlIGNhbiBuYXJyb3cgaXQgZG93bi4KCQkqLwoJCS0tX3AtaXMtaW5pdGlh
bDoKCQkJY2FsYygxIC0gdmFyKC0tX3AtaXMtZW1wdHkpKSB2YXIoLS1wcmV2aWV3LCk7CgoJCS8q
CgkJCVR5cGUtZ3JpbmRpbmcgdGhlIHZhbHVlIHRvIGNoZWNrIGlmIGl0IGlzIGEKCQkJc3RyaW5n
LiBJdCBjYW4gYWNjZXB0IG11bHRpcGxlIHN0cmluZ3MsIGFuZCB3ZQoJCQl1c2UgYCIiYCB0byBl
eGNsdWRlIG51bWJlcnMuCgoJCQlUaGlzIG1lYW5zIHdlIHdpbGwgbGF0ZXIgbmVlZCB0byBleGNs
dWRlIGVtcHR5CgkJCXZhbHVlcyB3aGVuIGRpc3BsYXlpbmcgcXVvdGVzLgoJCSovCgkJLS1fcC1p
cy1zdHJpbmctb3ItMDogdmFyKC0tcHJldmlldykgIiI7CgkJLS1fcC1pcy1zdHJpbmc6CgkJCXZh
cigtLV9wLWhhcy1zdHJpbmdzLCB2YXIoLS1fcC1pcy1zdHJpbmctb3ItMCkpCgkJCXZhcigtLV9w
LW5vLXN0cmluZ3MsIDApOwoKCQkvKgoJCQlXZSBjb25zaWRlciB0aGUgdmFsdWUgdG8gYmUgYSBu
dW1iZXIgaWYgaXQgaXMKCQkJbm90IGEgc3RyaW5nLCBlbXB0eSwgb3IgaW5pdGlhbC4gVGhpcyBp
cyBub3QKCQkJdGhlIG9ubHkgY2hlY2ssIHdlIHdpbGwgbGF0ZXIgbmVlZCB0byBleGNsdWRlCgkJ
CWN1c3RvbSBpZGVudHMgdmlhIGEgZGlmZmVyZW50IHRlY2huaXF1ZS4KCQkqLwoJCS0tX3AtaXMt
bnVtYmVyOiBtYXgoCgkJCTAsCgkJCTEKCQkJLQoJCQl2YXIoLS1fcC1pcy1zdHJpbmcpCgkJCS0K
CQkJdmFyKC0tX3AtaXMtZW1wdHkpCgkJCS0KCQkJdmFyKC0tX3AtaXMtaW5pdGlhbCkKCQkpOwoK
CQkvKiBUeXBlLWdyaW5kaW5nIGlkZW50cyB0aGF0IHdlIGtub3cgb2YgKi8KCQktLWtub3duLWlk
ZW50OiAgICAgICAgdmFyKC0tcHJldmlldyk7CgkJLS1fcC1pcy0xLWlmLWtub3duOiAgIHZhcigt
LWtub3duLWlkZW50KTsKCQktLV9wLWlzLWtub3duOiAgICAgICAgdmFyKC0tX3AtaXMtMS1pZi1r
bm93bik7CgoJCS0tX3AtYnVpbHRpbi1pZGVudDogICB2YXIoLS1wcmV2aWV3KTsKCQktLV9wLWlz
LTEtaWYtYnVpbHRpbjogdmFyKC0tX3AtYnVpbHRpbi1pZGVudCk7CgkJLS1fcC1pcy1idWlsdGlu
OiAgICAgIHZhcigtLV9wLWlzLTEtaWYtYnVpbHRpbik7CgoJCS0tX3AtaXMtY3VzdG9tLWlkZW50
OiB2YXIoLS1wcmV2aWV3KTsKCQktLV9wLWlzLW5vbmUtb3ItMDogICAgdmFyKC0tX3AtaXMtY3Vz
dG9tLWlkZW50KTsKCQktLV9wLWlzLW5vbmU6ICAgICAgICAgdmFyKC0tX3AtaXMtbm9uZS1vci0w
KTsKCgkJLyoKCQkJQ2hlY2tpbmcgaWYgdGhlIHZhbHVlIGlzIGEgY29sb3IuIGBjb2xvci1taXgo
KWAKCQkJYWxsb3dzIHVzIHRvIHN3aXRjaCB0byBhIGAwYCBmb3IgYW55IG5vbi1jb2xvcgoJCQl2
YWx1ZSB3aGlsZSBleGNsdWRpbmcgbnVtYmVycy4KCQkqLwoJCS0tX3AtaXMtY29sb3Itb3ItMDoK
CQkJY29sb3ItbWl4KGluIGhzbCwgdmFyKC0tcHJldmlldykgMTAwJSwgcmVkIDAlKTsKCQktLV9w
LWlzLWNvbG9yOiB2YXIoLS1fcC1pcy1jb2xvci1vci0wKTsKCgkJLyoKCQkJUHJvYmxlbSB3aXRo
IHRoZSBgY29sb3JgIGlzIHRoYXQgaXQgd2lsbCByZXN1bHQKCQkJaW4gYGN1cnJlbnRDb2xvcmAs
IG92ZXJyaWRpbmcgYW55IGNvbG9yIHRoYXQgaXMKCQkJc2V0IG9uIHRoZSBwc2V1ZG8gb3RoZXJ3
aXNlLiBNYXliZSB3ZSBjb3VsZCB1c2UKCQkJa2V5ZnJhbWVkIHRvZ2dsZXMgdG8gZG8gdGhpcz8g
V2UgY291bGQgZG8ganVzdAoJCQlgY29sb3ItbWl4KGluIG9rbGNoLCB2YXIoLS1wcmV2aWV3LCks
IHJlZCAwJSlgLAoJCQlidXQgU2FmYXJpIHdpbGwgZmFpbCBpbiBzb21lIGNhc2VzLgoJCSovCgkJ
LS1fcC1jb2xvcjogY29sb3ItbWl4KAoJCQlpbiBva2xjaCwKCQkJdmFyKC0tcHJldmlldywpIGNh
bGMoMTAwJSAqIHZhcigtLV9wLWlzLWNvbG9yKSksCgkJCWN1cnJlbnRDb2xvcgoJCSk7CgoJCS8q
CgkJCURlZmluaW5nIHRoZSB2YWx1ZSBmb3IgYGNvdW50ZXItcmVzZXRgLAoJCQl3aXRoIGFsbCB0
aGUgcGFydHMgbmVlZGVkLgoJCSovCgkJLS1fcC1yZXNldDoKCQkJdmFyKC0tV0hFTiwgdmFyKC0t
cHJldmlldykpCgkJCS0tX3AtaXMtY29sb3IgICB2YXIoLS1fcC1pcy1jb2xvcikKCQkJLS1fcC1p
cy1ub25lICAgIHZhcigtLV9wLWlzLW5vbmUpCgkJCS0tX3AtaXMtZW1wdHkgICB2YXIoLS1fcC1p
cy1lbXB0eSkKCQkJLS1fcC1pcy1pbml0aWFsIHZhcigtLV9wLWlzLWluaXRpYWwpCgkJCS8qCgkJ
CQlFbXB0eSB2YWx1ZSB3aWxsIHJlc3VsdCBpbiBmYWxzZS1wb3NpdGl2ZQoJCQkJaXMtc3RyaW5n
LCBuZWVkIHRvIG5hcnJvdy4KCQkJKi8KCQkJLS1fcC1xdW90ZSBtYXgoCgkJCQkwLAoJCQkJdmFy
KC0tX3AtaXMtc3RyaW5nKSAtIHZhcigtLV9wLWlzLWVtcHR5KQoJCQkpCgkJCS0tX3Atc2lnbiB2
YXIoLS1fcC1zaWduKQoJCQktLV9wLXBhcnQxIGNhbGMoCgkJCQkvKgoJCQkJCUFwcGx5IHRoZSBw
YXJ0IHZhbHVlIG9ubHkgaWYgaXQgaXMKCQkJCQlhbiBhY3R1YWwgbnVtYmVyLgoJCQkJKi8KCQkJ
CXZhcigtLV9wLXBhcnQxKSAqIHZhcigtLV9wLWlzLW51bWJlcikKCQkJCSsKCQkJCS8qCgkJCQkJ
T3RoZXJ3aXNlLCBpdCBjYW4gYmUgNDI0MjQyLi40MjQyNDQKCQkJCQliYXNlZCBvbiB2YXJpb3Vz
IGZhY3RvcnMsIGluIHdoaWNoIGNhc2UKCQkJCQlpdCB3aWxsIGJlIG9taXR0ZWQsIGJ1dCBjb3Vs
ZCBiZSB1c2VkIHRvCgkJCQkJZGlzcGxheSBvdGhlciB2YWx1ZXMgaWYgbmVjZXNzYXJ5LAoJCQkJ
CWxpa2UgZm9yIGlkZW50cyBvciBjb2xvcnMuCgkJCQkqLwoJCQkJNDI0MjQyICogKDEgLSB2YXIo
LS1fcC1pcy1udW1iZXIpKQoJCQkJKwoJCQkJdmFyKC0tX3AtaXMtYnVpbHRpbikKCQkJCSsKCQkJ
CXZhcigtLV9wLWlzLWtub3duKQoJCQkJKwoJCQkJdmFyKC0tX3AtaXMtbm9uZSkKCQkJCSsKCQkJ
CXZhcigtLV9wLWlzLWNvbG9yKQoJCQkpCgkJCS0tX3AtZG90ICAgdmFyKC0tX3AtcGFydDIpCgkJ
CS0tX3AtemVybzEgdmFyKC0tX3AtemVybzEpCgkJCS0tX3AtemVybzIgY2FsYyh2YXIoLS1fcC16
ZXJvMSkgKyB2YXIoLS1fcC1kMikpCgkJCS0tX3AtcGFydDIgY2FsYygKCQkJCXZhcigtLV9wLWQx
KQoJCQkJKgoJCQkJY2xhbXAoCgkJCQkJMSwKCQkJCQkxMCAqICh2YXIoLS1fcC1kMikgKyB2YXIo
LS1fcC1kMykpLAoJCQkJCTEwCgkJCQkpCgkJCQkrCgkJCQl2YXIoLS1fcC1kMikKCQkJKQoJCQkt
LV9wLXBhcnQzIHZhcigtLV9wLWQzKQoKCQkJLyoKCQkJCUFzIHdlIGRvbuKAmXQgaGF2ZSBgcm91
bmQoZnJvbS16ZXJvLCDigKYpYCwKCQkJCXdlIGhhdmUgdG8gdXNlIGBhYnMoKWAgYW5kIHJvdW5k
IHVwLAoJCQkJc28gd2Ugd2lsbCBnZXQgYSBgMGAgb3IgYSBwb3NpdGl2ZQoJCQkJbm9uLWZyYWN0
aW9uYWwgbnVtYmVyLgoKCQkJCUFsdGhvdWdoLCBhcyB3ZSBoYXZlIHRoZSBgLS1fcC1zaWduYCB3
ZSBjYW4KCQkJCXVzZSBpdCBpbnN0ZWFkIG9mIGEgYG1heCgpYCB3b3JrYXJvdW5kLgoKCQkJCUlm
IHdlIGNvdWxkIGRvIGBmcm9tLXplcm9gLCB3ZSBjb3VsZCBiZSBvawoJCQkJd2l0aCBuZWdhdGl2
ZSB2YWx1ZXMgdG9vLgoJCQkqLwoJCQktLV9wLXVuaXQtcHggcm91bmQoCgkJCQl1cCwKCQkJCXZh
cigtLV9wLWZyb20tbGVuZ3RoKSAqIHZhcigtLV9wLXNpZ24pLAoJCQkJMQoJCQkpCgkJCS0tX3At
dW5pdC1kZWcgcm91bmQoCgkJCQl1cCwKCQkJCXZhcigtLV9wLWZyb20tYW5nbGUpICogdmFyKC0t
X3Atc2lnbiksCgkJCQkxCgkJCSkKCQkJLS1fcC11bml0LW1zIHJvdW5kKAoJCQkJdXAsCgkJCQl2
YXIoLS1fcC1mcm9tLXRpbWUpICogdmFyKC0tX3Atc2lnbiksCgkJCQkxCgkJCSkKCQkJLS1fcC11
bml0LXBlcmMgcm91bmQoCgkJCQl1cCwKCQkJCXZhcigtLV9wLWZyb20tcGVyY2VudGFnZSkgKiB2
YXIoLS1fcC1zaWduKSwKCQkJCTEKCQkJKQoKCQkJLyogRXh0ZW5zaW9uIGZvciB0aGUgcmVzZXQg
dmFsdWUgKi8KCQkJdmFyKC0tcHJldmlldy1yZXNldC1leHRlbnNpb24sKQoJCTsKCgkJLyogRm9y
IHN0cmluZ3MsIHdlIGp1c3QgbmVlZCB0byBlbnN1cmUgdGhlIHR5cGUgKi8KCQktLV9wLWFzLXN0
cmluZzogdmFyKC0tcHJldmlldyk7CgoJCS8qCgkJCURlZmluaW5nIHRoZSB2YWx1ZSBmb3IgYGNv
bnRlbnRgLCB3aXRoIGFsbCB0aGUKCQkJcGFydHMgbmVlZGVkLiBUaGUgc2Vjb25kIGFyZ3VtZW50
IGlzIHRoZQoJCQlgQGNvdW50ZXItc3R5bGVgLCB3aGljaCBkZXRlcm1pbmUgaG93IHRvIGRpc3Bs
YXkKCQkJdGhpbmdzLiBTZWUgdGhlIGxpc3Qgb2YgdGhlbSBpbiB0aGUgZW5kLgoJCSovCgkJLS1f
cC1jb250ZW50OgoJCQl2YXIoLS1XSEVOLCB2YXIoLS1wcmV2aWV3KSkKCQkJdmFyKC0tcHJldmll
dy1wcmVmaXgsKQoKCQkJLyoKCQkJCVdlIGRvbuKAmXQgaGF2ZSBhIGdvb2Qgd2F5IHRvIGNvbnZl
cnQgYW4gaWRlbnQKCQkJCXRvIGEgc3RyaW5nIGZvciBub3csIHNvIHdlIGhhdmUgdG8gdXNlIGEK
CQkJCWZpbml0ZSBsaXN0IG9mIGN1c3RvbSBzdHlsZXMgZm9yIHRoaXMuCgkJCSovCgkJCWNvdW50
ZXIoXywgdmFyKC0ta25vd24taWRlbnQpKQoJCQljb3VudGVyKF8sIHZhcigtLV9wLWJ1aWx0aW4t
aWRlbnQpKQoJCQkvKgoJCQkJV2UgY2Fu4oCZdCBoYXZlIGEgc3R5bGUgd2l0aCB0aGUgbmFtZSBg
bm9uZWAsCgkJCQlzbyB3ZSBncmluZCBmb3IgaXQuCgkJCSovCgkJCWNvdW50ZXIoLS1fcC1pcy1u
b25lLCAtLV9wLWlzLW5vbmUpCgkJCS8qCgkJCQlUaGUgY2FwdHVyZWQgdmFsdWUgdGhhdCBpcyB1
c2VkIGhlcmUgd2lsbAoJCQkJYmUgNDI0MjQzLCBhbmQgaWYgd2UgZG9u4oCZdCBjaGFuZ2UgaXQK
CQkJCW90aGVyd2lzZSAod2hlbiB3ZSBjYW4gZGV0ZWN0IGEKCQkJCW5vbi1kaW1lbnNpb24gdHlw
ZSksIHdlIHNob3cgYDx1bmtub3duPmAuCgkJCSovCgkJCWNvdW50ZXIoLS1fcC1wYXJ0MSwgLS1f
cC1pcy11bmtub3duKQoJCQkvKgoJCQkJT3RoZXJ3aXNlLCB3ZSBzaG93IHNvbWUgb3RoZXIKCQkJ
CWRldGVjdGVkIHR5cGVzLgoJCQkqLwoJCQljb3VudGVyKC0tX3AtaXMtY29sb3IsICAgLS1fcC1p
cy1jb2xvcikKCQkJY291bnRlcigtLV9wLWlzLWVtcHR5LCAgIC0tX3AtaXMtZW1wdHkpCgkJCWNv
dW50ZXIoLS1fcC1pcy1pbml0aWFsLCAtLV9wLWlzLWluaXRpYWwpCgoJCQkvKgoJCQkJRm9yIHN0
cmluZ3MsIHdlIGNhbiB3cmFwIHRoZSB2YWx1ZSB3aXRoCgkJCQlzaW5nbGUgcXVvdGVzLiBOb3Rl
IHRoYXQgZm9yIG11bHRpcGxlCgkJCQlzdHJpbmdzIGluc2lkZSBhIHZhbHVlIHdlIGNhbm5vdCBt
YXAKCQkJCXRocm91Z2ggdGhlbSBzYWRseS4KCQkJKi8KCQkJY291bnRlcigtLV9wLXF1b3RlLCAt
LV9wLXF1b3RlKQoJCQl2YXIoLS1fcC1oYXMtc3RyaW5ncywgdmFyKC0tX3AtYXMtc3RyaW5nKSkK
CQkJY291bnRlcigtLV9wLXF1b3RlLCAtLV9wLXF1b3RlKQoKCQkJLyoKCQkJCVRoZSBgPGRpbWVu
c2lvbj5gLWxpa2UgdmFsdWVzOgoJCQkJd2Ugc2VwYXJhdGUgYWxsIHRoZSBwYXJ0cy4KCQkJKi8K
CQkJY291bnRlcigtLV9wLXNpZ24sICAgICAgLS1fcC1zaWduKQoJCQljb3VudGVyKC0tX3AtcGFy
dDEsICAgICAtLV9wLWFzLW51bWJlcikKCQkJY291bnRlcigtLV9wLWRvdCwgICAgICAgLS1fcC1o
YXMtZG90KQoJCQljb3VudGVyKC0tX3AtemVybzEsICAgICAtLV9wLWxlYWRpbmctemVybykKCQkJ
Y291bnRlcigtLV9wLXplcm8yLCAgICAgLS1fcC1sZWFkaW5nLXplcm8pCgkJCWNvdW50ZXIoLS1f
cC1wYXJ0MiwgICAgIC0tX3AtaGFzLWRlY2ltYWxzKQoJCQljb3VudGVyKC0tX3AtcGFydDMsICAg
ICAtLV9wLWhhcy1kZWNpbWFscykKCQkJY291bnRlcigtLV9wLXVuaXQtcHgsICAgLS1fcC11bml0
LXB4KQoJCQljb3VudGVyKC0tX3AtdW5pdC1kZWcsICAtLV9wLXVuaXQtZGVnKQoJCQljb3VudGVy
KC0tX3AtdW5pdC1tcywgICAtLV9wLXVuaXQtbXMpCgkJCWNvdW50ZXIoLS1fcC11bml0LXBlcmMs
IC0tX3AtdW5pdC1wZXJjKQoKCQkJLyogRXh0ZW5zaW9uIGZvciB0aGUgY29udGVudCB2YWx1ZSAq
LwoJCQl2YXIoLS1wcmV2aWV3LWNvbnRlbnQtZXh0ZW5zaW9uLCkKCgkJCXZhcigtLXByZXZpZXct
c3VmZml4LCkKCQk7Cgl9CgoJKiB7CgkJLyoKCQkJSWYgd2Ugd2FudCB0byB1c2UgdGhlIHZhbHVl
cyBjYWxjdWxhdGVkIG9uIHRoZQoJCQllbGVtZW50IG9uIHRoZSBwc2V1ZG9zLCB3ZSBuZWVkIHRv
IGV4cGxpY2l0bHkKCQkJaW5oZXJpdCB0aGVtIHZpYSBzZXBhcmF0ZSBjdXN0b20gcHJvcGVydGll
cy4KCQkqLwoJCS0tX3AtcmVzZXQtaW5oZXJpdGVkOiAgIHZhcigtLV9wLXJlc2V0KTsKCQktLV9w
LWNvbnRlbnQtaW5oZXJpdGVkOiB2YXIoLS1fcC1jb250ZW50KTsKCQktLV9wLWNvbG9yLWluaGVy
aXRlZDogICB2YXIoLS1fcC1jb2xvcik7CgoJCS8qCgkJCUN5Y2xpYyB0b2dnbGVzIGZvciBzd2l0
Y2hpbmcgdGhlIGRlZmF1bHQgcGxhY2UKCQkJd2Ugb3V0cHV0IHRoZSBgLS1wcmV2aWV3YCB3aGVu
IGl0IGlzIGRlZmluZWQKCQkJb24gdGhlIGVsZW1lbnQgaXRzZWxmLgoJCSovCgkJLS1wcmV2aWV3
LXBvc2l0aW9uOiB2YXIoLS1wcmV2aWV3LS1hZnRlcik7CgkJLS1wcmV2aWV3LS1hZnRlcjogICB2
YXIoLS1wcmV2aWV3LXBvc2l0aW9uLCk7CgkJLS1wcmV2aWV3LS1iZWZvcmU6ICB2YXIoLS1wcmV2
aWV3LXBvc2l0aW9uLCk7Cgl9CgoJLyoKCQlTYXZpbmcgdGhlIHZhbHVlcyBvZiBjeWNsaWMgdG9n
Z2xlcyB3aXRoIGRpZmZlcmVudAoJCW5hbWVzIGJhc2VkIG9uIHBvc2l0aW9uCgkqLwoJKjo6YmVm
b3JlIHsKCQktLXByZXZpZXctLWluaGVyaXRlZDogdmFyKC0tcHJldmlldy0tYmVmb3JlKTsKCQkt
LXByZXZpZXctLXNlbGY6ICAgICAgdmFyKC0tcHJldmlldy0tYWZ0ZXIpOwoJfQoJKjo6YWZ0ZXIg
ewoJCS0tcHJldmlldy0taW5oZXJpdGVkOiB2YXIoLS1wcmV2aWV3LS1hZnRlcik7CgkJLS1wcmV2
aWV3LS1zZWxmOiAgICAgIHZhcigtLXByZXZpZXctLWJlZm9yZSk7Cgl9CgoJKjo6YmVmb3JlLAoJ
Kjo6YWZ0ZXIgewoJCS8qCgkJCUlmIHdlIHdhbnQgdG8gYmUgYWJsZSB0byBzZXQgdGhlIHZhbHVl
IGVpdGhlcgoJCQlvbiBhIHBzZXVkbywgb3Igb24gdGhlIGVsZW1lbnQgaXRzZWxmLCB3ZSBuZWVk
CgkJCXRvIGhhdmUgYSBmZXcgbW9yZSBjdXN0b20gcHJvcGVydGllcy4KCQkqLwoJCS0tX3AtcmVz
ZXQtdmFsdWU6CgkJCXZhcigtLV9wLXJlc2V0KSAgIHZhcigtLVdIRU4sIHZhcigtLXByZXZpZXcp
KTsKCgkJLS1fcC1jb250ZW50LXZhbHVlOgoJCQl2YXIoLS1fcC1jb250ZW50KSB2YXIoLS1XSEVO
LCB2YXIoLS1wcmV2aWV3KSk7CgoJCS0tX3AtY29sb3ItdmFsdWU6CgkJCXZhcigtLV9wLWNvbG9y
KSAgIHZhcigtLVdIRU4sIHZhcigtLXByZXZpZXcpKTsKCgkJLS1fcC1yZXNldC1maW5hbDogdmFy
KAoJCQktLV9wLXJlc2V0LXZhbHVlLAoJCQl2YXIoLS1fcC1yZXNldC1pbmhlcml0ZWQpCgkJKTsK
CQktLV9wLWNvbG9yLWZpbmFsOiB2YXIoCgkJCS0tX3AtY29sb3ItdmFsdWUsCgkJCXZhcigtLV9w
LWNvbG9yLWluaGVyaXRlZCkKCQkpOwoKCQkvKgoJCQlVc2UgZGlmZmVyZW50IHZhbHVlcyBiYXNl
ZCBvbgoJCQl0aGUgYC0tcHJldmlldy1wb3NpdGlvbmAKCQkqLwoJCS0tcHJldmlldy1jb250ZW50
OgoJCQl2YXIoLS1wcmV2aWV3LS1zZWxmLCB2YXIoLS1fcC1jb250ZW50KSkKCQkJdmFyKC0tcHJl
dmlldy0taW5oZXJpdGVkLCB2YXIoCgkJCQktLV9wLWNvbnRlbnQtdmFsdWUsCgkJCQl2YXIoLS1f
cC1jb250ZW50LWluaGVyaXRlZCkKCQkJKSkKCQk7CgkJLS1wcmV2aWV3LXJlc2V0OgoJCQl2YXIo
LS1wcmV2aWV3LS1zZWxmLCAgICAgIHZhcigtLV9wLXJlc2V0KSkKCQkJdmFyKC0tcHJldmlldy0t
aW5oZXJpdGVkLCB2YXIoLS1fcC1yZXNldC1maW5hbCkpCgkJOwoKCQljb250ZW50OiAgICAgICB2
YXIoLS1wcmV2aWV3LWNvbnRlbnQsIHJldmVydC1sYXllcik7CgkJY291bnRlci1yZXNldDogdmFy
KC0tcHJldmlldy1yZXNldCwgICByZXZlcnQtbGF5ZXIpOwoJCWNvbG9yOgoJCQl2YXIoCgkJCQkt
LXByZXZpZXctLXNlbGYsCgkJCQl2YXIoLS1fcC1jb2xvciwgICAgICAgcmV2ZXJ0LWxheWVyKQoJ
CQkpCgkJCXZhcigKCQkJCS0tcHJldmlldy0taW5oZXJpdGVkLAoJCQkJdmFyKC0tX3AtY29sb3It
ZmluYWwsIHJldmVydC1sYXllcikKCQkJKQoJCTsKCX0KCgkvKgoJCVNhZmFyaSA8IDE4LjIgZG9l
cyBub3Qgc3VwcG9ydCBgPHN0cmluZz5gIGluc2lkZQoJCWBAcHJvcGVydHlgLCBzbyB3ZSBoYXZl
IHRvIGhpZGUgYW55dGhpbmcgcmVsYXRlZAoJCXRvIGl0IGJlaGluZCBzcGFjZSB0b2dnbGVzIGZv
ciBldmVyeXRoaW5nIGVsc2UKCQl0byB3b3JrIGNvcnJlY3RseS4KCSovCglib2R5IHsKCQktLV9w
LWhhcy1zdHJpbmdzOiA7CgkJLS1fcC1uby1zdHJpbmdzOiBpbml0aWFsOwoJfQoKCS8qCgkJU2Fm
YXJpIHN1cHBvcnRzIGNvbnRhaW5lciBzdHlsZSBxdWVyaWVzIGZyb20gMTgsCgkJc28gd2UgY2Fu
IHVzZSB0aGVtIHRvIGRldGVjdCB0aGUgYDxzdHJpbmc+YAoJCXN1cHBvcnQsIGFuZCBpZiB0aGVy
ZSBpcyBubyBzdHlsZXIgcXVlcmllcywKCQl0aGluZ3Mgd2lsbCBzdGlsbCB3b3JrLgoJKi8KCUBj
b250YWluZXIgc3R5bGUoLS1fcC1hcy1zdHJpbmc6ICIiKSB7CgkJYm9keSB7CgkJCS0tX3AtaGFz
LXN0cmluZ3M6IGluaXRpYWw7CgkJCS0tX3Atbm8tc3RyaW5nczogOwoJCX0KCX0KCgkvKgoJCU5v
dGU6IGV2ZXJ5dGhpbmcgYmVsb3cgaXMgaW5zaWRlIGEgbGF5ZXIgYmVjYXVzZQoJCW90aGVyd2lz
ZSBpdCBkaWQgbm90IHdvcmsgd2hlbiB1c2VkIGluIG15IGJsb2cncwoJCXNldHVwLCBmb3Igc29t
ZSByZWFzb24uIEJ1dCBhbHNvLCBubyByZWFzb24gdG8gbm90CgkJYWRkIGl0IG91dHNpZGUgb2Yg
dGhlIGxheWVyIGlmIHdlIGNhbiBoYXZlIGl0IGhlcmUuCgkqLwoKCS8qCgkJSXQgaXMgcG9zc2li
bGUgdG8gb3ZlcnJpZGUgdGhpcyBkZWZpbml0aW9uIGZyb20KCQlvdXRzaWRlIGFuZCBwcm92aWRl
IG90aGVyIGRlZmluZWQgYEBjb3VudGVyLXN0eWxlYAoJCWluIGl0cyBgc3ludGF4YCAod2hpbGUg
a2VlcGluZyB0aGUgYGVtcHR5YCkuCgkqLwoJQHByb3BlcnR5IC0ta25vd24taWRlbnQgewoJCXN5
bnRheDogICAgICAgImVtcHR5IjsKCQlpbml0aWFsLXZhbHVlOiBlbXB0eTsKCQlpbmhlcml0czog
ICAgICBmYWxzZTsKCX0KCgkvKgoJCVRoaXMgaXMgdGhlIGJ1aWx0LWluIGxpc3RzLCB3aGljaCBz
aG93cyBob3cgaXQKCQlpcyBkb25lIGZvciBhIGZldyBvZiB0aGVtLgoJKi8KCUBwcm9wZXJ0eSAt
LV9wLWJ1aWx0aW4taWRlbnQgewoJCXN5bnRheDogICAgICAgImF1dG98bWF4LWNvbnRlbnR8bWlu
LWNvbnRlbnR8ZW1wdHkiOwoJCWluaXRpYWwtdmFsdWU6IGVtcHR5OwoJCWluaGVyaXRzOiAgICAg
IGZhbHNlOwoJfQoKCS8qIFRoaXMgaXMgaG93IHRoZSBrbm93biBpZGVudHMgc2hvdWxkIGJlIGRl
ZmluZWQuICovCglAY291bnRlci1zdHlsZSBhdXRvIHsKCQlzeXN0ZW06ICAgY3ljbGljOwoJCXN5
bWJvbHM6ICJhdXRvIjsKCX0KCUBjb3VudGVyLXN0eWxlIG1heC1jb250ZW50IHsKCQlzeXN0ZW06
ICAgY3ljbGljOwoJCXN5bWJvbHM6ICJtYXgtY29udGVudCI7Cgl9CglAY291bnRlci1zdHlsZSBt
aW4tY29udGVudCB7CgkJc3lzdGVtOiAgIGN5Y2xpYzsKCQlzeW1ib2xzOiAibWluLWNvbnRlbnQi
OwoJfQoKCS8qIEF0IHRoZSBtb21lbnQgd2UgZG9u4oCZdCBjb3ZlciBhbGwgYDxkaW1lbnNpb24+
YC4gKi8KCUBwcm9wZXJ0eSAtLV9wLWNhcHR1cmVkIHsKCQlzeW50YXg6CgkJCSI8bnVtYmVyPnw8
bGVuZ3RoPnw8YW5nbGU+fDx0aW1lPnw8cGVyY2VudGFnZT4iOwoJCS8qCgkJCVdpbGwgYmUgdXNl
ZCB0byBkaXNwbGF5IGA8dW5rbm93bj5gIHdoZW4gbm90CgkJCW1hdGNoaW5nIGEgZGltZW5zaW9u
LCBhbmQgaWYgaXQgaXMgbm90IG1vZGlmaWVkCgkJCWJ5IHNvbWUgb3RoZXIgZGV0ZWN0ZWQgdHlw
ZS4KCQkqLwoJCWluaXRpYWwtdmFsdWU6IDQyNDI0MzsKCQlpbmhlcml0czogICAgICBmYWxzZTsK
CX0KCgkvKgoJCVZhcmlhYmxlcyBmb3IgZGV0ZWN0aW5nIHRoZSBkaW1lbnNpb24gdHlwZTogdGhl
eSBhbGwKCQloYXZlIHRoZSBzYW1lIHR5cGUsIGJ1dCB3aWxsIGJlIGNhbGxlZCB3aXRoCgkJZGlm
ZmVyZW50IHR5cGVzIGFuZCB1c2VkIGxhdGVyIHRvIGRpc3BsYXkgdW5pdHMuCgkqLwoJQHByb3Bl
cnR5IC0tX3AtZnJvbS1udW1iZXIgewoJCXN5bnRheDogICAgICAgIjxudW1iZXI+IjsKCQlpbml0
aWFsLXZhbHVlOiAwOwoJCWluaGVyaXRzOiAgICAgIGZhbHNlOwoJfQoJQHByb3BlcnR5IC0tX3At
ZnJvbS1sZW5ndGggewoJCXN5bnRheDogICAgICAgIjxudW1iZXI+IjsKCQlpbml0aWFsLXZhbHVl
OiAwOwoJCWluaGVyaXRzOiAgICAgIGZhbHNlOwoJfQoJQHByb3BlcnR5IC0tX3AtZnJvbS1hbmds
ZSB7CgkJc3ludGF4OiAgICAgICAiPG51bWJlcj4iOwoJCWluaXRpYWwtdmFsdWU6IDA7CgkJaW5o
ZXJpdHM6ICAgICAgZmFsc2U7Cgl9CglAcHJvcGVydHkgLS1fcC1mcm9tLXRpbWUgewoJCXN5bnRh
eDogICAgICAgIjxudW1iZXI+IjsKCQlpbml0aWFsLXZhbHVlOiAwOwoJCWluaGVyaXRzOiAgICAg
IGZhbHNlOwoJfQoJQHByb3BlcnR5IC0tX3AtZnJvbS1wZXJjZW50YWdlIHsKCQlzeW50YXg6ICAg
ICAgICI8bnVtYmVyPiI7CgkJaW5pdGlhbC12YWx1ZTogMDsKCQlpbmhlcml0czogICAgICBmYWxz
ZTsKCX0KCgkvKgoJCUNhcHR1cmVkIHN0cmluZywgc28gd2UgY2FuIGVhc2lseSBkaXNwbGF5IGl0
CgkJcmlnaHQgYXdheS4KCSovCglAcHJvcGVydHkgLS1fcC1hcy1zdHJpbmcgewoJCXN5bnRheDog
ICAgICAgIjxzdHJpbmc+KyI7CgkJaW5pdGlhbC12YWx1ZTogIiI7CgkJaW5oZXJpdHM6ICAgICAg
ZmFsc2U7Cgl9CgoJLyoKCQlCZWxvdyBhcmUgYWxsIHRoZSB0eXBlIGdyaW5kaW5nIHRoYXQgaXMg
Z29pbmcgb24KCQlmb3IgZGV0ZWN0aW5nIHZhcmlvdXMgdHlwZXMuIFNlZQoJCWh0dHBzOi8vd3d3
LmJpdG92aS5jb20vYmxvZy9jc3Mtb25seS10eXBlLWdyaW5kaW5nLWNhc3RpbmctdG9rZW5zLWlu
dG8tdXNlZnVsLXZhbHVlcwoJKi8KCUBwcm9wZXJ0eSAtLV9wLWlzLXN0cmluZy1vci0wIHsKCQlz
eW50YXg6ICAgICAgICI8c3RyaW5nPit8PG51bWJlcj4iOwoJCWluaXRpYWwtdmFsdWU6IDA7CgkJ
aW5oZXJpdHM6ICAgICAgZmFsc2U7Cgl9CglAcHJvcGVydHkgLS1fcC1pcy1zdHJpbmcgewoJCXN5
bnRheDogICAgICAgIjxudW1iZXI+IjsKCQlpbml0aWFsLXZhbHVlOiAxOwoJCWluaGVyaXRzOiAg
ICAgIGZhbHNlOwoJfQoKCUBwcm9wZXJ0eSAtLV9wLWlzLWVtcHR5IHsKCQlzeW50YXg6ICAgICAg
ICI8bnVtYmVyPiI7CgkJaW5pdGlhbC12YWx1ZTogMDsKCQlpbmhlcml0czogICAgICBmYWxzZTsK
CX0KCglAcHJvcGVydHkgLS1fcC1pcy1pbml0aWFsIHsKCQlzeW50YXg6ICAgICAgICI8bnVtYmVy
PiI7CgkJaW5pdGlhbC12YWx1ZTogMDsKCQlpbmhlcml0czogICAgICBmYWxzZTsKCX0KCglAcHJv
cGVydHkgLS1fcC1pcy1jdXN0b20taWRlbnQgewoJCXN5bnRheDogICAgICAgIjxjdXN0b20taWRl
bnQ+IjsKCQlpbml0aWFsLXZhbHVlOiBub3Qtbm9uZTsKCQlpbmhlcml0czogICAgICBmYWxzZTsK
CX0KCglAcHJvcGVydHkgLS1fcC1pcy1ub25lLW9yLTAgewoJCXN5bnRheDogICAgICAgIm5vbmV8
PGludGVnZXI+IjsKCQlpbml0aWFsLXZhbHVlOiAwOwoJCWluaGVyaXRzOiAgICAgIGZhbHNlOwoJ
fQoJQHByb3BlcnR5IC0tX3AtaXMtbm9uZSB7CgkJc3ludGF4OiAgICAgICAiPGludGVnZXI+IjsK
CQlpbml0aWFsLXZhbHVlOiAxOwoJCWluaGVyaXRzOiAgICAgIGZhbHNlOwoJfQoKCUBwcm9wZXJ0
eSAtLV9wLWlzLTEtaWYtYnVpbHRpbiB7CgkJc3ludGF4OiAgICAgICAiZW1wdHl8PGludGVnZXI+
IjsKCQlpbml0aWFsLXZhbHVlOiAxOwoJCWluaGVyaXRzOiAgICAgIGZhbHNlOwoJfQoJQHByb3Bl
cnR5IC0tX3AtaXMtYnVpbHRpbiB7CgkJc3ludGF4OiAgICAgICAiPGludGVnZXI+IjsKCQlpbml0
aWFsLXZhbHVlOiAwOwoJCWluaGVyaXRzOiAgICAgIGZhbHNlOwoJfQoKCUBwcm9wZXJ0eSAtLV9w
LWlzLTEtaWYta25vd24gewoJCXN5bnRheDogICAgICAgImVtcHR5fDxpbnRlZ2VyPiI7CgkJaW5p
dGlhbC12YWx1ZTogMTsKCQlpbmhlcml0czogICAgICBmYWxzZTsKCX0KCUBwcm9wZXJ0eSAtLV9w
LWlzLWtub3duIHsKCQlzeW50YXg6ICAgICAgICI8aW50ZWdlcj4iOwoJCWluaXRpYWwtdmFsdWU6
IDA7CgkJaW5oZXJpdHM6ICAgICAgZmFsc2U7Cgl9CgoJQHByb3BlcnR5IC0tX3AtaXMtY29sb3It
b3ItMCB7CgkJc3ludGF4OiAgICAgICAiPGNvbG9yPnw8aW50ZWdlcj4iOwoJCWluaXRpYWwtdmFs
dWU6IDA7CgkJaW5oZXJpdHM6ICAgICAgZmFsc2U7Cgl9CglAcHJvcGVydHkgLS1fcC1pcy1jb2xv
ciB7CgkJc3ludGF4OiAgICAgICAiPGludGVnZXI+IjsKCQlpbml0aWFsLXZhbHVlOiAxOwoJCWlu
aGVyaXRzOiAgICAgIGZhbHNlOwoJfQoKCS8qCgkJQmVsb3cgYXJlIHZhcmlvdXMgY291bnRlci1z
dHlsZXMgdXNlZCBmb3IKCQljb25kaXRpb25hbCBvdXRwdXQgb2YgdmFyaW91cyBwYXJ0cyBvZiB0
aGUKCQlgY29udGVudGAgYnkgbWF0Y2hpbmcgY2VydGFpbiB2YWx1ZXMuCgkqLwoKCS8qCgkJTm90
IHByZWZpeGVkIGFzIGV4cG9zZWQgdG8gYmUgdXNlZAoJCWluIGAtLWtub3duLWlkZW50YCBkZWZp
bml0aW9uLgoJKi8KCUBjb3VudGVyLXN0eWxlIGVtcHR5IHsKCQlzeXN0ZW06ICBjeWNsaWM7CgkJ
c3ltYm9sczogIiI7Cgl9CgoJLyoKCQlXZSBjYW7igJl0IGhhdmUgYSBjb3VudGVyLXN0eWxlIGBu
b25lYCwKCQlzbyBuZWVkIHRvIGdyaW5kIHRvIGl0LgoJKi8KCUBjb3VudGVyLXN0eWxlIC0tX3At
aXMtbm9uZSB7CgkJc3lzdGVtOiAgIGN5Y2xpYzsKCQlzeW1ib2xzOiAibm9uZSI7CgkJLyoKCQkJ
SGVyZSBhbmQgYmVsb3csIHdlIGNhbiB1c2UgYHJhbmdlYCB0byBzZWxlY3QKCQkJd2hlbiB0byBh
cHBseSB0aGUgdmFsdWUsIG90aGVyd2lzZSB0aGUKCQkJY291bnRlci1zdHlsZSBmcm9tIHRoZSBg
ZmFsbGJhY2tgIHdpbGwgYmUgdXNlZC4KCQkqLwoJCXJhbmdlOiAgICAxIDE7CgkJZmFsbGJhY2s6
IGVtcHR5OwoJfQoKCS8qIFRoZSByZXN0IG9mIGNvbmRpdGlvbmFsIGNvdW50ZXJzLiAqLwoKCUBj
b3VudGVyLXN0eWxlIC0tX3AtdW5pdC1weCB7CgkJc3lzdGVtOiAgIGN5Y2xpYzsKCQlzeW1ib2xz
OiAicHgiOwoJCXJhbmdlOiAgICAxIGluZmluaXRlOwoJCWZhbGxiYWNrOiBlbXB0eTsKCX0KCUBj
b3VudGVyLXN0eWxlIC0tX3AtdW5pdC1kZWcgewoJCXN5c3RlbTogICBjeWNsaWM7CgkJc3ltYm9s
czogImRlZyI7CgkJcmFuZ2U6ICAgIDEgaW5maW5pdGU7CgkJZmFsbGJhY2s6IGVtcHR5OwoJfQoJ
QGNvdW50ZXItc3R5bGUgLS1fcC11bml0LW1zIHsKCQlzeXN0ZW06ICAgY3ljbGljOwoJCXN5bWJv
bHM6ICJtcyI7CgkJcmFuZ2U6ICAgIDEgaW5maW5pdGU7CgkJZmFsbGJhY2s6IGVtcHR5OwoJfQoJ
QGNvdW50ZXItc3R5bGUgLS1fcC11bml0LXBlcmMgewoJCXN5c3RlbTogICBjeWNsaWM7CgkJc3lt
Ym9sczogIiUiOwoJCXJhbmdlOiAgICAxIGluZmluaXRlOwoJCWZhbGxiYWNrOiBlbXB0eTsKCX0K
CUBjb3VudGVyLXN0eWxlIC0tX3Atc2lnbiB7CgkJc3lzdGVtOiAgIGN5Y2xpYzsKCQlzeW1ib2xz
OiAiLSI7CgkJcmFuZ2U6ICAgIC0xIC0xOwoJCWZhbGxiYWNrOiBlbXB0eTsKCX0KCUBjb3VudGVy
LXN0eWxlIC0tX3AtYXMtbnVtYmVyIHsKCQlzeXN0ZW06ICBjeWNsaWM7CgkJc3ltYm9sczogIiI7
CgkJLyoKCQkJVGhlIHJhbmdlIGZvciBvdXIg4oCcc3lzdGVt4oCdIHZhbHVlcywKCQkJZm9yIHdo
aWNoIHdlIGRvbuKAmXQgc2hvdyB0aGUgbnVtYmVyLgoJCSovCgkJcmFuZ2U6IDQyNDI0MiA0MjQy
NDQ7Cgl9CglAY291bnRlci1zdHlsZSAtLV9wLWhhcy1kb3QgewoJCXN5c3RlbTogICBjeWNsaWM7
CgkJc3ltYm9sczogIi4iOwoJCXJhbmdlOiAgICAxIGluZmluaXRlOwoJCWZhbGxiYWNrOiBlbXB0
eTsKCX0KCUBjb3VudGVyLXN0eWxlIC0tX3AtbGVhZGluZy16ZXJvIHsKCQlzeXN0ZW06ICBjeWNs
aWM7CgkJc3ltYm9sczogIiI7CgkJcmFuZ2U6ICAgMSBpbmZpbml0ZTsKCX0KCUBjb3VudGVyLXN0
eWxlIC0tX3AtaGFzLWRlY2ltYWxzIHsKCQlzeXN0ZW06ICBjeWNsaWM7CgkJc3ltYm9sczogIiI7
CgkJcmFuZ2U6ICAgMCAwOwoJfQoJQGNvdW50ZXItc3R5bGUgLS1fcC1pcy11bmtub3duIHsKCQlz
eXN0ZW06ICAgY3ljbGljOwoJCXN5bWJvbHM6ICI8dW5rbm93bj4iOwoJCS8qCgkJCVRoZSBgNDI0
MjQzYCB3aWxsIGNvbWUgZnJvbSB0aGUgYGluaXRpYWwtdmFsdWVgCgkJCW9mIGNhcHR1cmVkIGRp
bWVuc2lvbi4KCQkqLwoJCXJhbmdlOiAgICA0MjQyNDMgNDI0MjQzOwoJCWZhbGxiYWNrOiBlbXB0
eTsKCX0KCUBjb3VudGVyLXN0eWxlIC0tX3AtcXVvdGUgewoJCXN5c3RlbTogICBjeWNsaWM7CgkJ
c3ltYm9sczogIiciOwoJCXJhbmdlOiAgICAxIDE7CgkJZmFsbGJhY2s6IGVtcHR5OwoJfQoJQGNv
dW50ZXItc3R5bGUgLS1fcC1pcy1lbXB0eSB7CgkJc3lzdGVtOiAgIGN5Y2xpYzsKCQlzeW1ib2xz
OiAiPGVtcHR5PiI7CgkJcmFuZ2U6ICAgIDEgMTsKCQlmYWxsYmFjazogZW1wdHk7Cgl9CglAY291
bnRlci1zdHlsZSAtLV9wLWlzLWluaXRpYWwgewoJCXN5c3RlbTogICBjeWNsaWM7CgkJc3ltYm9s
czogIjxpbml0aWFsPiI7CgkJcmFuZ2U6ICAgIDEgMTsKCQlmYWxsYmFjazogZW1wdHk7Cgl9CgoJ
QGNvdW50ZXItc3R5bGUgLS1fcC1pcy1jb2xvciB7CgkJc3lzdGVtOiAgIGN5Y2xpYzsKCQlzeW1i
b2xzOiAi4pagIjsKCQlyYW5nZTogICAgMSAxOwoJCWZhbGxiYWNrOiBlbXB0eTsKCX0KfQo8L3N0
eWxlPjwvaHRtbD4=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>474791</attachid>
            <date>2025-04-01 07:36:43 -0700</date>
            <delta_ts>2025-04-01 07:36:43 -0700</delta_ts>
            <desc>Test</desc>
            <filename>bug-289992.html</filename>
            <type>text/html</type>
            <size>435</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxzdHlsZT4KCmh0bWwgewogICAgLyogVXNpbmcgcHggdW5pdHMgaGVy
ZSBtYWtlcyB0aGUgYnVnIG5vdCBoYXBwZW4gKi8KCS0tcmVtOiAxcmVtOwp9Cgpib2R5IHsKCWZv
bnQtc2l6ZTogNmVtOwoJdGltZWxpbmUtc2NvcGU6IC0tZm9vOwp9CgpkaXYgewogICAgZm9udC1z
aXplOiB2YXIoLS1yZW0pOwogICAgYW5pbWF0aW9uOiAtLXRlc3Q7CiAgICBhbmltYXRpb24tdGlt
ZWxpbmU6IC0tZm9vOwp9CgpAa2V5ZnJhbWVzIC0tdGVzdCB7CgkwJSB7CiAgICAgICAgLyogU2hv
dWxkIGJlIGEgY3VzdG9tIHByb3BlcnR5LCByZWd1bGFyIHByb3BlcnR5IGRvZXMgbm90IGhhdmUg
dGhpcyBlZmZlY3QuICovCgkJLS1yYW5kb206IHVudXNlZDsKCX0KfQo8L3N0eWxlPgoKPGRpdj5X
aHkgYW0gSSBiaWcgaW4gU2FmYXJpIFRQIDIxNT88L2Rpdj4K
</data>

          </attachment>
      

    </bug>

</bugzilla>