<?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>232134</bug_id>
          
          <creation_ts>2021-10-22 02:10:02 -0700</creation_ts>
          <short_desc>DisplayList::Recorder&apos;s clipBounds() becomes empty if a flip is applied to the CTM</short_desc>
          <delta_ts>2021-10-26 12:43:18 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>darin</cc>
    
    <cc>dino</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1807592</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-10-22 02:10:02 -0700</bug_when>
    <thetext>DisplayList::Recorder&apos;s clipBounds() becomes empty if a flip is applied to the CTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1807593</commentid>
    <comment_count>1</comment_count>
      <attachid>442135</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-10-22 02:11:32 -0700</bug_when>
    <thetext>Created attachment 442135
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1807603</commentid>
    <comment_count>2</comment_count>
      <attachid>442138</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-10-22 02:33:03 -0700</bug_when>
    <thetext>Created attachment 442138
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1807936</commentid>
    <comment_count>3</comment_count>
      <attachid>442215</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-10-22 16:18:19 -0700</bug_when>
    <thetext>Created attachment 442215
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1807948</commentid>
    <comment_count>4</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-10-22 16:33:52 -0700</bug_when>
    <thetext>oops, lost the test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1807949</commentid>
    <comment_count>5</comment_count>
      <attachid>442220</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-10-22 16:34:10 -0700</bug_when>
    <thetext>Created attachment 442220
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1807967</commentid>
    <comment_count>6</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-10-22 17:06:33 -0700</bug_when>
    <thetext>smfr asked for a layout test instead of an API test, but I&apos;ve not found a way to get to the raw GraphicsContext::scale() from web content (the CSS 2D transform `scale(-1)` uses setCTM/concatCTM, which is not affected because mapping the rect through the transform maintains its positive size) in a way that it stays long enough to then introspect the clipBounds :)

Anyway, the API test is kind of nice because it lets us check CG vs. DL directly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1808176</commentid>
    <comment_count>7</comment_count>
      <attachid>442220</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-10-23 22:35:58 -0700</bug_when>
    <thetext>Comment on attachment 442220
Patch

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

&gt; Source/WebCore/platform/graphics/displaylists/DisplayListRecorder.cpp:449
&gt; +    if (std::optional&lt;AffineTransform&gt; inverse = currentState().ctm.inverse())

I would’ve used auto here; writing out the type makes this code harder to read, I think</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1808970</commentid>
    <comment_count>8</comment_count>
      <attachid>442514</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-10-26 11:54:11 -0700</bug_when>
    <thetext>Created attachment 442514
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1808987</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-10-26 12:42:50 -0700</bug_when>
    <thetext>Committed r284888 (243565@main): &lt;https://commits.webkit.org/243565@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 442514.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1808988</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-10-26 12:43:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/84677208&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>442135</attachid>
            <date>2021-10-22 02:11:32 -0700</date>
            <delta_ts>2021-10-22 02:37:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232134-20211022021132.patch</filename>
            <type>text/plain</type>
            <size>10629</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzODY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTc5NWE0MTUzNjlmYjMy
NGEwOGI4ZWNmMWQ0YjAwZmQwZTcyYzk4Ni4uNzI4ZWNjMGUyYjFmZGI2MTNmMGFmMjg3ZjU1ZGE2
OGQ0ZGVmYTE5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDIxLTEwLTIyICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIERpc3BsYXlMaXN0
OjpSZWNvcmRlcidzIGNsaXBCb3VuZHMoKSBiZWNvbWVzIGVtcHR5IGlmIGEgZmxpcCBpcyBhcHBs
aWVkIHRvIHRoZSBDVE0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzMjEzNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIE5ldyB0ZXN0OiBCaWZ1cmNhdGVkR3JhcGhpY3NDb250ZXh0VGVzdHMuVHJhbnNmb3Jt
ZWRDbGlwCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3RSZWNvcmRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6UmVjb3Jk
ZXI6OmNsaXApOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVyOjpjbGlw
UGF0aCk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6OmNsaXBCb3Vu
ZHMgY29uc3QpOgorICAgICAgICBJbnN0ZWFkIG9mIHVwZGF0aW5nIGNsaXBCb3VuZHMgYW55IHRp
bWUgdGhlIENUTSBjaGFuZ2VzLCBzdG9yZQorICAgICAgICBjbGlwQm91bmRzIGluIGJhc2UgY29v
cmRpbmF0ZXMgYW5kIG1hcCB0aHJvdWdoIHRoZSBDVE0gd2hlbiByZXRyaWV2ZWQuCisKKyAgICAg
ICAgVGhpcyBtYXRjaGVzIENHJ3MgYmVoYXZpb3IgYW5kIG1ha2VzIHRoZSBjbGlwQm91bmRzIG11
Y2ggc3R1cmRpZXIuCisgICAgICAgIEZvciBleGFtcGxlLCBwcmV2aW91c2x5LCBhcHBseWluZyBh
IGBzY2FsZSgxLCAtMSlgIHRvIHRoZSBjb250ZXh0CisgICAgICAgIHdvdWxkIGltbWVkaWF0ZWx5
IHJlc3VsdCBpbiB0aGUgY2xpcEJvdW5kcycgaGVpZ2h0IGJlY29taW5nIG5lZ2F0aXZlLAorICAg
ICAgICBtYWtpbmcgdGhlIGJvdW5kcyBlbXB0eSBhbmQgY29uZnVzaW5nIGFueXRoaW5nIHRoYXQg
cmVhZHMgZnJvbSBpdC4KKworICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVy
OjpDb250ZXh0U3RhdGU6OnRyYW5zbGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlz
dDo6UmVjb3JkZXI6OkNvbnRleHRTdGF0ZTo6cm90YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRp
c3BsYXlMaXN0OjpSZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpzY2FsZSk6CisgICAgICAgIChXZWJD
b3JlOjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6OkNvbnRleHRTdGF0ZTo6c2V0Q1RNKToKKyAgICAg
ICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpSZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpjb25jYXRD
VE0pOgorICAgICAgICBTdG9wIHVwZGF0aW5nIHRoZSBjbGlwQm91bmRzIHdoZW4gdGhlIENUTSBj
aGFuZ2VzLCB0aGlzIGlzIG5vIGxvbmdlciBuZWNlc3NhcnkuCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oOgorICAgICAgICBE
cml2ZS1ieSBhZGQgYSBkZWZhdWx0IHBhcmFtZXRlciBzbyBnZXRDVE0gY2FuIGJlIGNhbGxlZCBv
biB0aGUgc3ViY2xhc3MgdGhlIHNhbWUgd2F5IGl0IGNhbiBvbiBHcmFwaGljc0NvbnRleHQuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL0FmZmluZVRyYW5zZm9ybS5o
OiBGaXggYSB0eXBvLgorCiAyMDIxLTEwLTA4ICBEZXZpbiBSb3Vzc28gIDxkcm91c3NvQGFwcGxl
LmNvbT4KIAogICAgICAgICBbR1BVIFByb2Nlc3NdIHN1cHBvcnQgcmVuZGVyaW5nIEFwcGxlIFBh
eSBsb2dvcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlz
cGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuY3BwCmluZGV4IDVm
MzZhOWMzYjcyZGE2MTljMjE4YmE4MmY2ZjE4MGJkYmExNTIwOWIuLmI2MGEwNmIxODcwZWY2YTEz
YjdkYzVhNmVmNTkyYmUyODlkMmNjODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RS
ZWNvcmRlci5jcHAKQEAgLTQyNCw3ICs0MjQsNyBAQCB2b2lkIFJlY29yZGVyOjphcHBseUZpbGxQ
YXR0ZXJuKCkKIAogdm9pZCBSZWNvcmRlcjo6Y2xpcChjb25zdCBGbG9hdFJlY3QmIHJlY3QpCiB7
Ci0gICAgY3VycmVudFN0YXRlKCkuY2xpcEJvdW5kcy5pbnRlcnNlY3QocmVjdCk7CisgICAgY3Vy
cmVudFN0YXRlKCkuY2xpcEJvdW5kcy5pbnRlcnNlY3QoY3VycmVudFN0YXRlKCkuY3RtLm1hcFJl
Y3QocmVjdCkpOwogICAgIHJlY29yZENsaXAocmVjdCk7CiB9CiAKQEAgLTQ0MCwxMiArNDQwLDE3
IEBAIHZvaWQgUmVjb3JkZXI6OmNsaXBPdXQoY29uc3QgUGF0aCYgcGF0aCkKIAogdm9pZCBSZWNv
cmRlcjo6Y2xpcFBhdGgoY29uc3QgUGF0aCYgcGF0aCwgV2luZFJ1bGUgd2luZFJ1bGUpCiB7Ci0g
ICAgY3VycmVudFN0YXRlKCkuY2xpcEJvdW5kcy5pbnRlcnNlY3QocGF0aC5mYXN0Qm91bmRpbmdS
ZWN0KCkpOworICAgIGN1cnJlbnRTdGF0ZSgpLmNsaXBCb3VuZHMuaW50ZXJzZWN0KGN1cnJlbnRT
dGF0ZSgpLmN0bS5tYXBSZWN0KHBhdGguZmFzdEJvdW5kaW5nUmVjdCgpKSk7CiAgICAgcmVjb3Jk
Q2xpcFBhdGgocGF0aCwgd2luZFJ1bGUpOwogfQogCiBJbnRSZWN0IFJlY29yZGVyOjpjbGlwQm91
bmRzKCkgY29uc3QKIHsKKyAgICBpZiAoc3RkOjpvcHRpb25hbDxBZmZpbmVUcmFuc2Zvcm0+IGlu
dmVyc2UgPSBjdXJyZW50U3RhdGUoKS5jdG0uaW52ZXJzZSgpKQorICAgICAgICByZXR1cm4gZW5j
bG9zaW5nSW50UmVjdChpbnZlcnNlLT5tYXBSZWN0KGN1cnJlbnRTdGF0ZSgpLmNsaXBCb3VuZHMp
KTsKKworICAgIC8vIElmIHRoZSBDVE0gaXMgbm90IGludmVydGlibGUsIHJldHVybiB0aGUgb3Jp
Z2luYWwgcmVjdC4KKyAgICAvLyBUaGlzIG1hdGNoZXMgQ0dSZWN0QXBwbHlJbnZlcnNlQWZmaW5l
VHJhbnNmb3JtIGJlaGF2aW9yLgogICAgIHJldHVybiBlbmNsb3NpbmdJbnRSZWN0KGN1cnJlbnRT
dGF0ZSgpLmNsaXBCb3VuZHMpOwogfQogCkBAIC01MzEsNyArNTM2LDYgQEAgY29uc3QgQWZmaW5l
VHJhbnNmb3JtJiBSZWNvcmRlcjo6Y3RtKCkgY29uc3QKIHZvaWQgUmVjb3JkZXI6OkNvbnRleHRT
dGF0ZTo6dHJhbnNsYXRlKGZsb2F0IHgsIGZsb2F0IHkpCiB7CiAgICAgY3RtLnRyYW5zbGF0ZSh4
LCB5KTsKLSAgICBjbGlwQm91bmRzLm1vdmUoLXgsIC15KTsKIH0KIAogdm9pZCBSZWNvcmRlcjo6
Q29udGV4dFN0YXRlOjpyb3RhdGUoZmxvYXQgYW5nbGVJblJhZGlhbnMpCkBAIC01NDEsMzUgKzU0
NSwyMSBAQCB2b2lkIFJlY29yZGVyOjpDb250ZXh0U3RhdGU6OnJvdGF0ZShmbG9hdCBhbmdsZUlu
UmFkaWFucykKICAgICAKICAgICBBZmZpbmVUcmFuc2Zvcm0gcm90YXRpb247CiAgICAgcm90YXRp
b24ucm90YXRlKGFuZ2xlSW5EZWdyZWVzKTsKLQotICAgIGlmIChzdGQ6Om9wdGlvbmFsPEFmZmlu
ZVRyYW5zZm9ybT4gaW52ZXJzZSA9IHJvdGF0aW9uLmludmVyc2UoKSkKLSAgICAgICAgY2xpcEJv
dW5kcyA9IGludmVyc2UudmFsdWUoKS5tYXBSZWN0KGNsaXBCb3VuZHMpOwogfQogCiB2b2lkIFJl
Y29yZGVyOjpDb250ZXh0U3RhdGU6OnNjYWxlKGNvbnN0IEZsb2F0U2l6ZSYgc2l6ZSkKIHsKICAg
ICBjdG0uc2NhbGUoc2l6ZSk7Ci0gICAgY2xpcEJvdW5kcy5zY2FsZSgxIC8gc2l6ZS53aWR0aCgp
LCAxIC8gc2l6ZS5oZWlnaHQoKSk7CiB9CiAKIHZvaWQgUmVjb3JkZXI6OkNvbnRleHRTdGF0ZTo6
c2V0Q1RNKGNvbnN0IEFmZmluZVRyYW5zZm9ybSYgbWF0cml4KQogewotICAgIHN0ZDo6b3B0aW9u
YWw8QWZmaW5lVHJhbnNmb3JtPiBpbnZlcnNlVHJhbnNmb3JtRm9yQ2xpcEJvdW5kczsKLSAgICBp
ZiAoYXV0byBvcmlnaW5hbENUTUludmVyc2UgPSBjdG0uaW52ZXJzZSgpKQotICAgICAgICBpbnZl
cnNlVHJhbnNmb3JtRm9yQ2xpcEJvdW5kcyA9IG9yaWdpbmFsQ1RNSW52ZXJzZS0+bXVsdGlwbHko
bWF0cml4KS5pbnZlcnNlKCk7Ci0KICAgICBjdG0gPSBtYXRyaXg7Ci0KLSAgICBpZiAoaW52ZXJz
ZVRyYW5zZm9ybUZvckNsaXBCb3VuZHMpCi0gICAgICAgIGNsaXBCb3VuZHMgPSBpbnZlcnNlVHJh
bnNmb3JtRm9yQ2xpcEJvdW5kcy0+bWFwUmVjdChjbGlwQm91bmRzKTsKIH0KIAogdm9pZCBSZWNv
cmRlcjo6Q29udGV4dFN0YXRlOjpjb25jYXRDVE0oY29uc3QgQWZmaW5lVHJhbnNmb3JtJiBtYXRy
aXgpCiB7CiAgICAgY3RtICo9IG1hdHJpeDsKLQotICAgIGlmIChzdGQ6Om9wdGlvbmFsPEFmZmlu
ZVRyYW5zZm9ybT4gaW52ZXJzZSA9IG1hdHJpeC5pbnZlcnNlKCkpCi0gICAgICAgIGNsaXBCb3Vu
ZHMgPSBpbnZlcnNlLnZhbHVlKCkubWFwUmVjdChjbGlwQm91bmRzKTsKIH0KIAogfSAvLyBuYW1l
c3BhY2UgRGlzcGxheUxpc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oCmlu
ZGV4IDQ4NjZjODJjYWM5NDMwZDdjMzc0YWMzZmE1YmU4YzA3N2NkOTNhNDEuLmQyZTY1MGVlYzZj
ZTcwYWExMDdmMTc5Y2Y3ZjJmODE2MTM2OTFkYWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlM
aXN0UmVjb3JkZXIuaApAQCAtMjU1LDcgKzI1NSw3IEBAIHByaXZhdGU6CiAgICAgV0VCQ09SRV9F
WFBPUlQgdm9pZCBzY2FsZShjb25zdCBGbG9hdFNpemUmKSBmaW5hbDsKICAgICBXRUJDT1JFX0VY
UE9SVCB2b2lkIGNvbmNhdENUTShjb25zdCBBZmZpbmVUcmFuc2Zvcm0mKSBmaW5hbDsKICAgICBX
RUJDT1JFX0VYUE9SVCB2b2lkIHNldENUTShjb25zdCBBZmZpbmVUcmFuc2Zvcm0mKSBmaW5hbDsK
LSAgICBXRUJDT1JFX0VYUE9SVCBBZmZpbmVUcmFuc2Zvcm0gZ2V0Q1RNKEdyYXBoaWNzQ29udGV4
dDo6SW5jbHVkZURldmljZVNjYWxlKSBjb25zdCBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCBB
ZmZpbmVUcmFuc2Zvcm0gZ2V0Q1RNKEdyYXBoaWNzQ29udGV4dDo6SW5jbHVkZURldmljZVNjYWxl
ID0gUG9zc2libHlJbmNsdWRlRGV2aWNlU2NhbGUpIGNvbnN0IGZpbmFsOwogCiAgICAgV0VCQ09S
RV9FWFBPUlQgdm9pZCBiZWdpblRyYW5zcGFyZW5jeUxheWVyKGZsb2F0IG9wYWNpdHkpIGZpbmFs
OwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZW5kVHJhbnNwYXJlbmN5TGF5ZXIoKSBmaW5hbDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMv
QWZmaW5lVHJhbnNmb3JtLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFu
c2Zvcm1zL0FmZmluZVRyYW5zZm9ybS5oCmluZGV4IDM2NWRiMDk1OTRlMGQ2YjkwMDNkNzVjZTEz
ZTZhNWNlMjg5OTJmMGIuLmNiYzVjNzFlMjAzYmQzMmVjNjU4YjQ5MmNlNTUwMTNjOGMzY2RiZmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMv
QWZmaW5lVHJhbnNmb3JtLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
dHJhbnNmb3Jtcy9BZmZpbmVUcmFuc2Zvcm0uaApAQCAtMTMxLDcgKzEzMSw3IEBAIHB1YmxpYzoK
ICAgICBXRUJDT1JFX0VYUE9SVCBkb3VibGUgeFNjYWxlKCkgY29uc3Q7CiAgICAgV0VCQ09SRV9F
WFBPUlQgZG91YmxlIHlTY2FsZSgpIGNvbnN0OwogCi0gICAgYm9vbCBpc0ludmVydGlibGUoKSBj
b25zdDsgLy8gSWYgeW91IGNhbGwgdGhpcyB0aGlzLCB5b3UncmUgcHJvYmFibHkgZG9pbmcgaXQg
d3JvbmcuCisgICAgYm9vbCBpc0ludmVydGlibGUoKSBjb25zdDsgLy8gSWYgeW91IGNhbGwgdGhp
cywgeW91J3JlIHByb2JhYmx5IGRvaW5nIGl0IHdyb25nLgogICAgIFdFQkNPUkVfRVhQT1JUIHN0
ZDo6b3B0aW9uYWw8QWZmaW5lVHJhbnNmb3JtPiBpbnZlcnNlKCkgY29uc3Q7CiAKICAgICBXRUJD
T1JFX0VYUE9SVCB2b2lkIGJsZW5kKGNvbnN0IEFmZmluZVRyYW5zZm9ybSYgZnJvbSwgZG91Ymxl
IHByb2dyZXNzKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxv
ZwppbmRleCA0NmJmZTcxYmNhYjlkNjVmMzVkOTcwMDYwNDEzMDQyMGEwZjMzOTI2Li5lMTYxYjc4
N2NjZjNiYTY0MzdiZTk5ZjEyMWU1MWJhZjRhNTY5YmJhIDEwMDY0NAotLS0gYS9Ub29scy9DaGFu
Z2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEtMTAtMjIg
IFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisKKyAgICAgICAgRGlzcGxh
eUxpc3Q6OlJlY29yZGVyJ3MgY2xpcEJvdW5kcygpIGJlY29tZXMgZW1wdHkgaWYgYSBmbGlwIGlz
IGFwcGxpZWQgdG8gdGhlIENUTQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjMyMTM0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvY2cvQmlmdXJjYXRlZEdy
YXBoaWNzQ29udGV4dFRlc3RzQ0cuY3BwOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6
CisgICAgICAgIEFkZCBhIHRlc3QgZW5zdXJpbmcgdGhhdCBvdXIgY2xpcEJvdW5kcyBhbmQgQ0cn
cyBtYXRjaCB0aHJvdWdoIGEgc2VyaWVzCisgICAgICAgIG9mIHNpbXBsZSB0cmFuc2Zvcm1zLgor
CiAyMDIxLTEwLTA4ICBCSiBCdXJnICA8YmJ1cmdAYXBwbGUuY29tPgogCiAgICAgICAgIFtDb2Nv
YV0gV2ViIEluc3BlY3RvcjogcHJvdmlkZSBhIHdheSBmb3IgX1dLSW5zcGVjdG9yRXh0ZW5zaW9u
IGNsaWVudHMgdG8gYmUgbm90aWZpZWQgd2hlbiB0aGUgaW5zcGVjdGVkIHBhZ2UgbmF2aWdhdGVz
CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvY2cvQmlmdXJj
YXRlZEdyYXBoaWNzQ29udGV4dFRlc3RzQ0cuY3BwIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJDb3JlL2NnL0JpZnVyY2F0ZWRHcmFwaGljc0NvbnRleHRUZXN0c0NHLmNwcAppbmRleCAz
NDliNjU2NTg3OGZhNjBhMThjYzdhNTNmMTYyZjMxODIwZTU3NjA5Li40NzI0N2Q3OTU0MmJmODJm
MjBhNjJjZmNhYWE4MmExMWVjYTQwNzNjIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYkNvcmUvY2cvQmlmdXJjYXRlZEdyYXBoaWNzQ29udGV4dFRlc3RzQ0cuY3BwCisr
KyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9jZy9CaWZ1cmNhdGVkR3JhcGhp
Y3NDb250ZXh0VGVzdHNDRy5jcHAKQEAgLTUwLDcgKzUwLDYgQEAgVEVTVChCaWZ1cmNhdGVkR3Jh
cGhpY3NDb250ZXh0VGVzdHMsIEJhc2ljQmlmdXJjYXRlZENvbnRleHQpCiB7CiAgICAgYXV0byBj
b2xvclNwYWNlID0gRGVzdGluYXRpb25Db2xvclNwYWNlOjpTUkdCKCk7CiAgICAgYXV0byBwcmlt
YXJ5Q0dDb250ZXh0ID0gYWRvcHRDRihDR0JpdG1hcENvbnRleHRDcmVhdGUobnVsbHB0ciwgY29u
dGV4dFdpZHRoLCBjb250ZXh0SGVpZ2h0LCA4LCA0ICogY29udGV4dFdpZHRoLCBjb2xvclNwYWNl
LnBsYXRmb3JtQ29sb3JTcGFjZSgpLCBrQ0dJbWFnZUFscGhhUHJlbXVsdGlwbGllZExhc3QpKTsK
LSAgICBhdXRvIHNlY29uZGFyeUNHQ29udGV4dCA9IGFkb3B0Q0YoQ0dCaXRtYXBDb250ZXh0Q3Jl
YXRlKG51bGxwdHIsIGNvbnRleHRXaWR0aCwgY29udGV4dEhlaWdodCwgOCwgNCAqIGNvbnRleHRX
aWR0aCwgY29sb3JTcGFjZS5wbGF0Zm9ybUNvbG9yU3BhY2UoKSwga0NHSW1hZ2VBbHBoYVByZW11
bHRpcGxpZWRMYXN0KSk7CiAKICAgICBHcmFwaGljc0NvbnRleHRDRyBwcmltYXJ5Q29udGV4dChw
cmltYXJ5Q0dDb250ZXh0LmdldCgpKTsKIApAQCAtMTk0LDYgKzE5Myw2MSBAQCBURVNUKEJpZnVy
Y2F0ZWRHcmFwaGljc0NvbnRleHRUZXN0cywgRHJhd0dyYWRpZW50SW1hZ2UpCiAgICAgRVhQRUNU
X0VRKHNlY29uZGFyeURhdGFbMl0sIDApOwogfQogCitURVNUKEJpZnVyY2F0ZWRHcmFwaGljc0Nv
bnRleHRUZXN0cywgVHJhbnNmb3JtZWRDbGlwKQoreworICAgIGF1dG8gY29sb3JTcGFjZSA9IERl
c3RpbmF0aW9uQ29sb3JTcGFjZTo6U1JHQigpOworICAgIGF1dG8gcHJpbWFyeUNHQ29udGV4dCA9
IGFkb3B0Q0YoQ0dCaXRtYXBDb250ZXh0Q3JlYXRlKG51bGxwdHIsIDEwMCwgMTAwLCA4LCA0ICog
MTAwLCBjb2xvclNwYWNlLnBsYXRmb3JtQ29sb3JTcGFjZSgpLCBrQ0dJbWFnZUFscGhhUHJlbXVs
dGlwbGllZExhc3QpKTsKKworICAgIEdyYXBoaWNzQ29udGV4dENHIHByaW1hcnlDb250ZXh0Q0co
cHJpbWFyeUNHQ29udGV4dC5nZXQoKSk7CisgICAgR3JhcGhpY3NDb250ZXh0JiBwcmltYXJ5Q29u
dGV4dCA9IHByaW1hcnlDb250ZXh0Q0c7CisKKyAgICBJbk1lbW9yeURpc3BsYXlMaXN0IGRpc3Bs
YXlMaXN0OworICAgIFJlY29yZGVySW1wbCBzZWNvbmRhcnlDb250ZXh0REwoZGlzcGxheUxpc3Qs
IHsgfSwgRmxvYXRSZWN0KDAsIDAsIDEwMCwgMTAwKSwgeyB9KTsKKyAgICBHcmFwaGljc0NvbnRl
eHQmIHNlY29uZGFyeUNvbnRleHQgPSBzZWNvbmRhcnlDb250ZXh0REw7CisKKyAgICBCaWZ1cmNh
dGVkR3JhcGhpY3NDb250ZXh0IGN0eChwcmltYXJ5Q29udGV4dCwgc2Vjb25kYXJ5Q29udGV4dCk7
CisKKyAgICBjdHguY2xpcChGbG9hdFJlY3QoMjUsIDI1LCA1MCwgNTApKTsKKworICAgIEVYUEVD
VF9FUShwcmltYXJ5Q29udGV4dC5jbGlwQm91bmRzKCksIHNlY29uZGFyeUNvbnRleHQuY2xpcEJv
dW5kcygpKTsKKyAgICBFWFBFQ1RfRVEocHJpbWFyeUNvbnRleHQuY2xpcEJvdW5kcygpLCBGbG9h
dFJlY3QoMjUsIDI1LCA1MCwgNTApKTsKKworICAgIGN0eC5zY2FsZSh7IDEsIC0xIH0pOworICAg
IGN0eC50cmFuc2xhdGUoMCwgLTEwMCk7CisKKyAgICBFWFBFQ1RfRVEocHJpbWFyeUNvbnRleHQu
Y2xpcEJvdW5kcygpLCBzZWNvbmRhcnlDb250ZXh0LmNsaXBCb3VuZHMoKSk7CisgICAgRVhQRUNU
X0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgRmxvYXRSZWN0KDI1LCAyNSwgNTAsIDUw
KSk7CisKKyAgICBjdHguc2NhbGUoMik7CisKKyAgICBFWFBFQ1RfRVEocHJpbWFyeUNvbnRleHQu
Y2xpcEJvdW5kcygpLCBzZWNvbmRhcnlDb250ZXh0LmNsaXBCb3VuZHMoKSk7CisgICAgRVhQRUNU
X0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgRmxvYXRSZWN0KDEyLCAxMiwgMjYsIDI2
KSk7CisKKyAgICB7CisgICAgICAgIEdyYXBoaWNzQ29udGV4dFN0YXRlU2F2ZXIgc2F2ZXIoY3R4
KTsKKworICAgICAgICBjdHgudHJhbnNsYXRlKDEyLCAxMik7CisKKyAgICAgICAgRVhQRUNUX0VR
KHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgc2Vjb25kYXJ5Q29udGV4dC5jbGlwQm91bmRz
KCkpOworICAgICAgICBFWFBFQ1RfRVEocHJpbWFyeUNvbnRleHQuY2xpcEJvdW5kcygpLCBGbG9h
dFJlY3QoMCwgMCwgMjYsIDI2KSk7CisKKyAgICAgICAgY3R4LmNsaXAoRmxvYXRSZWN0KDAsIDAs
IDEwLCAxMCkpOworCisgICAgICAgIEVYUEVDVF9FUShwcmltYXJ5Q29udGV4dC5jbGlwQm91bmRz
KCksIHNlY29uZGFyeUNvbnRleHQuY2xpcEJvdW5kcygpKTsKKyAgICAgICAgRVhQRUNUX0VRKHBy
aW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgRmxvYXRSZWN0KDAsIDAsIDEwLCAxMCkpOworICAg
IH0KKworICAgIEVYUEVDVF9FUShwcmltYXJ5Q29udGV4dC5jbGlwQm91bmRzKCksIHNlY29uZGFy
eUNvbnRleHQuY2xpcEJvdW5kcygpKTsKKyAgICBFWFBFQ1RfRVEocHJpbWFyeUNvbnRleHQuY2xp
cEJvdW5kcygpLCBGbG9hdFJlY3QoMTIsIDEyLCAyNiwgMjYpKTsKKworICAgIC8vIE1ha2UgdGhl
IENUTSBub24taW52ZXJ0aWJsZS4KKyAgICBjdHguc2NhbGUoeyAwLCAxIH0pOworCisgICAgRVhQ
RUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgc2Vjb25kYXJ5Q29udGV4dC5jbGlw
Qm91bmRzKCkpOworICAgIEVYUEVDVF9FUShwcmltYXJ5Q29udGV4dC5jbGlwQm91bmRzKCksIEZs
b2F0UmVjdCgyNSwgMjUsIDUwLCA1MCkpOworfQorCisKIH0gLy8gbmFtZXNwYWNlIFRlc3RXZWJL
aXRBUEkKIAogI2VuZGlmIC8vIFVTRShDRykK
</data>
<flag name="commit-queue"
          id="466568"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>442138</attachid>
            <date>2021-10-22 02:33:03 -0700</date>
            <delta_ts>2021-10-22 16:18:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232134-20211022023302.patch</filename>
            <type>text/plain</type>
            <size>10097</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0Njc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGI2NmIxMmUxYmI2YTQx
YjhkMDJjMGUzZmU2MmUxMmYwODQzZGFjNS4uOGRkOTg4NDQ5MWZjMmUyMzM4MDZkZWNjMTdjOWI1
YjFiMzIxMmNkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDIxLTEwLTIyICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIERpc3BsYXlMaXN0
OjpSZWNvcmRlcidzIGNsaXBCb3VuZHMoKSBiZWNvbWVzIGVtcHR5IGlmIGEgZmxpcCBpcyBhcHBs
aWVkIHRvIHRoZSBDVE0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzMjEzNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIE5ldyB0ZXN0OiBCaWZ1cmNhdGVkR3JhcGhpY3NDb250ZXh0VGVzdHMuVHJhbnNmb3Jt
ZWRDbGlwCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3RSZWNvcmRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6UmVjb3Jk
ZXI6OmNsaXApOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVyOjpjbGlw
UGF0aCk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6OmNsaXBCb3Vu
ZHMgY29uc3QpOgorICAgICAgICBJbnN0ZWFkIG9mIHVwZGF0aW5nIGNsaXBCb3VuZHMgYW55IHRp
bWUgdGhlIENUTSBjaGFuZ2VzLCBzdG9yZQorICAgICAgICBjbGlwQm91bmRzIGluIGJhc2UgY29v
cmRpbmF0ZXMgYW5kIG1hcCB0aHJvdWdoIHRoZSBDVE0gd2hlbiByZXRyaWV2ZWQuCisKKyAgICAg
ICAgVGhpcyBtYXRjaGVzIENHJ3MgYmVoYXZpb3IgYW5kIG1ha2VzIHRoZSBjbGlwQm91bmRzIG11
Y2ggc3R1cmRpZXIuCisgICAgICAgIEZvciBleGFtcGxlLCBwcmV2aW91c2x5LCBhcHBseWluZyBh
IGBzY2FsZSgxLCAtMSlgIHRvIHRoZSBjb250ZXh0CisgICAgICAgIHdvdWxkIGltbWVkaWF0ZWx5
IHJlc3VsdCBpbiB0aGUgY2xpcEJvdW5kcycgaGVpZ2h0IGJlY29taW5nIG5lZ2F0aXZlLAorICAg
ICAgICBtYWtpbmcgdGhlIGJvdW5kcyBlbXB0eSBhbmQgY29uZnVzaW5nIGFueXRoaW5nIHRoYXQg
cmVhZHMgZnJvbSBpdC4KKworICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVy
OjpDb250ZXh0U3RhdGU6OnRyYW5zbGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlz
dDo6UmVjb3JkZXI6OkNvbnRleHRTdGF0ZTo6cm90YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRp
c3BsYXlMaXN0OjpSZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpzY2FsZSk6CisgICAgICAgIChXZWJD
b3JlOjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6OkNvbnRleHRTdGF0ZTo6c2V0Q1RNKToKKyAgICAg
ICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpSZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpjb25jYXRD
VE0pOgorICAgICAgICBTdG9wIHVwZGF0aW5nIHRoZSBjbGlwQm91bmRzIHdoZW4gdGhlIENUTSBj
aGFuZ2VzLCB0aGlzIGlzIG5vIGxvbmdlciBuZWNlc3NhcnkuCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oOgorICAgICAgICBE
cml2ZS1ieSBhZGQgYSBkZWZhdWx0IHBhcmFtZXRlciBzbyBnZXRDVE0gY2FuIGJlIGNhbGxlZCBv
biB0aGUgc3ViY2xhc3MgdGhlIHNhbWUgd2F5IGl0IGNhbiBvbiBHcmFwaGljc0NvbnRleHQuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL0FmZmluZVRyYW5zZm9ybS5o
OiBGaXggYSB0eXBvLgorCiAyMDIxLTEwLTIyICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJj
aWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVthMTF5XSBBZGQgaW1wbGVtZW50YXRpb24g
b2YgdGV4dCBpbnRlcmZhY2Ugd2hlbiBidWlsZGluZyB3aXRoIEFUU1BJCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RS
ZWNvcmRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlz
dHMvRGlzcGxheUxpc3RSZWNvcmRlci5jcHAKaW5kZXggNDc3OTQyMWY0M2Q2Y2E5MDkzZmJjNWY1
ZjMzMmZmNDA5OWE1M2E2MS4uMzUyZDhjMGJhNjNiOTc2M2FkNDcyOWYyM2MzMjFhOGJhNTAzNjVk
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxp
c3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmNwcApAQCAtNDI0LDcg
KzQyNCw3IEBAIHZvaWQgUmVjb3JkZXI6OmFwcGx5RmlsbFBhdHRlcm4oKQogCiB2b2lkIFJlY29y
ZGVyOjpjbGlwKGNvbnN0IEZsb2F0UmVjdCYgcmVjdCkKIHsKLSAgICBjdXJyZW50U3RhdGUoKS5j
bGlwQm91bmRzLmludGVyc2VjdChyZWN0KTsKKyAgICBjdXJyZW50U3RhdGUoKS5jbGlwQm91bmRz
LmludGVyc2VjdChjdXJyZW50U3RhdGUoKS5jdG0ubWFwUmVjdChyZWN0KSk7CiAgICAgcmVjb3Jk
Q2xpcChyZWN0KTsKIH0KIApAQCAtNDQwLDEyICs0NDAsMTcgQEAgdm9pZCBSZWNvcmRlcjo6Y2xp
cE91dChjb25zdCBQYXRoJiBwYXRoKQogCiB2b2lkIFJlY29yZGVyOjpjbGlwUGF0aChjb25zdCBQ
YXRoJiBwYXRoLCBXaW5kUnVsZSB3aW5kUnVsZSkKIHsKLSAgICBjdXJyZW50U3RhdGUoKS5jbGlw
Qm91bmRzLmludGVyc2VjdChwYXRoLmZhc3RCb3VuZGluZ1JlY3QoKSk7CisgICAgY3VycmVudFN0
YXRlKCkuY2xpcEJvdW5kcy5pbnRlcnNlY3QoY3VycmVudFN0YXRlKCkuY3RtLm1hcFJlY3QocGF0
aC5mYXN0Qm91bmRpbmdSZWN0KCkpKTsKICAgICByZWNvcmRDbGlwUGF0aChwYXRoLCB3aW5kUnVs
ZSk7CiB9CiAKIEludFJlY3QgUmVjb3JkZXI6OmNsaXBCb3VuZHMoKSBjb25zdAogeworICAgIGlm
IChzdGQ6Om9wdGlvbmFsPEFmZmluZVRyYW5zZm9ybT4gaW52ZXJzZSA9IGN1cnJlbnRTdGF0ZSgp
LmN0bS5pbnZlcnNlKCkpCisgICAgICAgIHJldHVybiBlbmNsb3NpbmdJbnRSZWN0KGludmVyc2Ut
Pm1hcFJlY3QoY3VycmVudFN0YXRlKCkuY2xpcEJvdW5kcykpOworCisgICAgLy8gSWYgdGhlIENU
TSBpcyBub3QgaW52ZXJ0aWJsZSwgcmV0dXJuIHRoZSBvcmlnaW5hbCByZWN0LgorICAgIC8vIFRo
aXMgbWF0Y2hlcyBDR1JlY3RBcHBseUludmVyc2VBZmZpbmVUcmFuc2Zvcm0gYmVoYXZpb3IuCiAg
ICAgcmV0dXJuIGVuY2xvc2luZ0ludFJlY3QoY3VycmVudFN0YXRlKCkuY2xpcEJvdW5kcyk7CiB9
CiAKQEAgLTUyMSw3ICs1MjYsNiBAQCBjb25zdCBBZmZpbmVUcmFuc2Zvcm0mIFJlY29yZGVyOjpj
dG0oKSBjb25zdAogdm9pZCBSZWNvcmRlcjo6Q29udGV4dFN0YXRlOjp0cmFuc2xhdGUoZmxvYXQg
eCwgZmxvYXQgeSkKIHsKICAgICBjdG0udHJhbnNsYXRlKHgsIHkpOwotICAgIGNsaXBCb3VuZHMu
bW92ZSgteCwgLXkpOwogfQogCiB2b2lkIFJlY29yZGVyOjpDb250ZXh0U3RhdGU6OnJvdGF0ZShm
bG9hdCBhbmdsZUluUmFkaWFucykKQEAgLTUzMSwzNSArNTM1LDIxIEBAIHZvaWQgUmVjb3JkZXI6
OkNvbnRleHRTdGF0ZTo6cm90YXRlKGZsb2F0IGFuZ2xlSW5SYWRpYW5zKQogICAgIAogICAgIEFm
ZmluZVRyYW5zZm9ybSByb3RhdGlvbjsKICAgICByb3RhdGlvbi5yb3RhdGUoYW5nbGVJbkRlZ3Jl
ZXMpOwotCi0gICAgaWYgKHN0ZDo6b3B0aW9uYWw8QWZmaW5lVHJhbnNmb3JtPiBpbnZlcnNlID0g
cm90YXRpb24uaW52ZXJzZSgpKQotICAgICAgICBjbGlwQm91bmRzID0gaW52ZXJzZS52YWx1ZSgp
Lm1hcFJlY3QoY2xpcEJvdW5kcyk7CiB9CiAKIHZvaWQgUmVjb3JkZXI6OkNvbnRleHRTdGF0ZTo6
c2NhbGUoY29uc3QgRmxvYXRTaXplJiBzaXplKQogewogICAgIGN0bS5zY2FsZShzaXplKTsKLSAg
ICBjbGlwQm91bmRzLnNjYWxlKDEgLyBzaXplLndpZHRoKCksIDEgLyBzaXplLmhlaWdodCgpKTsK
IH0KIAogdm9pZCBSZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpzZXRDVE0oY29uc3QgQWZmaW5lVHJh
bnNmb3JtJiBtYXRyaXgpCiB7Ci0gICAgc3RkOjpvcHRpb25hbDxBZmZpbmVUcmFuc2Zvcm0+IGlu
dmVyc2VUcmFuc2Zvcm1Gb3JDbGlwQm91bmRzOwotICAgIGlmIChhdXRvIG9yaWdpbmFsQ1RNSW52
ZXJzZSA9IGN0bS5pbnZlcnNlKCkpCi0gICAgICAgIGludmVyc2VUcmFuc2Zvcm1Gb3JDbGlwQm91
bmRzID0gb3JpZ2luYWxDVE1JbnZlcnNlLT5tdWx0aXBseShtYXRyaXgpLmludmVyc2UoKTsKLQog
ICAgIGN0bSA9IG1hdHJpeDsKLQotICAgIGlmIChpbnZlcnNlVHJhbnNmb3JtRm9yQ2xpcEJvdW5k
cykKLSAgICAgICAgY2xpcEJvdW5kcyA9IGludmVyc2VUcmFuc2Zvcm1Gb3JDbGlwQm91bmRzLT5t
YXBSZWN0KGNsaXBCb3VuZHMpOwogfQogCiB2b2lkIFJlY29yZGVyOjpDb250ZXh0U3RhdGU6OmNv
bmNhdENUTShjb25zdCBBZmZpbmVUcmFuc2Zvcm0mIG1hdHJpeCkKIHsKICAgICBjdG0gKj0gbWF0
cml4OwotCi0gICAgaWYgKHN0ZDo6b3B0aW9uYWw8QWZmaW5lVHJhbnNmb3JtPiBpbnZlcnNlID0g
bWF0cml4LmludmVyc2UoKSkKLSAgICAgICAgY2xpcEJvdW5kcyA9IGludmVyc2UudmFsdWUoKS5t
YXBSZWN0KGNsaXBCb3VuZHMpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBEaXNwbGF5TGlzdApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rp
c3BsYXlMaXN0UmVjb3JkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rp
c3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmgKaW5kZXggMDYwNWQ2ZjI0YmY0NTMyNDdh
NGE4ZTg4ZmUzYmRjMjYwNzc2MDc0NC4uOWE4NGQyNWM5Y2E4NWZmZDMwYzEzYjllZWVkN2ZlYjBm
YTk2M2I2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlz
cGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oCkBAIC0yNTMs
NyArMjUzLDcgQEAgcHJpdmF0ZToKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNjYWxlKGNvbnN0
IEZsb2F0U2l6ZSYpIGZpbmFsOwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgY29uY2F0Q1RNKGNv
bnN0IEFmZmluZVRyYW5zZm9ybSYpIGZpbmFsOwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0
Q1RNKGNvbnN0IEFmZmluZVRyYW5zZm9ybSYpIGZpbmFsOwotICAgIFdFQkNPUkVfRVhQT1JUIEFm
ZmluZVRyYW5zZm9ybSBnZXRDVE0oR3JhcGhpY3NDb250ZXh0OjpJbmNsdWRlRGV2aWNlU2NhbGUp
IGNvbnN0IGZpbmFsOworICAgIFdFQkNPUkVfRVhQT1JUIEFmZmluZVRyYW5zZm9ybSBnZXRDVE0o
R3JhcGhpY3NDb250ZXh0OjpJbmNsdWRlRGV2aWNlU2NhbGUgPSBQb3NzaWJseUluY2x1ZGVEZXZp
Y2VTY2FsZSkgY29uc3QgZmluYWw7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGJlZ2luVHJh
bnNwYXJlbmN5TGF5ZXIoZmxvYXQgb3BhY2l0eSkgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQg
dm9pZCBlbmRUcmFuc3BhcmVuY3lMYXllcigpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9BZmZpbmVUcmFuc2Zvcm0uaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMvQWZmaW5lVHJhbnNmb3Jt
LmgKaW5kZXggOTJlMzhiMWEwMzA2ZWM5MTU3Y2E2YzNlODY5ZjVmMWU5N2NkMTI4My4uYTAyNzVh
ZDNmNzBmZTQ4M2Y1MzY2ZmY0YWUzOGRjZGViNjJlZDg3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9BZmZpbmVUcmFuc2Zvcm0uaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL0FmZmluZVRyYW5z
Zm9ybS5oCkBAIC0xMzIsNyArMTMyLDcgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIGRv
dWJsZSB4U2NhbGUoKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9SVCBkb3VibGUgeVNjYWxlKCkg
Y29uc3Q7CiAKLSAgICBib29sIGlzSW52ZXJ0aWJsZSgpIGNvbnN0OyAvLyBJZiB5b3UgY2FsbCB0
aGlzIHRoaXMsIHlvdSdyZSBwcm9iYWJseSBkb2luZyBpdCB3cm9uZy4KKyAgICBib29sIGlzSW52
ZXJ0aWJsZSgpIGNvbnN0OyAvLyBJZiB5b3UgY2FsbCB0aGlzLCB5b3UncmUgcHJvYmFibHkgZG9p
bmcgaXQgd3JvbmcuCiAgICAgV0VCQ09SRV9FWFBPUlQgc3RkOjpvcHRpb25hbDxBZmZpbmVUcmFu
c2Zvcm0+IGludmVyc2UoKSBjb25zdDsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgYmxlbmQo
Y29uc3QgQWZmaW5lVHJhbnNmb3JtJiBmcm9tLCBkb3VibGUgcHJvZ3Jlc3MsIENvbXBvc2l0ZU9w
ZXJhdGlvbiA9IENvbXBvc2l0ZU9wZXJhdGlvbjo6UmVwbGFjZSk7CmRpZmYgLS1naXQgYS9Ub29s
cy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZWY3OTIzZjkzNGUzZWNjMGFjNWYy
NmMxN2FlNGEyMWFiY2JmMWJhZS4uNTE4ZWM2MTViYmUyZTI1ZWU1MzExMzM3MTVmNDY2YjRjZjg1
MjBiMiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE1IEBACisyMDIxLTEwLTIyICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25A
YXBwbGUuY29tPgorCisgICAgICAgIERpc3BsYXlMaXN0OjpSZWNvcmRlcidzIGNsaXBCb3VuZHMo
KSBiZWNvbWVzIGVtcHR5IGlmIGEgZmxpcCBpcyBhcHBsaWVkIHRvIHRoZSBDVE0KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMjEzNAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJDb3JlL2NnL0JpZnVyY2F0ZWRHcmFwaGljc0NvbnRleHRUZXN0c0NHLmNwcDoKKyAg
ICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorICAgICAgICBBZGQgYSB0ZXN0IGVuc3VyaW5n
IHRoYXQgb3VyIGNsaXBCb3VuZHMgYW5kIENHJ3MgbWF0Y2ggdGhyb3VnaCBhIHNlcmllcworICAg
ICAgICBvZiBzaW1wbGUgdHJhbnNmb3Jtcy4KKwogMjAyMS0xMC0yMiAgQ2FybG9zIEdhcmNpYSBD
YW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS11bYTExeV0gQWRkIGlt
cGxlbWVudGF0aW9uIG9mIHRleHQgaW50ZXJmYWNlIHdoZW4gYnVpbGRpbmcgd2l0aCBBVFNQSQpk
aWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL2NnL0JpZnVyY2F0
ZWRHcmFwaGljc0NvbnRleHRUZXN0c0NHLmNwcCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViQ29yZS9jZy9CaWZ1cmNhdGVkR3JhcGhpY3NDb250ZXh0VGVzdHNDRy5jcHAKaW5kZXggNjAz
YmQ3NWY1MTY1NWNmY2VjOWEzYjljM2Q1MTAxZGYxYzMxNWU2MC4uZDRmNTRlZWYyYjhmZmIyZTg2
MDcwNmVhNjFkZTgzYTc0YzQxNWMzZSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJDb3JlL2NnL0JpZnVyY2F0ZWRHcmFwaGljc0NvbnRleHRUZXN0c0NHLmNwcAorKysg
Yi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvY2cvQmlmdXJjYXRlZEdyYXBoaWNz
Q29udGV4dFRlc3RzQ0cuY3BwCkBAIC0yMTksNiArMjE5LDYwIEBAIFRFU1QoQmlmdXJjYXRlZEdy
YXBoaWNzQ29udGV4dFRlc3RzLCBCb3JkZXJzKQogICAgIEVYUEVDVF9FUShwcmltYXJ5RGF0YVsz
XSwgMjU1KTsKIH0KIAorVEVTVChCaWZ1cmNhdGVkR3JhcGhpY3NDb250ZXh0VGVzdHMsIFRyYW5z
Zm9ybWVkQ2xpcCkKK3sKKyAgICBhdXRvIGNvbG9yU3BhY2UgPSBEZXN0aW5hdGlvbkNvbG9yU3Bh
Y2U6OlNSR0IoKTsKKyAgICBhdXRvIHByaW1hcnlDR0NvbnRleHQgPSBhZG9wdENGKENHQml0bWFw
Q29udGV4dENyZWF0ZShudWxscHRyLCAxMDAsIDEwMCwgOCwgNCAqIDEwMCwgY29sb3JTcGFjZS5w
bGF0Zm9ybUNvbG9yU3BhY2UoKSwga0NHSW1hZ2VBbHBoYVByZW11bHRpcGxpZWRMYXN0KSk7CisK
KyAgICBHcmFwaGljc0NvbnRleHRDRyBwcmltYXJ5Q29udGV4dENHKHByaW1hcnlDR0NvbnRleHQu
Z2V0KCkpOworICAgIEdyYXBoaWNzQ29udGV4dCYgcHJpbWFyeUNvbnRleHQgPSBwcmltYXJ5Q29u
dGV4dENHOworCisgICAgSW5NZW1vcnlEaXNwbGF5TGlzdCBkaXNwbGF5TGlzdDsKKyAgICBSZWNv
cmRlckltcGwgc2Vjb25kYXJ5Q29udGV4dERMKGRpc3BsYXlMaXN0LCB7IH0sIEZsb2F0UmVjdCgw
LCAwLCAxMDAsIDEwMCksIHsgfSk7CisgICAgR3JhcGhpY3NDb250ZXh0JiBzZWNvbmRhcnlDb250
ZXh0ID0gc2Vjb25kYXJ5Q29udGV4dERMOworCisgICAgQmlmdXJjYXRlZEdyYXBoaWNzQ29udGV4
dCBjdHgocHJpbWFyeUNvbnRleHQsIHNlY29uZGFyeUNvbnRleHQpOworCisgICAgY3R4LmNsaXAo
RmxvYXRSZWN0KDI1LCAyNSwgNTAsIDUwKSk7CisKKyAgICBFWFBFQ1RfRVEocHJpbWFyeUNvbnRl
eHQuY2xpcEJvdW5kcygpLCBzZWNvbmRhcnlDb250ZXh0LmNsaXBCb3VuZHMoKSk7CisgICAgRVhQ
RUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgRmxvYXRSZWN0KDI1LCAyNSwgNTAs
IDUwKSk7CisKKyAgICBjdHguc2NhbGUoeyAxLCAtMSB9KTsKKyAgICBjdHgudHJhbnNsYXRlKDAs
IC0xMDApOworCisgICAgRVhQRUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgc2Vj
b25kYXJ5Q29udGV4dC5jbGlwQm91bmRzKCkpOworICAgIEVYUEVDVF9FUShwcmltYXJ5Q29udGV4
dC5jbGlwQm91bmRzKCksIEZsb2F0UmVjdCgyNSwgMjUsIDUwLCA1MCkpOworCisgICAgY3R4LnNj
YWxlKDIpOworCisgICAgRVhQRUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgc2Vj
b25kYXJ5Q29udGV4dC5jbGlwQm91bmRzKCkpOworICAgIEVYUEVDVF9FUShwcmltYXJ5Q29udGV4
dC5jbGlwQm91bmRzKCksIEZsb2F0UmVjdCgxMiwgMTIsIDI2LCAyNikpOworCisgICAgeworICAg
ICAgICBHcmFwaGljc0NvbnRleHRTdGF0ZVNhdmVyIHNhdmVyKGN0eCk7CisKKyAgICAgICAgY3R4
LnRyYW5zbGF0ZSgxMiwgMTIpOworCisgICAgICAgIEVYUEVDVF9FUShwcmltYXJ5Q29udGV4dC5j
bGlwQm91bmRzKCksIHNlY29uZGFyeUNvbnRleHQuY2xpcEJvdW5kcygpKTsKKyAgICAgICAgRVhQ
RUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgRmxvYXRSZWN0KDAsIDAsIDI2LCAy
NikpOworCisgICAgICAgIGN0eC5jbGlwKEZsb2F0UmVjdCgwLCAwLCAxMCwgMTApKTsKKworICAg
ICAgICBFWFBFQ1RfRVEocHJpbWFyeUNvbnRleHQuY2xpcEJvdW5kcygpLCBzZWNvbmRhcnlDb250
ZXh0LmNsaXBCb3VuZHMoKSk7CisgICAgICAgIEVYUEVDVF9FUShwcmltYXJ5Q29udGV4dC5jbGlw
Qm91bmRzKCksIEZsb2F0UmVjdCgwLCAwLCAxMCwgMTApKTsKKyAgICB9CisKKyAgICBFWFBFQ1Rf
RVEocHJpbWFyeUNvbnRleHQuY2xpcEJvdW5kcygpLCBzZWNvbmRhcnlDb250ZXh0LmNsaXBCb3Vu
ZHMoKSk7CisgICAgRVhQRUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgRmxvYXRS
ZWN0KDEyLCAxMiwgMjYsIDI2KSk7CisKKyAgICAvLyBNYWtlIHRoZSBDVE0gbm9uLWludmVydGli
bGUuCisgICAgY3R4LnNjYWxlKHsgMCwgMSB9KTsKKworICAgIEVYUEVDVF9FUShwcmltYXJ5Q29u
dGV4dC5jbGlwQm91bmRzKCksIHNlY29uZGFyeUNvbnRleHQuY2xpcEJvdW5kcygpKTsKKyAgICBF
WFBFQ1RfRVEocHJpbWFyeUNvbnRleHQuY2xpcEJvdW5kcygpLCBGbG9hdFJlY3QoMjUsIDI1LCA1
MCwgNTApKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgVGVzdFdlYktpdEFQSQogCiAjZW5kaWYgLy8g
VVNFKENHKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>442215</attachid>
            <date>2021-10-22 16:18:19 -0700</date>
            <delta_ts>2021-10-22 16:34:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232134-20211022161818.patch</filename>
            <type>text/plain</type>
            <size>7726</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0Njc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGI2NmIxMmUxYmI2YTQx
YjhkMDJjMGUzZmU2MmUxMmYwODQzZGFjNS4uZDc4NDMxMTI4ZTU3ZjY3NmM4ZTZhNmU5M2JjZjY0
NzI4YTEzM2QyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDIxLTEwLTIyICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIERpc3BsYXlMaXN0
OjpSZWNvcmRlcidzIGNsaXBCb3VuZHMoKSBiZWNvbWVzIGVtcHR5IGlmIGEgZmxpcCBpcyBhcHBs
aWVkIHRvIHRoZSBDVE0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzMjEzNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIE5ldyB0ZXN0OiBCaWZ1cmNhdGVkR3JhcGhpY3NDb250ZXh0VGVzdHMuVHJhbnNmb3Jt
ZWRDbGlwCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3RSZWNvcmRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6UmVjb3Jk
ZXI6OmNsaXApOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVyOjpjbGlw
UGF0aCk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6OmNsaXBCb3Vu
ZHMgY29uc3QpOgorICAgICAgICBJbnN0ZWFkIG9mIHVwZGF0aW5nIGNsaXBCb3VuZHMgYW55IHRp
bWUgdGhlIENUTSBjaGFuZ2VzLCBzdG9yZQorICAgICAgICBjbGlwQm91bmRzIGluIGJhc2UgY29v
cmRpbmF0ZXMgYW5kIG1hcCB0aHJvdWdoIHRoZSBDVE0gd2hlbiByZXRyaWV2ZWQuCisKKyAgICAg
ICAgVGhpcyBtYXRjaGVzIENHJ3MgYmVoYXZpb3IgYW5kIG1ha2VzIHRoZSBjbGlwQm91bmRzIG11
Y2ggc3R1cmRpZXIuCisgICAgICAgIEZvciBleGFtcGxlLCBwcmV2aW91c2x5LCBhcHBseWluZyBh
IGBzY2FsZSgxLCAtMSlgIHRvIHRoZSBjb250ZXh0CisgICAgICAgIHdvdWxkIGltbWVkaWF0ZWx5
IHJlc3VsdCBpbiB0aGUgY2xpcEJvdW5kcycgaGVpZ2h0IGJlY29taW5nIG5lZ2F0aXZlLAorICAg
ICAgICBtYWtpbmcgdGhlIGJvdW5kcyBlbXB0eSBhbmQgY29uZnVzaW5nIGFueXRoaW5nIHRoYXQg
cmVhZHMgZnJvbSBpdC4KKworICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVy
OjpDb250ZXh0U3RhdGU6OnRyYW5zbGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlz
dDo6UmVjb3JkZXI6OkNvbnRleHRTdGF0ZTo6cm90YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRp
c3BsYXlMaXN0OjpSZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpzY2FsZSk6CisgICAgICAgIChXZWJD
b3JlOjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6OkNvbnRleHRTdGF0ZTo6c2V0Q1RNKToKKyAgICAg
ICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpSZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpjb25jYXRD
VE0pOgorICAgICAgICBTdG9wIHVwZGF0aW5nIHRoZSBjbGlwQm91bmRzIHdoZW4gdGhlIENUTSBj
aGFuZ2VzLCB0aGlzIGlzIG5vIGxvbmdlciBuZWNlc3NhcnkuCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlckltcGwuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVySW1wbDo6ZXh0ZW50RnJvbUxvY2Fs
Qm91bmRzKToKKyAgICAgICAgU2luY2UgdGhlIGNsaXBCb3VuZHMgaXMgbm93IGluIGJhc2Ugc3Bh
Y2UsIG1hcCB0aGUgZGlzcGxheSBsaXN0CisgICAgICAgIGl0ZW0gYm91bmRzIHRvIGJhc2Ugc3Bh
Y2UgL2JlZm9yZS8gaW50ZXJzZWN0aW5nIGl0IHdpdGggY2xpcEJvdW5kcy4KKworICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmg6Cisg
ICAgICAgIERyaXZlLWJ5IGFkZCBhIGRlZmF1bHQgcGFyYW1ldGVyIHNvIGdldENUTSBjYW4gYmUg
Y2FsbGVkIG9uIHRoZSBzdWJjbGFzcyB0aGUgc2FtZSB3YXkgaXQgY2FuIG9uIEdyYXBoaWNzQ29u
dGV4dC4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMvQWZmaW5lVHJh
bnNmb3JtLmg6IEZpeCBhIHR5cG8uCisKIDIwMjEtMTAtMjIgIENhcmxvcyBHYXJjaWEgQ2FtcG9z
ICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdW2ExMXldIEFkZCBpbXBsZW1l
bnRhdGlvbiBvZiB0ZXh0IGludGVyZmFjZSB3aGVuIGJ1aWxkaW5nIHdpdGggQVRTUEkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNw
bGF5TGlzdFJlY29yZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rp
c3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmNwcAppbmRleCA0Nzc5NDIxZjQzZDZjYTkw
OTNmYmM1ZjVmMzMyZmY0MDk5YTUzYTYxLi4zNTJkOGMwYmE2M2I5NzYzYWQ0NzI5ZjIzYzMyMWE4
YmE1MDM2NWQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9k
aXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuY3BwCkBA
IC00MjQsNyArNDI0LDcgQEAgdm9pZCBSZWNvcmRlcjo6YXBwbHlGaWxsUGF0dGVybigpCiAKIHZv
aWQgUmVjb3JkZXI6OmNsaXAoY29uc3QgRmxvYXRSZWN0JiByZWN0KQogewotICAgIGN1cnJlbnRT
dGF0ZSgpLmNsaXBCb3VuZHMuaW50ZXJzZWN0KHJlY3QpOworICAgIGN1cnJlbnRTdGF0ZSgpLmNs
aXBCb3VuZHMuaW50ZXJzZWN0KGN1cnJlbnRTdGF0ZSgpLmN0bS5tYXBSZWN0KHJlY3QpKTsKICAg
ICByZWNvcmRDbGlwKHJlY3QpOwogfQogCkBAIC00NDAsMTIgKzQ0MCwxNyBAQCB2b2lkIFJlY29y
ZGVyOjpjbGlwT3V0KGNvbnN0IFBhdGgmIHBhdGgpCiAKIHZvaWQgUmVjb3JkZXI6OmNsaXBQYXRo
KGNvbnN0IFBhdGgmIHBhdGgsIFdpbmRSdWxlIHdpbmRSdWxlKQogewotICAgIGN1cnJlbnRTdGF0
ZSgpLmNsaXBCb3VuZHMuaW50ZXJzZWN0KHBhdGguZmFzdEJvdW5kaW5nUmVjdCgpKTsKKyAgICBj
dXJyZW50U3RhdGUoKS5jbGlwQm91bmRzLmludGVyc2VjdChjdXJyZW50U3RhdGUoKS5jdG0ubWFw
UmVjdChwYXRoLmZhc3RCb3VuZGluZ1JlY3QoKSkpOwogICAgIHJlY29yZENsaXBQYXRoKHBhdGgs
IHdpbmRSdWxlKTsKIH0KIAogSW50UmVjdCBSZWNvcmRlcjo6Y2xpcEJvdW5kcygpIGNvbnN0CiB7
CisgICAgaWYgKHN0ZDo6b3B0aW9uYWw8QWZmaW5lVHJhbnNmb3JtPiBpbnZlcnNlID0gY3VycmVu
dFN0YXRlKCkuY3RtLmludmVyc2UoKSkKKyAgICAgICAgcmV0dXJuIGVuY2xvc2luZ0ludFJlY3Qo
aW52ZXJzZS0+bWFwUmVjdChjdXJyZW50U3RhdGUoKS5jbGlwQm91bmRzKSk7CisKKyAgICAvLyBJ
ZiB0aGUgQ1RNIGlzIG5vdCBpbnZlcnRpYmxlLCByZXR1cm4gdGhlIG9yaWdpbmFsIHJlY3QuCisg
ICAgLy8gVGhpcyBtYXRjaGVzIENHUmVjdEFwcGx5SW52ZXJzZUFmZmluZVRyYW5zZm9ybSBiZWhh
dmlvci4KICAgICByZXR1cm4gZW5jbG9zaW5nSW50UmVjdChjdXJyZW50U3RhdGUoKS5jbGlwQm91
bmRzKTsKIH0KIApAQCAtNTIxLDcgKzUyNiw2IEBAIGNvbnN0IEFmZmluZVRyYW5zZm9ybSYgUmVj
b3JkZXI6OmN0bSgpIGNvbnN0CiB2b2lkIFJlY29yZGVyOjpDb250ZXh0U3RhdGU6OnRyYW5zbGF0
ZShmbG9hdCB4LCBmbG9hdCB5KQogewogICAgIGN0bS50cmFuc2xhdGUoeCwgeSk7Ci0gICAgY2xp
cEJvdW5kcy5tb3ZlKC14LCAteSk7CiB9CiAKIHZvaWQgUmVjb3JkZXI6OkNvbnRleHRTdGF0ZTo6
cm90YXRlKGZsb2F0IGFuZ2xlSW5SYWRpYW5zKQpAQCAtNTMxLDM1ICs1MzUsMjEgQEAgdm9pZCBS
ZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpyb3RhdGUoZmxvYXQgYW5nbGVJblJhZGlhbnMpCiAgICAg
CiAgICAgQWZmaW5lVHJhbnNmb3JtIHJvdGF0aW9uOwogICAgIHJvdGF0aW9uLnJvdGF0ZShhbmds
ZUluRGVncmVlcyk7Ci0KLSAgICBpZiAoc3RkOjpvcHRpb25hbDxBZmZpbmVUcmFuc2Zvcm0+IGlu
dmVyc2UgPSByb3RhdGlvbi5pbnZlcnNlKCkpCi0gICAgICAgIGNsaXBCb3VuZHMgPSBpbnZlcnNl
LnZhbHVlKCkubWFwUmVjdChjbGlwQm91bmRzKTsKIH0KIAogdm9pZCBSZWNvcmRlcjo6Q29udGV4
dFN0YXRlOjpzY2FsZShjb25zdCBGbG9hdFNpemUmIHNpemUpCiB7CiAgICAgY3RtLnNjYWxlKHNp
emUpOwotICAgIGNsaXBCb3VuZHMuc2NhbGUoMSAvIHNpemUud2lkdGgoKSwgMSAvIHNpemUuaGVp
Z2h0KCkpOwogfQogCiB2b2lkIFJlY29yZGVyOjpDb250ZXh0U3RhdGU6OnNldENUTShjb25zdCBB
ZmZpbmVUcmFuc2Zvcm0mIG1hdHJpeCkKIHsKLSAgICBzdGQ6Om9wdGlvbmFsPEFmZmluZVRyYW5z
Zm9ybT4gaW52ZXJzZVRyYW5zZm9ybUZvckNsaXBCb3VuZHM7Ci0gICAgaWYgKGF1dG8gb3JpZ2lu
YWxDVE1JbnZlcnNlID0gY3RtLmludmVyc2UoKSkKLSAgICAgICAgaW52ZXJzZVRyYW5zZm9ybUZv
ckNsaXBCb3VuZHMgPSBvcmlnaW5hbENUTUludmVyc2UtPm11bHRpcGx5KG1hdHJpeCkuaW52ZXJz
ZSgpOwotCiAgICAgY3RtID0gbWF0cml4OwotCi0gICAgaWYgKGludmVyc2VUcmFuc2Zvcm1Gb3JD
bGlwQm91bmRzKQotICAgICAgICBjbGlwQm91bmRzID0gaW52ZXJzZVRyYW5zZm9ybUZvckNsaXBC
b3VuZHMtPm1hcFJlY3QoY2xpcEJvdW5kcyk7CiB9CiAKIHZvaWQgUmVjb3JkZXI6OkNvbnRleHRT
dGF0ZTo6Y29uY2F0Q1RNKGNvbnN0IEFmZmluZVRyYW5zZm9ybSYgbWF0cml4KQogewogICAgIGN0
bSAqPSBtYXRyaXg7Ci0KLSAgICBpZiAoc3RkOjpvcHRpb25hbDxBZmZpbmVUcmFuc2Zvcm0+IGlu
dmVyc2UgPSBtYXRyaXguaW52ZXJzZSgpKQotICAgICAgICBjbGlwQm91bmRzID0gaW52ZXJzZS52
YWx1ZSgpLm1hcFJlY3QoY2xpcEJvdW5kcyk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIERpc3BsYXlM
aXN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5
bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuaAppbmRleCAwNjA1ZDZmMjRi
ZjQ1MzI0N2E0YThlODhmZTNiZGMyNjA3NzYwNzQ0Li45YTg0ZDI1YzljYTg1ZmZkMzBjMTNiOWVl
ZWQ3ZmViMGZhOTYzYjYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmgK
QEAgLTI1Myw3ICsyNTMsNyBAQCBwcml2YXRlOgogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2Nh
bGUoY29uc3QgRmxvYXRTaXplJikgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBjb25j
YXRDVE0oY29uc3QgQWZmaW5lVHJhbnNmb3JtJikgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQg
dm9pZCBzZXRDVE0oY29uc3QgQWZmaW5lVHJhbnNmb3JtJikgZmluYWw7Ci0gICAgV0VCQ09SRV9F
WFBPUlQgQWZmaW5lVHJhbnNmb3JtIGdldENUTShHcmFwaGljc0NvbnRleHQ6OkluY2x1ZGVEZXZp
Y2VTY2FsZSkgY29uc3QgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgQWZmaW5lVHJhbnNmb3Jt
IGdldENUTShHcmFwaGljc0NvbnRleHQ6OkluY2x1ZGVEZXZpY2VTY2FsZSA9IFBvc3NpYmx5SW5j
bHVkZURldmljZVNjYWxlKSBjb25zdCBmaW5hbDsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQg
YmVnaW5UcmFuc3BhcmVuY3lMYXllcihmbG9hdCBvcGFjaXR5KSBmaW5hbDsKICAgICBXRUJDT1JF
X0VYUE9SVCB2b2lkIGVuZFRyYW5zcGFyZW5jeUxheWVyKCkgZmluYWw7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RS
ZWNvcmRlckltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxh
eWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXJJbXBsLmNwcAppbmRleCBmNDc0MzI0ZmQ3MzFiMmM3
OTVmZmMxNjgzZWFmZTE4YzE2OGZiN2E1Li4xYTFlZTJmZjA3OTc5OTAxZmI5MWE2OWRjN2ZhYzE1
YTFlZmEzYzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9k
aXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlckltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVySW1w
bC5jcHAKQEAgLTQ1Niw4ICs0NTYsNyBAQCBGbG9hdFJlY3QgUmVjb3JkZXJJbXBsOjpleHRlbnRG
cm9tTG9jYWxCb3VuZHMoY29uc3QgRmxvYXRSZWN0JiByZWN0KSBjb25zdAogICAgICAgICBib3Vu
ZHMudW5pdGUoc2hhZG93RXh0ZW50KTsKICAgICB9CiAKLSAgICBGbG9hdFJlY3QgY2xpcHBlZEV4
dGVudCA9IGludGVyc2VjdGlvbihzdGF0ZS5jbGlwQm91bmRzLCBib3VuZHMpOwotICAgIHJldHVy
biBzdGF0ZS5jdG0ubWFwUmVjdChjbGlwcGVkRXh0ZW50KTsKKyAgICByZXR1cm4gaW50ZXJzZWN0
aW9uKHN0YXRlLmNsaXBCb3VuZHMsIHN0YXRlLmN0bS5tYXBSZWN0KGJvdW5kcykpOwogfQogCiB9
IC8vIG5hbWVzcGFjZSBEaXNwbGF5TGlzdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9BZmZpbmVUcmFuc2Zvcm0uaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMvQWZmaW5lVHJhbnNmb3JtLmgKaW5kZXgg
OTJlMzhiMWEwMzA2ZWM5MTU3Y2E2YzNlODY5ZjVmMWU5N2NkMTI4My4uYTAyNzVhZDNmNzBmZTQ4
M2Y1MzY2ZmY0YWUzOGRjZGViNjJlZDg3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9BZmZpbmVUcmFuc2Zvcm0uaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL0FmZmluZVRyYW5zZm9ybS5oCkBA
IC0xMzIsNyArMTMyLDcgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIGRvdWJsZSB4U2Nh
bGUoKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9SVCBkb3VibGUgeVNjYWxlKCkgY29uc3Q7CiAK
LSAgICBib29sIGlzSW52ZXJ0aWJsZSgpIGNvbnN0OyAvLyBJZiB5b3UgY2FsbCB0aGlzIHRoaXMs
IHlvdSdyZSBwcm9iYWJseSBkb2luZyBpdCB3cm9uZy4KKyAgICBib29sIGlzSW52ZXJ0aWJsZSgp
IGNvbnN0OyAvLyBJZiB5b3UgY2FsbCB0aGlzLCB5b3UncmUgcHJvYmFibHkgZG9pbmcgaXQgd3Jv
bmcuCiAgICAgV0VCQ09SRV9FWFBPUlQgc3RkOjpvcHRpb25hbDxBZmZpbmVUcmFuc2Zvcm0+IGlu
dmVyc2UoKSBjb25zdDsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgYmxlbmQoY29uc3QgQWZm
aW5lVHJhbnNmb3JtJiBmcm9tLCBkb3VibGUgcHJvZ3Jlc3MsIENvbXBvc2l0ZU9wZXJhdGlvbiA9
IENvbXBvc2l0ZU9wZXJhdGlvbjo6UmVwbGFjZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>442220</attachid>
            <date>2021-10-22 16:34:10 -0700</date>
            <delta_ts>2021-10-26 11:54:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232134-20211022163409.patch</filename>
            <type>text/plain</type>
            <size>11361</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0Njc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGI2NmIxMmUxYmI2YTQx
YjhkMDJjMGUzZmU2MmUxMmYwODQzZGFjNS4uZDc4NDMxMTI4ZTU3ZjY3NmM4ZTZhNmU5M2JjZjY0
NzI4YTEzM2QyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDIxLTEwLTIyICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIERpc3BsYXlMaXN0
OjpSZWNvcmRlcidzIGNsaXBCb3VuZHMoKSBiZWNvbWVzIGVtcHR5IGlmIGEgZmxpcCBpcyBhcHBs
aWVkIHRvIHRoZSBDVE0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzMjEzNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIE5ldyB0ZXN0OiBCaWZ1cmNhdGVkR3JhcGhpY3NDb250ZXh0VGVzdHMuVHJhbnNmb3Jt
ZWRDbGlwCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3RSZWNvcmRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6UmVjb3Jk
ZXI6OmNsaXApOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVyOjpjbGlw
UGF0aCk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6OmNsaXBCb3Vu
ZHMgY29uc3QpOgorICAgICAgICBJbnN0ZWFkIG9mIHVwZGF0aW5nIGNsaXBCb3VuZHMgYW55IHRp
bWUgdGhlIENUTSBjaGFuZ2VzLCBzdG9yZQorICAgICAgICBjbGlwQm91bmRzIGluIGJhc2UgY29v
cmRpbmF0ZXMgYW5kIG1hcCB0aHJvdWdoIHRoZSBDVE0gd2hlbiByZXRyaWV2ZWQuCisKKyAgICAg
ICAgVGhpcyBtYXRjaGVzIENHJ3MgYmVoYXZpb3IgYW5kIG1ha2VzIHRoZSBjbGlwQm91bmRzIG11
Y2ggc3R1cmRpZXIuCisgICAgICAgIEZvciBleGFtcGxlLCBwcmV2aW91c2x5LCBhcHBseWluZyBh
IGBzY2FsZSgxLCAtMSlgIHRvIHRoZSBjb250ZXh0CisgICAgICAgIHdvdWxkIGltbWVkaWF0ZWx5
IHJlc3VsdCBpbiB0aGUgY2xpcEJvdW5kcycgaGVpZ2h0IGJlY29taW5nIG5lZ2F0aXZlLAorICAg
ICAgICBtYWtpbmcgdGhlIGJvdW5kcyBlbXB0eSBhbmQgY29uZnVzaW5nIGFueXRoaW5nIHRoYXQg
cmVhZHMgZnJvbSBpdC4KKworICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVy
OjpDb250ZXh0U3RhdGU6OnRyYW5zbGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlz
dDo6UmVjb3JkZXI6OkNvbnRleHRTdGF0ZTo6cm90YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRp
c3BsYXlMaXN0OjpSZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpzY2FsZSk6CisgICAgICAgIChXZWJD
b3JlOjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6OkNvbnRleHRTdGF0ZTo6c2V0Q1RNKToKKyAgICAg
ICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpSZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpjb25jYXRD
VE0pOgorICAgICAgICBTdG9wIHVwZGF0aW5nIHRoZSBjbGlwQm91bmRzIHdoZW4gdGhlIENUTSBj
aGFuZ2VzLCB0aGlzIGlzIG5vIGxvbmdlciBuZWNlc3NhcnkuCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlckltcGwuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVySW1wbDo6ZXh0ZW50RnJvbUxvY2Fs
Qm91bmRzKToKKyAgICAgICAgU2luY2UgdGhlIGNsaXBCb3VuZHMgaXMgbm93IGluIGJhc2Ugc3Bh
Y2UsIG1hcCB0aGUgZGlzcGxheSBsaXN0CisgICAgICAgIGl0ZW0gYm91bmRzIHRvIGJhc2Ugc3Bh
Y2UgL2JlZm9yZS8gaW50ZXJzZWN0aW5nIGl0IHdpdGggY2xpcEJvdW5kcy4KKworICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmg6Cisg
ICAgICAgIERyaXZlLWJ5IGFkZCBhIGRlZmF1bHQgcGFyYW1ldGVyIHNvIGdldENUTSBjYW4gYmUg
Y2FsbGVkIG9uIHRoZSBzdWJjbGFzcyB0aGUgc2FtZSB3YXkgaXQgY2FuIG9uIEdyYXBoaWNzQ29u
dGV4dC4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMvQWZmaW5lVHJh
bnNmb3JtLmg6IEZpeCBhIHR5cG8uCisKIDIwMjEtMTAtMjIgIENhcmxvcyBHYXJjaWEgQ2FtcG9z
ICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdW2ExMXldIEFkZCBpbXBsZW1l
bnRhdGlvbiBvZiB0ZXh0IGludGVyZmFjZSB3aGVuIGJ1aWxkaW5nIHdpdGggQVRTUEkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNw
bGF5TGlzdFJlY29yZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rp
c3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmNwcAppbmRleCA0Nzc5NDIxZjQzZDZjYTkw
OTNmYmM1ZjVmMzMyZmY0MDk5YTUzYTYxLi4zNTJkOGMwYmE2M2I5NzYzYWQ0NzI5ZjIzYzMyMWE4
YmE1MDM2NWQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9k
aXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuY3BwCkBA
IC00MjQsNyArNDI0LDcgQEAgdm9pZCBSZWNvcmRlcjo6YXBwbHlGaWxsUGF0dGVybigpCiAKIHZv
aWQgUmVjb3JkZXI6OmNsaXAoY29uc3QgRmxvYXRSZWN0JiByZWN0KQogewotICAgIGN1cnJlbnRT
dGF0ZSgpLmNsaXBCb3VuZHMuaW50ZXJzZWN0KHJlY3QpOworICAgIGN1cnJlbnRTdGF0ZSgpLmNs
aXBCb3VuZHMuaW50ZXJzZWN0KGN1cnJlbnRTdGF0ZSgpLmN0bS5tYXBSZWN0KHJlY3QpKTsKICAg
ICByZWNvcmRDbGlwKHJlY3QpOwogfQogCkBAIC00NDAsMTIgKzQ0MCwxNyBAQCB2b2lkIFJlY29y
ZGVyOjpjbGlwT3V0KGNvbnN0IFBhdGgmIHBhdGgpCiAKIHZvaWQgUmVjb3JkZXI6OmNsaXBQYXRo
KGNvbnN0IFBhdGgmIHBhdGgsIFdpbmRSdWxlIHdpbmRSdWxlKQogewotICAgIGN1cnJlbnRTdGF0
ZSgpLmNsaXBCb3VuZHMuaW50ZXJzZWN0KHBhdGguZmFzdEJvdW5kaW5nUmVjdCgpKTsKKyAgICBj
dXJyZW50U3RhdGUoKS5jbGlwQm91bmRzLmludGVyc2VjdChjdXJyZW50U3RhdGUoKS5jdG0ubWFw
UmVjdChwYXRoLmZhc3RCb3VuZGluZ1JlY3QoKSkpOwogICAgIHJlY29yZENsaXBQYXRoKHBhdGgs
IHdpbmRSdWxlKTsKIH0KIAogSW50UmVjdCBSZWNvcmRlcjo6Y2xpcEJvdW5kcygpIGNvbnN0CiB7
CisgICAgaWYgKHN0ZDo6b3B0aW9uYWw8QWZmaW5lVHJhbnNmb3JtPiBpbnZlcnNlID0gY3VycmVu
dFN0YXRlKCkuY3RtLmludmVyc2UoKSkKKyAgICAgICAgcmV0dXJuIGVuY2xvc2luZ0ludFJlY3Qo
aW52ZXJzZS0+bWFwUmVjdChjdXJyZW50U3RhdGUoKS5jbGlwQm91bmRzKSk7CisKKyAgICAvLyBJ
ZiB0aGUgQ1RNIGlzIG5vdCBpbnZlcnRpYmxlLCByZXR1cm4gdGhlIG9yaWdpbmFsIHJlY3QuCisg
ICAgLy8gVGhpcyBtYXRjaGVzIENHUmVjdEFwcGx5SW52ZXJzZUFmZmluZVRyYW5zZm9ybSBiZWhh
dmlvci4KICAgICByZXR1cm4gZW5jbG9zaW5nSW50UmVjdChjdXJyZW50U3RhdGUoKS5jbGlwQm91
bmRzKTsKIH0KIApAQCAtNTIxLDcgKzUyNiw2IEBAIGNvbnN0IEFmZmluZVRyYW5zZm9ybSYgUmVj
b3JkZXI6OmN0bSgpIGNvbnN0CiB2b2lkIFJlY29yZGVyOjpDb250ZXh0U3RhdGU6OnRyYW5zbGF0
ZShmbG9hdCB4LCBmbG9hdCB5KQogewogICAgIGN0bS50cmFuc2xhdGUoeCwgeSk7Ci0gICAgY2xp
cEJvdW5kcy5tb3ZlKC14LCAteSk7CiB9CiAKIHZvaWQgUmVjb3JkZXI6OkNvbnRleHRTdGF0ZTo6
cm90YXRlKGZsb2F0IGFuZ2xlSW5SYWRpYW5zKQpAQCAtNTMxLDM1ICs1MzUsMjEgQEAgdm9pZCBS
ZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpyb3RhdGUoZmxvYXQgYW5nbGVJblJhZGlhbnMpCiAgICAg
CiAgICAgQWZmaW5lVHJhbnNmb3JtIHJvdGF0aW9uOwogICAgIHJvdGF0aW9uLnJvdGF0ZShhbmds
ZUluRGVncmVlcyk7Ci0KLSAgICBpZiAoc3RkOjpvcHRpb25hbDxBZmZpbmVUcmFuc2Zvcm0+IGlu
dmVyc2UgPSByb3RhdGlvbi5pbnZlcnNlKCkpCi0gICAgICAgIGNsaXBCb3VuZHMgPSBpbnZlcnNl
LnZhbHVlKCkubWFwUmVjdChjbGlwQm91bmRzKTsKIH0KIAogdm9pZCBSZWNvcmRlcjo6Q29udGV4
dFN0YXRlOjpzY2FsZShjb25zdCBGbG9hdFNpemUmIHNpemUpCiB7CiAgICAgY3RtLnNjYWxlKHNp
emUpOwotICAgIGNsaXBCb3VuZHMuc2NhbGUoMSAvIHNpemUud2lkdGgoKSwgMSAvIHNpemUuaGVp
Z2h0KCkpOwogfQogCiB2b2lkIFJlY29yZGVyOjpDb250ZXh0U3RhdGU6OnNldENUTShjb25zdCBB
ZmZpbmVUcmFuc2Zvcm0mIG1hdHJpeCkKIHsKLSAgICBzdGQ6Om9wdGlvbmFsPEFmZmluZVRyYW5z
Zm9ybT4gaW52ZXJzZVRyYW5zZm9ybUZvckNsaXBCb3VuZHM7Ci0gICAgaWYgKGF1dG8gb3JpZ2lu
YWxDVE1JbnZlcnNlID0gY3RtLmludmVyc2UoKSkKLSAgICAgICAgaW52ZXJzZVRyYW5zZm9ybUZv
ckNsaXBCb3VuZHMgPSBvcmlnaW5hbENUTUludmVyc2UtPm11bHRpcGx5KG1hdHJpeCkuaW52ZXJz
ZSgpOwotCiAgICAgY3RtID0gbWF0cml4OwotCi0gICAgaWYgKGludmVyc2VUcmFuc2Zvcm1Gb3JD
bGlwQm91bmRzKQotICAgICAgICBjbGlwQm91bmRzID0gaW52ZXJzZVRyYW5zZm9ybUZvckNsaXBC
b3VuZHMtPm1hcFJlY3QoY2xpcEJvdW5kcyk7CiB9CiAKIHZvaWQgUmVjb3JkZXI6OkNvbnRleHRT
dGF0ZTo6Y29uY2F0Q1RNKGNvbnN0IEFmZmluZVRyYW5zZm9ybSYgbWF0cml4KQogewogICAgIGN0
bSAqPSBtYXRyaXg7Ci0KLSAgICBpZiAoc3RkOjpvcHRpb25hbDxBZmZpbmVUcmFuc2Zvcm0+IGlu
dmVyc2UgPSBtYXRyaXguaW52ZXJzZSgpKQotICAgICAgICBjbGlwQm91bmRzID0gaW52ZXJzZS52
YWx1ZSgpLm1hcFJlY3QoY2xpcEJvdW5kcyk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIERpc3BsYXlM
aXN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5
bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuaAppbmRleCAwNjA1ZDZmMjRi
ZjQ1MzI0N2E0YThlODhmZTNiZGMyNjA3NzYwNzQ0Li45YTg0ZDI1YzljYTg1ZmZkMzBjMTNiOWVl
ZWQ3ZmViMGZhOTYzYjYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmgK
QEAgLTI1Myw3ICsyNTMsNyBAQCBwcml2YXRlOgogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2Nh
bGUoY29uc3QgRmxvYXRTaXplJikgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBjb25j
YXRDVE0oY29uc3QgQWZmaW5lVHJhbnNmb3JtJikgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQg
dm9pZCBzZXRDVE0oY29uc3QgQWZmaW5lVHJhbnNmb3JtJikgZmluYWw7Ci0gICAgV0VCQ09SRV9F
WFBPUlQgQWZmaW5lVHJhbnNmb3JtIGdldENUTShHcmFwaGljc0NvbnRleHQ6OkluY2x1ZGVEZXZp
Y2VTY2FsZSkgY29uc3QgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgQWZmaW5lVHJhbnNmb3Jt
IGdldENUTShHcmFwaGljc0NvbnRleHQ6OkluY2x1ZGVEZXZpY2VTY2FsZSA9IFBvc3NpYmx5SW5j
bHVkZURldmljZVNjYWxlKSBjb25zdCBmaW5hbDsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQg
YmVnaW5UcmFuc3BhcmVuY3lMYXllcihmbG9hdCBvcGFjaXR5KSBmaW5hbDsKICAgICBXRUJDT1JF
X0VYUE9SVCB2b2lkIGVuZFRyYW5zcGFyZW5jeUxheWVyKCkgZmluYWw7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RS
ZWNvcmRlckltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxh
eWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXJJbXBsLmNwcAppbmRleCBmNDc0MzI0ZmQ3MzFiMmM3
OTVmZmMxNjgzZWFmZTE4YzE2OGZiN2E1Li4xYTFlZTJmZjA3OTc5OTAxZmI5MWE2OWRjN2ZhYzE1
YTFlZmEzYzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9k
aXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlckltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVySW1w
bC5jcHAKQEAgLTQ1Niw4ICs0NTYsNyBAQCBGbG9hdFJlY3QgUmVjb3JkZXJJbXBsOjpleHRlbnRG
cm9tTG9jYWxCb3VuZHMoY29uc3QgRmxvYXRSZWN0JiByZWN0KSBjb25zdAogICAgICAgICBib3Vu
ZHMudW5pdGUoc2hhZG93RXh0ZW50KTsKICAgICB9CiAKLSAgICBGbG9hdFJlY3QgY2xpcHBlZEV4
dGVudCA9IGludGVyc2VjdGlvbihzdGF0ZS5jbGlwQm91bmRzLCBib3VuZHMpOwotICAgIHJldHVy
biBzdGF0ZS5jdG0ubWFwUmVjdChjbGlwcGVkRXh0ZW50KTsKKyAgICByZXR1cm4gaW50ZXJzZWN0
aW9uKHN0YXRlLmNsaXBCb3VuZHMsIHN0YXRlLmN0bS5tYXBSZWN0KGJvdW5kcykpOwogfQogCiB9
IC8vIG5hbWVzcGFjZSBEaXNwbGF5TGlzdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9BZmZpbmVUcmFuc2Zvcm0uaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMvQWZmaW5lVHJhbnNmb3JtLmgKaW5kZXgg
OTJlMzhiMWEwMzA2ZWM5MTU3Y2E2YzNlODY5ZjVmMWU5N2NkMTI4My4uYTAyNzVhZDNmNzBmZTQ4
M2Y1MzY2ZmY0YWUzOGRjZGViNjJlZDg3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9BZmZpbmVUcmFuc2Zvcm0uaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL0FmZmluZVRyYW5zZm9ybS5oCkBA
IC0xMzIsNyArMTMyLDcgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIGRvdWJsZSB4U2Nh
bGUoKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9SVCBkb3VibGUgeVNjYWxlKCkgY29uc3Q7CiAK
LSAgICBib29sIGlzSW52ZXJ0aWJsZSgpIGNvbnN0OyAvLyBJZiB5b3UgY2FsbCB0aGlzIHRoaXMs
IHlvdSdyZSBwcm9iYWJseSBkb2luZyBpdCB3cm9uZy4KKyAgICBib29sIGlzSW52ZXJ0aWJsZSgp
IGNvbnN0OyAvLyBJZiB5b3UgY2FsbCB0aGlzLCB5b3UncmUgcHJvYmFibHkgZG9pbmcgaXQgd3Jv
bmcuCiAgICAgV0VCQ09SRV9FWFBPUlQgc3RkOjpvcHRpb25hbDxBZmZpbmVUcmFuc2Zvcm0+IGlu
dmVyc2UoKSBjb25zdDsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgYmxlbmQoY29uc3QgQWZm
aW5lVHJhbnNmb3JtJiBmcm9tLCBkb3VibGUgcHJvZ3Jlc3MsIENvbXBvc2l0ZU9wZXJhdGlvbiA9
IENvbXBvc2l0ZU9wZXJhdGlvbjo6UmVwbGFjZSk7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VM
b2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZWY3OTIzZjkzNGUzZWNjMGFjNWYyNmMxN2FlNGEy
MWFiY2JmMWJhZS4uNTE4ZWM2MTViYmUyZTI1ZWU1MzExMzM3MTVmNDY2YjRjZjg1MjBiMiAxMDA2
NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE1IEBACisyMDIxLTEwLTIyICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29t
PgorCisgICAgICAgIERpc3BsYXlMaXN0OjpSZWNvcmRlcidzIGNsaXBCb3VuZHMoKSBiZWNvbWVz
IGVtcHR5IGlmIGEgZmxpcCBpcyBhcHBsaWVkIHRvIHRoZSBDVE0KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMjEzNAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJD
b3JlL2NnL0JpZnVyY2F0ZWRHcmFwaGljc0NvbnRleHRUZXN0c0NHLmNwcDoKKyAgICAgICAgKFRl
c3RXZWJLaXRBUEk6OlRFU1QpOgorICAgICAgICBBZGQgYSB0ZXN0IGVuc3VyaW5nIHRoYXQgb3Vy
IGNsaXBCb3VuZHMgYW5kIENHJ3MgbWF0Y2ggdGhyb3VnaCBhIHNlcmllcworICAgICAgICBvZiBz
aW1wbGUgdHJhbnNmb3Jtcy4KKwogMjAyMS0xMC0yMiAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxj
Z2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS11bYTExeV0gQWRkIGltcGxlbWVudGF0
aW9uIG9mIHRleHQgaW50ZXJmYWNlIHdoZW4gYnVpbGRpbmcgd2l0aCBBVFNQSQpkaWZmIC0tZ2l0
IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL2NnL0JpZnVyY2F0ZWRHcmFwaGlj
c0NvbnRleHRUZXN0c0NHLmNwcCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9j
Zy9CaWZ1cmNhdGVkR3JhcGhpY3NDb250ZXh0VGVzdHNDRy5jcHAKaW5kZXggNjAzYmQ3NWY1MTY1
NWNmY2VjOWEzYjljM2Q1MTAxZGYxYzMxNWU2MC4uYWI4NGI5NGY5YzM2N2I1ZTY1N2Y3NjQ1NWYx
ODcwODliMmQ4MDEyYyAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJD
b3JlL2NnL0JpZnVyY2F0ZWRHcmFwaGljc0NvbnRleHRUZXN0c0NHLmNwcAorKysgYi9Ub29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvY2cvQmlmdXJjYXRlZEdyYXBoaWNzQ29udGV4dFRl
c3RzQ0cuY3BwCkBAIC0yMTksNiArMjE5LDY1IEBAIFRFU1QoQmlmdXJjYXRlZEdyYXBoaWNzQ29u
dGV4dFRlc3RzLCBCb3JkZXJzKQogICAgIEVYUEVDVF9FUShwcmltYXJ5RGF0YVszXSwgMjU1KTsK
IH0KIAorVEVTVChCaWZ1cmNhdGVkR3JhcGhpY3NDb250ZXh0VGVzdHMsIFRyYW5zZm9ybWVkQ2xp
cCkKK3sKKyAgICBhdXRvIGNvbG9yU3BhY2UgPSBEZXN0aW5hdGlvbkNvbG9yU3BhY2U6OlNSR0Io
KTsKKyAgICBhdXRvIHByaW1hcnlDR0NvbnRleHQgPSBhZG9wdENGKENHQml0bWFwQ29udGV4dENy
ZWF0ZShudWxscHRyLCAxMDAsIDEwMCwgOCwgNCAqIDEwMCwgY29sb3JTcGFjZS5wbGF0Zm9ybUNv
bG9yU3BhY2UoKSwga0NHSW1hZ2VBbHBoYVByZW11bHRpcGxpZWRMYXN0KSk7CisKKyAgICBHcmFw
aGljc0NvbnRleHRDRyBwcmltYXJ5Q29udGV4dENHKHByaW1hcnlDR0NvbnRleHQuZ2V0KCkpOwor
ICAgIEdyYXBoaWNzQ29udGV4dCYgcHJpbWFyeUNvbnRleHQgPSBwcmltYXJ5Q29udGV4dENHOwor
CisgICAgSW5NZW1vcnlEaXNwbGF5TGlzdCBkaXNwbGF5TGlzdDsKKyAgICBSZWNvcmRlckltcGwg
c2Vjb25kYXJ5Q29udGV4dERMKGRpc3BsYXlMaXN0LCB7IH0sIEZsb2F0UmVjdCgwLCAwLCAxMDAs
IDEwMCksIHsgfSk7CisgICAgR3JhcGhpY3NDb250ZXh0JiBzZWNvbmRhcnlDb250ZXh0ID0gc2Vj
b25kYXJ5Q29udGV4dERMOworCisgICAgQmlmdXJjYXRlZEdyYXBoaWNzQ29udGV4dCBjdHgocHJp
bWFyeUNvbnRleHQsIHNlY29uZGFyeUNvbnRleHQpOworCisgICAgY3R4LmNsaXAoRmxvYXRSZWN0
KDI1LCAyNSwgNTAsIDUwKSk7CisKKyAgICBFWFBFQ1RfRVEocHJpbWFyeUNvbnRleHQuY2xpcEJv
dW5kcygpLCBzZWNvbmRhcnlDb250ZXh0LmNsaXBCb3VuZHMoKSk7CisgICAgRVhQRUNUX0VRKHBy
aW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgRmxvYXRSZWN0KDI1LCAyNSwgNTAsIDUwKSk7CisK
KyAgICBjdHguc2NhbGUoeyAxLCAtMSB9KTsKKyAgICBjdHgudHJhbnNsYXRlKDAsIC0xMDApOwor
CisgICAgRVhQRUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgc2Vjb25kYXJ5Q29u
dGV4dC5jbGlwQm91bmRzKCkpOworICAgIEVYUEVDVF9FUShwcmltYXJ5Q29udGV4dC5jbGlwQm91
bmRzKCksIEZsb2F0UmVjdCgyNSwgMjUsIDUwLCA1MCkpOworCisgICAgY3R4LnNjYWxlKDIpOwor
CisgICAgRVhQRUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgc2Vjb25kYXJ5Q29u
dGV4dC5jbGlwQm91bmRzKCkpOworICAgIEVYUEVDVF9FUShwcmltYXJ5Q29udGV4dC5jbGlwQm91
bmRzKCksIEZsb2F0UmVjdCgxMiwgMTIsIDI2LCAyNikpOworCisgICAgeworICAgICAgICBHcmFw
aGljc0NvbnRleHRTdGF0ZVNhdmVyIHNhdmVyKGN0eCk7CisKKyAgICAgICAgY3R4LnRyYW5zbGF0
ZSgxMiwgMTIpOworCisgICAgICAgIEVYUEVDVF9FUShwcmltYXJ5Q29udGV4dC5jbGlwQm91bmRz
KCksIHNlY29uZGFyeUNvbnRleHQuY2xpcEJvdW5kcygpKTsKKyAgICAgICAgRVhQRUNUX0VRKHBy
aW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgRmxvYXRSZWN0KDAsIDAsIDI2LCAyNikpOworCisg
ICAgICAgIGN0eC5jbGlwKEZsb2F0UmVjdCgwLCAwLCAxMCwgMTApKTsKKworICAgICAgICBFWFBF
Q1RfRVEocHJpbWFyeUNvbnRleHQuY2xpcEJvdW5kcygpLCBzZWNvbmRhcnlDb250ZXh0LmNsaXBC
b3VuZHMoKSk7CisgICAgICAgIEVYUEVDVF9FUShwcmltYXJ5Q29udGV4dC5jbGlwQm91bmRzKCks
IEZsb2F0UmVjdCgwLCAwLCAxMCwgMTApKTsKKworICAgICAgICBjdHgucm90YXRlKE1fUEkgLyA2
KTsKKworICAgICAgICBFWFBFQ1RfRVEocHJpbWFyeUNvbnRleHQuY2xpcEJvdW5kcygpLCBzZWNv
bmRhcnlDb250ZXh0LmNsaXBCb3VuZHMoKSk7CisgICAgICAgIEVYUEVDVF9FUShwcmltYXJ5Q29u
dGV4dC5jbGlwQm91bmRzKCksIEZsb2F0UmVjdCgwLCAtNSwgMTQsIDE0KSk7CisgICAgfQorCisg
ICAgRVhQRUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgc2Vjb25kYXJ5Q29udGV4
dC5jbGlwQm91bmRzKCkpOworICAgIEVYUEVDVF9FUShwcmltYXJ5Q29udGV4dC5jbGlwQm91bmRz
KCksIEZsb2F0UmVjdCgxMiwgMTIsIDI2LCAyNikpOworCisgICAgLy8gTWFrZSB0aGUgQ1RNIG5v
bi1pbnZlcnRpYmxlLgorICAgIGN0eC5zY2FsZSh7IDAsIDEgfSk7CisKKyAgICBFWFBFQ1RfRVEo
cHJpbWFyeUNvbnRleHQuY2xpcEJvdW5kcygpLCBzZWNvbmRhcnlDb250ZXh0LmNsaXBCb3VuZHMo
KSk7CisgICAgRVhQRUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwgRmxvYXRSZWN0
KDI1LCAyNSwgNTAsIDUwKSk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkKIAog
I2VuZGlmIC8vIFVTRShDRykK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>442514</attachid>
            <date>2021-10-26 11:54:11 -0700</date>
            <delta_ts>2021-10-26 12:42:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232134-20211026115410.patch</filename>
            <type>text/plain</type>
            <size>11303</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0ODg1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNThkOGNhNzcyNjYyYmFl
YTlmODhmM2I3ZGU4N2QyMmRhN2U4OGRkNS4uYWU1YWI4YzE5N2IwNWY4ZDJmMjQzOTcwMDAyN2Zl
MjlmNjE4NzUyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDIxLTEwLTI2ICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIERpc3BsYXlMaXN0
OjpSZWNvcmRlcidzIGNsaXBCb3VuZHMoKSBiZWNvbWVzIGVtcHR5IGlmIGEgZmxpcCBpcyBhcHBs
aWVkIHRvIHRoZSBDVE0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzMjEzNAorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAg
ICAgIE5ldyB0ZXN0OiBCaWZ1cmNhdGVkR3JhcGhpY3NDb250ZXh0VGVzdHMuVHJhbnNmb3JtZWRD
bGlwCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxp
c3RSZWNvcmRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6
OmNsaXApOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVyOjpjbGlwUGF0
aCk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6OmNsaXBCb3VuZHMg
Y29uc3QpOgorICAgICAgICBJbnN0ZWFkIG9mIHVwZGF0aW5nIGNsaXBCb3VuZHMgYW55IHRpbWUg
dGhlIENUTSBjaGFuZ2VzLCBzdG9yZQorICAgICAgICBjbGlwQm91bmRzIGluIGJhc2UgY29vcmRp
bmF0ZXMgYW5kIG1hcCB0aHJvdWdoIHRoZSBDVE0gd2hlbiByZXRyaWV2ZWQuCisKKyAgICAgICAg
VGhpcyBtYXRjaGVzIENHJ3MgYmVoYXZpb3IgYW5kIG1ha2VzIHRoZSBjbGlwQm91bmRzIG11Y2gg
c3R1cmRpZXIuCisgICAgICAgIEZvciBleGFtcGxlLCBwcmV2aW91c2x5LCBhcHBseWluZyBhIGBz
Y2FsZSgxLCAtMSlgIHRvIHRoZSBjb250ZXh0CisgICAgICAgIHdvdWxkIGltbWVkaWF0ZWx5IHJl
c3VsdCBpbiB0aGUgY2xpcEJvdW5kcycgaGVpZ2h0IGJlY29taW5nIG5lZ2F0aXZlLAorICAgICAg
ICBtYWtpbmcgdGhlIGJvdW5kcyBlbXB0eSBhbmQgY29uZnVzaW5nIGFueXRoaW5nIHRoYXQgcmVh
ZHMgZnJvbSBpdC4KKworICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVyOjpD
b250ZXh0U3RhdGU6OnRyYW5zbGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6
UmVjb3JkZXI6OkNvbnRleHRTdGF0ZTo6cm90YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRpc3Bs
YXlMaXN0OjpSZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpzY2FsZSk6CisgICAgICAgIChXZWJDb3Jl
OjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6OkNvbnRleHRTdGF0ZTo6c2V0Q1RNKToKKyAgICAgICAg
KFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpSZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpjb25jYXRDVE0p
OgorICAgICAgICBTdG9wIHVwZGF0aW5nIHRoZSBjbGlwQm91bmRzIHdoZW4gdGhlIENUTSBjaGFu
Z2VzLCB0aGlzIGlzIG5vIGxvbmdlciBuZWNlc3NhcnkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlckltcGwuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVySW1wbDo6ZXh0ZW50RnJvbUxvY2FsQm91
bmRzKToKKyAgICAgICAgU2luY2UgdGhlIGNsaXBCb3VuZHMgaXMgbm93IGluIGJhc2Ugc3BhY2Us
IG1hcCB0aGUgZGlzcGxheSBsaXN0CisgICAgICAgIGl0ZW0gYm91bmRzIHRvIGJhc2Ugc3BhY2Ug
L2JlZm9yZS8gaW50ZXJzZWN0aW5nIGl0IHdpdGggY2xpcEJvdW5kcy4KKworICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmg6CisgICAg
ICAgIERyaXZlLWJ5IGFkZCBhIGRlZmF1bHQgcGFyYW1ldGVyIHNvIGdldENUTSBjYW4gYmUgY2Fs
bGVkIG9uIHRoZSBzdWJjbGFzcyB0aGUgc2FtZSB3YXkgaXQgY2FuIG9uIEdyYXBoaWNzQ29udGV4
dC4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMvQWZmaW5lVHJhbnNm
b3JtLmg6IEZpeCBhIHR5cG8uCisKIDIwMjEtMTAtMjYgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFw
cGxlLmNvbT4KIAogICAgICAgICA8bGluaz4gZWxlbWVudHMgc2hvdWxkIGJlIGFibGUgdG8gZmly
ZSBtb3JlIHRoYW4gb25lIGxvYWQgLyBlcnJvciBldmVudApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3Bs
YXlMaXN0UmVjb3JkZXIuY3BwCmluZGV4IDQ3Nzk0MjFmNDNkNmNhOTA5M2ZiYzVmNWYzMzJmZjQw
OTlhNTNhNjEuLjIxZGRiMGQ2NzE2NzBiZTdhMDIxMTUzNDUxYzNkYTFlZTI1OWZkOWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNw
bGF5TGlzdFJlY29yZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5jcHAKQEAgLTQyNCw3ICs0MjQsNyBA
QCB2b2lkIFJlY29yZGVyOjphcHBseUZpbGxQYXR0ZXJuKCkKIAogdm9pZCBSZWNvcmRlcjo6Y2xp
cChjb25zdCBGbG9hdFJlY3QmIHJlY3QpCiB7Ci0gICAgY3VycmVudFN0YXRlKCkuY2xpcEJvdW5k
cy5pbnRlcnNlY3QocmVjdCk7CisgICAgY3VycmVudFN0YXRlKCkuY2xpcEJvdW5kcy5pbnRlcnNl
Y3QoY3VycmVudFN0YXRlKCkuY3RtLm1hcFJlY3QocmVjdCkpOwogICAgIHJlY29yZENsaXAocmVj
dCk7CiB9CiAKQEAgLTQ0MCwxMiArNDQwLDE3IEBAIHZvaWQgUmVjb3JkZXI6OmNsaXBPdXQoY29u
c3QgUGF0aCYgcGF0aCkKIAogdm9pZCBSZWNvcmRlcjo6Y2xpcFBhdGgoY29uc3QgUGF0aCYgcGF0
aCwgV2luZFJ1bGUgd2luZFJ1bGUpCiB7Ci0gICAgY3VycmVudFN0YXRlKCkuY2xpcEJvdW5kcy5p
bnRlcnNlY3QocGF0aC5mYXN0Qm91bmRpbmdSZWN0KCkpOworICAgIGN1cnJlbnRTdGF0ZSgpLmNs
aXBCb3VuZHMuaW50ZXJzZWN0KGN1cnJlbnRTdGF0ZSgpLmN0bS5tYXBSZWN0KHBhdGguZmFzdEJv
dW5kaW5nUmVjdCgpKSk7CiAgICAgcmVjb3JkQ2xpcFBhdGgocGF0aCwgd2luZFJ1bGUpOwogfQog
CiBJbnRSZWN0IFJlY29yZGVyOjpjbGlwQm91bmRzKCkgY29uc3QKIHsKKyAgICBpZiAoYXV0byBp
bnZlcnNlID0gY3VycmVudFN0YXRlKCkuY3RtLmludmVyc2UoKSkKKyAgICAgICAgcmV0dXJuIGVu
Y2xvc2luZ0ludFJlY3QoaW52ZXJzZS0+bWFwUmVjdChjdXJyZW50U3RhdGUoKS5jbGlwQm91bmRz
KSk7CisKKyAgICAvLyBJZiB0aGUgQ1RNIGlzIG5vdCBpbnZlcnRpYmxlLCByZXR1cm4gdGhlIG9y
aWdpbmFsIHJlY3QuCisgICAgLy8gVGhpcyBtYXRjaGVzIENHUmVjdEFwcGx5SW52ZXJzZUFmZmlu
ZVRyYW5zZm9ybSBiZWhhdmlvci4KICAgICByZXR1cm4gZW5jbG9zaW5nSW50UmVjdChjdXJyZW50
U3RhdGUoKS5jbGlwQm91bmRzKTsKIH0KIApAQCAtNTIxLDcgKzUyNiw2IEBAIGNvbnN0IEFmZmlu
ZVRyYW5zZm9ybSYgUmVjb3JkZXI6OmN0bSgpIGNvbnN0CiB2b2lkIFJlY29yZGVyOjpDb250ZXh0
U3RhdGU6OnRyYW5zbGF0ZShmbG9hdCB4LCBmbG9hdCB5KQogewogICAgIGN0bS50cmFuc2xhdGUo
eCwgeSk7Ci0gICAgY2xpcEJvdW5kcy5tb3ZlKC14LCAteSk7CiB9CiAKIHZvaWQgUmVjb3JkZXI6
OkNvbnRleHRTdGF0ZTo6cm90YXRlKGZsb2F0IGFuZ2xlSW5SYWRpYW5zKQpAQCAtNTMxLDM1ICs1
MzUsMjEgQEAgdm9pZCBSZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpyb3RhdGUoZmxvYXQgYW5nbGVJ
blJhZGlhbnMpCiAgICAgCiAgICAgQWZmaW5lVHJhbnNmb3JtIHJvdGF0aW9uOwogICAgIHJvdGF0
aW9uLnJvdGF0ZShhbmdsZUluRGVncmVlcyk7Ci0KLSAgICBpZiAoc3RkOjpvcHRpb25hbDxBZmZp
bmVUcmFuc2Zvcm0+IGludmVyc2UgPSByb3RhdGlvbi5pbnZlcnNlKCkpCi0gICAgICAgIGNsaXBC
b3VuZHMgPSBpbnZlcnNlLnZhbHVlKCkubWFwUmVjdChjbGlwQm91bmRzKTsKIH0KIAogdm9pZCBS
ZWNvcmRlcjo6Q29udGV4dFN0YXRlOjpzY2FsZShjb25zdCBGbG9hdFNpemUmIHNpemUpCiB7CiAg
ICAgY3RtLnNjYWxlKHNpemUpOwotICAgIGNsaXBCb3VuZHMuc2NhbGUoMSAvIHNpemUud2lkdGgo
KSwgMSAvIHNpemUuaGVpZ2h0KCkpOwogfQogCiB2b2lkIFJlY29yZGVyOjpDb250ZXh0U3RhdGU6
OnNldENUTShjb25zdCBBZmZpbmVUcmFuc2Zvcm0mIG1hdHJpeCkKIHsKLSAgICBzdGQ6Om9wdGlv
bmFsPEFmZmluZVRyYW5zZm9ybT4gaW52ZXJzZVRyYW5zZm9ybUZvckNsaXBCb3VuZHM7Ci0gICAg
aWYgKGF1dG8gb3JpZ2luYWxDVE1JbnZlcnNlID0gY3RtLmludmVyc2UoKSkKLSAgICAgICAgaW52
ZXJzZVRyYW5zZm9ybUZvckNsaXBCb3VuZHMgPSBvcmlnaW5hbENUTUludmVyc2UtPm11bHRpcGx5
KG1hdHJpeCkuaW52ZXJzZSgpOwotCiAgICAgY3RtID0gbWF0cml4OwotCi0gICAgaWYgKGludmVy
c2VUcmFuc2Zvcm1Gb3JDbGlwQm91bmRzKQotICAgICAgICBjbGlwQm91bmRzID0gaW52ZXJzZVRy
YW5zZm9ybUZvckNsaXBCb3VuZHMtPm1hcFJlY3QoY2xpcEJvdW5kcyk7CiB9CiAKIHZvaWQgUmVj
b3JkZXI6OkNvbnRleHRTdGF0ZTo6Y29uY2F0Q1RNKGNvbnN0IEFmZmluZVRyYW5zZm9ybSYgbWF0
cml4KQogewogICAgIGN0bSAqPSBtYXRyaXg7Ci0KLSAgICBpZiAoc3RkOjpvcHRpb25hbDxBZmZp
bmVUcmFuc2Zvcm0+IGludmVyc2UgPSBtYXRyaXguaW52ZXJzZSgpKQotICAgICAgICBjbGlwQm91
bmRzID0gaW52ZXJzZS52YWx1ZSgpLm1hcFJlY3QoY2xpcEJvdW5kcyk7CiB9CiAKIH0gLy8gbmFt
ZXNwYWNlIERpc3BsYXlMaXN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuaApp
bmRleCAyN2NkNWVlNGE4MWE1NWNjODYyYTc2M2E3MTRjZGE3NGMyNTAwZTA4Li45YTQwMTQzNjdk
YjFlZjQzYjhhNTllNTBlM2Q0NzEwZjkzZTAzZWJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5
TGlzdFJlY29yZGVyLmgKQEAgLTI1NSw3ICsyNTUsNyBAQCBwcml2YXRlOgogICAgIFdFQkNPUkVf
RVhQT1JUIHZvaWQgc2NhbGUoY29uc3QgRmxvYXRTaXplJikgZmluYWw7CiAgICAgV0VCQ09SRV9F
WFBPUlQgdm9pZCBjb25jYXRDVE0oY29uc3QgQWZmaW5lVHJhbnNmb3JtJikgZmluYWw7CiAgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRDVE0oY29uc3QgQWZmaW5lVHJhbnNmb3JtJikgZmluYWw7
Ci0gICAgV0VCQ09SRV9FWFBPUlQgQWZmaW5lVHJhbnNmb3JtIGdldENUTShHcmFwaGljc0NvbnRl
eHQ6OkluY2x1ZGVEZXZpY2VTY2FsZSkgY29uc3QgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQg
QWZmaW5lVHJhbnNmb3JtIGdldENUTShHcmFwaGljc0NvbnRleHQ6OkluY2x1ZGVEZXZpY2VTY2Fs
ZSA9IFBvc3NpYmx5SW5jbHVkZURldmljZVNjYWxlKSBjb25zdCBmaW5hbDsKIAogICAgIFdFQkNP
UkVfRVhQT1JUIHZvaWQgYmVnaW5UcmFuc3BhcmVuY3lMYXllcihmbG9hdCBvcGFjaXR5KSBmaW5h
bDsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGVuZFRyYW5zcGFyZW5jeUxheWVyKCkgZmluYWw7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlz
dHMvRGlzcGxheUxpc3RSZWNvcmRlckltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXJJbXBsLmNwcAppbmRleCAx
NmMyZjNiNTA4NDllZjQ2MDY0NDU3NTBkNTU4NDU2ZDVlNTc3N2Q2Li5hNWUyZDNiMjA5ODVlM2Vm
OTQxYTMyMzU3NTZlMjgwZWFjZDUxNjNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlckltcGwuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5
TGlzdFJlY29yZGVySW1wbC5jcHAKQEAgLTQ1OCw4ICs0NTgsNyBAQCBGbG9hdFJlY3QgUmVjb3Jk
ZXJJbXBsOjpleHRlbnRGcm9tTG9jYWxCb3VuZHMoY29uc3QgRmxvYXRSZWN0JiByZWN0KSBjb25z
dAogICAgICAgICBib3VuZHMudW5pdGUoc2hhZG93RXh0ZW50KTsKICAgICB9CiAKLSAgICBGbG9h
dFJlY3QgY2xpcHBlZEV4dGVudCA9IGludGVyc2VjdGlvbihzdGF0ZS5jbGlwQm91bmRzLCBib3Vu
ZHMpOwotICAgIHJldHVybiBzdGF0ZS5jdG0ubWFwUmVjdChjbGlwcGVkRXh0ZW50KTsKKyAgICBy
ZXR1cm4gaW50ZXJzZWN0aW9uKHN0YXRlLmNsaXBCb3VuZHMsIHN0YXRlLmN0bS5tYXBSZWN0KGJv
dW5kcykpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBEaXNwbGF5TGlzdApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9BZmZpbmVUcmFuc2Zvcm0u
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMvQWZmaW5lVHJh
bnNmb3JtLmgKaW5kZXggOTJlMzhiMWEwMzA2ZWM5MTU3Y2E2YzNlODY5ZjVmMWU5N2NkMTI4My4u
YTAyNzVhZDNmNzBmZTQ4M2Y1MzY2ZmY0YWUzOGRjZGViNjJlZDg3ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9BZmZpbmVUcmFuc2Zvcm0u
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL0FmZmlu
ZVRyYW5zZm9ybS5oCkBAIC0xMzIsNyArMTMyLDcgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQ
T1JUIGRvdWJsZSB4U2NhbGUoKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9SVCBkb3VibGUgeVNj
YWxlKCkgY29uc3Q7CiAKLSAgICBib29sIGlzSW52ZXJ0aWJsZSgpIGNvbnN0OyAvLyBJZiB5b3Ug
Y2FsbCB0aGlzIHRoaXMsIHlvdSdyZSBwcm9iYWJseSBkb2luZyBpdCB3cm9uZy4KKyAgICBib29s
IGlzSW52ZXJ0aWJsZSgpIGNvbnN0OyAvLyBJZiB5b3UgY2FsbCB0aGlzLCB5b3UncmUgcHJvYmFi
bHkgZG9pbmcgaXQgd3JvbmcuCiAgICAgV0VCQ09SRV9FWFBPUlQgc3RkOjpvcHRpb25hbDxBZmZp
bmVUcmFuc2Zvcm0+IGludmVyc2UoKSBjb25zdDsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQg
YmxlbmQoY29uc3QgQWZmaW5lVHJhbnNmb3JtJiBmcm9tLCBkb3VibGUgcHJvZ3Jlc3MsIENvbXBv
c2l0ZU9wZXJhdGlvbiA9IENvbXBvc2l0ZU9wZXJhdGlvbjo6UmVwbGFjZSk7CmRpZmYgLS1naXQg
YS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYzRkOTQ0NDJhZDM4OTc3
MzhlYzNjZDRiY2ExYTM1NzllYzM0ZWQ4Mi4uOWNiNTM1YjEzOGQ3ZGNjNmRjNjFjZTAxMTg4Yjg3
OTY5YmRhMmQzOSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIxLTEwLTI2ICBUaW0gSG9ydG9uICA8dGltb3RoeV9o
b3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIERpc3BsYXlMaXN0OjpSZWNvcmRlcidzIGNsaXBC
b3VuZHMoKSBiZWNvbWVzIGVtcHR5IGlmIGEgZmxpcCBpcyBhcHBsaWVkIHRvIHRoZSBDVE0KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMjEzNAorCisg
ICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJDb3JlL2NnL0JpZnVyY2F0ZWRHcmFwaGljc0NvbnRleHRUZXN0c0NHLmNwcDoK
KyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorICAgICAgICBBZGQgYSB0ZXN0IGVuc3Vy
aW5nIHRoYXQgb3VyIGNsaXBCb3VuZHMgYW5kIENHJ3MgbWF0Y2ggdGhyb3VnaCBhIHNlcmllcwor
ICAgICAgICBvZiBzaW1wbGUgdHJhbnNmb3Jtcy4KKwogMjAyMS0xMC0yNiAgU2ltb24gRnJhc2Vy
ICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBUaGUgc2NyaXB0IHNob3VsZCBk
ZWNpZGUgd2hlbiBhbiBpbWFnZSBkaWZmIGNhc2VzLCBub3QgSW1hZ2VEaWZmCmRpZmYgLS1naXQg
YS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvY2cvQmlmdXJjYXRlZEdyYXBoaWNz
Q29udGV4dFRlc3RzQ0cuY3BwIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL2Nn
L0JpZnVyY2F0ZWRHcmFwaGljc0NvbnRleHRUZXN0c0NHLmNwcAppbmRleCA2MDNiZDc1ZjUxNjU1
Y2ZjZWM5YTNiOWMzZDUxMDFkZjFjMzE1ZTYwLi5hYjg0Yjk0ZjljMzY3YjVlNjU3Zjc2NDU1ZjE4
NzA4OWIyZDgwMTJjIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNv
cmUvY2cvQmlmdXJjYXRlZEdyYXBoaWNzQ29udGV4dFRlc3RzQ0cuY3BwCisrKyBiL1Rvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9jZy9CaWZ1cmNhdGVkR3JhcGhpY3NDb250ZXh0VGVz
dHNDRy5jcHAKQEAgLTIxOSw2ICsyMTksNjUgQEAgVEVTVChCaWZ1cmNhdGVkR3JhcGhpY3NDb250
ZXh0VGVzdHMsIEJvcmRlcnMpCiAgICAgRVhQRUNUX0VRKHByaW1hcnlEYXRhWzNdLCAyNTUpOwog
fQogCitURVNUKEJpZnVyY2F0ZWRHcmFwaGljc0NvbnRleHRUZXN0cywgVHJhbnNmb3JtZWRDbGlw
KQoreworICAgIGF1dG8gY29sb3JTcGFjZSA9IERlc3RpbmF0aW9uQ29sb3JTcGFjZTo6U1JHQigp
OworICAgIGF1dG8gcHJpbWFyeUNHQ29udGV4dCA9IGFkb3B0Q0YoQ0dCaXRtYXBDb250ZXh0Q3Jl
YXRlKG51bGxwdHIsIDEwMCwgMTAwLCA4LCA0ICogMTAwLCBjb2xvclNwYWNlLnBsYXRmb3JtQ29s
b3JTcGFjZSgpLCBrQ0dJbWFnZUFscGhhUHJlbXVsdGlwbGllZExhc3QpKTsKKworICAgIEdyYXBo
aWNzQ29udGV4dENHIHByaW1hcnlDb250ZXh0Q0cocHJpbWFyeUNHQ29udGV4dC5nZXQoKSk7Cisg
ICAgR3JhcGhpY3NDb250ZXh0JiBwcmltYXJ5Q29udGV4dCA9IHByaW1hcnlDb250ZXh0Q0c7CisK
KyAgICBJbk1lbW9yeURpc3BsYXlMaXN0IGRpc3BsYXlMaXN0OworICAgIFJlY29yZGVySW1wbCBz
ZWNvbmRhcnlDb250ZXh0REwoZGlzcGxheUxpc3QsIHsgfSwgRmxvYXRSZWN0KDAsIDAsIDEwMCwg
MTAwKSwgeyB9KTsKKyAgICBHcmFwaGljc0NvbnRleHQmIHNlY29uZGFyeUNvbnRleHQgPSBzZWNv
bmRhcnlDb250ZXh0REw7CisKKyAgICBCaWZ1cmNhdGVkR3JhcGhpY3NDb250ZXh0IGN0eChwcmlt
YXJ5Q29udGV4dCwgc2Vjb25kYXJ5Q29udGV4dCk7CisKKyAgICBjdHguY2xpcChGbG9hdFJlY3Qo
MjUsIDI1LCA1MCwgNTApKTsKKworICAgIEVYUEVDVF9FUShwcmltYXJ5Q29udGV4dC5jbGlwQm91
bmRzKCksIHNlY29uZGFyeUNvbnRleHQuY2xpcEJvdW5kcygpKTsKKyAgICBFWFBFQ1RfRVEocHJp
bWFyeUNvbnRleHQuY2xpcEJvdW5kcygpLCBGbG9hdFJlY3QoMjUsIDI1LCA1MCwgNTApKTsKKwor
ICAgIGN0eC5zY2FsZSh7IDEsIC0xIH0pOworICAgIGN0eC50cmFuc2xhdGUoMCwgLTEwMCk7CisK
KyAgICBFWFBFQ1RfRVEocHJpbWFyeUNvbnRleHQuY2xpcEJvdW5kcygpLCBzZWNvbmRhcnlDb250
ZXh0LmNsaXBCb3VuZHMoKSk7CisgICAgRVhQRUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3Vu
ZHMoKSwgRmxvYXRSZWN0KDI1LCAyNSwgNTAsIDUwKSk7CisKKyAgICBjdHguc2NhbGUoMik7CisK
KyAgICBFWFBFQ1RfRVEocHJpbWFyeUNvbnRleHQuY2xpcEJvdW5kcygpLCBzZWNvbmRhcnlDb250
ZXh0LmNsaXBCb3VuZHMoKSk7CisgICAgRVhQRUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3Vu
ZHMoKSwgRmxvYXRSZWN0KDEyLCAxMiwgMjYsIDI2KSk7CisKKyAgICB7CisgICAgICAgIEdyYXBo
aWNzQ29udGV4dFN0YXRlU2F2ZXIgc2F2ZXIoY3R4KTsKKworICAgICAgICBjdHgudHJhbnNsYXRl
KDEyLCAxMik7CisKKyAgICAgICAgRVhQRUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMo
KSwgc2Vjb25kYXJ5Q29udGV4dC5jbGlwQm91bmRzKCkpOworICAgICAgICBFWFBFQ1RfRVEocHJp
bWFyeUNvbnRleHQuY2xpcEJvdW5kcygpLCBGbG9hdFJlY3QoMCwgMCwgMjYsIDI2KSk7CisKKyAg
ICAgICAgY3R4LmNsaXAoRmxvYXRSZWN0KDAsIDAsIDEwLCAxMCkpOworCisgICAgICAgIEVYUEVD
VF9FUShwcmltYXJ5Q29udGV4dC5jbGlwQm91bmRzKCksIHNlY29uZGFyeUNvbnRleHQuY2xpcEJv
dW5kcygpKTsKKyAgICAgICAgRVhQRUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMoKSwg
RmxvYXRSZWN0KDAsIDAsIDEwLCAxMCkpOworCisgICAgICAgIGN0eC5yb3RhdGUoTV9QSSAvIDYp
OworCisgICAgICAgIEVYUEVDVF9FUShwcmltYXJ5Q29udGV4dC5jbGlwQm91bmRzKCksIHNlY29u
ZGFyeUNvbnRleHQuY2xpcEJvdW5kcygpKTsKKyAgICAgICAgRVhQRUNUX0VRKHByaW1hcnlDb250
ZXh0LmNsaXBCb3VuZHMoKSwgRmxvYXRSZWN0KDAsIC01LCAxNCwgMTQpKTsKKyAgICB9CisKKyAg
ICBFWFBFQ1RfRVEocHJpbWFyeUNvbnRleHQuY2xpcEJvdW5kcygpLCBzZWNvbmRhcnlDb250ZXh0
LmNsaXBCb3VuZHMoKSk7CisgICAgRVhQRUNUX0VRKHByaW1hcnlDb250ZXh0LmNsaXBCb3VuZHMo
KSwgRmxvYXRSZWN0KDEyLCAxMiwgMjYsIDI2KSk7CisKKyAgICAvLyBNYWtlIHRoZSBDVE0gbm9u
LWludmVydGlibGUuCisgICAgY3R4LnNjYWxlKHsgMCwgMSB9KTsKKworICAgIEVYUEVDVF9FUShw
cmltYXJ5Q29udGV4dC5jbGlwQm91bmRzKCksIHNlY29uZGFyeUNvbnRleHQuY2xpcEJvdW5kcygp
KTsKKyAgICBFWFBFQ1RfRVEocHJpbWFyeUNvbnRleHQuY2xpcEJvdW5kcygpLCBGbG9hdFJlY3Qo
MjUsIDI1LCA1MCwgNTApKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgVGVzdFdlYktpdEFQSQogCiAj
ZW5kaWYgLy8gVVNFKENHKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>