<?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>227300</bug_id>
          
          <creation_ts>2021-06-23 09:39:03 -0700</creation_ts>
          <short_desc>Mandatory scroll snapping doesn&apos;t work correctly in tables with position:sticky</short_desc>
          <delta_ts>2021-09-27 00:09:02 -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>Scrolling</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>228989</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Martin Robinson">mrobinson</assigned_to>
          <cc>changseok</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fred.wang</cc>
    
    <cc>glenn</cc>
    
    <cc>jamesr</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>luiz</cc>
    
    <cc>mrobinson</cc>
    
    <cc>pdr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1771974</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-06-23 09:39:03 -0700</bug_when>
    <thetext>In this testcase https://codepen.io/snewcomer/pen/wvJLyzj the snapping in X doesn&apos;t behave like mandatory, when it should.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772210</commentid>
    <comment_count>1</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2021-06-24 01:24:32 -0700</bug_when>
    <thetext>This seems broken in STP, but works for me in trunk. Perhaps this was fixed by a recent change?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772374</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-06-24 11:14:56 -0700</bug_when>
    <thetext>I can reproduce at r279166.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772396</commentid>
    <comment_count>3</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2021-06-24 11:58:29 -0700</bug_when>
    <thetext>Ah, after a bit more debugging, I think the key thing here is asynchronous overflow scrolling. When I have it turned off, snapping works as expected. I suspect that the code is not snapping where it should be at some point.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772664</commentid>
    <comment_count>4</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2021-06-25 07:19:46 -0700</bug_when>
    <thetext>Similarly to https://bugs.chromium.org/p/chromium/issues/detail?id=835301 what seems to be happening here is that the `position: sticky` table headers are always at the current scroll offset. This means that these cells are always chosen as the destination of the snap operation, which means that we always snap to the current snap offset!

I think that the solution here is to ensure that when we calculate snap points, we should not take into account sticky positioning of children.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772665</commentid>
    <comment_count>5</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2021-06-25 07:20:55 -0700</bug_when>
    <thetext>It seems what might be happening in this case is that a layout is happening in between the scroll operation and the snap operation, which seems a bit wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772666</commentid>
    <comment_count>6</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2021-06-25 07:22:15 -0700</bug_when>
    <thetext>(In reply to Martin Robinson from comment #5)
&gt; It seems what might be happening in this case is that a layout is happening
&gt; in between the scroll operation and the snap operation, which seems a bit
&gt; wrong.

Ah, no this is correct. The scroll position / layout will happen while fingers are down on the touchpad, but the snap won&apos;t happen until fingers come up (ie after sticky repositioning).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773786</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-06-30 09:40:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/79971196&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775233</commentid>
    <comment_count>8</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2021-07-07 02:16:25 -0700</bug_when>
    <thetext>This seems to be the relevant specification in this case:
https://drafts.csswg.org/css-position-3/#stickypos-scroll

&gt; For the purposes of any operation targeting the scroll position
&gt; of a sticky positioned element (or one of its descendants), the sticky 
&gt; positioned element must be considered to be positioned at its initial
&gt; (non-offsetted) position

My reading of this is that regardless of the whether asynchronous overflow scrolling is on, we should use the original (non-offsetted) position of the sticky-positioned element for the snap point.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796442</commentid>
    <comment_count>9</comment_count>
      <attachid>439031</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2021-09-23 03:42:25 -0700</bug_when>
    <thetext>Created attachment 439031
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796460</commentid>
    <comment_count>10</comment_count>
      <attachid>439038</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2021-09-23 04:58:35 -0700</bug_when>
    <thetext>Created attachment 439038
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796541</commentid>
    <comment_count>11</comment_count>
      <attachid>439038</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-09-23 10:01:05 -0700</bug_when>
    <thetext>Comment on attachment 439038
Patch

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

You&apos;ll need to skip the test on iOS.

&gt; Source/WebCore/page/scrolling/ScrollSnapOffsetsInfo.cpp:334
&gt; +        OptionSet&lt;MapCoordinatesMode&gt; options;
&gt; +        options.add(UseTransforms);
&gt; +        options.add(IgnoreStickyOffsets);

OptionSet&lt;MapCoordinatesMode&gt; options = { UseTransforms, IgnoreStickyOffsets };</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796883</commentid>
    <comment_count>12</comment_count>
      <attachid>439146</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2021-09-24 07:53:04 -0700</bug_when>
    <thetext>Created attachment 439146
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797378</commentid>
    <comment_count>13</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-09-27 00:08:55 -0700</bug_when>
    <thetext>Committed r283100 (242158@main): &lt;https://commits.webkit.org/242158@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 439146.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>439031</attachid>
            <date>2021-09-23 03:42:25 -0700</date>
            <delta_ts>2021-09-23 04:58:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227300-20210923124223.patch</filename>
            <type>text/plain</type>
            <size>9288</size>
            <attacher name="Martin Robinson">mrobinson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyODc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjFkYjNiZjcxNTE1NGMx
YmExMzRmMGNiMDY1NzljOWQ3Y2RiM2YzYy4uNjRmMjQwNTQ3NGI0ZjRmZWQ3MjE2MDcxZTRiZjY5
ZGVlZjVjMmM2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDIxLTA5LTIzICBNYXJ0
aW4gUm9iaW5zb24gIDxtcm9iaW5zb25Ad2Via2l0Lm9yZz4KKworICAgICAgICBNYW5kYXRvcnkg
c2Nyb2xsIHNuYXBwaW5nIGRvZXNuJ3Qgd29yayBjb3JyZWN0bHkgaW4gdGFibGVzIHdpdGggcG9z
aXRpb246c3RpY2t5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjczMDAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc5OTcxMTk2PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIG1vZGUgZm9yIG1h
cExvY2FsVG9Db250YWluZXIgd2hpY2ggaWdub3JlcyBzdGlja3kgb2Zmc2V0cy4gVGhpcyB3aWxs
IGJlCisgICAgICAgIHVzZWQgYnkgbW9yZSBjb2RlIGluIHRoZSBmdXR1cmUuCisKKyAgICAgICAg
VGVzdDogY3NzMy9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1kcmFnLXNjcm9sbGJhci10aHVtYi13
aXRoLXN0aWNreS5odG1sCisKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxTbmFwT2Zm
c2V0c0luZm8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6dXBkYXRlU25hcE9mZnNldHNGb3JTY3Jv
bGxhYmxlQXJlYSk6IFBhc3MgdGhlIElnbm9yZVN0aWNreU9mZnNldHMgZmxhZy4KKyAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6
bWFwTG9jYWxUb0NvbnRhaW5lciBjb25zdCk6IFdoZW4gdGhlIElnbm9yZVN0aWNreU9mZnNldHMg
ZmxhZyBpcworICAgICAgICBwYXNzZWQsIGV4cGxpY2l0bHkgcmVtb3ZlIHN0aWNreSBvZmZzZXRz
IGZyb20gdGhlIGNvbnRhaW5lciBvZmZzZXQuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9i
amVjdEVudW1zLmg6IEFkZCB0aGUgSWdub3JlU3RpY2t5T2ZmZXN0cyBmbGFnLgorCiAyMDIxLTA5
LTIyICBBbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbTEZDXVtJbnRl
Z3JhdGlvbl0gRmxvd0hhc1RleHRTZWN1cml0eSBGbG93SGFzSnVzdGlmaWVkTm9uQnJlYWtpbmdT
cGFjZSBhcmUgdW51c2VkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGlu
Zy9TY3JvbGxTbmFwT2Zmc2V0c0luZm8uY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxp
bmcvU2Nyb2xsU25hcE9mZnNldHNJbmZvLmNwcAppbmRleCBhOTA1MjUyMmIwY2ZmYmYwY2Y5MTUw
ZTNlMGNhMmU2MjgwNTdlOTE5Li4yZWFhYTJjN2E1MzRkNzQ3N2FiMDU4ZTU5ZmNkZGFiNmFlOTIw
MjA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxTbmFw
T2Zmc2V0c0luZm8uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9s
bFNuYXBPZmZzZXRzSW5mby5jcHAKQEAgLTMyOSw3ICszMjksNyBAQCB2b2lkIHVwZGF0ZVNuYXBP
ZmZzZXRzRm9yU2Nyb2xsYWJsZUFyZWEoU2Nyb2xsYWJsZUFyZWEmIHNjcm9sbGFibGVBcmVhLCBj
b25zdCBSZQogCiAgICAgICAgIC8vIFRoZSBib3VuZHMgb2YgdGhlIGNoaWxkIGVsZW1lbnQncyBz
bmFwIGFyZWEsIHdoZXJlIHRoZSB0b3AgbGVmdCBvZiB0aGUgc2Nyb2xsaW5nIGNvbnRhaW5lcidz
IGJvcmRlciBib3ggaXMgdGhlIG9yaWdpbi4KICAgICAgICAgLy8gVGhlIHNuYXAgYXJlYSBpcyB0
aGUgYm91bmRpbmcgYm94IG9mIHRoZSBjaGlsZCBlbGVtZW50J3MgYm9yZGVyIGJveCwgYWZ0ZXIg
YXBwbHlpbmcgdHJhbnNmb3JtYXRpb25zLgotICAgICAgICBhdXRvIHNjcm9sbFNuYXBBcmVhID0g
TGF5b3V0UmVjdChjaGlsZC0+bG9jYWxUb0NvbnRhaW5lclF1YWQoRmxvYXRRdWFkKGNoaWxkLT5i
b3JkZXJCb3VuZGluZ0JveCgpKSwgJnNjcm9sbGluZ0VsZW1lbnRCb3gpLmJvdW5kaW5nQm94KCkp
OworICAgICAgICBhdXRvIHNjcm9sbFNuYXBBcmVhID0gTGF5b3V0UmVjdChjaGlsZC0+bG9jYWxU
b0NvbnRhaW5lclF1YWQoRmxvYXRRdWFkKGNoaWxkLT5ib3JkZXJCb3VuZGluZ0JveCgpKSwgJnNj
cm9sbGluZ0VsZW1lbnRCb3gsIElnbm9yZVN0aWNreU9mZnNldHMpLmJvdW5kaW5nQm94KCkpOwog
CiAgICAgICAgIC8vIGxvY2FsVG9Db250YWluZXJRdWFkIHdpbGwgdHJhbnNmb3JtIHRoZSBzY3Jv
bGwgc25hcCBhcmVhIGJ5IHRoZSBzY3JvbGwgcG9zaXRpb24sIGV4Y2VwdCBpbiB0aGUgY2FzZSB0
aGF0IHRoaXMgcG9zaXRpb24gaXMKICAgICAgICAgLy8gY29taW5nIGZyb20gYSBTY3JvbGxWaWV3
LiBXZSB3YW50IHRoZSB0cmFuc2Zvcm1lZCBhcmVhLCBidXQgd2l0aG91dCBzY3JvbGwgcG9zaXRp
b24gdGFrZW4gaW50byBhY2NvdW50LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckJveC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNw
cAppbmRleCA1YmZjM2ZjMWNkZTYyMjEwYzc4ZTgwNjRkZDI0OTZhOTQyN2Y5MGMwLi5hMGMyMmRk
MzdjY2U1YTI0YzYxMmExMzk1YmQwNWFmYzk3MDdjMWUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyQm94LmNwcApAQCAtMjI1Miw2ICsyMjUyLDExIEBAIHZvaWQgUmVuZGVyQm94Ojpt
YXBMb2NhbFRvQ29udGFpbmVyKGNvbnN0IFJlbmRlckxheWVyTW9kZWxPYmplY3QqIGFuY2VzdG9y
Q29udGFpCiAgICAgICAgICp3YXNGaXhlZCA9IG1vZGUuY29udGFpbnMoSXNGaXhlZCk7CiAgICAg
CiAgICAgTGF5b3V0U2l6ZSBjb250YWluZXJPZmZzZXQgPSBvZmZzZXRGcm9tQ29udGFpbmVyKCpj
b250YWluZXIsIExheW91dFBvaW50KHRyYW5zZm9ybVN0YXRlLm1hcHBlZFBvaW50KCkpKTsKKwor
ICAgIC8vIFJlbW92ZSBzdGlja3kgcG9zaXRpb25pbmcgZnJvbSB0aGUgb2Zmc2V0IGlmIGl0IHNo
b3VsZCBiZSBpZ25vcmVkLiBUaGlzIGlzIGRvbmUgaGVyZSBpbgorICAgIC8vIG9yZGVyIHRvIGF2
b2lkIHBpcGluZyB0aGlzIGZsYWcgZG93biB0aGUgbWV0aG9kIGNoYWluLgorICAgIGlmIChtb2Rl
LmNvbnRhaW5zKElnbm9yZVN0aWNreU9mZnNldHMpICYmIGlzU3RpY2tpbHlQb3NpdGlvbmVkKCkp
CisgICAgICAgIGNvbnRhaW5lck9mZnNldCAtPSBzdGlja3lQb3NpdGlvbk9mZnNldCgpOwogICAg
IAogICAgIGJvb2wgcHJlc2VydmUzRCA9IG1vZGUuY29udGFpbnMoVXNlVHJhbnNmb3JtcykgJiYg
KGNvbnRhaW5lci0+c3R5bGUoKS5wcmVzZXJ2ZXMzRCgpIHx8IHN0eWxlKCkucHJlc2VydmVzM0Qo
KSk7CiAgICAgaWYgKG1vZGUuY29udGFpbnMoVXNlVHJhbnNmb3JtcykgJiYgc2hvdWxkVXNlVHJh
bnNmb3JtRnJvbUNvbnRhaW5lcihjb250YWluZXIpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0RW51bXMuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJPYmplY3RFbnVtcy5oCmluZGV4IGQ0YWM4ZWQ3Mjk5YTE0ZDllOTg0NThjZmZk
MDM0MTYwYjc1MWExNDQuLmQ1NTg3YTE2ZmQ4OTEyNjY1ZmM5ZjhiNjU2ODFhNjkyYmY5M2UwNDEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3RFbnVtcy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3RFbnVtcy5oCkBAIC01
Nyw3ICs1Nyw4IEBAIGVudW0gY2xhc3MgU2NoZWR1bGVSZWxheW91dCB7IE5vLCBZZXMgfTsKIGVu
dW0gTWFwQ29vcmRpbmF0ZXNNb2RlIHsKICAgICBJc0ZpeGVkICAgICAgICAgICAgID0gMSA8PCAw
LAogICAgIFVzZVRyYW5zZm9ybXMgICAgICAgPSAxIDw8IDEsCi0gICAgQXBwbHlDb250YWluZXJG
bGlwICA9IDEgPDwgMgorICAgIEFwcGx5Q29udGFpbmVyRmxpcCAgPSAxIDw8IDIsCisgICAgSWdu
b3JlU3RpY2t5T2Zmc2V0cyA9IDEgPDwgMywKIH07CiAKIH0KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA1ZmMzMzU4NGI4M2Iz
ZDI4MmY1ZWI4NGZhNjFlMzk5MmU3ZDYzNjBhLi4zMTRhMGM0NGU4MzFhNjM0Y2Q4MDM2ZmEzOGQ5
OTExMTE5YWQ4MzU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjEtMDktMjMgIE1hcnRpbiBS
b2JpbnNvbiAgPG1yb2JpbnNvbkB3ZWJraXQub3JnPgorCisgICAgICAgIE1hbmRhdG9yeSBzY3Jv
bGwgc25hcHBpbmcgZG9lc24ndCB3b3JrIGNvcnJlY3RseSBpbiB0YWJsZXMgd2l0aCBwb3NpdGlv
bjpzdGlja3kKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyNzMwMAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzk5NzExOTY+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgdGVzdCB3aGljaCBleGVy
Y2lzZXMgdGhlIG9yaWdpbmFsIGJ1Zy4KKworICAgICAgICAqIGNzczMvc2Nyb2xsLXNuYXAvc2Ny
b2xsLXNuYXAtZHJhZy1zY3JvbGxiYXItdGh1bWItd2l0aC1zdGlja3ktZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBjc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xs
YmFyLXRodW1iLXdpdGgtc3RpY2t5Lmh0bWw6IEFkZGVkLgorCiAyMDIxLTA5LTIyICBBbGFuIEJ1
anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbV0lOXSBVbnJldmlld2VkIHRlc3Qg
Z2FyZGVuaW5nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Njcm9s
bC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtc3RpY2t5LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2NzczMvc2Nyb2xsLXNuYXAvc2Nyb2xsLXNuYXAtZHJhZy1zY3JvbGxiYXItdGh1
bWItd2l0aC1zdGlja3ktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI2OTE2YjdjZDgwYTQ3ZWM3
YzFlMzc3MjcyNTAwYWJkY2IyMmIwMmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9j
c3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtc3Rp
Y2t5LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1BBU1Mgc3RpY2t5IHBvc2l0aW9uZWQg
c25hcCBlbGVtZW50IGNyZWF0ZXMgc25hcCBwb2ludCBhdCBzdGF0aWMgcG9zaXRpb24KK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFy
LXRodW1iLXdpdGgtc3RpY2t5Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Nj
cm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtc3RpY2t5Lmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMjg1NzJjYzRmNzFkOWI4Njg5ZjI5ZjJjMDk0MjljNWE5NjkwZjY1NgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2NzczMvc2Nyb2xsLXNuYXAvc2Nyb2xsLXNuYXAtZHJhZy1zY3Jv
bGxiYXItdGh1bWItd2l0aC1zdGlja3kuaHRtbApAQCAtMCwwICsxLDk5IEBACis8IURPQ1RZUEUg
aHRtbD4gPCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBBc3luY092ZXJmbG93U2Nyb2xsaW5nRW5h
YmxlZD10cnVlIF0gLS0+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPlN0aWNr
eSBwb3NpdGlvbiBpdGVtcyBzaG91bGQgY3JlYXRlIHNuYXAgcG9pbnRzIGF0IHRoZWlyIHN0YXRp
YyBwb3NpdGlvbjwvdGl0bGU+CisgICAgICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CisgICAg
ICAgICAgICAvKiBVc2UgY3VzdG9taXplZCBzY3JvbGxiYXIgdG8gYXZvaWQgcGxhdGZvcm0gZGlm
ZmVyZW5jZXMuICovCisgICAgICAgICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyIHsKKyAgICAgICAg
ICAgICAgICB3aWR0aDogMjBweDsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7CisgICAg
ICAgICAgICB9CisgICAgICAgICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyLWJ1dHRvbiB7CisgICAg
ICAgICAgICAgICAgaGVpZ2h0OiAyMHB4OworICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4Owor
ICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7CisgICAgICAgICAgICB9CisK
KyAgICAgICAgICAgIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2stcGllY2UgIHsKKyAgICAgICAg
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmF5OworICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6
IDIwcHg7CisgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7CisgICAgICAgICAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogYmxhY2s7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGJvZHkg
eworICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4OworICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICAuY29udGFpbmVyIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwMHB4OworICAgICAg
ICAgICAgICAgIHdpZHRoOiAyMDBweDsKKyAgICAgICAgICAgICAgICBvdmVyZmxvdy14OiBhdXRv
OworICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjsKKyAgICAgICAgICAgICAgICBz
Y3JvbGwtc25hcC10eXBlOiBib3RoIG1hbmRhdG9yeTsKKyAgICAgICAgICAgIH0KKworICAgICAg
ICAgICAgLmhvcml6b250YWwtZHJhd2VyIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7
CisgICAgICAgICAgICAgICAgd2lkdGg6IDE1MDBweDsKKyAgICAgICAgICAgIH0KKworICAgICAg
ICAgICAgLmJsb2NrIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CisgICAgICAgICAg
ICAgICAgd2lkdGg6IDI1MHB4OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuc25hcCB7
CisgICAgICAgICAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IHN0YXJ0OworICAgICAgICAgICAg
fQorCisgICAgICAgICAgICAuc3RpY2t5IHsKKyAgICAgICAgICAgICAgICB3aWR0aDogMjBweDsK
KyAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7CisgICAgICAgICAgICAgICAgbGVmdDogMHB4
OworICAgICAgICAgICAgICAgIHRvcDogMHB4OworICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBz
dGlja3k7CisgICAgICAgICAgICB9CisgICAgICAgIDwvc3R5bGU+CisgICAgICAgIDxzY3JpcHQg
c3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAg
PHNjcmlwdD4KKyAgICAgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCisgICAgICAg
IGFzeW5jIGZ1bmN0aW9uIG9uTG9hZCgpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmICh3aW5k
b3cuZXZlbnRTZW5kZXIgPT0gdW5kZWZpbmVkKSB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ2NvbnNvbGUnKS5pbm5lclRleHQgPSAiRHJhZ2dpbmcgdGhlIHNjcm9s
bGJhciB0aHVtYiBpbnRvIHRoZSB3aGl0ZSBwYXJ0IG9mIHRoZSBjb250YWluZXIgc2hvdWxkIHRy
aWdnZXIgc2Nyb2xsIHNuYXBwaW5nLiI7CisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAg
ICAgICAgfQorICAgICAgICAgICAgdHJ5IHsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5t
b3VzZU1vdmVUbygyMCwgMTkwKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZURv
d24oKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbygxMDAsIDE5MCk7
CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VVcCgpOworCisgICAgICAgICAgICAg
ICAgbGV0IGhvcml6b250YWxDb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaG9y
aXpvbnRhbC1jb250YWluZXIiKTsKKyAgICAgICAgICAgICAgICBhd2FpdCBVSUhlbHBlci53YWl0
Rm9yVGFyZ2V0U2Nyb2xsQW5pbWF0aW9uVG9TZXR0bGUoaG9yaXpvbnRhbENvbnRhaW5lcik7Cisg
ICAgICAgICAgICAgICAgZXhwZWN0VHJ1ZShob3Jpem9udGFsQ29udGFpbmVyLnNjcm9sbExlZnQg
PT0gMTAyMCwgInN0aWNreSBwb3NpdGlvbmVkIHNuYXAgZWxlbWVudCBjcmVhdGVzIHNuYXAgcG9p
bnQgYXQgc3RhdGljIHBvc2l0aW9uIik7CisgICAgICAgICAgICB9IGNhdGNoIChlKSB7CisgICAg
ICAgICAgICAgICAgY29uc29sZS5sb2coZSk7CisgICAgICAgICAgICB9IGZpbmFsbHkgeworICAg
ICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICAgICAgfQorICAgICAgICB9Cisg
ICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9Im9uTG9hZCgp
OyI+CisgICAgICAgIDxkaXYgaWQ9Imhvcml6b250YWwtY29udGFpbmVyIiBjbGFzcz0iY29udGFp
bmVyIj4KKyAgICAgICAgICAgIDxkaXYgY2xhc3M9Imhvcml6b250YWwtZHJhd2VyIj4KKyAgICAg
ICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGlja3kgc25hcCIgc3R5bGU9ImZsb2F0OiBsZWZ0OyBi
YWNrZ3JvdW5kOiBncmV5OyI+PC9kaXY+CisgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmxv
Y2siIHN0eWxlPSJmbG9hdDogbGVmdDsgd2lkdGg6IDEwMDBweDsiPjwvZGl2PgorICAgICAgICAg
ICAgICAgIDxkaXYgY2xhc3M9ImJsb2NrIHNuYXAiIHN0eWxlPSJmbG9hdDogbGVmdDsgYmFja2dy
b3VuZDogIzgwNDc1RTsiPjwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgIDwvZGl2
PgorICAgICAgICA8cCBpZD0iY29uc29sZSI+PC9wPgorICAgIDwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>439038</attachid>
            <date>2021-09-23 04:58:35 -0700</date>
            <delta_ts>2021-09-24 07:52:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227300-20210923135834.patch</filename>
            <type>text/plain</type>
            <size>9405</size>
            <attacher name="Martin Robinson">mrobinson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyODc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjFkYjNiZjcxNTE1NGMx
YmExMzRmMGNiMDY1NzljOWQ3Y2RiM2YzYy4uNjRmMjQwNTQ3NGI0ZjRmZWQ3MjE2MDcxZTRiZjY5
ZGVlZjVjMmM2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDIxLTA5LTIzICBNYXJ0
aW4gUm9iaW5zb24gIDxtcm9iaW5zb25Ad2Via2l0Lm9yZz4KKworICAgICAgICBNYW5kYXRvcnkg
c2Nyb2xsIHNuYXBwaW5nIGRvZXNuJ3Qgd29yayBjb3JyZWN0bHkgaW4gdGFibGVzIHdpdGggcG9z
aXRpb246c3RpY2t5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjczMDAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc5OTcxMTk2PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIG1vZGUgZm9yIG1h
cExvY2FsVG9Db250YWluZXIgd2hpY2ggaWdub3JlcyBzdGlja3kgb2Zmc2V0cy4gVGhpcyB3aWxs
IGJlCisgICAgICAgIHVzZWQgYnkgbW9yZSBjb2RlIGluIHRoZSBmdXR1cmUuCisKKyAgICAgICAg
VGVzdDogY3NzMy9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1kcmFnLXNjcm9sbGJhci10aHVtYi13
aXRoLXN0aWNreS5odG1sCisKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxTbmFwT2Zm
c2V0c0luZm8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6dXBkYXRlU25hcE9mZnNldHNGb3JTY3Jv
bGxhYmxlQXJlYSk6IFBhc3MgdGhlIElnbm9yZVN0aWNreU9mZnNldHMgZmxhZy4KKyAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6
bWFwTG9jYWxUb0NvbnRhaW5lciBjb25zdCk6IFdoZW4gdGhlIElnbm9yZVN0aWNreU9mZnNldHMg
ZmxhZyBpcworICAgICAgICBwYXNzZWQsIGV4cGxpY2l0bHkgcmVtb3ZlIHN0aWNreSBvZmZzZXRz
IGZyb20gdGhlIGNvbnRhaW5lciBvZmZzZXQuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9i
amVjdEVudW1zLmg6IEFkZCB0aGUgSWdub3JlU3RpY2t5T2ZmZXN0cyBmbGFnLgorCiAyMDIxLTA5
LTIyICBBbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbTEZDXVtJbnRl
Z3JhdGlvbl0gRmxvd0hhc1RleHRTZWN1cml0eSBGbG93SGFzSnVzdGlmaWVkTm9uQnJlYWtpbmdT
cGFjZSBhcmUgdW51c2VkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGlu
Zy9TY3JvbGxTbmFwT2Zmc2V0c0luZm8uY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxp
bmcvU2Nyb2xsU25hcE9mZnNldHNJbmZvLmNwcAppbmRleCBhOTA1MjUyMmIwY2ZmYmYwY2Y5MTUw
ZTNlMGNhMmU2MjgwNTdlOTE5Li4wMWM0ZTU1NzBjYmNmMzJhNzI4MzJlNmQxZmU2NzgwYjMxMzlj
Zjc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxTbmFw
T2Zmc2V0c0luZm8uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9s
bFNuYXBPZmZzZXRzSW5mby5jcHAKQEAgLTMyOSw3ICszMjksMTAgQEAgdm9pZCB1cGRhdGVTbmFw
T2Zmc2V0c0ZvclNjcm9sbGFibGVBcmVhKFNjcm9sbGFibGVBcmVhJiBzY3JvbGxhYmxlQXJlYSwg
Y29uc3QgUmUKIAogICAgICAgICAvLyBUaGUgYm91bmRzIG9mIHRoZSBjaGlsZCBlbGVtZW50J3Mg
c25hcCBhcmVhLCB3aGVyZSB0aGUgdG9wIGxlZnQgb2YgdGhlIHNjcm9sbGluZyBjb250YWluZXIn
cyBib3JkZXIgYm94IGlzIHRoZSBvcmlnaW4uCiAgICAgICAgIC8vIFRoZSBzbmFwIGFyZWEgaXMg
dGhlIGJvdW5kaW5nIGJveCBvZiB0aGUgY2hpbGQgZWxlbWVudCdzIGJvcmRlciBib3gsIGFmdGVy
IGFwcGx5aW5nIHRyYW5zZm9ybWF0aW9ucy4KLSAgICAgICAgYXV0byBzY3JvbGxTbmFwQXJlYSA9
IExheW91dFJlY3QoY2hpbGQtPmxvY2FsVG9Db250YWluZXJRdWFkKEZsb2F0UXVhZChjaGlsZC0+
Ym9yZGVyQm91bmRpbmdCb3goKSksICZzY3JvbGxpbmdFbGVtZW50Qm94KS5ib3VuZGluZ0JveCgp
KTsKKyAgICAgICAgT3B0aW9uU2V0PE1hcENvb3JkaW5hdGVzTW9kZT4gb3B0aW9uczsKKyAgICAg
ICAgb3B0aW9ucy5hZGQoVXNlVHJhbnNmb3Jtcyk7CisgICAgICAgIG9wdGlvbnMuYWRkKElnbm9y
ZVN0aWNreU9mZnNldHMpOworICAgICAgICBhdXRvIHNjcm9sbFNuYXBBcmVhID0gTGF5b3V0UmVj
dChjaGlsZC0+bG9jYWxUb0NvbnRhaW5lclF1YWQoRmxvYXRRdWFkKGNoaWxkLT5ib3JkZXJCb3Vu
ZGluZ0JveCgpKSwgJnNjcm9sbGluZ0VsZW1lbnRCb3gsIG9wdGlvbnMpLmJvdW5kaW5nQm94KCkp
OwogCiAgICAgICAgIC8vIGxvY2FsVG9Db250YWluZXJRdWFkIHdpbGwgdHJhbnNmb3JtIHRoZSBz
Y3JvbGwgc25hcCBhcmVhIGJ5IHRoZSBzY3JvbGwgcG9zaXRpb24sIGV4Y2VwdCBpbiB0aGUgY2Fz
ZSB0aGF0IHRoaXMgcG9zaXRpb24gaXMKICAgICAgICAgLy8gY29taW5nIGZyb20gYSBTY3JvbGxW
aWV3LiBXZSB3YW50IHRoZSB0cmFuc2Zvcm1lZCBhcmVhLCBidXQgd2l0aG91dCBzY3JvbGwgcG9z
aXRpb24gdGFrZW4gaW50byBhY2NvdW50LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckJveC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94
LmNwcAppbmRleCA1YmZjM2ZjMWNkZTYyMjEwYzc4ZTgwNjRkZDI0OTZhOTQyN2Y5MGMwLi5hMGMy
MmRkMzdjY2U1YTI0YzYxMmExMzk1YmQwNWFmYzk3MDdjMWUzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyQm94LmNwcApAQCAtMjI1Miw2ICsyMjUyLDExIEBAIHZvaWQgUmVuZGVyQm94
OjptYXBMb2NhbFRvQ29udGFpbmVyKGNvbnN0IFJlbmRlckxheWVyTW9kZWxPYmplY3QqIGFuY2Vz
dG9yQ29udGFpCiAgICAgICAgICp3YXNGaXhlZCA9IG1vZGUuY29udGFpbnMoSXNGaXhlZCk7CiAg
ICAgCiAgICAgTGF5b3V0U2l6ZSBjb250YWluZXJPZmZzZXQgPSBvZmZzZXRGcm9tQ29udGFpbmVy
KCpjb250YWluZXIsIExheW91dFBvaW50KHRyYW5zZm9ybVN0YXRlLm1hcHBlZFBvaW50KCkpKTsK
KworICAgIC8vIFJlbW92ZSBzdGlja3kgcG9zaXRpb25pbmcgZnJvbSB0aGUgb2Zmc2V0IGlmIGl0
IHNob3VsZCBiZSBpZ25vcmVkLiBUaGlzIGlzIGRvbmUgaGVyZSBpbgorICAgIC8vIG9yZGVyIHRv
IGF2b2lkIHBpcGluZyB0aGlzIGZsYWcgZG93biB0aGUgbWV0aG9kIGNoYWluLgorICAgIGlmICht
b2RlLmNvbnRhaW5zKElnbm9yZVN0aWNreU9mZnNldHMpICYmIGlzU3RpY2tpbHlQb3NpdGlvbmVk
KCkpCisgICAgICAgIGNvbnRhaW5lck9mZnNldCAtPSBzdGlja3lQb3NpdGlvbk9mZnNldCgpOwog
ICAgIAogICAgIGJvb2wgcHJlc2VydmUzRCA9IG1vZGUuY29udGFpbnMoVXNlVHJhbnNmb3Jtcykg
JiYgKGNvbnRhaW5lci0+c3R5bGUoKS5wcmVzZXJ2ZXMzRCgpIHx8IHN0eWxlKCkucHJlc2VydmVz
M0QoKSk7CiAgICAgaWYgKG1vZGUuY29udGFpbnMoVXNlVHJhbnNmb3JtcykgJiYgc2hvdWxkVXNl
VHJhbnNmb3JtRnJvbUNvbnRhaW5lcihjb250YWluZXIpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0RW51bXMuaCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJPYmplY3RFbnVtcy5oCmluZGV4IGQ0YWM4ZWQ3Mjk5YTE0ZDllOTg0NThj
ZmZkMDM0MTYwYjc1MWExNDQuLmQ1NTg3YTE2ZmQ4OTEyNjY1ZmM5ZjhiNjU2ODFhNjkyYmY5M2Uw
NDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3RFbnVt
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3RFbnVtcy5oCkBA
IC01Nyw3ICs1Nyw4IEBAIGVudW0gY2xhc3MgU2NoZWR1bGVSZWxheW91dCB7IE5vLCBZZXMgfTsK
IGVudW0gTWFwQ29vcmRpbmF0ZXNNb2RlIHsKICAgICBJc0ZpeGVkICAgICAgICAgICAgID0gMSA8
PCAwLAogICAgIFVzZVRyYW5zZm9ybXMgICAgICAgPSAxIDw8IDEsCi0gICAgQXBwbHlDb250YWlu
ZXJGbGlwICA9IDEgPDwgMgorICAgIEFwcGx5Q29udGFpbmVyRmxpcCAgPSAxIDw8IDIsCisgICAg
SWdub3JlU3RpY2t5T2Zmc2V0cyA9IDEgPDwgMywKIH07CiAKIH0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA1ZmMzMzU4NGI4
M2IzZDI4MmY1ZWI4NGZhNjFlMzk5MmU3ZDYzNjBhLi4zMTRhMGM0NGU4MzFhNjM0Y2Q4MDM2ZmEz
OGQ5OTExMTE5YWQ4MzU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjEtMDktMjMgIE1hcnRp
biBSb2JpbnNvbiAgPG1yb2JpbnNvbkB3ZWJraXQub3JnPgorCisgICAgICAgIE1hbmRhdG9yeSBz
Y3JvbGwgc25hcHBpbmcgZG9lc24ndCB3b3JrIGNvcnJlY3RseSBpbiB0YWJsZXMgd2l0aCBwb3Np
dGlvbjpzdGlja3kKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyNzMwMAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzk5NzExOTY+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgdGVzdCB3aGljaCBl
eGVyY2lzZXMgdGhlIG9yaWdpbmFsIGJ1Zy4KKworICAgICAgICAqIGNzczMvc2Nyb2xsLXNuYXAv
c2Nyb2xsLXNuYXAtZHJhZy1zY3JvbGxiYXItdGh1bWItd2l0aC1zdGlja3ktZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Ny
b2xsYmFyLXRodW1iLXdpdGgtc3RpY2t5Lmh0bWw6IEFkZGVkLgorCiAyMDIxLTA5LTIyICBBbGFu
IEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbV0lOXSBVbnJldmlld2VkIHRl
c3QgZ2FyZGVuaW5nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Nj
cm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtc3RpY2t5LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2NzczMvc2Nyb2xsLXNuYXAvc2Nyb2xsLXNuYXAtZHJhZy1zY3JvbGxiYXIt
dGh1bWItd2l0aC1zdGlja3ktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI2OTE2YjdjZDgwYTQ3
ZWM3YzFlMzc3MjcyNTAwYWJkY2IyMmIwMmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9jc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdpdGgt
c3RpY2t5LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1BBU1Mgc3RpY2t5IHBvc2l0aW9u
ZWQgc25hcCBlbGVtZW50IGNyZWF0ZXMgc25hcCBwb2ludCBhdCBzdGF0aWMgcG9zaXRpb24KK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xs
YmFyLXRodW1iLXdpdGgtc3RpY2t5Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFw
L3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtc3RpY2t5Lmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMjg1NzJjYzRmNzFkOWI4Njg5ZjI5ZjJjMDk0MjljNWE5NjkwZjY1NgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvc2Nyb2xsLXNuYXAvc2Nyb2xsLXNuYXAtZHJhZy1z
Y3JvbGxiYXItdGh1bWItd2l0aC1zdGlja3kuaHRtbApAQCAtMCwwICsxLDk5IEBACis8IURPQ1RZ
UEUgaHRtbD4gPCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBBc3luY092ZXJmbG93U2Nyb2xsaW5n
RW5hYmxlZD10cnVlIF0gLS0+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPlN0
aWNreSBwb3NpdGlvbiBpdGVtcyBzaG91bGQgY3JlYXRlIHNuYXAgcG9pbnRzIGF0IHRoZWlyIHN0
YXRpYyBwb3NpdGlvbjwvdGl0bGU+CisgICAgICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cisg
ICAgICAgICAgICAvKiBVc2UgY3VzdG9taXplZCBzY3JvbGxiYXIgdG8gYXZvaWQgcGxhdGZvcm0g
ZGlmZmVyZW5jZXMuICovCisgICAgICAgICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyIHsKKyAgICAg
ICAgICAgICAgICB3aWR0aDogMjBweDsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7Cisg
ICAgICAgICAgICB9CisgICAgICAgICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyLWJ1dHRvbiB7Cisg
ICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4OworICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4
OworICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7CisgICAgICAgICAgICB9
CisKKyAgICAgICAgICAgIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2stcGllY2UgIHsKKyAgICAg
ICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmF5OworICAgICAgICAgICAgfQorCisgICAg
ICAgICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHsKKyAgICAgICAgICAgICAgICBoZWln
aHQ6IDIwcHg7CisgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7CisgICAgICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogYmxhY2s7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGJv
ZHkgeworICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4OworICAgICAgICAgICAgfQorCisgICAg
ICAgICAgICAuY29udGFpbmVyIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwMHB4OworICAg
ICAgICAgICAgICAgIHdpZHRoOiAyMDBweDsKKyAgICAgICAgICAgICAgICBvdmVyZmxvdy14OiBh
dXRvOworICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjsKKyAgICAgICAgICAgICAg
ICBzY3JvbGwtc25hcC10eXBlOiBib3RoIG1hbmRhdG9yeTsKKyAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgLmhvcml6b250YWwtZHJhd2VyIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDEw
MCU7CisgICAgICAgICAgICAgICAgd2lkdGg6IDE1MDBweDsKKyAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgLmJsb2NrIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CisgICAgICAg
ICAgICAgICAgd2lkdGg6IDI1MHB4OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuc25h
cCB7CisgICAgICAgICAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IHN0YXJ0OworICAgICAgICAg
ICAgfQorCisgICAgICAgICAgICAuc3RpY2t5IHsKKyAgICAgICAgICAgICAgICB3aWR0aDogMjBw
eDsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7CisgICAgICAgICAgICAgICAgbGVmdDog
MHB4OworICAgICAgICAgICAgICAgIHRvcDogMHB4OworICAgICAgICAgICAgICAgIHBvc2l0aW9u
OiBzdGlja3k7CisgICAgICAgICAgICB9CisgICAgICAgIDwvc3R5bGU+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxz
Y3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KKyAgICAg
ICAgPHNjcmlwdD4KKyAgICAgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCisgICAg
ICAgIGFzeW5jIGZ1bmN0aW9uIG9uTG9hZCgpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmICh3
aW5kb3cuZXZlbnRTZW5kZXIgPT0gdW5kZWZpbmVkKSB7CisgICAgICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ2NvbnNvbGUnKS5pbm5lclRleHQgPSAiRHJhZ2dpbmcgdGhlIHNj
cm9sbGJhciB0aHVtYiBpbnRvIHRoZSB3aGl0ZSBwYXJ0IG9mIHRoZSBjb250YWluZXIgc2hvdWxk
IHRyaWdnZXIgc2Nyb2xsIHNuYXBwaW5nLiI7CisgICAgICAgICAgICAgICAgcmV0dXJuOworICAg
ICAgICAgICAgfQorICAgICAgICAgICAgdHJ5IHsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRl
ci5tb3VzZU1vdmVUbygyMCwgMTkwKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3Vz
ZURvd24oKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbygxMDAsIDE5
MCk7CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VVcCgpOworCisgICAgICAgICAg
ICAgICAgbGV0IGhvcml6b250YWxDb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
aG9yaXpvbnRhbC1jb250YWluZXIiKTsKKyAgICAgICAgICAgICAgICBhd2FpdCBVSUhlbHBlci53
YWl0Rm9yVGFyZ2V0U2Nyb2xsQW5pbWF0aW9uVG9TZXR0bGUoaG9yaXpvbnRhbENvbnRhaW5lcik7
CisgICAgICAgICAgICAgICAgZXhwZWN0VHJ1ZShob3Jpem9udGFsQ29udGFpbmVyLnNjcm9sbExl
ZnQgPT0gMTAyMCwgInN0aWNreSBwb3NpdGlvbmVkIHNuYXAgZWxlbWVudCBjcmVhdGVzIHNuYXAg
cG9pbnQgYXQgc3RhdGljIHBvc2l0aW9uIik7CisgICAgICAgICAgICB9IGNhdGNoIChlKSB7Cisg
ICAgICAgICAgICAgICAgY29uc29sZS5sb2coZSk7CisgICAgICAgICAgICB9IGZpbmFsbHkgewor
ICAgICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICAgICAgfQorICAgICAgICB9
CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9Im9uTG9h
ZCgpOyI+CisgICAgICAgIDxkaXYgaWQ9Imhvcml6b250YWwtY29udGFpbmVyIiBjbGFzcz0iY29u
dGFpbmVyIj4KKyAgICAgICAgICAgIDxkaXYgY2xhc3M9Imhvcml6b250YWwtZHJhd2VyIj4KKyAg
ICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGlja3kgc25hcCIgc3R5bGU9ImZsb2F0OiBsZWZ0
OyBiYWNrZ3JvdW5kOiBncmV5OyI+PC9kaXY+CisgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0i
YmxvY2siIHN0eWxlPSJmbG9hdDogbGVmdDsgd2lkdGg6IDEwMDBweDsiPjwvZGl2PgorICAgICAg
ICAgICAgICAgIDxkaXYgY2xhc3M9ImJsb2NrIHNuYXAiIHN0eWxlPSJmbG9hdDogbGVmdDsgYmFj
a2dyb3VuZDogIzgwNDc1RTsiPjwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgIDwv
ZGl2PgorICAgICAgICA8cCBpZD0iY29uc29sZSI+PC9wPgorICAgIDwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>439146</attachid>
            <date>2021-09-24 07:53:04 -0700</date>
            <delta_ts>2021-09-27 00:08:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227300-20210924165303.patch</filename>
            <type>text/plain</type>
            <size>10434</size>
            <attacher name="Martin Robinson">mrobinson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzMDMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjUzZDE5NDhjZTIzYzFj
YzBkYzkxYjI2YzM3MDhiY2MyNjIzNzdmZi4uMTc4ZWRkNGIyMzUxMGEwZjg1NmIyOGZhYzE5NTg3
OWJhMjk0ZmI3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDIxLTA5LTI0ICBNYXJ0
aW4gUm9iaW5zb24gIDxtcm9iaW5zb25Ad2Via2l0Lm9yZz4KKworICAgICAgICBNYW5kYXRvcnkg
c2Nyb2xsIHNuYXBwaW5nIGRvZXNuJ3Qgd29yayBjb3JyZWN0bHkgaW4gdGFibGVzIHdpdGggcG9z
aXRpb246c3RpY2t5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjczMDAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc5OTcxMTk2PgorCisgICAgICAg
IFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAgICBBZGQgYSBtb2RlIGZvciBtYXBM
b2NhbFRvQ29udGFpbmVyIHdoaWNoIGlnbm9yZXMgc3RpY2t5IG9mZnNldHMuIFRoaXMgd2lsbCBi
ZQorICAgICAgICB1c2VkIGJ5IG1vcmUgY29kZSBpbiB0aGUgZnV0dXJlLgorCisgICAgICAgIFRl
c3Q6IGNzczMvc2Nyb2xsLXNuYXAvc2Nyb2xsLXNuYXAtZHJhZy1zY3JvbGxiYXItdGh1bWItd2l0
aC1zdGlja3kuaHRtbAorCisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvU2Nyb2xsU25hcE9mZnNl
dHNJbmZvLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnVwZGF0ZVNuYXBPZmZzZXRzRm9yU2Nyb2xs
YWJsZUFyZWEpOiBQYXNzIHRoZSBJZ25vcmVTdGlja3lPZmZzZXRzIGZsYWcuCisgICAgICAgICog
cmVuZGVyaW5nL1JlbmRlckJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6Om1h
cExvY2FsVG9Db250YWluZXIgY29uc3QpOiBXaGVuIHRoZSBJZ25vcmVTdGlja3lPZmZzZXRzIGZs
YWcgaXMKKyAgICAgICAgcGFzc2VkLCBleHBsaWNpdGx5IHJlbW92ZSBzdGlja3kgb2Zmc2V0cyBm
cm9tIHRoZSBjb250YWluZXIgb2Zmc2V0LgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJPYmpl
Y3RFbnVtcy5oOiBBZGQgdGhlIElnbm9yZVN0aWNreU9mZmVzdHMgZmxhZy4KKwogMjAyMS0wOS0y
NCAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgW0lPUyAxNV0g
VmlkZW8gdHJhY2sgZG9lcyBub3QgZ2V0IHVubXV0ZWQgaW4gY2FzZSBvZiB0YWIgd2FzIGluYWN0
aXZlIGxlc3MgdGhhbiB+NTAwIG1zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Nj
cm9sbGluZy9TY3JvbGxTbmFwT2Zmc2V0c0luZm8uY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9z
Y3JvbGxpbmcvU2Nyb2xsU25hcE9mZnNldHNJbmZvLmNwcAppbmRleCBhOTA1MjUyMmIwY2ZmYmYw
Y2Y5MTUwZTNlMGNhMmU2MjgwNTdlOTE5Li5iYTljNGVkM2Y2ZTdmMjA3NmU5NWI2ZTI0NDZjMTM5
MWE5OTBkMTgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3Jv
bGxTbmFwT2Zmc2V0c0luZm8uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L1Njcm9sbFNuYXBPZmZzZXRzSW5mby5jcHAKQEAgLTMyOSw3ICszMjksOCBAQCB2b2lkIHVwZGF0
ZVNuYXBPZmZzZXRzRm9yU2Nyb2xsYWJsZUFyZWEoU2Nyb2xsYWJsZUFyZWEmIHNjcm9sbGFibGVB
cmVhLCBjb25zdCBSZQogCiAgICAgICAgIC8vIFRoZSBib3VuZHMgb2YgdGhlIGNoaWxkIGVsZW1l
bnQncyBzbmFwIGFyZWEsIHdoZXJlIHRoZSB0b3AgbGVmdCBvZiB0aGUgc2Nyb2xsaW5nIGNvbnRh
aW5lcidzIGJvcmRlciBib3ggaXMgdGhlIG9yaWdpbi4KICAgICAgICAgLy8gVGhlIHNuYXAgYXJl
YSBpcyB0aGUgYm91bmRpbmcgYm94IG9mIHRoZSBjaGlsZCBlbGVtZW50J3MgYm9yZGVyIGJveCwg
YWZ0ZXIgYXBwbHlpbmcgdHJhbnNmb3JtYXRpb25zLgotICAgICAgICBhdXRvIHNjcm9sbFNuYXBB
cmVhID0gTGF5b3V0UmVjdChjaGlsZC0+bG9jYWxUb0NvbnRhaW5lclF1YWQoRmxvYXRRdWFkKGNo
aWxkLT5ib3JkZXJCb3VuZGluZ0JveCgpKSwgJnNjcm9sbGluZ0VsZW1lbnRCb3gpLmJvdW5kaW5n
Qm94KCkpOworICAgICAgICBPcHRpb25TZXQ8TWFwQ29vcmRpbmF0ZXNNb2RlPiBvcHRpb25zID0g
eyBVc2VUcmFuc2Zvcm1zLCBJZ25vcmVTdGlja3lPZmZzZXRzIH07CisgICAgICAgIGF1dG8gc2Ny
b2xsU25hcEFyZWEgPSBMYXlvdXRSZWN0KGNoaWxkLT5sb2NhbFRvQ29udGFpbmVyUXVhZChGbG9h
dFF1YWQoY2hpbGQtPmJvcmRlckJvdW5kaW5nQm94KCkpLCAmc2Nyb2xsaW5nRWxlbWVudEJveCwg
b3B0aW9ucykuYm91bmRpbmdCb3goKSk7CiAKICAgICAgICAgLy8gbG9jYWxUb0NvbnRhaW5lclF1
YWQgd2lsbCB0cmFuc2Zvcm0gdGhlIHNjcm9sbCBzbmFwIGFyZWEgYnkgdGhlIHNjcm9sbCBwb3Np
dGlvbiwgZXhjZXB0IGluIHRoZSBjYXNlIHRoYXQgdGhpcyBwb3NpdGlvbiBpcwogICAgICAgICAv
LyBjb21pbmcgZnJvbSBhIFNjcm9sbFZpZXcuIFdlIHdhbnQgdGhlIHRyYW5zZm9ybWVkIGFyZWEs
IGJ1dCB3aXRob3V0IHNjcm9sbCBwb3NpdGlvbiB0YWtlbiBpbnRvIGFjY291bnQuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCmluZGV4IDViZmMzZmMxY2RlNjIyMTBjNzhlODA2
NGRkMjQ5NmE5NDI3ZjkwYzAuLmEwYzIyZGQzN2NjZTVhMjRjNjEyYTEzOTViZDA1YWZjOTcwN2Mx
ZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCkBAIC0yMjUyLDYgKzIy
NTIsMTEgQEAgdm9pZCBSZW5kZXJCb3g6Om1hcExvY2FsVG9Db250YWluZXIoY29uc3QgUmVuZGVy
TGF5ZXJNb2RlbE9iamVjdCogYW5jZXN0b3JDb250YWkKICAgICAgICAgKndhc0ZpeGVkID0gbW9k
ZS5jb250YWlucyhJc0ZpeGVkKTsKICAgICAKICAgICBMYXlvdXRTaXplIGNvbnRhaW5lck9mZnNl
dCA9IG9mZnNldEZyb21Db250YWluZXIoKmNvbnRhaW5lciwgTGF5b3V0UG9pbnQodHJhbnNmb3Jt
U3RhdGUubWFwcGVkUG9pbnQoKSkpOworCisgICAgLy8gUmVtb3ZlIHN0aWNreSBwb3NpdGlvbmlu
ZyBmcm9tIHRoZSBvZmZzZXQgaWYgaXQgc2hvdWxkIGJlIGlnbm9yZWQuIFRoaXMgaXMgZG9uZSBo
ZXJlIGluCisgICAgLy8gb3JkZXIgdG8gYXZvaWQgcGlwaW5nIHRoaXMgZmxhZyBkb3duIHRoZSBt
ZXRob2QgY2hhaW4uCisgICAgaWYgKG1vZGUuY29udGFpbnMoSWdub3JlU3RpY2t5T2Zmc2V0cykg
JiYgaXNTdGlja2lseVBvc2l0aW9uZWQoKSkKKyAgICAgICAgY29udGFpbmVyT2Zmc2V0IC09IHN0
aWNreVBvc2l0aW9uT2Zmc2V0KCk7CiAgICAgCiAgICAgYm9vbCBwcmVzZXJ2ZTNEID0gbW9kZS5j
b250YWlucyhVc2VUcmFuc2Zvcm1zKSAmJiAoY29udGFpbmVyLT5zdHlsZSgpLnByZXNlcnZlczNE
KCkgfHwgc3R5bGUoKS5wcmVzZXJ2ZXMzRCgpKTsKICAgICBpZiAobW9kZS5jb250YWlucyhVc2VU
cmFuc2Zvcm1zKSAmJiBzaG91bGRVc2VUcmFuc2Zvcm1Gcm9tQ29udGFpbmVyKGNvbnRhaW5lcikp
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3RFbnVt
cy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdEVudW1zLmgKaW5kZXgg
ZDRhYzhlZDcyOTlhMTRkOWU5ODQ1OGNmZmQwMzQxNjBiNzUxYTE0NC4uZDU1ODdhMTZmZDg5MTI2
NjVmYzlmOGI2NTY4MWE2OTJiZjkzZTA0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlck9iamVjdEVudW1zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlck9iamVjdEVudW1zLmgKQEAgLTU3LDcgKzU3LDggQEAgZW51bSBjbGFzcyBTY2hlZHVs
ZVJlbGF5b3V0IHsgTm8sIFllcyB9OwogZW51bSBNYXBDb29yZGluYXRlc01vZGUgewogICAgIElz
Rml4ZWQgICAgICAgICAgICAgPSAxIDw8IDAsCiAgICAgVXNlVHJhbnNmb3JtcyAgICAgICA9IDEg
PDwgMSwKLSAgICBBcHBseUNvbnRhaW5lckZsaXAgID0gMSA8PCAyCisgICAgQXBwbHlDb250YWlu
ZXJGbGlwICA9IDEgPDwgMiwKKyAgICBJZ25vcmVTdGlja3lPZmZzZXRzID0gMSA8PCAzLAogfTsK
IAogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCmluZGV4IGM3NmQ1NmEyZGZhYzk2ODFlY2NmYjBmNDMwMWE0NTgwMTM3NjY3ZjMuLmMy
ZWYxNTFlNGY1ZjY0Mjk3MDliNTRjMjI3ZDJiNTA1MzE2OTQxZjEgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
NyBAQAorMjAyMS0wOS0yNCAgTWFydGluIFJvYmluc29uICA8bXJvYmluc29uQHdlYmtpdC5vcmc+
CisKKyAgICAgICAgTWFuZGF0b3J5IHNjcm9sbCBzbmFwcGluZyBkb2Vzbid0IHdvcmsgY29ycmVj
dGx5IGluIHRhYmxlcyB3aXRoIHBvc2l0aW9uOnN0aWNreQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3MzAwCisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS83OTk3MTE5Nj4KKworICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAg
ICAgQWRkIGEgdGVzdCB3aGljaCBleGVyY2lzZXMgdGhlIG9yaWdpbmFsIGJ1Zy4KKworICAgICAg
ICAqIGNzczMvc2Nyb2xsLXNuYXAvc2Nyb2xsLXNuYXAtZHJhZy1zY3JvbGxiYXItdGh1bWItd2l0
aC1zdGlja3ktZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL3Njcm9sbC1zbmFw
L3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtc3RpY2t5Lmh0bWw6IEFkZGVk
LgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zOiBTa2lwIHRoaXMgdGVz
dCBvbiBpT1MsIHdoaWNoIGRvZXNuJ3Qgc3VwcG9ydCB0aHVtYiBkcmFnZ2luZy4KKwogMjAyMS0w
OS0yNCAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgW0lPUyAx
NV0gVmlkZW8gdHJhY2sgZG9lcyBub3QgZ2V0IHVubXV0ZWQgaW4gY2FzZSBvZiB0YWIgd2FzIGlu
YWN0aXZlIGxlc3MgdGhhbiB+NTAwIG1zCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL3Nj
cm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtc3RpY2t5LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvc2Nyb2xsLXNuYXAvc2Nyb2xsLXNuYXAtZHJh
Zy1zY3JvbGxiYXItdGh1bWItd2l0aC1zdGlja3ktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI2
OTE2YjdjZDgwYTQ3ZWM3YzFlMzc3MjcyNTAwYWJkY2IyMmIwMmIKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFy
LXRodW1iLXdpdGgtc3RpY2t5LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1BBU1Mgc3Rp
Y2t5IHBvc2l0aW9uZWQgc25hcCBlbGVtZW50IGNyZWF0ZXMgc25hcCBwb2ludCBhdCBzdGF0aWMg
cG9zaXRpb24KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFw
LWRyYWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtc3RpY2t5Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtc3RpY2t5
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMjg1NzJjYzRmNzFkOWI4Njg5ZjI5ZjJjMDk0MjljNWE5NjkwZjY1
NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvc2Nyb2xsLXNuYXAvc2Nyb2xs
LXNuYXAtZHJhZy1zY3JvbGxiYXItdGh1bWItd2l0aC1zdGlja3kuaHRtbApAQCAtMCwwICsxLDk5
IEBACis8IURPQ1RZUEUgaHRtbD4gPCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBBc3luY092ZXJm
bG93U2Nyb2xsaW5nRW5hYmxlZD10cnVlIF0gLS0+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAg
ICAgPHRpdGxlPlN0aWNreSBwb3NpdGlvbiBpdGVtcyBzaG91bGQgY3JlYXRlIHNuYXAgcG9pbnRz
IGF0IHRoZWlyIHN0YXRpYyBwb3NpdGlvbjwvdGl0bGU+CisgICAgICAgIDxzdHlsZSB0eXBlPSJ0
ZXh0L2NzcyI+CisgICAgICAgICAgICAvKiBVc2UgY3VzdG9taXplZCBzY3JvbGxiYXIgdG8gYXZv
aWQgcGxhdGZvcm0gZGlmZmVyZW5jZXMuICovCisgICAgICAgICAgICA6Oi13ZWJraXQtc2Nyb2xs
YmFyIHsKKyAgICAgICAgICAgICAgICB3aWR0aDogMjBweDsKKyAgICAgICAgICAgICAgICBoZWln
aHQ6IDIwcHg7CisgICAgICAgICAgICB9CisgICAgICAgICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFy
LWJ1dHRvbiB7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4OworICAgICAgICAgICAgICAg
IHdpZHRoOiAyMHB4OworICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7Cisg
ICAgICAgICAgICB9CisKKyAgICAgICAgICAgIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2stcGll
Y2UgIHsKKyAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmF5OworICAgICAgICAg
ICAgfQorCisgICAgICAgICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHsKKyAgICAgICAg
ICAgICAgICBoZWlnaHQ6IDIwcHg7CisgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7CisgICAg
ICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7CisgICAgICAgICAgICB9CisKKyAg
ICAgICAgICAgIGJvZHkgeworICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4OworICAgICAgICAg
ICAgfQorCisgICAgICAgICAgICAuY29udGFpbmVyIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6
IDIwMHB4OworICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDsKKyAgICAgICAgICAgICAgICBv
dmVyZmxvdy14OiBhdXRvOworICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjsKKyAg
ICAgICAgICAgICAgICBzY3JvbGwtc25hcC10eXBlOiBib3RoIG1hbmRhdG9yeTsKKyAgICAgICAg
ICAgIH0KKworICAgICAgICAgICAgLmhvcml6b250YWwtZHJhd2VyIHsKKyAgICAgICAgICAgICAg
ICBoZWlnaHQ6IDEwMCU7CisgICAgICAgICAgICAgICAgd2lkdGg6IDE1MDBweDsKKyAgICAgICAg
ICAgIH0KKworICAgICAgICAgICAgLmJsb2NrIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDEw
MCU7CisgICAgICAgICAgICAgICAgd2lkdGg6IDI1MHB4OworICAgICAgICAgICAgfQorCisgICAg
ICAgICAgICAuc25hcCB7CisgICAgICAgICAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IHN0YXJ0
OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuc3RpY2t5IHsKKyAgICAgICAgICAgICAg
ICB3aWR0aDogMjBweDsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7CisgICAgICAgICAg
ICAgICAgbGVmdDogMHB4OworICAgICAgICAgICAgICAgIHRvcDogMHB4OworICAgICAgICAgICAg
ICAgIHBvc2l0aW9uOiBzdGlja3k7CisgICAgICAgICAgICB9CisgICAgICAgIDwvc3R5bGU+Cisg
ICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+
CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3Nj
cmlwdD4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0
cnVlOworCisgICAgICAgIGFzeW5jIGZ1bmN0aW9uIG9uTG9hZCgpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIgPT0gdW5kZWZpbmVkKSB7CisgICAgICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NvbnNvbGUnKS5pbm5lclRleHQgPSAiRHJh
Z2dpbmcgdGhlIHNjcm9sbGJhciB0aHVtYiBpbnRvIHRoZSB3aGl0ZSBwYXJ0IG9mIHRoZSBjb250
YWluZXIgc2hvdWxkIHRyaWdnZXIgc2Nyb2xsIHNuYXBwaW5nLiI7CisgICAgICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICAgICAgfQorICAgICAgICAgICAgdHJ5IHsKKyAgICAgICAgICAgICAg
ICBldmVudFNlbmRlci5tb3VzZU1vdmVUbygyMCwgMTkwKTsKKyAgICAgICAgICAgICAgICBldmVu
dFNlbmRlci5tb3VzZURvd24oKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZU1v
dmVUbygxMDAsIDE5MCk7CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VVcCgpOwor
CisgICAgICAgICAgICAgICAgbGV0IGhvcml6b250YWxDb250YWluZXIgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiaG9yaXpvbnRhbC1jb250YWluZXIiKTsKKyAgICAgICAgICAgICAgICBhd2Fp
dCBVSUhlbHBlci53YWl0Rm9yVGFyZ2V0U2Nyb2xsQW5pbWF0aW9uVG9TZXR0bGUoaG9yaXpvbnRh
bENvbnRhaW5lcik7CisgICAgICAgICAgICAgICAgZXhwZWN0VHJ1ZShob3Jpem9udGFsQ29udGFp
bmVyLnNjcm9sbExlZnQgPT0gMTAyMCwgInN0aWNreSBwb3NpdGlvbmVkIHNuYXAgZWxlbWVudCBj
cmVhdGVzIHNuYXAgcG9pbnQgYXQgc3RhdGljIHBvc2l0aW9uIik7CisgICAgICAgICAgICB9IGNh
dGNoIChlKSB7CisgICAgICAgICAgICAgICAgY29uc29sZS5sb2coZSk7CisgICAgICAgICAgICB9
IGZpbmFsbHkgeworICAgICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICAgICAg
fQorICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBv
bmxvYWQ9Im9uTG9hZCgpOyI+CisgICAgICAgIDxkaXYgaWQ9Imhvcml6b250YWwtY29udGFpbmVy
IiBjbGFzcz0iY29udGFpbmVyIj4KKyAgICAgICAgICAgIDxkaXYgY2xhc3M9Imhvcml6b250YWwt
ZHJhd2VyIj4KKyAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGlja3kgc25hcCIgc3R5bGU9
ImZsb2F0OiBsZWZ0OyBiYWNrZ3JvdW5kOiBncmV5OyI+PC9kaXY+CisgICAgICAgICAgICAgICAg
PGRpdiBjbGFzcz0iYmxvY2siIHN0eWxlPSJmbG9hdDogbGVmdDsgd2lkdGg6IDEwMDBweDsiPjwv
ZGl2PgorICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJsb2NrIHNuYXAiIHN0eWxlPSJmbG9h
dDogbGVmdDsgYmFja2dyb3VuZDogIzgwNDc1RTsiPjwvZGl2PgorICAgICAgICAgICAgPC9kaXY+
CisgICAgICAgIDwvZGl2PgorICAgICAgICA8cCBpZD0iY29uc29sZSI+PC9wPgorICAgIDwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhw
ZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMKaW5k
ZXggY2NmNGNhZTFjYjFjNTFhZDliYWRjOWQ0ZTExNDZhYmY5ZWI2NWFjZS4uZWY3MzVmYTQwM2Q2
MmE3N2JhOTg4ZGRjMmVkMWVmZDliODJlNjcwYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9z
L1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIyOTEsNiArMjI5MSw3IEBAIGZhc3QvZG9tL1dpbmRvdy9j
aGlsZC13aW5kb3ctZm9jdXMuaHRtbAogd2Via2l0Lm9yZy9iLzE1NzIwMSBmYXN0L3Njcm9sbGlu
Zy9ydGwtZHJhZy12ZXJ0aWNhbC1zY3JvbGxlci5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3Jn
L2IvMTU3MjAxIGNzczMvc2Nyb2xsLXNuYXAvc2Nyb2xsLXNuYXAtZHJhZy1zY3JvbGxiYXItdGh1
bWIuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE1NzIwMSBjc3MzL3Njcm9sbC1zbmFw
L3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtcmVsYXlvdXRzLmh0bWwgWyBG
YWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xNTcyMDEgY3NzMy9zY3JvbGwtc25hcC9zY3JvbGwtc25h
cC1kcmFnLXNjcm9sbGJhci10aHVtYi13aXRoLXN0aWNreS5odG1sIFsgRmFpbHVyZSBdCiAKICMg
RHVtcFJlbmRlclRyZWUgZG9lc24ndCBzdXBwb3J0IGxvZ2dpbmcgY2FsbHMgdG8gcnVuT3BlblBh
bmVsIGFuZCBpT1MncyBXZWJLaXRUZXN0UnVubmVyIGRvZXNuJ3Qgc3VwcG9ydCBldmVudFNlbmRl
ci5tb3VzZURvd24uCiBmYXN0L2Zvcm1zL2ZpbGUvb3Blbi1maWxlLXBhbmVsLmh0bWwgWyBTa2lw
IF0K
</data>

          </attachment>
      

    </bug>

</bugzilla>