<?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>221832</bug_id>
          
          <creation_ts>2021-02-12 11:13:13 -0800</creation_ts>
          <short_desc>Unexpected ASSERT when touch events are dispatched on the main thread</short_desc>
          <delta_ts>2021-02-15 12:28:47 -0800</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="Dean Jackson">dino</reporter>
          <assigned_to name="Dean Jackson">dino</assigned_to>
          <cc>achristensen</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1728681</commentid>
    <comment_count>0</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-12 11:13:13 -0800</bug_when>
    <thetext>ASSERT when touch events are dispatched on the main thread</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728682</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-02-12 11:13:50 -0800</bug_when>
    <thetext>&lt;rdar://problem/74283856&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728688</commentid>
    <comment_count>2</comment_count>
      <attachid>420154</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-12 11:21:42 -0800</bug_when>
    <thetext>Created attachment 420154
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728727</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-02-12 12:26:00 -0800</bug_when>
    <thetext>Committed r272799: &lt;https://commits.webkit.org/r272799&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 420154.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728817</commentid>
    <comment_count>4</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2021-02-12 15:08:34 -0800</bug_when>
    <thetext>Reverted r272799 for reason:

Caused debug WK2 tests to exit early with an assertion failure

Committed r272816 (234052@main): &lt;https://commits.webkit.org/234052@main&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728856</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2021-02-12 16:50:48 -0800</bug_when>
    <thetext>Failures:

https://build.webkit.org/results/Apple-BigSur-Debug-WK2-Tests/r272815%20(126)/results.html

e.g.

stderr:
ASSERTION FAILED: m_shouldBeCalledOnMainThread == isMainThread()
/Volumes/Data/slave/bigsur-debug/build/WebKitBuild/Debug/usr/local/include/wtf/CompletionHandler.h(65) : Out WTF::CompletionHandler&lt;void (const WTF::Optional&lt;WebKit::SecItemResponseData&gt; &amp;)&gt;::operator()(In...)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728871</commentid>
    <comment_count>6</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-02-12 17:04:38 -0800</bug_when>
    <thetext>Since this was trying to fix a regression from r272558, I think we should probably just back out r272558 now instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729014</commentid>
    <comment_count>7</comment_count>
      <attachid>420253</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-14 14:07:54 -0800</bug_when>
    <thetext>Created attachment 420253
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729191</commentid>
    <comment_count>8</comment_count>
      <attachid>420253</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-02-15 09:28:46 -0800</bug_when>
    <thetext>Comment on attachment 420253
Patch

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

&gt; Source/WTF/wtf/CompletionHandler.h:48
&gt; +        // FIXME: The logic here is a bit confusing, because you can&apos;t say that you want the handler to be called
&gt; +        // on the same thread it was constructed on, unless that was the main thread.

Should we add *that* feature instead of adding AnyThread?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729264</commentid>
    <comment_count>9</comment_count>
      <attachid>420253</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-15 11:25:27 -0800</bug_when>
    <thetext>Comment on attachment 420253
Patch

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

&gt;&gt; Source/WTF/wtf/CompletionHandler.h:48
&gt;&gt; +        // on the same thread it was constructed on, unless that was the main thread.
&gt; 
&gt; Should we add *that* feature instead of adding AnyThread?

I think so. I&apos;m talking to Alex now.

Either way, the confusion comes from this class not being explicit that it will decide a handler should be called on the main thread if it was created on the main thread.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729265</commentid>
    <comment_count>10</comment_count>
      <attachid>420253</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-15 11:27:39 -0800</bug_when>
    <thetext>Comment on attachment 420253
Patch

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

&gt;&gt;&gt; Source/WTF/wtf/CompletionHandler.h:48
&gt;&gt;&gt; +        // on the same thread it was constructed on, unless that was the main thread.
&gt;&gt; 
&gt;&gt; Should we add *that* feature instead of adding AnyThread?
&gt; 
&gt; I think so. I&apos;m talking to Alex now.
&gt; 
&gt; Either way, the confusion comes from this class not being explicit that it will decide a handler should be called on the main thread if it was created on the main thread.

Alex said &quot;land it&quot;, so I&apos;ll leave it to him to clean this up.

(Another confusion comes because CompletionHandlers are nearly always constructed by assigning a function, and not passing the 2nd parameter to a constructor)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729269</commentid>
    <comment_count>11</comment_count>
      <attachid>420253</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-02-15 11:32:21 -0800</bug_when>
    <thetext>Comment on attachment 420253
Patch

Actually, I think I have an idea.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729271</commentid>
    <comment_count>12</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-02-15 11:34:47 -0800</bug_when>
    <thetext>Can we just roll out the original if this is not going to land. The assert is really getting in the way.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729279</commentid>
    <comment_count>13</comment_count>
      <attachid>420345</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-02-15 11:56:27 -0800</bug_when>
    <thetext>Created attachment 420345
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729280</commentid>
    <comment_count>14</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-02-15 11:57:58 -0800</bug_when>
    <thetext>(In reply to Sam Weinig from comment #12)
&gt; Can we just roll out the original if this is not going to land. The assert
&gt; is really getting in the way.

Unfortunately a lot of code has landed on top of the original, which would require reverting several patches.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729296</commentid>
    <comment_count>15</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-02-15 12:28:47 -0800</bug_when>
    <thetext>r272873</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420154</attachid>
            <date>2021-02-12 11:21:42 -0800</date>
            <delta_ts>2021-02-14 14:07:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221832-20210213062140.patch</filename>
            <type>text/plain</type>
            <size>2233</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyNzQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGM3ZDRmOTBjMGRkYmE4ODhl
Njg1MDYyYThlYWQ1M2Y5ZmYyNTlhNWEuLmUzMjRhMjA1YmI5ZmU2YjBhNWFmNTFjNTRmOGIyNzhm
N2QwZmFhZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEtMDItMTIgIERlYW4gSmFj
a3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIFVuZXhwZWN0ZWQgQVNTRVJUIHdoZW4g
dG91Y2ggZXZlbnRzIGFyZSBkaXNwYXRjaGVkIG9uIHRoZSBtYWluIHRocmVhZAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxODMyCisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS83NDI4Mzg1Nj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBUaGUgY2hhbmdlIGluIHIyNzI1NTggY2F1c2VzIGFuIEFTU0VSVCB3
aGVuIHJ1bm5pbmcgb24gaU9TIGRlYnVnCisgICAgICAgIGJ1aWxkcy4gVGhlIHRvdWNoIGV2ZW50
IENvbXBsZXRpb25IYW5kbGVycyBhcmUgY3JlYXRlZCBvbiB0aGUgRXZlbnREaXNwYXRjaGVyCisg
ICAgICAgIHRocmVhZCwgYnV0IHNlcnZpY2VkIG9uIHRoZSBtYWluIHRocmVhZC4gV2Ugbm93IG5l
ZWQgdG8gc3RhdGUgdGhhdCB0aGlzCisgICAgICAgIGlzIG9rIGFzIHdlIGNyZWF0ZSB0aGUgQ29t
cGxldGlvbkhhbmRsZXIuCisKKyAgICAgICAgVGhpcyBpcyBjb3ZlcmVkIGJ5IHRlc3RzLCBidXQg
dGhlIEVXUyBib3RzIGRvbid0IHJ1biBpT1MgdGVzdHMgaW4KKyAgICAgICAgZGVidWcgbW9kZSwg
YW5kIHRoZSBpbnRlcm5hbCBib3RzIGhhZG4ndCBjYXVnaHQgdXAgeWV0IQorCisgICAgICAgICog
UGxhdGZvcm0vSVBDL0hhbmRsZU1lc3NhZ2UuaDoKKyAgICAgICAgKElQQzo6aGFuZGxlTWVzc2Fn
ZUFzeW5jKTogUGFzcyBhIENvbXBsZXRpb25IYW5kbGVyQ2FsbFRocmVhZCBpbnRvIHRoZSBjb25z
dHJ1Y3Rvci4KKwogMjAyMS0wMi0xMSAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNv
bT4KIAogICAgICAgICBbbWFjT1NdIEFkZCB0ZWxlbWV0cnkgZm9yIGEgbGlrZWx5LXVudXNlZCBj
YWxsIHRvIGlwYy1wb3NpeC1zaG0tcmVhZC1kYXRhIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9QbGF0Zm9ybS9JUEMvSGFuZGxlTWVzc2FnZS5oIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9J
UEMvSGFuZGxlTWVzc2FnZS5oCmluZGV4IDVjZDYxMmJkYmE5ZmE5YTNhOTRlYzY0OTI0ZWY3OGM4
MDQxY2UzNTEuLmNiZjc3NmJmODg4MWM4NGIwY2FiNjE2MjcyN2Y4MzM2MTNlOTNlNzMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL0hhbmRsZU1lc3NhZ2UuaAorKysgYi9T
b3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9IYW5kbGVNZXNzYWdlLmgKQEAgLTE4MSwxMCArMTgx
LDEwIEBAIHZvaWQgaGFuZGxlTWVzc2FnZUFzeW5jKENvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIERl
Y29kZXImIGRlY29kZXIsIEMqIG9iamVjdCwgTUYKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAot
ICAgIHR5cGVuYW1lIFQ6OkFzeW5jUmVwbHkgY29tcGxldGlvbkhhbmRsZXIgPSBbbGlzdGVuZXJJ
RCA9ICpsaXN0ZW5lcklELCBjb25uZWN0aW9uID0gbWFrZVJlZihjb25uZWN0aW9uKV0gKGF1dG8m
Ji4uLiBhcmdzKSBtdXRhYmxlIHsKKyAgICB0eXBlbmFtZSBUOjpBc3luY1JlcGx5IGNvbXBsZXRp
b25IYW5kbGVyID0geyBbbGlzdGVuZXJJRCA9ICpsaXN0ZW5lcklELCBjb25uZWN0aW9uID0gbWFr
ZVJlZihjb25uZWN0aW9uKV0gKGF1dG8mJi4uLiBhcmdzKSBtdXRhYmxlIHsKICAgICAgICAgYXV0
byBlbmNvZGVyID0gbWFrZVVuaXF1ZTxFbmNvZGVyPihUOjphc3luY01lc3NhZ2VSZXBseU5hbWUo
KSwgbGlzdGVuZXJJRCk7CiAgICAgICAgIFQ6OnNlbmQoV1RGTW92ZShlbmNvZGVyKSwgV1RGTW92
ZShjb25uZWN0aW9uKSwgYXJncy4uLik7Ci0gICAgfTsKKyAgICB9LCBDb21wbGV0aW9uSGFuZGxl
ckNhbGxUaHJlYWQ6Ok1haW5UaHJlYWQgfTsKICAgICBjYWxsTWVtYmVyRnVuY3Rpb24oV1RGTW92
ZSgqYXJndW1lbnRzKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlciksIG9iamVjdCwgZnVuY3Rp
b24pOwogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420253</attachid>
            <date>2021-02-14 14:07:54 -0800</date>
            <delta_ts>2021-02-15 11:56:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221832-20210215090752.patch</filename>
            <type>text/plain</type>
            <size>5571</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyNzQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDlmYzU3MDJiYTJjNGQxMDQ4MDY1NjQx
NzY5OGY0N2IwMzRhOWQ5ZDMuLjIzNzYwMjgwYTQ5ZTc5ODc0Y2UyNzRkMDFiMTk5YzE0YzJjZmY1
ODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMjEtMDItMTQgIERlYW4gSmFja3NvbiAgPGRpbm9A
YXBwbGUuY29tPgorCisgICAgICAgIFVuZXhwZWN0ZWQgQVNTRVJUIHdoZW4gdG91Y2ggZXZlbnRz
IGFyZSBkaXNwYXRjaGVkIG9uIHRoZSBtYWluIHRocmVhZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxODMyCisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS83NDI4Mzg1Nj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUaGUgY2hhbmdlIGluIHIyNzI1NTggY2F1c2VzIGFuIEFTU0VSVCB3aGVuIHJ1bm5pbmcg
b24gaU9TIGRlYnVnCisgICAgICAgIGJ1aWxkcy4gVGhlIGxvZ2ljIGluIENvbXBsZXRpb25IYW5k
bGVyIGlzIGEgYml0IGNvbmZ1c2luZywgYW5kCisgICAgICAgIGRpZCBub3QgYWxsb3cgZm9yIGEg
aGFuZGxlciB0byBleHBsaWNpdGx5IHNheSBpdCBkb2VzIG5vdCBjYXJlCisgICAgICAgIHdoaWNo
IHRocmVhZCBpdCBpcyBjYWxsZWQgb24uIEkgZXhwZWN0IHVzZSBvZiB0aGlzIHdpbGwgYmUgcHJl
dHR5CisgICAgICAgIHJhcmUsIGJ1dCB0b3VjaCBldmVudHMgYXJlIGFuIGV4YW1wbGUuIFdlIGNv
dWxkIHByb2JhYmx5IHJlbW92ZQorICAgICAgICB0aGUgbmVlZCBmb3IgdGhpcyBpZiB0aGUgSVBD
IGNvZGUgaW4gV2ViS2l0IGRpc3Rpbmd1aXNoZWQgdG91Y2gKKyAgICAgICAgZXZlbnRzIGZyb20g
b3RoZXIgbWVzc2FnZXMuCisKKyAgICAgICAgKiB3dGYvQ29tcGxldGlvbkhhbmRsZXIuaDogQWRk
IGFuIG9wdGlvbiBmb3IgdGhlIGhhbmRsZXIgdG8gbm90CisgICAgICAgIHdvcnJ5IGFib3V0IGl0
cyBjYWxsaW5nIHRocmVhZC4KKyAgICAgICAgKFdURjo6Q29tcGxldGlvbkhhbmRsZXI8T3V0KToK
KwogMjAyMS0wMi0xMSAgU2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CiAKICAgICAgICAg
UmV0dXJuaW5nIHNSR0IgZnJvbSBDRyBjb2xvciBzcGFjZSBmdW5jdGlvbnMgb24gZmFpbHVyZSBp
cyB0b28gZXJyb3IgcHJvbmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggYzdkNGY5MGMwZGRiYTg4OGU2ODUwNjJhOGVh
ZDUzZjlmZjI1OWE1YS4uZTMyNGEyMDViYjlmZTZiMGE1YWY1MWM1NGY4YjI3OGY3ZDBmYWFkMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMS0wMi0xMiAgRGVhbiBKYWNrc29uICA8ZGlu
b0BhcHBsZS5jb20+CisKKyAgICAgICAgVW5leHBlY3RlZCBBU1NFUlQgd2hlbiB0b3VjaCBldmVu
dHMgYXJlIGRpc3BhdGNoZWQgb24gdGhlIG1haW4gdGhyZWFkCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE4MzIKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzc0MjgzODU2PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFRoZSBjaGFuZ2UgaW4gcjI3MjU1OCBjYXVzZXMgYW4gQVNTRVJUIHdoZW4gcnVubmlu
ZyBvbiBpT1MgZGVidWcKKyAgICAgICAgYnVpbGRzLiBUaGUgdG91Y2ggZXZlbnQgQ29tcGxldGlv
bkhhbmRsZXJzIGFyZSBjcmVhdGVkIG9uIHRoZSBFdmVudERpc3BhdGNoZXIKKyAgICAgICAgdGhy
ZWFkLCBidXQgc2VydmljZWQgb24gdGhlIG1haW4gdGhyZWFkLiBXZSBub3cgbmVlZCB0byBzdGF0
ZSB0aGF0IHRoaXMKKyAgICAgICAgaXMgb2sgYXMgd2UgY3JlYXRlIHRoZSBDb21wbGV0aW9uSGFu
ZGxlci4KKworICAgICAgICBUaGlzIGlzIGNvdmVyZWQgYnkgdGVzdHMsIGJ1dCB0aGUgRVdTIGJv
dHMgZG9uJ3QgcnVuIGlPUyB0ZXN0cyBpbgorICAgICAgICBkZWJ1ZyBtb2RlLCBhbmQgdGhlIGlu
dGVybmFsIGJvdHMgaGFkbid0IGNhdWdodCB1cCB5ZXQhCisKKyAgICAgICAgKiBQbGF0Zm9ybS9J
UEMvSGFuZGxlTWVzc2FnZS5oOgorICAgICAgICAoSVBDOjpoYW5kbGVNZXNzYWdlQXN5bmMpOiBQ
YXNzIGEgQ29tcGxldGlvbkhhbmRsZXJDYWxsVGhyZWFkIGludG8gdGhlIGNvbnN0cnVjdG9yLgor
CiAyMDIxLTAyLTExICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAg
ICAgIFttYWNPU10gQWRkIHRlbGVtZXRyeSBmb3IgYSBsaWtlbHktdW51c2VkIGNhbGwgdG8gaXBj
LXBvc2l4LXNobS1yZWFkLWRhdGEgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9Db21wbGV0
aW9uSGFuZGxlci5oIGIvU291cmNlL1dURi93dGYvQ29tcGxldGlvbkhhbmRsZXIuaAppbmRleCBh
MzU4YzBmNmVlYTk4MDRiOGRlYTc0OTY0M2FjZWY4NjhlN2ExMjI4Li4yODY0YWMxMGY0ZDRjYWZk
MjM1NzRhNjM4ODJhYTYyMTI5NTNkZDk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9Db21w
bGV0aW9uSGFuZGxlci5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL0NvbXBsZXRpb25IYW5kbGVyLmgK
QEAgLTMxLDcgKzMxLDcgQEAKIG5hbWVzcGFjZSBXVEYgewogCiB0ZW1wbGF0ZTx0eXBlbmFtZT4g
Y2xhc3MgQ29tcGxldGlvbkhhbmRsZXI7Ci1lbnVtIGNsYXNzIENvbXBsZXRpb25IYW5kbGVyQ2Fs
bFRocmVhZCB7IE1haW5UaHJlYWQsIENvbnN0cnVjdGlvblRocmVhZCB9OworZW51bSBjbGFzcyBD
b21wbGV0aW9uSGFuZGxlckNhbGxUaHJlYWQgeyBNYWluVGhyZWFkLCBDb25zdHJ1Y3Rpb25UaHJl
YWQsIEFueVRocmVhZCB9OwogCiAvLyBXcmFwcyBhIEZ1bmN0aW9uIHRvIG1ha2Ugc3VyZSBpdCBp
cyBhbHdheXMgY2FsbGVkIG9uY2UgYW5kIG9ubHkgb25jZS4KIHRlbXBsYXRlIDx0eXBlbmFtZSBP
dXQsIHR5cGVuYW1lLi4uIEluPgpAQCAtNDQsNyArNDQsMTIgQEAgcHVibGljOgogICAgIENvbXBs
ZXRpb25IYW5kbGVyKENhbGxhYmxlVHlwZSYmIGNhbGxhYmxlLCBDb21wbGV0aW9uSGFuZGxlckNh
bGxUaHJlYWQgY2FsbFRocmVhZCA9IENvbXBsZXRpb25IYW5kbGVyQ2FsbFRocmVhZDo6Q29uc3Ry
dWN0aW9uVGhyZWFkKQogICAgICAgICA6IG1fZnVuY3Rpb24oV1RGTW92ZShjYWxsYWJsZSkpCiAj
aWYgQVNTRVJUX0VOQUJMRUQKLSAgICAgICAgLCBtX3Nob3VsZEJlQ2FsbGVkT25NYWluVGhyZWFk
KGNhbGxUaHJlYWQgPT0gQ29tcGxldGlvbkhhbmRsZXJDYWxsVGhyZWFkOjpNYWluVGhyZWFkIHx8
IGlzTWFpblRocmVhZCgpKQorICAgICAgICAvLyBGSVhNRTogVGhlIGxvZ2ljIGhlcmUgaXMgYSBi
aXQgY29uZnVzaW5nLCBiZWNhdXNlIHlvdSBjYW4ndCBzYXkgdGhhdCB5b3Ugd2FudCB0aGUgaGFu
ZGxlciB0byBiZSBjYWxsZWQKKyAgICAgICAgLy8gb24gdGhlIHNhbWUgdGhyZWFkIGl0IHdhcyBj
b25zdHJ1Y3RlZCBvbiwgdW5sZXNzIHRoYXQgd2FzIHRoZSBtYWluIHRocmVhZC4KKyAgICAgICAg
Ly8gLSBJZiB0aGUgaGFuZGxlciBleHBsaWNpdGx5IHNheXMgaXQgbXVzdCBiZSBjYWxsZWQgb24g
dGhlIG1haW4gdGhyZWFkLCB3ZSBub3RlIHRoYXQuCisgICAgICAgIC8vIC0gSWYgdGhlIGhhbmRs
ZXIgZXhwbGljaXRseSBzYXlzIGl0IGNhbiBiZSBjYWxsZWQgb24gYW55IHRocmVhZCwgd2Ugd29u
J3QgY2hlY2sgYXQgY2FsbCB0aW1lLgorICAgICAgICAvLyAtIE90aGVyd2lzZSwgaWYgdGhlIGhh
bmRsZXIgd2FzIGNvbnN0cnVjdGVkIG9uIHRoZSBtYWluIHRocmVhZCwgaXQgc2hvdWxkIGJlIGNh
bGxlZCBvbiB0aGUgbWFpbiB0aHJlYWQuCisgICAgICAgICwgbV9zaG91bGRCZUNhbGxlZE9uTWFp
blRocmVhZChjYWxsVGhyZWFkID09IENvbXBsZXRpb25IYW5kbGVyQ2FsbFRocmVhZDo6TWFpblRo
cmVhZCB8fCAoY2FsbFRocmVhZCA9PSBDb21wbGV0aW9uSGFuZGxlckNhbGxUaHJlYWQ6OkNvbnN0
cnVjdGlvblRocmVhZCAmJiBpc01haW5UaHJlYWQoKSkpCiAjZW5kaWYKICAgICB7CiAgICAgICAg
IFVOVVNFRF9QQVJBTShjYWxsVGhyZWFkKTsKQEAgLTYyLDcgKzY3LDcgQEAgcHVibGljOgogCiAg
ICAgT3V0IG9wZXJhdG9yKCkoSW4uLi4gaW4pCiAgICAgewotICAgICAgICBBU1NFUlQobV9zaG91
bGRCZUNhbGxlZE9uTWFpblRocmVhZCA9PSBpc01haW5UaHJlYWQoKSk7CisgICAgICAgIEFTU0VS
VCghbV9zaG91bGRCZUNhbGxlZE9uTWFpblRocmVhZCB8fCBpc01haW5UaHJlYWQoKSk7CiAgICAg
ICAgIEFTU0VSVF9XSVRIX01FU1NBR0UobV9mdW5jdGlvbiwgIkNvbXBsZXRpb24gaGFuZGxlciBz
aG91bGQgbm90IGJlIGNhbGxlZCBtb3JlIHRoYW4gb25jZSIpOwogICAgICAgICByZXR1cm4gc3Rk
OjpleGNoYW5nZShtX2Z1bmN0aW9uLCBudWxscHRyKShzdGQ6OmZvcndhcmQ8SW4+KGluKS4uLik7
CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvSGFuZGxlTWVz
c2FnZS5oIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvSGFuZGxlTWVzc2FnZS5oCmluZGV4
IDVjZDYxMmJkYmE5ZmE5YTNhOTRlYzY0OTI0ZWY3OGM4MDQxY2UzNTEuLjcxNzJlYWZiODM4ODlh
ZjkwZWExNDM3YjdkOGQxMjJjMmZlYmFmZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvUGxh
dGZvcm0vSVBDL0hhbmRsZU1lc3NhZ2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQ
Qy9IYW5kbGVNZXNzYWdlLmgKQEAgLTE4MSwxMCArMTgxLDEwIEBAIHZvaWQgaGFuZGxlTWVzc2Fn
ZUFzeW5jKENvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIERlY29kZXImIGRlY29kZXIsIEMqIG9iamVj
dCwgTUYKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIHR5cGVuYW1lIFQ6OkFzeW5jUmVw
bHkgY29tcGxldGlvbkhhbmRsZXIgPSBbbGlzdGVuZXJJRCA9ICpsaXN0ZW5lcklELCBjb25uZWN0
aW9uID0gbWFrZVJlZihjb25uZWN0aW9uKV0gKGF1dG8mJi4uLiBhcmdzKSBtdXRhYmxlIHsKKyAg
ICB0eXBlbmFtZSBUOjpBc3luY1JlcGx5IGNvbXBsZXRpb25IYW5kbGVyID0geyBbbGlzdGVuZXJJ
RCA9ICpsaXN0ZW5lcklELCBjb25uZWN0aW9uID0gbWFrZVJlZihjb25uZWN0aW9uKV0gKGF1dG8m
Ji4uLiBhcmdzKSBtdXRhYmxlIHsKICAgICAgICAgYXV0byBlbmNvZGVyID0gbWFrZVVuaXF1ZTxF
bmNvZGVyPihUOjphc3luY01lc3NhZ2VSZXBseU5hbWUoKSwgbGlzdGVuZXJJRCk7CiAgICAgICAg
IFQ6OnNlbmQoV1RGTW92ZShlbmNvZGVyKSwgV1RGTW92ZShjb25uZWN0aW9uKSwgYXJncy4uLik7
Ci0gICAgfTsKKyAgICB9LCBDb21wbGV0aW9uSGFuZGxlckNhbGxUaHJlYWQ6OkFueVRocmVhZCB9
OwogICAgIGNhbGxNZW1iZXJGdW5jdGlvbihXVEZNb3ZlKCphcmd1bWVudHMpLCBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSwgb2JqZWN0LCBmdW5jdGlvbik7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420345</attachid>
            <date>2021-02-15 11:56:27 -0800</date>
            <delta_ts>2021-02-15 12:01:40 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221832-20210215115626.patch</filename>
            <type>text/plain</type>
            <size>17846</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGRlNjQ5MTg0Y2U1MDk5MjY2
YWY0YTVmZjdjMTM0MDFiYTVlODNkZTguLjdlNzFiMDliNWRjY2YzNDE5Y2IyYTY1ZWFlYzc2Y2I2
MWMxNzIwZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMjEtMDItMTUgIEFsZXggQ2hy
aXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBVbmV4cGVjdGVk
IEFTU0VSVCB3aGVuIHRvdWNoIGV2ZW50cyBhcmUgZGlzcGF0Y2hlZCBvbiB0aGUgbWFpbiB0aHJl
YWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTgz
MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoZSBU
b3VjaEV2ZW50IG1lc3NhZ2UgaXMgc3BlY2lhbC4gIEl0J3MgcmVjZWl2ZWQgb24gYSBub24tbWFp
biB0aHJlYWQgYW5kIGNvbXBsZXRlZCBvbiB0aGUgbWFpbiB0aHJlYWQsIHdoaWNoIGFzc2VydHMu
CisgICAgICAgIFJhdGhlciB0aGFuIGxvc2Ugb3VyIGFzc2VydHMgbWFraW5nIHN1cmUgb3VyIG1l
c3NhZ2UgQ29tcGxldGlvbkhhbmRsZXJzIGFyZSBjYWxsZWQgb24gdGhlIGNvcnJlY3QgdGhyZWFk
LAorICAgICAgICBtYXJrIHRoaXMgb25lIHdpdGggYSBuZXcgYXR0cmlidXRlLCBNYWluVGhyZWFk
Q2FsbGJhY2ssIHdoaWNoIGluZGljYXRlcyB0aGF0IGl0IGlzIG9rIGZvciB0aGUgY2FsbGJhY2sg
dG8gYmUgY2FsbGVkIG9uIHRoZSBtYWluIHRocmVhZAorICAgICAgICBsaWtlIGl0IHdhcyBiZWZv
cmUgcjI3MjU1OCBpbiBhIGRpZmZlcmVudCBmb3JtLgorCisgICAgICAgICogUGxhdGZvcm0vSVBD
L0hhbmRsZU1lc3NhZ2UuaDoKKyAgICAgICAgKElQQzo6aGFuZGxlTWVzc2FnZUFzeW5jKToKKyAg
ICAgICAgKiBTY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weToKKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdC9tb2RlbC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdC90ZXN0cy9UZXN0V2l0aElt
YWdlRGF0YU1lc3NhZ2VzLmg6CisgICAgICAgICogU2NyaXB0cy93ZWJraXQvdGVzdHMvVGVzdFdp
dGhMZWdhY3lSZWNlaXZlck1lc3NhZ2VzLmg6CisgICAgICAgICogU2NyaXB0cy93ZWJraXQvdGVz
dHMvVGVzdFdpdGhTZW1hcGhvcmVNZXNzYWdlcy5oOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0
L3Rlc3RzL1Rlc3RXaXRoU3VwZXJjbGFzcy5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBTY3JpcHRz
L3dlYmtpdC90ZXN0cy9UZXN0V2l0aFN1cGVyY2xhc3NNZXNzYWdlcy5oOgorICAgICAgICAqIFNj
cmlwdHMvd2Via2l0L3Rlc3RzL1Rlc3RXaXRob3V0QXR0cmlidXRlc01lc3NhZ2VzLmg6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL0V2ZW50RGlzcGF0Y2hlci5tZXNzYWdlcy5pbjoKKwog
MjAyMS0wMi0xNSAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KIAog
ICAgICAgICBbV1BFXVtHVEtdIFNsZWVwRGlzYWJsZXIgZG9lcyBub3QgaW5oaWJpdCBzbGVlcCB3
aXRoIGJ1YmJsZXdyYXAgc2FuZGJveCBlbmFibGVkOiBuZWVkIHRvIHJ1biB4ZGctZGJ1cy1wcm94
eSB1bmRlciBid3JhcCBvciB4ZGctZGVza3RvcC1wb3J0YWwgZG9lcyBub3QgcmVhZCBvdXIgYXBw
IElECmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9IYW5kbGVNZXNzYWdl
LmggYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9IYW5kbGVNZXNzYWdlLmgKaW5kZXggNWNk
NjEyYmRiYTlmYTlhM2E5NGVjNjQ5MjRlZjc4YzgwNDFjZTM1MS4uZWE4YWQ0NWMwOWViNjgyZTBl
ODYyM2I5MzRkNWUwZTljNzAyNjIyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9QbGF0Zm9y
bS9JUEMvSGFuZGxlTWVzc2FnZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL0hh
bmRsZU1lc3NhZ2UuaApAQCAtMTgxLDEwICsxODEsMTAgQEAgdm9pZCBoYW5kbGVNZXNzYWdlQXN5
bmMoQ29ubmVjdGlvbiYgY29ubmVjdGlvbiwgRGVjb2RlciYgZGVjb2RlciwgQyogb2JqZWN0LCBN
RgogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgdHlwZW5hbWUgVDo6QXN5bmNSZXBseSBj
b21wbGV0aW9uSGFuZGxlciA9IFtsaXN0ZW5lcklEID0gKmxpc3RlbmVySUQsIGNvbm5lY3Rpb24g
PSBtYWtlUmVmKGNvbm5lY3Rpb24pXSAoYXV0byYmLi4uIGFyZ3MpIG11dGFibGUgeworICAgIHR5
cGVuYW1lIFQ6OkFzeW5jUmVwbHkgY29tcGxldGlvbkhhbmRsZXIgPSB7IFtsaXN0ZW5lcklEID0g
Kmxpc3RlbmVySUQsIGNvbm5lY3Rpb24gPSBtYWtlUmVmKGNvbm5lY3Rpb24pXSAoYXV0byYmLi4u
IGFyZ3MpIG11dGFibGUgewogICAgICAgICBhdXRvIGVuY29kZXIgPSBtYWtlVW5pcXVlPEVuY29k
ZXI+KFQ6OmFzeW5jTWVzc2FnZVJlcGx5TmFtZSgpLCBsaXN0ZW5lcklEKTsKICAgICAgICAgVDo6
c2VuZChXVEZNb3ZlKGVuY29kZXIpLCBXVEZNb3ZlKGNvbm5lY3Rpb24pLCBhcmdzLi4uKTsKLSAg
ICB9OworICAgIH0sIFQ6OmNhbGxiYWNrVGhyZWFkIH07CiAgICAgY2FsbE1lbWJlckZ1bmN0aW9u
KFdURk1vdmUoKmFyZ3VtZW50cyksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpLCBvYmplY3Qs
IGZ1bmN0aW9uKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtp
dC9tZXNzYWdlcy5weSBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkK
aW5kZXggMWUyNGRmMGJhNTdjY2JkMTM4MjBhYmNjYTkzNTI2YjdiZGY4MjM0MS4uYmQzNDdjMzZm
YjMxYjE5OTc1NTQ4ZTY3MTg4OWQ4MThmODQ2M2NiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQorKysgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMv
d2Via2l0L21lc3NhZ2VzLnB5CkBAIC0yNSw3ICsyNSw3IEBAIGltcG9ydCByZQogaW1wb3J0IHN5
cwogCiBmcm9tIHdlYmtpdCBpbXBvcnQgcGFyc2VyCi1mcm9tIHdlYmtpdC5tb2RlbCBpbXBvcnQg
QlVJTFRJTl9BVFRSSUJVVEUsIEFTWU5DX0FUVFJJQlVURSwgU1lOQ0hST05PVVNfQVRUUklCVVRF
Citmcm9tIHdlYmtpdC5tb2RlbCBpbXBvcnQgQlVJTFRJTl9BVFRSSUJVVEUsIEFTWU5DX0FUVFJJ
QlVURSwgU1lOQ0hST05PVVNfQVRUUklCVVRFLCBNQUlOVEhSRUFEQ0FMTEJBQ0tfQVRUUklCVVRF
CiAKIF9saWNlbnNlX2hlYWRlciA9ICIiIi8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTAtMjAyMSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCkBAIC0yMDcsNiArMjA3LDEwIEBAIGRlZiBt
ZXNzYWdlX3RvX3N0cnVjdF9kZWNsYXJhdGlvbihyZWNlaXZlciwgbWVzc2FnZSk6CiAgICAgICAg
ICAgICByZXN1bHQuYXBwZW5kKCcgICAgdXNpbmcgQXN5bmNSZXBseSA9ICVzQXN5bmNSZXBseTtc
bicgJSBtZXNzYWdlLm5hbWUpCiAgICAgICAgIGVsaWYgbWVzc2FnZS5oYXNfYXR0cmlidXRlKFNZ
TkNIUk9OT1VTX0FUVFJJQlVURSk6CiAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcgICAgdXNp
bmcgRGVsYXllZFJlcGx5ID0gJXNEZWxheWVkUmVwbHk7XG4nICUgbWVzc2FnZS5uYW1lKQorICAg
ICAgICBpZiBtZXNzYWdlLmhhc19hdHRyaWJ1dGUoTUFJTlRIUkVBRENBTExCQUNLX0FUVFJJQlVU
RSk6CisgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcgICAgc3RhdGljIGNvbnN0ZXhwciBhdXRv
IGNhbGxiYWNrVGhyZWFkID0gV1RGOjpDb21wbGV0aW9uSGFuZGxlckNhbGxUaHJlYWQ6Ok1haW5U
aHJlYWQ7XG4nKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgnICAg
IHN0YXRpYyBjb25zdGV4cHIgYXV0byBjYWxsYmFja1RocmVhZCA9IFdURjo6Q29tcGxldGlvbkhh
bmRsZXJDYWxsVGhyZWFkOjpDb25zdHJ1Y3Rpb25UaHJlYWQ7XG4nKQogICAgICAgICBpZiBtZXNz
YWdlLmhhc19hdHRyaWJ1dGUoU1lOQ0hST05PVVNfQVRUUklCVVRFKSBvciBtZXNzYWdlLmhhc19h
dHRyaWJ1dGUoQVNZTkNfQVRUUklCVVRFKToKICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAg
ICBzdGF0aWMgdm9pZCBzZW5kKHN0ZDo6dW5pcXVlX3B0cjxJUEM6OkVuY29kZXI+JiYsIElQQzo6
Q29ubmVjdGlvbiYnKQogICAgICAgICAgICAgaWYgbGVuKHNlbmRfcGFyYW1ldGVycyk6CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21vZGVsLnB5IGIvU291cmNlL1dl
YktpdC9TY3JpcHRzL3dlYmtpdC9tb2RlbC5weQppbmRleCBhYzM4Njg5MDVjZmNkMzBhOGM2MzZm
M2ZlMDQ3YTc0YTRhMzE0YTgzLi40ODAwZmE0ZWZjYTk2NzhhODlhZmM3ZTQzNGYyNmIzNDZjZThj
ZjZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21vZGVsLnB5Cisr
KyBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbW9kZWwucHkKQEAgLTI2LDYgKzI2LDcg
QEAgZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgQ291bnRlciwgZGVmYXVsdGRpY3QKIAogQlVJTFRJ
Tl9BVFRSSUJVVEUgPSAiQnVpbHRpbiIKIEFTWU5DX0FUVFJJQlVURSA9ICJBc3luYyIKK01BSU5U
SFJFQURDQUxMQkFDS19BVFRSSUJVVEUgPSAiTWFpblRocmVhZENhbGxiYWNrIgogU1lOQ0hST05P
VVNfQVRUUklCVVRFID0gJ1N5bmNocm9ub3VzJwogCiBjbGFzcyBNZXNzYWdlUmVjZWl2ZXIob2Jq
ZWN0KToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvdGVzdHMvVGVz
dFdpdGhJbWFnZURhdGFNZXNzYWdlcy5oIGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC90
ZXN0cy9UZXN0V2l0aEltYWdlRGF0YU1lc3NhZ2VzLmgKaW5kZXggMzU3NjE1OGIxZDliNTNkZGQ4
ZTQ4ZWQ1NjQzMGI3YjUwODg4OTcxYy4uZjQyZThmN2EwYjA4MWYyOTE1ZTU3Y2MyYWQ0MjA2YWIy
YWJkNmQyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC90ZXN0cy9U
ZXN0V2l0aEltYWdlRGF0YU1lc3NhZ2VzLmgKKysrIGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dl
YmtpdC90ZXN0cy9UZXN0V2l0aEltYWdlRGF0YU1lc3NhZ2VzLmgKQEAgLTcwLDYgKzcwLDcgQEAg
cHVibGljOgogICAgIHN0YXRpYyBJUEM6Ok1lc3NhZ2VOYW1lIG5hbWUoKSB7IHJldHVybiBJUEM6
Ok1lc3NhZ2VOYW1lOjpUZXN0V2l0aEltYWdlRGF0YV9SZWNlaXZlSW1hZ2VEYXRhOyB9CiAgICAg
c3RhdGljIGNvbnN0IGJvb2wgaXNTeW5jID0gdHJ1ZTsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIg
YXV0byBjYWxsYmFja1RocmVhZCA9IFdURjo6Q29tcGxldGlvbkhhbmRsZXJDYWxsVGhyZWFkOjpD
b25zdHJ1Y3Rpb25UaHJlYWQ7CiAgICAgdXNpbmcgUmVwbHkgPSBzdGQ6OnR1cGxlPFJlZlB0cjxX
ZWJDb3JlOjpJbWFnZURhdGE+Jj47CiAgICAgdXNpbmcgUmVwbHlBcmd1bWVudHMgPSBzdGQ6OnR1
cGxlPFJlZlB0cjxXZWJDb3JlOjpJbWFnZURhdGE+PjsKICAgICBjb25zdCBBcmd1bWVudHMmIGFy
Z3VtZW50cygpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0
L3Rlc3RzL1Rlc3RXaXRoTGVnYWN5UmVjZWl2ZXJNZXNzYWdlcy5oIGIvU291cmNlL1dlYktpdC9T
Y3JpcHRzL3dlYmtpdC90ZXN0cy9UZXN0V2l0aExlZ2FjeVJlY2VpdmVyTWVzc2FnZXMuaAppbmRl
eCBlYjc2OTA1OWI1MThiMjJlZjM4YjkwZjEzNDEzYWJkMjc2ZTExMTU2Li4zYmUwYTBiMGU5Yzc4
YTQyOTRjZTZmMjliNjZkMmEyNWZiZGQwOTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1Nj
cmlwdHMvd2Via2l0L3Rlc3RzL1Rlc3RXaXRoTGVnYWN5UmVjZWl2ZXJNZXNzYWdlcy5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvdGVzdHMvVGVzdFdpdGhMZWdhY3lSZWNlaXZl
ck1lc3NhZ2VzLmgKQEAgLTI4Myw2ICsyODMsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIElQQzo6
TWVzc2FnZU5hbWUgbmFtZSgpIHsgcmV0dXJuIElQQzo6TWVzc2FnZU5hbWU6OlRlc3RXaXRoTGVn
YWN5UmVjZWl2ZXJfQ3JlYXRlUGx1Z2luOyB9CiAgICAgc3RhdGljIGNvbnN0IGJvb2wgaXNTeW5j
ID0gdHJ1ZTsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgYXV0byBjYWxsYmFja1RocmVhZCA9IFdU
Rjo6Q29tcGxldGlvbkhhbmRsZXJDYWxsVGhyZWFkOjpDb25zdHJ1Y3Rpb25UaHJlYWQ7CiAgICAg
dXNpbmcgUmVwbHkgPSBzdGQ6OnR1cGxlPGJvb2wmPjsKICAgICB1c2luZyBSZXBseUFyZ3VtZW50
cyA9IHN0ZDo6dHVwbGU8Ym9vbD47CiAgICAgQ3JlYXRlUGx1Z2luKHVpbnQ2NF90IHBsdWdpbklu
c3RhbmNlSUQsIGNvbnN0IFdlYktpdDo6UGx1Z2luOjpQYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQpA
QCAtMzA2LDYgKzMwNyw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgSVBDOjpNZXNzYWdlTmFtZSBu
YW1lKCkgeyByZXR1cm4gSVBDOjpNZXNzYWdlTmFtZTo6VGVzdFdpdGhMZWdhY3lSZWNlaXZlcl9S
dW5KYXZhU2NyaXB0QWxlcnQ7IH0KICAgICBzdGF0aWMgY29uc3QgYm9vbCBpc1N5bmMgPSB0cnVl
OwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBhdXRvIGNhbGxiYWNrVGhyZWFkID0gV1RGOjpDb21w
bGV0aW9uSGFuZGxlckNhbGxUaHJlYWQ6OkNvbnN0cnVjdGlvblRocmVhZDsKICAgICB1c2luZyBS
ZXBseSA9IHN0ZDo6dHVwbGU8PjsKICAgICB1c2luZyBSZXBseUFyZ3VtZW50cyA9IHN0ZDo6dHVw
bGU8PjsKICAgICBSdW5KYXZhU2NyaXB0QWxlcnQodWludDY0X3QgZnJhbWVJRCwgY29uc3QgU3Ry
aW5nJiBtZXNzYWdlKQpAQCAtMzI5LDYgKzMzMSw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgSVBD
OjpNZXNzYWdlTmFtZSBuYW1lKCkgeyByZXR1cm4gSVBDOjpNZXNzYWdlTmFtZTo6VGVzdFdpdGhM
ZWdhY3lSZWNlaXZlcl9HZXRQbHVnaW5zOyB9CiAgICAgc3RhdGljIGNvbnN0IGJvb2wgaXNTeW5j
ID0gdHJ1ZTsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgYXV0byBjYWxsYmFja1RocmVhZCA9IFdU
Rjo6Q29tcGxldGlvbkhhbmRsZXJDYWxsVGhyZWFkOjpDb25zdHJ1Y3Rpb25UaHJlYWQ7CiAgICAg
dXNpbmcgUmVwbHkgPSBzdGQ6OnR1cGxlPFZlY3RvcjxXZWJDb3JlOjpQbHVnaW5JbmZvPiY+Owog
ICAgIHVzaW5nIFJlcGx5QXJndW1lbnRzID0gc3RkOjp0dXBsZTxWZWN0b3I8V2ViQ29yZTo6UGx1
Z2luSW5mbz4+OwogICAgIGV4cGxpY2l0IEdldFBsdWdpbnMoYm9vbCByZWZyZXNoKQpAQCAtMzUz
LDYgKzM1Niw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgY29uc3QgYm9vbCBpc1N5bmMgPSB0cnVl
OwogCiAgICAgdXNpbmcgRGVsYXllZFJlcGx5ID0gR2V0UGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25E
ZWxheWVkUmVwbHk7CisgICAgc3RhdGljIGNvbnN0ZXhwciBhdXRvIGNhbGxiYWNrVGhyZWFkID0g
V1RGOjpDb21wbGV0aW9uSGFuZGxlckNhbGxUaHJlYWQ6OkNvbnN0cnVjdGlvblRocmVhZDsKICAg
ICBzdGF0aWMgdm9pZCBzZW5kKHN0ZDo6dW5pcXVlX3B0cjxJUEM6OkVuY29kZXI+JiYsIElQQzo6
Q29ubmVjdGlvbiYsIGNvbnN0IElQQzo6Q29ubmVjdGlvbjo6SGFuZGxlJiBjb25uZWN0aW9uSGFu
ZGxlKTsKICAgICB1c2luZyBSZXBseSA9IHN0ZDo6dHVwbGU8SVBDOjpDb25uZWN0aW9uOjpIYW5k
bGUmPjsKICAgICB1c2luZyBSZXBseUFyZ3VtZW50cyA9IHN0ZDo6dHVwbGU8SVBDOjpDb25uZWN0
aW9uOjpIYW5kbGU+OwpAQCAtMzc4LDYgKzM4Miw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgY29u
c3QgYm9vbCBpc1N5bmMgPSB0cnVlOwogCiAgICAgdXNpbmcgRGVsYXllZFJlcGx5ID0gVGVzdE11
bHRpcGxlQXR0cmlidXRlc0RlbGF5ZWRSZXBseTsKKyAgICBzdGF0aWMgY29uc3RleHByIGF1dG8g
Y2FsbGJhY2tUaHJlYWQgPSBXVEY6OkNvbXBsZXRpb25IYW5kbGVyQ2FsbFRocmVhZDo6Q29uc3Ry
dWN0aW9uVGhyZWFkOwogICAgIHN0YXRpYyB2b2lkIHNlbmQoc3RkOjp1bmlxdWVfcHRyPElQQzo6
RW5jb2Rlcj4mJiwgSVBDOjpDb25uZWN0aW9uJik7CiAgICAgdXNpbmcgUmVwbHkgPSBzdGQ6OnR1
cGxlPD47CiAgICAgdXNpbmcgUmVwbHlBcmd1bWVudHMgPSBzdGQ6OnR1cGxlPD47CkBAIC00ODQs
NiArNDg5LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBJUEM6Ok1lc3NhZ2VOYW1lIG5hbWUoKSB7
IHJldHVybiBJUEM6Ok1lc3NhZ2VOYW1lOjpUZXN0V2l0aExlZ2FjeVJlY2VpdmVyX0ludGVycHJl
dEtleUV2ZW50OyB9CiAgICAgc3RhdGljIGNvbnN0IGJvb2wgaXNTeW5jID0gdHJ1ZTsKIAorICAg
IHN0YXRpYyBjb25zdGV4cHIgYXV0byBjYWxsYmFja1RocmVhZCA9IFdURjo6Q29tcGxldGlvbkhh
bmRsZXJDYWxsVGhyZWFkOjpDb25zdHJ1Y3Rpb25UaHJlYWQ7CiAgICAgdXNpbmcgUmVwbHkgPSBz
dGQ6OnR1cGxlPFZlY3RvcjxXZWJDb3JlOjpLZXlwcmVzc0NvbW1hbmQ+Jj47CiAgICAgdXNpbmcg
UmVwbHlBcmd1bWVudHMgPSBzdGQ6OnR1cGxlPFZlY3RvcjxXZWJDb3JlOjpLZXlwcmVzc0NvbW1h
bmQ+PjsKICAgICBleHBsaWNpdCBJbnRlcnByZXRLZXlFdmVudCh1aW50MzJfdCB0eXBlKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC90ZXN0cy9UZXN0V2l0aFNlbWFw
aG9yZU1lc3NhZ2VzLmggYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L3Rlc3RzL1Rlc3RX
aXRoU2VtYXBob3JlTWVzc2FnZXMuaAppbmRleCAwZjM1NmVlZGFhNjYzZDIxMzQ1NWE5MWViMGYx
ZDdkZjY2ZDZmOWI0Li5lZDRlNzFlOTNlYjUzNDhlMjIyZjI5OWU3NzJkODIwMTYyMTE5NmRkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L3Rlc3RzL1Rlc3RXaXRoU2Vt
YXBob3JlTWVzc2FnZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L3Rlc3Rz
L1Rlc3RXaXRoU2VtYXBob3JlTWVzc2FnZXMuaApAQCAtNzEsNiArNzEsNyBAQCBwdWJsaWM6CiAg
ICAgc3RhdGljIElQQzo6TWVzc2FnZU5hbWUgbmFtZSgpIHsgcmV0dXJuIElQQzo6TWVzc2FnZU5h
bWU6OlRlc3RXaXRoU2VtYXBob3JlX1JlY2VpdmVTZW1hcGhvcmU7IH0KICAgICBzdGF0aWMgY29u
c3QgYm9vbCBpc1N5bmMgPSB0cnVlOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBhdXRvIGNhbGxi
YWNrVGhyZWFkID0gV1RGOjpDb21wbGV0aW9uSGFuZGxlckNhbGxUaHJlYWQ6OkNvbnN0cnVjdGlv
blRocmVhZDsKICAgICB1c2luZyBSZXBseSA9IHN0ZDo6dHVwbGU8SVBDOjpTZW1hcGhvcmUmPjsK
ICAgICB1c2luZyBSZXBseUFyZ3VtZW50cyA9IHN0ZDo6dHVwbGU8SVBDOjpTZW1hcGhvcmU+Owog
ICAgIGNvbnN0IEFyZ3VtZW50cyYgYXJndW1lbnRzKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvdGVzdHMvVGVzdFdpdGhTdXBlcmNsYXNzLm1lc3NhZ2Vz
LmluIGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC90ZXN0cy9UZXN0V2l0aFN1cGVyY2xh
c3MubWVzc2FnZXMuaW4KaW5kZXggZWIxOTdkYTk5ZWI5MzI3MjhkMGI3MjIxNDUzMmJhZWFjNDcx
MjZjNS4uNTU0YWIwMWFhNjAzMzRlYTc4OWUxZTg4YzRjODViMTExMTM5ODZlNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC90ZXN0cy9UZXN0V2l0aFN1cGVyY2xhc3Mu
bWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC90ZXN0cy9UZXN0
V2l0aFN1cGVyY2xhc3MubWVzc2FnZXMuaW4KQEAgLTIzLDcgKzIzLDcgQEAKIG1lc3NhZ2VzIC0+
IFRlc3RXaXRoU3VwZXJjbGFzcyA6IFdlYlBhZ2VCYXNlIHsKICAgICBMb2FkVVJMKFN0cmluZyB1
cmwpCiAjaWYgRU5BQkxFKFRFU1RfRkVBVFVSRSkKLSAgICBUZXN0QXN5bmNNZXNzYWdlKGVudW06
Ym9vbCBXZWJLaXQ6OlRlc3RUd29TdGF0ZUVudW0gdHdvU3RhdGVFbnVtKSAtPiAodWludDY0X3Qg
cmVzdWx0KSBBc3luYworICAgIFRlc3RBc3luY01lc3NhZ2UoZW51bTpib29sIFdlYktpdDo6VGVz
dFR3b1N0YXRlRW51bSB0d29TdGF0ZUVudW0pIC0+ICh1aW50NjRfdCByZXN1bHQpIEFzeW5jIE1h
aW5UaHJlYWRDYWxsYmFjawogICAgIFRlc3RBc3luY01lc3NhZ2VXaXRoTm9Bcmd1bWVudHMoKSAt
PiAoKSBBc3luYwogICAgIFRlc3RBc3luY01lc3NhZ2VXaXRoTXVsdGlwbGVBcmd1bWVudHMoKSAt
PiAoYm9vbCBmbGFnLCB1aW50NjRfdCB2YWx1ZSkgQXN5bmMKICAgICBUZXN0QXN5bmNNZXNzYWdl
V2l0aENvbm5lY3Rpb24oaW50IHZhbHVlKSAtPiAoYm9vbCBmbGFnKSBBc3luYyBXYW50c0Nvbm5l
Y3Rpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvdGVzdHMvVGVz
dFdpdGhTdXBlcmNsYXNzTWVzc2FnZXMuaCBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQv
dGVzdHMvVGVzdFdpdGhTdXBlcmNsYXNzTWVzc2FnZXMuaAppbmRleCA0ZjZkNTI1ZjkxMTc4OWFl
MjllMWY2MTA2YzYyZjIyNTY1NGY0OWZhLi5iYzczYzk4YzMwODY1MGY3NjYxYWY3ODAxN2ViNjY3
ODgxNDA3ZjQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L3Rlc3Rz
L1Rlc3RXaXRoU3VwZXJjbGFzc01lc3NhZ2VzLmgKKysrIGIvU291cmNlL1dlYktpdC9TY3JpcHRz
L3dlYmtpdC90ZXN0cy9UZXN0V2l0aFN1cGVyY2xhc3NNZXNzYWdlcy5oCkBAIC03OSw2ICs3OSw3
IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBjYW5jZWxSZXBseShDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKHVpbnQ2NF90JiYpPiYmKTsKICAgICBzdGF0aWMgSVBDOjpNZXNzYWdlTmFtZSBhc3lu
Y01lc3NhZ2VSZXBseU5hbWUoKSB7IHJldHVybiBJUEM6Ok1lc3NhZ2VOYW1lOjpUZXN0V2l0aFN1
cGVyY2xhc3NfVGVzdEFzeW5jTWVzc2FnZVJlcGx5OyB9CiAgICAgdXNpbmcgQXN5bmNSZXBseSA9
IFRlc3RBc3luY01lc3NhZ2VBc3luY1JlcGx5OworICAgIHN0YXRpYyBjb25zdGV4cHIgYXV0byBj
YWxsYmFja1RocmVhZCA9IFdURjo6Q29tcGxldGlvbkhhbmRsZXJDYWxsVGhyZWFkOjpNYWluVGhy
ZWFkOwogICAgIHN0YXRpYyB2b2lkIHNlbmQoc3RkOjp1bmlxdWVfcHRyPElQQzo6RW5jb2Rlcj4m
JiwgSVBDOjpDb25uZWN0aW9uJiwgdWludDY0X3QgcmVzdWx0KTsKICAgICB1c2luZyBSZXBseSA9
IHN0ZDo6dHVwbGU8dWludDY0X3QmPjsKICAgICB1c2luZyBSZXBseUFyZ3VtZW50cyA9IHN0ZDo6
dHVwbGU8dWludDY0X3Q+OwpAQCAtMTA5LDYgKzExMCw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMg
dm9pZCBjYW5jZWxSZXBseShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOwogICAgIHN0YXRp
YyBJUEM6Ok1lc3NhZ2VOYW1lIGFzeW5jTWVzc2FnZVJlcGx5TmFtZSgpIHsgcmV0dXJuIElQQzo6
TWVzc2FnZU5hbWU6OlRlc3RXaXRoU3VwZXJjbGFzc19UZXN0QXN5bmNNZXNzYWdlV2l0aE5vQXJn
dW1lbnRzUmVwbHk7IH0KICAgICB1c2luZyBBc3luY1JlcGx5ID0gVGVzdEFzeW5jTWVzc2FnZVdp
dGhOb0FyZ3VtZW50c0FzeW5jUmVwbHk7CisgICAgc3RhdGljIGNvbnN0ZXhwciBhdXRvIGNhbGxi
YWNrVGhyZWFkID0gV1RGOjpDb21wbGV0aW9uSGFuZGxlckNhbGxUaHJlYWQ6OkNvbnN0cnVjdGlv
blRocmVhZDsKICAgICBzdGF0aWMgdm9pZCBzZW5kKHN0ZDo6dW5pcXVlX3B0cjxJUEM6OkVuY29k
ZXI+JiYsIElQQzo6Q29ubmVjdGlvbiYpOwogICAgIHVzaW5nIFJlcGx5ID0gc3RkOjp0dXBsZTw+
OwogICAgIHVzaW5nIFJlcGx5QXJndW1lbnRzID0gc3RkOjp0dXBsZTw+OwpAQCAtMTM0LDYgKzEz
Niw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBjYW5jZWxSZXBseShDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGJvb2wmJiwgdWludDY0X3QmJik+JiYpOwogICAgIHN0YXRpYyBJUEM6Ok1lc3Nh
Z2VOYW1lIGFzeW5jTWVzc2FnZVJlcGx5TmFtZSgpIHsgcmV0dXJuIElQQzo6TWVzc2FnZU5hbWU6
OlRlc3RXaXRoU3VwZXJjbGFzc19UZXN0QXN5bmNNZXNzYWdlV2l0aE11bHRpcGxlQXJndW1lbnRz
UmVwbHk7IH0KICAgICB1c2luZyBBc3luY1JlcGx5ID0gVGVzdEFzeW5jTWVzc2FnZVdpdGhNdWx0
aXBsZUFyZ3VtZW50c0FzeW5jUmVwbHk7CisgICAgc3RhdGljIGNvbnN0ZXhwciBhdXRvIGNhbGxi
YWNrVGhyZWFkID0gV1RGOjpDb21wbGV0aW9uSGFuZGxlckNhbGxUaHJlYWQ6OkNvbnN0cnVjdGlv
blRocmVhZDsKICAgICBzdGF0aWMgdm9pZCBzZW5kKHN0ZDo6dW5pcXVlX3B0cjxJUEM6OkVuY29k
ZXI+JiYsIElQQzo6Q29ubmVjdGlvbiYsIGJvb2wgZmxhZywgdWludDY0X3QgdmFsdWUpOwogICAg
IHVzaW5nIFJlcGx5ID0gc3RkOjp0dXBsZTxib29sJiwgdWludDY0X3QmPjsKICAgICB1c2luZyBS
ZXBseUFyZ3VtZW50cyA9IHN0ZDo6dHVwbGU8Ym9vbCwgdWludDY0X3Q+OwpAQCAtMTU5LDYgKzE2
Miw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBjYW5jZWxSZXBseShDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGJvb2wmJik+JiYpOwogICAgIHN0YXRpYyBJUEM6Ok1lc3NhZ2VOYW1lIGFzeW5j
TWVzc2FnZVJlcGx5TmFtZSgpIHsgcmV0dXJuIElQQzo6TWVzc2FnZU5hbWU6OlRlc3RXaXRoU3Vw
ZXJjbGFzc19UZXN0QXN5bmNNZXNzYWdlV2l0aENvbm5lY3Rpb25SZXBseTsgfQogICAgIHVzaW5n
IEFzeW5jUmVwbHkgPSBUZXN0QXN5bmNNZXNzYWdlV2l0aENvbm5lY3Rpb25Bc3luY1JlcGx5Owor
ICAgIHN0YXRpYyBjb25zdGV4cHIgYXV0byBjYWxsYmFja1RocmVhZCA9IFdURjo6Q29tcGxldGlv
bkhhbmRsZXJDYWxsVGhyZWFkOjpDb25zdHJ1Y3Rpb25UaHJlYWQ7CiAgICAgc3RhdGljIHZvaWQg
c2VuZChzdGQ6OnVuaXF1ZV9wdHI8SVBDOjpFbmNvZGVyPiYmLCBJUEM6OkNvbm5lY3Rpb24mLCBi
b29sIGZsYWcpOwogICAgIHVzaW5nIFJlcGx5ID0gc3RkOjp0dXBsZTxib29sJj47CiAgICAgdXNp
bmcgUmVwbHlBcmd1bWVudHMgPSBzdGQ6OnR1cGxlPGJvb2w+OwpAQCAtMTg1LDYgKzE4OSw3IEBA
IHB1YmxpYzoKICAgICBzdGF0aWMgY29uc3QgYm9vbCBpc1N5bmMgPSB0cnVlOwogCiAgICAgdXNp
bmcgRGVsYXllZFJlcGx5ID0gVGVzdFN5bmNNZXNzYWdlRGVsYXllZFJlcGx5OworICAgIHN0YXRp
YyBjb25zdGV4cHIgYXV0byBjYWxsYmFja1RocmVhZCA9IFdURjo6Q29tcGxldGlvbkhhbmRsZXJD
YWxsVGhyZWFkOjpDb25zdHJ1Y3Rpb25UaHJlYWQ7CiAgICAgc3RhdGljIHZvaWQgc2VuZChzdGQ6
OnVuaXF1ZV9wdHI8SVBDOjpFbmNvZGVyPiYmLCBJUEM6OkNvbm5lY3Rpb24mLCB1aW50OF90IHJl
cGx5KTsKICAgICB1c2luZyBSZXBseSA9IHN0ZDo6dHVwbGU8dWludDhfdCY+OwogICAgIHVzaW5n
IFJlcGx5QXJndW1lbnRzID0gc3RkOjp0dXBsZTx1aW50OF90PjsKQEAgLTIxMCw2ICsyMTUsNyBA
QCBwdWJsaWM6CiAgICAgc3RhdGljIGNvbnN0IGJvb2wgaXNTeW5jID0gdHJ1ZTsKIAogICAgIHVz
aW5nIERlbGF5ZWRSZXBseSA9IFRlc3RTeW5jaHJvbm91c01lc3NhZ2VEZWxheWVkUmVwbHk7Cisg
ICAgc3RhdGljIGNvbnN0ZXhwciBhdXRvIGNhbGxiYWNrVGhyZWFkID0gV1RGOjpDb21wbGV0aW9u
SGFuZGxlckNhbGxUaHJlYWQ6OkNvbnN0cnVjdGlvblRocmVhZDsKICAgICBzdGF0aWMgdm9pZCBz
ZW5kKHN0ZDo6dW5pcXVlX3B0cjxJUEM6OkVuY29kZXI+JiYsIElQQzo6Q29ubmVjdGlvbiYsIGNv
bnN0IE9wdGlvbmFsPFdlYktpdDo6VGVzdENsYXNzTmFtZT4mIG9wdGlvbmFsUmVwbHkpOwogICAg
IHVzaW5nIFJlcGx5ID0gc3RkOjp0dXBsZTxPcHRpb25hbDxXZWJLaXQ6OlRlc3RDbGFzc05hbWU+
Jj47CiAgICAgdXNpbmcgUmVwbHlBcmd1bWVudHMgPSBzdGQ6OnR1cGxlPE9wdGlvbmFsPFdlYktp
dDo6VGVzdENsYXNzTmFtZT4+OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dl
YmtpdC90ZXN0cy9UZXN0V2l0aG91dEF0dHJpYnV0ZXNNZXNzYWdlcy5oIGIvU291cmNlL1dlYktp
dC9TY3JpcHRzL3dlYmtpdC90ZXN0cy9UZXN0V2l0aG91dEF0dHJpYnV0ZXNNZXNzYWdlcy5oCmlu
ZGV4IGZmMTVlOGEyOGVjZDliZjQ5YmFhYjE4ZjExMDE5YjAxM2Q2ZTI1ZjEuLjc2NjIzMmI4MGVm
ZTE2Mjk4OTMzNTk2NzkzMDJkMGE2MTRlZjY5NWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
U2NyaXB0cy93ZWJraXQvdGVzdHMvVGVzdFdpdGhvdXRBdHRyaWJ1dGVzTWVzc2FnZXMuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L3Rlc3RzL1Rlc3RXaXRob3V0QXR0cmlidXRl
c01lc3NhZ2VzLmgKQEAgLTI4Myw2ICsyODMsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIElQQzo6
TWVzc2FnZU5hbWUgbmFtZSgpIHsgcmV0dXJuIElQQzo6TWVzc2FnZU5hbWU6OlRlc3RXaXRob3V0
QXR0cmlidXRlc19DcmVhdGVQbHVnaW47IH0KICAgICBzdGF0aWMgY29uc3QgYm9vbCBpc1N5bmMg
PSB0cnVlOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBhdXRvIGNhbGxiYWNrVGhyZWFkID0gV1RG
OjpDb21wbGV0aW9uSGFuZGxlckNhbGxUaHJlYWQ6OkNvbnN0cnVjdGlvblRocmVhZDsKICAgICB1
c2luZyBSZXBseSA9IHN0ZDo6dHVwbGU8Ym9vbCY+OwogICAgIHVzaW5nIFJlcGx5QXJndW1lbnRz
ID0gc3RkOjp0dXBsZTxib29sPjsKICAgICBDcmVhdGVQbHVnaW4odWludDY0X3QgcGx1Z2luSW5z
dGFuY2VJRCwgY29uc3QgV2ViS2l0OjpQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCkBA
IC0zMDYsNiArMzA3LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBJUEM6Ok1lc3NhZ2VOYW1lIG5h
bWUoKSB7IHJldHVybiBJUEM6Ok1lc3NhZ2VOYW1lOjpUZXN0V2l0aG91dEF0dHJpYnV0ZXNfUnVu
SmF2YVNjcmlwdEFsZXJ0OyB9CiAgICAgc3RhdGljIGNvbnN0IGJvb2wgaXNTeW5jID0gdHJ1ZTsK
IAorICAgIHN0YXRpYyBjb25zdGV4cHIgYXV0byBjYWxsYmFja1RocmVhZCA9IFdURjo6Q29tcGxl
dGlvbkhhbmRsZXJDYWxsVGhyZWFkOjpDb25zdHJ1Y3Rpb25UaHJlYWQ7CiAgICAgdXNpbmcgUmVw
bHkgPSBzdGQ6OnR1cGxlPD47CiAgICAgdXNpbmcgUmVwbHlBcmd1bWVudHMgPSBzdGQ6OnR1cGxl
PD47CiAgICAgUnVuSmF2YVNjcmlwdEFsZXJ0KHVpbnQ2NF90IGZyYW1lSUQsIGNvbnN0IFN0cmlu
ZyYgbWVzc2FnZSkKQEAgLTMyOSw2ICszMzEsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIElQQzo6
TWVzc2FnZU5hbWUgbmFtZSgpIHsgcmV0dXJuIElQQzo6TWVzc2FnZU5hbWU6OlRlc3RXaXRob3V0
QXR0cmlidXRlc19HZXRQbHVnaW5zOyB9CiAgICAgc3RhdGljIGNvbnN0IGJvb2wgaXNTeW5jID0g
dHJ1ZTsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgYXV0byBjYWxsYmFja1RocmVhZCA9IFdURjo6
Q29tcGxldGlvbkhhbmRsZXJDYWxsVGhyZWFkOjpDb25zdHJ1Y3Rpb25UaHJlYWQ7CiAgICAgdXNp
bmcgUmVwbHkgPSBzdGQ6OnR1cGxlPFZlY3RvcjxXZWJDb3JlOjpQbHVnaW5JbmZvPiY+OwogICAg
IHVzaW5nIFJlcGx5QXJndW1lbnRzID0gc3RkOjp0dXBsZTxWZWN0b3I8V2ViQ29yZTo6UGx1Z2lu
SW5mbz4+OwogICAgIGV4cGxpY2l0IEdldFBsdWdpbnMoYm9vbCByZWZyZXNoKQpAQCAtMzUzLDYg
KzM1Niw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgY29uc3QgYm9vbCBpc1N5bmMgPSB0cnVlOwog
CiAgICAgdXNpbmcgRGVsYXllZFJlcGx5ID0gR2V0UGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25EZWxh
eWVkUmVwbHk7CisgICAgc3RhdGljIGNvbnN0ZXhwciBhdXRvIGNhbGxiYWNrVGhyZWFkID0gV1RG
OjpDb21wbGV0aW9uSGFuZGxlckNhbGxUaHJlYWQ6OkNvbnN0cnVjdGlvblRocmVhZDsKICAgICBz
dGF0aWMgdm9pZCBzZW5kKHN0ZDo6dW5pcXVlX3B0cjxJUEM6OkVuY29kZXI+JiYsIElQQzo6Q29u
bmVjdGlvbiYsIGNvbnN0IElQQzo6Q29ubmVjdGlvbjo6SGFuZGxlJiBjb25uZWN0aW9uSGFuZGxl
KTsKICAgICB1c2luZyBSZXBseSA9IHN0ZDo6dHVwbGU8SVBDOjpDb25uZWN0aW9uOjpIYW5kbGUm
PjsKICAgICB1c2luZyBSZXBseUFyZ3VtZW50cyA9IHN0ZDo6dHVwbGU8SVBDOjpDb25uZWN0aW9u
OjpIYW5kbGU+OwpAQCAtMzc4LDYgKzM4Miw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgY29uc3Qg
Ym9vbCBpc1N5bmMgPSB0cnVlOwogCiAgICAgdXNpbmcgRGVsYXllZFJlcGx5ID0gVGVzdE11bHRp
cGxlQXR0cmlidXRlc0RlbGF5ZWRSZXBseTsKKyAgICBzdGF0aWMgY29uc3RleHByIGF1dG8gY2Fs
bGJhY2tUaHJlYWQgPSBXVEY6OkNvbXBsZXRpb25IYW5kbGVyQ2FsbFRocmVhZDo6Q29uc3RydWN0
aW9uVGhyZWFkOwogICAgIHN0YXRpYyB2b2lkIHNlbmQoc3RkOjp1bmlxdWVfcHRyPElQQzo6RW5j
b2Rlcj4mJiwgSVBDOjpDb25uZWN0aW9uJik7CiAgICAgdXNpbmcgUmVwbHkgPSBzdGQ6OnR1cGxl
PD47CiAgICAgdXNpbmcgUmVwbHlBcmd1bWVudHMgPSBzdGQ6OnR1cGxlPD47CkBAIC00ODQsNiAr
NDg5LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBJUEM6Ok1lc3NhZ2VOYW1lIG5hbWUoKSB7IHJl
dHVybiBJUEM6Ok1lc3NhZ2VOYW1lOjpUZXN0V2l0aG91dEF0dHJpYnV0ZXNfSW50ZXJwcmV0S2V5
RXZlbnQ7IH0KICAgICBzdGF0aWMgY29uc3QgYm9vbCBpc1N5bmMgPSB0cnVlOwogCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBhdXRvIGNhbGxiYWNrVGhyZWFkID0gV1RGOjpDb21wbGV0aW9uSGFuZGxl
ckNhbGxUaHJlYWQ6OkNvbnN0cnVjdGlvblRocmVhZDsKICAgICB1c2luZyBSZXBseSA9IHN0ZDo6
dHVwbGU8VmVjdG9yPFdlYkNvcmU6OktleXByZXNzQ29tbWFuZD4mPjsKICAgICB1c2luZyBSZXBs
eUFyZ3VtZW50cyA9IHN0ZDo6dHVwbGU8VmVjdG9yPFdlYkNvcmU6OktleXByZXNzQ29tbWFuZD4+
OwogICAgIGV4cGxpY2l0IEludGVycHJldEtleUV2ZW50KHVpbnQzMl90IHR5cGUpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9FdmVudERpc3BhdGNoZXIubWVz
c2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9FdmVudERpc3BhdGNo
ZXIubWVzc2FnZXMuaW4KaW5kZXggZjhkMDJhYWE3YmJmZWM0NTkwNTdkMmY1ZjAwYWIzNzU3MmVl
Njk1NC4uYmI1MGI5NzcwNTI4NDExZjAwNDAxM2JiNjg3MWIxYjBlOTE1NDI0ZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvRXZlbnREaXNwYXRjaGVyLm1lc3Nh
Z2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL0V2ZW50RGlzcGF0
Y2hlci5tZXNzYWdlcy5pbgpAQCAtMjMsNyArMjMsNyBAQAogbWVzc2FnZXMgLT4gRXZlbnREaXNw
YXRjaGVyIHsKICAgICBXaGVlbEV2ZW50KFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHBhZ2VJRCwg
V2ViS2l0OjpXZWJXaGVlbEV2ZW50IGV2ZW50LCBib29sIGNhblJ1YmJlckJhbmRBdExlZnQsIGJv
b2wgY2FuUnViYmVyQmFuZEF0UmlnaHQsIGJvb2wgY2FuUnViYmVyQmFuZEF0VG9wLCBib29sIGNh
blJ1YmJlckJhbmRBdEJvdHRvbSkKICNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKLSAgICBU
b3VjaEV2ZW50KFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHBhZ2VJRCwgV2ViS2l0OjpXZWJUb3Vj
aEV2ZW50IGV2ZW50KSAtPiAoYm9vbCBoYW5kbGVkKSBBc3luYworICAgIFRvdWNoRXZlbnQoV2Vi
Q29yZTo6UGFnZUlkZW50aWZpZXIgcGFnZUlELCBXZWJLaXQ6OldlYlRvdWNoRXZlbnQgZXZlbnQp
IC0+IChib29sIGhhbmRsZWQpIEFzeW5jIE1haW5UaHJlYWRDYWxsYmFjawogICAgIFRvdWNoRXZl
bnRXaXRob3V0Q2FsbGJhY2soV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgcGFnZUlELCBXZWJLaXQ6
OldlYlRvdWNoRXZlbnQgZXZlbnQpCiAjZW5kaWYKICNpZiBFTkFCTEUoTUFDX0dFU1RVUkVfRVZF
TlRTKQo=
</data>
<flag name="review"
          id="438828"
          type_id="1"
          status="+"
          setter="dino"
    />
          </attachment>
      

    </bug>

</bugzilla>