<?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>227478</bug_id>
          
          <creation_ts>2021-06-29 01:47:36 -0700</creation_ts>
          <short_desc>[css-scroll-snap] Triggering a layout during scroll causes jittery scrolling on Mac when dragging the scrollbar</short_desc>
          <delta_ts>2021-07-29 10:50:03 -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>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=173887</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=228572</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Martin Robinson">mrobinson</reporter>
          <assigned_to name="Martin Robinson">mrobinson</assigned_to>
          <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1773350</commentid>
    <comment_count>0</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2021-06-29 01:47:36 -0700</bug_when>
    <thetext>When a page trigger layout during scroll events and with scroll snap, dragging the scrollbar on a Mac causes a lot of jitter while scrolling. The issue is that during layout the code is trying to snap. Each new movement of the scroll bar unsnaps briefly and then the relayout snaps again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773351</commentid>
    <comment_count>1</comment_count>
      <attachid>432460</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2021-06-29 01:48:16 -0700</bug_when>
    <thetext>Created attachment 432460
Test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774073</commentid>
    <comment_count>2</comment_count>
      <attachid>432678</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2021-07-01 04:36:08 -0700</bug_when>
    <thetext>Created attachment 432678
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774404</commentid>
    <comment_count>3</comment_count>
      <attachid>432774</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2021-07-02 03:25:13 -0700</bug_when>
    <thetext>Created attachment 432774
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774767</commentid>
    <comment_count>4</comment_count>
      <attachid>432874</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2021-07-05 01:32:15 -0700</bug_when>
    <thetext>Created attachment 432874
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774772</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-07-05 02:21:12 -0700</bug_when>
    <thetext>Committed r279564 (239395@main): &lt;https://commits.webkit.org/239395@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 432874.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774773</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-07-05 02:22:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/80168708&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>432460</attachid>
            <date>2021-06-29 01:48:16 -0700</date>
            <delta_ts>2021-06-29 01:48:16 -0700</delta_ts>
            <desc>Test case</desc>
            <filename>snap-relayout.html</filename>
            <type>text/html</type>
            <size>1180</size>
            <attacher name="Martin Robinson">mrobinson</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9J2VuJz4KPGhlYWQ+CiAgPHRpdGxlPjwvdGl0bGU+
CiAgPG1ldGEgY2hhcnNldD0nVVRGLTgnPgogIDxtZXRhIG5hbWU9J3ZpZXdwb3J0JyBjb250ZW50
PSd3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSwgbWluaW11bS1zY2FsZT0xLCBt
YXhpbXVtLXNjYWxlPTEsIHVzZXItc2NhbGFibGU9bm8nPgogIDxtZXRhIG5hbWU9J2FwcGxlLW1v
YmlsZS13ZWItYXBwLWNhcGFibGUnIGNvbnRlbnQ9J3llcyc+CiAgPG1ldGEgbmFtZT0nYXBwbGUt
dG91Y2gtZnVsbHNjcmVlbicgY29udGVudD0neWVzJz4KICA8bWV0YSBuYW1lPSdtc2FwcGxpY2F0
aW9uLXRhcC1oaWdobGlnaHQnIGNvbnRlbnQ9J25vJz4KICA8c3R5bGU+CiAgICBodG1sIHsKICAg
ICAgbWFyZ2luOiAwOwogICAgICBzY3JvbGwtc25hcC10eXBlOiBib3RoIG1hbmRhdG9yeTsKICAg
IH0KCiAgICAjb3ZlcmxheSB7CiAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgdG9wOiAxZW07
CiAgICAgIGxlZnQ6IDFlbTsKICAgIH0KCiAgICAucGFnZSB7CiAgICAgIGhlaWdodDogMTAwdmg7
CiAgICAgIHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydDsKICAgIH0KICA8L3N0eWxlPgo8L2hlYWQ+
Cjxib2R5PgogIDxkaXYgaWQ9Im92ZXJsYXkiPjwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VzIj4K
ICAgIDxkaXYgY2xhc3M9InBhZ2UiIHN0eWxlPSJiYWNrZ3JvdW5kOiByZWQiPjwvZGl2PgogICAg
PGRpdiBjbGFzcz0icGFnZSIgc3R5bGU9ImJhY2tncm91bmQ6IGdyZWVuIj48L2Rpdj4KICAgIDxk
aXYgY2xhc3M9InBhZ2UiIHN0eWxlPSJiYWNrZ3JvdW5kOiBibHVlIj48L2Rpdj4KICAgIDxkaXYg
Y2xhc3M9InBhZ2UiIHN0eWxlPSJiYWNrZ3JvdW5kOiBncmF5Ij48L2Rpdj4KICA8L2Rpdj4KICA8
c2NyaXB0PgogICAgdmFyIG92ZXJsYXkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnb3Zlcmxh
eScpCiAgICBmdW5jdGlvbiBzY3JvbGwoKSB7CiAgICAgIG92ZXJsYXkuaW5uZXJIVE1MID0gZG9j
dW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcCB8fCBkb2N1bWVudC5ib2R5LnNjcm9sbFRv
cAogICAgfQogICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHNjcm9sbCkKICAg
IHNjcm9sbCgpCiAgPC9zY3JpcHQ+CjwvYm9keT4KPC9odG1sPgoKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432678</attachid>
            <date>2021-07-01 04:36:08 -0700</date>
            <delta_ts>2021-07-02 03:25:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227478-20210701133606.patch</filename>
            <type>text/plain</type>
            <size>13764</size>
            <attacher name="Martin Robinson">mrobinson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5MzIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODBhMWI2M2FjYjAzMzVh
ZmYyZmYwMzRjNjc4MWRiNmE0ODUwYzJhNS4uMzRiNzc4ZGNiYjJkMDcwODMxY2VmYjg0NGUyODk2
YzNlNWMyNWI2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIxLTA3LTAxICBNYXJ0
aW4gUm9iaW5zb24gIDxtcm9iaW5zb25Ad2Via2l0Lm9yZz4KKworICAgICAgICBbY3NzLXNjcm9s
bC1zbmFwXSBUcmlnZ2VyaW5nIGEgbGF5b3V0IGR1cmluZyBzY3JvbGwgY2F1c2VzIGppdHRlcnkg
c2Nyb2xsaW5nIG9uIE1hYyB3aGVuIGRyYWdnaW5nIHRoZSBzY3JvbGxiYXIKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzQ3OAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gZHJhZ2dpbmcgdGhlIHNj
cm9sbGJhciB0aHVtYiwgd2FpdCB0byByZXNuYXAgYWZ0ZXIgbGF5b3V0IGZvciBhCisgICAgICAg
IGdpdmVuIGF4aXMgdW50aWwgdGhlIG1vdXNlIGJ1dHRvbiBpcyB1cCBvbiB0aGUgc2Nyb2xsYmFy
LiBUaGlzIHByZXZlbnRzCisgICAgICAgIHRoZSBsYXlvdXQgYW5kIHRoZSBzY3JvbGxiYXIgZnJv
bSBmaWdodGluZyB0byBzZXQgdGhlIHNjcm9sbCBwb3NpdGlvbgorICAgICAgICB3aGljaCBjYXVz
ZXMgc29tZSBwcmV0dHkgdGVycmlibGUgaml0dGVyIGluIHRoaXMgY2FzZS4KKworICAgICAgICBU
ZXN0OiBjc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdp
dGgtcmVsYXlvdXRzLmh0bWwKKworICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbEFuaW1hdGlvblNt
b290aC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRpb25TbW9vdGg6OnVwZGF0
ZVBlckF4aXNEYXRhKTogRml4IGFuIGlzc3VlIHdoZXJlIHRoZSBuZXcgcG9zaXRpb24KKyAgICAg
ICAgd2FzIGNhbGN1bGF0ZWQgaW5jb3JyZWN0bHkuIFRoaXMgZGlkIG5vdCBjYXVzZSB0aGUgYW5p
bWF0aW9uIHRvIGxhbmQgb24gdGhlIHdyb25nIHBsYWNlLAorICAgICAgICBidXQgZGlkIGNhdXNl
IGEgdmVyeSBqYW5reSBhbmltYXRpb24gcHJvZ3Jlc3Npb24gd2hlbiByZXRyaWdnZXJpbmcgYW5p
bWF0aW9ucyB0byB0aGUKKyAgICAgICAgc2FtZSBsb2NhdGlvbi4KKyAgICAgICAgKiBwbGF0Zm9y
bS9TY3JvbGxBbmltYXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6
cmV0YXJnZXRSdW5uaW5nQW5pbWF0aW9uKTogQWRkZWQgdGhpcyBoZWxwZXIsIHdoaWNoIHJldGFy
Z2V0cyBhCisgICAgICAgIGEgcnVubmluZyBhbmltYXRpb24gdG8gYWxsb3cgZm9yIGEgc21vb3Ro
IHRyYW5zaXRpb24gZHVyaW5nIHJlbGF5b3V0cy4KKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxB
bmltYXRvci5oOiBBZGRlZCBuZXcgbWV0aG9kIGRlZmluaXRpb24uCisgICAgICAgICogcGxhdGZv
cm0vU2Nyb2xsYWJsZUFyZWEuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYWJsZUFyZWE6
OnJlc25hcEFmdGVyTGF5b3V0KTogT25seSBzbmFwIGFmdGVyIGxheW91dCB3aGVuIHRoZSB1c2Vy
IGlzIG5vdAorICAgICAgICBjdXJyZW50bHkgaW50ZXJhY3Rpbmcgd2l0aCB0aGUgc2Nyb2xsYmFy
LiBPbmNlIHRoZSBzY3JvbGxiYXIgaXNuJ3QgYmVpbmcgaW50ZXJhY3RlZCB3aXRoLAorICAgICAg
ICBzbmFwcGluZyB3aWxsIG9jY3VyIGFscmVhZHkuIFdoZW4gdGhlcmUgaXMgYWxyZWFkeSBzb21l
IHNvcnQgb2YgYW5pbWF0aW9uIGluIHByb2dyZXNzLAorICAgICAgICBzbW9vdGhseSB0cmFuc2l0
aW9uIHRoYXQgYW5pbWF0aW9uIHRvIGxhbmQgb24gdGhlIG5ldyBwb3NpdGlvbiBpbnN0ZWFkIG9m
IHNuYXBwaW5nIHRoZXJlCisgICAgICAgIGltbWVkaWF0ZWx5LgorCiAyMDIxLTA2LTI3ICBDb21t
aXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2Vk
LCByZXZlcnRpbmcgcjI3OTMyMi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L1Njcm9sbEFuaW1hdGlvblNtb290aC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3Jv
bGxBbmltYXRpb25TbW9vdGguY3BwCmluZGV4IGNlZjg2ODg5NWJkZTNlODI4MjNmNTBlMWUxM2M3
YzA0OTc2NTBiYzUuLmEwY2E0Zjk0M2VkYjk3NWQ3MWRhMTU0ZDY5Y2UxNTFlNmZhMWRkODkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdGlvblNtb290aC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0aW9uU21vb3RoLmNw
cApAQCAtMjkzLDEzICsyOTMsMTMgQEAgYm9vbCBTY3JvbGxBbmltYXRpb25TbW9vdGg6OnVwZGF0
ZVBlckF4aXNEYXRhKFBlckF4aXNEYXRhJiBkYXRhLCBTY3JvbGxHcmFudWxhcmkKICAgICAgICAg
ZGF0YS5kZXNpcmVkUG9zaXRpb24gPSBkYXRhLmN1cnJlbnRQb3NpdGlvbjsKICAgICAgICAgZGF0
YS5zdGFydFRpbWUgPSB7IH07CiAgICAgfQotICAgIGZsb2F0IG5ld1Bvc2l0aW9uID0gZGF0YS5k
ZXNpcmVkUG9zaXRpb24gKyBkZWx0YTsKIAorICAgIGZsb2F0IG5ld1Bvc2l0aW9uID0gZGF0YS5j
dXJyZW50UG9zaXRpb24gKyBkZWx0YTsKICAgICBuZXdQb3NpdGlvbiA9IHN0ZDo6bWF4KHN0ZDo6
bWluKG5ld1Bvc2l0aW9uLCBtYXhTY3JvbGxQb3NpdGlvbiksIG1pblNjcm9sbFBvc2l0aW9uKTsK
LQogICAgIGlmIChuZXdQb3NpdGlvbiA9PSBkYXRhLmRlc2lyZWRQb3NpdGlvbikKICAgICAgICAg
cmV0dXJuIGZhbHNlOwogCisKICAgICBTZWNvbmRzIGFuaW1hdGlvblRpbWUsIHJlcGVhdE1pbmlt
dW1TdXN0YWluVGltZSwgYXR0YWNrVGltZSwgcmVsZWFzZVRpbWUsIG1heGltdW1Db2FzdFRpbWU7
CiAgICAgQ3VydmUgY29hc3RUaW1lQ3VydmU7CiAgICAgZ2V0QW5pbWF0aW9uUGFyYW1ldGVyc0Zv
ckdyYW51bGFyaXR5KGdyYW51bGFyaXR5LCBhbmltYXRpb25UaW1lLCByZXBlYXRNaW5pbXVtU3Vz
dGFpblRpbWUsIGF0dGFja1RpbWUsIHJlbGVhc2VUaW1lLCBjb2FzdFRpbWVDdXJ2ZSwgbWF4aW11
bUNvYXN0VGltZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxB
bmltYXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5jcHAK
aW5kZXggNWRmNTk4N2U4OTgxMjlkM2Q4YTJiZTM1MWNjNzIwMDA0NDRkNWQ2Ni4uNWU4M2ZkYmFl
MjdmYjg5ODdmODA5YTg1NDk3NTdhYzA1ODYyMzgwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbEFuaW1hdG9yLmNwcApAQCAtMTQ2LDYgKzE0NiwxMyBAQCBib29sIFNjcm9sbEFu
aW1hdG9yOjpzY3JvbGxUb1Bvc2l0aW9uV2l0aEFuaW1hdGlvbihjb25zdCBGbG9hdFBvaW50JiBu
ZXdQb3NpdGlvbgogICAgIHJldHVybiB0cnVlOwogfQogCit2b2lkIFNjcm9sbEFuaW1hdG9yOjpy
ZXRhcmdldFJ1bm5pbmdBbmltYXRpb24oY29uc3QgRmxvYXRQb2ludCYgbmV3UG9zaXRpb24pCit7
CisgICAgQVNTRVJUKHNjcm9sbGFibGVBcmVhKCkuY3VycmVudFNjcm9sbEJlaGF2aW9yU3RhdHVz
KCkgPT0gU2Nyb2xsQmVoYXZpb3JTdGF0dXM6OkluTm9uTmF0aXZlQW5pbWF0aW9uKTsKKyAgICBB
U1NFUlQobV9zY3JvbGxBbmltYXRpb24tPmlzQWN0aXZlKCkpOworICAgIG1fc2Nyb2xsQW5pbWF0
aW9uLT5zY3JvbGwobmV3UG9zaXRpb24pOworfQorCiBGbG9hdFBvaW50IFNjcm9sbEFuaW1hdG9y
OjpvZmZzZXRGcm9tUG9zaXRpb24oY29uc3QgRmxvYXRQb2ludCYgcG9zaXRpb24pCiB7CiAgICAg
cmV0dXJuIFNjcm9sbGFibGVBcmVhOjpzY3JvbGxPZmZzZXRGcm9tUG9zaXRpb24ocG9zaXRpb24s
IHRvRmxvYXRTaXplKG1fc2Nyb2xsYWJsZUFyZWEuc2Nyb2xsT3JpZ2luKCkpKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9yLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5oCmluZGV4IGZhYzcwZGI0ZTc2NGE0MzFiZWJm
OGQ1YjYwMDc4ODZiOWM1MjAyZWIuLmQ5MmNmZGJkZmJiMDVmMWZhOTEzNGVjNjU4NzVhZmNiOGNl
MWQ3OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9y
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaApAQCAtNzIs
NiArNzIsNyBAQCBwdWJsaWM6CiAKICAgICBib29sIHNjcm9sbFRvT2Zmc2V0V2l0aG91dEFuaW1h
dGlvbihjb25zdCBGbG9hdFBvaW50JiwgU2Nyb2xsQ2xhbXBpbmcgPSBTY3JvbGxDbGFtcGluZzo6
Q2xhbXBlZCk7CiAgICAgdmlydHVhbCBib29sIHNjcm9sbFRvUG9zaXRpb25XaXRob3V0QW5pbWF0
aW9uKGNvbnN0IEZsb2F0UG9pbnQmIHBvc2l0aW9uLCBTY3JvbGxDbGFtcGluZyA9IFNjcm9sbENs
YW1waW5nOjpDbGFtcGVkKTsKKyAgICB2aXJ0dWFsIHZvaWQgcmV0YXJnZXRSdW5uaW5nQW5pbWF0
aW9uKGNvbnN0IEZsb2F0UG9pbnQmKTsKIAogICAgIGJvb2wgc2Nyb2xsVG9PZmZzZXRXaXRoQW5p
bWF0aW9uKGNvbnN0IEZsb2F0UG9pbnQmKTsKICAgICB2aXJ0dWFsIGJvb2wgc2Nyb2xsVG9Qb3Np
dGlvbldpdGhBbmltYXRpb24oY29uc3QgRmxvYXRQb2ludCYpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vU2Nyb2xsYWJsZUFyZWEuY3BwCmluZGV4IDY5MmFiYzBhZjQxNGEzNGIwYzhjOTM1MDE3
ZjQ2NGE2MjM4OWRkYzUuLjAyYzBlNjlhNDBhNGNkZDJjN2MwYzAzODM0YTMwY2UwZmM5M2JhN2Ig
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGFibGVBcmVhLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxhYmxlQXJlYS5jcHAKQEAgLTUyOSwx
OSArNTI5LDI4IEBAIHZvaWQgU2Nyb2xsYWJsZUFyZWE6OnJlc25hcEFmdGVyTGF5b3V0KCkKIAog
ICAgIGF1dG8gY3VycmVudE9mZnNldCA9IHNjcm9sbE9mZnNldCgpOwogICAgIGF1dG8gY29ycmVj
dGVkT2Zmc2V0ID0gY3VycmVudE9mZnNldDsKLSAgICBjb25zdCBhdXRvJiBob3Jpem9udGFsID0g
aW5mby0+aG9yaXpvbnRhbFNuYXBPZmZzZXRzOwotICAgIGF1dG8gYWN0aXZlSG9yaXpvbnRhbElu
ZGV4ID0gY3VycmVudEhvcml6b250YWxTbmFwUG9pbnRJbmRleCgpOwotICAgIGlmIChhY3RpdmVI
b3Jpem9udGFsSW5kZXgpCi0gICAgICAgIGNvcnJlY3RlZE9mZnNldC5zZXRYKGhvcml6b250YWxb
KmFjdGl2ZUhvcml6b250YWxJbmRleF0ub2Zmc2V0LnRvSW50KCkpOwogCi0gICAgY29uc3QgYXV0
byYgdmVydGljYWwgPSBpbmZvLT52ZXJ0aWNhbFNuYXBPZmZzZXRzOwotICAgIGF1dG8gYWN0aXZl
VmVydGljYWxJbmRleCA9IGN1cnJlbnRWZXJ0aWNhbFNuYXBQb2ludEluZGV4KCk7Ci0gICAgaWYg
KGFjdGl2ZVZlcnRpY2FsSW5kZXgpCi0gICAgICAgIGNvcnJlY3RlZE9mZnNldC5zZXRZKHZlcnRp
Y2FsWyphY3RpdmVWZXJ0aWNhbEluZGV4XS5vZmZzZXQudG9JbnQoKSk7CisgICAgaWYgKCFob3Jp
em9udGFsU2Nyb2xsYmFyKCkgfHwgaG9yaXpvbnRhbFNjcm9sbGJhcigpLT5wcmVzc2VkUGFydCgp
ID09IFNjcm9sbGJhclBhcnQ6Ok5vUGFydCkgeworICAgICAgICBjb25zdCBhdXRvJiBob3Jpem9u
dGFsID0gaW5mby0+aG9yaXpvbnRhbFNuYXBPZmZzZXRzOworICAgICAgICBhdXRvIGFjdGl2ZUhv
cml6b250YWxJbmRleCA9IGN1cnJlbnRIb3Jpem9udGFsU25hcFBvaW50SW5kZXgoKTsKKyAgICAg
ICAgaWYgKGFjdGl2ZUhvcml6b250YWxJbmRleCkKKyAgICAgICAgICAgIGNvcnJlY3RlZE9mZnNl
dC5zZXRYKGhvcml6b250YWxbKmFjdGl2ZUhvcml6b250YWxJbmRleF0ub2Zmc2V0LnRvSW50KCkp
OworICAgIH0KKworICAgIGlmICghdmVydGljYWxTY3JvbGxiYXIoKSB8fCB2ZXJ0aWNhbFNjcm9s
bGJhcigpLT5wcmVzc2VkUGFydCgpID09IFNjcm9sbGJhclBhcnQ6Ok5vUGFydCkgeworICAgICAg
ICBjb25zdCBhdXRvJiB2ZXJ0aWNhbCA9IGluZm8tPnZlcnRpY2FsU25hcE9mZnNldHM7CisgICAg
ICAgIGF1dG8gYWN0aXZlVmVydGljYWxJbmRleCA9IGN1cnJlbnRWZXJ0aWNhbFNuYXBQb2ludElu
ZGV4KCk7CisgICAgICAgIGlmIChhY3RpdmVWZXJ0aWNhbEluZGV4KQorICAgICAgICAgICAgY29y
cmVjdGVkT2Zmc2V0LnNldFkodmVydGljYWxbKmFjdGl2ZVZlcnRpY2FsSW5kZXhdLm9mZnNldC50
b0ludCgpKTsKKyAgICB9CiAKICAgICBpZiAoY29ycmVjdGVkT2Zmc2V0ICE9IGN1cnJlbnRPZmZz
ZXQpIHsKICAgICAgICAgTE9HX1dJVEhfU1RSRUFNKFNjcm9sbFNuYXAsIHN0cmVhbSA8PCAiIGFk
anVzdGluZyBvZmZzZXQgZnJvbSAiIDw8IGN1cnJlbnRPZmZzZXQgPDwgIiB0byAiIDw8IGNvcnJl
Y3RlZE9mZnNldCk7Ci0gICAgICAgIHNjcm9sbFRvT2Zmc2V0V2l0aG91dEFuaW1hdGlvbihjb3Jy
ZWN0ZWRPZmZzZXQpOworICAgICAgICBhdXRvIHBvc2l0aW9uID0gc2Nyb2xsUG9zaXRpb25Gcm9t
T2Zmc2V0KGNvcnJlY3RlZE9mZnNldCk7CisgICAgICAgIGlmIChjdXJyZW50U2Nyb2xsQmVoYXZp
b3JTdGF0dXMoKSA9PSBTY3JvbGxCZWhhdmlvclN0YXR1czo6Tm90SW5BbmltYXRpb24pCisgICAg
ICAgICAgICBzY3JvbGxUb09mZnNldFdpdGhvdXRBbmltYXRpb24oY29ycmVjdGVkT2Zmc2V0KTsK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgc2Nyb2xsQW5pbWF0b3ItPnJldGFyZ2V0UnVubmlu
Z0FuaW1hdGlvbihwb3NpdGlvbik7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZjk2MmVjMGI5YjlmNTg2
ZjQwZmFiNjk2MzFmOWZjZmNjMmY0YTFkYS4uOGIxZDU2YWYzMmFjNDhlZjU2Y2MzMzBiZjNhNjE2
NjFiNjdhZDBkZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIxLTA3LTAxICBNYXJ0aW4gUm9i
aW5zb24gIDxtcm9iaW5zb25Ad2Via2l0Lm9yZz4KKworICAgICAgICBbY3NzLXNjcm9sbC1zbmFw
XSBUcmlnZ2VyaW5nIGEgbGF5b3V0IGR1cmluZyBzY3JvbGwgY2F1c2VzIGppdHRlcnkgc2Nyb2xs
aW5nIG9uIE1hYyB3aGVuIGRyYWdnaW5nIHRoZSBzY3JvbGxiYXIKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzQ3OAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogY3NzMy9zY3JvbGwtc25hcC9zY3JvbGwt
c25hcC1kcmFnLXNjcm9sbGJhci10aHVtYi13aXRoLXJlbGF5b3V0cy1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIGNzczMvc2Nyb2xsLXNuYXAvc2Nyb2xsLXNuYXAtZHJhZy1zY3JvbGxi
YXItdGh1bWItd2l0aC1yZWxheW91dHMuaHRtbDogQWRkZWQuCisKIDIwMjEtMDYtMjcgIEFsYW4g
QnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW1RGQ10gQWRkIHN1cHBv
cnQgZm9yIHNocmlua2luZyBvdmVyLWNvbnN0cmFpbmVkIGNvbHVtbnMgYmFzZWQgb24gdGhlIHdp
ZHRoIHR5cGUgcHJpb3JpdHkgbGlzdApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9zY3Jv
bGwtc25hcC9zY3JvbGwtc25hcC1kcmFnLXNjcm9sbGJhci10aHVtYi13aXRoLXJlbGF5b3V0cy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRy
YWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtcmVsYXlvdXRzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4xYWE2MDUyYWUyODdiNGZiOTY1MjNhYjYzMjg1OTVmZDI2NmViMTdlCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvY3NzMy9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1kcmFnLXNjcm9s
bGJhci10aHVtYi13aXRoLXJlbGF5b3V0cy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMCBAQAor
MjUwCisxODAKK1BBU1MgZHJhZ2dpbmcgdGhlIGhvcml6b250YWwgc2Nyb2xsYmFyIHRodW1iIHNu
YXBwZWQKK1BBU1MgcmVsYXlvdXRzIHNob3VsZCBub3QgaGF2ZSBzbmFwcGVkIGJhY2sKK1BBU1Mg
ZHJhZ2dpbmcgdGhlIHZlcnRpY2FsIHNjcm9sbGJhciB0aHVtYiBzbmFwcGVkCitQQVNTIHJlbGF5
b3V0cyBzaG91bGQgbm90IGhhdmUgc25hcHBlZCBiYWNrCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1kcmFnLXNjcm9sbGJhci10aHVtYi13aXRoLXJlbGF5
b3V0cy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1kcmFn
LXNjcm9sbGJhci10aHVtYi13aXRoLXJlbGF5b3V0cy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRmY2VlNzhi
NDE0MGFiMzc2MWViOTliZmQyZDk5NTY0Y2VlOTVmNGMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1i
LXdpdGgtcmVsYXlvdXRzLmh0bWwKQEAgLTAsMCArMSwxMjggQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5EcmFnZ2luZyB0aGUgc2Nyb2xsYmFy
IHRodW1iIHNob3VsZCB0cmlnZ2VyIHNjcm9sbCBzbmFwcGluZzwvdGl0bGU+CisgICAgICAgIDxz
dHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CisgICAgICAgICAgICAvKiBVc2UgY3VzdG9taXplZCBzY3Jv
bGxiYXIgdG8gYXZvaWQgcGxhdGZvcm0gZGlmZmVyZW5jZXMuICovCisgICAgICAgICAgICA6Oi13
ZWJraXQtc2Nyb2xsYmFyIHsKKyAgICAgICAgICAgICAgICB3aWR0aDogMjBweDsKKyAgICAgICAg
ICAgICAgICBoZWlnaHQ6IDIwcHg7CisgICAgICAgICAgICB9CisgICAgICAgICAgICA6Oi13ZWJr
aXQtc2Nyb2xsYmFyLWJ1dHRvbiB7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4OworICAg
ICAgICAgICAgICAgIHdpZHRoOiAyMHB4OworICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29s
b3I6IGJsdWU7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIDo6LXdlYmtpdC1zY3JvbGxi
YXItdHJhY2stcGllY2UgIHsKKyAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmF5
OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1i
IHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7CisgICAgICAgICAgICAgICAgd2lkdGg6
IDIwcHg7CisgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7CisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIGJvZHkgeworICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4
OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuY29udGFpbmVyIHsKKyAgICAgICAgICAg
ICAgICBoZWlnaHQ6IDIwMHB4OworICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDsKKyAgICAg
ICAgICAgICAgICBvdmVyZmxvdzogYXV0bzsKKyAgICAgICAgICAgICAgICBzY3JvbGwtc25hcC10
eXBlOiBib3RoIG1hbmRhdG9yeTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLmhvcml6
b250YWwtZHJhd2VyIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CisgICAgICAgICAg
ICAgICAgd2lkdGg6IDUwMHB4OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuYmxvY2sg
eworICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTsKKyAgICAgICAgICAgICAgICB3aWR0aDog
MjUwcHg7CisgICAgICAgICAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IHN0YXJ0OworICAgICAg
ICAgICAgfQorICAgICAgICA8L3N0eWxlPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+CisgICAg
ICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKworICAgICAgICBhc3luYyBmdW5jdGlv
biBvbkxvYWQoKQorICAgICAgICB7CisgICAgICAgICAgICBsZXQgc2F3WmVybyA9IGZhbHNlOwor
ICAgICAgICAgICAgbGV0IGhvcml6b250YWxDb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiaG9yaXpvbnRhbC1jb250YWluZXIiKTsKKyAgICAgICAgICAgIGhvcml6b250YWxDb250
YWluZXIuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgKCkgPT4geworICAgICAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdob3Jpem9udGFsLWJsb2NrJykuaW5uZXJUZXh0ID0g
aG9yaXpvbnRhbENvbnRhaW5lci5zY3JvbGxMZWZ0OworICAgICAgICAgICAgICAgIHNhd1plcm8g
fHw9IGhvcml6b250YWxDb250YWluZXIuc2Nyb2xsTGVmdCA9PSAwOworICAgICAgICAgICAgfSkK
KworICAgICAgICAgICAgbGV0IHZlcnRpY2FsQ29udGFpbmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInZlcnRpY2FsLWNvbnRhaW5lciIpOworICAgICAgICAgICAgdmVydGljYWxDb250YWlu
ZXIuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgKCkgPT4geworICAgICAgICAgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCd2ZXJ0aWNhbC1ibG9jaycpLmlubmVyVGV4dCA9IHZlcnRp
Y2FsQ29udGFpbmVyLnNjcm9sbFRvcDsKKyAgICAgICAgICAgICAgICBzYXdaZXJvIHx8PSB2ZXJ0
aWNhbENvbnRhaW5lci5zY3JvbGxUb3AgPT0gMDsKKyAgICAgICAgICAgIH0pCisKKyAgICAgICAg
ICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIgPT0gdW5kZWZpbmVkKSB7CisgICAgICAgICAgICAg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NvbnNvbGUnKS5pbm5lclRleHQgPSAiRHJhZ2dp
bmcgdGhlIHNjcm9sbGJhciB0aHVtYiBzaG91bGQgdHJpZ2dlciBzY3JvbGwgc25hcHBpbmcuIjsK
KyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisgICAgICAgICAgICB0cnkg
eworICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKDIwLCAxOTApOworICAg
ICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlRG93bigpOworCisgICAgICAgICAgICAgICAg
Ly8gUGF1c2UgYW5kIG1vdmUgdG8gdHJpZ2dlciByZWxheW91dHMuCisgICAgICAgICAgICAgICAg
ZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oNDAsIDE5MCk7CisgICAgICAgICAgICAgICAgYXdhaXQg
VUlIZWxwZXIuZGVsYXlGb3IoMSk7CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VN
b3ZlVG8oNTAsIDE5MCk7CisgICAgICAgICAgICAgICAgYXdhaXQgVUlIZWxwZXIuZGVsYXlGb3Io
MSk7CisKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbyg4MCwgMTkwKTsK
KyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZVVwKCk7CisKKyAgICAgICAgICAgICAg
ICBhd2FpdCBVSUhlbHBlci53YWl0Rm9yVGFyZ2V0U2Nyb2xsQW5pbWF0aW9uVG9TZXR0bGUoaG9y
aXpvbnRhbENvbnRhaW5lcik7CisgICAgICAgICAgICAgICAgZXhwZWN0VHJ1ZShob3Jpem9udGFs
Q29udGFpbmVyLnNjcm9sbExlZnQgPT0gMjUwLCAiZHJhZ2dpbmcgdGhlIGhvcml6b250YWwgc2Ny
b2xsYmFyIHRodW1iIHNuYXBwZWQiKTsKKyAgICAgICAgICAgICAgICBleHBlY3RUcnVlKHNhd1pl
cm8gPT09IGZhbHNlLCAicmVsYXlvdXRzIHNob3VsZCBub3QgaGF2ZSBzbmFwcGVkIGJhY2siKTsK
KworICAgICAgICAgICAgICAgIHNhd1plcm8gPSBmYWxzZTsKKyAgICAgICAgICAgICAgICBldmVu
dFNlbmRlci5tb3VzZU1vdmVUbygxOTAsIDIyMCk7CisgICAgICAgICAgICAgICAgZXZlbnRTZW5k
ZXIubW91c2VEb3duKCk7CisKKyAgICAgICAgICAgICAgICAvLyBQYXVzZSBhbmQgbW92ZSB0byB0
cmlnZ2VyIHJlbGF5b3V0cy4KKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZU1vdmVU
bygxOTAsIDI1MCk7CisgICAgICAgICAgICAgICAgYXdhaXQgVUlIZWxwZXIuZGVsYXlGb3IoMSk7
CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oMTkwLCAyNTUpOworICAg
ICAgICAgICAgICAgIGF3YWl0IFVJSGVscGVyLmRlbGF5Rm9yKDEpOworCisgICAgICAgICAgICAg
ICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oMTkwLCAyNzApOworICAgICAgICAgICAgICAgIGV2
ZW50U2VuZGVyLm1vdXNlVXAoKTsKKyAgICAgICAgICAgICAgICBhd2FpdCBVSUhlbHBlci53YWl0
Rm9yVGFyZ2V0U2Nyb2xsQW5pbWF0aW9uVG9TZXR0bGUodmVydGljYWxDb250YWluZXIpOworICAg
ICAgICAgICAgICAgIGV4cGVjdFRydWUodmVydGljYWxDb250YWluZXIuc2Nyb2xsVG9wID09IDE4
MCwgImRyYWdnaW5nIHRoZSB2ZXJ0aWNhbCBzY3JvbGxiYXIgdGh1bWIgc25hcHBlZCIpOworICAg
ICAgICAgICAgICAgIGV4cGVjdFRydWUoc2F3WmVybyA9PT0gZmFsc2UsICJyZWxheW91dHMgc2hv
dWxkIG5vdCBoYXZlIHNuYXBwZWQgYmFjayIpOworICAgICAgICAgICAgfSBjYXRjaCAoZSkgewor
ICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGUpOworICAgICAgICAgICAgfSBmaW5hbGx5IHsK
KyAgICAgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAg
fQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJvbkxv
YWQoKTsiPgorICAgICAgICA8ZGl2IGlkPSJob3Jpem9udGFsLWNvbnRhaW5lciIgY2xhc3M9ImNv
bnRhaW5lciI+CisgICAgICAgICAgICA8ZGl2IGNsYXNzPSJob3Jpem9udGFsLWRyYXdlciI+Cisg
ICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmxvY2siIGlkPSJob3Jpem9udGFsLWJsb2NrIiBz
dHlsZT0iZmxvYXQ6IGxlZnQ7IGJhY2tncm91bmQ6ICM4MDQ3NUUiPjwvZGl2PgorICAgICAgICAg
ICAgICAgIDxkaXYgY2xhc3M9ImJsb2NrIiBzdHlsZT0iZmxvYXQ6IGxlZnQ7IGJhY2tncm91bmQ6
ICNDQzVBNzEiPjwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgIDwvZGl2PgorICAg
ICAgICA8ZGl2IGlkPSJ2ZXJ0aWNhbC1jb250YWluZXIiIGNsYXNzPSJjb250YWluZXIiPgorICAg
ICAgICAgICAgPGRpdiBjbGFzcz0iYmxvY2siIGlkPSJ2ZXJ0aWNhbC1ibG9jayIgc3R5bGU9ImJh
Y2tncm91bmQ6ICM4MDQ3NUUiPjwvZGl2PgorICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmxvY2si
IHN0eWxlPSJiYWNrZ3JvdW5kOiAjQ0M1QTcxIj48L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAg
ICAgIDxwIGlkPSJjb25zb2xlIj48L3A+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgIDwvc2Ny
aXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432774</attachid>
            <date>2021-07-02 03:25:13 -0700</date>
            <delta_ts>2021-07-05 01:32:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227478-20210702122511.patch</filename>
            <type>text/plain</type>
            <size>14813</size>
            <attacher name="Martin Robinson">mrobinson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5NTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzJlNjFkNGEwZGVjNjRh
MTgwNDk2YmFhZjBiY2UwZWE4ZGFiMDllNC4uMzYwMThmMmVjZTJmZmJlNmIxODY4NWQ4ZjUzMDll
NmM4MzFiMDMwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIxLTA3LTAyICBNYXJ0
aW4gUm9iaW5zb24gIDxtcm9iaW5zb25Ad2Via2l0Lm9yZz4KKworICAgICAgICBbY3NzLXNjcm9s
bC1zbmFwXSBUcmlnZ2VyaW5nIGEgbGF5b3V0IGR1cmluZyBzY3JvbGwgY2F1c2VzIGppdHRlcnkg
c2Nyb2xsaW5nIG9uIE1hYyB3aGVuIGRyYWdnaW5nIHRoZSBzY3JvbGxiYXIKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzQ3OAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gZHJhZ2dpbmcgdGhlIHNj
cm9sbGJhciB0aHVtYiwgd2FpdCB0byByZXNuYXAgYWZ0ZXIgbGF5b3V0IGZvciBhCisgICAgICAg
IGdpdmVuIGF4aXMgdW50aWwgdGhlIG1vdXNlIGJ1dHRvbiBpcyB1cCBvbiB0aGUgc2Nyb2xsYmFy
LiBUaGlzIHByZXZlbnRzCisgICAgICAgIHRoZSBsYXlvdXQgYW5kIHRoZSBzY3JvbGxiYXIgZnJv
bSBmaWdodGluZyB0byBzZXQgdGhlIHNjcm9sbCBwb3NpdGlvbgorICAgICAgICB3aGljaCBjYXVz
ZXMgc29tZSBwcmV0dHkgdGVycmlibGUgaml0dGVyIGluIHRoaXMgY2FzZS4KKworICAgICAgICBU
ZXN0OiBjc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdp
dGgtcmVsYXlvdXRzLmh0bWwKKworICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbEFuaW1hdGlvblNt
b290aC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRpb25TbW9vdGg6OnVwZGF0
ZVBlckF4aXNEYXRhKTogRml4IGFuIGlzc3VlIHdoZXJlIHRoZSBuZXcgcG9zaXRpb24KKyAgICAg
ICAgd2FzIGNhbGN1bGF0ZWQgaW5jb3JyZWN0bHkuIFRoaXMgZGlkIG5vdCBjYXVzZSB0aGUgYW5p
bWF0aW9uIHRvIGxhbmQgb24gdGhlIHdyb25nIHBsYWNlLAorICAgICAgICBidXQgZGlkIGNhdXNl
IGEgdmVyeSBqYW5reSBhbmltYXRpb24gcHJvZ3Jlc3Npb24gd2hlbiByZXRyaWdnZXJpbmcgYW5p
bWF0aW9ucyB0byB0aGUKKyAgICAgICAgc2FtZSBsb2NhdGlvbi4KKyAgICAgICAgKiBwbGF0Zm9y
bS9TY3JvbGxBbmltYXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6
cmV0YXJnZXRSdW5uaW5nQW5pbWF0aW9uKTogQWRkZWQgdGhpcyBoZWxwZXIsIHdoaWNoIHJldGFy
Z2V0cyBhCisgICAgICAgIGEgcnVubmluZyBhbmltYXRpb24gdG8gYWxsb3cgZm9yIGEgc21vb3Ro
IHRyYW5zaXRpb24gZHVyaW5nIHJlbGF5b3V0cy4KKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxB
bmltYXRvci5oOiBBZGRlZCBuZXcgbWV0aG9kIGRlZmluaXRpb24uCisgICAgICAgICogcGxhdGZv
cm0vU2Nyb2xsYWJsZUFyZWEuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYWJsZUFyZWE6
OnJlc25hcEFmdGVyTGF5b3V0KTogT25seSBzbmFwIGFmdGVyIGxheW91dCB3aGVuIHRoZSB1c2Vy
IGlzIG5vdAorICAgICAgICBjdXJyZW50bHkgaW50ZXJhY3Rpbmcgd2l0aCB0aGUgc2Nyb2xsYmFy
LiBPbmNlIHRoZSBzY3JvbGxiYXIgaXNuJ3QgYmVpbmcgaW50ZXJhY3RlZCB3aXRoLAorICAgICAg
ICBzbmFwcGluZyB3aWxsIG9jY3VyIGFscmVhZHkuIFdoZW4gdGhlcmUgaXMgYWxyZWFkeSBzb21l
IHNvcnQgb2YgYW5pbWF0aW9uIGluIHByb2dyZXNzLAorICAgICAgICBzbW9vdGhseSB0cmFuc2l0
aW9uIHRoYXQgYW5pbWF0aW9uIHRvIGxhbmQgb24gdGhlIG5ldyBwb3NpdGlvbiBpbnN0ZWFkIG9m
IHNuYXBwaW5nIHRoZXJlCisgICAgICAgIGltbWVkaWF0ZWx5LgorCiAyMDIxLTA3LTAyICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBNYWtlIExvY2FsU2FtcGxl
QnVmZmVyRGlzcGxheUxheWVyOjpyZXF1ZXN0Tm90aWZpY2F0aW9uV2hlblJlYWR5Rm9yVmlkZW9E
YXRhIGhvcCB0byBtYWluIHRocmVhZCBiZWZvcmUgaG9wcGluZyB0byBwcm9jZXNzaW5nIHRocmVh
ZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0aW9uU21v
b3RoLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdGlvblNtb290aC5j
cHAKaW5kZXggY2VmODY4ODk1YmRlM2U4MjgyM2Y1MGUxZTEzYzdjMDQ5NzY1MGJjNS4uYTBjYTRm
OTQzZWRiOTc1ZDcxZGExNTRkNjljZTE1MWU2ZmExZGQ4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0aW9uU21vb3RoLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRpb25TbW9vdGguY3BwCkBAIC0yOTMsMTMgKzI5Mywx
MyBAQCBib29sIFNjcm9sbEFuaW1hdGlvblNtb290aDo6dXBkYXRlUGVyQXhpc0RhdGEoUGVyQXhp
c0RhdGEmIGRhdGEsIFNjcm9sbEdyYW51bGFyaQogICAgICAgICBkYXRhLmRlc2lyZWRQb3NpdGlv
biA9IGRhdGEuY3VycmVudFBvc2l0aW9uOwogICAgICAgICBkYXRhLnN0YXJ0VGltZSA9IHsgfTsK
ICAgICB9Ci0gICAgZmxvYXQgbmV3UG9zaXRpb24gPSBkYXRhLmRlc2lyZWRQb3NpdGlvbiArIGRl
bHRhOwogCisgICAgZmxvYXQgbmV3UG9zaXRpb24gPSBkYXRhLmN1cnJlbnRQb3NpdGlvbiArIGRl
bHRhOwogICAgIG5ld1Bvc2l0aW9uID0gc3RkOjptYXgoc3RkOjptaW4obmV3UG9zaXRpb24sIG1h
eFNjcm9sbFBvc2l0aW9uKSwgbWluU2Nyb2xsUG9zaXRpb24pOwotCiAgICAgaWYgKG5ld1Bvc2l0
aW9uID09IGRhdGEuZGVzaXJlZFBvc2l0aW9uKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKKwog
ICAgIFNlY29uZHMgYW5pbWF0aW9uVGltZSwgcmVwZWF0TWluaW11bVN1c3RhaW5UaW1lLCBhdHRh
Y2tUaW1lLCByZWxlYXNlVGltZSwgbWF4aW11bUNvYXN0VGltZTsKICAgICBDdXJ2ZSBjb2FzdFRp
bWVDdXJ2ZTsKICAgICBnZXRBbmltYXRpb25QYXJhbWV0ZXJzRm9yR3JhbnVsYXJpdHkoZ3JhbnVs
YXJpdHksIGFuaW1hdGlvblRpbWUsIHJlcGVhdE1pbmltdW1TdXN0YWluVGltZSwgYXR0YWNrVGlt
ZSwgcmVsZWFzZVRpbWUsIGNvYXN0VGltZUN1cnZlLCBtYXhpbXVtQ29hc3RUaW1lKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9yLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9yLmNwcAppbmRleCA1ZGY1OTg3ZTg5ODEy
OWQzZDhhMmJlMzUxY2M3MjAwMDQ0NGQ1ZDY2Li41ZTgzZmRiYWUyN2ZiODk4N2Y4MDlhODU0OTc1
N2FjMDU4NjIzODBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxB
bmltYXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3Iu
Y3BwCkBAIC0xNDYsNiArMTQ2LDEzIEBAIGJvb2wgU2Nyb2xsQW5pbWF0b3I6OnNjcm9sbFRvUG9z
aXRpb25XaXRoQW5pbWF0aW9uKGNvbnN0IEZsb2F0UG9pbnQmIG5ld1Bvc2l0aW9uCiAgICAgcmV0
dXJuIHRydWU7CiB9CiAKK3ZvaWQgU2Nyb2xsQW5pbWF0b3I6OnJldGFyZ2V0UnVubmluZ0FuaW1h
dGlvbihjb25zdCBGbG9hdFBvaW50JiBuZXdQb3NpdGlvbikKK3sKKyAgICBBU1NFUlQoc2Nyb2xs
YWJsZUFyZWEoKS5jdXJyZW50U2Nyb2xsQmVoYXZpb3JTdGF0dXMoKSA9PSBTY3JvbGxCZWhhdmlv
clN0YXR1czo6SW5Ob25OYXRpdmVBbmltYXRpb24pOworICAgIEFTU0VSVChtX3Njcm9sbEFuaW1h
dGlvbi0+aXNBY3RpdmUoKSk7CisgICAgbV9zY3JvbGxBbmltYXRpb24tPnNjcm9sbChuZXdQb3Np
dGlvbik7Cit9CisKIEZsb2F0UG9pbnQgU2Nyb2xsQW5pbWF0b3I6Om9mZnNldEZyb21Qb3NpdGlv
bihjb25zdCBGbG9hdFBvaW50JiBwb3NpdGlvbikKIHsKICAgICByZXR1cm4gU2Nyb2xsYWJsZUFy
ZWE6OnNjcm9sbE9mZnNldEZyb21Qb3NpdGlvbihwb3NpdGlvbiwgdG9GbG9hdFNpemUobV9zY3Jv
bGxhYmxlQXJlYS5zY3JvbGxPcmlnaW4oKSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9s
bEFuaW1hdG9yLmgKaW5kZXggZmFjNzBkYjRlNzY0YTQzMWJlYmY4ZDViNjAwNzg4NmI5YzUyMDJl
Yi4uZDkyY2ZkYmRmYmIwNWYxZmE5MTM0ZWM2NTg3NWFmY2I4Y2UxZDc4YyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5oCkBAIC03Miw2ICs3Miw3IEBAIHB1YmxpYzoK
IAogICAgIGJvb2wgc2Nyb2xsVG9PZmZzZXRXaXRob3V0QW5pbWF0aW9uKGNvbnN0IEZsb2F0UG9p
bnQmLCBTY3JvbGxDbGFtcGluZyA9IFNjcm9sbENsYW1waW5nOjpDbGFtcGVkKTsKICAgICB2aXJ0
dWFsIGJvb2wgc2Nyb2xsVG9Qb3NpdGlvbldpdGhvdXRBbmltYXRpb24oY29uc3QgRmxvYXRQb2lu
dCYgcG9zaXRpb24sIFNjcm9sbENsYW1waW5nID0gU2Nyb2xsQ2xhbXBpbmc6OkNsYW1wZWQpOwor
ICAgIHZpcnR1YWwgdm9pZCByZXRhcmdldFJ1bm5pbmdBbmltYXRpb24oY29uc3QgRmxvYXRQb2lu
dCYpOwogCiAgICAgYm9vbCBzY3JvbGxUb09mZnNldFdpdGhBbmltYXRpb24oY29uc3QgRmxvYXRQ
b2ludCYpOwogICAgIHZpcnR1YWwgYm9vbCBzY3JvbGxUb1Bvc2l0aW9uV2l0aEFuaW1hdGlvbihj
b25zdCBGbG9hdFBvaW50Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9T
Y3JvbGxhYmxlQXJlYS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxhYmxlQXJl
YS5jcHAKaW5kZXggNjkyYWJjMGFmNDE0YTM0YjBjOGM5MzUwMTdmNDY0YTYyMzg5ZGRjNS4uMDJj
MGU2OWE0MGE0Y2RkMmM3YzBjMDM4MzRhMzBjZTBmYzkzYmE3YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL1Njcm9sbGFibGVBcmVhLmNwcApAQCAtNTI5LDE5ICs1MjksMjggQEAgdm9pZCBT
Y3JvbGxhYmxlQXJlYTo6cmVzbmFwQWZ0ZXJMYXlvdXQoKQogCiAgICAgYXV0byBjdXJyZW50T2Zm
c2V0ID0gc2Nyb2xsT2Zmc2V0KCk7CiAgICAgYXV0byBjb3JyZWN0ZWRPZmZzZXQgPSBjdXJyZW50
T2Zmc2V0OwotICAgIGNvbnN0IGF1dG8mIGhvcml6b250YWwgPSBpbmZvLT5ob3Jpem9udGFsU25h
cE9mZnNldHM7Ci0gICAgYXV0byBhY3RpdmVIb3Jpem9udGFsSW5kZXggPSBjdXJyZW50SG9yaXpv
bnRhbFNuYXBQb2ludEluZGV4KCk7Ci0gICAgaWYgKGFjdGl2ZUhvcml6b250YWxJbmRleCkKLSAg
ICAgICAgY29ycmVjdGVkT2Zmc2V0LnNldFgoaG9yaXpvbnRhbFsqYWN0aXZlSG9yaXpvbnRhbElu
ZGV4XS5vZmZzZXQudG9JbnQoKSk7CiAKLSAgICBjb25zdCBhdXRvJiB2ZXJ0aWNhbCA9IGluZm8t
PnZlcnRpY2FsU25hcE9mZnNldHM7Ci0gICAgYXV0byBhY3RpdmVWZXJ0aWNhbEluZGV4ID0gY3Vy
cmVudFZlcnRpY2FsU25hcFBvaW50SW5kZXgoKTsKLSAgICBpZiAoYWN0aXZlVmVydGljYWxJbmRl
eCkKLSAgICAgICAgY29ycmVjdGVkT2Zmc2V0LnNldFkodmVydGljYWxbKmFjdGl2ZVZlcnRpY2Fs
SW5kZXhdLm9mZnNldC50b0ludCgpKTsKKyAgICBpZiAoIWhvcml6b250YWxTY3JvbGxiYXIoKSB8
fCBob3Jpem9udGFsU2Nyb2xsYmFyKCktPnByZXNzZWRQYXJ0KCkgPT0gU2Nyb2xsYmFyUGFydDo6
Tm9QYXJ0KSB7CisgICAgICAgIGNvbnN0IGF1dG8mIGhvcml6b250YWwgPSBpbmZvLT5ob3Jpem9u
dGFsU25hcE9mZnNldHM7CisgICAgICAgIGF1dG8gYWN0aXZlSG9yaXpvbnRhbEluZGV4ID0gY3Vy
cmVudEhvcml6b250YWxTbmFwUG9pbnRJbmRleCgpOworICAgICAgICBpZiAoYWN0aXZlSG9yaXpv
bnRhbEluZGV4KQorICAgICAgICAgICAgY29ycmVjdGVkT2Zmc2V0LnNldFgoaG9yaXpvbnRhbFsq
YWN0aXZlSG9yaXpvbnRhbEluZGV4XS5vZmZzZXQudG9JbnQoKSk7CisgICAgfQorCisgICAgaWYg
KCF2ZXJ0aWNhbFNjcm9sbGJhcigpIHx8IHZlcnRpY2FsU2Nyb2xsYmFyKCktPnByZXNzZWRQYXJ0
KCkgPT0gU2Nyb2xsYmFyUGFydDo6Tm9QYXJ0KSB7CisgICAgICAgIGNvbnN0IGF1dG8mIHZlcnRp
Y2FsID0gaW5mby0+dmVydGljYWxTbmFwT2Zmc2V0czsKKyAgICAgICAgYXV0byBhY3RpdmVWZXJ0
aWNhbEluZGV4ID0gY3VycmVudFZlcnRpY2FsU25hcFBvaW50SW5kZXgoKTsKKyAgICAgICAgaWYg
KGFjdGl2ZVZlcnRpY2FsSW5kZXgpCisgICAgICAgICAgICBjb3JyZWN0ZWRPZmZzZXQuc2V0WSh2
ZXJ0aWNhbFsqYWN0aXZlVmVydGljYWxJbmRleF0ub2Zmc2V0LnRvSW50KCkpOworICAgIH0KIAog
ICAgIGlmIChjb3JyZWN0ZWRPZmZzZXQgIT0gY3VycmVudE9mZnNldCkgewogICAgICAgICBMT0df
V0lUSF9TVFJFQU0oU2Nyb2xsU25hcCwgc3RyZWFtIDw8ICIgYWRqdXN0aW5nIG9mZnNldCBmcm9t
ICIgPDwgY3VycmVudE9mZnNldCA8PCAiIHRvICIgPDwgY29ycmVjdGVkT2Zmc2V0KTsKLSAgICAg
ICAgc2Nyb2xsVG9PZmZzZXRXaXRob3V0QW5pbWF0aW9uKGNvcnJlY3RlZE9mZnNldCk7CisgICAg
ICAgIGF1dG8gcG9zaXRpb24gPSBzY3JvbGxQb3NpdGlvbkZyb21PZmZzZXQoY29ycmVjdGVkT2Zm
c2V0KTsKKyAgICAgICAgaWYgKGN1cnJlbnRTY3JvbGxCZWhhdmlvclN0YXR1cygpID09IFNjcm9s
bEJlaGF2aW9yU3RhdHVzOjpOb3RJbkFuaW1hdGlvbikKKyAgICAgICAgICAgIHNjcm9sbFRvT2Zm
c2V0V2l0aG91dEFuaW1hdGlvbihjb3JyZWN0ZWRPZmZzZXQpOworICAgICAgICBlbHNlCisgICAg
ICAgICAgICBzY3JvbGxBbmltYXRvci0+cmV0YXJnZXRSdW5uaW5nQW5pbWF0aW9uKHBvc2l0aW9u
KTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2ODYwYzIzODQ0NjJhNDJkY2M4ZGI2YjZkNDc5NGJmYTI0
YjVkOWMyLi42Njg1YzI1ZjdlMzU1NzUxN2I0NjI3ZGFhNmNiMjI5OTI1Y2EwYTdhIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMjEtMDctMDIgIE1hcnRpbiBSb2JpbnNvbiAgPG1yb2JpbnNvbkB3
ZWJraXQub3JnPgorCisgICAgICAgIFtjc3Mtc2Nyb2xsLXNuYXBdIFRyaWdnZXJpbmcgYSBsYXlv
dXQgZHVyaW5nIHNjcm9sbCBjYXVzZXMgaml0dGVyeSBzY3JvbGxpbmcgb24gTWFjIHdoZW4gZHJh
Z2dpbmcgdGhlIHNjcm9sbGJhcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjI3NDc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBjc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFy
LXRodW1iLXdpdGgtcmVsYXlvdXRzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogY3Nz
My9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1kcmFnLXNjcm9sbGJhci10aHVtYi13aXRoLXJlbGF5
b3V0cy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9u
czogU2tpcCB0aGlzIHRlc3Qgb24gaU9TIHNpbmNlIGl0IHVzZXMgYSBzY3JvbGxiYXIgdGh1bWIg
ZHJhZy4KKwogMjAyMS0wNy0wMiAgWGFiaWVyIFJvZHJpZ3VleiBDYWx2YXIgIDxjYWx2YXJpc0Bp
Z2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdIG1lZGlhL2V2ZW50LWF0dHJpYnV0ZXMuaHRtbCBm
YWlscyBpZiBtaXhlciBpcyBub3QgYXQgMTAwJQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1kcmFnLXNjcm9sbGJhci10aHVtYi13aXRoLXJlbGF5
b3V0cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1z
bmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtcmVsYXlvdXRzLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4xYWE2MDUyYWUyODdiNGZiOTY1MjNhYjYzMjg1OTVmZDI2NmViMTdlCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1kcmFn
LXNjcm9sbGJhci10aHVtYi13aXRoLXJlbGF5b3V0cy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwx
MCBAQAorMjUwCisxODAKK1BBU1MgZHJhZ2dpbmcgdGhlIGhvcml6b250YWwgc2Nyb2xsYmFyIHRo
dW1iIHNuYXBwZWQKK1BBU1MgcmVsYXlvdXRzIHNob3VsZCBub3QgaGF2ZSBzbmFwcGVkIGJhY2sK
K1BBU1MgZHJhZ2dpbmcgdGhlIHZlcnRpY2FsIHNjcm9sbGJhciB0aHVtYiBzbmFwcGVkCitQQVNT
IHJlbGF5b3V0cyBzaG91bGQgbm90IGhhdmUgc25hcHBlZCBiYWNrCitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1kcmFnLXNjcm9sbGJhci10aHVtYi13aXRo
LXJlbGF5b3V0cy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9zY3JvbGwtc25hcC9zY3JvbGwtc25h
cC1kcmFnLXNjcm9sbGJhci10aHVtYi13aXRoLXJlbGF5b3V0cy5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRm
Y2VlNzhiNDE0MGFiMzc2MWViOTliZmQyZDk5NTY0Y2VlOTVmNGMKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFy
LXRodW1iLXdpdGgtcmVsYXlvdXRzLmh0bWwKQEAgLTAsMCArMSwxMjggQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5EcmFnZ2luZyB0aGUgc2Ny
b2xsYmFyIHRodW1iIHNob3VsZCB0cmlnZ2VyIHNjcm9sbCBzbmFwcGluZzwvdGl0bGU+CisgICAg
ICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CisgICAgICAgICAgICAvKiBVc2UgY3VzdG9taXpl
ZCBzY3JvbGxiYXIgdG8gYXZvaWQgcGxhdGZvcm0gZGlmZmVyZW5jZXMuICovCisgICAgICAgICAg
ICA6Oi13ZWJraXQtc2Nyb2xsYmFyIHsKKyAgICAgICAgICAgICAgICB3aWR0aDogMjBweDsKKyAg
ICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7CisgICAgICAgICAgICB9CisgICAgICAgICAgICA6
Oi13ZWJraXQtc2Nyb2xsYmFyLWJ1dHRvbiB7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4
OworICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4OworICAgICAgICAgICAgICAgIGJhY2tncm91
bmQtY29sb3I6IGJsdWU7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIDo6LXdlYmtpdC1z
Y3JvbGxiYXItdHJhY2stcGllY2UgIHsKKyAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiBncmF5OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFy
LXRodW1iIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7CisgICAgICAgICAgICAgICAg
d2lkdGg6IDIwcHg7CisgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7Cisg
ICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGJvZHkgeworICAgICAgICAgICAgICAgIG1hcmdp
bjogMHB4OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuY29udGFpbmVyIHsKKyAgICAg
ICAgICAgICAgICBoZWlnaHQ6IDIwMHB4OworICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDsK
KyAgICAgICAgICAgICAgICBvdmVyZmxvdzogYXV0bzsKKyAgICAgICAgICAgICAgICBzY3JvbGwt
c25hcC10eXBlOiBib3RoIG1hbmRhdG9yeTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
Lmhvcml6b250YWwtZHJhd2VyIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CisgICAg
ICAgICAgICAgICAgd2lkdGg6IDUwMHB4OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAu
YmxvY2sgeworICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTsKKyAgICAgICAgICAgICAgICB3
aWR0aDogMjUwcHg7CisgICAgICAgICAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IHN0YXJ0Owor
ICAgICAgICAgICAgfQorICAgICAgICA8L3N0eWxlPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4v
Li4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0i
Li4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+
CisgICAgICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKworICAgICAgICBhc3luYyBm
dW5jdGlvbiBvbkxvYWQoKQorICAgICAgICB7CisgICAgICAgICAgICBsZXQgc2F3WmVybyA9IGZh
bHNlOworICAgICAgICAgICAgbGV0IGhvcml6b250YWxDb250YWluZXIgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiaG9yaXpvbnRhbC1jb250YWluZXIiKTsKKyAgICAgICAgICAgIGhvcml6b250
YWxDb250YWluZXIuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgKCkgPT4geworICAgICAgICAg
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdob3Jpem9udGFsLWJsb2NrJykuaW5uZXJU
ZXh0ID0gaG9yaXpvbnRhbENvbnRhaW5lci5zY3JvbGxMZWZ0OworICAgICAgICAgICAgICAgIHNh
d1plcm8gfHw9IGhvcml6b250YWxDb250YWluZXIuc2Nyb2xsTGVmdCA9PSAwOworICAgICAgICAg
ICAgfSkKKworICAgICAgICAgICAgbGV0IHZlcnRpY2FsQ29udGFpbmVyID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInZlcnRpY2FsLWNvbnRhaW5lciIpOworICAgICAgICAgICAgdmVydGljYWxD
b250YWluZXIuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgKCkgPT4geworICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd2ZXJ0aWNhbC1ibG9jaycpLmlubmVyVGV4dCA9
IHZlcnRpY2FsQ29udGFpbmVyLnNjcm9sbFRvcDsKKyAgICAgICAgICAgICAgICBzYXdaZXJvIHx8
PSB2ZXJ0aWNhbENvbnRhaW5lci5zY3JvbGxUb3AgPT0gMDsKKyAgICAgICAgICAgIH0pCisKKyAg
ICAgICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIgPT0gdW5kZWZpbmVkKSB7CisgICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NvbnNvbGUnKS5pbm5lclRleHQgPSAi
RHJhZ2dpbmcgdGhlIHNjcm9sbGJhciB0aHVtYiBzaG91bGQgdHJpZ2dlciBzY3JvbGwgc25hcHBp
bmcuIjsKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisgICAgICAgICAg
ICB0cnkgeworICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKDIwLCAxOTAp
OworICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlRG93bigpOworCisgICAgICAgICAg
ICAgICAgLy8gUGF1c2UgYW5kIG1vdmUgdG8gdHJpZ2dlciByZWxheW91dHMuCisgICAgICAgICAg
ICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oNDAsIDE5MCk7CisgICAgICAgICAgICAgICAg
YXdhaXQgVUlIZWxwZXIuZGVsYXlGb3IoMSk7CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIu
bW91c2VNb3ZlVG8oNTAsIDE5MCk7CisgICAgICAgICAgICAgICAgYXdhaXQgVUlIZWxwZXIuZGVs
YXlGb3IoMSk7CisKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbyg4MCwg
MTkwKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZVVwKCk7CisKKyAgICAgICAg
ICAgICAgICBhd2FpdCBVSUhlbHBlci53YWl0Rm9yVGFyZ2V0U2Nyb2xsQW5pbWF0aW9uVG9TZXR0
bGUoaG9yaXpvbnRhbENvbnRhaW5lcik7CisgICAgICAgICAgICAgICAgZXhwZWN0VHJ1ZShob3Jp
em9udGFsQ29udGFpbmVyLnNjcm9sbExlZnQgPT0gMjUwLCAiZHJhZ2dpbmcgdGhlIGhvcml6b250
YWwgc2Nyb2xsYmFyIHRodW1iIHNuYXBwZWQiKTsKKyAgICAgICAgICAgICAgICBleHBlY3RUcnVl
KHNhd1plcm8gPT09IGZhbHNlLCAicmVsYXlvdXRzIHNob3VsZCBub3QgaGF2ZSBzbmFwcGVkIGJh
Y2siKTsKKworICAgICAgICAgICAgICAgIHNhd1plcm8gPSBmYWxzZTsKKyAgICAgICAgICAgICAg
ICBldmVudFNlbmRlci5tb3VzZU1vdmVUbygxOTAsIDIyMCk7CisgICAgICAgICAgICAgICAgZXZl
bnRTZW5kZXIubW91c2VEb3duKCk7CisKKyAgICAgICAgICAgICAgICAvLyBQYXVzZSBhbmQgbW92
ZSB0byB0cmlnZ2VyIHJlbGF5b3V0cy4KKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3Vz
ZU1vdmVUbygxOTAsIDI1MCk7CisgICAgICAgICAgICAgICAgYXdhaXQgVUlIZWxwZXIuZGVsYXlG
b3IoMSk7CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oMTkwLCAyNTUp
OworICAgICAgICAgICAgICAgIGF3YWl0IFVJSGVscGVyLmRlbGF5Rm9yKDEpOworCisgICAgICAg
ICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oMTkwLCAyNzApOworICAgICAgICAgICAg
ICAgIGV2ZW50U2VuZGVyLm1vdXNlVXAoKTsKKyAgICAgICAgICAgICAgICBhd2FpdCBVSUhlbHBl
ci53YWl0Rm9yVGFyZ2V0U2Nyb2xsQW5pbWF0aW9uVG9TZXR0bGUodmVydGljYWxDb250YWluZXIp
OworICAgICAgICAgICAgICAgIGV4cGVjdFRydWUodmVydGljYWxDb250YWluZXIuc2Nyb2xsVG9w
ID09IDE4MCwgImRyYWdnaW5nIHRoZSB2ZXJ0aWNhbCBzY3JvbGxiYXIgdGh1bWIgc25hcHBlZCIp
OworICAgICAgICAgICAgICAgIGV4cGVjdFRydWUoc2F3WmVybyA9PT0gZmFsc2UsICJyZWxheW91
dHMgc2hvdWxkIG5vdCBoYXZlIHNuYXBwZWQgYmFjayIpOworICAgICAgICAgICAgfSBjYXRjaCAo
ZSkgeworICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGUpOworICAgICAgICAgICAgfSBmaW5h
bGx5IHsKKyAgICAgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2Fk
PSJvbkxvYWQoKTsiPgorICAgICAgICA8ZGl2IGlkPSJob3Jpem9udGFsLWNvbnRhaW5lciIgY2xh
c3M9ImNvbnRhaW5lciI+CisgICAgICAgICAgICA8ZGl2IGNsYXNzPSJob3Jpem9udGFsLWRyYXdl
ciI+CisgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmxvY2siIGlkPSJob3Jpem9udGFsLWJs
b2NrIiBzdHlsZT0iZmxvYXQ6IGxlZnQ7IGJhY2tncm91bmQ6ICM4MDQ3NUUiPjwvZGl2PgorICAg
ICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJsb2NrIiBzdHlsZT0iZmxvYXQ6IGxlZnQ7IGJhY2tn
cm91bmQ6ICNDQzVBNzEiPjwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgIDwvZGl2
PgorICAgICAgICA8ZGl2IGlkPSJ2ZXJ0aWNhbC1jb250YWluZXIiIGNsYXNzPSJjb250YWluZXIi
PgorICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmxvY2siIGlkPSJ2ZXJ0aWNhbC1ibG9jayIgc3R5
bGU9ImJhY2tncm91bmQ6ICM4MDQ3NUUiPjwvZGl2PgorICAgICAgICAgICAgPGRpdiBjbGFzcz0i
YmxvY2siIHN0eWxlPSJiYWNrZ3JvdW5kOiAjQ0M1QTcxIj48L2Rpdj4KKyAgICAgICAgPC9kaXY+
CisgICAgICAgIDxwIGlkPSJjb25zb2xlIj48L3A+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAg
IDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9z
L1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggNzIxMzczMDQwNGY2YjgwN2U5YTczZjIzZWM3YmE2NjE4
ZmFhNWE2My4uYTVlYzY3YjM2MmVkMjU2MDVjYzUyOTQ0OTM3N2YyNTk4YzE4Mzc5NyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIyODgsNiArMjI4OCw3
IEBAIGZhc3QvZG9tL1dpbmRvdy9jaGlsZC13aW5kb3ctZm9jdXMuaHRtbAogIyBpT1MgZG9lcyBu
b3QgYWxsb3cgeW91IHRvIHNjcm9sbCBieSBkcmFnZ2luZyB0aGUgc2Nyb2xsYmFyIHRodW1iLgog
d2Via2l0Lm9yZy9iLzE1NzIwMSBmYXN0L3Njcm9sbGluZy9ydGwtZHJhZy12ZXJ0aWNhbC1zY3Jv
bGxlci5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTU3MjAxIGNzczMvc2Nyb2xsLXNu
YXAvc2Nyb2xsLXNuYXAtZHJhZy1zY3JvbGxiYXItdGh1bWIuaHRtbCBbIEZhaWx1cmUgXQord2Vi
a2l0Lm9yZy9iLzE1NzIwMSBjc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xs
YmFyLXRodW1iLXdpdGgtcmVsYXlvdXRzLmh0bWwgWyBGYWlsdXJlIF0KIAogIyBEdW1wUmVuZGVy
VHJlZSBkb2Vzbid0IHN1cHBvcnQgbG9nZ2luZyBjYWxscyB0byBydW5PcGVuUGFuZWwgYW5kIGlP
UydzIFdlYktpdFRlc3RSdW5uZXIgZG9lc24ndCBzdXBwb3J0IGV2ZW50U2VuZGVyLm1vdXNlRG93
bi4KIGZhc3QvZm9ybXMvZmlsZS9vcGVuLWZpbGUtcGFuZWwuaHRtbCBbIFNraXAgXQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432874</attachid>
            <date>2021-07-05 01:32:15 -0700</date>
            <delta_ts>2021-07-05 02:21:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227478-20210705103213.patch</filename>
            <type>text/plain</type>
            <size>14766</size>
            <attacher name="Martin Robinson">mrobinson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5NTYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTVhMTFiOTkwZjRjMmU0
YzYxMDc1ZWQwMzgyZTBjMjc2MWIxNTFlNi4uN2E3MGJhZTVmYzA5ZGZhZmVkYTEyZmI4Yjk1ZDdi
M2RhNDdlNDIwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIxLTA3LTA1ICBNYXJ0
aW4gUm9iaW5zb24gIDxtcm9iaW5zb25Ad2Via2l0Lm9yZz4KKworICAgICAgICBbY3NzLXNjcm9s
bC1zbmFwXSBUcmlnZ2VyaW5nIGEgbGF5b3V0IGR1cmluZyBzY3JvbGwgY2F1c2VzIGppdHRlcnkg
c2Nyb2xsaW5nIG9uIE1hYyB3aGVuIGRyYWdnaW5nIHRoZSBzY3JvbGxiYXIKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzQ3OAorCisgICAgICAgIFJl
dmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAgICBXaGVuIGRyYWdnaW5nIHRoZSBzY3Jv
bGxiYXIgdGh1bWIsIHdhaXQgdG8gcmVzbmFwIGFmdGVyIGxheW91dCBmb3IgYQorICAgICAgICBn
aXZlbiBheGlzIHVudGlsIHRoZSBtb3VzZSBidXR0b24gaXMgdXAgb24gdGhlIHNjcm9sbGJhci4g
VGhpcyBwcmV2ZW50cworICAgICAgICB0aGUgbGF5b3V0IGFuZCB0aGUgc2Nyb2xsYmFyIGZyb20g
ZmlnaHRpbmcgdG8gc2V0IHRoZSBzY3JvbGwgcG9zaXRpb24KKyAgICAgICAgd2hpY2ggY2F1c2Vz
IHNvbWUgcHJldHR5IHRlcnJpYmxlIGppdHRlciBpbiB0aGlzIGNhc2UuCisKKyAgICAgICAgVGVz
dDogY3NzMy9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1kcmFnLXNjcm9sbGJhci10aHVtYi13aXRo
LXJlbGF5b3V0cy5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxBbmltYXRpb25TbW9v
dGguY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0aW9uU21vb3RoOjp1cGRhdGVQ
ZXJBeGlzRGF0YSk6IEZpeCBhbiBpc3N1ZSB3aGVyZSB0aGUgbmV3IHBvc2l0aW9uCisgICAgICAg
IHdhcyBjYWxjdWxhdGVkIGluY29ycmVjdGx5LiBUaGlzIGRpZCBub3QgY2F1c2UgdGhlIGFuaW1h
dGlvbiB0byBsYW5kIG9uIHRoZSB3cm9uZyBwbGFjZSwKKyAgICAgICAgYnV0IGRpZCBjYXVzZSBh
IHZlcnkgamFua3kgYW5pbWF0aW9uIHByb2dyZXNzaW9uIHdoZW4gcmV0cmlnZ2VyaW5nIGFuaW1h
dGlvbnMgdG8gdGhlCisgICAgICAgIHNhbWUgbG9jYXRpb24uCisgICAgICAgICogcGxhdGZvcm0v
U2Nyb2xsQW5pbWF0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnJl
dGFyZ2V0UnVubmluZ0FuaW1hdGlvbik6IEFkZGVkIHRoaXMgaGVscGVyLCB3aGljaCByZXRhcmdl
dHMgYQorICAgICAgICBhIHJ1bm5pbmcgYW5pbWF0aW9uIHRvIGFsbG93IGZvciBhIHNtb290aCB0
cmFuc2l0aW9uIGR1cmluZyByZWxheW91dHMuCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsQW5p
bWF0b3IuaDogQWRkZWQgbmV3IG1ldGhvZCBkZWZpbml0aW9uLgorICAgICAgICAqIHBsYXRmb3Jt
L1Njcm9sbGFibGVBcmVhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGFibGVBcmVhOjpy
ZXNuYXBBZnRlckxheW91dCk6IE9ubHkgc25hcCBhZnRlciBsYXlvdXQgd2hlbiB0aGUgdXNlciBp
cyBub3QKKyAgICAgICAgY3VycmVudGx5IGludGVyYWN0aW5nIHdpdGggdGhlIHNjcm9sbGJhci4g
T25jZSB0aGUgc2Nyb2xsYmFyIGlzbid0IGJlaW5nIGludGVyYWN0ZWQgd2l0aCwKKyAgICAgICAg
c25hcHBpbmcgd2lsbCBvY2N1ciBhbHJlYWR5LiBXaGVuIHRoZXJlIGlzIGFscmVhZHkgc29tZSBz
b3J0IG9mIGFuaW1hdGlvbiBpbiBwcm9ncmVzcywKKyAgICAgICAgc21vb3RobHkgdHJhbnNpdGlv
biB0aGF0IGFuaW1hdGlvbiB0byBsYW5kIG9uIHRoZSBuZXcgcG9zaXRpb24gaW5zdGVhZCBvZiBz
bmFwcGluZyB0aGVyZQorICAgICAgICBpbW1lZGlhdGVseS4KKwogMjAyMS0wNy0wNCAgQWxleGV5
IFNodmF5a2EgIDxzaHZhaWthbGVzaEBnbWFpbC5jb20+CiAKICAgICAgICAgW1dlYklETF0gU2lt
cGxpZnkgZ2VuZXJhdGlvbiBvZiBydW50aW1lIGNvbmRpdGlvbmFsbHkgcmVhZC13cml0ZSBhdHRy
aWJ1dGVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRp
b25TbW9vdGguY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0aW9uU21v
b3RoLmNwcAppbmRleCBjZWY4Njg4OTViZGUzZTgyODIzZjUwZTFlMTNjN2MwNDk3NjUwYmM1Li5h
MGNhNGY5NDNlZGI5NzVkNzFkYTE1NGQ2OWNlMTUxZTZmYTFkZDg5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRpb25TbW9vdGguY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdGlvblNtb290aC5jcHAKQEAgLTI5MywxMyAr
MjkzLDEzIEBAIGJvb2wgU2Nyb2xsQW5pbWF0aW9uU21vb3RoOjp1cGRhdGVQZXJBeGlzRGF0YShQ
ZXJBeGlzRGF0YSYgZGF0YSwgU2Nyb2xsR3JhbnVsYXJpCiAgICAgICAgIGRhdGEuZGVzaXJlZFBv
c2l0aW9uID0gZGF0YS5jdXJyZW50UG9zaXRpb247CiAgICAgICAgIGRhdGEuc3RhcnRUaW1lID0g
eyB9OwogICAgIH0KLSAgICBmbG9hdCBuZXdQb3NpdGlvbiA9IGRhdGEuZGVzaXJlZFBvc2l0aW9u
ICsgZGVsdGE7CiAKKyAgICBmbG9hdCBuZXdQb3NpdGlvbiA9IGRhdGEuY3VycmVudFBvc2l0aW9u
ICsgZGVsdGE7CiAgICAgbmV3UG9zaXRpb24gPSBzdGQ6Om1heChzdGQ6Om1pbihuZXdQb3NpdGlv
biwgbWF4U2Nyb2xsUG9zaXRpb24pLCBtaW5TY3JvbGxQb3NpdGlvbik7Ci0KICAgICBpZiAobmV3
UG9zaXRpb24gPT0gZGF0YS5kZXNpcmVkUG9zaXRpb24pCiAgICAgICAgIHJldHVybiBmYWxzZTsK
IAorCiAgICAgU2Vjb25kcyBhbmltYXRpb25UaW1lLCByZXBlYXRNaW5pbXVtU3VzdGFpblRpbWUs
IGF0dGFja1RpbWUsIHJlbGVhc2VUaW1lLCBtYXhpbXVtQ29hc3RUaW1lOwogICAgIEN1cnZlIGNv
YXN0VGltZUN1cnZlOwogICAgIGdldEFuaW1hdGlvblBhcmFtZXRlcnNGb3JHcmFudWxhcml0eShn
cmFudWxhcml0eSwgYW5pbWF0aW9uVGltZSwgcmVwZWF0TWluaW11bVN1c3RhaW5UaW1lLCBhdHRh
Y2tUaW1lLCByZWxlYXNlVGltZSwgY29hc3RUaW1lQ3VydmUsIG1heGltdW1Db2FzdFRpbWUpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCmluZGV4IDVkZjU5ODdl
ODk4MTI5ZDNkOGEyYmUzNTFjYzcyMDAwNDQ0ZDVkNjYuLjVlODNmZGJhZTI3ZmI4OTg3ZjgwOWE4
NTQ5NzU3YWMwNTg2MjM4MGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Nj
cm9sbEFuaW1hdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmlt
YXRvci5jcHAKQEAgLTE0Niw2ICsxNDYsMTMgQEAgYm9vbCBTY3JvbGxBbmltYXRvcjo6c2Nyb2xs
VG9Qb3NpdGlvbldpdGhBbmltYXRpb24oY29uc3QgRmxvYXRQb2ludCYgbmV3UG9zaXRpb24KICAg
ICByZXR1cm4gdHJ1ZTsKIH0KIAordm9pZCBTY3JvbGxBbmltYXRvcjo6cmV0YXJnZXRSdW5uaW5n
QW5pbWF0aW9uKGNvbnN0IEZsb2F0UG9pbnQmIG5ld1Bvc2l0aW9uKQoreworICAgIEFTU0VSVChz
Y3JvbGxhYmxlQXJlYSgpLmN1cnJlbnRTY3JvbGxCZWhhdmlvclN0YXR1cygpID09IFNjcm9sbEJl
aGF2aW9yU3RhdHVzOjpJbk5vbk5hdGl2ZUFuaW1hdGlvbik7CisgICAgQVNTRVJUKG1fc2Nyb2xs
QW5pbWF0aW9uLT5pc0FjdGl2ZSgpKTsKKyAgICBtX3Njcm9sbEFuaW1hdGlvbi0+c2Nyb2xsKG5l
d1Bvc2l0aW9uKTsKK30KKwogRmxvYXRQb2ludCBTY3JvbGxBbmltYXRvcjo6b2Zmc2V0RnJvbVBv
c2l0aW9uKGNvbnN0IEZsb2F0UG9pbnQmIHBvc2l0aW9uKQogewogICAgIHJldHVybiBTY3JvbGxh
YmxlQXJlYTo6c2Nyb2xsT2Zmc2V0RnJvbVBvc2l0aW9uKHBvc2l0aW9uLCB0b0Zsb2F0U2l6ZSht
X3Njcm9sbGFibGVBcmVhLnNjcm9sbE9yaWdpbigpKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
U2Nyb2xsQW5pbWF0b3IuaAppbmRleCBmYWM3MGRiNGU3NjRhNDMxYmViZjhkNWI2MDA3ODg2Yjlj
NTIwMmViLi5kOTJjZmRiZGZiYjA1ZjFmYTkxMzRlYzY1ODc1YWZjYjhjZTFkNzhjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9yLmgKQEAgLTcyLDYgKzcyLDcgQEAgcHVi
bGljOgogCiAgICAgYm9vbCBzY3JvbGxUb09mZnNldFdpdGhvdXRBbmltYXRpb24oY29uc3QgRmxv
YXRQb2ludCYsIFNjcm9sbENsYW1waW5nID0gU2Nyb2xsQ2xhbXBpbmc6OkNsYW1wZWQpOwogICAg
IHZpcnR1YWwgYm9vbCBzY3JvbGxUb1Bvc2l0aW9uV2l0aG91dEFuaW1hdGlvbihjb25zdCBGbG9h
dFBvaW50JiBwb3NpdGlvbiwgU2Nyb2xsQ2xhbXBpbmcgPSBTY3JvbGxDbGFtcGluZzo6Q2xhbXBl
ZCk7CisgICAgdmlydHVhbCB2b2lkIHJldGFyZ2V0UnVubmluZ0FuaW1hdGlvbihjb25zdCBGbG9h
dFBvaW50Jik7CiAKICAgICBib29sIHNjcm9sbFRvT2Zmc2V0V2l0aEFuaW1hdGlvbihjb25zdCBG
bG9hdFBvaW50Jik7CiAgICAgdmlydHVhbCBib29sIHNjcm9sbFRvUG9zaXRpb25XaXRoQW5pbWF0
aW9uKGNvbnN0IEZsb2F0UG9pbnQmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbGFibGVBcmVhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGFi
bGVBcmVhLmNwcAppbmRleCA2OTJhYmMwYWY0MTRhMzRiMGM4YzkzNTAxN2Y0NjRhNjIzODlkZGM1
Li4wMmMwZTY5YTQwYTRjZGQyYzdjMGMwMzgzNGEzMGNlMGZjOTNiYTdiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxhYmxlQXJlYS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuY3BwCkBAIC01MjksMTkgKzUyOSwyOCBAQCB2
b2lkIFNjcm9sbGFibGVBcmVhOjpyZXNuYXBBZnRlckxheW91dCgpCiAKICAgICBhdXRvIGN1cnJl
bnRPZmZzZXQgPSBzY3JvbGxPZmZzZXQoKTsKICAgICBhdXRvIGNvcnJlY3RlZE9mZnNldCA9IGN1
cnJlbnRPZmZzZXQ7Ci0gICAgY29uc3QgYXV0byYgaG9yaXpvbnRhbCA9IGluZm8tPmhvcml6b250
YWxTbmFwT2Zmc2V0czsKLSAgICBhdXRvIGFjdGl2ZUhvcml6b250YWxJbmRleCA9IGN1cnJlbnRI
b3Jpem9udGFsU25hcFBvaW50SW5kZXgoKTsKLSAgICBpZiAoYWN0aXZlSG9yaXpvbnRhbEluZGV4
KQotICAgICAgICBjb3JyZWN0ZWRPZmZzZXQuc2V0WChob3Jpem9udGFsWyphY3RpdmVIb3Jpem9u
dGFsSW5kZXhdLm9mZnNldC50b0ludCgpKTsKIAotICAgIGNvbnN0IGF1dG8mIHZlcnRpY2FsID0g
aW5mby0+dmVydGljYWxTbmFwT2Zmc2V0czsKLSAgICBhdXRvIGFjdGl2ZVZlcnRpY2FsSW5kZXgg
PSBjdXJyZW50VmVydGljYWxTbmFwUG9pbnRJbmRleCgpOwotICAgIGlmIChhY3RpdmVWZXJ0aWNh
bEluZGV4KQotICAgICAgICBjb3JyZWN0ZWRPZmZzZXQuc2V0WSh2ZXJ0aWNhbFsqYWN0aXZlVmVy
dGljYWxJbmRleF0ub2Zmc2V0LnRvSW50KCkpOworICAgIGlmICghaG9yaXpvbnRhbFNjcm9sbGJh
cigpIHx8IGhvcml6b250YWxTY3JvbGxiYXIoKS0+cHJlc3NlZFBhcnQoKSA9PSBTY3JvbGxiYXJQ
YXJ0OjpOb1BhcnQpIHsKKyAgICAgICAgY29uc3QgYXV0byYgaG9yaXpvbnRhbCA9IGluZm8tPmhv
cml6b250YWxTbmFwT2Zmc2V0czsKKyAgICAgICAgYXV0byBhY3RpdmVIb3Jpem9udGFsSW5kZXgg
PSBjdXJyZW50SG9yaXpvbnRhbFNuYXBQb2ludEluZGV4KCk7CisgICAgICAgIGlmIChhY3RpdmVI
b3Jpem9udGFsSW5kZXgpCisgICAgICAgICAgICBjb3JyZWN0ZWRPZmZzZXQuc2V0WChob3Jpem9u
dGFsWyphY3RpdmVIb3Jpem9udGFsSW5kZXhdLm9mZnNldC50b0ludCgpKTsKKyAgICB9CisKKyAg
ICBpZiAoIXZlcnRpY2FsU2Nyb2xsYmFyKCkgfHwgdmVydGljYWxTY3JvbGxiYXIoKS0+cHJlc3Nl
ZFBhcnQoKSA9PSBTY3JvbGxiYXJQYXJ0OjpOb1BhcnQpIHsKKyAgICAgICAgY29uc3QgYXV0byYg
dmVydGljYWwgPSBpbmZvLT52ZXJ0aWNhbFNuYXBPZmZzZXRzOworICAgICAgICBhdXRvIGFjdGl2
ZVZlcnRpY2FsSW5kZXggPSBjdXJyZW50VmVydGljYWxTbmFwUG9pbnRJbmRleCgpOworICAgICAg
ICBpZiAoYWN0aXZlVmVydGljYWxJbmRleCkKKyAgICAgICAgICAgIGNvcnJlY3RlZE9mZnNldC5z
ZXRZKHZlcnRpY2FsWyphY3RpdmVWZXJ0aWNhbEluZGV4XS5vZmZzZXQudG9JbnQoKSk7CisgICAg
fQogCiAgICAgaWYgKGNvcnJlY3RlZE9mZnNldCAhPSBjdXJyZW50T2Zmc2V0KSB7CiAgICAgICAg
IExPR19XSVRIX1NUUkVBTShTY3JvbGxTbmFwLCBzdHJlYW0gPDwgIiBhZGp1c3Rpbmcgb2Zmc2V0
IGZyb20gIiA8PCBjdXJyZW50T2Zmc2V0IDw8ICIgdG8gIiA8PCBjb3JyZWN0ZWRPZmZzZXQpOwot
ICAgICAgICBzY3JvbGxUb09mZnNldFdpdGhvdXRBbmltYXRpb24oY29ycmVjdGVkT2Zmc2V0KTsK
KyAgICAgICAgYXV0byBwb3NpdGlvbiA9IHNjcm9sbFBvc2l0aW9uRnJvbU9mZnNldChjb3JyZWN0
ZWRPZmZzZXQpOworICAgICAgICBpZiAoY3VycmVudFNjcm9sbEJlaGF2aW9yU3RhdHVzKCkgPT0g
U2Nyb2xsQmVoYXZpb3JTdGF0dXM6Ok5vdEluQW5pbWF0aW9uKQorICAgICAgICAgICAgc2Nyb2xs
VG9PZmZzZXRXaXRob3V0QW5pbWF0aW9uKGNvcnJlY3RlZE9mZnNldCk7CisgICAgICAgIGVsc2UK
KyAgICAgICAgICAgIHNjcm9sbEFuaW1hdG9yLT5yZXRhcmdldFJ1bm5pbmdBbmltYXRpb24ocG9z
aXRpb24pOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDZkOWVmNzY4MTU0OTcwMGYwZGQyZDJkY2Y5Njlm
OGU2OGM1NmJmOTguLmJlZGZhNmIxNjE4ZjhmNTVkN2ZjNjQxZWZmYWQ2OTUzM2I1MmNjNjQgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0wNy0wNSAgTWFydGluIFJvYmluc29uICA8bXJvYmlu
c29uQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW2Nzcy1zY3JvbGwtc25hcF0gVHJpZ2dlcmluZyBh
IGxheW91dCBkdXJpbmcgc2Nyb2xsIGNhdXNlcyBqaXR0ZXJ5IHNjcm9sbGluZyBvbiBNYWMgd2hl
biBkcmFnZ2luZyB0aGUgc2Nyb2xsYmFyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjc0NzgKKworICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFz
ZXIuCisKKyAgICAgICAgKiBjc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xs
YmFyLXRodW1iLXdpdGgtcmVsYXlvdXRzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
Y3NzMy9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1kcmFnLXNjcm9sbGJhci10aHVtYi13aXRoLXJl
bGF5b3V0cy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0
aW9uczogU2tpcCB0aGlzIHRlc3Qgb24gaU9TIHNpbmNlIGl0IHVzZXMgYSBzY3JvbGxiYXIgdGh1
bWIgZHJhZy4KKwogMjAyMS0wNy0wNCAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxl
LmNvbT4KIAogICAgICAgICBbaU9TXSBBdWdtZW50IC1fd2ViVmlldzpkaWROb3RIYW5kbGVUYXBB
c01lYW5pbmdmdWxDbGlja0F0UG9pbnQ6IHRvIGluY2x1ZGUgbWVhbmluZ2Z1bCB0YXBzCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Ny
b2xsYmFyLXRodW1iLXdpdGgtcmVsYXlvdXRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Nz
czMvc2Nyb2xsLXNuYXAvc2Nyb2xsLXNuYXAtZHJhZy1zY3JvbGxiYXItdGh1bWItd2l0aC1yZWxh
eW91dHMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFhYTYwNTJhZTI4N2I0ZmI5NjUyM2FiNjMy
ODU5NWZkMjY2ZWIxN2UKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL3Njcm9s
bC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtcmVsYXlvdXRzLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACisyNTAKKzE4MAorUEFTUyBkcmFnZ2luZyB0aGUg
aG9yaXpvbnRhbCBzY3JvbGxiYXIgdGh1bWIgc25hcHBlZAorUEFTUyByZWxheW91dHMgc2hvdWxk
IG5vdCBoYXZlIHNuYXBwZWQgYmFjaworUEFTUyBkcmFnZ2luZyB0aGUgdmVydGljYWwgc2Nyb2xs
YmFyIHRodW1iIHNuYXBwZWQKK1BBU1MgcmVsYXlvdXRzIHNob3VsZCBub3QgaGF2ZSBzbmFwcGVk
IGJhY2sKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRy
YWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtcmVsYXlvdXRzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLXdpdGgtcmVsYXlv
dXRzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uOGQ4NjFiNDMwMDUzOTUyM2IwMTM4ZmQxZTA0MTcyMDczM2U4
M2UwOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvc2Nyb2xsLXNuYXAvc2Ny
b2xsLXNuYXAtZHJhZy1zY3JvbGxiYXItdGh1bWItd2l0aC1yZWxheW91dHMuaHRtbApAQCAtMCww
ICsxLDEyNiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAg
PHRpdGxlPkRyYWdnaW5nIHRoZSBzY3JvbGxiYXIgdGh1bWIgd2hpbGUgdHJpZ2dlcmluZyBsYXlv
dXQgc2hvdWxkIHRyaWdnZXIgc2Nyb2xsIHNuYXBwaW5nPC90aXRsZT4KKyAgICAgICAgPHN0eWxl
IHR5cGU9InRleHQvY3NzIj4KKyAgICAgICAgICAgIC8qIFVzZSBjdXN0b21pemVkIHNjcm9sbGJh
ciB0byBhdm9pZCBwbGF0Zm9ybSBkaWZmZXJlbmNlcy4gKi8KKyAgICAgICAgICAgIDo6LXdlYmtp
dC1zY3JvbGxiYXIgeworICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4OworICAgICAgICAgICAg
ICAgIGhlaWdodDogMjBweDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIDo6LXdlYmtpdC1z
Y3JvbGxiYXItYnV0dG9uIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7CisgICAgICAg
ICAgICAgICAgd2lkdGg6IDIwcHg7CisgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
Ymx1ZTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgOjotd2Via2l0LXNjcm9sbGJhci10
cmFjay1waWVjZSAgeworICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyYXk7Cisg
ICAgICAgICAgICB9CisKKyAgICAgICAgICAgIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIgewor
ICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDsKKyAgICAgICAgICAgICAgICB3aWR0aDogMjBw
eDsKKyAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsKKyAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgYm9keSB7CisgICAgICAgICAgICAgICAgbWFyZ2luOiAwcHg7Cisg
ICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC5jb250YWluZXIgeworICAgICAgICAgICAgICAg
IGhlaWdodDogMjAwcHg7CisgICAgICAgICAgICAgICAgd2lkdGg6IDIwMHB4OworICAgICAgICAg
ICAgICAgIG92ZXJmbG93OiBhdXRvOworICAgICAgICAgICAgICAgIHNjcm9sbC1zbmFwLXR5cGU6
IGJvdGggbWFuZGF0b3J5OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuaG9yaXpvbnRh
bC1kcmF3ZXIgeworICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTsKKyAgICAgICAgICAgICAg
ICB3aWR0aDogNTAwcHg7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC5ibG9jayB7Cisg
ICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOworICAgICAgICAgICAgICAgIHdpZHRoOiAyNTBw
eDsKKyAgICAgICAgICAgICAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQ7CisgICAgICAgICAg
ICB9CisgICAgICAgIDwvc3R5bGU+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNv
dXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAg
d2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCisgICAgICAgIGFzeW5jIGZ1bmN0aW9uIG9u
TG9hZCgpCisgICAgICAgIHsKKyAgICAgICAgICAgIGxldCBzYXdaZXJvID0gZmFsc2U7CisgICAg
ICAgICAgICBsZXQgaG9yaXpvbnRhbENvbnRhaW5lciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJob3Jpem9udGFsLWNvbnRhaW5lciIpOworICAgICAgICAgICAgaG9yaXpvbnRhbENvbnRhaW5l
ci5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCAoKSA9PiB7CisgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2hvcml6b250YWwtYmxvY2snKS5pbm5lclRleHQgPSBob3Jp
em9udGFsQ29udGFpbmVyLnNjcm9sbExlZnQ7CisgICAgICAgICAgICAgICAgc2F3WmVybyB8fD0g
aG9yaXpvbnRhbENvbnRhaW5lci5zY3JvbGxMZWZ0ID09IDA7CisgICAgICAgICAgICB9KQorCisg
ICAgICAgICAgICBsZXQgdmVydGljYWxDb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidmVydGljYWwtY29udGFpbmVyIik7CisgICAgICAgICAgICB2ZXJ0aWNhbENvbnRhaW5lci5h
ZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCAoKSA9PiB7CisgICAgICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ3ZlcnRpY2FsLWJsb2NrJykuaW5uZXJUZXh0ID0gdmVydGljYWxD
b250YWluZXIuc2Nyb2xsVG9wOworICAgICAgICAgICAgICAgIHNhd1plcm8gfHw9IHZlcnRpY2Fs
Q29udGFpbmVyLnNjcm9sbFRvcCA9PSAwOworICAgICAgICAgICAgfSkKKworICAgICAgICAgICAg
aWYgKHdpbmRvdy5ldmVudFNlbmRlciA9PSB1bmRlZmluZWQpIHsKKyAgICAgICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY29uc29sZScpLmlubmVyVGV4dCA9ICJEcmFnZ2luZyB0
aGUgc2Nyb2xsYmFyIHRodW1iIHNob3VsZCB0cmlnZ2VyIHNjcm9sbCBzbmFwcGluZy4iOworICAg
ICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHRyeSB7Cisg
ICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oMjAsIDE5MCk7CisgICAgICAg
ICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VEb3duKCk7CisKKyAgICAgICAgICAgICAgICAvLyBQ
YXVzZSBhbmQgbW92ZSB0byB0cmlnZ2VyIHJlbGF5b3V0cy4KKyAgICAgICAgICAgICAgICBldmVu
dFNlbmRlci5tb3VzZU1vdmVUbyg0MCwgMTkwKTsKKyAgICAgICAgICAgICAgICBhd2FpdCBVSUhl
bHBlci5kZWxheUZvcigxKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZU1vdmVU
byg1MCwgMTkwKTsKKyAgICAgICAgICAgICAgICBhd2FpdCBVSUhlbHBlci5kZWxheUZvcigxKTsK
KworICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKDgwLCAxOTApOworICAg
ICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlVXAoKTsKKworICAgICAgICAgICAgICAgIGF3
YWl0IFVJSGVscGVyLndhaXRGb3JUYXJnZXRTY3JvbGxBbmltYXRpb25Ub1NldHRsZShob3Jpem9u
dGFsQ29udGFpbmVyKTsKKyAgICAgICAgICAgICAgICBleHBlY3RUcnVlKGhvcml6b250YWxDb250
YWluZXIuc2Nyb2xsTGVmdCA9PSAyNTAsICJkcmFnZ2luZyB0aGUgaG9yaXpvbnRhbCBzY3JvbGxi
YXIgdGh1bWIgc25hcHBlZCIpOworICAgICAgICAgICAgICAgIGV4cGVjdFRydWUoc2F3WmVybyA9
PT0gZmFsc2UsICJyZWxheW91dHMgc2hvdWxkIG5vdCBoYXZlIHNuYXBwZWQgYmFjayIpOworCisg
ICAgICAgICAgICAgICAgc2F3WmVybyA9IGZhbHNlOworICAgICAgICAgICAgICAgIGV2ZW50U2Vu
ZGVyLm1vdXNlTW92ZVRvKDE5MCwgMjIwKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5t
b3VzZURvd24oKTsKKworICAgICAgICAgICAgICAgIC8vIFBhdXNlIGFuZCBtb3ZlIHRvIHRyaWdn
ZXIgcmVsYXlvdXRzLgorICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKDE5
MCwgMjUwKTsKKyAgICAgICAgICAgICAgICBhd2FpdCBVSUhlbHBlci5kZWxheUZvcigxKTsKKyAg
ICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbygxOTAsIDI1NSk7CisgICAgICAg
ICAgICAgICAgYXdhaXQgVUlIZWxwZXIuZGVsYXlGb3IoMSk7CisKKyAgICAgICAgICAgICAgICBl
dmVudFNlbmRlci5tb3VzZU1vdmVUbygxOTAsIDI3MCk7CisgICAgICAgICAgICAgICAgZXZlbnRT
ZW5kZXIubW91c2VVcCgpOworICAgICAgICAgICAgICAgIGF3YWl0IFVJSGVscGVyLndhaXRGb3JU
YXJnZXRTY3JvbGxBbmltYXRpb25Ub1NldHRsZSh2ZXJ0aWNhbENvbnRhaW5lcik7CisgICAgICAg
ICAgICAgICAgZXhwZWN0VHJ1ZSh2ZXJ0aWNhbENvbnRhaW5lci5zY3JvbGxUb3AgPT0gMTgwLCAi
ZHJhZ2dpbmcgdGhlIHZlcnRpY2FsIHNjcm9sbGJhciB0aHVtYiBzbmFwcGVkIik7CisgICAgICAg
ICAgICAgICAgZXhwZWN0VHJ1ZShzYXdaZXJvID09PSBmYWxzZSwgInJlbGF5b3V0cyBzaG91bGQg
bm90IGhhdmUgc25hcHBlZCBiYWNrIik7CisgICAgICAgICAgICB9IGNhdGNoIChlKSB7CisgICAg
ICAgICAgICAgICAgY29uc29sZS5sb2coZSk7CisgICAgICAgICAgICB9IGZpbmFsbHkgeworICAg
ICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICAgICAgfQorICAgICAgICB9Cisg
ICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9Im9uTG9hZCgp
OyI+CisgICAgICAgIDxkaXYgaWQ9Imhvcml6b250YWwtY29udGFpbmVyIiBjbGFzcz0iY29udGFp
bmVyIj4KKyAgICAgICAgICAgIDxkaXYgY2xhc3M9Imhvcml6b250YWwtZHJhd2VyIj4KKyAgICAg
ICAgICAgICAgICA8ZGl2IGNsYXNzPSJibG9jayIgaWQ9Imhvcml6b250YWwtYmxvY2siIHN0eWxl
PSJmbG9hdDogbGVmdDsgYmFja2dyb3VuZDogIzgwNDc1RSI+PC9kaXY+CisgICAgICAgICAgICAg
ICAgPGRpdiBjbGFzcz0iYmxvY2siIHN0eWxlPSJmbG9hdDogbGVmdDsgYmFja2dyb3VuZDogI0ND
NUE3MSI+PC9kaXY+CisgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgICAg
IDxkaXYgaWQ9InZlcnRpY2FsLWNvbnRhaW5lciIgY2xhc3M9ImNvbnRhaW5lciI+CisgICAgICAg
ICAgICA8ZGl2IGNsYXNzPSJibG9jayIgaWQ9InZlcnRpY2FsLWJsb2NrIiBzdHlsZT0iYmFja2dy
b3VuZDogIzgwNDc1RSI+PC9kaXY+CisgICAgICAgICAgICA8ZGl2IGNsYXNzPSJibG9jayIgc3R5
bGU9ImJhY2tncm91bmQ6ICNDQzVBNzEiPjwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICAgICAg
PHAgaWQ9ImNvbnNvbGUiPjwvcD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDc3NDg5NjA0NzJkMmNjNjdlNmM5YmY4
NDUxZTgxZjdhNTViMWM3NGMuLmQyMDlhMjcwNjA1OGYxMjJjZTcyYzk2NzRiYzM0YTdiM2M5OWZj
YTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25z
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMjg3
LDYgKzIyODcsNyBAQCBmYXN0L2RvbS9XaW5kb3cvY2hpbGQtd2luZG93LWZvY3VzLmh0bWwKICMg
aU9TIGRvZXMgbm90IGFsbG93IHlvdSB0byBzY3JvbGwgYnkgZHJhZ2dpbmcgdGhlIHNjcm9sbGJh
ciB0aHVtYi4KIHdlYmtpdC5vcmcvYi8xNTcyMDEgZmFzdC9zY3JvbGxpbmcvcnRsLWRyYWctdmVy
dGljYWwtc2Nyb2xsZXIuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE1NzIwMSBjc3Mz
L3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWRyYWctc2Nyb2xsYmFyLXRodW1iLmh0bWwgWyBGYWls
dXJlIF0KK3dlYmtpdC5vcmcvYi8xNTcyMDEgY3NzMy9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1k
cmFnLXNjcm9sbGJhci10aHVtYi13aXRoLXJlbGF5b3V0cy5odG1sIFsgRmFpbHVyZSBdCiAKICMg
RHVtcFJlbmRlclRyZWUgZG9lc24ndCBzdXBwb3J0IGxvZ2dpbmcgY2FsbHMgdG8gcnVuT3BlblBh
bmVsIGFuZCBpT1MncyBXZWJLaXRUZXN0UnVubmVyIGRvZXNuJ3Qgc3VwcG9ydCBldmVudFNlbmRl
ci5tb3VzZURvd24uCiBmYXN0L2Zvcm1zL2ZpbGUvb3Blbi1maWxlLXBhbmVsLmh0bWwgWyBTa2lw
IF0K
</data>

          </attachment>
      

    </bug>

</bugzilla>